From 5cb30d749b065b5d2fdc93c7727531a1cb8f1b67 Mon Sep 17 00:00:00 2001 From: QMK Bot Date: Mon, 9 Mar 2026 22:07:04 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20qmk/qmk?= =?UTF-8?q?=5Ffirmware@40e81ad8932f8ee820d15924f87e898994f57300=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 404.html | 4 ++-- ChangeLog/20190830.html | 10 +++++----- ChangeLog/20200229.html | 10 +++++----- ChangeLog/20200530.html | 10 +++++----- ChangeLog/20200829.html | 10 +++++----- ChangeLog/20201128.html | 10 +++++----- ChangeLog/20210227.html | 10 +++++----- ChangeLog/20210529.html | 10 +++++----- ChangeLog/20210828.html | 10 +++++----- ChangeLog/20211127.html | 10 +++++----- ChangeLog/20220226.html | 10 +++++----- ChangeLog/20220528.html | 10 +++++----- ChangeLog/20220827.html | 10 +++++----- ChangeLog/20221126.html | 10 +++++----- ChangeLog/20230226.html | 10 +++++----- ChangeLog/20230528.html | 10 +++++----- ChangeLog/20230827.html | 10 +++++----- ChangeLog/20231126.html | 10 +++++----- ChangeLog/20240225.html | 10 +++++----- ChangeLog/20240526.html | 10 +++++----- ChangeLog/20240825.html | 10 +++++----- ChangeLog/20241124.html | 10 +++++----- ChangeLog/20250223.html | 10 +++++----- ChangeLog/20250525.html | 10 +++++----- ChangeLog/20250831.html | 10 +++++----- ChangeLog/20251130.html | 10 +++++----- ChangeLog/20260222.html | 10 +++++----- __capabilities.html | 10 +++++----- __capabilities_inc.html | 10 +++++----- api_development_environment.html | 10 +++++----- api_development_overview.html | 10 +++++----- api_docs.html | 10 +++++----- api_overview.html | 10 +++++----- arm_debugging.html | 10 +++++----- ...R0a9.js => ChangeLog_20190830.md.D6IuReG4.js} | 2 +- ...js => ChangeLog_20190830.md.D6IuReG4.lean.js} | 2 +- ...sYY3.js => ChangeLog_20200229.md.Ds66BLAx.js} | 2 +- ...js => ChangeLog_20200229.md.Ds66BLAx.lean.js} | 2 +- ...RxdS.js => ChangeLog_20200530.md.BCKw16qF.js} | 2 +- ...js => ChangeLog_20200530.md.BCKw16qF.lean.js} | 2 +- ...PTYQ.js => ChangeLog_20200829.md.KKJKOXjO.js} | 2 +- ...js => ChangeLog_20200829.md.KKJKOXjO.lean.js} | 2 +- ...YL0S.js => ChangeLog_20201128.md.CI0nQrFY.js} | 2 +- ...js => ChangeLog_20201128.md.CI0nQrFY.lean.js} | 2 +- ...IK_1.js => ChangeLog_20210227.md.BjzBAs5x.js} | 2 +- ...js => ChangeLog_20210227.md.BjzBAs5x.lean.js} | 2 +- ...GoNS.js => ChangeLog_20210529.md.BWAcenKJ.js} | 2 +- ...js => ChangeLog_20210529.md.BWAcenKJ.lean.js} | 2 +- ...kdsi.js => ChangeLog_20210828.md.I-_imy7e.js} | 2 +- ...js => ChangeLog_20210828.md.I-_imy7e.lean.js} | 2 +- ...ZpUa.js => ChangeLog_20211127.md.CxO_AykL.js} | 2 +- ...js => ChangeLog_20211127.md.CxO_AykL.lean.js} | 2 +- ...6DHq.js => ChangeLog_20220226.md.Dk8ZdFSM.js} | 2 +- ...js => ChangeLog_20220226.md.Dk8ZdFSM.lean.js} | 2 +- ...KJrZ.js => ChangeLog_20220528.md.Ci-w_XT5.js} | 2 +- ...js => ChangeLog_20220528.md.Ci-w_XT5.lean.js} | 2 +- ...5Jfz.js => ChangeLog_20220827.md.5judfHL1.js} | 2 +- ...js => ChangeLog_20220827.md.5judfHL1.lean.js} | 2 +- ...jl91.js => ChangeLog_20221126.md.CPg-BIWB.js} | 2 +- ...js => ChangeLog_20221126.md.CPg-BIWB.lean.js} | 2 +- ...fZ0c.js => ChangeLog_20230226.md.7t5PVIxX.js} | 2 +- ...js => ChangeLog_20230226.md.7t5PVIxX.lean.js} | 2 +- ...sNVW.js => ChangeLog_20230528.md.Bp2A079h.js} | 2 +- ...js => ChangeLog_20230528.md.Bp2A079h.lean.js} | 2 +- ...lvBZ.js => ChangeLog_20230827.md.C16R-udl.js} | 2 +- ...js => ChangeLog_20230827.md.C16R-udl.lean.js} | 2 +- ...u3X6.js => ChangeLog_20231126.md.Bpwq3Ogr.js} | 2 +- ...js => ChangeLog_20231126.md.Bpwq3Ogr.lean.js} | 2 +- ...JkLK.js => ChangeLog_20240225.md.Da92cP02.js} | 2 +- ...js => ChangeLog_20240225.md.Da92cP02.lean.js} | 2 +- ...3lF_.js => ChangeLog_20240526.md.C85VHRrA.js} | 2 +- ...js => ChangeLog_20240526.md.C85VHRrA.lean.js} | 2 +- ...a589.js => ChangeLog_20240825.md.Bd_7OVSi.js} | 2 +- ...js => ChangeLog_20240825.md.Bd_7OVSi.lean.js} | 2 +- ...yQRe.js => ChangeLog_20241124.md.D0sBbIwe.js} | 2 +- ...js => ChangeLog_20241124.md.D0sBbIwe.lean.js} | 2 +- ...Q52U.js => ChangeLog_20250223.md.wrANLclb.js} | 2 +- ...js => ChangeLog_20250223.md.wrANLclb.lean.js} | 2 +- ..._OgC.js => ChangeLog_20250525.md.Bp9ysS79.js} | 2 +- ...js => ChangeLog_20250525.md.Bp9ysS79.lean.js} | 2 +- ...heIL.js => ChangeLog_20250831.md.DpPyR9C0.js} | 2 +- ...js => ChangeLog_20250831.md.DpPyR9C0.lean.js} | 2 +- ...5zL3.js => ChangeLog_20251130.md.DDM7x0Cl.js} | 2 +- ...js => ChangeLog_20251130.md.DDM7x0Cl.lean.js} | 2 +- ...t2RV.js => ChangeLog_20260222.md.CGKqLJC8.js} | 2 +- ...js => ChangeLog_20260222.md.CGKqLJC8.lean.js} | 2 +- ...> api_development_environment.md.BHhIxwlc.js} | 2 +- ..._development_environment.md.BHhIxwlc.lean.js} | 2 +- ...s => api_development_overview.md.ykoDoprg.js} | 2 +- ...api_development_overview.md.ykoDoprg.lean.js} | 2 +- ...cs.md.q8EzzOY3.js => api_docs.md.azbLRQdw.js} | 2 +- ...zOY3.lean.js => api_docs.md.azbLRQdw.lean.js} | 2 +- ...d.ikCJhJnu.js => api_overview.md.DMC56sa3.js} | 2 +- ....lean.js => api_overview.md.DMC56sa3.lean.js} | 2 +- assets/{app.CuDuM5Kz.js => app.8Is8HrmZ.js} | 4 ++-- ....DZQjFz9i.js => arm_debugging.md.D_ovCSLz.js} | 2 +- ...lean.js => arm_debugging.md.D_ovCSLz.lean.js} | 2 +- ...EUZtBd.js => breaking_changes.md.CPjdVfIb.js} | 2 +- ...n.js => breaking_changes.md.CPjdVfIb.lean.js} | 2 +- ...s => breaking_changes_history.md.CxsUTOKD.js} | 2 +- ...breaking_changes_history.md.CxsUTOKD.lean.js} | 2 +- ...breaking_changes_instructions.md.DjP5PolH.js} | 2 +- ...ing_changes_instructions.md.DjP5PolH.lean.js} | 2 +- ...d.DBSM69xz.js => capabilities.md.BioT5X0H.js} | 2 +- ....lean.js => capabilities.md.BioT5X0H.lean.js} | 2 +- ...VcbxN_.js => capabilities_inc.md.BoBlYZ_w.js} | 2 +- ...n.js => capabilities_inc.md.BoBlYZ_w.lean.js} | 2 +- ... chibios_upgrade_instructions.md.DSfqrpjD.js} | 2 +- ...ios_upgrade_instructions.md.DSfqrpjD.lean.js} | 2 +- assets/chunks/@localSearchIndexroot.AlnfQLB4.js | 4 ---- assets/chunks/@localSearchIndexroot.D34-pwHA.js | 4 ++++ ....CJDVhk5n.js => VPLocalSearchBox.3R5oEP-S.js} | 8 ++++---- ...amework.Cauyuiy8.js => framework.DUYk0S7v.js} | 12 ++++++------ .../{theme.UmtsjDQ8.js => theme.DaTnCy1N.js} | 6 +++--- .../{cli.md.CxsSVwqz.js => cli.md.DlRtyTGy.js} | 2 +- ....CxsSVwqz.lean.js => cli.md.DlRtyTGy.lean.js} | 2 +- ...d.CRBCuoFZ.js => cli_commands.md.CycgrVp4.js} | 2 +- ....lean.js => cli_commands.md.CycgrVp4.lean.js} | 2 +- ...3NJ_D.js => cli_configuration.md.CWQYtKyU.js} | 2 +- ....js => cli_configuration.md.CWQYtKyU.lean.js} | 2 +- ...EROGtvC.js => cli_development.md.bdrJhiD-.js} | 2 +- ...an.js => cli_development.md.bdrJhiD-.lean.js} | 2 +- ...OMIPwp.js => cli_tab_complete.md.BMCs6AIK.js} | 2 +- ...n.js => cli_tab_complete.md.BMCs6AIK.lean.js} | 2 +- ..._g.js => coding_conventions_c.md.CgLiZ0K-.js} | 2 +- ... => coding_conventions_c.md.CgLiZ0K-.lean.js} | 2 +- ... => coding_conventions_python.md.C-VrJiRu.js} | 2 +- ...oding_conventions_python.md.C-VrJiRu.lean.js} | 2 +- ...> compatible_microcontrollers.md.CZ7InUb5.js} | 2 +- ...patible_microcontrollers.md.CZ7InUb5.lean.js} | 2 +- ...01OxPzbg.js => config_options.md.DO-qGA0T.js} | 2 +- ...ean.js => config_options.md.DO-qGA0T.lean.js} | 2 +- ... => configurator_architecture.md.DPq5rVLw.js} | 2 +- ...onfigurator_architecture.md.DPq5rVLw.lean.js} | 2 +- ... configurator_default_keymaps.md.Cji5fckm.js} | 2 +- ...igurator_default_keymaps.md.Cji5fckm.lean.js} | 2 +- ... => configurator_step_by_step.md.DJIPsyh-.js} | 2 +- ...onfigurator_step_by_step.md.DJIPsyh-.lean.js} | 2 +- ... configurator_troubleshooting.md.z2LZSYLm.js} | 2 +- ...igurator_troubleshooting.md.z2LZSYLm.lean.js} | 2 +- ...d.BdfsPqoi.js => contributing.md.Dcwvm7t6.js} | 2 +- ....lean.js => contributing.md.Dcwvm7t6.lean.js} | 2 +- ....gXpTxUyG.js => custom_matrix.md.DzDeXqyP.js} | 2 +- ...lean.js => custom_matrix.md.DzDeXqyP.lean.js} | 2 +- ...s => custom_quantum_functions.md.Btyj-xrD.js} | 2 +- ...custom_quantum_functions.md.Btyj-xrD.lean.js} | 2 +- ...BAXA.js => data_driven_config.md.DYDbIdON.js} | 2 +- ...js => data_driven_config.md.DYDbIdON.lean.js} | 2 +- ... documentation_best_practices.md.q-TuhoQ8.js} | 2 +- ...mentation_best_practices.md.q-TuhoQ8.lean.js} | 2 +- ...js => documentation_templates.md.K1ZkzXdN.js} | 2 +- ... documentation_templates.md.K1ZkzXdN.lean.js} | 2 +- ... => driver_installation_zadig.md.B4d-g925.js} | 2 +- ...river_installation_zadig.md.B4d-g925.lean.js} | 2 +- ...md.CvhRMxs7.js => drivers_adc.md.ghm13up5.js} | 2 +- ...7.lean.js => drivers_adc.md.ghm13up5.lean.js} | 2 +- ...DBz660in.js => drivers_apa102.md.DB4qwSpp.js} | 2 +- ...ean.js => drivers_apa102.md.DB4qwSpp.lean.js} | 2 +- ....POIlGI3S.js => drivers_audio.md.CdpP_nV3.js} | 4 ++-- ...lean.js => drivers_audio.md.CdpP_nV3.lean.js} | 2 +- ...5iOj2N.js => drivers_aw20216s.md.CpBh1Zxp.js} | 2 +- ...n.js => drivers_aw20216s.md.CpBh1Zxp.lean.js} | 2 +- ...AwDiAI6.js => drivers_battery.md.BejgsgGx.js} | 2 +- ...an.js => drivers_battery.md.BejgsgGx.lean.js} | 2 +- ...DGh7YLy6.js => drivers_eeprom.md.Chttlkwg.js} | 2 +- ...ean.js => drivers_eeprom.md.Chttlkwg.lean.js} | 2 +- ....Xjr69qY1.js => drivers_flash.md.BZEprYOU.js} | 2 +- ...lean.js => drivers_flash.md.BZEprYOU.lean.js} | 2 +- ...d.DeLMdEEL.js => drivers_gpio.md.DAIVnFsw.js} | 2 +- ....lean.js => drivers_gpio.md.DAIVnFsw.lean.js} | 2 +- ...md.Stz1viUq.js => drivers_i2c.md.Dl4XHbyO.js} | 4 ++-- ...q.lean.js => drivers_i2c.md.Dl4XHbyO.lean.js} | 2 +- ...3XH6.js => drivers_is31fl3218.md.B-CYetEe.js} | 2 +- ...js => drivers_is31fl3218.md.B-CYetEe.lean.js} | 2 +- ...lF3K.js => drivers_is31fl3236.md.oMXFaJQB.js} | 2 +- ...js => drivers_is31fl3236.md.oMXFaJQB.lean.js} | 2 +- ...-vON.js => drivers_is31fl3729.md.BPfwluBs.js} | 2 +- ...js => drivers_is31fl3729.md.BPfwluBs.lean.js} | 2 +- ...dNf4.js => drivers_is31fl3731.md.CoRcGpoN.js} | 2 +- ...js => drivers_is31fl3731.md.CoRcGpoN.lean.js} | 2 +- ...ART3.js => drivers_is31fl3733.md.D617uo2L.js} | 2 +- ...js => drivers_is31fl3733.md.D617uo2L.lean.js} | 2 +- ...nQ6u.js => drivers_is31fl3736.md.DATOjY36.js} | 2 +- ...js => drivers_is31fl3736.md.DATOjY36.lean.js} | 2 +- ...0r24.js => drivers_is31fl3737.md.Cs3UsMas.js} | 2 +- ...js => drivers_is31fl3737.md.Cs3UsMas.lean.js} | 2 +- ...jZj1.js => drivers_is31fl3741.md.CuFeaQg_.js} | 2 +- ...js => drivers_is31fl3741.md.CuFeaQg_.lean.js} | 2 +- ...0u0.js => drivers_is31fl3742a.md.r_1D4OlQ.js} | 2 +- ...s => drivers_is31fl3742a.md.r_1D4OlQ.lean.js} | 2 +- ...fLE.js => drivers_is31fl3743a.md.DJJn0Aca.js} | 2 +- ...s => drivers_is31fl3743a.md.DJJn0Aca.lean.js} | 2 +- ...KcD5.js => drivers_is31fl3745.md.sA12j7Er.js} | 2 +- ...js => drivers_is31fl3745.md.sA12j7Er.lean.js} | 2 +- ...bNN.js => drivers_is31fl3746a.md.CCGFqsIg.js} | 2 +- ...s => drivers_is31fl3746a.md.CCGFqsIg.lean.js} | 2 +- ...BkUw6hN9.js => drivers_serial.md.C29ECQJq.js} | 2 +- ...ean.js => drivers_serial.md.C29ECQJq.lean.js} | 2 +- ...-rIw.js => drivers_snled27351.md.YUDcBieB.js} | 2 +- ...js => drivers_snled27351.md.YUDcBieB.lean.js} | 2 +- ...md.fBcFNYcc.js => drivers_spi.md.2nctHc0q.js} | 4 ++-- ...c.lean.js => drivers_spi.md.2nctHc0q.lean.js} | 2 +- ...d.BVpiWrhw.js => drivers_uart.md.C-DQ6QZa.js} | 2 +- ....lean.js => drivers_uart.md.C-DQ6QZa.lean.js} | 2 +- ...D506ofII.js => drivers_ws2812.md.3iqmoMnj.js} | 4 ++-- ...ean.js => drivers_ws2812.md.3iqmoMnj.lean.js} | 2 +- ....md.CWKgP0PT.js => easy_maker.md.CyCtS9iR.js} | 2 +- ...PT.lean.js => easy_maker.md.CyCtS9iR.lean.js} | 2 +- ...d.md.DRUGJDZw.js => faq_build.md.DUKI8CAq.js} | 2 +- ...DZw.lean.js => faq_build.md.DUKI8CAq.lean.js} | 2 +- ...g.md.DPA-3BUa.js => faq_debug.md.DfevHt05.js} | 2 +- ...BUa.lean.js => faq_debug.md.DfevHt05.lean.js} | 2 +- ...md.D6klmZef.js => faq_general.md.CSwG14K9.js} | 2 +- ...f.lean.js => faq_general.md.CSwG14K9.lean.js} | 2 +- ....md.UjocxZux.js => faq_keymap.md.B-f4GotG.js} | 2 +- ...ux.lean.js => faq_keymap.md.B-f4GotG.lean.js} | 2 +- ...sc.md.BPIgMHQW.js => faq_misc.md.CQG0a42D.js} | 2 +- ...MHQW.lean.js => faq_misc.md.CQG0a42D.lean.js} | 2 +- ... => feature_advanced_keycodes.md.B__eRJaD.js} | 2 +- ...eature_advanced_keycodes.md.B__eRJaD.lean.js} | 2 +- ...aQ2Y.js => feature_converters.md.BvZ97-f7.js} | 2 +- ...js => feature_converters.md.BvZ97-f7.lean.js} | 2 +- ...O.js => feature_debounce_type.md.DmGHbcl5.js} | 2 +- ...=> feature_debounce_type.md.DmGHbcl5.lean.js} | 2 +- ...C4jGd07n.js => feature_eeprom.md.MCCoTyKB.js} | 2 +- ...ean.js => feature_eeprom.md.MCCoTyKB.lean.js} | 2 +- ...BRPaBran.js => feature_layers.md.BpRyCtyl.js} | 2 +- ...ean.js => feature_layers.md.BpRyCtyl.lean.js} | 2 +- ...Kb-OgxY.js => feature_layouts.md.D2KZVUWv.js} | 2 +- ...an.js => feature_layouts.md.D2KZVUWv.lean.js} | 2 +- ...BCymatkF.js => feature_macros.md.CSlh6M_r.js} | 2 +- ...ean.js => feature_macros.md.CSlh6M_r.lean.js} | 2 +- ...qRxjZ.js => feature_userspace.md.BAzTeriV.js} | 2 +- ....js => feature_userspace.md.BAzTeriV.lean.js} | 2 +- ...C3CBdMc3.js => features_audio.md.Cr9YonZR.js} | 2 +- ...ean.js => features_audio.md.Cr9YonZR.lean.js} | 2 +- ...7EE.js => features_auto_shift.md.BUK-Vjbn.js} | 2 +- ...s => features_auto_shift.md.BUK-Vjbn.lean.js} | 2 +- ...Q6.js => features_autocorrect.md.Di2YY-lX.js} | 2 +- ... => features_autocorrect.md.Di2YY-lX.lean.js} | 2 +- ...bRi8.js => features_backlight.md.CCkIa8h-.js} | 4 ++-- ...js => features_backlight.md.CCkIa8h-.lean.js} | 2 +- ...VRBqOv.js => features_battery.md.DaU78lT0.js} | 2 +- ...n.js => features_battery.md.DaU78lT0.lean.js} | 2 +- ...KU8p.js => features_bootmagic.md.D5-HY3Hf.js} | 2 +- ...js => features_bootmagic.md.D5-HY3Hf.lean.js} | 2 +- ..._Vhc.js => features_caps_word.md.Cqa7whRF.js} | 2 +- ...js => features_caps_word.md.Cqa7whRF.lean.js} | 2 +- ...ssaGsA-P.js => features_combo.md.DUXuMBvZ.js} | 2 +- ...ean.js => features_combo.md.DUXuMBvZ.lean.js} | 2 +- ...5i-XFt.js => features_command.md.ClQenxyT.js} | 2 +- ...n.js => features_command.md.ClQenxyT.lean.js} | 2 +- ...=> features_community_modules.md.BEe_oI6M.js} | 2 +- ...atures_community_modules.md.BEe_oI6M.lean.js} | 2 +- ...9WkJ.js => features_digitizer.md.Bd-vzJLw.js} | 2 +- ...js => features_digitizer.md.Bd-vzJLw.lean.js} | 2 +- ...97m.js => features_dip_switch.md.DE2RP9Fo.js} | 2 +- ...s => features_dip_switch.md.DE2RP9Fo.lean.js} | 2 +- ...js => features_dynamic_macros.md.DGGasmlF.js} | 2 +- ... features_dynamic_macros.md.DGGasmlF.lean.js} | 2 +- ...cXZB3.js => features_encoders.md.Ccf2BS3A.js} | 2 +- ....js => features_encoders.md.Ccf2BS3A.lean.js} | 2 +- ...2ZXb.js => features_grave_esc.md.ByGZcODM.js} | 2 +- ...js => features_grave_esc.md.ByGZcODM.lean.js} | 2 +- ...s => features_haptic_feedback.md.0sqCrtd3.js} | 2 +- ...features_haptic_feedback.md.0sqCrtd3.lean.js} | 2 +- ...bI6dcV.js => features_hd44780.md.wMye5bL5.js} | 2 +- ...n.js => features_hd44780.md.wMye5bL5.lean.js} | 2 +- ...RF0SA.js => features_joystick.md.CBVsW76F.js} | 2 +- ....js => features_joystick.md.CBVsW76F.lean.js} | 2 +- ...yr8wY.js => features_key_lock.md.CPB03zm8.js} | 2 +- ....js => features_key_lock.md.CPB03zm8.lean.js} | 2 +- ....js => features_key_overrides.md.DHmulGw8.js} | 2 +- ...> features_key_overrides.md.DHmulGw8.lean.js} | 2 +- ...6DJ.js => features_layer_lock.md.BFyJEied.js} | 2 +- ...s => features_layer_lock.md.BFyJEied.lean.js} | 2 +- ...6xl.js => features_leader_key.md.BXjau7jR.js} | 2 +- ...s => features_leader_key.md.BXjau7jR.lean.js} | 2 +- ...js => features_led_indicators.md.CGYyrucF.js} | 2 +- ... features_led_indicators.md.CGYyrucF.lean.js} | 2 +- ...FB5.js => features_led_matrix.md.DuGjDaz2.js} | 2 +- ...s => features_led_matrix.md.DuGjDaz2.lean.js} | 2 +- ....v37bH2vU.js => features_midi.md.Bbhyxj9Y.js} | 2 +- ...lean.js => features_midi.md.Bbhyxj9Y.lean.js} | 2 +- ...Hqq.js => features_mouse_keys.md.BO1Asbyn.js} | 2 +- ...s => features_mouse_keys.md.BO1Asbyn.lean.js} | 2 +- ...lX.js => features_oled_driver.md.Dv1hbhxI.js} | 2 +- ... => features_oled_driver.md.Dv1hbhxI.lean.js} | 2 +- ...h.js => features_os_detection.md.jSTpkLgf.js} | 2 +- ...=> features_os_detection.md.jSTpkLgf.lean.js} | 2 +- ...s => features_pointing_device.md.Ca3kOf-A.js} | 2 +- ...features_pointing_device.md.Ca3kOf-A.lean.js} | 2 +- ... features_programmable_button.md.C_86Sd8h.js} | 2 +- ...ures_programmable_button.md.C_86Sd8h.lean.js} | 2 +- ...aVVH.js => features_ps2_mouse.md.CN8mIpft.js} | 2 +- ...js => features_ps2_mouse.md.CN8mIpft.lean.js} | 2 +- ...FU7cft3.js => features_rawhid.md.DB4DvYln.js} | 2 +- ...an.js => features_rawhid.md.DB4DvYln.lean.js} | 2 +- ...7Ty.js => features_repeat_key.md.CSo9ygph.js} | 2 +- ...s => features_repeat_key.md.CSo9ygph.lean.js} | 2 +- ...ZqS.js => features_rgb_matrix.md.YAdnF1BU.js} | 2 +- ...s => features_rgb_matrix.md.YAdnF1BU.lean.js} | 2 +- ...gK2YJ.js => features_rgblight.md.Cld469wm.js} | 2 +- ....js => features_rgblight.md.Cld469wm.lean.js} | 2 +- ...Ayr6J6B.js => features_secure.md.DjnR-TYY.js} | 2 +- ...an.js => features_secure.md.DjnR-TYY.lean.js} | 2 +- ...D6.js => features_send_string.md.DAZ-KvOk.js} | 2 +- ... => features_send_string.md.DAZ-KvOk.lean.js} | 2 +- ...Rf6I.js => features_sequencer.md.DlMJ9iBQ.js} | 2 +- ...js => features_sequencer.md.DlMJ9iBQ.lean.js} | 2 +- ...FA.js => features_space_cadet.md.BqY09XmY.js} | 2 +- ... => features_space_cadet.md.BqY09XmY.lean.js} | 2 +- ...js => features_split_keyboard.md.CP5P3ND7.js} | 2 +- ... features_split_keyboard.md.CP5P3ND7.lean.js} | 2 +- ...vdJUI9P.js => features_st7565.md.Dwu6paR4.js} | 2 +- ...an.js => features_st7565.md.Dwu6paR4.lean.js} | 2 +- ...LM.js => features_stenography.md.rMm9phsG.js} | 2 +- ... => features_stenography.md.rMm9phsG.lean.js} | 2 +- ...RMM.js => features_swap_hands.md.nW-D0yHh.js} | 2 +- ...s => features_swap_hands.md.nW-D0yHh.lean.js} | 2 +- ...5Veb.js => features_tap_dance.md.DYKVHW8v.js} | 2 +- ...js => features_tap_dance.md.DYKVHW8v.lean.js} | 2 +- ...4pCh.js => features_tri_layer.md.CP4tVyWE.js} | 2 +- ...js => features_tri_layer.md.CP4tVyWE.lean.js} | 2 +- ...SquqNa.js => features_unicode.md.B_tQVqk9.js} | 2 +- ...n.js => features_unicode.md.B_tQVqk9.lean.js} | 2 +- ...hYnZX.js => features_wireless.md.2T8KVBJs.js} | 2 +- ....js => features_wireless.md.2T8KVBJs.lean.js} | 2 +- ...d.Baq4jIoq.js => features_wpm.md.CLlB7DNG.js} | 2 +- ....lean.js => features_wpm.md.CLlB7DNG.lean.js} | 2 +- ...ng.md.DMoR8VBF.js => flashing.md.D33WW-Hb.js} | 2 +- ...8VBF.lean.js => flashing.md.D33WW-Hb.lean.js} | 2 +- ....js => getting_started_docker.md.CnQDT8XT.js} | 2 +- ...> getting_started_docker.md.CnQDT8XT.lean.js} | 2 +- ....js => getting_started_github.md.CE8RxkZj.js} | 2 +- ...> getting_started_github.md.CE8RxkZj.lean.js} | 2 +- ... getting_started_introduction.md.C8lMDcxb.js} | 2 +- ...ing_started_introduction.md.C8lMDcxb.lean.js} | 2 +- ...=> getting_started_make_guide.md.CaRp2eyv.js} | 2 +- ...tting_started_make_guide.md.CaRp2eyv.lean.js} | 2 +- ...e.md.CVVk-a8R.js => hand_wire.md.CVFAzcE5.js} | 2 +- ...a8R.lean.js => hand_wire.md.CVFAzcE5.lean.js} | 2 +- ...YEz5_y.js => hardware_drivers.md.vWSu8yLz.js} | 2 +- ...n.js => hardware_drivers.md.vWSu8yLz.lean.js} | 2 +- ... hardware_keyboard_guidelines.md.Dtq2deva.js} | 2 +- ...ware_keyboard_guidelines.md.Dtq2deva.lean.js} | 2 +- ...T4Dz.js => how_a_matrix_works.md.C56BVOKq.js} | 2 +- ...js => how_a_matrix_works.md.C56BVOKq.lean.js} | 2 +- ...3BPq.js => how_keyboards_work.md.B1-KACsB.js} | 2 +- ...js => how_keyboards_work.md.B1-KACsB.lean.js} | 2 +- ...index.md.BsBb4ZNh.js => index.md.BIeL4qUm.js} | 2 +- ...sBb4ZNh.lean.js => index.md.BIeL4qUm.lean.js} | 2 +- ...C4dB.js => isp_flashing_guide.md.CMIX0i8g.js} | 2 +- ...js => isp_flashing_guide.md.CMIX0i8g.lean.js} | 2 +- ...es.md.BFmA0AVu.js => keycodes.md.TseVv0Om.js} | 2 +- ...0AVu.lean.js => keycodes.md.TseVv0Om.lean.js} | 2 +- ...1acV3SW6.js => keycodes_basic.md.DFS_uCTY.js} | 2 +- ...ean.js => keycodes_basic.md.DFS_uCTY.lean.js} | 2 +- ...DGcxCwmE.js => keycodes_magic.md.BpmQ6-VM.js} | 2 +- ...ean.js => keycodes_magic.md.BpmQ6-VM.lean.js} | 2 +- ...s => keycodes_us_ansi_shifted.md.B710-iU2.js} | 2 +- ...keycodes_us_ansi_shifted.md.B710-iU2.lean.js} | 2 +- ...ymap.md.DEREEx67.js => keymap.md.DXVjPGjn.js} | 2 +- ...REEx67.lean.js => keymap.md.DXVjPGjn.lean.js} | 2 +- ...SQTq.js => license_violations.md.BVZNOCP8.js} | 2 +- ...js => license_violations.md.BVZNOCP8.lean.js} | 2 +- ...tap.md.DeAaHd-D.js => mod_tap.md.uROXO4zr.js} | 2 +- ...aHd-D.lean.js => mod_tap.md.uROXO4zr.lean.js} | 2 +- ...newbs.md.BJFQUUuO.js => newbs.md.BdYxTpzb.js} | 2 +- ...JFQUUuO.lean.js => newbs.md.BdYxTpzb.lean.js} | 2 +- ...js => newbs_building_firmware.md.CnTqPUAX.js} | 2 +- ... newbs_building_firmware.md.CnTqPUAX.lean.js} | 2 +- ...uilding_firmware_configurator.md.B9r4a1PW.js} | 2 +- ...ng_firmware_configurator.md.B9r4a1PW.lean.js} | 2 +- ...bs_building_firmware_workflow.md.DqJTVU7C.js} | 2 +- ...ilding_firmware_workflow.md.DqJTVU7C.lean.js} | 2 +- ...s => newbs_external_userspace.md.Cb3-L9ql.js} | 2 +- ...newbs_external_userspace.md.Cb3-L9ql.lean.js} | 2 +- ...CNt3RwGF.js => newbs_flashing.md.DuAdv3f4.js} | 2 +- ...ean.js => newbs_flashing.md.DuAdv3f4.lean.js} | 2 +- ...u.js => newbs_getting_started.md.C_v7nD1l.js} | 2 +- ...=> newbs_getting_started.md.C_v7nD1l.lean.js} | 2 +- ...s => newbs_git_best_practices.md.CD2B0i-4.js} | 2 +- ...newbs_git_best_practices.md.CD2B0i-4.lean.js} | 2 +- ...git_resolving_merge_conflicts.md.Bv9iycWi.js} | 2 +- ...esolving_merge_conflicts.md.Bv9iycWi.lean.js} | 2 +- ...bs_git_resynchronize_a_branch.md.CTRR0z_u.js} | 2 +- ...t_resynchronize_a_branch.md.CTRR0z_u.lean.js} | 2 +- ..._git_using_your_master_branch.md.DmucP9Dp.js} | 2 +- ...using_your_master_branch.md.DmucP9Dp.lean.js} | 2 +- ...=> newbs_learn_more_resources.md.DyOwWVHH.js} | 2 +- ...wbs_learn_more_resources.md.DyOwWVHH.lean.js} | 2 +- ...js => newbs_testing_debugging.md.CSBTkz5Y.js} | 2 +- ... newbs_testing_debugging.md.CSBTkz5Y.lean.js} | 2 +- ....CoZULJTw.js => one_shot_keys.md.DVKbOw_R.js} | 2 +- ...lean.js => one_shot_keys.md.DVKbOw_R.lean.js} | 2 +- ....DNM4I_uU.js => other_eclipse.md.D2LFIFIo.js} | 2 +- ...lean.js => other_eclipse.md.D2LFIFIo.lean.js} | 2 +- ...d.Cd14jo_M.js => other_vscode.md.CJpFKC3I.js} | 2 +- ....lean.js => other_vscode.md.CJpFKC3I.lean.js} | 2 +- ...=> platformdev_blackpill_f4x1.md.CRzpfIX6.js} | 2 +- ...atformdev_blackpill_f4x1.md.CRzpfIX6.lean.js} | 2 +- ...platformdev_chibios_earlyinit.md.C69mum-M.js} | 2 +- ...ormdev_chibios_earlyinit.md.C69mum-M.lean.js} | 2 +- ...-O.js => platformdev_proton_c.md.Q5yuqv-5.js} | 2 +- ... => platformdev_proton_c.md.Q5yuqv-5.lean.js} | 2 +- ...RKBb.js => platformdev_rp2040.md.CVsbhmnD.js} | 2 +- ...js => platformdev_rp2040.md.CVsbhmnD.lean.js} | 2 +- ...platformdev_selecting_arm_mcu.md.BRIdTMNn.js} | 2 +- ...ormdev_selecting_arm_mcu.md.BRIdTMNn.lean.js} | 2 +- ... porting_your_keyboard_to_qmk.md.CtsmkkQs.js} | 2 +- ...ing_your_keyboard_to_qmk.md.CtsmkkQs.lean.js} | 2 +- ...d.Co-UPRQ0.js => pr_checklist.md.B3iXNAC8.js} | 2 +- ....lean.js => pr_checklist.md.B3iXNAC8.lean.js} | 2 +- ...GoY2pl.js => proprietary_libs.md.CmRjTSHi.js} | 2 +- ...n.js => proprietary_libs.md.CmRjTSHi.lean.js} | 2 +- ...t7xRtm.js => quantum_keycodes.md.CMhHYpXW.js} | 2 +- ...n.js => quantum_keycodes.md.CMhHYpXW.lean.js} | 2 +- ...sWy8meV.js => quantum_painter.md.w-wr8zVt.js} | 2 +- ...an.js => quantum_painter.md.w-wr8zVt.lean.js} | 2 +- ...fh.js => quantum_painter_lvgl.md.Cl4cN6D6.js} | 2 +- ... => quantum_painter_lvgl.md.Cl4cN6D6.lean.js} | 2 +- ...MIQ.js => quantum_painter_qff.md.DRgeq25U.js} | 2 +- ...s => quantum_painter_qff.md.DRgeq25U.lean.js} | 2 +- ...7fz.js => quantum_painter_qgf.md.BAMuGJMk.js} | 2 +- ...s => quantum_painter_qgf.md.BAMuGJMk.lean.js} | 2 +- ...5uO.js => quantum_painter_rle.md.CgkQ1vsZ.js} | 2 +- ...s => quantum_painter_rle.md.CgkQ1vsZ.lean.js} | 2 +- ....z3oNszvF.js => ref_functions.md.CYB23zzB.js} | 2 +- ...lean.js => ref_functions.md.CYB23zzB.lean.js} | 2 +- ...eference_configurator_support.md.DofEycBd.js} | 2 +- ...nce_configurator_support.md.DofEycBd.lean.js} | 2 +- ...cDDm.js => reference_glossary.md.BUGMb41c.js} | 2 +- ...js => reference_glossary.md.BUGMb41c.lean.js} | 2 +- ...-z-.js => reference_info_json.md.CYTzLhJO.js} | 2 +- ...s => reference_info_json.md.CYTzLhJO.lean.js} | 2 +- ...js => reference_keymap_extras.md.BAQkmhul.js} | 2 +- ... reference_keymap_extras.md.BAQkmhul.lean.js} | 2 +- ....yj9YaYxW.js => squeezing_avr.md.nn7YA62K.js} | 2 +- ...lean.js => squeezing_avr.md.nn7YA62K.lean.js} | 2 +- ...ort.md.Dth_xzLo.js => support.md.DVvDsq4u.js} | 2 +- ..._xzLo.lean.js => support.md.DVvDsq4u.lean.js} | 2 +- ...=> support_deprecation_policy.md.5PMvF63c.js} | 2 +- ...pport_deprecation_policy.md.5PMvF63c.lean.js} | 2 +- ...us.md.CrGVLX_v.js => syllabus.md.B5r3P0XB.js} | 2 +- ...LX_v.lean.js => syllabus.md.B5r3P0XB.lean.js} | 2 +- ...ld.md.B6KKqQy2.js => tap_hold.md.DlgWmM-h.js} | 2 +- ...qQy2.lean.js => tap_hold.md.DlgWmM-h.lean.js} | 2 +- ...PgDpX.js => understanding_qmk.md.4IwRrIYL.js} | 2 +- ....js => understanding_qmk.md.4IwRrIYL.lean.js} | 2 +- ...d.82MAVMY0.js => unit_testing.md.DA7uUPw_.js} | 2 +- ....lean.js => unit_testing.md.DA7uUPw_.lean.js} | 2 +- breaking_changes.html | 10 +++++----- breaking_changes_history.html | 10 +++++----- breaking_changes_instructions.html | 10 +++++----- chibios_upgrade_instructions.html | 10 +++++----- cli.html | 10 +++++----- cli_commands.html | 10 +++++----- cli_configuration.html | 10 +++++----- cli_development.html | 10 +++++----- cli_tab_complete.html | 10 +++++----- coding_conventions_c.html | 10 +++++----- coding_conventions_python.html | 10 +++++----- compatible_microcontrollers.html | 10 +++++----- config_options.html | 10 +++++----- configurator_architecture.html | 10 +++++----- configurator_default_keymaps.html | 10 +++++----- configurator_step_by_step.html | 10 +++++----- configurator_troubleshooting.html | 10 +++++----- contributing.html | 10 +++++----- custom_matrix.html | 10 +++++----- custom_quantum_functions.html | 10 +++++----- data_driven_config.html | 10 +++++----- documentation_best_practices.html | 10 +++++----- documentation_templates.html | 10 +++++----- driver_installation_zadig.html | 10 +++++----- drivers/adc.html | 10 +++++----- drivers/apa102.html | 10 +++++----- drivers/audio.html | 16 ++++++++-------- drivers/aw20216s.html | 10 +++++----- drivers/battery.html | 10 +++++----- drivers/eeprom.html | 10 +++++----- drivers/flash.html | 10 +++++----- drivers/gpio.html | 10 +++++----- drivers/i2c.html | 12 ++++++------ drivers/is31fl3218.html | 10 +++++----- drivers/is31fl3236.html | 10 +++++----- drivers/is31fl3729.html | 10 +++++----- drivers/is31fl3731.html | 10 +++++----- drivers/is31fl3733.html | 10 +++++----- drivers/is31fl3736.html | 10 +++++----- drivers/is31fl3737.html | 10 +++++----- drivers/is31fl3741.html | 10 +++++----- drivers/is31fl3742a.html | 10 +++++----- drivers/is31fl3743a.html | 10 +++++----- drivers/is31fl3745.html | 10 +++++----- drivers/is31fl3746a.html | 10 +++++----- drivers/serial.html | 10 +++++----- drivers/snled27351.html | 10 +++++----- drivers/spi.html | 12 ++++++------ drivers/uart.html | 10 +++++----- drivers/ws2812.html | 14 +++++++------- easy_maker.html | 10 +++++----- faq_build.html | 10 +++++----- faq_debug.html | 10 +++++----- faq_general.html | 10 +++++----- faq_keymap.html | 10 +++++----- faq_misc.html | 10 +++++----- feature_advanced_keycodes.html | 10 +++++----- feature_converters.html | 10 +++++----- feature_debounce_type.html | 10 +++++----- feature_eeprom.html | 10 +++++----- feature_layers.html | 10 +++++----- feature_layouts.html | 10 +++++----- feature_macros.html | 10 +++++----- feature_userspace.html | 10 +++++----- features/audio.html | 10 +++++----- features/auto_shift.html | 10 +++++----- features/autocorrect.html | 10 +++++----- features/backlight.html | 14 +++++++------- features/battery.html | 10 +++++----- features/bootmagic.html | 10 +++++----- features/caps_word.html | 10 +++++----- features/combo.html | 10 +++++----- features/command.html | 10 +++++----- features/community_modules.html | 10 +++++----- features/digitizer.html | 10 +++++----- features/dip_switch.html | 10 +++++----- features/dynamic_macros.html | 10 +++++----- features/encoders.html | 10 +++++----- features/grave_esc.html | 10 +++++----- features/haptic_feedback.html | 10 +++++----- features/hd44780.html | 10 +++++----- features/joystick.html | 10 +++++----- features/key_lock.html | 10 +++++----- features/key_overrides.html | 10 +++++----- features/layer_lock.html | 10 +++++----- features/leader_key.html | 10 +++++----- features/led_indicators.html | 10 +++++----- features/led_matrix.html | 10 +++++----- features/midi.html | 10 +++++----- features/mouse_keys.html | 10 +++++----- features/oled_driver.html | 10 +++++----- features/os_detection.html | 10 +++++----- features/pointing_device.html | 10 +++++----- features/programmable_button.html | 10 +++++----- features/ps2_mouse.html | 10 +++++----- features/rawhid.html | 10 +++++----- features/repeat_key.html | 10 +++++----- features/rgb_matrix.html | 10 +++++----- features/rgblight.html | 10 +++++----- features/secure.html | 10 +++++----- features/send_string.html | 10 +++++----- features/sequencer.html | 10 +++++----- features/space_cadet.html | 10 +++++----- features/split_keyboard.html | 10 +++++----- features/st7565.html | 10 +++++----- features/stenography.html | 10 +++++----- features/swap_hands.html | 10 +++++----- features/tap_dance.html | 10 +++++----- features/tri_layer.html | 10 +++++----- features/unicode.html | 10 +++++----- features/wireless.html | 10 +++++----- features/wpm.html | 10 +++++----- flashing.html | 10 +++++----- getting_started_docker.html | 10 +++++----- getting_started_github.html | 10 +++++----- getting_started_introduction.html | 10 +++++----- getting_started_make_guide.html | 10 +++++----- hand_wire.html | 10 +++++----- hardware_drivers.html | 10 +++++----- hardware_keyboard_guidelines.html | 10 +++++----- hashmap.json | 2 +- how_a_matrix_works.html | 10 +++++----- how_keyboards_work.html | 10 +++++----- index.html | 10 +++++----- isp_flashing_guide.html | 10 +++++----- keycodes.html | 10 +++++----- keycodes_basic.html | 10 +++++----- keycodes_magic.html | 10 +++++----- keycodes_us_ansi_shifted.html | 10 +++++----- keymap.html | 10 +++++----- license_violations.html | 10 +++++----- mod_tap.html | 10 +++++----- newbs.html | 10 +++++----- newbs_building_firmware.html | 10 +++++----- newbs_building_firmware_configurator.html | 10 +++++----- newbs_building_firmware_workflow.html | 12 ++++++------ newbs_external_userspace.html | 10 +++++----- newbs_flashing.html | 12 ++++++------ newbs_getting_started.html | 10 +++++----- newbs_git_best_practices.html | 10 +++++----- newbs_git_resolving_merge_conflicts.html | 10 +++++----- newbs_git_resynchronize_a_branch.html | 10 +++++----- newbs_git_using_your_master_branch.html | 10 +++++----- newbs_learn_more_resources.html | 10 +++++----- newbs_testing_debugging.html | 10 +++++----- one_shot_keys.html | 10 +++++----- other_eclipse.html | 10 +++++----- other_vscode.html | 10 +++++----- platformdev_blackpill_f4x1.html | 10 +++++----- platformdev_chibios_earlyinit.html | 10 +++++----- platformdev_proton_c.html | 10 +++++----- platformdev_rp2040.html | 10 +++++----- platformdev_selecting_arm_mcu.html | 10 +++++----- porting_your_keyboard_to_qmk.html | 10 +++++----- pr_checklist.html | 10 +++++----- proprietary_libs.html | 10 +++++----- quantum_keycodes.html | 10 +++++----- quantum_painter.html | 10 +++++----- quantum_painter_lvgl.html | 10 +++++----- quantum_painter_qff.html | 10 +++++----- quantum_painter_qgf.html | 10 +++++----- quantum_painter_rle.html | 10 +++++----- ref_functions.html | 10 +++++----- reference_configurator_support.html | 10 +++++----- reference_glossary.html | 10 +++++----- reference_info_json.html | 10 +++++----- reference_keymap_extras.html | 10 +++++----- squeezing_avr.html | 10 +++++----- support.html | 10 +++++----- support_deprecation_policy.html | 10 +++++----- syllabus.html | 10 +++++----- tap_hold.html | 10 +++++----- understanding_qmk.html | 10 +++++----- unit_testing.html | 10 +++++----- 626 files changed, 1480 insertions(+), 1480 deletions(-) rename assets/{ChangeLog_20190830.md.Dg7CR0a9.js => ChangeLog_20190830.md.D6IuReG4.js} (98%) rename assets/{ChangeLog_20190830.md.Dg7CR0a9.lean.js => ChangeLog_20190830.md.D6IuReG4.lean.js} (83%) rename assets/{ChangeLog_20200229.md.C-iTsYY3.js => ChangeLog_20200229.md.Ds66BLAx.js} (98%) rename assets/{ChangeLog_20200229.md.C-iTsYY3.lean.js => ChangeLog_20200229.md.Ds66BLAx.lean.js} (83%) rename assets/{ChangeLog_20200530.md.ClV0RxdS.js => ChangeLog_20200530.md.BCKw16qF.js} (99%) rename assets/{ChangeLog_20200530.md.ClV0RxdS.lean.js => ChangeLog_20200530.md.BCKw16qF.lean.js} (83%) rename assets/{ChangeLog_20200829.md.CRR9PTYQ.js => ChangeLog_20200829.md.KKJKOXjO.js} (99%) rename assets/{ChangeLog_20200829.md.CRR9PTYQ.lean.js => ChangeLog_20200829.md.KKJKOXjO.lean.js} (83%) rename assets/{ChangeLog_20201128.md.Bul9YL0S.js => ChangeLog_20201128.md.CI0nQrFY.js} (99%) rename assets/{ChangeLog_20201128.md.Bul9YL0S.lean.js => ChangeLog_20201128.md.CI0nQrFY.lean.js} (83%) rename assets/{ChangeLog_20210227.md.Dw8vIK_1.js => ChangeLog_20210227.md.BjzBAs5x.js} (99%) rename assets/{ChangeLog_20210227.md.Dw8vIK_1.lean.js => ChangeLog_20210227.md.BjzBAs5x.lean.js} (83%) rename assets/{ChangeLog_20210529.md.Ci4BGoNS.js => ChangeLog_20210529.md.BWAcenKJ.js} (99%) rename assets/{ChangeLog_20210529.md.Ci4BGoNS.lean.js => ChangeLog_20210529.md.BWAcenKJ.lean.js} (83%) rename assets/{ChangeLog_20210828.md.D8tTkdsi.js => ChangeLog_20210828.md.I-_imy7e.js} (99%) rename assets/{ChangeLog_20210828.md.D8tTkdsi.lean.js => ChangeLog_20210828.md.I-_imy7e.lean.js} (83%) rename assets/{ChangeLog_20211127.md.CsOxZpUa.js => ChangeLog_20211127.md.CxO_AykL.js} (99%) rename assets/{ChangeLog_20211127.md.CsOxZpUa.lean.js => ChangeLog_20211127.md.CxO_AykL.lean.js} (83%) rename assets/{ChangeLog_20220226.md.CxS56DHq.js => ChangeLog_20220226.md.Dk8ZdFSM.js} (99%) rename assets/{ChangeLog_20220226.md.CxS56DHq.lean.js => ChangeLog_20220226.md.Dk8ZdFSM.lean.js} (83%) rename assets/{ChangeLog_20220528.md.BbCWKJrZ.js => ChangeLog_20220528.md.Ci-w_XT5.js} (99%) rename assets/{ChangeLog_20220528.md.BbCWKJrZ.lean.js => ChangeLog_20220528.md.Ci-w_XT5.lean.js} (83%) rename assets/{ChangeLog_20220827.md.mKIE5Jfz.js => ChangeLog_20220827.md.5judfHL1.js} (99%) rename assets/{ChangeLog_20220827.md.mKIE5Jfz.lean.js => ChangeLog_20220827.md.5judfHL1.lean.js} (83%) rename assets/{ChangeLog_20221126.md.ejK1jl91.js => ChangeLog_20221126.md.CPg-BIWB.js} (99%) rename assets/{ChangeLog_20221126.md.ejK1jl91.lean.js => ChangeLog_20221126.md.CPg-BIWB.lean.js} (83%) rename assets/{ChangeLog_20230226.md.DA3ufZ0c.js => ChangeLog_20230226.md.7t5PVIxX.js} (99%) rename assets/{ChangeLog_20230226.md.DA3ufZ0c.lean.js => ChangeLog_20230226.md.7t5PVIxX.lean.js} (83%) rename assets/{ChangeLog_20230528.md.D9b6sNVW.js => ChangeLog_20230528.md.Bp2A079h.js} (99%) rename assets/{ChangeLog_20230528.md.D9b6sNVW.lean.js => ChangeLog_20230528.md.Bp2A079h.lean.js} (83%) rename assets/{ChangeLog_20230827.md.COX1lvBZ.js => ChangeLog_20230827.md.C16R-udl.js} (99%) rename assets/{ChangeLog_20230827.md.COX1lvBZ.lean.js => ChangeLog_20230827.md.C16R-udl.lean.js} (83%) rename assets/{ChangeLog_20231126.md.C_9Gu3X6.js => ChangeLog_20231126.md.Bpwq3Ogr.js} (99%) rename assets/{ChangeLog_20231126.md.C_9Gu3X6.lean.js => ChangeLog_20231126.md.Bpwq3Ogr.lean.js} (83%) rename assets/{ChangeLog_20240225.md.BHnhJkLK.js => ChangeLog_20240225.md.Da92cP02.js} (99%) rename assets/{ChangeLog_20240225.md.BHnhJkLK.lean.js => ChangeLog_20240225.md.Da92cP02.lean.js} (83%) rename assets/{ChangeLog_20240526.md.BV-o3lF_.js => ChangeLog_20240526.md.C85VHRrA.js} (99%) rename assets/{ChangeLog_20240526.md.BV-o3lF_.lean.js => ChangeLog_20240526.md.C85VHRrA.lean.js} (83%) rename assets/{ChangeLog_20240825.md.CPd_a589.js => ChangeLog_20240825.md.Bd_7OVSi.js} (99%) rename assets/{ChangeLog_20240825.md.CPd_a589.lean.js => ChangeLog_20240825.md.Bd_7OVSi.lean.js} (83%) rename assets/{ChangeLog_20241124.md.CfUVyQRe.js => ChangeLog_20241124.md.D0sBbIwe.js} (99%) rename assets/{ChangeLog_20241124.md.CfUVyQRe.lean.js => ChangeLog_20241124.md.D0sBbIwe.lean.js} (83%) rename assets/{ChangeLog_20250223.md.DHu3Q52U.js => ChangeLog_20250223.md.wrANLclb.js} (99%) rename assets/{ChangeLog_20250223.md.DHu3Q52U.lean.js => ChangeLog_20250223.md.wrANLclb.lean.js} (83%) rename assets/{ChangeLog_20250525.md.CmDA_OgC.js => ChangeLog_20250525.md.Bp9ysS79.js} (99%) rename assets/{ChangeLog_20250525.md.CmDA_OgC.lean.js => ChangeLog_20250525.md.Bp9ysS79.lean.js} (99%) rename assets/{ChangeLog_20250831.md.BslEheIL.js => ChangeLog_20250831.md.DpPyR9C0.js} (99%) rename assets/{ChangeLog_20250831.md.BslEheIL.lean.js => ChangeLog_20250831.md.DpPyR9C0.lean.js} (93%) rename assets/{ChangeLog_20251130.md.CObm5zL3.js => ChangeLog_20251130.md.DDM7x0Cl.js} (99%) rename assets/{ChangeLog_20251130.md.CObm5zL3.lean.js => ChangeLog_20251130.md.DDM7x0Cl.lean.js} (83%) rename assets/{ChangeLog_20260222.md.IXQ-t2RV.js => ChangeLog_20260222.md.CGKqLJC8.js} (98%) rename assets/{ChangeLog_20260222.md.IXQ-t2RV.lean.js => ChangeLog_20260222.md.CGKqLJC8.lean.js} (83%) rename assets/{api_development_environment.md.DBOLjnDt.js => api_development_environment.md.BHhIxwlc.js} (94%) rename assets/{api_development_environment.md.DBOLjnDt.lean.js => api_development_environment.md.BHhIxwlc.lean.js} (94%) rename assets/{api_development_overview.md.DJCYPKXo.js => api_development_overview.md.ykoDoprg.js} (97%) rename assets/{api_development_overview.md.DJCYPKXo.lean.js => api_development_overview.md.ykoDoprg.lean.js} (84%) rename assets/{api_docs.md.q8EzzOY3.js => api_docs.md.azbLRQdw.js} (99%) rename assets/{api_docs.md.q8EzzOY3.lean.js => api_docs.md.azbLRQdw.lean.js} (82%) rename assets/{api_overview.md.ikCJhJnu.js => api_overview.md.DMC56sa3.js} (94%) rename assets/{api_overview.md.ikCJhJnu.lean.js => api_overview.md.DMC56sa3.lean.js} (82%) rename assets/{app.CuDuM5Kz.js => app.8Is8HrmZ.js} (91%) rename assets/{arm_debugging.md.DZQjFz9i.js => arm_debugging.md.D_ovCSLz.js} (98%) rename assets/{arm_debugging.md.DZQjFz9i.lean.js => arm_debugging.md.D_ovCSLz.lean.js} (83%) rename assets/{breaking_changes.md.BGEUZtBd.js => breaking_changes.md.CPjdVfIb.js} (99%) rename assets/{breaking_changes.md.BGEUZtBd.lean.js => breaking_changes.md.CPjdVfIb.lean.js} (83%) rename assets/{breaking_changes_history.md.BE819oLP.js => breaking_changes_history.md.CxsUTOKD.js} (95%) rename assets/{breaking_changes_history.md.BE819oLP.lean.js => breaking_changes_history.md.CxsUTOKD.lean.js} (84%) rename assets/{breaking_changes_instructions.md.CMdgLYf9.js => breaking_changes_instructions.md.DjP5PolH.js} (97%) rename assets/{breaking_changes_instructions.md.CMdgLYf9.lean.js => breaking_changes_instructions.md.DjP5PolH.lean.js} (85%) rename assets/{capabilities.md.DBSM69xz.js => capabilities.md.BioT5X0H.js} (98%) rename assets/{capabilities.md.DBSM69xz.lean.js => capabilities.md.BioT5X0H.lean.js} (92%) rename assets/{capabilities_inc.md.CfVcbxN_.js => capabilities_inc.md.BoBlYZ_w.js} (83%) rename assets/{capabilities_inc.md.CfVcbxN_.lean.js => capabilities_inc.md.BoBlYZ_w.lean.js} (83%) rename assets/{chibios_upgrade_instructions.md.C7StOV1s.js => chibios_upgrade_instructions.md.DSfqrpjD.js} (97%) rename assets/{chibios_upgrade_instructions.md.C7StOV1s.lean.js => chibios_upgrade_instructions.md.DSfqrpjD.lean.js} (84%) delete mode 100644 assets/chunks/@localSearchIndexroot.AlnfQLB4.js create mode 100644 assets/chunks/@localSearchIndexroot.D34-pwHA.js rename assets/chunks/{VPLocalSearchBox.CJDVhk5n.js => VPLocalSearchBox.3R5oEP-S.js} (99%) rename assets/chunks/{framework.Cauyuiy8.js => framework.DUYk0S7v.js} (99%) rename assets/chunks/{theme.UmtsjDQ8.js => theme.DaTnCy1N.js} (99%) rename assets/{cli.md.CxsSVwqz.js => cli.md.DlRtyTGy.js} (97%) rename assets/{cli.md.CxsSVwqz.lean.js => cli.md.DlRtyTGy.lean.js} (81%) rename assets/{cli_commands.md.CRBCuoFZ.js => cli_commands.md.CycgrVp4.js} (99%) rename assets/{cli_commands.md.CRBCuoFZ.lean.js => cli_commands.md.CycgrVp4.lean.js} (83%) rename assets/{cli_configuration.md.XqO3NJ_D.js => cli_configuration.md.CWQYtKyU.js} (98%) rename assets/{cli_configuration.md.XqO3NJ_D.lean.js => cli_configuration.md.CWQYtKyU.lean.js} (83%) rename assets/{cli_development.md.DEROGtvC.js => cli_development.md.bdrJhiD-.js} (99%) rename assets/{cli_development.md.DEROGtvC.lean.js => cli_development.md.bdrJhiD-.lean.js} (98%) rename assets/{cli_tab_complete.md.D1OMIPwp.js => cli_tab_complete.md.BMCs6AIK.js} (96%) rename assets/{cli_tab_complete.md.D1OMIPwp.lean.js => cli_tab_complete.md.BMCs6AIK.lean.js} (83%) rename assets/{coding_conventions_c.md.BozxIF_g.js => coding_conventions_c.md.CgLiZ0K-.js} (98%) rename assets/{coding_conventions_c.md.BozxIF_g.lean.js => coding_conventions_c.md.CgLiZ0K-.lean.js} (83%) rename assets/{coding_conventions_python.md.DP_Zes00.js => coding_conventions_python.md.C-VrJiRu.js} (99%) rename assets/{coding_conventions_python.md.DP_Zes00.lean.js => coding_conventions_python.md.C-VrJiRu.lean.js} (84%) rename assets/{compatible_microcontrollers.md.DY4Poukh.js => compatible_microcontrollers.md.CZ7InUb5.js} (98%) rename assets/{compatible_microcontrollers.md.DY4Poukh.lean.js => compatible_microcontrollers.md.CZ7InUb5.lean.js} (84%) rename assets/{config_options.md.01OxPzbg.js => config_options.md.DO-qGA0T.js} (99%) rename assets/{config_options.md.01OxPzbg.lean.js => config_options.md.DO-qGA0T.lean.js} (83%) rename assets/{configurator_architecture.md.BO2Oi8tR.js => configurator_architecture.md.DPq5rVLw.js} (98%) rename assets/{configurator_architecture.md.BO2Oi8tR.lean.js => configurator_architecture.md.DPq5rVLw.lean.js} (85%) rename assets/{configurator_default_keymaps.md.Dhx_hNGq.js => configurator_default_keymaps.md.Cji5fckm.js} (99%) rename assets/{configurator_default_keymaps.md.Dhx_hNGq.lean.js => configurator_default_keymaps.md.Cji5fckm.lean.js} (85%) rename assets/{configurator_step_by_step.md.CvypTcmq.js => configurator_step_by_step.md.DJIPsyh-.js} (97%) rename assets/{configurator_step_by_step.md.CvypTcmq.lean.js => configurator_step_by_step.md.DJIPsyh-.lean.js} (84%) rename assets/{configurator_troubleshooting.md.B-LxAPMk.js => configurator_troubleshooting.md.z2LZSYLm.js} (95%) rename assets/{configurator_troubleshooting.md.B-LxAPMk.lean.js => configurator_troubleshooting.md.z2LZSYLm.lean.js} (84%) rename assets/{contributing.md.BdfsPqoi.js => contributing.md.Dcwvm7t6.js} (99%) rename assets/{contributing.md.BdfsPqoi.lean.js => contributing.md.Dcwvm7t6.lean.js} (82%) rename assets/{custom_matrix.md.gXpTxUyG.js => custom_matrix.md.DzDeXqyP.js} (99%) rename assets/{custom_matrix.md.gXpTxUyG.lean.js => custom_matrix.md.DzDeXqyP.lean.js} (83%) rename assets/{custom_quantum_functions.md.BlAK1gkM.js => custom_quantum_functions.md.Btyj-xrD.js} (99%) rename assets/{custom_quantum_functions.md.BlAK1gkM.lean.js => custom_quantum_functions.md.Btyj-xrD.lean.js} (84%) rename assets/{data_driven_config.md.0b9lBAXA.js => data_driven_config.md.DYDbIdON.js} (98%) rename assets/{data_driven_config.md.0b9lBAXA.lean.js => data_driven_config.md.DYDbIdON.lean.js} (83%) rename assets/{documentation_best_practices.md.DyKD6sih.js => documentation_best_practices.md.q-TuhoQ8.js} (98%) rename assets/{documentation_best_practices.md.DyKD6sih.lean.js => documentation_best_practices.md.q-TuhoQ8.lean.js} (84%) rename assets/{documentation_templates.md.Bd-mV5Hz.js => documentation_templates.md.K1ZkzXdN.js} (97%) rename assets/{documentation_templates.md.Bd-mV5Hz.lean.js => documentation_templates.md.K1ZkzXdN.lean.js} (84%) rename assets/{driver_installation_zadig.md.3wWhrxYw.js => driver_installation_zadig.md.B4d-g925.js} (98%) rename assets/{driver_installation_zadig.md.3wWhrxYw.lean.js => driver_installation_zadig.md.B4d-g925.lean.js} (87%) rename assets/{drivers_adc.md.CvhRMxs7.js => drivers_adc.md.ghm13up5.js} (99%) rename assets/{drivers_adc.md.CvhRMxs7.lean.js => drivers_adc.md.ghm13up5.lean.js} (82%) rename assets/{drivers_apa102.md.DBz660in.js => drivers_apa102.md.DB4qwSpp.js} (97%) rename assets/{drivers_apa102.md.DBz660in.lean.js => drivers_apa102.md.DB4qwSpp.lean.js} (82%) rename assets/{drivers_audio.md.POIlGI3S.js => drivers_audio.md.CdpP_nV3.js} (97%) rename assets/{drivers_audio.md.POIlGI3S.lean.js => drivers_audio.md.CdpP_nV3.lean.js} (82%) rename assets/{drivers_aw20216s.md.BK5iOj2N.js => drivers_aw20216s.md.CpBh1Zxp.js} (98%) rename assets/{drivers_aw20216s.md.BK5iOj2N.lean.js => drivers_aw20216s.md.CpBh1Zxp.lean.js} (83%) rename assets/{drivers_battery.md.DAwDiAI6.js => drivers_battery.md.BejgsgGx.js} (97%) rename assets/{drivers_battery.md.DAwDiAI6.lean.js => drivers_battery.md.BejgsgGx.lean.js} (82%) rename assets/{drivers_eeprom.md.DGh7YLy6.js => drivers_eeprom.md.Chttlkwg.js} (99%) rename assets/{drivers_eeprom.md.DGh7YLy6.lean.js => drivers_eeprom.md.Chttlkwg.lean.js} (83%) rename assets/{drivers_flash.md.Xjr69qY1.js => drivers_flash.md.BZEprYOU.js} (96%) rename assets/{drivers_flash.md.Xjr69qY1.lean.js => drivers_flash.md.BZEprYOU.lean.js} (82%) rename assets/{drivers_gpio.md.DeLMdEEL.js => drivers_gpio.md.DAIVnFsw.js} (97%) rename assets/{drivers_gpio.md.DeLMdEEL.lean.js => drivers_gpio.md.DAIVnFsw.lean.js} (82%) rename assets/{drivers_i2c.md.Stz1viUq.js => drivers_i2c.md.Dl4XHbyO.js} (98%) rename assets/{drivers_i2c.md.Stz1viUq.lean.js => drivers_i2c.md.Dl4XHbyO.lean.js} (82%) rename assets/{drivers_is31fl3218.md.CxNb3XH6.js => drivers_is31fl3218.md.B-CYetEe.js} (99%) rename assets/{drivers_is31fl3218.md.CxNb3XH6.lean.js => drivers_is31fl3218.md.B-CYetEe.lean.js} (83%) rename assets/{drivers_is31fl3236.md.CtQ1lF3K.js => drivers_is31fl3236.md.oMXFaJQB.js} (99%) rename assets/{drivers_is31fl3236.md.CtQ1lF3K.lean.js => drivers_is31fl3236.md.oMXFaJQB.lean.js} (83%) rename assets/{drivers_is31fl3729.md.DJCd-vON.js => drivers_is31fl3729.md.BPfwluBs.js} (99%) rename assets/{drivers_is31fl3729.md.DJCd-vON.lean.js => drivers_is31fl3729.md.BPfwluBs.lean.js} (83%) rename assets/{drivers_is31fl3731.md.Bv49dNf4.js => drivers_is31fl3731.md.CoRcGpoN.js} (99%) rename assets/{drivers_is31fl3731.md.Bv49dNf4.lean.js => drivers_is31fl3731.md.CoRcGpoN.lean.js} (83%) rename assets/{drivers_is31fl3733.md.4RLFART3.js => drivers_is31fl3733.md.D617uo2L.js} (99%) rename assets/{drivers_is31fl3733.md.4RLFART3.lean.js => drivers_is31fl3733.md.D617uo2L.lean.js} (83%) rename assets/{drivers_is31fl3736.md.DcvNnQ6u.js => drivers_is31fl3736.md.DATOjY36.js} (99%) rename assets/{drivers_is31fl3736.md.DcvNnQ6u.lean.js => drivers_is31fl3736.md.DATOjY36.lean.js} (83%) rename assets/{drivers_is31fl3737.md.SB4-0r24.js => drivers_is31fl3737.md.Cs3UsMas.js} (99%) rename assets/{drivers_is31fl3737.md.SB4-0r24.lean.js => drivers_is31fl3737.md.Cs3UsMas.lean.js} (83%) rename assets/{drivers_is31fl3741.md.BnjAjZj1.js => drivers_is31fl3741.md.CuFeaQg_.js} (99%) rename assets/{drivers_is31fl3741.md.BnjAjZj1.lean.js => drivers_is31fl3741.md.CuFeaQg_.lean.js} (83%) rename assets/{drivers_is31fl3742a.md.DVxwQ0u0.js => drivers_is31fl3742a.md.r_1D4OlQ.js} (99%) rename assets/{drivers_is31fl3742a.md.DVxwQ0u0.lean.js => drivers_is31fl3742a.md.r_1D4OlQ.lean.js} (83%) rename assets/{drivers_is31fl3743a.md.Fzps0fLE.js => drivers_is31fl3743a.md.DJJn0Aca.js} (99%) rename assets/{drivers_is31fl3743a.md.Fzps0fLE.lean.js => drivers_is31fl3743a.md.DJJn0Aca.lean.js} (83%) rename assets/{drivers_is31fl3745.md.Bub6KcD5.js => drivers_is31fl3745.md.sA12j7Er.js} (99%) rename assets/{drivers_is31fl3745.md.Bub6KcD5.lean.js => drivers_is31fl3745.md.sA12j7Er.lean.js} (83%) rename assets/{drivers_is31fl3746a.md.CupewbNN.js => drivers_is31fl3746a.md.CCGFqsIg.js} (99%) rename assets/{drivers_is31fl3746a.md.CupewbNN.lean.js => drivers_is31fl3746a.md.CCGFqsIg.lean.js} (83%) rename assets/{drivers_serial.md.BkUw6hN9.js => drivers_serial.md.C29ECQJq.js} (99%) rename assets/{drivers_serial.md.BkUw6hN9.lean.js => drivers_serial.md.C29ECQJq.lean.js} (82%) rename assets/{drivers_snled27351.md._Q-J-rIw.js => drivers_snled27351.md.YUDcBieB.js} (99%) rename assets/{drivers_snled27351.md._Q-J-rIw.lean.js => drivers_snled27351.md.YUDcBieB.lean.js} (83%) rename assets/{drivers_spi.md.fBcFNYcc.js => drivers_spi.md.2nctHc0q.js} (97%) rename assets/{drivers_spi.md.fBcFNYcc.lean.js => drivers_spi.md.2nctHc0q.lean.js} (82%) rename assets/{drivers_uart.md.BVpiWrhw.js => drivers_uart.md.C-DQ6QZa.js} (98%) rename assets/{drivers_uart.md.BVpiWrhw.lean.js => drivers_uart.md.C-DQ6QZa.lean.js} (82%) rename assets/{drivers_ws2812.md.D506ofII.js => drivers_ws2812.md.3iqmoMnj.js} (97%) rename assets/{drivers_ws2812.md.D506ofII.lean.js => drivers_ws2812.md.3iqmoMnj.lean.js} (82%) rename assets/{easy_maker.md.CWKgP0PT.js => easy_maker.md.CyCtS9iR.js} (96%) rename assets/{easy_maker.md.CWKgP0PT.lean.js => easy_maker.md.CyCtS9iR.lean.js} (84%) rename assets/{faq_build.md.DRUGJDZw.js => faq_build.md.DUKI8CAq.js} (98%) rename assets/{faq_build.md.DRUGJDZw.lean.js => faq_build.md.DUKI8CAq.lean.js} (82%) rename assets/{faq_debug.md.DPA-3BUa.js => faq_debug.md.DfevHt05.js} (99%) rename assets/{faq_debug.md.DPA-3BUa.lean.js => faq_debug.md.DfevHt05.lean.js} (82%) rename assets/{faq_general.md.D6klmZef.js => faq_general.md.CSwG14K9.js} (98%) rename assets/{faq_general.md.D6klmZef.lean.js => faq_general.md.CSwG14K9.lean.js} (83%) rename assets/{faq_keymap.md.UjocxZux.js => faq_keymap.md.B-f4GotG.js} (99%) rename assets/{faq_keymap.md.UjocxZux.lean.js => faq_keymap.md.B-f4GotG.lean.js} (83%) rename assets/{faq_misc.md.BPIgMHQW.js => faq_misc.md.CQG0a42D.js} (98%) rename assets/{faq_misc.md.BPIgMHQW.lean.js => faq_misc.md.CQG0a42D.lean.js} (82%) rename assets/{feature_advanced_keycodes.md.DgDykEfT.js => feature_advanced_keycodes.md.B__eRJaD.js} (99%) rename assets/{feature_advanced_keycodes.md.DgDykEfT.lean.js => feature_advanced_keycodes.md.B__eRJaD.lean.js} (84%) rename assets/{feature_converters.md.BcivaQ2Y.js => feature_converters.md.BvZ97-f7.js} (99%) rename assets/{feature_converters.md.BcivaQ2Y.lean.js => feature_converters.md.BvZ97-f7.lean.js} (98%) rename assets/{feature_debounce_type.md.DT3D46BO.js => feature_debounce_type.md.DmGHbcl5.js} (98%) rename assets/{feature_debounce_type.md.DT3D46BO.lean.js => feature_debounce_type.md.DmGHbcl5.lean.js} (84%) rename assets/{feature_eeprom.md.C4jGd07n.js => feature_eeprom.md.MCCoTyKB.js} (99%) rename assets/{feature_eeprom.md.C4jGd07n.lean.js => feature_eeprom.md.MCCoTyKB.lean.js} (83%) rename assets/{feature_layers.md.BRPaBran.js => feature_layers.md.BpRyCtyl.js} (99%) rename assets/{feature_layers.md.BRPaBran.lean.js => feature_layers.md.BpRyCtyl.lean.js} (82%) rename assets/{feature_layouts.md.DKb-OgxY.js => feature_layouts.md.D2KZVUWv.js} (98%) rename assets/{feature_layouts.md.DKb-OgxY.lean.js => feature_layouts.md.D2KZVUWv.lean.js} (83%) rename assets/{feature_macros.md.BCymatkF.js => feature_macros.md.CSlh6M_r.js} (99%) rename assets/{feature_macros.md.BCymatkF.lean.js => feature_macros.md.CSlh6M_r.lean.js} (82%) rename assets/{feature_userspace.md.BWDqRxjZ.js => feature_userspace.md.BAzTeriV.js} (99%) rename assets/{feature_userspace.md.BWDqRxjZ.lean.js => feature_userspace.md.BAzTeriV.lean.js} (83%) rename assets/{features_audio.md.C3CBdMc3.js => features_audio.md.Cr9YonZR.js} (99%) rename assets/{features_audio.md.C3CBdMc3.lean.js => features_audio.md.Cr9YonZR.lean.js} (82%) rename assets/{features_auto_shift.md.BFuiQ7EE.js => features_auto_shift.md.BUK-Vjbn.js} (99%) rename assets/{features_auto_shift.md.BFuiQ7EE.lean.js => features_auto_shift.md.BUK-Vjbn.lean.js} (83%) rename assets/{features_autocorrect.md.CwLnMkQ6.js => features_autocorrect.md.Di2YY-lX.js} (99%) rename assets/{features_autocorrect.md.CwLnMkQ6.lean.js => features_autocorrect.md.Di2YY-lX.lean.js} (84%) rename assets/{features_backlight.md.4TGdbRi8.js => features_backlight.md.CCkIa8h-.js} (98%) rename assets/{features_backlight.md.4TGdbRi8.lean.js => features_backlight.md.CCkIa8h-.lean.js} (83%) rename assets/{features_battery.md.CgVRBqOv.js => features_battery.md.DaU78lT0.js} (97%) rename assets/{features_battery.md.CgVRBqOv.lean.js => features_battery.md.DaU78lT0.lean.js} (82%) rename assets/{features_bootmagic.md.CBkhKU8p.js => features_bootmagic.md.D5-HY3Hf.js} (98%) rename assets/{features_bootmagic.md.CBkhKU8p.lean.js => features_bootmagic.md.D5-HY3Hf.lean.js} (83%) rename assets/{features_caps_word.md.BwuF_Vhc.js => features_caps_word.md.Cqa7whRF.js} (99%) rename assets/{features_caps_word.md.BwuF_Vhc.lean.js => features_caps_word.md.Cqa7whRF.lean.js} (83%) rename assets/{features_combo.md.ssaGsA-P.js => features_combo.md.DUXuMBvZ.js} (99%) rename assets/{features_combo.md.ssaGsA-P.lean.js => features_combo.md.DUXuMBvZ.lean.js} (82%) rename assets/{features_command.md.ya5i-XFt.js => features_command.md.ClQenxyT.js} (97%) rename assets/{features_command.md.ya5i-XFt.lean.js => features_command.md.ClQenxyT.lean.js} (82%) rename assets/{features_community_modules.md.B2PC3enG.js => features_community_modules.md.BEe_oI6M.js} (99%) rename assets/{features_community_modules.md.B2PC3enG.lean.js => features_community_modules.md.BEe_oI6M.lean.js} (84%) rename assets/{features_digitizer.md.CODT9WkJ.js => features_digitizer.md.Bd-vzJLw.js} (98%) rename assets/{features_digitizer.md.CODT9WkJ.lean.js => features_digitizer.md.Bd-vzJLw.lean.js} (83%) rename assets/{features_dip_switch.md.Ba4GL97m.js => features_dip_switch.md.DE2RP9Fo.js} (99%) rename assets/{features_dip_switch.md.Ba4GL97m.lean.js => features_dip_switch.md.DE2RP9Fo.lean.js} (83%) rename assets/{features_dynamic_macros.md.alLvGcWr.js => features_dynamic_macros.md.DGGasmlF.js} (98%) rename assets/{features_dynamic_macros.md.alLvGcWr.lean.js => features_dynamic_macros.md.DGGasmlF.lean.js} (84%) rename assets/{features_encoders.md.Bd7cXZB3.js => features_encoders.md.Ccf2BS3A.js} (99%) rename assets/{features_encoders.md.Bd7cXZB3.lean.js => features_encoders.md.Ccf2BS3A.lean.js} (82%) rename assets/{features_grave_esc.md.BQRa2ZXb.js => features_grave_esc.md.ByGZcODM.js} (96%) rename assets/{features_grave_esc.md.BQRa2ZXb.lean.js => features_grave_esc.md.ByGZcODM.lean.js} (83%) rename assets/{features_haptic_feedback.md.DuXv7T7P.js => features_haptic_feedback.md.0sqCrtd3.js} (99%) rename assets/{features_haptic_feedback.md.DuXv7T7P.lean.js => features_haptic_feedback.md.0sqCrtd3.lean.js} (83%) rename assets/{features_hd44780.md.JqbI6dcV.js => features_hd44780.md.wMye5bL5.js} (99%) rename assets/{features_hd44780.md.JqbI6dcV.lean.js => features_hd44780.md.wMye5bL5.lean.js} (83%) rename assets/{features_joystick.md.DG_RF0SA.js => features_joystick.md.CBVsW76F.js} (99%) rename assets/{features_joystick.md.DG_RF0SA.lean.js => features_joystick.md.CBVsW76F.lean.js} (82%) rename assets/{features_key_lock.md.1Aqyr8wY.js => features_key_lock.md.CPB03zm8.js} (95%) rename assets/{features_key_lock.md.1Aqyr8wY.lean.js => features_key_lock.md.CPB03zm8.lean.js} (82%) rename assets/{features_key_overrides.md.DN2Su4eb.js => features_key_overrides.md.DHmulGw8.js} (99%) rename assets/{features_key_overrides.md.DN2Su4eb.lean.js => features_key_overrides.md.DHmulGw8.lean.js} (83%) rename assets/{features_layer_lock.md.BNs4p6DJ.js => features_layer_lock.md.BFyJEied.js} (98%) rename assets/{features_layer_lock.md.BNs4p6DJ.lean.js => features_layer_lock.md.BFyJEied.lean.js} (84%) rename assets/{features_leader_key.md.B1k0F6xl.js => features_leader_key.md.BXjau7jR.js} (99%) rename assets/{features_leader_key.md.B1k0F6xl.lean.js => features_leader_key.md.BXjau7jR.lean.js} (83%) rename assets/{features_led_indicators.md.AIQa_hfc.js => features_led_indicators.md.CGYyrucF.js} (99%) rename assets/{features_led_indicators.md.AIQa_hfc.lean.js => features_led_indicators.md.CGYyrucF.lean.js} (83%) rename assets/{features_led_matrix.md.Cm0moFB5.js => features_led_matrix.md.DuGjDaz2.js} (99%) rename assets/{features_led_matrix.md.Cm0moFB5.lean.js => features_led_matrix.md.DuGjDaz2.lean.js} (83%) rename assets/{features_midi.md.v37bH2vU.js => features_midi.md.Bbhyxj9Y.js} (99%) rename assets/{features_midi.md.v37bH2vU.lean.js => features_midi.md.Bbhyxj9Y.lean.js} (82%) rename assets/{features_mouse_keys.md.D1QdpHqq.js => features_mouse_keys.md.BO1Asbyn.js} (99%) rename assets/{features_mouse_keys.md.D1QdpHqq.lean.js => features_mouse_keys.md.BO1Asbyn.lean.js} (83%) rename assets/{features_oled_driver.md.CR0dEKlX.js => features_oled_driver.md.Dv1hbhxI.js} (99%) rename assets/{features_oled_driver.md.CR0dEKlX.lean.js => features_oled_driver.md.Dv1hbhxI.lean.js} (83%) rename assets/{features_os_detection.md.D95X8bah.js => features_os_detection.md.jSTpkLgf.js} (99%) rename assets/{features_os_detection.md.D95X8bah.lean.js => features_os_detection.md.jSTpkLgf.lean.js} (83%) rename assets/{features_pointing_device.md.DXePd09M.js => features_pointing_device.md.Ca3kOf-A.js} (99%) rename assets/{features_pointing_device.md.DXePd09M.lean.js => features_pointing_device.md.Ca3kOf-A.lean.js} (83%) rename assets/{features_programmable_button.md.Bl52c_Yl.js => features_programmable_button.md.C_86Sd8h.js} (98%) rename assets/{features_programmable_button.md.Bl52c_Yl.lean.js => features_programmable_button.md.C_86Sd8h.lean.js} (84%) rename assets/{features_ps2_mouse.md.qDR2aVVH.js => features_ps2_mouse.md.CN8mIpft.js} (99%) rename assets/{features_ps2_mouse.md.qDR2aVVH.lean.js => features_ps2_mouse.md.CN8mIpft.lean.js} (83%) rename assets/{features_rawhid.md.CFU7cft3.js => features_rawhid.md.DB4DvYln.js} (99%) rename assets/{features_rawhid.md.CFU7cft3.lean.js => features_rawhid.md.DB4DvYln.lean.js} (82%) rename assets/{features_repeat_key.md.BWrZx7Ty.js => features_repeat_key.md.CSo9ygph.js} (99%) rename assets/{features_repeat_key.md.BWrZx7Ty.lean.js => features_repeat_key.md.CSo9ygph.lean.js} (83%) rename assets/{features_rgb_matrix.md.CooKQZqS.js => features_rgb_matrix.md.YAdnF1BU.js} (99%) rename assets/{features_rgb_matrix.md.CooKQZqS.lean.js => features_rgb_matrix.md.YAdnF1BU.lean.js} (83%) rename assets/{features_rgblight.md.D-DgK2YJ.js => features_rgblight.md.Cld469wm.js} (99%) rename assets/{features_rgblight.md.D-DgK2YJ.lean.js => features_rgblight.md.Cld469wm.lean.js} (85%) rename assets/{features_secure.md.BAyr6J6B.js => features_secure.md.DjnR-TYY.js} (97%) rename assets/{features_secure.md.BAyr6J6B.lean.js => features_secure.md.DjnR-TYY.lean.js} (82%) rename assets/{features_send_string.md.Cze7R7D6.js => features_send_string.md.DAZ-KvOk.js} (99%) rename assets/{features_send_string.md.Cze7R7D6.lean.js => features_send_string.md.DAZ-KvOk.lean.js} (83%) rename assets/{features_sequencer.md.g91MRf6I.js => features_sequencer.md.DlMJ9iBQ.js} (98%) rename assets/{features_sequencer.md.g91MRf6I.lean.js => features_sequencer.md.DlMJ9iBQ.lean.js} (83%) rename assets/{features_space_cadet.md.Rc5mzUFA.js => features_space_cadet.md.BqY09XmY.js} (98%) rename assets/{features_space_cadet.md.Rc5mzUFA.lean.js => features_space_cadet.md.BqY09XmY.lean.js} (83%) rename assets/{features_split_keyboard.md.zh-H1dzG.js => features_split_keyboard.md.CP5P3ND7.js} (99%) rename assets/{features_split_keyboard.md.zh-H1dzG.lean.js => features_split_keyboard.md.CP5P3ND7.lean.js} (85%) rename assets/{features_st7565.md.WvdJUI9P.js => features_st7565.md.Dwu6paR4.js} (99%) rename assets/{features_st7565.md.WvdJUI9P.lean.js => features_st7565.md.Dwu6paR4.lean.js} (82%) rename assets/{features_stenography.md.2liY1-LM.js => features_stenography.md.rMm9phsG.js} (99%) rename assets/{features_stenography.md.2liY1-LM.lean.js => features_stenography.md.rMm9phsG.lean.js} (83%) rename assets/{features_swap_hands.md.CpjspRMM.js => features_swap_hands.md.nW-D0yHh.js} (99%) rename assets/{features_swap_hands.md.CpjspRMM.lean.js => features_swap_hands.md.nW-D0yHh.lean.js} (83%) rename assets/{features_tap_dance.md.DXcB5Veb.js => features_tap_dance.md.DYKVHW8v.js} (99%) rename assets/{features_tap_dance.md.DXcB5Veb.lean.js => features_tap_dance.md.DYKVHW8v.lean.js} (84%) rename assets/{features_tri_layer.md.DkFd4pCh.js => features_tri_layer.md.CP4tVyWE.js} (97%) rename assets/{features_tri_layer.md.DkFd4pCh.lean.js => features_tri_layer.md.CP4tVyWE.lean.js} (83%) rename assets/{features_unicode.md.qsSquqNa.js => features_unicode.md.B_tQVqk9.js} (99%) rename assets/{features_unicode.md.qsSquqNa.lean.js => features_unicode.md.B_tQVqk9.lean.js} (99%) rename assets/{features_wireless.md.Bk4hYnZX.js => features_wireless.md.2T8KVBJs.js} (98%) rename assets/{features_wireless.md.Bk4hYnZX.lean.js => features_wireless.md.2T8KVBJs.lean.js} (83%) rename assets/{features_wpm.md.Baq4jIoq.js => features_wpm.md.CLlB7DNG.js} (99%) rename assets/{features_wpm.md.Baq4jIoq.lean.js => features_wpm.md.CLlB7DNG.lean.js} (82%) rename assets/{flashing.md.DMoR8VBF.js => flashing.md.D33WW-Hb.js} (99%) rename assets/{flashing.md.DMoR8VBF.lean.js => flashing.md.D33WW-Hb.lean.js} (83%) rename assets/{getting_started_docker.md.AEG4WH1N.js => getting_started_docker.md.CnQDT8XT.js} (98%) rename assets/{getting_started_docker.md.AEG4WH1N.lean.js => getting_started_docker.md.CnQDT8XT.lean.js} (84%) rename assets/{getting_started_github.md.B9wd068y.js => getting_started_github.md.CE8RxkZj.js} (97%) rename assets/{getting_started_github.md.B9wd068y.lean.js => getting_started_github.md.CE8RxkZj.lean.js} (87%) rename assets/{getting_started_introduction.md.Dzi5ljBy.js => getting_started_introduction.md.C8lMDcxb.js} (97%) rename assets/{getting_started_introduction.md.Dzi5ljBy.lean.js => getting_started_introduction.md.C8lMDcxb.lean.js} (84%) rename assets/{getting_started_make_guide.md.CeLtdD_X.js => getting_started_make_guide.md.CaRp2eyv.js} (99%) rename assets/{getting_started_make_guide.md.CeLtdD_X.lean.js => getting_started_make_guide.md.CaRp2eyv.lean.js} (84%) rename assets/{hand_wire.md.CVVk-a8R.js => hand_wire.md.CVFAzcE5.js} (99%) rename assets/{hand_wire.md.CVVk-a8R.lean.js => hand_wire.md.CVFAzcE5.lean.js} (89%) rename assets/{hardware_drivers.md.DLYEz5_y.js => hardware_drivers.md.vWSu8yLz.js} (96%) rename assets/{hardware_drivers.md.DLYEz5_y.lean.js => hardware_drivers.md.vWSu8yLz.lean.js} (83%) rename assets/{hardware_keyboard_guidelines.md.CuYXnNDX.js => hardware_keyboard_guidelines.md.Dtq2deva.js} (99%) rename assets/{hardware_keyboard_guidelines.md.CuYXnNDX.lean.js => hardware_keyboard_guidelines.md.Dtq2deva.lean.js} (84%) rename assets/{how_a_matrix_works.md.DMsJT4Dz.js => how_a_matrix_works.md.C56BVOKq.js} (98%) rename assets/{how_a_matrix_works.md.DMsJT4Dz.lean.js => how_a_matrix_works.md.C56BVOKq.lean.js} (83%) rename assets/{how_keyboards_work.md.B2Be3BPq.js => how_keyboards_work.md.B1-KACsB.js} (98%) rename assets/{how_keyboards_work.md.B2Be3BPq.lean.js => how_keyboards_work.md.B1-KACsB.lean.js} (84%) rename assets/{index.md.BsBb4ZNh.js => index.md.BIeL4qUm.js} (96%) rename assets/{index.md.BsBb4ZNh.lean.js => index.md.BIeL4qUm.lean.js} (82%) rename assets/{isp_flashing_guide.md.DZYuC4dB.js => isp_flashing_guide.md.CMIX0i8g.js} (99%) rename assets/{isp_flashing_guide.md.DZYuC4dB.lean.js => isp_flashing_guide.md.CMIX0i8g.lean.js} (83%) rename assets/{keycodes.md.BFmA0AVu.js => keycodes.md.TseVv0Om.js} (99%) rename assets/{keycodes.md.BFmA0AVu.lean.js => keycodes.md.TseVv0Om.lean.js} (82%) rename assets/{keycodes_basic.md.1acV3SW6.js => keycodes_basic.md.DFS_uCTY.js} (99%) rename assets/{keycodes_basic.md.1acV3SW6.lean.js => keycodes_basic.md.DFS_uCTY.lean.js} (83%) rename assets/{keycodes_magic.md.DGcxCwmE.js => keycodes_magic.md.BpmQ6-VM.js} (97%) rename assets/{keycodes_magic.md.DGcxCwmE.lean.js => keycodes_magic.md.BpmQ6-VM.lean.js} (83%) rename assets/{keycodes_us_ansi_shifted.md.ni3swFhe.js => keycodes_us_ansi_shifted.md.B710-iU2.js} (96%) rename assets/{keycodes_us_ansi_shifted.md.ni3swFhe.lean.js => keycodes_us_ansi_shifted.md.B710-iU2.lean.js} (84%) rename assets/{keymap.md.DEREEx67.js => keymap.md.DXVjPGjn.js} (99%) rename assets/{keymap.md.DEREEx67.lean.js => keymap.md.DXVjPGjn.lean.js} (82%) rename assets/{license_violations.md.B1UpSQTq.js => license_violations.md.BVZNOCP8.js} (99%) rename assets/{license_violations.md.B1UpSQTq.lean.js => license_violations.md.BVZNOCP8.lean.js} (83%) rename assets/{mod_tap.md.DeAaHd-D.js => mod_tap.md.uROXO4zr.js} (99%) rename assets/{mod_tap.md.DeAaHd-D.lean.js => mod_tap.md.uROXO4zr.lean.js} (82%) rename assets/{newbs.md.BJFQUUuO.js => newbs.md.BdYxTpzb.js} (96%) rename assets/{newbs.md.BJFQUUuO.lean.js => newbs.md.BdYxTpzb.lean.js} (82%) rename assets/{newbs_building_firmware.md.9ta3a_sX.js => newbs_building_firmware.md.CnTqPUAX.js} (98%) rename assets/{newbs_building_firmware.md.9ta3a_sX.lean.js => newbs_building_firmware.md.CnTqPUAX.lean.js} (84%) rename assets/{newbs_building_firmware_configurator.md.D3v81Bes.js => newbs_building_firmware_configurator.md.B9r4a1PW.js} (94%) rename assets/{newbs_building_firmware_configurator.md.D3v81Bes.lean.js => newbs_building_firmware_configurator.md.B9r4a1PW.lean.js} (85%) rename assets/{newbs_building_firmware_workflow.md.DGvCwy2t.js => newbs_building_firmware_workflow.md.DqJTVU7C.js} (99%) rename assets/{newbs_building_firmware_workflow.md.DGvCwy2t.lean.js => newbs_building_firmware_workflow.md.DqJTVU7C.lean.js} (94%) rename assets/{newbs_external_userspace.md.BMvW5z9_.js => newbs_external_userspace.md.Cb3-L9ql.js} (99%) rename assets/{newbs_external_userspace.md.BMvW5z9_.lean.js => newbs_external_userspace.md.Cb3-L9ql.lean.js} (86%) rename assets/{newbs_flashing.md.CNt3RwGF.js => newbs_flashing.md.DuAdv3f4.js} (98%) rename assets/{newbs_flashing.md.CNt3RwGF.lean.js => newbs_flashing.md.DuAdv3f4.lean.js} (92%) rename assets/{newbs_getting_started.md.C2FE2YNu.js => newbs_getting_started.md.C_v7nD1l.js} (99%) rename assets/{newbs_getting_started.md.C2FE2YNu.lean.js => newbs_getting_started.md.C_v7nD1l.lean.js} (98%) rename assets/{newbs_git_best_practices.md.C0QiIl7V.js => newbs_git_best_practices.md.CD2B0i-4.js} (94%) rename assets/{newbs_git_best_practices.md.C0QiIl7V.lean.js => newbs_git_best_practices.md.CD2B0i-4.lean.js} (84%) rename assets/{newbs_git_resolving_merge_conflicts.md.CXCvlz0T.js => newbs_git_resolving_merge_conflicts.md.Bv9iycWi.js} (98%) rename assets/{newbs_git_resolving_merge_conflicts.md.CXCvlz0T.lean.js => newbs_git_resolving_merge_conflicts.md.Bv9iycWi.lean.js} (85%) rename assets/{newbs_git_resynchronize_a_branch.md.zadFIEsX.js => newbs_git_resynchronize_a_branch.md.CTRR0z_u.js} (98%) rename assets/{newbs_git_resynchronize_a_branch.md.zadFIEsX.lean.js => newbs_git_resynchronize_a_branch.md.CTRR0z_u.lean.js} (85%) rename assets/{newbs_git_using_your_master_branch.md.DRDsA_pU.js => newbs_git_using_your_master_branch.md.DmucP9Dp.js} (98%) rename assets/{newbs_git_using_your_master_branch.md.DRDsA_pU.lean.js => newbs_git_using_your_master_branch.md.DmucP9Dp.lean.js} (85%) rename assets/{newbs_learn_more_resources.md.DRV8PTJE.js => newbs_learn_more_resources.md.DyOwWVHH.js} (96%) rename assets/{newbs_learn_more_resources.md.DRV8PTJE.lean.js => newbs_learn_more_resources.md.DyOwWVHH.lean.js} (84%) rename assets/{newbs_testing_debugging.md.W9JGDFfp.js => newbs_testing_debugging.md.CSBTkz5Y.js} (90%) rename assets/{newbs_testing_debugging.md.W9JGDFfp.lean.js => newbs_testing_debugging.md.CSBTkz5Y.lean.js} (84%) rename assets/{one_shot_keys.md.CoZULJTw.js => one_shot_keys.md.DVKbOw_R.js} (99%) rename assets/{one_shot_keys.md.CoZULJTw.lean.js => one_shot_keys.md.DVKbOw_R.lean.js} (83%) rename assets/{other_eclipse.md.DNM4I_uU.js => other_eclipse.md.D2LFIFIo.js} (98%) rename assets/{other_eclipse.md.DNM4I_uU.lean.js => other_eclipse.md.D2LFIFIo.lean.js} (84%) rename assets/{other_vscode.md.Cd14jo_M.js => other_vscode.md.CJpFKC3I.js} (99%) rename assets/{other_vscode.md.Cd14jo_M.lean.js => other_vscode.md.CJpFKC3I.lean.js} (84%) rename assets/{platformdev_blackpill_f4x1.md.BOTrYdi3.js => platformdev_blackpill_f4x1.md.CRzpfIX6.js} (98%) rename assets/{platformdev_blackpill_f4x1.md.BOTrYdi3.lean.js => platformdev_blackpill_f4x1.md.CRzpfIX6.lean.js} (85%) rename assets/{platformdev_chibios_earlyinit.md.CYdrnyB1.js => platformdev_chibios_earlyinit.md.C69mum-M.js} (98%) rename assets/{platformdev_chibios_earlyinit.md.CYdrnyB1.lean.js => platformdev_chibios_earlyinit.md.C69mum-M.lean.js} (84%) rename assets/{platformdev_proton_c.md.DdB4Ux-O.js => platformdev_proton_c.md.Q5yuqv-5.js} (97%) rename assets/{platformdev_proton_c.md.DdB4Ux-O.lean.js => platformdev_proton_c.md.Q5yuqv-5.lean.js} (83%) rename assets/{platformdev_rp2040.md.9TIkRKBb.js => platformdev_rp2040.md.CVsbhmnD.js} (99%) rename assets/{platformdev_rp2040.md.9TIkRKBb.lean.js => platformdev_rp2040.md.CVsbhmnD.lean.js} (85%) rename assets/{platformdev_selecting_arm_mcu.md.C2dtAlyC.js => platformdev_selecting_arm_mcu.md.BRIdTMNn.js} (98%) rename assets/{platformdev_selecting_arm_mcu.md.C2dtAlyC.lean.js => platformdev_selecting_arm_mcu.md.BRIdTMNn.lean.js} (84%) rename assets/{porting_your_keyboard_to_qmk.md.Dz_V3KoY.js => porting_your_keyboard_to_qmk.md.CtsmkkQs.js} (99%) rename assets/{porting_your_keyboard_to_qmk.md.Dz_V3KoY.lean.js => porting_your_keyboard_to_qmk.md.CtsmkkQs.lean.js} (84%) rename assets/{pr_checklist.md.Co-UPRQ0.js => pr_checklist.md.B3iXNAC8.js} (99%) rename assets/{pr_checklist.md.Co-UPRQ0.lean.js => pr_checklist.md.B3iXNAC8.lean.js} (82%) rename assets/{proprietary_libs.md.BfGoY2pl.js => proprietary_libs.md.CmRjTSHi.js} (98%) rename assets/{proprietary_libs.md.BfGoY2pl.lean.js => proprietary_libs.md.CmRjTSHi.lean.js} (83%) rename assets/{quantum_keycodes.md._Et7xRtm.js => quantum_keycodes.md.CMhHYpXW.js} (95%) rename assets/{quantum_keycodes.md._Et7xRtm.lean.js => quantum_keycodes.md.CMhHYpXW.lean.js} (83%) rename assets/{quantum_painter.md.wsWy8meV.js => quantum_painter.md.w-wr8zVt.js} (99%) rename assets/{quantum_painter.md.wsWy8meV.lean.js => quantum_painter.md.w-wr8zVt.lean.js} (99%) rename assets/{quantum_painter_lvgl.md.BICCW0fh.js => quantum_painter_lvgl.md.Cl4cN6D6.js} (98%) rename assets/{quantum_painter_lvgl.md.BICCW0fh.lean.js => quantum_painter_lvgl.md.Cl4cN6D6.lean.js} (84%) rename assets/{quantum_painter_qff.md.CXDvkMIQ.js => quantum_painter_qff.md.DRgeq25U.js} (99%) rename assets/{quantum_painter_qff.md.CXDvkMIQ.lean.js => quantum_painter_qff.md.DRgeq25U.lean.js} (83%) rename assets/{quantum_painter_qgf.md.dCZ307fz.js => quantum_painter_qgf.md.BAMuGJMk.js} (99%) rename assets/{quantum_painter_qgf.md.dCZ307fz.lean.js => quantum_painter_qgf.md.BAMuGJMk.lean.js} (83%) rename assets/{quantum_painter_rle.md.DdkKl5uO.js => quantum_painter_rle.md.CgkQ1vsZ.js} (95%) rename assets/{quantum_painter_rle.md.DdkKl5uO.lean.js => quantum_painter_rle.md.CgkQ1vsZ.lean.js} (83%) rename assets/{ref_functions.md.z3oNszvF.js => ref_functions.md.CYB23zzB.js} (99%) rename assets/{ref_functions.md.z3oNszvF.lean.js => ref_functions.md.CYB23zzB.lean.js} (83%) rename assets/{reference_configurator_support.md.CMO4zI2z.js => reference_configurator_support.md.DofEycBd.js} (99%) rename assets/{reference_configurator_support.md.CMO4zI2z.lean.js => reference_configurator_support.md.DofEycBd.lean.js} (86%) rename assets/{reference_glossary.md.CLUEcDDm.js => reference_glossary.md.BUGMb41c.js} (99%) rename assets/{reference_glossary.md.CLUEcDDm.lean.js => reference_glossary.md.BUGMb41c.lean.js} (83%) rename assets/{reference_info_json.md.ePkZR-z-.js => reference_info_json.md.CYTzLhJO.js} (99%) rename assets/{reference_info_json.md.ePkZR-z-.lean.js => reference_info_json.md.CYTzLhJO.lean.js} (99%) rename assets/{reference_keymap_extras.md.B2sSpD5d.js => reference_keymap_extras.md.BAQkmhul.js} (99%) rename assets/{reference_keymap_extras.md.B2sSpD5d.lean.js => reference_keymap_extras.md.BAQkmhul.lean.js} (84%) rename assets/{squeezing_avr.md.yj9YaYxW.js => squeezing_avr.md.nn7YA62K.js} (99%) rename assets/{squeezing_avr.md.yj9YaYxW.lean.js => squeezing_avr.md.nn7YA62K.lean.js} (83%) rename assets/{support.md.Dth_xzLo.js => support.md.DVvDsq4u.js} (94%) rename assets/{support.md.Dth_xzLo.lean.js => support.md.DVvDsq4u.lean.js} (82%) rename assets/{support_deprecation_policy.md.BOgUGGHv.js => support_deprecation_policy.md.5PMvF63c.js} (97%) rename assets/{support_deprecation_policy.md.BOgUGGHv.lean.js => support_deprecation_policy.md.5PMvF63c.lean.js} (84%) rename assets/{syllabus.md.CrGVLX_v.js => syllabus.md.B5r3P0XB.js} (97%) rename assets/{syllabus.md.CrGVLX_v.lean.js => syllabus.md.B5r3P0XB.lean.js} (82%) rename assets/{tap_hold.md.B6KKqQy2.js => tap_hold.md.DlgWmM-h.js} (99%) rename assets/{tap_hold.md.B6KKqQy2.lean.js => tap_hold.md.DlgWmM-h.lean.js} (82%) rename assets/{understanding_qmk.md.BJ2PgDpX.js => understanding_qmk.md.4IwRrIYL.js} (99%) rename assets/{understanding_qmk.md.BJ2PgDpX.lean.js => understanding_qmk.md.4IwRrIYL.lean.js} (83%) rename assets/{unit_testing.md.82MAVMY0.js => unit_testing.md.DA7uUPw_.js} (99%) rename assets/{unit_testing.md.82MAVMY0.lean.js => unit_testing.md.DA7uUPw_.lean.js} (82%) diff --git a/404.html b/404.html index 94dd80871a8..144d95b1347 100644 --- a/404.html +++ b/404.html @@ -8,14 +8,14 @@ - +
Skip to content

404

PAGE NOT FOUND

But if you don't change your direction, and if you keep looking, you may end up where you are heading.
- + \ No newline at end of file diff --git a/ChangeLog/20190830.html b/ChangeLog/20190830.html index 6f8bf993d42..a7b17808441 100644 --- a/ChangeLog/20190830.html +++ b/ChangeLog/20190830.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20200229.html b/ChangeLog/20200229.html index 6e2467b0df8..b798efbf8fd 100644 --- a/ChangeLog/20200229.html +++ b/ChangeLog/20200229.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20200530.html b/ChangeLog/20200530.html index fde4f46fef4..caeeec8f8f2 100644 --- a/ChangeLog/20200530.html +++ b/ChangeLog/20200530.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -36,7 +36,7 @@ return OLED_ROTATION_180; // flips the display 180 degrees if offhand return rotation; }

Split HHKB to ANSI and JP layouts and Add VIA support for each

#8582

Migrating existing HHKB keymaps

Keyboard Moves

Keyboards by Keyboardio, Spaceman, and hsgw move to vendor folders, while PCBs designed by blindassassin111 are renamed.

Old NameNew Name
2_milkspaceman/2_milk
at101_blackheartat101_bh
ergoinudm9records/ergoinu
model01keyboardio/model01
omnikey_blackheartomnikey_bh
pancakespaceman/pancake
plaiddm9records/plaid
tartandm9records/tartan
z150_blackheartz150_bh

If you own one of these PCBs, please use the new names to compile your firmware moving forward.

Keycode Migration PRs

#8954, #8957, #8958, #8959, #8968, #8977, and #8979

Authored by fauxpark, these pull requests remove references to deprecated TMK macros that have been superseded by native QMK keycodes.

Old fn_actions actionNew QMK keycode
ACTION_DEFAULT_LAYER_SET(layer)DF(layer)
ACTION_LAYER_MODS(layer, mod)LM(layer, mod)
ACTION_LAYER_ONESHOT(mod)OSL(mod)
ACTION_LAYER_TOGGLE(layer)TG(layer)
ACTION_MODS_ONESHOT(mod)OSM(mod)
ACTION_MODS_TAP_KEY(mod, kc)MT(mod, kc)
ACTION_MODS_KEY(mod, kc)
e.g. ACTION_MODS_KEY(MOD_LCTL, KC_0)
MOD(kc)
e.g. LCTL(KC_0)
- + \ No newline at end of file diff --git a/ChangeLog/20200829.html b/ChangeLog/20200829.html index e49b44cd949..a8ce6594deb 100644 --- a/ChangeLog/20200829.html +++ b/ChangeLog/20200829.html @@ -8,18 +8,18 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20201128.html b/ChangeLog/20201128.html index 92f25f3899b..e5c6aaa72be 100644 --- a/ChangeLog/20201128.html +++ b/ChangeLog/20201128.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20210227.html b/ChangeLog/20210227.html index f4977d55156..4c207fcf67e 100644 --- a/ChangeLog/20210227.html +++ b/ChangeLog/20210227.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -52,7 +52,7 @@ Size: 13 x 4 Processor: atmega32u4 Bootloader: caterina

Detailed Change List

Changes Requiring User Action

Fixes

Additions and Enhancements

Clean-ups and Optimizations

QMK Infrastructure and Internals

ChibiOS Update and Config Migration

- + \ No newline at end of file diff --git a/ChangeLog/20210529.html b/ChangeLog/20210529.html index 67a7bc2ef6e..dd3d0d92861 100644 --- a/ChangeLog/20210529.html +++ b/ChangeLog/20210529.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -57,7 +57,7 @@ // If you return true, this will allow the keyboard level code to run, as well. //Returning false will override the keyboard level code. Depending on how the keyboard level function is set up. }

Core Changes

Fixes

Additions and Enhancements

Clean-ups and Optimizations

QMK Infrastructure and Internals

- + \ No newline at end of file diff --git a/ChangeLog/20210828.html b/ChangeLog/20210828.html index baefb7d71e0..266a16e6f4f 100644 --- a/ChangeLog/20210828.html +++ b/ChangeLog/20210828.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -106,7 +106,7 @@ usb.pid: 0x2330 usb.vid: 0xC1ED width: 10

New configuration keys

We've added dozens of new keys to info.json so that you can configure more than ever without writing a single line of code. A quick overview of the new items you can configure:

Codebase restructure and cleanup

QMK was originally based on TMK, and has grown in size considerably since its first inception. To keep moving things forward, restructure of some of the core areas of the code is needed to support new concepts and new hardware, and progress is happening along those lines:


Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20211127.html b/ChangeLog/20211127.html index 59f2470b226..af2f43035cf 100644 --- a/ChangeLog/20211127.html +++ b/ChangeLog/20211127.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -56,7 +56,7 @@ // default keyboard drawing code return false; }

Bootmagic Full Removal (#15002)

As noted during previous breaking changes cycles, QMK decided to deprecate the full Bootmagic feature and leave Bootmagic Lite as the only remaining option.

This removal is now complete!

This pull request changes the behavior of BOOTMAGIC_ENABLE such that specifying lite or full results in an error, allowing only yes or no, with yes mirroring historical lite functionality.

All use of the lite keyword within the repository has been migrated to yes -- any new submissions using lite will now fail to build and should be updated accordingly.

Bootmagic Full Deprecation Schedule: Complete!

This is the historical timeline for the behavior of BOOTMAGIC_ENABLE:

Remove QWIIC_DRIVERS (#14174)

Due to minimal QWIIC adoption and other options for similar functionality, the QWIIC drivers were removed from QMK. Existing OLED usages have been migrated across to the normal QMK OLED driver instead.

Notable core changes

New MCU Support

QMK firmware picked up support for a handful of new MCU families, potentially making it a bit easier to source components.

QMK firmware is now no longer limited to AVR and ARM - it also picked up support for our first RISC-V chip, the GD32VF103.

EEPROM Changes

There were a few EEPROM-related changes that landed during this breaking changes cycle, most prominently the long-awaited ability for the Drop boards to gain persistent storage. Any users of the Drop CTRL or Drop ALT should update QMK Toolbox as well -- coupled with a QMK firmware update settings should now be saved.

Compilation Database

A clang-compatible compilation database generator has been added as an option in order to help development environments such as Visual Studio Code.

Running qmk generate-compilation-database -kb <yourkb> -km <yourkeymap> from within the QMK firmware directory will generate a compile_commands.json file -- using a compatible IDE will likely see this and correctly start detecting the correct locations for source files as well as type and function information that are relevant to your build.

Do note that switching keyboards will require re-generation of this file.

Codebase restructure and cleanup

QMK continues on its restructuring journey, in order to make it easier to integrate newer features and add support for new hardware. This quarter's batch of changes include:


Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20220226.html b/ChangeLog/20220226.html index b6e142691cc..46ff5db7674 100644 --- a/ChangeLog/20220226.html +++ b/ChangeLog/20220226.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20220528.html b/ChangeLog/20220528.html index 10310c6ad97..040a2a2cf3e 100644 --- a/ChangeLog/20220528.html +++ b/ChangeLog/20220528.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -20,7 +20,7 @@
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20220827.html b/ChangeLog/20220827.html index 8dc00cf2143..093dab442ef 100644 --- a/ChangeLog/20220827.html +++ b/ChangeLog/20220827.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -31,7 +31,7 @@ }, // ... layouts, etc. ... }

Deprecation Schedule

Notable core changes

Board converters (#17514, #17603, #17711, #17827, #17593, #17652, #17595)

Historically QMK had a CONVERT_TO_PROTON_C directive for rules.mk to allow people to replace an AVR-based Pro Micro with a QMK Proton C. Global parts shortages have prompted people to create their own pin-compatible boards -- QMK has made this conversion generic and now allows for drop-in replacements for a lot more boards. see the Converters Feature documentation for the full list of supported replacement boards -- in this breaking changes cycle we've gone from 1 to 7.

Add cli command to import keyboard|keymap|kbfirmware (#16668)

To help with importing keyboards and keymaps from other sources, @zvecr added #16668 which adds a new set of commands to the CLI to automatically import keyboards (qmk import-keyboard -h), keymaps (qmk import-keymap -h), and kbfirmware definitions (qmk import-kbfirmware -h) into QMK.

The now-EOL kbfirmware allowed people who aren't set up with QMK the ability to create keyboard firmwares without requiring a full installation of QMK. Unfortunately, it targets a 7-year-old version of QMK -- adding frustration for users who want the newest features, as well as for QMK maintainers who have to spend time explaining why QMK can't just accept a drive-by code drop from kbfirmware. With any luck, this new command helps both camps!

Generic wear-leveling for EEPROM emulation (#16996, #17376, #18102)

QMK has had the ability to write to internal MCU flash in order to emulate EEPROM for some time now, but it was only limited to a small number of MCUs. The base HAL used by QMK for a large number of ARM devices provides a "proper" embedded MCU flash driver, so @tzarc decoupled the wear-leveling algorithm from the old flash writing code, improved it, wrote some tests, and enabled its use for a much larger number of other devices... including RP2040's XIP flash, and external SPI NOR Flash.

See the EEPROM Driver documentation for more information.

Pointing Device Improvements (#16371, #17111, #17176, #17482, #17776, #17613)

Ever since Pointing Device Driver support and Split Pointing Device support were added by @drashna and @daskygit, there has been increased interest in the development of the pointing device subsystem and its associated code.

Both the PMW33xx and the Cirque Pinnacle implementations have seen a lot of improvement to their code, as has the mouse code in general. Features like circular/edge scrolling for the Cirque, and Kinetic movement for any sensor with "lift detection" (#17482). Additionally, for those that make fast motions with their pointing devices, support for much larger mouse movement reports has been added (#16371).

Other related changes:


Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20221126.html b/ChangeLog/20221126.html index 7774954a272..a5b825ac5f7 100644 --- a/ChangeLog/20221126.html +++ b/ChangeLog/20221126.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -41,7 +41,7 @@ // keyboard LED code return true; }

The equivalent transformations should be done for LED Matrix boards.

Unicode mode refactoring

Unicode modes were renamed in order to prevent collision with equivalent keycodes. The available values for UNICODE_SELECTED_MODES changed -- see Feature: Unicode for the new list of values and how to configure them.

Notable core changes

This breaking changes cycle, a lot of the core changes are related to cleanup and refactoring -- commonly called "tech debt".

Keycodes refactoring

We aren't going to list each and every change -- they're far too numerous -- instead, we'll just list the related PRs in order to convey just how wide-reaching these changes were:

Board Converters

There was additional work in the space of board converters -- historically QMK allowed for "converting" a Pro Micro build to a QMK Proton-C build. The last few versions of QMK have added support for replacement boards much like the Proton-C, and this quarter was no exception:

See Feature: Converters for the full list of board conversions available.

Pointing and Digitizer device updates

Both pointing devices and digitizer got a host of updates this cycle. Inertia, automatic mouse layers, fixes for preventing sleep... you even get more buttons with digitizers!

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20230226.html b/ChangeLog/20230226.html index 91371fded62..61f48f15210 100644 --- a/ChangeLog/20230226.html +++ b/ChangeLog/20230226.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -68,7 +68,7 @@ tap_code16(LGUI(KC_S)); } }

For more information please see the Leader Key documentation.

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
ramonimbao/aelithrmi_kb/aelith
ramonimbao/herringbone/prormi_kb/herringbone/pro
ramonimbao/herringbone/v1rmi_kb/herringbone/v1
ramonimbao/mona/v1_1rmi_kb/mona/v1_1
ramonimbao/mona/v1rmi_kb/mona/v1
ramonimbao/mona/v32armi_kb/mona/v32a
ramonimbao/squishy65rmi_kb/squishy65
ramonimbao/squishytklrmi_kb/squishytkl
ramonimbao/tkl_ffrmi_kb/tkl_ff
ramonimbao/tkl_ff/v1rmi_kb/tkl_ff/v1
ramonimbao/tkl_ff/v2rmi_kb/tkl_ff/v2
ramonimbao/wete/v1rmi_kb/wete/v1
ramonimbao/wete/v2rmi_kb/wete/v2
the_unistenothe_uni
xelus/xs60xelus/xs60/soldered

Notable core changes

As per last breaking changes cycle, there has been a lot of emphasis on behind-the-scenes changes, mainly around consolidation of core subsystems and constant values, as well as addressing tech debt. Whilst not outwardly visible, this cleanup and refactoring should start paying dividends as it simplifies future development and maintenance.

A handful of examples:

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20230528.html b/ChangeLog/20230528.html index 214afc7fc80..d121a24afde 100644 --- a/ChangeLog/20230528.html +++ b/ChangeLog/20230528.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20230827.html b/ChangeLog/20230827.html index da42ad02869..665fdcbb9b1 100644 --- a/ChangeLog/20230827.html +++ b/ChangeLog/20230827.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20231126.html b/ChangeLog/20231126.html index 49867cce75a..062ddb30fbb 100644 --- a/ChangeLog/20231126.html +++ b/ChangeLog/20231126.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -24,7 +24,7 @@ case BASIC_KEYCODE_RANGE: case MODIFIER_KEYCODE_RANGE: /* do stuff with basic and modifier keycodes */

Quantum Painter OLED support (#19997)

Quantum Painter has picked up support for SH1106 displays -- commonly seen as 128x64 OLEDs. Support for both I2C and SPI displays is available.

If you're already using OLED through OLED_DRIVER_ENABLE = yes or equivalent in info.json and wish to use Quantum Painter instead, you'll need to disable the old OLED system, instead enabling Quantum Painter as well as enabling the appropriate SH1106 driver. See the Quantum Painter driver documentation for more details. The old OLED driver is still available, and keymaps do not require migrating to Quantum Painter if you don't want to do so.

RGB/LED lighting driver naming and cleanup (#21890, #21891, #21892, #21903, #21904, #21905, #21918, #21929, #21938, #22004, #22008, #22009, #22071, #22090, #22099, #22126, #22133, #22163, #22200, #22308, #22309, #22311, #22325, #22365, #22379, #22380, #22381, #22383, #22436)

As you can probably tell by the list of PRs just above, there has been a lot of cleanup and consolidation this cycle when it comes to RGB/LED lighting drivers. The number of changes is too large to list here, but the general theme has been focusing on consistency of naming, both of drivers themselves and their respective implementation and configuration. Most changes only affect keyboard designers -- if you find that your in-development keyboard is no longer building due to naming of defines changing, your best bet is to refer to another board already in the repository which has had the changes applied.

Peripheral subsystem enabling (#22253, #22448, #22106)

When enabling peripherals such as I2C, SPI, or Analog/ADC, some required manual inclusion of source files in order to provide driver support, and in some cases, when multiple drivers were using the same underlying peripheral, files were being added to the build multiple times.

Most systems requiring other peripherals now mark their respective dependencies as "required", allowing the build system to check whether peripherals are necessary before including them in the build rather than having each location enable them manually.

For a concrete example, users or keyboard designers who previously added SRC += analog.c in order to allow for analog readings via an ADC now should specify ANALOG_DRIVER_REQUIRED = yes instead. The full list of added options is as follows:

New optionOld Equivalent
ANALOG_DRIVER_REQUIRED = yesSRC += analog.c
APA102_DRIVER_REQUIRED = yesSRC += apa102.c
I2C_DRIVER_REQUIRED = yesSRC += i2c_master.c or QUANTUM_LIB_SRC += i2c_master.c
SPI_DRIVER_REQUIRED = yesSRC += spi_master.c or QUANTUM_LIB_SRC += spi_master.c
UART_DRIVER_REQUIRED = yesSRC += uart.c
WS2812_DRIVER_REQUIRED = yesSRC += ws2812.c

NKRO on V-USB boards (#22398)

NKRO is now available for ATmega32A and 328P-based keyboards (including PS2AVRGB/Bootmapper boards), thanks to some internal refactoring and cleanup. To enable it, the process is the same as always - add NKRO_ENABLE = yes to your rules.mk, then assign and press the NK_TOGG keycode to switch modes.

Full changelist

Core:

CLI:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20240225.html b/ChangeLog/20240225.html index fd1612f09d6..c5b5cac2b05 100644 --- a/ChangeLog/20240225.html +++ b/ChangeLog/20240225.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -23,7 +23,7 @@ DIP_SWITCH_OFF_ON(EC_NORM, EC_SWAP) }; #endif

Quantum Painter updates (#18521, #20645, #22358)

Quantum Painter picked up support for the following:

Quantum Painter now supports the majority of common OLED panels supported by the basic OLED driver, so if you're using an ARM-based board you may find Quantum Painter a much more feature-rich API in comparison.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20240526.html b/ChangeLog/20240526.html index 44bc66ad7f0..ed6469c7855 100644 --- a/ChangeLog/20240526.html +++ b/ChangeLog/20240526.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20240825.html b/ChangeLog/20240825.html index d97c390d92e..3c6e4d4e963 100644 --- a/ChangeLog/20240825.html +++ b/ChangeLog/20240825.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -25,7 +25,7 @@ &my_override_1, &my_override_2, };

ADNS9800 and PMW33xx firmware upload now opt-in (#24001)

Due to ambiguity with licensing compatibility, QMK has made the firmware ROM uploads for the ADNS9800 and PMW33xx lines of pointing device sensors temporarily opt-in with the view to removing them. Historically they were included by default, but as of this PR this is now no longer the case.

Please get in touch with the QMK team if your sensor no longer functions without the firmware upload -- so far we've tested each device type and they still seem to function without a new firmware, but this has not been a 100% exhaustive validation.

To re-enable firmware upload for your own builds, add the following to your keymap's config.h:

SensorDefine
ADNS9800#define ADNS9800_UPLOAD_SROM
PMW33xx#define PMW33XX_UPLOAD_SROM

Note

If no issues arise during this current breaking changes cycle, these sensor firmware ROMs will be removed from QMK entirely.

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

Migration of VIA keymaps to VIA team control

Last breaking changes cycle, the QMK team informed that via keymaps are moving to the control of the VIA team. As of this merge, any via-enabled keymaps should now be PR'ed to the VIA QMK Userspace repository.

Any existing or newly-opened PRs against qmk_firmware will now be asked to remove any via-enabled keymaps from their submissions.

ADNS9800 and PMW33xx sensor firmware ROM removal

As mentioned above, there's license compatibility issues between QMK and the firmware blobs historically uploaded for the ADNS9800 and PMW33xx sensors. This notice is to inform users that these firmware blobs will almost certainly be removed from QMK in the next breaking changes merge.

As previously noted this does not seem to have any detrimental effect to any of those devices, as they seem to include firmware on-chip without requiring one to be uploaded. Please get in touch with the QMK team on Discord if your sensor is no longer functional.

Full changelist

Core:

CLI:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20241124.html b/ChangeLog/20241124.html index 23b5e513383..da261586aca 100644 --- a/ChangeLog/20241124.html +++ b/ChangeLog/20241124.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20250223.html b/ChangeLog/20250223.html index 5f79507d378..6fc87b497d1 100644 --- a/ChangeLog/20250223.html +++ b/ChangeLog/20250223.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20250525.html b/ChangeLog/20250525.html index 66426d89528..7e62bf4fea3 100644 --- a/ChangeLog/20250525.html +++ b/ChangeLog/20250525.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -29,7 +29,7 @@ MY_ENCODER_LEFT = QK_USER, MY_ENCODER_RIGHT, };

If your board has multiple encoders, each encoder will need its own pair of keycodes defined as per above.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20250831.html b/ChangeLog/20250831.html index 0a435e9c5d1..2abac636c0c 100644 --- a/ChangeLog/20250831.html +++ b/ChangeLog/20250831.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -20,7 +20,7 @@
Skip to content
- + \ No newline at end of file diff --git a/ChangeLog/20251130.html b/ChangeLog/20251130.html index aa8b6ded26c..cf97e47d2e3 100644 --- a/ChangeLog/20251130.html +++ b/ChangeLog/20251130.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -44,7 +44,7 @@ } return true; }

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

Remove override of QK_{LED,RGB}_MATRIX_TOGGLE keycode #25672

#24649 implemented genetic behavior, including keycodes, to cycle flags.

Any overriding of existing keycodes that duplicate this behavior will be removed to ensure consistency with core functionality.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/ChangeLog/20260222.html b/ChangeLog/20260222.html index 3d202d29f9e..08b67dd6c22 100644 --- a/ChangeLog/20260222.html +++ b/ChangeLog/20260222.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -21,7 +21,7 @@ - return isLeftHand ? OLED_ROTATION_180 : OLED_ROTATION_0; + return is_keyboard_left() ? OLED_ROTATION_180 : OLED_ROTATION_0; }

The deprecated variable isLeftHand will be removed in a future breaking changes cycle.

Full changelist

Core:

CLI:

Keyboards:

Keyboard fixes:

Others:

Bugs:

- + \ No newline at end of file diff --git a/__capabilities.html b/__capabilities.html index 7bd544912b0..c8907693c58 100644 --- a/__capabilities.html +++ b/__capabilities.html @@ -8,12 +8,12 @@ - + - - + + - + @@ -41,7 +41,7 @@ The letters lined up #define RGBLIGHT_LED_COUNT 12 #define RGBLIGHT_HUE_STEP 8 #define RGBLIGHT_SAT_STEP 8

Indented code as part of a list:

Sub/Superscript

This is subscripted, apparently.

This is superscripted, apparently.

I2C

T0H, T0L

Tabs

Tabs are based on section headers, with ** enclosing the tab title.

** Tab one **

Content one

** Nested one **

Nested content one

** Nested two **

Nested content two

** Tab two **

Content two

** Tab three **

Content three

a content 2

Details sections

Expandable:

Some summary text that shows up before expanding

!> Embedded notification!

This is some inner content.

Embed

example embed

Lorem ipsum dolor sit amet.

- + \ No newline at end of file diff --git a/__capabilities_inc.html b/__capabilities_inc.html index d808031ed87..be38a689901 100644 --- a/__capabilities_inc.html +++ b/__capabilities_inc.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/api_development_environment.html b/api_development_environment.html index cbf49ff2a38..69eb05e5062 100644 --- a/api_development_environment.html +++ b/api_development_environment.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/api_development_overview.html b/api_development_overview.html index fffc3ea7029..b8de0258e57 100644 --- a/api_development_overview.html +++ b/api_development_overview.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/api_docs.html b/api_docs.html index aa416adfe89..207dbd51a46 100644 --- a/api_docs.html +++ b/api_docs.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -53,7 +53,7 @@ "0x2000/0x1FFF": { "define": "QK_MOD_TAP" <snip> - + \ No newline at end of file diff --git a/api_overview.html b/api_overview.html index e36eb7e71b1..32979e99d4c 100644 --- a/api_overview.html +++ b/api_overview.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/arm_debugging.html b/arm_debugging.html index 19c80c6b38b..e11f987b855 100644 --- a/arm_debugging.html +++ b/arm_debugging.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/assets/ChangeLog_20190830.md.Dg7CR0a9.js b/assets/ChangeLog_20190830.md.D6IuReG4.js similarity index 98% rename from assets/ChangeLog_20190830.md.Dg7CR0a9.js rename to assets/ChangeLog_20190830.md.D6IuReG4.js index 3efd1be82d6..6494ed8b2f9 100644 --- a/assets/ChangeLog_20190830.md.Dg7CR0a9.js +++ b/assets/ChangeLog_20190830.md.D6IuReG4.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2019 Aug 30","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20190830.md","filePath":"ChangeLog/20190830.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20190830.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Change - 2019 Aug 30

Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps.

This document marks the inaugural Breaking Change merge. A list of changes follows.

Core code formatting with clang-format

LUFA USB descriptor cleanup

Migrating ACTION_LAYER_MOMENTARY() entries in fn_actions to MO() keycodes

Update Atreus to current code conventions

Backport changes to keymap language files from ZSA fork

Update repo to use LUFA as a git submodule

Migrating ACTION_BACKLIGHT_*() entries in fn_actions to BL_ keycodes

Remove KC_DELT alias in favor of KC_DEL

', 19); diff --git a/assets/ChangeLog_20190830.md.Dg7CR0a9.lean.js b/assets/ChangeLog_20190830.md.D6IuReG4.lean.js similarity index 83% rename from assets/ChangeLog_20190830.md.Dg7CR0a9.lean.js rename to assets/ChangeLog_20190830.md.D6IuReG4.lean.js index 7f9a293a4a0..e3084dffb93 100644 --- a/assets/ChangeLog_20190830.md.Dg7CR0a9.lean.js +++ b/assets/ChangeLog_20190830.md.D6IuReG4.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2019 Aug 30","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20190830.md","filePath":"ChangeLog/20190830.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20190830.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 19); diff --git a/assets/ChangeLog_20200229.md.C-iTsYY3.js b/assets/ChangeLog_20200229.md.Ds66BLAx.js similarity index 98% rename from assets/ChangeLog_20200229.md.C-iTsYY3.js rename to assets/ChangeLog_20200229.md.Ds66BLAx.js index 11d2d4b2648..76d206cd121 100644 --- a/assets/ChangeLog_20200229.md.C-iTsYY3.js +++ b/assets/ChangeLog_20200229.md.Ds66BLAx.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2020 Feb 29 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20200229.md","filePath":"ChangeLog/20200229.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20200229.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Change - 2020 Feb 29 Changelog

Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps.

Update ChibiOS/ChibiOS-Contrib/uGFX submodules

Fix ChibiOS timer overflow for 16-bit SysTick devices

Update LUFA submodule

Encoder flip

Adding support for BACKLIGHT_ON_STATE for hardware PWM backlight

Migrating ACTION_LAYER_TAP_KEY() entries in fn_actions to LT() keycodes

Moving backlight keycode handling to process_keycode/

Refactor Planck keymaps to use Layout Macros

GON NerD codebase refactor

', 20); diff --git a/assets/ChangeLog_20200229.md.C-iTsYY3.lean.js b/assets/ChangeLog_20200229.md.Ds66BLAx.lean.js similarity index 83% rename from assets/ChangeLog_20200229.md.C-iTsYY3.lean.js rename to assets/ChangeLog_20200229.md.Ds66BLAx.lean.js index 57933f4276f..2953d4903d6 100644 --- a/assets/ChangeLog_20200229.md.C-iTsYY3.lean.js +++ b/assets/ChangeLog_20200229.md.Ds66BLAx.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2020 Feb 29 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20200229.md","filePath":"ChangeLog/20200229.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20200229.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 20); diff --git a/assets/ChangeLog_20200530.md.ClV0RxdS.js b/assets/ChangeLog_20200530.md.BCKw16qF.js similarity index 99% rename from assets/ChangeLog_20200530.md.ClV0RxdS.js rename to assets/ChangeLog_20200530.md.BCKw16qF.js index a95e22798c5..f298f864a14 100644 --- a/assets/ChangeLog_20200530.md.ClV0RxdS.js +++ b/assets/ChangeLog_20200530.md.BCKw16qF.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2020 May 30 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20200530.md","filePath":"ChangeLog/20200530.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20200530.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Change - 2020 May 30 Changelog

Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps.

The list of changes follows.

Core Changes

Converting V-USB usbdrv to a submodule

#8321 and qmk_compiler#62.

These PRs move the V-USB driver code out of the qmk_firmware repository and into a submodule pointed at https://github.com/obdev/v-usb. This will make it easier to update the codebase if needed, while applying any potential QMK-specific modifications by forking it to the QMK GitHub organization.

Unify Tap Hold functions and documentation

#8348

Updates all of the per key tap-hold functions to pass the keyrecord_t structure, and include documentation changes.

Any remaining versions or code outside of the main repo will need to be converted:

Old functionNew Function
uint16_t get_tapping_term(uint16_t keycode)uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record)
bool get_ignore_mod_tap_interrupt(uint16_t keycode)bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record)

Python Required In The Build Process

#9000

This is the last release of QMK that will work without having Python 3.6 (or later) installed. If your environment is not fully setup you will get a warning instructing you to set it up.

After the next breaking change you will not be able to build if bin/qmk hello does not work.

Upgrade from tinyprintf to mpaland/printf

#8269

Fixed RGB_DISABLE_AFTER_TIMEOUT to be seconds based & small internals cleanup

#6480

The RGB_DISABLE_AFTER_TIMEOUT definition is now deprecated, and has been superseded by RGB_DISABLE_TIMEOUT. To use the new definition, rename RGB_DISABLE_AFTER_TIMEOUT to RGB_DISABLE_TIMEOUT in your config.h file, and multiply the value set by 1200.

diff
-#define RGB_DISABLE_AFTER_TIMEOUT 100\n+#define RGB_DISABLE_TIMEOUT 120000

Switch to qmk forks for everything

#9019

Fork all QMK submodules to protect against upstream repositories disappearing.

code cleanup regarding deprecated macro PLAY_NOTE_ARRAY by replacing it with PLAY_SONG

#8484

Removes the deprecated PLAY_NOTE_ARRAY macro. References to it are replaced with PLAY_SONG, which references the same function.

fixing wrong configuration of AUDIO feature

#8903 and #8974

audio_avr.c does not default to any pin; there has to be a #define XX_AUDIO in config.h at some level for Audio to actually work. Otherwise, the Audio code ends up cluttering the firmware, possibly breaking builds because the maximum allowed firmware size is exceeded.

These changes fix this by disabling Audio on keyboards that have the feature misconfigured, and therefore non-functional.

Also, add a compile-time error to alert the user to a missing pin-configuration (on AVR boards) when AUDIO_ENABLE = yes is set.

Keyboard Refactors

Migrating Lily58 to use split_common

#6260

Modifies the default firmware for Lily58 to use the split_common library, instead of including and depending on its own set of libraries for the following functionality:

This allows current lily58 firmware to advance with updates to the split_common library, which is shared with many other split keyboards.

To migrate existing Lily58 firmware:

Changes to config.h:

Changes to keymap.c:

c
#ifdef SSD1306OLED\n  iota_gfx_init(!has_usb());   // turns on the display\n#endif
c
oled_rotation_t oled_init_user(oled_rotation_t rotation) {\n  if (!is_keyboard_master())\n    return OLED_ROTATION_180;  // flips the display 180 degrees if offhand\n  return rotation;\n}

Refactor zinc to use split_common

#7114 and #9171

Refactor of TKC1800 to use common OLED code

#8472

Modifies the default firmware for TKC1800 to use the in-built I2C and OLED drivers, instead of including and depending on its own set of libraries for the following functionality:

This allows current TKC1800 firmware to advance with updates to those drivers, which are shared with other keyboards.

To migrate existing TKC1800 firmware:

Changes to config.h:

Changes to tkc1800.c:

c
void keyboard_pre_init_kb(void) {\n  setPinInputHigh(D0);\n  setPinInputHigh(D1);\n\n  keyboard_pre_init_user();\n}

Changes to keymap.c:

c
#ifdef SSD1306OLED\n  iota_gfx_init(!has_usb());   // turns on the display\n#endif
c
oled_rotation_t oled_init_user(oled_rotation_t rotation) {\n  if (!is_keyboard_master())\n    return OLED_ROTATION_180;  // flips the display 180 degrees if offhand\n  return rotation;\n}

Split HHKB to ANSI and JP layouts and Add VIA support for each

#8582

Migrating existing HHKB keymaps

Keyboard Moves

Keyboards by Keyboardio, Spaceman, and hsgw move to vendor folders, while PCBs designed by blindassassin111 are renamed.

Old NameNew Name
2_milkspaceman/2_milk
at101_blackheartat101_bh
ergoinudm9records/ergoinu
model01keyboardio/model01
omnikey_blackheartomnikey_bh
pancakespaceman/pancake
plaiddm9records/plaid
tartandm9records/tartan
z150_blackheartz150_bh

If you own one of these PCBs, please use the new names to compile your firmware moving forward.

Keycode Migration PRs

#8954, #8957, #8958, #8959, #8968, #8977, and #8979

Authored by fauxpark, these pull requests remove references to deprecated TMK macros that have been superseded by native QMK keycodes.

Old fn_actions actionNew QMK keycode
ACTION_DEFAULT_LAYER_SET(layer)DF(layer)
ACTION_LAYER_MODS(layer, mod)LM(layer, mod)
ACTION_LAYER_ONESHOT(mod)OSL(mod)
ACTION_LAYER_TOGGLE(layer)TG(layer)
ACTION_MODS_ONESHOT(mod)OSM(mod)
ACTION_MODS_TAP_KEY(mod, kc)MT(mod, kc)
ACTION_MODS_KEY(mod, kc)
e.g. ACTION_MODS_KEY(MOD_LCTL, KC_0)
MOD(kc)
e.g. LCTL(KC_0)
', 84); diff --git a/assets/ChangeLog_20200530.md.ClV0RxdS.lean.js b/assets/ChangeLog_20200530.md.BCKw16qF.lean.js similarity index 83% rename from assets/ChangeLog_20200530.md.ClV0RxdS.lean.js rename to assets/ChangeLog_20200530.md.BCKw16qF.lean.js index 78c14132a68..4744fba6293 100644 --- a/assets/ChangeLog_20200530.md.ClV0RxdS.lean.js +++ b/assets/ChangeLog_20200530.md.BCKw16qF.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2020 May 30 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20200530.md","filePath":"ChangeLog/20200530.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20200530.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 84); diff --git a/assets/ChangeLog_20200829.md.CRR9PTYQ.js b/assets/ChangeLog_20200829.md.KKJKOXjO.js similarity index 99% rename from assets/ChangeLog_20200829.md.CRR9PTYQ.js rename to assets/ChangeLog_20200829.md.KKJKOXjO.js index b037a73384f..a97bfda88a7 100644 --- a/assets/ChangeLog_20200829.md.CRR9PTYQ.js +++ b/assets/ChangeLog_20200829.md.KKJKOXjO.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2020 Aug 29 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20200829.md","filePath":"ChangeLog/20200829.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20200829.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Change - 2020 Aug 29 Changelog

Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps.

Changes Requiring User Action

Relocated Keyboards

The Key Company project consolidation (#9547)

relocating boards by flehrad to flehrad/ folder (#9635)

Keyboards released by The Key Company and keyboards designed by flehrad have moved to vendor folders. If you own any of the keyboards listed below, please use the new names to compile your firmware moving forward.

Old NameNew Name
candybar/leftytkc/candybar/lefty
candybar/rightytkc/candybar/righty
m0llytkc/m0lly
tkc1800tkc/tkc1800
bigswitchflehrad/bigswitch
handwired/downbubbleflehrad/downbubble
handwired/numbreroflehrad/numbrero
snagpadflehrad/snagpad
handwired/tradestationflehrad/tradestation

Updated Keyboard Codebases

Keebio RGB wiring update (#7754)

This pull request changes the configuration for Keebio split boards to use the same RGB strip wiring for each half, which provides the following improvements:

If you have customized the value of RGBLED_SPLIT for your keymap, you will need to undefine it using #undef RGBLED_SPLIT before defining it to your customized value.

This change affects:

Changes to Core Functionality

Allows the Combo feature to support more than 256 combos.

Any fork that uses process_combo_event needs to update the function's first argument to uint16_t:

Core Changes

Fixes

Additions and Enhancements

Clean-ups and Optimizations

QMK Infrastructure and Internals

', 29); diff --git a/assets/ChangeLog_20200829.md.CRR9PTYQ.lean.js b/assets/ChangeLog_20200829.md.KKJKOXjO.lean.js similarity index 83% rename from assets/ChangeLog_20200829.md.CRR9PTYQ.lean.js rename to assets/ChangeLog_20200829.md.KKJKOXjO.lean.js index 802c6c454c4..f5ca7e8e205 100644 --- a/assets/ChangeLog_20200829.md.CRR9PTYQ.lean.js +++ b/assets/ChangeLog_20200829.md.KKJKOXjO.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2020 Aug 29 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20200829.md","filePath":"ChangeLog/20200829.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20200829.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 29); diff --git a/assets/ChangeLog_20201128.md.Bul9YL0S.js b/assets/ChangeLog_20201128.md.CI0nQrFY.js similarity index 99% rename from assets/ChangeLog_20201128.md.Bul9YL0S.js rename to assets/ChangeLog_20201128.md.CI0nQrFY.js index 91ed0df6bf1..679e0871392 100644 --- a/assets/ChangeLog_20201128.md.Bul9YL0S.js +++ b/assets/ChangeLog_20201128.md.CI0nQrFY.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2020 Nov 28 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20201128.md","filePath":"ChangeLog/20201128.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20201128.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Change - 2020 Nov 28 Changelog

Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps.

Changes Requiring User Action

Relocated Keyboards

Reduce Helix keyboard build variation (#8669)

The build commands for the Helix keyboard are:

make <helix_build_name>:<keymap_name>

For <helix_build_name>, specify the one in the rightmost column of the table below, such as helix, helix/pico.

before Oct 17 2019Oct 17 2019Mar 10 2020Nov 28 2020
helix/rev1helix/rev1helix/rev1helix/rev1
helix/picohelix/picohelix/picohelix/pico
helix/pico/backhelix/pico/backhelix/pico/back
helix/pico/underhelix/pico/underhelix/pico/under
helix/pico/sc--
helix/pico/sc/backhelix/pico/sc
helix/pico/sc/under--
helix/rev2 (=helix)helix/rev2 (=helix)helix/rev2 (=helix)--
helix/rev2/backhelix/rev2/back--
helix/rev2/back/oledhelix/rev2/back/oled( --> helix/rev2/back)
helix/rev2/oledhelix/rev2/oledhelix/rev2 (=helix)
helix/rev2/oled/backhelix/rev2/oled/backhelix/rev2/back
helix/rev2/oled/underhelix/rev2/oled/underhelix/rev2/under
helix/rev2/sc--
helix/rev2/sc/back--
helix/rev2/sc/oled--
helix/rev2/sc/oledbackhelix/rev2/sc
helix/rev2/sc/oledunder--
helix/rev2/sc/under--
helix/rev2/underhelix/rev2/under--
helix/rev2/under/oledhelix/rev2/under/oled( --> helix/rev2/under)

Update the Speedo firmware for v3.0 (#10657)

The Speedo keyboard has moved to cozykeys/speedo/v2 as the designer prepares to release the Speedo v3.0.

Previous NameNew Name
speedocozykeys/speedo/v2
--cozykeys/speedo/v3 new

Maartenwut/Maarten name change to evyd13/Evy (#10274)

Maartenwut has rebranded as @evyd13, and all released Maartenwut boards have moved.

Previous NameNew Name
maartenwut/atom47/rev2evyd13/atom47/rev2
maartenwut/atom47/rev3evyd13/atom47/rev3
maartenwut/eon40evyd13/eon40
maartenwut/eon65evyd13/eon65
maartenwut/eon75evyd13/eon75
maartenwut/eon87evyd13/eon87
maartenwut/eon95evyd13/eon95
maartenwut/gh80_1800evyd13/gh80_1800
maartenwut/gh80_3700evyd13/gh80_3700
maartenwut/minitomicevyd13/minitomic
maartenwut/mx5160evyd13/mx5160
maartenwut/nt660evyd13/nt660
maartenwut/omrontklevyd13/omrontkl
maartenwut/plain60evyd13/plain60
maartenwut/pockettypeevyd13/pockettype
maartenwut/quackfireevyd13/quackfire
maartenwut/solheim68evyd13/solheim68
maartenwut/ta65evyd13/ta65
maartenwut/wasdatevyd13/wasdat
maartenwut/wasdat_codeevyd13/wasdat_code
maartenwut/wonderlandevyd13/wonderland

Xelus Valor and Dawn60 Refactors (#10512, #10584)

The Valor and Dawn60 keyboards by Xelus22 both now require their revisions to be specified when compiling.

Previous NameNew Name
xelus/dawn60xelus/dawn60/rev1
xelus/valorxelus/valor/rev1

Updated Keyboard Codebases

AEboards EXT65 Refactor (#10820)

The EXT65 codebase has been reworked so keymaps can be used with either revision.

Core Changes

Fixes

Additions and Enhancements

Clean-ups and Optimizations

QMK Infrastructure and Internals

', 30); diff --git a/assets/ChangeLog_20201128.md.Bul9YL0S.lean.js b/assets/ChangeLog_20201128.md.CI0nQrFY.lean.js similarity index 83% rename from assets/ChangeLog_20201128.md.Bul9YL0S.lean.js rename to assets/ChangeLog_20201128.md.CI0nQrFY.lean.js index a917a518b0c..91aebc339b3 100644 --- a/assets/ChangeLog_20201128.md.Bul9YL0S.lean.js +++ b/assets/ChangeLog_20201128.md.CI0nQrFY.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Change - 2020 Nov 28 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20201128.md","filePath":"ChangeLog/20201128.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20201128.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 30); diff --git a/assets/ChangeLog_20210227.md.Dw8vIK_1.js b/assets/ChangeLog_20210227.md.BjzBAs5x.js similarity index 99% rename from assets/ChangeLog_20210227.md.Dw8vIK_1.js rename to assets/ChangeLog_20210227.md.BjzBAs5x.js index d860c95a145..2460fdca46a 100644 --- a/assets/ChangeLog_20210227.md.Dw8vIK_1.js +++ b/assets/ChangeLog_20210227.md.BjzBAs5x.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2021 February 27 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20210227.md","filePath":"ChangeLog/20210227.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20210227.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2021 February 27 Changelog

Changes Requiring User Action

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
bear_65jacky_studio/bear_65
s7_elephant/rev1jacky_studio/s7_elephant/rev1
s7_elephant/rev2jacky_studio/s7_elephant/rev2
aplx6aplyard/aplx6/rev1
southpaw75fr4/southpaw75

The Aplyard Aplx6 rev2 and the FR4Boards Unix60 have also been added as part of these changes.

Additionally, the handwired/bluepill/bluepill70 keyboard has been removed.

Core Changes

ChibiOS Update and Config Migration

QMK's ChibiOS and ChibiOS-Contrib submodules have been updated to version 20.3.2.

Along with this, QMK now provides default configuration files for all commonly-supported ARM microcontrollers running on ChibiOS. As such, keyboards are now only required to define settings which differ from the defaults, thereby reducing the size of pull requests for keyboards running atop ChibiOS.

QMK Infrastructure and Internals

Python is now required to build QMK. The minimum Python version has been increased to 3.7.

The power of info.json has been massively expanded. Most keyboard parameters can now be expressed in info.json instead of config.h/rules.mk. This should make maintaining keyboards easier, and will enable tooling that can allow non-technical users to add and maintain QMK keyboards without writing any code.

To ease migration a new command has been provided, qmk generate-info-json -kb <keyboard>. You can use this command to generate a complete info.json file for a keyboard and then remove the duplicate information from config.h and rules.mk.

Detailed example showing how to generate a new info.json and identify duplicate keys:

user@hostname:~/qmk_firmware/keyboards/lets_split:0$ qmk generate-info-json > new-info.json\nuser@hostname:~/qmk_firmware/keyboards/lets_split:0$ mv new-info.json info.json\nuser@hostname:~/qmk_firmware/keyboards/lets_split:0$ qmk info\n⚠ lets_split/rev2: DEBOUNCE in config.h is overwriting debounce in info.json\n⚠ lets_split/rev2: DEVICE_VER in config.h is overwriting usb.device_ver in info.json\n⚠ lets_split/rev2: DIODE_DIRECTION in config.h is overwriting diode_direction in info.json\n⚠ lets_split/rev2: MANUFACTURER in config.h is overwriting manufacturer in info.json\n⚠ lets_split/rev2: RGB_DI_PIN in config.h is overwriting rgblight.pin in info.json\n⚠ lets_split/rev2: RGBLED_NUM in config.h is overwriting rgblight.led_count in info.json\n⚠ lets_split/rev2: PRODUCT_ID in config.h is overwriting usb.pid in info.json\n⚠ lets_split/rev2: VENDOR_ID in config.h is overwriting usb.vid in info.json\n⚠ lets_split/rev2: Matrix pins are specified in both info.json and config.h, the config.h values win.\n⚠ lets_split/rev2: LAYOUTS in rules.mk is overwriting community_layouts in info.json\n⚠ lets_split/rev2: Feature bootmagic is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature mousekey is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature extrakey is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature console is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature command is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature nkro is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature backlight is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature midi is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature audio is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature unicode is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature bluetooth is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature rgblight is specified in both info.json and rules.mk, the rules.mk value wins.\n⚠ lets_split/rev2: Feature sleep_led is specified in both info.json and rules.mk, the rules.mk value wins.\nKeyboard Name: Let's Split\nManufacturer: Wootpatoot\nWebsite:\nMaintainer: QMK Community\nKeyboard Folder: lets_split/rev2\nLayouts: LAYOUT, LAYOUT_ortho_4x12\nSize: 13 x 4\nProcessor: atmega32u4\nBootloader: caterina

Detailed Change List

Changes Requiring User Action

Fixes

Additions and Enhancements

Clean-ups and Optimizations

QMK Infrastructure and Internals

ChibiOS Update and Config Migration

', 29); diff --git a/assets/ChangeLog_20210227.md.Dw8vIK_1.lean.js b/assets/ChangeLog_20210227.md.BjzBAs5x.lean.js similarity index 83% rename from assets/ChangeLog_20210227.md.Dw8vIK_1.lean.js rename to assets/ChangeLog_20210227.md.BjzBAs5x.lean.js index 9f35727cae2..d74b285cd63 100644 --- a/assets/ChangeLog_20210227.md.Dw8vIK_1.lean.js +++ b/assets/ChangeLog_20210227.md.BjzBAs5x.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2021 February 27 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20210227.md","filePath":"ChangeLog/20210227.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20210227.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 29); diff --git a/assets/ChangeLog_20210529.md.Ci4BGoNS.js b/assets/ChangeLog_20210529.md.BWAcenKJ.js similarity index 99% rename from assets/ChangeLog_20210529.md.Ci4BGoNS.js rename to assets/ChangeLog_20210529.md.BWAcenKJ.js index 2eb0a2de530..6ef645dde9c 100644 --- a/assets/ChangeLog_20210529.md.Ci4BGoNS.js +++ b/assets/ChangeLog_20210529.md.BWAcenKJ.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2021 May 29 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20210529.md","filePath":"ChangeLog/20210529.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20210529.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2021 May 29 Changelog

Notable Changes

RGB Matrix support for split common (#11055)

Split boards can now use RGB Matrix without defining a custom matrix.

Teensy 3.6 support (#12258)

Added support for MK66F18 (Teensy 3.6) microcontroller.

New command: qmk console (#12828)

A new qmk console command has been added for attaching to your keyboard's console. It operates similarly to QMK Toolbox by allowing you to connect to one or more keyboard consoles to display debugging messages.

Improved command: qmk config

We've updated the qmk config command to show only the configuration items you have actually set. You can now display (almost) all of the available configuration options, along with their default values, using qmk config -a.

LED Matrix Improvements (#12509, #12580, #12588, #12633, #12651, #12685)

LED Matrix has been improved with effects, CIE1931 curves, and a task system.

Changes Requiring User Action

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
crkbd/rev1/commoncrkbd/rev1
function96function96/v1
nckiibs/flatbread60delikeeb/flatbread60
nckiibs/vaguettelitedelikeeb/vaguettelite
nckiibs/vanana/rev1delikeeb/vanana/rev1
nckiibs/vanana/rev2delikeeb/vanana/rev2
nckiibs/vaneeladelikeeb/vaneela
nckiibs/vaneelaexdelikeeb/vaneelaex
nckiibs/waaffle/rev3/elite_cdelikeeb/waaffle/rev3/elite_c
nckiibs/waaffle/rev3/pro_microdelikeeb/waaffle/rev3/pro_micro

The Function96 V2 has also been added as part of these changes.

The codebase for the Durgod K320 has been reworked in anticipation of additional Durgod keyboards gaining QMK support.

Additionally, the crkbd/rev1/legacy keyboard has been removed.

Bootmagic Deprecation and Refactor (#12172)

QMK has decided to deprecate the full Bootmagic feature and leave Bootmagic Lite as the only remaining option.

This pull request changes the behavior of BOOTMAGIC_ENABLE such that specifying BOOTMAGIC_ENABLE = yes enables Bootmagic Lite instead of full Bootmagic.

If attempts to use Bootmagic functionality result in unexpected behavior, check your rules.mk file and change the BOOTMAGIC_ENABLE setting to specify either lite or full.

Tentative Deprecation Schedule

This is the current planned roadmap for the behavior of BOOTMAGIC_ENABLE:

Removal of LAYOUT_kc (#12160)

We've removed support for LAYOUT_kc macros, if your keymap uses one you will need to update it use a regular LAYOUT macro.

Encoder callbacks are now boolean (#12805, #12985)

To allow for keyboards to override (or not) keymap level code the encoder_update_kb function has been changed from void to bool. You will need to update your function definition to reflect this and ensure that you return a true or false value.

Example code before change:

c
void encoder_update_kb(uint8_t index, bool clockwise) {\n    encoder_update_user(index, clockwise);\n}\n\nvoid encoder_update_user(uint8_t index, bool clockwise) {\n    if (index == 0) { /* First encoder */\n        if (clockwise) {\n            tap_code(KC_PGDN);\n        } else {\n            tap_code(KC_PGUP);\n        }\n    } else if (index == 1) { /* Second encoder */\n        if (clockwise) {\n            tap_code(KC_DOWN);\n        } else {\n            tap_code(KC_UP);\n        }\n    }\n}

Example code after change:

c
bool encoder_update_kb(uint8_t index, bool clockwise) {\n    return encoder_update_user(index, clockwise);\n}\n\nbool encoder_update_user(uint8_t index, bool clockwise) {\n    if (index == 0) { /* First encoder */\n        if (clockwise) {\n            tap_code(KC_PGDN);\n        } else {\n            tap_code(KC_PGUP);\n        }\n    } else if (index == 1) { /* Second encoder */\n        if (clockwise) {\n            tap_code(KC_DOWN);\n        } else {\n            tap_code(KC_UP);\n        }\n    }\n    return true;\n    // If you return true, this will allow the keyboard level code to run, as well.\n    //Returning false will override the keyboard level code. Depending on how the keyboard level function is set up.\n}

Core Changes

Fixes

Additions and Enhancements

Clean-ups and Optimizations

QMK Infrastructure and Internals

', 44); diff --git a/assets/ChangeLog_20210529.md.Ci4BGoNS.lean.js b/assets/ChangeLog_20210529.md.BWAcenKJ.lean.js similarity index 83% rename from assets/ChangeLog_20210529.md.Ci4BGoNS.lean.js rename to assets/ChangeLog_20210529.md.BWAcenKJ.lean.js index 9d7ee2bb7d6..d89cc895cd0 100644 --- a/assets/ChangeLog_20210529.md.Ci4BGoNS.lean.js +++ b/assets/ChangeLog_20210529.md.BWAcenKJ.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2021 May 29 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20210529.md","filePath":"ChangeLog/20210529.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20210529.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 44); diff --git a/assets/ChangeLog_20210828.md.D8tTkdsi.js b/assets/ChangeLog_20210828.md.I-_imy7e.js similarity index 99% rename from assets/ChangeLog_20210828.md.D8tTkdsi.js rename to assets/ChangeLog_20210828.md.I-_imy7e.js index daef0a055e4..e05867bfdf5 100644 --- a/assets/ChangeLog_20210828.md.D8tTkdsi.js +++ b/assets/ChangeLog_20210828.md.I-_imy7e.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2021 August 28 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20210828.md","filePath":"ChangeLog/20210828.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20210828.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2021 August 28 Changelog

Notable Features

Combo processing improvements (#8591)

Combo processing has been reordered with respect to keypress handling, allowing for much better compatibility with mod taps.

It is also now possible to define combos that have keys overlapping with other combos, triggering only one. For example, a combo of A, B can coexist with a longer combo of A, B, C -- previous functionality would trigger both combos if all three keys were pressed.

Key Overrides (#11422)

QMK now has a new feature: key overrides. This feature allows for overriding the output of key combinations involving modifiers. As an example, pressing Shift+2 normally results in an @ on US-ANSI keyboard layouts -- the new key overrides allow for adding similar functionality, but for any modifier + key press.

To illustrate, it's now possible to use the key overrides feature to translate Shift + Backspace into Delete -- an often-requested example of where this functionality comes in handy.

There's far more to describe that what lives in this changelog, so head over to the key overrides documentation for more examples and info.

Digitizer support (#12851)

QMK gained the ability to pretend to be a digitizer device -- much like a tablet device. A mouse uses delta-coordinates -- move up, move right -- but a digitizer works with absolute coordinates -- top left, bottom right.

Changes Requiring User Action

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
aeboards/constellationaeboards/constellation/rev1, aeboards/constellation/rev2
bakeneko65bakeneko65/rev2, bakeneko65/rev3
bm16akprepublic/bm16a
bm16skprepublic/bm16s
bm40hsrgbkprepublic/bm40hsrgb
bm43akprepublic/bm43a
bm60pokerkprepublic/bm60poker
bm60rgbkprepublic/bm60rgb
bm60rgb_isokprepublic/bm60rgb_iso
bm68rgbkprepublic/bm68rgb
clawsome/gamebuddyclawsome/gamebuddy/v1_0, clawsome/gamebuddy/v1_m
cospadkprepublic/cospad
custommk/genesiscustommk/genesis/rev1, custommk/genesis/rev2
daisyktec/daisy
durgod/k320durgod/k3x0/k320
dztech/volcano660ilumkb/volcano660
ergodonektec/ergodone
gmmk/progmmk/pro/ansi, gmmk/pro/iso
handwired/p1800flteam0110/p1800fl
jj40kprepublic/jj40
jj4x4kprepublic/jj4x4
jj50kprepublic/jj50
kyriasplitkb/kyria
lazydesigners/the60lazydesigners/the60/rev1, lazydesigners/the60/rev2
matrix/m12ogmatrix/m12og/rev1, matrix/m12og/rev2
mechlovin/hannah65/mechlovin9mechlovin/mechlovin9/rev1, mechlovin/mechlovin9/rev2
peiorisboards/ixoracoarse/ixora
ramonimbao/monaramonimbao/mona/v1, ramonimbao/mona/v1_1
staryuktec/staryu
tokyo60tokyokeyboard/tokyo60
vintacoarse/vinta
xd002xiudi/xd002
xd004xiudi/xd004
xd60xiudi/xd60
xd68xiudi/xd68
xd75xiudi/xd75
xd84xiudi/xd84
xd84proxiudi/xd84pro
xd87xiudi/xd87
xd96xiudi/xd96

Bootmagic Full Removal (#13846)

As noted during last breaking changes cycle, QMK has decided to deprecate the full Bootmagic feature and leave Bootmagic Lite as the only remaining option.

This pull request changes the behavior of BOOTMAGIC_ENABLE such that specifying full results in an error, allowing only no, yes, or lite.

Currently lite is the equivalent of yes in rules.mk. Next cycle the use of the lite keyword will be prevented in favour of yes -- any new submissions should now be using yes or no to minimise disruption.

Bootmagic Full Deprecation Schedule

This is the current roadmap for the behavior of BOOTMAGIC_ENABLE:

DIP switch callbacks are now boolean (#13399)

To match the encoder change last breaking changes cycle, DIP switch callbacks now return bool, too.

Example code before change:

c
void dip_switch_update_kb(uint8_t index, bool active) {\n    dip_switch_update_user(index, active);\n}\n\nvoid dip_switch_update_user(uint8_t index, bool active) {\n    switch (index) {\n        case 0:\n            if(active) { audio_on(); } else { audio_off(); }\n            break;\n    }\n}\n\nvoid dip_switch_update_mask_kb(uint32_t state) {\n    dip_switch_update_mask_user(state);\n}\n\nvoid dip_switch_update_mask_user(uint32_t state) {\n    if (state & (1UL<<0) && state & (1UL<<1)) {\n        layer_on(_ADJUST); // C on esc\n    } else {\n        layer_off(_ADJUST);\n    }\n}

Example code after change:

c
bool dip_switch_update_kb(uint8_t index, bool active) {\n    if !(dip_switch_update_user(index, active)) { return false; }\n    return true;\n}\n\nbool dip_switch_update_user(uint8_t index, bool active) {\n    switch (index) {\n        case 0:\n            if(active) { audio_on(); } else { audio_off(); }\n            break;\n    }\n    return true; // Returning true allows keyboard code to execute, false will tell the keyboard code "I've already handled it".\n}\n\nbool dip_switch_update_mask_kb(uint32_t state) {\n    if (!dip_switch_update_mask_user(state)) { return false; }\n    return true;\n}\n\nbool dip_switch_update_mask_user(uint32_t state) {\n    if (state & (1UL<<0) && state & (1UL<<1)) {\n        layer_on(_ADJUST); // C on esc\n    } else {\n        layer_off(_ADJUST);\n    }\n    return true; // Returning true allows keyboard code to execute, false will tell the keyboard code "I've already handled it".\n}

Notable core changes

Split transport improvements

Split keyboards gained a significant amount of improvements during this breaking changes cycle, specifically:

WARNING

If you're updating your split keyboard, you will need to flash both sides of the split with the your firmware.

Teensy 4.x support (#13056, #13076, #13077)

Updated ChibiOS and ChibiOS-Contrib, which brought in support for Teensy 4.x dev boards, running NXP i.MX1062.

Data Driven Improvements (#13366)

QMK's pursuit of data-driven keyboards has progressed, allowing substantially more configurable options to be specified in info.json.

Tags

Tags will let you categorize your keyboard, and will be used in the future to allow browsing and sorting through keyboards in QMK. Tags are free-form text identifiers that identify attributes about your keyboard. To add tags you simply add a tags key to your info.json:

"tags": ["tkl", "backlight", "encoder"]\n

Dot Notation

With this release we are moving towards using JSON dot notation in more places. For example, when using qmk info -f text:

$ qmk info -f text -kb clueboard/card\n  bootloader: atmel-dfu\n  debounce: 20\n  diode_direction: ROW2COL\n  features.audio: True\n  features.backlight: True\n  features.bluetooth: False\n  features.bootmagic: False\n  features.command: True\n  features.console: True\n  features.extrakey: True\n  features.lto: True\n  features.midi: False\n  features.mousekey: True\n  features.nkro: False\n  features.rgblight: True\n  features.unicode: False\n  height: 8\n  keyboard_folder: clueboard/card\n  keyboard_name: Cluecard\n  layout_aliases.LAYOUT: LAYOUT_all\n  layouts: LAYOUT_all\n  maintainer: skullydazed\n  manufacturer: Clueboard\n  matrix_pins.cols: F1, F6, F7\n  matrix_pins.rows: B4, F0, F4, F5\n  platform: unknown\n  processor: atmega32u4\n  processor_type: avr\n  protocol: LUFA\n  rgblight.brightness_steps: 17\n  rgblight.hue_steps: 10\n  rgblight.led_count: 4\n  rgblight.pin: E6\n  rgblight.saturation_steps: 17\n  split.transport.protocol: serial\n  usb.device_ver: 0x0001\n  usb.pid: 0x2330\n  usb.vid: 0xC1ED\n  width: 10

New configuration keys

We've added dozens of new keys to info.json so that you can configure more than ever without writing a single line of code. A quick overview of the new items you can configure:

Codebase restructure and cleanup

QMK was originally based on TMK, and has grown in size considerably since its first inception. To keep moving things forward, restructure of some of the core areas of the code is needed to support new concepts and new hardware, and progress is happening along those lines:


Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 65); diff --git a/assets/ChangeLog_20210828.md.D8tTkdsi.lean.js b/assets/ChangeLog_20210828.md.I-_imy7e.lean.js similarity index 83% rename from assets/ChangeLog_20210828.md.D8tTkdsi.lean.js rename to assets/ChangeLog_20210828.md.I-_imy7e.lean.js index 1a13821e987..166bcd70114 100644 --- a/assets/ChangeLog_20210828.md.D8tTkdsi.lean.js +++ b/assets/ChangeLog_20210828.md.I-_imy7e.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2021 August 28 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20210828.md","filePath":"ChangeLog/20210828.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20210828.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 65); diff --git a/assets/ChangeLog_20211127.md.CsOxZpUa.js b/assets/ChangeLog_20211127.md.CxO_AykL.js similarity index 99% rename from assets/ChangeLog_20211127.md.CsOxZpUa.js rename to assets/ChangeLog_20211127.md.CxO_AykL.js index d00dcbf03ff..cd406589583 100644 --- a/assets/ChangeLog_20211127.md.CsOxZpUa.js +++ b/assets/ChangeLog_20211127.md.CxO_AykL.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2021 November 27 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20211127.md","filePath":"ChangeLog/20211127.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20211127.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2021 November 27 Changelog

2000 keyboards!

QMK had it's 2000th keyboard submitted during this breaking changes cycle.... and it only just made the cut-off!

shell
% qmk list-keyboards | wc -l\n2003

From the whole QMK team, a major thankyou to the community for embracing QMK as your preferred keyboard firmware!

Notable Features

Expanded Pointing Device support (#14343)

Pointing device support has been reworked and reimplemented to allow for easier integration of new peripherals.

Usages of POINTING_DEVICE_ENABLE = yes in rules.mk files now need to be accompanied by a corresponding POINTING_DEVICE_DRIVER = ??? line, specifying which driver to use during the build. Existing keyboards have already been migrated across to the new usage pattern, so most likely no change is required by users.

QMK now has core-supplied support for the following pointing device peripherals:

rules.mk lineSupported device
POINTING_DEVICE_DRIVER = analog_joystickAnalog joysticks, such as PSP joysticks
POINTING_DEVICE_DRIVER = adns5050ADNS 5050 sensor
POINTING_DEVICE_DRIVER = adns9800ADNS 9800 laser sensor
POINTING_DEVICE_DRIVER = cirque_pinnacle_i2cCirque touchpad, I2C mode
POINTING_DEVICE_DRIVER = cirque_pinnacle_spiCirque Touchpad, SPI mode
POINTING_DEVICE_DRIVER = pimoroni_trackballPimoroni Trackball
POINTING_DEVICE_DRIVER = pmw3360PMW 3360

See the new documentation for the Pointing Device feature for more information on specific configuration for each driver.

Dynamic Tapping Term (#11036)

For people who are starting out with tapping keys, or for people who think tapping keys don't "feel right", it's sometimes quite difficult to determine what duration of tapping term to use to make things seem natural.

If you're in this stage of discovery, you can now add DYNAMIC_TAPPING_TERM_ENABLE = yes to your rules.mk, which enables the use of the following keycodes in your keymap:

KeyDescription
DT_PRNT"Dynamic Tapping Term Print": Types the current tapping term, in milliseconds
DT_UP"Dynamic Tapping Term Up": Increases the current tapping term by 5ms
DT_DOWN"Dynamic Tapping Term Down": Decreases the current tapping term by 5ms

Coupled with the use of qmk console or QMK Toolbox to show console output from your keyboard, you can tweak the tapping term dynamically in order to narrow down what "feels right" to you. Once you're happy, drop in the resulting number into your keymap's config.h and you're good to go!

Macros in JSON keymaps (#14374)

You can now define up to 32 macros in your keymap.json file, as used by QMK Configurator, and qmk compile. You can define these macros in a list under the macros keyword, like this:

json
{\n    "keyboard": "handwired/my_macropad",\n    "keymap": "my_keymap",\n    "macros": [\n        [ // first listed is QK_MACRO_0...\n            {"action":"down", "keycodes": ["LSFT"]},\n            "hello world1",\n            {"action": "up","keycodes": ["LSFT"]}\n        ],\n        [ // ...then QK_MACRO_1...\n            {"action":"tap", "keycodes": ["LCTL", "LALT", "DEL"]}\n        ],\n        [ // ...then QK_MACRO_2...\n            "ding!",\n            {"action":"beep"}\n        ],\n        [ // ...and QK_MACRO_3.\n            {"action":"tap", "keycodes": ["F1"]},\n            {"action":"delay", "duration": "1000"},\n            {"action":"tap", "keycodes": ["PGDN"]}\n        ]\n    ],\n    "layout": "LAYOUT_all",\n    "layers": [\n        ["QK_MACRO_0", "QK_MACRO_1", "QK_MACRO_2", "QK_MACRO_3"]\n    ]\n}

In due course, QMK Configurator will pick up support for defining these in its UI, but for now the json is the only way to define macros.

Changes Requiring User Action

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
aozora/hotswapaozora
gskt00kapcave/gskt00
handwired/dtisaac01dtisaac/dtisaac01
kprepublic/bm60pokerkprepublic/bm60hsrgb_poker/rev1
kprepublic/bm60rgbkprepublic/bm60hsrgb/rev1
kprepublic/bm60rgb_isokprepublic/bm60hsrgb_iso/rev1
kprepublic/bm65isokprepublic/bm65hsrgb_iso
kprepublic/bm68rgbkprepublic/bm68hsrgb
paladin64kapcave/paladin64
portal_66portal_66/soldered
signum/3_0/elitecsignum/3_0
tgr/janetgr/jane/v2

Squeezing space out of AVR (#15243)

The AVR platform has been problematic for some time, in the sense that it is severely resource-constrained -- this makes life difficult for anyone attempting to add new functionality such as display panels to their keymap code. The illustrious Drashna has contributed some newer documentation on how to attempt to free up some space on AVR-based keyboards that are in short supply.

Of course, there are much fewer constraints with ARM chips... 😉

Require explicit enabling of RGB Matrix modes (#15018)

Related to the previous section -- RGB Matrix modes have now been made to be opt-in, rather than opt-out. As these animations are now opt-in, you may find that your keyboard no longer has all the RGB modes you're expecting -- you may need to configure and recompile your firmware and enable your animations of choice... with any luck they'll still fit in the space available.

Most keyboards keep their original functionality, but over time the QMK maintainers have found that removal of animations ends up being the quickest way to free up space... and some keyboards have had animations such as reactive effects disabled by default in order to still fit within the flash space available.

The full list of configurables to turn specific animations back on can be found at on the RGB Matrix documentation page.

OLED task refactoring (#14864)

OLED display code was traditionally difficult to override in keymaps as they did not follow the standard pattern of bool *_kb() deferring to bool *_user() functions, allowing signalling to the higher level that processing had already been done.

This changes the standard OLED drawing function model to allow for a base implementation to be provided by a keyboard, but also still allow for keymap-level overrides without needing to modify the keyboard's code.

The old keymap code went something like this:

c
void oled_task_user(void) {\n    // keymap drawing code\n}

...but the new keymap code looks like this:

c
bool oled_task_user(void) {\n    // keymap drawing code\n    return false;\n}

Keyboard designers should now structure their keyboard-level drawing routines like the following, in order to allow for keymap overrides:

c
bool oled_task_kb(void) {\n    // Defer to the keymap if they want to override\n    if(!oled_task_user()) { return false; }\n\n    // default keyboard drawing code\n    return false;\n}

Bootmagic Full Removal (#15002)

As noted during previous breaking changes cycles, QMK decided to deprecate the full Bootmagic feature and leave Bootmagic Lite as the only remaining option.

This removal is now complete!

This pull request changes the behavior of BOOTMAGIC_ENABLE such that specifying lite or full results in an error, allowing only yes or no, with yes mirroring historical lite functionality.

All use of the lite keyword within the repository has been migrated to yes -- any new submissions using lite will now fail to build and should be updated accordingly.

Bootmagic Full Deprecation Schedule: Complete!

This is the historical timeline for the behavior of BOOTMAGIC_ENABLE:

Remove QWIIC_DRIVERS (#14174)

Due to minimal QWIIC adoption and other options for similar functionality, the QWIIC drivers were removed from QMK. Existing OLED usages have been migrated across to the normal QMK OLED driver instead.

Notable core changes

New MCU Support

QMK firmware picked up support for a handful of new MCU families, potentially making it a bit easier to source components.

QMK firmware is now no longer limited to AVR and ARM - it also picked up support for our first RISC-V chip, the GD32VF103.

EEPROM Changes

There were a few EEPROM-related changes that landed during this breaking changes cycle, most prominently the long-awaited ability for the Drop boards to gain persistent storage. Any users of the Drop CTRL or Drop ALT should update QMK Toolbox as well -- coupled with a QMK firmware update settings should now be saved.

Compilation Database

A clang-compatible compilation database generator has been added as an option in order to help development environments such as Visual Studio Code.

Running qmk generate-compilation-database -kb <yourkb> -km <yourkeymap> from within the QMK firmware directory will generate a compile_commands.json file -- using a compatible IDE will likely see this and correctly start detecting the correct locations for source files as well as type and function information that are relevant to your build.

Do note that switching keyboards will require re-generation of this file.

Codebase restructure and cleanup

QMK continues on its restructuring journey, in order to make it easier to integrate newer features and add support for new hardware. This quarter's batch of changes include:


Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 83); diff --git a/assets/ChangeLog_20211127.md.CsOxZpUa.lean.js b/assets/ChangeLog_20211127.md.CxO_AykL.lean.js similarity index 83% rename from assets/ChangeLog_20211127.md.CsOxZpUa.lean.js rename to assets/ChangeLog_20211127.md.CxO_AykL.lean.js index c89abe4946e..af4bb1ffefa 100644 --- a/assets/ChangeLog_20211127.md.CsOxZpUa.lean.js +++ b/assets/ChangeLog_20211127.md.CxO_AykL.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2021 November 27 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20211127.md","filePath":"ChangeLog/20211127.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20211127.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 83); diff --git a/assets/ChangeLog_20220226.md.CxS56DHq.js b/assets/ChangeLog_20220226.md.Dk8ZdFSM.js similarity index 99% rename from assets/ChangeLog_20220226.md.CxS56DHq.js rename to assets/ChangeLog_20220226.md.Dk8ZdFSM.js index 4061f2ac3fa..61a53dba9e0 100644 --- a/assets/ChangeLog_20220226.md.CxS56DHq.js +++ b/assets/ChangeLog_20220226.md.Dk8ZdFSM.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2022 February 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20220226.md","filePath":"ChangeLog/20220226.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20220226.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2022 February 26 Changelog

Notable Features

Default USB Polling rate now 1kHz (#15352)

The default USB Polling rate has been aligned across supported platforms to now be 1ms/1kHz.

Something something Lets go gamers!

Split support for pointing devices (#15304)

Pointing devices can now be shared across a split keyboard with support for a single pointing device or a pointing device on each side.

See the Pointing Device documentation for further configuration options.

Changes Requiring User Action

Legacy macro and action_function system removed (#16025)

The long time deprecated MACRO() and action_get_macro methods have been removed. Where possible, existing usages have been migrated over to core Macros.

Create a build error if no bootloader is specified (#16181)

Bootloader configuration is no longer assumed. Keyboards must now set either:

Rename AdafruitBLE to BluefruitLE (#16127)

In preparation of future bluetooth work, the AdafruitBLE integration has been renamed to allow potential for any other Adafruit BLE products.

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
6ballmaple_computing/6ball
7skbsalicylic_acid3/7skb
7splussalicylic_acid3/7splus
acr60mechkeys/acr60
adalyntominabox1/adalyn
ajisai74salicylic_acid3/ajisai74
aleth4225keys/aleth42
alicia_cookibnuda/alicia_cook
allison_numpadprototypist/allison_numpad
allisonprototypist/allison
alu84mechkeys/alu84
angel17kakunpc/angel17
angel64/alphakakunpc/angel64/alpha
angel64/rev1kakunpc/angel64/rev1
arch_36obosob/arch_36
bakeneko60kkatano/bakeneko60
bakeneko65/rev2kkatano/bakeneko65/rev2
bakeneko65/rev3kkatano/bakeneko65/rev3
bakeneko80kkatano/bakeneko80
barleycornyiancardesigns/barleycorn
bat43/rev1dailycraft/bat43/rev1
bat43/rev2dailycraft/bat43/rev2
bigseries/1keywoodkeys/bigseries/1key
bigseries/2keywoodkeys/bigseries/2key
bigseries/3keywoodkeys/bigseries/3key
bigseries/4keywoodkeys/bigseries/4key
bkfdrhigsby/bkf
business_card/alphakakunpc/business_card/alpha
business_card/betakakunpc/business_card/beta
butterstickgboards/butterstick
c39maple_computing/c39
cassette4225keys/cassette42
chidorikagizaraya/chidori
chiliydkb/chili
chimera_ergoglenpickle/chimera_ergo
chimera_lsglenpickle/chimera_ls
chimera_orthoglenpickle/chimera_ortho
chimera_ortho_plusglenpickle/chimera_ortho_plus
choco60recompile_keys/choco60
choc_tarokakunpc/choc_taro
christmas_treemaple_computing/christmas_tree
claw44/rev1dailycraft/claw44/rev1
cocoa40recompile_keys/cocoa40
comet46satt/comet46
cu24capsunlocked/cu24
cu75capsunlocked/cu75
cu80capsunlocked/cu80/v1
delilahrainkeebs/delilah
diverge3unikeyboard/diverge3
divergetm2unikeyboard/divergetm2
dozen0yynmt/dozen0
dubba175drhigsby/dubba175
eggmanqpockets/eggman
ergo42biacco42/ergo42
ergoarrowssalicylic_acid3/ergoarrows
ergodash/miniomkbd/ergodash/mini
ergodash/rev1omkbd/ergodash/rev1
ergodox_infinityinput_club/ergodox_infinity
ergotacogboards/ergotaco
espectromechkeys/espectro
felixunikeyboard/felix
four_bangerbpiphany/four_banger
freyrhnahkb/freyr
geminate60weirdo/geminate60
georgigboards/georgi
gergogboards/gergo
getta25salicylic_acid3/getta25
ginghamyiancardesigns/gingham
gurindamibnuda/gurindam
halberdkagizaraya/halberd
hecomi/alphatakashiski/hecomi/alpha
hid_liberbpiphany/hid_liber
id67/default_rgbidobao/id67/default_rgb
id67/rgbidobao/id67/rgb
id80idobao/id80/v1
id87idobao/id87/v1
idoboidobao/id75/v1
infinity60input_club/infinity60
ivy/rev1maple_computing/ivy/rev1
jisplit89salicylic_acid3/jisplit89
jnaomaple_computing/jnao
just60ydkb/just60
kagamidgetyynmt/kagamidget
kelowna/rgb64weirdo/kelowna/rgb64
kprepublic/bm65hsrgb_isokprepublic/bm65hsrgb_iso/rev1
kprepublic/bm68hsrgbkprepublic/bm68hsrgb/rev1
k_typeinput_club/k_type
latin17rgblatincompass/latin17rgb
latin47blelatincompass/latin47ble
latin60rgblatincompass/latin60rgb
latin64blelatincompass/latin64ble
latin6rgblatincompass/latin6rgb
latinpadblelatincompass/latinpadble
latinpadlatincompass/latinpad
launchpad/rev1maple_computing/launchpad/rev1
lck75lyso1/lck75
le_chiffretominabox1/le_chiffre
lefishelyso1/lefishe
lets_split_eh/ehmaple_computing/lets_split_eh/eh
ls_60weirdo/ls_60
m3n3vanmatthewdias/m3n3van
mechmini/v1mechkeys/mechmini/v1
mechmini/v2mechkeys/mechmini/v2
meirawoodkeys/meira
meishi2biacco42/meishi2
meishibiacco42/meishi
minidox/rev1maple_computing/minidox/rev1
minimmatthewdias/minim
miorecompile_keys/mio
model_vmatthewdias/model_v
montexidobao/montex/v1
nafudasalicylic_acid3/nafuda
naiping/np64weirdo/naiping/np64
naiping/nphhkbweirdo/naiping/nphhkb
naiping/npminilaweirdo/naiping/npminila
naked48salicylic_acid3/naked48
naked60salicylic_acid3/naked60
naked64salicylic_acid3/naked64
namecard2x4takashiski/namecard2x4
nebula12spaceholdings/nebula12
nebula68bspaceholdings/nebula68b
nebula68spaceholdings/nebula68
niu_minikbdfans/niu_mini
nk1novelkeys/nk1
nk65novelkeys/nk65
nk87novelkeys/nk87
nknl7ensalicylic_acid3/nknl7en
nknl7jpsalicylic_acid3/nknl7jp
nomu30recompile_keys/nomu30
novelpadnovelkeys/novelpad
ogurecdrhigsby/ogurec
otaku_split/rev0takashiski/otaku_split/rev0
otaku_split/rev1takashiski/otaku_split/rev1
owl8dailycraft/owl8
packratdrhigsby/packrat
pistachio_mprate/pistachio_mp
pistachio_prorate/pistachio_pro
pistachiorate/pistachio
plexus75checkerboards/plexus75
pursuit40checkerboards/pursuit40
qaztominabox1/qaz
quarkcheckerboards/quark
rabbit_capture_plankakunpc/rabbit_capture_plan
rainkeebrainkeebs/rainkeeb
reviung33reviung/reviung33
reviung34reviung/reviung34
reviung39reviung/reviung39
reviung41reviung/reviung41
reviung53reviung/reviung53
reviung5reviung/reviung5
reviung61reviung/reviung61
runner3680/3x6omkbd/runner3680/3x6
runner3680/3x7omkbd/runner3680/3x7
runner3680/3x8omkbd/runner3680/3x8
runner3680/4x6omkbd/runner3680/4x6
runner3680/4x7omkbd/runner3680/4x7
runner3680/4x8omkbd/runner3680/4x8
runner3680/5x6_5x8omkbd/runner3680/5x6_5x8
runner3680/5x6omkbd/runner3680/5x6
runner3680/5x7omkbd/runner3680/5x7
runner3680/5x8omkbd/runner3680/5x8
scarletbandanawoodkeys/scarletbandana
scythekagizaraya/scythe
seigaihayiancardesigns/seigaiha
setta21salicylic_acid3/setta21
space_space/rev1qpockets/space_space/rev1
space_space/rev2qpockets/space_space/rev2
spiderisland/winry25tcwinry/winry25tc
splitreus62nacly/splitreus62
squiggle/rev1ibnuda/squiggle/rev1
standasideedi/standaside
steal_this_keyboardobosob/steal_this_keyboard
stellahnahkb/stella
suihankey/alphakakunpc/suihankey/alpha
suihankey/rev1kakunpc/suihankey/rev1
suihankey/splitkakunpc/suihankey/split
thedogkeyboardkakunpc/thedogkeyboard
the_rulermaple_computing/the_ruler
tiger910weirdo/tiger910
treadstone32marksard/treadstone32
treadstone48/rev1marksard/treadstone48/rev1
treadstone48/rev2marksard/treadstone48/rev2
txuumatthewdias/txuu
ua62nacly/ua62
underscore33/rev1tominabox1/underscore33/rev1
underscore33/rev2tominabox1/underscore33/rev2
vn66hnahkb/vn66
wallabykkatano/wallaby
wantenqpockets/wanten
whitefoxinput_club/whitefox
wings42/rev1dailycraft/wings42/rev1
wings42/rev1_extkeysdailycraft/wings42/rev1_extkeys
wings42/rev2dailycraft/wings42/rev2
yasuirainkeebs/yasui
yd60mqymdk/yd60mq
yd68ydkb/yd68
ymd75ymdk/ymd75
ymd96ymdk/ymd96
ymdk_np21ymdk/np21
yureikkatano/yurei
zinc25keys/zinc
zinc/rev125keys/zinc/rev1
zinc/reva25keys/zinc/reva

Notable core changes

New MCU Support

Building on previous cycles, QMK firmware picked up support for a couple extra MCU variants:

New Drivers

QMK now has core-supplied support for the following device peripherals:

LED

GPIO


Full changelist

Core:

CLI:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 43); diff --git a/assets/ChangeLog_20220226.md.CxS56DHq.lean.js b/assets/ChangeLog_20220226.md.Dk8ZdFSM.lean.js similarity index 83% rename from assets/ChangeLog_20220226.md.CxS56DHq.lean.js rename to assets/ChangeLog_20220226.md.Dk8ZdFSM.lean.js index 90c23de2efa..b32e50315e2 100644 --- a/assets/ChangeLog_20220226.md.CxS56DHq.lean.js +++ b/assets/ChangeLog_20220226.md.Dk8ZdFSM.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2022 February 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20220226.md","filePath":"ChangeLog/20220226.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20220226.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 43); diff --git a/assets/ChangeLog_20220528.md.BbCWKJrZ.js b/assets/ChangeLog_20220528.md.Ci-w_XT5.js similarity index 99% rename from assets/ChangeLog_20220528.md.BbCWKJrZ.js rename to assets/ChangeLog_20220528.md.Ci-w_XT5.js index 9644d7972f5..cc5bddfb66d 100644 --- a/assets/ChangeLog_20220528.md.BbCWKJrZ.js +++ b/assets/ChangeLog_20220528.md.Ci-w_XT5.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2022 May 28 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20220528.md","filePath":"ChangeLog/20220528.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20220528.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2022 May 28 Changelog

Notable Features

Caps Word (#16588)

This is a new feature that allows for capslock-like functionality that turns itself off at the end of the word.

For instance, if you wish to type "QMK" without holding shift the entire time, you can either tap both left and right shift, or double-tap shift, to turn on Caps Word -- then type qmk (lowercase) without holding shift. Once you hit any key other than a--z, 0--9, -, _, delete, or backspace, this will go back to normal typing!

There are other activation mechanisms as well as configurable options like timeout and the like -- see the Caps Word documentation for more information.

Quantum Painter (#10174)

QMK has had support for small OLED displays for some time now, but hasn't really gained too much ability to draw to panels other than the SSD1306 or SH1106 panels.

Quantum Painter is a new drawing subsystem available to suitable ARM and RISC-V boards that is capable of drawing to large panel RGB LCDs and RGB OLEDs. It also allows for a lot more flexibility with a larger set of drawing APIs -- lines, rectangles, circles, ellipses, text, images, and even animations.

The QMK CLI has new commands added to be able to generate images and fonts for Quantum Painter to digest -- it's even capable of converting animated gifs for display on screen.

See the Quantum Painter documentation for more information on how to set up the displays as well as how to convert images and fonts.

WARNING

Quantum Painter is not supported on AVR due to complexity and size constraints. Boards based on AVR such as ProMicro or Elite-C builds will not be able to leverage Quantum Painter.

Encoder Mapping (#13286)

One of the long-standing complaints with Encoders is that there has been no easy way to configure them in user keymaps. #13286 added support for Encoder Mapping, which allows users to define encoder functionality in a similar way to their normal keymap.

WARNING

This is not yet supported by QMK Configurator. It is also unlikely to ever be supported by VIA.

Changes Requiring User Action

RESET => QK_BOOT (#17037)

QMK is always in the process of picking up support for new hardware platforms. One of the side-effects for future integrations has shown that QMK's usage of RESET as a keycode is causing naming collisions. As a result, #17037 changed usages of RESET to the new keycode QK_BOOT in the majority of default-like keymaps. At this stage the old keycode is still usable but will likely be removed in the next breaking changes cycle. Users with keymaps containing RESET should also move to QK_BOOT.

Sendstring keycode overhaul (#16941)

Some keycodes used with SEND_STRING and its relatives have been deprecated and may have their old keycode usages removed at a later date. The list of deprecated keycodes should be consulted to determine if you're using one of the older names (the first identifier after #define) -- you should swap to the newer variant (the second identifier on the same line).

Pillow Installation (#17133)

The merge of Quantum Painter added some new dependencies in the QMK CLI, most notably Pillow, which requires some installation in order for the CLI to function. If you've got an existing installation, you'll need to run some commands in order to get things working:

On Windows, if using QMK MSYS or msys2, you'll need to run the following command:

sh
pacman --needed --noconfirm --disable-download-timeout -S mingw-w64-x86_64-python-pillow\npython3 -m pip install --upgrade qmk

On macOS:

sh
brew update\nbrew upgrade qmk/qmk/qmk

On Linux or WSL:

sh
python3 -m pip install --user --upgrade qmk

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
absinthekeyhive/absinthe
amj40amjkeyboard/amj40
amj60amjkeyboard/amj60
amj96amjkeyboard/amj96
amjpadamjkeyboard/amjpad
at101_bhviktus/at101_bh
ergosauruskeyhive/ergosaurus
gmmk/pro/ansigmmk/pro/rev1/ansi
gmmk/pro/isogmmk/pro/rev1/iso
honeycombkeyhive/honeycomb
lattice60keyhive/lattice60
melody96ymdk/melody96
mt40mt/mt40
mt64rgbmt/mt64rgb
mt84mt/mt84
mt980mt/mt980
navi10keyhive/navi10
omnikey_bhviktus/omnikey_bh
opuskeyhive/opus
smallicekeyhive/smallice
southpolekeyhive/southpole
unokeyhive/uno
ut472keyhive/ut472
wheatfield/blocked65mt/blocked65
wheatfield/split75mt/split75
z150_bhviktus/z150_bh

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 47); diff --git a/assets/ChangeLog_20220528.md.BbCWKJrZ.lean.js b/assets/ChangeLog_20220528.md.Ci-w_XT5.lean.js similarity index 83% rename from assets/ChangeLog_20220528.md.BbCWKJrZ.lean.js rename to assets/ChangeLog_20220528.md.Ci-w_XT5.lean.js index 10c017d1764..4d4ea77faf6 100644 --- a/assets/ChangeLog_20220528.md.BbCWKJrZ.lean.js +++ b/assets/ChangeLog_20220528.md.Ci-w_XT5.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2022 May 28 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20220528.md","filePath":"ChangeLog/20220528.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20220528.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 47); diff --git a/assets/ChangeLog_20220827.md.mKIE5Jfz.js b/assets/ChangeLog_20220827.md.5judfHL1.js similarity index 99% rename from assets/ChangeLog_20220827.md.mKIE5Jfz.js rename to assets/ChangeLog_20220827.md.5judfHL1.js index f49d3d7886b..ccc910ab4dd 100644 --- a/assets/ChangeLog_20220827.md.mKIE5Jfz.js +++ b/assets/ChangeLog_20220827.md.5judfHL1.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2022 August 27 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20220827.md","filePath":"ChangeLog/20220827.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20220827.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2022 August 27 Changelog

Notable Features

Add Raspberry Pi RP2040 support (#14877, #17514, #17516, #17519, #17612, #17512, #17557, #17817, #17839, #18100)

QMK finally picked up support for RP2040-based boards, such as the Raspberry Pi Pico, the Sparkfun Pro Micro RP2040, and the Adafruit KB2040. One of QMK's newest collaborators, @KarlK90, effectively did /micdrop with RP2040, with a massive set of changes to both QMK and the repository QMK uses for the base platform support, ChibiOS[-Contrib]. There has been a flurry of development this breaking changes cycle related to RP2040 from a large number of contributors -- so much so that almost all standard QMK hardware subsystems are supported.

Check the RP2040 platform development page for all supported peripherals and other hardware implementation details.

Allow qmk flash to use prebuilt firmware binaries (#16584)

A long-requested capability of the QMK CLI has been the ability to flash binaries directly, without needing to build a firmware. QMK provides prebuilt develop-based default firmwares on our CI page -- normally people would need QMK Toolbox to flash them. This new functionality written by @Erovia allows qmk flash to be provided the prebuilt file instead, simplifying the workflow for people who haven't got Toolbox available.

Changes Requiring User Action

Default layers dropped from 32 to 16 (#15286)

QMK allows for controlling the maximum number of layers it supports through LAYER_STATE_(8|16|32)BIT. Each definition allows for the same number of maximum layers -- LAYER_STATE_8BIT => 8 layers. There is also a corresponding firmware size decrease that goes along with smaller numbers -- given the vast majority of users don't use more than 16 layers the default has been swapped to 16. AVR users who were not previously specifying their max layer count may see some space freed up as a result.

RESET => QK_BOOT (#17940)

Following the last breaking changes cycle, QMK has been migrating usages of RESET to QK_BOOT due to naming collisions with our upstream board support packages. #17940 converts user keymaps across to use the new keycode name. RESET should also move to QK_BOOT.

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
gentleman65jkeys_design/gentleman65
handwired/hillside/0_1handwired/hillside/48
idobao/id80/v1/ansiidobao/id80/v2/ansi
idobao/id80/v1/isoidobao/id80/v2/iso

Data-driven USB IDs Refactoring (#18152)

QMK has decided to deprecate the specification of USB IDs inside config.h in favour of info.json, eventually leaving data-driven as the only method to specify USB information.

A significant number of keyboards have already been changed on master in a like-for-like fashion, and #18152 performs the same transformations for keyboards already on develop.

Previously in config.h:

c
#define VENDOR_ID    0x1234\n#define PRODUCT_ID   0x5678\n#define DEVICE_VER   0x0001\n#define MANUFACTURER Me\n#define PRODUCT      MyKeyboard

Replaced by info.json:

json
{\n    "keyboard_name": "MyKeyboard",\n    "manufacturer": "Me",\n    "usb": {\n        "vid": "0x1234",\n        "pid": "0x5678",\n        "device_version": "0.0.1"\n    },\n    // ... layouts, etc. ...\n}

Deprecation Schedule

Notable core changes

Board converters (#17514, #17603, #17711, #17827, #17593, #17652, #17595)

Historically QMK had a CONVERT_TO_PROTON_C directive for rules.mk to allow people to replace an AVR-based Pro Micro with a QMK Proton C. Global parts shortages have prompted people to create their own pin-compatible boards -- QMK has made this conversion generic and now allows for drop-in replacements for a lot more boards. see the Converters Feature documentation for the full list of supported replacement boards -- in this breaking changes cycle we've gone from 1 to 7.

Add cli command to import keyboard|keymap|kbfirmware (#16668)

To help with importing keyboards and keymaps from other sources, @zvecr added #16668 which adds a new set of commands to the CLI to automatically import keyboards (qmk import-keyboard -h), keymaps (qmk import-keymap -h), and kbfirmware definitions (qmk import-kbfirmware -h) into QMK.

The now-EOL kbfirmware allowed people who aren't set up with QMK the ability to create keyboard firmwares without requiring a full installation of QMK. Unfortunately, it targets a 7-year-old version of QMK -- adding frustration for users who want the newest features, as well as for QMK maintainers who have to spend time explaining why QMK can't just accept a drive-by code drop from kbfirmware. With any luck, this new command helps both camps!

Generic wear-leveling for EEPROM emulation (#16996, #17376, #18102)

QMK has had the ability to write to internal MCU flash in order to emulate EEPROM for some time now, but it was only limited to a small number of MCUs. The base HAL used by QMK for a large number of ARM devices provides a "proper" embedded MCU flash driver, so @tzarc decoupled the wear-leveling algorithm from the old flash writing code, improved it, wrote some tests, and enabled its use for a much larger number of other devices... including RP2040's XIP flash, and external SPI NOR Flash.

See the EEPROM Driver documentation for more information.

Pointing Device Improvements (#16371, #17111, #17176, #17482, #17776, #17613)

Ever since Pointing Device Driver support and Split Pointing Device support were added by @drashna and @daskygit, there has been increased interest in the development of the pointing device subsystem and its associated code.

Both the PMW33xx and the Cirque Pinnacle implementations have seen a lot of improvement to their code, as has the mouse code in general. Features like circular/edge scrolling for the Cirque, and Kinetic movement for any sensor with "lift detection" (#17482). Additionally, for those that make fast motions with their pointing devices, support for much larger mouse movement reports has been added (#16371).

Other related changes:


Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 54); diff --git a/assets/ChangeLog_20220827.md.mKIE5Jfz.lean.js b/assets/ChangeLog_20220827.md.5judfHL1.lean.js similarity index 83% rename from assets/ChangeLog_20220827.md.mKIE5Jfz.lean.js rename to assets/ChangeLog_20220827.md.5judfHL1.lean.js index 793a4e33e45..f1d98b56557 100644 --- a/assets/ChangeLog_20220827.md.mKIE5Jfz.lean.js +++ b/assets/ChangeLog_20220827.md.5judfHL1.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2022 August 27 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20220827.md","filePath":"ChangeLog/20220827.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20220827.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 54); diff --git a/assets/ChangeLog_20221126.md.ejK1jl91.js b/assets/ChangeLog_20221126.md.CPg-BIWB.js similarity index 99% rename from assets/ChangeLog_20221126.md.ejK1jl91.js rename to assets/ChangeLog_20221126.md.CPg-BIWB.js index c1d472b87a2..44ec4ece303 100644 --- a/assets/ChangeLog_20221126.md.ejK1jl91.js +++ b/assets/ChangeLog_20221126.md.CPg-BIWB.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2022 November 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20221126.md","filePath":"ChangeLog/20221126.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20221126.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2022 November 26 Changelog

Notable Features

Autocorrect (#15699)

@getreuer in their infinite wisdom decided that autocorrect was a feature needed by QMK. As is customary, @drashna adapted it to core and got it into a state that everyone else can use it. See Feature: Autocorrect for more ifnormation (grin).

Changes Requiring User Action

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
converter/numeric_keypad_IIeconverter/numeric_keypad_iie
durgod/k3x0/k310durgod/k310
durgod/k3x0/k320durgod/k320
emptystring/NQGemptystring/nqg
handwired/hillside/46hillside/46
handwired/hillside/48hillside/48
handwired/hillside/52hillside/52
maple_computing/christmas_tree/V2017maple_computing/christmas_tree/v2017

Keycodes refactoring

QMK's keycodes got a very significant overhaul this breaking changes cycle, with the bulk of the work done by @zvecr and @fauxpark -- renaming, reordering, removing has been their focus in this area. In an attempt to standardise interoperation with host applications, keycode values now have strong versioning so that any connected application has confidence that the keys it thinks exist on the board actually match up with what's compiled in. These strongly-versioned keycode definitions are now published online and will not change, so tools that remap keycodes have a reference to work with. In future versions of QMK, any new or changed keycodes will result in a new version specification. See API docs for more information on the published versions if you're writing a tool to manage keycodes.

In most cases user keymaps in the repository have already been updated to reflect the new naming scheme. In some cases user keymaps outside the repository may strike a missing keycode with the old name -- it's highly likely that the name had already been deprecated for some time, and should have been updated previously.

See below for the full list of changesets.

WARNING

Keycode aliases have been put in place in most cases to cater for "old names" being mapped to "new names" -- the documentation already reflects all the new naming of keys.

Configuration Item Refactoring

A number of configuration items have been renamed for consistency.

RGB Matrix configuration:

Old ConfigNew Config
DRIVER_LED_COUNTRGB_MATRIX_LED_COUNT
RGB_DISABLE_TIMEOUTRGB_MATRIX_TIMEOUT
RGB_MATRIX_STARTUP_HUERGB_MATRIX_DEFAULT_HUE
RGB_MATRIX_STARTUP_MODERGB_MATRIX_DEFAULT_MODE
RGB_MATRIX_STARTUP_SATRGB_MATRIX_DEFAULT_SAT
RGB_MATRIX_STARTUP_SPDRGB_MATRIX_DEFAULT_SPD
RGB_MATRIX_STARTUP_VALRGB_MATRIX_DEFAULT_VAL

LED Matrix configuration:

Old ConfigNew Config
DRIVER_LED_COUNTLED_MATRIX_LED_COUNT
LED_DISABLE_TIMEOUTLED_MATRIX_TIMEOUT
LED_MATRIX_STARTUP_MODELED_MATRIX_DEFAULT_MODE
LED_MATRIX_STARTUP_SPDLED_MATRIX_DEFAULT_SPD
LED_MATRIX_STARTUP_VALLED_MATRIX_DEFAULT_VAL

Joystick configuration:

Old ConfigNew Config
JOYSTICK_AXES_COUNTJOYSTICK_AXIS_COUNT
JOYSTICK_AXES_RESOLUTIONJOYSTICK_AXIS_RESOLUTION

Data-driven USB IDs Refactoring (#18152)

QMK has decided to deprecate the specification of USB IDs inside config.h in favour of info.json, leaving data-driven as the only method to specify USB information. As per the deprecation schedule put forward last breaking changes cycle, USB information must be specified in info.json instead.

Previously in config.h:

c
#define VENDOR_ID    0x1234\n#define PRODUCT_ID   0x5678\n#define DEVICE_VER   0x0001\n#define MANUFACTURER Me\n#define PRODUCT      MyKeyboard

Replaced by info.json:

json
{\n    "keyboard_name": "MyKeyboard",\n    "manufacturer": "Me",\n    "usb": {\n        "vid": "0x1234",\n        "pid": "0x5678",\n        "device_version": "0.0.1"\n    }\n}

LED Indicator callback refactoring (#14864)

RGB Matrix and LED Matrix Indicator display code was traditionally difficult to override in keymaps as they did not follow the standard pattern of bool *_kb() deferring to bool *_user() functions, allowing signalling to the higher level that processing had already been done.

This changes the standard callback model to allow for a base implementation to be provided by a keyboard, but also still allow for keymap-level overrides without needing to modify the keyboard's code.

The old RGB Matrix keymap code went something like this:

c
void rgb_matrix_indicators_user(void) {\n    // keymap LED code\n}

...but the new RGB Matrix keymap code looks like this:

c
bool rgb_matrix_indicators_user(void) {\n    // keymap LED code\n    return false;\n}

Keyboard designers should now structure their keyboard-level routines like the following, in order to allow for keymap overrides:

c
bool rgb_matrix_indicators_kb(void) {\n    // Defer to the keymap if they want to override\n    if (!rgb_matrix_indicators_user()) { return false; }\n\n    // keyboard LED code\n    return true;\n}

The equivalent transformations should be done for LED Matrix boards.

Unicode mode refactoring

Unicode modes were renamed in order to prevent collision with equivalent keycodes. The available values for UNICODE_SELECTED_MODES changed -- see Feature: Unicode for the new list of values and how to configure them.

Notable core changes

This breaking changes cycle, a lot of the core changes are related to cleanup and refactoring -- commonly called "tech debt".

Keycodes refactoring

We aren't going to list each and every change -- they're far too numerous -- instead, we'll just list the related PRs in order to convey just how wide-reaching these changes were:

Board Converters

There was additional work in the space of board converters -- historically QMK allowed for "converting" a Pro Micro build to a QMK Proton-C build. The last few versions of QMK have added support for replacement boards much like the Proton-C, and this quarter was no exception:

See Feature: Converters for the full list of board conversions available.

Pointing and Digitizer device updates

Both pointing devices and digitizer got a host of updates this cycle. Inertia, automatic mouse layers, fixes for preventing sleep... you even get more buttons with digitizers!

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 66); diff --git a/assets/ChangeLog_20221126.md.ejK1jl91.lean.js b/assets/ChangeLog_20221126.md.CPg-BIWB.lean.js similarity index 83% rename from assets/ChangeLog_20221126.md.ejK1jl91.lean.js rename to assets/ChangeLog_20221126.md.CPg-BIWB.lean.js index 4bacb00adf7..9d1e436e9cc 100644 --- a/assets/ChangeLog_20221126.md.ejK1jl91.lean.js +++ b/assets/ChangeLog_20221126.md.CPg-BIWB.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2022 November 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20221126.md","filePath":"ChangeLog/20221126.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20221126.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 66); diff --git a/assets/ChangeLog_20230226.md.DA3ufZ0c.js b/assets/ChangeLog_20230226.md.7t5PVIxX.js similarity index 99% rename from assets/ChangeLog_20230226.md.DA3ufZ0c.js rename to assets/ChangeLog_20230226.md.7t5PVIxX.js index c005b55141d..4012ad65e10 100644 --- a/assets/ChangeLog_20230226.md.DA3ufZ0c.js +++ b/assets/ChangeLog_20230226.md.7t5PVIxX.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2023 February 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20230226.md","filePath":"ChangeLog/20230226.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20230226.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2023 February 26 Changelog

Changes Requiring User Action

IGNORE_MOD_TAP_INTERRUPT behaviour changes (#15741)

IGNORE_MOD_TAP_INTERRUPT_PER_KEY has been removed and IGNORE_MOD_TAP_INTERRUPT deprecated as a stepping stone towards making IGNORE_MOD_TAP_INTERRUPT the new default behavior for mod-taps in the future.

In place of the now removed IGNORE_MOD_TAP_INTERRUPT_PER_KEY, one must use the pre-existing HOLD_ON_OTHER_KEY_PRESS option.

In most cases, updating get_ignore_mod_tap_interrupt to get_hold_on_other_key_press is simply a matter of renaming the function and swapping every true by false and vice versa. The one subtlety you may need to look out for is that the get_ignore_mod_tap_interrupt was only ever called with mod-taps passed in as the keycode argument, while the keycode argument of get_hold_on_other_key_press can be any dual-role key. This includes not only mod-taps, but also layer-taps, one shot keys, TT(layer) and more. This has an impact on the effect of the default case in a typical per-key configuration making use of a switch(keycode) statement.

To illustrate, let's take the example of a configuration where we'd want all mod-taps to activate the modifier if another key is pressed while held with the exception of LCTL_T(KC_A), which should ignore keys pressed while it is held and activate the modifier only if it has been held for longer than the tapping term. In addition, we would like to keep the default "ignore-interrupt" behavior of layer taps.

An old way to do this would be via the following code:

c
bool get_ignore_mod_tap_interrupt(uint16_t keycode, keyrecord_t *record) {\n    switch(keycode) {\n        case LCTL_T(KC_A):\n            return true;\n        default:\n            return false;\n    }\n}

The correct way to update this code without accidentally changing how the layer-taps work would be the following:

c
bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {\n    switch(keycode) {\n        // Capture all mod-tap keycodes.\n        case QK_MOD_TAP ... QK_MOD_TAP_MAX:\n            if (keycode == LCTL_T(KC_A)) {\n                // Disable HOLD_ON_OTHER_KEY_PRESS for LCTL_T(KC_A)\n                // aka enable IGNORE_MOD_TAP_INTERRUPT for LCTL_T(KC_A).\n                return false;\n            } else {\n                // Enable HOLD_ON_OTHER_KEY_PRESS for every other mod-tap keycode.\n                return true;\n            }\n        default:\n            return false;\n    }\n}

For more information, you are invited to read the sections on IGNORE_MOD_TAP_INTERRUPT and HOLD_ON_OTHER_KEY_PRESS in the page on Tap-Hold configuration options.

TAPPING_FORCE_HOLD => QUICK_TAP_TERM (#17007)

TAPPING_FORCE_HOLD feature is now replaced by QUICK_TAP_TERM. Instead of turning off auto-repeat completely, user will have the option to configure a QUICK_TAP_TERM in milliseconds. When the user holds a tap-hold key after tapping it within QUICK_TAP_TERM, QMK will send the tap keycode to the host, enabling auto-repeat.

Its value is set to TAPPING_TERM by default and it can be reduced to match typing habits to avoid false triggers. To disable auto-repeat completely, set QUICK_TAP_TERM to zero.

TAPPING_FORCE_HOLD_PER_KEY is also deprecated and replaced by QUICK_TAP_TERM_PER_KEY. The old granular control function for tapping force hold is:

c
bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case LT(1, KC_BSPC):\n            return true;\n        default:\n            return false;\n    }\n}

That function can be replaced with:

c
uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case SFT_T(KC_SPC):\n            return 0;\n        default:\n            return QUICK_TAP_TERM;\n    }\n}

For more details, please read the updated documentation section on Quick Tap Term.

Leader Key Rework {#leader-key-rework (#19632)}

The Leader Key feature API has been significantly improved, along with some bugfixes and added tests.

Instead of defining your leader sequences in matrix_scan_user(), they are now handled in the leader_end_user() callback, and the LEADER_EXTERNS()/LEADER_DICTIONARY() macros are no longer needed:

c
void leader_end_user(void) {\n    if (leader_sequence_one_key(KC_F)) {\n        // Leader, f => Types the below string\n        SEND_STRING("QMK is awesome.");\n    } else if (leader_sequence_two_keys(KC_D, KC_D)) {\n        // Leader, d, d => Ctrl+A, Ctrl+C\n        SEND_STRING(SS_LCTL("a") SS_LCTL("c"));\n    } else if (leader_sequence_three_keys(KC_D, KC_D, KC_S)) {\n        // Leader, d, d, s => Types the below string\n        SEND_STRING("https://start.duckduckgo.com\\n");\n    } else if (leader_sequence_two_keys(KC_A, KC_S)) {\n        // Leader, a, s => GUI+S\n        tap_code16(LGUI(KC_S));\n    }\n}

For more information please see the Leader Key documentation.

Updated Keyboard Codebases

The following keyboards have had their source moved within QMK:

Old Keyboard NameNew Keyboard Name
ramonimbao/aelithrmi_kb/aelith
ramonimbao/herringbone/prormi_kb/herringbone/pro
ramonimbao/herringbone/v1rmi_kb/herringbone/v1
ramonimbao/mona/v1_1rmi_kb/mona/v1_1
ramonimbao/mona/v1rmi_kb/mona/v1
ramonimbao/mona/v32armi_kb/mona/v32a
ramonimbao/squishy65rmi_kb/squishy65
ramonimbao/squishytklrmi_kb/squishytkl
ramonimbao/tkl_ffrmi_kb/tkl_ff
ramonimbao/tkl_ff/v1rmi_kb/tkl_ff/v1
ramonimbao/tkl_ff/v2rmi_kb/tkl_ff/v2
ramonimbao/wete/v1rmi_kb/wete/v1
ramonimbao/wete/v2rmi_kb/wete/v2
the_unistenothe_uni
xelus/xs60xelus/xs60/soldered

Notable core changes

As per last breaking changes cycle, there has been a lot of emphasis on behind-the-scenes changes, mainly around consolidation of core subsystems and constant values, as well as addressing tech debt. Whilst not outwardly visible, this cleanup and refactoring should start paying dividends as it simplifies future development and maintenance.

A handful of examples:

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 47); diff --git a/assets/ChangeLog_20230226.md.DA3ufZ0c.lean.js b/assets/ChangeLog_20230226.md.7t5PVIxX.lean.js similarity index 83% rename from assets/ChangeLog_20230226.md.DA3ufZ0c.lean.js rename to assets/ChangeLog_20230226.md.7t5PVIxX.lean.js index 88664a04ce7..5e7762e0fca 100644 --- a/assets/ChangeLog_20230226.md.DA3ufZ0c.lean.js +++ b/assets/ChangeLog_20230226.md.7t5PVIxX.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2023 February 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20230226.md","filePath":"ChangeLog/20230226.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20230226.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 47); diff --git a/assets/ChangeLog_20230528.md.D9b6sNVW.js b/assets/ChangeLog_20230528.md.Bp2A079h.js similarity index 99% rename from assets/ChangeLog_20230528.md.D9b6sNVW.js rename to assets/ChangeLog_20230528.md.Bp2A079h.js index a2c6bf20b2c..9af08eb0004 100644 --- a/assets/ChangeLog_20230528.md.D9b6sNVW.js +++ b/assets/ChangeLog_20230528.md.Bp2A079h.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2023 May 28 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20230528.md","filePath":"ChangeLog/20230528.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20230528.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2023 May 28 Changelog

Notable Changes

As per last breaking changes cycle, there has been a lot of emphasis on behind-the-scenes changes, mainly around migration of configurables into info.json files, cleanup of info.json files, additional layout definitions for keyboards, adding support for general community layouts to keyboards, as well as addressing technical debt.

Of note for keyboard designers:

Repeat last key (#19700)

A new pair of keys has been added to QMK -- namely QK_REPEAT_KEY and QK_ALT_REPEAT_KEY (shortened: QK_REP/QK_AREP). These allow you to repeat the last key pressed, or in the case of the alternate key, press the "opposite" of the last key. For example, if you press KC_LEFT, pressing QK_REPEAT_KEY afterwards repeats KC_LEFT, but pressing QK_ALT_REPEAT_KEY instead sends KC_RIGHT.

The full list of default alternate keys is available on the Repeat Key documentation.

To enable these keys, in your keymap's rules.mk, add:

make
REPEAT_KEY_ENABLE = yes

...and add them to your keymap.

User callback for pre process record (#20584)

Two new boolean callback functions, pre_process_record_kb and pre_process_record_user, have been added. They are called at the beginning of process_record, right before process_combo.

Similar to existing *_kb and *_user callback functions, returning false will halt further processing of key events. The pre_process_record_user function will allow user space opportunity to handle or capture an input before it undergoes quantum processing. For example, while action tapping is still resolving the tap or hold output of a mod-tap key, pre_process_record_user can capture the next key record of an input event that follows. That key record can be used to influence the decision of the mod-tap key that is currently undergoing quantum processing.

Consolidate modelm (#14996

Several build targets for the IBM Model M were cluttered in different folders. The maintainers of several Model M replacement controller projects agreed to consolidate them under one common folder.

The list of all moved keyboard locations is listed below.

Changes Requiring User Action

IGNORE_MOD_TAP_INTERRUPT behaviour changes (#20211)

Following up from the last breaking changes cycle, IGNORE_MOD_TAP_INTERRUPT has been removed and if present in keymap code, will now fail to build. The previous functionality for IGNORE_MOD_TAP_INTERRUPT is now default, and should you wish to revert to the old behaviour, you can use HOLD_ON_OTHER_KEY_PRESS instead.

For more information, you are invited to read the section on HOLD_ON_OTHER_KEY_PRESS in the page on Tap-Hold configuration options.

Updated Keyboard Codebases

Old Keyboard NameNew Keyboard Name
ashpil/modelm_usbcibm/model_m/ashpil_usbc
binepad/bn009r2binepad/bn009/r2
converter/modelm101ibm/model_m/teensypp
converter/modelm101_teensy2ibm/model_m/teensy2
converter/modelm_sskibm/model_m_ssk/teensypp_ssk
durgod/dgk6x/hadesdurgod/dgk6x/hades_ansi
handwired/ibm122mibm/model_m_122/ibm122m
jacky_studio/piggy60/hotswapjacky_studio/piggy60/rev1/hotswap
jacky_studio/piggy60/solderjacky_studio/piggy60/rev1/solder
kamigakushijaykeeb/kamigakushi
massdrop/thekeydrop/thekey/v1
massdrop/thekey_v2drop/thekey/v2
mschwingen/modelmibm/model_m/mschwingen
tronguylabs/m122_3270ibm/model_m_122/m122_3270
tronguylabs/m122_3270/blackpillibm/model_m_122/m122_3270/blackpill
tronguylabs/m122_3270/bluepillibm/model_m_122/m122_3270/bluepill
tronguylabs/m122_3270/teensyibm/model_m_122/m122_3270/teensy
yugo_m/model_m_101ibm/model_m/yugo_m

Notable core changes

Encoder functionality fallback (#20320)

For keyboards who have not yet been migrated to encoder map, a default set of encoder functionality is now enabled, gracefully degrading functionality depending on which flags are enabled by the keyboard:

Additionally, this ensures that builds on QMK Configurator produce some sort of usable encoder mapping.

OLED Driver Improvements (#20331)

The "classic" OLED driver picked up support for additional sizes of OLED displays, support for the SH1107 controller, and SPI-based OLED support.

Other configurable items are available and can be found on the OLED Driver page.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 46); diff --git a/assets/ChangeLog_20230528.md.D9b6sNVW.lean.js b/assets/ChangeLog_20230528.md.Bp2A079h.lean.js similarity index 83% rename from assets/ChangeLog_20230528.md.D9b6sNVW.lean.js rename to assets/ChangeLog_20230528.md.Bp2A079h.lean.js index 0b7df8f8559..39ecd520def 100644 --- a/assets/ChangeLog_20230528.md.D9b6sNVW.lean.js +++ b/assets/ChangeLog_20230528.md.Bp2A079h.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2023 May 28 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20230528.md","filePath":"ChangeLog/20230528.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20230528.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 46); diff --git a/assets/ChangeLog_20230827.md.COX1lvBZ.js b/assets/ChangeLog_20230827.md.C16R-udl.js similarity index 99% rename from assets/ChangeLog_20230827.md.COX1lvBZ.js rename to assets/ChangeLog_20230827.md.C16R-udl.js index edae1d38c5b..fad343711de 100644 --- a/assets/ChangeLog_20230827.md.COX1lvBZ.js +++ b/assets/ChangeLog_20230827.md.C16R-udl.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2023 Aug 27 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20230827.md","filePath":"ChangeLog/20230827.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20230827.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2023 Aug 27 Changelog

Notable Changes

As per last few breaking changes cycles, there have been a lot of behind-the-scenes changes, mainly around migration of configurables into info.json files, cleanup of info.json files, additional layout definitions for keyboards, adding support for general community layouts to keyboards, as well as addressing technical debt.

One thing to note for this release -- qmk/qmk_firmware is no longer accepting PRs for keymaps other than for manufacturer-supported keymaps. User keymap workflow has been documented here for several years. This change is to progressively reduce the maintenance burden on the project, and to allow us to focus on the core features of QMK.

Existing user keymaps and userspace areas will likely be relocated/removed in the future -- non-building keymaps and userspace will be first targets, likely during the new breaking changes cycle. We will provide more information on Discord regarding this initiative as it becomes available.

RGB Matrix optimizations (#21134, #21135)

Most RGB Matrix implementations now check whether or not RGB LED data has changed and skip transmission if it hasn't. This was measured to improve scan frequency in cases of static or infrequently-changing colors.

Audio optimizations (#21496, #21498)

Some audio code relating to "notes" used double datatypes, which are implemented in software floating-point for most ARM microcontrollers. This has been changed to use float datatypes instead, which are implemented in hardware floating-point on most ARM microcontrollers. This change increases performance as well as reduces the firmware size by significant number of bytes.

AVR sees minimal (if any) benefit -- double was interpreted as float on AVR anyway.

Changes Requiring User Action

Updated Keyboard Codebases

Old Keyboard NameNew Keyboard Name
capsunlocked/cu80/v2_ansi/basecapsunlocked/cu80/v2/ansi
capsunlocked/cu80/v2_iso/basecapsunlocked/cu80/v2/iso
handwired/dactyl_manuform/3x5_3handwired/dactyl_minidox
handwired/dactyl_manuform/6x6_kinesishandwired/dactyl_kinesis
handwired/jscotto/scotto36handwired/scottokeebs/scotto36
handwired/jscotto/scotto40handwired/scottokeebs/scotto40
handwired/jscotto/scotto9handwired/scottokeebs/scotto9
handwired/jscotto/scottocmdhandwired/scottokeebs/scottocmd
handwired/jscotto/scottostarterhandwired/scottokeebs/scottostarter
hfdkb/keyboard_sw/k83inland/kb83
idb_60idb/idb_60
kamigakushijaykeeb/kamigakushi
kbdfans/kbd67mkiirgbkbdfans/kbd67/mkiirgb
modelhibm/model_m/modelh
vintacoarse/vinta

Remove encoder in-matrix workaround code (#20389)

Some keyboards "hacked" encoder support into spare slots in the key matrix in order to interoperate with VIA. This workaround is no longer necessary, and the code has been removed. If you have a keyboard that uses this workaround, you will need to update your keymap to use the new Encoder Map API instead.

Unicodemap keycodes rename (#21092)

The Unicodemap keycodes have been renamed:

OldNew
X(i)UM(i)
XP(i,j)UP(i,j)

Remove old OLED API code (#21651)

Old OLED code using ssd1306.c ssd1306.h, and SSD1306OLED and other similar files have been consolidated to use the standard OLED driver. External user keymaps will need to be updated to use the standard OLED driver accordingly.

Driver naming consolidation (#21551, #21558, #21580, #21594, #21624, #21710)

In most circumstances this won't affect users -- only keyboard designers with currently-unmerged boards. The only users affected are people who have modified existing keyboards in order to add/modify haptics, lighting, or bluetooth -- and only if the base keyboard did not configure them already. Driver naming has been modified to be lowercase.

RGBLight (RGBLIGHT_DRIVER / rgblight.driver):

OldNew
WS2812ws2812
APA102apa102

LED Matrix (LED_MATRIX_DRIVER / led_matrix.driver):

OldNew
IS31FL3731is31fl3731
IS31FL3742Ais31fl3742a
IS31FL3743Ais31fl3743a
IS31FL3745is31fl3745
IS31FL3746Ais31fl3746a
CKLED2001ckled2001

RGB Matrix (RGB_MATRIX_DRIVER / rgb_matrix.driver):

OldNew
AW20216aw20216
IS31FL3731is31fl3731
IS31FL3733is31fl3733
IS31FL3736is31fl3736
IS31FL3737is31fl3737
IS31FL3741is31fl3741
IS31FL3742Ais31fl3742a
IS31FL3743Ais31fl3743a
IS31FL3745is31fl3745
IS31FL3746Ais31fl3746a
CKLED2001ckled2001
WS2812ws2812

OLED (OLED_DRIVER):

OldNew
SSD1306ssd1306

Haptic (HAPTIC_DRIVER):

OldNew
DRV2605Ldrv2605l
SOLENOIDsolenoid

Bluetooth (BLUETOOTH_DRIVER / bluetooth.driver):

OldNew
BluefruitLEbluefruit_le
RN42rn42

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 49); diff --git a/assets/ChangeLog_20230827.md.COX1lvBZ.lean.js b/assets/ChangeLog_20230827.md.C16R-udl.lean.js similarity index 83% rename from assets/ChangeLog_20230827.md.COX1lvBZ.lean.js rename to assets/ChangeLog_20230827.md.C16R-udl.lean.js index 9c93916c5f3..874421dcc2a 100644 --- a/assets/ChangeLog_20230827.md.COX1lvBZ.lean.js +++ b/assets/ChangeLog_20230827.md.C16R-udl.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2023 Aug 27 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20230827.md","filePath":"ChangeLog/20230827.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20230827.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 49); diff --git a/assets/ChangeLog_20231126.md.C_9Gu3X6.js b/assets/ChangeLog_20231126.md.Bpwq3Ogr.js similarity index 99% rename from assets/ChangeLog_20231126.md.C_9Gu3X6.js rename to assets/ChangeLog_20231126.md.Bpwq3Ogr.js index d280febccfe..36ff4841161 100644 --- a/assets/ChangeLog_20231126.md.C_9Gu3X6.js +++ b/assets/ChangeLog_20231126.md.Bpwq3Ogr.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2023 November 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20231126.md","filePath":"ChangeLog/20231126.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20231126.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2023 November 26 Changelog

Notable Features

As per last few breaking changes cycles, there have been a lot of behind-the-scenes changes, mainly around consolidation of config into info.json files, cleanup of info.json files, cleaning up driver naming, as well as addressing technical debt.

As a followup to last cycle's notable changes, as qmk/qmk_firmware is no longer accepting PRs for keymaps we're pleased to announce that storing and building keymaps externally from the normal QMK Firmware repository is now possible. This is done through the new External Userspace feature, more details below!

Changes Requiring User Action

Updated Keyboard Codebases

Old Keyboard NameNew Keyboard Name
adm42adm42/rev4
dp3000dp3000/rev1
handwired/dactyl_manuform/dmote/62keyhandwired/dmote
keychron/q0/rev_0130keychron/q0/base
keychron/q0/rev_0131keychron/q0/plus
keychron/q1/ansikeychron/q1v1/ansi
keychron/q1/ansi_encoderkeychron/q1v1/ansi_encoder
keychron/q1/isokeychron/q1v1/iso
keychron/q1/iso_encoderkeychron/q1v1/iso_encoder
keychron/q4/ansi_v1keychron/q4/ansi
kprepublic/bm40hsrgbkprepublic/bm40hsrgb/rev1
matchstickworks/southpadmatchstickworks/southpad/rev2
soda/mangomagic_force/mf17
soda/pocketmagic_force/mf34
studiokestra/line_tklstudiokestra/line_friends_tkl
ymdk/melody96ymdk/melody96/soldered

Notable core changes

External Userspace (#22222)

As mentioned above, the new External Userspace feature allows for keymaps to be stored and built externally from the main QMK Firmware repository. This allows for keymaps to be stored separately -- usually in their own repository -- and for users to be able to maintain and build their keymaps without needing to fork the main QMK Firmware repository.

See the External Userspace documentation for more details.

A significant portion of user keymaps have already been removed from qmk/qmk_firmware and more will follow in coming weeks. You can still recover your keymap from the tag user-keymaps-still-present if required -- a perfect time to migrate to the new External Userspace!

WARNING

This feature is still in beta, and we're looking for feedback on it. Please try it out and let us know what you think -- a new #help-userspace channel has been set up on Discord.

Improve and Cleanup Shutdown callbacks (#21060)

Shutdown callbacks at the keyboard level were never present, preventing safe shutdown sequencing for peripherals such as OLEDs, RGB LEDs, and other devices. This PR adds a new shutdown_kb function, as well as amending shutdown_user, allowing for safe shutdown of peripherals at both keyboard and keymap level.

See the Keyboard Shutdown/Reboot Code documentation for more details.

OLED Force Flush (#20953)

Along with the new shutdown_kb function, a new API oled_render_dirty(bool) function has been added. This allows OLED contents to be written deterministically when supplied with true -- that is, the OLED will be updated immediately, rather than waiting for the next OLED update cycle. This allows for OLEDs to show things such as "BOOTLOADER MODE" and the like if resetting to bootloader from QMK.

Switch statement helpers for keycode ranges (#20059)

Predefined ranges usable within switch statements have been added for groups of similar keycodes, where people who wish to handle entire blocks at once can do so. This allows keymaps to be immune to changes in keycode values, and also allows for more efficient code generation.

The ranges are as follows:

NameMapping
INTERNAL_KEYCODE_RANGEKC_NO ... KC_TRANSPARENT
BASIC_KEYCODE_RANGEKC_A ... KC_EXSEL
SYSTEM_KEYCODE_RANGEKC_SYSTEM_POWER ... KC_SYSTEM_WAKE
CONSUMER_KEYCODE_RANGEKC_AUDIO_MUTE ... KC_LAUNCHPAD
MOUSE_KEYCODE_RANGEKC_MS_UP ... KC_MS_ACCEL2
MODIFIER_KEYCODE_RANGEKC_LEFT_CTRL ... KC_RIGHT_GUI
SWAP_HANDS_KEYCODE_RANGEQK_SWAP_HANDS_TOGGLE ... QK_SWAP_HANDS_ONE_SHOT
MAGIC_KEYCODE_RANGEQK_MAGIC_SWAP_CONTROL_CAPS_LOCK ... QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCK
MIDI_KEYCODE_RANGEQK_MIDI_ON ... QK_MIDI_PITCH_BEND_UP
SEQUENCER_KEYCODE_RANGEQK_SEQUENCER_ON ... QK_SEQUENCER_STEPS_CLEAR
JOYSTICK_KEYCODE_RANGEQK_JOYSTICK_BUTTON_0 ... QK_JOYSTICK_BUTTON_31
PROGRAMMABLE_BUTTON_KEYCODE_RANGEQK_PROGRAMMABLE_BUTTON_1 ... QK_PROGRAMMABLE_BUTTON_32
AUDIO_KEYCODE_RANGEQK_AUDIO_ON ... QK_AUDIO_VOICE_PREVIOUS
STENO_KEYCODE_RANGEQK_STENO_BOLT ... QK_STENO_COMB_MAX
MACRO_KEYCODE_RANGEQK_MACRO_0 ... QK_MACRO_31
BACKLIGHT_KEYCODE_RANGEQK_BACKLIGHT_ON ... QK_BACKLIGHT_TOGGLE_BREATHING
RGB_KEYCODE_RANGERGB_TOG ... RGB_MODE_TWINKLE
QUANTUM_KEYCODE_RANGEQK_BOOTLOADER ... QK_ALT_REPEAT_KEY
KB_KEYCODE_RANGEQK_KB_0 ... QK_KB_31
USER_KEYCODE_RANGEQK_USER_0 ... QK_USER_31

Usage:

c
    switch (keycode) {\n        case KC_A ... KC_EXSEL:\n        case KC_LEFT_CTRL ... KC_RIGHT_GUI:\n        /* do stuff with basic and modifier keycodes */

Becomes:

c
    switch (keycode) {\n        case BASIC_KEYCODE_RANGE:\n        case MODIFIER_KEYCODE_RANGE:\n        /* do stuff with basic and modifier keycodes */

Quantum Painter OLED support (#19997)

Quantum Painter has picked up support for SH1106 displays -- commonly seen as 128x64 OLEDs. Support for both I2C and SPI displays is available.

If you're already using OLED through OLED_DRIVER_ENABLE = yes or equivalent in info.json and wish to use Quantum Painter instead, you'll need to disable the old OLED system, instead enabling Quantum Painter as well as enabling the appropriate SH1106 driver. See the Quantum Painter driver documentation for more details. The old OLED driver is still available, and keymaps do not require migrating to Quantum Painter if you don't want to do so.

RGB/LED lighting driver naming and cleanup (#21890, #21891, #21892, #21903, #21904, #21905, #21918, #21929, #21938, #22004, #22008, #22009, #22071, #22090, #22099, #22126, #22133, #22163, #22200, #22308, #22309, #22311, #22325, #22365, #22379, #22380, #22381, #22383, #22436)

As you can probably tell by the list of PRs just above, there has been a lot of cleanup and consolidation this cycle when it comes to RGB/LED lighting drivers. The number of changes is too large to list here, but the general theme has been focusing on consistency of naming, both of drivers themselves and their respective implementation and configuration. Most changes only affect keyboard designers -- if you find that your in-development keyboard is no longer building due to naming of defines changing, your best bet is to refer to another board already in the repository which has had the changes applied.

Peripheral subsystem enabling (#22253, #22448, #22106)

When enabling peripherals such as I2C, SPI, or Analog/ADC, some required manual inclusion of source files in order to provide driver support, and in some cases, when multiple drivers were using the same underlying peripheral, files were being added to the build multiple times.

Most systems requiring other peripherals now mark their respective dependencies as "required", allowing the build system to check whether peripherals are necessary before including them in the build rather than having each location enable them manually.

For a concrete example, users or keyboard designers who previously added SRC += analog.c in order to allow for analog readings via an ADC now should specify ANALOG_DRIVER_REQUIRED = yes instead. The full list of added options is as follows:

New optionOld Equivalent
ANALOG_DRIVER_REQUIRED = yesSRC += analog.c
APA102_DRIVER_REQUIRED = yesSRC += apa102.c
I2C_DRIVER_REQUIRED = yesSRC += i2c_master.c or QUANTUM_LIB_SRC += i2c_master.c
SPI_DRIVER_REQUIRED = yesSRC += spi_master.c or QUANTUM_LIB_SRC += spi_master.c
UART_DRIVER_REQUIRED = yesSRC += uart.c
WS2812_DRIVER_REQUIRED = yesSRC += ws2812.c

NKRO on V-USB boards (#22398)

NKRO is now available for ATmega32A and 328P-based keyboards (including PS2AVRGB/Bootmapper boards), thanks to some internal refactoring and cleanup. To enable it, the process is the same as always - add NKRO_ENABLE = yes to your rules.mk, then assign and press the NK_TOGG keycode to switch modes.

Full changelist

Core:

CLI:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 51); diff --git a/assets/ChangeLog_20231126.md.C_9Gu3X6.lean.js b/assets/ChangeLog_20231126.md.Bpwq3Ogr.lean.js similarity index 83% rename from assets/ChangeLog_20231126.md.C_9Gu3X6.lean.js rename to assets/ChangeLog_20231126.md.Bpwq3Ogr.lean.js index e233cb887a5..161b26f59f4 100644 --- a/assets/ChangeLog_20231126.md.C_9Gu3X6.lean.js +++ b/assets/ChangeLog_20231126.md.Bpwq3Ogr.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2023 November 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20231126.md","filePath":"ChangeLog/20231126.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20231126.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 51); diff --git a/assets/ChangeLog_20240225.md.BHnhJkLK.js b/assets/ChangeLog_20240225.md.Da92cP02.js similarity index 99% rename from assets/ChangeLog_20240225.md.BHnhJkLK.js rename to assets/ChangeLog_20240225.md.Da92cP02.js index 50f046972f2..c9a79165a76 100644 --- a/assets/ChangeLog_20240225.md.BHnhJkLK.js +++ b/assets/ChangeLog_20240225.md.Da92cP02.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2024 February 25 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20240225.md","filePath":"ChangeLog/20240225.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20240225.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2024 February 25 Changelog

Notable Features

0.24.0 is mainly a maintenance release of QMK Firmware -- as per last few breaking changes cycles, there have been a lot of behind-the-scenes changes, mainly:

Changes Requiring User Action

Windows Driver Changes (QMK Toolbox 0.3.0 Release)

Flashing keyboards that target atmel-dfu or qmk-dfu on Windows using qmk flash or QMK Toolbox have traditionally used libusb for access to the DFU USB device. Since QMK Toolbox 0.3.0, this has changed to WinUSB.

If you update QMK Toolbox or update QMK MSYS, you may find that flashing Atmel DFU keyboards no longer functions as intended. If you strike such issues when flashing new firmware, you will need to replace the libusb driver with WinUSB using Zadig. You can follow the Recovering from Installation to Wrong Device instructions to replace the driver associated with the Atmel DFU bootloader, skipping the section about removal as Zadig will safely replace the driver instead. Please ensure your keyboard is in bootloader mode and has libusb as the existing driver before attempting to use Zadig to replace the driver. If instead you see HidUsb you're not in bootloader mode and should not continue with driver replacement.

Updated Keyboard Codebases

One note with updated keyboard names -- historical keyboard names are still considered valid when using External Userspace for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository.

Old Keyboard NameNew Keyboard Name
enter67kezewa/enter67
enter80kezewa/enter80
epoch80kbdfans/epoch80
eu_isolationp3d/eu_isolation
flygone60/rev3shandoncodes/flygone60/rev3
hub16joshajohnson/hub16
hub20joshajohnson/hub20
jm60kbdfans/jm60
kira75kira/kira75
kira80kira/kira80
kmackbdmania/kmac
kmac_padkbdmania/kmac_pad
kudox/columnerkumaokobo/kudox/columner
kudox/rev1kumaokobo/kudox/rev1
kudox/rev2kumaokobo/kudox/rev2
kudox/rev3kumaokobo/kudox/rev3
kudox_full/rev1kumaokobo/kudox_full/rev1
kudox_gamekumaokobo/kudox_game
kudox_game/rev1kumaokobo/kudox_game/rev1
kudox_game/rev2kumaokobo/kudox_game/rev2
laser_ninja/pumpkin_padlaser_ninja/pumpkinpad
late9/rev1rookiebwoy/late9/rev1
leftysmoll/lefty
lefty/rev1smoll/lefty/rev1
lefty/rev2smoll/lefty/rev2
lpadlaneware/lpad
lw67laneware/lw67
lw75laneware/lw75
macro1laneware/macro1
macro3handwired/macro3
miniaxekagizaraya/miniaxe
mino/hotswapshandoncodes/mino/hotswap
mino_plus/hotswapshandoncodes/mino_plus/hotswap
mino_plus/solderedshandoncodes/mino_plus/soldered
mnk1800smonokei/mnk1800s
mnk50monokei/mnk50
mnk75monokei/mnk75
moonlanderzsa/moonlander
neopad/rev1rookiebwoy/neopad/rev1
pico/65keyskumaokobo/pico/65keys
pico/70keyskumaokobo/pico/70keys
pw88smoll/pw88
q4zp3d/q4z
raindroplaneware/raindrop
redox_wredox/wireless
riot_padshandoncodes/riot_pad
spaceyp3d/spacey
synapsep3d/synapse
tw40p3d/tw40
w1_atgeonworks/w1_at
z12zigotica/z12
z34zigotica/z34

Notable core changes

Renaming Arduino-style GPIO pin functions (#23085, #23093)

QMK has long used Arduino-style GPIO naming conventions. This has been confusing for users, as over time they've had new variations added, as well as users mistakenly thinking that QMK supports the rest of the Arduino ecosystem.

The decision was made to rename the GPIO manipulation functions with ones matching QMK Firmware's code styling.

OldNew
setPinInput(pin)gpio_set_pin_input(pin)
setPinInputHigh(pin)gpio_set_pin_input_high(pin)
setPinInputLow(pin)gpio_set_pin_input_low(pin)
setPinOutput(pin)gpio_set_pin_output(pin)
setPinOutputPushPull(pin)gpio_set_pin_output_push_pull(pin)
setPinOutputOpenDrain(pin)gpio_set_pin_output_open_drain(pin)
writePinHigh(pin)gpio_write_pin_high(pin)
writePinLow(pin)gpio_write_pin_low(pin)
writePin(pin, level)gpio_write_pin(pin, level)
readPin(pin)gpio_read_pin(pin)
togglePin(pin)gpio_toggle_pin(pin)

I2C driver API Changes (#22905)

Much like the GPIO refactoring, I2C APIs were also updated to conform to QMK naming standards. This is largely irrelevant to people using subsystem abstractions such as touchpads or RGB lighting, and only affects people manually communicating with other peripherals.

Old APINew API
i2c_readReg()i2c_read_register()
i2c_readReg16()i2c_read_register16()
i2c_writeReg()i2c_write_register()
i2c_writeReg16()i2c_write_register16()

Renaming Bootmagic Lite => Bootmagic (#22970, #22979)

Bootmagic "Lite" had no real meaning once the historical Bootmagic "Full" was deprecated and removed. Any references to Bootmagic Lite should now just refer to Bootmagic. We hope we got the majority of the code and the documentation, so if you find any more, let us know!

Threshold for automatic mouse layer activation (#21398)

In some cases, accidental automatic activation of the mouse layer made it difficult to continue typing, such as when brushing across a trackball. AUTO_MOUSE_THRESHOLD is now a configurable option in config.h which allows for specifying what the movement threshold is before automatically activating the mouse layer.

DIP Switch Mapping (#22543)

Much like Encoder Mapping, DIP Switch Mapping allows for specifying a table of actions to execute when a DIP switch state changes. See the DIP Switch Documentation for more information.

c
#if defined(DIP_SWITCH_MAP_ENABLE)\nconst uint16_t PROGMEM dip_switch_map[NUM_DIP_SWITCHES][NUM_DIP_STATES] = {\n    DIP_SWITCH_OFF_ON(DF(0), DF(1)),\n    DIP_SWITCH_OFF_ON(EC_NORM, EC_SWAP)\n};\n#endif

Quantum Painter updates (#18521, #20645, #22358)

Quantum Painter picked up support for the following:

Quantum Painter now supports the majority of common OLED panels supported by the basic OLED driver, so if you're using an ARM-based board you may find Quantum Painter a much more feature-rich API in comparison.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Bugs:

', 43); diff --git a/assets/ChangeLog_20240225.md.BHnhJkLK.lean.js b/assets/ChangeLog_20240225.md.Da92cP02.lean.js similarity index 83% rename from assets/ChangeLog_20240225.md.BHnhJkLK.lean.js rename to assets/ChangeLog_20240225.md.Da92cP02.lean.js index 264246a823f..3b39653d0c3 100644 --- a/assets/ChangeLog_20240225.md.BHnhJkLK.lean.js +++ b/assets/ChangeLog_20240225.md.Da92cP02.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2024 February 25 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20240225.md","filePath":"ChangeLog/20240225.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20240225.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 43); diff --git a/assets/ChangeLog_20240526.md.BV-o3lF_.js b/assets/ChangeLog_20240526.md.C85VHRrA.js similarity index 99% rename from assets/ChangeLog_20240526.md.BV-o3lF_.js rename to assets/ChangeLog_20240526.md.C85VHRrA.js index 745adb1a5cc..15b34d8c587 100644 --- a/assets/ChangeLog_20240526.md.BV-o3lF_.js +++ b/assets/ChangeLog_20240526.md.C85VHRrA.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2024 May 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20240526.md","filePath":"ChangeLog/20240526.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20240526.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2024 May 26 Changelog

Notable Features

May 2024 brings about another heavy maintenance release of QMK. Of the 209 PRs created this breaking changes cycle against the develop branch, 174 behind-the-scenes PRs (83%!) were aimed at converting, consolidating, and cleaning up keyboards and their configuration data. Not the most glamorous work, but it means QMK is in a much more manageable spot than what it was 3 months prior. The work steadily continues!

Changes Requiring User Action

Updated Keyboard Codebases

One note with updated keyboard names -- historical keyboard names are still considered valid when using External Userspace for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository.

Old Keyboard NameNew Keyboard Name
adkb96adkb96/rev1
canary/canary60rgbcanary/canary60rgb/v1
handwired/meck_tklhandwired/meck_tkl/blackpill_f401
handwired/qc60handwired/qc60/proto
handwired/stef9998/split_5x7handwired/stef9998/split_5x7/rev1
juncojunco/rev1
keaboardkeaboard/rev1
kprepublic/jj40kprepublic/jj40/rev1
kprepublic/jj50kprepublic/jj50/rev1
melgeek/mj65melgeek/mj65/rev3
melgeek/mojo68melgeek/mojo68/rev1
melgeek/mojo75melgeek/mojo75/rev1
melgeek/tegicmelgeek/tegic/rev1
melgeek/z70ultramelgeek/z70ultra/rev1
miiiw/blackio83miiiw/blackio83/rev_0100
murcielagomurcielago/rev1
polillapolilla/rev1
qwertyydoxqwertyydox/rev1
spaceholdings/nebula68bspaceholdings/nebula68b/solder
splittysplitty/rev1
xiudi/xd004xiudi/xd004/v1

Remove deprecated quantum keycodes (#23407)

A bunch of legacy keycodes have been removed -- check the affected keycodes if you run into compilation problems, as it'll show you what the problematic keycodes should be replaced with.

The latest of these were officially deprecated within QMK in the August 2023 breaking changes -- the new keycodes are the way forward.

P3D Spacey Layout Updates (#23329)

This PR removed the LAYOUT macro that was configured for the Spacey. If you have a keymap for this keyboard, you will need to update your keymap using the following steps:

  1. Change your layout macro to LAYOUT_all.
  2. Remove the two KC_NO keycodes following the Space and Delete keys on the bottom row.
  3. Move the keycode for the encoder pushbutton (customarily Mute) to the end of the top row, after the customary Backspace key.
  4. Move the keycode for the Right Arrow to the end of the Shift row, after the Down Arrow key.

MechKeys ACR60 Layout Updates (#23309)

This PR removed and changed some of the layouts that were configured for the ACR60. If you use one of the following layouts, you will need to update your keymap:

LAYOUT_hhkb

  1. Change your layout macro to LAYOUT_60_hhkb.
  2. Remove any keycodes for the key between Left Shift and QWERTY Z.

LAYOUT_true_hhkb

  1. Change your layout macro to LAYOUT_60_true_hhkb.
  2. Remove any keycodes for the key between Left Shift and QWERTY Z.

LAYOUT_directional

  1. Change your layout macro to LAYOUT_60_ansi_arrow_split_bs.
  2. Remove any keycodes for the key between Left Shift and QWERTY Z.
  3. Remove any keycodes for the keys immediately before and after the 1.25u key of Split Spacebar.

If you need split spacebars, you may implement LAYOUT_60_ansi_arrow_split_space_split_bs and change your layout to it, removing the keycode between Left Shift and QWERTY Z.

LAYOUT_mitchsplit

  1. Use LAYOUT_60_ansi_split_space_split_rshift.

Notable core changes

Introduction of keyboard.json (22891)

One longer term goal of QMK is increased maintainability. As part of the continued push towards Data Driven Configuration, the build system has been updated to simplify the existing codebase, and power future workflows.

The keyboard.json configuration file allows the support of a single data file for keyboard level config.

Additionally,

Backwards compatibility of the old system has been maintained, but will be removed in a future breaking changes cycle.

Refactor ChibiOS USB endpoints to be fully async (#21656)

For most users, this change will mean suspend and resume on ARM-based boards works correctly. Others will notice that their keyboard now works correctly in BIOS/UEFI.

Essentially, changes were made in the internals of how QMK interacts with USB for ARM-based devices. Before this change, whenever a packet was attempted to be sent from the keyboard to the host machine, QMK would wait for the transmission to complete. After this change, those packets are queued and sent when opportune; this results in much better "correctness" as far as the USB protocol is concerned, and means far less likelihood of failure scenarios such as "stuck keys" or "random lockups" and the like.

Compliance checks were run against QMK firmwares for the most popular ARM microcontrollers, as well as suspend/resume tests. As far as we can tell, a whole host of hard-to-reproduce issues are mitigated by this change.

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

Migration of VIA keymaps to VIA team control

The QMK team has been in discussion with the VIA maintainers and all VIA-related keymaps in the qmk_firmware repository will transition to a qmk_userspace-style repository under the VIA team's control at the end of the next breaking changes period. This allows the VIA team to support many more custom keyboard configurations, as well as reduces the turnaround time for any changes to the VIA protocol they wish to make.

At the end of the breaking changes cycle ending 2024-08-25, VIA-enabled keymaps will no longer be accepted into the QMK repository. At the time of migration, any open PRs against qmk_firmware which include new VIA-related keymaps will be subsequently be asked to remove those keymaps and instead raise a PR against the userspace repository containing all VIA keymaps.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Bugs:

', 54); diff --git a/assets/ChangeLog_20240526.md.BV-o3lF_.lean.js b/assets/ChangeLog_20240526.md.C85VHRrA.lean.js similarity index 83% rename from assets/ChangeLog_20240526.md.BV-o3lF_.lean.js rename to assets/ChangeLog_20240526.md.C85VHRrA.lean.js index aad9b086371..cde716c054b 100644 --- a/assets/ChangeLog_20240526.md.BV-o3lF_.lean.js +++ b/assets/ChangeLog_20240526.md.C85VHRrA.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2024 May 26 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20240526.md","filePath":"ChangeLog/20240526.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20240526.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 54); diff --git a/assets/ChangeLog_20240825.md.CPd_a589.js b/assets/ChangeLog_20240825.md.Bd_7OVSi.js similarity index 99% rename from assets/ChangeLog_20240825.md.CPd_a589.js rename to assets/ChangeLog_20240825.md.Bd_7OVSi.js index 10a2a8231c6..06f59f77fda 100644 --- a/assets/ChangeLog_20240825.md.CPd_a589.js +++ b/assets/ChangeLog_20240825.md.Bd_7OVSi.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2024 August 25 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20240825.md","filePath":"ChangeLog/20240825.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20240825.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2024 August 25 Changelog

Notable Features

August 2024 brings another maintenance release of QMK. Almost all PRs this cycle were to do with cleanup or re-organization of existing features and code.

One key item is that there are no longer any via-enabled keymaps in the QMK repository -- these have all transitioned to an External Userspace repository under the VIA team's control. Going forward, all PRs to qmk_firmware must not contain via keymaps; these should instead be redirected to the VIA QMK Userspace repository.

Changes Requiring User Action

Updated Keyboard Codebases

One note with updated keyboard names -- historical keyboard names are still considered valid when using External Userspace for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository.

Old Keyboard NameNew Keyboard Name
dnworks/9973dnworks/tkl87
maple_computing/lets_split_eh/ehmaple_computing/lets_split_eh
planck/ez/basezsa/planck_ez/base

SparkFun Pro Micro RP2040 converter renamed (#24192)

The converter for the SparkFun Pro Micro RP2040 has been renamed.

OldNew
promicro_rp2040sparkfun_rp2040

This change was made to avoid confusion between the clones named ProMicro RP2040 and the SparkFun Pro Micro RP2040. The clones should be using the rp2040_ce option.

Key Override keymap.c signature change (#24120)

Changes were made to key overrides in order to hook them into the keymap introspection system.

If you're using key overrides, your keymap.c will need a change to the signature of your list of key overrides, as well as removing the NULL terminator.

For example, you'll need to change existing code from (note the highlighted lines):

c
const key_override_t **key_overrides = (const key_override_t *[]){\n    &my_override_1,\n    &my_override_2,\n    NULL\n};

to:

c
const key_override_t *key_overrides[] = {\n    &my_override_1,\n    &my_override_2,\n};

ADNS9800 and PMW33xx firmware upload now opt-in (#24001)

Due to ambiguity with licensing compatibility, QMK has made the firmware ROM uploads for the ADNS9800 and PMW33xx lines of pointing device sensors temporarily opt-in with the view to removing them. Historically they were included by default, but as of this PR this is now no longer the case.

Please get in touch with the QMK team if your sensor no longer functions without the firmware upload -- so far we've tested each device type and they still seem to function without a new firmware, but this has not been a 100% exhaustive validation.

To re-enable firmware upload for your own builds, add the following to your keymap's config.h:

SensorDefine
ADNS9800#define ADNS9800_UPLOAD_SROM
PMW33xx#define PMW33XX_UPLOAD_SROM

Note

If no issues arise during this current breaking changes cycle, these sensor firmware ROMs will be removed from QMK entirely.

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

Migration of VIA keymaps to VIA team control

Last breaking changes cycle, the QMK team informed that via keymaps are moving to the control of the VIA team. As of this merge, any via-enabled keymaps should now be PR'ed to the VIA QMK Userspace repository.

Any existing or newly-opened PRs against qmk_firmware will now be asked to remove any via-enabled keymaps from their submissions.

ADNS9800 and PMW33xx sensor firmware ROM removal

As mentioned above, there's license compatibility issues between QMK and the firmware blobs historically uploaded for the ADNS9800 and PMW33xx sensors. This notice is to inform users that these firmware blobs will almost certainly be removed from QMK in the next breaking changes merge.

As previously noted this does not seem to have any detrimental effect to any of those devices, as they seem to include firmware on-chip without requiring one to be uploaded. Please get in touch with the QMK team on Discord if your sensor is no longer functional.

Full changelist

Core:

CLI:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 46); diff --git a/assets/ChangeLog_20240825.md.CPd_a589.lean.js b/assets/ChangeLog_20240825.md.Bd_7OVSi.lean.js similarity index 83% rename from assets/ChangeLog_20240825.md.CPd_a589.lean.js rename to assets/ChangeLog_20240825.md.Bd_7OVSi.lean.js index 62aa00b1fdb..7a96a59a732 100644 --- a/assets/ChangeLog_20240825.md.CPd_a589.lean.js +++ b/assets/ChangeLog_20240825.md.Bd_7OVSi.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2024 August 25 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20240825.md","filePath":"ChangeLog/20240825.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20240825.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 46); diff --git a/assets/ChangeLog_20241124.md.CfUVyQRe.js b/assets/ChangeLog_20241124.md.D0sBbIwe.js similarity index 99% rename from assets/ChangeLog_20241124.md.CfUVyQRe.js rename to assets/ChangeLog_20241124.md.D0sBbIwe.js index 89373af27ca..731c8a9be2b 100644 --- a/assets/ChangeLog_20241124.md.CfUVyQRe.js +++ b/assets/ChangeLog_20241124.md.D0sBbIwe.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2024 November 24 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20241124.md","filePath":"ChangeLog/20241124.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20241124.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2024 November 24 Changelog

Notable Features

November 2024 brings a relatively lightweight QMK release. As with previous cycles, almost all PRs were related to cleanup or re-organization of aspects of QMK.

One notable item is the removal of arm_atsam -- this affects users with massdrop/ctrl or massdrop/alt keyboards. These have no current replacement, but support for an alternative to the arm_atsam backend is nearing completion. Unfortunately the alternative backend didn't make this quarter's list of merges, so there's a temporary removal of these boards. Users who need to build for these targets should stay on the 0.26.x version of QMK until these boards have been restored.

Changes Requiring User Action

Updated Keyboard Codebases

One note with updated keyboard names -- historical keyboard names are still considered valid when using External Userspace for builds. If you're already using External Userspace, you do not need to move your keymap inside your repository.

Old Keyboard NameNew Keyboard Name
saevus/corconcreteflowers/cor
saevus/cor_tklconcreteflowers/cor_tkl

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

RGB Keycode Overhaul (#23679, #24484, #24490)

RGB keycodes have been reworked to allow for both rgblight and rgb_matrix to coexist for the handful of boards in the repo with both enabled. Previously, RGB_xxx style keycodes were available, but now for rgblight we have UG_xxx (underglow), and RM_xxx for rgb_matrix. Default keymaps have been updated to reflect whichever system the respective board enables.

Longer-term, RGB_xxx style keycodes will be removed, but for now they act as if they're UG_xxx, and UG_xxx keycodes act upon both rgblight and rgb_matrix simultaneously. Put simply, the existing RGB_xxx keycodes act as they always have, giving users time to transition across to the new keycodes instead.

ADNS9800 and PMW33xx sensor firmware ROM removal (#24428)

Following on from the last Breaking Changes cycle, Binary blobs for optical sensors have been removed from the QMK codebase. Hooks allowing users to supply their own have been put in place; users wishing to source firmware blobs and integrate them into their keymap may do so. Doing so renders their firmware un-distributable due to licensing incompatibility with the GPL -- as such user firmware containing such blobs must not be distributed.

Please get in touch with the QMK team on Discord if your sensor is no longer functional.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 31); diff --git a/assets/ChangeLog_20241124.md.CfUVyQRe.lean.js b/assets/ChangeLog_20241124.md.D0sBbIwe.lean.js similarity index 83% rename from assets/ChangeLog_20241124.md.CfUVyQRe.lean.js rename to assets/ChangeLog_20241124.md.D0sBbIwe.lean.js index 4fa4d715d6e..93937bd91c0 100644 --- a/assets/ChangeLog_20241124.md.CfUVyQRe.lean.js +++ b/assets/ChangeLog_20241124.md.D0sBbIwe.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2024 November 24 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20241124.md","filePath":"ChangeLog/20241124.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20241124.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 31); diff --git a/assets/ChangeLog_20250223.md.DHu3Q52U.js b/assets/ChangeLog_20250223.md.wrANLclb.js similarity index 99% rename from assets/ChangeLog_20250223.md.DHu3Q52U.js rename to assets/ChangeLog_20250223.md.wrANLclb.js index 91e338bebad..1ce29779423 100644 --- a/assets/ChangeLog_20250223.md.DHu3Q52U.js +++ b/assets/ChangeLog_20250223.md.wrANLclb.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2025 February 23 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20250223.md","filePath":"ChangeLog/20250223.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20250223.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2025 February 23 Changelog

Notable Features

Community Modules (#24848)

Community Modules are a feature within QMK which allows code to be implemented by third parties, making it available for other people to import into their own builds.

These modules can provide implementations which override or enhance normal QMK processing; initialization, key processing, suspend, and shutdown are some of the provided hooks which modules may currently implement.

See the Community Modules documentation for more information, including the full list of available hooks.

First-class support for External Userspace is included out of the box, so there's even more reason to take the plunge and convert your keymap builds to a userspace repository!

TIP

An example with a new keycode and some debugging information in the QMK repository lives here, and a community module port of getreuer's SOCD Cleaner can be found in tzarc's modules repo.

Chordal Hold (#24560)

Chordal Hold implements, by default, an "opposite hands" rule. Suppose a tap-hold key is pressed and then, before the tapping term, another key is pressed. With Chordal Hold, the tap-hold key is settled as tapped if the two keys are on the same hand.

Chordal Hold may be useful to avoid accidental modifier activation with mod-taps, particularly in rolled keypresses when using home row mods.

See the Chordal Hold documentation for more information.

Changes Requiring User Action

Updated Keyboard Codebases

Old Keyboard NameNew Keyboard Name
cxt_studiocxt_studio/12e4
ergodox_stm32handwired/ergodox_stm32
ploopyco/mouseploopyco/mouse/rev1_002
ploopyco/trackball/rev1ploopyco/trackball/rev1_004
ymdk/id75ymdk/id75/f103

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

DEFAULT_FOLDER removal (#24836)

DEFAULT_FOLDER was originally introduced to work around limitations within the build system. Parent folders containing common configuration would create invalid build targets.

With the introduction of keyboard.json as a configuration file, the build system now has a consistent method to detect build targets. The DEFAULT_FOLDER functionality is now redundant and the intent is for rules.mk to become pure configuration.

Backwards compatibility of build targets has been maintained where possible.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 36); diff --git a/assets/ChangeLog_20250223.md.DHu3Q52U.lean.js b/assets/ChangeLog_20250223.md.wrANLclb.lean.js similarity index 83% rename from assets/ChangeLog_20250223.md.DHu3Q52U.lean.js rename to assets/ChangeLog_20250223.md.wrANLclb.lean.js index aecd1b36133..d61fbb21985 100644 --- a/assets/ChangeLog_20250223.md.DHu3Q52U.lean.js +++ b/assets/ChangeLog_20250223.md.wrANLclb.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2025 February 23 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20250223.md","filePath":"ChangeLog/20250223.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20250223.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 36); diff --git a/assets/ChangeLog_20250525.md.CmDA_OgC.js b/assets/ChangeLog_20250525.md.Bp9ysS79.js similarity index 99% rename from assets/ChangeLog_20250525.md.CmDA_OgC.js rename to assets/ChangeLog_20250525.md.Bp9ysS79.js index ac26f35a9ac..dfc9f64dd7f 100644 --- a/assets/ChangeLog_20250525.md.CmDA_OgC.js +++ b/assets/ChangeLog_20250525.md.Bp9ysS79.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2025 May 25 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20250525.md","filePath":"ChangeLog/20250525.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20250525.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2025 May 25 Changelog

Notable Features

Flow Tap (#25125)

Adds Flow Tap as a core tap-hold option to disable HRMs during fast typing, aka Global Quick Tap, Require Prior Idle.

Flow Tap modifies mod-tap MT and layer-tap LT keys such that when pressed within a short timeout of the preceding key, the tapping behavior is triggered. It basically disables the hold behavior during fast typing, creating a "flow of taps." It also helps to reduce the input lag of tap-hold keys during fast typing, since the tapped behavior is sent immediately.

See the Flow Tap documentation for more information.

Community Modules 1.1.1 (#25050, #25187)

Version 1.1.1 introduces support for module defined RGB matrix effects and indicator callbacks, as well as pointing and layer state callbacks.

See the Community Modules documentation for more information, including the full list of available hooks.

Changes Requiring User Action

Updated Keyboard Codebases

Old Keyboard NameNew Keyboard Name
chewchew/split
deemen17/de60fsdeemen17/de60/r1
keyten/kt60hs_tkeyten/kt60hs_t/v1
plywrks/ply8xplywrks/ply8x/solder
rookiebwoy/late9/rev1ivndbt/late9/rev1
rookiebwoy/neopad/rev1ivndbt/neopad/rev1

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

Deprecation of qmk generate-compilation-database (#25237)

This command has been deprecated as it cannot take into account configurables such as converters or environment variables normally specified on the command line; please use the --compiledb flag with qmk compile instead.

Deprecation of usb.force_nkro/FORCE_NKRO (#25262)

Unpicking the assumption that only USB can do NKRO, forcing of NKRO on every boot has been deprecated. As this setting persists, it produces unnecessary user confusion when the various NKRO keycodes (for example NK_TOGG) do not behave as expected.

The new defaults can be configured in the following ways:

', 19); diff --git a/assets/ChangeLog_20250525.md.CmDA_OgC.lean.js b/assets/ChangeLog_20250525.md.Bp9ysS79.lean.js similarity index 99% rename from assets/ChangeLog_20250525.md.CmDA_OgC.lean.js rename to assets/ChangeLog_20250525.md.Bp9ysS79.lean.js index 16edd67c92f..02f929ab47a 100644 --- a/assets/ChangeLog_20250525.md.CmDA_OgC.lean.js +++ b/assets/ChangeLog_20250525.md.Bp9ysS79.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2025 May 25 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20250525.md","filePath":"ChangeLog/20250525.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20250525.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 19); diff --git a/assets/ChangeLog_20250831.md.BslEheIL.js b/assets/ChangeLog_20250831.md.DpPyR9C0.js similarity index 99% rename from assets/ChangeLog_20250831.md.BslEheIL.js rename to assets/ChangeLog_20250831.md.DpPyR9C0.js index 7dd3b59759c..18499063f95 100644 --- a/assets/ChangeLog_20250831.md.BslEheIL.js +++ b/assets/ChangeLog_20250831.md.DpPyR9C0.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2025 Aug 31 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20250831.md","filePath":"ChangeLog/20250831.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20250831.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2025 Aug 31 Changelog

Changes Requiring User Action

Updated Keyboard Codebases

Old Keyboard NameNew Keyboard Name
bastardkb/charybdis/3x5/v2/elitecbastardkb/charybdis/3x5/elitec
bastardkb/charybdis/3x5/v2/splinky_2bastardkb/charybdis/3x5/elitec
bastardkb/charybdis/3x5/v2/splinky_3bastardkb/charybdis/3x5/elitec
bastardkb/charybdis/3x5/v2/stemcellbastardkb/charybdis/3x5/elitec
bastardkb/charybdis/3x6/v2/elitecbastardkb/charybdis/3x6/elitec
bastardkb/charybdis/3x6/v2/splinky_2bastardkb/charybdis/3x6/elitec
bastardkb/charybdis/3x6/v2/splinky_3bastardkb/charybdis/3x6/elitec
bastardkb/charybdis/3x6/v2/stemcellbastardkb/charybdis/3x6/elitec
bastardkb/charybdis/4x6/v2/elitecbastardkb/charybdis/4x6/elitec
bastardkb/charybdis/4x6/v2/splinky_2bastardkb/charybdis/4x6/elitec
bastardkb/charybdis/4x6/v2/splinky_3bastardkb/charybdis/4x6/elitec
bastardkb/charybdis/4x6/v2/stemcellbastardkb/charybdis/4x6/elitec
bastardkb/dilemma/3x5_2/splinkybastardkb/dilemma/3x5_2/promicro
bastardkb/scylla/v2/elitecbastardkb/scylla/promicro
bastardkb/scylla/v2/splinky_2bastardkb/scylla/promicro
bastardkb/scylla/v2/splinky_3bastardkb/scylla/promicro
bastardkb/scylla/v2/stemcellbastardkb/scylla/promicro
bastardkb/skeletyl/v2/elitecbastardkb/skeletyl/promicro
bastardkb/skeletyl/v2/splinky_2bastardkb/skeletyl/promicro
bastardkb/skeletyl/v2/splinky_3bastardkb/skeletyl/promicro
bastardkb/skeletyl/v2/stemcellbastardkb/skeletyl/promicro
bastardkb/tbkmini/v2/elitecbastardkb/tbkmini/promicro
bastardkb/tbkmini/v2/splinky_2bastardkb/tbkmini/promicro
bastardkb/tbkmini/v2/splinky_3bastardkb/tbkmini/promicro
bastardkb/tbkmini/v2/stemcellbastardkb/tbkmini/promicro
helix/rev2helix/beta
helix/rev3_4rowshelix/rev3
helix/rev3_5rowshelix/rev3
kprepublic/cstc40/daughterboardkprepublic/cstc40/rev1
kprepublic/cstc40/single_pcbkprepublic/cstc40/rev2
ll3macorn/bongopadll3ma/bongopad
novelkeys/nk65/basenovelkeys/nk65/v1
tweetydabird/lotus58/elite_ctweetydabird/lotus58
tweetydabird/lotus58/nanoboottweetydabird/lotus58
tweetydabird/lotus58/promicrotweetydabird/lotus58
tweetydabird/lotus58/rp2040_cetweetydabird/lotus58

Mitigate VIA keylogger security issues #25414

VIA's keyboard matrix testing functionality, which allows users to identify active key presses, has been identified as a potential security concern by community members and security researchers. This feature has been demonstrated to enable unauthorized keystroke capture, with documented examples showing how malicious scripts could exploit this capability to create keyloggers. A recent security assessment revealed that user credentials could be compromised by exploiting the matrix testing function combined with VIA's keycode assignment queries. In this attack scenario, a script could remain active during a locked session and capture password input when users authenticate upon return.

The QMK team notified the VIA team of this security vulnerability on May 17, 2022, and made multiple subsequent attempts to coordinate a mitigation strategy. Despite repeated outreach, the VIA team has provided no acknowledgment or response to these security concerns. Given the severity of the potential security implications and the lack of engagement from the VIA team, the QMK team has unilaterally implemented a security enhancement that modifies the keyboard matrix testing functionality to prevent the reporting of key press events. This change prioritizes user security and data protection over potential feature compatibility concerns within VIA.

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

DEFAULT_FOLDER removal (#23281)

DEFAULT_FOLDER was originally introduced to work around limitations within the build system. Parent folders containing common configuration would create invalid build targets.

With the introduction of keyboard.json as a configuration file, the build system now has a consistent method to detect build targets. The DEFAULT_FOLDER functionality is now removed with the intent that rules.mk is now pure configuration.

Backwards compatibility of build targets has been maintained where possible.

Converter Pin Compatible updates (#20330)

Converter support has been further limited to only function if a keyboard declares that it is compatible.

This can be configured in the following ways:

', 16); diff --git a/assets/ChangeLog_20250831.md.BslEheIL.lean.js b/assets/ChangeLog_20250831.md.DpPyR9C0.lean.js similarity index 93% rename from assets/ChangeLog_20250831.md.BslEheIL.lean.js rename to assets/ChangeLog_20250831.md.DpPyR9C0.lean.js index 11de3b7e89c..20ea9984766 100644 --- a/assets/ChangeLog_20250831.md.BslEheIL.lean.js +++ b/assets/ChangeLog_20250831.md.DpPyR9C0.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2025 Aug 31 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20250831.md","filePath":"ChangeLog/20250831.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20250831.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 16); diff --git a/assets/ChangeLog_20251130.md.CObm5zL3.js b/assets/ChangeLog_20251130.md.DDM7x0Cl.js similarity index 99% rename from assets/ChangeLog_20251130.md.CObm5zL3.js rename to assets/ChangeLog_20251130.md.DDM7x0Cl.js index 5a7cd3035db..c11104880de 100644 --- a/assets/ChangeLog_20251130.md.CObm5zL3.js +++ b/assets/ChangeLog_20251130.md.DDM7x0Cl.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2025 Nov 30 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20251130.md","filePath":"ChangeLog/20251130.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20251130.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2025 Nov 30 Changelog

Notable Features

Speculative Hold option for mod-taps: hold mods instantly while unsettled #25572

Speculative Hold makes mod-tap keys more responsive by applying the modifier instantly on keydown, before the tap-hold decision is made. This is especially useful for actions like Shift+click and Ctrl+scroll wheel with an external mouse, which can feel laggy with standard mod-taps.

The firmware holds the modifier speculatively. Once the key's behavior is settled:

Speculative Hold applies the modifier early but does not change the underlying tap-hold decision logic. Speculative Hold is compatible to use in combination with any other tap-hold options.

see the Speculative Hold documentation for more information.

Changes Requiring User Action

Updated Keyboard Codebases

Old Keyboard NameNew Keyboard Name
0xcb/splaytoraid/32u40xcb/splaytoraid
0xcb/splaytoraid/rp2040_ce0xcb/splaytoraid
1upkeyboards/sweet16v2/kb20401upkeyboards/sweet16v2
1upkeyboards/sweet16v2/pro_micro1upkeyboards/sweet16v2
40percentclub/gherkin/kb204040percentclub/gherkin
40percentclub/gherkin/pro_micro40percentclub/gherkin
durgod/dgk6x/venusdurgod/dgk6x/venus_ansi

Reduce tap dance memory usage, move state out of data #25415

The tap dance state has been separated from the action structure. Custom tap dance functions now receive the state as a separate parameter instead of accessing it through action->state.

If your keymap uses custom tap dance functions that access the tap dance state, you need to update your code.

Before:

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    tap_dance_action_t *action;\n\n    switch (keycode) {\n        case TD(CT_CLN):\n            action = tap_dance_get(QK_TAP_DANCE_GET_INDEX(keycode));\n            if (!record->event.pressed && action->state.count && !action->state.finished) {\n                tap_dance_tap_hold_t *tap_hold = (tap_dance_tap_hold_t *)action->user_data;\n                tap_code16(tap_hold->tap);\n            }\n\n    }\n    return true;\n}

After:

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    tap_dance_action_t *action;\n    tap_dance_state_t* state;\n    switch (keycode) {\n        case TD(CT_CLN):\n            action = tap_dance_get(QK_TAP_DANCE_GET_INDEX(keycode));\n            state = tap_dance_get_state(QK_TAP_DANCE_GET_INDEX(keycode));\n            if (!record->event.pressed && state != NULL && state->count && !state->finished) {\n                tap_dance_tap_hold_t *tap_hold = (tap_dance_tap_hold_t *)action->user_data;\n                tap_code16(tap_hold->tap);\n            }\n    }\n    return true;\n}

Deprecation Notices

In line with the notice period, deprecation notices for larger items are listed here.

Remove override of QK_{LED,RGB}_MATRIX_TOGGLE keycode #25672

#24649 implemented genetic behavior, including keycodes, to cycle flags.

Any overriding of existing keycodes that duplicate this behavior will be removed to ensure consistency with core functionality.

Full changelist

Core:

CLI:

Submodule updates:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 39); diff --git a/assets/ChangeLog_20251130.md.CObm5zL3.lean.js b/assets/ChangeLog_20251130.md.DDM7x0Cl.lean.js similarity index 83% rename from assets/ChangeLog_20251130.md.CObm5zL3.lean.js rename to assets/ChangeLog_20251130.md.DDM7x0Cl.lean.js index d9072dac319..4fc1088c752 100644 --- a/assets/ChangeLog_20251130.md.CObm5zL3.lean.js +++ b/assets/ChangeLog_20251130.md.DDM7x0Cl.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2025 Nov 30 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20251130.md","filePath":"ChangeLog/20251130.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20251130.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 39); diff --git a/assets/ChangeLog_20260222.md.IXQ-t2RV.js b/assets/ChangeLog_20260222.md.CGKqLJC8.js similarity index 98% rename from assets/ChangeLog_20260222.md.IXQ-t2RV.js rename to assets/ChangeLog_20260222.md.CGKqLJC8.js index e91dca99364..926dfa25f9e 100644 --- a/assets/ChangeLog_20260222.md.IXQ-t2RV.js +++ b/assets/ChangeLog_20260222.md.CGKqLJC8.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2026 Feb 22 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20260222.md","filePath":"ChangeLog/20260222.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20260222.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Breaking Changes - 2026 Feb 22 Changelog

Deprecation Notices

Removal of deprecated GPIO defines (#26028)

QMK has long used Arduino-style GPIO naming conventions. This has been confusing for users, as over time they've had new variations added, as well as users mistakenly thinking that QMK supports the rest of the Arduino ecosystem.

The decision was made to rename the GPIO manipulation functions with ones matching QMK Firmware's code styling.

Previous backwards compatibility has now been removed. see the GPIO Control documentation for more information.

Removal of deprecated isLeftHand (25897)

Users should migrate to is_keyboard_left() found in split_util.h instead. For example:

diff
oled_rotation_t oled_init_user(oled_rotation_t rotation) {\n-    return isLeftHand ? OLED_ROTATION_180 : OLED_ROTATION_0;\n+    return is_keyboard_left() ? OLED_ROTATION_180 : OLED_ROTATION_0;\n}

The deprecated variable isLeftHand will be removed in a future breaking changes cycle.

Full changelist

Core:

CLI:

Keyboards:

Keyboard fixes:

Others:

Bugs:

', 23); diff --git a/assets/ChangeLog_20260222.md.IXQ-t2RV.lean.js b/assets/ChangeLog_20260222.md.CGKqLJC8.lean.js similarity index 83% rename from assets/ChangeLog_20260222.md.IXQ-t2RV.lean.js rename to assets/ChangeLog_20260222.md.CGKqLJC8.lean.js index 57b7e2c1713..927d89ee63d 100644 --- a/assets/ChangeLog_20260222.md.IXQ-t2RV.lean.js +++ b/assets/ChangeLog_20260222.md.CGKqLJC8.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Breaking Changes - 2026 Feb 22 Changelog","description":"","frontmatter":{},"headers":[],"relativePath":"ChangeLog/20260222.md","filePath":"ChangeLog/20260222.md","lastUpdated":null}'); const _sfc_main = { name: "ChangeLog/20260222.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 23); diff --git a/assets/api_development_environment.md.DBOLjnDt.js b/assets/api_development_environment.md.BHhIxwlc.js similarity index 94% rename from assets/api_development_environment.md.DBOLjnDt.js rename to assets/api_development_environment.md.BHhIxwlc.js index 03042d06eb2..b564b9d34c6 100644 --- a/assets/api_development_environment.md.DBOLjnDt.js +++ b/assets/api_development_environment.md.BHhIxwlc.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Development Environment Setup","description":"","frontmatter":{},"headers":[],"relativePath":"api_development_environment.md","filePath":"api_development_environment.md","lastUpdated":null}'); const _sfc_main = { name: "api_development_environment.md" }; const _hoisted_1 = /* @__PURE__ */ createBaseVNode("h1", { diff --git a/assets/api_development_environment.md.DBOLjnDt.lean.js b/assets/api_development_environment.md.BHhIxwlc.lean.js similarity index 94% rename from assets/api_development_environment.md.DBOLjnDt.lean.js rename to assets/api_development_environment.md.BHhIxwlc.lean.js index 03042d06eb2..b564b9d34c6 100644 --- a/assets/api_development_environment.md.DBOLjnDt.lean.js +++ b/assets/api_development_environment.md.BHhIxwlc.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Development Environment Setup","description":"","frontmatter":{},"headers":[],"relativePath":"api_development_environment.md","filePath":"api_development_environment.md","lastUpdated":null}'); const _sfc_main = { name: "api_development_environment.md" }; const _hoisted_1 = /* @__PURE__ */ createBaseVNode("h1", { diff --git a/assets/api_development_overview.md.DJCYPKXo.js b/assets/api_development_overview.md.ykoDoprg.js similarity index 97% rename from assets/api_development_overview.md.DJCYPKXo.js rename to assets/api_development_overview.md.ykoDoprg.js index e577830bfd4..3aa22742430 100644 --- a/assets/api_development_overview.md.DJCYPKXo.js +++ b/assets/api_development_overview.md.ykoDoprg.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Compiler Development Guide","description":"","frontmatter":{},"headers":[],"relativePath":"api_development_overview.md","filePath":"api_development_overview.md","lastUpdated":null}'); const _sfc_main = { name: "api_development_overview.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Compiler Development Guide

This page attempts to introduce developers to the QMK Compiler. It does not go into nitty gritty details- for that you should read code. What this will give you is a framework to hang your understanding on as you read the code.

Overview

The QMK Compile API consists of a few moving parts:

Architecture Diagram

API Clients interact exclusively with the API service. This is where they submit jobs, check status, and download results. The API service inserts compile jobs into Redis Queue and checks both RQ and S3 for the results of those jobs.

Workers fetch new compile jobs from RQ, compile them, and then upload the source and the binary to an S3 compatible storage engine.

Workers

QMK Compiler Workers are responsible for doing the actual building. When a worker pulls a job from RQ it does several things to complete that job:

API Service

The API service is a relatively simple Flask application. There are a few main views you should understand.

@app.route('/v1/compile', methods=['POST'])

This is the main entrypoint for the API. A client's interaction starts here. The client POST's a JSON document describing their keyboard, and the API does some (very) basic validation of that JSON before submitting the compile job.

@app.route('/v1/compile/<string:job_id>', methods=['GET'])

This is the most frequently called endpoint. It pulls the job details from redis, if they're still available, or the cached job details on S3 if they're not.

@app.route('/v1/compile/<string:job_id>/download', methods=['GET'])

This method allows users to download the compiled firmware file.

@app.route('/v1/compile/<string:job_id>/source', methods=['GET'])

This method allows users to download the source for their firmware.

', 20); diff --git a/assets/api_development_overview.md.DJCYPKXo.lean.js b/assets/api_development_overview.md.ykoDoprg.lean.js similarity index 84% rename from assets/api_development_overview.md.DJCYPKXo.lean.js rename to assets/api_development_overview.md.ykoDoprg.lean.js index ca08feb0c41..2eab1d324f3 100644 --- a/assets/api_development_overview.md.DJCYPKXo.lean.js +++ b/assets/api_development_overview.md.ykoDoprg.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Compiler Development Guide","description":"","frontmatter":{},"headers":[],"relativePath":"api_development_overview.md","filePath":"api_development_overview.md","lastUpdated":null}'); const _sfc_main = { name: "api_development_overview.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 20); diff --git a/assets/api_docs.md.q8EzzOY3.js b/assets/api_docs.md.azbLRQdw.js similarity index 99% rename from assets/api_docs.md.q8EzzOY3.js rename to assets/api_docs.md.azbLRQdw.js index 5ecb00f9ea6..61f6a30ab7e 100644 --- a/assets/api_docs.md.q8EzzOY3.js +++ b/assets/api_docs.md.azbLRQdw.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK API","description":"","frontmatter":{},"headers":[],"relativePath":"api_docs.md","filePath":"api_docs.md","lastUpdated":null}'); const _sfc_main = { name: "api_docs.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK API

This page describes using the QMK API. If you are an application developer you can use this API to compile firmware for any QMK Keyboard.

Overview

This service is an asynchronous API for compiling custom keymaps. You POST some JSON to the API, periodically check the status, and when your firmware has finished compiling you can download the resulting firmware and (if desired) source code for that firmware.

Example JSON Payload:

json
{\n  "keyboard": "clueboard/66/rev2",\n  "keymap": "my_awesome_keymap",\n  "layout": "LAYOUT_all",\n  "layers": [\n    ["KC_GRV","KC_1","KC_2","KC_3","KC_4","KC_5","KC_6","KC_7","KC_8","KC_9","KC_0","KC_MINS","KC_EQL","KC_GRV","KC_BSPC","KC_PGUP","KC_TAB","KC_Q","KC_W","KC_E","KC_R","KC_T","KC_Y","KC_U","KC_I","KC_O","KC_P","KC_LBRC","KC_RBRC","KC_BSLS","KC_PGDN","KC_CAPS","KC_A","KC_S","KC_D","KC_F","KC_G","KC_H","KC_J","KC_K","KC_L","KC_SCLN","KC_QUOT","KC_NUHS","KC_ENT","KC_LSFT","KC_NUBS","KC_Z","KC_X","KC_C","KC_V","KC_B","KC_N","KC_M","KC_COMM","KC_DOT","KC_SLSH","KC_INT1","KC_RSFT","KC_UP","KC_LCTL","KC_LGUI","KC_LALT","KC_INT5","KC_SPC","KC_SPC","KC_INT4","KC_RALT","KC_RCTL","MO(1)","KC_LEFT","KC_DOWN","KC_RIGHT"],\n    ["KC_ESC","KC_F1","KC_F2","KC_F3","KC_F4","KC_F5","KC_F6","KC_F7","KC_F8","KC_F9","KC_F10","KC_F11","KC_F12","KC_TRNS","KC_DEL","BL_STEP","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","_______","KC_TRNS","KC_PSCR","KC_SCRL","KC_PAUS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(2)","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_PGUP","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(1)","KC_LEFT","KC_PGDN","KC_RGHT"],\n    ["KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","QK_BOOT","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(2)","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","KC_TRNS","MO(1)","KC_TRNS","KC_TRNS","KC_TRNS"]\n  ]\n}

As you can see the payload describes all aspects of a keyboard necessary to create and generate a firmware. Each layer is a single list of QMK keycodes the same length as the keyboard's LAYOUT macro. If a keyboard supports multiple LAYOUT macros you can specify which macro to use.

Submitting a Compile Job

To compile your keymap into a firmware simply POST your JSON to the /v1/compile endpoint. In the following example we've placed the JSON payload into a file named json_data.

$ curl -H "Content-Type: application/json" -X POST -d "$(< json_data)" https://api.qmk.fm/v1/compile\n{\n  "enqueued": true,\n  "job_id": "ea1514b3-bdfc-4a7b-9b5c-08752684f7f6"\n}

Checking The Status

After submitting your keymap you can check the status using a simple HTTP GET call:

$ curl https://api.qmk.fm/v1/compile/ea1514b3-bdfc-4a7b-9b5c-08752684f7f6\n{\n  "created_at": "Sat, 19 Aug 2017 21:39:12 GMT",\n  "enqueued_at": "Sat, 19 Aug 2017 21:39:12 GMT",\n  "id": "f5f9b992-73b4-479b-8236-df1deb37c163",\n  "status": "running",\n  "result": null\n}

This shows us that the job has made it through the queue and is currently running. There are 5 possible statuses:

Examining Finished Results

Once your compile job has finished you'll check the result key. The value of this key is a hash containing several key bits of information:

Constants

If you're writing a tool that leverages constants used within QMK, the API is used to publish "locked-in" versions of those constants in order to ensure that any third-party tooling has a canonical set of information to work with.

The list of available constants can be retrieved by accessing one of the following endpoints:

$ curl https://keyboards.qmk.fm/v1/constants_metadata.json # For `master`\n{"last_updated": "2022-11-26 00:00:00 GMT", "constants": {"keycodes": ["0.0.1"]}}\n\n$ curl https://keyboards.develop.qmk.fm/v1/constants_metadata.json # For `develop`\n{"last_updated": "2022-11-26 12:00:00 GMT", "constants": {"keycodes": ["0.0.1", "0.0.2"]}}

WARNING

Versions exported by the master endpoint are locked-in. Any extra versions that exist on the develop endpoint which don't exist in master are subject to change.

TIP

Only keycodes are currently published, but over time all other "externally visible" IDs are expected to appear on these endpoints.

To retrieve the constants associated with a subsystem, the endpoint format is as follows:

# https://keyboards.qmk.fm/v1/constants/{subsystem}_{version}.json

Which, for the metadata endpoint above results in a request of:

$ curl https://keyboards.qmk.fm/v1/constants/keycodes_0.0.1.json\n{\n    "ranges": {\n        "0x0000/0x00FF": {\n            "define": "QK_BASIC"\n        },\n        "0x0100/0x1EFF": {\n            "define": "QK_MODS"\n        },\n        "0x2000/0x1FFF": {\n            "define": "QK_MOD_TAP"\n<snip>
', 28); diff --git a/assets/api_docs.md.q8EzzOY3.lean.js b/assets/api_docs.md.azbLRQdw.lean.js similarity index 82% rename from assets/api_docs.md.q8EzzOY3.lean.js rename to assets/api_docs.md.azbLRQdw.lean.js index 3fb9010c880..b302da7ef5a 100644 --- a/assets/api_docs.md.q8EzzOY3.lean.js +++ b/assets/api_docs.md.azbLRQdw.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK API","description":"","frontmatter":{},"headers":[],"relativePath":"api_docs.md","filePath":"api_docs.md","lastUpdated":null}'); const _sfc_main = { name: "api_docs.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 28); diff --git a/assets/api_overview.md.ikCJhJnu.js b/assets/api_overview.md.DMC56sa3.js similarity index 94% rename from assets/api_overview.md.ikCJhJnu.js rename to assets/api_overview.md.DMC56sa3.js index 0d18690e7ae..6382ef8b79c 100644 --- a/assets/api_overview.md.ikCJhJnu.js +++ b/assets/api_overview.md.DMC56sa3.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK API","description":"","frontmatter":{},"headers":[],"relativePath":"api_overview.md","filePath":"api_overview.md","lastUpdated":null}'); const _sfc_main = { name: "api_overview.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK API

The QMK API provides an asynchronous API that Web and GUI tools can use to compile arbitrary keymaps for any keyboard supported by QMK. The stock keymap template supports all QMK keycodes that do not require supporting C code. Keyboard maintainers can supply their own custom templates to enable more functionality.

App Developers

If you are an app developer interested in using this API in your application you should head over to Using The API.

Keyboard Maintainers

If you would like to enhance your keyboard's support in the QMK Compiler API head over to the Keyboard Support section.

Backend Developers

If you are interested in working on the API itself you should start by setting up a Development Environment, then check out Hacking On The API.

', 8); diff --git a/assets/api_overview.md.ikCJhJnu.lean.js b/assets/api_overview.md.DMC56sa3.lean.js similarity index 82% rename from assets/api_overview.md.ikCJhJnu.lean.js rename to assets/api_overview.md.DMC56sa3.lean.js index 2799534e185..8245e08db40 100644 --- a/assets/api_overview.md.ikCJhJnu.lean.js +++ b/assets/api_overview.md.DMC56sa3.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK API","description":"","frontmatter":{},"headers":[],"relativePath":"api_overview.md","filePath":"api_overview.md","lastUpdated":null}'); const _sfc_main = { name: "api_overview.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 8); diff --git a/assets/app.CuDuM5Kz.js b/assets/app.8Is8HrmZ.js similarity index 91% rename from assets/app.CuDuM5Kz.js rename to assets/app.8Is8HrmZ.js index d7093621d44..f59ee779655 100644 --- a/assets/app.CuDuM5Kz.js +++ b/assets/app.8Is8HrmZ.js @@ -1,5 +1,5 @@ -import { R as RawTheme } from "./chunks/theme.UmtsjDQ8.js"; -import { V as inBrowser, a9 as useUpdateHead, aa as RouterSymbol, ab as initData, ac as dataSymbol, ad as Content, ae as ClientOnly, af as siteDataRef, ag as createSSRApp, ah as createRouter, ai as pathToFile, d as defineComponent, u as useData, k as onMounted, y as watchEffect, aj as usePrefetch, ak as useCopyCode, al as useCodeGroups, am as h } from "./chunks/framework.Cauyuiy8.js"; +import { R as RawTheme } from "./chunks/theme.DaTnCy1N.js"; +import { V as inBrowser, a9 as useUpdateHead, aa as RouterSymbol, ab as initData, ac as dataSymbol, ad as Content, ae as ClientOnly, af as siteDataRef, ag as createRouter, ah as pathToFile, ai as createSSRApp, d as defineComponent, u as useData, k as onMounted, y as watchEffect, aj as usePrefetch, ak as useCopyCode, al as useCodeGroups, am as h } from "./chunks/framework.DUYk0S7v.js"; function resolveThemeExtends(theme) { if (theme.extends) { const base = resolveThemeExtends(theme.extends); diff --git a/assets/arm_debugging.md.DZQjFz9i.js b/assets/arm_debugging.md.D_ovCSLz.js similarity index 98% rename from assets/arm_debugging.md.DZQjFz9i.js rename to assets/arm_debugging.md.D_ovCSLz.js index 7eac469c3e9..77e2c0b2488 100644 --- a/assets/arm_debugging.md.DZQjFz9i.js +++ b/assets/arm_debugging.md.D_ovCSLz.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ARM Debugging using Eclipse","description":"","frontmatter":{},"headers":[],"relativePath":"arm_debugging.md","filePath":"arm_debugging.md","lastUpdated":null}'); const _sfc_main = { name: "arm_debugging.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

ARM Debugging using Eclipse

This page describes how to setup debugging for ARM MCUs using an SWD adapter and open-source/free tools. In this guide we will install GNU MCU Eclipse IDE for C/C++ Developers and OpenOCD together with all the necessary dependencies.

This guide is catered towards advance users and assumes you can compile an ARM compatible keyboard on your machine using the MAKE flow.

Installing the software

The main objective here is to get the MCU Eclipse IDE correctly installed on our machine. The necessary instructions are derived from this install guide.

The xPack Manager

This tool is a software package manager and it is used to help us get the necessary dependencies.

XPM runs using Node.js so grab that from here. After installation, open a terminal and type npm -v. A reply with the version number means that the installation was successful.

XPM installation instructions can be found here and are OS specific. Entering xpm --version to your terminal should return the software version.

The ARM Toolchain

Using XPM it is very easy to install the ARM toolchain. Enter the command xpm install --global @xpack-dev-tools/arm-none-eabi-gcc.

Windows build tools

If you are using windows you need to install this!

xpm install --global @gnu-mcu-eclipse/windows-build-tools

Programmer/Debugger Drivers

Now it's time to install your programmer's drivers. This tutorial was made using an ST-Link v2 which you can get from almost anywhere. If you have an ST-Link the drivers can be found here otherwise consult the manufacturer of your tool.

OpenOCD

This dependency allows SWD access from GDB and it is essential for debugging. Run xpm install --global @xpack-dev-tools/openocd.

Java

Java is needed by Eclipse so please download it from here.

GNU MCU Eclipse IDE

Now its finally time to install the IDE. Use the Release page here to get the latest version.

Configuring Eclipse

Open up the Eclipse IDE we just downloaded. To import our QMK directory select File -> Import -> C/C++ -> Existing Code as Makefile Project. Select Next and use Browse to select your QMK folder. In the tool-chain list select ARM Cross GCC and select Finish.

Now you can see the QMK folder on the left hand side. Right click it and select Properties. On the left hand side, expand MCU and select ARM Toolchains Paths. Press xPack and OK. Repeat for OpenOCD Path and if you are on Windows for Build Tools Path. Select Apply and Close.

Now its time to install the necessary MCU packages. Go to Packs perspective by selecting Window -> Perspective -> Open Perspective -> Other... -> Packs. Now select the yellow refresh symbol next to the Packs tab. This will take a long time as it is requesting the MCU definitions from various places. If some of the links fail you can probably select Ignore.

When this finishes you must find the MCU which we will be building/debugging for. In this example I will be using the STM32F3 series MCUs. On the left, select STMicroelectronics -> STM32F3 Series. On the middle window we can see the pack. Right click and select Install. Once that is done we can go back to the default perspective, Window -> Perspective -> Open Perspective -> Other... -> C/C++.

We need to let eclipse know the device we intent to build QMK on. Right click on the QMK folder -> Properties -> C/C++ Build -> Settings. Select the Devices tab and under Devices select the appropriate variant of your MCU. For my example it is STM32F303CC

While we are here let's setup the build command as well. Select C/C++ Build and then the Behavior tab. On the Build command, replace all with your necessary make command. For example for a rev6 Planck with the default keymap this would be planck/rev6:default. Select Apply and Close.

Building

If you have setup everything correctly pressing the hammer button should build the firmware for you and a .bin file should appear.

Debugging

Connecting the Debugger

ARM MCUs use the Single Wire Debug (SWD) protocol which comprises of the clock (SWCLK) signal and the data (SWDIO) signal. Connecting this two wires and ground should be enough to allow full manipulation of the MCU. Here we assume that the keyboard will be powered though USB. The RESET signal is not necessary as we can manually assert it using the reset button. For a more advance setup, the SWO signal can be used which pipes printf and scanf asynchronously to the host but for our setup we will ignore it.

NOTE: Make sure the SWCLK and SWDIO pins are not used in the matrix of your keyboard. If they are you can temporarily switch them for some other pins.

Configuring the Debugger

Right click on your QMK folder, select Debug As -> Debug Configurations... . Here double click on GDB OpenOCD Debugging. Select the Debugger tab and enter the configuration necessary for your MCU. This might take some fiddling and Googling to find out. The default script for the STM32F3 is called stm32f3discovery.cfg. To let OpenOCD know, in the Config options enter -f board/stm32f3discovery.cfg.

NOTE: In my case this configuration script requires editing to disable the reset assertion. The locations of the scripts can be found in the actual executable field usually under the path openocd/version/.content/scripts/board. Here I edited reset_config srst_only to reset_config none.

Select Apply and Close.

Running the Debugger.

Reset your keyboard.

Press the bug icon and if all goes well you should soon find yourself in the Debug perspective. Here the program counter will pause at the beginning of the main function and wait for you to press Play. Most of the features of all debuggers work on Arm MCUs but for exact details Google is your friend!

Happy debugging!

', 43); diff --git a/assets/arm_debugging.md.DZQjFz9i.lean.js b/assets/arm_debugging.md.D_ovCSLz.lean.js similarity index 83% rename from assets/arm_debugging.md.DZQjFz9i.lean.js rename to assets/arm_debugging.md.D_ovCSLz.lean.js index 11e43e24a7d..63fbe41aa2d 100644 --- a/assets/arm_debugging.md.DZQjFz9i.lean.js +++ b/assets/arm_debugging.md.D_ovCSLz.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ARM Debugging using Eclipse","description":"","frontmatter":{},"headers":[],"relativePath":"arm_debugging.md","filePath":"arm_debugging.md","lastUpdated":null}'); const _sfc_main = { name: "arm_debugging.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 43); diff --git a/assets/breaking_changes.md.BGEUZtBd.js b/assets/breaking_changes.md.CPjdVfIb.js similarity index 99% rename from assets/breaking_changes.md.BGEUZtBd.js rename to assets/breaking_changes.md.CPjdVfIb.js index 6ee53e1a360..2185b55c564 100644 --- a/assets/breaking_changes.md.BGEUZtBd.js +++ b/assets/breaking_changes.md.CPjdVfIb.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Breaking Changes","description":"","frontmatter":{},"headers":[],"relativePath":"breaking_changes.md","filePath":"breaking_changes.md","lastUpdated":null}'); const _sfc_main = { name: "breaking_changes.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Breaking Changes

This document describes QMK's Breaking Change process. A Breaking Change is any change which modifies how QMK behaves in a way that in incompatible or potentially dangerous. We limit these changes so that users can have confidence that updating their QMK tree will not break their keymaps.

This also includes any keyboard moves within the repository.

The breaking change period is when we will merge PRs that change QMK in dangerous or unexpected ways. There is a built-in period of testing so we are confident that any problems caused are rare or unable to be predicted.

Practically, this means QMK merges the develop branch into the master branch on a 3-month cadence.

What has been included in past Breaking Changes?

When is the next Breaking Change?

The next Breaking Change is scheduled for May 31, 2026.

Important Dates

What changes will be included?

To see a list of breaking changes merge candidates you can look at the core label. This label is applied whenever a PR is raised or changed, but only if the PR includes changes to core areas of QMK Firmware. A PR with that label applied is not guaranteed to be merged in the current cycle. New changes might be added between now and when develop is closed, and it is generally the responsibility of the submitter to handle conflicts. There is also another label used by QMK Collaborators -- breaking_change_YYYYqN -- which signifies to maintainers that it is a strong candidate for inclusion, and should be prioritized for review.

If you want your breaking change to be included in this round you need to create a PR and have it accepted by QMK Collaborators before develop closes. After develop closes, new submissions will be deferred to the next breaking changes cycle.

The simpler your PR is, the easier it is for maintainers to review, thus a higher likelihood of a faster merge. Large PRs tend to require a lot of attention, refactoring, and back-and-forth with subsequent reviews -- with other PRs getting merged in the meantime larger unmerged PRs are far more likely to be susceptible to conflicts.

Criteria for acceptance:

Strongly suggested:

Checklists

This section documents various processes we use when running the Breaking Changes process.

4 Weeks Before Merge

2 Weeks Before Merge

1 Week Before Merge

2 Days Before Merge

Day Of Merge

Post-merge operations

Updating the develop branch

This happens immediately after the previous develop branch is merged to master.

Set up Discord events for the next cycle

', 37); diff --git a/assets/breaking_changes.md.BGEUZtBd.lean.js b/assets/breaking_changes.md.CPjdVfIb.lean.js similarity index 83% rename from assets/breaking_changes.md.BGEUZtBd.lean.js rename to assets/breaking_changes.md.CPjdVfIb.lean.js index fa1258566d6..f99506f1cbd 100644 --- a/assets/breaking_changes.md.BGEUZtBd.lean.js +++ b/assets/breaking_changes.md.CPjdVfIb.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Breaking Changes","description":"","frontmatter":{},"headers":[],"relativePath":"breaking_changes.md","filePath":"breaking_changes.md","lastUpdated":null}'); const _sfc_main = { name: "breaking_changes.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 37); diff --git a/assets/breaking_changes_history.md.BE819oLP.js b/assets/breaking_changes_history.md.CxsUTOKD.js similarity index 95% rename from assets/breaking_changes_history.md.BE819oLP.js rename to assets/breaking_changes_history.md.CxsUTOKD.js index de7c8a10c2a..e3b61d7a4fa 100644 --- a/assets/breaking_changes_history.md.BE819oLP.js +++ b/assets/breaking_changes_history.md.CxsUTOKD.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Past Breaking Changes","description":"","frontmatter":{},"headers":[],"relativePath":"breaking_changes_history.md","filePath":"breaking_changes_history.md","lastUpdated":null}'); const _sfc_main = { name: "breaking_changes_history.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Past Breaking Changes

This page links to all previous changelogs from the QMK Breaking Changes process.

', 3); diff --git a/assets/breaking_changes_history.md.BE819oLP.lean.js b/assets/breaking_changes_history.md.CxsUTOKD.lean.js similarity index 84% rename from assets/breaking_changes_history.md.BE819oLP.lean.js rename to assets/breaking_changes_history.md.CxsUTOKD.lean.js index 71315a6df82..fbcb5aa5026 100644 --- a/assets/breaking_changes_history.md.BE819oLP.lean.js +++ b/assets/breaking_changes_history.md.CxsUTOKD.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Past Breaking Changes","description":"","frontmatter":{},"headers":[],"relativePath":"breaking_changes_history.md","filePath":"breaking_changes_history.md","lastUpdated":null}'); const _sfc_main = { name: "breaking_changes_history.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 3); diff --git a/assets/breaking_changes_instructions.md.CMdgLYf9.js b/assets/breaking_changes_instructions.md.DjP5PolH.js similarity index 97% rename from assets/breaking_changes_instructions.md.CMdgLYf9.js rename to assets/breaking_changes_instructions.md.DjP5PolH.js index 7df3c5da314..8b745466a64 100644 --- a/assets/breaking_changes_instructions.md.CMdgLYf9.js +++ b/assets/breaking_changes_instructions.md.DjP5PolH.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Breaking Changes: My Pull Request Was Flagged","description":"","frontmatter":{},"headers":[],"relativePath":"breaking_changes_instructions.md","filePath":"breaking_changes_instructions.md","lastUpdated":null}'); const _sfc_main = { name: "breaking_changes_instructions.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Breaking Changes: My Pull Request Was Flagged

A QMK member may have replied to your pull request stating that your submission is a breaking change. In their judgment, the changes you have proposed have greater implications for either QMK, or its users.

Some things that may cause a pull request to be flagged are:

What Do I Do?

If it is determined that your submission is a breaking change, there are a few things you can do to smooth the process:

Consider Splitting Up Your PR

If you are contributing core code, and the only reason it needs to go through breaking changes is that you are updating keymaps to match your change, consider whether you can submit your feature in a way that the old keymaps continue to work. Then submit a separate PR that goes through the breaking changes process to remove the old code.

Document Your Changes

Understanding the purpose for your submission, and possible implications or actions it will require can make the review process more straightforward. A changelog may suffice for this purpose, but more extensive changes may require a level of detail that is ill-suited for a changelog.

Commenting on your pull request and being responsive to questions, comments, and change requests is much appreciated.

Ask for Help

Having your submission flagged may have caught you off guard. If you find yourself intimidated or overwhelmed, let us know. Comment on your pull request, or reach out to the QMK team on Discord.

', 13); diff --git a/assets/breaking_changes_instructions.md.CMdgLYf9.lean.js b/assets/breaking_changes_instructions.md.DjP5PolH.lean.js similarity index 85% rename from assets/breaking_changes_instructions.md.CMdgLYf9.lean.js rename to assets/breaking_changes_instructions.md.DjP5PolH.lean.js index ca0665cbe93..98fa7371a25 100644 --- a/assets/breaking_changes_instructions.md.CMdgLYf9.lean.js +++ b/assets/breaking_changes_instructions.md.DjP5PolH.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Breaking Changes: My Pull Request Was Flagged","description":"","frontmatter":{},"headers":[],"relativePath":"breaking_changes_instructions.md","filePath":"breaking_changes_instructions.md","lastUpdated":null}'); const _sfc_main = { name: "breaking_changes_instructions.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 13); diff --git a/assets/capabilities.md.DBSM69xz.js b/assets/capabilities.md.BioT5X0H.js similarity index 98% rename from assets/capabilities.md.DBSM69xz.js rename to assets/capabilities.md.BioT5X0H.js index 80563ca5f1d..4cd9776d974 100644 --- a/assets/capabilities.md.DBSM69xz.js +++ b/assets/capabilities.md.BioT5X0H.js @@ -1,5 +1,5 @@ import { _ as _imports_0$1 } from "./chunks/color-wheel.DIUCmfNZ.js"; -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/assets/badge-community-light.Cciv47hr.svg"; const _imports_1 = "/assets/badge-community-dark.CirSPMz9.svg"; const __pageData = JSON.parse('{"title":"Documentation Capabilities","description":"","frontmatter":{},"headers":[],"relativePath":"__capabilities.md","filePath":"__capabilities.md","lastUpdated":null}'); diff --git a/assets/capabilities.md.DBSM69xz.lean.js b/assets/capabilities.md.BioT5X0H.lean.js similarity index 92% rename from assets/capabilities.md.DBSM69xz.lean.js rename to assets/capabilities.md.BioT5X0H.lean.js index 2eb9a0972f8..e648a10bf16 100644 --- a/assets/capabilities.md.DBSM69xz.lean.js +++ b/assets/capabilities.md.BioT5X0H.lean.js @@ -1,5 +1,5 @@ import { _ as _imports_0$1 } from "./chunks/color-wheel.DIUCmfNZ.js"; -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/assets/badge-community-light.Cciv47hr.svg"; const _imports_1 = "/assets/badge-community-dark.CirSPMz9.svg"; const __pageData = JSON.parse('{"title":"Documentation Capabilities","description":"","frontmatter":{},"headers":[],"relativePath":"__capabilities.md","filePath":"__capabilities.md","lastUpdated":null}'); diff --git a/assets/capabilities_inc.md.CfVcbxN_.js b/assets/capabilities_inc.md.BoBlYZ_w.js similarity index 83% rename from assets/capabilities_inc.md.CfVcbxN_.js rename to assets/capabilities_inc.md.BoBlYZ_w.js index 71c1f44a75d..bc72fe9b5f0 100644 --- a/assets/capabilities_inc.md.CfVcbxN_.js +++ b/assets/capabilities_inc.md.BoBlYZ_w.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, l as createBaseVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, l as createBaseVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"__capabilities_inc.md","filePath":"__capabilities_inc.md","lastUpdated":null}'); const _sfc_main = { name: "__capabilities_inc.md" }; const _hoisted_1 = /* @__PURE__ */ createBaseVNode("p", null, "Lorem ipsum dolor sit amet.", -1); diff --git a/assets/capabilities_inc.md.CfVcbxN_.lean.js b/assets/capabilities_inc.md.BoBlYZ_w.lean.js similarity index 83% rename from assets/capabilities_inc.md.CfVcbxN_.lean.js rename to assets/capabilities_inc.md.BoBlYZ_w.lean.js index 71c1f44a75d..bc72fe9b5f0 100644 --- a/assets/capabilities_inc.md.CfVcbxN_.lean.js +++ b/assets/capabilities_inc.md.BoBlYZ_w.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, l as createBaseVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, l as createBaseVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"","description":"","frontmatter":{},"headers":[],"relativePath":"__capabilities_inc.md","filePath":"__capabilities_inc.md","lastUpdated":null}'); const _sfc_main = { name: "__capabilities_inc.md" }; const _hoisted_1 = /* @__PURE__ */ createBaseVNode("p", null, "Lorem ipsum dolor sit amet.", -1); diff --git a/assets/chibios_upgrade_instructions.md.C7StOV1s.js b/assets/chibios_upgrade_instructions.md.DSfqrpjD.js similarity index 97% rename from assets/chibios_upgrade_instructions.md.C7StOV1s.js rename to assets/chibios_upgrade_instructions.md.DSfqrpjD.js index c594c8a57c2..3ae2997db5b 100644 --- a/assets/chibios_upgrade_instructions.md.C7StOV1s.js +++ b/assets/chibios_upgrade_instructions.md.DSfqrpjD.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ChibiOS Upgrade Procedure","description":"","frontmatter":{},"headers":[],"relativePath":"chibios_upgrade_instructions.md","filePath":"chibios_upgrade_instructions.md","lastUpdated":null}'); const _sfc_main = { name: "chibios_upgrade_instructions.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

ChibiOS Upgrade Procedure

ChibiOS and ChibiOS-Contrib need to be updated in tandem -- the latter has a branch tied to the ChibiOS version in use and should not be mixed with different versions.

Getting ChibiOS

Getting ChibiOS-Contrib

Updating submodules

When merging a PR containing an upgrade of ChibiOS/ChibiOS-Contrib:

Note that when merging develop to master, the first workflow should still be followed.

', 11); diff --git a/assets/chibios_upgrade_instructions.md.C7StOV1s.lean.js b/assets/chibios_upgrade_instructions.md.DSfqrpjD.lean.js similarity index 84% rename from assets/chibios_upgrade_instructions.md.C7StOV1s.lean.js rename to assets/chibios_upgrade_instructions.md.DSfqrpjD.lean.js index 0bd823b61fc..7ebb2407c2e 100644 --- a/assets/chibios_upgrade_instructions.md.C7StOV1s.lean.js +++ b/assets/chibios_upgrade_instructions.md.DSfqrpjD.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ChibiOS Upgrade Procedure","description":"","frontmatter":{},"headers":[],"relativePath":"chibios_upgrade_instructions.md","filePath":"chibios_upgrade_instructions.md","lastUpdated":null}'); const _sfc_main = { name: "chibios_upgrade_instructions.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 11); diff --git a/assets/chunks/@localSearchIndexroot.AlnfQLB4.js b/assets/chunks/@localSearchIndexroot.AlnfQLB4.js deleted file mode 100644 index d2eebbb60a2..00000000000 --- a/assets/chunks/@localSearchIndexroot.AlnfQLB4.js +++ /dev/null @@ -1,4 +0,0 @@ -const _localSearchIndexroot = `{"documentCount":2943,"nextId":2943,"documentIds":{"0":"/ChangeLog/20190830#qmk-breaking-change-2019-aug-30","1":"/ChangeLog/20190830#core-code-formatting-with-clang-format","2":"/ChangeLog/20190830#lufa-usb-descriptor-cleanup","3":"/ChangeLog/20190830#migrating-action-layer-momentary-entries-in-fn-actions-to-mo-keycodes","4":"/ChangeLog/20190830#update-atreus-to-current-code-conventions","5":"/ChangeLog/20190830#backport-changes-to-keymap-language-files-from-zsa-fork","6":"/ChangeLog/20190830#update-repo-to-use-lufa-as-a-git-submodule","7":"/ChangeLog/20190830#migrating-action-backlight-entries-in-fn-actions-to-bl-keycodes","8":"/ChangeLog/20190830#remove-kc-delt-alias-in-favor-of-kc-del","9":"/ChangeLog/20200229#qmk-breaking-change-2020-feb-29-changelog","10":"/ChangeLog/20200229#update-chibios-chibios-contrib-ugfx-submodules","11":"/ChangeLog/20200229#fix-chibios-timer-overflow-for-16-bit-systick-devices","12":"/ChangeLog/20200229#update-lufa-submodule","13":"/ChangeLog/20200229#encoder-flip","14":"/ChangeLog/20200229#adding-support-for-backlight-on-state-for-hardware-pwm-backlight","15":"/ChangeLog/20200229#migrating-action-layer-tap-key-entries-in-fn-actions-to-lt-keycodes","16":"/ChangeLog/20200229#moving-backlight-keycode-handling-to-process-keycode","17":"/ChangeLog/20200229#refactor-planck-keymaps-to-use-layout-macros","18":"/ChangeLog/20200229#gon-nerd-codebase-refactor","19":"/ChangeLog/20200530#qmk-breaking-change-2020-may-30-changelog","20":"/ChangeLog/20200530#core-changes","21":"/ChangeLog/20200530#converting-v-usb-usbdrv-to-a-submodule","22":"/ChangeLog/20200530#unify-tap-hold-functions-and-documentation","23":"/ChangeLog/20200530#python-required-in-the-build-process","24":"/ChangeLog/20200530#upgrade-from-tinyprintf-to-mpaland-printf","25":"/ChangeLog/20200530#fixed-rgb-disable-after-timeout-to-be-seconds-based-small-internals-cleanup","26":"/ChangeLog/20200530#switch-to-qmk-forks-for-everything","27":"/ChangeLog/20200530#code-cleanup-regarding-deprecated-macro-play-note-array-by-replacing-it-with-play-song","28":"/ChangeLog/20200530#fixing-wrong-configuration-of-audio-feature","29":"/ChangeLog/20200530#keyboard-refactors","30":"/ChangeLog/20200530#migrating-lily58-to-use-split-common","31":"/ChangeLog/20200530#to-migrate-existing-lily58-firmware","32":"/ChangeLog/20200530#refactor-zinc-to-use-split-common","33":"/ChangeLog/20200530#refactor-of-tkc1800-to-use-common-oled-code","34":"/ChangeLog/20200530#to-migrate-existing-tkc1800-firmware","35":"/ChangeLog/20200530#split-hhkb-to-ansi-and-jp-layouts-and-add-via-support-for-each","36":"/ChangeLog/20200530#migrating-existing-hhkb-keymaps","37":"/ChangeLog/20200530#keyboard-moves","38":"/ChangeLog/20200530#keycode-migration-prs","39":"/ChangeLog/20200829#qmk-breaking-change-2020-aug-29-changelog","40":"/ChangeLog/20200829#changes-requiring-user-action","41":"/ChangeLog/20200829#relocated-keyboards","42":"/ChangeLog/20200829#the-key-company-project-consolidation-9547","43":"/ChangeLog/20200829#relocating-boards-by-flehrad-to-flehrad-folder-9635","44":"/ChangeLog/20200829#keyboard-updates","45":"/ChangeLog/20200829#keebio-rgb-wiring-update-7754","46":"/ChangeLog/20200829#core-updates","47":"/ChangeLog/20200829#core-changes","48":"/ChangeLog/20200829#core-fixes","49":"/ChangeLog/20200829#core-additions","50":"/ChangeLog/20200829#core-optimizations","51":"/ChangeLog/20200829#qmk-internals","52":"/ChangeLog/20201128#qmk-breaking-change-2020-nov-28-changelog","53":"/ChangeLog/20201128#changes-requiring-user-action","54":"/ChangeLog/20201128#relocated-keyboards","55":"/ChangeLog/20201128#reduce-helix-keyboard-build-variation-8669","56":"/ChangeLog/20201128#update-the-speedo-firmware-for-v3-0-10657","57":"/ChangeLog/20201128#maartenwut-maarten-name-change-to-evyd13-evy-10274","58":"/ChangeLog/20201128#xelus-valor-and-dawn60-refactors-10512-10584","59":"/ChangeLog/20201128#keyboard-updates","60":"/ChangeLog/20201128#aeboards-ext65-refactor-10820","61":"/ChangeLog/20201128#core-changes","62":"/ChangeLog/20201128#core-fixes","63":"/ChangeLog/20201128#core-additions","64":"/ChangeLog/20201128#core-optimizations","65":"/ChangeLog/20201128#qmk-internals","66":"/ChangeLog/20210227#qmk-breaking-changes-2021-february-27-changelog","67":"/ChangeLog/20210227#changes-requiring-user-action","68":"/ChangeLog/20210227#core-changes","69":"/ChangeLog/20210227#chibios-update-and-config-migration","70":"/ChangeLog/20210227#qmk-infrastructure-and-internals","71":"/ChangeLog/20210227#detailed-change-list","72":"/ChangeLog/20210227#changes-requiring-user-action-1","73":"/ChangeLog/20210227#fixes","74":"/ChangeLog/20210227#additions-and-enhancements","75":"/ChangeLog/20210227#clean-ups-and-optimizations","76":"/ChangeLog/20210227#qmk-infrastructure-and-internals-1","77":"/ChangeLog/20210227#chibios-update-and-config-migration-1","78":"/ChangeLog/20210529#qmk-breaking-changes-2021-may-29-changelog","79":"/ChangeLog/20210529#notable-changes","80":"/ChangeLog/20210529#rgb-matrix-split-common","81":"/ChangeLog/20210529#teensy-3-6-support","82":"/ChangeLog/20210529#new-command-qmk-console","83":"/ChangeLog/20210529#improve-command-qmk-config","84":"/ChangeLog/20210529#led-matrix-improvements","85":"/ChangeLog/20210529#changes-requiring-user-action","86":"/ChangeLog/20210529#updated-keyboard-codebases","87":"/ChangeLog/20210529#bootmagic-deprecation-and-refactor","88":"/ChangeLog/20210529#tentative-deprecation-schedule","89":"/ChangeLog/20210529#removal-of-layout-kc","90":"/ChangeLog/20210529#encoder-callback-boolean","91":"/ChangeLog/20210529#core-changes","92":"/ChangeLog/20210529#core-fixes","93":"/ChangeLog/20210529#core-additions","94":"/ChangeLog/20210529#core-optimizations","95":"/ChangeLog/20210529#qmk-internals","96":"/ChangeLog/20210828#qmk-breaking-changes-2021-august-28-changelog","97":"/ChangeLog/20210828#notable-features","98":"/ChangeLog/20210828#combo-processing-improvements","99":"/ChangeLog/20210828#key-overrides","100":"/ChangeLog/20210828#digitizer-support-12851","101":"/ChangeLog/20210828#changes-requiring-user-action","102":"/ChangeLog/20210828#updated-keyboard-codebases","103":"/ChangeLog/20210828#bootmagic-full-removal","104":"/ChangeLog/20210828#bootmagic-full-deprecation-schedule","105":"/ChangeLog/20210828#dip-switch-boolean","106":"/ChangeLog/20210828#notable-core","107":"/ChangeLog/20210828#split-transport-improvements","108":"/ChangeLog/20210828#teensy-4-x-support","109":"/ChangeLog/20210828#data-driven-improvements-13366","110":"/ChangeLog/20210828#tags","111":"/ChangeLog/20210828#dot-notation","112":"/ChangeLog/20210828#new-configuration-keys","113":"/ChangeLog/20210828#codebase-restructure","114":"/ChangeLog/20210828#full-changelist","115":"/ChangeLog/20211127#qmk-breaking-changes-2021-november-27-changelog","116":"/ChangeLog/20211127#qmk-2000th-keyboard","117":"/ChangeLog/20211127#notable-features","118":"/ChangeLog/20211127#expanded-pointing-device","119":"/ChangeLog/20211127#dynamic-tapping-term","120":"/ChangeLog/20211127#macros-in-keymap-json","121":"/ChangeLog/20211127#changes-requiring-user-action","122":"/ChangeLog/20211127#updated-keyboard-codebases","123":"/ChangeLog/20211127#squeezing-space-from-avr","124":"/ChangeLog/20211127#explicit-rgb-modes","125":"/ChangeLog/20211127#oled-task-refactor","126":"/ChangeLog/20211127#bootmagic-full-removal","127":"/ChangeLog/20211127#bootmagic-full-deprecation-schedule-complete","128":"/ChangeLog/20211127#remove-qwiic","129":"/ChangeLog/20211127#notable-core","130":"/ChangeLog/20211127#new-mcu-support","131":"/ChangeLog/20211127#eeprom-changes","132":"/ChangeLog/20211127#compile-commands","133":"/ChangeLog/20211127#codebase-restructure","134":"/ChangeLog/20211127#full-changelist","135":"/ChangeLog/20220226#qmk-breaking-changes-2022-february-26-changelog","136":"/ChangeLog/20220226#notable-features","137":"/ChangeLog/20220226#default-usb-polling-rate-now-1khz-15352","138":"/ChangeLog/20220226#split-support-for-pointing-devices-15304","139":"/ChangeLog/20220226#changes-requiring-user-action","140":"/ChangeLog/20220226#legacy-macro-and-action-function-system-removed-16025","141":"/ChangeLog/20220226#create-a-build-error-if-no-bootloader-is-specified-16181","142":"/ChangeLog/20220226#rename-adafruitble-to-bluefruitle-16127","143":"/ChangeLog/20220226#updated-keyboard-codebases","144":"/ChangeLog/20220226#notable-core","145":"/ChangeLog/20220226#new-mcu-support","146":"/ChangeLog/20220226#new-drivers","147":"/ChangeLog/20220226#led","148":"/ChangeLog/20220226#gpio","149":"/ChangeLog/20220226#full-changelist","150":"/ChangeLog/20220528#qmk-breaking-changes-2022-may-28-changelog","151":"/ChangeLog/20220528#notable-features","152":"/ChangeLog/20220528#caps-word","153":"/ChangeLog/20220528#quantum-painter","154":"/ChangeLog/20220528#encoder-mapping","155":"/ChangeLog/20220528#changes-requiring-user-action","156":"/ChangeLog/20220528#reset-2-qk_boot","157":"/ChangeLog/20220528#sendstring-keycodes","158":"/ChangeLog/20220528#pillow-install","159":"/ChangeLog/20220528#updated-keyboard-codebases","160":"/ChangeLog/20220528#full-changelist","161":"/ChangeLog/20220827#qmk-breaking-changes-2022-august-27-changelog","162":"/ChangeLog/20220827#notable-features","163":"/ChangeLog/20220827#rp2040-support","164":"/ChangeLog/20220827#cli-flash-binaries","165":"/ChangeLog/20220827#changes-requiring-user-action","166":"/ChangeLog/20220827#default-layers-dropped-from-32-to-16-15286","167":"/ChangeLog/20220827#reset-2-qk_boot","168":"/ChangeLog/20220827#updated-keyboard-codebases","169":"/ChangeLog/20220827#usb-ids-Refactoring","170":"/ChangeLog/20220827#deprecation-schedule","171":"/ChangeLog/20220827#notable-core","172":"/ChangeLog/20220827#board-converters","173":"/ChangeLog/20220827#cli-import","174":"/ChangeLog/20220827#wear-leveling","175":"/ChangeLog/20220827#pointing-device-improvements","176":"/ChangeLog/20220827#full-changelist","177":"/ChangeLog/20221126#qmk-breaking-changes-2022-november-26-changelog","178":"/ChangeLog/20221126#notable-features","179":"/ChangeLog/20221126#autocorrect","180":"/ChangeLog/20221126#changes-requiring-user-action","181":"/ChangeLog/20221126#updated-keyboard-codebases","182":"/ChangeLog/20221126#keycodes-overhaul-user-action","183":"/ChangeLog/20221126#config-refactoring","184":"/ChangeLog/20221126#usb-ids-Refactoring","185":"/ChangeLog/20221126#led-callback-refactor","186":"/ChangeLog/20221126#unicode-mode-renaming","187":"/ChangeLog/20221126#notable-core","188":"/ChangeLog/20221126#keycodes-overhaul-core-changes","189":"/ChangeLog/20221126#board-converters","190":"/ChangeLog/20221126#pointing-and-digitizer","191":"/ChangeLog/20221126#full-changelist","192":"/ChangeLog/20230226#qmk-breaking-changes-2023-february-26-changelog","193":"/ChangeLog/20230226#changes-requiring-user-action","194":"/ChangeLog/20230226#i-m-t-i","195":"/ChangeLog/20230226#quick-tap-term","196":"/ChangeLog/20230226#leader-key-rework-leader-key-rework-19632","197":"/ChangeLog/20230226#updated-keyboard-codebases","198":"/ChangeLog/20230226#notable-core","199":"/ChangeLog/20230226#full-changelist","200":"/ChangeLog/20230528#qmk-breaking-changes-2023-may-28-changelog","201":"/ChangeLog/20230528#notable-changes","202":"/ChangeLog/20230528#repeat-last-key","203":"/ChangeLog/20230528#user-callback-for-pre-process-record","204":"/ChangeLog/20230528#consolidate-modelm","205":"/ChangeLog/20230528#changes-requiring-user-action","206":"/ChangeLog/20230528#i-m-t-i","207":"/ChangeLog/20230528#updated-keyboard-codebases","208":"/ChangeLog/20230528#notable-core","209":"/ChangeLog/20230528#encoder-functionality-fallback","210":"/ChangeLog/20230528#oled-driver-improvements","211":"/ChangeLog/20230528#full-changelist","212":"/ChangeLog/20230827#qmk-breaking-changes-2023-aug-27-changelog","213":"/ChangeLog/20230827#notable-changes","214":"/ChangeLog/20230827#rgb-matrix-optimizations","215":"/ChangeLog/20230827#audio-optimizations-21496-21498","216":"/ChangeLog/20230827#changes-requiring-user-action","217":"/ChangeLog/20230827#updated-keyboard-codebases","218":"/ChangeLog/20230827#remove-encoder-in-matrix-workaround-code","219":"/ChangeLog/20230827#unicodemap-keycodes-rename","220":"/ChangeLog/20230827#remove-old-oled-api-code","221":"/ChangeLog/20230827#driver-naming-consolidation","222":"/ChangeLog/20230827#full-changelist","223":"/ChangeLog/20231126#qmk-breaking-changes-2023-november-26-changelog","224":"/ChangeLog/20231126#notable-features","225":"/ChangeLog/20231126#changes-requiring-user-action","226":"/ChangeLog/20231126#updated-keyboard-codebases","227":"/ChangeLog/20231126#notable-core","228":"/ChangeLog/20231126#external-userspace-22222","229":"/ChangeLog/20231126#improve-and-cleanup-shutdown-callbacks","230":"/ChangeLog/20231126#oled-force-flush","231":"/ChangeLog/20231126#switch-statement-helpers-for-keycode-ranges","232":"/ChangeLog/20231126#quantum-painter-oled-support","233":"/ChangeLog/20231126#rgb-led-lighting-driver-naming-and-cleanup-21890-21891-21892-21903-21904-21905-21918-21929-21938-22004-22008-22009-22071-22090-22099-22126-22133-22163-22200-22308-22309-22311-22325-22365-22379-22380-22381-22383-22436","234":"/ChangeLog/20231126#peripheral-subsystem-enabling","235":"/ChangeLog/20231126#vusb-nkro","236":"/ChangeLog/20231126#full-changelist","237":"/ChangeLog/20240225#qmk-breaking-changes-2024-february-25-changelog","238":"/ChangeLog/20240225#notable-features","239":"/ChangeLog/20240225#changes-requiring-user-action","240":"/ChangeLog/20240225#windows-driver-changes-qmk-toolbox-0-3-0-release","241":"/ChangeLog/20240225#updated-keyboard-codebases","242":"/ChangeLog/20240225#notable-core","243":"/ChangeLog/20240225#gpio-rename","244":"/ChangeLog/20240225#i2c-driver-api-changes-22905","245":"/ChangeLog/20240225#bootmagic-rename","246":"/ChangeLog/20240225#auto-mouse-layer","247":"/ChangeLog/20240225#dip-switch-map","248":"/ChangeLog/20240225#qp-updates","249":"/ChangeLog/20240225#full-changelist","250":"/ChangeLog/20240526#qmk-breaking-changes-2024-may-26-changelog","251":"/ChangeLog/20240526#notable-features","252":"/ChangeLog/20240526#changes-requiring-user-action","253":"/ChangeLog/20240526#updated-keyboard-codebases","254":"/ChangeLog/20240526#remove-deprecated-quantum-keycodes-23407","255":"/ChangeLog/20240526#spacey-layout-updates","256":"/ChangeLog/20240526#acr60-layout-updates","257":"/ChangeLog/20240526#acr60-layout-hhkb","258":"/ChangeLog/20240526#acr60-layout-true-hhkb","259":"/ChangeLog/20240526#acr60-layout-directional","260":"/ChangeLog/20240526#acr60-layout-mitchsplit","261":"/ChangeLog/20240526#notable-core","262":"/ChangeLog/20240526#keyboard-json","263":"/ChangeLog/20240526#refactor-chibios-usb-endpoints-to-be-fully-async-21656","264":"/ChangeLog/20240526#deprecation-notices","265":"/ChangeLog/20240526#migration-of-via-keymaps-to-via-team-control","266":"/ChangeLog/20240526#full-changelist","267":"/ChangeLog/20240825#qmk-breaking-changes-2024-august-25-changelog","268":"/ChangeLog/20240825#notable-features","269":"/ChangeLog/20240825#changes-requiring-user-action","270":"/ChangeLog/20240825#updated-keyboard-codebases","271":"/ChangeLog/20240825#sparkfun-pro-micro-rp2040-converter-renamed-24192","272":"/ChangeLog/20240825#key-override-keymap-c-signature-change-24120","273":"/ChangeLog/20240825#adns9800-and-pmw33xx-firmware-upload-now-opt-in-24001","274":"/ChangeLog/20240825#deprecation-notices","275":"/ChangeLog/20240825#migration-of-via-keymaps-to-via-team-control","276":"/ChangeLog/20240825#adns9800-and-pmw33xx-sensor-firmware-rom-removal","277":"/ChangeLog/20240825#full-changelist","278":"/ChangeLog/20241124#qmk-breaking-changes-2024-november-24-changelog","279":"/ChangeLog/20241124#notable-features","280":"/ChangeLog/20241124#changes-requiring-user-action","281":"/ChangeLog/20241124#updated-keyboard-codebases","282":"/ChangeLog/20241124#deprecation-notices","283":"/ChangeLog/20241124#rgb-keycode-overhaul-23679-24484-24490","284":"/ChangeLog/20241124#adns9800-and-pmw33xx-sensor-firmware-rom-removal-24428","285":"/ChangeLog/20241124#full-changelist","286":"/ChangeLog/20250223#qmk-breaking-changes-2025-february-23-changelog","287":"/ChangeLog/20250223#notable-features","288":"/ChangeLog/20250223#community-modules-24848","289":"/ChangeLog/20250223#chordal-hold-24560","290":"/ChangeLog/20250223#changes-requiring-user-action","291":"/ChangeLog/20250223#updated-keyboard-codebases","292":"/ChangeLog/20250223#deprecation-notices","293":"/ChangeLog/20250223#default-folder-removal-24836","294":"/ChangeLog/20250223#full-changelist","295":"/ChangeLog/20250525#qmk-breaking-changes-2025-may-25-changelog","296":"/ChangeLog/20250525#notable-features","297":"/ChangeLog/20250525#flow-tap-25125","298":"/ChangeLog/20250525#community-modules-1-1-1-25050-25187","299":"/ChangeLog/20250525#changes-requiring-user-action","300":"/ChangeLog/20250525#updated-keyboard-codebases","301":"/ChangeLog/20250525#deprecation-notices","302":"/ChangeLog/20250525#deprecation-of-qmk-generate-compilation-database-25237","303":"/ChangeLog/20250525#deprecation-of-usb-force-nkro-force-nkro-25262","304":"/ChangeLog/20250525#ctpc-convert-to-proton-c-removal-25111","305":"/ChangeLog/20250525#default-folder-removal-23281","306":"/ChangeLog/20250525#converter-pin-compatible-updates-20330","307":"/ChangeLog/20250525#deprecation-of-encoder-update-kb-user","308":"/ChangeLog/20250525#full-changelist","309":"/ChangeLog/20250831#qmk-breaking-changes-2025-aug-31-changelog","310":"/ChangeLog/20250831#changes-requiring-user-action","311":"/ChangeLog/20250831#updated-keyboard-codebases","312":"/ChangeLog/20250831#mitigate-via-keylogger-security-issues-25414","313":"/ChangeLog/20250831#deprecation-notices","314":"/ChangeLog/20250831#default-folder-removal-23281","315":"/ChangeLog/20250831#converter-pin-compatible-updates-20330","316":"/ChangeLog/20250831#removal-of-deprecated-rgb-and-mouse-keycodes-25444","317":"/ChangeLog/20250831#full-changelist","318":"/ChangeLog/20251130#qmk-breaking-changes-2025-nov-30-changelog","319":"/ChangeLog/20251130#notable-features","320":"/ChangeLog/20251130#speculative-hold-option-for-mod-taps-hold-mods-instantly-while-unsettled-25572","321":"/ChangeLog/20251130#changes-requiring-user-action","322":"/ChangeLog/20251130#updated-keyboard-codebases","323":"/ChangeLog/20251130#reduce-tap-dance-memory-usage-move-state-out-of-data-25415","324":"/ChangeLog/20251130#before","325":"/ChangeLog/20251130#after","326":"/ChangeLog/20251130#deprecation-notices","327":"/ChangeLog/20251130#remove-override-of-qk-led-rgb-matrix-toggle-keycode-25672","328":"/ChangeLog/20251130#full-changelist","329":"/ChangeLog/20260222#qmk-breaking-changes-2026-feb-22-changelog","330":"/ChangeLog/20260222#deprecation-notices","331":"/ChangeLog/20260222#removal-of-deprecated-gpio-defines-26028","332":"/ChangeLog/20260222#removal-of-deprecated-islefthand-25897","333":"/ChangeLog/20260222#full-changelist","334":"/__capabilities#documentation-capabilities","335":"/__capabilities#overall-capabilities","336":"/__capabilities#dividing-lines","337":"/__capabilities#images","338":"/__capabilities#lists","339":"/__capabilities#emoji","340":"/__capabilities#direct","341":"/__capabilities#as-colon-name-colon","342":"/__capabilities#xml-entities","343":"/__capabilities#styling","344":"/__capabilities#css-ish","345":"/__capabilities#tables","346":"/__capabilities#indented-sections","347":"/__capabilities#keyboard-keys","348":"/__capabilities#code-blocks","349":"/__capabilities#sub-superscript","350":"/__capabilities#tabs","351":"/__capabilities#tab-one","352":"/__capabilities#nested-one","353":"/__capabilities#nested-two","354":"/__capabilities#tab-two","355":"/__capabilities#tab-three","356":"/__capabilities#details-sections","357":"/__capabilities#embed","358":"/api_development_environment#development-environment-setup","359":"/api_development_overview#qmk-compiler-development-guide","360":"/api_development_overview#overview","361":"/api_development_overview#workers","362":"/api_development_overview#api-service","363":"/api_development_overview#app-route-v1-compile-methods-post","364":"/api_development_overview#app-route-v1-compile-string-job-id-methods-get","365":"/api_development_overview#app-route-v1-compile-string-job-id-download-methods-get","366":"/api_development_overview#app-route-v1-compile-string-job-id-source-methods-get","367":"/api_docs#qmk-api","368":"/api_docs#overview","369":"/api_docs#example-json-payload","370":"/api_docs#submitting-a-compile-job","371":"/api_docs#checking-the-status","372":"/api_docs#examining-finished-results","373":"/api_docs#qmk-constants","374":"/api_overview#qmk-api","375":"/api_overview#app-developers","376":"/api_overview#keyboard-maintainers","377":"/api_overview#backend-developers","378":"/arm_debugging#arm-debugging-using-eclipse","379":"/arm_debugging#installing-the-software","380":"/arm_debugging#the-xpack-manager","381":"/arm_debugging#the-arm-toolchain","382":"/arm_debugging#windows-build-tools","383":"/arm_debugging#programmer-debugger-drivers","384":"/arm_debugging#openocd","385":"/arm_debugging#java","386":"/arm_debugging#gnu-mcu-eclipse-ide","387":"/arm_debugging#configuring-eclipse","388":"/arm_debugging#building","389":"/arm_debugging#debugging","390":"/arm_debugging#connecting-the-debugger","391":"/arm_debugging#configuring-the-debugger","392":"/arm_debugging#running-the-debugger","393":"/breaking_changes#breaking-changes","394":"/breaking_changes#what-has-been-included-in-past-breaking-changes","395":"/breaking_changes#when-is-the-next-breaking-change","396":"/breaking_changes#important-dates","397":"/breaking_changes#what-changes-will-be-included","398":"/breaking_changes#checklists","399":"/breaking_changes#_4-weeks-before-merge","400":"/breaking_changes#_2-weeks-before-merge","401":"/breaking_changes#_1-week-before-merge","402":"/breaking_changes#_2-days-before-merge","403":"/breaking_changes#day-of-merge","404":"/breaking_changes#post-merge-operations","405":"/breaking_changes#updating-the-develop-branch","406":"/breaking_changes#set-up-discord-events-for-the-next-cycle","407":"/breaking_changes_history#past-breaking-changes","408":"/breaking_changes_instructions#breaking-changes-my-pull-request-was-flagged","409":"/breaking_changes_instructions#what-do-i-do","410":"/breaking_changes_instructions#consider-splitting-up-your-pr","411":"/breaking_changes_instructions#document-your-changes","412":"/breaking_changes_instructions#ask-for-help","413":"/cli#qmk-cli","414":"/cli#overview","415":"/cli#requirements","416":"/cli#install-using-homebrew","417":"/cli#install-using-uv","418":"/cli#install-using-easy_install-or-pip","419":"/cli#packaging-for-other-operating-systems","420":"/chibios_upgrade_instructions#chibios-upgrade-procedure","421":"/chibios_upgrade_instructions#getting-chibios","422":"/chibios_upgrade_instructions#getting-chibios-contrib","423":"/chibios_upgrade_instructions#updating-submodules","424":"/chibios_upgrade_instructions#when-merging-a-pr-containing-an-upgrade-of-chibios-chibios-contrib","425":"/cli_commands#qmk-cli-commands","426":"/cli_commands#user-commands","427":"/cli_commands#qmk-compile","428":"/cli_commands#qmk-flash","429":"/cli_commands#qmk-config","430":"/cli_commands#qmk-cd","431":"/cli_commands#qmk-find","432":"/cli_commands#qmk-console","433":"/cli_commands#qmk-doctor","434":"/cli_commands#qmk-format-json","435":"/cli_commands#qmk-info","436":"/cli_commands#qmk-json2c","437":"/cli_commands#qmk-c2json","438":"/cli_commands#qmk-lint","439":"/cli_commands#qmk-list-keyboards","440":"/cli_commands#qmk-list-keymaps","441":"/cli_commands#qmk-migrate","442":"/cli_commands#qmk-new-keyboard","443":"/cli_commands#qmk-new-keymap","444":"/cli_commands#qmk-clean","445":"/cli_commands#qmk-via2json","446":"/cli_commands#qmk-import-keyboard","447":"/cli_commands#qmk-import-keymap","448":"/cli_commands#qmk-import-kbfirmware","449":"/cli_commands#external-userspace-commands","450":"/cli_commands#qmk-userspace-add","451":"/cli_commands#qmk-userspace-remove","452":"/cli_commands#qmk-userspace-list","453":"/cli_commands#qmk-userspace-compile","454":"/cli_commands#qmk-userspace-doctor","455":"/cli_commands#developer-commands","456":"/cli_commands#qmk-format-text","457":"/cli_commands#qmk-format-c","458":"/cli_commands#qmk-docs","459":"/cli_commands#qmk-generate-docs","460":"/cli_commands#qmk-generate-rgb-breathe-table","461":"/cli_commands#qmk-kle2json","462":"/cli_commands#qmk-format-python","463":"/cli_commands#qmk-pytest","464":"/cli_commands#qmk-painter-convert-graphics","465":"/cli_commands#qmk-painter-make-font-image","466":"/cli_commands#qmk-painter-convert-font-image","467":"/cli_commands#qmk-test-c","468":"/cli_commands#qmk-generate-compilation-database","469":"/cli_configuration#qmk-cli-configuration","470":"/cli_configuration#introduction","471":"/cli_configuration#simple-example","472":"/cli_configuration#setting-user-defaults","473":"/cli_configuration#cli-documentation-qmk-config","474":"/cli_configuration#setting-configuration-values","475":"/cli_configuration#reading-configuration-values","476":"/cli_configuration#entire-configuration-example","477":"/cli_configuration#whole-section-example","478":"/cli_configuration#single-key-example","479":"/cli_configuration#multiple-keys-example","480":"/cli_configuration#deleting-configuration-values","481":"/cli_configuration#multiple-operations","482":"/cli_configuration#user-configuration-options","483":"/cli_configuration#all-configuration-options","484":"/cli_development#qmk-cli-development","485":"/cli_development#overview","486":"/cli_development#developer-mode","487":"/cli_development#subcommands","488":"/cli_development#user-interaction","489":"/cli_development#printing-text","490":"/cli_development#logging-cli-log","491":"/cli_development#printing-cli-echo","492":"/cli_development#colorizing-text","493":"/cli_development#arguments-and-configuration","494":"/cli_development#reading-configuration-values","495":"/cli_development#setting-configuration-values","496":"/cli_development#deleting-configuration-values","497":"/cli_development#writing-the-configuration-file","498":"/cli_development#excluding-arguments-from-configuration","499":"/cli_development#testing-and-linting-and-formatting-oh-my","500":"/cli_development#testing-and-linting","501":"/cli_development#formatting","502":"/cli_development#formatting-details","503":"/cli_development#testing-details","504":"/cli_development#linting-details","505":"/cli_tab_complete#tab-completion-for-qmk","506":"/cli_tab_complete#setup","507":"/cli_tab_complete#for-your-user-only","508":"/cli_tab_complete#system-wide-symlink","509":"/cli_tab_complete#system-wide-copy","510":"/compatible_microcontrollers#compatible-microcontrollers","511":"/compatible_microcontrollers#atmel-avr","512":"/compatible_microcontrollers#arm","513":"/compatible_microcontrollers#stmicroelectronics-stm32","514":"/compatible_microcontrollers#westberrytech-wb32","515":"/compatible_microcontrollers#artery-at32","516":"/compatible_microcontrollers#nxp-kinetis","517":"/compatible_microcontrollers#raspberry-pi","518":"/compatible_microcontrollers#risc-v","519":"/compatible_microcontrollers#gigadevice","520":"/coding_conventions_c#coding-conventions-c","521":"/coding_conventions_c#auto-formatting-with-clang-format","522":"/coding_conventions_python#coding-conventions-python","523":"/coding_conventions_python#yapf","524":"/coding_conventions_python#imports","525":"/coding_conventions_python#import-examples","526":"/coding_conventions_python#statements","527":"/coding_conventions_python#naming","528":"/coding_conventions_python#names-to-avoid","529":"/coding_conventions_python#docstrings","530":"/coding_conventions_python#simple-docstring-example","531":"/coding_conventions_python#complex-docstring-example","532":"/coding_conventions_python#function-arguments-docstring-example","533":"/coding_conventions_python#exceptions","534":"/coding_conventions_python#tuples","535":"/coding_conventions_python#lists-and-dictionaries","536":"/coding_conventions_python#parentheses","537":"/coding_conventions_python#format-strings","538":"/coding_conventions_python#comprehensions-generator-expressions","539":"/coding_conventions_python#lambdas","540":"/coding_conventions_python#conditional-expressions","541":"/coding_conventions_python#default-argument-values","542":"/coding_conventions_python#properties","543":"/coding_conventions_python#true-false-evaluations","544":"/coding_conventions_python#decorators","545":"/coding_conventions_python#threading-and-multiprocessing","546":"/coding_conventions_python#power-features","547":"/coding_conventions_python#type-annotated-code","548":"/coding_conventions_python#function-length","549":"/coding_conventions_python#fixmes","550":"/coding_conventions_python#testing","551":"/coding_conventions_python#integration-tests","552":"/coding_conventions_python#unit-tests","553":"/config_options#configuring-qmk","554":"/config_options#qmk-default","555":"/config_options#keyboard","556":"/config_options#folders","557":"/config_options#keymap","558":"/config_options#the-config-h-file","559":"/config_options#hardware-options","560":"/config_options#features-that-can-be-disabled","561":"/config_options#features-that-can-be-enabled","562":"/config_options#behaviors-that-can-be-configured","563":"/config_options#rgb-light-configuration","564":"/config_options#mouse-key-options","565":"/config_options#split-keyboard-options","566":"/config_options#setting-handedness","567":"/config_options#defines-for-handedness","568":"/config_options#other-options","569":"/config_options#the-rules-mk-file","570":"/config_options#build-options","571":"/config_options#avr-mcu-options","572":"/config_options#feature-options","573":"/config_options#usb-endpoint-limitations","574":"/configurator_architecture#qmk-configurator-architecture","575":"/configurator_architecture#overview","576":"/configurator_architecture#detailed-description","577":"/configurator_architecture#configurator-frontend","578":"/configurator_architecture#keyboard-metadata","579":"/configurator_architecture#qmk-api","580":"/configurator_architecture#compile-job-queued","581":"/configurator_architecture#compile-job-running","582":"/configurator_architecture#compile-job-finished","583":"/configurator_architecture#redis-rq","584":"/configurator_architecture#qmk-compiler","585":"/configurator_default_keymaps#adding-default-keymaps","586":"/configurator_default_keymaps#technical-information","587":"/configurator_default_keymaps#example","588":"/configurator_default_keymaps#caveats","589":"/configurator_default_keymaps#layer-references","590":"/configurator_default_keymaps#custom-code","591":"/configurator_default_keymaps#custom-keycodes","592":"/configurator_default_keymaps#additional-reading","593":"/configurator_step_by_step#qmk-configurator-step-by-step","594":"/configurator_step_by_step#step-1-select-your-keyboard","595":"/configurator_step_by_step#step-2-select-your-keyboard-layout","596":"/configurator_step_by_step#step-3-name-your-keymap","597":"/configurator_step_by_step#step-4-define-your-keymap","598":"/configurator_step_by_step#step-5-save-your-keymap-for-future-changes","599":"/configurator_step_by_step#step-6-compile-your-firmware-file","600":"/configurator_step_by_step#next-steps-flashing-your-keyboard","601":"/configurator_troubleshooting#configurator-troubleshooting","602":"/configurator_troubleshooting#my-json-file-is-not-working","603":"/configurator_troubleshooting#there-are-extra-spaces-in-my-layout-what-do-i-do","604":"/configurator_troubleshooting#what-is-the-keycode-for","605":"/configurator_troubleshooting#it-won-t-compile","606":"/configurator_troubleshooting#problems-and-bugs","607":"/contributing#how-to-contribute","608":"/contributing#i-don-t-want-to-read-this-whole-thing-i-just-have-a-question","609":"/contributing#project-overview","610":"/contributing#where-can-i-go-for-help","611":"/contributing#how-do-i-make-a-contribution","612":"/contributing#coding-conventions","613":"/contributing#general-guidelines","614":"/contributing#documentation","615":"/contributing#previewing-the-documentation","616":"/contributing#keyboards","617":"/contributing#quantum-tmk-core","618":"/contributing#refactoring","619":"/contributing#what-does-the-code-of-conduct-mean-for-me","620":"/custom_matrix#custom-matrix","621":"/custom_matrix#prerequisites","622":"/custom_matrix#lite","623":"/custom_matrix#full-replacement","624":"/custom_quantum_functions#how-to-customize-your-keyboard-s-behavior","625":"/custom_quantum_functions#a-word-on-core-vs-keyboards-vs-keymap","626":"/custom_quantum_functions#custom-keycodes","627":"/custom_quantum_functions#defining-a-new-keycode","628":"/custom_quantum_functions#programming-the-behavior-of-any-keycode","629":"/custom_quantum_functions#example-process-record-user-implementation","630":"/custom_quantum_functions#process-record-function-documentation","631":"/custom_quantum_functions#keyboard-initialization-code","632":"/custom_quantum_functions#keyboard-pre-initialization-code","633":"/custom_quantum_functions#example-keyboard-pre-init-user-implementation","634":"/custom_quantum_functions#keyboard-pre-init-function-documentation","635":"/custom_quantum_functions#matrix-initialization-code","636":"/custom_quantum_functions#matrix-init-function-documentation","637":"/custom_quantum_functions#low-level-matrix-overrides","638":"/custom_quantum_functions#keyboard-post-initialization-code","639":"/custom_quantum_functions#example-keyboard-post-init-user-implementation","640":"/custom_quantum_functions#keyboard-post-init-function-documentation","641":"/custom_quantum_functions#matrix-scanning-code","642":"/custom_quantum_functions#example-matrix-scan-implementation","643":"/custom_quantum_functions#matrix-scan-function-documentation","644":"/custom_quantum_functions#keyboard-housekeeping","645":"/custom_quantum_functions#example-void-housekeeping-task-user-void-implementation","646":"/custom_quantum_functions#keyboard-idling-wake-code","647":"/custom_quantum_functions#example-suspend-power-down-user-and-suspend-wakeup-init-user-implementation","648":"/custom_quantum_functions#keyboard-suspend-wake-function-documentation","649":"/custom_quantum_functions#keyboard-shutdown-reboot-code","650":"/custom_quantum_functions#example-shutdown-kb-implementation","651":"/custom_quantum_functions#example-shutdown-user-implementation","652":"/custom_quantum_functions#keyboard-shutdown-reboot-function-documentation","653":"/custom_quantum_functions#deferred-execution","654":"/custom_quantum_functions#deferred-executor-callbacks","655":"/custom_quantum_functions#deferred-executor-registration","656":"/custom_quantum_functions#extending-a-deferred-execution","657":"/custom_quantum_functions#cancelling-a-deferred-execution","658":"/custom_quantum_functions#deferred-callback-limits","659":"/custom_quantum_functions#advanced-topics","660":"/custom_quantum_functions#layer-change-code","661":"/custom_quantum_functions#persistent-configuration-eeprom","662":"/data_driven_config#data-driven-configuration","663":"/data_driven_config#history","664":"/data_driven_config#overview","665":"/data_driven_config#adding-an-option-to-info-json","666":"/data_driven_config#add-it-to-the-schema","667":"/data_driven_config#add-a-mapping","668":"/data_driven_config#info-key","669":"/data_driven_config#value-types","670":"/data_driven_config#add-code-to-extract-it","671":"/data_driven_config#add-code-to-generate-it","672":"/documentation_templates#documentation-templates","673":"/documentation_templates#keyboard-readmemd-template","674":"/documentation_templates#keyboard-readme-md-template","675":"/documentation_best_practices#documentation-best-practices","676":"/documentation_best_practices#page-opening","677":"/documentation_best_practices#headings","678":"/documentation_best_practices#styled-hint-blocks","679":"/documentation_best_practices#important","680":"/documentation_best_practices#general-tips","681":"/documentation_best_practices#documenting-features","682":"/driver_installation_zadig#bootloader-driver-installation-with-zadig","683":"/driver_installation_zadig#installation","684":"/driver_installation_zadig#recovering-from-installation-to-wrong-device","685":"/driver_installation_zadig#uninstallation","686":"/driver_installation_zadig#list-of-known-bootloaders","687":"/drivers/adc#adc-driver","688":"/drivers/adc#usage","689":"/drivers/adc#channels","690":"/drivers/adc#avr","691":"/drivers/adc#arm","692":"/drivers/adc#stm32","693":"/drivers/adc#rp2040","694":"/drivers/adc#functions","695":"/drivers/adc#avr-1","696":"/drivers/adc#arm-1","697":"/drivers/adc#configuration","698":"/drivers/adc#arm-2","699":"/drivers/apa102#apa102-driver","700":"/drivers/apa102#usage","701":"/drivers/apa102#basic-configuration","702":"/drivers/apa102#api","703":"/drivers/apa102#api-apa102-init","704":"/drivers/apa102#api-apa102-set-color","705":"/drivers/apa102#api-apa102-set-color-arguments","706":"/drivers/apa102#api-apa102-set-color-all","707":"/drivers/apa102#api-apa102-set-color-all-arguments","708":"/drivers/apa102#api-apa102-flush","709":"/drivers/apa102#api-apa102-set-brightness","710":"/drivers/apa102#api-apa102-set-brightness-arguments","711":"/drivers/audio#audio-driver","712":"/drivers/audio#avr","713":"/drivers/audio#arm","714":"/drivers/audio#dac-basic","715":"/drivers/audio#dac-additive","716":"/drivers/audio#dac-config","717":"/drivers/audio#buffer-size","718":"/drivers/audio#pwm-hardware","719":"/drivers/audio#pwm-software","720":"/drivers/audio#testing-notes","721":"/drivers/battery#battery-driver","722":"/drivers/battery#usage","723":"/drivers/battery#driver-configuration","724":"/drivers/battery#adc-driver","725":"/drivers/battery#custom-driver","726":"/drivers/aw20216s#aw20216s-driver","727":"/drivers/aw20216s#usage","728":"/drivers/aw20216s#basic-configuration","729":"/drivers/aw20216s#global-current-control","730":"/drivers/aw20216s#arm-configuration","731":"/drivers/aw20216s#led-mapping","732":"/drivers/aw20216s#api","733":"/drivers/aw20216s#api-aw20216s-led-t","734":"/drivers/aw20216s#api-aw20216s-led-t-members","735":"/drivers/aw20216s#api-aw20216s-init","736":"/drivers/aw20216s#api-aw20216s-init-arguments","737":"/drivers/aw20216s#api-aw20216s-set-color","738":"/drivers/aw20216s#api-aw20216s-set-color-arguments","739":"/drivers/aw20216s#api-aw20216s-set-color-all","740":"/drivers/aw20216s#api-aw20216s-set-color-all-arguments","741":"/drivers/aw20216s#api-aw20216s-update-pwm-buffers","742":"/drivers/aw20216s#api-aw20216s-update-pwm-buffers-arguments","743":"/drivers/eeprom#eeprom-driver-configuration","744":"/drivers/eeprom#vendor-eeprom-driver-configuration","745":"/drivers/eeprom#stm32l0l1-eeprom-driver-configuration","746":"/drivers/eeprom#i2c-eeprom-driver-configuration","747":"/drivers/eeprom#spi-eeprom-driver-configuration","748":"/drivers/eeprom#transient-eeprom-driver-configuration","749":"/drivers/eeprom#wear_leveling-eeprom-driver-configuration","750":"/drivers/eeprom#wear_leveling-configuration","751":"/drivers/eeprom#wear_leveling-efl-driver-configuration","752":"/drivers/eeprom#wear_leveling-flash_spi-driver-configuration","753":"/drivers/eeprom#wear_leveling-rp2040-driver-configuration","754":"/drivers/eeprom#wear_leveling-legacy-driver-configuration","755":"/drivers/flash#flash-driver-configuration","756":"/drivers/flash#spi-flash-driver-configuration","757":"/drivers/gpio#gpio-control","758":"/drivers/gpio#macros","759":"/drivers/gpio#advanced-settings","760":"/drivers/gpio#atomic-operation","761":"/drivers/i2c#i2c-master-driver","762":"/drivers/i2c#usage","763":"/drivers/i2c#note-on-i2c-addresses","764":"/drivers/i2c#avr-configuration","765":"/drivers/i2c#arm-configuration","766":"/drivers/i2c#arm-configuration-i2cv1","767":"/drivers/i2c#arm-configuration-i2cv2","768":"/drivers/i2c#api","769":"/drivers/i2c#api-i2c-init","770":"/drivers/i2c#api-i2c-transmit","771":"/drivers/i2c#api-i2c-transmit-arguments","772":"/drivers/i2c#api-i2c-transmit-return","773":"/drivers/i2c#api-i2c-transmit-p","774":"/drivers/i2c#api-i2c-transmit-p-arguments","775":"/drivers/i2c#api-i2c-transmit-p-return","776":"/drivers/i2c#api-i2c-receive","777":"/drivers/i2c#api-i2c-receive-arguments","778":"/drivers/i2c#api-i2c-receive-return","779":"/drivers/i2c#api-i2c-transmit-and-receive","780":"/drivers/i2c#api-i2c-transmit-and-receive-arguments","781":"/drivers/i2c#api-i2c-transmit-and-receive-return","782":"/drivers/i2c#api-i2c-write-register","783":"/drivers/i2c#api-i2c-write-register-arguments","784":"/drivers/i2c#api-i2c-write-register-return","785":"/drivers/i2c#api-i2c-write-register16","786":"/drivers/i2c#api-i2c-write-register16-arguments","787":"/drivers/i2c#api-i2c-write-register16-return","788":"/drivers/i2c#api-i2c-read-register","789":"/drivers/i2c#api-i2c-read-register-arguments","790":"/drivers/i2c#api-i2c-read-register-return","791":"/drivers/i2c#api-i2c-read-register16","792":"/drivers/i2c#api-i2c-read-register16-arguments","793":"/drivers/i2c#api-i2c-read-register16-return","794":"/drivers/i2c#api-i2c-ping-address","795":"/drivers/i2c#api-i2c-ping-address-arguments","796":"/drivers/i2c#api-i2c-ping-address-return","797":"/drivers/is31fl3218#is31fl3218-driver","798":"/drivers/is31fl3218#usage","799":"/drivers/is31fl3218#basic-configuration","800":"/drivers/is31fl3218#i2c-addressing","801":"/drivers/is31fl3218#arm-configuration","802":"/drivers/is31fl3218#led-mapping","803":"/drivers/is31fl3218#api","804":"/drivers/is31fl3218#api-is31fl3218-led-t","805":"/drivers/is31fl3218#api-is31fl3218-led-t-members","806":"/drivers/is31fl3218#api-is31fl3218-init","807":"/drivers/is31fl3218#api-is31fl3218-write-register","808":"/drivers/is31fl3218#api-is31fl3218-write-register-arguments","809":"/drivers/is31fl3218#api-is31fl3218-set-color","810":"/drivers/is31fl3218#api-is31fl3218-set-color-arguments","811":"/drivers/is31fl3218#api-is31fl3218-set-color-all","812":"/drivers/is31fl3218#api-is31fl3218-set-color-all-arguments","813":"/drivers/is31fl3218#api-is31fl3218-set-value","814":"/drivers/is31fl3218#api-is31fl3218-set-value-arguments","815":"/drivers/is31fl3218#api-is31fl3218-set-value-all","816":"/drivers/is31fl3218#api-is31fl3218-set-value-all-arguments","817":"/drivers/is31fl3218#api-is31fl3218-set-led-control-register-rgb","818":"/drivers/is31fl3218#api-is31fl3218-set-led-control-register-rgb-arguments","819":"/drivers/is31fl3218#api-is31fl3218-set-led-control-register-mono","820":"/drivers/is31fl3218#api-is31fl3218-set-led-control-register-mono-arguments","821":"/drivers/is31fl3218#api-is31fl3218-update-pwm-buffers","822":"/drivers/is31fl3218#api-is31fl3218-update-led-control-registers","823":"/drivers/is31fl3236#is31fl3236-driver","824":"/drivers/is31fl3236#usage","825":"/drivers/is31fl3236#basic-configuration","826":"/drivers/is31fl3236#i2c-addressing","827":"/drivers/is31fl3236#arm-configuration","828":"/drivers/is31fl3236#led-mapping","829":"/drivers/is31fl3236#api","830":"/drivers/is31fl3236#api-is31fl3236-led-t","831":"/drivers/is31fl3236#api-is31fl3236-led-t-members","832":"/drivers/is31fl3236#api-is31fl3236-init","833":"/drivers/is31fl3236#api-is31fl3236-init-arguments","834":"/drivers/is31fl3236#api-is31fl3236-write-register","835":"/drivers/is31fl3236#api-is31fl3236-write-register-arguments","836":"/drivers/is31fl3236#api-is31fl3236-set-color","837":"/drivers/is31fl3236#api-is31fl3236-set-color-arguments","838":"/drivers/is31fl3236#api-is31fl3236-set-color-all","839":"/drivers/is31fl3236#api-is31fl3236-set-color-all-arguments","840":"/drivers/is31fl3236#api-is31fl3236-set-value","841":"/drivers/is31fl3236#api-is31fl3236-set-value-arguments","842":"/drivers/is31fl3236#api-is31fl3236-set-value-all","843":"/drivers/is31fl3236#api-is31fl3236-set-value-all-arguments","844":"/drivers/is31fl3236#api-is31fl3236-set-led-control-register-rgb","845":"/drivers/is31fl3236#api-is31fl3236-set-led-control-register-rgb-arguments","846":"/drivers/is31fl3236#api-is31fl3236-set-led-control-register-mono","847":"/drivers/is31fl3236#api-is31fl3236-set-led-control-register-mono-arguments","848":"/drivers/is31fl3236#api-is31fl3236-update-pwm-buffers","849":"/drivers/is31fl3236#api-is31fl3236-update-pwm-buffers-arguments","850":"/drivers/is31fl3236#api-is31fl3236-update-led-control-registers","851":"/drivers/is31fl3236#api-is31fl3236-update-led-control-registers-arguments","852":"/drivers/is31fl3729#is31fl3729-driver","853":"/drivers/is31fl3729#usage","854":"/drivers/is31fl3729#basic-configuration","855":"/drivers/is31fl3729#i2c-addressing","856":"/drivers/is31fl3729#pwm-frequency","857":"/drivers/is31fl3729#de-ghosting","858":"/drivers/is31fl3729#global-current-control","859":"/drivers/is31fl3729#arm-configuration","860":"/drivers/is31fl3729#led-mapping","861":"/drivers/is31fl3729#api","862":"/drivers/is31fl3729#api-is31fl3729-led-t","863":"/drivers/is31fl3729#api-is31fl3729-led-t-members","864":"/drivers/is31fl3729#api-is31fl3729-init","865":"/drivers/is31fl3729#api-is31fl3729-init-arguments","866":"/drivers/is31fl3729#api-is31fl3729-write-register","867":"/drivers/is31fl3729#api-is31fl3729-write-register-arguments","868":"/drivers/is31fl3729#api-is31fl3729-set-color","869":"/drivers/is31fl3729#api-is31fl3729-set-color-arguments","870":"/drivers/is31fl3729#api-is31fl3729-set-color-all","871":"/drivers/is31fl3729#api-is31fl3729-set-color-all-arguments","872":"/drivers/is31fl3729#api-is31fl3729-set-value","873":"/drivers/is31fl3729#api-is31fl3729-set-value-arguments","874":"/drivers/is31fl3729#api-is31fl3729-set-value-all","875":"/drivers/is31fl3729#api-is31fl3729-set-value-all-arguments","876":"/drivers/is31fl3729#api-is31fl3729-set-scaling-register-rgb","877":"/drivers/is31fl3729#api-is31fl3729-set-scaling-register-rgb-arguments","878":"/drivers/is31fl3729#api-is31fl3729-set-scaling-register-mono","879":"/drivers/is31fl3729#api-is31fl3729-set-scaling-register-mono-arguments","880":"/drivers/is31fl3729#api-is31fl3729-update-pwm-buffers","881":"/drivers/is31fl3729#api-is31fl3729-update-pwm-buffers-arguments","882":"/drivers/is31fl3729#api-is31fl3729-update-scaling-registers","883":"/drivers/is31fl3729#api-is31fl3729-update-scaling-registers-arguments","884":"/drivers/is31fl3731#is31fl3731-driver","885":"/drivers/is31fl3731#usage","886":"/drivers/is31fl3731#basic-configuration","887":"/drivers/is31fl3731#i2c-addressing","888":"/drivers/is31fl3731#de-ghosting","889":"/drivers/is31fl3731#arm-configuration","890":"/drivers/is31fl3731#led-mapping","891":"/drivers/is31fl3731#api","892":"/drivers/is31fl3731#api-is31fl3731-led-t","893":"/drivers/is31fl3731#api-is31fl3731-led-t-members","894":"/drivers/is31fl3731#api-is31fl3731-init","895":"/drivers/is31fl3731#api-is31fl3731-init-arguments","896":"/drivers/is31fl3731#api-is31fl3731-write-register","897":"/drivers/is31fl3731#api-is31fl3731-write-register-arguments","898":"/drivers/is31fl3731#api-is31fl3731-select-page","899":"/drivers/is31fl3731#api-is31fl3731-select-page-arguments","900":"/drivers/is31fl3731#api-is31fl3731-set-color","901":"/drivers/is31fl3731#api-is31fl3731-set-color-arguments","902":"/drivers/is31fl3731#api-is31fl3731-set-color-all","903":"/drivers/is31fl3731#api-is31fl3731-set-color-all-arguments","904":"/drivers/is31fl3731#api-is31fl3731-set-value","905":"/drivers/is31fl3731#api-is31fl3731-set-value-arguments","906":"/drivers/is31fl3731#api-is31fl3731-set-value-all","907":"/drivers/is31fl3731#api-is31fl3731-set-value-all-arguments","908":"/drivers/is31fl3731#api-is31fl3731-set-led-control-register-rgb","909":"/drivers/is31fl3731#api-is31fl3731-set-led-control-register-rgb-arguments","910":"/drivers/is31fl3731#api-is31fl3731-set-led-control-register-mono","911":"/drivers/is31fl3731#api-is31fl3731-set-led-control-register-mono-arguments","912":"/drivers/is31fl3731#api-is31fl3731-update-pwm-buffers","913":"/drivers/is31fl3731#api-is31fl3731-update-pwm-buffers-arguments","914":"/drivers/is31fl3731#api-is31fl3731-update-led-control-registers","915":"/drivers/is31fl3731#api-is31fl3731-update-led-control-registers-arguments","916":"/drivers/is31fl3733#is31fl3733-driver","917":"/drivers/is31fl3733#usage","918":"/drivers/is31fl3733#basic-configuration","919":"/drivers/is31fl3733#i2c-addressing","920":"/drivers/is31fl3733#multi-driver-synchronization","921":"/drivers/is31fl3733#pwm-frequency","922":"/drivers/is31fl3733#de-ghosting","923":"/drivers/is31fl3733#global-current-control","924":"/drivers/is31fl3733#arm-configuration","925":"/drivers/is31fl3733#led-mapping","926":"/drivers/is31fl3733#api","927":"/drivers/is31fl3733#api-is31fl3733-led-t","928":"/drivers/is31fl3733#api-is31fl3733-led-t-members","929":"/drivers/is31fl3733#api-is31fl3733-init","930":"/drivers/is31fl3733#api-is31fl3733-init-arguments","931":"/drivers/is31fl3733#api-is31fl3733-write-register","932":"/drivers/is31fl3733#api-is31fl3733-write-register-arguments","933":"/drivers/is31fl3733#api-is31fl3733-select-page","934":"/drivers/is31fl3733#api-is31fl3733-select-page-arguments","935":"/drivers/is31fl3733#api-is31fl3733-set-color","936":"/drivers/is31fl3733#api-is31fl3733-set-color-arguments","937":"/drivers/is31fl3733#api-is31fl3733-set-color-all","938":"/drivers/is31fl3733#api-is31fl3733-set-color-all-arguments","939":"/drivers/is31fl3733#api-is31fl3733-set-value","940":"/drivers/is31fl3733#api-is31fl3733-set-value-arguments","941":"/drivers/is31fl3733#api-is31fl3733-set-value-all","942":"/drivers/is31fl3733#api-is31fl3733-set-value-all-arguments","943":"/drivers/is31fl3733#api-is31fl3733-set-led-control-register-rgb","944":"/drivers/is31fl3733#api-is31fl3733-set-led-control-register-rgb-arguments","945":"/drivers/is31fl3733#api-is31fl3733-set-led-control-register-mono","946":"/drivers/is31fl3733#api-is31fl3733-set-led-control-register-mono-arguments","947":"/drivers/is31fl3733#api-is31fl3733-update-pwm-buffers","948":"/drivers/is31fl3733#api-is31fl3733-update-pwm-buffers-arguments","949":"/drivers/is31fl3733#api-is31fl3733-update-led-control-registers","950":"/drivers/is31fl3733#api-is31fl3733-update-led-control-registers-arguments","951":"/drivers/is31fl3736#is31fl3736-driver","952":"/drivers/is31fl3736#usage","953":"/drivers/is31fl3736#basic-configuration","954":"/drivers/is31fl3736#i2c-addressing","955":"/drivers/is31fl3736#pwm-frequency","956":"/drivers/is31fl3736#de-ghosting","957":"/drivers/is31fl3736#global-current-control","958":"/drivers/is31fl3736#arm-configuration","959":"/drivers/is31fl3736#led-mapping","960":"/drivers/is31fl3736#api","961":"/drivers/is31fl3736#api-is31fl3736-led-t","962":"/drivers/is31fl3736#api-is31fl3736-led-t-members","963":"/drivers/is31fl3736#api-is31fl3736-init","964":"/drivers/is31fl3736#api-is31fl3736-init-arguments","965":"/drivers/is31fl3736#api-is31fl3736-write-register","966":"/drivers/is31fl3736#api-is31fl3736-write-register-arguments","967":"/drivers/is31fl3736#api-is31fl3736-select-page","968":"/drivers/is31fl3736#api-is31fl3736-select-page-arguments","969":"/drivers/is31fl3736#api-is31fl3736-set-color","970":"/drivers/is31fl3736#api-is31fl3736-set-color-arguments","971":"/drivers/is31fl3736#api-is31fl3736-set-color-all","972":"/drivers/is31fl3736#api-is31fl3736-set-color-all-arguments","973":"/drivers/is31fl3736#api-is31fl3736-set-value","974":"/drivers/is31fl3736#api-is31fl3736-set-value-arguments","975":"/drivers/is31fl3736#api-is31fl3736-set-value-all","976":"/drivers/is31fl3736#api-is31fl3736-set-value-all-arguments","977":"/drivers/is31fl3736#api-is31fl3736-set-led-control-register-rgb","978":"/drivers/is31fl3736#api-is31fl3736-set-led-control-register-rgb-arguments","979":"/drivers/is31fl3736#api-is31fl3736-set-led-control-register-mono","980":"/drivers/is31fl3736#api-is31fl3736-set-led-control-register-mono-arguments","981":"/drivers/is31fl3736#api-is31fl3736-update-pwm-buffers","982":"/drivers/is31fl3736#api-is31fl3736-update-pwm-buffers-arguments","983":"/drivers/is31fl3736#api-is31fl3736-update-led-control-registers","984":"/drivers/is31fl3736#api-is31fl3736-update-led-control-registers-arguments","985":"/drivers/is31fl3737#is31fl3737-driver","986":"/drivers/is31fl3737#usage","987":"/drivers/is31fl3737#basic-configuration","988":"/drivers/is31fl3737#i2c-addressing","989":"/drivers/is31fl3737#pwm-frequency","990":"/drivers/is31fl3737#de-ghosting","991":"/drivers/is31fl3737#global-current-control","992":"/drivers/is31fl3737#arm-configuration","993":"/drivers/is31fl3737#led-mapping","994":"/drivers/is31fl3737#api","995":"/drivers/is31fl3737#api-is31fl3737-led-t","996":"/drivers/is31fl3737#api-is31fl3737-led-t-members","997":"/drivers/is31fl3737#api-is31fl3737-init","998":"/drivers/is31fl3737#api-is31fl3737-init-arguments","999":"/drivers/is31fl3737#api-is31fl3737-write-register","1000":"/drivers/is31fl3737#api-is31fl3737-write-register-arguments","1001":"/drivers/is31fl3737#api-is31fl3737-select-page","1002":"/drivers/is31fl3737#api-is31fl3737-select-page-arguments","1003":"/drivers/is31fl3737#api-is31fl3737-set-color","1004":"/drivers/is31fl3737#api-is31fl3737-set-color-arguments","1005":"/drivers/is31fl3737#api-is31fl3737-set-color-all","1006":"/drivers/is31fl3737#api-is31fl3737-set-color-all-arguments","1007":"/drivers/is31fl3737#api-is31fl3737-set-value","1008":"/drivers/is31fl3737#api-is31fl3737-set-value-arguments","1009":"/drivers/is31fl3737#api-is31fl3737-set-value-all","1010":"/drivers/is31fl3737#api-is31fl3737-set-value-all-arguments","1011":"/drivers/is31fl3737#api-is31fl3737-set-led-control-register-rgb","1012":"/drivers/is31fl3737#api-is31fl3737-set-led-control-register-rgb-arguments","1013":"/drivers/is31fl3737#api-is31fl3737-set-led-control-register-mono","1014":"/drivers/is31fl3737#api-is31fl3737-set-led-control-register-mono-arguments","1015":"/drivers/is31fl3737#api-is31fl3737-update-pwm-buffers","1016":"/drivers/is31fl3737#api-is31fl3737-update-pwm-buffers-arguments","1017":"/drivers/is31fl3737#api-is31fl3737-update-led-control-registers","1018":"/drivers/is31fl3737#api-is31fl3737-update-led-control-registers-arguments","1019":"/drivers/is31fl3741#is31fl3741-driver","1020":"/drivers/is31fl3741#usage","1021":"/drivers/is31fl3741#basic-configuration","1022":"/drivers/is31fl3741#i2c-addressing","1023":"/drivers/is31fl3741#pwm-frequency","1024":"/drivers/is31fl3741#de-ghosting","1025":"/drivers/is31fl3741#global-current-control","1026":"/drivers/is31fl3741#arm-configuration","1027":"/drivers/is31fl3741#led-mapping","1028":"/drivers/is31fl3741#api","1029":"/drivers/is31fl3741#api-is31fl3741-led-t","1030":"/drivers/is31fl3741#api-is31fl3741-led-t-members","1031":"/drivers/is31fl3741#api-is31fl3741-init","1032":"/drivers/is31fl3741#api-is31fl3741-init-arguments","1033":"/drivers/is31fl3741#api-is31fl3741-write-register","1034":"/drivers/is31fl3741#api-is31fl3741-write-register-arguments","1035":"/drivers/is31fl3741#api-is31fl3741-select-page","1036":"/drivers/is31fl3741#api-is31fl3741-select-page-arguments","1037":"/drivers/is31fl3741#api-is31fl3741-set-color","1038":"/drivers/is31fl3741#api-is31fl3741-set-color-arguments","1039":"/drivers/is31fl3741#api-is31fl3741-set-color-all","1040":"/drivers/is31fl3741#api-is31fl3741-set-color-all-arguments","1041":"/drivers/is31fl3741#api-is31fl3741-set-value","1042":"/drivers/is31fl3741#api-is31fl3741-set-value-arguments","1043":"/drivers/is31fl3741#api-is31fl3741-set-value-all","1044":"/drivers/is31fl3741#api-is31fl3741-set-value-all-arguments","1045":"/drivers/is31fl3741#api-is31fl3741-set-led-control-register-rgb","1046":"/drivers/is31fl3741#api-is31fl3741-set-led-control-register-rgb-arguments","1047":"/drivers/is31fl3741#api-is31fl3741-set-led-control-register-mono","1048":"/drivers/is31fl3741#api-is31fl3741-set-led-control-register-mono-arguments","1049":"/drivers/is31fl3741#api-is31fl3741-update-pwm-buffers","1050":"/drivers/is31fl3741#api-is31fl3741-update-pwm-buffers-arguments","1051":"/drivers/is31fl3741#api-is31fl3741-update-led-control-registers","1052":"/drivers/is31fl3741#api-is31fl3741-update-led-control-registers-arguments","1053":"/drivers/is31fl3742a#is31fl3742a-driver","1054":"/drivers/is31fl3742a#usage","1055":"/drivers/is31fl3742a#basic-configuration","1056":"/drivers/is31fl3742a#i2c-addressing","1057":"/drivers/is31fl3742a#pwm-frequency","1058":"/drivers/is31fl3742a#de-ghosting","1059":"/drivers/is31fl3742a#global-current-control","1060":"/drivers/is31fl3742a#arm-configuration","1061":"/drivers/is31fl3742a#led-mapping","1062":"/drivers/is31fl3742a#api","1063":"/drivers/is31fl3742a#api-is31fl3742a-led-t","1064":"/drivers/is31fl3742a#api-is31fl3742a-led-t-members","1065":"/drivers/is31fl3742a#api-is31fl3742a-init","1066":"/drivers/is31fl3742a#api-is31fl3742a-init-arguments","1067":"/drivers/is31fl3742a#api-is31fl3742a-write-register","1068":"/drivers/is31fl3742a#api-is31fl3742a-write-register-arguments","1069":"/drivers/is31fl3742a#api-is31fl3742a-select-page","1070":"/drivers/is31fl3742a#api-is31fl3742a-select-page-arguments","1071":"/drivers/is31fl3742a#api-is31fl3742a-set-color","1072":"/drivers/is31fl3742a#api-is31fl3742a-set-color-arguments","1073":"/drivers/is31fl3742a#api-is31fl3742a-set-color-all","1074":"/drivers/is31fl3742a#api-is31fl3742a-set-color-all-arguments","1075":"/drivers/is31fl3742a#api-is31fl3742a-set-value","1076":"/drivers/is31fl3742a#api-is31fl3742a-set-value-arguments","1077":"/drivers/is31fl3742a#api-is31fl3742a-set-value-all","1078":"/drivers/is31fl3742a#api-is31fl3742a-set-value-all-arguments","1079":"/drivers/is31fl3742a#api-is31fl3742a-set-scaling-register-rgb","1080":"/drivers/is31fl3742a#api-is31fl3742a-set-scaling-register-rgb-arguments","1081":"/drivers/is31fl3742a#api-is31fl3742a-set-scaling-register-mono","1082":"/drivers/is31fl3742a#api-is31fl3742a-set-scaling-register-mono-arguments","1083":"/drivers/is31fl3742a#api-is31fl3742a-update-pwm-buffers","1084":"/drivers/is31fl3742a#api-is31fl3742a-update-pwm-buffers-arguments","1085":"/drivers/is31fl3742a#api-is31fl3742a-update-scaling-registers","1086":"/drivers/is31fl3742a#api-is31fl3742a-update-scaling-registers-arguments","1087":"/drivers/is31fl3743a#is31fl3743a-driver","1088":"/drivers/is31fl3743a#usage","1089":"/drivers/is31fl3743a#basic-configuration","1090":"/drivers/is31fl3743a#i2c-addressing","1091":"/drivers/is31fl3743a#multi-driver-synchronization","1092":"/drivers/is31fl3743a#de-ghosting","1093":"/drivers/is31fl3743a#global-current-control","1094":"/drivers/is31fl3743a#arm-configuration","1095":"/drivers/is31fl3743a#led-mapping","1096":"/drivers/is31fl3743a#api","1097":"/drivers/is31fl3743a#api-is31fl3743a-led-t","1098":"/drivers/is31fl3743a#api-is31fl3743a-led-t-members","1099":"/drivers/is31fl3743a#api-is31fl3743a-init","1100":"/drivers/is31fl3743a#api-is31fl3743a-init-arguments","1101":"/drivers/is31fl3743a#api-is31fl3743a-write-register","1102":"/drivers/is31fl3743a#api-is31fl3743a-write-register-arguments","1103":"/drivers/is31fl3743a#api-is31fl3743a-select-page","1104":"/drivers/is31fl3743a#api-is31fl3743a-select-page-arguments","1105":"/drivers/is31fl3743a#api-is31fl3743a-set-color","1106":"/drivers/is31fl3743a#api-is31fl3743a-set-color-arguments","1107":"/drivers/is31fl3743a#api-is31fl3743a-set-color-all","1108":"/drivers/is31fl3743a#api-is31fl3743a-set-color-all-arguments","1109":"/drivers/is31fl3743a#api-is31fl3743a-set-value","1110":"/drivers/is31fl3743a#api-is31fl3743a-set-value-arguments","1111":"/drivers/is31fl3743a#api-is31fl3743a-set-value-all","1112":"/drivers/is31fl3743a#api-is31fl3743a-set-value-all-arguments","1113":"/drivers/is31fl3743a#api-is31fl3743a-set-scaling-register-rgb","1114":"/drivers/is31fl3743a#api-is31fl3743a-set-scaling-register-rgb-arguments","1115":"/drivers/is31fl3743a#api-is31fl3743a-set-scaling-register-mono","1116":"/drivers/is31fl3743a#api-is31fl3743a-set-scaling-register-mono-arguments","1117":"/drivers/is31fl3743a#api-is31fl3743a-update-pwm-buffers","1118":"/drivers/is31fl3743a#api-is31fl3743a-update-pwm-buffers-arguments","1119":"/drivers/is31fl3743a#api-is31fl3743a-update-scaling-registers","1120":"/drivers/is31fl3743a#api-is31fl3743a-update-scaling-registers-arguments","1121":"/drivers/is31fl3745#is31fl3745-driver","1122":"/drivers/is31fl3745#usage","1123":"/drivers/is31fl3745#basic-configuration","1124":"/drivers/is31fl3745#i2c-addressing","1125":"/drivers/is31fl3745#multi-driver-synchronization","1126":"/drivers/is31fl3745#de-ghosting","1127":"/drivers/is31fl3745#global-current-control","1128":"/drivers/is31fl3745#arm-configuration","1129":"/drivers/is31fl3745#led-mapping","1130":"/drivers/is31fl3745#api","1131":"/drivers/is31fl3745#api-is31fl3745-led-t","1132":"/drivers/is31fl3745#api-is31fl3745-led-t-members","1133":"/drivers/is31fl3745#api-is31fl3745-init","1134":"/drivers/is31fl3745#api-is31fl3745-init-arguments","1135":"/drivers/is31fl3745#api-is31fl3745-write-register","1136":"/drivers/is31fl3745#api-is31fl3745-write-register-arguments","1137":"/drivers/is31fl3745#api-is31fl3745-select-page","1138":"/drivers/is31fl3745#api-is31fl3745-select-page-arguments","1139":"/drivers/is31fl3745#api-is31fl3745-set-color","1140":"/drivers/is31fl3745#api-is31fl3745-set-color-arguments","1141":"/drivers/is31fl3745#api-is31fl3745-set-color-all","1142":"/drivers/is31fl3745#api-is31fl3745-set-color-all-arguments","1143":"/drivers/is31fl3745#api-is31fl3745-set-value","1144":"/drivers/is31fl3745#api-is31fl3745-set-value-arguments","1145":"/drivers/is31fl3745#api-is31fl3745-set-value-all","1146":"/drivers/is31fl3745#api-is31fl3745-set-value-all-arguments","1147":"/drivers/is31fl3745#api-is31fl3745-set-scaling-register-rgb","1148":"/drivers/is31fl3745#api-is31fl3745-set-scaling-register-rgb-arguments","1149":"/drivers/is31fl3745#api-is31fl3745-set-scaling-register-mono","1150":"/drivers/is31fl3745#api-is31fl3745-set-scaling-register-mono-arguments","1151":"/drivers/is31fl3745#api-is31fl3745-update-pwm-buffers","1152":"/drivers/is31fl3745#api-is31fl3745-update-pwm-buffers-arguments","1153":"/drivers/is31fl3745#api-is31fl3745-update-scaling-registers","1154":"/drivers/is31fl3745#api-is31fl3745-update-scaling-registers-arguments","1155":"/drivers/is31fl3746a#is31fl3746a-driver","1156":"/drivers/is31fl3746a#usage","1157":"/drivers/is31fl3746a#basic-configuration","1158":"/drivers/is31fl3746a#i2c-addressing","1159":"/drivers/is31fl3746a#pwm-frequency","1160":"/drivers/is31fl3746a#de-ghosting","1161":"/drivers/is31fl3746a#global-current-control","1162":"/drivers/is31fl3746a#arm-configuration","1163":"/drivers/is31fl3746a#led-mapping","1164":"/drivers/is31fl3746a#api","1165":"/drivers/is31fl3746a#api-is31fl3746a-led-t","1166":"/drivers/is31fl3746a#api-is31fl3746a-led-t-members","1167":"/drivers/is31fl3746a#api-is31fl3746a-init","1168":"/drivers/is31fl3746a#api-is31fl3746a-init-arguments","1169":"/drivers/is31fl3746a#api-is31fl3746a-write-register","1170":"/drivers/is31fl3746a#api-is31fl3746a-write-register-arguments","1171":"/drivers/is31fl3746a#api-is31fl3746a-select-page","1172":"/drivers/is31fl3746a#api-is31fl3746a-select-page-arguments","1173":"/drivers/is31fl3746a#api-is31fl3746a-set-color","1174":"/drivers/is31fl3746a#api-is31fl3746a-set-color-arguments","1175":"/drivers/is31fl3746a#api-is31fl3746a-set-color-all","1176":"/drivers/is31fl3746a#api-is31fl3746a-set-color-all-arguments","1177":"/drivers/is31fl3746a#api-is31fl3746a-set-value","1178":"/drivers/is31fl3746a#api-is31fl3746a-set-value-arguments","1179":"/drivers/is31fl3746a#api-is31fl3746a-set-value-all","1180":"/drivers/is31fl3746a#api-is31fl3746a-set-value-all-arguments","1181":"/drivers/is31fl3746a#api-is31fl3746a-set-scaling-register-rgb","1182":"/drivers/is31fl3746a#api-is31fl3746a-set-scaling-register-rgb-arguments","1183":"/drivers/is31fl3746a#api-is31fl3746a-set-scaling-register-mono","1184":"/drivers/is31fl3746a#api-is31fl3746a-set-scaling-register-mono-arguments","1185":"/drivers/is31fl3746a#api-is31fl3746a-update-pwm-buffers","1186":"/drivers/is31fl3746a#api-is31fl3746a-update-pwm-buffers-arguments","1187":"/drivers/is31fl3746a#api-is31fl3746a-update-scaling-registers","1188":"/drivers/is31fl3746a#api-is31fl3746a-update-scaling-registers-arguments","1189":"/drivers/serial#serial-driver","1190":"/drivers/serial#bitbang","1191":"/drivers/serial#pin-configuration","1192":"/drivers/serial#setup","1193":"/drivers/serial#usart-half-duplex","1194":"/drivers/serial#pin-configuration-1","1195":"/drivers/serial#setup-1","1196":"/drivers/serial#usart-full-duplex","1197":"/drivers/serial#pin-configuration-2","1198":"/drivers/serial#setup-2","1199":"/drivers/serial#choosing-a-driver-subsystem","1200":"/drivers/serial#the-serial-driver","1201":"/drivers/serial#the-sio-driver","1202":"/drivers/serial#the-pio-driver","1203":"/drivers/serial#advanced-configuration","1204":"/drivers/serial#baudrate","1205":"/drivers/serial#timeout","1206":"/drivers/serial#troubleshooting","1207":"/drivers/serial#alternate-functions-for-selected-stm32-mcus","1208":"/drivers/serial#stm32f303-proton-c-datasheet","1209":"/drivers/serial#stm32f072-datasheet","1210":"/drivers/serial#stm32f103-medium-density-c8-cb-datasheet","1211":"/drivers/snled27351#snled27351-driver","1212":"/drivers/snled27351#usage","1213":"/drivers/snled27351#basic-configuration","1214":"/drivers/snled27351#i2c-addressing","1215":"/drivers/snled27351#arm-configuration","1216":"/drivers/snled27351#led-mapping","1217":"/drivers/snled27351#api","1218":"/drivers/snled27351#api-snled27351-led-t","1219":"/drivers/snled27351#api-snled27351-led-t-members","1220":"/drivers/snled27351#api-snled27351-init","1221":"/drivers/snled27351#api-snled27351-init-arguments","1222":"/drivers/snled27351#api-snled27351-write-register","1223":"/drivers/snled27351#api-snled27351-write-register-arguments","1224":"/drivers/snled27351#api-snled27351-select-page","1225":"/drivers/snled27351#api-snled27351-select-page-arguments","1226":"/drivers/snled27351#api-snled27351-set-color","1227":"/drivers/snled27351#api-snled27351-set-color-arguments","1228":"/drivers/snled27351#api-snled27351-set-color-all","1229":"/drivers/snled27351#api-snled27351-set-color-all-arguments","1230":"/drivers/snled27351#api-snled27351-set-value","1231":"/drivers/snled27351#api-snled27351-set-value-arguments","1232":"/drivers/snled27351#api-snled27351-set-value-all","1233":"/drivers/snled27351#api-snled27351-set-value-all-arguments","1234":"/drivers/snled27351#api-snled27351-set-led-control-register-rgb","1235":"/drivers/snled27351#api-snled27351-set-led-control-register-rgb-arguments","1236":"/drivers/snled27351#api-snled27351-set-led-control-register-mono","1237":"/drivers/snled27351#api-snled27351-set-led-control-register-mono-arguments","1238":"/drivers/snled27351#api-snled27351-update-pwm-buffers","1239":"/drivers/snled27351#api-snled27351-update-pwm-buffers-arguments","1240":"/drivers/snled27351#api-snled27351-update-led-control-registers","1241":"/drivers/snled27351#api-snled27351-update-led-control-registers-arguments","1242":"/drivers/spi#spi-master-driver","1243":"/drivers/spi#usage","1244":"/drivers/spi#avr-configuration","1245":"/drivers/spi#arm-configuration","1246":"/drivers/spi#api","1247":"/drivers/spi#api-spi-init","1248":"/drivers/spi#api-spi-start","1249":"/drivers/spi#api-spi-start-arguments","1250":"/drivers/spi#api-spi-start-return","1251":"/drivers/spi#api-spi-write","1252":"/drivers/spi#api-spi-write-arguments","1253":"/drivers/spi#api-spi-write-return","1254":"/drivers/spi#api-spi-read","1255":"/drivers/spi#api-spi-read-return","1256":"/drivers/spi#api-spi-transmit","1257":"/drivers/spi#api-spi-transmit-arguments","1258":"/drivers/spi#api-spi-transmit-return","1259":"/drivers/spi#api-spi-receive","1260":"/drivers/spi#api-spi-receive-arguments","1261":"/drivers/spi#api-spi-receive-return","1262":"/drivers/spi#api-spi-stop","1263":"/drivers/uart#uart-driver","1264":"/drivers/uart#usage","1265":"/drivers/uart#avr-configuration","1266":"/drivers/uart#arm-configuration","1267":"/drivers/uart#api","1268":"/drivers/uart#api-uart-init","1269":"/drivers/uart#api-uart-init-arguments","1270":"/drivers/uart#api-uart-write","1271":"/drivers/uart#api-uart-write-arguments","1272":"/drivers/uart#api-uart-read","1273":"/drivers/uart#api-uart-read-return","1274":"/drivers/uart#api-uart-transmit","1275":"/drivers/uart#api-uart-transmit-arguments","1276":"/drivers/uart#api-uart-receive","1277":"/drivers/uart#api-uart-receive-arguments","1278":"/drivers/uart#api-uart-available","1279":"/drivers/uart#api-uart-available-return","1280":"/drivers/ws2812#ws2812-driver","1281":"/drivers/ws2812#usage","1282":"/drivers/ws2812#basic-configuration","1283":"/drivers/ws2812#timing-adjustment","1284":"/drivers/ws2812#byte-order","1285":"/drivers/ws2812#rgbw-support","1286":"/drivers/ws2812#driver-configuration","1287":"/drivers/ws2812#bitbang-driver","1288":"/drivers/ws2812#i2c-driver","1289":"/drivers/ws2812#pio-driver","1290":"/drivers/ws2812#pwm-driver","1291":"/drivers/ws2812#spi-driver","1292":"/drivers/ws2812#arm-configuration","1293":"/drivers/ws2812#logic-levels","1294":"/drivers/ws2812#open-drain-circuit","1295":"/drivers/ws2812#level-shifter","1296":"/drivers/ws2812#arm-spi-driver","1297":"/drivers/ws2812#arm-spi-baudrate","1298":"/drivers/ws2812#arm-spi-circular-buffer","1299":"/drivers/ws2812#arm-pio-driver","1300":"/drivers/ws2812#arm-pwm-driver","1301":"/drivers/ws2812#api","1302":"/drivers/ws2812#api-ws2812-init","1303":"/drivers/ws2812#api-ws2812-set-color","1304":"/drivers/ws2812#api-ws2812-set-color-arguments","1305":"/drivers/ws2812#api-ws2812-set-color-all","1306":"/drivers/ws2812#api-ws2812-set-color-all-arguments","1307":"/drivers/ws2812#api-ws2812-flush","1308":"/easy_maker#easy-maker-build-one-off-projects-in-configurator","1309":"/easy_maker#quickstart","1310":"/easy_maker#direct-pin","1311":"/faq_build#frequently-asked-build-questions","1312":"/faq_build#can-t-program-on-linux","1313":"/faq_build#linux-udev-rules","1314":"/faq_build#serial-device-is-not-detected-in-bootloader-mode-on-linux","1315":"/faq_build#unknown-device-for-dfu-bootloader","1316":"/faq_build#usb-vid-and-pid","1317":"/faq_build#i-just-flashed-my-keyboard-and-it-does-nothing-keypresses-don-t-register-it-s-also-arm-rev6-planck-clueboard-60-hs60v2-etc-feb-2019","1318":"/faq_debug#debugging-faq","1319":"/faq_debug#debugging","1320":"/faq_debug#debugging-tools","1321":"/faq_debug#debugging-with-qmk-toolbox","1322":"/faq_debug#debugging-with-qmk-cli","1323":"/faq_debug#debugging-with-hid-listen","1324":"/faq_debug#debug-api","1325":"/faq_debug#debug-examples","1326":"/faq_debug#which-matrix-position-is-this-keypress","1327":"/faq_debug#which-keycode-is-this-keypress","1328":"/faq_debug#how-long-did-it-take-to-scan-for-a-keypress","1329":"/faq_debug#hid-listen-can-t-recognize-device","1330":"/faq_debug#can-t-get-message-on-console","1331":"/faq_general#frequently-asked-questions","1332":"/faq_general#what-is-qmk","1333":"/faq_general#i-don-t-know-where-to-start","1334":"/faq_general#how-can-i-flash-the-firmware-i-built","1335":"/faq_general#what-if-i-have-an-issue-that-isn-t-covered-here","1336":"/faq_general#what-if-i-found-a-bug","1337":"/faq_general#but-git-and-github-are-intimidating","1338":"/faq_general#i-have-a-keyboard-that-i-want-to-add-support-for","1339":"/faq_general#what-if-i-want-to-brand-it-with-qmk","1340":"/faq_general#what-differences-are-there-between-qmk-and-tmk","1341":"/faq_keymap#keymap-faq","1342":"/faq_keymap#what-keycodes-can-i-use","1343":"/faq_keymap#what-are-the-default-keycodes","1344":"/faq_keymap#how-can-i-make-custom-names-for-complex-keycodes","1345":"/faq_keymap#my-keymap-doesn-t-update-when-i-flash-it","1346":"/faq_keymap#some-of-my-keys-are-swapped-or-not-working","1347":"/faq_keymap#the-menu-key-isn-t-working","1348":"/faq_keymap#power-keys-aren-t-working","1349":"/faq_keymap#one-shot-modifier","1350":"/faq_keymap#modifier-layer-stuck","1351":"/faq_keymap#mechanical-lock-switch-support","1352":"/faq_keymap#input-special-characters-other-than-ascii-like-cedille-c","1353":"/faq_keymap#fn-key-on-macos","1354":"/faq_keymap#keys-supported-in-mac-osx","1355":"/faq_keymap#jis-keys-in-mac-osx","1356":"/faq_keymap#rn-42-bluetooth-doesn-t-work-with-karabiner","1357":"/faq_keymap#esc-and-on-a-single-key","1358":"/faq_keymap#eject-on-mac-osx","1359":"/faq_keymap#what-are-real-and-weak-modifiers","1360":"/faq_misc#miscellaneous-faq","1361":"/faq_misc#testing","1362":"/faq_misc#safety-considerations","1363":"/faq_misc#nkro-doesn-t-work","1364":"/faq_misc#trackpoint-needs-reset-circuit-ps-2-mouse-support","1365":"/faq_misc#can-t-read-column-of-matrix-beyond-16","1366":"/faq_misc#special-extra-key-doesn-t-work-system-audio-control-keys","1367":"/faq_misc#wake-from-sleep-doesn-t-work","1368":"/faq_misc#using-arduino","1369":"/faq_misc#enabling-jtag","1370":"/faq_misc#usb-3-compatibility","1371":"/faq_misc#mac-compatibility","1372":"/faq_misc#os-x-10-11-and-hub","1373":"/faq_misc#problem-in-bios-uefi-setup-resume-sleep-wake-power-cycles","1374":"/feature_advanced_keycodes#modifier-keys","1375":"/feature_advanced_keycodes#checking-modifier-state","1376":"/feature_advanced_keycodes#examples","1377":"/feature_advanced_keycodes#alt-escape-for-alt-tab","1378":"/feature_advanced_keycodes#shift-backspace-for-delete","1379":"/feature_advanced_keycodes#advanced-topics","1380":"/feature_advanced_keycodes#switching-and-toggling-layers","1381":"/feature_advanced_keycodes#mod-tap","1382":"/feature_advanced_keycodes#one-shot-keys","1383":"/feature_advanced_keycodes#tap-hold-configuration-options","1384":"/feature_advanced_keycodes#key-overrides","1385":"/feature_converters#converters","1386":"/feature_converters#supported-converters","1387":"/feature_converters#configuration","1388":"/feature_converters#pro-micro-converters","1389":"/feature_converters#proton_c","1390":"/feature_converters#kb2040","1391":"/feature_converters#sparkfun_pm2040","1392":"/feature_converters#stemcell","1393":"/feature_converters#bonsai_c4","1394":"/feature_converters#rp2040_ce","1395":"/feature_converters#svlinky","1396":"/feature_converters#elite-c-converters","1397":"/feature_converters#stemcell_elite","1398":"/feature_converters#rp2040_ce_elite","1399":"/feature_converters#advanced-topics","1400":"/feature_converters#keyboard-configuration","1401":"/feature_converters#keyboard-req","1402":"/feature_converters#keymap-add","1403":"/feature_converters#conditional-configuration","1404":"/feature_converters#pin_compatible","1405":"/feature_converters#available-pin-compatibility","1406":"/feature_debounce_type#contact-bounce-contact-chatter","1407":"/feature_debounce_type#types-of-debounce-algorithms","1408":"/feature_debounce_type#supported-debounce-algorithms","1409":"/feature_debounce_type#debounce-time","1410":"/feature_debounce_type#debounce-method","1411":"/feature_debounce_type#implementing-your-own-debouncing-code","1412":"/feature_eeprom#persistent-configuration-eeprom","1413":"/feature_eeprom#example-implementation","1414":"/feature_eeprom#eeconfig-function-documentation","1415":"/feature_layers#layers","1416":"/feature_layers#switching-and-toggling-layers","1417":"/feature_layers#caveats","1418":"/feature_layers#working-with-layers","1419":"/feature_layers#beginners","1420":"/feature_layers#intermediate-users","1421":"/feature_layers#advanced-users","1422":"/feature_layers#functions","1423":"/feature_layers#layer-change-code","1424":"/feature_layers#example-layer-state-set-implementation","1425":"/feature_layers#example-keycode-to-cycle-through-layers","1426":"/feature_layers#layer-state-set-function-documentation","1427":"/feature_layouts#layouts-using-a-keymap-with-multiple-keyboards","1428":"/feature_layouts#supporting-a-layout","1429":"/feature_layouts#building-a-keymap","1430":"/feature_layouts#conflicting-layouts","1431":"/feature_layouts#tips-for-making-layouts-keyboard-agnostic","1432":"/feature_layouts#includes","1433":"/feature_layouts#keymaps","1434":"/feature_userspace#userspace-sharing-code-between-keymaps","1435":"/feature_userspace#rules-mk","1436":"/feature_userspace#override-default-userspace","1437":"/feature_userspace#configuration-options-config-h","1438":"/feature_userspace#readme-readme-md","1439":"/feature_userspace#build-all-keyboards-that-support-a-specific-keymap","1440":"/feature_userspace#examples","1441":"/feature_userspace#customized-functions","1442":"/feature_userspace#custom-features","1443":"/feature_userspace#consolidated-macros","1444":"/feature_macros#macros","1445":"/feature_macros#using-macros-in-json-keymaps","1446":"/feature_macros#selecting-your-host-keyboard-layout","1447":"/feature_macros#macro-basics","1448":"/feature_macros#object-format","1449":"/feature_macros#using-macros-in-c-keymaps","1450":"/feature_macros#send-string-process-record-user","1451":"/feature_macros#advanced-macros","1452":"/feature_macros#tap-down-and-up","1453":"/feature_macros#alternative-keymaps","1454":"/feature_macros#strings-in-memory","1455":"/feature_macros#advanced-macro-functions","1456":"/feature_macros#record-event-pressed","1457":"/feature_macros#register-code-kc","1458":"/feature_macros#unregister-code-kc","1459":"/feature_macros#tap-code-kc","1460":"/feature_macros#tap-code-delay-kc-delay","1461":"/feature_macros#register-code16-kc-unregister-code16-kc-tap-code16-kc-and-tap-code16-delay-kc-delay","1462":"/feature_macros#clear-keyboard","1463":"/feature_macros#clear-mods","1464":"/feature_macros#clear-keyboard-but-mods","1465":"/feature_macros#advanced-example","1466":"/feature_macros#super-alt↯tab","1467":"/features/audio#audio","1468":"/features/audio#avr-based-boards","1469":"/features/audio#wiring","1470":"/features/audio#arm-based-boards","1471":"/features/audio#dac-basic","1472":"/features/audio#wiring-1","1473":"/features/audio#proton-c-example","1474":"/features/audio#dac-additive","1475":"/features/audio#pwm-software","1476":"/features/audio#wiring-2","1477":"/features/audio#pwm-hardware","1478":"/features/audio#tone-multiplexing","1479":"/features/audio#songs","1480":"/features/audio#audio-config","1481":"/features/audio#tempo","1482":"/features/audio#arm-audio-volume","1483":"/features/audio#voices","1484":"/features/audio#music-mode","1485":"/features/audio#music-mask","1486":"/features/audio#music-map","1487":"/features/audio#audio-click","1488":"/features/audio#midi-functionality","1489":"/features/audio#audio-keycodes","1490":"/features/auto_shift#auto-shift-why-do-we-need-a-shift-key","1491":"/features/auto_shift#why-auto-shift","1492":"/features/auto_shift#how-does-it-work","1493":"/features/auto_shift#are-there-limitations-to-auto-shift","1494":"/features/auto_shift#how-do-i-enable-auto-shift","1495":"/features/auto_shift#modifiers","1496":"/features/auto_shift#configuring-auto-shift","1497":"/features/auto_shift#auto-shift-timeout-value-in-ms","1498":"/features/auto_shift#no-auto-shift-special-simple-define","1499":"/features/auto_shift#no-auto-shift-tab-simple-define","1500":"/features/auto_shift#no-auto-shift-symbols-simple-define","1501":"/features/auto_shift#no-auto-shift-numeric-simple-define","1502":"/features/auto_shift#no-auto-shift-alpha-simple-define","1503":"/features/auto_shift#auto-shift-enter-simple-define","1504":"/features/auto_shift#auto-shift-per-key","1505":"/features/auto_shift#auto-shift-repeat-simple-define","1506":"/features/auto_shift#auto-shift-no-auto-repeat-simple-define","1507":"/features/auto_shift#auto-shift-alpha-predefined-key-group","1508":"/features/auto_shift#auto-shift-numeric-predefined-key-group","1509":"/features/auto_shift#auto-shift-symbols-predefined-key-group","1510":"/features/auto_shift#auto-shift-special-predefined-key-group","1511":"/features/auto_shift#custom-shifted-values","1512":"/features/auto_shift#retro-shift","1513":"/features/auto_shift#retro-shift-and-tap-hold-configurations","1514":"/features/auto_shift#using-auto-shift-setup","1515":"/features/auto_shift#setup","1516":"/features/auto_shift#use","1517":"/features/auto_shift#an-example-run","1518":"/features/autocorrect#autocorrect","1519":"/features/autocorrect#how-does-it-work","1520":"/features/autocorrect#how-do-i-enable-autocorrection","1521":"/features/autocorrect#customizing-autocorrect-library","1522":"/features/autocorrect#avoiding-false-triggers","1523":"/features/autocorrect#overriding-autocorrect","1524":"/features/autocorrect#keycodes","1525":"/features/autocorrect#user-callback-functions","1526":"/features/autocorrect#process-autocorrect","1527":"/features/autocorrect#process-autocorrect-example","1528":"/features/autocorrect#apply-autocorrect","1529":"/features/autocorrect#apply-autocorrect-example","1530":"/features/autocorrect#autocorrect-status","1531":"/features/autocorrect#appendix","1532":"/features/autocorrect#encoding","1533":"/features/autocorrect#decoding","1534":"/features/autocorrect#credits","1535":"/features/battery#battery","1536":"/features/battery#usage","1537":"/features/battery#basic-configuration","1538":"/features/battery#driver-configuration","1539":"/features/battery#functions","1540":"/features/battery#api-battery-get-percent","1541":"/features/battery#api-battery-get-percent-return","1542":"/features/battery#callbacks","1543":"/features/battery#api-battery-percent-changed-user","1544":"/features/battery#api-battery-percent-changed-user-arguments","1545":"/features/battery#api-battery-percent-changed-kb","1546":"/features/battery#api-battery-percent-changed-kb-arguments","1547":"/features/backlight#backlighting","1548":"/features/backlight#usage","1549":"/features/backlight#keycodes","1550":"/features/backlight#basic-configuration","1551":"/features/backlight#on-state","1552":"/features/backlight#multiple-backlight-pins","1553":"/features/backlight#driver-configuration","1554":"/features/backlight#pwm-driver","1555":"/features/backlight#timer-driver","1556":"/features/backlight#software-driver","1557":"/features/backlight#custom-driver","1558":"/features/backlight#avr-configuration","1559":"/features/backlight#avr-pwm-driver","1560":"/features/backlight#avr-timer-driver","1561":"/features/backlight#arm-configuration","1562":"/features/backlight#arm-pwm-driver","1563":"/features/backlight#arm-timer-driver","1564":"/features/backlight#example-schematic","1565":"/features/backlight#api","1566":"/features/backlight#api-backlight-toggle","1567":"/features/backlight#api-backlight-enable","1568":"/features/backlight#api-backlight-disable","1569":"/features/backlight#api-backlight-step","1570":"/features/backlight#api-backlight-increase","1571":"/features/backlight#api-backlight-decrease","1572":"/features/backlight#api-backlight-level","1573":"/features/backlight#api-backlight-level-arguments","1574":"/features/backlight#api-get-backlight-level","1575":"/features/backlight#api-get-backlight-level-return","1576":"/features/backlight#api-is-backlight-enabled","1577":"/features/backlight#api-is-backlight-enabled-return","1578":"/features/backlight#api-backlight-toggle-breathing","1579":"/features/backlight#api-backlight-enable-breathing","1580":"/features/backlight#api-backlight-disable-breathing","1581":"/features/backlight#api-is-backlight-breathing","1582":"/features/backlight#api-is-backlight-breathing-return","1583":"/features/bootmagic#bootmagic","1584":"/features/bootmagic#split-keyboards","1585":"/features/bootmagic#advanced-bootmagic","1586":"/features/bootmagic#addenda","1587":"/features/caps_word#caps-word","1588":"/features/caps_word#how-do-i-enable-caps-word","1589":"/features/caps_word#troubleshooting-command","1590":"/features/caps_word#customizing-caps-word","1591":"/features/caps_word#invert-on-shift","1592":"/features/caps_word#idle-timeout","1593":"/features/caps_word#functions","1594":"/features/caps_word#configure-which-keys-are-word-breaking","1595":"/features/caps_word#representing-caps-word-state","1596":"/features/combo#combos","1597":"/features/combo#advanced-keycodes-support","1598":"/features/combo#overlapping-combos","1599":"/features/combo#examples","1600":"/features/combo#keycodes","1601":"/features/combo#advanced-configuration","1602":"/features/combo#combo-term","1603":"/features/combo#buffer-and-state-sizes","1604":"/features/combo#modifier-combos","1605":"/features/combo#strict-key-press-order","1606":"/features/combo#per-combo-timing-holding-tapping-and-key-press-order","1607":"/features/combo#generic-hook-to-dis-allow-a-combo-activation","1608":"/features/combo#combo-timer","1609":"/features/combo#define-combo-strict-timer","1610":"/features/combo#define-combo-no-timer","1611":"/features/combo#customizable-key-releases","1612":"/features/combo#customizable-key-repress","1613":"/features/combo#layer-independent-combos","1614":"/features/combo#combo-reference-layers-by-layer","1615":"/features/combo#user-callbacks","1616":"/features/combo#dictionary-management","1617":"/features/command#command","1618":"/features/command#usage","1619":"/features/command#configuration","1620":"/features/dip_switch#dip-switches","1621":"/features/dip_switch#dip-switch-map","1622":"/features/dip_switch#callbacks","1623":"/features/dip_switch#hardware","1624":"/features/dip_switch#connects-each-switch-in-the-dip-switch-to-the-gpio-pin-of-the-mcu","1625":"/features/dip_switch#connect-each-switch-in-the-dip-switch-to-an-unused-intersections-in-the-key-matrix","1626":"/features/community_modules#community-modules","1627":"/features/community_modules#adding-a-community-module-to-your-build","1628":"/features/community_modules#adding-a-community-module-to-your-external-userspace","1629":"/features/community_modules#writing-a-qmk-community-module","1630":"/features/community_modules#qmk-module-json","1631":"/features/community_modules#config-h","1632":"/features/community_modules#rules-mk-post-rules-mk","1633":"/features/community_modules#module-c","1634":"/features/community_modules#introspection-c-introspection-h","1635":"/features/community_modules#led-matrix-module-inc","1636":"/features/community_modules#rgb-matrix-module-inc","1637":"/features/community_modules#custom-split-keyboard-data-sync","1638":"/features/community_modules#compatible-apis","1639":"/features/digitizer#digitizer","1640":"/features/digitizer#usage","1641":"/features/digitizer#positioning","1642":"/features/digitizer#examples","1643":"/features/digitizer#api","1644":"/features/digitizer#api-digitizer-t","1645":"/features/digitizer#api-digitizer-t-members","1646":"/features/digitizer#api-digitizer-flush","1647":"/features/digitizer#api-digitizer-in-range-on","1648":"/features/digitizer#api-digitizer-in-range-off","1649":"/features/digitizer#api-digitizer-tip-switch-on","1650":"/features/digitizer#api-digitizer-tip-switch-off","1651":"/features/digitizer#api-digitizer-barrel-switch-on","1652":"/features/digitizer#api-digitizer-barrel-switch-off","1653":"/features/digitizer#api-digitizer-set-position","1654":"/features/digitizer#api-digitizer-set-position-arguments","1655":"/features/dynamic_macros#dynamic-macros-record-and-replay-macros-in-runtime","1656":"/features/dynamic_macros#customization","1657":"/features/dynamic_macros#dynamic-macro-user-call","1658":"/features/dynamic_macros#user-hooks","1659":"/features/encoders#encoders","1660":"/features/encoders#split-keyboards","1661":"/features/encoders#encoder-map","1662":"/features/encoders#callbacks","1663":"/features/encoders#hardware","1664":"/features/encoders#multiple-encoders","1665":"/features/grave_esc#grave-escape","1666":"/features/grave_esc#usage","1667":"/features/grave_esc#what-your-os-sees","1668":"/features/grave_esc#keycodes","1669":"/features/grave_esc#caveats","1670":"/features/grave_esc#configuration","1671":"/features/haptic_feedback#haptic-feedback","1672":"/features/haptic_feedback#haptic-feedback-rules-mk-options","1673":"/features/haptic_feedback#known-supported-hardware","1674":"/features/haptic_feedback#haptic-keycodes","1675":"/features/haptic_feedback#solenoids","1676":"/features/haptic_feedback#drv2605l","1677":"/features/haptic_feedback#feedback-motor-setup","1678":"/features/haptic_feedback#erm","1679":"/features/haptic_feedback#lra","1680":"/features/haptic_feedback#drv2605l-waveform-library","1681":"/features/haptic_feedback#optional-drv2605l-defines","1682":"/features/haptic_feedback#drv2605l-continuous-haptic-mode","1683":"/features/haptic_feedback#haptic-key-exclusion","1684":"/features/haptic_feedback#no-haptic-mod","1685":"/features/haptic_feedback#no-haptic-alpha","1686":"/features/haptic_feedback#no-haptic-punctuation","1687":"/features/haptic_feedback#no-haptic-lockkeys","1688":"/features/haptic_feedback#no-haptic-nav","1689":"/features/haptic_feedback#no-haptic-numeric","1690":"/features/hd44780#hd44780-lcd-driver","1691":"/features/hd44780#supported-hardware","1692":"/features/hd44780#usage","1693":"/features/hd44780#basic-configuration","1694":"/features/hd44780#examples","1695":"/features/hd44780#example-hello-world","1696":"/features/hd44780#example-custom-character","1697":"/features/hd44780#api","1698":"/features/hd44780#api-hd44780-init","1699":"/features/hd44780#api-hd44780-init-arguments","1700":"/features/hd44780#api-hd44780-clear","1701":"/features/hd44780#api-hd44780-home","1702":"/features/hd44780#api-hd44780-on","1703":"/features/hd44780#api-hd44780-on-arguments","1704":"/features/hd44780#api-hd44780-off","1705":"/features/hd44780#api-hd44780-set-cursor","1706":"/features/hd44780#api-hd44780-set-cursor-arguments","1707":"/features/hd44780#api-hd44780-putc","1708":"/features/hd44780#api-hd44780-putc-arguments","1709":"/features/hd44780#api-hd44780-puts","1710":"/features/hd44780#api-hd44780-puts-arguments","1711":"/features/hd44780#api-hd44780-puts-p","1712":"/features/hd44780#api-hd44780-puts-p-arguments","1713":"/features/hd44780#api-hd44780-define-char","1714":"/features/hd44780#api-hd44780-define-char-arguments","1715":"/features/hd44780#api-hd44780-define-char-p","1716":"/features/hd44780#api-hd44780-define-char-p-arguments","1717":"/features/hd44780#api-hd44780-busy","1718":"/features/hd44780#api-hd44780-busy-arguments","1719":"/features/hd44780#api-hd44780-write","1720":"/features/hd44780#api-hd44780-write-arguments","1721":"/features/hd44780#api-hd44780-read","1722":"/features/hd44780#api-hd44780-read-arguments","1723":"/features/hd44780#api-hd44780-read-return","1724":"/features/hd44780#api-hd44780-command","1725":"/features/hd44780#api-hd44780-command-arguments","1726":"/features/hd44780#api-hd44780-data","1727":"/features/hd44780#api-hd44780-data-arguments","1728":"/features/hd44780#api-hd44780-set-cgram-address","1729":"/features/hd44780#api-hd44780-set-cgram-address-arguments","1730":"/features/hd44780#api-hd44780-set-ddram-address","1731":"/features/hd44780#api-hd44780-set-ddram-address-arguments","1732":"/features/key_lock#key-lock","1733":"/features/key_lock#usage","1734":"/features/key_lock#keycodes","1735":"/features/key_lock#caveats","1736":"/features/key_overrides#key-overrides","1737":"/features/key_overrides#a-few-more-examples-to-get-started-you-could-use-key-overrides-to","1738":"/features/key_overrides#setup","1739":"/features/key_overrides#creating-key-overrides","1740":"/features/key_overrides#ko-make-basic-modifiers-key-replacement","1741":"/features/key_overrides#ko-make-with-layers-modifiers-key-replacement-layers","1742":"/features/key_overrides#ko-make-with-layers-and-negmods-modifiers-key-replacement-layers-negative-mods","1743":"/features/key_overrides#ko-make-with-layers-negmods-and-options-modifiers-key-replacement-layers-negative-mods-options","1744":"/features/key_overrides#simple-example","1745":"/features/key_overrides#intermediate-difficulty-examples","1746":"/features/key_overrides#media-controls-amp-screen-brightness","1747":"/features/key_overrides#flexible-macos-friendly-grave-escape","1748":"/features/key_overrides#advanced-examples","1749":"/features/key_overrides#modifiers-as-layer-keys","1750":"/features/key_overrides#keycodes","1751":"/features/key_overrides#reference-for-key_override_t","1752":"/features/key_overrides#reference-for-ko_option_t","1753":"/features/key_overrides#for-advanced-users-inner-workings","1754":"/features/key_overrides#activation","1755":"/features/key_overrides#deactivation","1756":"/features/key_overrides#key-repeat-delay","1757":"/features/key_overrides#difference-to-combos","1758":"/features/key_overrides#neutralize-flashing-modifiers","1759":"/features/layer_lock#layer-lock","1760":"/features/layer_lock#how-do-i-enable-layer-lock","1761":"/features/layer_lock#example-use","1762":"/features/layer_lock#idle-timeout","1763":"/features/layer_lock#functions","1764":"/features/layer_lock#representing-the-current-layer-lock-state","1765":"/features/layer_lock#combine-layer-lock-with-a-mod-tap","1766":"/features/joystick#joystick","1767":"/features/joystick#usage","1768":"/features/joystick#configuration","1769":"/features/joystick#hat-switch","1770":"/features/joystick#axes","1771":"/features/joystick#virtual-axes","1772":"/features/joystick#keycodes","1773":"/features/joystick#api","1774":"/features/joystick#api-joystick-t","1775":"/features/joystick#api-joystick-t-members","1776":"/features/joystick#api-joystick-config-t","1777":"/features/joystick#api-joystick-config-t-members","1778":"/features/joystick#api-joystick-flush","1779":"/features/joystick#api-register-joystick-button","1780":"/features/joystick#api-register-joystick-button-arguments","1781":"/features/joystick#api-unregister-joystick-button","1782":"/features/joystick#api-unregister-joystick-button-arguments","1783":"/features/joystick#api-joystick-read-axis","1784":"/features/joystick#api-joystick-read-axis-arguments","1785":"/features/joystick#api-joystick-read-axis-return","1786":"/features/joystick#api-joystick-set-axis","1787":"/features/joystick#api-joystick-set-axis-arguments","1788":"/features/joystick#api-joystick-set-hat","1789":"/features/joystick#api-joystick-set-hat-arguments","1790":"/features/led_indicators#led-indicators","1791":"/features/led_indicators#configuration-options","1792":"/features/led_indicators#led-update-function","1793":"/features/led_indicators#example-of-keyboard-led-update-implementation","1794":"/features/led_indicators#example-of-user-led-update-implementation","1795":"/features/led_indicators#host-keyboard-led-state","1796":"/features/led_indicators#led-update-ports","1797":"/features/led_indicators#setting-physical-led-state","1798":"/features/led_indicators#ergodox-boards","1799":"/features/leader_key#the-leader-key","1800":"/features/leader_key#usage","1801":"/features/leader_key#callbacks","1802":"/features/leader_key#basic-configuration","1803":"/features/leader_key#timeout","1804":"/features/leader_key#per-key-timeout","1805":"/features/leader_key#disabling-initial-timeout","1806":"/features/leader_key#strict-key-processing","1807":"/features/leader_key#example","1808":"/features/leader_key#keycodes","1809":"/features/leader_key#api","1810":"/features/leader_key#api-leader-start-user","1811":"/features/leader_key#api-leader-end-user","1812":"/features/leader_key#api-leader-add-user","1813":"/features/leader_key#api-leader-add-user-arguments","1814":"/features/leader_key#api-leader-add-user-return","1815":"/features/leader_key#api-leader-start","1816":"/features/leader_key#api-leader-end","1817":"/features/leader_key#api-leader-sequence-active","1818":"/features/leader_key#api-leader-sequence-add","1819":"/features/leader_key#api-leader-sequence-add-arguments","1820":"/features/leader_key#api-leader-sequence-add-return","1821":"/features/leader_key#api-leader-sequence-timed-out","1822":"/features/leader_key#api-leader-reset-timer","1823":"/features/leader_key#api-leader-sequence-one-key","1824":"/features/leader_key#api-leader-sequence-one-key-arguments","1825":"/features/leader_key#api-leader-sequence-one-key-return","1826":"/features/leader_key#api-leader-sequence-two-keys","1827":"/features/leader_key#api-leader-sequence-two-keys-arguments","1828":"/features/leader_key#api-leader-sequence-two-keys-return","1829":"/features/leader_key#api-leader-sequence-three-keys","1830":"/features/leader_key#api-leader-sequence-three-keys-arguments","1831":"/features/leader_key#api-leader-sequence-three-keys-return","1832":"/features/leader_key#api-leader-sequence-four-keys","1833":"/features/leader_key#api-leader-sequence-four-keys-arguments","1834":"/features/leader_key#api-leader-sequence-four-keys-return","1835":"/features/leader_key#api-leader-sequence-five-keys","1836":"/features/leader_key#api-leader-sequence-five-keys-arguments","1837":"/features/leader_key#api-leader-sequence-five-keys-return","1838":"/features/led_matrix#led-matrix-lighting","1839":"/features/led_matrix#driver-configuration","1840":"/features/led_matrix#common-configuration","1841":"/features/led_matrix#flags","1842":"/features/led_matrix#keycodes","1843":"/features/led_matrix#led-matrix-effects","1844":"/features/led_matrix#custom-led-matrix-effects","1845":"/features/led_matrix#naming","1846":"/features/led_matrix#additional-configh-options","1847":"/features/led_matrix#eeprom-storage","1848":"/features/led_matrix#callbacks","1849":"/features/led_matrix#indicators","1850":"/features/led_matrix#api","1851":"/features/led_matrix#api-led-matrix-toggle","1852":"/features/led_matrix#api-led-matrix-toggle-noeeprom","1853":"/features/led_matrix#api-led-matrix-enable","1854":"/features/led_matrix#api-led-matrix-enable-noeeprom","1855":"/features/led_matrix#api-led-matrix-disable","1856":"/features/led_matrix#api-led-matrix-disable-noeeprom","1857":"/features/led_matrix#api-led-matrix-is-enabled","1858":"/features/led_matrix#api-led-matrix-is-enabled-return","1859":"/features/led_matrix#led-matrix-set-value","1860":"/features/led_matrix#api-led-matrix-set-value-arguments","1861":"/features/led_matrix#api-led-matrix-set-value-all","1862":"/features/led_matrix#api-led-matrix-set-value-all-arguments","1863":"/features/led_matrix#api-led-matrix-mode","1864":"/features/led_matrix#api-led-matrix-mode-arguments","1865":"/features/led_matrix#api-led-matrix-mode-noeeprom","1866":"/features/led_matrix#api-led-matrix-mode-noeeprom-arguments","1867":"/features/led_matrix#api-led-matrix-step","1868":"/features/led_matrix#api-led-matrix-step-noeeprom","1869":"/features/led_matrix#api-led-matrix-step-reverse","1870":"/features/led_matrix#api-led-matrix-step-reverse-noeeprom","1871":"/features/led_matrix#api-led-matrix-get-mode","1872":"/features/led_matrix#api-led-matrix-get-mode-return","1873":"/features/led_matrix#api-led-matrix-increase-val","1874":"/features/led_matrix#api-led-matrix-increase-val-noeeprom","1875":"/features/led_matrix#api-led-matrix-decrease-val","1876":"/features/led_matrix#api-led-matrix-decrease-val-noeeprom","1877":"/features/led_matrix#api-led-matrix-get-val","1878":"/features/led_matrix#api-led-matrix-get-val-return","1879":"/features/led_matrix#api-led-matrix-increase-speed","1880":"/features/led_matrix#api-led-matrix-increase-speed-noeeprom","1881":"/features/led_matrix#api-led-matrix-decrease-speed","1882":"/features/led_matrix#api-led-matrix-decrease-speed-noeeprom","1883":"/features/led_matrix#api-led-matrix-set-speed","1884":"/features/led_matrix#api-led-matrix-set-speed-arguments","1885":"/features/led_matrix#api-led-matrix-set-speed-noeeprom","1886":"/features/led_matrix#api-led-matrix-set-speed-noeeprom-arguments","1887":"/features/led_matrix#api-led-matrix-get-speed","1888":"/features/led_matrix#api-led-matrix-get-speed-return","1889":"/features/led_matrix#api-led-matrix-set-flags","1890":"/features/led_matrix#api-led-matrix-set-flags-arguments","1891":"/features/led_matrix#api-led-matrix-set-flags-noeeprom","1892":"/features/led_matrix#api-led-matrix-set-flags-noeeprom-arguments","1893":"/features/led_matrix#api-led-matrix-flags-step","1894":"/features/led_matrix#api-led-matrix-flags-step-noeeprom","1895":"/features/led_matrix#api-led-matrix-flags-step-reverse","1896":"/features/led_matrix#api-led-matrix-flags-step-reverse-noeeprom","1897":"/features/led_matrix#api-led-matrix-get-flags","1898":"/features/led_matrix#api-led-matrix-get-flags-return","1899":"/features/led_matrix#api-led-matrix-reload-from-eeprom","1900":"/features/led_matrix#api-led-matrix-get-suspend-state","1901":"/features/led_matrix#api-led-matrix-get-suspend-state-return","1902":"/features/led_matrix#api-led-matrix-indicators-kb","1903":"/features/led_matrix#api-led-matrix-indicators-kb-return","1904":"/features/led_matrix#api-led-matrix-indicators-user","1905":"/features/led_matrix#api-led-matrix-indicators-user-return","1906":"/features/led_matrix#api-led-matrix-indicators-advanced-kb","1907":"/features/led_matrix#api-led-matrix-indicators-advanced-kb-arguments","1908":"/features/led_matrix#api-led-matrix-indicators-advanced-kb-return","1909":"/features/led_matrix#api-led-matrix-indicators-advanced-user","1910":"/features/led_matrix#api-led-matrix-indicators-advanced-user-arguments","1911":"/features/led_matrix#api-led-matrix-indicators-advanced-user-return","1912":"/features/midi#midi","1913":"/features/midi#usage","1914":"/features/midi#caveats","1915":"/features/midi#basic-midi","1916":"/features/midi#advanced-midi","1917":"/features/midi#sending-control-change-cc-messages","1918":"/features/midi#example-code-for-using-generic-on-off-switches-as-per-midi-specification","1919":"/features/midi#keycodes","1920":"/features/midi#configuration","1921":"/features/midi#references","1922":"/features/midi#midi-specification","1923":"/features/midi#qmk-c-files","1924":"/features/mouse_keys#mouse-keys","1925":"/features/mouse_keys#adding-mouse-keys-to-your-keyboard","1926":"/features/mouse_keys#enabling-mouse-keys","1927":"/features/mouse_keys#mapping-mouse-actions","1928":"/features/mouse_keys#configuring-mouse-keys","1929":"/features/mouse_keys#accelerated-mode","1930":"/features/mouse_keys#kinetic-mode","1931":"/features/mouse_keys#constant-mode","1932":"/features/mouse_keys#combined-mode","1933":"/features/mouse_keys#inertia-mode","1934":"/features/mouse_keys#overlapping-mouse-key-control","1935":"/features/mouse_keys#use-with-ps-2-mouse-and-pointing-device","1936":"/features/oled_driver#oled-driver","1937":"/features/oled_driver#supported-hardware","1938":"/features/oled_driver#usage","1939":"/features/oled_driver#oled-type","1940":"/features/oled_driver#logo-example","1941":"/features/oled_driver#buffer-read-example","1942":"/features/oled_driver#other-examples","1943":"/features/oled_driver#basic-configuration","1944":"/features/oled_driver#i2c-configuration","1945":"/features/oled_driver#spi-configuration","1946":"/features/oled_driver#_128x64-custom-sized-oled-displays","1947":"/features/oled_driver#_90-degree-rotation-technical-mumbo-jumbo","1948":"/features/oled_driver#oled-api","1949":"/features/oled_driver#ssd1306-h-driver-conversion-guide","1950":"/features/os_detection#os-detection","1951":"/features/os_detection#usage","1952":"/features/os_detection#callbacks","1953":"/features/os_detection#os-detection-stability","1954":"/features/os_detection#configuration-options","1955":"/features/os_detection#troubleshooting","1956":"/features/os_detection#debug","1957":"/features/os_detection#credits","1958":"/features/programmable_button#programmable-button","1959":"/features/programmable_button#usage","1960":"/features/programmable_button#keycodes","1961":"/features/programmable_button#api","1962":"/features/programmable_button#api-programmable-button-clear","1963":"/features/programmable_button#api-programmable-button-add","1964":"/features/programmable_button#api-programmable-button-add-arguments","1965":"/features/programmable_button#api-programmable-button-remove","1966":"/features/programmable_button#api-programmable-button-remove-arguments","1967":"/features/programmable_button#api-programmable-button-register","1968":"/features/programmable_button#api-programmable-button-register-arguments","1969":"/features/programmable_button#api-programmable-button-unregister","1970":"/features/programmable_button#api-programmable-button-unregister-arguments","1971":"/features/programmable_button#api-programmable-button-is-on","1972":"/features/programmable_button#api-programmable-button-is-on-arguments","1973":"/features/programmable_button#api-programmable-button-is-on-return","1974":"/features/programmable_button#api-programmable-button-flush","1975":"/features/programmable_button#api-programmable-button-get-report","1976":"/features/programmable_button#api-programmable-button-get-report-return","1977":"/features/programmable_button#api-programmable-button-set-report","1978":"/features/programmable_button#api-programmable-button-set-report-arguments","1979":"/features/ps2_mouse#ps2-mouse-support","1980":"/features/ps2_mouse#the-circuitry-between-trackpoint-and-controller","1981":"/features/ps2_mouse#driver-configuration","1982":"/features/ps2_mouse#busywait-driver","1983":"/features/ps2_mouse#interrupt-driver-avr","1984":"/features/ps2_mouse#interrupt-driver-chibios","1985":"/features/ps2_mouse#usart-driver","1986":"/features/ps2_mouse#rp2040-pio-driver","1987":"/features/ps2_mouse#additional-settings","1988":"/features/ps2_mouse#ps2-mouse-features","1989":"/features/ps2_mouse#fine-control","1990":"/features/ps2_mouse#scroll-button","1991":"/features/ps2_mouse#invert-buttons","1992":"/features/ps2_mouse#invert-mouse-and-scroll-axes","1993":"/features/ps2_mouse#rotate-mouse-axes","1994":"/features/ps2_mouse#debug-settings","1995":"/features/ps2_mouse#movement-hook","1996":"/features/pointing_device#pointing-device","1997":"/features/pointing_device#sensor-drivers","1998":"/features/pointing_device#adns-5050-sensor","1999":"/features/pointing_device#adns-9800-sensor","2000":"/features/pointing_device#analog-joystick","2001":"/features/pointing_device#azoteq-iqs5xx-trackpad","2002":"/features/pointing_device#device-settings","2003":"/features/pointing_device#gesture-settings","2004":"/features/pointing_device#rotation-settings","2005":"/features/pointing_device#cirque-trackpad","2006":"/features/pointing_device#common-settings","2007":"/features/pointing_device#absolute-mode-settings","2008":"/features/pointing_device#absolute-mode-gestures","2009":"/features/pointing_device#relative-mode-gestures","2010":"/features/pointing_device#paw-3204-sensor","2011":"/features/pointing_device#paw-3222-sensor","2012":"/features/pointing_device#pimoroni-trackball","2013":"/features/pointing_device#pmw3320-sensor","2014":"/features/pointing_device#pmw-3360-and-pmw-3389-sensor","2015":"/features/pointing_device#custom-driver","2016":"/features/pointing_device#common-configuration","2017":"/features/pointing_device#high-resolution-scrolling","2018":"/features/pointing_device#split-keyboard-configuration","2019":"/features/pointing_device#callbacks-and-functions","2020":"/features/pointing_device#split-keyboard-callbacks-and-functions","2021":"/features/pointing_device#manipulating-mouse-reports","2022":"/features/pointing_device#examples","2023":"/features/pointing_device#custom-mouse-keycode","2024":"/features/pointing_device#drag-scroll-or-mouse-scroll","2025":"/features/pointing_device#advanced-drag-scroll","2026":"/features/pointing_device#split-examples","2027":"/features/pointing_device#single-pointing-device","2028":"/features/pointing_device#combined-pointing-devices","2029":"/features/pointing_device#troubleshooting","2030":"/features/pointing_device#pointing-device-auto-mouse","2031":"/features/pointing_device#behaviour-of-layer-keys-that-activate-the-target-layer","2032":"/features/pointing_device#how-to-enable","2033":"/features/pointing_device#how-to-customize","2034":"/features/pointing_device#config-h-options","2035":"/features/pointing_device#adding-mouse-keys","2036":"/features/pointing_device#callbacks-for-setting-up-additional-key-codes-as-mouse-keys","2037":"/features/pointing_device#to-use-the-callback-function-to-add-mouse-keys","2038":"/features/pointing_device#advanced-control","2039":"/features/pointing_device#functions-to-control-auto-mouse-enable-and-target-layer","2040":"/features/pointing_device#functions-for-handling-custom-key-events","2041":"/features/pointing_device#advanced-control-examples","2042":"/features/pointing_device#disable-auto-mouse-on-certain-layers","2043":"/features/pointing_device#set-different-target-layer-when-a-particular-layer-is-active","2044":"/features/pointing_device#use-custom-keys-to-control-auto-mouse","2045":"/features/pointing_device#customize-target-layer-activation","2046":"/features/pointing_device#auto-mouse-for-custom-pointing-device-task","2047":"/features/rawhid#raw-hid","2048":"/features/rawhid#usage","2049":"/features/rawhid#basic-configuration","2050":"/features/rawhid#sending-data-to-the-keyboard","2051":"/features/rawhid#receiving-data-from-the-keyboard","2052":"/features/rawhid#simple-example","2053":"/features/rawhid#api","2054":"/features/rawhid#api-raw-hid-receive","2055":"/features/rawhid#api-raw-hid-receive-arguments","2056":"/features/rawhid#api-raw-hid-send","2057":"/features/rawhid#api-raw-hid-send-arguments","2058":"/features/rgb_matrix#rgb-matrix-lighting","2059":"/features/rgb_matrix#driver-configuration","2060":"/features/rgb_matrix#common-configuration","2061":"/features/rgb_matrix#flags","2062":"/features/rgb_matrix#keycodes","2063":"/features/rgb_matrix#rgb-matrix-effects","2064":"/features/rgb_matrix#rgb-matrix-effect-typing-heatmap","2065":"/features/rgb_matrix#rgb-matrix-effect-solid-reactive","2066":"/features/rgb_matrix#custom-rgb-matrix-effects","2067":"/features/rgb_matrix#colors","2068":"/features/rgb_matrix#naming","2069":"/features/rgb_matrix#additional-configh-options","2070":"/features/rgb_matrix#eeprom-storage","2071":"/features/rgb_matrix#callbacks","2072":"/features/rgb_matrix#indicators","2073":"/features/rgb_matrix#indicator-examples","2074":"/features/rgb_matrix#indicator-examples-2","2075":"/features/rgb_matrix#indicators-without-rgb-matrix-effect","2076":"/features/rgb_matrix#api","2077":"/features/rgb_matrix#api-rgb-matrix-toggle","2078":"/features/rgb_matrix#api-rgb-matrix-toggle-noeeprom","2079":"/features/rgb_matrix#api-rgb-matrix-enable","2080":"/features/rgb_matrix#api-rgb-matrix-enable-noeeprom","2081":"/features/rgb_matrix#api-rgb-matrix-disable","2082":"/features/rgb_matrix#api-rgb-matrix-disable-noeeprom","2083":"/features/rgb_matrix#api-rgb-matrix-is-enabled","2084":"/features/rgb_matrix#api-rgb-matrix-is-enabled-return","2085":"/features/rgb_matrix#api-rgb-matrix-set-color","2086":"/features/rgb_matrix#api-rgb-matrix-set-color-arguments","2087":"/features/rgb_matrix#api-rgb-matrix-set-color-all","2088":"/features/rgb_matrix#api-rgb-matrix-set-color-all-arguments","2089":"/features/rgb_matrix#api-rgb-matrix-mode","2090":"/features/rgb_matrix#api-rgb-matrix-mode-arguments","2091":"/features/rgb_matrix#api-rgb-matrix-mode-noeeprom","2092":"/features/rgb_matrix#api-rgb-matrix-mode-noeeprom-arguments","2093":"/features/rgb_matrix#api-rgb-matrix-step","2094":"/features/rgb_matrix#api-rgb-matrix-step-noeeprom","2095":"/features/rgb_matrix#api-rgb-matrix-step-reverse","2096":"/features/rgb_matrix#api-rgb-matrix-step-reverse-noeeprom","2097":"/features/rgb_matrix#api-rgb-matrix-get-mode","2098":"/features/rgb_matrix#api-rgb-matrix-get-mode-return","2099":"/features/rgb_matrix#api-rgb-matrix-increase-hue","2100":"/features/rgb_matrix#api-rgb-matrix-increase-hue-noeeprom","2101":"/features/rgb_matrix#api-rgb-matrix-decrease-hue","2102":"/features/rgb_matrix#api-rgb-matrix-decrease-hue-noeeprom","2103":"/features/rgb_matrix#api-rgb-matrix-get-hue","2104":"/features/rgb_matrix#api-rgb-matrix-get-hue-return","2105":"/features/rgb_matrix#api-rgb-matrix-increase-sat","2106":"/features/rgb_matrix#api-rgb-matrix-increase-sat-noeeprom","2107":"/features/rgb_matrix#api-rgb-matrix-decrease-sat","2108":"/features/rgb_matrix#api-rgb-matrix-decrease-sat-noeeprom","2109":"/features/rgb_matrix#api-rgb-matrix-get-sat","2110":"/features/rgb_matrix#api-rgb-matrix-get-sat-return","2111":"/features/rgb_matrix#api-rgb-matrix-increase-val","2112":"/features/rgb_matrix#api-rgb-matrix-increase-val-noeeprom","2113":"/features/rgb_matrix#api-rgb-matrix-decrease-val","2114":"/features/rgb_matrix#api-rgb-matrix-decrease-val-noeeprom","2115":"/features/rgb_matrix#api-rgb-matrix-get-val","2116":"/features/rgb_matrix#api-rgb-matrix-get-val-return","2117":"/features/rgb_matrix#api-rgb-matrix-increase-speed","2118":"/features/rgb_matrix#api-rgb-matrix-increase-speed-noeeprom","2119":"/features/rgb_matrix#api-rgb-matrix-decrease-speed","2120":"/features/rgb_matrix#api-rgb-matrix-decrease-speed-noeeprom","2121":"/features/rgb_matrix#api-rgb-matrix-set-speed","2122":"/features/rgb_matrix#api-rgb-matrix-set-speed-arguments","2123":"/features/rgb_matrix#api-rgb-matrix-set-speed-noeeprom","2124":"/features/rgb_matrix#api-rgb-matrix-set-speed-noeeprom-arguments","2125":"/features/rgb_matrix#api-rgb-matrix-get-speed","2126":"/features/rgb_matrix#api-rgb-matrix-get-speed-return","2127":"/features/rgb_matrix#api-rgb-matrix-set-flags","2128":"/features/rgb_matrix#api-rgb-matrix-set-flags-arguments","2129":"/features/rgb_matrix#api-rgb-matrix-set-flags-noeeprom","2130":"/features/rgb_matrix#api-rgb-matrix-set-flags-noeeprom-arguments","2131":"/features/rgb_matrix#api-rgb-matrix-flags-step","2132":"/features/rgb_matrix#api-rgb-matrix-flags-step-noeeprom","2133":"/features/rgb_matrix#api-rgb-matrix-flags-step-reverse","2134":"/features/rgb_matrix#api-rgb-matrix-flags-step-reverse-noeeprom","2135":"/features/rgb_matrix#api-rgb-matrix-get-flags","2136":"/features/rgb_matrix#api-rgb-matrix-get-flags-return","2137":"/features/rgb_matrix#api-rgb-matrix-sethsv","2138":"/features/rgb_matrix#api-rgb-matrix-sethsv-arguments","2139":"/features/rgb_matrix#api-rgb-matrix-sethsv-noeeprom","2140":"/features/rgb_matrix#api-rgb-matrix-sethsv-noeeprom-arguments","2141":"/features/rgb_matrix#api-rgb-matrix-get-hsv","2142":"/features/rgb_matrix#api-rgb-matrix-get-hsv-return","2143":"/features/rgb_matrix#api-rgb-matrix-reload-from-eeprom","2144":"/features/rgb_matrix#api-rgb-matrix-get-suspend-state","2145":"/features/rgb_matrix#api-rgb-matrix-get-suspend-state-return","2146":"/features/rgb_matrix#api-rgb-matrix-indicators-kb","2147":"/features/rgb_matrix#api-rgb-matrix-indicators-kb-return","2148":"/features/rgb_matrix#api-rgb-matrix-indicators-user","2149":"/features/rgb_matrix#api-rgb-matrix-indicators-user-return","2150":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-kb","2151":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-kb-arguments","2152":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-kb-return","2153":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-user","2154":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-user-arguments","2155":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-user-return","2156":"/features/repeat_key#repeat-key","2157":"/features/repeat_key#how-do-i-enable-repeat-key","2158":"/features/repeat_key#keycodes","2159":"/features/repeat_key#alternate-repeating","2160":"/features/repeat_key#defining-alternate-keys","2161":"/features/repeat_key#eliminating-sfbs","2162":"/features/repeat_key#typing-shortcuts","2163":"/features/repeat_key#ignoring-certain-keys-and-mods","2164":"/features/repeat_key#ignoring-a-key","2165":"/features/repeat_key#filtering-remembered-mods","2166":"/features/repeat_key#further-conditions","2167":"/features/repeat_key#handle-how-a-key-is-repeated","2168":"/features/repeat_key#handle-how-a-key-is-alternate-repeated","2169":"/features/repeat_key#functions","2170":"/features/repeat_key#additional-alternate-keys","2171":"/features/secure#secure","2172":"/features/secure#unlock-sequence","2173":"/features/secure#automatic-locking","2174":"/features/secure#usage","2175":"/features/secure#keycodes","2176":"/features/secure#configuration","2177":"/features/secure#functions","2178":"/features/rgblight#rgb-lighting","2179":"/features/rgblight#usage","2180":"/features/rgblight#color-selection","2181":"/features/rgblight#keycodes","2182":"/features/rgblight#configuration","2183":"/features/rgblight#effects-and-animations","2184":"/features/rgblight#effect-and-animation-toggles","2185":"/features/rgblight#effect-and-animation-settings","2186":"/features/rgblight#example-usage-to-reduce-memory-footprint","2187":"/features/rgblight#animation-speed","2188":"/features/rgblight#lighting-layers","2189":"/features/rgblight#defining-lighting-layers","2190":"/features/rgblight#enabling-lighting-layers","2191":"/features/rgblight#lighting-layer-blink","2192":"/features/rgblight#overriding-rgb-lighting-on-off-status","2193":"/features/rgblight#retain-brightness","2194":"/features/rgblight#functions","2195":"/features/rgblight#low-level-functions","2196":"/features/rgblight#effects-and-animations-functions","2197":"/features/rgblight#effect-range-setting","2198":"/features/rgblight#direct-operation","2199":"/features/rgblight#effect-mode-change","2200":"/features/rgblight#effects-mode-disable-enable","2201":"/features/rgblight#hue-sat-val-change","2202":"/features/rgblight#speed-functions","2203":"/features/rgblight#layer-functions","2204":"/features/rgblight#query","2205":"/features/rgblight#colors","2206":"/features/rgblight#changing-the-order-of-the-leds","2207":"/features/rgblight#clipping-range","2208":"/features/rgblight#hardware-modification","2209":"/features/rgblight#velocikey","2210":"/features/rgblight#usage-1","2211":"/features/rgblight#configuration-1","2212":"/features/send_string#send-string","2213":"/features/send_string#usage","2214":"/features/send_string#basic-configuration","2215":"/features/send_string#keycodes","2216":"/features/send_string#language-support","2217":"/features/send_string#examples","2218":"/features/send_string#example-hello-world","2219":"/features/send_string#example-keycode-injection","2220":"/features/send_string#api","2221":"/features/send_string#api-send-string","2222":"/features/send_string#api-send-string-arguments","2223":"/features/send_string#api-send-string-with-delay","2224":"/features/send_string#api-send-string-with-delay-arguments","2225":"/features/send_string#api-send-string-p","2226":"/features/send_string#api-send-string-p-arguments","2227":"/features/send_string#api-send-string-with-delay-p","2228":"/features/send_string#api-send-string-with-delay-p-arguments","2229":"/features/send_string#api-send-char","2230":"/features/send_string#api-send-char-arguments","2231":"/features/send_string#api-send-dword","2232":"/features/send_string#api-send-dword-arguments","2233":"/features/send_string#api-send-word","2234":"/features/send_string#api-send-word-arguments","2235":"/features/send_string#api-send-bytes","2236":"/features/send_string#api-send-byte-arguments","2237":"/features/send_string#api-send-nibble","2238":"/features/send_string#api-send-nibble-arguments","2239":"/features/send_string#api-tap-random-base64","2240":"/features/send_string#api-send-string-macro","2241":"/features/send_string#api-send-string-delay-macro","2242":"/features/sequencer#sequencer","2243":"/features/sequencer#enable-the-step-sequencer","2244":"/features/sequencer#tracks","2245":"/features/sequencer#resolutions","2246":"/features/sequencer#keycodes","2247":"/features/sequencer#functions","2248":"/features/space_cadet#space-cadet-the-future-built-in","2249":"/features/space_cadet#usage","2250":"/features/space_cadet#keycodes","2251":"/features/space_cadet#caveats","2252":"/features/space_cadet#configuration","2253":"/features/space_cadet#obsolete-configuration","2254":"/features/split_keyboard#split-keyboard","2255":"/features/split_keyboard#compatibility-overview","2256":"/features/split_keyboard#hardware-configuration","2257":"/features/split_keyboard#required-hardware","2258":"/features/split_keyboard#considerations","2259":"/features/split_keyboard#serial-wiring","2260":"/features/split_keyboard#i2c-wiring","2261":"/features/split_keyboard#firmware-configuration","2262":"/features/split_keyboard#layout-macro","2263":"/features/split_keyboard#setting-handedness","2264":"/features/split_keyboard#handedness-by-pin","2265":"/features/split_keyboard#handedness-by-matrix-pin","2266":"/features/split_keyboard#handedness-by-eeprom","2267":"/features/split_keyboard#handedness-by-define","2268":"/features/split_keyboard#communication-options","2269":"/features/split_keyboard#data-sync-options","2270":"/features/split_keyboard#custom-data-sync","2271":"/features/split_keyboard#hardware-configuration-options","2272":"/features/split_keyboard#hardware-considerations-and-mods","2273":"/features/split_keyboard#teensy-boards","2274":"/features/split_keyboard#additional-resources","2275":"/features/st7565#st7565-lcd-driver","2276":"/features/st7565#supported-hardware","2277":"/features/st7565#usage","2278":"/features/st7565#logo-example","2279":"/features/st7565#buffer-read-example","2280":"/features/st7565#other-examples","2281":"/features/st7565#basic-configuration","2282":"/features/st7565#custom-sized-displays","2283":"/features/st7565#api","2284":"/features/stenography#stenography-in-qmk","2285":"/features/stenography#steno-support-in-qmk","2286":"/features/stenography#plover-with-qwerty-keyboard","2287":"/features/stenography#plover-with-steno-protocol","2288":"/features/stenography#tx-bolt","2289":"/features/stenography#geminipr","2290":"/features/stenography#switching-protocols-on-the-fly","2291":"/features/stenography#configuring-qmk-for-steno","2292":"/features/stenography#learning-stenography","2293":"/features/stenography#interfacing-with-the-code","2294":"/features/stenography#keycode-reference","2295":"/features/swap_hands#swap-hands-action","2296":"/features/swap_hands#configuration","2297":"/features/swap_hands#swap-keycodes","2298":"/features/swap_hands#encoder-mapping","2299":"/features/swap_hands#functions","2300":"/features/tap_dance#tap-dance-a-single-key-can-do-3-5-or-100-different-things","2301":"/features/tap_dance#introduction","2302":"/features/tap_dance#how-to-use","2303":"/features/tap_dance#implementation","2304":"/features/tap_dance#examples","2305":"/features/tap_dance#simple-example","2306":"/features/tap_dance#complex-examples","2307":"/features/tap_dance#example-1","2308":"/features/tap_dance#example-2","2309":"/features/tap_dance#example-3","2310":"/features/tap_dance#example-4","2311":"/features/tap_dance#example-5","2312":"/features/tap_dance#example-6","2313":"/features/tri_layer#tri-layers","2314":"/features/tri_layer#keycodes","2315":"/features/tri_layer#configuration","2316":"/features/tri_layer#functions","2317":"/features/unicode#unicode","2318":"/features/unicode#caveats","2319":"/features/unicode#usage","2320":"/features/unicode#basic-configuration","2321":"/features/unicode#audio-feedback","2322":"/features/unicode#input-subsystems","2323":"/features/unicode#unicodemap-pairs","2324":"/features/unicode#input-modes","2325":"/features/unicode#keycodes","2326":"/features/unicode#api","2327":"/features/unicode#api-get-unicode-input-mode","2328":"/features/unicode#api-get-unicode-input-mode-return-value","2329":"/features/unicode#api-set-unicode-input-mode","2330":"/features/unicode#api-set-unicode-input-mode-arguments","2331":"/features/unicode#api-unicode-input-mode-step","2332":"/features/unicode#api-unicode-input-mode-step-reverse","2333":"/features/unicode#api-unicode-input-mode-set-user","2334":"/features/unicode#api-unicode-input-mode-set-user-arguments","2335":"/features/unicode#api-unicode-input-mode-set-kb","2336":"/features/unicode#api-unicode-input-mode-set-kb-arguments","2337":"/features/unicode#api-unicode-input-start","2338":"/features/unicode#api-unicode-input-finish","2339":"/features/unicode#api-unicode-input-cancel","2340":"/features/unicode#api-register-unicode","2341":"/features/unicode#api-register-unicode-arguments","2342":"/features/unicode#api-send-unicode-string","2343":"/features/unicode#api-send-unicode-string-arguments","2344":"/features/unicode#api-unicodemap-index","2345":"/features/unicode#api-unicodemap-index-arguments","2346":"/features/unicode#api-unicodemap-index-return-value","2347":"/features/unicode#api-unicodemap-get-code-point","2348":"/features/unicode#unicodemap-get-code-point-arguments","2349":"/features/unicode#unicodemap-get-code-point-return-value","2350":"/features/unicode#api-register-unicodemap","2351":"/features/unicode#api-register-unicodemap-arguments","2352":"/features/unicode#api-ucis-start","2353":"/features/unicode#api-ucis-active","2354":"/features/unicode#api-ucis-active-return-value","2355":"/features/unicode#api-ucis-count","2356":"/features/unicode#api-ucis-count-return-value","2357":"/features/unicode#api-ucis-add","2358":"/features/unicode#api-ucis-add-arguments","2359":"/features/unicode#api-ucis-add-return-value","2360":"/features/unicode#api-ucis-remove-last","2361":"/features/unicode#api-ucis-remove-last-return-value","2362":"/features/unicode#api-ucis-finish","2363":"/features/unicode#api-ucis-cancel","2364":"/features/unicode#api-register-ucis","2365":"/features/unicode#api-register-ucis-arguments","2366":"/features/wireless#wireless-bluetooth","2367":"/features/wireless#bluetooth-known-supported-hardware","2368":"/features/wireless#adafruit-ble-spi-friend","2369":"/features/wireless#bluetooth-rules-mk-options","2370":"/features/wireless#bluetooth-keycodes","2371":"/features/wpm#word-per-minute-wpm-calculation","2372":"/features/wpm#configuration","2373":"/features/wpm#public-functions","2374":"/features/wpm#callbacks","2375":"/flashing#flashing-instructions-and-bootloader-information","2376":"/flashing#atmel-dfu","2377":"/flashing#qmk-dfu","2378":"/flashing#make-targets","2379":"/flashing#caterina","2380":"/flashing#make-targets-1","2381":"/flashing#halfkay","2382":"/flashing#usbasploader","2383":"/flashing#bootloadhid","2384":"/flashing#qmk-hid","2385":"/flashing#make-targets-2","2386":"/flashing#stm32-apm32-dfu","2387":"/flashing#make-targets-3","2388":"/flashing#stm32duino","2389":"/flashing#kiibohd-dfu","2390":"/flashing#wb32-dfu","2391":"/flashing#at32-dfu","2392":"/flashing#make-targets-4","2393":"/flashing#tinyuf2","2394":"/flashing#make-targets-5","2395":"/flashing#uf2boot","2396":"/flashing#make-targets-6","2397":"/flashing#raspberry-pi-rp2040-uf2","2398":"/getting_started_docker#docker-quick-start","2399":"/getting_started_docker#requirements","2400":"/getting_started_docker#usage","2401":"/getting_started_docker#faq","2402":"/getting_started_docker#why-can-t-i-flash-on-windows-macos","2403":"/getting_started_github#how-to-use-github-with-qmk","2404":"/getting_started_introduction#introduction","2405":"/getting_started_introduction#basic-qmk-structure","2406":"/getting_started_introduction#userspace-structure","2407":"/getting_started_introduction#keyboard-project-structure","2408":"/getting_started_introduction#keymap-structure","2409":"/getting_started_introduction#the-config-h-file","2410":"/getting_started_make_guide#more-detailed-make-instructions","2411":"/getting_started_make_guide#rules-mk-options","2412":"/getting_started_make_guide#customizing-makefile-options-on-a-per-keymap-basis","2413":"/hand_wire#hand-wiring-guide","2414":"/hand_wire#parts-list","2415":"/hand_wire#starting-the-build","2416":"/hand_wire#planning-the-matrix","2417":"/hand_wire#common-microcontroller-boards","2418":"/hand_wire#wiring-the-matrix","2419":"/hand_wire#a-note-on-split-keyboards","2420":"/hand_wire#soldering","2421":"/hand_wire#soldering-the-diodes","2422":"/hand_wire#soldering-the-columns","2423":"/hand_wire#wiring-up-the-controller","2424":"/hand_wire#specific-instructions-for-the-teensy-2-0","2425":"/hand_wire#getting-some-basic-firmware-set-up","2426":"/hand_wire#flashing-the-firmware","2427":"/hand_wire#testing-your-firmware","2428":"/hand_wire#finishing-up","2429":"/hand_wire#links-to-other-guides","2430":"/hand_wire#legacy-content","2431":"/hand_wire#preamble-how-a-keyboard-matrix-works-and-why-we-need-diodes","2432":"/hardware_keyboard_guidelines#qmk-keyboard-guidelines","2433":"/hardware_keyboard_guidelines#use-qmk-lint","2434":"/hardware_keyboard_guidelines#naming-your-keyboard-project","2435":"/hardware_keyboard_guidelines#sub-folders","2436":"/hardware_keyboard_guidelines#keyboard-folder-structure","2437":"/hardware_keyboard_guidelines#readme-md","2438":"/hardware_keyboard_guidelines#keyboard-json-info-json","2439":"/hardware_keyboard_guidelines#config-h","2440":"/hardware_keyboard_guidelines#rules-mk","2441":"/hardware_keyboard_guidelines#keyboard-c","2442":"/hardware_keyboard_guidelines#keyboard-h","2443":"/hardware_keyboard_guidelines#image-hardware-files","2444":"/hardware_keyboard_guidelines#keyboard-defaults","2445":"/hardware_keyboard_guidelines#magic-keycodes-and-command","2446":"/hardware_keyboard_guidelines#custom-keyboard-programming","2447":"/hardware_keyboard_guidelines#non-production-handwired-projects","2448":"/hardware_keyboard_guidelines#warnings-as-errors","2449":"/hardware_keyboard_guidelines#copyright-blurb","2450":"/hardware_keyboard_guidelines#license","2451":"/hardware_drivers#qmk-hardware-drivers","2452":"/hardware_drivers#available-drivers","2453":"/hardware_drivers#promicro-avr-only","2454":"/hardware_drivers#ssd1306-oled-driver","2455":"/hardware_drivers#ws2812","2456":"/hardware_drivers#is31fl3731","2457":"/hardware_drivers#is31fl3733","2458":"/hardware_drivers#_24xx-series-external-i2c-eeprom","2459":"/how_a_matrix_works#how-a-keyboard-matrix-works","2460":"/how_keyboards_work#how-keys-are-registered-and-interpreted-by-computers","2461":"/how_keyboards_work#schematic-view","2462":"/how_keyboards_work#_1-you-press-a-key","2463":"/how_keyboards_work#_2-what-the-firmware-sends","2464":"/how_keyboards_work#_3-what-the-event-input-kernel-does","2465":"/how_keyboards_work#_4-what-the-operating-system-does","2466":"/how_keyboards_work#back-to-the-firmware","2467":"/how_keyboards_work#list-of-characters-you-can-send","2468":"/how_keyboards_work#how-to-maybe-enter-unicode-characters","2469":"/#quantum-mechanical-keyboard-firmware","2470":"/#what-is-qmk-firmware","2471":"/#get-started","2472":"/#make-it-yours","2473":"/#need-help","2474":"/#give-back","2475":"/isp_flashing_guide#isp-flashing-guide","2476":"/isp_flashing_guide#hardware","2477":"/isp_flashing_guide#pro-micro-as-isp","2478":"/isp_flashing_guide#wiring","2479":"/isp_flashing_guide#arduino-uno-micro-as-isp","2480":"/isp_flashing_guide#wiring-1","2481":"/isp_flashing_guide#teensy-2-0-as-isp","2482":"/isp_flashing_guide#wiring-2","2483":"/isp_flashing_guide#sparkfun-pocketavr-usbtinyisp","2484":"/isp_flashing_guide#wiring-3","2485":"/isp_flashing_guide#usbasp","2486":"/isp_flashing_guide#wiring-4","2487":"/isp_flashing_guide#bus-pirate","2488":"/isp_flashing_guide#wiring-5","2489":"/isp_flashing_guide#software","2490":"/isp_flashing_guide#bootloader-firmware","2491":"/isp_flashing_guide#atmel-dfu","2492":"/isp_flashing_guide#caterina","2493":"/isp_flashing_guide#bootloadhid-ps2avrgb","2494":"/isp_flashing_guide#usbasploader","2495":"/isp_flashing_guide#flashing-the-bootloader","2496":"/isp_flashing_guide#setting-the-fuses","2497":"/isp_flashing_guide#creating-a-production-firmware","2498":"/isp_flashing_guide#flashing-stm32duino-bootloader","2499":"/isp_flashing_guide#software-1","2500":"/isp_flashing_guide#wiring-6","2501":"/isp_flashing_guide#flashing","2502":"/keycodes_basic#basic-keycodes","2503":"/keycodes_basic#letters-and-numbers","2504":"/keycodes_basic#f-keys","2505":"/keycodes_basic#punctuation","2506":"/keycodes_basic#lock-keys","2507":"/keycodes_basic#modifiers","2508":"/keycodes_basic#international","2509":"/keycodes_basic#commands","2510":"/keycodes_basic#media-keys","2511":"/keycodes_basic#number-pad","2512":"/keycodes_basic#special-keys","2513":"/keycodes_magic#magic-keycodes","2514":"/keycodes#keycodes-overview","2515":"/keycodes#basic-keycodes","2516":"/keycodes#quantum-keycodes","2517":"/keycodes#audio-keys","2518":"/keycodes#auto-shift","2519":"/keycodes#autocorrect","2520":"/keycodes#backlighting","2521":"/keycodes#bluetooth","2522":"/keycodes#caps-word","2523":"/keycodes#dynamic-macros","2524":"/keycodes#grave-escape","2525":"/keycodes#joystick","2526":"/keycodes#key-lock","2527":"/keycodes#layer-lock","2528":"/keycodes#layer-switching","2529":"/keycodes#leader-key","2530":"/keycodes#led-matrix","2531":"/keycodes#magic-keycodes","2532":"/keycodes#midi","2533":"/keycodes#mouse-keys","2534":"/keycodes#modifiers","2535":"/keycodes#mod-tap-keys","2536":"/keycodes#tapping-term-keys","2537":"/keycodes#rgb-lighting","2538":"/keycodes#rgb-matrix","2539":"/keycodes#us-ansi-shifted-symbols","2540":"/keycodes#one-shot-keys","2541":"/keycodes#programmable-button","2542":"/keycodes#repeat-key","2543":"/keycodes#space-cadet","2544":"/keycodes#swap-hands","2545":"/keycodes#unicode-support","2546":"/keymap#keymap-overview","2547":"/keymap#keymap-and-layers","2548":"/keymap#keymap-layer-status","2549":"/keymap#layer-precedence-and-transparency","2550":"/keymap#anatomy-of-a-keymap-c","2551":"/keymap#definitions","2552":"/keymap#layers-and-keymaps","2553":"/keymap#base-layer","2554":"/keymap#function-overlay-layer","2555":"/keymap#nitty-gritty-details","2556":"/keycodes_us_ansi_shifted#us-ansi-shifted-symbols","2557":"/keycodes_us_ansi_shifted#caveats","2558":"/keycodes_us_ansi_shifted#keycodes","2559":"/mod_tap#mod-tap","2560":"/mod_tap#caveats","2561":"/mod_tap#intercepting-mod-taps","2562":"/mod_tap#changing-tap-function","2563":"/mod_tap#changing-hold-function","2564":"/mod_tap#changing-both-tap-and-hold","2565":"/mod_tap#other-resources","2566":"/license_violations#license-violations","2567":"/license_violations#offending-vendors","2568":"/license_violations#licensing","2569":"/license_violations#qmk-pr-considerations","2570":"/license_violations#detection","2571":"/license_violations#remediation","2572":"/newbs#the-qmk-tutorial","2573":"/newbs#overview","2574":"/newbs#additional-resources","2575":"/newbs_building_firmware#building-your-first-firmware","2576":"/newbs_building_firmware#configure-your-build-environment-defaults-optional","2577":"/newbs_building_firmware#create-a-new-keymap","2578":"/newbs_building_firmware#open-keymap-c-in-your-favorite-text-editor","2579":"/newbs_building_firmware#customize-the-layout-to-your-liking","2580":"/newbs_building_firmware#build-your-firmware","2581":"/newbs_building_firmware#flash-your-firmware","2582":"/newbs_building_firmware_configurator#qmk-configurator","2583":"/newbs_external_userspace#external-qmk-userspace","2584":"/newbs_external_userspace#setting-up-qmk-locally","2585":"/newbs_external_userspace#external-userspace-repository-setup-forked-on-github","2586":"/newbs_external_userspace#external-userspace-setup-locally-stored-only","2587":"/newbs_external_userspace#adding-a-keymap","2588":"/newbs_external_userspace#adding-the-keymap-to-external-userspace-build-targets","2589":"/newbs_external_userspace#compiling-external-userspace-build-targets","2590":"/newbs_external_userspace#using-github-actions","2591":"/newbs_building_firmware_workflow#building-qmk-with-github-userspace","2592":"/newbs_building_firmware_workflow#prerequisites","2593":"/newbs_building_firmware_workflow#environment-setup","2594":"/newbs_building_firmware_workflow#_1-install-git","2595":"/newbs_building_firmware_workflow#_2-github-authentication","2596":"/newbs_building_firmware_workflow#_3-create-a-repository","2597":"/newbs_building_firmware_workflow#initial-code-commit","2598":"/newbs_building_firmware_workflow#create-template-files","2599":"/newbs_building_firmware_workflow#add-a-json-keymap","2600":"/newbs_building_firmware_workflow#add-a-github-action-workflow","2601":"/newbs_building_firmware_workflow#commit-files-to-github","2602":"/newbs_building_firmware_workflow#review-workflow-output","2603":"/newbs_building_firmware_workflow#customising-your-keymap","2604":"/newbs_flashing#flashing-your-keyboard","2605":"/newbs_flashing#put-your-keyboard-into-dfu-bootloader-mode","2606":"/newbs_flashing#flashing-your-keyboard-with-qmk-toolbox","2607":"/newbs_flashing#load-the-file-into-qmk-toolbox","2608":"/newbs_flashing#flash-your-keyboard","2609":"/newbs_flashing#flash-your-keyboard-from-the-command-line","2610":"/newbs_flashing#test-it-out","2611":"/newbs_getting_started#setting-up-your-qmk-environment","2612":"/newbs_getting_started#_1-prerequisites","2613":"/newbs_getting_started#set-up-your-environment","2614":"/newbs_getting_started#prerequisites","2615":"/newbs_getting_started#prerequisites-1","2616":"/newbs_getting_started#installation","2617":"/newbs_getting_started#prerequisites-2","2618":"/newbs_getting_started#installation-1","2619":"/newbs_getting_started#installation-2","2620":"/newbs_getting_started#installation-3","2621":"/newbs_getting_started#set-up-qmk","2622":"/newbs_getting_started#_4-test-your-build-environment","2623":"/newbs_getting_started#creating-your-keymap","2624":"/newbs_git_best_practices#best-git-practices-for-working-with-qmk","2625":"/newbs_git_best_practices#or-how-i-learned-to-stop-worrying-and-love-git","2626":"/newbs_git_resolving_merge_conflicts#resolving-merge-conflicts","2627":"/newbs_git_resolving_merge_conflicts#rebasing-your-changes","2628":"/newbs_git_resynchronize_a_branch#resynchronizing-an-out-of-sync-git-branch","2629":"/newbs_git_resynchronize_a_branch#backing-up-the-changes-on-your-own-master-branch-optional","2630":"/newbs_git_resynchronize_a_branch#resynchronizing-your-branch","2631":"/newbs_git_using_your_master_branch#your-fork-s-master-update-often-commit-never","2632":"/newbs_git_using_your_master_branch#updating-your-master-branch","2633":"/newbs_git_using_your_master_branch#making-changes","2634":"/newbs_git_using_your_master_branch#publishing-your-changes","2635":"/newbs_learn_more_resources#learning-resources","2636":"/newbs_learn_more_resources#qmk-resources","2637":"/newbs_learn_more_resources#command-line-resources","2638":"/newbs_learn_more_resources#text-editor-resources","2639":"/newbs_learn_more_resources#git-resources","2640":"/newbs_testing_debugging#testing-and-debugging","2641":"/newbs_testing_debugging#testing","2642":"/newbs_testing_debugging#debugging","2643":"/one_shot_keys#one-shot-keys","2644":"/one_shot_keys#keycodes","2645":"/one_shot_keys#callbacks","2646":"/other_eclipse#setting-up-eclipse-for-qmk-development","2647":"/other_eclipse#prerequisites","2648":"/other_eclipse#build-environment","2649":"/other_eclipse#java","2650":"/other_eclipse#install-eclipse-and-its-plugins","2651":"/other_eclipse#download-and-install-eclipse-cdt","2652":"/other_eclipse#first-launch","2653":"/other_eclipse#install-the-necessary-plugins","2654":"/other_eclipse#configure-eclipse-for-qmk","2655":"/other_eclipse#importing-the-project","2656":"/other_eclipse#build-your-keyboard","2657":"/other_vscode#setting-up-visual-studio-code-for-qmk-development","2658":"/other_vscode#set-up-vs-code","2659":"/other_vscode#windows","2660":"/other_vscode#prerequisites","2661":"/other_vscode#installing-vs-code","2662":"/other_vscode#msys2-setup","2663":"/other_vscode#every-other-operating-system","2664":"/other_vscode#extensions","2665":"/other_vscode#configure-vs-code-for-qmk","2666":"/other_vscode#configuring-vs-code","2667":"/other_vscode#debugging-arm-mcus-with-visual-studio-code","2668":"/platformdev_chibios_earlyinit#chibios-early-init","2669":"/platformdev_chibios_earlyinit#early-hardware-init-pre","2670":"/platformdev_chibios_earlyinit#early-hardware-init-post","2671":"/platformdev_chibios_earlyinit#board-init","2672":"/platformdev_blackpill_f4x1#weact-blackpill-stm32f4x1","2673":"/platformdev_blackpill_f4x1#pin-usage-limitations","2674":"/platformdev_blackpill_f4x1#unusable-pins","2675":"/platformdev_blackpill_f4x1#pins-to-be-avoided","2676":"/platformdev_blackpill_f4x1#shared-usage","2677":"/platformdev_blackpill_f4x1#limited-usage","2678":"/platformdev_blackpill_f4x1#additional-information","2679":"/platformdev_blackpill_f4x1#bootloader-issues","2680":"/platformdev_blackpill_f4x1#tiny-uf2-support","2681":"/platformdev_proton_c#proton-c","2682":"/platformdev_proton_c#features","2683":"/platformdev_proton_c#warnings","2684":"/platformdev_proton_c#manual-conversion","2685":"/platformdev_rp2040#raspberry-pi-rp2040","2686":"/platformdev_rp2040#gpio","2687":"/platformdev_rp2040#pin-nomenclature","2688":"/platformdev_rp2040#alternate-functions","2689":"/platformdev_rp2040#selecting-hardware-peripherals-and-drivers","2690":"/platformdev_rp2040#i2c-driver","2691":"/platformdev_rp2040#spi-driver","2692":"/platformdev_rp2040#uart-driver","2693":"/platformdev_rp2040#double-tap","2694":"/platformdev_rp2040#pre-defined-rp2040-boards","2695":"/platformdev_rp2040#generic-pro-micro-rp2040","2696":"/platformdev_rp2040#generic-rp2040-board","2697":"/platformdev_rp2040#split-keyboard-support","2698":"/platformdev_rp2040#rp2040-second-stage-bootloader-selection","2699":"/platformdev_rp2040#rp2040_ce","2700":"/platformdev_selecting_arm_mcu#choose-arm-mcu","2701":"/platformdev_selecting_arm_mcu#selecting-already-supported-mcu","2702":"/platformdev_selecting_arm_mcu#stm32-families","2703":"/platformdev_selecting_arm_mcu#non-stm32-families","2704":"/platformdev_selecting_arm_mcu#add-new-stm32-mcu","2705":"/platformdev_selecting_arm_mcu#add-new-stm32-family","2706":"/platformdev_selecting_arm_mcu#add-new-mcu-family","2707":"/porting_your_keyboard_to_qmk#adding-your-keyboard-to-qmk","2708":"/porting_your_keyboard_to_qmk#readme-md","2709":"/porting_your_keyboard_to_qmk#keyboard-json","2710":"/porting_your_keyboard_to_qmk#hardware-configuration","2711":"/porting_your_keyboard_to_qmk#matrix-configuration","2712":"/porting_your_keyboard_to_qmk#diode-matrix","2713":"/porting_your_keyboard_to_qmk#direct-pin-matrix","2714":"/porting_your_keyboard_to_qmk#layout-macros","2715":"/porting_your_keyboard_to_qmk#additional-configuration","2716":"/porting_your_keyboard_to_qmk#configuration-options","2717":"/porting_your_keyboard_to_qmk#build-options","2718":"/pr_checklist#pr-checklists","2719":"/pr_checklist#requirements-for-all-prs","2720":"/pr_checklist#keymap-prs","2721":"/pr_checklist#keyboard-prs","2722":"/pr_checklist#core-pr","2723":"/pr_checklist#notes","2724":"/pr_checklist#review-process","2725":"/pr_checklist#example-gplv2-header","2726":"/proprietary_libs#proprietary-vendor-libraries","2727":"/proprietary_libs#architecture-constraints","2728":"/proprietary_libs#common-vendor-library-restrictions","2729":"/proprietary_libs#bluetooth-stack-licensing-examples","2730":"/proprietary_libs#why-the-system-library-exception-doesn-t-apply","2731":"/proprietary_libs#system-library-requirements","2732":"/proprietary_libs#why-vendor-libraries-fail-these-requirements","2733":"/proprietary_libs#attempted-workarounds","2734":"/proprietary_libs#architectural-separation-attempts","2735":"/proprietary_libs#loader-based-separation","2736":"/proprietary_libs#real-world-examples","2737":"/proprietary_libs#bluetooth-wireless-stacks","2738":"/proprietary_libs#hal-and-driver-libraries","2739":"/proprietary_libs#mixed-proprietary-open","2740":"/proprietary_libs#legal-and-practical-consequences","2741":"/proprietary_libs#evaluation-criteria-for-libraries","2742":"/proprietary_libs#policy-implementation","2743":"/proprietary_libs#summary","2744":"/quantum_keycodes#quantum-keycodes","2745":"/quantum_keycodes#qmk-keycodes","2746":"/quantum_painter#quantum-painter","2747":"/quantum_painter#quantum-painter-config","2748":"/quantum_painter#quantum-painter-cli","2749":"/quantum_painter#quantum-painter-drivers","2750":"/quantum_painter#quantum-painter-api","2751":"/quantum_painter_lvgl#lvgl","2752":"/quantum_painter_lvgl#lvgl-enabling","2753":"/quantum_painter_lvgl#lvgl-api","2754":"/quantum_painter_lvgl#lvgl-api-init","2755":"/quantum_painter_lvgl#lvgl-api-detach","2756":"/quantum_painter_lvgl#lvgl-configuring","2757":"/quantum_painter_lvgl#changing-the-lvgl-task-frequency","2758":"/quantum_painter_qff#qmk-font-format","2759":"/quantum_painter_qff#qff-block-header","2760":"/quantum_painter_qff#qff-font-descriptor","2761":"/quantum_painter_qff#qff-ascii-table","2762":"/quantum_painter_qff#qff-unicode-table","2763":"/quantum_painter_qff#qff-palette-descriptor","2764":"/quantum_painter_qff#qff-data-descriptor","2765":"/quantum_painter_qgf#qmk-graphics-format","2766":"/quantum_painter_qgf#qgf-block-header","2767":"/quantum_painter_qgf#qgf-graphics-descriptor","2768":"/quantum_painter_qgf#qgf-frame-offset-descriptor","2769":"/quantum_painter_qgf#qgf-frame-descriptor","2770":"/quantum_painter_qgf#qgf-frame-palette-descriptor","2771":"/quantum_painter_qgf#qgf-frame-delta-descriptor","2772":"/quantum_painter_qgf#qgf-frame-data-descriptor","2773":"/quantum_painter_rle#qmk-qp-rle-schema","2774":"/ref_functions#list-of-useful-core-functions-to-make-your-keyboard-better","2775":"/ref_functions#olkb-tri-layers","2776":"/ref_functions#update-tri-layer-x-y-z","2777":"/ref_functions#example","2778":"/ref_functions#update-tri-layer-state-state-x-y-z","2779":"/ref_functions#example-1","2780":"/ref_functions#setting-the-persistent-default-layer","2781":"/ref_functions#resetting-the-keyboard","2782":"/ref_functions#reset-to-bootloader","2783":"/ref_functions#wiping-the-eeprom-persistent-storage","2784":"/ref_functions#tap-random-key","2785":"/ref_functions#software-timers","2786":"/reference_configurator_support#supporting-your-keyboard-in-qmk-configurator","2787":"/reference_configurator_support#how-the-configurator-understands-keyboards","2788":"/reference_configurator_support#building-the-json-file","2789":"/reference_configurator_support#how-the-configurator-programs-keys","2790":"/reference_configurator_support#issues-and-hazards","2791":"/reference_configurator_support#workarounds","2792":"/reference_configurator_support#non-rectangular-keys","2793":"/reference_configurator_support#vertically-offset-keys","2794":"/reference_glossary#glossary-of-qmk-terms","2795":"/reference_glossary#arm","2796":"/reference_glossary#avr","2797":"/reference_glossary#azerty","2798":"/reference_glossary#backlight","2799":"/reference_glossary#bluetooth","2800":"/reference_glossary#bootloader","2801":"/reference_glossary#bootmagic","2802":"/reference_glossary#c","2803":"/reference_glossary#colemak","2804":"/reference_glossary#compile","2805":"/reference_glossary#dvorak","2806":"/reference_glossary#dynamic-macro","2807":"/reference_glossary#eclipse","2808":"/reference_glossary#firmware","2809":"/reference_glossary#git","2810":"/reference_glossary#github","2811":"/reference_glossary#isp","2812":"/reference_glossary#hid-listen","2813":"/reference_glossary#keycode","2814":"/reference_glossary#key-down","2815":"/reference_glossary#key-up","2816":"/reference_glossary#keymap","2817":"/reference_glossary#layer","2818":"/reference_glossary#leader-key","2819":"/reference_glossary#led","2820":"/reference_glossary#make","2821":"/reference_glossary#matrix","2822":"/reference_glossary#macro","2823":"/reference_glossary#mcu","2824":"/reference_glossary#modifier","2825":"/reference_glossary#mousekeys","2826":"/reference_glossary#n-key-rollover-nkro","2827":"/reference_glossary#oneshot-modifier","2828":"/reference_glossary#promicro","2829":"/reference_glossary#pull-request","2830":"/reference_glossary#qwerty","2831":"/reference_glossary#qwertz","2832":"/reference_glossary#rollover","2833":"/reference_glossary#scancode","2834":"/reference_glossary#space-cadet-shift","2835":"/reference_glossary#tap","2836":"/reference_glossary#tap-dance","2837":"/reference_glossary#teensy","2838":"/reference_glossary#underlight","2839":"/reference_glossary#unicode","2840":"/reference_glossary#unit-testing","2841":"/reference_glossary#usb","2842":"/reference_glossary#usb-host-or-simply-host","2843":"/reference_glossary#couldn-t-find-the-term-you-re-looking-for","2844":"/reference_info_json#info-json-reference","2845":"/reference_info_json#general-metadata","2846":"/reference_info_json#hardware-configuration","2847":"/reference_info_json#firmware-configuration","2848":"/reference_info_json#apa102","2849":"/reference_info_json#audio","2850":"/reference_info_json#backlight","2851":"/reference_info_json#battery","2852":"/reference_info_json#bluetooth","2853":"/reference_info_json#bootmagic","2854":"/reference_info_json#caps-word","2855":"/reference_info_json#combo","2856":"/reference_info_json#dip-switch","2857":"/reference_info_json#eeprom","2858":"/reference_info_json#encoder","2859":"/reference_info_json#host","2860":"/reference_info_json#indicators","2861":"/reference_info_json#keycodes","2862":"/reference_info_json#layouts","2863":"/reference_info_json#leader-key","2864":"/reference_info_json#led-matrix","2865":"/reference_info_json#matrix","2866":"/reference_info_json#mouse-keys","2867":"/reference_info_json#one-shot","2868":"/reference_info_json#ps2","2869":"/reference_info_json#qmk-lufa-bootloader","2870":"/reference_info_json#rgblight","2871":"/reference_info_json#rgb-matrix","2872":"/reference_info_json#secure","2873":"/reference_info_json#split-keyboard","2874":"/reference_info_json#stenography","2875":"/reference_info_json#usb","2876":"/reference_info_json#ws2812","2877":"/reference_keymap_extras#language-specific-keycodes","2878":"/reference_keymap_extras#selecting-your-host-keyboard-layout","2879":"/reference_keymap_extras#sendstring-support","2880":"/reference_keymap_extras#header-files","2881":"/squeezing_avr#squeezing-the-most-out-of-avr","2882":"/squeezing_avr#rules-mk-settings","2883":"/squeezing_avr#config-h-settings","2884":"/squeezing_avr#audio-settings","2885":"/squeezing_avr#layers","2886":"/squeezing_avr#oled-tweaks","2887":"/squeezing_avr#rgb-settings","2888":"/squeezing_avr#final-thoughts","2889":"/support#getting-help","2890":"/support#realtime-chat","2891":"/support#olkb-subreddit","2892":"/support#github-issues","2893":"/support_deprecation_policy#feature-support-policies","2894":"/support_deprecation_policy#system-constraints","2895":"/support_deprecation_policy#deprecation-removal-policy","2896":"/support_deprecation_policy#how-much-advance-notice-will-be-given","2897":"/support_deprecation_policy#how-will-deprecation-be-communicated","2898":"/tap_hold#tap-hold-configuration-options","2899":"/tap_hold#tapping-term","2900":"/tap_hold#example","2901":"/tap_hold#dynamic-tapping-term","2902":"/tap_hold#tap-or-hold-decision-modes","2903":"/tap_hold#comparison","2904":"/tap_hold#distinct-taps","2905":"/tap_hold#nested-tap","2906":"/tap_hold#rolling-keys","2907":"/tap_hold#default-mode","2908":"/tap_hold#permissive-hold","2909":"/tap_hold#hold-on-other-key-press","2910":"/tap_hold#quick-tap-term","2911":"/tap_hold#flow-tap","2912":"/tap_hold#is-flow-tap-key","2913":"/tap_hold#get-flow-tap-term","2914":"/tap_hold#chordal-hold","2915":"/tap_hold#chordal-hold-handedness","2916":"/tap_hold#per-chord-customization","2917":"/tap_hold#retro-tapping","2918":"/tap_hold#retro-shift","2919":"/tap_hold#speculative-hold","2920":"/tap_hold#why-do-we-include-the-key-record-for-the-per-key-functions","2921":"/tap_hold#why-are-there-no-kb-or-user-functions","2922":"/syllabus#qmk-syllabus","2923":"/syllabus#beginning-topics","2924":"/syllabus#intermediate-topics","2925":"/syllabus#advanced-topics","2926":"/understanding_qmk#understanding-qmk-s-code","2927":"/understanding_qmk#startup","2928":"/understanding_qmk#the-main-loop","2929":"/understanding_qmk#matrix-scanning","2930":"/understanding_qmk#matrix-to-physical-layout-map","2931":"/understanding_qmk#keycode-assignment","2932":"/understanding_qmk#state-change-detection","2933":"/understanding_qmk#process-record","2934":"/unit_testing#unit-testing","2935":"/unit_testing#google-test-and-google-mock","2936":"/unit_testing#use-of-c","2937":"/unit_testing#adding-tests-for-new-or-existing-features","2938":"/unit_testing#running-the-tests","2939":"/unit_testing#debugging-the-tests","2940":"/unit_testing#full-integration-tests","2941":"/unit_testing#keycode-string","2942":"/unit_testing#tracing-variables"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[6,1,56],"1":[6,6,41],"2":[4,6,36],"3":[11,6,49],"4":[6,6,33],"5":[9,6,41],"6":[9,6,47],"7":[10,6,44],"8":[8,6,34],"9":[7,1,47],"10":[5,7,90],"11":[9,7,46],"12":[3,7,19],"13":[2,7,29],"14":[9,7,69],"15":[12,7,49],"16":[7,7,44],"17":[7,7,25],"18":[4,7,30],"19":[7,1,51],"20":[2,7,1],"21":[7,9,50],"22":[6,9,46],"23":[6,9,47],"24":[6,9,43],"25":[13,9,69],"26":[6,9,12],"27":[13,9,20],"28":[6,9,77],"29":[2,7,1],"30":[6,9,44],"31":[6,15,119],"32":[6,9,45],"33":[8,9,42],"34":[6,17,98],"35":[12,9,22],"36":[4,21,57],"37":[2,7,60],"38":[3,7,58],"39":[7,1,47],"40":[4,7,1],"41":[2,11,1],"42":[6,13,1],"43":[7,13,48],"44":[3,11,1],"45":[5,14,91],"46":[4,11,35],"47":[2,7,1],"48":[1,9,22],"49":[3,9,349],"50":[4,9,260],"51":[4,7,31],"52":[7,1,47],"53":[4,7,1],"54":[2,11,1],"55":[6,13,47],"56":[8,13,21],"57":[8,13,39],"58":[6,13,25],"59":[3,11,1],"60":[4,14,15],"61":[2,7,1],"62":[1,9,26],"63":[3,9,83],"64":[4,9,45],"65":[4,7,121],"66":[7,1,1],"67":[4,7,48],"68":[2,7,1],"69":[5,8,51],"70":[4,8,171],"71":[3,7,1],"72":[4,10,35],"73":[1,10,113],"74":[3,10,149],"75":[4,10,117],"76":[4,10,90],"77":[5,10,68],"78":[7,1,1],"79":[2,7,1],"80":[7,8,13],"81":[5,8,9],"82":[5,8,31],"83":[4,8,33],"84":[4,8,14],"85":[4,7,1],"86":[3,10,86],"87":[5,10,50],"88":[3,15,39],"89":[5,10,24],"90":[6,10,75],"91":[2,7,1],"92":[1,8,112],"93":[3,8,234],"94":[4,8,145],"95":[4,8,35],"96":[7,1,1],"97":[2,7,1],"98":[4,9,54],"99":[3,9,74],"100":[3,9,29],"101":[4,7,1],"102":[3,10,85],"103":[4,10,63],"104":[4,14,41],"105":[7,10,65],"106":[3,7,1],"107":[3,10,84],"108":[5,10,19],"109":[4,10,21],"110":[1,14,42],"111":[2,14,107],"112":[3,14,117],"113":[4,10,105],"114":[2,7,1145],"115":[7,1,1],"116":[3,7,42],"117":[2,7,1],"118":[5,9,106],"119":[4,9,104],"120":[5,9,78],"121":[4,7,1],"122":[3,10,44],"123":[6,10,62],"124":[8,10,95],"125":[4,10,86],"126":[4,10,69],"127":[6,14,40],"128":[4,10,28],"129":[3,7,1],"130":[3,10,50],"131":[2,10,78],"132":[2,10,87],"133":[4,10,179],"134":[2,7,847],"135":[7,1,1],"136":[2,7,1],"137":[7,9,22],"138":[6,9,28],"139":[4,7,1],"140":[8,10,23],"141":[10,10,19],"142":[5,10,22],"143":[3,10,291],"144":[3,7,1],"145":[3,10,18],"146":[2,10,12],"147":[1,12,5],"148":[1,12,3],"149":[2,7,866],"150":[7,1,1],"151":[2,7,1],"152":[3,9,80],"153":[3,9,111],"154":[3,9,54],"155":[4,7,1],"156":[6,10,65],"157":[4,10,50],"158":[3,10,73],"159":[3,10,51],"160":[2,7,516],"161":[7,1,1],"162":[2,7,1],"163":[6,9,73],"164":[9,9,57],"165":[4,7,1],"166":[8,10,71],"167":[6,10,38],"168":[3,10,29],"169":[6,10,75],"170":[2,16,27],"171":[3,7,1],"172":[3,10,67],"173":[7,10,87],"174":[7,10,75],"175":[4,10,100],"176":[2,7,977],"177":[7,1,1],"178":[2,7,1],"179":[2,9,38],"180":[4,7,1],"181":[3,10,38],"182":[2,10,137],"183":[3,10,34],"184":[6,10,66],"185":[5,10,93],"186":[3,10,31],"187":[3,7,21],"188":[2,10,171],"189":[2,10,67],"190":[5,10,79],"191":[2,7,1144],"192":[7,1,1],"193":[4,7,1],"194":[7,10,182],"195":[9,10,106],"196":[7,10,89],"197":[3,10,37],"198":[3,7,105],"199":[2,7,907],"200":[7,1,1],"201":[2,7,147],"202":[4,8,71],"203":[7,8,74],"204":[3,8,37],"205":[4,7,1],"206":[7,10,60],"207":[3,10,49],"208":[3,7,1],"209":[4,10,60],"210":[4,10,31],"211":[2,7,1441],"212":[7,1,1],"213":[2,7,110],"214":[4,8,35],"215":[3,8,54],"216":[4,7,1],"217":[3,10,46],"218":[7,10,49],"219":[4,10,15],"220":[6,10,29],"221":[4,10,105],"222":[2,7,740],"223":[7,1,1],"224":[2,7,75],"225":[4,7,1],"226":[3,10,47],"227":[3,7,1],"228":[3,10,94],"229":[6,10,45],"230":[4,10,55],"231":[7,10,127],"232":[5,10,68],"233":[8,10,78],"234":[4,10,112],"235":[6,10,44],"236":[2,7,816],"237":[7,1,1],"238":[2,7,45],"239":[4,7,1],"240":[4,10,94],"241":[3,10,110],"242":[3,7,1],"243":[7,10,76],"244":[5,10,50],"245":[6,10,40],"246":[7,10,44],"247":[4,10,50],"248":[4,10,50],"249":[2,7,827],"250":[7,1,1],"251":[2,7,62],"252":[4,7,1],"253":[3,10,75],"254":[5,10,45],"255":[5,10,59],"256":[5,10,31],"257":[2,15,21],"258":[3,15,22],"259":[2,15,44],"260":[2,15,8],"261":[3,7,1],"262":[5,10,85],"263":[9,10,104],"264":[2,7,15],"265":[7,9,81],"266":[2,7,686],"267":[7,1,1],"268":[2,7,64],"269":[4,7,1],"270":[3,10,47],"271":[7,10,34],"272":[7,10,52],"273":[9,10,104],"274":[2,7,15],"275":[7,9,45],"276":[7,9,73],"277":[2,7,446],"278":[7,1,1],"279":[2,7,81],"280":[4,7,1],"281":[3,10,39],"282":[2,7,15],"283":[4,9,66],"284":[8,9,69],"285":[2,7,382],"286":[7,1,1],"287":[2,7,1],"288":[3,9,98],"289":[3,9,61],"290":[4,7,1],"291":[3,10,20],"292":[2,7,15],"293":[4,9,53],"294":[2,7,365],"295":[7,1,1],"296":[2,7,1],"297":[3,9,65],"298":[4,9,32],"299":[4,7,1],"300":[3,10,23],"301":[2,7,15],"302":[7,9,31],"303":[8,9,66],"304":[7,9,29],"305":[4,9,53],"306":[5,9,38],"307":[6,9,146],"308":[2,7,481],"309":[7,1,1],"310":[4,7,1],"311":[3,10,47],"312":[5,10,126],"313":[2,7,15],"314":[4,9,52],"315":[5,9,40],"316":[8,9,23],"317":[2,7,320],"318":[7,1,1],"319":[2,7,1],"320":[11,9,84],"321":[4,7,1],"322":[3,10,21],"323":[10,10,53],"324":[2,10,38],"325":[2,10,39],"326":[2,7,15],"327":[9,9,25],"328":[2,7,414],"329":[7,1,1],"330":[2,7,1],"331":[6,9,58],"332":[5,9,40],"333":[2,7,207],"334":[2,1,37],"335":[2,2,47],"336":[2,4,1],"337":[1,4,1],"338":[1,4,93],"339":[1,4,1],"340":[2,5,15],"341":[4,5,14],"342":[2,4,19],"343":[1,2,1],"344":[2,3,9],"345":[1,3,6],"346":[2,3,28],"347":[2,3,60],"348":[2,3,89],"349":[2,3,9],"350":[1,3,12],"351":[3,4,3],"352":[3,7,4],"353":[3,7,4],"354":[3,4,3],"355":[3,4,8],"356":[2,2,18],"357":[1,2,8],"358":[3,1,12],"359":[4,1,36],"360":[1,1,53],"361":[1,1,50],"362":[2,1,18],"363":[7,2,34],"364":[12,2,24],"365":[13,2,11],"366":[13,2,12],"367":[2,1,23],"368":[1,2,35],"369":[4,3,143],"370":[4,2,48],"371":[3,2,98],"372":[3,2,46],"373":[1,2,130],"374":[2,1,45],"375":[2,2,20],"376":[2,2,21],"377":[2,2,25],"378":[4,1,56],"379":[3,4,25],"380":[3,7,55],"381":[3,7,23],"382":[3,7,17],"383":[3,7,37],"384":[1,7,22],"385":[1,7,12],"386":[4,7,16],"387":[2,4,168],"388":[1,4,20],"389":[1,4,1],"390":[3,4,86],"391":[3,4,85],"392":[4,4,51],"393":[2,1,82],"394":[9,2,12],"395":[7,2,11],"396":[2,8,53],"397":[6,2,187],"398":[1,2,14],"399":[4,3,39],"400":[4,3,46],"401":[4,3,54],"402":[4,3,35],"403":[3,3,67],"404":[3,2,1],"405":[4,5,139],"406":[8,5,95],"407":[3,1,54],"408":[7,1,159],"409":[4,7,22],"410":[5,11,42],"411":[3,11,50],"412":[3,11,31],"413":[2,1,1],"414":[1,2,34],"415":[1,3,33],"416":[7,3,33],"417":[3,3,46],"418":[3,3,51],"419":[5,3,59],"420":[3,1,24],"421":[2,3,67],"422":[3,3,35],"423":[2,3,63],"424":[11,3,33],"425":[3,1,1],"426":[2,1,1],"427":[2,2,176],"428":[2,2,113],"429":[2,2,23],"430":[2,2,39],"431":[2,2,144],"432":[2,2,67],"433":[2,2,38],"434":[3,2,35],"435":[2,2,63],"436":[2,2,15],"437":[2,2,51],"438":[2,2,42],"439":[3,2,14],"440":[3,2,31],"441":[2,2,31],"442":[3,2,52],"443":[3,2,32],"444":[2,2,29],"445":[2,2,58],"446":[3,2,51],"447":[3,2,51],"448":[3,2,61],"449":[3,1,1],"450":[3,3,63],"451":[3,3,64],"452":[3,3,44],"453":[3,3,83],"454":[3,3,30],"455":[2,1,1],"456":[3,2,37],"457":[3,2,54],"458":[2,2,62],"459":[3,2,59],"460":[5,2,45],"461":[2,2,60],"462":[3,2,11],"463":[2,2,33],"464":[4,2,26],"465":[5,2,27],"466":[5,2,22],"467":[3,2,75],"468":[4,2,39],"469":[3,1,8],"470":[1,1,33],"471":[2,1,58],"472":[3,1,56],"473":[5,1,38],"474":[3,5,43],"475":[3,5,25],"476":[3,7,3],"477":[3,7,4],"478":[3,7,5],"479":[3,7,7],"480":[3,5,31],"481":[2,5,46],"482":[3,1,20],"483":[3,1,23],"484":[3,1,14],"485":[1,1,45],"486":[3,1,42],"487":[1,1,142],"488":[2,1,34],"489":[2,2,81],"490":[4,4,88],"491":[4,4,37],"492":[2,4,115],"493":[3,1,71],"494":[3,3,51],"495":[3,3,20],"496":[3,3,19],"497":[4,3,33],"498":[4,3,58],"499":[7,1,21],"500":[3,7,3],"501":[1,7,4],"502":[2,7,26],"503":[2,7,72],"504":[2,7,28],"505":[4,1,34],"506":[1,4,10],"507":[4,5,43],"508":[3,5,29],"509":[3,5,40],"510":[2,1,37],"511":[2,2,42],"512":[1,2,22],"513":[3,3,28],"514":[3,3,3],"515":[3,3,2],"516":[3,3,13],"517":[2,3,14],"518":[2,2,1],"519":[1,4,32],"520":[4,1,221],"521":[5,1,104],"522":[4,1,104],"523":[1,1,16],"524":[1,1,84],"525":[2,1,22],"526":[1,1,21],"527":[1,1,55],"528":[3,1,33],"529":[1,1,79],"530":[3,1,19],"531":[3,1,24],"532":[4,1,61],"533":[1,1,61],"534":[1,1,43],"535":[3,1,47],"536":[1,1,32],"537":[2,1,72],"538":[4,1,32],"539":[1,1,24],"540":[2,1,46],"541":[3,1,63],"542":[1,1,21],"543":[3,1,24],"544":[1,1,15],"545":[3,1,20],"546":[2,1,102],"547":[3,1,25],"548":[2,1,104],"549":[1,1,46],"550":[1,1,60],"551":[2,1,45],"552":[2,1,66],"553":[2,1,108],"554":[2,2,25],"555":[1,2,35],"556":[1,2,41],"557":[1,2,34],"558":[4,1,37],"559":[2,4,283],"560":[5,4,39],"561":[5,4,48],"562":[5,4,249],"563":[3,4,126],"564":[3,4,14],"565":[3,4,37],"566":[2,7,90],"567":[3,9,97],"568":[2,7,209],"569":[4,1,33],"570":[2,4,81],"571":[3,4,31],"572":[2,4,196],"573":[3,4,103],"574":[3,1,27],"575":[1,1,1],"576":[2,1,60],"577":[2,2,44],"578":[2,2,55],"579":[2,2,72],"580":[3,4,27],"581":[3,4,16],"582":[3,4,20],"583":[2,2,31],"584":[2,2,44],"585":[6,1,14],"586":[2,6,127],"587":[1,6,204],"588":[1,6,1],"589":[7,7,45],"590":[8,7,56],"591":[5,7,88],"592":[2,6,27],"593":[4,1,13],"594":[5,4,87],"595":[6,4,44],"596":[5,4,29],"597":[5,4,80],"598":[8,4,65],"599":[6,4,18],"600":[5,4,6],"601":[2,1,1],"602":[6,2,36],"603":[11,2,33],"604":[6,2,7],"605":[4,2,19],"606":[3,2,16],"607":[3,1,62],"608":[14,3,83],"609":[2,1,48],"610":[7,1,13],"611":[7,1,166],"612":[2,1,31],"613":[2,1,171],"614":[1,2,106],"615":[3,3,39],"616":[1,2,109],"617":[3,2,215],"618":[1,2,43],"619":[10,1,47],"620":[2,1,44],"621":[1,2,39],"622":[2,2,55],"623":[2,2,85],"624":[7,1,66],"625":[7,7,80],"626":[2,1,27],"627":[4,2,65],"628":[6,2,71],"629":[5,8,70],"630":[4,8,54],"631":[3,1,87],"632":[4,3,48],"633":[6,5,31],"634":[5,5,10],"635":[3,3,41],"636":[4,4,9],"637":[6,4,89],"638":[4,3,29],"639":[6,5,46],"640":[5,5,10],"641":[3,1,57],"642":[4,3,40],"643":[4,3,68],"644":[2,1,82],"645":[6,2,138],"646":[4,1,51],"647":[9,4,19],"648":[5,4,13],"649":[4,1,111],"650":[4,4,36],"651":[4,4,38],"652":[5,4,11],"653":[2,1,33],"654":[3,2,126],"655":[3,2,104],"656":[4,2,39],"657":[4,2,39],"658":[3,2,44],"659":[2,1,43],"660":[3,2,4],"661":[4,2,4],"662":[3,1,24],"663":[1,3,147],"664":[1,3,72],"665":[6,3,16],"666":[5,9,95],"667":[3,9,72],"668":[2,12,49],"669":[2,12,52],"670":[5,9,83],"671":[5,9,74],"672":[2,1,17],"673":[4,2,91],"674":[4,2,129],"675":[3,1,32],"676":[2,1,72],"677":[1,1,35],"678":[3,1,14],"679":[1,3,8],"680":[2,3,9],"681":[2,1,88],"682":[5,1,80],"683":[1,5,175],"684":[6,5,114],"685":[1,5,127],"686":[4,5,164],"687":[2,1,82],"688":[1,2,27],"689":[1,2,1],"690":[1,3,81],"691":[1,3,1],"692":[1,4,203],"693":[1,4,55],"694":[1,2,1],"695":[1,3,57],"696":[1,3,74],"697":[1,2,1],"698":[1,2,130],"699":[2,1,23],"700":[1,2,53],"701":[2,2,36],"702":[1,2,1],"703":[4,3,11],"704":[12,3,22],"705":[1,15,17],"706":[11,3,7],"707":[1,14,10],"708":[4,3,8],"709":[7,3,5],"710":[1,10,11],"711":[2,1,61],"712":[1,2,53],"713":[1,2,104],"714":[2,3,93],"715":[2,3,59],"716":[2,3,148],"717":[4,5,124],"718":[2,3,145],"719":[2,3,58],"720":[2,3,59],"721":[2,1,10],"722":[1,2,29],"723":[2,2,26],"724":[2,3,56],"725":[2,3,29],"726":[2,1,27],"727":[1,2,47],"728":[2,2,50],"729":[3,4,29],"730":[3,2,18],"731":[2,2,67],"732":[1,2,1],"733":[4,3,11],"734":[1,7,26],"735":[7,3,11],"736":[1,10,15],"737":[12,3,23],"738":[1,15,20],"739":[11,3,7],"740":[1,14,10],"741":[11,3,8],"742":[1,14,15],"743":[3,1,101],"744":[3,3,1],"745":[4,4,61],"746":[3,3,179],"747":[3,3,128],"748":[3,3,37],"749":[4,3,37],"750":[3,1,100],"751":[6,3,175],"752":[6,3,119],"753":[5,3,83],"754":[7,3,72],"755":[3,1,36],"756":[4,3,93],"757":[2,1,22],"758":[1,2,57],"759":[2,2,44],"760":[2,2,69],"761":[3,1,19],"762":[1,3,51],"763":[2,3,97],"764":[2,3,64],"765":[3,3,151],"766":[1,6,27],"767":[1,6,28],"768":[1,3,1],"769":[4,4,70],"770":[12,4,9],"771":[1,16,36],"772":[2,16,16],"773":[13,4,27],"774":[1,17,36],"775":[2,17,16],"776":[11,4,9],"777":[1,15,36],"778":[2,15,16],"779":[16,4,11],"780":[1,20,41],"781":[2,20,16],"782":[14,4,14],"783":[1,18,39],"784":[2,18,16],"785":[14,4,15],"786":[1,18,39],"787":[2,18,16],"788":[13,4,14],"789":[1,17,39],"790":[2,17,16],"791":[13,4,15],"792":[1,17,39],"793":[2,17,16],"794":[9,4,62],"795":[1,13,23],"796":[2,13,16],"797":[2,1,18],"798":[1,2,54],"799":[2,2,37],"800":[2,4,14],"801":[3,2,18],"802":[2,2,71],"803":[1,2,1],"804":[4,3,11],"805":[1,7,25],"806":[4,3,11],"807":[9,3,7],"808":[1,12,11],"809":[12,3,26],"810":[1,15,20],"811":[11,3,10],"812":[1,14,10],"813":[9,3,26],"814":[1,12,18],"815":[8,3,11],"816":[1,11,8],"817":[14,3,26],"818":[1,17,21],"819":[12,3,26],"820":[1,15,18],"821":[6,3,8],"822":[7,3,9],"823":[2,1,25],"824":[1,2,54],"825":[2,2,44],"826":[2,4,48],"827":[3,2,18],"828":[2,2,74],"829":[1,2,1],"830":[4,3,11],"831":[1,7,31],"832":[7,3,11],"833":[1,10,6],"834":[10,3,7],"835":[1,13,13],"836":[12,3,26],"837":[1,15,20],"838":[11,3,10],"839":[1,14,10],"840":[9,3,26],"841":[1,12,18],"842":[8,3,11],"843":[1,11,8],"844":[14,3,26],"845":[1,17,21],"846":[12,3,26],"847":[1,15,18],"848":[9,3,8],"849":[1,12,6],"850":[10,3,9],"851":[1,13,6],"852":[2,1,28],"853":[1,2,54],"854":[2,2,69],"855":[2,4,48],"856":[2,4,42],"857":[2,4,68],"858":[3,4,36],"859":[3,2,18],"860":[2,2,88],"861":[1,2,1],"862":[4,3,11],"863":[1,7,31],"864":[7,3,11],"865":[1,10,6],"866":[10,3,7],"867":[1,13,13],"868":[12,3,26],"869":[1,15,20],"870":[11,3,10],"871":[1,14,10],"872":[9,3,26],"873":[1,12,18],"874":[8,3,11],"875":[1,11,8],"876":[12,3,25],"877":[1,15,20],"878":[10,3,25],"879":[1,13,16],"880":[9,3,8],"881":[1,12,6],"882":[9,3,9],"883":[1,12,6],"884":[2,1,28],"885":[1,2,54],"886":[2,2,49],"887":[2,4,48],"888":[2,4,30],"889":[3,2,18],"890":[2,2,92],"891":[1,2,1],"892":[4,3,11],"893":[1,7,31],"894":[7,3,11],"895":[1,10,6],"896":[10,3,7],"897":[1,13,13],"898":[8,3,9],"899":[1,11,10],"900":[12,3,26],"901":[1,15,20],"902":[11,3,10],"903":[1,14,10],"904":[9,3,26],"905":[1,12,18],"906":[8,3,11],"907":[1,11,8],"908":[14,3,26],"909":[1,17,21],"910":[12,3,26],"911":[1,15,18],"912":[9,3,8],"913":[1,12,6],"914":[10,3,9],"915":[1,13,6],"916":[2,1,27],"917":[1,2,54],"918":[2,2,76],"919":[2,4,62],"920":[3,4,46],"921":[2,4,42],"922":[2,4,70],"923":[3,4,36],"924":[3,2,18],"925":[2,2,88],"926":[1,2,1],"927":[4,3,11],"928":[1,7,31],"929":[7,3,11],"930":[1,10,6],"931":[10,3,7],"932":[1,13,13],"933":[8,3,9],"934":[1,11,10],"935":[12,3,26],"936":[1,15,20],"937":[11,3,10],"938":[1,14,10],"939":[9,3,26],"940":[1,12,18],"941":[8,3,11],"942":[1,11,8],"943":[14,3,26],"944":[1,17,21],"945":[12,3,26],"946":[1,15,18],"947":[9,3,8],"948":[1,12,6],"949":[10,3,9],"950":[1,13,6],"951":[2,1,27],"952":[1,2,54],"953":[2,2,71],"954":[2,4,62],"955":[2,4,42],"956":[2,4,70],"957":[3,4,36],"958":[3,2,18],"959":[2,2,88],"960":[1,2,1],"961":[4,3,11],"962":[1,7,31],"963":[7,3,11],"964":[1,10,6],"965":[10,3,7],"966":[1,13,13],"967":[8,3,9],"968":[1,11,10],"969":[12,3,26],"970":[1,15,20],"971":[11,3,10],"972":[1,14,10],"973":[9,3,26],"974":[1,12,18],"975":[8,3,11],"976":[1,11,8],"977":[14,3,26],"978":[1,17,21],"979":[12,3,26],"980":[1,15,18],"981":[9,3,8],"982":[1,12,6],"983":[10,3,9],"984":[1,13,6],"985":[2,1,27],"986":[1,2,54],"987":[2,2,71],"988":[2,4,48],"989":[2,4,42],"990":[2,4,70],"991":[3,4,36],"992":[3,2,18],"993":[2,2,88],"994":[1,2,1],"995":[4,3,11],"996":[1,7,31],"997":[7,3,11],"998":[1,10,6],"999":[10,3,7],"1000":[1,13,13],"1001":[8,3,9],"1002":[1,11,10],"1003":[12,3,26],"1004":[1,15,20],"1005":[11,3,10],"1006":[1,14,10],"1007":[9,3,26],"1008":[1,12,18],"1009":[8,3,11],"1010":[1,11,8],"1011":[14,3,26],"1012":[1,17,21],"1013":[12,3,26],"1014":[1,15,18],"1015":[9,3,8],"1016":[1,12,6],"1017":[10,3,9],"1018":[1,13,6],"1019":[2,1,27],"1020":[1,2,54],"1021":[2,2,75],"1022":[2,4,48],"1023":[2,4,40],"1024":[2,4,70],"1025":[3,4,36],"1026":[3,2,18],"1027":[2,2,88],"1028":[1,2,1],"1029":[4,3,11],"1030":[1,7,31],"1031":[7,3,11],"1032":[1,10,6],"1033":[10,3,7],"1034":[1,13,13],"1035":[8,3,9],"1036":[1,11,10],"1037":[12,3,26],"1038":[1,15,20],"1039":[11,3,10],"1040":[1,14,10],"1041":[9,3,26],"1042":[1,12,18],"1043":[8,3,11],"1044":[1,11,8],"1045":[14,3,26],"1046":[1,17,21],"1047":[12,3,26],"1048":[1,15,18],"1049":[9,3,8],"1050":[1,12,6],"1051":[10,3,9],"1052":[1,13,6],"1053":[2,1,27],"1054":[1,2,54],"1055":[2,2,74],"1056":[2,4,48],"1057":[2,4,37],"1058":[2,4,70],"1059":[3,4,36],"1060":[3,2,18],"1061":[2,2,88],"1062":[1,2,1],"1063":[4,3,11],"1064":[1,7,31],"1065":[7,3,11],"1066":[1,10,6],"1067":[10,3,7],"1068":[1,13,13],"1069":[8,3,9],"1070":[1,11,10],"1071":[12,3,26],"1072":[1,15,20],"1073":[11,3,10],"1074":[1,14,10],"1075":[9,3,26],"1076":[1,12,18],"1077":[8,3,11],"1078":[1,11,8],"1079":[12,3,25],"1080":[1,15,20],"1081":[10,3,26],"1082":[1,13,16],"1083":[9,3,8],"1084":[1,12,6],"1085":[9,3,9],"1086":[1,12,6],"1087":[2,1,27],"1088":[1,2,54],"1089":[2,2,73],"1090":[2,4,62],"1091":[3,4,46],"1092":[2,4,72],"1093":[3,4,36],"1094":[3,2,18],"1095":[2,2,88],"1096":[1,2,1],"1097":[4,3,11],"1098":[1,7,31],"1099":[7,3,11],"1100":[1,10,6],"1101":[10,3,7],"1102":[1,13,13],"1103":[8,3,9],"1104":[1,11,10],"1105":[12,3,26],"1106":[1,15,20],"1107":[11,3,10],"1108":[1,14,10],"1109":[9,3,26],"1110":[1,12,18],"1111":[8,3,11],"1112":[1,11,8],"1113":[12,3,25],"1114":[1,15,20],"1115":[10,3,26],"1116":[1,13,16],"1117":[9,3,8],"1118":[1,12,6],"1119":[9,3,9],"1120":[1,12,6],"1121":[2,1,27],"1122":[1,2,54],"1123":[2,2,73],"1124":[2,4,62],"1125":[3,4,46],"1126":[2,4,72],"1127":[3,4,36],"1128":[3,2,18],"1129":[2,2,88],"1130":[1,2,1],"1131":[4,3,11],"1132":[1,7,31],"1133":[7,3,11],"1134":[1,10,6],"1135":[10,3,7],"1136":[1,13,13],"1137":[8,3,9],"1138":[1,11,10],"1139":[12,3,26],"1140":[1,15,20],"1141":[11,3,10],"1142":[1,14,10],"1143":[9,3,26],"1144":[1,12,18],"1145":[8,3,11],"1146":[1,11,8],"1147":[12,3,25],"1148":[1,15,20],"1149":[10,3,26],"1150":[1,13,16],"1151":[9,3,8],"1152":[1,12,6],"1153":[9,3,9],"1154":[1,12,6],"1155":[2,1,27],"1156":[1,2,54],"1157":[2,2,75],"1158":[2,4,62],"1159":[2,4,44],"1160":[2,4,72],"1161":[3,4,36],"1162":[3,2,18],"1163":[2,2,88],"1164":[1,2,1],"1165":[4,3,11],"1166":[1,7,31],"1167":[7,3,11],"1168":[1,10,12],"1169":[10,3,7],"1170":[1,13,13],"1171":[8,3,9],"1172":[1,11,10],"1173":[12,3,26],"1174":[1,15,20],"1175":[11,3,10],"1176":[1,14,10],"1177":[9,3,26],"1178":[1,12,18],"1179":[8,3,11],"1180":[1,11,8],"1181":[12,3,25],"1182":[1,15,20],"1183":[10,3,26],"1184":[1,13,16],"1185":[9,3,8],"1186":[1,12,6],"1187":[9,3,9],"1188":[1,12,6],"1189":[3,1,79],"1190":[1,3,56],"1191":[2,4,44],"1192":[1,4,61],"1193":[3,3,59],"1194":[2,6,90],"1195":[1,6,111],"1196":[3,3,62],"1197":[2,6,121],"1198":[1,6,124],"1199":[4,3,1],"1200":[3,7,99],"1201":[3,7,107],"1202":[3,7,95],"1203":[2,3,17],"1204":[1,5,75],"1205":[1,5,47],"1206":[1,3,48],"1207":[6,3,6],"1208":[3,9,35],"1209":[1,9,34],"1210":[6,9,82],"1211":[2,1,39],"1212":[1,2,53],"1213":[2,2,44],"1214":[2,4,48],"1215":[3,2,18],"1216":[2,2,86],"1217":[1,2,1],"1218":[4,3,11],"1219":[1,7,31],"1220":[7,3,11],"1221":[1,10,6],"1222":[10,3,7],"1223":[1,13,13],"1224":[8,3,9],"1225":[1,11,10],"1226":[12,3,26],"1227":[1,15,20],"1228":[11,3,10],"1229":[1,14,10],"1230":[9,3,26],"1231":[1,12,18],"1232":[8,3,11],"1233":[1,11,8],"1234":[14,3,26],"1235":[1,17,21],"1236":[12,3,26],"1237":[1,15,18],"1238":[9,3,8],"1239":[1,12,6],"1240":[10,3,9],"1241":[1,13,6],"1242":[3,1,19],"1243":[1,3,51],"1244":[2,3,69],"1245":[3,3,135],"1246":[1,3,1],"1247":[4,4,18],"1248":[12,4,5],"1249":[1,16,80],"1250":[2,16,20],"1251":[7,4,9],"1252":[1,11,8],"1253":[2,11,11],"1254":[6,4,9],"1255":[2,10,14],"1256":[10,4,9],"1257":[1,14,21],"1258":[2,14,16],"1259":[9,4,9],"1260":[1,13,22],"1261":[2,13,16],"1262":[4,4,21],"1263":[2,1,40],"1264":[1,2,46],"1265":[2,2,41],"1266":[3,2,94],"1267":[1,2,1],"1268":[7,3,18],"1269":[1,10,31],"1270":[7,3,5],"1271":[1,10,8],"1272":[6,3,5],"1273":[2,9,19],"1274":[10,3,4],"1275":[1,13,21],"1276":[9,3,4],"1277":[1,12,22],"1278":[5,3,19],"1279":[2,8,9],"1280":[2,1,68],"1281":[1,2,53],"1282":[2,2,72],"1283":[2,4,63],"1284":[2,4,78],"1285":[2,4,80],"1286":[2,2,34],"1287":[2,3,49],"1288":[2,3,43],"1289":[2,3,56],"1290":[2,3,22],"1291":[2,3,49],"1292":[3,2,34],"1293":[2,5,47],"1294":[4,7,97],"1295":[3,7,45],"1296":[2,5,84],"1297":[3,6,57],"1298":[2,6,27],"1299":[2,5,23],"1300":[2,5,109],"1301":[1,2,1],"1302":[4,3,11],"1303":[12,3,22],"1304":[1,15,17],"1305":[11,3,7],"1306":[1,14,10],"1307":[4,3,8],"1308":[8,1,74],"1309":[1,8,48],"1310":[2,1,89],"1311":[4,1,25],"1312":[5,4,77],"1313":[3,9,78],"1314":[10,9,35],"1315":[5,4,68],"1316":[4,4,88],"1317":[25,8,78],"1318":[2,1,13],"1319":[1,2,60],"1320":[2,2,9],"1321":[4,3,16],"1322":[4,3,21],"1323":[4,3,26],"1324":[5,2,52],"1325":[2,2,18],"1326":[7,4,96],"1327":[6,4,63],"1328":[11,4,46],"1329":[6,2,100],"1330":[6,2,50],"1331":[3,1,1],"1332":[4,3,25],"1333":[8,3,41],"1334":[8,3,25],"1335":[12,3,40],"1336":[7,3,22],"1337":[7,3,30],"1338":[10,3,16],"1339":[10,13,47],"1340":[9,3,132],"1341":[2,1,19],"1342":[6,2,24],"1343":[6,2,36],"1344":[10,2,40],"1345":[9,2,99],"1346":[9,2,58],"1347":[6,2,46],"1348":[5,2,67],"1349":[3,2,29],"1350":[3,2,57],"1351":[4,2,58],"1352":[10,2,5],"1353":[4,2,78],"1354":[6,2,46],"1355":[5,2,41],"1356":[8,2,43],"1357":[7,2,6],"1358":[4,2,52],"1359":[8,2,58],"1360":[2,1,1],"1361":[7,2,36],"1362":[2,2,173],"1363":[4,2,46],"1364":[9,2,33],"1365":[8,2,70],"1366":[11,2,19],"1367":[6,2,31],"1368":[3,2,47],"1369":[2,2,58],"1370":[3,2,17],"1371":[2,2,1],"1372":[6,4,10],"1373":[11,2,58],"1374":[2,1,105],"1375":[3,1,226],"1376":[1,3,20],"1377":[5,4,98],"1378":[5,4,176],"1379":[2,1,43],"1380":[1,2,2],"1381":[2,2,3],"1382":[3,2,4],"1383":[4,2,5],"1384":[2,2,3],"1385":[1,1,81],"1386":[2,1,50],"1387":[1,1,54],"1388":[3,1,100],"1389":[2,3,86],"1390":[2,3,56],"1391":[10,3,8],"1392":[1,3,72],"1393":[2,3,58],"1394":[8,3,27],"1395":[1,3,56],"1396":[3,1,53],"1397":[1,3,15],"1398":[3,3,17],"1399":[2,1,1],"1400":[2,3,31],"1401":[2,5,17],"1402":[3,3,89],"1403":[2,3,36],"1404":[2,3,89],"1405":[3,5,18],"1406":[4,1,148],"1407":[4,4,199],"1408":[3,4,9],"1409":[2,7,30],"1410":[2,7,136],"1411":[5,7,61],"1412":[4,1,113],"1413":[2,4,271],"1414":[4,4,35],"1415":[1,1,49],"1416":[4,1,201],"1417":[1,4,150],"1418":[3,1,38],"1419":[1,3,109],"1420":[2,3,48],"1421":[2,3,130],"1422":[1,1,146],"1423":[3,1,20],"1424":[5,4,43],"1425":[6,4,130],"1426":[5,4,21],"1427":[7,1,105],"1428":[3,7,54],"1429":[3,7,20],"1430":[2,8,37],"1431":[6,7,1],"1432":[1,12,64],"1433":[1,12,47],"1434":[5,1,98],"1435":[2,5,115],"1436":[3,7,77],"1437":[5,5,61],"1438":[4,5,114],"1439":[8,5,36],"1440":[1,5,14],"1441":[2,6,130],"1442":[2,6,124],"1443":[2,6,252],"1444":[1,1,73],"1445":[5,1,58],"1446":[5,5,47],"1447":[2,5,24],"1448":[2,7,79],"1449":[5,1,1],"1450":[6,5,193],"1451":[2,11,91],"1452":[4,11,129],"1453":[2,11,32],"1454":[3,11,58],"1455":[3,5,73],"1456":[4,8,30],"1457":[6,8,26],"1458":[6,8,29],"1459":[6,8,77],"1460":[7,8,21],"1461":[10,8,38],"1462":[3,8,10],"1463":[3,8,8],"1464":[5,8,11],"1465":[3,5,1],"1466":[2,8,98],"1467":[1,1,50],"1468":[3,1,59],"1469":[1,4,25],"1470":[3,1,11],"1471":[3,4,76],"1472":[2,7,49],"1473":[4,8,33],"1474":[3,4,98],"1475":[3,4,63],"1476":[1,7,39],"1477":[3,4,75],"1478":[2,1,88],"1479":[1,1,180],"1480":[2,1,129],"1481":[1,1,58],"1482":[3,1,67],"1483":[1,1,51],"1484":[2,1,165],"1485":[2,3,86],"1486":[2,3,166],"1487":[2,1,175],"1488":[2,1,3],"1489":[2,1,52],"1490":[9,1,20],"1491":[4,9,41],"1492":[5,9,101],"1493":[7,9,92],"1494":[7,9,35],"1495":[1,9,54],"1496":[3,9,48],"1497":[7,9,173],"1498":[7,9,17],"1499":[7,9,15],"1500":[7,9,14],"1501":[7,9,10],"1502":[7,9,12],"1503":[6,9,6],"1504":[4,9,79],"1505":[6,9,3],"1506":[7,9,10],"1507":[7,9,9],"1508":[7,9,25],"1509":[7,9,16],"1510":[7,9,14],"1511":[3,9,139],"1512":[2,9,139],"1513":[6,9,47],"1514":[4,9,18],"1515":[1,10,48],"1516":[1,10,94],"1517":[3,11,75],"1518":[1,1,32],"1519":[5,1,92],"1520":[5,1,60],"1521":[3,1,160],"1522":[3,4,121],"1523":[2,1,74],"1524":[1,2,20],"1525":[3,1,1],"1526":[2,4,112],"1527":[3,5,159],"1528":[2,4,73],"1529":[3,5,111],"1530":[2,4,24],"1531":[5,1,50],"1532":[1,6,213],"1533":[1,6,84],"1534":[1,1,22],"1535":[1,1,11],"1536":[1,1,16],"1537":[2,1,22],"1538":[2,1,9],"1539":[1,1,1],"1540":[7,2,4],"1541":[2,9,9],"1542":[1,1,1],"1543":[9,2,8],"1544":[1,2,12],"1545":[9,2,8],"1546":[1,2,12],"1547":[1,1,76],"1548":[1,1,32],"1549":[1,1,34],"1550":[2,1,100],"1551":[4,3,62],"1552":[3,3,91],"1553":[2,1,24],"1554":[2,3,19],"1555":[2,3,31],"1556":[2,3,37],"1557":[2,3,69],"1558":[2,1,1],"1559":[2,3,51],"1560":[2,3,51],"1561":[3,1,1],"1562":[2,4,103],"1563":[2,4,56],"1564":[2,1,84],"1565":[1,1,1],"1566":[4,2,7],"1567":[4,2,5],"1568":[4,2,5],"1569":[4,2,5],"1570":[4,2,5],"1571":[4,2,5],"1572":[6,2,5],"1573":[1,8,11],"1574":[7,2,6],"1575":[2,9,10],"1576":[6,2,6],"1577":[2,8,7],"1578":[5,2,7],"1579":[5,2,5],"1580":[5,2,5],"1581":[6,2,7],"1582":[2,8,7],"1583":[1,1,110],"1584":[2,1,119],"1585":[2,1,81],"1586":[1,1,48],"1587":[2,1,174],"1588":[6,2,137],"1589":[2,6,80],"1590":[3,2,1],"1591":[3,3,85],"1592":[2,3,51],"1593":[1,3,20],"1594":[8,3,78],"1595":[4,3,45],"1596":[1,1,104],"1597":[3,1,56],"1598":[2,1,47],"1599":[1,1,148],"1600":[1,1,49],"1601":[2,1,12],"1602":[2,3,42],"1603":[4,3,108],"1604":[2,3,48],"1605":[4,3,24],"1606":[9,3,193],"1607":[8,3,69],"1608":[2,3,38],"1609":[5,5,47],"1610":[5,5,34],"1611":[3,3,92],"1612":[3,3,98],"1613":[3,3,61],"1614":[6,6,85],"1615":[2,1,40],"1616":[2,1,157],"1617":[1,1,60],"1618":[1,1,37],"1619":[1,1,149],"1620":[2,1,63],"1621":[3,2,66],"1622":[1,2,76],"1623":[1,2,1],"1624":[11,3,28],"1625":[13,3,15],"1626":[2,1,50],"1627":[7,2,103],"1628":[8,2,85],"1629":[5,2,22],"1630":[3,6,105],"1631":[2,6,19],"1632":[3,6,25],"1633":[5,6,79],"1634":[3,6,64],"1635":[4,6,31],"1636":[4,6,31],"1637":[5,6,15],"1638":[2,6,75],"1639":[1,1,42],"1640":[1,1,12],"1641":[1,1,53],"1642":[1,1,63],"1643":[1,1,1],"1644":[3,2,6],"1645":[1,5,36],"1646":[4,2,13],"1647":[6,2,10],"1648":[6,2,10],"1649":[6,2,8],"1650":[6,2,8],"1651":[6,2,8],"1652":[6,2,8],"1653":[8,2,13],"1654":[1,10,16],"1655":[7,1,156],"1656":[1,7,123],"1657":[4,8,67],"1658":[2,8,69],"1659":[1,1,104],"1660":[2,1,84],"1661":[2,1,128],"1662":[1,1,112],"1663":[1,1,19],"1664":[2,1,96],"1665":[2,1,35],"1666":[1,2,34],"1667":[4,2,36],"1668":[1,2,17],"1669":[1,3,38],"1670":[1,2,48],"1671":[2,1,1],"1672":[5,2,77],"1673":[3,2,17],"1674":[2,2,71],"1675":[1,3,197],"1676":[1,3,23],"1677":[3,4,22],"1678":[1,6,71],"1679":[1,6,107],"1680":[3,4,210],"1681":[3,3,44],"1682":[4,3,15],"1683":[3,2,34],"1684":[3,4,73],"1685":[3,4,21],"1686":[3,4,38],"1687":[3,4,23],"1688":[3,4,32],"1689":[3,4,25],"1690":[3,1,1],"1691":[2,3,52],"1692":[1,3,12],"1693":[2,3,58],"1694":[1,3,1],"1695":[2,4,25],"1696":[3,4,90],"1697":[1,3,1],"1698":[7,4,17],"1699":[1,11,10],"1700":[4,4,10],"1701":[4,4,13],"1702":[7,4,15],"1703":[1,11,10],"1704":[4,4,5],"1705":[9,4,9],"1706":[1,13,20],"1707":[6,4,31],"1708":[1,10,7],"1709":[7,4,9],"1710":[1,11,8],"1711":[8,4,22],"1712":[1,12,13],"1713":[9,4,5],"1714":[1,13,34],"1715":[11,4,20],"1716":[1,15,36],"1717":[5,4,12],"1718":[2,9,7],"1719":[9,4,7],"1720":[1,13,18],"1721":[7,4,7],"1722":[1,11,13],"1723":[2,11,20],"1724":[6,4,24],"1725":[1,10,7],"1726":[6,4,18],"1727":[1,10,9],"1728":[8,4,13],"1729":[1,12,11],"1730":[8,4,17],"1731":[1,12,11],"1732":[2,1,58],"1733":[1,2,27],"1734":[1,2,14],"1735":[1,2,66],"1736":[2,1,99],"1737":[13,2,30],"1738":[1,2,33],"1739":[3,2,34],"1740":[7,3,40],"1741":[8,3,14],"1742":[12,3,20],"1743":[13,3,37],"1744":[2,2,42],"1745":[3,2,1],"1746":[5,5,109],"1747":[5,5,80],"1748":[2,2,1],"1749":[4,4,107],"1750":[1,2,18],"1751":[5,2,192],"1752":[5,2,76],"1753":[5,2,36],"1754":[1,11,92],"1755":[1,11,87],"1756":[3,11,135],"1757":[3,2,95],"1758":[7,2,165],"1759":[2,1,64],"1760":[6,2,46],"1761":[2,2,77],"1762":[2,2,36],"1763":[1,2,25],"1764":[6,2,61],"1765":[7,2,106],"1766":[1,1,62],"1767":[1,1,48],"1768":[1,1,73],"1769":[2,2,86],"1770":[1,2,103],"1771":[2,3,62],"1772":[1,1,41],"1773":[1,1,1],"1774":[3,2,6],"1775":[1,5,48],"1776":[4,2,5],"1777":[1,6,24],"1778":[4,2,14],"1779":[7,2,10],"1780":[1,9,13],"1781":[7,2,10],"1782":[1,9,13],"1783":[7,2,10],"1784":[1,9,7],"1785":[2,9,14],"1786":[9,2,7],"1787":[1,11,11],"1788":[8,2,7],"1789":[1,10,10],"1790":[2,1,80],"1791":[2,2,63],"1792":[3,2,63],"1793":[6,4,67],"1794":[6,4,54],"1795":[4,2,37],"1796":[4,2,32],"1797":[4,2,14],"1798":[2,5,53],"1799":[8,1,33],"1800":[1,8,18],"1801":[1,8,72],"1802":[2,8,1],"1803":[1,10,39],"1804":[3,10,94],"1805":[3,10,101],"1806":[3,10,62],"1807":[1,8,82],"1808":[1,8,11],"1809":[1,8,1],"1810":[5,9,9],"1811":[5,9,9],"1812":[8,9,13],"1813":[1,17,10],"1814":[2,17,9],"1815":[4,9,9],"1816":[4,9,5],"1817":[6,9,7],"1818":[8,9,18],"1819":[1,17,7],"1820":[2,17,11],"1821":[7,9,22],"1822":[6,9,6],"1823":[9,9,8],"1824":[1,18,8],"1825":[2,18,7],"1826":[10,9,8],"1827":[1,19,11],"1828":[2,19,7],"1829":[11,9,8],"1830":[1,20,13],"1831":[2,20,7],"1832":[12,9,8],"1833":[1,21,15],"1834":[2,21,7],"1835":[13,9,8],"1836":[1,22,17],"1837":[2,22,7],"1838":[3,1,35],"1839":[2,3,66],"1840":[2,3,173],"1841":[1,3,44],"1842":[1,3,46],"1843":[3,3,132],"1844":[4,3,157],"1845":[1,3,75],"1846":[4,3,132],"1847":[2,3,25],"1848":[1,3,1],"1849":[1,4,85],"1850":[1,3,1],"1851":[5,4,7],"1852":[6,4,14],"1853":[5,4,5],"1854":[6,4,12],"1855":[5,4,5],"1856":[6,4,12],"1857":[7,4,9],"1858":[2,11,7],"1859":[10,4,32],"1860":[1,14,16],"1861":[10,4,31],"1862":[1,14,9],"1863":[7,4,6],"1864":[1,11,8],"1865":[8,4,13],"1866":[1,12,8],"1867":[5,4,7],"1868":[6,4,13],"1869":[6,4,7],"1870":[7,4,13],"1871":[8,4,6],"1872":[2,12,8],"1873":[5,4,6],"1874":[7,4,13],"1875":[6,4,6],"1876":[7,4,13],"1877":[8,4,7],"1878":[2,12,9],"1879":[6,4,5],"1880":[7,4,12],"1881":[6,4,5],"1882":[7,4,12],"1883":[8,4,5],"1884":[1,12,11],"1885":[9,4,12],"1886":[1,13,11],"1887":[8,4,6],"1888":[2,12,9],"1889":[7,4,6],"1890":[1,11,8],"1891":[8,4,13],"1892":[1,12,8],"1893":[6,4,7],"1894":[7,4,13],"1895":[7,4,7],"1896":[8,4,13],"1897":[8,4,7],"1898":[2,12,5],"1899":[7,4,11],"1900":[8,4,9],"1901":[2,12,11],"1902":[7,4,18],"1903":[2,11,3],"1904":[7,4,18],"1905":[2,11,9],"1906":[11,4,18],"1907":[1,4,16],"1908":[2,5,3],"1909":[11,4,18],"1910":[1,4,16],"1911":[2,5,9],"1912":[1,1,1],"1913":[1,1,58],"1914":[1,2,17],"1915":[2,2,15],"1916":[2,2,15],"1917":[5,3,80],"1918":[13,3,66],"1919":[1,2,282],"1920":[1,2,50],"1921":[1,2,1],"1922":[2,3,7],"1923":[3,3,10],"1924":[2,1,31],"1925":[6,2,18],"1926":[3,7,19],"1927":[3,7,65],"1928":[3,2,97],"1929":[2,4,139],"1930":[2,4,154],"1931":[2,4,131],"1932":[2,4,78],"1933":[2,4,173],"1934":[4,4,66],"1935":[8,2,22],"1936":[2,1,1],"1937":[2,2,45],"1938":[1,2,27],"1939":[2,2,97],"1940":[2,2,135],"1941":[3,2,127],"1942":[2,2,112],"1943":[2,2,158],"1944":[2,4,14],"1945":[2,4,40],"1946":[6,2,151],"1947":[6,7,203],"1948":[2,2,280],"1949":[5,2,29],"1950":[2,1,54],"1951":[1,2,80],"1952":[1,2,56],"1953":[3,2,52],"1954":[2,2,64],"1955":[1,2,81],"1956":[1,2,107],"1957":[1,2,8],"1958":[2,1,81],"1959":[1,2,13],"1960":[1,2,42],"1961":[1,2,1],"1962":[5,3,6],"1963":[8,3,7],"1964":[1,11,13],"1965":[8,3,7],"1966":[1,11,13],"1967":[8,3,10],"1968":[1,11,13],"1969":[8,3,10],"1970":[1,11,13],"1971":[9,3,7],"1972":[1,12,13],"1973":[2,12,7],"1974":[5,3,8],"1975":[8,3,6],"1976":[2,11,7],"1977":[8,3,6],"1978":[1,11,10],"1979":[4,1,67],"1980":[6,4,26],"1981":[2,4,32],"1982":[2,6,46],"1983":[5,6,61],"1984":[5,6,59],"1985":[2,6,104],"1986":[3,6,82],"1987":[2,4,1],"1988":[4,6,88],"1989":[2,6,38],"1990":[2,6,104],"1991":[3,6,20],"1992":[5,6,23],"1993":[3,6,47],"1994":[2,6,20],"1995":[2,6,37],"1996":[2,1,72],"1997":[2,2,38],"1998":[3,4,60],"1999":[3,4,80],"2000":[2,4,210],"2001":[3,4,36],"2002":[2,7,82],"2003":[2,7,88],"2004":[2,7,18],"2005":[2,4,45],"2006":[2,6,194],"2007":[3,6,36],"2008":[3,6,68],"2009":[3,6,73],"2010":[3,4,62],"2011":[3,4,57],"2012":[2,4,79],"2013":[2,4,68],"2014":[5,4,210],"2015":[2,4,76],"2016":[2,2,168],"2017":[3,2,172],"2018":[3,2,93],"2019":[3,2,99],"2020":[5,2,84],"2021":[3,1,133],"2022":[1,3,1],"2023":[3,4,73],"2024":[4,4,71],"2025":[3,4,147],"2026":[2,3,22],"2027":[3,5,64],"2028":[3,5,55],"2029":[1,1,51],"2030":[3,1,131],"2031":[9,3,70],"2032":[4,3,70],"2033":[4,3,24],"2034":[4,7,73],"2035":[3,7,26],"2036":[11,9,20],"2037":[10,18,52],"2038":[2,3,19],"2039":[10,5,118],"2040":[7,5,69],"2041":[3,5,1],"2042":[7,6,93],"2043":[10,6,69],"2044":[8,5,89],"2045":[4,3,104],"2046":[7,3,64],"2047":[2,1,67],"2048":[1,2,12],"2049":[2,2,39],"2050":[5,2,186],"2051":[5,2,48],"2052":[2,2,134],"2053":[1,2,1],"2054":[9,3,14],"2055":[1,12,17],"2056":[9,3,5],"2057":[1,12,19],"2058":[3,1,36],"2059":[2,3,71],"2060":[2,3,174],"2061":[1,3,47],"2062":[1,3,54],"2063":[3,3,241],"2064":[5,4,119],"2065":[5,4,51],"2066":[4,3,160],"2067":[1,3,48],"2068":[1,3,75],"2069":[4,3,163],"2070":[2,3,25],"2071":[1,3,1],"2072":[1,4,97],"2073":[2,4,100],"2074":[1,6,130],"2075":[5,6,49],"2076":[1,3,1],"2077":[5,4,7],"2078":[6,4,14],"2079":[5,4,5],"2080":[6,4,12],"2081":[5,4,5],"2082":[6,4,12],"2083":[7,4,9],"2084":[2,11,7],"2085":[12,4,32],"2086":[1,16,21],"2087":[12,4,31],"2088":[1,16,13],"2089":[7,4,6],"2090":[1,11,8],"2091":[8,4,13],"2092":[1,12,8],"2093":[5,4,7],"2094":[6,4,13],"2095":[6,4,7],"2096":[7,4,13],"2097":[8,4,6],"2098":[2,12,8],"2099":[6,4,6],"2100":[7,4,13],"2101":[6,4,6],"2102":[7,4,13],"2103":[8,4,7],"2104":[2,12,9],"2105":[6,4,6],"2106":[7,4,13],"2107":[6,4,6],"2108":[7,4,13],"2109":[8,4,7],"2110":[2,12,9],"2111":[6,4,7],"2112":[7,4,14],"2113":[6,4,7],"2114":[7,4,14],"2115":[8,4,8],"2116":[2,12,9],"2117":[6,4,5],"2118":[7,4,12],"2119":[6,4,5],"2120":[7,4,12],"2121":[8,4,5],"2122":[1,12,11],"2123":[9,4,12],"2124":[1,13,11],"2125":[8,4,6],"2126":[2,12,9],"2127":[8,4,6],"2128":[1,12,8],"2129":[9,4,13],"2130":[1,13,8],"2131":[6,4,7],"2132":[7,4,13],"2133":[7,4,7],"2134":[8,4,13],"2135":[8,4,7],"2136":[2,12,5],"2137":[10,4,10],"2138":[1,4,16],"2139":[11,4,17],"2140":[1,15,16],"2141":[7,4,11],"2142":[2,11,10],"2143":[7,4,11],"2144":[8,4,9],"2145":[2,12,11],"2146":[7,4,18],"2147":[2,11,3],"2148":[7,4,18],"2149":[2,11,9],"2150":[12,4,18],"2151":[1,4,16],"2152":[2,5,3],"2153":[12,4,18],"2154":[1,4,16],"2155":[2,5,9],"2156":[2,1,73],"2157":[6,2,33],"2158":[1,2,18],"2159":[2,2,176],"2160":[3,2,108],"2161":[2,5,86],"2162":[2,5,87],"2163":[5,2,56],"2164":[3,7,62],"2165":[3,7,74],"2166":[2,7,70],"2167":[6,2,102],"2168":[7,2,90],"2169":[1,2,34],"2170":[4,2,116],"2171":[1,1,34],"2172":[2,1,34],"2173":[2,1,32],"2174":[1,1,12],"2175":[1,1,34],"2176":[1,1,35],"2177":[1,1,37],"2178":[2,1,104],"2179":[1,2,109],"2180":[2,3,37],"2181":[1,2,164],"2182":[1,2,79],"2183":[3,2,99],"2184":[4,5,73],"2185":[4,5,106],"2186":[6,5,31],"2187":[2,5,91],"2188":[2,2,72],"2189":[3,3,167],"2190":[5,3,42],"2191":[3,3,162],"2192":[6,3,37],"2193":[2,3,34],"2194":[1,2,36],"2195":[3,3,19],"2196":[4,3,1],"2197":[3,6,12],"2198":[2,6,75],"2199":[3,6,35],"2200":[4,6,25],"2201":[4,6,43],"2202":[2,6,24],"2203":[2,6,23],"2204":[1,6,17],"2205":[1,2,56],"2206":[5,2,50],"2207":[2,2,65],"2208":[2,2,52],"2209":[1,2,27],"2210":[1,3,90],"2211":[1,3,37],"2212":[2,1,52],"2213":[1,2,32],"2214":[2,2,42],"2215":[1,2,89],"2216":[2,3,31],"2217":[1,2,1],"2218":[2,3,42],"2219":[2,3,34],"2220":[1,2,1],"2221":[6,3,16],"2222":[1,9,8],"2223":[11,3,13],"2224":[1,14,22],"2225":[7,3,23],"2226":[1,10,8],"2227":[12,3,26],"2228":[1,15,22],"2229":[6,3,6],"2230":[1,9,8],"2231":[7,3,22],"2232":[1,10,14],"2233":[7,3,22],"2234":[1,10,12],"2235":[7,3,21],"2236":[1,10,11],"2237":[7,3,16],"2238":[1,10,11],"2239":[5,3,15],"2240":[4,3,18],"2241":[6,3,18],"2242":[1,1,45],"2243":[4,1,33],"2244":[1,1,25],"2245":[1,1,47],"2246":[1,1,54],"2247":[1,1,58],"2248":[6,1,43],"2249":[1,6,32],"2250":[1,6,33],"2251":[1,6,43],"2252":[1,6,124],"2253":[2,6,104],"2254":[2,1,115],"2255":[2,2,21],"2256":[2,2,19],"2257":[2,4,49],"2258":[1,5,107],"2259":[2,4,42],"2260":[2,4,70],"2261":[2,2,31],"2262":[2,4,54],"2263":[2,4,29],"2264":[3,6,58],"2265":[4,6,128],"2266":[3,6,169],"2267":[3,6,46],"2268":[2,4,178],"2269":[3,4,144],"2270":[5,4,193],"2271":[3,4,207],"2272":[4,2,54],"2273":[2,6,87],"2274":[2,2,51],"2275":[3,1,1],"2276":[2,3,35],"2277":[1,3,89],"2278":[2,3,100],"2279":[3,3,125],"2280":[2,3,77],"2281":[2,3,101],"2282":[3,3,60],"2283":[1,3,191],"2284":[3,1,79],"2285":[4,3,77],"2286":[4,3,106],"2287":[4,3,124],"2288":[2,7,123],"2289":[1,7,131],"2290":[5,7,118],"2291":[4,3,169],"2292":[2,3,12],"2293":[4,3,196],"2294":[2,3,152],"2295":[3,1,60],"2296":[1,3,70],"2297":[2,3,63],"2298":[2,3,72],"2299":[1,5,22],"2300":[13,1,1],"2301":[1,13,67],"2302":[5,13,269],"2303":[2,13,198],"2304":[1,13,1],"2305":[10,14,62],"2306":[2,14,33],"2307":[9,15,27],"2308":[12,15,75],"2309":[6,15,101],"2310":[7,15,335],"2311":[11,15,167],"2312":[12,15,233],"2313":[2,1,89],"2314":[1,2,25],"2315":[1,2,47],"2316":[1,2,38],"2317":[1,1,17],"2318":[1,1,55],"2319":[1,1,47],"2320":[2,1,67],"2321":[2,3,45],"2322":[2,1,148],"2323":[5,5,197],"2324":[2,1,246],"2325":[1,1,64],"2326":[1,1,1],"2327":[8,2,7],"2328":[2,10,7],"2329":[8,2,6],"2330":[1,10,8],"2331":[6,2,8],"2332":[7,2,8],"2333":[9,2,11],"2334":[1,11,7],"2335":[9,2,11],"2336":[1,11,7],"2337":[5,2,48],"2338":[5,2,40],"2339":[5,2,40],"2340":[8,2,18],"2341":[1,10,11],"2342":[8,2,7],"2343":[1,10,8],"2344":[7,2,16],"2345":[1,9,12],"2346":[2,9,8],"2347":[9,2,12],"2348":[1,11,10],"2349":[2,11,6],"2350":[7,2,12],"2351":[1,9,10],"2352":[4,2,5],"2353":[5,2,6],"2354":[2,7,6],"2355":[6,2,10],"2356":[2,8,7],"2357":[7,2,9],"2358":[1,9,17],"2359":[2,9,7],"2360":[6,2,9],"2361":[2,8,8],"2362":[4,2,11],"2363":[4,2,5],"2364":[4,2,10],"2365":[1,6,10],"2366":[2,1,1],"2367":[4,2,94],"2368":[4,5,89],"2369":[4,2,34],"2370":[2,2,88],"2371":[5,1,49],"2372":[1,5,137],"2373":[2,5,20],"2374":[1,5,115],"2375":[5,1,89],"2376":[2,5,129],"2377":[2,7,108],"2378":[2,7,37],"2379":[1,5,120],"2380":[2,6,57],"2381":[1,5,132],"2382":[1,5,101],"2383":[1,5,110],"2384":[2,6,183],"2385":[2,6,18],"2386":[3,5,135],"2387":[2,8,55],"2388":[1,5,115],"2389":[2,5,101],"2390":[2,5,98],"2391":[2,5,114],"2392":[2,7,29],"2393":[1,5,107],"2394":[2,6,21],"2395":[1,5,104],"2396":[2,6,21],"2397":[4,5,116],"2398":[3,1,52],"2399":[1,3,14],"2400":[1,3,141],"2401":[1,3,1],"2402":[8,4,47],"2403":[6,1,232],"2404":[1,1,34],"2405":[3,1,32],"2406":[2,4,28],"2407":[3,4,94],"2408":[2,4,54],"2409":[4,1,70],"2410":[4,1,263],"2411":[3,4,338],"2412":[8,4,45],"2413":[3,1,1],"2414":[2,3,64],"2415":[3,3,72],"2416":[3,3,129],"2417":[3,6,69],"2418":[3,3,142],"2419":[5,5,36],"2420":[1,5,183],"2421":[3,6,184],"2422":[3,6,150],"2423":[4,3,75],"2424":[7,6,127],"2425":[6,3,132],"2426":[3,3,46],"2427":[3,3,180],"2428":[2,3,96],"2429":[4,3,37],"2430":[2,1,40],"2431":[12,2,6],"2432":[3,1,43],"2433":[3,3,47],"2434":[4,3,55],"2435":[2,3,101],"2436":[3,3,41],"2437":[2,5,39],"2438":[3,5,115],"2439":[2,5,127],"2440":[2,5,128],"2441":[5,5,67],"2442":[5,5,28],"2443":[3,3,54],"2444":[2,3,40],"2445":[4,4,86],"2446":[3,3,64],"2447":[4,3,43],"2448":[3,3,34],"2449":[2,3,82],"2450":[1,3,37],"2451":[3,1,51],"2452":[2,1,1],"2453":[4,2,41],"2454":[3,2,15],"2455":[1,2,18],"2456":[1,2,35],"2457":[1,2,30],"2458":[5,2,24],"2459":[5,1,267],"2460":[8,1,30],"2461":[2,8,41],"2462":[5,8,47],"2463":[5,8,57],"2464":[7,8,35],"2465":[6,8,48],"2466":[4,8,44],"2467":[6,8,77],"2468":[6,8,54],"2469":[4,1,1],"2470":[5,4,45],"2471":[2,4,22],"2472":[3,4,27],"2473":[3,4,15],"2474":[2,4,54],"2475":[3,1,92],"2476":[1,3,76],"2477":[4,4,33],"2478":[1,7,34],"2479":[5,4,37],"2480":[1,8,40],"2481":[5,4,32],"2482":[1,8,29],"2483":[3,4,62],"2484":[1,7,10],"2485":[1,4,10],"2486":[1,5,10],"2487":[2,4,34],"2488":[1,6,13],"2489":[1,3,49],"2490":[2,3,48],"2491":[2,5,53],"2492":[1,5,111],"2493":[3,5,32],"2494":[1,5,94],"2495":[3,3,195],"2496":[3,5,142],"2497":[5,3,79],"2498":[3,3,63],"2499":[1,5,73],"2500":[1,5,32],"2501":[1,5,212],"2502":[2,1,31],"2503":[3,2,70],"2504":[2,2,28],"2505":[1,2,58],"2506":[2,2,26],"2507":[1,2,37],"2508":[1,2,50],"2509":[1,2,118],"2510":[2,2,148],"2511":[2,2,62],"2512":[2,2,34],"2513":[2,1,120],"2514":[2,1,37],"2515":[2,2,508],"2516":[2,2,56],"2517":[2,2,54],"2518":[2,2,39],"2519":[1,2,22],"2520":[1,2,37],"2521":[2,2,71],"2522":[2,2,15],"2523":[2,2,35],"2524":[2,2,20],"2525":[1,2,44],"2526":[2,2,17],"2527":[2,2,18],"2528":[2,2,80],"2529":[2,2,12],"2530":[2,2,48],"2531":[2,2,97],"2532":[1,2,284],"2533":[2,2,55],"2534":[1,2,58],"2535":[3,2,63],"2536":[3,2,31],"2537":[2,2,97],"2538":[2,2,56],"2539":[4,2,63],"2540":[3,2,69],"2541":[3,2,45],"2542":[2,2,21],"2543":[2,2,37],"2544":[2,2,43],"2545":[2,2,67],"2546":[2,1,35],"2547":[3,2,99],"2548":[3,4,104],"2549":[4,4,79],"2550":[5,2,53],"2551":[1,7,121],"2552":[3,7,100],"2553":[2,10,154],"2554":[3,10,101],"2555":[3,1,44],"2556":[4,1,41],"2557":[1,4,68],"2558":[1,4,57],"2559":[2,1,145],"2560":[1,2,162],"2561":[3,2,1],"2562":[3,4,77],"2563":[3,4,75],"2564":[5,4,49],"2565":[2,2,14],"2566":[2,1,100],"2567":[2,2,287],"2568":[1,2,159],"2569":[3,2,181],"2570":[1,2,66],"2571":[1,2,56],"2572":[3,1,113],"2573":[1,3,81],"2574":[2,3,26],"2575":[4,1,44],"2576":[7,4,83],"2577":[4,4,82],"2578":[8,4,92],"2579":[6,4,85],"2580":[3,4,91],"2581":[3,4,13],"2582":[2,1,95],"2583":[3,1,126],"2584":[4,3,56],"2585":[8,3,59],"2586":[7,3,39],"2587":[3,3,99],"2588":[8,3,69],"2589":[5,3,39],"2590":[3,3,59],"2591":[5,1,72],"2592":[1,5,61],"2593":[2,5,29],"2594":[3,7,89],"2595":[3,7,29],"2596":[4,7,29],"2597":[3,5,1],"2598":[3,8,59],"2599":[4,8,64],"2600":[5,8,111],"2601":[4,8,77],"2602":[3,8,64],"2603":[3,5,84],"2604":[3,1,16],"2605":[7,3,173],"2606":[6,3,47],"2607":[6,6,87],"2608":[3,6,69],"2609":[7,3,124],"2610":[4,3,80],"2611":[5,1,31],"2612":[2,5,79],"2613":[5,5,48],"2614":[1,8,35],"2615":[1,8,58],"2616":[1,8,15],"2617":[1,8,14],"2618":[1,8,15],"2619":[1,8,102],"2620":[1,8,57],"2621":[4,5,132],"2622":[5,5,92],"2623":[3,1,19],"2624":[7,1,1],"2625":[12,7,79],"2626":[3,1,66],"2627":[3,3,227],"2628":[7,1,70],"2629":[11,7,42],"2630":[3,7,128],"2631":[8,1,67],"2632":[4,8,124],"2633":[2,8,153],"2634":[3,8,25],"2635":[2,1,20],"2636":[2,2,25],"2637":[3,2,14],"2638":[3,2,22],"2639":[2,2,13],"2640":[3,1,1],"2641":[1,3,3],"2642":[1,3,3],"2643":[3,1,117],"2644":[1,3,160],"2645":[1,3,139],"2646":[6,1,90],"2647":[1,1,1],"2648":[2,1,24],"2649":[1,1,34],"2650":[5,1,37],"2651":[5,5,82],"2652":[2,5,77],"2653":[4,5,19],"2654":[4,1,1],"2655":[3,4,80],"2656":[3,4,82],"2657":[8,1,79],"2658":[4,1,33],"2659":[1,4,1],"2660":[1,5,104],"2661":[3,5,28],"2662":[2,6,141],"2663":[4,4,37],"2664":[1,4,86],"2665":[5,1,18],"2666":[3,5,80],"2667":[7,1,293],"2668":[4,1,96],"2669":[5,4,162],"2670":[5,4,93],"2671":[3,4,67],"2672":[4,1,56],"2673":[3,4,39],"2674":[2,6,47],"2675":[4,6,56],"2676":[2,6,65],"2677":[2,6,66],"2678":[2,4,1],"2679":[2,5,40],"2680":[3,5,37],"2681":[2,1,16],"2682":[1,2,43],"2683":[1,2,65],"2684":[2,2,165],"2685":[3,1,33],"2686":[1,3,12],"2687":[2,4,73],"2688":[2,4,57],"2689":[5,3,39],"2690":[2,8,23],"2691":[2,8,23],"2692":[2,8,15],"2693":[6,3,89],"2694":[4,3,25],"2695":[4,6,110],"2696":[3,6,54],"2697":[3,3,78],"2698":[5,3,79],"2699":[3,3,57],"2700":[4,1,115],"2701":[5,4,1],"2702":[2,7,121],"2703":[3,7,66],"2704":[11,4,84],"2705":[7,4,34],"2706":[7,4,53],"2707":[5,1,164],"2708":[2,5,38],"2709":[2,5,42],"2710":[2,7,97],"2711":[2,7,36],"2712":[2,9,48],"2713":[3,9,91],"2714":[2,7,67],"2715":[2,5,39],"2716":[2,7,16],"2717":[2,7,17],"2718":[2,1,44],"2719":[4,2,253],"2720":[2,2,101],"2721":[2,2,601],"2722":[2,2,194],"2723":[1,2,108],"2724":[2,2,102],"2725":[3,2,93],"2726":[3,1,43],"2727":[2,3,59],"2728":[4,3,81],"2729":[4,3,66],"2730":[8,3,12],"2731":[3,11,32],"2732":[6,11,54],"2733":[2,3,1],"2734":[3,5,99],"2735":[3,5,42],"2736":[3,3,1],"2737":[3,6,19],"2738":[4,6,21],"2739":[3,6,19],"2740":[4,3,42],"2741":[4,3,30],"2742":[2,3,35],"2743":[1,3,56],"2744":[2,1,91],"2745":[2,2,65],"2746":[2,1,157],"2747":[3,2,166],"2748":[4,2,240],"2749":[4,2,338],"2750":[4,2,518],"2751":[4,1,76],"2752":[2,4,31],"2753":[4,4,1],"2754":[4,5,71],"2755":[4,5,19],"2756":[4,4,13],"2757":[5,4,90],"2758":[3,1,98],"2759":[2,3,18],"2760":[3,3,130],"2761":[3,3,67],"2762":[3,3,58],"2763":[3,3,37],"2764":[3,3,27],"2765":[3,1,108],"2766":[2,3,68],"2767":[3,3,86],"2768":[3,3,70],"2769":[3,3,146],"2770":[3,3,72],"2771":[3,3,51],"2772":[3,3,42],"2773":[6,1,57],"2774":[10,1,39],"2775":[4,10,16],"2776":[7,13,51],"2777":[1,20,26],"2778":[8,13,76],"2779":[1,21,36],"2780":[5,10,82],"2781":[3,10,38],"2782":[3,10,14],"2783":[6,10,53],"2784":[3,10,60],"2785":[2,10,37],"2786":[6,1,13],"2787":[5,6,188],"2788":[4,6,190],"2789":[5,6,100],"2790":[3,6,50],"2791":[1,9,1],"2792":[3,10,40],"2793":[3,10,56],"2794":[4,1,1],"2795":[1,4,21],"2796":[1,4,18],"2797":[1,4,14],"2798":[1,4,27],"2799":[1,4,13],"2800":[1,4,23],"2801":[1,4,22],"2802":[1,4,16],"2803":[1,4,10],"2804":[1,4,14],"2805":[1,4,20],"2806":[2,4,23],"2807":[1,4,13],"2808":[1,4,7],"2809":[1,4,8],"2810":[1,4,23],"2811":[1,4,17],"2812":[2,4,22],"2813":[1,4,21],"2814":[2,4,15],"2815":[2,4,10],"2816":[1,4,19],"2817":[1,4,17],"2818":[2,4,29],"2819":[1,4,14],"2820":[1,4,21],"2821":[1,4,28],"2822":[1,4,21],"2823":[1,4,9],"2824":[1,4,21],"2825":[1,4,16],"2826":[5,4,17],"2827":[2,4,34],"2828":[1,4,28],"2829":[2,4,18],"2830":[1,4,21],"2831":[1,4,14],"2832":[1,4,18],"2833":[1,4,30],"2834":[3,4,28],"2835":[1,4,24],"2836":[2,4,23],"2837":[1,4,34],"2838":[1,4,25],"2839":[1,4,34],"2840":[2,4,24],"2841":[1,4,12],"2842":[5,4,13],"2843":[10,1,23],"2844":[3,1,101],"2845":[2,3,81],"2846":[2,3,43],"2847":[2,3,96],"2848":[1,3,35],"2849":[1,3,64],"2850":[1,3,83],"2851":[1,3,55],"2852":[2,3,19],"2853":[1,3,30],"2854":[2,3,50],"2855":[1,3,20],"2856":[2,3,34],"2857":[1,3,50],"2858":[1,3,38],"2859":[1,3,9],"2860":[1,3,36],"2861":[3,3,36],"2862":[1,3,176],"2863":[2,3,43],"2864":[2,3,165],"2865":[1,3,101],"2866":[2,3,21],"2867":[2,3,27],"2868":[2,3,38],"2869":[3,3,37],"2870":[1,3,113],"2871":[2,3,178],"2872":[1,3,50],"2873":[2,3,132],"2874":[1,3,25],"2875":[1,3,96],"2876":[1,3,51],"2877":[3,1,109],"2878":[5,3,59],"2879":[2,3,122],"2880":[2,3,160],"2881":[6,1,52],"2882":[3,6,174],"2883":[3,6,75],"2884":[2,6,51],"2885":[1,6,54],"2886":[2,6,62],"2887":[2,6,131],"2888":[2,1,71],"2889":[2,1,23],"2890":[2,2,34],"2891":[2,2,11],"2892":[2,2,21],"2893":[3,1,1],"2894":[2,3,77],"2895":[4,3,129],"2896":[8,7,80],"2897":[6,7,39],"2898":[4,1,39],"2899":[2,4,106],"2900":[1,6,87],"2901":[3,6,280],"2902":[5,4,107],"2903":[1,7,58],"2904":[4,8,31],"2905":[4,8,30],"2906":[4,8,28],"2907":[2,7,66],"2908":[2,7,198],"2909":[5,7,137],"2910":[3,4,142],"2911":[2,4,121],"2912":[5,5,76],"2913":[5,5,101],"2914":[2,4,171],"2915":[3,5,170],"2916":[3,5,89],"2917":[2,4,218],"2918":[2,6,42],"2919":[2,4,165],"2920":[11,4,84],"2921":[9,4,33],"2922":[2,1,26],"2923":[2,1,70],"2924":[2,1,67],"2925":[2,1,71],"2926":[4,1,45],"2927":[1,4,108],"2928":[3,4,76],"2929":[2,7,98],"2930":[5,9,138],"2931":[2,9,74],"2932":[3,9,85],"2933":[2,9,146],"2934":[2,1,95],"2935":[4,2,39],"2936":[3,2,78],"2937":[7,2,145],"2938":[3,2,58],"2939":[3,2,45],"2940":[3,2,53],"2941":[2,1,132],"2942":[2,1,181]},"averageFieldLength":[3.641522256201156,5.007815154604135,53.142031940197036],"storedFields":{"0":{"title":"QMK Breaking Change - 2019 Aug 30","titles":[]},"1":{"title":"Core code formatting with clang-format","titles":["QMK Breaking Change - 2019 Aug 30"]},"2":{"title":"LUFA USB descriptor cleanup","titles":["QMK Breaking Change - 2019 Aug 30"]},"3":{"title":"Migrating ACTION_LAYER_MOMENTARY() entries in fn_actions to MO() keycodes","titles":["QMK Breaking Change - 2019 Aug 30"]},"4":{"title":"Update Atreus to current code conventions","titles":["QMK Breaking Change - 2019 Aug 30"]},"5":{"title":"Backport changes to keymap language files from ZSA fork","titles":["QMK Breaking Change - 2019 Aug 30"]},"6":{"title":"Update repo to use LUFA as a git submodule","titles":["QMK Breaking Change - 2019 Aug 30"]},"7":{"title":"Migrating ACTION_BACKLIGHT_*() entries in fn_actions to BL_ keycodes","titles":["QMK Breaking Change - 2019 Aug 30"]},"8":{"title":"Remove KC_DELT alias in favor of KC_DEL","titles":["QMK Breaking Change - 2019 Aug 30"]},"9":{"title":"QMK Breaking Change - 2020 Feb 29 Changelog","titles":[]},"10":{"title":"Update ChibiOS/ChibiOS-Contrib/uGFX submodules","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"11":{"title":"Fix ChibiOS timer overflow for 16-bit SysTick devices","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"12":{"title":"Update LUFA submodule","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"13":{"title":"Encoder flip","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"14":{"title":"Adding support for BACKLIGHT_ON_STATE for hardware PWM backlight","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"15":{"title":"Migrating ACTION_LAYER_TAP_KEY() entries in fn_actions to LT() keycodes","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"16":{"title":"Moving backlight keycode handling to process_keycode/","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"17":{"title":"Refactor Planck keymaps to use Layout Macros","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"18":{"title":"GON NerD codebase refactor","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"19":{"title":"QMK Breaking Change - 2020 May 30 Changelog","titles":[]},"20":{"title":"Core Changes","titles":["QMK Breaking Change - 2020 May 30 Changelog"]},"21":{"title":"Converting V-USB usbdrv to a submodule","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"22":{"title":"Unify Tap Hold functions and documentation","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"23":{"title":"Python Required In The Build Process","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"24":{"title":"Upgrade from tinyprintf to mpaland/printf","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"25":{"title":"Fixed RGB_DISABLE_AFTER_TIMEOUT to be seconds based & small internals cleanup","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"26":{"title":"Switch to qmk forks for everything","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"27":{"title":"code cleanup regarding deprecated macro PLAY_NOTE_ARRAY by replacing it with PLAY_SONG","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"28":{"title":"fixing wrong configuration of AUDIO feature","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"29":{"title":"Keyboard Refactors","titles":["QMK Breaking Change - 2020 May 30 Changelog"]},"30":{"title":"Migrating Lily58 to use split_common","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors"]},"31":{"title":"To migrate existing Lily58 firmware:","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors","Migrating Lily58 to use split_common"]},"32":{"title":"Refactor zinc to use split_common","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors"]},"33":{"title":"Refactor of TKC1800 to use common OLED code","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors"]},"34":{"title":"To migrate existing TKC1800 firmware:","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors","Refactor of TKC1800 to use common OLED code"]},"35":{"title":"Split HHKB to ANSI and JP layouts and Add VIA support for each","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors"]},"36":{"title":"Migrating existing HHKB keymaps","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors","Split HHKB to ANSI and JP layouts and Add VIA support for each"]},"37":{"title":"Keyboard Moves","titles":["QMK Breaking Change - 2020 May 30 Changelog"]},"38":{"title":"Keycode Migration PRs","titles":["QMK Breaking Change - 2020 May 30 Changelog"]},"39":{"title":"QMK Breaking Change - 2020 Aug 29 Changelog","titles":[]},"40":{"title":"Changes Requiring User Action","titles":["QMK Breaking Change - 2020 Aug 29 Changelog"]},"41":{"title":"Relocated Keyboards","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action"]},"42":{"title":"The Key Company project consolidation (","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"43":{"title":"relocating boards by flehrad to flehrad/ folder (","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"44":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action"]},"45":{"title":"Keebio RGB wiring update (","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action","Updated Keyboard Codebases"]},"46":{"title":"Changes to Core Functionality","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action"]},"47":{"title":"Core Changes","titles":["QMK Breaking Change - 2020 Aug 29 Changelog"]},"48":{"title":"Fixes","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Core Changes"]},"49":{"title":"Additions and Enhancements","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Core Changes"]},"50":{"title":"Clean-ups and Optimizations","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Core Changes"]},"51":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Change - 2020 Aug 29 Changelog"]},"52":{"title":"QMK Breaking Change - 2020 Nov 28 Changelog","titles":[]},"53":{"title":"Changes Requiring User Action","titles":["QMK Breaking Change - 2020 Nov 28 Changelog"]},"54":{"title":"Relocated Keyboards","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action"]},"55":{"title":"Reduce Helix keyboard build variation (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"56":{"title":"Update the Speedo firmware for v3.0 (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"57":{"title":"Maartenwut/Maarten name change to evyd13/Evy (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"58":{"title":"Xelus Valor and Dawn60 Refactors (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"59":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action"]},"60":{"title":"AEboards EXT65 Refactor (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Updated Keyboard Codebases"]},"61":{"title":"Core Changes","titles":["QMK Breaking Change - 2020 Nov 28 Changelog"]},"62":{"title":"Fixes","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Core Changes"]},"63":{"title":"Additions and Enhancements","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Core Changes"]},"64":{"title":"Clean-ups and Optimizations","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Core Changes"]},"65":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Change - 2020 Nov 28 Changelog"]},"66":{"title":"QMK Breaking Changes - 2021 February 27 Changelog","titles":[]},"67":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 February 27 Changelog"]},"68":{"title":"Core Changes","titles":["QMK Breaking Changes - 2021 February 27 Changelog"]},"69":{"title":"ChibiOS Update and Config Migration","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Core Changes"]},"70":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Core Changes"]},"71":{"title":"Detailed Change List","titles":["QMK Breaking Changes - 2021 February 27 Changelog"]},"72":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"73":{"title":"Fixes","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"74":{"title":"Additions and Enhancements","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"75":{"title":"Clean-ups and Optimizations","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"76":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"77":{"title":"ChibiOS Update and Config Migration","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"78":{"title":"QMK Breaking Changes - 2021 May 29 Changelog","titles":[]},"79":{"title":"Notable Changes","titles":["QMK Breaking Changes - 2021 May 29 Changelog"]},"80":{"title":"RGB Matrix support for split common (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"81":{"title":"Teensy 3.6 support (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"82":{"title":"New command: qmk console (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"83":{"title":"Improved command: qmk config","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"84":{"title":"LED Matrix Improvements (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"85":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 May 29 Changelog"]},"86":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action"]},"87":{"title":"Bootmagic Deprecation and Refactor (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action"]},"88":{"title":"Tentative Deprecation Schedule","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action","Bootmagic Deprecation and Refactor ("]},"89":{"title":"Removal of LAYOUT_kc (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action"]},"90":{"title":"Encoder callbacks are now boolean (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action"]},"91":{"title":"Core Changes","titles":["QMK Breaking Changes - 2021 May 29 Changelog"]},"92":{"title":"Fixes","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Core Changes"]},"93":{"title":"Additions and Enhancements","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Core Changes"]},"94":{"title":"Clean-ups and Optimizations","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Core Changes"]},"95":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Core Changes"]},"96":{"title":"QMK Breaking Changes - 2021 August 28 Changelog","titles":[]},"97":{"title":"Notable Features","titles":["QMK Breaking Changes - 2021 August 28 Changelog"]},"98":{"title":"Combo processing improvements (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable Features"]},"99":{"title":"Key Overrides (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable Features"]},"100":{"title":"Digitizer support (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable Features"]},"101":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 August 28 Changelog"]},"102":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Changes Requiring User Action"]},"103":{"title":"Bootmagic Full Removal (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Changes Requiring User Action"]},"104":{"title":"Bootmagic Full Deprecation Schedule","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Changes Requiring User Action","Bootmagic Full Removal ("]},"105":{"title":"DIP switch callbacks are now boolean (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Changes Requiring User Action"]},"106":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2021 August 28 Changelog"]},"107":{"title":"Split transport improvements","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes"]},"108":{"title":"Teensy 4.x support (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes"]},"109":{"title":"Data Driven Improvements (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes"]},"110":{"title":"Tags","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes","Data Driven Improvements ("]},"111":{"title":"Dot Notation","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes","Data Driven Improvements ("]},"112":{"title":"New configuration keys","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes","Data Driven Improvements ("]},"113":{"title":"Codebase restructure and cleanup","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes"]},"114":{"title":"Full changelist","titles":["QMK Breaking Changes - 2021 August 28 Changelog"]},"115":{"title":"QMK Breaking Changes - 2021 November 27 Changelog","titles":[]},"116":{"title":"2000 keyboards!","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"117":{"title":"Notable Features","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"118":{"title":"Expanded Pointing Device support (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable Features"]},"119":{"title":"Dynamic Tapping Term (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable Features"]},"120":{"title":"Macros in JSON keymaps (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable Features"]},"121":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"122":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"123":{"title":"Squeezing space out of AVR (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"124":{"title":"Require explicit enabling of RGB Matrix modes (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"125":{"title":"OLED task refactoring (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"126":{"title":"Bootmagic Full Removal (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"127":{"title":"Bootmagic Full Deprecation Schedule: Complete!","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action","Bootmagic Full Removal ("]},"128":{"title":"Remove QWIIC_DRIVERS (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"129":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"130":{"title":"New MCU Support","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable core changes"]},"131":{"title":"EEPROM Changes","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable core changes"]},"132":{"title":"Compilation Database","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable core changes"]},"133":{"title":"Codebase restructure and cleanup","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable core changes"]},"134":{"title":"Full changelist","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"135":{"title":"QMK Breaking Changes - 2022 February 26 Changelog","titles":[]},"136":{"title":"Notable Features","titles":["QMK Breaking Changes - 2022 February 26 Changelog"]},"137":{"title":"Default USB Polling rate now 1kHz (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable Features"]},"138":{"title":"Split support for pointing devices (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable Features"]},"139":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2022 February 26 Changelog"]},"140":{"title":"Legacy macro and action_function system removed (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Changes Requiring User Action"]},"141":{"title":"Create a build error if no bootloader is specified (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Changes Requiring User Action"]},"142":{"title":"Rename AdafruitBLE to BluefruitLE (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Changes Requiring User Action"]},"143":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Changes Requiring User Action"]},"144":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2022 February 26 Changelog"]},"145":{"title":"New MCU Support","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable core changes"]},"146":{"title":"New Drivers","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable core changes"]},"147":{"title":"LED","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable core changes","New Drivers"]},"148":{"title":"GPIO","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable core changes","New Drivers"]},"149":{"title":"Full changelist","titles":["QMK Breaking Changes - 2022 February 26 Changelog"]},"150":{"title":"QMK Breaking Changes - 2022 May 28 Changelog","titles":[]},"151":{"title":"Notable Features","titles":["QMK Breaking Changes - 2022 May 28 Changelog"]},"152":{"title":"Caps Word (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Notable Features"]},"153":{"title":"Quantum Painter (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Notable Features"]},"154":{"title":"Encoder Mapping (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Notable Features"]},"155":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2022 May 28 Changelog"]},"156":{"title":"RESET => QK_BOOT (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Changes Requiring User Action"]},"157":{"title":"Sendstring keycode overhaul (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Changes Requiring User Action"]},"158":{"title":"Pillow Installation (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Changes Requiring User Action"]},"159":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Changes Requiring User Action"]},"160":{"title":"Full changelist","titles":["QMK Breaking Changes - 2022 May 28 Changelog"]},"161":{"title":"QMK Breaking Changes - 2022 August 27 Changelog","titles":[]},"162":{"title":"Notable Features","titles":["QMK Breaking Changes - 2022 August 27 Changelog"]},"163":{"title":"Add Raspberry Pi RP2040 support (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable Features"]},"164":{"title":"Allow qmk flash to use prebuilt firmware binaries (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable Features"]},"165":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2022 August 27 Changelog"]},"166":{"title":"Default layers dropped from 32 to 16 (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action"]},"167":{"title":"RESET => QK_BOOT (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action"]},"168":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action"]},"169":{"title":"Data-driven USB IDs Refactoring (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action"]},"170":{"title":"Deprecation Schedule","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action","Data-driven USB IDs Refactoring ("]},"171":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2022 August 27 Changelog"]},"172":{"title":"Board converters (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable core changes"]},"173":{"title":"Add cli command to import keyboard|keymap|kbfirmware (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable core changes"]},"174":{"title":"Generic wear-leveling for EEPROM emulation (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable core changes"]},"175":{"title":"Pointing Device Improvements (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable core changes"]},"176":{"title":"Full changelist","titles":["QMK Breaking Changes - 2022 August 27 Changelog"]},"177":{"title":"QMK Breaking Changes - 2022 November 26 Changelog","titles":[]},"178":{"title":"Notable Features","titles":["QMK Breaking Changes - 2022 November 26 Changelog"]},"179":{"title":"Autocorrect (","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Notable Features"]},"180":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2022 November 26 Changelog"]},"181":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"182":{"title":"Keycodes refactoring","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"183":{"title":"Configuration Item Refactoring","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"184":{"title":"Data-driven USB IDs Refactoring (","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"185":{"title":"LED Indicator callback refactoring (","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"186":{"title":"Unicode mode refactoring","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"187":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2022 November 26 Changelog"]},"188":{"title":"Keycodes refactoring","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Notable core changes"]},"189":{"title":"Board Converters","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Notable core changes"]},"190":{"title":"Pointing and Digitizer device updates","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Notable core changes"]},"191":{"title":"Full changelist","titles":["QMK Breaking Changes - 2022 November 26 Changelog"]},"192":{"title":"QMK Breaking Changes - 2023 February 26 Changelog","titles":[]},"193":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2023 February 26 Changelog"]},"194":{"title":"IGNORE_MOD_TAP_INTERRUPT behaviour changes (","titles":["QMK Breaking Changes - 2023 February 26 Changelog","Changes Requiring User Action"]},"195":{"title":"TAPPING_FORCE_HOLD => QUICK_TAP_TERM (","titles":["QMK Breaking Changes - 2023 February 26 Changelog","Changes Requiring User Action"]},"196":{"title":"Leader Key Rework {#leader-key-rework (","titles":["QMK Breaking Changes - 2023 February 26 Changelog","Changes Requiring User Action"]},"197":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2023 February 26 Changelog","Changes Requiring User Action"]},"198":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2023 February 26 Changelog"]},"199":{"title":"Full changelist","titles":["QMK Breaking Changes - 2023 February 26 Changelog"]},"200":{"title":"QMK Breaking Changes - 2023 May 28 Changelog","titles":[]},"201":{"title":"Notable Changes","titles":["QMK Breaking Changes - 2023 May 28 Changelog"]},"202":{"title":"Repeat last key (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable Changes"]},"203":{"title":"User callback for pre process record (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable Changes"]},"204":{"title":"Consolidate modelm (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable Changes"]},"205":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2023 May 28 Changelog"]},"206":{"title":"IGNORE_MOD_TAP_INTERRUPT behaviour changes (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Changes Requiring User Action"]},"207":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Changes Requiring User Action"]},"208":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2023 May 28 Changelog"]},"209":{"title":"Encoder functionality fallback (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable core changes"]},"210":{"title":"OLED Driver Improvements (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable core changes"]},"211":{"title":"Full changelist","titles":["QMK Breaking Changes - 2023 May 28 Changelog"]},"212":{"title":"QMK Breaking Changes - 2023 Aug 27 Changelog","titles":[]},"213":{"title":"Notable Changes","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog"]},"214":{"title":"RGB Matrix optimizations (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Notable Changes"]},"215":{"title":"Audio optimizations (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Notable Changes"]},"216":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog"]},"217":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"218":{"title":"Remove encoder in-matrix workaround code (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"219":{"title":"Unicodemap keycodes rename (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"220":{"title":"Remove old OLED API code (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"221":{"title":"Driver naming consolidation (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"222":{"title":"Full changelist","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog"]},"223":{"title":"QMK Breaking Changes - 2023 November 26 Changelog","titles":[]},"224":{"title":"Notable Features","titles":["QMK Breaking Changes - 2023 November 26 Changelog"]},"225":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2023 November 26 Changelog"]},"226":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Changes Requiring User Action"]},"227":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2023 November 26 Changelog"]},"228":{"title":"External Userspace (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"229":{"title":"Improve and Cleanup Shutdown callbacks (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"230":{"title":"OLED Force Flush (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"231":{"title":"Switch statement helpers for keycode ranges (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"232":{"title":"Quantum Painter OLED support (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"233":{"title":"RGB/LED lighting driver naming and cleanup (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"234":{"title":"Peripheral subsystem enabling (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"235":{"title":"NKRO on V-USB boards (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"236":{"title":"Full changelist","titles":["QMK Breaking Changes - 2023 November 26 Changelog"]},"237":{"title":"QMK Breaking Changes - 2024 February 25 Changelog","titles":[]},"238":{"title":"Notable Features","titles":["QMK Breaking Changes - 2024 February 25 Changelog"]},"239":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2024 February 25 Changelog"]},"240":{"title":"Windows Driver Changes (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Changes Requiring User Action"]},"241":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Changes Requiring User Action"]},"242":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2024 February 25 Changelog"]},"243":{"title":"Renaming Arduino-style GPIO pin functions (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"244":{"title":"I2C driver API Changes (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"245":{"title":"Renaming Bootmagic Lite => Bootmagic (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"246":{"title":"Threshold for automatic mouse layer activation (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"247":{"title":"DIP Switch Mapping (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"248":{"title":"Quantum Painter updates (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"249":{"title":"Full changelist","titles":["QMK Breaking Changes - 2024 February 25 Changelog"]},"250":{"title":"QMK Breaking Changes - 2024 May 26 Changelog","titles":[]},"251":{"title":"Notable Features","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"252":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"253":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action"]},"254":{"title":"Remove deprecated quantum keycodes (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action"]},"255":{"title":"P3D Spacey Layout Updates (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action"]},"256":{"title":"MechKeys ACR60 Layout Updates (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action"]},"257":{"title":"LAYOUT_hhkb","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action","MechKeys ACR60 Layout Updates ("]},"258":{"title":"LAYOUT_true_hhkb","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action","MechKeys ACR60 Layout Updates ("]},"259":{"title":"LAYOUT_directional","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action","MechKeys ACR60 Layout Updates ("]},"260":{"title":"LAYOUT_mitchsplit","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action","MechKeys ACR60 Layout Updates ("]},"261":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"262":{"title":"Introduction of keyboard.json (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Notable core changes"]},"263":{"title":"Refactor ChibiOS USB endpoints to be fully async (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Notable core changes"]},"264":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"265":{"title":"Migration of VIA keymaps to VIA team control","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Deprecation Notices"]},"266":{"title":"Full changelist","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"267":{"title":"QMK Breaking Changes - 2024 August 25 Changelog","titles":[]},"268":{"title":"Notable Features","titles":["QMK Breaking Changes - 2024 August 25 Changelog"]},"269":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2024 August 25 Changelog"]},"270":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Changes Requiring User Action"]},"271":{"title":"SparkFun Pro Micro RP2040 converter renamed (","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Changes Requiring User Action"]},"272":{"title":"Key Override keymap.c signature change (","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Changes Requiring User Action"]},"273":{"title":"ADNS9800 and PMW33xx firmware upload now opt-in (","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Changes Requiring User Action"]},"274":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2024 August 25 Changelog"]},"275":{"title":"Migration of VIA keymaps to VIA team control","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Deprecation Notices"]},"276":{"title":"ADNS9800 and PMW33xx sensor firmware ROM removal","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Deprecation Notices"]},"277":{"title":"Full changelist","titles":["QMK Breaking Changes - 2024 August 25 Changelog"]},"278":{"title":"QMK Breaking Changes - 2024 November 24 Changelog","titles":[]},"279":{"title":"Notable Features","titles":["QMK Breaking Changes - 2024 November 24 Changelog"]},"280":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2024 November 24 Changelog"]},"281":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2024 November 24 Changelog","Changes Requiring User Action"]},"282":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2024 November 24 Changelog"]},"283":{"title":"RGB Keycode Overhaul (","titles":["QMK Breaking Changes - 2024 November 24 Changelog","Deprecation Notices"]},"284":{"title":"ADNS9800 and PMW33xx sensor firmware ROM removal (","titles":["QMK Breaking Changes - 2024 November 24 Changelog","Deprecation Notices"]},"285":{"title":"Full changelist","titles":["QMK Breaking Changes - 2024 November 24 Changelog"]},"286":{"title":"QMK Breaking Changes - 2025 February 23 Changelog","titles":[]},"287":{"title":"Notable Features","titles":["QMK Breaking Changes - 2025 February 23 Changelog"]},"288":{"title":"Community Modules (","titles":["QMK Breaking Changes - 2025 February 23 Changelog","Notable Features"]},"289":{"title":"Chordal Hold (","titles":["QMK Breaking Changes - 2025 February 23 Changelog","Notable Features"]},"290":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2025 February 23 Changelog"]},"291":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2025 February 23 Changelog","Changes Requiring User Action"]},"292":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2025 February 23 Changelog"]},"293":{"title":"DEFAULT_FOLDER removal (","titles":["QMK Breaking Changes - 2025 February 23 Changelog","Deprecation Notices"]},"294":{"title":"Full changelist","titles":["QMK Breaking Changes - 2025 February 23 Changelog"]},"295":{"title":"QMK Breaking Changes - 2025 May 25 Changelog","titles":[]},"296":{"title":"Notable Features","titles":["QMK Breaking Changes - 2025 May 25 Changelog"]},"297":{"title":"Flow Tap (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Notable Features"]},"298":{"title":"Community Modules 1.1.1 (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Notable Features"]},"299":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2025 May 25 Changelog"]},"300":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Changes Requiring User Action"]},"301":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2025 May 25 Changelog"]},"302":{"title":"Deprecation of qmk generate-compilation-database (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"303":{"title":"Deprecation of usb.force_nkro/FORCE_NKRO (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"304":{"title":"CTPC/CONVERT_TO_PROTON_C removal (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"305":{"title":"DEFAULT_FOLDER removal (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"306":{"title":"Converter Pin Compatible updates (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"307":{"title":"Deprecation of encoder_update_{kb|user}","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"308":{"title":"Full changelist","titles":["QMK Breaking Changes - 2025 May 25 Changelog"]},"309":{"title":"QMK Breaking Changes - 2025 Aug 31 Changelog","titles":[]},"310":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog"]},"311":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Changes Requiring User Action"]},"312":{"title":"Mitigate VIA keylogger security issues","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Changes Requiring User Action"]},"313":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog"]},"314":{"title":"DEFAULT_FOLDER removal (","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Deprecation Notices"]},"315":{"title":"Converter Pin Compatible updates (","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Deprecation Notices"]},"316":{"title":"Removal of deprecated RGB and Mouse keycodes (","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Deprecation Notices"]},"317":{"title":"Full changelist","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog"]},"318":{"title":"QMK Breaking Changes - 2025 Nov 30 Changelog","titles":[]},"319":{"title":"Notable Features","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog"]},"320":{"title":"Speculative Hold option for mod-taps: hold mods instantly while unsettled","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Notable Features"]},"321":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog"]},"322":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Changes Requiring User Action"]},"323":{"title":"Reduce tap dance memory usage, move state out of data","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Changes Requiring User Action"]},"324":{"title":"Before:","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Changes Requiring User Action"]},"325":{"title":"After:","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Changes Requiring User Action"]},"326":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog"]},"327":{"title":"Remove override of QK_{LED,RGB}_MATRIX_TOGGLE keycode","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Deprecation Notices"]},"328":{"title":"Full changelist","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog"]},"329":{"title":"QMK Breaking Changes - 2026 Feb 22 Changelog","titles":[]},"330":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2026 Feb 22 Changelog"]},"331":{"title":"Removal of deprecated GPIO defines (","titles":["QMK Breaking Changes - 2026 Feb 22 Changelog","Deprecation Notices"]},"332":{"title":"Removal of deprecated isLeftHand (","titles":["QMK Breaking Changes - 2026 Feb 22 Changelog","Deprecation Notices"]},"333":{"title":"Full changelist","titles":["QMK Breaking Changes - 2026 Feb 22 Changelog"]},"334":{"title":"Documentation Capabilities","titles":[]},"335":{"title":"Overall capabilities","titles":["Documentation Capabilities"]},"336":{"title":"Dividing lines","titles":["Documentation Capabilities","Overall capabilities"]},"337":{"title":"Images","titles":["Documentation Capabilities","Overall capabilities"]},"338":{"title":"Lists","titles":["Documentation Capabilities","Overall capabilities"]},"339":{"title":"Emoji","titles":["Documentation Capabilities","Overall capabilities"]},"340":{"title":"Direct:","titles":["Documentation Capabilities","Overall capabilities","Emoji"]},"341":{"title":"As colon-name-colon:","titles":["Documentation Capabilities","Overall capabilities","Emoji"]},"342":{"title":"XML Entities","titles":["Documentation Capabilities","Overall capabilities"]},"343":{"title":"Styling","titles":["Documentation Capabilities"]},"344":{"title":"CSS-ish","titles":["Documentation Capabilities","Styling"]},"345":{"title":"Tables","titles":["Documentation Capabilities","Styling"]},"346":{"title":"Indented sections","titles":["Documentation Capabilities","Styling"]},"347":{"title":"Keyboard keys","titles":["Documentation Capabilities","Styling"]},"348":{"title":"Code Blocks","titles":["Documentation Capabilities","Styling"]},"349":{"title":"Sub/Superscript","titles":["Documentation Capabilities","Styling"]},"350":{"title":"Tabs","titles":["Documentation Capabilities","Styling"]},"351":{"title":"** Tab one **","titles":["Documentation Capabilities","Styling","Tabs"]},"352":{"title":"** Nested one **","titles":["Documentation Capabilities","Styling","Tabs","** Tab one **"]},"353":{"title":"** Nested two **","titles":["Documentation Capabilities","Styling","Tabs","** Tab one **"]},"354":{"title":"** Tab two **","titles":["Documentation Capabilities","Styling","Tabs"]},"355":{"title":"** Tab three **","titles":["Documentation Capabilities","Styling","Tabs"]},"356":{"title":"Details sections","titles":["Documentation Capabilities"]},"357":{"title":"Embed","titles":["Documentation Capabilities"]},"358":{"title":"Development Environment Setup","titles":[]},"359":{"title":"QMK Compiler Development Guide","titles":[]},"360":{"title":"Overview","titles":[]},"361":{"title":"Workers","titles":[]},"362":{"title":"API Service","titles":[]},"363":{"title":"@app.route('/v1/compile', methods=['POST'])","titles":["API Service"]},"364":{"title":"@app.route('/v1/compile/<string:job_id>', methods=['GET'])","titles":["API Service"]},"365":{"title":"@app.route('/v1/compile/<string:job_id>/download', methods=['GET'])","titles":["API Service"]},"366":{"title":"@app.route('/v1/compile/<string:job_id>/source', methods=['GET'])","titles":["API Service"]},"367":{"title":"QMK API","titles":[]},"368":{"title":"Overview","titles":["QMK API"]},"369":{"title":"Example JSON Payload:","titles":["QMK API","Overview"]},"370":{"title":"Submitting a Compile Job","titles":["QMK API"]},"371":{"title":"Checking The Status","titles":["QMK API"]},"372":{"title":"Examining Finished Results","titles":["QMK API"]},"373":{"title":"Constants","titles":["QMK API"]},"374":{"title":"QMK API","titles":[]},"375":{"title":"App Developers","titles":["QMK API"]},"376":{"title":"Keyboard Maintainers","titles":["QMK API"]},"377":{"title":"Backend Developers","titles":["QMK API"]},"378":{"title":"ARM Debugging using Eclipse","titles":[]},"379":{"title":"Installing the software","titles":["ARM Debugging using Eclipse"]},"380":{"title":"The xPack Manager","titles":["ARM Debugging using Eclipse","Installing the software"]},"381":{"title":"The ARM Toolchain","titles":["ARM Debugging using Eclipse","Installing the software"]},"382":{"title":"Windows build tools","titles":["ARM Debugging using Eclipse","Installing the software"]},"383":{"title":"Programmer/Debugger Drivers","titles":["ARM Debugging using Eclipse","Installing the software"]},"384":{"title":"OpenOCD","titles":["ARM Debugging using Eclipse","Installing the software"]},"385":{"title":"Java","titles":["ARM Debugging using Eclipse","Installing the software"]},"386":{"title":"GNU MCU Eclipse IDE","titles":["ARM Debugging using Eclipse","Installing the software"]},"387":{"title":"Configuring Eclipse","titles":["ARM Debugging using Eclipse"]},"388":{"title":"Building","titles":["ARM Debugging using Eclipse"]},"389":{"title":"Debugging","titles":["ARM Debugging using Eclipse"]},"390":{"title":"Connecting the Debugger","titles":["ARM Debugging using Eclipse","Debugging"]},"391":{"title":"Configuring the Debugger","titles":["ARM Debugging using Eclipse","Debugging"]},"392":{"title":"Running the Debugger.","titles":["ARM Debugging using Eclipse","Debugging"]},"393":{"title":"Breaking Changes","titles":[]},"394":{"title":"What has been included in past Breaking Changes?","titles":["Breaking Changes"]},"395":{"title":"When is the next Breaking Change?","titles":["Breaking Changes"]},"396":{"title":"Important Dates","titles":["Breaking Changes","When is the next Breaking Change?"]},"397":{"title":"What changes will be included?","titles":["Breaking Changes"]},"398":{"title":"Checklists","titles":["Breaking Changes"]},"399":{"title":"4 Weeks Before Merge","titles":["Breaking Changes","Checklists"]},"400":{"title":"2 Weeks Before Merge","titles":["Breaking Changes","Checklists"]},"401":{"title":"1 Week Before Merge","titles":["Breaking Changes","Checklists"]},"402":{"title":"2 Days Before Merge","titles":["Breaking Changes","Checklists"]},"403":{"title":"Day Of Merge","titles":["Breaking Changes","Checklists"]},"404":{"title":"Post-merge operations","titles":["Breaking Changes"]},"405":{"title":"Updating the develop branch","titles":["Breaking Changes","Post-merge operations"]},"406":{"title":"Set up Discord events for the next cycle","titles":["Breaking Changes","Post-merge operations"]},"407":{"title":"Past Breaking Changes","titles":[]},"408":{"title":"Breaking Changes: My Pull Request Was Flagged","titles":[]},"409":{"title":"What Do I Do?","titles":["Breaking Changes: My Pull Request Was Flagged"]},"410":{"title":"Consider Splitting Up Your PR","titles":["Breaking Changes: My Pull Request Was Flagged","What Do I Do?"]},"411":{"title":"Document Your Changes","titles":["Breaking Changes: My Pull Request Was Flagged","What Do I Do?"]},"412":{"title":"Ask for Help","titles":["Breaking Changes: My Pull Request Was Flagged","What Do I Do?"]},"413":{"title":"QMK CLI","titles":[]},"414":{"title":"Overview","titles":["QMK CLI"]},"415":{"title":"Requirements","titles":["QMK CLI","Overview"]},"416":{"title":"Install Using Homebrew (macOS, some Linux)","titles":["QMK CLI","Overview"]},"417":{"title":"Install Using uv","titles":["QMK CLI","Overview"]},"418":{"title":"Install Using pip","titles":["QMK CLI","Overview"]},"419":{"title":"Packaging For Other Operating Systems","titles":["QMK CLI","Overview"]},"420":{"title":"ChibiOS Upgrade Procedure","titles":[]},"421":{"title":"Getting ChibiOS","titles":["ChibiOS Upgrade Procedure"]},"422":{"title":"Getting ChibiOS-Contrib","titles":["ChibiOS Upgrade Procedure"]},"423":{"title":"Updating submodules","titles":["ChibiOS Upgrade Procedure"]},"424":{"title":"When merging a PR containing an upgrade of ChibiOS/ChibiOS-Contrib:","titles":["ChibiOS Upgrade Procedure"]},"425":{"title":"QMK CLI Commands","titles":[]},"426":{"title":"User Commands","titles":[]},"427":{"title":"qmk compile","titles":["User Commands"]},"428":{"title":"qmk flash","titles":["User Commands"]},"429":{"title":"qmk config","titles":["User Commands"]},"430":{"title":"qmk cd","titles":["User Commands"]},"431":{"title":"qmk find","titles":["User Commands"]},"432":{"title":"qmk console","titles":["User Commands"]},"433":{"title":"qmk doctor","titles":["User Commands"]},"434":{"title":"qmk format-json","titles":["User Commands"]},"435":{"title":"qmk info","titles":["User Commands"]},"436":{"title":"qmk json2c","titles":["User Commands"]},"437":{"title":"qmk c2json","titles":["User Commands"]},"438":{"title":"qmk lint","titles":["User Commands"]},"439":{"title":"qmk list-keyboards","titles":["User Commands"]},"440":{"title":"qmk list-keymaps","titles":["User Commands"]},"441":{"title":"qmk migrate","titles":["User Commands"]},"442":{"title":"qmk new-keyboard","titles":["User Commands"]},"443":{"title":"qmk new-keymap","titles":["User Commands"]},"444":{"title":"qmk clean","titles":["User Commands"]},"445":{"title":"qmk via2json","titles":["User Commands"]},"446":{"title":"qmk import-keyboard","titles":["User Commands"]},"447":{"title":"qmk import-keymap","titles":["User Commands"]},"448":{"title":"qmk import-kbfirmware","titles":["User Commands"]},"449":{"title":"External Userspace Commands","titles":[]},"450":{"title":"qmk userspace-add","titles":["External Userspace Commands"]},"451":{"title":"qmk userspace-remove","titles":["External Userspace Commands"]},"452":{"title":"qmk userspace-list","titles":["External Userspace Commands"]},"453":{"title":"qmk userspace-compile","titles":["External Userspace Commands"]},"454":{"title":"qmk userspace-doctor","titles":["External Userspace Commands"]},"455":{"title":"Developer Commands","titles":[]},"456":{"title":"qmk format-text","titles":["Developer Commands"]},"457":{"title":"qmk format-c","titles":["Developer Commands"]},"458":{"title":"qmk docs","titles":["Developer Commands"]},"459":{"title":"qmk generate-docs","titles":["Developer Commands"]},"460":{"title":"qmk generate-rgb-breathe-table","titles":["Developer Commands"]},"461":{"title":"qmk kle2json","titles":["Developer Commands"]},"462":{"title":"qmk format-python","titles":["Developer Commands"]},"463":{"title":"qmk pytest","titles":["Developer Commands"]},"464":{"title":"qmk painter-convert-graphics","titles":["Developer Commands"]},"465":{"title":"qmk painter-make-font-image","titles":["Developer Commands"]},"466":{"title":"qmk painter-convert-font-image","titles":["Developer Commands"]},"467":{"title":"qmk test-c","titles":["Developer Commands"]},"468":{"title":"qmk generate-compilation-database","titles":["Developer Commands"]},"469":{"title":"QMK CLI Configuration","titles":[]},"470":{"title":"Introduction","titles":[]},"471":{"title":"Simple Example","titles":["Introduction"]},"472":{"title":"Setting User Defaults","titles":["Introduction"]},"473":{"title":"CLI Documentation (qmk config)","titles":[]},"474":{"title":"Setting Configuration Values","titles":["CLI Documentation (qmk config)"]},"475":{"title":"Reading Configuration Values","titles":["CLI Documentation (qmk config)"]},"476":{"title":"Entire Configuration Example","titles":["CLI Documentation (qmk config)","Reading Configuration Values"]},"477":{"title":"Whole Section Example","titles":["CLI Documentation (qmk config)","Reading Configuration Values"]},"478":{"title":"Single Key Example","titles":["CLI Documentation (qmk config)","Reading Configuration Values"]},"479":{"title":"Multiple Keys Example","titles":["CLI Documentation (qmk config)","Reading Configuration Values"]},"480":{"title":"Deleting Configuration Values","titles":["CLI Documentation (qmk config)"]},"481":{"title":"Multiple Operations","titles":["CLI Documentation (qmk config)"]},"482":{"title":"User Configuration Options","titles":[]},"483":{"title":"All Configuration Options","titles":[]},"484":{"title":"QMK CLI Development","titles":[]},"485":{"title":"Overview","titles":[]},"486":{"title":"Developer mode:","titles":["Overview"]},"487":{"title":"Subcommands","titles":[]},"488":{"title":"User Interaction","titles":[]},"489":{"title":"Printing Text","titles":["User Interaction"]},"490":{"title":"Logging (cli.log)","titles":["User Interaction","Printing Text"]},"491":{"title":"Printing (cli.echo)","titles":["User Interaction","Printing Text"]},"492":{"title":"Colorizing Text","titles":["User Interaction","Printing Text"]},"493":{"title":"Arguments and Configuration","titles":[]},"494":{"title":"Reading Configuration Values","titles":["Arguments and Configuration"]},"495":{"title":"Setting Configuration Values","titles":["Arguments and Configuration"]},"496":{"title":"Deleting Configuration Values","titles":["Arguments and Configuration"]},"497":{"title":"Writing The Configuration File","titles":["Arguments and Configuration"]},"498":{"title":"Excluding Arguments From Configuration","titles":["Arguments and Configuration"]},"499":{"title":"Testing, and Linting, and Formatting (oh my!)","titles":[]},"500":{"title":"Testing and Linting","titles":["Testing, and Linting, and Formatting (oh my!)"]},"501":{"title":"Formatting","titles":["Testing, and Linting, and Formatting (oh my!)"]},"502":{"title":"Formatting Details","titles":["Testing, and Linting, and Formatting (oh my!)"]},"503":{"title":"Testing Details","titles":["Testing, and Linting, and Formatting (oh my!)"]},"504":{"title":"Linting Details","titles":["Testing, and Linting, and Formatting (oh my!)"]},"505":{"title":"Tab Completion for QMK","titles":[]},"506":{"title":"Setup","titles":["Tab Completion for QMK"]},"507":{"title":"For Your User Only","titles":["Tab Completion for QMK","Setup"]},"508":{"title":"System Wide Symlink","titles":["Tab Completion for QMK","Setup"]},"509":{"title":"System Wide Copy","titles":["Tab Completion for QMK","Setup"]},"510":{"title":"Compatible Microcontrollers","titles":[]},"511":{"title":"Atmel AVR","titles":["Compatible Microcontrollers"]},"512":{"title":"ARM","titles":["Compatible Microcontrollers"]},"513":{"title":"STMicroelectronics (STM32)","titles":["Compatible Microcontrollers","ARM"]},"514":{"title":"WestBerryTech (WB32)","titles":["Compatible Microcontrollers","ARM"]},"515":{"title":"Artery (AT32)","titles":["Compatible Microcontrollers","ARM"]},"516":{"title":"NXP (Kinetis)","titles":["Compatible Microcontrollers","ARM"]},"517":{"title":"Raspberry Pi","titles":["Compatible Microcontrollers","ARM"]},"518":{"title":"RISC-V","titles":["Compatible Microcontrollers"]},"519":{"title":"GigaDevice","titles":["Compatible Microcontrollers","RISC-V"]},"520":{"title":"Coding Conventions (C)","titles":[]},"521":{"title":"Auto-formatting with clang-format","titles":[]},"522":{"title":"Coding Conventions (Python)","titles":[]},"523":{"title":"YAPF","titles":[]},"524":{"title":"Imports","titles":[]},"525":{"title":"Import Examples","titles":["Imports"]},"526":{"title":"Statements","titles":[]},"527":{"title":"Naming","titles":[]},"528":{"title":"Names to Avoid","titles":["Naming"]},"529":{"title":"Docstrings","titles":[]},"530":{"title":"Simple docstring example","titles":["Docstrings"]},"531":{"title":"Complex docstring example","titles":["Docstrings"]},"532":{"title":"Function arguments docstring example","titles":["Docstrings"]},"533":{"title":"Exceptions","titles":[]},"534":{"title":"Tuples","titles":[]},"535":{"title":"Lists and Dictionaries","titles":[]},"536":{"title":"Parentheses","titles":[]},"537":{"title":"Format Strings","titles":[]},"538":{"title":"Comprehensions & Generator Expressions","titles":[]},"539":{"title":"Lambdas","titles":[]},"540":{"title":"Conditional Expressions","titles":[]},"541":{"title":"Default Argument Values","titles":[]},"542":{"title":"Properties","titles":[]},"543":{"title":"True/False Evaluations","titles":[]},"544":{"title":"Decorators","titles":[]},"545":{"title":"Threading and Multiprocessing","titles":[]},"546":{"title":"Power Features","titles":[]},"547":{"title":"Type Annotated Code","titles":[]},"548":{"title":"Function length","titles":[]},"549":{"title":"FIXMEs","titles":[]},"550":{"title":"Testing","titles":[]},"551":{"title":"Integration Tests","titles":["Testing"]},"552":{"title":"Unit Tests","titles":["Testing"]},"553":{"title":"Configuring QMK","titles":[]},"554":{"title":"QMK Default","titles":["Configuring QMK"]},"555":{"title":"Keyboard","titles":["Configuring QMK"]},"556":{"title":"Folders","titles":["Configuring QMK"]},"557":{"title":"Keymap","titles":["Configuring QMK"]},"558":{"title":"The config.h File","titles":[]},"559":{"title":"Hardware Options","titles":["The config.h File"]},"560":{"title":"Features That Can Be Disabled","titles":["The config.h File"]},"561":{"title":"Features That Can Be Enabled","titles":["The config.h File"]},"562":{"title":"Behaviors That Can Be Configured","titles":["The config.h File"]},"563":{"title":"RGB Light Configuration","titles":["The config.h File"]},"564":{"title":"Mouse Key Options","titles":["The config.h File"]},"565":{"title":"Split Keyboard Options","titles":["The config.h File"]},"566":{"title":"Setting Handedness","titles":["The config.h File","Split Keyboard Options"]},"567":{"title":"Defines for handedness","titles":["The config.h File","Split Keyboard Options","Setting Handedness"]},"568":{"title":"Other Options","titles":["The config.h File","Split Keyboard Options"]},"569":{"title":"The rules.mk File","titles":[]},"570":{"title":"Build Options","titles":["The rules.mk File"]},"571":{"title":"AVR MCU Options","titles":["The rules.mk File"]},"572":{"title":"Feature Options","titles":["The rules.mk File"]},"573":{"title":"USB Endpoint Limitations","titles":["The rules.mk File"]},"574":{"title":"QMK Configurator Architecture","titles":[]},"575":{"title":"Overview","titles":[]},"576":{"title":"Detailed Description","titles":[]},"577":{"title":"Configurator Frontend","titles":["Detailed Description"]},"578":{"title":"Keyboard Metadata","titles":["Detailed Description"]},"579":{"title":"QMK API","titles":["Detailed Description"]},"580":{"title":"Compile Job Queued","titles":["Detailed Description","QMK API"]},"581":{"title":"Compile Job Running","titles":["Detailed Description","QMK API"]},"582":{"title":"Compile Job Finished","titles":["Detailed Description","QMK API"]},"583":{"title":"Redis/RQ","titles":["Detailed Description"]},"584":{"title":"QMK Compiler","titles":["Detailed Description"]},"585":{"title":"Adding Default Keymaps to QMK Configurator","titles":[]},"586":{"title":"Technical Information","titles":["Adding Default Keymaps to QMK Configurator"]},"587":{"title":"Example","titles":["Adding Default Keymaps to QMK Configurator"]},"588":{"title":"Caveats","titles":["Adding Default Keymaps to QMK Configurator"]},"589":{"title":"Layers can only be referenced by number","titles":["Adding Default Keymaps to QMK Configurator","Caveats"]},"590":{"title":"No support for custom code of any kind","titles":["Adding Default Keymaps to QMK Configurator","Caveats"]},"591":{"title":"Limited Support for Custom keycodes","titles":["Adding Default Keymaps to QMK Configurator","Caveats"]},"592":{"title":"Additional Reading","titles":["Adding Default Keymaps to QMK Configurator"]},"593":{"title":"QMK Configurator: Step by Step","titles":[]},"594":{"title":"Step 1: Select Your Keyboard","titles":["QMK Configurator: Step by Step"]},"595":{"title":"Step 2: Select Your Keyboard Layout","titles":["QMK Configurator: Step by Step"]},"596":{"title":"Step 3: Name Your Keymap","titles":["QMK Configurator: Step by Step"]},"597":{"title":"Step 4: Define Your Keymap","titles":["QMK Configurator: Step by Step"]},"598":{"title":"Step 5: Save Your Keymap for Future Changes","titles":["QMK Configurator: Step by Step"]},"599":{"title":"Step 6: Compile Your Firmware File","titles":["QMK Configurator: Step by Step"]},"600":{"title":"Next steps: Flashing Your Keyboard","titles":["QMK Configurator: Step by Step"]},"601":{"title":"Configurator Troubleshooting","titles":[]},"602":{"title":"My .json file is not working","titles":["Configurator Troubleshooting"]},"603":{"title":"There are extra spaces in my layout? What do I do?","titles":["Configurator Troubleshooting"]},"604":{"title":"What is the keycode for...","titles":["Configurator Troubleshooting"]},"605":{"title":"It won't compile","titles":["Configurator Troubleshooting"]},"606":{"title":"Problems and Bugs","titles":["Configurator Troubleshooting"]},"607":{"title":"How to Contribute","titles":[]},"608":{"title":"I Don't Want to Read This Whole Thing! I Just Have a Question!","titles":["How to Contribute"]},"609":{"title":"Project Overview","titles":[]},"610":{"title":"Where Can I Go for Help?","titles":[]},"611":{"title":"How Do I Make a Contribution?","titles":[]},"612":{"title":"Coding Conventions","titles":[]},"613":{"title":"General Guidelines","titles":[]},"614":{"title":"Documentation","titles":["General Guidelines"]},"615":{"title":"Previewing the Documentation","titles":["General Guidelines","Documentation"]},"616":{"title":"Keyboards","titles":["General Guidelines"]},"617":{"title":"Quantum/TMK Core","titles":["General Guidelines"]},"618":{"title":"Refactoring","titles":["General Guidelines"]},"619":{"title":"What Does the Code of Conduct Mean for Me?","titles":[]},"620":{"title":"Custom Matrix","titles":[]},"621":{"title":"Prerequisites","titles":["Custom Matrix"]},"622":{"title":"'lite'","titles":["Custom Matrix"]},"623":{"title":"Full Replacement","titles":["Custom Matrix"]},"624":{"title":"How to Customize Your Keyboard's Behavior","titles":[]},"625":{"title":"A Word on Core vs Keyboards vs Keymap","titles":["How to Customize Your Keyboard's Behavior"]},"626":{"title":"Custom Keycodes","titles":[]},"627":{"title":"Defining a New Keycode","titles":["Custom Keycodes"]},"628":{"title":"Programming the Behavior of Any Keycode","titles":["Custom Keycodes"]},"629":{"title":"Example process_record_user() Implementation","titles":["Custom Keycodes","Programming the Behavior of Any Keycode"]},"630":{"title":"process_record_* Function Documentation","titles":["Custom Keycodes","Programming the Behavior of Any Keycode"]},"631":{"title":"Keyboard Initialization Code","titles":[]},"632":{"title":"Keyboard Pre Initialization code","titles":["Keyboard Initialization Code"]},"633":{"title":"Example keyboard_pre_init_user() Implementation","titles":["Keyboard Initialization Code","Keyboard Pre Initialization code"]},"634":{"title":"keyboard_pre_init_* Function Documentation","titles":["Keyboard Initialization Code","Keyboard Pre Initialization code"]},"635":{"title":"Matrix Initialization Code","titles":["Keyboard Initialization Code"]},"636":{"title":"matrix_init_* Function Documentation","titles":["Keyboard Initialization Code","Matrix Initialization Code"]},"637":{"title":"Low-level Matrix Overrides Function Documentation","titles":["Keyboard Initialization Code","Matrix Initialization Code"]},"638":{"title":"Keyboard Post Initialization code","titles":["Keyboard Initialization Code"]},"639":{"title":"Example keyboard_post_init_user() Implementation","titles":["Keyboard Initialization Code","Keyboard Post Initialization code"]},"640":{"title":"keyboard_post_init_* Function Documentation","titles":["Keyboard Initialization Code","Keyboard Post Initialization code"]},"641":{"title":"Matrix Scanning Code","titles":[]},"642":{"title":"Example matrix_scan_* Implementation","titles":["Matrix Scanning Code"]},"643":{"title":"matrix_scan_* Function Documentation","titles":["Matrix Scanning Code"]},"644":{"title":"Keyboard housekeeping","titles":[]},"645":{"title":"Example void housekeeping_task_user(void) implementation","titles":["Keyboard housekeeping"]},"646":{"title":"Keyboard Idling/Wake Code","titles":[]},"647":{"title":"Example suspend_power_down_user() and suspend_wakeup_init_user() Implementation","titles":["Keyboard Idling/Wake Code"]},"648":{"title":"Keyboard suspend/wake Function Documentation","titles":["Keyboard Idling/Wake Code"]},"649":{"title":"Keyboard Shutdown/Reboot Code","titles":[]},"650":{"title":"Example shutdown_kb() Implementation","titles":["Keyboard Shutdown/Reboot Code"]},"651":{"title":"Example shutdown_user() Implementation","titles":["Keyboard Shutdown/Reboot Code"]},"652":{"title":"Keyboard shutdown/reboot Function Documentation","titles":["Keyboard Shutdown/Reboot Code"]},"653":{"title":"Deferred Execution","titles":[]},"654":{"title":"Deferred executor callbacks","titles":["Deferred Execution"]},"655":{"title":"Deferred executor registration","titles":["Deferred Execution"]},"656":{"title":"Extending a deferred execution","titles":["Deferred Execution"]},"657":{"title":"Cancelling a deferred execution","titles":["Deferred Execution"]},"658":{"title":"Deferred callback limits","titles":["Deferred Execution"]},"659":{"title":"Advanced topics","titles":[]},"660":{"title":"Layer Change Code","titles":["Advanced topics"]},"661":{"title":"Persistent Configuration (EEPROM)","titles":["Advanced topics"]},"662":{"title":"Data Driven Configuration","titles":[]},"663":{"title":"History","titles":["Data Driven Configuration"]},"664":{"title":"Overview","titles":["Data Driven Configuration"]},"665":{"title":"Adding an option to info.json","titles":["Data Driven Configuration"]},"666":{"title":"Add it to the schema","titles":["Data Driven Configuration","Adding an option to info.json"]},"667":{"title":"Add a mapping","titles":["Data Driven Configuration","Adding an option to info.json"]},"668":{"title":"Info Key","titles":["Data Driven Configuration","Adding an option to info.json","Add a mapping"]},"669":{"title":"Value Types","titles":["Data Driven Configuration","Adding an option to info.json","Add a mapping"]},"670":{"title":"Add code to extract it","titles":["Data Driven Configuration","Adding an option to info.json"]},"671":{"title":"Add code to generate it","titles":["Data Driven Configuration","Adding an option to info.json"]},"672":{"title":"Documentation Templates","titles":[]},"673":{"title":"Keymap readme.md Template","titles":["Documentation Templates"]},"674":{"title":"Keyboard readme.md Template","titles":["Documentation Templates"]},"675":{"title":"Documentation Best Practices","titles":[]},"676":{"title":"Page Opening","titles":[]},"677":{"title":"Headings","titles":[]},"678":{"title":"Styled Hint Blocks","titles":[]},"679":{"title":"Important","titles":["Styled Hint Blocks"]},"680":{"title":"General Tips","titles":["Styled Hint Blocks"]},"681":{"title":"Documenting Features","titles":[]},"682":{"title":"Bootloader Driver Installation with Zadig","titles":[]},"683":{"title":"Installation","titles":["Bootloader Driver Installation with Zadig"]},"684":{"title":"Recovering from Installation to Wrong Device","titles":["Bootloader Driver Installation with Zadig"]},"685":{"title":"Uninstallation","titles":["Bootloader Driver Installation with Zadig"]},"686":{"title":"List of Known Bootloaders","titles":["Bootloader Driver Installation with Zadig"]},"687":{"title":"ADC Driver","titles":[]},"688":{"title":"Usage","titles":["ADC Driver"]},"689":{"title":"Channels","titles":["ADC Driver"]},"690":{"title":"AVR","titles":["ADC Driver","Channels"]},"691":{"title":"ARM","titles":["ADC Driver","Channels"]},"692":{"title":"STM32","titles":["ADC Driver","Channels","ARM"]},"693":{"title":"RP2040","titles":["ADC Driver","Channels","ARM"]},"694":{"title":"Functions","titles":["ADC Driver"]},"695":{"title":"AVR","titles":["ADC Driver","Functions"]},"696":{"title":"ARM","titles":["ADC Driver","Functions"]},"697":{"title":"Configuration","titles":["ADC Driver"]},"698":{"title":"ARM","titles":["ADC Driver"]},"699":{"title":"APA102 Driver","titles":[]},"700":{"title":"Usage","titles":["APA102 Driver"]},"701":{"title":"Basic Configuration","titles":["APA102 Driver"]},"702":{"title":"API","titles":["APA102 Driver"]},"703":{"title":"void apa102_init(void)","titles":["APA102 Driver","API"]},"704":{"title":"void apa102_set_color(uint16_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["APA102 Driver","API"]},"705":{"title":"Arguments","titles":["APA102 Driver","API","void apa102_set_color(uint16_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"706":{"title":"void apa102_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["APA102 Driver","API"]},"707":{"title":"Arguments","titles":["APA102 Driver","API","void apa102_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"708":{"title":"void apa102_flush(void)","titles":["APA102 Driver","API"]},"709":{"title":"void apa102_set_brightness(uint8_t brightness)","titles":["APA102 Driver","API"]},"710":{"title":"Arguments","titles":["APA102 Driver","API","void apa102_set_brightness(uint8_t brightness)"]},"711":{"title":"Audio Driver","titles":[]},"712":{"title":"AVR","titles":["Audio Driver"]},"713":{"title":"ARM","titles":["Audio Driver"]},"714":{"title":"DAC basic","titles":["Audio Driver","ARM"]},"715":{"title":"DAC additive","titles":["Audio Driver","ARM"]},"716":{"title":"DAC Config","titles":["Audio Driver","ARM"]},"717":{"title":"Notes on buffer size","titles":["Audio Driver","ARM","DAC Config"]},"718":{"title":"PWM hardware","titles":["Audio Driver","ARM"]},"719":{"title":"PWM software","titles":["Audio Driver","ARM"]},"720":{"title":"Testing Notes","titles":["Audio Driver","ARM"]},"721":{"title":"Battery Driver","titles":[]},"722":{"title":"Usage","titles":["Battery Driver"]},"723":{"title":"Driver Configuration","titles":["Battery Driver"]},"724":{"title":"ADC Driver","titles":["Battery Driver","Driver Configuration"]},"725":{"title":"Custom Driver","titles":["Battery Driver","Driver Configuration"]},"726":{"title":"AW20216S Driver","titles":[]},"727":{"title":"Usage","titles":["AW20216S Driver"]},"728":{"title":"Basic Configuration","titles":["AW20216S Driver"]},"729":{"title":"Global Current Control","titles":["AW20216S Driver","Basic Configuration"]},"730":{"title":"ARM/ChibiOS Configuration","titles":["AW20216S Driver"]},"731":{"title":"LED Mapping","titles":["AW20216S Driver"]},"732":{"title":"API","titles":["AW20216S Driver"]},"733":{"title":"struct aw20216s_led_t","titles":["AW20216S Driver","API"]},"734":{"title":"Members","titles":["AW20216S Driver","API","struct aw20216s_led_t"]},"735":{"title":"void aw20216s_init(pin_t cs_pin)","titles":["AW20216S Driver","API"]},"736":{"title":"Arguments","titles":["AW20216S Driver","API","void aw20216s_init(pin_t cs_pin)"]},"737":{"title":"void aw20216s_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["AW20216S Driver","API"]},"738":{"title":"Arguments","titles":["AW20216S Driver","API","void aw20216s_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"739":{"title":"void aw20216s_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["AW20216S Driver","API"]},"740":{"title":"Arguments","titles":["AW20216S Driver","API","void aw20216s_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"741":{"title":"void aw20216s_update_pwm_buffers(pin_t cs_pin, uint8_t index)","titles":["AW20216S Driver","API"]},"742":{"title":"Arguments","titles":["AW20216S Driver","API","void aw20216s_update_pwm_buffers(pin_t cs_pin, uint8_t index)"]},"743":{"title":"EEPROM Driver Configuration","titles":[]},"744":{"title":"Vendor Driver Configuration","titles":["EEPROM Driver Configuration"]},"745":{"title":"STM32 L0/L1 Configuration","titles":["EEPROM Driver Configuration","Vendor Driver Configuration"]},"746":{"title":"I2C Driver Configuration","titles":["EEPROM Driver Configuration"]},"747":{"title":"SPI Driver Configuration","titles":["EEPROM Driver Configuration"]},"748":{"title":"Transient Driver configuration","titles":["EEPROM Driver Configuration"]},"749":{"title":"Wear-leveling Driver Configuration","titles":["EEPROM Driver Configuration"]},"750":{"title":"Wear-leveling Configuration","titles":[]},"751":{"title":"Wear-leveling Embedded Flash Driver Configuration","titles":["Wear-leveling Configuration"]},"752":{"title":"Wear-leveling SPI Flash Driver Configuration","titles":["Wear-leveling Configuration"]},"753":{"title":"Wear-leveling RP2040 Driver Configuration","titles":["Wear-leveling Configuration"]},"754":{"title":"Wear-leveling Legacy EEPROM Emulation Driver Configuration","titles":["Wear-leveling Configuration"]},"755":{"title":"FLASH Driver Configuration","titles":[]},"756":{"title":"SPI FLASH Driver Configuration","titles":["FLASH Driver Configuration"]},"757":{"title":"GPIO Control","titles":[]},"758":{"title":"Macros","titles":["GPIO Control"]},"759":{"title":"Advanced Settings","titles":["GPIO Control"]},"760":{"title":"Atomic Operation","titles":["GPIO Control"]},"761":{"title":"I2C Master Driver","titles":[]},"762":{"title":"Usage","titles":["I2C Master Driver"]},"763":{"title":"I2C Addressing","titles":["I2C Master Driver"]},"764":{"title":"AVR Configuration","titles":["I2C Master Driver"]},"765":{"title":"ChibiOS/ARM Configuration","titles":["I2C Master Driver"]},"766":{"title":"I2Cv1","titles":["I2C Master Driver","ChibiOS/ARM Configuration"]},"767":{"title":"I2Cv2","titles":["I2C Master Driver","ChibiOS/ARM Configuration"]},"768":{"title":"API","titles":["I2C Master Driver"]},"769":{"title":"void i2c_init(void)","titles":["I2C Master Driver","API"]},"770":{"title":"i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"771":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"772":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"773":{"title":"i2c_status_t i2c_transmit_P(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"774":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit_P(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"775":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit_P(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"776":{"title":"i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"777":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)"]},"778":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)"]},"779":{"title":"i2c_status_t i2c_transmit_and_receive(uint8_t address, const uint8_t* tx_data, uint16_t tx_length, uint8_t* rx_data, uint16_t rx_length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"780":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit_and_receive(uint8_t address, const uint8_t* tx_data, uint16_t tx_length, uint8_t* rx_data, uint16_t rx_length, uint16_t timeout)"]},"781":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit_and_receive(uint8_t address, const uint8_t* tx_data, uint16_t tx_length, uint8_t* rx_data, uint16_t rx_length, uint16_t timeout)"]},"782":{"title":"i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"783":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"784":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"785":{"title":"i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"786":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"787":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"788":{"title":"i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"789":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)"]},"790":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)"]},"791":{"title":"i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"792":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)"]},"793":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)"]},"794":{"title":"i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)","titles":["I2C Master Driver","API"]},"795":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)"]},"796":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)"]},"797":{"title":"IS31FL3218 Driver","titles":[]},"798":{"title":"Usage","titles":["IS31FL3218 Driver"]},"799":{"title":"Basic Configuration","titles":["IS31FL3218 Driver"]},"800":{"title":"I²C Addressing","titles":["IS31FL3218 Driver","Basic Configuration"]},"801":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3218 Driver"]},"802":{"title":"LED Mapping","titles":["IS31FL3218 Driver"]},"803":{"title":"API","titles":["IS31FL3218 Driver"]},"804":{"title":"struct is31fl3218_led_t","titles":["IS31FL3218 Driver","API"]},"805":{"title":"Members","titles":["IS31FL3218 Driver","API","struct is31fl3218_led_t"]},"806":{"title":"void is31fl3218_init(void)","titles":["IS31FL3218 Driver","API"]},"807":{"title":"void is31fl3218_write_register(uint8_t reg, uint8_t data)","titles":["IS31FL3218 Driver","API"]},"808":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_write_register(uint8_t reg, uint8_t data)"]},"809":{"title":"void is31fl3218_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3218 Driver","API"]},"810":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"811":{"title":"void is31fl3218_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3218 Driver","API"]},"812":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"813":{"title":"void is31fl3218_set_value(int index, uint8_t value)","titles":["IS31FL3218 Driver","API"]},"814":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_value(int index, uint8_t value)"]},"815":{"title":"void is31fl3218_set_value_all(uint8_t value)","titles":["IS31FL3218 Driver","API"]},"816":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_value_all(uint8_t value)"]},"817":{"title":"void is31fl3218_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3218 Driver","API"]},"818":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"819":{"title":"void is31fl3218_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3218 Driver","API"]},"820":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_led_control_register(uint8_t index, bool value)"]},"821":{"title":"void is31fl3218_update_pwm_buffers(void)","titles":["IS31FL3218 Driver","API"]},"822":{"title":"void is31fl3218_update_led_control_registers(void)","titles":["IS31FL3218 Driver","API"]},"823":{"title":"IS31FL3236 Driver","titles":[]},"824":{"title":"Usage","titles":["IS31FL3236 Driver"]},"825":{"title":"Basic Configuration","titles":["IS31FL3236 Driver"]},"826":{"title":"I²C Addressing","titles":["IS31FL3236 Driver","Basic Configuration"]},"827":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3236 Driver"]},"828":{"title":"LED Mapping","titles":["IS31FL3236 Driver"]},"829":{"title":"API","titles":["IS31FL3236 Driver"]},"830":{"title":"struct is31fl3236_led_t","titles":["IS31FL3236 Driver","API"]},"831":{"title":"Members","titles":["IS31FL3236 Driver","API","struct is31fl3236_led_t"]},"832":{"title":"void is31fl3236_init(uint8_t index)","titles":["IS31FL3236 Driver","API"]},"833":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_init(uint8_t index)"]},"834":{"title":"void is31fl3236_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3236 Driver","API"]},"835":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"836":{"title":"void is31fl3236_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3236 Driver","API"]},"837":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"838":{"title":"void is31fl3236_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3236 Driver","API"]},"839":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"840":{"title":"void is31fl3236_set_value(int index, uint8_t value)","titles":["IS31FL3236 Driver","API"]},"841":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_value(int index, uint8_t value)"]},"842":{"title":"void is31fl3236_set_value_all(uint8_t value)","titles":["IS31FL3236 Driver","API"]},"843":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_value_all(uint8_t value)"]},"844":{"title":"void is31fl3236_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3236 Driver","API"]},"845":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"846":{"title":"void is31fl3236_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3236 Driver","API"]},"847":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_led_control_register(uint8_t index, bool value)"]},"848":{"title":"void is31fl3236_update_pwm_buffers(uint8_t index)","titles":["IS31FL3236 Driver","API"]},"849":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_update_pwm_buffers(uint8_t index)"]},"850":{"title":"void is31fl3236_update_led_control_registers(uint8_t index)","titles":["IS31FL3236 Driver","API"]},"851":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_update_led_control_registers(uint8_t index)"]},"852":{"title":"IS31FL3729 Driver","titles":[]},"853":{"title":"Usage","titles":["IS31FL3729 Driver"]},"854":{"title":"Basic Configuration","titles":["IS31FL3729 Driver"]},"855":{"title":"I²C Addressing","titles":["IS31FL3729 Driver","Basic Configuration"]},"856":{"title":"PWM Frequency","titles":["IS31FL3729 Driver","Basic Configuration"]},"857":{"title":"De-Ghosting","titles":["IS31FL3729 Driver","Basic Configuration"]},"858":{"title":"Global Current Control","titles":["IS31FL3729 Driver","Basic Configuration"]},"859":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3729 Driver"]},"860":{"title":"LED Mapping","titles":["IS31FL3729 Driver"]},"861":{"title":"API","titles":["IS31FL3729 Driver"]},"862":{"title":"struct is31fl3729_led_t","titles":["IS31FL3729 Driver","API"]},"863":{"title":"Members","titles":["IS31FL3729 Driver","API","struct is31fl3729_led_t"]},"864":{"title":"void is31fl3729_init(uint8_t index)","titles":["IS31FL3729 Driver","API"]},"865":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_init(uint8_t index)"]},"866":{"title":"void is31fl3729_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3729 Driver","API"]},"867":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"868":{"title":"void is31fl3729_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3729 Driver","API"]},"869":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"870":{"title":"void is31fl3729_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3729 Driver","API"]},"871":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"872":{"title":"void is31fl3729_set_value(int index, uint8_t value)","titles":["IS31FL3729 Driver","API"]},"873":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_value(int index, uint8_t value)"]},"874":{"title":"void is31fl3729_set_value_all(uint8_t value)","titles":["IS31FL3729 Driver","API"]},"875":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_value_all(uint8_t value)"]},"876":{"title":"void is31fl3729_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3729 Driver","API"]},"877":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"878":{"title":"void is31fl3729_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3729 Driver","API"]},"879":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_scaling_register(uint8_t index, uint8_t value)"]},"880":{"title":"void is31fl3729_update_pwm_buffers(uint8_t index)","titles":["IS31FL3729 Driver","API"]},"881":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_update_pwm_buffers(uint8_t index)"]},"882":{"title":"void is31fl3729_update_scaling_registers(uint8_t index)","titles":["IS31FL3729 Driver","API"]},"883":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_update_scaling_registers(uint8_t index)"]},"884":{"title":"IS31FL3731 Driver","titles":[]},"885":{"title":"Usage","titles":["IS31FL3731 Driver"]},"886":{"title":"Basic Configuration","titles":["IS31FL3731 Driver"]},"887":{"title":"I²C Addressing","titles":["IS31FL3731 Driver","Basic Configuration"]},"888":{"title":"De-Ghosting","titles":["IS31FL3731 Driver","Basic Configuration"]},"889":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3731 Driver"]},"890":{"title":"LED Mapping","titles":["IS31FL3731 Driver"]},"891":{"title":"API","titles":["IS31FL3731 Driver"]},"892":{"title":"struct is31fl3731_led_t","titles":["IS31FL3731 Driver","API"]},"893":{"title":"Members","titles":["IS31FL3731 Driver","API","struct is31fl3731_led_t"]},"894":{"title":"void is31fl3731_init(uint8_t index)","titles":["IS31FL3731 Driver","API"]},"895":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_init(uint8_t index)"]},"896":{"title":"void is31fl3731_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3731 Driver","API"]},"897":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"898":{"title":"void is31fl3731_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3731 Driver","API"]},"899":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_select_page(uint8_t index, uint8_t page)"]},"900":{"title":"void is31fl3731_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3731 Driver","API"]},"901":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"902":{"title":"void is31fl3731_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3731 Driver","API"]},"903":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"904":{"title":"void is31fl3731_set_value(int index, uint8_t value)","titles":["IS31FL3731 Driver","API"]},"905":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_value(int index, uint8_t value)"]},"906":{"title":"void is31fl3731_set_value_all(uint8_t value)","titles":["IS31FL3731 Driver","API"]},"907":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_value_all(uint8_t value)"]},"908":{"title":"void is31fl3731_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3731 Driver","API"]},"909":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"910":{"title":"void is31fl3731_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3731 Driver","API"]},"911":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_led_control_register(uint8_t index, bool value)"]},"912":{"title":"void is31fl3731_update_pwm_buffers(uint8_t index)","titles":["IS31FL3731 Driver","API"]},"913":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_update_pwm_buffers(uint8_t index)"]},"914":{"title":"void is31fl3731_update_led_control_registers(uint8_t index)","titles":["IS31FL3731 Driver","API"]},"915":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_update_led_control_registers(uint8_t index)"]},"916":{"title":"IS31FL3733 Driver","titles":[]},"917":{"title":"Usage","titles":["IS31FL3733 Driver"]},"918":{"title":"Basic Configuration","titles":["IS31FL3733 Driver"]},"919":{"title":"I²C Addressing","titles":["IS31FL3733 Driver","Basic Configuration"]},"920":{"title":"Multi-Driver Synchronization","titles":["IS31FL3733 Driver","Basic Configuration"]},"921":{"title":"PWM Frequency","titles":["IS31FL3733 Driver","Basic Configuration"]},"922":{"title":"De-Ghosting","titles":["IS31FL3733 Driver","Basic Configuration"]},"923":{"title":"Global Current Control","titles":["IS31FL3733 Driver","Basic Configuration"]},"924":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3733 Driver"]},"925":{"title":"LED Mapping","titles":["IS31FL3733 Driver"]},"926":{"title":"API","titles":["IS31FL3733 Driver"]},"927":{"title":"struct is31fl3733_led_t","titles":["IS31FL3733 Driver","API"]},"928":{"title":"Members","titles":["IS31FL3733 Driver","API","struct is31fl3733_led_t"]},"929":{"title":"void is31fl3733_init(uint8_t index)","titles":["IS31FL3733 Driver","API"]},"930":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_init(uint8_t index)"]},"931":{"title":"void is31fl3733_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3733 Driver","API"]},"932":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"933":{"title":"void is31fl3733_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3733 Driver","API"]},"934":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_select_page(uint8_t index, uint8_t page)"]},"935":{"title":"void is31fl3733_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3733 Driver","API"]},"936":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"937":{"title":"void is31fl3733_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3733 Driver","API"]},"938":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"939":{"title":"void is31fl3733_set_value(int index, uint8_t value)","titles":["IS31FL3733 Driver","API"]},"940":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_value(int index, uint8_t value)"]},"941":{"title":"void is31fl3733_set_value_all(uint8_t value)","titles":["IS31FL3733 Driver","API"]},"942":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_value_all(uint8_t value)"]},"943":{"title":"void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3733 Driver","API"]},"944":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"945":{"title":"void is31fl3733_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3733 Driver","API"]},"946":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_led_control_register(uint8_t index, bool value)"]},"947":{"title":"void is31fl3733_update_pwm_buffers(uint8_t index)","titles":["IS31FL3733 Driver","API"]},"948":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_update_pwm_buffers(uint8_t index)"]},"949":{"title":"void is31fl3733_update_led_control_registers(uint8_t index)","titles":["IS31FL3733 Driver","API"]},"950":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_update_led_control_registers(uint8_t index)"]},"951":{"title":"IS31FL3736 Driver","titles":[]},"952":{"title":"Usage","titles":["IS31FL3736 Driver"]},"953":{"title":"Basic Configuration","titles":["IS31FL3736 Driver"]},"954":{"title":"I²C Addressing","titles":["IS31FL3736 Driver","Basic Configuration"]},"955":{"title":"PWM Frequency","titles":["IS31FL3736 Driver","Basic Configuration"]},"956":{"title":"De-Ghosting","titles":["IS31FL3736 Driver","Basic Configuration"]},"957":{"title":"Global Current Control","titles":["IS31FL3736 Driver","Basic Configuration"]},"958":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3736 Driver"]},"959":{"title":"LED Mapping","titles":["IS31FL3736 Driver"]},"960":{"title":"API","titles":["IS31FL3736 Driver"]},"961":{"title":"struct is31fl3736_led_t","titles":["IS31FL3736 Driver","API"]},"962":{"title":"Members","titles":["IS31FL3736 Driver","API","struct is31fl3736_led_t"]},"963":{"title":"void is31fl3736_init(uint8_t index)","titles":["IS31FL3736 Driver","API"]},"964":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_init(uint8_t index)"]},"965":{"title":"void is31fl3736_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3736 Driver","API"]},"966":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"967":{"title":"void is31fl3736_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3736 Driver","API"]},"968":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_select_page(uint8_t index, uint8_t page)"]},"969":{"title":"void is31fl3736_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3736 Driver","API"]},"970":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"971":{"title":"void is31fl3736_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3736 Driver","API"]},"972":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"973":{"title":"void is31fl3736_set_value(int index, uint8_t value)","titles":["IS31FL3736 Driver","API"]},"974":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_value(int index, uint8_t value)"]},"975":{"title":"void is31fl3736_set_value_all(uint8_t value)","titles":["IS31FL3736 Driver","API"]},"976":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_value_all(uint8_t value)"]},"977":{"title":"void is31fl3736_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3736 Driver","API"]},"978":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"979":{"title":"void is31fl3736_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3736 Driver","API"]},"980":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_led_control_register(uint8_t index, bool value)"]},"981":{"title":"void is31fl3736_update_pwm_buffers(uint8_t index)","titles":["IS31FL3736 Driver","API"]},"982":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_update_pwm_buffers(uint8_t index)"]},"983":{"title":"void is31fl3736_update_led_control_registers(uint8_t index)","titles":["IS31FL3736 Driver","API"]},"984":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_update_led_control_registers(uint8_t index)"]},"985":{"title":"IS31FL3737 Driver","titles":[]},"986":{"title":"Usage","titles":["IS31FL3737 Driver"]},"987":{"title":"Basic Configuration","titles":["IS31FL3737 Driver"]},"988":{"title":"I²C Addressing","titles":["IS31FL3737 Driver","Basic Configuration"]},"989":{"title":"PWM Frequency","titles":["IS31FL3737 Driver","Basic Configuration"]},"990":{"title":"De-Ghosting","titles":["IS31FL3737 Driver","Basic Configuration"]},"991":{"title":"Global Current Control","titles":["IS31FL3737 Driver","Basic Configuration"]},"992":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3737 Driver"]},"993":{"title":"LED Mapping","titles":["IS31FL3737 Driver"]},"994":{"title":"API","titles":["IS31FL3737 Driver"]},"995":{"title":"struct is31fl3737_led_t","titles":["IS31FL3737 Driver","API"]},"996":{"title":"Members","titles":["IS31FL3737 Driver","API","struct is31fl3737_led_t"]},"997":{"title":"void is31fl3737_init(uint8_t index)","titles":["IS31FL3737 Driver","API"]},"998":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_init(uint8_t index)"]},"999":{"title":"void is31fl3737_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3737 Driver","API"]},"1000":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1001":{"title":"void is31fl3737_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3737 Driver","API"]},"1002":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_select_page(uint8_t index, uint8_t page)"]},"1003":{"title":"void is31fl3737_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3737 Driver","API"]},"1004":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1005":{"title":"void is31fl3737_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3737 Driver","API"]},"1006":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1007":{"title":"void is31fl3737_set_value(int index, uint8_t value)","titles":["IS31FL3737 Driver","API"]},"1008":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_value(int index, uint8_t value)"]},"1009":{"title":"void is31fl3737_set_value_all(uint8_t value)","titles":["IS31FL3737 Driver","API"]},"1010":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_value_all(uint8_t value)"]},"1011":{"title":"void is31fl3737_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3737 Driver","API"]},"1012":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"1013":{"title":"void is31fl3737_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3737 Driver","API"]},"1014":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_led_control_register(uint8_t index, bool value)"]},"1015":{"title":"void is31fl3737_update_pwm_buffers(uint8_t index)","titles":["IS31FL3737 Driver","API"]},"1016":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_update_pwm_buffers(uint8_t index)"]},"1017":{"title":"void is31fl3737_update_led_control_registers(uint8_t index)","titles":["IS31FL3737 Driver","API"]},"1018":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_update_led_control_registers(uint8_t index)"]},"1019":{"title":"IS31FL3741 Driver","titles":[]},"1020":{"title":"Usage","titles":["IS31FL3741 Driver"]},"1021":{"title":"Basic Configuration","titles":["IS31FL3741 Driver"]},"1022":{"title":"I²C Addressing","titles":["IS31FL3741 Driver","Basic Configuration"]},"1023":{"title":"PWM Frequency","titles":["IS31FL3741 Driver","Basic Configuration"]},"1024":{"title":"De-Ghosting","titles":["IS31FL3741 Driver","Basic Configuration"]},"1025":{"title":"Global Current Control","titles":["IS31FL3741 Driver","Basic Configuration"]},"1026":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3741 Driver"]},"1027":{"title":"LED Mapping","titles":["IS31FL3741 Driver"]},"1028":{"title":"API","titles":["IS31FL3741 Driver"]},"1029":{"title":"struct is31fl3741_led_t","titles":["IS31FL3741 Driver","API"]},"1030":{"title":"Members","titles":["IS31FL3741 Driver","API","struct is31fl3741_led_t"]},"1031":{"title":"void is31fl3741_init(uint8_t index)","titles":["IS31FL3741 Driver","API"]},"1032":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_init(uint8_t index)"]},"1033":{"title":"void is31fl3741_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3741 Driver","API"]},"1034":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1035":{"title":"void is31fl3741_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3741 Driver","API"]},"1036":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_select_page(uint8_t index, uint8_t page)"]},"1037":{"title":"void is31fl3741_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3741 Driver","API"]},"1038":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1039":{"title":"void is31fl3741_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3741 Driver","API"]},"1040":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1041":{"title":"void is31fl3741_set_value(int index, uint8_t value)","titles":["IS31FL3741 Driver","API"]},"1042":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_value(int index, uint8_t value)"]},"1043":{"title":"void is31fl3741_set_value_all(uint8_t value)","titles":["IS31FL3741 Driver","API"]},"1044":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_value_all(uint8_t value)"]},"1045":{"title":"void is31fl3741_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3741 Driver","API"]},"1046":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"1047":{"title":"void is31fl3741_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3741 Driver","API"]},"1048":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_led_control_register(uint8_t index, bool value)"]},"1049":{"title":"void is31fl3741_update_pwm_buffers(uint8_t index)","titles":["IS31FL3741 Driver","API"]},"1050":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_update_pwm_buffers(uint8_t index)"]},"1051":{"title":"void is31fl3741_update_led_control_registers(uint8_t index)","titles":["IS31FL3741 Driver","API"]},"1052":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_update_led_control_registers(uint8_t index)"]},"1053":{"title":"IS31FL3742A Driver","titles":[]},"1054":{"title":"Usage","titles":["IS31FL3742A Driver"]},"1055":{"title":"Basic Configuration","titles":["IS31FL3742A Driver"]},"1056":{"title":"I²C Addressing","titles":["IS31FL3742A Driver","Basic Configuration"]},"1057":{"title":"PWM Frequency","titles":["IS31FL3742A Driver","Basic Configuration"]},"1058":{"title":"De-Ghosting","titles":["IS31FL3742A Driver","Basic Configuration"]},"1059":{"title":"Global Current Control","titles":["IS31FL3742A Driver","Basic Configuration"]},"1060":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3742A Driver"]},"1061":{"title":"LED Mapping","titles":["IS31FL3742A Driver"]},"1062":{"title":"API","titles":["IS31FL3742A Driver"]},"1063":{"title":"struct is31fl3742a_led_t","titles":["IS31FL3742A Driver","API"]},"1064":{"title":"Members","titles":["IS31FL3742A Driver","API","struct is31fl3742a_led_t"]},"1065":{"title":"void is31fl3742a_init(uint8_t index)","titles":["IS31FL3742A Driver","API"]},"1066":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_init(uint8_t index)"]},"1067":{"title":"void is31fl3742a_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3742A Driver","API"]},"1068":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1069":{"title":"void is31fl3742a_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3742A Driver","API"]},"1070":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_select_page(uint8_t index, uint8_t page)"]},"1071":{"title":"void is31fl3742a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3742A Driver","API"]},"1072":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1073":{"title":"void is31fl3742a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3742A Driver","API"]},"1074":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1075":{"title":"void is31fl3742a_set_value(int index, uint8_t value)","titles":["IS31FL3742A Driver","API"]},"1076":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_value(int index, uint8_t value)"]},"1077":{"title":"void is31fl3742a_set_value_all(uint8_t value)","titles":["IS31FL3742A Driver","API"]},"1078":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_value_all(uint8_t value)"]},"1079":{"title":"void is31fl3742a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3742A Driver","API"]},"1080":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"1081":{"title":"void is31fl3742a_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3742A Driver","API"]},"1082":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_scaling_register(uint8_t index, uint8_t value)"]},"1083":{"title":"void is31fl3742a_update_pwm_buffers(uint8_t index)","titles":["IS31FL3742A Driver","API"]},"1084":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_update_pwm_buffers(uint8_t index)"]},"1085":{"title":"void is31fl3742a_update_scaling_registers(uint8_t index)","titles":["IS31FL3742A Driver","API"]},"1086":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_update_scaling_registers(uint8_t index)"]},"1087":{"title":"IS31FL3743A Driver","titles":[]},"1088":{"title":"Usage","titles":["IS31FL3743A Driver"]},"1089":{"title":"Basic Configuration","titles":["IS31FL3743A Driver"]},"1090":{"title":"I²C Addressing","titles":["IS31FL3743A Driver","Basic Configuration"]},"1091":{"title":"Multi-Driver Synchronization","titles":["IS31FL3743A Driver","Basic Configuration"]},"1092":{"title":"De-Ghosting","titles":["IS31FL3743A Driver","Basic Configuration"]},"1093":{"title":"Global Current Control","titles":["IS31FL3743A Driver","Basic Configuration"]},"1094":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3743A Driver"]},"1095":{"title":"LED Mapping","titles":["IS31FL3743A Driver"]},"1096":{"title":"API","titles":["IS31FL3743A Driver"]},"1097":{"title":"struct is31fl3743a_led_t","titles":["IS31FL3743A Driver","API"]},"1098":{"title":"Members","titles":["IS31FL3743A Driver","API","struct is31fl3743a_led_t"]},"1099":{"title":"void is31fl3743a_init(uint8_t index)","titles":["IS31FL3743A Driver","API"]},"1100":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_init(uint8_t index)"]},"1101":{"title":"void is31fl3743a_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3743A Driver","API"]},"1102":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1103":{"title":"void is31fl3743a_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3743A Driver","API"]},"1104":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_select_page(uint8_t index, uint8_t page)"]},"1105":{"title":"void is31fl3743a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3743A Driver","API"]},"1106":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1107":{"title":"void is31fl3743a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3743A Driver","API"]},"1108":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1109":{"title":"void is31fl3743a_set_value(int index, uint8_t value)","titles":["IS31FL3743A Driver","API"]},"1110":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_value(int index, uint8_t value)"]},"1111":{"title":"void is31fl3743a_set_value_all(uint8_t value)","titles":["IS31FL3743A Driver","API"]},"1112":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_value_all(uint8_t value)"]},"1113":{"title":"void is31fl3743a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3743A Driver","API"]},"1114":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"1115":{"title":"void is31fl3743a_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3743A Driver","API"]},"1116":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_scaling_register(uint8_t index, uint8_t value)"]},"1117":{"title":"void is31fl3743a_update_pwm_buffers(uint8_t index)","titles":["IS31FL3743A Driver","API"]},"1118":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_update_pwm_buffers(uint8_t index)"]},"1119":{"title":"void is31fl3743a_update_scaling_registers(uint8_t index)","titles":["IS31FL3743A Driver","API"]},"1120":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_update_scaling_registers(uint8_t index)"]},"1121":{"title":"IS31FL3745 Driver","titles":[]},"1122":{"title":"Usage","titles":["IS31FL3745 Driver"]},"1123":{"title":"Basic Configuration","titles":["IS31FL3745 Driver"]},"1124":{"title":"I²C Addressing","titles":["IS31FL3745 Driver","Basic Configuration"]},"1125":{"title":"Multi-Driver Synchronization","titles":["IS31FL3745 Driver","Basic Configuration"]},"1126":{"title":"De-Ghosting","titles":["IS31FL3745 Driver","Basic Configuration"]},"1127":{"title":"Global Current Control","titles":["IS31FL3745 Driver","Basic Configuration"]},"1128":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3745 Driver"]},"1129":{"title":"LED Mapping","titles":["IS31FL3745 Driver"]},"1130":{"title":"API","titles":["IS31FL3745 Driver"]},"1131":{"title":"struct is31fl3745_led_t","titles":["IS31FL3745 Driver","API"]},"1132":{"title":"Members","titles":["IS31FL3745 Driver","API","struct is31fl3745_led_t"]},"1133":{"title":"void is31fl3745_init(uint8_t index)","titles":["IS31FL3745 Driver","API"]},"1134":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_init(uint8_t index)"]},"1135":{"title":"void is31fl3745_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3745 Driver","API"]},"1136":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1137":{"title":"void is31fl3745_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3745 Driver","API"]},"1138":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_select_page(uint8_t index, uint8_t page)"]},"1139":{"title":"void is31fl3745_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3745 Driver","API"]},"1140":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1141":{"title":"void is31fl3745_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3745 Driver","API"]},"1142":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1143":{"title":"void is31fl3745_set_value(int index, uint8_t value)","titles":["IS31FL3745 Driver","API"]},"1144":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_value(int index, uint8_t value)"]},"1145":{"title":"void is31fl3745_set_value_all(uint8_t value)","titles":["IS31FL3745 Driver","API"]},"1146":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_value_all(uint8_t value)"]},"1147":{"title":"void is31fl3745_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3745 Driver","API"]},"1148":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"1149":{"title":"void is31fl3745_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3745 Driver","API"]},"1150":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_scaling_register(uint8_t index, uint8_t value)"]},"1151":{"title":"void is31fl3745_update_pwm_buffers(uint8_t index)","titles":["IS31FL3745 Driver","API"]},"1152":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_update_pwm_buffers(uint8_t index)"]},"1153":{"title":"void is31fl3745_update_scaling_registers(uint8_t index)","titles":["IS31FL3745 Driver","API"]},"1154":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_update_scaling_registers(uint8_t index)"]},"1155":{"title":"IS31FL3746A Driver","titles":[]},"1156":{"title":"Usage","titles":["IS31FL3746A Driver"]},"1157":{"title":"Basic Configuration","titles":["IS31FL3746A Driver"]},"1158":{"title":"I²C Addressing","titles":["IS31FL3746A Driver","Basic Configuration"]},"1159":{"title":"PWM Frequency","titles":["IS31FL3746A Driver","Basic Configuration"]},"1160":{"title":"De-Ghosting","titles":["IS31FL3746A Driver","Basic Configuration"]},"1161":{"title":"Global Current Control","titles":["IS31FL3746A Driver","Basic Configuration"]},"1162":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3746A Driver"]},"1163":{"title":"LED Mapping","titles":["IS31FL3746A Driver"]},"1164":{"title":"API","titles":["IS31FL3746A Driver"]},"1165":{"title":"struct is31fl3746a_led_t","titles":["IS31FL3746A Driver","API"]},"1166":{"title":"Members","titles":["IS31FL3746A Driver","API","struct is31fl3746a_led_t"]},"1167":{"title":"void is31fl3746a_init(uint8_t index)","titles":["IS31FL3746A Driver","API"]},"1168":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_init(uint8_t index)"]},"1169":{"title":"void is31fl3746a_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3746A Driver","API"]},"1170":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1171":{"title":"void is31fl3746a_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3746A Driver","API"]},"1172":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_select_page(uint8_t index, uint8_t page)"]},"1173":{"title":"void is31fl3746a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3746A Driver","API"]},"1174":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1175":{"title":"void is31fl3746a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3746A Driver","API"]},"1176":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1177":{"title":"void is31fl3746a_set_value(int index, uint8_t value)","titles":["IS31FL3746A Driver","API"]},"1178":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_value(int index, uint8_t value)"]},"1179":{"title":"void is31fl3746a_set_value_all(uint8_t value)","titles":["IS31FL3746A Driver","API"]},"1180":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_value_all(uint8_t value)"]},"1181":{"title":"void is31fl3746a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3746A Driver","API"]},"1182":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"1183":{"title":"void is31fl3746a_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3746A Driver","API"]},"1184":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_scaling_register(uint8_t index, uint8_t value)"]},"1185":{"title":"void is31fl3746a_update_pwm_buffers(uint8_t index)","titles":["IS31FL3746A Driver","API"]},"1186":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_update_pwm_buffers(uint8_t index)"]},"1187":{"title":"void is31fl3746a_update_scaling_registers(uint8_t index)","titles":["IS31FL3746A Driver","API"]},"1188":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_update_scaling_registers(uint8_t index)"]},"1189":{"title":"'serial' Driver","titles":[]},"1190":{"title":"Bitbang","titles":["'serial' Driver"]},"1191":{"title":"Pin configuration","titles":["'serial' Driver","Bitbang"]},"1192":{"title":"Setup","titles":["'serial' Driver","Bitbang"]},"1193":{"title":"USART Half-duplex","titles":["'serial' Driver"]},"1194":{"title":"Pin configuration","titles":["'serial' Driver","USART Half-duplex"]},"1195":{"title":"Setup","titles":["'serial' Driver","USART Half-duplex"]},"1196":{"title":"USART Full-duplex","titles":["'serial' Driver"]},"1197":{"title":"Pin configuration","titles":["'serial' Driver","USART Full-duplex"]},"1198":{"title":"Setup","titles":["'serial' Driver","USART Full-duplex"]},"1199":{"title":"Choosing a driver subsystem","titles":["'serial' Driver"]},"1200":{"title":"The SERIAL driver","titles":["'serial' Driver","Choosing a driver subsystem"]},"1201":{"title":"The SIO driver","titles":["'serial' Driver","Choosing a driver subsystem"]},"1202":{"title":"The PIO driver","titles":["'serial' Driver","Choosing a driver subsystem"]},"1203":{"title":"Advanced Configuration","titles":["'serial' Driver"]},"1204":{"title":"Baudrate","titles":["'serial' Driver","Advanced Configuration"]},"1205":{"title":"Timeout","titles":["'serial' Driver","Advanced Configuration"]},"1206":{"title":"Troubleshooting","titles":["'serial' Driver"]},"1207":{"title":"Alternate Functions for selected STM32 MCUs","titles":["'serial' Driver"]},"1208":{"title":"STM32F303 / Proton-C","titles":["'serial' Driver","Alternate Functions for selected STM32 MCUs"]},"1209":{"title":"STM32F072","titles":["'serial' Driver","Alternate Functions for selected STM32 MCUs"]},"1210":{"title":"STM32F103 Medium Density (C8-CB)","titles":["'serial' Driver","Alternate Functions for selected STM32 MCUs"]},"1211":{"title":"SNLED27351 Driver","titles":[]},"1212":{"title":"Usage","titles":["SNLED27351 Driver"]},"1213":{"title":"Basic Configuration","titles":["SNLED27351 Driver"]},"1214":{"title":"I²C Addressing","titles":["SNLED27351 Driver","Basic Configuration"]},"1215":{"title":"ARM/ChibiOS Configuration","titles":["SNLED27351 Driver"]},"1216":{"title":"LED Mapping","titles":["SNLED27351 Driver"]},"1217":{"title":"API","titles":["SNLED27351 Driver"]},"1218":{"title":"struct snled27351_led_t","titles":["SNLED27351 Driver","API"]},"1219":{"title":"Members","titles":["SNLED27351 Driver","API","struct snled27351_led_t"]},"1220":{"title":"void snled27351_init(uint8_t index)","titles":["SNLED27351 Driver","API"]},"1221":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_init(uint8_t index)"]},"1222":{"title":"void snled27351_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["SNLED27351 Driver","API"]},"1223":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1224":{"title":"void snled27351_select_page(uint8_t index, uint8_t page)","titles":["SNLED27351 Driver","API"]},"1225":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_select_page(uint8_t index, uint8_t page)"]},"1226":{"title":"void snled27351_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["SNLED27351 Driver","API"]},"1227":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1228":{"title":"void snled27351_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["SNLED27351 Driver","API"]},"1229":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1230":{"title":"void snled27351_set_value(int index, uint8_t value)","titles":["SNLED27351 Driver","API"]},"1231":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_value(int index, uint8_t value)"]},"1232":{"title":"void snled27351_set_value_all(uint8_t value)","titles":["SNLED27351 Driver","API"]},"1233":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_value_all(uint8_t value)"]},"1234":{"title":"void snled27351_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["SNLED27351 Driver","API"]},"1235":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"1236":{"title":"void snled27351_set_led_control_register(uint8_t index, bool value)","titles":["SNLED27351 Driver","API"]},"1237":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_led_control_register(uint8_t index, bool value)"]},"1238":{"title":"void snled27351_update_pwm_buffers(uint8_t index)","titles":["SNLED27351 Driver","API"]},"1239":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_update_pwm_buffers(uint8_t index)"]},"1240":{"title":"void snled27351_update_led_control_registers(uint8_t index)","titles":["SNLED27351 Driver","API"]},"1241":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_update_led_control_registers(uint8_t index)"]},"1242":{"title":"SPI Master Driver","titles":[]},"1243":{"title":"Usage","titles":["SPI Master Driver"]},"1244":{"title":"AVR Configuration","titles":["SPI Master Driver"]},"1245":{"title":"ChibiOS/ARM Configuration","titles":["SPI Master Driver"]},"1246":{"title":"API","titles":["SPI Master Driver"]},"1247":{"title":"void spi_init(void)","titles":["SPI Master Driver","API"]},"1248":{"title":"bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)","titles":["SPI Master Driver","API"]},"1249":{"title":"Arguments","titles":["SPI Master Driver","API","bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)"]},"1250":{"title":"Return Value","titles":["SPI Master Driver","API","bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)"]},"1251":{"title":"spi_status_t spi_write(uint8_t data)","titles":["SPI Master Driver","API"]},"1252":{"title":"Arguments","titles":["SPI Master Driver","API","spi_status_t spi_write(uint8_t data)"]},"1253":{"title":"Return Value","titles":["SPI Master Driver","API","spi_status_t spi_write(uint8_t data)"]},"1254":{"title":"spi_status_t spi_read(void)","titles":["SPI Master Driver","API"]},"1255":{"title":"Return Value","titles":["SPI Master Driver","API","spi_status_t spi_read(void)"]},"1256":{"title":"spi_status_t spi_transmit(const uint8_t *data, uint16_t length)","titles":["SPI Master Driver","API"]},"1257":{"title":"Arguments","titles":["SPI Master Driver","API","spi_status_t spi_transmit(const uint8_t *data, uint16_t length)"]},"1258":{"title":"Return Value","titles":["SPI Master Driver","API","spi_status_t spi_transmit(const uint8_t *data, uint16_t length)"]},"1259":{"title":"spi_status_t spi_receive(uint8_t *data, uint16_t length)","titles":["SPI Master Driver","API"]},"1260":{"title":"Arguments","titles":["SPI Master Driver","API","spi_status_t spi_receive(uint8_t *data, uint16_t length)"]},"1261":{"title":"Return Value","titles":["SPI Master Driver","API","spi_status_t spi_receive(uint8_t *data, uint16_t length)"]},"1262":{"title":"void spi_stop(void)","titles":["SPI Master Driver","API"]},"1263":{"title":"UART Driver","titles":[]},"1264":{"title":"Usage","titles":["UART Driver"]},"1265":{"title":"AVR Configuration","titles":["UART Driver"]},"1266":{"title":"ChibiOS/ARM Configuration","titles":["UART Driver"]},"1267":{"title":"API","titles":["UART Driver"]},"1268":{"title":"void uart_init(uint32_t baud)","titles":["UART Driver","API"]},"1269":{"title":"Arguments","titles":["UART Driver","API","void uart_init(uint32_t baud)"]},"1270":{"title":"void uart_write(uint8_t data)","titles":["UART Driver","API"]},"1271":{"title":"Arguments","titles":["UART Driver","API","void uart_write(uint8_t data)"]},"1272":{"title":"uint8_t uart_read(void)","titles":["UART Driver","API"]},"1273":{"title":"Return Value","titles":["UART Driver","API","uint8_t uart_read(void)"]},"1274":{"title":"void uart_transmit(const uint8_t *data, uint16_t length)","titles":["UART Driver","API"]},"1275":{"title":"Arguments","titles":["UART Driver","API","void uart_transmit(const uint8_t *data, uint16_t length)"]},"1276":{"title":"void uart_receive(char *data, uint16_t length)","titles":["UART Driver","API"]},"1277":{"title":"Arguments","titles":["UART Driver","API","void uart_receive(char *data, uint16_t length)"]},"1278":{"title":"bool uart_available(void)","titles":["UART Driver","API"]},"1279":{"title":"Return Value","titles":["UART Driver","API","bool uart_available(void)"]},"1280":{"title":"WS2812 Driver","titles":[]},"1281":{"title":"Usage","titles":["WS2812 Driver"]},"1282":{"title":"Basic Configuration","titles":["WS2812 Driver"]},"1283":{"title":"Timing Adjustment","titles":["WS2812 Driver","Basic Configuration"]},"1284":{"title":"Byte Order","titles":["WS2812 Driver","Basic Configuration"]},"1285":{"title":"RGBW Support","titles":["WS2812 Driver","Basic Configuration"]},"1286":{"title":"Driver Configuration","titles":["WS2812 Driver"]},"1287":{"title":"Bitbang Driver","titles":["WS2812 Driver","Driver Configuration"]},"1288":{"title":"I2C Driver","titles":["WS2812 Driver","Driver Configuration"]},"1289":{"title":"PIO Driver","titles":["WS2812 Driver","Driver Configuration"]},"1290":{"title":"PWM Driver","titles":["WS2812 Driver","Driver Configuration"]},"1291":{"title":"SPI Driver","titles":["WS2812 Driver","Driver Configuration"]},"1292":{"title":"ChibiOS/ARM Configuration","titles":["WS2812 Driver"]},"1293":{"title":"Logic Levels","titles":["WS2812 Driver","ChibiOS/ARM Configuration"]},"1294":{"title":"1. Open Drain Circuit","titles":["WS2812 Driver","ChibiOS/ARM Configuration","Logic Levels"]},"1295":{"title":"2. Level Shifter","titles":["WS2812 Driver","ChibiOS/ARM Configuration","Logic Levels"]},"1296":{"title":"SPI Driver","titles":["WS2812 Driver","ChibiOS/ARM Configuration"]},"1297":{"title":"Setting the Baudrate","titles":["WS2812 Driver","ChibiOS/ARM Configuration","SPI Driver"]},"1298":{"title":"Circular Buffer","titles":["WS2812 Driver","ChibiOS/ARM Configuration","SPI Driver"]},"1299":{"title":"PIO Driver","titles":["WS2812 Driver","ChibiOS/ARM Configuration"]},"1300":{"title":"PWM Driver","titles":["WS2812 Driver","ChibiOS/ARM Configuration"]},"1301":{"title":"API","titles":["WS2812 Driver"]},"1302":{"title":"void ws2812_init(void)","titles":["WS2812 Driver","API"]},"1303":{"title":"void ws2812_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["WS2812 Driver","API"]},"1304":{"title":"Arguments","titles":["WS2812 Driver","API","void ws2812_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1305":{"title":"void ws2812_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["WS2812 Driver","API"]},"1306":{"title":"Arguments","titles":["WS2812 Driver","API","void ws2812_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1307":{"title":"void ws2812_flush(void)","titles":["WS2812 Driver","API"]},"1308":{"title":"Easy Maker - Build One-Off Projects In Configurator","titles":[]},"1309":{"title":"Quickstart","titles":["Easy Maker - Build One-Off Projects In Configurator"]},"1310":{"title":"Direct Pin","titles":[]},"1311":{"title":"Frequently Asked Build Questions","titles":[]},"1312":{"title":"Can't Program on Linux","titles":["Frequently Asked Build Questions"]},"1313":{"title":"Linux udev Rules","titles":["Frequently Asked Build Questions","Can't Program on Linux"]},"1314":{"title":"Serial device is not detected in bootloader mode on Linux","titles":["Frequently Asked Build Questions","Can't Program on Linux"]},"1315":{"title":"Unknown Device for DFU Bootloader","titles":["Frequently Asked Build Questions"]},"1316":{"title":"USB VID and PID","titles":["Frequently Asked Build Questions"]},"1317":{"title":"I just flashed my keyboard and it does nothing/keypresses don't register - it's also ARM (rev6 planck, clueboard 60, hs60v2, etc...) (Feb 2019)","titles":["Frequently Asked Build Questions","USB VID and PID"]},"1318":{"title":"Debugging FAQ","titles":[]},"1319":{"title":"Debugging","titles":["Debugging FAQ"]},"1320":{"title":"Debugging Tools","titles":["Debugging FAQ"]},"1321":{"title":"Debugging With QMK Toolbox","titles":["Debugging FAQ","Debugging Tools"]},"1322":{"title":"Debugging with QMK CLI","titles":["Debugging FAQ","Debugging Tools"]},"1323":{"title":"Debugging With hid_listen","titles":["Debugging FAQ","Debugging Tools"]},"1324":{"title":"Sending Your Own Debug Messages","titles":["Debugging FAQ"]},"1325":{"title":"Debug Examples","titles":["Debugging FAQ"]},"1326":{"title":"Which matrix position is this keypress?","titles":["Debugging FAQ","Debug Examples"]},"1327":{"title":"Which keycode is this keypress?","titles":["Debugging FAQ","Debug Examples"]},"1328":{"title":"How long did it take to scan for a keypress?","titles":["Debugging FAQ","Debug Examples"]},"1329":{"title":"hid_listen Can't Recognize Device","titles":["Debugging FAQ"]},"1330":{"title":"Can't Get Message on Console","titles":["Debugging FAQ"]},"1331":{"title":"Frequently Asked Questions","titles":[]},"1332":{"title":"What is QMK?","titles":["Frequently Asked Questions"]},"1333":{"title":"I don't know where to start!","titles":["Frequently Asked Questions"]},"1334":{"title":"How can I flash the firmware I built?","titles":["Frequently Asked Questions"]},"1335":{"title":"What if I have an issue that isn't covered here?","titles":["Frequently Asked Questions"]},"1336":{"title":"What if I found a bug?","titles":["Frequently Asked Questions"]},"1337":{"title":"But git and GitHub are intimidating!","titles":["Frequently Asked Questions"]},"1338":{"title":"I have a Keyboard that I want to add support for","titles":["Frequently Asked Questions"]},"1339":{"title":"What if I want to brand it with QMK?","titles":["Frequently Asked Questions","I have a Keyboard that I want to add support for"]},"1340":{"title":"What Differences Are There Between QMK and TMK?","titles":["Frequently Asked Questions"]},"1341":{"title":"Keymap FAQ","titles":[]},"1342":{"title":"What Keycodes Can I Use?","titles":["Keymap FAQ"]},"1343":{"title":"What Are the Default Keycodes?","titles":["Keymap FAQ"]},"1344":{"title":"How Can I Make Custom Names For Complex Keycodes?","titles":["Keymap FAQ"]},"1345":{"title":"My Keymap Doesn't Update When I Flash It","titles":["Keymap FAQ"]},"1346":{"title":"Some Of My Keys Are Swapped Or Not Working","titles":["Keymap FAQ"]},"1347":{"title":"The Menu Key Isn't Working","titles":["Keymap FAQ"]},"1348":{"title":"Power Keys Aren't Working","titles":["Keymap FAQ"]},"1349":{"title":"One Shot Modifier","titles":["Keymap FAQ"]},"1350":{"title":"Modifier/Layer Stuck","titles":["Keymap FAQ"]},"1351":{"title":"Mechanical Lock Switch Support","titles":["Keymap FAQ"]},"1352":{"title":"Input Special Characters Other Than ASCII like Cédille 'Ç'","titles":["Keymap FAQ"]},"1353":{"title":"Fn Key on macOS","titles":["Keymap FAQ"]},"1354":{"title":"Keys Supported in Mac OSX?","titles":["Keymap FAQ"]},"1355":{"title":"JIS Keys in Mac OSX","titles":["Keymap FAQ"]},"1356":{"title":"RN-42 Bluetooth Doesn't Work with Karabiner","titles":["Keymap FAQ"]},"1357":{"title":"Esc and ` on a Single Key","titles":["Keymap FAQ"]},"1358":{"title":"Eject on Mac OSX","titles":["Keymap FAQ"]},"1359":{"title":"What are "Real" and "Weak" modifiers?","titles":["Keymap FAQ"]},"1360":{"title":"Miscellaneous FAQ","titles":[]},"1361":{"title":"How do I test my keyboard?","titles":["Miscellaneous FAQ"]},"1362":{"title":"Safety Considerations","titles":["Miscellaneous FAQ"]},"1363":{"title":"NKRO Doesn't work","titles":["Miscellaneous FAQ"]},"1364":{"title":"TrackPoint Needs Reset Circuit (PS/2 Mouse Support)","titles":["Miscellaneous FAQ"]},"1365":{"title":"Can't Read Column of Matrix Beyond 16","titles":["Miscellaneous FAQ"]},"1366":{"title":"Special Extra Key Doesn't Work (System, Audio Control Keys)","titles":["Miscellaneous FAQ"]},"1367":{"title":"Wake from Sleep Doesn't Work","titles":["Miscellaneous FAQ"]},"1368":{"title":"Using Arduino?","titles":["Miscellaneous FAQ"]},"1369":{"title":"Enabling JTAG","titles":["Miscellaneous FAQ"]},"1370":{"title":"USB 3 Compatibility","titles":["Miscellaneous FAQ"]},"1371":{"title":"Mac Compatibility","titles":["Miscellaneous FAQ"]},"1372":{"title":"OS X 10.11 and Hub","titles":["Miscellaneous FAQ","Mac Compatibility"]},"1373":{"title":"Problem in BIOS (UEFI) Setup/Resume (Sleep & Wake)/Power Cycles","titles":["Miscellaneous FAQ"]},"1374":{"title":"Modifier Keys","titles":[]},"1375":{"title":"Checking Modifier State","titles":[]},"1376":{"title":"Examples","titles":["Checking Modifier State"]},"1377":{"title":"Alt + Escape for Alt + Tab","titles":["Checking Modifier State","Examples"]},"1378":{"title":"Shift + Backspace for Delete","titles":["Checking Modifier State","Examples"]},"1379":{"title":"Advanced topics","titles":[]},"1380":{"title":"Layers","titles":["Advanced topics"]},"1381":{"title":"Mod-Tap","titles":["Advanced topics"]},"1382":{"title":"One Shot Keys","titles":["Advanced topics"]},"1383":{"title":"Tap-Hold Configuration Options","titles":["Advanced topics"]},"1384":{"title":"Key Overrides","titles":["Advanced topics"]},"1385":{"title":"Converters","titles":[]},"1386":{"title":"Supported Converters","titles":["Converters"]},"1387":{"title":"Configuration","titles":["Converters"]},"1388":{"title":"Pro Micro Converters","titles":["Converters"]},"1389":{"title":"Proton C","titles":["Converters","Pro Micro Converters"]},"1390":{"title":"Adafruit KB2040","titles":["Converters","Pro Micro Converters"]},"1391":{"title":"SparkFun Pro Micro - RP2040, Blok, Bit-C PRO and Michi","titles":["Converters","Pro Micro Converters"]},"1392":{"title":"STeMCell","titles":["Converters","Pro Micro Converters"]},"1393":{"title":"Bonsai C4","titles":["Converters","Pro Micro Converters"]},"1394":{"title":"RP2040 Community Edition - Elite-Pi, Helios, and Liatris","titles":["Converters","Pro Micro Converters"]},"1395":{"title":"Svlinky","titles":["Converters","Pro Micro Converters"]},"1396":{"title":"Elite-C Converters","titles":["Converters"]},"1397":{"title":"STeMCell","titles":["Converters","Elite-C Converters"]},"1398":{"title":"RP2040 Community Edition","titles":["Converters","Elite-C Converters"]},"1399":{"title":"Advanced Topics","titles":["Converters"]},"1400":{"title":"Keyboard Configuration","titles":["Converters","Advanced Topics"]},"1401":{"title":"Additional Requirements","titles":["Converters","Advanced Topics","Keyboard Configuration"]},"1402":{"title":"Additional Keymap Configuration","titles":["Converters","Advanced Topics"]},"1403":{"title":"Conditional Configuration","titles":["Converters","Advanced Topics"]},"1404":{"title":"Pin Compatibility","titles":["Converters","Advanced Topics"]},"1405":{"title":"Available Pin Compatibility","titles":["Converters","Advanced Topics","Pin Compatibility"]},"1406":{"title":"Contact bounce / contact chatter","titles":[]},"1407":{"title":"Types of debounce algorithms","titles":["Contact bounce / contact chatter"]},"1408":{"title":"Supported Debounce Algorithms","titles":["Contact bounce / contact chatter"]},"1409":{"title":"Debounce Time","titles":["Contact bounce / contact chatter","Supported Debounce Algorithms"]},"1410":{"title":"Debounce Method","titles":["Contact bounce / contact chatter","Supported Debounce Algorithms"]},"1411":{"title":"Implementing your own debouncing code","titles":["Contact bounce / contact chatter","Supported Debounce Algorithms"]},"1412":{"title":"Persistent Configuration (EEPROM)","titles":[]},"1413":{"title":"Example Implementation","titles":["Persistent Configuration (EEPROM)"]},"1414":{"title":"'EECONFIG' Function Documentation","titles":["Persistent Configuration (EEPROM)"]},"1415":{"title":"Layers","titles":[]},"1416":{"title":"Switching and Toggling Layers","titles":["Layers"]},"1417":{"title":"Caveats","titles":["Layers","Switching and Toggling Layers"]},"1418":{"title":"Working with Layers","titles":["Layers"]},"1419":{"title":"Beginners","titles":["Layers","Working with Layers"]},"1420":{"title":"Intermediate Users","titles":["Layers","Working with Layers"]},"1421":{"title":"Advanced Users","titles":["Layers","Working with Layers"]},"1422":{"title":"Functions","titles":["Layers"]},"1423":{"title":"Layer Change Code","titles":["Layers"]},"1424":{"title":"Example layer_state_set_* Implementation","titles":["Layers","Layer Change Code"]},"1425":{"title":"Example: Keycode to cycle through layers","titles":["Layers","Layer Change Code"]},"1426":{"title":"layer_state_set_* Function Documentation","titles":["Layers","Layer Change Code"]},"1427":{"title":"Layouts: Using a Keymap with Multiple Keyboards","titles":[]},"1428":{"title":"Supporting a Layout","titles":["Layouts: Using a Keymap with Multiple Keyboards"]},"1429":{"title":"Building a Keymap","titles":["Layouts: Using a Keymap with Multiple Keyboards"]},"1430":{"title":"Conflicting layouts","titles":["Layouts: Using a Keymap with Multiple Keyboards","Building a Keymap"]},"1431":{"title":"Tips for Making Layouts Keyboard-Agnostic","titles":["Layouts: Using a Keymap with Multiple Keyboards"]},"1432":{"title":"Includes","titles":["Layouts: Using a Keymap with Multiple Keyboards","Tips for Making Layouts Keyboard-Agnostic"]},"1433":{"title":"Keymaps","titles":["Layouts: Using a Keymap with Multiple Keyboards","Tips for Making Layouts Keyboard-Agnostic"]},"1434":{"title":"Userspace: Sharing Code Between Keymaps","titles":[]},"1435":{"title":"Rules.mk","titles":["Userspace: Sharing Code Between Keymaps"]},"1436":{"title":"Override default userspace","titles":["Userspace: Sharing Code Between Keymaps","Rules.mk"]},"1437":{"title":"Configuration Options (config.h)","titles":["Userspace: Sharing Code Between Keymaps"]},"1438":{"title":"Readme (readme.md)","titles":["Userspace: Sharing Code Between Keymaps"]},"1439":{"title":"Build All Keyboards That Support a Specific Keymap","titles":["Userspace: Sharing Code Between Keymaps"]},"1440":{"title":"Examples","titles":["Userspace: Sharing Code Between Keymaps"]},"1441":{"title":"Customized Functions","titles":["Userspace: Sharing Code Between Keymaps","Examples"]},"1442":{"title":"Custom Features","titles":["Userspace: Sharing Code Between Keymaps","Examples"]},"1443":{"title":"Consolidated Macros","titles":["Userspace: Sharing Code Between Keymaps","Examples"]},"1444":{"title":"Macros","titles":[]},"1445":{"title":"Using Macros In JSON Keymaps","titles":["Macros"]},"1446":{"title":"Selecting Your Host Keyboard Layout","titles":["Macros","Using Macros In JSON Keymaps"]},"1447":{"title":"Macro Basics","titles":["Macros","Using Macros In JSON Keymaps"]},"1448":{"title":"Object Format","titles":["Macros","Using Macros In JSON Keymaps","Macro Basics"]},"1449":{"title":"Using Macros in C Keymaps","titles":["Macros"]},"1450":{"title":"SEND_STRING() & process_record_user","titles":["Macros","Using Macros in C Keymaps"]},"1451":{"title":"Advanced Macros","titles":["Macros","Using Macros in C Keymaps","SEND_STRING() & process_record_user"]},"1452":{"title":"TAP, DOWN and UP","titles":["Macros","Using Macros in C Keymaps","SEND_STRING() & process_record_user"]},"1453":{"title":"Alternative Keymaps","titles":["Macros","Using Macros in C Keymaps","SEND_STRING() & process_record_user"]},"1454":{"title":"Strings in Memory","titles":["Macros","Using Macros in C Keymaps","SEND_STRING() & process_record_user"]},"1455":{"title":"Advanced Macro Functions","titles":["Macros","Using Macros in C Keymaps"]},"1456":{"title":"record->event.pressed","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1457":{"title":"register_code(<kc>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1458":{"title":"unregister_code(<kc>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1459":{"title":"tap_code(<kc>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1460":{"title":"tap_code_delay(<kc>, <delay>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1461":{"title":"register_code16(<kc>);, unregister_code16(<kc>);, tap_code16(<kc>); and tap_code16_delay(<kc>, <delay>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1462":{"title":"clear_keyboard();","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1463":{"title":"clear_mods();","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1464":{"title":"clear_keyboard_but_mods();","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1465":{"title":"Advanced Example:","titles":["Macros","Using Macros in C Keymaps"]},"1466":{"title":"Super ALT↯TAB","titles":["Macros","Using Macros in C Keymaps","Advanced Example:"]},"1467":{"title":"Audio","titles":[]},"1468":{"title":"AVR based boards","titles":["Audio"]},"1469":{"title":"Wiring","titles":["Audio","AVR based boards"]},"1470":{"title":"ARM based boards","titles":["Audio"]},"1471":{"title":"DAC (basic)","titles":["Audio","ARM based boards"]},"1472":{"title":"Wiring:","titles":["Audio","ARM based boards","DAC (basic)"]},"1473":{"title":"Proton-C Example:","titles":["Audio","ARM based boards","DAC (basic)","Wiring:"]},"1474":{"title":"DAC (additive)","titles":["Audio","ARM based boards"]},"1475":{"title":"PWM (software)","titles":["Audio","ARM based boards"]},"1476":{"title":"Wiring","titles":["Audio","ARM based boards","PWM (software)"]},"1477":{"title":"PWM (hardware)","titles":["Audio","ARM based boards"]},"1478":{"title":"Tone Multiplexing","titles":["Audio"]},"1479":{"title":"Songs","titles":["Audio"]},"1480":{"title":"Audio Config","titles":["Audio"]},"1481":{"title":"Tempo","titles":["Audio"]},"1482":{"title":"ARM Audio Volume","titles":["Audio"]},"1483":{"title":"Voices","titles":["Audio"]},"1484":{"title":"Music Mode","titles":["Audio"]},"1485":{"title":"Music Mask","titles":["Audio","Music Mode"]},"1486":{"title":"Music Map","titles":["Audio","Music Mode"]},"1487":{"title":"Audio Click","titles":["Audio"]},"1488":{"title":"MIDI Functionality","titles":["Audio"]},"1489":{"title":"Audio Keycodes","titles":["Audio"]},"1490":{"title":"Auto Shift: Why Do We Need a Shift Key?","titles":[]},"1491":{"title":"Why Auto Shift?","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1492":{"title":"How Does It Work?","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1493":{"title":"Are There Limitations to Auto Shift?","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1494":{"title":"How Do I Enable Auto Shift?","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1495":{"title":"Modifiers","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1496":{"title":"Configuring Auto Shift","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1497":{"title":"AUTO_SHIFT_TIMEOUT (Value in ms)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1498":{"title":"NO_AUTO_SHIFT_SPECIAL (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1499":{"title":"NO_AUTO_SHIFT_TAB (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1500":{"title":"NO_AUTO_SHIFT_SYMBOLS (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1501":{"title":"NO_AUTO_SHIFT_NUMERIC (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1502":{"title":"NO_AUTO_SHIFT_ALPHA (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1503":{"title":"AUTO_SHIFT_ENTER (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1504":{"title":"Auto Shift Per Key","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1505":{"title":"AUTO_SHIFT_REPEAT (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1506":{"title":"AUTO_SHIFT_NO_AUTO_REPEAT (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1507":{"title":"AUTO_SHIFT_ALPHA (predefined key group)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1508":{"title":"AUTO_SHIFT_NUMERIC (predefined key group)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1509":{"title":"AUTO_SHIFT_SYMBOLS (predefined key group)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1510":{"title":"AUTO_SHIFT_SPECIAL (predefined key group)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1511":{"title":"Custom Shifted Values","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1512":{"title":"Retro Shift","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1513":{"title":"Retro Shift and Tap Hold Configurations","titles":["Auto Shift: Why Do We Need a Shift Key?","Retro Shift"]},"1514":{"title":"Using Auto Shift Setup","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1515":{"title":"Setup","titles":["Auto Shift: Why Do We Need a Shift Key?","Using Auto Shift Setup"]},"1516":{"title":"Use","titles":["Auto Shift: Why Do We Need a Shift Key?","Using Auto Shift Setup"]},"1517":{"title":"An Example Run","titles":["Auto Shift: Why Do We Need a Shift Key?","Using Auto Shift Setup","Use"]},"1518":{"title":"Autocorrect","titles":[]},"1519":{"title":"How does it work?","titles":["Autocorrect"]},"1520":{"title":"How do I enable Autocorrection","titles":["Autocorrect"]},"1521":{"title":"Customizing autocorrect library","titles":["Autocorrect"]},"1522":{"title":"Avoiding false triggers","titles":["Autocorrect","Customizing autocorrect library"]},"1523":{"title":"Overriding Autocorrect","titles":["Autocorrect"]},"1524":{"title":"Keycodes","titles":["Autocorrect","Overriding Autocorrect"]},"1525":{"title":"User Callback Functions","titles":["Autocorrect"]},"1526":{"title":"Process Autocorrect","titles":["Autocorrect","User Callback Functions"]},"1527":{"title":"Process Autocorrect Example","titles":["Autocorrect","User Callback Functions","Process Autocorrect"]},"1528":{"title":"Apply Autocorrect","titles":["Autocorrect","User Callback Functions"]},"1529":{"title":"Apply Autocorrect Example","titles":["Autocorrect","User Callback Functions","Apply Autocorrect"]},"1530":{"title":"Autocorrect Status","titles":["Autocorrect","User Callback Functions"]},"1531":{"title":"Appendix: Trie binary data format","titles":["Autocorrect"]},"1532":{"title":"Encoding","titles":["Autocorrect","Appendix: Trie binary data format"]},"1533":{"title":"Decoding","titles":["Autocorrect","Appendix: Trie binary data format"]},"1534":{"title":"Credits","titles":["Autocorrect"]},"1535":{"title":"Battery","titles":[]},"1536":{"title":"Usage","titles":["Battery"]},"1537":{"title":"Basic Configuration","titles":["Battery"]},"1538":{"title":"Driver Configuration","titles":["Battery"]},"1539":{"title":"Functions","titles":["Battery"]},"1540":{"title":"uint8_t battery_get_percent(void)","titles":["Battery","Functions"]},"1541":{"title":"Return Value","titles":["Battery","Functions","uint8_t battery_get_percent(void)"]},"1542":{"title":"Callbacks","titles":["Battery"]},"1543":{"title":"void battery_percent_changed_user(uint8_t level)","titles":["Battery","Callbacks"]},"1544":{"title":"Arguments","titles":["Battery","Callbacks"]},"1545":{"title":"void battery_percent_changed_kb(uint8_t level)","titles":["Battery","Callbacks"]},"1546":{"title":"Arguments","titles":["Battery","Callbacks"]},"1547":{"title":"Backlighting","titles":[]},"1548":{"title":"Usage","titles":["Backlighting"]},"1549":{"title":"Keycodes","titles":["Backlighting"]},"1550":{"title":"Basic Configuration","titles":["Backlighting"]},"1551":{"title":""On" State","titles":["Backlighting","Basic Configuration"]},"1552":{"title":"Multiple Backlight Pins","titles":["Backlighting","Basic Configuration"]},"1553":{"title":"Driver Configuration","titles":["Backlighting"]},"1554":{"title":"PWM Driver","titles":["Backlighting","Driver Configuration"]},"1555":{"title":"Timer Driver","titles":["Backlighting","Driver Configuration"]},"1556":{"title":"Software Driver","titles":["Backlighting","Driver Configuration"]},"1557":{"title":"Custom Driver","titles":["Backlighting","Driver Configuration"]},"1558":{"title":"AVR Configuration","titles":["Backlighting"]},"1559":{"title":"PWM Driver","titles":["Backlighting","AVR Configuration"]},"1560":{"title":"Timer Driver","titles":["Backlighting","AVR Configuration"]},"1561":{"title":"ChibiOS/ARM Configuration","titles":["Backlighting"]},"1562":{"title":"PWM Driver","titles":["Backlighting","ChibiOS/ARM Configuration"]},"1563":{"title":"Timer Driver","titles":["Backlighting","ChibiOS/ARM Configuration"]},"1564":{"title":"Example Schematic","titles":["Backlighting"]},"1565":{"title":"API","titles":["Backlighting"]},"1566":{"title":"void backlight_toggle(void)","titles":["Backlighting","API"]},"1567":{"title":"void backlight_enable(void)","titles":["Backlighting","API"]},"1568":{"title":"void backlight_disable(void)","titles":["Backlighting","API"]},"1569":{"title":"void backlight_step(void)","titles":["Backlighting","API"]},"1570":{"title":"void backlight_increase(void)","titles":["Backlighting","API"]},"1571":{"title":"void backlight_decrease(void)","titles":["Backlighting","API"]},"1572":{"title":"void backlight_level(uint8_t level)","titles":["Backlighting","API"]},"1573":{"title":"Arguments","titles":["Backlighting","API","void backlight_level(uint8_t level)"]},"1574":{"title":"uint8_t get_backlight_level(void)","titles":["Backlighting","API"]},"1575":{"title":"Return Value","titles":["Backlighting","API","uint8_t get_backlight_level(void)"]},"1576":{"title":"bool is_backlight_enabled(void)","titles":["Backlighting","API"]},"1577":{"title":"Return Value","titles":["Backlighting","API","bool is_backlight_enabled(void)"]},"1578":{"title":"void backlight_toggle_breathing(void)","titles":["Backlighting","API"]},"1579":{"title":"void backlight_enable_breathing(void)","titles":["Backlighting","API"]},"1580":{"title":"void backlight_disable_breathing(void)","titles":["Backlighting","API"]},"1581":{"title":"bool is_backlight_breathing(void)","titles":["Backlighting","API"]},"1582":{"title":"Return Value","titles":["Backlighting","API","bool is_backlight_breathing(void)"]},"1583":{"title":"Bootmagic","titles":[]},"1584":{"title":"Split Keyboards","titles":["Bootmagic"]},"1585":{"title":"Advanced Bootmagic","titles":["Bootmagic"]},"1586":{"title":"Addenda","titles":["Bootmagic"]},"1587":{"title":"Caps Word","titles":[]},"1588":{"title":"How do I enable Caps Word","titles":["Caps Word"]},"1589":{"title":"Troubleshooting: Command","titles":["Caps Word","How do I enable Caps Word"]},"1590":{"title":"Customizing Caps Word","titles":["Caps Word"]},"1591":{"title":"Invert on shift","titles":["Caps Word","Customizing Caps Word"]},"1592":{"title":"Idle timeout","titles":["Caps Word","Customizing Caps Word"]},"1593":{"title":"Functions","titles":["Caps Word","Customizing Caps Word"]},"1594":{"title":"Configure which keys are "word breaking"","titles":["Caps Word","Customizing Caps Word"]},"1595":{"title":"Representing Caps Word state","titles":["Caps Word","Customizing Caps Word"]},"1596":{"title":"Combos","titles":[]},"1597":{"title":"Advanced Keycodes Support","titles":["Combos"]},"1598":{"title":"Overlapping Combos","titles":["Combos"]},"1599":{"title":"Examples","titles":["Combos"]},"1600":{"title":"Keycodes","titles":["Combos"]},"1601":{"title":"Advanced Configuration","titles":["Combos"]},"1602":{"title":"Combo Term","titles":["Combos","Advanced Configuration"]},"1603":{"title":"Buffer and state sizes","titles":["Combos","Advanced Configuration"]},"1604":{"title":"Modifier Combos","titles":["Combos","Advanced Configuration"]},"1605":{"title":"Strict key press order","titles":["Combos","Advanced Configuration"]},"1606":{"title":"Per Combo Timing, Holding, Tapping and Key Press Order","titles":["Combos","Advanced Configuration"]},"1607":{"title":"Generic hook to (dis)allow a combo activation","titles":["Combos","Advanced Configuration"]},"1608":{"title":"Combo timer","titles":["Combos","Advanced Configuration"]},"1609":{"title":"#define COMBO_STRICT_TIMER","titles":["Combos","Advanced Configuration","Combo timer"]},"1610":{"title":"#define COMBO_NO_TIMER","titles":["Combos","Advanced Configuration","Combo timer"]},"1611":{"title":"Customizable key releases","titles":["Combos","Advanced Configuration"]},"1612":{"title":"Customizable key repress","titles":["Combos","Advanced Configuration"]},"1613":{"title":"Layer independent combos","titles":["Combos","Advanced Configuration"]},"1614":{"title":"Combo reference layers by layer.","titles":["Combos","Advanced Configuration","Layer independent combos"]},"1615":{"title":"User callbacks","titles":["Combos"]},"1616":{"title":"Dictionary Management","titles":["Combos"]},"1617":{"title":"Command","titles":[]},"1618":{"title":"Usage","titles":["Command"]},"1619":{"title":"Configuration","titles":["Command"]},"1620":{"title":"DIP Switches","titles":[]},"1621":{"title":"DIP Switch map","titles":["DIP Switches"]},"1622":{"title":"Callbacks","titles":["DIP Switches"]},"1623":{"title":"Hardware","titles":["DIP Switches"]},"1624":{"title":"Connects each switch in the dip switch to the GPIO pin of the MCU","titles":["DIP Switches","Hardware"]},"1625":{"title":"Connect each switch in the DIP switch to an unused intersections in the key matrix.","titles":["DIP Switches","Hardware"]},"1626":{"title":"Community Modules","titles":[]},"1627":{"title":"Adding a Community Module to your build","titles":["Community Modules"]},"1628":{"title":"Adding a Community Module to your External Userspace","titles":["Community Modules"]},"1629":{"title":"Writing a QMK Community Module","titles":["Community Modules"]},"1630":{"title":"qmk_module.json","titles":["Community Modules","Writing a QMK Community Module"]},"1631":{"title":"config.h","titles":["Community Modules","Writing a QMK Community Module"]},"1632":{"title":"rules.mk / post_rules.mk","titles":["Community Modules","Writing a QMK Community Module"]},"1633":{"title":"<module>.c","titles":["Community Modules","Writing a QMK Community Module"]},"1634":{"title":"introspection.c / introspection.h","titles":["Community Modules","Writing a QMK Community Module"]},"1635":{"title":"led_matrix_module.inc","titles":["Community Modules","Writing a QMK Community Module"]},"1636":{"title":"rgb_matrix_module.inc","titles":["Community Modules","Writing a QMK Community Module"]},"1637":{"title":"Custom split keyboard data sync","titles":["Community Modules","Writing a QMK Community Module"]},"1638":{"title":"Compatible APIs","titles":["Community Modules","Writing a QMK Community Module"]},"1639":{"title":"Digitizer","titles":[]},"1640":{"title":"Usage","titles":["Digitizer"]},"1641":{"title":"Positioning","titles":["Digitizer"]},"1642":{"title":"Examples","titles":["Digitizer"]},"1643":{"title":"API","titles":["Digitizer"]},"1644":{"title":"struct digitizer_t","titles":["Digitizer","API"]},"1645":{"title":"Members","titles":["Digitizer","API","struct digitizer_t"]},"1646":{"title":"void digitizer_flush(void)","titles":["Digitizer","API"]},"1647":{"title":"void digitizer_in_range_on(void)","titles":["Digitizer","API"]},"1648":{"title":"void digitizer_in_range_off(void)","titles":["Digitizer","API"]},"1649":{"title":"void digitizer_tip_switch_on(void)","titles":["Digitizer","API"]},"1650":{"title":"void digitizer_tip_switch_off(void)","titles":["Digitizer","API"]},"1651":{"title":"void digitizer_barrel_switch_on(void)","titles":["Digitizer","API"]},"1652":{"title":"void digitizer_barrel_switch_off(void)","titles":["Digitizer","API"]},"1653":{"title":"void digitizer_set_position(float x, float y)","titles":["Digitizer","API"]},"1654":{"title":"Arguments","titles":["Digitizer","API","void digitizer_set_position(float x, float y)"]},"1655":{"title":"Dynamic Macros: Record and Replay Macros in Runtime","titles":[]},"1656":{"title":"Customization","titles":["Dynamic Macros: Record and Replay Macros in Runtime"]},"1657":{"title":"DYNAMIC_MACRO_USER_CALL","titles":["Dynamic Macros: Record and Replay Macros in Runtime","Customization"]},"1658":{"title":"User Hooks","titles":["Dynamic Macros: Record and Replay Macros in Runtime","Customization"]},"1659":{"title":"Encoders","titles":[]},"1660":{"title":"Split Keyboards","titles":["Encoders"]},"1661":{"title":"Encoder map","titles":["Encoders"]},"1662":{"title":"Callbacks","titles":["Encoders"]},"1663":{"title":"Hardware","titles":["Encoders"]},"1664":{"title":"Multiple Encoders","titles":["Encoders"]},"1665":{"title":"Grave Escape","titles":[]},"1666":{"title":"Usage","titles":["Grave Escape"]},"1667":{"title":"What Your OS Sees","titles":["Grave Escape"]},"1668":{"title":"Keycodes","titles":["Grave Escape"]},"1669":{"title":"Caveats","titles":["Grave Escape","Keycodes"]},"1670":{"title":"Configuration","titles":["Grave Escape"]},"1671":{"title":"Haptic Feedback","titles":[]},"1672":{"title":"Haptic feedback rules.mk options","titles":["Haptic Feedback"]},"1673":{"title":"Known Supported Hardware","titles":["Haptic Feedback"]},"1674":{"title":"Haptic Keycodes","titles":["Haptic Feedback"]},"1675":{"title":"Solenoids","titles":["Haptic Feedback","Haptic Keycodes"]},"1676":{"title":"DRV2605L","titles":["Haptic Feedback","Haptic Keycodes"]},"1677":{"title":"Feedback motor setup","titles":["Haptic Feedback","Haptic Keycodes","DRV2605L"]},"1678":{"title":"ERM","titles":["Haptic Feedback","Haptic Keycodes","DRV2605L","Feedback motor setup"]},"1679":{"title":"LRA","titles":["Haptic Feedback","Haptic Keycodes","DRV2605L","Feedback motor setup"]},"1680":{"title":"DRV2605L waveform library","titles":["Haptic Feedback","Haptic Keycodes","DRV2605L"]},"1681":{"title":"Optional DRV2605L defines","titles":["Haptic Feedback","Haptic Keycodes"]},"1682":{"title":"DRV2605L Continuous Haptic Mode","titles":["Haptic Feedback","Haptic Keycodes"]},"1683":{"title":"Haptic Key Exclusion","titles":["Haptic Feedback"]},"1684":{"title":"NO_HAPTIC_MOD","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1685":{"title":"NO_HAPTIC_ALPHA","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1686":{"title":"NO_HAPTIC_PUNCTUATION","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1687":{"title":"NO_HAPTIC_LOCKKEYS","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1688":{"title":"NO_HAPTIC_NAV","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1689":{"title":"NO_HAPTIC_NUMERIC","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1690":{"title":"HD44780 LCD Driver","titles":[]},"1691":{"title":"Supported Hardware","titles":["HD44780 LCD Driver"]},"1692":{"title":"Usage","titles":["HD44780 LCD Driver"]},"1693":{"title":"Basic Configuration","titles":["HD44780 LCD Driver"]},"1694":{"title":"Examples","titles":["HD44780 LCD Driver"]},"1695":{"title":"Hello World","titles":["HD44780 LCD Driver","Examples"]},"1696":{"title":"Custom Character Definition","titles":["HD44780 LCD Driver","Examples"]},"1697":{"title":"API","titles":["HD44780 LCD Driver"]},"1698":{"title":"void hd44780_init(bool cursor, bool blink)","titles":["HD44780 LCD Driver","API"]},"1699":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_init(bool cursor, bool blink)"]},"1700":{"title":"void hd44780_clear(void)","titles":["HD44780 LCD Driver","API"]},"1701":{"title":"void hd44780_home(void)","titles":["HD44780 LCD Driver","API"]},"1702":{"title":"void hd44780_on(bool cursor, bool blink)","titles":["HD44780 LCD Driver","API"]},"1703":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_on(bool cursor, bool blink)"]},"1704":{"title":"void hd44780_off(void)","titles":["HD44780 LCD Driver","API"]},"1705":{"title":"void hd44780_set_cursor(uint8_t col, uint8_t line)","titles":["HD44780 LCD Driver","API"]},"1706":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_set_cursor(uint8_t col, uint8_t line)"]},"1707":{"title":"void hd44780_putc(char c)","titles":["HD44780 LCD Driver","API"]},"1708":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_putc(char c)"]},"1709":{"title":"void hd44780_puts(const char *s)","titles":["HD44780 LCD Driver","API"]},"1710":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_puts(const char *s)"]},"1711":{"title":"void hd44780_puts_P(const char *s)","titles":["HD44780 LCD Driver","API"]},"1712":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_puts_P(const char *s)"]},"1713":{"title":"void hd44780_define_char(uint8_t index, uint8_t *data)","titles":["HD44780 LCD Driver","API"]},"1714":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_define_char(uint8_t index, uint8_t *data)"]},"1715":{"title":"void hd44780_define_char_P(uint8_t index, const uint8_t *data)","titles":["HD44780 LCD Driver","API"]},"1716":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_define_char_P(uint8_t index, const uint8_t *data)"]},"1717":{"title":"bool hd44780_busy(void)","titles":["HD44780 LCD Driver","API"]},"1718":{"title":"Return Value","titles":["HD44780 LCD Driver","API","bool hd44780_busy(void)"]},"1719":{"title":"void hd44780_write(uint8_t data, bool isData)","titles":["HD44780 LCD Driver","API"]},"1720":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_write(uint8_t data, bool isData)"]},"1721":{"title":"uint8_t hd44780_read(bool isData)","titles":["HD44780 LCD Driver","API"]},"1722":{"title":"Arguments","titles":["HD44780 LCD Driver","API","uint8_t hd44780_read(bool isData)"]},"1723":{"title":"Return Value","titles":["HD44780 LCD Driver","API","uint8_t hd44780_read(bool isData)"]},"1724":{"title":"void hd44780_command(uint8_t command)","titles":["HD44780 LCD Driver","API"]},"1725":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_command(uint8_t command)"]},"1726":{"title":"void hd44780_data(uint8_t data)","titles":["HD44780 LCD Driver","API"]},"1727":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_data(uint8_t data)"]},"1728":{"title":"void hd44780_set_cgram_address(uint8_t address)","titles":["HD44780 LCD Driver","API"]},"1729":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_set_cgram_address(uint8_t address)"]},"1730":{"title":"void hd44780_set_ddram_address(uint8_t address)","titles":["HD44780 LCD Driver","API"]},"1731":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_set_ddram_address(uint8_t address)"]},"1732":{"title":"Key Lock","titles":[]},"1733":{"title":"Usage","titles":["Key Lock"]},"1734":{"title":"Keycodes","titles":["Key Lock"]},"1735":{"title":"Caveats","titles":["Key Lock"]},"1736":{"title":"Key Overrides","titles":[]},"1737":{"title":"A few more examples to get started: You could use key overrides to...","titles":["Key Overrides"]},"1738":{"title":"Setup","titles":["Key Overrides"]},"1739":{"title":"Creating Key Overrides","titles":["Key Overrides"]},"1740":{"title":"ko_make_basic(modifiers, key, replacement)","titles":["Key Overrides","Creating Key Overrides"]},"1741":{"title":"ko_make_with_layers(modifiers, key, replacement, layers)","titles":["Key Overrides","Creating Key Overrides"]},"1742":{"title":"ko_make_with_layers_and_negmods(modifiers, key, replacement, layers, negative_mods)","titles":["Key Overrides","Creating Key Overrides"]},"1743":{"title":"ko_make_with_layers_negmods_and_options(modifiers, key, replacement, layers, negative_mods, options)","titles":["Key Overrides","Creating Key Overrides"]},"1744":{"title":"Simple Example","titles":["Key Overrides"]},"1745":{"title":"Intermediate Difficulty Examples","titles":["Key Overrides"]},"1746":{"title":"Media Controls & Screen Brightness","titles":["Key Overrides","Intermediate Difficulty Examples"]},"1747":{"title":"Flexible macOS-friendly Grave Escape","titles":["Key Overrides","Intermediate Difficulty Examples"]},"1748":{"title":"Advanced Examples","titles":["Key Overrides"]},"1749":{"title":"Modifiers as Layer Keys","titles":["Key Overrides","Advanced Examples"]},"1750":{"title":"Keycodes","titles":["Key Overrides"]},"1751":{"title":"Reference for key_override_t","titles":["Key Overrides"]},"1752":{"title":"Reference for ko_option_t","titles":["Key Overrides"]},"1753":{"title":"For Advanced Users: Inner Workings","titles":["Key Overrides"]},"1754":{"title":"Activation","titles":["Key Overrides","For Advanced Users: Inner Workings","Modifiers as Layer Keys"]},"1755":{"title":"Deactivation","titles":["Key Overrides","For Advanced Users: Inner Workings","Modifiers as Layer Keys"]},"1756":{"title":"Key Repeat Delay","titles":["Key Overrides","For Advanced Users: Inner Workings","Modifiers as Layer Keys"]},"1757":{"title":"Difference to Combos","titles":["Key Overrides"]},"1758":{"title":"Solution to the problem of flashing modifiers","titles":["Key Overrides"]},"1759":{"title":"Layer Lock","titles":[]},"1760":{"title":"How do I enable Layer Lock","titles":["Layer Lock"]},"1761":{"title":"Example use","titles":["Layer Lock"]},"1762":{"title":"Idle timeout","titles":["Layer Lock"]},"1763":{"title":"Functions","titles":["Layer Lock"]},"1764":{"title":"Representing the current Layer Lock state","titles":["Layer Lock"]},"1765":{"title":"Combine Layer Lock with a mod-tap","titles":["Layer Lock"]},"1766":{"title":"Joystick","titles":[]},"1767":{"title":"Usage","titles":["Joystick"]},"1768":{"title":"Configuration","titles":["Joystick"]},"1769":{"title":"Hat Switch","titles":["Joystick","Configuration"]},"1770":{"title":"Axes","titles":["Joystick","Configuration"]},"1771":{"title":"Virtual Axes","titles":["Joystick","Configuration","Axes"]},"1772":{"title":"Keycodes","titles":["Joystick"]},"1773":{"title":"API","titles":["Joystick"]},"1774":{"title":"struct joystick_t","titles":["Joystick","API"]},"1775":{"title":"Members","titles":["Joystick","API","struct joystick_t"]},"1776":{"title":"struct joystick_config_t","titles":["Joystick","API"]},"1777":{"title":"Members","titles":["Joystick","API","struct joystick_config_t"]},"1778":{"title":"void joystick_flush(void)","titles":["Joystick","API"]},"1779":{"title":"void register_joystick_button(uint8_t button)","titles":["Joystick","API"]},"1780":{"title":"Arguments","titles":["Joystick","API","void register_joystick_button(uint8_t button)"]},"1781":{"title":"void unregister_joystick_button(uint8_t button)","titles":["Joystick","API"]},"1782":{"title":"Arguments","titles":["Joystick","API","void unregister_joystick_button(uint8_t button)"]},"1783":{"title":"int16_t joystick_read_axis(uint8_t axis)","titles":["Joystick","API"]},"1784":{"title":"Arguments","titles":["Joystick","API","int16_t joystick_read_axis(uint8_t axis)"]},"1785":{"title":"Return Value","titles":["Joystick","API","int16_t joystick_read_axis(uint8_t axis)"]},"1786":{"title":"void joystick_set_axis(uint8_t axis, int16_t value)","titles":["Joystick","API"]},"1787":{"title":"Arguments","titles":["Joystick","API","void joystick_set_axis(uint8_t axis, int16_t value)"]},"1788":{"title":"void joystick_set_hat(int8_t value)","titles":["Joystick","API"]},"1789":{"title":"Arguments","titles":["Joystick","API","void joystick_set_hat(int8_t value)"]},"1790":{"title":"LED Indicators","titles":[]},"1791":{"title":"Configuration Options","titles":["LED Indicators"]},"1792":{"title":"LED update function","titles":["LED Indicators"]},"1793":{"title":"Example of keyboard LED update implementation","titles":["LED Indicators","LED update function"]},"1794":{"title":"Example of user LED update implementation","titles":["LED Indicators","LED update function"]},"1795":{"title":"Host keyboard LED state","titles":["LED Indicators"]},"1796":{"title":"led_update_ports()","titles":["LED Indicators"]},"1797":{"title":"Setting Physical LED State","titles":["LED Indicators"]},"1798":{"title":"Ergodox Boards","titles":["LED Indicators","Setting Physical LED State"]},"1799":{"title":"The Leader Key: A New Kind of Modifier","titles":[]},"1800":{"title":"Usage","titles":["The Leader Key: A New Kind of Modifier"]},"1801":{"title":"Callbacks","titles":["The Leader Key: A New Kind of Modifier"]},"1802":{"title":"Basic Configuration","titles":["The Leader Key: A New Kind of Modifier"]},"1803":{"title":"Timeout","titles":["The Leader Key: A New Kind of Modifier","Basic Configuration"]},"1804":{"title":"Per-Key Timeout","titles":["The Leader Key: A New Kind of Modifier","Basic Configuration"]},"1805":{"title":"Disabling Initial Timeout","titles":["The Leader Key: A New Kind of Modifier","Basic Configuration"]},"1806":{"title":"Strict Key Processing","titles":["The Leader Key: A New Kind of Modifier","Basic Configuration"]},"1807":{"title":"Example","titles":["The Leader Key: A New Kind of Modifier"]},"1808":{"title":"Keycodes","titles":["The Leader Key: A New Kind of Modifier"]},"1809":{"title":"API","titles":["The Leader Key: A New Kind of Modifier"]},"1810":{"title":"void leader_start_user(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1811":{"title":"void leader_end_user(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1812":{"title":"bool leader_add_user(uint16_t keycode)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1813":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_add_user(uint16_t keycode)"]},"1814":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_add_user(uint16_t keycode)"]},"1815":{"title":"void leader_start(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1816":{"title":"void leader_end(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1817":{"title":"bool leader_sequence_active(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1818":{"title":"bool leader_sequence_add(uint16_t keycode)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1819":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_add(uint16_t keycode)"]},"1820":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_add(uint16_t keycode)"]},"1821":{"title":"bool leader_sequence_timed_out(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1822":{"title":"bool leader_reset_timer(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1823":{"title":"bool leader_sequence_one_key(uint16_t kc)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1824":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_one_key(uint16_t kc)"]},"1825":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_one_key(uint16_t kc)"]},"1826":{"title":"bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1827":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)"]},"1828":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)"]},"1829":{"title":"bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1830":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)"]},"1831":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)"]},"1832":{"title":"bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1833":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)"]},"1834":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)"]},"1835":{"title":"bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1836":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)"]},"1837":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)"]},"1838":{"title":"LED Matrix Lighting","titles":[]},"1839":{"title":"Driver Configuration","titles":["LED Matrix Lighting"]},"1840":{"title":"Common Configuration","titles":["LED Matrix Lighting"]},"1841":{"title":"Flags","titles":["LED Matrix Lighting"]},"1842":{"title":"Keycodes","titles":["LED Matrix Lighting"]},"1843":{"title":"LED Matrix Effects","titles":["LED Matrix Lighting"]},"1844":{"title":"Custom LED Matrix Effects","titles":["LED Matrix Lighting"]},"1845":{"title":"Naming","titles":["LED Matrix Lighting"]},"1846":{"title":"Additional config.h Options","titles":["LED Matrix Lighting"]},"1847":{"title":"EEPROM storage","titles":["LED Matrix Lighting"]},"1848":{"title":"Callbacks","titles":["LED Matrix Lighting"]},"1849":{"title":"Indicators","titles":["LED Matrix Lighting","Callbacks"]},"1850":{"title":"API","titles":["LED Matrix Lighting"]},"1851":{"title":"void led_matrix_toggle(void)","titles":["LED Matrix Lighting","API"]},"1852":{"title":"void led_matrix_toggle_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1853":{"title":"void led_matrix_enable(void)","titles":["LED Matrix Lighting","API"]},"1854":{"title":"void led_matrix_enable_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1855":{"title":"void led_matrix_disable(void)","titles":["LED Matrix Lighting","API"]},"1856":{"title":"void led_matrix_disable_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1857":{"title":"bool led_matrix_is_enabled(void)","titles":["LED Matrix Lighting","API"]},"1858":{"title":"Return Value","titles":["LED Matrix Lighting","API","bool led_matrix_is_enabled(void)"]},"1859":{"title":"void led_matrix_set_value(uint8_t index, uint8_t v)","titles":["LED Matrix Lighting","API"]},"1860":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_value(uint8_t index, uint8_t v)"]},"1861":{"title":"void led_matrix_set_value_all(uint8_t v)","titles":["LED Matrix Lighting","API"]},"1862":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_value_all(uint8_t v)"]},"1863":{"title":"void led_matrix_mode(uint8_t mode)","titles":["LED Matrix Lighting","API"]},"1864":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_mode(uint8_t mode)"]},"1865":{"title":"void led_matrix_mode_noeeprom(uint8_t mode)","titles":["LED Matrix Lighting","API"]},"1866":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_mode_noeeprom(uint8_t mode)"]},"1867":{"title":"void led_matrix_step(void)","titles":["LED Matrix Lighting","API"]},"1868":{"title":"void led_matrix_step_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1869":{"title":"void led_matrix_step_reverse(void)","titles":["LED Matrix Lighting","API"]},"1870":{"title":"void led_matrix_step_reverse_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1871":{"title":"uint8_t led_matrix_get_mode(void)","titles":["LED Matrix Lighting","API"]},"1872":{"title":"Return Value","titles":["LED Matrix Lighting","API","uint8_t led_matrix_get_mode(void)"]},"1873":{"title":"void val_matrix_increase_val(void)","titles":["LED Matrix Lighting","API"]},"1874":{"title":"void led_matrix_increase_val_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1875":{"title":"void led_matrix_decrease_val(void)","titles":["LED Matrix Lighting","API"]},"1876":{"title":"void led_matrix_decrease_val_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1877":{"title":"uint8_t led_matrix_get_val(void)","titles":["LED Matrix Lighting","API"]},"1878":{"title":"Return Value","titles":["LED Matrix Lighting","API","uint8_t led_matrix_get_val(void)"]},"1879":{"title":"void led_matrix_increase_speed(void)","titles":["LED Matrix Lighting","API"]},"1880":{"title":"void led_matrix_increase_speed_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1881":{"title":"void led_matrix_decrease_speed(void)","titles":["LED Matrix Lighting","API"]},"1882":{"title":"void led_matrix_decrease_speed_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1883":{"title":"void led_matrix_set_speed(uint8_t speed)","titles":["LED Matrix Lighting","API"]},"1884":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_speed(uint8_t speed)"]},"1885":{"title":"void led_matrix_set_speed_noeeprom(uint8_t speed)","titles":["LED Matrix Lighting","API"]},"1886":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_speed_noeeprom(uint8_t speed)"]},"1887":{"title":"uint8_t led_matrix_get_speed(void)","titles":["LED Matrix Lighting","API"]},"1888":{"title":"Return Value","titles":["LED Matrix Lighting","API","uint8_t led_matrix_get_speed(void)"]},"1889":{"title":"void led_matrix_set_flags(led_flags_t flags)","titles":["LED Matrix Lighting","API"]},"1890":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_flags(led_flags_t flags)"]},"1891":{"title":"void led_matrix_set_flags_noeeprom(led_flags_t flags)","titles":["LED Matrix Lighting","API"]},"1892":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_flags_noeeprom(led_flags_t flags)"]},"1893":{"title":"void led_matrix_flags_step(void)","titles":["LED Matrix Lighting","API"]},"1894":{"title":"void led_matrix_flags_step_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1895":{"title":"void led_matrix_flags_step_reverse(void)","titles":["LED Matrix Lighting","API"]},"1896":{"title":"void led_matrix_flags_step_reverse_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1897":{"title":"uint8_t led_matrix_get_flags(void)","titles":["LED Matrix Lighting","API"]},"1898":{"title":"Return Value","titles":["LED Matrix Lighting","API","uint8_t led_matrix_get_flags(void)"]},"1899":{"title":"void led_matrix_reload_from_eeprom(void)","titles":["LED Matrix Lighting","API"]},"1900":{"title":"bool led_matrix_get_suspend_state(void)","titles":["LED Matrix Lighting","API"]},"1901":{"title":"Return Value","titles":["LED Matrix Lighting","API","bool led_matrix_get_suspend_state(void)"]},"1902":{"title":"bool led_matrix_indicators_kb(void)","titles":["LED Matrix Lighting","API"]},"1903":{"title":"Return Value","titles":["LED Matrix Lighting","API","bool led_matrix_indicators_kb(void)"]},"1904":{"title":"bool led_matrix_indicators_user(void)","titles":["LED Matrix Lighting","API"]},"1905":{"title":"Return Value","titles":["LED Matrix Lighting","API","bool led_matrix_indicators_user(void)"]},"1906":{"title":"bool led_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)","titles":["LED Matrix Lighting","API"]},"1907":{"title":"Arguments","titles":["LED Matrix Lighting","API"]},"1908":{"title":"Return Value","titles":["LED Matrix Lighting","API","Arguments"]},"1909":{"title":"bool led_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)","titles":["LED Matrix Lighting","API"]},"1910":{"title":"Arguments","titles":["LED Matrix Lighting","API"]},"1911":{"title":"Return Value","titles":["LED Matrix Lighting","API","Arguments"]},"1912":{"title":"MIDI","titles":[]},"1913":{"title":"Usage","titles":["MIDI"]},"1914":{"title":"Caveats","titles":["MIDI","Usage"]},"1915":{"title":"Basic MIDI","titles":["MIDI","Usage"]},"1916":{"title":"Advanced MIDI","titles":["MIDI","Usage"]},"1917":{"title":"Sending Control Change (CC) Messages","titles":["MIDI","Usage","Advanced MIDI"]},"1918":{"title":"Example code for using Generic On Off Switches as per MIDI Specification.","titles":["MIDI","Usage","Advanced MIDI"]},"1919":{"title":"Keycodes","titles":["MIDI","Usage"]},"1920":{"title":"Configuration","titles":["MIDI","Usage"]},"1921":{"title":"References","titles":["MIDI","Usage"]},"1922":{"title":"MIDI Specification","titles":["MIDI","Usage","References"]},"1923":{"title":"QMK C Files","titles":["MIDI","Usage","References"]},"1924":{"title":"Mouse keys","titles":[]},"1925":{"title":"Adding mouse keys to your keyboard","titles":["Mouse keys"]},"1926":{"title":"Enabling mouse keys","titles":["Mouse keys","Adding mouse keys to your keyboard"]},"1927":{"title":"Mapping mouse actions","titles":["Mouse keys","Adding mouse keys to your keyboard"]},"1928":{"title":"Configuring mouse keys","titles":["Mouse keys"]},"1929":{"title":"Accelerated mode","titles":["Mouse keys","Configuring mouse keys"]},"1930":{"title":"Kinetic Mode","titles":["Mouse keys","Configuring mouse keys"]},"1931":{"title":"Constant mode","titles":["Mouse keys","Configuring mouse keys"]},"1932":{"title":"Combined mode","titles":["Mouse keys","Configuring mouse keys"]},"1933":{"title":"Inertia mode","titles":["Mouse keys","Configuring mouse keys"]},"1934":{"title":"Overlapping mouse key control","titles":["Mouse keys","Configuring mouse keys"]},"1935":{"title":"Use with PS/2 Mouse and Pointing Device","titles":["Mouse keys"]},"1936":{"title":"OLED Driver","titles":[]},"1937":{"title":"Supported Hardware","titles":["OLED Driver"]},"1938":{"title":"Usage","titles":["OLED Driver"]},"1939":{"title":"OLED type","titles":["OLED Driver"]},"1940":{"title":"Logo Example","titles":["OLED Driver"]},"1941":{"title":"Buffer Read Example","titles":["OLED Driver"]},"1942":{"title":"Other Examples","titles":["OLED Driver"]},"1943":{"title":"Basic Configuration","titles":["OLED Driver"]},"1944":{"title":"I2C Configuration","titles":["OLED Driver","Basic Configuration"]},"1945":{"title":"SPI Configuration","titles":["OLED Driver","Basic Configuration"]},"1946":{"title":"128x64 & Custom sized OLED Displays","titles":["OLED Driver"]},"1947":{"title":"90 Degree Rotation - Technical Mumbo Jumbo","titles":["OLED Driver","128x64 & Custom sized OLED Displays"]},"1948":{"title":"OLED API","titles":["OLED Driver"]},"1949":{"title":"SSD1306.h Driver Conversion Guide","titles":["OLED Driver"]},"1950":{"title":"OS Detection","titles":[]},"1951":{"title":"Usage","titles":["OS Detection"]},"1952":{"title":"Callbacks","titles":["OS Detection"]},"1953":{"title":"OS detection stability","titles":["OS Detection"]},"1954":{"title":"Configuration Options","titles":["OS Detection"]},"1955":{"title":"Troubleshooting","titles":["OS Detection"]},"1956":{"title":"Debug","titles":["OS Detection"]},"1957":{"title":"Credits","titles":["OS Detection"]},"1958":{"title":"Programmable Button","titles":[]},"1959":{"title":"Usage","titles":["Programmable Button"]},"1960":{"title":"Keycodes","titles":["Programmable Button"]},"1961":{"title":"API","titles":["Programmable Button"]},"1962":{"title":"void programmable_button_clear(void)","titles":["Programmable Button","API"]},"1963":{"title":"void programmable_button_add(uint8_t index)","titles":["Programmable Button","API"]},"1964":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_add(uint8_t index)"]},"1965":{"title":"void programmable_button_remove(uint8_t index)","titles":["Programmable Button","API"]},"1966":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_remove(uint8_t index)"]},"1967":{"title":"void programmable_button_register(uint8_t index)","titles":["Programmable Button","API"]},"1968":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_register(uint8_t index)"]},"1969":{"title":"void programmable_button_unregister(uint8_t index)","titles":["Programmable Button","API"]},"1970":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_unregister(uint8_t index)"]},"1971":{"title":"bool programmable_button_is_on(uint8_t index)","titles":["Programmable Button","API"]},"1972":{"title":"Arguments","titles":["Programmable Button","API","bool programmable_button_is_on(uint8_t index)"]},"1973":{"title":"Return Value","titles":["Programmable Button","API","bool programmable_button_is_on(uint8_t index)"]},"1974":{"title":"void programmable_button_flush(void)","titles":["Programmable Button","API"]},"1975":{"title":"uint32_t programmable_button_get_report(void)","titles":["Programmable Button","API"]},"1976":{"title":"Return Value","titles":["Programmable Button","API","uint32_t programmable_button_get_report(void)"]},"1977":{"title":"void programmable_button_set_report(uint32_t report)","titles":["Programmable Button","API"]},"1978":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_set_report(uint32_t report)"]},"1979":{"title":"PS/2 Mouse Support","titles":[]},"1980":{"title":"The Circuitry between Trackpoint and Controller","titles":["PS/2 Mouse Support"]},"1981":{"title":"Driver Configuration","titles":["PS/2 Mouse Support"]},"1982":{"title":"Busywait Driver","titles":["PS/2 Mouse Support","Driver Configuration"]},"1983":{"title":"Interrupt Driver (AVR/ATMega32u4)","titles":["PS/2 Mouse Support","Driver Configuration"]},"1984":{"title":"Interrupt Driver (ARM chibios)","titles":["PS/2 Mouse Support","Driver Configuration"]},"1985":{"title":"USART Driver","titles":["PS/2 Mouse Support","Driver Configuration"]},"1986":{"title":"RP2040 PIO Driver","titles":["PS/2 Mouse Support","Driver Configuration"]},"1987":{"title":"Additional Settings","titles":["PS/2 Mouse Support"]},"1988":{"title":"PS/2 Mouse Features","titles":["PS/2 Mouse Support","Additional Settings"]},"1989":{"title":"Fine Control","titles":["PS/2 Mouse Support","Additional Settings"]},"1990":{"title":"Scroll Button","titles":["PS/2 Mouse Support","Additional Settings"]},"1991":{"title":"Invert Mouse buttons","titles":["PS/2 Mouse Support","Additional Settings"]},"1992":{"title":"Invert Mouse and Scroll Axes","titles":["PS/2 Mouse Support","Additional Settings"]},"1993":{"title":"Rotate Mouse Axes","titles":["PS/2 Mouse Support","Additional Settings"]},"1994":{"title":"Debug Settings","titles":["PS/2 Mouse Support","Additional Settings"]},"1995":{"title":"Movement Hook","titles":["PS/2 Mouse Support","Additional Settings"]},"1996":{"title":"Pointing Device","titles":[]},"1997":{"title":"Sensor Drivers","titles":["Pointing Device"]},"1998":{"title":"ADNS 5050 Sensor","titles":["Pointing Device","Sensor Drivers"]},"1999":{"title":"ADNS 9800 Sensor","titles":["Pointing Device","Sensor Drivers"]},"2000":{"title":"Analog Joystick","titles":["Pointing Device","Sensor Drivers"]},"2001":{"title":"Azoteq IQS5XX Trackpad","titles":["Pointing Device","Sensor Drivers"]},"2002":{"title":"Device settings","titles":["Pointing Device","Sensor Drivers","Azoteq IQS5XX Trackpad"]},"2003":{"title":"Gesture settings","titles":["Pointing Device","Sensor Drivers","Azoteq IQS5XX Trackpad"]},"2004":{"title":"Rotation settings","titles":["Pointing Device","Sensor Drivers","Azoteq IQS5XX Trackpad"]},"2005":{"title":"Cirque Trackpad","titles":["Pointing Device","Sensor Drivers"]},"2006":{"title":"Common settings","titles":["Pointing Device","Sensor Drivers","Cirque Trackpad"]},"2007":{"title":"Absolute mode settings","titles":["Pointing Device","Sensor Drivers","Cirque Trackpad"]},"2008":{"title":"Absolute mode gestures","titles":["Pointing Device","Sensor Drivers","Cirque Trackpad"]},"2009":{"title":"Relative mode gestures","titles":["Pointing Device","Sensor Drivers","Cirque Trackpad"]},"2010":{"title":"PAW 3204 Sensor","titles":["Pointing Device","Sensor Drivers"]},"2011":{"title":"PAW-3222 Sensor","titles":["Pointing Device","Sensor Drivers"]},"2012":{"title":"Pimoroni Trackball","titles":["Pointing Device","Sensor Drivers"]},"2013":{"title":"PMW3320 Sensor","titles":["Pointing Device","Sensor Drivers"]},"2014":{"title":"PMW 3360 and PMW 3389 Sensor","titles":["Pointing Device","Sensor Drivers"]},"2015":{"title":"Custom Driver","titles":["Pointing Device","Sensor Drivers"]},"2016":{"title":"Common Configuration","titles":["Pointing Device"]},"2017":{"title":"High Resolution Scrolling","titles":["Pointing Device"]},"2018":{"title":"Split Keyboard Configuration","titles":["Pointing Device"]},"2019":{"title":"Callbacks and Functions","titles":["Pointing Device"]},"2020":{"title":"Split Keyboard Callbacks and Functions","titles":["Pointing Device"]},"2021":{"title":"Manipulating Mouse Reports","titles":[]},"2022":{"title":"Examples","titles":["Manipulating Mouse Reports"]},"2023":{"title":"Custom Mouse Keycode","titles":["Manipulating Mouse Reports","Examples"]},"2024":{"title":"Drag Scroll or Mouse Scroll","titles":["Manipulating Mouse Reports","Examples"]},"2025":{"title":"Advanced Drag Scroll","titles":["Manipulating Mouse Reports","Examples"]},"2026":{"title":"Split Examples","titles":["Manipulating Mouse Reports"]},"2027":{"title":"Single Pointing Device","titles":["Manipulating Mouse Reports","Split Examples"]},"2028":{"title":"Combined Pointing Devices","titles":["Manipulating Mouse Reports","Split Examples"]},"2029":{"title":"Troubleshooting","titles":[]},"2030":{"title":"Automatic Mouse Layer","titles":[]},"2031":{"title":"Behaviour of Layer keys that activate the target layer","titles":["Automatic Mouse Layer"]},"2032":{"title":"How to enable:","titles":["Automatic Mouse Layer"]},"2033":{"title":"How to Customize:","titles":["Automatic Mouse Layer"]},"2034":{"title":"config.h Options:","titles":["Automatic Mouse Layer","How to Customize:"]},"2035":{"title":"Adding mouse keys","titles":["Automatic Mouse Layer","How to Customize:"]},"2036":{"title":"Callbacks for setting up additional key codes as mouse keys:","titles":["Automatic Mouse Layer","How to Customize:","Adding mouse keys"]},"2037":{"title":"To use the callback function to add mouse keys:","titles":["Automatic Mouse Layer","How to Customize:","Adding mouse keys","Callbacks for setting up additional key codes as mouse keys:"]},"2038":{"title":"Advanced control","titles":["Automatic Mouse Layer"]},"2039":{"title":"Functions to control auto mouse enable and target layer:","titles":["Automatic Mouse Layer","Advanced control"]},"2040":{"title":"Functions for handling custom key events:","titles":["Automatic Mouse Layer","Advanced control"]},"2041":{"title":"Advanced control examples","titles":["Automatic Mouse Layer","Advanced control"]},"2042":{"title":"Disable auto mouse on certain layers:","titles":["Automatic Mouse Layer","Advanced control","Advanced control examples"]},"2043":{"title":"Set different target layer when a particular layer is active:","titles":["Automatic Mouse Layer","Advanced control","Advanced control examples"]},"2044":{"title":"Use custom keys to control auto mouse:","titles":["Automatic Mouse Layer","Advanced control"]},"2045":{"title":"Customize Target Layer Activation","titles":["Automatic Mouse Layer"]},"2046":{"title":"Auto Mouse for Custom Pointing Device Task","titles":["Automatic Mouse Layer"]},"2047":{"title":"Raw HID","titles":[]},"2048":{"title":"Usage","titles":["Raw HID"]},"2049":{"title":"Basic Configuration","titles":["Raw HID"]},"2050":{"title":"Sending Data to the Keyboard","titles":["Raw HID"]},"2051":{"title":"Receiving Data from the Keyboard","titles":["Raw HID"]},"2052":{"title":"Simple Example","titles":["Raw HID"]},"2053":{"title":"API","titles":["Raw HID"]},"2054":{"title":"void raw_hid_receive(uint8_t *data, uint8_t length)","titles":["Raw HID","API"]},"2055":{"title":"Arguments","titles":["Raw HID","API","void raw_hid_receive(uint8_t *data, uint8_t length)"]},"2056":{"title":"void raw_hid_send(uint8_t *data, uint8_t length)","titles":["Raw HID","API"]},"2057":{"title":"Arguments","titles":["Raw HID","API","void raw_hid_send(uint8_t *data, uint8_t length)"]},"2058":{"title":"RGB Matrix Lighting","titles":[]},"2059":{"title":"Driver Configuration","titles":["RGB Matrix Lighting"]},"2060":{"title":"Common Configuration","titles":["RGB Matrix Lighting"]},"2061":{"title":"Flags","titles":["RGB Matrix Lighting"]},"2062":{"title":"Keycodes","titles":["RGB Matrix Lighting"]},"2063":{"title":"RGB Matrix Effects","titles":["RGB Matrix Lighting"]},"2064":{"title":"RGB Matrix Effect Typing Heatmap","titles":["RGB Matrix Lighting","RGB Matrix Effects"]},"2065":{"title":"RGB Matrix Effect Solid Reactive","titles":["RGB Matrix Lighting","RGB Matrix Effects"]},"2066":{"title":"Custom RGB Matrix Effects","titles":["RGB Matrix Lighting"]},"2067":{"title":"Colors","titles":["RGB Matrix Lighting"]},"2068":{"title":"Naming","titles":["RGB Matrix Lighting"]},"2069":{"title":"Additional config.h Options","titles":["RGB Matrix Lighting"]},"2070":{"title":"EEPROM storage","titles":["RGB Matrix Lighting"]},"2071":{"title":"Callbacks","titles":["RGB Matrix Lighting"]},"2072":{"title":"Indicators","titles":["RGB Matrix Lighting","Callbacks"]},"2073":{"title":"Indicator Examples","titles":["RGB Matrix Lighting","Callbacks"]},"2074":{"title":"Examples","titles":["RGB Matrix Lighting","Callbacks","Indicator Examples"]},"2075":{"title":"Indicators without RGB Matrix Effect","titles":["RGB Matrix Lighting","Callbacks","Indicator Examples"]},"2076":{"title":"API","titles":["RGB Matrix Lighting"]},"2077":{"title":"void rgb_matrix_toggle(void)","titles":["RGB Matrix Lighting","API"]},"2078":{"title":"void rgb_matrix_toggle_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2079":{"title":"void rgb_matrix_enable(void)","titles":["RGB Matrix Lighting","API"]},"2080":{"title":"void rgb_matrix_enable_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2081":{"title":"void rgb_matrix_disable(void)","titles":["RGB Matrix Lighting","API"]},"2082":{"title":"void rgb_matrix_disable_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2083":{"title":"bool rgb_matrix_is_enabled(void)","titles":["RGB Matrix Lighting","API"]},"2084":{"title":"Return Value","titles":["RGB Matrix Lighting","API","bool rgb_matrix_is_enabled(void)"]},"2085":{"title":"void rgb_matrix_set_color(uint8_t index, uint8_t r, uint8_t g, uint8_t b)","titles":["RGB Matrix Lighting","API"]},"2086":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_color(uint8_t index, uint8_t r, uint8_t g, uint8_t b)"]},"2087":{"title":"void rgb_matrix_set_color_all(uint8_t r, uint8_t g, uint8_t b)","titles":["RGB Matrix Lighting","API"]},"2088":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_color_all(uint8_t r, uint8_t g, uint8_t b)"]},"2089":{"title":"void rgb_matrix_mode(uint8_t mode)","titles":["RGB Matrix Lighting","API"]},"2090":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_mode(uint8_t mode)"]},"2091":{"title":"void rgb_matrix_mode_noeeprom(uint8_t mode)","titles":["RGB Matrix Lighting","API"]},"2092":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_mode_noeeprom(uint8_t mode)"]},"2093":{"title":"void rgb_matrix_step(void)","titles":["RGB Matrix Lighting","API"]},"2094":{"title":"void rgb_matrix_step_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2095":{"title":"void rgb_matrix_step_reverse(void)","titles":["RGB Matrix Lighting","API"]},"2096":{"title":"void rgb_matrix_step_reverse_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2097":{"title":"uint8_t rgb_matrix_get_mode(void)","titles":["RGB Matrix Lighting","API"]},"2098":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_mode(void)"]},"2099":{"title":"void rgb_matrix_increase_hue(void)","titles":["RGB Matrix Lighting","API"]},"2100":{"title":"void rgb_matrix_increase_hue_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2101":{"title":"void rgb_matrix_decrease_hue(void)","titles":["RGB Matrix Lighting","API"]},"2102":{"title":"void rgb_matrix_decrease_hue_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2103":{"title":"uint8_t rgb_matrix_get_hue(void)","titles":["RGB Matrix Lighting","API"]},"2104":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_hue(void)"]},"2105":{"title":"void rgb_matrix_increase_sat(void)","titles":["RGB Matrix Lighting","API"]},"2106":{"title":"void rgb_matrix_increase_sat_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2107":{"title":"void rgb_matrix_decrease_sat(void)","titles":["RGB Matrix Lighting","API"]},"2108":{"title":"void rgb_matrix_decrease_sat_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2109":{"title":"uint8_t rgb_matrix_get_sat(void)","titles":["RGB Matrix Lighting","API"]},"2110":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_sat(void)"]},"2111":{"title":"void rgb_matrix_increase_val(void)","titles":["RGB Matrix Lighting","API"]},"2112":{"title":"void rgb_matrix_increase_val_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2113":{"title":"void rgb_matrix_decrease_val(void)","titles":["RGB Matrix Lighting","API"]},"2114":{"title":"void rgb_matrix_decrease_val_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2115":{"title":"uint8_t rgb_matrix_get_val(void)","titles":["RGB Matrix Lighting","API"]},"2116":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_val(void)"]},"2117":{"title":"void rgb_matrix_increase_speed(void)","titles":["RGB Matrix Lighting","API"]},"2118":{"title":"void rgb_matrix_increase_speed_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2119":{"title":"void rgb_matrix_decrease_speed(void)","titles":["RGB Matrix Lighting","API"]},"2120":{"title":"void rgb_matrix_decrease_speed_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2121":{"title":"void rgb_matrix_set_speed(uint8_t speed)","titles":["RGB Matrix Lighting","API"]},"2122":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_speed(uint8_t speed)"]},"2123":{"title":"void rgb_matrix_set_speed_noeeprom(uint8_t speed)","titles":["RGB Matrix Lighting","API"]},"2124":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_speed_noeeprom(uint8_t speed)"]},"2125":{"title":"uint8_t rgb_matrix_get_speed(void)","titles":["RGB Matrix Lighting","API"]},"2126":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_speed(void)"]},"2127":{"title":"void rgb_matrix_set_flags(led_flags_t flags)","titles":["RGB Matrix Lighting","API"]},"2128":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_flags(led_flags_t flags)"]},"2129":{"title":"void rgb_matrix_set_flags_noeeprom(led_flags_t flags)","titles":["RGB Matrix Lighting","API"]},"2130":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_flags_noeeprom(led_flags_t flags)"]},"2131":{"title":"void rgb_matrix_flags_step(void)","titles":["RGB Matrix Lighting","API"]},"2132":{"title":"void rgb_matrix_flags_step_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2133":{"title":"void rgb_matrix_flags_step_reverse(void)","titles":["RGB Matrix Lighting","API"]},"2134":{"title":"void rgb_matrix_flags_step_reverse_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2135":{"title":"uint8_t rgb_matrix_get_flags(void)","titles":["RGB Matrix Lighting","API"]},"2136":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_flags(void)"]},"2137":{"title":"void rgb_matrix_sethsv(uint8_t h, uint8_t s, uint8_t v)","titles":["RGB Matrix Lighting","API"]},"2138":{"title":"Arguments","titles":["RGB Matrix Lighting","API"]},"2139":{"title":"void rgb_matrix_sethsv_noeeprom(uint8_t h, uint8_t s, uint8_t v)","titles":["RGB Matrix Lighting","API"]},"2140":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_sethsv_noeeprom(uint8_t h, uint8_t s, uint8_t v)"]},"2141":{"title":"hsv_t rgb_matrix_get_hsv(void)","titles":["RGB Matrix Lighting","API"]},"2142":{"title":"Return Value","titles":["RGB Matrix Lighting","API","hsv_t rgb_matrix_get_hsv(void)"]},"2143":{"title":"void rgb_matrix_reload_from_eeprom(void)","titles":["RGB Matrix Lighting","API"]},"2144":{"title":"bool rgb_matrix_get_suspend_state(void)","titles":["RGB Matrix Lighting","API"]},"2145":{"title":"Return Value","titles":["RGB Matrix Lighting","API","bool rgb_matrix_get_suspend_state(void)"]},"2146":{"title":"bool rgb_matrix_indicators_kb(void)","titles":["RGB Matrix Lighting","API"]},"2147":{"title":"Return Value","titles":["RGB Matrix Lighting","API","bool rgb_matrix_indicators_kb(void)"]},"2148":{"title":"bool rgb_matrix_indicators_user(void)","titles":["RGB Matrix Lighting","API"]},"2149":{"title":"Return Value","titles":["RGB Matrix Lighting","API","bool rgb_matrix_indicators_user(void)"]},"2150":{"title":"bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)","titles":["RGB Matrix Lighting","API"]},"2151":{"title":"Arguments","titles":["RGB Matrix Lighting","API"]},"2152":{"title":"Return Value","titles":["RGB Matrix Lighting","API","Arguments"]},"2153":{"title":"bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)","titles":["RGB Matrix Lighting","API"]},"2154":{"title":"Arguments","titles":["RGB Matrix Lighting","API"]},"2155":{"title":"Return Value","titles":["RGB Matrix Lighting","API","Arguments"]},"2156":{"title":"Repeat Key","titles":[]},"2157":{"title":"How do I enable Repeat Key","titles":["Repeat Key"]},"2158":{"title":"Keycodes","titles":["Repeat Key"]},"2159":{"title":"Alternate Repeating","titles":["Repeat Key"]},"2160":{"title":"Defining alternate keys","titles":["Repeat Key"]},"2161":{"title":"Eliminating SFBs","titles":["Repeat Key","Defining alternate keys"]},"2162":{"title":"Typing shortcuts","titles":["Repeat Key","Defining alternate keys"]},"2163":{"title":"Ignoring certain keys and mods","titles":["Repeat Key"]},"2164":{"title":"Ignoring a key","titles":["Repeat Key","Ignoring certain keys and mods"]},"2165":{"title":"Filtering remembered mods","titles":["Repeat Key","Ignoring certain keys and mods"]},"2166":{"title":"Further conditions","titles":["Repeat Key","Ignoring certain keys and mods"]},"2167":{"title":"Handle how a key is repeated","titles":["Repeat Key"]},"2168":{"title":"Handle how a key is alternate repeated","titles":["Repeat Key"]},"2169":{"title":"Functions","titles":["Repeat Key"]},"2170":{"title":"Additional "Alternate" keys","titles":["Repeat Key"]},"2171":{"title":"Secure","titles":[]},"2172":{"title":"Unlock sequence","titles":["Secure"]},"2173":{"title":"Automatic Locking","titles":["Secure"]},"2174":{"title":"Usage","titles":["Secure"]},"2175":{"title":"Keycodes","titles":["Secure"]},"2176":{"title":"Configuration","titles":["Secure"]},"2177":{"title":"Functions","titles":["Secure"]},"2178":{"title":"RGB Lighting","titles":[]},"2179":{"title":"Usage","titles":["RGB Lighting"]},"2180":{"title":"Color Selection","titles":["RGB Lighting","Usage"]},"2181":{"title":"Keycodes","titles":["RGB Lighting"]},"2182":{"title":"Configuration","titles":["RGB Lighting"]},"2183":{"title":"Effects and Animations","titles":["RGB Lighting"]},"2184":{"title":"Effect and Animation Toggles","titles":["RGB Lighting","Effects and Animations"]},"2185":{"title":"Effect and Animation Settings","titles":["RGB Lighting","Effects and Animations"]},"2186":{"title":"Example Usage to Reduce Memory Footprint","titles":["RGB Lighting","Effects and Animations"]},"2187":{"title":"Animation Speed","titles":["RGB Lighting","Effects and Animations"]},"2188":{"title":"Lighting Layers","titles":["RGB Lighting"]},"2189":{"title":"Defining Lighting Layers","titles":["RGB Lighting","Lighting Layers"]},"2190":{"title":"Enabling and disabling lighting layers","titles":["RGB Lighting","Lighting Layers"]},"2191":{"title":"Lighting layer blink","titles":["RGB Lighting","Lighting Layers"]},"2192":{"title":"Overriding RGB Lighting on/off status","titles":["RGB Lighting","Lighting Layers"]},"2193":{"title":"Retain brightness","titles":["RGB Lighting","Lighting Layers"]},"2194":{"title":"Functions","titles":["RGB Lighting"]},"2195":{"title":"Low level Functions","titles":["RGB Lighting","Functions"]},"2196":{"title":"Effects and Animations Functions","titles":["RGB Lighting","Functions"]},"2197":{"title":"effect range setting","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2198":{"title":"direct operation","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2199":{"title":"effect mode change","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2200":{"title":"effects mode disable/enable","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2201":{"title":"hue, sat, val change","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2202":{"title":"Speed functions","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2203":{"title":"layer functions","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2204":{"title":"query","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2205":{"title":"Colors","titles":["RGB Lighting"]},"2206":{"title":"Changing the order of the LEDs","titles":["RGB Lighting"]},"2207":{"title":"Clipping Range","titles":["RGB Lighting"]},"2208":{"title":"Hardware Modification","titles":["RGB Lighting"]},"2209":{"title":"Velocikey","titles":["RGB Lighting"]},"2210":{"title":"Usage","titles":["RGB Lighting","Velocikey"]},"2211":{"title":"Configuration","titles":["RGB Lighting","Velocikey"]},"2212":{"title":"Send String","titles":[]},"2213":{"title":"Usage","titles":["Send String"]},"2214":{"title":"Basic Configuration","titles":["Send String"]},"2215":{"title":"Keycodes","titles":["Send String"]},"2216":{"title":"Language Support","titles":["Send String","Keycodes"]},"2217":{"title":"Examples","titles":["Send String"]},"2218":{"title":"Hello World","titles":["Send String","Examples"]},"2219":{"title":"Keycode Injection","titles":["Send String","Examples"]},"2220":{"title":"API","titles":["Send String"]},"2221":{"title":"void send_string(const char *string)","titles":["Send String","API"]},"2222":{"title":"Arguments","titles":["Send String","API","void send_string(const char *string)"]},"2223":{"title":"void send_string_with_delay(const char *string, uint8_t interval)","titles":["Send String","API"]},"2224":{"title":"Arguments","titles":["Send String","API","void send_string_with_delay(const char *string, uint8_t interval)"]},"2225":{"title":"void send_string_P(const char *string)","titles":["Send String","API"]},"2226":{"title":"Arguments","titles":["Send String","API","void send_string_P(const char *string)"]},"2227":{"title":"void send_string_with_delay_P(const char *string, uint8_t interval)","titles":["Send String","API"]},"2228":{"title":"Arguments","titles":["Send String","API","void send_string_with_delay_P(const char *string, uint8_t interval)"]},"2229":{"title":"void send_char(char ascii_code)","titles":["Send String","API"]},"2230":{"title":"Arguments","titles":["Send String","API","void send_char(char ascii_code)"]},"2231":{"title":"void send_dword(uint32_t number)","titles":["Send String","API"]},"2232":{"title":"Arguments","titles":["Send String","API","void send_dword(uint32_t number)"]},"2233":{"title":"void send_word(uint16_t number)","titles":["Send String","API"]},"2234":{"title":"Arguments","titles":["Send String","API","void send_word(uint16_t number)"]},"2235":{"title":"void send_byte(uint8_t number)","titles":["Send String","API"]},"2236":{"title":"Arguments","titles":["Send String","API","void send_byte(uint8_t number)"]},"2237":{"title":"void send_nibble(uint8_t number)","titles":["Send String","API"]},"2238":{"title":"Arguments","titles":["Send String","API","void send_nibble(uint8_t number)"]},"2239":{"title":"void tap_random_base64(void)","titles":["Send String","API"]},"2240":{"title":"SEND_STRING(string)","titles":["Send String","API"]},"2241":{"title":"SEND_STRING_DELAY(string, interval)","titles":["Send String","API"]},"2242":{"title":"Sequencer","titles":[]},"2243":{"title":"Enable the step sequencer","titles":["Sequencer"]},"2244":{"title":"Tracks","titles":["Sequencer"]},"2245":{"title":"Resolutions","titles":["Sequencer"]},"2246":{"title":"Keycodes","titles":["Sequencer"]},"2247":{"title":"Functions","titles":["Sequencer"]},"2248":{"title":"Space Cadet: The Future, Built In","titles":[]},"2249":{"title":"Usage","titles":["Space Cadet: The Future, Built In"]},"2250":{"title":"Keycodes","titles":["Space Cadet: The Future, Built In"]},"2251":{"title":"Caveats","titles":["Space Cadet: The Future, Built In"]},"2252":{"title":"Configuration","titles":["Space Cadet: The Future, Built In"]},"2253":{"title":"Obsolete Configuration","titles":["Space Cadet: The Future, Built In"]},"2254":{"title":"Split Keyboard","titles":[]},"2255":{"title":"Compatibility Overview","titles":["Split Keyboard"]},"2256":{"title":"Hardware Configuration","titles":["Split Keyboard"]},"2257":{"title":"Required Hardware","titles":["Split Keyboard","Hardware Configuration"]},"2258":{"title":"Considerations","titles":["Split Keyboard","Hardware Configuration","Required Hardware"]},"2259":{"title":"Serial Wiring","titles":["Split Keyboard","Hardware Configuration"]},"2260":{"title":"I2C Wiring","titles":["Split Keyboard","Hardware Configuration"]},"2261":{"title":"Firmware Configuration","titles":["Split Keyboard"]},"2262":{"title":"Layout Macro","titles":["Split Keyboard","Firmware Configuration"]},"2263":{"title":"Setting Handedness","titles":["Split Keyboard","Firmware Configuration"]},"2264":{"title":"Handedness by Pin","titles":["Split Keyboard","Firmware Configuration","Setting Handedness"]},"2265":{"title":"Handedness by Matrix Pin","titles":["Split Keyboard","Firmware Configuration","Setting Handedness"]},"2266":{"title":"Handedness by EEPROM","titles":["Split Keyboard","Firmware Configuration","Setting Handedness"]},"2267":{"title":"Handedness by #define","titles":["Split Keyboard","Firmware Configuration","Setting Handedness"]},"2268":{"title":"Communication Options","titles":["Split Keyboard","Firmware Configuration"]},"2269":{"title":"Data Sync Options","titles":["Split Keyboard","Firmware Configuration"]},"2270":{"title":"Custom data sync between sides","titles":["Split Keyboard","Firmware Configuration"]},"2271":{"title":"Hardware Configuration Options","titles":["Split Keyboard","Firmware Configuration"]},"2272":{"title":"Hardware Considerations and Mods","titles":["Split Keyboard"]},"2273":{"title":"Teensy boards","titles":["Split Keyboard","Hardware Considerations and Mods"]},"2274":{"title":"Additional Resources","titles":["Split Keyboard"]},"2275":{"title":"ST7565 LCD Driver","titles":[]},"2276":{"title":"Supported Hardware","titles":["ST7565 LCD Driver"]},"2277":{"title":"Usage","titles":["ST7565 LCD Driver"]},"2278":{"title":"Logo Example","titles":["ST7565 LCD Driver"]},"2279":{"title":"Buffer Read Example","titles":["ST7565 LCD Driver"]},"2280":{"title":"Other Examples","titles":["ST7565 LCD Driver"]},"2281":{"title":"Basic Configuration","titles":["ST7565 LCD Driver"]},"2282":{"title":"Custom sized displays","titles":["ST7565 LCD Driver"]},"2283":{"title":"API","titles":["ST7565 LCD Driver"]},"2284":{"title":"Stenography in QMK","titles":[]},"2285":{"title":"Steno Support in QMK","titles":["Stenography in QMK"]},"2286":{"title":"Plover with QWERTY Keyboard","titles":["Stenography in QMK"]},"2287":{"title":"Plover with Steno Protocol","titles":["Stenography in QMK"]},"2288":{"title":"TX Bolt","titles":["Stenography in QMK","Plover with Steno Protocol"]},"2289":{"title":"GeminiPR","titles":["Stenography in QMK","Plover with Steno Protocol"]},"2290":{"title":"Switching protocols on the fly","titles":["Stenography in QMK","Plover with Steno Protocol"]},"2291":{"title":"Configuring QMK for Steno","titles":["Stenography in QMK"]},"2292":{"title":"Learning Stenography","titles":["Stenography in QMK"]},"2293":{"title":"Interfacing with the code","titles":["Stenography in QMK"]},"2294":{"title":"Keycode Reference","titles":["Stenography in QMK"]},"2295":{"title":"Swap-Hands Action","titles":[]},"2296":{"title":"Configuration","titles":["Swap-Hands Action"]},"2297":{"title":"Swap Keycodes","titles":["Swap-Hands Action"]},"2298":{"title":"Encoder Mapping","titles":["Swap-Hands Action"]},"2299":{"title":"Functions","titles":["Swap-Hands Action","Encoder Mapping"]},"2300":{"title":"Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","titles":[]},"2301":{"title":"Introduction","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things"]},"2302":{"title":"How to Use Tap Dance","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things"]},"2303":{"title":"Implementation Details","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things"]},"2304":{"title":"Examples","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things"]},"2305":{"title":"Simple Example: Send ESC on Single Tap, CAPS_LOCK on Double Tap","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples"]},"2306":{"title":"Complex Examples","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples"]},"2307":{"title":"Example 1: Send "Safety Dance!" After 100 Taps","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2308":{"title":"Example 2: Turn LED Lights On Then Off, One at a Time","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2309":{"title":"Example 3: Send : on Tap, ; on Hold","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2310":{"title":"Example 4: 'Quad Function Tap-Dance'","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2311":{"title":"Example 5: Using tap dance for advanced mod-tap and layer-tap keys","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2312":{"title":"Example 6: Using tap dance for momentary-layer-switch and layer-toggle keys","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2313":{"title":"Tri Layers","titles":[]},"2314":{"title":"Keycodes","titles":["Tri Layers"]},"2315":{"title":"Configuration","titles":["Tri Layers"]},"2316":{"title":"Functions","titles":["Tri Layers"]},"2317":{"title":"Unicode","titles":[]},"2318":{"title":"Caveats","titles":["Unicode"]},"2319":{"title":"Usage","titles":["Unicode"]},"2320":{"title":"Basic Configuration","titles":["Unicode"]},"2321":{"title":"Audio Feedback","titles":["Unicode","Basic Configuration"]},"2322":{"title":"Input Subsystems","titles":["Unicode"]},"2323":{"title":"Lower and Upper Case Pairs","titles":["Unicode","Input Subsystems","Audio Feedback"]},"2324":{"title":"Input Modes","titles":["Unicode"]},"2325":{"title":"Keycodes","titles":["Unicode"]},"2326":{"title":"API","titles":["Unicode"]},"2327":{"title":"uint8_t get_unicode_input_mode(void)","titles":["Unicode","API"]},"2328":{"title":"Return Value","titles":["Unicode","API","uint8_t get_unicode_input_mode(void)"]},"2329":{"title":"void set_unicode_input_mode(uint8_t mode)","titles":["Unicode","API"]},"2330":{"title":"Arguments","titles":["Unicode","API","void set_unicode_input_mode(uint8_t mode)"]},"2331":{"title":"void unicode_input_mode_step(void)","titles":["Unicode","API"]},"2332":{"title":"void unicode_input_mode_step_reverse(void)","titles":["Unicode","API"]},"2333":{"title":"void unicode_input_mode_set_user(uint8_t input_mode)","titles":["Unicode","API"]},"2334":{"title":"Arguments","titles":["Unicode","API","void unicode_input_mode_set_user(uint8_t input_mode)"]},"2335":{"title":"void unicode_input_mode_set_kb(uint8_t input_mode)","titles":["Unicode","API"]},"2336":{"title":"Arguments","titles":["Unicode","API","void unicode_input_mode_set_kb(uint8_t input_mode)"]},"2337":{"title":"void unicode_input_start(void)","titles":["Unicode","API"]},"2338":{"title":"void unicode_input_finish(void)","titles":["Unicode","API"]},"2339":{"title":"void unicode_input_cancel(void)","titles":["Unicode","API"]},"2340":{"title":"void register_unicode(uint32_t code_point)","titles":["Unicode","API"]},"2341":{"title":"Arguments","titles":["Unicode","API","void register_unicode(uint32_t code_point)"]},"2342":{"title":"void send_unicode_string(const char *str)","titles":["Unicode","API"]},"2343":{"title":"Arguments","titles":["Unicode","API","void send_unicode_string(const char *str)"]},"2344":{"title":"uint8_t unicodemap_index(uint16_t keycode)","titles":["Unicode","API"]},"2345":{"title":"Arguments","titles":["Unicode","API","uint8_t unicodemap_index(uint16_t keycode)"]},"2346":{"title":"Return Value","titles":["Unicode","API","uint8_t unicodemap_index(uint16_t keycode)"]},"2347":{"title":"uint32_t unicodemap_get_code_point(uint8_t index)","titles":["Unicode","API"]},"2348":{"title":"Arguments","titles":["Unicode","API","uint32_t unicodemap_get_code_point(uint8_t index)"]},"2349":{"title":"Return Value","titles":["Unicode","API","uint32_t unicodemap_get_code_point(uint8_t index)"]},"2350":{"title":"void register_unicodemap(uint8_t index)","titles":["Unicode","API"]},"2351":{"title":"Arguments","titles":["Unicode","API","void register_unicodemap(uint8_t index)"]},"2352":{"title":"void ucis_start(void)","titles":["Unicode","API"]},"2353":{"title":"bool ucis_active(void)","titles":["Unicode","API"]},"2354":{"title":"Return Value","titles":["Unicode","API","bool ucis_active(void)"]},"2355":{"title":"uint8_t ucis_count(void)","titles":["Unicode","API"]},"2356":{"title":"Return Value","titles":["Unicode","API","uint8_t ucis_count(void)"]},"2357":{"title":"bool ucis_add(uint16_t keycode)","titles":["Unicode","API"]},"2358":{"title":"Arguments","titles":["Unicode","API","bool ucis_add(uint16_t keycode)"]},"2359":{"title":"Return Value","titles":["Unicode","API","bool ucis_add(uint16_t keycode)"]},"2360":{"title":"bool ucis_remove_last(void)","titles":["Unicode","API"]},"2361":{"title":"Return Value","titles":["Unicode","API","bool ucis_remove_last(void)"]},"2362":{"title":"void ucis_finish(void)","titles":["Unicode","API"]},"2363":{"title":"void ucis_cancel(void)","titles":["Unicode","API"]},"2364":{"title":"void register_ucis(void)","titles":["Unicode","API"]},"2365":{"title":"Arguments","titles":["Unicode","API","void register_ucis(void)"]},"2366":{"title":"Wireless / Bluetooth","titles":[]},"2367":{"title":"Bluetooth Known Supported Hardware","titles":["Wireless / Bluetooth"]},"2368":{"title":"Adafruit BLE SPI Friend","titles":["Wireless / Bluetooth","Bluetooth Known Supported Hardware"]},"2369":{"title":"Bluetooth Rules.mk Options","titles":["Wireless / Bluetooth"]},"2370":{"title":"Bluetooth Keycodes","titles":["Wireless / Bluetooth"]},"2371":{"title":"Word Per Minute (WPM) Calculation","titles":[]},"2372":{"title":"Configuration","titles":["Word Per Minute (WPM) Calculation"]},"2373":{"title":"Public Functions","titles":["Word Per Minute (WPM) Calculation"]},"2374":{"title":"Callbacks","titles":["Word Per Minute (WPM) Calculation"]},"2375":{"title":"Flashing Instructions and Bootloader Information","titles":[]},"2376":{"title":"Atmel DFU","titles":["Flashing Instructions and Bootloader Information"]},"2377":{"title":"QMK DFU","titles":["Flashing Instructions and Bootloader Information","Atmel DFU"]},"2378":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","Atmel DFU"]},"2379":{"title":"Caterina","titles":["Flashing Instructions and Bootloader Information"]},"2380":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","Caterina"]},"2381":{"title":"HalfKay","titles":["Flashing Instructions and Bootloader Information"]},"2382":{"title":"USBasploader","titles":["Flashing Instructions and Bootloader Information"]},"2383":{"title":"BootloadHID","titles":["Flashing Instructions and Bootloader Information"]},"2384":{"title":"QMK HID","titles":["Flashing Instructions and Bootloader Information","BootloadHID"]},"2385":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","BootloadHID"]},"2386":{"title":"STM32/APM32 DFU","titles":["Flashing Instructions and Bootloader Information"]},"2387":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","STM32/APM32 DFU"]},"2388":{"title":"STM32duino","titles":["Flashing Instructions and Bootloader Information"]},"2389":{"title":"Kiibohd DFU","titles":["Flashing Instructions and Bootloader Information"]},"2390":{"title":"WB32 DFU","titles":["Flashing Instructions and Bootloader Information"]},"2391":{"title":"AT32 DFU","titles":["Flashing Instructions and Bootloader Information"]},"2392":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","AT32 DFU"]},"2393":{"title":"tinyuf2","titles":["Flashing Instructions and Bootloader Information"]},"2394":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","tinyuf2"]},"2395":{"title":"uf2boot","titles":["Flashing Instructions and Bootloader Information"]},"2396":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","uf2boot"]},"2397":{"title":"Raspberry Pi RP2040 UF2","titles":["Flashing Instructions and Bootloader Information"]},"2398":{"title":"Docker Quick Start","titles":[]},"2399":{"title":"Requirements","titles":["Docker Quick Start"]},"2400":{"title":"Usage","titles":["Docker Quick Start"]},"2401":{"title":"FAQ","titles":["Docker Quick Start"]},"2402":{"title":"Why can't I flash on Windows/macOS","titles":["Docker Quick Start","FAQ"]},"2403":{"title":"How to Use GitHub with QMK","titles":[]},"2404":{"title":"Introduction","titles":[]},"2405":{"title":"Basic QMK Structure","titles":["Introduction"]},"2406":{"title":"Userspace Structure","titles":["Introduction","Basic QMK Structure"]},"2407":{"title":"Keyboard Project Structure","titles":["Introduction","Basic QMK Structure"]},"2408":{"title":"Keymap Structure","titles":["Introduction","Basic QMK Structure"]},"2409":{"title":"The config.h File","titles":[]},"2410":{"title":"More Detailed make Instructions","titles":[]},"2411":{"title":"rules.mk Options","titles":["More Detailed make Instructions"]},"2412":{"title":"Customizing Makefile Options on a Per-Keymap Basis","titles":["More Detailed make Instructions"]},"2413":{"title":"Hand-Wiring Guide","titles":[]},"2414":{"title":"Parts list","titles":["Hand-Wiring Guide"]},"2415":{"title":"Starting the build","titles":["Hand-Wiring Guide"]},"2416":{"title":"Planning the matrix","titles":["Hand-Wiring Guide"]},"2417":{"title":"Common Microcontroller Boards","titles":["Hand-Wiring Guide","Planning the matrix"]},"2418":{"title":"Wiring the matrix","titles":["Hand-Wiring Guide"]},"2419":{"title":"A note on split keyboards","titles":["Hand-Wiring Guide","Wiring the matrix"]},"2420":{"title":"Soldering","titles":["Hand-Wiring Guide","Wiring the matrix"]},"2421":{"title":"Soldering the Diodes","titles":["Hand-Wiring Guide","Wiring the matrix","Soldering"]},"2422":{"title":"Soldering the Columns","titles":["Hand-Wiring Guide","Wiring the matrix","Soldering"]},"2423":{"title":"Wiring up the controller","titles":["Hand-Wiring Guide"]},"2424":{"title":"Specific instructions for the Teensy 2.0","titles":["Hand-Wiring Guide","Wiring up the controller"]},"2425":{"title":"Getting Some Basic Firmware Set Up","titles":["Hand-Wiring Guide"]},"2426":{"title":"Flashing the Firmware","titles":["Hand-Wiring Guide"]},"2427":{"title":"Testing Your Firmware","titles":["Hand-Wiring Guide"]},"2428":{"title":"Finishing up","titles":["Hand-Wiring Guide"]},"2429":{"title":"Links to Other Guides","titles":["Hand-Wiring Guide"]},"2430":{"title":"Legacy Content","titles":[]},"2431":{"title":"Preamble: How a Keyboard Matrix Works (and why we need diodes)","titles":["Legacy Content"]},"2432":{"title":"QMK Keyboard Guidelines","titles":[]},"2433":{"title":"Use QMK Lint","titles":["QMK Keyboard Guidelines"]},"2434":{"title":"Naming Your Keyboard/Project","titles":["QMK Keyboard Guidelines"]},"2435":{"title":"Sub-folders","titles":["QMK Keyboard Guidelines"]},"2436":{"title":"Keyboard Folder Structure","titles":["QMK Keyboard Guidelines"]},"2437":{"title":"readme.md","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2438":{"title":"keyboard.json/info.json","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2439":{"title":"config.h","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2440":{"title":"rules.mk","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2441":{"title":"<keyboard>.c","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2442":{"title":"<keyboard>.h","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2443":{"title":"Image/Hardware Files","titles":["QMK Keyboard Guidelines"]},"2444":{"title":"Keyboard Defaults","titles":["QMK Keyboard Guidelines"]},"2445":{"title":"Magic Keycodes and Command","titles":["QMK Keyboard Guidelines","Keyboard Defaults"]},"2446":{"title":"Custom Keyboard Programming","titles":["QMK Keyboard Guidelines"]},"2447":{"title":"Non-Production/Handwired Projects","titles":["QMK Keyboard Guidelines"]},"2448":{"title":"Warnings as Errors","titles":["QMK Keyboard Guidelines"]},"2449":{"title":"Copyright Blurb","titles":["QMK Keyboard Guidelines"]},"2450":{"title":"License","titles":["QMK Keyboard Guidelines"]},"2451":{"title":"QMK Hardware Drivers","titles":[]},"2452":{"title":"Available Drivers","titles":[]},"2453":{"title":"ProMicro (AVR Only)","titles":["Available Drivers"]},"2454":{"title":"SSD1306 OLED Driver","titles":["Available Drivers"]},"2455":{"title":"WS2812","titles":["Available Drivers"]},"2456":{"title":"IS31FL3731","titles":["Available Drivers"]},"2457":{"title":"IS31FL3733","titles":["Available Drivers"]},"2458":{"title":"24xx series external I2C EEPROM","titles":["Available Drivers"]},"2459":{"title":"How a Keyboard Matrix Works","titles":[]},"2460":{"title":"How Keys Are Registered, and Interpreted by Computers","titles":[]},"2461":{"title":"Schematic View","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2462":{"title":"1. You Press a Key","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2463":{"title":"2. What the Firmware Sends","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2464":{"title":"3. What the Event Input/Kernel Does","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2465":{"title":"4. What the Operating System Does","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2466":{"title":"Back to the Firmware","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2467":{"title":"List of Characters You Can Send","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2468":{"title":"How to (Maybe) Enter Unicode Characters","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2469":{"title":"Quantum Mechanical Keyboard Firmware","titles":[]},"2470":{"title":"What is QMK Firmware?","titles":["Quantum Mechanical Keyboard Firmware"]},"2471":{"title":"Get Started","titles":["Quantum Mechanical Keyboard Firmware"]},"2472":{"title":"Make It Yours","titles":["Quantum Mechanical Keyboard Firmware"]},"2473":{"title":"Need help?","titles":["Quantum Mechanical Keyboard Firmware"]},"2474":{"title":"Give Back","titles":["Quantum Mechanical Keyboard Firmware"]},"2475":{"title":"ISP Flashing Guide","titles":[]},"2476":{"title":"Hardware","titles":["ISP Flashing Guide"]},"2477":{"title":"Pro Micro as ISP","titles":["ISP Flashing Guide","Hardware"]},"2478":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","Pro Micro as ISP"]},"2479":{"title":"Arduino Uno / Micro as ISP","titles":["ISP Flashing Guide","Hardware"]},"2480":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","Arduino Uno / Micro as ISP"]},"2481":{"title":"Teensy 2.0 as ISP","titles":["ISP Flashing Guide","Hardware"]},"2482":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","Teensy 2.0 as ISP"]},"2483":{"title":"SparkFun PocketAVR / USBtinyISP","titles":["ISP Flashing Guide","Hardware"]},"2484":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","SparkFun PocketAVR / USBtinyISP"]},"2485":{"title":"USBasp","titles":["ISP Flashing Guide","Hardware"]},"2486":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","USBasp"]},"2487":{"title":"Bus Pirate","titles":["ISP Flashing Guide","Hardware"]},"2488":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","Bus Pirate"]},"2489":{"title":"Software","titles":["ISP Flashing Guide"]},"2490":{"title":"Bootloader Firmware","titles":["ISP Flashing Guide"]},"2491":{"title":"Atmel DFU","titles":["ISP Flashing Guide","Bootloader Firmware"]},"2492":{"title":"Caterina","titles":["ISP Flashing Guide","Bootloader Firmware"]},"2493":{"title":"BootloadHID (PS2AVRGB)","titles":["ISP Flashing Guide","Bootloader Firmware"]},"2494":{"title":"USBaspLoader","titles":["ISP Flashing Guide","Bootloader Firmware"]},"2495":{"title":"Flashing the Bootloader","titles":["ISP Flashing Guide"]},"2496":{"title":"Setting the Fuses","titles":["ISP Flashing Guide","Flashing the Bootloader"]},"2497":{"title":"Creating a "Production" Firmware","titles":["ISP Flashing Guide"]},"2498":{"title":"Flashing STM32Duino Bootloader","titles":["ISP Flashing Guide"]},"2499":{"title":"Software","titles":["ISP Flashing Guide","Flashing STM32Duino Bootloader"]},"2500":{"title":"Wiring","titles":["ISP Flashing Guide","Flashing STM32Duino Bootloader"]},"2501":{"title":"Flashing","titles":["ISP Flashing Guide","Flashing STM32Duino Bootloader"]},"2502":{"title":"Basic Keycodes","titles":[]},"2503":{"title":"Letters and Numbers","titles":["Basic Keycodes"]},"2504":{"title":"F Keys","titles":["Basic Keycodes"]},"2505":{"title":"Punctuation","titles":["Basic Keycodes"]},"2506":{"title":"Lock Keys","titles":["Basic Keycodes"]},"2507":{"title":"Modifiers","titles":["Basic Keycodes"]},"2508":{"title":"International","titles":["Basic Keycodes"]},"2509":{"title":"Commands","titles":["Basic Keycodes"]},"2510":{"title":"Media Keys","titles":["Basic Keycodes"]},"2511":{"title":"Number Pad","titles":["Basic Keycodes"]},"2512":{"title":"Special Keys","titles":["Basic Keycodes"]},"2513":{"title":"Magic Keycodes","titles":[]},"2514":{"title":"Keycodes Overview","titles":[]},"2515":{"title":"Basic Keycodes","titles":["Keycodes Overview"]},"2516":{"title":"Quantum Keycodes","titles":["Keycodes Overview"]},"2517":{"title":"Audio Keys","titles":["Keycodes Overview"]},"2518":{"title":"Auto Shift","titles":["Keycodes Overview"]},"2519":{"title":"Autocorrect","titles":["Keycodes Overview"]},"2520":{"title":"Backlighting","titles":["Keycodes Overview"]},"2521":{"title":"Wireless/Bluetooth","titles":["Keycodes Overview"]},"2522":{"title":"Caps Word","titles":["Keycodes Overview"]},"2523":{"title":"Dynamic Macros","titles":["Keycodes Overview"]},"2524":{"title":"Grave Escape","titles":["Keycodes Overview"]},"2525":{"title":"Joystick","titles":["Keycodes Overview"]},"2526":{"title":"Key Lock","titles":["Keycodes Overview"]},"2527":{"title":"Layer Lock","titles":["Keycodes Overview"]},"2528":{"title":"Layer Switching","titles":["Keycodes Overview"]},"2529":{"title":"Leader Key","titles":["Keycodes Overview"]},"2530":{"title":"LED Matrix","titles":["Keycodes Overview"]},"2531":{"title":"Magic Keycodes","titles":["Keycodes Overview"]},"2532":{"title":"MIDI","titles":["Keycodes Overview"]},"2533":{"title":"Mouse Keys","titles":["Keycodes Overview"]},"2534":{"title":"Modifiers","titles":["Keycodes Overview"]},"2535":{"title":"Mod-Tap Keys","titles":["Keycodes Overview"]},"2536":{"title":"Tapping Term Keys","titles":["Keycodes Overview"]},"2537":{"title":"RGB Lighting","titles":["Keycodes Overview"]},"2538":{"title":"RGB Matrix","titles":["Keycodes Overview"]},"2539":{"title":"US ANSI Shifted Symbols","titles":["Keycodes Overview"]},"2540":{"title":"One Shot Keys","titles":["Keycodes Overview"]},"2541":{"title":"Programmable Button Support","titles":["Keycodes Overview"]},"2542":{"title":"Repeat Key","titles":["Keycodes Overview"]},"2543":{"title":"Space Cadet","titles":["Keycodes Overview"]},"2544":{"title":"Swap Hands","titles":["Keycodes Overview"]},"2545":{"title":"Unicode Support","titles":["Keycodes Overview"]},"2546":{"title":"Keymap Overview","titles":[]},"2547":{"title":"Keymap and Layers","titles":["Keymap Overview"]},"2548":{"title":"Keymap Layer Status","titles":["Keymap Overview","Keymap and Layers"]},"2549":{"title":"Layer Precedence and Transparency","titles":["Keymap Overview","Keymap and Layers"]},"2550":{"title":"Anatomy of a keymap.c","titles":["Keymap Overview"]},"2551":{"title":"Definitions","titles":["Keymap Overview","Anatomy of a keymap.c"]},"2552":{"title":"Layers and Keymaps","titles":["Keymap Overview","Anatomy of a keymap.c"]},"2553":{"title":"Base Layer","titles":["Keymap Overview","Anatomy of a keymap.c","Layers and Keymaps"]},"2554":{"title":"Function Overlay Layer","titles":["Keymap Overview","Anatomy of a keymap.c","Layers and Keymaps"]},"2555":{"title":"Nitty Gritty Details","titles":[]},"2556":{"title":"US ANSI Shifted Symbols","titles":[]},"2557":{"title":"Caveats","titles":["US ANSI Shifted Symbols"]},"2558":{"title":"Keycodes","titles":["US ANSI Shifted Symbols"]},"2559":{"title":"Mod-Tap","titles":[]},"2560":{"title":"Caveats","titles":["Mod-Tap"]},"2561":{"title":"Intercepting Mod-Taps","titles":["Mod-Tap"]},"2562":{"title":"Changing tap function","titles":["Mod-Tap","Intercepting Mod-Taps"]},"2563":{"title":"Changing hold function","titles":["Mod-Tap","Intercepting Mod-Taps"]},"2564":{"title":"Changing both tap and hold","titles":["Mod-Tap","Intercepting Mod-Taps"]},"2565":{"title":"Other Resources","titles":["Mod-Tap"]},"2566":{"title":"License Violations","titles":[]},"2567":{"title":"Offending Vendors","titles":["License Violations"]},"2568":{"title":"Licensing","titles":["License Violations"]},"2569":{"title":"QMK PR Considerations","titles":["License Violations"]},"2570":{"title":"Detection","titles":["License Violations"]},"2571":{"title":"Remediation","titles":["License Violations"]},"2572":{"title":"The QMK Tutorial","titles":[]},"2573":{"title":"Overview","titles":["The QMK Tutorial"]},"2574":{"title":"Additional Resources","titles":["The QMK Tutorial"]},"2575":{"title":"Building Your First Firmware","titles":[]},"2576":{"title":"Configure Your Build Environment Defaults (Optional)","titles":["Building Your First Firmware"]},"2577":{"title":"Create a New Keymap","titles":["Building Your First Firmware"]},"2578":{"title":"Open keymap.c In Your Favorite Text Editor","titles":["Building Your First Firmware"]},"2579":{"title":"Customize The Layout To Your Liking","titles":["Building Your First Firmware"]},"2580":{"title":"Build Your Firmware","titles":["Building Your First Firmware"]},"2581":{"title":"Flash Your Firmware","titles":["Building Your First Firmware"]},"2582":{"title":"QMK Configurator","titles":[]},"2583":{"title":"External QMK Userspace","titles":[]},"2584":{"title":"Setting up QMK Locally","titles":["External QMK Userspace"]},"2585":{"title":"External Userspace Repository Setup (forked on GitHub)","titles":["External QMK Userspace"]},"2586":{"title":"External Userspace Setup (locally stored only)","titles":["External QMK Userspace"]},"2587":{"title":"Adding a Keymap","titles":["External QMK Userspace"]},"2588":{"title":"Adding the keymap to External Userspace build targets","titles":["External QMK Userspace"]},"2589":{"title":"Compiling External Userspace build targets","titles":["External QMK Userspace"]},"2590":{"title":"Using GitHub Actions","titles":["External QMK Userspace"]},"2591":{"title":"Building QMK with GitHub Userspace","titles":[]},"2592":{"title":"Prerequisites","titles":["Building QMK with GitHub Userspace"]},"2593":{"title":"Environment Setup","titles":["Building QMK with GitHub Userspace"]},"2594":{"title":"1. Install Git","titles":["Building QMK with GitHub Userspace","Environment Setup"]},"2595":{"title":"2. GitHub authentication","titles":["Building QMK with GitHub Userspace","Environment Setup"]},"2596":{"title":"3. Create a repository","titles":["Building QMK with GitHub Userspace","Environment Setup"]},"2597":{"title":"Initial Code Commit","titles":["Building QMK with GitHub Userspace"]},"2598":{"title":"Create template files","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2599":{"title":"Add a JSON keymap","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2600":{"title":"Add a GitHub Action workflow","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2601":{"title":"Commit files to GitHub","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2602":{"title":"Review workflow output","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2603":{"title":"Customising your keymap","titles":["Building QMK with GitHub Userspace"]},"2604":{"title":"Flashing Your Keyboard","titles":[]},"2605":{"title":"Put Your Keyboard into DFU (Bootloader) Mode","titles":["Flashing Your Keyboard"]},"2606":{"title":"Flashing Your Keyboard with QMK Toolbox","titles":["Flashing Your Keyboard"]},"2607":{"title":"Load the File into QMK Toolbox","titles":["Flashing Your Keyboard","Flashing Your Keyboard with QMK Toolbox"]},"2608":{"title":"Flash Your Keyboard","titles":["Flashing Your Keyboard","Flashing Your Keyboard with QMK Toolbox"]},"2609":{"title":"Flash your Keyboard from the Command Line","titles":["Flashing Your Keyboard"]},"2610":{"title":"Test It Out!","titles":["Flashing Your Keyboard"]},"2611":{"title":"Setting Up Your QMK Environment","titles":[]},"2612":{"title":"1. Prerequisites","titles":["Setting Up Your QMK Environment"]},"2613":{"title":"2. Prepare Your Build Environment","titles":["Setting Up Your QMK Environment"]},"2614":{"title":"Prerequisites","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2615":{"title":"Prerequisites","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2616":{"title":"Installation","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2617":{"title":"Prerequisites","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2618":{"title":"Installation","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2619":{"title":"Installation","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2620":{"title":"Installation","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2621":{"title":"3. Run QMK Setup","titles":["Setting Up Your QMK Environment"]},"2622":{"title":"4. Test Your Build Environment","titles":["Setting Up Your QMK Environment"]},"2623":{"title":"Creating Your Keymap","titles":[]},"2624":{"title":"Best Git Practices for Working with QMK","titles":[]},"2625":{"title":"Or, "How I Learned to Stop Worrying and Love Git."","titles":["Best Git Practices for Working with QMK"]},"2626":{"title":"Resolving Merge Conflicts","titles":[]},"2627":{"title":"Rebasing Your Changes","titles":["Resolving Merge Conflicts"]},"2628":{"title":"Resynchronizing an Out-of-Sync Git Branch","titles":[]},"2629":{"title":"Backing Up the Changes on Your Own Master Branch (Optional)","titles":["Resynchronizing an Out-of-Sync Git Branch"]},"2630":{"title":"Resynchronizing Your Branch","titles":["Resynchronizing an Out-of-Sync Git Branch"]},"2631":{"title":"Your Fork's Master: Update Often, Commit Never","titles":[]},"2632":{"title":"Updating your master branch","titles":["Your Fork's Master: Update Often, Commit Never"]},"2633":{"title":"Making Changes","titles":["Your Fork's Master: Update Often, Commit Never"]},"2634":{"title":"Publishing Your Changes","titles":["Your Fork's Master: Update Often, Commit Never"]},"2635":{"title":"Learning Resources","titles":[]},"2636":{"title":"QMK resources","titles":["Learning Resources"]},"2637":{"title":"Command Line resources","titles":["Learning Resources"]},"2638":{"title":"Text Editor resources","titles":["Learning Resources"]},"2639":{"title":"Git resources","titles":["Learning Resources"]},"2640":{"title":"Testing and Debugging","titles":[]},"2641":{"title":"Testing","titles":["Testing and Debugging"]},"2642":{"title":"Debugging","titles":["Testing and Debugging"]},"2643":{"title":"One Shot Keys","titles":[]},"2644":{"title":"Keycodes","titles":["One Shot Keys"]},"2645":{"title":"Callbacks","titles":["One Shot Keys"]},"2646":{"title":"Setting up Eclipse for QMK Development","titles":[]},"2647":{"title":"Prerequisites","titles":[]},"2648":{"title":"Build Environment","titles":["Prerequisites"]},"2649":{"title":"Java","titles":["Prerequisites"]},"2650":{"title":"Install Eclipse and Its Plugins","titles":[]},"2651":{"title":"Download and Install Eclipse CDT","titles":["Install Eclipse and Its Plugins"]},"2652":{"title":"First Launch","titles":["Install Eclipse and Its Plugins"]},"2653":{"title":"Install the Necessary Plugins","titles":["Install Eclipse and Its Plugins"]},"2654":{"title":"Configure Eclipse for QMK","titles":[]},"2655":{"title":"Importing the Project","titles":["Configure Eclipse for QMK"]},"2656":{"title":"Build Your Keyboard","titles":["Configure Eclipse for QMK"]},"2657":{"title":"Setting up Visual Studio Code for QMK Development","titles":[]},"2658":{"title":"Set up VS Code","titles":[]},"2659":{"title":"Windows","titles":["Set up VS Code"]},"2660":{"title":"Prerequisites","titles":["Set up VS Code","Windows"]},"2661":{"title":"Installing VS Code","titles":["Set up VS Code","Windows"]},"2662":{"title":"MSYS2 Setup","titles":["Set up VS Code","Windows","Installing VS Code"]},"2663":{"title":"Every other Operating System","titles":["Set up VS Code"]},"2664":{"title":"Extensions","titles":["Set up VS Code"]},"2665":{"title":"Configure VS Code for QMK","titles":[]},"2666":{"title":"Configuring VS Code","titles":["Configure VS Code for QMK"]},"2667":{"title":"Debugging ARM MCUs with Visual Studio Code","titles":[]},"2668":{"title":"Arm/ChibiOS Early Initialization","titles":[]},"2669":{"title":"early_hardware_init_pre()","titles":["Arm/ChibiOS Early Initialization"]},"2670":{"title":"early_hardware_init_post()","titles":["Arm/ChibiOS Early Initialization"]},"2671":{"title":"board_init()","titles":["Arm/ChibiOS Early Initialization"]},"2672":{"title":"WeAct Blackpill (STM32F4x1)","titles":[]},"2673":{"title":"Pin Usage Limitations","titles":["WeAct Blackpill (STM32F4x1)"]},"2674":{"title":"Unusable pins","titles":["WeAct Blackpill (STM32F4x1)","Pin Usage Limitations"]},"2675":{"title":"Pins to be avoided","titles":["WeAct Blackpill (STM32F4x1)","Pin Usage Limitations"]},"2676":{"title":"Shared Usage","titles":["WeAct Blackpill (STM32F4x1)","Pin Usage Limitations"]},"2677":{"title":"Limited Usage","titles":["WeAct Blackpill (STM32F4x1)","Pin Usage Limitations"]},"2678":{"title":"Additional Information","titles":["WeAct Blackpill (STM32F4x1)"]},"2679":{"title":"Bootloader issues","titles":["WeAct Blackpill (STM32F4x1)","Additional Information"]},"2680":{"title":"Tiny UF2 Support","titles":["WeAct Blackpill (STM32F4x1)","Additional Information"]},"2681":{"title":"Proton C","titles":[]},"2682":{"title":"Features","titles":["Proton C"]},"2683":{"title":"Warnings","titles":["Proton C"]},"2684":{"title":"Manual Conversion","titles":["Proton C"]},"2685":{"title":"Raspberry Pi RP2040","titles":[]},"2686":{"title":"GPIO","titles":["Raspberry Pi RP2040"]},"2687":{"title":"Pin nomenclature","titles":["Raspberry Pi RP2040","GPIO"]},"2688":{"title":"Alternate functions","titles":["Raspberry Pi RP2040","GPIO"]},"2689":{"title":"Selecting hardware peripherals and drivers","titles":["Raspberry Pi RP2040"]},"2690":{"title":"I2C Driver","titles":["Raspberry Pi RP2040","Selecting hardware peripherals and drivers"]},"2691":{"title":"SPI Driver","titles":["Raspberry Pi RP2040","Selecting hardware peripherals and drivers"]},"2692":{"title":"UART Driver","titles":["Raspberry Pi RP2040","Selecting hardware peripherals and drivers"]},"2693":{"title":"Double-tap reset boot-loader entry","titles":["Raspberry Pi RP2040"]},"2694":{"title":"Pre-defined RP2040 boards","titles":["Raspberry Pi RP2040"]},"2695":{"title":"Generic Pro Micro RP2040","titles":["Raspberry Pi RP2040","Pre-defined RP2040 boards"]},"2696":{"title":"Generic RP2040 board","titles":["Raspberry Pi RP2040","Pre-defined RP2040 boards"]},"2697":{"title":"Split keyboard support","titles":["Raspberry Pi RP2040"]},"2698":{"title":"RP2040 second stage bootloader selection","titles":["Raspberry Pi RP2040"]},"2699":{"title":"RP2040 Community Edition","titles":["Raspberry Pi RP2040"]},"2700":{"title":"Choosing an Arm MCU","titles":[]},"2701":{"title":"Selecting an already-supported MCU","titles":["Choosing an Arm MCU"]},"2702":{"title":"STM32 families","titles":["Choosing an Arm MCU","Selecting an already-supported MCU"]},"2703":{"title":"Non-STM32 families","titles":["Choosing an Arm MCU","Selecting an already-supported MCU"]},"2704":{"title":"Adding support for a new STM32 MCU (for an existing family)","titles":["Choosing an Arm MCU"]},"2705":{"title":"Adding support for a new STM32 Family","titles":["Choosing an Arm MCU"]},"2706":{"title":"Adding support for a new MCU Family","titles":["Choosing an Arm MCU"]},"2707":{"title":"Adding Your Keyboard to QMK","titles":[]},"2708":{"title":"readme.md","titles":["Adding Your Keyboard to QMK"]},"2709":{"title":"keyboard.json","titles":["Adding Your Keyboard to QMK"]},"2710":{"title":"Hardware Configuration","titles":["Adding Your Keyboard to QMK","keyboard.json"]},"2711":{"title":"Matrix Configuration","titles":["Adding Your Keyboard to QMK","keyboard.json"]},"2712":{"title":"Diode Matrix","titles":["Adding Your Keyboard to QMK","keyboard.json","Matrix Configuration"]},"2713":{"title":"Direct Pin Matrix","titles":["Adding Your Keyboard to QMK","keyboard.json","Matrix Configuration"]},"2714":{"title":"Layout Macros","titles":["Adding Your Keyboard to QMK","keyboard.json"]},"2715":{"title":"Additional Configuration","titles":["Adding Your Keyboard to QMK"]},"2716":{"title":"Configuration Options","titles":["Adding Your Keyboard to QMK","Additional Configuration"]},"2717":{"title":"Build Options","titles":["Adding Your Keyboard to QMK","Additional Configuration"]},"2718":{"title":"PR checklists","titles":[]},"2719":{"title":"Requirements for all PRs","titles":["PR checklists"]},"2720":{"title":"Keymap PRs","titles":["PR checklists"]},"2721":{"title":"Keyboard PRs","titles":["PR checklists"]},"2722":{"title":"Core PRs","titles":["PR checklists"]},"2723":{"title":"Notes","titles":["PR checklists"]},"2724":{"title":"Review Process","titles":["PR checklists"]},"2725":{"title":"Example GPLv2 Header","titles":["PR checklists"]},"2726":{"title":"Proprietary Vendor Libraries","titles":[]},"2727":{"title":"Architecture Constraints","titles":["Proprietary Vendor Libraries"]},"2728":{"title":"Common Vendor Library Restrictions","titles":["Proprietary Vendor Libraries"]},"2729":{"title":"Bluetooth Stack Licensing Examples","titles":["Proprietary Vendor Libraries"]},"2730":{"title":"Why the System Library Exception Doesn't Apply","titles":["Proprietary Vendor Libraries"]},"2731":{"title":"System Library Requirements","titles":["Proprietary Vendor Libraries","Why the System Library Exception Doesn't Apply"]},"2732":{"title":"Why Vendor Libraries Fail These Requirements","titles":["Proprietary Vendor Libraries","Why the System Library Exception Doesn't Apply"]},"2733":{"title":"Attempted Workarounds","titles":["Proprietary Vendor Libraries"]},"2734":{"title":"Architectural Separation Attempts","titles":["Proprietary Vendor Libraries","Attempted Workarounds"]},"2735":{"title":"Loader-Based Separation","titles":["Proprietary Vendor Libraries","Attempted Workarounds"]},"2736":{"title":"Real-World Examples","titles":["Proprietary Vendor Libraries"]},"2737":{"title":"Bluetooth/Wireless Stacks","titles":["Proprietary Vendor Libraries","Real-World Examples"]},"2738":{"title":"HAL and Driver Libraries","titles":["Proprietary Vendor Libraries","Real-World Examples"]},"2739":{"title":"Mixed Proprietary/Open","titles":["Proprietary Vendor Libraries","Real-World Examples"]},"2740":{"title":"Legal and Practical Consequences","titles":["Proprietary Vendor Libraries"]},"2741":{"title":"Evaluation Criteria for Libraries","titles":["Proprietary Vendor Libraries"]},"2742":{"title":"Policy Implementation","titles":["Proprietary Vendor Libraries"]},"2743":{"title":"Summary","titles":["Proprietary Vendor Libraries"]},"2744":{"title":"Quantum Keycodes","titles":[]},"2745":{"title":"QMK Keycodes","titles":["Quantum Keycodes"]},"2746":{"title":"Quantum Painter","titles":[]},"2747":{"title":"Quantum Painter Configuration","titles":["Quantum Painter"]},"2748":{"title":"Quantum Painter CLI Commands","titles":["Quantum Painter"]},"2749":{"title":"Quantum Painter Display Drivers","titles":["Quantum Painter"]},"2750":{"title":"Quantum Painter Drawing API","titles":["Quantum Painter"]},"2751":{"title":"Quantum Painter LVGL Integration","titles":[]},"2752":{"title":"Enabling LVGL","titles":["Quantum Painter LVGL Integration"]},"2753":{"title":"Quantum Painter LVGL API","titles":["Quantum Painter LVGL Integration"]},"2754":{"title":"Quantum Painter LVGL Attach","titles":["Quantum Painter LVGL Integration","Quantum Painter LVGL API"]},"2755":{"title":"Quantum Painter LVGL Detach","titles":["Quantum Painter LVGL Integration","Quantum Painter LVGL API"]},"2756":{"title":"Enabling/Disabling LVGL features","titles":["Quantum Painter LVGL Integration"]},"2757":{"title":"Changing the LVGL task frequency","titles":["Quantum Painter LVGL Integration"]},"2758":{"title":"QMK Font Format","titles":[]},"2759":{"title":"Block Header","titles":["QMK Font Format"]},"2760":{"title":"Font descriptor block","titles":["QMK Font Format"]},"2761":{"title":"ASCII glyph table","titles":["QMK Font Format"]},"2762":{"title":"Unicode glyph table","titles":["QMK Font Format"]},"2763":{"title":"Font palette block","titles":["QMK Font Format"]},"2764":{"title":"Font data block","titles":["QMK Font Format"]},"2765":{"title":"QMK Graphics Format","titles":[]},"2766":{"title":"Block Header","titles":["QMK Graphics Format"]},"2767":{"title":"Graphics descriptor block","titles":["QMK Graphics Format"]},"2768":{"title":"Frame offset block","titles":["QMK Graphics Format"]},"2769":{"title":"Frame descriptor block","titles":["QMK Graphics Format"]},"2770":{"title":"Frame palette block","titles":["QMK Graphics Format"]},"2771":{"title":"Frame delta block","titles":["QMK Graphics Format"]},"2772":{"title":"Frame data block","titles":["QMK Graphics Format"]},"2773":{"title":"QMK QGF/QFF RLE data schema","titles":[]},"2774":{"title":"List of Useful Core Functions To Make Your Keyboard Better","titles":[]},"2775":{"title":"(OLKB) Tri Layers","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2776":{"title":"update_tri_layer(x, y, z)","titles":["List of Useful Core Functions To Make Your Keyboard Better","(OLKB) Tri Layers"]},"2777":{"title":"Example","titles":["List of Useful Core Functions To Make Your Keyboard Better","(OLKB) Tri Layers","update_tri_layer(x, y, z)"]},"2778":{"title":"update_tri_layer_state(state, x, y, z)","titles":["List of Useful Core Functions To Make Your Keyboard Better","(OLKB) Tri Layers"]},"2779":{"title":"Example","titles":["List of Useful Core Functions To Make Your Keyboard Better","(OLKB) Tri Layers","update_tri_layer_state(state, x, y, z)"]},"2780":{"title":"Setting the Persistent Default Layer","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2781":{"title":"Resetting the keyboard","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2782":{"title":"Reset to bootloader","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2783":{"title":"Wiping the EEPROM (Persistent Storage)","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2784":{"title":"Tap random key","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2785":{"title":"Software Timers","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2786":{"title":"Supporting Your Keyboard in QMK Configurator","titles":[]},"2787":{"title":"How the Configurator Understands Keyboards","titles":["Supporting Your Keyboard in QMK Configurator"]},"2788":{"title":"Building the JSON file","titles":["Supporting Your Keyboard in QMK Configurator"]},"2789":{"title":"How the Configurator Programs Keys","titles":["Supporting Your Keyboard in QMK Configurator"]},"2790":{"title":"Issues and Hazards","titles":["Supporting Your Keyboard in QMK Configurator"]},"2791":{"title":"Workarounds","titles":["Supporting Your Keyboard in QMK Configurator","Issues and Hazards"]},"2792":{"title":"Non-rectangular keys","titles":["Supporting Your Keyboard in QMK Configurator","Issues and Hazards","Workarounds"]},"2793":{"title":"Vertically-offset keys","titles":["Supporting Your Keyboard in QMK Configurator","Issues and Hazards","Workarounds"]},"2794":{"title":"Glossary of QMK Terms","titles":[]},"2795":{"title":"ARM","titles":["Glossary of QMK Terms"]},"2796":{"title":"AVR","titles":["Glossary of QMK Terms"]},"2797":{"title":"AZERTY","titles":["Glossary of QMK Terms"]},"2798":{"title":"Backlight","titles":["Glossary of QMK Terms"]},"2799":{"title":"Bluetooth","titles":["Glossary of QMK Terms"]},"2800":{"title":"Bootloader","titles":["Glossary of QMK Terms"]},"2801":{"title":"Bootmagic","titles":["Glossary of QMK Terms"]},"2802":{"title":"C","titles":["Glossary of QMK Terms"]},"2803":{"title":"Colemak","titles":["Glossary of QMK Terms"]},"2804":{"title":"Compile","titles":["Glossary of QMK Terms"]},"2805":{"title":"Dvorak","titles":["Glossary of QMK Terms"]},"2806":{"title":"Dynamic Macro","titles":["Glossary of QMK Terms"]},"2807":{"title":"Eclipse","titles":["Glossary of QMK Terms"]},"2808":{"title":"Firmware","titles":["Glossary of QMK Terms"]},"2809":{"title":"git","titles":["Glossary of QMK Terms"]},"2810":{"title":"GitHub","titles":["Glossary of QMK Terms"]},"2811":{"title":"ISP","titles":["Glossary of QMK Terms"]},"2812":{"title":"hid_listen","titles":["Glossary of QMK Terms"]},"2813":{"title":"Keycode","titles":["Glossary of QMK Terms"]},"2814":{"title":"Key Down","titles":["Glossary of QMK Terms"]},"2815":{"title":"Key Up","titles":["Glossary of QMK Terms"]},"2816":{"title":"Keymap","titles":["Glossary of QMK Terms"]},"2817":{"title":"Layer","titles":["Glossary of QMK Terms"]},"2818":{"title":"Leader Key","titles":["Glossary of QMK Terms"]},"2819":{"title":"LED","titles":["Glossary of QMK Terms"]},"2820":{"title":"Make","titles":["Glossary of QMK Terms"]},"2821":{"title":"Matrix","titles":["Glossary of QMK Terms"]},"2822":{"title":"Macro","titles":["Glossary of QMK Terms"]},"2823":{"title":"MCU","titles":["Glossary of QMK Terms"]},"2824":{"title":"Modifier","titles":["Glossary of QMK Terms"]},"2825":{"title":"Mousekeys","titles":["Glossary of QMK Terms"]},"2826":{"title":"N-Key Rollover (NKRO)","titles":["Glossary of QMK Terms"]},"2827":{"title":"Oneshot Modifier","titles":["Glossary of QMK Terms"]},"2828":{"title":"ProMicro","titles":["Glossary of QMK Terms"]},"2829":{"title":"Pull Request","titles":["Glossary of QMK Terms"]},"2830":{"title":"QWERTY","titles":["Glossary of QMK Terms"]},"2831":{"title":"QWERTZ","titles":["Glossary of QMK Terms"]},"2832":{"title":"Rollover","titles":["Glossary of QMK Terms"]},"2833":{"title":"Scancode","titles":["Glossary of QMK Terms"]},"2834":{"title":"Space Cadet Shift","titles":["Glossary of QMK Terms"]},"2835":{"title":"Tap","titles":["Glossary of QMK Terms"]},"2836":{"title":"Tap Dance","titles":["Glossary of QMK Terms"]},"2837":{"title":"Teensy","titles":["Glossary of QMK Terms"]},"2838":{"title":"Underlight","titles":["Glossary of QMK Terms"]},"2839":{"title":"Unicode","titles":["Glossary of QMK Terms"]},"2840":{"title":"Unit Testing","titles":["Glossary of QMK Terms"]},"2841":{"title":"USB","titles":["Glossary of QMK Terms"]},"2842":{"title":"USB Host (or simply Host)","titles":["Glossary of QMK Terms"]},"2843":{"title":"Couldn't Find the Term You're Looking For?","titles":[]},"2844":{"title":"info.json Reference","titles":[]},"2845":{"title":"General Metadata","titles":["info.json Reference"]},"2846":{"title":"Hardware Configuration","titles":["info.json Reference"]},"2847":{"title":"Firmware Configuration","titles":["info.json Reference"]},"2848":{"title":"APA102","titles":["info.json Reference"]},"2849":{"title":"Audio","titles":["info.json Reference"]},"2850":{"title":"Backlight","titles":["info.json Reference"]},"2851":{"title":"Battery","titles":["info.json Reference"]},"2852":{"title":"Wireless/Bluetooth","titles":["info.json Reference"]},"2853":{"title":"Bootmagic","titles":["info.json Reference"]},"2854":{"title":"Caps Word","titles":["info.json Reference"]},"2855":{"title":"Combo","titles":["info.json Reference"]},"2856":{"title":"DIP Switches","titles":["info.json Reference"]},"2857":{"title":"EEPROM","titles":["info.json Reference"]},"2858":{"title":"Encoder","titles":["info.json Reference"]},"2859":{"title":"Host","titles":["info.json Reference"]},"2860":{"title":"Indicators","titles":["info.json Reference"]},"2861":{"title":"(Custom) Keycodes","titles":["info.json Reference"]},"2862":{"title":"Layouts","titles":["info.json Reference"]},"2863":{"title":"Leader Key","titles":["info.json Reference"]},"2864":{"title":"LED Matrix","titles":["info.json Reference"]},"2865":{"title":"Matrix","titles":["info.json Reference"]},"2866":{"title":"Mouse Keys","titles":["info.json Reference"]},"2867":{"title":"One Shot","titles":["info.json Reference"]},"2868":{"title":"PS/2","titles":["info.json Reference"]},"2869":{"title":"QMK LUFA Bootloader","titles":["info.json Reference"]},"2870":{"title":"RGBLight","titles":["info.json Reference"]},"2871":{"title":"RGB Matrix","titles":["info.json Reference"]},"2872":{"title":"Secure","titles":["info.json Reference"]},"2873":{"title":"Split Keyboard","titles":["info.json Reference"]},"2874":{"title":"Stenography","titles":["info.json Reference"]},"2875":{"title":"USB","titles":["info.json Reference"]},"2876":{"title":"WS2812","titles":["info.json Reference"]},"2877":{"title":"Language-specific Keycodes","titles":[]},"2878":{"title":"Selecting Your Host Keyboard Layout","titles":["Language-specific Keycodes"]},"2879":{"title":"Sendstring Support","titles":["Language-specific Keycodes"]},"2880":{"title":"Header Files","titles":["Language-specific Keycodes"]},"2881":{"title":"Squeezing the most out of AVR","titles":[]},"2882":{"title":"rules.mk Settings","titles":["Squeezing the most out of AVR"]},"2883":{"title":"config.h Settings","titles":["Squeezing the most out of AVR"]},"2884":{"title":"Audio Settings","titles":["Squeezing the most out of AVR"]},"2885":{"title":"Layers","titles":["Squeezing the most out of AVR"]},"2886":{"title":"OLED tweaks","titles":["Squeezing the most out of AVR"]},"2887":{"title":"RGB Settings","titles":["Squeezing the most out of AVR"]},"2888":{"title":"Final Thoughts","titles":[]},"2889":{"title":"Getting Help","titles":[]},"2890":{"title":"Realtime Chat","titles":["Getting Help"]},"2891":{"title":"OLKB Subreddit","titles":["Getting Help"]},"2892":{"title":"GitHub Issues","titles":["Getting Help"]},"2893":{"title":"Feature support policies","titles":[]},"2894":{"title":"System Constraints","titles":["Feature support policies"]},"2895":{"title":"Deprecation & Removal Policy","titles":["Feature support policies"]},"2896":{"title":"How much advance notice will be given?","titles":["Feature support policies","Deprecation & Removal Policy"]},"2897":{"title":"How will deprecation be communicated?","titles":["Feature support policies","Deprecation & Removal Policy"]},"2898":{"title":"Tap-Hold Configuration Options","titles":[]},"2899":{"title":"Tapping Term","titles":["Tap-Hold Configuration Options"]},"2900":{"title":"Example","titles":["Tap-Hold Configuration Options","Tapping Term"]},"2901":{"title":"Dynamic Tapping Term","titles":["Tap-Hold Configuration Options","Tapping Term"]},"2902":{"title":"Tap-Or-Hold Decision Modes","titles":["Tap-Hold Configuration Options"]},"2903":{"title":"Comparison","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes"]},"2904":{"title":"Distinct taps (AABB)","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes","Comparison"]},"2905":{"title":"Nested tap (ABBA)","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes","Comparison"]},"2906":{"title":"Rolling keys (ABAB)","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes","Comparison"]},"2907":{"title":"Default Mode","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes"]},"2908":{"title":"Permissive Hold","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes"]},"2909":{"title":"Hold On Other Key Press","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes"]},"2910":{"title":"Quick Tap Term","titles":["Tap-Hold Configuration Options"]},"2911":{"title":"Flow Tap","titles":["Tap-Hold Configuration Options"]},"2912":{"title":"is_flow_tap_key()","titles":["Tap-Hold Configuration Options","Flow Tap"]},"2913":{"title":"get_flow_tap_term()","titles":["Tap-Hold Configuration Options","Flow Tap"]},"2914":{"title":"Chordal Hold","titles":["Tap-Hold Configuration Options"]},"2915":{"title":"Chordal Hold Handedness","titles":["Tap-Hold Configuration Options","Chordal Hold"]},"2916":{"title":"Per-chord customization","titles":["Tap-Hold Configuration Options","Chordal Hold"]},"2917":{"title":"Retro Tapping","titles":["Tap-Hold Configuration Options"]},"2918":{"title":"Retro Shift","titles":["Tap-Hold Configuration Options","Retro Tapping"]},"2919":{"title":"Speculative Hold","titles":["Tap-Hold Configuration Options"]},"2920":{"title":"Why do we include the key record for the per key functions?","titles":["Tap-Hold Configuration Options"]},"2921":{"title":"Why are there no *_kb or *_user functions?!","titles":["Tap-Hold Configuration Options"]},"2922":{"title":"QMK Syllabus","titles":[]},"2923":{"title":"Beginning Topics","titles":[]},"2924":{"title":"Intermediate Topics","titles":[]},"2925":{"title":"Advanced Topics","titles":[]},"2926":{"title":"Understanding QMK's Code","titles":[]},"2927":{"title":"Startup","titles":["Understanding QMK's Code"]},"2928":{"title":"The Main Loop","titles":["Understanding QMK's Code"]},"2929":{"title":"Matrix Scanning","titles":["Understanding QMK's Code","The Main Loop"]},"2930":{"title":"Matrix to Physical Layout Map","titles":["Understanding QMK's Code","The Main Loop","Matrix Scanning"]},"2931":{"title":"Keycode Assignment","titles":["Understanding QMK's Code","The Main Loop","Matrix Scanning"]},"2932":{"title":"State Change Detection","titles":["Understanding QMK's Code","The Main Loop","Matrix Scanning"]},"2933":{"title":"Process Record","titles":["Understanding QMK's Code","The Main Loop","Matrix Scanning"]},"2934":{"title":"Unit Testing","titles":[]},"2935":{"title":"Google Test and Google Mock","titles":["Unit Testing"]},"2936":{"title":"Use of C++","titles":["Unit Testing"]},"2937":{"title":"Adding Tests for New or Existing Features","titles":["Unit Testing"]},"2938":{"title":"Running the Tests","titles":["Unit Testing"]},"2939":{"title":"Debugging the Tests","titles":["Unit Testing"]},"2940":{"title":"Full Integration Tests","titles":["Unit Testing"]},"2941":{"title":"Keycode String","titles":[]},"2942":{"title":"Tracing Variables","titles":[]}},"dirtCount":0,"index":[["ąžerty",{"2":{"2880":1}}],["ąƚɂɻɣɉʣ",{"2":{"2748":2}}],["µs",{"2":{"2865":1}}],["↓",{"2":{"2788":3}}],["└──",{"2":{"2601":3}}],["└row1",{"2":{"2459":3}}],["├──",{"2":{"2601":4}}],["✔6",{"2":{"2515":1}}],["✔5",{"2":{"2515":4}}],["✔4",{"2":{"2515":2}}],["✔3",{"2":{"2515":4}}],["✔2",{"2":{"2515":3}}],["✔",{"2":{"2515":447}}],["✔️",{"2":{"341":1,"720":12,"1189":4,"1208":1,"1209":1,"2255":2,"2685":10,"2697":6}}],["¥",{"2":{"2508":1}}],["€",{"2":{"2467":1}}],["┌─┘3",{"2":{"2459":2}}],["┌─┤1",{"2":{"2459":2}}],["┌─┤0",{"2":{"2459":2}}],["─────┴────────┘",{"2":{"2459":8}}],["│",{"2":{"2459":25,"2601":2}}],["│└row0",{"2":{"2459":3}}],["ಠ",{"2":{"2323":2}}],["🇺🇦",{"2":{"2323":1}}],["🎉👍",{"2":{"340":1,"607":1}}],["🤣",{"2":{"2323":1}}],["≤",{"2":{"2323":4}}],["æ",{"2":{"2323":2}}],["å",{"2":{"2323":2,"2877":1}}],["ツ",{"2":{"2322":1}}],["ћ",{"2":{"2322":1}}],["□",{"2":{"1696":25}}],["■",{"2":{"1696":15}}],["ñ",{"2":{"1587":1}}],["⇒",{"2":{"1532":3,"1533":3}}],["\\tmod",{"2":{"1746":1}}],["\\t~0",{"2":{"1746":1}}],["\\tkc",{"2":{"1746":2}}],["\\tko",{"2":{"1746":2}}],["\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tkc",{"2":{"1746":4}}],["\\t\\tmod",{"2":{"1746":1}}],["\\t\\treturn",{"2":{"1657":1}}],["\\tif",{"2":{"1657":1}}],["\\t",{"2":{"1486":1,"1657":1,"1744":1,"1746":6,"1747":2}}],["\\t12",{"2":{"1486":1}}],["\\t24",{"2":{"1486":1}}],["\\t36",{"2":{"1486":1}}],["✅",{"2":{"1417":1,"2255":1}}],["^ge^s^s^w^c",{"2":{"2295":1}}],["^3+0",{"2":{"2000":1}}],["^=",{"2":{"1413":1}}],["^",{"2":{"1406":1,"2017":1,"2044":1,"2459":1,"2503":1,"2515":1,"2539":1,"2558":1}}],["ひらがな",{"2":{"1355":1}}],["変換",{"2":{"1355":1}}],["無変換",{"2":{"1355":1}}],["ç",{"0":{"1352":1}}],["²",{"2":{"692":1}}],["¹",{"2":{"692":1,"2655":1}}],["être",{"2":{"616":1}}],["¯",{"2":{"490":2}}],["☐",{"2":{"490":1}}],["¬",{"2":{"490":2}}],["☒",{"2":{"461":1,"490":1,"2433":2}}],["ψ",{"2":{"427":9,"445":1,"446":5,"447":5,"448":5,"450":2,"451":2,"452":3,"453":1,"454":4,"461":1,"471":1,"472":1,"474":1,"480":1,"481":1,"490":1,"2425":5,"2433":1,"2577":1,"2707":17,"2845":2}}],["\`action",{"2":{"2311":1}}],["\`all\`",{"2":{"452":1}}],["\`layer",{"2":{"2311":2}}],["\`lalt\`",{"2":{"2311":1}}],["\`length\`",{"2":{"2050":1}}],["\`led",{"2":{"1844":1}}],["\`tapping",{"2":{"2310":1}}],["\`finished\`",{"2":{"2311":2}}],["\`ff\`",{"2":{"2310":2}}],["\`f\`",{"2":{"2310":1}}],["\`buffer\`",{"2":{"2310":1}}],["\`reset\`",{"2":{"2311":2}}],["\`rgb",{"2":{"2066":1}}],["\`raw",{"2":{"2050":1}}],["\`data\`",{"2":{"2050":1}}],["\`develop\`",{"2":{"373":1}}],["\`oled",{"2":{"1845":1,"2068":1}}],["\`offset\`",{"2":{"532":1}}],["\`esc\`",{"2":{"2310":1}}],["\`effect",{"2":{"1845":1,"2068":1}}],["\`encoder",{"2":{"307":2}}],["\`",{"2":{"1607":1,"1747":3,"1764":1,"1845":1,"2068":1,"2311":7,"2547":3,"2548":3,"2770":12}}],["\`set",{"2":{"1764":1}}],["\`some",{"2":{"1607":1}}],["\`start\`",{"2":{"532":1}}],["\`kc",{"2":{"1425":1}}],["\`qk",{"2":{"674":1,"1425":1}}],["\`qmk",{"2":{"416":2,"417":2,"418":2,"454":1}}],["\`cd\`",{"2":{"446":1,"447":1,"448":1,"2425":1}}],["\`master\`",{"2":{"373":1,"2723":3}}],["❌",{"2":{"341":1,"720":6,"1417":3}}],["⭕",{"2":{"341":1,"720":4}}],["😃",{"2":{"2403":1,"2843":1}}],["💩",{"2":{"2323":1}}],["🐍",{"2":{"2322":1}}],["👍🎉",{"2":{"340":1,"607":1}}],["😉",{"2":{"123":1}}],["→",{"2":{"176":3,"683":1,"684":2,"685":1,"2324":2}}],["麦田",{"2":{"160":1}}],["|0",{"2":{"2787":1}}],["|ent|",{"2":{"2787":1}}],["|3",{"2":{"2787":1}}],["|2",{"2":{"2787":1}}],["|1",{"2":{"2787":1}}],["|6",{"2":{"2787":1}}],["|5",{"2":{"2787":1}}],["|4",{"2":{"2787":1}}],["|9",{"2":{"2787":1}}],["|8",{"2":{"2787":1}}],["|7",{"2":{"2787":1}}],["|nlk|",{"2":{"2787":1}}],["|ing",{"2":{"1990":1}}],["|mod",{"2":{"1758":1,"2551":5,"2917":1}}],["|=",{"2":{"1527":2,"1983":2,"2023":1}}],["||",{"2":{"1425":1,"1527":1,"1606":1,"2166":1,"2310":2,"2311":1,"2374":9,"2702":1,"2900":1,"2915":1,"2916":1}}],["|kc",{"2":{"681":3}}],["|long",{"2":{"681":1}}],["|",{"2":{"116":1,"681":4,"731":1,"769":4,"828":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1191":20,"1194":32,"1197":32,"1216":2,"1313":1,"1315":1,"1375":2,"1406":18,"1416":1,"1427":26,"1430":13,"1443":2,"1532":19,"1696":9,"1749":3,"1769":2,"1846":1,"1947":1,"1948":1,"1980":4,"1983":1,"1985":8,"2069":1,"2165":1,"2374":1,"2403":2,"2459":28,"2461":6,"2495":6,"2505":2,"2508":1,"2515":2,"2539":1,"2547":8,"2548":14,"2558":1,"2559":1,"2600":1,"2616":1,"2618":1,"2619":1,"2644":1,"2787":24,"2788":11,"2907":72,"2908":48,"2909":24,"2912":1,"2914":24,"2917":22}}],["5+",{"2":{"1980":2}}],["5=64",{"2":{"1948":1}}],["59",{"2":{"1680":1}}],["58s",{"2":{"2495":1}}],["587968d6cbc2b0e1c7147540872f2a67e59ca18b",{"2":{"2403":1}}],["58",{"2":{"1680":1,"2000":1}}],["54",{"2":{"1680":1}}],["536",{"2":{"2748":1}}],["535",{"2":{"2234":1}}],["53",{"2":{"1680":1,"2000":1}}],["51",{"2":{"1680":1,"1919":1,"2000":1,"2532":1,"2784":1}}],["512",{"2":{"756":1,"1946":1,"2282":1}}],["56",{"2":{"1521":1,"1680":1,"2000":1,"2608":1}}],["5625",{"2":{"586":1}}],["575",{"2":{"1770":3}}],["57",{"2":{"1680":1,"2403":1}}],["577ch",{"2":{"1362":1}}],["577c",{"2":{"1362":1}}],["57600",{"2":{"1204":1,"1269":1}}],["5kb",{"2":{"2886":1}}],["5kro",{"2":{"1353":1}}],["5kω",{"2":{"1194":1}}],["5u",{"2":{"1326":1}}],["55",{"2":{"856":1,"1680":1}}],["55k",{"2":{"856":1}}],["5v",{"2":{"686":2,"687":1,"1293":1,"1294":3,"1295":2,"1673":1,"1767":1,"2254":1,"2273":3,"2477":1,"2480":2,"2492":2,"2677":1,"2682":1,"2683":2,"2684":3,"2686":1}}],["5rows",{"2":{"311":1}}],["52583",{"2":{"1364":1}}],["525",{"2":{"746":1}}],["52",{"2":{"181":2,"1680":1,"2784":1}}],["5291",{"2":{"114":1}}],["5",{"0":{"598":1,"2300":1,"2311":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"176":1,"188":1,"191":1,"199":3,"211":2,"222":2,"249":1,"266":1,"308":1,"317":1,"369":1,"371":1,"406":2,"516":1,"553":1,"556":1,"559":3,"568":1,"587":2,"655":1,"690":1,"692":4,"746":1,"857":2,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":2,"1126":2,"1159":1,"1160":2,"1204":1,"1245":3,"1296":2,"1409":1,"1416":1,"1417":1,"1441":1,"1448":1,"1461":1,"1486":1,"1521":1,"1587":1,"1592":1,"1619":2,"1642":2,"1678":2,"1679":1,"1680":1,"1696":1,"1714":1,"1716":1,"1758":1,"1769":2,"1772":3,"1790":1,"1792":1,"1840":1,"1846":1,"1919":31,"1924":1,"1927":2,"1930":1,"1947":2,"1958":1,"1960":3,"2000":1,"2003":1,"2006":1,"2012":1,"2060":1,"2069":1,"2074":3,"2161":1,"2170":1,"2183":3,"2187":1,"2207":1,"2245":1,"2268":1,"2270":3,"2289":1,"2294":1,"2296":4,"2297":1,"2302":1,"2315":2,"2370":1,"2372":2,"2378":1,"2380":1,"2385":1,"2403":3,"2487":1,"2503":2,"2508":2,"2511":2,"2515":9,"2521":1,"2525":3,"2532":31,"2533":2,"2541":3,"2553":1,"2643":1,"2651":1,"2729":1,"2738":1,"2748":2,"2749":2,"2766":2,"2769":3,"2788":2,"2789":1,"2793":2,"2847":1,"2854":1,"2864":2,"2865":2,"2871":2,"2872":1,"2873":1,"2886":1,"2915":3,"2917":1,"2929":1}}],["50",{"2":{"765":1,"1289":1,"1497":1,"1606":1,"1680":26,"1943":1,"2003":2,"2014":2,"2064":1,"2187":3,"2308":4,"2855":2,"2900":1,"2901":6}}],["5000",{"2":{"1592":1,"1930":1,"2176":1,"2643":1,"2854":1,"2872":1}}],["500",{"2":{"559":2,"562":1,"654":2,"856":2,"1448":1,"1512":1,"1998":1,"2010":1,"2013":1,"2191":4,"2268":1,"2270":1,"2875":2}}],["500ms",{"2":{"176":1,"1756":1,"2270":1}}],["50ms",{"2":{"149":1,"1602":1,"2901":1}}],["5050",{"0":{"1998":1},"2":{"118":1,"1998":2}}],["5x7",{"2":{"143":2,"253":2}}],["5x8",{"2":{"143":4,"1691":2}}],["5x6",{"2":{"143":4,"222":1}}],["5x13",{"2":{"114":1,"249":1}}],["5ms",{"2":{"119":2,"1947":1,"2536":2,"2901":3}}],["$5",{"2":{"2828":1}}],["$path",{"2":{"2621":1}}],["$home",{"2":{"2585":1,"2586":1,"2621":4}}],["$qmk",{"2":{"423":3}}],["$id",{"2":{"308":1}}],["$",{"2":{"111":1,"176":1,"348":1,"370":2,"371":1,"373":3,"427":11,"445":1,"446":1,"448":1,"450":1,"451":1,"452":1,"453":1,"461":2,"471":1,"472":1,"474":1,"480":1,"481":1,"571":1,"587":1,"727":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1312":4,"1435":2,"1442":2,"1443":2,"2375":1,"2425":1,"2433":2,"2440":9,"2503":1,"2515":1,"2539":1,"2558":1,"2585":1,"2586":1,"2600":5,"2627":2,"2630":2,"2632":1,"2667":2,"2707":1,"2720":1,"2748":5}}],["≈10ms",{"2":{"94":1}}],["⚠",{"2":{"70":23,"448":1,"490":1,"2425":1}}],[">line",{"2":{"2750":1}}],[">width",{"2":{"2750":2}}],[">>>>>>>",{"2":{"2627":1}}],[">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>",{"2":{"2608":2}}],[">>>",{"2":{"2608":3}}],[">0",{"2":{"2548":1}}],[">1",{"2":{"2548":2}}],[">|",{"2":{"2461":4}}],[">height",{"2":{"2750":2}}],[">held",{"2":{"2309":5}}],[">hold",{"2":{"2309":2}}],[">interrupted",{"2":{"2309":1,"2310":3,"2311":1}}],[">init",{"2":{"1844":1,"2066":1}}],[">pressed",{"2":{"2309":1,"2310":3,"2311":1,"2312":1}}],[">m2s",{"2":{"2270":1}}],[">s2m",{"2":{"2270":1}}],[">state",{"2":{"324":2}}],[">keys",{"2":{"1606":2}}],[">keycode",{"2":{"1606":5}}],[">=",{"2":{"1527":2,"1606":1,"2073":1,"2307":1,"2308":1,"2374":10,"2773":1}}],[">finished",{"2":{"325":1,"2309":1}}],[">count",{"2":{"325":1,"2307":1,"2308":2,"2309":2,"2310":3,"2311":2,"2312":2}}],[">tap",{"2":{"324":1,"325":1,"1326":2,"1527":2,"1765":1,"2309":3,"2562":1,"2563":3,"2564":1}}],[">user",{"2":{"324":1,"325":1,"2309":1}}],[">event",{"2":{"307":2,"324":1,"325":1,"591":6,"629":2,"645":1,"1326":4,"1377":1,"1378":1,"1413":4,"1425":1,"1442":2,"1443":1,"1450":4,"1451":2,"1456":1,"1466":1,"1765":1,"1771":5,"1918":1,"1956":2,"2023":1,"2024":1,"2025":1,"2044":1,"2167":2,"2168":3,"2170":2,"2218":1,"2309":1,"2562":1,"2563":3,"2564":2,"2777":2,"2901":4}}],[">",{"2":{"70":1,"428":1,"471":2,"472":2,"474":1,"480":1,"481":2,"645":1,"1328":6,"1406":1,"1425":2,"1438":1,"1466":1,"1521":10,"2014":1,"2073":2,"2074":1,"2167":1,"2168":1,"2270":1,"2374":2,"2403":1,"2548":3,"2598":2,"2725":1,"2750":6}}],["~1",{"2":{"2886":1}}],["~175ms",{"2":{"2312":1}}],["~400",{"2":{"2882":1}}],["~5",{"2":{"2675":1}}],["~$6",{"2":{"2672":1,"2888":1}}],["~$",{"2":{"2403":4}}],["~mouse",{"2":{"2023":1}}],["~mod",{"2":{"1527":1,"2165":1}}],["~0x05",{"2":{"2772":1}}],["~0x04",{"2":{"2771":1}}],["~0x03",{"2":{"2770":1}}],["~0x02",{"2":{"2762":1,"2769":1}}],["~0x01",{"2":{"2761":1,"2768":1}}],["~0x00",{"2":{"2760":1,"2767":1}}],["~0",{"2":{"1746":4}}],["~",{"2":{"70":3,"416":1,"417":1,"418":1,"419":1,"427":5,"446":1,"447":1,"448":1,"507":2,"508":1,"587":1,"1665":1,"1667":1,"1747":1,"1749":2,"1983":1,"1985":3,"2165":1,"2425":1,"2505":2,"2515":2,"2539":1,"2558":1,"2598":5,"2599":1,"2600":1,"2601":1,"2630":2}}],["~22k",{"2":{"2675":1}}],["~2",{"2":{"6":1,"10":1}}],["7da94ac5",{"2":{"2403":1}}],["7kohm",{"2":{"2260":1}}],["7kω",{"2":{"2257":1}}],["7k",{"2":{"1980":3}}],["7k25",{"2":{"1159":1}}],["7=256",{"2":{"1948":1}}],["79",{"2":{"1680":1,"2000":1}}],["7949",{"2":{"65":1}}],["78",{"2":{"1680":1}}],["777",{"2":{"2748":1}}],["77",{"2":{"1680":1}}],["73",{"2":{"1680":1,"2000":1}}],["73b4",{"2":{"371":1}}],["7172",{"2":{"2501":1}}],["71",{"2":{"1521":1,"1680":1}}],["7114",{"2":{"32":1}}],["74",{"2":{"1521":1,"1680":1}}],["72mhz",{"2":{"2682":1}}],["72",{"2":{"726":1,"1155":1,"1680":1,"1839":1,"2059":1}}],["7capi8w",{"2":{"673":1}}],["7u",{"2":{"266":1,"767":1}}],["7000h",{"2":{"1362":2}}],["70",{"2":{"529":1,"613":1,"1329":1,"1680":1,"2000":1,"2608":1}}],["70keys",{"2":{"241":2}}],["70ec",{"2":{"114":1,"149":1}}],["76",{"2":{"520":1,"522":1,"1521":1,"1680":1,"1919":1,"2000":1,"2532":1}}],["76k",{"2":{"211":1}}],["7648",{"2":{"49":1}}],["750",{"2":{"2379":1,"2492":1}}],["750ms",{"2":{"1680":1}}],["75000",{"2":{"1204":1}}],["75kbps",{"2":{"568":1,"2268":1}}],["75",{"2":{"211":2,"266":1,"308":1,"442":1,"1521":1,"1680":1}}],["7521",{"2":{"134":1}}],["7splus",{"2":{"143":2}}],["7skb",{"2":{"143":2,"211":1}}],["7",{"2":{"70":1,"76":1,"149":1,"172":1,"173":1,"211":1,"236":1,"369":1,"407":1,"564":1,"587":2,"613":1,"690":1,"692":4,"714":1,"763":2,"769":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"800":1,"826":1,"855":1,"887":1,"919":1,"921":1,"954":1,"955":1,"988":1,"989":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1159":1,"1195":2,"1198":2,"1214":1,"1266":4,"1354":2,"1486":1,"1521":1,"1619":2,"1678":1,"1679":1,"1680":1,"1696":1,"1714":1,"1716":1,"1769":2,"1772":3,"1919":5,"1927":2,"1947":2,"1948":3,"1960":3,"2000":1,"2003":1,"2021":1,"2185":1,"2207":1,"2289":1,"2294":1,"2296":5,"2379":1,"2381":1,"2402":1,"2501":1,"2503":2,"2508":4,"2511":2,"2515":8,"2525":3,"2532":5,"2533":2,"2541":3,"2553":1,"2627":1,"2750":3,"2769":1,"2788":2,"2789":1}}],["x=0",{"2":{"2750":1}}],["xbps",{"2":{"2594":1}}],["xvx",{"2":{"2567":1}}],["xl",{"2":{"2501":1}}],["x7f",{"2":{"2215":1}}],["x0",{"2":{"2750":1}}],["x0a",{"2":{"2215":1}}],["x09",{"2":{"2215":1}}],["x08",{"2":{"1696":1,"2215":1}}],["xmas",{"2":{"2181":1,"2537":1}}],["xml",{"0":{"342":1}}],["x+",{"2":{"2003":1}}],["x^2",{"2":{"2000":1}}],["xor",{"2":{"1422":2}}],["xorg",{"2":{"1358":1}}],["xo87",{"2":{"211":1}}],["xfer",{"2":{"1355":1}}],["x1b",{"2":{"2215":1}}],["x1",{"2":{"328":1,"2750":1}}],["xzy",{"2":{"249":1}}],["xprintf",{"2":{"2411":3}}],["xpm",{"2":{"380":3,"381":2,"382":1,"384":1}}],["xpack",{"0":{"380":1},"2":{"381":1,"384":1,"387":1}}],["xp",{"2":{"219":1}}],["xtap",{"2":{"2310":5}}],["xtx",{"2":{"211":1}}],["xt",{"2":{"211":4}}],["xt8x",{"2":{"211":1}}],["xt60",{"2":{"211":2}}],["x2",{"2":{"211":1,"2901":4}}],["x26",{"2":{"105":8,"272":4,"324":4,"325":6,"507":2,"645":2,"1378":1,"1443":2,"1511":5,"1527":6,"1585":1,"1606":3,"1622":6,"1744":1,"1746":6,"1747":2,"1918":2,"1941":1,"1983":1,"1985":5,"2014":2,"2023":1,"2024":2,"2063":11,"2073":7,"2160":2,"2165":2,"2166":1,"2189":3,"2270":2,"2279":1,"2298":2,"2309":9,"2374":25,"2562":2,"2563":6,"2564":2,"2645":8,"2900":3,"2912":1,"2913":4,"2942":1}}],["xs60",{"2":{"197":2,"199":1}}],["xy",{"2":{"176":1}}],["xicolinguada",{"2":{"2418":1}}],["xip",{"2":{"174":1,"191":1}}],["xiudi",{"2":{"102":9,"114":1,"211":1,"253":2,"266":1,"285":1}}],["xap",{"2":{"160":1,"199":1,"211":1}}],["x86",{"2":{"158":1,"2499":2}}],["xealous",{"2":{"294":1}}],["xealousbrown",{"2":{"114":1}}],["xelus22",{"2":{"58":1}}],["xelus",{"0":{"58":1},"2":{"58":4,"197":2,"211":8,"277":1}}],["xd96",{"2":{"102":2}}],["xd87",{"2":{"102":2}}],["xd84pro",{"2":{"102":2}}],["xd84",{"2":{"102":2}}],["xd68",{"2":{"102":2}}],["xd60",{"2":{"93":1,"102":2}}],["xd004",{"2":{"102":2,"211":1,"253":2}}],["xd002",{"2":{"102":2,"114":1,"285":1}}],["xd75",{"2":{"64":1,"102":2,"266":1}}],["x3c",{"2":{"55":2,"105":8,"348":2,"370":1,"373":1,"427":11,"428":13,"432":4,"434":1,"450":2,"451":2,"461":1,"473":3,"495":6,"496":4,"503":2,"532":2,"621":1,"714":2,"715":2,"718":2,"763":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1296":2,"1300":2,"1402":1,"1410":1,"1425":1,"1427":3,"1429":2,"1430":6,"1438":5,"1443":1,"1527":1,"1529":1,"1562":2,"1563":2,"1585":2,"1606":1,"1622":8,"1749":2,"1758":2,"1844":2,"1941":1,"1942":1,"1983":8,"1984":1,"1985":32,"1990":2,"2014":1,"2032":3,"2037":1,"2066":2,"2073":5,"2074":1,"2168":1,"2271":2,"2279":1,"2374":10,"2375":2,"2376":4,"2379":3,"2381":2,"2382":2,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2400":2,"2449":4,"2495":4,"2501":1,"2548":1,"2549":2,"2576":1,"2577":3,"2580":2,"2587":2,"2588":3,"2607":2,"2609":2,"2622":1,"2627":14,"2630":3,"2632":2,"2725":1,"2750":6,"2761":6,"2785":1,"2915":1,"2917":2}}],["x",{"0":{"108":1,"1372":1,"1653":1,"2776":1,"2778":1},"1":{"1654":1,"2777":1,"2779":1},"2":{"49":1,"70":1,"108":1,"113":2,"114":5,"211":3,"219":1,"222":1,"249":2,"266":2,"279":1,"294":1,"308":1,"317":1,"369":1,"370":1,"422":5,"540":1,"587":2,"1370":1,"1406":1,"1422":4,"1452":5,"1454":1,"1599":2,"1606":1,"1619":1,"1641":2,"1645":2,"1653":1,"1654":2,"1696":24,"1736":1,"1768":1,"1770":1,"1771":2,"1840":6,"1846":2,"1928":1,"1929":1,"1947":2,"1948":2,"1989":1,"1992":2,"2000":5,"2002":3,"2003":2,"2006":2,"2007":4,"2014":4,"2016":5,"2018":5,"2021":3,"2024":2,"2025":3,"2027":2,"2028":2,"2045":1,"2060":6,"2069":2,"2181":1,"2199":2,"2215":4,"2219":1,"2273":1,"2283":2,"2306":1,"2310":18,"2311":1,"2325":1,"2373":2,"2410":1,"2414":3,"2440":2,"2459":21,"2503":3,"2515":3,"2537":1,"2545":1,"2553":1,"2563":4,"2687":1,"2714":16,"2749":3,"2750":13,"2776":3,"2778":3,"2787":1,"2788":19,"2789":17,"2793":8,"2862":3,"2864":2,"2871":2,"2907":2,"2915":1,"2942":1}}],["xxxx",{"2":{"2183":1,"2721":4}}],["xxxxxxx",{"2":{"2512":1,"2515":1,"2551":2,"2787":1}}],["xxxxx",{"2":{"1661":1}}],["xxx",{"2":{"201":2,"283":7,"625":1,"765":4,"1417":1,"1751":1,"1752":1,"1758":2,"2787":5,"2917":2}}],["xx",{"2":{"28":1}}],["jdk",{"2":{"2649":1}}],["jre",{"2":{"2649":1}}],["jris75",{"2":{"2567":1}}],["jx",{"2":{"2410":1}}],["jerky",{"2":{"1930":1,"1982":1}}],["jels60v2",{"2":{"222":1}}],["jellybean",{"2":{"114":1,"199":1,"222":1,"285":1,"2063":3,"2887":1}}],["j8",{"2":{"1443":1}}],["jkl",{"2":{"1616":1}}],["jk1",{"2":{"328":1}}],["jk",{"2":{"266":1,"1599":4,"1616":1}}],["jkeys",{"2":{"168":1,"211":2}}],["jm60",{"2":{"241":2}}],["jig",{"2":{"2292":1}}],["jittery",{"2":{"2017":1}}],["jian",{"2":{"236":1}}],["jis",{"0":{"1355":1},"2":{"222":1,"1343":2,"1355":1,"2508":9}}],["jisplit89",{"2":{"143":2}}],["jb",{"2":{"211":1}}],["jf",{"2":{"211":1,"249":1}}],["jsmith",{"2":{"2707":2}}],["jsjson",{"2":{"2000":1}}],["js",{"2":{"380":1,"1772":32,"1777":1,"2000":1,"2050":1,"2525":32}}],["jscotto",{"2":{"199":1,"217":5,"222":1}}],["json\`",{"2":{"454":1}}],["json>",{"2":{"427":1,"428":1,"2588":1}}],["json2c",{"0":{"436":1},"2":{"211":2,"436":1,"2577":1}}],["jsons",{"2":{"114":1}}],["jsonschema",{"2":{"76":1,"114":1,"160":1,"191":2,"222":1,"338":1,"664":1,"666":2,"2844":1}}],["json",{"0":{"120":1,"262":1,"369":1,"434":1,"602":1,"665":1,"1445":1,"1630":1,"2438":2,"2599":1,"2709":1,"2788":1,"2844":1},"1":{"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"1446":1,"1447":1,"1448":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1,"2860":1,"2861":1,"2862":1,"2863":1,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1,"2869":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2875":1,"2876":1},"2":{"70":32,"73":1,"75":1,"76":6,"109":1,"110":1,"111":1,"112":1,"114":5,"120":3,"132":2,"134":3,"141":1,"149":1,"169":3,"176":2,"184":4,"189":1,"191":8,"198":1,"199":5,"201":5,"211":22,"213":2,"222":1,"224":2,"232":1,"236":10,"238":1,"249":27,"262":2,"266":30,"277":3,"285":1,"293":1,"303":2,"305":1,"306":1,"308":1,"314":1,"315":1,"328":1,"333":4,"348":1,"363":2,"368":1,"369":1,"370":5,"373":4,"427":3,"431":4,"434":6,"435":2,"437":1,"441":2,"445":4,"446":3,"447":3,"448":2,"450":2,"451":2,"461":4,"498":2,"553":3,"576":1,"578":1,"579":3,"582":1,"583":1,"584":2,"586":3,"587":2,"590":1,"598":5,"602":2,"662":1,"663":3,"664":1,"665":1,"666":1,"667":4,"668":3,"670":1,"671":1,"681":1,"1286":1,"1387":1,"1400":2,"1402":1,"1404":1,"1427":1,"1445":2,"1627":3,"1628":4,"1630":4,"1981":1,"1986":3,"2050":1,"2390":1,"2407":1,"2425":3,"2435":6,"2436":2,"2438":3,"2439":1,"2567":14,"2577":2,"2583":1,"2588":2,"2599":2,"2600":5,"2601":1,"2602":1,"2603":4,"2662":2,"2666":2,"2667":2,"2709":1,"2710":2,"2711":1,"2712":2,"2713":1,"2714":1,"2721":9,"2787":1,"2788":10,"2789":3,"2790":2,"2793":2,"2844":4,"2847":1,"2862":2,"2864":1,"2865":1,"2870":1,"2871":1,"2878":2,"2915":2,"2925":1,"2930":1}}],["jtagen",{"2":{"1369":1}}],["jtag",{"0":{"1369":1},"2":{"160":1,"1369":4,"2491":4,"2496":1,"2811":1}}],["jnao",{"2":{"143":2}}],["jolly",{"2":{"2501":1}}],["jonasfasler",{"2":{"2418":1}}],["jones",{"2":{"222":1}}],["john",{"2":{"1517":3,"1599":2,"2707":1}}],["joint",{"2":{"2420":3,"2421":1}}],["joints",{"2":{"2418":2,"2421":1,"2427":3}}],["join",{"2":{"552":1,"666":1,"670":1,"2420":1,"2497":1}}],["job",{"0":{"364":1,"365":1,"366":1,"370":1,"580":1,"581":1,"582":1},"2":{"361":3,"363":1,"364":2,"370":1,"371":1,"372":2,"578":2,"579":5,"580":1,"581":1,"582":1,"586":1,"1531":1,"2602":1}}],["jobs>",{"2":{"427":2,"428":2}}],["jobs",{"2":{"360":4,"427":3,"453":1,"467":1,"577":1,"583":1,"2600":1}}],["joshajohnson",{"2":{"241":2}}],["jopr",{"2":{"191":1}}],["journey",{"2":{"133":1}}],["joysticks",{"2":{"49":1,"118":2,"277":1,"2000":1}}],["joystick",{"0":{"1766":1,"1774":1,"1776":1,"1778":1,"1779":1,"1781":1,"1783":1,"1786":1,"1788":1,"2000":1,"2525":1},"1":{"1767":1,"1768":1,"1769":1,"1770":1,"1771":1,"1772":1,"1773":1,"1774":1,"1775":2,"1776":1,"1777":2,"1778":1,"1779":1,"1780":2,"1781":1,"1782":2,"1783":1,"1784":2,"1785":2,"1786":1,"1787":2,"1788":1,"1789":2},"2":{"49":7,"63":1,"114":1,"118":1,"149":1,"160":2,"183":5,"188":1,"191":4,"199":1,"231":3,"236":1,"249":3,"285":1,"1766":2,"1767":2,"1768":3,"1769":11,"1770":7,"1771":8,"1772":32,"1774":1,"1775":2,"1778":1,"2000":21,"2525":33,"2933":1}}],["james",{"2":{"2934":1}}],["japan",{"2":{"1343":1}}],["japanese",{"2":{"176":1,"1355":1,"2878":1,"2880":3}}],["jacks",{"2":{"2256":1,"2258":1}}],["jackhumbert",{"2":{"674":1,"1521":1}}],["jack",{"2":{"674":1,"1340":3,"1434":3,"1439":1}}],["jacky",{"2":{"67":3,"72":1,"207":4,"211":2}}],["jan",{"2":{"530":1,"531":1,"532":2}}],["jane",{"2":{"122":2,"134":1}}],["java",{"0":{"385":1,"2649":1},"2":{"385":1,"2050":1,"2646":1,"2649":3}}],["jazz",{"2":{"294":2}}],["jay60",{"2":{"211":1}}],["jaykeeb",{"2":{"207":1,"217":1}}],["ja",{"2":{"199":1}}],["jj50",{"2":{"102":2,"253":2,"266":1}}],["jj4x4",{"2":{"102":2}}],["jj40",{"2":{"102":2,"253":2,"266":1}}],["j",{"2":{"65":1,"211":1,"219":2,"249":2,"266":2,"369":1,"423":1,"427":4,"428":2,"453":2,"467":2,"587":2,"1599":1,"1616":2,"2159":1,"2310":1,"2323":4,"2325":2,"2503":3,"2515":3,"2545":2,"2553":1,"2914":3}}],["jurisdiction",{"2":{"2728":1}}],["judged",{"2":{"2265":2}}],["judgment",{"2":{"408":1}}],["jumbo",{"0":{"1947":1}}],["jumpers",{"2":{"2501":1}}],["jumper",{"2":{"2386":2,"2388":2,"2391":2,"2476":1}}],["jumping",{"2":{"649":1,"1583":1}}],["jump",{"2":{"65":1,"74":1,"149":2,"176":1,"191":1,"614":1,"649":1,"650":3,"651":2,"652":2,"1484":1,"1583":1,"1585":2,"1619":2,"1942":2,"2159":1,"2662":2,"2669":2}}],["jumps",{"2":{"49":1}}],["jun",{"2":{"1340":1,"2405":1}}],["junco",{"2":{"253":2}}],["junk",{"2":{"149":1,"211":1}}],["justifiable",{"2":{"2719":1}}],["justification",{"2":{"2719":3,"2721":1}}],["just60",{"2":{"143":2}}],["just",{"0":{"608":1,"1317":1},"2":{"5":1,"45":1,"116":1,"173":1,"188":2,"233":1,"245":1,"320":1,"387":1,"453":1,"510":1,"598":1,"603":1,"764":1,"1244":2,"1265":1,"1312":1,"1335":1,"1351":1,"1369":1,"1413":1,"1416":2,"1419":1,"1421":1,"1433":1,"1441":1,"1443":1,"1444":1,"1450":2,"1454":1,"1467":1,"1471":1,"1479":1,"1486":1,"1511":1,"1518":1,"1522":1,"1528":1,"1531":1,"1583":1,"1599":1,"1603":1,"1606":1,"1610":1,"1612":1,"1613":1,"1657":1,"1675":1,"1749":1,"1756":2,"1757":1,"1805":2,"1917":1,"1947":1,"2015":1,"2016":2,"2075":1,"2190":1,"2253":1,"2258":2,"2267":1,"2301":1,"2302":2,"2310":1,"2313":1,"2318":1,"2368":1,"2410":1,"2416":1,"2422":2,"2427":1,"2497":1,"2551":1,"2567":12,"2569":1,"2583":1,"2596":1,"2606":1,"2609":1,"2660":1,"2662":1,"2707":1,"2723":1,"2734":1,"2749":1,"2778":1,"2788":1,"2901":1,"2902":1,"2919":1,"2936":1,"2937":1,"2942":1}}],["jpg",{"2":{"674":1,"2721":1}}],["jps",{"2":{"36":1}}],["jp",{"0":{"35":1},"1":{"36":1},"2":{"35":1,"36":4}}],["9a",{"2":{"2231":1,"2233":1,"2235":1,"2237":1}}],["95",{"2":{"1680":1,"2580":1,"2761":2}}],["9501",{"2":{"51":1}}],["9b5c",{"2":{"370":1,"371":1}}],["91",{"2":{"1680":1}}],["910",{"2":{"211":1}}],["9126",{"2":{"199":1}}],["9174",{"2":{"48":1}}],["9171",{"2":{"32":1}}],["9",{"2":{"114":1,"152":1,"211":1,"249":1,"266":3,"308":1,"328":1,"369":1,"407":1,"415":1,"418":1,"423":2,"522":1,"587":2,"690":1,"692":4,"860":1,"925":1,"959":1,"993":1,"1129":1,"1393":1,"1427":1,"1428":1,"1486":1,"1508":1,"1521":1,"1587":1,"1619":3,"1680":1,"1689":1,"1772":3,"1919":3,"1960":3,"2000":1,"2183":1,"2189":3,"2191":2,"2239":1,"2252":4,"2253":3,"2284":1,"2289":1,"2294":1,"2296":4,"2403":4,"2503":2,"2508":4,"2511":2,"2515":8,"2525":3,"2532":3,"2541":3,"2553":1,"2784":1,"2788":2,"2789":1,"2875":2}}],["967",{"2":{"2232":1}}],["9600",{"2":{"1269":1,"2291":1}}],["9603",{"2":{"74":1}}],["96",{"0":{"1357":1},"2":{"211":1,"342":1,"347":1,"951":1,"1665":1,"1667":1,"1668":1,"1669":1,"1680":1,"1839":1,"2000":1,"2505":1,"2513":2,"2515":1,"2524":1,"2531":2,"2662":1}}],["9657",{"2":{"114":1}}],["92",{"2":{"1680":1,"2000":1}}],["9207",{"2":{"686":1,"2492":1}}],["9203",{"2":{"686":1,"2492":1}}],["9205",{"2":{"114":1,"686":1,"2492":1}}],["9284",{"2":{"50":1}}],["97",{"2":{"1330":1,"1680":1}}],["9700",{"2":{"64":1}}],["9703",{"2":{"63":1}}],["9738",{"2":{"49":1}}],["93",{"2":{"1680":1}}],["9335",{"2":{"92":1}}],["9308",{"2":{"51":1}}],["9356",{"2":{"50":1}}],["9355",{"2":{"50":1}}],["9310",{"2":{"50":1}}],["9315",{"2":{"50":1}}],["9318",{"2":{"46":1}}],["98",{"2":{"1680":1}}],["9800",{"0":{"1999":1},"2":{"118":1,"1999":2}}],["9824",{"2":{"114":1}}],["9826",{"2":{"63":1}}],["9842",{"2":{"93":1}}],["9832",{"2":{"50":1}}],["9864",{"2":{"49":1}}],["9856",{"2":{"49":1}}],["94",{"2":{"1680":1}}],["9404",{"2":{"114":1}}],["9485",{"2":{"73":1}}],["9487",{"2":{"49":1}}],["9471",{"2":{"49":1}}],["99",{"2":{"423":1,"1680":1,"2284":1,"2875":1,"2929":1}}],["9973",{"2":{"270":1,"277":1}}],["9952",{"2":{"65":1}}],["9940",{"2":{"63":1}}],["9949",{"2":{"49":1}}],["9905",{"2":{"51":1}}],["9964",{"2":{"49":1}}],["9987",{"2":{"48":1}}],["90°",{"2":{"1410":1,"1769":1}}],["906",{"2":{"1159":2}}],["9054",{"2":{"50":1}}],["9055",{"2":{"50":1}}],["9023",{"2":{"50":1}}],["9020",{"2":{"49":1}}],["9001",{"2":{"1606":1}}],["900",{"2":{"1023":2,"1057":2,"1282":1,"1770":2}}],["900k",{"2":{"645":1}}],["9005",{"2":{"50":1}}],["900000",{"2":{"645":1}}],["9000",{"2":{"23":1,"45":1}}],["9019",{"2":{"26":1}}],["90",{"0":{"1947":1},"2":{"8":1,"1487":1,"1680":1,"1946":2,"1947":3,"1948":2,"1993":2,"2004":2,"2016":2,"2018":2,"2403":1,"2750":1}}],["zxcvm",{"2":{"2880":3}}],["zuoya",{"2":{"2567":1}}],["zr",{"2":{"2294":3}}],["zdst",{"2":{"2288":1}}],["zle12864b",{"2":{"2276":1}}],["zone",{"2":{"2633":1}}],["zolentech",{"2":{"2276":1}}],["zoom",{"2":{"2003":9}}],["zodiark",{"2":{"222":1}}],["z0",{"2":{"1427":1,"1428":1}}],["zshrc",{"2":{"507":1}}],["zsh",{"2":{"505":1,"507":1}}],["zsa",{"0":{"5":1},"2":{"74":1,"241":1,"249":1,"270":1,"277":3}}],["zk3mod",{"2":{"249":1}}],["z34",{"2":{"241":2}}],["z12",{"2":{"241":2}}],["z150",{"2":{"37":2,"159":2,"160":1}}],["zadig",{"0":{"682":1},"1":{"683":1,"684":1,"685":1,"686":1},"2":{"240":3,"682":1,"683":2,"684":3,"685":1,"686":2,"1315":2}}],["zwag75",{"2":{"211":1}}],["z70ultra",{"2":{"211":1,"253":2}}],["ztboards",{"2":{"211":2}}],["zip",{"2":{"361":2}}],["zigotica",{"2":{"241":2,"249":1}}],["zicodia",{"2":{"211":1}}],["zinc",{"0":{"32":1},"2":{"32":1,"143":6}}],["zenkaku",{"2":{"2508":1}}],["zeal60",{"2":{"1585":1}}],["zed65",{"2":{"222":1,"249":1}}],["zeus",{"2":{"211":1}}],["zeroes",{"2":{"211":1,"2021":1}}],["zero",{"2":{"195":1,"222":1,"236":1,"427":1,"717":2,"747":1,"1365":1,"1501":1,"1532":2,"1533":1,"2023":1,"2045":1,"2296":1,"2372":1,"2645":1,"2669":1,"2758":1,"2760":2,"2765":1,"2767":1,"2882":1}}],["zcar",{"2":{"176":1}}],["zvecr",{"2":{"173":1,"182":1,"266":1}}],["z",{"0":{"2776":1,"2778":1},"1":{"2777":1,"2779":1},"2":{"152":1,"191":1,"249":1,"257":1,"258":1,"259":2,"266":1,"277":1,"369":1,"587":2,"758":1,"1422":4,"1502":1,"1507":1,"1521":1,"1532":1,"1587":1,"1594":1,"1596":1,"1616":1,"1619":1,"1673":1,"1685":1,"1736":1,"1757":1,"1768":1,"2006":1,"2156":7,"2160":5,"2165":1,"2239":2,"2289":1,"2294":1,"2310":1,"2358":1,"2465":2,"2503":3,"2515":3,"2553":1,"2776":3,"2778":5,"2784":2,"2911":1,"2912":1,"2916":1,"2919":1}}],["zygomorph",{"2":{"93":1}}],["+size",{"2":{"2721":1}}],["++col",{"2":{"2073":1}}],["++row",{"2":{"2073":1}}],["++i",{"2":{"1529":1,"2750":2}}],["+6",{"2":{"1919":1,"2532":1}}],["+4",{"2":{"1919":1,"2532":1}}],["+3",{"2":{"1919":1,"2532":1,"2676":1}}],["+2",{"2":{"1919":1,"2532":1}}],["+1",{"2":{"1919":1,"2532":1}}],["+127",{"2":{"1768":1}}],["+7",{"2":{"1484":1}}],["+5v",{"2":{"2488":1}}],["+5",{"2":{"1484":1,"1919":1,"2532":1}}],["+=",{"2":{"234":9,"570":4,"571":1,"621":1,"727":2,"798":3,"824":3,"853":3,"885":3,"917":3,"952":3,"986":3,"1020":3,"1054":3,"1088":3,"1122":3,"1156":3,"1212":3,"1329":2,"1411":1,"1435":3,"1442":1,"1443":1,"1606":1,"1616":1,"1633":1,"2025":2,"2440":2,"2598":1,"2746":16,"2749":13,"2750":2,"2901":1}}],["+cleanup",{"2":{"199":1}}],["+",{"0":{"1377":2,"1378":1},"2":{"25":1,"99":2,"134":2,"149":1,"176":3,"199":2,"222":1,"236":1,"332":1,"348":2,"405":1,"639":1,"713":9,"1191":8,"1194":8,"1195":1,"1197":8,"1198":1,"1308":4,"1406":18,"1425":1,"1427":15,"1428":1,"1430":8,"1497":1,"1526":1,"1527":3,"1532":42,"1588":1,"1589":4,"1736":4,"1737":4,"1744":1,"1746":11,"1747":4,"1749":2,"1754":1,"1756":1,"1757":1,"1775":1,"1805":1,"1846":1,"1980":4,"2014":3,"2021":4,"2052":2,"2063":2,"2069":1,"2156":6,"2159":16,"2160":9,"2186":2,"2239":1,"2270":1,"2311":1,"2337":1,"2403":2,"2459":8,"2461":20,"2505":1,"2511":1,"2515":2,"2539":1,"2548":2,"2558":1,"2666":8,"2746":22,"2760":1,"2761":1,"2767":1,"2769":1,"2784":1,"2787":10,"2788":2,"2789":1,"2793":4,"2864":1,"2871":1,"2899":1,"2900":2,"2901":1,"2907":36,"2908":24,"2909":12,"2914":16,"2917":8,"2919":1}}],["8bpp",{"2":{"2769":2}}],["8bit",{"2":{"166":1,"1467":1,"2885":1}}],["8px",{"2":{"2750":2}}],["8t",{"2":{"2245":1}}],["86",{"2":{"1680":1}}],["8x",{"2":{"1678":1,"1679":1}}],["8xv1",{"2":{"211":1}}],["81",{"2":{"1159":1,"1680":1,"1918":1}}],["8192",{"2":{"746":1,"747":1,"753":1}}],["8k4",{"2":{"918":1,"921":2,"953":1,"955":2,"987":1,"989":2}}],["8k",{"2":{"857":2,"922":2,"956":2,"990":2,"1024":2,"1055":2,"1058":4,"1092":2,"1126":2,"1160":2}}],["8mhz",{"2":{"328":1,"2492":2}}],["87",{"2":{"1680":1}}],["87h",{"2":{"266":1}}],["8777",{"2":{"49":1}}],["8778",{"2":{"49":1}}],["80x160",{"2":{"2746":1,"2749":1}}],["80k",{"2":{"856":1}}],["8000",{"2":{"2027":1,"2028":1}}],["800",{"2":{"656":1,"1999":1,"2010":1,"2014":2}}],["800ms",{"2":{"656":1}}],["800khz",{"2":{"285":1}}],["80",{"2":{"222":1,"562":2,"856":1,"1459":1,"1680":16,"1918":3,"1929":1,"2749":3,"2750":2,"2847":2}}],["8l",{"2":{"211":1}}],["8|16|32",{"2":{"166":1}}],["88",{"2":{"1680":1}}],["88200u",{"2":{"716":1}}],["8893",{"2":{"65":1}}],["8830",{"2":{"37":1}}],["8200",{"2":{"1999":1}}],["82",{"2":{"1680":1,"1918":1,"2000":1}}],["8237",{"2":{"587":1}}],["8236",{"2":{"371":1}}],["8291",{"2":{"49":1}}],["8256",{"2":{"49":1}}],["8269",{"2":{"24":1}}],["8",{"2":{"49":1,"74":1,"111":1,"114":1,"166":1,"199":1,"211":2,"285":1,"348":2,"369":1,"407":1,"563":1,"587":2,"658":1,"690":1,"692":4,"698":2,"714":1,"716":2,"752":1,"756":1,"782":1,"788":1,"857":2,"890":1,"921":1,"922":2,"955":1,"956":2,"989":1,"990":2,"1023":1,"1024":2,"1027":1,"1057":1,"1058":2,"1061":1,"1092":2,"1095":1,"1126":2,"1160":2,"1163":1,"1194":1,"1249":1,"1297":1,"1300":1,"1410":1,"1413":1,"1417":1,"1486":1,"1521":2,"1526":2,"1532":1,"1603":3,"1619":2,"1679":1,"1680":1,"1696":3,"1714":1,"1716":1,"1758":1,"1768":2,"1769":1,"1770":1,"1772":3,"1775":1,"1846":1,"1919":3,"1920":1,"1924":1,"1927":2,"1928":2,"1929":2,"1930":3,"1933":1,"1941":2,"1943":1,"1946":2,"1947":3,"1948":2,"1960":3,"1985":1,"2000":1,"2003":1,"2021":2,"2025":2,"2069":1,"2182":1,"2186":2,"2189":2,"2207":1,"2231":1,"2235":1,"2244":1,"2245":1,"2279":2,"2281":1,"2282":2,"2289":1,"2291":1,"2294":1,"2296":4,"2325":1,"2337":1,"2402":1,"2491":1,"2500":1,"2501":3,"2503":2,"2508":4,"2511":2,"2515":8,"2525":3,"2532":3,"2533":2,"2541":3,"2545":1,"2547":2,"2552":1,"2553":1,"2560":1,"2649":1,"2747":1,"2748":3,"2750":3,"2758":1,"2765":1,"2771":2,"2788":2,"2789":1,"2796":1,"2864":1,"2870":2,"2871":1,"2885":1,"2917":1}}],["85",{"2":{"1521":1,"1680":1,"2000":1,"2187":1}}],["8591",{"2":{"114":2,"1599":1}}],["8532",{"2":{"94":1}}],["8537",{"2":{"37":1}}],["8564",{"2":{"63":1}}],["8582",{"2":{"35":1}}],["84",{"2":{"1680":1}}],["8422",{"2":{"133":1,"134":1}}],["8403",{"2":{"93":1}}],["8441",{"2":{"49":1}}],["8499",{"2":{"37":1}}],["8412",{"2":{"37":1}}],["8472",{"2":{"33":1}}],["8484",{"2":{"27":1}}],["89",{"2":{"1680":1,"1919":1,"2000":1,"2532":1}}],["8936",{"2":{"458":1,"615":1}}],["8979",{"2":{"38":1}}],["8977",{"2":{"38":1}}],["8974",{"2":{"28":1}}],["8968",{"2":{"38":1}}],["8959",{"2":{"38":1}}],["8958",{"2":{"38":1}}],["8957",{"2":{"38":1}}],["8954",{"2":{"38":1}}],["8903",{"2":{"28":1}}],["83",{"2":{"251":1,"1680":1,"1918":1}}],["8327",{"2":{"50":1}}],["8321",{"2":{"21":1}}],["8318",{"2":{"49":1}}],["8348",{"2":{"22":1}}],["vqge7ok",{"2":{"2721":2}}],["vbat",{"2":{"2674":1}}],["vbus",{"2":{"1393":2,"1394":1,"2271":1,"2272":4,"2273":2,"2675":1}}],["v60",{"2":{"2434":1}}],["v=vkrppahlisy",{"2":{"2187":1}}],["vlc",{"2":{"2515":1}}],["vl",{"2":{"2501":1}}],["vl9",{"2":{"1919":1,"2532":1}}],["vl8",{"2":{"1919":1,"2532":1}}],["vl7",{"2":{"1919":1,"2532":1}}],["vl6",{"2":{"1919":1,"2532":1}}],["vl5",{"2":{"1919":1,"2532":1}}],["vl4",{"2":{"1919":1,"2532":1}}],["vl3",{"2":{"1919":1,"2532":1}}],["vl2",{"2":{"1919":1,"2532":1}}],["vl10",{"2":{"1919":1,"2532":1}}],["vl1",{"2":{"1919":1,"2532":1}}],["vl0",{"2":{"1919":1,"2532":1}}],["vlk",{"2":{"188":1,"191":1}}],["vddio",{"2":{"1214":1}}],["vdd",{"2":{"1191":1,"1194":1,"1197":1}}],["vcs",{"2":{"2594":2}}],["vcc",{"2":{"687":1,"802":1,"826":1,"828":1,"855":1,"887":1,"919":8,"954":8,"988":1,"1022":1,"1056":1,"1090":8,"1124":8,"1158":8,"1294":2,"1675":1,"1793":1,"2208":1,"2258":1,"2259":1,"2260":1,"2386":1,"2388":1,"2391":1,"2424":1,"2478":2,"2480":2,"2482":2,"2484":2,"2486":2,"2488":1,"2683":1,"2684":2}}],["vcl65",{"2":{"211":1}}],["vcl",{"2":{"211":1}}],["vk",{"2":{"188":1,"191":1,"2210":1}}],["vulnerability",{"2":{"312":1}}],["vuhopkep",{"2":{"149":1}}],["vusb",{"2":{"50":1,"134":1,"149":1,"249":1,"266":1,"562":1,"1316":1,"2927":1}}],["vn66",{"2":{"143":2}}],["vpath",{"2":{"114":2,"191":1,"727":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1616":1}}],["vss",{"2":{"1310":1}}],["vscode",{"2":{"199":1,"308":1,"521":1,"2593":1,"2662":1,"2667":3}}],["vs",{"0":{"625":2,"2658":1,"2661":1,"2665":1,"2666":1},"1":{"2659":1,"2660":1,"2661":1,"2662":2,"2663":1,"2664":1,"2666":1},"2":{"114":1,"199":1,"524":1,"1407":5,"2254":1,"2638":1,"2657":3,"2660":1,"2661":1,"2663":1,"2664":4,"2666":4,"2667":5,"2704":1,"2916":1,"2923":1}}],["vowel",{"2":{"2294":4}}],["vol",{"2":{"1746":4,"2510":2,"2515":2}}],["vold",{"2":{"209":1,"587":2,"1661":1,"1662":1,"1746":1,"2159":1,"2510":1,"2515":1}}],["volunteers",{"2":{"2566":2}}],["volunteer",{"2":{"2566":1}}],["volu",{"2":{"209":1,"587":2,"1661":1,"1662":1,"1746":1,"2159":1,"2510":1,"2515":1}}],["volume",{"0":{"1482":1},"2":{"191":1,"687":1,"716":1,"1482":2,"1662":2,"1737":1,"1746":3,"2159":1,"2509":4,"2510":2,"2515":7,"2882":1}}],["voltages",{"2":{"687":1}}],["voltage",{"2":{"199":1,"308":1,"695":1,"724":8,"746":1,"1293":2,"1406":1,"1678":1,"1679":1,"1691":1,"1766":2,"2271":1,"2272":1,"2496":1,"2851":5}}],["volatile",{"2":{"114":1,"308":1,"2290":1}}],["volcano660",{"2":{"102":2,"114":1,"211":1}}],["voilà",{"2":{"1490":1}}],["voice",{"2":{"231":1,"1483":3,"1489":2,"1679":1,"2517":2}}],["voices",{"0":{"1483":1},"2":{"112":1,"559":2,"1483":4,"1489":2,"2517":2,"2849":2}}],["void",{"0":{"645":2,"703":2,"704":1,"706":1,"708":2,"709":1,"735":1,"737":1,"739":1,"741":1,"769":2,"806":2,"807":1,"809":1,"811":1,"813":1,"815":1,"817":1,"819":1,"821":2,"822":2,"832":1,"834":1,"836":1,"838":1,"840":1,"842":1,"844":1,"846":1,"848":1,"850":1,"864":1,"866":1,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"880":1,"882":1,"894":1,"896":1,"898":1,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"912":1,"914":1,"929":1,"931":1,"933":1,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"947":1,"949":1,"963":1,"965":1,"967":1,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"981":1,"983":1,"997":1,"999":1,"1001":1,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1017":1,"1031":1,"1033":1,"1035":1,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1051":1,"1065":1,"1067":1,"1069":1,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1083":1,"1085":1,"1099":1,"1101":1,"1103":1,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1117":1,"1119":1,"1133":1,"1135":1,"1137":1,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1151":1,"1153":1,"1167":1,"1169":1,"1171":1,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1185":1,"1187":1,"1220":1,"1222":1,"1224":1,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1240":1,"1247":2,"1254":1,"1262":2,"1268":1,"1270":1,"1272":1,"1274":1,"1276":1,"1278":1,"1302":2,"1303":1,"1305":1,"1307":2,"1540":1,"1543":1,"1545":1,"1566":2,"1567":2,"1568":2,"1569":2,"1570":2,"1571":2,"1572":1,"1574":1,"1576":1,"1578":2,"1579":2,"1580":2,"1581":1,"1646":2,"1647":2,"1648":2,"1649":2,"1650":2,"1651":2,"1652":2,"1653":1,"1698":1,"1700":2,"1701":2,"1702":1,"1704":2,"1705":1,"1707":1,"1709":1,"1711":1,"1713":1,"1715":1,"1717":1,"1719":1,"1724":1,"1726":1,"1728":1,"1730":1,"1778":2,"1779":1,"1781":1,"1786":1,"1788":1,"1810":2,"1811":2,"1815":2,"1816":2,"1817":1,"1821":1,"1822":1,"1851":2,"1852":2,"1853":2,"1854":2,"1855":2,"1856":2,"1857":1,"1859":1,"1861":1,"1863":1,"1865":1,"1867":2,"1868":2,"1869":2,"1870":2,"1871":1,"1873":2,"1874":2,"1875":2,"1876":2,"1877":1,"1879":2,"1880":2,"1881":2,"1882":2,"1883":1,"1885":1,"1887":1,"1889":1,"1891":1,"1893":2,"1894":2,"1895":2,"1896":2,"1897":1,"1899":2,"1900":1,"1902":1,"1904":1,"1962":2,"1963":1,"1965":1,"1967":1,"1969":1,"1974":2,"1975":1,"1977":1,"2054":1,"2056":1,"2077":2,"2078":2,"2079":2,"2080":2,"2081":2,"2082":2,"2083":1,"2085":1,"2087":1,"2089":1,"2091":1,"2093":2,"2094":2,"2095":2,"2096":2,"2097":1,"2099":2,"2100":2,"2101":2,"2102":2,"2103":1,"2105":2,"2106":2,"2107":2,"2108":2,"2109":1,"2111":2,"2112":2,"2113":2,"2114":2,"2115":1,"2117":2,"2118":2,"2119":2,"2120":2,"2121":1,"2123":1,"2125":1,"2127":1,"2129":1,"2131":2,"2132":2,"2133":2,"2134":2,"2135":1,"2137":1,"2139":1,"2141":1,"2143":2,"2144":1,"2146":1,"2148":1,"2221":1,"2223":1,"2225":1,"2227":1,"2229":1,"2231":1,"2233":1,"2235":1,"2237":1,"2239":2,"2327":1,"2329":1,"2331":2,"2332":2,"2333":1,"2335":1,"2337":2,"2338":2,"2339":2,"2340":1,"2342":1,"2350":1,"2352":2,"2353":1,"2355":1,"2360":1,"2362":2,"2363":2,"2364":2},"1":{"705":1,"707":1,"710":1,"736":1,"738":1,"740":1,"742":1,"808":1,"810":1,"812":1,"814":1,"816":1,"818":1,"820":1,"833":1,"835":1,"837":1,"839":1,"841":1,"843":1,"845":1,"847":1,"849":1,"851":1,"865":1,"867":1,"869":1,"871":1,"873":1,"875":1,"877":1,"879":1,"881":1,"883":1,"895":1,"897":1,"899":1,"901":1,"903":1,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"930":1,"932":1,"934":1,"936":1,"938":1,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"964":1,"966":1,"968":1,"970":1,"972":1,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"998":1,"1000":1,"1002":1,"1004":1,"1006":1,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":1,"1036":1,"1038":1,"1040":1,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1066":1,"1068":1,"1070":1,"1072":1,"1074":1,"1076":1,"1078":1,"1080":1,"1082":1,"1084":1,"1086":1,"1100":1,"1102":1,"1104":1,"1106":1,"1108":1,"1110":1,"1112":1,"1114":1,"1116":1,"1118":1,"1120":1,"1134":1,"1136":1,"1138":1,"1140":1,"1142":1,"1144":1,"1146":1,"1148":1,"1150":1,"1152":1,"1154":1,"1168":1,"1170":1,"1172":1,"1174":1,"1176":1,"1178":1,"1180":1,"1182":1,"1184":1,"1186":1,"1188":1,"1221":1,"1223":1,"1225":1,"1227":1,"1229":1,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1255":1,"1269":1,"1271":1,"1273":1,"1275":1,"1277":1,"1279":1,"1304":1,"1306":1,"1541":1,"1573":1,"1575":1,"1577":1,"1582":1,"1654":1,"1699":1,"1703":1,"1706":1,"1708":1,"1710":1,"1712":1,"1714":1,"1716":1,"1718":1,"1720":1,"1725":1,"1727":1,"1729":1,"1731":1,"1780":1,"1782":1,"1787":1,"1789":1,"1858":1,"1860":1,"1862":1,"1864":1,"1866":1,"1872":1,"1878":1,"1884":1,"1886":1,"1888":1,"1890":1,"1892":1,"1898":1,"1901":1,"1903":1,"1905":1,"1964":1,"1966":1,"1968":1,"1970":1,"1976":1,"1978":1,"2055":1,"2057":1,"2084":1,"2086":1,"2088":1,"2090":1,"2092":1,"2098":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2128":1,"2130":1,"2136":1,"2140":1,"2142":1,"2145":1,"2147":1,"2149":1,"2222":1,"2224":1,"2226":1,"2228":1,"2230":1,"2232":1,"2234":1,"2236":1,"2238":1,"2328":1,"2330":1,"2334":1,"2336":1,"2341":1,"2343":1,"2351":1,"2354":1,"2356":1,"2361":1,"2365":2},"2":{"31":1,"34":1,"46":2,"90":2,"105":3,"125":3,"185":3,"196":1,"222":1,"249":3,"348":1,"520":1,"622":1,"623":13,"633":1,"634":4,"636":4,"637":5,"639":1,"640":4,"643":4,"644":4,"645":14,"647":3,"648":8,"654":1,"725":2,"760":1,"769":1,"1319":1,"1413":2,"1414":8,"1451":1,"1466":2,"1474":1,"1481":2,"1511":2,"1557":4,"1585":1,"1599":1,"1612":1,"1695":1,"1696":2,"1749":2,"1751":2,"1801":3,"1807":4,"1844":1,"1849":1,"1939":1,"1940":3,"1941":2,"1942":1,"1948":35,"1951":1,"1988":13,"2014":2,"2015":3,"2019":6,"2028":1,"2032":2,"2039":16,"2040":5,"2046":1,"2066":1,"2072":1,"2075":1,"2170":2,"2189":2,"2191":3,"2247":31,"2270":10,"2277":2,"2278":2,"2279":2,"2280":2,"2283":33,"2307":1,"2308":6,"2309":5,"2310":8,"2311":8,"2312":8,"2373":1,"2441":4,"2594":1,"2645":2,"2669":1,"2670":1,"2671":1,"2749":5,"2750":22,"2754":2,"2755":1,"2933":12,"2942":1}}],["v1",{"0":{"363":1,"364":1,"365":1,"366":1},"2":{"86":1,"102":4,"114":1,"143":7,"149":2,"168":2,"197":10,"199":1,"207":1,"222":1,"226":1,"236":2,"253":2,"277":2,"300":1,"311":1,"370":2,"371":1,"373":4,"686":1,"1392":3,"2667":1,"2760":7,"2761":7,"2762":3,"2766":5,"2767":7,"2768":3,"2769":7,"2770":3,"2771":6,"2772":3}}],["v19",{"2":{"49":1}}],["v2j37s7",{"2":{"2501":1}}],["v2",{"2":{"56":2,"86":2,"114":1,"122":1,"143":2,"149":2,"168":2,"191":1,"197":4,"199":2,"207":2,"211":2,"217":4,"222":2,"236":2,"249":3,"277":1,"308":1,"311":24,"328":1,"383":1,"1392":2,"2498":1}}],["v2017",{"2":{"181":2}}],["v20",{"2":{"49":1}}],["v32a",{"2":{"197":2}}],["v3x",{"2":{"191":1}}],["v3",{"0":{"56":1},"2":{"56":2,"114":1,"149":2,"191":1,"211":1,"277":1,"2600":3}}],["vtor",{"2":{"50":1}}],["vault",{"2":{"333":1}}],["vault35",{"2":{"249":1}}],["vast",{"2":{"166":1,"1736":1}}],["vagrant",{"2":{"113":1,"114":2,"211":1}}],["vaguettelite",{"2":{"86":2}}],["vanilla",{"2":{"2720":1}}],["vaneelaex",{"2":{"86":2}}],["vaneela",{"2":{"86":2}}],["vanana",{"2":{"86":4}}],["varying",{"2":{"2063":3,"2285":1}}],["vary",{"2":{"1406":1,"2499":1,"2899":1}}],["var",{"2":{"527":3,"1324":2}}],["var>=",{"2":{"427":1,"428":2}}],["varaible",{"2":{"176":1}}],["variety",{"2":{"2000":1,"2698":1}}],["varies",{"2":{"1676":1,"1999":1,"2006":1,"2014":2,"2016":1,"2929":1}}],["variants",{"2":{"145":1,"211":1,"1283":1,"1284":1,"1285":1,"2323":1,"2379":1,"2492":2,"2567":1,"2569":1,"2832":1}}],["variant",{"2":{"114":1,"157":1,"222":3,"308":2,"387":1,"1951":2,"1952":1,"1984":1,"2379":1,"2645":1,"2721":1,"2749":1}}],["variations",{"2":{"236":1,"243":1,"331":1,"1285":1}}],["variation",{"0":{"55":1},"2":{"176":1,"1761":1}}],["variable",{"2":{"50":1,"65":1,"133":1,"134":3,"236":1,"285":1,"332":1,"419":1,"453":1,"467":1,"487":1,"494":1,"527":1,"540":1,"557":1,"667":2,"1378":6,"1407":1,"1428":2,"1435":1,"1515":2,"1533":1,"1659":1,"2025":1,"2039":1,"2040":1,"2050":2,"2189":1,"2288":1,"2303":1,"2400":1,"2410":1,"2411":2,"2427":1,"2518":2,"2621":1,"2667":2,"2670":1,"2762":1,"2763":1,"2764":1,"2768":1,"2770":1,"2772":1,"2901":1,"2942":11}}],["variables",{"0":{"2942":1},"2":{"49":2,"211":2,"302":1,"468":1,"553":1,"558":1,"668":1,"1378":1,"1413":1,"1422":1,"1432":1,"1496":1,"2025":1,"2305":1,"2411":2,"2669":1,"2670":1,"2684":1,"2942":5}}],["various",{"2":{"50":2,"114":1,"149":3,"160":1,"191":2,"211":1,"277":2,"303":1,"387":1,"398":1,"537":1,"553":2,"622":1,"1318":1,"1320":1,"1406":1,"1407":1,"1416":1,"1491":1,"1496":1,"1680":1,"1752":1,"2173":1,"2185":1,"2371":1,"2738":1,"2801":1,"2820":1,"2834":1,"2839":1,"2933":1}}],["vars",{"2":{"49":2,"2410":1}}],["valu",{"2":{"587":2,"1661":1,"2062":1,"2181":1,"2537":1,"2538":1}}],["valued",{"2":{"1413":1}}],["valueerror",{"2":{"532":2}}],["value>",{"2":{"427":1,"428":2,"473":1,"495":2}}],["values",{"0":{"474":1,"475":1,"480":1,"494":1,"495":1,"496":1,"541":1,"1511":1},"1":{"476":1,"477":1,"478":1,"479":1},"2":{"65":1,"70":1,"83":1,"182":1,"186":2,"198":2,"199":1,"231":1,"236":1,"249":1,"431":1,"474":1,"475":1,"489":2,"495":1,"496":1,"541":2,"559":1,"663":1,"666":1,"669":1,"670":1,"671":1,"687":1,"708":1,"716":1,"723":1,"731":1,"741":1,"746":1,"747":1,"748":1,"765":1,"821":1,"822":1,"848":1,"850":1,"856":1,"857":4,"860":1,"880":1,"882":1,"890":1,"912":1,"914":1,"921":1,"922":4,"925":1,"947":1,"949":1,"955":1,"956":4,"959":1,"981":1,"983":1,"989":1,"990":4,"993":1,"1015":1,"1017":1,"1023":1,"1024":4,"1027":1,"1049":1,"1051":1,"1057":1,"1058":4,"1061":1,"1083":1,"1085":1,"1092":4,"1095":1,"1117":1,"1119":1,"1126":4,"1129":1,"1151":1,"1153":1,"1159":1,"1160":4,"1163":1,"1185":1,"1187":1,"1194":1,"1195":1,"1198":1,"1216":1,"1238":1,"1240":1,"1269":1,"1286":1,"1307":1,"1319":1,"1407":1,"1412":1,"1413":4,"1482":1,"1487":2,"1511":2,"1562":1,"1564":1,"1584":1,"1758":2,"1769":1,"1770":4,"1775":1,"1840":2,"1917":2,"1920":2,"1933":2,"1943":1,"1946":2,"1947":1,"1948":1,"1951":1,"1981":1,"2002":1,"2006":2,"2007":1,"2010":1,"2014":2,"2021":1,"2025":7,"2060":2,"2063":1,"2185":2,"2211":1,"2268":1,"2283":1,"2293":1,"2296":2,"2313":1,"2315":1,"2372":3,"2411":1,"2459":1,"2490":1,"2496":1,"2669":1,"2689":1,"2690":1,"2691":1,"2692":1,"2695":1,"2707":1,"2710":2,"2721":3,"2747":1,"2750":1,"2758":1,"2760":1,"2761":1,"2765":1,"2769":2,"2785":1,"2793":1,"2917":2}}],["value",{"0":{"669":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"813":2,"815":2,"819":1,"840":2,"842":2,"846":1,"872":2,"874":2,"878":1,"904":2,"906":2,"910":1,"939":2,"941":2,"945":1,"973":2,"975":2,"979":1,"1007":2,"1009":2,"1013":1,"1041":2,"1043":2,"1047":1,"1075":2,"1077":2,"1081":1,"1109":2,"1111":2,"1115":1,"1143":2,"1145":2,"1149":1,"1177":2,"1179":2,"1183":1,"1230":2,"1232":2,"1236":1,"1250":1,"1253":1,"1255":1,"1258":1,"1261":1,"1273":1,"1279":1,"1497":1,"1541":1,"1575":1,"1577":1,"1582":1,"1718":1,"1723":1,"1785":1,"1786":1,"1788":1,"1814":1,"1820":1,"1825":1,"1828":1,"1831":1,"1834":1,"1837":1,"1858":1,"1859":1,"1861":1,"1872":1,"1878":1,"1888":1,"1898":1,"1901":1,"1903":1,"1905":1,"1908":1,"1911":1,"1973":1,"1976":1,"2084":1,"2098":1,"2104":1,"2110":1,"2116":1,"2126":1,"2136":1,"2142":1,"2145":1,"2147":1,"2149":1,"2152":1,"2155":1,"2328":1,"2346":1,"2349":1,"2354":1,"2356":1,"2359":1,"2361":1},"1":{"814":2,"816":2,"820":1,"841":2,"843":2,"847":1,"873":2,"875":2,"879":1,"905":2,"907":2,"911":1,"940":2,"942":2,"946":1,"974":2,"976":2,"980":1,"1008":2,"1010":2,"1014":1,"1042":2,"1044":2,"1048":1,"1076":2,"1078":2,"1082":1,"1110":2,"1112":2,"1116":1,"1144":2,"1146":2,"1150":1,"1178":2,"1180":2,"1184":1,"1231":2,"1233":2,"1237":1,"1787":1,"1789":1,"1860":1,"1862":1},"2":{"25":1,"45":2,"49":1,"63":1,"70":13,"90":1,"176":1,"191":1,"195":1,"222":1,"236":1,"317":1,"372":1,"406":5,"431":19,"470":1,"472":2,"475":1,"480":1,"482":1,"483":1,"487":3,"494":1,"520":1,"559":1,"562":2,"563":3,"567":1,"586":3,"587":1,"645":1,"654":1,"655":4,"658":2,"665":1,"666":1,"667":5,"669":2,"670":1,"685":1,"695":4,"696":4,"698":1,"705":3,"707":3,"716":7,"717":2,"725":1,"728":2,"738":3,"740":3,"745":2,"746":2,"747":1,"748":1,"751":1,"752":1,"756":1,"763":1,"807":1,"808":1,"810":3,"812":3,"814":2,"816":2,"820":1,"826":1,"834":1,"835":1,"837":3,"839":3,"841":2,"843":2,"847":1,"854":3,"855":1,"858":1,"866":1,"867":1,"869":3,"871":3,"873":2,"875":2,"877":3,"879":2,"887":1,"896":1,"897":1,"901":3,"903":3,"905":2,"907":2,"911":1,"918":3,"919":1,"920":1,"923":1,"931":1,"932":1,"936":3,"938":3,"940":2,"942":2,"946":1,"953":3,"954":1,"957":1,"965":1,"966":1,"970":3,"972":3,"974":2,"976":2,"980":1,"987":3,"988":1,"991":1,"999":1,"1000":1,"1004":3,"1006":3,"1008":2,"1010":2,"1014":1,"1021":4,"1022":1,"1025":1,"1033":1,"1034":1,"1038":3,"1040":3,"1042":2,"1044":2,"1048":1,"1055":4,"1056":1,"1059":1,"1067":1,"1068":1,"1072":3,"1074":3,"1076":2,"1078":2,"1080":3,"1082":2,"1089":4,"1090":1,"1091":1,"1093":1,"1101":1,"1102":1,"1106":3,"1108":3,"1110":2,"1112":2,"1114":3,"1116":2,"1123":4,"1124":1,"1125":1,"1127":1,"1135":1,"1136":1,"1140":3,"1142":3,"1144":2,"1146":2,"1148":3,"1150":2,"1157":4,"1158":1,"1161":1,"1169":1,"1170":1,"1174":3,"1176":3,"1178":2,"1180":2,"1182":3,"1184":2,"1205":1,"1214":1,"1222":1,"1223":1,"1227":3,"1229":3,"1231":2,"1233":2,"1237":1,"1289":1,"1304":3,"1306":3,"1406":1,"1413":4,"1414":2,"1456":1,"1474":1,"1487":1,"1492":1,"1497":6,"1511":5,"1512":5,"1515":1,"1516":3,"1517":1,"1557":1,"1641":3,"1654":2,"1656":1,"1661":1,"1675":1,"1739":1,"1751":1,"1752":1,"1756":1,"1758":1,"1766":1,"1769":3,"1770":3,"1777":4,"1783":1,"1786":1,"1787":3,"1789":1,"1803":1,"1840":1,"1841":1,"1843":8,"1844":2,"1846":3,"1849":5,"1860":1,"1862":1,"1878":1,"1890":1,"1892":1,"1920":1,"1929":1,"1930":1,"1933":3,"1942":1,"1946":1,"1948":2,"2000":1,"2007":4,"2016":1,"2017":4,"2028":2,"2039":1,"2040":1,"2060":1,"2061":1,"2062":2,"2063":23,"2064":1,"2069":7,"2086":3,"2088":3,"2104":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2128":1,"2130":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2160":1,"2180":2,"2181":6,"2182":4,"2198":9,"2201":10,"2202":2,"2203":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2238":1,"2247":3,"2265":1,"2268":1,"2269":1,"2270":1,"2280":1,"2283":1,"2290":1,"2297":1,"2310":2,"2311":1,"2313":1,"2349":1,"2372":4,"2373":1,"2375":1,"2439":1,"2440":1,"2446":1,"2459":3,"2518":1,"2537":6,"2538":2,"2669":1,"2695":1,"2721":1,"2750":3,"2760":1,"2767":1,"2770":1,"2779":1,"2844":1,"2850":1,"2864":3,"2870":6,"2871":7,"2873":1,"2895":1,"2901":9,"2910":2,"2915":1,"2917":1,"2918":1}}],["vald",{"2":{"587":2,"1661":1,"2062":1,"2181":1,"2537":1,"2538":1}}],["valhalla",{"2":{"211":1}}],["valor",{"0":{"58":1},"2":{"58":3,"114":1,"211":1}}],["val",{"0":{"1873":2,"1874":1,"1875":1,"1876":1,"1877":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2201":1},"1":{"1878":1,"2116":1},"2":{"49":1,"160":1,"183":4,"191":1,"222":2,"563":1,"1414":3,"1550":1,"1771":8,"1843":3,"1846":2,"2063":9,"2069":2,"2074":2,"2182":4,"2193":2,"2201":4,"2204":2,"2439":4,"2750":11,"2864":2,"2870":1,"2871":2,"2887":3}}],["validating",{"2":{"2608":1}}],["validation",{"2":{"114":1,"199":2,"222":2,"236":1,"266":1,"273":1,"308":1,"363":1,"1404":1}}],["validated",{"2":{"720":1,"2547":1}}],["validate",{"2":{"76":1,"199":2,"211":1,"333":1,"405":1}}],["valid",{"2":{"49":1,"149":1,"199":2,"241":1,"253":1,"266":1,"270":1,"281":1,"431":1,"454":1,"655":1,"723":1,"751":1,"856":1,"857":2,"921":1,"922":2,"955":1,"956":2,"989":1,"990":2,"1023":1,"1024":2,"1057":1,"1058":2,"1092":2,"1126":2,"1159":1,"1160":2,"1286":1,"1317":1,"1386":1,"1404":1,"1526":1,"1553":1,"1724":1,"1981":1,"2003":1,"2185":2,"2290":1,"2434":1,"2438":1,"2464":1,"2514":1,"2548":1,"2549":1,"2719":4,"2721":4,"2748":2,"2769":1}}],["violates",{"2":{"2734":1}}],["violating",{"2":{"2569":2}}],["violation",{"2":{"2567":2,"2570":1,"2740":1}}],["violations",{"0":{"2566":1},"1":{"2567":1,"2568":1,"2569":1,"2570":1,"2571":1},"2":{"2566":1,"2567":1,"2570":1,"2571":2,"2727":1}}],["violin",{"2":{"1479":2,"1480":3,"1484":1}}],["virster",{"2":{"2291":1}}],["virtually",{"2":{"2704":1}}],["virtual",{"0":{"1771":1},"2":{"1359":1,"1641":1,"1766":1,"1770":3,"1771":3,"1777":1,"2287":2,"2291":1,"2379":1,"2746":1}}],["virtualenv",{"2":{"419":1}}],["virtser",{"2":{"573":1}}],["vibrate",{"2":{"1679":1,"1681":1}}],["vibrator",{"2":{"1679":1}}],["vibrations",{"2":{"1678":1}}],["vibration",{"2":{"1678":1}}],["vim",{"2":{"1587":1,"1799":1,"2159":2}}],["vik",{"2":{"1395":1}}],["viktus",{"2":{"134":1,"159":3,"160":1,"211":3}}],["victim",{"2":{"619":1}}],["vice",{"2":{"194":1,"1416":1,"1655":1,"2160":2}}],["viewport",{"2":{"2749":2,"2750":7}}],["viewpoint",{"2":{"2573":1}}],["viewing",{"2":{"2667":1}}],["viewed",{"2":{"2528":1}}],["views",{"2":{"362":1,"2262":1}}],["view",{"0":{"2461":1},"2":{"273":1,"347":1,"577":1,"578":1,"684":1,"685":1,"2461":1,"2554":1,"2576":1,"2622":1,"2652":1,"2662":1,"2667":2,"2735":1,"2812":1}}],["viendi",{"2":{"211":1}}],["viper",{"2":{"211":1}}],["visit",{"2":{"428":1,"2410":1,"2599":1,"2602":1,"2667":1}}],["visible",{"2":{"198":1,"373":1,"1287":1,"1693":2,"2738":1}}],["vision",{"2":{"114":1,"618":1}}],["visualize",{"2":{"2553":1}}],["visualizer",{"2":{"133":1,"134":1}}],["visual",{"0":{"2657":1,"2667":1},"2":{"132":1,"2657":1,"2660":1,"2667":1,"2789":2}}],["vitoni",{"2":{"149":1}}],["vitamins",{"2":{"114":1}}],["viterbi",{"2":{"45":1}}],["vintage",{"2":{"1351":1}}],["vinta",{"2":{"102":2,"217":2}}],["videos",{"2":{"2934":2}}],["video",{"2":{"2183":1,"2188":1,"2429":1,"2569":1,"2582":1,"2934":1,"2937":1}}],["videogames",{"2":{"1420":1}}],["vid>",{"2":{"432":1}}],["vid",{"0":{"1316":1},"1":{"1317":1},"2":{"70":1,"111":1,"169":1,"184":1,"249":2,"266":1,"317":2,"432":1,"559":1,"685":1,"686":1,"1316":1,"1353":1,"2569":1,"2710":3,"2721":1,"2875":1}}],["vial",{"2":{"2721":2}}],["via2json",{"0":{"445":1},"2":{"294":1,"445":2}}],["via",{"0":{"35":1,"265":2,"275":2,"312":1},"1":{"36":1},"2":{"35":1,"92":1,"114":7,"134":6,"149":2,"154":1,"160":1,"176":6,"191":2,"194":1,"199":5,"211":7,"218":1,"222":5,"234":1,"249":3,"265":8,"266":4,"268":4,"275":5,"277":8,"294":1,"308":1,"312":6,"317":1,"417":1,"445":3,"663":1,"681":1,"718":1,"745":1,"746":1,"747":1,"756":1,"763":1,"1192":1,"1195":1,"1198":1,"1345":3,"1390":2,"1407":1,"1412":1,"1450":1,"1584":1,"1994":1,"2211":1,"2293":1,"2368":2,"2381":1,"2384":1,"2386":2,"2387":2,"2388":2,"2391":2,"2393":1,"2395":1,"2397":1,"2411":1,"2425":1,"2459":1,"2567":16,"2568":1,"2569":1,"2570":1,"2703":1,"2720":3,"2721":7,"2729":1,"2933":1}}],["vect",{"2":{"1983":2,"1985":2}}],["vector",{"2":{"191":1,"211":1}}],["velu",{"2":{"1919":1,"2532":1}}],["veld",{"2":{"1919":1,"2532":1}}],["velocikey",{"0":{"2209":1},"1":{"2210":1,"2211":1},"2":{"236":1,"2209":1,"2210":5,"2211":2,"2933":1}}],["velocity",{"2":{"63":1,"1913":1,"1919":26,"1920":1,"1928":1,"2532":26}}],["vega",{"2":{"211":1}}],["ventilation",{"2":{"2414":1}}],["venus",{"2":{"114":1,"322":2,"328":1}}],["venv",{"2":{"114":1}}],["vendors",{"0":{"2567":1},"2":{"2566":2,"2567":3,"2568":6,"2569":2,"2570":2,"2571":2,"2721":4,"2734":1}}],["vendor",{"0":{"744":1,"2726":1,"2728":1,"2732":1},"1":{"745":1,"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1},"2":{"37":1,"43":1,"70":1,"86":1,"149":13,"160":2,"169":1,"184":1,"191":1,"199":1,"211":1,"236":1,"266":1,"277":1,"559":1,"686":1,"723":1,"743":1,"1195":2,"1198":2,"1286":1,"1289":1,"1316":1,"1329":1,"1390":2,"1981":1,"1986":1,"2050":2,"2052":2,"2407":1,"2492":1,"2566":3,"2567":2,"2568":4,"2569":1,"2570":5,"2571":1,"2720":3,"2721":4,"2726":1,"2728":2,"2730":1,"2732":2,"2738":1,"2740":1,"2743":1,"2851":1,"2857":2,"2868":1,"2873":1,"2875":1,"2876":2}}],["ve",{"2":{"83":1,"89":1,"105":2,"112":1,"158":1,"172":1,"243":1,"273":1,"331":1,"370":1,"529":1,"607":1,"663":1,"746":1,"765":1,"1245":1,"1266":1,"1413":1,"1418":1,"1425":1,"1443":1,"1450":1,"1452":4,"1467":1,"1990":1,"2403":1,"2423":1,"2427":1,"2432":2,"2574":1,"2589":1,"2604":1,"2605":1,"2613":1,"2625":1,"2629":1,"2633":1,"2664":1,"2667":1,"2723":1,"2750":2,"2774":1,"2789":1,"2883":1,"2888":1}}],["vertically",{"0":{"2793":1},"2":{"2023":1,"2421":1,"2790":1,"2793":2}}],["vertical",{"2":{"1933":1,"2000":1,"2008":1,"2009":1,"2017":1,"2021":1,"2750":1,"2793":1,"2862":1,"2864":1,"2871":1}}],["vertex",{"2":{"211":1,"2567":1}}],["verbose=true",{"2":{"2410":1}}],["verbose",{"2":{"597":1,"2410":5,"2748":2}}],["verbosity",{"2":{"211":1}}],["verification",{"2":{"2483":1,"2501":1,"2569":1}}],["verified",{"2":{"551":1,"1937":2,"2495":1,"2501":1,"2722":1}}],["verifying",{"2":{"2495":2}}],["verify",{"2":{"199":1,"685":1,"2632":1,"2656":1,"2721":1,"2741":1,"2942":2}}],["ver20",{"2":{"421":5}}],["vero",{"2":{"211":1}}],["versed",{"2":{"609":1}}],["versatile",{"2":{"2751":1}}],["versa",{"2":{"194":1,"1416":1,"1655":1,"2160":2}}],["versioned",{"2":{"182":1}}],["versioning",{"2":{"182":1,"2809":1}}],["version=yes",{"2":{"65":1}}],["versions",{"2":{"22":1,"35":1,"49":2,"182":2,"189":1,"191":1,"308":1,"328":1,"373":3,"420":1,"594":1,"1313":1,"1375":1,"1392":1,"1413":1,"1441":1,"1657":1,"1660":1,"1735":1,"2183":1,"2323":1,"2324":1,"2402":1,"2410":1,"2476":1,"2490":1,"2567":1}}],["version",{"2":{"10":1,"36":2,"65":1,"69":1,"70":1,"114":2,"134":1,"149":3,"160":1,"169":1,"173":1,"176":1,"182":1,"184":1,"191":1,"199":2,"211":1,"236":1,"279":1,"285":1,"298":1,"328":1,"333":3,"373":1,"380":3,"386":1,"391":1,"396":1,"403":3,"407":26,"420":1,"421":1,"423":2,"559":1,"586":1,"594":1,"1211":1,"1387":1,"1402":1,"1438":2,"1441":4,"1443":1,"1492":1,"1493":1,"1512":1,"1586":1,"1618":1,"1619":2,"1633":4,"1638":1,"1982":1,"1985":1,"2390":1,"2425":2,"2446":2,"2450":1,"2501":1,"2550":1,"2627":1,"2651":1,"2667":1,"2669":1,"2670":1,"2671":1,"2710":1,"2721":1,"2725":2,"2760":1,"2767":1,"2875":2,"2918":1}}],["very",{"2":{"182":1,"363":1,"381":1,"550":1,"614":1,"626":1,"631":1,"632":1,"638":1,"681":1,"716":2,"1291":1,"1316":1,"1319":1,"1412":1,"1466":1,"1486":1,"1497":1,"1678":1,"1679":1,"1757":1,"1805":2,"1932":1,"1942":1,"1951":1,"2015":1,"2024":1,"2258":1,"2274":1,"2280":1,"2398":1,"2418":2,"2421":2,"2444":1,"2461":1,"2557":1,"2567":1,"2573":1,"2594":1,"2605":1,"2651":1,"2668":1,"2828":1,"2837":1,"2890":1,"2926":1,"2937":1}}],["ver",{"2":{"70":2,"111":1,"169":1,"184":1,"191":1,"559":1}}],["ver19",{"2":{"10":1}}],["v",{"0":{"21":1,"235":1,"518":1,"1859":1,"1861":1,"2137":1,"2139":1},"1":{"519":1,"1860":1,"1862":1,"2140":1},"2":{"21":2,"49":2,"50":3,"130":2,"134":2,"143":2,"153":1,"176":1,"236":4,"249":1,"266":1,"348":1,"369":1,"380":1,"490":1,"511":1,"587":2,"802":1,"805":1,"828":1,"831":1,"860":1,"863":1,"890":1,"893":1,"925":1,"928":1,"959":1,"962":1,"993":1,"996":1,"1027":1,"1030":1,"1061":1,"1064":1,"1095":1,"1098":1,"1129":1,"1132":1,"1163":1,"1166":1,"1216":1,"1219":1,"1619":1,"1678":1,"1679":3,"1849":1,"1860":1,"1862":1,"1914":1,"1950":1,"1989":1,"1990":1,"1992":1,"2021":2,"2023":2,"2024":1,"2025":9,"2027":1,"2028":1,"2045":1,"2074":2,"2138":1,"2140":1,"2198":8,"2201":4,"2287":1,"2310":1,"2324":1,"2381":1,"2382":1,"2402":2,"2410":3,"2494":1,"2503":3,"2515":3,"2547":1,"2553":1,"2563":4,"2564":2,"2630":3,"2632":2,"2710":1,"2748":2,"2770":1,"2870":1,"2871":1,"2914":5,"2916":1}}],["6=128",{"2":{"1948":1}}],["69",{"2":{"1680":1}}],["61",{"2":{"1680":1,"2784":1}}],["67",{"2":{"1349":1,"1680":1}}],["6739",{"2":{"74":1}}],["63",{"2":{"427":1,"1159":1,"1680":1,"1918":1,"2007":1,"2187":1,"2784":2}}],["6pad",{"2":{"266":1}}],["6kro",{"2":{"236":1,"285":1,"1353":1,"1363":2,"2832":1}}],["6x",{"2":{"1678":1,"1679":1}}],["6x13",{"2":{"249":1}}],["6x7",{"2":{"222":2}}],["6x6",{"2":{"217":1,"222":1}}],["68",{"2":{"211":1,"222":1,"1680":1,"2000":1}}],["6ball",{"2":{"143":2}}],["66",{"2":{"122":2,"149":1,"211":1,"369":1,"427":4,"432":2,"452":1,"453":1,"471":3,"472":2,"481":1,"482":1,"483":2,"1087":1,"1680":1,"2059":1,"2433":2,"2434":1,"2435":6,"2550":1,"2576":3,"2577":1,"2622":7,"2844":2,"2845":1}}],["64x48",{"2":{"1946":2}}],["64x32",{"2":{"1946":2}}],["64x128",{"2":{"1937":2,"1946":3}}],["64kb",{"2":{"752":2}}],["64kb+",{"2":{"510":1}}],["64u",{"2":{"716":2}}],["64",{"2":{"158":1,"747":1,"748":1,"756":1,"858":1,"916":1,"1211":1,"1297":1,"1521":1,"1532":1,"1680":1,"1771":1,"1840":5,"1918":1,"1919":1,"1947":1,"2059":2,"2060":5,"2187":1,"2403":1,"2434":1,"2457":1,"2483":1,"2499":2,"2501":1,"2532":1,"2615":2,"2864":1,"2871":1}}],["6490",{"2":{"114":1}}],["6480",{"2":{"25":1}}],["6",{"0":{"81":1,"599":1,"2312":1},"2":{"23":1,"81":1,"93":1,"114":1,"131":1,"134":1,"176":1,"188":1,"191":1,"211":1,"369":1,"516":1,"559":1,"563":2,"568":2,"587":2,"690":1,"692":4,"696":2,"698":1,"714":1,"715":1,"769":1,"797":1,"1023":1,"1057":1,"1486":1,"1487":1,"1521":1,"1550":1,"1603":2,"1619":2,"1620":3,"1678":1,"1679":1,"1680":1,"1696":1,"1766":1,"1768":1,"1769":2,"1772":3,"1919":7,"1927":2,"1943":1,"1947":2,"1960":3,"2003":1,"2050":1,"2059":1,"2183":1,"2189":3,"2191":2,"2205":1,"2207":1,"2270":1,"2271":2,"2281":1,"2289":2,"2294":1,"2296":4,"2411":1,"2500":1,"2503":2,"2508":3,"2511":2,"2515":9,"2525":3,"2532":7,"2533":2,"2541":3,"2553":1,"2748":1,"2761":1,"2762":1,"2769":2,"2788":2,"2789":1,"2793":6,"2797":1,"2830":1,"2831":1,"2850":2,"2856":3,"2915":1}}],["62key",{"2":{"226":1}}],["6259",{"2":{"49":1}}],["6260",{"2":{"30":1}}],["62",{"2":{"21":1,"1680":1,"2000":1,"2784":1}}],["600ºf",{"2":{"2420":1}}],["600",{"2":{"2010":1}}],["60000ms",{"2":{"1943":1,"2281":1}}],["60000",{"2":{"1762":1,"1943":1,"2176":1,"2281":1,"2872":1}}],["6000",{"2":{"663":1}}],["60hz",{"2":{"1929":1}}],["60fps",{"2":{"1846":1,"1933":1,"2069":1}}],["60f",{"2":{"1487":1}}],["606",{"2":{"1354":2}}],["6068",{"2":{"131":1,"134":1}}],["60",{"0":{"1317":1},"2":{"18":2,"143":2,"211":6,"217":2,"222":1,"236":1,"257":1,"258":1,"259":2,"260":1,"266":1,"285":1,"427":1,"442":1,"564":1,"1053":1,"1365":1,"1427":3,"1428":3,"1665":1,"1680":17,"1762":1,"1929":1,"1933":3,"2000":1,"2059":1,"2187":1,"2435":1,"2438":1,"2464":1,"2707":1,"2792":1,"2862":6}}],["650",{"2":{"2034":1}}],["65536",{"2":{"752":1,"2501":1}}],["65keys",{"2":{"241":2}}],["6580",{"2":{"93":1}}],["65",{"2":{"11":1,"67":2,"176":1,"211":6,"236":1,"308":1,"1487":1,"1680":1,"2000":1,"2234":1,"2418":1,"2707":2,"2748":1}}],["0|1",{"2":{"2849":1,"2850":1,"2860":1,"2865":1}}],["03d",{"2":{"2882":1,"2886":1}}],["03h",{"2":{"2698":2}}],["03",{"2":{"2501":17}}],["03eb",{"2":{"686":7,"2491":4,"2605":1,"2608":2}}],["064",{"2":{"2000":2}}],["0=2",{"2":{"1948":1}}],["0ms",{"2":{"1943":1}}],["0°",{"2":{"1769":1}}],["0f",{"2":{"1484":2,"1487":5}}],["05f",{"2":{"1487":1}}],["05",{"2":{"921":1,"955":1,"989":1,"1387":1,"1402":1,"2367":1}}],["05dc",{"2":{"686":1,"2494":2}}],["05df",{"2":{"686":1,"2493":1}}],["0k5",{"2":{"857":2,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":2,"1126":2,"1160":2}}],["0u",{"2":{"767":2}}],["0b11",{"2":{"2459":3}}],["0b10100000",{"2":{"746":2}}],["0b00",{"2":{"2459":1}}],["0b01",{"2":{"2459":3}}],["0b01010000",{"2":{"746":1}}],["0b",{"2":{"2459":1}}],["0v",{"2":{"687":1,"695":1,"696":1}}],["04",{"2":{"2646":1,"2657":1}}],["04x",{"2":{"1326":1}}],["0483",{"2":{"686":1,"2386":1}}],["0478",{"2":{"686":1}}],["0422",{"2":{"308":1}}],["005",{"2":{"2886":1}}],["00s",{"2":{"2495":1}}],["00100000",{"2":{"2289":2}}],["00101000",{"2":{"2288":1,"2289":1}}],["00hwpkts",{"2":{"2288":1}}],["0001",{"2":{"2627":1}}],["00010000",{"2":{"2288":1}}],["00000101",{"2":{"2289":1}}],["00000001ff",{"2":{"2497":1}}],["00000001",{"2":{"2289":1}}],["00000000",{"2":{"2231":1,"2289":7}}],["00000010",{"2":{"2289":1}}],["00001100",{"2":{"2289":1}}],["0000",{"2":{"2233":1,"2605":1,"2608":2}}],["000",{"2":{"2011":2}}],["0003",{"2":{"686":1,"2388":1}}],["000e",{"2":{"686":1,"2492":1}}],["000d",{"2":{"686":1,"2492":1}}],["000c",{"2":{"686":1,"2492":1}}],["003",{"2":{"686":1}}],["0037",{"2":{"686":2,"2492":1}}],["0036",{"2":{"686":2,"2492":1}}],["00am",{"2":{"406":9}}],["00",{"2":{"373":5,"530":2,"531":2,"532":4,"1532":1,"1533":1,"2235":1}}],["004",{"2":{"291":1}}],["002",{"2":{"291":1}}],["0ab",{"2":{"266":1}}],["08t12",{"2":{"2501":17}}],["08752684f7f6",{"2":{"370":1,"371":1}}],["08",{"2":{"265":1}}],["02",{"2":{"249":1}}],["01101010",{"2":{"2289":1}}],["01110000",{"2":{"2288":1}}],["01ue",{"2":{"2288":1}}],["0189",{"2":{"686":1}}],["0106",{"2":{"686":1}}],["0101",{"2":{"686":1,"2492":1}}],["01000010",{"2":{"1375":1,"2288":2}}],["0100",{"2":{"253":1}}],["0131",{"2":{"226":1}}],["0130",{"2":{"226":1}}],["01",{"2":{"211":2,"1532":2,"1533":1}}],["0+atmel3",{"2":{"114":1}}],["07",{"2":{"114":2}}],["0xxx",{"2":{"2496":3}}],["0xe7",{"2":{"2463":1}}],["0xe8",{"2":{"2002":1}}],["0xd7",{"2":{"2494":1}}],["0xd8",{"2":{"2492":8}}],["0xdb",{"2":{"2491":1}}],["0xd9",{"2":{"2491":3}}],["0xd4",{"2":{"1940":1,"2278":1}}],["0xd3",{"2":{"1940":1,"2278":1}}],["0xd2",{"2":{"1940":1,"2278":1}}],["0xd1",{"2":{"1940":1,"2278":1}}],["0xd0",{"2":{"1940":1,"2278":1,"2492":1,"2493":1,"2494":1}}],["0xb4",{"2":{"1940":1,"2278":1}}],["0xb3",{"2":{"1940":1,"2278":1}}],["0xb2",{"2":{"1940":1,"2278":1,"2699":1}}],["0xb1",{"2":{"1940":1,"2278":1}}],["0xb0",{"2":{"1288":1,"1940":1,"2278":1,"2876":1}}],["0xaf",{"2":{"1940":1,"2278":1}}],["0xae",{"2":{"1940":1,"2278":1}}],["0xad",{"2":{"1940":1,"2278":1}}],["0xac",{"2":{"1940":1,"2278":1}}],["0xab",{"2":{"1940":1,"2278":1}}],["0xaa",{"2":{"1940":1,"2278":1}}],["0xa9",{"2":{"1940":1,"2278":1}}],["0xa8",{"2":{"1940":1,"2278":1}}],["0xa7",{"2":{"1940":1,"2278":1}}],["0xa6",{"2":{"1940":1,"2278":1}}],["0xa5",{"2":{"1940":1,"2278":1,"2502":1,"2512":1}}],["0xa4f9",{"2":{"2050":1}}],["0xa4",{"2":{"1940":1,"2278":1}}],["0xa3",{"2":{"1940":1,"2278":1}}],["0xa2",{"2":{"1940":1,"2278":1}}],["0xa1",{"2":{"1940":1,"2278":1}}],["0xa0",{"2":{"1940":1,"2278":1}}],["0x9b",{"2":{"2491":1}}],["0x99",{"2":{"2491":3}}],["0x94",{"2":{"1940":1,"2278":1}}],["0x93",{"2":{"1940":1,"2278":1}}],["0x92",{"2":{"1940":1,"2278":1}}],["0x91",{"2":{"1940":1,"2278":1}}],["0x90",{"2":{"1940":1,"2278":1}}],["0x8f",{"2":{"1940":1,"2278":1}}],["0x8e",{"2":{"1940":1,"2278":1}}],["0x8d",{"2":{"1940":1,"2278":1}}],["0x8c",{"2":{"1940":1,"2278":1}}],["0x8b",{"2":{"1940":1,"2278":1}}],["0x8a",{"2":{"1940":1,"2278":1}}],["0x89",{"2":{"1940":1,"2278":1}}],["0x88",{"2":{"1940":1,"2278":1}}],["0x87",{"2":{"1940":1,"2278":1}}],["0x86",{"2":{"1940":1,"2278":1}}],["0x85",{"2":{"1940":1,"2278":1}}],["0x84",{"2":{"1940":1,"2278":1}}],["0x83",{"2":{"1940":1,"2278":1}}],["0x82",{"2":{"1940":1,"2278":1}}],["0x81",{"2":{"1940":1,"2278":1}}],["0x8000000",{"2":{"2386":1,"2390":1,"2391":1,"2501":1}}],["0x80",{"2":{"1940":1,"1943":1,"2278":1}}],["0x464751",{"2":{"2767":1}}],["0x464651",{"2":{"2760":1}}],["0x4335",{"2":{"2052":1}}],["0x41",{"2":{"2052":2}}],["0x4207",{"2":{"1327":1,"2941":1}}],["0x400",{"2":{"2501":1}}],["0x40b",{"2":{"2322":1}}],["0x40",{"2":{"854":1,"858":1}}],["0x",{"2":{"1326":1}}],["0xf8",{"2":{"2492":1}}],["0xfb",{"2":{"2492":6}}],["0xfe",{"2":{"2492":2}}],["0xfeed",{"2":{"1316":1,"2710":2}}],["0xf3",{"2":{"2491":4}}],["0xffff",{"2":{"2744":2,"2813":1}}],["0xff60",{"2":{"2049":2,"2052":1}}],["0xff",{"2":{"918":1,"923":1,"953":1,"957":1,"987":1,"991":1,"1021":1,"1025":1,"1055":1,"1059":1,"1089":1,"1093":1,"1123":1,"1127":1,"1157":1,"1161":1,"1417":1,"1424":6,"1484":1,"1485":2,"1511":5,"1527":3,"1841":1,"1844":1,"1988":1,"2061":1,"2066":4,"2374":4,"2492":9,"2560":1,"2813":1}}],["0x6fff",{"2":{"2608":1}}],["0x6f",{"2":{"1158":1}}],["0x6e",{"2":{"1158":1}}],["0x6d",{"2":{"1158":1}}],["0x6c",{"2":{"1158":1}}],["0x6b",{"2":{"1158":1}}],["0x6a",{"2":{"1158":1}}],["0x69",{"2":{"1158":1}}],["0x68",{"2":{"1158":1}}],["0x67",{"2":{"1158":1}}],["0x66",{"2":{"1158":1}}],["0x65",{"2":{"1158":1}}],["0x64",{"2":{"1158":1}}],["0x63",{"2":{"1158":1}}],["0x62",{"2":{"1158":1}}],["0x61",{"2":{"1158":1,"2049":2,"2052":1}}],["0x60000002",{"2":{"2548":1}}],["0x60",{"2":{"1158":1}}],["0x7e",{"2":{"2748":3,"2760":1,"2761":1}}],["0x7000",{"2":{"2608":2}}],["0x7fff",{"2":{"2325":1,"2411":1,"2545":1}}],["0x7f",{"2":{"1731":1}}],["0x7a",{"2":{"1424":1}}],["0x77",{"2":{"887":1,"1214":1}}],["0x76",{"2":{"887":1,"1214":1}}],["0x75",{"2":{"887":1,"1214":1}}],["0x74",{"2":{"887":1,"1214":1}}],["0x3",{"2":{"1659":1}}],["0x33",{"2":{"1022":1,"1056":1}}],["0x32",{"2":{"1022":1,"1056":1}}],["0x31",{"2":{"1022":1,"1055":1,"1056":1,"1123":1}}],["0x37",{"2":{"855":1}}],["0x36",{"2":{"855":1}}],["0x35",{"2":{"855":1}}],["0x34",{"2":{"855":1}}],["0x3f80",{"2":{"2608":2}}],["0x3f7f",{"2":{"2608":1}}],["0x3f",{"2":{"826":1,"1729":1}}],["0x3e",{"2":{"826":1}}],["0x3d",{"2":{"826":1}}],["0x3c",{"2":{"826":1,"1944":1}}],["0x30c4",{"2":{"2322":1}}],["0x30",{"2":{"763":1,"1022":1,"1056":1}}],["0x5f",{"2":{"919":1,"954":1,"988":1}}],["0x5e",{"2":{"919":1,"954":1,"2491":4}}],["0x5d",{"2":{"919":1,"954":1}}],["0x5c",{"2":{"919":1,"954":1}}],["0x5b",{"2":{"919":1,"954":1}}],["0x5a",{"2":{"919":1,"954":1,"988":1}}],["0x59",{"2":{"919":1,"954":1}}],["0x58",{"2":{"919":1,"954":1}}],["0x57",{"2":{"919":1,"954":1}}],["0x56f0",{"2":{"1527":1}}],["0x56",{"2":{"919":1,"954":1}}],["0x5678",{"2":{"169":2,"184":2,"559":1}}],["0x55",{"2":{"919":1,"954":1,"988":1}}],["0x53",{"2":{"919":1,"954":1}}],["0x52",{"2":{"919":1,"954":1}}],["0x51",{"2":{"919":1,"954":1}}],["0x50",{"2":{"919":1,"954":1,"988":1}}],["0x54",{"2":{"800":1,"919":1,"954":1}}],["0x2f",{"2":{"1090":1,"1124":1}}],["0x2e2e",{"2":{"2322":1}}],["0x2e",{"2":{"1090":1,"1124":1}}],["0x2d",{"2":{"1090":1,"1124":1}}],["0x2c",{"2":{"1090":1,"1124":1}}],["0x2b",{"2":{"1090":1,"1124":1}}],["0x2a",{"2":{"1090":1,"1124":1,"2006":1}}],["0x29",{"2":{"1090":1,"1124":1}}],["0x28",{"2":{"1090":1,"1124":1}}],["0x27",{"2":{"1090":1,"1124":1}}],["0x26",{"2":{"1090":1,"1124":1}}],["0x25",{"2":{"1090":1,"1124":1}}],["0x24",{"2":{"1090":1,"1124":1}}],["0x23b0",{"2":{"2875":1}}],["0x23",{"2":{"1090":1,"1124":1}}],["0x2330",{"2":{"111":1}}],["0x22",{"2":{"1090":1,"1124":1}}],["0x21",{"2":{"1090":1,"1124":1}}],["0x203d",{"2":{"2322":1}}],["0x20",{"2":{"1090":1,"1124":1,"2748":3,"2760":1,"2761":1}}],["0x2000",{"2":{"373":1}}],["0x100",{"2":{"2813":1}}],["0x10ffff",{"2":{"2411":2}}],["0x1e9587",{"2":{"2495":1}}],["0x1eff",{"2":{"373":1}}],["0x1d",{"2":{"2465":1}}],["0x1c04",{"2":{"2501":1}}],["0x1c",{"2":{"2465":1}}],["0x1f",{"2":{"2494":1}}],["0x1f1e6",{"2":{"2323":1}}],["0x1f1fa",{"2":{"2323":1}}],["0x1f923",{"2":{"2323":1}}],["0x1f4a9",{"2":{"2323":1}}],["0x1f40d",{"2":{"2322":1}}],["0x1fff",{"2":{"373":1}}],["0x15",{"2":{"1696":3}}],["0x18",{"2":{"763":2}}],["0x1234",{"2":{"169":2,"184":2,"559":1}}],["0x03",{"2":{"2763":2,"2769":1,"2770":2}}],["0x03a8",{"2":{"2050":1}}],["0x07",{"2":{"2502":1,"2769":1}}],["0x06",{"2":{"2465":1,"2769":1}}],["0x05",{"2":{"2465":1,"2769":1,"2772":2}}],["0x0ca0",{"2":{"2323":2}}],["0x02",{"2":{"2014":1,"2061":1,"2762":2,"2769":3}}],["0x0a",{"2":{"2012":1}}],["0x0f",{"2":{"1988":1,"2493":1}}],["0x09",{"2":{"1958":1}}],["0x0b",{"2":{"1958":1}}],["0x08001c00",{"2":{"2501":1}}],["0x08001800",{"2":{"2501":1}}],["0x08001400",{"2":{"2501":1}}],["0x08001000",{"2":{"2501":1}}],["0x08000c00",{"2":{"2501":1}}],["0x08000800",{"2":{"2501":1}}],["0x08000400",{"2":{"2501":1}}],["0x08000000",{"2":{"2501":2}}],["0x08",{"2":{"1696":1,"1841":1,"2061":1}}],["0x0410",{"2":{"2501":2}}],["0x04",{"2":{"1696":3,"1841":1,"2061":1,"2465":1,"2466":1,"2494":1,"2764":2,"2769":1,"2771":2}}],["0x0e",{"2":{"1696":1}}],["0x01",{"2":{"1089":1,"1157":1,"1841":1,"2061":1,"2074":2,"2760":1,"2761":2,"2767":1,"2768":2,"2769":2}}],["0x0100",{"2":{"373":1,"559":1}}],["0x0",{"2":{"717":1,"2608":2}}],["0x005f",{"2":{"2323":1}}],["0x00c6",{"2":{"2323":1}}],["0x00e6",{"2":{"2323":1}}],["0x00",{"2":{"1424":8,"1696":1,"1729":1,"1731":1,"1841":1,"1940":1,"2052":1,"2061":1,"2066":1,"2278":1,"2463":1,"2760":2,"2767":2,"2769":2,"2813":1}}],["0x00ff",{"2":{"373":1,"2744":2}}],["0x0008e534",{"2":{"2501":1}}],["0x0002",{"2":{"2052":1}}],["0x00000002",{"2":{"2548":1}}],["0x00000001",{"2":{"2548":1}}],["0x0000",{"2":{"373":1,"2501":1,"2710":1,"2744":2}}],["0x0001",{"2":{"111":1,"169":1,"184":1}}],["0xcf",{"2":{"1940":1,"2278":1}}],["0xce",{"2":{"1940":1,"2278":1}}],["0xcd",{"2":{"1940":1,"2278":1}}],["0xcc",{"2":{"1940":1,"2278":1}}],["0xca",{"2":{"1940":1,"2278":1}}],["0xc9",{"2":{"1940":1,"2278":1}}],["0xc8",{"2":{"1940":1,"2278":1}}],["0xc7",{"2":{"1940":1,"2278":1}}],["0xc6",{"2":{"1940":1,"2278":1}}],["0xc5",{"2":{"1940":1,"2278":1}}],["0xc4",{"2":{"1940":1,"2278":1}}],["0xc3",{"2":{"1940":1,"2278":1}}],["0xc2",{"2":{"1940":1,"2278":1}}],["0xc1",{"2":{"1940":1,"2278":1}}],["0xc1ed",{"2":{"111":1,"2875":1}}],["0xc0",{"2":{"1940":1,"2278":1,"2494":1}}],["0xcb",{"2":{"114":1,"266":1,"322":4,"328":1,"1388":1,"1396":1,"1940":1,"2278":1,"2699":1,"2888":1}}],["0$",{"2":{"70":3}}],["0",{"0":{"56":1,"2424":1,"2481":1},"1":{"2482":1},"2":{"11":1,"14":1,"38":2,"56":1,"90":2,"102":1,"105":4,"114":5,"120":2,"122":2,"152":1,"168":1,"169":2,"176":1,"184":2,"191":2,"195":1,"199":2,"222":1,"231":4,"236":1,"238":2,"240":2,"247":1,"249":2,"266":5,"277":2,"279":1,"285":1,"294":2,"307":1,"308":1,"328":1,"332":2,"348":1,"369":1,"373":8,"407":52,"427":1,"453":1,"467":1,"511":2,"532":2,"559":1,"562":1,"564":2,"568":1,"587":3,"591":1,"654":3,"655":1,"674":3,"686":1,"687":1,"690":1,"692":4,"693":2,"696":2,"701":1,"710":1,"716":1,"717":1,"724":2,"728":1,"729":1,"731":2,"734":1,"751":1,"752":1,"794":2,"799":1,"825":2,"828":3,"831":1,"854":2,"857":4,"858":1,"860":3,"863":1,"886":2,"890":3,"893":1,"918":5,"922":6,"923":1,"925":3,"928":1,"953":4,"956":6,"957":1,"959":3,"962":1,"987":4,"990":6,"991":1,"993":3,"996":1,"1021":2,"1024":4,"1025":1,"1027":3,"1030":1,"1055":2,"1058":4,"1059":1,"1061":3,"1064":1,"1089":3,"1092":4,"1093":1,"1095":3,"1098":1,"1123":3,"1126":4,"1127":1,"1129":3,"1132":1,"1157":2,"1160":4,"1161":1,"1163":3,"1166":1,"1204":1,"1213":2,"1216":3,"1219":1,"1249":1,"1282":1,"1283":1,"1285":3,"1292":1,"1308":1,"1326":23,"1362":2,"1370":1,"1392":8,"1406":4,"1409":1,"1413":1,"1416":2,"1417":2,"1419":2,"1425":1,"1445":1,"1450":2,"1459":1,"1466":1,"1480":1,"1486":1,"1487":1,"1508":2,"1521":23,"1527":4,"1529":1,"1532":4,"1533":1,"1541":1,"1544":1,"1546":1,"1550":1,"1551":1,"1573":1,"1575":1,"1583":3,"1587":1,"1592":1,"1594":1,"1606":2,"1613":2,"1619":3,"1620":1,"1621":1,"1622":3,"1630":3,"1633":2,"1638":28,"1641":3,"1642":2,"1654":2,"1658":1,"1661":1,"1662":2,"1664":1,"1672":1,"1675":1,"1678":3,"1679":3,"1689":2,"1696":1,"1706":2,"1714":1,"1716":1,"1751":1,"1765":2,"1768":2,"1769":2,"1770":2,"1771":6,"1772":3,"1780":1,"1782":1,"1785":1,"1791":1,"1793":2,"1794":1,"1840":5,"1843":1,"1846":1,"1860":1,"1878":1,"1884":1,"1886":1,"1888":1,"1918":2,"1919":29,"1920":2,"1927":2,"1929":1,"1931":4,"1941":5,"1942":2,"1943":9,"1946":2,"1947":5,"1948":5,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"1983":4,"1985":10,"1990":3,"2000":6,"2003":1,"2014":3,"2015":1,"2017":2,"2021":2,"2024":2,"2025":6,"2027":2,"2028":2,"2034":2,"2052":5,"2060":5,"2063":1,"2069":2,"2073":3,"2074":4,"2086":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2138":3,"2140":3,"2165":1,"2167":2,"2168":2,"2176":4,"2182":2,"2183":8,"2185":2,"2190":1,"2191":4,"2198":15,"2201":2,"2202":2,"2205":1,"2206":1,"2207":1,"2221":1,"2225":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":2,"2238":1,"2239":1,"2240":2,"2252":4,"2253":1,"2268":3,"2270":2,"2273":2,"2279":5,"2281":5,"2283":2,"2288":1,"2289":6,"2293":1,"2296":16,"2298":1,"2309":2,"2323":2,"2358":1,"2373":2,"2374":3,"2381":1,"2386":1,"2389":1,"2391":1,"2403":3,"2417":2,"2459":10,"2481":2,"2495":1,"2501":3,"2503":2,"2511":2,"2515":4,"2525":3,"2532":29,"2533":2,"2547":4,"2548":9,"2552":1,"2553":4,"2563":5,"2564":2,"2608":2,"2667":2,"2669":2,"2710":2,"2714":18,"2725":1,"2747":1,"2748":2,"2749":1,"2750":27,"2754":1,"2766":1,"2769":6,"2770":6,"2773":2,"2784":3,"2787":1,"2788":13,"2789":10,"2847":1,"2848":1,"2850":1,"2851":2,"2853":2,"2856":1,"2862":4,"2864":6,"2865":1,"2870":4,"2871":7,"2872":5,"2873":1,"2875":3,"2886":2,"2900":3,"2904":2,"2905":3,"2906":2,"2910":2,"2912":1,"2913":4,"2915":2,"2929":21,"2931":1,"2932":39}}],["3akeyboard",{"2":{"2721":1}}],["3aclosed+label",{"2":{"2721":1}}],["3apr+is",{"2":{"2721":1}}],["3d",{"2":{"2428":1}}],["3+0",{"2":{"2000":1}}],["3=5",{"2":{"1948":1}}],["3|128",{"2":{"1532":1}}],["34",{"2":{"1486":1,"1680":1,"2000":1}}],["3b",{"2":{"1368":1}}],["35",{"2":{"1486":1,"1521":1,"1680":1,"2000":1,"2439":1,"2627":1}}],["3500",{"2":{"2013":1}}],["350",{"2":{"1282":1,"1803":1}}],["351",{"2":{"1019":1,"1839":1}}],["384",{"2":{"2322":1}}],["38400",{"2":{"1204":1,"1269":1}}],["38",{"2":{"1486":1,"1680":1,"1840":1,"1919":1,"2000":1,"2060":1,"2532":1}}],["38u",{"2":{"767":1}}],["3k63",{"2":{"1159":1}}],["3k6",{"2":{"1023":1,"1057":1}}],["3key",{"2":{"143":2}}],["333c30605e739ce9bedee5999fdaf81b",{"2":{"2501":1}}],["33s",{"2":{"2495":1}}],["3389",{"0":{"2014":1},"2":{"2014":3}}],["33",{"2":{"1486":1,"1680":1,"2000":1,"2750":6}}],["3300",{"2":{"724":1,"2851":1}}],["3360",{"0":{"2014":1},"2":{"118":1,"2014":3}}],["3v3",{"2":{"2492":2}}],["3v",{"2":{"686":2,"687":2,"1293":1,"1294":1,"1295":1,"1691":1,"1767":1,"2254":1,"2500":1,"2676":1,"2677":1,"2682":1,"2683":2,"2684":3}}],["3rd",{"2":{"524":1,"613":1}}],["39000",{"2":{"1204":1}}],["39x9",{"2":{"1019":1}}],["39kbps",{"2":{"568":1,"2268":1}}],["39",{"2":{"371":2,"1486":1,"1680":1}}],["316",{"2":{"1328":4}}],["313",{"2":{"1328":1}}],["315ºc",{"2":{"2420":1}}],["315°",{"2":{"1769":1}}],["315",{"2":{"1328":1}}],["314b",{"2":{"686":1}}],["31",{"0":{"309":1},"1":{"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1},"2":{"231":4,"285":1,"394":1,"395":1,"396":2,"407":2,"559":1,"701":2,"710":1,"1350":1,"1486":1,"1550":1,"1680":1,"1772":3,"1780":1,"1782":1,"1960":3,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"2000":1,"2187":1,"2501":13,"2525":3,"2541":3,"2547":2,"2548":5,"2848":2,"2850":1}}],["3x",{"2":{"1678":1,"1679":1,"2006":1}}],["3x5+3",{"2":{"249":1}}],["3x5",{"2":{"217":1,"222":2,"249":1,"311":10,"317":2,"1584":1}}],["3x8",{"2":{"143":2}}],["3x7",{"2":{"143":2}}],["3x6",{"2":{"143":2,"311":8,"317":1}}],["360",{"2":{"1931":1,"2750":1,"2770":1}}],["36",{"2":{"143":2,"211":1,"823":1,"1680":1,"1839":1,"2000":1,"2417":1}}],["37",{"2":{"1486":1,"1680":1,"1840":1,"2000":1,"2060":1}}],["3731",{"2":{"236":1}}],["3733",{"2":{"134":1}}],["3741",{"2":{"236":1}}],["378",{"2":{"211":1}}],["378edd9",{"2":{"73":1}}],["3700",{"2":{"57":2}}],["320",{"2":{"2750":3}}],["320x480",{"2":{"2746":2}}],["3204",{"0":{"2010":1},"2":{"2010":2}}],["3286",{"2":{"2483":1}}],["328p",{"2":{"235":1}}],["32k",{"2":{"854":1,"856":2,"922":2,"956":2,"990":2,"1021":2,"1024":4,"1058":2}}],["32kb",{"2":{"750":2}}],["32kb+",{"2":{"510":1}}],["32u2",{"2":{"764":1,"1244":1,"1265":1,"1559":1,"1560":1}}],["32u4rc",{"2":{"2376":1}}],["32u4",{"2":{"211":1,"322":1,"511":1,"686":4,"690":1,"764":1,"1265":1,"1559":1,"1560":1,"2368":2,"2492":4}}],["32bit",{"2":{"645":1}}],["32730",{"2":{"2495":4}}],["32767",{"2":{"562":2,"2016":4}}],["3270",{"2":{"114":1,"207":8}}],["3222",{"0":{"2011":1},"2":{"328":1,"2011":1}}],["32",{"0":{"166":1},"2":{"63":1,"120":1,"231":1,"277":1,"407":1,"563":1,"746":1,"747":1,"856":1,"922":2,"951":1,"956":2,"990":2,"1024":2,"1058":2,"1297":1,"1413":1,"1414":1,"1417":1,"1445":1,"1486":1,"1603":1,"1680":1,"1766":1,"1768":1,"1840":2,"1930":1,"1931":2,"1933":3,"1946":2,"1960":3,"2000":1,"2050":1,"2051":1,"2052":1,"2055":2,"2057":2,"2059":1,"2060":2,"2064":1,"2189":2,"2231":1,"2243":1,"2245":1,"2270":1,"2281":1,"2282":2,"2456":1,"2541":3,"2547":2,"2548":1,"2560":1,"2579":1,"2682":1,"2795":1,"2864":1,"2870":1,"2871":1}}],["3",{"0":{"81":1,"596":1,"1370":1,"2300":1,"2309":1,"2464":1,"2596":1,"2621":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"10":1,"23":1,"69":1,"70":1,"76":1,"81":1,"93":1,"114":2,"120":2,"122":2,"131":1,"134":3,"149":1,"176":3,"188":1,"191":1,"199":1,"211":1,"217":1,"222":1,"236":1,"240":1,"251":1,"266":6,"294":1,"307":1,"311":6,"348":1,"369":1,"393":1,"396":2,"406":1,"415":1,"418":1,"421":5,"422":5,"516":3,"522":1,"559":1,"568":1,"579":1,"587":2,"591":6,"597":1,"639":1,"663":1,"674":1,"686":1,"687":2,"690":1,"692":22,"693":1,"713":2,"734":1,"756":1,"825":2,"831":1,"854":2,"863":1,"886":2,"890":1,"893":1,"918":4,"928":1,"953":2,"962":1,"987":2,"996":1,"1021":2,"1023":1,"1030":1,"1055":2,"1057":1,"1064":1,"1089":4,"1098":1,"1123":4,"1132":1,"1157":2,"1159":1,"1166":1,"1195":1,"1198":1,"1204":1,"1213":2,"1219":1,"1249":1,"1293":1,"1294":1,"1295":1,"1343":1,"1370":1,"1441":1,"1445":1,"1468":1,"1486":1,"1532":2,"1550":1,"1559":4,"1560":2,"1562":1,"1592":1,"1616":1,"1619":2,"1622":1,"1661":1,"1664":1,"1678":4,"1679":3,"1680":1,"1691":1,"1696":1,"1767":1,"1768":1,"1769":2,"1772":3,"1798":2,"1806":2,"1840":1,"1843":1,"1919":31,"1927":2,"1931":3,"1945":1,"1947":3,"1948":1,"1960":3,"1985":2,"1989":2,"1999":1,"2003":1,"2006":1,"2060":1,"2063":2,"2183":4,"2185":1,"2189":1,"2190":1,"2191":2,"2205":1,"2206":1,"2207":3,"2252":1,"2254":1,"2257":1,"2259":1,"2260":1,"2268":1,"2289":2,"2291":1,"2294":1,"2296":16,"2302":1,"2308":4,"2310":1,"2315":1,"2370":1,"2409":1,"2435":1,"2439":4,"2440":4,"2450":1,"2459":3,"2500":3,"2503":2,"2508":2,"2511":2,"2515":9,"2521":1,"2525":3,"2532":31,"2533":2,"2541":3,"2553":1,"2560":1,"2573":1,"2575":2,"2625":1,"2627":1,"2651":1,"2677":1,"2682":1,"2683":2,"2684":3,"2688":1,"2714":16,"2749":26,"2769":2,"2770":1,"2788":9,"2789":8,"2818":1,"2850":1,"2870":1,"2872":1,"2896":1,"2907":1,"2920":1,"2930":1}}],["30fps",{"2":{"2750":6}}],["30x6",{"2":{"1053":1}}],["300",{"2":{"562":2,"1803":1,"1804":1,"1933":1,"1990":1,"2003":2,"2284":1,"2863":2}}],["30000",{"2":{"1537":1,"2747":1,"2851":1}}],["3000",{"2":{"266":1,"568":1,"1592":1,"1930":1,"2271":1}}],["30",{"0":{"0":1,"19":1,"318":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1},"2":{"114":1,"176":1,"394":1,"407":4,"559":1,"1486":1,"1680":8,"1772":3,"1929":1,"1941":1,"1960":3,"2000":1,"2063":2,"2074":1,"2187":2,"2279":1,"2501":4,"2525":3,"2541":3,"2547":1,"2548":4,"2567":1,"2851":1,"2865":2}}],["1bpp",{"2":{"2749":1,"2769":2}}],["1b4f",{"2":{"686":3,"2492":3}}],["1ca027",{"2":{"2005":1}}],["1c11",{"2":{"686":1,"2389":1}}],["1=3",{"2":{"1948":1}}],["1>",{"2":{"1758":1,"2917":1}}],["1x",{"2":{"1678":1,"1679":1,"2006":1,"2257":1,"2682":1}}],["1x4",{"2":{"211":1}}],["1st",{"2":{"1425":1}}],["1️⃣",{"2":{"713":12}}],["1p5",{"2":{"698":1}}],["1eaf",{"2":{"686":1,"2388":1}}],["1ffb",{"2":{"686":1,"2492":1}}],["1u",{"2":{"2862":2}}],["1up60rgb",{"2":{"586":1}}],["1upkeyboards",{"2":{"191":2,"211":2,"236":1,"322":4,"328":1,"586":1}}],["1ul",{"2":{"105":4,"1365":2,"1622":4}}],["19",{"2":{"371":2,"407":1,"1486":1,"1521":1,"1680":1,"1772":3,"1960":3,"2000":2,"2525":3,"2541":3}}],["199",{"2":{"2904":1,"2905":1}}],["19939",{"2":{"236":1}}],["19954",{"2":{"211":1}}],["19997",{"2":{"236":1}}],["19998",{"2":{"211":1}}],["19991",{"2":{"211":1}}],["19993",{"2":{"211":1}}],["19987",{"2":{"211":1}}],["19985",{"2":{"211":1}}],["19980",{"2":{"211":1}}],["19961",{"2":{"211":1}}],["19966",{"2":{"211":1}}],["19925",{"2":{"211":1}}],["19923",{"2":{"199":1}}],["19974",{"2":{"211":1}}],["19948",{"2":{"211":1}}],["19941",{"2":{"199":1}}],["19940",{"2":{"199":1}}],["19912",{"2":{"211":1}}],["19916",{"2":{"199":1}}],["19919",{"2":{"199":1}}],["19918",{"2":{"199":1}}],["19910",{"2":{"199":1}}],["19902",{"2":{"199":1}}],["19901",{"2":{"199":1}}],["19909",{"2":{"199":1}}],["19907",{"2":{"199":1}}],["198",{"2":{"1087":1,"1839":1}}],["19849",{"2":{"211":1}}],["19845",{"2":{"199":1}}],["19842",{"2":{"199":1}}],["19893",{"2":{"199":1}}],["19898",{"2":{"199":1}}],["19891",{"2":{"199":1}}],["19890",{"2":{"199":1}}],["19869",{"2":{"199":1}}],["19867",{"2":{"199":1}}],["19866",{"2":{"199":1}}],["19864",{"2":{"199":1}}],["19863",{"2":{"199":1}}],["19860",{"2":{"199":1}}],["19854",{"2":{"211":1}}],["19857",{"2":{"199":1}}],["19856",{"2":{"199":1}}],["19859",{"2":{"199":1}}],["19851",{"2":{"199":1}}],["19825",{"2":{"211":1}}],["19828",{"2":{"199":1}}],["19821",{"2":{"199":1}}],["19826",{"2":{"199":1}}],["19829",{"2":{"199":1}}],["19808",{"2":{"199":1}}],["19800",{"2":{"199":1}}],["19806",{"2":{"199":1}}],["19889",{"2":{"199":1}}],["19888",{"2":{"199":1}}],["19887",{"2":{"199":1}}],["19885",{"2":{"199":1}}],["19884",{"2":{"199":1}}],["19874",{"2":{"199":1}}],["19879",{"2":{"199":1}}],["19872",{"2":{"199":1}}],["19877",{"2":{"199":1}}],["19875",{"2":{"199":1}}],["19833",{"2":{"199":1}}],["19831",{"2":{"199":1}}],["19830",{"2":{"199":1}}],["19815",{"2":{"199":1}}],["19817",{"2":{"199":1}}],["19813",{"2":{"199":1}}],["19780",{"2":{"222":2}}],["19784",{"2":{"199":1}}],["19738",{"2":{"211":1}}],["19793",{"2":{"199":1}}],["19795",{"2":{"199":1}}],["19778",{"2":{"199":1}}],["19777",{"2":{"199":1}}],["19774",{"2":{"199":1}}],["19767",{"2":{"199":1}}],["19768",{"2":{"199":1}}],["19761",{"2":{"199":1}}],["19749",{"2":{"236":1}}],["19748",{"2":{"199":1}}],["19742",{"2":{"199":1}}],["19752",{"2":{"199":1}}],["19750",{"2":{"199":1}}],["19756",{"2":{"199":1}}],["19755",{"2":{"199":1}}],["19753",{"2":{"199":1}}],["19723",{"2":{"199":1}}],["19721",{"2":{"199":1}}],["19726",{"2":{"199":1}}],["19722",{"2":{"199":1}}],["19720",{"2":{"199":1}}],["19718",{"2":{"199":1}}],["19715",{"2":{"199":1}}],["19714",{"2":{"199":1}}],["19713",{"2":{"199":1}}],["19712",{"2":{"199":1}}],["1970",{"2":{"530":1,"531":1,"532":2}}],["19705",{"2":{"211":1}}],["19700",{"2":{"211":1}}],["19703",{"2":{"199":1}}],["19704",{"2":{"199":1}}],["19701",{"2":{"199":1}}],["19689",{"2":{"211":1}}],["19683",{"2":{"199":1}}],["1967st",{"2":{"211":1}}],["19670",{"2":{"211":1}}],["19675",{"2":{"199":1}}],["19658",{"2":{"199":1}}],["19652",{"2":{"199":1}}],["19656",{"2":{"199":1}}],["19647",{"2":{"199":1}}],["19644",{"2":{"199":1}}],["19649",{"2":{"199":1}}],["19640",{"2":{"199":1}}],["19646",{"2":{"199":1}}],["19699",{"2":{"199":1}}],["19630",{"2":{"199":1}}],["19633",{"2":{"199":1}}],["19632",{"2":{"199":1}}],["19629",{"2":{"199":1}}],["19620",{"2":{"199":1}}],["19602",{"2":{"199":1}}],["19607",{"2":{"199":1}}],["19606",{"2":{"199":1}}],["19603",{"2":{"199":2}}],["19515",{"2":{"222":1}}],["19511",{"2":{"199":1}}],["19537",{"2":{"199":1}}],["19530",{"2":{"199":1}}],["19588",{"2":{"199":1}}],["19581",{"2":{"199":1}}],["19570",{"2":{"199":1}}],["19529",{"2":{"199":1}}],["19599",{"2":{"199":1}}],["19597",{"2":{"199":1}}],["19594",{"2":{"199":1}}],["19562",{"2":{"199":1}}],["19565",{"2":{"199":1}}],["19564",{"2":{"199":1}}],["19563",{"2":{"199":1}}],["19543",{"2":{"211":1}}],["19549",{"2":{"199":1}}],["19548",{"2":{"199":1}}],["19541",{"2":{"199":1}}],["19542",{"2":{"199":1}}],["19545",{"2":{"199":1}}],["19544",{"2":{"199":1}}],["19447",{"2":{"199":1}}],["19468",{"2":{"199":1}}],["19464",{"2":{"199":1}}],["19462",{"2":{"199":1}}],["19463",{"2":{"199":1}}],["19496",{"2":{"199":1}}],["19488",{"2":{"199":1}}],["19487",{"2":{"199":1}}],["19485",{"2":{"199":1}}],["19480",{"2":{"199":1}}],["19474",{"2":{"199":1}}],["19479",{"2":{"199":1}}],["19475",{"2":{"199":1}}],["19453",{"2":{"199":1}}],["19452",{"2":{"199":1}}],["19412",{"2":{"199":1}}],["19411",{"2":{"199":1}}],["19418",{"2":{"199":1}}],["19416",{"2":{"199":1}}],["19415",{"2":{"199":1}}],["19400",{"2":{"199":1}}],["19313",{"2":{"199":1}}],["19341",{"2":{"199":1}}],["19348",{"2":{"199":1}}],["19332",{"2":{"199":1}}],["1930",{"2":{"2805":1}}],["19304",{"2":{"199":1}}],["19302",{"2":{"199":1}}],["19301",{"2":{"199":1}}],["19306",{"2":{"199":1}}],["19303",{"2":{"199":1}}],["19350",{"2":{"199":1}}],["19326",{"2":{"199":1}}],["19325",{"2":{"199":1}}],["19399",{"2":{"199":1}}],["19397",{"2":{"199":1}}],["19394",{"2":{"199":1}}],["19382",{"2":{"199":1}}],["19370",{"2":{"199":1}}],["19366",{"2":{"199":1}}],["192",{"2":{"916":1,"1211":1,"1839":2,"2457":1}}],["19280",{"2":{"249":1}}],["19269",{"2":{"199":1}}],["19267",{"2":{"199":1}}],["19262",{"2":{"199":1}}],["1920",{"2":{"1933":1}}],["19200",{"2":{"1204":1,"1269":1}}],["19201",{"2":{"199":1}}],["19203",{"2":{"199":1}}],["19248",{"2":{"199":1}}],["19243",{"2":{"199":1}}],["19275",{"2":{"199":1}}],["19271",{"2":{"199":1}}],["19277",{"2":{"199":1}}],["19273",{"2":{"199":1}}],["19229",{"2":{"199":1}}],["19226",{"2":{"199":1}}],["19225",{"2":{"199":1}}],["19224",{"2":{"199":1}}],["19216",{"2":{"199":1}}],["19214",{"2":{"199":1}}],["1919",{"2":{"2007":1}}],["19194",{"2":{"199":1}}],["191",{"2":{"1941":1,"2279":1}}],["19172",{"2":{"199":1}}],["19153",{"2":{"199":1}}],["19159",{"2":{"191":1}}],["19160",{"2":{"199":1}}],["19167",{"2":{"199":1}}],["19163",{"2":{"199":1}}],["19135",{"2":{"199":1}}],["19137",{"2":{"191":1}}],["19110",{"2":{"199":1}}],["19119",{"2":{"191":1}}],["19140",{"2":{"191":1}}],["19146",{"2":{"191":1}}],["19144",{"2":{"191":1}}],["19143",{"2":{"188":1,"191":1}}],["19107",{"2":{"191":1}}],["19121",{"2":{"191":1}}],["19120",{"2":{"191":1}}],["19124",{"2":{"191":1}}],["19122",{"2":{"191":1}}],["19049",{"2":{"199":1}}],["19096",{"2":{"191":1}}],["19094",{"2":{"191":1}}],["19053",{"2":{"199":1}}],["19059",{"2":{"191":1}}],["19058",{"2":{"191":1}}],["19056",{"2":{"191":1}}],["19052",{"2":{"191":1}}],["19089",{"2":{"191":1}}],["19086",{"2":{"191":1}}],["19080",{"2":{"191":1}}],["19077",{"2":{"199":1}}],["19075",{"2":{"199":1}}],["19072",{"2":{"191":1}}],["19079",{"2":{"191":1}}],["19031",{"2":{"199":1}}],["19038",{"2":{"191":1}}],["19034",{"2":{"190":1,"191":1}}],["19024",{"2":{"199":1}}],["19028",{"2":{"191":1}}],["19029",{"2":{"191":1}}],["19020",{"2":{"191":1}}],["19015",{"2":{"191":1}}],["19018",{"2":{"191":1}}],["19069",{"2":{"211":1}}],["19066",{"2":{"191":1}}],["19060",{"2":{"191":1}}],["19065",{"2":{"191":1}}],["19063",{"2":{"191":1}}],["19068",{"2":{"191":1}}],["19005",{"2":{"236":1}}],["19006",{"2":{"191":1}}],["19007",{"2":{"191":1}}],["19004",{"2":{"188":1,"191":1}}],["1k81",{"2":{"1159":1}}],["1k8",{"2":{"1023":1,"1057":1}}],["1k05",{"2":{"921":1,"955":1,"989":1}}],["1k",{"2":{"856":1,"857":4,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":4,"1126":4,"1160":4,"2302":1,"2675":1}}],["1kb",{"2":{"745":1}}],["1key",{"2":{"143":2}}],["1khz",{"0":{"137":1},"2":{"137":1,"149":1}}],["1ms",{"2":{"137":1,"176":1,"211":1}}],["15ms",{"2":{"1947":1}}],["15min",{"2":{"645":1}}],["15x9",{"2":{"852":1}}],["15pad",{"2":{"266":1}}],["15",{"2":{"176":1,"407":1,"559":1,"692":4,"888":1,"925":1,"993":1,"1365":1,"1416":2,"1417":2,"1486":1,"1521":2,"1680":1,"1706":1,"1772":3,"1919":2,"1943":1,"1960":3,"2000":2,"2189":1,"2238":1,"2478":1,"2480":1,"2525":3,"2532":2,"2541":3,"2769":1,"2793":2}}],["15699",{"2":{"191":1}}],["15691",{"2":{"149":1}}],["15674",{"2":{"176":1}}],["15657",{"2":{"160":1}}],["15606",{"2":{"149":1}}],["15603",{"2":{"149":1}}],["15609",{"2":{"149":1}}],["15680",{"2":{"160":1}}],["15682",{"2":{"149":1}}],["15687",{"2":{"149":1}}],["15684",{"2":{"149":1}}],["15681",{"2":{"149":1}}],["15668",{"2":{"149":1}}],["15667",{"2":{"149":1}}],["15665",{"2":{"149":1}}],["15662",{"2":{"149":1}}],["15661",{"2":{"149":1}}],["15646",{"2":{"149":1}}],["15647",{"2":{"149":1}}],["15645",{"2":{"149":1}}],["15643",{"2":{"149":1}}],["15641",{"2":{"149":1}}],["15638",{"2":{"149":1}}],["15637",{"2":{"149":1}}],["15636",{"2":{"149":1}}],["15635",{"2":{"149":1}}],["15988",{"2":{"149":1}}],["15985",{"2":{"149":1}}],["15984",{"2":{"149":1}}],["15987",{"2":{"149":1}}],["15976",{"2":{"149":1}}],["15938",{"2":{"149":1}}],["15935",{"2":{"149":1}}],["15919",{"2":{"149":1}}],["15907",{"2":{"176":1}}],["15906",{"2":{"149":1}}],["15904",{"2":{"149":1}}],["15996",{"2":{"160":1}}],["15990",{"2":{"160":1}}],["15999",{"2":{"149":1}}],["15997",{"2":{"149":1}}],["15993",{"2":{"149":1}}],["15992",{"2":{"149":1}}],["15991",{"2":{"149":1}}],["15968",{"2":{"149":1}}],["15959",{"2":{"160":1}}],["15954",{"2":{"149":1}}],["15953",{"2":{"149":1}}],["15944",{"2":{"149":1}}],["15924",{"2":{"149":1}}],["15925",{"2":{"149":1}}],["15923",{"2":{"149":1}}],["15843",{"2":{"1326":1}}],["15847",{"2":{"211":1}}],["15814",{"2":{"149":1}}],["15815",{"2":{"149":1}}],["15801",{"2":{"149":1}}],["15805",{"2":{"149":1}}],["15889",{"2":{"236":1}}],["15880",{"2":{"149":1}}],["15883",{"2":{"149":1}}],["15882",{"2":{"149":1}}],["15866",{"2":{"149":1}}],["15859",{"2":{"149":1}}],["15828",{"2":{"149":1}}],["15827",{"2":{"149":1}}],["15829",{"2":{"149":1}}],["15821",{"2":{"149":1}}],["15703",{"2":{"1326":1}}],["15741",{"2":{"199":1}}],["15740",{"2":{"149":1}}],["15733",{"2":{"160":1}}],["15730",{"2":{"149":1}}],["15799",{"2":{"149":1}}],["15798",{"2":{"149":1}}],["15797",{"2":{"149":1}}],["15791",{"2":{"149":1}}],["15789",{"2":{"149":1}}],["15788",{"2":{"149":1}}],["15786",{"2":{"149":1}}],["15785",{"2":{"149":1}}],["15783",{"2":{"149":1}}],["15781",{"2":{"149":1}}],["15780",{"2":{"149":1}}],["15787",{"2":{"149":1}}],["15767",{"2":{"149":1}}],["15760",{"2":{"149":1}}],["15758",{"2":{"149":1}}],["15725",{"2":{"149":1}}],["15510",{"2":{"1326":1}}],["15519",{"2":{"149":1}}],["15505",{"2":{"1326":1}}],["15592",{"2":{"149":1}}],["15589",{"2":{"149":1}}],["15557",{"2":{"149":1}}],["15559",{"2":{"149":1}}],["15538",{"2":{"149":1}}],["15537",{"2":{"149":1}}],["15579",{"2":{"149":1}}],["15416",{"2":{"149":1}}],["15419",{"2":{"149":1}}],["15483",{"2":{"149":1}}],["15489",{"2":{"149":1}}],["15481",{"2":{"149":1}}],["15492",{"2":{"149":1}}],["15479",{"2":{"149":1}}],["15457",{"2":{"149":1}}],["15450",{"2":{"149":1}}],["15435",{"2":{"149":1}}],["15431",{"2":{"149":1}}],["15420",{"2":{"149":1}}],["15409",{"2":{"149":1}}],["15320",{"2":{"160":1}}],["15321",{"2":{"149":1}}],["15378",{"2":{"149":1}}],["15376",{"2":{"149":1}}],["15340",{"2":{"149":1}}],["15349",{"2":{"149":1}}],["15336",{"2":{"149":1}}],["15368",{"2":{"149":1}}],["15352",{"2":{"149":1}}],["15316",{"2":{"134":1}}],["15313",{"2":{"134":1}}],["15312",{"2":{"134":1}}],["15306",{"2":{"149":1}}],["15305",{"2":{"149":1}}],["15304",{"2":{"149":1}}],["15307",{"2":{"134":1}}],["15302",{"2":{"134":1}}],["15301",{"2":{"134":1}}],["15309",{"2":{"134":1}}],["15303",{"2":{"134":1}}],["15277",{"2":{"149":1}}],["15207",{"2":{"149":1}}],["15205",{"2":{"134":1}}],["15286",{"2":{"176":1}}],["15285",{"2":{"149":1}}],["15282",{"2":{"149":1}}],["15292",{"2":{"176":1}}],["15298",{"2":{"134":1}}],["15299",{"2":{"134":1}}],["15239",{"2":{"134":1}}],["15221",{"2":{"134":1}}],["15223",{"2":{"134":1}}],["15240",{"2":{"134":1}}],["15243",{"2":{"134":1}}],["15244",{"2":{"134":1}}],["15268",{"2":{"134":1}}],["15263",{"2":{"134":1}}],["15262",{"2":{"134":1}}],["15261",{"2":{"134":1}}],["15260",{"2":{"134":1}}],["15269",{"2":{"134":1}}],["15132",{"2":{"149":1}}],["15130",{"2":{"134":1}}],["15167",{"2":{"134":1}}],["15162",{"2":{"133":1,"134":1}}],["15115",{"2":{"134":1}}],["15116",{"2":{"134":1}}],["15109",{"2":{"134":1}}],["15185",{"2":{"134":1}}],["15184",{"2":{"134":1}}],["15171",{"2":{"134":1}}],["15170",{"2":{"134":1}}],["15174",{"2":{"134":1}}],["15199",{"2":{"134":1}}],["15196",{"2":{"134":1}}],["15195",{"2":{"134":1}}],["150",{"2":{"344":1,"728":2,"729":1,"1316":1,"1496":1,"1497":1,"1604":1,"1606":1,"1933":1,"2003":2,"2911":2}}],["15088",{"2":{"149":1}}],["15083",{"2":{"149":1}}],["15029",{"2":{"134":2}}],["15020",{"2":{"134":1}}],["15021",{"2":{"134":1}}],["15073",{"2":{"134":1}}],["15068",{"2":{"134":1}}],["15055",{"2":{"134":1}}],["15019",{"2":{"134":1}}],["15014",{"2":{"134":1}}],["15017",{"2":{"134":1}}],["15012",{"2":{"134":1}}],["15011",{"2":{"134":1}}],["15010",{"2":{"134":1}}],["15018",{"2":{"134":1}}],["15047",{"2":{"134":1}}],["15040",{"2":{"134":2}}],["15031",{"2":{"134":1}}],["15034",{"2":{"134":1}}],["15037",{"2":{"133":1,"134":1}}],["1500",{"2":{"655":2,"1487":1}}],["15006",{"2":{"149":1}}],["15004",{"2":{"134":1}}],["15003",{"2":{"134":1}}],["15002",{"2":{"134":1}}],["18x4",{"2":{"1155":1}}],["18x8",{"2":{"1121":1}}],["18x11",{"2":{"1087":1}}],["18x12",{"2":{"726":1}}],["18499",{"2":{"199":1}}],["18455",{"2":{"191":1}}],["18450",{"2":{"191":1}}],["18459",{"2":{"191":1}}],["18449",{"2":{"191":1}}],["18441",{"2":{"191":1}}],["18477",{"2":{"191":1}}],["18475",{"2":{"191":1}}],["18472",{"2":{"191":1}}],["1840",{"2":{"211":1}}],["18408",{"2":{"191":1}}],["18403",{"2":{"191":1}}],["18402",{"2":{"191":1}}],["18404",{"2":{"190":1,"191":1}}],["18463",{"2":{"199":1}}],["18467",{"2":{"191":1}}],["18464",{"2":{"191":1}}],["18431",{"2":{"191":1}}],["18432",{"2":{"191":1}}],["18439",{"2":{"191":1}}],["18437",{"2":{"191":1}}],["18438880",{"2":{"149":1}}],["18428",{"2":{"191":1}}],["18426",{"2":{"191":1}}],["18423",{"2":{"191":1}}],["18424",{"2":{"191":1}}],["18421",{"2":{"191":1}}],["18414",{"2":{"191":1}}],["18419",{"2":{"191":1}}],["18418",{"2":{"191":1}}],["18417",{"2":{"191":1}}],["18415",{"2":{"191":1}}],["18521",{"2":{"249":1}}],["18527",{"2":{"191":1}}],["18581",{"2":{"191":1}}],["18588",{"2":{"188":1,"191":1}}],["18574",{"2":{"191":1}}],["18577",{"2":{"191":1}}],["18557",{"2":{"191":1}}],["18553",{"2":{"191":1}}],["18566",{"2":{"191":1}}],["18560",{"2":{"191":1}}],["18565",{"2":{"190":1,"191":1}}],["18545",{"2":{"191":1}}],["18544",{"2":{"191":1}}],["18593",{"2":{"191":1}}],["18594",{"2":{"191":1}}],["18599",{"2":{"191":1}}],["18592",{"2":{"191":1}}],["18513",{"2":{"190":1,"191":1}}],["183874",{"2":{"2403":1}}],["183883",{"2":{"2403":3}}],["18314",{"2":{"328":1}}],["18310",{"2":{"191":1}}],["18371",{"2":{"199":1}}],["18370",{"2":{"191":1}}],["18351",{"2":{"191":1}}],["18352",{"2":{"191":1}}],["18332",{"2":{"277":1}}],["18338",{"2":{"191":1}}],["18333",{"2":{"191":1}}],["18345",{"2":{"191":1}}],["18394",{"2":{"191":1}}],["18399",{"2":{"191":1}}],["18396",{"2":{"191":1}}],["18366",{"2":{"191":1}}],["18363",{"2":{"190":1,"191":1}}],["18323",{"2":{"191":1}}],["18309",{"2":{"189":1,"191":1}}],["187",{"2":{"1840":1,"2060":1}}],["18734",{"2":{"191":1}}],["18730",{"2":{"191":1}}],["18725",{"2":{"191":1}}],["18729",{"2":{"191":2}}],["18728",{"2":{"191":1}}],["18727",{"2":{"191":1}}],["18726",{"2":{"191":2}}],["18720",{"2":{"191":1}}],["18721",{"2":{"191":1}}],["18701",{"2":{"191":1}}],["18700",{"2":{"191":1}}],["18709",{"2":{"191":1}}],["18766",{"2":{"191":1}}],["18767",{"2":{"191":1}}],["18769",{"2":{"188":1,"191":1}}],["18751",{"2":{"191":1}}],["18753",{"2":{"191":2}}],["18750",{"2":{"191":1}}],["18716",{"2":{"191":1}}],["18715",{"2":{"191":1}}],["18714",{"2":{"191":1}}],["18717",{"2":{"191":1}}],["18710",{"2":{"188":1,"191":1}}],["18775",{"2":{"191":1}}],["18774",{"2":{"190":1,"191":1}}],["18776",{"2":{"189":1,"191":1}}],["18745",{"2":{"199":1}}],["18749",{"2":{"188":1,"191":1}}],["18740",{"2":{"188":1,"191":1}}],["18789",{"2":{"191":1}}],["18781",{"2":{"191":1}}],["18787",{"2":{"188":1,"191":1}}],["18782",{"2":{"188":1,"191":1}}],["18791",{"2":{"191":1}}],["18796",{"2":{"188":1,"191":1}}],["18792",{"2":{"188":1,"191":1}}],["18249",{"2":{"191":1}}],["18244",{"2":{"191":1}}],["18205",{"2":{"191":1}}],["18299",{"2":{"191":1}}],["18298",{"2":{"191":1}}],["18297",{"2":{"191":1}}],["18292",{"2":{"191":1}}],["18290",{"2":{"188":1,"191":1}}],["18268",{"2":{"191":1}}],["18262",{"2":{"191":1}}],["18260",{"2":{"191":1}}],["18259",{"2":{"191":1}}],["18215",{"2":{"191":2}}],["18212",{"2":{"191":1}}],["18289",{"2":{"191":1}}],["18279",{"2":{"191":1}}],["18274",{"2":{"191":1}}],["18271",{"2":{"188":1,"191":1}}],["18234",{"2":{"191":1}}],["18235",{"2":{"191":1}}],["18230",{"2":{"191":1}}],["18236",{"2":{"189":1,"191":1}}],["18224",{"2":{"191":1}}],["18228",{"2":{"191":1}}],["18222",{"2":{"191":1}}],["18654",{"2":{"191":1}}],["18650",{"2":{"191":1}}],["18651",{"2":{"191":1}}],["18659",{"2":{"190":1,"191":1}}],["18617",{"2":{"191":1}}],["18613",{"2":{"191":1}}],["18618",{"2":{"191":1}}],["18615",{"2":{"191":1}}],["18692",{"2":{"191":1}}],["18693",{"2":{"191":1}}],["18690",{"2":{"191":1}}],["18687",{"2":{"191":1}}],["18689",{"2":{"191":1}}],["18683",{"2":{"188":1,"191":1}}],["18649",{"2":{"191":1}}],["18640",{"2":{"191":1}}],["18641",{"2":{"191":1}}],["18643",{"2":{"188":1,"191":1}}],["18629",{"2":{"191":1}}],["18609",{"2":{"191":1}}],["18608",{"2":{"191":1}}],["18606",{"2":{"191":1}}],["18601",{"2":{"188":1,"191":1}}],["18638",{"2":{"211":1}}],["18635",{"2":{"191":1}}],["18631",{"2":{"191":1}}],["18637",{"2":{"189":1,"191":1}}],["18634",{"2":{"188":1,"191":1}}],["18668",{"2":{"191":1}}],["18667",{"2":{"191":1}}],["18662",{"2":{"191":1}}],["18669",{"2":{"188":1,"191":1}}],["18660",{"2":{"188":1,"191":1}}],["189kbps",{"2":{"568":1,"2268":1}}],["18915",{"2":{"199":1}}],["18910",{"2":{"191":1}}],["18921f",{"2":{"1487":1}}],["18921",{"2":{"191":1}}],["18924",{"2":{"191":1}}],["18984",{"2":{"191":1}}],["18982",{"2":{"191":1}}],["1897",{"2":{"747":1}}],["18977",{"2":{"191":1}}],["18979",{"2":{"191":1}}],["18978",{"2":{"191":1}}],["18974",{"2":{"191":1}}],["18973",{"2":{"191":1}}],["18972",{"2":{"188":1,"191":1}}],["18933",{"2":{"191":1}}],["18939",{"2":{"188":1,"191":1}}],["189000",{"2":{"1204":1}}],["18908",{"2":{"191":1}}],["18901",{"2":{"189":1,"191":1}}],["18992",{"2":{"191":1}}],["18999",{"2":{"191":1}}],["18997",{"2":{"191":1}}],["18991",{"2":{"191":1}}],["18998",{"2":{"191":1}}],["18996",{"2":{"191":1}}],["1895",{"2":{"746":1}}],["18954",{"2":{"191":1}}],["18956",{"2":{"191":1}}],["18959",{"2":{"191":1}}],["18952",{"2":{"191":1}}],["18951",{"2":{"191":1}}],["18958",{"2":{"188":1,"191":1}}],["18943",{"2":{"199":1}}],["18944",{"2":{"191":1}}],["18942",{"2":{"191":1}}],["18940",{"2":{"191":1,"199":1}}],["18949",{"2":{"191":1}}],["18948",{"2":{"191":1}}],["18947",{"2":{"191":1}}],["18946",{"2":{"191":1}}],["18965",{"2":{"191":1}}],["18969",{"2":{"191":1}}],["18961",{"2":{"188":1,"191":1}}],["18964",{"2":{"188":1,"191":1}}],["18963",{"2":{"188":1,"191":1}}],["18962",{"2":{"188":1,"191":1}}],["188",{"2":{"1840":1,"2060":1}}],["18822",{"2":{"191":1}}],["18852",{"2":{"199":1}}],["18855",{"2":{"191":1}}],["18859",{"2":{"191":1}}],["18858",{"2":{"191":1}}],["18887",{"2":{"191":1}}],["18884",{"2":{"191":1}}],["18886",{"2":{"191":1}}],["18882",{"2":{"188":1,"191":1}}],["18876",{"2":{"191":1}}],["18878",{"2":{"191":1}}],["18874",{"2":{"191":1}}],["18877",{"2":{"188":1,"191":1}}],["18860",{"2":{"191":1}}],["18866",{"2":{"191":1}}],["18867",{"2":{"191":1}}],["18864",{"2":{"188":1,"191":1}}],["18811",{"2":{"191":1}}],["18804",{"2":{"191":1}}],["18806",{"2":{"191":1}}],["18803",{"2":{"191":1}}],["18800",{"2":{"188":1,"191":2}}],["18807",{"2":{"188":1,"191":1}}],["18838",{"2":{"191":1}}],["18837",{"2":{"191":1}}],["18832",{"2":{"188":1,"191":1}}],["18834",{"2":{"188":1,"191":1}}],["18890",{"2":{"199":1}}],["18898",{"2":{"188":1,"191":1}}],["18893",{"2":{"188":1,"191":1}}],["18892",{"2":{"188":1,"191":1}}],["18840",{"2":{"191":1}}],["18847",{"2":{"188":1,"191":1}}],["18844",{"2":{"188":1,"191":1}}],["18843",{"2":{"188":1,"191":1}}],["18196",{"2":{"191":1}}],["18194",{"2":{"191":1}}],["18195",{"2":{"191":1}}],["18183",{"2":{"191":1}}],["18178",{"2":{"191":1}}],["18175",{"2":{"176":1}}],["18116",{"2":{"176":1}}],["18117",{"2":{"176":1}}],["18108",{"2":{"191":1}}],["18101",{"2":{"191":1}}],["18102",{"2":{"176":1}}],["18100",{"2":{"176":1}}],["18168",{"2":{"176":1}}],["18131",{"2":{"176":1}}],["18152",{"2":{"169":1,"176":1}}],["18",{"2":{"114":1,"407":1,"797":1,"857":1,"1024":1,"1486":1,"1521":1,"1680":1,"1772":3,"1839":1,"1960":3,"2000":2,"2525":3,"2541":3,"2657":1,"2707":1,"2761":1,"2767":3}}],["180°",{"2":{"1769":1}}],["18098",{"2":{"191":1}}],["18099",{"2":{"176":1}}],["18066",{"2":{"199":1}}],["18060",{"2":{"190":1,"191":1}}],["18067",{"2":{"176":1}}],["18063",{"2":{"176":1}}],["18028",{"2":{"176":1}}],["18025",{"2":{"176":1}}],["18020",{"2":{"176":1}}],["18029",{"2":{"176":1}}],["18036",{"2":{"191":1}}],["18039",{"2":{"176":1}}],["18038",{"2":{"176":1}}],["18032",{"2":{"176":1}}],["18037",{"2":{"176":1}}],["18059",{"2":{"285":1}}],["18058",{"2":{"191":1}}],["18050",{"2":{"176":1}}],["18056",{"2":{"176":1}}],["18057",{"2":{"176":1}}],["18018",{"2":{"176":1}}],["18016",{"2":{"176":1}}],["18011",{"2":{"176":1}}],["18044",{"2":{"191":1}}],["18043",{"2":{"176":1}}],["18045",{"2":{"176":1}}],["18042",{"2":{"176":1}}],["18006",{"2":{"191":1}}],["18008",{"2":{"176":1}}],["18007",{"2":{"176":1}}],["18000",{"2":{"176":1}}],["1800",{"2":{"57":2,"211":1,"308":1,"1999":1,"2790":1,"2793":1}}],["180",{"2":{"31":2,"34":2,"332":2,"639":1,"1053":1,"1839":1,"1942":2,"1947":3,"1948":2,"1993":2,"2004":2,"2016":2,"2018":2,"2280":2,"2283":1,"2750":1}}],["14k5",{"2":{"1159":1}}],["14",{"2":{"407":1,"692":4,"1159":1,"1486":1,"1680":1,"1772":3,"1919":2,"1958":1,"1960":3,"2000":1,"2189":1,"2258":1,"2478":1,"2480":1,"2525":3,"2532":2,"2541":3,"2707":2,"2793":4}}],["14674",{"2":{"149":1}}],["14678",{"2":{"134":1}}],["14655",{"2":{"134":1}}],["14659",{"2":{"133":1,"134":1}}],["14639",{"2":{"134":1}}],["14662",{"2":{"134":1}}],["14699",{"2":{"134":1}}],["14600",{"2":{"134":1}}],["149",{"2":{"1840":1,"2060":1}}],["14944",{"2":{"266":1}}],["14948",{"2":{"149":1}}],["14947",{"2":{"134":1}}],["14934",{"2":{"134":1}}],["14906",{"2":{"134":1}}],["14989",{"2":{"149":1}}],["14982",{"2":{"134":1}}],["14983",{"2":{"134":1}}],["14980",{"2":{"134":1}}],["14967",{"2":{"134":1}}],["14969",{"2":{"133":1,"134":1}}],["14928",{"2":{"134":1}}],["14919",{"2":{"134":1}}],["14917",{"2":{"133":1,"134":1}}],["14975",{"2":{"134":1}}],["14973",{"2":{"134":1}}],["14976",{"2":{"133":1,"134":1}}],["14972",{"2":{"133":1,"134":1}}],["14814",{"2":{"199":1}}],["14877",{"2":{"176":1}}],["14879",{"2":{"134":1}}],["14872",{"2":{"134":1}}],["14864",{"2":{"134":1}}],["14848",{"2":{"134":1}}],["14835",{"2":{"134":1}}],["14839",{"2":{"133":1,"134":1}}],["14898",{"2":{"134":1}}],["14899",{"2":{"133":1,"134":1}}],["14895",{"2":{"133":1,"134":1}}],["14894",{"2":{"133":1,"134":1}}],["14888",{"2":{"133":1,"134":1}}],["14859",{"2":{"134":1}}],["14854",{"2":{"134":1}}],["14858",{"2":{"133":1,"134":1}}],["14855",{"2":{"133":1,"134":1}}],["1471",{"2":{"2007":1}}],["14713",{"2":{"134":1}}],["14764",{"2":{"746":2}}],["14760",{"2":{"133":1,"134":1}}],["14785",{"2":{"134":1}}],["14780",{"2":{"134":1}}],["14751",{"2":{"134":1}}],["14752",{"2":{"131":1,"134":1}}],["14730",{"2":{"134":1}}],["14775",{"2":{"134":1}}],["14747",{"2":{"134":1}}],["14749",{"2":{"134":1}}],["14740",{"2":{"134":1}}],["14745",{"2":{"133":1,"134":1}}],["14743",{"2":{"133":1,"134":1}}],["14720",{"2":{"134":1}}],["14729",{"2":{"134":1}}],["14727",{"2":{"133":1,"134":1}}],["14726",{"2":{"133":1,"134":1}}],["14723",{"2":{"133":1,"134":1}}],["14243",{"2":{"149":1}}],["14248",{"2":{"134":2}}],["14261",{"2":{"134":1}}],["14252",{"2":{"134":1}}],["14235",{"2":{"134":1}}],["14231",{"2":{"133":1,"134":1}}],["14289",{"2":{"134":1}}],["14200",{"2":{"176":1}}],["14208",{"2":{"134":1}}],["14206",{"2":{"134":1}}],["14201",{"2":{"134":1}}],["14207",{"2":{"133":1,"134":1}}],["14215",{"2":{"134":1}}],["14213",{"2":{"134":1}}],["14216",{"2":{"133":1,"134":1}}],["14210",{"2":{"133":1,"134":1}}],["144",{"2":{"884":1,"985":1,"1121":1,"1839":3,"2456":1}}],["14464",{"2":{"134":1}}],["14462",{"2":{"132":1,"134":1}}],["14452",{"2":{"191":1}}],["14455",{"2":{"134":1}}],["14454",{"2":{"134":1}}],["14456",{"2":{"133":1,"134":1}}],["14442",{"2":{"134":1}}],["14420",{"2":{"176":1}}],["14421",{"2":{"134":1}}],["14422",{"2":{"130":1,"134":1}}],["14497",{"2":{"134":1}}],["14490",{"2":{"134":1}}],["14496",{"2":{"134":1}}],["14415",{"2":{"134":1}}],["14413",{"2":{"134":1}}],["14419",{"2":{"134":1}}],["14408",{"2":{"134":1}}],["14404",{"2":{"133":1,"134":1}}],["14474",{"2":{"134":1}}],["14470",{"2":{"134":1}}],["14434",{"2":{"134":1}}],["14439",{"2":{"134":2}}],["14433",{"2":{"134":1}}],["14430",{"2":{"134":1}}],["14325",{"2":{"134":1}}],["14327",{"2":{"134":1}}],["14399",{"2":{"134":1}}],["14372",{"2":{"134":1}}],["14374",{"2":{"134":1}}],["14370",{"2":{"132":1,"134":1}}],["14343",{"2":{"134":1}}],["14348",{"2":{"133":1,"134":1}}],["14389",{"2":{"134":1}}],["14380",{"2":{"133":1,"134":1}}],["14388",{"2":{"130":1,"134":1}}],["14308",{"2":{"133":1,"134":1}}],["14580",{"2":{"149":1}}],["14584",{"2":{"130":1,"134":1}}],["14590",{"2":{"134":1}}],["14591",{"2":{"131":1,"134":1}}],["14546",{"2":{"134":1}}],["14508",{"2":{"134":1}}],["14530",{"2":{"133":1,"134":1}}],["14194",{"2":{"134":1}}],["14195",{"2":{"131":1,"134":1}}],["14181",{"2":{"134":1}}],["14155",{"2":{"134":1}}],["14150",{"2":{"114":1}}],["14174",{"2":{"134":1}}],["14171",{"2":{"114":1}}],["14172",{"2":{"114":1}}],["14118",{"2":{"114":1}}],["14146",{"2":{"114":1}}],["14142",{"2":{"114":1}}],["14140",{"2":{"114":1}}],["14144",{"2":{"114":2}}],["14123",{"2":{"114":1}}],["14120",{"2":{"114":1}}],["14106",{"2":{"114":1}}],["14108",{"2":{"114":1}}],["14105",{"2":{"114":1}}],["14136",{"2":{"114":1}}],["14133",{"2":{"114":1}}],["14134",{"2":{"113":1,"114":1}}],["14132",{"2":{"113":1,"114":1}}],["140",{"2":{"2906":1}}],["14091",{"2":{"149":1}}],["14095",{"2":{"114":1}}],["14090",{"2":{"114":1}}],["14097",{"2":{"114":1}}],["14052",{"2":{"114":1}}],["14051",{"2":{"114":1}}],["14017",{"2":{"114":1}}],["14065",{"2":{"149":1}}],["14061",{"2":{"114":1}}],["14063",{"2":{"114":1}}],["14048",{"2":{"114":1}}],["14045",{"2":{"114":1}}],["14033",{"2":{"134":1}}],["14039",{"2":{"114":1}}],["14038",{"2":{"114":1}}],["14005",{"2":{"114":1}}],["14007",{"2":{"114":1}}],["14089",{"2":{"114":1}}],["14084",{"2":{"114":1}}],["14080",{"2":{"114":1}}],["14083",{"2":{"114":2}}],["14079",{"2":{"114":1}}],["14025",{"2":{"113":1,"114":1}}],["12bit",{"2":{"1482":1}}],["12x12",{"2":{"985":1}}],["12x16",{"2":{"916":1}}],["12x8",{"2":{"951":1}}],["12x4",{"2":{"674":1}}],["12e3",{"2":{"294":1}}],["12e4",{"2":{"291":1}}],["12",{"2":{"199":1,"266":1,"348":1,"371":2,"373":1,"406":9,"407":1,"563":3,"690":1,"692":4,"698":1,"716":1,"823":1,"860":1,"1027":1,"1061":1,"1095":1,"1129":1,"1313":1,"1487":1,"1521":2,"1675":1,"1680":1,"1768":1,"1772":3,"1919":3,"1960":3,"2000":1,"2059":1,"2186":1,"2189":4,"2480":1,"2525":3,"2532":3,"2541":3,"2748":1}}],["12674",{"2":{"114":1}}],["12670",{"2":{"114":1,"134":1}}],["12671",{"2":{"94":1}}],["12632",{"2":{"114":1}}],["12637",{"2":{"114":1}}],["12633",{"2":{"93":1}}],["12692",{"2":{"134":1}}],["12691",{"2":{"134":1}}],["12699",{"2":{"114":1}}],["12697",{"2":{"94":1}}],["12689",{"2":{"114":1}}],["12685",{"2":{"93":1}}],["12669",{"2":{"114":1}}],["12641",{"2":{"114":1}}],["12602",{"2":{"94":1}}],["12600",{"2":{"93":1}}],["12625",{"2":{"94":1}}],["12626",{"2":{"94":1}}],["12651",{"2":{"93":1}}],["12617",{"2":{"114":1}}],["12619",{"2":{"93":1}}],["12613",{"2":{"86":1}}],["1252",{"2":{"2324":1}}],["125",{"2":{"1930":1,"1998":2}}],["1250",{"2":{"1282":1,"2899":1,"2901":1}}],["12508",{"2":{"130":1,"134":1}}],["12509",{"2":{"93":1}}],["12538",{"2":{"114":1}}],["12567",{"2":{"114":1}}],["12560",{"2":{"93":1}}],["12561",{"2":{"92":1}}],["12588",{"2":{"93":1}}],["12580",{"2":{"93":1}}],["121",{"2":{"1680":1}}],["12159",{"2":{"114":1}}],["12116",{"2":{"114":1}}],["12160",{"2":{"94":1}}],["12161",{"2":{"94":1}}],["12187",{"2":{"94":1}}],["12197",{"2":{"94":1}}],["12108",{"2":{"134":1}}],["12109",{"2":{"94":1}}],["12107",{"2":{"93":1}}],["12172",{"2":{"93":1}}],["12425",{"2":{"114":1}}],["12495",{"2":{"94":1}}],["12403",{"2":{"93":1}}],["12444",{"2":{"93":1}}],["12417",{"2":{"93":1}}],["12419",{"2":{"93":1}}],["12435",{"2":{"93":1}}],["12482",{"2":{"92":1}}],["123",{"2":{"1450":1,"1680":1}}],["12315",{"2":{"114":1}}],["12314",{"2":{"114":1}}],["12317",{"2":{"93":1}}],["12386",{"2":{"114":1}}],["12327",{"2":{"94":1}}],["12342",{"2":{"93":1}}],["12361",{"2":{"93":1}}],["122",{"2":{"207":5,"1680":1}}],["12240",{"2":{"114":1}}],["12249",{"2":{"94":1}}],["12238",{"2":{"114":1}}],["12237",{"2":{"93":1}}],["12211",{"2":{"114":1}}],["12216",{"2":{"93":1}}],["12284",{"2":{"94":1}}],["12286",{"2":{"94":1}}],["12258",{"2":{"93":1}}],["12226",{"2":{"86":1}}],["129",{"2":{"1521":2}}],["129u",{"2":{"767":1}}],["12950",{"2":{"134":1}}],["12951",{"2":{"114":1}}],["12947",{"2":{"131":1,"134":2}}],["12946",{"2":{"114":1}}],["12949",{"2":{"114":1}}],["12945",{"2":{"92":1}}],["12914",{"2":{"114":1}}],["12915",{"2":{"95":1}}],["12987",{"2":{"93":1}}],["12985",{"2":{"93":1}}],["12936",{"2":{"93":1}}],["12933",{"2":{"92":1}}],["12977",{"2":{"92":1}}],["12976",{"2":{"92":1}}],["128x40",{"2":{"2746":2}}],["128x128",{"2":{"1937":1,"1946":3,"2746":2}}],["128x32",{"2":{"1937":2,"1946":1,"1947":1,"1948":1,"2276":1,"2282":1,"2746":1}}],["128x64",{"0":{"1946":1},"1":{"1947":1},"2":{"232":1,"1937":3,"1943":1,"1946":2,"2276":1,"2746":3}}],["128u",{"2":{"716":1}}],["128",{"2":{"690":1,"764":1,"1244":1,"1265":1,"1297":1,"1532":1,"1559":1,"1560":1,"1655":1,"1656":2,"1943":1,"1946":1,"1948":1,"2021":4,"2282":1,"2323":1,"2773":5,"2864":1,"2871":1}}],["12870",{"2":{"114":1}}],["12878",{"2":{"92":1}}],["12819",{"2":{"114":1}}],["12893",{"2":{"114":1}}],["12895",{"2":{"92":1}}],["12859",{"2":{"114":1}}],["12851",{"2":{"114":1}}],["12856",{"2":{"95":1}}],["12845",{"2":{"114":1}}],["12846",{"2":{"94":1}}],["12831",{"2":{"114":1}}],["12833",{"2":{"95":1}}],["12832",{"2":{"95":1}}],["12805",{"2":{"93":1}}],["12861",{"2":{"114":1}}],["12864",{"2":{"94":1}}],["12868",{"2":{"93":1}}],["12866",{"2":{"92":1}}],["12828",{"2":{"93":1}}],["12888",{"2":{"92":1}}],["12881",{"2":{"86":1}}],["127",{"2":{"176":1,"562":2,"1768":1,"1770":2,"1771":1,"1846":1,"1918":2,"1919":1,"1920":1,"1941":1,"2007":1,"2014":5,"2016":4,"2017":2,"2021":8,"2023":5,"2069":1,"2185":1,"2187":2,"2279":1,"2323":2,"2532":1}}],["12795",{"2":{"149":2}}],["12797",{"2":{"114":1}}],["12789",{"2":{"114":1}}],["12767",{"2":{"114":1}}],["12755",{"2":{"114":1}}],["12754",{"2":{"114":1}}],["12750",{"2":{"92":1}}],["12770",{"2":{"94":1}}],["12721",{"2":{"93":1}}],["12723",{"2":{"92":1}}],["120",{"2":{"1481":1,"1680":1,"1931":1,"2017":2,"2187":1,"2905":2,"2910":1}}],["12097",{"2":{"114":1}}],["12091",{"2":{"93":1}}],["12023",{"2":{"114":1}}],["12022",{"2":{"73":1}}],["12069",{"2":{"114":1}}],["12067",{"2":{"94":1}}],["12063",{"2":{"93":1}}],["12054",{"2":{"94":1}}],["12086",{"2":{"93":1}}],["12018",{"2":{"93":1}}],["12039",{"2":{"73":1}}],["12001",{"2":{"77":1}}],["12000",{"2":{"76":1,"2014":1}}],["120000",{"2":{"25":1}}],["1200",{"2":{"25":1,"1269":1,"2010":1,"2017":1}}],["11",{"0":{"1372":1},"2":{"160":1,"176":2,"191":1,"211":1,"249":1,"294":1,"373":2,"406":1,"407":1,"690":1,"692":4,"890":1,"1201":1,"1486":1,"1521":1,"1680":1,"1772":3,"1919":2,"1960":3,"2189":2,"2258":1,"2270":1,"2288":1,"2296":4,"2480":1,"2495":1,"2525":3,"2532":2,"2541":3,"2567":1,"2687":1,"2748":1,"2769":1}}],["112",{"2":{"1521":1,"1680":1,"1840":3,"2060":3,"2864":1,"2871":1}}],["11261",{"2":{"77":1}}],["11237",{"2":{"75":1}}],["118",{"2":{"1680":1}}],["11842",{"2":{"114":1}}],["11846",{"2":{"77":1}}],["11896",{"2":{"114":1}}],["11890",{"2":{"94":1}}],["11893",{"2":{"76":1}}],["11864",{"2":{"92":1}}],["11863",{"2":{"75":1}}],["11820",{"2":{"75":1}}],["11829",{"2":{"75":1}}],["11823",{"2":{"75":1}}],["11824",{"2":{"74":1}}],["11804",{"2":{"75":1}}],["11805",{"2":{"75":1}}],["119972",{"2":{"2403":2}}],["119",{"2":{"1680":1}}],["11988",{"2":{"93":1}}],["11981",{"2":{"72":1}}],["11978",{"2":{"86":1}}],["11927",{"2":{"77":1}}],["11928",{"2":{"76":1}}],["11930",{"2":{"107":1,"114":1}}],["11935",{"2":{"93":1}}],["11936",{"2":{"76":1}}],["11938",{"2":{"74":1}}],["11907",{"2":{"76":1}}],["11905",{"2":{"76":1}}],["11966",{"2":{"75":1}}],["11943",{"2":{"75":1}}],["11940",{"2":{"75":1}}],["11913",{"2":{"74":1}}],["11912",{"2":{"74":1}}],["11000010",{"2":{"2288":1}}],["11001000",{"2":{"2288":1}}],["110",{"2":{"1680":1,"2288":1,"2905":2,"2906":2}}],["11025u",{"2":{"716":1}}],["11036",{"2":{"134":1}}],["11083",{"2":{"93":1}}],["11059",{"2":{"134":2}}],["11055",{"2":{"93":1}}],["11057",{"2":{"74":1}}],["11046",{"2":{"74":1}}],["117",{"2":{"1019":1,"1521":1,"1680":1,"2059":1,"2183":1}}],["11727",{"2":{"93":1}}],["11728",{"2":{"73":1}}],["11793",{"2":{"77":1}}],["11750",{"2":{"75":1}}],["11751",{"2":{"75":1}}],["11768",{"2":{"74":1}}],["116",{"2":{"1521":5,"1680":1}}],["11621",{"2":{"77":1}}],["11620",{"2":{"77":1}}],["11615",{"2":{"77":1}}],["11617",{"2":{"77":1}}],["11646",{"2":{"77":1}}],["11630",{"2":{"77":1}}],["11637",{"2":{"75":1}}],["11607",{"2":{"77":1}}],["11600",{"2":{"73":1}}],["11689",{"2":{"77":1}}],["11688",{"2":{"76":1}}],["11687",{"2":{"74":1}}],["11672",{"2":{"75":1}}],["113",{"2":{"1680":1}}],["11350",{"2":{"74":1}}],["11307",{"2":{"74":1}}],["111",{"2":{"1680":1}}],["11151",{"2":{"114":1}}],["11154",{"2":{"74":1}}],["11123",{"2":{"77":1}}],["11111",{"2":{"77":1}}],["11108",{"2":{"76":1}}],["11101",{"2":{"76":1}}],["11165",{"2":{"75":1}}],["11168",{"2":{"75":1}}],["11162",{"2":{"73":1}}],["11195",{"2":{"72":1}}],["115",{"2":{"1517":2,"1680":1}}],["115200",{"2":{"1204":1,"1269":1,"2291":1}}],["11528",{"2":{"199":1}}],["11529",{"2":{"77":1}}],["11536",{"2":{"93":1}}],["11588",{"2":{"77":1}}],["11584",{"2":{"73":1}}],["11504",{"2":{"77":1}}],["11502",{"2":{"76":1}}],["11548",{"2":{"76":1}}],["11544",{"2":{"76":1}}],["11542",{"2":{"76":1}}],["11576",{"2":{"75":1}}],["11570",{"2":{"74":1}}],["11553",{"2":{"74":1}}],["11552",{"2":{"74":1}}],["11519",{"2":{"74":1}}],["11598",{"2":{"77":1}}],["11595",{"2":{"74":1}}],["11594",{"2":{"73":1}}],["114",{"2":{"1521":2,"1680":1,"1919":1,"2532":1}}],["11487",{"2":{"92":1}}],["11495",{"2":{"77":1}}],["11492",{"2":{"76":1}}],["11408",{"2":{"76":1}}],["11409",{"2":{"73":1}}],["11422",{"2":{"114":1}}],["11426",{"2":{"74":1}}],["11427",{"2":{"73":1}}],["11450",{"2":{"73":1}}],["11435",{"2":{"73":1}}],["11473",{"2":{"73":1}}],["11449",{"2":{"77":1}}],["11447",{"2":{"73":1}}],["11448",{"2":{"73":1}}],["11414",{"2":{"77":1}}],["11413",{"2":{"77":1}}],["11418",{"2":{"74":1}}],["11412",{"2":{"73":1}}],["11415",{"2":{"72":1}}],["1360",{"2":{"2580":1}}],["13606",{"2":{"114":1}}],["13697",{"2":{"114":1}}],["13696",{"2":{"114":1}}],["13695",{"2":{"114":1}}],["13692",{"2":{"114":1}}],["13691",{"2":{"114":1}}],["13690",{"2":{"114":1}}],["13698",{"2":{"114":1}}],["13668",{"2":{"114":1}}],["13667",{"2":{"114":1}}],["13665",{"2":{"114":1}}],["13664",{"2":{"114":1}}],["13658",{"2":{"114":1}}],["13653",{"2":{"114":1}}],["13633",{"2":{"114":1}}],["13688",{"2":{"114":1}}],["13687",{"2":{"114":1}}],["13686",{"2":{"114":1}}],["13685",{"2":{"114":1}}],["13684",{"2":{"114":1}}],["13681",{"2":{"114":1}}],["13689",{"2":{"114":1}}],["13680",{"2":{"114":1}}],["13648",{"2":{"114":1}}],["13647",{"2":{"114":1}}],["13646",{"2":{"114":1}}],["13645",{"2":{"114":1}}],["13649",{"2":{"114":1}}],["13641",{"2":{"114":1}}],["13629",{"2":{"114":1}}],["13677",{"2":{"114":2}}],["13672",{"2":{"114":1}}],["13671",{"2":{"114":1}}],["13676",{"2":{"114":1}}],["13673",{"2":{"113":1,"114":1}}],["135°",{"2":{"1769":1}}],["135",{"2":{"852":1,"1497":1,"1839":1}}],["13546",{"2":{"114":1}}],["13542",{"2":{"114":1}}],["13525",{"2":{"114":1}}],["13523",{"2":{"107":1,"114":1}}],["13533",{"2":{"114":1}}],["13511",{"2":{"114":1}}],["13597",{"2":{"114":1}}],["13596",{"2":{"114":1}}],["13571",{"2":{"114":1}}],["13570",{"2":{"114":1}}],["13551",{"2":{"114":1}}],["13550",{"2":{"114":1}}],["13559",{"2":{"114":1}}],["13504",{"2":{"114":1}}],["13502",{"2":{"114":1}}],["13588",{"2":{"114":1}}],["13566",{"2":{"114":1}}],["134217728",{"2":{"2501":1}}],["13425",{"2":{"114":1}}],["13471",{"2":{"114":1}}],["13470",{"2":{"114":1}}],["13404",{"2":{"114":1}}],["13405",{"2":{"114":1}}],["13403",{"2":{"114":1}}],["13481",{"2":{"114":1}}],["13480",{"2":{"114":1}}],["13442",{"2":{"114":1}}],["13457",{"2":{"114":1}}],["13454",{"2":{"114":1}}],["13450",{"2":{"114":1}}],["13433",{"2":{"114":1}}],["13430",{"2":{"114":1}}],["13418",{"2":{"107":1,"114":1}}],["13310",{"2":{"114":1}}],["13312",{"2":{"113":1,"114":1}}],["13371",{"2":{"114":1}}],["1337",{"2":{"114":1}}],["13377",{"2":{"114":1}}],["13398",{"2":{"114":1}}],["13399",{"2":{"114":1}}],["13389",{"2":{"114":1}}],["13383",{"2":{"114":1}}],["13366",{"2":{"114":1}}],["13360",{"2":{"114":1}}],["13350",{"2":{"114":1}}],["13349",{"2":{"114":1}}],["13333",{"2":{"114":1}}],["13330",{"2":{"114":2}}],["13321",{"2":{"114":1}}],["13304",{"2":{"114":1}}],["13309",{"2":{"114":1}}],["13302",{"2":{"114":1}}],["132x162",{"2":{"2746":1,"2749":1}}],["132x64",{"2":{"1943":1}}],["132",{"2":{"2403":1}}],["13286",{"2":{"154":1,"160":1}}],["13243",{"2":{"114":1}}],["13247",{"2":{"114":1}}],["13209",{"2":{"114":1}}],["13201",{"2":{"114":1}}],["13271",{"2":{"114":1}}],["13228",{"2":{"114":1}}],["13297",{"2":{"114":1}}],["13298",{"2":{"114":1}}],["13296",{"2":{"114":1}}],["13293",{"2":{"114":1}}],["13253",{"2":{"114":1}}],["13251",{"2":{"114":1}}],["13257",{"2":{"114":1}}],["13252",{"2":{"114":1}}],["13236",{"2":{"114":1}}],["13239",{"2":{"114":1}}],["13238",{"2":{"114":1}}],["13237",{"2":{"114":1}}],["131",{"2":{"1521":1}}],["13146",{"2":{"114":1}}],["13147",{"2":{"114":1}}],["13189",{"2":{"114":1}}],["13165",{"2":{"114":1}}],["13172",{"2":{"114":1}}],["13154",{"2":{"114":1}}],["13152",{"2":{"114":1}}],["13151",{"2":{"114":1}}],["13150",{"2":{"114":1}}],["13955",{"2":{"134":1}}],["13954",{"2":{"114":1}}],["13944",{"2":{"134":1}}],["13993",{"2":{"114":1}}],["13992",{"2":{"114":1}}],["13988",{"2":{"114":1}}],["13980",{"2":{"114":1}}],["13985",{"2":{"114":1}}],["13979",{"2":{"114":1}}],["13973",{"2":{"113":1,"114":1}}],["13937",{"2":{"114":1}}],["13931",{"2":{"114":1}}],["13932",{"2":{"114":1}}],["13918",{"2":{"133":1,"134":1}}],["13913",{"2":{"114":1}}],["13912",{"2":{"114":1}}],["13902",{"2":{"134":1}}],["13900",{"2":{"114":1}}],["13908",{"2":{"114":1}}],["13905",{"2":{"114":1}}],["13901",{"2":{"114":1}}],["13968",{"2":{"114":1}}],["13926",{"2":{"114":1}}],["13920",{"2":{"114":1}}],["13927",{"2":{"113":1,"114":1}}],["13810",{"2":{"114":1}}],["13819",{"2":{"114":1}}],["13886",{"2":{"114":1}}],["13885",{"2":{"114":1}}],["13872",{"2":{"114":1}}],["13877",{"2":{"114":1}}],["13838",{"2":{"114":1}}],["13831",{"2":{"114":1}}],["13832",{"2":{"114":1}}],["13830",{"2":{"114":1}}],["13826",{"2":{"114":1}}],["13821",{"2":{"114":1}}],["13823",{"2":{"114":1}}],["13850",{"2":{"114":1}}],["13890",{"2":{"133":1,"134":1}}],["13898",{"2":{"114":1}}],["13896",{"2":{"114":1}}],["13894",{"2":{"113":1,"114":1}}],["13801",{"2":{"114":1}}],["13804",{"2":{"114":1}}],["13800",{"2":{"114":1}}],["13842",{"2":{"134":1}}],["13846",{"2":{"114":1}}],["13843",{"2":{"113":1,"114":1}}],["137000",{"2":{"1204":1}}],["13706",{"2":{"114":1}}],["137kbps",{"2":{"568":1,"2268":1}}],["13789",{"2":{"134":1}}],["13724",{"2":{"114":1}}],["13722",{"2":{"114":1}}],["13720",{"2":{"114":1}}],["13728",{"2":{"114":1}}],["13799",{"2":{"114":1}}],["1375",{"2":{"1998":1}}],["13758",{"2":{"114":1}}],["13755",{"2":{"114":1}}],["13731",{"2":{"114":1}}],["13716",{"2":{"114":1}}],["13717",{"2":{"114":1}}],["13715",{"2":{"114":1}}],["13718",{"2":{"114":1}}],["13713",{"2":{"114":1}}],["13712",{"2":{"114":1}}],["13777",{"2":{"113":1,"114":1}}],["13740",{"2":{"114":1}}],["13747",{"2":{"114":1}}],["13749",{"2":{"113":1,"114":1}}],["13748",{"2":{"113":1,"114":1}}],["130",{"2":{"1521":2,"2074":1,"2899":1,"2901":1,"2906":1}}],["13056",{"2":{"114":1}}],["13098",{"2":{"114":1}}],["13089",{"2":{"114":1}}],["13081",{"2":{"107":1,"114":1}}],["13078",{"2":{"114":1}}],["13077",{"2":{"114":1}}],["13076",{"2":{"114":1}}],["13074",{"2":{"114":1}}],["13070",{"2":{"114":1}}],["13069",{"2":{"114":1}}],["13065",{"2":{"114":1}}],["13064",{"2":{"114":1}}],["13062",{"2":{"114":1}}],["13045",{"2":{"114":1}}],["13044",{"2":{"114":1}}],["13025",{"2":{"114":1}}],["13023",{"2":{"94":1}}],["13024",{"2":{"93":1}}],["13014",{"2":{"93":1}}],["13",{"2":{"70":1,"407":1,"690":1,"692":4,"1163":1,"1202":1,"1216":1,"1486":1,"1680":1,"1772":3,"1919":2,"1960":3,"2000":1,"2189":2,"2367":1,"2480":1,"2525":3,"2532":2,"2541":3,"2771":2,"2793":2}}],["17915",{"2":{"199":1}}],["17911",{"2":{"176":1}}],["17962",{"2":{"190":1,"191":1}}],["17999",{"2":{"176":1}}],["17996",{"2":{"176":1}}],["17989",{"2":{"176":1}}],["17935",{"2":{"191":1}}],["17936",{"2":{"176":1}}],["17931",{"2":{"176":1}}],["17905",{"2":{"176":1}}],["17904",{"2":{"176":2}}],["17923",{"2":{"176":1}}],["17940",{"2":{"167":1,"176":1}}],["17893",{"2":{"211":1}}],["17892",{"2":{"191":1}}],["17880",{"2":{"191":1}}],["17839",{"2":{"176":1}}],["17832",{"2":{"176":1}}],["17817",{"2":{"176":1}}],["17808",{"2":{"176":1}}],["17800",{"2":{"176":1}}],["17803",{"2":{"176":1}}],["17850",{"2":{"176":1}}],["17856",{"2":{"176":1}}],["17855",{"2":{"176":1}}],["17854",{"2":{"176":1}}],["17853",{"2":{"176":1}}],["17862",{"2":{"176":1}}],["17867",{"2":{"176":1}}],["17868",{"2":{"176":1}}],["17863",{"2":{"176":1}}],["17861",{"2":{"176":1}}],["17866",{"2":{"176":1}}],["17864",{"2":{"176":1}}],["17842",{"2":{"176":1}}],["17848",{"2":{"176":1}}],["17840",{"2":{"176":1}}],["17820",{"2":{"199":1}}],["17827",{"2":{"176":1}}],["17823",{"2":{"176":1}}],["17723",{"2":{"191":1}}],["17798",{"2":{"176":1}}],["17795",{"2":{"176":1}}],["17790",{"2":{"176":1}}],["17791",{"2":{"176":1}}],["17716",{"2":{"176":1}}],["17711",{"2":{"176":1}}],["17777",{"2":{"176":1}}],["17776",{"2":{"175":1,"176":1}}],["17732",{"2":{"176":1}}],["17735",{"2":{"176":1}}],["17734",{"2":{"176":1}}],["17786",{"2":{"176":1}}],["17755",{"2":{"176":1}}],["17760",{"2":{"176":1}}],["17748",{"2":{"176":1}}],["17745",{"2":{"176":1}}],["17740",{"2":{"176":1}}],["17706",{"2":{"191":1}}],["17702",{"2":{"176":1}}],["17707",{"2":{"176":1}}],["17708",{"2":{"176":1}}],["17703",{"2":{"176":1}}],["17693",{"2":{"176":1}}],["17695",{"2":{"176":1}}],["17663",{"2":{"191":1}}],["17661",{"2":{"176":1}}],["17669",{"2":{"176":1}}],["17678",{"2":{"176":1}}],["17675",{"2":{"176":1}}],["17679",{"2":{"176":1}}],["17638",{"2":{"176":1}}],["17632",{"2":{"176":1}}],["17639",{"2":{"176":1}}],["17684",{"2":{"176":1}}],["17658",{"2":{"176":1}}],["17656",{"2":{"176":1}}],["17652",{"2":{"176":1}}],["17655",{"2":{"176":1}}],["17654",{"2":{"176":1}}],["17651",{"2":{"176":1}}],["17650",{"2":{"176":1}}],["17645",{"2":{"176":1}}],["17647",{"2":{"176":1}}],["17643",{"2":{"176":1}}],["17615",{"2":{"176":1}}],["17611",{"2":{"176":1}}],["17612",{"2":{"176":1}}],["17613",{"2":{"175":1,"176":1}}],["17601",{"2":{"176":1}}],["17607",{"2":{"176":1}}],["17603",{"2":{"176":1}}],["17602",{"2":{"176":1}}],["175ms",{"2":{"2302":2}}],["175",{"2":{"1497":1,"2302":1}}],["17588",{"2":{"199":1}}],["17584",{"2":{"176":1}}],["17534",{"2":{"176":1}}],["17533",{"2":{"176":1}}],["17593",{"2":{"176":1}}],["17595",{"2":{"176":1}}],["17522",{"2":{"176":1}}],["17549",{"2":{"176":1}}],["17545",{"2":{"176":1}}],["17540",{"2":{"176":1}}],["17559",{"2":{"176":1}}],["17557",{"2":{"176":1}}],["17554",{"2":{"176":1}}],["17501",{"2":{"176":1}}],["17507",{"2":{"176":1}}],["17506",{"2":{"176":1}}],["17579",{"2":{"176":1}}],["17578",{"2":{"176":1}}],["17512",{"2":{"176":1}}],["17519",{"2":{"176":1}}],["17517",{"2":{"176":1}}],["17516",{"2":{"176":1}}],["17514",{"2":{"176":1}}],["174",{"2":{"251":1,"1326":2}}],["17463",{"2":{"176":1}}],["17414",{"2":{"176":1}}],["17492",{"2":{"176":1}}],["17459",{"2":{"176":2}}],["17439",{"2":{"176":1}}],["17435",{"2":{"176":1}}],["17438",{"2":{"176":2}}],["17423",{"2":{"176":2}}],["17426",{"2":{"176":1}}],["17420",{"2":{"176":1}}],["17488",{"2":{"176":1}}],["17481",{"2":{"176":1}}],["17482",{"2":{"175":2,"176":1}}],["17440",{"2":{"176":1}}],["17448",{"2":{"176":1}}],["17444",{"2":{"176":1}}],["17371",{"2":{"176":1}}],["17376",{"2":{"176":1}}],["17335",{"2":{"176":1}}],["17333",{"2":{"176":1}}],["17383",{"2":{"176":1}}],["17385",{"2":{"176":1}}],["17387",{"2":{"176":1}}],["17368",{"2":{"176":1}}],["17397",{"2":{"176":1}}],["17399",{"2":{"176":1}}],["17396",{"2":{"176":1}}],["17354",{"2":{"176":1}}],["17356",{"2":{"176":1}}],["17355",{"2":{"176":1}}],["17352",{"2":{"176":1}}],["17342",{"2":{"176":1}}],["17326",{"2":{"176":1}}],["172",{"2":{"1326":2}}],["17282",{"2":{"199":1}}],["17287",{"2":{"176":1}}],["17265",{"2":{"176":1}}],["17263",{"2":{"176":1}}],["17234",{"2":{"176":1}}],["17232",{"2":{"176":1}}],["17231",{"2":{"176":1}}],["17210",{"2":{"176":1}}],["17295",{"2":{"176":1}}],["17275",{"2":{"176":1}}],["17272",{"2":{"176":1}}],["17271",{"2":{"176":1}}],["17258",{"2":{"176":1}}],["17257",{"2":{"176":1}}],["17256",{"2":{"176":1}}],["17229",{"2":{"176":1}}],["17228",{"2":{"176":1}}],["17222",{"2":{"176":1}}],["170",{"2":{"2187":1}}],["17007",{"2":{"199":1}}],["17046",{"2":{"176":1}}],["17099",{"2":{"176":1}}],["17091",{"2":{"176":1}}],["17095",{"2":{"160":1}}],["17065",{"2":{"176":1}}],["17028",{"2":{"199":1}}],["17020",{"2":{"176":1}}],["17025",{"2":{"160":1}}],["17024",{"2":{"160":1}}],["17037",{"2":{"156":1,"160":1}}],["17189",{"2":{"191":1}}],["17184",{"2":{"176":1}}],["17129",{"2":{"191":1}}],["17174",{"2":{"176":1}}],["17178",{"2":{"176":1}}],["17176",{"2":{"175":1,"176":1}}],["17143",{"2":{"176":1}}],["17142",{"2":{"176":1}}],["17114",{"2":{"176":1}}],["17111",{"2":{"175":1,"176":1}}],["17156",{"2":{"160":1}}],["17150",{"2":{"160":1}}],["17136",{"2":{"160":1}}],["17133",{"2":{"160":1}}],["17104",{"2":{"160":1}}],["17106",{"2":{"160":1}}],["17",{"2":{"55":2,"111":2,"312":1,"396":1,"407":1,"1486":1,"1521":1,"1680":1,"1772":3,"1960":3,"2000":1,"2182":2,"2439":2,"2525":3,"2541":3,"2787":2,"2870":2,"2930":1}}],["10glbprf",{"2":{"2288":1}}],["10kohm",{"2":{"2260":1}}],["10kω",{"2":{"1294":1}}],["10ms",{"2":{"2006":1,"2901":1}}],["10µf",{"2":{"1691":1}}],["103",{"2":{"1680":1}}],["10388",{"2":{"63":1}}],["10bits",{"2":{"698":1}}],["10bit",{"2":{"698":1}}],["109",{"2":{"1680":1}}],["10904",{"2":{"114":1}}],["10997",{"2":{"74":1}}],["10976",{"2":{"77":1}}],["10973",{"2":{"72":1}}],["10974",{"2":{"65":1}}],["10972",{"2":{"65":1}}],["106",{"2":{"1680":1}}],["10638",{"2":{"65":1}}],["10622",{"2":{"63":1}}],["108",{"2":{"1521":1,"1680":1}}],["10817",{"2":{"76":1}}],["10894",{"2":{"75":1}}],["10807",{"2":{"74":1}}],["10800",{"2":{"62":1}}],["10840",{"2":{"65":1}}],["10824",{"2":{"65":1}}],["10837",{"2":{"64":1}}],["104",{"2":{"1521":2,"1680":1}}],["10419",{"2":{"92":1}}],["10418",{"2":{"77":1}}],["10417",{"2":{"65":1}}],["10400",{"2":{"74":1}}],["10437",{"2":{"73":1}}],["10438",{"2":{"65":1}}],["10439",{"2":{"63":1}}],["10420",{"2":{"65":1}}],["10491",{"2":{"64":1}}],["107",{"2":{"1680":1}}],["10730",{"2":{"74":1}}],["10735",{"2":{"64":1}}],["10767",{"2":{"65":1}}],["10716",{"2":{"65":1}}],["10750",{"2":{"64":1}}],["10706",{"2":{"63":1}}],["105",{"2":{"1521":1,"1680":1}}],["10533",{"2":{"114":1}}],["10530",{"2":{"65":1}}],["10528",{"2":{"72":1}}],["10524",{"2":{"64":1}}],["10563",{"2":{"65":1}}],["10549",{"2":{"63":1}}],["102",{"2":{"1680":1,"1919":1,"2532":1}}],["102559237",{"2":{"1356":1}}],["10259",{"2":{"63":1}}],["1024",{"2":{"745":1,"754":6,"756":3,"2006":1,"2501":2,"2747":1}}],["1023",{"2":{"687":1,"2000":1}}],["10231",{"2":{"65":1}}],["10214",{"2":{"65":1}}],["10206",{"2":{"65":1}}],["10204",{"2":{"63":1}}],["10260",{"2":{"63":1}}],["10",{"0":{"1372":1},"2":{"55":1,"73":1,"111":2,"114":1,"407":1,"559":1,"568":1,"608":1,"641":1,"687":1,"690":1,"692":4,"698":3,"724":1,"765":1,"769":1,"1358":1,"1409":1,"1478":1,"1486":1,"1521":1,"1532":2,"1533":1,"1627":1,"1661":1,"1680":4,"1768":2,"1772":3,"1919":3,"1929":3,"1930":1,"1960":3,"2000":2,"2002":1,"2012":1,"2017":1,"2034":2,"2187":2,"2189":1,"2268":1,"2271":1,"2296":4,"2320":1,"2402":1,"2439":1,"2478":2,"2480":3,"2487":1,"2495":1,"2525":3,"2532":3,"2541":3,"2750":1,"2851":1,"2870":2,"2873":2,"2901":1,"2929":1}}],["10101100",{"2":{"2288":1}}],["10101000",{"2":{"2288":1}}],["10103",{"2":{"50":1}}],["101",{"2":{"207":1,"1521":2,"1680":1,"2000":1}}],["10174",{"2":{"160":1}}],["10171",{"2":{"93":1}}],["10179",{"2":{"63":1}}],["10183",{"2":{"63":1}}],["10127",{"2":{"50":1}}],["10129",{"2":{"50":1}}],["10169",{"2":{"49":1}}],["100ms",{"2":{"2785":2}}],["100ma",{"2":{"134":1}}],["100644",{"2":{"2403":1}}],["100k",{"2":{"1362":1}}],["10088",{"2":{"62":1,"114":1}}],["1000ms",{"2":{"1466":1,"1680":1}}],["1000",{"2":{"120":1,"1445":1,"1452":1,"1466":1,"1804":1,"1930":1,"1933":2,"1988":1,"2010":2,"2013":1,"2028":1,"2034":2,"2875":1}}],["10008",{"2":{"50":1}}],["10000000",{"2":{"2289":3}}],["1000000",{"2":{"2006":1}}],["100000l",{"2":{"559":2}}],["100000",{"2":{"11":1,"766":1,"1362":1}}],["10053",{"2":{"50":1}}],["10040",{"2":{"50":1}}],["100",{"0":{"2300":1,"2307":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"25":2,"273":1,"562":2,"568":1,"717":2,"724":2,"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1288":1,"1437":1,"1482":1,"1541":1,"1544":1,"1546":1,"1675":1,"1680":1,"1930":1,"1933":1,"2000":3,"2012":1,"2014":2,"2034":2,"2187":2,"2268":1,"2307":1,"2403":7,"2439":2,"2495":3,"2608":2,"2669":1,"2750":2,"2785":1,"2851":2,"2876":2,"2900":2}}],["16bit",{"2":{"2885":1}}],["16bpp",{"2":{"2749":3}}],["16mb",{"2":{"2766":1}}],["16mhz",{"2":{"2477":1,"2492":2}}],["16ms",{"2":{"1846":1,"2069":1}}],["16t",{"2":{"2245":1}}],["16th",{"2":{"1487":1}}],["16k",{"2":{"922":2,"956":2,"990":2,"1024":2,"1058":2}}],["16kb",{"2":{"510":1}}],["16x2",{"2":{"1691":1,"1706":2}}],["16x",{"2":{"1678":1,"1679":1}}],["16x12",{"2":{"1211":1}}],["16x9",{"2":{"884":1}}],["16x8",{"2":{"852":1,"2750":1}}],["16c0",{"2":{"686":3,"2493":1,"2494":2}}],["16411",{"2":{"1326":1}}],["16436",{"2":{"176":1}}],["16438",{"2":{"160":1}}],["16423",{"2":{"160":1}}],["16441",{"2":{"160":1}}],["169",{"2":{"1326":2}}],["16992",{"2":{"176":1}}],["16996",{"2":{"176":1}}],["16990",{"2":{"176":1}}],["16997",{"2":{"160":1}}],["16949",{"2":{"176":1}}],["16941",{"2":{"160":1}}],["16932",{"2":{"176":1}}],["16939",{"2":{"160":1}}],["16974",{"2":{"160":1}}],["16958",{"2":{"160":1}}],["16951",{"2":{"160":2}}],["16957",{"2":{"160":1}}],["16915",{"2":{"160":1}}],["16961",{"2":{"160":1}}],["16960",{"2":{"160":1}}],["16926",{"2":{"160":1}}],["16909",{"2":{"160":1}}],["16810",{"2":{"176":1}}],["16800",{"2":{"176":1}}],["16806",{"2":{"160":1}}],["16879",{"2":{"176":1}}],["16875",{"2":{"160":1}}],["16874",{"2":{"160":1}}],["16871",{"2":{"160":1}}],["16865",{"2":{"160":1}}],["16863",{"2":{"160":1}}],["16869",{"2":{"160":1}}],["16827",{"2":{"160":1}}],["16892",{"2":{"160":1}}],["16891",{"2":{"160":1}}],["16859",{"2":{"160":2}}],["16843",{"2":{"160":1}}],["16778",{"2":{"176":1}}],["16770",{"2":{"160":1}}],["16773",{"2":{"160":1}}],["16716",{"2":{"160":1}}],["16718",{"2":{"160":1}}],["16705",{"2":{"160":1}}],["16706",{"2":{"160":1}}],["16702",{"2":{"160":1}}],["16723",{"2":{"160":1}}],["16728",{"2":{"160":1}}],["16782",{"2":{"160":1}}],["16785",{"2":{"160":1}}],["16783",{"2":{"160":1}}],["16738",{"2":{"160":1}}],["16737",{"2":{"160":1}}],["16732",{"2":{"160":1}}],["16689",{"2":{"236":1}}],["16681",{"2":{"160":1}}],["16699",{"2":{"199":1}}],["16669",{"2":{"176":1}}],["16668",{"2":{"173":1,"176":1}}],["16667",{"2":{"160":1}}],["16620",{"2":{"160":1}}],["16621",{"2":{"160":1}}],["16617",{"2":{"160":1}}],["16614",{"2":{"160":1}}],["16611",{"2":{"160":1}}],["16630",{"2":{"160":1}}],["16637",{"2":{"160":1}}],["16635",{"2":{"160":1}}],["16640",{"2":{"160":1}}],["16649",{"2":{"160":1}}],["16647",{"2":{"160":1}}],["16600",{"2":{"160":1}}],["16584",{"2":{"176":1}}],["16588",{"2":{"160":1}}],["16597",{"2":{"160":1}}],["16596",{"2":{"160":1}}],["16593",{"2":{"160":1}}],["16559",{"2":{"160":1}}],["16523",{"2":{"160":1}}],["16525",{"2":{"160":1}}],["16505",{"2":{"160":1}}],["16516",{"2":{"160":1}}],["16518",{"2":{"160":1}}],["16561",{"2":{"160":1}}],["16543",{"2":{"160":1}}],["16303",{"2":{"1326":1}}],["16300",{"2":{"149":1}}],["16384",{"2":{"754":2}}],["16384u",{"2":{"716":1}}],["16394",{"2":{"176":1}}],["16336",{"2":{"176":1}}],["16339",{"2":{"160":1}}],["16337",{"2":{"160":1}}],["16331",{"2":{"160":1}}],["16359",{"2":{"149":1}}],["16358",{"2":{"149":1}}],["16357",{"2":{"149":1}}],["16348",{"2":{"149":1}}],["16315",{"2":{"160":1}}],["16316",{"2":{"149":1}}],["16312",{"2":{"149":1}}],["16371",{"2":{"175":2,"176":1}}],["16370",{"2":{"160":1}}],["16378",{"2":{"149":1}}],["16376",{"2":{"149":1}}],["162",{"2":{"1244":1}}],["16269",{"2":{"160":1}}],["16266",{"2":{"160":1}}],["16268",{"2":{"149":1}}],["16292",{"2":{"149":1}}],["16290",{"2":{"149":1}}],["16276",{"2":{"149":1}}],["16277",{"2":{"149":1}}],["16230",{"2":{"149":1}}],["16208",{"2":{"149":1}}],["16287",{"2":{"176":1}}],["16282",{"2":{"149":1}}],["16280",{"2":{"149":1}}],["16257",{"2":{"160":1}}],["16251",{"2":{"160":1}}],["16256",{"2":{"149":1}}],["16252",{"2":{"149":1}}],["16254",{"2":{"149":1}}],["16215",{"2":{"149":1}}],["16217",{"2":{"149":1}}],["16228",{"2":{"149":1}}],["16222",{"2":{"149":1}}],["16225",{"2":{"149":1}}],["16221",{"2":{"149":1}}],["16220",{"2":{"149":2}}],["16188",{"2":{"149":1}}],["16181",{"2":{"149":1}}],["16185",{"2":{"149":1}}],["16163",{"2":{"176":1}}],["16168",{"2":{"149":1}}],["16167",{"2":{"149":1}}],["16166",{"2":{"149":1}}],["16162",{"2":{"149":1}}],["16157",{"2":{"149":1}}],["16135",{"2":{"149":1}}],["16134",{"2":{"149":1}}],["16128",{"2":{"149":1}}],["16127",{"2":{"149":1}}],["16114",{"2":{"160":1}}],["16116",{"2":{"149":1}}],["16113",{"2":{"149":1}}],["16112",{"2":{"149":1}}],["16107",{"2":{"149":1}}],["16109",{"2":{"149":1}}],["16108",{"2":{"149":1}}],["16102",{"2":{"149":1}}],["16100",{"2":{"149":1}}],["16190",{"2":{"149":1}}],["16038",{"2":{"160":1}}],["16032",{"2":{"149":1}}],["16039",{"2":{"149":1}}],["16000",{"2":{"2014":1}}],["16000000",{"2":{"571":1}}],["1600",{"2":{"2010":2,"2014":1}}],["16004",{"2":{"160":1}}],["16001",{"2":{"149":1}}],["16007",{"2":{"149":1}}],["16002",{"2":{"149":1}}],["16095",{"2":{"160":1}}],["16099",{"2":{"149":1}}],["16096",{"2":{"149":1}}],["16091",{"2":{"149":1}}],["16084",{"2":{"160":1}}],["16086",{"2":{"160":1}}],["16089",{"2":{"149":1}}],["16082",{"2":{"149":1}}],["16081",{"2":{"149":1}}],["16080",{"2":{"149":1}}],["16087",{"2":{"149":1}}],["16076",{"2":{"188":1,"191":1}}],["16075",{"2":{"149":1}}],["16072",{"2":{"149":1}}],["16070",{"2":{"149":1}}],["16054",{"2":{"149":1}}],["16059",{"2":{"149":1}}],["16053",{"2":{"149":1}}],["16050",{"2":{"149":1}}],["16051",{"2":{"149":1}}],["16044",{"2":{"149":1}}],["16041",{"2":{"149":1}}],["16040",{"2":{"149":1}}],["16068",{"2":{"160":1}}],["16067",{"2":{"149":1}}],["16063",{"2":{"149":1}}],["1602a",{"2":{"1691":1}}],["16027",{"2":{"149":1}}],["16026",{"2":{"149":1}}],["16028",{"2":{"149":1}}],["16025",{"2":{"149":1}}],["16023",{"2":{"149":1}}],["16020",{"2":{"149":1}}],["16017",{"2":{"149":1}}],["16016",{"2":{"149":1}}],["16015",{"2":{"149":1}}],["16",{"0":{"11":1,"166":1,"1365":1},"2":{"11":2,"63":1,"134":1,"149":1,"166":2,"176":1,"236":1,"407":1,"608":1,"658":2,"692":4,"731":2,"785":1,"791":1,"919":1,"922":2,"954":1,"956":2,"959":1,"990":2,"1024":2,"1058":2,"1090":1,"1124":1,"1158":1,"1296":1,"1297":2,"1365":5,"1413":1,"1417":1,"1486":1,"1521":1,"1526":2,"1532":2,"1533":1,"1603":1,"1680":1,"1693":1,"1696":2,"1768":2,"1772":3,"1785":1,"1840":2,"1846":3,"1919":2,"1929":1,"1930":2,"1931":4,"1933":3,"1942":1,"1946":1,"1960":3,"2000":1,"2060":2,"2064":1,"2069":5,"2233":1,"2243":1,"2245":1,"2282":1,"2322":1,"2376":1,"2478":1,"2480":1,"2501":17,"2525":3,"2532":2,"2541":3,"2547":1,"2552":1,"2560":1,"2562":1,"2646":1,"2748":3,"2749":2,"2750":1,"2769":1,"2864":4,"2871":6,"2885":1,"2941":1}}],["1",{"0":{"298":3,"401":1,"594":1,"1294":1,"2307":1,"2462":1,"2594":1,"2612":1},"2":{"10":1,"14":1,"45":3,"90":2,"102":1,"105":2,"114":5,"120":2,"134":1,"149":1,"160":1,"168":1,"169":1,"172":1,"176":1,"184":1,"191":2,"195":1,"197":2,"199":2,"201":4,"211":6,"222":1,"231":1,"236":1,"247":1,"249":3,"259":1,"266":14,"272":2,"294":3,"298":3,"307":1,"308":2,"335":1,"342":1,"348":2,"369":4,"373":3,"406":2,"520":1,"530":1,"531":1,"532":2,"540":1,"556":1,"568":2,"586":1,"587":6,"591":6,"630":1,"655":1,"676":1,"690":1,"692":22,"693":1,"696":4,"698":3,"713":1,"716":1,"718":1,"728":1,"745":1,"746":2,"752":1,"763":1,"765":1,"825":2,"854":2,"856":1,"857":4,"886":2,"890":2,"918":4,"921":2,"922":2,"953":2,"955":2,"956":2,"987":2,"989":2,"990":2,"1021":3,"1023":1,"1024":2,"1055":2,"1057":1,"1058":2,"1089":4,"1092":4,"1123":4,"1126":4,"1157":2,"1159":1,"1160":4,"1194":1,"1204":1,"1213":2,"1249":1,"1282":1,"1283":1,"1292":1,"1300":1,"1313":1,"1326":5,"1354":2,"1365":3,"1374":1,"1387":1,"1392":1,"1402":1,"1406":4,"1413":10,"1417":4,"1425":1,"1442":1,"1445":1,"1452":1,"1468":1,"1477":2,"1480":2,"1486":1,"1487":5,"1508":1,"1516":2,"1550":2,"1559":16,"1560":7,"1583":1,"1585":1,"1594":1,"1597":1,"1598":2,"1606":1,"1619":2,"1620":1,"1621":1,"1622":3,"1633":1,"1638":26,"1641":3,"1654":2,"1655":7,"1658":3,"1661":1,"1662":2,"1664":1,"1666":1,"1672":1,"1675":2,"1678":3,"1679":5,"1680":1,"1681":1,"1689":1,"1696":2,"1706":1,"1736":2,"1749":1,"1751":1,"1769":5,"1771":2,"1772":3,"1775":2,"1791":2,"1793":2,"1798":2,"1840":6,"1843":1,"1844":2,"1860":1,"1919":32,"1927":4,"1929":2,"1930":1,"1931":9,"1933":4,"1943":1,"1947":3,"1948":2,"1960":3,"1983":3,"1985":13,"1988":4,"1989":1,"1990":2,"2006":1,"2011":1,"2014":5,"2016":1,"2017":5,"2021":1,"2034":1,"2043":2,"2044":1,"2052":4,"2060":6,"2063":1,"2066":2,"2073":1,"2086":1,"2167":1,"2183":7,"2185":3,"2189":1,"2190":1,"2191":6,"2198":2,"2206":1,"2207":1,"2237":1,"2245":1,"2247":1,"2255":1,"2268":2,"2283":1,"2288":1,"2289":4,"2291":1,"2293":3,"2294":2,"2296":16,"2298":1,"2308":4,"2309":1,"2310":1,"2311":1,"2312":1,"2315":1,"2320":1,"2324":1,"2358":1,"2367":1,"2370":1,"2374":1,"2397":1,"2403":13,"2417":1,"2435":1,"2439":8,"2440":8,"2459":12,"2461":1,"2501":3,"2503":2,"2508":2,"2511":2,"2515":9,"2521":1,"2523":4,"2525":3,"2528":1,"2532":32,"2533":4,"2541":3,"2547":2,"2548":7,"2553":1,"2559":1,"2560":1,"2576":1,"2625":1,"2627":8,"2645":2,"2662":1,"2669":1,"2684":1,"2687":1,"2688":1,"2707":2,"2710":1,"2714":16,"2721":1,"2744":1,"2747":1,"2749":11,"2758":1,"2761":4,"2765":1,"2767":1,"2769":3,"2770":2,"2773":2,"2788":10,"2789":9,"2792":1,"2818":1,"2833":1,"2849":1,"2850":2,"2856":1,"2860":1,"2862":3,"2864":1,"2870":2,"2871":1,"2872":2,"2873":1,"2875":3,"2899":1,"2901":1,"2907":1,"2908":1,"2909":1,"2915":2,"2929":1,"2932":1,"2942":1}}],["=+",{"2":{"1498":1,"1500":1,"1509":1}}],["=>",{"2":{"196":4,"1801":4,"2000":1}}],["=helix",{"2":{"55":4}}],["=======",{"2":{"2627":2}}],["==========================",{"2":{"717":1}}],["=================================================",{"2":{"717":1}}],["============================",{"2":{"717":1}}],["=====",{"2":{"717":1}}],["==",{"2":{"13":1,"90":4,"194":1,"431":1,"543":2,"559":1,"717":1,"1329":2,"1375":2,"1377":1,"1589":1,"1606":1,"1619":1,"1657":1,"1662":4,"1751":1,"1941":1,"2024":1,"2031":1,"2043":2,"2052":5,"2074":2,"2165":1,"2279":1,"2309":1,"2310":3,"2311":2,"2312":3,"2374":4,"2645":1,"2750":1,"2760":1,"2761":1,"2766":1,"2767":1,"2769":1,"2771":1,"2915":2,"2916":3,"2920":1}}],["=",{"0":{"156":1,"167":1,"195":1,"245":1},"2":{"10":1,"28":1,"49":1,"87":1,"88":3,"104":3,"118":9,"119":1,"127":3,"134":1,"166":1,"176":4,"199":1,"201":1,"202":1,"232":1,"234":7,"235":1,"247":1,"266":2,"272":2,"285":1,"306":1,"307":6,"315":1,"324":2,"325":4,"328":1,"348":2,"406":1,"431":3,"473":1,"474":1,"495":2,"532":1,"537":1,"540":1,"541":1,"542":2,"565":2,"567":2,"571":5,"573":2,"587":3,"590":1,"591":2,"614":1,"622":2,"623":3,"627":1,"645":4,"653":1,"654":1,"655":1,"688":1,"700":1,"712":1,"713":14,"717":2,"718":4,"722":1,"724":1,"727":1,"731":1,"743":5,"750":4,"752":1,"755":1,"762":1,"798":1,"802":2,"824":1,"828":2,"853":1,"860":2,"885":1,"890":2,"917":1,"925":2,"952":1,"959":2,"986":1,"993":2,"1020":1,"1027":2,"1054":1,"1061":2,"1088":1,"1095":2,"1122":1,"1129":2,"1156":1,"1163":2,"1192":1,"1195":2,"1198":2,"1212":1,"1216":2,"1243":1,"1264":1,"1281":1,"1285":4,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1319":1,"1327":1,"1366":1,"1378":3,"1387":1,"1402":1,"1410":1,"1411":1,"1413":4,"1425":4,"1428":2,"1430":1,"1436":1,"1441":1,"1442":1,"1443":4,"1450":6,"1454":2,"1466":6,"1467":1,"1471":1,"1472":2,"1474":1,"1475":1,"1477":2,"1479":1,"1482":1,"1485":1,"1486":1,"1494":1,"1520":1,"1521":1,"1527":8,"1529":2,"1536":1,"1548":1,"1554":1,"1555":1,"1556":1,"1557":1,"1583":1,"1588":1,"1589":1,"1596":4,"1597":2,"1598":3,"1599":14,"1606":4,"1611":3,"1612":3,"1617":1,"1620":1,"1621":2,"1640":1,"1642":2,"1655":1,"1657":1,"1659":1,"1661":6,"1662":1,"1672":3,"1692":1,"1696":1,"1733":1,"1738":1,"1744":2,"1746":7,"1747":7,"1749":11,"1756":1,"1760":1,"1767":2,"1770":1,"1771":7,"1793":1,"1794":5,"1795":1,"1800":1,"1807":6,"1839":1,"1840":3,"1843":2,"1844":5,"1845":1,"1846":2,"1913":1,"1918":2,"1926":1,"1933":3,"1938":1,"1939":3,"1940":1,"1941":5,"1942":1,"1947":4,"1948":4,"1951":1,"1956":2,"1959":1,"1982":3,"1983":4,"1984":3,"1985":13,"1994":1,"1996":1,"1998":1,"1999":1,"2000":1,"2001":1,"2005":2,"2010":1,"2011":1,"2012":1,"2013":1,"2014":5,"2015":1,"2023":6,"2024":7,"2025":14,"2027":7,"2028":4,"2042":1,"2043":1,"2044":3,"2048":1,"2052":14,"2059":1,"2060":3,"2063":2,"2066":5,"2068":1,"2069":2,"2073":7,"2074":6,"2157":1,"2160":1,"2162":1,"2165":1,"2170":1,"2174":1,"2179":3,"2187":7,"2189":6,"2191":4,"2210":4,"2213":1,"2243":1,"2251":1,"2261":2,"2270":7,"2277":2,"2278":1,"2279":5,"2286":2,"2287":1,"2288":5,"2289":5,"2290":2,"2291":1,"2295":1,"2296":1,"2298":1,"2302":1,"2305":4,"2307":2,"2308":4,"2309":13,"2310":11,"2311":3,"2312":7,"2313":1,"2319":1,"2322":6,"2323":5,"2367":2,"2369":3,"2371":1,"2374":13,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2411":1,"2412":2,"2440":3,"2445":1,"2495":1,"2505":1,"2511":2,"2515":3,"2548":6,"2552":1,"2553":1,"2554":1,"2578":1,"2667":3,"2680":1,"2684":2,"2696":1,"2720":1,"2721":3,"2746":1,"2749":12,"2750":31,"2752":3,"2754":1,"2760":6,"2761":6,"2762":6,"2763":2,"2764":2,"2767":6,"2768":6,"2769":14,"2770":6,"2771":6,"2772":6,"2773":9,"2779":2,"2785":1,"2849":1,"2850":1,"2860":1,"2865":1,"2882":9,"2884":1,"2886":1,"2900":4,"2901":6,"2912":1,"2915":1,"2931":2,"2941":2}}],["2d",{"2":{"2882":1}}],["2bpp",{"2":{"2769":2}}],["2c1219002b135937334d4e00",{"2":{"2501":1}}],["2p4g",{"2":{"2370":1,"2521":1}}],["2p4ghz",{"2":{"2370":1,"2521":1}}],["2t",{"2":{"2245":1}}],["2=4",{"2":{"1948":1}}],["2ms",{"2":{"1947":1}}],["2>",{"2":{"1758":1,"2917":1}}],["2x2",{"2":{"2459":1}}],["2x1800",{"2":{"2407":1}}],["2x",{"2":{"1678":1,"1679":1,"2006":2,"2257":2}}],["2x4",{"2":{"114":1,"211":1}}],["2v",{"2":{"1673":1}}],["2u",{"2":{"1326":2,"2792":1}}],["2kro",{"2":{"2832":1}}],["2kω",{"2":{"1194":1}}],["2k1",{"2":{"921":1,"955":1,"989":1}}],["2k",{"2":{"854":2,"856":1,"857":6,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1089":2,"1092":6,"1123":2,"1126":6,"1157":2,"1160":6,"2006":1,"2260":1}}],["2key",{"2":{"143":2}}],["2️⃣",{"2":{"713":3}}],["2e3c",{"2":{"686":1,"2391":1}}],["2a03",{"2":{"686":2}}],["2ffb",{"2":{"686":1,"2491":1}}],["2ff9",{"2":{"686":1,"2491":1}}],["2ff4",{"2":{"686":1,"2491":1,"2605":1,"2608":2}}],["2ff3",{"2":{"686":1,"2491":1}}],["2ff0",{"2":{"686":1}}],["2fef",{"2":{"686":1}}],["23x",{"2":{"2682":1}}],["239",{"2":{"1941":1,"2279":1,"2750":6}}],["239a",{"2":{"686":3,"2492":3}}],["23994",{"2":{"294":1}}],["23999",{"2":{"277":1}}],["23953",{"2":{"285":1}}],["23954",{"2":{"277":1}}],["23945",{"2":{"277":1}}],["23967",{"2":{"277":1}}],["23963",{"2":{"277":1}}],["23987",{"2":{"277":1}}],["23985",{"2":{"277":1}}],["23983",{"2":{"277":1}}],["23981",{"2":{"277":1}}],["23980",{"2":{"277":1}}],["23923",{"2":{"277":1}}],["23925",{"2":{"277":1}}],["23924",{"2":{"277":1}}],["23917",{"2":{"277":1}}],["23911",{"2":{"277":1}}],["23979",{"2":{"277":1}}],["23975",{"2":{"277":1}}],["23901",{"2":{"277":1}}],["23838",{"2":{"285":1}}],["23857",{"2":{"277":1}}],["23818",{"2":{"277":1}}],["23896",{"2":{"277":1}}],["23894",{"2":{"277":1}}],["23884",{"2":{"308":1}}],["23887",{"2":{"285":1}}],["23883",{"2":{"277":1}}],["23885",{"2":{"277":1}}],["23881",{"2":{"277":1}}],["2370",{"2":{"432":2}}],["23709",{"2":{"266":1}}],["23796",{"2":{"277":1}}],["23793",{"2":{"266":1}}],["23792",{"2":{"266":1}}],["23790",{"2":{"266":1}}],["23782",{"2":{"277":1}}],["23789",{"2":{"266":1}}],["23788",{"2":{"266":1}}],["23787",{"2":{"266":1}}],["23786",{"2":{"266":1}}],["23785",{"2":{"266":1}}],["23784",{"2":{"266":1}}],["23783",{"2":{"266":1}}],["23781",{"2":{"266":1}}],["23780",{"2":{"266":1}}],["23779",{"2":{"266":1}}],["23778",{"2":{"266":1}}],["23774",{"2":{"266":1}}],["23773",{"2":{"266":1}}],["23772",{"2":{"266":1}}],["23771",{"2":{"266":1}}],["23770",{"2":{"266":1}}],["23765",{"2":{"277":1}}],["23769",{"2":{"266":1}}],["23768",{"2":{"266":1}}],["23767",{"2":{"266":1}}],["23764",{"2":{"266":1}}],["23763",{"2":{"266":1}}],["23762",{"2":{"266":1}}],["23760",{"2":{"266":1}}],["23759",{"2":{"266":1}}],["23758",{"2":{"266":1}}],["23757",{"2":{"266":1}}],["23754",{"2":{"266":1}}],["23751",{"2":{"266":1}}],["23750",{"2":{"266":1}}],["23749",{"2":{"266":1}}],["23747",{"2":{"266":1}}],["23746",{"2":{"266":1}}],["23745",{"2":{"266":1}}],["23719",{"2":{"266":1}}],["23716",{"2":{"266":1}}],["23714",{"2":{"266":1}}],["23712",{"2":{"266":1}}],["23726",{"2":{"266":1}}],["23266",{"2":{"266":1}}],["23264",{"2":{"266":1}}],["23222",{"2":{"266":1}}],["23221",{"2":{"266":1}}],["23206",{"2":{"266":1}}],["23202",{"2":{"266":1}}],["23292",{"2":{"266":1}}],["23299",{"2":{"266":1}}],["23294",{"2":{"266":1}}],["23293",{"2":{"266":1}}],["23297",{"2":{"266":1}}],["23281",{"2":{"317":1}}],["23289",{"2":{"266":1}}],["23288",{"2":{"266":1}}],["23287",{"2":{"266":1}}],["23286",{"2":{"266":1}}],["23285",{"2":{"266":1}}],["23277",{"2":{"266":1}}],["23276",{"2":{"266":1}}],["23273",{"2":{"266":1}}],["23259",{"2":{"266":1}}],["23246",{"2":{"266":1}}],["23248",{"2":{"266":1}}],["23247",{"2":{"266":1}}],["23236",{"2":{"266":1}}],["23217",{"2":{"266":1}}],["23641",{"2":{"294":1}}],["23642",{"2":{"277":1}}],["23679",{"2":{"285":1}}],["23673",{"2":{"266":1}}],["23699",{"2":{"285":1}}],["23692",{"2":{"277":1}}],["23694",{"2":{"266":1}}],["23697",{"2":{"266":1}}],["23691",{"2":{"266":1}}],["23685",{"2":{"266":1}}],["23668",{"2":{"266":1}}],["23663",{"2":{"266":1}}],["23630",{"2":{"277":1}}],["23635",{"2":{"266":1}}],["23633",{"2":{"266":1}}],["23627",{"2":{"266":1}}],["23624",{"2":{"266":1}}],["23622",{"2":{"266":1}}],["23616",{"2":{"266":1}}],["23614",{"2":{"266":1}}],["23612",{"2":{"266":1}}],["23609",{"2":{"266":1}}],["23607",{"2":{"266":1}}],["23606",{"2":{"266":1}}],["23601",{"2":{"266":1}}],["23650",{"2":{"277":1}}],["23655",{"2":{"266":1}}],["23652",{"2":{"266":1}}],["23658",{"2":{"266":1}}],["23653",{"2":{"266":1}}],["23657",{"2":{"266":1}}],["23656",{"2":{"266":1}}],["23598",{"2":{"266":1}}],["23599",{"2":{"266":1}}],["23593",{"2":{"266":1}}],["23591",{"2":{"266":1}}],["23590",{"2":{"266":1}}],["23589",{"2":{"266":1}}],["23588",{"2":{"266":1}}],["23585",{"2":{"266":1}}],["23576",{"2":{"266":1}}],["23573",{"2":{"266":1}}],["23569",{"2":{"266":1}}],["23567",{"2":{"266":1}}],["23566",{"2":{"266":1}}],["23565",{"2":{"266":1}}],["23564",{"2":{"266":1}}],["23562",{"2":{"266":1}}],["23558",{"2":{"308":1}}],["23557",{"2":{"266":1}}],["23556",{"2":{"266":1}}],["23547",{"2":{"266":1}}],["23542",{"2":{"266":1}}],["23541",{"2":{"266":1}}],["23540",{"2":{"266":1}}],["23534",{"2":{"266":1}}],["23533",{"2":{"266":1}}],["23532",{"2":{"266":1}}],["23530",{"2":{"266":1}}],["23520",{"2":{"277":1}}],["23529",{"2":{"266":1}}],["23525",{"2":{"266":1}}],["23524",{"2":{"266":1}}],["23522",{"2":{"266":1}}],["23516",{"2":{"266":1}}],["23515",{"2":{"266":1}}],["23514",{"2":{"266":1}}],["23512",{"2":{"266":1}}],["23511",{"2":{"266":1}}],["23445",{"2":{"285":1}}],["23448",{"2":{"266":1}}],["23488",{"2":{"266":1}}],["23486",{"2":{"266":1}}],["23462",{"2":{"266":1}}],["23461",{"2":{"266":1}}],["23460",{"2":{"266":1}}],["23463",{"2":{"266":1}}],["23451",{"2":{"285":1}}],["23453",{"2":{"266":1}}],["23452",{"2":{"266":1}}],["23455",{"2":{"266":1}}],["2341",{"2":{"686":2,"2492":2}}],["23419",{"2":{"266":1}}],["23418",{"2":{"266":1}}],["23412",{"2":{"266":1}}],["23406",{"2":{"266":1}}],["23403",{"2":{"266":1}}],["23402",{"2":{"266":1}}],["23405",{"2":{"266":1}}],["23407",{"2":{"266":1}}],["23430",{"2":{"285":1}}],["23437",{"2":{"277":1}}],["23439",{"2":{"277":1}}],["23436",{"2":{"266":1}}],["23434",{"2":{"266":1}}],["23432",{"2":{"266":1}}],["23425",{"2":{"266":1}}],["23424",{"2":{"266":1}}],["23423",{"2":{"266":1}}],["23421",{"2":{"266":1}}],["23426",{"2":{"266":1}}],["23422",{"2":{"266":1}}],["23389",{"2":{"328":1}}],["23384",{"2":{"266":1}}],["23355",{"2":{"277":1}}],["23357",{"2":{"266":1}}],["23341",{"2":{"277":1}}],["23346",{"2":{"266":1}}],["23335",{"2":{"266":1}}],["23330",{"2":{"266":1}}],["23399",{"2":{"266":1}}],["23396",{"2":{"266":1}}],["23395",{"2":{"266":1}}],["23397",{"2":{"266":1}}],["23394",{"2":{"266":1}}],["23393",{"2":{"266":1}}],["23390",{"2":{"266":1}}],["23379",{"2":{"266":1}}],["23378",{"2":{"266":1}}],["23377",{"2":{"266":1}}],["23376",{"2":{"266":1}}],["23373",{"2":{"266":1}}],["23371",{"2":{"266":1}}],["23375",{"2":{"266":1}}],["23367",{"2":{"266":1}}],["23361",{"2":{"266":1}}],["23360",{"2":{"266":1}}],["23311",{"2":{"266":1}}],["23309",{"2":{"266":1}}],["23307",{"2":{"266":1}}],["23305",{"2":{"266":1}}],["23302",{"2":{"266":1}}],["23329",{"2":{"266":1}}],["23324",{"2":{"266":1}}],["23321",{"2":{"266":1}}],["23322",{"2":{"266":1}}],["23188",{"2":{"266":1}}],["23185",{"2":{"266":1}}],["23179",{"2":{"266":1}}],["2316",{"2":{"2622":1}}],["23169",{"2":{"266":1}}],["23162",{"2":{"266":1}}],["23144",{"2":{"266":1}}],["23143",{"2":{"249":1}}],["23111",{"2":{"266":1}}],["23116",{"2":{"249":1}}],["23112",{"2":{"249":1}}],["23110",{"2":{"249":1}}],["23119",{"2":{"249":1}}],["23155",{"2":{"249":1}}],["23129",{"2":{"249":1}}],["23127",{"2":{"249":1}}],["23121",{"2":{"249":1}}],["23128",{"2":{"249":1}}],["23106",{"2":{"249":1}}],["23104",{"2":{"249":1}}],["23102",{"2":{"249":1}}],["23109",{"2":{"249":1}}],["23108",{"2":{"249":1}}],["23",{"0":{"286":1},"1":{"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1},"2":{"249":1,"407":2,"613":1,"922":1,"990":1,"1058":1,"1092":1,"1126":1,"1160":1,"1486":1,"1521":3,"1680":1,"1772":3,"1960":3,"2000":22,"2525":3,"2541":3,"2767":1}}],["23038",{"2":{"266":1}}],["23037",{"2":{"249":1}}],["230400",{"2":{"1204":1}}],["23048",{"2":{"249":1}}],["23047",{"2":{"249":1}}],["23049",{"2":{"249":1}}],["23097",{"2":{"277":1}}],["23091",{"2":{"277":1}}],["23096",{"2":{"249":1}}],["23095",{"2":{"249":1}}],["23094",{"2":{"249":1}}],["23092",{"2":{"249":1}}],["23093",{"2":{"249":1}}],["23084",{"2":{"249":1}}],["23083",{"2":{"249":1}}],["23081",{"2":{"249":1}}],["23085",{"2":{"249":1}}],["23076",{"2":{"266":1}}],["23077",{"2":{"249":1}}],["23074",{"2":{"249":1}}],["23073",{"2":{"249":1}}],["23065",{"2":{"294":1}}],["23063",{"2":{"249":1}}],["23067",{"2":{"249":1}}],["23029",{"2":{"249":1}}],["23000",{"2":{"249":1}}],["23002",{"2":{"249":1}}],["23055",{"2":{"266":1}}],["23059",{"2":{"249":1}}],["23056",{"2":{"249":1}}],["23058",{"2":{"249":1}}],["23052",{"2":{"249":1}}],["24bpp",{"2":{"2749":1}}],["24lc256",{"2":{"746":2}}],["24lc128",{"2":{"746":3}}],["24lc64",{"2":{"746":3}}],["24lc32a",{"2":{"176":1,"746":3}}],["24xx",{"0":{"2458":1},"2":{"743":1,"746":1}}],["24989",{"2":{"333":1}}],["24961",{"2":{"328":1}}],["24997",{"2":{"308":1}}],["24990",{"2":{"308":1}}],["24932",{"2":{"308":1}}],["24938",{"2":{"294":1}}],["24952",{"2":{"308":1}}],["24928",{"2":{"294":1}}],["24915",{"2":{"294":1}}],["24912",{"2":{"294":1}}],["24913",{"2":{"294":1}}],["24903",{"2":{"294":1}}],["248",{"2":{"1350":1,"2411":1}}],["24880",{"2":{"294":1}}],["24878",{"2":{"294":1}}],["24877",{"2":{"294":1}}],["24879",{"2":{"294":1}}],["24868",{"2":{"294":1}}],["24807",{"2":{"294":1}}],["24803",{"2":{"294":1}}],["24802",{"2":{"294":1}}],["24800",{"2":{"294":1}}],["24857",{"2":{"294":1}}],["24855",{"2":{"294":1}}],["24850",{"2":{"294":1}}],["24840",{"2":{"294":1}}],["24844",{"2":{"294":1}}],["24842",{"2":{"294":1}}],["24845",{"2":{"294":1}}],["24848",{"2":{"294":1}}],["24846",{"2":{"294":1}}],["24836",{"2":{"294":1}}],["24838",{"2":{"294":1}}],["24835",{"2":{"294":1}}],["24839",{"2":{"294":1}}],["24837",{"2":{"294":1}}],["24834",{"2":{"294":1}}],["24832",{"2":{"294":1}}],["24830",{"2":{"294":1}}],["24817",{"2":{"294":1}}],["247",{"2":{"1941":1,"2279":1}}],["24776",{"2":{"333":1}}],["24772",{"2":{"294":1}}],["24764",{"2":{"308":1}}],["24723",{"2":{"308":1}}],["24724",{"2":{"294":1}}],["24785",{"2":{"308":1}}],["24787",{"2":{"308":1}}],["24786",{"2":{"294":1}}],["24784",{"2":{"294":1}}],["24757",{"2":{"294":1}}],["24749",{"2":{"294":1}}],["24748",{"2":{"294":1}}],["24719",{"2":{"328":1}}],["24714",{"2":{"294":1}}],["24715",{"2":{"294":1}}],["24705",{"2":{"294":1}}],["24701",{"2":{"294":1}}],["24707",{"2":{"294":1}}],["24794",{"2":{"294":1}}],["24649",{"2":{"327":1,"328":1}}],["24640",{"2":{"294":1}}],["24690",{"2":{"308":1}}],["24680",{"2":{"308":1}}],["24666",{"2":{"308":1}}],["24667",{"2":{"294":1}}],["24656",{"2":{"294":1}}],["24655",{"2":{"294":1}}],["24651",{"2":{"294":1}}],["24678",{"2":{"294":1}}],["24611",{"2":{"294":1}}],["24623",{"2":{"294":1}}],["24627",{"2":{"285":1}}],["24622",{"2":{"285":1}}],["24637",{"2":{"294":1}}],["24635",{"2":{"285":1}}],["24633",{"2":{"285":1}}],["24639",{"2":{"285":1}}],["24630",{"2":{"285":1}}],["24553",{"2":{"308":1}}],["24554",{"2":{"285":1}}],["24590",{"2":{"294":1}}],["24593",{"2":{"285":1}}],["24560",{"2":{"294":1}}],["24503",{"2":{"294":1}}],["24502",{"2":{"285":1}}],["24508",{"2":{"285":1}}],["24529",{"2":{"294":1}}],["24525",{"2":{"294":1}}],["24521",{"2":{"294":1}}],["24528",{"2":{"285":1}}],["24520",{"2":{"285":1}}],["24548",{"2":{"285":1}}],["24540",{"2":{"285":1}}],["24573",{"2":{"285":1}}],["24531",{"2":{"294":1}}],["24539",{"2":{"285":1}}],["24535",{"2":{"285":1}}],["24534",{"2":{"285":1}}],["24532",{"2":{"285":1}}],["24515",{"2":{"285":1}}],["24513",{"2":{"285":1}}],["24418",{"2":{"328":1}}],["24413",{"2":{"285":1}}],["24490",{"2":{"285":1}}],["24481",{"2":{"285":1}}],["24484",{"2":{"285":1}}],["24480",{"2":{"285":1}}],["24408",{"2":{"285":1}}],["24456",{"2":{"285":1}}],["24479",{"2":{"285":1}}],["24474",{"2":{"285":1}}],["24473",{"2":{"285":1}}],["24476",{"2":{"285":1}}],["24477",{"2":{"285":1}}],["24471",{"2":{"285":1}}],["24468",{"2":{"285":1}}],["24467",{"2":{"285":1}}],["24449",{"2":{"285":1}}],["24445",{"2":{"285":1}}],["24433",{"2":{"285":1}}],["24432",{"2":{"285":1}}],["24423",{"2":{"308":1}}],["24428",{"2":{"285":1}}],["24422",{"2":{"285":1}}],["24301",{"2":{"308":1}}],["24364",{"2":{"285":1}}],["24398",{"2":{"285":1}}],["24337",{"2":{"285":1}}],["24388",{"2":{"285":1}}],["24379",{"2":{"285":1}}],["24376",{"2":{"285":1}}],["24356",{"2":{"308":1}}],["24355",{"2":{"285":1}}],["24352",{"2":{"285":1}}],["24351",{"2":{"285":1}}],["24348",{"2":{"285":1}}],["24316",{"2":{"277":1}}],["24322",{"2":{"277":1}}],["24266",{"2":{"294":1}}],["24241",{"2":{"294":1}}],["24249",{"2":{"285":1}}],["24240",{"2":{"277":1}}],["24259",{"2":{"294":1}}],["24258",{"2":{"285":1}}],["24251",{"2":{"285":1}}],["24253",{"2":{"277":1}}],["24229",{"2":{"285":1}}],["24223",{"2":{"285":1}}],["24238",{"2":{"277":1}}],["24237",{"2":{"277":1}}],["24236",{"2":{"277":1}}],["24233",{"2":{"277":1}}],["24232",{"2":{"277":1}}],["24231",{"2":{"277":1}}],["24234",{"2":{"277":1}}],["24215",{"2":{"277":1}}],["24201",{"2":{"277":1}}],["24200",{"2":{"277":1}}],["24203",{"2":{"277":1}}],["24202",{"2":{"277":1}}],["24116",{"2":{"277":1}}],["24194",{"2":{"285":1}}],["24191",{"2":{"277":1}}],["24192",{"2":{"277":1}}],["24185",{"2":{"277":1}}],["24180",{"2":{"277":1}}],["24163",{"2":{"277":1}}],["24155",{"2":{"277":1}}],["24146",{"2":{"277":1}}],["24143",{"2":{"277":1}}],["24142",{"2":{"277":1}}],["24136",{"2":{"277":1}}],["24133",{"2":{"277":1}}],["24127",{"2":{"277":1}}],["24122",{"2":{"277":1}}],["24120",{"2":{"277":1}}],["240px",{"2":{"2750":1}}],["240",{"2":{"2749":3,"2750":3}}],["240x80",{"2":{"2749":2}}],["240x320",{"2":{"2746":2,"2749":1,"2750":4}}],["240x240",{"2":{"2746":2,"2749":1,"2750":1}}],["24092",{"2":{"277":1}}],["24094",{"2":{"277":1}}],["24082",{"2":{"328":1}}],["24084",{"2":{"285":1}}],["24086",{"2":{"277":1}}],["24087",{"2":{"277":1}}],["24068",{"2":{"277":1}}],["24064",{"2":{"277":1}}],["24060",{"2":{"277":1}}],["24032",{"2":{"277":1}}],["24017",{"2":{"277":1}}],["24016",{"2":{"277":1}}],["24011",{"2":{"277":1}}],["24010",{"2":{"277":1}}],["24053",{"2":{"285":1}}],["24054",{"2":{"277":1}}],["24055",{"2":{"277":1}}],["24051",{"2":{"277":1}}],["24049",{"2":{"277":1}}],["24020",{"2":{"277":1}}],["2400",{"2":{"1269":1}}],["24009",{"2":{"277":1}}],["24008",{"2":{"277":1}}],["24006",{"2":{"277":1}}],["24003",{"2":{"277":1}}],["24001",{"2":{"277":1}}],["24",{"0":{"278":1},"1":{"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1},"2":{"238":1,"396":1,"407":2,"1155":1,"1521":2,"1680":1,"1772":3,"1933":1,"1946":1,"1960":3,"2000":6,"2059":1,"2288":1,"2525":3,"2541":3,"2766":1}}],["22947",{"2":{"277":1}}],["22948",{"2":{"249":1}}],["22942",{"2":{"249":1}}],["22934",{"2":{"249":1}}],["22932",{"2":{"249":1}}],["22926",{"2":{"266":1}}],["22922",{"2":{"249":1}}],["22921",{"2":{"249":1}}],["22920",{"2":{"249":1}}],["22997",{"2":{"249":1}}],["22998",{"2":{"249":1}}],["22992",{"2":{"249":1}}],["22991",{"2":{"249":1}}],["22917",{"2":{"249":1}}],["22911",{"2":{"249":1}}],["22910",{"2":{"249":1}}],["22901",{"2":{"249":1}}],["22909",{"2":{"249":1}}],["22908",{"2":{"249":1}}],["22905",{"2":{"249":1}}],["22985",{"2":{"249":1}}],["22971",{"2":{"249":1}}],["22979",{"2":{"249":1}}],["22975",{"2":{"249":1}}],["22970",{"2":{"249":1}}],["22963",{"2":{"285":1}}],["22967",{"2":{"266":1}}],["22962",{"2":{"266":1}}],["22969",{"2":{"249":1}}],["22966",{"2":{"249":1}}],["22961",{"2":{"249":1}}],["22953",{"2":{"249":1}}],["22955",{"2":{"249":1}}],["22951",{"2":{"249":1}}],["22858",{"2":{"285":1}}],["22857",{"2":{"249":1}}],["22851",{"2":{"249":1}}],["22859",{"2":{"249":1}}],["22895",{"2":{"266":1}}],["22891",{"2":{"266":1}}],["22897",{"2":{"249":1}}],["22896",{"2":{"249":1}}],["22899",{"2":{"249":1}}],["22898",{"2":{"249":1}}],["22819",{"2":{"249":1}}],["22811",{"2":{"249":1}}],["22814",{"2":{"249":1}}],["22884",{"2":{"249":1}}],["22873",{"2":{"249":1}}],["22879",{"2":{"249":1}}],["22878",{"2":{"249":1}}],["22872",{"2":{"249":1}}],["22866",{"2":{"249":1}}],["22864",{"2":{"249":1}}],["22863",{"2":{"249":1}}],["22862",{"2":{"249":1}}],["22861",{"2":{"249":1}}],["22860",{"2":{"249":1}}],["22869",{"2":{"249":1}}],["22865",{"2":{"249":1}}],["22832",{"2":{"249":1}}],["22839",{"2":{"249":1}}],["22830",{"2":{"249":1}}],["22829",{"2":{"249":1}}],["22823",{"2":{"249":1}}],["22826",{"2":{"249":1}}],["22825",{"2":{"249":1}}],["22824",{"2":{"249":1}}],["22809",{"2":{"249":1}}],["22802",{"2":{"249":1}}],["22808",{"2":{"249":1}}],["22807",{"2":{"249":1}}],["22806",{"2":{"249":1}}],["22801",{"2":{"249":1}}],["22803",{"2":{"249":1}}],["22800",{"2":{"249":1}}],["22731",{"2":{"266":1}}],["22736",{"2":{"249":1}}],["22799",{"2":{"249":1}}],["22796",{"2":{"249":1}}],["22798",{"2":{"249":1}}],["22797",{"2":{"249":1}}],["22792",{"2":{"249":1}}],["22795",{"2":{"249":1}}],["22771",{"2":{"249":1}}],["22775",{"2":{"249":1}}],["22764",{"2":{"249":1}}],["22763",{"2":{"249":1}}],["22762",{"2":{"249":1}}],["22760",{"2":{"249":1}}],["22759",{"2":{"249":1}}],["22753",{"2":{"249":1}}],["22750",{"2":{"249":1}}],["22741",{"2":{"266":1}}],["22745",{"2":{"249":1}}],["22743",{"2":{"249":1}}],["22740",{"2":{"249":1}}],["22742",{"2":{"249":1}}],["22721",{"2":{"249":1}}],["22726",{"2":{"249":1}}],["22719",{"2":{"249":1}}],["22715",{"2":{"249":1}}],["22714",{"2":{"249":1}}],["22712",{"2":{"249":1}}],["22710",{"2":{"249":1}}],["22709",{"2":{"249":1}}],["22708",{"2":{"249":1}}],["22701",{"2":{"249":1}}],["22695",{"2":{"266":1}}],["22662",{"2":{"266":1}}],["22649",{"2":{"249":1}}],["22652",{"2":{"249":1}}],["22651",{"2":{"249":1}}],["22656",{"2":{"249":1}}],["22603",{"2":{"249":1}}],["22688",{"2":{"249":1}}],["22682",{"2":{"249":1}}],["22681",{"2":{"249":1}}],["22680",{"2":{"249":1}}],["22670",{"2":{"277":1}}],["22675",{"2":{"249":1}}],["22674",{"2":{"249":1}}],["22673",{"2":{"249":1}}],["22638",{"2":{"249":1}}],["22637",{"2":{"249":1}}],["22636",{"2":{"249":1}}],["22635",{"2":{"249":1}}],["22628",{"2":{"249":1}}],["22625",{"2":{"249":1}}],["22620",{"2":{"249":1}}],["22617",{"2":{"249":1}}],["225°",{"2":{"1769":1}}],["22579",{"2":{"249":1}}],["22578",{"2":{"249":1}}],["22577",{"2":{"249":1}}],["22575",{"2":{"249":1}}],["22570",{"2":{"249":1}}],["22558",{"2":{"249":1}}],["22560",{"2":{"249":1}}],["22562",{"2":{"249":1}}],["22530",{"2":{"249":1}}],["22518",{"2":{"249":1}}],["22546",{"2":{"249":1}}],["22543",{"2":{"249":1}}],["22542",{"2":{"249":1}}],["22549",{"2":{"236":1}}],["22548",{"2":{"236":1}}],["22545",{"2":{"236":1}}],["22544",{"2":{"236":1}}],["22526",{"2":{"249":1}}],["22529",{"2":{"249":1}}],["22523",{"2":{"236":1}}],["22528",{"2":{"236":1}}],["22525",{"2":{"236":1}}],["22",{"0":{"329":1},"1":{"330":1,"331":1,"332":1,"333":1},"2":{"236":1,"249":1,"394":1,"396":1,"407":2,"1486":1,"1680":1,"1772":3,"1960":3,"2000":4,"2525":3,"2541":3}}],["224x64",{"2":{"2064":1}}],["224",{"2":{"1840":4,"2060":4,"2864":1,"2871":1}}],["22459",{"2":{"308":1}}],["22489",{"2":{"277":1}}],["22480",{"2":{"236":1}}],["22474",{"2":{"249":1}}],["22471",{"2":{"236":1}}],["22419",{"2":{"249":1}}],["22497",{"2":{"236":1}}],["22437",{"2":{"236":1}}],["22435",{"2":{"236":1}}],["22434",{"2":{"236":1}}],["22436",{"2":{"236":1}}],["22469",{"2":{"236":1}}],["22446",{"2":{"236":1}}],["22444",{"2":{"236":1}}],["22448",{"2":{"236":1}}],["22445",{"2":{"236":1}}],["22423",{"2":{"236":1}}],["22401",{"2":{"249":1}}],["22403",{"2":{"236":1}}],["22400",{"2":{"236":1}}],["223",{"2":{"1941":1,"1943":1,"2279":1,"2281":1}}],["22396",{"2":{"1362":3}}],["22398",{"2":{"236":1}}],["22374",{"2":{"249":1}}],["22379",{"2":{"236":1}}],["22358",{"2":{"249":1}}],["22357",{"2":{"236":1}}],["22341",{"2":{"249":1}}],["22342",{"2":{"236":1}}],["22332",{"2":{"236":1}}],["22368",{"2":{"249":1}}],["22364",{"2":{"236":1}}],["22366",{"2":{"236":1}}],["22363",{"2":{"236":1}}],["22369",{"2":{"236":1}}],["22365",{"2":{"236":1}}],["22384",{"2":{"249":1}}],["22383",{"2":{"236":1}}],["22381",{"2":{"236":1}}],["22380",{"2":{"236":1}}],["22328",{"2":{"236":1}}],["22325",{"2":{"236":1}}],["22324",{"2":{"236":1}}],["22323",{"2":{"236":1}}],["22321",{"2":{"236":1}}],["22315",{"2":{"249":1}}],["22314",{"2":{"249":1}}],["22312",{"2":{"236":1}}],["22310",{"2":{"236":1}}],["22313",{"2":{"236":1}}],["22311",{"2":{"236":1}}],["22303",{"2":{"249":1}}],["22304",{"2":{"249":1}}],["22305",{"2":{"236":1}}],["22309",{"2":{"236":1}}],["22308",{"2":{"236":1}}],["22201",{"2":{"249":1}}],["22200",{"2":{"236":1}}],["22281",{"2":{"249":1}}],["22280",{"2":{"236":1}}],["22276",{"2":{"249":1}}],["22297",{"2":{"236":1}}],["22239",{"2":{"236":1}}],["22235",{"2":{"236":1}}],["22236",{"2":{"236":1}}],["22242",{"2":{"236":1}}],["22248",{"2":{"236":1}}],["22265",{"2":{"266":1}}],["22263",{"2":{"249":1}}],["22268",{"2":{"236":1}}],["22264",{"2":{"236":1}}],["22267",{"2":{"236":1}}],["22221",{"2":{"236":1}}],["22222",{"2":{"236":1}}],["22251",{"2":{"266":1}}],["22256",{"2":{"236":1}}],["22253",{"2":{"236":1}}],["22212",{"2":{"236":1}}],["22135",{"2":{"266":1}}],["22133",{"2":{"236":1}}],["22114",{"2":{"249":1}}],["22117",{"2":{"236":1}}],["22185",{"2":{"249":1}}],["22188",{"2":{"236":1}}],["22108",{"2":{"236":1}}],["22106",{"2":{"236":1}}],["22105",{"2":{"236":1}}],["22152",{"2":{"236":1}}],["22151",{"2":{"236":1}}],["22149",{"2":{"236":1}}],["22148",{"2":{"236":1}}],["22145",{"2":{"236":1}}],["22144",{"2":{"236":1}}],["22193",{"2":{"236":1}}],["22170",{"2":{"236":1}}],["22163",{"2":{"236":1}}],["22125",{"2":{"236":1}}],["22122",{"2":{"236":1}}],["22121",{"2":{"236":1}}],["22129",{"2":{"236":1}}],["22126",{"2":{"236":1}}],["22123",{"2":{"236":1}}],["220",{"2":{"2904":1,"2905":1}}],["22050u",{"2":{"716":1}}],["22021",{"2":{"236":1}}],["22025",{"2":{"236":1}}],["22082",{"2":{"249":1}}],["22089",{"2":{"236":1}}],["22088",{"2":{"236":1}}],["22087",{"2":{"236":1}}],["22085",{"2":{"236":1}}],["22084",{"2":{"236":1}}],["22068",{"2":{"236":1}}],["22041",{"2":{"236":1}}],["22049",{"2":{"236":1}}],["22034",{"2":{"236":1}}],["22013",{"2":{"236":1}}],["22011",{"2":{"236":1}}],["22010",{"2":{"236":1}}],["22017",{"2":{"236":1}}],["22091",{"2":{"249":1}}],["22099",{"2":{"236":1}}],["22090",{"2":{"236":1}}],["22072",{"2":{"236":1}}],["22073",{"2":{"236":1}}],["22074",{"2":{"236":1}}],["22071",{"2":{"236":1}}],["22009",{"2":{"236":1}}],["22008",{"2":{"236":1}}],["22007",{"2":{"236":1}}],["22006",{"2":{"236":1}}],["22004",{"2":{"236":1}}],["21944",{"2":{"249":1}}],["21948",{"2":{"236":1}}],["21926",{"2":{"236":1}}],["21929",{"2":{"236":1}}],["21939",{"2":{"236":2}}],["21938",{"2":{"236":1}}],["21996",{"2":{"236":1}}],["21995",{"2":{"236":1}}],["21994",{"2":{"236":1}}],["21993",{"2":{"236":1}}],["21991",{"2":{"236":1}}],["21981",{"2":{"236":1}}],["21986",{"2":{"236":1}}],["21975",{"2":{"236":1}}],["21979",{"2":{"236":1}}],["21978",{"2":{"236":1}}],["21977",{"2":{"236":1}}],["21966",{"2":{"236":1}}],["21964",{"2":{"236":1}}],["21960",{"2":{"236":1}}],["21918",{"2":{"236":1}}],["21909",{"2":{"236":1}}],["21906",{"2":{"236":1}}],["21908",{"2":{"236":1}}],["21905",{"2":{"236":1}}],["21904",{"2":{"236":1}}],["21903",{"2":{"236":1}}],["21883",{"2":{"249":1}}],["21825",{"2":{"236":1}}],["21827",{"2":{"222":1}}],["21897",{"2":{"236":1}}],["21898",{"2":{"236":1}}],["21892",{"2":{"236":1}}],["21891",{"2":{"236":1}}],["21890",{"2":{"236":1}}],["21879",{"2":{"236":1}}],["21874",{"2":{"236":1}}],["21878",{"2":{"236":1}}],["21875",{"2":{"236":1}}],["21866",{"2":{"236":1}}],["21865",{"2":{"236":1}}],["21861",{"2":{"236":1}}],["21859",{"2":{"236":1}}],["21804",{"2":{"236":1}}],["21800",{"2":{"222":1}}],["21842",{"2":{"222":1}}],["21830",{"2":{"222":1}}],["21817",{"2":{"222":1}}],["21815",{"2":{"222":1}}],["21775",{"2":{"249":1}}],["21770",{"2":{"249":1}}],["21777",{"2":{"249":1}}],["21773",{"2":{"222":1}}],["21721",{"2":{"249":1}}],["21727",{"2":{"222":1}}],["21767",{"2":{"236":1}}],["21744",{"2":{"236":1}}],["21740",{"2":{"236":1}}],["21792",{"2":{"222":1}}],["21757",{"2":{"222":1}}],["21751",{"2":{"222":1}}],["21717",{"2":{"236":1}}],["21711",{"2":{"236":1}}],["21718",{"2":{"222":1}}],["21714",{"2":{"222":1}}],["21710",{"2":{"222":1}}],["21704",{"2":{"222":1}}],["21709",{"2":{"222":1}}],["21708",{"2":{"222":1}}],["21703",{"2":{"222":1}}],["216",{"2":{"726":1,"2748":1}}],["21695",{"2":{"266":1}}],["21671",{"2":{"236":1}}],["21676",{"2":{"222":1}}],["21687",{"2":{"249":1}}],["21684",{"2":{"236":1}}],["21688",{"2":{"236":1}}],["21682",{"2":{"222":1}}],["21667",{"2":{"236":1}}],["21662",{"2":{"236":1}}],["21664",{"2":{"236":1}}],["21663",{"2":{"222":1}}],["21661",{"2":{"222":1}}],["21656",{"2":{"266":1}}],["21654",{"2":{"236":1}}],["21659",{"2":{"222":1}}],["21653",{"2":{"222":1}}],["21658",{"2":{"222":1}}],["21651",{"2":{"222":1}}],["21642",{"2":{"236":1}}],["21645",{"2":{"222":1}}],["21644",{"2":{"222":1}}],["21640",{"2":{"222":1}}],["21636",{"2":{"222":1}}],["21635",{"2":{"222":1}}],["21630",{"2":{"222":1}}],["21623",{"2":{"249":1}}],["21626",{"2":{"222":1}}],["21625",{"2":{"222":1}}],["21624",{"2":{"222":1}}],["21611",{"2":{"236":1}}],["21614",{"2":{"222":1}}],["21612",{"2":{"222":1}}],["21613",{"2":{"222":1}}],["21576",{"2":{"236":1}}],["21574",{"2":{"236":1}}],["21579",{"2":{"222":1}}],["21572",{"2":{"222":1}}],["21548",{"2":{"249":1}}],["21543",{"2":{"222":1}}],["21540",{"2":{"222":1}}],["21569",{"2":{"222":1}}],["21567",{"2":{"222":1}}],["21526",{"2":{"222":1}}],["21523",{"2":{"222":1}}],["21592",{"2":{"222":1}}],["21596",{"2":{"222":1}}],["21594",{"2":{"222":1}}],["21591",{"2":{"222":1}}],["21583",{"2":{"236":1}}],["21589",{"2":{"222":1}}],["21588",{"2":{"222":1}}],["21580",{"2":{"222":1}}],["21554",{"2":{"222":1}}],["21553",{"2":{"222":1}}],["21558",{"2":{"222":1}}],["21551",{"2":{"222":1}}],["21519",{"2":{"222":1}}],["21517",{"2":{"222":1}}],["21514",{"2":{"222":1}}],["21507",{"2":{"222":1}}],["21410",{"2":{"266":1}}],["21456",{"2":{"249":1}}],["21450",{"2":{"236":1}}],["21454",{"2":{"222":1}}],["21402",{"2":{"236":1}}],["21405",{"2":{"222":1}}],["21448",{"2":{"249":1}}],["21447",{"2":{"222":1}}],["21444",{"2":{"222":1}}],["21467",{"2":{"236":1}}],["21468",{"2":{"222":1}}],["21465",{"2":{"222":1}}],["21494",{"2":{"236":1}}],["21497",{"2":{"222":1}}],["21495",{"2":{"222":1}}],["21498",{"2":{"222":1}}],["21496",{"2":{"222":2}}],["21493",{"2":{"222":1}}],["21489",{"2":{"222":1}}],["21484",{"2":{"222":1}}],["21482",{"2":{"222":1}}],["21486",{"2":{"222":1}}],["21485",{"2":{"222":1}}],["21480",{"2":{"222":1}}],["21476",{"2":{"222":1}}],["21473",{"2":{"222":1}}],["21472",{"2":{"222":1}}],["21435",{"2":{"222":1}}],["21432",{"2":{"222":1}}],["21436",{"2":{"222":1}}],["21434",{"2":{"222":1}}],["21422",{"2":{"222":1}}],["21427",{"2":{"222":1}}],["21424",{"2":{"222":1}}],["213",{"2":{"1356":1}}],["21398",{"2":{"249":1}}],["21391",{"2":{"222":1}}],["21345",{"2":{"222":1}}],["21343",{"2":{"222":1}}],["21307",{"2":{"222":1}}],["21302",{"2":{"222":1}}],["21380",{"2":{"236":1}}],["21389",{"2":{"222":1}}],["21384",{"2":{"222":1}}],["21382",{"2":{"222":1}}],["21370",{"2":{"222":1}}],["21364",{"2":{"236":1}}],["21365",{"2":{"222":1}}],["21363",{"2":{"222":1}}],["21360",{"2":{"222":1}}],["21366",{"2":{"222":1}}],["21339",{"2":{"222":1}}],["21337",{"2":{"222":1}}],["21332",{"2":{"222":1}}],["21324",{"2":{"222":1}}],["21325",{"2":{"222":1}}],["21322",{"2":{"222":1}}],["21320",{"2":{"222":1}}],["21354",{"2":{"222":1}}],["21353",{"2":{"222":1}}],["21352",{"2":{"222":1}}],["21206",{"2":{"222":1}}],["21205",{"2":{"222":1}}],["21298",{"2":{"222":1}}],["21299",{"2":{"222":1}}],["21296",{"2":{"222":1}}],["21292",{"2":{"222":1}}],["21293",{"2":{"222":1}}],["21287",{"2":{"222":1}}],["21284",{"2":{"222":1}}],["21281",{"2":{"222":1}}],["21273",{"2":{"249":1}}],["21272",{"2":{"222":1}}],["21278",{"2":{"222":1}}],["21271",{"2":{"222":1}}],["21260",{"2":{"222":1}}],["21248",{"2":{"222":1}}],["21240",{"2":{"222":1}}],["21247",{"2":{"222":1}}],["21237",{"2":{"222":1}}],["21234",{"2":{"222":1}}],["21217",{"2":{"222":1}}],["21124",{"2":{"249":1}}],["21174",{"2":{"236":1}}],["21171",{"2":{"236":1}}],["21176",{"2":{"222":1}}],["21190",{"2":{"222":1}}],["21144",{"2":{"222":1}}],["21169",{"2":{"222":1}}],["21164",{"2":{"222":1}}],["21157",{"2":{"222":1}}],["21154",{"2":{"222":1}}],["21151",{"2":{"222":1}}],["21139",{"2":{"222":1}}],["21135",{"2":{"222":1}}],["21134",{"2":{"222":1}}],["21113",{"2":{"222":1}}],["21110",{"2":{"222":1}}],["21116",{"2":{"222":1}}],["21115",{"2":{"222":1}}],["21109",{"2":{"222":1}}],["21108",{"2":{"222":1}}],["21107",{"2":{"222":1}}],["210",{"2":{"2904":2,"2905":2,"2906":1}}],["21060",{"2":{"236":1}}],["21079",{"2":{"222":1}}],["21072",{"2":{"222":1}}],["21096",{"2":{"249":1}}],["21095",{"2":{"222":1}}],["21094",{"2":{"222":1}}],["21092",{"2":{"222":1}}],["21054",{"2":{"222":1}}],["21056",{"2":{"222":1}}],["21046",{"2":{"222":1}}],["21044",{"2":{"211":1}}],["21015",{"2":{"222":1}}],["21013",{"2":{"211":1}}],["21086",{"2":{"222":1}}],["21033",{"2":{"211":1}}],["21032",{"2":{"211":1}}],["21005",{"2":{"211":1}}],["21007",{"2":{"211":1}}],["21002",{"2":{"211":1}}],["21029",{"2":{"211":1}}],["21",{"2":{"160":1,"176":2,"191":1,"211":1,"249":1,"294":1,"371":2,"407":1,"1201":1,"1486":1,"1680":1,"1772":3,"1960":3,"2000":3,"2525":3,"2541":3}}],["25mhz",{"2":{"2679":1}}],["25k",{"2":{"1522":1}}],["25keys",{"2":{"143":5,"149":1}}],["25xx",{"2":{"743":1,"747":1}}],["25939",{"2":{"333":1}}],["25931",{"2":{"333":1}}],["25902",{"2":{"333":1}}],["25999",{"2":{"333":1}}],["25998",{"2":{"333":1}}],["25977",{"2":{"333":1}}],["25975",{"2":{"333":1}}],["25969",{"2":{"333":1}}],["25946",{"2":{"333":1}}],["25955",{"2":{"333":1}}],["25898",{"2":{"333":1}}],["25891",{"2":{"333":1}}],["25899",{"2":{"333":1}}],["25864",{"2":{"333":1}}],["25834",{"2":{"333":1}}],["25882",{"2":{"333":1}}],["25888",{"2":{"333":1}}],["25857",{"2":{"333":1}}],["25856",{"2":{"333":1}}],["25854",{"2":{"333":1}}],["25859",{"2":{"333":1}}],["25808",{"2":{"333":1}}],["25802",{"2":{"328":1}}],["25804",{"2":{"328":1}}],["25818",{"2":{"328":1}}],["25814",{"2":{"328":1}}],["25819",{"2":{"328":1}}],["25797",{"2":{"328":1}}],["25733",{"2":{"328":1}}],["25731",{"2":{"328":1}}],["25774",{"2":{"328":1}}],["25775",{"2":{"328":1}}],["25754",{"2":{"328":1}}],["25751",{"2":{"328":1}}],["25780",{"2":{"328":1}}],["25785",{"2":{"328":1}}],["25786",{"2":{"328":1}}],["25763",{"2":{"328":1}}],["25717",{"2":{"328":1}}],["25716",{"2":{"328":1}}],["25706",{"2":{"328":1}}],["255",{"2":{"639":2,"729":1,"858":1,"923":2,"957":2,"991":2,"1025":2,"1059":2,"1093":2,"1127":2,"1161":2,"1285":4,"1527":3,"1550":2,"1840":1,"1846":1,"1878":1,"1884":1,"1886":1,"1888":1,"1933":1,"1943":2,"2060":1,"2069":3,"2074":9,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2138":3,"2140":3,"2182":2,"2185":3,"2187":1,"2198":9,"2201":2,"2202":2,"2236":1,"2247":1,"2281":1,"2373":2,"2750":20,"2769":1,"2770":3,"2850":2,"2864":4,"2870":3,"2871":5}}],["25503",{"2":{"333":1}}],["25502",{"2":{"333":1}}],["25500",{"2":{"317":1}}],["25590",{"2":{"328":1}}],["25599",{"2":{"328":1}}],["25598",{"2":{"328":1}}],["25594",{"2":{"328":1}}],["25595",{"2":{"328":1}}],["25570",{"2":{"333":1}}],["25571",{"2":{"328":1}}],["25572",{"2":{"328":1}}],["25526",{"2":{"328":1}}],["25587",{"2":{"328":1}}],["25580",{"2":{"317":1}}],["25563",{"2":{"328":1}}],["25561",{"2":{"328":1}}],["25560",{"2":{"328":1}}],["25565",{"2":{"328":1}}],["25564",{"2":{"317":1}}],["25537",{"2":{"328":1}}],["25559",{"2":{"328":1}}],["25558",{"2":{"328":1}}],["25556",{"2":{"317":1}}],["25550",{"2":{"317":1}}],["25546",{"2":{"317":1}}],["25547",{"2":{"317":1}}],["25542",{"2":{"317":1}}],["25541",{"2":{"317":1}}],["25516",{"2":{"328":1}}],["25515",{"2":{"328":1}}],["25517",{"2":{"317":1}}],["25513",{"2":{"317":1}}],["254",{"2":{"1941":1,"2279":1}}],["25407",{"2":{"333":1}}],["25408",{"2":{"317":1}}],["25477",{"2":{"317":1}}],["25471",{"2":{"317":1}}],["25475",{"2":{"317":1}}],["25492",{"2":{"328":1}}],["25497",{"2":{"317":1}}],["25498",{"2":{"317":1}}],["25494",{"2":{"317":1}}],["25493",{"2":{"317":1}}],["25491",{"2":{"317":1}}],["25467",{"2":{"328":1}}],["25469",{"2":{"317":1}}],["25468",{"2":{"317":1}}],["25462",{"2":{"317":1}}],["25453",{"2":{"328":1}}],["25458",{"2":{"317":1}}],["25459",{"2":{"317":1}}],["25456",{"2":{"317":1}}],["25452",{"2":{"317":1}}],["25450",{"2":{"317":1}}],["25431",{"2":{"328":1}}],["25436",{"2":{"317":1}}],["25438",{"2":{"317":1}}],["25433",{"2":{"317":1}}],["25430",{"2":{"317":1}}],["25437",{"2":{"317":1}}],["25422",{"2":{"328":1}}],["25423",{"2":{"317":1}}],["25429",{"2":{"317":1}}],["25428",{"2":{"317":1}}],["25421",{"2":{"317":1}}],["25415",{"2":{"328":1}}],["25417",{"2":{"317":1}}],["25414",{"2":{"317":1}}],["25488",{"2":{"317":1}}],["25489",{"2":{"317":1}}],["25487",{"2":{"317":1}}],["25486",{"2":{"317":1}}],["25481",{"2":{"317":1}}],["25444",{"2":{"317":1}}],["25442",{"2":{"317":1}}],["253",{"2":{"1941":1,"2279":1}}],["25322",{"2":{"317":1}}],["25328",{"2":{"317":1}}],["25370",{"2":{"317":1}}],["25369",{"2":{"317":1}}],["25351",{"2":{"317":1}}],["25342",{"2":{"317":1}}],["25341",{"2":{"317":1}}],["25344",{"2":{"317":1}}],["25334",{"2":{"328":1}}],["25338",{"2":{"317":1}}],["25331",{"2":{"317":1}}],["25317",{"2":{"317":1}}],["25316",{"2":{"317":1}}],["25315",{"2":{"317":1}}],["25383",{"2":{"317":1}}],["25395",{"2":{"317":1}}],["25245",{"2":{"328":1}}],["25247",{"2":{"328":1}}],["25246",{"2":{"308":1}}],["25238",{"2":{"308":1}}],["25237",{"2":{"308":1}}],["25210",{"2":{"308":1}}],["25219",{"2":{"308":1}}],["25291",{"2":{"317":1}}],["25298",{"2":{"308":1}}],["25295",{"2":{"308":1}}],["25294",{"2":{"308":1}}],["25293",{"2":{"308":1}}],["25285",{"2":{"317":1}}],["25288",{"2":{"308":1}}],["25287",{"2":{"308":1}}],["25280",{"2":{"308":1}}],["25263",{"2":{"308":1}}],["25268",{"2":{"308":1}}],["25266",{"2":{"308":1}}],["25262",{"2":{"308":1}}],["25279",{"2":{"317":1}}],["25272",{"2":{"308":1}}],["25274",{"2":{"308":1}}],["25271",{"2":{"308":1}}],["25254",{"2":{"308":1}}],["25250",{"2":{"308":1}}],["25251",{"2":{"308":1}}],["25255",{"2":{"308":1}}],["25204",{"2":{"308":1}}],["25209",{"2":{"308":1}}],["25208",{"2":{"308":1}}],["25207",{"2":{"308":1}}],["25203",{"2":{"308":1}}],["25201",{"2":{"308":1}}],["25200",{"2":{"308":1}}],["251",{"2":{"1941":1,"2279":1}}],["25168",{"2":{"328":1}}],["25160",{"2":{"317":1}}],["25166",{"2":{"308":1}}],["25169",{"2":{"308":1}}],["25198",{"2":{"328":1}}],["25194",{"2":{"308":1}}],["25191",{"2":{"308":1}}],["25193",{"2":{"308":1}}],["25190",{"2":{"308":1}}],["25199",{"2":{"308":1}}],["25157",{"2":{"308":1}}],["25146",{"2":{"308":1}}],["25142",{"2":{"308":1}}],["25149",{"2":{"308":1}}],["25141",{"2":{"308":1}}],["25116",{"2":{"308":1}}],["25111",{"2":{"308":1}}],["25189",{"2":{"308":1}}],["25181",{"2":{"308":1}}],["25182",{"2":{"308":1}}],["25187",{"2":{"308":1}}],["25184",{"2":{"308":1}}],["25175",{"2":{"308":1}}],["25178",{"2":{"308":1}}],["25176",{"2":{"308":1}}],["25173",{"2":{"308":1}}],["25171",{"2":{"308":1}}],["25135",{"2":{"308":1}}],["25121",{"2":{"308":1}}],["25129",{"2":{"308":1}}],["25125",{"2":{"308":1}}],["250ms",{"2":{"1954":1}}],["250",{"2":{"856":2,"1358":1,"1804":1,"1954":1,"2013":1,"2034":1}}],["25060",{"2":{"308":1}}],["25061",{"2":{"308":1}}],["25015",{"2":{"308":1}}],["25018",{"2":{"308":1}}],["25010",{"2":{"308":1}}],["25088",{"2":{"308":1}}],["25080",{"2":{"308":1}}],["25085",{"2":{"308":1}}],["25070",{"2":{"308":1}}],["25049",{"2":{"317":1}}],["25046",{"2":{"308":1}}],["25042",{"2":{"308":1}}],["25009",{"2":{"317":1}}],["25005",{"2":{"308":1}}],["25001",{"2":{"308":1}}],["25050",{"2":{"308":2}}],["25u×2uh",{"2":{"2862":1}}],["25u",{"2":{"259":1,"2792":1}}],["25",{"0":{"237":1,"267":1,"295":1},"1":{"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1},"2":{"265":1,"266":1,"407":4,"563":1,"956":1,"1159":1,"1486":1,"1521":1,"1680":1,"1772":3,"1919":1,"1960":3,"2000":3,"2003":2,"2034":1,"2064":1,"2187":1,"2372":1,"2417":3,"2525":3,"2532":1,"2541":3,"2760":1,"2784":1,"2793":12,"2862":2,"2913":1,"2915":1}}],["256kb",{"2":{"2682":1}}],["256u",{"2":{"716":2}}],["25673",{"2":{"328":1}}],["25678",{"2":{"328":1}}],["25671",{"2":{"328":1}}],["25649",{"2":{"328":1}}],["25648",{"2":{"328":1}}],["25644",{"2":{"328":1}}],["25694",{"2":{"328":1}}],["25668",{"2":{"328":1}}],["25665",{"2":{"328":1}}],["25654",{"2":{"328":1}}],["25653",{"2":{"328":1}}],["25650",{"2":{"328":1}}],["25625",{"2":{"328":1}}],["25624",{"2":{"328":1}}],["25623",{"2":{"328":1}}],["25622",{"2":{"328":1}}],["25621",{"2":{"328":1}}],["25620",{"2":{"328":1}}],["25619",{"2":{"328":1}}],["25618",{"2":{"328":1}}],["25617",{"2":{"328":1}}],["25616",{"2":{"328":1}}],["25610",{"2":{"328":1}}],["25609",{"2":{"328":1}}],["25608",{"2":{"328":1}}],["25607",{"2":{"328":1}}],["25606",{"2":{"328":1}}],["25605",{"2":{"328":1}}],["25603",{"2":{"328":1}}],["25602",{"2":{"328":1}}],["25601",{"2":{"328":1}}],["25600",{"2":{"328":1}}],["25638",{"2":{"328":1}}],["25637",{"2":{"328":1}}],["25632",{"2":{"328":1}}],["256",{"2":{"46":1,"756":1,"1297":1,"2747":2,"2748":4,"2750":1,"2751":1,"2769":1}}],["26356",{"2":{"2622":1}}],["266",{"2":{"1373":1}}],["26k7",{"2":{"921":1,"955":1,"989":1}}],["26kbps",{"2":{"568":1,"2268":1}}],["26025",{"2":{"333":1}}],["26024",{"2":{"333":1}}],["26028",{"2":{"333":1}}],["26012",{"2":{"333":1}}],["26011",{"2":{"333":1}}],["26010",{"2":{"333":1}}],["26000",{"2":{"1204":1}}],["26008",{"2":{"333":1}}],["26007",{"2":{"333":1}}],["26006",{"2":{"333":1}}],["26",{"0":{"135":1,"177":1,"192":1,"223":1,"250":1},"1":{"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1},"2":{"170":1,"279":1,"373":2,"407":6,"921":1,"955":1,"989":1,"1486":1,"1521":1,"1680":1,"1772":3,"1960":3,"2000":3,"2525":3,"2541":3,"2784":1}}],["27312",{"2":{"2580":1}}],["275ms",{"2":{"2312":1}}],["275",{"2":{"2312":1}}],["270",{"2":{"1947":1,"1948":1,"1993":2,"2004":2,"2016":2,"2018":2,"2750":1}}],["270°",{"2":{"1769":1}}],["27749e1",{"2":{"73":1}}],["27",{"0":{"66":1,"115":1,"161":1,"212":1},"1":{"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1},"2":{"88":1,"104":1,"127":1,"170":1,"407":5,"1486":1,"1680":1,"1772":3,"1960":3,"2000":1,"2525":3,"2541":3}}],["282",{"2":{"2000":2}}],["285",{"2":{"1770":2,"2761":2}}],["28672",{"2":{"1362":2,"2580":1,"2622":1}}],["280",{"2":{"1282":1}}],["28e9",{"2":{"686":1}}],["28",{"0":{"52":1,"96":1,"150":1,"200":1},"1":{"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1},"2":{"55":1,"88":1,"104":1,"127":1,"407":5,"1486":1,"1680":1,"1772":3,"1960":3,"2000":2,"2525":3,"2541":3}}],["2",{"0":{"400":1,"402":1,"595":1,"1295":1,"1364":1,"1935":1,"1979":1,"1988":1,"2308":1,"2424":1,"2463":1,"2481":1,"2595":1,"2613":1,"2868":1},"1":{"1980":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1,"2482":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1},"2":{"37":2,"45":3,"49":1,"69":1,"114":7,"120":2,"133":2,"134":3,"175":1,"176":4,"188":1,"191":5,"201":3,"211":7,"222":2,"236":4,"249":2,"266":12,"272":2,"285":2,"307":1,"311":8,"317":1,"335":1,"348":1,"355":4,"369":3,"373":1,"401":1,"402":1,"406":5,"432":1,"505":1,"511":2,"516":1,"526":1,"540":1,"562":2,"568":1,"579":1,"587":2,"589":1,"591":6,"597":1,"627":1,"674":1,"686":1,"690":1,"692":21,"693":1,"696":2,"698":2,"713":2,"716":2,"717":1,"728":1,"746":1,"747":1,"751":1,"752":1,"753":2,"825":2,"854":2,"856":1,"857":4,"886":2,"890":1,"918":4,"921":2,"922":2,"953":2,"955":2,"956":2,"987":2,"989":2,"990":2,"1021":2,"1024":2,"1055":2,"1058":2,"1089":4,"1092":4,"1123":4,"1126":4,"1157":2,"1160":4,"1195":1,"1198":1,"1202":1,"1204":1,"1213":2,"1249":2,"1297":1,"1300":3,"1308":2,"1326":2,"1327":1,"1354":1,"1370":1,"1392":1,"1416":1,"1438":1,"1441":1,"1442":1,"1445":1,"1479":1,"1486":1,"1497":1,"1529":1,"1532":1,"1562":1,"1584":1,"1585":1,"1619":2,"1620":1,"1622":1,"1630":3,"1655":5,"1658":1,"1659":1,"1660":1,"1661":1,"1664":1,"1673":1,"1677":1,"1678":2,"1679":6,"1680":1,"1693":1,"1696":2,"1769":2,"1772":3,"1794":2,"1798":2,"1807":3,"1840":1,"1844":1,"1914":1,"1919":32,"1927":4,"1931":4,"1933":1,"1935":1,"1945":1,"1947":3,"1948":1,"1960":3,"1979":2,"1988":3,"1990":3,"2000":2,"2006":1,"2014":1,"2020":1,"2043":5,"2060":1,"2066":1,"2073":1,"2074":1,"2166":3,"2167":1,"2183":6,"2185":2,"2189":4,"2190":1,"2191":1,"2198":2,"2206":1,"2207":1,"2235":1,"2245":2,"2260":2,"2268":1,"2273":2,"2289":2,"2293":1,"2294":3,"2296":19,"2308":5,"2310":1,"2311":2,"2312":1,"2315":1,"2367":1,"2370":4,"2381":1,"2388":1,"2410":1,"2417":3,"2435":1,"2439":6,"2440":6,"2445":1,"2456":2,"2481":2,"2500":1,"2503":2,"2508":2,"2511":2,"2515":9,"2521":4,"2523":4,"2525":3,"2532":32,"2533":4,"2541":3,"2547":2,"2548":4,"2550":1,"2553":1,"2593":1,"2599":1,"2625":1,"2645":1,"2667":1,"2684":2,"2714":16,"2721":1,"2725":2,"2748":2,"2758":1,"2765":1,"2769":2,"2788":16,"2789":12,"2813":1,"2818":1,"2856":1,"2862":1,"2864":3,"2865":1,"2868":6,"2870":1,"2871":4,"2873":1,"2901":2,"2907":7,"2908":9,"2909":5,"2915":1,"2917":3,"2941":1}}],["290",{"2":{"2761":2}}],["295",{"2":{"2232":1}}],["294",{"2":{"2232":1}}],["29k",{"2":{"1021":1,"1023":2,"1055":1,"1057":2,"1157":1,"1159":2}}],["29",{"0":{"9":1,"39":1,"78":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1},"2":{"88":1,"104":1,"127":1,"396":1,"407":4,"1023":1,"1057":1,"1159":1,"1486":1,"1680":1,"1772":3,"1960":3,"2000":2,"2525":3,"2541":3,"2547":1,"2548":4}}],["20x4",{"2":{"1691":1}}],["20kbps",{"2":{"568":1,"2268":1}}],["209",{"2":{"251":1}}],["20996",{"2":{"222":1}}],["20992",{"2":{"222":1}}],["20998",{"2":{"211":1}}],["20981",{"2":{"211":1}}],["20949",{"2":{"211":1}}],["20962",{"2":{"211":1}}],["20960",{"2":{"211":1}}],["20969",{"2":{"211":1}}],["20953",{"2":{"236":1}}],["20958",{"2":{"211":1}}],["20957",{"2":{"211":1}}],["20956",{"2":{"211":1}}],["20931",{"2":{"211":1}}],["20932",{"2":{"211":1}}],["20930",{"2":{"211":1}}],["20924",{"2":{"211":1}}],["20923",{"2":{"211":1}}],["20929",{"2":{"211":1}}],["20928",{"2":{"211":1}}],["20927",{"2":{"211":1}}],["20926",{"2":{"211":1}}],["20921",{"2":{"211":1}}],["20920",{"2":{"211":1}}],["20915",{"2":{"211":1}}],["20919",{"2":{"211":1}}],["20918",{"2":{"211":1}}],["20917",{"2":{"211":1}}],["20913",{"2":{"211":1}}],["20912",{"2":{"211":1}}],["20908",{"2":{"211":1}}],["20907",{"2":{"211":1}}],["20906",{"2":{"211":1}}],["20901",{"2":{"211":1}}],["20900",{"2":{"211":1}}],["20799",{"2":{"211":1}}],["20791",{"2":{"211":1}}],["20790",{"2":{"211":1}}],["20789",{"2":{"211":1}}],["20788",{"2":{"211":1}}],["20787",{"2":{"211":1}}],["20786",{"2":{"211":1}}],["20785",{"2":{"211":1}}],["20784",{"2":{"211":1}}],["20783",{"2":{"211":1}}],["20782",{"2":{"211":1}}],["20781",{"2":{"211":1}}],["20779",{"2":{"211":1}}],["20778",{"2":{"211":1}}],["20777",{"2":{"211":1}}],["20776",{"2":{"211":1}}],["20775",{"2":{"211":1}}],["20774",{"2":{"211":1}}],["20773",{"2":{"211":1}}],["20770",{"2":{"211":1}}],["20761",{"2":{"222":1}}],["20765",{"2":{"211":1}}],["20764",{"2":{"211":1}}],["20763",{"2":{"211":1}}],["20756",{"2":{"211":1}}],["20755",{"2":{"211":1}}],["20754",{"2":{"211":1}}],["20753",{"2":{"211":1}}],["20752",{"2":{"211":1}}],["20751",{"2":{"211":1}}],["20750",{"2":{"211":1}}],["20749",{"2":{"211":1}}],["20748",{"2":{"211":1}}],["20747",{"2":{"211":1}}],["20746",{"2":{"211":1}}],["20745",{"2":{"211":1}}],["20744",{"2":{"211":1}}],["20743",{"2":{"211":1}}],["20742",{"2":{"211":1}}],["20741",{"2":{"211":1}}],["20740",{"2":{"211":1}}],["20732",{"2":{"236":1}}],["20733",{"2":{"211":1}}],["20739",{"2":{"211":1}}],["20738",{"2":{"211":1}}],["20737",{"2":{"211":1}}],["20736",{"2":{"211":1}}],["20735",{"2":{"211":1}}],["20731",{"2":{"211":1}}],["20734",{"2":{"211":1}}],["20723",{"2":{"211":1}}],["20728",{"2":{"211":1}}],["20727",{"2":{"211":1}}],["20726",{"2":{"211":1}}],["20725",{"2":{"211":1}}],["20724",{"2":{"211":1}}],["20722",{"2":{"211":1}}],["20720",{"2":{"211":1}}],["20719",{"2":{"211":1}}],["20718",{"2":{"211":1}}],["20717",{"2":{"211":1}}],["20716",{"2":{"211":1}}],["20715",{"2":{"211":1}}],["20714",{"2":{"211":1}}],["20713",{"2":{"211":1}}],["20712",{"2":{"211":1}}],["20711",{"2":{"211":1}}],["20710",{"2":{"211":1}}],["20708",{"2":{"211":1}}],["20706",{"2":{"211":1}}],["20703",{"2":{"211":1}}],["20899",{"2":{"211":1}}],["20895",{"2":{"211":1}}],["20893",{"2":{"211":1}}],["20892",{"2":{"211":1}}],["20891",{"2":{"211":1}}],["20897",{"2":{"211":1}}],["20889",{"2":{"211":1}}],["20888",{"2":{"211":1}}],["20887",{"2":{"211":1}}],["20886",{"2":{"211":1}}],["20885",{"2":{"211":1}}],["20884",{"2":{"211":1}}],["20882",{"2":{"211":1}}],["20881",{"2":{"211":1}}],["20880",{"2":{"211":1}}],["20879",{"2":{"211":1}}],["20878",{"2":{"211":1}}],["20877",{"2":{"211":1}}],["20876",{"2":{"211":1}}],["20875",{"2":{"211":1}}],["20874",{"2":{"211":1}}],["20873",{"2":{"211":1}}],["20872",{"2":{"211":1}}],["20871",{"2":{"211":1}}],["20870",{"2":{"211":1}}],["20863",{"2":{"236":1}}],["20869",{"2":{"211":1}}],["20867",{"2":{"211":1}}],["20866",{"2":{"211":1}}],["20865",{"2":{"211":1}}],["20864",{"2":{"211":1}}],["20861",{"2":{"211":1}}],["20860",{"2":{"211":1}}],["20857",{"2":{"236":1}}],["20859",{"2":{"211":1}}],["20858",{"2":{"211":1}}],["20855",{"2":{"211":1}}],["20854",{"2":{"211":1}}],["20853",{"2":{"211":1}}],["20851",{"2":{"211":1}}],["20850",{"2":{"211":1}}],["20849",{"2":{"211":1}}],["20848",{"2":{"211":1}}],["20847",{"2":{"211":1}}],["20845",{"2":{"211":1}}],["20844",{"2":{"211":1}}],["20843",{"2":{"211":1}}],["20842",{"2":{"211":1}}],["20835",{"2":{"211":1}}],["20834",{"2":{"211":1}}],["20833",{"2":{"211":1}}],["20832",{"2":{"211":1}}],["20831",{"2":{"211":1}}],["20830",{"2":{"211":1}}],["20836",{"2":{"211":1}}],["20828",{"2":{"285":1}}],["20829",{"2":{"211":1}}],["20827",{"2":{"211":1}}],["20825",{"2":{"211":1}}],["20824",{"2":{"211":1}}],["20822",{"2":{"211":1}}],["20821",{"2":{"211":1}}],["20820",{"2":{"211":1}}],["20819",{"2":{"211":1}}],["20818",{"2":{"211":1}}],["20816",{"2":{"211":1}}],["20814",{"2":{"211":1}}],["20813",{"2":{"211":1}}],["20812",{"2":{"211":1}}],["20810",{"2":{"211":1}}],["20806",{"2":{"211":1}}],["20808",{"2":{"211":1}}],["20805",{"2":{"211":1}}],["20804",{"2":{"211":1}}],["20809",{"2":{"211":1}}],["20807",{"2":{"211":1}}],["20802",{"2":{"211":1}}],["20801",{"2":{"211":1}}],["20800",{"2":{"211":1}}],["20699",{"2":{"211":1}}],["20698",{"2":{"211":1}}],["20697",{"2":{"211":1}}],["20696",{"2":{"211":1}}],["20695",{"2":{"211":1}}],["20694",{"2":{"211":1}}],["20693",{"2":{"211":1}}],["20692",{"2":{"211":1}}],["20691",{"2":{"211":1}}],["20689",{"2":{"211":1}}],["20688",{"2":{"211":1}}],["20685",{"2":{"211":1}}],["20684",{"2":{"211":1}}],["20682",{"2":{"211":1}}],["20681",{"2":{"211":1}}],["20680",{"2":{"211":1}}],["2067",{"2":{"686":1}}],["20670",{"2":{"211":1}}],["20679",{"2":{"211":1}}],["20678",{"2":{"211":1}}],["20677",{"2":{"211":1}}],["20676",{"2":{"211":1}}],["20675",{"2":{"211":1}}],["20672",{"2":{"211":1}}],["20671",{"2":{"211":1}}],["20669",{"2":{"211":2}}],["20667",{"2":{"211":1}}],["20666",{"2":{"211":1}}],["20665",{"2":{"211":1}}],["20663",{"2":{"211":1}}],["20662",{"2":{"211":1}}],["20661",{"2":{"211":1}}],["20660",{"2":{"211":1}}],["20653",{"2":{"211":1}}],["20659",{"2":{"211":1}}],["20658",{"2":{"211":1}}],["20657",{"2":{"211":1}}],["20651",{"2":{"211":1}}],["20645",{"2":{"249":1}}],["20646",{"2":{"222":1}}],["20648",{"2":{"211":1}}],["20640",{"2":{"211":1}}],["20642",{"2":{"211":1}}],["20633",{"2":{"211":1}}],["20634",{"2":{"211":1}}],["20639",{"2":{"211":1}}],["20636",{"2":{"211":1}}],["20635",{"2":{"211":1}}],["20638",{"2":{"211":1}}],["20629",{"2":{"211":1}}],["20628",{"2":{"211":1}}],["20622",{"2":{"211":1}}],["20621",{"2":{"211":1}}],["20620",{"2":{"211":1}}],["20623",{"2":{"211":1}}],["20619",{"2":{"211":1}}],["20614",{"2":{"211":1}}],["20613",{"2":{"211":1}}],["20612",{"2":{"211":1}}],["20611",{"2":{"211":1}}],["20610",{"2":{"211":1}}],["20604",{"2":{"211":1}}],["20600",{"2":{"211":1}}],["205",{"2":{"1679":1,"2904":1,"2905":1,"2906":1}}],["20534",{"2":{"222":1}}],["20524",{"2":{"211":1}}],["20599",{"2":{"211":1}}],["20598",{"2":{"211":1}}],["20597",{"2":{"211":1}}],["20596",{"2":{"211":1}}],["20595",{"2":{"211":1}}],["20594",{"2":{"211":1}}],["20593",{"2":{"211":1}}],["20592",{"2":{"211":1}}],["20588",{"2":{"211":1}}],["20586",{"2":{"211":1}}],["20585",{"2":{"211":1}}],["20583",{"2":{"211":1}}],["20580",{"2":{"211":1}}],["20584",{"2":{"211":1}}],["20577",{"2":{"211":1}}],["20571",{"2":{"211":1}}],["20570",{"2":{"211":1}}],["20572",{"2":{"211":1}}],["20569",{"2":{"211":1}}],["20568",{"2":{"211":1}}],["20567",{"2":{"211":1}}],["20566",{"2":{"211":1}}],["20565",{"2":{"211":1}}],["20564",{"2":{"211":1}}],["20563",{"2":{"211":1}}],["20562",{"2":{"211":1}}],["20561",{"2":{"211":1}}],["20560",{"2":{"211":1}}],["20558",{"2":{"211":1}}],["20555",{"2":{"211":1}}],["20554",{"2":{"211":1}}],["20553",{"2":{"211":1}}],["20552",{"2":{"211":1}}],["20549",{"2":{"211":1}}],["20548",{"2":{"211":1}}],["20547",{"2":{"211":1}}],["20546",{"2":{"211":1}}],["20541",{"2":{"211":1}}],["20517",{"2":{"222":1}}],["20515",{"2":{"211":1}}],["20519",{"2":{"211":1}}],["20518",{"2":{"211":1}}],["20516",{"2":{"211":1}}],["20508",{"2":{"211":1}}],["20504",{"2":{"211":1}}],["20500",{"2":{"211":1}}],["20405",{"2":{"266":1}}],["20402",{"2":{"222":1}}],["20456",{"2":{"211":1}}],["20454",{"2":{"211":1}}],["20410",{"2":{"236":1}}],["20411",{"2":{"211":1}}],["20417",{"2":{"211":1}}],["20412",{"2":{"211":1}}],["20499",{"2":{"211":1}}],["20498",{"2":{"211":1}}],["20496",{"2":{"211":1}}],["20495",{"2":{"211":1}}],["20494",{"2":{"211":1}}],["20491",{"2":{"211":1}}],["20490",{"2":{"211":1}}],["20480",{"2":{"2501":1}}],["2048",{"2":{"751":1,"754":3}}],["20481",{"2":{"222":1}}],["20489",{"2":{"211":1}}],["20488",{"2":{"211":1}}],["20487",{"2":{"211":1}}],["20475",{"2":{"211":1}}],["20473",{"2":{"211":1}}],["20478",{"2":{"211":1}}],["20477",{"2":{"211":1}}],["20474",{"2":{"211":1}}],["20470",{"2":{"211":1}}],["20468",{"2":{"211":1}}],["20463",{"2":{"211":1}}],["20443",{"2":{"211":1}}],["20442",{"2":{"211":1}}],["20440",{"2":{"211":1}}],["20433",{"2":{"211":1}}],["20432",{"2":{"211":1}}],["20439",{"2":{"211":1}}],["20438",{"2":{"211":1}}],["20436",{"2":{"211":1}}],["20430",{"2":{"211":1}}],["20427",{"2":{"236":1}}],["20422",{"2":{"211":1}}],["20423",{"2":{"211":1}}],["20395",{"2":{"222":1}}],["20397",{"2":{"211":1}}],["20398",{"2":{"211":1}}],["20389",{"2":{"222":1}}],["20383",{"2":{"211":1}}],["20381",{"2":{"211":1}}],["20367",{"2":{"211":1}}],["20365",{"2":{"211":1}}],["20356",{"2":{"211":1}}],["20350",{"2":{"211":1}}],["20348",{"2":{"211":1}}],["20349",{"2":{"211":1}}],["20341",{"2":{"211":1}}],["20340",{"2":{"211":1}}],["20347",{"2":{"211":1}}],["20330",{"2":{"317":1}}],["20339",{"2":{"211":1}}],["20337",{"2":{"211":1}}],["20334",{"2":{"211":2}}],["20331",{"2":{"211":1}}],["20325",{"2":{"211":1}}],["20326",{"2":{"211":1}}],["20321",{"2":{"211":1}}],["20328",{"2":{"211":1}}],["20320",{"2":{"211":1}}],["20315",{"2":{"236":1}}],["20311",{"2":{"211":1}}],["20317",{"2":{"211":1}}],["20316",{"2":{"211":1}}],["20310",{"2":{"211":1}}],["20314",{"2":{"211":1}}],["20313",{"2":{"211":1}}],["20312",{"2":{"211":1}}],["20308",{"2":{"211":1}}],["20303",{"2":{"211":1}}],["20300",{"2":{"211":1}}],["201",{"2":{"2904":1}}],["20101",{"2":{"266":1}}],["20188",{"2":{"211":1}}],["20183",{"2":{"211":1}}],["20148",{"2":{"211":1}}],["20168",{"2":{"211":1}}],["20167",{"2":{"211":1}}],["20113",{"2":{"211":1}}],["20110",{"2":{"211":1}}],["2017",{"2":{"371":2,"2425":1,"2449":3}}],["20177",{"2":{"211":1}}],["20172",{"2":{"211":1}}],["2015",{"2":{"1340":1,"2449":1}}],["20157",{"2":{"211":1}}],["20156",{"2":{"211":1}}],["20155",{"2":{"211":1}}],["20159",{"2":{"211":1}}],["20154",{"2":{"211":1}}],["20150",{"2":{"211":1}}],["20191",{"2":{"211":1}}],["20194",{"2":{"211":1}}],["20192",{"2":{"211":1}}],["2019",{"0":{"0":1,"1317":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1},"2":{"55":2,"134":1,"407":1}}],["200u",{"2":{"2693":1}}],["20043e64",{"2":{"2403":1}}],["2004a",{"2":{"1691":1}}],["200ms",{"2":{"1953":1,"2310":1,"2899":1,"2903":1,"2908":1,"2909":1}}],["200",{"2":{"559":1,"562":4,"1804":1,"1999":1,"2008":2,"2034":1,"2069":2,"2185":1,"2191":1,"2284":1,"2439":1,"2724":2,"2847":2,"2899":1,"2904":1,"2905":2,"2906":1}}],["20059",{"2":{"236":1}}],["20056",{"2":{"211":1}}],["20097",{"2":{"211":1}}],["20092",{"2":{"211":1}}],["20083",{"2":{"211":1}}],["20084",{"2":{"211":1}}],["20078",{"2":{"211":1}}],["20075",{"2":{"211":1}}],["20079",{"2":{"211":1}}],["20020",{"2":{"211":1}}],["20019",{"2":{"211":1}}],["20013",{"2":{"211":1}}],["20061",{"2":{"211":1}}],["20034",{"2":{"211":1}}],["20033",{"2":{"211":1}}],["20030",{"2":{"211":1}}],["2003",{"2":{"116":1}}],["2000000",{"2":{"1999":1,"2014":1}}],["20000",{"2":{"211":1,"1204":1}}],["20003",{"2":{"211":1}}],["20001",{"2":{"211":1}}],["20006",{"2":{"211":1}}],["20004",{"2":{"211":1}}],["2000th",{"2":{"116":1}}],["2000",{"0":{"116":1},"2":{"568":1,"2003":1,"2014":1,"2027":1,"2271":1,"2459":1,"2873":1}}],["2026",{"0":{"329":1},"1":{"330":1,"331":1,"332":1,"333":1},"2":{"394":1,"395":1,"396":7,"407":1}}],["20262",{"2":{"211":1}}],["20273",{"2":{"277":1}}],["20274",{"2":{"211":1}}],["2025",{"0":{"286":1,"295":1,"309":1,"318":1},"1":{"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1},"2":{"307":1,"394":2,"396":1,"407":4,"1387":1,"1402":1}}],["20255",{"2":{"222":1}}],["20253",{"2":{"211":1}}],["20292",{"2":{"211":1}}],["20297",{"2":{"211":1}}],["20293",{"2":{"211":1}}],["20290",{"2":{"211":1}}],["20289",{"2":{"211":1}}],["2024",{"0":{"237":1,"250":1,"267":1,"278":1},"1":{"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1},"2":{"249":1,"251":1,"265":1,"268":1,"279":1,"407":4,"2567":1,"2725":2}}],["20241124",{"2":{"397":1}}],["20241",{"2":{"211":1}}],["20248",{"2":{"211":1}}],["20243",{"2":{"211":1}}],["20230",{"2":{"222":1}}],["20234",{"2":{"211":1}}],["20238",{"2":{"211":1}}],["20237",{"2":{"211":1}}],["20236",{"2":{"211":1}}],["20235",{"2":{"211":1}}],["2023",{"0":{"192":1,"200":1,"212":1,"223":1},"1":{"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1},"2":{"254":1,"407":4}}],["20220",{"2":{"236":1}}],["2022",{"0":{"135":1,"150":1,"161":1,"177":1},"1":{"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1},"2":{"170":2,"312":1,"373":2,"407":4,"2501":17}}],["20218",{"2":{"211":1}}],["20211",{"2":{"211":1}}],["2021",{"0":{"66":1,"78":1,"96":1,"115":1},"1":{"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1},"2":{"88":3,"104":3,"114":2,"127":3,"407":4}}],["20204",{"2":{"211":1}}],["20203",{"2":{"211":1}}],["2020",{"0":{"9":1,"19":1,"39":1,"52":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1},"2":{"55":2,"407":4,"1284":2}}],["20",{"2":{"49":1,"69":1,"111":1,"134":1,"407":1,"422":5,"564":1,"692":1,"1205":2,"1300":1,"1387":1,"1402":1,"1486":1,"1680":5,"1772":3,"1929":1,"1931":1,"1947":1,"1960":3,"2000":3,"2006":1,"2012":1,"2187":3,"2417":2,"2501":1,"2525":3,"2541":3,"2750":1,"2760":3,"2864":1,"2871":1,"2910":1}}],["k13",{"2":{"2787":4,"2789":1,"2930":2}}],["k12",{"2":{"2787":4,"2789":1,"2930":2}}],["k11",{"2":{"2787":4,"2789":1,"2930":2}}],["k10",{"2":{"2787":4,"2789":1,"2930":2}}],["k03",{"2":{"2787":4,"2789":1,"2930":2}}],["k02",{"2":{"2787":4,"2789":1,"2930":2}}],["k01",{"2":{"2787":4,"2789":1,"2930":2}}],["k00",{"2":{"2787":4,"2789":1,"2930":2}}],["kp",{"2":{"2511":19,"2515":19}}],["kprepublic",{"2":{"102":12,"114":1,"122":10,"134":2,"143":4,"199":1,"226":2,"236":1,"253":4,"266":2,"311":4,"328":3,"2567":1}}],["kxy",{"2":{"2427":1}}],["kvm",{"2":{"1955":1}}],["kvms",{"2":{"1954":2,"1955":2}}],["kω",{"2":{"857":14,"922":14,"956":14,"990":14,"1024":14,"1058":14,"1092":14,"1126":14,"1160":14}}],["khz",{"2":{"856":6,"921":5,"955":5,"989":5,"1023":3,"1057":3,"1159":5}}],["k7",{"2":{"328":1}}],["k6",{"2":{"328":1}}],["k5",{"2":{"328":1}}],["k552",{"2":{"199":2}}],["k42",{"2":{"2787":4,"2789":1,"2930":2}}],["k40",{"2":{"2787":4,"2789":1,"2930":2}}],["k4",{"2":{"328":1}}],["k22",{"2":{"2787":4,"2789":1,"2930":2}}],["k21",{"2":{"2787":4,"2789":1,"2930":2}}],["k20",{"2":{"2787":4,"2789":1,"2930":2}}],["k2",{"2":{"328":1}}],["kth",{"2":{"1764":2}}],["kt60hs",{"2":{"300":2,"308":1}}],["ktec",{"2":{"102":3}}],["kl",{"2":{"1326":7,"2294":3}}],["kle",{"2":{"461":3,"2582":1,"2721":1,"2788":4,"2790":1,"2793":1,"2862":1}}],["kle2json",{"0":{"461":1},"2":{"461":3}}],["klein",{"2":{"249":1}}],["kludge",{"2":{"328":1,"2567":1}}],["kl90",{"2":{"222":1,"249":1}}],["kumaokobo",{"2":{"241":10,"249":2}}],["kudox",{"2":{"241":16}}],["k83",{"2":{"217":1}}],["kj",{"2":{"211":1}}],["kohm",{"2":{"724":2,"2851":2}}],["koyu",{"2":{"211":1}}],["kopibeng",{"2":{"211":5}}],["koalafications",{"2":{"211":1}}],["koolertron",{"2":{"211":1}}],["ko",{"0":{"1740":1,"1741":1,"1742":1,"1743":1,"1752":1},"2":{"188":1,"191":1,"1740":1,"1743":1,"1744":1,"1746":9,"1747":2,"1749":1,"1750":3,"1751":2,"1752":8,"1755":1}}],["korean",{"2":{"176":1,"2880":2}}],["krush60",{"2":{"249":1}}],["kr",{"2":{"176":4}}],["knife",{"2":{"2273":2,"2414":1}}],["knife66",{"2":{"211":3}}],["knight",{"2":{"160":1,"2181":2,"2183":2,"2184":2,"2185":6,"2187":2,"2210":1,"2537":2,"2887":1}}],["knops",{"2":{"114":1}}],["knowledge",{"2":{"624":1,"754":1,"1339":1,"2269":1,"2471":1,"2922":1,"2923":2,"2925":1}}],["know",{"0":{"1333":1},"2":{"228":1,"245":1,"387":1,"391":1,"412":1,"494":1,"503":1,"760":2,"1326":1,"1328":1,"1336":1,"1354":1,"1422":2,"1425":1,"1641":1,"1679":1,"1752":1,"1799":1,"2050":1,"2263":1,"2274":1,"2404":1,"2572":1,"2609":1,"2621":2,"2627":1,"2633":1,"2637":1,"2922":1,"2930":1,"2932":1,"2936":1}}],["knows",{"2":{"49":1,"149":1,"718":1}}],["known",{"0":{"686":1,"1673":1,"2367":1},"1":{"2368":1},"2":{"37":1,"512":1,"611":1,"683":1,"686":1,"1194":1,"1211":1,"1284":1,"1547":1,"1586":1,"1617":1,"1955":1,"1958":1,"2258":1,"2569":1,"2627":1,"2667":1,"2721":1,"2749":2,"2827":1}}],["knobx1",{"2":{"328":1}}],["knobs",{"2":{"249":1}}],["knob",{"2":{"13":1}}],["kkatano",{"2":{"143":6,"149":2,"211":1}}],["kapton",{"2":{"2418":1}}],["kapcave",{"2":{"122":2,"134":1}}],["katakana",{"2":{"1355":1,"2508":2}}],["katana60",{"2":{"438":1,"2433":1}}],["karabiner",{"0":{"1356":1},"2":{"1355":1,"1356":4}}],["karn",{"2":{"249":1}}],["karlk90",{"2":{"163":1}}],["kana",{"2":{"222":1,"1790":1,"1791":2,"1793":1,"2860":2}}],["kangaroo",{"2":{"211":1}}],["kastenwagen",{"2":{"211":2}}],["kamigakushi",{"2":{"207":2,"211":1,"217":2}}],["ka2hiro",{"2":{"149":1}}],["kagamidget",{"2":{"143":2}}],["kagizaraya",{"2":{"143":3,"149":1,"241":1,"249":1}}],["kakunpc",{"2":{"143":11,"149":2}}],["kmac",{"2":{"241":4}}],["km",{"2":{"132":1,"176":1,"427":3,"428":1,"431":2,"435":2,"437":2,"438":1,"443":1,"445":1,"446":1,"447":1,"448":1,"450":3,"451":3,"468":1,"1385":1,"1521":1,"2266":3,"2375":1,"2425":1,"2516":1,"2580":1,"2587":1,"2588":1,"2609":1,"2622":2,"2666":1,"2707":1,"2745":1}}],["kyria",{"2":{"102":2,"114":3,"134":1,"222":2,"277":1}}],["k33",{"2":{"2787":4,"2789":1,"2930":2}}],["k32",{"2":{"2787":4,"2789":1,"2930":2}}],["k320",{"2":{"86":1,"102":2,"181":2,"191":1}}],["k31",{"2":{"2787":4,"2789":1,"2930":2}}],["k310",{"2":{"114":1,"181":2,"191":1}}],["k30",{"2":{"2787":4,"2789":1,"2930":2}}],["k3",{"2":{"328":1}}],["k34",{"2":{"222":1}}],["k3x0",{"2":{"102":1,"181":2}}],["kzar",{"2":{"92":1,"93":1}}],["kiiboom",{"2":{"2567":1}}],["kiibohd",{"0":{"2389":1},"2":{"50":1,"686":2,"2389":1}}],["kib",{"2":{"2403":1,"2483":1,"2501":3}}],["kit",{"2":{"674":1}}],["kira80",{"2":{"241":2}}],["kira",{"2":{"241":2,"249":1}}],["kira75",{"2":{"241":2}}],["kikoslab",{"2":{"222":1,"249":1}}],["kiko",{"2":{"211":1}}],["kicad",{"2":{"211":1}}],["kinds",{"2":{"1532":1,"2211":1,"2475":1}}],["kind",{"0":{"590":1,"1799":1},"1":{"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1},"2":{"1532":1,"1533":1,"2310":1}}],["king",{"2":{"176":1}}],["kintwin",{"2":{"222":1}}],["kint41",{"2":{"114":1,"2656":1}}],["kint",{"2":{"114":1,"134":1}}],["kint2pp",{"2":{"94":1}}],["kint36",{"2":{"93":1,"94":1,"114":1,"199":1,"2656":1}}],["kinetis",{"0":{"516":1},"2":{"114":1,"160":2,"191":1,"2389":1,"2669":1,"2700":1,"2795":1}}],["kinetic",{"0":{"1930":1},"2":{"74":1,"160":2,"175":2,"176":1,"222":2,"1928":1,"1930":3,"1933":1,"1934":1,"2016":1}}],["kinesis",{"2":{"93":2,"114":1,"211":1,"217":2,"222":3,"2656":2}}],["k",{"2":{"49":2,"65":1,"114":1,"143":2,"191":1,"236":1,"249":2,"266":8,"277":1,"285":2,"317":1,"369":1,"587":2,"1452":2,"1599":1,"1616":2,"1619":1,"2159":1,"2162":4,"2181":1,"2289":1,"2294":1,"2310":1,"2503":3,"2515":3,"2537":1,"2553":1,"2787":1,"2882":1,"2914":3}}],["kb2",{"2":{"616":2}}],["kb2040",{"0":{"1390":1},"2":{"163":1,"176":2,"322":2,"1386":1,"1388":3,"1391":1,"1394":1,"2695":1,"2888":1}}],["kb1",{"2":{"616":1}}],["kb16",{"2":{"176":1,"191":1,"249":1}}],["kb|user",{"0":{"307":1}}],["kb38",{"2":{"222":1,"266":1}}],["kb83",{"2":{"217":1,"222":1,"317":1}}],["kbo5000",{"2":{"199":1}}],["kbfirmware",{"0":{"448":1},"2":{"173":4,"448":2,"598":1,"2425":2,"2582":1,"2721":2}}],["kbd",{"2":{"1619":1}}],["kbdmania",{"2":{"241":2,"249":1}}],["kbd66",{"2":{"211":1}}],["kbd67mkiirgb",{"2":{"217":1}}],["kbd67",{"2":{"114":1,"217":1,"249":1}}],["kbdfans",{"2":{"143":1,"149":1,"191":1,"211":6,"217":2,"241":2,"249":1}}],["kb",{"0":{"650":1,"1545":1,"1902":1,"1906":1,"2146":1,"2150":1,"2335":1,"2921":1},"1":{"1903":1,"2147":1,"2336":1},"2":{"34":1,"70":1,"90":3,"105":4,"111":1,"125":2,"132":1,"185":2,"190":1,"191":3,"197":13,"199":3,"203":2,"211":1,"229":1,"230":1,"231":3,"266":1,"277":6,"285":1,"294":1,"317":1,"328":2,"427":6,"428":1,"435":4,"437":2,"438":2,"440":1,"441":1,"442":1,"443":1,"445":2,"446":1,"447":1,"448":1,"450":3,"451":3,"468":1,"568":1,"591":3,"623":4,"625":6,"628":1,"630":1,"634":1,"636":1,"640":1,"643":1,"644":1,"648":2,"650":1,"651":1,"652":1,"1348":1,"1385":1,"1412":3,"1414":3,"1422":2,"1426":1,"1441":2,"1485":1,"1521":1,"1622":2,"1635":1,"1636":1,"1638":2,"1662":1,"1792":2,"1793":1,"1844":2,"1849":2,"1948":2,"1952":2,"2014":2,"2019":2,"2020":1,"2036":1,"2037":1,"2066":2,"2072":2,"2266":3,"2270":1,"2303":1,"2375":1,"2425":1,"2433":2,"2441":4,"2446":1,"2509":4,"2515":4,"2516":1,"2577":1,"2580":1,"2587":1,"2588":1,"2609":1,"2622":2,"2645":4,"2666":1,"2707":1,"2721":2,"2722":1,"2745":1,"2749":1,"2750":4,"2751":1,"2754":1,"2933":4,"2941":1}}],["kc5",{"0":{"1835":1},"1":{"1836":1,"1837":1},"2":{"1836":1}}],["kc4",{"0":{"1832":1,"1835":1},"1":{"1833":1,"1834":1,"1836":1,"1837":1},"2":{"1833":1,"1836":1}}],["kc3",{"0":{"1829":1,"1832":1,"1835":1},"1":{"1830":1,"1831":1,"1833":1,"1834":1,"1836":1,"1837":1},"2":{"1830":1,"1833":1,"1836":1}}],["kc2",{"0":{"1826":1,"1829":1,"1832":1,"1835":1},"1":{"1827":1,"1828":1,"1830":1,"1831":1,"1833":1,"1834":1,"1836":1,"1837":1},"2":{"1827":1,"1830":1,"1833":1,"1836":1,"2302":3}}],["kc1",{"0":{"1826":1,"1829":1,"1832":1,"1835":1},"1":{"1827":1,"1828":1,"1830":1,"1831":1,"1833":1,"1834":1,"1836":1,"1837":1},"2":{"1374":1,"1827":1,"1830":1,"1833":1,"1836":1,"2302":3}}],["kc60",{"2":{"236":1,"2187":1}}],["kc",{"0":{"8":2,"89":1,"1457":1,"1458":1,"1459":1,"1460":1,"1461":4,"1823":1},"1":{"1824":1,"1825":1},"2":{"7":2,"8":3,"38":6,"89":1,"90":8,"94":1,"176":2,"188":3,"191":5,"194":5,"195":2,"196":9,"199":5,"202":3,"209":6,"231":16,"255":1,"307":6,"369":211,"559":3,"562":3,"587":338,"629":1,"630":1,"1326":7,"1327":3,"1344":2,"1347":3,"1348":5,"1350":1,"1351":6,"1358":1,"1374":71,"1375":5,"1377":9,"1378":14,"1413":1,"1416":4,"1417":4,"1421":2,"1425":2,"1443":4,"1448":2,"1450":1,"1451":10,"1452":4,"1457":6,"1458":1,"1459":4,"1460":1,"1461":1,"1466":8,"1484":3,"1485":1,"1497":1,"1498":1,"1499":1,"1504":3,"1510":1,"1511":8,"1526":2,"1527":3,"1529":1,"1532":2,"1584":6,"1587":13,"1588":3,"1591":2,"1594":10,"1596":6,"1597":3,"1598":7,"1599":19,"1606":3,"1611":5,"1612":9,"1616":19,"1619":1,"1657":2,"1661":4,"1662":6,"1666":3,"1667":1,"1684":1,"1689":2,"1735":1,"1744":2,"1746":6,"1747":4,"1749":8,"1751":3,"1758":15,"1761":1,"1765":2,"1771":6,"1801":9,"1804":3,"1806":3,"1807":3,"1824":1,"2037":3,"2073":1,"2159":40,"2160":11,"2161":11,"2162":3,"2164":1,"2165":3,"2168":1,"2169":1,"2170":10,"2215":6,"2252":34,"2253":9,"2297":2,"2302":6,"2305":2,"2308":2,"2309":2,"2310":12,"2311":7,"2312":2,"2320":3,"2358":4,"2374":8,"2427":1,"2466":1,"2502":2,"2503":36,"2504":24,"2505":34,"2506":13,"2507":23,"2508":36,"2509":64,"2510":63,"2511":37,"2512":3,"2515":329,"2528":3,"2534":69,"2535":72,"2539":41,"2544":2,"2549":7,"2551":10,"2553":72,"2554":22,"2556":1,"2558":41,"2559":73,"2560":2,"2562":7,"2563":7,"2564":4,"2644":2,"2744":3,"2778":1,"2787":8,"2789":1,"2877":1,"2899":2,"2901":2,"2903":3,"2904":9,"2905":14,"2906":9,"2907":19,"2908":16,"2909":9,"2910":6,"2911":7,"2912":8,"2913":2,"2914":18,"2916":5,"2917":19,"2919":3,"2930":5,"2931":17,"2932":1,"2941":3}}],["kent",{"2":{"2934":1}}],["kerpleplork",{"2":{"613":4}}],["kernels",{"2":{"2732":1}}],["kernel",{"0":{"2464":1},"2":{"199":1,"1314":1,"2515":1,"2710":1,"2731":1}}],["kept",{"2":{"586":1,"666":1,"717":1,"1675":1,"2030":1,"2588":1,"2700":1}}],["keaboard",{"2":{"253":2}}],["kezewa",{"2":{"241":2,"249":1}}],["kestra",{"2":{"211":1}}],["kegen",{"2":{"191":1,"211":1}}],["kelowna",{"2":{"143":2}}],["keeb",{"2":{"2748":6}}],["keebzdotnet",{"2":{"211":1}}],["keebs",{"2":{"149":8,"176":1}}],["keebio",{"0":{"45":1},"2":{"45":1,"114":3,"134":1,"191":1,"199":2,"222":1,"277":1,"285":1,"317":1,"328":1,"1385":1,"1387":2,"1402":2,"2271":1}}],["keeps",{"2":{"1377":1,"1378":2,"1656":1,"2568":1}}],["keeping",{"2":{"548":1,"751":1,"1344":1,"1929":1,"2293":1,"2448":1,"2895":1,"2910":1}}],["keep",{"2":{"6":1,"74":2,"113":1,"124":1,"194":1,"211":2,"328":1,"415":1,"520":2,"524":1,"535":1,"546":1,"559":1,"608":1,"613":1,"617":2,"644":1,"675":1,"676":2,"717":1,"1194":1,"1369":1,"1377":1,"1412":1,"1419":1,"1432":1,"1455":1,"1564":1,"1585":1,"1656":1,"1660":1,"1684":1,"1736":1,"1933":1,"1955":1,"2021":1,"2252":1,"2288":1,"2302":1,"2382":1,"2411":1,"2420":2,"2421":2,"2422":1,"2424":1,"2427":1,"2443":1,"2445":1,"2446":1,"2448":1,"2459":1,"2568":2,"2575":1,"2579":1,"2585":1,"2586":1,"2631":2,"2632":1,"2651":2,"2655":1,"2664":1,"2719":1,"2723":3,"2747":1,"2749":1,"2751":1,"2847":1,"2942":1}}],["keyunit",{"2":{"2862":4}}],["keyup",{"2":{"1374":1,"1456":1,"1458":1,"1661":2,"2215":2,"2847":2,"2864":2,"2871":2}}],["key3",{"2":{"2459":6}}],["key2",{"2":{"2459":10}}],["key0",{"2":{"2459":6}}],["key1",{"2":{"2294":1,"2459":6}}],["keylog",{"2":{"2882":2}}],["keyloggers",{"2":{"312":1}}],["keylogger",{"0":{"312":1},"2":{"317":1}}],["keylight",{"2":{"1841":1,"1846":1,"2061":1,"2069":1,"2073":1}}],["keyreleases",{"2":{"1846":2,"2069":2}}],["keyrepeating",{"2":{"1493":1,"1506":1,"1511":1}}],["keyrepeat",{"2":{"1492":1,"1493":1,"1505":1}}],["keyrecords",{"2":{"2035":1}}],["keyrecord",{"2":{"22":3,"149":1,"194":2,"195":2,"307":1,"324":1,"325":1,"591":2,"629":1,"630":2,"645":1,"1326":1,"1377":1,"1378":1,"1413":1,"1425":1,"1442":1,"1443":2,"1450":2,"1451":2,"1466":1,"1497":1,"1504":2,"1511":3,"1526":1,"1527":1,"1607":2,"1658":1,"1683":1,"1765":1,"1771":1,"1918":1,"1956":1,"2024":1,"2025":1,"2036":2,"2037":1,"2044":1,"2046":1,"2162":1,"2164":1,"2165":1,"2166":1,"2167":1,"2168":1,"2170":2,"2191":2,"2218":1,"2293":2,"2309":1,"2312":1,"2441":1,"2562":1,"2563":1,"2564":1,"2777":1,"2899":1,"2900":2,"2901":2,"2908":1,"2909":1,"2910":1,"2913":2,"2916":2,"2917":1,"2919":1,"2933":42}}],["keyed",{"2":{"667":1}}],["keyevent",{"2":{"211":1,"630":1,"2040":2,"2933":1}}],["key>",{"2":{"473":1,"495":2,"496":2}}],["key=value",{"2":{"431":1}}],["keydown",{"2":{"320":1,"1374":1,"1416":1,"1456":1,"1457":1,"1661":2,"2069":1,"2215":2,"2847":2,"2864":1,"2871":1,"2919":1}}],["keyten",{"2":{"300":2}}],["keypos",{"2":{"630":1,"2073":1,"2296":2,"2915":2}}],["keypads",{"2":{"266":1}}],["keypad",{"2":{"181":2,"222":1,"1348":1,"1354":1,"1771":1,"2502":1,"2506":1,"2510":1,"2511":19,"2515":20}}],["keypresses",{"0":{"1317":1},"2":{"289":1,"1416":1,"1451":1,"1655":1,"1846":1,"2069":1,"2176":1,"2269":1,"2677":1,"2821":1,"2914":1}}],["keypress",{"0":{"1326":1,"1327":1,"1328":1},"2":{"98":1,"328":1,"1326":1,"1374":1,"1421":1,"1487":1,"1656":1,"1658":1,"1674":1,"2069":1,"2293":1,"2540":30,"2644":30,"2822":1,"2863":1}}],["keyhive",{"2":{"159":10,"160":3}}],["keycap",{"2":{"2877":1}}],["keycaps",{"2":{"2286":1,"2798":1}}],["keycapsss",{"2":{"249":1}}],["keycult",{"2":{"308":1}}],["keychron",{"2":{"134":1,"176":1,"191":4,"211":2,"226":14,"236":5,"249":3,"266":2,"317":1}}],["keycode",{"0":{"16":2,"38":1,"157":1,"231":1,"283":1,"327":1,"604":1,"627":1,"628":1,"1327":1,"1425":1,"1812":1,"1818":1,"2023":1,"2219":1,"2294":1,"2344":1,"2357":1,"2813":1,"2931":1,"2941":1},"1":{"629":1,"630":1,"1813":1,"1814":1,"1819":1,"1820":1,"2345":1,"2346":1,"2358":1,"2359":1},"2":{"3":1,"7":1,"15":1,"16":1,"22":4,"38":1,"112":1,"133":1,"134":3,"156":3,"157":1,"160":2,"167":1,"182":4,"188":9,"191":15,"194":9,"195":5,"198":2,"199":7,"222":5,"231":25,"235":1,"236":1,"249":1,"255":2,"259":1,"266":2,"277":2,"285":6,"288":1,"294":1,"307":5,"308":4,"312":1,"317":1,"320":1,"324":3,"325":4,"333":1,"561":2,"562":3,"591":14,"597":6,"604":2,"626":2,"627":2,"629":3,"630":3,"645":1,"674":1,"683":1,"1319":1,"1326":2,"1327":6,"1342":1,"1345":1,"1353":2,"1358":3,"1374":1,"1377":4,"1378":4,"1413":4,"1416":1,"1417":4,"1425":7,"1442":2,"1443":7,"1450":14,"1451":5,"1455":1,"1459":1,"1461":1,"1466":3,"1485":6,"1497":2,"1504":5,"1511":13,"1512":2,"1515":1,"1520":1,"1523":1,"1524":1,"1526":2,"1527":15,"1532":3,"1533":3,"1587":2,"1588":2,"1594":3,"1597":1,"1599":2,"1600":1,"1606":2,"1607":2,"1611":3,"1612":3,"1616":1,"1619":1,"1627":1,"1657":2,"1661":1,"1683":1,"1684":2,"1733":1,"1734":1,"1750":1,"1751":6,"1758":5,"1760":1,"1765":6,"1771":2,"1800":1,"1806":2,"1812":1,"1813":2,"1818":1,"1819":2,"1820":1,"1823":1,"1824":1,"1827":2,"1830":3,"1833":4,"1836":5,"1917":1,"1918":2,"1919":1,"1920":1,"1923":1,"1956":2,"2024":2,"2025":2,"2030":1,"2036":2,"2037":3,"2044":3,"2046":2,"2073":1,"2157":2,"2158":1,"2159":1,"2160":11,"2161":3,"2162":5,"2164":2,"2165":2,"2166":2,"2167":3,"2168":7,"2169":6,"2170":11,"2191":4,"2192":1,"2210":1,"2212":1,"2215":5,"2218":3,"2250":1,"2252":3,"2253":3,"2293":3,"2302":7,"2305":1,"2309":4,"2311":5,"2312":2,"2314":1,"2323":3,"2344":1,"2345":2,"2357":1,"2358":2,"2359":1,"2374":39,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2411":1,"2441":1,"2464":2,"2465":2,"2466":1,"2513":1,"2542":1,"2547":2,"2549":3,"2552":3,"2556":1,"2557":1,"2559":1,"2560":4,"2562":5,"2563":5,"2564":2,"2644":1,"2720":1,"2722":1,"2745":1,"2777":2,"2778":1,"2781":1,"2782":1,"2783":1,"2847":1,"2861":4,"2862":1,"2877":3,"2878":1,"2899":2,"2900":4,"2901":5,"2908":2,"2909":2,"2910":3,"2912":3,"2913":12,"2916":6,"2917":8,"2919":4,"2930":1,"2931":1,"2933":41,"2941":13}}],["keycodes",{"0":{"3":1,"7":1,"15":1,"182":1,"188":1,"219":1,"254":1,"316":1,"591":1,"626":1,"1342":1,"1343":1,"1344":1,"1489":1,"1524":1,"1549":1,"1597":1,"1600":1,"1668":1,"1674":1,"1734":1,"1750":1,"1772":1,"1808":1,"1842":1,"1919":1,"1960":1,"2062":1,"2158":1,"2175":1,"2181":1,"2215":1,"2246":1,"2250":1,"2297":1,"2314":1,"2325":1,"2370":1,"2445":1,"2502":1,"2513":1,"2514":1,"2515":1,"2516":1,"2531":1,"2558":1,"2644":1,"2744":1,"2745":1,"2861":1,"2877":1},"1":{"627":1,"628":1,"629":1,"630":1,"1669":1,"1675":1,"1676":1,"1677":1,"1678":1,"1679":1,"1680":1,"1681":1,"1682":1,"2216":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2745":1,"2878":1,"2879":1,"2880":1},"2":{"3":1,"7":1,"15":1,"16":2,"38":1,"49":1,"74":1,"93":1,"94":1,"114":1,"119":1,"120":5,"149":2,"157":2,"160":2,"176":1,"182":4,"186":1,"188":25,"191":29,"194":1,"198":1,"199":8,"211":1,"219":1,"222":1,"231":3,"254":4,"255":1,"257":1,"258":1,"259":2,"266":7,"277":5,"283":6,"285":3,"303":1,"307":4,"308":1,"316":2,"317":2,"327":2,"328":1,"369":1,"373":4,"374":1,"562":2,"586":1,"591":4,"614":2,"627":4,"628":1,"629":1,"681":4,"1310":1,"1327":1,"1340":3,"1342":3,"1343":1,"1344":1,"1346":1,"1348":1,"1351":2,"1354":2,"1375":1,"1413":2,"1417":2,"1425":3,"1437":1,"1443":4,"1445":5,"1446":1,"1448":10,"1450":5,"1452":2,"1461":1,"1466":2,"1479":2,"1483":1,"1484":3,"1485":3,"1487":1,"1526":4,"1527":3,"1532":1,"1586":3,"1588":1,"1594":2,"1596":1,"1597":2,"1599":1,"1600":1,"1606":1,"1613":1,"1615":1,"1617":1,"1630":3,"1674":1,"1675":1,"1735":1,"1736":1,"1826":1,"1829":1,"1832":1,"1835":1,"1838":1,"1913":2,"1917":2,"1918":1,"1923":1,"1927":1,"1947":2,"1956":2,"1958":2,"2024":1,"2025":1,"2044":1,"2058":1,"2065":1,"2073":1,"2159":4,"2160":1,"2162":1,"2170":1,"2179":1,"2181":5,"2212":1,"2215":3,"2290":3,"2291":1,"2294":2,"2302":2,"2311":6,"2313":1,"2319":1,"2322":2,"2323":1,"2324":2,"2344":1,"2374":1,"2411":1,"2445":1,"2466":1,"2467":2,"2472":1,"2502":2,"2510":4,"2512":1,"2513":2,"2514":1,"2515":2,"2516":1,"2531":1,"2549":2,"2553":1,"2555":1,"2556":2,"2557":1,"2560":3,"2579":2,"2720":1,"2721":3,"2722":1,"2744":6,"2776":1,"2787":1,"2813":2,"2816":1,"2836":1,"2861":2,"2863":1,"2877":1,"2879":1,"2880":2,"2882":1,"2900":1,"2911":1,"2912":1,"2920":1,"2923":2,"2924":1,"2930":2,"2931":1,"2933":1,"2941":10}}],["keyword",{"2":{"103":1,"120":1,"126":1,"524":1,"1445":1}}],["key",{"0":{"15":1,"42":1,"99":1,"196":2,"202":1,"272":1,"478":1,"564":1,"668":1,"1347":1,"1353":1,"1357":1,"1366":1,"1384":1,"1490":1,"1504":1,"1507":1,"1508":1,"1509":1,"1510":1,"1605":1,"1606":1,"1611":1,"1612":1,"1625":1,"1683":1,"1732":1,"1736":1,"1737":1,"1739":1,"1740":1,"1741":1,"1742":1,"1743":1,"1751":1,"1756":1,"1799":1,"1804":1,"1806":1,"1823":1,"1934":1,"2036":1,"2040":1,"2156":1,"2157":1,"2164":1,"2167":1,"2168":1,"2300":1,"2462":1,"2526":1,"2529":1,"2542":1,"2784":1,"2814":1,"2815":1,"2818":1,"2826":1,"2863":1,"2909":1,"2912":1,"2920":2},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1733":1,"1734":1,"1735":1,"1737":1,"1738":1,"1739":1,"1740":2,"1741":2,"1742":2,"1743":2,"1744":1,"1745":1,"1746":1,"1747":1,"1748":1,"1749":1,"1750":1,"1751":1,"1752":1,"1753":1,"1754":1,"1755":1,"1756":1,"1757":1,"1758":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":2,"1825":2,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1,"2037":1,"2157":1,"2158":1,"2159":1,"2160":1,"2161":1,"2162":1,"2163":1,"2164":1,"2165":1,"2166":1,"2167":1,"2168":1,"2169":1,"2170":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"22":1,"38":3,"43":1,"50":1,"63":1,"73":2,"93":2,"99":6,"110":1,"112":14,"114":7,"119":1,"134":2,"149":5,"152":1,"175":1,"176":4,"188":2,"191":7,"194":12,"195":3,"196":3,"199":7,"201":1,"202":9,"203":5,"206":2,"211":8,"218":1,"222":5,"231":1,"236":1,"249":1,"255":2,"257":1,"258":1,"259":2,"266":3,"268":1,"272":8,"277":1,"285":1,"288":1,"289":3,"294":1,"297":1,"308":2,"312":2,"320":2,"328":1,"333":1,"372":3,"431":23,"435":1,"470":2,"474":3,"475":1,"482":1,"483":1,"494":3,"559":1,"561":1,"562":34,"567":1,"572":6,"586":4,"587":1,"597":4,"628":8,"629":2,"630":1,"645":4,"666":1,"667":1,"669":1,"671":1,"673":2,"674":3,"683":2,"717":1,"1309":1,"1326":3,"1345":1,"1347":4,"1350":1,"1353":2,"1355":3,"1358":1,"1361":1,"1367":1,"1374":3,"1378":5,"1384":1,"1406":1,"1407":18,"1410":14,"1413":1,"1415":1,"1416":6,"1417":1,"1421":2,"1427":1,"1443":1,"1444":1,"1448":8,"1450":4,"1451":2,"1452":3,"1458":1,"1459":2,"1466":1,"1479":2,"1480":1,"1483":1,"1484":1,"1486":1,"1487":2,"1489":1,"1490":3,"1491":1,"1492":10,"1493":4,"1494":1,"1495":1,"1497":2,"1503":1,"1504":6,"1511":7,"1512":6,"1516":4,"1517":1,"1519":2,"1523":1,"1526":1,"1549":1,"1583":5,"1584":6,"1587":5,"1588":2,"1589":3,"1591":1,"1592":1,"1594":5,"1596":1,"1598":2,"1599":3,"1603":3,"1605":1,"1606":6,"1608":2,"1609":1,"1610":1,"1611":9,"1612":8,"1613":2,"1618":2,"1619":35,"1620":1,"1626":1,"1627":1,"1630":1,"1655":1,"1656":1,"1657":1,"1658":1,"1661":1,"1665":2,"1666":3,"1668":1,"1670":1,"1674":1,"1683":1,"1684":3,"1732":4,"1733":3,"1734":2,"1735":4,"1736":7,"1738":2,"1739":2,"1740":3,"1743":1,"1744":6,"1746":16,"1747":5,"1749":7,"1750":6,"1751":9,"1752":5,"1753":3,"1754":9,"1755":6,"1756":12,"1757":8,"1758":3,"1759":5,"1760":2,"1761":7,"1765":3,"1772":1,"1799":2,"1801":2,"1803":1,"1804":7,"1805":6,"1806":2,"1807":1,"1808":1,"1814":1,"1821":1,"1840":6,"1841":2,"1842":1,"1843":8,"1927":2,"1928":2,"1929":3,"1930":1,"1931":4,"1933":5,"1934":2,"1950":1,"1958":2,"1960":1,"2023":1,"2024":1,"2025":2,"2030":7,"2031":7,"2034":1,"2037":1,"2039":5,"2040":5,"2044":5,"2060":6,"2061":2,"2062":1,"2063":13,"2064":3,"2065":1,"2069":1,"2073":1,"2074":1,"2156":9,"2157":5,"2158":4,"2159":8,"2160":9,"2161":2,"2162":1,"2163":3,"2164":6,"2165":2,"2166":2,"2167":9,"2168":8,"2169":5,"2170":1,"2175":1,"2181":1,"2218":1,"2219":1,"2246":1,"2249":4,"2252":15,"2253":7,"2257":1,"2265":5,"2266":1,"2269":2,"2286":1,"2288":1,"2291":2,"2293":4,"2294":5,"2295":1,"2297":3,"2301":1,"2302":13,"2303":8,"2309":1,"2310":16,"2311":3,"2312":12,"2313":1,"2320":6,"2323":2,"2325":1,"2337":3,"2338":1,"2339":1,"2369":1,"2370":1,"2377":1,"2383":2,"2384":1,"2411":8,"2422":1,"2427":1,"2459":5,"2461":2,"2462":5,"2463":2,"2464":1,"2467":2,"2503":1,"2504":1,"2505":1,"2506":1,"2507":3,"2508":1,"2509":2,"2510":1,"2511":1,"2512":3,"2513":4,"2514":2,"2515":7,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":4,"2527":1,"2528":1,"2529":2,"2530":1,"2531":4,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":5,"2543":1,"2544":2,"2545":1,"2547":2,"2548":1,"2553":5,"2554":1,"2558":1,"2559":8,"2560":1,"2562":1,"2563":2,"2564":1,"2569":1,"2599":1,"2605":1,"2610":1,"2632":1,"2643":10,"2644":4,"2645":4,"2669":1,"2676":1,"2714":1,"2721":2,"2745":1,"2781":1,"2784":1,"2785":3,"2787":2,"2788":8,"2789":4,"2790":2,"2792":2,"2813":1,"2814":2,"2815":1,"2816":1,"2817":1,"2818":3,"2822":1,"2824":3,"2826":1,"2827":5,"2832":2,"2833":1,"2835":3,"2836":1,"2844":1,"2847":6,"2853":2,"2856":1,"2861":1,"2862":24,"2863":3,"2864":1,"2865":1,"2866":1,"2867":2,"2869":2,"2871":1,"2877":1,"2878":1,"2883":1,"2887":1,"2899":4,"2901":6,"2902":13,"2903":4,"2904":4,"2905":6,"2906":4,"2907":3,"2908":28,"2909":18,"2910":4,"2911":6,"2912":5,"2913":9,"2914":10,"2915":11,"2916":1,"2917":7,"2918":1,"2919":4,"2920":3,"2924":1,"2929":2,"2930":1,"2932":2,"2933":2,"2941":2}}],["keyswitch",{"2":{"1621":1,"1625":1,"1661":1,"2421":2,"2422":3,"2424":1,"2427":5,"2459":5,"2865":1}}],["keyswitches",{"2":{"567":1,"1547":1,"2414":1}}],["keystrokes",{"2":{"1444":1,"1519":1,"2064":1,"2212":1,"2216":1,"2310":1,"2320":1,"2371":1,"2757":1}}],["keystroke",{"2":{"312":1,"1451":2}}],["keys",{"0":{"112":1,"347":1,"479":1,"1346":1,"1348":1,"1354":1,"1355":1,"1366":1,"1374":1,"1382":1,"1594":1,"1749":1,"1826":1,"1829":1,"1832":1,"1835":1,"1924":1,"1925":1,"1926":1,"1928":1,"2031":1,"2035":1,"2036":1,"2037":1,"2044":1,"2160":1,"2163":1,"2170":1,"2311":1,"2312":1,"2460":1,"2504":1,"2506":1,"2510":1,"2512":1,"2517":1,"2533":1,"2535":1,"2536":1,"2540":1,"2643":1,"2789":1,"2792":1,"2793":1,"2866":1,"2906":1},"1":{"1754":1,"1755":1,"1756":1,"1827":1,"1828":1,"1830":1,"1831":1,"1833":1,"1834":1,"1836":1,"1837":1,"1925":1,"1926":2,"1927":2,"1928":1,"1929":2,"1930":2,"1931":2,"1932":2,"1933":2,"1934":2,"1935":1,"2036":1,"2037":2,"2161":1,"2162":1,"2164":1,"2165":1,"2166":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2467":1,"2468":1,"2644":1,"2645":1},"2":{"7":2,"70":1,"74":1,"98":2,"112":2,"114":2,"119":2,"134":2,"143":4,"149":1,"160":1,"176":5,"182":2,"190":2,"191":6,"194":2,"196":3,"199":1,"201":1,"202":3,"211":6,"236":1,"255":1,"259":1,"263":1,"277":1,"289":1,"294":1,"297":2,"308":1,"316":1,"320":1,"431":1,"470":1,"475":1,"559":1,"562":4,"572":1,"582":1,"597":2,"603":1,"605":1,"667":1,"668":1,"671":1,"1346":2,"1348":1,"1350":2,"1353":1,"1355":2,"1359":2,"1361":1,"1375":2,"1378":1,"1382":1,"1407":1,"1410":1,"1415":1,"1416":1,"1419":1,"1428":1,"1446":1,"1448":3,"1451":2,"1452":1,"1462":1,"1464":1,"1467":1,"1484":1,"1486":1,"1493":3,"1497":6,"1498":1,"1500":1,"1501":1,"1504":2,"1507":1,"1508":1,"1509":1,"1510":1,"1511":4,"1512":1,"1513":1,"1514":1,"1515":1,"1516":2,"1526":1,"1527":3,"1547":1,"1585":1,"1587":2,"1588":2,"1591":6,"1592":1,"1594":2,"1596":5,"1598":1,"1602":1,"1603":3,"1605":1,"1606":10,"1613":1,"1616":1,"1619":1,"1655":1,"1657":1,"1684":7,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1735":3,"1736":4,"1749":1,"1754":1,"1755":2,"1757":4,"1758":1,"1759":2,"1761":1,"1799":1,"1801":3,"1804":1,"1805":2,"1807":1,"1843":1,"1924":1,"1925":3,"1926":1,"1928":6,"1931":1,"1932":1,"1934":1,"1935":2,"1958":1,"1996":1,"2000":1,"2030":3,"2031":1,"2035":4,"2036":2,"2037":2,"2040":2,"2050":1,"2063":4,"2064":4,"2073":3,"2159":2,"2160":1,"2162":2,"2163":3,"2164":1,"2165":1,"2166":3,"2167":1,"2170":4,"2172":1,"2248":1,"2251":1,"2252":10,"2253":2,"2262":1,"2285":1,"2286":2,"2287":1,"2288":4,"2289":2,"2291":3,"2293":10,"2294":4,"2301":1,"2302":4,"2310":1,"2312":4,"2313":1,"2323":2,"2411":1,"2414":1,"2425":1,"2427":1,"2445":1,"2459":5,"2468":1,"2513":3,"2514":1,"2531":3,"2533":1,"2534":1,"2540":4,"2546":1,"2548":3,"2549":1,"2551":1,"2552":1,"2553":1,"2554":2,"2563":1,"2572":1,"2578":1,"2579":1,"2605":3,"2610":1,"2643":9,"2644":5,"2645":1,"2714":2,"2744":1,"2776":1,"2783":1,"2784":1,"2787":2,"2788":1,"2789":2,"2790":2,"2792":1,"2793":3,"2797":1,"2801":1,"2818":1,"2834":1,"2844":1,"2854":1,"2862":1,"2866":2,"2867":1,"2879":1,"2882":1,"2883":1,"2898":1,"2899":1,"2900":5,"2901":7,"2902":3,"2908":6,"2909":2,"2911":3,"2913":5,"2914":5,"2915":5,"2917":1,"2919":2,"2920":1,"2929":1,"2930":2}}],["keymapping",{"2":{"1356":1}}],["keymap=",{"2":{"2576":1}}],["keymap=skully",{"2":{"481":1}}],["keymap=none",{"2":{"480":1,"481":1}}],["keymap=default",{"2":{"427":1,"471":1,"472":1,"474":1,"481":1}}],["keymap>",{"2":{"427":2,"450":1,"451":1,"2375":1,"2400":1,"2580":1,"2587":1,"2588":1,"2607":1,"2609":1}}],["keymap",{"0":{"5":1,"272":1,"443":1,"447":1,"557":1,"596":1,"597":1,"598":1,"625":1,"673":1,"1341":1,"1345":1,"1402":1,"1427":1,"1429":1,"1439":1,"2408":1,"2412":1,"2546":1,"2547":1,"2548":1,"2550":1,"2577":1,"2578":1,"2587":1,"2588":1,"2599":1,"2603":1,"2623":1,"2720":1,"2816":1},"1":{"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1352":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1428":1,"1429":1,"1430":2,"1431":1,"1432":1,"1433":1,"2547":1,"2548":2,"2549":2,"2550":1,"2551":2,"2552":2,"2553":2,"2554":2},"2":{"4":1,"5":4,"18":4,"31":1,"32":1,"34":1,"36":1,"45":1,"48":1,"55":1,"75":2,"86":1,"89":1,"90":1,"92":4,"93":3,"94":1,"114":19,"119":2,"120":3,"123":1,"125":7,"133":1,"134":7,"149":5,"154":1,"160":4,"173":1,"176":19,"185":7,"189":1,"191":10,"199":14,"202":2,"206":1,"211":14,"213":1,"218":1,"222":6,"228":1,"229":1,"236":7,"241":1,"249":7,"253":1,"255":2,"256":1,"266":7,"270":1,"272":2,"273":1,"277":6,"281":1,"284":1,"285":4,"288":1,"294":4,"307":3,"308":6,"317":3,"323":1,"328":3,"333":6,"361":1,"369":2,"370":1,"371":2,"372":2,"374":1,"387":1,"408":1,"427":15,"428":3,"431":7,"434":1,"435":4,"436":1,"437":5,"438":4,"443":6,"445":6,"447":5,"450":7,"451":7,"452":3,"460":1,"468":1,"471":4,"472":1,"474":1,"479":1,"480":1,"481":2,"482":2,"483":4,"498":2,"525":3,"553":1,"554":1,"557":1,"559":1,"579":3,"583":1,"584":2,"585":1,"586":8,"587":8,"590":2,"591":2,"594":1,"595":1,"596":1,"598":4,"605":1,"613":2,"616":1,"625":4,"627":2,"630":2,"634":1,"636":1,"640":1,"643":1,"644":1,"645":3,"648":1,"652":1,"658":1,"671":2,"673":1,"1312":1,"1319":2,"1326":1,"1341":1,"1344":1,"1345":4,"1350":1,"1351":1,"1354":1,"1385":2,"1387":2,"1402":2,"1413":4,"1414":1,"1415":1,"1417":1,"1419":1,"1425":1,"1426":2,"1427":4,"1428":1,"1429":1,"1433":1,"1434":3,"1435":2,"1436":1,"1437":2,"1441":9,"1442":1,"1443":11,"1445":3,"1450":2,"1453":2,"1466":1,"1478":1,"1479":1,"1481":1,"1485":1,"1486":1,"1494":1,"1496":1,"1497":1,"1515":1,"1521":2,"1526":1,"1588":1,"1595":1,"1596":1,"1597":1,"1600":1,"1616":4,"1619":1,"1621":4,"1622":2,"1627":4,"1628":3,"1630":1,"1631":1,"1632":1,"1634":5,"1655":1,"1656":1,"1661":4,"1662":2,"1666":1,"1695":1,"1733":1,"1738":1,"1746":1,"1760":1,"1761":1,"1764":1,"1765":1,"1770":1,"1792":1,"1800":1,"1844":2,"1845":2,"1849":1,"1904":1,"1909":1,"1917":1,"1926":1,"1927":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1939":2,"1952":1,"1956":1,"1995":2,"2031":1,"2032":1,"2036":1,"2042":1,"2043":1,"2044":1,"2050":1,"2066":2,"2068":2,"2072":1,"2073":1,"2148":1,"2153":1,"2157":1,"2160":1,"2163":1,"2179":1,"2181":1,"2189":1,"2191":1,"2218":1,"2249":2,"2266":1,"2270":1,"2277":2,"2286":1,"2291":2,"2295":2,"2298":1,"2302":3,"2305":3,"2310":5,"2311":1,"2312":2,"2313":1,"2319":1,"2322":4,"2323":5,"2324":1,"2389":1,"2393":2,"2395":2,"2397":2,"2400":6,"2403":4,"2407":2,"2408":6,"2409":2,"2410":6,"2411":5,"2412":1,"2422":1,"2427":1,"2433":1,"2438":2,"2439":3,"2440":2,"2441":1,"2472":1,"2497":1,"2513":1,"2514":1,"2516":1,"2547":3,"2548":4,"2550":3,"2551":2,"2555":2,"2559":1,"2560":1,"2572":1,"2576":2,"2577":8,"2578":4,"2580":2,"2583":4,"2587":7,"2588":4,"2591":2,"2596":1,"2598":7,"2599":4,"2600":2,"2601":6,"2602":1,"2603":3,"2607":1,"2609":2,"2622":1,"2623":1,"2656":1,"2666":2,"2720":2,"2721":10,"2722":5,"2744":2,"2745":1,"2750":2,"2787":2,"2789":2,"2862":2,"2877":1,"2878":5,"2879":2,"2880":71,"2887":2,"2899":1,"2901":2,"2908":1,"2909":1,"2910":1,"2912":1,"2915":3,"2916":1,"2917":1,"2919":1,"2923":1,"2930":2,"2931":1,"2932":1,"2933":1,"2940":1,"2941":1}}],["keymaps",{"0":{"17":1,"36":1,"120":1,"265":1,"275":1,"440":1,"585":1,"1433":1,"1434":1,"1445":1,"1449":1,"1453":1,"2552":1},"1":{"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"1435":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1,"1446":1,"1447":1,"1448":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1455":1,"1456":1,"1457":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1,"2553":1,"2554":1},"2":{"0":1,"2":1,"3":1,"4":2,"5":1,"7":1,"8":1,"9":1,"15":1,"17":2,"19":1,"32":1,"36":3,"39":1,"52":1,"60":1,"65":1,"73":1,"74":1,"75":2,"107":1,"114":3,"125":1,"134":1,"149":2,"154":1,"156":2,"160":2,"167":1,"173":2,"176":3,"182":2,"185":1,"191":8,"199":4,"201":1,"211":2,"213":4,"220":1,"222":1,"224":2,"228":5,"231":1,"232":1,"236":2,"238":1,"249":7,"265":5,"266":5,"268":2,"275":3,"277":1,"283":1,"285":2,"317":1,"333":1,"368":1,"374":1,"393":1,"408":1,"410":2,"414":1,"427":4,"428":1,"435":2,"437":1,"440":2,"445":1,"447":1,"555":2,"576":2,"586":5,"587":2,"613":1,"616":1,"617":2,"625":1,"672":1,"673":1,"698":1,"1326":1,"1328":1,"1340":3,"1341":1,"1345":1,"1387":1,"1427":1,"1436":1,"1439":1,"1443":2,"1450":3,"1474":2,"1627":1,"1918":1,"2047":1,"2286":1,"2287":1,"2305":1,"2312":1,"2400":2,"2403":1,"2407":2,"2409":1,"2410":3,"2438":3,"2439":2,"2440":2,"2445":1,"2546":1,"2547":1,"2552":4,"2572":1,"2577":1,"2578":1,"2579":1,"2583":7,"2585":2,"2587":2,"2588":1,"2589":1,"2590":1,"2603":1,"2611":1,"2720":6,"2721":5,"2722":4,"2861":1,"2923":1,"2924":2,"2925":1,"2931":1}}],["keyboard=true",{"2":{"1319":1}}],["keyboard=clueboard",{"2":{"471":1,"472":1,"481":1,"2576":1}}],["keyboard>",{"2":{"427":4,"428":1,"450":1,"451":1,"621":1,"1429":1,"1430":2,"2037":1,"2375":1,"2400":1,"2577":1,"2580":1,"2587":1,"2588":1,"2607":1,"2609":1,"2622":1}}],["keyboard|keymap|kbfirmware",{"0":{"173":1},"2":{"176":1}}],["keyboardio",{"2":{"37":2,"176":1}}],["keyboard",{"0":{"29":1,"37":1,"44":1,"55":1,"59":1,"86":1,"102":1,"122":1,"143":1,"159":1,"168":1,"181":1,"197":1,"207":1,"217":1,"226":1,"241":1,"253":1,"262":1,"270":1,"281":1,"291":1,"300":1,"311":1,"322":1,"347":1,"376":1,"442":1,"446":1,"555":1,"565":1,"578":1,"594":1,"595":1,"600":1,"624":1,"631":1,"632":1,"633":1,"634":1,"638":1,"639":1,"640":1,"644":1,"646":1,"648":1,"649":1,"652":1,"674":1,"1317":1,"1338":1,"1361":1,"1400":1,"1431":1,"1446":1,"1462":1,"1464":1,"1637":1,"1793":1,"1795":1,"1925":1,"2018":1,"2020":1,"2050":1,"2051":1,"2254":1,"2286":1,"2407":1,"2431":1,"2432":1,"2434":1,"2436":1,"2438":1,"2441":1,"2442":1,"2444":1,"2446":1,"2459":1,"2469":1,"2604":1,"2605":1,"2606":1,"2608":1,"2609":1,"2656":1,"2697":1,"2707":1,"2709":1,"2721":1,"2774":1,"2781":1,"2786":1,"2873":1,"2878":1},"1":{"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"45":1,"60":1,"566":1,"567":1,"568":1,"625":1,"632":1,"633":2,"634":2,"635":1,"636":1,"637":1,"638":1,"639":2,"640":2,"645":1,"647":1,"648":1,"650":1,"651":1,"652":1,"1339":1,"1401":1,"1432":1,"1433":1,"1926":1,"1927":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2260":1,"2261":1,"2262":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2268":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2433":1,"2434":1,"2435":1,"2436":1,"2437":2,"2438":2,"2439":2,"2440":2,"2441":2,"2442":2,"2443":1,"2444":1,"2445":2,"2446":1,"2447":1,"2448":1,"2449":1,"2450":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1,"2605":1,"2606":1,"2607":2,"2608":2,"2609":1,"2610":1,"2708":1,"2709":1,"2710":2,"2711":2,"2712":2,"2713":2,"2714":2,"2715":1,"2716":1,"2717":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"4":2,"14":2,"31":2,"34":3,"36":1,"50":6,"55":1,"56":1,"62":1,"67":3,"70":5,"74":1,"75":2,"76":2,"82":2,"86":6,"90":3,"92":1,"93":2,"94":3,"99":1,"102":2,"105":4,"107":1,"110":2,"111":2,"112":1,"114":7,"116":2,"119":1,"120":1,"122":2,"124":1,"125":5,"133":4,"134":10,"138":1,"143":4,"149":14,"159":2,"160":3,"168":2,"169":1,"173":2,"176":8,"181":2,"184":1,"185":5,"191":10,"197":2,"199":6,"201":3,"204":1,"207":2,"209":3,"211":10,"217":3,"218":1,"221":2,"222":11,"226":2,"229":3,"233":2,"234":1,"236":11,"238":1,"240":1,"241":4,"249":12,"253":4,"255":1,"262":3,"263":2,"265":1,"266":67,"270":4,"277":7,"281":4,"285":4,"291":2,"293":1,"294":13,"300":2,"305":1,"306":1,"308":8,"311":2,"312":2,"314":1,"315":1,"317":4,"322":2,"328":4,"332":2,"333":4,"347":1,"361":1,"363":1,"367":1,"369":4,"374":2,"376":2,"378":1,"390":2,"392":1,"393":1,"427":7,"428":2,"431":2,"432":2,"435":7,"437":1,"438":4,"440":3,"441":2,"442":3,"443":4,"445":1,"446":4,"448":4,"450":6,"451":6,"452":3,"460":1,"468":1,"471":4,"472":2,"478":1,"479":1,"482":2,"483":6,"494":2,"553":3,"554":1,"555":2,"559":8,"563":2,"565":2,"568":1,"570":2,"572":7,"573":4,"576":3,"578":3,"585":1,"586":5,"587":2,"590":2,"591":6,"592":3,"594":4,"597":1,"613":2,"616":5,"620":1,"621":1,"622":1,"623":3,"624":2,"625":4,"630":1,"631":4,"633":3,"634":3,"636":1,"637":6,"638":1,"639":1,"640":3,"641":2,"643":1,"644":1,"645":1,"646":1,"647":2,"648":1,"649":3,"652":1,"658":1,"663":1,"666":3,"671":2,"673":1,"674":6,"682":2,"683":5,"684":6,"686":2,"717":1,"730":1,"731":1,"743":2,"750":1,"751":1,"752":1,"753":1,"755":1,"801":1,"802":1,"827":1,"828":1,"859":1,"860":1,"889":1,"890":1,"924":1,"925":1,"958":1,"959":1,"992":1,"993":1,"1026":1,"1027":1,"1060":1,"1061":1,"1094":1,"1095":1,"1128":1,"1129":1,"1162":1,"1163":1,"1189":1,"1192":1,"1195":1,"1198":2,"1200":3,"1201":3,"1215":1,"1216":1,"1296":1,"1300":1,"1309":1,"1310":1,"1312":1,"1316":1,"1317":3,"1319":2,"1320":1,"1321":1,"1322":1,"1329":1,"1332":1,"1339":1,"1343":1,"1346":1,"1348":1,"1349":1,"1350":1,"1353":3,"1354":1,"1355":4,"1356":2,"1358":2,"1359":1,"1361":2,"1362":5,"1365":1,"1369":1,"1373":2,"1375":2,"1377":1,"1378":1,"1385":1,"1387":2,"1394":1,"1400":2,"1402":1,"1404":3,"1407":1,"1410":1,"1412":1,"1413":3,"1414":1,"1415":1,"1416":1,"1418":1,"1419":1,"1421":1,"1422":4,"1426":1,"1427":1,"1428":4,"1429":1,"1430":1,"1432":7,"1433":1,"1434":1,"1435":1,"1443":6,"1444":1,"1445":1,"1448":1,"1450":1,"1455":2,"1467":1,"1474":1,"1479":2,"1480":1,"1484":1,"1485":2,"1486":5,"1487":1,"1491":1,"1516":1,"1517":1,"1521":1,"1545":1,"1547":1,"1550":1,"1556":2,"1557":1,"1562":2,"1563":1,"1583":1,"1584":1,"1586":1,"1587":2,"1617":1,"1619":4,"1622":1,"1630":1,"1631":1,"1632":1,"1638":6,"1655":4,"1660":2,"1662":3,"1665":1,"1667":1,"1669":1,"1675":2,"1681":1,"1695":1,"1696":1,"1736":3,"1754":3,"1755":3,"1756":1,"1757":2,"1758":1,"1762":1,"1790":3,"1791":1,"1792":4,"1793":1,"1794":1,"1795":2,"1796":1,"1797":1,"1840":9,"1841":1,"1843":1,"1844":3,"1846":2,"1849":1,"1902":1,"1905":1,"1906":1,"1911":1,"1918":1,"1924":1,"1925":1,"1938":1,"1939":3,"1942":5,"1951":1,"1952":1,"1954":2,"1955":4,"1956":1,"1979":2,"1982":1,"1983":1,"1984":1,"1985":1,"2009":1,"2014":1,"2017":1,"2019":2,"2020":1,"2028":1,"2030":2,"2036":1,"2047":1,"2050":4,"2051":1,"2060":9,"2061":1,"2063":6,"2064":1,"2066":3,"2069":2,"2072":1,"2073":1,"2074":1,"2075":1,"2146":1,"2149":1,"2150":1,"2155":1,"2162":4,"2172":1,"2173":1,"2178":3,"2179":1,"2188":1,"2189":6,"2190":1,"2191":1,"2207":1,"2208":1,"2210":2,"2211":1,"2216":2,"2242":1,"2257":1,"2258":1,"2261":2,"2262":2,"2265":2,"2266":5,"2267":1,"2268":2,"2269":9,"2270":9,"2271":2,"2274":1,"2277":4,"2280":5,"2281":1,"2285":5,"2286":3,"2287":4,"2290":3,"2291":2,"2295":1,"2298":2,"2301":1,"2308":2,"2317":1,"2318":1,"2324":3,"2335":1,"2370":1,"2375":1,"2379":1,"2383":2,"2393":3,"2395":3,"2397":3,"2398":1,"2400":6,"2405":2,"2407":8,"2409":3,"2410":11,"2411":7,"2412":3,"2414":2,"2416":5,"2419":2,"2424":1,"2425":7,"2426":1,"2427":4,"2428":1,"2429":2,"2431":1,"2433":2,"2434":3,"2435":13,"2436":5,"2437":1,"2438":7,"2439":4,"2440":3,"2441":2,"2442":2,"2443":1,"2444":1,"2445":3,"2446":1,"2448":1,"2449":1,"2451":1,"2459":4,"2462":1,"2463":2,"2464":2,"2465":1,"2467":1,"2470":1,"2478":3,"2480":4,"2482":3,"2484":1,"2486":1,"2488":1,"2490":1,"2497":1,"2502":1,"2510":1,"2513":3,"2516":5,"2528":1,"2531":2,"2551":1,"2552":1,"2553":2,"2556":1,"2557":1,"2560":1,"2567":1,"2572":5,"2573":1,"2575":1,"2576":5,"2577":1,"2578":1,"2580":1,"2581":1,"2582":2,"2583":1,"2588":1,"2590":1,"2592":1,"2598":1,"2599":1,"2602":1,"2604":1,"2605":7,"2606":2,"2607":2,"2609":5,"2610":3,"2612":1,"2622":4,"2643":1,"2644":1,"2645":1,"2656":1,"2662":1,"2666":2,"2667":2,"2668":5,"2669":2,"2670":2,"2671":1,"2673":1,"2687":1,"2694":1,"2707":11,"2708":2,"2709":2,"2710":8,"2711":2,"2713":1,"2714":1,"2719":2,"2720":1,"2721":26,"2722":4,"2745":5,"2746":1,"2749":2,"2750":4,"2754":1,"2757":1,"2781":1,"2782":1,"2787":6,"2788":8,"2789":1,"2792":1,"2793":3,"2797":2,"2798":1,"2799":1,"2801":1,"2803":1,"2805":2,"2806":2,"2812":1,"2816":1,"2819":1,"2820":1,"2823":1,"2825":1,"2830":2,"2831":2,"2838":1,"2841":1,"2842":1,"2844":4,"2845":7,"2846":2,"2847":1,"2862":4,"2864":1,"2871":1,"2873":2,"2875":5,"2877":5,"2878":3,"2879":1,"2887":1,"2899":2,"2915":4,"2917":1,"2920":2,"2921":1,"2923":1,"2925":4,"2928":6,"2929":2,"2930":3,"2932":1,"2933":1,"2940":1,"2941":1}}],["keyboards",{"0":{"41":1,"54":1,"116":1,"439":1,"616":1,"625":1,"1427":1,"1439":1,"1584":1,"1660":1,"2419":1,"2787":1},"1":{"42":1,"43":1,"55":1,"56":1,"57":1,"58":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1},"2":{"2":1,"14":1,"28":1,"30":1,"33":1,"35":2,"36":3,"37":1,"43":3,"49":1,"50":1,"58":1,"65":2,"67":1,"69":2,"70":5,"73":2,"74":3,"86":3,"90":1,"92":1,"93":2,"102":1,"107":3,"109":1,"110":1,"114":9,"116":1,"118":1,"122":1,"123":1,"124":2,"132":1,"134":5,"141":1,"143":1,"149":14,"159":1,"160":2,"168":1,"169":2,"173":2,"176":2,"181":1,"191":4,"197":1,"199":2,"201":3,"209":1,"211":3,"213":2,"218":1,"221":1,"222":5,"235":1,"236":4,"240":2,"249":17,"251":1,"262":1,"266":8,"277":3,"279":1,"285":3,"294":1,"308":4,"317":4,"328":3,"333":1,"338":1,"373":4,"414":1,"427":5,"428":1,"430":1,"431":2,"432":2,"435":1,"437":1,"439":2,"446":1,"447":1,"448":1,"486":1,"505":1,"556":2,"559":2,"563":1,"565":1,"566":1,"572":1,"576":1,"578":1,"586":1,"587":1,"595":1,"609":1,"613":1,"616":4,"617":3,"621":1,"625":1,"663":5,"664":1,"672":1,"683":1,"687":1,"698":1,"1189":1,"1192":1,"1195":2,"1198":2,"1203":1,"1205":1,"1206":1,"1315":1,"1316":1,"1318":1,"1332":1,"1340":3,"1347":1,"1351":1,"1353":1,"1385":1,"1389":1,"1390":1,"1401":1,"1410":2,"1411":2,"1427":1,"1433":1,"1435":1,"1436":1,"1442":1,"1443":1,"1474":2,"1484":1,"1486":1,"1511":1,"1517":3,"1547":1,"1548":1,"1550":1,"1552":1,"1583":3,"1589":1,"1616":1,"1617":1,"1620":1,"1675":1,"1790":1,"1846":1,"1942":1,"1943":1,"1950":1,"2014":2,"2029":1,"2045":1,"2069":1,"2073":1,"2074":1,"2178":1,"2179":2,"2182":1,"2189":2,"2191":1,"2208":1,"2254":4,"2258":2,"2265":1,"2271":1,"2280":1,"2285":1,"2287":1,"2370":1,"2371":1,"2375":2,"2376":2,"2378":1,"2380":1,"2387":1,"2389":1,"2390":1,"2393":1,"2395":1,"2400":1,"2403":1,"2405":1,"2406":1,"2407":2,"2409":2,"2410":4,"2411":1,"2416":1,"2425":1,"2428":1,"2432":1,"2433":1,"2435":3,"2436":1,"2439":13,"2440":13,"2447":3,"2451":1,"2459":1,"2460":1,"2470":1,"2493":1,"2511":1,"2515":1,"2546":1,"2567":2,"2570":1,"2576":3,"2577":3,"2580":1,"2582":1,"2583":1,"2587":1,"2605":1,"2609":1,"2611":1,"2622":3,"2693":1,"2695":3,"2696":2,"2697":1,"2698":1,"2699":1,"2700":1,"2707":3,"2719":1,"2721":3,"2722":1,"2748":6,"2786":1,"2787":3,"2826":1,"2844":3,"2845":1,"2846":1,"2864":1,"2871":1,"2877":1,"2887":1,"2915":1,"2925":3,"2926":1}}],["g5",{"2":{"1919":1,"2532":1}}],["g3",{"2":{"1919":1,"2532":1}}],["g1",{"2":{"1919":1,"2532":1}}],["g♯",{"2":{"1919":6,"2532":6}}],["gs5",{"2":{"1919":1,"2532":1}}],["gs4",{"2":{"1919":1,"2532":1}}],["gs3",{"2":{"1919":1,"2532":1}}],["gs2",{"2":{"1919":1,"2532":1}}],["gs1",{"2":{"1919":1,"2532":1}}],["gs",{"2":{"1919":1,"2532":1}}],["gskt00",{"2":{"122":2}}],["g♭",{"2":{"1919":6,"2532":6}}],["gb5",{"2":{"1919":1,"2532":1}}],["gb4",{"2":{"1919":1,"2532":1}}],["gb3",{"2":{"1919":1,"2532":1}}],["gb2",{"2":{"1919":1,"2532":1}}],["gb1",{"2":{"1919":1,"2532":1}}],["gb",{"2":{"1622":1,"1919":1,"2532":1}}],["gboy",{"2":{"191":1}}],["gboards",{"2":{"143":4,"149":1,"160":1,"191":1,"1616":2}}],["gnd",{"2":{"695":1,"696":1,"713":8,"719":1,"826":1,"855":1,"887":1,"919":8,"954":8,"988":1,"1022":1,"1056":1,"1090":8,"1124":8,"1158":8,"1191":1,"1194":1,"1197":1,"1214":1,"1310":1,"1675":1,"1793":1,"2208":1,"2259":1,"2260":1,"2376":1,"2379":1,"2381":1,"2382":1,"2384":1,"2386":1,"2388":1,"2391":1,"2424":1,"2478":2,"2480":4,"2482":2,"2484":2,"2486":2,"2488":2,"2500":2,"2605":1,"2667":1,"2684":6}}],["gnu++14",{"2":{"176":1}}],["gnu11",{"2":{"176":1}}],["gnu",{"0":{"386":1},"2":{"134":1,"236":3,"378":1,"382":1,"1438":4,"2450":1,"2725":4}}],["gd25q64cs",{"2":{"2698":2}}],["gdb",{"2":{"384":1,"391":1,"2667":3,"2939":1}}],["gd32v",{"2":{"191":1,"686":2}}],["gd32vf103",{"2":{"130":2,"134":1,"176":2,"519":1}}],["gmt",{"2":{"371":2,"373":2}}],["gmmk2",{"2":{"236":1}}],["gmmk",{"2":{"102":3,"114":11,"134":1,"149":2,"159":4,"160":2,"176":3,"191":2,"199":1,"222":1,"2390":1}}],["gp3",{"2":{"2695":1}}],["gp8",{"2":{"2687":1}}],["gpx",{"2":{"2687":1}}],["gp0",{"2":{"1986":1,"2695":2}}],["gp19",{"2":{"2695":1}}],["gp18",{"2":{"2695":1}}],["gp17",{"2":{"2693":1}}],["gp1",{"2":{"1986":1,"2695":2}}],["gpt",{"2":{"714":8,"715":4,"1563":4}}],["gptd15",{"2":{"1563":1}}],["gptd8",{"2":{"719":1}}],["gptd8tim8",{"2":{"713":1}}],["gptd6",{"2":{"715":1}}],["gptd6tim6",{"2":{"713":1}}],["gptd9",{"2":{"714":1}}],["gptd7tim7",{"2":{"713":1}}],["gp20",{"2":{"2695":1}}],["gp2",{"2":{"2695":1}}],["gp29",{"2":{"693":1}}],["gp28",{"2":{"693":1}}],["gp27",{"2":{"693":1}}],["gp26",{"2":{"693":1}}],["gpl3",{"2":{"2719":1}}],["gpl2+",{"2":{"2719":1,"2721":1}}],["gpl2",{"2":{"2719":1}}],["gplv3",{"2":{"2450":2}}],["gplv2",{"0":{"2725":1},"2":{"2450":1}}],["gpl",{"2":{"284":1,"579":1,"1438":1,"1630":2,"2450":1,"2567":1,"2568":1,"2719":1,"2725":1,"2726":2,"2727":1,"2728":3,"2729":2,"2730":1,"2734":3,"2735":2,"2737":1,"2740":2,"2741":3,"2742":1,"2743":3}}],["gpioa",{"2":{"1393":1}}],["gpiob",{"2":{"769":2}}],["gpios",{"2":{"758":1,"2668":1,"2669":1,"2670":1}}],["gpiov3",{"2":{"718":1}}],["gpiov2",{"2":{"718":1}}],["gpiov1",{"2":{"718":1}}],["gpiof",{"2":{"65":1}}],["gpio",{"0":{"148":1,"243":1,"331":1,"757":1,"1624":1,"2686":1},"1":{"758":1,"759":1,"760":1,"2687":1,"2688":1},"2":{"49":1,"64":1,"94":1,"114":3,"133":1,"134":1,"149":2,"243":13,"244":1,"249":2,"266":4,"277":1,"308":1,"331":3,"333":1,"633":5,"637":3,"690":1,"701":2,"724":1,"728":3,"736":1,"742":1,"757":1,"758":13,"759":1,"769":2,"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":2,"1197":2,"1198":1,"1202":2,"1213":1,"1245":2,"1249":1,"1280":1,"1282":1,"1287":1,"1294":3,"1295":2,"1395":2,"1401":1,"1560":1,"1564":2,"1620":1,"1693":4,"1793":6,"1986":2,"2281":3,"2669":2,"2670":2,"2684":1,"2686":1,"2687":3,"2688":3,"2693":1,"2697":1,"2719":1,"2848":2,"2849":3,"2850":3,"2851":1,"2856":1,"2858":2,"2860":6,"2865":4,"2868":2,"2869":4,"2873":3,"2876":1}}],["gc9a01",{"2":{"277":1,"2746":2,"2749":7}}],["gc9107",{"2":{"277":1}}],["gc9xxx",{"2":{"277":1}}],["gcc15",{"2":{"308":1}}],["gcc10",{"2":{"134":1}}],["gcc",{"2":{"73":1,"132":1,"134":2,"222":1,"381":1,"387":1,"2410":1,"2655":1}}],["gk61",{"2":{"236":3,"294":1}}],["g2",{"2":{"211":2,"1919":1,"2532":1}}],["g60",{"2":{"211":2}}],["g431",{"2":{"249":1}}],["g4",{"2":{"191":1,"1919":1,"2532":1}}],["g474",{"2":{"49":1}}],["gif",{"2":{"2748":2}}],["gifs",{"2":{"153":1,"2746":1}}],["gigadevice",{"0":{"519":1},"2":{"519":1}}],["gives",{"2":{"490":1,"493":1,"546":1,"1603":1,"1806":1,"1840":1,"1947":1,"2060":1,"2367":1,"2411":1,"2627":1,"2902":1}}],["give",{"0":{"2474":1},"2":{"317":1,"359":1,"1206":1,"1375":1,"1614":2,"2029":1,"2050":1,"2372":1,"2423":1,"2445":1,"2632":1,"2655":1,"2689":1,"2902":1,"2934":1}}],["given",{"0":{"2896":1},"2":{"166":1,"312":1,"695":2,"696":2,"794":1,"807":1,"834":1,"866":1,"896":1,"931":1,"965":1,"999":1,"1033":1,"1067":1,"1101":1,"1135":1,"1169":1,"1222":1,"1375":1,"1478":1,"1497":1,"1606":3,"1614":1,"1616":1,"1633":1,"1764":1,"1783":1,"1786":1,"1818":1,"1823":1,"1826":1,"1829":1,"1832":1,"1835":1,"1928":2,"1953":1,"2198":9,"2201":2,"2215":3,"2293":1,"2312":1,"2344":1,"2347":1,"2350":1,"2357":1,"2364":1,"2410":1,"2425":1,"2444":1,"2463":1,"2467":1,"2468":1,"2549":1,"2555":1,"2567":1,"2605":1,"2704":1,"2719":1,"2721":2,"2722":1,"2750":2,"2789":1,"2901":1,"2915":1,"2932":1,"2941":1}}],["giving",{"2":{"283":1,"1583":1,"2635":1}}],["giabalanai",{"2":{"222":1}}],["ginkgo65hot",{"2":{"176":1}}],["gingham",{"2":{"143":2}}],["gitconfig",{"2":{"442":1}}],["gitignore",{"2":{"149":2,"176":1,"191":1}}],["git",{"0":{"6":1,"1337":1,"2594":1,"2624":1,"2625":1,"2628":1,"2639":1,"2809":1},"1":{"2625":1,"2629":1,"2630":1},"2":{"10":1,"24":1,"114":1,"199":1,"211":1,"249":1,"403":12,"405":16,"408":2,"421":10,"422":11,"423":9,"424":6,"457":1,"485":1,"586":1,"587":2,"611":7,"613":1,"1337":2,"1628":4,"1629":1,"2400":2,"2403":8,"2585":2,"2586":2,"2588":1,"2591":1,"2594":12,"2595":1,"2600":2,"2601":10,"2603":1,"2608":1,"2625":1,"2627":21,"2628":1,"2629":1,"2630":19,"2632":18,"2633":18,"2634":2,"2639":2,"2646":1,"2657":1,"2660":10,"2664":3,"2667":1,"2719":1,"2723":3,"2810":1,"2923":1}}],["github",{"0":{"1337":1,"2403":1,"2585":1,"2590":1,"2591":1,"2595":1,"2600":1,"2601":1,"2810":1,"2892":1},"1":{"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1},"2":{"2":1,"21":2,"134":1,"236":1,"338":3,"396":1,"397":2,"403":1,"406":1,"408":1,"421":1,"422":2,"482":1,"503":1,"549":1,"572":1,"577":1,"611":6,"674":1,"1316":1,"1335":1,"1336":1,"1337":2,"1349":1,"1350":2,"1356":3,"1358":1,"1373":1,"1395":1,"1434":1,"1438":3,"1628":2,"1956":1,"2324":1,"2400":1,"2403":6,"2576":2,"2577":2,"2583":2,"2584":1,"2585":2,"2586":2,"2588":1,"2590":3,"2591":3,"2592":2,"2593":2,"2594":1,"2595":1,"2596":1,"2598":2,"2599":2,"2600":4,"2601":7,"2602":2,"2603":2,"2621":2,"2625":1,"2628":1,"2630":11,"2632":5,"2664":2,"2665":1,"2672":1,"2707":1,"2721":1,"2845":1,"2892":1}}],["gluing",{"2":{"2415":1}}],["glue",{"2":{"487":1,"2428":1}}],["glossary",{"0":{"2794":1},"1":{"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1,"2827":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2842":1}}],["glorious",{"2":{"2390":2}}],["globs",{"2":{"467":1}}],["globe",{"2":{"236":1}}],["globally",{"2":{"1422":1,"1744":1,"1746":1}}],["global",{"0":{"729":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1},"2":{"94":1,"134":1,"172":1,"176":2,"191":1,"285":2,"297":1,"308":1,"381":1,"382":1,"384":1,"527":2,"572":1,"623":1,"701":1,"709":1,"728":2,"729":1,"854":2,"858":1,"918":2,"923":1,"953":2,"957":1,"987":2,"991":1,"1021":2,"1025":1,"1055":2,"1059":1,"1089":2,"1093":1,"1123":2,"1127":1,"1157":2,"1161":1,"1407":4,"1410":1,"1425":1,"1443":1,"1844":3,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1889":1,"1891":1,"1897":1,"2044":1,"2066":3,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2127":1,"2129":1,"2135":1,"2137":1,"2139":1,"2141":1,"2311":1,"2600":1,"2848":1,"2899":1,"2901":1}}],["glcdfont",{"2":{"1940":1,"1943":1,"2281":1}}],["glibc",{"2":{"2732":1}}],["gliding",{"2":{"1933":1}}],["glide",{"2":{"1933":1,"2008":1,"2016":3}}],["glides",{"2":{"1933":1}}],["glitch",{"2":{"211":1,"716":1}}],["glance",{"2":{"490":1,"2633":1,"2927":1}}],["glamorous",{"2":{"251":1}}],["glacier",{"2":{"211":1}}],["glyphs",{"2":{"2748":21,"2758":2,"2760":4,"2761":1,"2762":2,"2763":2}}],["glyph",{"0":{"2761":1,"2762":1},"2":{"176":1,"2748":2,"2758":2,"2760":3,"2761":13,"2762":8,"2763":2}}],["glenpickle",{"2":{"143":4,"149":1}}],["ggkeyboards",{"2":{"114":1}}],["guessed",{"2":{"1956":1,"2915":1}}],["guess",{"2":{"1950":1}}],["guestures",{"2":{"176":1}}],["guarantees",{"2":{"2750":1}}],["guarantee",{"2":{"627":1}}],["guaranteed",{"2":{"397":1,"760":1}}],["guarded",{"2":{"2702":1}}],["guard",{"2":{"160":1,"176":1,"199":1,"222":1,"328":1,"333":1,"412":1}}],["guards",{"2":{"4":1,"134":1,"520":1,"2719":1}}],["gu",{"2":{"285":1,"2513":3,"2531":3}}],["gurindam",{"2":{"143":2}}],["guiding",{"2":{"2922":1}}],["guidance",{"2":{"2573":1}}],["guided",{"2":{"2934":1}}],["guides",{"0":{"2429":1},"2":{"608":1,"1311":1,"2420":1}}],["guidelines",{"0":{"613":1,"2432":1},"1":{"614":1,"615":1,"616":1,"617":1,"618":1,"2433":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2449":1,"2450":1},"2":{"419":2,"520":1,"529":1,"607":2,"613":1,"616":1,"617":1,"675":1,"1337":1,"1418":1,"1419":1,"2407":1,"2603":1,"2707":2,"2714":1,"2925":1}}],["guide",{"0":{"359":1,"1949":1,"2413":1,"2475":1},"1":{"2414":1,"2415":1,"2416":1,"2417":1,"2418":1,"2419":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1,"2476":1,"2477":1,"2478":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2498":1,"2499":1,"2500":1,"2501":1},"2":{"199":1,"378":2,"379":1,"428":1,"674":2,"1333":1,"2274":1,"2403":2,"2410":1,"2415":1,"2416":1,"2427":1,"2429":3,"2572":1,"2573":3,"2574":1,"2575":1,"2584":1,"2591":2,"2596":1,"2603":1,"2609":1,"2657":1,"2658":1}}],["guitar",{"2":{"1479":2,"1480":3,"1484":1}}],["gui+s",{"2":{"196":1,"1801":1}}],["gui",{"2":{"114":1,"231":2,"266":1,"285":1,"328":1,"348":1,"374":1,"673":1,"1346":2,"1374":15,"1375":8,"1461":1,"1666":1,"1667":1,"1668":1,"1670":2,"1684":1,"1747":3,"1749":1,"1758":8,"2159":1,"2166":3,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2507":4,"2513":26,"2515":4,"2524":1,"2531":26,"2534":16,"2535":16,"2540":15,"2559":19,"2572":1,"2644":15,"2645":4,"2646":1,"2751":1,"2882":1,"2917":8,"2919":1}}],["gr",{"2":{"2293":1,"2294":3}}],["grunt",{"2":{"1466":1}}],["grb",{"2":{"1282":1,"1284":3}}],["grv",{"2":{"369":2,"587":2,"1666":2,"1747":2,"2505":1,"2515":1,"2553":1,"2554":1,"2899":1,"2901":1}}],["growing",{"2":{"2934":1}}],["grow",{"2":{"607":1,"2881":1}}],["grown",{"2":{"113":1,"663":1,"2432":2}}],["grounded",{"2":{"2492":1}}],["ground",{"2":{"390":1,"559":1,"746":1,"1294":1,"1309":1,"1310":1,"1469":1,"1472":2,"1476":1,"1564":1,"1624":1,"1663":1,"2426":1,"2713":1}}],["groupbuys",{"2":{"2721":1}}],["group",{"0":{"1507":1,"1508":1,"1509":1,"1510":1},"2":{"249":5,"463":1,"524":1,"666":1,"1332":1,"1507":1,"1508":1,"1509":1,"1510":1,"2185":1,"2288":4,"2470":1,"2514":1,"2937":1}}],["groups",{"2":{"231":1,"1497":2,"2289":1}}],["gritty",{"0":{"2555":1},"2":{"359":1}}],["grin",{"2":{"179":1}}],["grid",{"2":{"112":1,"249":1,"567":3,"1433":1,"1620":1,"1840":1,"2060":1,"2064":1,"2265":3,"2856":1,"2873":1}}],["grayscale",{"2":{"2748":4,"2769":5}}],["graystudio",{"2":{"211":1}}],["gram",{"2":{"2170":1}}],["grammar",{"2":{"176":1}}],["graphic",{"2":{"2748":2}}],["graphical",{"2":{"2471":1,"2582":1,"2592":1,"2612":1,"2657":1,"2746":1,"2751":1}}],["graphics",{"0":{"464":1,"2765":1,"2767":1},"1":{"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1},"2":{"2748":2,"2751":2,"2765":3,"2766":1,"2767":4,"2768":1}}],["grape",{"2":{"211":1}}],["grabbing",{"2":{"2421":1}}],["grab",{"2":{"380":1,"2421":1,"2627":1}}],["gracefully",{"2":{"209":1}}],["granularity",{"2":{"2245":1,"2916":1}}],["granular",{"2":{"195":1,"1492":1,"1497":1,"1504":1,"2899":1,"2908":1,"2909":1,"2910":1,"2917":1}}],["gradients",{"2":{"2063":2}}],["gradient",{"2":{"176":1,"199":1,"348":1,"1413":1,"1843":4,"2063":22,"2065":3,"2181":2,"2183":2,"2184":2,"2186":1,"2187":2,"2537":2,"2887":3}}],["grave",{"0":{"1665":1,"1747":1,"2524":1},"1":{"1666":1,"1667":1,"1668":1,"1669":1,"1670":1},"2":{"114":1,"188":1,"191":1,"199":1,"347":1,"673":1,"1357":1,"1619":1,"1665":2,"1668":1,"1670":4,"1686":1,"1747":4,"2505":1,"2513":2,"2515":1,"2524":2,"2531":2,"2551":2,"2579":1,"2662":1,"2879":1,"2882":1,"2933":1}}],["grs",{"2":{"114":1,"149":1}}],["greyscale",{"2":{"2758":1,"2765":1}}],["grep",{"2":{"2721":2}}],["greek",{"2":{"2879":1,"2880":2}}],["greeting",{"2":{"487":1,"1681":1}}],["greet",{"2":{"483":1,"487":1}}],["green",{"0":{"704":1,"706":1,"737":1,"739":1,"809":1,"811":1,"817":1,"836":1,"838":1,"844":1,"868":1,"870":1,"876":1,"900":1,"902":1,"908":1,"935":1,"937":1,"943":1,"969":1,"971":1,"977":1,"1003":1,"1005":1,"1011":1,"1037":1,"1039":1,"1045":1,"1071":1,"1073":1,"1079":1,"1105":1,"1107":1,"1113":1,"1139":1,"1141":1,"1147":1,"1173":1,"1175":1,"1181":1,"1226":1,"1228":1,"1234":1,"1303":1,"1305":1},"1":{"705":1,"707":1,"738":1,"740":1,"810":1,"812":1,"818":1,"837":1,"839":1,"845":1,"869":1,"871":1,"877":1,"901":1,"903":1,"909":1,"936":1,"938":1,"944":1,"970":1,"972":1,"978":1,"1004":1,"1006":1,"1012":1,"1038":1,"1040":1,"1046":1,"1072":1,"1074":1,"1080":1,"1106":1,"1108":1,"1114":1,"1140":1,"1142":1,"1148":1,"1174":1,"1176":1,"1182":1,"1227":1,"1229":1,"1235":1,"1304":1,"1306":1},"2":{"49":1,"338":3,"397":1,"492":1,"599":2,"650":1,"683":1,"705":2,"707":2,"731":1,"734":1,"738":2,"740":2,"802":1,"805":1,"810":2,"812":2,"818":2,"828":1,"831":1,"837":2,"839":2,"845":2,"860":1,"863":1,"869":2,"871":2,"877":2,"890":1,"893":1,"901":2,"903":2,"909":2,"925":1,"928":1,"936":2,"938":2,"944":2,"959":1,"962":1,"970":2,"972":2,"978":2,"993":1,"996":1,"1004":2,"1006":2,"1012":2,"1027":1,"1030":1,"1038":2,"1040":2,"1046":2,"1061":1,"1064":1,"1072":2,"1074":2,"1080":2,"1095":1,"1098":1,"1106":2,"1108":2,"1114":2,"1129":1,"1132":1,"1140":2,"1142":2,"1148":2,"1163":1,"1166":1,"1174":2,"1176":2,"1182":2,"1216":1,"1219":1,"1227":2,"1229":2,"1235":2,"1284":1,"1285":1,"1304":2,"1306":2,"1413":1,"2067":2,"2072":2,"2073":1,"2086":1,"2088":1,"2181":1,"2185":1,"2189":2,"2191":1,"2198":1,"2205":3,"2537":1,"2667":1,"2724":1}}],["greatest",{"2":{"2702":1}}],["greater",{"2":{"63":1,"408":1,"415":1,"431":2,"717":1,"1417":1,"1512":2,"2038":1,"2560":1}}],["great",{"2":{"550":1,"563":1,"1333":1,"1497":1,"1583":1,"1585":1,"1804":1,"2588":1,"2638":1,"2639":1,"2664":1,"2673":1,"2700":1}}],["greatly",{"2":{"49":1,"2410":1}}],["gh",{"2":{"2601":4}}],["ghcr",{"2":{"2600":1}}],["gh62",{"2":{"448":5,"2425":5}}],["gh60",{"2":{"427":3,"2608":1}}],["gherkin",{"2":{"266":1,"322":4,"328":1,"2683":1}}],["ghoul",{"2":{"199":1}}],["ghosting",{"0":{"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1},"2":{"134":1,"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"2459":2,"2865":1}}],["ghost",{"2":{"112":1,"199":1,"559":2,"886":1,"2865":1}}],["gh80",{"2":{"57":4,"266":1}}],["gauge",{"2":{"2895":1}}],["gather",{"2":{"1996":1,"2895":1}}],["gathering",{"2":{"427":1}}],["gateway",{"2":{"2933":1}}],["gateron",{"2":{"2414":1}}],["gate",{"2":{"1551":1,"1564":2}}],["gasc",{"2":{"1375":2}}],["gamma",{"2":{"236":1}}],["game",{"2":{"241":6,"1444":1,"1600":1,"1766":1,"2567":1,"2639":1}}],["gamers",{"2":{"137":1}}],["gamebuddy",{"2":{"102":3,"114":1}}],["galleon",{"2":{"211":1}}],["galaxy",{"2":{"114":1}}],["garbled",{"2":{"191":1}}],["gap",{"2":{"134":1,"2459":1}}],["gain",{"2":{"131":1,"690":1,"2887":1}}],["gained",{"2":{"100":1,"107":1,"153":1}}],["gaining",{"2":{"86":1,"2803":1}}],["gold",{"2":{"2067":2,"2205":3}}],["goldenrod",{"2":{"2067":2,"2205":2}}],["golden",{"2":{"1517":1}}],["googletest",{"2":{"2403":1}}],["google",{"0":{"2935":2},"2":{"392":1,"2935":3,"2936":1}}],["googling",{"2":{"391":1}}],["goodbye",{"2":{"1479":1,"1480":2}}],["good",{"2":{"119":1,"520":1,"525":2,"540":1,"541":1,"543":1,"608":1,"631":1,"646":1,"1312":1,"1334":1,"1421":1,"1427":1,"1438":1,"1519":1,"2018":1,"2019":1,"2050":1,"2302":1,"2310":2,"2403":1,"2418":1,"2420":2,"2421":1,"2422":1,"2459":1,"2472":1,"2501":1,"2572":1,"2637":1,"2672":1,"2710":1,"2899":1,"2920":1,"2934":1}}],["goal",{"2":{"262":1,"524":1,"1427":1}}],["going",{"2":{"188":1,"268":1,"624":1,"752":1,"1413":1,"2303":1,"2422":2,"2424":1,"2427":1,"2445":1,"2461":1,"2580":1,"2585":1,"2633":2,"2644":1,"2787":2,"2788":1,"2890":1,"2940":1}}],["goes",{"2":{"166":1,"392":1,"410":1,"490":1,"1365":1,"1476":2,"1534":1,"2050":1,"2182":1,"2245":1,"2495":1,"2501":1,"2719":1,"2746":1,"2864":1,"2870":1,"2871":1}}],["gotten",{"2":{"594":1}}],["got",{"2":{"158":1,"164":1,"176":1,"179":1,"182":1,"190":1,"245":1,"521":1,"1349":1,"1467":1,"2427":1}}],["go",{"0":{"610":1},"2":{"92":1,"119":1,"137":1,"152":1,"347":1,"359":1,"387":2,"405":1,"410":1,"520":1,"522":1,"556":1,"666":2,"1416":2,"1443":1,"1476":1,"1516":2,"1533":2,"1674":2,"1941":1,"1948":1,"2042":1,"2209":1,"2279":1,"2283":1,"2303":1,"2324":1,"2386":1,"2388":1,"2391":1,"2403":1,"2409":1,"2415":1,"2422":1,"2425":1,"2580":1,"2643":1,"2662":1,"2667":1,"2700":1,"2705":1,"2721":2,"2788":1,"2901":2}}],["gone",{"2":{"172":1}}],["gon",{"0":{"18":1},"2":{"18":3}}],["g",{"0":{"2085":1,"2087":1},"1":{"2086":1,"2088":1},"2":{"38":2,"65":1,"114":1,"149":1,"160":2,"191":2,"211":6,"236":1,"249":3,"266":2,"328":25,"369":1,"405":1,"563":1,"586":1,"587":2,"683":2,"692":1,"731":2,"734":1,"738":1,"802":3,"805":1,"810":1,"814":1,"818":1,"820":1,"828":3,"831":1,"837":1,"841":1,"845":1,"847":1,"860":3,"863":1,"869":1,"873":1,"877":1,"879":1,"890":3,"893":1,"901":1,"905":1,"909":1,"911":1,"925":3,"928":1,"936":1,"940":1,"944":1,"946":1,"959":3,"962":1,"970":1,"974":1,"978":1,"980":1,"993":3,"996":1,"1004":1,"1008":1,"1012":1,"1014":1,"1027":3,"1030":1,"1038":1,"1042":1,"1046":1,"1048":1,"1061":3,"1064":1,"1072":1,"1076":1,"1080":1,"1082":1,"1095":3,"1098":1,"1106":1,"1110":1,"1114":1,"1116":1,"1129":3,"1132":1,"1140":1,"1144":1,"1148":1,"1150":1,"1163":3,"1166":1,"1174":1,"1178":1,"1182":1,"1184":1,"1193":1,"1197":1,"1216":3,"1219":1,"1227":1,"1231":1,"1235":1,"1237":1,"1285":2,"1362":1,"1374":1,"1389":1,"1390":1,"1407":2,"1410":3,"1416":1,"1436":1,"1450":1,"1453":1,"1478":1,"1532":1,"1584":1,"1595":1,"1597":1,"1612":3,"1616":2,"1659":1,"1737":1,"1751":3,"1757":1,"1758":1,"1790":1,"1840":1,"1844":2,"1919":19,"1939":2,"1942":1,"1947":2,"1993":1,"2000":1,"2016":1,"2017":1,"2030":1,"2045":1,"2060":1,"2064":1,"2066":2,"2072":1,"2073":2,"2074":3,"2086":1,"2088":1,"2181":2,"2189":1,"2191":3,"2192":1,"2198":10,"2210":1,"2266":5,"2269":3,"2280":1,"2289":1,"2294":1,"2302":1,"2311":1,"2407":1,"2416":1,"2418":2,"2419":1,"2428":1,"2483":2,"2503":3,"2515":3,"2532":19,"2534":1,"2537":1,"2553":1,"2603":2,"2620":1,"2655":1,"2656":2,"2667":1,"2669":2,"2677":1,"2719":1,"2720":1,"2721":3,"2722":1,"2724":1,"2750":1,"2847":1,"2882":1,"2901":8,"2917":1,"2919":1}}],["gfx",{"2":{"31":3,"34":2,"1949":10,"2750":2}}],["german",{"2":{"2831":1,"2880":8}}],["gergoplex",{"2":{"160":1,"191":1}}],["gergo",{"2":{"143":2}}],["ge",{"2":{"2513":2,"2531":2}}],["gemini",{"2":{"2290":3,"2293":2}}],["geminipr",{"0":{"2289":1},"2":{"2287":1,"2289":6,"2291":1,"2294":2,"2874":1}}],["geminate60",{"2":{"143":2,"211":1}}],["geekhack",{"2":{"1350":1,"1364":1,"1372":1,"1373":1}}],["geometric",{"2":{"2864":1,"2871":1}}],["geometry",{"2":{"2750":2,"2915":1}}],["geonworks",{"2":{"241":1,"249":1}}],["georgi",{"2":{"143":2}}],["gesture",{"0":{"2003":1},"2":{"1988":1,"2002":1,"2008":1,"2009":1,"2016":3}}],["gestures",{"0":{"2008":1,"2009":1},"2":{"176":1,"2003":3,"2006":2,"2008":2,"2009":1,"2016":3}}],["gesc",{"2":{"191":2,"199":2,"1666":1,"1667":2,"1668":1,"2524":1}}],["genuine",{"2":{"1358":1}}],["gen1",{"2":{"481":1}}],["gentoo",{"2":{"191":1,"211":2,"2594":1}}],["gentleman",{"2":{"176":1}}],["gentleman65",{"2":{"168":2,"211":2}}],["genisis",{"2":{"114":1}}],["genetic",{"2":{"327":1}}],["genesis",{"2":{"102":3}}],["generic",{"0":{"174":1,"1607":1,"1918":1,"2695":1,"2696":1},"2":{"50":1,"172":1,"175":1,"176":3,"236":3,"317":1,"328":1,"682":1,"1427":1,"1497":3,"1918":1,"1996":2,"2254":2,"2501":1,"2510":1,"2696":2,"2698":2,"2798":1,"2838":1}}],["generating",{"2":{"328":1,"663":1,"671":1,"1443":1,"1512":1,"1953":1,"2394":1,"2396":1,"2707":1,"2784":1,"2844":1}}],["generation",{"2":{"12":1,"132":1,"176":1,"191":3,"199":2,"222":4,"231":1,"249":1,"277":1,"285":1,"294":1,"2660":1}}],["generators",{"2":{"334":2,"538":1,"539":1}}],["generator",{"0":{"538":1},"2":{"132":1,"149":2,"1696":1,"2415":1}}],["generates",{"2":{"459":1,"460":1,"670":1,"2582":1}}],["generated",{"2":{"73":1,"308":1,"333":1,"459":1,"578":1,"602":1,"671":1,"716":1,"1454":1,"1475":1,"1482":1,"1614":1,"2410":1,"2547":1,"2667":1,"2721":1,"2748":5,"2757":1}}],["generate",{"0":{"302":1,"459":1,"460":1,"468":1,"671":1},"2":{"70":4,"95":1,"114":1,"132":2,"153":1,"160":1,"191":1,"199":2,"211":1,"236":2,"249":2,"277":1,"308":2,"328":3,"338":3,"369":1,"445":1,"459":1,"460":1,"468":1,"578":1,"664":3,"671":5,"1385":1,"1474":3,"1521":1,"1522":1,"1664":1,"2000":1,"2012":1,"2016":1,"2377":2,"2384":2,"2410":2,"2666":1,"2748":4,"2930":1}}],["generally",{"2":{"397":1,"492":1,"510":1,"524":1,"535":1,"537":1,"540":1,"543":1,"546":1,"552":1,"559":1,"654":1,"676":1,"677":1,"685":1,"743":1,"747":1,"765":1,"794":1,"1245":1,"1266":1,"1295":1,"1312":1,"1416":1,"1471":1,"1550":1,"1562":1,"1639":1,"1662":1,"1791":1,"1847":1,"2040":1,"2070":1,"2161":1,"2310":1,"2417":1,"2448":1,"2466":1,"2475":1,"2494":1,"2605":1,"2667":1,"2748":2,"2749":1,"2750":1,"2853":1,"2887":1,"2896":3}}],["generalise",{"2":{"191":1,"236":1}}],["generalize",{"2":{"149":1}}],["general",{"0":{"613":1,"680":1,"2845":1},"1":{"614":1,"615":1,"616":1,"617":1,"618":1},"2":{"5":1,"10":1,"175":1,"201":1,"213":1,"233":1,"489":1,"520":1,"522":1,"607":1,"1300":1,"1438":3,"1563":1,"1736":1,"2046":1,"2310":1,"2450":1,"2637":1,"2639":1,"2700":2,"2704":1,"2724":1,"2725":3,"2749":1,"2750":1,"2758":1,"2765":1,"2894":1}}],["gets",{"2":{"494":1,"576":1,"643":1,"644":1,"649":1,"655":1,"656":1,"657":1,"1435":1,"1444":1,"1455":1,"1511":2,"1531":1,"1764":1,"1948":1,"1955":1,"2019":1,"2039":1,"2204":6,"2293":1,"2316":3,"2459":2,"2551":1,"2669":1,"2942":1}}],["getter",{"2":{"542":1}}],["getters",{"2":{"236":2}}],["getting",{"0":{"421":1,"422":1,"2425":1,"2889":1},"1":{"2890":1,"2891":1,"2892":1},"2":{"211":2,"397":1,"674":2,"677":1,"698":1,"1413":1,"1419":1,"2648":1,"2658":1,"2718":1,"2719":1,"2724":1,"2788":1,"2889":1}}],["getta25",{"2":{"143":2,"308":1}}],["getreuer",{"2":{"179":1,"191":1,"288":1,"1534":1}}],["get",{"0":{"364":1,"365":1,"366":1,"1330":1,"1540":1,"1574":1,"1737":1,"1871":1,"1877":1,"1887":1,"1897":1,"1900":1,"1975":1,"2097":1,"2103":1,"2109":1,"2115":1,"2125":1,"2135":1,"2141":1,"2144":1,"2327":1,"2347":1,"2471":1,"2913":1},"1":{"1541":1,"1575":1,"1872":1,"1878":1,"1888":1,"1898":1,"1901":1,"1976":1,"2098":1,"2104":1,"2110":1,"2116":1,"2126":1,"2136":1,"2142":1,"2145":1,"2328":1,"2348":1,"2349":1},"2":{"22":4,"23":1,"50":1,"75":1,"140":1,"158":1,"160":1,"190":1,"191":3,"194":6,"195":2,"199":1,"222":4,"236":2,"249":1,"273":1,"276":1,"277":1,"284":1,"285":1,"308":1,"317":1,"323":4,"324":2,"325":4,"371":1,"379":1,"380":1,"383":1,"386":1,"432":1,"435":1,"456":1,"521":1,"538":1,"559":1,"562":2,"572":1,"586":1,"608":1,"613":1,"614":1,"617":2,"623":1,"627":1,"643":1,"684":1,"1309":1,"1327":2,"1329":2,"1333":1,"1353":1,"1362":1,"1375":10,"1377":1,"1378":1,"1385":1,"1387":1,"1413":1,"1421":2,"1422":1,"1423":1,"1424":1,"1425":1,"1441":1,"1443":2,"1446":1,"1455":1,"1478":1,"1484":1,"1485":1,"1490":2,"1492":2,"1493":2,"1497":7,"1504":5,"1511":1,"1520":1,"1527":1,"1528":1,"1574":1,"1576":1,"1581":1,"1585":1,"1587":2,"1588":1,"1589":1,"1595":1,"1606":9,"1614":1,"1619":1,"1655":1,"1683":1,"1751":1,"1758":1,"1765":1,"1790":1,"1795":1,"1845":4,"1846":1,"1857":1,"1871":1,"1877":1,"1887":1,"1897":1,"1900":1,"1917":1,"1939":1,"1941":1,"1948":1,"1950":1,"1951":1,"1971":1,"1975":1,"1980":1,"2015":2,"2016":1,"2017":2,"2019":3,"2021":1,"2023":1,"2025":1,"2027":1,"2039":6,"2040":1,"2042":1,"2043":1,"2044":1,"2052":2,"2064":2,"2068":4,"2069":1,"2073":3,"2074":3,"2083":1,"2097":1,"2103":1,"2109":1,"2115":1,"2125":1,"2135":1,"2141":1,"2144":1,"2159":1,"2160":3,"2161":1,"2162":1,"2166":2,"2167":4,"2168":5,"2169":4,"2170":5,"2185":1,"2193":1,"2203":1,"2204":5,"2247":2,"2248":2,"2254":1,"2277":1,"2279":1,"2301":1,"2302":1,"2309":4,"2312":2,"2316":3,"2327":1,"2344":1,"2345":1,"2347":1,"2355":1,"2373":1,"2374":2,"2417":1,"2421":1,"2425":1,"2427":1,"2447":1,"2459":4,"2473":1,"2474":1,"2483":1,"2495":1,"2496":1,"2501":1,"2579":2,"2592":1,"2605":1,"2612":1,"2621":1,"2627":1,"2658":1,"2666":1,"2667":1,"2706":1,"2707":2,"2719":1,"2724":2,"2747":1,"2750":8,"2877":1,"2882":4,"2886":5,"2890":1,"2899":1,"2900":6,"2901":8,"2908":1,"2909":1,"2910":1,"2912":2,"2913":4,"2914":1,"2916":5,"2917":2,"2919":2,"2929":1,"2936":1,"2941":4}}],["gtk",{"2":{"2324":2}}],["gtest",{"2":{"114":1}}],["gt",{"0":{"156":1,"167":1,"195":1,"245":1,"364":1,"365":1,"366":1,"1456":1,"1457":1,"1458":1,"1459":1,"1460":2,"1461":5,"1633":1,"2441":1,"2442":1},"2":{"4":3,"18":2,"49":1,"55":3,"70":1,"94":1,"113":2,"114":5,"132":2,"133":2,"134":2,"166":1,"176":4,"191":3,"199":3,"201":2,"211":1,"222":1,"249":5,"277":1,"285":1,"317":1,"323":3,"338":1,"346":2,"347":6,"356":1,"387":15,"391":1,"397":1,"401":2,"403":3,"405":8,"406":1,"427":1,"428":1,"431":2,"457":1,"474":2,"490":1,"493":4,"557":1,"567":2,"568":3,"586":2,"591":2,"616":3,"625":8,"670":1,"671":4,"681":1,"731":1,"758":1,"765":2,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1245":2,"1266":2,"1312":2,"1375":3,"1385":1,"1403":1,"1404":2,"1406":4,"1427":1,"1428":3,"1432":4,"1433":1,"1434":6,"1435":5,"1437":4,"1439":1,"1441":1,"1443":5,"1457":1,"1458":1,"1459":3,"1460":1,"1485":1,"1498":1,"1500":1,"1509":1,"1521":1,"1522":1,"1584":1,"1599":2,"1622":1,"1627":2,"1637":1,"1638":20,"1662":1,"1758":1,"1958":1,"2025":1,"2030":1,"2031":9,"2032":1,"2040":1,"2266":5,"2284":1,"2291":2,"2293":1,"2310":1,"2403":1,"2407":2,"2409":4,"2410":18,"2411":2,"2427":1,"2436":2,"2438":1,"2439":1,"2442":2,"2459":1,"2495":4,"2497":2,"2501":1,"2505":1,"2515":1,"2539":2,"2558":2,"2583":5,"2587":2,"2598":1,"2621":4,"2627":7,"2632":3,"2655":2,"2656":2,"2662":4,"2665":2,"2666":2,"2667":2,"2668":1,"2669":1,"2719":1,"2721":4,"2749":1,"2750":4,"2751":1,"2787":4,"2844":1,"2862":1,"2901":2,"2917":1,"2920":1}}],["e5",{"2":{"1919":1,"2532":1}}],["e4",{"2":{"1919":1,"2532":1}}],["e3",{"2":{"1919":1,"2532":1}}],["e2",{"2":{"1919":1,"2532":1}}],["e♭",{"2":{"1919":6,"2532":6}}],["ebay",{"2":{"2498":1,"2828":1}}],["eb5",{"2":{"1919":1,"2532":1}}],["eb4",{"2":{"1919":1,"2532":1}}],["eb3",{"2":{"1919":1,"2532":1}}],["eb2",{"2":{"1919":1,"2532":1}}],["eb1",{"2":{"1919":1,"2532":1}}],["eb",{"2":{"1919":1,"2532":1}}],["ejct",{"2":{"1358":1,"2510":1,"2515":1}}],["eject",{"0":{"1358":1},"2":{"1358":3,"2510":2,"2515":2}}],["eimsk",{"2":{"1983":2}}],["eicra",{"2":{"1983":1}}],["eight",{"2":{"1696":2,"1768":1,"1947":1,"2231":1,"2245":1}}],["eighth",{"2":{"763":1,"2214":1,"2296":1}}],["either",{"2":{"49":1,"60":1,"87":1,"88":2,"104":2,"127":2,"141":1,"152":1,"408":1,"452":1,"461":1,"493":1,"521":1,"612":1,"617":1,"670":1,"683":1,"692":1,"700":1,"711":1,"1195":1,"1198":1,"1281":1,"1294":1,"1313":1,"1343":1,"1378":1,"1438":1,"1468":1,"1471":1,"1474":1,"1519":1,"1532":1,"1619":1,"1627":1,"1655":2,"1656":1,"1706":1,"1766":1,"1948":1,"2027":1,"2030":1,"2032":1,"2159":1,"2260":1,"2272":1,"2285":1,"2286":1,"2291":2,"2384":1,"2420":1,"2445":1,"2450":1,"2587":1,"2619":1,"2620":1,"2660":1,"2670":1,"2676":1,"2721":1,"2725":1,"2749":1,"2750":1,"2760":1,"2776":1,"2862":2,"2902":1,"2914":2,"2915":2}}],["e1",{"2":{"1919":1,"2532":1}}],["e15",{"2":{"692":1}}],["e14",{"2":{"692":1}}],["e12",{"2":{"692":1}}],["e11",{"2":{"692":1}}],["e10",{"2":{"692":1}}],["e13",{"2":{"692":1}}],["e9",{"2":{"692":1}}],["egg",{"2":{"676":1,"2306":1,"2307":3,"2308":2}}],["eggman",{"2":{"143":2}}],["eg",{"2":{"431":1,"526":1,"537":1,"562":1,"616":1,"630":1,"649":1,"695":1,"696":3,"760":1,"1452":1,"1461":1,"1521":1,"1587":1,"1693":1,"1806":1,"2039":1,"2231":1,"2233":1,"2235":1,"2237":1,"2254":1,"2315":1,"2377":2,"2381":1,"2384":2,"2393":1,"2395":1,"2397":1,"2435":1,"2440":1,"2644":1,"2699":1,"2721":1,"2845":2}}],["e7",{"2":{"328":1,"692":1}}],["e8",{"2":{"692":2}}],["e8ghtyneo",{"2":{"317":1}}],["e88",{"2":{"211":1}}],["eubg",{"2":{"2288":1,"2289":1}}],["euro",{"2":{"2467":1}}],["europe",{"2":{"1343":1}}],["eurkey",{"2":{"294":1,"2880":2}}],["eu",{"2":{"241":2,"2294":1}}],["eyes",{"2":{"2421":1}}],["eyeohdesigns",{"2":{"236":1}}],["eyboard",{"2":{"2162":1}}],["eybord",{"2":{"2162":1}}],["eyalroz",{"2":{"176":1}}],["ec44c6c1675c25b9827aacd08c02433cccde7780",{"2":{"2403":1}}],["ec11",{"2":{"1659":1}}],["echo",{"0":{"491":1},"2":{"489":1,"491":1,"525":4,"537":1,"2598":2,"2621":1}}],["eclipse",{"0":{"378":1,"386":1,"387":1,"2646":1,"2650":1,"2651":1,"2654":1,"2807":1},"1":{"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"2651":1,"2652":1,"2653":1,"2655":1,"2656":1},"2":{"378":1,"379":1,"382":1,"385":1,"387":2,"2646":3,"2649":1,"2650":2,"2651":6,"2652":3,"2653":1,"2656":1,"2807":1,"2923":1}}],["ecosystem",{"2":{"243":1,"331":1}}],["eccentric",{"2":{"1678":1}}],["ecc",{"2":{"236":1}}],["ec",{"2":{"222":1,"247":2,"277":1,"1621":2,"2513":3,"2531":3}}],["ekow",{"2":{"211":1}}],["ek65",{"2":{"199":1}}],["equo",{"2":{"2594":1}}],["equally",{"2":{"1756":1,"2734":1}}],["equality",{"2":{"1375":1}}],["equal",{"2":{"431":3,"474":1,"1365":1,"1686":1,"2288":1,"2293":1,"2505":1,"2511":2,"2515":3,"2760":2,"2767":2}}],["equals",{"2":{"249":1}}],["equivalency",{"2":{"543":1}}],["equivalents",{"2":{"553":1,"1280":1,"2020":1,"2684":1}}],["equivalent",{"2":{"7":1,"103":1,"185":1,"186":1,"232":1,"234":1,"746":1,"747":1,"750":1,"1395":1,"1614":1,"1638":1,"1639":1,"1691":1,"1846":1,"2069":1,"2181":1,"2549":1,"2567":1,"2568":1,"2645":1,"2669":1,"2670":1,"2721":4}}],["equinox",{"2":{"211":1}}],["eql",{"2":{"176":1,"369":1,"587":2,"2505":1,"2515":1,"2553":1}}],["efuse",{"2":{"2496":2}}],["ef8878fba5d3786e3f9c66436da63a560cd36ac9",{"2":{"587":2}}],["efgh",{"2":{"266":1}}],["ef",{"2":{"249":1}}],["efl",{"2":{"176":2,"191":1,"236":1,"277":1,"751":4,"754":1}}],["effort",{"2":{"663":1,"794":1,"1402":1,"1522":1,"2309":1,"2418":1,"2443":1,"2620":1}}],["efficiently",{"2":{"1519":1,"1679":1}}],["efficient",{"2":{"63":1,"231":1,"1189":2,"1190":1,"1196":1,"1947":1,"2030":1,"2286":1}}],["effect2",{"2":{"1844":6,"2066":6}}],["effective",{"2":{"716":1,"1407":1,"1758":1,"1933":1,"2901":1,"2917":1}}],["effectively",{"2":{"49":1,"163":1,"1294":1,"1770":1,"2265":1,"2468":1,"2568":1,"2910":1}}],["effects",{"0":{"1843":1,"1844":1,"2063":1,"2066":1,"2183":1,"2196":1,"2200":1},"1":{"2064":1,"2065":1,"2184":1,"2185":1,"2186":1,"2187":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1},"2":{"84":1,"93":2,"124":1,"134":1,"156":1,"222":1,"249":1,"266":1,"277":1,"294":1,"298":1,"308":1,"525":3,"716":1,"1483":1,"1635":2,"1636":2,"1840":1,"1843":2,"1844":6,"1845":1,"1846":3,"2060":1,"2063":3,"2065":1,"2066":6,"2068":1,"2069":3,"2197":1,"2209":1,"2210":2,"2721":1,"2779":1,"2864":3,"2870":2,"2871":3}}],["effect",{"0":{"2064":1,"2065":1,"2075":1,"2184":1,"2185":1,"2197":1,"2199":1},"2":{"49":1,"74":1,"93":1,"134":1,"149":2,"160":1,"176":1,"191":6,"194":1,"199":1,"222":1,"236":1,"249":2,"266":1,"276":1,"277":1,"285":4,"294":2,"317":1,"348":2,"587":1,"1348":1,"1419":1,"1483":1,"1487":2,"1492":1,"1591":1,"1596":1,"1635":1,"1636":1,"1679":1,"1760":1,"1765":1,"1843":3,"1844":21,"1845":3,"1859":1,"1861":1,"1863":1,"1864":1,"1865":1,"1866":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1885":1,"1887":1,"1888":1,"1889":1,"1891":1,"1897":1,"1898":1,"1899":1,"1933":1,"1948":2,"1989":1,"2063":3,"2064":4,"2065":1,"2066":21,"2068":3,"2075":2,"2085":1,"2087":1,"2089":1,"2090":1,"2091":1,"2092":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2123":1,"2125":1,"2126":1,"2127":1,"2129":1,"2135":1,"2136":1,"2137":1,"2139":1,"2141":1,"2142":1,"2143":1,"2178":1,"2181":2,"2183":1,"2184":10,"2185":11,"2186":2,"2197":1,"2198":1,"2199":1,"2200":6,"2201":14,"2209":1,"2210":1,"2302":1,"2312":1,"2537":2,"2864":1,"2870":1,"2871":1,"2887":10,"2914":1}}],["ede48346eee4b8d6847c19bc01420bee76a5e486",{"2":{"2403":1}}],["ed",{"2":{"275":1,"2161":2,"2669":1}}],["edges",{"2":{"2063":1,"2915":1}}],["edge",{"2":{"175":1,"1249":8,"1985":1,"2420":1,"2568":1,"2788":2,"2792":2,"2858":1}}],["editable",{"2":{"493":1}}],["editorconfig",{"2":{"2664":1}}],["editors",{"2":{"502":1,"2638":1}}],["editor",{"0":{"2578":1,"2638":1},"2":{"427":2,"446":1,"447":1,"448":1,"673":1,"1444":1,"1940":2,"2416":1,"2425":2,"2427":1,"2497":1,"2575":1,"2578":1,"2582":1,"2592":3,"2593":1,"2600":1,"2612":3,"2627":1,"2633":1,"2638":1,"2646":1,"2656":1,"2657":3,"2660":2,"2788":1,"2793":1,"2862":1}}],["edit",{"2":{"403":1,"405":1,"614":2,"666":1,"670":1,"1844":1,"2066":1,"2211":1,"2244":1,"2407":2,"2474":1,"2592":1,"2612":1,"2626":1,"2627":1,"2633":1,"2793":1,"2912":1}}],["edited",{"2":{"391":1,"408":1,"587":1,"1940":1,"2631":1}}],["editing",{"2":{"391":1,"458":1,"465":1,"614":1,"617":1,"1316":1,"1523":1,"2578":1,"2627":1,"2748":1}}],["edition",{"0":{"1394":1,"1398":1,"2699":1},"2":{"211":2,"249":3,"1388":1,"1394":1,"1395":2,"1396":1,"1398":1,"2699":1}}],["edits",{"2":{"211":1,"408":1}}],["edi",{"2":{"143":1,"149":1}}],["eopkg",{"2":{"2594":1}}],["eof",{"2":{"249":1,"2773":1}}],["eol",{"2":{"173":1,"308":1,"333":1}}],["eon95",{"2":{"57":2}}],["eon87",{"2":{"57":2}}],["eon75",{"2":{"57":2}}],["eon65",{"2":{"57":2}}],["eon40",{"2":{"57":2}}],["etc",{"0":{"1317":1},"2":{"169":1,"285":1,"442":2,"508":1,"509":1,"540":1,"546":1,"630":1,"649":1,"731":1,"765":2,"802":2,"828":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1245":2,"1266":2,"1280":1,"1313":2,"1329":1,"1369":1,"1419":1,"1479":1,"1761":1,"1942":1,"2030":1,"2050":1,"2074":1,"2171":1,"2178":1,"2189":1,"2269":1,"2280":1,"2414":2,"2420":1,"2646":1,"2657":1,"2707":2,"2719":3,"2721":4,"2722":1,"2882":1,"2883":2}}],["eh",{"2":{"143":4,"270":3,"277":1,"2513":2,"2531":2}}],["estonian",{"2":{"2880":3}}],["estimating",{"2":{"2372":1}}],["estimated",{"2":{"2372":1,"2374":1}}],["established",{"2":{"572":1,"2284":1,"2418":1}}],["es",{"2":{"1587":1}}],["esr",{"2":{"608":1}}],["essential",{"2":{"384":1,"1753":1}}],["essentially",{"2":{"263":1,"2248":1,"2417":1}}],["especially",{"2":{"320":1,"617":1,"1407":1,"1421":1,"1511":1,"1552":1,"1583":1,"1587":1,"2017":1,"2410":1,"2422":1,"2704":1,"2757":1,"2892":1,"2919":1,"2920":1,"2934":1}}],["espectro",{"2":{"143":2}}],["eschew",{"2":{"527":1}}],["escaping",{"2":{"191":1}}],["escaped",{"2":{"2845":2}}],["escape",{"0":{"1377":1,"1665":1,"1747":1,"2524":1},"1":{"1666":1,"1667":1,"1668":1,"1669":1,"1670":1},"2":{"114":1,"176":1,"188":1,"191":1,"211":1,"231":1,"673":1,"674":1,"683":2,"1345":1,"1357":1,"1432":1,"1450":1,"1596":1,"1665":3,"1668":2,"1670":4,"1747":2,"2215":1,"2305":1,"2310":1,"2339":2,"2380":1,"2411":1,"2505":2,"2513":8,"2515":2,"2524":3,"2531":8,"2559":2,"2579":1,"2605":1,"2862":1}}],["esc",{"0":{"1357":1,"2305":1},"2":{"105":2,"114":1,"199":1,"369":1,"587":2,"1377":3,"1450":1,"1457":1,"1583":1,"1596":2,"1597":1,"1598":1,"1599":3,"1616":2,"1619":1,"1622":3,"1666":1,"1667":1,"1670":4,"1686":1,"1737":1,"1747":10,"2215":1,"2305":4,"2306":1,"2308":2,"2310":2,"2377":3,"2384":3,"2505":1,"2513":2,"2515":1,"2531":2,"2547":1,"2559":1,"2869":2,"2882":1,"2919":1,"2933":1}}],["epomaker",{"2":{"2567":2}}],["epoch80",{"2":{"241":2}}],["epsize",{"2":{"2050":1,"2051":1}}],["epsize\`",{"2":{"2050":1}}],["ep",{"2":{"114":1,"190":1,"191":1,"211":1,"266":1,"573":2}}],["e6",{"2":{"111":1,"568":1,"1192":1,"2368":1,"2377":1,"2384":1,"2684":1,"2713":1}}],["emergencies",{"2":{"2896":1}}],["emerge",{"2":{"2594":1}}],["emery65",{"2":{"211":1}}],["em",{"2":{"1599":3}}],["emitting",{"2":{"2819":1}}],["emitted",{"2":{"1492":2,"1958":1}}],["emit",{"2":{"1497":1,"2309":1}}],["emac",{"2":{"2325":1,"2545":1}}],["emacs",{"2":{"176":1,"1587":1,"2159":1,"2324":2,"2325":2,"2337":1,"2338":1,"2339":1,"2545":2}}],["email>",{"2":{"1438":1}}],["email",{"2":{"1438":2,"1599":5,"2449":1,"2499":1,"2627":3}}],["emoji",{"0":{"339":1},"1":{"340":1,"341":1},"2":{"335":1,"490":2,"2322":1,"2323":1,"2411":1}}],["employing",{"2":{"1406":1}}],["emphasis",{"2":{"198":1,"201":1}}],["emptystring",{"2":{"181":2,"191":1}}],["empty",{"2":{"50":1,"199":1,"211":2,"222":1,"249":1,"308":2,"597":2,"613":1,"1273":1,"1818":1,"2361":1,"2497":1,"2608":2,"2652":1,"2721":2}}],["embed",{"0":{"357":1},"2":{"357":1}}],["embedded",{"0":{"751":1},"2":{"174":1,"176":1,"356":1,"609":1,"750":3,"751":2,"754":3,"2553":1,"2693":1,"2721":2,"2751":1,"2857":1}}],["embracing",{"2":{"116":1}}],["emulating",{"2":{"750":1}}],["emulation",{"0":{"174":1,"754":1},"2":{"94":1,"131":1,"134":1,"249":1,"277":1,"743":1,"1804":1,"2685":1}}],["emulates",{"2":{"1754":1,"1755":1,"2003":1,"2382":1,"2477":1,"2481":1,"2494":1}}],["emulate",{"2":{"174":1,"1917":1,"1924":1,"2311":1,"2479":1,"2940":1}}],["emulated",{"2":{"160":1,"176":2,"743":1,"750":1,"754":1,"1556":1,"1756":1,"2290":1,"2940":1}}],["eep",{"2":{"566":2,"567":2}}],["eeproms",{"2":{"2685":1}}],["eeprom",{"0":{"131":1,"174":1,"661":1,"743":1,"754":1,"1412":1,"1847":1,"1899":1,"2070":1,"2143":1,"2266":1,"2458":1,"2783":1,"2857":1},"1":{"744":1,"745":1,"746":1,"747":1,"748":1,"749":1,"1413":1,"1414":1},"2":{"49":2,"65":1,"73":1,"94":3,"114":7,"131":5,"134":7,"149":5,"160":1,"174":2,"176":10,"188":1,"191":5,"211":1,"236":7,"249":1,"277":3,"285":1,"294":1,"308":1,"333":1,"566":3,"567":3,"649":1,"661":1,"743":12,"745":4,"746":36,"747":13,"748":5,"750":4,"751":1,"752":2,"753":1,"754":2,"1317":5,"1345":5,"1346":1,"1362":2,"1412":5,"1413":10,"1414":2,"1422":2,"1550":3,"1583":1,"1585":1,"1619":4,"1847":1,"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"1899":1,"1920":1,"1956":2,"2070":1,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2143":1,"2182":6,"2198":9,"2199":5,"2200":3,"2201":7,"2202":3,"2266":9,"2290":1,"2320":1,"2324":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2411":1,"2458":3,"2516":2,"2528":1,"2676":1,"2685":1,"2745":2,"2783":3,"2857":4}}],["ee",{"2":{"191":1,"249":2,"566":1,"567":2,"1345":1,"1413":1,"1584":1,"2018":1,"2266":2,"2513":4,"2516":1,"2531":4,"2745":1,"2783":1}}],["eeconfig",{"0":{"1414":1},"2":{"94":1,"114":1,"134":1,"176":1,"191":2,"211":1,"236":1,"249":5,"266":1,"277":1,"285":1,"308":1,"328":1,"745":1,"1412":6,"1413":7,"1414":7,"2266":1,"2783":1}}],["elbow",{"2":{"2421":1}}],["elapses",{"2":{"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1253":1,"1255":1,"1258":1,"1261":1}}],["elapsed32",{"2":{"645":1,"2270":1,"2750":6}}],["elapsed",{"2":{"249":1,"294":1,"1407":1,"1466":1,"2191":1,"2785":1}}],["elf",{"2":{"236":1,"1362":1,"2580":1,"2622":1,"2667":2}}],["elongate",{"2":{"211":1}}],["ellora65",{"2":{"211":1}}],["ellipse",{"2":{"211":3,"236":1,"2750":3}}],["ellipses",{"2":{"153":1,"2750":3}}],["elevated",{"2":{"2422":1}}],["element++",{"2":{"1941":1,"2279":1}}],["element",{"2":{"1941":2,"2279":2}}],["elements",{"2":{"134":1,"2721":1,"2751":1}}],["electrical",{"2":{"1840":3,"2060":3,"2206":2,"2420":1,"2428":1,"2667":1,"2721":3}}],["electronics",{"2":{"763":1,"1564":1}}],["elephant42",{"2":{"191":2}}],["elephant",{"2":{"67":4,"72":1}}],["elsewhere",{"2":{"558":1,"614":1,"635":1,"2032":1,"2420":1,"2443":2,"2476":1,"2750":1,"2901":1,"2933":1,"2941":1}}],["else",{"2":{"90":6,"105":4,"179":1,"194":1,"196":3,"406":1,"408":2,"520":2,"540":1,"629":2,"639":1,"650":1,"651":1,"683":1,"1377":2,"1378":1,"1403":1,"1413":2,"1441":1,"1450":3,"1456":1,"1466":1,"1527":3,"1587":1,"1595":1,"1612":1,"1622":7,"1662":6,"1749":1,"1801":3,"1807":2,"1918":1,"1942":2,"1948":1,"2023":1,"2039":1,"2074":2,"2160":2,"2167":1,"2168":2,"2270":1,"2280":1,"2291":1,"2309":1,"2310":6,"2311":2,"2312":4,"2324":1,"2374":2,"2398":1,"2439":2,"2449":1,"2564":1,"2664":2,"2773":1,"2777":2,"2785":1,"2923":1}}],["eligible",{"2":{"1294":1,"2163":1}}],["eliminating",{"0":{"2161":1},"2":{"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1}}],["eliminate",{"2":{"76":1,"222":1,"277":1,"1749":1,"2161":1,"2427":1,"2721":1}}],["elitec",{"2":{"122":1,"311":18}}],["elite",{"0":{"1394":1,"1396":1},"1":{"1397":1,"1398":1},"2":{"86":2,"153":1,"189":2,"191":2,"199":1,"311":1,"1386":7,"1388":3,"1396":4,"1404":4,"2266":1,"2378":1,"2417":1,"2699":2,"2846":1,"2888":1}}],["evidence",{"2":{"2569":2}}],["evaporate",{"2":{"2420":1}}],["evaluate",{"2":{"2045":1}}],["evaluates",{"2":{"1841":2,"2061":2,"2240":1,"2241":1}}],["evaluated",{"2":{"561":1}}],["evaluation",{"0":{"2741":1},"2":{"543":1}}],["evaluations",{"0":{"543":1}}],["evo70",{"2":{"211":1}}],["evy",{"0":{"57":1}}],["evyd13",{"0":{"57":1},"2":{"57":22,"211":1}}],["ever",{"2":{"112":1,"154":1,"175":1,"194":1,"1308":1,"1450":3,"2928":1}}],["everywhere",{"2":{"2039":1}}],["everyone",{"2":{"179":1,"405":1,"406":1,"608":1,"619":1,"1492":1,"1497":1,"2573":1}}],["every",{"0":{"2663":1},"2":{"92":1,"188":1,"194":2,"199":1,"303":1,"456":1,"472":1,"492":1,"510":1,"554":1,"577":1,"578":1,"579":1,"613":1,"628":1,"643":1,"673":1,"711":1,"716":1,"717":1,"745":1,"1361":1,"1375":1,"1411":1,"1422":1,"1423":1,"1443":1,"1532":1,"1594":1,"1608":1,"1849":1,"1947":1,"2045":2,"2064":1,"2072":1,"2164":1,"2245":3,"2266":1,"2268":2,"2270":1,"2290":1,"2302":2,"2303":1,"2378":1,"2380":1,"2385":1,"2408":1,"2410":1,"2422":1,"2600":1,"2610":1,"2633":1,"2688":1,"2724":1,"2844":1,"2897":1,"2901":1,"2930":2}}],["everything",{"0":{"26":1},"2":{"317":1,"388":1,"423":1,"639":1,"659":1,"1197":1,"1333":1,"1339":1,"1379":1,"1413":1,"1419":1,"1439":1,"1655":1,"2075":1,"2190":1,"2274":1,"2289":1,"2291":1,"2410":2,"2427":1,"2430":1,"2501":1,"2550":1,"2579":1,"2586":1,"2610":1,"2657":1,"2662":1,"2727":1,"2751":1,"2925":1,"2928":1}}],["even",{"2":{"93":1,"153":2,"190":1,"211":1,"288":1,"526":1,"541":1,"548":1,"553":1,"562":2,"563":1,"590":1,"617":1,"632":1,"643":1,"654":2,"1353":1,"1361":1,"1378":2,"1406":1,"1407":1,"1412":1,"1413":2,"1438":1,"1444":1,"1457":1,"1511":1,"1513":1,"1587":1,"1596":1,"1606":2,"1613":1,"1664":1,"1669":1,"1743":1,"1751":1,"1755":1,"1756":1,"1931":1,"1955":1,"2017":1,"2192":1,"2248":1,"2252":1,"2258":1,"2287":1,"2302":1,"2324":1,"2372":1,"2374":1,"2411":1,"2422":1,"2428":1,"2438":1,"2445":1,"2568":2,"2610":1,"2700":1,"2725":1,"2750":1,"2780":1,"2902":2,"2914":1,"2917":1,"2921":1,"2936":2}}],["eventual",{"2":{"1427":1}}],["eventually",{"2":{"169":1,"1362":1,"2403":1,"2459":1}}],["events",{"0":{"406":1,"2040":1},"2":{"73":2,"203":1,"312":1,"406":1,"628":1,"629":1,"630":1,"641":1,"1407":2,"1413":1,"1459":1,"1599":1,"1661":1,"1662":1,"1754":1,"1758":1,"2025":1,"2069":1,"2269":1,"2560":1,"2785":1,"2822":1,"2847":2,"2863":1,"2902":1,"2908":4,"2913":1,"2917":1,"2933":2}}],["event",{"0":{"1456":1,"2464":1},"2":{"46":3,"160":1,"176":1,"199":1,"203":1,"406":5,"578":1,"628":1,"630":1,"1350":1,"1374":2,"1448":4,"1457":1,"1458":1,"1460":1,"1529":1,"1599":2,"1612":3,"1616":1,"1756":1,"1765":1,"2025":1,"2040":3,"2173":1,"2177":1,"2215":3,"2293":1,"2462":1,"2814":1,"2815":1,"2835":1,"2903":1,"2904":2,"2905":3,"2906":2,"2907":1,"2920":1,"2933":1}}],["ez",{"2":{"50":1,"114":1,"270":2,"277":1,"435":1,"440":1,"2242":1,"2721":1}}],["e",{"2":{"38":2,"114":2,"266":2,"328":1,"335":1,"348":1,"369":1,"405":1,"427":1,"428":2,"452":2,"453":2,"464":1,"467":2,"528":1,"563":1,"586":1,"587":2,"683":2,"765":1,"1193":1,"1197":1,"1245":1,"1266":1,"1362":1,"1385":2,"1388":14,"1389":1,"1390":1,"1392":2,"1396":5,"1407":1,"1416":1,"1419":1,"1436":1,"1450":2,"1453":1,"1478":1,"1532":2,"1584":1,"1595":1,"1597":1,"1599":2,"1606":2,"1619":1,"1655":1,"1659":1,"1693":2,"1737":1,"1751":3,"1757":1,"1758":1,"1769":1,"1790":1,"1807":2,"1844":2,"1919":13,"1939":2,"1942":1,"1947":2,"1979":1,"1993":1,"2000":1,"2016":1,"2017":1,"2030":2,"2045":1,"2066":2,"2074":1,"2159":1,"2161":4,"2181":1,"2189":1,"2191":3,"2192":1,"2210":1,"2215":1,"2266":5,"2269":3,"2280":1,"2289":1,"2293":1,"2294":4,"2302":1,"2311":1,"2407":1,"2416":2,"2418":2,"2419":1,"2428":1,"2483":2,"2495":1,"2503":3,"2515":3,"2532":13,"2547":1,"2553":1,"2582":1,"2603":2,"2655":2,"2656":2,"2669":2,"2677":1,"2719":2,"2720":2,"2721":4,"2722":1,"2724":1,"2748":1,"2750":1,"2882":1,"2917":1,"2919":1}}],["eat",{"2":{"2411":1}}],["eabi",{"2":{"381":1}}],["ea1514b3",{"2":{"370":1,"371":1}}],["eagle",{"2":{"211":1}}],["eager",{"2":{"94":1,"114":1,"199":1,"222":1,"236":1,"1407":9,"1410":4,"2847":3}}],["earliest",{"2":{"2669":1,"2670":1}}],["earlier",{"2":{"114":1,"1629":1,"1657":1,"1840":1,"2060":1,"2702":1,"2706":1,"2901":1,"2902":4,"2908":2,"2931":1}}],["early",{"0":{"2668":1,"2669":1,"2670":1},"1":{"2669":1,"2670":1,"2671":1},"2":{"49":1,"63":1,"65":1,"77":1,"320":1,"335":2,"631":1,"632":1,"1611":1,"1951":1,"2013":1,"2030":1,"2309":1,"2425":1,"2668":2,"2669":5,"2670":4,"2721":5,"2919":1}}],["each",{"0":{"35":1,"1624":1,"1625":1},"1":{"36":1},"2":{"31":3,"34":1,"36":1,"45":2,"65":1,"118":1,"138":1,"149":1,"166":1,"176":2,"188":1,"222":1,"234":1,"273":1,"307":1,"369":1,"396":1,"405":1,"431":2,"470":1,"471":1,"485":1,"490":1,"529":1,"551":1,"556":1,"559":1,"562":2,"563":1,"566":1,"573":1,"578":1,"613":2,"614":1,"625":1,"626":1,"637":1,"645":3,"667":1,"684":1,"698":1,"712":1,"726":1,"731":1,"759":1,"802":1,"823":1,"828":1,"852":1,"860":1,"884":1,"890":1,"916":1,"925":1,"951":1,"959":1,"985":1,"993":1,"1019":1,"1027":1,"1053":1,"1061":1,"1087":1,"1095":1,"1121":1,"1129":1,"1155":1,"1163":1,"1211":1,"1216":1,"1249":1,"1280":1,"1285":1,"1309":1,"1310":1,"1326":1,"1340":1,"1386":1,"1407":1,"1410":1,"1412":1,"1421":1,"1427":1,"1443":1,"1447":1,"1448":2,"1487":3,"1519":2,"1522":1,"1532":2,"1533":1,"1606":1,"1611":1,"1620":2,"1638":1,"1656":2,"1658":1,"1659":2,"1660":1,"1664":1,"1675":1,"1714":1,"1716":1,"1753":1,"1757":1,"1775":1,"1804":1,"1840":1,"1846":1,"1928":1,"1930":1,"1942":1,"1946":1,"1947":2,"1948":1,"1979":1,"2014":1,"2016":2,"2017":1,"2023":1,"2060":1,"2064":2,"2069":1,"2178":1,"2179":1,"2185":3,"2187":7,"2190":1,"2223":1,"2227":1,"2257":1,"2265":1,"2266":1,"2270":1,"2271":1,"2274":1,"2280":1,"2282":1,"2288":1,"2302":6,"2303":2,"2308":3,"2311":6,"2318":1,"2322":1,"2323":3,"2380":1,"2403":1,"2406":1,"2407":1,"2416":1,"2419":1,"2421":2,"2422":1,"2424":1,"2427":1,"2435":1,"2456":1,"2457":1,"2459":1,"2463":1,"2495":1,"2514":2,"2548":1,"2551":2,"2553":1,"2566":1,"2571":1,"2579":1,"2632":1,"2653":1,"2668":1,"2698":1,"2702":2,"2713":2,"2722":1,"2747":1,"2748":1,"2749":2,"2750":3,"2758":2,"2765":2,"2766":1,"2768":2,"2770":2,"2787":2,"2788":2,"2789":1,"2862":4,"2863":1,"2864":2,"2865":1,"2870":1,"2871":2,"2899":1,"2903":1,"2908":1,"2915":2,"2920":1,"2937":3,"2942":1}}],["east",{"2":{"1769":1,"1993":1,"2322":1}}],["eason",{"2":{"222":1}}],["ease",{"2":{"70":1,"2322":1,"2466":1}}],["easyeda",{"2":{"93":1}}],["easy",{"0":{"1308":1},"1":{"1309":1},"2":{"6":1,"114":2,"154":1,"381":1,"437":1,"493":1,"520":2,"540":1,"546":1,"607":1,"608":1,"612":1,"614":1,"663":1,"673":1,"693":1,"757":1,"763":1,"1308":3,"1310":1,"1385":1,"1805":1,"2188":1,"2258":1,"2418":1,"2421":1,"2444":1,"2572":2,"2578":1,"2613":1,"2621":1,"2751":1}}],["easiest",{"2":{"614":1,"1309":1,"1840":1,"2060":1,"2302":1,"2322":1,"2368":1,"2422":1,"2474":1,"2788":1}}],["easier",{"2":{"2":1,"10":1,"21":1,"31":1,"45":1,"70":1,"118":1,"130":1,"133":1,"285":1,"397":1,"414":1,"488":1,"489":1,"524":1,"536":1,"538":1,"548":1,"587":1,"1337":1,"1443":1,"1587":1,"1849":1,"2030":1,"2072":1,"2208":1,"2286":1,"2319":1,"2323":1,"2398":1,"2400":1,"2418":2,"2429":1,"2432":1,"2440":1,"2551":2,"2554":1,"2573":1,"2578":1,"2579":1,"2625":1,"2662":1,"2664":1,"2744":1,"2787":1,"2930":1,"2940":1}}],["easily",{"2":{"6":1,"65":1,"328":1,"445":1,"675":1,"684":1,"1280":1,"1450":1,"1736":1,"1996":1,"2050":1,"2178":1,"2398":1,"2420":1,"2425":1,"2577":1,"2607":1,"2633":1,"2655":1,"2901":1,"2937":1}}],["exempt",{"2":{"2914":1,"2915":2}}],["exempted",{"2":{"2862":1}}],["exe",{"2":{"2608":3,"2662":1,"2667":1}}],["exercise",{"2":{"1606":1,"2787":1}}],["exec",{"2":{"149":1,"572":1,"653":1,"654":1,"655":1,"656":2,"657":2,"1630":1,"2270":2,"2411":1,"2509":1,"2515":1,"2933":1}}],["executor",{"0":{"654":1,"655":1},"2":{"572":1,"654":1,"655":1,"1630":1,"2411":1}}],["executors",{"2":{"134":1,"658":2}}],["executable",{"2":{"391":1,"2572":1,"2652":1,"2667":2,"2727":1,"2937":1,"2939":1}}],["executions",{"2":{"655":1}}],["execution",{"0":{"653":1,"656":1,"657":1},"1":{"654":1,"655":1,"656":1,"657":1,"658":1},"2":{"65":1,"249":1,"572":1,"654":3,"655":1,"656":2,"657":2,"760":1,"2411":1,"2669":1,"2727":1,"2747":1}}],["executing",{"2":{"49":1,"160":1,"654":1,"655":1,"2207":1,"2667":1,"2669":2,"2670":1}}],["executed",{"2":{"481":1,"655":1,"760":2,"2310":1,"2669":3,"2670":2,"2671":1,"2747":1}}],["executes",{"2":{"49":1,"750":1,"753":1}}],["execute",{"2":{"49":1,"65":1,"77":1,"105":2,"247":1,"653":1,"1378":1,"1529":2,"2410":2,"2496":1,"2509":2,"2515":2,"2698":1}}],["exlm",{"2":{"1511":2,"2539":1,"2558":1}}],["exsl",{"2":{"1451":1,"2509":1,"2515":1}}],["exsel",{"2":{"231":2,"1451":3,"2509":2,"2515":2}}],["exhaustion",{"2":{"716":1,"717":1}}],["exhaustive",{"2":{"273":1,"720":1,"2718":1,"2719":1,"2895":1}}],["exiting",{"2":{"2291":1,"2377":2,"2384":2}}],["exit",{"2":{"430":2,"450":1,"451":1,"452":1,"453":1,"458":1,"459":1,"467":1,"683":1,"2052":1,"2501":1,"2748":3,"2869":2}}],["existed",{"2":{"2310":1}}],["existence",{"2":{"199":1,"1455":1,"2569":1}}],["exists",{"2":{"191":1,"266":1,"294":1,"431":2,"461":1,"667":1,"675":1,"1375":2,"1430":1,"1478":1,"1494":1,"1496":1,"1662":1,"1756":1,"2160":1,"2441":1,"2667":1,"2721":1,"2722":1}}],["exist",{"2":{"182":1,"191":1,"199":1,"236":1,"373":2,"553":1,"567":1,"596":1,"611":1,"1340":1,"1479":1,"2310":1,"2403":1,"2496":1,"2684":1,"2760":1,"2767":1,"2937":1}}],["existing",{"0":{"31":1,"34":1,"36":1,"2704":1,"2937":1},"2":{"50":2,"92":1,"118":1,"128":1,"140":1,"149":2,"158":1,"194":1,"201":1,"203":1,"213":1,"221":1,"240":1,"249":1,"262":1,"268":1,"272":1,"275":1,"283":1,"327":1,"338":3,"347":1,"387":1,"397":1,"400":1,"408":1,"443":1,"520":2,"548":1,"617":1,"626":1,"628":1,"1422":8,"1425":1,"1427":1,"1634":1,"1737":1,"2018":1,"2416":1,"2424":1,"2475":1,"2567":1,"2570":1,"2587":1,"2633":2,"2655":2,"2662":1,"2667":2,"2704":2,"2719":1,"2721":5,"2722":1,"2937":2}}],["exaggeration",{"2":{"2929":1}}],["exactly",{"2":{"1432":1,"2050":1,"2289":1,"2403":1,"2466":1}}],["exact",{"2":{"392":1,"595":1,"654":1,"1606":1,"1707":1,"1756":1,"2337":1,"2338":1,"2339":1,"2398":1,"2476":1,"2568":2,"2899":1,"2929":1}}],["examine",{"2":{"1584":1}}],["examines",{"2":{"433":1,"454":1}}],["examining",{"0":{"372":1}}],["examples",{"0":{"525":1,"1325":1,"1376":1,"1440":1,"1599":1,"1642":1,"1694":1,"1737":1,"1745":1,"1748":1,"1942":1,"2022":1,"2026":1,"2041":1,"2073":1,"2074":1,"2217":1,"2280":1,"2304":1,"2306":1,"2729":1,"2736":1},"1":{"1326":1,"1327":1,"1328":1,"1377":1,"1378":1,"1441":1,"1442":1,"1443":1,"1695":1,"1696":1,"1746":1,"1747":1,"1749":1,"2023":1,"2024":1,"2025":1,"2027":1,"2028":1,"2042":1,"2043":1,"2074":1,"2075":1,"2218":1,"2219":1,"2305":1,"2306":1,"2307":2,"2308":2,"2309":2,"2310":2,"2311":2,"2312":2,"2737":1,"2738":1,"2739":1},"2":{"99":1,"114":1,"198":1,"312":1,"432":1,"433":1,"435":1,"437":1,"438":1,"461":1,"463":1,"467":1,"614":1,"666":2,"1325":1,"1376":1,"1411":1,"1427":1,"1440":1,"1457":1,"1606":1,"1607":1,"1736":1,"1743":1,"1758":1,"1844":1,"2026":1,"2050":1,"2066":1,"2288":1,"2289":1,"2302":1,"2303":1,"2306":3,"2312":4,"2410":1,"2418":1,"2434":1,"2451":1,"2459":1,"2639":1,"2728":2,"2748":3,"2750":2,"2824":1,"2917":1,"2936":1}}],["example",{"0":{"369":1,"471":1,"476":1,"477":1,"478":1,"479":1,"530":1,"531":1,"532":1,"587":1,"629":1,"633":1,"639":1,"642":1,"645":1,"647":1,"650":1,"651":1,"1413":1,"1424":1,"1425":1,"1465":1,"1473":1,"1517":1,"1527":1,"1529":1,"1564":1,"1744":1,"1761":1,"1793":1,"1794":1,"1807":1,"1918":1,"1940":1,"1941":1,"2052":1,"2186":1,"2278":1,"2279":1,"2305":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1,"2725":1,"2777":1,"2779":1,"2900":1},"1":{"1466":1},"2":{"49":2,"70":1,"90":2,"98":1,"99":2,"105":2,"111":1,"114":2,"149":1,"194":1,"202":1,"203":1,"211":1,"234":1,"272":1,"288":1,"303":1,"332":1,"357":1,"370":1,"387":3,"421":1,"427":3,"430":1,"431":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"471":2,"472":3,"474":2,"480":2,"481":1,"482":2,"483":4,"487":2,"489":1,"494":1,"498":2,"520":1,"537":1,"540":1,"570":1,"586":1,"589":1,"597":1,"611":1,"613":2,"614":1,"627":1,"629":1,"633":1,"639":1,"642":2,"645":1,"646":1,"654":1,"658":1,"668":1,"674":2,"676":1,"683":1,"718":1,"731":1,"746":1,"763":1,"765":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1200":1,"1201":1,"1216":1,"1245":1,"1249":1,"1266":2,"1284":1,"1312":1,"1326":1,"1327":2,"1328":1,"1344":1,"1368":1,"1374":1,"1375":2,"1377":2,"1378":2,"1385":1,"1402":2,"1403":1,"1404":1,"1406":2,"1412":1,"1413":4,"1416":1,"1420":1,"1424":2,"1425":1,"1432":1,"1434":1,"1435":1,"1439":1,"1440":2,"1443":1,"1448":8,"1450":1,"1451":1,"1452":2,"1455":1,"1456":1,"1469":1,"1472":1,"1474":1,"1476":1,"1486":1,"1493":1,"1497":1,"1511":1,"1512":1,"1526":1,"1528":1,"1529":1,"1532":2,"1557":1,"1562":1,"1564":1,"1585":1,"1587":1,"1591":1,"1598":1,"1599":3,"1606":1,"1607":1,"1611":2,"1612":2,"1613":1,"1618":1,"1630":1,"1633":1,"1638":1,"1642":1,"1659":1,"1660":1,"1664":2,"1684":1,"1696":1,"1735":1,"1744":1,"1746":1,"1747":1,"1749":2,"1751":1,"1765":1,"1770":1,"1771":1,"1793":1,"1794":1,"1795":1,"1796":1,"1805":1,"1807":1,"1839":1,"1840":1,"1844":1,"1917":1,"1928":1,"1930":1,"1933":1,"1939":1,"1940":1,"1941":1,"1943":1,"1947":1,"1979":1,"1983":1,"1984":1,"1986":2,"1995":1,"2020":1,"2023":1,"2025":1,"2027":1,"2028":1,"2044":1,"2050":1,"2052":1,"2059":1,"2060":1,"2066":1,"2074":1,"2160":2,"2166":1,"2168":1,"2173":1,"2188":1,"2194":1,"2198":1,"2206":1,"2219":2,"2253":1,"2262":1,"2266":1,"2270":1,"2277":1,"2278":1,"2279":1,"2286":1,"2287":1,"2290":1,"2293":1,"2296":2,"2298":1,"2301":1,"2302":2,"2305":1,"2308":1,"2310":5,"2311":1,"2312":2,"2322":2,"2323":1,"2324":1,"2400":2,"2407":1,"2410":4,"2425":1,"2433":2,"2435":2,"2438":1,"2439":2,"2440":1,"2441":1,"2446":1,"2449":3,"2459":2,"2465":1,"2467":1,"2479":1,"2492":1,"2495":3,"2496":1,"2497":1,"2510":1,"2528":1,"2548":1,"2550":1,"2553":1,"2560":1,"2562":1,"2563":1,"2564":1,"2576":2,"2607":1,"2622":2,"2643":1,"2645":1,"2669":1,"2700":1,"2702":1,"2703":1,"2704":1,"2714":1,"2719":1,"2721":3,"2749":1,"2750":1,"2785":1,"2790":1,"2844":1,"2845":6,"2846":2,"2847":1,"2856":1,"2861":2,"2862":6,"2864":4,"2865":3,"2870":3,"2871":4,"2872":1,"2873":1,"2875":3,"2877":1,"2878":2,"2879":1,"2900":2,"2901":3,"2907":3,"2908":2,"2909":1,"2910":1,"2913":1,"2914":1,"2915":3,"2916":1,"2927":1,"2930":2,"2932":1,"2934":1,"2937":1,"2939":1,"2941":1,"2942":1}}],["exclaim",{"2":{"2539":1,"2558":1}}],["exclamation",{"2":{"1511":1}}],["excluding",{"0":{"498":1},"2":{"559":1,"1550":1,"2164":1,"2850":1}}],["excluded",{"2":{"498":1,"2198":2}}],["exclude",{"2":{"176":2,"308":1,"667":2,"1527":7}}],["exclusion",{"0":{"1683":1},"1":{"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1},"2":{"1683":2}}],["exclusions",{"2":{"114":1,"149":1}}],["exclusively",{"2":{"360":1,"2388":1}}],["exclusive",{"2":{"160":1,"1420":1}}],["exchangeable",{"2":{"711":1}}],["excess",{"2":{"677":1,"2421":1}}],["excessive",{"2":{"536":1,"716":1,"2757":1}}],["except",{"2":{"520":1,"528":2,"533":1,"559":1,"794":1,"1282":1,"1316":1,"1395":1,"1416":1,"1735":1,"2023":1,"2376":1,"2386":1,"2438":1,"2528":1,"2926":1}}],["exceptionally",{"2":{"2916":1}}],["exceptional",{"2":{"533":1}}],["exceptionname",{"2":{"527":1}}],["exception",{"0":{"2730":1},"1":{"2731":1,"2732":1},"2":{"189":1,"194":1,"528":1,"533":3,"1471":1,"1478":1,"2310":1,"2475":1,"2502":1,"2704":1,"2730":1,"2731":1,"2732":1,"2734":1,"2760":1,"2911":1,"2914":1}}],["exceptions",{"0":{"533":1},"2":{"160":1,"533":1,"682":1,"1526":1,"2030":1,"2045":1,"2443":1}}],["exceed",{"2":{"2416":1}}],["exceeds",{"2":{"176":1,"548":1}}],["exceeding",{"2":{"160":1}}],["exceeded",{"2":{"28":1,"573":1,"1506":1}}],["ext",{"2":{"2699":1}}],["extreg",{"2":{"2006":5}}],["extremely",{"2":{"546":1,"641":1,"685":1,"2619":1,"2918":1}}],["extraneous",{"2":{"2882":1}}],["extracondensedbold",{"2":{"2748":1}}],["extracts",{"2":{"670":1}}],["extracted",{"2":{"249":1,"2652":1}}],["extract",{"0":{"670":1},"2":{"236":1,"249":5,"277":1,"338":1,"664":1,"670":4,"2651":1,"2863":1}}],["extraction",{"2":{"191":1}}],["extrapolates",{"2":{"663":1}}],["extrakeys",{"2":{"191":1,"2882":1}}],["extrakey",{"2":{"70":1,"111":1,"191":1,"209":1,"572":1,"573":2,"1362":1,"1366":2,"2210":1,"2411":1,"2882":1}}],["extras",{"2":{"48":1,"114":1,"160":1,"199":2,"222":1,"277":1,"1404":1,"2880":1}}],["extra",{"0":{"603":1,"1366":1},"2":{"45":2,"114":1,"145":1,"176":1,"191":2,"199":1,"294":1,"373":1,"620":1,"690":1,"743":1,"755":1,"1362":2,"1472":1,"1556":1,"1603":7,"2189":1,"2271":2,"2291":1,"2410":1,"2424":1,"2497":1,"2578":1,"2660":1,"2668":1,"2684":1,"2748":1,"2902":1}}],["extkeys",{"2":{"143":2}}],["extern",{"2":{"266":1,"1918":1,"2936":1}}],["externs",{"2":{"196":1,"333":1}}],["externally",{"2":{"224":1,"228":1,"373":1,"2583":1}}],["external",{"0":{"228":1,"449":1,"1628":1,"2458":1,"2583":1,"2585":1,"2586":1,"2588":1,"2589":1},"1":{"450":1,"451":1,"452":1,"453":1,"454":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1},"2":{"73":1,"114":1,"134":1,"149":1,"174":1,"220":1,"224":1,"228":3,"241":2,"253":2,"268":1,"270":2,"281":2,"288":1,"308":1,"320":1,"450":1,"451":1,"452":1,"453":1,"454":1,"695":1,"743":1,"746":10,"747":5,"750":1,"752":6,"753":1,"756":7,"1194":1,"1202":1,"1294":1,"1627":2,"1628":2,"1838":1,"1844":1,"1940":1,"2058":1,"2066":1,"2458":1,"2583":5,"2584":1,"2585":1,"2586":1,"2587":2,"2588":2,"2589":3,"2590":1,"2685":1,"2698":2,"2708":1,"2721":1,"2735":1,"2747":1,"2750":1,"2811":1}}],["extent",{"2":{"2298":1,"2750":1}}],["extensively",{"2":{"537":1}}],["extensive",{"2":{"411":1,"1342":1}}],["extensions",{"0":{"2664":1},"2":{"2664":2}}],["extension",{"2":{"199":1,"211":1,"521":1,"527":1,"562":2,"1930":1,"2664":3,"2666":2,"2700":1}}],["extensible",{"2":{"107":1,"114":1,"2646":1}}],["extending",{"0":{"656":1},"2":{"562":2,"628":1}}],["extend",{"2":{"160":1,"191":1,"294":1,"308":1,"656":2}}],["extended",{"2":{"74":1,"176":2,"211":1,"236":1,"285":1,"492":2,"562":2,"746":1,"747":1,"748":1,"1604":1,"2016":4,"2017":1,"2491":1,"2492":1,"2494":1,"2496":2,"2684":1,"2880":2,"2896":1}}],["ext65",{"0":{"60":1},"2":{"60":1}}],["expires",{"2":{"2910":1}}],["expired",{"2":{"2045":1,"2902":1}}],["expansion",{"2":{"2457":1}}],["expands",{"2":{"452":1,"2901":1}}],["expanding",{"2":{"356":1,"1417":1,"2560":1}}],["expandable",{"2":{"356":1}}],["expanders",{"2":{"2451":1}}],["expander",{"2":{"266":1}}],["expanded",{"0":{"118":1},"2":{"70":1,"563":1,"1340":1,"2189":1}}],["expand",{"2":{"134":1,"149":1,"285":1,"387":1,"452":1,"2901":1}}],["expression",{"2":{"536":1}}],["expressions",{"0":{"538":1,"540":1},"2":{"431":2,"540":1}}],["expressed",{"2":{"70":1}}],["explore",{"2":{"2428":1,"2472":1,"2579":1}}],["explorer",{"2":{"2393":1,"2395":1,"2397":1,"2607":2,"2655":1}}],["exploiting",{"2":{"312":1}}],["exploit",{"2":{"312":1}}],["explanations",{"2":{"2408":1}}],["explanation",{"2":{"1415":1,"1955":2,"2303":1,"2313":1}}],["explained",{"2":{"1426":1,"2410":1}}],["explain",{"2":{"520":1,"522":1,"611":1,"617":1,"1756":1,"2404":1,"2926":1}}],["explains",{"2":{"469":1,"1753":1,"2437":1,"2726":1}}],["explaining",{"2":{"173":1,"1753":1,"2721":1,"2930":1,"2934":1}}],["explicit",{"0":{"124":1},"2":{"134":1,"198":1,"1616":1,"2728":1}}],["explicitly",{"2":{"14":1,"114":1,"191":1,"536":1,"746":1,"1513":1,"1583":1,"1617":1,"2184":1,"2198":1,"2291":1,"2712":1,"2729":1,"2737":1,"2887":1}}],["exponent",{"2":{"2017":4}}],["exporting",{"2":{"2748":2}}],["exports",{"2":{"427":2,"428":1}}],["exported",{"2":{"373":1}}],["export",{"2":{"134":1,"416":1,"417":1,"418":1,"436":1,"448":1,"450":2,"451":2,"498":1,"576":1,"2425":2,"2721":1}}],["exposes",{"2":{"1403":1,"2444":1}}],["exposed",{"2":{"751":1,"752":1,"753":1,"2422":2,"2673":1,"2857":1}}],["expose",{"2":{"114":1,"160":1,"176":1,"211":1,"285":1,"2445":1}}],["expert",{"2":{"765":2}}],["experiment",{"2":{"2000":1,"2428":1}}],["experimentation",{"2":{"613":1}}],["experimental",{"2":{"568":1,"1204":1,"1484":1,"2242":2,"2268":1}}],["experiencing",{"2":{"1335":1}}],["experience",{"2":{"553":1,"609":1,"1204":1,"1298":1,"1484":1,"1486":1,"2265":1,"2625":1}}],["expense",{"2":{"553":1,"2372":1}}],["expensive",{"2":{"114":1,"1295":1,"1410":1,"1849":1,"2072":1,"2417":1}}],["expects",{"2":{"1758":1,"2287":1,"2748":1,"2917":1}}],["expect",{"2":{"494":1,"1361":1,"1406":1,"2013":1,"2302":1,"2460":1,"2566":1,"2569":1,"2610":1,"2875":1,"2940":1}}],["expecting",{"2":{"124":1,"1395":1}}],["expected",{"2":{"4":1,"13":1,"303":1,"320":1,"373":1,"408":1,"725":1,"763":1,"1528":1,"1806":1,"1840":3,"2030":1,"2060":3,"2291":1,"2862":1,"2903":1,"2919":1}}],["erm",{"0":{"1678":1},"2":{"1673":1,"1678":2,"1679":2}}],["err",{"2":{"553":1}}],["errno",{"2":{"308":1}}],["erroneous",{"2":{"149":1,"160":1}}],["error",{"0":{"141":1},"2":{"28":1,"92":1,"103":1,"114":4,"126":1,"149":4,"160":1,"176":3,"191":2,"199":3,"201":1,"211":1,"222":4,"236":1,"328":1,"333":1,"371":1,"490":1,"557":1,"573":1,"579":1,"613":1,"751":1,"772":2,"775":2,"778":2,"781":2,"784":2,"787":2,"790":2,"793":2,"796":2,"1258":2,"1261":2,"1419":1,"1518":1,"1985":1,"2012":1,"2287":1,"2427":1,"2440":1,"2501":1,"2600":1,"2609":1,"2621":1,"2627":1}}],["errors",{"0":{"2448":1},"2":{"17":1,"34":1,"73":2,"92":1,"114":2,"134":1,"149":1,"160":2,"191":2,"199":1,"211":2,"333":1,"372":1,"423":1,"438":1,"548":1,"613":3,"1362":1,"1385":1,"1387":1,"1518":1,"2012":1,"2017":1,"2268":2,"2284":1,"2410":1,"2427":1,"2448":2,"2483":1,"2591":1,"2600":1,"2602":1,"2662":1,"2760":1,"2766":1,"2767":1,"2936":1}}],["eras",{"2":{"2509":1,"2515":1}}],["erasing",{"2":{"2495":1,"2501":1,"2608":1}}],["erased",{"2":{"2501":8}}],["erase",{"2":{"277":2,"745":1,"749":1,"752":1,"1312":1,"1362":1,"1941":1,"2279":1,"2376":2,"2495":1,"2509":2,"2515":2,"2608":1,"2630":1}}],["era",{"2":{"236":1,"249":1}}],["era65",{"2":{"222":1}}],["erovia",{"2":{"164":1}}],["ergokbd",{"2":{"2567":1}}],["ergosaurus",{"2":{"159":2}}],["ergotaco",{"2":{"143":2}}],["ergodash",{"2":{"143":4}}],["ergodone",{"2":{"102":2}}],["ergodox",{"0":{"1798":1},"2":{"8":1,"114":3,"134":1,"143":2,"211":1,"285":2,"291":2,"294":1,"435":1,"1410":1,"1798":7,"2276":1,"2308":9,"2410":2}}],["ergoarrows",{"2":{"143":2}}],["ergo42",{"2":{"143":2}}],["ergo",{"2":{"143":2}}],["ergoinu",{"2":{"37":2,"149":1}}],["enamelled",{"2":{"2418":1}}],["enablehexnumpad",{"2":{"2324":1}}],["enable=true",{"2":{"1319":1,"1330":1}}],["enable=yes",{"2":{"93":1,"277":1,"432":1,"1329":1,"2210":1,"2939":1}}],["enabled",{"0":{"561":1,"1576":1,"1857":1,"2083":1},"1":{"1577":1,"1858":1,"2084":1},"2":{"112":3,"114":2,"174":1,"191":1,"209":4,"211":1,"222":2,"236":1,"249":2,"265":1,"268":1,"275":2,"277":1,"283":1,"307":1,"308":1,"328":1,"445":1,"454":1,"559":9,"562":1,"572":1,"573":1,"649":2,"693":1,"714":1,"745":1,"760":3,"1298":1,"1317":1,"1324":2,"1326":1,"1369":1,"1389":2,"1390":2,"1394":1,"1403":1,"1413":5,"1422":4,"1435":1,"1442":7,"1448":1,"1479":1,"1483":1,"1494":1,"1499":1,"1504":1,"1512":3,"1513":1,"1520":1,"1527":1,"1530":1,"1548":1,"1577":1,"1582":1,"1583":1,"1589":1,"1604":1,"1615":1,"1617":1,"1621":1,"1658":1,"1661":1,"1672":1,"1681":1,"1683":1,"1749":1,"1751":2,"1845":2,"1846":2,"1857":1,"1858":1,"1867":1,"1868":1,"1869":1,"1870":1,"1899":1,"1919":1,"1986":2,"1997":1,"2009":1,"2029":1,"2030":1,"2032":2,"2039":3,"2044":4,"2068":2,"2069":2,"2083":1,"2084":1,"2093":1,"2094":1,"2095":1,"2096":1,"2143":1,"2159":1,"2179":1,"2181":1,"2183":1,"2199":7,"2203":1,"2204":1,"2210":2,"2213":1,"2214":1,"2247":1,"2254":1,"2269":3,"2271":3,"2285":1,"2314":2,"2321":1,"2324":2,"2372":1,"2402":1,"2408":1,"2411":1,"2444":1,"2496":1,"2532":1,"2656":1,"2721":3,"2747":2,"2750":1,"2780":1,"2847":1,"2849":2,"2850":2,"2853":1,"2854":1,"2856":1,"2864":1,"2866":1,"2868":2,"2870":3,"2871":1,"2872":1,"2873":2,"2874":1,"2882":1,"2887":2,"2908":3,"2909":3,"2911":2,"2912":2,"2914":3,"2917":2}}],["enables",{"2":{"87":1,"114":1,"119":1,"283":1,"308":1,"559":7,"561":1,"562":6,"563":1,"570":1,"572":2,"639":1,"888":1,"1282":1,"1480":4,"1505":1,"1512":1,"1513":1,"1615":1,"1630":1,"1843":20,"1846":1,"1934":1,"1943":1,"1954":1,"2008":1,"2009":1,"2016":2,"2017":2,"2027":1,"2034":1,"2063":49,"2069":1,"2159":1,"2269":8,"2271":1,"2313":1,"2314":4,"2411":7,"2693":1,"2821":1,"2853":1,"2854":1,"2866":1,"2894":1,"2899":1,"2910":1,"2913":1}}],["enable",{"0":{"1494":1,"1520":1,"1567":1,"1579":1,"1588":1,"1760":1,"1853":1,"1854":1,"2032":1,"2039":1,"2079":1,"2080":1,"2157":1,"2200":1,"2243":1},"1":{"1589":1},"2":{"10":1,"28":1,"31":3,"34":3,"49":1,"65":5,"70":1,"74":1,"75":1,"87":3,"88":7,"93":2,"94":1,"103":1,"104":7,"114":6,"118":1,"119":1,"124":1,"126":1,"127":7,"131":1,"133":1,"134":12,"149":2,"160":1,"176":5,"191":3,"194":2,"199":1,"202":2,"209":2,"211":2,"222":2,"232":1,"234":1,"235":2,"236":2,"247":1,"249":1,"266":35,"273":1,"277":2,"285":1,"307":2,"308":2,"312":1,"328":2,"374":1,"427":1,"486":1,"505":1,"559":2,"561":2,"562":4,"568":8,"570":1,"572":23,"573":7,"590":1,"639":1,"645":1,"653":2,"714":1,"715":1,"718":1,"728":1,"730":1,"760":1,"765":4,"801":1,"818":3,"820":1,"827":1,"845":3,"847":1,"859":1,"886":1,"888":1,"889":1,"909":3,"911":1,"924":1,"944":3,"946":1,"958":1,"978":3,"980":1,"992":1,"1012":3,"1014":1,"1026":1,"1046":3,"1048":1,"1060":1,"1094":1,"1128":1,"1162":1,"1198":1,"1200":1,"1201":1,"1206":2,"1215":1,"1235":3,"1237":1,"1245":3,"1266":2,"1285":1,"1296":2,"1298":1,"1300":1,"1319":2,"1326":2,"1327":1,"1328":1,"1330":1,"1351":3,"1355":4,"1356":1,"1362":4,"1363":1,"1366":2,"1373":3,"1375":2,"1392":1,"1402":1,"1413":3,"1435":3,"1441":1,"1442":4,"1467":1,"1471":1,"1478":2,"1479":2,"1480":2,"1483":1,"1486":1,"1487":1,"1494":1,"1495":1,"1512":1,"1514":1,"1520":3,"1527":1,"1529":4,"1530":1,"1536":1,"1548":1,"1550":4,"1562":1,"1563":1,"1583":1,"1588":1,"1589":2,"1591":1,"1596":2,"1600":1,"1615":1,"1617":1,"1619":1,"1620":1,"1621":2,"1622":2,"1640":1,"1655":2,"1659":1,"1661":2,"1662":1,"1672":7,"1692":1,"1733":2,"1738":2,"1749":1,"1760":1,"1767":1,"1769":1,"1790":1,"1794":2,"1800":1,"1804":2,"1806":1,"1807":3,"1843":22,"1845":2,"1846":2,"1913":2,"1915":1,"1916":1,"1925":1,"1926":2,"1930":1,"1931":3,"1933":1,"1938":2,"1939":1,"1942":1,"1951":1,"1956":2,"1959":1,"1982":2,"1983":2,"1984":2,"1985":2,"1988":4,"1990":2,"1994":1,"1996":2,"1997":1,"2003":13,"2007":1,"2008":4,"2009":5,"2012":1,"2014":1,"2016":6,"2017":2,"2018":1,"2020":1,"2025":1,"2026":1,"2027":1,"2029":1,"2032":3,"2034":1,"2039":6,"2042":3,"2044":1,"2048":1,"2063":51,"2065":1,"2068":2,"2069":2,"2073":1,"2074":1,"2157":1,"2174":1,"2179":2,"2182":1,"2184":11,"2188":1,"2189":2,"2190":1,"2191":3,"2200":2,"2203":1,"2210":4,"2213":1,"2243":1,"2244":1,"2246":1,"2247":4,"2251":1,"2261":1,"2266":1,"2269":13,"2271":4,"2277":3,"2280":1,"2286":3,"2287":2,"2288":1,"2289":1,"2290":2,"2291":1,"2295":1,"2298":2,"2302":1,"2305":1,"2313":2,"2322":4,"2323":2,"2324":3,"2369":2,"2371":2,"2377":1,"2384":1,"2411":17,"2412":2,"2439":5,"2440":2,"2445":4,"2513":2,"2531":2,"2667":4,"2680":1,"2720":1,"2721":8,"2745":1,"2746":2,"2747":1,"2749":12,"2752":2,"2847":3,"2856":1,"2864":1,"2868":2,"2870":4,"2871":1,"2872":1,"2873":1,"2874":1,"2876":1,"2882":8,"2883":2,"2884":1,"2887":46,"2899":1,"2901":5,"2908":1,"2913":1,"2917":1,"2919":1,"2941":1,"2942":1}}],["enabling",{"0":{"124":1,"234":1,"1369":1,"1926":1,"2190":1,"2752":1,"2756":1},"2":{"10":1,"50":1,"107":2,"134":1,"190":1,"191":1,"195":1,"232":2,"234":1,"445":1,"562":1,"569":1,"1263":1,"1351":1,"1402":1,"1484":1,"2271":1,"2285":1,"2291":1,"2590":1,"2721":1,"2749":11,"2751":1,"2882":2}}],["enjoy",{"2":{"2411":1}}],["enqueue",{"2":{"2303":1}}],["enqueued",{"2":{"370":1,"371":1}}],["ensuring",{"2":{"1633":1,"2743":1}}],["ensures",{"2":{"209":1,"568":4,"1386":1,"1404":1,"2270":1,"2398":1,"2420":1,"2750":1}}],["ensure",{"2":{"31":1,"34":1,"90":1,"92":1,"149":1,"176":2,"191":3,"198":1,"240":1,"249":4,"294":2,"308":1,"317":1,"327":1,"373":1,"397":1,"418":1,"456":1,"463":1,"467":1,"550":1,"619":1,"641":1,"693":1,"746":1,"1194":1,"1330":1,"1404":1,"1439":1,"1628":1,"1804":1,"2030":1,"2039":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2416":1,"2420":1,"2421":1,"2619":1,"2661":1,"2667":1,"2700":1,"2702":2,"2721":1,"2722":1,"2750":1}}],["energy",{"2":{"608":1,"2367":1}}],["enough",{"2":{"390":1,"510":1,"595":1,"613":1,"642":1,"645":2,"681":1,"1191":1,"1194":1,"1197":1,"1378":1,"1493":1,"1603":1,"1752":1,"1792":1,"1930":1,"1948":1,"2283":1,"2302":1,"2422":2,"2424":1,"2427":1,"2567":1,"2582":1,"2612":1,"2667":1,"2719":1,"2882":1}}],["encryption",{"2":{"2171":1}}],["encompasses",{"2":{"2470":1}}],["encompass",{"2":{"659":1,"663":1,"1379":1}}],["encountering",{"2":{"1747":1}}],["encountered",{"2":{"1315":1,"2214":1}}],["encounter",{"2":{"598":1,"1982":1,"2287":1,"2398":1}}],["encouraging",{"2":{"549":1}}],["encourages",{"2":{"1340":1}}],["encouraged",{"2":{"541":1,"553":1,"1628":1,"1629":1,"1630":1,"2708":1,"2719":1,"2724":1,"2894":1}}],["encourage",{"2":{"520":1,"522":1,"538":1,"594":1,"1617":1,"2721":1,"2829":1}}],["encodes",{"2":{"2289":1}}],["encode",{"2":{"1532":3}}],["encoded",{"2":{"1532":5}}],["encoder2b",{"2":{"1659":1,"1660":1,"2271":1}}],["encoder2a",{"2":{"1659":1,"1660":1,"2271":1}}],["encoder1b",{"2":{"1659":1,"1660":1,"2271":1}}],["encoder1a",{"2":{"1659":1,"1660":1,"2271":1}}],["encodermap",{"2":{"199":2}}],["encoder+encoder",{"2":{"176":1}}],["encoders",{"0":{"1659":1,"1664":1},"1":{"1660":1,"1661":1,"1662":1,"1663":1,"1664":1},"2":{"13":1,"114":3,"154":1,"160":1,"198":1,"201":3,"236":1,"277":1,"307":3,"1659":3,"1660":1,"1661":3,"1662":1,"1663":1,"1664":6,"2017":1,"2298":3,"2721":1}}],["encoder",{"0":{"13":1,"90":1,"154":1,"209":1,"218":1,"307":1,"1661":1,"2298":1,"2858":1},"1":{"2299":1},"2":{"13":2,"63":2,"74":1,"90":11,"93":1,"105":1,"110":1,"114":1,"134":1,"154":2,"160":3,"176":5,"191":5,"199":2,"201":3,"209":5,"211":8,"218":2,"222":3,"226":4,"247":1,"249":3,"255":1,"266":3,"277":2,"307":19,"317":2,"328":2,"333":1,"645":2,"687":1,"1308":2,"1659":13,"1660":13,"1661":16,"1662":9,"1664":9,"2181":1,"2271":3,"2298":5,"2721":4,"2757":1,"2858":5,"2862":2,"2873":2}}],["encoding",{"0":{"1532":1},"2":{"73":1,"211":1,"1283":1,"2748":2,"2758":1,"2765":1,"2839":1}}],["enclosing",{"2":{"350":1}}],["enforce",{"2":{"333":1,"1633":1}}],["enhance",{"2":{"277":1,"288":1,"308":1,"376":1,"625":1,"1626":1}}],["enhancement",{"2":{"93":1,"160":1,"222":2,"236":2,"249":1,"312":1}}],["enhancements",{"0":{"49":1,"63":1,"74":1,"93":1},"2":{"211":1}}],["en",{"2":{"249":1,"728":1,"746":3,"1368":2}}],["engagement",{"2":{"312":1}}],["english",{"2":{"211":1,"1446":1,"1522":4,"2161":1,"2170":1,"2289":1,"2508":1,"2830":1,"2880":5}}],["engineering",{"2":{"2569":1}}],["engineered",{"2":{"2567":1}}],["engine",{"2":{"160":1,"360":1,"1526":1}}],["env",{"2":{"93":1,"453":3,"467":4,"2662":1}}],["environments",{"2":{"132":1}}],["environment",{"0":{"358":1,"2576":1,"2593":1,"2611":1,"2613":1,"2622":1,"2648":1},"1":{"2594":1,"2595":1,"2596":1,"2612":1,"2613":1,"2614":2,"2615":2,"2616":2,"2617":2,"2618":2,"2619":2,"2620":2,"2621":1,"2622":1},"2":{"23":1,"302":1,"377":1,"416":1,"417":1,"418":1,"419":1,"433":4,"454":1,"468":1,"485":1,"494":1,"615":1,"674":2,"682":1,"1311":1,"2398":1,"2400":1,"2425":1,"2489":1,"2494":1,"2573":1,"2575":1,"2576":1,"2577":2,"2580":1,"2591":2,"2609":1,"2611":1,"2613":2,"2622":1,"2625":1,"2646":1}}],["enumerating",{"2":{"627":2,"2052":1,"2403":1}}],["enumeration",{"2":{"308":1,"572":1,"2875":2}}],["enumerated",{"2":{"1450":1}}],["enumerate",{"2":{"627":1,"2052":1,"2491":1}}],["enums",{"2":{"199":1,"520":1,"614":1,"2306":2,"2310":1,"2578":1,"2720":2}}],["enum",{"2":{"50":1,"520":1,"589":1,"591":2,"614":1,"685":2,"1425":1,"1437":1,"1443":1,"1450":1,"1466":1,"1599":1,"1606":1,"1918":1,"1947":2,"1948":2,"2044":1,"2283":2,"2305":1,"2306":1,"2310":3,"2311":2,"2312":3,"2322":2,"2551":1,"2861":1}}],["ent",{"2":{"369":1,"587":2,"1443":1,"1504":1,"1606":1,"2037":1,"2253":1,"2302":2,"2505":1,"2515":1,"2553":1}}],["entities",{"0":{"342":1}}],["entirety",{"2":{"2570":1}}],["entirely",{"2":{"50":1,"222":1,"273":1,"307":1,"308":1,"408":1,"520":1,"1528":1,"2064":1,"2438":1,"2551":1,"2579":1,"2749":1}}],["entire",{"0":{"476":1},"2":{"50":1,"152":1,"199":1,"231":1,"249":1,"463":1,"467":1,"475":2,"1410":1,"1805":1,"1806":1,"1948":3,"2262":1,"2510":1,"2515":1,"2568":1,"2749":3,"2760":2,"2767":2,"2896":1}}],["entered",{"2":{"2627":2}}],["enters",{"2":{"2379":1,"2381":1}}],["entering",{"2":{"380":1,"649":1,"683":1,"2377":1,"2384":1,"2468":1,"2633":1,"2675":1,"2679":1,"2693":1}}],["enter80",{"2":{"241":2}}],["enter67",{"2":{"241":2}}],["enter",{"0":{"1503":1,"2468":1},"2":{"176":1,"211":1,"381":1,"391":2,"629":4,"674":1,"683":1,"1413":3,"1419":1,"1480":1,"1503":1,"1504":1,"1606":1,"1686":1,"2037":1,"2215":1,"2218":1,"2249":1,"2250":2,"2291":1,"2302":2,"2323":1,"2337":1,"2338":2,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2403":1,"2411":1,"2496":1,"2505":2,"2511":2,"2515":4,"2543":2,"2605":1,"2632":2,"2634":1,"2669":2,"2684":1,"2693":1,"2695":1,"2707":2,"2788":2,"2789":1,"2790":1,"2792":1,"2862":1}}],["entry",{"0":{"2693":1},"2":{"149":1,"176":1,"222":1,"236":1,"597":1,"684":2,"1522":1,"1628":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2295":1,"2303":3,"2323":2,"2656":1,"2693":1,"2720":1,"2768":1,"2770":3,"2878":1,"2915":1,"2927":1}}],["entrypoint",{"2":{"94":1,"363":1,"485":2}}],["entries",{"0":{"3":1,"7":1,"15":1},"2":{"685":1,"1486":1,"1522":1,"1583":1,"1584":1,"1614":1,"2322":1,"2770":2}}],["ended",{"2":{"2310":1}}],["endianness",{"2":{"1249":1,"1262":1}}],["endian",{"2":{"785":1,"791":1,"1532":1,"2758":1,"2765":1}}],["ending",{"2":{"265":1,"307":1,"456":1,"1943":1,"2281":1}}],["endings",{"2":{"249":1,"277":1,"456":2,"2660":1}}],["endif",{"2":{"31":2,"34":2,"134":1,"247":1,"307":1,"348":1,"520":1,"645":3,"1326":1,"1403":1,"1432":2,"1435":2,"1442":2,"1443":2,"1479":2,"1504":6,"1527":3,"1529":4,"1606":4,"1621":1,"1622":2,"1661":1,"1794":2,"1807":3,"1844":1,"1939":1,"1942":1,"1948":1,"1982":1,"1983":1,"1985":1,"2014":1,"2066":1,"2277":1,"2280":1,"2298":1,"2309":1,"2439":5,"2440":3}}],["endpoints",{"0":{"263":1},"2":{"176":1,"266":1,"373":2,"573":4,"1914":1,"2291":1}}],["endpoint",{"0":{"573":1},"2":{"49":1,"50":4,"112":2,"160":1,"191":1,"236":1,"249":1,"364":1,"370":1,"373":4,"571":1,"573":4,"2285":1,"2291":1,"2384":1,"2875":3}}],["ends",{"2":{"28":1,"124":1,"1519":2,"1801":1,"1807":1,"1811":1,"2293":1,"2303":1,"2622":1}}],["end",{"0":{"1811":1,"1816":1},"2":{"3":1,"15":1,"149":1,"152":1,"196":2,"199":1,"211":1,"255":2,"265":2,"307":1,"406":5,"408":1,"492":1,"507":1,"520":2,"587":2,"591":1,"607":1,"631":1,"644":1,"645":1,"663":1,"666":1,"751":2,"1262":1,"1330":1,"1362":1,"1407":2,"1425":3,"1454":1,"1587":1,"1596":3,"1597":2,"1598":2,"1599":7,"1606":1,"1611":1,"1612":1,"1642":1,"1658":1,"1688":1,"1801":1,"1807":1,"1816":1,"1939":1,"1943":1,"1948":2,"2017":1,"2159":3,"2198":2,"2277":1,"2281":1,"2293":1,"2302":1,"2303":1,"2310":1,"2410":1,"2420":3,"2421":3,"2427":1,"2441":1,"2497":2,"2500":1,"2509":2,"2511":1,"2515":3,"2554":1,"2580":1,"2600":1,"2620":1,"2627":2,"2657":1,"2670":1,"2719":1,"2721":1,"2749":1,"2750":1,"2907":1,"2928":1,"2942":2}}],["l75",{"2":{"2567":1}}],["lr",{"2":{"1946":2,"2294":3}}],["lra",{"0":{"1679":1},"2":{"1673":1,"1678":1,"1679":5}}],["lpt",{"2":{"2495":1}}],["lp",{"2":{"2311":3}}],["lprn",{"2":{"1735":1,"2311":5,"2539":1,"2558":1}}],["lpad",{"2":{"241":2,"2510":1,"2515":1}}],["lgpl",{"2":{"2741":1}}],["lgr",{"2":{"2294":1}}],["lg",{"2":{"1680":10}}],["lgui",{"2":{"196":1,"369":1,"587":2,"1374":1,"1375":1,"1452":1,"1457":1,"1484":1,"1801":1,"1807":1,"2507":1,"2513":4,"2515":1,"2531":4,"2534":1,"2535":1,"2540":1,"2551":1,"2553":1,"2559":2,"2644":1}}],["l65",{"2":{"1673":1}}],["lyr",{"2":{"1413":2}}],["lyso1",{"2":{"143":2,"149":2}}],["lbrc",{"2":{"369":1,"587":2,"2159":1,"2505":1,"2515":1,"2553":1}}],["l17",{"2":{"1584":2}}],["l16",{"2":{"1584":2}}],["l15",{"2":{"1584":2}}],["l14",{"2":{"1584":2}}],["l13",{"2":{"1584":2}}],["l12",{"2":{"1584":2}}],["l11",{"2":{"1584":2}}],["l10",{"2":{"1584":2}}],["l1",{"0":{"745":1},"2":{"277":1,"745":1}}],["l09",{"2":{"1584":2}}],["l082",{"2":{"2704":1}}],["l08",{"2":{"1584":2}}],["l073rz",{"2":{"2721":1}}],["l072",{"2":{"2704":1}}],["l07",{"2":{"1584":2}}],["l06",{"2":{"1584":2}}],["l05",{"2":{"1584":2}}],["l04",{"2":{"1584":2}}],["l03",{"2":{"1584":2}}],["l02",{"2":{"1584":2}}],["l01",{"2":{"1584":2}}],["l0xx",{"2":{"720":1}}],["l0",{"0":{"745":1},"2":{"277":1}}],["lfs",{"2":{"2660":1}}],["lfuse",{"2":{"2496":2}}],["lf",{"2":{"249":1,"456":1,"2215":1}}],["lfk87",{"2":{"211":1}}],["lfkeyboards",{"2":{"149":1,"211":1}}],["lwin",{"2":{"1374":1,"1452":1,"2507":1,"2515":1,"2534":1,"2535":1,"2559":1}}],["lw75",{"2":{"241":2}}],["lw67",{"2":{"241":2}}],["lv061228b",{"2":{"1673":1}}],["lvgl",{"0":{"2751":1,"2752":1,"2753":1,"2754":1,"2755":1,"2756":1,"2757":1},"1":{"2752":1,"2753":1,"2754":2,"2755":2,"2756":1,"2757":1},"2":{"199":2,"236":1,"308":1,"2747":1,"2751":5,"2752":2,"2754":9,"2755":3,"2756":1,"2757":6}}],["lv",{"2":{"176":2,"2756":1}}],["lsb",{"2":{"2769":8}}],["lsbfirst",{"0":{"1248":1},"1":{"1249":1,"1250":1},"2":{"1249":1,"1999":1,"2006":1}}],["lswp",{"2":{"2513":2,"2531":2}}],["lspo",{"2":{"2249":1,"2250":1,"2252":6,"2253":5,"2543":1}}],["lsusb",{"2":{"2050":1,"2605":1,"2710":2}}],["lshift",{"2":{"1375":1}}],["lshift+rshift+key",{"2":{"2411":1}}],["lshift+rshift+n",{"2":{"1363":1}}],["lshift+ralt",{"2":{"1375":1}}],["lsg",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["lsag",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["lsa",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["lscr",{"2":{"559":1,"1351":1,"2506":1,"2515":1}}],["ls",{"2":{"143":4}}],["lsft",{"2":{"120":2,"369":1,"587":2,"1374":1,"1375":2,"1417":4,"1445":2,"1448":4,"1452":1,"1457":1,"1511":1,"1527":6,"1588":3,"1591":1,"1594":2,"1597":1,"1598":2,"1599":5,"1611":1,"1616":1,"1735":1,"1758":1,"1765":1,"1807":1,"2252":6,"2253":2,"2320":1,"2374":1,"2507":1,"2515":1,"2534":1,"2535":1,"2540":1,"2551":1,"2553":1,"2556":1,"2559":3,"2562":1,"2643":1,"2644":2,"2900":1,"2903":1,"2904":5,"2905":8,"2906":5,"2917":1,"2919":1}}],["ld7032",{"2":{"285":1,"2746":4,"2749":11}}],["lds",{"2":{"236":3}}],["ldscript",{"2":{"114":1}}],["ld",{"2":{"131":1,"134":1,"277":1,"285":1,"2410":2}}],["llck",{"2":{"1760":1,"1765":1,"2527":1}}],["llvm",{"2":{"521":2}}],["ll3ma",{"2":{"311":1,"317":1}}],["ll3macorn",{"2":{"311":1}}],["lld",{"2":{"191":1,"698":1,"765":1}}],["ll",{"2":{"124":1,"158":2,"188":1,"232":1,"254":1,"272":1,"307":1,"372":1,"594":1,"609":1,"614":1,"671":2,"714":1,"715":1,"751":1,"765":2,"1245":2,"1266":2,"1313":1,"1334":1,"1338":1,"1362":1,"1443":2,"1517":1,"1596":1,"1627":1,"1738":1,"1917":1,"1938":1,"2210":1,"2266":1,"2273":2,"2277":1,"2302":2,"2310":2,"2403":4,"2407":1,"2422":3,"2424":2,"2425":1,"2459":2,"2460":1,"2476":2,"2550":2,"2551":1,"2552":3,"2577":1,"2578":3,"2587":1,"2592":2,"2604":1,"2605":1,"2607":1,"2609":1,"2612":3,"2625":1,"2627":1,"2630":1,"2662":1,"2667":2,"2708":1,"2710":1,"2719":1,"2738":1,"2788":1,"2927":1,"2928":1,"2930":1,"2932":1}}],["luminkey",{"2":{"2567":1}}],["lumissil",{"2":{"797":1,"823":1,"852":1,"884":1,"916":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1121":1,"1155":1}}],["lump",{"2":{"616":1,"617":1}}],["lune",{"2":{"211":1}}],["luna",{"2":{"191":1}}],["lucid",{"2":{"211":2}}],["lucky",{"2":{"2883":1}}],["luckily",{"2":{"2375":1,"2621":1}}],["luck",{"2":{"124":1,"173":1,"2610":1}}],["lulu",{"2":{"176":1}}],["lut",{"2":{"149":1,"460":2,"2878":1,"2879":1,"2880":2}}],["lufa",{"0":{"2":1,"6":1,"12":1,"2869":1},"2":{"6":4,"12":2,"49":1,"50":2,"93":1,"111":1,"114":2,"176":2,"191":1,"199":1,"277":1,"511":1,"571":1,"609":1,"1950":1,"2376":2,"2377":1,"2384":2,"2403":1,"2492":1,"2719":1,"2869":1,"2927":3}}],["l400",{"2":{"1413":1}}],["l4",{"2":{"191":1}}],["l422",{"2":{"114":1}}],["l443",{"2":{"93":1}}],["lcb",{"2":{"2861":1}}],["lcbon",{"2":{"2861":1}}],["lcbr",{"2":{"2159":1,"2539":1,"2558":1}}],["lcpo",{"2":{"2249":1,"2250":1,"2252":1,"2543":1}}],["lctrl",{"2":{"1375":1,"2547":1}}],["lctl",{"2":{"38":2,"120":1,"194":5,"196":2,"369":1,"587":2,"1340":1,"1374":2,"1375":2,"1416":1,"1417":1,"1445":1,"1450":1,"1452":2,"1484":1,"1526":1,"1596":1,"1611":1,"1684":1,"1801":2,"1807":2,"2219":1,"2252":2,"2310":2,"2320":1,"2374":1,"2507":1,"2513":2,"2515":1,"2531":2,"2534":1,"2535":1,"2540":1,"2553":1,"2559":3,"2560":1,"2562":1,"2644":2,"2744":1,"2913":1,"2916":1,"2919":1}}],["lcg",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["lcag",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["lca",{"2":{"1374":2,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["lcap",{"2":{"559":1,"1351":1,"2506":1,"2515":1}}],["lcsg",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["lcs",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["lcmd",{"2":{"1374":1,"1452":1,"2507":1,"2515":1,"2534":1,"2535":1,"2559":1}}],["lc",{"2":{"516":1}}],["lck75",{"2":{"143":2}}],["lcds",{"2":{"153":1}}],["lcd",{"0":{"1690":1,"2275":1},"1":{"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1698":1,"1699":1,"1700":1,"1701":1,"1702":1,"1703":1,"1704":1,"1705":1,"1706":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1718":1,"1719":1,"1720":1,"1721":1,"1722":1,"1723":1,"1724":1,"1725":1,"1726":1,"1727":1,"1728":1,"1729":1,"1730":1,"1731":1,"2276":1,"2277":1,"2278":1,"2279":1,"2280":1,"2281":1,"2282":1,"2283":1},"2":{"114":1,"133":1,"134":1,"277":1,"1691":1,"2276":1,"2451":1,"2746":7}}],["lmn",{"2":{"266":1}}],["lm",{"2":{"38":1,"134":1,"317":1,"1416":3,"1417":6,"1684":1,"1759":1,"1842":11,"2031":1,"2528":2,"2530":11}}],["l",{"2":{"32":1,"116":1,"191":1,"249":1,"266":3,"328":1,"369":1,"432":2,"435":1,"442":1,"445":1,"467":2,"587":2,"630":1,"1375":27,"1532":5,"1616":1,"2159":1,"2161":1,"2289":1,"2294":1,"2495":1,"2503":3,"2515":3,"2553":1,"2862":2,"2907":5,"2908":9,"2909":5,"2915":25}}],["lnrm",{"2":{"2513":2,"2531":2}}],["lng9",{"2":{"2508":1,"2515":1}}],["lng8",{"2":{"2508":1,"2515":1}}],["lng7",{"2":{"2508":1,"2515":1}}],["lng6",{"2":{"2508":1,"2515":1}}],["lng5",{"2":{"2508":1,"2515":1}}],["lng4",{"2":{"2508":1,"2515":1}}],["lng3",{"2":{"2508":1,"2515":1}}],["lng2",{"2":{"2508":1,"2515":1}}],["lng1",{"2":{"2508":1,"2515":1}}],["lnx",{"2":{"2320":1,"2321":1,"2337":1}}],["lnum",{"2":{"559":1,"1351":1,"2506":1,"2515":1}}],["ln",{"2":{"31":2,"508":1,"1845":1,"1939":2,"1948":5,"1949":4,"2068":1,"2277":2,"2283":3}}],["legs",{"2":{"2416":1,"2418":1}}],["leg",{"2":{"1919":1,"2416":3,"2532":1}}],["legato",{"2":{"1919":2,"2532":2}}],["legally",{"2":{"2740":2,"2743":1}}],["legal",{"0":{"2740":1},"2":{"1353":1,"2728":1,"2740":1,"2741":1}}],["legacy",{"0":{"140":1,"754":1,"2430":1},"1":{"2431":1},"2":{"75":1,"86":2,"94":1,"114":2,"133":1,"134":2,"160":2,"176":3,"188":12,"191":18,"211":1,"222":1,"236":1,"254":1,"277":1,"441":1,"562":1,"750":2,"2857":2,"2881":1}}],["leonardo",{"2":{"686":2,"1368":2,"2492":1}}],["len",{"2":{"2052":2}}],["lenght",{"2":{"1521":2}}],["lengths",{"2":{"1481":1,"2418":3}}],["lengthy",{"2":{"717":1}}],["length",{"0":{"548":1,"770":1,"773":1,"776":1,"779":2,"782":1,"785":1,"788":1,"791":1,"1256":1,"1259":1,"1274":1,"1276":1,"2054":1,"2056":1},"1":{"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":2,"781":2,"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1,"1257":1,"1258":1,"1260":1,"1261":1,"1275":1,"1277":1,"2055":1,"2057":1},"2":{"249":2,"369":1,"431":3,"548":1,"559":1,"771":2,"773":1,"774":2,"777":2,"780":4,"783":2,"786":2,"789":2,"792":2,"1257":2,"1260":2,"1275":2,"1277":2,"1282":4,"1283":1,"1292":2,"1492":1,"1512":1,"1521":4,"1550":1,"1603":2,"1612":1,"1675":1,"1928":1,"1948":2,"2008":2,"2050":5,"2051":1,"2052":7,"2055":3,"2057":3,"2185":2,"2283":2,"2356":1,"2424":1,"2551":1,"2712":1,"2758":1,"2760":2,"2761":2,"2762":2,"2763":1,"2764":1,"2765":1,"2766":4,"2767":2,"2768":2,"2769":2,"2770":2,"2771":2,"2772":2,"2773":11,"2850":1}}],["lenient",{"2":{"114":1,"2568":1}}],["leeloo",{"2":{"236":2}}],["lefishe",{"2":{"143":2}}],["left=4",{"2":{"2750":1}}],["leftuf2",{"2":{"2266":1}}],["leftdfu",{"2":{"2266":2}}],["leftavrdude",{"2":{"2266":1}}],["leftmost",{"2":{"1641":1}}],["lefthand",{"2":{"566":1,"567":1}}],["leftover30",{"2":{"211":1}}],["leftover",{"2":{"77":1}}],["lefty",{"2":{"43":2,"134":3,"211":1,"241":6}}],["left",{"2":{"31":1,"34":1,"45":1,"100":1,"114":3,"152":1,"176":1,"202":2,"231":2,"236":2,"249":2,"257":1,"258":1,"259":2,"277":1,"307":4,"332":2,"345":1,"369":2,"387":3,"559":2,"563":2,"566":5,"567":4,"568":2,"587":2,"673":1,"674":1,"683":5,"746":1,"763":1,"1191":1,"1194":1,"1197":1,"1291":1,"1345":1,"1359":9,"1365":1,"1374":32,"1375":4,"1377":3,"1417":2,"1452":3,"1486":1,"1588":5,"1589":4,"1599":1,"1606":1,"1618":2,"1661":1,"1666":1,"1686":1,"1688":1,"1751":2,"1758":15,"1840":1,"1843":9,"1846":1,"1927":5,"1942":2,"1943":1,"1945":1,"1948":5,"1990":1,"1991":1,"2003":2,"2009":1,"2014":1,"2018":5,"2020":5,"2021":2,"2027":1,"2028":10,"2060":1,"2063":14,"2069":2,"2159":8,"2164":2,"2207":1,"2219":2,"2248":1,"2249":6,"2250":6,"2253":2,"2262":2,"2264":2,"2265":2,"2266":3,"2267":3,"2271":2,"2280":1,"2283":3,"2294":2,"2298":1,"2308":3,"2320":1,"2337":1,"2338":1,"2339":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2410":2,"2421":3,"2422":1,"2441":1,"2505":1,"2507":8,"2509":2,"2511":1,"2513":10,"2515":12,"2531":10,"2533":5,"2534":39,"2535":32,"2539":3,"2540":32,"2543":6,"2553":2,"2556":1,"2558":3,"2559":40,"2560":2,"2579":1,"2605":2,"2627":2,"2644":32,"2655":1,"2684":3,"2721":1,"2748":1,"2750":11,"2771":3,"2788":2,"2789":1,"2834":1,"2853":1,"2854":1,"2862":3,"2864":1,"2871":1,"2887":2,"2914":1,"2915":2,"2917":15}}],["le",{"2":{"143":2,"221":1,"222":1,"236":1,"308":1,"572":1,"2367":3,"2368":4,"2369":1,"2852":1}}],["lean",{"2":{"2591":1}}],["leaps",{"2":{"2432":1}}],["learned",{"0":{"2625":1}}],["learn",{"2":{"2292":1,"2293":1,"2460":1,"2574":1,"2581":1,"2603":1,"2612":1,"2639":1,"2667":1,"2751":1,"2844":1,"2923":2,"2924":2}}],["learning",{"0":{"2292":1,"2635":1},"1":{"2636":1,"2637":1,"2638":1,"2639":1},"2":{"2292":1,"2574":1}}],["leaflabs",{"2":{"2498":1}}],["leaf",{"2":{"1519":1,"1532":7,"1533":1}}],["lease",{"2":{"405":1,"424":2,"2630":2}}],["least",{"2":{"199":1,"529":1,"549":1,"641":1,"692":1,"763":1,"1249":1,"1417":1,"1497":1,"1714":1,"1716":1,"1768":1,"1821":1,"1925":1,"1931":1,"1932":1,"1999":1,"2006":2,"2257":2,"2265":2,"2310":1,"2422":1,"2501":1,"2560":1,"2567":1,"2595":1,"2896":1,"2929":1,"2940":1}}],["leak",{"2":{"236":1}}],["leaving",{"2":{"169":1,"184":1,"549":1,"1362":1,"1417":1,"2420":1,"2560":1,"2655":1,"2900":1}}],["leaves",{"2":{"1294":1,"1422":2,"1519":1}}],["leave",{"2":{"87":1,"103":1,"126":1,"529":1,"549":1,"567":1,"597":1,"1416":1,"1499":1,"1612":1,"2386":1,"2391":1,"2400":2,"2410":1,"2422":1,"2449":1,"2660":1,"2710":1}}],["leading",{"2":{"528":1,"717":1,"1249":6,"1293":1,"2288":1}}],["leader",{"0":{"196":2,"1799":1,"1810":1,"1811":1,"1812":1,"1815":1,"1816":1,"1817":1,"1818":1,"1821":1,"1822":1,"1823":1,"1826":1,"1829":1,"1832":1,"1835":1,"2529":1,"2818":1,"2863":1},"1":{"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":2,"1814":2,"1815":1,"1816":1,"1817":1,"1818":1,"1819":2,"1820":2,"1821":1,"1822":1,"1823":1,"1824":2,"1825":2,"1826":1,"1827":2,"1828":2,"1829":1,"1830":2,"1831":2,"1832":1,"1833":2,"1834":2,"1835":1,"1836":2,"1837":2},"2":{"93":1,"112":3,"176":1,"196":15,"199":2,"294":1,"562":6,"572":2,"1799":2,"1801":12,"1803":2,"1804":5,"1805":9,"1806":1,"1807":15,"1808":2,"1810":1,"1811":1,"1812":1,"1813":1,"1815":1,"1816":1,"1817":1,"1818":1,"1821":2,"1822":1,"2529":2,"2818":2,"2863":3,"2933":1}}],["lead",{"2":{"73":1,"188":2,"191":2,"1469":2,"1472":1,"1476":1,"1800":1,"1807":1,"1808":1,"1930":1,"2421":1,"2529":1,"2757":1}}],["letting",{"2":{"2421":1}}],["letter",{"2":{"1519":4,"1523":1,"1526":1,"1587":1,"1594":1,"1756":4,"2165":1,"2170":1,"2310":3}}],["letters",{"0":{"2503":1},"2":{"191":1,"211":1,"348":1,"527":1,"1329":1,"1446":1,"1516":3,"1521":1,"1523":1,"1527":1,"1528":1,"1587":1,"1591":1,"2156":1,"2161":1,"2165":1,"2310":3,"2374":1,"2434":1,"2463":1,"2719":1,"2830":1,"2831":1}}],["let",{"2":{"70":1,"110":1,"194":1,"228":1,"245":1,"387":2,"391":1,"412":1,"471":2,"487":1,"505":1,"538":1,"567":1,"572":1,"629":1,"1375":1,"1377":2,"1378":1,"1413":1,"1416":2,"1425":1,"1433":1,"1441":1,"1732":1,"1756":1,"1996":1,"2254":1,"2274":1,"2303":1,"2386":1,"2388":1,"2391":1,"2411":1,"2412":1,"2433":1,"2576":1,"2609":1,"2613":1,"2643":1,"2898":1,"2903":1,"2932":1,"2934":1}}],["lets",{"2":{"70":27,"114":1,"137":1,"143":2,"270":2,"277":1,"429":1,"432":1,"487":1,"563":1,"1378":2,"1443":1,"1455":1,"1596":1,"2209":1,"2411":2,"2822":1,"2825":1,"2836":1,"2901":1}}],["leveraging",{"2":{"2170":1}}],["leveraged",{"2":{"2569":1,"2896":1}}],["leverages",{"2":{"373":1,"1289":1,"1290":1,"1291":1,"1518":1,"1554":1}}],["leverage",{"2":{"153":1,"687":1,"1629":1,"2270":1,"2568":1,"2696":1,"2722":1}}],["lever",{"2":{"2000":2}}],["leveling",{"0":{"174":1,"749":1,"750":1,"751":1,"752":1,"753":1,"754":1},"1":{"751":1,"752":1,"753":1,"754":1},"2":{"114":1,"174":1,"176":4,"191":1,"211":1,"236":5,"249":1,"277":1,"308":1,"333":1,"743":2,"749":3,"750":6,"751":8,"752":7,"753":5,"2857":3}}],["levels",{"0":{"1293":1},"1":{"1294":1,"1295":1},"2":{"112":1,"199":2,"520":1,"553":3,"559":2,"1549":1,"1550":3,"1569":1,"1573":1,"1575":1,"2270":1,"2435":1,"2520":1,"2850":2,"2933":1}}],["level",{"0":{"637":1,"1295":1,"1543":1,"1545":1,"1572":2,"1574":1,"2195":1},"1":{"1573":2,"1575":1},"2":{"4":1,"14":1,"28":1,"75":1,"90":4,"93":2,"125":3,"134":1,"160":2,"185":3,"191":2,"229":2,"243":2,"249":2,"262":1,"266":3,"277":3,"285":1,"308":1,"328":1,"335":1,"411":1,"490":4,"520":1,"529":1,"553":1,"554":1,"555":1,"557":1,"559":2,"567":2,"568":1,"569":1,"574":1,"590":1,"591":2,"613":1,"624":1,"625":5,"633":1,"637":2,"649":2,"651":1,"666":1,"671":1,"687":1,"701":1,"710":1,"721":1,"730":1,"758":6,"801":1,"827":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1215":1,"1293":1,"1294":1,"1295":1,"1296":1,"1300":1,"1402":1,"1413":1,"1428":1,"1535":2,"1540":1,"1543":1,"1544":1,"1545":1,"1546":1,"1549":2,"1550":2,"1552":1,"1557":2,"1562":1,"1563":1,"1570":1,"1571":1,"1572":1,"1573":2,"1574":1,"1575":1,"1587":1,"1619":1,"1621":1,"1659":1,"1661":1,"1662":3,"1683":1,"1792":3,"1793":1,"1798":1,"1842":2,"1844":1,"1849":1,"1902":1,"1904":1,"1905":1,"1906":1,"1909":1,"1911":1,"1943":1,"1948":3,"1952":1,"2019":2,"2036":2,"2045":1,"2062":2,"2066":1,"2072":1,"2146":1,"2148":1,"2149":1,"2150":1,"2153":1,"2155":1,"2182":1,"2270":2,"2281":1,"2333":1,"2335":1,"2389":1,"2393":1,"2395":1,"2397":1,"2435":1,"2439":2,"2440":1,"2496":1,"2515":1,"2520":2,"2530":2,"2538":2,"2549":1,"2668":2,"2669":1,"2671":1,"2700":1,"2719":1,"2721":2,"2722":2,"2732":1,"2746":1,"2750":1,"2802":1,"2844":1,"2848":1,"2850":1,"2864":1,"2870":1,"2871":1,"2895":1,"2896":1,"2921":2,"2926":1,"2930":1,"2931":1,"2933":1,"2941":1}}],["levinson",{"2":{"45":1}}],["ledmatrix",{"2":{"65":1}}],["led",{"0":{"84":1,"147":1,"185":1,"233":1,"327":1,"731":1,"733":1,"802":1,"804":1,"817":1,"819":1,"822":1,"828":1,"830":1,"844":1,"846":1,"850":1,"860":1,"862":1,"890":1,"892":1,"908":1,"910":1,"914":1,"925":1,"927":1,"943":1,"945":1,"949":1,"959":1,"961":1,"977":1,"979":1,"983":1,"993":1,"995":1,"1011":1,"1013":1,"1017":1,"1027":1,"1029":1,"1045":1,"1047":1,"1051":1,"1061":1,"1063":1,"1095":1,"1097":1,"1129":1,"1131":1,"1163":1,"1165":1,"1216":1,"1218":1,"1234":1,"1236":1,"1240":1,"1635":1,"1790":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1838":1,"1843":1,"1844":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1859":1,"1861":1,"1863":1,"1865":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1874":1,"1875":1,"1876":1,"1877":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1885":1,"1887":1,"1889":2,"1891":2,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1899":1,"1900":1,"1902":1,"1904":1,"1906":3,"1909":3,"2127":1,"2129":1,"2150":2,"2153":2,"2308":1,"2530":1,"2819":1,"2864":1},"1":{"734":1,"805":1,"818":1,"820":1,"831":1,"845":1,"847":1,"851":1,"863":1,"893":1,"909":1,"911":1,"915":1,"928":1,"944":1,"946":1,"950":1,"962":1,"978":1,"980":1,"984":1,"996":1,"1012":1,"1014":1,"1018":1,"1030":1,"1046":1,"1048":1,"1052":1,"1064":1,"1098":1,"1132":1,"1166":1,"1219":1,"1235":1,"1237":1,"1241":1,"1791":1,"1792":1,"1793":2,"1794":2,"1795":1,"1796":1,"1797":1,"1798":2,"1839":1,"1840":1,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1847":1,"1848":1,"1849":1,"1850":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":2,"1859":1,"1860":2,"1861":1,"1862":2,"1863":1,"1864":2,"1865":1,"1866":2,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":2,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":2,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":2,"1885":1,"1886":2,"1887":1,"1888":2,"1889":1,"1890":3,"1891":1,"1892":3,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":2,"1899":1,"1900":1,"1901":2,"1902":1,"1903":2,"1904":1,"1905":2,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"2128":1,"2130":1},"2":{"32":2,"50":2,"65":1,"70":2,"84":1,"92":3,"93":10,"94":6,"111":1,"113":1,"114":13,"133":1,"134":9,"149":5,"160":2,"176":8,"183":14,"185":5,"191":27,"199":5,"211":3,"214":1,"221":3,"222":16,"233":1,"236":27,"249":33,"266":10,"277":11,"285":4,"294":2,"308":2,"317":1,"328":29,"333":1,"348":2,"559":1,"563":2,"568":1,"632":1,"633":2,"701":2,"703":1,"704":1,"705":1,"708":1,"726":1,"727":1,"731":4,"733":1,"734":4,"735":1,"736":1,"737":1,"738":1,"741":1,"797":1,"798":2,"802":6,"804":1,"805":4,"806":1,"809":1,"810":1,"813":1,"814":1,"817":3,"818":1,"819":3,"820":2,"821":1,"822":2,"823":1,"824":2,"828":6,"830":1,"831":5,"832":1,"836":1,"837":1,"840":1,"841":1,"844":3,"845":1,"846":3,"847":2,"848":1,"850":2,"852":1,"853":2,"860":6,"862":1,"863":5,"864":1,"868":1,"869":1,"872":1,"873":1,"876":1,"877":1,"878":1,"879":2,"880":1,"882":1,"884":1,"885":2,"890":6,"892":1,"893":5,"894":1,"898":1,"900":1,"901":1,"904":1,"905":1,"908":3,"909":1,"910":3,"911":2,"912":1,"914":2,"916":1,"917":2,"925":6,"927":1,"928":5,"929":1,"933":1,"935":1,"936":1,"939":1,"940":1,"943":3,"944":1,"945":3,"946":2,"947":1,"949":2,"951":1,"952":2,"959":6,"961":1,"962":5,"963":1,"967":1,"969":1,"970":1,"973":1,"974":1,"977":3,"978":1,"979":3,"980":2,"981":1,"983":2,"985":1,"986":2,"993":6,"995":1,"996":5,"997":1,"1001":1,"1003":1,"1004":1,"1007":1,"1008":1,"1011":3,"1012":1,"1013":3,"1014":2,"1015":1,"1017":2,"1019":1,"1020":2,"1027":6,"1029":1,"1030":5,"1031":1,"1035":1,"1037":1,"1038":1,"1041":1,"1042":1,"1045":3,"1046":1,"1047":3,"1048":2,"1049":1,"1051":2,"1053":1,"1054":2,"1061":6,"1063":1,"1064":5,"1065":1,"1069":1,"1071":1,"1072":1,"1075":1,"1076":1,"1079":1,"1080":1,"1081":1,"1082":2,"1083":1,"1085":1,"1087":1,"1088":2,"1095":6,"1097":1,"1098":5,"1099":1,"1103":1,"1105":1,"1106":1,"1109":1,"1110":1,"1113":1,"1114":1,"1115":1,"1116":2,"1117":1,"1119":1,"1121":1,"1122":2,"1129":6,"1131":1,"1132":5,"1133":1,"1137":1,"1139":1,"1140":1,"1143":1,"1144":1,"1147":1,"1148":1,"1149":1,"1150":2,"1151":1,"1153":1,"1155":1,"1156":2,"1163":6,"1165":1,"1166":5,"1167":1,"1168":1,"1171":1,"1173":1,"1174":1,"1177":1,"1178":1,"1181":1,"1182":1,"1183":1,"1184":2,"1185":1,"1187":1,"1211":1,"1212":2,"1216":6,"1218":1,"1219":5,"1220":1,"1224":1,"1226":1,"1227":1,"1230":1,"1231":1,"1234":3,"1235":1,"1236":3,"1237":2,"1238":1,"1240":2,"1280":2,"1282":2,"1283":1,"1284":1,"1285":3,"1293":1,"1295":1,"1302":1,"1303":1,"1304":1,"1307":1,"1308":2,"1373":1,"1389":1,"1393":1,"1550":1,"1552":3,"1595":1,"1619":2,"1635":5,"1638":6,"1658":1,"1672":3,"1764":2,"1790":9,"1791":12,"1792":10,"1793":12,"1794":7,"1795":6,"1796":3,"1798":9,"1838":2,"1839":4,"1840":26,"1841":10,"1842":14,"1843":64,"1844":31,"1845":5,"1846":30,"1849":12,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1859":1,"1860":3,"1890":1,"1892":1,"1900":1,"1901":1,"1907":4,"1910":4,"1939":7,"2014":1,"2058":3,"2059":2,"2060":25,"2061":12,"2063":1,"2064":1,"2066":10,"2069":10,"2070":1,"2072":4,"2073":17,"2074":11,"2085":1,"2086":2,"2128":1,"2130":1,"2151":4,"2154":4,"2178":2,"2179":2,"2185":4,"2186":2,"2189":4,"2190":4,"2195":1,"2198":9,"2206":6,"2207":3,"2208":2,"2210":1,"2269":3,"2277":7,"2308":10,"2377":2,"2384":2,"2411":3,"2424":1,"2440":2,"2441":3,"2455":1,"2530":15,"2645":1,"2676":2,"2682":1,"2684":5,"2693":2,"2721":3,"2847":1,"2848":2,"2860":6,"2864":13,"2869":3,"2870":3,"2871":10,"2876":1,"2924":1}}],["leds",{"0":{"2206":1},"2":{"25":1,"45":1,"50":1,"114":1,"149":1,"201":2,"211":1,"229":1,"249":2,"308":1,"563":4,"643":1,"644":1,"699":2,"701":1,"704":1,"706":1,"726":2,"731":1,"737":1,"738":1,"739":1,"797":2,"802":2,"809":1,"810":1,"811":1,"813":1,"814":1,"815":1,"817":1,"818":1,"819":1,"820":1,"823":2,"828":2,"836":1,"837":1,"838":1,"840":1,"841":1,"842":1,"844":1,"845":1,"846":1,"847":1,"852":2,"854":1,"860":2,"868":1,"869":1,"870":1,"872":1,"873":1,"874":1,"876":1,"877":1,"878":1,"879":1,"884":2,"890":2,"900":1,"901":1,"902":1,"904":1,"905":1,"906":1,"908":1,"909":1,"910":1,"911":1,"916":2,"918":1,"925":2,"935":1,"936":1,"937":1,"939":1,"940":1,"941":1,"943":1,"944":1,"945":1,"946":1,"951":2,"953":1,"959":2,"969":1,"970":1,"971":1,"973":1,"974":1,"975":1,"977":1,"978":1,"979":1,"980":1,"985":2,"987":1,"993":2,"1003":1,"1004":1,"1005":1,"1007":1,"1008":1,"1009":1,"1011":1,"1012":1,"1013":1,"1014":1,"1019":2,"1021":1,"1027":2,"1037":1,"1038":1,"1039":1,"1041":1,"1042":1,"1043":1,"1045":1,"1046":1,"1047":1,"1048":1,"1053":2,"1055":1,"1061":2,"1071":1,"1072":1,"1073":1,"1075":1,"1076":1,"1077":1,"1079":1,"1080":1,"1081":1,"1082":1,"1087":2,"1095":2,"1105":1,"1106":1,"1107":1,"1109":1,"1110":1,"1111":1,"1113":1,"1114":1,"1115":1,"1116":1,"1121":2,"1129":2,"1139":1,"1140":1,"1141":1,"1143":1,"1144":1,"1145":1,"1147":1,"1148":1,"1149":1,"1150":1,"1155":2,"1157":1,"1163":2,"1173":1,"1174":1,"1175":1,"1177":1,"1178":1,"1179":1,"1181":1,"1182":1,"1183":1,"1184":1,"1211":2,"1216":2,"1226":1,"1227":1,"1228":1,"1230":1,"1231":1,"1232":1,"1234":1,"1235":1,"1236":1,"1237":1,"1280":4,"1282":1,"1283":1,"1284":1,"1285":2,"1288":1,"1293":1,"1303":1,"1305":1,"1369":1,"1405":2,"1436":1,"1547":3,"1550":1,"1551":1,"1552":2,"1564":2,"1656":1,"1790":2,"1792":1,"1796":1,"1797":1,"1798":3,"1839":1,"1840":2,"1843":1,"1844":2,"1846":4,"1861":1,"1902":1,"1904":1,"1906":1,"1909":1,"2059":1,"2060":2,"2063":4,"2064":1,"2066":2,"2069":4,"2087":1,"2146":1,"2148":1,"2150":1,"2153":1,"2178":6,"2179":10,"2185":5,"2188":1,"2189":6,"2195":1,"2198":7,"2200":6,"2201":14,"2206":2,"2207":3,"2208":1,"2271":2,"2301":1,"2302":1,"2308":1,"2428":1,"2456":3,"2457":2,"2798":1,"2838":2,"2850":2,"2860":1,"2864":5,"2870":3,"2871":5,"2876":1,"2928":2}}],["less",{"2":{"24":1,"133":1,"134":1,"263":1,"431":2,"522":1,"1295":1,"1362":1,"1407":1,"1410":1,"1484":1,"1485":1,"1492":1,"1516":1,"1604":1,"1609":2,"1947":1,"2006":1,"2288":1,"2302":2,"2410":1,"2439":1,"2576":1,"2688":1,"2719":1,"2785":1,"2844":1,"2902":1}}],["lone",{"2":{"1758":1,"2917":1,"2919":1}}],["longan",{"2":{"519":1}}],["long",{"0":{"1328":1},"2":{"131":1,"140":1,"154":1,"164":1,"243":1,"331":1,"387":1,"493":1,"520":1,"522":1,"548":3,"562":4,"676":1,"681":1,"713":1,"717":1,"1283":1,"1362":1,"1365":1,"1487":1,"1491":1,"1493":1,"1495":1,"1497":1,"1521":1,"1532":1,"1557":1,"1599":1,"1603":4,"1628":1,"1664":1,"1675":1,"1680":17,"1732":1,"1759":1,"1804":1,"2030":1,"2050":1,"2185":1,"2187":6,"2210":1,"2268":1,"2274":1,"2310":1,"2312":1,"2323":1,"2424":1,"2445":1,"2626":1,"2656":1,"2700":1,"2750":1,"2787":1,"2892":1}}],["longer",{"2":{"48":1,"50":1,"98":1,"124":1,"130":1,"141":1,"194":1,"196":1,"201":1,"213":1,"218":1,"224":1,"233":1,"240":1,"262":2,"265":1,"268":1,"273":2,"276":1,"283":1,"284":1,"570":1,"579":1,"613":1,"616":1,"645":1,"684":1,"1287":1,"1317":1,"1434":1,"1490":1,"1493":1,"1497":1,"1513":1,"1522":1,"1751":1,"1758":1,"1933":1,"2003":1,"2302":1,"2303":1,"2310":1,"2312":1,"2420":2,"2571":1,"2720":1,"2721":1,"2750":2,"2882":1,"2901":1,"2902":1,"2907":2,"2913":1,"2917":1}}],["loud",{"2":{"1482":1,"1487":1}}],["louder",{"2":{"277":1}}],["lo",{"2":{"1452":4,"1798":1,"2161":1}}],["losh",{"2":{"2248":1}}],["loss",{"2":{"1412":1,"1416":1,"2316":1,"2411":1}}],["loses",{"2":{"1416":1,"2528":1,"2873":1}}],["lose",{"2":{"717":1,"1583":1,"2629":1}}],["lost",{"2":{"176":1,"743":1,"1655":1,"2806":1}}],["love",{"0":{"2625":1},"2":{"618":1,"1339":1,"1452":2,"2724":1}}],["lorem",{"2":{"357":1}}],["loki65",{"2":{"211":1}}],["lopt",{"2":{"176":1,"1374":1,"1452":1,"2507":1,"2515":1,"2534":1,"2535":1,"2559":1}}],["loadable",{"2":{"2748":1}}],["loads",{"2":{"1287":1,"2750":2}}],["loaded",{"2":{"683":1,"2501":1,"2655":1,"2747":3,"2750":2}}],["loader",{"0":{"2693":1,"2735":1},"2":{"348":3,"2381":3,"2384":1,"2501":3,"2693":1,"2695":1,"2735":1}}],["loading",{"2":{"160":1,"1362":1,"2633":1,"2750":2}}],["load",{"0":{"2607":1},"2":{"149":1,"507":1,"598":1,"649":1,"716":1,"1362":1,"2475":1,"2477":1,"2481":1,"2495":1,"2516":1,"2580":1,"2582":1,"2622":1,"2735":1,"2745":1,"2747":1,"2750":11}}],["loose",{"2":{"2427":2,"2588":1}}],["looking",{"0":{"2843":1},"2":{"228":1,"419":1,"487":2,"550":1,"659":1,"718":2,"1379":1,"2050":1,"2411":1,"2420":1,"2430":1,"2459":1,"2645":1,"2720":1}}],["look",{"2":{"194":1,"397":1,"471":1,"537":1,"616":1,"654":1,"684":1,"685":1,"1296":1,"1300":1,"1316":1,"1346":1,"1406":1,"1413":2,"1441":1,"1486":1,"1521":1,"1562":1,"1563":1,"1756":1,"2291":1,"2323":1,"2409":1,"2421":1,"2490":1,"2549":1,"2550":1,"2567":1,"2572":1,"2577":1,"2677":1,"2744":1,"2751":1,"2901":1,"2927":1,"2930":1,"2932":2,"2933":1,"2936":1,"2937":1}}],["lookup",{"2":{"191":1,"460":1,"1840":1,"2060":1,"2216":1,"2695":1,"2879":1}}],["looks",{"2":{"125":1,"185":1,"1491":1,"1504":1,"2403":1,"2567":1,"2578":1,"2580":1,"2929":1,"2931":1,"2932":1}}],["looping",{"2":{"2420":1,"2928":1}}],["loopgain",{"2":{"1678":1,"1679":1}}],["loops",{"2":{"160":1,"2039":1}}],["loop",{"0":{"2928":1},"1":{"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"65":1,"92":1,"113":1,"114":1,"149":1,"176":2,"277":1,"538":1,"645":1,"1479":2,"1557":1,"1941":2,"1943":1,"2065":1,"2279":2,"2377":1,"2380":2,"2384":1,"2420":1,"2750":1,"2927":1,"2928":2,"2932":1}}],["locate",{"2":{"2599":1,"2605":1,"2607":1}}],["locates",{"2":{"2549":1}}],["located",{"2":{"572":1,"683":1,"753":1,"1347":1,"1496":1,"1521":1,"1584":1,"1940":1,"2411":1,"2423":1,"2436":1,"2510":1,"2605":1,"2607":1,"2619":1,"2760":1,"2761":1,"2762":1,"2767":1,"2880":1}}],["locating",{"2":{"317":1,"333":1}}],["locations",{"2":{"132":1,"149":1,"176":1,"204":1,"266":1,"391":1,"597":1,"731":1,"1627":1,"2046":1,"2176":1,"2409":1,"2787":1,"2856":1,"2872":1,"2931":2}}],["location",{"2":{"114":1,"133":1,"134":1,"149":1,"199":1,"234":1,"249":2,"317":1,"416":1,"417":1,"418":1,"507":1,"625":1,"667":1,"746":1,"747":1,"753":1,"1486":1,"1940":1,"2046":1,"2063":1,"2423":1,"2577":1,"2583":1,"2598":1,"2651":1,"2655":1,"2667":2,"2707":1,"2749":2,"2750":3,"2771":5,"2788":2,"2930":1,"2942":1}}],["localhost",{"2":{"615":1}}],["locally",{"0":{"2584":1,"2586":1},"2":{"613":1,"617":1,"1434":1,"2425":1,"2584":2,"2586":1,"2587":1}}],["local",{"2":{"458":2,"487":1,"522":1,"524":1,"527":1,"611":1,"612":1,"655":1,"676":1,"1946":1,"1947":1,"2046":1,"2282":1,"2400":1,"2403":2,"2426":1,"2557":1,"2560":1,"2584":1,"2585":1,"2586":1,"2591":1,"2594":1,"2607":1,"2621":2,"2630":2,"2644":1,"2721":1}}],["locale",{"2":{"249":1}}],["lockout",{"2":{"2034":1}}],["lockkeys",{"0":{"1687":1},"2":{"1687":1}}],["locks",{"2":{"1416":1,"1759":1,"1761":1,"1763":1,"2527":1}}],["lockups",{"2":{"263":1}}],["locking",{"0":{"2173":1},"2":{"176":1,"188":1,"191":2,"199":2,"236":1,"266":32,"559":3,"1351":2,"1760":1,"2506":6,"2515":6,"2656":1,"2847":2,"2883":2}}],["locked",{"2":{"160":1,"266":1,"312":1,"373":2,"396":3,"402":1,"1759":2,"1763":3,"1764":7,"2172":1,"2173":1,"2175":2,"2176":1,"2177":2,"2269":1,"2645":7,"2726":1,"2729":1,"2737":1,"2738":1,"2872":1}}],["lock",{"0":{"1351":1,"1732":1,"1759":1,"1760":1,"1764":1,"1765":1,"2305":1,"2506":1,"2526":1,"2527":1},"1":{"1733":1,"1734":1,"1735":1,"1760":1,"1761":1,"1762":1,"1763":1,"1764":1,"1765":1},"2":{"73":1,"149":2,"176":1,"188":2,"191":2,"199":2,"222":3,"231":2,"285":2,"308":1,"562":1,"563":1,"587":1,"1351":2,"1416":1,"1418":1,"1459":1,"1550":2,"1552":4,"1587":5,"1619":2,"1687":3,"1732":4,"1733":3,"1734":1,"1735":4,"1759":2,"1760":3,"1761":6,"1762":3,"1763":4,"1764":3,"1765":7,"1790":4,"1791":6,"1793":3,"1794":6,"1795":2,"1849":1,"1939":3,"1942":1,"2072":1,"2073":2,"2074":5,"2175":2,"2177":2,"2188":1,"2189":2,"2190":1,"2269":2,"2277":3,"2280":1,"2305":1,"2323":1,"2411":2,"2506":12,"2513":16,"2515":12,"2526":2,"2527":2,"2531":16,"2643":1,"2645":1,"2728":1,"2788":3,"2789":2,"2847":1,"2850":2,"2860":6,"2883":2,"2928":3,"2933":1}}],["lowr",{"2":{"2314":1}}],["lowest",{"2":{"553":1,"1410":1,"1419":1,"1420":1,"1487":1,"1798":1,"2313":1,"2512":1,"2515":1,"2554":1}}],["lower",{"0":{"2323":1},"2":{"198":1,"236":1,"696":1,"698":1,"716":3,"717":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1204":1,"1293":1,"1413":1,"1416":2,"1419":1,"1421":1,"1424":1,"1485":1,"1515":1,"1550":1,"1675":1,"1804":1,"1929":2,"1930":1,"1933":1,"2000":2,"2006":2,"2007":2,"2294":3,"2313":2,"2314":3,"2315":2,"2316":6,"2323":2,"2434":1,"2518":1,"2547":1,"2549":4,"2552":1,"2569":1,"2777":7,"2779":2,"2900":1,"2901":1}}],["lowercase",{"2":{"152":1,"221":1,"1329":1,"1432":1,"1493":1,"2323":3,"2438":1,"2495":1,"2719":2,"2901":1}}],["low",{"0":{"637":1,"2195":1},"2":{"49":1,"134":1,"160":1,"243":2,"559":2,"566":1,"567":5,"568":1,"637":2,"716":3,"746":1,"758":3,"1292":2,"1294":1,"1316":1,"1410":1,"1480":1,"1550":1,"1551":1,"1672":5,"1675":3,"1678":1,"1679":1,"1770":3,"1791":1,"1793":2,"1929":2,"1930":1,"2016":2,"2028":1,"2184":1,"2264":2,"2265":1,"2367":1,"2491":1,"2492":1,"2493":1,"2494":1,"2496":2,"2547":1,"2552":1,"2668":1,"2669":1,"2671":1,"2677":1,"2719":1,"2802":1,"2828":1,"2837":1,"2865":1,"2901":2}}],["login",{"2":{"2662":1}}],["logically",{"2":{"2207":1}}],["logical",{"2":{"134":1,"236":1,"613":1,"750":1,"751":2,"752":3,"753":2,"1284":1,"1752":2,"2206":1,"2459":2,"2849":1,"2850":1,"2857":2,"2860":1,"2865":1}}],["logic",{"0":{"1293":1},"1":{"1294":1,"1295":1},"2":{"16":1,"75":1,"94":2,"113":1,"114":2,"133":2,"134":5,"149":1,"160":3,"191":1,"198":1,"199":1,"211":1,"222":2,"249":2,"266":1,"277":6,"285":1,"308":1,"317":1,"320":1,"328":3,"333":1,"591":2,"1293":1,"1295":1,"1425":1,"1533":1,"1585":1,"1632":1,"1634":1,"1843":1,"1956":1,"2063":2,"2254":2,"2303":1,"2645":1,"2719":1,"2915":1,"2919":1}}],["logfile",{"2":{"2410":4}}],["logged",{"2":{"491":1,"1327":1,"2941":1}}],["logger",{"2":{"487":1,"490":1}}],["logging",{"0":{"490":1},"2":{"249":1,"308":1,"487":1,"537":1,"1326":1,"1327":1,"1328":1}}],["log",{"0":{"490":1},"2":{"114":1,"199":2,"211":1,"405":1,"427":1,"487":3,"489":2,"490":12,"491":2,"494":1,"498":1,"533":2,"537":2,"586":1,"587":2,"611":1,"2429":1,"2602":1}}],["logo",{"0":{"1940":1,"2278":1},"2":{"31":2,"1940":7,"1942":2,"2278":5,"2280":2}}],["logs",{"2":{"17":1,"1327":1,"2627":1,"2710":1}}],["lots",{"2":{"558":1,"2472":1,"2567":2}}],["lotus58",{"2":{"211":1,"266":1,"311":8,"317":1}}],["lot",{"2":{"6":1,"10":2,"114":1,"153":1,"172":1,"175":1,"187":1,"198":2,"201":1,"213":1,"224":1,"233":1,"238":1,"397":1,"492":1,"533":1,"609":1,"617":1,"624":1,"643":1,"663":1,"1333":1,"1413":2,"1417":1,"1518":1,"1603":1,"1616":1,"1617":1,"2254":1,"2302":1,"2420":1,"2422":1,"2428":1,"2451":1,"2474":1,"2560":1,"2572":2,"2579":1,"2580":1,"2622":1,"2709":1,"2715":1,"2721":1,"2722":1,"2774":1,"2886":1,"2887":1,"2889":1,"2925":1,"2927":1}}],["laziness",{"2":{"2719":1}}],["lazydesigners",{"2":{"102":3}}],["lapo",{"2":{"2249":1,"2250":1,"2252":1,"2543":1}}],["laptop",{"2":{"1415":1}}],["laid",{"2":{"618":1,"663":1}}],["lambdas",{"0":{"539":1},"2":{"539":1}}],["larr",{"2":{"342":1,"2435":6}}],["largely",{"2":{"244":1,"519":1,"609":1,"2389":1,"2411":2}}],["largest",{"2":{"176":1,"2882":1}}],["larger",{"2":{"153":1,"174":1,"175":1,"176":1,"211":1,"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"397":1,"718":1,"751":2,"752":2,"1477":1,"1603":2,"1943":1,"2017":1,"2253":1,"2416":1,"2448":1,"2749":1,"2839":1,"2915":1,"2930":1}}],["large",{"2":{"134":1,"153":1,"163":1,"174":1,"175":1,"176":1,"233":1,"397":1,"408":1,"572":1,"659":1,"663":1,"717":1,"1362":1,"1379":1,"1603":1,"1930":1,"1932":1,"2372":1,"2572":1,"2660":1,"2672":1,"2722":1,"2749":1,"2750":1,"2780":1,"2888":1,"2896":1}}],["lacking",{"2":{"2721":1}}],["lacks",{"2":{"2208":1}}],["lack",{"2":{"312":1,"1193":1,"1443":1,"1844":1,"2066":1,"2272":1,"2273":1,"2567":1,"2895":1}}],["lags",{"2":{"716":1}}],["laggy",{"2":{"320":1,"2919":1}}],["lag",{"2":{"297":1,"1287":1,"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1,"2911":1,"2929":1}}],["la+",{"2":{"211":1}}],["labor",{"2":{"2724":1}}],["labk",{"2":{"2539":1,"2558":1}}],["labeled",{"2":{"765":1,"1245":1,"1266":1,"2605":1}}],["label",{"2":{"397":4,"2788":18,"2789":18,"2793":8,"2861":1,"2862":2}}],["labels",{"2":{"191":1,"333":1,"2877":1}}],["lab",{"2":{"211":3}}],["latches",{"2":{"1283":1}}],["latter",{"2":{"420":1,"1348":1,"1609":1,"1801":1,"2001":1,"2075":1,"2649":1,"2750":3,"2908":1,"2913":1,"2915":1}}],["lattice60",{"2":{"159":2}}],["latam",{"2":{"249":1}}],["latvian",{"2":{"176":1,"2880":3}}],["latin",{"2":{"2879":1,"2880":6}}],["latinpad",{"2":{"143":2}}],["latinpadble",{"2":{"143":2,"211":1}}],["latin6rgb",{"2":{"143":2}}],["latin64ble",{"2":{"143":2}}],["latin60rgb",{"2":{"143":2}}],["latin47ble",{"2":{"143":2}}],["latincompass",{"2":{"143":7,"149":2}}],["latin17rgb",{"2":{"143":2}}],["late",{"2":{"654":1}}],["late9",{"2":{"241":2,"249":1,"300":2}}],["latency",{"2":{"94":1,"199":1,"2372":2}}],["later",{"2":{"23":1,"157":1,"408":1,"418":1,"505":1,"535":1,"598":1,"613":1,"713":1,"1378":1,"1438":1,"1630":2,"1956":1,"2189":2,"2302":2,"2424":1,"2449":1,"2491":1,"2551":1,"2621":1,"2625":1,"2725":2}}],["latest",{"2":{"10":1,"24":1,"176":1,"191":1,"211":1,"254":1,"294":1,"308":1,"386":1,"2324":1,"2594":1,"2600":1,"2614":1}}],["lanes",{"2":{"2258":1}}],["laneware",{"2":{"241":5,"249":1}}],["landed",{"2":{"131":1}}],["languages",{"2":{"134":1,"2287":1,"2322":1,"2411":1,"2646":1,"2657":1,"2877":1,"2878":1}}],["language",{"0":{"5":1,"2216":1,"2877":1},"1":{"2878":1,"2879":1,"2880":1},"2":{"74":1,"427":1,"546":1,"1446":3,"2050":1,"2287":1,"2508":13,"2515":18,"2568":1,"2664":1,"2666":2,"2802":1,"2830":1,"2839":1,"2877":2,"2878":2,"2880":1}}],["lalt",{"2":{"120":1,"369":1,"587":2,"1344":1,"1374":2,"1375":1,"1377":2,"1416":1,"1445":1,"1448":1,"1452":1,"1466":4,"1484":1,"1612":2,"2252":2,"2310":2,"2311":2,"2507":1,"2513":2,"2515":1,"2528":1,"2531":2,"2534":1,"2535":1,"2540":1,"2551":1,"2553":1,"2559":2,"2644":1,"2912":1}}],["laser",{"2":{"118":1,"191":1,"241":2,"1999":1}}],["lastly",{"2":{"1413":1}}],["last",{"0":{"202":1,"2360":1},"1":{"2361":1},"2":{"23":1,"74":1,"103":1,"105":1,"167":1,"176":2,"184":1,"189":1,"198":1,"201":1,"202":2,"206":1,"211":2,"213":1,"222":1,"224":2,"238":1,"249":1,"275":1,"284":1,"373":2,"396":1,"399":1,"400":1,"401":1,"406":4,"529":1,"586":1,"638":1,"644":1,"645":2,"751":2,"1416":1,"1425":1,"1451":2,"1493":1,"1511":1,"1519":2,"1523":1,"1532":1,"1684":1,"1754":1,"1907":1,"1910":1,"2034":1,"2151":1,"2154":1,"2156":3,"2158":2,"2159":2,"2160":3,"2161":1,"2163":2,"2164":2,"2165":1,"2166":1,"2167":1,"2168":1,"2169":5,"2170":6,"2191":1,"2268":2,"2270":3,"2288":1,"2290":1,"2302":1,"2303":2,"2310":1,"2324":1,"2360":1,"2425":1,"2497":1,"2542":2,"2564":1,"2569":1,"2577":1,"2602":1,"2634":1,"2645":1,"2662":1,"2684":1,"2747":1,"2749":1,"2750":25,"2764":1,"2916":1,"2931":1,"2932":1}}],["launchpad",{"2":{"143":2,"199":2,"231":1,"317":1,"1917":1,"2510":2,"2515":2}}],["launch",{"0":{"2652":1},"2":{"114":2,"551":1,"2291":1,"2372":2,"2510":5,"2515":5,"2652":1,"2667":2}}],["layr",{"2":{"2312":3}}],["lays",{"2":{"334":1}}],["layout=ortho",{"2":{"1430":2}}],["layout>",{"2":{"1429":1,"1430":4}}],["layouts+users",{"2":{"191":1}}],["layouts",{"0":{"35":1,"1427":1,"1430":1,"1431":1,"2862":1},"1":{"36":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":2,"1433":2},"2":{"70":3,"73":1,"74":1,"99":1,"111":1,"114":1,"169":1,"176":1,"191":3,"199":4,"201":3,"211":23,"213":1,"222":3,"236":2,"249":3,"256":2,"308":1,"317":1,"427":2,"435":1,"570":2,"595":2,"1343":2,"1416":1,"1420":1,"1427":8,"1428":3,"1430":2,"1436":1,"1613":1,"2072":1,"2438":6,"2583":1,"2587":2,"2707":1,"2714":1,"2721":3,"2788":2,"2790":1,"2830":1,"2862":5,"2877":1,"2879":2,"2915":3,"2930":1}}],["layout",{"0":{"17":1,"89":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"595":1,"603":1,"1428":1,"1446":1,"2262":1,"2579":1,"2714":1,"2878":1,"2930":1},"1":{"257":1,"258":1,"259":1,"260":1},"2":{"17":1,"36":1,"48":1,"70":2,"76":1,"89":2,"94":1,"111":4,"114":2,"120":2,"149":1,"160":2,"191":4,"199":4,"201":3,"211":248,"213":1,"222":11,"236":9,"238":1,"249":4,"255":3,"256":4,"257":2,"258":2,"259":4,"260":1,"266":10,"277":2,"285":5,"294":3,"308":3,"328":1,"369":4,"427":1,"445":1,"521":1,"586":2,"587":6,"595":3,"597":4,"673":6,"674":1,"1387":3,"1402":3,"1416":2,"1419":2,"1420":1,"1427":10,"1428":6,"1430":4,"1433":6,"1436":2,"1445":2,"1446":2,"1453":1,"1486":5,"1584":2,"1587":1,"1613":1,"1665":1,"1840":2,"1918":1,"1951":1,"2060":2,"2161":1,"2167":1,"2170":1,"2216":2,"2252":2,"2262":3,"2266":1,"2286":2,"2287":1,"2291":2,"2311":1,"2323":1,"2324":1,"2407":2,"2415":1,"2416":2,"2425":2,"2438":18,"2465":2,"2466":2,"2467":6,"2468":1,"2546":1,"2548":2,"2553":4,"2554":1,"2578":1,"2582":1,"2583":1,"2587":4,"2599":2,"2603":1,"2667":1,"2695":1,"2707":2,"2714":8,"2721":15,"2787":6,"2788":11,"2789":2,"2792":1,"2793":2,"2797":1,"2803":1,"2805":1,"2816":1,"2830":1,"2831":1,"2862":18,"2864":1,"2871":1,"2877":3,"2878":3,"2879":3,"2880":3,"2911":1,"2915":6,"2930":5,"2931":3}}],["layering",{"2":{"2554":1}}],["layer>",{"2":{"2032":3}}],["layer9",{"2":{"1619":1}}],["layer8",{"2":{"1619":1}}],["layer7",{"2":{"1619":1,"2042":2}}],["layer6",{"2":{"1619":1}}],["layer5",{"2":{"1619":1,"2042":2}}],["layer4",{"2":{"1619":1}}],["layer3",{"2":{"1619":1,"2189":2}}],["layer2",{"2":{"1619":1,"2189":2}}],["layer1",{"2":{"1619":1,"2189":2}}],["layer0",{"2":{"1619":3}}],["layers\`",{"2":{"1425":1}}],["layers",{"0":{"166":1,"589":1,"1380":1,"1415":1,"1416":1,"1418":1,"1425":1,"1614":1,"1741":2,"1742":2,"1743":2,"2042":1,"2188":1,"2189":1,"2190":1,"2313":1,"2547":1,"2552":1,"2775":1,"2885":1},"1":{"1416":1,"1417":2,"1418":1,"1419":2,"1420":2,"1421":2,"1422":1,"1423":1,"1424":1,"1425":1,"1426":1,"2189":1,"2190":1,"2191":1,"2192":1,"2193":1,"2314":1,"2315":1,"2316":1,"2548":1,"2549":1,"2553":1,"2554":1,"2776":1,"2777":1,"2778":1,"2779":1},"2":{"112":4,"114":1,"120":1,"160":1,"166":4,"176":1,"190":1,"191":1,"198":1,"199":3,"211":1,"266":1,"285":1,"307":1,"361":1,"369":1,"445":1,"560":1,"563":6,"586":1,"587":2,"589":1,"605":1,"614":2,"1317":1,"1350":1,"1380":1,"1413":1,"1415":1,"1416":12,"1417":2,"1418":1,"1419":6,"1420":3,"1421":5,"1422":12,"1423":1,"1424":1,"1425":3,"1426":1,"1445":1,"1480":1,"1527":1,"1613":3,"1614":2,"1616":1,"1661":1,"1684":1,"1735":1,"1740":1,"1741":2,"1746":6,"1749":1,"1751":2,"1760":1,"1761":1,"1764":2,"1939":1,"2030":1,"2034":1,"2042":2,"2163":1,"2188":3,"2189":21,"2190":1,"2191":9,"2192":3,"2193":3,"2194":1,"2277":1,"2287":1,"2311":1,"2312":1,"2313":1,"2315":1,"2316":2,"2528":1,"2547":6,"2548":2,"2549":5,"2551":1,"2552":5,"2578":1,"2579":2,"2643":1,"2644":1,"2776":1,"2778":2,"2779":1,"2870":2,"2878":1,"2885":5,"2915":1,"2923":1}}],["layer",{"0":{"3":1,"15":1,"246":1,"660":1,"1350":1,"1423":1,"1424":1,"1426":1,"1613":1,"1614":1,"1749":1,"1759":1,"1760":1,"1764":1,"1765":1,"2030":1,"2031":2,"2039":1,"2043":2,"2045":1,"2191":1,"2203":1,"2311":1,"2312":2,"2527":1,"2528":1,"2548":1,"2549":1,"2553":1,"2554":1,"2776":1,"2778":1,"2780":1,"2817":1},"1":{"1424":1,"1425":1,"1426":1,"1614":1,"1754":1,"1755":1,"1756":1,"1760":1,"1761":1,"1762":1,"1763":1,"1764":1,"1765":1,"2031":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1,"2777":1,"2779":1},"2":{"31":1,"38":10,"49":2,"73":1,"93":1,"105":4,"114":2,"149":1,"160":1,"166":3,"176":2,"190":1,"191":5,"194":4,"198":1,"199":7,"211":4,"236":4,"246":2,"249":1,"266":2,"285":7,"297":1,"298":1,"307":1,"308":2,"328":2,"369":1,"560":1,"561":3,"562":2,"563":3,"568":2,"586":2,"589":2,"614":4,"644":1,"660":1,"683":1,"757":1,"759":1,"1350":4,"1412":1,"1413":29,"1415":1,"1416":30,"1417":4,"1418":2,"1419":10,"1420":2,"1421":13,"1422":90,"1423":2,"1424":5,"1425":30,"1426":6,"1437":1,"1441":13,"1467":1,"1480":3,"1484":1,"1527":9,"1599":3,"1606":4,"1607":5,"1613":3,"1614":31,"1616":6,"1619":28,"1622":8,"1638":6,"1655":1,"1656":2,"1657":1,"1661":1,"1684":5,"1736":1,"1749":14,"1751":2,"1759":26,"1760":4,"1761":15,"1762":3,"1763":13,"1764":9,"1765":10,"1796":1,"1806":1,"1839":1,"1849":1,"1939":4,"1942":1,"1995":1,"2025":9,"2027":6,"2030":17,"2031":15,"2032":8,"2034":6,"2035":2,"2037":2,"2039":31,"2040":1,"2042":12,"2043":30,"2044":3,"2045":4,"2046":2,"2059":1,"2072":1,"2073":13,"2074":5,"2163":2,"2164":1,"2166":7,"2188":1,"2189":18,"2190":14,"2191":24,"2203":4,"2269":3,"2277":4,"2280":1,"2285":1,"2286":1,"2291":3,"2295":1,"2297":1,"2302":9,"2311":4,"2312":26,"2313":4,"2314":8,"2315":13,"2316":22,"2374":4,"2527":3,"2528":20,"2540":2,"2546":2,"2547":2,"2548":18,"2549":5,"2550":1,"2551":5,"2552":4,"2553":3,"2554":6,"2557":1,"2563":2,"2578":2,"2644":6,"2645":14,"2668":1,"2700":2,"2720":1,"2721":4,"2776":4,"2777":8,"2778":10,"2779":7,"2780":10,"2817":1,"2861":1,"2862":2,"2863":1,"2870":2,"2873":2,"2883":1,"2885":3,"2900":5,"2901":2,"2907":2,"2908":7,"2909":5,"2910":1,"2911":1,"2941":1,"2942":7}}],["lter",{"2":{"1532":1}}],["ltoboolean",{"2":{"2847":1}}],["lto",{"2":{"111":1,"112":2,"114":3,"134":5,"149":1,"160":1,"211":2,"249":1,"266":2,"570":2,"2667":1}}],["lt",{"0":{"15":1,"364":1,"365":1,"366":1,"1457":1,"1458":1,"1459":1,"1460":2,"1461":5,"1633":1,"2441":1,"2442":1},"2":{"4":3,"18":2,"55":1,"70":1,"132":2,"133":1,"134":1,"176":4,"195":1,"199":1,"201":1,"211":1,"249":2,"297":1,"317":1,"338":1,"397":1,"401":2,"403":3,"405":8,"427":1,"428":1,"431":2,"457":1,"474":2,"490":1,"493":4,"529":1,"557":1,"562":1,"567":2,"568":3,"586":2,"591":2,"616":3,"625":6,"670":1,"671":4,"681":1,"718":1,"731":1,"752":1,"758":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1312":2,"1313":1,"1327":1,"1344":1,"1365":6,"1375":3,"1385":1,"1403":1,"1404":2,"1416":2,"1417":1,"1427":1,"1428":3,"1432":4,"1433":1,"1434":6,"1435":5,"1437":4,"1439":1,"1441":1,"1443":5,"1457":1,"1458":1,"1459":3,"1460":1,"1485":2,"1498":1,"1500":1,"1509":1,"1584":1,"1587":1,"1597":1,"1598":2,"1599":2,"1622":1,"1627":2,"1637":1,"1638":20,"1662":1,"1684":1,"1751":2,"1758":1,"1759":2,"1765":1,"1806":2,"1931":5,"2030":1,"2031":11,"2032":1,"2266":3,"2311":1,"2403":1,"2407":2,"2409":4,"2410":16,"2411":2,"2427":1,"2436":2,"2438":1,"2439":1,"2442":2,"2495":4,"2497":2,"2501":1,"2505":1,"2515":1,"2528":1,"2539":2,"2558":2,"2563":4,"2564":2,"2583":5,"2587":2,"2598":1,"2621":2,"2627":7,"2632":3,"2666":2,"2667":2,"2668":1,"2669":1,"2719":1,"2721":2,"2778":1,"2787":4,"2844":1,"2862":1,"2899":1,"2901":3,"2907":4,"2908":7,"2909":4,"2911":1,"2917":4,"2941":1}}],["liability",{"2":{"2740":1}}],["liatris",{"0":{"1394":1},"2":{"211":1,"1386":2,"1388":3,"1396":3,"2699":1,"2888":1}}],["liking",{"0":{"2579":1},"2":{"2179":1}}],["likewise",{"2":{"568":1,"2563":1}}],["likelihood",{"2":{"263":1,"397":1,"751":1,"2719":2}}],["likely",{"2":{"118":1,"132":1,"156":1,"182":1,"213":2,"397":1,"713":1,"751":1,"1362":1,"1641":1,"1990":1,"2185":1,"2287":1,"2390":1,"2499":1,"2594":1,"2605":1,"2669":1,"2687":1,"2703":1,"2719":1,"2746":1,"2754":1,"2884":1}}],["like",{"0":{"1352":1},"2":{"100":1,"114":1,"120":1,"125":3,"152":3,"156":1,"169":2,"175":1,"176":1,"185":3,"189":1,"194":1,"201":1,"230":1,"244":1,"247":1,"263":1,"307":1,"320":1,"335":1,"376":1,"419":1,"503":1,"521":1,"549":1,"552":1,"566":2,"567":1,"572":1,"576":1,"608":1,"611":2,"613":2,"645":1,"654":1,"666":1,"685":1,"754":1,"1197":1,"1296":1,"1300":1,"1308":4,"1327":2,"1329":2,"1340":1,"1351":1,"1355":1,"1369":1,"1373":1,"1375":3,"1377":1,"1402":1,"1406":2,"1412":1,"1413":1,"1415":1,"1416":3,"1417":1,"1434":1,"1435":2,"1437":1,"1442":1,"1445":1,"1446":1,"1450":1,"1452":2,"1454":1,"1460":1,"1475":1,"1479":4,"1484":1,"1485":1,"1487":2,"1504":2,"1513":1,"1521":1,"1522":2,"1532":1,"1552":1,"1562":1,"1563":1,"1584":1,"1585":1,"1587":2,"1588":1,"1589":1,"1591":1,"1599":1,"1608":1,"1619":1,"1630":1,"1660":1,"1662":1,"1664":1,"1736":1,"1749":1,"1757":2,"1758":2,"1764":1,"1804":2,"1845":1,"1913":2,"1917":1,"1932":1,"1933":2,"1996":1,"2025":1,"2047":1,"2068":1,"2074":2,"2156":2,"2159":1,"2170":1,"2181":1,"2192":1,"2193":1,"2209":1,"2211":2,"2266":1,"2269":2,"2285":1,"2293":1,"2297":1,"2302":5,"2306":1,"2310":1,"2312":1,"2322":1,"2324":1,"2374":1,"2375":1,"2383":1,"2403":1,"2408":1,"2409":1,"2411":1,"2416":1,"2419":1,"2420":1,"2421":2,"2423":1,"2424":1,"2432":1,"2435":1,"2449":2,"2459":2,"2470":1,"2476":2,"2528":2,"2559":2,"2560":1,"2576":1,"2577":1,"2578":1,"2614":1,"2621":1,"2627":1,"2644":1,"2645":2,"2656":1,"2664":1,"2670":1,"2684":2,"2688":1,"2713":1,"2721":2,"2722":2,"2724":1,"2732":1,"2744":1,"2748":1,"2780":1,"2790":2,"2882":3,"2883":1,"2900":1,"2908":2,"2909":1,"2914":1,"2917":2,"2919":1,"2927":3,"2929":1,"2931":1,"2932":2,"2937":1,"2938":1,"2941":2}}],["lilypadusb",{"2":{"686":1,"2492":1}}],["lily58",{"0":{"30":1,"31":1},"1":{"31":1},"2":{"30":2}}],["live",{"2":{"458":1,"459":1,"1627":1,"2293":1,"2664":1}}],["lives",{"2":{"99":1,"288":1,"2475":1}}],["licensing",{"0":{"2568":1,"2729":1},"2":{"273":1,"284":1,"408":1,"2703":2,"2727":1}}],["licensed",{"2":{"2450":1,"2728":1}}],["licenses",{"2":{"1438":1,"2719":1,"2725":1,"2728":1,"2729":2,"2738":1,"2743":1}}],["license",{"0":{"2450":1,"2566":1},"1":{"2567":1,"2568":1,"2569":1,"2570":1,"2571":1},"2":{"199":1,"276":1,"308":1,"338":3,"397":1,"1316":1,"1438":5,"1630":3,"2450":2,"2566":1,"2567":2,"2568":4,"2569":1,"2570":2,"2719":7,"2721":2,"2725":5,"2727":1,"2729":3,"2737":1,"2740":1,"2741":1,"2743":1}}],["lights",{"0":{"2308":1},"2":{"646":1,"1424":1,"1436":1,"2209":1,"2210":1}}],["lightweight",{"2":{"279":1}}],["lightcycle",{"2":{"222":1}}],["light",{"0":{"563":1},"2":{"199":1,"222":1,"563":1,"568":1,"645":1,"1551":1,"1998":1,"2010":1,"2013":1,"2063":1,"2065":1,"2074":1,"2182":1,"2183":1,"2185":2,"2188":1,"2189":6,"2210":1,"2271":1,"2274":1,"2308":1,"2455":1,"2651":1,"2721":1,"2751":1,"2819":1,"2838":1,"2870":1,"2887":2}}],["lighting",{"0":{"233":1,"1838":1,"2058":1,"2178":1,"2188":1,"2189":1,"2190":1,"2191":1,"2192":1,"2537":1},"1":{"1839":1,"1840":1,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1847":1,"1848":1,"1849":1,"1850":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1859":1,"1860":1,"1861":1,"1862":1,"1863":1,"1864":1,"1865":1,"1866":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":1,"1899":1,"1900":1,"1901":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":1,"2065":1,"2066":1,"2067":1,"2068":1,"2069":1,"2070":1,"2071":1,"2072":1,"2073":1,"2074":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":1,"2085":1,"2086":1,"2087":1,"2088":1,"2089":1,"2090":1,"2091":1,"2092":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":1,"2123":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2142":1,"2143":1,"2144":1,"2145":1,"2146":1,"2147":1,"2148":1,"2149":1,"2150":1,"2151":1,"2152":1,"2153":1,"2154":1,"2155":1,"2179":1,"2180":1,"2181":1,"2182":1,"2183":1,"2184":1,"2185":1,"2186":1,"2187":1,"2188":1,"2189":2,"2190":2,"2191":2,"2192":2,"2193":2,"2194":1,"2195":1,"2196":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1,"2205":1,"2206":1,"2207":1,"2208":1,"2209":1,"2210":1,"2211":1},"2":{"114":1,"191":1,"221":1,"233":1,"236":3,"244":1,"249":2,"266":1,"308":1,"316":1,"460":1,"563":4,"1389":1,"1390":1,"1435":1,"2178":1,"2179":1,"2181":1,"2182":3,"2183":1,"2188":2,"2189":2,"2190":2,"2191":2,"2192":4,"2193":2,"2194":1,"2203":2,"2209":1,"2537":2,"2750":1,"2798":1,"2870":2,"2924":2}}],["little",{"2":{"191":1,"644":1,"685":1,"1362":1,"1493":1,"1497":2,"1513":2,"1517":1,"1532":1,"2302":1,"2303":1,"2309":1,"2317":1,"2403":2,"2421":1,"2610":1,"2758":1,"2765":1}}],["lithuanian",{"2":{"176":2,"2880":6}}],["literal",{"2":{"160":2,"669":1,"1454":1}}],["literals",{"2":{"114":1,"191":1,"2215":1}}],["lite",{"0":{"245":1,"622":1},"2":{"87":3,"88":3,"93":1,"103":4,"104":3,"112":1,"126":5,"127":3,"134":1,"149":2,"245":2,"249":2,"317":1,"328":1,"622":1,"2721":3,"2865":2}}],["liftoff",{"2":{"2014":2}}],["lifted",{"2":{"1755":1,"2014":1}}],["lifting",{"2":{"1746":1,"2609":1}}],["lift",{"2":{"175":1,"2014":1,"2016":2}}],["life",{"2":{"123":1,"307":1,"608":1,"1412":1,"2185":1,"2724":1}}],["lime",{"2":{"134":1}}],["limitation",{"2":{"692":1,"1512":1,"2483":1,"2562":1,"2677":1}}],["limitations",{"0":{"573":1,"1493":1,"2673":1},"1":{"2674":1,"2675":1,"2676":1,"2677":1},"2":{"293":1,"305":1,"314":1,"609":1,"1300":1,"2255":1,"2287":1,"2318":1,"2411":1,"2726":1,"2728":2,"2741":1}}],["limits",{"0":{"658":1},"2":{"176":2,"236":1,"285":2,"294":1,"573":1,"716":1,"1844":2,"1846":3,"2016":1,"2066":2,"2069":3,"2677":1,"2864":2,"2871":2}}],["limiting",{"2":{"114":1,"427":1,"1846":1,"2069":1,"2444":1,"2669":1,"2670":1}}],["limited",{"0":{"591":1,"2677":1},"2":{"92":1,"130":1,"174":1,"306":1,"315":1,"590":1,"613":1,"617":1,"687":1,"716":1,"1319":1,"1346":1,"1412":1,"1417":2,"1522":1,"1656":1,"1747":1,"2074":1,"2161":1,"2242":1,"2270":1,"2322":1,"2367":1,"2389":1,"2462":1,"2467":3,"2468":1,"2560":1,"2632":1,"2724":1,"2881":1,"2895":1}}],["limit",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"63":1,"114":1,"160":2,"176":1,"191":1,"222":1,"236":1,"393":1,"548":1,"627":1,"655":1,"716":1,"752":1,"759":1,"1407":1,"1550":1,"1675":2,"1844":1,"1846":2,"1943":1,"2064":3,"2066":1,"2069":2,"2182":2,"2439":2,"2747":1,"2864":2,"2871":2,"2885":1}}],["linx",{"2":{"2325":1,"2545":1}}],["linworks",{"2":{"191":1,"266":1}}],["lingering",{"2":{"191":3,"199":1}}],["linux1",{"2":{"2515":1}}],["linux",{"0":{"416":1,"1312":1,"1313":1,"1314":1},"1":{"1313":1,"1314":1},"2":{"158":1,"222":1,"1312":1,"1313":1,"1323":1,"1329":2,"1358":1,"1754":1,"1951":1,"1952":1,"1958":1,"2050":1,"2320":1,"2321":1,"2324":3,"2325":2,"2337":1,"2338":1,"2339":1,"2400":1,"2495":1,"2499":1,"2515":1,"2545":2,"2606":1,"2612":1,"2613":1,"2619":2,"2620":1,"2637":1,"2667":2,"2710":1,"2732":1,"2880":2}}],["linting",{"0":{"499":1,"500":1,"504":1},"1":{"500":1,"501":1,"502":1,"503":1,"504":1}}],["lint",{"0":{"438":1,"2433":1},"2":{"134":1,"160":1,"191":1,"199":1,"236":1,"249":1,"266":1,"294":1,"308":4,"317":1,"328":1,"333":2,"338":3,"397":1,"438":3,"499":1,"504":1,"2433":5}}],["linear",{"2":{"1679":2,"2769":3}}],["linebreak",{"2":{"529":1}}],["lined",{"2":{"348":1,"520":1}}],["lines",{"0":{"336":1},"2":{"64":1,"113":1,"153":1,"211":1,"272":1,"273":1,"277":1,"520":2,"522":2,"529":1,"535":1,"548":1,"613":1,"645":1,"718":1,"1387":1,"1454":1,"1663":2,"1693":3,"1948":5,"1980":1,"2283":4,"2287":1,"2288":1,"2289":1,"2290":1,"2490":1,"2497":1,"2578":2,"2710":1,"2750":1}}],["line",{"0":{"1705":1,"2609":1,"2637":1},"1":{"1706":1},"2":{"45":1,"65":1,"112":1,"114":2,"118":2,"157":1,"199":1,"226":2,"236":1,"249":1,"264":1,"274":1,"277":1,"282":1,"285":1,"292":1,"301":1,"302":1,"313":1,"326":1,"338":3,"348":2,"414":1,"456":3,"457":1,"468":1,"471":1,"487":1,"494":1,"520":4,"521":1,"524":1,"526":2,"529":3,"535":3,"540":1,"613":2,"620":1,"1194":1,"1202":1,"1249":1,"1294":1,"1330":1,"1389":1,"1393":2,"1400":1,"1404":1,"1409":1,"1410":1,"1432":1,"1436":1,"1599":3,"1606":1,"1625":2,"1693":2,"1706":2,"1707":1,"1926":1,"1948":5,"1980":1,"1996":1,"2243":1,"2283":3,"2291":1,"2313":1,"2376":1,"2379":1,"2381":2,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2403":2,"2410":1,"2416":1,"2421":1,"2459":2,"2497":2,"2578":3,"2582":1,"2600":1,"2606":2,"2612":1,"2627":2,"2632":2,"2637":1,"2646":1,"2657":1,"2660":1,"2662":1,"2684":1,"2696":1,"2707":1,"2750":7,"2760":1,"2788":1,"2795":1,"2796":1,"2809":1,"2912":1,"2916":1,"2942":2}}],["linkid=830387",{"2":{"2667":1}}],["linking",{"2":{"236":2,"335":1,"570":2,"1362":1,"2443":1,"2567":1,"2580":1,"2622":1,"2727":1,"2734":4}}],["link007",{"2":{"2499":1}}],["linked",{"2":{"236":1,"570":1,"2443":1,"2494":1,"2727":1,"2862":1}}],["linker",{"2":{"114":1}}],["links",{"0":{"2429":1},"2":{"199":1,"335":2,"387":1,"407":1,"659":1,"1337":1,"1379":1,"1532":1,"2423":1,"2430":1,"2437":1,"2476":1,"2514":1,"2567":1,"2721":1}}],["link",{"2":{"10":2,"50":1,"93":1,"94":1,"114":1,"133":1,"134":2,"277":1,"383":2,"405":1,"570":2,"614":1,"681":1,"1310":1,"1342":1,"1532":2,"1533":1,"1988":2,"2387":4,"2403":2,"2417":4,"2498":1,"2499":2,"2500":2,"2501":4,"2651":1,"2660":1,"2719":1,"2721":3,"2847":1,"2882":1}}],["libusbk",{"2":{"686":1}}],["libusb",{"2":{"240":3}}],["liberal",{"2":{"522":1,"538":1}}],["liberally",{"2":{"520":1,"522":1}}],["liber",{"2":{"143":2,"149":1}}],["libc",{"2":{"114":1,"743":1,"2882":1}}],["lib8tion",{"2":{"114":1,"308":1}}],["libraries",{"0":{"2726":1,"2732":1,"2738":1,"2741":1},"1":{"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1},"2":{"30":1,"33":1,"2050":1,"2567":1,"2726":3,"2728":4,"2730":1,"2731":1,"2732":2,"2734":2,"2737":1,"2739":1,"2742":1,"2743":2,"2896":1}}],["library",{"0":{"1521":1,"1680":1,"2728":1,"2730":1,"2731":1},"1":{"1522":1,"2731":1,"2732":1},"2":{"30":2,"160":1,"471":1,"472":1,"474":1,"480":1,"481":1,"546":1,"570":1,"759":2,"1520":3,"1521":2,"1680":1,"2050":2,"2051":1,"2052":1,"2728":1,"2730":1,"2734":1,"2740":1,"2741":1,"2751":2}}],["lib",{"2":{"6":1,"75":1,"113":1,"114":1,"234":2,"338":3,"405":2,"423":1,"487":2,"503":1,"550":1,"551":1,"552":2,"570":8,"664":3,"670":1,"671":3,"2403":4,"2668":1,"2728":1}}],["lists",{"0":{"338":1,"535":1},"2":{"439":1,"440":1,"452":1,"541":1,"683":1}}],["listings",{"2":{"211":1,"2667":1}}],["listing",{"2":{"149":1,"428":1,"681":1,"1448":1}}],["listed",{"2":{"43":1,"120":1,"204":1,"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"415":1,"418":1,"521":1,"566":1,"631":1,"637":1,"713":1,"716":1,"763":1,"1417":1,"1421":1,"1628":1,"1948":1,"2263":1,"2302":1,"2490":1,"2495":1,"2496":1,"2602":1,"2698":1,"2702":1,"2746":1,"2877":1,"2933":1}}],["listening",{"2":{"1326":1,"1329":2,"2177":1}}],["listen",{"0":{"1323":1,"1329":1,"2812":1},"2":{"34":1,"560":1,"1323":1,"1329":4,"1330":1,"2271":1,"2411":2,"2812":1}}],["list",{"0":{"71":1,"439":1,"440":1,"452":1,"686":1,"2414":1,"2467":1,"2774":1},"1":{"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1},"2":{"0":1,"19":1,"76":1,"93":1,"114":1,"116":1,"120":1,"124":1,"134":3,"149":2,"157":1,"172":1,"182":1,"186":1,"188":2,"189":1,"191":2,"199":1,"202":1,"204":1,"211":1,"233":2,"234":1,"249":1,"272":1,"279":1,"288":1,"298":1,"316":1,"348":1,"369":1,"372":3,"373":1,"387":1,"397":1,"431":3,"432":1,"439":1,"440":1,"450":1,"451":1,"452":2,"453":1,"467":5,"524":1,"534":1,"570":3,"594":1,"669":1,"683":2,"686":1,"720":1,"1340":1,"1375":2,"1441":1,"1445":1,"1450":2,"1479":5,"1596":1,"1599":2,"1606":1,"1620":1,"1633":1,"1680":1,"1735":1,"1758":2,"1839":1,"1955":1,"2050":1,"2059":1,"2067":1,"2159":1,"2189":3,"2191":1,"2194":1,"2199":4,"2205":1,"2270":1,"2293":1,"2320":1,"2324":2,"2428":1,"2463":1,"2466":1,"2467":1,"2546":2,"2552":1,"2553":1,"2570":1,"2571":1,"2576":2,"2578":2,"2579":1,"2590":1,"2599":1,"2600":2,"2603":1,"2622":2,"2627":4,"2656":1,"2668":1,"2702":1,"2703":1,"2709":1,"2710":3,"2717":1,"2719":1,"2721":1,"2765":1,"2780":1,"2845":1,"2850":1,"2856":2,"2858":1,"2861":2,"2862":2,"2864":2,"2865":3,"2871":2,"2872":1,"2895":1,"2917":2,"2923":1}}],["sz",{"2":{"2324":1}}],["s2",{"2":{"2289":1,"2294":2}}],["s2m",{"2":{"2270":9}}],["s1",{"2":{"2289":1,"2294":2}}],["sg",{"2":{"1375":1}}],["sgk50",{"2":{"294":1}}],["sbin",{"2":{"1313":1}}],["s4",{"2":{"294":1}}],["svc",{"2":{"2729":1,"2734":1,"2737":1,"2743":1}}],["svd",{"2":{"2667":5}}],["svdfile",{"2":{"2667":2}}],["svlinky",{"0":{"1395":1},"2":{"285":1,"1386":1,"1388":3,"1395":1,"2707":1}}],["svnroot",{"2":{"421":1}}],["svn",{"2":{"114":1,"149":1,"421":8}}],["s3",{"2":{"222":1,"360":2,"361":1,"364":1,"576":1,"2294":1}}],["sq",{"2":{"2245":9,"2246":12}}],["sq80",{"2":{"249":1}}],["sqrt",{"2":{"222":1}}],["squash",{"2":{"617":1}}],["square",{"2":{"222":1,"718":1,"1474":2,"1482":1}}],["squigglies",{"2":{"427":1}}],["squigglybob",{"2":{"222":1}}],["squiggle",{"2":{"143":2}}],["squishytkl",{"2":{"197":2}}],["squishy65",{"2":{"197":2}}],["squeeze",{"2":{"160":1,"510":1,"676":1}}],["squeezing",{"0":{"123":1,"2881":1},"1":{"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"134":1,"2894":1,"2924":1}}],["sfbs",{"0":{"2161":1}}],["sf",{"2":{"211":1}}],["sftent",{"2":{"2252":3,"2253":1}}],["sftllck",{"2":{"1765":4}}],["sft",{"2":{"195":1,"1599":2,"2535":1,"2559":1,"2899":1,"2901":1,"2907":3,"2910":6,"2914":8}}],["s65",{"2":{"211":1}}],["sram",{"2":{"2501":3}}],["srand",{"2":{"1941":1,"2279":1}}],["sr",{"2":{"2294":3}}],["srst",{"2":{"391":1}}],["srom",{"2":{"273":2,"277":1}}],["sriwedari70",{"2":{"211":1}}],["src",{"2":{"75":1,"114":1,"133":1,"134":1,"149":1,"234":9,"236":1,"427":1,"570":8,"671":2,"727":1,"798":2,"824":2,"853":2,"885":2,"917":2,"952":2,"986":2,"1020":2,"1054":2,"1088":2,"1122":2,"1156":2,"1212":2,"1411":1,"1435":4,"1633":1,"2439":1,"2598":1,"2937":1}}],["sdep",{"2":{"2368":1}}],["sdio",{"2":{"1998":2,"2010":2,"2013":2,"2016":3}}],["sd",{"2":{"1599":4}}],["sd2",{"2":{"1266":1}}],["sd3",{"2":{"1200":2}}],["sd1",{"2":{"1200":1,"1266":2}}],["sdb",{"2":{"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1}}],["sdk",{"2":{"191":1,"199":1,"308":1,"2738":1}}],["sdadel",{"2":{"767":1}}],["sda",{"2":{"176":1,"764":2,"765":4,"826":1,"855":1,"887":1,"919":8,"954":8,"988":1,"1022":1,"1056":1,"1090":8,"1124":8,"1158":8,"1214":1,"1676":1,"2260":1,"2695":1}}],["ssh",{"2":{"2595":1,"2601":1}}],["ssion",{"2":{"2170":1}}],["ssp",{"2":{"1191":3}}],["ssk",{"2":{"207":3}}],["ss",{"2":{"176":2,"196":2,"1244":5,"1249":1,"1450":1,"1452":24,"1454":1,"1801":2,"1807":4,"2215":4,"2218":1,"2219":2,"2281":1}}],["ssd1351",{"2":{"176":1,"2746":2,"2749":7}}],["ssd1306oled",{"2":{"31":3,"34":3,"220":1}}],["ssd1306",{"0":{"1949":1,"2454":1},"2":{"30":1,"33":1,"50":1,"153":1,"176":1,"220":2,"221":2,"248":1,"249":1,"1937":5,"1939":3,"1943":1,"1946":1,"1947":3,"1948":2,"2454":1,"2746":2,"2749":2}}],["snek",{"2":{"2322":3}}],["snes",{"2":{"236":1}}],["sn",{"2":{"2181":1,"2537":1}}],["snippers",{"2":{"2414":1}}],["snippet",{"2":{"1657":1,"1986":1}}],["snip>",{"2":{"373":1}}],["sn74lv1t34",{"2":{"1295":1}}],["sn74x154",{"2":{"160":1}}],["sn74x138",{"2":{"148":1,"149":1,"160":1}}],["snled27351",{"0":{"1211":1,"1218":1,"1220":1,"1222":1,"1224":1,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1240":1},"1":{"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":2,"1220":1,"1221":2,"1222":1,"1223":2,"1224":1,"1225":2,"1226":1,"1227":2,"1228":1,"1229":2,"1230":1,"1231":2,"1232":1,"1233":2,"1234":1,"1235":2,"1236":1,"1237":2,"1238":1,"1239":2,"1240":1,"1241":2},"2":{"236":2,"249":1,"1211":1,"1212":4,"1213":7,"1214":6,"1216":6,"1226":1,"1227":1,"1230":1,"1231":1,"1234":1,"1235":1,"1236":1,"1237":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["snowe",{"2":{"191":1}}],["snprintf",{"2":{"191":1,"2882":3,"2886":1}}],["snapping",{"2":{"2017":1}}],["snapshot",{"2":{"611":1}}],["snap",{"2":{"277":1}}],["snake",{"2":{"160":1,"2181":2,"2183":2,"2184":2,"2185":2,"2187":2,"2210":1,"2537":2,"2870":1,"2887":1}}],["snagpad",{"2":{"43":2}}],["skeleton",{"2":{"2585":1}}],["skeletyl",{"2":{"311":8,"317":1}}],["sketches",{"2":{"2492":1}}],["sketch",{"2":{"2479":1}}],["skewed",{"2":{"1486":1}}],["sk6805",{"2":{"1280":1,"1284":1,"2178":1}}],["sk6812rgbw",{"2":{"1285":1}}],["sk6812mini",{"2":{"1280":1,"2178":1}}],["sk6812",{"2":{"1280":1,"1284":1,"2178":1}}],["skully",{"2":{"481":1}}],["skullydazed",{"2":{"111":1,"2845":1}}],["skills",{"2":{"614":1,"1804":1,"2047":1}}],["skiller",{"2":{"294":1}}],["skips",{"2":{"1451":2,"1659":1,"2006":1,"2031":2,"2515":1}}],["skipped",{"2":{"277":1,"2303":1}}],["skipping",{"2":{"240":1,"654":1,"2303":1}}],["skip",{"2":{"49":1,"65":1,"114":1,"149":1,"176":1,"214":1,"307":2,"328":1,"628":1,"629":1,"1195":1,"1198":1,"1413":1,"1527":1,"2002":1,"2006":1,"2400":1,"2416":1,"2497":1,"2510":2,"2551":1,"2593":1,"2606":1,"2627":2,"2651":1,"2652":1,"2924":1}}],["skyloong",{"2":{"222":1,"236":4,"294":1}}],["slct",{"2":{"2509":1,"2515":1}}],["sl",{"2":{"2294":2}}],["slep",{"2":{"1348":1,"2510":1,"2515":1}}],["sleeping",{"2":{"1619":1,"2411":1}}],["sleep",{"0":{"1367":1,"1373":1},"2":{"70":1,"73":1,"93":1,"190":2,"191":1,"222":1,"249":2,"317":1,"645":1,"1367":1,"1373":1,"1619":1,"1846":1,"2069":1,"2182":2,"2411":1,"2510":2,"2515":2,"2864":2,"2870":2,"2871":2}}],["slovenian",{"2":{"2880":3}}],["slovak",{"2":{"2880":3}}],["slows",{"2":{"2016":1}}],["slowdown",{"2":{"1947":1}}],["slower",{"2":{"1943":1,"2028":1,"2246":1,"2247":1,"2591":1}}],["slowest",{"2":{"1931":1,"1932":1,"1948":1,"2873":1}}],["slowly",{"2":{"1941":1,"2063":1,"2279":1}}],["slow",{"2":{"563":1,"1407":2,"1484":1,"1675":1,"1929":1,"2000":1,"2017":1,"2189":1,"2619":1,"2757":1}}],["slots",{"2":{"218":1}}],["slsh",{"2":{"369":1,"587":2,"2374":1,"2505":1,"2515":1,"2553":1,"2911":1,"2912":1,"2916":1,"2919":1}}],["sla0044",{"2":{"2729":1,"2738":1}}],["slash",{"2":{"1619":1,"1686":1,"2434":1,"2505":1,"2511":1,"2515":2}}],["slashes",{"2":{"149":1}}],["slated",{"2":{"750":1}}],["slate",{"2":{"616":1,"2721":1}}],["slavepin",{"0":{"1248":1},"1":{"1249":1,"1250":1},"2":{"1245":1,"1249":1}}],["slave",{"2":{"74":1,"92":1,"93":1,"107":1,"211":1,"566":2,"568":13,"747":2,"756":2,"920":3,"1091":3,"1125":3,"1197":2,"1244":1,"1245":2,"1262":1,"1790":1,"1985":1,"2074":1,"2191":1,"2198":4,"2254":1,"2268":4,"2269":8,"2270":24,"2271":7,"2272":1,"2281":1,"2371":1}}],["slim",{"2":{"2064":1,"2381":1}}],["sliding",{"2":{"1933":1}}],["slicing",{"2":{"1478":1}}],["slightly",{"2":{"617":1,"698":1,"1196":1,"1211":1,"1283":1,"1487":1,"1490":1,"1608":1,"1675":1,"2025":1,"2262":1,"2372":1,"2491":1,"2496":1,"2721":1,"2908":1}}],["slight",{"2":{"149":1,"236":1,"2063":3}}],["slipped",{"2":{"95":1}}],["smith",{"2":{"2707":1}}],["smithrune",{"2":{"211":1}}],["smp",{"2":{"698":1}}],["smpr",{"2":{"698":1}}],["smartmmd",{"2":{"2567":1}}],["smart",{"2":{"608":1}}],["smallest",{"2":{"2719":1,"2722":1}}],["smaller",{"2":{"134":1,"166":1,"248":1,"249":2,"548":1,"1675":1,"1948":1,"2288":1,"2719":1,"2749":3,"2882":2,"2896":1}}],["smallice",{"2":{"159":2}}],["small",{"0":{"25":1},"2":{"153":1,"174":1,"191":2,"211":1,"277":1,"294":1,"415":1,"548":1,"570":1,"1280":1,"1511":1,"1519":1,"1520":1,"1616":1,"1673":1,"1929":1,"1932":1,"2178":1,"2273":2,"2386":1,"2414":1,"2417":1,"2420":2,"2422":1,"2448":1,"2567":1,"2569":1,"2579":1,"2633":1,"2934":1}}],["smoke",{"2":{"2421":2}}],["smoothly",{"2":{"2372":1}}],["smoothed",{"2":{"2372":1}}],["smoother",{"2":{"74":1,"562":1,"1929":1,"1930":1,"2017":1}}],["smoothing",{"2":{"2017":2}}],["smoothness",{"2":{"1930":1,"2372":1}}],["smooth1",{"2":{"1680":12}}],["smooth2",{"2":{"1680":12}}],["smooth",{"2":{"308":1,"317":1,"409":1,"1680":5,"1933":1,"2017":1,"2063":3,"2625":1}}],["smoll",{"2":{"241":4,"249":1}}],["smolka",{"2":{"211":1}}],["syllabus",{"0":{"2922":1},"2":{"2574":1}}],["syllable",{"2":{"2284":2}}],["syrq",{"2":{"2509":1,"2515":1}}],["sysreq",{"2":{"2509":1,"2515":1}}],["sys",{"2":{"2052":2}}],["syscalls",{"2":{"308":1}}],["sysclk",{"2":{"134":1}}],["sysex",{"2":{"114":1,"133":1,"134":1}}],["systemctl",{"2":{"1313":2}}],["systemd",{"2":{"1313":1}}],["systems",{"0":{"419":1},"2":{"134":1,"234":1,"419":1,"649":1,"1348":1,"1443":1,"1913":1,"2318":1,"2323":1,"2410":2,"2468":1,"2739":1,"2743":1,"2758":1,"2765":1,"2882":1,"2919":1}}],["system",{"0":{"140":1,"508":1,"509":1,"1366":1,"2465":1,"2663":1,"2730":1,"2731":1,"2894":1},"1":{"2731":1,"2732":1},"2":{"49":2,"75":1,"76":1,"84":1,"93":1,"114":1,"149":1,"176":1,"231":3,"232":1,"234":1,"249":1,"262":2,"272":1,"283":1,"293":2,"305":2,"314":2,"418":1,"459":1,"470":1,"491":1,"508":1,"524":1,"546":1,"547":1,"572":1,"646":1,"662":1,"671":1,"683":1,"718":1,"743":1,"749":1,"1289":1,"1313":1,"1348":1,"1366":1,"1630":1,"1632":1,"1838":1,"1840":1,"1847":1,"1928":1,"1929":1,"1958":1,"1996":1,"2019":1,"2021":1,"2024":2,"2050":1,"2058":1,"2060":1,"2070":1,"2212":1,"2253":1,"2260":1,"2287":1,"2324":2,"2371":1,"2398":1,"2403":1,"2409":1,"2411":2,"2464":1,"2465":1,"2468":1,"2509":2,"2510":7,"2515":8,"2583":2,"2587":1,"2594":1,"2605":1,"2646":1,"2651":1,"2662":1,"2685":1,"2710":1,"2727":1,"2730":1,"2731":1,"2732":3,"2735":1,"2746":1,"2750":1,"2802":1,"2811":1,"2877":1,"2882":1,"2894":1,"2908":1,"2909":1}}],["systick",{"0":{"11":1},"2":{"11":2}}],["symb",{"2":{"2779":1}}],["symbol",{"2":{"387":1,"1500":1,"2183":2,"2323":2,"2365":1,"2459":1,"2467":1,"2556":1}}],["symbolic",{"2":{"236":1,"1509":1}}],["symbols",{"0":{"1500":1,"1509":1,"2539":1,"2556":1},"1":{"2557":1,"2558":1},"2":{"176":2,"1504":2,"1510":1,"2322":1,"2411":1,"2514":1,"2539":1}}],["symmetric",{"2":{"1407":2,"2161":1}}],["symmetric70",{"2":{"114":1,"134":1}}],["symlink",{"0":{"508":1},"2":{"508":1,"509":1}}],["symlinks",{"2":{"459":1}}],["sym",{"2":{"94":1,"149":1,"199":1,"236":2,"1407":3,"1410":8,"2323":4,"2847":5}}],["synapse",{"2":{"241":2}}],["synth",{"2":{"1474":2}}],["synthesis",{"2":{"1474":1}}],["synthesis60",{"2":{"211":1}}],["syntaxwarning",{"2":{"249":1}}],["syntax",{"2":{"92":1,"176":1,"191":1,"285":1,"431":1,"1521":1,"2410":1,"2495":1,"2572":1,"2600":1,"2632":1,"2901":2}}],["synchronous",{"2":{"1985":1}}],["synchronizes",{"2":{"2269":1}}],["synchronized",{"2":{"920":1,"1091":1,"1125":1}}],["synchronization",{"0":{"920":1,"1091":1,"1125":1},"2":{"920":1,"1091":1,"1125":1,"2182":1,"2268":1,"2271":1,"2870":1}}],["synchronizing",{"2":{"568":1}}],["synced",{"2":{"1790":1,"2074":1,"2191":1}}],["syncs",{"2":{"568":2}}],["syncing",{"2":{"328":1,"2073":1,"2269":4}}],["sync",{"0":{"1637":1,"2269":1,"2270":1,"2628":1},"1":{"2629":1,"2630":1},"2":{"74":1,"107":1,"112":2,"114":4,"211":1,"222":1,"236":2,"249":2,"285":1,"333":1,"563":1,"568":3,"918":12,"920":5,"1089":12,"1091":5,"1123":12,"1125":5,"1168":2,"1443":1,"1637":1,"1790":1,"2018":1,"2073":1,"2074":1,"2189":1,"2191":1,"2268":3,"2269":1,"2270":16,"2625":1,"2630":1,"2873":1}}],["s7",{"2":{"67":4,"72":1}}],["schottky",{"2":{"2273":2}}],["school",{"2":{"2258":1,"2719":1}}],["scheikled",{"2":{"222":1}}],["schemes",{"2":{"692":1,"2839":2}}],["scheme",{"2":{"182":1,"2461":1,"2760":3,"2769":3}}],["schemas",{"2":{"191":1,"308":1,"338":1,"664":1,"666":1,"2844":1}}],["schematics",{"2":{"1368":1}}],["schematic",{"0":{"1564":1,"2461":1},"2":{"93":1,"1310":1,"1364":1,"1368":2}}],["schema",{"0":{"666":1,"2773":1},"2":{"76":2,"149":1,"176":3,"199":1,"222":1,"249":1,"266":2,"277":1,"308":1,"338":1,"664":1,"2721":1,"2844":1}}],["scheduled",{"2":{"395":1,"655":1,"658":1,"2757":1}}],["schedule",{"0":{"88":1,"104":1,"127":1,"170":1},"2":{"184":1}}],["score",{"2":{"2371":1,"2374":1}}],["scope",{"2":{"1958":1,"2242":1,"2728":1,"2929":1,"2930":1}}],["scottoalp",{"2":{"266":1}}],["scottostarter",{"2":{"217":2}}],["scottocmd",{"2":{"217":2}}],["scotto9",{"2":{"217":2}}],["scottokeebs",{"2":{"217":5}}],["scotto36",{"2":{"217":2}}],["scotto40",{"2":{"199":1,"217":2}}],["sck",{"2":{"1244":2,"1245":4,"1296":4,"2676":1,"2695":1,"2749":2}}],["scenario",{"2":{"312":1,"1326":1,"1328":1,"2293":1,"2459":1,"2549":1,"2569":1}}],["scenarios",{"2":{"263":1,"720":1,"2459":1,"2568":1,"2903":1}}],["scenes",{"2":{"198":1,"201":1,"213":1,"224":1,"238":1,"251":1,"2303":1}}],["science",{"2":{"199":1}}],["sclr",{"2":{"2246":1}}],["sclk",{"2":{"1998":2,"2010":2,"2013":2,"2016":3,"2476":1,"2478":1,"2480":2,"2482":1,"2484":2,"2486":2,"2488":1}}],["scll",{"2":{"767":1}}],["sclh",{"2":{"767":1}}],["scldel",{"2":{"767":1}}],["scln",{"2":{"176":1,"369":1,"587":2,"1587":1,"2309":1,"2505":1,"2515":1,"2553":1,"2911":1,"2912":1}}],["scl",{"2":{"176":1,"559":1,"764":3,"765":4,"826":1,"855":1,"887":1,"919":8,"954":8,"988":1,"1022":1,"1056":1,"1090":8,"1124":8,"1158":8,"1214":1,"1676":1,"2260":1,"2695":1}}],["sculpt",{"2":{"149":1,"160":1}}],["scythe",{"2":{"143":2}}],["scylla",{"2":{"114":1,"311":8,"317":1}}],["scary",{"2":{"2936":1}}],["scarlet",{"2":{"211":1}}],["scarletbandana",{"2":{"143":2}}],["scattered",{"2":{"2934":1}}],["scaling",{"0":{"876":1,"878":1,"882":1,"1079":1,"1081":1,"1085":1,"1113":1,"1115":1,"1119":1,"1147":1,"1149":1,"1153":1,"1181":1,"1183":1,"1187":1},"1":{"877":1,"879":1,"883":1,"1080":1,"1082":1,"1086":1,"1114":1,"1116":1,"1120":1,"1148":1,"1150":1,"1154":1,"1182":1,"1184":1,"1188":1},"2":{"176":1,"249":2,"728":2,"876":2,"877":3,"878":2,"879":1,"882":1,"1079":2,"1080":3,"1081":2,"1082":1,"1085":1,"1113":2,"1114":3,"1115":2,"1116":1,"1119":1,"1147":2,"1148":3,"1149":2,"1150":1,"1153":1,"1181":2,"1182":3,"1183":2,"1184":1,"1187":1,"1486":1,"1988":3,"2006":1}}],["scaled",{"2":{"1770":2,"2850":1,"2864":1,"2870":1,"2871":1}}],["scale8",{"2":{"308":1}}],["scale",{"2":{"176":1,"191":1,"199":1,"1484":5,"1486":1,"2012":1,"2064":1,"2722":1}}],["scancode",{"0":{"2833":1},"2":{"2463":2,"2464":1}}],["scancodes",{"2":{"1354":1,"2463":2,"2553":1,"2839":1}}],["scans",{"2":{"1407":2,"1421":1}}],["scanned",{"2":{"698":1,"1326":1,"1328":1,"2459":10}}],["scanning",{"0":{"641":1,"2929":1},"1":{"642":1,"643":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"49":1,"134":1,"266":1,"572":1,"620":1,"622":2,"623":3,"641":1,"643":1,"716":1,"717":1,"1407":4,"1675":1,"2262":1,"2411":1,"2459":1,"2702":1,"2757":1,"2787":1,"2865":2,"2928":1,"2929":4,"2930":2,"2932":2}}],["scanf",{"2":{"390":1}}],["scan",{"0":{"642":1,"643":1,"1328":1},"2":{"31":1,"65":1,"93":2,"112":1,"113":1,"114":1,"149":2,"176":2,"196":1,"199":2,"214":1,"277":1,"333":1,"622":1,"623":5,"643":3,"644":2,"645":1,"684":1,"1328":7,"1407":2,"1410":1,"1411":1,"1466":1,"1585":5,"1675":2,"1943":1,"2012":1,"2268":1,"2269":1,"2281":1,"2291":1,"2377":1,"2384":1,"2441":1,"2462":1,"2553":1,"2931":1,"2932":3}}],["sc",{"2":{"55":11,"2249":7,"2250":7,"2252":1,"2253":1,"2543":7}}],["scratch",{"2":{"2410":1,"2651":1}}],["scr",{"2":{"1939":1,"2277":1}}],["scrutiny",{"2":{"408":1}}],["scrl",{"2":{"369":1,"587":2,"1351":1,"2506":1,"2515":1,"2554":1}}],["scrollwheel",{"2":{"1988":1}}],["scrolls",{"2":{"1943":1}}],["scroll",{"0":{"1990":1,"1992":1,"2024":2,"2025":1},"2":{"175":1,"176":3,"188":1,"191":1,"199":1,"222":1,"236":2,"308":1,"568":1,"1687":1,"1790":1,"1791":2,"1793":1,"1924":1,"1928":5,"1929":3,"1931":13,"1932":1,"1939":1,"1942":2,"1943":3,"1948":7,"1988":3,"1990":15,"1992":1,"2003":3,"2006":1,"2008":5,"2009":3,"2016":3,"2017":11,"2023":1,"2024":4,"2025":25,"2028":1,"2277":1,"2280":1,"2506":4,"2515":4,"2860":2,"2928":1}}],["scrolling",{"0":{"2017":1},"2":{"48":1,"175":1,"308":1,"1487":1,"1843":6,"1928":2,"1929":4,"1930":1,"1931":1,"1937":4,"1942":1,"1948":17,"1988":1,"1990":2,"2003":1,"2017":8,"2021":2,"2023":1,"2024":5,"2025":18,"2026":1,"2027":8,"2028":1,"2063":9}}],["screw",{"2":{"114":1}}],["screens",{"2":{"649":1,"1948":1,"2451":1}}],["screen",{"0":{"1746":1},"2":{"34":1,"153":1,"568":1,"1487":1,"1642":1,"1688":1,"1746":1,"1933":1,"1940":1,"1941":1,"1943":3,"1947":2,"1948":12,"1949":1,"2269":2,"2278":1,"2279":1,"2281":1,"2283":11,"2509":2,"2515":2,"2580":1,"2652":1,"2655":1,"2750":11}}],["script",{"2":{"94":1,"114":2,"134":1,"149":3,"191":1,"199":1,"277":1,"285":1,"312":1,"391":2,"485":1,"487":2,"508":1,"509":1,"682":1,"1315":1,"2384":1,"2400":1,"2619":1}}],["scripts",{"2":{"10":1,"211":1,"312":1,"391":2}}],["shcurl",{"2":{"2616":1,"2618":1,"2619":1}}],["shcd",{"2":{"1628":1,"2585":1,"2586":1}}],["shqmk",{"2":{"1385":1,"1521":1,"2576":2,"2577":2,"2580":2,"2587":1,"2589":1,"2609":2,"2621":4,"2622":2}}],["sheer",{"2":{"2895":1}}],["sheet",{"2":{"713":2,"718":2,"1477":1}}],["shenzhen",{"2":{"2567":1}}],["she",{"2":{"1667":1}}],["shell",{"2":{"116":1,"176":1,"249":1,"430":2,"485":1,"2162":1,"2404":1,"2662":1}}],["shade",{"2":{"2748":4}}],["shades",{"2":{"2064":1}}],["shall",{"2":{"2302":1,"2721":1}}],["shapes",{"2":{"2790":1}}],["shaped",{"2":{"2271":1}}],["shapped",{"2":{"2063":1}}],["sha",{"2":{"586":2}}],["sha1",{"2":{"405":1}}],["shandoncodes",{"2":{"241":5,"249":1}}],["shark",{"2":{"2567":1}}],["sharkropad",{"2":{"328":1}}],["sharp2",{"2":{"1680":12}}],["sharp1",{"2":{"1680":12}}],["sharp",{"2":{"1680":8,"1919":30,"2414":1,"2532":30}}],["sharing",{"0":{"1434":1},"1":{"1435":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1},"2":{"107":1,"1340":1,"1630":1,"1664":1,"2713":1}}],["shares",{"2":{"1586":1,"2727":1}}],["share",{"2":{"63":1,"472":1,"1340":1,"1433":1,"1434":1,"1438":1,"1656":1,"1664":2,"1665":1,"2435":1,"2566":1,"2664":1,"2740":1}}],["shared",{"0":{"2676":1},"2":{"30":1,"33":1,"50":1,"107":1,"112":2,"114":1,"138":1,"160":1,"190":1,"191":1,"262":1,"559":1,"573":2,"690":1,"1435":1,"1443":1,"1847":1,"1935":1,"2020":2,"2070":1,"2181":1,"2435":1,"2674":1,"2676":4,"2684":2,"2727":1,"2875":3}}],["shutdown",{"0":{"229":1,"649":1,"650":1,"651":1,"652":1},"1":{"650":1,"651":1,"652":1},"2":{"229":6,"230":1,"236":2,"249":1,"266":1,"277":1,"288":1,"333":1,"649":3,"650":2,"651":1,"652":2,"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1626":1,"1638":3,"1942":1}}],["sh1107",{"2":{"210":1,"294":1,"1937":4,"1939":1,"1943":1,"1946":1,"1947":3,"1948":1}}],["sh1106",{"2":{"153":1,"232":2,"1937":2,"1939":1,"1943":2,"1947":2,"1948":1,"2746":6,"2749":16}}],["shpkg",{"2":{"2620":1}}],["shpython3",{"2":{"158":1}}],["shpacman",{"2":{"158":1}}],["shbrew",{"2":{"158":1}}],["sh",{"2":{"114":1,"199":1,"423":1,"507":1,"508":3,"509":1,"1315":1,"1680":10,"2297":10,"2400":7,"2544":8,"2588":1,"2594":1,"2616":1,"2617":1,"2618":1,"2619":1}}],["shine",{"2":{"2798":1,"2838":1}}],["shiny",{"2":{"2420":1,"2421":1}}],["ships",{"2":{"2567":1}}],["shipping",{"2":{"2450":2}}],["shipped",{"2":{"682":1,"2491":1,"2568":1,"2571":1,"2721":1,"2735":1}}],["ship",{"2":{"1200":1,"1201":1,"2569":1}}],["shisaku",{"2":{"211":1}}],["shield",{"2":{"113":1,"114":1}}],["shifting",{"2":{"1493":2,"1513":1,"1594":1}}],["shifter",{"0":{"1295":1},"2":{"333":2,"637":1,"1294":1,"1295":1}}],["shifted",{"0":{"1511":1,"2539":1,"2556":1},"1":{"2557":1,"2558":1},"2":{"176":1,"188":1,"191":2,"249":1,"266":1,"746":2,"1490":1,"1492":3,"1493":3,"1497":3,"1504":5,"1511":12,"1512":3,"1516":1,"1527":1,"1587":2,"1594":2,"1667":1,"1735":1,"2063":1,"2160":2,"2165":1,"2539":1,"2556":1,"2562":1,"2918":1}}],["shift+option",{"2":{"2515":1}}],["shift+v",{"2":{"1618":1}}],["shift+s",{"2":{"1591":1}}],["shift+a",{"2":{"1591":2}}],["shift+escape",{"2":{"683":1}}],["shift+b",{"2":{"683":1}}],["shift+right",{"2":{"683":3,"1618":2}}],["shift+click",{"2":{"320":1,"2919":1}}],["shift+2",{"2":{"99":1}}],["shifts",{"2":{"134":2,"1378":2,"1587":1,"1588":4,"1589":2,"1913":1,"2063":4,"2854":1}}],["shift",{"0":{"1378":1,"1490":2,"1491":1,"1493":1,"1494":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1512":1,"1513":1,"1514":1,"1591":1,"2518":1,"2834":1,"2918":1},"1":{"1491":2,"1492":2,"1493":2,"1494":2,"1495":2,"1496":2,"1497":3,"1498":3,"1499":3,"1500":3,"1501":3,"1502":3,"1503":3,"1504":3,"1505":3,"1506":3,"1507":3,"1508":3,"1509":3,"1510":3,"1511":2,"1512":2,"1513":3,"1514":2,"1515":3,"1516":3,"1517":3},"2":{"49":1,"63":1,"99":1,"114":1,"134":4,"152":4,"176":1,"188":1,"191":1,"211":3,"222":2,"236":2,"255":1,"257":1,"258":1,"259":2,"347":1,"559":1,"603":1,"683":1,"763":2,"1349":1,"1359":9,"1365":1,"1374":14,"1375":11,"1378":7,"1417":2,"1443":4,"1455":2,"1461":1,"1490":1,"1491":2,"1492":10,"1493":5,"1494":1,"1495":4,"1496":3,"1497":7,"1498":1,"1499":2,"1500":1,"1501":1,"1502":1,"1503":1,"1504":10,"1506":1,"1510":1,"1511":7,"1512":9,"1513":3,"1514":1,"1515":12,"1516":4,"1517":1,"1523":1,"1526":2,"1527":3,"1587":2,"1588":9,"1589":4,"1591":10,"1594":3,"1599":1,"1611":1,"1618":1,"1619":1,"1666":1,"1667":1,"1668":1,"1670":2,"1684":1,"1732":2,"1735":1,"1736":2,"1737":1,"1744":2,"1746":5,"1747":2,"1754":1,"1755":2,"1756":6,"1758":1,"1765":1,"1943":1,"2156":3,"2159":2,"2160":5,"2165":4,"2181":10,"2248":4,"2249":6,"2250":6,"2251":1,"2253":4,"2281":1,"2311":1,"2323":1,"2325":1,"2344":1,"2445":1,"2507":4,"2515":4,"2516":2,"2518":13,"2524":1,"2534":16,"2535":14,"2537":10,"2540":14,"2543":6,"2545":1,"2556":1,"2557":1,"2559":20,"2560":2,"2605":2,"2643":4,"2644":14,"2645":4,"2666":4,"2745":2,"2824":1,"2834":3,"2854":6,"2862":1,"2900":1,"2904":6,"2905":3,"2910":2,"2914":2,"2917":1,"2918":3,"2919":2,"2933":1,"2938":2}}],["shore",{"2":{"2934":1}}],["shorting",{"2":{"2427":1,"2683":1}}],["shorts",{"2":{"2418":1,"2420":1}}],["shortcuts",{"0":{"2162":1},"2":{"1452":1,"1454":1,"1736":1,"1737":1,"1757":2,"1758":1,"2162":1,"2170":1,"2324":1,"2467":1,"2556":1,"2559":1,"2917":1}}],["shortcut",{"2":{"1377":1,"1378":1,"1669":2,"1939":1,"2240":1,"2241":1,"2277":1,"2284":1,"2613":1,"2830":1}}],["shortly",{"2":{"632":1,"1756":1,"2293":1}}],["shortest",{"2":{"1497":1}}],["shorted",{"2":{"567":1,"2683":1}}],["shorter",{"2":{"524":1,"1283":1,"1656":1,"1930":1,"2584":1}}],["shortened",{"2":{"202":1,"2805":1,"2861":1}}],["shorten",{"2":{"149":1,"1412":1}}],["shorthands",{"2":{"2067":1,"2205":1}}],["shorthand",{"2":{"199":1,"2632":1,"2787":1}}],["shortages",{"2":{"172":1}}],["short",{"2":{"114":1,"123":1,"134":1,"266":1,"297":1,"529":1,"533":1,"535":1,"548":1,"597":1,"611":2,"613":1,"673":1,"674":1,"676":1,"717":2,"769":1,"1309":1,"1332":1,"1406":1,"1492":1,"1588":1,"1603":2,"1680":16,"1756":3,"1760":1,"1805":1,"1951":1,"2157":2,"2258":2,"2312":1,"2376":1,"2379":1,"2381":1,"2382":1,"2384":1,"2386":1,"2388":1,"2391":1,"2418":1,"2422":1,"2423":1,"2426":1,"2427":1,"2605":1,"2643":1,"2683":1,"2684":1,"2799":1,"2849":1,"2861":1,"2911":1,"2913":1}}],["shop",{"2":{"2483":1,"2888":1}}],["shooting",{"2":{"2427":1}}],["shot",{"0":{"1349":1,"1382":1,"2540":1,"2643":1,"2867":1},"1":{"2644":1,"2645":1},"2":{"93":1,"160":2,"188":1,"191":1,"194":1,"199":1,"231":1,"560":1,"562":1,"1349":1,"1375":11,"1382":1,"1416":1,"1527":3,"1588":2,"1591":2,"1735":2,"1759":1,"2030":2,"2031":1,"2297":1,"2540":7,"2544":1,"2643":8,"2644":10,"2645":7,"2867":1,"2900":2,"2908":1,"2910":1,"2941":1}}],["showcasing",{"2":{"2721":1}}],["showed",{"2":{"1517":1}}],["shows",{"2":{"356":1,"371":1,"473":1,"580":1,"581":1,"613":1,"1424":1,"1425":1,"1744":1,"1749":1,"2410":2,"2685":1,"2702":1}}],["shown",{"2":{"134":1,"156":1,"563":1,"692":1,"731":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1200":1,"1201":1,"1216":1,"1343":1,"1699":1,"1703":1,"1707":1,"1739":1,"2192":1,"2288":1,"2289":1,"2416":2,"2768":1,"2878":1,"2901":1,"2908":1,"2916":1}}],["show",{"2":{"83":1,"114":1,"119":1,"176":1,"230":1,"254":1,"285":1,"432":4,"435":4,"450":1,"451":1,"452":1,"453":2,"458":1,"459":1,"467":1,"490":1,"645":1,"1310":1,"1362":1,"1695":1,"1699":1,"1703":1,"2026":1,"2188":1,"2291":1,"2410":2,"2449":1,"2459":2,"2557":1,"2560":1,"2620":1,"2627":1,"2662":1,"2702":1,"2710":1,"2748":3}}],["showing",{"2":{"70":1,"77":1,"312":1,"563":1,"1310":1,"1406":1,"2188":1,"2646":1,"2657":1,"2793":1}}],["shouldn",{"2":{"558":1,"632":1,"1362":1,"1520":1,"1950":1,"2268":1,"2421":1,"2721":1}}],["should",{"2":{"3":1,"6":1,"10":2,"11":1,"15":1,"17":1,"49":1,"70":1,"103":1,"125":1,"126":1,"131":2,"156":1,"157":2,"167":1,"182":1,"185":2,"194":1,"198":1,"201":7,"206":1,"234":1,"236":1,"240":1,"245":1,"249":1,"254":1,"268":1,"271":1,"275":1,"279":1,"304":2,"317":1,"332":1,"334":1,"338":3,"347":1,"359":1,"362":1,"371":3,"375":1,"377":1,"380":1,"388":2,"390":1,"392":1,"397":3,"420":1,"424":1,"463":1,"467":1,"489":2,"491":2,"492":3,"498":1,"504":1,"520":1,"524":2,"527":1,"529":1,"533":2,"535":1,"539":1,"540":1,"543":1,"545":1,"549":1,"555":1,"574":1,"586":6,"587":1,"612":1,"613":3,"615":1,"616":1,"617":5,"625":2,"628":1,"630":1,"631":1,"637":3,"638":1,"641":1,"642":1,"643":1,"645":1,"654":1,"655":2,"657":1,"666":1,"672":1,"673":1,"676":1,"677":2,"683":1,"684":2,"685":1,"703":1,"717":2,"735":1,"751":1,"753":1,"759":1,"763":1,"794":1,"806":1,"832":1,"864":1,"894":1,"929":1,"963":1,"997":1,"1031":1,"1065":1,"1099":1,"1133":1,"1167":1,"1189":1,"1196":1,"1200":1,"1201":1,"1220":1,"1245":1,"1302":1,"1310":1,"1311":1,"1312":1,"1316":1,"1317":2,"1333":2,"1341":1,"1346":1,"1359":1,"1367":1,"1404":3,"1407":1,"1413":1,"1420":2,"1427":1,"1429":1,"1432":1,"1437":1,"1438":1,"1443":2,"1450":1,"1474":1,"1477":1,"1485":1,"1497":1,"1504":1,"1516":1,"1521":1,"1526":1,"1527":2,"1550":1,"1562":1,"1587":1,"1589":1,"1594":3,"1606":3,"1607":3,"1621":1,"1624":3,"1633":1,"1634":1,"1655":1,"1656":1,"1661":1,"1663":2,"1698":1,"1751":1,"1770":1,"1791":1,"1838":1,"1943":1,"2015":1,"2018":1,"2039":2,"2040":1,"2043":1,"2046":1,"2051":1,"2058":1,"2171":1,"2177":1,"2179":1,"2181":1,"2184":1,"2258":1,"2260":1,"2268":1,"2270":2,"2290":1,"2291":1,"2293":1,"2303":1,"2310":1,"2389":1,"2410":2,"2421":4,"2424":1,"2425":1,"2427":2,"2435":2,"2436":3,"2437":1,"2438":4,"2439":1,"2441":3,"2442":1,"2445":1,"2446":1,"2449":3,"2459":3,"2478":1,"2480":1,"2482":1,"2494":1,"2495":2,"2497":1,"2501":2,"2555":1,"2566":1,"2567":2,"2569":2,"2577":1,"2580":1,"2582":1,"2583":1,"2605":1,"2612":1,"2615":1,"2622":2,"2630":1,"2632":1,"2660":2,"2662":1,"2667":4,"2671":1,"2675":3,"2677":3,"2684":1,"2704":1,"2705":1,"2707":1,"2710":2,"2711":1,"2713":1,"2716":1,"2719":4,"2720":3,"2721":19,"2722":8,"2725":1,"2747":1,"2749":2,"2750":6,"2765":1,"2769":2,"2771":1,"2773":1,"2778":1,"2853":1,"2862":3,"2865":1,"2875":2,"2882":1,"2901":1,"2915":1,"2923":2,"2925":1,"2936":2,"2939":1,"2942":1}}],["sadly",{"2":{"2621":1}}],["sabayon",{"2":{"2594":1}}],["sasha",{"2":{"2418":1,"2429":1}}],["said",{"2":{"1454":1,"2567":3}}],["saikoutype",{"2":{"249":1}}],["sag",{"2":{"1375":1}}],["sa",{"2":{"1375":1,"1746":2}}],["salt",{"2":{"2383":1}}],["sall",{"2":{"2246":1}}],["salad",{"2":{"1362":1}}],["salicylic",{"2":{"143":13,"149":2,"211":1,"308":1}}],["sake",{"2":{"1344":1}}],["sanitisation",{"2":{"1526":1}}],["sanitise",{"2":{"1526":1}}],["sane",{"2":{"716":2}}],["sango",{"2":{"249":1}}],["sacrifices",{"2":{"716":1}}],["says",{"2":{"2403":1,"2567":3,"2605":1,"2936":1}}],["saying",{"2":{"602":1,"2621":1}}],["say",{"2":{"594":1,"1375":1,"1732":1,"1845":1,"2068":1,"2252":1,"2253":1,"2293":1,"2412":1,"2615":1,"2784":1,"2929":1}}],["sawnsprojects",{"2":{"211":2,"249":1}}],["sauce",{"2":{"211":1}}],["saevus",{"2":{"211":1,"281":2,"285":1}}],["safemode",{"2":{"2495":1}}],["safest",{"2":{"1662":1}}],["safety",{"0":{"1362":1,"2307":1},"2":{"2268":1,"2307":1}}],["safe",{"2":{"199":1,"229":2,"294":1,"591":1,"614":1,"627":3,"1443":5,"1450":3,"1466":1,"1918":1,"1956":1,"2024":1,"2025":1,"2044":1,"2162":1,"2170":1,"2600":2,"2743":1,"2901":1}}],["safely",{"2":{"31":1,"34":1,"240":1,"644":1,"1941":1,"2279":1,"2496":1,"2621":1,"2633":1}}],["savage65",{"2":{"308":1}}],["saves",{"2":{"2006":1,"2021":1,"2633":2}}],["save",{"0":{"598":1},"2":{"249":1,"285":2,"497":1,"560":1,"598":1,"646":1,"1413":1,"1442":1,"1487":1,"1532":1,"1603":1,"1736":1,"2186":1,"2268":1,"2425":1,"2497":1,"2592":2,"2599":1,"2600":1,"2612":2,"2627":1,"2629":1,"2633":1,"2660":1,"2665":1,"2882":1,"2886":1}}],["saved",{"2":{"131":1,"450":1,"451":1,"1317":1,"1413":1,"1583":1}}],["saving",{"2":{"131":1,"134":1,"639":3,"663":1,"2788":1}}],["savings",{"2":{"25":1,"2882":1}}],["sata",{"2":{"2258":1}}],["satan",{"2":{"427":3,"2608":1}}],["satisfied",{"2":{"598":1,"2901":1,"2902":1}}],["satisfaction75",{"2":{"134":2,"199":1,"249":1}}],["satu",{"2":{"587":2,"1661":1,"2062":1,"2181":1,"2537":1,"2538":1}}],["saturation",{"2":{"111":1,"114":1,"563":1,"2062":4,"2063":6,"2069":2,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2180":2,"2181":6,"2182":2,"2201":8,"2537":6,"2538":4,"2750":2,"2770":1,"2870":2,"2871":2}}],["satd",{"2":{"587":2,"1661":1,"2062":1,"2181":1,"2537":1,"2538":1}}],["satellite",{"2":{"191":1,"211":1}}],["satt99",{"2":{"149":1}}],["satt",{"2":{"143":1,"149":1,"176":1}}],["sat",{"0":{"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2201":1},"1":{"2110":1},"2":{"49":1,"183":2,"222":3,"348":1,"371":2,"563":1,"2063":12,"2069":2,"2182":2,"2186":1,"2201":4,"2204":2,"2439":2,"2750":11,"2870":1,"2871":2,"2887":3}}],["sampling",{"2":{"149":1,"698":2,"721":1,"1535":1,"2372":1,"2851":1}}],["sampled",{"2":{"1407":1}}],["samples",{"2":{"716":2,"1474":1,"1482":1,"1537":1,"1770":1,"2569":1}}],["sample",{"2":{"31":1,"176":1,"222":1,"716":6,"717":4,"725":1,"1249":4,"1474":6,"1482":4,"1496":1,"1520":1,"1537":1,"1540":1,"1783":1,"1985":1,"1988":3,"2372":6,"2465":1,"2851":1}}],["same",{"2":{"27":1,"45":2,"73":1,"157":1,"166":1,"169":1,"222":1,"234":1,"235":1,"289":1,"307":2,"335":1,"369":1,"520":2,"529":1,"553":1,"568":2,"579":1,"586":2,"597":1,"598":1,"603":1,"625":1,"654":1,"657":1,"664":1,"685":1,"692":1,"719":1,"750":1,"753":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1197":1,"1216":1,"1283":1,"1335":2,"1350":1,"1358":1,"1359":1,"1375":1,"1385":1,"1407":1,"1419":1,"1422":1,"1433":2,"1434":1,"1435":1,"1436":2,"1437":1,"1441":1,"1446":1,"1495":1,"1527":1,"1532":3,"1552":2,"1589":1,"1599":1,"1602":1,"1605":1,"1606":3,"1613":2,"1616":2,"1624":1,"1635":1,"1636":1,"1656":1,"1664":1,"1757":1,"1804":1,"1838":1,"1840":1,"1843":4,"1928":1,"1929":1,"1933":3,"1934":1,"1947":1,"1989":1,"1993":1,"2014":3,"2031":1,"2050":1,"2058":1,"2060":1,"2063":5,"2161":3,"2191":1,"2206":1,"2251":1,"2254":1,"2271":1,"2287":1,"2296":1,"2302":2,"2303":2,"2310":1,"2323":1,"2377":1,"2384":1,"2389":1,"2398":1,"2400":1,"2410":1,"2417":1,"2420":1,"2421":1,"2435":2,"2438":1,"2439":1,"2449":1,"2456":1,"2492":1,"2551":1,"2567":2,"2583":1,"2587":2,"2603":1,"2605":1,"2615":1,"2626":2,"2627":1,"2630":1,"2631":1,"2670":1,"2702":1,"2704":3,"2706":1,"2713":1,"2719":1,"2721":4,"2727":1,"2729":1,"2734":1,"2747":1,"2748":4,"2749":2,"2763":1,"2778":1,"2788":1,"2836":1,"2862":1,"2883":1,"2908":1,"2914":3,"2915":3,"2919":1,"2928":1,"2937":1,"2941":1}}],["sprintf",{"2":{"2882":2,"2886":2}}],["springgreen",{"2":{"2067":2,"2205":2}}],["spring",{"2":{"1679":1}}],["springs",{"2":{"1679":1}}],["spread",{"2":{"2064":2,"2474":1}}],["spreads",{"2":{"2064":1}}],["spruce",{"2":{"222":1}}],["splash",{"2":{"1843":3,"2063":6,"2887":2}}],["splaytoraid",{"2":{"266":1,"322":4,"328":1}}],["spleeb",{"2":{"317":1}}],["splicing",{"2":{"1480":1}}],["splinky",{"2":{"176":1,"311":13,"2699":1}}],["splitography",{"2":{"2287":1}}],["splitting",{"0":{"410":1}}],["splitty",{"2":{"253":2}}],["split75",{"2":{"159":2}}],["splitreus62",{"2":{"143":2}}],["splitkb",{"2":{"102":1,"114":1,"134":2,"211":1,"222":1,"277":1}}],["split",{"0":{"30":1,"32":1,"35":1,"80":1,"107":1,"138":1,"565":1,"1584":1,"1637":1,"1660":1,"2018":1,"2020":1,"2026":1,"2254":1,"2419":1,"2697":1,"2873":1},"1":{"31":1,"36":1,"566":1,"567":1,"568":1,"2027":1,"2028":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2260":1,"2261":1,"2262":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2268":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1},"2":{"30":3,"32":2,"45":3,"65":2,"70":28,"74":3,"80":1,"92":2,"93":4,"94":1,"107":7,"111":1,"112":10,"114":13,"134":4,"138":1,"143":8,"149":10,"160":3,"175":1,"176":15,"191":7,"199":3,"211":7,"222":9,"236":5,"249":4,"253":2,"259":5,"260":2,"266":8,"270":2,"277":11,"285":2,"300":1,"308":3,"332":1,"333":1,"559":1,"563":6,"565":5,"566":8,"567":7,"568":26,"572":5,"668":2,"1189":2,"1194":2,"1195":1,"1202":1,"1389":1,"1390":1,"1392":2,"1394":1,"1411":1,"1427":1,"1433":3,"1486":1,"1584":3,"1620":1,"1637":1,"1660":3,"1790":2,"1846":3,"1942":2,"1943":1,"2006":1,"2009":1,"2014":1,"2016":1,"2018":1,"2020":1,"2026":1,"2045":1,"2069":3,"2073":2,"2074":2,"2179":2,"2182":2,"2189":4,"2191":2,"2207":1,"2254":4,"2258":2,"2261":1,"2262":2,"2264":1,"2265":3,"2266":10,"2267":1,"2268":5,"2269":21,"2270":4,"2271":14,"2272":3,"2273":2,"2274":2,"2280":2,"2298":1,"2371":1,"2378":3,"2380":3,"2387":3,"2392":2,"2394":2,"2396":2,"2411":9,"2419":2,"2451":1,"2513":2,"2531":2,"2697":1,"2714":1,"2721":1,"2722":1,"2845":1,"2864":2,"2870":4,"2871":2,"2873":5,"2915":1,"2925":1}}],["splits",{"2":{"18":1,"35":1,"114":1}}],["sponge",{"2":{"2420":1}}],["spots",{"2":{"603":1}}],["spot",{"2":{"251":1,"597":2,"649":1,"2554":1}}],["spooky",{"2":{"176":1}}],["sp111",{"2":{"211":1}}],["spc",{"2":{"195":1,"266":1,"369":2,"587":2,"1587":1,"1616":2,"2302":3,"2505":1,"2515":1,"2553":2,"2899":1,"2901":1,"2910":1,"2911":1,"2912":2,"2917":4}}],["spdu",{"2":{"1661":1,"1842":1,"2062":1,"2065":1,"2181":1,"2530":1,"2537":1,"2538":1}}],["spdd",{"2":{"1661":1,"1842":1,"2062":1,"2065":1,"2181":1,"2530":1,"2537":1,"2538":1}}],["spdx",{"2":{"1630":1,"2725":2}}],["spd",{"2":{"183":4,"222":1,"1846":2,"2069":2,"2182":1}}],["spacing",{"2":{"2600":1,"2720":1}}],["space+b",{"2":{"683":1}}],["spaces",{"0":{"603":1},"2":{"348":1,"473":1,"520":2,"522":1,"576":1,"578":1,"584":2,"2271":1,"2713":1,"2720":1,"2889":1,"2930":1}}],["spacebars",{"2":{"259":1}}],["spacebar",{"2":{"259":1,"2505":1,"2515":1,"2605":1}}],["spacey",{"0":{"255":1},"2":{"241":2,"255":1,"266":1}}],["spaceholdings",{"2":{"143":3,"149":2,"253":2,"266":1}}],["space",{"0":{"123":1,"2248":1,"2543":1,"2834":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2253":1},"2":{"49":2,"123":1,"124":3,"134":1,"143":8,"166":1,"176":3,"188":1,"189":1,"191":2,"203":1,"211":2,"249":1,"255":1,"259":1,"260":1,"510":1,"587":1,"603":2,"669":1,"717":1,"1417":1,"1442":1,"1484":1,"1487":1,"1522":1,"1532":1,"1587":1,"1588":1,"1656":1,"1686":1,"1736":1,"2184":1,"2248":1,"2250":7,"2251":1,"2252":3,"2253":3,"2290":1,"2302":2,"2323":1,"2338":1,"2372":1,"2374":1,"2505":1,"2515":1,"2543":8,"2560":1,"2591":1,"2672":1,"2727":1,"2751":1,"2834":1,"2879":1,"2886":2,"2887":1,"2912":1,"2924":1,"2933":1}}],["spaceman",{"2":{"37":4}}],["span",{"2":{"2050":1}}],["spanish",{"2":{"176":1,"249":1,"1587":1,"2880":9}}],["spamming",{"2":{"222":1,"2942":1}}],["sparse",{"2":{"328":1}}],["spare",{"2":{"218":1,"1467":1}}],["sparkfun",{"0":{"271":1,"1391":1,"2483":1},"1":{"2484":1},"2":{"163":1,"176":1,"271":3,"277":1,"511":1,"746":3,"1386":1,"1388":3,"2367":2,"2477":1,"2479":1,"2483":3,"2492":4,"2695":2,"2888":1}}],["sp",{"2":{"134":1,"211":1}}],["spi0",{"2":{"2691":2}}],["spiral",{"2":{"1843":4,"2063":12,"2887":3}}],["spid0",{"2":{"2691":1,"2695":1}}],["spid2",{"2":{"1245":2}}],["spid1",{"2":{"1245":1,"1296":1,"2691":1}}],["spiderisland",{"2":{"143":1}}],["spidey3",{"2":{"74":1,"176":1,"191":1}}],["spi3",{"2":{"1245":1}}],["spi2",{"2":{"1245":4}}],["spi1",{"2":{"1245":2,"1296":2,"2691":2}}],["spinning",{"2":{"1843":3,"2063":9}}],["spins",{"2":{"1678":1}}],["spin",{"2":{"176":1}}],["spi",{"0":{"747":1,"752":1,"756":1,"1242":1,"1247":1,"1248":1,"1251":2,"1254":2,"1256":2,"1259":2,"1262":1,"1291":1,"1296":1,"1945":1,"2368":1,"2691":1},"1":{"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":2,"1250":2,"1251":1,"1252":3,"1253":3,"1254":1,"1255":3,"1256":1,"1257":3,"1258":3,"1259":1,"1260":3,"1261":3,"1262":1,"1297":1,"1298":1},"2":{"93":1,"114":2,"118":2,"134":1,"149":2,"174":1,"176":9,"210":1,"232":1,"234":4,"236":5,"277":2,"285":1,"294":1,"308":1,"317":3,"726":1,"727":1,"728":4,"730":1,"743":3,"747":9,"750":2,"752":2,"755":1,"756":6,"1242":1,"1243":3,"1244":3,"1245":23,"1247":1,"1248":1,"1249":4,"1250":1,"1251":1,"1253":2,"1254":1,"1255":1,"1256":1,"1258":3,"1259":1,"1261":3,"1262":2,"1286":1,"1291":4,"1296":12,"1297":2,"1298":1,"1937":1,"1939":2,"1945":4,"1999":8,"2005":2,"2006":9,"2011":2,"2014":4,"2276":1,"2281":2,"2367":3,"2368":5,"2424":1,"2676":3,"2682":1,"2685":2,"2688":1,"2691":4,"2695":6,"2698":1,"2719":1,"2746":25,"2749":71,"2857":2,"2876":2}}],["spent",{"2":{"2929":1}}],["spend",{"2":{"173":1,"1519":1,"2724":1}}],["speaks",{"2":{"2287":1}}],["speak",{"2":{"2287":2}}],["speakers",{"2":{"712":1,"713":1,"1478":1}}],["speaker",{"2":{"712":3,"1467":1,"1468":3,"1469":1,"1471":2,"1475":1,"1477":1,"1478":1,"1480":5,"2214":1,"2377":2,"2384":2,"2682":1,"2684":2,"2849":3,"2869":2}}],["spelled",{"2":{"1522":1}}],["spelling",{"2":{"49":1,"92":1,"1452":2,"2284":1}}],["speculatively",{"2":{"320":1,"2919":2}}],["speculative",{"0":{"320":1,"2919":1},"2":{"320":5,"328":2,"2919":10}}],["specially",{"2":{"2168":1}}],["specialization",{"2":{"1638":1}}],["specializations",{"2":{"1638":1}}],["specialized",{"2":{"1288":1,"2494":1}}],["special",{"0":{"1352":1,"1366":1,"1498":1,"1510":1,"2512":1},"2":{"222":1,"480":1,"489":1,"562":1,"624":1,"644":1,"682":1,"769":1,"1244":1,"1265":1,"1280":1,"1416":1,"1467":1,"1484":1,"1496":1,"1497":2,"1498":1,"1499":1,"1504":1,"1521":1,"1526":1,"1612":1,"1735":1,"1849":1,"2023":1,"2072":1,"2178":1,"2213":1,"2290":1,"2323":1,"2424":1,"2477":1,"2481":1,"2548":1,"2553":1,"2605":2,"2673":1,"2721":1,"2744":1,"2779":1,"2800":1,"2834":1,"2899":1,"2901":1}}],["specifying",{"2":{"76":1,"87":1,"103":1,"118":1,"126":1,"166":1,"170":2,"211":1,"246":1,"247":1,"335":1,"471":1,"541":1,"751":2,"1417":2,"1460":1,"2400":1,"2609":1,"2748":1}}],["specify",{"2":{"55":1,"87":1,"134":1,"169":1,"184":1,"201":1,"234":1,"369":1,"428":1,"475":1,"487":1,"541":1,"562":1,"568":2,"570":1,"668":1,"1197":1,"1204":1,"1362":1,"1413":1,"1430":1,"1521":1,"1583":2,"1614":1,"1630":1,"1660":1,"1675":1,"1798":1,"1946":1,"1996":1,"2002":2,"2191":1,"2206":1,"2271":3,"2301":1,"2302":1,"2410":1,"2411":1,"2412":1,"2495":1,"2577":1,"2580":1,"2609":1,"2632":1,"2684":1,"2693":1,"2711":1,"2712":1,"2748":7,"2766":1,"2912":1,"2915":2,"2942":1}}],["specifiers",{"2":{"2882":1}}],["specifies",{"2":{"1407":1,"1743":1,"1746":1,"2012":1,"2410":1,"2721":1,"2769":2,"2844":1}}],["specified",{"0":{"141":1},"2":{"49":1,"58":1,"70":14,"109":1,"149":1,"184":1,"302":1,"428":2,"440":1,"441":1,"457":1,"468":1,"563":1,"570":2,"653":1,"695":2,"696":3,"746":2,"747":1,"756":5,"1289":1,"1407":1,"1422":12,"1448":1,"1452":1,"1634":1,"1660":1,"1705":1,"1740":1,"1844":1,"1948":1,"2066":1,"2160":1,"2191":2,"2264":1,"2283":1,"2293":1,"2302":2,"2324":1,"2372":2,"2393":1,"2395":1,"2397":1,"2410":6,"2435":1,"2439":1,"2495":1,"2557":1,"2560":2,"2609":2,"2621":1,"2645":1,"2667":2,"2712":1,"2713":1,"2721":1,"2748":7,"2749":3,"2760":1,"2763":1,"2766":1,"2846":2,"2862":1,"2915":2}}],["specifics",{"2":{"711":1,"1297":1,"1317":1}}],["specifications",{"2":{"2002":2}}],["specification",{"0":{"1918":1,"1922":1},"2":{"169":1,"182":1,"184":1,"1347":1,"1395":1,"1917":1,"2050":1,"2463":1,"2744":1}}],["specifically",{"2":{"107":1,"2417":1,"2638":1,"2702":1,"2729":1,"2758":1,"2765":1,"2920":1}}],["specific",{"0":{"1439":1,"2424":1,"2877":1},"1":{"2878":1,"2879":1,"2880":1},"2":{"5":1,"21":1,"49":1,"74":2,"77":1,"94":1,"113":1,"114":2,"118":1,"124":1,"133":3,"134":3,"176":2,"191":2,"199":1,"211":2,"380":1,"427":1,"431":1,"457":1,"524":1,"565":1,"609":1,"666":1,"683":1,"693":1,"698":1,"718":1,"749":1,"759":1,"794":1,"1202":1,"1355":1,"1375":2,"1389":1,"1390":1,"1402":1,"1432":1,"1435":1,"1437":1,"1443":3,"1446":1,"1483":1,"1678":1,"1679":2,"1681":1,"1683":1,"1732":1,"1751":1,"1844":1,"1948":2,"1950":2,"1984":1,"1986":1,"2002":1,"2015":1,"2031":1,"2066":1,"2074":1,"2215":1,"2254":1,"2283":1,"2303":1,"2310":1,"2376":1,"2394":1,"2396":1,"2407":2,"2410":1,"2411":1,"2428":1,"2435":1,"2444":1,"2468":1,"2475":1,"2568":1,"2605":1,"2656":1,"2667":1,"2689":1,"2719":1,"2720":3,"2721":4,"2728":1,"2750":2,"2754":1,"2756":1,"2774":1,"2776":1,"2785":1,"2789":2,"2844":3,"2877":2,"2880":1,"2887":1,"2901":1,"2928":1,"2933":1,"2938":1}}],["specs",{"2":{"114":1}}],["spec",{"2":{"114":1,"590":1,"1790":1,"2021":4,"2260":1,"2877":1}}],["speeds",{"2":{"568":1,"1924":1,"1928":2,"1931":3,"1932":2,"1948":1,"2187":1,"2211":1}}],["speedo",{"0":{"56":1},"2":{"56":6}}],["speed",{"0":{"1879":1,"1880":1,"1881":1,"1882":1,"1883":2,"1885":2,"1887":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":2,"2123":2,"2125":1,"2187":1,"2202":1},"1":{"1884":2,"1886":2,"1888":1,"2122":2,"2124":2,"2126":1},"2":{"49":3,"112":2,"114":1,"198":1,"222":1,"317":1,"427":1,"559":1,"564":1,"568":4,"766":1,"1204":4,"1249":2,"1291":1,"1407":1,"1443":1,"1481":1,"1484":1,"1842":4,"1843":2,"1846":2,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":2,"1885":1,"1886":2,"1887":1,"1888":1,"1919":4,"1928":6,"1929":8,"1930":14,"1931":12,"1932":4,"1933":5,"1943":1,"1948":3,"1989":1,"1999":2,"2000":2,"2006":2,"2014":3,"2025":2,"2062":4,"2063":5,"2065":1,"2069":2,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":2,"2123":1,"2124":2,"2125":1,"2126":1,"2181":6,"2182":1,"2202":12,"2204":2,"2209":2,"2210":2,"2211":1,"2245":1,"2268":2,"2269":1,"2462":1,"2496":1,"2515":1,"2530":4,"2532":4,"2537":6,"2538":4,"2864":4,"2866":1,"2870":2,"2871":4,"2873":2}}],["stsw",{"2":{"2499":1}}],["stk500v1",{"2":{"2479":1}}],["stk500",{"2":{"2479":1}}],["st4",{"2":{"2294":1}}],["st3",{"2":{"2294":1}}],["st2",{"2":{"2294":1}}],["st1",{"2":{"2294":1}}],["st110r2",{"2":{"249":1}}],["stn",{"2":{"2293":5,"2294":113}}],["stmc",{"2":{"1392":2}}],["stm",{"2":{"1392":1}}],["stmicroelectronics",{"0":{"513":1},"2":{"387":1}}],["stm32cubemx",{"2":{"1297":1}}],["stm32s",{"2":{"718":1}}],["stm32h733",{"2":{"513":1}}],["stm32h723",{"2":{"222":1,"513":1}}],["stm32g0x1",{"2":{"308":1}}],["stm32g431",{"2":{"77":1,"513":1}}],["stm32g4xx",{"2":{"74":1,"249":1}}],["stm32g474",{"2":{"49":1,"77":1,"513":1}}],["stm32g4",{"2":{"49":1}}],["stm32duino",{"0":{"2388":1,"2498":1},"1":{"2499":1,"2500":1,"2501":1},"2":{"114":1,"513":1,"686":1,"2386":1,"2388":2,"2498":1}}],["stm32f2",{"2":{"1477":1}}],["stm32f2xx",{"2":{"766":1}}],["stm32f7xx",{"2":{"767":1}}],["stm32f070",{"2":{"754":1}}],["stm32f072xb",{"2":{"743":1}}],["stm32f072",{"0":{"1209":1},"2":{"50":1,"191":1,"754":1}}],["stm32f042",{"2":{"754":1,"2386":1}}],["stm32f0",{"2":{"696":1}}],["stm32f0x2",{"2":{"513":1}}],["stm32f0xx",{"2":{"199":1,"692":1,"750":1,"754":1,"767":1}}],["stm32f1x",{"2":{"2501":2}}],["stm32f1xx",{"2":{"93":1,"692":2,"743":1,"766":1,"1471":1,"1475":1,"1477":1}}],["stm32f103c8",{"2":{"713":1,"718":2,"720":1}}],["stm32f103c6",{"2":{"176":1}}],["stm32f103x",{"2":{"692":1}}],["stm32f103",{"0":{"1210":1},"2":{"199":1,"513":1,"519":1,"1195":1,"1197":1,"1198":1,"1210":1,"2386":1,"2388":1,"2475":1,"2498":1,"2501":1}}],["stm32f3discovery",{"2":{"391":2}}],["stm32f303xc",{"2":{"2417":1,"2681":1,"2702":2}}],["stm32f303xe",{"2":{"160":1}}],["stm32f303",{"0":{"1208":1},"2":{"442":1,"513":1,"519":1,"765":1,"1197":1,"1245":1,"1266":1,"1562":1,"1675":1,"2667":2,"2684":1}}],["stm32f303cct6",{"2":{"720":1,"2682":1}}],["stm32f303cc",{"2":{"387":1}}],["stm32f3",{"2":{"222":1,"387":2,"391":1,"696":1}}],["stm32f3xx",{"2":{"93":1,"692":1,"743":1,"767":1}}],["stm32f4x1",{"0":{"2672":1},"1":{"2673":1,"2674":1,"2675":1,"2676":1,"2677":1,"2678":1,"2679":1,"2680":1},"2":{"750":1,"754":1}}],["stm32f4xx",{"2":{"93":1,"692":2,"766":1}}],["stm32f411",{"2":{"431":1,"513":1,"754":1}}],["stm32f4",{"2":{"285":1}}],["stm32f407",{"2":{"513":1}}],["stm32f407x",{"2":{"114":1}}],["stm32f405vg",{"2":{"720":1}}],["stm32f405",{"2":{"513":1}}],["stm32f405rg",{"2":{"277":1}}],["stm32f401",{"2":{"513":1,"754":1}}],["stm32f446",{"2":{"93":1,"328":1,"513":1}}],["stm32l1xx",{"2":{"743":1,"766":1}}],["stm32l073rz",{"2":{"2721":1}}],["stm32l072",{"2":{"2704":1}}],["stm32l0xx",{"2":{"743":1,"766":1}}],["stm32l0",{"2":{"294":1,"745":1}}],["stm32l082kz",{"2":{"2721":1}}],["stm32l082",{"2":{"49":1,"2704":1}}],["stm32l443",{"2":{"513":1}}],["stm32l442",{"2":{"145":1,"149":1,"513":1}}],["stm32l422",{"2":{"513":1}}],["stm32l422xb",{"2":{"114":1}}],["stm32l412",{"2":{"513":1}}],["stm32l412xb",{"2":{"114":1}}],["stm32l4xx",{"2":{"249":1,"767":1}}],["stm32l432",{"2":{"145":1,"149":1,"236":1,"513":1}}],["stm32l433",{"2":{"93":1,"513":1}}],["stm32l4+",{"2":{"49":1}}],["stm32",{"0":{"513":1,"692":1,"745":1,"1207":1,"2386":1,"2702":1,"2703":1,"2704":1,"2705":1},"1":{"1208":1,"1209":1,"1210":1,"2387":1},"2":{"49":4,"50":2,"65":1,"114":1,"131":1,"133":1,"134":5,"176":3,"211":1,"222":1,"277":1,"285":1,"291":2,"294":1,"308":1,"686":2,"713":1,"714":10,"715":6,"718":2,"745":1,"759":1,"765":7,"769":4,"1195":2,"1197":1,"1198":2,"1200":4,"1201":4,"1245":3,"1266":3,"1296":3,"1297":1,"1300":5,"1389":1,"1471":2,"1477":1,"1562":3,"1563":3,"1768":1,"1947":1,"2386":3,"2387":1,"2389":1,"2475":1,"2498":1,"2501":1,"2605":1,"2669":8,"2684":1,"2700":1,"2702":8,"2703":2,"2704":2,"2846":1,"2857":1}}],["stylus",{"2":{"1639":1,"2006":1}}],["styling",{"0":{"343":1},"1":{"344":1,"345":1,"346":1,"347":1,"348":1,"349":1,"350":1,"351":1,"352":1,"353":1,"354":1,"355":1},"2":{"243":1,"331":1,"335":1}}],["styled",{"0":{"678":1},"1":{"679":1,"680":1},"2":{"678":1}}],["styles",{"2":{"535":1,"612":1,"617":1,"1308":1,"2934":1}}],["style=file",{"2":{"521":1}}],["style",{"0":{"243":1},"2":{"133":1,"134":1,"176":1,"199":1,"243":1,"265":1,"283":2,"331":1,"335":2,"489":1,"490":6,"492":2,"493":2,"495":2,"496":2,"520":9,"522":1,"523":1,"534":1,"537":2,"612":1,"617":2,"675":1,"1632":1,"2009":1,"2313":1,"2492":1,"2660":2}}],["st7789",{"2":{"2746":2,"2749":8}}],["st7735",{"2":{"176":1,"236":1,"2746":2,"2749":8}}],["st7565p",{"2":{"2276":1}}],["st7565r",{"2":{"2276":1}}],["st7565",{"0":{"2275":1},"1":{"2276":1,"2277":1,"2278":1,"2279":1,"2280":1,"2281":1,"2282":1,"2283":1},"2":{"114":5,"191":1,"568":2,"2269":2,"2276":1,"2277":11,"2278":1,"2279":4,"2280":3,"2281":13,"2282":11,"2283":39,"2873":2}}],["std",{"2":{"766":1}}],["stdlayout",{"2":{"421":1}}],["stderr",{"2":{"372":1,"2939":1}}],["stdout",{"2":{"372":1}}],["stdint",{"2":{"176":1}}],["stdbool",{"2":{"73":1}}],["stilgar",{"2":{"2418":1}}],["still",{"2":{"16":1,"124":2,"125":1,"156":1,"170":1,"185":1,"191":2,"203":1,"228":3,"232":1,"241":1,"253":1,"270":1,"273":1,"281":1,"334":1,"364":1,"424":1,"492":1,"521":1,"534":1,"567":1,"746":1,"754":1,"1317":1,"1359":1,"1363":1,"1378":2,"1443":1,"1484":1,"1485":1,"1493":1,"1497":1,"1527":1,"1657":1,"1664":1,"1684":3,"1740":1,"1755":2,"1805":1,"2052":1,"2252":1,"2293":1,"2302":1,"2310":3,"2421":2,"2459":1,"2583":3,"2610":1,"2630":1,"2729":1,"2750":1,"2843":1,"2877":1,"2882":1,"2888":1,"2897":1,"2898":1,"2901":2,"2902":1,"2908":1}}],["sticky",{"2":{"2428":1,"2643":1,"2827":1}}],["stick",{"2":{"1427":1,"1482":1,"2000":1}}],["stickandgum",{"2":{"114":1}}],["steve",{"2":{"2248":1,"2934":1}}],["steelseries",{"2":{"285":1,"328":1}}],["stef9998",{"2":{"253":2}}],["steadily",{"2":{"251":1}}],["steal",{"2":{"143":2}}],["stello65",{"2":{"211":1}}],["stella",{"2":{"143":2}}],["stemcell",{"0":{"1392":1,"1397":1},"2":{"176":1,"311":6,"317":1,"1386":2,"1388":3,"1392":3,"1396":3,"1397":1,"2888":1}}],["stenographers",{"2":{"2284":1}}],["stenography",{"0":{"2284":1,"2292":1,"2874":1},"1":{"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1},"2":{"2284":2,"2287":2,"2289":1,"2290":2,"2291":2,"2292":1,"2874":3,"2925":1}}],["stenotype",{"2":{"2170":1,"2291":1}}],["stenothe",{"2":{"197":1}}],["steno",{"0":{"2285":1,"2287":1,"2291":1},"1":{"2288":1,"2289":1,"2290":1},"2":{"114":1,"176":4,"199":1,"231":3,"236":1,"249":1,"2210":1,"2284":2,"2285":3,"2286":1,"2287":4,"2288":4,"2289":2,"2290":10,"2291":4,"2292":1,"2293":13,"2294":2,"2874":1,"2933":1}}],["stepped",{"2":{"2017":1}}],["stepping",{"2":{"194":1,"1487":2}}],["steps",{"0":{"600":1},"2":{"111":3,"191":1,"211":1,"222":2,"231":1,"255":1,"593":1,"631":1,"1192":1,"1195":1,"1198":1,"1200":1,"1201":1,"1385":1,"1411":1,"1487":1,"1846":1,"1929":1,"1931":8,"1938":1,"1953":1,"2069":1,"2185":2,"2187":6,"2210":1,"2243":2,"2244":1,"2245":2,"2246":4,"2247":6,"2277":1,"2576":1,"2600":1,"2601":1,"2610":1,"2630":1,"2651":1,"2864":3,"2870":3,"2871":5,"2894":1,"2937":1}}],["step",{"0":{"593":2,"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"1569":1,"1867":1,"1868":1,"1869":1,"1870":1,"1893":1,"1894":1,"1895":1,"1896":1,"2093":1,"2094":1,"2095":1,"2096":1,"2131":1,"2132":1,"2133":1,"2134":1,"2243":1,"2331":1,"2332":1},"1":{"594":2,"595":2,"596":2,"597":2,"598":2,"599":2,"600":2},"2":{"49":1,"63":1,"222":2,"348":2,"369":1,"563":6,"627":1,"663":1,"1195":2,"1198":2,"1516":2,"1549":2,"1675":3,"1844":2,"1846":2,"1928":2,"1929":2,"1930":2,"1934":2,"2064":1,"2066":2,"2069":4,"2182":3,"2185":2,"2186":2,"2199":4,"2242":1,"2244":1,"2246":4,"2247":16,"2312":1,"2403":1,"2416":1,"2429":2,"2439":6,"2489":1,"2497":1,"2520":2,"2554":1,"2577":1,"2579":1,"2582":2,"2593":1,"2599":1,"2600":1,"2602":1,"2630":1,"2634":1,"2651":2,"2702":1,"2882":1,"2933":1}}],["story",{"2":{"520":1,"522":1}}],["stores",{"2":{"750":1,"1378":1,"1407":1,"1532":1,"2932":1}}],["store",{"2":{"493":1,"576":2,"611":1,"645":2,"751":1,"752":1,"753":1,"1378":1,"1412":1,"1413":1,"1519":1,"1655":1,"1956":4,"2025":1,"2252":1,"2583":1,"2587":2,"2588":1,"2591":1,"2698":1,"2942":1}}],["stored",{"0":{"2586":1},"2":{"228":2,"488":1,"567":1,"1345":1,"1375":1,"1412":1,"1520":1,"1527":1,"1532":1,"1619":1,"1696":1,"1920":1,"1947":1,"1956":1,"2290":1,"2322":1,"2547":1,"2583":1,"2591":1,"2607":1,"2747":1}}],["storing",{"2":{"224":1,"1519":1,"1532":1,"2583":1}}],["storage",{"0":{"1847":1,"2070":1,"2783":1},"2":{"93":1,"131":1,"360":1,"748":1,"750":1,"751":2,"752":1,"753":3,"754":1,"2266":1,"2400":1,"2660":1,"2693":1,"2735":1,"2747":1,"2783":1,"2857":1}}],["stone",{"2":{"194":1}}],["stock",{"2":{"114":1,"374":1,"566":1,"567":1,"2266":1,"2285":1,"2720":1,"2888":1}}],["stopped",{"2":{"649":2,"1658":1,"2750":1}}],["stopping",{"2":{"211":1,"646":1,"711":1,"1421":1,"1680":1}}],["stops",{"2":{"586":1,"1373":1,"1587":1,"1929":1,"1930":2,"1933":2,"1948":1,"2201":8,"2372":1,"2549":1,"2750":1,"2755":1}}],["stop",{"0":{"1262":1,"2625":1},"2":{"74":1,"134":1,"160":1,"176":1,"222":1,"277":1,"717":1,"1484":2,"1529":1,"1594":1,"1655":2,"1919":1,"1933":1,"1985":1,"2191":1,"2198":2,"2246":1,"2247":1,"2271":1,"2291":1,"2428":1,"2509":2,"2510":4,"2513":1,"2515":6,"2523":1,"2531":1,"2532":1,"2750":6}}],["sturdy",{"2":{"2421":1,"2422":1}}],["stumbled",{"2":{"602":1}}],["stuttered",{"2":{"294":1}}],["stub",{"2":{"236":1}}],["stubs",{"2":{"114":1,"2935":1}}],["stuck",{"0":{"1350":1},"2":{"211":1,"222":1,"263":1,"294":1,"1350":1,"1485":1,"2039":1}}],["studiokestra",{"2":{"226":2}}],["studios",{"2":{"211":1}}],["studio",{"0":{"2657":1,"2667":1},"2":{"67":3,"132":1,"207":4,"211":16,"249":1,"291":2,"294":2,"2567":1,"2657":1,"2660":1,"2667":1}}],["stuff",{"2":{"50":2,"114":1,"231":2,"632":1,"635":1,"1434":2,"1435":2,"1599":1,"2410":1,"2551":1,"2882":1}}],["stlink",{"2":{"49":1,"2387":1,"2499":3,"2501":3}}],["st",{"2":{"49":1,"266":1,"383":2,"1484":2,"1562":1,"2387":6,"2498":1,"2499":3,"2500":2,"2501":7,"2721":1,"2728":1,"2729":3,"2734":2,"2735":1,"2737":1,"2738":1,"2743":1,"2795":1}}],["stapelberg",{"2":{"2656":2}}],["staff",{"2":{"2566":1}}],["staying",{"2":{"2424":1}}],["stay",{"2":{"279":1,"1759":2,"2492":1}}],["stays",{"2":{"199":1,"1413":1,"1492":1,"1675":1,"1761":1}}],["staging",{"2":{"2633":2}}],["staggering",{"2":{"1442":1}}],["staggered",{"2":{"211":1,"2422":1}}],["stage2",{"2":{"176":1}}],["stage",{"0":{"2698":1},"2":{"119":1,"156":1,"2667":1,"2668":1,"2671":1,"2698":1}}],["stabilisers",{"2":{"2414":1,"2415":1}}],["stability",{"0":{"1953":1},"2":{"1664":1,"1954":1}}],["stabilizes",{"2":{"1953":1}}],["stabilize",{"2":{"176":1,"191":1}}],["stable",{"2":{"211":1,"294":2,"406":1,"1953":2,"1954":1}}],["stacks",{"0":{"2737":1},"2":{"2729":1,"2732":1,"2739":1,"2743":1}}],["stackexchange",{"2":{"1564":1}}],["stacked",{"2":{"222":1}}],["stacktrace",{"2":{"533":1}}],["stack",{"0":{"2729":1},"2":{"199":2,"222":1,"358":2,"511":1,"561":1,"1415":1,"1416":2,"1421":1,"2035":1,"2039":2,"2043":2,"2046":3,"2291":1,"2313":1,"2547":1,"2549":1,"2650":1,"2729":2,"2734":1}}],["stale",{"2":{"191":1}}],["stands",{"2":{"2687":1}}],["stand",{"2":{"1323":1}}],["standpoint",{"2":{"626":1,"1340":2}}],["standing",{"2":{"154":1}}],["standalone",{"2":{"700":1,"727":1,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1}}],["standaside",{"2":{"143":2,"149":1}}],["standards",{"2":{"244":1,"266":1,"308":1,"1189":1,"1340":1,"1427":1,"2569":1,"2721":1,"2895":1}}],["standardisation",{"2":{"238":1}}],["standardised",{"2":{"198":1,"2746":1}}],["standardise",{"2":{"149":1,"182":1}}],["standardizing",{"2":{"614":1}}],["standardization",{"2":{"236":1,"266":2}}],["standardized",{"2":{"134":1}}],["standard",{"2":{"125":2,"134":1,"163":1,"176":3,"185":2,"191":1,"199":1,"220":2,"266":1,"308":1,"320":1,"488":1,"521":1,"524":1,"546":1,"565":1,"572":2,"759":1,"1245":1,"1343":1,"1484":3,"1632":1,"1735":1,"1754":1,"1755":1,"1756":1,"1796":2,"2006":1,"2030":1,"2284":1,"2286":2,"2287":2,"2289":1,"2318":1,"2410":1,"2411":2,"2479":1,"2556":1,"2666":1,"2699":1,"2721":4,"2744":1,"2750":1,"2754":1,"2792":1,"2797":1,"2830":2,"2831":1,"2882":1,"2919":1}}],["star",{"2":{"686":1,"1807":2,"2379":1,"2492":1}}],["starlight",{"2":{"236":1,"277":1,"294":1,"308":1,"317":1,"2063":12}}],["staryu",{"2":{"102":2}}],["started",{"0":{"1737":1,"2471":1},"2":{"581":1,"614":1,"631":1,"632":1,"635":1,"674":2,"1309":1,"1332":1,"1333":1,"1340":1,"1419":1,"1608":1,"1609":1,"1948":1,"2474":1,"2579":1,"2592":1,"2612":1,"2648":1,"2652":1,"2658":1,"2707":1,"2750":1,"2788":1,"2927":1}}],["start=none",{"2":{"532":1}}],["starting",{"0":{"2415":1},"2":{"119":1,"520":1,"644":1,"711":1,"1478":1,"1487":1,"1519":1,"1532":1,"1656":1,"1805":1,"1943":1,"2189":2,"2265":1,"2281":1,"2310":1,"2421":1,"2432":1,"2501":2,"2648":1,"2658":1,"2707":1,"2750":1,"2760":1,"2767":1,"2875":1,"2883":1,"2911":1}}],["start",{"0":{"1248":1,"1333":1,"1810":1,"1815":1,"2337":1,"2352":1,"2398":1},"1":{"1249":1,"1250":1,"2399":1,"2400":1,"2401":1,"2402":1},"2":{"50":1,"75":1,"132":1,"191":3,"196":1,"198":1,"211":1,"277":1,"347":1,"377":1,"406":5,"446":1,"447":1,"448":1,"487":1,"520":2,"529":1,"532":7,"552":1,"562":1,"574":1,"616":1,"666":1,"674":1,"676":1,"685":1,"1195":1,"1198":1,"1244":1,"1245":2,"1248":1,"1262":1,"1324":1,"1333":1,"1337":1,"1425":3,"1435":1,"1484":1,"1486":1,"1497":1,"1533":1,"1655":5,"1656":1,"1658":2,"1707":1,"1801":2,"1805":1,"1807":4,"1943":1,"1948":7,"2000":1,"2040":1,"2050":1,"2185":2,"2198":4,"2242":1,"2244":1,"2246":1,"2247":1,"2281":1,"2283":5,"2288":1,"2323":1,"2400":1,"2403":1,"2415":1,"2420":1,"2425":1,"2459":1,"2523":4,"2567":1,"2575":1,"2578":1,"2582":1,"2607":1,"2615":1,"2622":1,"2627":2,"2631":1,"2644":1,"2650":1,"2662":1,"2666":2,"2667":1,"2669":1,"2693":1,"2760":1,"2767":1,"2768":1,"2769":1,"2785":1,"2919":1,"2924":1,"2927":1,"2942":1}}],["startup",{"0":{"2927":1},"2":{"49":1,"65":1,"112":1,"114":1,"134":1,"183":8,"191":3,"266":1,"572":2,"631":2,"632":1,"1479":3,"1480":4,"1557":1,"1681":1,"1951":1,"1955":1,"2271":1,"2324":1,"2652":1,"2853":1,"2875":2}}],["starts",{"2":{"49":1,"363":1,"458":1,"572":1,"1369":1,"1479":1,"1480":1,"1492":1,"1933":1,"1948":2,"2032":1,"2266":1,"2748":1,"2927":1}}],["stat",{"2":{"2016":1}}],["station",{"2":{"2273":2,"2414":1}}],["stating",{"2":{"408":1,"2567":1}}],["statically",{"2":{"2727":1,"2749":1}}],["static",{"2":{"50":1,"214":1,"328":1,"348":1,"459":1,"577":1,"645":2,"1378":1,"1521":1,"1771":3,"1794":1,"1843":2,"1844":5,"1940":1,"1941":1,"1942":1,"2027":1,"2063":5,"2066":5,"2170":2,"2181":2,"2182":1,"2183":3,"2184":2,"2186":1,"2187":1,"2270":1,"2278":1,"2279":1,"2280":1,"2310":1,"2311":1,"2312":1,"2537":2,"2646":1,"2727":1,"2728":1,"2734":1,"2743":1,"2749":1,"2750":11,"2760":1,"2761":1,"2766":1,"2767":1,"2769":1,"2771":1,"2870":1,"2887":1,"2941":1}}],["statuses",{"2":{"371":1}}],["status",{"0":{"371":1,"770":1,"773":1,"776":1,"779":1,"782":1,"785":1,"788":1,"791":1,"794":1,"1251":1,"1254":1,"1256":1,"1259":1,"1530":1,"2192":1,"2548":1},"1":{"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":1,"781":1,"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1,"795":1,"796":1,"1252":1,"1253":1,"1255":1,"1257":1,"1258":1,"1260":1,"1261":1},"2":{"92":1,"149":1,"191":2,"199":2,"360":1,"361":1,"368":1,"371":2,"577":1,"578":1,"579":3,"580":2,"581":2,"582":2,"643":1,"772":3,"775":3,"778":3,"781":3,"784":3,"787":3,"790":3,"793":3,"796":3,"1253":2,"1255":1,"1258":3,"1261":3,"1326":1,"1378":3,"1410":2,"1413":2,"1425":1,"1442":1,"1520":1,"1523":1,"1524":1,"1615":2,"1619":2,"1672":4,"1939":2,"1942":1,"2016":1,"2019":9,"2040":1,"2046":1,"2074":1,"2188":1,"2204":1,"2269":6,"2277":2,"2280":1,"2288":1,"2513":1,"2519":1,"2531":1,"2540":1,"2548":1,"2644":1,"2685":1,"2693":1,"2873":2,"2881":1,"2928":2}}],["stats",{"2":{"50":1}}],["stateless",{"2":{"2862":1}}],["state|default",{"2":{"2073":1,"2074":1}}],["state++",{"2":{"1844":1,"2066":1}}],["stated",{"2":{"1629":1,"2706":1}}],["states",{"2":{"247":1,"644":1,"1359":1,"1406":1,"1621":1,"1775":1,"1976":1,"1978":1,"2021":1,"2311":2,"2312":1,"2627":1}}],["statement",{"0":{"231":1},"2":{"194":1,"236":1,"317":1,"333":1,"520":2,"526":1,"589":1,"1432":1,"1450":1,"1527":1,"1616":1,"2302":1,"2449":1}}],["statements",{"0":{"526":1},"2":{"160":1,"231":1,"524":1,"526":1,"528":1,"533":1,"536":1,"540":1,"543":1,"664":1,"2942":1}}],["state",{"0":{"14":1,"323":1,"1375":1,"1424":1,"1426":1,"1551":1,"1595":1,"1603":1,"1764":1,"1795":1,"1797":1,"1900":1,"2144":1,"2778":2,"2932":1},"1":{"1376":1,"1377":1,"1378":1,"1798":1,"1901":1,"2145":1,"2779":2},"2":{"14":2,"31":1,"49":1,"50":1,"62":1,"63":1,"74":1,"93":1,"105":10,"112":1,"114":2,"149":3,"166":2,"176":2,"179":1,"199":2,"211":1,"247":1,"285":3,"298":1,"323":9,"325":7,"328":2,"520":1,"559":3,"563":1,"568":7,"611":1,"623":2,"637":4,"654":1,"711":1,"713":7,"714":4,"715":1,"719":1,"725":1,"746":1,"1202":1,"1289":1,"1353":1,"1359":7,"1375":9,"1378":9,"1406":1,"1407":1,"1410":7,"1413":10,"1419":1,"1422":37,"1424":6,"1425":7,"1426":9,"1441":18,"1455":1,"1479":1,"1480":2,"1489":1,"1490":1,"1492":2,"1493":1,"1497":3,"1512":1,"1515":1,"1533":3,"1550":3,"1551":2,"1564":1,"1576":1,"1581":1,"1591":1,"1595":1,"1603":1,"1607":1,"1614":1,"1615":2,"1622":7,"1638":6,"1642":4,"1644":1,"1645":3,"1656":2,"1675":1,"1751":1,"1763":1,"1764":2,"1765":1,"1774":1,"1775":1,"1779":1,"1781":1,"1790":7,"1791":2,"1792":4,"1793":7,"1794":8,"1795":5,"1796":1,"1797":1,"1841":1,"1844":3,"1846":1,"1852":1,"1854":1,"1856":1,"1857":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"1900":1,"1901":1,"1935":1,"1939":6,"1941":1,"1942":1,"1963":1,"1965":1,"1967":1,"1969":1,"1971":1,"2021":1,"2025":7,"2027":6,"2039":12,"2040":2,"2042":10,"2043":12,"2061":1,"2066":3,"2069":1,"2073":6,"2074":5,"2078":1,"2080":1,"2082":1,"2083":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2144":1,"2145":1,"2166":2,"2170":1,"2172":1,"2173":1,"2175":1,"2188":1,"2190":23,"2191":3,"2200":2,"2203":2,"2269":9,"2277":6,"2279":1,"2280":1,"2302":1,"2303":4,"2307":4,"2308":10,"2309":14,"2310":40,"2311":29,"2312":35,"2344":1,"2441":1,"2513":1,"2517":1,"2518":1,"2531":1,"2548":8,"2627":2,"2634":1,"2644":1,"2645":3,"2677":1,"2750":2,"2778":3,"2779":17,"2847":2,"2849":4,"2850":4,"2854":1,"2859":1,"2860":2,"2864":1,"2865":2,"2870":1,"2871":1,"2872":1,"2873":7,"2885":2,"2929":1,"2930":1,"2932":2,"2942":4}}],["struggle",{"2":{"2828":1}}],["structs",{"2":{"236":1,"249":1,"285":2,"2758":1,"2765":1}}],["struct",{"0":{"733":1,"804":1,"830":1,"862":1,"892":1,"927":1,"961":1,"995":1,"1029":1,"1063":1,"1097":1,"1131":1,"1165":1,"1218":1,"1644":1,"1774":1,"1776":1},"1":{"734":1,"805":1,"831":1,"863":1,"893":1,"928":1,"962":1,"996":1,"1030":1,"1064":1,"1098":1,"1132":1,"1166":1,"1219":1,"1645":1,"1775":1,"1777":1},"2":{"31":1,"236":1,"266":1,"328":1,"1413":1,"1642":1,"1739":1,"1792":1,"1840":1,"1920":1,"1948":1,"1949":1,"2060":1,"2142":1,"2270":2,"2283":1,"2309":1,"2310":1,"2312":1,"2760":1,"2761":1,"2762":2,"2766":1,"2767":1,"2768":1,"2769":1,"2770":2,"2771":1,"2772":1}}],["structured",{"2":{"625":1,"2019":1,"2020":1}}],["structures",{"2":{"211":1,"556":1}}],["structure",{"0":{"2405":1,"2406":1,"2407":1,"2408":1,"2436":1},"1":{"2406":1,"2407":1,"2408":1,"2437":1,"2438":1,"2439":1,"2440":1,"2441":1,"2442":1},"2":{"22":1,"125":1,"185":1,"236":1,"323":1,"548":1,"754":1,"766":1,"767":1,"1413":5,"1434":1,"1519":2,"1596":1,"1941":2,"2019":1,"2020":1,"2050":1,"2279":2,"2303":2,"2312":1,"2407":2,"2546":1,"2578":1,"2583":1,"2758":1,"2765":1,"2937":1}}],["stroke",{"2":{"2288":1,"2293":2}}],["strokes",{"2":{"2284":2,"2288":1,"2289":1,"2291":1}}],["stronger",{"2":{"2429":1}}],["strongly",{"2":{"182":1,"397":1,"1190":1,"1627":1,"1629":1,"1933":1,"2585":1,"2619":1,"2620":1,"2722":1}}],["strong",{"2":{"182":1,"397":2,"539":1,"545":1,"1680":10,"2171":1,"2420":1,"2427":1,"2721":1}}],["stress",{"2":{"1805":1}}],["strength",{"2":{"1674":2,"1682":1,"2677":1}}],["stretching",{"2":{"1491":1}}],["streamed",{"2":{"2750":1}}],["stream2",{"2":{"1300":1}}],["streampad",{"2":{"249":1}}],["stream",{"2":{"50":1,"114":1,"134":1,"1300":2,"1528":1,"1988":2}}],["streamline",{"2":{"50":1,"414":1}}],["streams",{"2":{"49":2}}],["strategies",{"2":{"2929":1}}],["strategy",{"2":{"312":1,"2600":1}}],["stranded",{"2":{"2422":1}}],["strange",{"2":{"14":1}}],["straight",{"2":{"2400":1,"2420":1,"2425":1}}],["straightforward",{"2":{"411":1,"470":1,"493":1,"673":1,"1361":1,"2476":1,"2610":1}}],["strain",{"2":{"2284":1}}],["strapped",{"2":{"1947":1}}],["stray",{"2":{"199":1,"211":1}}],["str",{"0":{"2342":1},"1":{"2343":1},"2":{"160":1,"191":1,"669":1,"1454":4,"1528":1,"1529":4,"1680":8,"2294":4,"2343":1,"2750":3,"2882":3,"2886":5}}],["strives",{"2":{"2895":1}}],["strike",{"2":{"182":1,"240":1}}],["stringified",{"2":{"2941":1}}],["stringify",{"2":{"2000":1}}],["strings",{"0":{"537":1,"1454":1},"2":{"176":1,"191":1,"308":1,"431":2,"473":1,"489":1,"534":1,"537":1,"668":1,"669":2,"676":1,"1330":1,"1447":2,"1452":2,"1454":1,"1528":2,"1804":1,"2052":1,"2377":1,"2384":1,"2941":1}}],["string",{"0":{"364":1,"365":1,"366":1,"1450":1,"2212":1,"2221":2,"2223":2,"2225":2,"2227":2,"2240":2,"2241":2,"2342":1,"2941":1},"1":{"1451":1,"1452":1,"1453":1,"1454":1,"2213":1,"2214":1,"2215":1,"2216":1,"2217":1,"2218":1,"2219":1,"2220":1,"2221":1,"2222":3,"2223":1,"2224":3,"2225":1,"2226":3,"2227":1,"2228":3,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2241":1,"2343":1},"2":{"94":1,"114":2,"149":1,"157":1,"160":3,"176":1,"190":1,"191":4,"196":5,"211":1,"249":1,"266":1,"294":1,"308":2,"480":1,"489":2,"492":1,"586":3,"591":6,"668":1,"669":1,"1324":8,"1327":5,"1442":2,"1443":3,"1450":9,"1452":21,"1454":7,"1480":1,"1484":2,"1528":1,"1529":5,"1532":4,"1533":1,"1599":1,"1616":2,"1709":1,"1710":1,"1711":1,"1712":1,"1801":5,"1804":1,"1807":2,"1939":1,"1948":6,"2162":2,"2167":2,"2168":3,"2170":10,"2212":1,"2213":2,"2215":5,"2216":1,"2218":1,"2219":2,"2221":3,"2222":2,"2223":1,"2224":2,"2225":3,"2226":2,"2227":3,"2228":2,"2240":4,"2241":4,"2277":1,"2283":6,"2307":1,"2342":1,"2343":1,"2377":1,"2384":1,"2748":1,"2750":2,"2845":10,"2846":5,"2849":2,"2850":1,"2851":1,"2852":1,"2857":2,"2861":3,"2862":4,"2864":2,"2865":1,"2868":1,"2870":2,"2871":2,"2873":2,"2874":1,"2875":3,"2876":2,"2879":4,"2941":11}}],["strictly",{"2":{"1377":1,"1404":1,"1642":1,"2660":1}}],["strict",{"0":{"1605":1,"1609":1,"1806":1},"2":{"75":1,"112":1,"191":1,"438":1,"561":1,"562":2,"1313":1,"1378":1,"1609":1,"1806":1,"1986":1,"2742":1,"2863":1}}],["stripping",{"2":{"2418":2,"2422":1}}],["strippers",{"2":{"2414":1}}],["stripped",{"2":{"328":1,"2418":1}}],["strip",{"2":{"45":1,"199":1,"211":2,"1435":1,"1442":1,"1443":1,"2179":2,"2185":1,"2208":2,"2274":1,"2418":1,"2420":1,"2440":3}}],["s",{"0":{"624":1,"1317":1,"1709":1,"1711":1,"2137":1,"2139":1,"2631":1,"2926":1},"1":{"625":1,"1710":1,"1712":1,"2140":1,"2632":1,"2633":1,"2634":1,"2927":1,"2928":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"14":1,"46":1,"49":1,"69":1,"70":1,"72":1,"82":1,"99":2,"109":1,"114":4,"116":1,"119":2,"125":1,"133":1,"134":1,"149":31,"153":1,"156":1,"158":1,"163":1,"174":1,"176":7,"182":3,"185":1,"191":2,"194":1,"196":5,"202":1,"211":6,"224":1,"243":1,"249":2,"265":1,"266":4,"268":1,"273":1,"276":1,"279":2,"288":3,"308":2,"312":2,"317":1,"320":1,"328":1,"331":1,"334":1,"338":6,"342":1,"347":1,"363":2,"369":2,"376":1,"383":2,"387":1,"393":1,"397":2,"405":1,"421":1,"441":1,"443":1,"459":3,"460":1,"471":2,"482":1,"486":1,"487":3,"489":2,"492":3,"493":1,"494":3,"498":2,"508":1,"520":3,"525":1,"537":1,"540":2,"559":2,"566":1,"567":1,"572":2,"583":1,"586":3,"587":3,"589":1,"591":1,"594":1,"608":1,"611":2,"617":1,"620":1,"627":1,"631":2,"632":1,"635":1,"637":2,"644":1,"645":2,"649":1,"654":2,"655":1,"656":1,"657":1,"662":1,"666":1,"667":1,"671":1,"673":1,"676":1,"683":2,"684":2,"695":1,"696":1,"718":1,"728":2,"734":3,"743":1,"745":1,"747":1,"750":1,"751":3,"752":1,"753":1,"754":1,"765":3,"799":1,"800":1,"805":3,"831":3,"863":3,"893":3,"928":3,"962":3,"996":3,"1030":3,"1064":3,"1098":3,"1132":3,"1166":3,"1194":1,"1196":1,"1200":3,"1201":3,"1219":3,"1245":3,"1249":2,"1266":2,"1282":2,"1291":1,"1292":2,"1294":1,"1295":1,"1324":3,"1327":1,"1329":1,"1333":1,"1335":2,"1339":1,"1340":3,"1344":2,"1353":1,"1361":1,"1362":1,"1374":1,"1375":1,"1377":1,"1378":1,"1385":1,"1387":2,"1400":1,"1404":1,"1412":1,"1413":2,"1416":3,"1418":1,"1419":3,"1421":1,"1427":1,"1428":3,"1433":1,"1435":4,"1436":1,"1438":1,"1441":1,"1446":1,"1451":1,"1452":1,"1458":1,"1461":1,"1479":2,"1486":1,"1487":1,"1493":2,"1494":1,"1511":1,"1512":1,"1522":2,"1526":2,"1529":2,"1533":1,"1552":1,"1564":1,"1584":1,"1587":1,"1591":1,"1599":2,"1603":1,"1606":1,"1611":1,"1612":2,"1614":1,"1617":1,"1619":1,"1621":1,"1627":1,"1628":2,"1634":2,"1655":1,"1659":1,"1661":1,"1679":1,"1693":4,"1710":1,"1712":1,"1732":1,"1735":1,"1747":1,"1756":1,"1758":1,"1766":2,"1769":1,"1801":5,"1804":1,"1838":1,"1840":3,"1845":1,"1847":1,"1922":1,"1926":1,"1929":1,"1930":2,"1931":1,"1932":1,"1933":3,"1946":1,"1948":1,"1990":2,"2009":1,"2015":1,"2017":1,"2023":1,"2024":1,"2050":3,"2058":1,"2060":3,"2063":3,"2064":2,"2068":1,"2070":1,"2138":1,"2140":1,"2160":1,"2169":1,"2170":6,"2188":1,"2198":8,"2201":4,"2212":1,"2246":1,"2248":1,"2251":1,"2254":2,"2258":1,"2262":2,"2264":3,"2266":3,"2269":1,"2270":2,"2271":2,"2274":1,"2281":3,"2283":1,"2289":2,"2293":1,"2294":3,"2295":1,"2298":1,"2301":4,"2302":1,"2303":4,"2305":1,"2312":1,"2319":1,"2323":2,"2324":1,"2364":1,"2368":4,"2376":3,"2383":1,"2384":1,"2386":1,"2390":3,"2391":1,"2400":3,"2402":1,"2403":2,"2405":1,"2407":1,"2410":3,"2411":3,"2412":2,"2418":8,"2421":2,"2422":4,"2423":1,"2424":1,"2427":4,"2429":4,"2435":1,"2436":1,"2437":2,"2443":1,"2444":1,"2449":2,"2451":1,"2455":1,"2461":1,"2475":1,"2476":1,"2478":1,"2480":1,"2482":1,"2485":1,"2494":2,"2495":1,"2499":2,"2503":3,"2515":3,"2516":1,"2528":1,"2534":1,"2547":1,"2551":1,"2553":4,"2567":2,"2568":3,"2569":1,"2570":1,"2572":1,"2576":1,"2577":1,"2579":1,"2583":1,"2592":1,"2594":2,"2605":1,"2609":2,"2610":2,"2612":1,"2619":1,"2621":1,"2622":1,"2625":1,"2626":1,"2627":3,"2628":2,"2630":5,"2632":2,"2633":3,"2636":2,"2645":1,"2660":2,"2662":3,"2663":2,"2664":2,"2667":3,"2668":1,"2669":2,"2670":2,"2671":2,"2687":1,"2695":2,"2702":2,"2703":2,"2706":1,"2711":1,"2713":1,"2714":1,"2719":1,"2721":6,"2722":1,"2723":1,"2724":1,"2728":4,"2729":2,"2730":1,"2734":3,"2745":1,"2747":1,"2748":3,"2749":3,"2750":4,"2751":1,"2757":2,"2758":1,"2759":1,"2760":1,"2763":1,"2764":1,"2765":1,"2768":2,"2769":2,"2770":1,"2772":1,"2780":1,"2785":2,"2787":3,"2788":8,"2789":2,"2793":1,"2805":1,"2812":1,"2830":1,"2845":2,"2849":2,"2851":1,"2858":2,"2869":2,"2873":1,"2877":1,"2881":1,"2884":1,"2887":2,"2895":1,"2901":5,"2908":2,"2914":1,"2915":1,"2917":1,"2919":1,"2920":2,"2928":1,"2929":4,"2930":2,"2932":1,"2934":3,"2935":1,"2936":1,"2937":6,"2940":1,"2941":2,"2942":2}}],["sixty",{"2":{"1487":1}}],["sixtyfive",{"2":{"211":1}}],["sixth",{"2":{"1353":1}}],["six",{"2":{"1289":1,"2245":1,"2289":1}}],["sipeed",{"2":{"519":1}}],["situation",{"2":{"533":1,"1294":1,"1407":1,"1805":1}}],["situations",{"2":{"533":1,"550":1,"624":1,"1363":1,"1436":1,"1450":1,"2621":4,"2835":1,"2882":1}}],["sites",{"2":{"2569":1}}],["site",{"2":{"459":1,"2935":1}}],["sit",{"2":{"357":1,"676":1}}],["silvery",{"2":{"2420":1}}],["silakka54",{"2":{"294":1}}],["silent=true",{"2":{"2410":1}}],["silent",{"2":{"236":1}}],["silicon",{"2":{"49":1}}],["sizing",{"2":{"211":1,"344":1}}],["size=x",{"2":{"2942":1}}],["sizey",{"2":{"2750":1}}],["sizex",{"2":{"2750":1}}],["sizeof",{"2":{"1946":1,"2270":2,"2282":1,"2760":2,"2761":2,"2766":1,"2767":2,"2768":1,"2769":2,"2770":1,"2771":1,"2882":1,"2942":1}}],["sized",{"0":{"1946":1,"2282":1},"1":{"1947":1},"2":{"2288":1}}],["sizes",{"0":{"1603":1},"2":{"134":1,"149":1,"201":1,"210":1,"751":1,"1603":3,"1937":1,"1946":1,"2270":1,"2749":1,"2766":1,"2787":1}}],["size",{"0":{"717":1},"2":{"3":1,"15":1,"28":1,"69":1,"70":1,"75":1,"113":1,"114":10,"134":4,"149":4,"153":1,"166":1,"176":2,"191":1,"199":1,"201":1,"211":4,"215":1,"222":2,"236":5,"266":2,"553":1,"560":1,"561":1,"563":1,"568":2,"570":1,"617":1,"716":3,"717":4,"745":2,"746":4,"747":4,"748":3,"750":2,"751":11,"752":9,"753":11,"756":10,"1362":4,"1521":2,"1526":1,"1527":4,"1655":1,"1656":3,"1675":3,"1691":1,"1775":1,"1843":1,"1929":2,"1930":2,"1934":2,"1937":1,"1946":6,"1947":3,"1948":7,"2063":2,"2064":1,"2159":1,"2189":1,"2268":1,"2270":6,"2276":1,"2282":6,"2283":2,"2293":2,"2302":1,"2323":1,"2372":2,"2374":1,"2375":2,"2410":2,"2411":2,"2422":1,"2443":1,"2496":1,"2580":2,"2622":2,"2704":1,"2721":1,"2746":1,"2747":1,"2748":7,"2749":3,"2751":1,"2760":4,"2767":4,"2857":4,"2881":2,"2882":2,"2885":1,"2894":2,"2942":2}}],["sion",{"2":{"2170":1}}],["siod0",{"2":{"2692":1,"2695":2}}],["siod3",{"2":{"1201":2}}],["siod1",{"2":{"1201":1,"2692":1}}],["sio",{"0":{"1201":1},"2":{"176":1,"199":1,"249":1,"1195":1,"1198":1,"1201":6,"1402":2,"2685":2,"2692":2,"2695":1,"2697":3}}],["sinks",{"2":{"2677":1}}],["sink",{"2":{"2566":1}}],["sinusoidal",{"2":{"1678":1}}],["sine",{"2":{"1474":2,"1843":2}}],["singa",{"2":{"211":1}}],["single",{"0":{"478":1,"1357":1,"2027":1,"2300":1,"2305":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"16":1,"94":1,"112":1,"113":1,"114":2,"138":1,"191":1,"211":3,"222":1,"236":1,"262":1,"285":3,"311":1,"328":1,"369":1,"390":1,"463":1,"467":1,"475":1,"481":1,"526":1,"528":1,"535":2,"573":2,"576":1,"663":2,"692":1,"693":1,"704":1,"726":1,"733":1,"737":1,"765":1,"794":1,"797":1,"798":1,"802":1,"804":1,"805":1,"809":1,"813":2,"815":1,"817":1,"819":2,"823":1,"824":1,"828":1,"830":1,"831":1,"836":1,"840":2,"842":1,"844":1,"846":2,"852":1,"853":1,"860":1,"862":1,"863":1,"868":1,"872":2,"874":1,"876":1,"878":2,"884":1,"885":1,"890":1,"892":1,"893":1,"900":1,"904":2,"906":1,"908":1,"910":2,"916":1,"917":1,"925":1,"927":1,"928":1,"935":1,"939":2,"941":1,"943":1,"945":2,"951":1,"952":1,"959":1,"961":1,"962":1,"969":1,"973":2,"975":1,"977":1,"979":2,"985":1,"986":1,"993":1,"995":1,"996":1,"1003":1,"1007":2,"1009":1,"1011":1,"1013":2,"1019":1,"1020":1,"1027":1,"1029":1,"1030":1,"1037":1,"1041":2,"1043":1,"1045":1,"1047":2,"1053":1,"1054":1,"1061":1,"1063":1,"1064":1,"1071":1,"1075":2,"1077":1,"1079":1,"1081":2,"1087":1,"1088":1,"1095":1,"1097":1,"1098":1,"1105":1,"1109":2,"1111":1,"1113":1,"1115":2,"1121":1,"1122":1,"1129":1,"1131":1,"1132":1,"1139":1,"1143":2,"1145":1,"1147":1,"1149":2,"1155":1,"1156":1,"1163":1,"1165":1,"1166":1,"1173":1,"1177":2,"1179":1,"1181":1,"1183":2,"1189":2,"1211":1,"1212":1,"1216":1,"1218":1,"1219":1,"1226":1,"1230":2,"1232":1,"1234":1,"1236":2,"1270":1,"1272":1,"1280":2,"1303":1,"1308":6,"1309":1,"1310":1,"1361":1,"1374":1,"1375":1,"1392":1,"1406":1,"1410":1,"1422":2,"1439":1,"1448":3,"1480":1,"1487":1,"1532":3,"1547":2,"1583":1,"1587":1,"1642":1,"1679":1,"1693":1,"1746":1,"1776":1,"1843":6,"1844":1,"1859":1,"1941":2,"1948":2,"1954":1,"1955":1,"2003":2,"2016":2,"2020":1,"2052":1,"2058":1,"2063":18,"2066":1,"2085":1,"2178":1,"2198":2,"2237":1,"2247":1,"2252":1,"2265":1,"2279":2,"2283":2,"2290":1,"2298":1,"2302":2,"2303":1,"2305":1,"2310":17,"2311":12,"2312":11,"2340":1,"2410":1,"2422":2,"2438":1,"2457":1,"2497":1,"2553":1,"2564":1,"2610":1,"2707":1,"2719":1,"2721":1,"2727":1,"2734":1,"2735":1,"2744":1,"2762":1,"2770":1,"2773":1,"2780":2,"2822":1,"2833":1}}],["sinanju",{"2":{"211":1}}],["sinc",{"2":{"191":1}}],["since",{"2":{"113":1,"175":1,"240":1,"297":1,"530":1,"531":1,"532":1,"570":1,"698":1,"716":1,"717":2,"1413":1,"1419":1,"1441":1,"1442":1,"1478":1,"1482":1,"1508":1,"1519":1,"1564":1,"1589":1,"1641":1,"1679":1,"1755":1,"1758":1,"1765":1,"2009":1,"2189":1,"2242":1,"2258":1,"2262":1,"2268":2,"2303":2,"2324":1,"2372":1,"2389":1,"2422":1,"2432":1,"2459":1,"2495":1,"2557":1,"2627":2,"2660":1,"2713":1,"2749":1,"2778":1,"2788":1,"2907":2,"2911":1,"2914":1,"2917":1,"2936":1}}],["signed",{"2":{"1785":1,"2021":4,"2167":1,"2169":1}}],["sign",{"2":{"474":1,"611":1,"2901":2}}],["significance",{"2":{"2313":1}}],["significantly",{"2":{"196":1,"570":1,"1407":1,"1929":1,"2747":2}}],["significant",{"2":{"107":1,"169":1,"182":1,"215":1,"228":1,"510":1,"617":2,"750":1,"763":1,"1249":1,"1714":1,"1716":1,"1999":1,"2006":1,"2265":1,"2289":1,"2411":1,"2449":1,"2566":1,"2747":2,"2749":1}}],["signifies",{"2":{"397":1,"2669":1,"2769":1}}],["signum",{"2":{"122":2}}],["signature65",{"2":{"211":1}}],["signature",{"0":{"272":1},"2":{"114":1,"272":1,"654":1,"2495":1}}],["signals",{"2":{"2459":1}}],["signalling",{"2":{"125":1,"185":1}}],["signal",{"2":{"92":1,"176":1,"390":4,"1475":1,"1547":1,"1555":1,"1630":1,"1642":1,"1678":1,"1679":1}}],["sided",{"2":{"2020":1,"2428":1}}],["sidebar",{"2":{"681":1,"2579":1,"2667":2}}],["side",{"2":{"74":1,"138":1,"149":2,"156":1,"191":2,"211":1,"387":2,"553":1,"566":6,"568":1,"579":2,"664":1,"1310":1,"1620":1,"1624":3,"1660":2,"1679":2,"1958":1,"2006":1,"2008":3,"2009":2,"2014":1,"2018":2,"2020":3,"2028":5,"2045":1,"2050":1,"2052":1,"2198":4,"2263":1,"2264":1,"2267":3,"2269":12,"2270":6,"2271":7,"2298":1,"2394":1,"2396":1,"2420":1,"2421":1,"2424":1,"2459":1,"2500":1,"2627":1,"2721":1,"2722":1,"2750":5,"2914":3}}],["sides",{"0":{"2270":1},"2":{"31":1,"34":1,"107":2,"134":1,"211":1,"568":2,"1660":1,"1751":1,"2009":1,"2014":1,"2018":1,"2189":2,"2254":1,"2267":2,"2269":1,"2271":1,"2298":1,"2427":2,"2513":6,"2531":6}}],["sidestep",{"2":{"24":1}}],["simulation",{"2":{"2063":1}}],["simulate",{"2":{"1487":1,"2063":1}}],["simultaneous",{"2":{"620":1,"716":4,"1468":1,"2017":1,"2302":2}}],["simultaneously",{"2":{"283":1,"716":1,"1471":1,"1480":1,"1587":1,"1588":1,"1664":1,"1928":1,"2181":1,"2293":1,"2302":1,"2547":1}}],["similarity",{"2":{"2721":1}}],["similarly",{"2":{"82":1,"1375":1,"1469":1,"1472":1,"1641":1,"1765":1,"2162":1,"2167":1,"2941":1}}],["similar",{"2":{"49":2,"99":1,"128":1,"154":1,"203":1,"220":1,"231":1,"294":1,"428":1,"489":1,"586":1,"626":1,"644":1,"699":1,"1297":1,"1335":1,"1417":1,"1434":1,"1461":1,"1555":1,"1675":1,"1736":1,"1747":1,"2031":1,"2043":1,"2181":1,"2254":1,"2297":1,"2302":1,"2312":3,"2313":1,"2324":1,"2495":1,"2501":1,"2563":1,"2567":1,"2572":1,"2580":1,"2605":1,"2608":1,"2622":1,"2630":1,"2693":1,"2729":1,"2731":1,"2734":1,"2918":1,"2937":1,"2939":1}}],["simplfy",{"2":{"222":1}}],["simplified",{"2":{"2805":1}}],["simplifies",{"2":{"149":1,"198":1}}],["simplifying",{"2":{"164":1}}],["simplify",{"2":{"10":1,"160":1,"176":1,"191":2,"198":1,"222":1,"236":1,"262":1,"328":2,"414":1,"2707":1,"2722":1}}],["simply",{"0":{"2842":1},"2":{"31":1,"110":1,"194":1,"283":1,"370":1,"430":1,"485":1,"491":1,"659":1,"666":1,"671":1,"711":1,"716":1,"750":1,"773":1,"1285":1,"1379":1,"1493":1,"1497":1,"1504":1,"1532":1,"1642":1,"1711":1,"1715":1,"1844":1,"1859":1,"1861":1,"2051":1,"2066":1,"2085":1,"2087":1,"2167":1,"2179":1,"2221":1,"2225":1,"2227":1,"2293":1,"2310":1,"2430":1,"2467":1,"2494":1,"2495":1,"2501":1,"2556":1,"2629":1,"2653":1,"2711":1,"2878":1}}],["simplest",{"2":{"2606":1,"2629":1,"2702":1}}],["simpler",{"2":{"236":1,"397":1,"2660":1,"2920":1}}],["simple",{"0":{"471":1,"530":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1505":1,"1506":1,"1744":1,"2052":1,"2305":1},"2":{"13":1,"94":1,"114":2,"249":1,"285":1,"362":1,"371":1,"548":1,"624":1,"667":1,"668":1,"1324":3,"1345":1,"1375":1,"1377":1,"1385":1,"1419":1,"1455":1,"1467":1,"1531":1,"1533":1,"1557":1,"1667":1,"1751":2,"1843":3,"1844":1,"2063":3,"2066":1,"2218":1,"2273":1,"2288":1,"2296":1,"2302":1,"2305":1,"2377":1,"2384":1,"2416":1,"2425":1,"2461":1,"2463":1,"2572":1,"2590":1,"2609":1,"2651":1,"2661":1,"2697":1,"2719":1,"2837":1,"2887":1,"2920":1,"2933":1}}],["sea",{"2":{"2699":1}}],["searches",{"2":{"441":1,"1427":1,"1522":1}}],["searched",{"2":{"317":1,"1522":1}}],["searching",{"2":{"294":1,"431":1,"1519":1,"2549":1,"2895":1}}],["search",{"2":{"114":1,"191":1,"236":2,"335":1,"431":2,"1519":1,"1533":1,"2510":2,"2515":2,"2549":1,"2567":1,"2721":1,"2942":1}}],["sep",{"2":{"2567":1}}],["sepr",{"2":{"2509":1,"2515":1}}],["separator",{"2":{"2509":2,"2515":2}}],["separation",{"0":{"2734":1,"2735":1},"2":{"236":1,"2434":1,"2727":1}}],["separated",{"2":{"323":1,"470":1,"529":1,"669":2,"2270":1,"2320":1,"2627":1,"2721":1}}],["separately",{"2":{"228":1,"421":1,"1437":1,"1606":1,"1620":1,"1928":1,"2722":2,"2781":1}}],["separate",{"2":{"18":1,"35":1,"114":1,"134":1,"222":2,"236":1,"266":1,"277":1,"285":2,"323":1,"410":1,"521":1,"559":1,"573":1,"613":3,"616":1,"669":1,"711":1,"712":1,"1340":1,"1427":1,"1454":1,"1552":1,"1557":1,"1947":1,"2030":1,"2043":1,"2295":1,"2322":1,"2323":1,"2428":1,"2447":1,"2494":1,"2662":1,"2707":1,"2713":1,"2719":1,"2735":1,"2750":1,"2775":1,"2930":1,"2937":2}}],["seq",{"2":{"1680":3,"1946":3}}],["sequential",{"2":{"191":1,"1941":1,"2176":1,"2279":1}}],["sequence",{"0":{"1817":1,"1818":1,"1821":1,"1823":1,"1826":1,"1829":1,"1832":1,"1835":1,"2172":1},"1":{"1819":1,"1820":1,"1824":1,"1825":1,"1827":1,"1828":1,"1830":1,"1831":1,"1833":1,"1834":1,"1836":1,"1837":1},"2":{"196":4,"294":1,"535":3,"540":1,"562":1,"1450":1,"1518":1,"1596":1,"1680":4,"1681":4,"1799":1,"1801":6,"1803":1,"1804":2,"1805":7,"1806":2,"1807":5,"1808":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1821":1,"1822":1,"1823":1,"1825":1,"1826":1,"1828":1,"1829":1,"1831":1,"1832":1,"1834":1,"1835":1,"1837":1,"2175":3,"2176":3,"2177":3,"2244":1,"2320":4,"2324":2,"2337":1,"2338":1,"2339":1,"2352":1,"2355":1,"2356":1,"2357":1,"2360":1,"2361":1,"2362":1,"2363":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2529":1,"2750":1,"2789":1,"2818":1,"2863":1,"2872":3,"2907":6,"2908":7,"2909":2,"2914":1}}],["sequences",{"2":{"134":1,"196":1,"492":2,"1680":2,"2212":1,"2324":1,"2468":1,"2902":1,"2908":1}}],["sequencer",{"0":{"2242":1,"2243":1},"1":{"2243":1,"2244":1,"2245":1,"2246":1,"2247":1},"2":{"63":1,"191":1,"199":1,"231":3,"2242":1,"2243":2,"2244":1,"2245":1,"2246":12,"2247":32,"2933":1,"2937":1}}],["sequencing",{"2":{"49":1,"176":1,"229":1}}],["semi",{"2":{"2310":1}}],["semitone",{"2":{"1919":2,"2532":2}}],["semitones",{"2":{"1919":10,"2532":10}}],["semicolon",{"2":{"1587":1,"1686":1,"1844":1,"2066":1,"2301":2,"2505":1,"2515":1}}],["semantics",{"2":{"199":1,"277":1}}],["seil",{"2":{"1355":2}}],["seigaiha",{"2":{"143":2}}],["selling",{"2":{"2567":24}}],["self",{"2":{"485":1,"542":6,"666":1,"1614":1,"1616":1,"1844":1,"2066":1}}],["selectable",{"2":{"1407":1}}],["selects",{"2":{"562":1,"1450":1,"2784":1,"2789":1,"2902":3,"2909":1}}],["selectively",{"2":{"2186":1}}],["selecting",{"0":{"1446":1,"2689":1,"2701":1,"2878":1},"1":{"2690":1,"2691":1,"2692":1,"2702":1,"2703":1},"2":{"266":1,"387":1,"743":1,"1310":1,"2291":1,"2560":1,"2656":1}}],["selection",{"0":{"2180":1,"2698":1},"2":{"75":1,"114":1,"188":1,"191":2,"199":1,"211":1,"222":1,"249":1,"285":1,"687":1,"723":1,"1286":1,"1553":1,"1614":1,"1931":2,"1981":1,"2159":1,"2368":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2440":1,"2688":1,"2698":1,"2700":1,"2721":1,"2784":1,"2865":1}}],["select",{"0":{"594":1,"595":1,"898":1,"933":1,"967":1,"1001":1,"1035":1,"1069":1,"1103":1,"1137":1,"1171":1,"1224":1},"1":{"899":1,"934":1,"968":1,"1002":1,"1036":1,"1070":1,"1104":1,"1138":1,"1172":1,"1225":1},"2":{"222":1,"236":1,"387":16,"391":3,"559":1,"568":1,"594":3,"595":1,"683":2,"684":1,"685":1,"728":2,"736":1,"742":1,"747":2,"756":2,"899":1,"934":1,"968":1,"1002":1,"1036":1,"1070":1,"1104":1,"1138":1,"1172":1,"1204":1,"1225":1,"1244":1,"1245":4,"1262":1,"1309":1,"1410":1,"1474":1,"1483":1,"1675":2,"1931":3,"1998":1,"1999":1,"2003":1,"2006":1,"2011":1,"2013":1,"2014":4,"2156":1,"2159":1,"2180":1,"2244":1,"2266":1,"2268":1,"2281":1,"2288":1,"2289":1,"2291":1,"2403":2,"2426":1,"2509":2,"2510":1,"2515":3,"2599":2,"2602":2,"2652":3,"2655":2,"2656":1,"2660":2,"2666":2,"2667":1,"2676":1,"2696":1,"2707":1,"2746":1,"2749":11,"2878":1,"2902":1,"2908":2,"2909":2}}],["selector",{"2":{"176":1,"2652":1}}],["selected",{"0":{"1207":1},"1":{"1208":1,"1209":1,"1210":1},"2":{"65":1,"186":1,"597":1,"718":1,"719":1,"750":1,"751":1,"765":1,"770":1,"773":1,"776":1,"779":1,"1195":1,"1197":1,"1198":1,"1200":3,"1201":4,"1251":1,"1254":1,"1256":1,"1259":1,"1291":1,"1469":1,"1474":1,"1475":1,"1476":1,"1479":4,"1480":4,"1677":1,"1681":1,"2187":1,"2320":1,"2321":5,"2324":4,"2325":2,"2337":1,"2338":1,"2339":1,"2370":1,"2545":2,"2695":1,"2698":1,"2895":2,"2896":1,"2902":2}}],["session",{"2":{"312":1}}],["segregrate",{"2":{"285":1}}],["segments",{"2":{"2189":5,"2191":2,"2418":1}}],["segment",{"2":{"236":3,"2189":6,"2191":3}}],["seven",{"2":{"2787":2}}],["seventyfive",{"2":{"211":1}}],["severity",{"2":{"312":1}}],["several",{"2":{"204":2,"213":1,"361":1,"372":1,"421":1,"488":1,"506":1,"548":1,"594":1,"608":1,"617":1,"631":1,"1189":1,"1195":1,"1198":1,"1203":1,"1340":1,"1345":1,"1670":1,"1757":1,"2038":1,"2263":1,"2287":1,"2306":1,"2390":1,"2435":1,"2436":1,"2475":1,"2492":1,"2574":1,"2645":1,"2650":1,"2684":1,"2862":1,"2895":1,"2937":1}}],["severely",{"2":{"123":1,"2881":1}}],["sekigon",{"2":{"114":1}}],["serbian",{"2":{"2880":5}}],["servicing",{"2":{"717":1}}],["services",{"2":{"573":1}}],["service",{"0":{"362":1},"1":{"363":1,"364":1,"365":1,"366":1},"2":{"294":1,"360":2,"362":1,"368":1,"371":1,"673":1,"1313":2,"2013":1,"2408":1,"2708":1,"2721":1}}],["served",{"2":{"577":1}}],["serves",{"2":{"459":1}}],["serve",{"2":{"459":3,"2817":1}}],["servertype",{"2":{"2667":1}}],["server",{"2":{"371":1,"427":1,"458":1,"2474":1,"2664":1,"2666":2,"2699":1,"2890":1}}],["serratus",{"2":{"211":1}}],["serenity",{"2":{"211":1}}],["serpent65",{"2":{"211":1}}],["serious",{"2":{"371":1,"2724":1}}],["series",{"0":{"2458":1},"2":{"149":1,"249":1,"387":2,"519":1,"589":1,"746":1,"747":1,"1471":1,"2483":1,"2934":1}}],["serialport>",{"2":{"2379":1}}],["serialized",{"2":{"1531":1,"1532":3}}],["serial",{"0":{"1189":1,"1200":1,"1314":1,"2259":1},"1":{"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1209":1,"1210":1},"2":{"30":1,"45":1,"63":2,"65":1,"74":1,"93":1,"94":1,"111":1,"112":2,"114":3,"133":2,"134":2,"149":2,"176":2,"191":5,"199":3,"277":11,"285":1,"308":2,"317":1,"568":7,"682":1,"1189":2,"1190":1,"1191":2,"1192":2,"1194":2,"1195":5,"1197":6,"1198":8,"1200":8,"1201":3,"1202":3,"1204":4,"1205":1,"1206":2,"1266":2,"1314":1,"1619":1,"1998":1,"2010":1,"2013":1,"2254":4,"2255":1,"2259":1,"2268":7,"2287":4,"2290":1,"2291":3,"2371":1,"2379":1,"2477":1,"2479":1,"2481":1,"2487":1,"2492":1,"2495":2,"2501":1,"2667":1,"2685":1,"2695":7,"2697":1,"2841":1,"2873":2}}],["sergiopoverony",{"2":{"114":1}}],["sentence",{"2":{"2310":1}}],["sentences",{"2":{"681":1,"1516":1,"1732":1}}],["sent",{"2":{"211":1,"263":2,"297":1,"320":1,"644":1,"1249":1,"1280":1,"1283":1,"1284":1,"1285":1,"1359":1,"1374":2,"1378":1,"1421":1,"1451":2,"1458":1,"1480":1,"1495":1,"1511":1,"1645":1,"1675":1,"1751":1,"1758":1,"1765":1,"1775":1,"1990":2,"1995":1,"2017":2,"2021":3,"2023":1,"2024":1,"2052":1,"2178":1,"2212":2,"2215":1,"2249":1,"2250":1,"2252":2,"2270":1,"2293":5,"2302":1,"2340":1,"2463":1,"2543":1,"2833":1,"2910":4,"2911":1,"2914":1,"2917":1,"2919":1}}],["sensible",{"2":{"2167":1}}],["sensitivity",{"2":{"1989":1,"2006":1,"2014":1}}],["sensitive",{"2":{"521":1,"642":1,"1444":1,"2006":3}}],["sensing",{"2":{"1310":1}}],["sense75",{"2":{"222":1}}],["senselessclay",{"2":{"211":1}}],["sense",{"2":{"123":1,"520":1,"617":1,"1340":1,"1513":1,"2159":1,"2675":1,"2707":1,"2924":1}}],["sensors",{"2":{"160":1,"273":1,"276":1,"284":1,"285":1,"1997":1,"2014":5,"2015":1,"2019":2,"2721":1}}],["sensor",{"0":{"276":1,"284":1,"1997":1,"1998":1,"1999":1,"2010":1,"2011":1,"2013":1,"2014":1},"1":{"1998":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":1,"2015":1},"2":{"114":3,"118":2,"149":4,"175":1,"176":1,"249":2,"273":3,"276":1,"284":1,"285":1,"328":1,"693":2,"1997":2,"1998":5,"1999":5,"2000":1,"2002":2,"2005":1,"2006":7,"2007":4,"2010":4,"2011":2,"2012":2,"2013":5,"2014":15,"2015":2,"2016":7,"2019":3}}],["sends",{"0":{"2463":1},"2":{"202":1,"673":1,"1361":1,"1374":1,"1416":1,"1448":1,"1457":1,"1458":1,"1459":1,"1519":1,"1684":2,"1740":1,"2019":3,"2021":1,"2164":1,"2302":4,"2516":1,"2559":1,"2610":1,"2745":1,"2784":1,"2877":1,"2918":1,"2919":1}}],["sendstring",{"0":{"157":1,"2879":1},"2":{"114":1,"160":1,"188":1,"191":1,"211":1,"1453":1,"1480":1,"2214":1,"2878":1,"2879":3,"2880":53}}],["sending",{"0":{"1324":1,"1917":1,"2050":1},"2":{"176":2,"191":2,"199":1,"559":1,"624":1,"1189":1,"1460":1,"1656":1,"1724":1,"1726":1,"1744":1,"1988":1,"1990":1,"2021":1,"2030":1,"2047":1,"2293":1,"2302":1,"2411":1,"2750":1,"2875":1,"2877":1}}],["sendyyeah",{"2":{"74":1}}],["sendz",{"2":{"74":1}}],["send",{"0":{"1450":1,"2056":1,"2212":1,"2221":1,"2223":1,"2225":1,"2227":1,"2229":1,"2231":1,"2233":1,"2235":1,"2237":1,"2240":1,"2241":1,"2305":1,"2307":1,"2309":1,"2342":1,"2467":1},"1":{"1451":1,"1452":1,"1453":1,"1454":1,"2057":1,"2213":1,"2214":1,"2215":1,"2216":1,"2217":1,"2218":1,"2219":1,"2220":1,"2221":1,"2222":2,"2223":1,"2224":2,"2225":1,"2226":2,"2227":1,"2228":2,"2229":1,"2230":2,"2231":1,"2232":2,"2233":1,"2234":2,"2235":1,"2236":2,"2237":1,"2238":2,"2239":1,"2240":1,"2241":1,"2343":1},"2":{"50":1,"94":1,"114":1,"149":1,"157":1,"160":1,"176":1,"190":1,"191":4,"195":1,"196":3,"222":1,"236":1,"249":1,"266":1,"294":1,"572":1,"591":6,"628":1,"629":1,"770":1,"773":1,"779":1,"1256":1,"1353":1,"1375":2,"1393":1,"1413":1,"1417":1,"1442":2,"1443":3,"1444":2,"1448":2,"1450":8,"1451":2,"1452":5,"1454":6,"1459":1,"1466":1,"1480":1,"1512":1,"1529":5,"1532":1,"1533":1,"1596":1,"1599":2,"1616":1,"1646":1,"1659":1,"1670":4,"1720":1,"1724":1,"1725":1,"1726":1,"1727":1,"1736":1,"1737":3,"1746":7,"1751":1,"1778":1,"1801":3,"1804":1,"1807":2,"1913":1,"1918":2,"1947":1,"1948":4,"1974":1,"1990":3,"2019":1,"2021":5,"2023":1,"2046":1,"2050":2,"2051":3,"2052":3,"2056":1,"2057":1,"2162":2,"2167":2,"2168":3,"2170":10,"2212":1,"2213":1,"2215":7,"2216":1,"2218":1,"2221":1,"2225":1,"2227":1,"2240":2,"2241":2,"2252":9,"2253":5,"2269":1,"2270":3,"2291":1,"2293":2,"2301":2,"2302":1,"2307":1,"2310":8,"2311":1,"2324":1,"2325":3,"2341":1,"2342":1,"2343":1,"2350":1,"2364":1,"2411":5,"2459":2,"2463":2,"2468":1,"2545":3,"2556":1,"2557":1,"2559":1,"2560":1,"2562":2,"2563":4,"2564":2,"2784":1,"2822":1,"2839":1,"2849":1,"2875":2,"2879":3,"2907":2,"2917":2}}],["sectors",{"2":{"751":3}}],["sector",{"2":{"333":1,"751":3,"753":2,"756":2}}],["section>",{"2":{"495":2,"496":2}}],["sections",{"0":{"346":1,"356":1},"2":{"194":1,"335":1,"659":1,"1379":1,"2180":1,"2461":1,"2550":1,"2573":1,"2614":1,"2627":1,"2689":1,"2715":1,"2747":1,"2773":1}}],["section",{"0":{"477":1},"2":{"31":2,"34":1,"124":1,"195":1,"206":1,"236":1,"240":1,"350":1,"376":1,"398":1,"474":1,"475":1,"494":4,"502":1,"520":1,"665":1,"685":1,"686":1,"743":2,"749":1,"755":1,"1195":2,"1197":1,"1198":2,"1309":1,"1327":1,"1421":1,"1531":1,"1627":1,"1753":1,"2178":1,"2274":1,"2293":1,"2306":1,"2386":1,"2411":1,"2416":1,"2430":1,"2436":1,"2475":1,"2495":2,"2496":2,"2557":1,"2560":1,"2575":1,"2602":1,"2606":1,"2609":1,"2625":2,"2644":1,"2648":1,"2688":1,"2690":1,"2691":1,"2702":1,"2711":1,"2720":1,"2750":1,"2752":1,"2754":1,"2787":2,"2923":1,"2924":1,"2928":1,"2931":1}}],["security",{"0":{"312":1},"2":{"312":8,"317":1,"1444":1}}],["secure",{"0":{"2171":1,"2872":1},"1":{"2172":1,"2173":1,"2174":1,"2175":1,"2176":1,"2177":1},"2":{"160":2,"188":2,"191":2,"2171":2,"2173":1,"2175":4,"2176":3,"2177":7,"2428":1,"2660":1,"2784":1,"2872":3,"2933":1}}],["secondary",{"2":{"176":1,"191":1,"713":1,"1469":1,"1471":1,"1639":1,"2006":1,"2009":1,"2063":1,"2873":11}}],["second",{"0":{"2698":1},"2":{"90":2,"157":1,"266":1,"432":1,"563":1,"613":1,"614":2,"641":1,"654":1,"728":1,"745":1,"1378":1,"1450":1,"1452":1,"1468":1,"1472":1,"1480":2,"1497":1,"1519":1,"1662":2,"1827":1,"1830":1,"1833":1,"1836":1,"1840":1,"1930":3,"1933":1,"2014":2,"2060":1,"2063":1,"2167":1,"2254":1,"2265":1,"2271":1,"2302":2,"2303":1,"2420":1,"2449":1,"2496":1,"2605":1,"2627":1,"2667":1,"2698":1,"2869":1,"2910":3,"2929":3,"2930":1}}],["seconds>",{"2":{"432":1}}],["seconds",{"0":{"25":1},"2":{"11":1,"530":1,"531":2,"532":4,"559":1,"579":1,"655":1,"1550":1,"1587":1,"1592":2,"1627":1,"1762":1,"2372":5,"2378":1,"2379":1,"2380":1,"2381":1,"2385":1,"2515":1,"2850":2,"2854":1,"2872":1,"2873":1}}],["setpixel",{"2":{"2750":4}}],["setpinoutputopendrain",{"2":{"243":1}}],["setpinoutputpushpull",{"2":{"243":1}}],["setpinoutput",{"2":{"243":1}}],["setpininputlow",{"2":{"243":1}}],["setpininput",{"2":{"243":1}}],["setpininputhigh",{"2":{"34":2,"243":1}}],["setrgb",{"2":{"1424":5,"2067":1,"2198":5,"2205":3}}],["settling",{"2":{"1407":3}}],["settle",{"2":{"1406":1,"2915":1}}],["settles",{"2":{"1406":1,"2916":1}}],["settled",{"2":{"289":1,"320":1,"2914":6,"2919":1}}],["setter",{"2":{"542":2}}],["setta21",{"2":{"143":2}}],["settable",{"2":{"114":1}}],["setting",{"0":{"472":1,"474":1,"495":1,"566":1,"1297":1,"1797":1,"2036":1,"2197":1,"2263":1,"2496":1,"2584":1,"2611":1,"2646":1,"2657":1,"2780":1},"1":{"567":1,"1798":1,"2037":1,"2264":1,"2265":1,"2266":1,"2267":1,"2612":1,"2613":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1,"2621":1,"2622":1},"2":{"87":1,"88":3,"93":1,"104":3,"127":3,"176":2,"191":1,"303":1,"377":1,"427":1,"472":2,"480":1,"492":1,"554":3,"559":1,"562":1,"573":2,"590":1,"613":1,"635":1,"674":1,"698":1,"729":1,"763":1,"765":3,"858":1,"888":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1197":1,"1313":1,"1367":1,"1409":1,"1419":1,"1442":1,"1481":1,"1483":1,"1487":1,"1496":1,"1497":1,"1511":1,"1532":1,"1592":1,"1595":1,"1678":1,"1679":1,"1730":1,"1733":1,"1747":1,"1764":1,"1793":1,"1797":1,"1844":1,"1929":5,"1930":3,"1931":1,"1954":2,"1998":1,"1999":2,"2000":1,"2002":3,"2003":1,"2004":1,"2006":4,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":2,"2016":1,"2017":2,"2018":1,"2019":1,"2032":3,"2042":1,"2044":1,"2066":1,"2191":1,"2207":1,"2210":1,"2243":1,"2265":1,"2266":2,"2271":2,"2289":2,"2378":1,"2380":1,"2387":1,"2389":1,"2390":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2400":1,"2407":1,"2409":6,"2410":1,"2425":1,"2489":1,"2494":1,"2496":1,"2667":1,"2680":1,"2783":1,"2899":3,"2913":1}}],["settings",{"0":{"759":1,"1987":1,"1994":1,"2002":1,"2003":1,"2004":1,"2006":1,"2007":1,"2185":1,"2882":1,"2883":1,"2884":1,"2887":1},"1":{"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1},"2":{"69":1,"74":1,"75":1,"114":1,"131":1,"134":1,"347":1,"387":1,"553":1,"555":2,"562":5,"639":1,"716":1,"759":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1197":1,"1317":1,"1367":1,"1412":3,"1413":3,"1437":2,"1443":1,"1480":1,"1583":1,"1586":1,"1599":1,"1601":1,"1672":2,"1675":3,"1757":1,"1929":1,"1930":2,"1931":1,"1932":1,"1933":1,"1934":1,"1988":1,"2002":1,"2006":1,"2211":1,"2271":1,"2291":1,"2316":1,"2409":1,"2411":1,"2439":1,"2440":1,"2590":1,"2644":1,"2662":4,"2667":1,"2707":1,"2710":1,"2721":1,"2780":1,"2783":1,"2877":1,"2885":1,"2901":1,"2908":1,"2909":1,"2910":1}}],["sets",{"2":{"50":1,"559":5,"562":4,"568":1,"633":1,"639":3,"695":1,"698":3,"712":1,"1413":1,"1416":1,"1422":5,"1487":5,"1656":2,"1675":3,"1682":1,"1793":1,"1846":6,"1932":3,"1948":4,"1999":5,"2000":3,"2002":3,"2006":7,"2012":1,"2014":8,"2019":3,"2020":2,"2028":1,"2039":1,"2069":8,"2074":1,"2180":1,"2202":2,"2266":1,"2268":3,"2271":3,"2283":2,"2315":3,"2316":1,"2373":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2407":2,"2440":1,"2721":1,"2900":2}}],["sethsv",{"0":{"2137":1,"2139":1},"1":{"2140":1},"2":{"49":1,"639":1,"1413":7,"2067":1,"2075":1,"2198":7,"2201":2,"2205":3}}],["setups",{"2":{"716":1,"719":1,"1956":6,"2554":1}}],["setup",{"0":{"358":1,"506":1,"1192":1,"1195":1,"1198":1,"1373":1,"1514":1,"1515":1,"1677":1,"1738":1,"2585":1,"2586":1,"2593":1,"2621":1,"2662":1},"1":{"507":1,"508":1,"509":1,"1515":1,"1516":1,"1517":1,"1678":1,"1679":1,"2594":1,"2595":1,"2596":1},"2":{"14":1,"23":1,"93":1,"176":1,"358":1,"378":1,"387":1,"388":1,"390":2,"416":1,"417":1,"418":1,"485":1,"502":1,"506":1,"523":1,"631":1,"674":1,"764":1,"1197":1,"1244":1,"1265":1,"1311":1,"1419":1,"1497":1,"1516":1,"1662":1,"1941":1,"1947":1,"1950":1,"1951":1,"1956":2,"2018":1,"2189":1,"2213":1,"2279":1,"2318":1,"2410":1,"2424":1,"2449":1,"2456":1,"2457":1,"2458":1,"2573":1,"2584":1,"2591":2,"2592":1,"2595":1,"2601":1,"2603":1,"2621":8,"2656":1,"2807":1,"2927":2}}],["set",{"0":{"406":1,"704":1,"706":1,"709":1,"737":1,"739":1,"809":1,"811":1,"813":1,"815":1,"817":1,"819":1,"836":1,"838":1,"840":1,"842":1,"844":1,"846":1,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1303":1,"1305":1,"1424":1,"1426":1,"1653":1,"1705":1,"1728":1,"1730":1,"1786":1,"1788":1,"1859":1,"1861":1,"1883":1,"1885":1,"1889":1,"1891":1,"1977":1,"2043":1,"2085":1,"2087":1,"2121":1,"2123":1,"2127":1,"2129":1,"2329":1,"2333":1,"2335":1,"2425":1,"2658":1},"1":{"705":1,"707":1,"710":1,"738":1,"740":1,"810":1,"812":1,"814":1,"816":1,"818":1,"820":1,"837":1,"839":1,"841":1,"843":1,"845":1,"847":1,"869":1,"871":1,"873":1,"875":1,"877":1,"879":1,"901":1,"903":1,"905":1,"907":1,"909":1,"911":1,"936":1,"938":1,"940":1,"942":1,"944":1,"946":1,"970":1,"972":1,"974":1,"976":1,"978":1,"980":1,"1004":1,"1006":1,"1008":1,"1010":1,"1012":1,"1014":1,"1038":1,"1040":1,"1042":1,"1044":1,"1046":1,"1048":1,"1072":1,"1074":1,"1076":1,"1078":1,"1080":1,"1082":1,"1106":1,"1108":1,"1110":1,"1112":1,"1114":1,"1116":1,"1140":1,"1142":1,"1144":1,"1146":1,"1148":1,"1150":1,"1174":1,"1176":1,"1178":1,"1180":1,"1182":1,"1184":1,"1227":1,"1229":1,"1231":1,"1233":1,"1235":1,"1237":1,"1304":1,"1306":1,"1654":1,"1706":1,"1729":1,"1731":1,"1787":1,"1789":1,"1860":1,"1862":1,"1884":1,"1886":1,"1890":1,"1892":1,"1978":1,"2086":1,"2088":1,"2122":1,"2124":1,"2128":1,"2130":1,"2330":1,"2334":1,"2336":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1},"2":{"6":1,"23":1,"25":1,"28":1,"30":1,"33":1,"38":1,"49":1,"50":2,"63":1,"83":1,"90":1,"92":1,"93":1,"114":2,"134":1,"141":1,"153":2,"163":1,"173":2,"191":5,"195":2,"199":3,"209":1,"211":1,"222":2,"228":1,"236":4,"243":6,"266":2,"277":2,"285":2,"333":1,"373":1,"416":2,"417":2,"418":2,"419":1,"423":1,"428":1,"442":1,"453":2,"467":2,"470":1,"471":1,"472":1,"474":1,"487":1,"490":1,"495":1,"503":1,"529":1,"553":1,"554":1,"558":1,"559":1,"562":1,"566":4,"569":1,"577":1,"586":1,"615":1,"631":1,"633":6,"635":1,"637":2,"649":1,"650":2,"651":2,"653":1,"659":1,"664":1,"667":3,"682":1,"698":3,"700":1,"704":1,"705":3,"706":1,"707":3,"709":1,"710":1,"713":1,"719":1,"724":2,"727":1,"737":1,"738":3,"739":1,"740":3,"751":1,"758":16,"761":1,"765":1,"769":4,"798":1,"807":1,"808":1,"809":1,"810":3,"811":1,"812":3,"813":1,"814":1,"815":1,"816":1,"824":1,"826":1,"834":1,"835":1,"836":1,"837":3,"838":1,"839":3,"840":1,"841":1,"842":1,"843":1,"853":1,"855":1,"866":1,"867":1,"868":1,"869":3,"870":1,"871":3,"872":1,"873":1,"874":1,"875":1,"885":1,"887":1,"896":1,"897":1,"900":1,"901":3,"902":1,"903":3,"904":1,"905":1,"906":1,"907":1,"917":1,"919":1,"920":1,"931":1,"932":1,"935":1,"936":3,"937":1,"938":3,"939":1,"940":1,"941":1,"942":1,"952":1,"954":1,"965":1,"966":1,"969":1,"970":3,"971":1,"972":3,"973":1,"974":1,"975":1,"976":1,"986":1,"988":1,"999":1,"1000":1,"1003":1,"1004":3,"1005":1,"1006":3,"1007":1,"1008":1,"1009":1,"1010":1,"1020":1,"1022":1,"1033":1,"1034":1,"1037":1,"1038":3,"1039":1,"1040":3,"1041":1,"1042":1,"1043":1,"1044":1,"1054":1,"1056":1,"1067":1,"1068":1,"1071":1,"1072":3,"1073":1,"1074":3,"1075":1,"1076":1,"1077":1,"1078":1,"1088":1,"1090":1,"1091":1,"1101":1,"1102":1,"1105":1,"1106":3,"1107":1,"1108":3,"1109":1,"1110":1,"1111":1,"1112":1,"1122":1,"1124":1,"1125":1,"1135":1,"1136":1,"1139":1,"1140":3,"1141":1,"1142":3,"1143":1,"1144":1,"1145":1,"1146":1,"1156":1,"1158":1,"1169":1,"1170":1,"1173":1,"1174":3,"1175":1,"1176":3,"1177":1,"1178":1,"1179":1,"1180":1,"1212":1,"1214":1,"1222":1,"1223":1,"1226":1,"1227":3,"1228":1,"1229":3,"1230":1,"1231":1,"1232":1,"1233":1,"1242":1,"1245":1,"1249":1,"1263":1,"1266":1,"1281":1,"1282":1,"1303":1,"1304":3,"1305":1,"1306":3,"1330":1,"1369":1,"1375":4,"1378":1,"1379":1,"1391":1,"1392":1,"1394":1,"1395":1,"1410":4,"1411":1,"1412":1,"1413":9,"1417":1,"1419":1,"1421":1,"1422":9,"1424":2,"1425":1,"1426":2,"1427":1,"1428":1,"1441":6,"1443":2,"1446":1,"1468":1,"1471":2,"1474":1,"1475":2,"1478":2,"1480":1,"1481":4,"1482":1,"1485":1,"1492":1,"1497":1,"1511":1,"1512":2,"1517":1,"1522":1,"1532":1,"1549":1,"1552":1,"1557":1,"1562":1,"1572":1,"1573":1,"1583":1,"1584":1,"1595":2,"1601":1,"1602":2,"1603":1,"1614":4,"1615":1,"1619":3,"1638":6,"1641":1,"1642":1,"1653":1,"1672":1,"1675":3,"1677":1,"1678":2,"1681":3,"1696":1,"1702":1,"1707":1,"1728":1,"1730":1,"1746":1,"1751":6,"1752":4,"1764":2,"1769":2,"1771":4,"1779":1,"1786":1,"1787":2,"1788":1,"1789":1,"1792":1,"1798":3,"1840":1,"1841":2,"1844":2,"1846":5,"1849":4,"1859":1,"1860":1,"1861":1,"1862":1,"1863":1,"1865":1,"1883":1,"1884":1,"1885":1,"1886":1,"1889":1,"1890":1,"1891":1,"1892":1,"1919":49,"1927":3,"1929":1,"1930":1,"1932":1,"1933":5,"1942":1,"1943":6,"1946":1,"1948":5,"1952":4,"1963":1,"1967":1,"1977":1,"1985":1,"1988":6,"1989":1,"1990":1,"2002":1,"2006":1,"2014":3,"2015":1,"2017":1,"2019":3,"2020":3,"2021":2,"2023":2,"2024":4,"2025":13,"2027":4,"2028":4,"2030":2,"2031":1,"2032":5,"2039":13,"2042":3,"2043":8,"2044":2,"2060":1,"2061":2,"2063":3,"2064":1,"2066":2,"2069":8,"2072":4,"2073":4,"2074":3,"2085":1,"2086":3,"2087":1,"2088":3,"2089":1,"2091":1,"2121":1,"2122":1,"2123":1,"2124":1,"2127":1,"2128":1,"2129":1,"2130":1,"2137":1,"2138":3,"2139":1,"2140":3,"2163":1,"2169":4,"2172":1,"2190":6,"2191":1,"2194":1,"2195":3,"2197":2,"2198":10,"2199":2,"2201":2,"2202":2,"2203":1,"2207":4,"2210":1,"2212":1,"2216":1,"2239":1,"2246":2,"2247":12,"2253":1,"2259":1,"2266":1,"2268":3,"2271":5,"2281":2,"2283":1,"2288":2,"2290":1,"2291":3,"2293":3,"2294":1,"2295":1,"2302":2,"2303":1,"2308":1,"2312":6,"2315":1,"2316":4,"2324":2,"2329":1,"2330":1,"2373":1,"2374":1,"2375":1,"2389":1,"2400":1,"2402":1,"2409":1,"2410":2,"2411":2,"2412":1,"2420":1,"2439":1,"2440":1,"2444":1,"2445":1,"2459":1,"2465":1,"2467":1,"2489":1,"2496":1,"2501":1,"2502":1,"2513":2,"2520":1,"2528":2,"2531":2,"2532":49,"2533":3,"2560":1,"2569":1,"2575":1,"2576":4,"2584":1,"2587":1,"2590":1,"2609":1,"2611":1,"2613":1,"2622":1,"2625":1,"2630":1,"2633":4,"2644":3,"2645":1,"2646":2,"2657":1,"2658":2,"2660":1,"2662":2,"2667":2,"2669":1,"2709":1,"2722":1,"2747":2,"2748":5,"2749":2,"2750":10,"2754":1,"2778":1,"2779":2,"2780":5,"2788":1,"2834":1,"2839":1,"2851":2,"2853":1,"2872":2,"2877":1,"2879":2,"2899":1,"2901":1,"2903":1,"2910":4,"2919":1,"2928":1,"2932":1,"2933":1}}],["se",{"2":{"5":1,"176":1,"1769":1,"2175":4,"2878":1}}],["seeks",{"2":{"2515":1}}],["seen",{"2":{"175":1,"232":1,"682":1,"1479":1,"1532":1,"2268":1,"2566":1,"2567":1,"2636":1}}],["seemingly",{"2":{"2567":4}}],["seem",{"2":{"119":1,"273":1,"276":2,"1373":1,"1804":1,"2750":1}}],["seems",{"2":{"50":1,"1358":1,"2567":1}}],["sees",{"0":{"1667":1},"2":{"49":1,"215":1,"1751":1}}],["see",{"2":{"2":1,"14":1,"118":1,"132":1,"138":1,"152":1,"153":1,"166":1,"172":1,"174":1,"179":1,"182":2,"186":1,"189":1,"196":1,"228":1,"229":1,"232":1,"240":1,"247":1,"288":1,"289":1,"297":1,"298":1,"304":1,"306":1,"315":1,"316":1,"320":1,"331":1,"335":1,"369":1,"371":1,"387":2,"397":1,"405":1,"417":1,"429":1,"464":1,"465":1,"466":1,"486":1,"489":2,"517":1,"553":1,"559":2,"562":4,"568":3,"572":2,"592":1,"597":1,"604":1,"667":2,"674":1,"683":2,"695":1,"696":1,"713":1,"716":3,"718":1,"723":1,"743":2,"749":1,"752":1,"755":1,"763":1,"766":1,"767":1,"888":1,"1195":4,"1198":4,"1286":1,"1309":1,"1312":2,"1315":1,"1316":1,"1317":1,"1327":1,"1329":1,"1330":5,"1335":1,"1340":1,"1342":1,"1352":1,"1353":1,"1356":1,"1357":1,"1364":1,"1372":1,"1375":1,"1395":1,"1400":1,"1406":2,"1411":1,"1413":1,"1415":1,"1416":3,"1422":1,"1434":1,"1438":2,"1441":1,"1450":1,"1456":1,"1470":1,"1474":1,"1483":1,"1487":1,"1488":1,"1493":1,"1497":1,"1512":1,"1522":1,"1527":1,"1538":1,"1553":1,"1564":1,"1586":2,"1587":2,"1589":1,"1599":1,"1635":1,"1636":1,"1637":1,"1667":1,"1684":2,"1691":1,"1738":1,"1740":1,"1743":1,"1756":3,"1790":1,"1839":1,"1917":1,"1954":2,"1981":1,"1986":1,"1988":2,"2006":2,"2018":1,"2020":1,"2021":1,"2030":2,"2042":1,"2059":1,"2073":1,"2074":1,"2159":1,"2166":1,"2178":1,"2179":1,"2188":1,"2191":1,"2194":1,"2195":1,"2212":1,"2251":1,"2268":1,"2286":1,"2312":1,"2319":1,"2375":1,"2386":1,"2403":2,"2406":1,"2407":2,"2411":6,"2421":1,"2428":1,"2438":1,"2439":1,"2440":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1,"2459":2,"2473":1,"2483":1,"2502":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2551":1,"2555":1,"2565":1,"2577":1,"2579":1,"2603":1,"2605":1,"2608":1,"2609":2,"2615":1,"2627":1,"2630":1,"2643":2,"2679":1,"2687":1,"2707":3,"2709":1,"2714":1,"2716":1,"2717":1,"2719":1,"2720":1,"2721":4,"2724":1,"2725":2,"2749":2,"2750":2,"2760":3,"2761":1,"2766":1,"2769":3,"2776":1,"2787":1,"2788":1,"2844":1,"2873":4,"2882":1,"2899":1,"2901":2,"2918":1,"2920":1,"2932":1}}],["swy",{"2":{"857":4,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1}}],["sw1",{"2":{"731":6,"860":5,"925":5,"959":5,"993":5,"1027":5,"1061":5,"1095":5,"1129":5,"1163":5}}],["swo",{"2":{"390":1}}],["swordfish",{"2":{"222":1}}],["swclk",{"2":{"390":2,"2500":1,"2501":1,"2667":1,"2684":1}}],["swdio",{"2":{"390":2,"2500":1,"2501":1,"2667":1,"2684":1}}],["swd",{"2":{"378":1,"384":1,"390":1,"2684":1}}],["swx",{"2":{"236":1,"854":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1092":3,"1123":1,"1126":3,"1157":1,"1160":3}}],["sw",{"2":{"217":1,"854":3,"857":15,"918":1,"922":2,"953":1,"956":2,"987":1,"990":2,"1021":1,"1024":2,"1055":1,"1058":2,"1089":2,"1092":6,"1123":2,"1126":6,"1157":2,"1160":6,"1769":1,"2181":1,"2537":1}}],["switzerland",{"2":{"2880":2}}],["switched",{"2":{"1421":1,"1480":1,"2182":1,"2645":1}}],["switches",{"0":{"1620":1,"1918":1,"2856":1},"1":{"1621":1,"1622":1,"1623":1,"1624":1,"1625":1},"2":{"114":1,"199":1,"236":1,"247":1,"249":1,"620":1,"1310":1,"1351":1,"1406":1,"1407":1,"1416":1,"1487":1,"1564":1,"1620":1,"1621":3,"1675":2,"1759":1,"1918":1,"1955":1,"2164":1,"2257":1,"2415":1,"2416":2,"2417":1,"2418":1,"2459":1,"2632":1,"2714":1,"2798":1,"2856":2,"2873":1}}],["switchplate",{"2":{"211":1}}],["switchs",{"2":{"160":1}}],["switching",{"0":{"1416":1,"2290":1,"2528":1},"1":{"1417":1},"2":{"50":1,"114":1,"132":1,"191":1,"573":1,"1350":2,"1370":1,"1416":1,"1418":1,"1547":1,"1735":1,"1942":1,"1954":2,"1955":2,"2047":1,"2280":1,"2286":2,"2302":1,"2370":1,"2496":1,"2528":1}}],["switch",{"0":{"26":1,"105":1,"231":1,"247":1,"1351":1,"1621":1,"1624":2,"1625":2,"1649":1,"1650":1,"1651":1,"1652":1,"1769":1,"2312":1},"2":{"3":1,"15":1,"16":1,"94":1,"105":15,"107":1,"114":8,"191":2,"194":3,"195":2,"231":3,"235":1,"236":5,"247":7,"249":4,"285":1,"307":1,"317":1,"324":1,"325":1,"328":1,"390":1,"559":3,"591":2,"620":1,"629":1,"630":1,"683":1,"1308":1,"1310":3,"1328":1,"1351":1,"1363":1,"1369":1,"1377":2,"1378":1,"1406":5,"1407":1,"1413":2,"1416":5,"1420":3,"1421":1,"1424":1,"1425":1,"1442":1,"1443":1,"1450":3,"1451":2,"1456":1,"1466":1,"1485":1,"1497":3,"1504":2,"1511":3,"1527":2,"1547":1,"1594":1,"1599":1,"1606":5,"1607":1,"1611":2,"1612":5,"1614":1,"1616":1,"1619":3,"1620":8,"1621":7,"1622":7,"1624":1,"1625":1,"1639":2,"1645":2,"1649":1,"1650":1,"1651":1,"1652":1,"1675":6,"1759":2,"1761":1,"1765":1,"1766":1,"1769":1,"1771":1,"1775":1,"1788":1,"1789":1,"1844":1,"1864":1,"1866":1,"1918":1,"1939":1,"1952":1,"1955":1,"1956":1,"1986":1,"2000":1,"2025":1,"2027":1,"2034":1,"2037":1,"2042":1,"2043":2,"2044":1,"2066":1,"2073":1,"2074":1,"2090":1,"2092":1,"2160":2,"2161":1,"2162":2,"2163":2,"2164":1,"2165":1,"2167":1,"2168":2,"2170":4,"2191":2,"2194":1,"2218":1,"2277":1,"2286":2,"2287":2,"2290":3,"2291":1,"2308":1,"2309":1,"2310":2,"2311":2,"2312":7,"2324":1,"2325":6,"2370":1,"2386":1,"2391":1,"2407":1,"2411":1,"2416":2,"2420":1,"2421":5,"2427":1,"2428":2,"2438":1,"2459":3,"2476":1,"2521":1,"2540":1,"2545":6,"2548":2,"2562":1,"2563":1,"2564":1,"2644":1,"2652":1,"2656":1,"2667":1,"2713":1,"2721":2,"2777":1,"2787":4,"2847":2,"2856":1,"2873":1,"2883":1,"2888":1,"2899":3,"2900":2,"2901":2,"2908":3,"2909":2,"2910":1,"2912":1,"2913":1,"2916":1,"2917":1,"2919":1,"2930":3,"2941":1}}],["swillkb",{"2":{"2415":1}}],["swipe",{"2":{"2003":12}}],["swirls",{"2":{"2185":1}}],["swirling",{"2":{"2183":1,"2187":1}}],["swirl",{"2":{"348":1,"2181":2,"2183":1,"2184":2,"2185":2,"2186":1,"2187":1,"2209":1,"2210":1,"2537":2,"2887":1}}],["swift65",{"2":{"266":2}}],["swiftrax",{"2":{"191":2,"277":1}}],["swiss",{"2":{"211":1,"2417":1,"2880":4}}],["sweet16v2",{"2":{"322":4,"328":1}}],["sweep",{"2":{"191":1,"249":1}}],["swedish",{"2":{"5":2,"2877":1,"2878":1,"2880":11}}],["swapping",{"2":{"194":1,"751":1,"1198":1,"1346":3,"2298":1,"2501":1,"2697":1,"2801":1,"2882":1}}],["swapped",{"0":{"1346":1},"2":{"166":1,"222":1,"743":1,"755":1,"1284":2,"1770":1}}],["swap",{"0":{"2295":1,"2297":1,"2544":1},"1":{"2296":1,"2297":1,"2298":1,"2299":1},"2":{"94":1,"114":1,"149":1,"157":1,"176":2,"191":1,"199":2,"211":2,"231":4,"247":1,"317":1,"1197":2,"1198":2,"1208":1,"1209":1,"1210":1,"1392":1,"1479":4,"1480":6,"1527":4,"1621":1,"1659":1,"2295":4,"2296":3,"2297":17,"2298":3,"2299":9,"2370":5,"2513":31,"2521":5,"2531":31,"2544":16}}],["suturation",{"2":{"2870":1}}],["sudden",{"2":{"2372":1}}],["sudo",{"2":{"521":1,"1312":8,"1313":6,"1329":1,"2410":1,"2594":7,"2710":1}}],["sunk",{"2":{"729":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1}}],["sunsetter",{"2":{"211":1}}],["suffer",{"2":{"717":1,"752":1,"1491":1}}],["sufficient",{"2":{"2290":1,"2569":1,"2722":1,"2929":1}}],["suffices",{"2":{"1751":1}}],["suffice",{"2":{"411":1}}],["suffix",{"2":{"625":4}}],["sugar|",{"2":{"681":1}}],["sugar||order",{"2":{"681":1}}],["sugar",{"2":{"681":1}}],["suggests",{"2":{"2735":1}}],["suggest",{"2":{"2433":1}}],["suggestions",{"2":{"618":1,"2555":1,"2609":1}}],["suggested",{"2":{"199":1,"397":1,"644":1,"2046":1,"2310":1,"2619":1,"2620":1}}],["summary",{"0":{"2743":1},"2":{"356":1}}],["sust",{"2":{"1919":1,"2532":1}}],["sustain",{"2":{"249":1,"1919":2,"2532":2}}],["susceptible",{"2":{"397":1,"1406":2,"1410":1}}],["suspense",{"2":{"222":1}}],["suspend",{"0":{"647":2,"648":1,"1900":1,"2144":1},"1":{"1901":1,"2145":1},"2":{"92":3,"93":1,"94":1,"112":1,"114":4,"133":1,"134":1,"149":2,"176":1,"222":3,"249":1,"263":2,"266":1,"277":2,"288":1,"328":1,"559":1,"572":1,"645":2,"646":2,"647":2,"648":4,"1626":1,"1638":6,"1900":1,"2144":1,"2265":1,"2746":1,"2750":4,"2875":2}}],["suspended",{"2":{"74":1,"114":2,"134":1,"222":1,"249":2,"647":1,"1672":1,"1679":1,"1846":1,"1901":1,"2069":1,"2145":1}}],["suspending",{"2":{"25":1,"559":1}}],["succeeds",{"2":{"2268":1}}],["succeed",{"2":{"1807":6}}],["success",{"2":{"611":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1253":1,"1258":1,"1261":1,"2019":2,"2608":4,"2619":1}}],["successfully",{"2":{"463":1,"467":1,"609":1,"1439":1,"1807":1,"1948":1,"2265":1,"2283":1,"2501":1,"2602":1,"2698":1}}],["successful",{"2":{"380":1,"1205":1,"1250":1,"1421":1,"2271":1}}],["successive",{"2":{"266":1}}],["succession",{"2":{"191":1}}],["such",{"2":{"55":1,"69":1,"87":1,"103":1,"118":1,"123":1,"124":1,"126":1,"132":1,"153":1,"163":1,"198":1,"229":1,"230":1,"234":1,"240":1,"244":1,"246":1,"263":1,"284":2,"297":1,"302":1,"408":1,"414":1,"428":1,"431":3,"468":1,"489":1,"524":1,"546":1,"548":1,"562":1,"586":1,"590":1,"625":1,"632":1,"642":1,"643":1,"649":2,"656":1,"663":1,"682":1,"687":1,"746":1,"747":1,"756":1,"762":1,"1243":1,"1285":1,"1295":1,"1308":1,"1314":1,"1417":1,"1435":1,"1436":1,"1437":2,"1443":1,"1452":1,"1457":1,"1479":1,"1480":1,"1486":1,"1512":1,"1526":2,"1586":1,"1597":1,"1600":1,"1630":1,"1684":1,"1735":1,"1751":1,"1759":1,"1766":1,"1767":1,"1804":1,"1849":1,"1914":2,"1940":1,"2006":2,"2042":1,"2044":1,"2047":2,"2072":2,"2266":1,"2269":1,"2271":1,"2273":1,"2311":2,"2323":2,"2324":2,"2382":1,"2386":1,"2393":1,"2395":1,"2397":1,"2402":1,"2415":1,"2427":1,"2428":1,"2437":1,"2443":2,"2467":2,"2470":1,"2496":1,"2548":1,"2552":1,"2556":1,"2566":1,"2568":1,"2569":3,"2582":1,"2587":1,"2619":3,"2646":3,"2657":3,"2668":2,"2669":1,"2702":1,"2707":1,"2708":1,"2721":4,"2722":3,"2724":1,"2726":1,"2735":1,"2744":1,"2746":2,"2747":1,"2750":1,"2780":1,"2795":1,"2801":1,"2844":1,"2862":1,"2879":1,"2900":1,"2901":1,"2907":1,"2908":1,"2910":1,"2911":1,"2921":1,"2927":1,"2933":1}}],["surprised",{"2":{"2722":1}}],["surplus",{"2":{"160":1}}],["surrogate",{"2":{"2324":1,"2340":1}}],["surrounding",{"2":{"520":2,"2064":2}}],["surfaces",{"2":{"2420":3,"2749":4}}],["surface",{"2":{"191":1,"328":1,"1645":1,"1999":1,"2014":1,"2421":1,"2746":2,"2749":31,"2838":1}}],["sure",{"2":{"50":1,"390":1,"423":1,"520":2,"522":1,"565":1,"594":2,"597":1,"605":1,"608":1,"613":7,"614":1,"617":2,"666":1,"670":1,"681":1,"683":1,"684":1,"1314":2,"1316":1,"1335":1,"1358":1,"1361":1,"1413":1,"1416":1,"1417":1,"1466":1,"1511":1,"1603":1,"1609":1,"2251":1,"2258":1,"2271":1,"2286":1,"2310":1,"2312":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2403":1,"2410":1,"2421":1,"2422":1,"2424":1,"2427":1,"2446":1,"2449":1,"2490":1,"2496":1,"2501":1,"2572":1,"2592":1,"2599":1,"2610":1,"2612":1,"2627":1,"2638":1,"2645":1,"2658":1,"2721":1,"2750":1,"2882":1,"2884":1}}],["suits",{"2":{"2632":1}}],["suite",{"2":{"463":2,"467":2}}],["suited",{"2":{"211":1,"411":1}}],["suitable",{"2":{"153":1,"1362":1,"1410":1,"2573":1,"2802":1,"2901":1,"2942":1}}],["suihankey",{"2":{"143":6}}],["supremely",{"2":{"1444":1}}],["superfluous",{"2":{"2901":1}}],["supervisor",{"2":{"2734":2}}],["supercharged",{"2":{"1732":1}}],["superior",{"2":{"1394":1,"1407":1}}],["super",{"0":{"1466":1},"2":{"676":1,"2381":1,"2507":2,"2515":2,"2559":2,"2661":1}}],["superscripted",{"2":{"349":1}}],["superscript",{"0":{"349":1}}],["supersedes",{"2":{"2583":1}}],["superseded",{"2":{"3":1,"7":1,"15":1,"25":1,"38":1}}],["superseeds",{"2":{"236":1}}],["suppression",{"2":{"1758":1,"2917":1}}],["suppressed",{"2":{"1749":1,"1751":2,"1754":1,"1755":1,"1758":2,"2006":1}}],["suppress",{"2":{"328":1,"1751":3,"1955":1}}],["supposing",{"2":{"1759":1,"2167":1,"2914":1,"2941":1}}],["supposed",{"2":{"2191":1,"2928":1}}],["suppose",{"2":{"289":1,"2628":1,"2914":1}}],["support=1",{"2":{"2400":1}}],["supports",{"2":{"166":1,"243":1,"248":1,"331":1,"369":1,"374":1,"467":1,"512":1,"521":1,"556":1,"570":1,"595":1,"617":1,"646":1,"687":1,"692":1,"698":1,"726":1,"743":3,"746":1,"747":1,"755":1,"756":1,"797":1,"823":1,"852":1,"884":1,"916":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1121":1,"1155":1,"1193":1,"1211":1,"1392":1,"1408":1,"1416":2,"1430":1,"1655":1,"1675":1,"1677":1,"1928":1,"1948":1,"2001":1,"2005":1,"2006":1,"2014":1,"2178":1,"2254":1,"2258":1,"2284":1,"2285":1,"2286":1,"2290":1,"2291":1,"2322":2,"2323":1,"2324":5,"2410":1,"2438":3,"2489":1,"2567":1,"2583":1,"2657":1,"2702":1,"2703":1,"2747":2,"2748":4,"2902":1,"2914":1,"2924":1}}],["supporting",{"0":{"1428":1,"2786":1},"1":{"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"50":1,"374":1,"592":1,"1766":1,"2016":3,"2248":1,"2289":1,"2393":1,"2395":1,"2569":1,"2895":1}}],["supported",{"0":{"1354":1,"1386":1,"1408":1,"1673":1,"1691":1,"1937":1,"2276":1,"2367":1,"2701":1},"1":{"1409":1,"1410":1,"1411":1,"2368":1,"2702":1,"2703":1},"2":{"49":2,"69":1,"118":1,"137":1,"153":1,"154":2,"163":2,"172":1,"213":1,"248":1,"262":1,"266":1,"285":1,"316":1,"341":1,"374":1,"428":1,"431":1,"494":1,"522":1,"568":1,"595":1,"617":1,"657":1,"663":1,"674":1,"687":1,"692":1,"713":2,"718":1,"720":2,"743":1,"765":1,"1196":1,"1200":2,"1201":2,"1202":1,"1297":1,"1300":1,"1340":1,"1348":1,"1354":1,"1388":2,"1389":2,"1390":2,"1396":2,"1417":1,"1448":1,"1450":1,"1475":1,"1550":1,"1556":1,"1559":1,"1560":1,"1597":1,"1620":1,"1627":1,"1659":1,"1691":1,"1768":1,"1839":1,"1939":1,"1946":2,"1988":1,"1989":1,"1990":1,"1997":1,"2005":1,"2006":1,"2008":1,"2010":1,"2014":1,"2015":1,"2016":2,"2019":2,"2020":1,"2059":1,"2212":2,"2215":1,"2285":1,"2287":1,"2302":2,"2324":1,"2367":2,"2368":2,"2369":1,"2393":1,"2395":1,"2400":1,"2411":3,"2498":1,"2567":2,"2576":1,"2583":1,"2609":2,"2619":1,"2620":1,"2622":1,"2668":1,"2697":2,"2700":2,"2702":4,"2706":1,"2720":1,"2722":1,"2746":1,"2747":2,"2751":3,"2796":1,"2862":2,"2882":1}}],["support",{"0":{"14":1,"35":1,"80":1,"81":1,"100":1,"108":1,"118":1,"130":1,"138":1,"145":1,"163":1,"232":1,"590":1,"591":1,"1285":1,"1338":1,"1351":1,"1364":1,"1439":1,"1597":1,"1979":1,"2216":1,"2285":1,"2541":1,"2545":1,"2680":1,"2697":1,"2704":1,"2705":1,"2706":1,"2879":1,"2893":1},"1":{"36":1,"1339":1,"1980":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1,"2894":1,"2895":1,"2896":1,"2897":1},"2":{"10":3,"35":1,"46":1,"49":4,"50":2,"63":5,"65":1,"74":3,"75":1,"76":1,"81":1,"86":2,"89":1,"93":12,"107":1,"108":1,"113":1,"114":15,"118":2,"120":1,"130":5,"131":1,"133":1,"134":14,"138":1,"145":1,"146":1,"149":9,"153":1,"154":1,"156":1,"160":7,"163":2,"167":1,"175":4,"176":18,"189":2,"190":1,"191":9,"199":10,"201":1,"210":3,"211":28,"213":1,"218":1,"222":5,"232":2,"234":1,"236":14,"248":2,"249":11,"262":1,"265":1,"266":4,"277":2,"279":1,"285":5,"288":1,"298":1,"306":1,"308":6,"315":1,"317":1,"328":4,"376":2,"427":1,"448":1,"459":1,"471":1,"472":1,"474":1,"480":1,"481":1,"489":1,"490":1,"517":1,"519":1,"537":1,"559":2,"562":1,"563":1,"572":2,"591":1,"592":1,"594":2,"663":1,"664":1,"665":1,"666":1,"699":1,"711":2,"721":1,"750":1,"1189":1,"1263":1,"1280":1,"1282":1,"1314":1,"1339":1,"1340":1,"1351":1,"1353":1,"1392":1,"1394":1,"1395":2,"1397":1,"1398":1,"1407":1,"1411":1,"1428":1,"1433":1,"1435":2,"1441":1,"1442":1,"1480":1,"1492":1,"1547":1,"1548":2,"1622":1,"1627":1,"1664":2,"1767":1,"1843":1,"1925":1,"1937":1,"1947":2,"1958":1,"2016":2,"2050":1,"2063":2,"2210":1,"2211":1,"2242":2,"2253":1,"2268":1,"2269":7,"2272":1,"2285":1,"2286":1,"2287":1,"2294":1,"2295":1,"2313":1,"2324":3,"2367":3,"2369":1,"2370":1,"2375":1,"2384":1,"2400":1,"2407":1,"2411":2,"2425":1,"2444":1,"2451":2,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1,"2473":1,"2483":1,"2545":1,"2566":4,"2569":2,"2570":1,"2572":1,"2573":1,"2583":1,"2620":1,"2627":3,"2651":1,"2660":3,"2667":1,"2668":1,"2680":2,"2685":1,"2689":1,"2700":10,"2702":1,"2703":3,"2704":1,"2707":2,"2720":1,"2721":1,"2722":2,"2726":1,"2746":2,"2749":12,"2786":1,"2790":1,"2847":1,"2877":2,"2881":1,"2883":2,"2890":1,"2894":1,"2895":1,"2937":1}}],["supplements",{"2":{"629":1,"2739":1}}],["supplement",{"2":{"620":1}}],["supplying",{"2":{"655":1}}],["supply",{"2":{"123":1,"284":1,"374":1,"427":1,"521":1,"524":1,"1293":1,"1564":1,"2672":1}}],["supplied",{"2":{"118":1,"146":1,"230":1,"361":1,"431":1,"450":2,"451":2,"473":1,"487":3,"1245":1,"1250":1,"1452":1,"2668":1,"2698":1,"2748":1,"2749":1,"2750":14,"2754":1}}],["sublime",{"2":{"2638":1}}],["subfolder",{"2":{"2407":1,"2434":1,"2937":1}}],["subchain",{"2":{"1532":1}}],["subcommands",{"0":{"487":1},"2":{"484":1,"486":1,"487":1,"499":1}}],["subcommand|general|default>",{"2":{"473":1}}],["subcommand",{"2":{"95":1,"114":1,"132":1,"134":1,"149":1,"437":1,"470":1,"485":3,"487":5,"489":1,"490":1,"492":1,"493":3,"498":1}}],["subreddit",{"0":{"2891":1},"2":{"608":1,"2428":1}}],["subprocess",{"2":{"551":1}}],["subjective",{"2":{"2722":1}}],["subjected",{"2":{"2566":1}}],["subject",{"2":{"373":1,"2638":1,"2729":1,"2750":1}}],["subdirectories",{"2":{"236":1,"2407":1}}],["subdirectory",{"2":{"160":1,"176":1}}],["subtracting",{"2":{"2025":1}}],["subtraction",{"2":{"1407":1}}],["subtracted",{"2":{"532":1}}],["subtlety",{"2":{"194":1}}],["subtarget",{"2":{"49":1}}],["subs",{"2":{"1616":2}}],["subscripted",{"2":{"349":1}}],["subscript",{"2":{"294":1}}],["substrings",{"2":{"1522":1}}],["substring",{"2":{"1522":1,"2937":1,"2938":1}}],["substituting",{"2":{"397":1}}],["substitutions",{"2":{"49":1}}],["substantially",{"2":{"109":1}}],["subsequent",{"2":{"312":1,"397":1,"421":1,"1608":1,"1954":1,"2750":1,"2895":1,"2941":1}}],["subsequently",{"2":{"49":1,"265":1,"307":1,"396":1,"2590":1,"2722":1,"2754":1}}],["subset",{"2":{"65":1,"743":1,"1948":1,"2468":1,"2933":1,"2937":1}}],["subsystem==",{"2":{"1329":1}}],["subsystems",{"0":{"2322":1},"1":{"2323":1},"2":{"77":2,"163":1,"198":1,"2254":1,"2319":1,"2322":1,"2697":1,"2702":2,"2896":1}}],["subsystem",{"0":{"234":1,"1199":1},"1":{"1200":1,"1201":1,"1202":1},"2":{"11":1,"107":1,"114":2,"153":1,"175":1,"244":1,"308":1,"373":2,"572":1,"752":1,"1194":1,"1195":2,"1198":2,"1200":2,"1201":3,"1202":1,"1838":1,"1986":1,"2058":1}}],["sub",{"0":{"349":1,"2435":1},"2":{"6":1,"113":1,"114":1,"133":1,"134":1,"149":1,"556":1,"1314":1,"2434":1,"2435":7,"2439":21,"2440":21,"2769":1}}],["submission",{"2":{"408":2,"409":1,"411":1,"412":1,"2721":1}}],["submissions",{"2":{"103":1,"126":1,"275":1,"397":1,"1434":1,"2567":1,"2720":1,"2721":1}}],["submits",{"2":{"576":1}}],["submit",{"2":{"360":1,"408":1,"410":2,"504":1,"611":1,"613":2,"616":2,"617":1,"2569":1,"2722":1,"2829":2}}],["submitters",{"2":{"2569":1,"2719":1,"2721":2}}],["submitter",{"2":{"397":1,"2719":1,"2722":1}}],["submitted",{"2":{"116":1,"579":1,"2569":1,"2718":1,"2719":1,"2720":1,"2721":2,"2895":1}}],["submitting",{"0":{"370":1},"2":{"1":1,"363":1,"371":1,"617":1,"672":1,"2403":2,"2569":2,"2721":1}}],["submodules=on",{"2":{"2630":2}}],["submodules",{"0":{"10":1,"423":1},"2":{"10":1,"26":1,"69":1,"266":1,"405":1,"423":1,"1629":1,"2400":2,"2403":2,"2600":1,"2630":2}}],["submodule",{"0":{"6":1,"12":1,"21":1},"2":{"6":1,"10":1,"12":1,"21":1,"24":1,"114":2,"134":1,"160":1,"176":4,"191":1,"199":4,"211":2,"222":1,"249":2,"266":1,"285":1,"294":1,"308":1,"328":1,"405":2,"1628":2,"2403":4}}],["soi8",{"2":{"2676":1}}],["sost",{"2":{"1919":1,"2532":1}}],["sostenuto",{"2":{"1919":2,"2532":2}}],["soyuz",{"2":{"317":1}}],["socket",{"2":{"2257":1,"2423":1}}],["sockets",{"2":{"114":1,"2257":1}}],["socd",{"2":{"288":1}}],["sodium62",{"2":{"249":1}}],["soda",{"2":{"176":1,"226":2,"236":2}}],["sonix",{"2":{"1211":1}}],["sony",{"2":{"133":1,"134":1}}],["songs",{"0":{"1479":1},"2":{"711":1,"1479":2,"1480":1,"1481":1,"2780":2}}],["song",{"0":{"27":1},"2":{"27":1,"134":1,"629":1,"1413":1,"1479":23,"1480":16,"1529":4,"1622":4,"1794":4,"1807":12,"2214":1,"2321":10,"2780":4}}],["sof",{"2":{"294":1}}],["sofle",{"2":{"114":1,"134":1,"249":1,"308":1}}],["softdevice",{"2":{"2728":1,"2729":2,"2734":3,"2737":1,"2743":1}}],["soft",{"2":{"63":1,"112":2,"199":3,"277":4,"308":1,"520":1,"522":1,"568":2,"649":3,"650":1,"651":1,"1191":1,"1192":1,"1204":1,"1680":4,"1919":3,"2259":1,"2268":2,"2371":1,"2532":3,"2695":1,"2781":1}}],["software",{"0":{"379":1,"719":1,"1475":1,"1556":1,"2489":1,"2499":1,"2785":1},"1":{"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"1476":1},"2":{"14":2,"215":1,"380":2,"684":1,"713":1,"719":2,"720":1,"1406":2,"1438":2,"1453":1,"1475":2,"1552":1,"1553":1,"1556":1,"1947":1,"1958":1,"1984":1,"2171":1,"2255":1,"2271":1,"2285":1,"2310":1,"2318":1,"2462":1,"2465":1,"2468":2,"2572":2,"2573":1,"2611":1,"2612":1,"2646":1,"2660":2,"2725":2,"2731":1,"2808":1,"2809":1,"2820":1,"2849":1,"2850":2,"2896":1,"2934":1}}],["sought",{"2":{"2705":1}}],["sourcing",{"2":{"2677":1}}],["sources",{"2":{"173":1,"663":1,"2324":1,"2567":26,"2568":1,"2569":1,"2719":1,"2721":2}}],["source",{"0":{"366":1},"2":{"5":1,"36":1,"67":1,"86":1,"102":1,"122":1,"130":1,"132":1,"143":1,"159":1,"168":1,"181":1,"197":1,"199":1,"234":1,"284":1,"360":1,"361":2,"366":1,"368":1,"372":2,"378":1,"419":1,"437":1,"507":1,"579":2,"582":1,"584":2,"611":1,"621":1,"663":2,"695":1,"746":1,"747":1,"1354":3,"1435":4,"1527":1,"1634":2,"1849":1,"1946":4,"1952":1,"1998":1,"2010":1,"2013":1,"2072":1,"2207":2,"2284":1,"2324":1,"2381":1,"2388":1,"2390":1,"2410":11,"2425":1,"2440":1,"2470":1,"2471":1,"2476":1,"2546":1,"2553":1,"2566":3,"2567":8,"2568":7,"2569":3,"2571":1,"2573":1,"2591":1,"2598":2,"2601":1,"2603":2,"2621":1,"2646":1,"2657":1,"2669":1,"2670":1,"2671":1,"2719":2,"2721":3,"2728":2,"2729":2,"2738":2,"2741":1,"2742":1,"2743":1,"2751":1,"2820":1,"2888":3,"2937":2}}],["southwest",{"2":{"1769":1}}],["south",{"2":{"1769":1,"1993":1}}],["southeast",{"2":{"1769":1}}],["southpad",{"2":{"226":2,"236":1}}],["southpaw75",{"2":{"67":2,"72":1}}],["southpole",{"2":{"159":2}}],["sound",{"2":{"1474":1,"1479":3,"1480":14,"1487":3,"1529":2,"1595":1,"1794":3,"1807":2,"2214":2,"2645":1,"2780":3}}],["soundmonster",{"2":{"92":1}}],["sounds",{"2":{"74":1,"1467":1,"1479":2,"1487":3,"1599":1,"1675":1,"2248":1,"2321":1,"2780":2}}],["solus",{"2":{"2594":1}}],["solutions",{"2":{"1334":1}}],["solution",{"0":{"1758":1},"2":{"1322":1,"1497":1,"1519":1,"1522":1,"1596":1,"1613":1,"1672":1,"1955":2,"2171":1,"2702":1,"2734":1}}],["solve",{"2":{"1417":1,"2560":1,"2627":1}}],["solves",{"2":{"1349":1}}],["solved",{"2":{"670":1}}],["sold",{"2":{"674":1}}],["soldering",{"0":{"2420":1,"2421":1,"2422":1},"1":{"2421":1,"2422":1},"2":{"2208":1,"2368":1,"2414":2,"2418":1,"2420":3,"2421":3,"2422":1,"2424":2}}],["solder",{"2":{"207":2,"211":4,"253":1,"266":1,"300":1,"2208":1,"2273":2,"2414":1,"2418":1,"2420":12,"2421":6,"2422":3,"2424":2,"2427":4,"2476":1}}],["solderd",{"2":{"176":1}}],["soldered",{"2":{"122":1,"197":1,"199":1,"211":4,"226":1,"241":2,"333":1,"1691":1,"2418":1,"2421":3,"2427":1}}],["solanis",{"2":{"211":1}}],["solidifies",{"2":{"2421":1}}],["solid",{"0":{"2065":1},"2":{"176":1,"249":1,"266":2,"1413":1,"1843":28,"1846":1,"2063":32,"2065":2,"2075":2,"2183":2,"2187":1,"2421":1,"2864":1,"2871":1,"2887":10}}],["sol3",{"2":{"149":1,"176":1}}],["sol",{"2":{"114":1,"149":1,"176":1,"294":1}}],["solomon",{"2":{"2418":1,"2429":1}}],["solo",{"2":{"107":1,"114":1}}],["solenoids",{"0":{"1675":1},"2":{"160":1,"1675":2}}],["solenoid",{"2":{"64":1,"114":1,"134":1,"191":1,"221":2,"236":1,"1672":2,"1674":3,"1675":28}}],["solheim68",{"2":{"57":2}}],["sorts",{"2":{"2470":1}}],["sorting",{"2":{"110":1,"211":1}}],["sort",{"2":{"49":1,"209":1,"211":1,"346":1,"649":1,"1353":1,"2257":1,"2421":1}}],["sooner",{"2":{"535":1,"2303":1}}],["soon",{"2":{"49":1,"371":1,"392":1,"562":1,"717":1,"1308":4,"1369":1,"1416":2,"1466":1,"2030":1,"2459":1}}],["somewhat",{"2":{"1348":1,"2322":1,"2403":1,"2668":1}}],["somewhere",{"2":{"406":1,"419":1,"430":1,"1453":1,"1628":1,"2032":1,"2046":1,"2627":1,"2901":1}}],["somebody",{"2":{"1335":1,"2664":3,"2890":1}}],["someone",{"2":{"546":1,"548":1,"608":1,"614":1,"670":1,"2449":1,"2566":1,"2573":1}}],["something",{"2":{"125":1,"137":2,"185":1,"371":1,"408":1,"490":1,"491":1,"586":1,"629":2,"644":1,"654":1,"683":1,"685":1,"1323":1,"1402":1,"1406":1,"1413":2,"1421":1,"1441":1,"1442":1,"1454":1,"1479":1,"1483":1,"1484":1,"1493":1,"1552":1,"1585":1,"1587":1,"1595":2,"1736":1,"1764":1,"1801":1,"1804":1,"1845":1,"1917":1,"1933":1,"2043":1,"2068":1,"2074":1,"2211":1,"2268":1,"2302":1,"2420":1,"2421":1,"2424":2,"2475":1,"2566":1,"2577":1,"2621":1,"2627":1,"2630":1,"2633":1,"2645":1,"2667":1,"2724":1,"2748":1,"2785":2,"2890":1}}],["sometimes",{"2":{"119":1,"472":1,"491":1,"524":1,"548":1,"595":1,"663":1,"683":2,"684":1,"713":1,"1324":1,"1344":1,"1402":1,"1406":1,"1407":1,"1420":1,"1421":1,"1450":1,"1551":1,"1732":1,"1759":1,"1805":1,"2025":1,"2403":1,"2427":1,"2475":1,"2547":1,"2552":1,"2626":1,"2644":1,"2703":1,"2787":1,"2895":1,"2930":1,"2942":1}}],["some",{"0":{"416":1,"1346":1,"2425":1},"2":{"2":1,"12":1,"25":1,"28":1,"50":1,"64":1,"95":1,"113":3,"114":6,"123":3,"124":1,"134":1,"149":4,"153":1,"157":1,"158":3,"160":4,"166":1,"174":2,"176":1,"182":2,"191":5,"196":1,"199":2,"209":1,"211":8,"215":1,"218":1,"222":2,"234":2,"235":1,"236":7,"246":1,"256":1,"266":3,"288":2,"294":4,"317":2,"333":1,"356":2,"363":1,"368":1,"387":1,"390":1,"391":1,"406":1,"408":3,"437":1,"485":1,"493":1,"498":1,"509":1,"520":1,"521":1,"522":2,"546":1,"548":1,"555":1,"556":1,"562":1,"569":1,"573":1,"595":1,"607":1,"608":1,"613":1,"616":1,"617":2,"635":1,"666":3,"674":1,"683":2,"685":1,"692":3,"716":1,"717":1,"746":1,"760":3,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1197":1,"1198":1,"1258":1,"1261":1,"1283":1,"1284":1,"1285":1,"1293":1,"1337":1,"1344":1,"1362":2,"1363":1,"1370":1,"1373":2,"1375":1,"1378":1,"1406":2,"1418":1,"1421":1,"1432":1,"1436":1,"1443":1,"1454":1,"1455":2,"1457":1,"1467":1,"1484":2,"1496":1,"1497":1,"1516":1,"1583":1,"1585":1,"1586":1,"1603":2,"1607":2,"1616":1,"1617":1,"1626":1,"1656":1,"1658":1,"1672":1,"1675":1,"1751":1,"1757":1,"1759":1,"1762":1,"1797":1,"1799":1,"1844":3,"1914":1,"1941":2,"1951":1,"1954":2,"1955":3,"1988":1,"2030":1,"2039":1,"2047":1,"2050":1,"2066":3,"2069":1,"2072":1,"2163":1,"2178":1,"2191":2,"2207":3,"2208":1,"2244":1,"2254":1,"2263":1,"2265":1,"2266":1,"2271":2,"2279":2,"2286":1,"2291":1,"2302":1,"2310":1,"2318":1,"2323":1,"2324":1,"2368":1,"2372":1,"2374":1,"2376":1,"2379":1,"2382":1,"2386":1,"2390":1,"2391":1,"2409":1,"2410":5,"2415":1,"2418":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":2,"2432":1,"2436":1,"2439":1,"2447":1,"2468":1,"2476":2,"2492":1,"2494":1,"2495":1,"2496":1,"2501":1,"2510":1,"2547":1,"2551":2,"2553":1,"2554":1,"2559":1,"2567":2,"2568":1,"2578":1,"2591":1,"2605":1,"2611":1,"2625":2,"2637":1,"2661":1,"2664":1,"2667":2,"2683":1,"2704":1,"2715":1,"2720":1,"2749":4,"2750":3,"2758":1,"2765":1,"2788":1,"2835":1,"2882":2,"2883":1,"2885":1,"2887":2,"2894":2,"2898":1,"2916":1,"2919":2,"2923":1,"2924":3,"2936":1,"2937":2,"2941":1,"2942":1}}],["so",{"2":{"0":1,"9":1,"13":2,"19":1,"39":1,"50":1,"52":1,"60":1,"73":1,"99":1,"112":1,"114":1,"118":1,"149":2,"163":2,"174":1,"176":1,"182":2,"191":1,"199":1,"231":1,"232":1,"245":1,"248":1,"273":1,"279":1,"284":2,"288":1,"323":1,"328":1,"347":1,"380":1,"385":1,"393":2,"397":1,"406":1,"487":1,"492":1,"503":1,"521":2,"534":1,"548":1,"584":1,"587":1,"608":2,"611":1,"614":1,"617":1,"645":1,"659":1,"663":1,"676":1,"677":1,"682":1,"684":1,"698":1,"717":1,"745":1,"752":1,"764":1,"1200":1,"1201":1,"1205":1,"1245":1,"1263":1,"1310":1,"1311":1,"1324":1,"1340":1,"1345":2,"1347":1,"1348":1,"1353":2,"1359":1,"1362":1,"1365":1,"1375":1,"1378":2,"1379":1,"1413":2,"1417":1,"1419":1,"1425":1,"1427":1,"1441":2,"1443":2,"1444":1,"1450":2,"1451":1,"1477":1,"1484":1,"1486":1,"1487":1,"1519":2,"1520":2,"1523":1,"1532":1,"1557":1,"1564":1,"1583":2,"1585":1,"1616":1,"1619":1,"1628":1,"1655":1,"1659":1,"1664":1,"1669":1,"1678":1,"1696":1,"1758":1,"1760":1,"1765":1,"1766":1,"1838":1,"1917":2,"1920":1,"1933":2,"1935":1,"1947":1,"1956":1,"2014":1,"2015":1,"2019":2,"2020":2,"2023":1,"2025":1,"2027":1,"2058":1,"2161":1,"2163":1,"2165":1,"2167":1,"2181":1,"2188":1,"2191":1,"2198":1,"2213":1,"2242":1,"2253":1,"2270":1,"2273":1,"2287":1,"2288":1,"2290":1,"2294":1,"2302":1,"2309":1,"2310":2,"2312":1,"2322":1,"2369":1,"2402":1,"2410":1,"2412":2,"2416":1,"2421":2,"2427":1,"2430":1,"2441":1,"2447":1,"2449":2,"2459":3,"2467":1,"2475":1,"2489":1,"2501":1,"2550":1,"2559":1,"2560":1,"2568":1,"2569":1,"2580":1,"2587":1,"2592":1,"2612":1,"2629":1,"2633":1,"2645":1,"2649":1,"2650":1,"2662":1,"2666":1,"2667":2,"2670":1,"2674":1,"2683":1,"2687":1,"2711":1,"2721":3,"2722":1,"2724":1,"2749":2,"2750":2,"2778":1,"2780":2,"2781":1,"2783":1,"2789":1,"2792":1,"2827":1,"2877":1,"2879":1,"2881":1,"2882":2,"2887":1,"2901":2,"2914":1,"2917":1,"2920":1,"2921":1,"2930":1,"2934":1,"2937":1,"2938":1,"2942":2}}],["ndel",{"2":{"2788":1}}],["ndash",{"2":{"342":1,"2160":3,"2288":1,"2911":1}}],["n↓",{"2":{"2788":1}}],["n→",{"2":{"2788":1}}],["n←",{"2":{"2788":1}}],["n↑",{"2":{"2788":1}}],["nhome",{"2":{"2788":1}}],["nhd",{"2":{"2276":1}}],["nrf5",{"2":{"2703":1}}],["nrf51822",{"2":{"2367":1,"2368":1}}],["nrst",{"2":{"2393":2,"2395":2,"2501":1,"2667":1,"2674":1}}],["nbsp",{"2":{"2911":1}}],["nb",{"2":{"2294":1}}],["n9",{"2":{"2294":1}}],["n8",{"2":{"2294":1}}],["n7",{"2":{"2294":1}}],["n3",{"2":{"1919":1,"2294":1,"2532":1}}],["n4",{"2":{"1919":1,"2294":1,"2532":1}}],["n40",{"2":{"222":1}}],["n5",{"2":{"1919":1,"2294":1,"2532":1}}],["n2",{"2":{"1919":2,"2294":1,"2532":2}}],["nw",{"2":{"1769":1}}],["nter",{"2":{"2170":1}}],["ntil",{"2":{"1587":1}}],["nt660",{"2":{"57":2}}],["nfer",{"2":{"1355":1}}],["ns",{"2":{"1289":1}}],["n1",{"2":{"405":1,"1919":2,"2294":1,"2532":2}}],["nyx",{"2":{"285":1}}],["nyquist",{"2":{"45":1,"285":1}}],["nucleo64",{"2":{"2721":1}}],["nucleo",{"2":{"2721":1}}],["nuanced",{"2":{"1928":1}}],["nubs",{"2":{"369":1,"587":2,"2505":1,"2515":1,"2553":1}}],["nuhs",{"2":{"369":1,"587":2,"2505":1,"2515":1,"2553":1}}],["nullbitsco",{"2":{"277":1}}],["null",{"2":{"222":1,"249":1,"272":2,"325":1,"371":1,"655":3,"1532":1,"1696":1,"1749":1,"1751":2,"2052":1,"2309":2,"2310":1,"2311":1,"2312":1,"2713":3,"2750":4}}],["nue",{"2":{"211":1}}],["numlock",{"2":{"1308":2}}],["numerous",{"2":{"188":1,"2254":1}}],["numerically",{"2":{"1421":1}}],["numerical",{"2":{"1327":2,"1421":1,"2877":1,"2941":1}}],["numeric",{"0":{"1501":1,"1508":1,"1689":1},"2":{"181":2,"589":1,"1497":1,"1501":1,"1504":2,"1689":1,"2313":1}}],["numpad",{"2":{"134":1,"143":2,"211":1,"236":1,"2324":1,"2337":1,"2508":1,"2787":5,"2788":5,"2929":1,"2930":2}}],["num",{"2":{"70":1,"188":1,"191":2,"199":1,"201":3,"222":2,"247":2,"249":2,"307":2,"328":1,"427":3,"428":2,"568":1,"698":1,"1351":1,"1410":1,"1411":1,"1621":2,"1661":2,"1687":1,"1790":1,"1791":2,"1793":1,"1939":2,"2074":1,"2185":1,"2195":1,"2197":1,"2269":1,"2277":2,"2294":12,"2298":1,"2506":5,"2515":5,"2747":2,"2749":13,"2750":2,"2760":1,"2788":3,"2789":3,"2860":2,"2928":1,"2931":1,"2932":1}}],["numbered",{"2":{"338":1,"696":1,"1419":2,"1420":1}}],["numbers",{"0":{"2503":1},"2":{"166":1,"532":2,"627":1,"1444":1,"1917":1,"2183":1,"2262":1,"2374":1,"2434":1,"2463":1,"2551":1,"2627":1,"2687":3,"2744":1,"2833":1}}],["number",{"0":{"589":1,"2231":1,"2233":1,"2235":1,"2237":1,"2511":1},"1":{"2232":1,"2234":1,"2236":1,"2238":1},"2":{"95":1,"114":2,"119":1,"134":1,"163":1,"166":2,"169":1,"174":3,"183":1,"199":1,"201":2,"211":1,"215":1,"233":1,"236":1,"285":1,"380":1,"414":1,"415":1,"427":2,"431":4,"453":1,"458":1,"467":1,"530":1,"531":2,"532":4,"559":4,"563":4,"573":1,"611":1,"617":1,"627":2,"646":1,"654":1,"655":1,"658":1,"663":1,"669":1,"698":1,"716":4,"746":1,"747":1,"749":1,"750":1,"751":3,"752":3,"753":3,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"799":1,"825":1,"854":1,"886":1,"899":1,"918":1,"934":1,"953":1,"968":1,"987":1,"1002":1,"1021":1,"1036":1,"1055":1,"1070":1,"1089":1,"1104":1,"1123":1,"1138":1,"1157":1,"1172":1,"1200":1,"1201":1,"1213":1,"1225":1,"1249":1,"1257":1,"1260":1,"1275":1,"1277":1,"1282":1,"1340":1,"1412":1,"1419":1,"1422":2,"1428":1,"1436":1,"1442":1,"1444":1,"1452":1,"1474":1,"1528":1,"1532":2,"1533":1,"1550":1,"1559":1,"1619":1,"1656":1,"1658":1,"1680":1,"1681":2,"1693":2,"1706":2,"1736":1,"1757":1,"1840":4,"1845":1,"1846":3,"1920":1,"1929":1,"1930":3,"1933":1,"1941":1,"1943":1,"1946":4,"1948":2,"1953":1,"1997":1,"2012":2,"2060":4,"2064":2,"2068":1,"2069":3,"2179":3,"2183":4,"2185":5,"2191":1,"2207":1,"2232":1,"2234":1,"2236":1,"2238":1,"2260":1,"2268":4,"2271":4,"2279":1,"2282":1,"2283":2,"2286":1,"2291":1,"2293":2,"2294":12,"2298":1,"2302":1,"2310":1,"2311":1,"2355":1,"2410":2,"2414":1,"2416":3,"2417":2,"2451":1,"2467":1,"2572":1,"2627":5,"2628":1,"2643":1,"2662":1,"2664":1,"2669":1,"2672":1,"2673":2,"2687":3,"2693":1,"2707":1,"2710":1,"2713":1,"2747":3,"2748":2,"2749":11,"2750":5,"2760":1,"2766":1,"2768":1,"2770":1,"2773":1,"2778":1,"2780":1,"2784":1,"2795":1,"2813":1,"2821":1,"2826":1,"2833":1,"2847":4,"2848":1,"2850":5,"2851":5,"2854":1,"2855":1,"2857":4,"2858":2,"2862":4,"2863":1,"2864":17,"2865":2,"2866":5,"2867":3,"2870":14,"2871":21,"2872":2,"2873":4,"2875":6,"2876":1,"2881":1,"2885":1,"2888":1,"2895":1,"2941":1,"2942":2}}],["numbering",{"2":{"50":1,"692":1}}],["numbrero",{"2":{"43":2}}],["nvram",{"2":{"191":1}}],["nvm",{"2":{"131":1,"134":1}}],["nqg",{"2":{"181":2,"191":1}}],["nc",{"2":{"2294":1}}],["ncr80",{"2":{"277":1}}],["ncc1701kb",{"2":{"249":1}}],["nced",{"2":{"176":1}}],["nckiibs",{"2":{"86":8}}],["nnbs",{"2":{"176":1}}],["nkeys",{"2":{"1619":1}}],["nk",{"2":{"211":1,"235":1,"303":1,"2191":3,"2286":1,"2513":3,"2531":3}}],["nknl7jp",{"2":{"143":2}}],["nknl7en",{"2":{"143":2}}],["nk87b",{"2":{"211":1}}],["nk87",{"2":{"143":2,"211":1}}],["nk65",{"2":{"143":2,"311":2,"317":1}}],["nk1",{"2":{"143":2}}],["nkro",{"0":{"235":1,"303":2,"1363":1,"2826":1},"2":{"50":1,"70":1,"111":1,"112":1,"191":1,"199":2,"211":1,"235":2,"236":3,"277":1,"303":6,"308":4,"317":2,"559":1,"572":2,"573":2,"1363":4,"1373":1,"1619":2,"2191":1,"2285":3,"2286":6,"2287":1,"2369":2,"2411":8,"2513":3,"2531":3,"2721":1,"2821":1,"2832":1,"2859":2,"2882":1}}],["nibble",{"0":{"2237":1},"1":{"2238":1}}],["nins",{"2":{"2788":1}}],["nine",{"2":{"1501":1}}],["ninja",{"2":{"191":1,"241":2}}],["nit",{"2":{"522":1}}],["nitty",{"0":{"2555":1},"2":{"359":1}}],["nickname",{"2":{"2632":1}}],["nicinabox",{"2":{"2274":1}}],["nicities",{"2":{"493":1}}],["nicer",{"2":{"2720":1,"2941":1}}],["nicest",{"2":{"2301":1}}],["nice",{"2":{"488":1,"490":1,"1337":1,"2178":1,"2274":1,"2662":1}}],["nightly",{"2":{"211":1,"222":1}}],["niu",{"2":{"143":2,"149":1}}],["nixpkgs",{"2":{"249":1}}],["nix",{"2":{"113":1,"114":1,"176":1,"211":1,"249":1,"308":1}}],["npgdn",{"2":{"2788":1}}],["npgup",{"2":{"2788":1}}],["npkc",{"2":{"2187":1}}],["npn",{"2":{"1551":1}}],["npm",{"2":{"380":1}}],["npminila",{"2":{"143":2}}],["npspears",{"2":{"149":1}}],["np21",{"2":{"143":2,"149":2}}],["nphhkb",{"2":{"143":2}}],["np64",{"2":{"143":2}}],["n6",{"2":{"114":1,"1919":1,"2294":1,"2532":1}}],["nxp",{"0":{"516":1},"2":{"108":1,"2389":1,"2795":1}}],["na",{"2":{"2294":1}}],["nav",{"0":{"1688":1},"2":{"1614":5,"1616":2,"1688":1,"1761":5,"1764":1}}],["navigating",{"2":{"2404":1}}],["navigation",{"2":{"1761":5,"2159":2,"2548":1,"2646":1,"2657":1}}],["navigate",{"2":{"615":1,"2426":1,"2495":1,"2607":1,"2702":1}}],["navi10",{"2":{"159":2}}],["nack",{"2":{"211":1}}],["nacly",{"2":{"143":2,"149":2,"249":1}}],["nanoseconds",{"2":{"1282":3,"1292":2}}],["nanoboot",{"2":{"311":1}}],["nano",{"2":{"191":1,"519":1}}],["naked64",{"2":{"143":2}}],["naked60",{"2":{"143":2}}],["naked48",{"2":{"143":2}}],["naiping",{"2":{"143":6}}],["nafuda",{"2":{"143":2}}],["naming",{"0":{"221":1,"233":1,"527":1,"1845":1,"2068":1,"2434":1},"1":{"528":1},"2":{"134":1,"156":1,"167":1,"182":2,"221":1,"222":6,"224":1,"233":2,"236":9,"238":1,"243":1,"244":1,"249":1,"266":1,"331":1,"614":1,"627":1,"1368":1,"1407":7,"2322":1,"2607":1,"2707":1,"2719":1,"2720":1}}],["name\`",{"2":{"1845":1,"2068":1}}],["name|description|",{"2":{"681":1}}],["name|short",{"2":{"681":1}}],["named",{"2":{"271":1,"370":1,"446":1,"447":1,"448":1,"487":1,"552":1,"591":1,"1347":1,"1427":2,"1434":2,"1435":1,"1939":1,"2277":1,"2425":1,"2438":3,"2596":1,"2629":1,"2633":1,"2787":1,"2788":1,"2797":1,"2830":1,"2831":1,"2930":1,"2942":1}}],["namely",{"2":{"202":1,"1443":1,"2381":1}}],["namecard2x4",{"2":{"143":2}}],["name>",{"2":{"55":2,"428":1,"1438":1,"1443":1}}],["name",{"0":{"57":1,"341":1,"596":1},"2":{"37":2,"43":2,"55":1,"56":2,"57":2,"58":2,"67":2,"70":1,"86":3,"102":2,"111":1,"114":2,"122":2,"134":1,"143":2,"149":2,"159":2,"167":1,"168":2,"169":1,"181":2,"182":2,"184":1,"188":1,"191":1,"197":2,"199":3,"207":2,"217":2,"226":2,"231":1,"236":1,"241":2,"253":2,"266":3,"270":2,"277":1,"281":2,"291":2,"294":1,"300":2,"311":2,"317":1,"322":2,"328":1,"335":1,"397":1,"431":2,"442":1,"457":3,"461":1,"470":1,"482":2,"483":4,"487":12,"490":1,"493":2,"494":1,"524":1,"527":9,"528":1,"537":2,"559":1,"586":1,"589":1,"596":1,"611":3,"616":2,"666":1,"684":1,"685":3,"686":5,"1310":1,"1375":1,"1410":2,"1428":2,"1433":1,"1434":7,"1435":5,"1436":4,"1437":4,"1438":2,"1439":1,"1441":2,"1442":1,"1443":3,"1478":1,"1517":3,"1606":4,"1616":1,"1628":2,"1630":2,"1633":1,"1673":1,"1680":4,"1681":2,"1843":1,"1844":1,"1845":7,"1846":2,"1996":1,"2052":1,"2063":1,"2066":1,"2068":7,"2069":2,"2315":1,"2316":1,"2324":6,"2400":1,"2410":1,"2427":1,"2434":1,"2436":2,"2438":2,"2449":7,"2453":2,"2466":1,"2495":1,"2499":1,"2551":2,"2576":2,"2577":1,"2587":3,"2599":1,"2600":7,"2601":1,"2609":1,"2627":1,"2632":5,"2633":3,"2655":4,"2667":4,"2707":3,"2710":4,"2714":1,"2721":1,"2725":2,"2780":1,"2788":6,"2845":1,"2846":1,"2861":1,"2862":2,"2937":1,"2941":4,"2942":2}}],["names",{"0":{"528":1,"1344":1},"2":{"36":1,"37":1,"43":1,"92":1,"114":1,"157":1,"182":2,"188":3,"191":3,"222":2,"241":2,"253":2,"270":2,"277":1,"281":2,"333":1,"432":1,"505":1,"524":1,"527":2,"528":2,"589":1,"698":1,"1200":1,"1201":1,"1344":2,"1427":1,"1432":2,"1587":1,"1635":1,"1636":1,"1769":1,"2313":1,"2322":2,"2410":2,"2434":3,"2438":1,"2551":2,"2567":1,"2711":1,"2721":3,"2787":1,"2861":1,"2862":2,"2941":7}}],["narrow",{"2":{"119":1,"176":1,"2050":1}}],["nat",{"2":{"2934":1}}],["nature",{"2":{"663":1,"1202":1,"2039":1,"2727":1}}],["naturally",{"2":{"1758":1,"2290":1,"2917":1}}],["natural",{"2":{"119":1,"1486":1,"2899":1}}],["natively",{"2":{"1947":1,"2684":1}}],["native",{"2":{"38":1,"49":1,"248":1,"249":1,"511":1,"586":1,"2747":2,"2748":2,"2749":12,"2750":3,"2938":1}}],["n",{"0":{"2826":1},"2":{"14":1,"196":1,"236":1,"266":2,"369":1,"432":2,"433":2,"453":2,"487":1,"529":1,"572":1,"587":2,"613":1,"826":2,"855":2,"887":2,"919":2,"920":2,"954":2,"988":2,"1022":2,"1056":2,"1090":2,"1091":2,"1124":2,"1125":2,"1158":2,"1200":1,"1201":1,"1204":2,"1210":1,"1214":2,"1265":6,"1326":1,"1327":1,"1330":1,"1363":1,"1407":1,"1450":2,"1529":1,"1551":1,"1564":1,"1619":2,"1695":1,"1707":1,"1769":1,"1798":3,"1801":1,"1807":1,"1841":2,"1939":4,"1946":2,"2061":2,"2159":1,"2161":1,"2215":1,"2218":1,"2246":6,"2270":2,"2277":4,"2286":1,"2291":1,"2293":4,"2321":5,"2323":1,"2369":1,"2494":1,"2503":3,"2513":3,"2515":9,"2531":3,"2553":1,"2707":1,"2748":4,"2762":3,"2768":3,"2770":4,"2772":3,"2916":1,"2941":1}}],["neo2",{"2":{"2880":2}}],["neopad",{"2":{"241":2,"300":2}}],["nend",{"2":{"2788":1}}],["neat",{"2":{"2418":1,"2884":1}}],["near",{"2":{"1466":1,"1479":1,"1843":2,"2008":1,"2063":2,"2422":1,"2787":1}}],["nearest",{"2":{"1249":1,"2294":1}}],["nearly",{"2":{"553":1,"663":1,"2515":1,"2633":1,"2688":1}}],["nearing",{"2":{"279":1}}],["nearfield",{"2":{"211":1}}],["neighbour",{"2":{"2420":1}}],["neighboring",{"2":{"2064":1}}],["neither",{"2":{"487":1,"492":1,"683":1,"1492":1,"2267":1,"2390":1,"2776":1,"2783":1}}],["ne",{"2":{"1769":1}}],["negated",{"2":{"2760":1,"2766":1,"2767":1}}],["negatively",{"2":{"2269":1,"2895":1}}],["negative",{"0":{"1742":1,"1743":1},"2":{"641":1,"713":1,"719":1,"794":1,"1472":1,"1473":1,"1476":1,"1480":1,"1742":1,"1749":1,"1751":2,"1752":2,"1754":2,"1755":1,"2167":1}}],["neg",{"2":{"2760":2,"2761":1,"2762":1,"2766":1,"2767":2,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1}}],["negmods",{"0":{"1742":1,"1743":1},"2":{"1740":1,"1746":5}}],["nexus",{"2":{"1843":3,"2063":3,"2887":1}}],["nexecstart=",{"2":{"1313":2}}],["next",{"0":{"395":1,"406":1,"600":1},"1":{"396":1},"2":{"23":1,"103":1,"104":1,"133":1,"134":1,"156":1,"203":1,"230":1,"236":1,"265":1,"276":1,"307":1,"387":2,"395":1,"397":1,"402":1,"403":2,"406":1,"520":1,"587":2,"644":1,"645":1,"676":1,"714":2,"715":2,"716":3,"718":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1280":1,"1289":1,"1296":2,"1300":2,"1378":1,"1402":1,"1416":1,"1425":4,"1483":2,"1484":2,"1489":4,"1533":2,"1562":2,"1563":2,"1588":1,"1594":1,"1606":1,"1608":1,"1616":1,"1661":1,"1669":1,"1674":3,"1693":1,"1707":1,"1732":1,"1734":1,"1746":3,"1842":3,"1859":1,"1861":1,"1867":1,"1868":1,"1893":1,"1894":1,"1941":1,"1948":4,"1984":1,"2034":1,"2050":1,"2062":3,"2085":1,"2087":1,"2093":1,"2094":1,"2131":1,"2132":1,"2159":2,"2178":1,"2181":2,"2199":2,"2224":1,"2228":1,"2266":1,"2279":1,"2283":4,"2297":1,"2302":1,"2310":1,"2324":2,"2325":2,"2331":1,"2370":5,"2372":1,"2416":1,"2421":1,"2422":1,"2461":1,"2501":1,"2510":3,"2512":1,"2515":3,"2517":4,"2521":5,"2526":1,"2530":3,"2537":2,"2538":3,"2544":1,"2545":2,"2554":1,"2599":1,"2643":1,"2655":1,"2667":2,"2670":1,"2702":1,"2711":1,"2714":1,"2879":1}}],["networks",{"2":{"2367":1}}],["net",{"2":{"421":1,"1364":1,"1365":1}}],["necessarily",{"2":{"2687":1,"2720":1}}],["necessary",{"0":{"2653":1},"2":{"218":1,"234":1,"369":1,"378":1,"379":1,"380":1,"387":2,"390":1,"391":1,"427":1,"434":1,"572":1,"641":1,"684":1,"718":1,"769":1,"794":1,"1200":2,"1201":2,"1210":1,"1283":1,"1340":1,"1511":1,"1655":1,"1662":1,"1751":2,"1752":1,"1754":5,"1979":1,"2049":1,"2265":1,"2282":1,"2287":1,"2289":1,"2389":1,"2411":1,"2420":1,"2438":1,"2440":1,"2441":1,"2476":1,"2496":1,"2568":1,"2594":1,"2606":1,"2613":1,"2650":1,"2696":1,"2721":3,"2844":1,"2901":1}}],["necessitating",{"2":{"408":1}}],["never",{"0":{"2631":1},"1":{"2632":1,"2633":1,"2634":1},"2":{"229":1,"489":1,"491":1,"527":1,"611":1,"625":1,"650":1,"651":1,"1592":1,"1655":1,"1752":1,"1765":1,"2039":1,"2573":1,"2625":1,"2626":1,"2628":1,"2631":1,"2723":2,"2927":1}}],["neutralized",{"2":{"1758":1,"2917":1}}],["neutralizer",{"2":{"1758":4,"2917":4,"2919":1}}],["neutralize",{"2":{"222":1,"1758":6,"2917":6,"2919":1}}],["nebula68",{"2":{"143":2}}],["nebula68b",{"2":{"143":2,"253":2,"266":1}}],["nebula12b",{"2":{"211":1}}],["nebula12",{"2":{"143":2}}],["nest",{"2":{"2435":1}}],["nesting",{"2":{"1655":1,"1656":1,"2311":1}}],["nested",{"0":{"352":1,"353":1,"2905":1},"2":{"134":1,"338":4,"352":1,"353":1,"355":2,"668":1,"1656":1,"2862":1,"2902":1,"2908":3,"2914":1}}],["neson",{"2":{"114":1}}],["nerdtkl",{"2":{"18":1}}],["nerd60",{"2":{"18":1}}],["nerdd",{"2":{"18":1}}],["nerd",{"0":{"18":1},"2":{"18":3}}],["needle",{"2":{"2414":1,"2421":1}}],["needlessly",{"2":{"2043":1}}],["needless",{"2":{"222":2,"2784":1}}],["needing",{"2":{"125":1,"164":1,"185":1,"228":1,"1732":1,"2287":1,"2427":1}}],["needs",{"0":{"1364":1},"2":{"46":1,"405":1,"408":1,"410":1,"428":1,"456":1,"637":1,"654":1,"655":1,"693":1,"714":1,"715":1,"743":1,"746":1,"751":1,"752":1,"753":1,"755":1,"1308":1,"1416":1,"1441":1,"1479":1,"1529":1,"1606":3,"1645":1,"1775":1,"2009":1,"2042":1,"2046":1,"2263":1,"2288":1,"2290":1,"2298":1,"2322":1,"2411":2,"2453":1,"2459":1,"2475":2,"2514":1,"2633":1,"2666":1,"2667":2,"2668":1,"2679":1,"2705":1,"2706":1,"2721":1,"2741":1,"2748":1,"2750":2,"2787":1,"2788":1,"2844":1,"2857":1,"2933":1}}],["needed",{"2":{"21":1,"45":1,"113":1,"134":1,"158":1,"179":1,"196":1,"385":1,"421":1,"520":1,"522":1,"563":2,"637":1,"664":1,"711":1,"1191":1,"1194":2,"1197":1,"1308":1,"1329":1,"1392":2,"1434":1,"1454":1,"1490":1,"1528":1,"1585":1,"1599":1,"1675":1,"1749":1,"1980":1,"2016":1,"2043":1,"2044":1,"2064":1,"2167":1,"2254":1,"2270":1,"2291":1,"2295":1,"2302":2,"2312":1,"2367":1,"2444":1,"2594":1,"2630":1,"2633":1,"2657":1,"2660":2,"2663":1,"2707":1,"2719":1,"2793":2,"2882":1,"2926":1,"2937":1}}],["need",{"0":{"1490":1,"2431":1,"2473":1},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1},"2":{"5":1,"7":1,"14":1,"22":1,"31":1,"45":1,"49":1,"50":1,"89":1,"90":1,"107":1,"118":1,"124":1,"158":2,"164":1,"194":1,"199":1,"218":1,"220":1,"222":1,"232":1,"240":1,"241":1,"253":1,"255":1,"256":1,"259":1,"270":1,"272":2,"279":1,"281":1,"307":2,"323":2,"338":3,"382":1,"387":1,"397":2,"405":1,"408":1,"415":1,"420":1,"421":1,"427":1,"431":1,"491":1,"494":1,"497":1,"507":2,"529":1,"533":2,"538":1,"539":1,"545":1,"549":1,"562":2,"587":1,"589":1,"610":1,"614":1,"617":1,"632":1,"635":1,"637":1,"642":1,"643":1,"663":1,"664":2,"670":1,"671":2,"683":1,"685":1,"687":1,"700":1,"717":1,"718":1,"727":1,"730":1,"749":1,"751":2,"762":1,"765":2,"798":1,"801":1,"824":1,"827":1,"853":1,"858":1,"859":1,"885":1,"889":1,"917":1,"923":1,"924":1,"952":1,"957":1,"958":1,"986":1,"991":1,"992":1,"1020":1,"1025":1,"1026":1,"1054":1,"1059":1,"1060":1,"1088":1,"1093":1,"1094":1,"1122":1,"1127":1,"1128":1,"1156":1,"1161":1,"1162":1,"1204":1,"1212":1,"1215":1,"1243":1,"1244":1,"1245":2,"1264":1,"1266":2,"1281":1,"1284":1,"1296":1,"1297":1,"1300":1,"1310":1,"1312":1,"1313":1,"1315":1,"1316":1,"1329":1,"1333":2,"1339":1,"1345":1,"1351":1,"1362":1,"1363":1,"1366":1,"1377":1,"1385":1,"1387":1,"1413":1,"1417":1,"1420":1,"1433":2,"1435":1,"1441":1,"1443":2,"1446":1,"1454":1,"1504":1,"1516":2,"1520":3,"1521":1,"1531":1,"1532":1,"1550":1,"1552":1,"1562":2,"1563":1,"1583":1,"1584":1,"1585":2,"1588":1,"1596":2,"1597":1,"1600":1,"1606":2,"1609":1,"1616":1,"1621":1,"1627":1,"1634":1,"1642":1,"1660":1,"1661":1,"1675":1,"1732":1,"1738":2,"1749":2,"1751":2,"1752":1,"1759":1,"1791":1,"1805":1,"1917":3,"1938":1,"1941":1,"1947":1,"1979":1,"1985":1,"1988":1,"1997":2,"2014":2,"2043":1,"2047":1,"2050":1,"2051":1,"2064":1,"2161":1,"2179":1,"2189":2,"2194":1,"2198":1,"2208":1,"2210":2,"2211":1,"2213":1,"2257":2,"2259":1,"2260":1,"2261":1,"2266":2,"2268":2,"2270":1,"2271":1,"2273":4,"2274":1,"2277":1,"2279":1,"2286":1,"2291":1,"2293":1,"2302":2,"2309":1,"2310":4,"2311":1,"2312":2,"2322":1,"2324":2,"2384":1,"2386":1,"2388":1,"2390":1,"2391":1,"2403":1,"2404":1,"2409":1,"2410":3,"2411":3,"2414":1,"2420":1,"2421":2,"2425":1,"2427":2,"2437":1,"2439":2,"2468":1,"2475":2,"2476":2,"2477":1,"2481":1,"2490":1,"2499":1,"2551":1,"2560":1,"2569":1,"2579":1,"2580":1,"2584":2,"2588":1,"2592":2,"2595":1,"2596":1,"2609":1,"2611":1,"2612":3,"2614":1,"2615":1,"2617":1,"2628":1,"2630":2,"2633":2,"2644":2,"2646":1,"2649":1,"2650":1,"2651":1,"2653":1,"2657":1,"2661":1,"2662":1,"2664":1,"2667":3,"2684":1,"2707":1,"2719":3,"2720":1,"2723":1,"2746":2,"2748":1,"2750":3,"2751":1,"2787":1,"2835":1,"2844":1,"2879":1,"2881":2,"2882":2,"2887":1,"2890":1,"2894":1,"2901":5,"2921":2,"2922":1,"2933":1,"2942":2}}],["newhaven",{"2":{"2276":1}}],["newbs",{"2":{"674":2,"1333":1,"2584":1,"2635":1,"2658":1,"2723":2}}],["newline",{"2":{"1330":1,"1452":2,"1707":1}}],["newlines",{"2":{"338":1,"521":1,"2553":1}}],["newlib",{"2":{"191":1}}],["newly",{"2":{"188":1,"191":1,"266":1,"275":1,"1443":1,"2303":1,"2426":1,"2590":1,"2662":1,"2667":1,"2719":1,"2722":1}}],["newest",{"2":{"163":1,"173":1,"402":1,"405":1,"406":1}}],["newer",{"2":{"10":2,"49":1,"123":1,"133":1,"149":1,"157":1,"236":3,"308":1,"2159":1,"2376":1,"2881":1}}],["news",{"2":{"133":1,"134":1}}],["new",{"0":{"82":1,"112":1,"130":1,"145":1,"146":1,"442":1,"443":1,"627":1,"1799":1,"2577":1,"2704":1,"2705":1,"2706":1,"2937":1},"1":{"147":1,"148":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1},"2":{"1":1,"22":1,"24":1,"25":1,"36":1,"37":2,"38":1,"43":2,"46":1,"49":1,"56":2,"57":1,"58":1,"67":1,"70":4,"82":1,"86":1,"93":1,"99":2,"102":1,"103":1,"112":2,"113":2,"114":3,"118":3,"122":1,"123":1,"125":1,"126":1,"130":1,"132":1,"133":1,"134":4,"143":1,"149":7,"152":1,"153":2,"156":2,"158":1,"159":1,"160":1,"164":1,"167":1,"168":1,"173":2,"176":2,"181":1,"182":5,"183":3,"185":1,"186":1,"191":1,"194":1,"197":1,"199":3,"202":1,"203":1,"207":1,"211":1,"213":1,"217":1,"218":1,"219":1,"221":6,"224":1,"226":1,"228":3,"229":1,"230":2,"234":1,"236":3,"240":1,"241":1,"243":2,"244":1,"249":2,"253":1,"254":1,"265":1,"266":3,"270":1,"271":1,"273":1,"277":1,"281":1,"283":1,"285":3,"288":1,"291":1,"294":1,"300":1,"303":1,"307":3,"308":6,"311":1,"322":1,"328":1,"331":1,"333":2,"347":2,"360":1,"396":2,"397":2,"399":1,"406":2,"408":1,"423":1,"430":1,"441":1,"442":2,"443":2,"446":1,"447":1,"448":3,"483":2,"484":1,"493":1,"548":1,"550":1,"611":2,"616":1,"617":2,"621":2,"626":1,"628":1,"649":1,"664":2,"666":2,"670":2,"671":3,"672":1,"674":1,"681":1,"683":1,"684":1,"685":1,"1329":1,"1335":1,"1340":1,"1347":1,"1413":2,"1425":1,"1427":1,"1443":5,"1450":1,"1494":1,"1515":1,"1516":1,"1529":1,"1557":1,"1616":1,"1627":1,"1628":1,"1630":1,"1840":1,"1844":2,"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1884":1,"1885":1,"1886":1,"1891":1,"1894":1,"1896":1,"1934":2,"1941":1,"1942":1,"1948":2,"1949":1,"2015":1,"2019":2,"2021":1,"2030":1,"2060":1,"2066":2,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2122":1,"2123":1,"2124":1,"2129":1,"2132":1,"2134":1,"2139":1,"2252":1,"2279":1,"2283":2,"2288":2,"2291":1,"2296":1,"2303":1,"2334":1,"2336":1,"2380":1,"2393":1,"2395":1,"2397":1,"2398":1,"2403":1,"2411":1,"2421":1,"2425":2,"2444":1,"2493":1,"2495":1,"2497":2,"2567":1,"2568":1,"2576":1,"2577":4,"2581":1,"2583":1,"2587":4,"2590":1,"2614":1,"2615":1,"2630":1,"2631":2,"2633":5,"2635":1,"2636":1,"2655":1,"2662":1,"2684":1,"2700":1,"2704":1,"2705":1,"2706":1,"2707":5,"2719":2,"2721":3,"2722":6,"2788":1,"2829":1,"2886":2,"2901":5,"2914":1,"2934":1,"2937":2}}],["nomenclature",{"0":{"2687":1}}],["nomu30",{"2":{"143":2}}],["nose",{"2":{"2414":1,"2421":1}}],["nose2",{"2":{"499":1,"503":2}}],["nos",{"2":{"1484":1,"2427":1}}],["nobody",{"2":{"521":1}}],["nodes",{"2":{"583":1,"1532":5}}],["node",{"2":{"380":1,"458":1,"459":1,"580":1,"583":1,"1519":1,"1532":23,"1533":8,"2050":2}}],["nop",{"2":{"249":1}}],["nopq",{"2":{"249":1}}],["noop",{"2":{"2512":1,"2515":1,"2551":1}}],["noodlepad",{"2":{"249":1}}],["noon",{"2":{"211":1}}],["noxary",{"2":{"211":2}}],["noevent",{"2":{"199":1}}],["noeeprom",{"0":{"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1},"1":{"1866":1,"1886":1,"1892":1,"2092":1,"2124":1,"2130":1,"2140":1},"2":{"49":2,"191":1,"639":3,"1413":14,"2075":2,"2199":3,"2200":3,"2201":7,"2202":3,"2205":1}}],["noconfirm",{"2":{"158":1,"2594":1}}],["noci",{"2":{"149":1,"191":1}}],["norwegian",{"2":{"2880":3}}],["northwest",{"2":{"1769":1}}],["northeast",{"2":{"1769":1}}],["north",{"2":{"1343":1,"1769":2,"1993":1}}],["noroadsleft",{"2":{"266":1}}],["norm",{"2":{"191":1,"247":1,"533":1,"1479":4,"1480":6,"1621":1,"2513":6,"2531":6}}],["norman",{"2":{"176":1,"2880":3}}],["normalized",{"2":{"1641":1}}],["normalise",{"2":{"188":9,"191":10,"199":1,"266":1,"277":1}}],["normal",{"2":{"128":1,"152":1,"154":1,"224":1,"288":1,"334":1,"344":1,"492":1,"568":1,"628":1,"751":1,"754":2,"1317":2,"1346":1,"1375":2,"1410":1,"1413":2,"1419":1,"1450":1,"1451":2,"1492":3,"1497":1,"1512":1,"1516":1,"1529":1,"1604":1,"1621":1,"1626":1,"1633":1,"1638":1,"1661":2,"1754":1,"1755":1,"1756":1,"1757":1,"1993":1,"2017":1,"2248":1,"2258":1,"2266":1,"2268":1,"2269":1,"2270":1,"2372":1,"2410":1,"2563":3,"2583":1,"2587":1,"2630":1,"2643":1,"2644":1,"2667":2,"2671":1,"2697":1,"2721":1,"2731":1,"2746":1,"2749":1,"2750":2,"2896":1,"2920":1,"2936":1}}],["normally",{"2":{"99":1,"164":1,"302":1,"468":1,"493":1,"494":1,"567":1,"629":1,"673":1,"1413":1,"1425":1,"1451":1,"1508":1,"1608":1,"1630":1,"1751":2,"2167":1,"2168":1,"2192":1,"2206":1,"2265":1,"2285":1,"2311":1,"2528":1,"2651":1,"2908":1,"2909":1,"2933":1}}],["nor",{"2":{"174":1,"492":1,"635":1,"743":1,"750":1,"752":2,"755":1,"756":2,"1295":1,"1529":1,"2386":1,"2391":1,"2700":1,"2724":1}}],["nordic",{"2":{"5":1,"2368":2,"2728":2,"2729":5,"2734":4,"2735":1,"2737":1,"2738":1,"2743":1}}],["novices",{"2":{"2625":1}}],["novice",{"2":{"2445":1}}],["novelpad",{"2":{"143":2}}],["novelkeys",{"2":{"143":4,"149":1,"211":2,"311":2,"317":1}}],["november",{"0":{"115":1,"177":1,"223":1,"278":1},"1":{"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1},"2":{"279":1}}],["nov",{"0":{"52":1,"318":1},"1":{"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1},"2":{"55":1,"88":1,"104":1,"127":1,"170":1,"394":1,"407":6}}],["nonus",{"2":{"2505":2,"2515":2}}],["nonactuated",{"2":{"1675":2}}],["nonstandard",{"2":{"317":1}}],["nonex",{"2":{"2440":1}}],["none",{"2":{"266":1,"328":1,"333":1,"381":1,"391":1,"471":2,"472":2,"474":1,"480":2,"481":2,"482":3,"483":5,"485":1,"542":1,"686":2,"746":1,"747":1,"756":1,"857":2,"918":4,"920":1,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1089":4,"1091":1,"1092":2,"1123":4,"1125":1,"1126":2,"1160":2,"1189":1,"1245":1,"1315":1,"1516":1,"1557":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1841":1,"1843":1,"1846":6,"2034":1,"2039":7,"2040":3,"2052":2,"2061":1,"2063":1,"2069":8,"2183":4,"2291":1,"2310":3,"2311":1,"2312":3,"2370":2,"2440":1,"2521":2,"2669":1,"2707":1,"2746":1}}],["non",{"0":{"2447":1,"2703":1,"2792":1},"2":{"28":1,"49":1,"51":1,"70":1,"94":1,"133":1,"134":2,"160":2,"176":2,"199":1,"213":1,"222":1,"249":1,"308":2,"522":1,"579":1,"716":1,"754":1,"1413":1,"1422":2,"1433":1,"1446":1,"1511":1,"1521":1,"1522":1,"1660":1,"1675":2,"1686":2,"1751":2,"1754":1,"1755":2,"1757":2,"2030":1,"2031":1,"2034":1,"2040":1,"2045":1,"2163":2,"2262":1,"2269":1,"2289":1,"2290":1,"2310":1,"2312":1,"2324":1,"2382":1,"2427":1,"2428":1,"2445":1,"2505":2,"2512":1,"2515":3,"2549":2,"2566":1,"2568":2,"2697":1,"2703":2,"2718":1,"2719":1,"2721":1,"2740":1,"2773":1,"2790":1,"2888":1}}],["noise",{"2":{"17":1,"1406":4,"1407":6,"1410":2,"1995":1,"2377":1,"2384":1}}],["nowhere",{"2":{"2567":1}}],["now",{"0":{"90":1,"105":1,"137":1,"273":1},"2":{"10":3,"11":2,"16":1,"18":2,"25":1,"45":1,"49":5,"50":2,"58":1,"69":2,"70":2,"73":1,"74":1,"76":1,"80":1,"83":1,"94":1,"98":1,"99":2,"103":1,"104":1,"105":1,"107":1,"114":1,"118":2,"119":1,"120":2,"124":2,"125":1,"126":2,"127":1,"130":1,"131":1,"134":1,"137":1,"138":1,"141":1,"146":1,"153":1,"172":1,"173":1,"174":1,"182":2,"185":1,"194":1,"195":1,"196":1,"201":3,"206":2,"209":1,"211":1,"214":1,"224":1,"234":2,"235":1,"245":1,"246":1,"248":1,"262":2,"263":1,"273":1,"275":2,"283":2,"293":2,"305":2,"307":1,"314":3,"323":2,"331":1,"383":1,"386":1,"387":3,"397":1,"399":1,"400":1,"401":1,"402":2,"405":4,"471":2,"520":1,"547":1,"548":1,"587":1,"663":1,"718":1,"1308":1,"1359":4,"1373":1,"1413":3,"1443":1,"1452":1,"1517":4,"1586":1,"1598":1,"1609":1,"1667":2,"1732":1,"1756":1,"1804":1,"1805":1,"2189":1,"2190":1,"2242":1,"2248":1,"2252":1,"2253":1,"2270":1,"2291":1,"2295":1,"2303":1,"2308":1,"2310":1,"2312":1,"2403":2,"2423":1,"2459":2,"2491":1,"2495":1,"2501":1,"2551":1,"2566":1,"2575":1,"2576":1,"2583":2,"2588":1,"2604":1,"2622":1,"2623":1,"2627":2,"2628":1,"2629":1,"2630":3,"2632":3,"2633":1,"2655":1,"2656":1,"2662":1,"2666":1,"2668":1,"2707":2,"2722":2,"2887":1,"2901":1}}],["no",{"0":{"141":1,"590":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1506":1,"1610":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2921":1},"2":{"2":2,"5":1,"6":1,"48":1,"50":1,"74":1,"88":2,"92":1,"103":2,"104":2,"112":1,"114":1,"118":1,"124":1,"126":1,"127":2,"130":1,"134":1,"141":1,"149":3,"154":1,"176":1,"189":1,"191":1,"196":1,"199":2,"201":1,"211":2,"213":1,"218":1,"224":1,"231":1,"233":1,"240":1,"245":1,"249":1,"255":1,"262":1,"265":1,"266":4,"268":1,"273":3,"276":1,"279":1,"284":1,"285":1,"312":1,"317":1,"328":1,"342":1,"396":1,"403":1,"405":1,"406":1,"423":1,"432":1,"437":1,"453":1,"457":1,"473":2,"548":1,"560":5,"562":2,"568":1,"572":1,"573":1,"587":1,"594":1,"605":1,"611":1,"613":3,"616":1,"637":2,"676":1,"682":1,"684":1,"720":1,"747":1,"749":1,"764":1,"765":1,"920":1,"1091":1,"1125":1,"1210":1,"1244":1,"1245":3,"1265":1,"1273":1,"1294":1,"1295":1,"1316":1,"1317":1,"1358":1,"1369":1,"1377":1,"1402":1,"1405":1,"1407":1,"1410":7,"1412":1,"1418":1,"1425":1,"1434":1,"1466":1,"1475":1,"1484":1,"1485":1,"1490":1,"1492":3,"1494":1,"1496":2,"1497":1,"1504":5,"1511":1,"1512":1,"1516":2,"1522":4,"1527":2,"1528":1,"1584":6,"1589":1,"1592":1,"1599":1,"1603":1,"1610":1,"1612":2,"1614":1,"1616":2,"1641":1,"1655":1,"1656":2,"1658":1,"1662":1,"1664":1,"1665":2,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1746":5,"1749":3,"1751":5,"1752":2,"1755":2,"1756":1,"1758":3,"1760":1,"1770":1,"1805":1,"1807":1,"1818":1,"1821":1,"1840":10,"1841":1,"1843":1,"1919":1,"1931":2,"1932":1,"1937":4,"1958":2,"2003":1,"2052":1,"2060":10,"2061":1,"2063":1,"2073":1,"2159":1,"2160":1,"2181":1,"2191":2,"2198":1,"2210":2,"2213":1,"2251":1,"2252":3,"2253":1,"2268":2,"2271":2,"2285":2,"2291":3,"2303":1,"2309":1,"2310":1,"2318":1,"2369":1,"2381":1,"2410":1,"2411":5,"2412":1,"2418":4,"2426":1,"2435":1,"2445":1,"2459":3,"2471":1,"2497":1,"2502":1,"2512":1,"2515":1,"2532":1,"2537":1,"2551":2,"2554":1,"2563":1,"2564":2,"2567":4,"2568":1,"2571":1,"2605":1,"2611":1,"2629":1,"2646":1,"2650":1,"2657":1,"2663":1,"2667":1,"2669":1,"2713":1,"2719":1,"2720":1,"2721":15,"2727":2,"2728":2,"2729":1,"2732":2,"2734":1,"2741":4,"2742":4,"2743":1,"2746":1,"2748":8,"2750":3,"2760":1,"2766":1,"2769":5,"2787":8,"2847":1,"2862":1,"2864":1,"2865":1,"2871":1,"2875":1,"2879":2,"2882":7,"2883":2,"2884":2,"2885":1,"2901":1,"2914":2,"2917":3,"2921":1,"2927":1,"2929":1,"2930":5}}],["noto11",{"2":{"2748":4,"2750":3}}],["notosans",{"2":{"2748":1}}],["notset",{"2":{"490":1}}],["nothing",{"0":{"1317":1},"2":{"430":1,"664":1,"747":1,"1359":3,"1425":2,"1619":1,"1756":1,"2044":1,"2160":1,"2253":1,"2410":1,"2670":1,"2671":1,"2901":1,"2915":1,"2917":2,"2923":1}}],["noting",{"2":{"1599":1,"2302":1}}],["notion",{"2":{"1528":1}}],["notification",{"2":{"346":1,"356":1,"1627":1}}],["notified",{"2":{"312":1}}],["noticeably",{"2":{"1947":1}}],["noticeable",{"2":{"570":1,"2908":1}}],["noticed",{"2":{"1665":1,"1947":1}}],["notices",{"0":{"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"330":1},"1":{"265":1,"275":1,"276":1,"283":1,"284":1,"293":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"314":1,"315":1,"316":1,"327":1,"331":1,"332":1},"2":{"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1}}],["notice",{"0":{"2896":1},"2":{"263":1,"264":1,"274":1,"276":1,"282":1,"292":1,"301":1,"313":1,"326":1,"405":1,"1451":2,"1452":1,"2896":1,"2920":1,"2930":2,"2931":1}}],["notably",{"2":{"158":1,"1340":1,"1955":1}}],["notable",{"0":{"79":1,"97":1,"106":1,"117":1,"129":1,"136":1,"144":1,"151":1,"162":1,"171":1,"178":1,"187":1,"198":1,"201":1,"208":1,"213":1,"224":1,"227":1,"238":1,"242":1,"251":1,"261":1,"268":1,"279":1,"287":1,"296":1,"319":1},"1":{"80":1,"81":1,"82":1,"83":1,"84":1,"98":1,"99":1,"100":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"118":1,"119":1,"120":1,"130":1,"131":1,"132":1,"133":1,"137":1,"138":1,"145":1,"146":1,"147":1,"148":1,"152":1,"153":1,"154":1,"163":1,"164":1,"172":1,"173":1,"174":1,"175":1,"179":1,"188":1,"189":1,"190":1,"202":1,"203":1,"204":1,"209":1,"210":1,"214":1,"215":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"262":1,"263":1,"288":1,"289":1,"297":1,"298":1,"320":1},"2":{"224":1,"279":1,"682":1,"1471":1,"2569":1}}],["notation",{"0":{"111":1},"2":{"111":1,"323":2,"668":1,"2459":1}}],["noted",{"2":{"103":1,"126":1,"276":1,"1443":1,"2063":1,"2582":1}}],["note",{"0":{"27":1,"2419":1},"2":{"27":1,"132":1,"199":1,"201":1,"213":1,"222":5,"241":1,"253":1,"270":1,"272":1,"273":1,"281":1,"390":1,"391":1,"424":1,"428":1,"430":1,"437":1,"459":1,"486":1,"546":1,"563":1,"591":2,"613":1,"654":1,"685":1,"686":1,"692":2,"696":2,"714":1,"722":1,"760":1,"888":1,"1189":1,"1194":1,"1197":1,"1287":1,"1312":1,"1313":1,"1362":1,"1368":1,"1404":1,"1416":2,"1432":1,"1434":1,"1442":1,"1444":1,"1452":1,"1471":1,"1475":1,"1481":1,"1482":1,"1487":3,"1497":1,"1508":1,"1512":1,"1516":1,"1557":1,"1560":1,"1591":1,"1633":1,"1658":1,"1756":1,"1757":1,"1758":1,"1760":1,"1768":1,"1840":1,"1844":1,"1913":3,"1919":72,"1920":1,"1948":2,"1951":1,"1982":1,"1989":1,"1997":1,"2014":1,"2016":1,"2032":1,"2040":1,"2043":2,"2045":1,"2060":1,"2064":1,"2066":1,"2183":1,"2188":1,"2189":3,"2191":1,"2198":1,"2214":1,"2259":1,"2260":1,"2265":1,"2296":1,"2312":2,"2313":1,"2316":1,"2324":1,"2367":1,"2400":2,"2410":2,"2411":1,"2418":1,"2423":2,"2424":1,"2427":1,"2478":1,"2480":1,"2482":1,"2489":1,"2491":1,"2495":1,"2499":1,"2532":72,"2549":2,"2551":1,"2553":1,"2554":1,"2582":1,"2600":1,"2615":1,"2619":1,"2620":1,"2621":1,"2646":1,"2653":1,"2666":1,"2687":1,"2703":1,"2719":1,"2720":1,"2745":1,"2747":1,"2750":1,"2879":1,"2882":1,"2901":2,"2902":1,"2903":1,"2915":2,"2917":1,"2923":1,"2936":2,"2937":3,"2938":1}}],["notes",{"0":{"717":1,"720":1,"2723":1},"2":{"10":1,"215":1,"403":1,"711":1,"717":1,"1389":1,"1390":1,"1405":2,"1470":1,"1479":2,"1484":1,"1485":1,"1487":1,"1691":1,"1919":2,"1937":1,"2039":1,"2042":1,"2255":1,"2276":1,"2532":2,"2684":1,"2884":1,"2914":1}}],["not",{"0":{"602":1,"1314":1,"1346":1},"2":{"0":1,"5":1,"9":1,"14":1,"19":1,"23":3,"25":1,"28":1,"31":1,"34":1,"39":1,"49":1,"50":1,"52":1,"73":1,"90":1,"92":2,"114":2,"125":1,"134":3,"149":1,"153":2,"154":1,"160":2,"166":1,"176":1,"182":1,"185":1,"194":1,"198":1,"199":4,"201":2,"209":1,"211":1,"214":1,"221":1,"222":1,"232":1,"236":2,"240":2,"241":1,"249":2,"251":1,"253":1,"266":2,"268":1,"270":1,"273":1,"276":1,"277":2,"281":1,"284":1,"303":1,"317":1,"320":1,"328":1,"338":6,"341":2,"359":1,"364":1,"374":1,"390":2,"393":1,"397":3,"408":1,"418":1,"420":1,"431":2,"437":3,"442":2,"459":1,"461":1,"487":1,"490":1,"492":1,"493":1,"494":1,"497":2,"498":1,"503":2,"509":1,"510":1,"511":1,"520":6,"522":3,"524":1,"526":1,"527":2,"532":2,"533":1,"534":1,"536":1,"538":1,"539":1,"540":1,"541":2,"543":1,"546":1,"547":1,"548":1,"550":1,"552":1,"553":1,"554":1,"559":1,"562":3,"566":1,"567":2,"570":1,"572":1,"573":1,"580":1,"586":1,"590":1,"594":2,"595":1,"597":1,"598":1,"602":2,"608":1,"609":1,"611":1,"612":1,"613":5,"616":2,"617":2,"624":1,"631":1,"637":2,"641":1,"645":2,"649":1,"651":1,"654":1,"655":2,"657":1,"666":2,"670":2,"673":1,"682":1,"683":2,"684":1,"685":1,"686":1,"690":2,"692":2,"701":2,"704":1,"711":3,"716":1,"720":3,"724":1,"728":3,"737":1,"745":1,"746":1,"750":1,"751":4,"752":1,"759":1,"760":1,"764":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"794":2,"799":1,"809":1,"813":1,"817":1,"819":1,"825":5,"836":1,"840":1,"844":1,"846":1,"854":5,"868":1,"872":1,"876":1,"878":1,"886":6,"900":1,"904":1,"908":1,"910":1,"918":5,"935":1,"939":1,"943":1,"945":1,"953":5,"969":1,"973":1,"977":1,"979":1,"987":5,"1003":1,"1007":1,"1011":1,"1013":1,"1021":5,"1037":1,"1041":1,"1045":1,"1047":1,"1055":5,"1071":1,"1075":1,"1079":1,"1081":1,"1089":5,"1105":1,"1109":1,"1113":1,"1115":1,"1123":5,"1139":1,"1143":1,"1147":1,"1149":1,"1157":5,"1173":1,"1177":1,"1181":1,"1183":1,"1190":1,"1196":1,"1200":2,"1201":3,"1202":1,"1213":5,"1226":1,"1230":1,"1234":1,"1236":1,"1244":1,"1245":2,"1257":1,"1260":1,"1263":1,"1275":1,"1277":1,"1282":3,"1289":1,"1291":1,"1294":1,"1296":2,"1299":1,"1300":3,"1303":1,"1312":2,"1313":2,"1329":1,"1335":1,"1343":1,"1345":2,"1346":1,"1353":1,"1355":1,"1358":2,"1359":2,"1362":2,"1368":1,"1373":1,"1375":1,"1377":1,"1378":1,"1389":2,"1390":2,"1392":2,"1395":1,"1405":1,"1406":4,"1407":2,"1412":1,"1416":3,"1419":1,"1421":2,"1422":1,"1425":1,"1432":1,"1435":1,"1438":1,"1442":1,"1443":2,"1448":1,"1450":2,"1452":3,"1479":1,"1480":8,"1485":1,"1492":1,"1493":6,"1495":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1504":1,"1511":2,"1512":3,"1513":1,"1527":1,"1528":1,"1529":1,"1532":1,"1548":1,"1550":4,"1556":1,"1562":2,"1564":2,"1584":1,"1587":4,"1589":1,"1599":1,"1603":1,"1609":1,"1611":1,"1614":4,"1624":1,"1627":1,"1638":1,"1639":1,"1642":1,"1656":4,"1660":1,"1662":2,"1669":1,"1672":4,"1674":1,"1675":6,"1681":1,"1684":1,"1691":1,"1693":5,"1696":1,"1735":2,"1740":1,"1742":1,"1746":2,"1747":1,"1749":1,"1751":5,"1752":2,"1754":2,"1755":1,"1756":2,"1757":1,"1758":3,"1759":1,"1765":2,"1767":1,"1770":1,"1791":6,"1792":1,"1805":1,"1840":2,"1844":1,"1845":1,"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"1913":1,"1914":1,"1917":1,"1920":1,"1928":1,"1929":1,"1931":2,"1933":1,"1934":1,"1943":2,"1945":3,"1946":9,"1947":4,"1948":7,"1950":1,"1951":1,"1953":1,"1955":1,"1956":1,"1979":1,"1982":1,"1989":1,"1990":1,"2000":6,"2002":4,"2004":3,"2006":3,"2007":1,"2008":1,"2009":3,"2011":1,"2014":1,"2016":15,"2017":1,"2018":8,"2021":4,"2025":2,"2030":1,"2032":2,"2034":1,"2045":1,"2050":1,"2060":2,"2066":1,"2068":1,"2069":2,"2075":1,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2160":1,"2161":2,"2165":1,"2171":2,"2179":1,"2181":1,"2182":2,"2183":1,"2184":12,"2185":1,"2188":1,"2192":1,"2198":9,"2199":3,"2200":3,"2201":7,"2202":3,"2210":1,"2212":1,"2214":1,"2252":1,"2253":2,"2254":2,"2258":2,"2263":1,"2265":1,"2266":2,"2268":2,"2271":2,"2272":2,"2281":3,"2283":4,"2287":3,"2293":4,"2294":2,"2302":2,"2303":4,"2310":12,"2311":1,"2312":1,"2313":1,"2316":1,"2318":1,"2322":2,"2324":5,"2325":1,"2361":1,"2367":2,"2369":1,"2370":12,"2372":3,"2374":1,"2377":1,"2384":1,"2386":1,"2388":1,"2389":1,"2400":2,"2402":1,"2404":1,"2407":2,"2408":1,"2410":2,"2411":3,"2412":1,"2416":2,"2418":1,"2420":2,"2421":2,"2422":2,"2424":1,"2425":1,"2427":3,"2434":2,"2435":2,"2439":3,"2440":1,"2441":2,"2442":1,"2443":1,"2445":1,"2449":1,"2459":1,"2463":1,"2464":1,"2467":2,"2468":1,"2475":2,"2476":1,"2478":1,"2480":1,"2482":1,"2483":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":2,"2496":3,"2498":1,"2499":2,"2501":1,"2510":1,"2515":1,"2516":1,"2521":12,"2545":1,"2553":1,"2554":2,"2556":2,"2559":1,"2560":1,"2566":3,"2567":5,"2568":1,"2569":4,"2572":1,"2577":1,"2578":2,"2580":1,"2582":3,"2592":1,"2594":1,"2595":1,"2596":1,"2599":1,"2605":3,"2606":1,"2609":5,"2610":2,"2612":1,"2614":1,"2615":1,"2619":2,"2621":1,"2626":1,"2627":1,"2628":1,"2630":2,"2632":1,"2633":1,"2638":1,"2652":2,"2653":1,"2655":1,"2660":1,"2667":1,"2669":2,"2670":1,"2671":1,"2672":1,"2674":3,"2675":1,"2677":2,"2683":1,"2684":2,"2686":1,"2687":1,"2696":1,"2697":1,"2698":1,"2700":3,"2702":1,"2703":2,"2707":1,"2710":2,"2713":1,"2719":8,"2720":2,"2721":17,"2722":3,"2724":2,"2725":1,"2729":1,"2731":2,"2732":2,"2734":1,"2745":1,"2746":1,"2747":1,"2748":1,"2749":1,"2750":8,"2760":1,"2762":1,"2769":1,"2774":1,"2776":1,"2778":1,"2780":1,"2784":1,"2788":2,"2789":1,"2790":2,"2793":1,"2798":1,"2840":1,"2844":1,"2846":2,"2862":4,"2863":1,"2875":1,"2877":1,"2879":2,"2880":2,"2882":4,"2883":1,"2884":1,"2885":1,"2886":1,"2894":1,"2895":3,"2898":1,"2901":2,"2902":3,"2907":2,"2908":4,"2909":2,"2917":3,"2919":1,"2920":1,"2926":1,"2930":1,"2936":1,"2940":2,"2941":1,"2942":1}}],["y1",{"2":{"2750":1}}],["y0",{"2":{"2750":1}}],["y+",{"2":{"2003":1}}],["yyyy",{"2":{"405":2,"421":3,"422":3,"423":2,"424":2}}],["yyyyqn",{"2":{"397":1}}],["yynmt",{"2":{"143":2,"149":2}}],["yz",{"2":{"266":1,"328":1}}],["y",{"0":{"1653":1,"2776":1,"2778":1},"1":{"1654":1,"2777":1,"2779":1},"2":{"249":1,"308":1,"369":1,"433":2,"587":2,"1422":4,"1641":2,"1645":2,"1653":1,"1654":2,"1736":1,"1768":1,"1770":1,"1771":2,"1840":7,"1846":2,"1928":1,"1948":2,"1989":1,"1992":2,"2000":2,"2002":3,"2003":2,"2006":2,"2007":4,"2014":4,"2016":5,"2018":5,"2021":3,"2024":2,"2025":3,"2027":2,"2028":2,"2045":1,"2060":7,"2069":2,"2160":5,"2283":2,"2465":2,"2503":3,"2515":3,"2553":1,"2594":4,"2621":4,"2707":2,"2714":16,"2749":3,"2750":14,"2776":3,"2778":3,"2788":19,"2789":17,"2793":9,"2862":3,"2864":2,"2871":2,"2915":1}}],["ymlname",{"2":{"2600":1}}],["yml",{"2":{"2598":1,"2600":2,"2601":1,"2602":1,"2603":1}}],["ym68",{"2":{"211":1}}],["ymd96",{"2":{"143":2,"149":1}}],["ymd75",{"2":{"143":2,"149":1,"222":1}}],["ymdk",{"2":{"143":5,"149":5,"159":1,"160":1,"211":5,"222":1,"226":2,"236":1,"291":2,"294":1,"308":1}}],["yttyx",{"2":{"211":1}}],["yum",{"2":{"2594":1}}],["yunzii",{"2":{"2567":1}}],["yugo",{"2":{"207":2,"211":1}}],["yurei",{"2":{"143":2}}],["yosino58",{"2":{"176":1}}],["youtube",{"2":{"2187":2}}],["yourgithub",{"2":{"2725":2}}],["yours",{"0":{"2472":1},"2":{"670":1}}],["yourself",{"2":{"392":1,"412":1,"521":1,"550":1,"1368":1,"1418":1,"1616":1,"1732":1,"2208":1,"2291":1,"2494":1,"2550":1,"2572":1}}],["yourkeyboard",{"2":{"201":1}}],["yourkeymap",{"2":{"132":1}}],["yourkb",{"2":{"132":1}}],["your",{"0":{"410":1,"411":1,"507":1,"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"600":1,"624":1,"1324":1,"1411":1,"1446":1,"1627":1,"1628":1,"1667":1,"1925":1,"2427":1,"2434":1,"2575":1,"2576":1,"2578":1,"2579":1,"2580":1,"2581":1,"2603":1,"2604":1,"2605":1,"2606":1,"2608":1,"2609":1,"2611":1,"2613":1,"2622":1,"2623":1,"2627":1,"2629":1,"2630":1,"2631":1,"2632":1,"2634":1,"2656":1,"2707":1,"2774":1,"2786":1,"2878":1},"1":{"625":1,"1926":1,"1927":1,"2576":1,"2577":1,"2578":1,"2579":1,"2580":1,"2581":1,"2605":1,"2606":1,"2607":2,"2608":2,"2609":1,"2610":1,"2612":1,"2613":1,"2614":2,"2615":2,"2616":2,"2617":2,"2618":2,"2619":2,"2620":2,"2621":1,"2622":1,"2632":1,"2633":1,"2634":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"1":1,"14":1,"18":4,"23":1,"25":1,"31":1,"34":1,"36":1,"37":1,"43":1,"45":2,"49":3,"82":1,"87":1,"89":1,"90":1,"107":2,"110":3,"116":1,"119":4,"120":1,"124":3,"132":1,"196":1,"201":1,"202":2,"218":1,"228":1,"233":2,"235":1,"240":1,"241":2,"253":2,"255":2,"256":1,"257":1,"258":1,"259":2,"270":2,"272":2,"273":3,"276":1,"281":2,"284":1,"288":1,"307":7,"323":2,"338":3,"347":1,"359":1,"368":1,"370":2,"371":1,"372":1,"375":1,"376":1,"378":1,"380":1,"383":2,"387":3,"390":1,"391":2,"392":2,"397":4,"408":2,"409":1,"410":2,"411":2,"412":2,"416":1,"417":1,"418":2,"419":2,"421":1,"427":2,"430":1,"432":1,"433":4,"437":1,"446":1,"447":1,"448":1,"454":1,"456":1,"458":1,"460":1,"474":1,"487":2,"488":1,"489":3,"492":2,"493":1,"503":5,"504":1,"507":1,"520":2,"521":1,"523":1,"527":1,"529":1,"533":2,"545":1,"548":3,"549":1,"559":7,"561":1,"565":1,"572":2,"591":3,"592":3,"593":1,"594":3,"595":1,"597":4,"598":3,"605":1,"607":1,"608":2,"611":9,"613":3,"614":1,"615":2,"616":3,"617":11,"620":1,"621":2,"622":2,"623":2,"624":2,"625":1,"627":4,"630":1,"641":3,"644":1,"645":2,"646":1,"658":1,"664":2,"666":2,"669":1,"670":3,"671":4,"673":2,"674":1,"676":2,"677":1,"681":3,"682":1,"683":3,"684":3,"686":1,"688":2,"695":1,"696":1,"698":4,"700":2,"701":1,"717":2,"718":1,"722":1,"727":1,"728":1,"729":1,"731":1,"743":1,"746":2,"747":1,"750":1,"751":2,"752":1,"753":1,"754":1,"756":1,"762":2,"763":1,"764":1,"765":3,"769":1,"794":1,"798":1,"799":1,"802":1,"824":1,"825":1,"826":1,"828":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"860":1,"885":1,"886":1,"887":1,"888":1,"890":1,"917":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"925":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"959":1,"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"993":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1027":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1061":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1095":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1129":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1163":1,"1192":2,"1195":4,"1197":1,"1198":4,"1200":6,"1201":7,"1203":1,"1205":1,"1206":1,"1210":1,"1212":1,"1213":1,"1214":1,"1216":1,"1243":2,"1244":1,"1245":3,"1264":2,"1265":1,"1266":2,"1281":2,"1282":1,"1283":1,"1284":2,"1285":1,"1291":1,"1294":2,"1297":2,"1298":1,"1300":1,"1308":1,"1309":1,"1310":2,"1312":2,"1314":3,"1317":2,"1319":4,"1320":1,"1321":1,"1322":1,"1324":2,"1326":1,"1327":1,"1328":1,"1329":2,"1330":1,"1339":1,"1344":1,"1345":2,"1346":1,"1351":2,"1356":1,"1361":2,"1362":3,"1365":1,"1367":1,"1369":1,"1385":2,"1387":1,"1389":1,"1393":1,"1400":1,"1403":1,"1404":1,"1407":2,"1411":2,"1412":3,"1413":2,"1416":3,"1417":2,"1418":1,"1419":4,"1420":2,"1421":3,"1425":1,"1433":1,"1434":3,"1435":5,"1436":2,"1437":1,"1438":4,"1439":1,"1441":9,"1442":6,"1443":7,"1444":1,"1446":1,"1447":2,"1452":1,"1453":2,"1455":1,"1467":2,"1474":4,"1479":5,"1482":3,"1484":6,"1485":3,"1486":4,"1487":1,"1491":1,"1492":1,"1494":2,"1495":1,"1496":1,"1497":3,"1512":1,"1514":1,"1515":3,"1516":5,"1517":1,"1518":1,"1520":1,"1521":1,"1527":1,"1536":1,"1537":1,"1548":1,"1550":2,"1551":1,"1552":1,"1557":1,"1562":2,"1583":2,"1584":1,"1585":2,"1586":1,"1588":3,"1595":1,"1596":2,"1597":1,"1599":2,"1600":1,"1601":1,"1606":1,"1607":1,"1611":1,"1612":1,"1613":1,"1616":4,"1617":2,"1619":1,"1620":2,"1621":3,"1622":1,"1627":4,"1628":3,"1640":1,"1655":3,"1656":1,"1657":2,"1659":4,"1660":1,"1661":4,"1662":2,"1664":1,"1666":1,"1670":1,"1677":1,"1678":2,"1679":2,"1692":1,"1693":1,"1695":1,"1707":1,"1733":2,"1735":1,"1736":3,"1738":2,"1739":1,"1749":1,"1754":1,"1756":1,"1758":2,"1760":2,"1765":1,"1766":1,"1767":2,"1768":1,"1769":1,"1770":2,"1791":2,"1796":1,"1800":2,"1801":1,"1803":1,"1804":2,"1805":13,"1806":1,"1839":1,"1840":3,"1843":1,"1844":3,"1845":3,"1913":1,"1915":1,"1916":1,"1917":1,"1924":1,"1925":1,"1926":1,"1927":1,"1928":1,"1929":2,"1930":1,"1931":1,"1932":4,"1933":4,"1938":2,"1939":3,"1946":1,"1951":1,"1953":1,"1956":4,"1959":1,"1979":1,"1982":1,"1983":1,"1984":1,"1985":1,"1988":1,"1990":1,"1995":1,"1996":1,"1998":1,"1999":1,"2000":1,"2001":1,"2005":1,"2010":1,"2011":2,"2012":1,"2013":1,"2014":2,"2015":1,"2018":1,"2021":1,"2029":1,"2032":1,"2048":1,"2049":1,"2050":5,"2051":1,"2059":1,"2060":3,"2063":2,"2064":1,"2066":2,"2068":3,"2157":2,"2161":1,"2163":1,"2170":1,"2174":1,"2178":2,"2179":6,"2181":2,"2182":2,"2183":1,"2188":2,"2191":1,"2192":1,"2193":1,"2194":1,"2206":1,"2208":2,"2209":1,"2210":3,"2213":1,"2214":1,"2216":1,"2218":1,"2242":1,"2243":2,"2249":2,"2251":1,"2252":2,"2261":1,"2262":1,"2264":1,"2265":4,"2266":1,"2267":2,"2268":1,"2269":1,"2271":1,"2277":5,"2285":3,"2286":3,"2287":2,"2288":1,"2289":1,"2290":5,"2291":7,"2293":1,"2294":1,"2295":2,"2298":1,"2301":1,"2302":4,"2303":1,"2305":4,"2310":6,"2311":4,"2312":5,"2313":1,"2315":2,"2317":2,"2319":1,"2320":1,"2321":2,"2322":6,"2323":5,"2324":4,"2369":1,"2371":1,"2374":1,"2375":2,"2376":1,"2377":1,"2379":1,"2381":1,"2382":1,"2383":2,"2384":2,"2386":1,"2388":1,"2390":1,"2391":1,"2393":1,"2395":1,"2397":1,"2398":2,"2403":13,"2408":3,"2410":1,"2411":17,"2412":4,"2414":1,"2416":3,"2418":3,"2420":3,"2421":4,"2422":2,"2423":2,"2425":5,"2426":3,"2427":3,"2432":1,"2433":2,"2436":2,"2438":4,"2439":1,"2440":1,"2441":1,"2443":1,"2444":3,"2445":3,"2446":4,"2448":1,"2449":7,"2460":1,"2462":1,"2465":1,"2466":1,"2472":1,"2474":1,"2487":1,"2490":1,"2495":1,"2499":2,"2501":1,"2513":2,"2518":1,"2552":1,"2555":1,"2559":1,"2560":1,"2567":1,"2572":7,"2573":2,"2575":5,"2576":4,"2577":6,"2578":5,"2580":3,"2581":2,"2583":4,"2584":1,"2585":5,"2587":4,"2588":5,"2589":2,"2590":4,"2591":3,"2592":2,"2594":1,"2595":1,"2596":1,"2598":1,"2599":4,"2600":1,"2601":2,"2602":2,"2603":2,"2604":1,"2605":10,"2606":2,"2607":4,"2609":6,"2610":4,"2611":1,"2612":1,"2613":1,"2615":1,"2619":2,"2621":4,"2622":2,"2623":2,"2625":3,"2626":3,"2627":5,"2628":5,"2629":3,"2630":14,"2631":4,"2632":8,"2633":10,"2634":3,"2643":2,"2645":2,"2651":2,"2652":2,"2656":1,"2662":2,"2664":1,"2666":1,"2667":5,"2668":2,"2669":2,"2670":2,"2671":2,"2673":1,"2687":2,"2693":1,"2694":1,"2695":3,"2696":1,"2698":1,"2700":1,"2702":1,"2706":1,"2707":10,"2708":3,"2709":1,"2710":2,"2711":2,"2712":1,"2719":8,"2721":3,"2722":2,"2723":10,"2724":2,"2725":3,"2744":3,"2745":1,"2746":1,"2747":1,"2749":11,"2750":6,"2751":1,"2752":1,"2754":1,"2756":1,"2757":3,"2780":3,"2781":1,"2783":1,"2800":1,"2804":1,"2808":1,"2812":1,"2820":1,"2823":1,"2825":2,"2842":2,"2843":1,"2844":3,"2877":2,"2878":1,"2879":2,"2881":1,"2882":3,"2883":3,"2884":2,"2885":1,"2887":3,"2888":1,"2892":1,"2899":3,"2901":10,"2908":2,"2909":2,"2910":3,"2911":1,"2912":1,"2914":1,"2915":1,"2917":5,"2919":3,"2920":2,"2922":1,"2923":2,"2925":1,"2929":2,"2932":1,"2935":1,"2936":1,"2937":1,"2938":2,"2942":1}}],["you",{"0":{"1737":1,"2462":1,"2467":1,"2843":1},"2":{"1":2,"7":2,"16":1,"23":3,"31":5,"34":2,"37":1,"43":1,"45":2,"49":2,"70":1,"82":1,"83":2,"89":1,"90":3,"107":2,"110":2,"112":2,"119":6,"120":2,"124":3,"152":3,"157":2,"158":3,"182":1,"190":1,"194":2,"202":2,"206":3,"218":2,"228":2,"232":3,"233":2,"240":7,"241":2,"245":1,"248":2,"253":2,"254":2,"255":2,"256":2,"259":2,"270":2,"272":2,"281":2,"307":4,"323":4,"347":1,"359":3,"362":1,"367":2,"368":2,"369":2,"371":3,"372":1,"373":1,"375":2,"376":1,"377":2,"378":1,"382":2,"383":2,"387":4,"388":2,"390":1,"392":2,"397":3,"408":1,"409":1,"410":3,"412":2,"415":2,"416":2,"417":1,"418":2,"419":2,"421":1,"427":8,"428":1,"429":1,"430":1,"431":1,"432":1,"433":2,"434":1,"435":2,"438":1,"440":1,"443":1,"445":1,"450":1,"451":1,"452":2,"453":2,"454":4,"456":2,"458":1,"461":1,"463":2,"467":2,"472":2,"474":1,"475":2,"480":1,"481":1,"486":4,"487":1,"488":1,"489":4,"490":1,"491":3,"492":4,"493":3,"494":2,"495":1,"496":1,"497":1,"498":1,"499":1,"502":1,"503":5,"504":3,"505":3,"506":1,"507":2,"508":2,"509":2,"512":1,"520":6,"521":4,"522":2,"523":1,"524":3,"528":1,"529":1,"533":5,"534":1,"535":1,"536":1,"538":1,"541":4,"543":1,"545":2,"546":1,"548":3,"550":1,"552":2,"557":3,"559":3,"560":2,"561":2,"562":8,"563":1,"565":1,"566":1,"567":4,"568":4,"570":1,"572":2,"574":2,"577":1,"578":3,"579":1,"589":1,"594":4,"595":1,"596":2,"597":4,"598":4,"599":1,"602":2,"603":1,"608":3,"609":2,"610":2,"611":13,"612":2,"613":6,"614":4,"615":2,"616":4,"617":13,"618":1,"619":3,"623":1,"624":3,"625":1,"627":3,"628":3,"630":1,"631":6,"632":2,"635":1,"638":1,"641":1,"642":2,"643":4,"644":2,"645":1,"658":1,"664":3,"666":4,"667":1,"668":2,"669":1,"670":4,"671":4,"672":1,"673":2,"674":1,"676":1,"678":1,"681":3,"682":3,"683":7,"684":6,"685":2,"686":1,"687":1,"690":1,"698":3,"700":4,"704":1,"714":2,"715":1,"716":2,"717":2,"718":2,"719":1,"722":2,"727":3,"730":1,"737":1,"746":3,"747":1,"751":1,"756":1,"760":3,"762":3,"763":2,"765":3,"798":3,"801":1,"809":1,"813":1,"817":1,"819":1,"824":3,"827":1,"836":1,"840":1,"844":1,"846":1,"853":3,"858":1,"859":1,"868":1,"872":1,"876":1,"878":1,"885":3,"889":1,"900":1,"904":1,"908":1,"910":1,"917":3,"923":1,"924":1,"935":1,"939":1,"943":1,"945":1,"952":3,"957":1,"958":1,"969":1,"973":1,"977":1,"979":1,"986":3,"991":1,"992":1,"1003":1,"1007":1,"1011":1,"1013":1,"1020":3,"1025":1,"1026":1,"1037":1,"1041":1,"1045":1,"1047":1,"1054":3,"1059":1,"1060":1,"1071":1,"1075":1,"1079":1,"1081":1,"1088":3,"1093":1,"1094":1,"1105":1,"1109":1,"1113":1,"1115":1,"1122":3,"1127":1,"1128":1,"1139":1,"1143":1,"1147":1,"1149":1,"1156":3,"1161":1,"1162":1,"1173":1,"1177":1,"1181":1,"1183":1,"1192":1,"1195":1,"1197":2,"1198":1,"1200":3,"1201":3,"1204":5,"1205":2,"1206":3,"1212":3,"1215":1,"1226":1,"1230":1,"1234":1,"1236":1,"1243":3,"1244":2,"1245":4,"1264":3,"1266":3,"1269":1,"1280":1,"1281":4,"1284":2,"1294":1,"1296":1,"1297":1,"1298":1,"1300":1,"1303":1,"1308":4,"1309":1,"1310":4,"1311":2,"1312":4,"1313":2,"1315":2,"1316":6,"1317":1,"1319":2,"1324":1,"1329":5,"1333":3,"1334":1,"1335":1,"1336":1,"1337":1,"1339":3,"1340":1,"1341":2,"1342":1,"1344":1,"1345":2,"1346":1,"1350":1,"1351":2,"1354":1,"1355":1,"1356":1,"1359":1,"1361":2,"1362":8,"1363":4,"1364":1,"1365":2,"1366":1,"1369":1,"1374":2,"1375":8,"1376":1,"1377":1,"1385":4,"1387":2,"1389":1,"1393":2,"1395":2,"1402":2,"1403":1,"1404":1,"1406":6,"1407":5,"1411":2,"1412":9,"1413":15,"1414":1,"1415":1,"1416":8,"1417":2,"1419":3,"1420":4,"1421":8,"1422":7,"1425":1,"1429":1,"1432":3,"1433":2,"1434":3,"1435":8,"1436":4,"1437":1,"1438":5,"1439":2,"1441":14,"1442":10,"1443":15,"1444":4,"1445":2,"1446":4,"1447":1,"1450":4,"1451":1,"1452":5,"1453":1,"1454":4,"1455":6,"1458":1,"1459":2,"1461":2,"1466":1,"1467":3,"1474":1,"1476":1,"1477":2,"1479":11,"1480":5,"1482":4,"1484":5,"1485":4,"1486":5,"1487":4,"1490":2,"1492":5,"1493":3,"1494":1,"1495":2,"1496":1,"1497":9,"1504":1,"1511":2,"1514":1,"1516":8,"1517":2,"1520":5,"1521":3,"1523":2,"1526":1,"1527":1,"1528":1,"1529":2,"1531":1,"1547":1,"1548":2,"1550":2,"1551":1,"1552":3,"1557":4,"1562":3,"1563":1,"1583":6,"1584":2,"1585":4,"1586":2,"1587":2,"1588":3,"1589":1,"1594":1,"1596":5,"1597":2,"1599":3,"1600":2,"1602":1,"1603":8,"1604":1,"1606":11,"1607":2,"1609":2,"1611":3,"1612":2,"1613":2,"1615":1,"1616":6,"1617":1,"1618":1,"1619":1,"1620":1,"1627":4,"1634":1,"1641":1,"1642":2,"1655":5,"1657":1,"1658":4,"1659":2,"1660":5,"1661":1,"1662":3,"1664":2,"1665":3,"1670":1,"1674":1,"1675":3,"1677":1,"1732":6,"1735":1,"1736":5,"1738":2,"1739":1,"1743":2,"1747":3,"1749":3,"1751":2,"1752":2,"1755":1,"1756":7,"1757":1,"1758":5,"1759":1,"1760":1,"1764":1,"1767":2,"1768":1,"1769":1,"1770":1,"1791":2,"1795":1,"1799":3,"1801":1,"1803":2,"1804":3,"1805":8,"1806":2,"1807":2,"1838":4,"1840":2,"1843":1,"1845":2,"1846":1,"1849":2,"1913":2,"1917":6,"1924":2,"1925":1,"1927":1,"1929":5,"1930":1,"1931":6,"1932":2,"1938":1,"1941":1,"1942":1,"1946":2,"1947":1,"1948":1,"1950":1,"1951":1,"1952":2,"1956":4,"1979":1,"1982":1,"1983":1,"1985":2,"1986":1,"1988":1,"1989":1,"1990":6,"1991":1,"1992":2,"1996":3,"1997":2,"2000":2,"2002":1,"2006":2,"2014":3,"2015":1,"2016":1,"2018":1,"2021":2,"2024":1,"2025":2,"2029":2,"2042":1,"2047":2,"2050":6,"2051":2,"2058":4,"2060":2,"2063":1,"2064":1,"2066":1,"2068":2,"2069":1,"2072":2,"2074":4,"2075":2,"2161":1,"2167":1,"2178":1,"2179":6,"2181":1,"2183":2,"2184":2,"2187":1,"2188":2,"2189":3,"2191":3,"2192":1,"2193":1,"2194":3,"2206":3,"2207":4,"2208":2,"2209":2,"2210":2,"2211":3,"2216":2,"2242":1,"2243":1,"2244":2,"2248":3,"2252":3,"2253":5,"2256":1,"2257":4,"2258":3,"2260":1,"2261":2,"2264":2,"2265":4,"2266":5,"2267":1,"2268":7,"2271":7,"2273":7,"2274":1,"2277":1,"2279":1,"2280":1,"2283":1,"2285":3,"2286":4,"2287":3,"2290":4,"2291":8,"2293":5,"2294":1,"2295":1,"2298":1,"2302":11,"2303":4,"2310":11,"2311":3,"2312":1,"2315":3,"2321":2,"2322":4,"2323":4,"2324":3,"2368":1,"2372":2,"2374":5,"2375":1,"2379":2,"2381":1,"2384":1,"2386":1,"2387":2,"2388":1,"2390":1,"2391":1,"2398":5,"2400":7,"2403":16,"2404":3,"2407":2,"2409":4,"2410":10,"2411":17,"2412":3,"2414":1,"2415":2,"2416":5,"2418":1,"2419":1,"2420":4,"2421":5,"2422":12,"2423":3,"2424":8,"2425":5,"2427":9,"2428":6,"2432":2,"2433":1,"2435":3,"2438":5,"2439":4,"2445":5,"2446":3,"2449":8,"2450":4,"2453":2,"2459":2,"2460":3,"2461":1,"2462":1,"2463":1,"2466":2,"2467":6,"2468":1,"2470":1,"2473":1,"2474":1,"2475":3,"2476":4,"2477":1,"2481":1,"2483":2,"2489":1,"2490":3,"2494":1,"2495":6,"2496":6,"2497":2,"2499":4,"2501":5,"2513":2,"2514":1,"2546":1,"2547":1,"2548":3,"2550":3,"2551":6,"2552":5,"2554":3,"2555":2,"2557":1,"2559":4,"2560":3,"2567":5,"2572":6,"2573":4,"2574":2,"2575":3,"2576":5,"2577":7,"2578":5,"2579":6,"2580":6,"2582":1,"2583":6,"2584":4,"2585":3,"2586":2,"2587":5,"2588":4,"2589":3,"2590":3,"2592":4,"2593":2,"2594":1,"2595":1,"2596":1,"2599":1,"2601":2,"2603":1,"2604":2,"2605":7,"2606":1,"2607":4,"2608":1,"2609":8,"2610":4,"2611":3,"2612":8,"2613":2,"2614":3,"2615":1,"2617":1,"2619":1,"2620":1,"2621":9,"2622":6,"2623":1,"2625":3,"2626":3,"2627":4,"2628":5,"2629":3,"2630":6,"2631":1,"2632":4,"2633":12,"2643":6,"2644":5,"2645":8,"2648":2,"2649":3,"2650":1,"2651":6,"2652":3,"2653":1,"2655":1,"2658":3,"2660":1,"2662":5,"2664":4,"2665":1,"2666":1,"2667":8,"2669":1,"2670":1,"2683":1,"2684":3,"2687":3,"2694":1,"2695":1,"2702":1,"2706":1,"2707":4,"2708":2,"2709":1,"2710":5,"2711":1,"2712":1,"2713":2,"2714":1,"2716":1,"2718":1,"2719":5,"2721":2,"2722":1,"2723":4,"2725":2,"2744":2,"2746":1,"2747":1,"2749":3,"2750":10,"2751":1,"2756":1,"2757":1,"2774":1,"2775":2,"2776":1,"2778":6,"2779":3,"2780":11,"2781":3,"2783":3,"2784":2,"2812":1,"2818":1,"2820":1,"2822":1,"2825":1,"2827":1,"2834":1,"2835":1,"2836":2,"2844":2,"2862":2,"2877":1,"2879":6,"2880":1,"2881":1,"2882":8,"2883":9,"2884":3,"2885":5,"2886":2,"2887":4,"2888":1,"2890":1,"2892":1,"2898":1,"2899":5,"2900":2,"2901":30,"2908":7,"2909":4,"2910":2,"2913":1,"2915":3,"2916":1,"2917":7,"2919":1,"2920":2,"2922":3,"2923":4,"2924":2,"2925":1,"2926":2,"2927":3,"2928":1,"2929":1,"2930":2,"2934":4,"2936":6,"2937":5,"2938":1,"2939":2,"2940":3,"2942":17}}],["yiancar",{"2":{"149":1}}],["yiancardesigns",{"2":{"143":3,"149":1}}],["yd68",{"2":{"143":2}}],["yd60mq",{"2":{"143":2,"149":1}}],["ydkb",{"2":{"143":3,"149":1,"211":2}}],["yapf",{"0":{"523":1},"2":{"499":1,"502":3,"523":1,"535":3}}],["yarn",{"2":{"458":1,"459":1}}],["yakiimo",{"2":{"211":1}}],["yandrstudio",{"2":{"199":1}}],["yangdigi",{"2":{"149":1}}],["yanghu",{"2":{"134":1}}],["yasui",{"2":{"143":2}}],["yaml",{"2":{"114":1}}],["yellow",{"2":{"387":1,"490":1,"492":1,"2067":2,"2073":1,"2205":2,"2605":1}}],["yet",{"2":{"149":1,"154":1,"209":1,"236":1,"553":1,"580":1,"594":1,"595":1,"631":1,"711":1,"1311":1,"1765":1,"2210":1,"2293":2,"2367":1,"2370":12,"2411":1,"2468":1,"2521":12,"2596":1,"2621":1,"2652":1,"2670":1,"2671":1,"2702":1,"2707":1,"2710":1,"2715":1,"2760":1,"2769":1,"2903":1,"2940":1}}],["yes",{"2":{"10":1,"28":1,"49":1,"74":1,"87":1,"88":3,"103":4,"104":3,"118":1,"119":1,"126":3,"127":3,"202":1,"232":1,"234":7,"235":1,"266":1,"348":1,"565":1,"573":1,"590":1,"623":1,"653":1,"688":1,"700":1,"722":1,"727":1,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1319":1,"1327":1,"1366":1,"1435":1,"1442":2,"1443":2,"1450":1,"1467":1,"1493":1,"1494":1,"1520":1,"1536":1,"1548":1,"1583":1,"1588":1,"1596":1,"1617":1,"1620":1,"1621":1,"1640":1,"1655":1,"1659":1,"1661":1,"1662":1,"1672":1,"1692":1,"1733":1,"1738":1,"1760":1,"1767":1,"1800":1,"1844":2,"1913":1,"1926":1,"1938":1,"1951":1,"1956":1,"1959":1,"1982":2,"1983":2,"1984":2,"1985":2,"1996":1,"2048":1,"2066":2,"2157":1,"2174":1,"2179":2,"2191":2,"2210":2,"2213":1,"2243":1,"2248":1,"2261":1,"2277":1,"2286":2,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2295":1,"2296":1,"2302":1,"2305":1,"2313":1,"2319":1,"2322":2,"2323":1,"2369":1,"2371":1,"2411":1,"2412":1,"2440":2,"2667":1,"2721":1,"2746":1,"2749":11,"2752":2,"2882":2,"2901":1,"2941":1}}],["year>",{"2":{"1438":1}}],["years",{"2":{"6":1,"10":1,"213":1,"2449":1}}],["year",{"2":{"0":2,"9":2,"19":2,"39":2,"52":2,"173":1,"1438":1,"2449":3}}],["r=4",{"2":{"2750":1}}],["rbt",{"2":{"2516":1,"2745":1,"2781":1}}],["rbrc",{"2":{"369":1,"587":2,"2159":1,"2505":1,"2515":1,"2553":1}}],["rr",{"2":{"2294":3}}],["rle",{"0":{"2773":1},"2":{"2748":4,"2758":1,"2765":1,"2769":1,"2773":1}}],["rl",{"2":{"2294":3}}],["rj",{"2":{"2258":2}}],["rz",{"2":{"1768":1}}],["ry",{"2":{"1768":1,"2862":1}}],["ryanbaekr",{"2":{"222":1}}],["r09",{"2":{"1584":2}}],["r08",{"2":{"1584":2}}],["r07",{"2":{"1584":2}}],["r06",{"2":{"1584":2}}],["r05",{"2":{"1584":4}}],["r04",{"2":{"1584":2}}],["r03",{"2":{"1584":2}}],["r02",{"2":{"1584":2}}],["r01",{"2":{"1584":2}}],["r|64",{"2":{"1532":1}}],["rw",{"2":{"1693":2}}],["rwin",{"2":{"1374":1,"1452":1,"2507":1,"2515":1,"2534":1,"2535":1,"2559":1}}],["rwx",{"2":{"236":3}}],["rnrm",{"2":{"2513":2,"2531":2}}],["rn",{"0":{"1356":1},"2":{"1356":1,"2367":5}}],["rn42",{"2":{"134":1,"149":1,"191":1,"211":1,"221":2,"572":1,"2367":1,"2369":1,"2852":1}}],["rts",{"2":{"1263":1,"1265":1,"1266":4}}],["rtc",{"2":{"236":1}}],["rgui",{"2":{"587":2,"1347":1,"1374":1,"1375":1,"1452":1,"1749":5,"2507":1,"2513":4,"2515":1,"2531":4,"2534":1,"2535":1,"2540":1,"2551":1,"2559":2,"2644":1}}],["rght",{"2":{"369":1,"587":2,"1927":1,"2159":2,"2509":1,"2513":1,"2515":1,"2531":1,"2533":1,"2553":1,"2907":4,"2908":3,"2909":2}}],["rgbtest",{"2":{"2181":1,"2537":1}}],["rgb|led",{"2":{"317":1}}],["rgb888",{"2":{"199":1,"328":1,"2748":2,"2749":4}}],["rgbmatrix",{"2":{"191":1}}],["rgb565",{"2":{"191":1,"199":1,"2748":3,"2749":11,"2750":1}}],["rgb+via",{"2":{"176":1}}],["rgb64",{"2":{"143":2}}],["rgbw",{"0":{"1285":1},"2":{"112":1,"134":1,"266":2,"563":2,"1282":2,"1285":2,"2876":2}}],["rgbkb",{"2":{"93":1,"114":2,"149":1,"176":2,"191":1,"211":1,"266":1,"294":2,"328":1}}],["rgblight=true",{"2":{"431":1}}],["rgblight",{"0":{"2870":1},"2":{"49":3,"65":1,"70":3,"74":2,"75":1,"111":6,"112":5,"113":1,"114":6,"160":2,"176":2,"191":10,"199":2,"211":3,"221":3,"222":6,"236":5,"249":4,"266":6,"277":1,"283":3,"285":2,"308":2,"348":6,"460":2,"563":10,"572":1,"639":4,"645":11,"666":1,"668":2,"700":1,"1281":1,"1282":1,"1413":16,"1424":5,"1435":2,"2058":2,"2179":2,"2182":14,"2183":14,"2184":12,"2185":12,"2186":6,"2188":1,"2189":18,"2190":4,"2191":16,"2192":1,"2193":2,"2194":1,"2195":2,"2197":1,"2198":16,"2199":7,"2200":6,"2201":14,"2202":6,"2203":2,"2204":6,"2205":3,"2206":4,"2207":6,"2271":2,"2439":9,"2440":3,"2847":1,"2870":3,"2887":11}}],["rgbleds",{"2":{"191":1}}],["rgbled",{"2":{"45":2,"70":1,"191":1,"222":2,"249":2,"563":2,"568":1,"2179":1,"2187":7,"2271":1,"2440":6}}],["rgb",{"0":{"25":1,"45":1,"80":1,"124":1,"214":1,"233":1,"283":1,"316":1,"327":1,"460":1,"563":1,"1636":1,"2058":1,"2063":1,"2064":1,"2065":1,"2066":1,"2075":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2085":1,"2087":1,"2089":1,"2091":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2123":1,"2125":1,"2127":1,"2129":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2137":1,"2139":1,"2141":1,"2143":1,"2144":1,"2146":1,"2148":1,"2150":1,"2153":1,"2178":1,"2192":1,"2537":1,"2538":1,"2871":1,"2887":1},"1":{"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":2,"2065":2,"2066":1,"2067":1,"2068":1,"2069":1,"2070":1,"2071":1,"2072":1,"2073":1,"2074":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":2,"2085":1,"2086":2,"2087":1,"2088":2,"2089":1,"2090":2,"2091":1,"2092":2,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":2,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":2,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":2,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":2,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":2,"2123":1,"2124":2,"2125":1,"2126":2,"2127":1,"2128":2,"2129":1,"2130":2,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":2,"2137":1,"2138":1,"2139":1,"2140":2,"2141":1,"2142":2,"2143":1,"2144":1,"2145":2,"2146":1,"2147":2,"2148":1,"2149":2,"2150":1,"2151":1,"2152":1,"2153":1,"2154":1,"2155":1,"2179":1,"2180":1,"2181":1,"2182":1,"2183":1,"2184":1,"2185":1,"2186":1,"2187":1,"2188":1,"2189":1,"2190":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1,"2205":1,"2206":1,"2207":1,"2208":1,"2209":1,"2210":1,"2211":1},"2":{"25":7,"32":3,"45":2,"49":4,"63":1,"65":3,"70":1,"73":1,"80":1,"93":5,"94":1,"112":1,"114":27,"124":3,"133":1,"134":9,"143":4,"149":6,"153":2,"160":1,"176":3,"183":14,"185":7,"191":15,"199":2,"201":1,"211":7,"214":2,"221":3,"222":11,"229":1,"231":3,"233":1,"236":13,"238":1,"244":1,"249":31,"266":8,"277":9,"283":7,"285":11,"298":1,"308":8,"316":3,"317":4,"328":5,"431":2,"460":2,"563":5,"568":1,"631":1,"639":2,"645":20,"646":1,"649":1,"650":5,"651":5,"699":1,"700":1,"726":1,"727":1,"733":1,"797":1,"798":2,"804":1,"805":3,"809":1,"811":1,"817":1,"823":1,"824":2,"830":1,"831":3,"836":1,"838":1,"844":1,"852":1,"853":2,"862":1,"863":3,"868":1,"870":1,"876":1,"884":1,"885":2,"892":1,"893":3,"900":1,"902":1,"908":1,"916":1,"917":2,"927":1,"928":3,"935":1,"937":1,"943":1,"951":1,"952":2,"961":1,"962":3,"969":1,"971":1,"977":1,"985":1,"986":2,"995":1,"996":3,"1003":1,"1005":1,"1011":1,"1019":1,"1020":2,"1029":1,"1030":3,"1037":1,"1039":1,"1045":1,"1053":1,"1054":2,"1063":1,"1064":3,"1071":1,"1073":1,"1079":1,"1087":1,"1088":2,"1097":1,"1098":3,"1105":1,"1107":1,"1113":1,"1121":1,"1122":2,"1131":1,"1132":3,"1139":1,"1141":1,"1147":1,"1155":1,"1156":2,"1165":1,"1166":3,"1173":1,"1175":1,"1181":1,"1211":1,"1212":2,"1218":1,"1219":3,"1226":1,"1228":1,"1234":1,"1280":1,"1281":1,"1282":2,"1283":1,"1284":1,"1285":3,"1389":1,"1390":1,"1412":1,"1413":25,"1424":1,"1434":2,"1435":8,"1436":1,"1547":2,"1611":1,"1636":5,"1638":6,"1662":4,"1838":2,"1847":1,"1952":8,"2012":1,"2058":1,"2059":2,"2060":1,"2062":18,"2063":152,"2064":7,"2065":2,"2066":21,"2067":22,"2068":5,"2069":29,"2072":8,"2073":11,"2074":15,"2075":6,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":1,"2086":1,"2144":1,"2145":1,"2178":3,"2179":3,"2180":1,"2181":25,"2182":3,"2183":2,"2184":2,"2188":3,"2189":2,"2191":2,"2192":3,"2194":1,"2198":5,"2199":10,"2205":24,"2208":1,"2210":6,"2269":1,"2271":2,"2274":2,"2428":2,"2455":1,"2456":2,"2457":2,"2537":22,"2538":19,"2721":5,"2722":2,"2746":8,"2748":2,"2750":5,"2783":1,"2845":1,"2847":1,"2848":1,"2870":2,"2871":3,"2883":1,"2887":51,"2924":2,"2933":1}}],["rq",{"0":{"583":1},"2":{"360":2,"361":2,"583":2}}],["rk61",{"2":{"328":1}}],["rms",{"2":{"1679":1}}],["rm24c512c",{"2":{"746":2}}],["rm",{"2":{"283":1,"2062":15,"2065":2,"2538":15,"2627":1}}],["rmi",{"2":{"197":13,"199":1}}],["rswp",{"2":{"2513":2,"2531":2}}],["rspc",{"2":{"2249":1,"2250":1,"2252":5,"2253":3,"2543":1}}],["rsi",{"2":{"1491":1}}],["rstp",{"2":{"1655":2,"1657":2,"2523":1}}],["rst",{"2":{"1487":1,"1489":1,"1674":1,"1675":1,"1681":2,"1945":3,"2281":1,"2368":1,"2376":1,"2379":1,"2381":1,"2382":1,"2384":1,"2424":1,"2484":1,"2486":1,"2488":1,"2517":1,"2746":11,"2749":4}}],["rsg",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rsag",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rsa",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rs232",{"2":{"1189":1}}],["rs485",{"2":{"1189":1}}],["rs40",{"2":{"211":1}}],["rsft",{"2":{"328":1,"369":1,"587":2,"1374":1,"1452":1,"1527":4,"1588":1,"1591":1,"2252":9,"2253":1,"2374":1,"2507":1,"2515":1,"2534":1,"2535":1,"2540":1,"2551":1,"2553":1,"2559":2,"2644":1,"2900":1,"2919":1}}],["rs",{"2":{"249":1,"1693":2}}],["rshift",{"2":{"211":1,"260":1,"1375":1}}],["r17",{"2":{"1584":2}}],["r16",{"2":{"1584":2}}],["r15",{"2":{"1584":2}}],["r14",{"2":{"1584":2}}],["r13",{"2":{"1584":2}}],["r12",{"2":{"1584":2}}],["r11",{"2":{"1584":2}}],["r10",{"2":{"1584":2}}],["r1",{"2":{"211":1,"300":1,"724":1,"2851":1}}],["r2",{"2":{"207":1,"211":2,"277":1,"724":1,"2851":1}}],["rxc1",{"2":{"1985":1}}],["rxcie1",{"2":{"1985":1}}],["rxen1",{"2":{"1985":3}}],["rxled",{"2":{"1389":2,"1393":2}}],["rx",{"0":{"779":2},"1":{"780":2,"781":2},"2":{"191":1,"780":2,"1195":1,"1197":8,"1198":5,"1202":1,"1208":11,"1209":9,"1210":8,"1265":2,"1266":4,"1768":1,"1985":6,"2684":2,"2695":2,"2697":2,"2862":1}}],["rp2",{"2":{"2605":1}}],["rp2040",{"0":{"163":1,"271":1,"693":1,"753":1,"1391":1,"1394":1,"1398":1,"1986":1,"2397":1,"2685":1,"2694":1,"2695":1,"2696":1,"2698":1,"2699":1},"1":{"2686":1,"2687":1,"2688":1,"2689":1,"2690":1,"2691":1,"2692":1,"2693":1,"2694":1,"2695":2,"2696":2,"2697":1,"2698":1,"2699":1},"2":{"163":5,"174":1,"176":11,"191":9,"199":5,"211":3,"236":3,"266":1,"271":6,"277":1,"294":1,"308":1,"311":1,"317":1,"322":1,"328":1,"517":3,"693":2,"720":1,"750":2,"753":3,"1194":1,"1195":2,"1198":2,"1202":2,"1289":1,"1386":2,"1388":4,"1390":1,"1395":2,"1396":3,"1398":1,"1986":1,"2266":1,"2397":4,"2582":1,"2606":1,"2685":1,"2686":1,"2687":3,"2688":2,"2689":1,"2690":1,"2691":1,"2692":1,"2693":5,"2694":1,"2695":3,"2696":3,"2697":1,"2698":6,"2699":1,"2857":1,"2888":1}}],["rprn",{"2":{"2539":1,"2558":1}}],["rpi",{"2":{"2397":1}}],["rpt",{"2":{"1515":1,"1516":2,"1517":1,"2518":1}}],["rp",{"2":{"1402":2,"2690":2,"2691":2,"2692":2,"2696":1}}],["rpc",{"2":{"176":2,"2270":7}}],["rdesc",{"2":{"134":1}}],["rocky",{"2":{"2619":1}}],["rocketboard",{"2":{"149":1}}],["road",{"2":{"2448":1}}],["roadmap",{"2":{"88":1,"104":1}}],["roastpotatoes",{"2":{"2416":1,"2429":1}}],["rosin",{"2":{"2414":1,"2421":2}}],["rosaline",{"2":{"211":1}}],["roving",{"2":{"2367":1}}],["rofl",{"2":{"2323":3}}],["robot",{"2":{"763":1}}],["robustness",{"2":{"211":1}}],["robust",{"2":{"76":1}}],["ro",{"2":{"429":1}}],["rooms",{"2":{"2474":1}}],["room",{"2":{"1840":1,"1948":1,"2060":1,"2283":1,"2457":1}}],["root",{"2":{"335":1,"521":1,"570":1,"613":1,"1329":1,"1373":1,"1419":1,"1532":3,"1533":1,"1844":1,"2066":1,"2410":3,"2588":1,"2589":1,"2607":1,"2667":1,"2937":1}}],["rookiebwoy",{"2":{"241":2,"249":2,"300":2,"308":1}}],["royal",{"2":{"328":1,"2567":1}}],["rot",{"2":{"308":1,"2895":1}}],["rotary",{"2":{"236":1,"687":1,"1308":1,"2858":1,"2873":1}}],["rotates",{"2":{"1947":1,"2016":3,"2018":3}}],["rotate",{"0":{"1993":1},"2":{"1947":1,"1993":4}}],["rotated",{"2":{"31":1,"34":1,"1410":1,"1947":2,"2014":1}}],["rotating",{"2":{"1664":3,"1678":1,"1948":1,"2283":1}}],["rotations",{"2":{"2019":1,"2020":1,"2757":1,"2862":1}}],["rotational",{"2":{"149":1,"2014":2}}],["rotation",{"0":{"1947":1,"2004":1},"2":{"31":5,"34":5,"199":1,"307":2,"332":7,"1662":2,"1942":5,"1947":10,"1948":19,"1993":1,"2004":6,"2016":3,"2018":4,"2280":5,"2283":12,"2749":1,"2750":13,"2754":1,"2790":1,"2862":3}}],["rogue87",{"2":{"211":1}}],["ropt",{"2":{"176":1,"1374":1,"1452":1,"2507":1,"2515":1,"2534":1,"2535":1,"2559":1}}],["rollover",{"0":{"2826":1,"2832":1},"2":{"572":1,"1619":1,"2286":1,"2369":1,"2513":3,"2531":3}}],["rolls",{"2":{"308":1,"2902":1}}],["roll",{"2":{"294":1,"403":1,"1807":2,"2156":1}}],["rolled",{"2":{"289":1,"2914":1}}],["rollback",{"2":{"191":1}}],["rolling",{"0":{"2906":1},"2":{"134":1,"2371":1,"2908":3}}],["roles",{"2":{"2302":1,"2873":1}}],["role",{"2":{"114":1,"149":1,"194":1,"562":3,"2572":1,"2729":1,"2901":2,"2902":8,"2908":8,"2909":5,"2910":1}}],["roughly",{"2":{"1933":1}}],["rouge87",{"2":{"211":1}}],["routing",{"2":{"713":1,"2424":1}}],["routine",{"2":{"49":1,"572":2,"620":1,"622":1,"623":5,"1421":1,"1675":1,"2411":2,"2644":1}}],["routines",{"2":{"49":1,"125":1,"185":1,"565":1,"2671":1}}],["route",{"0":{"363":1,"364":1,"365":1,"366":1},"2":{"2422":1}}],["rounded",{"2":{"1249":1,"1289":1}}],["round",{"2":{"133":1,"134":1,"397":1,"594":1,"1472":1}}],["row1",{"2":{"2459":11}}],["row0",{"2":{"2459":12}}],["row2col",{"2":{"111":1,"559":1,"620":1,"637":3,"2712":2,"2865":1}}],["row",{"2":{"92":2,"114":1,"199":1,"222":1,"255":3,"289":1,"333":2,"559":1,"568":5,"622":1,"623":4,"630":1,"637":13,"1326":8,"1397":1,"1398":1,"1405":1,"1407":4,"1410":8,"1484":3,"1486":1,"1583":2,"1584":2,"1585":2,"1607":1,"1619":1,"1620":1,"1625":1,"1665":1,"1714":2,"1716":2,"1805":2,"1840":3,"1843":4,"2060":3,"2063":4,"2073":4,"2262":1,"2265":1,"2271":2,"2296":5,"2377":1,"2384":1,"2416":1,"2421":2,"2422":2,"2424":4,"2427":1,"2459":8,"2547":1,"2677":2,"2713":3,"2714":1,"2721":1,"2748":2,"2787":1,"2790":1,"2862":1,"2865":2,"2869":1,"2901":1,"2911":1,"2914":1,"2915":1,"2920":5,"2929":1}}],["rows",{"2":{"63":1,"111":1,"114":1,"211":2,"317":2,"328":1,"559":6,"587":1,"637":1,"1410":1,"1411":2,"1450":2,"1484":1,"1486":1,"1840":2,"1918":1,"1948":2,"2060":2,"2073":1,"2262":3,"2265":1,"2271":2,"2296":1,"2305":1,"2416":3,"2418":1,"2424":1,"2459":5,"2547":1,"2552":3,"2578":1,"2711":1,"2712":3,"2713":1,"2721":1,"2787":1,"2821":1,"2865":3,"2915":4,"2931":1}}],["romanian",{"2":{"2880":3}}],["rominronin",{"2":{"438":1,"2433":1}}],["roms",{"2":{"273":1}}],["rom",{"0":{"276":1,"284":1},"2":{"49":1,"273":1,"1707":1,"2475":1,"2498":1,"2942":1}}],["rcpc",{"2":{"2249":1,"2250":1,"2252":1,"2543":1}}],["rcbr",{"2":{"2159":1,"2539":1,"2558":1}}],["rctrl",{"2":{"1375":1}}],["rctl",{"2":{"328":1,"369":1,"587":2,"1347":1,"1374":1,"1452":1,"2252":2,"2374":1,"2507":1,"2513":2,"2515":1,"2531":2,"2534":1,"2535":1,"2540":1,"2553":1,"2559":2,"2644":1,"2913":1,"2916":1}}],["rcg",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rcsg",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rcs",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rcag",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rca",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rcmd",{"2":{"1374":1,"1452":1,"2507":1,"2515":1,"2534":1,"2535":1,"2559":1}}],["rc",{"2":{"49":3,"1406":1,"2669":1}}],["radius",{"2":{"2750":1}}],["radio",{"2":{"2729":1}}],["rabk",{"2":{"2539":1,"2558":1}}],["rabbit",{"2":{"143":2}}],["rapc",{"2":{"2249":1,"2250":1,"2252":1,"2543":1}}],["rapidly",{"2":{"1487":1,"1547":1,"2301":1}}],["rag",{"2":{"1374":1,"2534":1,"2535":1,"2540":1,"2559":1,"2644":1}}],["rarely",{"2":{"2324":1}}],["rare",{"2":{"393":1,"641":1,"2568":1}}],["rart",{"2":{"211":1}}],["rartlice",{"2":{"211":1}}],["rartand",{"2":{"211":1}}],["rart80",{"2":{"211":2}}],["rart75m",{"2":{"211":1}}],["rart75",{"2":{"211":2}}],["rart67m",{"2":{"211":1}}],["rart67",{"2":{"211":1}}],["rart60",{"2":{"211":1}}],["rart45",{"2":{"211":1}}],["ralt|mod",{"2":{"1417":1}}],["ralt",{"2":{"369":1,"587":2,"1374":1,"1375":1,"1452":1,"1749":5,"1758":1,"2165":1,"2252":2,"2507":1,"2513":2,"2515":1,"2531":2,"2534":1,"2535":1,"2540":1,"2551":1,"2553":1,"2559":2,"2644":1,"2900":1,"2917":1}}],["rastersoft",{"2":{"222":1}}],["raspberry",{"0":{"163":1,"517":1,"2397":1,"2685":1},"1":{"2686":1,"2687":1,"2688":1,"2689":1,"2690":1,"2691":1,"2692":1,"2693":1,"2694":1,"2695":1,"2696":1,"2697":1,"2698":1,"2699":1},"2":{"163":1,"176":1,"1195":1,"1198":1,"1202":1,"1986":1,"2687":1,"2688":1}}],["rand",{"2":{"1941":1,"2279":1}}],["randomly",{"2":{"2063":4}}],["randomness",{"2":{"1487":3}}],["random",{"0":{"2239":1,"2784":1},"2":{"263":1,"605":1,"1406":1,"1675":2,"1941":2,"2063":5,"2279":2,"2750":1,"2784":3}}],["random8",{"2":{"199":2}}],["ran",{"2":{"638":1}}],["ranges",{"0":{"231":1},"2":{"191":1,"199":2,"231":2,"236":1,"373":1,"1527":1,"1940":1,"2000":1,"2187":1,"2189":1,"2278":1}}],["range",{"0":{"1647":1,"1648":1,"2197":1,"2207":1},"2":{"149":1,"176":2,"191":1,"199":3,"231":22,"285":3,"294":1,"591":1,"614":1,"627":4,"1425":2,"1443":5,"1450":4,"1466":1,"1541":1,"1544":1,"1546":1,"1642":3,"1645":2,"1647":1,"1648":1,"1679":1,"1769":1,"1770":1,"1840":3,"1918":1,"1956":1,"1998":1,"1999":1,"2000":2,"2010":1,"2011":1,"2013":1,"2014":2,"2024":1,"2025":1,"2034":1,"2044":1,"2060":3,"2162":1,"2170":1,"2185":2,"2195":3,"2197":2,"2198":5,"2200":6,"2201":14,"2205":1,"2207":5,"2212":1,"2215":1,"2253":1,"2502":1,"2512":1,"2744":1,"2747":1,"2750":3,"2799":1,"2877":1,"2901":1}}],["raison",{"2":{"616":1}}],["raises",{"2":{"529":1,"532":1,"1929":1}}],["raised",{"2":{"397":1,"399":1,"406":2,"1931":2,"2567":1,"2722":2}}],["raise",{"2":{"198":1,"265":1,"532":1,"717":1,"1413":1,"1416":1,"1424":1,"1485":1,"1515":1,"2027":2,"2518":1,"2777":7,"2779":3}}],["rainbow",{"2":{"348":1,"2063":9,"2181":2,"2183":4,"2184":4,"2185":2,"2186":1,"2187":4,"2209":1,"2210":2,"2537":2,"2750":3,"2870":1,"2887":5}}],["raindrop",{"2":{"241":2}}],["raindrops",{"2":{"114":1,"222":1,"285":1,"294":1,"328":1,"2063":6,"2887":2}}],["rainkeeb",{"2":{"143":2}}],["rainkeebs",{"2":{"143":3,"149":2}}],["rain",{"2":{"134":1,"160":1,"199":1,"222":2,"285":1,"328":1,"2063":6,"2887":2}}],["rampdown",{"2":{"1680":24}}],["rampup",{"2":{"1680":24}}],["ramlord",{"2":{"211":1}}],["rama",{"2":{"199":1,"211":4}}],["ram",{"2":{"176":1,"191":1,"236":1,"716":1,"717":1,"743":1,"750":2,"1407":1,"1655":1,"1696":1,"2047":1,"2669":2,"2670":1,"2682":1,"2704":1,"2747":5,"2749":2,"2894":1}}],["ramonimbao",{"2":{"102":3,"197":13,"199":1}}],["ratio",{"2":{"1547":1,"1943":1}}],["ratio65",{"2":{"211":2}}],["rationale",{"2":{"49":1}}],["rated",{"2":{"1678":1,"1679":1}}],["rates",{"2":{"699":1}}],["rate",{"0":{"137":1},"2":{"65":1,"114":1,"137":1,"143":3,"149":4,"222":1,"236":1,"285":1,"559":2,"698":2,"716":4,"1269":1,"1328":1,"1407":1,"1410":1,"1478":4,"1929":1,"1933":1,"1943":1,"1988":3,"2006":1,"2017":1,"2211":1,"2281":1,"2291":1,"2371":1,"2757":3,"2929":1}}],["rather",{"2":{"49":1,"50":1,"124":1,"201":1,"230":1,"234":1,"323":1,"472":1,"520":1,"535":1,"543":1,"559":1,"562":1,"614":1,"617":1,"627":1,"628":1,"653":1,"1189":1,"1294":1,"1327":1,"1412":1,"1459":1,"1474":1,"1804":1,"1806":1,"2040":1,"2180":1,"2387":2,"2389":1,"2453":1,"2566":1,"2615":1,"2627":1,"2644":1,"2705":1,"2719":1,"2721":2,"2750":1,"2781":1,"2827":1,"2900":1,"2908":1,"2910":1}}],["raw",{"0":{"2047":1,"2054":1,"2056":1},"1":{"2048":1,"2049":1,"2050":1,"2051":1,"2052":1,"2053":1,"2054":1,"2055":2,"2056":1,"2057":2},"2":{"17":1,"50":1,"62":1,"114":1,"160":1,"191":1,"222":1,"266":1,"308":1,"461":1,"573":1,"623":1,"667":1,"669":1,"1411":1,"1413":7,"1941":3,"1948":6,"1994":1,"2019":1,"2020":1,"2047":1,"2049":5,"2050":2,"2051":2,"2052":8,"2054":1,"2279":3,"2283":4,"2683":2,"2684":1,"2748":4,"2750":3,"2788":3,"2862":1}}],["ribbon",{"2":{"2424":1}}],["river",{"2":{"2063":1}}],["riverflow",{"2":{"277":1,"285":1,"2063":3}}],["riccks",{"2":{"2567":1}}],["rick",{"2":{"1807":2}}],["richly",{"2":{"2720":1}}],["rich",{"2":{"114":1,"248":1}}],["rigid",{"2":{"2418":1}}],["rigor",{"2":{"613":1}}],["right=11",{"2":{"2750":1}}],["righthand",{"2":{"566":1,"567":1}}],["rightmost",{"2":{"55":1,"317":1,"1641":1,"1714":1,"1716":1}}],["righty",{"2":{"43":2}}],["right",{"2":{"31":1,"34":1,"100":2,"114":2,"119":2,"149":2,"152":1,"160":1,"176":1,"199":2,"202":1,"203":1,"231":2,"249":1,"255":1,"307":4,"328":1,"345":1,"347":1,"369":1,"387":3,"391":1,"520":1,"551":1,"559":2,"563":2,"566":7,"567":5,"568":10,"594":1,"649":1,"684":1,"1191":1,"1194":1,"1197":1,"1374":25,"1375":1,"1417":5,"1477":1,"1486":1,"1497":1,"1517":3,"1520":1,"1584":6,"1588":2,"1589":4,"1620":2,"1660":10,"1661":1,"1686":1,"1688":1,"1749":2,"1751":2,"1758":4,"1798":4,"1805":1,"1840":1,"1843":9,"1846":1,"1927":4,"1943":3,"1948":4,"1990":1,"1991":1,"2003":1,"2009":3,"2014":8,"2018":11,"2020":7,"2021":2,"2027":1,"2028":3,"2037":1,"2060":1,"2063":15,"2069":2,"2156":1,"2159":6,"2207":1,"2248":1,"2249":7,"2250":8,"2253":1,"2262":2,"2264":1,"2265":1,"2266":7,"2267":2,"2271":10,"2281":1,"2283":2,"2294":2,"2298":1,"2303":1,"2308":12,"2320":1,"2375":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2403":1,"2418":1,"2421":2,"2422":1,"2505":1,"2507":8,"2509":2,"2511":1,"2513":6,"2515":12,"2531":6,"2533":4,"2534":25,"2535":25,"2539":3,"2540":25,"2543":8,"2558":3,"2559":29,"2560":6,"2599":1,"2627":2,"2644":25,"2652":1,"2662":1,"2684":3,"2700":1,"2750":6,"2771":2,"2792":2,"2834":1,"2862":1,"2864":1,"2871":1,"2873":3,"2887":2,"2914":1,"2915":2,"2917":4}}],["rising",{"2":{"1249":2}}],["risky",{"2":{"1362":1}}],["risk",{"2":{"408":1,"572":1,"754":1,"1362":1,"2420":1,"2740":1,"2896":1}}],["risc",{"0":{"518":1},"1":{"519":1},"2":{"130":2,"134":2,"153":1}}],["riot",{"2":{"222":1,"241":2,"266":1}}],["rionlion100",{"2":{"37":1}}],["rider",{"2":{"2181":1,"2537":1}}],["rid",{"2":{"222":4}}],["ringing",{"2":{"1564":1}}],["ring",{"2":{"199":1,"285":1,"2008":1}}],["rip",{"2":{"149":1}}],["ruin",{"2":{"2422":1}}],["russian",{"2":{"236":1,"2879":1,"2880":2}}],["ruled",{"2":{"2844":1}}],["rule",{"2":{"149":1,"199":1,"289":1,"294":1,"524":1,"664":1,"671":1,"2914":3,"2915":1,"2916":2}}],["ruler",{"2":{"143":2,"2420":1}}],["rules",{"0":{"569":1,"1313":1,"1435":1,"1632":2,"1672":1,"2369":1,"2411":1,"2440":1,"2882":1},"1":{"570":1,"571":1,"572":1,"573":1,"1436":1},"2":{"32":1,"49":1,"50":2,"70":29,"74":1,"75":1,"76":3,"87":1,"94":1,"103":1,"114":2,"118":2,"119":1,"133":2,"134":5,"141":1,"149":1,"172":1,"176":2,"191":2,"199":1,"202":1,"211":5,"235":1,"262":1,"266":11,"285":1,"293":1,"305":1,"308":2,"314":1,"338":1,"342":1,"431":1,"524":1,"553":2,"556":1,"565":1,"621":1,"622":1,"623":1,"653":1,"663":3,"664":1,"665":1,"667":3,"670":2,"671":6,"688":1,"700":1,"722":1,"723":1,"727":1,"743":1,"750":1,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1192":1,"1195":2,"1198":2,"1212":1,"1243":1,"1264":1,"1281":1,"1286":1,"1312":1,"1313":2,"1319":1,"1327":1,"1329":2,"1366":1,"1388":1,"1396":1,"1410":1,"1411":2,"1421":1,"1427":1,"1428":2,"1434":2,"1435":7,"1436":1,"1442":2,"1443":2,"1467":1,"1471":1,"1474":1,"1475":1,"1477":1,"1494":2,"1520":1,"1536":1,"1548":1,"1553":1,"1583":1,"1588":1,"1589":1,"1596":1,"1616":1,"1617":1,"1620":1,"1621":1,"1633":1,"1640":1,"1655":1,"1659":1,"1661":1,"1672":1,"1692":1,"1733":1,"1738":1,"1760":1,"1767":1,"1800":1,"1839":1,"1844":2,"1913":1,"1926":1,"1938":1,"1951":1,"1956":1,"1959":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1996":1,"1998":1,"1999":1,"2000":1,"2001":1,"2005":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":2,"2015":1,"2048":1,"2059":1,"2066":2,"2157":1,"2174":1,"2179":2,"2210":1,"2213":1,"2243":1,"2251":1,"2261":1,"2277":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2295":1,"2302":1,"2305":1,"2313":1,"2319":1,"2322":2,"2323":1,"2367":1,"2369":2,"2371":1,"2375":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2391":1,"2393":2,"2395":2,"2397":2,"2407":2,"2408":1,"2410":2,"2412":4,"2436":1,"2440":19,"2490":1,"2572":1,"2598":1,"2601":1,"2639":1,"2667":1,"2684":1,"2695":1,"2696":1,"2717":1,"2719":1,"2721":3,"2746":2,"2749":11,"2750":2,"2752":1,"2844":1,"2882":1,"2884":1,"2901":2,"2925":1,"2933":1,"2937":3,"2939":1,"2941":1}}],["runoff",{"2":{"1840":1,"2060":1}}],["rundown",{"2":{"611":1}}],["runner",{"2":{"285":3,"294":1}}],["runner3680",{"2":{"143":20}}],["running",{"0":{"392":1,"581":1,"2938":1},"2":{"11":1,"50":1,"69":2,"108":1,"132":1,"149":1,"249":1,"371":3,"398":1,"579":1,"584":1,"586":3,"596":1,"615":1,"631":1,"639":1,"685":1,"1202":1,"1249":1,"1312":1,"1315":1,"1520":1,"1556":1,"1557":1,"1607":1,"1619":1,"1859":1,"1861":1,"1863":1,"1865":1,"1871":1,"1872":1,"1905":1,"1911":1,"2085":1,"2087":1,"2089":1,"2091":1,"2097":1,"2098":1,"2149":1,"2155":1,"2184":1,"2368":1,"2375":1,"2402":1,"2403":1,"2410":1,"2475":1,"2501":1,"2598":1,"2609":1,"2616":1,"2618":1,"2619":1,"2620":1,"2630":2,"2632":1,"2757":1,"2840":1}}],["run",{"0":{"1517":1,"2621":1},"2":{"51":1,"90":1,"114":1,"158":2,"176":2,"199":1,"254":1,"263":1,"384":1,"453":2,"457":3,"463":3,"467":4,"471":1,"473":1,"483":1,"485":1,"499":1,"503":1,"504":1,"521":2,"550":1,"551":1,"562":1,"572":1,"578":1,"587":1,"643":1,"647":2,"685":2,"1293":1,"1313":1,"1315":2,"1329":3,"1345":1,"1361":1,"1425":1,"1439":1,"1521":1,"1522":1,"1599":1,"1603":1,"1611":1,"1612":1,"1662":1,"1691":1,"1737":1,"1751":1,"1792":1,"1844":3,"1846":1,"1859":1,"1861":1,"1951":1,"1956":1,"2014":1,"2025":1,"2066":3,"2069":1,"2085":1,"2087":1,"2266":2,"2287":1,"2303":1,"2324":2,"2382":1,"2383":1,"2400":2,"2410":3,"2425":1,"2446":1,"2494":1,"2495":2,"2501":3,"2557":1,"2560":1,"2572":2,"2580":1,"2587":1,"2598":1,"2600":2,"2601":1,"2602":1,"2609":2,"2610":1,"2621":6,"2627":6,"2630":3,"2632":2,"2649":1,"2660":1,"2661":1,"2663":1,"2666":1,"2700":1,"2702":1,"2704":1,"2707":1,"2721":1,"2754":1,"2778":1,"2783":1,"2804":1,"2810":1,"2820":1,"2864":1,"2871":1,"2933":1,"2937":1,"2938":5,"2939":2,"2942":1}}],["runtime=",{"2":{"2400":1}}],["runtime",{"0":{"1655":1},"1":{"1656":1,"1657":1,"1658":1},"2":{"24":1,"717":1,"751":1,"1345":1,"2032":1,"2033":1,"2400":2,"2901":2}}],["runs",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"380":1,"463":2,"467":2,"490":1,"510":1,"632":1,"645":3,"1423":1,"1451":1,"1482":1,"1557":3,"1999":1,"2006":1,"2014":1,"2047":1,"2492":1,"2494":1,"2572":1,"2600":1,"2605":1,"2927":1,"2929":3}}],["r",{"0":{"2085":1,"2087":1},"1":{"2086":1,"2088":1},"2":{"32":1,"191":1,"266":2,"308":1,"317":1,"369":1,"486":1,"587":2,"731":1,"734":1,"802":1,"805":1,"828":1,"831":1,"860":1,"863":1,"890":1,"893":1,"925":1,"928":1,"959":1,"962":1,"993":1,"996":1,"1027":1,"1030":1,"1061":1,"1064":1,"1095":1,"1098":1,"1129":1,"1132":1,"1163":1,"1166":1,"1194":2,"1216":1,"1219":1,"1285":2,"1375":27,"1532":2,"1807":1,"2072":1,"2074":1,"2086":1,"2088":1,"2181":1,"2198":10,"2246":1,"2289":2,"2294":2,"2383":1,"2434":1,"2474":1,"2503":3,"2515":3,"2537":1,"2553":1,"2721":1,"2748":4,"2862":2,"2875":1,"2891":1,"2915":25}}],["req",{"2":{"2175":1}}],["requried",{"2":{"249":1}}],["requesting",{"2":{"387":1,"2567":1}}],["requested",{"2":{"99":1,"164":1,"584":1,"623":1,"1948":1,"2283":1,"2568":1}}],["request",{"0":{"408":1,"2829":1},"1":{"409":1,"410":1,"411":1,"412":1},"2":{"45":1,"50":1,"87":1,"103":1,"126":1,"373":1,"408":3,"411":1,"412":1,"594":1,"607":2,"611":9,"615":1,"617":1,"673":1,"794":1,"1336":1,"1338":1,"1411":1,"1439":1,"2052":8,"2175":2,"2177":1,"2403":3,"2474":1,"2509":1,"2515":1,"2567":1,"2626":1,"2628":1,"2667":1,"2724":1,"2829":1,"2843":1,"2942":1}}],["requests",{"2":{"38":1,"69":1,"199":1,"333":1,"411":1,"576":2,"606":1,"1340":1,"2566":1,"2631":1,"2722":1,"2723":1,"2829":1,"2895":1}}],["requirement",{"2":{"236":1,"713":1,"1683":1,"2705":1,"2719":1}}],["requirements",{"0":{"415":1,"1401":1,"2399":1,"2719":1,"2731":1,"2732":1},"2":{"160":1,"176":1,"415":2,"486":2,"746":1,"1283":1,"1287":1,"1986":1,"2568":1,"2722":1,"2728":1,"2734":1}}],["requires",{"2":{"158":1,"391":1,"415":1,"458":1,"459":2,"682":1,"746":1,"747":1,"750":1,"752":1,"754":1,"756":1,"762":1,"1243":1,"1264":1,"1295":1,"1353":1,"1362":1,"1529":1,"1633":1,"1914":1,"1946":1,"1998":1,"2010":1,"2013":1,"2028":1,"2030":1,"2051":1,"2271":1,"2276":1,"2285":2,"2323":1,"2324":1,"2368":1,"2381":1,"2387":2,"2402":2,"2528":1,"2568":1,"2591":1,"2600":1,"2667":1,"2671":1,"2721":2,"2722":1,"2745":1,"2747":2,"2748":4,"2750":3,"2754":1,"2925":1}}],["require",{"0":{"124":1},"2":{"58":1,"132":1,"134":1,"232":1,"297":1,"308":2,"374":1,"397":1,"408":1,"411":2,"428":1,"522":1,"573":1,"586":1,"590":1,"644":1,"682":1,"683":1,"716":1,"750":1,"751":2,"754":1,"1314":1,"1512":1,"1675":1,"1751":1,"1757":1,"1790":1,"2006":1,"2015":1,"2073":1,"2074":1,"2191":1,"2269":1,"2285":1,"2311":1,"2318":1,"2379":1,"2419":1,"2459":1,"2492":1,"2603":1,"2704":1,"2721":1,"2722":1,"2734":1,"2747":1,"2749":3,"2750":1,"2780":1,"2885":1,"2887":1,"2892":1,"2923":1}}],["required",{"0":{"23":1,"2257":1},"1":{"2258":1},"2":{"10":2,"24":1,"50":1,"69":1,"70":1,"107":1,"118":1,"211":1,"228":1,"234":9,"262":1,"285":1,"348":1,"568":1,"573":1,"609":1,"613":1,"623":1,"628":1,"654":1,"655":1,"667":1,"688":1,"700":1,"711":1,"722":1,"727":1,"745":1,"762":1,"764":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1194":1,"1202":1,"1212":1,"1243":1,"1244":1,"1245":1,"1264":1,"1265":1,"1281":1,"1296":2,"1300":1,"1402":1,"1448":1,"1497":1,"1511":2,"1526":1,"1642":2,"1683":1,"1693":4,"1751":1,"1752":1,"1945":2,"1947":1,"1951":1,"1998":3,"1999":1,"2000":2,"2002":3,"2006":2,"2010":2,"2011":2,"2012":1,"2013":3,"2014":1,"2018":3,"2032":3,"2034":2,"2047":1,"2171":1,"2269":1,"2270":1,"2281":3,"2285":1,"2313":1,"2340":1,"2372":1,"2400":1,"2408":2,"2418":2,"2420":1,"2423":1,"2439":1,"2440":1,"2441":2,"2442":1,"2471":1,"2476":1,"2498":1,"2568":1,"2569":1,"2592":2,"2594":1,"2599":1,"2668":1,"2673":1,"2719":1,"2721":2,"2722":1,"2728":1,"2749":4,"2750":6,"2845":4,"2846":2,"2848":2,"2849":2,"2850":1,"2851":2,"2858":3,"2860":1,"2861":1,"2862":3,"2864":5,"2869":2,"2870":1,"2871":5,"2875":3,"2876":1,"2936":1,"2937":1}}],["requiring",{"0":{"40":1,"53":1,"67":1,"72":1,"85":1,"101":1,"121":1,"139":1,"155":1,"165":1,"180":1,"193":1,"205":1,"216":1,"225":1,"239":1,"252":1,"269":1,"280":1,"290":1,"299":1,"310":1,"321":1},"1":{"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"86":1,"87":1,"88":1,"89":1,"90":1,"102":1,"103":1,"104":1,"105":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"140":1,"141":1,"142":1,"143":1,"156":1,"157":1,"158":1,"159":1,"166":1,"167":1,"168":1,"169":1,"170":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"194":1,"195":1,"196":1,"197":1,"206":1,"207":1,"217":1,"218":1,"219":1,"220":1,"221":1,"226":1,"240":1,"241":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"270":1,"271":1,"272":1,"273":1,"281":1,"291":1,"300":1,"311":1,"312":1,"322":1,"323":1,"324":1,"325":1},"2":{"173":1,"234":1,"276":1,"285":1,"408":2,"613":1,"751":1,"1585":1,"1587":1,"2295":1,"2567":1,"2739":1}}],["reregister",{"2":{"1746":5,"1752":1,"1755":1}}],["reusing",{"2":{"657":1,"2569":1}}],["reused",{"2":{"2403":3,"2862":1}}],["reuse",{"2":{"134":1,"2941":1}}],["reintroduced",{"2":{"2621":1}}],["reinitializes",{"2":{"2516":1,"2745":1}}],["reinitilization",{"2":{"1954":1}}],["reinstall",{"2":{"2651":1}}],["reinstalling",{"2":{"1315":1}}],["reinstate",{"2":{"285":1}}],["reimplementing",{"2":{"445":1}}],["reimplements",{"2":{"134":1}}],["reimplemented",{"2":{"118":1}}],["rekt1800",{"2":{"211":1}}],["rejects",{"2":{"294":1}}],["reject",{"2":{"191":1,"266":1,"294":2,"308":1}}],["rebase",{"2":{"2627":10}}],["rebasing",{"0":{"2627":1}}],["rebuilding",{"2":{"1365":1}}],["rebrand",{"2":{"317":1}}],["rebranded",{"2":{"57":1}}],["reboots",{"2":{"2290":1}}],["rebooted",{"2":{"1655":1,"2806":1}}],["rebooting",{"2":{"649":1,"1942":1}}],["reboot",{"0":{"649":1,"652":1},"1":{"650":1,"651":1,"652":1},"2":{"160":1,"176":1,"191":1,"229":1,"568":1,"649":1,"684":1,"2271":1,"2324":1,"2516":1,"2684":1,"2745":1,"2781":1,"2873":1}}],["recalculations",{"2":{"2757":1}}],["recall",{"2":{"2023":1}}],["rect",{"2":{"2750":5}}],["rectangle",{"2":{"2750":1}}],["rectangles",{"2":{"153":1,"2750":2}}],["rectangular",{"0":{"2792":1},"2":{"1486":1,"2790":1,"2792":1}}],["recreate",{"2":{"2425":2}}],["recreated",{"2":{"149":1}}],["recutting",{"2":{"2424":1}}],["recurse",{"2":{"2400":1,"2403":2,"2630":4}}],["recursive",{"2":{"149":1,"1628":1,"1655":1,"2600":1}}],["recv",{"2":{"2270":1}}],["rec2",{"2":{"1655":3,"2523":1}}],["rec1",{"2":{"1655":3,"2523":1}}],["receiving",{"0":{"2051":1},"2":{"1191":1,"1194":1,"1197":2,"2403":1,"2411":1,"2812":1}}],["receives",{"2":{"1792":1,"2459":2,"2787":1}}],["received",{"2":{"583":1,"765":1,"1438":1,"2050":1,"2051":1,"2052":1,"2054":1,"2055":1,"2288":1,"2567":1,"2725":1}}],["receive",{"0":{"776":1,"779":1,"1259":1,"1276":1,"2054":1},"1":{"777":1,"778":1,"780":1,"781":1,"1260":1,"1261":1,"1277":1,"2055":1},"2":{"191":1,"323":1,"328":1,"776":1,"779":1,"1259":1,"1269":1,"1272":1,"1273":1,"1276":1,"1278":1,"1958":1,"2017":1,"2050":1,"2052":1,"2303":1,"2464":1,"2501":1,"2743":1,"2873":1}}],["reception",{"2":{"1189":3}}],["recently",{"2":{"236":1,"2064":1}}],["recent",{"2":{"114":1,"134":2,"149":1,"160":1,"191":1,"199":1,"222":1,"312":1,"1519":1,"2367":1,"2649":1}}],["recolored",{"2":{"2750":3}}],["recolor",{"2":{"2750":9}}],["recognised",{"2":{"2463":1}}],["recognises",{"2":{"1669":1}}],["recognise",{"2":{"1450":1,"2324":1}}],["recognizes",{"2":{"1358":1,"2515":1}}],["recognized",{"2":{"1348":1,"1353":1,"1355":1,"1519":1,"1602":1,"2941":1}}],["recognize",{"0":{"1329":1},"2":{"176":1,"548":1,"683":1,"2515":1,"2855":1}}],["reconstruct",{"2":{"2627":1}}],["reconfigure",{"2":{"1588":1}}],["reconfiguration",{"2":{"754":1}}],["reconnect",{"2":{"62":1}}],["recopy",{"2":{"509":1}}],["recovering",{"0":{"684":1},"2":{"240":1}}],["recover",{"2":{"228":1}}],["recompilation",{"2":{"2468":1}}],["recompile",{"2":{"124":1,"143":4,"149":1,"2290":1}}],["recommends",{"2":{"611":1,"1627":1}}],["recommendations",{"2":{"2444":1,"2573":1,"2718":1,"2934":1}}],["recommendation",{"2":{"397":1}}],["recommend",{"2":{"160":1,"682":1,"746":1,"2042":1,"2377":1,"2384":1,"2444":1,"2445":1,"2621":1,"2660":1,"2723":1,"2934":1,"2937":1,"2942":1}}],["recommended",{"2":{"3":1,"4":1,"15":1,"348":2,"621":1,"746":1,"1190":1,"1313":1,"1348":1,"1407":7,"1434":1,"1435":2,"1450":1,"1630":1,"1679":1,"1739":1,"1758":1,"1804":1,"1840":2,"1933":3,"1949":1,"1979":1,"1982":1,"2039":1,"2060":2,"2181":1,"2258":1,"2270":1,"2324":2,"2376":2,"2379":2,"2381":2,"2382":2,"2383":2,"2386":2,"2388":2,"2389":2,"2390":2,"2391":1,"2402":1,"2415":1,"2422":2,"2489":1,"2493":1,"2585":1,"2614":1,"2631":1,"2632":1,"2633":2,"2703":1,"2719":1,"2722":1,"2723":1,"2751":1,"2911":1,"2917":1}}],["records",{"2":{"2040":1,"2044":1}}],["recorded",{"2":{"1655":1,"2523":1,"2627":1,"2806":1}}],["recording",{"2":{"222":1,"328":1,"1484":4,"1655":6,"1656":1,"1657":1,"1658":3,"2523":2}}],["record",{"0":{"203":1,"629":1,"630":1,"1450":1,"1456":1,"1655":1,"2920":1,"2933":1},"1":{"1451":1,"1452":1,"1453":1,"1454":1,"1656":1,"1657":1,"1658":1},"2":{"3":1,"7":1,"15":1,"22":2,"176":1,"194":2,"195":2,"203":7,"211":3,"285":1,"294":1,"307":5,"317":1,"324":3,"325":3,"591":14,"625":2,"628":2,"629":4,"630":6,"641":1,"645":3,"1326":8,"1377":3,"1378":3,"1413":8,"1425":3,"1442":5,"1443":9,"1450":10,"1451":9,"1456":1,"1466":3,"1497":1,"1504":3,"1511":3,"1526":1,"1527":3,"1531":1,"1599":1,"1607":2,"1638":9,"1655":3,"1656":1,"1657":3,"1658":4,"1661":1,"1683":1,"1765":5,"1771":7,"1917":1,"1918":3,"1956":4,"2023":1,"2024":3,"2025":4,"2035":1,"2036":4,"2037":4,"2040":2,"2044":3,"2046":2,"2162":2,"2164":1,"2165":1,"2166":1,"2167":5,"2168":5,"2170":5,"2181":1,"2191":5,"2218":3,"2293":3,"2303":4,"2309":4,"2312":1,"2441":2,"2446":1,"2523":3,"2562":5,"2563":8,"2564":5,"2603":1,"2721":1,"2777":4,"2899":1,"2900":2,"2901":8,"2908":1,"2909":1,"2910":1,"2913":3,"2916":6,"2917":1,"2919":1,"2920":2,"2932":1,"2933":59}}],["reordering",{"2":{"182":1,"191":1}}],["reorderable",{"2":{"176":1}}],["reordered",{"2":{"98":1}}],["reorg",{"2":{"114":1}}],["regress",{"2":{"2374":2}}],["regression",{"2":{"134":1,"149":2,"211":1,"2372":2,"2374":1}}],["regulated",{"2":{"2683":1}}],["regulator",{"2":{"2000":1,"2273":1}}],["regularly",{"2":{"643":1}}],["regular",{"2":{"89":1,"114":1,"682":1,"1210":1,"1461":1,"1591":2,"1675":1,"1757":1,"2293":1,"2323":1,"2416":1,"2559":1,"2903":1}}],["regex",{"2":{"1428":1}}],["regen",{"2":{"199":4}}],["regenerate",{"2":{"198":1,"199":1,"249":2,"294":1}}],["region",{"2":{"2501":1,"2749":5}}],["regions",{"2":{"1343":1,"2734":1}}],["registry",{"2":{"2702":1,"2704":1}}],["registrations",{"2":{"658":1}}],["registration",{"0":{"655":1},"2":{"63":1}}],["registered",{"0":{"2460":1},"1":{"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2467":1,"2468":1},"2":{"1378":6,"1746":1,"1751":2,"1752":1,"1754":1,"2003":8,"2270":1,"2302":1,"2908":3,"2909":2}}],["registering",{"2":{"562":1,"1378":1,"1459":1,"1461":2,"1755":1,"1947":1}}],["register16",{"0":{"785":1,"791":1},"1":{"786":1,"787":1,"792":1,"793":1},"2":{"244":2}}],["registers",{"0":{"822":1,"850":1,"882":1,"914":1,"949":1,"983":1,"1017":1,"1051":1,"1085":1,"1119":1,"1153":1,"1187":1,"1240":1},"1":{"851":1,"883":1,"915":1,"950":1,"984":1,"1018":1,"1052":1,"1086":1,"1120":1,"1154":1,"1188":1,"1241":1},"2":{"134":1,"817":2,"819":2,"844":2,"846":2,"876":2,"878":2,"908":2,"910":2,"943":2,"945":2,"977":2,"979":2,"1011":2,"1013":2,"1045":2,"1047":2,"1079":2,"1081":1,"1113":2,"1115":1,"1147":2,"1149":1,"1181":2,"1183":1,"1210":1,"1234":2,"1236":2,"1612":1,"1659":1,"2006":1,"2459":1,"2669":2}}],["register",{"0":{"782":1,"788":1,"807":1,"817":1,"819":1,"834":1,"844":1,"846":1,"866":1,"876":1,"878":1,"896":1,"908":1,"910":1,"931":1,"943":1,"945":1,"965":1,"977":1,"979":1,"999":1,"1011":1,"1013":1,"1033":1,"1045":1,"1047":1,"1067":1,"1079":1,"1081":1,"1101":1,"1113":1,"1115":1,"1135":1,"1147":1,"1149":1,"1169":1,"1181":1,"1183":1,"1222":1,"1234":1,"1236":1,"1317":1,"1457":1,"1461":1,"1779":1,"1967":1,"2340":1,"2350":1,"2364":1},"1":{"783":1,"784":1,"789":1,"790":1,"808":1,"818":1,"820":1,"835":1,"845":1,"847":1,"867":1,"877":1,"879":1,"897":1,"909":1,"911":1,"932":1,"944":1,"946":1,"966":1,"978":1,"980":1,"1000":1,"1012":1,"1014":1,"1034":1,"1046":1,"1048":1,"1068":1,"1080":1,"1082":1,"1102":1,"1114":1,"1116":1,"1136":1,"1148":1,"1150":1,"1170":1,"1182":1,"1184":1,"1223":1,"1235":1,"1237":1,"1780":1,"1968":1,"2341":1,"2351":1,"2365":1},"2":{"114":1,"134":1,"149":1,"190":1,"191":2,"236":3,"244":2,"249":5,"562":1,"733":1,"734":3,"782":1,"783":1,"785":1,"786":1,"788":1,"789":1,"791":1,"792":1,"794":2,"804":1,"805":4,"807":1,"808":1,"822":1,"830":1,"831":4,"834":1,"835":1,"850":1,"860":1,"862":1,"863":4,"866":1,"867":1,"882":1,"890":1,"892":1,"893":4,"896":1,"897":1,"914":1,"925":1,"927":1,"928":4,"931":1,"932":1,"949":1,"959":1,"961":1,"962":4,"965":1,"966":1,"983":1,"993":1,"995":1,"996":4,"999":1,"1000":1,"1017":1,"1021":1,"1027":1,"1029":1,"1030":4,"1033":1,"1034":1,"1051":1,"1055":1,"1061":1,"1063":1,"1064":4,"1067":1,"1068":1,"1081":1,"1085":1,"1089":1,"1095":1,"1097":1,"1098":4,"1101":1,"1102":1,"1115":1,"1119":1,"1123":1,"1129":1,"1131":1,"1132":4,"1135":1,"1136":1,"1149":1,"1153":1,"1157":1,"1163":1,"1165":1,"1166":4,"1169":1,"1170":1,"1183":1,"1187":1,"1216":1,"1218":1,"1219":4,"1222":1,"1223":1,"1240":1,"1375":1,"1377":2,"1378":1,"1451":2,"1458":1,"1459":1,"1461":1,"1466":3,"1511":3,"1612":1,"1751":2,"1758":1,"1947":1,"2016":1,"2270":1,"2303":1,"2309":2,"2310":5,"2311":3,"2427":1,"2462":2,"2667":1,"2670":1,"2858":1,"2917":1}}],["reg",{"0":{"807":1,"834":1,"866":1,"896":1,"931":1,"965":1,"999":1,"1033":1,"1067":1,"1101":1,"1135":1,"1169":1,"1222":1},"1":{"808":1,"835":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1223":1},"2":{"808":1,"835":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1223":1,"2324":2}}],["regaddr",{"0":{"782":1,"785":1,"788":1,"791":1},"1":{"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1},"2":{"783":1,"786":1,"789":1,"792":1}}],["regards",{"2":{"1512":1,"1757":1,"2006":1,"2310":1,"2673":1}}],["regard",{"2":{"760":1}}],["regardless",{"2":{"49":1,"619":1,"765":1,"1378":1,"1761":1,"2050":1,"2210":1,"2260":1,"2568":1,"2631":1,"2723":1,"2734":1,"2742":1}}],["regarding",{"0":{"27":1},"2":{"92":1,"176":1,"191":1,"213":1,"759":1,"1312":1}}],["retirement",{"2":{"2895":1}}],["retail",{"2":{"2569":1}}],["retaining",{"2":{"1441":1,"2763":1}}],["retained",{"2":{"1412":1,"2266":1,"2603":1,"2780":2}}],["retain",{"0":{"2193":1},"2":{"114":1,"191":1,"199":1,"2193":2}}],["retn",{"2":{"2509":1,"2515":1}}],["ret",{"2":{"2325":1,"2545":1}}],["retries",{"2":{"2270":1}}],["retrieves",{"2":{"2632":2}}],["retrieve",{"2":{"373":1,"2750":1}}],["retrieved",{"2":{"373":1}}],["retrieval",{"2":{"191":1,"211":1,"637":1}}],["retry",{"2":{"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1362":1}}],["retro",{"0":{"1512":1,"1513":1,"2917":1,"2918":1},"1":{"1513":1,"2918":1},"2":{"63":1,"112":2,"134":2,"222":1,"236":1,"294":1,"562":4,"1493":1,"1511":5,"1512":11,"1513":3,"2847":2,"2917":7,"2918":3,"2919":1,"2938":2}}],["returned",{"2":{"654":1,"655":1,"656":1,"657":1,"687":1,"1588":1,"1723":1,"1795":1,"2160":1,"2193":1,"2749":11,"2913":1,"2929":1}}],["returncode",{"2":{"485":1,"551":1}}],["returns",{"2":{"485":1,"520":1,"529":1,"531":1,"532":2,"654":1,"695":1,"696":1,"758":1,"1530":1,"1593":1,"1614":2,"1615":1,"1662":1,"1740":1,"1794":1,"1931":1,"1948":12,"1951":1,"2000":1,"2019":6,"2020":3,"2021":1,"2039":1,"2045":1,"2167":1,"2203":1,"2283":8,"2299":1,"2312":1,"2373":1,"2446":1,"2627":2,"2750":2,"2912":1}}],["returning",{"2":{"90":1,"105":2,"203":1,"536":1,"649":1,"654":1,"1594":2,"1611":1,"1662":1,"1792":2,"2164":1,"2176":1,"2377":1,"2384":1,"2872":1,"2913":1,"2916":2}}],["return",{"0":{"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1250":1,"1253":1,"1255":1,"1258":1,"1261":1,"1273":1,"1279":1,"1541":1,"1575":1,"1577":1,"1582":1,"1718":1,"1723":1,"1785":1,"1814":1,"1820":1,"1825":1,"1828":1,"1831":1,"1834":1,"1837":1,"1858":1,"1872":1,"1878":1,"1888":1,"1898":1,"1901":1,"1903":1,"1905":1,"1908":1,"1911":1,"1973":1,"1976":1,"2084":1,"2098":1,"2104":1,"2110":1,"2116":1,"2126":1,"2136":1,"2142":1,"2145":1,"2147":1,"2149":1,"2152":1,"2155":1,"2328":1,"2346":1,"2349":1,"2354":1,"2356":1,"2359":1,"2361":1},"2":{"31":2,"34":2,"50":1,"90":4,"105":7,"125":3,"134":3,"185":3,"191":2,"194":5,"195":4,"199":1,"249":3,"294":1,"307":2,"312":1,"324":1,"325":1,"328":1,"332":2,"333":1,"348":1,"380":1,"520":4,"530":2,"531":2,"532":3,"536":1,"542":1,"586":1,"591":8,"613":3,"622":1,"623":2,"628":2,"629":3,"650":2,"651":1,"654":2,"655":1,"725":2,"1278":2,"1326":1,"1346":1,"1350":1,"1377":3,"1378":4,"1413":6,"1414":1,"1424":1,"1425":4,"1441":2,"1442":1,"1443":2,"1450":3,"1451":2,"1466":1,"1485":3,"1497":3,"1504":4,"1511":2,"1527":12,"1529":5,"1594":3,"1606":12,"1607":2,"1611":2,"1612":3,"1614":4,"1622":6,"1662":4,"1749":1,"1751":2,"1764":1,"1765":2,"1771":6,"1793":1,"1794":1,"1844":3,"1849":3,"1918":2,"1939":1,"1940":1,"1941":1,"1942":4,"1948":1,"1952":2,"1956":2,"2014":1,"2015":3,"2019":1,"2024":2,"2025":3,"2027":2,"2028":1,"2037":4,"2039":7,"2040":2,"2042":1,"2043":1,"2044":1,"2045":2,"2046":1,"2052":2,"2066":3,"2072":3,"2073":3,"2074":2,"2160":7,"2161":6,"2162":4,"2164":2,"2165":1,"2166":2,"2167":2,"2168":4,"2170":5,"2190":3,"2218":2,"2247":5,"2279":1,"2280":3,"2283":1,"2293":3,"2296":1,"2309":1,"2310":11,"2311":6,"2312":6,"2374":5,"2446":1,"2505":1,"2509":2,"2515":3,"2562":3,"2563":10,"2564":2,"2626":1,"2628":1,"2630":1,"2632":1,"2722":1,"2750":1,"2777":3,"2779":3,"2899":3,"2900":5,"2901":4,"2908":2,"2909":2,"2910":2,"2912":3,"2913":7,"2915":3,"2916":3,"2917":2,"2919":2,"2933":1}}],["rewinding",{"2":{"2627":1}}],["rewind",{"2":{"2159":1,"2510":3,"2515":3}}],["rework",{"0":{"196":2},"2":{"114":1,"134":1,"160":2,"176":1,"191":1,"199":1,"222":1,"236":1,"249":1,"277":1,"285":1,"328":1,"617":1,"2579":1}}],["reworked",{"2":{"60":1,"86":1,"118":1,"188":1,"191":1,"283":1}}],["rewritten",{"2":{"107":1,"1345":1,"2886":1}}],["rewrite",{"2":{"31":1,"75":1,"176":2,"191":1,"1362":2}}],["re",{"0":{"2843":1},"2":{"51":1,"107":1,"119":3,"124":1,"132":1,"134":1,"149":1,"157":1,"176":2,"182":1,"188":1,"198":1,"211":1,"224":1,"228":1,"232":1,"240":1,"241":1,"248":1,"253":1,"268":1,"270":1,"272":1,"273":1,"279":1,"281":1,"283":1,"294":1,"364":2,"373":1,"400":1,"401":1,"520":1,"522":1,"562":2,"597":1,"598":1,"603":1,"608":1,"611":2,"613":1,"616":1,"631":1,"656":1,"659":1,"684":1,"1204":1,"1206":1,"1308":1,"1315":1,"1375":1,"1379":1,"1413":5,"1454":1,"1484":1,"1495":1,"1587":1,"1602":1,"1603":2,"1606":1,"1665":1,"1683":1,"1755":3,"1758":1,"1799":1,"1917":1,"1990":1,"2027":1,"2256":1,"2261":1,"2266":2,"2268":2,"2323":1,"2324":1,"2372":1,"2403":3,"2422":8,"2424":2,"2427":1,"2430":1,"2445":1,"2447":1,"2449":1,"2490":1,"2501":1,"2567":1,"2576":1,"2583":1,"2588":1,"2606":1,"2609":1,"2610":1,"2622":1,"2627":1,"2631":1,"2644":1,"2645":1,"2664":1,"2666":1,"2667":1,"2674":1,"2704":1,"2706":1,"2708":1,"2718":1,"2719":2,"2721":1,"2723":1,"2735":1,"2743":1,"2749":2,"2775":1,"2783":1,"2787":2,"2788":1,"2883":1,"2884":2,"2885":2,"2887":1,"2901":1,"2917":1}}],["rear",{"2":{"2788":1}}],["reapply",{"2":{"2627":1}}],["reapplying",{"2":{"1378":1}}],["reap",{"2":{"406":1}}],["reasons",{"2":{"620":1}}],["reasonable",{"2":{"617":1,"2028":1,"2898":1}}],["reason",{"2":{"288":1,"410":1,"533":1,"617":1,"1347":1,"1375":1,"1417":1,"1437":1,"1454":1,"2258":1,"2567":1,"2568":1,"2710":1,"2719":1,"2750":1,"2901":1,"2921":1,"2937":1}}],["reacting",{"2":{"2269":1}}],["reactive",{"0":{"2065":1},"2":{"93":1,"124":1,"176":1,"199":1,"249":1,"266":1,"317":1,"1843":22,"1846":2,"2063":25,"2065":3,"2069":2,"2887":8}}],["react",{"2":{"2269":1,"2864":2,"2871":2}}],["reached",{"2":{"1821":1,"1929":2,"1933":1}}],["reaches",{"2":{"1421":1,"1928":3,"2465":1,"2627":1}}],["reach",{"2":{"412":1,"614":1,"1519":1,"1805":2,"1933":1,"2284":1,"2719":1}}],["reachable",{"2":{"249":1,"2007":5}}],["reaching",{"2":{"188":1,"1491":1,"2372":1,"2928":1}}],["realtime",{"0":{"2890":1}}],["realpath",{"2":{"2585":1,"2586":1}}],["realising",{"2":{"2567":1}}],["realized",{"2":{"1744":1}}],["realign",{"2":{"211":1}}],["realloc",{"2":{"236":1}}],["reallocate",{"2":{"199":2}}],["really",{"2":{"153":1,"1316":1,"1410":1,"1493":1,"1495":1,"1511":1,"1587":1,"1749":1,"1752":1,"1757":1,"2418":1,"2663":1,"2920":1}}],["real",{"0":{"1359":1,"2736":1},"1":{"2737":1,"2738":1,"2739":1},"2":{"49":1,"245":1,"1325":1,"1353":1,"1359":7,"1406":1,"1511":1,"2284":2,"2707":1}}],["reader",{"2":{"1606":1,"1941":7,"1948":1,"2279":7,"2283":1}}],["readers",{"2":{"527":1}}],["read32",{"2":{"645":1,"2270":1,"2719":1,"2750":6}}],["reads",{"2":{"559":2,"566":1,"567":1,"568":1,"637":3,"695":2,"696":3,"747":1,"2000":1,"2052":1,"2400":1,"2787":1}}],["readily",{"2":{"546":1,"2498":1}}],["readings",{"2":{"234":1}}],["reading",{"0":{"475":1,"494":1,"592":1},"1":{"476":1,"477":1,"478":1,"479":1},"2":{"114":1,"134":1,"149":1,"160":1,"176":1,"498":1,"559":2,"617":1,"624":1,"743":1,"794":1,"1413":1,"1770":1,"1795":1,"2440":1,"2453":1,"2459":1,"2495":4,"2496":1,"2608":1,"2865":1,"2923":1}}],["readability",{"2":{"520":1,"535":1,"546":1,"587":1,"1344":1,"2551":1}}],["readable",{"2":{"308":1,"1327":2,"1344":1,"2788":1,"2804":1,"2941":1}}],["ready",{"2":{"338":3,"397":1,"1329":1,"1466":1,"1477":1,"1616":1,"1951":1,"1985":1,"2291":1,"2377":1,"2384":1,"2411":1,"2495":1,"2501":1,"2575":1,"2605":1,"2609":1,"2610":1,"2623":1,"2666":1}}],["readreg",{"2":{"244":1}}],["readreg16",{"2":{"134":1,"244":1}}],["readpin",{"2":{"243":1}}],["readport",{"2":{"114":1}}],["readonly",{"2":{"236":1}}],["readd",{"2":{"199":1}}],["readmes",{"2":{"266":1}}],["readme",{"0":{"673":1,"674":1,"1438":2,"2437":1,"2708":1},"2":{"114":3,"134":1,"160":1,"191":1,"211":1,"222":2,"294":2,"308":1,"328":1,"403":1,"405":1,"616":2,"683":1,"1427":3,"1434":1,"2383":1,"2407":1,"2408":1,"2410":1,"2433":1,"2436":1,"2437":1,"2443":2,"2494":1,"2708":3,"2721":1}}],["read",{"0":{"608":1,"788":1,"791":1,"1254":1,"1272":1,"1365":1,"1721":1,"1783":1,"1941":1,"2279":1},"1":{"789":1,"790":1,"792":1,"793":1,"1255":1,"1273":1,"1722":1,"1723":1,"1784":1,"1785":1},"2":{"2":1,"31":3,"49":1,"114":2,"160":2,"194":1,"195":1,"199":1,"206":1,"243":1,"244":2,"249":1,"285":1,"294":1,"308":1,"340":1,"359":2,"471":1,"475":1,"481":1,"548":1,"587":1,"607":1,"637":3,"690":1,"695":1,"696":2,"725":1,"758":1,"763":2,"777":2,"780":2,"788":1,"789":3,"791":1,"792":3,"794":1,"1189":1,"1254":1,"1255":1,"1260":2,"1273":2,"1277":2,"1278":1,"1279":1,"1311":1,"1341":1,"1365":1,"1376":1,"1406":1,"1412":3,"1413":5,"1414":3,"1422":1,"1466":1,"1533":1,"1606":1,"1655":1,"1656":1,"1721":1,"1722":1,"1743":1,"1766":2,"1770":2,"1777":1,"1784":1,"1790":1,"1929":1,"1941":6,"1948":1,"2000":1,"2012":1,"2014":2,"2016":1,"2052":1,"2264":2,"2265":1,"2279":6,"2283":1,"2303":1,"2411":1,"2439":1,"2459":2,"2496":1,"2578":1,"2626":1,"2628":1,"2690":1,"2691":1,"2707":1,"2719":1,"2752":1,"2754":1,"2773":3,"2785":2,"2787":1,"2788":1,"2889":1,"2915":1,"2923":2,"2924":1,"2936":1,"2941":1}}],["reddit",{"2":{"2891":1}}],["redragon",{"2":{"2567":1}}],["redetect",{"2":{"1955":1}}],["redesigning",{"2":{"1365":1}}],["redefined",{"2":{"2721":1}}],["redefine",{"2":{"557":1,"1393":1,"1443":1,"2252":2}}],["redirect",{"2":{"584":1,"659":1,"1379":1,"2430":1,"2630":1}}],["redirected",{"2":{"268":1,"2566":1}}],["redistribution",{"2":{"2703":1,"2719":1,"2726":1,"2728":1,"2741":1}}],["redistributed",{"2":{"2703":1}}],["redistribute",{"2":{"1438":1,"2725":1}}],["redis",{"0":{"583":1},"2":{"360":1,"364":1}}],["redox",{"2":{"241":2,"249":3}}],["redoing",{"2":{"191":1}}],["redo",{"2":{"160":1}}],["red",{"0":{"704":1,"706":1,"737":1,"739":1,"809":1,"811":1,"817":1,"836":1,"838":1,"844":1,"868":1,"870":1,"876":1,"900":1,"902":1,"908":1,"935":1,"937":1,"943":1,"969":1,"971":1,"977":1,"1003":1,"1005":1,"1011":1,"1037":1,"1039":1,"1045":1,"1071":1,"1073":1,"1079":1,"1105":1,"1107":1,"1113":1,"1139":1,"1141":1,"1147":1,"1173":1,"1175":1,"1181":1,"1226":1,"1228":1,"1234":1,"1303":1,"1305":1},"1":{"705":1,"707":1,"738":1,"740":1,"810":1,"812":1,"818":1,"837":1,"839":1,"845":1,"869":1,"871":1,"877":1,"901":1,"903":1,"909":1,"936":1,"938":1,"944":1,"970":1,"972":1,"978":1,"1004":1,"1006":1,"1012":1,"1038":1,"1040":1,"1046":1,"1072":1,"1074":1,"1080":1,"1106":1,"1108":1,"1114":1,"1140":1,"1142":1,"1148":1,"1174":1,"1176":1,"1182":1,"1227":1,"1229":1,"1235":1,"1304":1,"1306":1},"2":{"49":1,"338":3,"397":1,"427":1,"490":2,"492":1,"650":1,"651":2,"705":2,"707":2,"731":1,"734":1,"738":2,"740":2,"802":1,"805":1,"810":2,"812":2,"818":2,"828":1,"831":1,"837":2,"839":2,"845":2,"860":1,"863":1,"869":2,"871":2,"877":2,"890":1,"893":1,"901":2,"903":2,"909":2,"925":1,"928":1,"936":2,"938":2,"944":2,"959":1,"962":1,"970":2,"972":2,"978":2,"993":1,"996":1,"1004":2,"1006":2,"1012":2,"1027":1,"1030":1,"1038":2,"1040":2,"1046":2,"1061":1,"1064":1,"1072":2,"1074":2,"1080":2,"1095":1,"1098":1,"1106":2,"1108":2,"1114":2,"1129":1,"1132":1,"1140":2,"1142":2,"1148":2,"1163":1,"1166":1,"1174":2,"1176":2,"1182":2,"1216":1,"1219":1,"1227":2,"1229":2,"1235":2,"1284":1,"1285":1,"1304":2,"1306":2,"1413":1,"1469":1,"1472":3,"1476":2,"1952":1,"2067":2,"2072":2,"2073":1,"2086":1,"2088":1,"2181":1,"2182":1,"2185":1,"2189":3,"2191":1,"2198":1,"2205":2,"2537":1,"2594":1}}],["reducing",{"2":{"69":1,"622":1,"2372":1}}],["reduces",{"2":{"215":1,"265":1,"617":1,"2372":1}}],["reduced",{"2":{"195":1,"1193":1,"1196":1}}],["reduce",{"0":{"55":1,"323":1,"2186":1},"2":{"17":1,"94":1,"114":2,"134":1,"149":1,"160":1,"191":6,"199":2,"211":4,"213":1,"222":3,"236":1,"266":1,"297":1,"328":1,"570":1,"1518":1,"1943":2,"2159":1,"2281":1,"2410":1,"2411":2,"2631":1,"2721":1,"2881":1,"2885":1,"2911":1}}],["reduction",{"2":{"3":1,"15":1,"149":1}}],["redundant",{"2":{"8":1,"94":1,"114":1,"211":1,"249":5,"266":3,"293":1,"305":1,"308":1,"333":3,"1613":1}}],["renaming",{"0":{"243":1,"245":1},"2":{"182":1,"194":1,"2722":1}}],["renamed",{"0":{"271":1},"2":{"37":1,"50":1,"142":1,"183":1,"186":1,"219":1,"271":1}}],["rename",{"0":{"142":1,"219":1},"2":{"25":1,"65":1,"94":1,"133":1,"134":3,"149":4,"160":2,"176":4,"191":1,"199":1,"211":13,"222":3,"236":4,"243":1,"249":6,"266":3,"277":4,"285":3,"308":1,"331":1,"1340":1}}],["renderers",{"2":{"2862":1}}],["rendered",{"2":{"1468":1,"1902":1,"1904":1,"1906":1,"1909":1,"1947":1,"1948":1,"2146":1,"2148":1,"2150":1,"2153":1,"2283":1,"2749":2,"2750":1,"2792":1,"2793":1}}],["rendering",{"2":{"285":1,"1285":1,"1296":1,"1849":1,"1946":5,"1947":2,"1948":1,"2072":1,"2282":3,"2283":1,"2568":1,"2769":1}}],["renders",{"2":{"284":1,"679":1,"680":1,"1942":2,"1947":1,"1948":1,"2280":2,"2283":1}}],["render",{"2":{"31":1,"191":2,"222":1,"230":1,"1478":1,"1940":3,"1942":8,"1943":1,"1948":5,"1949":3,"2278":2,"2280":4,"2283":2,"2496":1,"2751":1}}],["remediated",{"2":{"2571":1}}],["remediation",{"0":{"2571":1}}],["remembered",{"0":{"2165":1},"2":{"2163":1,"2164":2,"2165":5,"2166":1,"2170":1}}],["remembers",{"2":{"2156":1}}],["remembering",{"2":{"561":1}}],["remember",{"2":{"492":2,"521":1,"566":1,"1413":1,"2050":1,"2163":1,"2164":2,"2165":1,"2166":1,"2170":1,"2290":1,"2291":1,"2293":1,"2324":1,"2459":2,"2620":1,"2936":1,"2942":1}}],["remotes",{"2":{"2630":2}}],["remote",{"2":{"222":1,"236":1,"421":1,"422":1,"1988":3,"2270":1,"2403":5,"2557":3,"2560":3,"2601":2,"2630":9,"2632":9,"2644":2}}],["removal",{"0":{"89":1,"103":1,"126":1,"276":1,"284":1,"293":1,"304":1,"305":1,"314":1,"316":1,"331":1,"332":1,"2895":1},"1":{"104":1,"127":1,"2896":1,"2897":1},"2":{"114":1,"124":1,"126":1,"134":1,"240":1,"249":6,"279":2,"285":1,"750":1,"2031":2,"2895":2,"2896":2}}],["removes",{"2":{"27":1,"49":1,"50":1,"176":1,"451":1,"1377":1,"1413":1,"2410":1}}],["removed",{"0":{"140":1},"2":{"6":1,"8":1,"36":1,"50":6,"67":1,"86":2,"89":1,"128":1,"140":1,"156":1,"157":1,"194":2,"201":1,"206":1,"211":1,"213":1,"218":1,"228":1,"245":1,"249":1,"254":1,"255":1,"256":1,"262":1,"273":1,"276":1,"283":1,"284":1,"303":1,"304":1,"307":1,"314":1,"316":1,"327":1,"331":1,"332":1,"451":1,"1754":2,"1755":1,"1949":2,"2039":2,"2042":1,"2569":1,"2570":1,"2571":1,"2621":1,"2721":4,"2896":3}}],["remove",{"0":{"8":1,"128":1,"218":1,"220":1,"254":1,"327":1,"451":1,"1965":1,"2360":1},"1":{"1966":1,"2361":1},"2":{"4":1,"5":1,"31":3,"32":1,"34":3,"36":1,"38":1,"50":1,"64":1,"65":1,"70":1,"72":1,"75":9,"76":1,"86":1,"94":4,"114":17,"133":8,"134":15,"149":10,"160":5,"176":9,"188":15,"191":42,"199":33,"211":23,"222":19,"236":17,"249":22,"255":1,"257":1,"258":1,"259":2,"265":1,"266":22,"275":1,"277":16,"285":9,"294":10,"307":2,"308":14,"317":7,"328":3,"333":10,"403":1,"410":1,"451":2,"453":2,"467":1,"586":1,"685":1,"1359":1,"1516":1,"1805":1,"2039":3,"2042":3,"2043":2,"2064":1,"2184":1,"2291":1,"2310":1,"2360":1,"2497":1,"2578":1,"2579":1,"2608":1,"2684":1,"2700":1,"2719":2,"2721":1,"2788":1,"2885":1,"2910":1,"2912":1}}],["removing",{"2":{"3":1,"15":1,"50":1,"134":1,"182":1,"259":1,"272":1,"273":1,"1416":1,"1529":1,"1736":1}}],["remnants",{"2":{"211":1}}],["remainder",{"2":{"1948":2,"2283":2}}],["remainders",{"2":{"236":1}}],["remains",{"2":{"320":1,"1434":1,"1592":1,"1931":1,"2034":1,"2919":1}}],["remain",{"2":{"312":1,"547":1,"2177":1,"2643":1,"2747":2}}],["remaining",{"2":{"22":1,"87":1,"103":1,"114":2,"126":1,"191":1,"199":2,"211":2,"249":1,"308":1,"317":2,"1280":1,"1523":1,"1941":3,"1948":1,"2178":1,"2279":3,"2283":1,"2288":1,"2289":1,"2923":1}}],["remapped",{"2":{"1210":1,"1948":2,"2283":2}}],["remapping",{"2":{"328":1,"1210":1,"1587":1}}],["remap",{"2":{"182":1,"1195":2,"1198":2,"1210":5,"1486":1,"1947":2,"2870":1}}],["refused",{"2":{"2567":1}}],["refuses",{"2":{"2567":2}}],["reflashing",{"2":{"2368":1,"2475":1}}],["reflash",{"2":{"1345":1,"1660":1}}],["reflected",{"2":{"1345":1,"2630":1}}],["reflection",{"2":{"546":1}}],["reflects",{"2":{"182":1,"2645":1}}],["reflect",{"2":{"90":1,"114":1,"182":1,"199":1,"262":1,"283":1,"285":1,"1378":1,"1672":1,"1790":1,"2449":1,"2710":1,"2721":1}}],["refills",{"2":{"717":4}}],["refill",{"2":{"716":1}}],["refine",{"2":{"74":1,"1956":1}}],["ref",{"2":{"695":3,"724":1,"1614":11,"1616":2}}],["refreshed",{"2":{"2173":1}}],["refreshes",{"2":{"645":1}}],["refreshing",{"2":{"1410":1}}],["refresh",{"2":{"387":1,"645":5,"699":1,"1929":1,"1933":1,"1947":1,"2510":2,"2515":2}}],["refers",{"2":{"1375":1,"2835":1}}],["referencing",{"2":{"1497":1,"1513":1}}],["referenced",{"0":{"589":1},"2":{"1844":1,"2066":1,"2549":1,"2630":1}}],["reference",{"0":{"1614":1,"1751":1,"1752":1,"2294":1,"2844":1},"1":{"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1,"2860":1,"2861":1,"2862":1,"2863":1,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1,"2869":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2875":1,"2876":1},"2":{"95":1,"182":1,"191":2,"199":1,"222":1,"294":1,"520":1,"597":2,"604":2,"695":1,"1297":1,"1378":1,"1413":1,"1419":1,"1427":1,"1527":1,"1614":8,"1616":4,"1739":1,"1751":1,"1917":1,"1922":1,"2438":1,"2472":1,"2514":1,"2568":1,"2723":1,"2789":1,"2851":1,"2925":1}}],["references",{"0":{"1921":1},"1":{"1922":1,"1923":1},"2":{"27":2,"38":1,"64":1,"95":1,"114":1,"133":1,"134":1,"191":4,"211":2,"222":2,"245":1,"266":1,"285":1,"1949":2,"2630":1}}],["refereed",{"2":{"1197":2}}],["referring",{"2":{"603":1,"754":1}}],["referred",{"2":{"201":1,"1191":1,"1194":1,"2547":1,"2548":1,"2552":1,"2632":1}}],["refer",{"2":{"233":1,"245":1,"503":1,"600":1,"668":1,"683":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1197":1,"1206":1,"1244":1,"1325":1,"1346":1,"1359":1,"1394":1,"1562":1,"1628":1,"1678":1,"1679":2,"1707":1,"1724":1,"1979":1,"2029":1,"2050":1,"2262":1,"2293":1,"2323":1,"2476":1,"2551":1,"2582":1,"2687":1,"2688":1,"2689":1,"2895":1,"2935":1}}],["refs",{"2":{"114":2,"149":1,"2627":1,"2632":2}}],["refactoring",{"0":{"125":1,"169":1,"182":1,"183":1,"184":1,"185":1,"186":1,"188":1,"618":1},"1":{"170":1},"2":{"187":1,"188":1,"191":3,"198":1,"199":1,"222":1,"235":1,"236":1,"244":1,"249":1,"266":1,"294":1,"397":1,"618":1,"2646":1,"2657":1,"2722":1}}],["refactored",{"2":{"49":1}}],["refactor",{"0":{"17":1,"18":1,"32":1,"33":1,"60":1,"87":1,"263":1},"1":{"34":1,"88":1},"2":{"17":1,"32":1,"49":1,"51":1,"72":1,"75":3,"86":1,"93":1,"94":2,"114":4,"134":2,"149":4,"160":5,"176":4,"190":1,"191":6,"199":5,"211":4,"222":10,"236":3,"249":19,"266":8,"277":8,"285":5,"294":2,"308":1,"317":15,"328":6,"333":3,"2719":1}}],["refactors",{"0":{"29":1,"58":1},"1":{"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1},"2":{"16":1,"618":1,"2721":1}}],["reformatting",{"2":{"317":1}}],["reformat",{"2":{"1":1,"114":1}}],["res2",{"2":{"2289":1,"2294":1}}],["res1",{"2":{"2289":1,"2294":1}}],["resd",{"2":{"2246":1}}],["rescue",{"2":{"1761":1,"2730":1}}],["reschedules",{"2":{"654":1}}],["resistant",{"2":{"1406":1,"1407":4,"1410":1}}],["resistance",{"2":{"724":2,"857":2,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":2,"1126":2,"1160":2,"1407":1,"2260":1,"2851":2}}],["resistors",{"2":{"1310":1,"1564":1,"2257":1,"2260":2}}],["resistor",{"2":{"236":1,"758":2,"854":2,"857":2,"918":2,"922":2,"953":2,"956":2,"987":2,"990":2,"1021":2,"1024":2,"1055":2,"1058":2,"1089":2,"1092":2,"1123":2,"1126":2,"1157":2,"1160":2,"1194":3,"1202":1,"1294":1,"1564":2,"2675":3,"2679":1}}],["res",{"2":{"698":2,"1793":3,"2245":9}}],["resynchronize",{"2":{"2630":3,"2723":1}}],["resynchronizing",{"0":{"2628":1,"2630":1},"1":{"2629":1,"2630":1},"2":{"2625":1}}],["resync",{"2":{"559":1,"1351":1,"2847":1,"2883":1}}],["responds",{"2":{"2052":1}}],["responding",{"2":{"747":1}}],["respond",{"2":{"608":1,"794":1,"1557":1,"1846":1,"2069":1}}],["responsibility",{"2":{"397":1}}],["responsible",{"2":{"361":1,"616":1,"619":1,"1294":1,"2303":1,"2572":1,"2668":1,"2757":1,"2928":3}}],["responsiveness",{"2":{"1410":1,"1846":2,"2016":1,"2069":2,"2303":1,"2757":1,"2864":1,"2871":1}}],["responsive",{"2":{"320":1,"411":1,"644":1,"2069":1,"2919":1}}],["responses",{"2":{"579":1,"2704":1}}],["response",{"2":{"312":1,"765":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"794":1,"795":1,"1410":3,"2052":10,"2462":1,"2567":2}}],["respected",{"2":{"2750":1}}],["respecting",{"2":{"2344":1}}],["respectively",{"2":{"646":1,"667":1,"682":1,"802":1,"828":1,"857":1,"860":1,"890":1,"922":1,"925":1,"956":1,"959":1,"990":1,"993":1,"1024":1,"1027":1,"1058":1,"1061":1,"1092":1,"1095":1,"1126":1,"1129":1,"1160":1,"1163":1,"1216":1,"1492":1,"1639":1,"1770":1,"1929":1,"2260":1,"2323":1,"2324":1,"2551":1,"2644":1,"2676":1,"2788":1,"2937":1}}],["respective",{"2":{"50":1,"222":1,"233":1,"234":1,"283":1,"567":1,"1195":1,"1198":1,"1297":1,"1402":1,"1452":1,"1839":1,"1931":3,"2059":1,"2215":1,"2324":1,"2547":1,"2728":1,"2747":1,"2750":1,"2766":1,"2774":1}}],["respect",{"2":{"14":1,"98":1,"176":1,"211":1,"222":1,"285":2,"294":1,"619":1,"2703":1,"2749":1,"2771":1}}],["resembles",{"2":{"2787":1}}],["reserves",{"2":{"2700":1}}],["reserved",{"2":{"528":1,"1696":1,"1940":1,"2278":1,"2434":1,"2496":1,"2512":1,"2744":1}}],["researchers",{"2":{"312":1}}],["reset6",{"2":{"2684":1}}],["resets",{"2":{"562":1,"1487":1,"1489":1,"1523":1,"1948":1,"2283":1,"2302":1,"2516":1,"2517":1,"2684":1,"2745":1,"2749":2}}],["resetting",{"0":{"2781":1},"2":{"230":1,"745":1,"1317":1,"1585":1,"1815":1,"2669":1}}],["reset",{"0":{"156":1,"167":1,"1364":1,"1822":1,"2693":1,"2782":1},"2":{"49":2,"114":2,"149":1,"156":3,"167":2,"176":2,"188":1,"191":4,"199":2,"222":1,"308":2,"390":2,"391":3,"392":1,"405":1,"424":2,"490":6,"492":3,"649":6,"650":1,"651":1,"674":2,"682":1,"683":2,"1262":1,"1282":1,"1283":1,"1312":1,"1317":3,"1362":1,"1364":1,"1375":2,"1413":3,"1455":2,"1487":1,"1489":1,"1527":1,"1583":2,"1608":1,"1674":2,"1696":1,"1781":1,"1818":1,"1822":1,"1840":1,"1934":5,"1954":2,"1955":2,"1965":1,"1969":1,"2030":1,"2037":1,"2039":1,"2040":2,"2060":1,"2266":4,"2281":1,"2294":2,"2302":2,"2303":5,"2307":1,"2308":3,"2309":2,"2310":3,"2311":3,"2312":4,"2316":1,"2376":3,"2379":3,"2381":2,"2382":2,"2383":1,"2384":2,"2386":5,"2388":5,"2389":2,"2390":2,"2391":5,"2397":3,"2411":1,"2426":2,"2476":1,"2478":4,"2480":5,"2482":4,"2484":1,"2486":1,"2488":1,"2492":1,"2501":3,"2517":1,"2605":2,"2608":1,"2630":1,"2644":1,"2682":1,"2684":2,"2693":5,"2695":1,"2721":1,"2749":11,"2781":2,"2782":2,"2783":3,"2845":1,"2863":1}}],["resu",{"2":{"2246":1}}],["resume",{"0":{"1373":1},"2":{"222":1,"263":2,"1373":1}}],["results",{"0":{"372":1},"2":{"99":1,"103":1,"126":1,"236":1,"263":1,"360":2,"371":1,"373":1,"431":1,"524":1,"576":1,"1516":1,"1953":1,"1954":1,"2017":1,"2372":1,"2914":1,"2918":1,"2932":2}}],["resulting",{"2":{"25":1,"119":1,"368":1,"578":1,"584":1,"587":1,"1596":1,"1616":1,"1661":1,"2017":1,"2400":1,"2589":1}}],["result",{"2":{"3":2,"8":1,"15":2,"87":1,"156":1,"166":1,"182":1,"371":2,"372":1,"548":1,"655":1,"698":4,"747":1,"752":2,"794":2,"1364":1,"1421":1,"1437":1,"1486":1,"1487":1,"1493":1,"1512":1,"1513":1,"1606":1,"1616":1,"1675":1,"1953":1,"1954":1,"2009":1,"2017":2,"2302":1,"2310":1,"2569":1,"2570":1,"2590":1,"2749":2,"2750":2,"2754":1,"2895":1,"2917":2,"2941":1}}],["resort",{"2":{"1953":1,"2324":1,"2569":1}}],["resonance",{"2":{"1679":2}}],["resonant",{"2":{"1679":1}}],["resources",{"0":{"2274":1,"2565":1,"2574":1,"2635":1,"2636":1,"2637":1,"2638":1,"2639":1},"1":{"2636":1,"2637":1,"2638":1,"2639":1},"2":{"1407":1,"2292":1,"2555":1,"2557":1,"2560":1,"2574":2,"2612":1,"2635":1,"2644":1,"2697":1,"2700":1,"2727":1,"2750":2,"2755":1,"2889":1,"2934":1}}],["resource",{"2":{"123":1,"573":1,"717":1,"1656":1,"2697":1,"2758":1,"2765":1,"2881":1}}],["resolving",{"0":{"2626":1},"1":{"2627":1},"2":{"203":1,"2403":2,"2625":1,"2719":2}}],["resolved",{"2":{"2627":1}}],["resolves",{"2":{"1604":1,"1611":1}}],["resolve",{"2":{"95":1,"191":3,"236":2,"294":1,"308":2,"333":1,"568":1,"611":1,"2627":1}}],["resolution",{"0":{"2017":1},"2":{"134":1,"183":2,"211":2,"308":1,"317":1,"328":2,"698":3,"724":2,"1289":1,"1659":2,"1660":2,"1768":3,"1770":1,"1933":1,"1988":3,"1989":1,"2002":8,"2017":11,"2245":2,"2246":5,"2247":12,"2851":2,"2858":1}}],["resolutions",{"0":{"2245":1},"2":{"63":1,"1659":1,"1660":4,"2002":1,"2749":1}}],["rests",{"2":{"2838":1}}],["resting",{"2":{"1770":1,"1777":1,"1785":1,"2421":1}}],["restricts",{"2":{"2729":1}}],["restricted",{"2":{"2688":1,"2729":1,"2738":2}}],["restriction",{"2":{"2671":1}}],["restrictions",{"0":{"2728":1},"2":{"2670":1,"2703":1,"2726":1,"2728":3,"2740":1,"2741":1,"2742":2}}],["restrictive",{"2":{"1522":1,"2729":1,"2743":1}}],["restrict",{"2":{"328":1}}],["restructuring",{"2":{"133":1,"617":1}}],["restructure",{"0":{"113":1,"133":1},"2":{"113":1,"176":2,"328":1,"533":1}}],["rest",{"2":{"243":1,"331":1,"529":1,"751":1,"752":1,"753":1,"1770":2,"1805":3,"2408":1,"2417":1,"2421":1,"2425":1,"2475":1,"2510":1,"2613":1,"2633":1,"2655":1,"2857":1,"2936":2}}],["restarted",{"2":{"1948":1}}],["restart",{"2":{"199":2,"683":1,"1313":1,"1485":1,"2653":2,"2664":1,"2666":1}}],["restarting",{"2":{"191":1}}],["restoration",{"2":{"149":1}}],["restored",{"2":{"279":1,"2381":1}}],["restore",{"2":{"62":1,"199":1,"211":2,"222":3,"285":1,"294":1,"328":1,"408":1,"1317":1,"1378":1}}],["revoke",{"2":{"2568":1,"2570":1}}],["revealed",{"2":{"312":1}}],["reverence",{"2":{"724":1,"2851":1}}],["reversed",{"2":{"2296":1}}],["reverses",{"2":{"2160":2}}],["reverse",{"0":{"1869":1,"1870":1,"1895":1,"1896":1,"2095":1,"2096":1,"2133":1,"2134":1,"2332":1},"2":{"191":1,"1377":1,"1483":1,"1489":1,"1519":1,"1842":2,"1992":1,"2062":3,"2159":1,"2160":2,"2161":1,"2181":2,"2199":2,"2206":1,"2325":1,"2517":1,"2530":2,"2537":2,"2538":3,"2545":1,"2567":1}}],["reversing",{"2":{"13":1,"2627":1}}],["reverted",{"2":{"176":1}}],["revert",{"2":{"114":2,"134":2,"149":1,"160":1,"176":2,"191":2,"199":5,"206":1,"211":1,"222":3,"236":1,"285":1,"2172":1,"2173":1,"2175":1,"2901":1}}],["rev7",{"2":{"277":1}}],["rev6",{"0":{"1317":1},"2":{"211":1,"387":2,"427":2,"450":2,"451":2,"452":1,"453":1,"1317":1,"1486":1,"1521":1,"2400":2}}],["reva",{"2":{"143":2}}],["revamp",{"2":{"74":1,"222":1}}],["reviewing",{"2":{"611":1,"2718":1,"2724":1}}],["reviewed",{"2":{"611":1}}],["reviewer",{"2":{"611":1}}],["reviews",{"2":{"397":1,"2721":1,"2724":2}}],["review",{"0":{"2602":1,"2724":1},"2":{"285":1,"397":2,"411":1,"1338":1,"2569":1,"2602":2,"2719":1,"2721":1,"2722":1}}],["revisit",{"2":{"547":1,"549":1}}],["revision",{"2":{"10":2,"17":1,"60":1,"86":1,"114":1,"236":3,"294":1,"440":1,"625":4,"630":1,"634":1,"636":1,"640":1,"643":1,"644":1,"648":1,"652":1,"1414":1,"1426":1,"1432":1,"1792":1,"2410":2,"2435":3,"2438":1}}],["revisions",{"2":{"10":1,"58":1,"114":1,"160":1,"249":1,"262":1,"277":1,"308":1,"405":1,"555":1,"559":1,"617":2,"750":1,"2435":4,"2668":1}}],["revised",{"2":{"236":1}}],["reviung61",{"2":{"143":2}}],["reviung5",{"2":{"143":2}}],["reviung53",{"2":{"143":2}}],["reviung41",{"2":{"143":2}}],["reviung39",{"2":{"143":2}}],["reviung34",{"2":{"143":2}}],["reviung33",{"2":{"143":2}}],["reviung",{"2":{"143":7,"149":2}}],["rev0",{"2":{"143":2}}],["rev",{"2":{"114":1,"134":3,"211":6,"226":2,"249":1,"253":1,"2050":1,"2627":4}}],["rev5",{"2":{"114":1,"211":1,"435":1,"2580":4,"2607":2}}],["rev4",{"2":{"114":1,"134":1,"222":1,"226":1,"285":1,"427":2,"471":3,"472":2,"482":1,"483":2,"674":3,"1362":3,"1432":2,"2377":2,"2384":2,"2410":5,"2576":3}}],["rev3",{"2":{"57":2,"86":4,"102":1,"134":1,"143":2,"191":1,"241":4,"253":1,"266":1,"311":4,"317":2,"432":2,"452":1,"453":1,"674":1,"1317":1,"2410":1,"2433":2,"2434":1,"2435":2,"2577":1,"2622":6}}],["rev1+rev2",{"2":{"72":1}}],["rev1",{"2":{"45":1,"55":4,"58":2,"67":3,"86":5,"102":5,"122":3,"143":34,"149":1,"159":2,"191":1,"207":2,"211":5,"222":1,"226":2,"236":2,"241":12,"249":1,"253":14,"266":2,"285":1,"291":3,"300":4,"311":1,"317":1,"674":1,"1385":1,"1387":2,"1402":2,"2266":3,"2435":2}}],["revs",{"2":{"45":3}}],["rev2",{"2":{"45":1,"55":29,"57":2,"67":3,"70":24,"72":1,"86":2,"102":6,"114":3,"143":12,"160":1,"176":3,"211":2,"222":1,"226":1,"236":3,"241":6,"277":1,"311":2,"317":1,"328":3,"369":1,"438":1,"674":1,"2433":1,"2435":2}}],["revx",{"2":{"32":1}}],["reliability",{"2":{"2324":1}}],["reliably",{"2":{"2312":1,"2324":1}}],["relies",{"2":{"2603":1}}],["relieves",{"2":{"2293":1}}],["relied",{"2":{"1950":1}}],["relying",{"2":{"1804":1,"1844":1,"2066":1}}],["rely",{"2":{"222":1,"534":1,"2583":1,"2609":1,"2757":1}}],["relay",{"2":{"1675":2}}],["relaxed",{"2":{"562":1,"1608":1,"1609":1,"2719":2}}],["relax",{"2":{"199":1}}],["relates",{"2":{"2839":1}}],["related",{"2":{"2":1,"16":1,"124":1,"131":1,"163":1,"175":1,"187":1,"188":1,"191":2,"199":1,"236":1,"265":2,"279":1,"338":3,"397":1,"454":1,"635":1,"666":1,"1337":1,"1373":1,"1421":1,"1422":1,"2303":1,"2445":1,"2496":1,"2584":1,"2633":1,"2664":1,"2710":1,"2721":3,"2750":2,"2755":1,"2882":1}}],["relation",{"2":{"2862":1}}],["relating",{"2":{"215":1,"616":1}}],["relatively",{"2":{"279":1,"362":1,"1522":1,"1634":1,"2498":1,"2631":1}}],["relatives",{"2":{"157":1}}],["relative",{"0":{"2009":1},"2":{"149":1,"176":1,"308":1,"1481":1,"1532":1,"1628":1,"1639":1,"2006":2,"2495":1,"2576":1,"2588":1,"2622":1,"2768":1}}],["reloading",{"2":{"459":1}}],["reload",{"0":{"1899":1,"2143":1},"2":{"149":1,"458":1,"1313":2,"1899":1,"2143":1,"2199":2}}],["relocalize",{"2":{"114":1}}],["relocations",{"2":{"238":1}}],["relocating",{"0":{"43":1},"2":{"236":1}}],["relocate",{"2":{"113":1,"114":2,"133":3,"134":3,"149":2,"188":1,"191":1,"199":1,"211":1,"222":1,"236":1,"277":5,"294":1,"317":2}}],["relocated",{"0":{"41":1,"54":1},"1":{"42":1,"43":1,"55":1,"56":1,"57":1,"58":1},"2":{"213":1}}],["releasing",{"2":{"562":1,"769":1,"1512":1,"1612":1,"1756":1,"1933":1,"2219":1,"2605":1,"2643":2,"2721":1,"2835":1,"2908":1,"2914":1,"2917":3}}],["releases",{"0":{"1611":1},"2":{"717":1,"1425":1,"1452":2,"1611":1,"2309":1,"2421":1,"2750":2,"2755":1,"2816":1}}],["released",{"2":{"43":1,"57":1,"320":1,"628":1,"1450":4,"1451":2,"1456":1,"1492":2,"1611":1,"1612":1,"1684":2,"1732":1,"1752":1,"1754":1,"1917":1,"1933":1,"1990":1,"2023":1,"2025":1,"2294":1,"2302":3,"2303":1,"2312":2,"2462":1,"2643":5,"2814":1,"2815":1,"2827":1,"2867":1,"2902":3,"2903":1,"2907":1,"2908":2,"2910":1,"2914":2,"2919":1,"2932":1}}],["release",{"2":{"23":1,"56":1,"111":1,"191":1,"213":1,"222":1,"238":1,"249":1,"251":1,"266":1,"268":1,"277":1,"279":1,"386":1,"396":1,"561":2,"562":1,"629":2,"769":1,"1201":1,"1350":1,"1359":2,"1374":1,"1378":3,"1392":1,"1413":2,"1451":1,"1452":2,"1459":1,"1511":2,"1512":3,"1523":1,"1588":1,"1610":1,"1611":6,"1674":1,"1755":1,"1756":1,"1761":1,"1782":1,"1928":1,"1966":1,"1970":1,"2030":1,"2252":1,"2293":1,"2302":4,"2324":1,"2338":2,"2339":2,"2567":2,"2590":1,"2594":1,"2614":1,"2621":1,"2908":2,"2909":1,"2910":1}}],["relevant",{"2":{"7":1,"31":1,"132":1,"637":1,"681":1,"1932":1,"2420":1,"2668":1,"2669":4,"2719":1,"2722":1,"2747":1,"2937":1}}],["repairing",{"2":{"2421":1}}],["reparenting",{"2":{"546":1}}],["repurposing",{"2":{"1796":1}}],["repetition",{"2":{"2167":1}}],["repetitively",{"2":{"1491":1}}],["repetitive",{"2":{"1444":1}}],["repeating",{"0":{"2159":1},"2":{"1756":1,"2156":1,"2161":1,"2163":2,"2164":1,"2165":1,"2167":1,"2168":5,"2169":3,"2765":1,"2773":1}}],["repeat",{"0":{"202":1,"1505":1,"1506":1,"1756":1,"2156":1,"2157":1,"2542":1},"1":{"2157":1,"2158":1,"2159":1,"2160":1,"2161":1,"2162":1,"2163":1,"2164":1,"2165":1,"2166":1,"2167":1,"2168":1,"2169":1,"2170":1},"2":{"195":3,"202":6,"211":3,"231":1,"308":1,"387":1,"562":3,"654":2,"684":1,"1492":9,"1756":6,"1933":1,"2156":7,"2157":2,"2158":3,"2159":9,"2160":3,"2161":4,"2162":4,"2164":2,"2167":8,"2168":8,"2169":2,"2170":1,"2191":3,"2542":4,"2910":5}}],["repeatedly",{"2":{"1362":1,"1416":1,"2198":1,"2297":1}}],["repeated",{"0":{"2167":1,"2168":1},"2":{"64":1,"93":1,"191":1,"312":1,"654":2,"685":1,"1406":1,"1756":1,"1955":1,"2163":2,"2164":1,"2166":1,"2167":4,"2168":1,"2169":4,"2170":1,"2570":1,"2773":2,"2910":1}}],["repeats",{"2":{"63":1,"202":1}}],["replays",{"2":{"1655":1}}],["replay",{"0":{"1655":1},"1":{"1656":1,"1657":1,"1658":1},"2":{"1655":5,"2523":2,"2627":1}}],["replacing",{"0":{"27":1},"2":{"565":1,"572":2,"628":1,"1628":1,"2323":1,"2601":1}}],["replacement",{"0":{"623":1,"1740":1,"1741":1,"1742":1,"1743":1},"2":{"172":1,"189":1,"204":1,"240":1,"279":1,"1385":1,"1528":1,"1532":1,"1740":1,"1746":1,"1749":1,"1751":5,"1754":2,"1755":1,"2171":1,"2554":1,"2669":1,"2670":1,"2671":1,"2681":1,"2699":1}}],["replacements",{"2":{"172":1,"2888":1}}],["replaced",{"2":{"7":1,"8":1,"27":1,"169":1,"184":1,"195":3,"254":1,"552":1,"684":1,"1378":1,"1395":1,"1441":1,"2019":1,"2427":1,"2721":1,"2896":1}}],["replace",{"2":{"5":1,"7":1,"31":4,"34":1,"50":1,"172":1,"176":1,"191":1,"199":2,"211":1,"240":4,"266":1,"387":1,"567":1,"620":1,"1329":1,"1375":1,"1416":2,"1438":1,"1443":2,"1450":1,"1528":2,"1532":1,"1585":2,"1628":1,"1666":1,"1736":1,"2020":1,"2249":4,"2411":2,"2600":1,"2601":1,"2901":2}}],["replicated",{"2":{"2568":1}}],["replicate",{"2":{"2181":1}}],["replicates",{"2":{"1621":1,"1661":1}}],["replied",{"2":{"408":1}}],["replugging",{"2":{"1484":1}}],["replug",{"2":{"683":1,"1345":1}}],["reply",{"2":{"380":1}}],["reproducing",{"2":{"1471":1,"2568":1}}],["reproduce",{"2":{"263":1}}],["reprimanded",{"2":{"619":1}}],["repress",{"0":{"1612":1},"2":{"285":1,"1612":4}}],["representing",{"0":{"1595":1,"1764":1},"2":{"1507":1,"1508":1,"1509":1,"1521":1,"2021":4,"2466":1,"2552":1,"2839":1}}],["represented",{"2":{"763":1,"1769":1,"2750":1,"2862":1}}],["represents",{"2":{"262":1,"595":1,"1517":1,"1533":1,"1840":5,"2021":1,"2060":5,"2165":1,"2288":1,"2293":1,"2410":1,"2459":2,"2627":1,"2788":1,"2813":1,"2833":1,"2942":1}}],["representation",{"2":{"199":1,"576":1,"1375":1,"1378":1,"2438":1,"2789":1,"2844":1,"2929":1}}],["represent",{"2":{"160":1,"493":1,"1519":1,"1595":1,"1764":1,"2021":1,"2459":2,"2496":1,"2627":1,"2729":1,"2788":1}}],["rep",{"2":{"202":1,"211":1,"2157":1,"2158":1,"2542":1}}],["reposition",{"2":{"1805":1}}],["repositories",{"2":{"26":1,"1427":2,"2719":1}}],["repository",{"0":{"2585":1,"2596":1},"2":{"21":1,"126":1,"163":1,"182":2,"224":1,"228":3,"233":1,"241":1,"253":1,"265":4,"268":3,"270":1,"275":1,"281":1,"288":2,"308":1,"393":1,"403":1,"405":2,"408":1,"456":1,"574":1,"586":3,"590":1,"592":1,"611":5,"1340":1,"1434":1,"1628":3,"2400":1,"2443":1,"2494":1,"2583":3,"2585":2,"2587":4,"2588":1,"2590":2,"2591":2,"2592":1,"2596":1,"2600":1,"2602":1,"2603":1,"2619":1,"2625":1,"2628":1,"2630":5,"2632":3,"2655":1,"2667":3,"2710":1,"2719":1,"2720":1,"2721":4,"2724":1,"2895":2,"2896":2}}],["reported",{"2":{"1373":1,"1407":1,"1516":1,"1768":1,"2294":1,"2501":1,"2710":1,"2942":1}}],["reporting",{"2":{"312":1,"562":1,"1407":1,"1988":2,"2826":1}}],["reports",{"0":{"2021":1},"1":{"2022":1,"2023":1,"2024":1,"2025":1,"2026":1,"2027":1,"2028":1},"2":{"149":1,"175":2,"176":2,"222":1,"285":1,"562":2,"606":1,"644":1,"684":1,"1994":1,"2006":2,"2012":1,"2016":3,"2017":3,"2019":1,"2020":2,"2021":2,"2025":1,"2028":1,"2050":4,"2284":1,"2822":1,"2875":3}}],["report",{"0":{"1975":1,"1977":2},"1":{"1976":1,"1978":2},"2":{"50":4,"74":1,"114":2,"160":3,"190":1,"191":6,"199":3,"211":1,"236":3,"285":2,"308":1,"317":1,"333":1,"361":1,"433":1,"562":1,"1353":2,"1359":2,"1375":2,"1514":1,"1515":2,"1642":1,"1646":1,"1647":1,"1648":1,"1649":1,"1650":1,"1651":1,"1652":1,"1653":1,"1736":1,"1754":3,"1755":3,"1778":1,"1779":1,"1781":1,"1795":1,"1954":2,"1955":1,"1962":1,"1967":1,"1969":1,"1974":1,"1975":1,"1977":1,"1978":1,"1995":2,"2014":15,"2015":5,"2016":5,"2017":1,"2018":2,"2019":18,"2020":18,"2021":16,"2023":5,"2024":11,"2025":12,"2026":1,"2027":10,"2028":13,"2045":4,"2046":4,"2050":2,"2051":1,"2052":13,"2054":1,"2056":1,"2265":1,"2474":1,"2518":2,"2833":1}}],["repo",{"0":{"6":1},"2":{"6":1,"22":1,"77":1,"283":1,"288":1,"423":1,"427":1,"446":1,"447":1,"596":1,"613":1,"1427":1,"1479":1,"1628":2,"2254":1,"2266":1,"2384":1,"2443":1,"2627":2,"2632":6,"2633":1,"2721":1}}],["q=is",{"2":{"2721":1}}],["ql",{"2":{"2312":14}}],["qn",{"2":{"421":3,"422":3,"423":2,"424":2}}],["qr",{"2":{"328":1}}],["qc60",{"2":{"253":2}}],["q9",{"2":{"249":1}}],["q8",{"2":{"249":1}}],["q7",{"2":{"249":1}}],["q4z",{"2":{"241":2}}],["q4",{"2":{"226":2,"236":1}}],["q0",{"2":{"211":2,"226":4,"236":1}}],["qol",{"2":{"211":1}}],["q5",{"2":{"191":1,"249":1}}],["q6",{"2":{"191":1}}],["q3",{"2":{"191":1,"236":1}}],["qff",{"0":{"2773":1},"2":{"191":1,"266":1,"465":1,"466":1,"2748":6,"2750":6,"2758":2,"2760":8,"2761":12,"2762":2,"2763":1,"2764":1,"2773":1}}],["qgfimagefile",{"2":{"249":1}}],["qgf",{"0":{"2773":1},"2":{"191":1,"266":1,"464":1,"2748":4,"2750":6,"2759":1,"2760":4,"2761":2,"2762":1,"2763":1,"2764":1,"2765":2,"2766":5,"2767":10,"2768":3,"2769":7,"2770":3,"2771":6,"2772":3,"2773":1}}],["q2m3ueu",{"2":{"674":1}}],["q2",{"2":{"176":1,"236":1}}],["qp",{"2":{"160":1,"176":1,"191":2,"199":1,"211":1,"222":1,"236":4,"249":2,"285":1,"328":1,"2749":33,"2750":104,"2754":6,"2755":2,"2757":1}}],["qpocket",{"2":{"149":2}}],["qpockets",{"2":{"143":4}}],["q",{"2":{"149":1,"191":1,"266":1,"277":2,"369":1,"437":1,"460":1,"587":2,"1599":1,"1616":1,"2310":1,"2503":3,"2515":3,"2547":1,"2553":1,"2667":1,"2880":3}}],["qaz",{"2":{"143":2}}],["qk100",{"2":{"266":1}}],["qk21",{"2":{"236":1}}],["qk",{"0":{"156":1,"167":1,"327":1},"2":{"120":8,"156":2,"167":2,"176":3,"188":4,"189":1,"191":8,"194":2,"199":5,"202":6,"231":26,"266":1,"277":1,"285":1,"307":1,"324":1,"325":2,"369":1,"373":3,"561":1,"587":2,"591":1,"649":2,"683":1,"1345":1,"1362":1,"1425":1,"1445":4,"1479":4,"1480":1,"1483":2,"1484":4,"1487":6,"1489":15,"1515":6,"1524":3,"1527":22,"1549":7,"1588":1,"1600":3,"1606":8,"1655":5,"1666":1,"1667":2,"1668":2,"1674":13,"1732":1,"1733":1,"1734":1,"1750":3,"1760":2,"1765":1,"1772":32,"1800":1,"1807":1,"1808":2,"1842":11,"1919":144,"1927":19,"1960":32,"2062":15,"2157":4,"2158":4,"2175":4,"2181":11,"2191":2,"2246":9,"2250":7,"2290":3,"2293":2,"2297":7,"2309":2,"2312":2,"2314":2,"2325":8,"2370":15,"2374":16,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2513":35,"2516":7,"2517":15,"2518":6,"2519":3,"2520":7,"2521":15,"2522":1,"2523":5,"2524":2,"2525":32,"2526":1,"2527":2,"2529":1,"2530":11,"2531":35,"2532":144,"2533":19,"2536":3,"2537":11,"2538":15,"2540":3,"2541":32,"2542":4,"2543":7,"2544":7,"2545":8,"2644":3,"2669":1,"2720":1,"2745":8,"2781":2,"2782":2,"2900":10,"2901":3}}],["q11",{"2":{"249":1}}],["q1v1",{"2":{"226":4,"236":1,"266":1}}],["q1",{"2":{"114":1,"191":1,"226":4}}],["qw",{"2":{"1599":4,"1616":1}}],["qwertz",{"0":{"2831":1}}],["qwertlekeys",{"2":{"211":1}}],["qwertykeys",{"2":{"2567":1}}],["qwertyydox",{"2":{"253":2}}],["qwerty",{"0":{"2286":1,"2830":1},"2":{"92":1,"176":2,"257":1,"258":1,"259":2,"629":1,"1413":1,"1416":2,"1419":1,"1420":1,"1446":1,"1453":1,"1479":1,"1613":1,"1614":3,"1616":2,"1939":2,"2161":1,"2277":2,"2285":1,"2286":1,"2295":1,"2465":1,"2466":1,"2467":4,"2548":1,"2552":1,"2780":2,"2880":4,"2911":1}}],["qwiic",{"0":{"128":1},"2":{"74":2,"128":2,"134":6}}],["quokka",{"2":{"249":1}}],["quote",{"2":{"1686":1,"2505":1,"2515":1,"2539":1,"2558":1}}],["quoted",{"2":{"160":1,"669":1}}],["quot",{"0":{"1359":4,"1551":2,"1594":2,"2170":2,"2307":2,"2497":2,"2625":2},"2":{"5":2,"14":2,"75":2,"92":2,"110":8,"114":4,"119":10,"134":4,"152":2,"160":6,"174":2,"175":2,"176":5,"182":4,"187":2,"189":2,"190":2,"191":8,"194":2,"199":6,"201":16,"202":2,"210":2,"211":14,"215":2,"218":2,"222":6,"230":2,"234":2,"236":8,"245":4,"249":10,"263":6,"266":6,"277":2,"289":2,"294":2,"297":2,"307":2,"308":8,"338":6,"369":1,"373":4,"397":2,"406":4,"408":2,"431":2,"486":2,"487":2,"524":2,"529":6,"533":2,"559":6,"562":2,"580":2,"581":2,"587":2,"611":6,"614":2,"631":2,"646":2,"654":2,"655":2,"668":4,"669":2,"677":2,"695":2,"696":2,"711":2,"716":2,"743":2,"750":2,"751":2,"752":2,"753":2,"794":2,"920":4,"1091":4,"1125":4,"1195":4,"1197":2,"1198":4,"1211":2,"1280":2,"1282":4,"1283":8,"1287":2,"1292":4,"1324":8,"1327":4,"1329":2,"1345":2,"1347":4,"1348":2,"1359":2,"1362":2,"1406":2,"1410":4,"1412":2,"1413":4,"1419":4,"1421":2,"1427":2,"1432":2,"1442":4,"1443":4,"1448":66,"1450":2,"1452":14,"1459":2,"1472":2,"1478":2,"1480":6,"1483":2,"1497":2,"1498":1,"1500":1,"1509":1,"1528":2,"1529":2,"1550":4,"1551":2,"1556":2,"1583":2,"1587":4,"1589":2,"1591":8,"1594":6,"1596":2,"1599":2,"1610":2,"1630":4,"1642":2,"1647":2,"1648":2,"1661":4,"1669":2,"1675":6,"1680":2,"1712":2,"1759":2,"1769":2,"1791":2,"1806":2,"1807":6,"1943":2,"1956":2,"1990":2,"2009":4,"2021":2,"2052":6,"2064":2,"2072":2,"2156":4,"2159":6,"2160":2,"2161":4,"2162":14,"2163":2,"2165":4,"2168":2,"2170":2,"2178":2,"2181":2,"2185":12,"2218":2,"2254":2,"2266":2,"2271":2,"2281":2,"2295":2,"2310":2,"2312":5,"2313":14,"2314":12,"2315":8,"2316":18,"2318":4,"2323":6,"2324":2,"2377":2,"2384":2,"2403":10,"2407":2,"2416":2,"2420":2,"2426":6,"2429":8,"2474":2,"2479":2,"2487":2,"2495":2,"2497":2,"2505":2,"2515":2,"2537":2,"2539":1,"2552":8,"2553":5,"2556":2,"2557":6,"2558":1,"2560":6,"2562":3,"2566":2,"2567":2,"2568":4,"2579":2,"2602":6,"2607":4,"2615":4,"2620":2,"2621":2,"2629":2,"2632":4,"2633":2,"2643":4,"2644":4,"2667":14,"2697":2,"2699":2,"2704":2,"2713":4,"2714":2,"2719":6,"2720":2,"2721":15,"2722":2,"2729":2,"2731":2,"2734":2,"2748":2,"2749":2,"2750":4,"2754":2,"2758":2,"2765":4,"2773":2,"2779":2,"2788":6,"2789":142,"2790":2,"2845":16,"2846":4,"2850":2,"2857":2,"2861":4,"2862":24,"2864":10,"2865":18,"2868":2,"2869":4,"2870":6,"2871":12,"2872":2,"2873":6,"2874":2,"2875":10,"2876":4,"2902":8,"2903":4,"2908":18,"2909":8,"2911":2,"2914":4,"2915":16,"2920":2,"2928":2,"2934":4,"2935":2,"2936":2,"2937":1,"2941":4,"2942":2}}],["quirky",{"2":{"2749":1}}],["quit",{"2":{"1425":1}}],["quite",{"2":{"119":1,"427":1,"1340":1,"1517":1,"1736":1,"1951":1,"2248":1,"2310":1,"2375":1,"2880":1,"2934":1,"2936":2,"2942":1}}],["quickly",{"2":{"1684":2,"1930":1,"1933":1,"2185":1,"2310":2,"2376":1,"2379":1,"2381":1,"2382":1,"2384":1,"2420":2,"2421":2,"2492":1,"2568":1,"2656":1,"2899":1}}],["quicker",{"2":{"1497":1,"2421":1,"2719":2}}],["quickest",{"2":{"124":1}}],["quickstart",{"0":{"1309":1}}],["quick",{"0":{"195":1,"2398":1,"2910":1},"1":{"2399":1,"2400":1,"2401":1,"2402":1},"2":{"112":1,"114":1,"195":8,"199":3,"297":1,"308":1,"562":4,"611":1,"1497":1,"2187":1,"2312":1,"2427":1,"2689":1,"2890":1,"2910":13}}],["quad",{"0":{"2310":1},"2":{"2310":1}}],["quadratic",{"2":{"1928":1,"1930":1,"1933":1}}],["quality",{"2":{"716":7,"1340":1,"2569":1,"2895":1}}],["quark",{"2":{"143":2}}],["quarter",{"2":{"133":1,"189":1,"279":1}}],["quackfire",{"2":{"57":2}}],["quantum",{"0":{"153":1,"232":1,"248":1,"254":1,"617":1,"2469":1,"2516":1,"2744":1,"2746":1,"2747":1,"2748":1,"2749":1,"2750":1,"2751":1,"2753":1,"2754":1,"2755":1},"1":{"2470":1,"2471":1,"2472":1,"2473":1,"2474":1,"2745":1,"2747":1,"2748":1,"2749":1,"2750":1,"2752":1,"2753":1,"2754":2,"2755":2,"2756":1,"2757":1},"2":{"1":1,"74":1,"75":2,"94":1,"113":2,"114":7,"133":1,"134":1,"149":3,"153":5,"158":1,"160":3,"176":2,"191":2,"199":7,"203":2,"211":3,"222":9,"231":1,"232":5,"234":2,"236":1,"248":3,"249":1,"266":4,"285":2,"294":2,"317":2,"460":1,"464":1,"465":1,"466":1,"572":1,"625":1,"1332":1,"1342":1,"1411":1,"1413":1,"1441":2,"1443":1,"1479":7,"1480":2,"1483":1,"1487":1,"1526":2,"1527":1,"1638":1,"1844":1,"1923":7,"2014":1,"2015":1,"2066":1,"2183":1,"2303":2,"2405":1,"2411":3,"2470":1,"2516":1,"2552":1,"2579":1,"2655":1,"2721":2,"2744":3,"2746":20,"2747":12,"2748":4,"2749":27,"2750":4,"2751":2,"2752":4,"2754":1,"2758":1,"2765":1,"2780":1,"2781":1,"2813":1,"2818":1,"2880":1,"2921":1,"2927":1,"2928":1,"2933":4,"2937":1}}],["queried",{"2":{"1519":1}}],["queries",{"2":{"312":1}}],["query",{"0":{"2204":1},"2":{"132":1,"134":1,"346":1,"1763":1}}],["queued",{"0":{"580":1},"2":{"263":1,"371":1,"579":1}}],["queue",{"2":{"191":1,"360":1,"371":1,"583":1,"2750":1}}],["ques",{"2":{"134":1,"191":1,"2539":1,"2558":1}}],["questioned",{"2":{"2721":1}}],["questions",{"0":{"1311":1,"1331":1},"1":{"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"411":1,"608":4,"611":1,"616":1,"1311":1,"1318":1,"1339":1,"1341":1}}],["question",{"0":{"608":1},"2":{"48":1,"191":1,"586":1,"608":2,"616":1,"1564":1,"2539":1,"2558":1,"2566":1,"2843":2}}],["quefrency",{"2":{"45":1,"114":1,"317":1,"2271":1}}],["qmkuser",{"2":{"2630":2}}],["qmkurl",{"2":{"1450":4,"2721":1}}],["qmk+vial",{"2":{"2567":1}}],["qmk+current",{"2":{"49":1}}],["qmklayer",{"2":{"1527":2}}],["qmkbest",{"2":{"1450":9,"1527":2,"2721":1}}],["qmk",{"0":{"0":1,"9":1,"19":1,"26":1,"39":1,"51":1,"52":1,"65":1,"66":1,"70":1,"76":1,"78":1,"82":1,"83":1,"95":1,"96":1,"115":1,"135":1,"150":1,"161":1,"164":1,"177":1,"192":1,"200":1,"212":1,"223":1,"237":1,"250":1,"267":1,"278":1,"286":1,"295":1,"302":1,"309":1,"318":1,"329":1,"359":1,"367":1,"374":1,"413":1,"425":1,"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"456":1,"457":1,"458":1,"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1,"469":1,"473":1,"484":1,"505":1,"553":1,"554":1,"574":1,"579":1,"584":1,"585":1,"593":1,"1321":1,"1322":1,"1332":1,"1339":1,"1340":1,"1629":1,"1630":1,"1923":1,"2284":1,"2285":1,"2291":1,"2377":1,"2384":1,"2403":1,"2405":1,"2432":1,"2433":1,"2451":1,"2470":1,"2569":1,"2572":1,"2582":1,"2583":1,"2584":1,"2591":1,"2606":1,"2607":1,"2611":1,"2621":1,"2624":1,"2636":1,"2646":1,"2654":1,"2657":1,"2665":1,"2707":1,"2745":1,"2758":1,"2765":1,"2773":1,"2786":1,"2794":1,"2869":1,"2922":1,"2926":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1,"330":1,"331":1,"332":1,"333":1,"368":1,"369":1,"370":1,"371":1,"372":1,"373":1,"375":1,"376":1,"377":1,"414":1,"415":1,"416":1,"417":1,"418":1,"419":1,"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"506":1,"507":1,"508":1,"509":1,"554":1,"555":1,"556":1,"557":1,"580":1,"581":1,"582":1,"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"600":1,"1630":1,"1631":1,"1632":1,"1633":1,"1634":1,"1635":1,"1636":1,"1637":1,"1638":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2406":1,"2407":1,"2408":1,"2433":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1,"2440":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2449":1,"2450":1,"2573":1,"2574":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1,"2607":1,"2608":1,"2612":1,"2613":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1,"2621":1,"2622":1,"2625":1,"2655":1,"2656":1,"2666":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1,"2759":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1,"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1,"2827":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2842":1,"2927":1,"2928":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"0":3,"1":1,"2":2,"6":1,"9":3,"10":2,"11":1,"12":1,"19":3,"21":4,"23":2,"24":3,"26":1,"38":2,"39":3,"49":2,"50":2,"51":1,"52":3,"65":1,"67":1,"69":2,"70":9,"75":2,"76":1,"82":2,"83":2,"86":2,"87":1,"93":1,"94":2,"95":4,"99":1,"100":1,"102":1,"103":1,"109":1,"110":1,"111":2,"112":3,"113":1,"114":5,"116":4,"118":1,"119":2,"120":3,"122":1,"124":1,"126":1,"128":2,"130":2,"131":2,"132":2,"133":2,"134":5,"143":1,"145":1,"146":1,"152":2,"153":2,"154":1,"156":2,"158":7,"159":1,"160":2,"163":5,"164":4,"166":1,"167":1,"168":1,"169":1,"172":3,"173":9,"174":2,"176":3,"179":1,"181":1,"182":2,"184":1,"189":3,"195":1,"196":1,"197":1,"199":6,"201":3,"202":1,"209":1,"211":10,"213":3,"224":3,"228":4,"230":1,"236":6,"238":1,"240":6,"243":3,"244":1,"249":6,"251":2,"254":1,"262":1,"263":3,"265":5,"266":3,"268":4,"273":3,"275":3,"276":3,"279":3,"284":2,"285":2,"288":3,"294":2,"302":1,"308":3,"312":2,"317":3,"328":3,"331":3,"333":5,"334":1,"335":1,"338":3,"347":1,"348":3,"358":1,"359":1,"360":1,"361":2,"367":2,"369":1,"370":1,"371":1,"373":5,"374":3,"376":1,"387":5,"391":1,"393":5,"397":4,"399":2,"400":2,"401":2,"402":1,"403":3,"405":8,"406":2,"407":1,"408":9,"412":1,"414":3,"415":2,"416":8,"417":7,"418":7,"419":3,"421":4,"422":1,"423":3,"424":4,"427":22,"428":6,"429":3,"430":3,"431":4,"432":7,"433":4,"434":1,"435":5,"436":2,"437":3,"438":2,"439":2,"440":1,"441":1,"442":1,"443":1,"444":2,"445":4,"446":3,"447":3,"448":4,"450":4,"451":4,"452":2,"453":2,"454":7,"456":1,"457":4,"458":1,"459":3,"460":1,"461":4,"462":2,"463":9,"464":1,"467":5,"468":2,"469":1,"470":1,"471":5,"472":3,"473":1,"474":3,"476":1,"477":1,"478":1,"479":1,"480":3,"481":3,"484":1,"485":2,"486":2,"487":8,"488":1,"490":1,"493":2,"494":1,"497":1,"498":1,"500":1,"501":1,"503":1,"504":1,"505":2,"507":3,"508":4,"509":1,"510":3,"513":1,"517":1,"521":1,"525":5,"550":3,"551":1,"552":2,"553":4,"554":1,"556":1,"568":7,"570":1,"571":2,"573":1,"574":3,"576":4,"577":3,"578":4,"579":5,"580":1,"583":3,"584":3,"585":1,"586":6,"587":4,"589":1,"590":1,"591":1,"592":3,"593":1,"594":1,"596":1,"598":3,"602":2,"606":1,"607":1,"608":3,"609":2,"611":3,"613":2,"614":3,"615":2,"616":1,"617":5,"618":2,"620":1,"624":3,"625":1,"627":1,"628":3,"629":1,"637":2,"642":1,"644":2,"645":1,"653":1,"662":2,"663":6,"664":3,"666":1,"670":2,"671":3,"672":1,"674":3,"675":2,"681":1,"682":2,"683":1,"686":4,"687":1,"693":1,"713":1,"746":1,"747":1,"750":1,"751":1,"752":2,"753":1,"756":1,"757":1,"761":1,"1206":1,"1210":1,"1242":1,"1263":1,"1285":1,"1308":2,"1309":1,"1310":1,"1311":1,"1315":4,"1316":1,"1321":1,"1322":1,"1325":1,"1330":1,"1332":2,"1333":1,"1339":2,"1340":7,"1345":1,"1346":1,"1348":1,"1353":2,"1361":2,"1366":1,"1377":2,"1378":1,"1388":1,"1396":1,"1400":1,"1401":1,"1404":1,"1406":1,"1408":1,"1413":1,"1415":1,"1417":1,"1419":1,"1421":1,"1425":1,"1427":1,"1432":1,"1434":2,"1435":1,"1440":1,"1441":1,"1443":2,"1444":1,"1445":1,"1448":1,"1450":6,"1522":1,"1526":1,"1547":1,"1587":1,"1603":1,"1618":2,"1619":1,"1626":2,"1627":7,"1628":1,"1630":2,"1632":1,"1633":2,"1634":1,"1638":1,"1655":1,"1661":1,"1664":1,"1696":2,"1735":1,"1790":1,"1801":1,"1844":1,"1913":1,"1918":1,"1923":1,"1940":3,"1956":1,"1958":1,"1996":1,"2029":1,"2047":1,"2066":1,"2178":2,"2180":1,"2194":1,"2212":1,"2242":1,"2254":3,"2262":1,"2265":2,"2266":6,"2270":1,"2274":1,"2278":3,"2285":2,"2286":1,"2287":3,"2290":1,"2294":1,"2310":1,"2324":1,"2367":1,"2368":1,"2375":4,"2376":4,"2377":7,"2379":2,"2381":2,"2382":2,"2383":2,"2384":11,"2385":1,"2386":2,"2388":2,"2389":2,"2390":4,"2391":1,"2393":2,"2395":2,"2397":3,"2398":1,"2400":5,"2402":1,"2403":8,"2404":1,"2405":2,"2407":3,"2408":1,"2411":1,"2414":2,"2417":1,"2419":1,"2425":7,"2426":2,"2427":1,"2428":1,"2432":1,"2433":3,"2435":4,"2436":1,"2438":2,"2444":1,"2447":1,"2450":1,"2451":1,"2459":1,"2470":5,"2471":1,"2472":1,"2473":1,"2474":1,"2475":1,"2489":2,"2490":1,"2494":1,"2495":1,"2496":1,"2497":5,"2501":1,"2514":1,"2516":2,"2546":1,"2547":1,"2551":1,"2552":2,"2559":1,"2560":1,"2566":6,"2567":36,"2568":15,"2569":7,"2570":6,"2571":1,"2572":4,"2574":1,"2576":5,"2577":3,"2579":2,"2580":1,"2582":6,"2583":7,"2584":3,"2585":3,"2586":4,"2587":8,"2588":4,"2589":1,"2591":2,"2592":1,"2594":2,"2596":2,"2598":8,"2599":2,"2600":9,"2601":6,"2602":3,"2603":2,"2605":2,"2606":2,"2607":4,"2608":2,"2609":2,"2610":2,"2612":1,"2613":4,"2614":1,"2616":2,"2618":2,"2619":4,"2620":4,"2621":8,"2622":4,"2625":4,"2627":3,"2628":4,"2630":19,"2631":1,"2632":14,"2635":1,"2636":2,"2646":1,"2648":1,"2652":1,"2655":2,"2657":1,"2658":1,"2660":1,"2662":3,"2664":2,"2665":1,"2666":2,"2667":10,"2668":4,"2669":1,"2684":1,"2687":1,"2689":1,"2693":1,"2694":1,"2700":5,"2702":3,"2703":2,"2705":2,"2706":2,"2707":11,"2718":2,"2719":4,"2720":2,"2721":18,"2722":3,"2723":2,"2724":1,"2726":2,"2741":1,"2742":1,"2743":1,"2744":1,"2745":2,"2746":1,"2748":20,"2749":1,"2750":3,"2757":2,"2758":1,"2765":1,"2769":1,"2770":1,"2774":1,"2786":1,"2787":5,"2788":3,"2792":2,"2802":1,"2810":2,"2812":1,"2829":1,"2839":1,"2840":1,"2844":5,"2845":2,"2847":1,"2857":1,"2862":3,"2869":1,"2877":1,"2878":1,"2881":1,"2889":1,"2891":1,"2895":8,"2896":3,"2922":2,"2923":1,"2924":1,"2925":2,"2926":1,"2927":3,"2928":1,"2930":3,"2932":1,"2933":1,"2936":1,"2941":1}}],["fwlink",{"2":{"2667":1}}],["fknraiden",{"2":{"2418":1}}],["fkeys",{"2":{"1619":1}}],["fps",{"2":{"1933":5}}],["fpc",{"2":{"1395":1}}],["f♯",{"2":{"1919":6,"2532":6}}],["fb",{"2":{"1678":3,"1679":3}}],["fdbk",{"2":{"1674":1}}],["f+g",{"2":{"1612":1}}],["f9²",{"2":{"692":1}}],["f9¹",{"2":{"692":1}}],["f9",{"2":{"369":1,"587":2,"2504":2,"2515":2,"2554":1}}],["f8²",{"2":{"692":1}}],["f8¹",{"2":{"692":1}}],["f8",{"2":{"369":1,"587":2,"2504":2,"2515":2,"2554":1}}],["f24",{"2":{"2504":2,"2515":2}}],["f23",{"2":{"1451":2,"2504":2,"2515":2}}],["f21",{"2":{"1451":2,"2504":2,"2515":2}}],["f22",{"2":{"1451":11,"2504":2,"2515":2}}],["f20",{"2":{"1358":1,"2504":2,"2515":2}}],["f2",{"2":{"369":1,"587":2,"690":1,"692":2,"1919":1,"2504":2,"2515":2,"2532":1,"2547":1,"2554":1}}],["fm",{"2":{"335":1,"370":1,"371":1,"373":4,"427":1,"577":1,"578":1,"579":1,"614":1,"674":2,"1309":1,"1310":1,"1315":1,"1450":1,"2470":1,"2616":1,"2618":1,"2619":1,"2707":3}}],["fme",{"2":{"211":1}}],["fghij",{"2":{"317":1}}],["fg",{"2":{"266":1,"490":5,"492":1,"2750":9}}],["fs5",{"2":{"1919":1,"2532":1}}],["fs4",{"2":{"1919":1,"2532":1}}],["fs3",{"2":{"1919":1,"2532":1}}],["fs2",{"2":{"1919":1,"2532":1}}],["fs1",{"2":{"1919":1,"2532":1}}],["fssl",{"2":{"1315":1,"2616":1,"2618":1,"2619":1}}],["fs",{"2":{"249":1,"1919":1,"2532":1}}],["fc980c",{"2":{"236":1}}],["fc660c",{"2":{"236":1}}],["fxtwink",{"2":{"317":1}}],["fx",{"2":{"211":1}}],["fjlabs",{"2":{"211":6,"222":1}}],["ffff",{"2":{"2233":1}}],["ffffffff",{"2":{"2231":1}}],["ff",{"2":{"197":6,"403":3,"405":3,"422":1,"423":1,"2235":1,"2495":1}}],["ffkeebs",{"2":{"134":1}}],["f3²",{"2":{"692":1}}],["f3",{"2":{"191":1,"369":1,"587":2,"690":1,"692":3,"1919":1,"2501":1,"2504":2,"2515":2,"2532":1,"2547":1,"2554":1}}],["f303",{"2":{"49":1,"50":1,"199":1,"2393":1}}],["f5²",{"2":{"692":1}}],["f5f9b992",{"2":{"371":1}}],["f5",{"2":{"111":1,"369":1,"559":2,"568":1,"587":2,"690":2,"1552":1,"1919":1,"2271":1,"2504":2,"2515":2,"2532":1,"2554":1,"2684":1,"2713":1}}],["f4²",{"2":{"692":1}}],["f4xx",{"2":{"176":1}}],["f4x1",{"2":{"160":1,"176":1,"211":1,"285":1,"2672":1}}],["f466",{"2":{"176":1}}],["f401",{"2":{"253":1,"2393":1,"2672":1}}],["f401xe",{"2":{"131":1,"134":1}}],["f405",{"2":{"130":1,"134":1,"308":1}}],["f4",{"2":{"111":1,"131":1,"134":1,"191":1,"285":1,"369":1,"559":2,"568":1,"587":2,"690":2,"692":2,"1919":1,"2271":1,"2504":2,"2515":2,"2532":1,"2554":1,"2684":1}}],["f411",{"2":{"93":1,"2393":2,"2672":2,"2846":1,"2888":1}}],["f072",{"2":{"1296":2}}],["f0",{"2":{"111":1,"559":2,"568":1,"690":2,"692":3,"2271":1,"2501":1,"2713":1}}],["f7²",{"2":{"692":1}}],["f7¹",{"2":{"692":1}}],["f7",{"2":{"111":1,"369":1,"559":2,"568":1,"587":2,"690":2,"1365":1,"2271":1,"2504":2,"2515":2,"2554":1,"2684":1,"2713":1}}],["f6²",{"2":{"692":1}}],["f6¹",{"2":{"692":1}}],["f6",{"2":{"111":1,"369":1,"559":2,"568":1,"587":2,"690":2,"692":1,"695":1,"2271":1,"2504":2,"2515":2,"2554":1,"2684":1,"2713":1}}],["f19",{"2":{"2504":2,"2515":2}}],["f17",{"2":{"2504":2,"2515":2}}],["f16",{"2":{"2504":2,"2515":2}}],["f15",{"2":{"2504":2,"2515":3}}],["f14",{"2":{"2504":2,"2515":2}}],["f14629ed1cd7c7ec9089604d64f29a99981558e8",{"2":{"586":2}}],["f1xx",{"2":{"2501":2}}],["f18",{"2":{"1758":1,"2504":2,"2515":2,"2917":1}}],["f12",{"2":{"369":1,"587":2,"2504":2,"2515":2,"2548":1,"2554":1}}],["f11",{"2":{"369":1,"587":2,"2504":2,"2515":2,"2554":1}}],["f10²",{"2":{"692":1}}],["f10¹",{"2":{"692":1}}],["f10",{"2":{"369":1,"587":2,"692":2,"2504":2,"2515":2,"2554":1}}],["f103",{"2":{"291":1,"718":1,"2395":1}}],["f103c6",{"2":{"211":1}}],["f103xb",{"2":{"114":1}}],["f13",{"2":{"211":1,"1448":1,"2504":2,"2515":3}}],["f1",{"2":{"111":1,"120":1,"191":1,"369":1,"559":2,"568":1,"587":2,"690":2,"1445":1,"1597":1,"1919":1,"2265":1,"2271":1,"2377":1,"2384":1,"2501":1,"2504":2,"2515":2,"2532":1,"2547":1,"2548":1,"2554":1,"2713":1}}],["f",{"0":{"2504":1},"2":{"111":2,"134":1,"149":1,"191":1,"196":2,"211":1,"266":2,"328":1,"369":1,"391":1,"431":6,"434":1,"435":1,"441":1,"461":5,"559":1,"571":3,"587":2,"764":1,"1532":3,"1591":1,"1612":3,"1665":1,"1679":1,"1801":2,"1919":19,"2052":2,"2159":1,"2231":1,"2233":1,"2235":1,"2237":2,"2289":1,"2294":1,"2501":2,"2503":3,"2515":3,"2532":19,"2553":3,"2748":8,"2880":3,"2913":1}}],["fantastic",{"2":{"2898":1}}],["fan",{"2":{"2414":1}}],["fancy",{"2":{"546":1,"1435":2}}],["faith",{"2":{"2721":1}}],["fair",{"2":{"2566":1}}],["fairly",{"2":{"1455":1,"1531":1,"1533":1,"2416":1,"2476":1}}],["fails",{"2":{"1807":1,"2410":1,"2734":2}}],["failed",{"2":{"371":1,"453":1,"1204":1,"1206":1,"2268":1,"2270":1,"2433":1,"2627":3}}],["failing",{"2":{"190":1,"191":1,"266":1,"613":1,"1362":1,"2433":1}}],["failures",{"2":{"134":1,"149":3,"191":1,"198":1,"199":3,"236":1,"317":1,"453":1,"613":1,"717":1,"2270":1}}],["failure",{"2":{"92":1,"149":1,"222":1,"236":3,"263":1,"277":1,"333":1,"655":2}}],["fail",{"0":{"2732":1},"2":{"88":2,"104":2,"126":1,"127":2,"170":1,"206":1,"387":1,"658":1,"683":1,"1526":1,"1807":2,"2599":1,"2600":1}}],["faqs",{"2":{"608":1}}],["faq",{"0":{"1318":1,"1341":1,"1360":1,"2401":1},"1":{"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1328":1,"1329":1,"1330":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1352":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1368":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"2402":1},"2":{"572":1,"1334":1,"2483":1,"2555":1,"2610":1,"2926":1}}],["famous",{"2":{"485":1,"2063":1}}],["familiarity",{"2":{"2591":1,"2926":1}}],["familiarize",{"2":{"550":1}}],["familiar",{"2":{"537":1,"609":1,"612":1,"1312":1,"2403":1,"2404":2,"2573":1,"2593":1,"2626":1,"2628":1,"2862":1,"2925":1}}],["families",{"0":{"2702":1,"2703":1},"2":{"49":1,"130":1,"750":1,"754":1,"2700":1,"2702":1}}],["family",{"0":{"2704":1,"2705":1,"2706":1},"2":{"191":1,"277":1,"751":1,"2254":1,"2702":1,"2704":4,"2705":1,"2706":1,"2721":1,"2724":1}}],["facing",{"2":{"559":1,"1993":4,"2421":2,"2459":1,"2788":1}}],["face",{"2":{"277":2,"654":1,"2416":1,"2421":2,"2740":1}}],["factor",{"2":{"1487":3,"2788":1,"2846":1}}],["factory",{"2":{"176":3,"1369":1,"2386":1,"2391":1,"2491":1}}],["fact",{"2":{"45":1,"1316":1,"1339":1,"1353":1,"1413":1,"2178":1}}],["fading",{"2":{"249":1,"1843":1,"2063":2}}],["fader",{"2":{"1917":1}}],["fade",{"2":{"93":1,"1941":3,"1943":4,"2279":3}}],["fades",{"2":{"49":1,"1843":11,"2063":16}}],["fault",{"2":{"191":1}}],["fauxclicky",{"2":{"75":1,"188":1,"191":1,"2721":1}}],["fauxpark",{"2":{"38":1,"182":1}}],["fave",{"2":{"266":1}}],["fave84",{"2":{"199":1}}],["fave84h",{"2":{"191":1}}],["favorite",{"0":{"2578":1},"2":{"2600":1}}],["favorites",{"2":{"2510":2,"2515":2}}],["favor",{"0":{"8":1},"2":{"50":1,"94":1,"503":1}}],["favour",{"2":{"3":1,"15":1,"103":1,"169":1,"184":1,"199":1}}],["fake",{"2":{"191":1,"743":1,"2567":1}}],["fastest",{"2":{"698":1,"1931":1,"1948":1,"2873":1}}],["faster",{"2":{"397":1,"546":1,"2000":1,"2156":1,"2209":2,"2246":1,"2247":1,"2372":1,"2560":1}}],["fast",{"2":{"175":1,"297":3,"308":1,"524":1,"639":1,"1193":1,"1196":1,"1407":1,"1609":1,"1675":1,"1805":2,"1929":1,"1930":1,"2025":1,"2159":1,"2310":2,"2510":3,"2515":2,"2557":1,"2600":1,"2693":1,"2721":1,"2757":1,"2908":1,"2909":1,"2911":2}}],["fashion",{"2":{"169":1,"2568":1,"2942":1}}],["farther",{"2":{"2578":1}}],["farsi",{"2":{"277":1,"2880":2}}],["far",{"2":{"99":1,"188":1,"263":3,"273":1,"397":1,"626":1,"1805":1,"2008":1,"2242":1,"2284":1,"2683":1}}],["falls",{"2":{"1656":1}}],["fall",{"2":{"487":1,"538":1,"1477":1,"2002":1,"2549":1,"2609":1}}],["fallback",{"0":{"209":1},"2":{"211":2,"1497":1,"2941":1}}],["falling",{"2":{"50":1,"1249":2,"1985":1,"2627":1}}],["falsely",{"2":{"1522":2,"1758":2,"2917":2,"2919":1}}],["false",{"0":{"543":1,"1522":1},"2":{"31":2,"90":2,"105":4,"111":5,"125":3,"185":2,"194":4,"195":2,"199":1,"203":1,"249":1,"307":2,"308":2,"520":2,"543":2,"591":6,"622":1,"623":1,"628":1,"629":1,"645":2,"649":2,"650":1,"651":2,"667":3,"698":1,"794":1,"1250":1,"1377":1,"1378":4,"1402":1,"1413":3,"1425":3,"1451":1,"1466":2,"1485":2,"1497":1,"1504":1,"1511":1,"1522":1,"1527":10,"1529":4,"1550":1,"1594":2,"1606":5,"1607":1,"1611":2,"1612":1,"1615":1,"1619":1,"1622":2,"1657":1,"1662":4,"1696":2,"1749":1,"1751":2,"1765":1,"1771":6,"1792":1,"1807":1,"1814":1,"1820":1,"1845":1,"1849":2,"1939":9,"1940":2,"1942":3,"1948":3,"1952":1,"1956":2,"1999":1,"2003":4,"2006":1,"2020":1,"2024":1,"2025":2,"2027":2,"2028":1,"2037":1,"2039":4,"2040":1,"2042":2,"2043":1,"2044":1,"2068":1,"2072":2,"2073":3,"2074":2,"2164":2,"2166":1,"2167":1,"2168":1,"2170":3,"2218":1,"2277":8,"2278":1,"2283":1,"2293":1,"2324":1,"2374":2,"2562":2,"2563":3,"2564":1,"2600":1,"2667":1,"2669":2,"2747":3,"2750":2,"2777":2,"2847":12,"2849":2,"2850":3,"2853":1,"2854":4,"2856":1,"2859":1,"2863":2,"2864":4,"2865":4,"2866":1,"2868":2,"2870":6,"2871":4,"2872":1,"2873":12,"2874":1,"2875":3,"2876":1,"2886":5,"2908":1,"2909":1,"2912":2,"2916":1,"2917":1,"2919":1,"2933":1}}],["flsh",{"2":{"2306":1,"2308":8}}],["flgp",{"2":{"1842":1,"2062":1,"2530":1,"2538":1}}],["flgn",{"2":{"1842":1,"2062":1,"2530":1,"2538":1}}],["fl",{"2":{"1344":1,"2551":2,"2553":3,"2554":2}}],["flick",{"2":{"2016":1}}],["flicker",{"2":{"1556":1}}],["flickering",{"2":{"1298":1}}],["flight",{"2":{"655":1,"2639":1}}],["flipping",{"2":{"2014":1}}],["flipped",{"2":{"160":1,"1659":1,"1942":1,"2191":1,"2264":1,"2280":1,"2386":1,"2391":1}}],["flips",{"2":{"13":1,"31":1,"34":1,"1942":1,"2280":1}}],["flip",{"0":{"13":1},"2":{"13":1,"211":1,"1659":1,"2427":1}}],["flypage",{"2":{"1316":1}}],["flypage=shop",{"2":{"1316":1}}],["fly",{"0":{"2290":1},"2":{"546":1,"572":1,"1346":1,"1474":1,"1482":1,"1600":1,"1655":1,"2047":1,"2290":1,"2801":1,"2901":3}}],["flygone60",{"2":{"241":2}}],["float",{"0":{"1653":2},"1":{"1654":2},"2":{"215":2,"1529":1,"1645":2,"1654":2,"1794":2,"1807":3,"2025":4}}],["floating",{"2":{"215":2,"1294":1}}],["flowing",{"2":{"2063":1}}],["flows",{"2":{"1340":1}}],["flowtap",{"2":{"328":1}}],["flower",{"2":{"236":1,"2063":3,"2887":1}}],["flow",{"0":{"297":1,"2911":1,"2912":1,"2913":1},"1":{"2912":1,"2913":1},"2":{"149":1,"297":4,"308":3,"378":1,"533":1,"617":1,"1263":1,"2063":4,"2291":1,"2420":1,"2421":1,"2887":1,"2911":9,"2912":6,"2913":17}}],["flux",{"2":{"2420":2}}],["flushed",{"2":{"1902":1,"1904":1,"1906":1,"1909":1,"2146":1,"2148":1,"2150":1,"2153":1}}],["flushes",{"2":{"114":1}}],["flush",{"0":{"230":1,"708":1,"1307":1,"1646":1,"1778":1,"1974":1},"2":{"211":1,"236":2,"704":1,"708":1,"741":1,"821":1,"822":1,"848":1,"850":1,"880":1,"882":1,"912":1,"914":1,"947":1,"949":1,"981":1,"983":1,"1015":1,"1017":1,"1049":1,"1051":1,"1083":1,"1085":1,"1117":1,"1119":1,"1151":1,"1153":1,"1185":1,"1187":1,"1238":1,"1240":1,"1303":1,"1307":1,"1642":1,"1647":1,"1648":1,"1649":1,"1650":1,"1651":1,"1652":1,"1653":1,"1779":1,"1781":1,"1846":1,"1949":1,"1967":1,"1969":1,"2069":1,"2195":1,"2747":1,"2749":2,"2750":10,"2864":1,"2871":1}}],["flushing",{"2":{"191":1,"650":1,"651":1,"2747":1}}],["flurry",{"2":{"163":1}}],["flavours",{"2":{"2650":1}}],["flat",{"2":{"1532":1}}],["flatbread60",{"2":{"86":2}}],["flake8",{"2":{"499":1,"504":2}}],["flask",{"2":{"362":1}}],["flasher",{"2":{"2384":1,"2476":1,"2477":1,"2481":1,"2495":2,"2812":1}}],["flashers",{"2":{"428":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":1,"2395":1,"2397":1}}],["flashes",{"2":{"2266":1,"2378":2,"2380":3,"2385":1,"2387":2,"2392":2,"2394":1,"2396":1}}],["flashed",{"0":{"1317":1},"2":{"567":1,"576":1,"673":1,"2189":1,"2266":1,"2291":1,"2367":1,"2375":1,"2380":1,"2397":1,"2425":1,"2427":1,"2475":1,"2483":1,"2495":1,"2569":1,"2894":1}}],["flashable",{"2":{"372":1}}],["flashing",{"0":{"600":1,"1758":1,"2375":1,"2426":1,"2475":1,"2495":1,"2498":1,"2501":1,"2604":1,"2606":1},"1":{"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2476":1,"2477":1,"2478":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":2,"2497":1,"2498":1,"2499":2,"2500":2,"2501":2,"2605":1,"2606":1,"2607":2,"2608":2,"2609":1,"2610":1},"2":{"49":1,"134":2,"191":1,"222":2,"240":3,"428":2,"600":1,"674":1,"686":1,"1313":1,"1315":1,"1317":1,"1334":1,"1443":1,"1675":1,"2266":1,"2367":1,"2375":2,"2376":1,"2377":1,"2379":1,"2380":1,"2381":2,"2382":1,"2383":1,"2384":3,"2386":1,"2388":1,"2389":1,"2390":2,"2391":1,"2393":2,"2395":2,"2397":2,"2400":3,"2410":1,"2427":1,"2476":1,"2477":1,"2479":1,"2481":1,"2487":1,"2489":2,"2490":1,"2497":1,"2516":1,"2567":1,"2573":1,"2580":1,"2581":1,"2605":2,"2606":1,"2609":1,"2622":1,"2645":1,"2675":1,"2680":1,"2745":1,"2828":1,"2837":1,"2845":1}}],["flash",{"0":{"164":1,"428":1,"751":1,"752":1,"755":1,"756":1,"1334":1,"1345":1,"2402":1,"2581":1,"2608":1,"2609":1},"1":{"756":1},"2":{"49":3,"107":1,"113":1,"114":5,"124":1,"134":1,"149":1,"160":1,"164":3,"174":5,"176":4,"199":2,"222":1,"236":1,"240":1,"277":1,"294":1,"317":2,"333":1,"408":1,"428":6,"433":1,"510":1,"512":1,"566":2,"579":1,"649":1,"674":1,"682":1,"683":1,"716":1,"717":1,"743":3,"749":1,"750":6,"751":12,"752":9,"753":6,"754":5,"755":3,"756":15,"1312":2,"1317":1,"1345":2,"1362":2,"1385":2,"1443":8,"1617":1,"1658":1,"1845":1,"2006":1,"2068":1,"2184":1,"2189":1,"2266":7,"2267":2,"2308":2,"2375":3,"2376":3,"2379":3,"2380":1,"2381":2,"2382":2,"2383":1,"2384":1,"2386":1,"2387":4,"2388":1,"2389":1,"2390":2,"2391":1,"2393":2,"2395":2,"2397":2,"2400":3,"2403":1,"2410":3,"2411":1,"2426":1,"2475":4,"2483":1,"2495":8,"2496":1,"2497":1,"2501":18,"2516":1,"2590":1,"2602":1,"2604":1,"2605":1,"2606":3,"2608":4,"2609":8,"2667":2,"2676":1,"2682":1,"2684":1,"2698":10,"2704":1,"2721":3,"2745":1,"2747":1,"2750":2,"2751":1,"2857":4,"2869":1,"2881":1,"2894":1,"2901":1,"2923":1}}],["flagged",{"0":{"408":1},"1":{"409":1,"410":1,"411":1,"412":1},"2":{"199":1,"201":1,"338":3,"397":1,"408":1,"412":1,"2073":1,"2268":1}}],["flag",{"2":{"176":1,"191":1,"249":1,"302":1,"307":1,"427":1,"458":1,"459":1,"461":1,"468":1,"487":1,"562":3,"685":1,"751":1,"1403":1,"1606":1,"1723":1,"1724":1,"1726":1,"1751":1,"1840":2,"1841":5,"1842":2,"1846":6,"1893":1,"1894":1,"1895":1,"1896":1,"2031":1,"2060":2,"2061":6,"2062":2,"2069":7,"2073":1,"2074":1,"2131":1,"2132":1,"2133":1,"2134":1,"2177":1,"2191":1,"2266":1,"2530":2,"2538":2,"2721":1,"2760":1,"2765":1,"2864":2,"2871":2}}],["flags",{"0":{"1841":1,"1889":3,"1891":3,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"2061":1,"2127":3,"2129":3,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1},"1":{"1890":3,"1892":3,"1898":1,"2128":3,"2130":3,"2136":1},"2":{"176":1,"191":1,"209":1,"277":1,"327":1,"328":4,"333":1,"505":1,"1392":2,"1841":8,"1842":2,"1846":3,"1889":1,"1890":3,"1891":1,"1892":3,"1897":1,"1898":1,"1947":1,"1948":1,"2061":8,"2062":2,"2069":3,"2073":1,"2074":2,"2127":1,"2128":3,"2129":1,"2130":3,"2135":1,"2136":1,"2283":1,"2530":2,"2538":2,"2565":1,"2684":1,"2760":3,"2769":5,"2864":5,"2871":5}}],["flesh",{"2":{"2923":1}}],["flexible",{"0":{"1747":1},"2":{"546":1,"1197":1,"1202":1,"2688":2,"2697":1}}],["flexibility",{"2":{"6":1,"153":1,"553":1,"687":1,"1792":1,"2253":1,"2322":1,"2901":1,"2913":1}}],["flehrad",{"0":{"43":2},"2":{"43":6,"266":1}}],["frr",{"2":{"2294":1}}],["friction",{"2":{"1933":2,"2016":1}}],["friendly",{"0":{"1747":1},"2":{"434":1,"487":1,"1295":1,"2286":1,"2471":1}}],["friend",{"0":{"2368":1},"2":{"392":1,"2367":3,"2368":4}}],["friends",{"2":{"226":1,"236":1,"2474":1}}],["frustrates",{"2":{"2566":1}}],["frustrating",{"2":{"2310":1}}],["frustration",{"2":{"173":1}}],["fruit",{"2":{"1362":1}}],["frood",{"2":{"2699":1}}],["front",{"2":{"1442":1,"2657":1}}],["frontend",{"0":{"577":1},"2":{"577":1,"743":1}}],["fronzlebop",{"2":{"613":2}}],["frob",{"2":{"549":1}}],["from=",{"2":{"176":1}}],["from",{"0":{"5":1,"24":1,"166":1,"498":1,"684":1,"1367":1,"1899":1,"2051":1,"2143":1,"2609":1},"2":{"3":1,"6":2,"12":1,"15":1,"31":2,"34":1,"49":3,"50":1,"62":1,"63":1,"69":1,"70":1,"73":2,"74":1,"75":2,"76":1,"88":3,"90":1,"92":1,"94":1,"104":3,"113":2,"114":8,"116":1,"119":1,"127":3,"128":1,"132":2,"133":1,"134":10,"149":5,"163":1,"170":2,"172":1,"173":2,"174":1,"176":8,"191":9,"199":13,"201":1,"206":1,"211":8,"222":7,"224":1,"228":3,"230":1,"236":4,"240":1,"249":9,"263":1,"266":19,"272":1,"273":1,"275":1,"276":1,"277":5,"284":2,"285":1,"294":1,"307":1,"308":5,"312":1,"323":2,"333":2,"360":1,"361":1,"364":1,"379":1,"380":1,"383":1,"384":1,"385":1,"387":1,"401":1,"402":1,"403":1,"407":1,"427":3,"432":2,"436":1,"437":1,"445":2,"451":2,"461":1,"467":1,"471":1,"487":3,"494":2,"498":2,"509":1,"520":1,"521":1,"524":3,"525":4,"533":1,"553":1,"559":3,"561":1,"568":3,"576":1,"579":1,"583":1,"586":2,"590":1,"598":1,"613":1,"615":1,"617":2,"626":1,"645":1,"654":1,"663":1,"667":2,"670":1,"676":1,"677":1,"683":1,"685":2,"695":2,"696":4,"701":1,"710":1,"717":1,"719":2,"729":1,"734":1,"750":1,"751":2,"771":1,"773":1,"774":1,"776":1,"777":1,"779":1,"780":1,"783":1,"786":1,"788":1,"789":2,"791":1,"792":2,"794":1,"795":1,"831":1,"858":1,"863":1,"893":1,"923":1,"928":1,"957":1,"962":1,"991":1,"996":1,"1025":1,"1030":1,"1059":1,"1064":1,"1093":1,"1098":1,"1127":1,"1132":1,"1161":1,"1166":1,"1219":1,"1254":1,"1255":1,"1257":1,"1259":1,"1273":1,"1275":1,"1289":1,"1290":1,"1291":1,"1297":1,"1309":1,"1310":1,"1321":1,"1322":1,"1324":1,"1340":3,"1345":2,"1354":1,"1356":1,"1368":1,"1369":1,"1370":1,"1375":1,"1386":1,"1404":1,"1413":1,"1414":1,"1416":2,"1419":3,"1421":1,"1422":1,"1435":1,"1437":1,"1475":1,"1478":1,"1481":1,"1487":1,"1491":1,"1497":1,"1519":1,"1522":1,"1527":2,"1547":1,"1552":1,"1564":1,"1573":1,"1575":1,"1588":1,"1599":1,"1604":1,"1606":1,"1611":1,"1613":4,"1614":7,"1654":2,"1655":1,"1656":1,"1679":1,"1680":1,"1706":1,"1711":1,"1714":1,"1715":1,"1716":1,"1721":1,"1729":1,"1731":1,"1736":1,"1754":2,"1755":1,"1756":2,"1757":1,"1766":1,"1769":1,"1770":2,"1777":1,"1780":1,"1782":1,"1795":2,"1796":1,"1805":1,"1840":1,"1843":4,"1844":1,"1859":1,"1860":1,"1861":1,"1878":1,"1884":1,"1886":1,"1888":1,"1899":1,"1917":2,"1930":2,"1931":1,"1933":1,"1941":2,"1942":1,"1943":2,"1947":1,"1957":1,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"1979":1,"1988":1,"1996":1,"2000":1,"2006":1,"2012":1,"2014":4,"2016":2,"2017":1,"2019":2,"2021":5,"2030":1,"2034":1,"2043":1,"2052":1,"2054":1,"2060":1,"2063":4,"2064":1,"2066":1,"2085":1,"2086":1,"2087":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2138":3,"2140":3,"2143":1,"2156":1,"2160":1,"2170":1,"2173":1,"2184":1,"2185":1,"2191":2,"2199":2,"2206":1,"2208":1,"2232":1,"2234":1,"2236":1,"2238":1,"2239":1,"2245":1,"2252":1,"2253":1,"2257":1,"2258":1,"2268":2,"2270":2,"2271":1,"2273":2,"2279":2,"2280":1,"2281":1,"2287":1,"2291":1,"2296":1,"2303":1,"2308":2,"2312":1,"2313":1,"2317":1,"2324":2,"2360":1,"2377":1,"2384":2,"2387":1,"2390":1,"2393":1,"2395":1,"2397":1,"2400":1,"2403":1,"2409":1,"2410":2,"2411":1,"2416":5,"2420":1,"2421":3,"2422":1,"2423":1,"2424":1,"2425":2,"2427":1,"2432":1,"2435":1,"2449":1,"2459":5,"2460":1,"2463":1,"2483":1,"2492":1,"2494":1,"2495":1,"2496":2,"2499":1,"2501":2,"2549":1,"2552":1,"2554":2,"2566":1,"2567":2,"2569":2,"2570":4,"2571":1,"2576":1,"2577":1,"2578":1,"2582":1,"2599":1,"2600":1,"2602":1,"2606":2,"2608":2,"2615":1,"2621":1,"2627":3,"2630":1,"2631":1,"2632":2,"2633":1,"2636":1,"2639":1,"2650":1,"2651":1,"2656":2,"2660":1,"2662":1,"2664":1,"2665":1,"2667":1,"2675":1,"2680":1,"2683":1,"2687":1,"2694":1,"2695":1,"2698":1,"2699":1,"2712":1,"2713":1,"2714":1,"2719":2,"2721":5,"2723":2,"2727":1,"2735":1,"2746":2,"2749":12,"2750":5,"2778":2,"2783":1,"2787":4,"2788":4,"2790":1,"2812":1,"2825":1,"2838":1,"2848":1,"2850":2,"2862":1,"2863":1,"2864":3,"2870":2,"2871":3,"2873":2,"2875":1,"2879":1,"2882":2,"2895":2,"2897":1,"2899":3,"2901":2,"2914":1,"2915":1,"2924":1,"2926":1,"2927":1,"2930":2,"2931":2,"2932":3,"2937":2,"2940":1}}],["fr",{"2":{"211":1,"2294":3,"2880":4}}],["frl",{"2":{"211":2}}],["français",{"2":{"2797":1}}],["franky36",{"2":{"317":1}}],["fraction",{"2":{"2017":1}}],["fractal",{"2":{"134":2,"176":1,"222":1,"277":1,"2063":4,"2887":1}}],["fram",{"2":{"746":1,"747":1}}],["frames",{"2":{"1933":1,"2748":1,"2765":2,"2768":1}}],["frame",{"0":{"2768":1,"2769":1,"2770":1,"2771":1,"2772":1},"2":{"1283":1,"1859":1,"1861":1,"1902":1,"1904":1,"1906":1,"1909":1,"1933":2,"1948":1,"2085":1,"2087":1,"2146":1,"2148":1,"2150":1,"2153":1,"2750":3,"2758":1,"2760":3,"2763":1,"2764":1,"2765":6,"2767":2,"2768":8,"2769":28,"2770":2,"2771":1,"2772":2}}],["frameworking",{"2":{"160":1}}],["framework",{"2":{"134":1,"359":1,"487":1,"1404":1,"2309":1,"2411":1,"2840":1,"2935":1}}],["framebuffer",{"2":{"93":1,"114":1,"236":1,"2063":1,"2749":3}}],["fragments",{"2":{"262":1}}],["fraanrosi",{"2":{"114":1}}],["fr4boards",{"2":{"67":1,"211":1}}],["fr4",{"2":{"67":1,"72":1}}],["freq",{"2":{"1487":5,"1679":1}}],["frequencies",{"2":{"1487":1}}],["frequency",{"0":{"856":1,"921":1,"955":1,"989":1,"1023":1,"1057":1,"1159":1,"2757":1},"2":{"11":1,"134":1,"160":1,"214":1,"222":2,"236":2,"285":1,"568":1,"747":1,"756":1,"764":1,"854":3,"856":12,"918":3,"921":9,"953":3,"955":9,"987":3,"989":9,"1021":3,"1023":8,"1055":3,"1057":8,"1157":3,"1159":11,"1328":7,"1487":7,"1489":3,"1679":3,"1943":1,"2016":1,"2271":1,"2517":3,"2873":1,"2875":1}}],["frequent",{"2":{"1443":1,"2017":1}}],["frequently",{"0":{"1311":1,"1331":1},"1":{"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"364":1,"1846":1,"2069":1,"2252":1,"2310":2,"2433":1,"2719":1,"2864":1,"2871":1,"2894":1,"2901":1}}],["fresh",{"2":{"361":1,"676":1}}],["french",{"2":{"249":1,"2797":1,"2880":16}}],["freyr",{"2":{"143":2}}],["freeman",{"2":{"2934":1}}],["freebsd",{"2":{"2620":2}}],["freely",{"2":{"1340":1}}],["freezing",{"2":{"717":1}}],["freezes",{"2":{"716":1,"717":1}}],["freeze",{"2":{"716":1,"717":1}}],["freeform",{"2":{"663":1}}],["frees",{"2":{"573":1}}],["free",{"2":{"110":1,"123":1,"124":1,"378":1,"550":1,"1438":2,"1479":1,"1947":1,"2067":1,"2205":1,"2324":1,"2580":1,"2622":1,"2723":1,"2724":1,"2725":2,"2845":2,"2934":1}}],["freedoms",{"2":{"2728":1,"2743":1}}],["freed",{"2":{"45":1,"166":1,"188":1,"191":1}}],["female",{"2":{"2423":1}}],["fe1",{"2":{"1985":1}}],["feather",{"2":{"511":1,"686":1,"2368":2,"2492":1}}],["featuring",{"2":{"236":1}}],["featured",{"2":{"2571":1,"2657":1,"2720":1,"2882":1}}],["featuresobject",{"2":{"2847":1}}],["features",{"0":{"97":1,"117":1,"136":1,"151":1,"162":1,"178":1,"224":1,"238":1,"251":1,"268":1,"279":1,"287":1,"296":1,"319":1,"546":1,"560":1,"561":1,"681":1,"1442":1,"1988":1,"2682":1,"2756":1,"2937":1},"1":{"98":1,"99":1,"100":1,"118":1,"119":1,"120":1,"137":1,"138":1,"152":1,"153":1,"154":1,"163":1,"164":1,"179":1,"288":1,"289":1,"297":1,"298":1,"320":1},"2":{"3":1,"7":1,"15":1,"25":1,"49":1,"94":1,"111":13,"133":4,"134":5,"173":1,"175":1,"176":2,"191":1,"213":1,"236":2,"249":2,"266":12,"268":1,"333":1,"392":1,"408":1,"431":3,"487":1,"510":2,"546":2,"560":1,"569":1,"572":1,"573":3,"590":1,"609":1,"613":1,"616":1,"631":1,"635":1,"638":1,"659":1,"663":1,"681":1,"1340":2,"1346":1,"1379":1,"1389":1,"1390":1,"1402":2,"1412":1,"1415":1,"1435":3,"1436":1,"1442":1,"1479":1,"1547":1,"1585":1,"1606":1,"1630":2,"1917":1,"2006":2,"2269":1,"2287":2,"2290":1,"2301":1,"2376":1,"2377":1,"2384":1,"2408":2,"2428":1,"2440":5,"2444":2,"2445":1,"2472":2,"2548":1,"2569":1,"2579":2,"2664":1,"2688":1,"2707":1,"2715":1,"2721":4,"2722":1,"2744":1,"2756":1,"2774":1,"2810":1,"2818":1,"2829":1,"2847":1,"2882":2,"2883":1,"2894":1,"2895":1,"2896":5,"2897":1,"2899":1,"2924":2,"2925":2,"2936":1,"2938":1}}],["feature",{"0":{"28":1,"572":1,"2893":1},"1":{"2894":1,"2895":1,"2896":1,"2897":1},"2":{"3":1,"15":1,"28":1,"32":1,"46":1,"49":3,"63":1,"70":13,"74":1,"75":1,"87":1,"93":1,"99":3,"103":1,"114":3,"118":1,"126":1,"133":2,"134":5,"149":1,"152":1,"160":3,"172":1,"176":4,"179":2,"186":1,"189":1,"190":2,"191":7,"195":1,"196":1,"199":2,"211":1,"222":2,"224":1,"228":2,"236":1,"248":1,"249":2,"266":1,"285":3,"288":1,"304":1,"306":1,"308":2,"312":2,"315":1,"328":1,"333":1,"408":1,"410":1,"460":1,"519":1,"520":1,"522":1,"549":1,"560":1,"561":1,"572":2,"611":3,"613":1,"616":1,"617":7,"620":1,"666":1,"670":1,"671":1,"676":2,"681":8,"700":1,"711":1,"722":1,"727":1,"762":1,"798":1,"824":1,"853":1,"885":1,"888":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1189":1,"1212":1,"1243":1,"1264":1,"1281":1,"1319":1,"1351":3,"1352":1,"1353":1,"1357":1,"1385":1,"1387":1,"1389":1,"1390":1,"1391":1,"1392":1,"1394":1,"1395":1,"1400":1,"1409":1,"1412":1,"1434":1,"1435":1,"1436":1,"1442":2,"1467":1,"1474":1,"1475":1,"1478":2,"1479":2,"1483":1,"1486":1,"1487":1,"1489":2,"1497":1,"1515":1,"1518":1,"1519":1,"1524":3,"1535":1,"1547":1,"1552":1,"1560":1,"1583":1,"1586":2,"1589":1,"1596":2,"1600":4,"1615":4,"1617":1,"1626":1,"1630":1,"1639":2,"1658":2,"1665":1,"1738":1,"1747":1,"1756":1,"1766":1,"1838":1,"1847":1,"1924":1,"1929":1,"1934":1,"1938":1,"1946":1,"1947":2,"1950":1,"1990":2,"1996":1,"2016":2,"2030":1,"2032":3,"2033":1,"2034":1,"2038":1,"2042":3,"2044":2,"2047":2,"2058":1,"2070":1,"2171":1,"2188":1,"2209":1,"2210":1,"2212":1,"2214":1,"2242":1,"2251":1,"2261":1,"2269":8,"2276":1,"2277":1,"2282":1,"2301":2,"2302":1,"2310":1,"2318":1,"2321":1,"2371":1,"2372":1,"2406":1,"2411":2,"2428":1,"2445":1,"2454":1,"2495":1,"2513":1,"2517":2,"2518":1,"2519":3,"2548":1,"2568":1,"2569":1,"2571":1,"2583":1,"2603":1,"2693":1,"2697":1,"2709":1,"2719":1,"2721":4,"2774":1,"2801":1,"2818":1,"2822":1,"2825":1,"2836":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":2,"2854":2,"2855":1,"2856":2,"2858":1,"2860":1,"2863":1,"2864":1,"2866":2,"2868":2,"2870":1,"2871":1,"2872":2,"2873":2,"2874":2,"2883":1,"2884":2,"2894":1,"2895":3,"2899":1,"2901":3,"2908":1,"2909":1,"2910":1,"2917":1,"2937":2,"2938":1,"2942":2}}],["feat",{"2":{"222":2,"236":2}}],["fedora",{"2":{"191":1,"2594":1,"2619":1}}],["feker",{"2":{"176":1}}],["felix",{"2":{"143":2}}],["few",{"0":{"1737":1},"2":{"131":1,"189":1,"213":1,"222":1,"224":1,"238":1,"360":1,"362":1,"409":1,"548":1,"566":1,"613":1,"681":1,"698":1,"716":1,"750":1,"751":1,"1324":1,"1340":1,"1385":1,"1478":1,"1517":2,"1591":1,"1615":1,"1732":1,"1736":1,"2033":1,"2273":1,"2310":1,"2375":1,"2443":1,"2572":1,"2579":1,"2598":1,"2612":2,"2625":1,"2837":1,"2880":1,"2901":2,"2942":1}}],["fewer",{"2":{"24":1,"45":1,"123":1,"2284":1,"2418":1,"2821":1}}],["fees",{"2":{"2728":1}}],["feed",{"2":{"2788":1}}],["feeding",{"2":{"2422":1}}],["feedback",{"0":{"1671":1,"1672":1,"1677":1,"2321":1},"1":{"1672":1,"1673":1,"1674":1,"1675":1,"1676":1,"1677":1,"1678":2,"1679":2,"1680":1,"1681":1,"1682":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2323":1},"2":{"114":1,"160":1,"188":1,"191":1,"199":1,"228":1,"613":1,"1479":1,"1658":1,"1672":4,"1674":6,"1677":1,"1681":1,"1682":1,"1684":4,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2269":1,"2873":1}}],["feeling",{"2":{"1606":1}}],["feels",{"2":{"119":1}}],["feel",{"2":{"119":1,"320":1,"1421":1,"1479":1,"2000":1,"2067":1,"2069":1,"2205":1,"2324":1,"2579":1,"2899":1,"2901":1,"2919":1}}],["ferris",{"2":{"114":1,"249":1,"294":1}}],["fetch",{"2":{"51":1,"360":1,"405":1,"421":1,"422":1,"423":2,"1941":2,"2279":2,"2627":2,"2630":4,"2632":5}}],["february",{"0":{"66":1,"135":1,"192":1,"237":1,"286":1},"1":{"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1}}],["feb",{"0":{"9":1,"329":1,"1317":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"330":1,"331":1,"332":1,"333":1},"2":{"394":1,"396":1,"407":7}}],["fumes",{"2":{"2422":1}}],["furthest",{"2":{"2416":1}}],["further",{"0":{"2166":1},"2":{"131":1,"134":1,"138":1,"191":1,"199":1,"203":1,"222":1,"306":1,"307":2,"315":1,"408":1,"431":1,"629":1,"698":1,"764":1,"1377":1,"1407":1,"1410":3,"1413":1,"1425":1,"1662":2,"1743":1,"2021":1,"2044":1,"2166":1,"2411":2,"2419":1,"2459":1,"2562":1,"2630":1,"2645":1,"2913":1,"2933":1,"2942":1}}],["fuzz",{"2":{"1680":1}}],["fulfilling",{"2":{"2428":1}}],["fulfill",{"2":{"1375":1}}],["fullremap",{"2":{"1210":2}}],["fullsize",{"2":{"191":1,"211":1,"236":1,"2416":2}}],["full",{"0":{"103":1,"104":1,"114":1,"126":1,"127":1,"134":1,"149":1,"160":1,"176":1,"191":1,"199":1,"211":1,"222":1,"236":1,"249":1,"266":1,"277":1,"285":1,"294":1,"308":1,"317":1,"328":1,"333":1,"623":1,"1196":1,"2940":1},"1":{"104":1,"127":1,"1197":1,"1198":1},"2":{"87":3,"88":2,"93":1,"103":2,"104":2,"107":2,"114":2,"124":1,"126":2,"127":2,"131":1,"134":1,"149":1,"172":1,"173":1,"176":1,"182":1,"189":1,"202":1,"211":1,"234":1,"236":1,"241":2,"245":1,"285":1,"288":1,"298":1,"372":1,"390":1,"429":1,"474":1,"521":1,"623":1,"663":1,"684":1,"1189":1,"1190":1,"1193":1,"1196":2,"1197":1,"1198":3,"1202":1,"1204":1,"1375":1,"1479":1,"1528":1,"1550":1,"1586":1,"1597":1,"1609":1,"1612":1,"1707":1,"1739":1,"1753":1,"1820":1,"1843":4,"1933":1,"2063":15,"2194":1,"2212":1,"2294":1,"2410":1,"2428":1,"2466":1,"2568":1,"2569":2,"2576":1,"2579":1,"2622":1,"2657":1,"2667":1,"2697":2,"2721":3,"2748":3,"2923":1,"2940":1}}],["fully",{"0":{"263":1},"2":{"23":1,"266":1,"1202":1,"1285":1,"1378":1,"2064":1,"2310":1,"2427":1,"2569":1,"2571":1,"2697":1,"2882":1}}],["fuses",{"0":{"2496":1},"2":{"2490":1,"2495":1,"2496":2}}],["fuse",{"2":{"1369":1,"2489":1,"2496":5}}],["funky",{"2":{"1467":1}}],["fundamentals",{"2":{"2415":1}}],["fundamentally",{"2":{"1407":1}}],["fundamental",{"2":{"624":1,"2729":1,"2734":1}}],["func",{"2":{"94":1,"541":2}}],["function96",{"2":{"86":4}}],["functionally",{"2":{"1624":1,"2568":1,"2915":1}}],["functionalities",{"2":{"1610":1}}],["functionality",{"0":{"46":1,"209":1,"1488":1},"2":{"3":1,"7":1,"15":1,"24":1,"30":1,"33":1,"87":1,"93":2,"98":1,"99":2,"114":2,"123":1,"124":1,"126":1,"128":1,"133":1,"134":1,"152":1,"154":1,"164":1,"191":2,"206":1,"209":2,"266":2,"293":1,"305":1,"307":1,"312":2,"314":1,"327":1,"338":3,"374":1,"397":1,"406":4,"562":1,"572":1,"573":2,"587":1,"624":1,"628":1,"643":1,"653":1,"654":2,"718":1,"764":1,"1413":2,"1416":1,"1441":2,"1442":1,"1450":2,"1455":2,"1479":1,"1504":1,"1528":1,"1586":1,"1599":1,"1616":1,"1617":1,"1621":1,"1629":1,"1658":1,"1661":1,"1747":1,"1799":1,"1801":1,"1950":1,"1996":1,"2016":1,"2026":1,"2182":1,"2251":2,"2270":1,"2303":1,"2312":2,"2313":1,"2425":1,"2441":1,"2444":1,"2445":2,"2446":1,"2496":1,"2513":1,"2514":1,"2583":1,"2670":1,"2671":1,"2677":1,"2721":3,"2722":2,"2729":1,"2732":1,"2774":1,"2776":1,"2783":1,"2788":1,"2882":1,"2885":1,"2894":1,"2895":2,"2927":1,"2928":1,"2933":1}}],["functional",{"2":{"28":1,"222":1,"276":1,"284":1,"399":1,"400":1,"401":1,"406":2,"684":1,"754":1,"1434":1,"2569":1,"2729":1,"2734":1,"2735":1}}],["function",{"0":{"140":1,"532":1,"548":1,"630":1,"634":1,"636":1,"637":1,"640":1,"643":1,"648":1,"652":1,"1414":1,"1426":1,"1792":1,"2037":1,"2310":1,"2554":1,"2562":1,"2563":1},"1":{"1793":1,"1794":1},"2":{"22":2,"27":1,"34":1,"46":3,"49":2,"74":1,"90":3,"92":1,"93":2,"114":1,"125":1,"132":1,"133":1,"134":3,"149":4,"158":1,"160":1,"170":1,"176":5,"191":1,"194":1,"195":2,"199":2,"203":1,"222":2,"229":1,"230":2,"236":1,"249":2,"266":1,"273":1,"285":1,"306":1,"308":3,"312":1,"315":1,"328":3,"334":1,"392":1,"431":2,"487":3,"490":1,"524":1,"527":3,"529":2,"530":1,"531":2,"532":2,"540":1,"548":5,"562":2,"625":1,"628":1,"631":2,"637":2,"643":2,"644":2,"645":1,"649":4,"654":2,"655":1,"670":2,"671":2,"693":2,"695":1,"696":3,"703":1,"704":1,"718":4,"720":1,"735":1,"737":1,"760":1,"765":2,"769":4,"773":1,"794":1,"806":1,"809":1,"813":1,"817":1,"819":1,"832":1,"836":1,"840":1,"844":1,"846":1,"864":1,"868":1,"872":1,"876":1,"878":1,"894":1,"900":1,"904":1,"908":1,"910":1,"929":1,"935":1,"939":1,"943":1,"945":1,"963":1,"969":1,"973":1,"977":1,"979":1,"997":1,"1003":1,"1007":1,"1011":1,"1013":1,"1031":1,"1037":1,"1041":1,"1045":1,"1047":1,"1065":1,"1071":1,"1075":1,"1079":1,"1081":1,"1099":1,"1105":1,"1109":1,"1113":1,"1115":1,"1133":1,"1139":1,"1143":1,"1147":1,"1149":1,"1167":1,"1173":1,"1177":1,"1181":1,"1183":1,"1191":1,"1194":1,"1195":1,"1197":1,"1198":1,"1208":1,"1209":1,"1210":3,"1220":1,"1226":1,"1230":1,"1234":1,"1236":1,"1245":3,"1247":1,"1266":4,"1268":1,"1273":1,"1278":1,"1296":2,"1300":1,"1302":1,"1303":1,"1330":2,"1412":1,"1413":4,"1414":1,"1415":1,"1416":1,"1417":1,"1422":3,"1432":1,"1441":3,"1442":1,"1450":2,"1451":2,"1455":1,"1458":1,"1459":1,"1477":1,"1497":1,"1504":1,"1512":1,"1515":2,"1526":4,"1527":1,"1529":1,"1530":1,"1532":1,"1562":1,"1585":2,"1593":1,"1599":1,"1606":1,"1607":1,"1611":2,"1614":3,"1615":1,"1616":3,"1619":1,"1657":1,"1662":4,"1698":1,"1700":1,"1701":1,"1702":1,"1711":1,"1715":1,"1724":1,"1726":1,"1728":1,"1730":1,"1735":1,"1751":3,"1763":1,"1765":1,"1790":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1845":1,"1849":2,"1859":1,"1861":1,"1941":2,"1948":2,"1952":2,"1979":1,"1995":1,"2017":1,"2019":3,"2020":2,"2021":2,"2023":1,"2025":3,"2030":1,"2039":1,"2040":1,"2042":1,"2045":5,"2046":2,"2050":1,"2051":1,"2068":1,"2069":1,"2072":2,"2075":1,"2085":1,"2087":1,"2160":1,"2167":1,"2169":1,"2173":1,"2177":1,"2195":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1,"2207":1,"2221":1,"2225":1,"2227":1,"2247":1,"2248":1,"2266":1,"2270":2,"2279":2,"2283":4,"2293":3,"2294":1,"2299":1,"2302":5,"2303":3,"2310":3,"2311":1,"2312":3,"2313":2,"2316":1,"2323":1,"2337":1,"2338":1,"2339":1,"2373":1,"2374":1,"2442":1,"2446":2,"2518":2,"2548":1,"2551":2,"2552":1,"2553":1,"2554":1,"2560":1,"2562":1,"2563":5,"2564":3,"2583":1,"2644":1,"2669":7,"2670":5,"2671":4,"2688":1,"2734":1,"2745":1,"2749":10,"2750":18,"2754":1,"2755":1,"2776":3,"2778":2,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2886":1,"2899":1,"2901":4,"2908":1,"2909":1,"2910":6,"2915":2,"2917":2,"2921":1,"2927":4,"2929":2,"2933":2,"2941":1}}],["functions",{"0":{"22":1,"243":1,"694":1,"1207":1,"1422":1,"1441":1,"1455":1,"1525":1,"1539":1,"1593":1,"1763":1,"2019":1,"2020":1,"2039":1,"2040":1,"2169":1,"2177":1,"2194":1,"2195":1,"2196":1,"2202":1,"2203":1,"2247":1,"2299":1,"2316":1,"2373":1,"2688":1,"2774":1,"2920":1,"2921":1},"1":{"695":1,"696":1,"1208":1,"1209":1,"1210":1,"1456":1,"1457":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1526":1,"1527":1,"1528":1,"1529":1,"1530":1,"1540":1,"1541":1,"2195":1,"2196":1,"2197":2,"2198":2,"2199":2,"2200":2,"2201":2,"2202":2,"2203":2,"2204":2,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1},"2":{"16":1,"22":1,"31":1,"49":3,"50":1,"62":1,"93":2,"114":2,"125":1,"134":2,"149":2,"160":1,"176":1,"185":1,"190":1,"191":3,"199":4,"203":2,"211":4,"236":2,"240":1,"243":1,"249":2,"266":1,"273":1,"285":2,"294":1,"308":1,"323":2,"331":1,"431":1,"503":1,"522":1,"537":1,"542":1,"548":4,"552":1,"590":1,"622":2,"623":1,"625":3,"628":3,"631":1,"637":2,"641":1,"644":1,"645":2,"646":2,"692":1,"713":1,"718":1,"759":1,"760":2,"761":1,"769":1,"1195":1,"1197":2,"1198":1,"1242":1,"1247":1,"1263":1,"1268":1,"1324":1,"1375":3,"1376":1,"1413":1,"1416":1,"1421":1,"1422":9,"1425":1,"1435":2,"1441":3,"1443":2,"1455":2,"1461":1,"1478":1,"1481":1,"1492":1,"1504":1,"1511":1,"1526":1,"1530":1,"1593":1,"1606":1,"1615":1,"1622":2,"1634":1,"1638":1,"1662":1,"1698":1,"1735":1,"1752":1,"1761":1,"1763":1,"1790":1,"1792":1,"1849":1,"1932":1,"1948":1,"1951":1,"1988":1,"2015":2,"2020":1,"2021":1,"2033":1,"2038":1,"2039":3,"2040":1,"2042":1,"2046":1,"2067":2,"2072":1,"2166":1,"2181":2,"2194":2,"2198":1,"2205":2,"2215":1,"2283":1,"2293":1,"2299":1,"2302":2,"2303":2,"2310":1,"2311":4,"2312":3,"2411":1,"2441":1,"2442":1,"2446":1,"2559":1,"2603":1,"2645":1,"2688":1,"2719":1,"2721":3,"2744":1,"2749":1,"2750":5,"2774":2,"2775":1,"2778":1,"2882":5,"2900":1,"2908":1,"2920":1,"2921":2,"2924":1,"2928":1,"2932":1,"2933":2}}],["fudge",{"2":{"249":1}}],["future",{"0":{"598":1,"2248":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2253":1},"2":{"6":1,"10":1,"110":1,"142":1,"156":1,"160":1,"182":1,"194":1,"198":1,"213":1,"262":2,"303":1,"307":1,"332":1,"334":1,"408":1,"547":1,"595":1,"598":1,"656":1,"657":1,"1263":1,"1404":1,"1407":1,"2447":1,"2569":1,"2570":1,"2571":1,"2721":1,"2722":1,"2723":1,"2895":1}}],["fn+f",{"2":{"1358":1}}],["fno",{"2":{"317":1}}],["fnv",{"2":{"176":1}}],["fn",{"0":{"3":1,"7":1,"15":1,"1353":1},"2":{"3":2,"7":4,"15":2,"16":1,"31":1,"38":1,"49":1,"114":2,"134":1,"589":2,"1344":2,"1353":2,"1441":1,"1736":2,"1749":6,"1939":3,"2190":1,"2277":3,"2289":1,"2294":1,"2302":14,"2303":10,"2307":1,"2308":2,"2309":1,"2310":1,"2311":2,"2312":1,"2553":1}}],["fischl",{"2":{"2485":1}}],["fish",{"2":{"505":1}}],["fifth",{"2":{"1836":1,"2296":1,"2302":1}}],["fifo",{"2":{"191":1}}],["five",{"0":{"1835":1},"1":{"1836":1,"1837":1},"2":{"1799":1,"2289":1,"2293":1,"2302":1,"2643":1,"2757":1,"2787":1,"2872":1}}],["figuring",{"2":{"1317":1}}],["figure",{"2":{"427":1,"731":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1407":1,"1532":2,"2310":1,"2578":1,"2610":1}}],["fiddle",{"2":{"2302":1}}],["fiddling",{"2":{"391":1}}],["fidelity",{"2":{"285":1}}],["fiuxup",{"2":{"249":1}}],["filthier",{"2":{"1522":1}}],["filterpaper",{"2":{"1534":1}}],["filter=ez",{"2":{"1309":1,"1310":1}}],["filtered",{"2":{"431":1}}],["filtering",{"0":{"2165":1},"2":{"431":1,"562":1,"1313":1,"1995":1,"2050":1,"2052":1,"2372":2,"2913":1,"2937":1}}],["filters",{"2":{"236":1,"431":1}}],["filter",{"2":{"199":1,"431":7,"441":1,"1313":1,"1406":1,"1521":2,"2440":1,"2900":2,"2908":1}}],["fills",{"2":{"2291":1,"2572":1}}],["filled",{"2":{"2063":1,"2750":9}}],["fill",{"2":{"427":1,"428":1,"435":1,"438":1,"440":1,"443":1,"603":1,"1486":1,"2052":1,"2291":1,"2713":1,"2750":3}}],["filen",{"2":{"457":1}}],["filenames",{"2":{"457":1,"527":1,"2719":1}}],["filename>",{"2":{"348":1,"461":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2495":1}}],["filename",{"2":{"317":1,"436":1,"437":2,"445":1,"446":1,"447":1,"448":1,"498":2,"527":1,"1362":1,"1633":1,"2495":1,"2501":1,"2607":1}}],["file2",{"2":{"457":1,"2633":1}}],["file1",{"2":{"457":1,"2633":1}}],["file>",{"2":{"434":1}}],["fileformat",{"2":{"199":1}}],["filegen",{"2":{"149":1}}],["file",{"0":{"497":1,"558":1,"569":1,"599":1,"602":1,"2409":1,"2607":1,"2788":1},"1":{"559":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"570":1,"571":1,"572":1,"573":1},"2":{"5":2,"16":1,"25":1,"65":2,"70":1,"73":1,"87":1,"114":2,"120":1,"132":2,"149":2,"164":1,"176":3,"189":1,"191":2,"211":4,"236":2,"249":1,"262":2,"266":1,"293":1,"305":1,"314":1,"328":1,"333":1,"342":1,"347":2,"361":1,"365":1,"370":1,"371":1,"387":1,"388":1,"397":1,"403":1,"406":1,"427":1,"431":1,"434":1,"450":2,"451":2,"456":1,"460":2,"461":3,"464":1,"465":1,"466":1,"487":1,"494":1,"498":3,"507":1,"509":2,"520":4,"521":2,"553":1,"558":2,"569":1,"586":2,"587":1,"590":1,"591":1,"598":4,"602":2,"606":1,"611":1,"616":2,"617":3,"621":4,"622":1,"623":1,"658":1,"664":1,"670":1,"681":1,"683":1,"750":1,"1192":2,"1195":3,"1198":3,"1203":1,"1205":1,"1206":1,"1210":1,"1313":1,"1324":1,"1329":1,"1362":5,"1413":1,"1432":2,"1433":1,"1435":2,"1437":4,"1441":1,"1443":3,"1445":1,"1479":3,"1486":2,"1496":2,"1521":6,"1583":1,"1584":2,"1596":1,"1601":1,"1616":2,"1630":1,"1631":1,"1633":4,"1634":2,"1635":1,"1636":1,"1655":1,"1656":1,"1738":1,"1756":1,"1840":1,"1844":2,"1849":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1939":1,"1940":2,"1943":1,"1951":1,"1952":1,"2029":1,"2060":1,"2066":2,"2072":1,"2188":1,"2191":1,"2264":2,"2265":1,"2266":2,"2267":2,"2268":1,"2269":1,"2277":1,"2281":1,"2294":1,"2302":2,"2305":1,"2310":2,"2375":1,"2376":1,"2377":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2400":2,"2403":1,"2407":7,"2409":1,"2410":13,"2411":9,"2412":3,"2425":1,"2426":2,"2427":1,"2435":5,"2437":1,"2438":3,"2439":5,"2440":5,"2441":5,"2442":5,"2443":1,"2449":3,"2460":1,"2490":1,"2494":1,"2495":3,"2497":5,"2501":2,"2546":1,"2550":2,"2551":1,"2552":2,"2553":1,"2555":1,"2575":1,"2577":6,"2578":3,"2580":2,"2588":1,"2599":2,"2600":7,"2602":2,"2603":3,"2604":1,"2607":5,"2622":2,"2627":13,"2631":1,"2633":1,"2645":1,"2655":1,"2660":1,"2662":3,"2665":2,"2667":7,"2693":1,"2695":2,"2696":1,"2698":1,"2702":1,"2704":1,"2709":2,"2719":1,"2721":4,"2748":10,"2750":2,"2756":1,"2758":1,"2760":6,"2764":1,"2765":2,"2767":6,"2768":3,"2780":1,"2787":4,"2788":2,"2789":3,"2790":1,"2793":2,"2844":2,"2930":1,"2936":1,"2937":6,"2941":1,"2942":1}}],["files>",{"2":{"2627":1}}],["filesystem",{"2":{"2619":1}}],["files",{"0":{"5":1,"1923":1,"2443":1,"2598":1,"2601":1,"2880":1},"2":{"1":1,"32":1,"50":4,"69":1,"73":2,"75":1,"86":1,"92":1,"113":1,"114":5,"118":1,"132":1,"133":1,"134":3,"160":2,"176":2,"191":3,"199":7,"201":2,"211":3,"213":2,"220":1,"224":2,"234":2,"236":4,"238":1,"249":3,"262":1,"266":1,"277":1,"285":2,"294":3,"308":3,"317":1,"333":1,"338":3,"397":1,"427":1,"428":1,"431":1,"437":1,"444":1,"453":2,"456":1,"457":5,"467":1,"505":1,"520":1,"521":1,"552":2,"553":3,"556":1,"558":1,"566":1,"570":4,"572":1,"577":1,"578":1,"579":2,"587":1,"602":1,"611":2,"663":2,"666":2,"667":1,"670":1,"671":2,"1200":1,"1201":1,"1362":1,"1435":3,"1437":1,"1441":1,"1442":1,"1443":3,"1526":1,"1632":1,"1633":1,"1634":1,"1655":1,"1844":1,"2066":1,"2266":3,"2408":2,"2409":1,"2410":4,"2411":2,"2436":1,"2439":1,"2440":2,"2443":2,"2449":1,"2490":1,"2492":1,"2494":1,"2497":1,"2551":1,"2580":1,"2582":2,"2587":1,"2589":1,"2590":1,"2591":1,"2592":2,"2593":1,"2596":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":2,"2612":2,"2626":1,"2627":2,"2630":1,"2633":4,"2655":1,"2662":1,"2663":1,"2669":1,"2670":1,"2671":1,"2687":1,"2702":1,"2707":2,"2719":5,"2720":1,"2721":7,"2728":1,"2746":2,"2788":1,"2820":1,"2844":5,"2877":1,"2878":1,"2937":4}}],["finnish",{"2":{"2880":3}}],["finger",{"2":{"1410":1,"2003":3,"2009":1,"2161":3,"2293":1,"2294":1}}],["fingers",{"2":{"1410":1,"1491":1,"2003":1}}],["fingerprintusbhost",{"2":{"1957":1}}],["fingerprint",{"2":{"199":1}}],["finite",{"2":{"573":1}}],["finishing",{"0":{"2428":1},"2":{"562":1}}],["finishes",{"2":{"387":1,"2302":2,"2303":1,"2927":1}}],["finished",{"0":{"372":1,"582":1},"2":{"324":1,"368":1,"371":1,"372":1,"579":1,"704":1,"737":1,"809":1,"813":1,"817":1,"819":1,"836":1,"840":1,"844":1,"846":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1226":1,"1230":1,"1234":1,"1236":1,"1303":1,"1844":2,"2050":1,"2066":2,"2302":2,"2303":5,"2308":2,"2309":2,"2310":3,"2311":3,"2312":4,"2501":1}}],["finish",{"0":{"2338":1,"2362":1},"2":{"387":1,"1655":2,"1657":1,"1804":1,"1814":1,"2523":1,"2655":1}}],["finalize",{"2":{"2403":1}}],["final",{"0":{"2888":1},"2":{"553":1,"556":1,"579":1,"671":1,"1359":4,"1532":1,"2302":1,"2421":1,"2667":1,"2847":1,"2882":1,"2933":1}}],["finally",{"2":{"163":1,"386":1,"683":1,"1406":1,"1450":1,"2052":1,"2252":1,"2303":1,"2312":1,"2322":1,"2499":1,"2684":1,"2712":1}}],["finer",{"2":{"2245":1,"2515":1}}],["fine40",{"2":{"211":1}}],["fine",{"0":{"1989":1},"2":{"176":1,"1335":1,"1486":1,"1511":1,"1757":1,"1761":1,"1990":1,"2167":1,"2168":1,"2258":1,"2291":1,"2580":1,"2622":1,"2652":1,"2660":1,"2721":2,"2724":1,"2910":1,"2920":1}}],["finder",{"2":{"2393":1,"2395":1,"2397":1,"2607":2}}],["finds",{"2":{"1329":1,"1330":1}}],["finding",{"2":{"614":1}}],["find",{"0":{"431":1,"2843":1},"2":{"31":4,"34":1,"124":1,"211":1,"233":1,"236":2,"240":1,"245":1,"248":1,"249":1,"285":1,"387":1,"391":1,"392":1,"408":3,"412":1,"427":1,"431":4,"487":1,"503":1,"521":1,"548":3,"609":1,"611":1,"614":1,"659":1,"676":1,"684":1,"685":1,"746":1,"1197":1,"1200":1,"1201":1,"1284":1,"1334":1,"1335":1,"1337":1,"1379":1,"1402":1,"1455":1,"1497":2,"1522":1,"1675":1,"1732":1,"1758":1,"2050":1,"2208":1,"2258":1,"2266":1,"2312":1,"2400":1,"2407":2,"2410":1,"2421":1,"2423":1,"2430":1,"2496":1,"2509":2,"2515":2,"2550":1,"2551":2,"2552":1,"2573":1,"2574":1,"2578":3,"2582":1,"2627":2,"2688":1,"2710":1,"2862":1,"2899":1,"2901":2,"2915":1,"2917":1,"2927":1,"2928":1,"2932":1,"2934":1,"2939":1}}],["fields",{"2":{"191":1,"308":1,"323":1,"1630":1,"1642":1,"2656":1,"2758":1,"2765":1}}],["field",{"2":{"149":1,"308":1,"391":1,"406":5,"685":1,"1630":2,"1755":1,"2303":1,"2599":1,"2788":2,"2882":1,"2915":1}}],["fitler",{"2":{"1521":2,"1532":2}}],["fits",{"2":{"1486":1,"2322":1}}],["fitness",{"2":{"1438":1,"2725":1}}],["fit",{"2":{"124":2,"134":1,"408":1,"1417":1,"1656":1,"1948":2,"2283":2,"2707":1,"2881":2}}],["fitting",{"2":{"114":1}}],["firefox",{"2":{"2582":1}}],["fired",{"2":{"2411":1}}],["fire",{"2":{"1606":3,"1675":2,"2303":1}}],["firstly",{"2":{"2249":1,"2501":1}}],["first",{"0":{"2575":1,"2652":1},"1":{"2576":1,"2577":1,"2578":1,"2579":1,"2580":1,"2581":1},"2":{"46":1,"65":1,"90":2,"113":1,"114":1,"120":1,"130":1,"157":1,"213":1,"222":1,"288":1,"317":1,"340":1,"418":1,"421":2,"424":1,"487":1,"520":1,"529":1,"532":1,"553":1,"558":1,"562":1,"563":1,"607":1,"613":1,"614":2,"616":1,"617":2,"627":1,"645":1,"654":1,"655":1,"663":1,"684":1,"701":2,"703":1,"713":1,"728":1,"731":1,"735":1,"751":2,"752":1,"802":1,"806":1,"828":1,"832":1,"860":1,"864":1,"890":1,"894":1,"925":1,"929":1,"959":1,"963":1,"993":1,"997":1,"1027":1,"1031":1,"1061":1,"1065":1,"1095":1,"1099":1,"1129":1,"1133":1,"1163":1,"1167":1,"1216":1,"1220":1,"1249":1,"1282":1,"1294":1,"1295":1,"1302":1,"1334":1,"1341":1,"1345":1,"1363":1,"1378":2,"1421":1,"1443":1,"1450":2,"1504":1,"1532":3,"1533":1,"1599":1,"1606":1,"1608":1,"1609":1,"1610":1,"1616":1,"1627":1,"1655":1,"1662":2,"1696":2,"1714":1,"1716":1,"1733":1,"1756":2,"1827":1,"1830":1,"1833":1,"1836":1,"1840":1,"1907":1,"1910":1,"1913":1,"1933":1,"1938":1,"1946":1,"1999":1,"2006":1,"2014":1,"2017":1,"2050":1,"2052":2,"2060":1,"2063":1,"2151":1,"2154":1,"2167":1,"2210":1,"2262":1,"2265":1,"2266":1,"2271":1,"2277":1,"2288":1,"2302":4,"2303":3,"2312":1,"2323":2,"2409":1,"2418":1,"2421":1,"2429":1,"2445":1,"2449":2,"2477":1,"2481":1,"2573":1,"2583":1,"2605":1,"2623":1,"2626":1,"2627":3,"2628":1,"2633":1,"2643":1,"2662":1,"2667":1,"2673":1,"2711":1,"2720":2,"2721":1,"2748":2,"2750":1,"2769":8,"2776":1,"2787":1,"2789":1,"2797":1,"2830":1,"2831":1,"2848":2,"2862":1,"2876":1,"2882":1,"2908":1,"2910":1,"2915":2,"2922":1,"2927":1,"2931":1}}],["firmware\`",{"2":{"416":2,"417":2,"418":2}}],["firmwares",{"2":{"164":1,"173":1,"263":1,"428":1,"2582":1}}],["firmware",{"0":{"31":1,"34":1,"56":1,"164":1,"273":1,"276":1,"284":1,"599":1,"1334":1,"2261":1,"2425":1,"2426":1,"2427":1,"2463":1,"2466":1,"2469":1,"2470":1,"2490":1,"2497":1,"2575":1,"2580":1,"2581":1,"2808":1,"2847":1},"1":{"2262":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2268":1,"2269":1,"2270":1,"2271":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1,"2491":1,"2492":1,"2493":1,"2494":1,"2576":1,"2577":1,"2578":1,"2579":1,"2580":1,"2581":1},"2":{"2":1,"3":1,"10":1,"15":1,"21":1,"24":1,"28":2,"30":2,"33":2,"36":1,"37":1,"43":1,"49":1,"70":3,"73":1,"107":1,"112":1,"114":3,"116":1,"124":1,"130":2,"131":1,"132":1,"145":1,"149":4,"164":1,"166":1,"201":1,"213":1,"215":1,"222":2,"224":2,"228":3,"236":1,"238":1,"240":1,"243":1,"249":4,"265":2,"266":2,"268":1,"273":5,"275":1,"276":3,"284":3,"320":1,"331":1,"334":1,"347":1,"348":1,"361":3,"365":1,"366":1,"367":1,"368":3,"369":1,"370":1,"372":5,"388":1,"397":2,"399":2,"400":2,"401":2,"402":1,"403":2,"405":2,"408":2,"414":1,"416":1,"417":1,"418":1,"419":2,"423":4,"427":8,"428":2,"430":1,"432":1,"439":1,"444":1,"445":2,"448":1,"450":2,"451":2,"454":1,"462":1,"487":1,"507":2,"508":1,"525":3,"563":1,"570":3,"572":2,"576":1,"578":2,"584":1,"586":3,"587":2,"590":2,"591":1,"592":1,"593":1,"596":1,"599":1,"600":1,"611":2,"613":1,"614":1,"615":1,"631":2,"649":4,"717":1,"751":1,"1295":1,"1308":1,"1310":1,"1313":1,"1317":1,"1332":1,"1345":1,"1362":2,"1363":1,"1385":1,"1392":1,"1415":1,"1434":1,"1443":2,"1494":1,"1515":1,"1516":1,"1518":1,"1585":1,"1627":2,"1696":1,"1843":1,"1845":1,"1942":1,"1951":2,"2032":1,"2063":2,"2068":1,"2159":1,"2181":1,"2184":1,"2189":1,"2254":2,"2263":1,"2264":1,"2265":2,"2266":2,"2268":1,"2274":1,"2290":2,"2301":1,"2302":1,"2318":1,"2367":2,"2368":2,"2372":1,"2378":2,"2380":3,"2385":1,"2387":4,"2392":2,"2394":2,"2396":2,"2397":1,"2398":1,"2400":3,"2403":4,"2407":1,"2410":2,"2411":1,"2416":2,"2424":2,"2425":7,"2427":1,"2428":1,"2435":2,"2436":1,"2444":1,"2459":5,"2460":1,"2461":1,"2462":1,"2463":3,"2466":1,"2468":1,"2470":1,"2475":1,"2477":1,"2481":1,"2489":1,"2493":1,"2494":1,"2497":6,"2499":1,"2548":1,"2549":2,"2566":2,"2567":10,"2568":9,"2569":4,"2570":3,"2571":1,"2572":1,"2573":3,"2575":2,"2576":1,"2577":1,"2578":1,"2580":3,"2581":2,"2582":1,"2583":7,"2584":1,"2587":1,"2588":1,"2589":2,"2590":1,"2591":1,"2592":1,"2600":4,"2602":3,"2604":1,"2605":2,"2606":1,"2607":6,"2608":1,"2609":2,"2610":1,"2611":1,"2621":1,"2622":5,"2623":1,"2625":1,"2630":10,"2632":6,"2636":1,"2648":1,"2652":1,"2655":1,"2657":1,"2658":1,"2660":1,"2662":1,"2664":1,"2665":1,"2666":1,"2667":6,"2668":1,"2669":1,"2670":1,"2672":1,"2680":1,"2698":1,"2707":1,"2721":5,"2724":1,"2726":2,"2727":1,"2728":1,"2732":2,"2735":1,"2740":2,"2742":1,"2743":1,"2746":1,"2748":6,"2749":12,"2750":2,"2751":1,"2752":1,"2787":2,"2800":1,"2820":1,"2844":3,"2845":1,"2847":1,"2881":1,"2882":2,"2885":2,"2886":1,"2888":1,"2894":1,"2895":4,"2897":1,"2901":1,"2908":1,"2909":1,"2919":1,"2926":1,"2929":2,"2933":1,"2940":1}}],["fixme",{"2":{"549":1}}],["fixmes",{"0":{"549":1},"2":{"549":2}}],["fixups",{"2":{"114":1}}],["fixup",{"2":{"65":1,"92":2,"114":6,"134":3,"149":3,"160":2,"176":9,"191":23,"199":9,"211":13,"222":3,"236":1,"249":7,"266":4,"277":4,"285":1,"308":1,"317":1,"328":4}}],["fixing",{"0":{"28":1},"2":{"50":1,"114":1,"199":1,"236":1,"614":1,"2723":2}}],["fixed",{"0":{"25":1},"2":{"25":1,"50":1,"73":1,"86":1,"114":1,"149":1,"160":1,"191":1,"199":1,"211":2,"236":1,"266":1,"308":1,"491":1,"627":1,"1370":1,"2466":1,"2621":1,"2644":1,"2734":1}}],["fixes",{"0":{"48":1,"62":1,"73":1,"92":1},"2":{"5":1,"73":2,"92":1,"114":3,"134":3,"149":8,"160":4,"176":7,"190":2,"191":7,"199":3,"211":2,"222":1,"236":2,"249":1,"266":2,"277":3,"285":2,"294":1,"308":2,"317":3,"328":1,"333":2,"399":1,"2675":1}}],["fix",{"0":{"11":1},"2":{"6":1,"28":1,"32":1,"50":1,"51":1,"62":1,"73":6,"74":1,"75":1,"77":1,"92":8,"94":2,"95":2,"114":68,"133":1,"134":42,"149":32,"160":12,"175":1,"176":40,"190":2,"191":47,"199":25,"211":25,"222":23,"236":17,"249":19,"266":10,"277":5,"285":4,"294":5,"308":10,"317":4,"328":7,"333":3,"408":1,"433":3,"611":2,"617":2,"1315":1,"1336":2,"1345":1,"1484":1,"1589":1,"1955":1,"2439":1,"2467":1,"2557":2,"2560":2,"2609":1,"2621":2,"2625":1,"2644":1,"2719":1,"2728":1,"2740":1}}],["footprint",{"0":{"2186":1},"2":{"2676":1,"2682":1}}],["footnotes",{"2":{"335":1}}],["foo=none",{"2":{"541":1}}],["foo=",{"2":{"541":1}}],["foo",{"2":{"520":6,"524":1,"526":1,"541":2,"542":1,"543":2,"627":2,"629":2,"1413":1}}],["font",{"0":{"465":1,"466":1,"2758":1,"2760":1,"2763":1,"2764":1},"1":{"2759":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1},"2":{"328":1,"465":1,"466":1,"1940":5,"1943":8,"2278":1,"2281":8,"2748":18,"2750":34,"2758":6,"2759":1,"2760":6,"2761":2,"2762":3,"2763":4,"2764":1}}],["fonts",{"2":{"153":2,"248":1,"249":1,"328":1,"1943":3,"2281":3,"2746":2,"2747":5,"2748":1,"2750":5}}],["fox",{"2":{"211":1}}],["focused",{"2":{"548":1,"2573":1}}],["focuses",{"2":{"334":1}}],["focusing",{"2":{"233":1}}],["focus",{"2":{"182":1,"213":1,"487":1,"1669":1,"1758":1,"2656":1,"2917":1}}],["foundational",{"2":{"2925":1}}],["foundation",{"2":{"1438":1,"2725":1}}],["found",{"0":{"1336":1},"2":{"124":2,"210":1,"288":1,"332":1,"372":1,"380":1,"383":1,"391":1,"427":1,"433":1,"487":1,"503":1,"550":1,"551":1,"586":1,"609":1,"746":1,"747":1,"748":1,"758":1,"1347":1,"1374":1,"1421":1,"1479":1,"1519":1,"1526":1,"1533":1,"1766":1,"1942":1,"2050":1,"2052":1,"2280":1,"2284":1,"2286":1,"2287":1,"2367":1,"2388":1,"2405":3,"2408":2,"2411":1,"2419":1,"2428":1,"2466":1,"2501":1,"2510":1,"2559":1,"2576":1,"2583":1,"2585":1,"2621":1,"2622":1,"2680":1,"2687":1,"2703":1,"2748":1,"2750":1,"2828":1,"2923":1,"2927":1,"2942":1}}],["fourth",{"2":{"1487":1,"1833":1,"1836":1,"2293":1,"2302":1,"2308":2}}],["fourier",{"2":{"45":1}}],["four",{"0":{"1832":1},"1":{"1833":1,"1834":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"143":2,"149":1,"520":1,"522":1,"586":1,"726":1,"823":1,"826":1,"852":1,"855":1,"884":1,"887":1,"916":1,"951":1,"985":1,"988":1,"1019":1,"1022":1,"1053":1,"1056":1,"1087":1,"1121":1,"1155":1,"1211":1,"1214":1,"1375":1,"1661":1,"1693":1,"2233":1,"2245":1,"2293":2,"2496":1,"2500":1,"2787":1,"2875":2}}],["folks",{"2":{"399":1,"400":1,"401":1,"402":1,"405":1}}],["foldkb",{"2":{"134":1}}],["folder2",{"2":{"1432":1}}],["folder1",{"2":{"1432":1}}],["folder>",{"2":{"1427":3}}],["folder",{"0":{"43":1,"293":1,"305":1,"314":1,"2436":1},"1":{"2437":1,"2438":1,"2439":1,"2440":1,"2441":1,"2442":1},"2":{"70":1,"72":2,"111":1,"113":3,"114":5,"133":1,"134":1,"149":20,"160":2,"176":2,"199":2,"204":1,"211":6,"236":1,"249":10,"266":1,"277":2,"293":2,"294":10,"305":2,"314":2,"317":2,"342":1,"347":2,"387":3,"391":1,"427":1,"430":1,"444":1,"554":1,"556":2,"570":1,"615":1,"616":2,"622":1,"623":1,"1427":2,"1428":3,"1432":2,"1434":2,"1437":1,"1443":1,"1479":1,"1494":1,"1496":1,"1521":4,"1844":1,"2066":1,"2405":3,"2406":1,"2407":1,"2408":1,"2410":1,"2434":1,"2435":4,"2436":2,"2439":14,"2440":15,"2447":3,"2580":1,"2598":2,"2599":2,"2601":1,"2603":1,"2607":1,"2621":1,"2622":1,"2651":1,"2652":3,"2662":3,"2665":2,"2721":1,"2788":1,"2937":5,"2939":1}}],["folders",{"0":{"556":1,"2435":1},"2":{"35":1,"37":1,"43":1,"114":1,"149":1,"204":1,"222":1,"293":1,"305":1,"308":1,"314":1,"553":1,"555":1,"556":3,"1427":1,"2410":3,"2435":3,"2439":1,"2937":1}}],["followed",{"2":{"424":1,"676":1,"1407":1,"1410":3,"1448":1,"1452":2,"1532":2,"1634":1,"1756":3,"2566":1,"2648":1,"2719":2,"2748":1,"2760":1,"2767":1,"2769":2,"2818":1,"2907":1}}],["followup",{"2":{"149":1,"224":1,"2722":1}}],["follow",{"2":{"114":1,"125":1,"185":1,"228":1,"240":1,"419":2,"520":3,"616":1,"617":2,"663":1,"664":1,"666":2,"673":1,"1192":1,"1195":1,"1198":1,"1200":1,"1201":1,"1340":1,"1419":1,"1533":1,"1587":1,"1637":1,"2324":1,"2437":1,"2444":1,"2461":1,"2572":1,"2573":1,"2596":1,"2617":1,"2620":1,"2621":1,"2651":1,"2708":1,"2721":1,"2773":1,"2937":1}}],["following",{"2":{"30":1,"31":2,"33":1,"34":3,"45":1,"67":1,"86":1,"102":1,"118":1,"119":1,"122":1,"125":1,"143":1,"146":1,"158":1,"159":1,"167":1,"168":1,"181":1,"185":1,"194":2,"197":1,"201":1,"206":1,"248":1,"255":2,"256":1,"273":1,"284":1,"303":1,"306":1,"307":1,"315":1,"316":1,"370":1,"373":1,"428":2,"431":1,"473":1,"507":1,"511":1,"520":1,"529":1,"571":1,"573":1,"591":1,"613":1,"622":1,"623":2,"645":2,"655":1,"659":1,"667":1,"675":1,"688":1,"700":1,"701":1,"718":1,"720":1,"722":1,"724":1,"725":1,"728":1,"729":1,"731":1,"758":1,"760":1,"762":1,"764":1,"765":1,"799":1,"802":1,"825":1,"826":1,"828":1,"854":1,"855":1,"856":1,"857":1,"858":1,"860":1,"886":1,"887":1,"888":1,"890":1,"918":1,"919":1,"921":1,"922":1,"923":1,"925":1,"953":1,"954":1,"955":1,"956":1,"957":1,"959":1,"987":1,"988":1,"989":1,"990":1,"991":1,"993":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1027":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1061":1,"1089":1,"1090":1,"1092":1,"1093":1,"1095":1,"1123":1,"1124":1,"1126":1,"1127":1,"1129":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1163":1,"1200":3,"1201":3,"1202":1,"1213":1,"1214":1,"1216":1,"1243":1,"1245":1,"1264":1,"1281":1,"1282":1,"1284":1,"1285":1,"1288":1,"1292":1,"1294":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1313":2,"1319":1,"1326":1,"1328":1,"1329":1,"1355":1,"1369":1,"1376":1,"1379":1,"1386":1,"1387":1,"1389":1,"1390":1,"1392":1,"1400":1,"1402":1,"1404":1,"1409":1,"1410":1,"1411":1,"1422":1,"1434":1,"1436":1,"1443":1,"1468":1,"1474":1,"1478":1,"1484":1,"1497":2,"1511":1,"1512":1,"1519":1,"1529":1,"1533":2,"1536":1,"1537":1,"1548":1,"1550":1,"1551":1,"1559":1,"1560":2,"1562":1,"1563":1,"1588":1,"1600":1,"1603":2,"1606":1,"1614":1,"1616":1,"1627":1,"1628":2,"1630":1,"1638":1,"1640":1,"1655":1,"1657":1,"1661":1,"1664":1,"1672":2,"1677":1,"1681":1,"1684":1,"1686":1,"1687":1,"1688":1,"1689":1,"1692":1,"1693":1,"1695":1,"1746":1,"1758":1,"1761":1,"1763":1,"1765":1,"1767":1,"1769":1,"1770":1,"1771":1,"1792":1,"1800":1,"1803":1,"1804":1,"1805":1,"1806":1,"1839":1,"1840":1,"1845":1,"1913":1,"1915":1,"1916":1,"1926":1,"1927":1,"1928":1,"1929":1,"1930":1,"1931":1,"1934":1,"1938":1,"1940":1,"1951":1,"1959":1,"1983":1,"1986":1,"1988":1,"1989":1,"1990":1,"1995":1,"1996":1,"2000":1,"2011":1,"2015":2,"2018":1,"2021":1,"2026":1,"2027":1,"2028":1,"2037":1,"2042":1,"2046":2,"2048":1,"2049":1,"2050":1,"2052":1,"2059":1,"2060":1,"2064":1,"2065":1,"2068":1,"2159":1,"2160":1,"2161":1,"2162":1,"2164":1,"2166":1,"2168":1,"2170":1,"2174":1,"2178":1,"2179":2,"2185":1,"2186":1,"2207":1,"2210":1,"2213":1,"2214":1,"2215":1,"2218":1,"2243":1,"2249":1,"2261":1,"2262":1,"2264":1,"2265":2,"2266":2,"2267":2,"2269":1,"2277":1,"2278":1,"2287":1,"2288":1,"2289":1,"2290":1,"2298":1,"2310":1,"2311":1,"2312":2,"2319":1,"2320":1,"2321":1,"2322":2,"2323":1,"2324":1,"2368":1,"2369":1,"2376":1,"2377":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2400":1,"2407":1,"2408":1,"2410":2,"2416":1,"2430":1,"2438":1,"2440":2,"2441":1,"2459":3,"2476":1,"2495":1,"2496":1,"2499":1,"2501":3,"2551":1,"2555":1,"2562":1,"2563":1,"2567":2,"2568":1,"2592":1,"2594":2,"2595":1,"2598":1,"2600":1,"2601":2,"2603":1,"2605":1,"2608":1,"2614":1,"2621":4,"2627":1,"2632":2,"2667":3,"2668":2,"2685":1,"2693":1,"2696":1,"2702":3,"2715":1,"2721":1,"2746":1,"2748":2,"2749":34,"2750":2,"2752":1,"2766":1,"2769":1,"2878":1,"2899":4,"2908":3,"2909":2,"2910":3,"2913":2,"2914":1,"2915":1,"2917":4,"2919":1,"2926":1,"2941":1}}],["follows",{"2":{"0":1,"19":1,"31":1,"160":1,"203":1,"231":1,"234":1,"373":1,"522":1,"570":1,"591":1,"1375":1,"1632":1,"1931":1,"1990":1,"1993":1,"2439":2,"2440":1,"2465":1,"2593":1,"2607":1,"2689":1,"2758":1,"2763":1,"2765":1,"2768":1,"2769":2,"2773":1,"2788":1}}],["forum",{"2":{"2891":1}}],["forums",{"2":{"2474":1}}],["forbids",{"2":{"2729":1}}],["forgot",{"2":{"2901":1}}],["forget",{"2":{"2165":3}}],["forgiveness",{"2":{"533":1}}],["forever",{"2":{"2928":1}}],["forever60",{"2":{"446":5}}],["foremost",{"2":{"2882":1}}],["foreground",{"2":{"492":4}}],["foreach",{"2":{"405":1}}],["forth",{"2":{"397":1,"2287":1,"2377":1,"2384":1}}],["forcing",{"2":{"303":1,"2268":1}}],["forcibly",{"2":{"50":1,"2271":1}}],["forceon",{"2":{"760":4}}],["forces",{"2":{"572":1,"760":1,"1389":1,"1390":1,"2175":1}}],["forced",{"2":{"568":1,"1375":1,"2268":1,"2411":1}}],["forcefully",{"2":{"236":1}}],["force",{"0":{"195":1,"230":1,"303":2},"2":{"112":3,"160":1,"195":4,"199":2,"211":2,"226":2,"236":3,"249":1,"277":1,"308":4,"317":1,"405":1,"424":2,"461":2,"561":1,"650":1,"651":1,"1202":1,"1312":1,"1317":1,"1413":1,"1430":3,"1955":1,"1986":1,"2039":2,"2177":1,"2376":2,"2411":1,"2427":1,"2608":1,"2630":2,"2721":1,"2783":1,"2875":1}}],["forming",{"2":{"2865":1}}],["formulas",{"2":{"2000":1}}],["formula",{"2":{"1840":1,"2060":1}}],["formed",{"2":{"1519":1}}],["former",{"2":{"1312":1,"1348":1}}],["formerly",{"2":{"37":1,"1586":2,"1617":1}}],["forms",{"2":{"520":1,"1474":1,"1491":1}}],["formally",{"2":{"294":1}}],["formalise",{"2":{"191":1}}],["formatstring",{"2":{"2847":1}}],["formats",{"2":{"431":1,"434":1,"456":1,"457":1,"462":1,"2607":1,"2748":1}}],["formatters",{"2":{"114":1}}],["formatted",{"2":{"1":1,"50":1,"76":1,"549":1,"669":1,"1324":2,"2788":1}}],["formatting",{"0":{"1":1,"499":1,"501":1,"502":1,"521":1},"1":{"500":1,"501":1,"502":1,"503":1,"504":1},"2":{"73":1,"149":1,"176":1,"249":2,"333":2,"489":1,"529":1,"2646":1,"2657":1}}],["format",{"0":{"1":1,"434":1,"456":1,"457":1,"462":1,"521":1,"537":1,"1448":1,"1531":1,"2758":1,"2765":1},"1":{"1532":1,"1533":1,"2759":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1},"2":{"1":2,"93":1,"112":1,"114":2,"134":5,"149":1,"160":1,"191":1,"199":1,"211":2,"248":1,"249":1,"277":1,"308":1,"373":1,"397":2,"431":1,"434":4,"435":1,"441":1,"456":1,"457":7,"462":1,"464":2,"465":2,"466":1,"489":2,"499":2,"501":1,"502":2,"521":9,"529":1,"534":1,"535":2,"537":1,"553":1,"570":2,"586":1,"590":1,"667":1,"1353":1,"1375":1,"1429":1,"1532":3,"1533":1,"1638":1,"2231":1,"2233":1,"2235":1,"2237":1,"2288":1,"2289":1,"2293":1,"2400":1,"2443":1,"2449":1,"2497":1,"2501":1,"2591":1,"2603":1,"2607":1,"2622":1,"2721":1,"2748":21,"2749":13,"2750":2,"2758":5,"2760":4,"2765":6,"2766":1,"2767":1,"2768":1,"2769":6,"2770":2,"2772":1,"2788":1,"2847":1,"2862":1,"2875":1}}],["form",{"2":{"110":1,"450":1,"451":1,"473":1,"474":1,"520":1,"1317":1,"1635":1,"1636":1,"2265":1,"2293":1,"2310":1,"2731":1,"2734":1,"2788":1,"2805":1,"2845":2,"2846":1,"2915":1}}],["forwards",{"2":{"2370":1,"2521":1}}],["forward",{"2":{"36":1,"37":1,"43":1,"113":1,"134":1,"184":1,"254":1,"268":1,"1413":1,"1612":1,"1840":1,"1948":1,"2060":1,"2159":4,"2181":1,"2283":1,"2434":1,"2509":1,"2510":5,"2515":5,"2537":1,"2723":1,"2939":1}}],["forked",{"0":{"2585":1},"2":{"2552":1,"2625":1,"2896":1}}],["forks",{"0":{"26":1},"2":{"405":1,"1340":1,"2895":1}}],["forking",{"2":{"21":1,"2403":1}}],["fork",{"0":{"5":1,"2631":1},"1":{"2632":1,"2633":1,"2634":1},"2":{"26":1,"46":1,"176":1,"228":1,"405":1,"611":1,"613":1,"1332":1,"1340":3,"2376":1,"2377":1,"2384":1,"2403":7,"2405":1,"2494":1,"2568":1,"2571":1,"2583":1,"2585":2,"2588":1,"2591":1,"2621":1,"2625":1,"2626":1,"2628":1,"2630":7,"2632":3,"2633":2,"2634":2,"2702":1,"2703":2,"2723":3}}],["for",{"0":{"11":1,"14":2,"26":1,"35":1,"56":1,"80":1,"138":1,"174":1,"203":1,"231":1,"246":1,"320":1,"406":1,"412":1,"419":1,"505":1,"507":1,"567":1,"590":1,"591":1,"598":1,"604":1,"610":1,"619":1,"1207":1,"1315":1,"1328":1,"1338":1,"1344":1,"1377":1,"1378":1,"1431":1,"1751":1,"1752":1,"1753":1,"1918":1,"2036":1,"2040":1,"2046":1,"2291":1,"2311":1,"2312":1,"2424":1,"2624":1,"2646":1,"2654":1,"2657":1,"2665":1,"2704":2,"2705":1,"2706":1,"2719":1,"2741":1,"2843":1,"2920":1,"2937":1},"1":{"36":1,"506":1,"507":1,"508":1,"509":1,"1208":1,"1209":1,"1210":1,"1339":1,"1432":1,"1433":1,"1754":1,"1755":1,"1756":1,"2037":1,"2625":1,"2655":1,"2656":1,"2666":1},"2":{"0":1,"8":2,"9":1,"12":1,"13":3,"14":1,"18":3,"19":1,"28":1,"30":3,"31":3,"33":3,"34":1,"35":1,"36":9,"39":1,"45":5,"49":14,"50":10,"51":1,"52":1,"55":2,"63":2,"64":1,"65":4,"69":2,"70":1,"74":7,"75":3,"76":1,"81":1,"82":1,"86":2,"88":1,"89":1,"90":1,"92":4,"93":21,"94":3,"98":2,"99":4,"104":1,"107":2,"108":1,"111":1,"112":1,"114":58,"116":1,"118":5,"119":2,"120":2,"123":2,"125":3,"127":1,"128":1,"130":3,"131":1,"132":1,"133":1,"134":38,"138":2,"142":1,"145":1,"146":1,"149":33,"152":3,"153":6,"154":1,"156":2,"158":1,"160":21,"163":3,"164":1,"166":2,"169":2,"172":4,"173":2,"174":4,"175":5,"176":45,"179":1,"182":4,"183":1,"185":4,"186":2,"188":7,"189":3,"190":3,"191":52,"194":7,"195":2,"196":1,"199":28,"201":7,"202":1,"203":1,"204":1,"206":2,"209":1,"210":2,"211":32,"213":6,"215":1,"222":15,"224":1,"228":5,"229":3,"230":2,"231":2,"232":3,"234":2,"235":1,"236":26,"240":1,"241":1,"243":1,"246":1,"247":2,"248":2,"249":27,"253":1,"255":4,"256":1,"257":1,"258":1,"259":2,"262":1,"263":4,"264":1,"265":1,"266":18,"270":1,"271":1,"272":1,"273":2,"274":1,"276":1,"277":8,"279":2,"281":1,"282":1,"283":5,"284":1,"285":12,"288":3,"289":1,"292":1,"293":1,"294":10,"297":1,"298":2,"301":1,"303":1,"304":1,"305":1,"306":1,"307":2,"308":17,"313":1,"315":1,"316":1,"317":9,"320":2,"326":1,"328":4,"331":2,"332":1,"333":4,"335":2,"338":6,"340":1,"359":1,"360":1,"361":1,"363":1,"366":1,"367":1,"368":2,"371":1,"372":4,"373":3,"374":1,"378":2,"384":1,"387":6,"388":1,"390":3,"391":2,"392":2,"395":1,"396":3,"397":7,"399":4,"400":4,"401":2,"402":2,"403":3,"405":3,"406":10,"408":2,"411":3,"416":1,"417":2,"418":1,"419":4,"427":5,"428":5,"429":1,"430":1,"431":7,"433":1,"435":3,"440":1,"441":1,"442":1,"450":2,"451":2,"452":1,"457":4,"458":1,"459":2,"460":1,"464":1,"465":2,"466":1,"470":2,"472":2,"475":2,"484":1,"487":2,"488":2,"489":3,"490":1,"493":1,"494":3,"498":1,"503":2,"505":1,"510":2,"517":1,"519":2,"520":3,"521":3,"522":2,"524":1,"528":1,"533":3,"537":3,"538":1,"539":1,"540":1,"541":1,"546":1,"547":1,"548":1,"550":1,"552":2,"553":4,"555":1,"556":1,"557":1,"559":10,"561":1,"562":21,"563":4,"566":4,"567":1,"568":11,"569":1,"570":1,"572":8,"576":1,"578":1,"579":2,"580":1,"582":1,"585":1,"586":2,"587":3,"589":1,"590":1,"591":1,"592":2,"593":1,"594":1,"597":2,"598":2,"603":2,"607":4,"608":1,"611":6,"613":5,"614":3,"616":5,"617":4,"618":1,"619":2,"621":2,"622":1,"623":3,"624":1,"625":1,"626":1,"628":2,"629":1,"631":5,"632":3,"635":1,"637":2,"643":1,"645":3,"646":1,"649":6,"650":2,"651":2,"654":3,"655":1,"658":1,"659":1,"663":1,"664":1,"665":1,"666":2,"667":3,"668":2,"670":1,"671":4,"673":1,"674":3,"675":1,"681":2,"682":1,"683":5,"684":5,"685":2,"686":1,"687":4,"692":2,"693":1,"695":3,"696":7,"698":5,"699":1,"712":1,"713":4,"714":4,"715":1,"717":1,"718":7,"719":3,"721":1,"722":1,"723":1,"724":1,"733":1,"734":3,"743":4,"745":1,"746":5,"747":2,"748":1,"749":2,"750":4,"751":3,"752":4,"753":1,"754":2,"759":2,"763":3,"765":9,"766":1,"767":1,"769":3,"771":1,"773":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"794":3,"795":1,"798":2,"802":2,"804":1,"805":4,"817":1,"819":1,"824":2,"828":2,"830":1,"831":4,"844":1,"846":1,"853":2,"857":4,"860":2,"862":1,"863":4,"876":1,"877":3,"878":1,"879":1,"885":2,"888":1,"890":2,"892":1,"893":4,"898":1,"908":1,"910":1,"917":2,"918":4,"921":1,"922":4,"925":2,"927":1,"928":4,"933":1,"943":1,"945":1,"952":2,"955":1,"956":4,"959":2,"961":1,"962":4,"967":1,"977":1,"979":1,"986":2,"989":1,"990":4,"993":2,"995":1,"996":4,"1001":1,"1011":1,"1013":1,"1020":2,"1023":1,"1024":4,"1027":2,"1029":1,"1030":4,"1035":1,"1045":1,"1047":1,"1054":2,"1058":4,"1061":2,"1063":1,"1064":4,"1069":1,"1079":1,"1080":3,"1081":1,"1082":1,"1088":2,"1089":4,"1092":4,"1095":2,"1097":1,"1098":4,"1103":1,"1113":1,"1114":3,"1115":1,"1116":1,"1122":2,"1123":4,"1126":4,"1129":2,"1131":1,"1132":4,"1137":1,"1147":1,"1148":3,"1149":1,"1150":1,"1156":2,"1160":4,"1163":2,"1165":1,"1166":4,"1171":1,"1181":1,"1182":3,"1183":1,"1184":1,"1189":3,"1190":1,"1191":3,"1194":5,"1195":5,"1197":6,"1198":6,"1200":3,"1201":2,"1202":1,"1204":1,"1206":1,"1207":1,"1210":2,"1212":2,"1216":2,"1218":1,"1219":4,"1224":1,"1234":1,"1236":1,"1245":8,"1249":1,"1266":11,"1280":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1294":1,"1296":4,"1297":2,"1300":5,"1308":1,"1309":1,"1312":1,"1314":1,"1315":2,"1316":2,"1317":1,"1321":1,"1323":1,"1325":1,"1326":2,"1327":3,"1328":1,"1329":3,"1332":2,"1338":1,"1340":2,"1342":1,"1344":3,"1345":2,"1347":1,"1349":1,"1350":1,"1351":1,"1353":2,"1356":1,"1358":1,"1362":2,"1368":2,"1369":1,"1374":3,"1375":9,"1377":1,"1378":1,"1379":1,"1385":2,"1389":1,"1390":1,"1392":1,"1394":2,"1395":1,"1397":1,"1398":1,"1400":1,"1402":2,"1403":1,"1404":3,"1406":4,"1407":6,"1410":5,"1411":1,"1412":4,"1413":7,"1415":3,"1416":4,"1417":4,"1420":3,"1421":2,"1422":10,"1423":1,"1424":1,"1427":2,"1428":1,"1430":1,"1432":2,"1433":3,"1434":1,"1435":3,"1436":2,"1437":4,"1438":2,"1439":2,"1440":2,"1441":2,"1442":5,"1443":6,"1444":1,"1448":4,"1450":4,"1451":1,"1452":3,"1454":1,"1455":3,"1459":2,"1460":1,"1466":1,"1468":2,"1469":3,"1470":1,"1471":1,"1472":3,"1473":1,"1474":1,"1476":1,"1479":1,"1480":5,"1482":2,"1483":1,"1484":2,"1485":1,"1486":4,"1487":5,"1491":2,"1492":3,"1493":4,"1495":3,"1497":5,"1499":1,"1504":1,"1511":5,"1512":4,"1513":1,"1519":1,"1520":1,"1521":1,"1522":2,"1523":2,"1526":4,"1527":5,"1528":2,"1529":2,"1531":1,"1532":6,"1533":3,"1534":2,"1535":1,"1538":1,"1547":1,"1548":1,"1550":4,"1552":1,"1553":1,"1557":1,"1559":1,"1562":4,"1563":1,"1564":1,"1583":2,"1584":2,"1585":1,"1586":1,"1587":5,"1588":1,"1591":2,"1592":2,"1596":2,"1599":1,"1600":2,"1602":3,"1603":2,"1604":1,"1606":6,"1607":1,"1611":1,"1612":3,"1613":5,"1614":4,"1616":2,"1618":1,"1619":1,"1620":1,"1621":1,"1622":1,"1626":1,"1627":2,"1630":1,"1632":1,"1633":1,"1638":2,"1641":2,"1642":1,"1655":1,"1656":2,"1657":1,"1658":1,"1659":2,"1660":4,"1661":1,"1664":2,"1672":3,"1675":8,"1678":4,"1679":6,"1680":1,"1684":1,"1691":1,"1696":1,"1707":1,"1724":2,"1726":1,"1732":3,"1735":1,"1736":1,"1738":1,"1742":1,"1743":3,"1747":1,"1751":5,"1756":4,"1757":1,"1758":2,"1759":1,"1761":1,"1762":1,"1764":1,"1765":2,"1768":1,"1770":2,"1775":1,"1790":1,"1791":2,"1793":2,"1795":2,"1796":1,"1797":1,"1798":2,"1804":1,"1805":2,"1806":1,"1823":1,"1826":1,"1829":1,"1832":1,"1835":1,"1839":2,"1840":5,"1841":2,"1843":1,"1844":4,"1845":1,"1846":1,"1847":1,"1849":1,"1917":2,"1918":1,"1920":1,"1928":2,"1929":2,"1930":4,"1931":1,"1932":2,"1933":2,"1934":1,"1935":1,"1939":3,"1940":1,"1941":3,"1942":1,"1943":6,"1945":5,"1946":14,"1947":7,"1948":8,"1950":2,"1953":1,"1954":1,"1979":3,"1981":1,"1983":4,"1984":3,"1985":2,"1986":3,"1989":1,"1990":1,"1993":4,"1996":3,"1998":1,"1999":4,"2000":8,"2002":5,"2003":2,"2004":3,"2006":7,"2010":1,"2012":3,"2013":1,"2014":4,"2016":8,"2017":2,"2018":3,"2019":4,"2021":1,"2026":1,"2028":2,"2029":1,"2030":2,"2032":1,"2033":1,"2035":1,"2036":2,"2038":2,"2039":7,"2045":1,"2046":2,"2047":1,"2049":1,"2050":5,"2052":2,"2059":2,"2060":5,"2061":3,"2063":1,"2064":1,"2066":4,"2068":1,"2069":1,"2070":1,"2072":1,"2073":5,"2074":2,"2156":2,"2159":2,"2160":2,"2161":6,"2162":1,"2163":1,"2164":1,"2166":2,"2167":3,"2169":1,"2170":1,"2173":1,"2176":1,"2177":1,"2178":1,"2179":6,"2182":1,"2183":2,"2185":7,"2187":7,"2188":2,"2189":1,"2191":3,"2194":2,"2201":12,"2210":2,"2212":1,"2213":1,"2215":5,"2225":1,"2227":1,"2240":1,"2241":1,"2242":1,"2251":1,"2252":2,"2254":3,"2257":1,"2258":6,"2260":1,"2262":1,"2266":1,"2268":5,"2269":5,"2270":5,"2271":6,"2272":1,"2274":1,"2278":1,"2279":3,"2281":4,"2282":4,"2283":5,"2284":1,"2286":1,"2288":1,"2289":2,"2290":3,"2291":5,"2293":1,"2294":1,"2295":2,"2296":1,"2297":1,"2302":7,"2303":3,"2305":3,"2306":1,"2309":1,"2310":14,"2311":6,"2312":7,"2313":2,"2315":4,"2319":1,"2320":1,"2322":4,"2323":3,"2324":6,"2344":2,"2347":1,"2350":1,"2364":1,"2367":3,"2370":1,"2371":2,"2372":3,"2374":2,"2375":3,"2376":2,"2377":2,"2378":1,"2379":2,"2380":2,"2381":1,"2382":1,"2383":3,"2384":5,"2386":2,"2387":1,"2388":2,"2389":2,"2390":4,"2391":1,"2393":5,"2395":5,"2397":5,"2398":2,"2400":5,"2402":1,"2403":1,"2406":4,"2407":7,"2409":1,"2410":14,"2411":8,"2412":1,"2416":2,"2417":2,"2418":1,"2420":3,"2421":2,"2422":1,"2423":1,"2425":2,"2426":1,"2427":2,"2428":2,"2430":1,"2432":1,"2433":1,"2434":1,"2435":3,"2438":4,"2439":3,"2440":3,"2441":3,"2442":1,"2444":2,"2445":1,"2446":3,"2447":1,"2450":2,"2451":2,"2453":1,"2454":2,"2455":2,"2456":2,"2457":3,"2458":2,"2459":2,"2463":1,"2465":1,"2466":1,"2467":1,"2475":1,"2476":2,"2483":2,"2487":1,"2489":1,"2490":1,"2492":3,"2493":3,"2495":6,"2496":3,"2497":2,"2498":1,"2501":1,"2502":1,"2510":1,"2512":1,"2513":2,"2515":2,"2516":1,"2531":2,"2540":30,"2547":1,"2548":2,"2550":1,"2551":5,"2552":2,"2554":1,"2555":3,"2556":1,"2559":1,"2560":4,"2562":1,"2563":3,"2565":1,"2566":2,"2567":6,"2568":3,"2569":9,"2570":1,"2571":1,"2572":4,"2573":3,"2575":1,"2576":1,"2579":1,"2580":2,"2582":4,"2583":1,"2584":1,"2587":1,"2588":2,"2591":2,"2592":2,"2594":1,"2595":1,"2598":1,"2599":1,"2600":1,"2602":1,"2605":2,"2606":2,"2607":2,"2609":2,"2610":1,"2611":1,"2612":1,"2614":1,"2615":1,"2619":1,"2620":1,"2621":1,"2622":4,"2623":1,"2630":2,"2631":1,"2632":2,"2633":1,"2638":1,"2639":1,"2643":2,"2644":32,"2645":5,"2646":6,"2651":4,"2655":1,"2656":1,"2657":3,"2660":9,"2662":2,"2663":1,"2664":2,"2666":1,"2667":11,"2668":2,"2669":6,"2670":1,"2671":2,"2672":3,"2673":1,"2674":2,"2675":2,"2676":1,"2677":2,"2680":2,"2681":1,"2682":1,"2684":2,"2685":1,"2687":4,"2688":1,"2689":1,"2693":2,"2695":1,"2696":1,"2697":1,"2699":1,"2700":3,"2702":3,"2703":2,"2704":4,"2705":1,"2706":2,"2707":8,"2709":2,"2710":1,"2715":1,"2716":3,"2717":3,"2719":6,"2720":4,"2721":21,"2722":5,"2723":4,"2724":3,"2725":2,"2726":1,"2728":1,"2734":1,"2744":2,"2745":1,"2746":3,"2747":2,"2748":3,"2749":29,"2750":19,"2751":1,"2757":2,"2758":3,"2759":1,"2760":3,"2761":1,"2762":1,"2765":3,"2766":3,"2767":1,"2768":1,"2769":2,"2770":3,"2773":2,"2780":2,"2785":1,"2787":5,"2788":3,"2789":1,"2790":1,"2792":1,"2793":1,"2797":1,"2798":1,"2799":1,"2801":1,"2802":1,"2812":1,"2813":2,"2819":1,"2821":1,"2829":1,"2830":2,"2831":1,"2832":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2844":2,"2845":3,"2847":2,"2849":1,"2851":1,"2857":1,"2861":2,"2862":5,"2864":2,"2865":1,"2869":1,"2871":2,"2872":1,"2873":3,"2875":3,"2877":4,"2879":2,"2881":1,"2882":2,"2884":1,"2885":2,"2886":1,"2887":2,"2889":1,"2894":1,"2895":3,"2896":2,"2898":1,"2899":7,"2900":4,"2901":5,"2902":3,"2908":5,"2909":4,"2910":2,"2911":1,"2912":4,"2913":3,"2914":2,"2915":5,"2916":3,"2917":4,"2918":1,"2919":3,"2920":3,"2925":1,"2927":5,"2928":3,"2929":4,"2930":2,"2935":2,"2937":9,"2938":2,"2939":1,"2940":2,"2941":2,"2942":3}}],["oems",{"2":{"2569":1}}],["oem",{"2":{"2567":1}}],["oemxx",{"2":{"685":2}}],["oxidisation",{"2":{"2420":1}}],["oar",{"2":{"2288":1}}],["oops",{"2":{"1362":1}}],["oob",{"2":{"176":1,"222":2,"308":1}}],["oj",{"2":{"676":1}}],["oven",{"2":{"580":1}}],["overcome",{"2":{"2743":1}}],["overcrowded",{"2":{"2447":1}}],["overhead",{"2":{"2269":1}}],["overheat",{"2":{"1675":1}}],["overhauls",{"2":{"408":1}}],["overhaul",{"0":{"157":1,"283":1},"2":{"75":1,"94":1,"133":1,"134":1,"149":1,"160":1,"175":1,"176":2,"182":1,"266":1,"285":1}}],["overloading",{"2":{"2017":1}}],["overlook",{"2":{"540":1}}],["overlay",{"0":{"2554":1},"2":{"2006":4,"2189":1,"2548":2,"2552":1,"2554":1,"2585":1,"2586":1,"2587":1}}],["overlap",{"2":{"1598":1,"1617":1,"1934":4,"2189":1,"2722":1}}],["overlapping",{"0":{"1598":1,"1934":1},"2":{"98":1,"114":1,"236":1,"277":1,"1443":1,"1603":1,"1934":3,"2749":1}}],["overwritable",{"2":{"2045":1}}],["overwritten",{"2":{"1940":1,"2381":1,"2498":1,"2669":1,"2680":1,"2695":1}}],["overwrites",{"2":{"2266":1}}],["overwrite",{"2":{"461":3,"1375":2,"1526":1,"1859":1,"1861":1,"2085":1,"2087":1,"2475":1,"2756":1,"2941":1}}],["overwriting",{"2":{"70":9,"2045":1,"2046":1}}],["overwhelmed",{"2":{"412":1}}],["overall",{"0":{"335":1},"1":{"336":1,"337":1,"338":1,"339":1,"340":1,"341":1,"342":1},"2":{"431":1,"551":1,"562":1,"714":1,"2180":1,"2746":1,"2894":1}}],["oversized",{"2":{"285":1}}],["overnumpad",{"2":{"134":1}}],["overrun",{"2":{"114":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1257":1,"1260":1,"1275":1,"1277":1}}],["overridable",{"2":{"211":1,"1948":2,"2283":4}}],["overriding",{"0":{"1523":1,"2192":1},"1":{"1524":1},"2":{"99":1,"160":1,"191":1,"199":1,"277":1,"294":1,"317":1,"327":1,"714":1,"751":2,"1526":1,"2189":1,"2551":1,"2844":1,"2933":1}}],["override",{"0":{"272":1,"327":1,"1436":1,"1751":1},"2":{"50":1,"74":1,"90":2,"112":1,"114":1,"125":2,"134":1,"185":2,"188":1,"191":2,"199":1,"222":1,"272":7,"277":1,"288":1,"333":1,"434":1,"460":1,"557":1,"562":1,"563":1,"572":2,"624":1,"625":1,"628":1,"637":4,"698":1,"745":1,"746":2,"747":2,"748":1,"751":1,"752":1,"753":1,"756":2,"764":1,"765":1,"766":1,"767":1,"1200":1,"1201":1,"1245":1,"1266":1,"1479":1,"1497":1,"1527":1,"1626":1,"1662":2,"1670":4,"1736":2,"1738":1,"1739":2,"1740":2,"1741":1,"1742":1,"1743":1,"1744":4,"1746":19,"1747":7,"1749":3,"1750":3,"1751":17,"1752":4,"1753":2,"1754":4,"1755":2,"1756":2,"1757":1,"1792":1,"1948":1,"2160":1,"2192":1,"2216":1,"2243":1,"2283":1,"2409":2,"2630":1,"2668":1,"2669":2,"2670":1,"2722":1,"2749":2,"2846":1,"2879":1,"2910":1,"2919":1,"2933":1}}],["overrides",{"0":{"99":1,"637":1,"1384":1,"1736":1,"1737":1,"1739":1},"1":{"1737":1,"1738":1,"1739":1,"1740":2,"1741":2,"1742":2,"1743":2,"1744":1,"1745":1,"1746":1,"1747":1,"1748":1,"1749":1,"1750":1,"1751":1,"1752":1,"1753":1,"1754":1,"1755":1,"1756":1,"1757":1,"1758":1},"2":{"4":1,"50":1,"99":4,"114":2,"125":2,"160":1,"176":1,"185":2,"199":1,"222":1,"272":5,"308":1,"559":2,"562":1,"568":1,"625":1,"1378":1,"1384":1,"1736":2,"1738":1,"1739":1,"1744":2,"1746":4,"1747":2,"1749":1,"1750":3,"1751":1,"1753":1,"1754":2,"1756":2,"1757":4,"1758":2,"2021":1,"2039":1,"2189":3,"2409":1,"2668":1,"2713":1,"2924":1}}],["overridden",{"2":{"50":1,"555":1,"751":1,"769":1,"794":1,"1434":1,"2016":1,"2021":2,"2337":1,"2338":1,"2339":1}}],["overview",{"0":{"360":1,"368":1,"414":1,"485":1,"575":1,"609":1,"664":1,"2255":1,"2514":1,"2546":1,"2573":1},"1":{"369":1,"415":1,"416":1,"417":1,"418":1,"419":1,"486":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2547":1,"2548":1,"2549":1,"2550":1,"2551":1,"2552":1,"2553":1,"2554":1},"2":{"112":1,"517":1,"607":1,"1341":1,"1415":1,"1426":1,"2313":1,"2407":1,"2555":1,"2689":1,"2709":1,"2925":1}}],["over",{"2":{"99":1,"114":2,"124":1,"140":1,"191":1,"243":1,"307":1,"308":1,"312":1,"331":1,"358":1,"373":1,"375":1,"376":1,"438":1,"491":1,"546":1,"558":1,"559":1,"573":1,"597":1,"623":1,"746":1,"747":1,"756":1,"1193":2,"1196":2,"1280":1,"1284":1,"1369":1,"1407":1,"1410":1,"1417":1,"1451":2,"1619":1,"1627":1,"1676":1,"1937":1,"1939":1,"1941":2,"1947":1,"1990":1,"2047":1,"2065":1,"2178":1,"2179":1,"2254":1,"2276":1,"2277":1,"2279":2,"2287":2,"2288":1,"2303":1,"2368":1,"2400":1,"2411":2,"2412":1,"2420":1,"2421":1,"2427":1,"2433":1,"2460":1,"2463":1,"2475":1,"2497":1,"2567":1,"2583":1,"2644":2,"2646":1,"2651":1,"2657":1,"2700":1,"2715":1,"2800":1,"2833":1,"2908":1,"2924":1,"2928":1}}],["overflows",{"2":{"114":1}}],["overflow",{"0":{"11":1},"2":{"11":3,"114":1,"149":1,"236":1,"333":1,"2017":1}}],["ohm",{"2":{"854":2,"857":18,"918":2,"922":18,"953":2,"956":18,"987":2,"990":18,"1021":2,"1024":18,"1055":2,"1058":18,"1089":2,"1092":18,"1123":2,"1126":18,"1157":2,"1160":18}}],["oh",{"0":{"499":1},"1":{"500":1,"501":1,"502":1,"503":1,"504":1}}],["okay",{"2":{"1335":1,"1930":1,"2721":1}}],["ok",{"2":{"387":1,"453":2,"525":1,"539":1,"540":1,"546":1,"549":1,"611":1,"760":1,"1362":2,"1454":2,"1655":1,"2495":1,"2580":4,"2622":4,"2936":1}}],["oq",{"2":{"266":1}}],["o",{"2":{"222":1,"266":1,"277":2,"369":1,"436":1,"437":1,"445":2,"460":1,"490":2,"498":1,"570":2,"587":2,"620":1,"1289":1,"2159":1,"2161":1,"2289":1,"2294":4,"2416":1,"2417":2,"2423":2,"2451":1,"2503":3,"2515":3,"2553":1,"2682":1,"2748":8}}],["odd",{"2":{"1985":1,"2459":1}}],["odelia",{"2":{"211":1}}],["odin",{"2":{"191":1,"211":2}}],["og60",{"2":{"236":1}}],["og",{"2":{"211":1}}],["ogr",{"2":{"211":1}}],["ogurec",{"2":{"143":2}}],["owlab",{"2":{"2567":1}}],["owl8",{"2":{"143":2}}],["owners",{"2":{"2895":1}}],["owned",{"2":{"191":1}}],["owns",{"2":{"2754":1}}],["own",{"0":{"1324":1,"1411":1,"2629":1},"2":{"30":1,"33":1,"37":1,"43":1,"107":1,"113":1,"114":2,"134":1,"172":1,"228":1,"273":1,"284":1,"288":1,"294":1,"307":1,"374":1,"408":1,"520":1,"556":1,"613":1,"616":1,"620":1,"627":1,"659":1,"698":1,"754":1,"1353":1,"1379":1,"1411":2,"1434":1,"1442":1,"1474":2,"1479":2,"1550":1,"1562":1,"1599":1,"1626":1,"1627":1,"1630":1,"1662":1,"1791":1,"2016":1,"2017":1,"2021":1,"2050":2,"2168":2,"2248":2,"2303":1,"2318":1,"2322":1,"2324":1,"2374":1,"2375":1,"2376":1,"2389":1,"2411":2,"2430":1,"2459":1,"2466":1,"2494":1,"2555":1,"2556":1,"2566":1,"2567":1,"2568":1,"2571":1,"2577":1,"2582":1,"2583":1,"2588":1,"2591":1,"2623":1,"2628":1,"2630":1,"2645":1,"2669":1,"2670":1,"2671":1,"2719":3,"2721":2,"2723":1,"2744":1,"2747":1,"2758":1,"2765":2,"2788":1,"2800":1,"2877":1,"2901":1,"2918":1}}],["o3",{"2":{"114":1}}],["opinions",{"2":{"2934":1}}],["opmode",{"2":{"766":2}}],["opqr",{"2":{"266":1}}],["opcode",{"2":{"222":1}}],["opposed",{"2":{"687":1,"1378":1,"2017":1}}],["opposite",{"2":{"202":1,"289":1,"294":1,"1265":1,"1993":1,"2487":1,"2914":9,"2915":2,"2916":2}}],["opportune",{"2":{"263":1}}],["opportunity",{"2":{"203":1}}],["opus",{"2":{"159":2}}],["oper",{"2":{"2509":2,"2515":2}}],["operate",{"2":{"489":1,"1194":2,"1293":1,"1312":1,"1679":1,"2495":1}}],["operates",{"2":{"82":1,"485":1,"698":1,"1287":1,"1930":1,"2262":1,"2757":1,"2879":1}}],["operational",{"2":{"746":1}}],["operation",{"0":{"760":1,"2198":1},"2":{"687":1,"698":1,"763":1,"1193":1,"1196":1,"1198":1,"1202":1,"1250":1,"1346":1,"2006":1,"2627":1,"2673":1,"2697":2,"2750":1}}],["operations",{"0":{"404":1,"481":1},"1":{"405":1,"406":1},"2":{"266":1,"481":1,"489":1,"760":1,"1947":1,"2595":1,"2746":1,"2749":12,"2750":4,"2754":1}}],["operating",{"0":{"419":1,"2465":1,"2663":1},"2":{"176":1,"419":1,"459":1,"1348":1,"1928":1,"1958":1,"2287":1,"2318":1,"2398":1,"2410":2,"2464":1,"2465":1,"2468":1,"2594":1,"2710":1,"2727":1,"2732":1,"2877":1,"2919":1}}],["operators",{"2":{"1375":2}}],["operator",{"2":{"222":1,"285":1,"489":1,"537":1,"763":1,"1375":1}}],["opening",{"0":{"676":1},"2":{"520":2,"529":1,"611":1,"615":1,"617":1,"1444":1,"2050":1,"2219":1,"2248":1,"2607":1,"2644":1,"2719":1}}],["opensource",{"2":{"608":1,"1354":2}}],["opens",{"2":{"430":1,"520":2,"2289":1,"2615":1,"2788":1}}],["openocd",{"0":{"384":1},"2":{"378":1,"384":1,"387":1,"391":3,"2499":3,"2501":1}}],["opendeck",{"2":{"277":1}}],["opendrain",{"2":{"134":1,"769":2}}],["opened",{"2":{"275":1,"347":1,"2052":1,"2662":1,"2724":1}}],["open",{"0":{"1294":1,"2578":1,"2739":1},"2":{"149":1,"243":1,"265":1,"378":1,"380":1,"387":3,"408":1,"446":1,"447":1,"448":1,"458":2,"504":1,"552":1,"610":1,"611":1,"615":1,"616":1,"617":2,"618":1,"642":1,"666":1,"670":1,"674":1,"684":1,"685":2,"758":2,"1194":1,"1294":2,"1335":2,"1336":2,"1338":1,"1339":1,"1375":1,"1634":1,"1956":1,"2050":1,"2249":3,"2250":3,"2253":1,"2284":2,"2411":1,"2425":1,"2427":1,"2453":1,"2459":1,"2470":1,"2474":1,"2495":1,"2497":1,"2510":3,"2515":3,"2543":3,"2550":1,"2557":2,"2560":2,"2567":1,"2575":1,"2578":1,"2600":1,"2607":3,"2609":1,"2615":2,"2621":4,"2626":1,"2627":1,"2632":1,"2633":1,"2646":1,"2652":1,"2656":1,"2657":1,"2662":1,"2665":2,"2666":2,"2721":1,"2729":1,"2739":1,"2743":1,"2751":1,"2843":2,"2888":3,"2892":1,"2919":1}}],["opt",{"0":{"273":1},"2":{"124":3,"199":1,"273":1,"277":1,"571":1,"698":2,"1442":2,"1443":1,"2393":1,"2395":1,"2440":2,"2535":1,"2559":1,"2667":1}}],["optimal",{"2":{"1511":1,"1678":1,"1679":1}}],["optimisation",{"2":{"222":1,"236":1}}],["optimisations",{"2":{"149":1,"2667":2}}],["optimise",{"2":{"191":1}}],["optimized",{"2":{"191":1}}],["optimize",{"2":{"114":1,"134":1,"149":1,"236":1}}],["optimizations",{"0":{"50":1,"64":1,"75":1,"94":1,"214":1,"215":1}}],["optimization",{"2":{"10":2,"50":1,"294":1,"570":1,"2847":1,"2882":1}}],["optical",{"2":{"114":1,"149":3,"176":1,"199":1,"284":1,"285":1,"1999":1,"2014":1}}],["option+right",{"2":{"2324":1}}],["option+left",{"2":{"2324":1}}],["option=com",{"2":{"1316":1}}],["optional",{"0":{"1681":1,"2576":1,"2629":1},"2":{"262":1,"308":1,"338":1,"405":1,"416":1,"417":1,"418":1,"427":1,"428":1,"520":2,"521":1,"567":1,"664":1,"667":4,"1434":5,"1557":3,"1606":1,"1757":1,"1764":1,"1846":1,"1999":4,"2000":9,"2002":4,"2003":17,"2004":3,"2006":10,"2007":5,"2008":3,"2009":2,"2012":4,"2014":7,"2016":15,"2017":3,"2018":5,"2034":5,"2069":1,"2179":1,"2377":1,"2384":1,"2414":1,"2436":1,"2612":1,"2655":1,"2660":1,"2664":4,"2667":2,"2693":1,"2748":1,"2758":4,"2765":3,"2923":1}}],["optionally",{"2":{"211":1,"307":1,"416":1,"417":1,"418":1,"1202":1,"1438":1,"1468":1,"1471":1,"1473":1,"1660":1,"1762":1,"1986":1,"2157":1,"2159":1,"2172":1,"2291":1,"2302":1,"2322":1,"2376":1,"2386":1,"2725":1,"2912":1,"2913":1,"2919":1,"2941":1}}],["options",{"0":{"482":1,"483":1,"559":1,"564":1,"565":1,"568":1,"570":1,"571":1,"572":1,"1383":1,"1437":1,"1672":1,"1743":2,"1791":1,"1846":1,"1954":1,"2034":1,"2069":1,"2268":1,"2269":1,"2271":1,"2369":1,"2411":1,"2412":1,"2716":1,"2717":1,"2898":1},"1":{"566":1,"567":1,"568":1,"2899":1,"2900":1,"2901":1,"2902":1,"2903":1,"2904":1,"2905":1,"2906":1,"2907":1,"2908":1,"2909":1,"2910":1,"2911":1,"2912":1,"2913":1,"2914":1,"2915":1,"2916":1,"2917":1,"2918":1,"2919":1,"2920":1,"2921":1},"2":{"83":1,"109":1,"114":2,"128":1,"134":1,"138":1,"149":1,"152":1,"194":1,"198":1,"206":1,"222":1,"234":1,"236":2,"249":1,"303":1,"304":1,"308":1,"320":1,"391":1,"431":1,"450":1,"451":1,"452":1,"453":1,"458":1,"459":1,"467":1,"505":1,"555":1,"557":1,"560":1,"561":1,"565":1,"571":1,"572":1,"664":1,"666":2,"683":1,"698":2,"751":1,"752":1,"753":1,"1195":1,"1198":1,"1203":1,"1314":1,"1355":1,"1362":2,"1373":2,"1383":1,"1430":2,"1437":1,"1584":1,"1587":1,"1603":1,"1606":1,"1608":1,"1656":1,"1658":1,"1670":1,"1672":1,"1739":1,"1743":3,"1746":5,"1749":1,"1751":2,"1752":3,"1753":1,"1790":2,"1791":1,"1792":1,"1928":1,"1933":1,"1943":1,"1946":1,"1996":2,"2018":3,"2033":1,"2064":1,"2073":1,"2074":1,"2179":1,"2185":1,"2191":1,"2252":1,"2266":1,"2267":1,"2268":1,"2269":1,"2289":1,"2302":1,"2368":1,"2407":2,"2408":2,"2410":4,"2412":2,"2422":1,"2438":1,"2439":2,"2440":1,"2444":1,"2557":1,"2560":1,"2565":1,"2621":1,"2660":3,"2669":1,"2693":1,"2709":3,"2716":2,"2717":2,"2721":3,"2747":1,"2748":2,"2820":1,"2881":1,"2883":1,"2885":1,"2898":2,"2919":1,"2925":1,"2933":1,"2937":1}}],["option",{"0":{"320":1,"665":1,"1752":1},"1":{"666":1,"667":1,"668":1,"669":1,"670":1,"671":1},"2":{"14":1,"32":1,"50":1,"74":1,"75":1,"87":1,"103":1,"114":3,"126":1,"132":1,"134":2,"176":1,"191":1,"194":1,"195":1,"211":2,"222":1,"234":1,"236":1,"246":1,"249":2,"266":1,"271":1,"294":1,"297":1,"308":1,"328":2,"521":1,"562":1,"666":2,"671":1,"1287":1,"1356":1,"1363":1,"1411":1,"1438":1,"1443":1,"1474":1,"1486":1,"1487":1,"1587":1,"1591":2,"1662":1,"1682":1,"1743":1,"1746":5,"1749":1,"1751":1,"1752":6,"1754":1,"1755":2,"1940":1,"2015":1,"2018":4,"2258":1,"2266":2,"2267":3,"2269":1,"2271":5,"2273":1,"2290":1,"2302":5,"2324":1,"2410":4,"2422":1,"2440":8,"2495":1,"2507":2,"2515":2,"2576":1,"2622":1,"2660":4,"2702":1,"2715":1,"2725":1,"2747":1,"2750":2,"2783":1,"2882":1,"2908":5,"2909":3,"2914":2}}],["ou",{"2":{"2370":7,"2521":7}}],["ould",{"2":{"2170":1}}],["ouput",{"2":{"1521":3}}],["our",{"2":{"76":1,"114":2,"130":1,"164":1,"167":1,"379":1,"387":1,"390":1,"408":1,"487":1,"489":1,"490":1,"502":1,"503":2,"504":1,"520":1,"522":3,"524":1,"529":1,"537":2,"546":1,"550":2,"552":1,"587":1,"590":1,"612":2,"614":2,"617":1,"619":3,"629":1,"633":1,"663":1,"674":1,"698":1,"1333":1,"1335":1,"1425":1,"1450":2,"1533":1,"2311":1,"2312":3,"2422":1,"2432":1,"2459":2,"2474":2,"2551":4,"2554":2,"2572":1,"2627":1,"2632":1,"2724":1,"2787":6,"2788":4,"2793":1,"2840":1,"2889":2,"2890":1,"2930":5,"2931":2,"2932":3}}],["outlines",{"2":{"2700":1}}],["outlined",{"2":{"2269":1,"2702":1}}],["outs",{"2":{"2695":1}}],["outside",{"2":{"22":1,"182":1,"491":1,"527":1,"1197":1,"1378":1,"1425":1,"1795":1,"2009":1,"2021":1,"2266":1,"2583":1,"2917":1,"2930":1}}],["outright",{"2":{"2569":1,"2570":1,"2656":1,"2674":1,"2885":1}}],["outreach",{"2":{"312":1}}],["outbound",{"2":{"2270":1}}],["outer",{"2":{"1805":1,"2008":1,"2180":1,"2546":1,"2862":1,"2915":1}}],["out3",{"2":{"802":2,"828":2}}],["out2",{"2":{"802":2,"828":2}}],["out1",{"2":{"802":3,"828":3}}],["outwardly",{"2":{"198":1}}],["outdated",{"2":{"149":1,"308":2,"408":1,"663":1,"2895":1}}],["outputted",{"2":{"2721":1}}],["outputting",{"2":{"489":1,"491":1,"611":1}}],["output=",{"2":{"222":1}}],["output+keymap",{"2":{"222":1}}],["outputs",{"2":{"93":1,"637":1,"1300":1,"1468":1,"2370":1,"2410":1,"2421":1,"2886":2}}],["outputselect",{"2":{"50":1,"149":1}}],["output",{"0":{"2602":1},"2":{"10":2,"65":1,"75":1,"92":1,"99":1,"114":5,"119":1,"149":2,"176":1,"188":1,"191":4,"199":3,"203":1,"211":2,"222":1,"236":1,"243":3,"249":1,"285":1,"294":1,"328":1,"372":1,"405":1,"436":1,"437":1,"445":1,"460":1,"489":1,"490":1,"492":2,"498":2,"551":1,"559":1,"563":2,"633":6,"637":1,"643":1,"685":1,"718":3,"731":1,"734":3,"746":1,"758":11,"802":1,"805":4,"828":1,"831":4,"860":1,"863":4,"890":1,"893":4,"925":1,"928":4,"959":1,"962":4,"993":1,"996":4,"1027":1,"1030":4,"1061":1,"1064":4,"1095":1,"1098":4,"1129":1,"1132":4,"1163":1,"1166":4,"1206":1,"1216":1,"1219":4,"1294":1,"1300":3,"1319":3,"1326":1,"1328":1,"1330":1,"1443":3,"1471":1,"1475":1,"1485":1,"1521":2,"1554":1,"1555":1,"1559":1,"1616":1,"1618":1,"1664":1,"1666":2,"1667":2,"1669":1,"1766":1,"1767":1,"1943":1,"1948":1,"1993":2,"1999":1,"2029":1,"2206":1,"2207":1,"2265":1,"2281":1,"2283":1,"2291":1,"2322":2,"2370":11,"2375":1,"2377":1,"2384":1,"2410":5,"2411":1,"2421":1,"2495":1,"2501":1,"2521":11,"2577":1,"2580":2,"2602":1,"2608":1,"2622":1,"2627":1,"2677":1,"2682":1,"2747":3,"2748":23,"2788":1,"2847":1,"2869":1,"2903":1,"2907":1,"2940":1,"2941":1}}],["out",{"0":{"123":1,"323":1,"1821":1,"2610":1,"2628":1,"2881":1},"1":{"2629":1,"2630":1,"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"6":1,"10":1,"21":1,"49":1,"50":1,"93":1,"113":1,"114":3,"119":1,"124":1,"133":2,"134":5,"149":2,"160":1,"176":1,"191":4,"194":1,"199":4,"228":1,"236":1,"249":1,"288":1,"328":1,"333":2,"334":1,"377":1,"391":1,"412":1,"419":1,"421":1,"427":1,"430":1,"461":1,"491":1,"497":2,"529":1,"535":1,"549":1,"562":4,"567":1,"584":1,"586":1,"614":1,"618":2,"645":2,"663":2,"677":1,"711":1,"716":1,"743":1,"746":1,"755":1,"1206":1,"1317":1,"1362":2,"1407":1,"1422":3,"1443":1,"1447":1,"1450":2,"1454":2,"1468":1,"1478":1,"1592":1,"1616":1,"1627":1,"1805":1,"1843":13,"1844":1,"1943":4,"1948":3,"1958":1,"2003":1,"2013":1,"2021":1,"2029":1,"2063":20,"2066":1,"2069":1,"2183":1,"2195":1,"2208":1,"2218":1,"2219":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2231":1,"2233":1,"2235":1,"2237":1,"2258":1,"2270":3,"2271":1,"2272":1,"2273":1,"2274":1,"2283":3,"2310":1,"2313":1,"2403":4,"2410":3,"2422":1,"2427":1,"2459":1,"2473":1,"2474":1,"2476":1,"2509":2,"2515":2,"2570":1,"2572":1,"2578":1,"2591":1,"2610":2,"2619":1,"2625":1,"2630":1,"2633":3,"2664":1,"2688":1,"2695":1,"2703":1,"2719":2,"2721":3,"2747":1,"2748":2,"2749":1,"2887":2,"2888":2,"2900":1,"2911":1,"2923":1,"2928":1,"2929":1,"2937":3,"2942":1}}],["otype",{"2":{"769":2}}],["otaku",{"2":{"143":4}}],["otg2",{"2":{"2702":1}}],["otg1",{"2":{"176":1,"2702":1}}],["otg",{"2":{"65":1,"191":1,"294":1}}],["others",{"2":{"114":1,"134":1,"149":1,"160":1,"176":1,"191":1,"199":1,"211":1,"222":1,"236":1,"263":1,"277":1,"285":1,"294":1,"308":1,"328":1,"333":1,"541":1,"616":1,"920":1,"1091":1,"1125":1,"1196":1,"1296":2,"1373":1,"1420":1,"1438":1,"1442":1,"1474":1,"1484":1,"1497":1,"1559":1,"2178":1,"2408":1,"2424":1,"2626":1,"2698":1}}],["other",{"0":{"419":1,"568":1,"1352":1,"1942":1,"2280":1,"2429":1,"2565":1,"2663":1,"2909":1},"2":{"30":1,"33":1,"50":1,"98":1,"114":2,"128":1,"134":2,"142":1,"152":2,"153":1,"163":1,"173":1,"174":1,"175":1,"176":2,"191":2,"194":8,"199":1,"201":2,"206":2,"210":1,"213":1,"220":1,"229":1,"234":1,"244":1,"288":1,"294":1,"307":1,"308":1,"320":1,"334":2,"373":1,"387":2,"390":1,"397":1,"419":1,"487":1,"503":1,"505":1,"520":1,"537":1,"548":1,"552":1,"555":1,"558":1,"560":1,"562":5,"598":1,"602":1,"605":1,"617":1,"629":1,"643":1,"654":1,"655":1,"663":1,"666":2,"675":1,"685":1,"713":1,"720":1,"743":1,"763":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1200":1,"1201":1,"1210":1,"1245":1,"1258":1,"1261":1,"1291":1,"1297":1,"1310":2,"1314":1,"1316":2,"1330":1,"1340":2,"1346":1,"1375":6,"1378":1,"1411":1,"1413":2,"1416":2,"1419":2,"1421":2,"1422":3,"1424":1,"1425":1,"1441":2,"1443":1,"1444":1,"1446":1,"1450":5,"1452":1,"1468":1,"1471":1,"1472":1,"1479":1,"1482":1,"1493":2,"1499":1,"1522":1,"1523":1,"1526":1,"1527":2,"1552":2,"1556":1,"1587":3,"1613":1,"1614":2,"1624":1,"1626":1,"1633":1,"1656":1,"1665":1,"1698":1,"1747":1,"1749":1,"1752":1,"1754":1,"1755":1,"1757":1,"1759":1,"1761":1,"1765":1,"1807":1,"1917":1,"1929":1,"1946":1,"1996":2,"2019":1,"2042":1,"2044":2,"2159":1,"2162":1,"2163":1,"2164":1,"2166":1,"2167":1,"2168":1,"2170":1,"2189":2,"2191":1,"2208":1,"2210":1,"2245":1,"2252":2,"2253":1,"2254":1,"2268":1,"2285":1,"2286":1,"2287":2,"2310":1,"2311":1,"2312":1,"2323":1,"2324":1,"2372":1,"2410":1,"2411":2,"2412":1,"2416":1,"2421":1,"2427":1,"2432":1,"2438":1,"2442":1,"2451":1,"2459":2,"2489":1,"2496":1,"2498":1,"2513":1,"2528":1,"2548":3,"2549":1,"2551":1,"2559":1,"2566":1,"2567":2,"2568":4,"2569":1,"2582":1,"2630":1,"2643":1,"2646":2,"2657":1,"2664":1,"2674":1,"2676":1,"2683":1,"2693":1,"2695":1,"2704":1,"2719":3,"2721":2,"2722":5,"2744":1,"2749":11,"2750":1,"2776":1,"2778":1,"2810":1,"2818":1,"2830":1,"2845":1,"2847":2,"2879":1,"2888":1,"2894":1,"2895":2,"2896":1,"2900":1,"2902":6,"2904":2,"2905":3,"2906":2,"2908":4,"2909":7,"2914":6,"2915":3,"2916":7,"2918":1,"2919":1,"2921":1,"2927":4,"2938":1}}],["otherwise",{"2":{"28":1,"31":1,"209":1,"383":1,"405":1,"540":1,"615":1,"624":1,"625":1,"650":1,"651":1,"654":1,"671":1,"684":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1250":1,"1255":1,"1258":1,"1261":1,"1294":1,"1422":1,"1564":1,"1614":1,"1655":1,"1723":1,"1751":1,"1859":1,"1861":1,"2063":1,"2085":1,"2087":1,"2160":1,"2192":1,"2271":1,"2293":1,"2302":2,"2323":1,"2370":1,"2383":1,"2386":1,"2388":1,"2391":1,"2411":1,"2501":1,"2521":1,"2605":3,"2769":1,"2776":1,"2910":1,"2913":1,"2914":1,"2916":1,"2919":1}}],["omit",{"2":{"685":1,"751":2,"1619":1,"2495":1}}],["omitted",{"2":{"535":1,"559":2,"568":1,"642":1,"2400":1}}],["omkbd",{"2":{"143":12,"149":2}}],["omrontkl",{"2":{"57":2}}],["omnikey",{"2":{"37":2,"159":2,"160":1}}],["oc7",{"2":{"1919":1,"2532":1}}],["oc6",{"2":{"1919":1,"2532":1}}],["oc5",{"2":{"1919":1,"2532":1}}],["oc4",{"2":{"1919":1,"2532":1}}],["oc3",{"2":{"1919":1,"2532":1}}],["oc2",{"2":{"1919":1,"1920":1,"2532":1}}],["oc1",{"2":{"1919":1,"2532":1}}],["oc0",{"2":{"1919":1,"2532":1}}],["ocn1",{"2":{"1919":1,"2532":1}}],["ocn2",{"2":{"1919":1,"2532":1}}],["ocean",{"2":{"576":1,"584":1}}],["oceanographer",{"2":{"211":1}}],["occupied",{"2":{"1450":1}}],["occupy",{"2":{"1245":1}}],["occurrence",{"2":{"2901":1}}],["occurred",{"2":{"371":1,"645":3,"1407":1,"1410":4}}],["occurs",{"2":{"94":1,"655":1,"751":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1258":1,"1261":1,"1411":1,"2268":2,"2271":1,"2757":1}}],["occur",{"2":{"11":1,"49":1,"613":1,"637":2,"1674":1,"2021":1,"2023":1,"2269":1,"2270":1,"2583":1,"2693":1,"2750":1}}],["occasionally",{"2":{"1351":1,"1523":1,"2566":1}}],["occasional",{"2":{"654":1}}],["occasion",{"2":{"408":1,"1497":1}}],["ocd",{"2":{"191":1}}],["octet",{"2":{"2773":8}}],["octets",{"2":{"2766":1,"2772":1,"2773":3}}],["octd",{"2":{"1913":1,"1919":1,"2532":1}}],["octu",{"2":{"1913":1,"1919":1,"2532":1}}],["octave",{"2":{"1484":1,"1913":1,"1919":96,"1920":1,"2532":96}}],["octaves",{"2":{"1484":1}}],["octagon",{"2":{"249":1,"266":1,"308":1}}],["oct",{"2":{"55":2}}],["oscillator",{"2":{"1943":1}}],["oses",{"2":{"1754":1,"1755":1,"1756":1,"1955":1}}],["osdn",{"2":{"421":1}}],["osx",{"0":{"1354":1,"1355":1,"1358":1},"2":{"188":2,"191":2,"1354":2,"1355":2,"1356":1,"1358":1}}],["os",{"0":{"1372":1,"1667":1,"1950":1,"1953":1},"1":{"1951":1,"1952":1,"1953":1,"1954":1,"1955":1,"1956":1,"1957":1},"2":{"65":1,"160":2,"199":1,"211":1,"249":3,"285":3,"308":1,"380":1,"419":2,"421":1,"1329":1,"1453":1,"1511":1,"1587":2,"1638":3,"1641":1,"1667":1,"1751":1,"1756":1,"1950":4,"1951":10,"1952":14,"1953":1,"1954":5,"1955":6,"1956":4,"2216":1,"2297":1,"2317":1,"2324":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":2,"2391":1,"2393":2,"2395":2,"2397":2,"2411":1,"2459":1,"2461":1,"2468":4,"2510":1,"2540":31,"2544":1,"2592":1,"2612":1,"2644":31,"2668":1,"2727":1,"2731":1,"2732":1,"2839":1,"2873":2,"2877":1}}],["osms",{"2":{"211":1}}],["osm",{"2":{"38":1,"236":1,"1443":3,"1588":1,"1735":1,"2540":1,"2643":1,"2644":6,"2645":1}}],["osl",{"2":{"38":1,"199":1,"236":1,"294":1,"1416":1,"1759":1,"2031":1,"2540":1,"2644":2,"2645":1}}],["olkb",{"0":{"2775":1,"2891":1},"1":{"2776":1,"2777":1,"2778":1,"2779":1},"2":{"608":1,"674":3,"2313":1,"2376":2,"2428":1,"2474":1,"2891":1}}],["olly",{"2":{"211":1,"249":2,"308":1}}],["oledunder",{"2":{"55":1}}],["oledback",{"2":{"55":1}}],["oleds",{"2":{"31":1,"34":1,"114":1,"153":1,"229":1,"230":1,"232":1,"248":1,"2749":1,"2883":1}}],["oled",{"0":{"33":1,"125":1,"210":1,"220":1,"230":1,"232":1,"1936":1,"1939":1,"1946":1,"1948":1,"2454":1,"2886":1},"1":{"34":1,"1937":1,"1938":1,"1939":1,"1940":1,"1941":1,"1942":1,"1943":1,"1944":1,"1945":1,"1946":1,"1947":2,"1948":1,"1949":1},"2":{"30":1,"31":11,"33":2,"34":8,"49":1,"55":11,"62":1,"63":1,"92":2,"93":2,"114":4,"125":6,"128":2,"134":7,"153":1,"176":4,"191":3,"210":4,"211":2,"220":3,"221":2,"222":2,"230":4,"232":4,"236":3,"248":2,"249":2,"308":1,"328":2,"332":6,"568":2,"762":1,"1243":1,"1529":2,"1937":2,"1938":1,"1939":15,"1940":5,"1941":6,"1942":15,"1943":28,"1944":2,"1945":10,"1946":29,"1947":12,"1948":77,"1949":17,"2269":6,"2428":1,"2441":1,"2451":1,"2454":2,"2721":1,"2746":7,"2749":1,"2873":2,"2886":5}}],["older",{"2":{"157":1,"394":1,"1313":1,"1329":1,"2159":1,"2183":1,"2376":1,"2550":1,"2551":1,"2668":1}}],["old",{"0":{"220":1},"2":{"10":1,"22":1,"37":1,"38":1,"43":1,"46":1,"67":1,"86":1,"102":1,"122":1,"125":1,"134":1,"143":1,"149":2,"156":1,"157":1,"159":1,"168":1,"173":1,"174":1,"181":1,"182":2,"183":3,"185":1,"191":1,"194":1,"195":1,"197":1,"206":1,"207":1,"217":1,"219":1,"220":1,"221":6,"222":3,"226":1,"232":2,"234":1,"236":1,"241":1,"243":1,"244":1,"253":1,"262":1,"270":1,"271":1,"281":1,"291":1,"300":1,"311":1,"322":1,"410":2,"520":1,"659":1,"1351":1,"1379":1,"1616":1,"1949":1,"2019":2,"2021":1,"2183":1,"2253":1,"2258":1,"2303":1,"2430":1,"2629":2,"2719":1,"2886":1}}],["obligations",{"2":{"2743":1}}],["obliterated75",{"2":{"211":1}}],["obtain",{"2":{"1979":1}}],["obtaining",{"2":{"414":1}}],["objs",{"2":{"2410":1,"2439":1}}],["obj",{"2":{"671":2}}],["objects",{"2":{"431":1,"524":1,"541":2,"1447":2,"1448":1,"2403":8,"2788":1,"2858":1,"2861":1}}],["objective",{"2":{"379":1,"2382":1}}],["object",{"0":{"1448":1},"2":{"73":1,"236":1,"431":1,"453":1,"467":1,"487":2,"490":2,"541":1,"542":1,"546":1,"666":1,"668":1,"1448":1,"2050":1,"2410":2,"2750":2,"2788":7,"2789":2,"2858":1,"2861":1,"2862":4,"2864":2,"2870":1,"2871":2,"2934":1}}],["observe",{"2":{"614":1,"1516":1}}],["obsolete",{"0":{"2253":1},"2":{"3":1,"15":1}}],["obviously",{"2":{"1497":1,"1547":1,"2877":1}}],["obvious",{"2":{"249":3,"520":2,"522":2,"534":1,"617":1,"2445":1,"2459":1,"2569":1}}],["obfuscate",{"2":{"199":1}}],["obosob",{"2":{"143":2,"149":2}}],["obdev",{"2":{"21":1,"1316":1}}],["onboard",{"2":{"649":1,"743":1,"745":1,"1289":1,"1290":1,"1291":1,"2179":2,"2208":1,"2676":1,"2684":1}}],["onto",{"2":{"526":1,"1333":1,"1362":1,"1526":1,"2418":1,"2422":1,"2425":1,"2477":1,"2481":1,"2490":1,"2497":1,"2707":1,"2894":1,"2901":1}}],["onyx",{"2":{"211":1}}],["online",{"2":{"182":1,"2568":1,"2572":1,"2582":1,"2890":1}}],["only=true",{"2":{"498":3}}],["only",{"0":{"507":1,"589":1,"2453":1,"2586":1},"2":{"4":1,"14":1,"69":1,"83":1,"87":1,"98":1,"103":2,"107":1,"114":1,"116":1,"120":1,"126":2,"134":1,"169":1,"174":1,"184":1,"191":2,"194":3,"201":1,"221":3,"222":1,"233":1,"236":2,"244":1,"266":1,"303":1,"306":1,"308":2,"315":1,"317":1,"328":1,"373":1,"391":1,"396":2,"397":1,"399":1,"400":2,"401":2,"403":2,"405":2,"406":2,"408":1,"410":1,"421":2,"422":1,"423":1,"432":3,"433":1,"457":2,"498":1,"521":1,"546":1,"553":1,"556":1,"562":1,"567":1,"568":2,"573":1,"637":1,"663":1,"673":1,"677":1,"687":1,"692":1,"693":1,"698":2,"712":1,"715":1,"716":1,"717":1,"718":1,"724":1,"748":1,"754":1,"765":1,"769":1,"802":1,"805":4,"809":1,"811":1,"813":1,"815":1,"817":1,"819":1,"828":1,"831":4,"836":1,"838":1,"840":1,"842":1,"844":1,"846":1,"860":1,"863":4,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"890":1,"893":4,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"918":1,"921":1,"925":1,"928":4,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"953":1,"955":1,"959":1,"962":4,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"987":1,"989":1,"993":1,"996":4,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1021":1,"1023":1,"1027":1,"1030":4,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1061":1,"1064":4,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1095":1,"1098":4,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1129":1,"1132":4,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1163":1,"1166":4,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1191":1,"1194":2,"1195":1,"1198":2,"1201":2,"1202":1,"1216":1,"1219":4,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1247":1,"1268":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":3,"1294":1,"1296":1,"1297":1,"1299":1,"1300":3,"1310":1,"1313":1,"1324":2,"1329":1,"1340":1,"1348":1,"1353":1,"1375":1,"1377":2,"1386":1,"1389":1,"1392":1,"1393":2,"1395":1,"1404":1,"1407":2,"1410":1,"1412":2,"1413":3,"1416":4,"1417":1,"1419":1,"1434":1,"1442":1,"1448":1,"1451":1,"1471":1,"1475":1,"1477":1,"1478":1,"1482":1,"1497":1,"1512":2,"1521":1,"1522":1,"1526":1,"1547":1,"1552":1,"1559":1,"1560":1,"1562":1,"1563":1,"1564":1,"1583":1,"1591":1,"1598":1,"1605":1,"1606":6,"1609":1,"1613":1,"1614":1,"1621":1,"1660":1,"1661":1,"1664":2,"1698":1,"1735":1,"1751":2,"1752":1,"1754":1,"1758":1,"1806":1,"1840":1,"1847":1,"1859":1,"1861":1,"1913":1,"1928":1,"1931":1,"1934":1,"1947":3,"1954":1,"1986":1,"1997":1,"2008":1,"2016":1,"2017":1,"2018":5,"2019":1,"2020":1,"2021":2,"2023":1,"2025":1,"2028":1,"2032":2,"2045":1,"2060":1,"2070":1,"2073":1,"2085":1,"2087":1,"2165":1,"2183":1,"2189":1,"2212":1,"2215":1,"2242":1,"2246":1,"2247":1,"2268":2,"2269":2,"2270":1,"2273":1,"2290":1,"2291":1,"2293":1,"2302":4,"2323":1,"2324":1,"2367":1,"2368":1,"2370":4,"2372":1,"2374":1,"2379":1,"2381":1,"2393":1,"2395":1,"2397":1,"2408":1,"2416":1,"2418":1,"2424":1,"2434":1,"2438":2,"2441":1,"2446":1,"2449":1,"2459":3,"2463":2,"2467":1,"2492":1,"2514":1,"2521":3,"2560":1,"2566":1,"2567":3,"2569":1,"2572":1,"2576":1,"2583":1,"2606":1,"2611":1,"2613":1,"2630":1,"2633":1,"2646":1,"2660":1,"2666":1,"2668":1,"2677":2,"2683":1,"2684":2,"2689":1,"2695":1,"2697":2,"2703":1,"2704":1,"2710":1,"2719":1,"2721":3,"2722":1,"2724":1,"2726":1,"2728":3,"2729":2,"2731":1,"2734":2,"2737":2,"2742":1,"2747":1,"2748":2,"2749":2,"2758":2,"2763":2,"2769":1,"2776":1,"2788":1,"2789":1,"2822":1,"2846":1,"2850":1,"2876":3,"2879":2,"2895":1,"2902":1,"2913":1,"2915":1,"2917":1,"2921":1,"2932":1,"2933":1,"2937":1,"2938":1}}],["onkey",{"2":{"176":1}}],["ongoing",{"2":{"160":1,"663":1,"2721":1,"2895":1}}],["onces",{"2":{"199":1,"211":1}}],["once",{"2":{"114":1,"119":1,"134":1,"152":1,"231":1,"245":1,"303":1,"320":1,"328":1,"372":1,"387":1,"421":1,"459":2,"487":1,"520":1,"539":1,"655":1,"657":1,"714":2,"715":2,"718":2,"750":1,"765":2,"769":1,"1192":1,"1200":2,"1201":2,"1245":2,"1247":1,"1266":1,"1268":1,"1296":2,"1300":2,"1310":1,"1313":1,"1329":1,"1402":1,"1403":1,"1416":1,"1421":1,"1443":3,"1492":1,"1496":1,"1497":1,"1516":1,"1562":2,"1563":2,"1587":1,"1596":1,"1698":1,"1751":1,"1799":1,"1803":1,"1805":1,"1844":1,"1930":1,"1947":2,"1954":1,"1984":1,"1990":1,"2021":1,"2023":1,"2050":2,"2066":1,"2173":1,"2191":1,"2193":1,"2273":1,"2286":1,"2291":1,"2301":1,"2302":4,"2305":1,"2324":1,"2372":1,"2379":1,"2381":2,"2403":2,"2409":2,"2411":1,"2420":1,"2425":1,"2428":1,"2459":1,"2465":1,"2549":1,"2571":1,"2588":1,"2589":2,"2590":1,"2607":1,"2611":1,"2615":1,"2643":1,"2652":1,"2653":1,"2664":1,"2666":1,"2667":1,"2719":1,"2750":2,"2760":1,"2767":1,"2787":2,"2788":1,"2826":1,"2835":1,"2901":1,"2919":1,"2930":1,"2942":1}}],["ones",{"2":{"243":1,"266":1,"331":1,"428":1,"1293":1,"1351":1,"1479":1,"1483":1,"1609":1,"1616":1,"1737":1,"2014":1,"2067":2,"2205":2,"2212":1,"2215":1,"2302":1,"2426":1,"2427":1,"2447":1,"2467":1,"2662":1,"2744":1,"2750":1,"2877":1,"2942":1}}],["oneshots",{"2":{"2883":1}}],["oneshot",{"0":{"2827":1},"2":{"38":2,"63":2,"112":2,"134":1,"160":1,"188":1,"191":2,"211":1,"266":1,"560":1,"562":4,"568":1,"1375":8,"1443":2,"2269":2,"2374":1,"2643":3,"2644":8,"2645":19,"2867":1,"2883":1}}],["onehand",{"2":{"114":1}}],["onekey",{"2":{"49":1,"191":3,"211":1,"222":1,"308":1,"2393":1,"2395":1,"2397":1,"2667":2,"2722":1}}],["one",{"0":{"351":1,"352":1,"1308":1,"1349":1,"1382":1,"1823":1,"2308":1,"2540":1,"2643":1,"2867":1},"1":{"352":1,"353":1,"1309":1,"1824":1,"1825":1,"2644":1,"2645":1},"2":{"37":1,"45":1,"50":1,"55":1,"75":1,"82":1,"89":1,"93":2,"98":1,"107":1,"114":1,"154":1,"156":1,"157":1,"160":4,"163":1,"176":1,"188":1,"191":1,"194":3,"196":1,"199":2,"204":1,"211":2,"213":1,"231":1,"241":1,"253":1,"256":1,"262":1,"268":1,"270":1,"276":1,"279":1,"281":1,"333":1,"338":1,"347":1,"351":1,"352":1,"373":1,"397":1,"403":1,"408":1,"427":1,"431":1,"475":1,"520":2,"524":1,"526":1,"529":1,"534":2,"535":1,"558":1,"559":7,"560":1,"562":1,"565":1,"566":1,"572":3,"573":1,"586":1,"587":2,"594":1,"597":2,"613":1,"614":1,"617":1,"637":1,"669":1,"683":1,"685":2,"695":1,"698":1,"712":3,"713":1,"714":1,"715":1,"716":1,"718":1,"719":1,"802":1,"826":1,"828":1,"855":1,"860":1,"887":1,"890":1,"919":1,"920":1,"925":1,"954":1,"959":1,"988":1,"993":1,"1022":1,"1027":1,"1056":1,"1061":1,"1090":1,"1091":1,"1095":1,"1124":1,"1125":1,"1129":1,"1158":1,"1163":1,"1189":3,"1191":2,"1194":2,"1204":1,"1205":1,"1214":1,"1216":1,"1244":1,"1284":1,"1289":2,"1308":1,"1310":1,"1312":1,"1349":1,"1351":1,"1353":1,"1362":1,"1365":1,"1375":12,"1378":2,"1382":1,"1387":1,"1389":1,"1393":3,"1407":4,"1410":3,"1415":1,"1416":3,"1417":1,"1419":1,"1420":2,"1427":1,"1434":1,"1435":2,"1436":2,"1444":1,"1448":3,"1450":1,"1451":2,"1468":5,"1471":1,"1472":2,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"1478":4,"1480":2,"1494":1,"1495":1,"1496":1,"1497":3,"1512":2,"1513":1,"1519":1,"1527":3,"1532":2,"1533":2,"1550":1,"1552":1,"1564":1,"1588":3,"1591":3,"1603":2,"1611":2,"1613":3,"1624":1,"1655":1,"1660":1,"1664":1,"1675":1,"1735":2,"1751":1,"1752":1,"1755":2,"1757":1,"1759":2,"1768":1,"1770":1,"1792":1,"1801":1,"1805":1,"1807":3,"1821":1,"1847":1,"1929":1,"1946":2,"1947":1,"1948":1,"1951":1,"1985":1,"1996":1,"1997":2,"2002":3,"2013":1,"2017":2,"2018":3,"2020":1,"2030":2,"2031":1,"2042":1,"2070":1,"2173":1,"2248":1,"2249":1,"2254":1,"2258":2,"2265":2,"2267":1,"2268":2,"2270":1,"2271":1,"2288":1,"2293":3,"2294":2,"2295":1,"2297":1,"2301":3,"2303":4,"2308":1,"2310":3,"2312":1,"2322":1,"2323":1,"2377":1,"2384":1,"2393":1,"2395":1,"2397":1,"2400":2,"2410":2,"2411":1,"2415":1,"2416":3,"2418":1,"2421":2,"2422":1,"2425":1,"2426":1,"2459":6,"2467":1,"2475":2,"2476":1,"2483":1,"2490":1,"2496":1,"2499":1,"2540":37,"2544":1,"2552":2,"2554":1,"2560":1,"2567":1,"2569":1,"2572":1,"2579":1,"2584":1,"2594":1,"2595":1,"2596":1,"2607":2,"2627":1,"2629":1,"2630":1,"2643":9,"2644":40,"2645":7,"2662":1,"2684":1,"2698":1,"2702":1,"2704":1,"2707":1,"2721":2,"2747":3,"2750":2,"2768":1,"2770":1,"2776":1,"2787":1,"2788":1,"2834":1,"2846":1,"2847":2,"2849":1,"2850":2,"2851":1,"2852":1,"2857":2,"2864":2,"2865":1,"2867":1,"2868":1,"2870":2,"2871":2,"2873":2,"2874":1,"2876":1,"2878":2,"2879":1,"2886":1,"2887":1,"2896":1,"2900":2,"2908":1,"2910":1,"2915":2,"2916":1,"2920":1,"2933":1,"2936":1,"2937":1,"2941":1}}],["on",{"0":{"14":1,"235":1,"625":1,"717":1,"1312":1,"1314":1,"1330":1,"1353":1,"1357":1,"1358":1,"1551":1,"1591":1,"1647":1,"1649":1,"1651":1,"1702":1,"1918":1,"1971":1,"2042":1,"2192":1,"2290":1,"2305":2,"2308":1,"2309":2,"2402":1,"2412":1,"2419":1,"2585":1,"2629":1,"2909":1},"1":{"1313":1,"1314":1,"1703":1,"1972":1,"1973":1},"2":{"1":1,"2":1,"10":1,"11":3,"14":2,"24":1,"25":2,"28":2,"30":1,"31":1,"33":1,"34":2,"49":8,"50":4,"51":1,"65":3,"69":1,"73":4,"74":1,"77":1,"90":1,"92":2,"93":3,"99":1,"105":6,"107":1,"113":2,"114":23,"118":1,"123":2,"124":2,"131":1,"133":1,"134":15,"138":1,"145":1,"149":2,"152":1,"153":4,"157":1,"158":3,"160":4,"164":1,"169":2,"176":8,"182":2,"190":1,"191":15,"194":10,"195":1,"198":1,"199":7,"201":1,"202":1,"206":4,"209":2,"210":1,"211":7,"213":3,"215":2,"222":7,"228":2,"231":4,"233":1,"236":11,"240":1,"247":2,"249":4,"255":1,"263":1,"266":3,"276":2,"277":4,"279":1,"284":2,"289":1,"294":3,"302":1,"303":2,"307":1,"312":1,"320":1,"328":2,"333":2,"334":1,"335":1,"350":1,"359":1,"364":1,"373":2,"377":2,"378":1,"379":1,"387":8,"391":2,"392":1,"393":1,"397":1,"399":1,"400":1,"401":1,"405":2,"406":1,"408":2,"411":1,"412":2,"431":1,"442":1,"443":1,"446":1,"447":1,"448":2,"456":1,"457":2,"459":1,"464":1,"465":1,"466":1,"468":1,"487":1,"493":1,"503":1,"510":1,"520":1,"521":4,"534":1,"535":1,"546":1,"548":1,"552":1,"553":1,"559":9,"560":1,"562":10,"563":5,"568":8,"572":1,"576":1,"577":1,"578":1,"587":1,"592":1,"597":5,"598":1,"608":3,"610":1,"611":2,"612":1,"613":4,"614":1,"617":8,"619":1,"624":1,"631":1,"635":1,"637":6,"641":1,"642":1,"646":1,"647":1,"654":1,"659":1,"662":1,"663":1,"664":1,"666":1,"670":1,"673":1,"674":2,"676":1,"682":2,"683":3,"684":1,"687":3,"690":1,"692":3,"695":1,"696":2,"698":1,"713":2,"717":3,"718":3,"723":1,"730":1,"731":5,"743":4,"746":1,"749":1,"750":1,"751":5,"752":1,"753":2,"755":1,"756":1,"758":2,"763":1,"764":1,"765":1,"773":1,"782":1,"785":1,"788":1,"791":1,"794":1,"801":1,"802":1,"826":1,"827":1,"828":2,"855":1,"857":2,"859":1,"860":3,"887":1,"888":1,"889":1,"890":3,"919":1,"922":2,"924":1,"925":3,"954":1,"956":2,"958":1,"959":3,"988":1,"990":2,"992":1,"993":3,"1022":1,"1024":2,"1026":1,"1027":3,"1056":1,"1058":2,"1060":1,"1061":3,"1090":1,"1092":2,"1094":1,"1095":3,"1124":1,"1126":2,"1128":1,"1129":3,"1158":1,"1160":2,"1162":1,"1163":3,"1190":1,"1192":2,"1193":1,"1195":1,"1196":1,"1197":2,"1198":2,"1200":3,"1201":4,"1202":2,"1214":1,"1215":1,"1216":3,"1244":1,"1249":4,"1265":1,"1269":1,"1280":1,"1285":1,"1286":1,"1287":1,"1291":3,"1293":1,"1296":1,"1297":1,"1300":2,"1308":1,"1310":1,"1313":1,"1315":1,"1317":2,"1319":1,"1329":1,"1330":1,"1336":1,"1337":1,"1345":2,"1346":1,"1347":1,"1348":2,"1350":2,"1353":1,"1355":4,"1356":1,"1358":3,"1362":2,"1374":3,"1375":3,"1376":1,"1377":1,"1378":1,"1379":1,"1389":4,"1390":3,"1392":1,"1393":1,"1395":2,"1402":2,"1404":1,"1407":3,"1410":10,"1413":3,"1415":1,"1416":5,"1420":1,"1421":3,"1422":24,"1424":1,"1425":6,"1435":2,"1436":2,"1441":1,"1442":2,"1443":6,"1452":2,"1456":2,"1468":4,"1470":1,"1471":1,"1474":1,"1477":3,"1479":5,"1480":6,"1482":1,"1484":4,"1487":4,"1489":10,"1491":1,"1493":2,"1497":2,"1511":1,"1512":3,"1513":1,"1515":3,"1516":1,"1517":1,"1519":3,"1522":1,"1523":1,"1524":3,"1527":1,"1528":1,"1530":2,"1547":2,"1549":3,"1550":4,"1551":4,"1552":2,"1553":1,"1555":1,"1557":2,"1562":3,"1563":1,"1566":1,"1567":1,"1578":1,"1579":1,"1583":2,"1584":2,"1587":1,"1588":5,"1589":2,"1591":4,"1593":4,"1594":1,"1595":1,"1600":5,"1606":1,"1607":5,"1608":2,"1609":1,"1610":1,"1611":3,"1612":1,"1613":1,"1617":1,"1621":2,"1622":10,"1624":1,"1628":1,"1634":1,"1642":2,"1655":1,"1656":1,"1658":1,"1659":1,"1660":1,"1662":3,"1664":2,"1667":1,"1669":1,"1670":2,"1674":8,"1675":5,"1676":1,"1677":1,"1679":1,"1684":1,"1691":1,"1693":2,"1700":1,"1701":1,"1702":2,"1705":1,"1706":2,"1707":1,"1711":1,"1715":1,"1736":1,"1741":1,"1746":1,"1747":3,"1749":4,"1750":3,"1751":1,"1752":1,"1758":1,"1759":2,"1760":2,"1761":3,"1763":2,"1764":1,"1765":6,"1766":2,"1771":1,"1790":1,"1791":2,"1792":1,"1793":3,"1794":4,"1798":4,"1801":1,"1804":1,"1805":1,"1839":2,"1840":3,"1841":1,"1842":4,"1843":2,"1844":1,"1845":1,"1846":2,"1849":1,"1851":1,"1852":1,"1853":1,"1854":1,"1859":1,"1861":1,"1913":1,"1914":1,"1918":4,"1919":3,"1920":1,"1925":1,"1929":1,"1930":2,"1933":3,"1934":1,"1941":1,"1942":1,"1943":1,"1947":5,"1948":17,"1949":2,"1950":3,"1952":1,"1954":2,"1955":3,"1956":2,"1958":2,"1979":1,"1981":1,"1983":1,"1984":1,"1985":3,"1986":1,"1988":1,"1989":1,"2002":1,"2006":2,"2007":4,"2008":1,"2009":2,"2011":1,"2012":1,"2014":3,"2018":3,"2020":1,"2021":2,"2024":1,"2025":2,"2027":2,"2028":4,"2030":3,"2039":1,"2040":2,"2042":1,"2043":1,"2044":3,"2045":1,"2047":2,"2050":8,"2052":3,"2059":2,"2060":3,"2061":1,"2062":4,"2063":6,"2064":1,"2065":1,"2066":1,"2068":1,"2069":5,"2072":1,"2073":3,"2074":2,"2077":1,"2078":1,"2079":1,"2080":1,"2085":1,"2087":1,"2156":1,"2157":1,"2161":1,"2162":1,"2164":1,"2165":1,"2166":4,"2167":2,"2178":3,"2179":2,"2181":1,"2182":1,"2184":1,"2185":1,"2187":1,"2188":1,"2189":2,"2191":4,"2198":4,"2200":6,"2203":3,"2204":1,"2208":1,"2210":3,"2225":1,"2227":1,"2240":1,"2241":1,"2242":1,"2246":2,"2247":5,"2248":2,"2251":1,"2252":1,"2253":1,"2258":1,"2260":1,"2262":1,"2264":1,"2265":1,"2266":1,"2268":1,"2269":9,"2270":2,"2271":7,"2272":2,"2273":1,"2279":1,"2283":18,"2285":1,"2286":3,"2287":1,"2290":1,"2291":2,"2295":1,"2297":7,"2298":1,"2299":4,"2301":1,"2302":14,"2303":12,"2308":7,"2309":1,"2310":3,"2311":1,"2312":7,"2316":1,"2318":1,"2319":1,"2321":1,"2323":3,"2324":3,"2325":1,"2337":1,"2338":1,"2339":1,"2370":1,"2371":1,"2372":1,"2375":1,"2376":3,"2379":1,"2381":2,"2382":2,"2383":1,"2384":1,"2386":2,"2388":1,"2389":1,"2390":1,"2391":1,"2393":3,"2395":3,"2397":4,"2400":2,"2402":2,"2403":5,"2407":1,"2410":1,"2411":3,"2414":1,"2415":1,"2416":4,"2418":2,"2420":6,"2421":6,"2422":3,"2423":2,"2424":5,"2425":2,"2427":4,"2430":1,"2433":1,"2438":1,"2439":1,"2441":1,"2446":1,"2449":1,"2451":1,"2453":1,"2456":1,"2457":1,"2458":2,"2459":1,"2461":2,"2464":1,"2468":1,"2474":1,"2478":4,"2480":4,"2482":4,"2483":1,"2492":1,"2494":2,"2495":2,"2496":2,"2498":2,"2500":3,"2501":1,"2502":1,"2510":2,"2511":1,"2513":11,"2515":2,"2517":10,"2518":3,"2519":3,"2520":3,"2528":7,"2530":4,"2531":11,"2532":3,"2537":1,"2538":4,"2540":3,"2544":6,"2545":1,"2548":2,"2549":4,"2552":2,"2553":1,"2554":1,"2556":1,"2557":3,"2559":2,"2560":3,"2562":2,"2564":2,"2567":29,"2568":1,"2569":1,"2570":1,"2571":1,"2572":1,"2573":2,"2574":1,"2581":1,"2582":1,"2583":1,"2584":1,"2585":1,"2587":1,"2590":1,"2593":1,"2594":1,"2600":3,"2602":1,"2603":1,"2605":5,"2607":1,"2609":4,"2610":1,"2615":1,"2617":1,"2620":1,"2621":2,"2623":1,"2627":4,"2630":3,"2632":2,"2633":3,"2637":1,"2644":6,"2645":3,"2646":2,"2650":1,"2651":2,"2655":2,"2656":1,"2657":1,"2662":2,"2666":1,"2667":2,"2669":1,"2670":1,"2675":2,"2676":4,"2677":1,"2680":1,"2683":3,"2684":4,"2685":1,"2687":3,"2689":1,"2693":1,"2698":1,"2699":1,"2700":3,"2702":2,"2706":1,"2710":1,"2711":1,"2715":1,"2718":1,"2719":4,"2720":1,"2721":6,"2722":2,"2723":1,"2728":2,"2744":1,"2746":1,"2747":5,"2748":3,"2749":5,"2750":18,"2757":1,"2758":1,"2760":1,"2765":2,"2770":1,"2774":1,"2775":1,"2776":4,"2777":2,"2778":1,"2780":1,"2784":1,"2787":1,"2788":3,"2789":1,"2790":1,"2797":1,"2798":1,"2801":1,"2806":1,"2816":1,"2819":1,"2828":1,"2830":1,"2831":1,"2836":1,"2838":1,"2845":1,"2846":2,"2847":2,"2848":2,"2849":4,"2850":4,"2854":3,"2858":1,"2860":3,"2861":2,"2863":1,"2864":3,"2868":2,"2870":2,"2871":3,"2873":2,"2876":1,"2877":3,"2879":1,"2887":1,"2890":1,"2891":1,"2892":1,"2894":1,"2896":3,"2901":3,"2902":1,"2904":2,"2905":3,"2906":2,"2907":2,"2908":5,"2909":9,"2910":2,"2912":1,"2913":1,"2914":12,"2915":6,"2917":1,"2919":1,"2920":2,"2927":1,"2928":1,"2929":1,"2930":1,"2933":1,"2934":1,"2935":1,"2938":1}}],["often",{"0":{"2631":1},"1":{"2632":1,"2633":1,"2634":1},"2":{"99":1,"559":1,"643":1,"644":1,"682":1,"717":1,"1280":1,"1315":1,"1341":1,"1344":1,"1349":1,"1406":3,"1407":1,"1412":1,"1491":1,"1587":2,"1664":1,"1672":1,"2030":1,"2178":1,"2208":1,"2284":1,"2310":1,"2462":1,"2625":1,"2626":1,"2628":1,"2723":1,"2821":1,"2828":2,"2830":1,"2837":1}}],["offending",{"0":{"2567":1},"2":{"2570":1,"2571":1,"2721":1}}],["offer",{"2":{"2179":1,"2417":1}}],["offered",{"2":{"1751":1,"1753":1}}],["offers",{"2":{"1378":1,"1478":1,"1556":1,"2672":1}}],["official",{"2":{"1353":1,"1392":1,"2476":1,"2567":1,"2668":1,"2672":1,"2687":1,"2688":1,"2751":1,"2891":1}}],["officially",{"2":{"254":1,"1339":1,"1340":1,"2583":1}}],["offloaded",{"2":{"1193":1,"1196":1}}],["offload",{"2":{"765":1,"1289":1,"1290":1,"1291":1}}],["offset=0",{"2":{"532":1}}],["offsets",{"2":{"222":1,"249":1,"1532":1,"1947":1,"2749":6,"2750":4,"2768":4}}],["offset",{"0":{"2768":1,"2793":1},"2":{"199":1,"211":2,"222":1,"317":1,"532":4,"751":1,"752":1,"1532":2,"1931":12,"1943":1,"1946":1,"2063":1,"2185":1,"2281":1,"2749":2,"2750":8,"2760":1,"2761":3,"2765":1,"2767":2,"2768":2,"2790":1,"2793":4}}],["offs",{"2":{"114":1}}],["offhand",{"2":{"31":1,"34":1,"1942":1,"2280":1}}],["off",{"0":{"1308":1,"1648":1,"1650":1,"1652":1,"1704":1,"1918":1,"2192":1,"2308":1},"1":{"1309":1},"2":{"25":1,"92":1,"105":4,"114":2,"116":1,"134":1,"149":1,"152":1,"160":1,"195":1,"211":1,"222":1,"236":1,"247":2,"328":1,"333":1,"340":1,"403":1,"412":1,"521":1,"559":1,"563":3,"568":2,"607":1,"617":1,"645":1,"649":1,"650":2,"651":2,"667":1,"716":1,"717":2,"854":2,"857":14,"1089":2,"1092":14,"1123":2,"1126":14,"1157":2,"1160":14,"1308":1,"1375":1,"1413":1,"1416":1,"1420":1,"1421":1,"1422":7,"1425":2,"1427":1,"1435":1,"1479":6,"1480":5,"1484":3,"1487":2,"1489":8,"1515":3,"1523":1,"1524":3,"1530":1,"1547":1,"1549":4,"1550":1,"1552":1,"1555":1,"1566":1,"1568":1,"1578":1,"1580":1,"1591":1,"1592":1,"1593":2,"1595":1,"1600":4,"1621":2,"1622":7,"1642":1,"1672":1,"1674":6,"1675":1,"1678":2,"1704":1,"1749":1,"1750":3,"1759":1,"1761":1,"1762":1,"1763":2,"1793":1,"1794":4,"1798":4,"1842":4,"1846":2,"1851":1,"1852":1,"1855":1,"1856":1,"1913":1,"1918":4,"1919":4,"1941":1,"1943":1,"1948":8,"1949":2,"1983":1,"1985":1,"2000":1,"2014":1,"2039":7,"2040":1,"2043":4,"2044":4,"2062":4,"2063":3,"2067":2,"2069":2,"2075":3,"2077":1,"2078":1,"2081":1,"2082":1,"2181":1,"2182":1,"2191":3,"2192":2,"2200":4,"2204":1,"2205":2,"2210":1,"2246":2,"2247":3,"2269":4,"2279":2,"2281":1,"2283":10,"2297":6,"2299":2,"2303":1,"2308":8,"2311":1,"2312":5,"2410":2,"2411":3,"2418":1,"2420":1,"2422":1,"2513":5,"2517":8,"2518":3,"2519":3,"2520":4,"2528":2,"2530":4,"2531":5,"2532":4,"2537":1,"2538":4,"2540":3,"2544":5,"2548":2,"2569":1,"2644":4,"2645":5,"2715":1,"2718":1,"2721":2,"2747":1,"2750":2,"2776":1,"2777":2,"2778":1,"2850":1,"2864":1,"2870":1,"2871":1,"2873":2,"2928":1}}],["of",{"0":{"8":1,"28":1,"33":1,"89":1,"123":1,"124":1,"262":1,"265":1,"275":1,"302":1,"303":1,"307":1,"316":1,"323":1,"327":1,"331":1,"332":1,"403":1,"424":1,"590":1,"619":1,"628":1,"686":1,"1346":1,"1365":1,"1407":1,"1624":1,"1758":1,"1793":1,"1794":1,"1799":1,"2031":1,"2206":1,"2467":1,"2550":1,"2628":1,"2774":1,"2794":1,"2881":1,"2936":1},"1":{"34":1,"629":1,"630":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1,"2551":1,"2552":1,"2553":1,"2554":1,"2629":1,"2630":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1,"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1,"2827":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2842":1,"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"0":1,"3":2,"4":1,"5":1,"6":1,"10":1,"15":2,"17":1,"19":1,"21":1,"22":2,"23":1,"25":2,"30":2,"31":3,"32":1,"33":2,"34":1,"37":1,"43":1,"45":3,"49":4,"50":9,"51":1,"55":1,"63":1,"64":1,"65":3,"67":1,"69":1,"70":2,"74":4,"76":3,"83":1,"86":2,"87":2,"88":2,"93":3,"94":3,"95":2,"98":2,"99":2,"103":4,"104":2,"107":3,"109":1,"112":3,"113":4,"114":15,"118":2,"119":4,"123":1,"124":3,"125":1,"126":2,"127":2,"130":2,"131":3,"132":1,"133":2,"134":21,"142":1,"149":11,"152":1,"153":3,"154":1,"156":5,"157":2,"158":1,"160":4,"163":4,"164":1,"166":3,"167":1,"169":3,"172":1,"173":3,"174":3,"175":2,"176":16,"182":4,"183":1,"184":2,"185":1,"186":1,"187":1,"189":3,"190":1,"191":15,"194":8,"195":1,"196":1,"198":4,"199":16,"201":6,"202":4,"203":5,"204":2,"209":2,"210":1,"211":20,"213":4,"214":1,"215":1,"222":10,"224":3,"228":1,"229":1,"231":1,"233":6,"234":2,"236":12,"238":5,"243":1,"245":1,"246":1,"247":1,"248":1,"249":6,"251":2,"254":2,"255":2,"256":2,"259":1,"262":5,"263":3,"265":3,"266":10,"268":2,"272":2,"273":2,"275":2,"276":1,"277":4,"279":6,"283":1,"285":9,"288":4,"293":2,"294":3,"297":3,"298":1,"303":1,"304":1,"305":2,"307":8,"308":10,"312":4,"314":2,"316":2,"317":2,"323":1,"327":1,"328":7,"331":1,"333":7,"344":1,"346":1,"348":1,"360":2,"361":2,"363":1,"369":2,"372":5,"373":5,"383":1,"387":2,"390":3,"391":1,"392":3,"393":1,"397":5,"401":1,"402":3,"405":2,"406":7,"408":1,"411":1,"414":1,"415":1,"427":2,"428":1,"429":1,"431":3,"432":1,"433":1,"434":1,"450":1,"451":1,"452":1,"453":1,"467":1,"470":1,"487":3,"489":2,"491":2,"492":4,"493":2,"502":1,"503":1,"505":1,"507":1,"508":1,"510":1,"512":1,"520":13,"521":2,"522":4,"524":1,"529":1,"530":1,"531":2,"532":5,"533":2,"536":1,"537":2,"538":1,"542":1,"546":2,"548":2,"549":1,"550":2,"551":1,"552":1,"553":5,"557":1,"558":2,"559":18,"561":1,"562":7,"563":9,"566":2,"567":1,"568":6,"570":1,"572":1,"573":1,"574":1,"576":2,"577":2,"578":1,"579":1,"584":1,"586":4,"587":2,"589":1,"590":1,"591":2,"592":1,"597":1,"598":1,"603":1,"605":1,"607":1,"609":1,"611":8,"612":1,"613":3,"614":2,"617":9,"618":1,"619":4,"620":1,"621":1,"624":1,"625":1,"626":1,"627":2,"628":2,"629":1,"631":1,"635":2,"637":8,"641":1,"644":1,"645":2,"646":2,"649":2,"653":1,"654":4,"655":3,"658":3,"659":2,"663":10,"664":1,"669":5,"671":2,"673":1,"674":1,"676":2,"677":2,"682":1,"683":3,"684":3,"685":5,"686":1,"687":2,"688":1,"692":4,"695":1,"696":2,"698":6,"701":3,"704":1,"706":1,"712":1,"714":1,"716":8,"717":1,"718":2,"719":1,"726":1,"734":1,"736":1,"737":1,"739":1,"742":2,"743":3,"745":2,"746":5,"747":4,"748":1,"749":1,"750":5,"751":12,"752":7,"753":7,"754":3,"755":1,"756":4,"758":3,"759":2,"760":4,"761":1,"763":5,"764":1,"765":3,"769":1,"771":3,"774":3,"777":3,"780":5,"783":3,"786":3,"789":3,"792":3,"795":1,"799":1,"807":1,"809":1,"811":1,"813":1,"815":1,"823":1,"825":5,"826":1,"831":1,"834":1,"836":1,"838":1,"840":1,"842":1,"852":1,"854":6,"855":1,"857":1,"863":1,"866":1,"868":1,"870":1,"872":1,"874":1,"884":1,"886":5,"887":1,"893":1,"896":1,"900":1,"902":1,"904":1,"906":1,"916":1,"918":6,"919":1,"922":1,"928":1,"931":1,"935":1,"937":1,"939":1,"941":1,"951":1,"953":6,"954":1,"956":1,"962":1,"965":1,"969":1,"971":1,"973":1,"975":1,"985":1,"987":6,"988":1,"990":1,"996":1,"999":1,"1003":1,"1005":1,"1007":1,"1009":1,"1019":1,"1021":7,"1022":1,"1024":1,"1030":1,"1033":1,"1037":1,"1039":1,"1041":1,"1043":1,"1053":1,"1055":7,"1056":1,"1058":1,"1064":1,"1067":1,"1071":1,"1073":1,"1075":1,"1077":1,"1087":1,"1089":6,"1090":1,"1092":1,"1098":1,"1101":1,"1105":1,"1107":1,"1109":1,"1111":1,"1121":1,"1123":6,"1124":1,"1126":1,"1132":1,"1135":1,"1139":1,"1141":1,"1143":1,"1145":1,"1155":1,"1157":7,"1158":1,"1160":1,"1166":1,"1168":1,"1169":1,"1173":1,"1175":1,"1177":1,"1179":1,"1189":2,"1190":2,"1192":1,"1193":2,"1194":2,"1195":1,"1197":6,"1198":1,"1200":3,"1201":2,"1202":5,"1204":1,"1206":1,"1210":1,"1211":2,"1213":5,"1214":1,"1219":1,"1222":1,"1226":1,"1228":1,"1230":1,"1232":1,"1242":1,"1244":1,"1247":1,"1249":3,"1257":2,"1260":2,"1263":1,"1265":1,"1268":1,"1275":2,"1277":2,"1280":2,"1282":7,"1283":2,"1284":2,"1285":1,"1288":1,"1292":2,"1297":1,"1299":1,"1300":1,"1303":1,"1305":1,"1308":1,"1310":1,"1312":2,"1313":1,"1314":1,"1316":1,"1319":1,"1324":1,"1325":1,"1326":1,"1327":1,"1329":1,"1330":1,"1332":2,"1333":2,"1334":2,"1340":5,"1342":1,"1345":1,"1346":2,"1349":1,"1350":1,"1353":5,"1356":1,"1359":3,"1362":4,"1364":2,"1365":3,"1367":1,"1369":1,"1373":1,"1375":8,"1377":1,"1378":13,"1379":2,"1387":1,"1392":1,"1393":1,"1395":2,"1397":1,"1398":1,"1401":1,"1404":3,"1407":12,"1410":11,"1411":1,"1412":4,"1413":6,"1414":1,"1415":3,"1416":3,"1417":6,"1419":2,"1421":4,"1422":4,"1425":4,"1426":1,"1427":5,"1428":2,"1432":1,"1433":1,"1435":1,"1436":1,"1438":4,"1441":4,"1442":3,"1443":7,"1444":2,"1447":1,"1450":2,"1452":2,"1454":1,"1455":2,"1456":1,"1459":1,"1461":1,"1466":2,"1468":3,"1471":2,"1474":2,"1478":1,"1479":5,"1480":1,"1481":1,"1482":1,"1485":1,"1486":2,"1487":5,"1489":2,"1491":1,"1492":2,"1493":1,"1496":1,"1497":4,"1504":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":2,"1512":3,"1513":1,"1515":1,"1516":3,"1518":1,"1519":2,"1522":3,"1523":1,"1524":1,"1526":2,"1527":3,"1528":4,"1529":2,"1532":12,"1533":2,"1547":4,"1550":4,"1551":1,"1552":5,"1554":1,"1555":1,"1557":1,"1559":1,"1560":1,"1564":3,"1583":2,"1585":2,"1586":1,"1587":1,"1596":2,"1599":2,"1603":5,"1606":3,"1607":1,"1608":1,"1612":1,"1614":1,"1615":2,"1616":4,"1617":2,"1620":2,"1624":1,"1626":1,"1627":1,"1628":1,"1630":1,"1633":7,"1642":3,"1644":1,"1645":4,"1653":1,"1654":2,"1655":4,"1656":3,"1657":3,"1658":2,"1660":2,"1661":2,"1662":1,"1663":1,"1664":1,"1666":2,"1672":2,"1675":5,"1680":2,"1684":1,"1685":2,"1686":2,"1687":2,"1688":2,"1689":2,"1693":4,"1698":1,"1707":2,"1709":1,"1711":2,"1714":4,"1715":1,"1716":4,"1726":1,"1727":1,"1732":2,"1735":2,"1736":3,"1739":1,"1744":1,"1749":2,"1751":4,"1752":4,"1753":2,"1754":4,"1755":3,"1756":3,"1757":5,"1758":5,"1759":2,"1761":2,"1762":1,"1768":2,"1769":2,"1770":4,"1774":1,"1775":1,"1779":1,"1780":1,"1781":1,"1782":1,"1783":1,"1786":1,"1787":1,"1788":1,"1790":1,"1791":1,"1792":2,"1795":1,"1796":1,"1797":1,"1798":2,"1799":1,"1801":1,"1803":1,"1804":3,"1805":8,"1806":2,"1839":2,"1840":14,"1843":5,"1844":2,"1845":3,"1846":5,"1857":1,"1859":1,"1861":1,"1872":1,"1900":1,"1907":2,"1910":2,"1917":3,"1928":3,"1929":4,"1930":9,"1931":1,"1932":2,"1933":3,"1934":2,"1937":1,"1939":1,"1940":1,"1941":2,"1943":5,"1944":1,"1945":3,"1946":10,"1947":2,"1948":16,"1951":2,"1953":3,"1955":1,"1958":2,"1963":1,"1964":1,"1965":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1976":1,"1978":1,"1979":2,"1985":2,"1986":3,"1988":1,"1989":1,"1990":1,"1993":2,"1996":1,"1997":1,"1998":4,"1999":1,"2000":2,"2002":3,"2006":8,"2008":2,"2009":4,"2010":3,"2011":1,"2012":2,"2013":5,"2014":7,"2016":4,"2017":4,"2020":2,"2021":1,"2023":1,"2024":1,"2025":5,"2030":1,"2032":2,"2034":2,"2037":1,"2039":5,"2040":1,"2042":1,"2043":1,"2044":1,"2045":3,"2049":2,"2050":6,"2052":2,"2055":1,"2057":1,"2059":2,"2060":14,"2063":10,"2064":9,"2066":2,"2068":3,"2069":6,"2072":1,"2083":1,"2085":1,"2087":1,"2098":1,"2144":1,"2151":2,"2154":2,"2156":1,"2158":1,"2159":1,"2160":3,"2161":2,"2164":1,"2167":1,"2168":1,"2169":1,"2172":1,"2173":1,"2176":2,"2178":3,"2179":6,"2180":2,"2181":1,"2183":1,"2185":6,"2187":7,"2188":2,"2189":5,"2190":2,"2191":3,"2194":1,"2198":2,"2199":4,"2203":1,"2206":3,"2207":2,"2208":1,"2209":2,"2210":1,"2211":1,"2212":3,"2214":1,"2215":2,"2221":1,"2223":1,"2224":1,"2225":1,"2227":1,"2228":1,"2245":1,"2249":1,"2252":1,"2253":2,"2254":1,"2257":1,"2258":1,"2259":1,"2260":2,"2262":2,"2263":1,"2265":2,"2266":1,"2267":1,"2268":10,"2269":28,"2270":2,"2271":7,"2272":1,"2273":2,"2274":1,"2276":1,"2277":1,"2278":1,"2279":2,"2281":2,"2282":4,"2283":11,"2284":4,"2285":3,"2286":2,"2287":2,"2288":16,"2289":6,"2290":3,"2291":5,"2293":17,"2294":1,"2296":1,"2298":2,"2301":3,"2302":6,"2303":6,"2305":1,"2309":1,"2310":8,"2311":3,"2312":6,"2313":1,"2316":1,"2318":3,"2319":1,"2320":2,"2322":5,"2323":6,"2324":4,"2341":1,"2345":1,"2355":1,"2372":6,"2374":2,"2375":4,"2376":2,"2377":1,"2379":2,"2381":1,"2382":1,"2383":1,"2384":2,"2386":2,"2388":2,"2389":1,"2390":4,"2391":2,"2393":2,"2395":2,"2397":2,"2400":1,"2402":1,"2403":2,"2405":1,"2407":1,"2408":5,"2410":12,"2411":2,"2414":1,"2416":4,"2417":4,"2418":6,"2419":1,"2420":13,"2421":5,"2422":5,"2423":2,"2424":3,"2425":4,"2427":7,"2428":2,"2430":1,"2434":1,"2435":1,"2436":1,"2438":4,"2440":3,"2441":1,"2443":1,"2444":1,"2446":2,"2449":1,"2450":1,"2451":2,"2458":1,"2459":7,"2460":1,"2461":2,"2462":2,"2463":2,"2465":2,"2467":4,"2468":4,"2470":3,"2472":3,"2474":1,"2475":4,"2476":1,"2483":2,"2487":1,"2489":1,"2490":2,"2494":2,"2495":4,"2496":5,"2497":5,"2498":1,"2500":1,"2501":3,"2502":2,"2510":2,"2512":1,"2513":4,"2514":1,"2515":1,"2517":2,"2518":1,"2519":1,"2531":3,"2542":1,"2546":4,"2547":4,"2548":4,"2549":2,"2550":2,"2551":3,"2552":5,"2553":2,"2554":2,"2556":1,"2560":4,"2562":2,"2563":3,"2566":1,"2567":8,"2568":9,"2569":2,"2570":2,"2571":3,"2572":6,"2573":2,"2575":1,"2576":1,"2577":2,"2578":4,"2579":4,"2580":3,"2583":4,"2584":1,"2586":1,"2587":1,"2588":1,"2589":2,"2590":2,"2591":2,"2594":4,"2595":1,"2600":2,"2605":3,"2607":1,"2610":1,"2612":1,"2613":1,"2619":2,"2620":3,"2621":4,"2622":3,"2625":2,"2626":1,"2627":13,"2628":2,"2629":2,"2630":1,"2631":3,"2633":3,"2634":1,"2636":1,"2643":3,"2644":1,"2645":3,"2646":1,"2648":1,"2651":2,"2652":1,"2655":1,"2656":2,"2657":1,"2658":1,"2660":1,"2662":1,"2664":2,"2667":8,"2668":7,"2669":8,"2670":4,"2671":2,"2672":2,"2673":2,"2676":1,"2677":2,"2679":1,"2683":1,"2684":2,"2686":1,"2687":3,"2688":1,"2693":3,"2695":2,"2697":1,"2698":2,"2699":1,"2700":5,"2702":3,"2703":3,"2704":4,"2706":1,"2707":5,"2708":1,"2709":2,"2710":2,"2711":2,"2712":1,"2713":4,"2714":3,"2715":2,"2718":1,"2719":10,"2720":1,"2721":11,"2722":6,"2723":1,"2724":2,"2725":4,"2731":3,"2732":1,"2734":4,"2742":1,"2744":1,"2747":9,"2748":12,"2749":21,"2750":29,"2751":1,"2757":4,"2758":5,"2760":7,"2761":1,"2762":1,"2763":1,"2764":1,"2765":6,"2766":5,"2767":6,"2768":4,"2769":6,"2770":2,"2771":2,"2772":1,"2773":4,"2774":2,"2778":1,"2780":1,"2781":1,"2783":2,"2784":1,"2787":4,"2788":4,"2789":1,"2790":1,"2792":1,"2795":2,"2796":1,"2798":1,"2800":1,"2804":1,"2805":1,"2810":1,"2811":1,"2816":1,"2818":1,"2821":2,"2824":1,"2826":2,"2828":1,"2833":1,"2834":2,"2838":2,"2839":2,"2844":2,"2845":3,"2846":2,"2847":4,"2848":1,"2849":1,"2850":4,"2851":1,"2852":1,"2853":1,"2854":2,"2855":1,"2856":2,"2857":7,"2858":2,"2861":4,"2862":19,"2863":1,"2864":13,"2865":6,"2867":2,"2868":1,"2870":5,"2871":13,"2872":1,"2873":5,"2874":1,"2875":1,"2876":2,"2877":3,"2878":3,"2879":2,"2881":2,"2882":2,"2883":1,"2885":2,"2886":2,"2887":2,"2888":3,"2889":3,"2890":1,"2894":1,"2895":6,"2896":3,"2898":1,"2899":4,"2901":6,"2902":2,"2903":2,"2907":2,"2908":4,"2909":3,"2910":3,"2911":7,"2912":1,"2913":3,"2914":1,"2915":7,"2917":6,"2918":1,"2920":3,"2921":1,"2923":2,"2924":4,"2925":1,"2926":1,"2927":4,"2928":2,"2929":6,"2930":6,"2931":3,"2932":3,"2933":5,"2934":3,"2936":4,"2937":4,"2938":1,"2941":1,"2942":7}}],["ordinarily",{"2":{"1512":1}}],["ordering",{"2":{"50":1,"1986":1,"2721":1}}],["order",{"0":{"1284":1,"1605":1,"1606":1,"2206":1},"2":{"10":1,"49":3,"50":1,"119":1,"124":1,"125":1,"132":1,"133":1,"134":1,"158":2,"174":1,"176":2,"185":1,"186":1,"188":1,"191":2,"211":1,"218":1,"221":1,"234":2,"272":1,"277":1,"308":1,"334":1,"373":1,"456":1,"481":1,"566":1,"570":1,"573":2,"631":1,"681":1,"682":1,"731":1,"746":1,"747":1,"751":2,"756":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1200":1,"1201":1,"1216":1,"1282":3,"1284":7,"1317":1,"1362":1,"1377":1,"1407":1,"1413":1,"1421":1,"1433":2,"1508":1,"1532":1,"1605":2,"1606":8,"1757":1,"1947":1,"1986":1,"2047":1,"2064":1,"2189":1,"2206":5,"2252":1,"2262":1,"2263":1,"2290":1,"2298":1,"2303":1,"2310":1,"2312":1,"2409":1,"2422":1,"2439":1,"2440":1,"2475":1,"2492":1,"2567":1,"2569":1,"2605":2,"2625":1,"2667":2,"2668":1,"2669":2,"2700":1,"2706":1,"2721":1,"2722":1,"2748":1,"2867":1,"2894":1,"2901":1,"2902":1,"2908":1,"2942":1}}],["ored",{"2":{"1359":1}}],["orient",{"2":{"2266":1}}],["orientation",{"2":{"1993":5,"2750":1}}],["oriented",{"2":{"632":1,"1942":1,"2280":1,"2934":1}}],["oring",{"2":{"1532":2,"2559":1}}],["originating",{"2":{"2008":1,"2009":1}}],["original",{"2":{"124":1,"654":1,"1378":1,"1656":1,"1736":1,"1957":1,"2405":1,"2449":1,"2796":1,"2917":1}}],["originally",{"2":{"113":1,"293":1,"305":1,"314":1,"1340":1,"1534":1,"2382":1,"2493":1,"2719":1}}],["origin",{"2":{"405":1,"422":2,"423":1,"424":2,"457":2,"611":1,"2601":3,"2630":6,"2632":4,"2633":1}}],["orange",{"2":{"149":1,"683":1,"1952":1,"2067":2,"2205":3}}],["organise",{"2":{"211":1}}],["organize",{"2":{"114":1,"149":1,"2435":1}}],["organization",{"2":{"21":1,"149":1,"268":1,"279":1,"342":1,"2403":1,"2435":3}}],["org",{"2":{"149":1,"608":1,"1350":1,"1355":1,"1364":1,"1372":1,"1373":1,"1438":1,"1922":1,"2725":1}}],["orbit",{"2":{"149":1}}],["orthocode",{"2":{"277":1}}],["orthograph",{"2":{"249":1}}],["ortho60",{"2":{"199":1}}],["ortholinear",{"2":{"114":1,"674":1,"1484":1,"2416":1}}],["ortho",{"2":{"70":1,"143":4,"211":3,"249":1,"1430":4,"1433":1,"1486":1,"2418":1,"2434":1,"2714":2,"2721":1,"2845":1}}],["or",{"0":{"1346":1,"2024":1,"2300":1,"2625":1,"2842":1,"2902":1,"2921":1,"2937":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1,"2903":1,"2904":1,"2905":1,"2906":1,"2907":1,"2908":1,"2909":1},"2":{"0":1,"9":1,"16":1,"19":1,"22":1,"23":1,"32":1,"39":1,"49":1,"52":1,"82":1,"87":1,"88":2,"90":2,"103":2,"104":2,"119":2,"126":2,"127":2,"131":1,"134":1,"138":1,"152":2,"153":2,"158":2,"160":1,"182":1,"191":1,"201":1,"202":1,"203":2,"214":2,"221":1,"222":1,"232":1,"234":4,"240":3,"244":1,"263":1,"268":1,"275":1,"279":2,"288":1,"302":1,"312":1,"347":1,"364":1,"393":3,"397":1,"408":5,"411":1,"412":2,"415":1,"418":1,"427":7,"428":3,"431":3,"433":1,"434":1,"435":3,"437":1,"438":3,"443":2,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"457":1,"458":1,"460":1,"461":3,"468":1,"475":1,"485":1,"486":1,"490":1,"491":1,"493":1,"494":1,"505":2,"507":1,"510":2,"520":3,"521":2,"524":1,"527":1,"528":1,"532":2,"536":1,"546":2,"548":1,"549":1,"552":1,"554":1,"555":2,"559":6,"562":3,"563":2,"567":1,"568":1,"572":2,"579":1,"589":1,"590":1,"594":1,"595":1,"598":3,"608":2,"610":1,"611":3,"612":1,"614":4,"617":7,"618":1,"619":1,"620":1,"625":3,"626":1,"628":3,"637":4,"642":1,"643":2,"645":2,"646":2,"649":3,"654":1,"655":2,"658":1,"663":1,"664":1,"666":1,"667":1,"670":3,"673":2,"674":1,"683":5,"686":1,"687":2,"692":2,"695":1,"698":3,"700":1,"711":1,"712":4,"716":4,"717":6,"718":1,"720":1,"723":1,"726":1,"743":1,"745":1,"755":1,"760":2,"762":1,"763":2,"797":1,"798":1,"818":3,"820":1,"823":1,"824":1,"845":3,"847":1,"852":1,"853":1,"884":1,"885":1,"909":3,"911":1,"916":1,"917":1,"944":3,"946":1,"951":1,"952":1,"978":3,"980":1,"985":1,"986":1,"1012":3,"1014":1,"1019":1,"1020":1,"1046":3,"1048":1,"1053":1,"1054":1,"1087":1,"1088":1,"1121":1,"1122":1,"1155":1,"1156":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1197":3,"1198":1,"1202":1,"1204":1,"1211":1,"1212":1,"1235":3,"1237":1,"1243":1,"1250":1,"1253":1,"1264":1,"1281":1,"1282":1,"1284":1,"1286":2,"1287":1,"1291":1,"1294":1,"1308":1,"1310":1,"1312":2,"1313":1,"1315":2,"1319":1,"1326":1,"1339":1,"1340":1,"1343":1,"1348":1,"1349":1,"1350":2,"1359":1,"1373":2,"1374":1,"1375":2,"1378":3,"1385":1,"1387":1,"1388":1,"1406":1,"1407":1,"1410":1,"1413":3,"1415":1,"1416":4,"1417":1,"1419":1,"1420":1,"1421":2,"1422":4,"1423":1,"1424":1,"1433":1,"1435":1,"1436":2,"1437":2,"1438":3,"1441":2,"1442":1,"1443":2,"1444":1,"1446":2,"1448":2,"1450":3,"1452":5,"1456":1,"1461":1,"1467":1,"1471":3,"1472":1,"1474":3,"1475":1,"1476":1,"1477":1,"1479":1,"1480":2,"1482":1,"1484":1,"1486":2,"1487":1,"1492":2,"1493":1,"1495":1,"1497":1,"1511":3,"1516":1,"1518":1,"1519":3,"1521":3,"1522":1,"1523":1,"1526":2,"1528":1,"1531":1,"1532":1,"1547":2,"1548":1,"1549":1,"1550":1,"1551":3,"1552":1,"1553":1,"1564":1,"1566":1,"1578":1,"1584":1,"1585":1,"1587":5,"1588":5,"1589":1,"1591":2,"1595":2,"1596":1,"1599":1,"1602":1,"1603":1,"1606":6,"1607":2,"1611":1,"1612":1,"1614":1,"1615":2,"1616":1,"1617":1,"1619":1,"1620":1,"1622":2,"1626":1,"1630":3,"1631":1,"1632":1,"1634":1,"1645":1,"1655":5,"1656":1,"1662":1,"1664":1,"1665":1,"1666":1,"1667":1,"1668":1,"1672":1,"1674":1,"1679":1,"1680":1,"1681":2,"1682":1,"1691":1,"1702":1,"1706":1,"1720":1,"1722":1,"1735":1,"1736":1,"1737":1,"1746":1,"1751":2,"1752":1,"1755":1,"1758":5,"1761":2,"1764":1,"1766":1,"1768":1,"1770":1,"1777":2,"1785":1,"1793":1,"1794":1,"1798":3,"1804":1,"1807":1,"1840":4,"1842":1,"1844":2,"1849":2,"1851":1,"1852":1,"1859":1,"1861":1,"1917":2,"1928":2,"1929":2,"1931":2,"1933":2,"1937":3,"1939":1,"1941":1,"1942":2,"1943":1,"1947":1,"1948":10,"1950":1,"1952":1,"1958":1,"1979":2,"1981":2,"1982":2,"1983":1,"1988":2,"1993":1,"1994":1,"1996":1,"2005":2,"2006":1,"2014":4,"2017":3,"2018":2,"2025":1,"2027":1,"2030":2,"2031":2,"2032":1,"2034":1,"2039":4,"2045":1,"2047":1,"2050":3,"2060":4,"2062":1,"2066":2,"2072":2,"2077":1,"2078":1,"2085":1,"2087":1,"2159":2,"2160":1,"2163":1,"2165":1,"2166":1,"2167":1,"2169":1,"2181":2,"2184":1,"2188":1,"2191":2,"2203":1,"2211":1,"2244":1,"2246":1,"2247":4,"2251":1,"2252":2,"2253":2,"2254":3,"2258":2,"2265":1,"2266":2,"2269":1,"2270":3,"2271":2,"2272":2,"2273":1,"2277":1,"2279":1,"2280":2,"2283":5,"2285":1,"2286":1,"2287":2,"2288":1,"2291":4,"2293":5,"2294":1,"2297":2,"2302":4,"2303":2,"2310":4,"2311":2,"2312":1,"2316":1,"2322":1,"2323":2,"2324":1,"2325":1,"2358":1,"2369":1,"2372":2,"2374":2,"2376":3,"2379":2,"2381":1,"2382":1,"2384":1,"2386":2,"2388":2,"2389":1,"2391":2,"2393":3,"2395":3,"2397":3,"2399":1,"2400":3,"2403":1,"2404":1,"2410":3,"2411":2,"2414":1,"2416":2,"2419":1,"2420":4,"2421":1,"2422":1,"2424":2,"2425":2,"2426":1,"2427":4,"2428":2,"2434":1,"2436":1,"2438":1,"2439":1,"2440":3,"2443":1,"2450":1,"2456":1,"2457":1,"2459":2,"2463":1,"2467":1,"2475":1,"2476":1,"2479":1,"2495":3,"2501":1,"2516":1,"2520":1,"2524":1,"2527":1,"2528":1,"2530":1,"2537":1,"2538":1,"2544":1,"2545":1,"2548":1,"2549":1,"2551":3,"2552":3,"2557":1,"2559":1,"2560":2,"2567":3,"2568":3,"2569":2,"2570":1,"2577":2,"2578":2,"2579":2,"2580":2,"2582":3,"2583":1,"2587":1,"2588":1,"2605":7,"2606":1,"2607":5,"2609":3,"2610":1,"2613":1,"2619":6,"2620":1,"2631":2,"2633":2,"2643":1,"2644":2,"2645":1,"2649":2,"2652":1,"2655":1,"2656":1,"2662":1,"2664":1,"2667":1,"2669":3,"2673":1,"2676":1,"2684":1,"2685":2,"2688":1,"2696":1,"2700":3,"2702":1,"2704":1,"2707":1,"2712":1,"2713":1,"2715":2,"2718":1,"2719":3,"2720":1,"2721":18,"2722":3,"2723":1,"2724":2,"2725":5,"2727":1,"2728":2,"2731":1,"2732":3,"2745":1,"2746":1,"2747":1,"2748":1,"2749":5,"2750":12,"2757":1,"2760":1,"2762":1,"2763":1,"2765":1,"2769":2,"2774":1,"2776":1,"2778":1,"2779":1,"2780":1,"2781":2,"2782":2,"2783":3,"2784":1,"2785":1,"2787":1,"2790":1,"2798":1,"2801":1,"2806":1,"2812":1,"2818":2,"2827":1,"2834":2,"2842":1,"2845":2,"2847":1,"2862":3,"2864":1,"2870":1,"2871":1,"2879":1,"2882":2,"2885":2,"2886":2,"2887":1,"2892":1,"2895":4,"2896":3,"2901":1,"2902":4,"2903":1,"2908":2,"2909":1,"2911":1,"2913":3,"2914":5,"2915":5,"2917":5,"2919":2,"2921":2,"2923":1,"2932":1,"2933":1,"2939":1,"2941":1}}],["dx",{"2":{"2882":1}}],["dlls",{"2":{"2732":1}}],["dlr",{"2":{"2539":1,"2558":1}}],["dg",{"2":{"2620":1}}],["dgk6x",{"2":{"199":1,"207":2,"322":2}}],["dqt",{"2":{"2539":1,"2558":1}}],["dquote",{"2":{"529":2}}],["dquo",{"2":{"176":2,"2539":1,"2558":1,"2562":6}}],["d♯",{"2":{"1919":6,"2532":6}}],["ds5",{"2":{"1919":1,"2532":1}}],["ds4",{"2":{"1919":1,"2532":1}}],["ds3",{"2":{"1919":1,"2532":1}}],["ds2",{"2":{"1919":1,"2532":1}}],["ds1",{"2":{"1919":1,"2532":1}}],["ds",{"2":{"1919":1,"2532":1}}],["d♭",{"2":{"1919":6,"2532":6}}],["dwl",{"2":{"1675":1}}],["dwld",{"2":{"1674":1}}],["dwlu",{"2":{"1674":1}}],["dwell",{"2":{"1674":4,"1675":13,"2269":1}}],["dword",{"0":{"2231":1},"1":{"2232":1},"2":{"1412":1,"1414":1}}],["db5",{"2":{"1919":1,"2532":1}}],["db4",{"2":{"1919":1,"2532":1}}],["db3",{"2":{"1919":1,"2532":1}}],["db2",{"2":{"1919":1,"2532":1}}],["db1",{"2":{"1919":1,"2532":1}}],["dbl",{"2":{"1680":2}}],["dblsharp",{"2":{"1680":6}}],["dblclick",{"2":{"1680":14}}],["dbaas",{"2":{"1591":1}}],["db",{"2":{"1319":1,"1919":1,"2191":1,"2516":1,"2532":1,"2745":1}}],["db60",{"2":{"191":1}}],["d9",{"2":{"692":1}}],["d8",{"2":{"692":1,"2495":1}}],["d3",{"2":{"568":1,"1192":1,"1265":3,"1392":1,"1919":1,"2259":1,"2532":1,"2684":1,"2712":1,"2713":1}}],["d2",{"2":{"568":1,"1192":1,"1265":3,"1392":1,"1919":1,"1982":1,"1983":2,"1985":1,"2259":1,"2532":1,"2684":1,"2712":1,"2713":1}}],["d7",{"2":{"559":1,"563":1,"690":1,"1265":1,"1693":1,"2684":1}}],["d6",{"2":{"559":1,"690":1,"1265":1,"2424":1}}],["d60b",{"2":{"328":1}}],["d4",{"2":{"559":1,"690":1,"1559":1,"1693":1,"1919":1,"2368":1,"2532":1,"2684":1,"2712":1}}],["d5",{"2":{"559":1,"1265":1,"1389":1,"1393":1,"1559":1,"1919":1,"1983":2,"1985":1,"2377":1,"2384":1,"2532":1,"2684":2,"2713":1}}],["dnworks",{"2":{"270":2,"277":2}}],["dpi",{"2":{"2019":2,"2020":1}}],["dprint",{"2":{"1324":1,"2270":1,"2411":2}}],["dprintf",{"2":{"50":1,"1324":1,"2270":1,"2941":2}}],["dp3000",{"2":{"226":2,"236":1}}],["dharma",{"2":{"211":1}}],["dyn",{"2":{"1657":1}}],["dynamically",{"2":{"119":1,"2757":1,"2844":1,"2901":1}}],["dynamic",{"0":{"119":1,"1655":1,"1657":1,"2523":1,"2806":1,"2901":1},"1":{"1656":1,"1657":1,"1658":1},"2":{"119":4,"134":1,"149":2,"176":3,"188":2,"191":4,"199":1,"211":1,"222":3,"236":2,"249":1,"277":2,"328":1,"546":1,"572":1,"1655":11,"1656":7,"1657":4,"1658":6,"2523":6,"2536":6,"2806":1,"2899":2,"2901":10,"2924":1,"2933":2}}],["dymium65",{"2":{"211":1}}],["dyz",{"2":{"211":1}}],["dclk",{"2":{"2500":1}}],["dc",{"2":{"1945":2,"2749":11}}],["dc60",{"2":{"211":1}}],["dc01",{"2":{"114":2}}],["d",{"2":{"194":1,"196":8,"199":1,"211":1,"249":1,"266":3,"328":1,"348":1,"369":1,"370":1,"432":3,"489":1,"494":1,"508":1,"509":1,"570":2,"587":2,"608":1,"613":2,"614":1,"616":1,"618":1,"631":1,"1313":2,"1327":1,"1329":1,"1438":1,"1441":1,"1442":2,"1443":1,"1517":1,"1591":2,"1596":2,"1599":1,"1619":1,"1801":8,"1807":1,"1919":19,"1941":1,"2159":1,"2161":2,"2270":1,"2279":1,"2289":1,"2294":1,"2315":1,"2324":1,"2386":2,"2388":2,"2389":2,"2390":1,"2391":2,"2418":1,"2447":1,"2495":1,"2503":3,"2515":3,"2532":19,"2547":1,"2553":1,"2608":1,"2614":1,"2645":1,"2746":11,"2748":2,"2749":4,"2750":4,"2882":1,"2941":1}}],["dvd",{"2":{"2568":1}}],["dv",{"2":{"176":2,"1587":1}}],["dvorak",{"0":{"2805":1},"2":{"92":1,"176":1,"1416":2,"1419":1,"1420":1,"1446":1,"1587":1,"1614":3,"1616":2,"2190":1,"2552":1,"2780":2,"2805":2,"2880":14}}],["ddr",{"2":{"1985":3}}],["ddram",{"0":{"1730":1},"1":{"1731":1},"2":{"1723":2,"1730":1,"1731":1}}],["dd",{"2":{"176":2,"188":1,"191":10,"199":7,"211":1,"236":2,"277":6,"317":2,"328":25,"333":1,"405":2}}],["djinn",{"2":{"176":1,"266":1}}],["dt40",{"2":{"222":1}}],["dtisaac",{"2":{"122":1}}],["dtisaac01",{"2":{"122":2}}],["dt",{"2":{"119":3,"2536":3,"2901":22}}],["dzr",{"2":{"2294":1}}],["dz60",{"2":{"211":1,"427":2}}],["dz60rgb",{"2":{"114":1,"149":1}}],["dztech",{"2":{"102":1,"149":1,"199":1,"211":1}}],["dribin",{"2":{"2459":1}}],["driving",{"2":{"712":1,"1293":1,"1294":1}}],["drives",{"2":{"176":1,"1471":1}}],["drive",{"2":{"173":1,"559":1,"719":1,"1202":1,"1472":1,"1476":1,"1477":1,"1551":1,"1675":2,"1678":1,"1679":1}}],["driven",{"0":{"109":1,"169":1,"184":1,"662":1},"1":{"110":1,"111":1,"112":1,"170":1,"663":1,"664":1,"665":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1},"2":{"76":1,"109":1,"114":1,"149":2,"160":3,"169":1,"176":4,"184":1,"191":2,"199":13,"201":1,"211":26,"222":13,"236":6,"262":1,"266":68,"277":3,"446":1,"447":1,"553":2,"662":1,"718":1,"1294":1,"1389":1,"1390":1,"1468":2,"1551":2,"1564":1,"1838":1,"1947":1,"1996":1,"1999":1,"2000":1,"2014":1,"2058":1,"2439":1,"2677":1,"2709":1,"2715":2,"2721":2,"2844":1,"2934":1}}],["driver",{"0":{"210":1,"221":1,"233":1,"240":1,"244":1,"682":1,"687":1,"699":1,"711":1,"721":1,"723":1,"724":1,"725":1,"726":1,"743":1,"744":1,"746":1,"747":1,"748":1,"749":1,"751":1,"752":1,"753":1,"754":1,"755":1,"756":1,"761":1,"797":1,"823":1,"852":1,"884":1,"916":1,"920":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1091":1,"1121":1,"1125":1,"1155":1,"1189":1,"1199":1,"1200":1,"1201":1,"1202":1,"1211":1,"1242":1,"1263":1,"1280":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1296":1,"1299":1,"1300":1,"1538":1,"1553":1,"1554":1,"1555":1,"1556":1,"1557":1,"1559":1,"1560":1,"1562":1,"1563":1,"1690":1,"1839":1,"1936":1,"1949":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"2015":1,"2059":1,"2275":1,"2454":1,"2690":1,"2691":1,"2692":1,"2738":1},"1":{"683":1,"684":1,"685":1,"686":1,"688":1,"689":1,"690":1,"691":1,"692":1,"693":1,"694":1,"695":1,"696":1,"697":1,"698":1,"700":1,"701":1,"702":1,"703":1,"704":1,"705":1,"706":1,"707":1,"708":1,"709":1,"710":1,"712":1,"713":1,"714":1,"715":1,"716":1,"717":1,"718":1,"719":1,"720":1,"722":1,"723":1,"724":2,"725":2,"727":1,"728":1,"729":1,"730":1,"731":1,"732":1,"733":1,"734":1,"735":1,"736":1,"737":1,"738":1,"739":1,"740":1,"741":1,"742":1,"744":1,"745":2,"746":1,"747":1,"748":1,"749":1,"756":1,"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"769":1,"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"777":1,"778":1,"779":1,"780":1,"781":1,"782":1,"783":1,"784":1,"785":1,"786":1,"787":1,"788":1,"789":1,"790":1,"791":1,"792":1,"793":1,"794":1,"795":1,"796":1,"798":1,"799":1,"800":1,"801":1,"802":1,"803":1,"804":1,"805":1,"806":1,"807":1,"808":1,"809":1,"810":1,"811":1,"812":1,"813":1,"814":1,"815":1,"816":1,"817":1,"818":1,"819":1,"820":1,"821":1,"822":1,"824":1,"825":1,"826":1,"827":1,"828":1,"829":1,"830":1,"831":1,"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"839":1,"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1,"866":1,"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1,"878":1,"879":1,"880":1,"881":1,"882":1,"883":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"912":1,"913":1,"914":1,"915":1,"917":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"947":1,"948":1,"949":1,"950":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"972":1,"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":1,"983":1,"984":1,"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1,"1010":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1037":1,"1038":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1048":1,"1049":1,"1050":1,"1051":1,"1052":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1,"1066":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1072":1,"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1,"1083":1,"1084":1,"1085":1,"1086":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1128":1,"1129":1,"1130":1,"1131":1,"1132":1,"1133":1,"1134":1,"1135":1,"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1,"1183":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":2,"1201":2,"1202":2,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1209":1,"1210":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1254":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":2,"1298":2,"1299":1,"1300":1,"1301":1,"1302":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1554":1,"1555":1,"1556":1,"1557":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1698":1,"1699":1,"1700":1,"1701":1,"1702":1,"1703":1,"1704":1,"1705":1,"1706":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1718":1,"1719":1,"1720":1,"1721":1,"1722":1,"1723":1,"1724":1,"1725":1,"1726":1,"1727":1,"1728":1,"1729":1,"1730":1,"1731":1,"1937":1,"1938":1,"1939":1,"1940":1,"1941":1,"1942":1,"1943":1,"1944":1,"1945":1,"1946":1,"1947":1,"1948":1,"1949":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"2276":1,"2277":1,"2278":1,"2279":1,"2280":1,"2281":1,"2282":1,"2283":1},"2":{"21":1,"31":5,"34":5,"50":1,"65":4,"75":1,"93":3,"94":2,"107":1,"112":1,"114":12,"118":10,"128":1,"133":2,"134":8,"149":13,"160":3,"174":2,"175":1,"176":13,"183":2,"191":18,"199":4,"210":2,"211":11,"220":2,"221":11,"222":7,"224":1,"232":4,"234":8,"236":25,"240":6,"248":1,"249":11,"266":3,"277":3,"285":1,"294":3,"308":3,"317":1,"328":1,"333":1,"682":1,"683":7,"684":6,"685":4,"686":3,"687":1,"688":2,"692":2,"699":1,"700":4,"703":1,"711":3,"712":2,"713":2,"714":3,"717":3,"718":2,"719":2,"721":1,"722":2,"723":2,"724":3,"725":3,"726":1,"727":5,"728":2,"731":3,"734":2,"735":1,"736":1,"741":1,"742":2,"743":13,"746":2,"747":2,"748":1,"749":3,"750":10,"751":3,"752":2,"753":1,"754":4,"755":4,"756":2,"762":4,"763":2,"764":2,"765":3,"769":1,"797":1,"798":5,"799":1,"802":2,"805":4,"806":1,"809":1,"811":1,"813":1,"815":1,"817":1,"819":1,"821":1,"822":1,"823":1,"824":5,"825":4,"826":1,"828":5,"831":6,"832":1,"833":1,"835":1,"836":1,"838":1,"840":1,"842":1,"844":1,"846":1,"848":1,"849":1,"850":1,"851":1,"852":1,"853":5,"854":4,"855":1,"860":5,"863":6,"864":1,"865":1,"867":1,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":5,"886":4,"887":1,"890":5,"893":6,"894":1,"895":1,"897":1,"898":1,"899":1,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"912":1,"913":1,"914":1,"915":1,"916":1,"917":5,"918":8,"919":1,"920":4,"925":5,"928":6,"929":1,"930":1,"932":1,"933":1,"934":1,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"947":1,"948":1,"949":1,"950":1,"951":1,"952":5,"953":4,"954":1,"959":5,"962":6,"963":1,"964":1,"966":1,"967":1,"968":1,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"981":1,"982":1,"983":1,"984":1,"985":1,"986":5,"987":4,"988":1,"993":5,"996":6,"997":1,"998":1,"1000":1,"1001":1,"1002":1,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":5,"1021":4,"1022":1,"1027":5,"1030":6,"1031":1,"1032":1,"1034":1,"1035":1,"1036":1,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":5,"1055":4,"1056":1,"1061":5,"1064":6,"1065":1,"1066":1,"1068":1,"1069":1,"1070":1,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1083":1,"1084":1,"1085":1,"1086":1,"1087":1,"1088":5,"1089":8,"1090":1,"1091":4,"1095":5,"1098":6,"1099":1,"1100":1,"1102":1,"1103":1,"1104":1,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1117":1,"1118":1,"1119":1,"1120":1,"1121":1,"1122":5,"1123":8,"1124":1,"1125":4,"1129":5,"1132":6,"1133":1,"1134":1,"1136":1,"1137":1,"1138":1,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":5,"1157":4,"1158":1,"1163":5,"1166":6,"1167":1,"1168":2,"1170":1,"1171":1,"1172":1,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":2,"1190":4,"1191":2,"1192":3,"1194":2,"1195":6,"1196":2,"1197":3,"1198":6,"1200":4,"1201":4,"1202":1,"1205":1,"1211":1,"1212":5,"1213":4,"1214":1,"1216":5,"1219":6,"1220":1,"1221":1,"1223":1,"1224":1,"1225":1,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1239":1,"1240":1,"1241":1,"1243":4,"1245":1,"1247":1,"1263":1,"1264":4,"1266":1,"1268":1,"1280":1,"1281":4,"1282":1,"1286":3,"1287":3,"1288":3,"1289":3,"1290":2,"1291":2,"1296":3,"1299":1,"1300":3,"1302":1,"1315":2,"1390":2,"1470":1,"1471":3,"1474":1,"1475":1,"1477":2,"1536":1,"1538":1,"1553":1,"1554":2,"1555":3,"1556":1,"1557":2,"1559":2,"1560":2,"1562":3,"1563":2,"1672":2,"1677":1,"1767":3,"1839":5,"1937":1,"1939":2,"1958":1,"1981":3,"1982":2,"1983":2,"1984":1,"1985":2,"1986":1,"1996":1,"1997":2,"1998":1,"1999":1,"2000":1,"2001":1,"2002":1,"2005":2,"2010":1,"2011":1,"2012":1,"2013":1,"2014":2,"2015":6,"2016":1,"2059":5,"2074":1,"2179":3,"2255":1,"2276":1,"2367":2,"2369":1,"2381":1,"2383":1,"2411":1,"2454":1,"2456":2,"2457":3,"2458":2,"2515":1,"2567":1,"2685":11,"2689":1,"2690":2,"2691":2,"2692":1,"2695":10,"2697":7,"2722":1,"2746":2,"2749":1,"2750":2,"2848":1,"2849":2,"2850":2,"2851":3,"2852":2,"2857":4,"2864":2,"2868":2,"2870":2,"2871":2,"2873":2,"2876":5}}],["drivers",{"0":{"128":1,"146":1,"383":1,"1997":1,"2451":1,"2452":1,"2689":1,"2749":1},"1":{"147":1,"148":1,"1998":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":1,"2015":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1,"2690":1,"2691":1,"2692":1},"2":{"1":1,"33":2,"65":1,"74":2,"93":1,"113":2,"114":4,"128":1,"133":2,"134":11,"175":1,"176":3,"199":1,"211":2,"222":5,"233":2,"234":1,"236":8,"249":21,"266":1,"277":2,"294":1,"383":2,"682":2,"685":3,"686":1,"723":1,"726":1,"728":1,"746":1,"747":1,"748":1,"750":1,"761":1,"823":1,"825":1,"852":1,"854":1,"884":1,"886":1,"916":1,"918":1,"920":1,"951":1,"953":1,"985":1,"987":1,"1019":1,"1021":1,"1053":1,"1055":1,"1087":1,"1089":1,"1091":1,"1121":1,"1123":1,"1125":1,"1155":1,"1157":1,"1189":1,"1190":2,"1211":1,"1213":1,"1242":1,"1263":1,"1286":1,"1292":2,"1315":1,"1402":1,"1478":1,"1552":1,"1553":2,"1557":1,"1672":1,"1838":1,"1839":1,"1840":1,"1940":1,"1947":1,"1981":1,"2014":2,"2015":2,"2029":1,"2058":1,"2059":1,"2060":1,"2254":1,"2440":1,"2451":1,"2456":1,"2689":1,"2694":1,"2695":1,"2696":2,"2721":1,"2732":2,"2738":1,"2739":1,"2746":16,"2747":1,"2749":13,"2751":1,"2752":3,"2850":1,"2876":1}}],["drgblight",{"2":{"2440":2}}],["dr",{"2":{"2294":3,"2805":1}}],["drum",{"2":{"2242":1}}],["drone",{"2":{"676":1,"681":1}}],["drops",{"2":{"2372":1}}],["dropdown",{"2":{"683":1,"1309":1,"1310":1,"2324":1,"2667":2}}],["drop",{"2":{"73":1,"114":1,"119":1,"131":3,"134":1,"172":1,"173":1,"207":2,"211":1,"222":2,"236":1,"594":1,"597":1,"1385":1,"2557":1,"2560":1,"2599":1,"2644":1,"2681":1,"2699":1}}],["dropped",{"0":{"166":1},"2":{"50":1}}],["dry",{"2":{"453":1}}],["drv",{"2":{"328":1}}],["drv2605l",{"0":{"1676":1,"1680":1,"1681":1,"1682":1},"1":{"1677":1,"1678":1,"1679":1,"1680":1},"2":{"221":2,"1672":1,"1674":4,"1676":1,"1678":5,"1679":8,"1680":3,"1681":2}}],["drhigsby",{"2":{"143":4,"149":2}}],["drastically",{"2":{"1412":1}}],["drashna",{"2":{"93":1,"114":5,"123":1,"134":1,"175":1,"179":1,"191":1,"1441":1,"2072":1}}],["drags",{"2":{"1935":1}}],["drag",{"0":{"2024":1,"2025":1},"2":{"236":1,"597":1,"1980":1,"2017":1,"2024":3,"2025":10,"2607":1}}],["drawtext",{"2":{"2750":7}}],["drawimage",{"2":{"2750":7}}],["drawing",{"0":{"2750":1},"2":{"125":5,"153":3,"1948":1,"2283":1,"2746":1,"2749":14,"2750":8,"2754":1}}],["draws",{"2":{"2749":1,"2750":1}}],["drawbacks",{"2":{"1340":1}}],["drawn",{"2":{"644":1,"678":1,"2749":2,"2750":3,"2771":1}}],["draw",{"2":{"153":1,"678":1,"2749":3,"2750":34,"2754":2,"2771":4,"2875":1}}],["drain",{"0":{"1294":1},"2":{"149":1,"243":1,"758":2,"1194":1,"1294":2}}],["draculad",{"2":{"114":1}}],["dm",{"2":{"1655":12,"1657":2,"2523":5}}],["dmote",{"2":{"226":2,"236":1}}],["dmq",{"2":{"176":1}}],["dmacros",{"2":{"1442":1}}],["dma1",{"2":{"1300":1}}],["dma",{"2":{"49":1,"50":3,"266":1,"765":4,"1289":2,"1290":1,"1291":1,"1300":4,"2682":1}}],["dmas",{"2":{"49":1}}],["dmamux",{"2":{"49":4,"1300":3}}],["dm9records",{"2":{"37":3}}],["dutch",{"2":{"2880":1}}],["duty",{"2":{"63":1,"766":2,"1547":1,"1550":1,"1552":1}}],["duophony",{"2":{"559":3}}],["duckypad",{"2":{"222":1}}],["ducky",{"2":{"211":1}}],["duckduckgo",{"2":{"196":1,"1801":1}}],["dumbpad",{"2":{"191":1}}],["dummy",{"2":{"191":1,"222":1,"294":2,"693":1,"1758":4,"2917":4,"2919":1}}],["dumps",{"2":{"2410":3}}],["dump",{"2":{"49":3,"176":1,"211":1,"277":1,"623":1,"2410":5}}],["dubba175",{"2":{"143":2}}],["duplex",{"0":{"1193":1,"1196":1},"1":{"1194":1,"1195":1,"1197":1,"1198":1},"2":{"93":1,"107":3,"114":2,"176":1,"191":1,"277":1,"1189":2,"1190":2,"1193":4,"1194":1,"1195":1,"1196":4,"1197":1,"1198":3,"1202":3,"1204":2,"2697":4}}],["duplicating",{"2":{"328":1,"2668":1}}],["duplication",{"2":{"4":1,"211":1,"236":3,"285":1,"308":5,"328":1,"333":1,"663":1,"2668":1,"2721":1}}],["duplicates",{"2":{"236":1}}],["duplicated",{"2":{"75":1,"236":1,"308":1,"1696":1}}],["duplicate",{"2":{"4":1,"70":2,"75":1,"76":1,"160":1,"176":1,"191":2,"199":3,"211":2,"266":1,"277":1,"308":1,"317":1,"327":1,"333":1,"667":1,"2427":1,"2629":2,"2768":1,"2844":1}}],["duration",{"2":{"119":1,"120":1,"222":2,"656":1,"1445":1,"1448":2,"1487":3,"1592":1,"1756":1,"2065":1,"2191":2}}],["durgod",{"2":{"86":4,"102":2,"114":2,"149":1,"181":4,"191":1,"199":1,"207":2,"211":1,"322":2,"328":1}}],["during",{"2":{"49":1,"103":1,"107":1,"116":1,"118":1,"126":1,"131":1,"149":1,"170":1,"176":1,"191":1,"201":2,"213":1,"236":1,"249":1,"273":1,"297":3,"308":1,"312":1,"333":1,"453":1,"628":1,"632":1,"644":1,"649":1,"715":1,"716":1,"719":1,"746":1,"1367":1,"1480":1,"1516":1,"1552":1,"1656":1,"1675":2,"1681":1,"1941":1,"1950":1,"1951":1,"1955":1,"2030":1,"2032":2,"2033":1,"2181":1,"2189":1,"2270":1,"2279":1,"2427":1,"2669":2,"2721":1,"2749":2,"2757":1,"2768":1,"2769":1,"2853":1,"2897":1,"2911":2,"2933":1}}],["dualbank",{"2":{"176":1}}],["dual",{"2":{"49":3,"114":2,"149":1,"176":1,"194":1,"562":3,"572":1,"1843":4,"2063":15,"2302":1,"2411":1,"2669":8,"2887":2,"2901":2,"2902":8,"2908":8,"2909":5,"2910":1,"2917":1}}],["due",{"2":{"45":1,"114":1,"120":1,"128":1,"134":2,"153":1,"167":1,"199":1,"233":1,"236":1,"273":1,"284":1,"285":1,"308":1,"1196":1,"1285":1,"1287":1,"1289":1,"1300":1,"1315":1,"1317":1,"1345":1,"1364":1,"1484":1,"1497":1,"1518":1,"1528":1,"1840":1,"2039":1,"2060":1,"2178":1,"2287":1,"2323":1,"2324":1,"2491":1,"2497":1,"2547":1,"2552":1,"2567":2,"2621":1,"2672":1,"2679":1,"2703":1,"2719":1,"2721":1,"2746":1,"2837":1,"2894":1,"2895":1,"2930":1}}],["dfsr",{"2":{"2501":1}}],["dflash",{"2":{"1443":1}}],["df11",{"2":{"686":2,"2386":1,"2391":1}}],["df1deb37c163",{"2":{"371":1}}],["df",{"2":{"38":1,"247":2,"317":1,"1416":1,"1621":2,"2031":1,"2502":1,"2512":1,"2528":1}}],["dfu",{"0":{"1315":1,"2376":1,"2377":1,"2386":1,"2389":1,"2390":1,"2391":1,"2491":1,"2605":1},"1":{"2377":1,"2378":1,"2387":1,"2392":1},"2":{"12":1,"49":2,"111":1,"114":1,"160":1,"199":1,"222":2,"240":5,"566":6,"571":4,"686":19,"1312":3,"1362":4,"1675":1,"2266":6,"2376":11,"2377":1,"2378":5,"2385":1,"2386":6,"2387":6,"2388":4,"2389":3,"2390":4,"2391":5,"2392":4,"2410":4,"2496":1,"2498":2,"2501":1,"2605":1,"2608":5,"2675":1}}],["d14",{"2":{"692":2}}],["d13",{"2":{"692":2}}],["d12",{"2":{"692":2}}],["d11",{"2":{"692":2}}],["d10",{"2":{"692":2}}],["d1",{"2":{"34":1,"568":1,"764":2,"1192":1,"1265":2,"1392":1,"1919":1,"1982":1,"2259":1,"2268":1,"2532":1,"2684":1,"2712":1}}],["d0",{"2":{"34":1,"559":1,"568":2,"764":2,"1192":1,"1265":2,"1368":1,"1392":1,"2259":1,"2265":1,"2268":2,"2684":1}}],["dio",{"2":{"2500":1}}],["dioded",{"2":{"2459":1}}],["diodes",{"0":{"2421":1,"2431":1},"2":{"2257":1,"2414":1,"2418":1,"2420":1,"2421":3,"2422":2,"2712":1,"2821":1,"2865":2}}],["diode",{"0":{"2712":1},"2":{"70":2,"111":1,"199":1,"559":2,"1400":1,"1404":1,"1625":1,"2265":2,"2273":3,"2416":4,"2420":1,"2421":12,"2424":2,"2427":2,"2459":4,"2712":1,"2713":1,"2721":1,"2819":1,"2865":1}}],["diameter",{"2":{"2006":3}}],["diagram",{"2":{"1675":1,"2687":1}}],["diagnose",{"2":{"1326":1}}],["dialog",{"2":{"1348":1}}],["die",{"2":{"1285":1}}],["dinterrupt",{"2":{"571":1}}],["ding",{"2":{"120":1,"1445":1}}],["diy",{"2":{"559":2,"2888":3}}],["dimensional",{"2":{"2296":1,"2865":1}}],["dimensions",{"2":{"2002":1,"2712":1,"2713":3}}],["dims",{"2":{"2185":1}}],["dimming",{"2":{"1547":1}}],["dimmer",{"2":{"492":1}}],["dim",{"2":{"492":1}}],["dictated",{"2":{"765":1,"1481":1}}],["dictionaries",{"0":{"535":1},"2":{"1447":1,"1616":1,"2862":2,"2864":1,"2871":1}}],["dictionary",{"0":{"1616":1},"2":{"196":1,"493":1,"495":1,"496":1,"1521":3,"1522":1,"2284":1,"2847":1,"2862":4,"2864":2,"2870":1,"2871":2}}],["dict",{"2":{"211":1,"668":1,"1523":1}}],["dilemma",{"2":{"176":2,"249":1,"311":2,"317":1}}],["dig",{"2":{"1477":1,"2472":1,"2924":1}}],["digest",{"2":{"153":1}}],["digit",{"2":{"1777":3,"2231":1,"2233":1,"2235":1,"2237":1,"2496":1,"2875":2}}],["digital",{"2":{"160":1,"576":1,"584":1,"687":1,"1395":1,"1406":2,"1767":1,"2063":3,"2423":2,"2887":1}}],["digits",{"2":{"134":1,"397":1,"1522":1,"2459":1}}],["digitizers",{"2":{"190":1,"1639":1}}],["digitizer",{"0":{"100":1,"190":1,"1639":1,"1644":1,"1646":1,"1647":1,"1648":1,"1649":1,"1650":1,"1651":1,"1652":1,"1653":1},"1":{"1640":1,"1641":1,"1642":1,"1643":1,"1644":1,"1645":2,"1646":1,"1647":1,"1648":1,"1649":1,"1650":1,"1651":1,"1652":1,"1653":1,"1654":2},"2":{"100":2,"114":1,"190":3,"191":2,"1642":7,"1644":1,"1645":3,"1646":1,"1653":1}}],["dive",{"2":{"2428":1}}],["diverged",{"2":{"1340":1}}],["divergetm2",{"2":{"143":2}}],["diverge3",{"2":{"143":2}}],["dividing",{"0":{"336":1},"2":{"1249":1}}],["divided",{"2":{"1946":1,"2282":1}}],["divide",{"2":{"747":1,"756":1,"1943":1}}],["dividends",{"2":{"198":1}}],["divider",{"2":{"191":1,"724":6,"1766":1,"2851":5}}],["divine",{"2":{"236":1}}],["division",{"2":{"114":1}}],["divisors",{"2":{"1297":1,"2025":1}}],["divisor",{"0":{"1248":1},"1":{"1249":1,"1250":1},"2":{"114":1,"236":1,"728":2,"747":2,"756":2,"1249":3,"1262":1,"1296":2,"1297":1,"1945":1,"1990":2,"1999":2,"2000":1,"2006":2,"2011":2,"2014":2,"2025":6,"2281":2,"2749":11}}],["dir=",{"2":{"2585":1,"2586":1,"2587":1}}],["dirty",{"2":{"114":1,"191":2,"199":1,"230":1,"1642":1,"1645":1,"1646":1,"1775":1,"1778":1,"1942":1,"1943":1,"1946":3,"1948":5,"2282":3,"2283":2,"2629":1,"2749":5}}],["dir",{"2":{"114":1}}],["dire",{"2":{"93":1}}],["directs",{"2":{"2566":1}}],["directives",{"2":{"520":2,"553":1}}],["directive",{"2":{"172":1}}],["directional",{"0":{"259":1},"2":{"236":1,"256":1}}],["directions",{"2":{"201":2,"211":1,"307":1,"1659":1,"1661":1,"1924":1,"1933":1,"2050":1}}],["direction",{"2":{"13":3,"70":2,"111":1,"191":1,"199":1,"211":2,"559":1,"617":1,"1400":1,"1404":1,"1658":5,"1659":2,"1934":1,"1943":1,"1993":1,"2159":2,"2181":2,"2416":1,"2420":1,"2537":2,"2712":2,"2713":1,"2721":1,"2865":1}}],["directpins",{"2":{"114":1}}],["directors",{"2":{"403":1}}],["directory",{"2":{"36":2,"50":1,"114":1,"132":1,"133":1,"134":3,"149":2,"160":1,"222":1,"236":1,"387":1,"427":9,"428":2,"430":1,"435":2,"438":2,"440":2,"443":2,"444":1,"446":1,"447":1,"448":1,"460":1,"461":1,"503":1,"521":1,"586":1,"614":1,"621":1,"1627":1,"1628":1,"1633":1,"1844":2,"2066":2,"2162":1,"2400":1,"2406":1,"2407":1,"2412":1,"2425":1,"2435":1,"2494":1,"2495":1,"2501":1,"2576":1,"2583":1,"2587":3,"2588":1,"2589":1,"2600":2,"2607":1,"2619":1,"2622":1,"2652":3,"2655":2,"2667":2,"2668":1,"2702":1,"2707":1,"2748":6}}],["directories",{"2":{"18":1,"113":1,"114":3,"2719":1,"2721":1}}],["directly",{"2":{"16":1,"50":1,"132":1,"134":1,"164":1,"236":1,"338":3,"397":1,"489":1,"509":1,"563":2,"579":1,"666":1,"690":1,"718":1,"721":1,"751":1,"1197":1,"1204":1,"1287":1,"1422":2,"1477":1,"1555":1,"1564":1,"1624":1,"1642":1,"1663":1,"1743":1,"1751":1,"1765":1,"1844":1,"1917":2,"1986":1,"1996":1,"2014":1,"2025":1,"2066":1,"2175":1,"2183":1,"2271":2,"2274":1,"2322":1,"2367":1,"2368":1,"2384":1,"2407":2,"2417":1,"2418":1,"2459":1,"2460":1,"2466":1,"2476":1,"2489":1,"2593":1,"2613":1,"2627":1,"2651":1,"2671":1,"2683":1,"2705":1,"2713":1,"2721":2,"2761":1,"2762":1,"2769":1,"2773":1}}],["direct",{"0":{"340":1,"1310":1,"2198":1,"2713":1},"2":{"3":1,"7":1,"15":1,"63":1,"199":2,"222":6,"335":1,"470":1,"559":1,"568":5,"637":3,"1308":9,"1309":3,"1310":3,"2271":2,"2567":1,"2651":1,"2713":3,"2721":2,"2734":1,"2865":2,"2929":1}}],["dip",{"0":{"105":1,"247":1,"1620":1,"1621":1,"1624":1,"1625":1,"2856":1},"1":{"1621":1,"1622":1,"1623":1,"1624":1,"1625":1},"2":{"105":13,"114":6,"191":1,"236":3,"247":9,"249":3,"328":1,"690":1,"1620":7,"1621":10,"1622":6,"1624":1,"1625":1,"2856":3,"2873":2}}],["di",{"2":{"70":1,"201":1,"211":3,"563":2,"701":2,"1282":2,"1291":1,"1294":3,"1295":1,"2179":2,"2848":1,"2876":1}}],["didn",{"2":{"279":1,"1450":1,"2308":1,"2666":1}}],["did",{"0":{"1328":1},"2":{"31":1,"125":1,"163":1,"185":1,"221":1,"602":1,"1493":2,"1531":1,"1807":4,"2427":1,"2577":1,"2580":1,"2609":1}}],["disk",{"2":{"2393":1,"2395":1,"2397":1}}],["dis",{"0":{"1607":1}}],["disputes",{"2":{"2895":1}}],["disposal",{"2":{"2183":1}}],["displacements",{"2":{"1639":1}}],["displaying",{"2":{"2269":2}}],["displayed",{"2":{"481":1,"488":1,"1284":1,"1285":1,"2757":1,"2788":1}}],["displays",{"0":{"1946":1,"2282":1},"1":{"1947":1},"2":{"153":2,"210":1,"232":2,"236":1,"248":2,"249":1,"435":1,"644":1,"686":1,"1706":2,"1849":1,"1942":1,"1943":1,"1946":7,"1947":1,"2072":1,"2280":1,"2293":1,"2410":2,"2454":1,"2721":2,"2746":1,"2747":1,"2749":26}}],["display",{"0":{"2749":1},"2":{"30":1,"31":3,"33":1,"34":2,"49":1,"63":1,"64":1,"82":1,"83":1,"92":1,"114":1,"123":1,"125":1,"153":1,"185":1,"211":1,"236":1,"435":1,"475":1,"643":1,"1321":1,"1322":1,"1323":1,"1529":1,"1641":1,"1693":8,"1698":1,"1700":1,"1702":1,"1704":1,"1705":1,"1707":2,"1709":1,"1711":1,"1717":1,"1718":1,"1719":1,"1720":1,"1721":1,"1724":2,"1726":2,"1730":1,"1845":1,"1929":1,"1941":3,"1942":1,"1943":3,"1944":2,"1945":5,"1946":23,"1947":2,"1948":13,"2068":1,"2269":2,"2276":1,"2279":4,"2280":4,"2281":5,"2282":8,"2283":14,"2291":2,"2428":1,"2438":1,"2441":1,"2515":1,"2602":2,"2710":1,"2722":1,"2746":1,"2747":5,"2749":13,"2750":46,"2751":1,"2752":2,"2754":15,"2757":1,"2787":1,"2792":1,"2844":1,"2862":1}}],["dispatched",{"2":{"2928":1}}],["dispatches",{"2":{"2928":1}}],["dispatchconsumerevent",{"2":{"1354":1}}],["dispatch",{"2":{"578":1,"2600":1,"2932":1}}],["disregarding",{"2":{"2896":1}}],["disregarded",{"2":{"338":3,"397":1,"1638":1}}],["disrupting",{"2":{"2188":1}}],["disruption",{"2":{"103":1}}],["distclean",{"2":{"2410":1}}],["distinguish",{"2":{"2310":1,"2835":1}}],["distinction",{"2":{"2554":1}}],["distinct",{"0":{"2904":1},"2":{"308":1,"1189":1,"1197":1,"1547":1,"1664":1,"2170":1}}],["distance",{"2":{"2003":9,"2014":2,"2064":1,"2424":1}}],["distances",{"2":{"1491":1,"1930":1,"1932":1}}],["distributions",{"2":{"2619":2,"2726":1,"2734":1}}],["distribution",{"2":{"2499":1,"2568":1,"2619":1,"2620":1,"2728":1,"2735":1,"2740":1}}],["distribute",{"2":{"583":1,"2728":1}}],["distributed",{"2":{"284":1,"1438":1,"2721":1,"2725":1,"2731":1,"2732":1}}],["distributable",{"2":{"284":1}}],["distros",{"2":{"1329":2,"2324":1}}],["distro",{"2":{"199":1}}],["disuse",{"2":{"285":1}}],["discretion",{"2":{"2722":1,"2896":1}}],["disclosure",{"2":{"2568":1,"2721":1}}],["disclose",{"2":{"2567":1}}],["disc",{"2":{"1673":1}}],["discusses",{"2":{"1406":1}}],["discussed",{"2":{"50":1,"617":1,"1427":1}}],["discuss",{"2":{"553":1,"2719":1}}],["discussion",{"2":{"265":1,"2892":1}}],["discarded",{"2":{"176":1,"743":1,"2748":1}}],["discovered",{"2":{"2432":1}}],["discovery",{"2":{"119":1,"191":1,"222":1,"328":1}}],["discouraged",{"2":{"338":1,"664":1,"2719":1}}],["disconnection",{"2":{"2268":1}}],["disconnect",{"2":{"149":1,"191":2,"1330":1,"2258":1}}],["disconnected",{"2":{"107":1,"134":1,"176":1,"2268":2,"2608":1}}],["discord",{"0":{"406":1},"2":{"49":1,"50":1,"213":1,"228":1,"276":1,"284":1,"399":1,"400":1,"401":1,"405":1,"406":1,"412":1,"552":1,"608":1,"610":1,"617":1,"642":1,"666":1,"670":1,"1339":1,"1634":1,"2428":1,"2474":1,"2567":1,"2605":1,"2610":1,"2699":1,"2718":1,"2719":2,"2722":1,"2890":1}}],["discharge",{"2":{"49":1}}],["disappearance",{"2":{"2896":1}}],["disappearing",{"2":{"26":1}}],["disadvantages",{"2":{"2468":1}}],["disallowed",{"2":{"2570":1}}],["disallows",{"2":{"2467":1}}],["disallow",{"2":{"1607":1}}],["disabling",{"0":{"1805":1,"2190":1,"2756":1},"2":{"28":1,"134":1,"266":1,"308":1,"510":1,"569":1,"1346":2,"1375":2,"2039":1,"2042":1,"2285":1,"2801":1,"2882":3,"2887":1,"2910":1}}],["disables",{"2":{"114":1,"297":1,"562":1,"572":1,"1413":1,"1506":1,"1587":2,"1610":1,"1615":1,"1656":1,"2039":1,"2040":1,"2748":4,"2882":3,"2911":1,"2913":1}}],["disabled",{"0":{"560":1},"2":{"50":1,"124":1,"134":2,"236":1,"249":1,"559":1,"617":2,"693":1,"760":2,"1369":1,"1389":1,"1413":1,"1479":1,"1487":1,"1492":2,"1495":1,"1520":1,"1527":3,"1583":1,"1604":1,"1610":1,"1617":1,"1672":2,"1675":1,"2012":1,"2032":2,"2039":1,"2042":1,"2159":1,"2192":1,"2213":1,"2251":1,"2302":1,"2324":1,"2491":4,"2747":1,"2875":1,"2911":1,"2913":1,"2927":1}}],["disable",{"0":{"25":1,"1568":1,"1580":1,"1855":1,"1856":1,"2042":1,"2081":1,"2082":1,"2200":1},"2":{"25":7,"50":1,"77":2,"114":6,"134":4,"158":1,"160":1,"176":1,"183":2,"191":2,"194":1,"195":1,"211":2,"222":2,"232":1,"236":3,"249":2,"297":1,"308":2,"328":1,"333":1,"391":1,"432":1,"492":1,"560":6,"562":1,"572":1,"649":1,"724":2,"765":1,"818":3,"820":1,"845":3,"847":1,"909":3,"911":1,"944":3,"946":1,"978":3,"980":1,"1012":3,"1014":1,"1046":3,"1048":1,"1235":3,"1237":1,"1245":1,"1369":1,"1373":1,"1375":2,"1402":1,"1409":1,"1413":2,"1442":1,"1484":2,"1527":1,"1530":1,"1588":1,"1589":1,"1600":2,"1607":2,"1615":1,"1655":1,"1678":1,"1679":1,"1749":1,"1805":1,"1929":1,"1943":2,"1988":1,"1990":2,"2019":1,"2025":3,"2027":1,"2039":3,"2042":2,"2044":2,"2075":2,"2176":2,"2181":1,"2184":1,"2186":2,"2189":1,"2190":1,"2200":2,"2203":1,"2244":1,"2246":1,"2247":4,"2253":2,"2268":2,"2281":1,"2287":1,"2291":1,"2324":1,"2370":1,"2411":4,"2495":1,"2513":2,"2521":1,"2531":2,"2600":1,"2660":1,"2667":2,"2674":1,"2748":2,"2847":1,"2851":2,"2864":1,"2870":1,"2871":1,"2872":2,"2875":1,"2882":2,"2883":2,"2884":1,"2887":2,"2901":1,"2912":2,"2913":3,"2919":1}}],["diffused",{"2":{"2178":1}}],["diffoled",{"2":{"332":1}}],["difficulty",{"0":{"1745":1},"1":{"1746":1,"1747":1}}],["difficulties",{"2":{"1602":1}}],["difficult",{"2":{"119":1,"123":1,"125":1,"185":1,"246":1,"548":1,"1327":1,"1805":1,"1929":1,"2417":1,"2418":2,"2421":1,"2422":1,"2723":1}}],["differs",{"2":{"2714":1,"2787":1}}],["difference",{"0":{"1757":1},"2":{"1375":1,"2704":1,"2724":1}}],["differences",{"0":{"1340":1},"2":{"2615":1}}],["differentiating",{"2":{"2289":1}}],["differentiates",{"2":{"649":1}}],["differentiate",{"2":{"535":1}}],["differently",{"2":{"1484":1,"1513":1,"1930":1,"1942":1,"1950":1,"2262":1,"2271":1,"2280":1,"2301":1,"2323":1,"2510":1,"2548":1,"2918":1}}],["different",{"0":{"2043":1,"2300":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"49":1,"191":1,"204":1,"420":1,"428":1,"548":1,"556":1,"566":1,"568":2,"613":2,"617":3,"624":1,"649":1,"683":2,"692":1,"698":2,"751":1,"757":1,"1283":1,"1284":1,"1308":1,"1324":1,"1368":1,"1392":1,"1407":1,"1415":1,"1420":2,"1427":2,"1436":5,"1443":1,"1446":1,"1454":1,"1479":1,"1483":1,"1484":1,"1487":1,"1492":1,"1497":1,"1532":1,"1547":1,"1584":1,"1586":1,"1596":1,"1613":1,"1660":1,"1677":1,"1679":1,"1736":3,"1754":1,"1757":1,"1924":1,"1928":1,"1931":1,"1937":1,"1942":1,"1950":1,"2000":2,"2014":2,"2185":1,"2187":1,"2189":1,"2206":1,"2216":1,"2252":1,"2254":1,"2271":5,"2280":1,"2288":1,"2289":1,"2375":2,"2407":1,"2423":1,"2428":2,"2451":1,"2475":1,"2490":1,"2554":1,"2567":1,"2582":2,"2605":2,"2655":1,"2657":1,"2662":1,"2719":2,"2721":2,"2749":2,"2758":1,"2764":1,"2765":2,"2879":1,"2887":1,"2902":1,"2908":1,"2927":1,"2929":1,"2934":2,"2937":2}}],["differ",{"2":{"69":1,"713":1,"2006":1,"2303":1,"2490":1,"2627":1}}],["diff",{"2":{"25":1,"149":1,"294":1,"348":1,"457":1,"613":1,"2186":1,"2793":2}}],["dollars",{"2":{"2837":1}}],["dollar",{"2":{"2539":1,"2558":1}}],["dolor",{"2":{"357":1}}],["dor1",{"2":{"1985":1}}],["doe",{"2":{"1517":3,"1599":2}}],["doesnt",{"2":{"191":1,"572":1}}],["doesn",{"0":{"1345":1,"1356":1,"1363":1,"1366":1,"1367":1,"2730":1},"1":{"2731":1,"2732":1},"2":{"114":1,"408":1,"427":1,"572":1,"597":1,"617":1,"681":1,"1315":1,"1346":1,"1361":1,"1363":2,"1378":1,"1421":1,"1441":1,"1443":1,"1487":1,"1519":1,"1523":1,"1603":1,"1606":1,"1946":1,"2018":1,"2211":1,"2286":1,"2410":1,"2411":1,"2422":1,"2427":1,"2447":1,"2453":1,"2609":1,"2610":1,"2667":1,"2696":1,"2930":2,"2932":1,"2937":1}}],["does",{"0":{"619":1,"1317":1,"1492":1,"1519":1,"2464":1,"2465":1},"2":{"23":1,"28":1,"50":1,"134":1,"236":1,"276":1,"320":1,"341":1,"359":1,"361":1,"363":1,"427":1,"459":1,"490":1,"493":1,"494":1,"503":1,"529":1,"559":1,"567":1,"584":1,"597":1,"607":1,"613":3,"624":1,"629":1,"641":1,"649":1,"654":1,"682":1,"704":1,"711":1,"720":1,"737":1,"751":1,"759":1,"764":1,"809":1,"813":1,"817":1,"819":1,"836":1,"840":1,"844":1,"846":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1200":1,"1201":1,"1226":1,"1230":1,"1234":1,"1236":1,"1263":1,"1303":1,"1359":1,"1362":1,"1407":1,"1421":1,"1422":2,"1448":1,"1452":1,"1478":2,"1491":1,"1493":1,"1504":1,"1512":1,"1587":2,"1616":1,"1638":1,"1660":1,"1735":1,"1757":1,"1765":1,"1767":1,"1948":2,"2050":1,"2165":1,"2171":1,"2263":1,"2294":1,"2310":1,"2312":1,"2322":1,"2367":1,"2404":1,"2420":1,"2421":1,"2445":1,"2463":1,"2467":1,"2468":2,"2496":1,"2499":1,"2515":1,"2516":1,"2554":1,"2567":1,"2569":1,"2592":2,"2609":1,"2612":2,"2655":1,"2684":1,"2698":1,"2700":2,"2703":1,"2710":1,"2719":2,"2721":2,"2745":1,"2762":1,"2788":1,"2790":1,"2875":1,"2895":1,"2902":1,"2919":1,"2926":1,"2930":1}}],["domain",{"2":{"335":1}}],["doing",{"2":{"284":1,"361":1,"492":1,"685":1,"1324":1,"1353":1,"1422":2,"1425":1,"1479":1,"1603":1,"2410":1,"2420":1,"2674":1,"2929":1,"2940":1}}],["doio",{"2":{"176":1,"191":1,"222":1,"249":1}}],["dogtag",{"2":{"211":1,"277":1,"447":2}}],["doxygen",{"2":{"160":1,"211":1,"2702":1}}],["doubt",{"2":{"713":1,"2573":1}}],["doubled",{"2":{"692":1,"2156":1,"2310":1}}],["double",{"0":{"2305":1,"2693":1},"2":{"152":1,"215":2,"391":1,"528":1,"605":1,"684":1,"685":1,"1417":1,"1588":4,"2156":1,"2262":2,"2302":3,"2305":1,"2308":1,"2310":22,"2311":4,"2312":5,"2393":2,"2395":2,"2397":3,"2423":1,"2428":1,"2496":1,"2539":1,"2558":1,"2560":1,"2652":1,"2693":7,"2695":1,"2854":1,"2882":1}}],["dout",{"2":{"45":1}}],["dozen0",{"2":{"143":2}}],["dozens",{"2":{"112":1}}],["dosa40rgb",{"2":{"134":1}}],["doc",{"2":{"199":1,"1350":1}}],["docker",{"0":{"2398":1},"1":{"2399":1,"2400":1,"2401":1,"2402":1},"2":{"114":1,"149":1,"2398":1,"2399":2,"2400":11,"2402":2}}],["docstring",{"0":{"530":1,"531":1,"532":1},"2":{"529":2}}],["docstrings",{"0":{"529":1},"1":{"530":1,"531":1,"532":1},"2":{"522":1,"529":2}}],["docs",{"0":{"458":1,"459":1},"2":{"114":3,"149":1,"160":1,"176":4,"182":1,"191":4,"199":2,"211":1,"222":1,"236":3,"285":1,"294":1,"328":3,"335":1,"397":1,"406":1,"458":3,"459":3,"614":3,"615":1,"617":1,"664":1,"681":3,"683":1,"1317":1,"1394":1,"2406":1,"2555":1,"2635":1,"2707":3,"2721":1}}],["doctor",{"0":{"433":1,"454":1},"2":{"114":3,"176":1,"199":3,"328":1,"333":1,"433":4,"454":1,"2609":1}}],["documenting",{"0":{"681":1},"2":{"2514":1}}],["documented",{"2":{"213":1,"312":1,"1531":1,"2383":1,"2446":1,"2453":1,"2584":1,"2739":1,"2744":1,"2833":1}}],["documents",{"2":{"32":1,"114":1,"398":1,"672":1,"1385":1,"2514":1,"2547":1,"2923":2,"2924":2,"2926":1}}],["documentation",{"0":{"22":1,"334":1,"473":1,"614":1,"615":1,"630":1,"634":1,"636":1,"637":1,"640":1,"643":1,"648":1,"652":1,"672":1,"675":1,"1414":1,"1426":1},"1":{"335":1,"336":1,"337":1,"338":1,"339":1,"340":1,"341":1,"342":1,"343":1,"344":1,"345":1,"346":1,"347":1,"348":1,"349":1,"350":1,"351":1,"352":1,"353":1,"354":1,"355":1,"356":1,"357":1,"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"615":1,"673":1,"674":1},"2":{"13":1,"22":1,"93":1,"99":1,"118":1,"123":1,"124":1,"134":1,"138":1,"149":1,"152":1,"153":1,"172":1,"174":1,"182":1,"195":1,"196":1,"202":1,"222":2,"228":1,"229":1,"232":1,"245":1,"247":1,"277":1,"288":1,"289":1,"297":1,"298":1,"304":1,"306":1,"315":1,"316":1,"320":1,"331":1,"334":1,"429":1,"459":1,"464":1,"465":1,"466":1,"503":1,"614":5,"668":1,"675":1,"676":1,"681":2,"698":1,"752":1,"1342":1,"1376":1,"1538":1,"1736":1,"1839":1,"1958":1,"2050":1,"2059":1,"2255":1,"2269":1,"2375":1,"2419":1,"2423":1,"2428":1,"2459":1,"2470":1,"2472":1,"2474":1,"2667":1,"2721":1,"2751":1,"2806":1,"2818":1,"2822":1,"2825":1,"2834":1,"2836":1,"2839":1,"2840":1,"2935":1,"2936":1}}],["document",{"0":{"411":1},"2":{"0":1,"76":1,"93":1,"176":1,"199":1,"363":1,"393":1,"397":1,"405":1,"419":1,"469":1,"484":1,"529":1,"549":1,"617":2,"675":1,"1422":1,"1438":1,"1633":1,"2293":1,"2583":1,"2626":2,"2628":2,"2646":1,"2657":1,"2672":1,"2718":1,"2719":2,"2726":1,"2788":2,"2897":1,"2926":1,"2929":1,"2930":1}}],["dots",{"2":{"552":1,"1691":2}}],["dotty",{"2":{"431":1,"668":1}}],["dotted",{"2":{"338":1}}],["dot",{"0":{"111":1},"2":{"111":1,"369":1,"587":2,"668":1,"1504":1,"1511":5,"1686":1,"2162":1,"2505":1,"2511":1,"2515":2,"2553":1,"2911":1,"2912":1}}],["downstream",{"2":{"2721":1}}],["downside",{"2":{"2697":1}}],["downward",{"2":{"2021":2}}],["downloadable",{"2":{"2568":1}}],["downloads",{"2":{"446":1,"447":1,"448":1,"579":2,"582":1,"2425":1,"2632":1}}],["downloaded",{"2":{"387":1,"2499":1,"2501":1,"2600":1,"2667":2}}],["download",{"0":{"365":1,"2651":1},"2":{"158":1,"360":1,"365":1,"366":1,"368":1,"385":1,"584":2,"598":1,"599":1,"1315":2,"2403":1,"2425":1,"2590":1,"2599":1,"2602":1,"2651":1,"2661":1,"2663":1,"2666":1}}],["down",{"0":{"647":1,"1452":1,"2814":1},"2":{"90":2,"119":3,"120":1,"149":1,"209":1,"222":1,"236":1,"255":1,"266":1,"328":1,"369":1,"587":4,"594":1,"628":1,"646":1,"647":1,"648":2,"673":1,"674":1,"683":1,"746":1,"758":1,"1348":1,"1359":1,"1386":1,"1407":6,"1410":1,"1416":1,"1419":1,"1421":1,"1445":1,"1448":6,"1451":1,"1452":3,"1458":1,"1484":2,"1487":4,"1489":2,"1492":2,"1493":1,"1497":1,"1515":3,"1516":3,"1517":1,"1527":2,"1549":2,"1583":1,"1606":2,"1618":1,"1638":3,"1662":1,"1666":1,"1667":1,"1674":2,"1679":1,"1688":2,"1732":2,"1734":1,"1737":2,"1740":2,"1746":6,"1749":3,"1751":3,"1752":6,"1754":9,"1755":6,"1756":4,"1757":1,"1842":2,"1843":7,"1919":8,"1927":5,"1929":1,"1947":1,"1948":1,"2000":1,"2016":1,"2025":1,"2040":2,"2044":1,"2050":1,"2062":4,"2063":7,"2069":1,"2159":10,"2177":1,"2181":4,"2215":1,"2246":2,"2265":1,"2283":1,"2293":4,"2302":1,"2310":1,"2312":1,"2323":1,"2377":1,"2384":1,"2411":1,"2427":1,"2443":1,"2448":1,"2459":2,"2506":1,"2509":6,"2510":5,"2511":2,"2515":14,"2517":2,"2518":3,"2520":2,"2526":1,"2530":2,"2532":8,"2533":5,"2536":2,"2537":4,"2538":4,"2549":1,"2553":2,"2557":1,"2559":1,"2560":1,"2563":1,"2578":1,"2599":1,"2605":4,"2643":1,"2644":2,"2675":1,"2750":5,"2757":1,"2814":1,"2824":1,"2827":1,"2832":1,"2835":1,"2882":1,"2887":2,"2901":14,"2902":5,"2904":4,"2905":6,"2906":4,"2908":8,"2909":2,"2910":3,"2914":5,"2942":2}}],["downbubble",{"2":{"43":2}}],["dongles",{"2":{"2501":1}}],["dongle",{"2":{"2387":2,"2498":1}}],["donating",{"2":{"608":1}}],["done",{"2":{"104":1,"114":1,"125":1,"127":2,"182":1,"185":2,"224":1,"387":1,"403":1,"421":1,"549":1,"599":1,"603":1,"654":1,"671":1,"684":1,"743":1,"757":1,"1197":1,"1245":1,"1311":1,"1375":1,"1378":1,"1387":1,"1413":1,"1425":1,"1443":1,"1496":2,"1531":1,"1532":1,"1930":1,"1947":1,"1953":1,"2021":1,"2043":1,"2273":1,"2288":1,"2376":2,"2381":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2403":8,"2420":1,"2423":1,"2425":1,"2427":1,"2428":1,"2449":2,"2466":1,"2495":1,"2575":1,"2588":1,"2611":1,"2622":1,"2631":1,"2632":1,"2666":1,"2667":1,"2721":1,"2723":2,"2724":1,"2749":22,"2750":1,"2883":1,"2888":1,"2930":1,"2937":1}}],["don",{"0":{"608":1,"1317":1,"1333":1},"2":{"31":1,"34":1,"119":1,"149":2,"166":1,"191":1,"198":1,"199":1,"222":1,"232":1,"277":2,"373":1,"453":1,"487":1,"520":1,"521":1,"522":1,"524":1,"546":1,"608":1,"617":1,"1205":1,"1245":1,"1310":1,"1316":1,"1337":1,"1340":1,"1351":2,"1362":1,"1406":1,"1412":1,"1441":2,"1443":1,"1458":1,"1484":1,"1485":1,"1511":1,"1519":1,"1531":1,"1583":1,"1603":1,"1662":1,"1736":1,"2017":1,"2030":1,"2273":1,"2290":1,"2313":1,"2402":1,"2420":1,"2459":1,"2551":2,"2566":1,"2572":1,"2579":1,"2586":1,"2608":1,"2609":1,"2621":1,"2651":1,"2662":1,"2687":1,"2707":1,"2710":1,"2779":1,"2787":1,"2883":3,"2887":1,"2901":2,"2924":1,"2936":1,"2942":2}}],["do",{"0":{"409":2,"603":2,"611":1,"1361":1,"1490":1,"1494":1,"1520":1,"1588":1,"1760":1,"2157":1,"2300":1,"2920":1},"1":{"410":2,"411":2,"412":2,"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"1589":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"14":1,"92":2,"132":1,"176":1,"194":1,"199":2,"211":1,"231":3,"232":2,"241":1,"253":1,"268":1,"270":1,"281":1,"284":1,"303":2,"317":1,"374":1,"409":1,"419":1,"427":2,"438":1,"492":1,"497":2,"503":2,"511":1,"520":4,"521":1,"522":3,"524":1,"526":1,"527":2,"534":1,"536":2,"538":1,"541":1,"548":1,"552":2,"573":1,"595":1,"608":2,"613":1,"616":2,"617":4,"619":1,"624":1,"629":2,"631":1,"644":2,"654":1,"673":1,"682":1,"683":1,"692":1,"715":1,"750":1,"763":1,"794":1,"920":1,"1091":1,"1125":1,"1205":1,"1263":1,"1317":2,"1345":2,"1362":1,"1375":1,"1377":3,"1406":1,"1412":1,"1413":2,"1419":1,"1421":1,"1441":1,"1442":2,"1443":2,"1444":2,"1448":1,"1450":1,"1451":1,"1466":1,"1471":1,"1474":1,"1477":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1523":1,"1583":1,"1585":1,"1586":1,"1587":1,"1595":2,"1599":1,"1603":1,"1611":1,"1616":1,"1628":1,"1655":1,"1662":1,"1746":1,"1749":1,"1758":1,"1764":1,"1765":1,"1792":1,"1801":1,"1804":1,"1840":1,"1844":1,"1845":1,"1913":1,"1933":1,"1942":1,"1947":1,"1956":1,"1983":3,"1985":4,"2018":1,"2030":1,"2044":1,"2060":1,"2066":1,"2068":1,"2160":1,"2188":2,"2206":1,"2249":1,"2263":1,"2264":1,"2265":1,"2266":1,"2272":1,"2280":1,"2294":1,"2301":2,"2302":1,"2303":1,"2310":1,"2312":1,"2369":1,"2377":1,"2384":1,"2388":1,"2407":2,"2411":2,"2418":1,"2443":1,"2445":1,"2446":1,"2453":1,"2459":1,"2464":1,"2467":1,"2475":2,"2478":1,"2480":1,"2482":1,"2483":1,"2495":1,"2496":1,"2499":1,"2556":1,"2568":1,"2572":1,"2576":1,"2577":1,"2578":1,"2580":1,"2582":2,"2587":1,"2596":1,"2600":1,"2605":1,"2609":1,"2622":1,"2629":1,"2630":2,"2631":1,"2632":1,"2634":1,"2645":1,"2649":1,"2652":2,"2653":1,"2661":1,"2666":1,"2667":1,"2669":1,"2670":1,"2671":1,"2696":1,"2703":1,"2710":1,"2711":1,"2720":1,"2721":4,"2723":1,"2750":2,"2757":1,"2776":1,"2780":3,"2781":2,"2783":1,"2785":2,"2840":1,"2844":1,"2863":1,"2877":1,"2879":2,"2881":1,"2882":1,"2883":1,"2901":3,"2908":2,"2909":2,"2917":1,"2920":1,"2928":2,"2937":1,"2940":1,"2942":1}}],["darmoshark",{"2":{"2567":1}}],["dave",{"2":{"2459":1}}],["dazzle",{"2":{"2156":1}}],["damage",{"2":{"1675":1,"2420":1,"2683":1}}],["damnit",{"2":{"346":1}}],["daemon",{"2":{"1313":1}}],["daunting",{"2":{"553":1}}],["daughterboard",{"2":{"311":1}}],["dashes",{"2":{"527":1,"528":1}}],["dashed",{"2":{"338":1}}],["daskeyboard4",{"2":{"308":1}}],["daskygit",{"2":{"175":1}}],["dac2",{"2":{"714":1}}],["dac1",{"2":{"714":5,"715":4}}],["dacs",{"2":{"714":1,"715":1}}],["dac",{"0":{"714":1,"715":1,"716":1,"1471":1,"1474":1},"1":{"717":1,"1472":1,"1473":1},"2":{"222":3,"236":2,"249":1,"713":2,"714":6,"715":7,"716":13,"717":6,"720":2,"1471":7,"1472":1,"1474":9,"1475":2,"1478":1,"1482":4,"2682":1,"2849":2}}],["dactyl",{"2":{"114":3,"191":1,"211":1,"217":4,"222":14,"226":1,"236":2,"277":1,"437":2,"2418":2,"2419":1}}],["days",{"0":{"402":1},"2":{"401":1,"402":2,"406":1}}],["day",{"0":{"403":1},"2":{"211":1,"396":1,"399":1,"400":1,"401":2,"406":4,"546":1,"2567":1}}],["daily",{"2":{"2660":1}}],["daily60",{"2":{"211":1}}],["dailycraft",{"2":{"143":7}}],["daisy",{"2":{"102":2}}],["dawn60",{"0":{"58":1},"2":{"58":3}}],["danish",{"2":{"2880":3}}],["danielggordon",{"2":{"2310":1}}],["danger",{"2":{"346":1,"2614":1}}],["dangerous",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"346":1,"393":2}}],["dango40",{"2":{"211":1}}],["dances",{"2":{"191":1,"2302":1,"2308":1,"2309":1,"2310":2,"2312":2}}],["dance",{"0":{"323":1,"2300":1,"2302":1,"2307":1,"2310":1,"2311":1,"2312":1,"2836":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"49":4,"176":3,"191":1,"199":1,"222":1,"249":1,"277":1,"323":7,"324":5,"325":8,"328":1,"560":1,"590":2,"1417":1,"1421":1,"1588":1,"1597":1,"1804":1,"2301":2,"2302":30,"2303":25,"2305":7,"2306":1,"2307":8,"2308":15,"2309":26,"2310":27,"2311":15,"2312":31,"2560":1,"2644":1,"2721":1,"2836":1,"2924":1,"2933":2,"2941":1}}],["datastructure",{"2":{"2550":1,"2929":2}}],["datasheets",{"2":{"763":1,"1197":1}}],["datasheet",{"2":{"149":1,"692":1,"695":1,"696":1,"726":1,"731":1,"746":3,"747":1,"751":1,"756":5,"759":1,"765":1,"797":1,"823":1,"852":1,"857":1,"860":1,"884":1,"890":1,"916":1,"922":1,"925":1,"951":1,"956":1,"959":1,"985":1,"990":1,"993":1,"1019":1,"1024":1,"1027":1,"1053":1,"1058":1,"1061":1,"1087":1,"1092":1,"1095":1,"1121":1,"1126":1,"1129":1,"1155":1,"1160":1,"1163":1,"1195":1,"1198":1,"1211":1,"1216":1,"1245":1,"1266":1,"1294":1,"1562":1,"1678":1,"1679":2,"1680":1,"1707":1,"1724":1,"2476":1,"2687":1,"2688":1}}],["datatypes",{"2":{"215":2,"2750":1}}],["datablock",{"2":{"191":1}}],["database",{"0":{"132":1,"302":1,"468":1},"2":{"132":3,"134":1,"249":1,"308":1,"427":3,"468":1,"2666":1}}],["data",{"0":{"109":1,"169":1,"184":1,"323":1,"662":1,"770":1,"773":1,"776":1,"779":2,"782":1,"785":1,"788":1,"791":1,"807":1,"834":1,"866":1,"896":1,"931":1,"965":1,"999":1,"1033":1,"1067":1,"1101":1,"1135":1,"1169":1,"1222":1,"1251":1,"1256":1,"1259":1,"1270":1,"1274":1,"1276":1,"1531":1,"1637":1,"1713":1,"1715":1,"1719":1,"1726":2,"2050":1,"2051":1,"2054":1,"2056":1,"2269":1,"2270":1,"2764":1,"2772":1,"2773":1},"1":{"110":1,"111":1,"112":1,"170":1,"663":1,"664":1,"665":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":2,"781":2,"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1,"808":1,"835":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1223":1,"1252":1,"1253":1,"1257":1,"1258":1,"1260":1,"1261":1,"1271":1,"1275":1,"1277":1,"1532":1,"1533":1,"1714":1,"1716":1,"1720":1,"1727":2,"2055":1,"2057":1},"2":{"45":2,"76":2,"107":4,"109":1,"114":3,"149":2,"160":3,"169":1,"176":6,"184":1,"191":3,"199":13,"201":2,"211":29,"214":1,"222":13,"236":7,"249":2,"251":1,"262":2,"266":68,"277":3,"285":1,"308":1,"312":1,"324":1,"325":1,"328":2,"333":1,"338":2,"370":2,"390":1,"431":2,"446":1,"447":1,"461":1,"491":1,"553":2,"568":3,"576":1,"623":1,"662":1,"664":2,"666":1,"667":2,"669":2,"699":1,"713":2,"718":2,"745":1,"765":1,"771":3,"773":1,"774":3,"777":2,"780":5,"783":3,"786":3,"789":2,"792":2,"808":1,"835":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1191":1,"1194":1,"1197":3,"1223":1,"1252":1,"1257":3,"1260":2,"1271":1,"1273":1,"1275":3,"1277":2,"1278":2,"1279":1,"1280":1,"1282":1,"1283":1,"1285":1,"1293":1,"1362":1,"1412":1,"1414":1,"1477":1,"1519":2,"1521":3,"1522":1,"1529":1,"1531":2,"1532":4,"1637":1,"1675":1,"1693":1,"1696":1,"1714":2,"1716":2,"1720":2,"1726":2,"1727":2,"1790":1,"1947":3,"1948":22,"1951":1,"1956":2,"1980":2,"1982":1,"1983":3,"1984":2,"1985":6,"1986":2,"1988":2,"1998":1,"2006":2,"2010":1,"2013":1,"2014":1,"2016":3,"2018":4,"2019":7,"2020":3,"2050":3,"2051":2,"2052":8,"2055":2,"2057":2,"2073":2,"2074":1,"2178":1,"2179":3,"2191":1,"2208":1,"2268":3,"2270":17,"2271":1,"2281":1,"2283":11,"2291":1,"2307":1,"2308":3,"2309":6,"2310":4,"2311":4,"2312":4,"2368":1,"2372":1,"2424":1,"2439":1,"2459":4,"2495":3,"2546":1,"2547":1,"2632":1,"2709":1,"2715":2,"2721":3,"2747":1,"2748":2,"2749":2,"2750":5,"2758":3,"2762":1,"2764":2,"2765":3,"2766":1,"2769":1,"2772":6,"2788":7,"2844":2,"2848":2,"2862":2,"2868":2}}],["dates",{"0":{"396":1},"2":{"406":1}}],["date",{"2":{"6":2,"10":1,"157":1,"403":1,"405":1,"406":10,"613":1,"2274":1,"2619":1,"2631":1,"2651":1,"2700":1,"2703":1,"2719":1}}],["deutsche",{"2":{"2831":1}}],["derivatives",{"2":{"2619":3,"2621":1}}],["derive",{"2":{"747":1,"756":1,"1297":1}}],["derived",{"2":{"379":1,"2492":1,"2879":1}}],["dereferencing",{"2":{"1941":1,"2279":1}}],["deghost",{"2":{"886":1,"888":1}}],["degradation",{"2":{"2747":1}}],["degrade",{"2":{"1943":1}}],["degrading",{"2":{"209":1}}],["degree",{"0":{"1947":1},"2":{"1656":1,"1658":1,"1946":2,"1947":3,"2004":3}}],["degrees",{"2":{"31":1,"34":1,"1942":1,"1993":1,"2014":1,"2016":3,"2018":3,"2280":1,"2285":1,"2750":1,"2770":1,"2862":1}}],["denied",{"2":{"2569":1}}],["denote",{"2":{"2549":1,"2769":2}}],["denoted",{"2":{"1630":1,"1948":1,"2283":1,"2758":1,"2765":1}}],["denotes",{"2":{"751":1,"752":1,"753":1,"826":1,"855":1,"887":1,"919":1,"920":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1091":1,"1124":1,"1125":1,"1158":1,"1214":1,"1283":1,"2768":1,"2769":1,"2857":1}}],["density",{"0":{"1210":1},"2":{"114":1,"2501":2}}],["deeper",{"2":{"2303":1}}],["deeply",{"2":{"668":1}}],["deep",{"2":{"553":1,"556":2,"2435":1}}],["deemen17",{"2":{"300":2,"308":1}}],["dedicate",{"2":{"2162":1}}],["dedicates",{"2":{"1308":3}}],["dedicated",{"2":{"517":1,"743":1,"1190":1,"1339":1,"1550":1,"1587":1,"1657":1,"1665":1,"1739":1,"1749":2,"1844":1,"2066":1,"2181":1}}],["dedupe",{"2":{"236":1}}],["de60",{"2":{"300":1,"308":1}}],["de60fs",{"2":{"300":1}}],["dekunukem",{"2":{"222":1}}],["demand",{"2":{"2630":2}}],["demanding",{"2":{"2567":1}}],["demo",{"2":{"2187":1,"2271":1}}],["demonstrate",{"2":{"2569":1,"2926":1}}],["demonstrates",{"2":{"2180":1}}],["demonstrated",{"2":{"312":1}}],["demonstration",{"2":{"2052":1,"2183":1}}],["demiurge",{"2":{"211":1}}],["demultiplexer",{"2":{"149":1}}],["dead",{"2":{"2643":1,"2827":1,"2879":1}}],["deadline",{"2":{"406":1,"568":1}}],["deadlock",{"2":{"191":2,"199":1}}],["deadlocks",{"2":{"176":1}}],["deaf",{"2":{"2284":1}}],["deactivating",{"2":{"2043":1,"2854":1}}],["deactivation",{"0":{"1755":1},"2":{"1749":1,"2031":2,"2039":1,"2040":1}}],["deactivates",{"2":{"1421":1,"1594":1,"1595":1,"1749":1,"1755":1,"2854":1}}],["deactivate",{"2":{"1418":1,"1594":1,"1752":1,"2030":2,"2246":1,"2247":4,"2287":1}}],["deactivated",{"2":{"1416":1,"1479":1,"1480":2,"1751":2,"1752":1,"1755":1,"2030":1}}],["deassert",{"2":{"1262":1,"1648":1,"1650":1,"1652":1}}],["deals",{"2":{"1345":1,"2711":1}}],["deal",{"2":{"1334":1,"2017":1,"2472":1}}],["dealt",{"2":{"644":1}}],["dealing",{"2":{"11":1,"2415":1}}],["de",{"0":{"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1},"2":{"134":1,"199":4,"266":1,"317":1,"888":1,"1416":2,"2161":1,"2515":1,"2880":2}}],["detrimental",{"2":{"276":1}}],["detach",{"0":{"2755":1},"2":{"266":1,"2755":2}}],["detailing",{"2":{"2625":1}}],["detail",{"2":{"176":2,"411":1,"613":1,"1356":1,"1753":1,"2303":1,"2410":1,"2514":1,"2934":1}}],["details",{"0":{"356":1,"502":1,"503":1,"504":1,"2303":1,"2555":1},"2":{"163":1,"195":1,"224":1,"228":1,"229":1,"232":1,"346":2,"359":1,"364":2,"392":1,"428":1,"493":1,"503":1,"537":1,"553":1,"562":3,"683":1,"685":1,"763":1,"1309":1,"1316":1,"1318":1,"1395":1,"1402":1,"1407":1,"1416":1,"1421":1,"1422":1,"1438":1,"1470":1,"1483":1,"1487":1,"1497":1,"1531":1,"1588":1,"1655":1,"1691":1,"1738":1,"1743":1,"1790":1,"2073":1,"2074":1,"2166":1,"2188":1,"2191":1,"2306":1,"2319":1,"2410":1,"2411":2,"2440":1,"2461":1,"2502":1,"2555":1,"2602":1,"2609":1,"2716":1,"2725":1,"2899":1}}],["detailed",{"0":{"71":1,"576":1,"2410":1},"1":{"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"577":1,"578":1,"579":1,"580":1,"581":1,"582":1,"583":1,"584":1,"2411":1,"2412":1},"2":{"14":1,"70":1,"517":1,"1315":1,"1353":1,"1415":1,"1932":1,"2255":1,"2274":1,"2313":1,"2439":1,"2626":1,"2628":1,"2717":1,"2916":1}}],["detent",{"2":{"1659":1,"1664":2}}],["determining",{"2":{"1421":1,"2288":1,"2873":1,"2915":1}}],["deterministically",{"2":{"230":1}}],["determines",{"2":{"427":1,"1249":1,"2266":1,"2873":1,"2899":1}}],["determined",{"2":{"409":1,"487":1,"566":2,"567":2,"751":1,"2548":1}}],["determine",{"2":{"114":1,"119":1,"157":1,"551":1,"566":1,"567":1,"654":1,"747":1,"751":1,"765":1,"1245":1,"1266":1,"1278":1,"1486":1,"1504":1,"1562":1,"2263":1,"2264":1,"2265":2,"2311":2,"2312":1,"2566":1,"2702":2,"2722":1,"2873":1,"2932":1}}],["detects",{"2":{"2459":1}}],["detected",{"0":{"1314":1},"2":{"211":1,"266":1,"308":1,"562":1,"751":1,"1375":1,"1638":3,"1951":2,"1952":8,"1956":1,"2268":1,"2288":1,"2400":1,"2609":1,"2667":1,"2873":2}}],["detecting",{"2":{"132":1,"568":2,"2271":2,"2272":1,"2380":1,"2572":2,"2663":1,"2757":1,"2760":1,"2766":1,"2767":1,"2928":1,"2929":1}}],["detection",{"0":{"1950":1,"1953":1,"2570":1,"2932":1},"1":{"1951":1,"1952":1,"1953":1,"1954":1,"1955":1,"1956":1,"1957":1},"2":{"114":1,"175":1,"199":4,"249":3,"285":2,"308":1,"751":1,"1393":1,"1394":1,"1526":1,"1951":1,"1953":1,"1954":7,"1955":5,"1956":3,"2018":1,"2271":1,"2272":3,"2273":2,"2929":1}}],["detect",{"2":{"112":1,"199":1,"285":1,"293":1,"305":1,"314":1,"434":1,"568":6,"683":1,"1377":1,"1378":1,"1393":1,"1529":1,"1951":1,"2271":5,"2272":3,"2273":2,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2459":1,"2667":1,"2721":1,"2821":1,"2873":2,"2942":1}}],["debating",{"2":{"2567":1}}],["debt",{"2":{"187":1,"198":1,"201":1,"213":1,"224":1,"238":1}}],["debian",{"2":{"114":3,"2594":1,"2619":1,"2621":3}}],["debouncing",{"0":{"1411":1},"2":{"94":1,"222":1,"572":1,"623":2,"1406":3,"1407":12,"1410":6,"1411":2,"1953":2,"2012":1,"2411":1}}],["debouncer",{"2":{"149":1}}],["debounce",{"0":{"1407":1,"1408":1,"1409":1,"1410":1},"1":{"1409":1,"1410":1,"1411":1},"2":{"70":2,"111":1,"112":1,"114":3,"134":1,"149":1,"176":1,"199":3,"222":2,"236":1,"308":1,"328":2,"559":1,"572":1,"623":4,"1406":3,"1407":6,"1408":1,"1409":3,"1410":10,"1411":4,"1585":1,"1954":2,"2008":1,"2009":1,"2012":1,"2034":1,"2039":4,"2045":1,"2411":1,"2721":3,"2847":2,"2865":2,"2925":1}}],["debugged",{"2":{"2787":1}}],["debuggers",{"2":{"392":1}}],["debugger",{"0":{"383":1,"390":1,"391":1,"392":1},"2":{"391":1,"1422":2,"2667":2,"2939":1,"2942":1}}],["debugging",{"0":{"378":1,"389":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"2640":1,"2642":1,"2667":1,"2939":1},"1":{"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":2,"391":2,"392":2,"1319":1,"1320":1,"1321":2,"1322":2,"1323":2,"1324":1,"1325":1,"1326":1,"1327":1,"1328":1,"1329":1,"1330":1,"2641":1,"2642":1},"2":{"82":1,"114":1,"288":1,"378":1,"384":1,"387":1,"391":1,"392":1,"432":1,"559":1,"560":2,"1206":1,"1325":2,"1330":1,"1369":1,"1619":4,"2029":1,"2411":1,"2646":1,"2657":1,"2662":1,"2667":4,"2684":1,"2747":2,"2789":1,"2812":1,"2892":1,"2915":1}}],["debug=1",{"2":{"249":1,"2939":2}}],["debug",{"0":{"1324":1,"1325":1,"1956":1,"1994":1},"1":{"1326":1,"1327":1,"1328":1},"2":{"24":1,"34":1,"49":1,"50":1,"65":1,"114":2,"176":1,"188":1,"191":2,"199":1,"211":1,"249":2,"277":1,"285":1,"308":1,"390":1,"391":2,"392":1,"490":2,"548":1,"560":1,"572":2,"1206":2,"1319":8,"1320":1,"1321":1,"1322":1,"1323":1,"1324":3,"1328":1,"1329":1,"1330":3,"1422":2,"1619":4,"1956":1,"1994":5,"2029":2,"2191":4,"2410":1,"2411":4,"2516":2,"2579":1,"2592":1,"2612":1,"2667":11,"2745":2,"2747":3,"2939":1}}],["devuan",{"2":{"2594":1}}],["devaddr",{"0":{"782":1,"785":1,"788":1,"791":1},"1":{"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1},"2":{"783":1,"786":1,"789":1,"792":1}}],["devastatingtkl",{"2":{"211":1}}],["devised",{"2":{"2467":1}}],["deviation",{"2":{"2003":1}}],["deviate",{"2":{"419":1,"2695":1}}],["device",{"0":{"118":1,"175":1,"190":1,"684":1,"1314":1,"1315":1,"1329":1,"1935":1,"1996":1,"2002":1,"2027":1,"2046":1},"1":{"1997":1,"1998":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":1,"2015":1,"2016":1,"2017":1,"2018":1,"2019":1,"2020":1},"2":{"63":1,"70":2,"100":2,"111":1,"114":1,"118":13,"134":3,"138":3,"146":1,"149":2,"169":2,"175":4,"176":7,"184":2,"190":3,"191":7,"211":4,"240":2,"249":1,"266":1,"273":2,"285":2,"317":2,"387":1,"559":3,"562":1,"682":3,"683":3,"684":4,"685":6,"686":5,"692":1,"745":1,"759":1,"763":1,"770":1,"771":2,"773":1,"774":2,"776":1,"777":2,"779":1,"780":2,"782":1,"783":2,"785":1,"786":2,"788":1,"789":2,"791":1,"792":2,"795":2,"1193":1,"1196":1,"1249":2,"1251":1,"1254":1,"1255":1,"1256":1,"1259":1,"1265":1,"1269":1,"1312":1,"1313":1,"1314":2,"1326":1,"1329":5,"1330":1,"1367":2,"1388":1,"1396":1,"1406":2,"1638":6,"1639":2,"1672":2,"1766":2,"1917":1,"1918":3,"1923":1,"1935":1,"1939":1,"1953":1,"1954":1,"1955":1,"1958":1,"1979":1,"1993":6,"1996":3,"1997":1,"1998":4,"1999":2,"2000":1,"2001":1,"2002":1,"2005":2,"2006":2,"2008":2,"2009":1,"2010":3,"2011":2,"2012":1,"2013":4,"2014":10,"2015":6,"2016":23,"2017":8,"2018":15,"2019":20,"2020":9,"2021":9,"2023":3,"2024":2,"2025":1,"2027":5,"2028":6,"2029":2,"2030":3,"2032":2,"2034":1,"2045":2,"2046":10,"2050":5,"2052":7,"2177":5,"2269":2,"2318":1,"2375":1,"2376":2,"2378":1,"2379":2,"2380":2,"2381":3,"2382":1,"2383":3,"2384":2,"2385":1,"2386":2,"2387":1,"2388":2,"2389":2,"2390":2,"2391":2,"2392":1,"2393":2,"2395":2,"2397":2,"2439":4,"2440":1,"2492":1,"2494":1,"2495":4,"2498":1,"2553":1,"2605":3,"2608":3,"2667":3,"2710":2,"2721":1,"2749":64,"2750":52,"2754":3,"2819":1,"2828":1,"2842":1,"2868":2,"2875":2}}],["devices",{"0":{"11":1,"138":1,"2028":1},"2":{"11":2,"49":3,"138":1,"149":1,"174":2,"175":1,"190":1,"191":1,"229":1,"263":1,"266":1,"276":1,"294":1,"317":1,"387":2,"432":1,"613":2,"683":2,"684":1,"685":3,"686":1,"687":1,"692":4,"751":1,"754":1,"764":1,"773":1,"794":1,"1244":2,"1284":1,"1287":1,"1292":1,"1297":1,"1314":1,"1330":1,"1407":1,"1471":1,"1482":1,"1711":1,"1715":1,"1950":1,"1954":2,"1956":1,"1979":1,"2020":1,"2050":2,"2225":1,"2227":1,"2240":1,"2241":1,"2269":1,"2285":1,"2367":1,"2386":1,"2439":1,"2451":1,"2470":3,"2476":1,"2498":1,"2606":1,"2667":1,"2668":1,"2676":1,"2700":3,"2702":2,"2703":1,"2710":1,"2721":1,"2746":1,"2749":16,"2925":1}}],["dev",{"2":{"108":1,"285":1,"333":1,"381":1,"384":1,"486":1,"2495":2,"2593":1,"2594":2,"2633":5,"2634":1,"2667":1}}],["developing",{"2":{"2448":1,"2470":1,"2631":1,"2646":1,"2657":1,"2723":1}}],["developed",{"2":{"2381":1,"2805":1,"2895":1}}],["developer=true",{"2":{"486":1}}],["developer",{"0":{"455":1,"486":1},"1":{"456":1,"457":1,"458":1,"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1},"2":{"367":1,"375":1,"486":1,"594":1}}],["developers",{"0":{"375":1,"377":1},"2":{"359":1,"378":1,"484":1,"662":1,"2410":1,"2651":2,"2807":1}}],["developments",{"2":{"2631":1}}],["development",{"0":{"358":1,"359":1,"484":1,"2646":1,"2657":1},"2":{"132":1,"160":3,"163":2,"175":1,"176":1,"198":1,"233":1,"266":1,"306":1,"308":4,"315":1,"317":8,"358":1,"377":1,"459":1,"519":1,"615":1,"682":1,"1197":1,"1400":1,"1404":2,"2382":1,"2603":1,"2631":2,"2633":1,"2646":2,"2649":1,"2650":1,"2706":1,"2707":4,"2723":1,"2828":1,"2837":1,"2846":5,"2881":1,"2894":1,"2895":1,"2925":3,"2934":1}}],["develop",{"0":{"405":1},"2":{"51":1,"73":1,"76":1,"92":1,"93":1,"94":1,"114":5,"134":4,"149":3,"164":1,"169":1,"176":7,"191":6,"199":1,"211":5,"222":4,"236":2,"251":1,"266":1,"308":1,"373":2,"393":1,"396":6,"397":3,"399":1,"400":1,"401":1,"402":1,"403":5,"405":7,"406":12,"421":3,"422":3,"423":3,"424":6,"1337":1,"2303":1,"2421":1,"2721":4,"2722":1,"2896":2,"2897":1}}],["declined",{"2":{"2895":1}}],["declare",{"2":{"1404":2,"1844":2,"2066":2,"2311":1,"2312":1}}],["declared",{"2":{"1386":1,"1450":1,"1844":1,"2066":1,"2306":1}}],["declares",{"2":{"306":1,"315":1,"1951":1}}],["declarations",{"2":{"222":1,"2305":1}}],["declaration",{"2":{"191":1,"557":1}}],["decays",{"2":{"2372":1}}],["decay",{"2":{"2211":1}}],["decalartion",{"2":{"149":1}}],["decryption",{"2":{"2171":1}}],["decreasing",{"2":{"563":3,"1407":1,"2064":1}}],["decrease",{"0":{"1571":1,"1875":1,"1876":1,"1881":1,"1882":1,"2101":1,"2102":1,"2107":1,"2108":1,"2113":1,"2114":1,"2119":1,"2120":1},"2":{"166":1,"1481":1,"1514":1,"1516":1,"1549":1,"1550":1,"1571":1,"1662":2,"1674":2,"1682":1,"1842":2,"1875":1,"1876":1,"1881":1,"1882":1,"1919":4,"2062":3,"2063":1,"2064":3,"2101":1,"2102":1,"2107":1,"2108":1,"2113":1,"2114":1,"2119":1,"2120":1,"2181":8,"2201":12,"2202":2,"2246":1,"2247":3,"2374":1,"2520":1,"2530":2,"2532":4,"2537":8,"2538":3,"2757":1,"2901":1}}],["decreases",{"2":{"119":1,"1487":1,"1489":1,"2202":2,"2517":1,"2536":1,"2901":2}}],["decreased",{"2":{"49":1,"2064":1,"2372":1}}],["deceptively",{"2":{"2569":1,"2933":1}}],["deceptive",{"2":{"2567":3}}],["deception",{"2":{"2567":1,"2569":1}}],["decelerated",{"2":{"1930":4}}],["decelerates",{"2":{"1928":1}}],["decent",{"2":{"3":1,"15":1}}],["dec",{"2":{"1362":1}}],["decodable",{"2":{"1533":1}}],["decoding",{"0":{"1533":1}}],["decode",{"2":{"1531":1}}],["decoder",{"2":{"620":1,"2773":1}}],["decorators",{"0":{"544":1}}],["decorator",{"2":{"487":2}}],["decorated",{"2":{"485":1}}],["decoupled",{"2":{"174":1}}],["decouple",{"2":{"73":1,"94":1,"191":1,"222":1,"249":1,"277":1}}],["decimal",{"2":{"1362":1}}],["decides",{"2":{"2902":1}}],["decide",{"2":{"1195":1,"1198":1,"1516":2,"1606":3}}],["decided",{"2":{"87":1,"103":1,"126":1,"169":1,"179":1,"184":1,"1340":1}}],["deciding",{"2":{"520":1}}],["decisions",{"2":{"520":1,"522":1}}],["decision",{"0":{"2902":1},"1":{"2903":1,"2904":1,"2905":1,"2906":1,"2907":1,"2908":1,"2909":1},"2":{"203":1,"222":1,"243":1,"320":2,"331":1,"1407":1,"2293":1,"2567":1,"2902":3,"2903":2,"2908":1,"2916":1,"2919":2}}],["descr",{"2":{"2501":1}}],["describing",{"2":{"363":1,"397":1,"520":1,"522":1,"532":1,"681":1,"2176":1,"2845":4,"2864":1,"2871":1}}],["described",{"2":{"529":1,"619":1,"625":1,"655":1,"670":1,"686":1,"1455":1,"1532":1,"2168":1,"2248":1,"2416":1,"2436":1,"2747":1,"2919":1,"2932":1}}],["describes",{"2":{"367":1,"369":1,"378":1,"393":1,"574":1,"593":1,"662":1,"665":1,"681":1,"1559":1,"1560":1,"1776":1,"2301":1,"2667":1,"2668":1,"2707":1,"2766":1,"2770":1,"2771":1,"2772":1,"2862":1}}],["describe",{"2":{"99":1,"613":1,"2375":1,"2415":1,"2708":1,"2908":2}}],["descriptive",{"2":{"527":1,"611":1,"2633":1,"2667":1}}],["descriptions",{"2":{"746":1,"747":1,"748":1,"2667":1}}],["description",{"0":{"576":1},"1":{"577":1,"578":1,"579":1,"580":1,"581":1,"582":1,"583":1,"584":1},"2":{"119":1,"160":1,"397":1,"406":5,"482":1,"483":1,"492":1,"529":2,"597":1,"611":2,"613":1,"673":1,"676":1,"695":1,"696":1,"698":1,"701":1,"716":1,"724":1,"728":1,"743":1,"745":1,"746":1,"747":1,"748":1,"750":1,"751":1,"752":1,"753":1,"755":1,"756":1,"758":1,"764":1,"765":2,"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1245":1,"1266":1,"1282":1,"1288":1,"1292":1,"1296":1,"1299":1,"1300":1,"1374":1,"1410":1,"1422":3,"1479":1,"1480":1,"1483":1,"1484":1,"1487":2,"1489":1,"1515":1,"1524":1,"1530":1,"1537":1,"1549":1,"1550":1,"1560":1,"1562":1,"1563":1,"1593":1,"1600":1,"1606":1,"1615":1,"1619":1,"1655":1,"1656":1,"1668":1,"1670":1,"1672":1,"1673":1,"1674":1,"1675":1,"1693":1,"1734":1,"1750":1,"1751":1,"1752":1,"1763":1,"1772":1,"1791":1,"1808":1,"1841":1,"1842":1,"1843":2,"1919":1,"1927":1,"1929":1,"1930":1,"1931":1,"1933":1,"1934":1,"1943":1,"1944":1,"1945":1,"1946":2,"1955":1,"1960":1,"1998":1,"1999":1,"2000":1,"2002":3,"2003":1,"2004":1,"2006":3,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":1,"2016":1,"2017":1,"2018":1,"2019":1,"2020":1,"2034":1,"2036":1,"2039":1,"2040":1,"2045":1,"2046":1,"2049":1,"2061":1,"2062":1,"2063":3,"2158":1,"2159":4,"2169":1,"2175":1,"2176":1,"2177":1,"2179":1,"2181":1,"2182":1,"2183":1,"2184":1,"2185":1,"2195":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1,"2214":1,"2215":1,"2245":1,"2246":1,"2247":1,"2250":1,"2252":1,"2253":1,"2281":1,"2282":1,"2297":1,"2299":1,"2314":1,"2315":1,"2316":1,"2320":1,"2321":1,"2325":1,"2370":1,"2372":1,"2373":1,"2408":1,"2438":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2558":1,"2559":2,"2644":1,"2669":1,"2717":1,"2721":1,"2745":1,"2861":1,"2901":1}}],["descriptors",{"2":{"2":1,"50":1}}],["descriptor",{"0":{"2":1,"2760":1,"2767":1,"2769":1},"2":{"50":1,"114":1,"134":1,"160":1,"1953":1,"2017":1,"2758":1,"2759":1,"2760":5,"2761":1,"2762":1,"2765":2,"2766":1,"2767":4,"2768":2,"2769":3,"2770":1}}],["descendant",{"2":{"2498":1}}],["desktop",{"2":{"1641":1,"2510":1,"2557":3,"2560":3,"2644":2}}],["deskthority",{"2":{"1365":1,"1979":1,"2459":1}}],["deskdaily",{"2":{"211":1}}],["destination",{"2":{"1350":1,"2528":1}}],["destroyed",{"2":{"521":1,"655":1}}],["desirable",{"2":{"1436":1}}],["desire",{"2":{"597":1,"2568":1}}],["desired",{"2":{"368":1,"408":1,"759":1,"1249":2,"1319":1,"1375":1,"1493":1,"1496":1,"1628":1,"1934":1,"2017":1,"2291":1,"2322":1,"2400":1,"2633":1,"2788":1,"2879":1,"2894":1,"2911":1}}],["designing",{"2":{"1550":1,"1562":1,"1791":1,"2415":1}}],["designate",{"2":{"2787":1}}],["designated",{"2":{"920":1,"1091":1,"1125":1,"1512":1,"2377":1,"2384":1,"2869":2}}],["designates",{"2":{"487":1,"2787":1}}],["designs",{"2":{"211":1,"2493":1,"2688":1}}],["design",{"2":{"114":1,"168":1,"211":2,"1193":1,"1196":1,"1533":1,"2895":1}}],["designers",{"2":{"125":1,"185":1,"201":1,"221":1,"233":1,"234":1,"1840":1,"2060":1,"2668":1,"2699":1}}],["designer",{"2":{"56":1,"559":2,"568":1,"637":2,"2719":1}}],["designed",{"2":{"37":1,"43":1,"1340":1,"1385":1,"2417":1,"2440":1,"2493":1,"2582":2,"2699":1,"2735":2}}],["despite",{"2":{"312":1,"2567":2,"2749":2,"2837":1}}],["depicting",{"2":{"673":1}}],["depths",{"2":{"2749":1}}],["depth",{"2":{"618":1,"698":2}}],["depressed",{"2":{"1492":2}}],["deprecating",{"2":{"94":1}}],["deprecations",{"2":{"408":1,"2897":1}}],["deprecation",{"0":{"87":1,"88":1,"104":1,"127":1,"170":1,"264":1,"274":1,"282":1,"292":1,"301":1,"302":1,"303":1,"307":1,"313":1,"326":1,"330":1,"2895":1,"2897":1},"1":{"88":1,"265":1,"275":1,"276":1,"283":1,"284":1,"293":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"314":1,"315":1,"316":1,"327":1,"331":1,"332":1,"2896":1,"2897":1},"2":{"184":1,"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"750":1,"2895":4,"2896":2}}],["deprecate",{"2":{"87":1,"94":1,"103":1,"126":1,"149":1,"169":1,"176":1,"184":1,"188":7,"191":7,"294":1,"308":2,"317":1,"328":1,"2700":1}}],["deprecated",{"0":{"27":1,"254":1,"316":1,"331":1,"332":1},"2":{"3":1,"7":1,"15":1,"25":1,"27":1,"38":1,"50":1,"75":2,"114":2,"133":1,"134":1,"140":1,"149":1,"157":2,"176":1,"182":1,"188":1,"191":3,"194":1,"195":1,"199":2,"245":1,"249":1,"254":1,"266":1,"277":1,"294":3,"302":1,"303":2,"304":1,"316":1,"317":1,"332":1,"333":3,"468":1,"559":6,"1586":1,"1790":1,"2181":11,"2184":2,"2513":1,"2537":10,"2882":1,"2897":1}}],["depracted",{"2":{"199":1}}],["depend",{"2":{"1269":1,"1407":1,"1435":1,"1707":1,"2515":1}}],["depends",{"2":{"713":1,"1407":1,"1793":1,"1930":1,"2006":1,"2324":1,"2337":1,"2338":1,"2339":1,"2410":1,"2698":1,"2920":1}}],["dependent",{"2":{"635":1,"720":1,"765":1,"1291":1,"1389":1,"1390":1,"1562":1,"1656":1,"2011":1,"2016":1,"2464":1,"2896":1}}],["dependencies",{"2":{"73":1,"158":1,"160":2,"234":1,"308":1,"317":1,"378":1,"380":1,"1630":1,"2594":1,"2613":1}}],["dependency",{"2":{"24":1,"65":1,"384":1}}],["depending",{"2":{"25":1,"30":1,"33":1,"90":1,"209":1,"631":1,"654":1,"730":1,"743":1,"755":1,"801":1,"826":1,"827":1,"855":1,"859":1,"887":1,"889":1,"919":1,"924":1,"954":1,"958":1,"988":1,"992":1,"1022":1,"1026":1,"1056":1,"1060":1,"1090":1,"1094":1,"1124":1,"1128":1,"1158":1,"1162":1,"1214":1,"1215":1,"1291":1,"1296":1,"1300":1,"1308":1,"1562":1,"1563":1,"1611":1,"1664":2,"1674":1,"1676":1,"1792":1,"1948":1,"2063":1,"2258":1,"2310":1,"2415":1,"2422":1,"2439":1,"2492":1,"2510":1,"2650":1,"2676":1,"2758":1,"2760":1,"2765":2,"2770":1,"2775":1,"2877":1,"2894":1,"2933":1}}],["def1",{"2":{"1329":2}}],["def",{"2":{"160":2,"487":1,"498":1,"530":1,"531":1,"532":1,"541":2,"542":3,"1616":1,"2052":2}}],["defs",{"2":{"114":1,"134":1,"160":1,"236":1,"571":1,"1442":2,"1443":1,"2440":2,"2721":1,"2937":1}}],["deferred",{"0":{"653":1,"654":1,"655":1,"656":1,"657":1,"658":1},"1":{"654":1,"655":1,"656":1,"657":1,"658":1},"2":{"134":1,"149":1,"333":1,"397":1,"406":1,"572":3,"653":1,"654":4,"655":4,"656":2,"657":2,"658":3,"1630":2,"1756":1,"2411":3,"2750":4}}],["deferring",{"2":{"125":1,"185":1,"637":2}}],["defer",{"2":{"114":2,"125":1,"149":1,"185":1,"236":1,"654":1,"655":1,"656":1,"657":1,"1407":9,"1410":6,"2160":1,"2847":4,"2916":1}}],["definable",{"2":{"1511":1}}],["defining",{"0":{"627":1,"2160":1,"2189":1},"1":{"2161":1,"2162":1},"2":{"45":1,"49":2,"50":1,"80":1,"120":1,"196":1,"199":1,"534":1,"625":2,"714":1,"716":1,"719":1,"1204":1,"1205":1,"1416":1,"1417":1,"1485":1,"1487":1,"1589":1,"1603":1,"1605":1,"1607":1,"1610":1,"1611":1,"1612":1,"1613":1,"1655":1,"1656":3,"1659":1,"1696":1,"1728":1,"1751":1,"1770":1,"1843":1,"2016":1,"2063":1,"2160":1,"2206":2,"2265":2,"2297":1,"2324":1,"2438":1,"2514":1,"2643":1,"2695":1,"2901":1,"2911":1,"2915":1,"2919":1}}],["definitions",{"0":{"2551":1},"2":{"50":5,"76":1,"77":1,"93":1,"173":1,"176":1,"182":1,"199":1,"201":3,"211":1,"213":1,"222":1,"333":1,"387":1,"1443":1,"1634":1,"1659":1,"1660":1,"2159":2,"2160":2,"2305":2,"2422":1,"2547":1,"2550":1,"2551":2,"2552":1,"2568":1,"2584":1,"2668":4,"2721":6,"2750":1,"2862":1}}],["definition",{"0":{"1696":1},"2":{"25":2,"36":2,"50":1,"65":1,"90":1,"160":1,"166":1,"191":1,"199":1,"317":1,"535":1,"568":1,"1597":1,"1614":1,"1630":1,"1683":1,"1770":1,"2189":1,"2190":1,"2265":1,"2302":1,"2305":1,"2514":1,"2551":1,"2552":2,"2554":1,"2668":1,"2669":1,"2670":1,"2671":1,"2695":1,"2721":1,"2758":1,"2765":1,"2843":1,"2930":4}}],["define\\tsplit",{"2":{"2264":1}}],["defined",{"0":{"2694":1},"1":{"2695":1,"2696":1},"2":{"75":1,"199":4,"247":1,"298":1,"307":2,"439":1,"520":5,"562":3,"563":3,"567":2,"595":1,"625":1,"630":1,"655":1,"701":2,"724":1,"728":3,"746":2,"747":1,"751":1,"769":1,"794":1,"799":1,"825":5,"854":5,"886":6,"918":5,"953":5,"987":5,"1021":5,"1055":5,"1089":5,"1123":5,"1157":5,"1203":1,"1213":5,"1282":3,"1284":1,"1296":2,"1299":1,"1300":2,"1342":1,"1404":1,"1413":1,"1419":1,"1427":1,"1428":2,"1442":1,"1454":1,"1459":1,"1480":8,"1481":1,"1492":2,"1508":1,"1512":1,"1526":1,"1550":3,"1562":1,"1564":1,"1584":1,"1585":1,"1599":1,"1605":1,"1606":3,"1618":1,"1621":2,"1655":1,"1656":4,"1659":3,"1661":2,"1672":6,"1675":6,"1681":1,"1693":6,"1696":1,"1735":1,"1768":1,"1775":1,"1790":1,"1791":5,"1818":1,"1821":1,"1844":1,"1928":1,"1931":2,"1932":2,"1943":3,"1945":1,"1946":9,"1948":2,"1954":1,"2000":6,"2002":4,"2004":3,"2006":3,"2007":1,"2008":1,"2009":2,"2011":2,"2016":15,"2017":1,"2018":8,"2021":4,"2023":1,"2030":1,"2034":1,"2064":1,"2066":1,"2067":1,"2069":1,"2159":3,"2168":1,"2182":4,"2183":1,"2184":12,"2185":2,"2205":1,"2214":1,"2252":3,"2253":2,"2267":1,"2272":1,"2273":1,"2281":3,"2298":3,"2302":2,"2306":1,"2312":1,"2322":1,"2337":1,"2338":1,"2339":1,"2372":6,"2374":1,"2397":1,"2407":1,"2438":1,"2441":1,"2463":1,"2468":1,"2546":1,"2549":1,"2553":3,"2587":1,"2667":1,"2699":1,"2702":2,"2721":1,"2744":1,"2746":1,"2750":1,"2758":2,"2765":2,"2780":1,"2787":1,"2877":1,"2899":1,"2914":1,"2915":1,"2937":1,"2941":2}}],["defines",{"0":{"331":1,"567":1,"1681":1},"2":{"50":1,"93":1,"114":4,"133":1,"134":3,"149":1,"175":1,"176":2,"191":11,"199":5,"211":2,"222":1,"233":1,"236":9,"249":3,"266":1,"277":1,"294":2,"308":1,"333":1,"559":4,"567":1,"570":1,"589":1,"629":1,"687":1,"724":1,"764":1,"765":1,"826":1,"855":1,"887":1,"919":1,"920":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1091":1,"1124":1,"1125":1,"1158":1,"1210":1,"1214":1,"1283":1,"1288":1,"1292":1,"1296":1,"1299":1,"1300":1,"1473":1,"1474":1,"1478":1,"1483":1,"1492":1,"1560":1,"1562":1,"1563":1,"1635":1,"1636":1,"1637":1,"1659":2,"1696":1,"1724":1,"1741":1,"1742":1,"1744":1,"1746":1,"1843":1,"1946":7,"1947":1,"1989":1,"1990":1,"2002":1,"2016":1,"2019":1,"2020":1,"2063":2,"2162":1,"2168":1,"2170":1,"2182":1,"2184":1,"2245":2,"2252":1,"2253":4,"2282":1,"2315":1,"2368":1,"2372":2,"2377":1,"2384":1,"2551":2,"2578":1,"2666":1,"2667":1,"2694":1,"2698":1,"2702":1,"2704":1,"2714":2,"2720":1,"2721":2,"2861":1,"2887":1,"2927":1,"2937":1,"2941":1}}],["define",{"0":{"597":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1505":1,"1506":1,"1609":1,"1610":1,"1713":1,"1715":1,"2267":1},"1":{"1714":1,"1716":1},"2":{"13":1,"14":3,"25":2,"28":1,"31":1,"34":1,"49":2,"50":1,"69":1,"75":1,"94":1,"98":1,"107":1,"114":1,"120":3,"134":2,"149":1,"154":1,"157":1,"169":5,"176":2,"184":5,"191":4,"211":1,"222":1,"236":2,"249":2,"266":1,"273":3,"303":1,"307":1,"308":1,"348":3,"373":3,"487":1,"520":1,"553":1,"559":43,"560":6,"561":3,"562":28,"563":13,"564":5,"567":6,"568":25,"628":1,"645":2,"658":2,"664":1,"698":1,"701":1,"714":8,"715":5,"716":2,"718":7,"719":1,"724":1,"728":1,"729":1,"745":1,"746":15,"747":7,"748":1,"751":6,"752":5,"753":5,"756":7,"763":3,"765":2,"799":1,"825":1,"826":1,"854":1,"855":1,"856":2,"857":4,"858":1,"886":1,"887":1,"888":1,"918":1,"919":1,"920":1,"921":2,"922":4,"923":1,"953":1,"954":1,"955":2,"956":4,"957":1,"987":1,"988":1,"989":2,"990":4,"991":1,"1021":1,"1022":1,"1023":2,"1024":4,"1025":1,"1055":1,"1056":1,"1057":2,"1058":4,"1059":1,"1089":1,"1090":1,"1091":1,"1092":4,"1093":1,"1123":1,"1124":1,"1125":1,"1126":4,"1127":1,"1157":1,"1158":1,"1159":2,"1160":4,"1161":1,"1192":2,"1195":3,"1198":6,"1200":3,"1201":3,"1202":2,"1204":1,"1205":1,"1206":1,"1213":1,"1214":1,"1245":5,"1266":1,"1282":1,"1284":1,"1285":1,"1288":1,"1292":1,"1294":1,"1296":3,"1297":1,"1298":1,"1299":1,"1300":3,"1328":1,"1344":5,"1351":2,"1366":1,"1369":1,"1389":1,"1393":1,"1402":1,"1409":1,"1413":1,"1416":1,"1425":3,"1428":1,"1435":1,"1437":1,"1443":1,"1444":1,"1445":2,"1450":2,"1455":1,"1468":9,"1471":4,"1472":1,"1473":3,"1474":6,"1475":1,"1476":3,"1477":4,"1478":2,"1479":2,"1482":1,"1483":2,"1484":2,"1485":1,"1486":1,"1487":1,"1495":2,"1496":2,"1497":1,"1504":1,"1512":2,"1514":1,"1521":3,"1537":1,"1550":1,"1551":1,"1552":2,"1560":1,"1562":3,"1563":3,"1583":2,"1584":3,"1585":1,"1588":2,"1589":1,"1591":1,"1592":1,"1594":1,"1595":2,"1596":1,"1599":2,"1602":1,"1603":8,"1604":2,"1613":1,"1614":1,"1616":1,"1619":2,"1620":4,"1656":2,"1657":1,"1659":10,"1660":10,"1661":1,"1664":4,"1670":2,"1678":5,"1679":8,"1681":3,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1696":1,"1713":1,"1714":1,"1715":2,"1716":1,"1738":1,"1756":1,"1758":5,"1762":2,"1764":1,"1765":1,"1768":4,"1769":2,"1790":1,"1791":2,"1798":1,"1803":1,"1804":2,"1805":1,"1806":1,"1840":1,"1841":1,"1843":21,"1844":1,"1845":1,"1846":16,"1915":1,"1916":1,"1918":2,"1929":1,"1930":1,"1931":6,"1932":2,"1933":1,"1934":1,"1941":1,"1943":2,"1944":1,"1945":1,"1946":4,"1948":5,"1954":3,"1956":2,"1982":2,"1983":6,"1984":3,"1985":10,"1986":2,"1988":5,"1989":3,"1990":9,"1991":1,"1992":4,"1993":3,"1994":2,"1995":1,"2000":1,"2014":2,"2016":1,"2017":2,"2025":2,"2029":1,"2032":2,"2034":1,"2049":1,"2060":1,"2061":1,"2063":50,"2064":6,"2065":2,"2066":1,"2068":1,"2069":21,"2073":1,"2074":1,"2159":1,"2160":2,"2163":1,"2168":2,"2170":1,"2176":1,"2179":3,"2181":1,"2182":1,"2184":1,"2185":1,"2186":3,"2188":1,"2189":5,"2191":2,"2192":1,"2193":1,"2206":2,"2207":2,"2214":1,"2240":1,"2241":1,"2243":1,"2252":2,"2253":4,"2264":1,"2265":2,"2266":1,"2267":2,"2268":7,"2269":10,"2270":5,"2271":12,"2279":1,"2281":1,"2282":1,"2283":1,"2286":1,"2293":1,"2294":1,"2295":1,"2302":5,"2305":1,"2309":1,"2310":1,"2311":4,"2312":1,"2315":1,"2320":1,"2321":1,"2323":1,"2324":3,"2368":3,"2372":1,"2377":4,"2384":4,"2409":2,"2411":6,"2438":1,"2439":12,"2446":1,"2546":1,"2547":1,"2551":2,"2643":4,"2645":1,"2669":5,"2693":3,"2695":1,"2698":5,"2702":4,"2711":1,"2714":1,"2721":3,"2744":2,"2745":1,"2749":13,"2757":1,"2761":4,"2780":2,"2787":3,"2883":2,"2884":1,"2885":3,"2899":2,"2901":2,"2908":2,"2909":2,"2910":2,"2911":1,"2912":1,"2913":2,"2914":1,"2915":4,"2916":1,"2917":7,"2919":1,"2930":1,"2937":1,"2940":1}}],["default=",{"2":{"487":1}}],["defaulting",{"2":{"328":1}}],["default60",{"2":{"317":1}}],["defaults",{"0":{"472":1,"2444":1,"2576":1},"1":{"2445":1},"2":{"69":1,"77":1,"114":1,"134":2,"149":1,"160":2,"176":2,"199":1,"236":4,"249":1,"303":1,"308":5,"317":1,"328":2,"333":1,"555":1,"562":4,"563":1,"623":1,"716":1,"765":1,"1245":1,"1266":1,"1389":1,"1390":1,"1474":1,"1562":1,"1946":1,"1954":1,"1998":1,"1999":1,"2006":1,"2010":1,"2011":1,"2013":1,"2014":2,"2267":1,"2576":1,"2580":1,"2748":2,"2898":1,"2899":1}}],["default",{"0":{"137":1,"166":1,"293":1,"305":1,"314":1,"541":1,"554":1,"585":1,"1343":1,"1436":1,"2780":1,"2907":1},"1":{"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1},"2":{"14":1,"28":1,"30":1,"31":1,"33":1,"38":1,"49":1,"50":2,"69":1,"74":1,"77":1,"83":1,"93":2,"114":8,"124":1,"125":1,"134":2,"137":1,"143":2,"149":8,"156":1,"160":2,"164":1,"166":1,"176":10,"183":8,"191":8,"194":5,"195":3,"199":2,"202":1,"206":1,"209":1,"211":5,"222":1,"236":7,"249":4,"266":3,"273":1,"277":2,"283":1,"285":5,"289":1,"293":2,"294":9,"303":3,"305":2,"307":1,"308":2,"314":2,"317":6,"328":6,"387":3,"391":1,"427":2,"428":1,"431":2,"435":1,"437":2,"442":1,"443":1,"446":1,"448":1,"450":2,"451":2,"457":1,"458":3,"460":1,"461":1,"471":2,"472":1,"474":3,"480":3,"481":3,"482":2,"483":3,"487":1,"490":2,"492":3,"541":1,"553":1,"554":1,"559":5,"566":2,"568":4,"573":1,"585":1,"586":7,"587":5,"616":1,"617":2,"620":1,"622":1,"629":1,"637":2,"658":1,"664":1,"667":4,"669":1,"673":2,"674":2,"683":2,"693":1,"698":4,"701":3,"712":1,"714":1,"716":1,"717":1,"724":2,"728":1,"743":1,"745":2,"746":2,"747":2,"748":2,"751":2,"752":1,"753":1,"754":1,"756":2,"764":1,"765":2,"766":1,"767":1,"799":1,"825":1,"854":1,"856":1,"857":2,"858":1,"886":1,"918":1,"921":1,"922":2,"923":1,"953":1,"955":1,"956":2,"957":1,"987":1,"989":1,"990":2,"991":1,"1021":1,"1023":1,"1024":2,"1025":1,"1055":1,"1057":1,"1058":2,"1059":1,"1089":1,"1092":4,"1093":1,"1123":1,"1126":4,"1127":1,"1157":1,"1159":1,"1160":3,"1161":1,"1190":1,"1195":1,"1198":1,"1200":2,"1201":2,"1202":2,"1204":2,"1205":2,"1210":2,"1213":1,"1245":1,"1266":1,"1282":1,"1284":1,"1286":1,"1287":1,"1288":1,"1292":1,"1294":1,"1296":1,"1299":1,"1300":1,"1317":1,"1319":1,"1340":1,"1356":1,"1358":1,"1363":1,"1369":1,"1385":1,"1389":1,"1392":1,"1393":1,"1394":1,"1404":1,"1409":1,"1410":1,"1412":1,"1413":13,"1416":6,"1419":1,"1422":18,"1424":2,"1425":1,"1427":5,"1435":1,"1436":1,"1443":1,"1453":1,"1459":2,"1478":1,"1479":1,"1480":4,"1481":2,"1483":1,"1484":1,"1485":2,"1486":1,"1487":7,"1489":1,"1495":1,"1497":3,"1504":3,"1511":4,"1520":2,"1522":1,"1526":1,"1537":1,"1548":1,"1550":5,"1553":1,"1554":1,"1560":1,"1562":2,"1563":1,"1583":2,"1584":1,"1587":2,"1589":1,"1591":1,"1592":1,"1594":2,"1602":1,"1603":2,"1604":2,"1606":5,"1614":10,"1616":1,"1617":1,"1618":1,"1619":15,"1638":3,"1656":2,"1659":3,"1661":1,"1662":2,"1664":1,"1669":1,"1672":1,"1674":1,"1675":4,"1681":1,"1693":1,"1752":2,"1754":1,"1755":1,"1756":1,"1758":2,"1767":1,"1768":1,"1769":1,"1770":1,"1791":1,"1798":1,"1803":1,"1806":1,"1840":3,"1845":1,"1846":10,"1920":1,"1928":3,"1929":2,"1930":1,"1931":3,"1933":2,"1934":1,"1939":4,"1940":2,"1943":2,"1944":1,"1945":3,"1946":4,"1948":3,"1953":1,"1981":1,"1986":1,"1988":3,"1990":2,"1997":1,"1998":1,"1999":1,"2000":2,"2002":2,"2003":1,"2004":1,"2006":5,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":2,"2016":5,"2017":3,"2018":1,"2021":1,"2025":4,"2027":1,"2030":1,"2032":4,"2034":3,"2035":1,"2037":1,"2042":1,"2043":7,"2045":2,"2049":2,"2060":3,"2064":1,"2068":1,"2069":14,"2073":1,"2159":3,"2160":3,"2163":1,"2167":1,"2176":1,"2179":2,"2182":12,"2184":1,"2185":1,"2189":1,"2190":1,"2213":1,"2214":2,"2216":1,"2243":1,"2251":1,"2252":2,"2253":1,"2263":1,"2264":1,"2266":2,"2268":2,"2270":1,"2271":1,"2277":2,"2278":1,"2281":2,"2282":2,"2283":1,"2286":2,"2287":1,"2290":2,"2291":1,"2297":1,"2302":2,"2310":3,"2311":2,"2312":2,"2315":5,"2316":1,"2320":1,"2321":1,"2323":1,"2324":1,"2372":2,"2374":2,"2376":1,"2377":2,"2384":2,"2393":1,"2395":1,"2397":1,"2400":3,"2407":2,"2408":1,"2410":4,"2411":7,"2425":1,"2438":5,"2444":1,"2445":2,"2459":1,"2490":1,"2491":1,"2492":2,"2515":1,"2517":1,"2528":3,"2536":2,"2548":7,"2550":1,"2551":1,"2576":3,"2577":2,"2580":4,"2586":1,"2591":1,"2592":1,"2607":2,"2608":1,"2612":1,"2619":1,"2622":7,"2633":1,"2652":1,"2655":1,"2656":2,"2660":3,"2667":2,"2669":2,"2670":1,"2671":1,"2693":1,"2694":1,"2695":2,"2698":2,"2707":3,"2710":1,"2720":3,"2721":10,"2722":4,"2747":2,"2748":2,"2749":11,"2757":1,"2780":7,"2783":1,"2788":1,"2846":1,"2847":15,"2848":2,"2849":8,"2850":14,"2851":5,"2853":2,"2854":5,"2855":1,"2856":1,"2857":1,"2858":1,"2859":3,"2860":1,"2862":3,"2863":3,"2864":22,"2865":7,"2866":1,"2868":3,"2870":24,"2871":28,"2872":3,"2873":16,"2874":2,"2875":7,"2876":4,"2877":1,"2879":1,"2882":1,"2884":1,"2887":1,"2899":1,"2900":1,"2901":4,"2902":4,"2904":2,"2905":3,"2906":2,"2908":3,"2909":3,"2910":5,"2911":1,"2912":1,"2913":2,"2914":1,"2915":1,"2916":3,"2917":3,"2919":1,"2942":1}}],["delkey",{"2":{"1378":5}}],["delegation",{"2":{"2272":1}}],["delegating",{"2":{"568":1}}],["delegates",{"2":{"2271":1}}],["delegated",{"2":{"2271":1}}],["delegate",{"2":{"2271":1}}],["deleting",{"0":{"480":1,"496":1},"2":{"527":1}}],["deleted",{"2":{"16":1,"444":1,"2386":1,"2391":1}}],["delete",{"0":{"1378":1},"2":{"8":1,"31":1,"34":1,"99":1,"152":1,"211":1,"222":1,"255":1,"266":1,"403":1,"480":1,"496":1,"684":1,"685":3,"1378":4,"1587":1,"1688":1,"1737":1,"1744":3,"1949":2,"2159":1,"2215":1,"2372":1,"2505":1,"2509":2,"2511":1,"2515":4,"2942":2}}],["delimited",{"2":{"2748":1}}],["delimiter",{"2":{"2748":1}}],["delivered",{"2":{"676":1,"681":1}}],["deliberately",{"2":{"497":1,"642":1}}],["delilah",{"2":{"143":2}}],["delikeeb",{"2":{"86":8}}],["delayed",{"2":{"1452":1,"1487":1,"1954":1,"2902":1}}],["delays",{"2":{"572":1,"654":1,"1452":1,"1928":1,"2411":1,"2669":1,"2670":1,"2671":1}}],["delay",{"0":{"1460":2,"1461":2,"1756":1,"2223":1,"2227":1,"2241":1},"1":{"2224":1,"2228":1},"2":{"74":3,"112":6,"114":4,"120":1,"149":2,"176":5,"191":1,"222":2,"236":1,"249":2,"266":2,"317":1,"328":1,"333":1,"559":4,"562":5,"564":2,"654":2,"655":1,"656":1,"717":1,"1445":1,"1448":3,"1452":4,"1459":2,"1460":1,"1480":2,"1487":1,"1656":1,"1661":3,"1756":6,"1757":1,"1929":5,"1930":2,"1933":4,"1948":1,"1988":1,"2034":2,"2040":1,"2045":1,"2064":3,"2215":1,"2221":1,"2223":1,"2225":1,"2227":2,"2240":2,"2241":2,"2320":1,"2560":1,"2669":3,"2719":3,"2769":2,"2847":5,"2851":1,"2865":1,"2866":2,"2875":1,"2902":2}}],["del",{"0":{"8":1},"2":{"8":1,"63":1,"120":1,"369":1,"496":2,"587":2,"1374":3,"1375":3,"1378":9,"1445":1,"1448":1,"1594":1,"1744":1,"2159":1,"2215":1,"2374":2,"2509":1,"2515":1,"2554":1}}],["deltas",{"2":{"2006":1,"2403":2,"2748":1}}],["delta",{"0":{"2771":1},"2":{"100":1,"211":1,"222":1,"1929":2,"1930":1,"1933":2,"1934":4,"2014":2,"2403":5,"2748":1,"2760":1,"2765":2,"2769":8,"2771":9}}],["delt",{"0":{"8":1},"2":{"8":1,"188":1,"191":1}}],["u8",{"2":{"2886":2}}],["u80",{"2":{"211":1}}],["u03a8",{"2":{"2845":2}}],["u2192",{"2":{"2793":2}}],["u2193",{"2":{"2793":2}}],["u2190",{"2":{"2793":2}}],["u2191",{"2":{"2793":2}}],["u32",{"2":{"2768":1}}],["udr1",{"2":{"1985":1}}],["udevadm",{"2":{"1313":2}}],["udev",{"0":{"1313":1},"2":{"199":2,"1312":2,"1313":1,"1329":1,"2410":1}}],["ubrr1l",{"2":{"1985":1}}],["ubrr1h",{"2":{"1985":1}}],["ubuntu",{"2":{"521":1,"2594":1,"2600":1,"2619":1,"2621":3,"2646":1,"2657":1}}],["ultra",{"2":{"1421":1}}],["ultimately",{"2":{"2744":1}}],["ultimate",{"2":{"524":1}}],["ukrainian",{"2":{"2880":2}}],["ukr",{"2":{"2323":1}}],["uk",{"2":{"763":1,"1587":1,"2467":1,"2880":3}}],["uz",{"2":{"507":1}}],["uzu42",{"2":{"176":2}}],["uv",{"0":{"417":1},"2":{"417":4}}],["uvwxyz",{"2":{"266":1,"308":1}}],["urls",{"2":{"333":1,"372":3}}],["url",{"2":{"308":2,"372":3,"584":1,"666":1,"1630":2,"2630":1,"2632":1,"2721":1,"2788":1,"2845":2}}],["urbanvanilla",{"2":{"211":1}}],["ug",{"2":{"283":3,"587":16,"1661":10,"2181":11,"2192":1,"2537":11}}],["ugfx",{"0":{"10":1},"2":{"10":1,"114":1,"134":1}}],["u",{"2":{"266":1,"369":1,"442":2,"587":2,"1326":3,"2159":1,"2161":1,"2289":1,"2293":1,"2294":4,"2320":1,"2337":1,"2379":1,"2382":1,"2418":3,"2495":1,"2496":3,"2503":3,"2515":3,"2553":1,"2601":1,"2633":2,"2748":4}}],["uefi",{"0":{"1373":1},"2":{"263":1}}],["umsel10",{"2":{"1985":1}}],["um",{"2":{"219":1,"2322":3,"2325":1,"2411":1,"2545":1}}],["um70",{"2":{"114":1}}],["u16",{"2":{"191":1}}],["u+ffff",{"2":{"2324":2}}],["u+10ffff",{"2":{"2322":1}}],["u+",{"2":{"2322":1}}],["u+7fff",{"2":{"2322":1}}],["u+exxx",{"2":{"191":1}}],["u+axxx",{"2":{"191":1}}],["utc",{"2":{"530":1,"531":1,"532":2}}],["utf",{"2":{"211":1}}],["ut472",{"2":{"159":2}}],["ut47",{"2":{"149":1,"328":1}}],["utilise",{"2":{"2721":1}}],["utilises",{"2":{"2700":1}}],["utilised",{"2":{"2442":1,"2895":2}}],["utilising",{"2":{"1193":1,"2700":1}}],["utilisation",{"2":{"573":1}}],["utilize",{"2":{"553":1,"2862":1}}],["utilized",{"2":{"553":1,"1202":1}}],["utilities",{"2":{"133":1,"134":1,"149":1}}],["utility",{"2":{"49":1,"199":1,"266":1,"682":1,"1443":1,"2387":2,"2390":1,"2577":1}}],["utils",{"2":{"249":1}}],["util",{"2":{"114":1,"211":1,"236":2,"266":1,"285":2,"332":1,"423":1,"507":1,"508":1,"509":1,"566":2,"1942":1,"2266":2,"2280":1,"2386":3,"2387":6,"2388":3,"2389":3,"2391":3,"2392":4,"2400":7,"2410":2,"2498":1,"2501":1,"2719":1}}],["uaccess",{"2":{"1329":3}}],["ua62",{"2":{"143":2}}],["uart1",{"2":{"2692":2}}],["uart0",{"2":{"1402":2,"2692":2}}],["uart",{"0":{"1263":1,"1268":1,"1270":1,"1272":1,"1274":1,"1276":1,"1278":1,"2692":1},"1":{"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":2,"1270":1,"1271":2,"1272":1,"1273":2,"1274":1,"1275":2,"1276":1,"1277":2,"1278":1,"1279":2},"2":{"50":1,"73":1,"75":1,"133":2,"134":2,"149":4,"191":1,"199":1,"234":2,"236":2,"249":1,"294":1,"1189":1,"1263":1,"1264":3,"1265":1,"1266":12,"1268":1,"1278":1,"1392":2,"2367":2,"2368":1,"2424":1,"2685":1,"2688":1,"2692":1,"2695":4,"2697":2}}],["ucpol1",{"2":{"1985":1}}],["ucsr1b",{"2":{"1985":3}}],["ucsr1a",{"2":{"1985":3}}],["ucsr1c",{"2":{"1985":2}}],["ucsz10",{"2":{"1985":1}}],["ucis",{"0":{"2352":1,"2353":1,"2355":1,"2357":1,"2360":1,"2362":1,"2363":1,"2364":1},"1":{"2354":1,"2356":1,"2358":1,"2359":1,"2361":1,"2365":1},"2":{"199":1,"222":1,"2323":12,"2353":1,"2354":1,"2364":1,"2365":1,"2411":1,"2933":1}}],["uc",{"2":{"134":1,"188":1,"191":1,"2322":3,"2324":2,"2325":9,"2411":1,"2545":9}}],["ui",{"2":{"120":1,"191":1,"578":1}}],["uint24",{"2":{"2760":1,"2761":1,"2762":2,"2766":1,"2767":1}}],["uintptr",{"2":{"1749":2}}],["uint",{"2":{"134":1}}],["uint32",{"0":{"1268":1,"1975":1,"1977":1,"2231":1,"2340":1,"2347":1},"1":{"1269":1,"1976":1,"1978":1,"2232":1,"2341":1,"2348":1,"2349":1},"2":{"105":4,"114":1,"176":1,"645":1,"654":1,"1030":5,"1269":1,"1413":1,"1414":4,"1622":2,"1978":1,"2232":1,"2270":1,"2322":1,"2323":1,"2341":1,"2750":7,"2760":2,"2767":2,"2768":2}}],["uint8",{"0":{"704":3,"706":3,"709":1,"737":3,"739":3,"741":1,"770":2,"773":2,"776":2,"779":3,"782":3,"785":2,"788":3,"791":2,"794":1,"807":2,"809":3,"811":3,"813":1,"815":1,"817":1,"819":1,"832":1,"834":3,"836":3,"838":3,"840":1,"842":1,"844":1,"846":1,"848":1,"850":1,"864":1,"866":3,"868":3,"870":3,"872":1,"874":1,"876":4,"878":2,"880":1,"882":1,"894":1,"896":3,"898":2,"900":3,"902":3,"904":1,"906":1,"908":1,"910":1,"912":1,"914":1,"929":1,"931":3,"933":2,"935":3,"937":3,"939":1,"941":1,"943":1,"945":1,"947":1,"949":1,"963":1,"965":3,"967":2,"969":3,"971":3,"973":1,"975":1,"977":1,"979":1,"981":1,"983":1,"997":1,"999":3,"1001":2,"1003":3,"1005":3,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1017":1,"1031":1,"1033":3,"1035":2,"1037":3,"1039":3,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1051":1,"1065":1,"1067":3,"1069":2,"1071":3,"1073":3,"1075":1,"1077":1,"1079":4,"1081":2,"1083":1,"1085":1,"1099":1,"1101":3,"1103":2,"1105":3,"1107":3,"1109":1,"1111":1,"1113":4,"1115":2,"1117":1,"1119":1,"1133":1,"1135":3,"1137":2,"1139":3,"1141":3,"1143":1,"1145":1,"1147":4,"1149":2,"1151":1,"1153":1,"1167":1,"1169":3,"1171":2,"1173":3,"1175":3,"1177":1,"1179":1,"1181":4,"1183":2,"1185":1,"1187":1,"1220":1,"1222":3,"1224":2,"1226":3,"1228":3,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1240":1,"1248":1,"1251":1,"1256":1,"1259":1,"1270":1,"1272":1,"1274":1,"1303":3,"1305":3,"1540":1,"1543":1,"1545":1,"1572":1,"1574":1,"1705":2,"1713":2,"1715":2,"1719":1,"1721":1,"1724":1,"1726":1,"1728":1,"1730":1,"1779":1,"1781":1,"1783":1,"1786":1,"1859":2,"1861":1,"1863":1,"1865":1,"1871":1,"1877":1,"1883":1,"1885":1,"1887":1,"1897":1,"1906":2,"1909":2,"1963":1,"1965":1,"1967":1,"1969":1,"1971":1,"2054":2,"2056":2,"2085":4,"2087":3,"2089":1,"2091":1,"2097":1,"2103":1,"2109":1,"2115":1,"2121":1,"2123":1,"2125":1,"2135":1,"2137":3,"2139":3,"2150":2,"2153":2,"2223":1,"2227":1,"2235":1,"2237":1,"2327":1,"2329":1,"2333":1,"2335":1,"2344":1,"2347":1,"2350":1,"2355":1},"1":{"705":3,"707":3,"710":1,"738":3,"740":3,"742":1,"771":2,"772":2,"774":2,"775":2,"777":2,"778":2,"780":3,"781":3,"783":3,"784":3,"786":2,"787":2,"789":3,"790":3,"792":2,"793":2,"795":1,"796":1,"808":2,"810":3,"812":3,"814":1,"816":1,"818":1,"820":1,"833":1,"835":3,"837":3,"839":3,"841":1,"843":1,"845":1,"847":1,"849":1,"851":1,"865":1,"867":3,"869":3,"871":3,"873":1,"875":1,"877":4,"879":2,"881":1,"883":1,"895":1,"897":3,"899":2,"901":3,"903":3,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"930":1,"932":3,"934":2,"936":3,"938":3,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"964":1,"966":3,"968":2,"970":3,"972":3,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"998":1,"1000":3,"1002":2,"1004":3,"1006":3,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":3,"1036":2,"1038":3,"1040":3,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1066":1,"1068":3,"1070":2,"1072":3,"1074":3,"1076":1,"1078":1,"1080":4,"1082":2,"1084":1,"1086":1,"1100":1,"1102":3,"1104":2,"1106":3,"1108":3,"1110":1,"1112":1,"1114":4,"1116":2,"1118":1,"1120":1,"1134":1,"1136":3,"1138":2,"1140":3,"1142":3,"1144":1,"1146":1,"1148":4,"1150":2,"1152":1,"1154":1,"1168":1,"1170":3,"1172":2,"1174":3,"1176":3,"1178":1,"1180":1,"1182":4,"1184":2,"1186":1,"1188":1,"1221":1,"1223":3,"1225":2,"1227":3,"1229":3,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1249":1,"1250":1,"1252":1,"1253":1,"1257":1,"1258":1,"1260":1,"1261":1,"1271":1,"1273":1,"1275":1,"1304":3,"1306":3,"1541":1,"1573":1,"1575":1,"1706":2,"1714":2,"1716":2,"1720":1,"1722":1,"1723":1,"1725":1,"1727":1,"1729":1,"1731":1,"1780":1,"1782":1,"1784":1,"1785":1,"1787":1,"1860":2,"1862":1,"1864":1,"1866":1,"1872":1,"1878":1,"1884":1,"1886":1,"1888":1,"1898":1,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"1973":1,"2055":2,"2057":2,"2086":4,"2088":3,"2090":1,"2092":1,"2098":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2136":1,"2140":3,"2224":1,"2228":1,"2236":1,"2238":1,"2328":1,"2330":1,"2334":1,"2336":1,"2345":1,"2346":1,"2348":1,"2349":1,"2351":1,"2356":1},"2":{"46":1,"90":4,"105":4,"211":1,"323":1,"623":2,"630":2,"637":3,"645":1,"705":3,"707":3,"710":1,"725":1,"734":4,"738":3,"740":3,"742":1,"771":2,"774":2,"777":2,"780":3,"783":3,"786":2,"789":3,"792":2,"795":1,"805":4,"808":2,"810":3,"812":3,"814":1,"816":1,"818":1,"820":1,"831":5,"833":1,"835":3,"837":3,"839":3,"841":1,"843":1,"845":1,"847":1,"849":1,"851":1,"863":5,"865":1,"867":3,"869":3,"871":3,"873":1,"875":1,"877":4,"879":2,"881":1,"883":1,"893":5,"895":1,"897":3,"899":2,"901":3,"903":3,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"928":5,"930":1,"932":3,"934":2,"936":3,"938":3,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"962":5,"964":1,"966":3,"968":2,"970":3,"972":3,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"996":5,"998":1,"1000":3,"1002":2,"1004":3,"1006":3,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":3,"1036":2,"1038":3,"1040":3,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1064":5,"1066":1,"1068":3,"1070":2,"1072":3,"1074":3,"1076":1,"1078":1,"1080":4,"1082":2,"1084":1,"1086":1,"1098":5,"1100":1,"1102":3,"1104":2,"1106":3,"1108":3,"1110":1,"1112":1,"1114":4,"1116":2,"1118":1,"1120":1,"1132":5,"1134":1,"1136":3,"1138":2,"1140":3,"1142":3,"1144":1,"1146":1,"1148":4,"1150":2,"1152":1,"1154":1,"1166":5,"1168":2,"1170":3,"1172":2,"1174":3,"1176":3,"1178":1,"1180":1,"1182":4,"1184":2,"1186":1,"1188":1,"1219":5,"1221":1,"1223":3,"1225":2,"1227":3,"1229":3,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1249":1,"1252":1,"1257":1,"1260":1,"1271":1,"1275":1,"1277":1,"1304":3,"1306":3,"1378":1,"1413":1,"1425":2,"1443":2,"1451":1,"1481":3,"1486":2,"1521":1,"1526":2,"1527":2,"1528":1,"1529":3,"1544":1,"1546":1,"1557":1,"1573":1,"1606":1,"1611":2,"1612":2,"1614":2,"1622":2,"1662":2,"1696":1,"1706":1,"1714":2,"1716":2,"1720":1,"1725":1,"1727":1,"1729":1,"1731":1,"1749":3,"1751":3,"1775":1,"1780":1,"1782":1,"1784":1,"1787":1,"1790":2,"1794":1,"1798":5,"1844":3,"1849":2,"1860":2,"1862":1,"1864":1,"1866":1,"1884":1,"1886":1,"1907":2,"1910":2,"1941":2,"1947":1,"1948":15,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"2019":1,"2021":1,"2034":1,"2039":3,"2050":2,"2052":3,"2055":2,"2057":2,"2066":3,"2072":2,"2073":12,"2074":5,"2086":4,"2088":3,"2090":1,"2092":1,"2122":1,"2124":1,"2138":3,"2140":3,"2151":2,"2154":2,"2160":2,"2161":1,"2162":1,"2164":1,"2165":1,"2166":1,"2168":1,"2170":3,"2182":1,"2187":7,"2224":1,"2228":1,"2236":1,"2238":1,"2247":11,"2270":6,"2279":2,"2283":6,"2293":2,"2298":1,"2330":1,"2334":1,"2336":1,"2348":1,"2351":1,"2365":1,"2374":2,"2552":1,"2645":6,"2749":4,"2750":34,"2760":6,"2766":2,"2767":1,"2769":4,"2770":7,"2772":1,"2900":1}}],["uint16",{"0":{"704":1,"770":2,"773":2,"776":2,"779":3,"782":2,"785":3,"788":2,"791":3,"794":1,"1248":1,"1256":1,"1259":1,"1274":1,"1276":1,"1812":1,"1818":1,"1823":1,"1826":2,"1829":3,"1832":4,"1835":5,"2233":1,"2344":1,"2357":1},"1":{"705":1,"771":2,"772":2,"774":2,"775":2,"777":2,"778":2,"780":3,"781":3,"783":2,"784":2,"786":3,"787":3,"789":2,"790":2,"792":3,"793":3,"795":1,"796":1,"1249":1,"1250":1,"1257":1,"1258":1,"1260":1,"1261":1,"1275":1,"1277":1,"1813":1,"1814":1,"1819":1,"1820":1,"1824":1,"1825":1,"1827":2,"1828":2,"1830":3,"1831":3,"1833":4,"1834":4,"1836":5,"1837":5,"2234":1,"2345":1,"2346":1,"2358":1,"2359":1},"2":{"22":6,"46":2,"194":2,"195":2,"247":1,"307":2,"324":1,"325":1,"587":1,"591":2,"629":1,"630":3,"645":1,"705":1,"771":2,"774":2,"777":2,"780":3,"783":2,"786":3,"789":2,"792":3,"795":1,"1249":1,"1257":1,"1260":1,"1275":1,"1277":1,"1326":1,"1377":1,"1378":1,"1413":2,"1425":1,"1442":1,"1443":2,"1450":4,"1451":2,"1466":2,"1474":1,"1485":1,"1497":1,"1504":2,"1511":3,"1526":1,"1527":1,"1594":2,"1596":2,"1597":2,"1598":2,"1599":7,"1606":11,"1607":4,"1611":5,"1612":6,"1621":1,"1661":1,"1683":1,"1751":2,"1765":1,"1771":3,"1777":3,"1813":1,"1819":1,"1824":1,"1827":2,"1830":3,"1833":4,"1836":5,"1918":2,"1941":1,"1946":1,"1948":7,"1956":1,"2015":2,"2017":1,"2019":1,"2020":1,"2024":1,"2025":1,"2036":2,"2037":1,"2039":3,"2044":1,"2046":1,"2160":2,"2161":1,"2162":3,"2164":1,"2165":1,"2166":1,"2167":1,"2168":2,"2170":4,"2191":2,"2218":1,"2234":1,"2279":1,"2282":1,"2283":4,"2293":2,"2305":1,"2309":4,"2312":2,"2345":1,"2358":1,"2374":4,"2441":1,"2547":1,"2552":1,"2562":1,"2563":1,"2564":1,"2578":1,"2749":45,"2750":39,"2760":1,"2767":3,"2769":1,"2771":4,"2777":1,"2785":1,"2899":1,"2900":2,"2901":2,"2908":1,"2909":1,"2910":1,"2912":1,"2913":4,"2916":2,"2917":1,"2919":1,"2931":1,"2933":38}}],["uf2families",{"2":{"285":1}}],["uf2boot",{"0":{"2395":1},"1":{"2396":1},"2":{"236":1,"2395":5}}],["uf2conv",{"2":{"211":1,"222":1,"328":1}}],["uf2",{"0":{"2397":1,"2680":1},"2":{"93":1,"114":1,"160":1,"176":2,"199":3,"211":1,"294":1,"2266":2,"2393":1,"2394":2,"2395":1,"2396":2,"2397":1,"2600":1,"2693":1,"2847":1}}],["unknowingly",{"2":{"2567":1}}],["unknown",{"0":{"1315":1},"2":{"111":1,"371":1,"2310":2,"2311":2,"2312":2,"2440":1,"2501":1}}],["unblink",{"2":{"2191":4}}],["unwanted",{"2":{"1756":1,"2171":1}}],["unnecessarily",{"2":{"1245":1,"1425":1}}],["unnecessary",{"2":{"134":1,"236":1,"266":1,"277":1,"303":1,"333":1,"613":1,"2551":1}}],["unquoted",{"2":{"669":1}}],["unusable",{"0":{"2674":1},"2":{"1317":1}}],["unusual",{"2":{"533":1,"673":1,"1583":1,"2930":1}}],["unuseful",{"2":{"266":1}}],["unused",{"0":{"1625":1},"2":{"50":1,"75":1,"149":1,"176":1,"191":1,"199":8,"333":2,"597":1,"1291":1,"1316":1,"1393":1,"1405":1,"1620":1,"1903":1,"1908":1,"2147":1,"2152":1,"2208":2,"2265":3,"2271":1,"2411":1,"2721":1,"2865":1}}],["unfiltered",{"2":{"2372":2}}],["unfamiliar",{"2":{"527":1}}],["unfortunately",{"2":{"173":1,"279":1,"594":1,"1287":1,"1493":1,"1522":1,"2557":1,"2672":1,"2879":1,"2934":1}}],["uncle",{"2":{"2934":1}}],["unclear",{"2":{"520":1,"525":1,"617":1}}],["unchanged",{"2":{"2900":1}}],["uncapitalizing",{"2":{"1591":1}}],["unconfigured",{"2":{"2865":1}}],["unconditionally",{"2":{"49":1,"114":1}}],["uncomment",{"2":{"1606":1}}],["uncommon",{"2":{"11":1,"1522":1}}],["uncombined",{"2":{"573":1}}],["uncovered",{"2":{"191":1}}],["unavoidable",{"2":{"2721":1}}],["unavailable",{"2":{"692":1,"758":2,"1405":1,"1475":1,"1985":1,"2569":1,"2715":1}}],["unacceptable",{"2":{"2568":1,"2569":2}}],["unaffected",{"2":{"1587":1}}],["unannotated",{"2":{"547":1}}],["unambiguous",{"2":{"534":1}}],["unable",{"2":{"393":1,"408":1,"2464":1,"2467":1,"2568":2,"2881":1}}],["unauthorized",{"2":{"312":1}}],["unassigned",{"2":{"236":1,"503":1}}],["unprivileged",{"2":{"2400":1}}],["unpr",{"2":{"2370":1,"2521":1}}],["unpressed",{"2":{"1406":1}}],["unpredictable",{"2":{"746":1}}],["unplugged",{"2":{"1655":1,"2806":1}}],["unplugging",{"2":{"1413":1,"1418":1,"1484":1,"2258":1}}],["unplug",{"2":{"683":1,"1345":1,"1617":1,"1655":1,"2501":1,"2605":3,"2780":2}}],["unpair",{"2":{"2370":1,"2521":1}}],["unpacking",{"2":{"534":1}}],["unparsed",{"2":{"249":1}}],["unpicking",{"2":{"303":1}}],["unxmaal",{"2":{"236":1}}],["unshifted",{"2":{"2556":1}}],["unswap",{"2":{"2513":20,"2531":20}}],["unsplit",{"2":{"2014":1}}],["unspecified",{"2":{"1638":1}}],["unscrewing",{"2":{"1362":1}}],["unsuccessful",{"2":{"794":1}}],["unsupported",{"2":{"695":1,"696":1,"1948":1,"2254":1}}],["unsure",{"2":{"683":1,"685":1,"1951":1,"1952":1,"2424":1,"2427":1,"2576":1,"2622":1}}],["unsigned",{"2":{"222":1,"333":1,"1365":1,"1946":1,"2231":1,"2233":1,"2282":1}}],["unsent",{"2":{"1982":1}}],["unsettled",{"0":{"320":1},"2":{"328":1}}],["unset",{"2":{"160":1,"751":2,"2747":2}}],["unselect",{"2":{"114":3,"559":1}}],["unmergeable",{"2":{"2721":1}}],["unmerged",{"2":{"221":1,"397":1}}],["unmod",{"2":{"1931":4}}],["unmodified",{"2":{"1758":1,"1931":7,"2917":1}}],["unmaintained",{"2":{"114":1}}],["unrecognized",{"2":{"2941":1}}],["unrecoverable",{"2":{"2496":1}}],["unresponsive",{"2":{"1655":1,"1929":1,"1930":1}}],["unreliable",{"2":{"1293":1}}],["unrelated",{"2":{"191":1,"335":1,"338":3,"397":1}}],["unregistered",{"2":{"654":1,"1466":1,"1611":1,"1751":1}}],["unregister",{"0":{"1458":1,"1461":1,"1781":1,"1969":1},"1":{"1782":1,"1970":1},"2":{"562":1,"1350":1,"1375":1,"1377":1,"1378":1,"1451":1,"1459":2,"1460":1,"1466":2,"1511":3,"1611":2,"1612":1,"1749":1,"1751":1,"1752":1,"1758":1,"2309":1,"2310":5,"2311":3,"2917":1}}],["unreachable",{"2":{"333":1}}],["unreferenced",{"2":{"133":1,"134":1}}],["unloaded",{"2":{"2750":2}}],["unlocking",{"2":{"2172":1,"2177":1}}],["unlocks",{"2":{"1761":1,"1763":1,"2527":1}}],["unlock",{"0":{"2172":1},"2":{"1759":2,"1762":1,"2172":1,"2175":6,"2176":3,"2177":6,"2501":2,"2872":4}}],["unlocked",{"2":{"396":1,"405":1,"1764":1,"2173":1,"2176":1,"2177":3,"2872":1}}],["unlk",{"2":{"2175":1}}],["unlike",{"2":{"1353":1,"1639":1,"2591":1,"2862":1,"2921":1}}],["unlikely",{"2":{"154":1,"559":1,"1353":1,"2704":1}}],["unlimited",{"2":{"453":1,"467":1}}],["unless",{"2":{"191":1,"492":1,"524":1,"536":1,"544":1,"623":2,"1350":1,"1353":1,"1362":1,"1375":1,"1422":2,"1492":1,"1550":1,"1562":1,"1791":1,"2043":1,"2063":1,"2410":1,"2427":1,"2466":1,"2528":1,"2695":1,"2700":1,"2719":1,"2721":4,"2750":1}}],["unexplainable",{"2":{"2410":1}}],["unexpectedly",{"2":{"1365":1}}],["unexpected",{"2":{"87":1,"393":1,"1587":1,"1747":1}}],["unecessary",{"2":{"160":1}}],["uno",{"0":{"2479":1},"1":{"2480":1},"2":{"159":2,"160":2,"2479":2,"2480":3}}],["un",{"2":{"149":1,"191":1,"266":1,"284":1,"559":1,"1459":1,"2161":1,"2370":1,"2521":1}}],["ungodly",{"2":{"114":2}}],["unterminated",{"2":{"134":1}}],["untested",{"2":{"49":1,"550":1,"1691":1,"1937":1,"1943":1,"2281":1,"2411":2}}],["until",{"2":{"114":1,"160":1,"199":1,"279":1,"320":1,"579":1,"645":1,"655":1,"684":1,"765":1,"1348":1,"1389":1,"1390":1,"1406":1,"1416":3,"1458":1,"1485":1,"1486":1,"1497":1,"1519":1,"1588":1,"1592":1,"1732":1,"1734":1,"1756":3,"1846":1,"1928":3,"1929":2,"1933":1,"1948":1,"1953":2,"2012":1,"2031":1,"2069":1,"2297":1,"2378":1,"2380":1,"2385":1,"2387":1,"2392":1,"2425":1,"2526":1,"2528":1,"2544":1,"2569":1,"2575":1,"2627":1,"2643":2,"2719":1,"2721":2,"2750":1,"2827":1,"2901":1,"2902":1,"2910":2,"2919":1}}],["universal",{"2":{"2841":1}}],["union",{"2":{"1413":2}}],["uninsulated",{"2":{"2418":1}}],["uninstallation",{"0":{"685":1},"2":{"685":1}}],["uninstall",{"2":{"684":1,"685":4,"686":1}}],["unintentional",{"2":{"191":1,"2418":1}}],["unilaterally",{"2":{"312":1}}],["unix",{"2":{"249":1,"277":1,"456":1,"2404":1,"2612":1,"2613":1,"2637":1,"2660":2}}],["unix60",{"2":{"67":1,"72":1,"211":1}}],["uniform",{"2":{"222":1}}],["unify",{"0":{"22":1},"2":{"113":1,"114":2,"149":1,"222":1,"294":3}}],["uni",{"2":{"197":2,"199":2}}],["uniquely",{"2":{"1416":1,"2030":1}}],["unique",{"2":{"160":1,"199":1,"627":2,"663":1,"1316":2,"2422":1,"2727":1}}],["unikeyboard",{"2":{"143":3,"149":2}}],["unicorne",{"2":{"134":1,"249":1}}],["unicodemap",{"0":{"219":1,"2344":1,"2347":1,"2350":1},"1":{"2345":1,"2346":1,"2348":1,"2349":1,"2351":1},"2":{"219":1,"222":2,"2411":1,"2933":1}}],["unicode",{"0":{"186":1,"2317":1,"2327":1,"2329":1,"2331":1,"2332":1,"2333":1,"2335":1,"2337":1,"2338":1,"2339":1,"2340":1,"2342":1,"2468":1,"2545":1,"2762":1,"2839":1},"1":{"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":2,"2329":1,"2330":2,"2331":1,"2332":1,"2333":1,"2334":2,"2335":1,"2336":2,"2337":1,"2338":1,"2339":1,"2340":1,"2341":2,"2342":1,"2343":2,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1},"2":{"70":1,"94":1,"111":1,"134":1,"149":2,"160":1,"186":3,"188":3,"191":6,"199":2,"211":1,"222":2,"467":1,"490":1,"572":2,"590":1,"1352":1,"1521":1,"2212":2,"2317":1,"2318":2,"2319":1,"2320":11,"2321":5,"2322":6,"2323":6,"2324":21,"2325":12,"2327":1,"2328":1,"2329":1,"2331":1,"2332":1,"2337":4,"2338":2,"2339":2,"2340":1,"2342":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2411":5,"2467":1,"2468":2,"2545":13,"2748":18,"2758":2,"2760":3,"2762":6,"2763":2,"2839":3,"2845":2,"2879":1,"2925":1,"2933":2,"2941":1}}],["unity",{"2":{"2735":1}}],["units",{"2":{"563":3,"613":1,"711":1,"1407":2,"1762":1,"2023":1,"2034":3,"2769":1,"2788":2,"2862":4}}],["unit|integration>",{"2":{"503":1}}],["unit",{"0":{"552":1,"2840":1,"2934":1},"1":{"2935":1,"2936":1,"2937":1,"2938":1,"2939":1,"2940":1},"2":{"114":1,"134":1,"191":1,"198":1,"199":2,"249":1,"308":1,"467":1,"503":2,"550":1,"552":1,"617":1,"715":1,"765":2,"1327":1,"1407":1,"1474":1,"1656":1,"2411":1,"2722":3,"2823":1,"2840":2,"2934":2,"2935":1,"2937":2,"2940":1}}],["unite",{"2":{"114":1}}],["undone",{"2":{"2633":1}}],["undo",{"2":{"1616":1,"2023":1,"2509":2,"2515":2,"2627":1}}],["undocumented",{"2":{"8":1,"549":1}}],["unds",{"2":{"176":1,"1587":1,"1594":1,"2539":1,"2558":1}}],["undecided",{"2":{"2911":1}}],["undesired",{"2":{"1758":1,"2917":1}}],["undesirable",{"2":{"1757":1}}],["undef",{"2":{"45":1,"348":3,"557":1,"714":5,"715":3,"718":1,"765":1,"1200":1,"1201":1,"1245":1,"1266":1,"1296":1,"1300":1,"1393":1,"1402":1,"1562":1,"1563":1,"2186":4,"2409":2,"2883":2,"2887":55}}],["undefined",{"2":{"567":1,"1410":1,"1930":1,"1933":1,"1934":1,"1939":1,"1943":1,"1945":1,"2277":1,"2372":1,"2695":1}}],["undefine",{"2":{"45":1,"557":1,"1393":1}}],["underneath",{"2":{"1547":1}}],["undertake",{"2":{"611":1}}],["underlight",{"0":{"2838":1},"2":{"572":1}}],["underlying",{"2":{"234":1,"320":1,"435":1,"473":1,"487":1,"749":1,"751":2,"752":1,"753":2,"1606":1,"1839":1,"2059":1,"2668":1,"2857":1,"2919":1}}],["undergoing",{"2":{"203":1}}],["undergoes",{"2":{"203":1}}],["underglowx",{"2":{"2440":1}}],["underglow",{"2":{"32":1,"49":1,"266":1,"277":3,"283":1,"328":1,"631":1,"639":1,"1413":2,"1424":1,"1547":1,"2061":2,"2069":1,"2178":1,"2181":11,"2188":1,"2208":1,"2428":1,"2440":3,"2537":11,"2783":1,"2887":1}}],["underside",{"2":{"683":1,"2605":1,"2838":1}}],["understood",{"2":{"546":1}}],["understands",{"0":{"2787":1},"2":{"1280":1,"2178":1,"2287":1,"2787":1}}],["understandable",{"2":{"613":1}}],["understandability",{"2":{"524":1,"546":2}}],["understanding",{"0":{"2926":1},"1":{"2927":1,"2928":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"249":1,"359":1,"411":1,"541":1,"544":1,"546":1,"617":2,"624":1,"1421":1,"1753":1,"2303":1,"2635":1,"2787":2,"2922":1,"2925":1,"2926":1}}],["understand",{"2":{"2":1,"362":1,"489":1,"524":1,"536":1,"538":1,"624":1,"642":1,"663":1,"673":1,"675":1,"1412":1,"1523":1,"1754":1,"1755":1,"2460":1,"2787":2,"2926":1}}],["underscores",{"2":{"552":1,"2551":1,"2787":1}}],["underscore",{"2":{"528":1,"1522":1,"2434":2,"2539":1,"2558":1}}],["underscore33",{"2":{"143":4}}],["under",{"2":{"32":1,"55":13,"120":1,"134":1,"149":1,"204":1,"211":1,"222":1,"249":1,"265":1,"268":1,"387":1,"391":1,"397":1,"405":1,"427":1,"493":1,"611":1,"663":1,"668":1,"751":1,"754":1,"1317":1,"1348":1,"1438":1,"1445":1,"1487":1,"1628":1,"1844":1,"2042":2,"2050":1,"2066":1,"2268":1,"2310":1,"2324":3,"2426":2,"2450":1,"2495":1,"2579":1,"2602":1,"2603":1,"2667":3,"2697":1,"2722":1,"2725":1,"2729":3,"2749":1,"2750":1,"2828":1,"2844":1,"2895":2,"2915":1}}],["uprint",{"2":{"2411":4}}],["uprintf",{"2":{"1324":1,"1326":1}}],["uppr",{"2":{"2314":1}}],["upper",{"0":{"2323":1},"2":{"191":1,"673":1,"716":1,"763":1,"1516":2,"1675":1,"2000":1,"2007":2,"2009":1,"2294":3,"2313":2,"2314":3,"2315":2,"2316":6,"2323":2,"2403":1,"2553":1}}],["uppercase",{"2":{"191":1,"1403":1,"2323":3,"2719":2}}],["updir",{"2":{"2162":3}}],["updater",{"2":{"423":1,"2390":3}}],["updated",{"0":{"44":1,"59":1,"86":1,"102":1,"122":1,"143":1,"159":1,"168":1,"181":1,"197":1,"207":1,"217":1,"226":1,"241":1,"253":1,"270":1,"281":1,"291":1,"300":1,"311":1,"322":1},"1":{"45":1,"60":1},"2":{"10":1,"14":1,"69":1,"83":1,"86":2,"108":1,"114":2,"126":1,"134":1,"149":1,"160":1,"182":2,"195":1,"220":1,"230":1,"241":1,"244":1,"253":1,"262":1,"270":1,"281":1,"283":1,"373":2,"405":1,"417":1,"420":1,"644":2,"1790":1,"2631":1,"2632":1,"2633":2,"2721":1,"2723":3}}],["updates",{"0":{"190":1,"248":1,"255":1,"256":1,"306":1,"315":1},"1":{"257":1,"258":1,"259":1,"260":1},"2":{"5":1,"12":2,"22":1,"30":1,"33":1,"64":1,"114":2,"134":2,"149":2,"160":2,"176":3,"190":1,"191":2,"199":1,"211":3,"222":1,"236":3,"249":5,"266":3,"277":1,"285":2,"294":2,"308":2,"328":1,"399":2,"400":2,"401":2,"402":1,"405":2,"408":1,"421":1,"509":1,"714":1,"715":1,"1345":1,"2046":1,"2588":1,"2632":1,"2660":1,"2721":1}}],["update",{"0":{"4":1,"6":1,"10":1,"12":1,"45":1,"56":1,"69":1,"77":1,"307":1,"741":1,"821":1,"822":1,"848":1,"850":1,"880":1,"882":1,"912":1,"914":1,"947":1,"949":1,"981":1,"983":1,"1015":1,"1017":1,"1049":1,"1051":1,"1083":1,"1085":1,"1117":1,"1119":1,"1151":1,"1153":1,"1185":1,"1187":1,"1238":1,"1240":1,"1345":1,"1792":1,"1793":1,"1794":1,"1796":1,"2631":1,"2776":1,"2778":1},"1":{"742":1,"849":1,"851":1,"881":1,"883":1,"913":1,"915":1,"948":1,"950":1,"982":1,"984":1,"1016":1,"1018":1,"1050":1,"1052":1,"1084":1,"1086":1,"1118":1,"1120":1,"1152":1,"1154":1,"1186":1,"1188":1,"1239":1,"1241":1,"1793":1,"1794":1,"2632":1,"2633":1,"2634":1,"2777":1,"2779":1},"2":{"10":3,"21":1,"24":1,"31":1,"32":1,"46":1,"49":1,"63":1,"65":1,"75":1,"76":1,"89":1,"90":8,"93":3,"95":1,"105":12,"114":9,"131":2,"133":1,"134":8,"149":5,"158":1,"160":3,"176":15,"191":17,"194":1,"199":5,"211":8,"218":1,"222":8,"230":1,"236":11,"240":2,"249":12,"255":1,"256":1,"266":9,"277":8,"285":7,"294":9,"307":4,"308":4,"317":4,"323":1,"328":5,"333":2,"405":1,"406":1,"423":3,"424":2,"616":1,"645":1,"650":1,"651":1,"704":1,"713":2,"737":2,"809":2,"813":2,"817":2,"819":2,"836":2,"840":2,"844":2,"846":2,"868":2,"872":2,"876":2,"878":2,"900":2,"904":2,"908":2,"910":2,"935":2,"939":2,"943":2,"945":2,"969":2,"973":2,"977":2,"979":2,"1003":2,"1007":2,"1011":2,"1013":2,"1037":2,"1041":2,"1045":2,"1047":2,"1071":2,"1075":2,"1079":2,"1081":2,"1105":2,"1109":2,"1113":2,"1115":2,"1139":2,"1143":2,"1147":2,"1149":2,"1173":2,"1177":2,"1181":2,"1183":2,"1226":2,"1230":2,"1234":2,"1236":2,"1303":1,"1313":1,"1378":1,"1412":2,"1413":4,"1414":2,"1422":3,"1441":1,"1516":1,"1616":1,"1622":6,"1628":1,"1662":3,"1770":1,"1790":2,"1792":4,"1793":2,"1794":1,"1795":1,"1796":1,"1846":1,"1943":3,"2006":1,"2025":1,"2034":1,"2069":1,"2181":1,"2190":1,"2281":1,"2441":1,"2449":1,"2499":1,"2625":1,"2626":1,"2628":2,"2630":2,"2632":1,"2707":1,"2721":3,"2723":1,"2740":1,"2757":1,"2776":1,"2777":4,"2778":1,"2779":3,"2780":1,"2864":1,"2871":1,"2901":1,"2933":1}}],["updating",{"0":{"405":1,"423":1,"2632":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"107":1,"194":1,"199":1,"249":1,"294":1,"393":1,"408":1,"410":1,"421":1,"422":1,"1943":1,"2189":1,"2281":1,"2411":1,"2719":1}}],["upward",{"2":{"2021":2}}],["upwards",{"2":{"1486":1}}],["upe1",{"2":{"1985":1}}],["upm10",{"2":{"1985":1}}],["upgrading",{"2":{"417":1,"2721":1}}],["upgrades",{"2":{"10":1,"114":1}}],["upgrade",{"0":{"24":1,"420":1,"424":1},"1":{"421":1,"422":1,"423":1,"424":1},"2":{"10":3,"65":2,"158":3,"294":1,"417":1,"2699":1,"2800":1}}],["upgraded",{"2":{"10":1}}],["uploading",{"2":{"584":1}}],["uploaded",{"2":{"276":2,"578":1,"2410":1,"2721":1}}],["uploads",{"2":{"273":1,"277":1,"1368":2,"2410":1,"2591":1,"2632":1}}],["upload",{"0":{"273":1},"2":{"149":1,"273":4,"360":1,"361":1,"598":1,"673":1,"1515":1,"1516":1,"2408":1,"2410":1,"2498":1,"2600":1}}],["upon",{"2":{"65":1,"283":1,"312":1,"602":1,"1340":1,"1443":1,"1550":3,"1754":1,"1954":1,"1955":1,"2182":6,"2626":1,"2628":1,"2689":1,"2694":1,"2700":1}}],["ups",{"0":{"50":1,"64":1,"75":1,"94":1},"2":{"50":1,"176":1,"266":1,"1202":1,"2260":1}}],["upstreamed",{"2":{"2700":1,"2704":1,"2706":1}}],["upstreaming",{"2":{"2567":8,"2706":1}}],["upstream",{"2":{"10":1,"12":1,"26":1,"167":1,"211":1,"222":1,"285":1,"328":1,"403":3,"405":2,"422":2,"423":1,"613":1,"1434":1,"2567":1,"2569":1,"2571":1,"2627":8,"2630":6,"2632":8,"2633":4,"2700":1,"2705":1,"2719":2,"2895":1,"2896":2}}],["up",{"0":{"406":1,"410":1,"1452":1,"2036":1,"2423":1,"2425":1,"2428":1,"2584":1,"2611":1,"2629":1,"2646":1,"2657":1,"2658":1,"2815":1},"1":{"2037":1,"2424":1,"2612":1,"2613":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1,"2621":1,"2622":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1},"2":{"6":1,"13":1,"23":1,"28":1,"45":1,"50":1,"62":1,"73":3,"77":1,"90":3,"93":1,"94":3,"100":1,"114":13,"119":2,"120":3,"123":1,"124":2,"130":2,"131":1,"133":2,"134":6,"145":1,"149":5,"153":1,"156":1,"160":1,"163":1,"166":1,"173":1,"182":1,"188":1,"191":8,"198":2,"199":6,"206":1,"209":1,"210":1,"211":55,"219":1,"222":8,"224":1,"228":1,"231":2,"232":1,"236":4,"248":1,"249":1,"251":1,"266":3,"294":3,"328":1,"347":1,"348":1,"356":1,"369":1,"377":1,"387":1,"403":1,"416":1,"417":1,"418":1,"427":1,"444":1,"520":2,"548":2,"553":1,"556":1,"559":1,"563":2,"572":2,"573":1,"580":1,"583":1,"586":1,"587":4,"611":1,"612":1,"613":1,"615":1,"628":2,"631":1,"633":1,"635":2,"637":2,"639":1,"646":1,"654":1,"674":1,"682":1,"684":1,"685":1,"692":1,"717":2,"726":1,"745":1,"746":3,"758":1,"765":1,"797":1,"823":1,"852":1,"884":1,"916":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1121":1,"1155":1,"1194":2,"1202":1,"1211":1,"1245":1,"1249":1,"1266":1,"1300":3,"1310":1,"1336":1,"1338":1,"1369":1,"1407":8,"1410":2,"1413":2,"1419":1,"1443":1,"1445":2,"1448":6,"1451":1,"1452":2,"1467":1,"1468":1,"1479":1,"1480":1,"1484":2,"1487":4,"1489":2,"1493":1,"1515":3,"1516":2,"1517":2,"1520":1,"1521":1,"1532":1,"1549":2,"1562":1,"1606":1,"1662":1,"1674":2,"1679":1,"1688":2,"1696":1,"1737":2,"1746":6,"1752":1,"1758":1,"1766":1,"1792":1,"1799":1,"1807":2,"1842":2,"1843":7,"1919":8,"1927":5,"1958":1,"1979":3,"2000":1,"2006":2,"2011":1,"2025":1,"2037":1,"2040":1,"2044":2,"2062":4,"2063":9,"2064":2,"2074":1,"2159":10,"2162":1,"2181":4,"2185":2,"2189":1,"2215":1,"2244":1,"2246":2,"2252":1,"2253":1,"2257":1,"2260":1,"2266":1,"2271":1,"2274":1,"2289":1,"2291":1,"2302":2,"2308":1,"2312":1,"2322":2,"2323":2,"2324":2,"2325":2,"2402":1,"2403":1,"2409":1,"2411":5,"2420":1,"2425":1,"2427":1,"2435":1,"2448":1,"2456":2,"2457":1,"2459":1,"2489":1,"2494":1,"2509":7,"2510":4,"2511":2,"2515":13,"2517":2,"2518":3,"2520":2,"2530":2,"2532":8,"2533":5,"2536":2,"2537":4,"2538":4,"2545":2,"2548":1,"2549":1,"2553":1,"2575":1,"2579":2,"2584":1,"2587":1,"2590":1,"2609":1,"2611":1,"2613":1,"2622":1,"2625":1,"2631":1,"2644":1,"2646":2,"2651":1,"2656":1,"2657":1,"2658":2,"2662":3,"2667":4,"2675":2,"2677":2,"2679":2,"2683":1,"2693":1,"2700":1,"2702":1,"2719":1,"2721":1,"2722":1,"2723":1,"2750":1,"2754":1,"2773":2,"2835":1,"2872":1,"2875":2,"2885":2,"2886":1,"2887":2,"2901":11,"2904":4,"2905":6,"2906":4,"2908":7,"2909":2,"2910":2,"2914":5,"2917":1,"2920":1,"2922":1,"2931":1}}],["usd",{"2":{"2672":1,"2888":1}}],["us=yes",{"2":{"1392":1}}],["usr",{"2":{"1313":1,"2662":1}}],["usually",{"2":{"228":1,"391":1,"434":1,"541":1,"572":1,"621":1,"655":1,"674":1,"682":1,"683":1,"687":1,"751":3,"763":1,"1197":1,"1205":1,"1287":1,"1293":1,"1345":2,"1361":1,"1407":1,"1410":1,"1482":1,"1547":1,"1552":1,"1557":2,"1583":1,"1666":1,"2017":1,"2018":1,"2179":2,"2193":1,"2213":1,"2284":1,"2383":1,"2410":1,"2411":1,"2462":1,"2476":1,"2494":1,"2496":1,"2500":1,"2548":1,"2571":1,"2605":2,"2610":1,"2643":1,"2652":1,"2667":1,"2704":1,"2787":1,"2862":1,"2890":1,"2894":1,"2942":1}}],["usual",{"2":{"77":1,"495":1,"496":1,"628":1,"1377":1,"1378":1,"1476":1,"1684":2,"2045":1,"2162":1,"2167":1,"2901":1}}],["usability",{"2":{"211":1}}],["usable",{"2":{"107":1,"114":1,"156":1,"209":1,"231":1,"464":1,"492":1,"713":1,"751":2,"752":1,"753":1,"1413":1,"1475":1,"2254":1,"2424":1,"2549":1,"2674":3,"2748":1,"2749":1,"2857":1}}],["usart4",{"2":{"1209":1}}],["usart2",{"2":{"1208":1,"1209":1,"1210":3,"1266":4}}],["usart3",{"2":{"1200":1,"1201":1,"1208":1,"1209":1,"1210":5,"1266":1}}],["usartn",{"2":{"1200":2,"1201":2}}],["usart1",{"2":{"1195":1,"1198":1,"1208":1,"1209":1,"1210":3,"1266":2,"1985":1}}],["usart",{"0":{"1193":1,"1196":1,"1985":1},"1":{"1194":1,"1195":1,"1197":1,"1198":1},"2":{"74":1,"107":1,"176":1,"266":1,"277":1,"285":1,"1189":3,"1193":1,"1194":2,"1195":5,"1196":2,"1197":5,"1198":10,"1200":5,"1201":5,"1204":1,"1205":2,"1207":1,"1210":3,"1266":1,"1979":1,"1981":1,"1982":1,"1985":11,"2254":1,"2682":1,"2695":4,"2868":1,"2873":1}}],["usages",{"2":{"75":1,"118":1,"128":1,"140":1,"149":1,"156":1,"157":1,"167":1,"199":4,"249":1,"1354":2,"1958":1,"2646":1}}],["usage",{"0":{"323":1,"688":1,"700":1,"722":1,"727":1,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1536":1,"1548":1,"1618":1,"1640":1,"1666":1,"1692":1,"1733":1,"1767":1,"1800":1,"1913":1,"1938":1,"1951":1,"1959":1,"2048":1,"2174":1,"2179":1,"2186":1,"2210":1,"2213":1,"2249":1,"2277":1,"2319":1,"2400":1,"2673":1,"2676":1,"2677":1},"1":{"1914":1,"1915":1,"1916":1,"1917":1,"1918":1,"1919":1,"1920":1,"1921":1,"1922":1,"1923":1,"2180":1,"2674":1,"2675":1,"2676":1,"2677":1},"2":{"45":1,"118":1,"156":1,"160":1,"176":1,"199":1,"211":1,"231":1,"236":1,"249":3,"266":2,"294":1,"307":1,"308":1,"328":1,"427":5,"428":3,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":2,"447":2,"448":2,"450":1,"451":1,"452":1,"453":1,"457":4,"458":2,"459":2,"460":1,"461":1,"462":1,"463":1,"467":1,"468":1,"717":2,"1193":1,"1196":1,"1202":1,"1348":1,"1407":1,"1410":2,"1603":1,"1840":1,"1958":1,"1986":1,"2006":1,"2047":1,"2049":6,"2050":3,"2052":8,"2060":1,"2502":1,"2510":1,"2547":1,"2552":1,"2587":1,"2650":1,"2668":1,"2675":1,"2697":1,"2748":6,"2787":1,"2833":1,"2875":1,"2895":1}}],["us",{"0":{"2539":1,"2556":1},"1":{"2557":1,"2558":1},"2":{"6":1,"74":1,"99":1,"114":2,"149":1,"176":2,"188":1,"191":1,"213":1,"228":1,"245":1,"371":1,"380":1,"412":1,"493":1,"546":1,"552":1,"607":1,"611":1,"617":3,"642":1,"663":2,"746":3,"1282":1,"1378":2,"1453":1,"1491":1,"1587":2,"1634":1,"1686":2,"1804":1,"1947":1,"2216":1,"2252":1,"2459":1,"2467":3,"2505":2,"2515":2,"2539":1,"2556":1,"2573":1,"2610":1,"2627":5,"2724":2,"2810":1,"2840":1,"2877":1,"2879":1,"2880":7,"2903":1,"2930":1,"2932":1}}],["using",{"0":{"378":1,"416":1,"417":1,"418":1,"1368":1,"1427":1,"1445":1,"1449":1,"1514":1,"1918":1,"2311":1,"2312":1,"2590":1},"1":{"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1446":1,"1447":1,"1448":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1455":1,"1456":1,"1457":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1,"1515":1,"1516":1,"1517":1},"2":{"5":1,"7":1,"14":1,"16":2,"45":1,"49":2,"50":1,"65":2,"73":1,"76":1,"83":1,"103":1,"111":2,"114":4,"126":1,"132":1,"149":1,"157":1,"158":1,"176":2,"191":1,"199":1,"220":1,"232":1,"234":1,"236":1,"240":2,"241":2,"244":1,"248":1,"253":2,"255":1,"270":2,"271":1,"272":1,"281":2,"289":1,"328":1,"367":1,"371":1,"375":2,"378":2,"380":1,"381":1,"382":1,"383":1,"387":1,"390":1,"408":1,"419":1,"427":1,"431":1,"437":1,"448":1,"457":2,"485":1,"488":1,"489":1,"493":1,"497":1,"498":1,"505":1,"520":1,"522":1,"524":2,"529":1,"533":1,"534":2,"537":2,"546":1,"547":1,"559":2,"560":1,"561":1,"562":1,"567":3,"568":14,"576":1,"578":1,"589":1,"591":1,"611":3,"616":1,"641":1,"649":1,"655":1,"663":1,"683":1,"684":1,"685":1,"687":1,"700":1,"716":1,"722":1,"727":1,"745":2,"752":1,"760":1,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1190":2,"1197":2,"1202":1,"1210":1,"1212":1,"1243":1,"1264":1,"1280":2,"1281":1,"1283":1,"1300":1,"1308":1,"1310":1,"1312":1,"1316":1,"1330":1,"1337":1,"1344":1,"1369":1,"1375":2,"1404":1,"1407":5,"1412":2,"1413":5,"1416":2,"1417":1,"1422":1,"1424":1,"1432":1,"1443":1,"1466":1,"1477":1,"1482":1,"1497":1,"1511":3,"1513":1,"1532":1,"1550":1,"1557":2,"1562":1,"1583":1,"1587":1,"1588":1,"1589":2,"1603":2,"1614":3,"1616":1,"1627":1,"1630":1,"1656":1,"1657":1,"1660":1,"1661":1,"1662":1,"1664":3,"1665":1,"1680":1,"1681":1,"1691":1,"1746":1,"1757":1,"1758":1,"1761":1,"1767":1,"1770":1,"1840":2,"1844":1,"1913":1,"1917":1,"1924":1,"1929":1,"1930":1,"1932":1,"1937":2,"1942":1,"1947":3,"1950":1,"1955":1,"1986":1,"1990":1,"1997":1,"2002":1,"2003":1,"2006":2,"2015":1,"2016":1,"2017":3,"2018":2,"2020":2,"2030":2,"2046":1,"2047":1,"2052":1,"2060":2,"2066":1,"2074":1,"2075":1,"2173":1,"2178":1,"2184":1,"2189":3,"2191":1,"2207":1,"2210":1,"2216":1,"2253":1,"2254":1,"2256":2,"2258":1,"2261":1,"2266":3,"2268":2,"2271":5,"2276":1,"2280":1,"2291":1,"2298":2,"2317":1,"2324":3,"2325":1,"2371":1,"2372":1,"2376":2,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2403":1,"2404":1,"2410":1,"2411":3,"2418":1,"2421":1,"2422":4,"2423":1,"2425":3,"2433":1,"2435":1,"2439":1,"2440":1,"2445":1,"2449":1,"2456":1,"2458":1,"2467":1,"2473":1,"2479":1,"2501":1,"2545":1,"2553":2,"2557":1,"2560":1,"2573":1,"2577":1,"2579":1,"2582":1,"2583":2,"2587":1,"2588":2,"2589":1,"2591":2,"2593":2,"2602":1,"2606":1,"2609":1,"2621":1,"2627":1,"2646":1,"2657":1,"2664":1,"2666":1,"2667":3,"2673":1,"2683":1,"2685":4,"2697":1,"2706":1,"2707":2,"2719":2,"2721":5,"2723":1,"2725":1,"2740":1,"2749":3,"2750":7,"2754":1,"2787":1,"2811":1,"2812":1,"2839":1,"2878":1,"2879":1,"2880":1,"2883":1,"2884":2,"2885":2,"2886":1,"2887":1,"2901":3,"2914":1,"2917":1,"2919":1,"2920":2,"2925":2,"2933":1,"2935":1}}],["usbmodemxxxxxx",{"2":{"2495":1}}],["usbtiny",{"2":{"2483":1}}],["usbtinyisp",{"0":{"2483":1},"1":{"2484":1},"2":{"428":1,"2483":3}}],["usbs1",{"2":{"1985":1}}],["usbser",{"2":{"686":12}}],["usb2adb",{"2":{"1354":1}}],["usb2422",{"2":{"134":1}}],["usbisactive",{"2":{"266":1}}],["usbc",{"2":{"207":2}}],["usbasploader",{"0":{"2382":1,"2494":1},"2":{"328":1,"428":1,"571":1,"683":1,"686":1,"2382":3,"2494":2}}],["usbasp",{"0":{"2485":1},"1":{"2486":1},"2":{"134":1,"191":1,"428":1,"686":1,"2382":4,"2485":2,"2494":1}}],["usbpd",{"2":{"74":1}}],["usbdrv",{"0":{"21":1}}],["usb",{"0":{"2":1,"21":1,"137":1,"169":1,"184":1,"235":1,"263":1,"303":1,"573":1,"1316":1,"1370":1,"2841":1,"2842":1,"2875":1},"1":{"170":1,"1317":1},"2":{"2":1,"21":2,"31":1,"34":1,"49":3,"50":5,"62":2,"65":1,"70":3,"73":2,"75":1,"94":2,"111":3,"112":9,"113":1,"114":7,"134":5,"137":1,"149":4,"160":6,"169":3,"170":2,"176":8,"184":4,"191":9,"199":5,"211":1,"222":9,"236":5,"240":1,"249":3,"263":2,"266":4,"285":2,"294":1,"303":1,"308":3,"317":1,"390":1,"510":1,"511":3,"512":1,"559":5,"566":4,"568":7,"571":1,"572":5,"573":2,"632":1,"644":1,"683":1,"685":1,"686":1,"1191":1,"1194":1,"1197":1,"1314":3,"1354":1,"1370":2,"1389":4,"1390":4,"1480":1,"1914":2,"1950":2,"1953":1,"1954":1,"1955":3,"1956":2,"2021":4,"2050":2,"2052":1,"2181":1,"2254":1,"2258":4,"2267":3,"2271":9,"2272":4,"2273":2,"2285":1,"2287":1,"2291":3,"2370":7,"2376":1,"2382":2,"2383":1,"2384":1,"2386":1,"2388":1,"2393":1,"2395":1,"2397":3,"2417":2,"2423":1,"2439":3,"2460":1,"2461":1,"2462":1,"2463":2,"2467":1,"2475":2,"2483":1,"2485":1,"2487":1,"2491":1,"2492":1,"2493":1,"2494":2,"2495":1,"2497":1,"2498":2,"2501":1,"2521":6,"2547":1,"2552":1,"2671":1,"2672":1,"2674":3,"2682":1,"2683":1,"2702":2,"2710":8,"2721":1,"2744":1,"2800":1,"2833":2,"2842":1,"2845":2,"2873":3,"2875":7,"2927":1}}],["useful",{"0":{"2774":1},"1":{"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1},"2":{"289":1,"320":1,"484":1,"522":1,"559":1,"572":1,"607":1,"635":1,"638":1,"649":1,"687":1,"719":1,"751":1,"1244":1,"1324":1,"1326":1,"1328":1,"1344":1,"1412":1,"1423":1,"1436":1,"1438":1,"1451":1,"1455":2,"1459":2,"1484":1,"1522":1,"1552":1,"1583":1,"1587":1,"1595":1,"1600":1,"1606":3,"1634":1,"1664":1,"1764":1,"1795":1,"1932":2,"1943":1,"1948":1,"2016":3,"2019":2,"2023":1,"2047":1,"2156":2,"2162":1,"2165":1,"2191":1,"2207":1,"2252":1,"2258":1,"2271":1,"2283":1,"2311":1,"2323":1,"2372":1,"2374":1,"2380":1,"2410":1,"2414":1,"2420":1,"2464":1,"2548":1,"2649":1,"2719":1,"2725":1,"2774":1,"2776":1,"2779":1,"2880":1,"2911":1,"2914":2,"2919":1,"2921":1}}],["useless",{"2":{"199":1,"211":1,"266":2}}],["used",{"2":{"25":1,"49":1,"50":1,"60":1,"110":1,"120":1,"157":1,"174":1,"176":2,"203":1,"209":1,"215":1,"240":1,"243":1,"285":1,"328":1,"331":1,"334":1,"335":1,"373":2,"380":1,"390":2,"397":1,"427":1,"431":2,"442":1,"472":1,"473":1,"492":1,"533":2,"534":1,"537":1,"554":1,"559":1,"561":1,"569":1,"570":2,"578":1,"586":5,"587":1,"591":1,"598":1,"614":1,"616":1,"625":2,"632":1,"643":1,"645":1,"654":1,"655":3,"656":1,"657":1,"659":2,"663":1,"692":4,"696":2,"714":2,"718":1,"719":1,"745":1,"747":1,"749":1,"750":5,"751":3,"752":4,"753":2,"754":1,"756":1,"759":2,"760":1,"761":1,"764":1,"765":2,"1189":3,"1191":1,"1193":1,"1194":1,"1195":1,"1197":2,"1200":2,"1201":1,"1202":1,"1242":1,"1245":2,"1263":1,"1266":1,"1288":1,"1296":1,"1317":1,"1321":1,"1322":1,"1323":1,"1368":1,"1375":1,"1378":1,"1379":2,"1392":2,"1415":1,"1416":2,"1417":2,"1430":1,"1436":1,"1443":1,"1445":1,"1451":1,"1452":1,"1471":1,"1474":1,"1504":1,"1512":1,"1532":1,"1551":1,"1560":1,"1588":1,"1603":1,"1630":1,"1635":1,"1636":1,"1657":1,"1672":1,"1675":1,"1728":1,"1730":1,"1741":1,"1744":1,"1746":1,"1747":2,"1751":2,"1752":1,"1757":1,"1760":1,"1845":1,"1847":1,"1933":1,"1934":1,"1935":1,"1941":1,"1943":1,"1945":3,"1946":2,"1948":3,"1984":1,"1986":3,"1999":1,"2000":5,"2001":1,"2005":1,"2006":1,"2012":2,"2014":1,"2016":2,"2017":2,"2018":1,"2021":1,"2023":1,"2030":1,"2032":1,"2039":2,"2043":2,"2044":1,"2052":1,"2068":1,"2070":1,"2160":1,"2162":1,"2167":3,"2168":2,"2169":1,"2181":2,"2185":2,"2193":1,"2194":1,"2216":1,"2252":1,"2253":2,"2254":1,"2258":2,"2259":1,"2265":1,"2266":1,"2268":2,"2272":1,"2276":1,"2279":1,"2283":2,"2284":1,"2289":1,"2290":2,"2294":1,"2302":3,"2306":1,"2310":6,"2311":1,"2312":3,"2313":1,"2319":1,"2324":1,"2370":1,"2372":1,"2376":1,"2382":1,"2388":1,"2400":1,"2407":1,"2411":4,"2424":1,"2428":1,"2430":2,"2434":2,"2435":1,"2438":2,"2439":1,"2440":1,"2451":1,"2462":1,"2479":1,"2498":1,"2549":1,"2551":2,"2554":1,"2557":1,"2560":3,"2562":2,"2563":1,"2568":1,"2569":1,"2590":1,"2609":1,"2619":1,"2632":1,"2633":1,"2646":1,"2666":1,"2673":1,"2674":5,"2675":2,"2676":4,"2677":4,"2684":1,"2689":1,"2702":2,"2707":3,"2719":2,"2721":9,"2744":1,"2746":1,"2749":11,"2750":12,"2754":1,"2760":2,"2766":1,"2767":1,"2769":2,"2770":2,"2773":1,"2787":1,"2789":2,"2809":1,"2813":2,"2817":1,"2819":1,"2820":1,"2837":1,"2844":1,"2845":2,"2857":1,"2864":1,"2869":1,"2871":1,"2877":1,"2879":1,"2897":1,"2914":2,"2915":2,"2933":1,"2940":1}}],["uses",{"2":{"8":1,"36":1,"46":1,"50":1,"89":1,"100":1,"114":1,"163":1,"218":1,"323":1,"487":1,"493":1,"519":1,"567":1,"583":1,"586":1,"587":1,"611":1,"692":2,"714":3,"718":2,"719":1,"743":1,"749":1,"1202":3,"1289":1,"1308":1,"1314":1,"1340":1,"1343":2,"1358":1,"1388":1,"1396":1,"1413":3,"1417":2,"1453":1,"1482":1,"1486":3,"1616":2,"1929":1,"1930":1,"1939":2,"1947":1,"1983":1,"1984":1,"1986":1,"1995":1,"1998":1,"1999":1,"2000":1,"2010":1,"2013":1,"2024":1,"2064":1,"2074":1,"2180":1,"2252":1,"2254":3,"2265":1,"2368":1,"2371":2,"2379":1,"2384":1,"2435":2,"2447":1,"2490":1,"2552":1,"2560":2,"2563":1,"2600":3,"2609":1,"2632":1,"2660":1,"2664":1,"2668":1,"2687":2,"2700":1,"2734":1,"2758":1,"2765":1,"2769":1,"2787":1,"2789":1,"2885":1,"2886":1,"2910":1}}],["username>",{"2":{"503":1,"1438":1,"2576":1,"2577":2,"2630":3,"2632":2}}],["username",{"2":{"442":2,"482":1,"549":3,"611":2,"1434":1,"1438":2,"2576":1,"2598":1,"2599":2,"2600":2,"2601":5,"2621":1,"2707":1,"2845":1}}],["user\`",{"2":{"307":2,"1425":1}}],["user",{"0":{"40":1,"53":1,"67":1,"72":1,"85":1,"101":1,"121":1,"139":1,"155":1,"165":1,"180":1,"193":1,"203":1,"205":1,"216":1,"225":1,"239":1,"252":1,"269":1,"280":1,"290":1,"299":1,"310":1,"321":1,"426":1,"472":1,"482":1,"488":1,"507":1,"629":1,"633":1,"639":1,"645":1,"647":2,"651":1,"1450":1,"1525":1,"1543":1,"1615":1,"1657":1,"1658":1,"1794":1,"1810":1,"1811":1,"1812":1,"1904":1,"1909":1,"2148":1,"2153":1,"2333":1,"2921":1},"1":{"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"86":1,"87":1,"88":1,"89":1,"90":1,"102":1,"103":1,"104":1,"105":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"140":1,"141":1,"142":1,"143":1,"156":1,"157":1,"158":1,"159":1,"166":1,"167":1,"168":1,"169":1,"170":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"194":1,"195":1,"196":1,"197":1,"206":1,"207":1,"217":1,"218":1,"219":1,"220":1,"221":1,"226":1,"240":1,"241":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"270":1,"271":1,"272":1,"273":1,"281":1,"291":1,"300":1,"311":1,"312":1,"322":1,"323":1,"324":1,"325":1,"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":1,"447":1,"448":1,"489":1,"490":1,"491":1,"492":1,"1451":1,"1452":1,"1453":1,"1454":1,"1526":1,"1527":1,"1528":1,"1529":1,"1530":1,"1813":1,"1814":1,"1905":1,"2149":1,"2334":1},"2":{"3":1,"4":1,"7":1,"15":1,"28":1,"31":5,"34":3,"49":3,"70":3,"75":3,"90":4,"93":1,"105":8,"114":1,"125":4,"134":1,"149":3,"154":1,"158":1,"167":1,"176":6,"182":2,"185":4,"191":4,"195":2,"196":3,"199":1,"203":5,"211":4,"213":2,"220":1,"222":1,"228":2,"229":1,"231":3,"238":1,"249":7,"277":2,"284":1,"285":1,"294":2,"303":1,"307":5,"312":2,"317":1,"324":1,"325":1,"332":1,"408":4,"419":1,"442":1,"472":5,"479":1,"482":4,"486":1,"487":6,"488":2,"490":3,"492":3,"497":1,"568":1,"587":1,"591":3,"613":1,"623":4,"625":5,"628":1,"629":1,"630":1,"631":1,"633":1,"634":1,"636":1,"639":1,"640":1,"643":2,"644":1,"645":4,"647":2,"648":2,"649":2,"650":1,"651":1,"652":1,"663":1,"676":1,"1319":1,"1326":1,"1377":1,"1378":1,"1412":3,"1413":35,"1414":3,"1422":2,"1424":1,"1425":2,"1426":1,"1436":1,"1437":1,"1441":5,"1442":2,"1443":2,"1450":4,"1451":4,"1466":2,"1479":1,"1481":1,"1485":2,"1511":4,"1518":1,"1521":1,"1526":5,"1527":2,"1530":1,"1543":1,"1594":2,"1595":2,"1599":1,"1622":4,"1628":7,"1634":4,"1635":1,"1636":1,"1638":2,"1655":1,"1656":2,"1657":2,"1658":4,"1662":4,"1695":1,"1696":1,"1764":2,"1765":2,"1770":2,"1771":1,"1790":1,"1792":2,"1793":1,"1794":1,"1799":1,"1801":2,"1807":2,"1810":1,"1811":1,"1812":1,"1844":3,"1849":4,"1917":1,"1918":1,"1932":1,"1939":1,"1940":1,"1941":1,"1942":3,"1946":1,"1948":5,"1949":2,"1952":3,"1956":1,"1995":1,"2014":3,"2017":1,"2019":4,"2020":2,"2024":3,"2025":3,"2027":2,"2028":2,"2032":1,"2036":2,"2037":1,"2042":1,"2043":2,"2044":3,"2063":3,"2065":1,"2066":3,"2072":4,"2073":3,"2074":2,"2075":1,"2159":1,"2160":3,"2161":1,"2162":2,"2163":1,"2164":2,"2165":1,"2166":1,"2167":2,"2168":3,"2170":2,"2171":1,"2172":1,"2175":1,"2176":1,"2177":2,"2181":2,"2189":1,"2190":3,"2191":5,"2218":1,"2270":14,"2277":1,"2279":1,"2280":2,"2283":9,"2293":3,"2299":1,"2302":2,"2303":1,"2307":1,"2308":3,"2309":7,"2310":4,"2311":4,"2312":4,"2324":1,"2333":1,"2337":1,"2338":1,"2339":1,"2374":2,"2389":1,"2393":1,"2395":1,"2397":1,"2403":4,"2406":1,"2409":1,"2411":4,"2439":2,"2440":2,"2441":1,"2445":1,"2446":3,"2461":1,"2471":1,"2562":2,"2563":2,"2564":1,"2576":2,"2582":1,"2583":1,"2585":1,"2586":1,"2587":1,"2598":1,"2601":1,"2603":2,"2621":2,"2636":2,"2645":5,"2667":1,"2676":1,"2680":1,"2697":1,"2720":1,"2721":6,"2722":2,"2746":1,"2747":1,"2749":2,"2750":10,"2777":1,"2779":2,"2787":1,"2789":2,"2872":1,"2877":1,"2901":1,"2910":1,"2921":1,"2933":3,"2941":2,"2942":1}}],["userspace",{"0":{"228":1,"449":1,"450":1,"451":1,"452":1,"453":1,"454":1,"1434":1,"1436":1,"1628":1,"2406":1,"2583":1,"2585":1,"2586":1,"2588":1,"2589":1,"2591":1},"1":{"450":1,"451":1,"452":1,"453":1,"454":1,"1435":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1},"2":{"74":2,"76":1,"134":1,"176":1,"191":3,"199":1,"211":1,"213":2,"222":1,"224":1,"228":4,"236":3,"241":2,"249":1,"253":2,"265":2,"268":2,"270":2,"275":1,"281":2,"288":2,"308":2,"317":1,"328":1,"333":2,"450":6,"451":6,"452":4,"453":3,"454":8,"613":1,"1434":2,"1435":2,"1436":1,"1441":2,"1442":3,"1443":2,"1479":1,"1627":3,"1628":3,"1844":2,"2066":2,"2406":1,"2409":1,"2583":5,"2584":1,"2585":3,"2586":3,"2587":2,"2588":5,"2589":5,"2590":1,"2591":1,"2600":1,"2603":1,"2720":1,"2721":1,"2924":1}}],["users",{"0":{"1420":1,"1421":1,"1753":1},"1":{"1754":1,"1755":1,"1756":1},"2":{"0":1,"9":1,"13":1,"19":1,"39":1,"52":1,"62":1,"70":1,"114":1,"118":1,"131":1,"154":1,"156":1,"166":2,"173":1,"201":1,"221":2,"228":1,"234":1,"243":2,"263":1,"276":1,"279":2,"283":1,"284":2,"304":1,"312":2,"331":2,"332":1,"365":1,"366":1,"378":1,"393":1,"408":5,"427":1,"445":1,"471":1,"472":1,"474":1,"480":1,"481":1,"492":1,"507":1,"508":1,"553":1,"576":1,"584":1,"616":1,"632":1,"663":1,"666":1,"759":1,"1312":1,"1340":1,"1418":1,"1421":1,"1422":2,"1427":2,"1434":4,"1435":1,"1440":1,"1441":1,"1528":1,"1587":1,"1629":1,"1657":1,"1751":1,"1806":1,"2302":1,"2324":1,"2406":2,"2409":1,"2439":1,"2440":1,"2444":1,"2445":3,"2446":1,"2583":2,"2598":1,"2600":2,"2603":1,"2614":2,"2619":1,"2630":1,"2631":1,"2707":1,"2721":2,"2740":1,"2743":1,"2746":1,"2750":1,"2829":1,"2894":3,"2895":1}}],["use",{"0":{"6":1,"17":1,"30":1,"32":1,"33":1,"164":1,"1342":1,"1516":1,"1737":1,"1761":1,"1935":1,"2037":1,"2044":1,"2302":1,"2403":1,"2433":1,"2936":1},"1":{"31":1,"34":1,"1517":1},"2":{"1":1,"7":1,"17":1,"25":1,"30":1,"31":1,"32":1,"33":1,"34":1,"36":1,"37":1,"43":1,"45":1,"49":2,"70":1,"74":1,"76":1,"80":1,"87":1,"89":1,"93":1,"94":3,"95":1,"99":1,"103":1,"107":1,"114":5,"118":1,"119":3,"126":1,"133":2,"134":9,"149":5,"160":3,"166":1,"167":1,"174":1,"176":15,"179":1,"190":1,"191":15,"194":2,"199":10,"206":1,"211":11,"215":1,"218":1,"220":2,"222":2,"232":1,"236":8,"240":1,"249":4,"256":1,"260":1,"266":2,"277":3,"285":4,"294":1,"302":1,"307":1,"308":8,"317":9,"320":1,"323":2,"328":1,"333":2,"361":1,"367":1,"369":1,"374":1,"386":1,"387":1,"390":1,"398":1,"405":1,"420":1,"427":1,"428":1,"435":1,"452":1,"458":3,"459":2,"461":2,"468":1,"487":3,"489":4,"492":1,"497":1,"499":2,"502":2,"503":1,"504":1,"511":2,"512":1,"520":6,"521":3,"522":2,"523":1,"524":2,"527":3,"528":1,"529":2,"533":1,"534":1,"536":2,"537":1,"538":1,"539":1,"540":1,"541":1,"542":1,"544":1,"546":3,"548":1,"550":1,"551":1,"557":1,"559":11,"562":2,"565":1,"566":3,"567":1,"568":1,"572":1,"573":2,"579":1,"586":1,"589":1,"594":1,"597":1,"598":1,"602":1,"611":2,"614":1,"620":2,"623":2,"625":1,"627":2,"628":1,"630":1,"631":1,"643":1,"645":2,"649":1,"654":1,"663":2,"668":2,"669":1,"670":1,"672":1,"673":1,"676":1,"681":1,"682":1,"683":1,"686":1,"688":1,"690":1,"692":1,"698":2,"700":2,"712":1,"714":12,"715":8,"716":2,"718":5,"722":1,"727":2,"728":2,"731":1,"743":1,"745":1,"751":2,"754":1,"759":1,"760":1,"762":1,"764":1,"765":7,"769":1,"794":1,"798":2,"802":1,"824":2,"828":1,"853":2,"860":1,"885":2,"890":1,"917":2,"925":1,"952":2,"959":1,"986":2,"993":1,"1020":2,"1027":1,"1054":2,"1061":1,"1088":2,"1095":1,"1122":2,"1129":1,"1156":2,"1163":1,"1189":1,"1190":1,"1192":2,"1195":1,"1197":1,"1198":1,"1200":5,"1201":5,"1202":1,"1210":2,"1212":2,"1216":1,"1243":1,"1244":1,"1245":7,"1249":1,"1250":1,"1264":1,"1266":7,"1281":2,"1294":2,"1296":7,"1298":1,"1299":2,"1300":6,"1310":1,"1312":2,"1313":1,"1316":3,"1319":2,"1324":1,"1327":1,"1343":3,"1344":1,"1345":1,"1348":1,"1351":2,"1355":1,"1361":1,"1363":1,"1365":2,"1366":1,"1375":2,"1376":1,"1378":1,"1385":2,"1387":1,"1401":2,"1402":2,"1403":1,"1407":2,"1410":1,"1411":1,"1412":1,"1413":9,"1415":1,"1416":1,"1417":2,"1421":1,"1422":3,"1425":2,"1427":1,"1432":2,"1433":2,"1434":1,"1435":1,"1436":2,"1437":1,"1438":1,"1441":7,"1442":1,"1443":4,"1444":2,"1446":2,"1450":3,"1452":2,"1454":1,"1455":1,"1458":1,"1461":2,"1467":1,"1474":3,"1475":1,"1477":2,"1485":1,"1486":2,"1511":2,"1520":1,"1523":1,"1526":2,"1529":2,"1531":1,"1532":1,"1534":1,"1536":1,"1550":1,"1559":1,"1560":1,"1562":6,"1563":4,"1583":2,"1584":1,"1587":1,"1588":2,"1589":2,"1597":1,"1599":1,"1600":1,"1603":1,"1606":1,"1613":1,"1615":1,"1616":1,"1617":2,"1618":1,"1627":1,"1630":2,"1633":3,"1656":1,"1658":1,"1664":1,"1675":1,"1676":1,"1736":3,"1739":1,"1749":2,"1751":3,"1752":1,"1754":1,"1755":1,"1758":4,"1761":2,"1763":1,"1764":1,"1765":1,"1767":1,"1769":1,"1838":4,"1840":1,"1844":2,"1845":1,"1849":2,"1917":1,"1925":1,"1927":1,"1931":2,"1932":1,"1933":1,"1939":1,"1940":1,"1943":2,"1945":1,"1946":10,"1950":1,"1952":1,"1955":2,"1982":1,"1983":1,"1984":1,"1985":3,"1986":1,"1988":3,"1989":2,"1990":1,"1995":1,"1998":1,"1999":1,"2000":4,"2001":1,"2005":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":5,"2016":1,"2018":1,"2021":2,"2024":1,"2026":1,"2034":1,"2040":1,"2047":1,"2050":1,"2058":4,"2060":1,"2066":2,"2068":1,"2072":2,"2074":2,"2075":1,"2157":1,"2160":3,"2161":1,"2168":2,"2170":1,"2179":1,"2182":5,"2184":1,"2186":1,"2188":1,"2189":1,"2191":2,"2207":1,"2242":1,"2252":1,"2253":1,"2254":2,"2257":2,"2258":2,"2260":2,"2265":1,"2267":1,"2268":3,"2269":6,"2272":1,"2273":1,"2277":1,"2278":1,"2281":2,"2282":1,"2285":1,"2287":1,"2290":2,"2291":1,"2293":1,"2294":1,"2302":2,"2303":2,"2309":1,"2310":3,"2311":2,"2312":4,"2322":3,"2323":2,"2367":1,"2368":1,"2370":1,"2372":2,"2375":3,"2376":1,"2377":2,"2379":1,"2384":3,"2389":1,"2390":1,"2400":2,"2402":1,"2406":1,"2407":2,"2408":1,"2410":6,"2411":3,"2421":1,"2422":3,"2424":1,"2427":2,"2428":1,"2459":2,"2468":1,"2471":2,"2474":1,"2477":1,"2481":1,"2483":1,"2493":1,"2495":1,"2512":2,"2513":1,"2515":1,"2521":1,"2551":4,"2560":1,"2563":1,"2567":1,"2568":1,"2570":1,"2576":1,"2579":1,"2582":1,"2583":3,"2584":1,"2585":1,"2586":1,"2587":3,"2588":1,"2594":1,"2599":2,"2601":1,"2605":1,"2607":1,"2610":1,"2620":2,"2621":2,"2622":1,"2627":1,"2630":1,"2633":6,"2636":1,"2638":1,"2644":1,"2645":3,"2652":1,"2660":4,"2666":1,"2667":2,"2669":1,"2671":1,"2672":1,"2673":1,"2679":1,"2684":4,"2687":1,"2688":1,"2690":2,"2691":2,"2692":2,"2695":2,"2703":1,"2704":1,"2708":1,"2710":2,"2713":2,"2719":2,"2721":8,"2723":1,"2728":1,"2747":1,"2748":3,"2749":3,"2750":3,"2751":3,"2775":1,"2778":3,"2780":4,"2781":1,"2782":1,"2783":2,"2784":1,"2787":1,"2788":3,"2846":2,"2847":1,"2849":2,"2850":2,"2851":1,"2852":1,"2857":2,"2861":1,"2864":1,"2865":2,"2868":1,"2870":1,"2871":1,"2873":3,"2874":1,"2876":1,"2879":1,"2882":3,"2887":1,"2895":1,"2896":2,"2900":1,"2901":4,"2913":1,"2915":2,"2916":1,"2917":4,"2919":1,"2920":1,"2923":2,"2927":1,"2930":2,"2931":1,"2941":2,"2942":1}}],["hm",{"2":{"2367":1}}],["hmcuconf",{"2":{"714":1,"715":1,"718":1,"765":1,"1245":1,"1296":1,"1300":1,"1562":1,"1563":1}}],["hc",{"2":{"2367":1,"2439":2}}],["hkcu",{"2":{"2324":1}}],["hrl",{"2":{"2294":1}}],["hrms",{"2":{"297":1,"308":1}}],["hl",{"2":{"2294":3}}],["hwdb",{"2":{"2464":1}}],["hw",{"2":{"2006":1}}],["hfuse",{"2":{"2496":2}}],["hf",{"2":{"1674":13,"1675":2,"1681":2}}],["hfdkb",{"2":{"217":1}}],["hz",{"2":{"764":1,"854":1,"856":11,"918":1,"921":6,"953":1,"955":6,"987":1,"989":6,"1021":1,"1023":6,"1055":1,"1057":6,"1157":1,"1159":10,"2875":1}}],["h>",{"2":{"714":2,"715":2,"718":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1296":2,"1300":2,"1402":1,"1562":2,"1563":2,"1984":1,"2750":1}}],["h1",{"2":{"676":1,"677":3}}],["hyphen",{"2":{"1587":1}}],["hyper",{"2":{"1374":1,"2402":2,"2559":2}}],["hypr",{"2":{"1374":1,"2534":2,"2535":1,"2540":1,"2559":2,"2644":1}}],["hypothetical",{"2":{"654":1}}],["hysteresis",{"2":{"114":1}}],["h87a",{"2":{"587":5}}],["h87g2",{"2":{"249":1}}],["hungarian",{"2":{"2880":3}}],["hundreds",{"2":{"1951":1}}],["hurts",{"2":{"2566":1}}],["hurt",{"2":{"2427":1}}],["hurry",{"2":{"1493":1}}],["huge",{"2":{"1616":1}}],["hum5",{"2":{"1680":1}}],["hum4",{"2":{"1680":1}}],["hum3",{"2":{"1680":1}}],["hum2",{"2":{"1680":1}}],["hum1",{"2":{"1680":1}}],["hum",{"2":{"1680":6}}],["humbert",{"2":{"674":1,"1340":1}}],["humans",{"2":{"587":1}}],["human",{"2":{"434":1,"493":1,"1327":1,"2560":1,"2788":1,"2804":1,"2941":1}}],["hub",{"0":{"1372":1},"2":{"249":1}}],["hub20",{"2":{"241":2}}],["hub16",{"2":{"241":2}}],["hues",{"2":{"2063":2,"2065":2,"2187":1}}],["hueu",{"2":{"587":2,"1661":1,"2062":1,"2181":1,"2537":1,"2538":1}}],["hued",{"2":{"587":2,"1661":1,"2062":1,"2181":1,"2537":1,"2538":1}}],["hue",{"0":{"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2201":1},"1":{"2104":1},"2":{"49":1,"111":1,"183":2,"222":3,"294":1,"328":1,"348":1,"563":2,"1662":4,"2062":4,"2063":44,"2069":4,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2180":2,"2181":6,"2182":4,"2186":1,"2201":12,"2204":2,"2439":2,"2537":6,"2538":4,"2750":13,"2770":1,"2870":4,"2871":4,"2887":3}}],["h2",{"2":{"211":1,"677":2}}],["hjson",{"2":{"191":1,"199":1,"222":1,"294":4,"667":2,"2721":1}}],["hpp",{"2":{"160":1}}],["hnahkb",{"2":{"143":3,"149":1}}],["http",{"2":{"371":1,"421":1,"458":1,"579":1,"608":1,"615":1,"1438":1,"1616":1,"2725":1}}],["https",{"2":{"2":1,"21":1,"196":1,"236":1,"370":1,"371":1,"373":4,"422":1,"427":1,"572":1,"577":1,"578":1,"608":1,"611":1,"614":1,"673":1,"674":5,"746":7,"747":1,"763":1,"1309":1,"1310":1,"1315":1,"1316":3,"1349":1,"1350":3,"1354":2,"1355":1,"1356":3,"1358":1,"1364":2,"1365":1,"1368":2,"1372":1,"1373":2,"1450":1,"1628":1,"1801":1,"2187":1,"2400":1,"2403":4,"2443":1,"2585":1,"2586":1,"2594":1,"2601":2,"2616":1,"2617":1,"2618":1,"2619":1,"2630":8,"2632":5,"2660":1,"2667":1,"2707":3,"2721":3,"2845":1}}],["html",{"2":{"335":1,"608":1,"1316":1,"1355":1,"1365":1}}],["ht32",{"2":{"130":1,"134":1}}],["hd44780u",{"2":{"1691":1}}],["hd44780",{"0":{"1690":1,"1698":1,"1700":1,"1701":1,"1702":1,"1704":1,"1705":1,"1707":1,"1709":1,"1711":1,"1713":1,"1715":1,"1717":1,"1719":1,"1721":1,"1724":1,"1726":1,"1728":1,"1730":1},"1":{"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1698":1,"1699":2,"1700":1,"1701":1,"1702":1,"1703":2,"1704":1,"1705":1,"1706":2,"1707":1,"1708":2,"1709":1,"1710":2,"1711":1,"1712":2,"1713":1,"1714":2,"1715":1,"1716":2,"1717":1,"1718":2,"1719":1,"1720":2,"1721":1,"1722":2,"1723":2,"1724":1,"1725":2,"1726":1,"1727":2,"1728":1,"1729":2,"1730":1,"1731":2},"2":{"64":1,"160":1,"1693":7,"1695":2,"1696":4,"1711":1,"1715":1,"1724":1,"2721":2}}],["hse",{"2":{"328":1}}],["hseclk",{"2":{"308":1}}],["hs60v2",{"0":{"1317":1}}],["hs60",{"2":{"277":1}}],["hs",{"2":{"211":1,"266":1}}],["hsv888",{"2":{"2770":1}}],["hsvs",{"2":{"191":1}}],["hsv",{"0":{"2141":2},"1":{"2142":2},"2":{"49":1,"114":1,"149":1,"285":2,"308":1,"1413":7,"2064":1,"2067":22,"2074":11,"2075":1,"2142":2,"2189":5,"2191":2,"2198":7,"2201":2,"2205":24,"2750":1,"2770":3,"2870":1,"2871":1}}],["hsgw",{"2":{"37":2}}],["hierarchies",{"2":{"2646":1,"2657":1}}],["hierarchy",{"2":{"176":1,"625":1}}],["hich",{"2":{"2170":1}}],["hires",{"2":{"2017":8}}],["hiragana",{"2":{"1355":1,"2508":2}}],["himself",{"2":{"1340":1}}],["his",{"2":{"1340":1,"2418":1,"2429":1}}],["history",{"0":{"663":1},"2":{"2547":1,"2627":1}}],["historically",{"2":{"172":1,"189":1,"273":1,"276":1,"663":1,"2569":1,"2721":1}}],["historical",{"2":{"126":1,"127":1,"241":1,"245":1,"253":1,"270":1,"281":1,"750":1,"2567":1,"2583":1}}],["hint",{"0":{"678":1},"1":{"679":1,"680":1},"2":{"678":1,"2627":1}}],["hineybush",{"2":{"587":4}}],["hinder",{"2":{"541":1}}],["hi",{"2":{"266":1,"1798":1}}],["hillside48",{"2":{"176":1}}],["hillside",{"2":{"149":1,"168":2,"181":6,"191":1}}],["hits",{"2":{"1410":1,"1843":4,"2063":5}}],["hitting",{"2":{"683":2,"1596":1,"2310":1,"2372":1,"2411":1,"2632":1,"2643":1,"2781":1,"2917":1}}],["hit",{"2":{"114":1,"152":1,"347":1,"562":1,"684":1,"1345":1,"1410":1,"1487":1,"1493":1,"1596":4,"1732":1,"1799":1,"1805":1,"1807":1,"1843":5,"1947":1,"2063":7,"2286":1,"2294":1,"2301":3,"2310":4,"2323":1,"2380":1,"2662":1,"2894":1}}],["highest",{"2":{"553":1,"716":1,"1410":1,"1413":1,"1416":1,"1419":1,"1422":2,"1424":1,"1425":1,"1487":1,"1532":1,"1533":1,"1614":1,"1761":1,"1765":3,"1798":1,"1939":1,"2025":1,"2027":1,"2042":2,"2043":2,"2073":3,"2074":1,"2277":1,"2313":1,"2527":1,"2549":1,"2778":1,"2817":1}}],["higher",{"2":{"114":1,"125":1,"185":1,"397":1,"559":1,"562":1,"716":1,"1204":1,"1416":1,"1419":2,"1421":1,"1947":1,"2006":1,"2302":1,"2311":1,"2547":2,"2549":4,"2552":1,"2719":2,"2747":1,"2749":1,"2778":1,"2896":1,"2900":2,"2910":1}}],["highlight",{"2":{"492":1}}],["highlights",{"2":{"438":1}}],["highlighted",{"2":{"272":1,"1761":1}}],["highly",{"2":{"182":1,"720":1,"1435":1,"2242":1,"2489":1,"2631":1,"2723":1}}],["high",{"0":{"2017":1},"2":{"49":2,"92":1,"114":1,"243":2,"308":1,"335":1,"408":1,"559":3,"566":1,"567":2,"574":1,"613":1,"716":4,"745":1,"758":5,"1194":1,"1202":1,"1282":2,"1283":1,"1294":1,"1412":1,"1480":1,"1487":1,"1532":2,"1535":1,"1550":1,"1551":1,"1659":1,"1664":1,"1678":2,"1679":2,"1770":3,"1791":1,"1793":2,"1804":1,"1929":2,"2017":6,"2264":1,"2291":1,"2459":1,"2491":1,"2492":1,"2493":1,"2494":1,"2496":2,"2547":1,"2552":1,"2684":1,"2702":1,"2750":1,"2792":1,"2849":1,"2850":1,"2860":1,"2896":1,"2908":1,"2909":1,"2926":1}}],["hidden",{"2":{"2774":1,"2933":1}}],["hid4java",{"2":{"2050":1}}],["hidapi",{"2":{"2050":1}}],["hidraw",{"2":{"1329":1}}],["hidbootflash",{"2":{"2383":1}}],["hidboot",{"2":{"686":1}}],["hidusb",{"2":{"240":1,"683":1,"684":2,"686":4}}],["hides",{"2":{"2553":1}}],["hide",{"2":{"199":1,"1442":1}}],["hid",{"0":{"1323":1,"1329":1,"2047":1,"2054":1,"2056":1,"2384":1,"2812":1},"1":{"2048":1,"2049":1,"2050":1,"2051":1,"2052":1,"2053":1,"2054":1,"2055":2,"2056":1,"2057":2},"2":{"2":1,"34":1,"49":2,"50":1,"114":3,"143":2,"149":2,"199":2,"222":2,"236":1,"266":1,"308":1,"428":1,"560":1,"571":1,"573":1,"682":2,"686":1,"1323":1,"1329":4,"1330":1,"1347":1,"1348":1,"1353":1,"1627":1,"1758":1,"1790":1,"1958":2,"1994":1,"2014":3,"2017":1,"2021":4,"2047":2,"2049":4,"2050":7,"2051":2,"2052":11,"2054":1,"2056":1,"2181":1,"2367":1,"2381":1,"2383":1,"2384":6,"2385":1,"2411":2,"2462":1,"2463":1,"2502":1,"2515":1,"2547":1,"2552":1,"2721":1,"2744":1,"2812":1,"2822":1,"2833":2,"2877":1,"2917":1}}],["h7",{"2":{"49":1}}],["hhkbs",{"2":{"36":2}}],["hhkb",{"0":{"35":1,"36":1,"257":1,"258":1},"1":{"36":1},"2":{"35":3,"36":8,"211":2,"256":2,"257":1,"258":1,"285":1,"1358":1}}],["hebrew",{"2":{"2880":2}}],["heir",{"2":{"2170":1}}],["heights",{"2":{"1946":1}}],["height",{"2":{"111":1,"114":1,"1943":2,"1946":3,"1947":3,"1948":1,"2002":2,"2281":2,"2282":3,"2749":16,"2750":9,"2760":2,"2767":1,"2788":1,"2862":1}}],["henkan",{"2":{"1355":1,"2508":1}}],["hence",{"2":{"713":1,"1410":1,"1482":1}}],["hey",{"2":{"399":1,"400":1,"401":1,"402":1,"405":1}}],["her",{"2":{"1667":1}}],["hertz",{"2":{"716":1}}],["herringbone",{"2":{"197":4}}],["here",{"0":{"1335":1},"2":{"31":1,"213":1,"233":1,"264":1,"274":1,"282":1,"288":1,"292":1,"301":1,"313":1,"326":1,"363":1,"372":1,"379":1,"380":2,"383":1,"385":1,"386":1,"387":1,"390":1,"391":2,"392":1,"448":1,"520":1,"552":1,"558":1,"572":1,"591":1,"611":5,"617":2,"619":1,"622":2,"623":2,"627":1,"643":1,"666":1,"671":1,"681":1,"686":1,"716":1,"725":2,"745":1,"1309":1,"1310":1,"1316":1,"1337":1,"1343":1,"1346":1,"1362":1,"1372":1,"1375":1,"1412":1,"1413":1,"1427":1,"1432":1,"1435":2,"1437":1,"1441":1,"1450":2,"1486":1,"1511":1,"1512":1,"1531":1,"1534":1,"1557":2,"1585":1,"1606":4,"1611":1,"1612":1,"1619":1,"1664":1,"1749":1,"1840":1,"1955":1,"1996":1,"2021":1,"2025":1,"2042":1,"2043":1,"2050":2,"2052":1,"2060":1,"2074":1,"2170":1,"2187":1,"2188":1,"2259":1,"2266":1,"2301":1,"2302":1,"2305":1,"2310":2,"2311":2,"2312":1,"2322":1,"2388":1,"2403":2,"2409":1,"2410":1,"2411":1,"2416":1,"2420":1,"2423":1,"2425":2,"2426":1,"2427":1,"2459":2,"2461":1,"2462":1,"2466":1,"2496":2,"2499":1,"2528":1,"2553":1,"2567":1,"2579":1,"2583":1,"2585":1,"2594":1,"2614":1,"2626":1,"2627":1,"2628":1,"2630":1,"2641":1,"2642":1,"2660":1,"2662":1,"2667":1,"2680":1,"2709":1,"2713":1,"2721":1,"2723":2,"2774":1,"2785":1,"2843":1,"2879":1,"2886":1,"2897":1,"2901":1,"2918":1,"2920":1,"2921":2,"2925":1,"2930":1,"2932":1,"2934":1}}],["heated",{"2":{"2420":1}}],["heat",{"2":{"2064":1,"2418":1,"2420":3}}],["heating",{"2":{"2064":1,"2420":1,"2679":1}}],["heatmap",{"0":{"2064":1},"2":{"160":1,"176":2,"211":1,"2063":3,"2064":8,"2887":1}}],["heavily",{"2":{"1332":1,"1389":1,"1390":1,"1849":1,"2072":1}}],["heavy",{"2":{"149":1,"249":1,"251":1,"294":1,"1287":1,"2609":1}}],["healthy",{"2":{"684":1}}],["headings",{"0":{"677":1},"2":{"677":3}}],["heading",{"2":{"676":3}}],["headroom",{"2":{"134":2}}],["head",{"2":{"99":1,"358":1,"375":1,"376":1,"403":1,"1334":1,"1339":1,"2627":6,"2658":1,"2661":1,"2663":1}}],["headers",{"2":{"94":1,"160":1,"199":1,"211":3,"249":2,"294":3,"308":2,"333":1,"338":3,"350":1,"397":1,"616":1,"1951":1,"2719":2,"2878":1,"2879":1,"2880":1}}],["header",{"0":{"2725":1,"2759":1,"2766":1,"2880":1},"2":{"4":1,"134":1,"176":1,"191":6,"211":1,"222":2,"249":1,"277":1,"460":1,"520":1,"558":1,"591":1,"1634":2,"1656":1,"2442":1,"2449":1,"2476":1,"2487":2,"2500":1,"2605":1,"2719":4,"2758":2,"2759":2,"2760":3,"2761":3,"2762":2,"2765":2,"2766":8,"2767":3,"2768":2,"2769":3,"2770":2,"2771":2,"2772":2,"2877":1,"2878":2,"2879":3,"2880":4}}],["hecomi",{"2":{"143":2}}],["hexnumpad",{"2":{"2337":1,"2338":1,"2339":1}}],["hexadecimal",{"2":{"2231":1,"2233":1,"2235":1,"2237":1,"2322":1,"2875":2}}],["hex6c",{"2":{"211":1}}],["hex",{"2":{"94":1,"160":1,"199":1,"428":1,"444":1,"570":1,"669":2,"1312":1,"1362":6,"1443":1,"2052":1,"2215":1,"2324":2,"2375":1,"2376":1,"2377":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":2,"2400":1,"2410":3,"2411":4,"2425":1,"2426":1,"2494":2,"2495":6,"2496":1,"2497":4,"2580":3,"2582":1,"2600":1,"2607":3,"2608":1,"2622":3,"2847":1,"2941":1}}],["helo",{"2":{"1627":1,"1630":1}}],["helios",{"0":{"1394":1},"2":{"199":1,"1386":2,"1388":3,"1396":3,"1767":1,"2699":1,"2888":1}}],["helix",{"0":{"55":1},"2":{"55":52,"114":1,"133":1,"134":1,"149":1,"160":1,"211":1,"266":1,"311":6,"317":4,"1940":1}}],["held",{"2":{"160":1,"194":3,"320":1,"673":1,"1348":1,"1359":1,"1375":1,"1378":1,"1416":1,"1458":1,"1459":1,"1493":2,"1495":1,"1512":1,"1523":1,"1527":2,"1591":1,"1606":2,"1666":1,"1668":1,"1684":3,"1732":1,"1735":1,"1751":1,"1755":2,"1756":1,"1928":1,"1929":1,"1932":2,"1933":1,"2025":1,"2030":1,"2031":1,"2160":2,"2181":10,"2248":1,"2250":7,"2251":1,"2252":9,"2253":1,"2265":1,"2293":1,"2297":5,"2302":4,"2309":1,"2310":3,"2311":1,"2312":2,"2382":1,"2411":1,"2462":1,"2510":1,"2515":2,"2516":2,"2524":1,"2528":1,"2535":29,"2537":10,"2543":7,"2544":5,"2553":1,"2559":30,"2563":1,"2568":1,"2632":1,"2643":1,"2745":2,"2824":1,"2827":1,"2832":1,"2902":5,"2903":1,"2904":1,"2905":2,"2906":1,"2907":2,"2914":4,"2915":1,"2916":1,"2917":1,"2919":2}}],["helped",{"2":{"2629":1}}],["helper",{"2":{"49":1,"2270":1,"2417":1}}],["helpers",{"0":{"231":1},"2":{"49":1,"199":2,"211":1,"236":1,"285":1,"2566":1}}],["helping",{"2":{"2414":1,"2573":1}}],["helpful",{"2":{"680":2,"1512":1,"1804":1,"2042":1,"2184":1,"2271":1,"2421":1,"2550":1,"2551":1,"2574":1,"2890":1,"2915":1}}],["help=",{"2":{"487":1,"498":2}}],["helps",{"2":{"173":1,"297":1,"437":1,"544":1,"568":1,"1340":1,"1943":2,"2281":1,"2323":1,"2420":3,"2422":1,"2664":1,"2840":1,"2911":1,"2922":1}}],["help",{"0":{"412":1,"610":1,"2473":1,"2889":1},"1":{"2890":1,"2891":1,"2892":1},"2":{"132":1,"173":1,"228":1,"380":1,"450":2,"451":2,"452":2,"453":2,"458":2,"459":2,"467":2,"503":1,"552":1,"607":2,"610":1,"611":1,"613":1,"614":1,"624":1,"642":1,"670":1,"673":1,"675":2,"1418":1,"1421":1,"1444":1,"1487":1,"1497":1,"1518":1,"1619":4,"1634":1,"1849":1,"1954":2,"2072":1,"2263":1,"2317":1,"2398":1,"2410":1,"2415":1,"2416":1,"2421":1,"2428":1,"2453":2,"2459":1,"2470":1,"2473":1,"2474":1,"2509":2,"2515":2,"2546":1,"2566":2,"2605":1,"2610":1,"2621":1,"2627":3,"2664":2,"2679":1,"2719":1,"2721":1,"2723":1,"2748":6,"2810":1,"2882":1,"2883":1,"2889":1,"2890":1,"2899":1}}],["hello",{"0":{"1695":1,"2218":1},"2":{"23":1,"120":1,"483":1,"487":10,"489":1,"537":1,"1445":1,"1517":3,"1627":4,"1628":1,"1630":2,"1633":2,"1638":19,"1695":1,"1712":1,"2218":3,"2295":1,"2750":1}}],["hobbyist",{"2":{"2572":1}}],["hop",{"2":{"1333":1,"2932":1}}],["hopefully",{"2":{"617":1,"2936":1}}],["hope",{"2":{"245":1,"503":1,"1438":1,"2725":1}}],["hover",{"2":{"597":1,"2667":1}}],["housings",{"2":{"2420":1}}],["housekeeping",{"0":{"644":1,"645":1},"1":{"645":1},"2":{"75":1,"92":1,"277":1,"644":2,"645":2,"1638":3,"2270":2,"2750":7}}],["hours",{"2":{"421":1,"608":1}}],["home=",{"2":{"416":1,"417":1,"418":1}}],["homebrew",{"0":{"416":1},"2":{"416":1,"2384":1,"2594":1,"2617":1}}],["home",{"0":{"1701":1},"2":{"277":1,"289":1,"419":1,"430":1,"445":1,"450":1,"451":1,"454":4,"587":2,"1452":7,"1599":1,"1607":1,"1688":1,"1696":1,"1701":1,"1805":2,"2159":3,"2310":1,"2402":1,"2509":2,"2510":2,"2511":1,"2515":5,"2554":1,"2577":1,"2619":1,"2621":2,"2721":1,"2748":6,"2911":1,"2914":1,"2920":2}}],["hood",{"2":{"493":1,"668":1}}],["hoodrowg",{"2":{"211":1}}],["hooking",{"2":{"641":1,"642":1,"1979":1}}],["hooks",{"0":{"1658":1},"2":{"277":1,"284":1,"288":2,"298":1,"308":1,"624":1,"1626":1,"1658":1,"1838":1,"2058":1,"2173":1,"2291":1,"2293":2}}],["hook",{"0":{"1607":1,"1995":1},"2":{"199":1,"272":1,"641":1,"1467":1,"1543":1,"1545":1,"1614":1,"1634":1,"1638":1,"1979":2,"2683":1}}],["hooked",{"2":{"198":1,"563":1}}],["horizontally",{"2":{"1947":1,"2023":1,"2063":1}}],["horizontal",{"2":{"1933":1,"1947":1,"2000":1,"2008":1,"2017":1,"2021":1,"2750":1,"2862":1,"2864":1,"2871":1}}],["horrortroll",{"2":{"199":1,"285":1}}],["horn",{"2":{"176":1}}],["hole",{"2":{"2414":1,"2682":1}}],["holiday",{"2":{"176":1}}],["holds",{"2":{"195":1,"320":1,"1511":2,"1512":3,"1667":2,"1732":1,"2303":1,"2310":1,"2547":2,"2552":2,"2643":1,"2910":1,"2919":1}}],["holdings",{"2":{"211":1}}],["holding",{"0":{"1606":1},"2":{"152":2,"683":2,"1378":1,"1443":2,"1492":1,"1497":1,"1511":1,"1512":1,"1513":1,"1755":1,"1756":1,"1759":1,"1761":3,"1928":5,"2003":1,"2030":1,"2031":1,"2293":1,"2323":1,"2377":1,"2384":1,"2515":1,"2547":1,"2827":1,"2901":1,"2917":2,"2918":1}}],["hold",{"0":{"22":1,"195":1,"289":1,"320":2,"1383":1,"1513":1,"2309":1,"2563":1,"2564":1,"2898":1,"2902":1,"2908":1,"2909":1,"2914":1,"2915":1,"2919":1},"1":{"2899":1,"2900":1,"2901":1,"2902":1,"2903":2,"2904":2,"2905":2,"2906":2,"2907":2,"2908":2,"2909":2,"2910":1,"2911":1,"2912":1,"2913":1,"2914":1,"2915":2,"2916":2,"2917":1,"2918":1,"2919":1,"2920":1,"2921":1},"2":{"22":1,"112":4,"114":1,"134":2,"149":2,"176":2,"191":2,"194":8,"195":5,"199":3,"203":1,"206":3,"249":1,"289":6,"294":3,"297":3,"308":3,"320":7,"324":4,"325":4,"328":3,"562":18,"674":1,"683":2,"1345":1,"1359":1,"1374":28,"1383":1,"1416":1,"1444":1,"1459":2,"1490":1,"1492":1,"1493":2,"1495":1,"1497":1,"1504":1,"1512":5,"1513":2,"1527":2,"1583":1,"1588":1,"1604":3,"1606":6,"1610":1,"1618":1,"1732":1,"1734":1,"1735":1,"1751":1,"1754":3,"1755":2,"1756":2,"1761":1,"1765":2,"1931":1,"1932":1,"2003":3,"2030":2,"2037":1,"2252":1,"2302":1,"2309":32,"2310":16,"2311":4,"2312":6,"2320":2,"2337":2,"2383":1,"2397":2,"2411":1,"2417":1,"2420":2,"2526":1,"2534":28,"2540":29,"2559":1,"2563":4,"2564":3,"2565":1,"2569":1,"2570":1,"2571":1,"2605":4,"2643":1,"2644":29,"2652":1,"2721":2,"2847":5,"2862":1,"2867":1,"2898":2,"2899":1,"2900":1,"2901":1,"2902":10,"2903":1,"2904":4,"2905":6,"2906":4,"2908":19,"2909":14,"2910":2,"2911":5,"2912":1,"2913":3,"2914":27,"2915":7,"2916":11,"2919":12,"2920":1,"2924":1,"2938":4}}],["honor",{"2":{"176":1,"2583":1}}],["honeycomb",{"2":{"159":2}}],["hotkey",{"2":{"2159":1}}],["hotkeys",{"2":{"1523":1,"2156":1,"2159":1,"2912":1,"2914":1,"2916":1}}],["hot",{"2":{"2063":1,"2064":1,"2258":1,"2273":1,"2415":1,"2421":2,"2428":1}}],["hotdox76v2",{"2":{"191":1}}],["hotswap",{"2":{"122":1,"149":1,"191":1,"199":1,"207":2,"211":8,"222":1,"241":4,"266":1,"308":1,"481":1}}],["hotfix",{"2":{"114":1,"134":1}}],["hosts",{"2":{"2810":1}}],["hosting",{"2":{"673":1,"1627":1,"2443":1,"2721":1}}],["host",{"0":{"1446":1,"1795":1,"2842":2,"2859":1,"2878":1},"2":{"113":1,"114":1,"134":1,"149":2,"182":1,"190":2,"191":3,"195":1,"199":2,"211":1,"222":1,"263":2,"285":1,"303":2,"308":2,"317":1,"333":1,"390":1,"568":1,"572":1,"682":1,"1367":1,"1389":2,"1390":2,"1638":3,"1645":2,"1646":1,"1751":1,"1775":1,"1778":1,"1790":3,"1795":4,"1933":1,"1939":3,"1950":1,"1951":1,"1952":4,"1956":1,"1958":1,"1974":1,"1988":2,"1990":1,"1995":1,"2017":2,"2019":1,"2021":4,"2024":1,"2047":2,"2051":1,"2052":2,"2054":1,"2073":1,"2074":2,"2182":1,"2212":1,"2215":1,"2269":2,"2277":3,"2318":1,"2324":1,"2411":1,"2489":1,"2572":1,"2592":1,"2596":1,"2708":1,"2784":1,"2842":1,"2859":1,"2864":1,"2870":1,"2871":1,"2875":2,"2878":3,"2902":1,"2908":2,"2909":1,"2927":1}}],["hosted",{"2":{"93":1}}],["hostname",{"2":{"70":3}}],["however",{"2":{"553":1,"632":1,"641":1,"682":1,"687":1,"690":1,"700":1,"727":1,"751":1,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1285":1,"1294":1,"1348":1,"1353":1,"1406":1,"1412":1,"1441":1,"1443":1,"1486":2,"1497":1,"1512":1,"1551":1,"1556":1,"1587":1,"1664":1,"1666":1,"1684":3,"1806":1,"1932":1,"1946":1,"1947":2,"2042":1,"2049":1,"2050":1,"2213":1,"2253":1,"2258":2,"2266":1,"2268":1,"2274":1,"2310":1,"2313":1,"2319":1,"2323":1,"2324":1,"2368":1,"2389":1,"2475":1,"2476":1,"2492":1,"2498":1,"2554":1,"2606":1,"2609":1,"2651":2,"2661":1,"2674":1,"2675":1,"2676":1,"2695":1,"2713":1,"2719":1,"2764":1,"2877":1,"2881":1,"2908":1,"2930":1,"2934":1,"2940":1}}],["how",{"0":{"607":1,"611":1,"624":1,"1328":1,"1334":1,"1344":1,"1361":1,"1492":1,"1494":1,"1519":1,"1520":1,"1588":1,"1760":1,"2032":1,"2033":1,"2157":1,"2167":1,"2168":1,"2302":1,"2403":1,"2431":1,"2459":1,"2460":1,"2468":1,"2625":1,"2787":1,"2789":1,"2896":1,"2897":1},"1":{"608":1,"625":1,"1589":1,"2034":1,"2035":1,"2036":1,"2037":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2467":1,"2468":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"70":1,"76":1,"77":1,"90":1,"123":1,"153":2,"186":1,"188":1,"194":1,"263":1,"312":1,"378":1,"393":1,"469":1,"487":1,"488":1,"520":1,"559":1,"562":6,"585":1,"602":1,"608":2,"611":1,"614":1,"618":2,"624":1,"645":1,"662":1,"663":1,"666":1,"668":1,"670":1,"698":1,"826":1,"855":1,"857":1,"887":1,"919":1,"922":1,"954":1,"956":1,"988":1,"990":1,"1022":1,"1024":1,"1056":1,"1058":1,"1090":1,"1092":1,"1124":1,"1126":1,"1158":1,"1160":1,"1214":1,"1310":1,"1317":2,"1336":1,"1337":1,"1345":1,"1402":1,"1413":1,"1415":1,"1421":2,"1422":2,"1424":1,"1425":1,"1435":1,"1447":1,"1451":2,"1452":1,"1486":1,"1497":1,"1519":1,"1531":2,"1659":1,"1675":4,"1744":1,"1749":1,"1753":1,"1754":1,"1755":1,"1756":1,"1792":1,"1839":1,"1846":1,"1933":2,"1946":1,"1955":1,"2006":1,"2026":1,"2039":1,"2059":1,"2063":3,"2064":1,"2069":1,"2159":1,"2167":1,"2168":1,"2180":1,"2185":3,"2187":6,"2188":1,"2251":1,"2258":1,"2266":2,"2268":1,"2271":2,"2301":1,"2303":1,"2310":1,"2313":1,"2372":2,"2408":1,"2416":1,"2422":2,"2428":1,"2429":1,"2431":1,"2445":1,"2456":1,"2457":1,"2458":1,"2459":2,"2460":1,"2473":1,"2555":1,"2572":1,"2573":1,"2578":1,"2579":2,"2581":1,"2609":1,"2611":1,"2621":1,"2625":1,"2627":1,"2636":1,"2646":1,"2657":2,"2680":1,"2707":1,"2710":1,"2719":1,"2721":1,"2723":1,"2749":2,"2750":3,"2751":1,"2786":1,"2787":2,"2836":1,"2844":1,"2864":1,"2871":1,"2901":1,"2920":1,"2923":1,"2924":1,"2925":2,"2926":2,"2930":1,"2931":2,"2935":1,"2937":2}}],["h",{"0":{"558":1,"1437":1,"1631":1,"1634":1,"1846":1,"1949":1,"2034":1,"2069":1,"2137":1,"2139":1,"2409":1,"2439":1,"2442":1,"2883":1},"1":{"559":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"2140":1},"2":{"4":2,"5":4,"14":1,"25":1,"28":1,"31":2,"34":2,"49":1,"50":8,"65":3,"70":12,"73":2,"74":1,"75":2,"76":1,"86":2,"94":1,"114":6,"119":1,"134":1,"149":3,"169":2,"170":2,"173":3,"176":12,"184":2,"191":3,"199":12,"201":4,"211":10,"220":1,"222":13,"236":7,"246":1,"249":1,"266":12,"273":1,"277":2,"285":1,"294":1,"308":2,"328":1,"332":1,"333":3,"338":1,"369":1,"370":1,"427":1,"431":1,"441":1,"446":1,"447":1,"448":1,"450":2,"451":2,"452":2,"453":2,"458":2,"459":2,"460":1,"467":2,"520":2,"553":2,"556":1,"558":2,"587":3,"591":1,"616":1,"645":1,"658":1,"663":3,"664":1,"665":1,"667":3,"670":2,"671":4,"688":1,"698":1,"700":1,"701":1,"714":1,"715":1,"718":3,"728":1,"729":1,"745":1,"746":3,"747":3,"748":2,"751":2,"752":2,"753":2,"756":2,"758":1,"759":1,"762":1,"764":1,"765":5,"766":1,"767":1,"799":1,"825":1,"826":1,"854":1,"855":1,"856":1,"857":1,"858":1,"886":1,"887":1,"888":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"953":1,"954":1,"955":1,"956":1,"957":1,"987":1,"988":1,"989":1,"990":1,"991":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1192":1,"1195":1,"1198":1,"1200":4,"1201":4,"1202":1,"1203":1,"1205":1,"1206":1,"1210":1,"1213":1,"1214":1,"1243":1,"1245":7,"1264":1,"1266":2,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1294":1,"1296":1,"1297":1,"1298":1,"1300":1,"1316":1,"1324":2,"1328":1,"1330":1,"1342":1,"1351":1,"1365":1,"1369":1,"1389":1,"1393":1,"1402":1,"1407":1,"1409":1,"1413":1,"1421":1,"1427":1,"1428":2,"1432":4,"1434":3,"1435":1,"1437":7,"1442":1,"1443":6,"1453":1,"1468":1,"1471":1,"1472":1,"1473":1,"1474":2,"1475":1,"1476":1,"1477":1,"1478":1,"1479":4,"1482":1,"1483":2,"1484":2,"1485":1,"1486":1,"1487":2,"1495":1,"1496":2,"1497":1,"1512":1,"1516":2,"1521":1,"1527":1,"1537":1,"1550":1,"1551":1,"1552":1,"1562":1,"1563":1,"1583":1,"1584":2,"1588":2,"1589":1,"1591":1,"1592":1,"1601":1,"1613":1,"1616":4,"1619":2,"1620":1,"1655":2,"1656":1,"1657":1,"1659":1,"1660":1,"1661":1,"1670":1,"1672":1,"1677":1,"1680":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1724":1,"1756":1,"1758":2,"1762":1,"1768":1,"1769":1,"1790":1,"1791":1,"1803":1,"1804":1,"1805":1,"1806":1,"1840":1,"1843":1,"1845":1,"1915":1,"1916":1,"1918":1,"1923":3,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1940":1,"1942":1,"1943":2,"1956":2,"1982":1,"1983":1,"1984":2,"1985":1,"1986":1,"1988":1,"1990":1,"1991":1,"1992":3,"1998":1,"1999":1,"2000":1,"2009":1,"2010":1,"2011":2,"2012":1,"2014":2,"2021":2,"2023":3,"2024":1,"2025":9,"2027":1,"2028":1,"2029":1,"2032":2,"2033":1,"2044":1,"2045":1,"2049":1,"2060":1,"2063":1,"2067":1,"2068":1,"2138":1,"2140":1,"2159":2,"2179":1,"2181":1,"2182":1,"2183":1,"2188":1,"2189":1,"2191":1,"2192":1,"2193":1,"2194":1,"2198":8,"2201":4,"2205":1,"2206":2,"2207":1,"2214":1,"2243":1,"2252":1,"2264":2,"2265":1,"2266":1,"2267":2,"2268":1,"2269":1,"2280":1,"2281":1,"2286":1,"2289":1,"2294":2,"2302":2,"2312":1,"2315":2,"2320":1,"2321":1,"2323":1,"2324":1,"2368":1,"2377":2,"2384":2,"2407":3,"2408":1,"2409":6,"2411":5,"2427":1,"2436":2,"2439":21,"2495":1,"2503":3,"2515":3,"2548":1,"2551":1,"2553":2,"2598":2,"2601":1,"2621":1,"2643":1,"2645":1,"2669":1,"2684":1,"2690":1,"2691":1,"2692":1,"2693":1,"2695":1,"2698":1,"2702":1,"2704":1,"2712":1,"2716":1,"2719":3,"2720":1,"2721":6,"2745":1,"2747":1,"2748":10,"2749":11,"2750":7,"2756":1,"2757":1,"2770":1,"2780":2,"2787":4,"2788":7,"2789":2,"2844":1,"2862":1,"2878":2,"2879":1,"2880":121,"2883":3,"2884":1,"2885":1,"2887":2,"2899":2,"2901":3,"2908":2,"2909":2,"2910":2,"2911":1,"2913":1,"2914":1,"2917":4,"2919":2,"2925":1}}],["hazards",{"0":{"2790":1},"1":{"2791":1,"2792":1,"2793":1}}],["hamming",{"2":{"2293":1}}],["hammer",{"2":{"388":1}}],["habit",{"2":{"1497":1,"1518":1}}],["habits",{"2":{"195":1}}],["hargett",{"2":{"2937":1}}],["harmful",{"2":{"2421":1,"2422":1}}],["harming",{"2":{"548":1}}],["harr",{"2":{"2159":49}}],["harvest",{"2":{"1979":1}}],["hardwired",{"2":{"2419":1}}],["hardware",{"0":{"14":1,"559":1,"718":1,"1477":1,"1623":1,"1663":1,"1673":1,"1691":1,"1937":1,"2208":1,"2256":1,"2257":1,"2271":1,"2272":1,"2276":1,"2367":1,"2443":1,"2451":1,"2476":1,"2669":1,"2670":1,"2689":1,"2710":1,"2846":1},"1":{"1624":1,"1625":1,"2257":1,"2258":2,"2259":1,"2260":1,"2273":1,"2368":1,"2477":1,"2478":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2690":1,"2691":1,"2692":1},"2":{"14":2,"113":1,"114":1,"133":1,"156":1,"160":1,"163":2,"176":1,"191":4,"215":1,"236":1,"249":1,"277":1,"285":2,"294":1,"408":1,"556":1,"568":1,"620":1,"622":1,"623":3,"631":2,"632":2,"635":2,"674":2,"684":1,"711":2,"712":1,"713":2,"718":2,"720":1,"743":1,"746":1,"747":1,"755":1,"765":2,"1190":1,"1193":1,"1195":1,"1196":1,"1198":1,"1263":1,"1364":1,"1402":1,"1404":1,"1406":1,"1477":4,"1552":1,"1554":1,"1556":1,"1559":1,"1675":2,"1796":1,"1844":1,"1914":1,"1937":1,"1947":1,"1979":1,"1996":1,"2004":3,"2015":2,"2018":1,"2019":3,"2066":1,"2171":1,"2178":1,"2255":1,"2271":1,"2273":1,"2285":2,"2287":1,"2368":1,"2376":1,"2440":2,"2441":1,"2443":1,"2444":1,"2451":2,"2477":1,"2481":1,"2494":1,"2495":1,"2496":1,"2553":1,"2668":1,"2669":2,"2670":3,"2673":1,"2684":1,"2689":1,"2697":1,"2700":1,"2707":2,"2709":1,"2721":4,"2722":2,"2726":1,"2728":2,"2729":1,"2732":1,"2737":1,"2741":1,"2742":1,"2751":1,"2811":1,"2849":1,"2894":1,"2895":1,"2925":1,"2927":1}}],["hardline",{"2":{"2418":1}}],["hardcoding",{"2":{"746":1}}],["hardcoded",{"2":{"191":1,"1482":1}}],["harder",{"2":{"663":1,"2471":1,"2579":1}}],["hard",{"2":{"49":1,"92":1,"263":1,"405":1,"424":2,"524":1,"548":3,"617":1,"1805":1,"2189":1,"2432":1,"2445":1,"2572":1,"2630":1}}],["hate",{"2":{"427":1}}],["hat",{"0":{"1769":1,"1788":1},"1":{"1789":1},"2":{"285":1,"1766":1,"1769":12,"1775":2,"1788":1,"1789":1,"2594":1}}],["haierwangwei2005",{"2":{"149":1}}],["hacks",{"2":{"546":1}}],["hacking",{"2":{"377":1}}],["hackpad",{"2":{"222":1}}],["hacked",{"2":{"218":1}}],["hacky",{"2":{"160":1}}],["hack",{"2":{"114":2,"149":1}}],["happened",{"2":{"551":1,"617":1,"2177":1,"2907":1,"2942":1}}],["happen",{"2":{"430":1,"509":1,"650":1,"651":1,"684":1,"769":1,"1353":1,"1406":1,"1425":1,"2293":1,"2308":1,"2475":1,"2801":1}}],["happens",{"2":{"405":1,"577":1,"631":3,"645":1,"649":2,"1434":1,"1450":1,"1522":1,"1757":1,"1955":1,"2270":1,"2459":1,"2462":1,"2626":1,"2814":1,"2815":1,"2901":1,"2902":3,"2908":1}}],["happening",{"2":{"113":1,"649":1,"1602":1,"2377":1,"2384":1,"2917":2}}],["happy",{"2":{"119":1,"392":1,"1516":1,"2403":1,"2447":2,"2575":1}}],["haptics",{"2":{"221":1,"328":1,"1611":1}}],["haptic",{"0":{"1671":1,"1672":1,"1674":1,"1682":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1},"1":{"1672":1,"1673":1,"1674":1,"1675":2,"1676":2,"1677":2,"1678":2,"1679":2,"1680":2,"1681":2,"1682":2,"1683":1,"1684":2,"1685":2,"1686":2,"1687":2,"1688":2,"1689":2},"2":{"64":1,"114":2,"134":3,"160":1,"188":1,"191":1,"199":1,"211":1,"221":2,"222":2,"266":1,"649":1,"1672":14,"1674":21,"1681":1,"1682":1,"1683":3,"1684":4,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2269":2,"2873":3,"2933":1}}],["hankaku",{"2":{"2508":1}}],["hanja",{"2":{"2508":1}}],["hangul",{"2":{"2508":1}}],["hang",{"2":{"359":1}}],["hangsheng",{"2":{"2567":1}}],["hangs",{"2":{"236":1}}],["hannah65",{"2":{"102":1}}],["handwiring",{"2":{"2417":1,"2925":1}}],["handwire",{"2":{"1295":1,"2416":2,"2428":1}}],["handwired",{"0":{"2447":1},"2":{"43":3,"49":1,"67":1,"72":1,"102":1,"114":2,"120":1,"122":1,"134":1,"149":2,"168":2,"181":3,"191":5,"199":3,"207":1,"211":7,"217":14,"222":1,"226":2,"241":1,"249":1,"253":6,"266":1,"277":3,"291":1,"294":2,"437":2,"1445":1,"2393":1,"2395":1,"2397":1,"2407":1,"2429":1,"2447":2,"2667":1,"2672":1,"2721":1,"2722":1,"2878":1}}],["hand88",{"2":{"211":1}}],["handful",{"2":{"130":1,"134":1,"149":1,"198":1,"211":2,"222":1,"283":1,"663":1,"2386":1,"2567":1,"2703":1,"2903":1}}],["hand",{"0":{"2413":1},"1":{"2414":1,"2415":1,"2416":1,"2417":1,"2418":1,"2419":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1},"2":{"114":1,"149":1,"176":1,"249":2,"277":1,"289":1,"317":1,"387":2,"566":1,"567":8,"1375":1,"1417":2,"1493":1,"1584":1,"1805":2,"2264":3,"2265":3,"2266":1,"2295":1,"2296":3,"2297":6,"2298":1,"2415":2,"2416":1,"2418":1,"2420":1,"2429":2,"2513":2,"2531":2,"2544":6,"2548":1,"2837":1,"2862":3,"2914":4,"2915":3}}],["handedness",{"0":{"566":1,"567":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2915":1},"1":{"567":1,"2264":1,"2265":1,"2266":1,"2267":1},"2":{"134":1,"176":1,"236":1,"566":2,"567":3,"1584":1,"2018":2,"2264":1,"2265":2,"2266":4,"2267":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2862":2,"2873":3,"2914":1,"2915":12,"2916":1}}],["handed",{"2":{"107":1,"199":1,"328":1,"2295":1,"2560":2,"2916":1}}],["handy",{"2":{"99":1,"628":1,"2162":1,"2551":1,"2613":1,"2892":1}}],["hands",{"0":{"2295":1,"2544":1},"1":{"2296":1,"2297":1,"2298":1,"2299":1},"2":{"94":1,"191":1,"199":2,"211":2,"231":3,"249":1,"289":1,"294":1,"566":1,"567":2,"1527":4,"1584":1,"1805":4,"2018":1,"2266":1,"2295":3,"2297":9,"2298":1,"2299":9,"2414":1,"2513":4,"2531":4,"2544":8,"2572":1,"2914":9,"2915":2,"2916":2}}],["handles",{"2":{"493":1,"711":1,"1288":1,"1354":1,"1583":1,"2046":1,"2168":1,"2553":1}}],["handle",{"0":{"2167":1,"2168":1},"2":{"134":1,"160":1,"190":1,"191":3,"199":2,"203":1,"222":1,"231":1,"236":1,"294":1,"307":2,"397":1,"487":1,"533":2,"630":1,"643":1,"644":1,"1333":1,"1406":1,"1442":1,"1497":1,"1526":1,"1527":1,"1754":1,"1755":1,"1996":1,"2014":1,"2019":2,"2025":3,"2046":1,"2050":1,"2167":1,"2298":1,"2303":2,"2311":1,"2746":1,"2749":11,"2750":18,"2928":1,"2930":1,"2933":1}}],["handled",{"2":{"105":2,"196":1,"559":2,"568":1,"628":1,"1425":1,"1437":1,"1511":1,"1756":1,"1953":1,"1958":1,"2009":1,"2030":1,"2051":1,"2293":1,"2301":1,"2721":1,"2750":1,"2933":1}}],["handlers",{"2":{"191":1,"277":1,"294":1,"2167":1,"2168":1}}],["handler",{"2":{"73":1,"191":1,"1202":1,"1289":1,"1555":1,"1948":1,"2270":4,"2283":1,"2757":1}}],["handling",{"0":{"16":1,"2040":1},"2":{"11":1,"50":2,"98":1,"114":1,"134":2,"149":1,"191":2,"199":2,"236":3,"266":4,"277":1,"285":3,"308":3,"317":2,"328":1,"400":1,"401":1,"562":8,"628":1,"1423":1,"1528":1,"1529":1,"1585":1,"1599":1,"1612":1,"1622":1,"1661":1,"1756":1,"1796":1,"2042":1,"2722":1,"2868":1,"2928":1}}],["hals",{"2":{"2732":1,"2738":1}}],["halve",{"2":{"1198":1,"2266":1}}],["halves",{"2":{"32":1,"45":1,"563":1,"567":1,"568":2,"1189":2,"1584":1,"2063":1,"2256":1,"2257":1,"2260":2,"2269":2,"2270":1,"2271":1,"2870":1}}],["halt",{"2":{"203":1,"2501":2,"2933":1}}],["hal",{"0":{"2738":1},"2":{"174":1,"698":1,"714":2,"715":2,"718":2,"765":1,"1200":2,"1201":2,"1245":1,"1296":1,"1300":1,"1562":1,"1563":1,"2668":1,"2738":1,"2739":1}}],["halberd",{"2":{"143":2}}],["halconf",{"2":{"50":2,"86":1,"714":2,"715":2,"718":2,"765":3,"1192":1,"1200":2,"1201":2,"1245":3,"1296":2,"1300":2,"1562":2,"1563":2,"1984":2}}],["halfkay",{"0":{"2381":1},"2":{"428":1,"571":1,"682":1,"686":1,"2381":3,"2383":1,"2384":1,"2837":1}}],["half",{"0":{"1193":1},"1":{"1194":1,"1195":1},"2":{"45":3,"107":2,"114":2,"149":1,"176":2,"191":2,"211":1,"236":1,"277":1,"563":5,"566":8,"567":2,"568":4,"572":1,"1189":1,"1190":1,"1193":3,"1194":1,"1195":1,"1196":2,"1197":4,"1202":2,"1204":1,"1584":3,"1660":3,"1790":1,"1846":1,"1932":1,"1933":1,"2009":1,"2014":3,"2063":2,"2069":1,"2074":1,"2179":1,"2191":1,"2257":1,"2260":1,"2262":2,"2266":1,"2271":2,"2371":1,"2419":1,"2513":2,"2531":2,"2697":2,"2787":1,"2864":1,"2870":1,"2871":1,"2873":14,"2915":2,"2931":1}}],["having",{"2":{"23":1,"149":1,"234":1,"412":1,"562":2,"603":1,"653":1,"746":1,"1204":1,"1206":1,"1315":1,"1329":1,"1378":1,"1419":1,"1443":1,"1459":1,"1497":1,"1602":1,"1616":1,"1617":1,"1844":1,"2029":1,"2066":1,"2162":2,"2268":1,"2290":1,"2323":1,"2467":1,"2583":1,"2644":1,"2664":1,"2684":1,"2721":1,"2744":1,"2778":1,"2783":1,"2822":1,"2911":1,"2942":1}}],["haven",{"2":{"164":1,"594":1,"1311":1,"1341":1,"2612":1,"2658":1}}],["have",{"0":{"608":1,"1335":1,"1338":1},"1":{"1339":1},"2":{"0":1,"1":1,"4":1,"7":1,"8":1,"9":1,"10":1,"14":2,"16":1,"19":1,"28":1,"36":1,"38":1,"39":1,"43":1,"45":1,"49":3,"50":1,"52":1,"57":1,"67":2,"69":1,"83":1,"86":1,"94":1,"98":1,"102":1,"114":1,"118":1,"122":1,"124":3,"128":1,"134":2,"140":2,"143":1,"157":2,"159":1,"168":1,"169":1,"172":1,"173":1,"175":1,"181":1,"182":5,"183":1,"189":1,"191":1,"195":1,"197":1,"198":1,"201":3,"203":1,"209":1,"211":1,"213":1,"218":1,"219":1,"220":1,"221":1,"224":1,"228":1,"231":1,"238":1,"240":1,"254":1,"255":1,"262":1,"268":1,"276":1,"277":1,"279":2,"283":4,"284":2,"294":1,"304":1,"383":1,"388":1,"393":1,"397":1,"405":1,"408":4,"412":1,"414":1,"416":1,"417":1,"418":2,"419":1,"456":2,"486":1,"487":1,"488":1,"490":1,"492":1,"493":2,"497":1,"511":1,"512":1,"520":1,"521":1,"524":1,"535":1,"537":1,"545":1,"546":1,"553":1,"556":2,"559":1,"563":1,"565":1,"572":1,"587":2,"595":1,"597":1,"602":1,"611":2,"612":1,"613":2,"614":1,"615":1,"616":1,"617":1,"618":2,"625":1,"632":1,"635":1,"641":1,"644":4,"654":1,"659":1,"663":5,"671":1,"673":1,"674":1,"676":1,"677":1,"678":1,"681":2,"682":2,"683":1,"684":1,"692":2,"699":1,"711":1,"720":1,"750":1,"759":1,"761":1,"765":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1197":1,"1216":1,"1242":1,"1244":1,"1245":1,"1263":1,"1266":1,"1283":1,"1284":1,"1297":1,"1308":1,"1310":1,"1312":1,"1318":1,"1319":1,"1337":1,"1339":2,"1340":1,"1341":1,"1350":1,"1351":2,"1356":1,"1362":1,"1363":1,"1364":1,"1365":1,"1368":1,"1375":1,"1379":1,"1395":2,"1402":1,"1406":1,"1407":1,"1410":3,"1411":1,"1412":1,"1419":1,"1420":1,"1421":1,"1427":1,"1435":3,"1436":1,"1438":1,"1441":2,"1442":2,"1443":3,"1446":1,"1448":1,"1451":1,"1466":1,"1471":1,"1475":1,"1477":1,"1479":1,"1484":1,"1486":1,"1492":2,"1493":3,"1497":2,"1511":1,"1516":3,"1521":1,"1527":1,"1532":1,"1548":2,"1552":2,"1583":3,"1585":1,"1591":1,"1596":1,"1603":2,"1606":2,"1614":1,"1616":2,"1627":2,"1641":1,"1655":1,"1660":1,"1665":1,"1674":1,"1677":1,"1735":1,"1751":1,"1752":1,"1767":1,"1803":1,"1805":3,"1941":1,"1942":1,"1946":1,"1947":1,"1950":1,"1956":1,"1958":1,"1985":1,"2014":1,"2015":1,"2016":1,"2063":1,"2178":1,"2183":1,"2185":1,"2254":1,"2258":1,"2260":1,"2265":1,"2266":1,"2271":3,"2273":2,"2279":1,"2280":1,"2285":1,"2286":1,"2291":1,"2293":1,"2301":1,"2302":1,"2303":4,"2310":3,"2313":1,"2321":1,"2322":1,"2323":3,"2376":1,"2379":1,"2381":1,"2384":1,"2386":1,"2391":1,"2398":1,"2400":1,"2402":1,"2403":2,"2410":4,"2412":1,"2415":1,"2421":2,"2422":3,"2424":2,"2425":1,"2427":1,"2428":2,"2430":1,"2433":1,"2435":1,"2437":1,"2438":4,"2439":1,"2445":2,"2447":1,"2449":2,"2459":1,"2463":1,"2465":1,"2467":2,"2468":1,"2475":1,"2476":1,"2490":1,"2492":1,"2494":1,"2499":1,"2501":1,"2549":1,"2551":2,"2552":1,"2553":1,"2554":2,"2555":2,"2556":1,"2559":1,"2567":1,"2568":1,"2569":3,"2571":1,"2572":2,"2573":1,"2575":1,"2576":1,"2577":1,"2580":2,"2582":1,"2583":1,"2587":3,"2588":1,"2589":1,"2590":1,"2594":1,"2601":2,"2605":2,"2607":2,"2609":3,"2613":1,"2619":2,"2622":1,"2625":3,"2626":2,"2627":2,"2628":1,"2629":1,"2630":2,"2631":1,"2633":2,"2648":2,"2650":1,"2651":2,"2658":1,"2662":1,"2667":1,"2669":1,"2671":1,"2673":1,"2677":1,"2679":2,"2683":1,"2689":1,"2698":1,"2700":1,"2702":1,"2703":1,"2707":2,"2710":1,"2714":1,"2715":1,"2720":1,"2721":5,"2724":2,"2725":1,"2742":1,"2744":2,"2747":1,"2749":3,"2750":1,"2765":1,"2776":1,"2779":1,"2780":2,"2785":2,"2788":1,"2877":1,"2879":1,"2883":1,"2895":1,"2898":1,"2900":1,"2901":1,"2915":1,"2921":1,"2924":1,"2926":1,"2930":5,"2936":1,"2942":1}}],["had60",{"2":{"211":1}}],["hadron",{"2":{"134":1}}],["hades",{"2":{"114":1,"207":2,"211":1}}],["had",{"2":{"7":1,"67":1,"86":1,"102":1,"116":1,"122":1,"124":1,"125":1,"143":1,"153":1,"159":1,"168":1,"172":1,"174":1,"181":1,"182":1,"185":1,"197":1,"233":1,"243":1,"245":1,"307":2,"331":1,"594":1,"1340":1,"1419":1,"1522":1,"2253":1,"2291":1,"2427":1,"2719":1}}],["hashbrowns",{"2":{"676":1}}],["hash",{"2":{"372":1,"405":3,"520":1,"587":1,"667":1,"669":1,"1686":1,"2505":1,"2515":1,"2539":1,"2558":1}}],["hasn",{"2":{"153":1,"214":1,"562":1,"594":1}}],["has",{"0":{"394":1},"2":{"1":1,"3":1,"7":1,"8":1,"14":2,"15":1,"25":1,"28":1,"31":1,"34":1,"49":3,"56":1,"57":1,"60":1,"67":1,"70":3,"82":1,"84":1,"86":3,"87":1,"90":1,"98":1,"99":1,"103":1,"109":1,"113":1,"114":2,"118":2,"123":2,"124":1,"126":1,"132":1,"137":1,"142":1,"146":1,"153":2,"154":1,"156":1,"160":1,"163":1,"164":1,"166":1,"167":1,"169":1,"172":1,"174":1,"175":3,"182":2,"184":1,"194":3,"196":1,"198":2,"199":1,"201":2,"202":1,"206":1,"213":1,"214":1,"215":1,"218":1,"221":1,"228":1,"230":1,"232":1,"233":3,"240":2,"243":2,"249":1,"262":2,"265":1,"271":1,"273":2,"277":1,"293":2,"302":1,"303":1,"305":2,"307":1,"312":4,"314":2,"315":1,"316":1,"317":1,"323":1,"331":3,"368":1,"371":3,"372":1,"373":1,"397":1,"405":1,"420":1,"432":1,"457":1,"468":1,"484":1,"519":1,"532":1,"537":1,"546":1,"554":1,"559":2,"562":1,"567":1,"573":2,"579":1,"580":1,"581":1,"582":1,"586":1,"594":2,"597":1,"617":1,"622":2,"624":1,"632":1,"635":1,"639":1,"642":1,"644":1,"645":5,"653":1,"655":1,"657":1,"663":1,"683":2,"684":1,"686":1,"692":2,"693":1,"698":1,"731":1,"750":1,"757":1,"763":1,"826":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1197":3,"1205":1,"1214":1,"1284":1,"1300":1,"1308":1,"1310":1,"1314":1,"1340":1,"1345":1,"1346":1,"1353":1,"1358":1,"1362":1,"1389":2,"1390":1,"1392":2,"1393":1,"1402":1,"1410":2,"1412":1,"1413":1,"1421":1,"1441":1,"1444":1,"1448":1,"1450":1,"1451":1,"1475":1,"1497":1,"1532":1,"1533":1,"1603":1,"1606":1,"1630":1,"1638":1,"1660":1,"1664":1,"1676":1,"1679":1,"1739":1,"1747":1,"1755":1,"1756":2,"1760":1,"1769":1,"1778":1,"1803":1,"1821":1,"1841":6,"1846":5,"1931":1,"1939":1,"1953":1,"2019":2,"2021":4,"2039":1,"2045":1,"2047":1,"2054":1,"2061":6,"2069":7,"2074":1,"2167":1,"2169":1,"2177":1,"2178":1,"2179":1,"2191":2,"2242":2,"2243":1,"2254":1,"2257":1,"2262":1,"2268":3,"2274":1,"2277":1,"2284":2,"2285":1,"2293":4,"2298":1,"2303":1,"2310":3,"2324":2,"2367":1,"2397":1,"2410":1,"2412":2,"2420":1,"2432":1,"2435":2,"2440":1,"2459":4,"2465":1,"2472":1,"2495":1,"2513":1,"2547":1,"2548":1,"2566":2,"2568":2,"2569":2,"2572":1,"2573":1,"2584":1,"2609":1,"2610":1,"2611":1,"2632":2,"2646":1,"2662":1,"2667":1,"2668":1,"2670":2,"2675":1,"2684":2,"2693":1,"2698":1,"2702":3,"2707":1,"2721":5,"2732":1,"2744":1,"2749":3,"2750":3,"2751":1,"2758":1,"2760":2,"2764":1,"2765":1,"2787":1,"2788":2,"2789":1,"2806":1,"2865":1,"2894":1,"2902":1,"2907":1,"2914":1,"2918":1,"2927":1,"2930":1,"2932":1,"2934":1,"2936":1,"2937":1}}],["c♯",{"2":{"1919":6,"2532":6}}],["cjoystick",{"2":{"1770":1,"1771":1}}],["c\\tuint16",{"2":{"1657":1}}],["cgram",{"0":{"1728":1},"1":{"1729":1},"2":{"1696":1,"1728":1,"1729":1}}],["cg",{"2":{"1375":1,"1479":4,"1480":4,"2513":7,"2531":7,"2912":1}}],["cédille",{"0":{"1352":1}}],["c8",{"0":{"1210":1}}],["c2²",{"2":{"692":2}}],["c2¹",{"2":{"692":2}}],["c2",{"2":{"690":1,"692":5,"1919":1,"2532":1,"2712":1,"2865":1}}],["c2json",{"0":{"437":1},"2":{"236":1,"437":3,"463":1}}],["c15",{"2":{"2677":1}}],["c14",{"2":{"2677":1}}],["c12832a1z",{"2":{"2276":1}}],["c13",{"2":{"1389":1,"1475":1,"2676":1,"2677":1,"2684":2}}],["c1²",{"2":{"692":2}}],["c1¹",{"2":{"692":2}}],["c1",{"2":{"690":1,"692":5,"764":1,"890":4,"1919":1,"2532":1,"2712":1,"2865":1}}],["c1ed",{"2":{"432":2}}],["c0²",{"2":{"692":2}}],["c0¹",{"2":{"692":2}}],["c0",{"2":{"690":1,"692":5,"696":2,"764":1,"2865":1}}],["ckeycode",{"2":{"2941":1}}],["ckeyrecord",{"2":{"630":1}}],["ck",{"2":{"1487":6,"1489":6,"2517":6}}],["ckled2001",{"2":{"149":1,"176":1,"221":4,"236":2,"1211":1}}],["c6",{"2":{"559":3,"712":2,"1468":1,"1559":1,"2377":1,"2384":1,"2411":1,"2684":1,"2713":1}}],["c5²",{"2":{"692":1}}],["c5¹",{"2":{"692":1}}],["c5",{"2":{"559":3,"690":1,"692":4,"712":2,"764":1,"1468":1,"1559":1,"1919":1,"2214":1,"2532":1}}],["c7",{"2":{"559":2,"568":1,"2271":1,"2713":1}}],["cdt",{"0":{"2651":1},"2":{"2650":1,"2651":2}}],["cdigitizer",{"2":{"1642":2}}],["cdeferred",{"2":{"655":1,"2750":1}}],["cd",{"0":{"430":1},"2":{"405":1,"423":5,"427":5,"430":1,"2400":1,"2494":1,"2601":1,"2748":2}}],["cdc",{"2":{"50":1,"2492":1}}],["cfloat",{"2":{"1479":1}}],["cfgr",{"2":{"698":1}}],["cfgr1",{"2":{"698":1}}],["cfg",{"2":{"391":2,"502":1,"523":1,"2501":2}}],["cformat",{"2":{"1":1,"51":1,"65":1,"199":1}}],["c3²",{"2":{"692":2}}],["c3¹",{"2":{"692":2}}],["c3",{"2":{"317":2,"690":1,"692":5,"1919":1,"1920":1,"2532":1,"2712":1}}],["c39",{"2":{"143":2}}],["cx",{"2":{"1840":1,"2060":1}}],["cxt",{"2":{"291":2,"294":2}}],["cx60",{"2":{"211":1}}],["csprintf",{"2":{"2882":1}}],["csr",{"2":{"2367":1}}],["cs5",{"2":{"1919":1,"2532":1}}],["cs4",{"2":{"1919":1,"2532":1}}],["csend",{"2":{"1452":4,"2219":2}}],["csg",{"2":{"1375":1}}],["csag",{"2":{"1375":1}}],["csa",{"2":{"1375":1,"1746":1,"2880":1}}],["cs3",{"2":{"731":2,"860":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1919":1,"2532":1}}],["cs2",{"2":{"731":2,"860":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1919":1,"2532":1}}],["cs1",{"2":{"731":2,"860":3,"925":3,"959":3,"993":3,"1027":3,"1061":3,"1095":3,"1129":3,"1163":3,"1919":1,"2532":1}}],["csx",{"2":{"729":1,"854":1,"857":4,"858":1,"918":1,"922":1,"923":1,"953":1,"956":1,"957":1,"987":1,"990":1,"991":1,"1021":1,"1024":1,"1025":1,"1055":1,"1058":1,"1059":1,"1089":1,"1092":1,"1123":1,"1126":1,"1157":1,"1160":1}}],["cstatic",{"2":{"645":1,"1451":1,"1940":1,"2278":1,"2749":1,"2750":2,"2754":1,"2785":1}}],["cstc40",{"2":{"311":4,"317":1}}],["css",{"0":{"344":1}}],["cs",{"0":{"735":1,"741":1},"1":{"736":1,"742":1},"2":{"266":1,"285":1,"728":2,"736":1,"742":1,"854":3,"857":15,"918":1,"922":2,"953":1,"956":2,"987":1,"990":2,"1021":1,"1024":2,"1055":1,"1058":2,"1089":2,"1092":6,"1123":2,"1126":6,"1157":2,"1160":6,"1375":2,"1746":2,"1919":1,"1945":2,"1998":2,"1999":2,"2006":2,"2011":2,"2013":2,"2014":16,"2016":3,"2368":1,"2532":1,"2749":4}}],["csy",{"2":{"236":1,"1092":3,"1093":1,"1126":3,"1127":1,"1160":3,"1161":1}}],["cccb1608",{"2":{"2403":1}}],["cc80",{"2":{"1918":3}}],["ccopyright",{"2":{"2449":3}}],["ccombo",{"2":{"1614":1}}],["cconst",{"2":{"272":2,"731":1,"802":2,"828":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1486":1,"1596":1,"1597":1,"1598":1,"1696":1,"1744":1,"1746":1,"1845":1,"2068":1,"2191":1,"2296":1,"2323":2,"2552":1,"2578":1,"2915":1,"2931":1,"2941":1}}],["cchar",{"2":{"1454":2,"2915":1}}],["ccw",{"2":{"307":4,"1661":8}}],["cc",{"0":{"1917":1},"2":{"222":3,"1368":2,"1917":1,"1918":7}}],["ccase",{"2":{"2023":1}}],["ccar",{"2":{"176":1}}],["ccache",{"2":{"133":1,"134":2}}],["cbbrowne",{"2":{"1362":3}}],["cb1",{"2":{"1216":5}}],["cb1800",{"2":{"211":1}}],["cb",{"0":{"1210":1},"2":{"654":2,"655":1,"2495":1}}],["cb87v2",{"2":{"211":1}}],["cb87rgb",{"2":{"211":1}}],["cb65",{"2":{"211":1}}],["cbool",{"2":{"90":1,"105":1,"125":2,"185":2,"194":2,"195":1,"307":1,"324":1,"325":1,"591":1,"629":1,"650":1,"651":1,"1326":1,"1377":1,"1442":1,"1466":1,"1504":2,"1511":1,"1527":1,"1529":1,"1594":1,"1607":1,"1622":4,"1662":2,"1764":1,"1793":1,"1795":1,"1849":1,"1952":1,"2015":1,"2046":1,"2072":2,"2073":3,"2074":2,"2164":1,"2165":1,"2166":1,"2167":1,"2190":1,"2218":1,"2270":1,"2293":3,"2374":1,"2562":1,"2563":1,"2564":1,"2749":1,"2750":14,"2754":1,"2777":1,"2908":1,"2909":1,"2912":1,"2916":1,"2917":1,"2919":1}}],["cypress",{"2":{"2795":1}}],["cypher",{"2":{"211":2}}],["cycling",{"2":{"1843":1,"2063":2,"2183":1,"2187":1,"2316":1,"2320":1}}],["cycled",{"2":{"1846":1,"2069":1,"2324":1,"2864":1,"2871":1}}],["cycles",{"0":{"1373":1},"2":{"126":1,"145":1,"213":1,"224":1,"238":1,"279":1,"307":1,"749":1,"1373":1,"1407":7,"1483":2,"1484":1,"1489":3,"1696":1,"1947":1,"2012":2,"2180":1,"2517":3}}],["cycle",{"0":{"406":1,"1425":1},"2":{"63":1,"103":2,"105":1,"107":1,"116":1,"131":1,"149":1,"156":1,"163":1,"167":1,"172":1,"182":1,"184":1,"187":1,"190":1,"198":1,"201":1,"206":1,"211":1,"213":1,"224":1,"230":1,"233":1,"251":1,"262":1,"265":1,"268":1,"273":1,"275":1,"284":1,"303":1,"307":1,"327":1,"328":1,"332":1,"397":2,"399":1,"400":1,"401":1,"406":4,"559":1,"746":1,"766":2,"1283":1,"1362":1,"1425":12,"1466":1,"1478":1,"1547":1,"1549":1,"1550":1,"1552":1,"1569":1,"1669":1,"1842":4,"1843":9,"1849":1,"2062":6,"2063":21,"2069":1,"2072":1,"2181":2,"2268":1,"2320":1,"2324":1,"2325":2,"2370":2,"2495":1,"2520":1,"2521":2,"2530":4,"2537":2,"2538":6,"2545":2,"2850":1,"2864":1,"2871":1,"2887":7,"2896":2}}],["cyan",{"2":{"490":1,"492":1,"639":1,"1413":4,"2067":2,"2189":2,"2205":2}}],["cyberstar",{"2":{"211":1}}],["cncl",{"2":{"2509":1,"2515":1}}],["cname",{"2":{"335":1}}],["cn",{"2":{"199":1}}],["cmsis",{"2":{"2667":1}}],["cmt",{"2":{"2559":1}}],["cmousekey",{"2":{"1926":1}}],["cmu",{"2":{"1922":1}}],["cmb",{"2":{"1612":4}}],["cmd=",{"2":{"2410":1}}],["cmd=yes",{"2":{"2410":2}}],["cmd",{"2":{"685":1,"1667":1,"1807":1,"1948":2,"2535":1,"2559":1}}],["cmatrix",{"2":{"623":1}}],["cmp",{"2":{"199":1,"1422":1,"2190":3}}],["cm",{"2":{"191":1,"1600":3,"1627":1,"1630":1}}],["cwd",{"2":{"2667":2}}],["cw",{"2":{"188":1,"191":1,"307":4,"1588":1,"1661":8,"2522":1}}],["cz",{"2":{"176":4}}],["czech",{"2":{"48":1,"266":1,"2880":9}}],["c4²",{"2":{"692":1}}],["c4¹",{"2":{"692":1}}],["c4",{"0":{"1393":1},"2":{"176":1,"189":1,"191":1,"559":3,"690":1,"692":4,"712":2,"764":1,"1386":1,"1388":5,"1393":1,"1468":1,"1559":1,"1919":1,"2532":1,"2712":1}}],["c++",{"0":{"2936":1},"2":{"176":1,"378":1,"387":4,"521":1,"609":1,"2050":1,"2650":1,"2651":2,"2656":1,"2664":1,"2936":3,"2937":1}}],["ctypedef",{"2":{"1413":1,"2270":1,"2309":1,"2310":1,"2760":1,"2762":1,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1}}],["cts",{"2":{"1263":1,"1265":1,"1266":4}}],["ctl",{"2":{"562":1,"2306":1,"2310":3,"2513":3,"2531":3,"2535":1,"2559":1,"2914":2}}],["ct",{"2":{"324":1,"325":1,"2306":3,"2307":1,"2308":3,"2309":2}}],["ctpc",{"0":{"304":1},"2":{"160":2,"191":1,"199":2,"304":1,"308":1}}],["ctrl+g",{"2":{"2339":1}}],["ctrl+x",{"2":{"2337":1}}],["ctrl+y",{"2":{"1737":1}}],["ctrl+z",{"2":{"1596":1}}],["ctrl+delete",{"2":{"1378":1}}],["ctrl+shift+i",{"2":{"2721":1}}],["ctrl+shift+z",{"2":{"1737":1}}],["ctrl+shift+a",{"2":{"1495":2}}],["ctrl+shift+backspace",{"2":{"1378":1}}],["ctrl+shift+enter",{"2":{"685":1}}],["ctrl+scroll",{"2":{"320":1}}],["ctrl+c",{"2":{"196":1,"1801":1,"2219":1,"2380":1}}],["ctrl+alt+del",{"2":{"1378":1}}],["ctrl+alt+shift+backspace",{"2":{"1378":1}}],["ctrl+a",{"2":{"196":1,"1495":2,"1801":1,"2219":1}}],["ctrl",{"2":{"131":2,"134":2,"149":1,"199":1,"231":2,"279":1,"347":1,"673":1,"1346":1,"1375":8,"1443":1,"1448":3,"1452":1,"1523":1,"1587":1,"1589":5,"1611":1,"1670":1,"1737":2,"1746":8,"1747":1,"1751":3,"1757":1,"1758":3,"2156":3,"2159":5,"2160":8,"2219":1,"2250":2,"2374":1,"2507":2,"2513":1,"2515":2,"2531":1,"2543":2,"2563":3,"2564":2,"2645":4,"2662":1,"2666":2,"2824":1,"2882":1,"2914":2,"2917":3,"2919":2}}],["cease",{"2":{"2895":1}}],["ce10f7642b0459e409839b23cc91498945119b4d",{"2":{"2403":1}}],["ceil",{"2":{"2000":1}}],["cells",{"2":{"1559":1}}],["celebrate",{"2":{"611":1}}],["centroid",{"2":{"2864":1,"2871":1}}],["centrally",{"2":{"1340":1}}],["centos",{"2":{"2594":1,"2619":1}}],["centered",{"2":{"1770":1,"1943":1,"2470":1}}],["center",{"2":{"191":1,"460":1,"1769":2,"1840":4,"1843":1,"2060":4,"2063":4,"2185":1,"2273":2,"2864":2,"2871":2}}],["cenum",{"2":{"307":1,"589":1,"591":2,"614":1,"627":1,"1450":2,"1599":2,"1611":1,"1612":1,"1843":1,"1951":1,"1956":1,"2024":1,"2025":1,"2063":1,"2162":1,"2170":1,"2322":1,"2901":1}}],["certainly",{"2":{"276":1,"1996":1,"2476":1,"2619":1,"2719":1,"2722":1}}],["certain",{"0":{"2042":1,"2163":1},"1":{"2164":1,"2165":1,"2166":1},"2":{"149":1,"511":1,"569":1,"572":1,"573":1,"638":1,"649":1,"687":1,"713":1,"1245":1,"1317":1,"1369":1,"1442":2,"1459":1,"1547":1,"1840":2,"1920":1,"1940":1,"2042":1,"2060":2,"2165":1,"2278":1,"2288":1,"2291":1,"2293":1,"2374":1,"2768":1,"2774":1,"2864":1,"2871":1,"2879":2,"2913":4,"2940":1}}],["ce",{"2":{"134":1,"199":1,"266":1,"271":1,"311":1,"322":1,"1386":2,"1388":4,"1396":4,"2161":1,"2399":1}}],["cest73",{"2":{"114":1,"211":1}}],["cpainter",{"2":{"2749":9,"2750":3}}],["cpnl",{"2":{"2510":1,"2515":1}}],["cplay",{"2":{"1479":2}}],["cp",{"2":{"509":1}}],["cpp",{"2":{"437":1,"1354":1,"2937":1}}],["cpi",{"2":{"236":1,"249":1,"1998":2,"1999":2,"2002":2,"2006":1,"2010":2,"2011":2,"2013":2,"2014":8,"2015":3,"2019":4,"2020":2,"2027":2,"2028":4}}],["cpus",{"2":{"2410":2}}],["cpu",{"2":{"114":1,"571":2,"716":1,"1190":1,"1193":1,"1196":1,"1287":1,"1289":1,"1290":1,"1291":1,"2047":1,"2410":1,"2734":1,"2929":1}}],["cpuclock",{"2":{"114":1}}],["cptc",{"2":{"92":1}}],["crux",{"2":{"2899":1}}],["cryptographically",{"2":{"2784":1}}],["cryptographic",{"2":{"2704":2}}],["crystal",{"2":{"2679":1}}],["crsl",{"2":{"2509":1,"2515":1}}],["crsel",{"2":{"2509":2,"2515":2}}],["crgblight",{"2":{"2191":2,"2198":1,"2205":1}}],["crgb",{"2":{"2066":1}}],["crippled",{"2":{"2566":1,"2567":9,"2569":1}}],["cribbit",{"2":{"2418":1,"2429":1}}],["criteria",{"0":{"2741":1},"2":{"397":1,"431":1,"2039":1,"2310":1,"2700":1}}],["critical",{"2":{"396":1,"401":1,"406":1,"490":1,"546":1,"685":1,"1564":1,"1950":1,"2721":1,"2722":2,"2729":1}}],["crin",{"2":{"211":1}}],["croatian",{"2":{"2880":3}}],["crossdiy",{"2":{"2567":1}}],["crossing",{"2":{"717":1}}],["cross",{"2":{"387":1,"1843":3,"2063":3,"2887":1}}],["cropped",{"2":{"114":1}}],["credential",{"2":{"2660":1}}],["credentials",{"2":{"312":1,"2660":1}}],["credits",{"0":{"1534":1,"1957":1}}],["credit",{"2":{"1444":1,"1534":1}}],["cream|",{"2":{"681":1}}],["cream||order",{"2":{"681":1}}],["cream",{"2":{"681":1}}],["creative",{"2":{"1421":1}}],["creating",{"0":{"1739":1,"2497":1,"2623":1},"1":{"1740":1,"1741":1,"1742":1,"1743":1},"2":{"297":1,"308":1,"414":1,"498":1,"616":1,"627":1,"1200":2,"1201":2,"1329":1,"1362":1,"1446":1,"1739":1,"2021":1,"2050":1,"2179":1,"2295":1,"2323":1,"2324":1,"2432":1,"2555":1,"2572":1,"2580":1,"2587":1,"2622":1,"2631":1,"2718":1,"2727":1,"2749":11,"2750":1,"2911":1}}],["creators",{"2":{"2569":1}}],["creator",{"2":{"114":1}}],["creates",{"2":{"427":1,"436":1,"437":1,"442":1,"443":1,"448":1,"487":1,"1547":1,"2569":1,"2633":1,"2651":1}}],["created",{"2":{"114":1,"251":1,"294":1,"371":1,"1340":1,"1378":1,"1413":2,"1418":1,"1655":1,"2044":1,"2301":1,"2425":1,"2426":1,"2449":1,"2567":1,"2577":1,"2588":1,"2590":1,"2627":3,"2636":1,"2667":2,"2707":1,"2721":1,"2750":3,"2937":1}}],["create",{"0":{"141":1,"2577":1,"2596":1,"2598":1},"2":{"76":1,"132":1,"134":2,"149":1,"172":1,"173":1,"175":1,"176":1,"249":1,"293":1,"305":1,"312":1,"314":1,"369":1,"397":1,"403":1,"406":1,"419":2,"427":1,"498":1,"576":1,"586":1,"594":1,"595":1,"611":1,"626":1,"664":1,"671":1,"673":1,"681":2,"763":1,"1308":1,"1347":1,"1353":1,"1413":1,"1434":1,"1442":1,"1443":1,"1479":1,"1480":1,"1494":1,"1496":1,"1521":1,"1614":1,"1627":1,"1655":1,"1737":1,"1743":1,"1751":1,"1765":1,"1844":2,"2044":1,"2066":2,"2291":2,"2310":1,"2311":1,"2322":1,"2323":1,"2403":3,"2424":1,"2466":1,"2499":1,"2546":1,"2564":1,"2572":1,"2577":2,"2587":2,"2596":1,"2598":2,"2599":1,"2623":1,"2628":1,"2629":1,"2633":1,"2707":1,"2749":2,"2750":1,"2751":1,"2754":1,"2776":1,"2789":1,"2844":1,"2923":1,"2925":1,"2937":2,"2942":1}}],["cradio",{"2":{"191":1}}],["craftwalk",{"2":{"134":1,"266":1}}],["crc8",{"2":{"114":1}}],["crc",{"2":{"107":1,"114":3,"176":1,"191":1}}],["crkbd",{"2":{"86":3,"94":1,"176":1,"211":1,"2266":3,"2567":1,"2603":1}}],["cvoid",{"2":{"34":1,"90":1,"105":1,"125":1,"185":1,"196":1,"622":1,"633":1,"639":1,"647":1,"725":1,"760":1,"769":1,"1319":1,"1413":2,"1481":1,"1557":1,"1585":1,"1595":1,"1695":1,"1801":1,"1849":1,"1942":1,"1988":1,"1995":1,"2028":1,"2050":1,"2052":1,"2075":1,"2191":1,"2270":1,"2307":1,"2645":4,"2669":1,"2670":1,"2671":1,"2750":10,"2755":1,"2942":1}}],["c",{"0":{"272":1,"304":1,"457":1,"467":1,"520":1,"1208":1,"1389":1,"1391":1,"1396":1,"1449":1,"1473":1,"1633":1,"1634":1,"1707":1,"1923":1,"2441":1,"2550":1,"2578":1,"2681":1,"2802":1},"1":{"1397":1,"1398":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1455":1,"1456":1,"1457":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1,"1708":1,"2551":1,"2552":1,"2553":1,"2554":1,"2682":1,"2683":1,"2684":1},"2":{"28":1,"31":2,"34":3,"49":3,"50":6,"63":1,"64":1,"65":1,"74":1,"75":2,"77":1,"86":2,"92":1,"98":1,"105":2,"114":4,"134":5,"149":2,"153":1,"160":2,"169":1,"172":2,"176":3,"184":1,"189":3,"191":1,"196":1,"199":3,"211":4,"220":1,"231":2,"234":9,"236":2,"247":1,"249":1,"266":6,"272":1,"277":1,"285":1,"303":1,"304":2,"307":3,"308":2,"311":1,"317":2,"328":1,"348":2,"361":1,"369":1,"372":1,"374":1,"378":1,"387":4,"427":2,"428":2,"436":1,"437":4,"453":2,"457":5,"460":1,"467":9,"498":1,"513":1,"520":3,"521":1,"537":1,"558":1,"559":6,"566":1,"570":6,"586":2,"587":4,"589":1,"590":1,"591":2,"609":1,"612":2,"616":1,"621":3,"622":1,"623":2,"627":1,"645":3,"656":1,"657":1,"658":1,"664":1,"667":1,"688":1,"692":1,"714":3,"715":2,"717":1,"718":4,"719":1,"720":1,"727":1,"729":1,"731":1,"763":2,"765":3,"798":2,"802":1,"824":2,"828":1,"853":2,"856":1,"857":1,"858":1,"860":1,"885":2,"888":1,"890":1,"917":2,"921":1,"922":1,"923":1,"925":1,"952":2,"955":1,"956":1,"957":1,"959":1,"986":2,"989":1,"990":1,"991":1,"993":1,"1020":2,"1023":1,"1024":1,"1025":1,"1027":1,"1054":2,"1057":1,"1058":1,"1059":1,"1061":1,"1088":2,"1092":1,"1093":1,"1095":1,"1122":2,"1126":1,"1127":1,"1129":1,"1156":2,"1159":1,"1160":1,"1161":1,"1163":1,"1192":2,"1195":2,"1197":2,"1198":2,"1200":3,"1201":3,"1202":1,"1204":1,"1205":1,"1206":1,"1212":2,"1216":1,"1245":3,"1266":2,"1284":1,"1285":1,"1294":1,"1296":2,"1297":1,"1298":1,"1300":2,"1308":1,"1324":1,"1326":1,"1328":1,"1344":1,"1345":1,"1351":1,"1354":1,"1365":1,"1369":1,"1374":2,"1375":1,"1378":1,"1385":2,"1386":7,"1387":2,"1388":10,"1389":3,"1392":1,"1393":1,"1396":1,"1402":2,"1403":3,"1404":4,"1411":2,"1413":2,"1425":1,"1427":1,"1428":1,"1432":2,"1433":1,"1434":2,"1435":6,"1441":6,"1442":1,"1443":5,"1450":2,"1453":1,"1456":1,"1457":1,"1466":1,"1473":2,"1478":2,"1479":13,"1480":16,"1481":1,"1482":1,"1483":1,"1484":2,"1485":4,"1486":2,"1487":1,"1495":1,"1496":1,"1497":1,"1512":2,"1521":1,"1526":2,"1529":1,"1551":1,"1552":1,"1562":3,"1563":2,"1583":1,"1584":2,"1589":1,"1591":1,"1592":1,"1596":3,"1598":1,"1600":1,"1606":1,"1614":1,"1616":4,"1619":1,"1620":2,"1621":3,"1622":4,"1633":2,"1634":3,"1655":1,"1656":1,"1659":6,"1660":2,"1661":4,"1662":2,"1663":1,"1678":1,"1679":1,"1681":2,"1683":1,"1695":1,"1708":1,"1738":1,"1747":1,"1749":1,"1751":1,"1758":2,"1762":1,"1764":1,"1765":1,"1768":1,"1769":1,"1770":1,"1794":1,"1801":1,"1803":1,"1804":8,"1805":1,"1806":1,"1807":2,"1844":1,"1845":2,"1846":1,"1849":1,"1915":1,"1916":1,"1918":1,"1919":19,"1920":1,"1923":3,"1931":10,"1932":1,"1939":2,"1940":1,"1941":1,"1942":1,"1943":2,"1947":1,"1948":1,"1952":1,"1956":2,"1982":1,"1983":1,"1984":2,"1985":1,"1986":1,"1988":1,"1989":1,"1990":6,"1991":1,"1992":2,"1993":3,"1994":1,"2000":1,"2014":3,"2015":1,"2027":1,"2029":1,"2031":1,"2032":2,"2037":2,"2042":2,"2043":2,"2044":2,"2050":2,"2064":5,"2065":1,"2066":1,"2068":2,"2069":1,"2072":1,"2159":1,"2160":3,"2161":1,"2163":1,"2187":1,"2189":3,"2206":1,"2207":2,"2211":1,"2215":1,"2218":1,"2243":1,"2264":2,"2265":2,"2266":3,"2267":2,"2268":6,"2269":10,"2270":3,"2271":10,"2277":2,"2279":1,"2280":1,"2281":1,"2283":1,"2289":1,"2294":1,"2298":1,"2302":1,"2305":2,"2306":1,"2308":1,"2310":3,"2311":2,"2312":4,"2315":1,"2322":3,"2323":1,"2324":1,"2325":3,"2374":1,"2377":1,"2378":1,"2379":1,"2382":1,"2384":1,"2387":1,"2403":1,"2404":1,"2407":1,"2408":2,"2410":15,"2411":1,"2414":1,"2416":1,"2417":3,"2436":1,"2440":2,"2441":1,"2442":2,"2455":1,"2465":2,"2495":1,"2501":18,"2503":3,"2515":3,"2532":19,"2534":1,"2545":3,"2546":1,"2550":1,"2551":1,"2553":3,"2554":1,"2563":7,"2564":4,"2568":1,"2577":2,"2578":2,"2598":3,"2601":1,"2603":2,"2643":1,"2650":1,"2651":2,"2656":1,"2662":1,"2664":1,"2667":5,"2672":1,"2681":1,"2682":1,"2683":2,"2684":7,"2693":1,"2699":1,"2702":3,"2707":1,"2719":1,"2721":6,"2744":2,"2746":11,"2748":4,"2749":19,"2750":12,"2757":1,"2761":1,"2773":4,"2780":1,"2787":2,"2802":1,"2807":1,"2846":1,"2878":2,"2879":1,"2882":1,"2883":3,"2884":1,"2885":3,"2886":3,"2887":2,"2888":2,"2899":3,"2908":2,"2909":2,"2910":2,"2911":1,"2912":1,"2914":9,"2915":2,"2916":2,"2917":4,"2919":1,"2926":1,"2927":4,"2928":1,"2930":2,"2936":4,"2937":1,"2941":1}}],["cidoo",{"2":{"2567":1}}],["cif",{"2":{"1804":1}}],["cint16",{"2":{"2750":2}}],["cint",{"2":{"348":1}}],["cipulot",{"2":{"249":1,"285":1}}],["city42",{"2":{"222":1}}],["ciruitry",{"2":{"1675":1}}],["circ",{"2":{"2539":1,"2558":1}}],["circle",{"2":{"2180":1,"2750":4}}],["circles",{"2":{"153":1,"2750":2}}],["circumvent",{"2":{"2735":1}}],["circumflex",{"2":{"2539":1,"2558":1}}],["circumstances",{"2":{"221":1,"751":2,"754":1,"1317":1,"2042":1,"2268":1,"2271":1,"2403":1,"2667":1,"2697":1,"2749":1,"2750":1}}],["circular",{"0":{"1298":1},"2":{"93":1,"175":2,"176":2,"236":1,"698":2,"1296":2,"1298":3,"2008":1,"2746":1}}],["circuitry",{"0":{"1980":1},"2":{"1979":1}}],["circuits",{"2":{"1551":1}}],["circuit",{"0":{"1294":1,"1364":1},"2":{"49":4,"1364":2,"1368":1,"1406":1,"1551":1,"1675":1,"2386":1,"2388":1,"2391":1,"2427":1,"2459":4,"2669":1,"2849":1,"2850":1}}],["cirque",{"0":{"2005":1},"1":{"2006":1,"2007":1,"2008":1,"2009":1},"2":{"118":4,"175":2,"176":7,"190":1,"191":4,"249":3,"2005":4,"2006":20,"2007":5,"2008":3,"2009":3,"2025":1,"2045":1}}],["cie1931",{"2":{"84":1,"93":1}}],["cie",{"2":{"49":1,"2750":1}}],["ci",{"2":{"17":1,"51":1,"76":1,"134":1,"149":1,"164":1,"199":1,"211":2,"249":2,"294":2,"504":1,"613":1,"701":2,"2179":1,"2848":1}}],["caddy",{"2":{"2428":1}}],["cadence",{"2":{"393":1}}],["cadet",{"0":{"2248":1,"2543":1,"2834":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2253":1},"2":{"49":1,"188":1,"191":2,"249":1,"1588":1,"2248":1,"2250":7,"2251":1,"2252":3,"2253":3,"2543":8,"2834":1,"2882":1,"2933":1}}],["cag",{"2":{"1375":1}}],["ca",{"2":{"1375":1,"1616":1,"1746":1}}],["ca4",{"2":{"890":1}}],["ca3",{"2":{"890":1,"1216":2}}],["ca2",{"2":{"890":1,"1216":2}}],["ca1",{"2":{"890":1,"1216":3}}],["caveats",{"0":{"588":1,"1417":1,"1669":1,"1735":1,"1914":1,"2251":1,"2318":1,"2557":1,"2560":1},"1":{"589":1,"590":1,"591":1},"2":{"2673":1,"2721":1,"2778":1}}],["came",{"2":{"494":1,"561":1,"2862":1}}],["camps",{"2":{"173":1}}],["caution",{"2":{"598":1}}],["caught",{"2":{"412":1}}],["causing",{"2":{"156":1,"1479":1,"2017":1,"2491":1,"2674":1,"2757":1}}],["causes",{"2":{"613":1,"717":1,"1190":1,"1284":1,"1442":1,"1678":1,"2633":1}}],["caused",{"2":{"114":1,"134":1,"199":1,"222":1,"393":1,"1756":1}}],["cause",{"2":{"73":1,"88":2,"104":2,"127":2,"170":1,"201":1,"408":2,"613":1,"716":2,"1287":1,"1373":1,"1413":2,"1417":1,"1421":1,"1491":1,"1557":1,"1947":1,"1955":3,"1990":2,"2037":1,"2039":1,"2069":1,"2294":1,"2377":1,"2384":1,"2424":1,"2448":1,"2560":2,"2675":1,"2676":1,"2882":1,"2898":1}}],["cached",{"2":{"364":1}}],["cachyos",{"2":{"317":1,"2619":1}}],["cathodes",{"2":{"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1}}],["cat24c512",{"2":{"746":2}}],["catb",{"2":{"608":1}}],["catch",{"2":{"533":1,"654":1,"1532":1}}],["catching",{"2":{"533":1}}],["cat",{"2":{"294":1}}],["caticorn",{"2":{"222":1}}],["category",{"2":{"1386":1}}],["categories",{"2":{"408":1}}],["categorize",{"2":{"110":1}}],["catered",{"2":{"378":1}}],["cater",{"2":{"182":1,"236":1,"308":1,"1189":1}}],["caterina",{"0":{"2379":1,"2492":1},"1":{"2380":1},"2":{"70":1,"566":1,"571":1,"682":1,"686":11,"2266":1,"2379":3,"2380":1,"2495":5,"2496":1}}],["cain",{"2":{"211":1}}],["caffeinated",{"2":{"211":1}}],["cables",{"2":{"1197":1,"2258":6}}],["cable",{"2":{"211":1,"683":1,"1191":1,"1194":1,"1197":1,"2013":1,"2254":1,"2257":3,"2258":1,"2259":1,"2260":1,"2267":3,"2271":1,"2397":2,"2419":1,"2423":1,"2424":1}}],["casual",{"2":{"537":1}}],["cassini",{"2":{"211":1}}],["cassette42",{"2":{"143":2}}],["cases",{"2":{"25":1,"75":1,"176":1,"182":3,"194":1,"214":1,"234":1,"236":1,"246":1,"437":1,"509":1,"524":1,"550":1,"561":1,"641":1,"666":2,"667":1,"670":1,"700":1,"762":1,"1243":1,"1264":1,"1281":1,"1526":1,"1603":1,"1616":1,"1754":1,"1755":1,"2015":1,"2047":1,"2161":1,"2290":1,"2302":3,"2443":1,"2566":1,"2567":1,"2568":1,"2744":1,"2894":1,"2909":1,"2919":1}}],["case",{"0":{"2323":1},"2":{"11":1,"105":2,"160":1,"194":3,"195":2,"202":1,"222":1,"231":4,"273":1,"307":2,"324":1,"325":1,"391":1,"545":1,"591":6,"595":1,"629":2,"630":1,"655":2,"683":2,"769":1,"794":1,"1245":1,"1333":1,"1351":1,"1365":1,"1375":1,"1377":1,"1378":2,"1407":1,"1413":8,"1424":4,"1425":1,"1442":2,"1443":1,"1450":5,"1451":4,"1466":1,"1485":2,"1495":1,"1497":5,"1504":6,"1511":3,"1516":2,"1521":1,"1527":15,"1531":1,"1551":1,"1583":1,"1594":6,"1599":2,"1603":1,"1606":7,"1607":1,"1611":3,"1612":4,"1614":3,"1617":1,"1622":4,"1664":1,"1754":1,"1765":1,"1771":5,"1918":1,"1939":3,"1952":5,"1953":1,"1956":2,"2015":1,"2023":1,"2025":1,"2027":1,"2037":2,"2042":1,"2043":1,"2044":1,"2073":2,"2074":1,"2160":3,"2161":5,"2162":4,"2164":1,"2165":1,"2167":2,"2168":2,"2170":14,"2178":1,"2191":5,"2218":1,"2242":1,"2277":3,"2287":1,"2303":2,"2308":4,"2309":1,"2310":12,"2311":6,"2312":7,"2323":1,"2400":2,"2411":1,"2415":1,"2418":1,"2423":1,"2434":1,"2459":1,"2475":1,"2498":1,"2562":1,"2563":3,"2564":1,"2570":1,"2609":1,"2627":1,"2683":1,"2719":1,"2777":2,"2883":1,"2899":2,"2900":2,"2901":7,"2908":2,"2909":1,"2910":1,"2912":7,"2913":2,"2914":2,"2916":2,"2917":1,"2919":3}}],["carries",{"2":{"2258":1}}],["carryover",{"2":{"2252":1}}],["carefully",{"2":{"2421":1,"2936":1}}],["careful",{"2":{"541":1,"641":1,"643":1,"685":1,"1485":1,"2421":1,"2422":1,"2578":1}}],["care",{"2":{"236":1,"763":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1257":1,"1260":1,"1275":1,"1277":1,"1418":1,"1531":1,"1757":1,"2720":1,"2932":1}}],["carbo65",{"2":{"211":1}}],["car",{"2":{"211":1}}],["carve",{"2":{"113":1,"114":1,"133":1,"134":1}}],["card",{"2":{"111":2,"143":4,"1444":1}}],["captioning",{"2":{"2284":1}}],["capture",{"2":{"143":2,"194":1,"203":2,"312":2,"1485":1}}],["cap",{"2":{"1939":1,"2277":1}}],["capitalized",{"2":{"1587":2}}],["capitalization",{"2":{"176":1,"2165":1}}],["capitals",{"2":{"1587":1}}],["capital",{"2":{"211":1,"1493":2,"2643":1,"2787":1}}],["capacitors",{"2":{"1691":1}}],["capacity",{"2":{"160":1}}],["capability",{"2":{"164":1,"277":1,"312":1,"458":1,"1554":1,"2367":1,"2721":1}}],["capabilities",{"0":{"334":1,"335":1},"1":{"335":1,"336":2,"337":2,"338":2,"339":2,"340":2,"341":2,"342":2,"343":1,"344":1,"345":1,"346":1,"347":1,"348":1,"349":1,"350":1,"351":1,"352":1,"353":1,"354":1,"355":1,"356":1,"357":1},"2":{"160":1,"334":1,"1189":1,"2571":1,"2721":1,"2894":1}}],["capable",{"2":{"49":1,"153":2,"510":1,"712":1,"724":1,"1193":1,"1369":1,"1468":1,"1471":1,"1559":1,"1766":1,"2386":1,"2475":1,"2498":1,"2566":1,"2569":1,"2697":1,"2721":4,"2734":1,"2758":1,"2765":1,"2826":1}}],["capswrd",{"2":{"188":1,"191":1}}],["caps",{"0":{"152":1,"1587":1,"1588":1,"1590":1,"1595":1,"2305":1,"2522":1,"2854":1},"1":{"1588":1,"1589":2,"1590":1,"1591":2,"1592":2,"1593":2,"1594":2,"1595":2},"2":{"149":2,"152":2,"160":2,"176":5,"188":2,"191":3,"199":2,"211":2,"222":2,"231":2,"249":1,"308":1,"317":1,"369":1,"562":2,"563":1,"568":1,"587":2,"1344":3,"1346":1,"1351":1,"1459":3,"1527":1,"1550":2,"1552":4,"1587":18,"1588":9,"1589":2,"1591":6,"1592":6,"1593":9,"1594":8,"1595":6,"1597":1,"1619":1,"1687":1,"1732":2,"1790":1,"1791":2,"1793":1,"1794":13,"1795":3,"1849":1,"1939":1,"1942":1,"2072":1,"2073":2,"2074":4,"2188":1,"2189":2,"2190":1,"2269":1,"2277":1,"2280":1,"2305":5,"2306":1,"2308":2,"2323":1,"2325":1,"2506":5,"2513":17,"2515":5,"2522":3,"2531":17,"2545":1,"2553":1,"2847":1,"2850":2,"2854":7,"2860":2,"2928":1,"2933":1}}],["capsunlocked",{"2":{"143":3,"149":1,"217":4,"222":1,"249":1}}],["capslock",{"2":{"112":1,"149":1,"152":1,"1308":2,"2189":2,"2847":1}}],["calc",{"2":{"2510":1,"2515":1}}],["calculator",{"2":{"2496":1,"2510":2,"2515":2}}],["calculate",{"2":{"1840":4,"1947":1,"2025":1,"2060":4,"2185":1,"2375":1}}],["calculated",{"2":{"746":1,"751":2,"1249":1,"1775":1,"1947":1,"2372":2,"2749":1}}],["calculating",{"2":{"211":1,"1365":1,"2372":2}}],["calculation",{"0":{"2371":1},"1":{"2372":1,"2373":1,"2374":1},"2":{"50":1,"114":1,"222":3,"328":1,"333":1,"2002":2,"2372":1,"2374":2}}],["calibrating",{"2":{"2007":1}}],["calibration",{"2":{"249":1,"2007":1}}],["california",{"2":{"211":1,"435":1}}],["calice",{"2":{"211":1}}],["caller",{"2":{"1450":1}}],["called",{"2":{"49":1,"94":1,"187":1,"194":1,"203":1,"364":1,"391":1,"621":1,"623":2,"625":1,"628":2,"629":1,"631":1,"635":1,"641":1,"643":1,"644":2,"646":1,"649":1,"703":1,"735":1,"769":2,"806":1,"832":1,"864":1,"894":1,"929":1,"963":1,"997":1,"1031":1,"1065":1,"1099":1,"1133":1,"1167":1,"1220":1,"1247":2,"1268":2,"1280":1,"1302":1,"1329":1,"1347":1,"1406":1,"1413":1,"1422":3,"1450":1,"1543":1,"1545":1,"1557":1,"1585":1,"1594":1,"1664":1,"1680":1,"1698":2,"1700":1,"1701":1,"1702":1,"1749":1,"1751":1,"1764":1,"1790":1,"1792":1,"1948":2,"1954":1,"2017":1,"2039":2,"2042":1,"2045":1,"2164":1,"2178":2,"2283":6,"2284":1,"2293":4,"2302":1,"2303":8,"2323":1,"2324":1,"2412":2,"2459":2,"2475":1,"2494":1,"2551":1,"2577":1,"2626":1,"2643":1,"2645":1,"2702":1,"2707":1,"2778":1,"2912":1,"2918":1,"2928":1,"2933":2,"2935":1}}],["calling",{"2":{"149":1,"670":1,"693":1,"1459":1,"1588":1,"1735":1,"1769":1,"1941":1,"1948":1,"2030":1,"2032":2,"2279":1,"2283":1,"2303":2,"2749":1,"2750":3}}],["callback",{"0":{"185":1,"203":1,"658":1,"1525":1,"2037":1},"1":{"1526":1,"1527":1,"1528":1,"1529":1,"1530":1},"2":{"149":1,"185":1,"191":1,"196":1,"203":2,"211":1,"294":1,"317":1,"653":1,"654":4,"655":8,"715":1,"719":1,"1289":1,"1422":6,"1475":1,"1526":2,"1527":1,"1529":1,"1530":1,"1594":4,"1622":1,"1662":1,"1764":1,"1810":1,"1811":1,"1812":1,"1859":1,"1861":1,"1902":1,"1904":1,"1905":1,"1906":1,"1909":1,"1911":1,"1955":2,"2018":1,"2019":5,"2020":2,"2024":1,"2036":3,"2054":1,"2085":1,"2087":1,"2146":1,"2148":1,"2149":1,"2150":1,"2153":1,"2155":1,"2160":1,"2164":1,"2166":1,"2168":1,"2299":1,"2309":1,"2333":1,"2335":1,"2603":1,"2645":5,"2912":4,"2913":5,"2914":1,"2919":1}}],["callbacks",{"0":{"90":1,"105":1,"229":1,"654":1,"1542":1,"1615":1,"1622":1,"1662":1,"1801":1,"1848":1,"1952":1,"2019":1,"2020":1,"2036":1,"2071":1,"2374":1,"2645":1},"1":{"1543":1,"1544":1,"1545":1,"1546":1,"1849":1,"2037":1,"2072":1,"2073":1,"2074":1,"2075":1},"2":{"93":1,"105":1,"114":2,"149":2,"191":4,"229":1,"236":2,"249":1,"277":3,"298":2,"307":2,"308":1,"328":1,"572":1,"623":1,"654":1,"658":1,"719":1,"1192":2,"1422":2,"1595":1,"1792":1,"1796":1,"1801":1,"1954":1,"1984":1,"2020":1,"2411":1,"2645":1,"2722":2}}],["call",{"0":{"1657":1},"2":{"114":1,"134":2,"176":1,"191":1,"249":2,"266":1,"294":1,"323":1,"371":1,"396":1,"399":1,"400":1,"572":1,"591":1,"596":1,"625":1,"633":1,"639":1,"645":1,"654":1,"671":1,"700":1,"704":1,"737":1,"762":1,"809":1,"813":1,"817":1,"819":1,"836":1,"840":1,"844":1,"846":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1226":1,"1230":1,"1234":1,"1236":1,"1243":1,"1264":1,"1278":1,"1281":1,"1303":1,"1347":1,"1413":1,"1422":1,"1594":1,"1655":1,"1656":2,"1657":1,"1658":1,"1790":1,"1796":1,"1844":1,"1939":1,"1948":2,"1951":1,"1988":1,"2039":2,"2051":1,"2066":1,"2198":2,"2270":1,"2277":1,"2283":2,"2446":1,"2466":1,"2644":3,"2645":1,"2646":1,"2657":1,"2734":2,"2750":3,"2787":1,"2886":1,"2928":2,"2942":3}}],["calls",{"2":{"50":1,"114":1,"133":1,"134":1,"191":2,"199":1,"266":2,"277":1,"541":1,"644":1,"2198":1,"2221":1,"2302":2,"2446":1,"2757":1,"2933":1,"2942":4}}],["candidate",{"2":{"397":1,"454":1,"2721":1}}],["candidates",{"2":{"397":1}}],["candybar",{"2":{"43":4}}],["canonical",{"2":{"373":1}}],["cannot",{"2":{"302":1,"468":1,"686":1,"692":3,"752":1,"764":1,"1497":1,"1586":1,"1604":1,"1616":1,"1717":1,"1751":1,"1933":1,"1948":2,"2016":1,"2181":1,"2381":1,"2386":1,"2391":1,"2402":1,"2475":1,"2489":1,"2498":1,"2557":1,"2562":1,"2567":1,"2582":1,"2603":1,"2673":1,"2674":2,"2676":1,"2726":1,"2728":1,"2730":1,"2740":2,"2743":1,"2750":2,"2778":1,"2879":1,"2901":3}}],["cannonkeys",{"2":{"191":1,"199":1,"211":22}}],["canada",{"2":{"2880":1}}],["canadian",{"2":{"149":1,"249":1,"2880":5}}],["canary60rgb",{"2":{"253":2}}],["canary",{"2":{"253":2}}],["canceling",{"2":{"1378":1}}],["cancelled",{"2":{"1378":1,"1735":1}}],["cancelling",{"0":{"657":1},"2":{"1527":1}}],["canceled",{"2":{"320":1,"657":1,"2919":1}}],["cancel",{"0":{"2339":1,"2363":1},"2":{"149":1,"655":1,"657":3,"1735":2,"2339":1,"2363":1,"2509":2,"2515":2,"2644":2}}],["can",{"0":{"560":1,"561":1,"562":1,"589":1,"610":1,"1312":1,"1329":1,"1330":1,"1334":1,"1342":1,"1344":1,"1365":1,"2300":1,"2402":1,"2467":1},"1":{"1313":1,"1314":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"0":1,"1":1,"9":1,"19":1,"39":1,"45":1,"49":1,"50":2,"52":1,"60":1,"70":3,"73":1,"74":1,"80":1,"83":1,"98":1,"112":2,"119":2,"120":2,"124":1,"138":1,"152":1,"173":1,"179":1,"191":1,"194":1,"195":2,"199":1,"203":2,"206":1,"210":1,"228":1,"231":1,"233":1,"240":1,"262":1,"263":1,"288":2,"303":2,"306":1,"315":1,"320":1,"323":1,"328":1,"347":1,"367":1,"368":1,"369":2,"371":1,"373":1,"374":2,"378":1,"380":1,"383":2,"387":4,"390":3,"391":1,"393":1,"396":1,"397":1,"408":1,"409":1,"410":1,"411":1,"416":1,"417":2,"418":1,"427":3,"428":2,"431":5,"433":1,"434":1,"435":1,"441":1,"457":1,"458":1,"471":1,"472":1,"474":1,"475":2,"480":1,"481":1,"486":1,"487":1,"489":2,"490":1,"492":3,"493":1,"494":1,"495":1,"496":1,"497":1,"498":1,"499":1,"502":1,"503":4,"505":1,"506":1,"507":1,"508":1,"509":1,"512":1,"520":3,"521":1,"522":1,"523":1,"541":1,"546":1,"548":1,"550":2,"551":1,"552":1,"555":1,"556":1,"557":2,"558":1,"559":2,"560":1,"563":2,"566":1,"567":1,"568":2,"570":1,"573":6,"576":2,"577":1,"578":2,"579":1,"590":1,"591":1,"598":1,"603":1,"608":1,"610":1,"611":1,"614":1,"615":1,"616":1,"617":1,"618":1,"623":1,"625":1,"627":1,"628":1,"643":2,"644":2,"646":2,"649":1,"654":1,"655":3,"656":1,"657":1,"658":2,"663":2,"666":1,"667":1,"668":1,"669":1,"670":4,"671":1,"673":1,"676":1,"678":1,"681":1,"683":2,"684":3,"685":1,"687":2,"690":1,"692":1,"696":1,"698":3,"700":1,"712":1,"714":1,"716":3,"717":4,"718":2,"719":1,"723":1,"743":1,"745":1,"746":2,"747":2,"748":1,"755":1,"756":1,"759":1,"760":1,"762":1,"763":1,"764":1,"765":1,"769":2,"794":1,"856":1,"920":1,"921":1,"955":1,"989":1,"1023":1,"1057":1,"1091":1,"1125":1,"1159":1,"1193":1,"1194":1,"1195":1,"1198":1,"1200":1,"1201":1,"1202":2,"1203":1,"1204":2,"1205":1,"1206":1,"1210":1,"1243":1,"1244":1,"1245":2,"1247":1,"1249":1,"1264":1,"1266":1,"1268":1,"1280":2,"1281":1,"1283":1,"1285":1,"1286":1,"1293":1,"1294":1,"1295":1,"1298":1,"1308":1,"1309":1,"1310":2,"1313":2,"1315":1,"1316":2,"1317":1,"1319":1,"1321":1,"1322":1,"1323":1,"1324":1,"1326":1,"1328":1,"1329":2,"1335":1,"1337":1,"1340":2,"1345":2,"1350":1,"1351":1,"1354":1,"1355":1,"1361":1,"1362":1,"1363":1,"1365":1,"1368":1,"1370":1,"1374":2,"1375":6,"1376":1,"1377":1,"1378":1,"1385":3,"1387":1,"1389":1,"1390":1,"1393":2,"1402":1,"1403":1,"1409":1,"1410":1,"1412":5,"1413":5,"1416":3,"1417":2,"1419":1,"1421":4,"1422":4,"1423":1,"1425":1,"1427":2,"1428":1,"1430":1,"1432":2,"1434":2,"1435":2,"1436":2,"1438":2,"1439":1,"1441":7,"1442":3,"1443":4,"1444":1,"1445":2,"1446":1,"1450":1,"1451":1,"1452":6,"1454":2,"1455":2,"1456":1,"1459":1,"1467":3,"1468":2,"1471":1,"1474":1,"1475":2,"1476":1,"1477":1,"1478":1,"1479":6,"1481":1,"1482":2,"1483":1,"1484":2,"1485":2,"1486":1,"1487":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":2,"1497":3,"1511":1,"1512":1,"1520":2,"1521":1,"1522":1,"1523":1,"1526":1,"1527":1,"1529":1,"1532":2,"1547":1,"1556":1,"1557":2,"1560":1,"1564":1,"1585":2,"1587":1,"1588":1,"1594":1,"1599":2,"1600":1,"1601":1,"1602":1,"1603":3,"1604":3,"1606":2,"1607":1,"1611":2,"1612":3,"1614":1,"1615":1,"1616":2,"1619":1,"1620":1,"1622":1,"1626":1,"1628":2,"1642":2,"1655":4,"1656":1,"1658":2,"1659":6,"1660":2,"1661":1,"1662":1,"1664":2,"1670":1,"1680":2,"1681":1,"1696":1,"1698":1,"1732":1,"1735":2,"1736":2,"1740":1,"1747":2,"1749":2,"1751":2,"1754":2,"1757":2,"1758":1,"1764":1,"1765":2,"1766":3,"1767":1,"1768":1,"1769":2,"1770":2,"1793":1,"1795":1,"1801":1,"1803":1,"1804":1,"1805":3,"1838":1,"1840":3,"1843":2,"1844":2,"1845":1,"1846":1,"1849":1,"1859":1,"1861":1,"1924":1,"1927":1,"1929":3,"1930":1,"1931":2,"1932":2,"1933":1,"1934":1,"1935":1,"1940":2,"1941":2,"1942":1,"1946":2,"1947":1,"1948":2,"1950":1,"1951":1,"1952":1,"1953":1,"1956":2,"1958":1,"1981":1,"1983":1,"1984":1,"1986":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":2,"1996":2,"1997":1,"2000":2,"2002":1,"2006":2,"2008":3,"2009":1,"2014":2,"2016":3,"2017":3,"2019":3,"2020":2,"2021":4,"2029":1,"2030":1,"2032":2,"2035":1,"2039":1,"2042":2,"2045":1,"2049":1,"2050":3,"2051":1,"2058":1,"2060":3,"2063":3,"2065":1,"2066":2,"2067":1,"2068":1,"2069":1,"2072":1,"2074":2,"2075":1,"2085":1,"2087":1,"2156":1,"2161":2,"2162":1,"2164":1,"2165":1,"2166":1,"2167":1,"2170":1,"2172":1,"2173":1,"2178":1,"2182":1,"2183":1,"2184":1,"2187":1,"2188":2,"2189":3,"2190":1,"2191":2,"2205":1,"2206":2,"2207":3,"2215":1,"2216":1,"2242":1,"2243":1,"2244":1,"2251":1,"2252":2,"2253":1,"2254":1,"2257":1,"2258":1,"2264":2,"2265":2,"2266":3,"2267":1,"2268":3,"2269":1,"2270":4,"2271":2,"2272":1,"2273":1,"2279":2,"2280":1,"2283":2,"2284":1,"2285":2,"2286":2,"2287":3,"2288":1,"2290":1,"2291":2,"2293":1,"2294":1,"2297":1,"2298":1,"2301":2,"2302":1,"2309":1,"2310":2,"2311":1,"2312":2,"2315":1,"2317":1,"2319":1,"2321":1,"2322":2,"2323":4,"2324":3,"2337":1,"2338":1,"2339":1,"2368":2,"2370":1,"2374":1,"2383":1,"2388":1,"2393":1,"2395":1,"2397":1,"2400":2,"2403":5,"2405":1,"2407":2,"2410":4,"2411":5,"2415":1,"2416":3,"2418":2,"2419":1,"2420":2,"2422":4,"2423":2,"2424":2,"2425":3,"2428":2,"2435":1,"2439":3,"2440":2,"2442":1,"2443":1,"2445":1,"2446":1,"2448":1,"2449":1,"2451":1,"2453":1,"2457":1,"2459":4,"2460":2,"2462":2,"2463":2,"2466":2,"2467":1,"2468":1,"2473":1,"2474":1,"2475":1,"2476":1,"2479":1,"2494":1,"2495":2,"2496":2,"2497":1,"2498":1,"2499":1,"2501":3,"2528":1,"2547":2,"2548":2,"2550":1,"2551":6,"2552":1,"2559":3,"2560":3,"2562":2,"2563":1,"2566":2,"2567":1,"2569":2,"2572":3,"2573":1,"2576":4,"2577":3,"2579":1,"2580":1,"2583":3,"2585":3,"2586":1,"2587":2,"2589":1,"2590":2,"2592":1,"2593":1,"2603":2,"2605":1,"2607":1,"2609":1,"2610":1,"2611":1,"2612":1,"2621":2,"2622":2,"2627":4,"2628":1,"2629":1,"2630":1,"2632":4,"2633":7,"2643":2,"2644":1,"2645":2,"2651":2,"2655":1,"2662":2,"2666":1,"2667":4,"2669":2,"2670":1,"2674":1,"2675":4,"2676":4,"2677":1,"2679":1,"2680":1,"2684":3,"2687":1,"2688":2,"2693":1,"2694":1,"2695":1,"2696":1,"2698":1,"2702":2,"2703":1,"2704":3,"2707":1,"2709":1,"2712":2,"2713":1,"2715":1,"2719":1,"2720":1,"2721":6,"2722":2,"2723":1,"2724":2,"2725":1,"2728":1,"2746":1,"2747":4,"2748":2,"2749":37,"2750":13,"2756":1,"2757":2,"2760":1,"2767":1,"2775":1,"2780":2,"2781":2,"2783":2,"2784":1,"2804":1,"2812":1,"2827":1,"2844":1,"2845":2,"2864":1,"2869":1,"2871":1,"2877":1,"2879":1,"2882":2,"2883":3,"2884":1,"2885":3,"2886":3,"2887":2,"2892":1,"2894":2,"2895":1,"2899":5,"2900":2,"2901":9,"2908":4,"2909":3,"2910":2,"2917":3,"2919":3,"2923":1,"2927":2,"2930":1,"2932":1,"2933":2,"2934":1,"2936":2,"2937":2,"2938":2,"2939":2,"2942":8}}],["chunks",{"2":{"2283":1}}],["chunder",{"2":{"348":1}}],["chnu",{"2":{"1919":1,"2532":1}}],["chnd",{"2":{"1919":1,"2532":1}}],["ch9",{"2":{"1919":1,"2532":1}}],["ch8",{"2":{"1919":1,"2532":1}}],["ch7",{"2":{"1919":1,"2532":1}}],["ch6",{"2":{"1919":1,"2532":1}}],["ch582",{"2":{"2728":1,"2737":1}}],["ch5",{"2":{"1919":1,"2532":1}}],["ch4",{"2":{"718":1,"1919":1,"2532":1}}],["ch3",{"2":{"718":1,"1562":1,"1919":1,"2532":1}}],["chyn",{"2":{"718":1,"1300":2}}],["chy",{"2":{"718":1,"1477":1}}],["ch2",{"2":{"714":2,"715":2,"718":1,"1919":1,"2532":1}}],["ch16",{"2":{"1919":1,"2532":1}}],["ch15",{"2":{"1919":1,"2532":1}}],["ch14",{"2":{"1919":1,"2532":1}}],["ch13",{"2":{"1919":1,"2532":1}}],["ch12",{"2":{"1919":1,"2532":1}}],["ch11",{"2":{"1919":1,"2532":1}}],["ch10",{"2":{"1919":1,"2532":1}}],["ch1",{"2":{"713":2,"714":2,"715":2,"718":1,"719":1,"1477":1,"1919":1,"2532":1}}],["ch",{"2":{"199":1,"222":1,"616":1}}],["chrome",{"2":{"2582":1}}],["chromeos",{"2":{"191":1}}],["chromatic",{"2":{"1479":2,"1480":3,"1484":5}}],["chromatonemini",{"2":{"236":1}}],["christmas",{"2":{"49":2,"143":2,"181":2,"2181":1,"2183":2,"2184":2,"2185":4,"2537":1,"2887":1}}],["chosfox",{"2":{"2567":1}}],["chose",{"2":{"1347":1,"1476":1,"2592":1,"2612":1}}],["chosen",{"2":{"765":1,"1194":1,"1196":1,"1201":1,"1245":1,"1266":1,"1674":1,"1931":2,"2269":1,"2408":1,"2695":1,"2696":1,"2698":2,"2837":1}}],["choosing",{"0":{"1199":1,"2700":1},"1":{"1200":1,"1201":1,"1202":1,"2701":1,"2702":1,"2703":1,"2704":1,"2705":1,"2706":1},"2":{"1190":1,"1195":1,"1198":1,"2568":1,"2660":1}}],["chooses",{"2":{"1406":1,"2743":1}}],["choose",{"2":{"520":2,"522":1,"595":1,"623":1,"698":1,"1193":1,"1196":1,"1245":1,"1406":1,"1474":1,"1758":1,"1931":1,"2322":1,"2403":1,"2450":2,"2570":1,"2587":1,"2599":1,"2619":1,"2645":1,"2649":1,"2651":1,"2694":1,"2894":1,"2908":1,"2917":1}}],["chord",{"0":{"2916":1},"2":{"1448":1,"1599":1,"1606":3,"1609":1,"1616":1,"2285":1,"2291":1,"2293":12,"2914":2,"2916":2}}],["chorded",{"2":{"1378":1,"2284":1,"2293":1}}],["chording",{"2":{"572":1,"1377":1,"1596":1,"2911":1}}],["chords",{"2":{"562":1,"1478":1,"2166":1,"2290":1,"2291":1,"2293":1,"2915":2,"2916":1}}],["chordal",{"0":{"289":1,"2914":1,"2915":1},"1":{"2915":1,"2916":1},"2":{"289":4,"294":2,"2847":1,"2862":1,"2914":14,"2915":7,"2916":5}}],["chore",{"2":{"160":1,"211":1,"249":1,"308":2}}],["choc",{"2":{"143":2}}],["choco60",{"2":{"143":2}}],["choices",{"2":{"617":1,"2572":1,"2573":1,"2862":1}}],["choice",{"2":{"74":1,"124":1,"1560":1,"1607":1,"1749":1,"2050":1,"2253":1,"2290":1,"2293":1,"2310":1,"2651":1,"2652":1,"2672":1,"2673":1,"2700":1,"2707":2}}],["children",{"2":{"1532":1}}],["child",{"2":{"1532":5,"2722":1}}],["chili",{"2":{"143":2,"211":1}}],["chime",{"2":{"649":1,"1480":1}}],["chimera",{"2":{"143":8,"149":1,"2434":1}}],["chiffre",{"2":{"143":2,"222":1,"236":1}}],["chidori",{"2":{"143":2}}],["chipid",{"2":{"2501":2}}],["chip",{"2":{"130":1,"276":1,"512":1,"617":2,"720":1,"728":2,"736":1,"742":1,"743":2,"1368":1,"1675":1,"1943":1,"1946":1,"1998":1,"1999":1,"2006":1,"2011":1,"2014":4,"2178":1,"2367":2,"2368":3,"2424":1,"2458":1,"2495":2,"2605":1,"2676":3,"2698":2,"2722":1,"2728":1,"2747":1,"2749":11,"2811":1}}],["chipsets",{"2":{"2369":1}}],["chipset",{"2":{"2368":1}}],["chips",{"2":{"123":1,"617":1,"743":4,"746":2,"747":2,"755":1,"756":1,"1317":1,"1392":1,"2367":1,"2382":1,"2483":2,"2698":1,"2704":1,"2728":1}}],["chibios",{"0":{"10":2,"11":1,"69":1,"77":1,"263":1,"420":1,"421":1,"422":1,"424":2,"730":1,"765":1,"801":1,"827":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1215":1,"1245":1,"1266":1,"1292":1,"1561":1,"1984":1,"2668":1},"1":{"421":1,"422":1,"423":1,"424":1,"766":1,"767":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1562":1,"1563":1,"2669":1,"2670":1,"2671":1},"2":{"10":6,"11":1,"24":1,"49":5,"50":5,"65":4,"69":4,"73":1,"74":1,"77":1,"93":1,"108":2,"113":1,"114":9,"133":1,"134":8,"149":6,"160":4,"163":1,"176":11,"191":7,"199":6,"211":2,"222":6,"236":6,"249":3,"266":3,"277":1,"294":4,"308":2,"328":1,"405":5,"420":3,"421":2,"422":8,"423":7,"512":1,"519":1,"609":1,"692":1,"693":1,"698":1,"713":2,"718":2,"720":1,"730":1,"759":1,"765":1,"794":1,"801":1,"827":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1192":1,"1193":1,"1196":1,"1200":3,"1201":3,"1215":1,"1296":1,"1300":2,"1562":1,"1563":1,"1950":1,"1984":1,"2271":1,"2272":1,"2403":2,"2410":1,"2450":1,"2668":4,"2669":2,"2670":2,"2671":3,"2689":2,"2690":1,"2691":1,"2700":10,"2702":4,"2703":3,"2704":1,"2705":2,"2706":2,"2719":1,"2721":5,"2846":1,"2927":1}}],["chevron",{"2":{"2063":4,"2887":1}}],["chew",{"2":{"300":2,"308":1}}],["cherry",{"2":{"2883":1}}],["cherryb",{"2":{"211":4}}],["chere",{"2":{"2662":1}}],["cherish",{"2":{"176":1}}],["cheap",{"2":{"114":1,"134":1,"2498":1}}],["checkmark",{"2":{"2724":1}}],["checkbox",{"2":{"2652":1}}],["checklist",{"2":{"2569":1,"2718":1}}],["checklists",{"0":{"398":1,"2718":1},"1":{"399":1,"400":1,"401":1,"402":1,"403":1,"2719":1,"2720":1,"2721":1,"2722":1,"2723":1,"2724":1,"2725":1}}],["checker",{"2":{"2427":1}}],["checkerboards",{"2":{"143":3,"149":1,"211":1}}],["checked",{"2":{"405":1,"419":1,"504":1,"1512":1,"1613":1,"2043":1,"2045":1,"2266":1,"2403":4,"2633":2,"2778":1}}],["checkout",{"2":{"361":1,"403":2,"405":3,"422":2,"423":4,"424":2,"611":1,"1415":1,"1440":2,"2600":4,"2632":1,"2633":3,"2660":1}}],["checking",{"0":{"371":1,"1375":1},"1":{"1376":1,"1377":1,"1378":1},"2":{"176":1,"199":2,"308":1,"543":1,"551":1,"584":1,"586":1,"1378":1,"1455":1,"2166":2,"2288":1,"2312":1,"2580":1,"2608":2,"2622":1,"2702":1,"2718":1,"2900":1,"2908":1,"2920":1}}],["check",{"2":{"49":1,"87":1,"112":1,"114":2,"134":2,"160":2,"163":1,"176":6,"199":3,"211":2,"214":1,"222":2,"234":1,"236":1,"249":3,"254":1,"266":1,"277":2,"308":1,"333":1,"338":3,"360":1,"368":1,"371":2,"372":1,"377":1,"397":1,"433":3,"438":1,"572":2,"605":1,"613":2,"645":7,"683":1,"684":1,"685":1,"692":1,"751":1,"1297":1,"1312":1,"1330":1,"1335":1,"1361":1,"1367":2,"1368":1,"1375":2,"1422":2,"1425":3,"1435":1,"1439":1,"1442":1,"1450":1,"1455":1,"1511":1,"1519":1,"1522":1,"1548":1,"1613":1,"1615":1,"1616":1,"1764":1,"1823":1,"1824":1,"1826":1,"1827":2,"1829":1,"1830":3,"1832":1,"1833":4,"1835":1,"1836":5,"1844":3,"1972":1,"2006":2,"2021":1,"2025":1,"2027":1,"2043":1,"2066":3,"2177":3,"2179":1,"2183":1,"2268":2,"2303":1,"2312":2,"2313":1,"2410":2,"2427":7,"2433":5,"2459":1,"2473":1,"2495":1,"2496":1,"2501":2,"2609":1,"2610":1,"2630":1,"2632":1,"2660":1,"2668":1,"2677":1,"2776":1,"2778":1,"2853":1,"2875":2,"2882":1,"2937":1}}],["checksum",{"2":{"176":1,"2410":1,"2501":2}}],["checks",{"2":{"36":2,"149":1,"199":1,"236":1,"263":1,"308":1,"338":3,"360":1,"397":1,"438":1,"457":1,"645":1,"1377":1,"1422":3,"1519":1,"1763":1,"2042":1,"2303":2,"2310":1,"2378":1,"2380":1,"2385":1,"2600":1,"2633":1}}],["chconf",{"2":{"50":2,"86":1}}],["challenges",{"2":{"2727":1}}],["challenge",{"2":{"663":1,"1446":1}}],["chatter",{"0":{"1406":1},"1":{"1407":1,"1408":1,"1409":1,"1410":1,"1411":1},"2":{"1406":1}}],["chat",{"0":{"2890":1},"2":{"610":1,"617":1,"642":1,"1634":1,"2474":1,"2610":1}}],["chains",{"2":{"1287":1,"1532":2,"2682":1}}],["chained",{"2":{"1280":1,"2178":1}}],["chain",{"2":{"387":1,"701":2,"705":1,"708":1,"1282":2,"1293":1,"1304":1,"1307":1,"1374":1,"1532":7,"1533":1,"2461":1,"2848":2,"2870":1,"2876":1,"2908":1,"2933":2}}],["chaining",{"2":{"294":1}}],["chapter1",{"2":{"266":1}}],["charging",{"2":{"2669":1}}],["charge",{"2":{"49":2}}],["charlieplex",{"2":{"2456":1}}],["charlieplexed",{"2":{"884":1}}],["chartreuse",{"2":{"2067":2,"2205":2}}],["chars",{"2":{"249":1,"266":1,"1948":2,"2283":2}}],["character",{"0":{"1696":1},"2":{"520":1,"528":1,"1330":1,"1480":1,"1490":1,"1521":1,"1587":1,"1667":2,"1696":3,"1707":4,"1708":1,"1713":1,"1714":2,"1715":1,"1716":2,"1720":1,"1722":1,"1723":1,"1943":2,"1948":5,"2212":1,"2214":2,"2215":1,"2223":1,"2224":1,"2227":1,"2228":1,"2229":1,"2230":1,"2239":1,"2281":2,"2283":5,"2310":1,"2317":1,"2322":1,"2323":4,"2324":1,"2340":1,"2341":1,"2360":1,"2411":1,"2434":1,"2465":2,"2643":1,"2748":2,"2784":1,"2877":1,"2879":2,"2915":1}}],["characters",{"0":{"1352":1,"2467":1,"2468":1},"2":{"211":1,"613":1,"1450":2,"1493":2,"1499":1,"1502":1,"1509":1,"1521":1,"1522":1,"1529":2,"1693":2,"1696":3,"1709":1,"1711":1,"1728":1,"1730":1,"1756":2,"1940":1,"1948":1,"2212":1,"2215":1,"2216":1,"2221":1,"2223":1,"2225":1,"2227":1,"2278":1,"2283":1,"2322":1,"2323":5,"2324":1,"2342":1,"2355":1,"2374":2,"2411":4,"2427":1,"2463":1,"2467":1,"2468":1,"2556":1,"2557":1,"2560":1,"2719":1,"2761":1,"2762":2,"2839":1,"2845":2,"2849":1,"2877":1,"2879":4,"2901":1}}],["charactermatrix",{"2":{"31":1,"1949":1}}],["charon",{"2":{"211":1}}],["charue",{"2":{"211":2}}],["charybdis",{"2":{"176":2,"311":24,"317":3}}],["char",{"0":{"1276":1,"1707":1,"1709":1,"1711":1,"1713":1,"1715":1,"2221":1,"2223":1,"2225":1,"2227":1,"2229":2,"2342":1},"1":{"1277":1,"1708":1,"1710":1,"1712":1,"1714":1,"1716":1,"2222":1,"2224":1,"2226":1,"2228":1,"2230":2,"2343":1},"2":{"114":1,"134":1,"529":1,"1528":3,"1529":6,"1696":1,"1708":1,"1710":1,"1712":1,"1715":1,"1845":1,"1940":1,"1941":4,"1948":12,"1949":6,"2068":1,"2222":1,"2224":1,"2226":1,"2228":1,"2230":1,"2278":1,"2279":4,"2283":12,"2324":1,"2343":1,"2720":1,"2750":4,"2886":1,"2915":1,"2941":1}}],["chances",{"2":{"594":1,"2572":1,"2631":1,"2883":1}}],["chance",{"2":{"294":1,"594":1,"1316":1,"1609":1,"2463":1,"2719":1}}],["changing",{"0":{"2206":1,"2562":1,"2563":1,"2564":1,"2757":1},"2":{"194":1,"214":1,"233":1,"236":1,"559":1,"596":1,"655":1,"1406":1,"1413":2,"1765":1,"2039":1,"2180":3,"2189":1,"2372":1,"2460":1,"2468":1,"2472":1,"2749":12}}],["changelist",{"0":{"114":1,"134":1,"149":1,"160":1,"176":1,"191":1,"199":1,"211":1,"222":1,"236":1,"249":1,"266":1,"277":1,"285":1,"294":1,"308":1,"317":1,"328":1,"333":1}}],["changelogs",{"2":{"266":1,"407":1}}],["changelog",{"0":{"9":1,"19":1,"39":1,"52":1,"66":1,"78":1,"96":1,"115":1,"135":1,"150":1,"161":1,"177":1,"192":1,"200":1,"212":1,"223":1,"237":1,"250":1,"267":1,"278":1,"286":1,"295":1,"309":1,"318":1,"329":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1,"330":1,"331":1,"332":1,"333":1},"2":{"99":1,"149":2,"397":3,"403":1,"411":2,"2897":1}}],["changed",{"0":{"1543":1,"1545":1},"2":{"14":1,"90":1,"114":1,"156":1,"160":1,"169":1,"176":1,"182":1,"186":1,"191":1,"199":1,"214":1,"215":1,"240":1,"256":1,"307":1,"308":1,"397":1,"457":4,"497":1,"611":2,"622":2,"623":4,"1195":1,"1198":1,"1202":1,"1409":1,"1413":1,"1423":1,"1543":1,"1545":1,"1602":1,"1669":1,"1749":1,"1765":1,"1768":1,"1840":1,"1945":1,"1948":2,"2019":2,"2021":4,"2030":1,"2049":1,"2060":1,"2266":1,"2297":1,"2321":1,"2323":1,"2333":1,"2335":1,"2403":1,"2554":1,"2633":3,"2645":7,"2901":2,"2942":3}}],["changesets",{"2":{"182":1}}],["changes",{"0":{"5":1,"20":1,"40":1,"46":1,"47":1,"53":1,"61":1,"66":1,"67":1,"68":1,"72":1,"78":1,"79":1,"85":1,"91":1,"96":1,"101":1,"106":1,"115":1,"121":1,"129":1,"131":1,"135":1,"139":1,"144":1,"150":1,"155":1,"161":1,"165":1,"171":1,"177":1,"180":1,"187":1,"192":1,"193":1,"194":1,"198":1,"200":1,"201":1,"205":1,"206":1,"208":1,"212":1,"213":1,"216":1,"223":1,"225":1,"227":1,"237":1,"239":1,"240":1,"242":1,"244":1,"250":1,"252":1,"261":1,"267":1,"269":1,"278":1,"280":1,"286":1,"290":1,"295":1,"299":1,"309":1,"310":1,"318":1,"321":1,"329":1,"393":1,"394":1,"397":1,"407":1,"408":1,"411":1,"598":1,"2627":1,"2629":1,"2633":1,"2634":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"48":1,"49":1,"50":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"62":1,"63":1,"64":1,"67":1,"68":1,"69":2,"70":2,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":2,"81":2,"82":2,"83":2,"84":2,"85":1,"86":2,"87":2,"88":2,"89":2,"90":2,"91":1,"92":2,"93":2,"94":2,"95":2,"97":1,"98":1,"99":1,"100":1,"101":1,"102":2,"103":2,"104":2,"105":2,"106":1,"107":2,"108":2,"109":2,"110":2,"111":2,"112":2,"113":2,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":2,"123":2,"124":2,"125":2,"126":2,"127":2,"128":2,"129":1,"130":2,"131":2,"132":2,"133":2,"134":1,"136":1,"137":1,"138":1,"139":1,"140":2,"141":2,"142":2,"143":2,"144":1,"145":2,"146":2,"147":2,"148":2,"149":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":2,"157":2,"158":2,"159":2,"160":1,"162":1,"163":1,"164":1,"165":1,"166":2,"167":2,"168":2,"169":2,"170":2,"171":1,"172":2,"173":2,"174":2,"175":2,"176":1,"178":1,"179":1,"180":1,"181":2,"182":2,"183":2,"184":2,"185":2,"186":2,"187":1,"188":2,"189":2,"190":2,"191":1,"193":1,"194":2,"195":2,"196":2,"197":2,"198":1,"199":1,"201":1,"202":2,"203":2,"204":2,"205":1,"206":2,"207":2,"208":1,"209":2,"210":2,"211":1,"213":1,"214":2,"215":2,"216":1,"217":2,"218":2,"219":2,"220":2,"221":2,"222":1,"224":1,"225":1,"226":2,"227":1,"228":2,"229":2,"230":2,"231":2,"232":2,"233":2,"234":2,"235":2,"236":1,"238":1,"239":1,"240":2,"241":2,"242":1,"243":2,"244":2,"245":2,"246":2,"247":2,"248":2,"249":1,"251":1,"252":1,"253":2,"254":2,"255":2,"256":2,"257":2,"258":2,"259":2,"260":2,"261":1,"262":2,"263":2,"264":1,"265":1,"266":1,"268":1,"269":1,"270":2,"271":2,"272":2,"273":2,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":2,"282":1,"283":1,"284":1,"285":1,"287":1,"288":1,"289":1,"290":1,"291":2,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":2,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":2,"312":2,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":2,"323":2,"324":2,"325":2,"326":1,"327":1,"328":1,"330":1,"331":1,"332":1,"333":1,"394":1,"395":1,"396":1,"397":1,"398":1,"399":1,"400":1,"401":1,"402":1,"403":1,"404":1,"405":1,"406":1,"409":1,"410":1,"411":1,"412":1},"2":{"0":3,"2":1,"9":2,"19":3,"22":1,"25":1,"28":1,"31":4,"32":1,"34":4,"36":1,"39":2,"45":1,"52":2,"67":1,"74":1,"86":1,"87":1,"103":2,"105":1,"107":1,"114":2,"116":1,"125":1,"126":2,"131":2,"133":1,"134":2,"149":1,"156":1,"163":2,"167":1,"172":1,"175":1,"176":3,"182":1,"184":1,"185":1,"187":2,"188":1,"191":4,"198":2,"199":1,"201":3,"206":1,"211":1,"213":3,"222":2,"224":3,"231":1,"233":3,"236":2,"238":2,"247":1,"251":1,"254":1,"262":1,"263":1,"265":3,"272":1,"273":1,"275":1,"276":1,"284":1,"294":1,"303":1,"307":3,"328":1,"332":1,"393":1,"394":1,"397":5,"398":1,"399":3,"400":3,"401":3,"402":2,"405":3,"406":4,"407":1,"408":9,"410":2,"411":1,"463":1,"467":1,"541":1,"562":1,"578":1,"607":1,"611":6,"613":1,"615":1,"617":4,"618":1,"638":1,"664":1,"684":1,"714":1,"715":1,"718":1,"1407":1,"1410":5,"1422":1,"1484":3,"1659":1,"1675":1,"1792":1,"1913":2,"1946":6,"1954":1,"2025":1,"2063":4,"2190":1,"2268":1,"2271":1,"2285":2,"2316":3,"2372":1,"2398":1,"2403":4,"2411":1,"2449":1,"2569":1,"2579":1,"2580":1,"2583":1,"2590":1,"2594":1,"2603":1,"2626":2,"2627":8,"2629":1,"2630":2,"2631":1,"2633":6,"2634":1,"2645":2,"2719":1,"2721":2,"2722":5,"2723":1,"2750":1,"2793":1,"2801":1,"2840":1,"2895":1,"2896":2,"2897":1,"2901":3,"2928":1,"2932":1,"2942":2}}],["change",{"0":{"0":1,"9":1,"19":1,"39":1,"52":1,"57":1,"71":1,"272":1,"395":1,"660":1,"1423":1,"1917":1,"2199":1,"2201":1,"2932":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"396":1,"1424":1,"1425":1,"1426":1},"2":{"0":3,"9":2,"19":2,"23":1,"31":2,"39":2,"45":1,"49":1,"52":2,"64":2,"87":1,"90":2,"93":1,"94":1,"95":1,"105":3,"114":4,"118":1,"133":1,"134":3,"149":2,"160":2,"176":2,"182":1,"188":1,"191":7,"198":2,"199":4,"201":1,"211":2,"213":1,"215":1,"249":4,"255":1,"257":1,"258":1,"259":2,"262":1,"263":4,"266":5,"271":1,"272":2,"277":2,"285":1,"294":1,"307":1,"312":1,"320":1,"338":6,"373":1,"393":5,"395":1,"397":4,"403":1,"405":1,"408":1,"409":1,"410":1,"411":1,"492":1,"497":1,"520":2,"521":1,"552":1,"555":1,"611":1,"613":2,"626":1,"660":1,"683":1,"698":1,"714":1,"719":1,"898":1,"933":1,"967":1,"1001":1,"1035":1,"1069":1,"1103":1,"1137":1,"1171":1,"1192":1,"1195":2,"1198":2,"1204":1,"1205":1,"1224":1,"1284":1,"1346":1,"1359":1,"1407":4,"1410":9,"1413":14,"1416":1,"1422":1,"1453":1,"1478":1,"1481":2,"1484":1,"1485":1,"1496":1,"1550":1,"1557":1,"1562":1,"1599":2,"1603":1,"1611":1,"1617":1,"1619":1,"1642":2,"1660":2,"1737":1,"1747":2,"1756":1,"1758":1,"1767":1,"1791":1,"1803":1,"1806":1,"1931":1,"1948":1,"1989":1,"2025":1,"2030":1,"2039":3,"2043":2,"2064":1,"2065":1,"2159":1,"2163":1,"2179":1,"2194":2,"2199":4,"2246":2,"2247":2,"2251":1,"2268":2,"2315":2,"2331":1,"2332":1,"2368":1,"2374":1,"2409":1,"2475":1,"2548":3,"2557":1,"2560":1,"2567":1,"2569":1,"2579":2,"2633":1,"2644":1,"2645":2,"2656":2,"2662":1,"2667":1,"2684":1,"2710":2,"2719":2,"2722":1,"2778":2,"2861":1,"2901":2,"2917":1,"2919":1,"2942":1}}],["channels",{"0":{"689":1},"1":{"690":1,"691":1,"692":1,"693":1},"2":{"690":1,"692":2,"698":2,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1285":1,"2424":1}}],["channel",{"2":{"14":2,"228":1,"690":1,"692":2,"693":1,"696":5,"713":1,"714":1,"718":2,"731":1,"734":3,"802":1,"805":3,"818":3,"828":1,"831":3,"845":3,"860":1,"863":3,"877":3,"890":1,"893":3,"909":3,"925":1,"928":3,"944":3,"959":1,"962":3,"978":3,"993":1,"996":3,"1012":3,"1027":1,"1030":3,"1046":3,"1061":1,"1064":3,"1080":3,"1095":1,"1098":3,"1114":3,"1129":1,"1132":3,"1148":3,"1163":1,"1166":3,"1182":3,"1216":1,"1219":3,"1235":3,"1285":1,"1300":4,"1471":2,"1477":1,"1551":2,"1562":2,"1564":1,"1913":1,"1918":2,"1919":36,"1920":1,"2532":36}}],["cumbersome",{"2":{"1616":1}}],["cuprintf",{"2":{"1327":1}}],["cuint32",{"2":{"654":1}}],["cuint16",{"2":{"195":1,"1497":1,"2160":2,"2161":1,"2168":1,"2750":4,"2899":1,"2900":2,"2901":1,"2910":1,"2913":2}}],["cu80",{"2":{"143":2,"149":1,"217":4,"222":1,"249":1}}],["cu75",{"2":{"143":2,"149":1}}],["cu24",{"2":{"143":2,"149":1}}],["cutters",{"2":{"2414":1,"2421":1}}],["cutoff",{"2":{"2000":1}}],["cutie",{"2":{"285":1}}],["cut",{"2":{"116":1,"1480":1,"2000":1,"2273":1,"2424":1,"2509":2,"2515":2,"2563":1}}],["currency",{"2":{"2467":1}}],["currentreport",{"2":{"2023":8}}],["currently",{"2":{"7":1,"65":1,"103":1,"203":1,"221":1,"262":1,"288":1,"316":1,"371":1,"373":1,"439":1,"568":2,"687":1,"712":1,"746":1,"747":2,"750":1,"752":1,"754":2,"756":2,"765":1,"1263":1,"1375":1,"1388":1,"1389":1,"1390":1,"1392":1,"1396":1,"1407":1,"1417":1,"1427":1,"1448":1,"1462":1,"1463":1,"1464":1,"1475":1,"1477":1,"1530":1,"1593":1,"1639":1,"1655":1,"1672":1,"1691":1,"1717":1,"1843":1,"1847":1,"1859":1,"1861":1,"1863":1,"1865":1,"1871":1,"1872":1,"1901":1,"1903":1,"1908":1,"1948":2,"1953":1,"1958":1,"2008":1,"2014":1,"2045":1,"2050":1,"2063":1,"2070":1,"2085":1,"2087":1,"2089":1,"2091":1,"2097":1,"2098":1,"2145":1,"2147":1,"2152":1,"2171":1,"2177":3,"2178":1,"2188":1,"2193":1,"2210":1,"2211":1,"2247":1,"2254":2,"2269":1,"2283":1,"2293":1,"2299":1,"2302":1,"2310":1,"2324":1,"2328":1,"2337":1,"2338":1,"2339":1,"2353":1,"2367":2,"2368":1,"2369":1,"2370":1,"2377":1,"2381":1,"2384":2,"2393":1,"2395":1,"2489":1,"2523":1,"2560":1,"2567":1,"2584":1,"2605":1,"2606":1,"2619":1,"2633":1,"2746":2,"2790":1,"2862":3,"2929":1}}],["current",{"0":{"4":1,"729":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1764":1},"2":{"30":1,"33":1,"49":1,"50":1,"88":1,"104":1,"114":1,"119":3,"176":2,"199":1,"266":1,"273":1,"279":1,"308":2,"397":1,"399":1,"406":3,"427":1,"452":1,"461":1,"473":1,"550":1,"561":1,"563":1,"568":4,"572":1,"590":1,"617":1,"622":1,"623":1,"637":6,"656":1,"698":1,"725":1,"728":2,"729":2,"854":2,"858":2,"898":1,"918":2,"923":2,"933":1,"953":2,"957":2,"967":1,"987":2,"991":2,"1001":1,"1021":2,"1025":2,"1035":1,"1055":2,"1059":2,"1069":1,"1089":2,"1093":2,"1103":1,"1123":2,"1127":2,"1137":1,"1157":2,"1161":2,"1171":1,"1224":1,"1262":1,"1375":4,"1378":1,"1416":1,"1421":2,"1422":2,"1425":4,"1443":1,"1515":1,"1517":1,"1527":1,"1533":1,"1564":1,"1574":1,"1575":1,"1576":1,"1581":1,"1594":1,"1595":1,"1599":1,"1614":3,"1618":1,"1619":1,"1645":1,"1672":1,"1675":2,"1722":1,"1723":2,"1759":1,"1764":1,"1775":1,"1857":1,"1877":1,"1878":1,"1887":1,"1888":1,"1897":1,"1898":1,"1900":1,"1902":1,"1904":1,"1906":1,"1909":1,"1941":3,"1942":1,"1948":10,"2019":3,"2021":1,"2025":1,"2030":1,"2031":1,"2035":1,"2039":4,"2063":2,"2083":1,"2103":1,"2104":1,"2109":1,"2110":1,"2115":1,"2116":1,"2125":1,"2126":1,"2135":1,"2136":1,"2141":1,"2142":1,"2144":1,"2146":1,"2148":1,"2150":1,"2153":1,"2166":1,"2183":1,"2204":6,"2247":2,"2252":1,"2269":4,"2279":3,"2280":1,"2283":9,"2288":3,"2293":1,"2311":1,"2312":1,"2316":3,"2320":1,"2327":1,"2356":1,"2370":1,"2373":4,"2416":1,"2459":2,"2475":1,"2510":1,"2515":1,"2518":1,"2521":1,"2536":3,"2548":1,"2570":1,"2571":1,"2572":1,"2607":1,"2627":10,"2632":1,"2634":1,"2645":1,"2651":1,"2663":1,"2677":3,"2685":1,"2722":1,"2746":1,"2750":2,"2769":1,"2873":1,"2875":2,"2882":1,"2886":3,"2901":6,"2913":1,"2929":1,"2932":2}}],["cur",{"2":{"2310":3,"2311":3,"2312":4}}],["curious",{"2":{"1531":1}}],["curly",{"2":{"2219":1,"2311":1,"2539":2,"2558":2,"2662":1}}],["curl",{"2":{"370":1,"371":1,"373":3,"1315":1}}],["cursorstyle",{"2":{"2662":1}}],["cursor",{"0":{"1698":1,"1702":1,"1705":1},"1":{"1699":1,"1703":1,"1706":1},"2":{"62":1,"114":1,"175":1,"176":2,"1639":1,"1642":1,"1695":1,"1696":1,"1699":3,"1701":1,"1702":1,"1703":3,"1705":1,"1707":1,"1722":2,"1730":1,"1927":8,"1928":8,"1929":10,"1930":14,"1931":12,"1932":6,"1933":8,"1934":2,"1942":1,"1948":19,"2008":1,"2016":5,"2024":2,"2159":2,"2219":1,"2283":19,"2411":1,"2533":8,"2825":1}}],["curved",{"2":{"2006":3}}],["curves",{"2":{"84":1,"1933":1}}],["curve",{"2":{"49":1,"74":1,"93":1,"1928":1,"1930":1,"1933":1,"2185":1,"2750":1}}],["customers",{"2":{"2567":3,"2569":1}}],["customer",{"2":{"606":1}}],["customarily",{"2":{"255":1}}],["customary",{"2":{"179":1,"255":1}}],["custommk",{"2":{"102":3,"1388":1}}],["customising",{"0":{"2603":1},"2":{"2603":1}}],["customisation",{"2":{"1632":1}}],["customisations",{"2":{"24":1}}],["customised",{"2":{"2568":1}}],["customise",{"2":{"1319":1,"1526":1,"2599":1,"2899":1}}],["customize",{"0":{"624":1,"2033":1,"2045":1,"2579":1},"1":{"625":1,"2034":1,"2035":1,"2036":1,"2037":1},"2":{"553":1,"594":1,"624":1,"641":1,"1740":1,"1743":1,"1754":1,"2446":1,"2646":1,"2707":1,"2912":1}}],["customized",{"0":{"1441":1},"2":{"45":2,"49":1,"1443":1,"1520":1,"1849":1,"2045":1,"2072":1,"2914":1}}],["customizing",{"0":{"1521":1,"1590":1,"2412":1},"1":{"1522":1,"1591":1,"1592":1,"1593":1,"1594":1,"1595":1},"2":{"236":1,"1450":1,"2446":1}}],["customizability",{"2":{"1511":1,"2645":1}}],["customizable",{"0":{"1611":1,"1612":1},"2":{"160":1}}],["customization",{"0":{"1656":1,"2916":1},"1":{"1657":1,"1658":1},"2":{"191":1,"631":1,"649":1,"1656":1,"1658":1,"1743":1,"1747":1,"1751":1,"2021":1,"2744":1,"2920":1}}],["custom",{"0":{"590":1,"591":1,"620":1,"626":1,"725":1,"1344":1,"1442":1,"1511":1,"1557":1,"1637":1,"1696":1,"1844":1,"1946":1,"2015":1,"2023":1,"2040":1,"2044":1,"2046":1,"2066":1,"2270":1,"2282":1,"2446":1,"2861":1},"1":{"621":1,"622":1,"623":1,"627":1,"628":1,"629":1,"630":1,"1947":1},"2":{"3":1,"7":1,"15":1,"49":1,"76":1,"80":1,"112":2,"114":2,"134":1,"149":4,"160":2,"176":2,"191":3,"211":3,"236":2,"265":1,"266":2,"277":2,"285":1,"317":1,"323":2,"328":3,"333":2,"368":1,"374":1,"546":1,"565":2,"568":2,"572":3,"576":1,"591":21,"621":1,"622":3,"624":1,"627":3,"629":1,"643":2,"716":1,"723":1,"725":1,"751":1,"1286":1,"1324":1,"1332":1,"1344":2,"1375":1,"1378":1,"1411":2,"1413":1,"1423":1,"1425":1,"1443":2,"1450":7,"1455":1,"1466":1,"1479":1,"1504":3,"1511":1,"1521":1,"1527":3,"1553":1,"1557":2,"1588":1,"1596":1,"1599":4,"1611":1,"1612":2,"1619":1,"1635":1,"1636":1,"1637":1,"1658":1,"1696":3,"1713":1,"1714":1,"1715":1,"1716":1,"1728":1,"1736":2,"1737":2,"1749":1,"1751":3,"1757":1,"1792":1,"1799":1,"1801":1,"1844":10,"1849":1,"1917":1,"1918":1,"1943":3,"1946":3,"1952":1,"1956":2,"1958":2,"1996":1,"1997":1,"2000":1,"2015":3,"2023":1,"2024":1,"2025":1,"2044":3,"2045":1,"2046":3,"2066":10,"2072":1,"2160":1,"2162":2,"2167":2,"2168":1,"2170":1,"2181":1,"2218":1,"2261":2,"2281":3,"2290":1,"2302":3,"2311":1,"2312":1,"2323":1,"2324":1,"2368":2,"2389":1,"2407":1,"2411":6,"2415":1,"2418":1,"2442":1,"2446":3,"2551":2,"2553":1,"2562":1,"2563":2,"2564":1,"2572":1,"2575":1,"2592":1,"2604":1,"2605":1,"2610":1,"2612":1,"2645":1,"2655":1,"2720":1,"2721":10,"2744":2,"2746":1,"2783":1,"2792":1,"2847":1,"2850":1,"2851":1,"2852":1,"2857":2,"2861":4,"2864":1,"2865":4,"2870":1,"2871":1,"2873":1,"2876":1,"2901":2,"2924":1,"2925":1,"2941":1}}],["cl",{"2":{"2513":5,"2531":5,"2551":2,"2554":1}}],["clk",{"2":{"1980":2,"2281":1,"2488":1,"2868":1}}],["cled",{"2":{"1840":1,"1844":1,"2060":1}}],["clearly",{"2":{"2567":1,"2568":1}}],["clearpageremainder",{"2":{"1948":1,"2283":1}}],["clears",{"2":{"1422":1,"1615":1,"1948":1,"2283":1,"2750":1}}],["clearing",{"2":{"1346":1,"1511":1,"1550":3,"2182":6}}],["cleared",{"2":{"649":1,"2669":1,"2670":1}}],["clearer",{"2":{"16":1}}],["clear",{"0":{"1462":1,"1463":1,"1464":1,"1700":1,"1962":1},"2":{"149":2,"188":1,"191":5,"199":1,"231":1,"618":1,"649":1,"1345":3,"1373":1,"1375":2,"1422":1,"1443":2,"1462":1,"1463":1,"1464":1,"1599":6,"1619":2,"1700":1,"1724":1,"1726":1,"1942":1,"1948":1,"1949":3,"1962":1,"2025":1,"2246":1,"2283":1,"2501":1,"2506":1,"2509":4,"2515":5,"2516":1,"2644":2,"2700":1,"2721":1,"2745":1,"2750":2,"2936":1}}],["cleaner",{"2":{"288":1,"2429":1}}],["cleaned",{"2":{"198":1}}],["cleaning",{"2":{"224":1,"251":1,"2420":1,"2656":1}}],["clean",{"0":{"50":1,"64":1,"75":1,"94":1,"444":1},"2":{"94":1,"114":3,"133":1,"134":2,"160":1,"191":6,"199":2,"211":5,"222":2,"236":3,"249":1,"427":1,"444":1,"453":1,"467":1,"616":1,"1406":1,"2410":3,"2656":1,"2721":1,"2934":1}}],["cleans",{"2":{"13":1,"444":1,"2410":1}}],["cleanups",{"2":{"2":1,"50":1,"149":1,"191":2,"211":3,"222":7,"236":10,"249":1,"277":1}}],["cleanup",{"0":{"2":1,"25":1,"27":1,"113":1,"133":1,"229":1,"233":1},"2":{"12":1,"25":1,"64":2,"94":1,"114":3,"149":1,"187":1,"191":2,"198":1,"199":1,"201":1,"211":4,"213":1,"224":1,"233":1,"235":1,"236":2,"249":2,"268":1,"277":1,"279":1,"308":1,"328":2,"649":1,"2567":2,"2933":1}}],["clr",{"2":{"1345":1,"1413":1,"1616":1,"2266":1,"2509":1,"2515":1,"2516":1,"2745":1,"2783":1}}],["cln",{"2":{"324":1,"325":1,"2306":1,"2309":2}}],["clusters",{"2":{"2915":1}}],["clunker",{"2":{"236":1}}],["clutter",{"2":{"2651":1}}],["cluttered",{"2":{"204":1}}],["cluttering",{"2":{"28":1}}],["club",{"2":{"114":1,"143":4,"149":1,"236":2,"285":1,"2389":2}}],["cluecard",{"2":{"111":1,"2933":1}}],["clueboards",{"2":{"2376":1}}],["clueboard",{"0":{"1317":1},"2":{"111":3,"149":1,"342":1,"369":1,"427":2,"432":2,"435":1,"452":1,"453":1,"471":2,"472":1,"482":1,"483":2,"673":3,"2407":2,"2433":2,"2434":1,"2435":7,"2550":1,"2553":1,"2576":2,"2577":1,"2622":7,"2720":1,"2844":4,"2845":3}}],["claim",{"2":{"2735":1}}],["claims",{"2":{"2734":1}}],["clauses",{"2":{"2728":2,"2741":1}}],["clause",{"2":{"2568":1,"2729":1,"2738":1}}],["clag",{"2":{"2509":1,"2515":1}}],["clayer",{"2":{"1413":1,"1424":1,"2779":2}}],["clamp",{"2":{"317":1}}],["classname",{"2":{"527":1}}],["class",{"2":{"288":1,"524":1,"542":1,"1627":1,"2583":1}}],["classic48",{"2":{"328":1}}],["classic",{"2":{"210":1,"294":1,"1365":1,"2367":1,"2734":1,"2901":1}}],["clarification",{"2":{"149":1,"191":1}}],["clarify",{"2":{"134":1,"2313":1}}],["claw44",{"2":{"143":2}}],["clawsome",{"2":{"102":3}}],["clangd",{"2":{"2664":1,"2666":4}}],["clang",{"0":{"1":1,"521":1},"2":{"1":1,"114":1,"132":2,"134":2,"149":1,"457":1,"521":8}}],["clogged",{"2":{"2747":1}}],["cloning",{"2":{"2403":2,"2494":1,"2587":1}}],["cloned",{"2":{"2619":1,"2655":1,"2658":1,"2665":1}}],["clones",{"2":{"271":2,"511":1,"2379":1,"2479":1,"2492":1,"2567":1,"2828":1}}],["clone",{"2":{"93":1,"416":1,"417":1,"418":1,"422":1,"611":2,"1427":1,"2379":1,"2398":1,"2400":1,"2403":3,"2567":1,"2585":2,"2586":2,"2603":1,"2619":1,"2621":1}}],["closing",{"2":{"520":2,"2219":1,"2248":1,"2427":1}}],["closer",{"2":{"2913":1}}],["closely",{"2":{"2273":1}}],["closest",{"2":{"1532":1}}],["closes",{"2":{"397":2}}],["closed",{"2":{"396":1,"397":1,"399":1,"400":1,"401":2,"402":2,"406":2,"2284":1,"2381":1,"2459":1,"2567":1,"2568":2,"2721":1,"2739":1,"2743":1}}],["close",{"2":{"387":2,"391":1,"1645":1,"2050":1,"2052":1,"2249":3,"2250":3,"2543":3,"2615":1,"2750":6}}],["cloudline",{"2":{"211":1}}],["clocks",{"2":{"2668":1,"2669":1,"2670":1}}],["clock",{"2":{"114":1,"390":1,"559":1,"747":3,"756":3,"764":1,"766":1,"1249":5,"1291":1,"1297":1,"1943":2,"1982":1,"1983":3,"1984":2,"1985":5,"1986":2,"1998":1,"1999":2,"2006":2,"2010":1,"2011":1,"2013":1,"2014":2,"2179":2,"2281":1,"2496":2,"2848":1,"2868":1}}],["clockwise",{"2":{"13":2,"90":10,"645":1,"1659":1,"1662":9,"1769":1,"1993":1}}],["clipping",{"0":{"2207":1},"2":{"2195":3,"2207":5}}],["client",{"2":{"363":2,"1288":1,"2493":1,"2594":1,"2605":1}}],["clients",{"2":{"360":1}}],["click4",{"2":{"1680":1}}],["click3",{"2":{"1680":2}}],["click2",{"2":{"1680":2}}],["click1",{"2":{"1680":2}}],["clicking",{"2":{"597":3,"2403":2,"2474":1}}],["clicks",{"2":{"266":1,"1487":3,"1489":2,"1512":1,"1935":1,"2411":1,"2517":2}}],["clicky",{"2":{"236":1,"1479":1,"1487":18,"1489":9,"1622":2,"2517":9,"2849":2,"2933":2}}],["click",{"0":{"1487":1},"2":{"149":1,"347":2,"387":3,"391":2,"594":1,"614":1,"683":1,"684":2,"1375":1,"1487":3,"1680":15,"2000":1,"2003":3,"2008":1,"2009":2,"2023":1,"2291":3,"2403":1,"2426":1,"2557":1,"2560":1,"2607":1,"2608":1,"2652":3,"2655":2,"2662":2,"2665":2,"2667":1,"2788":1,"2825":1,"2869":1}}],["cli",{"0":{"173":1,"413":1,"425":1,"469":1,"473":1,"484":1,"490":1,"491":1,"1322":1,"2748":1},"1":{"414":1,"415":1,"416":1,"417":1,"418":1,"419":1,"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1},"2":{"1":1,"94":1,"95":1,"114":6,"132":1,"134":4,"149":1,"153":1,"158":2,"160":2,"164":1,"173":1,"176":5,"191":1,"199":7,"211":3,"222":1,"236":3,"249":2,"266":1,"277":1,"285":1,"294":1,"308":2,"317":1,"328":1,"333":2,"338":2,"348":1,"414":1,"415":1,"417":1,"429":1,"463":2,"470":1,"485":2,"486":1,"487":18,"488":1,"489":3,"490":7,"491":2,"493":3,"494":6,"495":2,"496":2,"497":1,"498":8,"505":1,"533":1,"537":4,"551":3,"552":1,"663":1,"664":2,"666":1,"670":1,"671":3,"682":1,"1322":1,"1388":1,"1396":1,"2375":1,"2376":1,"2381":1,"2383":1,"2384":2,"2387":2,"2390":3,"2393":2,"2395":2,"2397":2,"2501":1,"2577":1,"2584":1,"2594":1,"2600":1,"2609":1,"2613":1,"2616":1,"2618":1,"2619":1,"2620":1,"2621":1,"2746":1,"2750":4,"2923":1,"2925":2}}],["coating",{"2":{"2420":1}}],["coarser",{"2":{"2245":1}}],["coarse",{"2":{"102":2,"217":1}}],["coil",{"2":{"1675":1,"1679":1}}],["coworkers",{"2":{"1482":1,"1487":1}}],["cowfish",{"2":{"191":1}}],["coffee|",{"2":{"681":1}}],["coffee||make",{"2":{"681":1}}],["coffee",{"2":{"676":1,"681":1}}],["coseyfannitutti",{"2":{"2494":1}}],["cosmetic",{"2":{"2269":3}}],["cosmo",{"2":{"1354":1}}],["costing",{"2":{"1532":1,"2837":1}}],["cost",{"2":{"546":1,"1655":1,"2016":1,"2372":1,"2828":1,"2837":1,"2934":1}}],["cospad",{"2":{"102":2}}],["coding",{"0":{"520":1,"522":1,"612":1},"2":{"408":1,"521":1,"607":1,"612":2,"617":1,"2050":1,"2664":1,"2925":2}}],["coders",{"2":{"2934":1}}],["codepoints",{"2":{"2839":1}}],["codegen",{"2":{"285":1}}],["code16",{"0":{"1461":4},"2":{"149":1,"176":1,"196":1,"324":1,"325":1,"328":1,"1461":1,"1511":4,"1599":3,"1612":1,"1801":1,"2181":1,"2309":4,"2311":5,"2562":1,"2563":3,"2564":2}}],["codes",{"0":{"2036":1},"1":{"2037":1},"2":{"32":1,"176":1,"1327":1,"1413":3,"1443":2,"1487":1,"1918":1,"2252":1,"2324":1,"2411":1,"2557":2,"2603":1,"2877":1,"2941":1}}],["codebases",{"0":{"44":1,"59":1,"86":1,"102":1,"122":1,"143":1,"159":1,"168":1,"181":1,"197":1,"207":1,"217":1,"226":1,"241":1,"253":1,"270":1,"281":1,"291":1,"300":1,"311":1,"322":1},"1":{"45":1,"60":1},"2":{"2936":1}}],["codebase",{"0":{"18":1,"113":1,"133":1},"2":{"18":1,"21":1,"35":1,"60":1,"86":1,"262":1,"284":1,"522":1,"546":1,"550":1,"2719":2,"2895":1,"2938":1,"2942":1}}],["code",{"0":{"1":1,"4":1,"27":1,"33":1,"218":1,"220":1,"348":1,"547":1,"590":1,"619":1,"631":1,"632":1,"635":1,"638":1,"641":1,"646":1,"649":1,"660":1,"670":1,"671":1,"1411":1,"1423":1,"1434":1,"1457":1,"1458":1,"1459":1,"1460":1,"1918":1,"2229":1,"2293":1,"2340":1,"2347":1,"2597":1,"2657":1,"2658":1,"2661":1,"2665":1,"2666":1,"2667":1,"2926":1},"1":{"34":1,"632":1,"633":2,"634":2,"635":1,"636":2,"637":2,"638":1,"639":2,"640":2,"642":1,"643":1,"647":1,"648":1,"650":1,"651":1,"652":1,"1424":1,"1425":1,"1426":1,"1435":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1,"2230":1,"2341":1,"2348":1,"2349":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2659":1,"2660":1,"2661":1,"2662":2,"2663":1,"2664":1,"2666":1,"2927":1,"2928":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"2":1,"3":1,"10":1,"15":1,"21":1,"22":1,"24":1,"25":1,"28":1,"31":1,"49":2,"50":4,"57":2,"64":1,"65":1,"70":1,"74":2,"75":1,"76":1,"90":13,"92":1,"93":2,"94":2,"105":6,"112":1,"113":3,"114":11,"123":1,"125":7,"132":1,"133":5,"134":10,"149":6,"160":2,"173":1,"174":1,"175":3,"176":8,"185":7,"190":2,"191":5,"194":2,"199":2,"201":1,"206":1,"211":1,"215":1,"218":1,"220":1,"222":4,"229":1,"231":1,"236":5,"243":1,"245":1,"249":1,"266":4,"268":1,"272":1,"285":2,"288":1,"294":1,"307":4,"308":1,"323":1,"328":2,"331":1,"338":1,"347":1,"348":4,"359":2,"368":1,"372":1,"374":1,"387":1,"410":2,"441":1,"445":1,"457":3,"462":1,"463":1,"467":1,"487":1,"499":1,"502":2,"503":2,"504":2,"520":5,"521":2,"523":1,"524":1,"533":1,"536":1,"540":1,"545":1,"546":3,"547":1,"548":3,"549":4,"550":1,"553":1,"560":1,"561":1,"562":3,"574":1,"607":1,"613":2,"614":1,"617":1,"619":3,"620":1,"622":1,"624":1,"626":1,"631":1,"633":1,"639":1,"641":2,"643":1,"645":1,"647":2,"660":1,"664":1,"670":2,"671":1,"688":1,"700":2,"727":1,"750":1,"751":1,"753":1,"754":1,"762":2,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":2,"1264":2,"1281":2,"1319":1,"1324":1,"1326":1,"1327":1,"1328":1,"1338":1,"1340":1,"1345":1,"1354":1,"1358":1,"1375":1,"1377":2,"1378":3,"1385":1,"1387":1,"1389":1,"1390":1,"1403":3,"1407":2,"1413":1,"1422":1,"1423":1,"1425":1,"1432":1,"1434":1,"1438":1,"1442":2,"1443":1,"1444":1,"1451":3,"1455":1,"1458":1,"1459":4,"1460":1,"1466":4,"1480":1,"1481":1,"1526":1,"1527":1,"1528":1,"1529":2,"1534":1,"1585":2,"1587":1,"1588":1,"1611":1,"1612":3,"1626":1,"1661":1,"1662":5,"1675":1,"1707":1,"1737":1,"1766":1,"1770":1,"1792":2,"1793":1,"1845":1,"1917":1,"1940":1,"1943":1,"1947":1,"2000":1,"2014":1,"2019":2,"2020":2,"2025":1,"2037":1,"2042":1,"2043":1,"2044":4,"2046":3,"2050":1,"2068":1,"2181":1,"2194":1,"2207":1,"2230":1,"2270":1,"2274":1,"2278":1,"2281":1,"2290":3,"2293":1,"2298":1,"2310":11,"2311":1,"2312":4,"2322":4,"2323":3,"2324":7,"2325":3,"2337":1,"2338":1,"2339":1,"2341":2,"2347":1,"2349":1,"2350":1,"2364":1,"2372":1,"2388":1,"2405":1,"2406":1,"2407":1,"2408":1,"2409":2,"2411":7,"2435":1,"2441":4,"2442":1,"2446":1,"2449":2,"2453":1,"2545":3,"2547":6,"2552":1,"2554":1,"2560":1,"2562":1,"2563":2,"2566":3,"2567":10,"2568":7,"2569":4,"2571":1,"2573":1,"2593":1,"2596":1,"2603":1,"2638":2,"2646":5,"2655":2,"2657":8,"2660":2,"2661":1,"2663":1,"2664":4,"2666":5,"2667":6,"2669":2,"2670":1,"2707":1,"2721":8,"2722":1,"2724":1,"2726":1,"2727":4,"2729":1,"2732":2,"2734":3,"2741":1,"2742":1,"2743":1,"2750":1,"2754":2,"2762":2,"2778":1,"2802":2,"2804":2,"2829":1,"2886":3,"2889":1,"2894":1,"2895":1,"2901":1,"2902":1,"2923":1,"2927":1,"2928":2,"2935":1,"2936":1,"2942":5}}],["copper",{"2":{"2418":1}}],["copied",{"2":{"570":1,"2719":1}}],["copies",{"2":{"249":1,"1450":1,"2568":1}}],["copilot",{"2":{"333":1}}],["copying",{"2":{"2580":1,"2622":1,"2749":1}}],["copyrighted",{"2":{"1479":1}}],["copyrights",{"2":{"616":1}}],["copyright",{"0":{"2449":1},"2":{"408":1,"1438":1,"2449":2,"2567":1,"2707":2,"2725":2,"2895":1}}],["copypasta",{"2":{"114":1,"1444":1}}],["copy",{"0":{"509":1},"2":{"31":1,"114":1,"191":1,"361":1,"509":1,"611":1,"1345":1,"1438":1,"1526":1,"1628":1,"2393":2,"2395":2,"2397":2,"2400":2,"2403":1,"2509":2,"2515":2,"2563":1,"2564":1,"2568":1,"2577":1,"2583":1,"2584":1,"2585":1,"2586":1,"2587":1,"2603":1,"2607":1,"2719":1,"2721":1,"2725":1,"2749":1,"2788":2,"2912":1}}],["covered",{"0":{"1335":1},"2":{"1308":1,"2496":1}}],["cover",{"2":{"745":1,"1333":1,"1930":1,"2411":1,"2715":1}}],["covers",{"2":{"585":1,"676":1,"1311":1,"1339":1,"1341":1,"1526":1,"1928":1,"2274":1,"2322":1,"2411":1,"2657":1,"2731":1,"2732":1,"2786":1}}],["covering",{"2":{"222":1,"613":1,"2636":1}}],["coverage",{"2":{"134":2,"236":1}}],["co",{"2":{"211":1,"763":1,"2073":1,"2845":1}}],["cocoa40",{"2":{"143":2}}],["cooperate",{"2":{"2567":1}}],["cooperating",{"2":{"746":1}}],["cooler",{"2":{"2248":1}}],["cool",{"2":{"676":1,"681":5,"1434":2,"1435":2,"1844":10,"2066":10,"2248":1,"2420":1,"2421":2}}],["coordinate",{"2":{"312":1,"317":1,"1645":2,"1840":1,"2060":1,"2750":2}}],["coordinates",{"2":{"100":2,"114":1,"176":1,"277":1,"308":1,"1639":1,"1641":2,"1642":1,"1948":1,"2006":1,"2283":1,"2749":1}}],["cook",{"2":{"143":2,"211":1}}],["coexist",{"2":{"98":1,"283":1}}],["cozykeys",{"2":{"56":3}}],["col1",{"2":{"2459":13}}],["col0",{"2":{"2459":14}}],["col2row",{"2":{"559":3,"620":1,"637":3,"1400":1,"1404":1,"2377":2,"2384":2,"2677":2,"2712":1,"2865":1,"2869":2}}],["colons",{"2":{"2938":1}}],["colon",{"0":{"341":2},"2":{"2301":1,"2310":1,"2539":1,"2558":1}}],["coloured",{"2":{"1547":1}}],["colour",{"2":{"222":1,"1547":1}}],["colorreco",{"2":{"2567":1}}],["color=false",{"2":{"2410":2}}],["colored",{"2":{"683":1}}],["colorizing",{"0":{"492":1},"2":{"489":1}}],["colorize",{"2":{"488":1,"489":1,"492":1}}],["colors",{"0":{"2067":1,"2205":1},"2":{"149":1,"214":1,"492":3,"1284":1,"1611":1,"2067":1,"2075":1,"2180":1,"2185":1,"2189":1,"2205":1,"2747":1,"2748":4,"2750":1,"2769":4}}],["color",{"0":{"704":1,"706":1,"737":1,"739":1,"809":1,"811":1,"836":1,"838":1,"868":1,"870":1,"900":1,"902":1,"935":1,"937":1,"969":1,"971":1,"1003":1,"1005":1,"1037":1,"1039":1,"1071":1,"1073":1,"1105":1,"1107":1,"1139":1,"1141":1,"1173":1,"1175":1,"1226":1,"1228":1,"1303":1,"1305":1,"2085":1,"2087":1,"2180":1},"1":{"705":1,"707":1,"738":1,"740":1,"810":1,"812":1,"837":1,"839":1,"869":1,"871":1,"901":1,"903":1,"936":1,"938":1,"970":1,"972":1,"1004":1,"1006":1,"1038":1,"1040":1,"1072":1,"1074":1,"1106":1,"1108":1,"1140":1,"1142":1,"1174":1,"1176":1,"1227":1,"1229":1,"1304":1,"1306":1,"2086":1,"2088":1},"2":{"114":1,"191":1,"199":1,"236":1,"492":10,"639":1,"650":2,"651":2,"704":1,"706":1,"726":1,"737":1,"739":1,"797":1,"798":1,"802":1,"805":1,"809":1,"811":1,"813":1,"815":1,"819":1,"823":1,"824":1,"828":1,"831":1,"836":1,"838":1,"840":1,"842":1,"846":1,"852":1,"853":1,"860":1,"863":1,"868":1,"870":1,"872":1,"874":1,"878":1,"884":1,"885":1,"890":1,"893":1,"900":1,"902":1,"904":1,"906":1,"910":1,"916":1,"917":1,"925":1,"928":1,"935":1,"937":1,"939":1,"941":1,"945":1,"951":1,"952":1,"959":1,"962":1,"969":1,"971":1,"973":1,"975":1,"979":1,"985":1,"986":1,"993":1,"996":1,"1003":1,"1005":1,"1007":1,"1009":1,"1013":1,"1019":1,"1020":1,"1027":1,"1030":1,"1037":1,"1039":1,"1041":1,"1043":1,"1047":1,"1053":1,"1054":1,"1061":1,"1064":1,"1071":1,"1073":1,"1075":1,"1077":1,"1081":1,"1087":1,"1088":1,"1095":1,"1098":1,"1105":1,"1107":1,"1109":1,"1111":1,"1115":1,"1121":1,"1122":1,"1129":1,"1132":1,"1139":1,"1141":1,"1143":1,"1145":1,"1149":1,"1155":1,"1156":1,"1163":1,"1166":1,"1173":1,"1175":1,"1177":1,"1179":1,"1183":1,"1211":1,"1212":1,"1216":1,"1219":1,"1226":1,"1228":1,"1230":1,"1232":1,"1236":1,"1280":2,"1284":2,"1285":1,"1303":1,"1305":1,"1413":3,"1952":4,"2058":1,"2063":2,"2064":1,"2065":2,"2066":2,"2067":1,"2072":3,"2073":4,"2074":4,"2075":1,"2085":1,"2087":1,"2143":1,"2178":2,"2180":2,"2183":3,"2187":1,"2194":1,"2199":1,"2205":1,"2410":2,"2456":1,"2747":2,"2748":6,"2749":12,"2750":7,"2770":1,"2871":1}}],["col",{"0":{"1705":1},"1":{"1706":1},"2":{"199":1,"222":1,"559":1,"568":3,"630":1,"637":4,"1326":8,"1620":1,"1625":1,"1706":1,"1840":3,"1948":1,"2060":3,"2073":4,"2271":2,"2283":1,"2296":1,"2377":1,"2384":1,"2865":2,"2915":2}}],["colemak",{"0":{"2803":1},"2":{"191":1,"427":3,"1419":1,"1446":1,"1453":2,"1613":1,"2548":1,"2552":1,"2780":2,"2880":3}}],["coled",{"2":{"31":1,"34":1}}],["coln",{"2":{"176":3,"2309":1,"2539":1,"2558":1}}],["collectively",{"2":{"2632":1}}],["collection",{"2":{"1325":1,"1440":1}}],["collected",{"2":{"2574":1}}],["collect",{"2":{"1956":1}}],["collaborator",{"2":{"578":1,"618":1,"2718":1,"2722":1}}],["collaborators",{"2":{"163":1,"201":1,"397":2,"2470":1,"2718":1,"2719":2,"2722":2,"2724":1}}],["collisions",{"2":{"156":1,"167":1,"1425":1}}],["collision",{"2":{"134":1,"186":1,"751":1,"1316":1}}],["cols",{"2":{"111":1,"114":2,"559":1,"587":1,"637":2,"1365":1,"1450":2,"1486":1,"1693":1,"1840":2,"1918":1,"2060":2,"2073":1,"2296":1,"2305":1,"2547":1,"2552":3,"2578":1,"2677":1,"2712":3,"2713":1,"2721":1,"2865":1,"2915":3,"2931":1}}],["columner",{"2":{"241":2}}],["columns",{"0":{"2422":1},"2":{"211":1,"249":1,"520":1,"522":1,"559":3,"568":1,"1365":1,"1410":1,"1484":1,"1486":1,"2262":1,"2271":2,"2416":2,"2422":1,"2424":1,"2427":1,"2459":4,"2711":1,"2787":1,"2821":1,"2865":2,"2915":1}}],["column",{"0":{"1365":1},"2":{"55":1,"222":1,"266":1,"317":1,"345":2,"637":2,"1583":2,"1584":2,"1585":1,"1706":1,"1714":1,"1716":1,"1843":4,"1943":1,"1948":2,"2063":4,"2262":1,"2281":1,"2283":2,"2296":4,"2416":1,"2422":5,"2424":2,"2427":2,"2459":16,"2547":1,"2677":2,"2713":3,"2714":1,"2787":1,"2862":1,"2869":1,"2877":1,"2903":1,"2929":1}}],["courts",{"2":{"2735":1}}],["court",{"2":{"2284":1}}],["courtesy",{"2":{"619":1}}],["course",{"2":{"120":1,"123":1,"603":1,"1749":1,"2475":1,"2942":1}}],["couldn",{"0":{"2843":1}}],["could",{"0":{"1737":1},"2":{"211":1,"312":3,"408":1,"427":1,"431":1,"471":1,"548":2,"685":1,"696":1,"698":1,"1410":1,"1417":1,"1419":1,"1441":1,"1442":2,"1461":1,"1476":1,"1528":1,"1532":1,"1599":1,"1607":1,"1611":1,"1664":2,"1929":1,"2013":1,"2044":2,"2052":1,"2166":1,"2258":1,"2428":1,"2467":1,"2555":1,"2560":2,"2568":1,"2569":1,"2628":1,"2645":1,"2750":1,"2778":2,"2843":1,"2908":2,"2915":1,"2920":1,"2930":1}}],["couple",{"2":{"145":1,"402":1,"1346":1,"1452":1,"1479":1,"1523":1,"2162":1,"2268":1,"2287":1,"2421":1,"2424":1,"2778":1}}],["coupled",{"2":{"48":1,"119":1,"131":1}}],["count=6",{"2":{"2440":1}}],["count=30",{"2":{"2440":1}}],["counting",{"2":{"2403":2,"2787":1}}],["countries",{"2":{"1420":1}}],["counts",{"2":{"236":2,"277":1,"2014":1,"2167":1,"2303":1}}],["counteract",{"2":{"1758":1,"2917":1}}],["counterparts",{"2":{"1461":1}}],["counterpart",{"2":{"1417":1}}],["counters",{"2":{"528":1,"1410":1}}],["counter",{"2":{"114":1,"392":1,"1562":1,"1662":1,"2303":1}}],["count",{"0":{"2355":1},"1":{"2356":1},"2":{"49":2,"70":1,"111":1,"112":1,"166":1,"183":6,"191":4,"199":1,"222":3,"236":4,"249":4,"324":1,"348":2,"563":1,"668":2,"731":1,"746":1,"747":1,"751":1,"752":3,"802":2,"828":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1282":1,"1326":8,"1407":1,"1527":2,"1532":1,"1588":1,"1765":1,"1768":2,"1770":1,"1771":1,"1775":1,"1846":1,"1860":1,"1941":1,"1946":3,"2012":1,"2031":2,"2039":2,"2069":1,"2086":1,"2167":5,"2168":3,"2169":2,"2179":1,"2185":1,"2186":2,"2198":4,"2206":1,"2207":1,"2279":1,"2282":2,"2297":1,"2302":1,"2372":1,"2374":4,"2562":1,"2563":3,"2564":1,"2627":2,"2750":4,"2767":1,"2864":2,"2870":3,"2871":2}}],["corp",{"2":{"2605":1,"2608":2}}],["coral",{"2":{"2067":2,"2205":2}}],["corrupted",{"2":{"2475":1}}],["corruption",{"2":{"249":1,"2942":1}}],["corresponds",{"2":{"1532":1,"1920":1,"2291":1,"2310":1,"2495":1}}],["correspond",{"2":{"731":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1770":1,"2514":1,"2556":1,"2862":1,"2913":1,"2915":1}}],["corresponding",{"2":{"118":1,"166":1,"487":1,"698":1,"718":1,"1197":1,"1343":1,"1375":1,"1512":1,"1532":1,"1618":1,"1627":1,"1630":1,"1633":1,"1943":1,"2288":1,"2411":1,"2416":1,"2426":1,"2459":1,"2567":3,"2722":1,"2728":1,"2748":1,"2769":2,"2772":1,"2773":1,"2879":1,"2908":1,"2909":1}}],["corrected",{"2":{"456":1,"1528":1,"1529":2,"2750":1}}],["correctness",{"2":{"263":1,"2722":1}}],["corrections",{"2":{"199":1,"266":1,"317":1,"1521":2}}],["correction",{"2":{"49":1,"222":1,"236":1,"249":2,"294":1,"1521":3,"1532":1,"1533":1}}],["correct",{"2":{"11":1,"114":2,"132":1,"134":1,"149":1,"176":4,"194":1,"199":2,"211":2,"222":2,"236":1,"249":2,"294":1,"328":1,"485":1,"594":1,"595":1,"623":2,"683":1,"684":1,"686":1,"718":1,"746":1,"1197":1,"1200":1,"1201":1,"1317":1,"1412":1,"1443":1,"1486":1,"1511":1,"1518":1,"1519":1,"1522":2,"1528":2,"1529":3,"1532":1,"1584":1,"1751":1,"1950":1,"1986":1,"2018":1,"2266":1,"2324":1,"2459":1,"2599":1,"2613":1,"2662":1,"2666":1,"2667":1,"2680":1,"2704":1,"2721":1,"2750":2}}],["correctly",{"2":{"11":1,"31":1,"34":1,"48":1,"73":1,"132":1,"191":2,"199":1,"263":2,"277":2,"333":1,"379":1,"388":1,"434":1,"746":1,"1326":1,"1378":1,"1411":1,"1522":1,"1662":1,"1956":1,"2291":1,"2427":2,"2557":1,"2560":1,"2583":1,"2587":1,"2601":1,"2661":1,"2667":3,"2721":1,"2722":1,"2749":4}}],["cor65",{"2":{"249":1}}],["cor",{"2":{"211":1,"281":4}}],["corner",{"2":{"2009":1,"2862":2}}],["corne",{"2":{"86":1,"92":1,"93":1,"191":1,"211":1,"285":1}}],["cortex",{"2":{"50":1,"134":1,"191":1,"222":1,"2667":4,"2682":1}}],["cored",{"2":{"2414":1,"2422":2}}],["cores",{"2":{"1984":1}}],["core",{"0":{"1":1,"20":1,"46":1,"47":1,"61":1,"68":1,"91":1,"106":1,"129":1,"144":1,"171":1,"187":1,"198":1,"208":1,"227":1,"242":1,"261":1,"617":1,"625":1,"2722":1,"2774":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"48":1,"49":1,"50":1,"62":1,"63":1,"64":1,"69":1,"70":1,"92":1,"93":1,"94":1,"95":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"130":1,"131":1,"132":1,"133":1,"145":1,"146":1,"147":1,"148":1,"172":1,"173":1,"174":1,"175":1,"188":1,"189":1,"190":1,"209":1,"210":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"262":1,"263":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1},"2":{"1":2,"75":2,"113":5,"114":7,"118":1,"130":1,"133":3,"134":6,"140":1,"146":1,"149":3,"160":5,"176":3,"179":1,"187":1,"191":2,"198":1,"199":4,"211":3,"213":1,"222":2,"236":2,"249":2,"266":1,"277":1,"285":2,"294":2,"297":1,"308":2,"317":2,"327":1,"328":1,"333":3,"397":2,"410":1,"457":3,"613":1,"616":1,"617":2,"625":1,"664":1,"711":1,"714":1,"1350":1,"1362":1,"1410":1,"1478":1,"1662":1,"1844":1,"2066":1,"2319":1,"2405":1,"2450":1,"2470":1,"2567":2,"2700":1,"2719":2,"2721":5,"2722":5,"2925":1,"2927":2,"2929":1}}],["congrats",{"2":{"2610":1}}],["congratulations",{"2":{"602":1}}],["conjunction",{"2":{"2312":1}}],["conu",{"2":{"1674":1}}],["conducted",{"2":{"2420":1}}],["conductors",{"2":{"1191":1,"1194":1,"1197":1}}],["conduct",{"0":{"619":1},"2":{"607":1,"619":2,"2889":1}}],["cond",{"2":{"540":1,"1674":1}}],["conditions",{"0":{"2166":1},"2":{"746":1,"1607":1,"1664":1,"2045":2,"2166":1,"2310":1}}],["conditional",{"0":{"540":1,"1403":1},"2":{"540":1}}],["condition",{"2":{"211":1,"277":1,"520":4,"1375":1,"1388":1,"1396":1,"2902":1}}],["concurrent",{"2":{"2747":1}}],["concurrently",{"2":{"2631":1}}],["concept",{"2":{"2668":1}}],["conceptually",{"2":{"2554":1}}],["concepts",{"2":{"113":1,"609":1,"2460":1,"2612":1,"2626":1,"2628":1,"2862":1,"2922":1,"2926":1}}],["conceived",{"2":{"2301":1}}],["concerning",{"2":{"1427":1}}],["concerns",{"2":{"312":2,"2896":1}}],["concern",{"2":{"312":1,"546":1,"2550":1,"2724":1}}],["concerned",{"2":{"263":1}}],["concreteflowers",{"2":{"281":2,"285":1}}],["concrete",{"2":{"234":1}}],["confuse",{"2":{"2444":1,"2790":1}}],["confused",{"2":{"1450":1}}],["confusion",{"2":{"271":1,"303":1,"1662":1,"2569":1,"2787":1}}],["confusingly",{"2":{"1348":1}}],["confusing",{"2":{"243":1,"331":1,"403":1,"541":1,"549":1,"613":1,"2296":1,"2877":1}}],["conforms",{"2":{"2748":1}}],["conform",{"2":{"244":1,"617":1,"2432":1,"2445":1,"2714":1}}],["conf",{"2":{"134":1,"423":1,"1313":1,"2756":1}}],["conflicted",{"2":{"2627":1}}],["conflicting",{"0":{"1430":1},"2":{"2627":7}}],["conflicts",{"0":{"2626":1},"1":{"2627":1},"2":{"191":1,"397":2,"1441":1,"2291":1,"2625":1,"2627":1,"2631":1,"2719":4,"2721":1}}],["conflict",{"2":{"92":1,"191":1,"419":1,"522":1,"1560":1,"1589":1,"2251":1,"2626":2,"2627":7}}],["confirm",{"2":{"403":1,"683":1,"684":1,"692":1,"751":1,"2569":1,"2702":1}}],["confirmed",{"2":{"32":1,"2428":1}}],["confident",{"2":{"393":1,"2840":1}}],["confidence",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"182":1,"393":1,"2702":1,"2722":1}}],["conficts",{"2":{"114":1}}],["configparser",{"2":{"493":2}}],["configuring",{"0":{"387":1,"391":1,"553":1,"1496":1,"1928":1,"2291":1,"2666":1},"1":{"554":1,"555":1,"556":1,"557":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1934":1},"2":{"637":1,"898":1,"933":1,"967":1,"1001":1,"1035":1,"1069":1,"1103":1,"1137":1,"1171":1,"1224":1,"1387":1,"1555":1,"2262":1,"2435":1,"2714":1,"2721":1,"2923":1}}],["configures",{"2":{"1404":1,"1480":2,"1592":1,"1672":2,"1675":3,"1770":1,"2004":3,"2268":1,"2439":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2860":1,"2863":1,"2864":1,"2866":1,"2867":1,"2868":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2876":1}}],["configured",{"0":{"562":1},"2":{"134":1,"236":1,"255":1,"256":1,"266":1,"303":1,"306":1,"315":1,"490":1,"535":1,"559":1,"623":2,"663":1,"712":1,"713":1,"717":1,"722":1,"723":1,"724":1,"746":1,"920":3,"1091":3,"1125":3,"1194":2,"1197":1,"1210":1,"1262":1,"1282":1,"1286":1,"1294":2,"1350":1,"1404":1,"1434":1,"1468":1,"1472":1,"1481":1,"1553":1,"1586":1,"1604":1,"1672":1,"1746":2,"1762":1,"1770":2,"1953":1,"1981":1,"1988":1,"1990":1,"2063":1,"2073":1,"2161":1,"2172":1,"2173":1,"2176":1,"2182":1,"2190":1,"2193":1,"2268":1,"2548":1,"2577":1,"2590":1,"2595":1,"2609":1,"2630":3,"2661":1,"2669":2,"2670":1,"2693":1,"2694":1,"2696":1,"2715":1,"2721":1,"2749":13,"2754":1,"2851":1,"2877":1,"2901":1,"2910":1,"2916":1,"2927":1}}],["configure",{"0":{"1594":1,"2576":1,"2654":1,"2665":1},"1":{"2655":1,"2656":1,"2666":1},"2":{"76":1,"112":2,"124":1,"154":1,"186":1,"195":1,"211":1,"221":1,"308":5,"317":11,"429":1,"572":1,"621":1,"622":1,"623":1,"718":1,"730":1,"764":1,"801":1,"817":1,"819":1,"826":1,"827":1,"844":1,"846":1,"855":1,"859":1,"876":1,"878":1,"887":1,"889":1,"908":1,"910":1,"919":1,"924":1,"943":1,"945":1,"954":1,"958":1,"977":1,"979":1,"988":1,"992":1,"1011":1,"1013":1,"1022":1,"1026":1,"1045":1,"1047":1,"1056":1,"1060":1,"1079":1,"1081":1,"1090":1,"1094":1,"1113":1,"1115":1,"1124":1,"1128":1,"1147":1,"1149":1,"1158":1,"1162":1,"1181":1,"1183":1,"1192":1,"1195":1,"1198":1,"1214":1,"1215":1,"1234":1,"1236":1,"1385":1,"1400":1,"1402":1,"1412":1,"1413":2,"1478":1,"1487":1,"1551":1,"1552":1,"1557":1,"1584":1,"1587":1,"1589":1,"1592":1,"1594":1,"1603":3,"1606":1,"1661":1,"1736":1,"1749":1,"1791":1,"1805":1,"1839":1,"1990":1,"2014":1,"2018":1,"2059":1,"2163":1,"2264":1,"2265":1,"2271":1,"2291":2,"2321":1,"2408":1,"2438":1,"2439":1,"2440":2,"2441":1,"2576":1,"2577":1,"2580":1,"2609":2,"2657":1,"2690":1,"2691":1,"2696":1,"2709":1,"2713":1,"2752":1,"2780":1,"2898":1,"2901":2,"2914":1,"2924":1,"2925":1}}],["configurability",{"2":{"1747":1}}],["configurables",{"2":{"124":1,"201":1,"213":1,"302":1,"468":1}}],["configurable",{"2":{"74":1,"109":1,"134":1,"152":1,"176":1,"198":1,"210":1,"211":1,"246":1,"553":1,"714":1,"745":1,"748":1,"751":1,"752":1,"753":1,"1587":1,"2009":1,"2065":1,"2669":1,"2721":1,"2747":1,"2750":2}}],["configuratorexport",{"2":{"427":1,"428":1}}],["configurator",{"0":{"574":1,"577":1,"585":1,"593":1,"601":1,"1308":1,"2582":1,"2786":1,"2787":1,"2789":1},"1":{"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"600":1,"602":1,"603":1,"604":1,"605":1,"606":1,"1309":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"35":1,"114":1,"120":2,"154":1,"209":1,"405":1,"427":1,"428":2,"436":1,"445":1,"450":2,"451":2,"461":1,"498":2,"574":3,"576":2,"577":3,"578":1,"580":1,"581":1,"585":1,"586":3,"587":1,"589":1,"590":2,"591":1,"592":2,"593":1,"594":1,"598":1,"602":2,"606":1,"1308":1,"1333":1,"1361":1,"1445":1,"1627":1,"2407":2,"2427":1,"2435":1,"2438":1,"2470":1,"2471":1,"2582":6,"2599":1,"2600":1,"2610":1,"2703":1,"2721":2,"2786":1,"2787":4,"2788":3,"2789":3,"2790":1,"2792":1,"2844":1,"2862":1}}],["configurations",{"0":{"1513":1},"2":{"76":1,"265":1,"391":1,"431":1,"493":1,"519":1,"556":1,"617":1,"692":2,"712":1,"713":1,"746":1,"747":1,"756":1,"1513":1,"1937":1,"2000":1,"2005":1,"2019":1,"2020":1,"2309":1,"2451":1,"2667":1,"2677":1,"2697":1,"2894":1,"2918":1,"2938":4}}],["configuration",{"0":{"28":1,"112":1,"183":1,"469":1,"474":1,"475":1,"476":1,"480":1,"482":1,"483":1,"493":1,"494":1,"495":1,"496":1,"497":1,"498":1,"563":1,"661":1,"662":1,"697":1,"701":1,"723":1,"728":1,"730":1,"743":1,"744":1,"745":1,"746":1,"747":1,"748":1,"749":1,"750":1,"751":1,"752":1,"753":1,"754":1,"755":1,"756":1,"764":1,"765":1,"799":1,"801":1,"825":1,"827":1,"854":1,"859":1,"886":1,"889":1,"918":1,"924":1,"953":1,"958":1,"987":1,"992":1,"1021":1,"1026":1,"1055":1,"1060":1,"1089":1,"1094":1,"1123":1,"1128":1,"1157":1,"1162":1,"1191":1,"1194":1,"1197":1,"1203":1,"1213":1,"1215":1,"1244":1,"1245":1,"1265":1,"1266":1,"1282":1,"1286":1,"1292":1,"1383":1,"1387":1,"1400":1,"1402":1,"1403":1,"1412":1,"1437":1,"1537":1,"1538":1,"1550":1,"1553":1,"1558":1,"1561":1,"1601":1,"1619":1,"1670":1,"1693":1,"1768":1,"1791":1,"1802":1,"1839":1,"1840":1,"1920":1,"1943":1,"1944":1,"1945":1,"1954":1,"1981":1,"2016":1,"2018":1,"2049":1,"2059":1,"2060":1,"2176":1,"2182":1,"2211":1,"2214":1,"2252":1,"2253":1,"2256":1,"2261":1,"2271":1,"2281":1,"2296":1,"2315":1,"2320":1,"2372":1,"2710":1,"2711":1,"2715":1,"2716":1,"2747":1,"2846":1,"2847":1,"2898":1},"1":{"476":1,"477":1,"478":1,"479":1,"494":1,"495":1,"496":1,"497":1,"498":1,"663":1,"664":1,"665":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"724":1,"725":1,"729":1,"744":1,"745":2,"746":1,"747":1,"748":1,"749":1,"751":1,"752":1,"753":1,"754":1,"756":1,"766":1,"767":1,"800":1,"826":1,"855":1,"856":1,"857":1,"858":1,"887":1,"888":1,"919":1,"920":1,"921":1,"922":1,"923":1,"954":1,"955":1,"956":1,"957":1,"988":1,"989":1,"990":1,"991":1,"1022":1,"1023":1,"1024":1,"1025":1,"1056":1,"1057":1,"1058":1,"1059":1,"1090":1,"1091":1,"1092":1,"1093":1,"1124":1,"1125":1,"1126":1,"1127":1,"1158":1,"1159":1,"1160":1,"1161":1,"1204":1,"1205":1,"1214":1,"1283":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1401":1,"1413":1,"1414":1,"1551":1,"1552":1,"1554":1,"1555":1,"1556":1,"1557":1,"1559":1,"1560":1,"1562":1,"1563":1,"1602":1,"1603":1,"1604":1,"1605":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1611":1,"1612":1,"1613":1,"1614":1,"1769":1,"1770":1,"1771":1,"1803":1,"1804":1,"1805":1,"1806":1,"1944":1,"1945":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"2257":1,"2258":1,"2259":1,"2260":1,"2262":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2268":1,"2269":1,"2270":1,"2271":1,"2321":1,"2712":1,"2713":1,"2716":1,"2717":1,"2899":1,"2900":1,"2901":1,"2902":1,"2903":1,"2904":1,"2905":1,"2906":1,"2907":1,"2908":1,"2909":1,"2910":1,"2911":1,"2912":1,"2913":1,"2914":1,"2915":1,"2916":1,"2917":1,"2918":1,"2919":1,"2920":1,"2921":1},"2":{"28":1,"45":1,"50":1,"65":1,"69":1,"74":1,"83":2,"114":2,"118":1,"134":2,"138":1,"141":1,"149":2,"176":1,"183":4,"194":3,"198":1,"199":1,"206":1,"211":1,"233":1,"236":3,"238":1,"251":1,"262":2,"285":1,"293":3,"305":3,"314":3,"317":2,"391":2,"429":1,"470":1,"471":2,"472":1,"473":3,"474":2,"475":2,"480":2,"481":1,"487":2,"493":4,"494":1,"495":1,"496":1,"497":3,"498":1,"502":1,"521":2,"553":4,"556":1,"562":1,"568":1,"572":1,"639":1,"661":1,"662":1,"663":1,"664":1,"714":1,"718":2,"720":1,"724":1,"730":1,"746":2,"747":2,"749":3,"751":1,"752":1,"754":1,"756":2,"765":3,"766":1,"767":1,"801":1,"827":1,"859":1,"889":1,"918":4,"924":1,"958":1,"992":1,"1021":2,"1026":1,"1055":2,"1060":1,"1089":6,"1094":1,"1123":6,"1128":1,"1157":2,"1162":1,"1168":1,"1190":1,"1191":1,"1194":1,"1195":1,"1197":2,"1198":1,"1203":1,"1210":1,"1215":1,"1245":2,"1266":1,"1294":1,"1295":1,"1296":1,"1300":2,"1383":1,"1385":1,"1387":2,"1389":1,"1390":1,"1400":1,"1402":1,"1404":1,"1437":1,"1479":1,"1496":1,"1556":1,"1562":1,"1563":1,"1601":1,"1606":2,"1662":1,"1664":2,"1790":1,"1792":1,"1840":1,"1899":1,"1920":2,"1928":1,"1940":1,"1943":1,"2006":2,"2018":4,"2060":1,"2063":1,"2143":1,"2179":1,"2199":1,"2211":1,"2252":1,"2269":1,"2271":1,"2285":2,"2296":1,"2310":1,"2425":1,"2435":2,"2438":1,"2439":1,"2565":1,"2567":1,"2609":1,"2621":1,"2661":1,"2667":2,"2680":1,"2695":1,"2696":1,"2697":1,"2702":1,"2709":1,"2715":1,"2721":12,"2844":2,"2864":1,"2871":1,"2901":1,"2916":1,"2924":1,"2930":1}}],["configs",{"2":{"50":1,"77":1,"191":1,"199":1,"249":2,"285":1,"423":1,"2016":3}}],["config",{"0":{"69":1,"77":1,"83":1,"429":1,"473":1,"558":1,"716":1,"1437":1,"1480":1,"1631":1,"1776":1,"1846":1,"2034":1,"2069":1,"2409":1,"2439":1,"2883":1},"1":{"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"559":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"717":1,"1777":1},"2":{"4":2,"14":1,"25":1,"28":1,"31":2,"34":2,"49":1,"50":1,"70":12,"74":1,"75":1,"76":1,"77":2,"83":2,"92":1,"93":2,"95":2,"114":5,"119":1,"133":2,"134":3,"149":1,"160":4,"169":2,"170":2,"176":4,"183":6,"184":2,"191":10,"199":21,"201":1,"211":16,"222":3,"224":1,"236":10,"246":1,"249":27,"262":2,"266":5,"273":1,"277":2,"285":3,"303":1,"308":1,"317":1,"328":27,"333":4,"338":1,"391":3,"427":2,"429":5,"469":1,"470":1,"471":1,"472":1,"473":1,"474":2,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"486":1,"487":4,"493":4,"494":5,"495":2,"496":2,"497":2,"523":1,"553":2,"555":1,"556":1,"558":2,"577":1,"645":1,"658":1,"663":3,"664":2,"665":1,"667":4,"670":4,"671":4,"701":1,"714":1,"715":1,"718":2,"728":1,"729":1,"745":1,"746":2,"747":2,"748":1,"751":2,"752":2,"753":2,"756":2,"764":1,"765":1,"766":1,"767":1,"799":1,"825":1,"826":1,"854":1,"855":1,"856":1,"857":1,"858":1,"886":1,"887":1,"888":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"953":1,"954":1,"955":1,"956":1,"957":1,"987":1,"988":1,"989":1,"990":1,"991":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1192":1,"1195":1,"1198":1,"1200":1,"1201":1,"1202":1,"1203":1,"1205":1,"1206":1,"1210":1,"1213":1,"1214":1,"1245":3,"1266":1,"1282":1,"1283":1,"1284":1,"1285":1,"1294":1,"1297":1,"1298":1,"1309":1,"1310":1,"1314":1,"1316":1,"1328":1,"1351":1,"1369":1,"1389":1,"1393":1,"1402":1,"1407":1,"1409":1,"1413":21,"1427":1,"1434":1,"1437":3,"1468":1,"1471":1,"1472":1,"1473":1,"1474":2,"1475":1,"1476":1,"1477":1,"1478":1,"1479":1,"1481":1,"1482":1,"1483":1,"1484":2,"1485":1,"1486":1,"1487":1,"1495":1,"1496":2,"1497":1,"1512":1,"1516":2,"1537":1,"1550":1,"1551":1,"1552":1,"1583":1,"1584":1,"1588":2,"1589":1,"1591":1,"1592":1,"1601":1,"1606":1,"1613":1,"1619":2,"1620":1,"1655":1,"1656":1,"1657":1,"1659":1,"1660":1,"1661":1,"1670":1,"1672":1,"1674":1,"1677":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1738":1,"1756":1,"1758":2,"1762":1,"1768":1,"1769":1,"1770":1,"1771":1,"1790":1,"1791":2,"1803":1,"1804":1,"1805":1,"1806":1,"1840":4,"1843":1,"1845":1,"1915":1,"1916":1,"1918":2,"1920":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1943":1,"1956":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1991":1,"1992":2,"1998":1,"1999":1,"2000":1,"2009":1,"2010":1,"2011":2,"2012":1,"2014":2,"2016":2,"2029":1,"2032":2,"2033":1,"2044":1,"2049":1,"2060":4,"2063":1,"2064":1,"2068":1,"2073":2,"2074":1,"2159":1,"2179":1,"2181":1,"2182":1,"2188":1,"2189":1,"2191":2,"2192":1,"2193":1,"2206":2,"2207":1,"2214":1,"2243":1,"2252":1,"2264":2,"2265":2,"2266":1,"2267":2,"2268":1,"2269":1,"2286":1,"2294":1,"2295":1,"2296":3,"2298":1,"2302":2,"2312":1,"2315":3,"2320":1,"2321":1,"2323":1,"2324":1,"2368":1,"2377":2,"2384":2,"2407":2,"2408":1,"2409":7,"2411":5,"2436":1,"2439":23,"2548":1,"2576":3,"2585":1,"2586":1,"2587":1,"2598":1,"2600":1,"2601":1,"2643":1,"2645":1,"2669":1,"2684":1,"2687":1,"2693":1,"2695":1,"2698":1,"2707":1,"2712":1,"2716":2,"2717":1,"2721":4,"2745":1,"2747":1,"2749":11,"2750":2,"2757":1,"2780":1,"2844":1,"2873":4,"2883":3,"2884":1,"2885":1,"2887":2,"2899":2,"2900":1,"2901":3,"2908":2,"2909":2,"2910":2,"2911":1,"2914":1,"2917":4,"2919":2,"2925":1}}],["connects",{"0":{"1624":1},"2":{"1620":1,"2459":1}}],["connector",{"2":{"1395":1,"2258":1,"2487":1}}],["connectivity",{"2":{"2667":1,"2674":1}}],["connecting",{"0":{"390":1},"2":{"390":1,"920":1,"1091":1,"1125":1,"1310":1,"2258":1,"2420":2,"2476":1,"2595":1}}],["connection",{"2":{"92":1,"285":1,"308":1,"328":1,"568":1,"572":1,"1189":1,"1190":1,"1194":1,"1945":3,"2206":2,"2254":1,"2258":2,"2268":4,"2271":1,"2272":1,"2367":1,"2418":1,"2557":2,"2560":2,"2644":1,"2674":1,"2675":1,"2873":3}}],["connected",{"2":{"92":1,"149":1,"182":1,"249":1,"559":1,"563":1,"701":2,"713":1,"718":1,"724":2,"728":3,"736":1,"742":1,"799":1,"802":1,"825":1,"826":1,"828":1,"854":1,"855":1,"860":1,"886":1,"887":1,"890":1,"918":1,"919":1,"925":1,"953":1,"954":1,"959":1,"987":1,"988":1,"993":1,"1021":1,"1022":1,"1027":1,"1055":1,"1056":1,"1061":1,"1089":1,"1090":1,"1095":1,"1123":1,"1124":1,"1129":1,"1157":1,"1158":1,"1163":1,"1197":2,"1213":1,"1214":1,"1216":1,"1244":1,"1249":1,"1282":1,"1291":1,"1310":1,"1436":1,"1468":1,"1469":1,"1480":3,"1551":1,"1552":1,"1564":2,"1624":1,"1675":2,"1676":1,"1693":4,"1846":1,"1945":1,"1998":3,"1999":1,"2006":3,"2010":2,"2011":1,"2013":3,"2014":4,"2069":1,"2179":6,"2208":1,"2254":1,"2260":1,"2265":1,"2267":3,"2268":2,"2271":1,"2281":3,"2368":1,"2383":1,"2416":1,"2459":4,"2501":1,"2605":1,"2608":1,"2671":1,"2676":1,"2679":1,"2683":2,"2688":1,"2711":1,"2713":1,"2714":1,"2848":2,"2849":2,"2850":2,"2851":1,"2856":1,"2858":2,"2860":5,"2865":3,"2868":2,"2869":4,"2873":1,"2876":1}}],["connect",{"0":{"1625":1},"2":{"82":1,"92":1,"432":2,"764":1,"1244":1,"1265":1,"1308":1,"1310":1,"1620":1,"1625":1,"2256":1,"2259":1,"2260":1,"2367":1,"2421":1,"2422":1,"2423":2,"2427":1,"2476":1,"2478":1,"2480":1,"2482":1,"2487":1,"2500":1,"2501":1}}],["cons",{"2":{"2322":1,"2418":1}}],["consecutive",{"2":{"2003":5,"2313":1}}],["consequences",{"0":{"2740":1}}],["consequence",{"2":{"1417":1,"1522":1,"1587":1}}],["consequently",{"2":{"655":1}}],["consult",{"2":{"383":1,"698":1,"713":1,"751":1,"759":1,"1294":1,"2722":1}}],["consulted",{"2":{"157":1}}],["consuming",{"2":{"2591":1}}],["consumes",{"2":{"1947":1}}],["consume",{"2":{"1362":1,"1407":1}}],["consumed",{"2":{"586":1}}],["consumer",{"2":{"231":1,"236":1,"1348":1,"1354":1,"2276":1,"2510":1}}],["consumer2rn42",{"2":{"50":1}}],["consumer2bluefruit",{"2":{"50":1}}],["consumption",{"2":{"134":1,"211":1,"559":1,"646":1,"2439":3}}],["consist",{"2":{"2289":1}}],["consisting",{"2":{"1447":1,"2434":1}}],["consists",{"2":{"360":1,"470":1,"2862":1}}],["consistency",{"2":{"50":1,"114":2,"160":1,"183":1,"233":1,"285":1,"327":1,"520":1,"529":1,"537":1,"614":1,"621":1,"2719":2}}],["consistently",{"2":{"94":1,"176":2,"190":1,"191":1,"1284":1}}],["consistent",{"2":{"49":1,"191":1,"199":1,"293":1,"305":1,"314":1,"520":1,"559":1,"654":1,"675":1,"2749":1,"2847":1}}],["considers",{"2":{"2734":1,"2908":1}}],["considering",{"2":{"1591":1,"2769":1}}],["considerations",{"0":{"1362":1,"2258":1,"2272":1,"2569":1},"1":{"2273":1},"2":{"2673":1}}],["considerably",{"2":{"113":1}}],["consider",{"0":{"410":1},"2":{"410":1,"448":1,"548":1,"611":1,"617":1,"1411":1,"1616":1,"1761":1,"2424":1,"2425":1,"2567":2,"2668":1,"2669":1,"2670":1,"2705":1,"2706":1,"2888":1}}],["considered",{"2":{"241":1,"253":1,"270":1,"281":1,"307":1,"406":2,"567":1,"657":1,"1406":1,"1407":1,"1594":1,"1732":1,"1954":1,"1993":1,"2000":3,"2008":2,"2374":1,"2435":1,"2438":1,"2724":1,"2750":1,"2765":1,"2769":1,"2908":1,"2909":1}}],["construction",{"2":{"2749":2}}],["constructed",{"2":{"2052":1}}],["constraint",{"2":{"2894":1}}],["constraints",{"0":{"2727":1,"2894":1},"2":{"123":1,"134":1,"153":1,"717":1,"1297":1,"2323":1,"2881":1,"2894":2,"2895":1}}],["constraining",{"2":{"1421":1}}],["constrain",{"2":{"176":1,"1522":1,"2014":3}}],["constrained",{"2":{"123":1,"431":1,"2758":1,"2765":1,"2881":1}}],["const",{"0":{"770":1,"773":1,"779":1,"782":1,"785":1,"1256":1,"1274":1,"1709":1,"1711":1,"1715":1,"2221":1,"2223":1,"2225":1,"2227":1,"2342":1},"1":{"771":1,"772":1,"774":1,"775":1,"780":1,"781":1,"783":1,"784":1,"786":1,"787":1,"1257":1,"1258":1,"1275":1,"1710":1,"1712":1,"1716":1,"2222":1,"2224":1,"2226":1,"2228":1,"2343":1},"2":{"247":1,"272":1,"307":1,"587":1,"771":1,"774":1,"780":1,"783":1,"786":1,"1257":1,"1275":1,"1450":2,"1521":1,"1528":1,"1529":2,"1596":1,"1597":1,"1598":1,"1599":6,"1611":1,"1612":1,"1621":1,"1661":1,"1710":1,"1712":1,"1716":1,"1744":1,"1746":6,"1747":3,"1749":1,"1918":1,"1940":1,"1941":1,"1948":13,"2187":7,"2189":6,"2191":3,"2222":1,"2224":1,"2226":1,"2228":1,"2270":5,"2278":1,"2279":1,"2283":10,"2298":1,"2305":1,"2322":1,"2343":1,"2547":1,"2552":1,"2750":7}}],["constantly",{"2":{"2288":1}}],["constant",{"0":{"1931":1},"2":{"191":1,"198":1,"527":1,"1454":1,"1492":1,"1587":1,"1928":3,"1929":2,"1931":2,"1932":1,"1933":1,"2760":2,"2767":2,"2901":1}}],["constants",{"0":{"373":1},"2":{"76":1,"188":1,"191":1,"285":1,"373":10,"698":1,"1417":1,"1587":1,"1758":1,"2917":1}}],["constellation",{"2":{"102":3,"114":1,"211":1}}],["consoles",{"2":{"82":1,"432":1}}],["console",{"0":{"82":1,"432":1,"1330":1},"2":{"50":1,"70":1,"82":2,"93":1,"111":1,"114":4,"119":2,"134":3,"249":1,"277":1,"308":1,"432":9,"572":2,"573":1,"623":1,"1206":1,"1319":1,"1322":1,"1326":2,"1329":2,"1330":2,"1362":1,"1373":1,"1422":2,"1529":1,"1586":1,"1618":1,"1619":7,"1627":1,"1956":1,"2007":1,"2029":1,"2411":1,"2747":2,"2939":1,"2941":1}}],["consolidating",{"2":{"251":1}}],["consolidation",{"0":{"42":1,"221":1},"2":{"50":2,"198":1,"224":1,"233":1,"266":1,"2722":1}}],["consolidated",{"0":{"1443":1},"2":{"220":1}}],["consolidate",{"0":{"204":1},"2":{"191":1,"199":1,"204":1,"211":1,"222":1,"236":1,"249":1,"285":1,"294":2,"1443":1}}],["consolidates",{"2":{"50":1}}],["contiguous",{"2":{"2207":1}}],["continually",{"2":{"1362":1}}],["continuations",{"2":{"199":1}}],["continuing",{"2":{"403":1}}],["continued",{"2":{"238":1,"262":1}}],["continues",{"2":{"133":1,"251":1,"427":1,"1591":1,"1594":1,"2016":1,"2293":1,"2627":1,"2881":1}}],["continue",{"2":{"64":1,"160":1,"240":1,"246":1,"410":1,"1450":1,"1594":2,"1761":1,"1814":1,"1905":1,"1911":1,"1934":1,"2149":1,"2155":1,"2253":1,"2324":1,"2600":1,"2627":2,"2721":1}}],["continuously",{"2":{"1761":1,"2021":1}}],["continuous",{"0":{"1682":1},"2":{"32":1,"1674":6,"1682":1,"2016":1,"2017":1,"2198":2}}],["cont",{"2":{"1674":1}}],["contoller",{"2":{"1194":1}}],["contacted",{"2":{"2567":1}}],["contacts",{"2":{"1407":1,"2422":1,"2427":1,"2459":1}}],["contact",{"0":{"1406":2},"1":{"1407":2,"1408":2,"1409":2,"1410":2,"1411":2},"2":{"594":1,"1406":5,"1645":4,"1653":1,"1654":2,"2016":1,"2420":1,"2421":3,"2459":1}}],["contained",{"2":{"485":1,"666":1,"1844":1,"2066":1,"2844":1}}],["container",{"2":{"211":1,"684":1,"685":1,"2400":2,"2600":1,"2603":1,"2762":1,"2770":1}}],["contains",{"2":{"431":3,"553":2,"555":1,"557":1,"630":1,"733":1,"804":1,"830":1,"862":1,"892":1,"927":1,"961":1,"995":1,"1029":1,"1063":1,"1097":1,"1131":1,"1165":1,"1218":1,"1278":1,"1280":1,"1359":4,"1427":3,"1633":1,"1644":1,"1736":1,"1774":1,"2014":1,"2178":1,"2289":1,"2293":1,"2420":1,"2495":1,"2583":1,"2633":1,"2645":1,"2721":1,"2758":2,"2761":1,"2762":1,"2763":2,"2765":2,"2770":1,"2772":1,"2788":3,"2844":2,"2862":2,"2864":1,"2871":1,"2915":1}}],["contain",{"2":{"236":1,"268":1,"552":1,"579":1,"586":3,"698":1,"718":1,"1427":1,"1675":1,"1821":1,"2052":1,"2322":1,"2369":1,"2437":1,"2441":2,"2442":1,"2601":1,"2710":1,"2713":1,"2719":2,"2762":1,"2938":1}}],["containing",{"0":{"424":1},"2":{"156":1,"191":2,"211":1,"265":1,"284":1,"293":1,"305":1,"307":1,"314":1,"372":1,"473":1,"562":1,"1714":1,"1716":1,"1775":1,"2050":1,"2051":1,"2052":1,"2311":1,"2342":1,"2435":1,"2467":1,"2578":1,"2590":1,"2721":1,"2722":1,"2758":1,"2765":1,"2772":1,"2879":1,"2937":1}}],["context",{"2":{"654":1,"1189":1,"1749":1,"1751":4,"2509":1,"2515":2,"2550":1,"2727":1}}],["contexts",{"2":{"548":1}}],["content",{"0":{"2430":1},"1":{"2431":1},"2":{"149":1,"266":1,"294":2,"351":1,"352":1,"353":1,"354":1,"355":5,"356":1,"370":1,"391":1,"746":1,"1329":1,"1443":1,"1627":1,"1940":1,"1942":2,"1986":1,"2280":2,"2430":1,"2438":1,"2569":1,"2598":1,"2600":1,"2627":1,"2662":1,"2757":2}}],["contents",{"2":{"50":1,"230":1,"611":2,"676":1,"677":2,"1801":1,"1948":3,"2189":1,"2206":1,"2283":1,"2497":1,"2552":1,"2627":1,"2719":1,"2749":2,"2760":1,"2767":1,"2768":1,"2788":2,"2941":1}}],["contrast",{"2":{"1799":1,"2183":1,"2276":1,"2281":2}}],["control+click",{"2":{"2662":1}}],["control+shift",{"2":{"1758":1,"2917":1}}],["control+shift+escape",{"2":{"1670":1}}],["control+a",{"2":{"1452":1}}],["control+alt+delete",{"2":{"1374":1}}],["control+right",{"2":{"683":1}}],["controls",{"0":{"1746":1},"2":{"572":1,"687":1,"729":1,"763":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1204":1,"1401":1,"1497":1,"1550":1,"1552":1,"1606":3,"1766":1,"1791":5,"2045":1,"2063":2,"2268":1,"2578":1,"2747":2,"2750":1,"2808":1}}],["controllable",{"2":{"487":1,"1552":1}}],["controlling",{"2":{"166":1,"726":1,"823":1,"852":1,"884":1,"916":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1121":1,"1155":1,"1211":1,"1751":1,"1752":1,"2033":1}}],["controlled",{"2":{"45":1,"646":1,"658":1,"1676":1,"1756":1,"2016":1,"2065":1,"2210":1,"2643":1,"2750":4}}],["controllerwords",{"2":{"191":1}}],["controllerworks",{"2":{"191":1}}],["controllers",{"2":{"50":1,"134":1,"211":1,"563":1,"718":1,"1194":1,"1385":1,"1388":1,"1396":1,"1914":1,"1947":1,"2001":1,"2179":1,"2189":1,"2254":2,"2256":1,"2258":2,"2266":5,"2271":1,"2423":1,"2699":1}}],["controller",{"0":{"1980":1,"2423":1},"1":{"2424":1},"2":{"36":2,"50":1,"92":1,"93":1,"114":1,"134":1,"176":2,"204":1,"210":1,"211":2,"222":2,"716":1,"1196":1,"1308":1,"1312":1,"1412":1,"1436":1,"1484":1,"1656":1,"1766":1,"1917":1,"1943":1,"1946":1,"1955":1,"1979":1,"1980":1,"2002":1,"2005":1,"2014":1,"2258":1,"2264":2,"2265":1,"2266":6,"2271":2,"2274":1,"2316":1,"2397":1,"2416":1,"2417":2,"2419":1,"2423":1,"2424":5,"2426":1,"2428":1,"2459":2,"2478":1,"2480":1,"2482":1,"2582":2,"2672":1,"2676":2,"2679":2,"2749":2,"2750":1,"2876":1,"2881":1,"2888":1}}],["control",{"0":{"265":1,"275":1,"729":1,"757":1,"817":1,"819":1,"822":1,"844":1,"846":1,"850":1,"858":1,"908":1,"910":1,"914":1,"923":1,"943":1,"945":1,"949":1,"957":1,"977":1,"979":1,"983":1,"991":1,"1011":1,"1013":1,"1017":1,"1025":1,"1045":1,"1047":1,"1051":1,"1059":1,"1093":1,"1127":1,"1161":1,"1234":1,"1236":1,"1240":1,"1366":1,"1917":1,"1934":1,"1989":1,"2038":1,"2039":1,"2041":1,"2044":1},"1":{"758":1,"759":1,"760":1,"818":1,"820":1,"845":1,"847":1,"851":1,"909":1,"911":1,"915":1,"944":1,"946":1,"950":1,"978":1,"980":1,"984":1,"1012":1,"1014":1,"1018":1,"1046":1,"1048":1,"1052":1,"1235":1,"1237":1,"1241":1,"2039":1,"2040":1,"2041":1,"2042":2,"2043":2,"2044":1},"2":{"63":1,"114":1,"149":1,"195":1,"199":2,"231":1,"236":3,"249":1,"265":1,"268":1,"275":1,"277":1,"285":1,"308":1,"331":1,"487":1,"488":1,"492":2,"533":1,"571":1,"572":2,"623":1,"667":1,"683":2,"687":1,"728":1,"757":2,"758":1,"817":2,"819":2,"822":1,"844":2,"846":2,"850":1,"854":1,"857":1,"908":2,"910":2,"914":1,"918":1,"922":1,"943":2,"945":2,"949":1,"953":1,"956":1,"977":2,"979":2,"983":1,"987":1,"990":1,"1011":2,"1013":2,"1017":1,"1021":1,"1024":1,"1045":2,"1047":2,"1051":1,"1055":1,"1058":1,"1089":1,"1092":1,"1123":1,"1126":1,"1157":1,"1160":1,"1234":2,"1236":2,"1240":1,"1263":1,"1280":1,"1300":1,"1308":1,"1313":1,"1366":2,"1374":14,"1375":3,"1413":1,"1435":1,"1443":1,"1447":1,"1452":2,"1461":1,"1480":4,"1485":1,"1492":1,"1497":1,"1504":1,"1547":1,"1552":1,"1557":1,"1586":1,"1670":1,"1684":1,"1746":1,"1792":1,"1838":1,"1917":1,"1934":2,"1990":1,"1996":1,"2000":1,"2033":1,"2038":1,"2042":1,"2044":1,"2058":1,"2069":1,"2178":2,"2181":1,"2187":1,"2209":1,"2210":1,"2248":1,"2249":4,"2250":2,"2291":1,"2302":1,"2310":1,"2311":1,"2312":1,"2324":1,"2372":2,"2411":2,"2420":1,"2445":1,"2457":1,"2496":1,"2507":2,"2510":4,"2513":17,"2515":7,"2516":1,"2531":17,"2534":16,"2535":14,"2540":14,"2543":2,"2559":20,"2560":2,"2605":1,"2643":1,"2644":14,"2710":1,"2745":1,"2825":1,"2849":1,"2875":1,"2882":2,"2899":1,"2908":1,"2909":1,"2910":1,"2917":1}}],["contributor",{"2":{"2740":1,"2790":1}}],["contributors",{"2":{"163":1,"607":2,"2721":1}}],["contribution",{"0":{"611":1},"2":{"607":1,"611":1,"2706":1}}],["contributions",{"2":{"607":1,"611":1,"613":1,"2740":1}}],["contributing",{"2":{"410":1,"614":1,"2403":1,"2570":1,"2625":2,"2723":1}}],["contribute",{"0":{"607":1},"1":{"608":1},"2":{"340":1,"431":1,"486":1,"550":1,"607":1,"609":1,"613":1,"2324":1,"2432":1,"2474":2}}],["contributed",{"2":{"123":1,"2301":1}}],["contrib",{"0":{"10":1,"422":1,"424":1},"2":{"10":2,"69":1,"108":1,"114":2,"134":2,"160":1,"163":1,"176":4,"191":2,"199":1,"222":1,"249":1,"294":1,"328":1,"405":1,"420":1,"422":2,"423":1,"519":1,"2403":1,"2700":3,"2703":1,"2706":2}}],["convenient",{"2":{"1591":1,"1797":1,"2016":1,"2159":1,"2646":1,"2657":1}}],["conveniently",{"2":{"1532":1}}],["convenience",{"2":{"763":1,"2215":1,"2559":1,"2750":1}}],["conventional",{"2":{"2911":1}}],["convention",{"2":{"249":1,"589":1,"1407":5,"1637":1,"2632":1,"2689":1,"2720":1}}],["conventions",{"0":{"4":1,"520":1,"522":1,"612":1},"2":{"134":2,"243":1,"331":1,"408":1,"521":1,"607":1,"612":2,"614":1,"617":1,"1407":2,"2664":1,"2925":2}}],["convey",{"2":{"188":1,"492":1}}],["conversely",{"2":{"2901":1}}],["conversation",{"2":{"552":1,"666":1}}],["conversions",{"2":{"65":1,"77":1,"189":1,"266":25,"1404":1}}],["conversion",{"0":{"1949":1,"2684":1},"2":{"49":1,"172":1,"211":3,"693":1,"714":1,"715":1,"1285":1}}],["converts",{"2":{"167":1,"464":1,"465":1,"466":1,"2074":1,"2748":3,"2788":1,"2902":1}}],["converters",{"0":{"172":1,"189":1,"1385":1,"1386":1,"1388":1,"1396":1},"1":{"1386":1,"1387":1,"1388":1,"1389":2,"1390":2,"1391":2,"1392":2,"1393":2,"1394":2,"1395":2,"1396":1,"1397":2,"1398":2,"1399":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1,"1405":1},"2":{"160":2,"172":1,"176":2,"189":4,"191":2,"199":1,"302":1,"304":1,"306":1,"315":1,"468":1,"1386":1,"1402":1,"2582":1}}],["converter",{"0":{"271":1,"306":1,"315":1},"2":{"114":1,"133":1,"134":1,"160":2,"176":4,"181":2,"189":2,"191":3,"199":3,"207":3,"211":1,"249":1,"271":1,"277":1,"285":1,"306":1,"308":1,"315":1,"317":1,"328":1,"687":1,"1385":1,"1386":1,"1387":3,"1389":1,"1390":1,"1400":1,"1402":1,"1403":1,"1404":2,"1672":1,"1691":1,"2749":1,"2788":1,"2790":1}}],["converted",{"2":{"22":1,"50":1,"201":1,"249":1,"441":1,"445":1,"668":1,"1413":1,"2368":1,"2577":1,"2603":1,"2721":1,"2748":1,"2793":1}}],["convert",{"0":{"304":1,"464":1,"466":1},"2":{"93":1,"114":1,"134":1,"149":4,"153":1,"160":3,"172":1,"176":1,"211":2,"236":3,"266":3,"277":2,"288":1,"304":2,"308":1,"317":2,"461":1,"1285":1,"1295":1,"1385":3,"1387":1,"1388":42,"1389":1,"1396":15,"1403":2,"1417":1,"2216":1,"2684":2,"2746":1,"2748":4,"2750":2,"2788":2,"2886":1,"2941":2}}],["converting",{"0":{"21":1},"2":{"153":1,"189":1,"251":1,"465":1,"1385":1,"1534":1,"2748":2}}],["com4",{"2":{"2667":1}}],["comx",{"2":{"2495":1}}],["com>",{"2":{"2449":4}}],["comfortably",{"2":{"1805":1}}],["comfortable",{"2":{"663":1,"670":1,"2156":1,"2310":1,"2403":1,"2899":1}}],["coming",{"2":{"228":1,"1308":4,"1606":1,"1957":1,"2459":1}}],["come",{"2":{"546":1,"1369":1,"2178":1,"2293":1,"2319":1,"2386":1,"2388":1,"2389":1,"2391":1,"2420":1,"2468":1}}],["comet46",{"2":{"143":2,"149":1,"176":1}}],["comes",{"2":{"99":1,"233":1,"492":1,"525":1,"673":1,"1473":1,"1493":1,"1680":1,"1753":1,"1761":1,"2270":1,"2376":1,"2381":1,"2427":1,"2592":1,"2612":1,"2650":1,"2750":1}}],["comb",{"2":{"231":1,"1616":5}}],["combination",{"2":{"320":1,"550":1,"551":1,"559":1,"663":1,"683":1,"696":2,"1417":1,"1589":3,"1596":1,"1618":1,"1619":1,"1661":1,"1736":1,"1740":1,"1751":2,"1757":1,"1893":1,"1894":1,"1895":1,"1896":1,"2014":1,"2131":1,"2132":1,"2133":1,"2134":1,"2656":1,"2919":1}}],["combinations",{"2":{"99":1,"294":1,"713":1,"760":1,"1386":1,"1404":1,"1670":1,"1736":2,"1757":1,"1937":1,"2159":1,"2166":1,"2374":1,"2410":1,"2559":1,"2643":1}}],["combining",{"2":{"176":1,"573":1,"1375":1,"1512":1,"1612":1,"2377":1,"2384":1,"2879":1,"2914":1}}],["combines",{"2":{"1510":1,"1603":1}}],["combinedmap",{"2":{"2294":1}}],["combined",{"0":{"1932":1,"2028":1},"2":{"176":1,"312":1,"553":1,"573":3,"1416":1,"1655":1,"1765":1,"1928":1,"1932":3,"1933":1,"2018":2,"2020":9,"2028":2,"2030":1,"2156":1,"2178":1,"2294":2,"2418":1,"2492":1,"2497":1,"2844":2}}],["combinedkeys",{"2":{"114":1}}],["combine",{"0":{"1765":1},"2":{"64":1,"249":1,"481":1,"526":1,"663":1,"1374":1,"1452":1,"1990":1,"2020":2,"2028":1,"2189":1,"2559":1}}],["combo\`",{"2":{"1607":1}}],["combo2",{"2":{"1596":2,"1597":1,"1598":2}}],["combo1",{"2":{"1596":2,"1597":1,"1598":2}}],["combos",{"0":{"1596":1,"1598":1,"1604":1,"1613":1,"1757":1},"1":{"1597":1,"1598":1,"1599":1,"1600":1,"1601":1,"1602":1,"1603":1,"1604":1,"1605":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1611":1,"1612":1,"1613":1,"1614":2,"1615":1,"1616":1},"2":{"46":1,"98":3,"114":2,"176":1,"211":1,"328":2,"562":2,"1596":1,"1597":1,"1598":3,"1599":5,"1602":2,"1603":10,"1604":1,"1605":1,"1606":5,"1607":3,"1608":1,"1609":2,"1610":1,"1611":2,"1612":2,"1613":3,"1616":6,"1757":3,"1799":1,"1950":1,"2914":2,"2924":1}}],["combo",{"0":{"98":1,"1602":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1614":1,"2855":1},"1":{"1609":1,"1610":1},"2":{"46":7,"98":3,"112":2,"114":1,"149":2,"160":1,"188":1,"191":1,"199":2,"203":1,"211":3,"222":1,"285":2,"562":20,"572":2,"1588":1,"1596":9,"1597":3,"1598":6,"1599":36,"1600":7,"1602":2,"1603":5,"1604":7,"1605":1,"1606":80,"1607":12,"1608":1,"1609":2,"1610":1,"1611":19,"1612":23,"1613":1,"1614":16,"1615":9,"1616":7,"2411":1,"2588":1,"2721":1,"2748":2,"2855":3,"2933":1}}],["competitive",{"2":{"2568":1}}],["compensating",{"2":{"1993":1}}],["compensated",{"2":{"2724":1}}],["compensate",{"2":{"1407":1,"1487":1,"1993":4}}],["comprising",{"2":{"2650":1,"2862":1,"2872":1}}],["comprise",{"2":{"2578":1}}],["comprises",{"2":{"390":1}}],["compression",{"2":{"2403":1,"2758":1,"2760":3,"2765":1,"2769":4}}],["compressing",{"2":{"2403":2}}],["comprehensions",{"0":{"538":1},"2":{"538":1,"539":1}}],["comprehensive",{"2":{"503":1,"550":1}}],["compromised",{"2":{"312":1}}],["composite",{"2":{"1979":1}}],["composed",{"2":{"1603":1}}],["compose",{"2":{"222":1,"1375":1,"1790":1,"1791":2,"1793":1,"2860":2}}],["component",{"2":{"1641":2,"2731":2,"2734":1,"2770":3,"2870":1,"2871":1,"2935":1}}],["components",{"2":{"130":1,"1284":1,"1310":1,"2420":1,"2722":1,"2732":1,"2734":1,"2740":1}}],["computationally",{"2":{"1410":1}}],["computed",{"2":{"2017":1,"2371":1}}],["compute",{"2":{"191":1,"2371":1}}],["computers",{"0":{"2460":1},"1":{"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2467":1,"2468":1}}],["computer",{"2":{"62":1,"598":1,"624":1,"684":1,"1367":1,"1446":1,"1447":1,"1450":1,"1457":1,"1458":1,"1487":1,"1517":3,"1619":1,"1736":1,"1758":1,"1795":1,"1932":1,"1933":1,"1956":1,"2017":2,"2021":2,"2047":1,"2063":1,"2265":1,"2403":4,"2411":1,"2470":1,"2510":2,"2515":2,"2557":1,"2560":1,"2572":4,"2591":1,"2598":1,"2630":1,"2632":1,"2643":1,"2644":1,"2784":1,"2806":1,"2839":1,"2842":1,"2910":1,"2917":1,"2927":1,"2932":1,"2938":1}}],["computing",{"2":{"143":9,"149":1,"181":2,"270":2,"277":1,"317":1}}],["companies",{"2":{"2795":1}}],["companying",{"2":{"1607":1}}],["company",{"0":{"42":1},"2":{"43":1}}],["compact",{"2":{"546":1,"674":1,"1421":1,"2559":1}}],["comparing",{"2":{"2288":1,"2932":1}}],["comparisons",{"2":{"211":1}}],["comparison",{"0":{"2903":1},"1":{"2904":1,"2905":1,"2906":1},"2":{"190":1,"191":2,"248":1,"333":1}}],["compares",{"2":{"2019":1,"2932":1}}],["compared",{"2":{"2006":1,"2568":1,"2609":1,"2721":1,"2909":1}}],["compare",{"2":{"51":1,"405":1,"2632":1,"2900":1,"2903":1}}],["compatible",{"0":{"306":1,"315":1,"510":1,"1638":1},"1":{"511":1,"512":1,"513":1,"514":1,"515":1,"516":1,"517":1,"518":1,"519":1},"2":{"132":3,"134":1,"149":1,"172":1,"199":1,"294":1,"306":2,"315":2,"320":1,"360":1,"378":1,"510":1,"519":1,"576":2,"1280":1,"1321":1,"1385":1,"1387":1,"1388":1,"1402":1,"1404":2,"1438":1,"1633":1,"1659":1,"1937":1,"2005":1,"2254":2,"2256":1,"2266":4,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":1,"2395":1,"2397":1,"2414":1,"2498":1,"2582":1,"2677":1,"2683":1,"2698":3,"2699":1,"2702":2,"2707":3,"2719":1,"2729":1,"2741":1,"2749":11,"2846":1,"2888":1,"2919":1,"2925":1}}],["compatiblitly",{"2":{"75":1}}],["compatibility",{"0":{"1370":1,"1371":1,"1404":1,"1405":1,"2255":1},"1":{"1372":1,"1405":1},"2":{"31":1,"34":1,"98":1,"114":1,"176":1,"249":1,"262":1,"273":1,"276":1,"285":1,"293":1,"305":1,"312":1,"314":1,"316":1,"331":1,"522":1,"524":1,"573":1,"717":1,"1386":1,"1400":1,"1404":2,"1556":1,"2253":1,"2324":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2567":1,"2700":1,"2702":1,"2719":1,"2721":2}}],["compilable",{"2":{"2435":6}}],["compilation",{"0":{"132":1,"302":1,"468":1},"2":{"36":1,"88":2,"104":2,"114":2,"127":2,"132":3,"134":6,"149":4,"170":1,"176":6,"191":2,"199":2,"211":5,"222":5,"236":2,"249":1,"254":1,"266":1,"285":1,"308":3,"317":1,"371":3,"427":5,"468":1,"546":1,"570":2,"579":1,"584":1,"599":1,"621":2,"2410":2,"2440":1,"2441":1,"2590":1,"2897":1}}],["compiliation",{"2":{"285":1,"294":1}}],["compiling",{"0":{"2589":1},"2":{"58":1,"73":2,"92":1,"134":1,"368":2,"371":1,"414":1,"427":6,"453":1,"467":1,"569":1,"570":1,"581":1,"590":1,"596":1,"613":1,"1334":1,"1392":1,"1435":1,"1443":2,"1938":1,"2210":1,"2277":1,"2290":1,"2404":1,"2410":7,"2578":1,"2750":2}}],["compiledfirmware",{"2":{"428":1}}],["compiledb",{"2":{"132":1,"134":1,"302":1,"427":2,"468":1,"2666":1}}],["compiled",{"2":{"50":1,"182":1,"211":2,"365":1,"428":1,"432":1,"570":1,"577":1,"587":1,"590":1,"1432":1,"1443":1,"2425":1,"2427":1,"2573":1,"2580":1,"2602":1,"2667":2,"2881":1,"2882":1,"2924":1,"2927":2,"2938":1}}],["compiles",{"2":{"49":1,"176":1,"199":1,"453":1,"613":1,"1439":1,"1443":1,"2410":1,"2580":1,"2727":1,"2937":1}}],["compile",{"0":{"363":1,"364":1,"365":1,"366":1,"370":1,"427":1,"453":1,"580":1,"581":1,"582":1,"599":1,"605":1,"2804":1},"2":{"24":1,"28":1,"36":2,"37":1,"43":1,"73":1,"114":8,"120":1,"132":2,"134":3,"149":1,"160":1,"176":2,"191":1,"199":3,"294":1,"302":1,"308":1,"347":1,"360":4,"363":1,"367":1,"370":3,"371":1,"372":2,"374":1,"378":1,"423":1,"427":20,"428":1,"446":1,"447":1,"448":1,"453":2,"468":1,"471":8,"477":1,"478":1,"479":2,"481":5,"483":2,"494":2,"525":3,"561":1,"576":3,"579":4,"584":1,"586":1,"591":1,"599":1,"617":3,"1363":1,"1385":1,"1392":1,"1437":1,"1445":1,"1494":1,"1497":1,"1515":1,"1516":1,"1589":1,"2287":1,"2290":1,"2384":1,"2390":1,"2400":1,"2403":1,"2407":1,"2410":7,"2425":3,"2494":1,"2516":1,"2580":3,"2583":1,"2587":1,"2589":3,"2591":1,"2600":1,"2609":1,"2611":1,"2622":2,"2648":1,"2662":1,"2666":3,"2667":1,"2680":1,"2707":1,"2727":1,"2745":2,"2820":2,"2844":1,"2923":1,"2940":1}}],["compilers",{"2":{"2732":1}}],["compiler",{"0":{"359":1,"584":1},"2":{"21":1,"73":1,"149":1,"191":1,"199":1,"308":1,"359":1,"361":1,"376":1,"580":1,"583":2,"584":1,"1441":1,"1450":1,"2440":1,"2591":1,"2731":1,"2936":1,"2938":1}}],["comply",{"2":{"579":1,"2450":1}}],["complicated",{"2":{"548":1,"1412":2,"1417":1,"1440":1,"1486":1,"1599":1,"2302":1,"2416":1,"2554":1,"2560":1,"2605":1}}],["compliance",{"2":{"222":1,"263":1,"2566":1,"2567":1,"2740":1,"2743":1}}],["compliant",{"2":{"24":1}}],["compliation",{"2":{"114":1}}],["complaints",{"2":{"154":1}}],["complements",{"2":{"2161":1}}],["complementary",{"2":{"93":1,"249":1,"294":1,"718":2,"1300":4}}],["completing",{"2":{"2421":1,"2427":1}}],["completion",{"0":{"505":1},"1":{"506":1,"507":1,"508":1,"509":1},"2":{"279":1,"505":1,"506":1,"508":1,"760":1,"2646":1,"2657":1}}],["completes",{"2":{"1807":1,"2459":1,"2902":1,"2932":1}}],["completed",{"2":{"579":1,"582":1,"1283":1,"1385":1,"2403":2,"2421":1,"2590":1,"2601":1,"2615":1,"2667":1,"2671":1,"2814":1,"2897":1}}],["complete",{"0":{"127":1},"2":{"70":1,"126":1,"236":2,"263":1,"338":3,"361":1,"371":2,"397":1,"505":1,"507":1,"508":3,"509":2,"670":1,"674":1,"750":1,"1202":1,"1205":1,"1245":1,"1340":1,"1486":1,"1528":1,"1799":1,"1803":1,"2312":1,"2338":1,"2362":1,"2421":1,"2423":1,"2501":1,"2579":1,"2580":1,"2584":1,"2626":1,"2652":1,"2656":1,"2709":1,"2719":1,"2721":1,"2741":1,"2863":1}}],["completely",{"2":{"49":1,"195":2,"262":1,"266":1,"562":1,"1416":1,"1479":1,"1484":1,"1516":1,"1610":1,"1655":1,"1736":2,"1749":1,"2415":1,"2421":1,"2495":1,"2548":1,"2579":1}}],["complex",{"0":{"531":1,"1344":1,"2306":1},"1":{"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"134":1,"538":1,"624":1,"669":1,"1413":1,"1455":1,"1596":1,"1622":1,"1751":1,"1844":5,"2047":1,"2066":5,"2306":1,"2416":1}}],["complexity",{"2":{"3":1,"15":1,"153":1,"211":1,"538":1,"2746":1}}],["commercial",{"2":{"2390":1,"2700":1,"2721":2,"2728":1,"2740":1}}],["commenting",{"2":{"411":1}}],["commented",{"2":{"199":1,"2721":2}}],["comment",{"2":{"92":1,"149":2,"191":2,"412":1,"419":1,"520":1,"522":1,"2721":1}}],["comments",{"2":{"77":1,"114":1,"176":1,"211":1,"411":1,"503":1,"520":2,"522":2,"619":1,"1655":1,"1656":1,"1920":1,"2721":2}}],["comm",{"2":{"369":1,"587":2,"1587":1,"2505":1,"2515":1,"2553":1,"2911":1,"2912":1}}],["committee",{"2":{"2699":1}}],["committed",{"2":{"2403":1,"2602":1,"2628":1,"2633":1}}],["committing",{"2":{"613":1,"2723":1}}],["commits",{"2":{"617":1,"2627":5,"2628":1,"2630":2,"2633":1,"2660":1}}],["commit",{"0":{"2597":1,"2601":1,"2631":1},"1":{"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2632":1,"2633":1,"2634":1},"2":{"199":1,"403":1,"405":4,"423":1,"577":1,"586":3,"587":2,"611":1,"613":2,"2403":2,"2588":1,"2591":1,"2593":1,"2594":1,"2596":1,"2601":3,"2602":1,"2603":1,"2625":1,"2626":1,"2627":9,"2628":1,"2631":1,"2633":5,"2660":1,"2723":2}}],["comms",{"2":{"176":1,"191":2,"2746":1}}],["comma",{"2":{"534":1,"535":3,"669":2,"1522":1,"1686":1,"2270":1,"2310":1,"2320":1,"2505":1,"2511":1,"2515":2,"2578":1,"2662":1}}],["commas",{"2":{"160":1,"211":1,"1633":1,"2578":1,"2720":1}}],["command+option+escape",{"2":{"1670":1}}],["command+",{"2":{"342":1,"1669":1}}],["commandline",{"2":{"285":1}}],["commands",{"0":{"425":1,"426":1,"449":1,"455":1,"2509":1,"2748":1},"1":{"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"456":1,"457":1,"458":1,"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1},"2":{"55":1,"93":1,"114":2,"132":2,"134":1,"149":1,"153":1,"158":1,"173":1,"199":1,"333":1,"403":2,"405":1,"414":1,"427":3,"453":1,"463":2,"472":2,"497":1,"551":2,"559":1,"572":2,"1313":1,"1330":1,"1443":1,"1522":1,"1724":1,"1947":1,"1948":1,"2284":1,"2410":2,"2411":2,"2434":1,"2496":1,"2584":1,"2594":1,"2598":2,"2601":1,"2607":1,"2612":1,"2632":1,"2637":2,"2666":2,"2750":2}}],["command",{"0":{"82":1,"83":1,"173":1,"1589":1,"1617":1,"1724":2,"2445":1,"2609":1,"2637":1},"1":{"1618":1,"1619":1,"1725":2},"2":{"1":1,"10":2,"18":2,"65":1,"70":3,"82":1,"83":1,"93":1,"111":1,"114":1,"158":1,"160":1,"173":1,"176":1,"199":1,"211":2,"302":2,"308":1,"347":1,"348":2,"381":1,"387":3,"414":1,"418":1,"427":2,"428":3,"429":1,"430":1,"431":1,"432":1,"433":1,"435":1,"438":1,"439":1,"440":2,"441":1,"442":1,"443":2,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"456":1,"457":2,"458":1,"459":2,"460":1,"461":1,"462":1,"463":1,"464":2,"465":2,"466":2,"467":1,"468":2,"471":2,"472":2,"473":1,"481":1,"487":1,"494":2,"521":1,"551":1,"559":1,"572":1,"587":1,"615":1,"683":2,"685":1,"765":1,"1312":2,"1319":1,"1322":1,"1346":1,"1363":2,"1385":1,"1429":1,"1439":1,"1443":2,"1586":2,"1588":1,"1589":7,"1617":3,"1618":3,"1619":6,"1724":2,"1725":2,"2251":3,"2266":1,"2281":1,"2295":1,"2324":1,"2376":2,"2379":1,"2381":2,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2400":1,"2403":2,"2410":7,"2411":1,"2445":4,"2495":2,"2496":1,"2501":3,"2507":2,"2515":2,"2559":2,"2576":1,"2577":1,"2580":1,"2582":1,"2583":1,"2587":2,"2588":1,"2589":1,"2601":1,"2606":2,"2609":3,"2612":1,"2621":5,"2622":1,"2627":2,"2632":2,"2633":1,"2637":1,"2646":1,"2648":1,"2657":1,"2662":1,"2666":4,"2707":1,"2721":1,"2748":5,"2809":1,"2882":1,"2937":1,"2942":2}}],["communicate",{"2":{"1244":1,"1313":1,"2047":1,"2257":1,"2379":1,"2499":1}}],["communicates",{"2":{"520":1,"2288":1,"2729":1}}],["communicated",{"0":{"2897":1},"2":{"408":1,"2896":1,"2897":1}}],["communicating",{"2":{"244":1,"1269":1,"1691":1,"1937":1,"2050":1,"2276":1,"2419":1}}],["communications",{"2":{"2268":1}}],["communication",{"0":{"2268":1},"2":{"30":1,"408":1,"565":1,"568":3,"1189":3,"1193":1,"1194":1,"1195":1,"1196":1,"1202":1,"1204":2,"1205":1,"1206":2,"1283":1,"1392":2,"1939":2,"1998":1,"1999":1,"2002":1,"2006":2,"2010":1,"2012":1,"2013":1,"2014":1,"2047":1,"2254":1,"2258":2,"2261":1,"2268":8,"2269":1,"2271":4,"2272":1,"2411":2,"2734":2,"2873":1}}],["community",{"0":{"288":1,"298":1,"1394":1,"1398":1,"1626":1,"1627":1,"1628":1,"1629":1,"2699":1},"1":{"1627":1,"1628":1,"1629":1,"1630":2,"1631":2,"1632":2,"1633":2,"1634":2,"1635":2,"1636":2,"1637":2,"1638":2},"2":{"70":2,"116":1,"160":1,"176":1,"199":1,"201":1,"211":25,"213":1,"236":3,"249":1,"266":2,"285":2,"288":3,"294":1,"298":1,"308":6,"312":1,"317":1,"328":2,"333":1,"408":1,"427":1,"522":1,"616":1,"625":4,"1340":4,"1388":1,"1394":1,"1395":2,"1396":1,"1398":1,"1427":4,"1430":1,"1626":1,"1627":5,"1628":1,"1629":1,"1630":2,"1633":2,"1635":1,"1636":1,"1638":2,"2301":1,"2432":1,"2470":3,"2474":1,"2566":1,"2567":3,"2568":3,"2620":1,"2635":1,"2699":1,"2721":3,"2724":1,"2845":1,"2862":2,"2889":1}}],["commonly",{"2":{"69":1,"187":1,"232":1,"534":1,"2178":1,"2194":1,"2258":1,"2310":1,"2416":1,"2726":1,"2837":1}}],["common",{"0":{"30":1,"32":1,"33":1,"80":1,"1840":1,"2006":1,"2016":1,"2060":1,"2417":1,"2728":1},"1":{"31":1,"34":1},"2":{"5":1,"8":1,"30":2,"32":1,"74":3,"75":1,"86":1,"92":1,"93":1,"94":3,"107":1,"113":1,"114":5,"133":4,"134":5,"149":2,"160":1,"176":2,"191":1,"199":2,"201":1,"204":1,"211":2,"222":1,"236":2,"248":1,"285":2,"293":1,"305":1,"314":1,"317":2,"438":1,"559":1,"562":1,"572":1,"589":1,"626":1,"654":1,"711":1,"761":1,"1242":1,"1263":1,"1269":1,"1318":1,"1330":1,"1334":1,"1362":1,"1418":1,"1441":1,"1444":1,"1450":1,"1491":1,"1497":1,"1606":1,"1609":1,"1663":1,"1942":1,"1946":1,"1955":1,"2018":2,"2024":1,"2159":1,"2170":1,"2272":1,"2280":1,"2310":1,"2319":1,"2411":1,"2426":1,"2440":4,"2451":1,"2459":1,"2501":15,"2559":1,"2609":1,"2632":1,"2707":1,"2721":1,"2748":1,"2799":1,"2801":1,"2819":1,"2841":1,"2844":1,"2927":1,"2933":1,"2937":1,"2941":2}}],["com",{"2":{"2":1,"21":1,"196":1,"211":1,"236":1,"421":1,"422":2,"572":1,"598":1,"608":1,"611":1,"673":1,"674":5,"746":7,"747":1,"1316":2,"1349":1,"1350":2,"1354":2,"1356":3,"1358":1,"1373":1,"1599":2,"1628":1,"1801":1,"1946":10,"2187":1,"2380":1,"2400":1,"2403":3,"2443":1,"2495":1,"2499":1,"2585":1,"2586":1,"2601":3,"2630":8,"2632":5,"2667":2,"2721":3,"2891":1}}],["4bpp",{"2":{"2769":2}}],["4+i",{"2":{"2750":2}}],["4t",{"2":{"2245":1}}],["4=25",{"2":{"1948":1}}],["4×",{"2":{"1659":1}}],["49",{"2":{"1521":1,"1680":1,"2000":1}}],["470ω",{"2":{"1564":1}}],["47",{"2":{"1486":1,"1680":1}}],["479b",{"2":{"371":1}}],["43",{"2":{"1486":1,"1680":1,"2000":1}}],["432",{"2":{"1484":1}}],["4352",{"2":{"611":1}}],["44",{"2":{"1486":1,"1521":1,"1680":1,"2000":1}}],["440",{"2":{"1484":1,"1487":1}}],["44100u",{"2":{"716":1}}],["42",{"0":{"1356":1},"2":{"1356":1,"1477":1,"1486":1,"1521":1,"1680":1,"2289":1,"2367":5}}],["4226",{"2":{"49":1}}],["4kib",{"2":{"2186":1}}],["4k2",{"2":{"921":1,"955":1,"989":1}}],["4k",{"2":{"856":1,"857":2,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":2,"1126":2,"1160":2}}],["4key",{"2":{"143":2}}],["451",{"2":{"2301":1}}],["45°",{"2":{"1769":1}}],["453",{"2":{"1159":2}}],["45",{"2":{"852":1,"1486":1,"1680":1,"1947":1,"2059":1}}],["45pm",{"2":{"406":1}}],["412",{"2":{"2434":1}}],["41",{"2":{"1486":1,"1680":1,"2000":1}}],["4173",{"2":{"459":1}}],["4198",{"2":{"93":1}}],["4a7b",{"2":{"370":1,"371":1}}],["4rows",{"2":{"311":1}}],["4ghz",{"2":{"285":1,"2370":3,"2521":3}}],["4pplet",{"2":{"211":3}}],["460800",{"2":{"1204":1}}],["46",{"2":{"181":2,"1486":1,"1680":1,"2000":1,"2417":1}}],["4800",{"2":{"1269":1}}],["48",{"2":{"168":1,"181":2,"211":1,"236":1,"884":1,"985":1,"1121":1,"1680":1,"1840":2,"1920":1,"1930":1,"2000":1,"2059":3,"2060":2,"2270":2,"2864":1,"2871":1}}],["4871",{"2":{"2":1}}],["40kb",{"2":{"2682":1}}],["400",{"2":{"1930":1,"2010":2,"2439":1,"2511":1,"2515":1}}],["400000",{"2":{"764":1}}],["400000l",{"2":{"559":1}}],["4000",{"2":{"663":1}}],["40ms",{"2":{"1602":1}}],["403",{"2":{"1356":2}}],["4095u",{"2":{"716":2,"1482":2}}],["4096",{"2":{"131":1,"134":1}}],["40percentclub",{"2":{"266":1,"322":4,"328":2}}],["40",{"2":{"149":1,"176":1,"211":1,"548":1,"674":1,"1486":1,"1602":1,"1680":5,"1929":1,"1931":1,"1933":1,"2000":1,"2006":1,"2064":1,"2185":1,"2687":1,"2757":1}}],["401",{"2":{"114":1}}],["4x4",{"2":{"1430":3,"2714":2,"2721":1}}],["4x5",{"2":{"222":1}}],["4x8",{"2":{"143":2}}],["4x7",{"2":{"143":2}}],["4x6",{"2":{"143":2,"149":1,"222":1,"311":8,"317":1}}],["4x",{"2":{"114":1,"1678":1,"1679":1,"2006":3}}],["4x12",{"2":{"70":1,"1430":3,"1433":1,"1486":1}}],["4",{"0":{"108":1,"399":1,"597":1,"2310":1,"2465":1,"2622":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"70":1,"93":1,"108":1,"111":1,"114":5,"134":2,"188":1,"191":3,"211":2,"222":1,"236":1,"249":1,"266":2,"317":1,"342":1,"348":2,"369":1,"406":4,"421":5,"423":1,"505":1,"520":2,"522":1,"568":1,"587":2,"690":1,"692":22,"693":1,"716":1,"728":1,"756":1,"765":2,"769":2,"825":1,"854":1,"856":1,"857":2,"886":1,"918":2,"921":2,"922":2,"953":1,"955":2,"956":2,"987":1,"989":2,"990":2,"1021":1,"1024":2,"1055":1,"1058":2,"1089":2,"1092":2,"1123":2,"1126":2,"1157":1,"1160":2,"1204":1,"1213":1,"1244":1,"1249":1,"1297":1,"1395":1,"1412":1,"1417":2,"1425":1,"1454":2,"1457":1,"1486":1,"1532":1,"1584":4,"1603":2,"1619":2,"1659":2,"1660":2,"1675":1,"1678":1,"1679":1,"1680":1,"1691":1,"1696":2,"1769":2,"1772":3,"1840":5,"1846":1,"1919":31,"1920":1,"1927":2,"1931":1,"1947":2,"1948":1,"1960":3,"1980":3,"2000":3,"2003":1,"2011":1,"2060":5,"2069":1,"2183":3,"2185":1,"2189":4,"2206":1,"2207":3,"2232":1,"2233":1,"2245":1,"2257":2,"2258":3,"2260":3,"2268":1,"2281":1,"2288":1,"2289":2,"2294":1,"2296":5,"2308":2,"2310":1,"2370":1,"2403":3,"2409":1,"2435":2,"2439":3,"2440":2,"2459":1,"2500":1,"2503":2,"2508":2,"2511":2,"2515":9,"2521":1,"2525":3,"2532":31,"2533":2,"2541":3,"2553":1,"2560":1,"2621":2,"2688":1,"2744":1,"2747":2,"2748":2,"2750":3,"2758":1,"2765":1,"2769":2,"2788":4,"2789":3,"2858":1,"2862":4,"2864":1,"2870":1,"2871":1,"2872":1,"2886":1,"2929":1,"2942":2}}],["p>need",{"2":{"2627":2}}],["p>",{"2":{"2627":3}}],["p>for",{"2":{"2627":1}}],["p9",{"2":{"2511":1,"2515":1,"2931":1}}],["p7",{"2":{"2511":1,"2515":1,"2931":1}}],["p5",{"2":{"2511":1,"2515":1,"2931":1}}],["p3",{"2":{"2511":1,"2515":1,"2931":1}}],["p3d",{"0":{"255":1},"2":{"211":1,"241":5,"249":1,"266":1}}],["ppls",{"2":{"2511":1,"2515":1,"2931":1}}],["pp",{"2":{"2310":1}}],["p6",{"2":{"1771":1,"2511":1,"2515":1,"2931":1}}],["p4",{"2":{"1771":1,"2511":1,"2515":1,"2931":1}}],["p2",{"2":{"1771":1,"2511":1,"2515":1,"2931":1}}],["p8",{"2":{"1771":1,"2511":1,"2515":1,"2931":1}}],["p0",{"2":{"1771":2,"2511":1,"2515":1,"2931":1}}],["p1",{"2":{"2511":1,"2515":1,"2931":1}}],["p146279",{"2":{"1365":1}}],["p1800fl",{"2":{"102":2,"114":1}}],["pqrs",{"2":{"1355":1}}],["pbr",{"2":{"2294":1}}],["pb",{"2":{"1960":32,"2541":32}}],["pb11",{"2":{"1208":1,"1209":1,"1210":1}}],["pb10",{"2":{"1208":1,"1209":1,"1210":1}}],["pb4",{"2":{"1208":1}}],["pb3",{"2":{"1208":1}}],["pb7",{"2":{"1208":1,"1209":1,"1210":1}}],["pb6",{"2":{"1208":1,"1209":1,"1210":1}}],["pnp",{"2":{"1551":1}}],["pnputil",{"2":{"685":2}}],["png",{"2":{"673":1,"2746":1,"2748":4}}],["photos",{"2":{"2605":1}}],["phonetic",{"2":{"2284":1}}],["phone",{"2":{"2258":1}}],["phrases",{"2":{"1444":1,"1450":1}}],["phpshop",{"2":{"1316":1}}],["php",{"2":{"1316":1,"1350":1,"1364":1,"1372":1,"1373":1}}],["physically",{"2":{"1284":1,"1436":1,"2438":1,"2853":1,"2903":1}}],["physical",{"0":{"1797":1,"2930":1},"1":{"1798":1},"2":{"597":2,"674":1,"1284":1,"1359":3,"1407":1,"1427":2,"1428":1,"1583":1,"1797":1,"1840":7,"2060":7,"2064":1,"2271":1,"2293":1,"2418":1,"2553":1,"2605":1,"2714":3,"2787":3,"2788":2,"2816":1,"2862":1,"2903":1,"2904":2,"2905":3,"2906":2,"2915":1,"2930":2,"2931":1}}],["phapbgs",{"2":{"2288":1,"2289":1}}],["phantagom",{"2":{"211":1}}],["phantom",{"2":{"211":1}}],["phase",{"2":{"191":1,"1249":1,"1282":3,"1292":2}}],["pjrc",{"2":{"511":2,"516":4,"682":1,"1323":1,"2381":1,"2384":1,"2481":1,"2812":1}}],["pdot",{"2":{"2511":1,"2515":1,"2931":1}}],["pd3",{"2":{"2259":1}}],["pd1",{"2":{"2259":1,"2260":1}}],["pd0",{"2":{"1368":1,"2259":1,"2260":1}}],["pd9",{"2":{"1208":1,"1209":1,"1210":1}}],["pd8",{"2":{"1208":1,"1209":1,"1210":1}}],["pd6",{"2":{"1208":1,"1210":1}}],["pd5",{"2":{"1208":1,"1210":1,"1985":1}}],["pdr",{"2":{"918":1,"922":8,"953":1,"956":9,"987":1,"990":9,"1021":1,"1024":9,"1055":1,"1058":9,"1089":1,"1092":9,"1123":1,"1126":9,"1157":1,"1160":9}}],["pdfs",{"2":{"1591":1}}],["pdf",{"2":{"285":2,"1364":1,"1368":2,"1416":1,"2528":1}}],["pd2",{"2":{"191":1,"1985":1,"2259":1}}],["pwl",{"2":{"2294":1}}],["pwr",{"2":{"1348":1,"1980":1,"2289":1,"2294":1,"2510":1,"2515":1}}],["pw88",{"2":{"222":1,"241":2}}],["pwmd4",{"2":{"1562":1}}],["pwmd2",{"2":{"1300":1}}],["pwmd1",{"2":{"718":1,"719":1,"1477":1}}],["pwmd11tim1",{"2":{"713":1}}],["pwm3360",{"2":{"149":1}}],["pwm",{"0":{"14":1,"718":1,"719":1,"741":1,"821":1,"848":1,"856":1,"880":1,"912":1,"921":1,"947":1,"955":1,"981":1,"989":1,"1015":1,"1023":1,"1049":1,"1057":1,"1083":1,"1117":1,"1151":1,"1159":1,"1185":1,"1238":1,"1290":1,"1300":1,"1475":1,"1477":1,"1554":1,"1559":1,"1562":1},"1":{"742":1,"849":1,"881":1,"913":1,"948":1,"982":1,"1016":1,"1050":1,"1084":1,"1118":1,"1152":1,"1186":1,"1239":1,"1476":1},"2":{"14":4,"49":1,"50":1,"93":1,"134":3,"160":1,"176":3,"191":2,"222":1,"236":4,"249":8,"266":1,"285":3,"650":1,"651":1,"708":1,"712":2,"713":5,"718":10,"719":2,"720":2,"733":1,"734":3,"737":1,"741":1,"804":1,"805":4,"809":1,"813":1,"821":1,"830":1,"831":4,"836":1,"840":1,"848":1,"854":3,"856":11,"862":1,"863":4,"868":1,"872":1,"880":1,"892":1,"893":4,"900":1,"904":1,"912":1,"918":3,"921":8,"927":1,"928":4,"935":1,"939":1,"947":1,"953":3,"955":8,"961":1,"962":4,"969":1,"973":1,"981":1,"987":3,"989":8,"995":1,"996":4,"1003":1,"1007":1,"1015":1,"1021":3,"1023":7,"1029":1,"1030":4,"1037":1,"1041":1,"1049":1,"1055":3,"1057":7,"1063":1,"1064":4,"1071":1,"1075":1,"1083":1,"1097":1,"1098":4,"1105":1,"1109":1,"1117":1,"1131":1,"1132":4,"1139":1,"1143":1,"1151":1,"1157":3,"1159":10,"1165":1,"1166":4,"1173":1,"1177":1,"1185":1,"1218":1,"1219":4,"1226":1,"1230":1,"1238":1,"1286":1,"1290":2,"1300":15,"1307":1,"1389":1,"1390":1,"1468":2,"1475":3,"1477":7,"1547":2,"1552":2,"1553":1,"1554":2,"1555":2,"1556":1,"1559":2,"1560":1,"1562":11,"2424":1,"2682":1,"2688":1,"2849":2,"2850":3,"2876":2}}],["pt",{"2":{"222":3}}],["pmns",{"2":{"2511":1,"2515":1,"2931":1}}],["pmeg2005eh",{"2":{"2273":1}}],["pm2040",{"2":{"176":2,"277":1,"317":1,"1386":1,"1388":4}}],["pmw3320",{"0":{"2013":1},"2":{"211":1,"2013":6}}],["pmw33xx",{"0":{"273":1,"276":1,"284":1},"2":{"175":2,"176":3,"199":1,"236":1,"249":1,"273":3,"276":1,"277":1,"2014":23}}],["pmw3389",{"2":{"149":2,"199":1,"2014":1}}],["pmw3360",{"2":{"114":3,"118":1,"149":4,"160":1,"2014":1,"2016":1,"2721":1}}],["pmw",{"0":{"2014":2},"2":{"118":1,"2014":6}}],["pcmm",{"2":{"2511":1,"2515":1}}],["pcint",{"2":{"1983":1}}],["pc",{"2":{"1355":3}}],["pc13",{"2":{"2501":1}}],["pc11",{"2":{"1208":1,"1209":1,"1210":1}}],["pc10",{"2":{"1208":1,"1209":1,"1210":1}}],["pc5",{"2":{"1208":1,"1209":1}}],["pc4",{"2":{"1208":1,"1209":1}}],["pca9505",{"2":{"176":1}}],["pca9555",{"2":{"149":1}}],["pcba",{"2":{"2888":3}}],["pcbheaven",{"2":{"2459":1}}],["pcb1",{"2":{"2397":2}}],["pcb",{"2":{"18":2,"114":1,"134":2,"176":2,"211":2,"222":2,"308":1,"311":1,"328":1,"674":2,"1193":1,"1197":1,"1326":1,"1362":1,"2376":1,"2379":1,"2381":1,"2382":2,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2415":1,"2438":1,"2476":1,"2605":4,"2683":1,"2688":1,"2707":1,"2721":1,"2787":1,"2838":1,"2845":1}}],["pcbs",{"2":{"18":1,"37":2,"114":1,"249":1,"2376":1,"2443":1,"2683":3}}],["pseudocode",{"2":{"2773":1}}],["pseudorandomly",{"2":{"2784":1}}],["pseudorandom",{"2":{"2239":1}}],["psls",{"2":{"2511":1,"2515":1,"2931":1}}],["pste",{"2":{"2509":1,"2515":1}}],["pstr",{"2":{"1529":1,"1695":1,"1696":1,"1712":1,"1939":11,"1942":2,"2240":1,"2241":1,"2277":11,"2886":2}}],["psi",{"2":{"1696":3}}],["pscr",{"2":{"369":1,"587":2,"2509":1,"2515":1,"2554":1}}],["ps",{"0":{"1364":1,"1935":1,"1979":1,"1988":1,"2868":1},"1":{"1980":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1},"2":{"133":1,"134":1,"175":1,"176":1,"191":1,"211":3,"236":1,"266":1,"285":1,"1935":1,"1979":2,"1988":1,"2868":6}}],["psp",{"2":{"118":1}}],["ps2avrgb",{"0":{"2493":1},"2":{"235":1,"1288":1,"2383":1,"2493":1,"2605":1}}],["ps2",{"2":{"114":2,"133":1,"134":1,"149":1,"222":1,"1981":2,"1982":5,"1983":9,"1984":5,"1985":17,"1986":3,"1988":17,"1989":4,"1990":10,"1991":1,"1992":4,"1993":3,"1994":2,"1995":1,"2868":1}}],["punctuation",{"0":{"1686":1,"2505":1},"2":{"1587":1,"1686":1,"2374":1}}],["pulsing",{"2":{"1680":6,"2063":2}}],["pulses",{"2":{"1659":2,"1843":9,"2063":2}}],["pulse",{"2":{"1283":3,"1547":1,"1680":1,"2063":10,"2065":1}}],["pulled",{"2":{"1294":1,"1675":1,"2377":1,"2384":1,"2677":1}}],["pulldown",{"2":{"854":3,"857":12,"918":2,"922":3,"953":2,"956":3,"987":2,"990":3,"1021":2,"1024":3,"1055":2,"1058":3,"1089":2,"1092":3,"1123":2,"1126":3,"1157":2,"1160":3,"1564":1}}],["pulls",{"2":{"361":1,"364":1,"2721":1}}],["pullup",{"2":{"134":1,"236":1,"769":2,"854":3,"857":12,"918":2,"922":3,"953":2,"956":3,"987":2,"990":3,"1021":2,"1024":3,"1055":2,"1058":3,"1089":2,"1092":3,"1123":2,"1126":3,"1157":2,"1160":3,"1294":2}}],["pulling",{"2":{"10":1,"24":1,"49":1,"1294":1,"2719":1}}],["pull",{"0":{"408":1,"2829":1},"1":{"409":1,"410":1,"411":1,"412":1},"2":{"2":1,"38":1,"45":1,"69":1,"87":1,"103":1,"126":1,"243":1,"333":1,"403":2,"405":2,"408":3,"411":1,"412":1,"422":1,"423":1,"594":1,"607":2,"611":9,"615":1,"617":1,"673":1,"746":1,"758":5,"1194":2,"1202":2,"1210":1,"1294":2,"1310":1,"1336":1,"1338":1,"1340":1,"1411":1,"1439":1,"2257":1,"2260":2,"2403":3,"2474":1,"2626":1,"2628":2,"2631":1,"2632":2,"2633":2,"2675":3,"2677":1,"2679":1,"2684":1,"2723":1,"2724":1,"2829":1,"2843":1,"2895":1,"2942":1}}],["pupdr",{"2":{"769":2}}],["puzzle",{"2":{"671":1}}],["pumps",{"2":{"1661":1}}],["pumpkinpad",{"2":{"241":1}}],["pumpkin",{"2":{"191":1,"241":1,"249":1}}],["pumkinpad",{"2":{"249":1}}],["public",{"0":{"2373":1},"2":{"249":1,"328":1,"1438":3,"2450":1,"2568":1,"2725":3}}],["publishing",{"0":{"2634":1}}],["published",{"2":{"182":2,"373":1,"685":1,"1438":1,"2437":1,"2443":1,"2725":1,"2833":1}}],["publish",{"2":{"176":1,"188":1,"191":2,"199":1,"373":1,"2634":1}}],["pushed",{"2":{"577":1,"763":1,"1410":4,"1661":1,"2750":1}}],["pushbutton",{"2":{"255":1}}],["push",{"2":{"243":1,"262":1,"396":1,"403":3,"405":3,"421":2,"422":2,"423":2,"424":2,"611":2,"758":3,"1210":1,"1294":1,"1472":1,"2403":2,"2421":1,"2583":1,"2588":1,"2590":2,"2594":1,"2600":1,"2601":2,"2630":6,"2632":4,"2633":5,"2634":2}}],["putc",{"0":{"1707":1},"1":{"1708":1}}],["puts",{"0":{"1709":1,"1711":1},"1":{"1710":1,"1712":1},"2":{"1695":1,"1696":1,"1711":1,"2516":1,"2745":1}}],["putting",{"2":{"474":1,"2411":1,"2444":1,"2467":1,"2845":1}}],["put",{"0":{"2605":1},"2":{"134":1,"182":1,"184":1,"283":1,"284":1,"507":1,"583":1,"597":1,"607":1,"613":1,"617":1,"631":1,"643":1,"683":2,"1478":1,"1761":1,"1991":1,"1992":2,"2293":1,"2308":1,"2310":2,"2323":1,"2406":1,"2427":1,"2516":1,"2569":1,"2570":1,"2572":1,"2605":1,"2721":1,"2724":1,"2744":1,"2745":1,"2788":1}}],["puca",{"2":{"134":1}}],["purchases",{"2":{"2567":1}}],["purchased",{"2":{"2498":1}}],["purchase",{"2":{"2286":1,"2567":1}}],["purple",{"2":{"2067":2,"2189":2,"2205":2,"2615":2}}],["purposes",{"2":{"459":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1941":1,"2052":1,"2279":1,"2435":1,"2497":1,"2667":1,"2788":1,"2817":1}}],["purpose",{"2":{"411":2,"489":1,"1300":1,"1438":1,"1563":1,"2269":8,"2646":1,"2657":1,"2725":1,"2747":1}}],["pur",{"2":{"918":1,"922":10,"953":1,"956":9,"987":1,"990":9,"1021":1,"1024":9,"1055":1,"1058":9,"1089":1,"1092":9,"1123":1,"1126":9,"1157":1,"1160":9}}],["purely",{"2":{"2319":1}}],["purejavahidapi",{"2":{"2050":1}}],["pure",{"2":{"293":1,"305":1,"314":1}}],["purge",{"2":{"134":1,"238":1}}],["pursuit40",{"2":{"143":2}}],["pursuit",{"2":{"109":1}}],["peer",{"2":{"2799":2}}],["peej",{"2":{"211":1}}],["peql",{"2":{"2511":1,"2515":1}}],["pepper",{"2":{"2310":3}}],["pep8",{"2":{"522":1}}],["pent",{"2":{"2511":1,"2515":1,"2931":1}}],["penalize",{"2":{"2374":1}}],["pendulum",{"2":{"2063":3,"2887":1}}],["pending",{"2":{"656":1,"657":1,"2567":2}}],["pen",{"2":{"2006":1}}],["pedal",{"2":{"1919":1,"2532":1}}],["peaks",{"2":{"2420":1}}],["peak",{"2":{"1678":1,"1679":2}}],["pearl",{"2":{"211":5}}],["pe1",{"2":{"1208":1}}],["pe0",{"2":{"1208":1}}],["pegasushoof",{"2":{"199":2}}],["petruziamini",{"2":{"266":1}}],["pet",{"2":{"191":1}}],["people",{"2":{"119":2,"164":2,"172":2,"173":1,"221":1,"231":1,"244":2,"288":1,"419":1,"503":1,"548":1,"549":1,"613":1,"616":1,"617":1,"624":1,"631":1,"659":1,"663":2,"673":1,"675":1,"1318":1,"1332":1,"1341":1,"1344":1,"1373":1,"1379":1,"1415":1,"1421":1,"1491":1,"1626":1,"2398":1,"2411":1,"2428":1,"2430":1,"2432":2,"2474":1,"2554":1,"2576":2,"2582":1,"2626":1,"2723":1,"2828":1,"2890":1,"2898":1,"2899":1,"2920":1,"2940":1}}],["peiorisboards",{"2":{"102":1}}],["perpetually",{"2":{"2895":1}}],["perhaps",{"2":{"1749":1,"2915":1}}],["permitted",{"2":{"1758":1,"2719":1,"2720":1,"2742":1,"2917":1}}],["permissions",{"2":{"1312":1,"2728":1}}],["permission",{"2":{"199":1,"333":1}}],["permissive",{"0":{"2908":1},"2":{"112":2,"176":1,"562":4,"1513":1,"2309":1,"2310":1,"2847":2,"2902":1,"2904":2,"2905":3,"2906":2,"2908":11,"2909":2,"2914":5}}],["permanently",{"2":{"1684":1}}],["perks",{"2":{"1378":1}}],["perfectly",{"2":{"548":1,"2610":1}}],["perfect",{"2":{"228":1,"611":1,"1497":1}}],["perform",{"2":{"637":2,"693":1,"725":1,"1596":1,"1736":1,"1757":1,"1941":1,"1952":1,"2025":1,"2158":1,"2161":1,"2172":1,"2175":1,"2176":1,"2273":1,"2279":1,"2398":1,"2476":1,"2542":1,"2645":1,"2667":1,"2669":1,"2749":12,"2872":1,"2908":2,"2909":2}}],["performed",{"2":{"572":1,"649":1,"752":1,"753":1,"1770":1,"2495":1}}],["performs",{"2":{"169":1,"485":1,"584":1,"751":1,"752":1,"753":1,"754":1,"2156":2,"2159":2,"2377":1,"2384":1,"2927":1}}],["performing",{"2":{"134":1,"2175":2}}],["performance",{"2":{"93":1,"175":1,"176":1,"215":1,"236":1,"546":1,"641":2,"642":1,"1328":1,"1407":3,"1410":1,"1557":1,"1943":1,"1947":1,"2016":1,"2179":1,"2739":1,"2747":1}}],["perceptible",{"2":{"2929":1}}],["percentage",{"2":{"1541":1,"1544":1,"1546":1}}],["percent",{"0":{"1540":1,"1543":1,"1545":1},"1":{"1541":1},"2":{"537":1,"725":1,"2539":1,"2558":1}}],["perc",{"2":{"176":2,"2539":1,"2558":1}}],["person",{"2":{"1497":1,"2877":1}}],["personal",{"2":{"160":1,"191":1,"1316":1,"1349":1,"2403":1,"2443":1,"2445":1,"2591":2,"2595":1,"2596":1,"2601":1,"2621":1,"2623":1,"2660":1,"2720":1}}],["perspective",{"2":{"387":6,"392":1,"2636":1,"2700":1}}],["persisted",{"2":{"1920":1}}],["persistence",{"2":{"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1}}],["persistent",{"0":{"661":1,"1412":1,"2780":1,"2783":1},"1":{"1413":1,"1414":1},"2":{"131":1,"661":1,"1412":1,"1416":1,"1422":3,"1480":1,"1520":1,"1696":1,"1956":1,"2266":1,"2316":1,"2516":1,"2745":1,"2747":1,"2780":2,"2783":1,"2901":1}}],["persists",{"2":{"303":1,"1416":1}}],["persist",{"2":{"134":1,"541":1,"558":1,"2021":1,"2320":2,"2324":1,"2411":1}}],["perimeter",{"2":{"2008":1}}],["periodic",{"2":{"2462":1}}],["periodically",{"2":{"368":1,"509":1,"579":1,"1557":1,"2303":1}}],["periods",{"2":{"1633":1,"2310":1,"2372":3}}],["period",{"2":{"112":1,"199":1,"236":1,"264":1,"265":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"393":2,"406":1,"470":1,"559":1,"653":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1253":1,"1255":1,"1258":1,"1261":1,"1492":2,"1511":1,"1522":1,"1550":1,"1562":2,"1602":1,"1675":1,"1732":1,"1759":1,"2372":1,"2643":1,"2757":1,"2850":1}}],["peripherals",{"0":{"2689":1},"1":{"2690":1,"2691":1,"2692":1},"2":{"118":2,"146":1,"163":1,"211":1,"229":2,"234":3,"244":1,"713":1,"750":1,"765":1,"1197":1,"1202":1,"1207":1,"1210":1,"1245":1,"1266":1,"1402":1,"1471":1,"1996":1,"2668":1,"2685":1,"2688":1,"2689":1,"2722":1,"2727":1}}],["peripheral",{"0":{"234":1},"2":{"49":1,"176":1,"191":2,"199":1,"234":1,"711":1,"713":1,"747":1,"752":3,"753":1,"756":1,"765":5,"1190":1,"1194":1,"1196":1,"1200":3,"1201":3,"1202":5,"1210":1,"1245":3,"1250":1,"1266":3,"1290":1,"1291":2,"1299":1,"1300":1,"1471":1,"1986":4,"2688":1,"2690":1,"2691":1,"2692":1,"2700":2,"2704":2,"2732":1,"2739":1}}],["per",{"0":{"1504":1,"1606":1,"1804":1,"1918":1,"2371":1,"2412":1,"2916":1,"2920":1},"1":{"2372":1,"2373":1,"2374":1},"2":{"0":1,"9":1,"19":1,"22":1,"39":1,"52":1,"63":2,"92":1,"93":1,"112":6,"114":2,"149":1,"176":1,"184":1,"191":1,"194":3,"195":2,"198":1,"199":4,"201":1,"211":1,"213":1,"224":1,"238":1,"307":1,"317":1,"524":1,"526":1,"535":1,"562":16,"586":1,"619":1,"641":1,"714":1,"746":1,"765":1,"1245":2,"1266":1,"1280":2,"1310":1,"1330":1,"1407":8,"1410":10,"1442":1,"1450":1,"1469":1,"1471":1,"1478":1,"1481":1,"1492":2,"1497":1,"1512":2,"1547":1,"1588":1,"1606":9,"1638":1,"1659":1,"1664":1,"1804":3,"1846":3,"1849":1,"1929":1,"1930":3,"1931":8,"1933":1,"1943":1,"2014":3,"2069":5,"2072":1,"2178":1,"2182":3,"2245":6,"2268":1,"2298":1,"2302":2,"2312":2,"2371":1,"2568":1,"2569":1,"2721":1,"2748":1,"2750":3,"2758":1,"2762":1,"2765":1,"2847":4,"2864":1,"2871":1,"2877":1,"2887":1,"2896":1,"2899":1,"2901":2,"2908":2,"2909":1,"2910":1,"2913":1,"2916":2,"2917":1,"2920":1,"2929":2}}],["pkg",{"2":{"2620":1}}],["pk",{"2":{"94":1,"114":1,"199":1,"1407":1,"1410":3,"2847":3}}],["pgm",{"2":{"160":1,"1606":1}}],["pgup",{"2":{"90":2,"209":1,"369":2,"587":2,"1662":2,"2159":1,"2509":1,"2515":1,"2553":1,"2554":1}}],["pgdn",{"2":{"90":2,"120":1,"209":1,"369":2,"587":2,"1445":1,"1662":2,"2159":1,"2509":1,"2515":1,"2553":1,"2554":1}}],["pywinusb",{"2":{"2050":1}}],["pyhidapi",{"2":{"2050":1,"2052":1}}],["pytest",{"0":{"463":1},"2":{"277":1,"317":1,"463":5,"499":1,"500":1,"504":1,"550":1}}],["pythonimport",{"2":{"2052":1}}],["pythonistas",{"2":{"522":1}}],["pythonfrom",{"2":{"348":1}}],["python3",{"2":{"158":1,"418":1,"486":1,"1522":1}}],["python",{"0":{"23":1,"462":1,"522":1},"2":{"23":1,"70":2,"76":1,"149":1,"158":1,"160":2,"285":2,"338":3,"415":1,"418":1,"462":2,"463":2,"487":4,"489":1,"499":1,"501":1,"503":2,"522":2,"524":1,"528":1,"533":1,"546":1,"550":1,"551":1,"552":2,"612":2,"664":3,"670":2,"671":3,"1522":1,"2050":1,"2052":1,"2384":1,"2748":1}}],["pyformat",{"2":{"199":1}}],["py",{"2":{"76":1,"114":1,"222":1,"338":3,"487":1,"527":1,"551":1,"552":1,"664":3,"670":1,"671":3,"2620":2}}],["pirate",{"0":{"2487":1},"1":{"2488":1},"2":{"2487":2,"2488":1}}],["piezos",{"2":{"1472":1}}],["piezo",{"2":{"713":2,"719":1,"1469":1,"1472":1,"1473":1,"1476":2}}],["piece",{"2":{"548":1,"671":1,"1375":1,"2285":1,"2427":1,"2465":1}}],["pieces",{"2":{"249":1,"548":1,"2420":2,"2612":1,"2934":1}}],["pitch",{"2":{"231":1,"1484":3,"1919":4,"2532":4}}],["pi50",{"2":{"211":2}}],["piantor",{"2":{"211":1}}],["piggy60",{"2":{"207":4,"211":2}}],["pizza65",{"2":{"191":1}}],["pizzakeyboards",{"2":{"191":1}}],["pi60",{"2":{"191":1,"236":1}}],["pio0",{"2":{"1202":1,"1299":1,"1986":1}}],["pio1",{"2":{"249":1,"1202":2,"1299":2,"1986":2}}],["pio",{"0":{"1202":1,"1289":1,"1299":1,"1986":1},"2":{"176":2,"191":3,"211":1,"249":1,"1194":1,"1195":3,"1198":3,"1202":7,"1289":2,"1292":2,"1299":2,"1390":2,"1986":4,"2685":2,"2697":4}}],["pi",{"0":{"163":1,"517":1,"1394":1,"2397":1,"2685":1},"1":{"2686":1,"2687":1,"2688":1,"2689":1,"2690":1,"2691":1,"2692":1,"2693":1,"2694":1,"2695":1,"2696":1,"2697":1,"2698":1,"2699":1},"2":{"163":1,"176":1,"189":1,"191":1,"199":1,"1195":1,"1198":1,"1202":1,"1386":2,"1388":5,"1396":5,"1986":1,"2687":1,"2688":1,"2699":1,"2888":1}}],["pipe",{"2":{"1758":1,"2539":1,"2558":1,"2917":1}}],["pipes",{"2":{"390":1}}],["pipeline",{"2":{"198":1,"1661":1,"2722":1}}],["pip",{"0":{"418":1},"2":{"158":2,"418":2,"486":1,"1522":1}}],["pillow",{"0":{"158":1},"2":{"158":2,"160":1,"2748":1}}],["pistachio",{"2":{"134":1,"143":6,"222":1}}],["picture",{"2":{"2721":1}}],["picro",{"2":{"2699":1}}],["pic",{"2":{"2487":1}}],["picks",{"2":{"2409":1}}],["picky",{"2":{"522":1}}],["picking",{"2":{"156":1}}],["picked",{"2":{"130":2,"145":1,"163":1,"210":1,"232":1,"248":1,"580":1,"1521":1}}],["pick",{"2":{"120":1,"485":1,"492":1,"520":1,"583":1,"612":1,"684":1,"696":1,"1316":1,"1477":1,"1584":1,"1733":1,"1760":1,"2002":2,"2018":3,"2157":1,"2707":1,"2710":1,"2894":1}}],["picolibc",{"2":{"134":1,"308":1}}],["pico",{"2":{"55":15,"163":1,"191":1,"199":1,"236":1,"241":4,"308":1,"317":1,"753":1,"2397":1,"2687":2}}],["pimoroni",{"0":{"2012":1},"2":{"114":2,"118":2,"176":1,"2012":9}}],["pixdata",{"2":{"2747":1,"2750":3}}],["pixart",{"2":{"328":1}}],["pixels",{"2":{"1930":2,"1933":2,"1941":3,"1943":1,"1948":5,"2003":5,"2279":3,"2281":1,"2283":5,"2750":9,"2760":2,"2767":2,"2769":2}}],["pixel",{"2":{"134":1,"149":1,"176":1,"199":1,"222":2,"248":1,"277":1,"285":1,"328":1,"1930":1,"1948":2,"2063":9,"2283":2,"2747":1,"2748":2,"2749":5,"2750":7,"2758":2,"2765":2,"2769":8,"2771":4,"2887":3}}],["pix",{"2":{"74":2}}],["pid>",{"2":{"432":1}}],["pid",{"0":{"1316":1},"1":{"1317":1},"2":{"70":1,"111":1,"169":1,"176":1,"184":1,"249":2,"266":1,"317":2,"432":1,"559":1,"685":1,"686":1,"1316":1,"1353":1,"2569":1,"2710":3,"2721":1,"2875":1}}],["pink",{"2":{"2067":2,"2205":2}}],["pinky",{"2":{"1491":1}}],["pinwheels",{"2":{"2063":3,"2887":1}}],["pinwheel",{"2":{"1843":4,"2063":12,"2887":3}}],["ping",{"0":{"794":1},"1":{"795":1,"796":1},"2":{"794":2,"2721":1}}],["pintomux",{"2":{"199":1,"695":1,"696":1}}],["pinouts",{"2":{"1392":1,"1660":1,"2417":1,"2501":1}}],["pinout",{"2":{"176":1,"568":2,"690":1,"1394":1,"1395":1,"1660":1,"2417":1,"2423":1,"2500":1,"2687":1,"2699":2}}],["pinnacle",{"2":{"118":2,"175":1,"176":2,"191":1,"2005":3,"2006":19,"2007":5,"2008":3,"2009":3,"2045":1}}],["pinxx",{"2":{"114":1}}],["pins>",{"2":{"2271":2}}],["pins",{"0":{"1552":1,"2674":1,"2675":1},"2":{"49":1,"70":1,"111":2,"112":2,"114":2,"134":1,"176":2,"191":2,"199":2,"211":1,"236":2,"249":1,"277":1,"328":1,"390":2,"559":14,"568":12,"620":1,"632":1,"633":2,"637":11,"663":1,"666":1,"687":1,"690":1,"692":4,"712":1,"718":1,"719":1,"720":1,"728":1,"729":1,"764":2,"765":2,"769":1,"802":1,"825":1,"828":1,"854":1,"857":1,"858":1,"860":1,"886":1,"890":1,"918":1,"919":1,"920":1,"922":1,"923":1,"925":1,"953":1,"954":1,"956":1,"957":1,"959":1,"987":1,"990":1,"991":1,"993":1,"1021":1,"1024":1,"1025":1,"1027":1,"1055":1,"1058":1,"1059":1,"1061":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1095":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1129":1,"1157":1,"1158":1,"1160":1,"1161":1,"1163":1,"1193":1,"1195":1,"1197":2,"1198":2,"1207":1,"1210":4,"1213":1,"1216":1,"1244":2,"1245":3,"1263":1,"1265":2,"1266":2,"1291":1,"1294":1,"1308":1,"1369":1,"1392":1,"1395":1,"1397":1,"1398":1,"1404":2,"1405":2,"1468":2,"1471":1,"1472":1,"1475":1,"1476":1,"1480":1,"1552":3,"1557":1,"1559":1,"1564":2,"1620":3,"1659":5,"1660":7,"1664":9,"1675":4,"1676":1,"1693":3,"1791":1,"1793":1,"1946":7,"1984":1,"1986":1,"2011":1,"2014":8,"2208":3,"2265":1,"2271":9,"2368":1,"2383":1,"2416":1,"2420":1,"2423":2,"2424":3,"2426":1,"2453":1,"2476":3,"2500":1,"2501":1,"2605":1,"2670":1,"2672":1,"2673":1,"2674":2,"2676":2,"2677":5,"2679":1,"2683":2,"2684":1,"2686":1,"2687":2,"2688":1,"2694":1,"2696":2,"2697":1,"2711":2,"2712":3,"2713":7,"2721":1,"2749":2,"2811":1,"2821":1,"2849":1,"2850":2,"2856":2,"2858":1,"2865":6,"2873":3}}],["pin",{"0":{"243":1,"306":1,"315":1,"735":2,"741":2,"1191":1,"1194":1,"1197":1,"1248":1,"1310":1,"1404":1,"1405":1,"1624":1,"2264":1,"2265":1,"2673":1,"2687":1,"2713":1},"1":{"736":2,"742":2,"1249":1,"1250":1,"1405":1,"2674":1,"2675":1,"2676":1,"2677":1},"2":{"28":2,"45":1,"70":2,"93":1,"111":1,"112":2,"114":5,"134":1,"149":1,"160":4,"172":1,"175":1,"176":2,"190":1,"191":1,"199":4,"201":3,"211":8,"222":1,"236":1,"243":33,"249":3,"266":1,"277":10,"294":1,"308":2,"519":1,"559":26,"563":4,"566":3,"567":7,"568":1,"633":5,"637":3,"692":1,"693":1,"695":5,"696":9,"701":6,"713":1,"718":5,"719":4,"724":3,"728":8,"736":3,"742":3,"746":5,"747":2,"756":2,"757":1,"758":34,"765":4,"769":2,"799":3,"825":2,"826":1,"854":2,"855":1,"860":1,"886":2,"887":1,"890":1,"918":2,"925":1,"953":2,"959":1,"987":2,"988":1,"993":1,"1021":2,"1022":1,"1027":1,"1055":2,"1056":1,"1061":1,"1089":2,"1095":1,"1123":2,"1129":1,"1157":2,"1163":1,"1190":1,"1191":3,"1192":2,"1194":5,"1195":3,"1197":12,"1198":7,"1202":2,"1208":2,"1209":2,"1210":6,"1213":2,"1214":1,"1216":1,"1244":3,"1245":13,"1249":2,"1262":1,"1266":8,"1282":3,"1291":2,"1294":4,"1295":1,"1296":4,"1300":1,"1308":13,"1309":4,"1310":5,"1368":2,"1386":1,"1392":2,"1393":2,"1400":1,"1404":3,"1406":1,"1436":1,"1467":1,"1468":10,"1469":2,"1471":4,"1472":3,"1473":3,"1474":2,"1475":5,"1476":4,"1477":5,"1480":9,"1550":4,"1551":2,"1552":4,"1555":2,"1559":1,"1560":1,"1562":2,"1564":3,"1584":1,"1620":1,"1624":1,"1664":1,"1672":5,"1675":8,"1693":6,"1766":1,"1767":1,"1770":4,"1777":3,"1791":11,"1793":9,"1945":7,"1946":3,"1979":1,"1980":2,"1982":2,"1983":4,"1984":2,"1985":2,"1986":3,"1998":12,"1999":3,"2000":6,"2006":3,"2010":8,"2011":4,"2013":12,"2014":11,"2016":16,"2179":11,"2208":2,"2259":2,"2260":2,"2264":4,"2265":3,"2268":2,"2271":1,"2281":6,"2368":4,"2377":2,"2384":2,"2411":3,"2424":1,"2478":3,"2480":3,"2482":3,"2487":2,"2492":1,"2500":1,"2669":2,"2674":3,"2675":4,"2676":4,"2679":1,"2683":1,"2684":1,"2687":2,"2688":2,"2693":1,"2695":15,"2697":2,"2713":1,"2721":1,"2749":70,"2846":1,"2848":6,"2849":5,"2850":4,"2851":3,"2856":1,"2858":8,"2860":10,"2865":4,"2868":6,"2869":8,"2873":7,"2876":3}}],["pliers",{"2":{"2414":1,"2421":1}}],["pl",{"2":{"2294":3}}],["plover",{"0":{"2286":1,"2287":1},"1":{"2288":1,"2289":1,"2290":1},"2":{"1413":1,"1424":1,"1622":4,"2284":1,"2285":2,"2286":5,"2287":6,"2291":2,"2292":2,"2880":4}}],["ploopyco",{"2":{"266":1,"285":1,"291":4,"317":1}}],["ploopy",{"2":{"134":1,"199":1,"294":1}}],["ply2",{"2":{"1655":2,"2523":1}}],["ply1",{"2":{"1655":2,"2523":1}}],["ply8x",{"2":{"300":2,"308":1}}],["plywrks",{"2":{"211":1,"300":2,"308":1}}],["plump",{"2":{"2427":1}}],["pluggable",{"2":{"2258":1}}],["plugging",{"2":{"1345":1,"1583":1,"2254":1,"2258":1,"2383":1,"2605":1,"2710":1}}],["plugged",{"2":{"566":4,"683":1,"1329":1,"2318":1,"2370":1,"2521":1,"2842":1}}],["plug",{"2":{"674":1,"683":1,"1375":1,"1655":1,"2426":1,"2495":1,"2501":1,"2605":2}}],["plugins",{"0":{"2650":1,"2653":1},"1":{"2651":1,"2652":1,"2653":1},"2":{"2650":1,"2653":1}}],["plugin",{"2":{"502":1,"521":1,"2397":2,"2646":1,"2651":1,"2653":1,"2667":1}}],["plunger",{"2":{"1675":1}}],["plunge",{"2":{"288":1}}],["plus",{"2":{"143":2,"176":2,"211":2,"222":1,"226":1,"241":4,"1948":1,"2283":1,"2416":1,"2511":1,"2515":1,"2539":1,"2558":1}}],["plenty",{"2":{"512":1,"1805":1}}],["plexus75",{"2":{"143":2}}],["pleased",{"2":{"224":1}}],["please",{"2":{"14":1,"16":1,"37":1,"43":1,"49":1,"195":1,"196":1,"228":1,"240":1,"273":1,"276":1,"284":1,"302":1,"385":1,"419":1,"468":1,"503":2,"520":1,"522":1,"546":1,"552":1,"592":1,"597":1,"600":1,"604":1,"605":1,"606":1,"608":2,"613":1,"614":1,"617":3,"642":1,"673":1,"698":1,"1197":1,"1287":1,"1335":2,"1336":1,"1395":1,"1411":1,"1434":1,"1438":1,"1589":1,"1634":1,"1655":1,"1656":1,"1678":1,"1679":1,"1758":1,"1956":1,"1979":1,"1982":1,"2050":1,"2179":1,"2189":1,"2324":1,"2408":1,"2437":1,"2440":1,"2446":1,"2453":1,"2555":1,"2567":1,"2572":1,"2582":1,"2608":1,"2626":1,"2628":1,"2689":1,"2690":1,"2691":1,"2707":2,"2708":2,"2720":1,"2724":1,"2751":1,"2752":1,"2754":1,"2889":1,"2917":1,"2935":1}}],["plastic",{"2":{"2422":1}}],["placing",{"2":{"2182":1,"2459":1}}],["placement",{"2":{"2260":1,"2310":1}}],["placeholder",{"2":{"1441":1,"1765":1}}],["placed",{"2":{"370":1,"548":1,"1295":1,"1547":1,"1564":1,"1639":1,"1943":1,"2260":1,"2273":1,"2427":1,"2439":1,"2440":1,"2459":1,"2589":1,"2603":1,"2709":1,"2721":2}}],["place",{"2":{"114":1,"176":2,"182":1,"194":1,"249":1,"284":1,"460":1,"509":1,"520":1,"541":1,"632":1,"681":2,"688":1,"1313":1,"1345":2,"1350":1,"1353":1,"1425":1,"1438":1,"1479":1,"1521":1,"1552":1,"1597":1,"2266":1,"2273":1,"2305":1,"2310":1,"2393":1,"2395":1,"2397":1,"2406":1,"2415":1,"2418":1,"2421":3,"2423":1,"2424":1,"2428":1,"2461":1,"2551":2,"2633":1,"2708":1,"2793":1,"2877":1,"2886":1,"2890":1,"2901":1,"2942":1}}],["places",{"2":{"111":1,"387":1,"537":1,"614":1,"667":1,"1616":1,"1642":1,"2310":1,"2498":1,"2787":1,"2915":1,"2930":1}}],["plates",{"2":{"2443":1}}],["plate",{"2":{"2414":2,"2415":4,"2418":1}}],["plat",{"2":{"133":1,"134":1}}],["platforms",{"2":{"50":1,"93":1,"137":1,"156":1,"160":1,"176":1,"191":1,"222":1,"522":1,"617":1,"757":1,"758":1,"1190":1,"1192":1,"1321":1,"2927":2}}],["platform",{"2":{"50":2,"65":1,"75":1,"111":1,"113":4,"114":4,"123":1,"133":5,"134":5,"149":1,"160":1,"163":2,"189":1,"191":1,"199":7,"211":1,"285":1,"711":1,"758":1,"1189":1,"1401":1,"1402":1,"1556":1,"1562":1,"1937":1,"2738":1,"2742":1,"2749":2,"2796":1,"2927":4,"2938":1}}],["plans",{"2":{"2940":1}}],["planning",{"0":{"2416":1},"1":{"2417":1},"2":{"2415":1,"2419":1,"2424":1,"2425":1}}],["planned",{"2":{"88":1,"617":1,"2210":1,"2414":1,"2418":1}}],["plan",{"2":{"143":2,"618":1,"677":1,"2416":2,"2611":1}}],["planck",{"0":{"17":1,"1317":1},"2":{"17":1,"270":2,"277":2,"387":2,"427":2,"435":1,"440":1,"450":2,"451":2,"452":1,"453":1,"674":7,"1317":1,"1340":1,"1362":4,"1424":1,"1432":4,"1433":2,"1434":2,"1474":2,"1486":2,"1521":1,"2050":1,"2242":1,"2286":1,"2296":1,"2377":2,"2384":2,"2400":2,"2403":1,"2410":8,"2416":2,"2429":1,"2434":1,"2580":4,"2603":1,"2607":2}}],["plain",{"2":{"1588":1,"2181":1,"2537":1,"2553":1,"2592":2,"2612":2,"2646":1,"2657":1}}],["plain60",{"2":{"57":2}}],["plaid",{"2":{"37":2,"249":1}}],["player",{"2":{"2510":1,"2515":1}}],["played",{"2":{"716":2,"1481":1,"1680":2}}],["plays",{"2":{"1479":12,"1480":16}}],["playback",{"2":{"1448":1,"1484":2,"2246":1,"2247":1,"2515":1}}],["playing",{"2":{"629":1,"711":1,"716":1,"1478":1,"1484":2,"1517":3,"1595":1,"2247":1}}],["play",{"0":{"27":2},"2":{"27":2,"222":1,"392":1,"546":1,"629":2,"1413":2,"1448":1,"1467":1,"1479":3,"1484":1,"1497":1,"1529":2,"1599":1,"1622":2,"1655":2,"1658":2,"1746":9,"1753":1,"1794":3,"1807":5,"2214":1,"2321":6,"2510":2,"2515":2,"2523":2,"2667":2,"2780":1,"2849":1,"2934":1}}],["p",{"0":{"773":1,"1711":1,"1715":1,"2225":1,"2227":1},"1":{"774":1,"775":1,"1712":1,"1716":1,"2226":1,"2228":1},"2":{"14":1,"211":1,"266":3,"317":1,"328":1,"348":1,"369":1,"431":4,"453":2,"458":2,"587":2,"690":2,"764":1,"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1244":1,"1265":1,"1529":3,"1532":1,"1533":1,"1551":1,"1559":1,"1560":1,"1591":1,"1628":1,"1695":1,"1696":2,"1939":8,"1940":1,"1942":2,"1948":7,"1949":6,"2159":1,"2181":1,"2240":1,"2241":1,"2277":8,"2278":1,"2283":3,"2289":2,"2294":2,"2310":2,"2379":2,"2382":1,"2495":3,"2503":3,"2515":3,"2537":1,"2553":1,"2598":1,"2666":4,"2886":2}}],["pave",{"2":{"2569":1}}],["paper",{"2":{"2291":2}}],["pam8302",{"2":{"1480":1}}],["pa0",{"2":{"1209":1}}],["pa3",{"2":{"1208":1,"1209":1,"1210":1}}],["pa2",{"2":{"1208":1,"1209":1,"1210":1}}],["pa1",{"2":{"1209":1}}],["pa15",{"2":{"1208":1,"1209":1}}],["pa14",{"2":{"1208":1,"1209":1}}],["pa11",{"2":{"718":1}}],["pa10",{"2":{"718":1,"1208":1,"1209":1,"1210":1}}],["pa9",{"2":{"718":1,"1208":1,"1209":1,"1210":1}}],["pa8",{"2":{"718":1,"1477":2}}],["pasted",{"2":{"2721":1}}],["paste",{"2":{"2403":1,"2497":1,"2509":2,"2515":2,"2563":1,"2564":1,"2600":1,"2721":1,"2788":1}}],["past",{"0":{"394":1,"407":1},"2":{"1495":1,"2511":1,"2515":1,"2569":1,"2918":1,"2931":1}}],["passes",{"2":{"1422":1,"1528":1,"2178":1}}],["passed",{"2":{"194":1,"431":2,"442":1,"444":1,"453":2,"467":3,"645":2,"654":1,"655":1,"1244":1,"1245":1,"1280":1,"1511":1,"1526":2,"1751":1,"1756":2,"1948":2,"2019":1,"2020":1,"2067":1,"2205":1,"2268":1,"2283":2,"2303":2,"2433":1,"2459":1,"2785":2}}],["passing",{"2":{"431":1,"563":1,"1948":1,"2020":1,"2283":1,"2311":1,"2433":1,"2572":1}}],["passwords",{"2":{"1444":1,"2784":1}}],["password",{"2":{"312":1,"2601":1}}],["pass",{"2":{"22":1,"114":1,"130":1,"134":1,"149":2,"338":3,"397":1,"457":1,"489":2,"498":1,"504":1,"521":1,"541":1,"543":4,"1416":1,"1484":1,"1532":1,"1533":1,"2459":2,"2501":1,"2750":1,"2879":1}}],["pauses",{"2":{"717":1}}],["pause",{"2":{"392":1,"559":1,"1448":1,"1688":1,"1746":8,"2509":2,"2510":2,"2515":4,"2605":1}}],["paus",{"2":{"369":1,"587":2,"2509":1,"2515":1,"2554":1}}],["pay",{"2":{"2265":1}}],["payloads",{"2":{"2050":1}}],["payload",{"0":{"369":1},"2":{"369":1,"370":1,"2050":1}}],["paying",{"2":{"198":1}}],["paw3222",{"2":{"2011":3}}],["paw3204",{"2":{"176":1,"2010":3}}],["paw",{"0":{"2010":1,"2011":1},"2":{"328":1,"2010":2,"2011":1}}],["pain",{"2":{"2424":1}}],["painter",{"0":{"153":1,"232":1,"248":1,"464":1,"465":1,"466":1,"2746":1,"2747":1,"2748":1,"2749":1,"2750":1,"2751":1,"2753":1,"2754":1,"2755":1},"1":{"2747":1,"2748":1,"2749":1,"2750":1,"2752":1,"2753":1,"2754":2,"2755":2,"2756":1,"2757":1},"2":{"153":5,"158":1,"160":1,"176":1,"199":2,"211":2,"232":5,"248":3,"249":1,"285":1,"294":2,"464":1,"465":1,"466":1,"2746":21,"2747":12,"2748":11,"2749":48,"2750":44,"2751":2,"2752":5,"2754":3}}],["paid",{"2":{"608":1,"2724":1}}],["pairs",{"0":{"2323":1},"2":{"586":1,"669":1,"1620":1,"2161":1,"2324":1,"2844":1}}],["pair",{"2":{"202":1,"307":1,"1664":1,"1986":1,"2340":1,"2344":1,"2370":1,"2521":1}}],["pachi",{"2":{"211":2,"277":1}}],["packaging",{"0":{"419":1},"2":{"2420":1,"2569":1,"2731":1}}],["package",{"2":{"380":1,"419":2,"421":2,"527":1,"528":1,"1315":1,"1522":1,"2499":1,"2619":1,"2620":1,"2650":1,"2651":2,"2652":1,"2700":1,"2703":1,"2820":1}}],["packages",{"2":{"167":1,"387":1,"415":1,"2499":1,"2619":1,"2663":1,"2700":1}}],["pack",{"2":{"387":1,"2403":1,"2664":2}}],["packs",{"2":{"387":3,"2271":1}}],["packed",{"2":{"236":2,"328":1,"1758":2,"1775":1,"2758":1,"2760":1,"2761":1,"2762":2,"2765":1,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2917":2}}],["packets",{"2":{"263":1,"1956":2,"2288":2,"2289":2,"2293":1}}],["packet",{"2":{"236":2,"263":1,"559":1,"2288":5,"2289":3,"2293":2,"2875":1}}],["packing",{"2":{"199":1}}],["packrat",{"2":{"143":2}}],["pacman",{"2":{"160":1,"2499":1,"2594":1}}],["pal2",{"2":{"2748":3}}],["pal256",{"2":{"2748":3}}],["pal4",{"2":{"2748":3}}],["pal16",{"2":{"2748":3}}],["palsetpadmode",{"2":{"769":2}}],["palettes",{"2":{"2747":1}}],["palette",{"0":{"2763":1,"2770":1},"2":{"160":1,"249":1,"2666":2,"2747":1,"2748":6,"2758":2,"2760":1,"2763":3,"2765":3,"2769":14,"2770":8}}],["paladinpad",{"2":{"134":1}}],["paladin64",{"2":{"122":2,"211":1}}],["pal",{"2":{"133":1,"134":1,"211":1,"718":2,"759":1,"765":2,"769":6,"1192":2,"1195":1,"1197":2,"1198":1,"1245":3,"1266":4,"1296":2,"1300":1,"1393":1,"1477":1,"1562":1,"1984":1}}],["patent",{"2":{"2728":1}}],["patience",{"2":{"2724":1}}],["patient",{"2":{"608":1}}],["patching",{"2":{"2627":1}}],["patch",{"2":{"211":1,"294":2,"2627":3}}],["patterns",{"2":{"438":1,"663":2,"1634":1,"2170":1,"2432":1,"2735":1}}],["pattern",{"2":{"118":1,"125":1,"185":1,"198":1,"308":1,"317":1,"485":1,"625":1,"2821":1,"2901":1}}],["path=",{"2":{"2621":1}}],["path=raw",{"2":{"2052":1}}],["pathlib",{"2":{"348":1}}],["paths",{"2":{"132":1,"134":1,"149":1,"176":1,"199":1,"308":2,"387":1,"611":1,"2663":1}}],["path",{"2":{"6":1,"50":1,"114":1,"211":1,"308":1,"348":3,"387":2,"391":1,"450":1,"451":1,"461":1,"463":1,"482":1,"483":2,"507":1,"727":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1434":2,"1519":1,"1628":3,"2052":1,"2400":1,"2403":4,"2410":4,"2425":1,"2495":1,"2501":3,"2576":1,"2587":1,"2588":1,"2598":1,"2600":2,"2621":2,"2622":1,"2633":3,"2662":3,"2667":7,"2748":1}}],["padding",{"2":{"2758":1,"2765":1,"2882":1}}],["paddlegame",{"2":{"114":1}}],["pads",{"2":{"674":1,"1664":1,"2273":2}}],["pad",{"0":{"2511":1},"2":{"114":2,"191":1,"236":1,"241":5,"249":2,"266":1,"333":1,"1443":1,"1659":2,"2045":1,"2271":1,"2273":3,"2420":1}}],["pans",{"2":{"1948":1,"2283":1}}],["pan",{"2":{"211":1,"294":1,"328":1,"1948":1,"2283":1}}],["panel",{"2":{"153":1,"248":1,"1939":2,"2324":1,"2510":2,"2515":2,"2746":2,"2749":35,"2750":4}}],["panels",{"2":{"123":1,"153":2,"248":1,"2722":1,"2749":3,"2750":3}}],["pandora",{"2":{"114":1,"211":1}}],["pancake",{"2":{"37":2}}],["paren",{"2":{"2539":2,"2558":2}}],["parens",{"2":{"2311":1}}],["parenthesis",{"2":{"2248":1,"2249":6,"2250":6,"2543":6}}],["parentheses",{"0":{"536":1},"2":{"536":2,"2252":1,"2311":1}}],["parent",{"2":{"72":1,"149":1,"249":1,"266":1,"293":1,"305":1,"314":1,"430":1,"616":1,"2652":1}}],["parity",{"2":{"1985":1,"2291":1}}],["paryz",{"2":{"199":1}}],["parse",{"2":{"149":1,"669":1}}],["parsing",{"2":{"76":1,"92":1,"176":1,"191":1,"199":1,"211":1,"236":1,"308":1,"437":1,"487":1,"493":1,"2663":1,"2760":1,"2766":1,"2767":1}}],["paragraph",{"2":{"676":2}}],["params",{"2":{"199":1,"1844":11,"2066":11}}],["parameter",{"2":{"191":1,"323":1,"328":1,"527":1,"655":1,"1283":1,"1407":1,"1460":1,"1792":1,"2266":2,"2400":1,"2644":1,"2750":2}}],["parameters",{"2":{"70":1,"249":1,"763":1,"1250":1,"1362":1,"2400":3,"2439":1,"2548":1,"2721":1}}],["parallel",{"2":{"114":1,"134":1,"236":1,"427":3,"453":4,"467":5,"1458":1,"1564":1,"2421":1,"2749":1}}],["party",{"2":{"373":1,"524":1,"607":1,"2324":1,"2896":1}}],["participating",{"2":{"2889":1}}],["particular",{"0":{"2043":1},"2":{"520":1,"522":1,"527":1,"557":1,"616":3,"692":2,"769":1,"794":1,"1363":1,"1422":1,"1425":1,"1438":1,"1479":1,"1532":1,"1562":1,"1707":1,"2027":1,"2042":1,"2168":1,"2313":1,"2374":1,"2412":2,"2422":2,"2461":1,"2496":1,"2499":1,"2578":1,"2648":1,"2702":1,"2725":1,"2813":1}}],["particularly",{"2":{"289":1,"534":1,"609":1,"666":1,"1293":1,"2271":1,"2911":1,"2914":1}}],["parties",{"2":{"288":1,"1626":1,"2569":1,"2700":1}}],["partialremap",{"2":{"1210":2}}],["partially",{"2":{"176":1,"199":1,"236":2,"328":1,"720":1,"2739":1}}],["partial",{"2":{"49":1,"1389":1,"1390":1,"1528":1,"2372":1,"2749":1}}],["parts",{"0":{"2414":1},"2":{"172":1,"360":1,"549":1,"609":1,"765":1,"1245":1,"1266":1,"2025":2,"2422":1,"2496":2,"2626":1,"2937":1}}],["part",{"2":{"67":1,"76":1,"86":1,"114":2,"134":1,"160":1,"176":2,"188":5,"191":5,"199":1,"211":8,"236":1,"262":1,"266":32,"348":1,"521":1,"536":1,"537":1,"617":1,"631":1,"659":1,"670":1,"673":1,"698":1,"1206":1,"1329":1,"1379":1,"1412":1,"1421":1,"1441":2,"1443":1,"1455":1,"1485":1,"1519":1,"1526":1,"1527":1,"1552":1,"1655":1,"1806":1,"1840":2,"2060":2,"2212":1,"2268":5,"2271":1,"2290":1,"2374":1,"2403":1,"2425":1,"2427":2,"2430":1,"2476":1,"2510":1,"2552":2,"2594":2,"2625":3,"2627":2,"2631":1,"2644":1,"2661":1,"2667":1,"2668":1,"2702":1,"2731":2,"2732":1,"2781":1,"2833":1,"2927":1,"2937":1}}],["page=shop",{"2":{"1316":1}}],["pagesize",{"2":{"2501":1}}],["pages",{"2":{"277":1,"335":1,"577":1,"659":1,"1379":1,"1402":1,"2501":3,"2574":1,"2689":1}}],["page",{"0":{"676":1,"898":2,"933":2,"967":2,"1001":2,"1035":2,"1069":2,"1103":2,"1137":2,"1171":2,"1224":2},"1":{"899":2,"934":2,"968":2,"1002":2,"1036":2,"1070":2,"1104":2,"1138":2,"1172":2,"1225":2},"2":{"13":1,"124":1,"163":1,"164":1,"194":1,"206":1,"210":1,"249":1,"334":2,"335":1,"359":1,"367":1,"378":1,"386":1,"407":1,"517":1,"553":2,"574":1,"576":1,"585":1,"593":1,"614":2,"624":1,"659":2,"662":1,"672":1,"675":1,"676":4,"677":1,"681":3,"731":1,"746":2,"747":2,"756":2,"766":1,"767":1,"860":1,"890":1,"898":1,"899":2,"925":1,"933":1,"934":2,"959":1,"967":1,"968":2,"993":1,"1001":1,"1002":2,"1027":1,"1035":1,"1036":2,"1061":1,"1069":1,"1070":2,"1095":1,"1103":1,"1104":2,"1129":1,"1137":1,"1138":2,"1163":1,"1171":1,"1172":2,"1216":1,"1224":1,"1225":2,"1311":1,"1318":1,"1327":1,"1334":1,"1339":2,"1341":1,"1348":2,"1354":2,"1375":1,"1376":1,"1379":2,"1385":1,"1395":1,"1406":1,"1688":2,"1691":1,"1947":2,"1948":7,"1958":1,"1979":1,"2049":3,"2050":1,"2052":4,"2159":2,"2283":7,"2403":1,"2404":1,"2411":4,"2430":3,"2438":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1,"2473":1,"2474":1,"2483":1,"2501":8,"2502":1,"2509":4,"2510":3,"2511":2,"2514":2,"2515":6,"2602":1,"2615":1,"2646":1,"2657":1,"2668":1,"2700":1,"2707":1,"2709":1,"2716":1,"2717":1,"2719":1,"2744":1,"2774":1,"2786":1,"2844":1,"2845":3,"2922":1}}],["pong",{"2":{"2721":1}}],["podman",{"2":{"2399":2,"2400":3}}],["poop",{"2":{"2323":1}}],["poor",{"2":{"2310":1,"2895":2}}],["pop",{"2":{"2427":1}}],["populated",{"2":{"2930":1}}],["populates",{"2":{"2262":1}}],["populate",{"2":{"1413":1,"2707":1,"2930":1}}],["popularity",{"2":{"2803":1}}],["popular",{"2":{"236":1,"263":1,"2067":1,"2205":1,"2569":1,"2672":1,"2807":1,"2888":1}}],["popping",{"2":{"236":1}}],["polish",{"2":{"2880":2}}],["policies",{"0":{"2893":1},"1":{"2894":1,"2895":1,"2896":1,"2897":1},"2":{"2567":1}}],["policy",{"0":{"2742":1,"2895":1},"1":{"2896":1,"2897":1},"2":{"1313":1,"2742":1,"2896":1}}],["policy=default",{"2":{"1313":1}}],["polilla",{"2":{"253":2}}],["polarity",{"2":{"1249":1,"2669":1}}],["polaris",{"2":{"211":1,"445":4}}],["pololu",{"2":{"686":1,"2379":1,"2492":1}}],["polled",{"2":{"176":1,"2016":1}}],["poll",{"2":{"176":1,"568":2,"579":1,"1985":1,"2271":2,"2875":1}}],["polling",{"0":{"137":1},"2":{"112":1,"114":1,"137":1,"149":2,"285":1,"294":1,"559":2,"2016":1,"2873":2,"2875":1}}],["potentiometer",{"2":{"687":1,"1766":1,"1917":1}}],["potential",{"2":{"21":1,"142":1,"149":1,"262":1,"312":3,"433":1,"454":1,"2047":1,"2050":1}}],["potentially",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"130":1,"393":1,"644":1,"685":1,"1412":1,"1417":1,"1587":1,"2050":1,"2156":1,"2258":1,"2372":1,"2560":1,"2568":1,"2879":1}}],["potato65s",{"2":{"211":1}}],["pocketavr",{"0":{"2483":1},"1":{"2484":1},"2":{"2483":3}}],["pocket",{"2":{"226":1,"236":1}}],["pockettype",{"2":{"57":2}}],["poc",{"2":{"176":1}}],["poker",{"2":{"122":1,"328":1}}],["portuguese",{"2":{"2880":7}}],["port>",{"2":{"2495":1}}],["portmento",{"2":{"1919":1,"2532":1}}],["portb",{"2":{"1468":1}}],["portc",{"2":{"1468":1}}],["porting",{"2":{"1326":1,"2705":1,"2721":1,"2742":1}}],["portions",{"2":{"1806":1,"2568":1}}],["portion",{"2":{"228":1,"2411":1,"2684":1,"2862":1}}],["portamento",{"2":{"1919":1,"2532":1}}],["portability",{"2":{"761":1,"1242":1,"1263":1}}],["portal",{"2":{"122":2}}],["port",{"2":{"114":1,"134":2,"288":1,"294":1,"458":5,"459":1,"566":3,"682":1,"1370":2,"1919":1,"2287":3,"2291":2,"2380":1,"2477":1,"2479":1,"2481":1,"2483":1,"2485":1,"2487":1,"2492":1,"2495":2,"2532":1,"2667":3,"2674":1,"2682":1,"2728":1}}],["ports",{"0":{"1796":1},"2":{"114":1,"191":2,"1557":1,"2495":1,"2682":1,"2702":1}}],["powering",{"2":{"1564":1}}],["powerful",{"2":{"1415":1,"2309":1,"2471":1,"2572":1,"2672":1}}],["powers",{"2":{"1189":1,"2707":1,"2823":1}}],["powered",{"2":{"390":1,"431":1,"594":1,"1675":1,"1955":1,"2694":1}}],["poweron",{"2":{"249":1}}],["poweroff",{"2":{"211":1,"285":1}}],["power",{"0":{"546":1,"647":1,"1348":1,"1373":1},"2":{"70":1,"112":1,"134":3,"211":1,"222":1,"231":1,"262":1,"266":1,"559":2,"646":2,"647":1,"648":2,"663":1,"695":1,"717":1,"743":1,"746":2,"1249":1,"1293":1,"1348":3,"1367":1,"1373":1,"1404":1,"1412":1,"1416":2,"1480":5,"1564":1,"1638":3,"1672":1,"1696":1,"2208":1,"2294":1,"2316":2,"2324":1,"2411":1,"2439":4,"2509":2,"2510":2,"2515":4,"2528":1,"2572":1,"2683":1,"2721":1,"2750":7,"2849":2,"2875":1}}],["pose",{"2":{"1293":1}}],["possibility",{"2":{"2162":1,"2286":1,"2427":1}}],["possibilities",{"2":{"1736":1,"1743":1,"1840":1,"2060":1,"2428":1}}],["possibly",{"2":{"28":1,"50":1,"1296":2}}],["possible",{"2":{"11":1,"98":1,"99":1,"140":1,"224":1,"293":1,"305":1,"314":1,"338":3,"371":1,"397":1,"411":1,"427":1,"533":1,"550":1,"553":2,"586":1,"608":1,"641":1,"644":1,"645":1,"712":1,"713":1,"717":1,"750":1,"826":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1196":1,"1214":1,"1291":1,"1300":1,"1312":1,"1353":1,"1402":1,"1418":1,"1422":1,"1427":2,"1444":1,"1497":1,"1596":1,"1598":1,"1599":1,"1606":1,"1614":1,"1617":1,"1630":1,"1655":1,"1657":1,"1670":1,"1765":1,"1798":1,"1917":2,"1929":1,"1930":1,"1932":1,"1958":1,"1979":1,"1982":1,"1990":1,"2006":1,"2016":1,"2064":1,"2075":1,"2163":1,"2170":1,"2189":1,"2254":1,"2260":1,"2268":2,"2293":1,"2302":1,"2303":1,"2309":1,"2310":1,"2311":1,"2322":1,"2323":1,"2324":3,"2367":2,"2375":1,"2400":1,"2409":1,"2411":2,"2416":1,"2421":1,"2422":1,"2438":1,"2439":1,"2446":1,"2475":1,"2497":1,"2560":1,"2568":1,"2569":1,"2572":1,"2613":1,"2619":1,"2621":1,"2651":1,"2660":1,"2667":1,"2669":1,"2670":1,"2703":1,"2721":7,"2769":3,"2785":1,"2862":1,"2894":1,"2895":1,"2897":1,"2913":1,"2916":1,"2935":1,"2940":1,"2942":1}}],["possess",{"2":{"764":1,"1285":1,"1288":1,"2498":1}}],["possesses",{"2":{"690":1}}],["positive",{"2":{"532":2,"1948":1,"2283":1}}],["positives",{"2":{"199":1,"1497":1}}],["positioning",{"0":{"1641":1},"2":{"2750":1}}],["positional",{"2":{"450":1,"451":1}}],["positions",{"2":{"176":1,"211":1,"222":1,"1613":1,"1696":1,"1840":2,"2000":2,"2060":2,"2438":1,"2721":2,"2787":1,"2862":1,"2884":1,"2915":1}}],["position",{"0":{"1326":1,"1653":1},"1":{"1654":1},"2":{"62":1,"211":1,"1326":1,"1350":1,"1533":1,"1641":2,"1642":1,"1653":1,"1654":2,"1659":1,"1664":1,"1701":1,"1705":1,"1722":1,"1761":1,"1769":2,"1775":1,"1788":1,"1789":1,"1805":2,"1840":9,"1941":1,"1948":9,"2000":1,"2006":3,"2060":9,"2064":1,"2279":1,"2283":9,"2286":1,"2421":1,"2714":1,"2853":1,"2862":5,"2864":3,"2871":3,"2873":1,"2915":2,"2929":1}}],["pos",{"2":{"176":1,"1659":1,"2195":1,"2197":1}}],["postage",{"2":{"2417":2}}],["postprocess",{"2":{"176":1}}],["post",{"0":{"363":1,"404":1,"638":1,"639":1,"640":1,"1632":1,"2670":1},"1":{"405":1,"406":1,"639":1,"640":1},"2":{"74":1,"133":2,"134":3,"176":3,"266":2,"363":1,"368":1,"370":2,"399":1,"400":1,"631":2,"639":2,"640":2,"645":3,"1319":1,"1374":1,"1413":3,"1451":2,"1638":6,"1695":1,"1696":1,"2028":1,"2075":1,"2189":1,"2191":4,"2270":1,"2293":1,"2439":10,"2440":8,"2559":1,"2630":2,"2670":2,"2721":1,"2723":1,"2749":2,"2750":4,"2754":1,"2933":6}}],["posted",{"2":{"49":1,"2722":1}}],["points",{"2":{"520":1,"1532":1,"1751":1,"2293":1,"2303":1,"2322":3,"2323":3,"2324":5,"2411":3,"2427":1,"2668":1}}],["pointer",{"2":{"323":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1257":1,"1260":1,"1275":1,"1277":1,"1529":1,"1924":1,"1941":5,"1948":1,"1996":1,"2000":1,"2050":1,"2051":1,"2055":1,"2057":1,"2279":5,"2283":1,"2303":2}}],["pointers",{"2":{"114":1,"222":1,"579":1}}],["pointed",{"2":{"21":1}}],["point",{"0":{"2340":1,"2347":1},"1":{"2341":1,"2348":1,"2349":1},"2":{"94":2,"215":2,"236":1,"317":1,"396":1,"403":1,"405":1,"406":1,"638":1,"655":1,"659":1,"683":1,"684":2,"1345":1,"1379":1,"1511":1,"1522":1,"1532":1,"1603":1,"1664":1,"1785":1,"1840":2,"2030":1,"2060":2,"2265":1,"2303":2,"2310":1,"2312":1,"2322":1,"2324":1,"2325":3,"2341":2,"2347":1,"2349":1,"2350":1,"2364":1,"2411":1,"2424":1,"2430":1,"2447":1,"2545":3,"2554":1,"2585":1,"2627":2,"2630":1,"2667":2,"2669":1,"2707":1,"2712":1,"2749":1,"2762":2,"2864":1,"2871":1,"2881":1,"2903":1,"2911":1,"2927":1}}],["pointless",{"2":{"50":1,"94":1,"211":1,"236":1,"277":1}}],["pointing",{"0":{"118":1,"138":1,"175":1,"190":1,"1935":1,"1996":1,"2027":1,"2028":1,"2046":1},"1":{"1997":1,"1998":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2009":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":1,"2015":1,"2016":1,"2017":1,"2018":1,"2019":1,"2020":1},"2":{"6":1,"63":1,"118":12,"134":3,"138":4,"149":4,"175":5,"176":8,"190":4,"191":6,"211":3,"249":1,"266":1,"273":1,"285":2,"298":1,"317":2,"562":1,"1638":6,"1639":1,"1935":1,"1996":2,"1997":1,"1998":3,"1999":1,"2006":2,"2008":2,"2009":1,"2010":2,"2011":1,"2013":3,"2014":7,"2015":5,"2016":22,"2017":8,"2018":16,"2019":17,"2020":11,"2021":9,"2023":3,"2024":2,"2025":1,"2026":1,"2027":5,"2028":6,"2029":2,"2030":3,"2032":2,"2034":1,"2045":2,"2046":10,"2269":5,"2440":1,"2451":1,"2865":1,"2925":1}}],["pryce",{"2":{"2934":1}}],["prf5",{"2":{"2370":1,"2521":1}}],["prf4",{"2":{"2370":1,"2521":1}}],["prf3",{"2":{"2370":1,"2521":1}}],["prf2",{"2":{"2370":1,"2521":1}}],["prf1",{"2":{"2370":1,"2521":1}}],["prune",{"2":{"422":1,"423":2}}],["pr12345",{"2":{"397":1}}],["practical",{"0":{"2740":1},"2":{"2459":1,"2563":1,"2895":1,"2896":1}}],["practically",{"2":{"393":1,"2317":1,"2496":1}}],["practice",{"2":{"1375":1,"1493":1,"1517":1,"2448":1,"2750":1}}],["practices",{"0":{"675":1,"2624":1},"1":{"2625":1},"2":{"408":1,"419":1,"522":1,"675":1,"2719":1,"2723":1}}],["pragma",{"2":{"134":1,"199":1,"211":1,"303":1,"520":1,"714":2,"715":2,"718":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1296":2,"1300":2,"1402":1,"1443":1,"1496":1,"1562":2,"1563":2,"1844":1,"1984":1,"2066":1,"2409":2,"2719":1,"2787":2}}],["pr20584",{"2":{"211":1}}],["pristine",{"2":{"2721":2}}],["price",{"2":{"2672":1}}],["private",{"2":{"2568":1,"2721":1}}],["privately",{"2":{"2568":1}}],["privileged",{"2":{"2410":1}}],["privileges",{"2":{"1313":1,"1329":1}}],["prir",{"2":{"2509":1,"2515":1}}],["principle",{"2":{"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1928":1,"2706":1}}],["println",{"2":{"2645":12}}],["printed",{"2":{"1206":1,"2029":1,"2052":1,"2411":1,"2428":1,"2500":1,"2620":1,"2687":1,"2877":1}}],["printedpad",{"2":{"277":1}}],["printer",{"2":{"191":1}}],["prints",{"2":{"160":1,"1330":1,"1422":2,"1627":1,"2747":1}}],["print",{"2":{"75":2,"114":1,"119":1,"149":1,"199":1,"249":1,"431":6,"435":1,"453":2,"491":1,"537":1,"560":1,"623":2,"1324":9,"1326":1,"1330":3,"1454":1,"1619":5,"1688":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1956":4,"2052":7,"2411":13,"2509":2,"2515":2,"2536":1,"2901":1,"2942":1}}],["printing",{"0":{"489":1,"491":1},"1":{"490":1,"491":1,"492":1},"2":{"49":1,"211":1,"489":1,"560":1,"1586":1,"1730":1}}],["printf",{"0":{"24":1},"2":{"160":1,"176":4,"390":1,"489":1,"534":1,"537":1,"1313":1,"1529":1,"2882":1}}],["prioritized",{"2":{"397":1}}],["prioritizes",{"2":{"312":1}}],["priority",{"2":{"236":1,"553":2,"765":4,"2549":1}}],["prior",{"2":{"251":1,"297":1,"308":1,"609":1,"2509":2,"2515":2}}],["primitives",{"2":{"2746":1}}],["primarily",{"2":{"632":1,"1196":1,"1343":2,"2493":1}}],["primary",{"2":{"191":1,"713":1,"1469":1,"1639":1,"1937":1,"2269":1,"2276":1,"2398":1,"2873":2}}],["prime",{"2":{"328":1}}],["prime+",{"2":{"285":1,"328":1}}],["primekb",{"2":{"211":1}}],["primus75",{"2":{"211":1}}],["prnt",{"2":{"119":1,"2536":1,"2901":3}}],["preamble",{"0":{"2431":1}}],["prerequisite",{"2":{"2399":1}}],["prerequisites",{"0":{"621":1,"2592":1,"2612":1,"2614":1,"2615":1,"2617":1,"2647":1,"2660":1},"1":{"2648":1,"2649":1},"2":{"308":1,"458":1,"459":1}}],["preloaded",{"2":{"1680":1,"2386":1,"2391":1}}],["pregenerated",{"2":{"716":1}}],["pretty=oneline",{"2":{"586":1,"587":1}}],["pretty",{"2":{"435":1,"520":1,"612":1,"617":1,"1324":1,"1337":1,"1339":1,"1361":1,"1441":1,"1984":1,"2418":1,"2459":1,"2609":1,"2610":1}}],["pretend",{"2":{"100":1}}],["predetermined",{"2":{"1584":1}}],["predefined",{"0":{"1507":1,"1508":1,"1509":1,"1510":1},"2":{"231":1,"716":1,"1474":1,"1507":1,"1508":1,"1509":1,"1510":1,"1769":1,"1958":1,"2160":1,"2780":1}}],["predicted",{"2":{"393":1}}],["precompiled",{"2":{"2494":1,"2728":2,"2734":2,"2737":1,"2743":1}}],["precomputed",{"2":{"1482":1}}],["precalculated",{"2":{"1946":2,"1947":3,"2282":1}}],["precedence",{"0":{"2549":1},"2":{"566":1,"2189":2,"2263":1,"2412":1,"2547":2,"2817":1,"2908":1,"2913":1,"2915":1}}],["preceding",{"2":{"297":1,"2911":1,"2912":1}}],["precision",{"2":{"222":2,"687":1,"1675":1,"1771":12}}],["precisely",{"2":{"1739":1}}],["precise",{"2":{"134":1,"1930":1,"1933":1,"1934":1}}],["preonic",{"2":{"211":1,"1317":1}}],["preflashed",{"2":{"2381":1}}],["preformatted",{"2":{"348":1}}],["preferring",{"2":{"2721":1}}],["preferred",{"2":{"116":1,"446":1,"447":1,"448":1,"2400":1,"2425":1,"2443":1,"2621":2,"2702":1,"2720":2,"2721":2,"2757":1,"2787":1}}],["prefers",{"2":{"2710":1}}],["preferable",{"2":{"1407":1,"1675":1,"2040":1}}],["preferably",{"2":{"579":1,"1428":1,"2652":1,"2721":1}}],["prefer",{"2":{"338":3,"397":1,"489":1,"491":1,"497":1,"520":1,"524":2,"535":1,"537":1,"543":1,"546":1,"547":1,"548":1,"1322":1,"1407":1,"2586":1,"2720":1,"2721":1,"2934":1}}],["preferences",{"2":{"347":1,"492":1,"1669":1,"2324":1,"2662":1}}],["preference",{"2":{"328":1,"2599":1,"2721":2,"2902":1}}],["prefix=",{"2":{"421":1}}],["prefixed",{"2":{"236":1,"492":2,"1416":1,"1448":1,"2513":1,"2553":1,"2559":1,"2877":1}}],["prefix",{"2":{"199":3,"236":1,"249":1,"266":1,"1448":1,"1452":1,"1619":1,"2215":1,"2322":1,"2438":1,"2644":1,"2937":1}}],["prebuilt",{"0":{"164":1},"2":{"164":2,"1323":1,"2388":1}}],["preinstalled",{"2":{"2178":1}}],["preinstall",{"2":{"160":1}}],["preprocess",{"2":{"2303":1,"2933":1}}],["preprocessor",{"2":{"211":1,"520":3,"553":1,"1450":1,"2410":2,"2744":1}}],["prepend",{"2":{"1844":1,"2066":1}}],["prepended",{"2":{"1634":1,"1635":1,"1636":1}}],["prep",{"2":{"114":1,"149":1,"236":1}}],["preparing",{"2":{"453":1,"1439":1}}],["prepare",{"0":{"2613":1},"1":{"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1},"2":{"149":1,"222":1,"249":1,"402":1,"2207":1,"2324":1,"2418":1,"2613":1}}],["prepared",{"2":{"134":1,"617":1,"2569":1}}],["prepares",{"2":{"56":1}}],["preparation",{"2":{"86":1,"142":1,"1948":1,"2283":1}}],["presumably",{"2":{"1316":1}}],["prescribe",{"2":{"2713":1}}],["presc",{"2":{"767":1}}],["preset",{"2":{"1404":1}}],["presets",{"2":{"160":3,"716":1,"1946":3}}],["presence",{"2":{"249":1,"1375":1,"2006":1}}],["presented",{"2":{"2569":1}}],["presents",{"2":{"579":1,"682":1,"1446":1,"2381":1,"2383":1,"2727":1}}],["present",{"2":{"34":1,"201":2,"206":1,"228":1,"229":1,"236":1,"431":2,"444":1,"461":1,"529":1,"565":1,"592":1,"605":1,"690":1,"692":1,"743":1,"751":1,"755":1,"1404":1,"1405":1,"1407":1,"1436":1,"1628":1,"1631":1,"1632":1,"2287":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":2,"2388":2,"2391":2,"2393":1,"2395":1,"2397":1,"2438":1,"2467":1,"2605":1,"2627":1,"2702":2,"2710":1,"2721":3,"2759":1,"2766":1,"2770":1,"2879":1}}],["pressplayid",{"2":{"2567":1}}],["pressure",{"2":{"1639":1,"2006":1}}],["presses",{"2":{"312":1,"562":1,"624":2,"717":1,"1425":1,"1452":2,"1519":1,"1603":1,"1612":1,"1667":2,"1757":1,"1771":1,"1927":1,"1935":1,"2019":1,"2065":1,"2265":1,"2269":1,"2310":1,"2462":2,"2572":2,"2816":1,"2818":1,"2826":1,"2877":1}}],["pressed",{"0":{"1456":1},"2":{"46":2,"98":1,"194":2,"199":1,"202":1,"222":1,"289":2,"294":1,"297":1,"307":2,"324":1,"325":1,"562":1,"591":6,"628":1,"629":5,"630":1,"645":1,"1326":9,"1374":1,"1377":1,"1378":1,"1406":2,"1413":6,"1416":3,"1425":1,"1442":2,"1443":1,"1450":8,"1451":4,"1456":2,"1462":1,"1463":1,"1464":1,"1466":1,"1484":1,"1492":1,"1493":1,"1511":1,"1532":1,"1585":1,"1587":1,"1591":1,"1592":2,"1598":1,"1599":3,"1605":1,"1606":4,"1609":1,"1612":2,"1627":1,"1666":1,"1668":1,"1670":4,"1681":1,"1684":1,"1734":2,"1736":1,"1737":2,"1740":2,"1742":1,"1744":1,"1746":1,"1751":4,"1752":4,"1754":5,"1755":3,"1756":4,"1757":2,"1765":1,"1771":5,"1801":1,"1803":1,"1804":1,"1917":1,"1918":1,"1934":1,"1956":2,"1973":1,"1990":1,"2019":1,"2023":1,"2024":1,"2025":3,"2030":4,"2031":2,"2034":1,"2037":1,"2040":3,"2044":2,"2064":2,"2156":1,"2158":1,"2159":1,"2160":1,"2167":4,"2168":5,"2170":2,"2191":1,"2218":2,"2252":1,"2286":1,"2288":1,"2293":6,"2294":1,"2295":1,"2302":3,"2303":3,"2309":1,"2310":4,"2313":1,"2427":1,"2459":6,"2462":1,"2524":1,"2526":2,"2528":1,"2542":1,"2562":1,"2563":3,"2564":2,"2572":1,"2643":2,"2644":1,"2669":1,"2777":2,"2814":1,"2822":1,"2854":1,"2865":3,"2901":4,"2902":4,"2909":3,"2911":2,"2914":5,"2929":2,"2932":2}}],["press",{"0":{"1605":1,"1606":1,"2462":1,"2909":1},"2":{"99":1,"114":1,"134":1,"191":2,"194":7,"199":1,"202":2,"206":2,"235":1,"266":1,"312":1,"387":1,"392":2,"562":9,"598":1,"599":2,"629":1,"630":1,"645":1,"674":2,"685":1,"1345":1,"1361":1,"1362":1,"1374":28,"1375":1,"1406":1,"1413":1,"1450":1,"1452":1,"1459":1,"1479":5,"1480":5,"1492":2,"1495":1,"1511":2,"1512":1,"1516":3,"1517":3,"1519":1,"1523":1,"1594":3,"1605":1,"1606":5,"1608":2,"1609":1,"1618":2,"1655":4,"1732":2,"1736":1,"1756":1,"1757":1,"1759":1,"1765":1,"1780":1,"1806":1,"1924":1,"1931":1,"1964":1,"1968":1,"2000":1,"2003":2,"2012":1,"2064":1,"2156":2,"2162":1,"2164":1,"2265":1,"2286":1,"2290":1,"2293":2,"2297":1,"2303":1,"2310":2,"2312":2,"2323":1,"2376":2,"2379":2,"2381":2,"2382":2,"2384":2,"2389":1,"2390":1,"2426":1,"2459":4,"2462":1,"2464":1,"2534":28,"2544":1,"2554":1,"2605":3,"2610":1,"2666":2,"2721":1,"2784":1,"2827":2,"2836":1,"2845":1,"2847":2,"2901":1,"2902":1,"2904":2,"2905":3,"2906":2,"2907":1,"2908":6,"2909":9,"2910":3,"2911":1,"2912":1,"2914":6,"2919":1}}],["pressing",{"2":{"73":1,"99":1,"202":2,"211":1,"388":1,"597":1,"598":1,"683":1,"1330":1,"1367":1,"1378":1,"1406":1,"1444":1,"1512":1,"1587":1,"1588":3,"1591":1,"1602":1,"1612":1,"1737":2,"1761":1,"1929":2,"1930":1,"1933":1,"2024":1,"2030":1,"2156":1,"2163":1,"2167":1,"2168":1,"2459":1,"2643":3,"2645":2,"2827":1,"2832":1,"2835":1,"2854":2,"2902":1,"2908":1,"2917":2}}],["pre",{"0":{"203":1,"632":1,"633":1,"634":1,"2669":1,"2694":1},"1":{"633":1,"634":1,"2695":1,"2696":1},"2":{"34":2,"176":1,"194":1,"203":4,"211":2,"266":1,"285":1,"428":1,"437":1,"631":1,"633":2,"634":2,"746":1,"747":1,"1392":1,"1638":6,"2017":1,"2416":1,"2422":1,"2463":1,"2669":2,"2670":1,"2694":1,"2696":1,"2721":4,"2930":1,"2933":3}}],["prev",{"2":{"1483":1,"1489":1,"1661":1,"1674":1,"1746":2,"1842":1,"2062":1,"2181":1,"2324":1,"2325":1,"2370":4,"2510":2,"2515":1,"2517":1,"2521":4,"2530":1,"2537":1,"2538":1,"2545":1,"2913":5}}],["preview",{"2":{"615":1,"2664":2,"2721":2}}],["previewing",{"0":{"615":1}}],["previous",{"2":{"24":2,"56":1,"57":1,"58":1,"98":1,"107":1,"124":1,"126":1,"145":1,"149":1,"191":1,"206":1,"231":1,"279":1,"331":1,"400":1,"405":2,"407":1,"557":1,"685":1,"686":1,"1350":1,"1378":1,"1483":1,"1489":1,"1674":2,"1746":1,"1842":2,"1869":1,"1870":1,"1895":1,"1896":1,"2052":1,"2062":2,"2095":1,"2096":1,"2133":1,"2134":1,"2159":2,"2181":1,"2199":2,"2200":2,"2288":1,"2302":1,"2312":1,"2325":1,"2332":1,"2370":1,"2409":2,"2421":1,"2436":1,"2459":1,"2510":1,"2515":1,"2517":1,"2521":1,"2530":2,"2537":1,"2538":2,"2545":1,"2576":1,"2600":1,"2602":1,"2627":1,"2721":1,"2750":1,"2911":2,"2913":3,"2932":1,"2941":1}}],["previously",{"2":{"14":1,"50":1,"166":1,"169":1,"170":1,"182":1,"184":1,"234":1,"276":1,"283":1,"754":1,"2172":1,"2265":1,"2288":1,"2712":1,"2750":1}}],["prevention",{"2":{"886":1}}],["preventing",{"2":{"190":2,"191":1,"229":1,"2031":1,"2039":2,"2570":2}}],["prevent",{"2":{"186":1,"191":2,"199":1,"211":1,"222":1,"249":1,"308":1,"312":1,"333":1,"403":1,"562":1,"573":1,"590":1,"654":1,"677":1,"751":1,"760":1,"1755":1,"2031":1,"2044":1,"2171":1,"2253":1,"2291":1,"2411":1,"2578":1,"2675":1,"2680":1,"2719":1,"2787":1,"2879":1,"2919":1}}],["prevented",{"2":{"103":1}}],["prevents",{"2":{"6":1,"1459":1,"1756":1,"2021":1,"2901":1}}],["pros",{"2":{"2322":1,"2418":1}}],["professional",{"2":{"2284":1}}],["profile5",{"2":{"2370":1,"2521":1}}],["profile4",{"2":{"2370":1,"2521":1}}],["profile3",{"2":{"2370":1,"2521":1}}],["profile2",{"2":{"2370":1,"2521":1}}],["profile1",{"2":{"2370":1,"2521":1}}],["profiles",{"2":{"2002":1,"2662":1}}],["profile",{"2":{"507":1,"508":1,"509":1,"2370":10,"2521":10}}],["profiler",{"2":{"211":1}}],["proficient",{"2":{"408":1,"2922":1}}],["prone",{"2":{"1419":1,"1518":1,"1604":1,"1608":1}}],["proving",{"2":{"2566":1}}],["providing",{"2":{"614":1,"671":1,"1474":1,"2438":2,"2446":1,"2566":2,"2568":1,"2569":1,"2660":1,"2668":1,"2704":1,"2751":1}}],["provided",{"2":{"70":1,"125":1,"164":1,"185":1,"288":1,"312":1,"414":1,"442":1,"487":2,"568":7,"743":2,"750":1,"754":3,"1297":1,"1323":1,"1340":1,"1395":1,"1401":1,"1450":1,"1522":1,"1626":1,"1627":1,"1630":1,"1675":1,"1751":1,"1766":1,"1770":2,"2002":2,"2014":1,"2015":1,"2017":1,"2270":1,"2291":1,"2293":1,"2433":1,"2496":1,"2567":15,"2568":1,"2569":2,"2619":1,"2620":1,"2635":1,"2704":1,"2721":4,"2722":1,"2914":1}}],["provides",{"2":{"24":1,"45":1,"69":1,"164":1,"174":1,"374":1,"458":1,"519":1,"616":1,"620":1,"622":1,"627":1,"699":1,"720":1,"721":1,"1191":1,"1194":1,"1197":1,"1280":1,"1535":1,"1766":1,"1790":1,"1804":1,"1840":1,"1933":1,"2016":3,"2051":1,"2060":1,"2194":1,"2284":1,"2613":1,"2646":1,"2657":1,"2660":1,"2664":1,"2727":1,"2734":1,"2810":1,"2877":1}}],["provide",{"2":{"4":1,"160":1,"199":1,"213":1,"234":1,"285":1,"288":1,"308":1,"459":1,"493":1,"523":1,"573":1,"623":1,"758":1,"1385":1,"1387":1,"1389":1,"1390":1,"1404":1,"1511":1,"1520":1,"1521":1,"1626":1,"1628":1,"1629":1,"1630":2,"1634":2,"1638":2,"1675":1,"1770":1,"1790":1,"1792":1,"1797":1,"1798":1,"1917":1,"2016":1,"2258":1,"2411":1,"2445":1,"2499":1,"2566":2,"2568":2,"2571":1,"2694":1,"2696":1,"2700":1,"2729":1,"2732":1,"2734":1,"2744":1}}],["proves",{"2":{"548":1}}],["probe",{"2":{"2501":1,"2667":5}}],["probability",{"2":{"2185":1}}],["probably",{"2":{"233":1,"387":1,"539":1,"683":1,"1358":1,"1362":1,"1799":1,"1951":1,"2410":1,"2422":2,"2427":1,"2495":1,"2651":1,"2655":1,"2940":1}}],["problem",{"0":{"1373":1,"1758":1},"2":{"1316":1,"1349":1,"1356":1,"1368":1,"1421":1,"1441":1,"1491":1,"1497":1,"1587":1,"1955":2,"2459":1,"2729":1,"2936":1}}],["problems",{"0":{"606":1},"2":{"211":1,"254":1,"393":1,"433":4,"438":1,"454":1,"598":1,"611":1,"1370":1,"1418":1,"1479":1,"2410":1,"2433":1,"2567":1,"2579":1,"2609":1,"2674":1,"2735":1,"2939":1}}],["problematic",{"2":{"123":1,"254":1,"2740":1}}],["proceed",{"2":{"683":1,"2596":1}}],["procedures",{"2":{"2573":1}}],["procedure",{"0":{"420":1},"1":{"421":1,"422":1,"423":1,"424":1},"2":{"176":1,"191":1,"2262":1,"2270":1,"2721":1}}],["processes",{"2":{"398":1}}],["processed",{"2":{"114":1,"1419":1,"1435":1,"1437":1,"1450":2,"1485":2,"1606":1,"1958":1,"2293":2,"2313":1,"2552":1,"2778":1,"2816":1}}],["processors",{"2":{"609":1,"2291":1,"2450":2,"2927":1}}],["processor==stm32f411",{"2":{"431":3}}],["processor",{"2":{"70":1,"111":2,"191":1,"199":1,"437":1,"666":1,"1930":1,"2572":2,"2682":1,"2823":1,"2846":1}}],["processing",{"0":{"98":1,"1806":1},"2":{"4":1,"98":1,"112":1,"125":1,"185":1,"191":1,"199":1,"203":3,"249":1,"288":2,"294":1,"307":2,"562":1,"625":1,"628":1,"629":1,"644":1,"645":1,"760":1,"1289":1,"1290":1,"1291":1,"1413":1,"1443":1,"1527":2,"1529":1,"1603":1,"1604":1,"1612":1,"1626":2,"1661":1,"1717":1,"1806":1,"1996":1,"2031":1,"2044":1,"2046":1,"2293":2,"2439":1,"2549":1,"2562":1,"2563":3,"2757":2,"2863":1,"2933":1}}],["process",{"0":{"16":1,"23":1,"203":1,"629":1,"630":1,"1450":1,"1526":1,"1527":1,"2724":1,"2933":1},"1":{"1451":1,"1452":1,"1453":1,"1454":1,"1527":1},"2":{"0":1,"1":1,"3":1,"7":1,"9":1,"15":1,"19":1,"39":1,"46":3,"52":1,"76":1,"94":1,"114":1,"156":1,"176":2,"201":1,"203":6,"211":3,"222":3,"235":1,"236":1,"266":1,"277":1,"285":1,"294":1,"307":2,"317":2,"324":1,"325":1,"393":1,"398":1,"407":1,"409":1,"410":1,"411":1,"570":1,"591":5,"607":1,"617":1,"625":2,"628":3,"629":2,"630":2,"631":3,"638":1,"641":1,"645":1,"649":1,"651":1,"664":2,"684":1,"685":1,"760":2,"1326":1,"1377":3,"1378":2,"1385":2,"1413":4,"1425":2,"1442":2,"1443":5,"1450":4,"1451":5,"1466":1,"1479":6,"1480":12,"1512":1,"1521":1,"1526":4,"1527":2,"1599":3,"1611":3,"1612":6,"1616":1,"1638":12,"1655":2,"1657":2,"1661":1,"1662":1,"1675":1,"1765":2,"1771":1,"1783":1,"1846":2,"1917":1,"1918":1,"1923":2,"1943":1,"1952":4,"1953":1,"1956":1,"1995":1,"2024":1,"2025":1,"2040":1,"2044":1,"2046":2,"2069":2,"2162":1,"2167":2,"2168":1,"2170":5,"2181":2,"2191":3,"2218":1,"2270":1,"2293":3,"2303":5,"2309":2,"2318":1,"2389":1,"2421":2,"2422":1,"2441":1,"2446":1,"2453":1,"2459":1,"2549":1,"2562":2,"2563":1,"2564":1,"2573":1,"2584":1,"2599":1,"2603":2,"2605":1,"2614":2,"2619":1,"2625":1,"2707":1,"2715":1,"2721":1,"2722":1,"2727":1,"2777":1,"2804":1,"2864":2,"2871":2,"2873":1,"2901":1,"2929":1,"2932":1,"2933":45}}],["proprietary",{"0":{"2726":1,"2739":1},"1":{"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1},"2":{"2567":1,"2726":1,"2727":1,"2728":1,"2729":1,"2730":1,"2734":3,"2735":1,"2739":1,"2740":2,"2742":1,"2743":1}}],["props",{"2":{"2509":1,"2515":1}}],["proposed",{"2":{"338":3,"397":1,"408":1,"2726":1}}],["prophet",{"2":{"211":1}}],["property",{"2":{"542":1,"1367":1,"2750":2}}],["properties",{"0":{"542":1},"2":{"308":1,"387":2,"542":1,"685":1,"1702":1,"2021":1,"2656":1,"2862":2}}],["properly",{"2":{"191":1,"222":1,"249":1,"328":1,"559":1,"562":1,"1350":1,"1609":1,"1805":1,"1948":1,"2069":1,"2273":1,"2291":1,"2463":1,"2483":1,"2491":1,"2644":1,"2655":1,"2786":1}}],["proper",{"2":{"174":1,"456":1,"1312":1,"1313":1,"2600":1,"2673":1,"2675":1,"2704":1}}],["propagated",{"2":{"498":1}}],["propagate",{"2":{"149":1}}],["prologues",{"2":{"160":1}}],["promenade",{"2":{"294":1}}],["promethium",{"2":{"114":1}}],["prompts",{"2":{"308":1,"2621":4}}],["prompt",{"2":{"294":1,"308":1,"333":1,"433":1,"442":2,"685":1,"2495":1,"2515":1,"2601":1,"2615":1,"2660":1}}],["prompted",{"2":{"172":1,"2652":1}}],["promote",{"2":{"199":1,"333":1,"2567":1}}],["prominent",{"2":{"2790":1}}],["prominently",{"2":{"131":1}}],["promises",{"2":{"2743":1}}],["promicro",{"0":{"2453":1,"2828":1},"2":{"153":1,"222":1,"271":2,"277":1,"306":2,"311":14,"315":2,"317":2,"437":2,"1310":1,"1386":14,"1400":1,"1404":1,"2453":1,"2707":1,"2846":2}}],["programs",{"0":{"2789":1},"2":{"1758":2,"2017":2,"2159":1,"2575":1,"2697":1,"2917":2,"2927":1}}],["program",{"0":{"1312":1},"1":{"1313":1,"1314":1},"2":{"392":1,"487":1,"489":2,"548":1,"617":1,"663":1,"751":1,"1202":1,"1289":1,"1308":1,"1438":3,"1587":1,"1599":1,"2047":1,"2244":1,"2284":1,"2411":1,"2425":1,"2572":2,"2592":3,"2612":3,"2725":3,"2800":1,"2927":3,"2938":1}}],["programmed",{"2":{"2610":1}}],["programmer>",{"2":{"2495":1}}],["programmers",{"2":{"537":1,"2483":1,"2495":1,"2501":1}}],["programmer",{"0":{"383":1},"2":{"383":1,"1312":3,"1517":3,"1922":1,"2376":4,"2379":1,"2382":2,"2410":1,"2477":1,"2479":1,"2481":1,"2483":1,"2485":1,"2487":1,"2495":2,"2573":1,"2608":3,"2880":3}}],["programmatically",{"2":{"1770":1,"1844":1,"2066":1,"2290":1,"2319":1}}],["programmatic",{"2":{"1680":1}}],["programmable",{"0":{"1958":1,"1962":1,"1963":1,"1965":1,"1967":1,"1969":1,"1971":1,"1974":1,"1975":1,"1977":1,"2541":1},"1":{"1959":1,"1960":1,"1961":1,"1962":1,"1963":1,"1964":2,"1965":1,"1966":2,"1967":1,"1968":2,"1969":1,"1970":2,"1971":1,"1972":2,"1973":2,"1974":1,"1975":1,"1976":2,"1977":1,"1978":2},"2":{"134":4,"149":1,"188":1,"190":1,"191":3,"231":3,"1289":1,"1958":2,"1960":64,"1962":1,"1974":1,"1975":1,"1976":1,"1977":1,"1978":1,"2445":1,"2541":65,"2697":1,"2933":1}}],["programming",{"0":{"628":1,"2446":1},"1":{"629":1,"630":1},"2":{"609":1,"2047":1,"2050":1,"2471":1,"2496":1,"2568":1,"2572":1,"2582":1,"2608":1,"2657":1,"2802":1,"2811":2,"2926":1}}],["progressively",{"2":{"213":1}}],["progress",{"2":{"113":1,"371":1,"711":1,"2177":1}}],["progressed",{"2":{"109":1}}],["progmem",{"2":{"94":1,"114":1,"149":1,"247":1,"307":1,"587":1,"731":1,"773":1,"802":2,"828":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1450":2,"1521":1,"1529":1,"1534":1,"1596":2,"1597":2,"1598":2,"1599":6,"1611":1,"1612":1,"1621":1,"1661":1,"1696":1,"1711":1,"1712":1,"1715":1,"1716":1,"1918":1,"1940":1,"1948":3,"2187":7,"2189":5,"2191":3,"2225":1,"2227":1,"2278":1,"2283":3,"2296":1,"2298":1,"2305":1,"2322":1,"2323":1,"2547":1,"2552":2,"2578":1,"2915":1,"2931":1}}],["pro",{"0":{"271":1,"1388":1,"1391":2,"2477":1,"2695":1},"1":{"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"2478":1},"2":{"77":1,"86":2,"102":3,"114":12,"134":2,"143":2,"149":2,"159":4,"160":2,"163":1,"172":1,"176":4,"189":1,"191":2,"197":2,"199":1,"222":3,"236":2,"271":2,"317":2,"322":2,"511":1,"566":1,"682":1,"686":2,"1314":1,"1386":1,"1388":7,"1393":1,"1395":1,"1397":1,"1398":1,"1403":1,"2254":1,"2256":1,"2259":1,"2260":1,"2266":2,"2272":1,"2379":1,"2380":1,"2414":1,"2416":1,"2417":2,"2477":2,"2478":3,"2479":1,"2492":3,"2496":1,"2582":1,"2681":1,"2683":1,"2684":6,"2693":2,"2695":2,"2696":1,"2699":1,"2707":2,"2828":1,"2880":4,"2888":3}}],["producing",{"2":{"93":1,"2178":1}}],["production",{"0":{"2447":1,"2497":1},"2":{"459":1,"2377":3,"2384":3,"2447":1,"2497":2}}],["products",{"2":{"142":1,"746":3,"1316":1,"2571":1,"2740":1,"2844":1}}],["product",{"2":{"70":1,"134":2,"169":2,"184":2,"191":2,"559":2,"686":1,"746":4,"747":1,"1316":4,"1329":1,"2050":2,"2052":5,"2377":2,"2384":2,"2476":1,"2566":1,"2568":1,"2721":1,"2845":2,"2875":1}}],["producers",{"2":{"2569":1}}],["produced",{"2":{"428":1,"559":1,"2162":2,"2389":1,"2390":1,"2795":1,"2796":1}}],["produces",{"2":{"303":1,"1474":1,"1591":2,"1805":1,"2162":2,"2170":2}}],["produce",{"2":{"49":1,"170":1,"209":1,"266":1,"718":1,"1512":3,"1521":1,"1596":1,"1920":1,"2422":1,"2467":1,"2494":1,"2582":1,"2914":3}}],["protozoa",{"2":{"211":2}}],["prototypist",{"2":{"143":2,"149":1,"211":3,"222":2}}],["prototypes",{"2":{"133":1,"134":1,"2442":1,"2721":1}}],["prototype",{"2":{"114":1,"191":1,"2447":1,"2719":1}}],["proto",{"2":{"114":1,"134":1,"253":1}}],["protocol=serial",{"2":{"266":1,"277":1}}],["protocols",{"0":{"2290":1},"2":{"133":1,"134":1,"2285":1,"2287":2,"2290":3,"2291":1,"2367":1}}],["protocol",{"0":{"2287":1},"1":{"2288":1,"2289":1,"2290":1},"2":{"50":1,"75":1,"111":2,"112":1,"113":1,"114":1,"133":3,"134":3,"160":1,"176":2,"191":1,"199":2,"222":1,"236":2,"249":1,"263":1,"265":1,"266":1,"390":1,"568":1,"573":1,"1280":1,"1283":1,"1676":1,"1988":1,"1998":1,"2010":1,"2013":1,"2178":1,"2269":1,"2287":1,"2288":2,"2289":2,"2290":6,"2291":2,"2293":4,"2367":1,"2379":1,"2389":1,"2462":1,"2739":1,"2799":2,"2873":3,"2874":2,"2927":2,"2928":1}}],["proton",{"0":{"304":1,"1208":1,"1389":1,"1473":1,"2681":1},"1":{"2682":1,"2683":1,"2684":1},"2":{"49":3,"50":2,"77":1,"134":2,"160":1,"172":2,"189":2,"304":1,"308":1,"513":1,"566":1,"720":1,"765":1,"1197":2,"1245":1,"1266":1,"1308":1,"1386":1,"1387":2,"1388":3,"1389":2,"1392":1,"1402":1,"1403":2,"1473":1,"1562":1,"2266":1,"2387":1,"2414":1,"2416":1,"2417":1,"2667":2,"2681":1,"2683":2,"2684":6,"2888":1}}],["protected",{"2":{"2800":1}}],["protection",{"2":{"312":1}}],["protect",{"2":{"26":1,"746":1,"2459":1}}],["project¹",{"2":{"2655":1}}],["projectcain",{"2":{"249":1,"333":1}}],["projects",{"0":{"1308":1,"2447":1},"1":{"1309":1},"2":{"204":1,"559":2,"663":1,"2375":1,"2405":1,"2437":1,"2439":1,"2651":1,"2652":1}}],["project",{"0":{"42":1,"609":1,"2407":1,"2434":1,"2655":1},"2":{"211":2,"213":1,"347":1,"387":1,"408":1,"527":1,"558":1,"607":1,"611":1,"619":1,"1308":1,"1340":1,"1957":1,"2284":1,"2398":2,"2404":1,"2405":2,"2407":2,"2427":1,"2447":3,"2449":1,"2652":1,"2655":5,"2656":6,"2707":4,"2810":1}}],["pr",{"0":{"410":1,"424":1,"2569":1,"2718":1},"1":{"2719":1,"2720":1,"2721":1,"2722":1,"2723":1,"2724":1,"2725":1},"2":{"1":1,"14":1,"32":1,"36":1,"49":1,"130":1,"134":1,"149":2,"191":1,"198":1,"199":1,"229":1,"236":1,"255":1,"256":1,"265":1,"273":1,"275":1,"308":1,"338":12,"397":11,"400":1,"401":1,"402":1,"403":1,"410":1,"423":1,"503":1,"504":2,"613":2,"616":1,"617":2,"1407":1,"1410":3,"1427":1,"1599":1,"2290":1,"2294":3,"2567":5,"2569":2,"2719":8,"2721":8,"2722":6,"2724":2,"2847":2}}],["prs",{"0":{"38":1,"2719":1,"2720":1,"2721":1,"2722":1},"2":{"1":1,"21":1,"134":1,"188":1,"199":1,"213":1,"224":1,"233":1,"251":2,"265":1,"268":2,"275":1,"279":1,"307":1,"393":1,"396":4,"397":4,"399":3,"400":1,"401":1,"406":9,"456":1,"613":1,"617":1,"2567":5,"2569":3,"2570":1,"2571":1,"2718":1,"2719":1,"2720":1,"2721":4,"2722":3,"2723":1,"2724":3}}],["tft",{"2":{"2451":1,"2749":1}}],["tbd",{"2":{"2384":1}}],["tbkmini",{"2":{"311":8,"317":2}}],["tbk",{"2":{"277":1}}],["tsr",{"2":{"2294":1}}],["tsangan",{"2":{"211":2,"285":1,"308":1,"328":1}}],["tl",{"2":{"2294":3,"2314":2}}],["tps65",{"2":{"2001":1,"2002":2}}],["tps43",{"2":{"2001":1,"2002":2}}],["tpyo",{"2":{"1528":1}}],["tpm754",{"2":{"1364":2}}],["t6181",{"2":{"1365":1}}],["t1l",{"2":{"1292":1}}],["t1h",{"2":{"1282":1,"1283":1,"1292":1}}],["tmpu",{"2":{"2246":1}}],["tmpd",{"2":{"2246":1}}],["tm023023",{"2":{"2005":1}}],["tm035035",{"2":{"2005":1}}],["tm040040",{"2":{"2005":1}}],["tm1812",{"2":{"1284":1}}],["tmk",{"0":{"617":1,"1340":1},"2":{"1":1,"38":1,"49":1,"75":2,"113":4,"114":5,"133":3,"134":3,"176":1,"199":1,"222":2,"572":2,"1316":2,"1332":1,"1340":6,"1349":2,"1350":4,"1356":2,"1358":2,"1362":1,"1368":1,"1373":2,"2367":1,"2405":3,"2547":1,"2552":1,"2605":1,"2796":1,"2927":1}}],["t0l",{"2":{"349":1,"1292":1}}],["t0h",{"2":{"349":1,"1282":1,"1283":1,"1292":1}}],["td",{"2":{"324":1,"325":1,"1597":2,"2302":1,"2305":4,"2306":1,"2308":1,"2309":1,"2310":41,"2311":26,"2312":25}}],["tty",{"2":{"2495":1}}],["ttyacmx",{"2":{"2495":1}}],["ttf",{"2":{"465":1,"2746":1,"2748":3,"2750":1}}],["tt",{"2":{"194":1,"562":1,"1416":2,"1684":1,"1759":1,"2031":1,"2297":2,"2528":1,"2544":1,"2910":1}}],["txbolt",{"2":{"2288":1,"2874":1}}],["txen1",{"2":{"1985":1}}],["txled",{"2":{"1389":1,"1393":1}}],["tx",{"0":{"779":2,"2288":1},"1":{"780":2,"781":2},"2":{"277":1,"780":3,"1194":4,"1195":3,"1197":8,"1198":6,"1202":1,"1208":11,"1209":9,"1210":8,"1265":2,"1266":4,"2287":1,"2288":3,"2289":1,"2291":1,"2294":4,"2684":2,"2695":3,"2697":2}}],["txt",{"2":{"191":1,"415":1,"461":2,"486":1,"1521":1,"1523":1,"2627":4}}],["txuu",{"2":{"143":2}}],["tube",{"2":{"2418":1}}],["tuning",{"2":{"2167":1,"2910":1,"2916":1}}],["tuned",{"2":{"2006":1,"2715":1}}],["tunes",{"2":{"1467":1}}],["tune",{"2":{"176":2,"1739":1,"1757":1,"2168":1,"2780":1,"2920":1}}],["tuple",{"2":{"534":2,"536":1}}],["tuples",{"0":{"534":1},"2":{"534":1}}],["tutorial",{"0":{"2572":1},"1":{"2573":1,"2574":1},"2":{"383":1,"763":1,"2582":1,"2591":2,"2637":1,"2639":1,"2648":1,"2923":2}}],["tuw",{"2":{"328":1}}],["tuv",{"2":{"266":1}}],["tuvw",{"2":{"249":1}}],["turquoise",{"2":{"2067":2,"2205":2}}],["turing",{"2":{"2039":2}}],["turkish",{"2":{"134":1,"2880":6}}],["turnaround",{"2":{"265":1,"2584":1}}],["turn",{"0":{"2308":1},"2":{"92":1,"124":1,"152":1,"222":1,"403":1,"645":1,"667":1,"675":1,"715":1,"1192":1,"1204":1,"1285":1,"1319":1,"1479":1,"1549":2,"1551":1,"1555":1,"1567":1,"1568":1,"1579":1,"1580":1,"1674":2,"1702":1,"1704":1,"1750":2,"1759":1,"1761":1,"1762":1,"1798":2,"1842":2,"1846":1,"1853":1,"1854":1,"1855":1,"1856":1,"1919":2,"1941":1,"1948":2,"2044":1,"2062":2,"2063":3,"2069":1,"2079":1,"2080":1,"2081":1,"2082":1,"2191":2,"2200":4,"2210":1,"2242":1,"2279":1,"2283":2,"2286":1,"2297":5,"2308":2,"2411":1,"2520":2,"2528":3,"2530":2,"2532":2,"2538":2,"2544":5,"2554":1,"2697":1,"2721":1,"2778":1,"2849":1,"2850":1,"2860":1,"2864":1,"2870":1,"2871":1,"2928":1}}],["turned",{"2":{"77":1,"617":2,"1485":1,"1552":1,"1642":1,"1664":1,"1794":1,"1955":1,"2191":1,"2323":1,"2644":1,"2715":1}}],["turns",{"2":{"31":1,"34":1,"152":1,"559":1,"1413":1,"1422":10,"1479":2,"1484":2,"1487":2,"1489":6,"1515":2,"1524":2,"1530":2,"1587":1,"1588":4,"1589":2,"1591":1,"1592":1,"1593":2,"1595":1,"1600":2,"1763":2,"1793":2,"1846":1,"1942":1,"1943":1,"1948":3,"2069":1,"2281":1,"2283":4,"2299":2,"2302":1,"2410":2,"2517":6,"2518":2,"2519":2,"2528":2,"2540":2,"2644":2,"2748":1,"2776":2,"2854":2}}],["turning",{"2":{"13":1,"25":1,"134":1,"195":1,"328":1,"649":1,"1479":1,"1941":1,"2043":1,"2279":1,"2411":1,"2804":1,"2928":1}}],["tzarc",{"2":{"174":1,"176":1,"288":1}}],["typ65+",{"2":{"211":1}}],["typists",{"2":{"1407":1,"2908":1,"2909":1}}],["typically",{"2":{"670":1,"1285":1,"1294":1,"1340":1,"1343":1,"1419":1,"1492":1,"1760":1,"1770":1,"1945":1,"2017":1,"2310":1,"2411":1,"2440":1,"2441":1,"2552":1,"2728":1,"2798":1,"2800":1,"2838":1,"2915":1,"2929":1,"2930":1}}],["typical",{"2":{"194":1,"487":1,"1416":1,"1564":1,"1587":1,"2017":1,"2552":1,"2566":1}}],["typing",{"0":{"2064":1,"2162":1},"2":{"152":1,"195":1,"211":1,"246":1,"297":3,"308":1,"643":1,"1419":1,"1487":1,"1516":1,"1523":2,"1529":1,"1591":2,"1804":1,"1805":2,"2030":1,"2063":3,"2064":6,"2156":1,"2162":2,"2170":2,"2209":1,"2224":1,"2228":1,"2284":1,"2295":1,"2310":5,"2324":1,"2372":5,"2427":1,"2666":2,"2824":1,"2887":1,"2911":2,"2920":1,"2938":1}}],["typographic",{"2":{"199":1}}],["typos",{"2":{"134":2,"249":1,"308":1,"1518":1,"1519":3,"1521":1,"1522":2,"1526":1}}],["typo",{"2":{"114":4,"134":4,"149":3,"176":1,"191":1,"249":1,"1519":3,"1521":3,"1522":4,"1523":2,"1526":2,"1527":4,"1528":4,"1529":4,"1532":4,"1533":1}}],["typeid",{"2":{"2758":2,"2760":1,"2761":1,"2762":1,"2763":2,"2764":2,"2765":2,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1}}],["typed",{"2":{"1447":2,"1517":1,"1518":1,"1619":1,"1754":1,"1755":1,"1756":9,"2161":2,"2162":1,"2310":1,"2323":1,"2901":1}}],["typedef",{"2":{"236":1,"1947":1,"1948":1,"2270":1,"2283":1,"2310":1,"2311":1,"2312":2,"2761":1}}],["typewriter",{"2":{"236":1}}],["typenames",{"2":{"176":1}}],["typestring",{"2":{"2847":1}}],["types",{"0":{"669":1,"1407":1},"2":{"114":2,"119":1,"149":1,"191":1,"196":2,"236":1,"553":2,"613":1,"669":1,"1627":1,"1672":1,"1801":2,"1946":1,"2156":1,"2162":1,"2218":1,"2219":2,"2375":2,"2536":1,"2748":2,"2834":1,"2901":1}}],["type",{"0":{"547":1,"1939":1},"2":{"49":2,"111":1,"112":1,"114":2,"132":1,"143":2,"149":1,"152":2,"160":1,"199":1,"211":1,"222":1,"236":4,"249":3,"273":1,"277":1,"333":2,"370":1,"380":1,"430":1,"502":1,"547":1,"553":1,"572":1,"598":1,"613":1,"637":1,"667":1,"684":2,"685":1,"698":1,"1365":2,"1406":1,"1407":1,"1410":2,"1411":1,"1443":1,"1444":1,"1446":2,"1448":1,"1450":2,"1484":1,"1487":1,"1516":2,"1523":2,"1532":1,"1533":2,"1587":2,"1596":1,"1609":1,"1642":1,"1732":1,"1736":2,"1805":2,"1840":3,"1946":4,"1947":1,"1998":1,"2010":1,"2013":1,"2014":1,"2015":1,"2039":1,"2040":1,"2045":1,"2060":3,"2209":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2266":1,"2282":3,"2295":2,"2296":1,"2310":4,"2311":2,"2312":1,"2320":1,"2323":1,"2367":1,"2410":1,"2411":1,"2434":1,"2440":6,"2461":1,"2495":1,"2605":1,"2643":3,"2667":1,"2672":1,"2746":1,"2749":2,"2758":1,"2760":2,"2761":2,"2762":2,"2765":1,"2766":4,"2767":2,"2768":2,"2769":2,"2770":2,"2771":2,"2772":2,"2834":1,"2864":1,"2871":1,"2938":1}}],["tweezers",{"2":{"2414":1,"2421":1}}],["tweetydabird",{"2":{"311":8,"317":1}}],["tweak",{"2":{"119":1,"285":1,"2064":1,"2185":1,"2565":1}}],["tweaks",{"0":{"2886":1},"2":{"94":1,"149":1,"277":1,"294":1,"2673":1}}],["tw40",{"2":{"241":2}}],["tw",{"2":{"93":1,"2181":1,"2537":1}}],["twisting",{"2":{"2420":1}}],["twinkling",{"2":{"2185":1}}],["twinkle",{"2":{"74":1,"93":1,"114":1,"231":1,"2181":2,"2183":2,"2184":2,"2185":3,"2187":2,"2537":2,"2887":1}}],["twi",{"2":{"249":1}}],["twig50",{"2":{"191":1}}],["twice",{"2":{"92":1,"1492":1,"2245":1,"2301":1,"2302":1,"2305":1,"2379":1,"2492":1,"2854":1}}],["two",{"0":{"353":1,"354":1,"1826":1},"1":{"1827":1,"1828":1},"2":{"18":1,"31":1,"34":1,"35":1,"49":1,"114":1,"149":1,"196":2,"203":1,"222":1,"255":1,"277":1,"289":1,"338":1,"353":1,"354":1,"390":1,"471":1,"489":1,"546":1,"553":1,"613":1,"617":1,"629":1,"646":1,"663":1,"671":2,"682":1,"690":1,"712":2,"719":1,"1189":3,"1197":2,"1249":1,"1293":1,"1348":1,"1375":1,"1378":2,"1392":1,"1395":2,"1407":1,"1416":1,"1427":1,"1435":1,"1450":1,"1468":1,"1472":1,"1476":1,"1480":1,"1497":1,"1511":1,"1532":3,"1533":1,"1603":1,"1608":1,"1611":1,"1621":1,"1627":1,"1632":1,"1634":1,"1655":1,"1661":1,"1664":3,"1691":1,"1768":1,"1770":1,"1771":1,"1801":2,"1807":1,"1913":1,"1917":1,"1938":1,"1942":1,"1947":2,"1980":1,"1984":1,"2001":1,"2003":3,"2046":1,"2051":1,"2063":1,"2170":1,"2186":1,"2189":1,"2208":1,"2210":1,"2219":1,"2235":1,"2254":3,"2256":2,"2259":1,"2260":1,"2280":1,"2288":2,"2293":1,"2294":1,"2303":1,"2310":2,"2420":3,"2445":1,"2548":1,"2560":1,"2569":1,"2607":1,"2627":1,"2631":1,"2667":1,"2684":1,"2694":1,"2697":1,"2724":1,"2773":1,"2908":2,"2914":4,"2934":2,"2942":1}}],["tgr",{"2":{"122":2,"134":1}}],["tg",{"2":{"38":1,"1416":2,"2031":3,"2044":2,"2302":1,"2312":3,"2528":1}}],["tkd",{"2":{"2567":1}}],["tkm",{"2":{"114":1,"211":1}}],["tkc",{"2":{"43":4,"211":3}}],["tkc1800",{"0":{"33":1,"34":1},"1":{"34":1},"2":{"33":2,"34":1,"43":2,"2790":1}}],["tkl87",{"2":{"270":1,"277":1}}],["tklfrlnrlmlao",{"2":{"211":1}}],["tkl",{"2":{"18":2,"110":1,"197":6,"211":5,"226":2,"236":1,"253":2,"281":2,"2294":1,"2587":1,"2721":1}}],["tainting",{"2":{"2740":1}}],["tacworks",{"2":{"2567":1}}],["tate",{"2":{"2170":1}}],["talking",{"2":{"617":1,"2254":1}}],["talk",{"2":{"611":1,"617":2,"618":1,"1249":1,"2403":1,"2501":1}}],["tandem",{"2":{"420":1}}],["tag+=",{"2":{"1329":1}}],["tagging",{"2":{"421":1}}],["tagged",{"2":{"396":1}}],["tag",{"2":{"211":1,"228":1,"348":1,"403":2,"405":1,"421":2,"422":1,"616":1,"2667":1,"2672":1}}],["tags",{"0":{"110":1},"2":{"110":5,"421":2,"422":1,"423":2,"2632":1,"2788":1,"2845":2}}],["tabbing",{"2":{"1377":1}}],["tabs",{"0":{"350":1},"1":{"351":1,"352":1,"353":1,"354":1,"355":1},"2":{"350":1,"520":1,"522":1,"2425":1,"2720":1}}],["tabsification",{"2":{"191":1}}],["tab",{"0":{"351":1,"354":1,"355":1,"505":1,"1377":1,"1499":1},"1":{"352":1,"353":1,"506":1,"507":1,"508":1,"509":1},"2":{"222":1,"350":1,"369":1,"387":3,"391":1,"505":2,"506":1,"507":1,"508":4,"509":2,"577":1,"578":1,"587":2,"685":1,"1344":3,"1367":1,"1377":4,"1466":14,"1498":1,"1499":1,"1504":2,"1510":1,"1598":1,"1599":3,"1612":4,"1616":2,"2160":9,"2215":2,"2291":2,"2310":2,"2374":1,"2505":2,"2515":2,"2547":1,"2553":1,"2557":1,"2560":1,"2602":1,"2644":1,"2656":2,"2788":1}}],["tables",{"0":{"345":1},"2":{"2216":1,"2689":1,"2833":1,"2878":1,"2879":1}}],["tablet",{"2":{"100":1,"1415":1}}],["table",{"0":{"460":1,"2761":1,"2762":1},"2":{"55":1,"160":1,"191":1,"199":1,"247":1,"285":1,"460":3,"676":1,"677":2,"681":1,"685":1,"692":1,"716":3,"720":1,"1195":1,"1198":1,"1474":1,"1559":1,"1560":1,"1840":1,"2030":1,"2060":1,"2183":1,"2296":1,"2322":2,"2323":7,"2365":1,"2411":2,"2420":1,"2465":1,"2685":1,"2698":1,"2750":2,"2760":6,"2761":4,"2762":3}}],["taking",{"2":{"340":1,"408":1,"607":1,"2170":1,"2189":1,"2461":1,"2627":1,"2656":1,"2908":1}}],["takashicompany",{"2":{"249":2,"447":2}}],["takashiski",{"2":{"143":4,"149":2}}],["takai",{"2":{"149":1}}],["taken",{"2":{"408":1,"487":1,"1418":1,"1642":1,"2302":1,"2472":1}}],["take",{"0":{"1328":1},"2":{"134":1,"191":2,"194":1,"222":1,"236":1,"288":1,"302":1,"387":1,"391":1,"421":1,"468":1,"472":1,"570":1,"608":1,"617":1,"663":1,"763":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1257":1,"1260":1,"1275":1,"1277":1,"1348":1,"1452":1,"1753":1,"1756":1,"1757":1,"1948":1,"2189":1,"2210":1,"2262":1,"2312":1,"2412":1,"2421":1,"2446":1,"2572":1,"2700":1,"2724":1,"2751":1,"2882":1,"2894":1,"2931":1,"2937":1,"2942":1}}],["takes",{"2":{"49":1,"472":1,"745":1,"1353":1,"1369":1,"1406":1,"1613":1,"1675":1,"1741":1,"1742":1,"1743":1,"1756":1,"1951":1,"2290":1,"2302":1,"2310":1,"2403":1,"2553":1,"2626":1,"2817":1,"2886":1,"2913":1,"2915":1}}],["taurus",{"2":{"114":1}}],["ta65",{"2":{"57":2}}],["taro",{"2":{"143":2}}],["targeted",{"2":{"2272":1,"2704":1}}],["target2initiator",{"2":{"2270":4}}],["targets",{"0":{"2378":1,"2380":1,"2385":1,"2387":1,"2392":1,"2394":1,"2396":1,"2588":1,"2589":1},"2":{"173":1,"176":1,"199":1,"204":1,"213":1,"236":1,"279":1,"293":3,"294":1,"305":3,"314":3,"431":11,"450":2,"451":2,"452":2,"453":1,"609":1,"1404":1,"2266":1,"2272":1,"2410":1,"2588":1,"2589":2,"2590":1,"2667":3,"2722":1}}],["targeting",{"2":{"149":1,"406":3,"1193":1,"1196":1,"2705":1,"2720":1,"2721":1}}],["target",{"0":{"2031":1,"2039":1,"2043":1,"2045":1},"2":{"49":2,"94":1,"114":3,"149":1,"160":1,"198":1,"236":1,"240":1,"266":23,"294":1,"317":1,"348":1,"424":4,"428":1,"431":2,"453":1,"522":1,"718":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"1195":1,"1198":1,"1297":1,"1385":1,"1388":1,"1396":1,"1403":1,"1404":1,"1421":1,"1443":1,"1946":4,"2030":6,"2031":12,"2032":1,"2034":1,"2037":1,"2039":8,"2040":1,"2042":4,"2043":6,"2044":1,"2045":3,"2046":1,"2376":1,"2377":2,"2379":1,"2381":1,"2382":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2400":5,"2410":5,"2468":1,"2476":2,"2487":1,"2495":1,"2501":1,"2609":2,"2650":1,"2656":2,"2667":3,"2719":1,"2722":1,"2749":3}}],["tartan",{"2":{"37":2}}],["tasks",{"2":{"76":1,"149":1,"414":1,"572":1,"649":1,"1556":1,"1596":1,"2927":1}}],["task",{"0":{"125":1,"645":1,"2046":1,"2757":1},"2":{"31":2,"34":1,"49":1,"64":1,"84":1,"93":1,"113":1,"114":1,"125":4,"134":5,"149":2,"211":1,"266":2,"277":1,"317":1,"626":1,"638":1,"644":2,"645":2,"654":1,"1389":1,"1390":1,"1557":1,"1638":6,"1846":1,"1939":2,"1940":1,"1941":1,"1942":1,"1948":5,"1949":4,"2006":1,"2014":2,"2016":2,"2019":2,"2020":3,"2021":2,"2024":2,"2025":1,"2027":1,"2028":1,"2045":1,"2046":8,"2069":1,"2270":2,"2277":2,"2279":1,"2280":1,"2283":4,"2303":1,"2573":1,"2625":1,"2747":4,"2750":7,"2757":5,"2864":1,"2871":1,"2928":3}}],["tapdance",{"2":{"2311":11}}],["tape",{"2":{"2291":2,"2418":2,"2428":2}}],["tapped1",{"2":{"2559":1}}],["tapped",{"2":{"289":1,"297":1,"320":1,"562":1,"1378":1,"1416":1,"1417":1,"1466":1,"1527":2,"1588":1,"1606":2,"1684":3,"2031":1,"2250":7,"2252":7,"2253":3,"2297":2,"2301":1,"2302":4,"2310":2,"2311":3,"2510":1,"2515":1,"2528":2,"2535":29,"2543":7,"2544":2,"2559":29,"2560":1,"2643":1,"2902":1,"2908":3,"2911":1,"2914":2,"2916":1,"2919":1}}],["tapping",{"0":{"119":1,"195":1,"1606":1,"2536":1,"2899":1,"2901":1,"2917":1},"1":{"2900":1,"2901":1,"2918":1},"2":{"22":2,"49":1,"63":1,"112":11,"119":11,"134":2,"149":1,"160":1,"176":1,"188":1,"191":1,"194":1,"195":6,"199":3,"203":1,"222":3,"289":1,"294":1,"297":1,"320":1,"560":2,"562":12,"572":2,"1416":2,"1437":1,"1492":1,"1493":2,"1497":1,"1512":6,"1513":1,"1516":1,"1527":2,"1532":1,"1588":6,"1604":1,"1684":1,"1758":2,"1765":1,"2008":3,"2009":1,"2031":2,"2034":1,"2156":2,"2252":1,"2297":2,"2302":9,"2303":4,"2310":4,"2311":1,"2312":7,"2382":1,"2536":9,"2643":1,"2834":1,"2847":1,"2883":2,"2899":10,"2900":9,"2901":51,"2902":6,"2903":2,"2907":6,"2908":6,"2909":4,"2910":8,"2911":2,"2914":4,"2917":11,"2918":2,"2919":4,"2933":1}}],["taps",{"0":{"320":1,"2307":1,"2561":1,"2904":1},"1":{"2562":1,"2563":1,"2564":1},"2":{"98":1,"176":1,"191":1,"194":7,"211":1,"289":1,"294":1,"297":1,"308":1,"320":1,"328":1,"562":2,"717":1,"1416":2,"1459":1,"1512":2,"1513":1,"1588":2,"1758":1,"1804":1,"1806":2,"2006":2,"2219":1,"2297":1,"2302":1,"2303":1,"2309":1,"2310":2,"2557":2,"2721":1,"2900":2,"2901":2,"2911":1,"2914":1,"2917":1,"2919":2,"2941":1}}],["tap",{"0":{"15":1,"22":1,"194":1,"195":1,"206":1,"297":1,"323":1,"1381":1,"1383":1,"1452":1,"1459":1,"1460":1,"1461":2,"1513":1,"1765":1,"2239":1,"2300":1,"2302":1,"2305":2,"2309":1,"2310":1,"2311":3,"2312":1,"2535":1,"2559":1,"2562":1,"2564":1,"2693":1,"2784":1,"2835":1,"2836":1,"2898":1,"2902":1,"2905":1,"2910":1,"2911":1,"2912":1,"2913":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1,"2560":1,"2561":1,"2562":1,"2563":1,"2564":1,"2565":1,"2899":1,"2900":1,"2901":1,"2902":1,"2903":2,"2904":2,"2905":2,"2906":2,"2907":2,"2908":2,"2909":2,"2910":1,"2911":1,"2912":2,"2913":2,"2914":1,"2915":1,"2916":1,"2917":1,"2918":1,"2919":1,"2920":1,"2921":1},"2":{"22":3,"38":1,"49":3,"74":1,"90":8,"112":5,"120":3,"134":1,"149":4,"152":2,"176":7,"191":4,"194":14,"195":10,"196":1,"199":6,"203":3,"206":3,"211":3,"222":3,"249":1,"266":1,"277":1,"289":2,"294":1,"297":8,"308":7,"317":1,"320":4,"323":7,"324":10,"325":13,"328":2,"373":1,"416":1,"560":1,"562":18,"590":2,"683":1,"1381":1,"1383":1,"1416":2,"1417":1,"1421":1,"1443":1,"1445":3,"1448":4,"1452":7,"1454":1,"1459":3,"1460":1,"1466":2,"1490":2,"1492":2,"1493":2,"1504":1,"1511":4,"1512":6,"1513":1,"1526":1,"1527":11,"1529":1,"1532":1,"1588":4,"1591":1,"1597":2,"1599":3,"1604":1,"1606":17,"1612":3,"1661":1,"1662":4,"1684":5,"1732":1,"1758":1,"1759":3,"1761":2,"1765":6,"1801":1,"1804":1,"1806":1,"1931":3,"2003":8,"2008":4,"2009":5,"2030":4,"2031":2,"2156":1,"2181":1,"2215":1,"2219":1,"2248":2,"2252":4,"2253":2,"2290":2,"2297":4,"2301":1,"2302":35,"2303":21,"2305":8,"2306":1,"2307":5,"2308":12,"2309":59,"2310":53,"2311":23,"2312":49,"2320":1,"2337":4,"2338":3,"2339":3,"2374":8,"2383":1,"2386":2,"2388":2,"2389":1,"2390":1,"2391":2,"2393":4,"2395":4,"2397":5,"2535":1,"2544":1,"2559":3,"2560":3,"2562":4,"2563":7,"2564":5,"2565":2,"2643":2,"2644":1,"2645":2,"2693":7,"2695":1,"2721":1,"2784":1,"2818":1,"2835":1,"2836":1,"2847":4,"2854":1,"2863":3,"2867":2,"2883":2,"2898":2,"2899":1,"2900":13,"2901":8,"2902":4,"2903":2,"2907":1,"2908":11,"2909":4,"2910":14,"2911":15,"2912":8,"2913":20,"2914":3,"2916":6,"2917":2,"2919":4,"2920":1,"2924":2,"2933":2,"2938":4,"2941":1}}],["ti",{"2":{"2795":1}}],["tie",{"2":{"2787":1}}],["tied",{"2":{"420":1,"2468":1,"2789":1}}],["tin",{"2":{"2420":1}}],["tiny",{"0":{"2680":1}}],["tinyuf2",{"0":{"2393":1},"1":{"2394":1},"2":{"93":1,"176":1,"199":1,"277":1,"2393":5,"2680":2}}],["tinyprintf",{"0":{"24":1}}],["tion",{"2":{"2170":2}}],["tilde",{"2":{"1747":2,"2539":1,"2558":1,"2879":1}}],["tild",{"2":{"1417":1,"2539":1,"2558":1,"2560":1}}],["tips",{"0":{"680":1,"1431":1},"1":{"1432":1,"1433":1},"2":{"1929":1,"1930":1,"1933":1,"2420":1,"2422":1}}],["tip",{"0":{"1649":1,"1650":1},"2":{"288":1,"346":2,"373":1,"502":1,"553":1,"594":1,"596":1,"597":1,"649":1,"654":1,"680":4,"684":1,"714":1,"746":1,"764":1,"765":1,"1189":1,"1206":1,"1300":1,"1385":1,"1387":1,"1409":1,"1410":2,"1422":1,"1443":1,"1450":2,"1455":1,"1497":1,"1522":1,"1526":1,"1527":1,"1528":1,"1529":1,"1584":1,"1621":1,"1633":1,"1639":2,"1641":1,"1645":2,"1649":1,"1650":1,"1655":1,"1661":2,"1662":1,"1768":1,"1790":1,"1843":1,"1844":1,"1934":1,"1940":1,"1951":1,"1958":1,"2002":1,"2029":1,"2063":2,"2066":1,"2073":1,"2074":1,"2166":1,"2171":1,"2179":1,"2181":1,"2188":1,"2212":1,"2259":1,"2266":2,"2267":1,"2271":2,"2302":1,"2403":1,"2435":1,"2438":1,"2439":1,"2440":1,"2492":1,"2494":1,"2496":1,"2510":1,"2576":1,"2579":1,"2583":1,"2593":1,"2598":1,"2601":1,"2603":1,"2606":1,"2612":1,"2619":1,"2621":2,"2622":1,"2626":1,"2628":1,"2632":1,"2633":2,"2662":1,"2695":1,"2710":1,"2714":1,"2749":1,"2750":5,"2751":1,"2780":1,"2784":1,"2787":1,"2788":1,"2895":1,"2899":1,"2908":1,"2910":1}}],["tiger80",{"2":{"211":1}}],["tiger910",{"2":{"143":2}}],["tighter",{"2":{"2063":2,"2583":1}}],["tight",{"2":{"191":1,"1287":1}}],["ticking",{"2":{"2377":1,"2384":1}}],["tick3",{"2":{"1680":1}}],["tick2",{"2":{"1680":1}}],["tick1",{"2":{"1680":1}}],["tick",{"2":{"160":2,"285":1,"645":1,"684":1,"1680":6,"2017":2}}],["ticks",{"2":{"25":1,"64":1,"176":1,"1562":1,"2755":1}}],["title",{"2":{"149":1,"335":1,"350":1,"611":2,"676":1}}],["tidy",{"2":{"50":1,"114":3,"131":1,"133":1,"134":3,"149":2,"199":3,"211":3,"222":1,"249":1,"266":3,"308":1,"328":1,"2418":1,"2424":1}}],["tim4",{"2":{"1562":3}}],["tim2",{"2":{"1300":2}}],["timx",{"2":{"718":2,"1300":5,"1477":1}}],["tim8",{"2":{"714":3,"720":1}}],["tim7",{"2":{"714":3}}],["tim6",{"2":{"714":3,"715":3}}],["tim15",{"2":{"1563":2}}],["tim1",{"2":{"713":1,"718":6,"719":1,"1477":1}}],["timingr",{"2":{"767":5}}],["timings",{"2":{"191":1,"1193":1,"1196":1,"1606":1}}],["timing",{"0":{"1283":1,"1606":1},"2":{"11":1,"74":1,"112":1,"134":2,"149":1,"211":1,"562":4,"654":1,"752":1,"1282":1,"1283":1,"1287":1,"1292":2,"1664":1,"1757":1,"1804":3,"2670":1,"2719":2,"2747":1,"2750":1,"2863":1,"2899":1,"2910":2}}],["timeframe",{"2":{"2303":1}}],["timely",{"2":{"2270":1,"2568":1}}],["timeline",{"2":{"127":1,"2722":1}}],["timed",{"0":{"1821":1},"2":{"572":1,"645":1,"2411":1}}],["time80",{"2":{"211":1}}],["timeout=1000",{"2":{"2052":1}}],["timeouts",{"2":{"25":1,"199":1,"2269":1,"2913":1}}],["timeout",{"0":{"25":1,"770":1,"773":1,"776":1,"779":1,"782":1,"785":1,"788":1,"791":1,"794":1,"1205":1,"1497":1,"1592":1,"1762":1,"1803":1,"1804":1,"1805":1},"1":{"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":1,"781":1,"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1,"795":1,"796":1},"2":{"25":7,"49":1,"74":1,"93":1,"112":2,"134":2,"152":1,"158":1,"160":1,"176":4,"183":4,"191":3,"211":1,"297":1,"328":1,"562":5,"568":7,"645":17,"765":1,"771":1,"772":2,"773":1,"774":1,"775":2,"777":1,"778":2,"780":1,"781":2,"783":1,"784":2,"786":1,"787":2,"789":1,"790":2,"792":1,"793":2,"795":1,"796":2,"799":2,"825":2,"854":2,"886":2,"918":2,"953":2,"987":2,"1021":2,"1055":2,"1089":2,"1123":2,"1157":2,"1205":2,"1213":2,"1253":2,"1255":2,"1258":2,"1261":2,"1288":2,"1492":3,"1495":1,"1496":1,"1497":5,"1506":1,"1512":1,"1514":1,"1515":3,"1516":5,"1517":1,"1592":4,"1602":2,"1606":1,"1762":2,"1803":1,"1804":4,"1805":3,"1818":1,"1821":2,"1846":1,"1943":5,"1948":1,"2002":2,"2006":2,"2012":2,"2039":6,"2069":1,"2173":2,"2176":4,"2268":1,"2271":6,"2281":1,"2283":1,"2310":1,"2518":3,"2643":1,"2693":2,"2747":2,"2854":1,"2863":2,"2864":3,"2867":1,"2871":3,"2872":4,"2873":2,"2876":2,"2911":3,"2913":3,"2918":1}}],["timer1",{"2":{"712":1,"2411":1}}],["timer3",{"2":{"712":1}}],["timer",{"0":{"11":1,"1555":1,"1560":1,"1563":1,"1608":1,"1609":1,"1610":1,"1822":1},"1":{"1609":1,"1610":1},"2":{"11":1,"49":1,"74":1,"114":4,"134":1,"149":2,"191":1,"199":3,"222":1,"285":1,"294":3,"308":1,"328":2,"562":5,"645":7,"714":5,"715":2,"718":3,"719":2,"1300":1,"1407":4,"1410":4,"1466":6,"1468":2,"1475":1,"1477":2,"1492":1,"1552":1,"1553":1,"1555":2,"1559":22,"1560":8,"1563":2,"1607":1,"1608":2,"1609":2,"1610":2,"1815":1,"1818":1,"1822":1,"1941":1,"2030":1,"2037":1,"2040":1,"2270":2,"2279":1,"2303":1,"2719":3,"2750":12,"2785":5,"2850":2}}],["timers",{"0":{"2785":1},"2":{"10":1,"11":1,"653":1,"714":1,"718":1,"1300":2,"1560":3,"1563":1,"2671":1,"2785":1}}],["time",{"0":{"1409":1,"2308":1},"2":{"10":2,"25":1,"28":1,"49":2,"50":1,"73":1,"112":1,"123":1,"124":1,"134":1,"140":1,"152":1,"153":1,"173":1,"174":1,"176":3,"182":1,"191":1,"222":1,"228":1,"243":1,"265":2,"283":1,"331":1,"340":1,"373":1,"383":1,"386":1,"387":2,"408":1,"421":1,"471":1,"487":1,"491":1,"509":2,"521":1,"530":2,"531":2,"532":3,"550":1,"552":1,"564":1,"570":2,"577":1,"578":1,"607":1,"608":1,"628":1,"630":1,"644":1,"645":5,"653":1,"654":6,"655":1,"656":1,"663":1,"746":2,"763":1,"765":1,"769":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"857":6,"1092":6,"1126":6,"1160":6,"1189":1,"1205":1,"1289":1,"1326":8,"1375":1,"1386":1,"1406":3,"1407":7,"1409":1,"1410":2,"1422":1,"1423":1,"1437":1,"1443":2,"1459":1,"1471":1,"1478":3,"1479":1,"1480":1,"1487":1,"1492":5,"1495":1,"1497":1,"1516":2,"1519":1,"1527":1,"1537":1,"1552":1,"1588":2,"1589":1,"1592":1,"1602":1,"1604":1,"1606":1,"1656":1,"1661":1,"1664":1,"1666":1,"1674":2,"1675":8,"1732":1,"1756":1,"1757":1,"1759":1,"1762":1,"1803":1,"1804":1,"1805":4,"1847":1,"1929":8,"1930":1,"1931":8,"1933":4,"1934":1,"1941":1,"1943":1,"1947":4,"1948":1,"1951":2,"1953":1,"1954":1,"1955":1,"1988":1,"1997":1,"2003":9,"2008":2,"2014":1,"2017":2,"2030":1,"2034":4,"2042":1,"2045":2,"2050":1,"2063":1,"2065":1,"2070":1,"2181":1,"2191":1,"2224":1,"2228":1,"2251":1,"2266":1,"2268":2,"2279":1,"2281":1,"2284":2,"2287":2,"2290":1,"2302":6,"2303":2,"2310":1,"2312":2,"2320":1,"2371":1,"2372":3,"2407":1,"2421":1,"2423":1,"2459":2,"2462":1,"2468":1,"2495":1,"2566":2,"2583":1,"2584":2,"2588":1,"2591":1,"2605":1,"2609":1,"2626":1,"2627":1,"2630":1,"2633":1,"2643":2,"2656":1,"2669":1,"2719":2,"2721":2,"2724":4,"2727":1,"2746":1,"2747":5,"2750":3,"2757":1,"2769":1,"2778":1,"2785":1,"2844":1,"2847":1,"2854":1,"2855":1,"2863":1,"2865":2,"2866":1,"2867":1,"2873":2,"2875":1,"2882":1,"2888":1,"2896":1,"2899":1,"2903":1,"2904":2,"2905":3,"2906":2,"2913":2,"2927":1,"2929":1}}],["timestamp",{"2":{"1407":6}}],["timestamps",{"2":{"199":1,"211":1,"432":1,"2269":1,"2873":1}}],["times",{"2":{"0":2,"9":2,"19":2,"39":2,"52":2,"222":1,"234":1,"431":2,"453":1,"467":2,"562":3,"641":1,"647":1,"685":1,"745":1,"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1406":1,"1407":1,"1512":1,"1517":2,"1532":2,"1675":1,"1684":1,"1928":2,"2167":1,"2169":1,"2191":3,"2245":5,"2301":2,"2310":1,"2410":1,"2528":1,"2643":2,"2645":1,"2768":1,"2773":1,"2834":1,"2836":1,"2867":1,"2901":2,"2929":3}}],["tedious",{"2":{"2402":1,"2576":1}}],["telephony",{"2":{"1958":1}}],["telling",{"2":{"2567":1}}],["tells",{"2":{"1441":1,"1448":1,"1840":1,"2060":1,"2253":1,"2463":1,"2627":2,"2633":1,"2787":2,"2932":1}}],["tell",{"2":{"105":2,"233":1,"263":1,"490":1,"586":1,"597":1,"616":1,"1956":1,"2265":2,"2411":1,"2560":1,"2567":1,"2628":1,"2942":1}}],["tekezo",{"2":{"1356":2}}],["tee",{"2":{"1313":1}}],["teensys",{"2":{"682":1,"2381":1,"2410":1}}],["teensy++",{"2":{"511":1,"2273":1,"2416":1,"2417":1}}],["teensy2",{"2":{"207":2}}],["teensypp",{"2":{"207":2}}],["teensy",{"0":{"81":1,"108":1,"2273":1,"2424":1,"2481":1,"2837":1},"1":{"2482":1},"2":{"81":1,"93":1,"108":1,"114":4,"131":1,"134":1,"149":2,"176":1,"199":1,"207":2,"348":4,"511":1,"516":4,"568":1,"674":1,"1308":1,"2273":3,"2381":5,"2384":1,"2410":2,"2414":1,"2416":1,"2417":1,"2423":1,"2424":1,"2427":2,"2481":2,"2482":3,"2837":1}}],["ten",{"2":{"2170":1}}],["tend",{"2":{"397":1,"1532":1,"2749":1}}],["tentative",{"0":{"88":1},"2":{"176":1}}],["tegic",{"2":{"253":2}}],["technology",{"2":{"1406":1}}],["technologies",{"2":{"1406":1}}],["technique",{"2":{"1406":1,"1547":1,"1758":1,"2418":1,"2917":1}}],["techniques",{"2":{"546":1,"2418":1}}],["technically",{"2":{"1353":1,"1406":1,"2272":1}}],["technical",{"0":{"586":1,"1947":1},"2":{"70":1,"201":1,"213":1,"224":1,"238":1,"608":1,"763":1,"1340":1,"1470":1,"2742":1,"2743":1}}],["tech",{"2":{"187":1,"191":1,"198":1,"199":1,"211":23,"335":1,"2567":1,"2721":3}}],["teach",{"2":{"2612":1,"2625":1}}],["teaching",{"2":{"176":1}}],["teal",{"2":{"639":1,"2067":2,"2205":2}}],["team",{"0":{"265":1,"275":1},"2":{"116":1,"265":3,"268":1,"273":1,"275":2,"276":1,"284":1,"312":5,"412":1,"1340":1,"2566":4,"2567":3,"2569":1,"2570":2,"2895":3,"2896":1}}],["team0110",{"2":{"102":1}}],["tempo",{"0":{"1481":1},"2":{"1481":10,"1487":1,"2064":1,"2245":1,"2246":4,"2247":10}}],["temporarily",{"2":{"273":1,"390":1,"1363":1,"1378":1,"1514":1,"1515":1,"1600":1,"2411":1,"2476":1,"2901":1,"2911":1}}],["temporary",{"2":{"114":1,"249":1,"279":1,"453":1,"1359":1,"1416":1,"1655":1}}],["temperature",{"2":{"693":2,"2064":3,"2420":1}}],["temp",{"2":{"453":1,"1443":7}}],["templates",{"0":{"672":1},"1":{"673":1,"674":1},"2":{"266":1,"277":1,"374":1,"442":1,"672":1}}],["template",{"0":{"673":1,"674":1,"2598":1},"2":{"50":1,"277":1,"308":1,"374":1,"616":1,"681":1,"1438":1,"1441":1,"1793":1,"2437":1,"2598":1,"2708":1,"2721":1}}],["textwidth",{"2":{"2750":4}}],["text",{"0":{"456":1,"489":1,"492":1,"2578":1,"2638":1},"1":{"490":1,"491":1,"492":1},"2":{"110":1,"111":2,"153":1,"199":1,"236":1,"335":1,"356":1,"446":1,"447":1,"448":1,"456":3,"488":1,"489":4,"491":1,"492":7,"678":1,"1362":1,"1444":1,"1521":2,"1522":1,"1532":1,"2003":1,"2323":1,"2411":1,"2425":1,"2427":1,"2497":1,"2575":1,"2578":1,"2592":3,"2600":1,"2612":3,"2615":1,"2627":2,"2633":1,"2638":2,"2646":1,"2656":1,"2657":1,"2750":4,"2788":1,"2845":2,"2879":1}}],["terpstra",{"2":{"1374":1,"2559":1}}],["terry",{"2":{"176":1}}],["terrazzo",{"2":{"92":2}}],["term\`",{"2":{"2310":1}}],["terms",{"0":{"2794":1},"1":{"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1,"2827":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2842":1},"2":{"1407":1,"1438":1,"1512":1,"1630":1,"2312":1,"2322":1,"2725":1,"2728":1,"2729":1,"2741":1,"2742":1,"2758":1,"2765":1,"2900":1,"2901":1}}],["terminated",{"2":{"1532":3,"1596":1}}],["terminator",{"2":{"272":1,"1696":1}}],["terminals",{"2":{"2615":1}}],["terminal",{"2":{"176":1,"191":1,"347":5,"380":2,"490":1,"492":1,"1322":1,"1529":1,"1669":1,"2214":1,"2310":1,"2427":1,"2495":1,"2575":1,"2580":1,"2609":1,"2613":1,"2615":3,"2621":3,"2662":9}}],["terminology",{"2":{"249":2}}],["term",{"0":{"119":1,"195":1,"1602":1,"2536":1,"2843":1,"2899":1,"2901":1,"2910":1,"2913":1},"1":{"2900":1,"2901":1},"2":{"22":2,"49":1,"112":3,"114":1,"119":9,"134":2,"160":1,"176":1,"188":1,"191":1,"194":1,"195":9,"199":3,"222":2,"262":1,"283":1,"289":1,"562":18,"572":2,"1437":1,"1492":1,"1512":1,"1513":1,"1588":4,"1596":1,"1602":1,"1604":2,"1606":8,"1608":1,"1609":1,"2008":3,"2009":1,"2034":1,"2302":9,"2303":4,"2310":3,"2311":1,"2312":6,"2536":9,"2700":1,"2798":1,"2826":1,"2832":1,"2838":1,"2843":1,"2847":2,"2855":1,"2892":1,"2899":10,"2900":8,"2901":51,"2902":6,"2903":1,"2907":6,"2908":6,"2909":4,"2910":17,"2911":4,"2913":7,"2914":4,"2917":2,"2933":1}}],["testgroup",{"2":{"2937":1}}],["testlist",{"2":{"2937":3}}],["tester",{"2":{"2427":2}}],["testers",{"2":{"396":1,"399":1,"400":1}}],["tested",{"2":{"49":3,"273":1,"341":1,"720":1,"1456":1,"1937":1,"2242":1,"2310":1,"2435":1,"2646":1}}],["testing",{"0":{"499":1,"500":1,"503":1,"550":1,"720":1,"2427":1,"2640":1,"2641":1,"2840":1,"2934":1},"1":{"500":1,"501":1,"502":1,"503":1,"504":1,"551":1,"552":1,"2641":1,"2642":1,"2935":1,"2936":1,"2937":1,"2938":1,"2939":1,"2940":1},"2":{"312":3,"393":1,"396":1,"405":1,"408":1,"454":1,"550":1,"1327":1,"1328":1,"1361":1,"1517":1,"1947":1,"2411":1,"2610":1,"2700":1,"2840":2,"2934":2,"2935":1,"2937":1,"2940":1}}],["test",{"0":{"467":1,"1361":1,"2610":1,"2622":1,"2935":1},"2":{"49":1,"134":3,"149":2,"191":1,"199":3,"211":2,"236":3,"249":3,"266":1,"277":1,"285":1,"348":2,"463":9,"467":16,"499":1,"503":1,"550":1,"551":1,"552":1,"1361":1,"1362":1,"1533":1,"1596":4,"1597":2,"1598":4,"1622":4,"2181":1,"2183":2,"2184":2,"2291":1,"2427":2,"2434":1,"2537":1,"2610":2,"2722":1,"2887":1,"2934":1,"2935":3,"2936":3,"2937":4,"2938":5,"2939":2,"2940":2}}],["tests",{"0":{"551":1,"552":1,"2937":1,"2938":1,"2939":1,"2940":1},"2":{"1":1,"114":1,"134":3,"149":1,"160":1,"174":1,"176":1,"191":1,"196":1,"198":1,"199":2,"222":1,"263":1,"285":1,"308":1,"463":3,"467":2,"499":1,"503":8,"550":5,"551":2,"552":4,"617":1,"1516":1,"2722":3,"2840":1,"2934":1,"2935":1,"2937":7,"2938":4,"2939":3,"2940":1}}],["t",{"0":{"605":1,"608":1,"704":4,"706":3,"709":1,"733":1,"735":1,"737":3,"739":3,"741":2,"770":5,"773":5,"776":5,"779":7,"782":6,"785":6,"788":6,"791":6,"794":3,"804":1,"807":2,"809":3,"811":3,"813":1,"815":1,"817":1,"819":1,"830":1,"832":1,"834":3,"836":3,"838":3,"840":1,"842":1,"844":1,"846":1,"848":1,"850":1,"862":1,"864":1,"866":3,"868":3,"870":3,"872":1,"874":1,"876":4,"878":2,"880":1,"882":1,"892":1,"894":1,"896":3,"898":2,"900":3,"902":3,"904":1,"906":1,"908":1,"910":1,"912":1,"914":1,"927":1,"929":1,"931":3,"933":2,"935":3,"937":3,"939":1,"941":1,"943":1,"945":1,"947":1,"949":1,"961":1,"963":1,"965":3,"967":2,"969":3,"971":3,"973":1,"975":1,"977":1,"979":1,"981":1,"983":1,"995":1,"997":1,"999":3,"1001":2,"1003":3,"1005":3,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1017":1,"1029":1,"1031":1,"1033":3,"1035":2,"1037":3,"1039":3,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1051":1,"1063":1,"1065":1,"1067":3,"1069":2,"1071":3,"1073":3,"1075":1,"1077":1,"1079":4,"1081":2,"1083":1,"1085":1,"1097":1,"1099":1,"1101":3,"1103":2,"1105":3,"1107":3,"1109":1,"1111":1,"1113":4,"1115":2,"1117":1,"1119":1,"1131":1,"1133":1,"1135":3,"1137":2,"1139":3,"1141":3,"1143":1,"1145":1,"1147":4,"1149":2,"1151":1,"1153":1,"1165":1,"1167":1,"1169":3,"1171":2,"1173":3,"1175":3,"1177":1,"1179":1,"1181":4,"1183":2,"1185":1,"1187":1,"1218":1,"1220":1,"1222":3,"1224":2,"1226":3,"1228":3,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1240":1,"1248":3,"1251":2,"1254":1,"1256":3,"1259":3,"1268":1,"1270":1,"1272":1,"1274":2,"1276":1,"1303":3,"1305":3,"1312":1,"1317":1,"1329":1,"1330":1,"1333":1,"1335":1,"1345":1,"1347":1,"1348":1,"1356":1,"1363":1,"1365":1,"1366":1,"1367":1,"1540":1,"1543":1,"1545":1,"1572":1,"1574":1,"1644":1,"1705":2,"1713":2,"1715":2,"1719":1,"1721":1,"1724":1,"1726":1,"1728":1,"1730":1,"1751":1,"1752":1,"1774":1,"1776":1,"1779":1,"1781":1,"1783":2,"1786":2,"1788":1,"1812":1,"1818":1,"1823":1,"1826":2,"1829":3,"1832":4,"1835":5,"1859":2,"1861":1,"1863":1,"1865":1,"1871":1,"1877":1,"1883":1,"1885":1,"1887":1,"1889":1,"1891":1,"1897":1,"1906":2,"1909":2,"1963":1,"1965":1,"1967":1,"1969":1,"1971":1,"1975":1,"1977":1,"2054":2,"2056":2,"2085":4,"2087":3,"2089":1,"2091":1,"2097":1,"2103":1,"2109":1,"2115":1,"2121":1,"2123":1,"2125":1,"2127":1,"2129":1,"2135":1,"2137":3,"2139":3,"2141":1,"2150":2,"2153":2,"2223":1,"2227":1,"2231":1,"2233":1,"2235":1,"2237":1,"2327":1,"2329":1,"2333":1,"2335":1,"2340":1,"2344":2,"2347":2,"2350":1,"2355":1,"2357":1,"2402":1,"2730":1,"2843":1},"1":{"705":4,"707":3,"710":1,"734":1,"736":1,"738":3,"740":3,"742":2,"771":5,"772":5,"774":5,"775":5,"777":5,"778":5,"780":7,"781":7,"783":6,"784":6,"786":6,"787":6,"789":6,"790":6,"792":6,"793":6,"795":3,"796":3,"805":1,"808":2,"810":3,"812":3,"814":1,"816":1,"818":1,"820":1,"831":1,"833":1,"835":3,"837":3,"839":3,"841":1,"843":1,"845":1,"847":1,"849":1,"851":1,"863":1,"865":1,"867":3,"869":3,"871":3,"873":1,"875":1,"877":4,"879":2,"881":1,"883":1,"893":1,"895":1,"897":3,"899":2,"901":3,"903":3,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"928":1,"930":1,"932":3,"934":2,"936":3,"938":3,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"962":1,"964":1,"966":3,"968":2,"970":3,"972":3,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"996":1,"998":1,"1000":3,"1002":2,"1004":3,"1006":3,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1030":1,"1032":1,"1034":3,"1036":2,"1038":3,"1040":3,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1064":1,"1066":1,"1068":3,"1070":2,"1072":3,"1074":3,"1076":1,"1078":1,"1080":4,"1082":2,"1084":1,"1086":1,"1098":1,"1100":1,"1102":3,"1104":2,"1106":3,"1108":3,"1110":1,"1112":1,"1114":4,"1116":2,"1118":1,"1120":1,"1132":1,"1134":1,"1136":3,"1138":2,"1140":3,"1142":3,"1144":1,"1146":1,"1148":4,"1150":2,"1152":1,"1154":1,"1166":1,"1168":1,"1170":3,"1172":2,"1174":3,"1176":3,"1178":1,"1180":1,"1182":4,"1184":2,"1186":1,"1188":1,"1219":1,"1221":1,"1223":3,"1225":2,"1227":3,"1229":3,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1249":3,"1250":3,"1252":2,"1253":2,"1255":1,"1257":3,"1258":3,"1260":3,"1261":3,"1269":1,"1271":1,"1273":1,"1275":2,"1277":1,"1304":3,"1306":3,"1313":1,"1314":1,"1541":1,"1573":1,"1575":1,"1645":1,"1706":2,"1714":2,"1716":2,"1720":1,"1722":1,"1723":1,"1725":1,"1727":1,"1729":1,"1731":1,"1775":1,"1777":1,"1780":1,"1782":1,"1784":2,"1785":2,"1787":2,"1789":1,"1813":1,"1814":1,"1819":1,"1820":1,"1824":1,"1825":1,"1827":2,"1828":2,"1830":3,"1831":3,"1833":4,"1834":4,"1836":5,"1837":5,"1860":2,"1862":1,"1864":1,"1866":1,"1872":1,"1878":1,"1884":1,"1886":1,"1888":1,"1890":1,"1892":1,"1898":1,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"1973":1,"1976":1,"1978":1,"2055":2,"2057":2,"2086":4,"2088":3,"2090":1,"2092":1,"2098":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2128":1,"2130":1,"2136":1,"2140":3,"2142":1,"2224":1,"2228":1,"2232":1,"2234":1,"2236":1,"2238":1,"2328":1,"2330":1,"2334":1,"2336":1,"2341":1,"2345":2,"2346":2,"2348":2,"2349":2,"2351":1,"2356":1,"2358":1,"2359":1,"2731":1,"2732":1},"2":{"22":9,"31":3,"34":3,"46":3,"90":4,"94":2,"105":8,"114":4,"119":1,"149":3,"153":1,"164":1,"166":1,"173":2,"176":1,"188":1,"191":2,"194":9,"195":6,"198":1,"199":2,"211":3,"214":1,"221":1,"222":1,"232":1,"247":1,"249":1,"266":1,"272":3,"277":2,"279":1,"300":2,"307":3,"308":3,"323":3,"324":5,"325":6,"328":1,"332":2,"347":1,"369":1,"373":1,"405":1,"408":2,"427":1,"432":2,"442":1,"453":3,"463":4,"467":2,"487":1,"520":1,"521":2,"522":1,"524":1,"541":1,"546":1,"555":1,"558":1,"562":1,"572":1,"587":3,"591":4,"594":2,"595":1,"597":1,"608":1,"614":1,"617":4,"622":1,"623":3,"629":2,"630":10,"632":1,"635":1,"637":7,"643":1,"645":4,"654":2,"663":1,"670":1,"681":1,"705":4,"707":3,"710":1,"717":2,"725":1,"731":1,"734":4,"736":1,"738":3,"740":3,"742":2,"771":4,"774":4,"777":4,"780":6,"783":5,"786":5,"789":5,"792":5,"795":2,"802":2,"805":4,"808":2,"810":3,"812":3,"814":1,"816":1,"818":1,"820":1,"828":2,"831":5,"833":1,"835":3,"837":3,"839":3,"841":1,"843":1,"845":1,"847":1,"849":1,"851":1,"860":2,"863":5,"865":1,"867":3,"869":3,"871":3,"873":1,"875":1,"877":4,"879":2,"881":1,"883":1,"890":2,"893":5,"895":1,"897":3,"899":2,"901":3,"903":3,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"925":2,"928":5,"930":1,"932":3,"934":2,"936":3,"938":3,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"959":2,"962":5,"964":1,"966":3,"968":2,"970":3,"972":3,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"993":2,"996":5,"998":1,"1000":3,"1002":2,"1004":3,"1006":3,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1027":2,"1030":5,"1032":1,"1034":3,"1036":2,"1038":3,"1040":3,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1061":2,"1064":5,"1066":1,"1068":3,"1070":2,"1072":3,"1074":3,"1076":1,"1078":1,"1080":4,"1082":2,"1084":1,"1086":1,"1095":2,"1098":5,"1100":1,"1102":3,"1104":2,"1106":3,"1108":3,"1110":1,"1112":1,"1114":4,"1116":2,"1118":1,"1120":1,"1129":2,"1132":5,"1134":1,"1136":3,"1138":2,"1140":3,"1142":3,"1144":1,"1146":1,"1148":4,"1150":2,"1152":1,"1154":1,"1163":2,"1166":5,"1168":2,"1170":3,"1172":2,"1174":3,"1176":3,"1178":1,"1180":1,"1182":4,"1184":2,"1186":1,"1188":1,"1193":1,"1194":1,"1205":1,"1216":2,"1219":5,"1221":1,"1223":3,"1225":2,"1227":3,"1229":3,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1245":1,"1249":3,"1252":1,"1257":2,"1260":2,"1269":1,"1271":1,"1275":2,"1277":2,"1304":3,"1306":3,"1310":1,"1311":1,"1315":1,"1316":1,"1326":2,"1329":1,"1335":1,"1337":1,"1340":1,"1341":1,"1346":1,"1351":2,"1361":1,"1362":3,"1363":2,"1365":1,"1377":3,"1378":5,"1406":1,"1412":1,"1413":9,"1414":4,"1417":1,"1421":1,"1422":4,"1424":2,"1425":4,"1426":4,"1436":2,"1437":1,"1441":8,"1442":2,"1443":9,"1450":8,"1451":5,"1452":1,"1454":1,"1458":1,"1466":3,"1474":1,"1479":1,"1481":3,"1484":2,"1485":2,"1486":2,"1487":1,"1497":3,"1504":4,"1511":8,"1519":2,"1520":1,"1521":1,"1523":1,"1526":5,"1527":4,"1528":1,"1529":3,"1531":1,"1532":5,"1544":1,"1546":1,"1557":1,"1573":1,"1583":1,"1594":2,"1596":3,"1597":3,"1598":5,"1599":9,"1603":2,"1606":22,"1607":8,"1610":1,"1611":10,"1612":11,"1614":2,"1616":1,"1621":1,"1622":4,"1642":1,"1657":1,"1658":5,"1660":1,"1661":1,"1662":3,"1683":2,"1696":1,"1706":1,"1714":2,"1716":2,"1720":1,"1725":1,"1727":1,"1729":1,"1731":1,"1736":1,"1739":2,"1740":1,"1743":2,"1744":2,"1746":7,"1747":3,"1749":6,"1751":9,"1753":1,"1764":1,"1765":3,"1770":1,"1771":6,"1775":3,"1777":4,"1780":1,"1782":1,"1784":1,"1787":2,"1789":1,"1790":3,"1792":2,"1793":1,"1794":2,"1795":1,"1798":5,"1804":1,"1807":1,"1813":1,"1819":1,"1824":1,"1827":2,"1830":3,"1833":4,"1836":5,"1840":2,"1844":7,"1849":2,"1860":2,"1862":1,"1864":1,"1866":1,"1884":1,"1886":1,"1890":1,"1892":1,"1907":2,"1910":2,"1918":3,"1939":1,"1941":4,"1942":2,"1946":2,"1947":2,"1948":30,"1950":1,"1951":2,"1952":1,"1955":1,"1956":2,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"1978":1,"1988":2,"1995":1,"2014":4,"2015":5,"2017":2,"2018":1,"2019":7,"2020":3,"2021":5,"2023":1,"2024":4,"2025":10,"2027":4,"2028":3,"2030":1,"2034":1,"2036":4,"2037":2,"2039":10,"2042":2,"2043":2,"2044":2,"2045":1,"2046":4,"2050":2,"2052":3,"2055":2,"2057":2,"2060":2,"2066":7,"2072":2,"2073":13,"2074":9,"2086":4,"2088":3,"2090":1,"2092":1,"2122":1,"2124":1,"2128":1,"2130":1,"2138":3,"2140":3,"2142":1,"2151":2,"2154":2,"2160":6,"2161":3,"2162":5,"2164":3,"2165":3,"2166":3,"2167":2,"2168":5,"2170":15,"2179":1,"2181":1,"2187":7,"2189":6,"2190":5,"2191":7,"2211":1,"2215":1,"2218":2,"2224":1,"2228":1,"2232":1,"2234":1,"2236":1,"2238":1,"2246":1,"2247":13,"2265":2,"2268":1,"2270":20,"2273":1,"2277":1,"2279":4,"2280":2,"2282":1,"2283":16,"2286":1,"2289":2,"2290":1,"2293":9,"2294":2,"2296":2,"2297":1,"2298":1,"2302":1,"2305":2,"2307":2,"2308":5,"2309":18,"2310":14,"2311":11,"2312":16,"2313":1,"2322":1,"2323":2,"2324":1,"2330":1,"2334":1,"2336":1,"2341":1,"2345":1,"2348":1,"2351":1,"2358":1,"2365":1,"2374":6,"2390":1,"2402":1,"2403":1,"2410":1,"2411":1,"2420":1,"2421":1,"2422":4,"2427":2,"2441":3,"2447":1,"2453":1,"2459":2,"2483":1,"2503":3,"2515":3,"2535":42,"2537":1,"2544":1,"2547":1,"2549":1,"2551":2,"2552":3,"2553":1,"2559":42,"2560":1,"2562":3,"2563":2,"2564":2,"2566":2,"2572":2,"2578":1,"2579":1,"2586":1,"2608":1,"2609":2,"2610":1,"2612":1,"2621":1,"2627":2,"2645":6,"2651":1,"2658":1,"2660":1,"2662":2,"2666":1,"2667":1,"2687":1,"2696":1,"2700":1,"2707":1,"2710":1,"2721":1,"2724":1,"2732":1,"2749":103,"2750":131,"2754":2,"2760":16,"2761":7,"2762":5,"2766":7,"2767":13,"2768":5,"2769":11,"2770":10,"2771":9,"2772":4,"2776":1,"2777":2,"2779":5,"2785":1,"2787":1,"2877":1,"2882":1,"2883":3,"2887":1,"2899":4,"2900":7,"2901":9,"2903":2,"2904":5,"2905":8,"2906":5,"2907":3,"2908":2,"2909":2,"2910":9,"2912":1,"2913":10,"2914":10,"2915":2,"2916":6,"2917":2,"2919":5,"2921":1,"2924":2,"2930":2,"2931":1,"2932":1,"2933":81,"2934":1,"2936":1,"2937":1,"2942":3}}],["tr6",{"2":{"1919":1,"2532":1}}],["tr5",{"2":{"1919":1,"2532":1}}],["tr4",{"2":{"1919":1,"2532":1}}],["tr3",{"2":{"1919":1,"2532":1}}],["tr2",{"2":{"1919":1,"2532":1}}],["tr1",{"2":{"1919":1,"2532":1}}],["tr0",{"2":{"1919":1,"2532":1}}],["trn1",{"2":{"1919":1,"2532":1}}],["trn2",{"2":{"1919":1,"2532":1}}],["trn3",{"2":{"1919":1,"2532":1}}],["trn4",{"2":{"1919":1,"2532":1}}],["trn5",{"2":{"1919":1,"2532":1}}],["trn6",{"2":{"1919":1,"2532":1}}],["trns",{"2":{"307":6,"369":118,"587":152,"1350":1,"1416":1,"1421":2,"1761":1,"2073":1,"2160":3,"2161":1,"2162":1,"2168":1,"2252":3,"2253":1,"2502":1,"2512":1,"2515":1,"2528":1,"2549":4,"2551":2,"2554":1,"2787":1}}],["trp",{"2":{"1680":1}}],["trrs",{"2":{"1197":1,"2254":1,"2256":1,"2257":2,"2258":2,"2259":1,"2260":1,"2271":1,"2419":1}}],["trsu",{"2":{"1919":1,"2532":1}}],["trsd",{"2":{"1919":1,"2532":1}}],["trst",{"2":{"1282":1,"1283":1}}],["trs",{"2":{"1191":1,"1194":1,"2259":1}}],["troubleshoot",{"2":{"2398":1}}],["troubleshooting",{"0":{"601":1,"1206":1,"1589":1,"1955":1,"2029":1},"1":{"602":1,"603":1,"604":1,"605":1,"606":1},"2":{"1206":1,"1318":1,"1325":1,"1954":2,"2029":1,"2274":1,"2591":1}}],["trouble",{"2":{"612":1,"1362":1,"2427":1}}],["tronguylabs",{"2":{"114":1,"207":4}}],["trk2",{"2":{"328":1}}],["trk1",{"2":{"277":1}}],["trkeyboard",{"2":{"277":1,"328":1}}],["trying",{"2":{"611":1,"1497":1,"1958":1,"2017":1,"2265":1,"2310":2,"2453":1,"2566":1,"2622":1}}],["try",{"2":{"228":1,"415":1,"528":1,"533":2,"544":1,"598":1,"608":1,"614":1,"617":1,"618":1,"683":1,"769":1,"1329":2,"1330":1,"1355":1,"1363":1,"1373":1,"1419":1,"1427":1,"1471":1,"2017":1,"2052":1,"2310":1,"2422":1,"2427":1,"2483":1,"2501":2,"2605":1,"2609":1,"2655":1,"2667":1,"2713":1,"2721":1,"2778":1,"2901":1,"2937":1}}],["treated",{"2":{"2031":4,"2035":1,"2037":1,"2448":1,"2515":1}}],["treating",{"2":{"619":1,"2513":1,"2531":1}}],["treat",{"2":{"176":1,"669":1,"1420":1,"2207":1,"2513":1,"2531":1,"2929":1}}],["treadstone48",{"2":{"143":4}}],["treadstone32",{"2":{"143":2}}],["tree",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"143":2,"181":2,"191":1,"199":2,"393":1,"493":1,"1297":1,"1419":1,"1519":1,"2591":2,"2627":1}}],["truth",{"2":{"663":2}}],["trunk",{"2":{"134":1}}],["truetype",{"2":{"2748":1}}],["true",{"0":{"258":1,"543":1},"2":{"13":1,"90":3,"105":6,"111":8,"185":1,"194":3,"195":1,"230":1,"249":1,"256":1,"258":1,"303":3,"324":1,"325":1,"370":1,"454":1,"520":1,"543":2,"591":1,"628":1,"629":2,"645":1,"649":1,"650":1,"666":1,"667":3,"698":1,"714":7,"715":5,"718":3,"743":1,"765":3,"1192":1,"1197":1,"1200":2,"1201":2,"1245":2,"1249":1,"1250":1,"1266":1,"1279":1,"1296":2,"1300":2,"1326":1,"1377":2,"1378":4,"1402":1,"1413":4,"1425":1,"1442":1,"1443":1,"1450":3,"1451":1,"1466":2,"1485":1,"1504":2,"1511":1,"1527":2,"1529":2,"1530":1,"1550":1,"1562":2,"1563":2,"1577":1,"1582":1,"1593":1,"1594":3,"1606":6,"1607":1,"1611":1,"1612":2,"1615":1,"1619":2,"1622":4,"1630":1,"1642":2,"1662":2,"1695":2,"1718":1,"1723":1,"1751":2,"1764":1,"1765":1,"1771":1,"1792":1,"1794":2,"1807":2,"1814":1,"1820":1,"1825":1,"1828":1,"1831":1,"1834":1,"1837":1,"1841":2,"1846":1,"1849":1,"1858":1,"1901":1,"1905":1,"1911":1,"1918":2,"1942":1,"1948":16,"1952":1,"1973":1,"1984":1,"1986":2,"1994":1,"2003":3,"2015":1,"2019":1,"2020":1,"2024":1,"2025":1,"2027":1,"2028":1,"2032":2,"2037":2,"2039":3,"2040":2,"2042":2,"2045":3,"2061":2,"2069":1,"2072":1,"2084":1,"2145":1,"2149":1,"2155":1,"2162":1,"2164":2,"2165":1,"2166":1,"2167":1,"2168":1,"2170":2,"2182":1,"2190":1,"2203":1,"2218":1,"2283":12,"2286":1,"2293":3,"2299":1,"2303":1,"2309":1,"2310":2,"2312":2,"2320":1,"2354":1,"2359":1,"2361":1,"2374":2,"2446":1,"2562":1,"2563":7,"2564":1,"2600":1,"2702":5,"2750":5,"2777":1,"2847":1,"2849":2,"2850":1,"2864":3,"2870":3,"2871":3,"2875":1,"2901":1,"2908":1,"2909":1,"2912":2,"2916":3,"2917":1,"2919":1,"2927":1}}],["tr",{"2":{"134":1,"2294":3}}],["trim",{"2":{"2421":1}}],["tried",{"2":{"2613":1,"2898":1}}],["trie",{"0":{"1531":1},"1":{"1532":1,"1533":1},"2":{"1519":4,"1521":1,"1531":1,"1532":4,"1533":1}}],["tries",{"2":{"559":1,"1532":1,"2572":1,"2607":1}}],["triangle",{"2":{"1474":1}}],["tricker",{"2":{"1421":1}}],["tricky",{"2":{"1419":1,"1519":1,"2403":1,"2942":1}}],["triplet",{"2":{"1285":1,"2750":1}}],["triple",{"2":{"529":2,"2310":5}}],["trinity",{"2":{"211":1}}],["tri",{"0":{"2313":1,"2775":1,"2776":1,"2778":1},"1":{"2314":1,"2315":1,"2316":1,"2776":1,"2777":2,"2778":1,"2779":2},"2":{"199":2,"211":1,"1422":3,"1441":3,"2313":1,"2314":2,"2315":4,"2316":7,"2567":19,"2721":2,"2776":1,"2777":4,"2778":1,"2779":4}}],["triggered",{"2":{"297":1,"562":1,"649":1,"715":1,"1658":4,"1684":3,"1751":1,"2039":1,"2911":1}}],["triggers",{"0":{"1522":1},"2":{"195":1,"1512":1,"1751":1,"1758":1,"1799":1,"2008":2,"2069":1,"2911":1,"2917":1}}],["triggering",{"2":{"98":1,"562":1,"1675":1,"2252":1,"2269":1}}],["trigger",{"2":{"95":1,"98":1,"114":1,"191":1,"198":1,"562":1,"578":1,"643":1,"649":1,"654":4,"714":2,"715":1,"1313":1,"1375":1,"1377":1,"1378":1,"1522":3,"1583":1,"1584":1,"1585":1,"1607":3,"1656":1,"1675":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1736":1,"1746":7,"1749":2,"1751":4,"1752":6,"1754":8,"1755":6,"1756":1,"1758":1,"2008":1,"2009":1,"2039":1,"2040":1,"2045":1,"2069":1,"2600":1,"2602":1,"2603":1,"2669":1,"2778":1,"2901":2,"2910":2,"2917":1,"2919":1}}],["trivial",{"2":{"95":1,"266":1,"1751":1,"2449":1,"2547":1}}],["travel",{"2":{"2003":7,"2185":1,"2416":1}}],["travis",{"2":{"1":1,"17":1}}],["trapezoid",{"2":{"1474":1}}],["trailing",{"2":{"211":2,"528":1,"534":1,"535":3,"1249":2}}],["traditional",{"2":{"2583":1}}],["traditionally",{"2":{"125":1,"185":1,"240":1,"2553":1,"2568":1}}],["tradestation",{"2":{"43":2}}],["tracing",{"0":{"2942":1},"2":{"2411":1,"2942":3}}],["trace=x",{"2":{"2942":1}}],["traced",{"2":{"2633":1,"2942":5}}],["trace",{"2":{"2273":1,"2411":1,"2942":4}}],["traceability",{"2":{"397":1}}],["tractyl",{"2":{"114":1,"149":2,"308":1}}],["tracked",{"2":{"1933":1}}],["tracker++",{"2":{"1451":1}}],["tracker",{"2":{"1451":3,"2039":5}}],["tracks",{"0":{"2244":1},"2":{"1928":1,"2244":2,"2627":1,"2942":2}}],["trackpoints",{"2":{"1979":1}}],["trackpoint",{"0":{"1364":1,"1980":1},"2":{"266":1,"1979":4,"1990":1}}],["trackpad",{"0":{"2001":1,"2005":1},"1":{"2002":1,"2003":1,"2004":1,"2006":1,"2007":1,"2008":1,"2009":1},"2":{"176":2,"249":1,"2001":1,"2002":3,"2005":1,"2006":6,"2009":4,"2025":1}}],["trackpads",{"2":{"176":1,"2001":1,"2005":1}}],["tracking",{"2":{"134":1,"711":1,"1999":1,"2014":1,"2163":1,"2810":1}}],["trackballs",{"2":{"2017":1}}],["trackball",{"0":{"2012":1},"2":{"114":3,"118":2,"176":1,"199":1,"246":1,"291":2,"2012":11,"2017":1}}],["track",{"2":{"74":2,"1378":2,"1746":6,"2006":5,"2045":1,"2159":1,"2246":1,"2247":19,"2288":1,"2293":1,"2420":1,"2510":10,"2515":8,"2749":1,"2942":3}}],["transcription",{"2":{"2284":1}}],["translucent",{"2":{"2178":1}}],["translating",{"2":{"2644":1}}],["translation",{"2":{"470":1,"2284":1}}],["translatable",{"2":{"1450":1}}],["translated",{"2":{"1958":1,"2568":1}}],["translates",{"2":{"695":1,"696":1,"2884":1}}],["translate",{"2":{"99":1,"1678":1,"2744":1}}],["transmitted",{"2":{"2368":1,"2747":1,"2902":1}}],["transmitting",{"2":{"1191":1,"1194":1,"1197":2,"2269":5}}],["transmit",{"0":{"770":1,"773":1,"779":1,"1256":1,"1274":1},"1":{"771":1,"772":1,"774":1,"775":1,"780":1,"781":1,"1257":1,"1258":1,"1275":1},"2":{"328":1,"746":1,"747":1,"771":1,"773":1,"774":1,"780":1,"783":1,"786":1,"1269":1,"1270":1,"1274":1,"2873":1}}],["transmissions",{"2":{"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1}}],["transmission",{"2":{"214":1,"263":1,"1189":3,"1249":1,"1293":1}}],["transistor",{"2":{"1551":4,"1564":1}}],["transitions",{"2":{"334":1,"1406":2,"1467":1,"2858":1}}],["transitioned",{"2":{"268":1}}],["transition",{"2":{"236":1,"265":1,"283":1,"1406":1,"1680":60}}],["transient",{"0":{"748":1},"2":{"149":1,"743":2,"748":3,"2857":1}}],["transparency",{"0":{"2549":1},"2":{"2549":1,"2760":2,"2769":3}}],["transparent",{"2":{"231":1,"307":1,"1416":1,"1758":1,"1761":1,"2253":1,"2512":2,"2515":2,"2549":4,"2551":1,"2760":1,"2769":3,"2917":1}}],["transposition",{"2":{"1919":15,"1920":1,"2532":15}}],["transpose",{"2":{"222":1,"1919":15,"2532":15}}],["transported",{"2":{"74":1}}],["transport",{"0":{"107":1},"2":{"74":1,"75":1,"111":1,"112":3,"114":1,"134":1,"160":1,"176":1,"266":1,"277":1,"565":1,"568":9,"1846":1,"1939":2,"2016":1,"2069":1,"2255":1,"2261":2,"2268":1,"2269":1,"2270":2,"2411":2,"2660":1,"2746":1,"2873":2}}],["transform",{"2":{"1993":1,"2014":1}}],["transformation",{"2":{"1988":1,"2901":1}}],["transformations",{"2":{"169":1,"176":1,"185":1}}],["transferring",{"2":{"1947":1,"2749":1}}],["transfers",{"2":{"160":1}}],["transfer",{"2":{"107":1,"765":1,"2268":1,"2270":1,"2290":1,"2462":1,"2749":2,"2750":2}}],["transactions",{"2":{"1204":1,"2270":1}}],["transaction",{"2":{"149":1,"176":1,"191":2,"266":1,"568":2,"1248":1,"1262":1,"1637":1,"2270":12,"2747":1}}],["toward",{"2":{"2421":1}}],["towards",{"2":{"111":1,"191":1,"194":1,"262":1,"378":1,"663":1,"1564":1,"2312":2,"2838":1}}],["to=michi",{"2":{"1388":2}}],["to=imera",{"2":{"1388":2}}],["to=liatris",{"2":{"1388":2,"1396":2}}],["to=helios",{"2":{"1388":2,"1396":2}}],["to=elite",{"2":{"1388":2,"1396":2}}],["to=rp2040",{"2":{"1388":2,"1396":2}}],["to=svlinky",{"2":{"1388":2}}],["to=stemcell",{"2":{"1388":2,"1396":2}}],["to=sparkfun",{"2":{"1388":2}}],["to=bonsai",{"2":{"1388":2}}],["to=bit",{"2":{"1388":2}}],["to=blok",{"2":{"1388":2}}],["to=kb2040",{"2":{"1388":2}}],["to=",{"2":{"1385":1}}],["to=proton",{"2":{"304":1,"1385":1,"1388":2,"2684":1}}],["tolerant",{"2":{"1294":1,"1295":1,"2677":1,"2686":1}}],["tour",{"2":{"617":1}}],["touching",{"2":{"2421":1}}],["touchdown",{"2":{"2045":1}}],["touch",{"2":{"176":1,"211":44,"222":4,"266":1,"273":1,"276":1,"284":1,"2005":1,"2006":1,"2008":4,"2009":1,"2421":2,"2427":1,"2598":2,"2718":1}}],["touchpads",{"2":{"190":1,"191":1,"244":1,"1979":1,"1989":1}}],["touchpad",{"2":{"118":2,"1988":1,"2006":1}}],["todo",{"2":{"503":1,"622":2,"623":4}}],["today",{"2":{"399":1,"400":1,"401":1}}],["tokens",{"2":{"473":1,"489":2,"492":1}}],["tokenn",{"2":{"429":1}}],["token2",{"2":{"429":1}}],["token1",{"2":{"429":1}}],["token",{"2":{"333":1,"655":4,"656":3,"657":5,"2595":1,"2601":1,"2660":1,"2750":6}}],["tokyokeyboard",{"2":{"102":1,"114":1}}],["tokyo60",{"2":{"102":2,"114":2}}],["tones",{"2":{"716":6,"1468":1,"1471":1,"1478":1,"1480":1}}],["tone",{"0":{"1478":1},"2":{"222":1,"629":3,"675":1,"1413":2,"1471":1,"1478":5,"1480":1}}],["tofujr",{"2":{"236":1}}],["tofu60",{"2":{"236":2}}],["tofu",{"2":{"199":1}}],["totally",{"2":{"2023":1}}],["total",{"2":{"191":4,"746":1,"747":1,"748":1,"756":1,"1282":1,"1283":1,"1655":1,"2260":1,"2375":1,"2403":2,"2424":1,"2579":1,"2750":2,"2760":4,"2767":4,"2885":1}}],["tominabox1",{"2":{"143":5,"149":2,"222":1,"236":1}}],["tops",{"2":{"2421":1}}],["topmost",{"2":{"1419":1,"1714":1,"1716":1}}],["topic=41989",{"2":{"1373":1}}],["topic=14290",{"2":{"1372":1}}],["topic=50176",{"2":{"1364":1}}],["topic=57008",{"2":{"1350":1}}],["topics",{"0":{"659":1,"1379":1,"1399":1,"2923":1,"2924":1,"2925":1},"1":{"660":1,"661":1,"1380":1,"1381":1,"1382":1,"1383":1,"1384":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1,"1405":1},"2":{"2610":1,"2923":1,"2924":2}}],["topic",{"2":{"406":5,"1375":1,"1634":1,"2496":1}}],["top",{"2":{"100":1,"149":1,"255":1,"405":1,"559":1,"569":1,"602":1,"666":1,"671":2,"674":1,"688":1,"743":1,"1324":1,"1345":1,"1413":1,"1416":1,"1421":2,"1479":1,"1584":2,"1641":1,"1662":1,"1769":1,"1805":1,"1839":1,"1840":1,"1843":1,"1948":1,"2042":1,"2050":1,"2059":1,"2060":1,"2063":2,"2161":1,"2262":1,"2283":1,"2289":1,"2310":1,"2319":1,"2421":1,"2435":2,"2439":13,"2440":13,"2449":1,"2496":1,"2551":1,"2552":2,"2578":1,"2605":1,"2627":1,"2652":1,"2662":1,"2667":2,"2708":1,"2710":1,"2721":1,"2748":1,"2750":5,"2771":3,"2787":1,"2788":1,"2789":1,"2853":1,"2862":2,"2878":1}}],["too",{"2":{"94":1,"105":1,"134":1,"153":1,"188":1,"211":1,"233":1,"538":1,"540":1,"544":1,"572":1,"612":1,"649":1,"655":1,"677":1,"683":1,"716":4,"717":3,"1317":1,"1362":2,"1406":1,"1412":1,"1413":1,"1417":1,"1443":1,"1455":1,"1482":1,"1487":1,"1491":1,"1519":1,"1596":1,"1805":1,"1929":6,"1930":1,"2025":1,"2273":2,"2298":1,"2302":1,"2310":1,"2312":1,"2411":1,"2420":1,"2421":1,"2422":1,"2446":1,"2560":1,"2583":1,"2645":1,"2709":1,"2719":2,"2721":2,"2888":1,"2901":1,"2942":1}}],["tool",{"2":{"182":1,"373":1,"380":1,"383":1,"387":1,"417":3,"487":1,"576":1,"598":1,"1356":1,"2324":1,"2433":1,"2477":1,"2479":1,"2481":1,"2567":1,"2582":1,"2721":1,"2788":1}}],["toolchains",{"2":{"294":1,"387":1}}],["toolchain",{"0":{"381":1},"2":{"134":1,"381":1,"408":1,"2655":1,"2667":1}}],["toolbox",{"0":{"1321":1,"2606":1,"2607":1},"1":{"2607":1,"2608":1},"2":{"82":1,"119":1,"131":1,"164":2,"240":3,"348":1,"576":1,"683":1,"686":1,"1315":1,"1321":1,"1330":1,"1618":1,"2266":2,"2375":1,"2376":2,"2379":1,"2381":1,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":2,"2402":1,"2426":2,"2470":1,"2489":1,"2501":1,"2592":1,"2602":1,"2605":1,"2606":3,"2607":2,"2608":1,"2612":1}}],["tooling",{"2":{"70":1,"198":1,"373":1,"663":1,"2650":1}}],["tools",{"0":{"382":1,"1320":1},"1":{"1321":1,"1322":1,"1323":1},"2":{"49":1,"182":1,"374":1,"378":1,"381":1,"382":1,"384":1,"387":1,"417":1,"488":2,"598":2,"663":2,"674":1,"1320":1,"1332":1,"1362":1,"1940":1,"2266":1,"2291":2,"2375":1,"2387":1,"2415":1,"2489":1,"2582":1,"2646":2,"2651":1,"2657":2,"2658":1,"2664":1,"2923":1}}],["tog",{"2":{"188":1,"191":1,"231":1}}],["togg",{"2":{"188":2,"191":3,"235":1,"285":1,"303":1,"587":4,"1319":1,"1479":1,"1484":1,"1487":1,"1489":3,"1515":1,"1520":1,"1523":1,"1524":1,"1549":1,"1588":1,"1600":1,"1674":1,"1750":1,"1842":1,"1919":1,"2062":1,"2175":1,"2181":1,"2191":2,"2192":1,"2210":1,"2246":1,"2297":2,"2513":7,"2516":1,"2517":3,"2518":1,"2519":1,"2520":1,"2522":1,"2530":1,"2531":7,"2532":1,"2537":1,"2538":1,"2540":1,"2544":1,"2644":1,"2745":1}}],["toggling",{"0":{"1416":1},"1":{"1417":1},"2":{"49":1,"1287":1,"1412":1,"2025":1,"2030":1,"2039":1,"2040":1,"2075":1,"2191":1,"2312":1,"2411":1,"2670":1,"2882":1}}],["toggles",{"0":{"2184":1},"2":{"718":1,"1413":1,"1416":1,"1422":1,"1475":1,"1479":1,"1484":1,"1487":1,"1489":3,"1515":1,"1524":1,"1530":1,"1593":1,"1600":1,"1615":1,"1763":1,"2210":1,"2299":1,"2302":1,"2513":1,"2517":3,"2518":1,"2519":1,"2522":1,"2528":1,"2531":1,"2540":1,"2644":1,"2645":1,"2910":1}}],["toggled",{"2":{"563":1,"719":1,"746":1,"1416":1,"2645":1,"2669":1,"2721":1}}],["toggleterminal",{"2":{"347":1,"2662":1}}],["togglepin",{"2":{"243":1}}],["toggle",{"0":{"327":1,"1566":1,"1578":1,"1851":1,"1852":1,"2077":1,"2078":1,"2312":1},"2":{"38":1,"49":2,"93":1,"112":2,"114":1,"149":1,"160":1,"211":1,"222":1,"231":3,"243":1,"562":6,"719":1,"758":1,"1363":1,"1412":1,"1416":4,"1479":1,"1484":1,"1487":1,"1489":3,"1515":1,"1523":1,"1524":1,"1527":1,"1530":1,"1549":3,"1566":1,"1578":1,"1588":1,"1593":1,"1600":2,"1615":1,"1619":6,"1674":8,"1684":3,"1749":1,"1750":2,"1759":1,"1765":2,"1842":2,"1851":1,"1852":1,"1919":2,"2024":1,"2025":1,"2030":2,"2031":2,"2039":4,"2040":4,"2044":4,"2062":2,"2077":1,"2078":1,"2175":2,"2181":2,"2191":2,"2200":4,"2246":3,"2247":7,"2297":9,"2299":1,"2302":1,"2312":1,"2386":1,"2391":1,"2411":1,"2513":13,"2516":2,"2517":3,"2518":1,"2519":1,"2520":3,"2522":1,"2528":1,"2530":2,"2531":13,"2532":2,"2537":2,"2538":2,"2540":1,"2544":4,"2643":2,"2644":1,"2645":2,"2669":1,"2670":1,"2745":2,"2847":1,"2867":1,"2910":1}}],["together",{"2":{"72":1,"378":1,"524":1,"573":1,"607":1,"666":1,"920":1,"1091":1,"1125":1,"1190":1,"1280":1,"1359":1,"1597":1,"1599":1,"1627":1,"1943":1,"1990":1,"2159":1,"2178":1,"2207":1,"2273":1,"2302":1,"2308":1,"2409":1,"2420":2,"2444":1,"2497":1,"2559":1,"2605":1,"2713":1,"2721":1,"2732":1,"2735":1,"2913":1,"2914":3}}],["to",{"0":{"3":1,"4":1,"5":1,"6":1,"7":1,"15":1,"16":1,"17":1,"21":1,"24":1,"25":1,"26":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"43":1,"46":1,"57":1,"142":1,"164":1,"166":1,"173":1,"263":1,"265":1,"275":1,"304":1,"528":1,"585":1,"607":1,"608":1,"624":1,"665":1,"666":1,"670":1,"671":1,"684":1,"1328":1,"1333":1,"1338":1,"1339":1,"1425":1,"1493":1,"1607":1,"1624":1,"1625":1,"1627":1,"1628":1,"1737":2,"1757":1,"1758":1,"1925":1,"2032":1,"2033":1,"2037":2,"2039":1,"2044":1,"2050":1,"2186":1,"2302":1,"2403":1,"2429":1,"2466":1,"2468":1,"2579":1,"2588":1,"2601":1,"2625":1,"2675":1,"2707":1,"2774":1,"2782":1,"2930":1},"1":{"31":1,"34":1,"36":1,"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"608":1,"625":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"1339":1,"1926":1,"1927":1,"2034":1,"2035":1,"2036":1,"2037":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1},"2":{"0":1,"1":2,"2":3,"3":1,"4":2,"5":3,"6":4,"7":1,"9":1,"10":9,"12":1,"14":4,"15":1,"16":2,"17":1,"19":1,"21":2,"22":2,"23":2,"24":3,"25":3,"26":1,"27":1,"28":5,"30":3,"31":5,"32":3,"33":3,"34":5,"36":2,"37":2,"38":1,"39":1,"43":2,"45":6,"46":3,"48":1,"49":21,"50":9,"51":2,"52":1,"56":2,"58":1,"62":1,"63":4,"64":4,"65":4,"69":2,"70":6,"72":1,"73":3,"74":8,"75":2,"76":5,"77":3,"82":5,"83":1,"87":3,"88":2,"89":1,"90":6,"92":3,"93":14,"94":5,"95":2,"98":2,"99":5,"100":2,"103":2,"104":2,"105":3,"107":5,"109":1,"110":3,"112":2,"113":6,"114":48,"116":1,"118":4,"119":8,"120":2,"123":4,"124":6,"125":9,"126":3,"127":2,"128":2,"130":3,"131":1,"132":3,"133":8,"134":38,"137":1,"140":1,"142":1,"149":60,"152":3,"153":11,"154":4,"156":2,"157":2,"158":4,"160":27,"163":2,"164":4,"166":1,"167":4,"169":2,"170":1,"172":5,"173":5,"174":4,"175":1,"176":32,"179":1,"182":6,"184":2,"185":9,"186":2,"187":1,"188":3,"189":4,"191":40,"194":8,"195":7,"198":3,"199":36,"201":4,"202":4,"203":3,"204":1,"206":4,"209":3,"211":64,"213":5,"214":1,"215":2,"218":3,"220":3,"221":2,"222":28,"224":2,"228":7,"230":3,"231":3,"232":4,"233":5,"234":4,"235":4,"236":33,"240":7,"241":1,"243":1,"244":3,"245":2,"246":1,"247":1,"249":38,"253":1,"255":4,"256":1,"257":1,"258":1,"259":2,"262":2,"263":4,"265":5,"266":87,"268":4,"270":1,"271":1,"272":5,"273":5,"275":3,"276":5,"277":24,"279":3,"281":1,"283":5,"284":3,"285":18,"288":4,"289":1,"293":3,"294":17,"297":2,"304":2,"305":3,"306":1,"307":7,"308":27,"312":6,"314":2,"315":1,"317":16,"320":1,"323":5,"327":2,"328":32,"331":1,"332":1,"333":9,"334":2,"335":4,"338":21,"340":1,"347":2,"348":1,"358":2,"359":3,"360":1,"361":4,"365":1,"366":1,"367":1,"368":1,"369":2,"370":2,"371":2,"373":6,"374":2,"375":1,"376":2,"378":1,"379":1,"380":2,"381":1,"382":1,"383":1,"386":2,"387":8,"390":2,"391":4,"392":1,"393":1,"396":4,"397":19,"399":2,"400":2,"401":3,"402":2,"405":8,"406":10,"407":1,"408":14,"409":1,"410":4,"411":1,"412":1,"414":1,"415":2,"419":4,"420":2,"421":2,"423":3,"424":1,"427":4,"428":5,"430":1,"431":6,"432":3,"433":3,"435":2,"441":2,"445":2,"446":1,"447":1,"448":1,"450":6,"451":4,"453":3,"454":2,"456":3,"457":3,"458":3,"459":3,"460":1,"461":5,"463":1,"464":1,"465":2,"466":1,"467":4,"471":1,"472":2,"473":2,"474":1,"475":1,"480":2,"481":1,"483":1,"484":1,"485":2,"486":4,"487":6,"488":2,"489":4,"490":3,"491":1,"492":9,"493":4,"494":1,"497":3,"498":5,"499":2,"502":2,"503":3,"504":1,"507":4,"508":2,"509":3,"512":1,"520":7,"521":4,"522":5,"523":1,"524":6,"527":1,"529":1,"532":1,"533":3,"535":4,"536":2,"537":1,"538":2,"539":1,"540":2,"541":2,"544":1,"545":1,"546":6,"548":5,"549":3,"550":3,"551":2,"552":1,"553":6,"555":1,"556":2,"557":2,"559":13,"561":1,"562":19,"563":11,"564":1,"566":8,"567":4,"568":3,"569":1,"570":5,"572":6,"573":4,"576":3,"577":1,"578":2,"579":2,"583":2,"584":2,"585":2,"586":5,"587":4,"589":2,"590":1,"591":4,"592":1,"594":7,"595":1,"598":3,"599":1,"600":1,"602":1,"603":2,"605":1,"607":4,"608":7,"609":2,"611":17,"612":1,"613":6,"614":5,"615":1,"616":2,"617":13,"618":3,"619":1,"620":2,"621":3,"622":2,"623":5,"624":4,"625":3,"626":2,"627":7,"628":3,"630":1,"631":4,"637":4,"638":2,"639":2,"641":2,"642":1,"643":1,"644":3,"645":7,"649":5,"650":3,"651":3,"652":2,"653":3,"654":5,"655":5,"656":1,"657":1,"658":1,"659":3,"662":1,"663":10,"664":7,"665":1,"666":7,"667":8,"668":5,"669":1,"670":4,"671":5,"672":1,"673":4,"674":2,"675":2,"676":2,"677":1,"678":2,"681":7,"682":2,"683":9,"684":4,"685":3,"686":3,"687":3,"688":2,"690":2,"692":1,"693":3,"695":2,"696":2,"698":4,"699":1,"700":2,"701":4,"705":3,"707":3,"708":1,"710":2,"711":1,"712":1,"713":1,"714":4,"715":4,"716":1,"717":7,"718":6,"719":2,"722":2,"724":7,"725":1,"726":1,"727":2,"728":6,"729":3,"730":1,"731":4,"734":1,"736":2,"738":3,"740":3,"741":1,"742":1,"743":4,"745":3,"746":5,"747":5,"749":1,"750":7,"751":12,"752":5,"753":3,"754":2,"755":1,"756":3,"757":2,"760":5,"761":1,"762":2,"763":2,"764":2,"765":10,"769":3,"770":1,"771":5,"773":1,"774":5,"777":5,"780":9,"782":1,"783":7,"785":1,"786":7,"789":6,"792":6,"794":2,"795":1,"797":1,"798":2,"799":3,"801":1,"802":4,"808":1,"810":3,"812":3,"814":1,"816":1,"821":1,"822":1,"823":1,"824":2,"825":3,"826":2,"827":1,"828":4,"831":1,"835":1,"837":3,"839":3,"841":1,"843":1,"848":1,"850":1,"852":1,"853":2,"854":3,"855":2,"856":1,"857":3,"858":3,"859":1,"860":5,"863":1,"867":1,"869":3,"871":3,"873":1,"875":1,"880":1,"882":1,"884":1,"885":2,"886":3,"887":2,"888":2,"889":1,"890":5,"893":1,"897":1,"899":1,"901":3,"903":3,"905":1,"907":1,"912":1,"914":1,"916":1,"917":2,"918":3,"919":2,"920":1,"921":1,"922":3,"923":3,"924":1,"925":5,"928":1,"932":1,"934":1,"936":3,"938":3,"940":1,"942":1,"947":1,"949":1,"951":1,"952":2,"953":3,"954":2,"955":1,"956":3,"957":3,"958":1,"959":5,"962":1,"966":1,"968":1,"970":3,"972":3,"974":1,"976":1,"981":1,"983":1,"985":1,"986":2,"987":3,"988":2,"989":1,"990":3,"991":3,"992":1,"993":5,"996":1,"1000":1,"1002":1,"1004":3,"1006":3,"1008":1,"1010":1,"1015":1,"1017":1,"1019":1,"1020":2,"1021":3,"1022":2,"1023":1,"1024":3,"1025":3,"1026":1,"1027":5,"1030":1,"1034":1,"1036":1,"1038":3,"1040":3,"1042":1,"1044":1,"1049":1,"1051":1,"1053":1,"1054":2,"1055":3,"1056":2,"1057":1,"1058":3,"1059":3,"1060":1,"1061":5,"1064":1,"1068":1,"1070":1,"1072":3,"1074":3,"1076":1,"1078":1,"1083":1,"1085":1,"1087":1,"1088":2,"1089":3,"1090":2,"1091":1,"1092":3,"1093":3,"1094":1,"1095":5,"1098":1,"1102":1,"1104":1,"1106":3,"1108":3,"1110":1,"1112":1,"1117":1,"1119":1,"1121":1,"1122":2,"1123":3,"1124":2,"1125":1,"1126":3,"1127":3,"1128":1,"1129":5,"1132":1,"1136":1,"1138":1,"1140":3,"1142":3,"1144":1,"1146":1,"1151":1,"1153":1,"1155":1,"1156":2,"1157":3,"1158":2,"1159":1,"1160":3,"1161":3,"1162":1,"1163":5,"1166":1,"1170":1,"1172":1,"1174":3,"1176":3,"1178":1,"1180":1,"1185":1,"1187":1,"1189":1,"1191":2,"1192":3,"1193":2,"1194":6,"1195":5,"1196":3,"1197":9,"1198":6,"1200":5,"1201":6,"1202":1,"1204":1,"1205":2,"1206":3,"1210":2,"1211":1,"1212":2,"1213":3,"1214":2,"1215":1,"1216":5,"1219":1,"1223":1,"1225":1,"1227":3,"1229":3,"1231":1,"1233":1,"1238":1,"1240":1,"1242":1,"1243":2,"1244":5,"1245":12,"1249":6,"1251":1,"1252":1,"1256":1,"1257":4,"1260":4,"1263":1,"1264":2,"1265":1,"1266":9,"1269":1,"1271":1,"1273":1,"1275":4,"1277":4,"1278":1,"1279":1,"1280":1,"1281":2,"1282":2,"1283":1,"1284":3,"1285":7,"1287":1,"1288":1,"1289":3,"1290":1,"1291":2,"1292":1,"1293":1,"1294":5,"1295":2,"1296":6,"1297":3,"1298":2,"1299":1,"1300":6,"1304":3,"1306":3,"1307":1,"1308":6,"1309":4,"1310":4,"1312":2,"1313":1,"1314":1,"1315":2,"1316":1,"1317":5,"1319":4,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":4,"1327":1,"1328":3,"1329":2,"1333":1,"1334":2,"1335":1,"1336":1,"1337":3,"1339":5,"1340":3,"1342":2,"1343":1,"1344":2,"1345":5,"1346":4,"1347":1,"1348":1,"1350":3,"1351":1,"1353":4,"1354":1,"1355":1,"1356":2,"1359":1,"1361":1,"1362":8,"1363":4,"1364":1,"1365":2,"1366":2,"1367":1,"1369":2,"1370":1,"1373":2,"1374":1,"1375":13,"1377":4,"1378":7,"1379":3,"1385":7,"1386":1,"1387":5,"1388":14,"1389":4,"1391":1,"1392":4,"1393":4,"1394":2,"1395":2,"1396":5,"1397":1,"1398":1,"1400":3,"1402":3,"1403":2,"1404":5,"1405":1,"1406":8,"1407":4,"1409":1,"1410":1,"1411":3,"1412":8,"1413":27,"1414":2,"1415":2,"1416":15,"1417":10,"1418":3,"1419":3,"1420":1,"1421":3,"1422":9,"1424":1,"1425":4,"1427":7,"1428":2,"1429":1,"1430":2,"1432":3,"1433":4,"1434":3,"1435":5,"1436":2,"1437":1,"1438":3,"1439":1,"1441":5,"1442":9,"1443":18,"1444":6,"1445":1,"1446":4,"1447":2,"1450":12,"1451":5,"1452":2,"1453":1,"1454":2,"1455":3,"1456":1,"1457":1,"1458":2,"1459":2,"1461":3,"1466":1,"1467":4,"1468":2,"1469":2,"1471":2,"1472":6,"1473":1,"1474":7,"1475":2,"1476":5,"1477":6,"1478":3,"1479":7,"1480":7,"1481":3,"1482":1,"1483":2,"1484":10,"1485":2,"1486":10,"1487":7,"1489":1,"1491":1,"1492":2,"1493":3,"1494":1,"1495":1,"1496":1,"1497":9,"1504":3,"1511":3,"1512":7,"1514":2,"1516":11,"1518":4,"1519":6,"1520":4,"1521":2,"1522":7,"1523":3,"1526":4,"1527":2,"1528":4,"1529":6,"1530":1,"1531":4,"1532":17,"1533":9,"1534":3,"1536":2,"1537":1,"1547":1,"1549":1,"1550":4,"1551":4,"1552":7,"1555":4,"1557":5,"1560":2,"1562":8,"1563":3,"1564":6,"1573":2,"1575":1,"1583":9,"1584":4,"1585":6,"1586":4,"1587":6,"1588":5,"1589":2,"1592":2,"1593":1,"1594":3,"1595":2,"1596":5,"1597":1,"1598":1,"1599":3,"1600":1,"1602":3,"1603":5,"1604":2,"1606":12,"1607":1,"1608":1,"1609":1,"1611":1,"1612":2,"1613":2,"1614":2,"1615":2,"1616":7,"1617":4,"1618":4,"1619":9,"1620":4,"1621":2,"1624":3,"1625":1,"1626":2,"1627":6,"1628":4,"1629":3,"1630":7,"1631":1,"1633":4,"1634":2,"1639":2,"1640":1,"1641":2,"1642":4,"1645":4,"1646":1,"1654":2,"1655":8,"1656":5,"1657":3,"1658":3,"1659":2,"1660":2,"1661":4,"1662":3,"1663":2,"1665":1,"1666":1,"1669":3,"1670":1,"1672":3,"1674":4,"1675":13,"1676":2,"1678":1,"1679":4,"1681":2,"1682":1,"1684":4,"1691":1,"1692":1,"1693":6,"1695":1,"1696":2,"1699":2,"1701":1,"1703":2,"1705":1,"1706":5,"1707":3,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1714":2,"1716":2,"1719":1,"1720":2,"1722":1,"1724":3,"1725":1,"1726":2,"1727":1,"1729":3,"1730":1,"1731":3,"1732":2,"1735":1,"1736":8,"1738":4,"1739":2,"1740":1,"1742":1,"1743":1,"1744":1,"1746":3,"1747":3,"1749":4,"1751":23,"1752":2,"1753":2,"1754":3,"1755":4,"1756":3,"1757":4,"1758":11,"1759":4,"1760":1,"1761":4,"1762":1,"1763":1,"1764":2,"1765":2,"1766":1,"1767":1,"1768":1,"1769":2,"1770":5,"1775":2,"1777":1,"1778":1,"1780":2,"1782":2,"1784":1,"1787":2,"1789":1,"1790":3,"1791":2,"1792":1,"1794":2,"1796":2,"1798":3,"1799":3,"1800":2,"1803":2,"1804":5,"1805":11,"1806":5,"1807":1,"1812":1,"1813":2,"1814":2,"1818":1,"1819":1,"1824":1,"1827":2,"1830":3,"1833":4,"1836":5,"1838":3,"1839":3,"1840":14,"1841":2,"1843":6,"1844":8,"1845":2,"1846":8,"1849":3,"1852":1,"1854":1,"1856":1,"1860":2,"1862":1,"1864":2,"1865":1,"1866":2,"1867":1,"1868":2,"1869":1,"1870":2,"1874":1,"1876":1,"1878":1,"1880":1,"1882":1,"1884":2,"1885":1,"1886":2,"1888":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":2,"1895":1,"1896":2,"1902":1,"1904":1,"1905":1,"1906":1,"1909":1,"1911":1,"1913":3,"1915":2,"1916":2,"1917":5,"1919":49,"1920":2,"1924":1,"1925":2,"1926":2,"1927":5,"1928":3,"1929":7,"1930":4,"1931":9,"1932":7,"1933":11,"1934":1,"1938":3,"1939":1,"1940":2,"1941":5,"1942":4,"1943":10,"1945":1,"1946":11,"1947":9,"1948":31,"1951":2,"1952":1,"1953":1,"1954":2,"1955":4,"1956":5,"1958":6,"1959":1,"1964":2,"1966":2,"1968":2,"1970":2,"1972":2,"1974":1,"1979":5,"1980":1,"1985":4,"1988":4,"1989":1,"1990":9,"1991":1,"1992":2,"1993":1,"1994":2,"1995":2,"1996":4,"1997":2,"1998":6,"1999":4,"2000":11,"2001":2,"2002":3,"2003":5,"2005":2,"2006":9,"2007":1,"2008":3,"2009":2,"2010":5,"2011":5,"2012":3,"2013":7,"2014":18,"2015":3,"2016":9,"2017":8,"2018":1,"2019":7,"2020":3,"2021":15,"2023":2,"2024":5,"2025":8,"2026":1,"2028":3,"2029":4,"2030":4,"2031":2,"2032":1,"2033":1,"2034":3,"2035":2,"2037":1,"2039":4,"2040":3,"2042":3,"2043":5,"2044":2,"2046":1,"2047":3,"2048":1,"2049":1,"2050":11,"2051":4,"2052":1,"2055":1,"2057":2,"2058":3,"2059":3,"2060":14,"2061":2,"2063":21,"2064":7,"2065":1,"2066":8,"2067":5,"2068":2,"2069":13,"2072":3,"2073":1,"2074":7,"2075":2,"2078":1,"2080":1,"2082":1,"2086":4,"2088":3,"2090":2,"2091":1,"2092":2,"2093":1,"2094":2,"2095":1,"2096":2,"2100":1,"2102":1,"2104":1,"2106":1,"2108":1,"2110":1,"2112":1,"2114":1,"2116":1,"2118":1,"2120":1,"2122":2,"2123":1,"2124":2,"2126":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":2,"2133":1,"2134":2,"2138":6,"2139":1,"2140":6,"2146":1,"2148":1,"2149":1,"2150":1,"2153":1,"2155":1,"2156":2,"2159":4,"2160":5,"2161":3,"2162":2,"2163":4,"2165":2,"2168":4,"2169":5,"2170":1,"2171":1,"2172":3,"2173":1,"2174":1,"2175":1,"2176":4,"2178":6,"2179":9,"2180":1,"2181":4,"2182":9,"2184":2,"2185":12,"2186":1,"2187":6,"2188":3,"2189":11,"2191":6,"2192":2,"2193":2,"2194":3,"2195":1,"2198":20,"2199":7,"2200":3,"2201":9,"2202":3,"2205":5,"2206":2,"2207":3,"2208":6,"2210":3,"2211":3,"2212":2,"2213":1,"2214":2,"2215":2,"2216":3,"2218":1,"2219":1,"2222":1,"2224":2,"2226":1,"2228":2,"2230":1,"2232":2,"2234":2,"2236":2,"2238":2,"2240":1,"2241":1,"2242":2,"2243":1,"2244":2,"2245":1,"2246":3,"2247":4,"2251":1,"2252":2,"2253":11,"2254":1,"2256":2,"2257":2,"2258":3,"2259":1,"2260":3,"2261":3,"2262":2,"2263":2,"2264":6,"2265":14,"2266":9,"2267":6,"2268":11,"2269":19,"2270":20,"2271":10,"2273":6,"2274":3,"2277":4,"2278":2,"2279":5,"2280":2,"2281":9,"2282":2,"2283":26,"2285":2,"2286":14,"2287":10,"2288":5,"2289":4,"2290":8,"2291":10,"2293":13,"2294":4,"2295":1,"2296":2,"2297":1,"2298":3,"2299":1,"2302":12,"2303":10,"2305":2,"2308":3,"2309":2,"2310":25,"2311":4,"2312":21,"2313":6,"2315":4,"2316":1,"2318":1,"2319":2,"2320":7,"2321":7,"2322":10,"2323":9,"2324":17,"2325":7,"2330":1,"2331":1,"2332":1,"2341":1,"2343":1,"2345":1,"2357":1,"2358":1,"2362":1,"2367":3,"2368":4,"2369":1,"2370":11,"2371":2,"2372":7,"2373":1,"2374":5,"2375":5,"2376":4,"2377":7,"2379":7,"2380":2,"2381":4,"2382":3,"2383":3,"2384":11,"2386":5,"2387":2,"2388":5,"2389":3,"2390":2,"2391":5,"2393":8,"2395":8,"2397":8,"2398":3,"2400":9,"2402":3,"2403":14,"2404":3,"2405":1,"2406":1,"2408":2,"2409":4,"2410":21,"2411":34,"2412":1,"2415":2,"2416":10,"2417":2,"2418":5,"2420":9,"2421":16,"2422":12,"2423":7,"2424":12,"2425":5,"2426":1,"2427":8,"2428":2,"2429":1,"2430":2,"2432":5,"2435":3,"2437":2,"2438":3,"2439":2,"2440":5,"2441":3,"2443":2,"2444":3,"2445":4,"2446":2,"2447":3,"2449":5,"2450":1,"2451":2,"2453":2,"2456":4,"2457":2,"2458":1,"2459":18,"2460":1,"2462":1,"2463":4,"2464":2,"2465":3,"2466":1,"2467":5,"2468":3,"2471":1,"2472":2,"2473":1,"2474":5,"2475":7,"2476":9,"2477":2,"2478":2,"2479":1,"2480":2,"2481":2,"2482":2,"2483":1,"2487":1,"2489":1,"2491":2,"2492":2,"2494":2,"2495":8,"2496":5,"2497":3,"2498":2,"2499":3,"2500":1,"2501":12,"2512":1,"2513":3,"2514":3,"2517":1,"2520":1,"2521":11,"2528":1,"2532":49,"2533":3,"2540":1,"2545":7,"2546":1,"2547":2,"2548":5,"2549":5,"2550":2,"2551":4,"2552":1,"2553":4,"2554":3,"2555":1,"2556":1,"2557":3,"2559":2,"2560":11,"2562":3,"2563":7,"2564":3,"2566":6,"2567":15,"2568":10,"2569":9,"2570":3,"2572":7,"2573":4,"2575":1,"2576":5,"2577":3,"2578":3,"2579":8,"2580":7,"2581":4,"2582":3,"2583":8,"2584":5,"2585":3,"2586":2,"2587":6,"2588":8,"2589":2,"2590":3,"2591":4,"2592":5,"2593":1,"2594":2,"2595":1,"2596":3,"2598":1,"2599":4,"2600":1,"2601":1,"2602":5,"2603":4,"2604":1,"2605":6,"2606":3,"2607":4,"2608":4,"2609":9,"2610":3,"2611":3,"2612":5,"2613":4,"2614":2,"2615":1,"2617":1,"2620":2,"2621":12,"2622":6,"2623":2,"2625":8,"2626":2,"2627":16,"2628":4,"2629":5,"2630":13,"2631":4,"2632":14,"2633":22,"2634":4,"2635":1,"2636":1,"2638":2,"2639":1,"2643":1,"2644":11,"2645":6,"2646":3,"2648":1,"2649":4,"2650":1,"2651":8,"2652":3,"2653":1,"2655":1,"2656":3,"2657":3,"2658":3,"2660":4,"2661":3,"2662":11,"2663":1,"2664":5,"2666":7,"2667":28,"2668":3,"2669":17,"2670":5,"2671":2,"2672":3,"2673":2,"2676":2,"2677":1,"2679":4,"2680":2,"2683":2,"2684":6,"2687":5,"2688":3,"2689":2,"2690":1,"2691":1,"2693":5,"2694":1,"2695":3,"2696":3,"2698":4,"2699":1,"2700":7,"2702":11,"2703":4,"2704":1,"2705":1,"2706":3,"2707":8,"2708":2,"2709":1,"2710":3,"2711":2,"2713":5,"2714":4,"2715":2,"2719":9,"2720":6,"2721":39,"2722":8,"2723":5,"2724":6,"2728":2,"2729":4,"2732":1,"2734":3,"2735":1,"2741":1,"2742":1,"2743":1,"2744":2,"2745":1,"2746":7,"2747":7,"2748":15,"2749":42,"2750":61,"2751":7,"2752":4,"2754":6,"2755":1,"2757":6,"2759":1,"2760":2,"2763":1,"2764":1,"2767":2,"2768":3,"2770":3,"2771":7,"2772":1,"2773":3,"2774":1,"2776":2,"2778":6,"2779":3,"2780":5,"2781":3,"2782":2,"2783":5,"2784":3,"2785":1,"2786":1,"2787":13,"2788":10,"2789":3,"2790":1,"2792":1,"2793":2,"2799":1,"2800":2,"2801":1,"2816":1,"2817":2,"2818":2,"2820":2,"2821":2,"2824":1,"2826":1,"2829":3,"2834":1,"2835":2,"2836":1,"2837":1,"2839":2,"2844":4,"2845":3,"2847":2,"2848":3,"2849":4,"2850":7,"2851":6,"2852":1,"2853":2,"2855":1,"2856":1,"2857":4,"2858":3,"2860":6,"2862":5,"2863":1,"2864":12,"2865":6,"2866":1,"2867":2,"2868":3,"2869":6,"2870":10,"2871":14,"2872":7,"2873":18,"2874":1,"2875":3,"2876":2,"2877":3,"2878":1,"2879":7,"2881":7,"2882":6,"2883":5,"2884":2,"2885":2,"2887":4,"2888":2,"2890":2,"2894":5,"2895":9,"2896":1,"2898":1,"2899":9,"2900":4,"2901":21,"2902":3,"2903":2,"2907":2,"2908":6,"2909":5,"2910":11,"2911":5,"2912":4,"2913":4,"2914":5,"2915":7,"2916":4,"2917":15,"2918":1,"2919":8,"2920":2,"2921":2,"2922":3,"2923":3,"2924":3,"2925":2,"2926":2,"2927":1,"2928":3,"2929":3,"2930":10,"2931":4,"2932":4,"2933":7,"2934":2,"2935":3,"2936":3,"2937":6,"2938":2,"2939":4,"2940":3,"2941":9,"2942":17}}],["th",{"2":{"1616":1}}],["th+tl",{"2":{"1282":1}}],["thus",{"2":{"397":1,"1202":1,"1285":1,"1365":1,"1375":1,"1466":1,"1495":1,"1587":1,"1758":1,"2262":1,"2312":1,"2381":1,"2463":1,"2468":1,"2570":1,"2627":1,"2689":1,"2696":1,"2734":1,"2879":1,"2901":1,"2908":1,"2917":1}}],["thumb",{"2":{"199":1,"294":1,"2915":2}}],["threads",{"2":{"2403":1}}],["threading",{"0":{"545":1}}],["threshold",{"0":{"246":1},"2":{"246":2,"249":1,"2034":1}}],["three",{"0":{"355":1,"1829":1},"1":{"1830":1,"1831":1},"2":{"98":1,"191":1,"196":1,"338":1,"355":1,"529":1,"553":1,"603":1,"631":1,"637":1,"1348":1,"1497":1,"1514":1,"1515":1,"1532":1,"1598":2,"1664":2,"1754":2,"1790":1,"1801":1,"1804":1,"1928":1,"1939":1,"1948":1,"1979":1,"2191":1,"2245":2,"2277":2,"2285":1,"2293":2,"2301":1,"2303":3,"2310":1,"2323":1,"2459":1,"2515":1,"2899":1,"2901":2,"2902":1}}],["throttling",{"2":{"644":1,"2268":1}}],["throttled",{"2":{"2270":1}}],["throttle",{"2":{"149":1,"568":1,"2006":1,"2016":2,"2017":1,"2268":1,"2747":1,"2750":6}}],["thrown",{"2":{"573":1}}],["throw",{"2":{"114":1,"1362":1}}],["throughout",{"2":{"1736":1}}],["through",{"0":{"1425":1},"2":{"110":1,"160":1,"166":1,"224":1,"232":1,"323":1,"371":1,"410":2,"431":1,"559":1,"586":1,"591":1,"631":1,"637":1,"663":1,"687":1,"718":1,"724":1,"1316":1,"1340":1,"1408":1,"1416":2,"1425":1,"1427":1,"1443":1,"1466":1,"1474":1,"1477":1,"1478":2,"1483":2,"1484":2,"1489":3,"1501":1,"1502":1,"1507":1,"1508":2,"1526":1,"1547":1,"1549":1,"1564":1,"1569":1,"1586":1,"1588":1,"1629":1,"1661":2,"1675":2,"1765":1,"1770":2,"1842":4,"1846":1,"2042":1,"2062":6,"2063":1,"2065":1,"2069":1,"2181":2,"2231":1,"2233":1,"2235":1,"2237":1,"2245":1,"2302":1,"2303":1,"2320":1,"2324":1,"2325":2,"2370":2,"2379":1,"2403":1,"2414":1,"2416":1,"2420":1,"2422":1,"2425":1,"2453":1,"2459":3,"2463":1,"2467":1,"2472":1,"2499":1,"2517":3,"2520":1,"2521":2,"2530":4,"2537":2,"2538":6,"2545":2,"2549":1,"2550":1,"2568":1,"2614":1,"2625":1,"2655":1,"2667":1,"2682":1,"2700":1,"2702":1,"2705":2,"2721":3,"2723":1,"2734":1,"2744":1,"2750":3,"2798":1,"2864":1,"2871":1,"2875":2,"2895":1,"2914":1,"2916":1,"2927":1}}],["thomas",{"2":{"2485":1,"2636":1}}],["thoughts",{"0":{"2888":1}}],["thought",{"2":{"549":1,"2423":1,"2572":1}}],["though",{"2":{"50":1,"390":1,"1368":1,"1377":1,"1435":1,"1471":1,"1492":1,"1522":1,"1547":1,"1751":1,"1755":1,"1756":1,"2417":1,"2420":1,"2422":1,"2633":1}}],["those",{"2":{"33":1,"49":1,"113":1,"175":1,"263":1,"265":1,"276":1,"360":1,"373":1,"487":1,"521":1,"546":1,"576":1,"598":2,"614":1,"700":1,"727":1,"750":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1197":1,"1212":1,"1281":1,"1346":1,"1348":1,"1355":1,"1441":1,"1443":1,"1467":1,"1484":1,"1497":1,"1516":1,"1758":1,"1792":1,"1804":1,"1849":1,"1947":1,"1985":1,"2017":1,"2072":1,"2287":1,"2293":1,"2322":1,"2403":1,"2424":1,"2462":1,"2552":1,"2573":1,"2583":1,"2598":1,"2662":1,"2683":1,"2702":1,"2711":1,"2726":1,"2744":1,"2749":1,"2774":1,"2783":1,"2878":1,"2881":1,"2882":1,"2895":1,"2901":1,"2917":1,"2920":2,"2930":2,"2937":2,"2939":1}}],["thickness",{"2":{"2415":1}}],["thicker",{"2":{"2006":1}}],["thiers",{"2":{"1522":1}}],["thier",{"2":{"1521":3,"1522":8}}],["thing",{"0":{"608":1},"2":{"213":1,"551":1,"566":1,"1335":1,"1375":1,"1385":1,"1412":1,"1450":3,"2310":1,"2467":1,"2711":1,"2879":1,"2920":1,"2936":1}}],["things",{"0":{"2300":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"50":1,"113":1,"119":1,"158":1,"230":1,"334":1,"361":1,"408":1,"409":1,"446":1,"447":1,"448":1,"521":1,"522":1,"529":1,"558":1,"608":1,"617":2,"618":1,"624":1,"629":1,"631":1,"664":1,"687":1,"1337":1,"1362":1,"1451":1,"1454":1,"1484":1,"1485":1,"1497":1,"1586":1,"1913":1,"1980":1,"2269":2,"2273":1,"2293":2,"2310":1,"2319":1,"2377":1,"2384":1,"2403":1,"2410":1,"2421":2,"2425":1,"2427":2,"2441":1,"2459":1,"2466":1,"2496":1,"2553":1,"2554":1,"2568":1,"2572":2,"2605":1,"2625":2,"2658":1,"2661":1,"2669":1,"2724":1,"2732":1,"2882":1}}],["thinkpad",{"2":{"1365":1,"1979":1}}],["thinking",{"2":{"243":1,"331":1}}],["thinks",{"2":{"182":1}}],["think",{"2":{"119":1,"228":1,"520":1,"522":1,"548":1,"611":1,"617":1,"1316":1,"1493":2,"1732":1,"2445":1,"2459":1,"2719":1,"2877":1,"2927":1,"2942":1}}],["third",{"2":{"49":1,"288":1,"373":1,"607":1,"655":1,"714":1,"1487":1,"1626":1,"1756":1,"1830":1,"1833":1,"1836":1,"2296":2,"2302":1,"2310":1,"2313":1,"2324":1,"2569":1,"2721":1,"2896":1}}],["this",{"0":{"608":1,"1326":1,"1327":1},"2":{"0":1,"3":1,"5":1,"6":2,"10":1,"11":2,"14":2,"15":1,"16":1,"21":1,"23":1,"28":1,"30":1,"31":1,"32":1,"33":1,"34":1,"36":3,"45":2,"49":6,"50":2,"69":1,"70":2,"87":1,"88":1,"90":2,"99":3,"103":1,"104":1,"107":1,"111":1,"116":1,"119":1,"120":1,"123":1,"125":3,"126":2,"127":1,"131":1,"132":2,"133":1,"143":2,"149":1,"152":2,"154":1,"156":1,"163":1,"164":1,"172":2,"173":1,"182":2,"185":3,"187":1,"189":1,"190":1,"194":4,"198":1,"201":2,"209":1,"211":1,"213":3,"214":1,"215":2,"218":2,"221":1,"224":1,"228":2,"229":1,"230":2,"231":1,"233":1,"240":1,"243":1,"244":1,"251":1,"255":2,"256":1,"262":1,"263":5,"265":1,"268":1,"271":1,"273":4,"275":1,"276":2,"279":2,"302":1,"303":1,"306":1,"307":3,"312":5,"315":1,"320":1,"327":1,"331":1,"334":1,"335":1,"340":1,"342":1,"344":1,"346":6,"347":1,"348":1,"349":2,"356":1,"359":2,"360":1,"363":1,"364":1,"365":1,"366":1,"367":2,"368":1,"371":1,"372":2,"375":1,"378":3,"379":1,"380":1,"382":1,"383":1,"384":1,"387":4,"390":1,"391":2,"393":3,"396":1,"397":3,"398":1,"399":1,"400":1,"401":1,"405":3,"406":5,"407":1,"408":2,"411":1,"416":1,"417":2,"418":2,"421":1,"427":4,"428":3,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":2,"437":1,"438":1,"439":1,"440":2,"441":1,"442":1,"443":2,"444":1,"445":1,"446":1,"447":1,"448":1,"450":2,"451":2,"452":2,"453":2,"454":1,"456":1,"457":1,"458":2,"459":4,"460":2,"461":1,"462":1,"463":2,"464":2,"465":2,"466":2,"467":3,"468":1,"469":1,"470":1,"472":1,"484":1,"486":1,"487":5,"490":1,"491":1,"492":1,"493":3,"497":1,"503":2,"504":1,"505":1,"507":2,"519":1,"520":2,"524":1,"531":1,"532":2,"533":1,"534":1,"537":1,"545":1,"547":1,"548":1,"549":2,"550":1,"551":1,"552":2,"553":1,"554":1,"555":2,"557":1,"558":1,"559":1,"562":3,"565":1,"567":2,"568":1,"569":1,"570":2,"572":2,"573":3,"574":1,"577":1,"578":2,"580":2,"581":2,"582":1,"585":1,"586":8,"589":1,"590":1,"591":6,"592":1,"593":1,"596":2,"598":4,"607":2,"611":1,"613":1,"614":1,"615":1,"617":3,"620":1,"621":2,"622":1,"623":3,"624":1,"627":2,"629":2,"631":2,"632":4,"633":1,"635":2,"637":5,"638":3,"639":1,"642":2,"643":2,"644":1,"645":1,"646":3,"649":5,"653":1,"654":2,"655":4,"656":1,"657":1,"658":1,"659":3,"662":1,"663":3,"665":1,"666":3,"667":4,"668":1,"670":3,"671":1,"672":1,"673":1,"674":2,"675":1,"676":4,"679":2,"680":2,"681":1,"683":2,"684":6,"685":5,"686":1,"687":2,"688":2,"692":4,"696":2,"698":2,"699":1,"703":1,"704":1,"714":1,"716":1,"718":3,"719":2,"721":1,"722":2,"727":1,"729":1,"731":2,"735":1,"737":1,"743":2,"746":1,"747":1,"749":2,"750":4,"751":4,"752":1,"753":1,"754":3,"757":1,"759":1,"763":1,"764":1,"765":2,"766":1,"767":1,"769":2,"773":1,"794":2,"798":1,"802":2,"806":1,"809":1,"813":1,"817":1,"819":1,"824":1,"826":1,"828":2,"832":1,"836":1,"840":1,"844":1,"846":1,"853":1,"855":1,"857":1,"858":1,"860":2,"864":1,"868":1,"872":1,"876":1,"878":1,"885":1,"887":1,"888":2,"890":2,"894":1,"900":1,"904":1,"908":1,"910":1,"917":1,"919":1,"920":1,"922":1,"923":1,"925":2,"929":1,"935":1,"939":1,"943":1,"945":1,"952":1,"954":1,"956":1,"957":1,"959":2,"963":1,"969":1,"973":1,"977":1,"979":1,"986":1,"988":1,"990":1,"991":1,"993":2,"997":1,"1003":1,"1007":1,"1011":1,"1013":1,"1020":1,"1022":1,"1024":1,"1025":1,"1027":2,"1031":1,"1037":1,"1041":1,"1045":1,"1047":1,"1054":1,"1056":1,"1058":1,"1059":1,"1061":2,"1065":1,"1071":1,"1075":1,"1079":1,"1081":1,"1088":1,"1090":1,"1091":1,"1092":1,"1093":1,"1095":2,"1099":1,"1105":1,"1109":1,"1113":1,"1115":1,"1122":1,"1124":1,"1125":1,"1126":1,"1127":1,"1129":2,"1133":1,"1139":1,"1143":1,"1147":1,"1149":1,"1156":1,"1158":1,"1160":1,"1161":1,"1163":2,"1167":1,"1173":1,"1177":1,"1181":1,"1183":1,"1189":1,"1190":2,"1191":2,"1194":2,"1196":1,"1197":5,"1200":1,"1201":1,"1202":2,"1205":2,"1211":1,"1212":1,"1214":1,"1216":2,"1220":1,"1226":1,"1230":1,"1234":1,"1236":1,"1244":1,"1245":1,"1247":1,"1249":1,"1262":1,"1263":1,"1268":1,"1269":1,"1273":1,"1278":1,"1280":2,"1287":2,"1289":3,"1290":1,"1291":2,"1293":1,"1294":2,"1295":1,"1296":1,"1300":1,"1302":1,"1303":1,"1309":1,"1310":1,"1311":1,"1312":2,"1313":1,"1316":2,"1317":5,"1318":1,"1326":1,"1327":1,"1328":1,"1329":3,"1333":1,"1339":2,"1341":1,"1344":1,"1345":5,"1346":1,"1347":1,"1349":1,"1351":5,"1353":3,"1354":1,"1356":2,"1358":1,"1362":1,"1363":1,"1365":1,"1367":1,"1374":1,"1375":1,"1377":3,"1378":4,"1379":3,"1385":3,"1386":2,"1389":1,"1395":1,"1401":1,"1404":2,"1406":2,"1407":1,"1409":1,"1410":3,"1412":5,"1413":16,"1415":1,"1416":7,"1417":4,"1419":2,"1421":1,"1422":1,"1423":2,"1424":1,"1425":2,"1428":1,"1429":1,"1432":1,"1434":3,"1435":4,"1436":2,"1437":2,"1438":5,"1439":1,"1441":3,"1442":6,"1443":11,"1445":1,"1446":3,"1448":1,"1450":2,"1451":5,"1452":3,"1453":1,"1454":1,"1456":2,"1457":1,"1458":2,"1459":3,"1462":1,"1463":1,"1464":1,"1466":3,"1467":1,"1473":1,"1474":1,"1475":1,"1478":1,"1479":6,"1482":1,"1484":6,"1485":4,"1486":5,"1487":7,"1492":3,"1493":1,"1496":1,"1497":7,"1504":2,"1512":3,"1514":1,"1518":1,"1520":1,"1521":3,"1522":3,"1523":2,"1526":1,"1527":1,"1528":1,"1529":3,"1531":3,"1532":6,"1533":1,"1534":1,"1535":1,"1536":1,"1547":1,"1551":2,"1552":3,"1554":1,"1555":1,"1556":1,"1557":1,"1560":1,"1562":1,"1563":1,"1564":2,"1583":4,"1585":3,"1587":2,"1588":3,"1589":1,"1591":2,"1595":1,"1596":2,"1599":2,"1600":1,"1602":1,"1603":3,"1604":1,"1606":2,"1608":1,"1610":1,"1614":3,"1616":2,"1617":2,"1618":1,"1620":2,"1621":2,"1627":1,"1628":1,"1631":1,"1633":3,"1635":1,"1636":1,"1639":1,"1641":1,"1642":1,"1655":2,"1656":4,"1657":1,"1658":1,"1659":3,"1660":1,"1661":2,"1662":2,"1664":3,"1666":1,"1669":1,"1670":2,"1675":2,"1677":1,"1679":2,"1681":1,"1682":1,"1683":1,"1691":1,"1696":2,"1698":1,"1700":1,"1701":1,"1702":1,"1711":1,"1715":1,"1724":1,"1726":1,"1728":1,"1730":1,"1735":1,"1736":2,"1738":1,"1740":2,"1742":1,"1744":2,"1746":2,"1749":3,"1751":16,"1752":1,"1753":2,"1754":1,"1755":1,"1756":7,"1758":2,"1760":1,"1764":1,"1765":2,"1766":1,"1767":1,"1768":1,"1793":3,"1794":1,"1795":1,"1796":1,"1803":2,"1804":4,"1805":3,"1806":4,"1807":1,"1838":1,"1840":6,"1841":2,"1849":2,"1859":1,"1861":1,"1907":2,"1910":2,"1920":1,"1929":3,"1930":2,"1931":1,"1932":7,"1933":2,"1934":1,"1939":1,"1940":1,"1941":2,"1942":1,"1943":2,"1946":1,"1947":4,"1950":1,"1951":2,"1953":1,"1954":2,"1955":2,"1956":1,"1958":2,"1982":1,"1986":1,"1990":2,"1996":1,"1998":1,"1999":1,"2000":3,"2001":2,"2005":2,"2008":3,"2009":2,"2010":1,"2011":2,"2012":1,"2013":1,"2014":4,"2016":4,"2017":4,"2021":14,"2023":2,"2024":2,"2025":2,"2030":1,"2039":1,"2042":1,"2045":2,"2047":2,"2050":1,"2058":1,"2060":6,"2061":2,"2064":3,"2067":1,"2069":2,"2072":2,"2074":4,"2075":1,"2085":1,"2087":1,"2151":2,"2154":2,"2156":1,"2160":1,"2162":1,"2163":1,"2165":2,"2166":1,"2167":1,"2168":1,"2172":1,"2178":2,"2180":1,"2181":2,"2183":3,"2189":2,"2191":1,"2201":12,"2205":1,"2206":1,"2207":1,"2212":1,"2214":1,"2219":2,"2221":1,"2225":1,"2227":1,"2240":1,"2241":1,"2242":1,"2243":1,"2252":1,"2253":1,"2254":1,"2256":1,"2258":2,"2263":1,"2264":4,"2265":2,"2266":5,"2267":3,"2268":13,"2269":19,"2270":4,"2271":17,"2276":1,"2277":1,"2278":1,"2279":2,"2280":1,"2281":2,"2282":1,"2285":3,"2287":3,"2290":1,"2291":1,"2293":10,"2296":1,"2301":1,"2302":8,"2303":5,"2306":2,"2309":1,"2310":6,"2311":1,"2312":8,"2313":3,"2315":1,"2318":2,"2322":1,"2323":3,"2324":8,"2337":1,"2338":1,"2339":1,"2368":1,"2370":2,"2371":2,"2372":5,"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":2,"2381":1,"2382":1,"2383":2,"2384":3,"2386":1,"2387":1,"2388":2,"2389":2,"2390":2,"2391":1,"2393":3,"2395":3,"2397":3,"2398":3,"2400":2,"2402":2,"2403":5,"2404":1,"2406":1,"2407":4,"2409":1,"2410":3,"2411":21,"2415":2,"2416":2,"2418":1,"2420":4,"2421":5,"2422":1,"2424":2,"2427":1,"2428":2,"2430":3,"2435":3,"2436":1,"2438":4,"2439":2,"2440":2,"2441":5,"2442":3,"2445":3,"2449":1,"2453":2,"2456":1,"2459":14,"2460":1,"2461":1,"2462":3,"2463":1,"2464":1,"2466":1,"2467":1,"2470":1,"2474":1,"2475":3,"2483":1,"2492":2,"2493":1,"2494":2,"2495":2,"2496":3,"2497":2,"2498":2,"2499":1,"2501":2,"2512":1,"2514":2,"2515":1,"2546":1,"2548":1,"2550":1,"2551":1,"2552":5,"2553":1,"2554":4,"2555":1,"2557":3,"2559":2,"2560":7,"2564":1,"2566":1,"2568":3,"2569":3,"2571":1,"2572":2,"2573":3,"2574":1,"2575":1,"2576":1,"2577":2,"2578":3,"2579":1,"2580":2,"2582":1,"2583":1,"2584":1,"2587":1,"2588":2,"2590":1,"2591":4,"2596":1,"2603":1,"2605":5,"2607":2,"2609":9,"2611":1,"2614":1,"2615":1,"2621":5,"2622":2,"2625":3,"2626":2,"2627":4,"2628":1,"2630":4,"2632":5,"2633":3,"2634":1,"2643":3,"2644":3,"2645":1,"2646":2,"2651":2,"2652":1,"2656":1,"2657":2,"2660":6,"2661":1,"2662":3,"2664":4,"2666":1,"2667":6,"2668":2,"2669":8,"2670":5,"2671":4,"2672":1,"2675":2,"2676":1,"2677":1,"2679":1,"2680":1,"2683":3,"2684":1,"2687":1,"2688":2,"2693":1,"2695":1,"2696":2,"2697":1,"2700":2,"2702":3,"2704":1,"2705":2,"2707":2,"2708":1,"2712":1,"2713":1,"2714":1,"2718":2,"2719":5,"2720":2,"2721":5,"2722":2,"2723":2,"2724":1,"2725":3,"2726":2,"2727":1,"2734":4,"2743":1,"2744":2,"2746":1,"2747":3,"2748":8,"2749":1,"2750":7,"2757":3,"2758":1,"2760":1,"2762":1,"2765":1,"2766":1,"2767":1,"2768":3,"2769":5,"2770":1,"2771":1,"2772":1,"2776":4,"2778":5,"2779":1,"2780":5,"2784":2,"2786":1,"2787":5,"2788":3,"2828":1,"2844":1,"2845":2,"2853":1,"2862":3,"2875":1,"2877":3,"2879":2,"2882":8,"2883":3,"2884":3,"2886":5,"2888":1,"2892":1,"2894":1,"2895":1,"2899":6,"2900":2,"2901":4,"2902":7,"2903":1,"2907":1,"2908":7,"2909":5,"2910":2,"2911":3,"2912":1,"2913":4,"2914":5,"2915":3,"2917":4,"2919":3,"2922":1,"2923":1,"2926":1,"2927":2,"2928":3,"2929":3,"2930":5,"2931":2,"2932":3,"2933":4,"2936":1,"2937":1,"2942":4}}],["thank",{"2":{"2495":1}}],["thanks",{"2":{"235":1,"340":1,"607":1,"2403":1,"2432":1,"2465":1,"2723":1}}],["thankyou",{"2":{"116":1}}],["than",{"0":{"1352":1},"2":{"24":1,"46":1,"49":1,"50":1,"63":1,"112":1,"124":1,"152":1,"153":1,"166":1,"176":1,"194":1,"201":2,"213":1,"230":1,"234":1,"251":1,"323":1,"334":1,"419":1,"431":4,"472":1,"475":1,"520":3,"522":1,"535":1,"543":1,"549":1,"559":1,"562":1,"568":2,"613":1,"617":1,"624":2,"627":1,"628":1,"653":1,"685":1,"751":1,"1189":2,"1196":1,"1244":1,"1293":1,"1294":1,"1327":1,"1362":1,"1365":1,"1410":1,"1417":1,"1419":1,"1420":1,"1421":3,"1434":1,"1441":1,"1446":1,"1450":1,"1459":1,"1484":1,"1485":1,"1492":1,"1493":1,"1497":2,"1512":2,"1523":1,"1526":1,"1527":2,"1532":1,"1587":2,"1603":1,"1664":1,"1675":1,"1736":1,"1751":1,"1804":1,"1806":1,"1917":1,"1947":2,"1948":1,"1997":1,"2017":1,"2019":1,"2040":1,"2042":1,"2180":1,"2183":1,"2207":1,"2253":1,"2268":1,"2286":1,"2288":1,"2302":4,"2303":1,"2311":1,"2387":2,"2389":1,"2410":2,"2411":1,"2420":1,"2439":1,"2453":1,"2459":1,"2483":1,"2492":1,"2549":1,"2560":2,"2569":1,"2582":1,"2584":1,"2615":1,"2627":1,"2643":1,"2644":1,"2674":1,"2705":1,"2720":1,"2721":2,"2722":1,"2744":1,"2750":1,"2778":1,"2781":1,"2785":1,"2827":1,"2900":1,"2902":4,"2907":2,"2908":1,"2910":2,"2913":1,"2941":1,"2942":1}}],["that",{"0":{"560":1,"561":1,"562":1,"1335":1,"1338":1,"1439":1,"2031":1},"1":{"1339":1},"2":{"0":3,"5":1,"6":2,"9":3,"13":2,"14":1,"19":3,"23":1,"24":1,"28":1,"31":2,"34":1,"36":2,"38":1,"39":3,"45":1,"46":1,"49":2,"50":3,"52":3,"70":1,"73":2,"75":1,"87":1,"90":1,"94":2,"95":1,"98":1,"99":1,"103":1,"110":1,"112":1,"114":3,"123":2,"124":2,"125":1,"126":1,"131":1,"132":2,"149":4,"152":2,"153":1,"154":1,"156":1,"163":1,"166":1,"175":1,"176":5,"179":2,"182":4,"185":1,"191":2,"194":1,"195":1,"199":3,"203":3,"209":1,"218":1,"224":1,"230":1,"233":1,"240":2,"243":1,"255":1,"256":1,"262":1,"263":1,"268":1,"275":1,"276":1,"297":1,"303":1,"306":1,"312":2,"314":1,"315":1,"317":2,"323":1,"327":1,"331":1,"334":1,"356":1,"359":1,"361":1,"363":1,"368":1,"371":1,"373":3,"374":2,"380":2,"387":1,"390":1,"393":5,"397":3,"400":1,"401":2,"402":1,"403":1,"405":3,"406":2,"408":5,"409":1,"410":3,"411":1,"418":1,"424":1,"427":2,"430":1,"441":1,"442":1,"456":1,"457":1,"459":1,"471":1,"472":2,"485":1,"488":1,"491":1,"492":4,"493":1,"494":1,"503":1,"509":1,"512":1,"519":1,"520":5,"521":1,"524":1,"527":1,"532":1,"533":1,"534":2,"538":1,"540":1,"541":2,"546":2,"547":1,"548":3,"549":2,"550":1,"553":1,"554":2,"555":1,"556":1,"557":1,"558":1,"559":1,"563":2,"566":3,"569":2,"576":2,"577":1,"580":1,"581":1,"582":1,"586":5,"587":2,"590":2,"591":2,"594":1,"595":3,"597":1,"608":1,"611":3,"613":6,"616":2,"617":4,"619":2,"621":1,"624":2,"625":1,"627":2,"628":2,"631":2,"632":1,"635":1,"641":2,"643":1,"644":2,"649":2,"654":2,"655":2,"656":1,"658":1,"659":2,"663":4,"666":1,"668":1,"671":1,"673":1,"676":1,"681":1,"682":1,"683":1,"684":2,"685":1,"686":2,"692":2,"693":3,"696":2,"698":2,"716":3,"718":1,"719":1,"720":1,"746":1,"747":1,"750":1,"751":1,"753":2,"756":1,"760":3,"794":1,"1189":2,"1193":1,"1194":1,"1195":1,"1197":1,"1200":3,"1201":3,"1203":1,"1206":1,"1210":1,"1280":1,"1287":1,"1288":1,"1309":1,"1310":1,"1312":1,"1313":1,"1315":1,"1324":1,"1333":3,"1335":1,"1339":2,"1340":1,"1345":1,"1346":1,"1347":1,"1353":2,"1362":3,"1368":1,"1369":1,"1374":1,"1375":3,"1377":1,"1378":4,"1379":2,"1386":1,"1395":3,"1403":1,"1404":1,"1406":3,"1407":2,"1410":6,"1412":4,"1413":11,"1414":1,"1415":1,"1416":4,"1417":1,"1418":1,"1421":5,"1422":3,"1423":1,"1427":1,"1432":2,"1435":6,"1437":1,"1438":2,"1441":8,"1442":4,"1443":14,"1444":1,"1450":5,"1451":1,"1452":2,"1453":1,"1455":1,"1456":1,"1459":1,"1471":1,"1475":1,"1478":2,"1479":4,"1480":1,"1481":1,"1485":1,"1486":4,"1491":2,"1493":1,"1494":1,"1495":2,"1496":1,"1497":4,"1504":1,"1508":1,"1510":1,"1511":1,"1512":1,"1516":1,"1517":1,"1518":1,"1520":1,"1521":2,"1522":2,"1526":1,"1527":3,"1532":2,"1533":1,"1548":1,"1550":1,"1551":1,"1557":1,"1560":1,"1564":1,"1583":5,"1584":1,"1585":3,"1586":2,"1587":2,"1591":1,"1594":3,"1599":1,"1606":2,"1609":1,"1615":1,"1617":1,"1628":1,"1630":1,"1633":1,"1645":1,"1655":3,"1656":2,"1658":3,"1660":2,"1665":2,"1675":4,"1678":1,"1680":1,"1681":1,"1739":1,"1741":1,"1742":1,"1743":1,"1746":1,"1751":5,"1754":1,"1755":1,"1756":2,"1757":3,"1758":4,"1759":1,"1760":1,"1761":2,"1764":1,"1765":2,"1766":1,"1768":1,"1790":1,"1791":5,"1793":1,"1804":2,"1805":1,"1840":3,"1843":2,"1913":1,"1917":1,"1924":1,"1928":2,"1931":1,"1942":1,"1946":2,"1947":1,"1948":3,"1951":1,"1958":1,"1990":1,"1997":2,"1999":2,"2000":2,"2006":1,"2008":2,"2014":3,"2015":1,"2016":4,"2017":2,"2018":1,"2019":2,"2021":1,"2023":3,"2025":1,"2029":1,"2030":4,"2038":1,"2039":2,"2040":1,"2042":2,"2043":1,"2044":4,"2045":3,"2047":1,"2050":1,"2060":3,"2063":4,"2064":2,"2065":1,"2156":1,"2160":1,"2161":3,"2163":1,"2165":2,"2175":1,"2177":1,"2178":1,"2179":2,"2187":1,"2189":1,"2198":1,"2209":1,"2210":1,"2211":1,"2212":1,"2215":1,"2251":1,"2253":1,"2254":1,"2256":1,"2257":1,"2258":3,"2259":1,"2260":1,"2263":1,"2265":5,"2266":1,"2268":3,"2269":1,"2270":1,"2271":8,"2272":1,"2273":2,"2274":1,"2280":1,"2282":1,"2283":3,"2284":1,"2285":1,"2287":1,"2288":3,"2289":1,"2290":1,"2291":3,"2293":1,"2294":1,"2296":1,"2301":2,"2302":6,"2303":6,"2310":12,"2311":1,"2312":5,"2313":1,"2322":1,"2324":1,"2368":1,"2370":1,"2372":1,"2374":2,"2375":1,"2376":3,"2377":1,"2381":1,"2384":1,"2386":2,"2391":2,"2398":2,"2400":2,"2402":1,"2403":3,"2404":1,"2406":1,"2407":3,"2408":1,"2410":9,"2411":3,"2412":1,"2415":1,"2416":1,"2417":1,"2418":1,"2420":2,"2421":6,"2422":1,"2423":3,"2424":3,"2427":4,"2428":1,"2430":2,"2432":2,"2437":1,"2438":6,"2439":2,"2441":1,"2444":1,"2445":2,"2446":4,"2447":1,"2448":1,"2449":2,"2451":1,"2459":13,"2464":1,"2467":3,"2475":1,"2477":1,"2478":1,"2480":1,"2481":1,"2482":1,"2489":1,"2491":1,"2494":1,"2495":1,"2496":1,"2501":2,"2514":2,"2523":1,"2549":1,"2550":1,"2552":1,"2553":1,"2554":2,"2556":1,"2559":1,"2560":1,"2565":1,"2566":1,"2567":1,"2569":1,"2570":2,"2572":4,"2573":1,"2575":1,"2576":1,"2577":2,"2578":6,"2579":2,"2580":1,"2582":3,"2583":1,"2592":4,"2593":1,"2594":1,"2599":1,"2600":2,"2602":1,"2604":1,"2605":1,"2609":3,"2610":1,"2612":4,"2615":1,"2619":1,"2620":1,"2621":3,"2622":3,"2623":1,"2626":2,"2627":9,"2628":2,"2629":1,"2630":2,"2632":4,"2633":9,"2643":2,"2645":1,"2646":2,"2650":1,"2651":1,"2652":1,"2657":1,"2658":1,"2660":2,"2661":1,"2662":1,"2663":2,"2664":3,"2665":1,"2666":1,"2667":2,"2668":1,"2669":2,"2670":1,"2671":2,"2673":2,"2676":1,"2683":1,"2687":1,"2688":2,"2694":1,"2695":1,"2698":1,"2699":1,"2700":1,"2702":4,"2703":1,"2704":1,"2709":2,"2710":2,"2714":3,"2715":1,"2719":1,"2720":1,"2721":6,"2722":5,"2724":6,"2725":1,"2726":1,"2731":1,"2747":6,"2748":1,"2749":2,"2750":5,"2751":1,"2758":1,"2760":1,"2765":1,"2769":1,"2773":1,"2774":3,"2775":1,"2776":1,"2778":2,"2780":3,"2781":2,"2784":1,"2787":4,"2788":3,"2789":1,"2790":1,"2796":1,"2798":1,"2800":2,"2801":1,"2803":1,"2807":1,"2808":1,"2810":2,"2813":1,"2814":1,"2815":1,"2818":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":2,"2825":1,"2826":2,"2827":1,"2833":2,"2836":1,"2837":1,"2838":1,"2840":1,"2845":1,"2862":1,"2864":1,"2871":1,"2879":3,"2882":4,"2883":4,"2884":1,"2885":2,"2887":1,"2894":2,"2895":2,"2898":1,"2899":1,"2901":12,"2902":3,"2903":1,"2907":1,"2908":2,"2909":1,"2910":2,"2911":1,"2914":3,"2915":1,"2917":4,"2920":3,"2923":1,"2924":1,"2926":1,"2927":3,"2929":4,"2930":4,"2932":2,"2933":1,"2935":1,"2936":3,"2937":9,"2938":1,"2940":5,"2942":3}}],["theory",{"2":{"2674":1}}],["theories",{"2":{"2289":1}}],["thekey",{"2":{"207":4,"211":1}}],["thermal",{"2":{"191":1}}],["thereafter",{"2":{"1930":1}}],["thereby",{"2":{"69":1}}],["therefore",{"2":{"28":1,"437":1,"692":2,"760":2,"763":1,"765":1,"1190":1,"1193":1,"1196":1,"1202":1,"1675":1,"1947":1,"1953":1,"1986":1,"2383":1,"2936":1}}],["there",{"0":{"603":1,"1340":1,"1493":1,"2921":1},"2":{"28":1,"99":1,"123":1,"131":1,"152":1,"154":1,"163":1,"166":1,"175":1,"189":1,"198":1,"201":1,"213":1,"224":1,"233":1,"238":1,"268":1,"276":1,"279":1,"288":1,"342":1,"347":1,"362":1,"371":1,"393":1,"397":1,"405":1,"409":1,"423":1,"471":1,"485":1,"489":1,"492":1,"506":1,"521":1,"552":1,"553":1,"562":1,"566":1,"579":1,"582":1,"591":1,"594":1,"595":1,"605":1,"617":3,"631":1,"649":1,"655":1,"658":1,"666":1,"682":1,"687":1,"711":1,"712":1,"716":1,"746":1,"747":3,"749":1,"752":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1203":1,"1216":1,"1279":1,"1293":1,"1294":1,"1308":1,"1333":3,"1334":3,"1343":1,"1347":1,"1348":1,"1362":2,"1375":2,"1392":1,"1406":2,"1412":2,"1422":2,"1448":1,"1452":1,"1455":1,"1466":1,"1475":1,"1478":1,"1479":1,"1481":1,"1492":2,"1496":1,"1497":2,"1504":2,"1511":1,"1512":1,"1516":2,"1518":1,"1523":1,"1532":1,"1587":1,"1606":1,"1609":1,"1614":1,"1615":1,"1617":1,"1627":1,"1641":1,"1656":2,"1658":1,"1665":1,"1670":1,"1675":1,"1679":1,"1757":1,"1764":1,"1790":1,"1849":1,"1913":1,"1917":1,"1931":2,"1938":1,"1946":1,"1948":1,"1958":1,"1979":1,"1986":1,"1996":1,"1997":1,"2000":1,"2015":1,"2018":1,"2033":1,"2038":1,"2045":1,"2072":1,"2170":1,"2179":1,"2183":1,"2198":1,"2210":1,"2211":1,"2213":1,"2254":1,"2263":1,"2265":1,"2268":1,"2269":1,"2271":1,"2273":1,"2277":1,"2283":1,"2285":1,"2288":1,"2293":1,"2302":1,"2303":1,"2309":1,"2310":1,"2318":2,"2319":1,"2374":1,"2375":1,"2400":1,"2403":1,"2409":1,"2411":1,"2415":1,"2417":1,"2418":1,"2420":1,"2421":1,"2424":1,"2426":1,"2428":1,"2435":1,"2451":1,"2474":1,"2475":1,"2492":1,"2494":1,"2550":1,"2568":1,"2569":1,"2572":2,"2573":2,"2574":1,"2578":1,"2579":1,"2583":1,"2602":1,"2607":1,"2610":1,"2612":2,"2645":5,"2650":1,"2652":1,"2655":1,"2661":1,"2662":2,"2664":1,"2673":1,"2680":1,"2703":1,"2709":1,"2713":1,"2715":1,"2718":1,"2719":1,"2722":1,"2723":1,"2743":1,"2746":1,"2749":1,"2750":1,"2773":1,"2774":1,"2775":2,"2778":1,"2780":1,"2781":1,"2787":1,"2879":1,"2880":1,"2881":1,"2882":2,"2883":1,"2885":1,"2888":3,"2889":1,"2890":3,"2895":1,"2921":2,"2929":1,"2934":3,"2936":1,"2937":2,"2939":1,"2940":1}}],["thedogkeyboard",{"2":{"143":2,"211":1}}],["they",{"2":{"124":1,"125":2,"185":2,"188":1,"196":1,"198":1,"203":1,"243":1,"265":1,"273":2,"276":1,"283":3,"331":1,"360":1,"364":2,"390":1,"408":1,"419":1,"470":1,"473":1,"481":1,"487":1,"489":1,"492":1,"503":1,"520":1,"522":1,"533":1,"573":1,"576":1,"586":1,"595":1,"616":1,"631":1,"638":1,"659":1,"690":1,"699":1,"717":1,"760":1,"1245":1,"1348":1,"1375":2,"1379":1,"1413":1,"1421":1,"1452":2,"1508":1,"1526":2,"1527":4,"1548":1,"1591":1,"1605":1,"1606":1,"1610":1,"1628":1,"1655":2,"1656":1,"1659":1,"1757":1,"1758":1,"1840":2,"1958":2,"1990":2,"2014":1,"2017":1,"2030":1,"2037":1,"2049":1,"2060":2,"2163":1,"2181":1,"2191":1,"2254":1,"2258":1,"2271":1,"2293":2,"2301":2,"2303":2,"2310":1,"2313":1,"2324":1,"2367":1,"2388":1,"2406":1,"2422":2,"2427":1,"2430":1,"2439":1,"2445":1,"2459":1,"2492":1,"2495":1,"2551":1,"2555":1,"2556":1,"2563":1,"2566":2,"2567":1,"2582":1,"2583":2,"2587":1,"2674":1,"2677":2,"2684":1,"2704":1,"2710":1,"2713":1,"2719":2,"2721":4,"2722":2,"2734":1,"2735":1,"2743":1,"2744":1,"2749":4,"2750":2,"2776":1,"2787":1,"2789":1,"2793":1,"2877":1,"2879":1,"2882":2,"2898":1,"2901":1,"2917":1,"2929":1,"2938":1}}],["the60",{"2":{"102":3}}],["then",{"0":{"2308":1},"2":{"49":1,"70":1,"120":2,"152":1,"235":1,"289":1,"347":1,"360":1,"377":1,"387":1,"408":1,"410":1,"418":1,"489":1,"557":1,"562":1,"563":1,"567":1,"584":1,"591":1,"597":2,"598":1,"616":1,"645":1,"654":1,"658":1,"664":1,"670":1,"685":1,"688":1,"698":1,"700":1,"717":1,"746":1,"760":1,"762":1,"765":1,"1243":1,"1245":2,"1264":1,"1281":1,"1294":1,"1315":1,"1329":1,"1333":1,"1335":2,"1336":1,"1345":1,"1362":1,"1374":2,"1375":1,"1404":1,"1406":1,"1407":1,"1412":1,"1413":2,"1416":1,"1435":1,"1441":2,"1442":2,"1443":1,"1450":1,"1452":2,"1459":1,"1461":1,"1466":1,"1476":1,"1479":1,"1486":2,"1492":5,"1493":1,"1494":1,"1497":2,"1519":1,"1521":1,"1533":2,"1588":3,"1592":1,"1596":1,"1608":1,"1612":1,"1616":2,"1618":1,"1621":1,"1628":1,"1642":1,"1655":1,"1660":1,"1661":1,"1672":2,"1675":3,"1732":1,"1733":1,"1738":1,"1751":1,"1754":2,"1755":3,"1756":3,"1757":1,"1766":1,"1800":1,"1843":9,"1845":1,"1849":1,"1933":1,"1939":1,"1952":1,"1956":2,"1997":1,"2000":1,"2016":1,"2023":1,"2030":2,"2031":1,"2051":1,"2052":2,"2063":15,"2064":1,"2068":1,"2072":1,"2074":1,"2156":1,"2157":1,"2164":1,"2167":1,"2179":1,"2210":1,"2215":1,"2219":2,"2253":1,"2261":1,"2262":1,"2264":1,"2265":1,"2270":2,"2271":1,"2277":1,"2293":2,"2302":2,"2303":3,"2305":1,"2308":1,"2310":2,"2312":3,"2322":2,"2323":2,"2324":3,"2337":4,"2378":1,"2380":1,"2385":1,"2386":1,"2387":1,"2388":1,"2391":1,"2392":1,"2403":1,"2409":2,"2410":2,"2411":1,"2420":2,"2425":1,"2435":1,"2438":1,"2459":1,"2467":1,"2476":1,"2497":1,"2501":1,"2552":1,"2567":2,"2609":1,"2613":1,"2625":1,"2626":1,"2627":4,"2628":1,"2630":1,"2632":1,"2633":2,"2634":1,"2643":2,"2656":1,"2662":3,"2667":1,"2677":1,"2697":1,"2721":2,"2749":11,"2750":3,"2776":2,"2783":2,"2784":1,"2793":1,"2827":1,"2882":1,"2888":1,"2899":1,"2901":3,"2902":2,"2908":3,"2909":2,"2910":2,"2913":1,"2914":2,"2917":1,"2920":1,"2927":1,"2930":1,"2934":1,"2937":1,"2941":2,"2942":3}}],["themself",{"2":{"408":1}}],["themselves",{"2":{"233":1,"317":1,"408":1,"586":1,"1614":1,"1616":1,"2583":1,"2696":1,"2787":1}}],["theme",{"2":{"233":1}}],["them",{"2":{"2":1,"154":1,"164":1,"186":1,"202":1,"204":1,"221":1,"234":2,"272":1,"273":1,"284":1,"360":1,"390":1,"433":2,"520":2,"522":2,"536":1,"538":1,"546":1,"559":1,"584":1,"594":1,"603":1,"606":1,"611":1,"627":2,"677":1,"681":1,"718":1,"1244":1,"1366":1,"1374":1,"1393":1,"1407":1,"1419":1,"1420":1,"1421":1,"1422":1,"1434":1,"1441":1,"1442":1,"1443":1,"1452":1,"1461":1,"1466":1,"1479":1,"1497":1,"1547":1,"1562":1,"1588":1,"1591":1,"1600":1,"1606":1,"1607":1,"1655":1,"1670":1,"1798":1,"1917":2,"1929":1,"1955":1,"1958":1,"1990":1,"2006":1,"2035":1,"2050":1,"2162":1,"2170":1,"2178":2,"2189":2,"2252":2,"2253":1,"2254":1,"2258":1,"2291":1,"2308":1,"2312":1,"2318":1,"2323":1,"2375":3,"2403":1,"2411":2,"2419":1,"2420":1,"2421":1,"2422":1,"2428":1,"2432":1,"2443":2,"2446":1,"2447":1,"2448":1,"2476":1,"2491":1,"2496":1,"2513":1,"2551":1,"2559":1,"2560":1,"2567":2,"2568":1,"2574":1,"2579":1,"2582":2,"2589":1,"2601":1,"2603":1,"2605":2,"2620":1,"2625":1,"2627":3,"2630":1,"2633":2,"2663":1,"2673":1,"2684":2,"2695":1,"2713":1,"2722":1,"2750":1,"2793":1,"2877":1,"2882":1,"2887":1,"2895":1,"2898":1,"2908":1,"2921":1,"2934":1,"2937":1,"2942":1}}],["the",{"0":{"23":1,"42":1,"56":1,"371":1,"379":1,"380":1,"381":1,"390":1,"391":1,"392":1,"395":1,"405":1,"406":1,"497":1,"558":1,"569":1,"604":1,"615":1,"619":1,"628":1,"666":1,"1200":1,"1201":1,"1202":1,"1297":1,"1334":1,"1343":1,"1347":1,"1624":3,"1625":2,"1758":1,"1764":1,"1799":1,"1980":1,"2031":1,"2037":1,"2050":1,"2051":1,"2206":2,"2243":1,"2248":1,"2290":1,"2293":1,"2409":1,"2415":1,"2416":1,"2418":1,"2421":1,"2422":1,"2423":1,"2424":1,"2426":1,"2463":1,"2464":1,"2465":1,"2466":1,"2495":1,"2496":1,"2572":1,"2579":1,"2588":1,"2607":1,"2609":1,"2629":1,"2653":1,"2655":1,"2730":1,"2757":1,"2780":1,"2781":1,"2783":1,"2787":1,"2788":1,"2789":1,"2843":1,"2881":1,"2920":2,"2928":1,"2938":1,"2939":1},"1":{"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"396":1,"559":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"570":1,"571":1,"572":1,"573":1,"629":1,"630":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2417":1,"2419":1,"2420":1,"2421":1,"2422":1,"2424":1,"2496":1,"2573":1,"2574":1,"2731":1,"2732":1,"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"0":1,"1":1,"2":1,"3":2,"4":2,"5":3,"6":3,"7":3,"8":1,"10":3,"11":1,"12":1,"13":3,"14":5,"15":2,"16":3,"18":1,"19":1,"21":4,"22":3,"23":2,"24":2,"25":4,"27":2,"28":5,"30":4,"31":13,"32":1,"33":3,"34":12,"35":1,"36":7,"37":1,"43":3,"45":7,"46":2,"49":24,"50":18,"51":1,"55":5,"56":3,"58":1,"60":1,"62":3,"65":3,"67":4,"69":2,"70":17,"73":3,"74":3,"76":1,"83":3,"86":5,"87":4,"88":2,"90":4,"92":1,"93":2,"94":2,"99":4,"100":1,"102":1,"103":6,"104":2,"105":3,"107":4,"110":1,"112":1,"113":3,"114":13,"116":3,"118":5,"119":8,"120":3,"122":1,"123":3,"124":8,"125":8,"126":5,"127":2,"128":2,"130":1,"131":4,"132":2,"134":5,"137":1,"138":1,"140":1,"142":1,"143":3,"146":1,"149":10,"152":5,"153":4,"154":1,"156":6,"157":6,"158":4,"159":1,"160":6,"163":6,"164":4,"166":4,"167":2,"168":1,"169":3,"172":2,"173":4,"174":5,"175":6,"176":12,"181":1,"182":13,"184":3,"185":9,"186":2,"187":1,"188":1,"189":4,"191":10,"194":23,"195":6,"196":6,"197":2,"198":3,"199":7,"201":8,"202":7,"203":6,"204":3,"206":5,"209":5,"210":3,"211":11,"213":6,"215":1,"218":3,"219":1,"220":2,"221":2,"222":9,"224":3,"228":6,"229":2,"230":4,"231":1,"232":4,"233":5,"234":5,"235":3,"236":3,"238":1,"240":9,"243":4,"244":1,"245":4,"246":3,"247":1,"248":3,"249":4,"251":5,"254":6,"255":16,"256":3,"257":1,"258":1,"259":4,"262":6,"263":7,"264":1,"265":14,"266":4,"268":3,"271":6,"272":4,"273":7,"274":1,"275":4,"276":4,"277":2,"279":4,"282":1,"283":5,"284":4,"285":2,"288":6,"289":5,"292":1,"293":5,"297":6,"298":2,"301":1,"302":2,"303":5,"304":1,"305":5,"306":2,"307":8,"308":2,"312":11,"313":1,"314":5,"315":2,"316":2,"320":12,"323":6,"326":1,"328":2,"331":5,"332":1,"333":1,"334":2,"335":1,"338":16,"340":1,"342":1,"347":4,"348":1,"350":1,"358":1,"359":2,"360":6,"361":7,"362":1,"363":5,"364":3,"365":1,"366":1,"367":1,"368":3,"369":3,"370":3,"371":8,"372":6,"373":8,"374":2,"375":1,"376":2,"377":2,"378":2,"379":3,"380":4,"381":2,"383":2,"386":3,"387":24,"388":2,"390":11,"391":10,"392":6,"393":4,"395":1,"397":20,"398":1,"402":3,"403":4,"405":8,"406":13,"407":1,"408":6,"409":1,"410":4,"411":2,"412":1,"414":2,"415":3,"416":1,"417":2,"418":1,"419":3,"420":2,"423":3,"424":5,"427":8,"428":9,"429":2,"430":2,"431":12,"432":1,"434":2,"435":3,"437":1,"439":1,"440":1,"441":2,"442":2,"444":2,"445":2,"446":2,"447":2,"448":1,"450":3,"451":3,"452":1,"453":3,"456":1,"457":1,"458":5,"459":4,"460":2,"461":2,"463":1,"464":2,"465":2,"466":2,"467":3,"468":2,"470":2,"471":1,"472":1,"473":4,"474":2,"475":1,"480":1,"482":3,"483":5,"485":5,"486":1,"487":23,"488":3,"489":3,"490":7,"491":2,"492":14,"493":6,"494":5,"495":1,"496":1,"497":3,"498":2,"499":1,"502":1,"503":1,"505":2,"507":2,"508":3,"509":3,"511":2,"517":2,"519":2,"520":32,"521":7,"522":2,"524":4,"525":1,"529":9,"530":1,"531":1,"532":2,"533":2,"534":1,"535":2,"537":3,"538":1,"539":1,"541":1,"543":1,"546":1,"547":1,"548":3,"549":1,"550":6,"551":1,"552":3,"553":9,"554":2,"555":1,"556":1,"557":1,"558":3,"559":31,"560":1,"561":3,"562":25,"563":14,"565":1,"566":17,"567":11,"568":35,"569":2,"570":11,"571":1,"572":15,"573":9,"574":4,"576":3,"577":4,"578":5,"579":11,"580":1,"581":1,"582":2,"583":2,"584":5,"586":19,"587":13,"589":2,"590":5,"591":9,"592":2,"593":1,"594":6,"595":3,"596":1,"597":6,"598":5,"599":3,"602":3,"603":2,"605":1,"607":3,"608":1,"609":1,"611":30,"613":13,"614":6,"615":2,"616":8,"617":11,"618":1,"619":4,"620":3,"621":1,"622":2,"623":8,"625":11,"626":3,"627":2,"628":7,"629":2,"630":3,"631":8,"632":3,"633":2,"635":3,"637":13,"638":2,"639":3,"641":2,"643":2,"644":5,"645":6,"646":2,"649":15,"653":1,"654":18,"655":18,"656":3,"657":2,"658":3,"659":1,"663":4,"664":5,"666":1,"667":5,"668":1,"669":1,"670":1,"671":5,"672":1,"673":8,"674":11,"676":3,"677":2,"681":1,"682":10,"683":27,"684":13,"685":18,"686":7,"687":2,"688":2,"690":2,"692":14,"693":5,"695":8,"696":12,"698":12,"699":1,"700":6,"701":11,"703":1,"704":2,"705":5,"706":1,"707":3,"708":2,"709":1,"710":1,"711":7,"712":1,"713":5,"714":8,"715":5,"716":9,"717":11,"718":15,"719":6,"720":2,"722":2,"724":11,"725":1,"727":4,"728":11,"729":3,"730":2,"731":4,"733":1,"734":8,"735":1,"736":3,"737":2,"738":6,"739":1,"740":3,"741":2,"742":5,"743":10,"745":3,"746":22,"747":10,"748":3,"749":5,"750":7,"751":29,"752":17,"753":13,"754":7,"755":4,"756":18,"758":3,"759":4,"760":11,"761":1,"762":4,"763":12,"764":6,"765":18,"766":1,"767":1,"769":3,"770":1,"771":7,"772":1,"773":1,"774":7,"775":1,"776":1,"777":6,"778":1,"779":1,"780":9,"781":1,"782":1,"783":8,"784":1,"785":1,"786":8,"787":1,"788":1,"789":7,"790":1,"791":1,"792":7,"793":1,"794":2,"795":4,"796":1,"798":4,"799":5,"800":1,"801":2,"802":7,"804":1,"805":8,"806":1,"807":2,"808":2,"809":2,"810":6,"811":1,"812":3,"813":2,"814":4,"815":1,"816":1,"817":2,"818":6,"819":2,"820":4,"821":2,"822":2,"824":4,"825":9,"826":5,"827":2,"828":7,"830":1,"831":10,"832":1,"833":1,"834":2,"835":3,"836":2,"837":6,"838":1,"839":3,"840":2,"841":4,"842":1,"843":1,"844":2,"845":6,"846":2,"847":4,"848":2,"849":1,"850":2,"851":1,"853":4,"854":14,"855":5,"856":2,"857":6,"858":4,"859":2,"860":10,"862":1,"863":10,"864":1,"865":1,"866":2,"867":3,"868":2,"869":6,"870":1,"871":3,"872":2,"873":4,"874":1,"875":1,"876":2,"877":9,"878":2,"879":5,"880":2,"881":1,"882":2,"883":1,"885":4,"886":9,"887":5,"888":3,"889":2,"890":10,"892":1,"893":10,"894":1,"895":1,"896":2,"897":3,"898":2,"899":2,"900":2,"901":6,"902":1,"903":3,"904":2,"905":4,"906":1,"907":1,"908":2,"909":6,"910":2,"911":4,"912":2,"913":1,"914":2,"915":1,"917":4,"918":18,"919":5,"920":5,"921":2,"922":6,"923":5,"924":2,"925":10,"927":1,"928":10,"929":1,"930":1,"931":2,"932":3,"933":2,"934":2,"935":2,"936":6,"937":1,"938":3,"939":2,"940":4,"941":1,"942":1,"943":2,"944":6,"945":2,"946":4,"947":2,"948":1,"949":2,"950":1,"952":4,"953":14,"954":5,"955":2,"956":6,"957":5,"958":2,"959":10,"961":1,"962":10,"963":1,"964":1,"965":2,"966":3,"967":2,"968":2,"969":2,"970":6,"971":1,"972":3,"973":2,"974":4,"975":1,"976":1,"977":2,"978":6,"979":2,"980":4,"981":2,"982":1,"983":2,"984":1,"986":4,"987":14,"988":5,"989":2,"990":6,"991":5,"992":2,"993":10,"995":1,"996":10,"997":1,"998":1,"999":2,"1000":3,"1001":2,"1002":2,"1003":2,"1004":6,"1005":1,"1006":3,"1007":2,"1008":4,"1009":1,"1010":1,"1011":2,"1012":6,"1013":2,"1014":4,"1015":2,"1016":1,"1017":2,"1018":1,"1020":4,"1021":16,"1022":5,"1023":2,"1024":6,"1025":5,"1026":2,"1027":10,"1029":1,"1030":10,"1031":1,"1032":1,"1033":2,"1034":3,"1035":2,"1036":2,"1037":2,"1038":6,"1039":1,"1040":3,"1041":2,"1042":4,"1043":1,"1044":1,"1045":2,"1046":6,"1047":2,"1048":4,"1049":2,"1050":1,"1051":2,"1052":1,"1054":4,"1055":16,"1056":5,"1057":2,"1058":6,"1059":5,"1060":2,"1061":10,"1063":1,"1064":10,"1065":1,"1066":1,"1067":2,"1068":3,"1069":2,"1070":2,"1071":2,"1072":6,"1073":1,"1074":3,"1075":2,"1076":4,"1077":1,"1078":1,"1079":2,"1080":9,"1081":2,"1082":5,"1083":2,"1084":1,"1085":2,"1086":1,"1088":4,"1089":18,"1090":5,"1091":5,"1092":6,"1093":5,"1094":2,"1095":10,"1097":1,"1098":10,"1099":1,"1100":1,"1101":2,"1102":3,"1103":2,"1104":2,"1105":2,"1106":6,"1107":1,"1108":3,"1109":2,"1110":4,"1111":1,"1112":1,"1113":2,"1114":9,"1115":2,"1116":5,"1117":2,"1118":1,"1119":2,"1120":1,"1122":4,"1123":18,"1124":5,"1125":5,"1126":6,"1127":5,"1128":2,"1129":10,"1131":1,"1132":10,"1133":1,"1134":1,"1135":2,"1136":3,"1137":2,"1138":2,"1139":2,"1140":6,"1141":1,"1142":3,"1143":2,"1144":4,"1145":1,"1146":1,"1147":2,"1148":9,"1149":2,"1150":5,"1151":2,"1152":1,"1153":2,"1154":1,"1156":4,"1157":16,"1158":5,"1159":2,"1160":6,"1161":5,"1162":2,"1163":10,"1165":1,"1166":10,"1167":1,"1168":2,"1169":2,"1170":3,"1171":2,"1172":2,"1173":2,"1174":6,"1175":1,"1176":3,"1177":2,"1178":4,"1179":1,"1180":1,"1181":2,"1182":9,"1183":2,"1184":5,"1185":2,"1186":1,"1187":2,"1188":1,"1189":4,"1190":5,"1191":3,"1192":4,"1193":1,"1194":8,"1195":10,"1196":3,"1197":23,"1198":10,"1200":16,"1201":17,"1202":13,"1204":4,"1205":1,"1206":4,"1210":3,"1212":4,"1213":9,"1214":5,"1215":2,"1216":10,"1218":1,"1219":10,"1220":1,"1221":1,"1222":2,"1223":3,"1224":2,"1225":2,"1226":2,"1227":6,"1228":1,"1229":3,"1230":2,"1231":4,"1232":1,"1233":1,"1234":2,"1235":6,"1236":2,"1237":4,"1238":2,"1239":1,"1240":2,"1241":1,"1242":1,"1243":4,"1244":4,"1245":14,"1247":2,"1249":11,"1250":3,"1251":1,"1252":1,"1253":1,"1254":1,"1255":3,"1256":1,"1257":3,"1258":1,"1259":1,"1260":2,"1261":1,"1262":3,"1263":2,"1264":4,"1265":3,"1266":12,"1268":2,"1269":2,"1271":1,"1273":3,"1275":3,"1277":2,"1278":1,"1280":4,"1281":6,"1282":13,"1283":7,"1284":8,"1285":7,"1287":4,"1288":6,"1289":6,"1290":2,"1291":6,"1292":3,"1293":3,"1294":9,"1295":5,"1296":10,"1297":5,"1298":2,"1299":3,"1300":11,"1302":1,"1303":2,"1304":5,"1305":1,"1306":3,"1307":2,"1308":3,"1309":4,"1310":5,"1311":1,"1312":3,"1313":3,"1315":6,"1316":1,"1317":3,"1319":5,"1322":1,"1324":1,"1326":2,"1327":4,"1328":3,"1329":4,"1332":1,"1333":2,"1334":1,"1335":3,"1336":1,"1338":1,"1340":5,"1343":2,"1345":15,"1346":3,"1347":3,"1348":4,"1349":4,"1350":1,"1352":1,"1353":8,"1356":1,"1357":1,"1358":1,"1359":9,"1361":1,"1362":14,"1363":1,"1364":1,"1367":1,"1369":8,"1373":1,"1374":5,"1375":24,"1376":2,"1377":7,"1378":23,"1379":1,"1385":5,"1386":1,"1387":3,"1388":1,"1389":4,"1390":1,"1392":2,"1393":3,"1394":1,"1395":5,"1396":1,"1397":1,"1398":1,"1400":3,"1401":1,"1402":1,"1403":1,"1404":8,"1406":10,"1407":17,"1409":1,"1410":9,"1411":2,"1412":9,"1413":39,"1414":5,"1415":3,"1416":16,"1417":13,"1418":1,"1419":6,"1420":2,"1421":10,"1422":19,"1423":1,"1424":4,"1425":9,"1426":4,"1427":13,"1428":8,"1429":1,"1430":1,"1432":3,"1433":3,"1434":8,"1435":10,"1436":8,"1437":7,"1438":9,"1440":1,"1441":10,"1442":7,"1443":20,"1445":1,"1446":1,"1448":3,"1450":19,"1451":7,"1452":8,"1454":1,"1455":3,"1456":1,"1457":2,"1458":3,"1459":4,"1460":1,"1461":2,"1464":1,"1466":6,"1468":3,"1469":5,"1470":1,"1471":5,"1472":2,"1473":1,"1474":5,"1475":4,"1476":4,"1477":4,"1478":6,"1479":13,"1480":12,"1481":5,"1482":5,"1483":3,"1484":9,"1485":1,"1486":16,"1487":18,"1489":5,"1491":3,"1492":11,"1493":6,"1494":1,"1495":2,"1496":2,"1497":12,"1498":1,"1499":1,"1503":1,"1504":3,"1508":1,"1511":10,"1512":9,"1513":1,"1515":6,"1516":9,"1517":3,"1519":11,"1520":2,"1521":13,"1522":4,"1523":7,"1524":4,"1526":4,"1527":6,"1528":10,"1529":8,"1531":4,"1532":42,"1533":14,"1534":1,"1535":1,"1536":1,"1537":2,"1538":1,"1541":2,"1544":2,"1546":2,"1547":6,"1548":1,"1549":5,"1550":16,"1551":9,"1552":11,"1554":3,"1555":4,"1556":2,"1557":4,"1559":4,"1560":7,"1562":9,"1563":5,"1564":11,"1566":1,"1567":1,"1568":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":1,"1581":1,"1583":11,"1584":9,"1585":5,"1586":3,"1587":12,"1588":7,"1589":4,"1591":3,"1592":2,"1594":7,"1595":1,"1596":5,"1597":2,"1598":2,"1599":4,"1600":3,"1602":4,"1603":10,"1604":5,"1605":3,"1606":22,"1607":3,"1608":6,"1609":5,"1610":3,"1611":5,"1612":1,"1613":5,"1614":17,"1615":9,"1616":14,"1617":2,"1618":6,"1619":27,"1620":6,"1621":2,"1622":1,"1624":5,"1625":3,"1626":1,"1627":4,"1628":11,"1630":15,"1631":2,"1632":1,"1633":11,"1634":9,"1635":1,"1636":1,"1637":1,"1638":2,"1639":3,"1640":1,"1641":11,"1642":8,"1644":2,"1645":13,"1646":2,"1647":2,"1648":2,"1649":2,"1650":2,"1651":2,"1652":2,"1653":3,"1654":4,"1655":19,"1656":18,"1657":6,"1658":2,"1659":3,"1660":11,"1661":8,"1662":7,"1663":4,"1664":4,"1665":1,"1666":4,"1667":1,"1669":2,"1672":7,"1675":41,"1676":2,"1677":1,"1678":2,"1679":8,"1680":1,"1681":3,"1682":1,"1683":3,"1684":6,"1685":2,"1686":2,"1687":2,"1688":2,"1689":2,"1692":1,"1693":13,"1695":1,"1696":6,"1698":2,"1699":2,"1700":1,"1701":2,"1702":2,"1703":2,"1704":1,"1705":3,"1706":2,"1707":9,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1714":8,"1716":8,"1717":1,"1718":1,"1719":1,"1720":3,"1721":1,"1722":3,"1723":5,"1724":6,"1725":1,"1726":4,"1727":1,"1728":1,"1729":1,"1730":3,"1731":1,"1732":1,"1733":1,"1734":2,"1735":5,"1736":5,"1738":1,"1739":2,"1741":1,"1744":1,"1746":4,"1747":2,"1749":4,"1751":27,"1752":10,"1753":1,"1754":17,"1755":12,"1756":13,"1757":3,"1758":9,"1759":9,"1760":3,"1761":15,"1762":1,"1763":2,"1764":4,"1765":9,"1766":3,"1767":4,"1768":2,"1769":6,"1770":16,"1771":1,"1774":2,"1775":5,"1777":5,"1778":2,"1779":2,"1780":2,"1781":2,"1782":2,"1783":2,"1784":1,"1785":1,"1786":2,"1787":3,"1788":2,"1789":1,"1790":6,"1791":15,"1792":6,"1793":6,"1795":6,"1796":4,"1797":2,"1798":5,"1799":1,"1800":2,"1801":7,"1803":4,"1804":3,"1805":17,"1806":5,"1807":3,"1808":1,"1810":1,"1811":1,"1812":1,"1813":2,"1814":1,"1815":2,"1816":1,"1817":1,"1818":4,"1819":1,"1820":2,"1821":3,"1822":1,"1823":2,"1824":1,"1825":1,"1826":2,"1827":2,"1828":1,"1829":2,"1830":3,"1831":1,"1832":2,"1833":4,"1834":1,"1835":2,"1836":5,"1837":1,"1838":3,"1839":5,"1840":34,"1841":3,"1842":4,"1843":5,"1844":10,"1845":6,"1846":13,"1847":2,"1849":4,"1857":1,"1859":3,"1860":2,"1861":3,"1862":1,"1863":1,"1864":1,"1865":1,"1866":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":2,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":1,"1899":1,"1900":1,"1901":1,"1902":1,"1904":1,"1905":1,"1906":1,"1907":4,"1909":1,"1910":4,"1911":1,"1913":2,"1915":1,"1916":1,"1917":4,"1920":3,"1924":1,"1926":1,"1927":1,"1928":10,"1929":12,"1930":23,"1931":13,"1932":7,"1933":11,"1934":4,"1938":2,"1939":5,"1940":5,"1941":18,"1942":3,"1943":17,"1944":2,"1945":14,"1946":28,"1947":18,"1948":84,"1950":2,"1951":3,"1952":4,"1953":5,"1954":5,"1955":7,"1956":1,"1958":6,"1959":1,"1962":1,"1963":1,"1964":2,"1965":1,"1966":2,"1967":2,"1968":2,"1969":2,"1970":2,"1971":1,"1972":2,"1973":1,"1974":2,"1975":1,"1976":1,"1977":1,"1979":3,"1980":3,"1983":1,"1984":3,"1985":1,"1986":9,"1988":9,"1989":4,"1990":13,"1991":1,"1992":2,"1993":6,"1994":2,"1995":3,"1996":4,"1997":1,"1998":12,"1999":11,"2000":14,"2001":3,"2002":8,"2005":4,"2006":25,"2007":8,"2008":2,"2009":4,"2010":9,"2011":7,"2012":12,"2013":12,"2014":26,"2015":4,"2016":13,"2017":11,"2018":12,"2019":13,"2020":11,"2021":23,"2023":4,"2024":7,"2025":15,"2026":3,"2027":2,"2028":2,"2029":3,"2030":16,"2031":2,"2032":4,"2033":1,"2035":1,"2037":3,"2038":1,"2039":19,"2040":1,"2042":8,"2043":4,"2044":4,"2045":7,"2046":3,"2047":5,"2048":1,"2049":7,"2050":23,"2051":6,"2052":15,"2054":1,"2055":3,"2057":3,"2058":3,"2059":5,"2060":34,"2061":4,"2062":6,"2063":9,"2064":17,"2065":3,"2066":10,"2067":4,"2068":6,"2069":19,"2070":2,"2072":5,"2074":6,"2075":1,"2083":1,"2085":3,"2086":4,"2087":3,"2088":3,"2089":1,"2090":1,"2091":1,"2092":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":2,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":1,"2123":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":1,"2137":1,"2138":3,"2139":1,"2140":3,"2141":1,"2142":1,"2143":1,"2144":1,"2145":1,"2146":1,"2148":1,"2149":1,"2150":1,"2151":4,"2153":1,"2154":4,"2155":1,"2156":10,"2157":2,"2158":2,"2159":10,"2160":17,"2161":4,"2162":7,"2163":1,"2164":5,"2165":3,"2166":3,"2167":8,"2168":5,"2169":5,"2170":1,"2171":1,"2172":2,"2173":5,"2174":1,"2175":1,"2176":2,"2177":5,"2178":12,"2179":20,"2180":10,"2181":3,"2182":20,"2183":3,"2184":1,"2185":21,"2186":1,"2187":9,"2188":1,"2189":15,"2190":4,"2191":12,"2192":1,"2193":1,"2194":3,"2198":18,"2199":15,"2201":14,"2202":6,"2205":4,"2206":10,"2207":8,"2208":4,"2209":6,"2210":4,"2211":3,"2212":7,"2213":1,"2214":6,"2215":10,"2216":1,"2218":2,"2219":3,"2222":1,"2224":3,"2226":1,"2228":3,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2242":2,"2243":2,"2244":3,"2245":6,"2246":12,"2247":26,"2248":3,"2249":4,"2251":3,"2252":20,"2253":13,"2254":6,"2255":1,"2257":1,"2258":9,"2259":4,"2260":9,"2261":2,"2262":13,"2263":1,"2264":7,"2265":13,"2266":24,"2267":8,"2268":18,"2269":45,"2270":11,"2271":31,"2272":1,"2273":15,"2274":4,"2277":5,"2278":3,"2279":18,"2280":3,"2281":19,"2282":10,"2283":69,"2284":3,"2285":3,"2286":7,"2287":6,"2288":23,"2289":8,"2290":11,"2291":18,"2292":1,"2293":22,"2294":4,"2295":3,"2296":5,"2298":6,"2301":6,"2302":46,"2303":31,"2305":1,"2306":2,"2308":4,"2309":2,"2310":25,"2311":8,"2312":30,"2313":7,"2314":6,"2315":9,"2316":9,"2318":3,"2319":2,"2320":9,"2321":13,"2322":12,"2323":17,"2324":15,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":3,"2338":3,"2339":3,"2340":1,"2341":2,"2343":1,"2344":3,"2345":2,"2346":1,"2347":3,"2348":2,"2350":3,"2351":2,"2352":1,"2355":2,"2356":1,"2357":2,"2358":1,"2359":1,"2360":2,"2361":1,"2362":1,"2363":1,"2364":2,"2365":2,"2367":2,"2368":11,"2369":2,"2370":3,"2371":4,"2372":11,"2373":2,"2374":7,"2375":9,"2376":11,"2377":13,"2378":3,"2379":13,"2380":5,"2381":10,"2382":13,"2383":10,"2384":27,"2385":1,"2386":11,"2387":7,"2388":11,"2389":11,"2390":11,"2391":10,"2392":3,"2393":22,"2394":2,"2395":22,"2396":2,"2397":28,"2398":3,"2399":1,"2400":16,"2403":6,"2404":2,"2405":6,"2406":2,"2407":11,"2408":6,"2409":7,"2410":57,"2411":27,"2412":1,"2414":1,"2415":4,"2416":21,"2417":2,"2418":7,"2419":1,"2420":25,"2421":45,"2422":18,"2423":10,"2424":24,"2425":11,"2426":4,"2427":28,"2428":5,"2430":1,"2434":1,"2435":5,"2436":2,"2437":3,"2438":12,"2439":9,"2440":13,"2441":4,"2442":1,"2443":2,"2444":3,"2445":1,"2446":5,"2447":3,"2448":1,"2449":11,"2450":3,"2451":1,"2453":3,"2454":1,"2455":1,"2456":2,"2457":2,"2458":3,"2459":44,"2460":1,"2461":2,"2462":5,"2463":5,"2464":3,"2465":3,"2466":3,"2467":5,"2468":5,"2470":2,"2471":1,"2472":1,"2473":1,"2474":4,"2475":10,"2476":14,"2478":8,"2479":1,"2480":8,"2482":8,"2483":5,"2487":5,"2489":4,"2490":7,"2491":2,"2492":8,"2493":1,"2494":4,"2495":16,"2496":17,"2497":12,"2498":6,"2499":5,"2500":7,"2501":17,"2502":4,"2510":9,"2512":2,"2513":11,"2514":2,"2515":7,"2516":4,"2517":5,"2518":6,"2519":4,"2520":5,"2521":3,"2523":1,"2526":2,"2527":1,"2528":4,"2530":4,"2531":8,"2536":3,"2538":6,"2542":2,"2546":3,"2547":8,"2548":7,"2549":10,"2550":3,"2551":6,"2552":11,"2553":13,"2554":5,"2555":1,"2556":2,"2557":7,"2559":4,"2560":12,"2562":3,"2563":2,"2565":1,"2566":8,"2567":10,"2568":14,"2569":8,"2570":7,"2571":3,"2572":5,"2573":2,"2574":1,"2575":1,"2576":8,"2577":5,"2578":7,"2579":5,"2580":5,"2582":4,"2583":11,"2584":1,"2585":1,"2586":1,"2587":12,"2588":4,"2589":5,"2590":2,"2591":3,"2592":2,"2593":2,"2594":6,"2595":1,"2598":3,"2599":9,"2600":5,"2601":5,"2602":8,"2603":7,"2605":16,"2606":7,"2607":8,"2608":2,"2609":14,"2610":2,"2612":2,"2613":3,"2614":3,"2615":5,"2616":1,"2617":1,"2618":1,"2619":6,"2620":5,"2621":13,"2622":6,"2625":3,"2626":3,"2627":60,"2628":1,"2629":2,"2630":5,"2631":2,"2632":18,"2633":14,"2634":2,"2635":3,"2636":1,"2638":1,"2643":9,"2644":9,"2645":8,"2646":5,"2648":4,"2649":3,"2650":3,"2651":6,"2652":14,"2655":13,"2656":9,"2657":3,"2658":2,"2660":9,"2661":2,"2662":15,"2663":5,"2664":4,"2665":1,"2666":6,"2667":51,"2668":7,"2669":15,"2670":8,"2671":5,"2672":2,"2673":2,"2675":3,"2676":10,"2677":6,"2679":4,"2680":3,"2681":2,"2683":8,"2684":10,"2685":2,"2686":2,"2687":14,"2688":4,"2689":2,"2690":2,"2691":2,"2693":10,"2695":7,"2696":3,"2697":8,"2698":4,"2699":2,"2700":8,"2702":15,"2703":2,"2704":9,"2705":1,"2706":2,"2707":11,"2708":3,"2709":3,"2710":14,"2711":4,"2712":4,"2713":6,"2714":9,"2715":2,"2716":1,"2717":1,"2718":1,"2719":15,"2720":2,"2721":52,"2722":14,"2724":5,"2725":8,"2726":2,"2727":1,"2729":2,"2730":1,"2731":5,"2732":2,"2734":4,"2740":1,"2743":1,"2744":3,"2745":4,"2746":6,"2747":17,"2748":40,"2749":111,"2750":129,"2751":3,"2752":3,"2754":9,"2755":2,"2757":3,"2758":7,"2759":2,"2760":12,"2761":3,"2762":6,"2763":8,"2764":3,"2765":8,"2766":5,"2767":4,"2768":9,"2769":12,"2770":6,"2771":11,"2772":5,"2773":3,"2776":2,"2778":7,"2779":1,"2780":8,"2781":2,"2782":1,"2783":4,"2784":2,"2786":1,"2787":17,"2788":36,"2789":12,"2790":6,"2792":2,"2793":6,"2796":1,"2797":3,"2798":1,"2800":1,"2801":1,"2804":1,"2805":2,"2806":3,"2808":1,"2809":1,"2810":2,"2811":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":2,"2823":1,"2824":1,"2827":4,"2830":3,"2831":3,"2832":1,"2833":2,"2834":1,"2836":1,"2838":6,"2839":1,"2841":1,"2842":1,"2843":2,"2844":9,"2845":12,"2846":8,"2847":5,"2848":9,"2849":9,"2850":14,"2851":11,"2852":2,"2853":5,"2854":3,"2855":2,"2856":4,"2857":8,"2858":6,"2859":1,"2860":13,"2861":4,"2862":41,"2863":4,"2864":29,"2865":9,"2866":2,"2867":4,"2868":8,"2869":6,"2870":22,"2871":36,"2872":6,"2873":35,"2874":3,"2875":14,"2876":8,"2877":15,"2878":6,"2879":7,"2881":2,"2882":7,"2883":2,"2884":2,"2885":4,"2887":1,"2888":2,"2890":1,"2891":1,"2894":5,"2895":12,"2896":8,"2898":2,"2899":10,"2901":43,"2902":34,"2903":5,"2907":10,"2908":43,"2909":22,"2910":20,"2911":13,"2912":9,"2913":9,"2914":24,"2915":22,"2916":6,"2917":15,"2918":2,"2919":14,"2920":5,"2921":1,"2922":2,"2923":5,"2924":3,"2926":2,"2927":13,"2928":8,"2929":7,"2930":13,"2931":4,"2932":10,"2933":5,"2935":3,"2936":5,"2937":20,"2938":7,"2939":5,"2940":3,"2941":8,"2942":25}}],["theirs",{"2":{"2449":1}}],["their",{"2":{"0":2,"9":2,"19":2,"39":2,"52":2,"58":1,"67":1,"83":1,"86":1,"102":1,"107":1,"114":1,"122":1,"123":1,"124":1,"125":1,"134":1,"143":1,"154":1,"157":1,"159":1,"166":1,"168":1,"172":1,"175":2,"179":1,"181":1,"182":1,"185":1,"197":1,"222":1,"228":2,"233":1,"234":1,"251":1,"263":1,"275":1,"284":3,"288":1,"363":1,"366":1,"374":1,"393":2,"405":1,"408":4,"431":1,"432":1,"445":1,"490":1,"492":1,"497":1,"520":1,"551":1,"553":2,"567":1,"576":3,"584":1,"608":1,"613":1,"616":1,"619":1,"644":1,"659":1,"686":1,"711":1,"713":1,"759":1,"802":2,"828":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1284":1,"1318":1,"1340":2,"1373":1,"1379":1,"1402":1,"1417":1,"1461":1,"1511":1,"1521":2,"1522":1,"1606":1,"1614":1,"1626":1,"1629":1,"1641":1,"1794":1,"1798":1,"1840":2,"1931":1,"2016":1,"2017":2,"2060":2,"2170":1,"2193":1,"2200":2,"2215":1,"2318":1,"2322":1,"2324":1,"2375":1,"2376":2,"2379":1,"2389":1,"2441":1,"2445":3,"2449":2,"2453":2,"2494":1,"2514":1,"2556":1,"2566":4,"2567":3,"2568":1,"2569":3,"2571":3,"2576":1,"2582":1,"2583":1,"2621":2,"2630":1,"2687":1,"2689":1,"2703":1,"2714":1,"2719":3,"2721":2,"2723":1,"2728":1,"2747":2,"2750":1,"2751":1,"2765":1,"2774":1,"2790":1,"2828":1,"2877":1,"2898":1,"2900":1,"2908":1,"2941":1}}],["these",{"0":{"2732":1},"2":{"0":1,"7":1,"9":1,"16":1,"19":1,"21":1,"28":1,"37":1,"38":1,"39":1,"52":1,"67":1,"86":1,"120":2,"124":1,"182":1,"188":1,"202":2,"254":1,"268":2,"273":1,"276":1,"279":4,"288":1,"304":1,"307":2,"312":1,"373":1,"393":1,"415":1,"419":2,"471":1,"488":1,"489":1,"498":2,"499":1,"520":1,"537":1,"540":1,"546":3,"552":1,"553":1,"560":1,"561":1,"566":1,"572":1,"573":1,"577":1,"579":1,"586":1,"587":1,"608":2,"616":1,"617":1,"628":4,"630":1,"631":1,"637":1,"641":1,"644":3,"663":3,"667":1,"668":1,"669":1,"671":1,"675":1,"690":1,"692":1,"717":1,"718":1,"731":1,"751":1,"857":1,"860":1,"890":1,"922":1,"925":1,"956":1,"959":1,"990":1,"993":1,"1024":1,"1027":1,"1058":1,"1061":1,"1092":1,"1095":1,"1126":1,"1129":1,"1160":1,"1163":1,"1192":1,"1195":1,"1197":1,"1198":1,"1200":1,"1201":1,"1206":1,"1216":1,"1280":1,"1319":1,"1340":3,"1342":1,"1343":1,"1348":1,"1356":1,"1374":1,"1375":1,"1393":1,"1395":1,"1405":1,"1412":1,"1413":1,"1416":2,"1419":1,"1422":1,"1432":1,"1441":1,"1443":1,"1444":1,"1445":1,"1452":1,"1461":1,"1473":1,"1479":1,"1483":1,"1487":1,"1504":1,"1508":1,"1511":1,"1516":1,"1518":1,"1527":2,"1547":1,"1562":2,"1564":1,"1583":2,"1584":2,"1597":1,"1601":1,"1603":1,"1606":1,"1619":1,"1626":1,"1632":1,"1634":1,"1641":1,"1655":1,"1670":1,"1675":1,"1676":1,"1680":1,"1691":1,"1736":1,"1739":1,"1754":1,"1769":1,"1791":1,"1792":1,"1801":1,"1840":1,"1843":2,"1849":1,"1920":1,"1943":1,"1946":3,"1947":1,"1958":1,"1988":1,"2005":1,"2015":1,"2017":2,"2021":1,"2025":1,"2029":1,"2050":2,"2060":1,"2063":3,"2067":2,"2072":1,"2156":1,"2159":2,"2178":1,"2179":1,"2181":2,"2182":1,"2184":1,"2187":1,"2188":1,"2189":1,"2191":1,"2205":2,"2212":1,"2215":1,"2245":1,"2253":1,"2258":1,"2265":1,"2268":1,"2269":1,"2270":1,"2287":1,"2290":1,"2293":1,"2294":2,"2310":1,"2313":1,"2315":1,"2316":1,"2322":1,"2323":1,"2324":1,"2377":1,"2390":1,"2410":2,"2411":2,"2417":1,"2418":1,"2423":1,"2427":2,"2448":1,"2483":1,"2490":1,"2491":1,"2498":1,"2510":2,"2512":1,"2549":1,"2551":3,"2555":1,"2556":1,"2557":2,"2559":1,"2560":1,"2566":1,"2573":1,"2578":1,"2587":1,"2612":1,"2621":1,"2630":1,"2635":1,"2643":2,"2668":1,"2674":1,"2684":1,"2687":2,"2689":1,"2694":1,"2695":2,"2698":1,"2699":1,"2702":1,"2703":1,"2710":1,"2714":1,"2715":1,"2718":1,"2720":1,"2721":3,"2724":1,"2734":2,"2744":1,"2749":6,"2750":2,"2812":1,"2833":1,"2838":1,"2844":1,"2877":1,"2880":1,"2882":1,"2883":1,"2885":1,"2887":3,"2898":1,"2901":1,"2913":1,"2919":2,"2923":1,"2924":3,"2931":1,"2934":1,"2941":1}}],["w25x10cl",{"2":{"2698":2}}],["w25q080",{"2":{"2698":2}}],["wuque",{"2":{"2567":1}}],["wmp",{"2":{"2515":1}}],["wm",{"2":{"2515":1}}],["w^wr^sd",{"2":{"2295":1}}],["wfav",{"2":{"2510":1,"2515":1}}],["wfwd",{"2":{"2159":1,"2510":1,"2515":1}}],["wfi",{"2":{"222":1}}],["www",{"2":{"608":1,"674":1,"746":7,"747":1,"763":1,"1316":2,"1364":1,"1438":1,"2187":1,"2310":1,"2510":7,"2515":7,"2725":1}}],["wt",{"2":{"236":1,"249":2,"2721":2}}],["wt80",{"2":{"211":2}}],["wt75",{"2":{"211":3}}],["wt70",{"2":{"211":1}}],["wt69",{"2":{"211":1}}],["wt65",{"2":{"211":8}}],["wt60",{"2":{"199":1,"211":8}}],["w1",{"2":{"211":1,"241":2,"249":1}}],["wk",{"2":{"211":1}}],["wkl",{"2":{"149":1}}],["wl",{"2":{"176":2,"2294":3}}],["wbak",{"2":{"2159":1,"2510":1,"2515":1}}],["wbg7",{"2":{"176":1}}],["wb32fq95xx",{"2":{"514":1}}],["wb32fq95",{"2":{"160":1}}],["wb32f3g71xx",{"2":{"514":1}}],["wb32f3g71",{"2":{"134":1}}],["wb32",{"0":{"514":1,"2390":1},"2":{"160":1,"176":4,"191":4,"199":2,"222":1,"236":1,"2390":4}}],["wstp",{"2":{"2510":1,"2515":1}}],["wsch",{"2":{"2510":1,"2515":1}}],["ws2811",{"2":{"1280":1,"2178":1,"2455":1}}],["ws2812s",{"2":{"1284":1}}],["ws2812c",{"2":{"1280":1,"2178":1}}],["ws2812b",{"2":{"1280":1,"1284":2,"2178":1}}],["ws2812",{"0":{"1280":1,"1302":1,"1303":1,"1305":1,"1307":1,"2455":1,"2876":1},"1":{"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1,"1302":1,"1303":1,"1304":2,"1305":1,"1306":2,"1307":1},"2":{"49":1,"50":2,"93":2,"134":2,"149":1,"176":4,"191":3,"199":1,"201":2,"211":7,"221":4,"222":1,"234":2,"236":1,"249":3,"266":2,"285":2,"294":1,"333":1,"563":3,"699":1,"1190":2,"1280":1,"1281":4,"1282":10,"1283":2,"1284":3,"1285":2,"1286":2,"1287":1,"1288":3,"1289":1,"1292":6,"1293":1,"1294":2,"1296":6,"1297":1,"1298":1,"1299":1,"1300":7,"1303":1,"1304":1,"2059":1,"2074":1,"2178":1,"2179":4,"2455":1,"2682":1,"2685":1,"2870":2,"2871":1,"2876":3}}],["wsl",{"2":{"158":1,"1443":1,"2619":3}}],["w64",{"2":{"158":1,"2499":2}}],["w",{"2":{"134":1,"199":1,"201":2,"211":1,"241":1,"249":1,"266":4,"369":1,"432":1,"587":2,"1280":1,"1285":4,"1587":2,"1599":1,"1616":1,"1736":1,"1769":1,"1931":8,"2159":1,"2170":6,"2289":1,"2294":1,"2310":1,"2379":1,"2382":1,"2495":1,"2496":3,"2503":3,"2515":3,"2547":1,"2553":1,"2748":4,"2788":3,"2789":1,"2862":2,"2915":1}}],["wch",{"2":{"2728":1,"2734":1,"2737":1}}],["wc",{"2":{"116":1}}],["wp",{"2":{"114":1,"746":5}}],["wpm",{"0":{"2371":1},"1":{"2372":1,"2373":1,"2374":1},"2":{"93":1,"114":1,"134":1,"149":1,"191":2,"199":1,"568":2,"1804":1,"2063":1,"2269":3,"2284":1,"2371":4,"2372":24,"2373":4,"2374":9,"2873":2,"2882":2,"2886":12,"2933":1}}],["wref",{"2":{"2510":1,"2515":1}}],["wraps",{"2":{"1948":3,"2201":4,"2283":3}}],["wrapping",{"2":{"1452":1}}],["wrapped",{"2":{"249":1,"493":1}}],["wrappers",{"2":{"176":1}}],["wrap",{"2":{"199":1,"520":3,"521":1,"522":3,"1479":1,"1693":2,"2311":1}}],["wrote",{"2":{"174":1,"445":1,"461":1,"471":1,"472":1,"474":1,"480":1,"481":1}}],["wrongly",{"2":{"1349":1}}],["wrong",{"0":{"28":1,"684":1},"2":{"5":1,"25":1,"92":1,"176":1,"240":1,"249":1,"490":1,"614":1,"1284":1,"1315":1,"1362":1,"1528":1,"2569":1,"2610":1}}],["written",{"2":{"164":1,"230":1,"497":1,"609":2,"1412":1,"1413":1,"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2183":1,"2198":9,"2199":3,"2200":3,"2201":7,"2202":3,"2274":1,"2440":1,"2495":1,"2501":2,"2553":1,"2605":1,"2608":1,"2750":1,"2800":1,"2802":1,"2936":2,"2941":1}}],["writing",{"0":{"497":1,"1629":1},"1":{"1630":1,"1631":1,"1632":1,"1633":1,"1634":1,"1635":1,"1636":1,"1637":1,"1638":1},"2":{"65":1,"70":1,"112":1,"134":1,"174":1,"182":1,"373":1,"427":1,"445":1,"487":2,"491":1,"498":1,"550":2,"552":1,"675":1,"743":4,"746":1,"750":1,"755":1,"1412":1,"1455":1,"1519":1,"1680":1,"1948":6,"2283":6,"2284":1,"2323":1,"2403":1,"2440":1,"2495":2,"2669":1,"2708":1,"2748":4,"2750":1,"2935":1,"2940":1}}],["writereg16",{"2":{"244":1}}],["writereg",{"2":{"244":1,"249":1}}],["writepinlow",{"2":{"243":1}}],["writepinhigh",{"2":{"243":1}}],["writepin",{"2":{"160":1,"243":1}}],["writes",{"2":{"114":1,"751":1,"752":1,"753":1,"754":1,"1412":1,"1413":1,"1422":1,"1796":1,"1948":9,"2283":9,"2670":1,"2748":2}}],["write",{"0":{"782":1,"785":1,"807":1,"834":1,"866":1,"896":1,"931":1,"965":1,"999":1,"1033":1,"1067":1,"1101":1,"1135":1,"1169":1,"1222":1,"1251":1,"1270":1,"1719":1},"1":{"783":1,"784":1,"786":1,"787":1,"808":1,"835":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1223":1,"1252":1,"1253":1,"1271":1,"1720":1},"2":{"31":4,"62":1,"114":2,"149":1,"174":1,"243":3,"244":2,"249":5,"294":1,"333":2,"481":1,"484":1,"497":1,"498":1,"503":2,"520":1,"522":1,"552":1,"616":1,"617":1,"642":1,"670":1,"671":1,"673":1,"746":2,"750":1,"751":2,"752":3,"753":3,"758":3,"763":2,"771":1,"774":1,"780":1,"782":1,"783":2,"785":1,"786":2,"1251":1,"1252":1,"1257":2,"1271":1,"1275":2,"1362":2,"1412":1,"1413":5,"1414":1,"1422":1,"1452":1,"1455":1,"1529":1,"1616":1,"1719":1,"1793":6,"1845":1,"1939":9,"1940":1,"1941":1,"1942":2,"1948":17,"1949":18,"1958":1,"2012":1,"2047":1,"2052":1,"2068":1,"2277":9,"2278":1,"2279":1,"2283":11,"2501":4,"2581":1,"2670":1,"2707":1,"2735":1,"2773":2,"2886":5,"2935":1,"2936":2,"2937":1}}],["womier",{"2":{"2567":1}}],["wobkey",{"2":{"2567":1}}],["wonder",{"2":{"2467":1,"2942":1}}],["wondering",{"2":{"611":1,"2920":1}}],["wonderland",{"2":{"57":2}}],["won",{"0":{"605":1},"2":{"221":1,"405":1,"555":1,"617":1,"1437":1,"1441":1,"1443":1,"1454":1,"1484":1,"1804":1,"1955":1,"2179":1,"2302":1,"2422":1,"2483":1,"2627":1,"2724":1,"2776":1,"2877":1,"2901":1,"2924":1,"2934":1}}],["woodkeys",{"2":{"143":6,"149":2}}],["wootpatoot",{"2":{"70":1}}],["worst",{"2":{"2570":1}}],["worse",{"2":{"1353":1,"2258":1}}],["worrying",{"0":{"2625":1}}],["worry",{"2":{"1337":1}}],["worth",{"2":{"596":1,"1599":1,"2302":1,"2762":1,"2937":1}}],["worldsemi",{"2":{"1280":1}}],["world",{"0":{"1695":1,"2218":1,"2736":1},"1":{"2737":1,"2738":1,"2739":1},"2":{"487":4,"489":1,"537":1,"1325":1,"1343":1,"1406":2,"1517":3,"1627":2,"1628":1,"1630":1,"1633":2,"1638":19,"1695":1,"2218":2,"2295":1,"2839":1}}],["world1",{"2":{"120":1,"1445":1}}],["wordtypo",{"2":{"1528":1}}],["wordtpyo",{"2":{"1528":1}}],["words",{"2":{"1450":1,"1518":1,"1519":1,"1522":8,"1528":3,"1807":1,"2159":1,"2284":2,"2310":1,"2323":1,"2371":1,"2559":1,"2902":1}}],["word",{"0":{"152":1,"625":1,"1587":1,"1588":1,"1590":1,"1594":1,"1595":1,"2233":1,"2371":1,"2522":1,"2854":1},"1":{"1588":1,"1589":2,"1590":1,"1591":2,"1592":2,"1593":2,"1594":2,"1595":2,"2234":1,"2372":1,"2373":1,"2374":1},"2":{"152":3,"160":3,"176":2,"188":1,"191":2,"199":1,"211":3,"222":1,"249":1,"308":1,"527":1,"1378":1,"1521":1,"1522":3,"1526":1,"1527":1,"1528":2,"1587":14,"1588":10,"1589":2,"1591":8,"1592":7,"1593":9,"1594":11,"1595":6,"1606":1,"2156":1,"2159":2,"2310":2,"2372":2,"2374":1,"2474":1,"2522":3,"2854":7,"2933":1}}],["workman",{"2":{"1446":1,"2880":6}}],["worked",{"2":{"663":1,"2562":1,"2612":1}}],["worker",{"2":{"361":1}}],["workers",{"0":{"361":1},"2":{"360":1,"361":1}}],["workbench",{"2":{"347":1,"2652":2,"2662":1}}],["workarounds",{"0":{"2733":1,"2791":1},"1":{"2734":1,"2735":1,"2792":1,"2793":1},"2":{"1293":1,"2726":1,"2742":1}}],["workaround",{"0":{"218":1},"2":{"149":1,"160":5,"199":2,"218":2,"222":1,"249":2,"294":1,"1478":1,"1512":1,"2075":1}}],["workflows",{"2":{"262":1,"1404":1,"2590":1,"2598":2,"2600":1,"2601":1}}],["workflow",{"0":{"2600":1,"2602":1},"2":{"134":1,"164":1,"176":1,"191":1,"199":1,"213":1,"424":1,"578":1,"614":1,"2398":1,"2591":2,"2600":3,"2602":3,"2603":4}}],["workings",{"0":{"1753":1},"1":{"1754":1,"1755":1,"1756":1},"2":{"2029":1}}],["working",{"0":{"602":1,"1346":1,"1347":1,"1348":1,"1418":1,"2624":1},"1":{"1419":1,"1420":1,"1421":1,"2625":1},"2":{"114":1,"158":1,"377":1,"414":1,"427":1,"446":1,"447":1,"448":1,"456":1,"548":2,"573":1,"611":1,"617":1,"663":2,"746":1,"747":1,"752":1,"756":1,"1317":1,"1356":1,"1373":1,"1406":1,"1548":1,"1937":2,"1980":1,"2179":1,"2268":1,"2312":1,"2324":1,"2399":1,"2425":2,"2427":2,"2428":1,"2433":1,"2445":1,"2501":1,"2555":1,"2576":1,"2592":1,"2594":1,"2610":1,"2646":1,"2651":1,"2656":1,"2667":2,"2707":1,"2719":1}}],["workshop",{"2":{"1365":1}}],["workspaceroot",{"2":{"2667":2}}],["workspace",{"2":{"347":1,"2652":1,"2662":1,"2663":1,"2664":2,"2665":1}}],["works",{"0":{"2431":1,"2459":1},"2":{"100":1,"176":1,"199":1,"211":4,"263":2,"308":1,"341":1,"432":1,"469":1,"548":1,"567":1,"589":1,"662":1,"720":1,"1190":1,"1283":1,"1310":1,"1313":1,"1317":1,"1358":1,"1415":1,"1482":1,"1484":1,"1492":1,"1497":1,"1523":1,"1528":1,"1531":1,"1587":1,"1588":2,"1591":1,"1679":1,"1753":1,"2008":1,"2009":1,"2017":1,"2045":1,"2167":1,"2180":1,"2258":1,"2262":1,"2266":1,"2303":1,"2312":3,"2313":1,"2323":1,"2324":4,"2397":1,"2418":1,"2431":1,"2459":1,"2479":1,"2497":1,"2549":1,"2582":1,"2656":1,"2667":1,"2735":1,"2925":1,"2926":1,"2942":1}}],["work",{"0":{"1356":1,"1363":1,"1366":1,"1367":1,"1492":1,"1519":1},"2":{"10":1,"23":2,"28":1,"49":1,"50":2,"114":1,"131":1,"134":1,"142":1,"160":1,"182":2,"189":2,"191":3,"194":1,"199":2,"222":1,"236":1,"251":2,"266":1,"277":1,"293":1,"305":1,"308":1,"314":1,"373":1,"392":1,"405":1,"410":1,"421":1,"437":1,"492":1,"509":1,"512":1,"572":2,"591":1,"598":1,"608":1,"611":2,"617":3,"662":1,"663":1,"760":1,"794":1,"1194":1,"1200":1,"1201":1,"1310":1,"1312":1,"1315":1,"1346":1,"1363":2,"1365":1,"1378":2,"1413":2,"1416":1,"1421":2,"1443":3,"1454":1,"1461":1,"1466":1,"1484":4,"1497":3,"1513":1,"1516":1,"1610":1,"1613":1,"1670":1,"1674":1,"1757":2,"1761":1,"1765":1,"1913":1,"1914":1,"1948":1,"1950":1,"2013":1,"2017":1,"2018":1,"2027":1,"2032":2,"2039":1,"2188":1,"2192":1,"2254":1,"2286":1,"2291":1,"2294":1,"2303":1,"2310":1,"2318":1,"2322":1,"2384":1,"2386":1,"2402":1,"2404":1,"2410":1,"2424":1,"2427":1,"2432":2,"2441":1,"2449":2,"2459":1,"2460":1,"2468":1,"2489":1,"2492":1,"2557":1,"2560":1,"2579":1,"2587":1,"2610":1,"2612":1,"2626":1,"2627":1,"2629":1,"2643":1,"2655":1,"2667":1,"2669":1,"2675":1,"2734":1,"2735":1,"2750":1,"2908":1,"2909":1,"2925":1,"2926":1,"2930":1}}],["wouldn",{"2":{"1610":1,"2942":1}}],["would",{"2":{"11":1,"73":1,"98":1,"164":1,"194":3,"263":1,"293":1,"305":1,"314":1,"376":1,"387":1,"419":1,"546":1,"547":1,"552":1,"562":1,"586":1,"587":1,"589":1,"611":1,"668":1,"700":1,"717":4,"718":2,"727":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1200":1,"1201":1,"1212":1,"1249":1,"1281":1,"1296":1,"1300":1,"1339":1,"1369":1,"1375":2,"1406":1,"1415":1,"1417":3,"1419":1,"1452":4,"1457":1,"1472":1,"1473":1,"1486":1,"1511":2,"1513":1,"1522":2,"1532":2,"1562":1,"1563":1,"1596":1,"1598":1,"1602":1,"1619":1,"1662":1,"1679":1,"1751":1,"1757":1,"1761":1,"1844":1,"1847":1,"1917":1,"1930":1,"1990":1,"2023":1,"2040":1,"2042":2,"2044":2,"2066":1,"2070":1,"2074":1,"2170":1,"2186":1,"2191":1,"2192":1,"2193":1,"2211":1,"2293":3,"2295":1,"2296":1,"2303":1,"2310":2,"2324":1,"2368":1,"2374":1,"2416":1,"2459":2,"2513":1,"2549":2,"2559":1,"2560":4,"2576":1,"2622":2,"2660":1,"2687":1,"2705":1,"2721":1,"2734":1,"2750":3,"2780":2,"2787":1,"2895":1,"2907":2,"2908":1,"2909":1,"2936":1,"2940":3}}],["whlr",{"2":{"1927":1,"2159":1,"2533":1}}],["whll",{"2":{"1927":1,"2159":1,"2533":1}}],["whld",{"2":{"1661":1,"1927":1,"2159":1,"2533":1}}],["whlu",{"2":{"1661":1,"1927":1,"2159":1,"2533":1}}],["wh",{"2":{"209":2}}],["why",{"0":{"1490":1,"1491":1,"2402":1,"2431":1,"2730":1,"2732":1,"2920":1,"2921":1},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"2731":1,"2732":1},"2":{"173":1,"419":1,"520":1,"522":1,"549":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1375":1,"1421":1,"2467":1,"2726":1,"2734":2,"2844":1,"2920":1,"2942":1}}],["whom",{"2":{"2510":1,"2515":1}}],["whoeveryouare",{"2":{"2403":3}}],["whose",{"2":{"487":1,"2290":1,"2901":1}}],["who",{"2":{"119":2,"164":1,"166":1,"173":3,"209":1,"221":1,"231":1,"234":1,"279":1,"537":1,"546":1,"559":1,"616":1,"662":1,"663":1,"1444":1,"1844":1,"2066":1,"2324":1,"2432":1,"2437":1,"2445":2,"2566":1,"2569":2,"2573":2,"2728":1}}],["whole",{"0":{"477":1,"608":1},"2":{"116":1,"263":1,"524":1,"555":1,"558":1,"1339":1,"1378":1,"1522":1,"1532":1,"1675":1,"1947":1,"2372":1,"2422":1,"2427":1,"2459":1,"2902":1,"2920":1,"2940":1}}],["whatever",{"2":{"559":3,"630":1,"1347":1,"1419":1,"1432":1,"1941":1,"2183":1,"2270":1,"2279":1,"2592":1,"2612":1,"2633":1,"2842":1,"2901":1}}],["what",{"0":{"394":1,"397":1,"409":1,"603":1,"604":1,"619":1,"1332":1,"1335":1,"1336":1,"1339":1,"1340":1,"1342":1,"1343":1,"1359":1,"1667":1,"2463":1,"2464":1,"2465":1,"2470":1},"1":{"410":1,"411":1,"412":1},"2":{"50":1,"99":1,"119":2,"182":1,"228":1,"246":1,"251":1,"254":1,"359":1,"492":1,"503":1,"529":1,"541":2,"573":1,"584":1,"596":1,"597":1,"607":1,"613":1,"624":1,"631":2,"643":1,"659":1,"663":1,"676":1,"686":1,"718":1,"1333":1,"1358":1,"1362":1,"1379":1,"1389":1,"1390":1,"1415":1,"1421":2,"1422":2,"1448":1,"1450":1,"1478":1,"1531":1,"1532":1,"1603":1,"1681":1,"1751":2,"1756":1,"1799":1,"1840":3,"1947":1,"1956":1,"2060":3,"2163":1,"2188":1,"2266":1,"2293":1,"2301":1,"2302":1,"2303":1,"2310":1,"2312":1,"2403":1,"2416":1,"2418":1,"2423":1,"2430":1,"2437":1,"2439":1,"2459":3,"2460":1,"2461":1,"2463":2,"2466":1,"2490":2,"2496":1,"2551":1,"2580":1,"2609":1,"2610":1,"2621":1,"2626":1,"2631":1,"2633":1,"2706":1,"2707":1,"2718":1,"2721":2,"2723":1,"2750":1,"2775":1,"2788":1,"2862":1,"2899":2,"2930":1,"2936":1}}],["wheatfield",{"2":{"159":2}}],["wheels",{"2":{"2017":2}}],["wheel",{"2":{"112":1,"222":1,"285":1,"320":1,"564":1,"1927":8,"1929":12,"1930":12,"1931":1,"1933":1,"1934":3,"2016":2,"2017":5,"2065":1,"2159":2,"2180":2,"2533":8,"2866":1}}],["whereas",{"2":{"649":1,"692":2,"717":1,"1641":1,"2901":1}}],["wherever",{"2":{"553":1,"1617":1,"2862":1,"2895":1,"2897":1}}],["where",{"0":{"610":1,"1333":1},"2":{"94":1,"99":1,"134":1,"140":1,"191":1,"194":1,"199":1,"211":1,"231":1,"249":1,"266":1,"293":1,"294":1,"305":1,"314":1,"328":1,"360":1,"431":10,"503":1,"525":1,"549":1,"551":1,"557":1,"559":2,"568":1,"583":1,"614":2,"631":2,"635":1,"746":1,"826":1,"855":1,"887":1,"919":1,"920":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1091":1,"1124":1,"1125":1,"1158":1,"1193":1,"1196":2,"1200":1,"1201":1,"1204":1,"1214":1,"1284":1,"1375":1,"1377":1,"1378":1,"1410":2,"1422":1,"1487":1,"1519":1,"1532":1,"1611":1,"1679":1,"1714":1,"1716":1,"1753":1,"1766":1,"1785":1,"1840":2,"1849":1,"1956":1,"2015":1,"2025":1,"2060":2,"2072":1,"2159":2,"2171":1,"2198":9,"2201":2,"2293":2,"2322":2,"2323":1,"2407":2,"2410":1,"2414":1,"2422":2,"2423":1,"2425":1,"2427":1,"2437":1,"2438":1,"2459":1,"2496":1,"2501":1,"2528":1,"2552":1,"2553":1,"2578":2,"2587":1,"2607":1,"2631":2,"2655":1,"2687":1,"2708":1,"2709":1,"2713":1,"2719":1,"2721":6,"2722":1,"2723":1,"2750":2,"2768":1,"2770":1,"2771":1,"2787":2,"2881":1,"2912":1,"2915":1,"2926":1,"2928":2,"2930":1,"2940":1,"2942":1}}],["whether",{"2":{"49":1,"214":1,"234":1,"410":1,"494":1,"548":1,"637":2,"649":1,"743":1,"755":1,"760":1,"763":1,"1278":1,"1300":1,"1375":1,"1493":1,"1511":1,"1519":2,"1550":1,"1645":1,"1699":2,"1703":2,"1717":1,"1720":1,"1722":1,"1751":1,"1763":2,"1775":1,"1793":1,"1817":1,"1821":1,"1840":1,"1931":1,"2060":1,"2247":3,"2265":1,"2269":1,"2293":1,"2303":2,"2310":1,"2312":1,"2320":1,"2353":1,"2496":1,"2567":1,"2669":1,"2743":1,"2747":1,"2749":1,"2750":1,"2760":1,"2850":1,"2865":4,"2915":1}}],["whenever",{"2":{"263":1,"338":3,"397":2,"629":1,"641":1,"645":1,"649":1,"670":1,"752":1,"753":1,"1200":1,"1450":1,"1523":1,"1630":1,"1660":1,"2023":1,"2042":1,"2064":1,"2190":1,"2194":1,"2268":1,"2295":1,"2372":1,"2461":1,"2462":1,"2549":1,"2583":1,"2590":1,"2645":1,"2750":1,"2933":1}}],["when",{"0":{"395":1,"424":1,"1345":1,"2043":1},"1":{"396":1},"2":{"11":1,"28":1,"49":1,"50":1,"58":1,"65":2,"74":1,"92":2,"93":1,"94":1,"107":1,"111":1,"114":6,"133":1,"134":2,"149":1,"160":1,"176":2,"191":5,"195":1,"199":7,"211":3,"222":5,"230":1,"233":1,"234":2,"236":3,"240":1,"241":1,"246":1,"247":1,"249":4,"253":1,"263":1,"266":1,"270":1,"281":1,"289":1,"294":3,"297":1,"303":1,"307":1,"308":2,"312":1,"317":2,"328":2,"333":1,"361":1,"368":1,"387":1,"393":1,"397":1,"398":1,"415":1,"419":2,"424":1,"450":2,"451":2,"473":2,"483":1,"488":1,"490":1,"492":1,"493":1,"497":1,"498":1,"504":2,"520":3,"524":2,"526":1,"532":1,"534":2,"535":2,"541":1,"544":1,"546":1,"548":1,"549":1,"553":1,"559":2,"562":1,"563":4,"567":2,"568":16,"570":1,"579":1,"583":1,"584":1,"586":1,"596":1,"598":1,"599":1,"613":1,"614":1,"616":1,"617":1,"622":1,"623":1,"625":2,"627":1,"628":1,"629":3,"635":1,"643":1,"646":2,"649":1,"663":1,"664":1,"666":2,"667":1,"672":1,"673":1,"675":1,"682":1,"684":1,"685":2,"696":1,"716":2,"743":1,"746":1,"760":1,"1190":1,"1201":1,"1244":1,"1282":1,"1293":1,"1294":1,"1312":1,"1313":2,"1315":1,"1324":2,"1326":2,"1328":1,"1329":1,"1340":2,"1342":1,"1347":1,"1359":1,"1363":2,"1365":1,"1374":1,"1378":1,"1405":1,"1406":2,"1407":1,"1410":4,"1413":4,"1416":5,"1417":1,"1418":1,"1419":1,"1420":2,"1421":2,"1430":1,"1434":1,"1435":1,"1439":2,"1444":1,"1446":1,"1448":1,"1450":6,"1459":1,"1478":1,"1479":13,"1480":17,"1491":1,"1492":2,"1493":1,"1506":1,"1511":2,"1513":1,"1522":2,"1527":4,"1529":1,"1543":1,"1545":1,"1550":1,"1551":1,"1552":1,"1556":1,"1564":1,"1583":1,"1584":1,"1587":1,"1589":1,"1591":1,"1594":1,"1595":3,"1596":1,"1598":1,"1605":1,"1606":2,"1607":1,"1612":1,"1616":2,"1619":1,"1627":1,"1655":1,"1656":2,"1658":3,"1659":1,"1664":1,"1666":2,"1668":2,"1675":4,"1678":1,"1679":1,"1681":1,"1684":6,"1728":1,"1730":1,"1736":1,"1737":4,"1740":1,"1744":1,"1746":1,"1747":1,"1749":1,"1751":1,"1752":4,"1754":1,"1755":2,"1756":2,"1759":1,"1761":1,"1764":1,"1767":1,"1770":1,"1791":1,"1792":2,"1796":1,"1801":2,"1807":2,"1810":1,"1811":1,"1812":1,"1846":1,"1928":1,"1929":1,"1931":2,"1932":1,"1934":1,"1938":1,"1943":2,"1947":1,"1948":2,"1952":1,"1954":3,"1955":3,"1990":1,"1993":1,"2000":1,"2006":1,"2016":1,"2017":3,"2018":1,"2020":1,"2021":2,"2023":1,"2025":2,"2030":4,"2031":4,"2039":1,"2040":1,"2042":1,"2043":1,"2044":1,"2045":4,"2046":1,"2054":1,"2069":1,"2074":1,"2159":1,"2165":2,"2167":1,"2168":1,"2169":2,"2178":1,"2181":10,"2182":1,"2184":1,"2185":1,"2189":5,"2191":1,"2192":2,"2210":2,"2214":1,"2218":1,"2248":2,"2250":14,"2251":1,"2252":17,"2253":4,"2254":1,"2265":1,"2266":2,"2267":1,"2269":1,"2271":7,"2272":1,"2277":1,"2283":4,"2287":1,"2293":2,"2297":4,"2298":1,"2301":1,"2302":10,"2303":4,"2310":4,"2311":4,"2312":1,"2318":1,"2320":3,"2321":6,"2323":2,"2333":1,"2335":1,"2370":4,"2372":6,"2377":1,"2384":1,"2398":1,"2400":1,"2410":5,"2415":1,"2418":1,"2420":1,"2421":3,"2424":1,"2427":2,"2435":1,"2438":2,"2440":1,"2444":1,"2445":1,"2448":1,"2459":6,"2462":1,"2468":1,"2495":1,"2496":1,"2510":2,"2514":1,"2515":2,"2521":3,"2524":2,"2528":3,"2535":58,"2537":10,"2543":14,"2544":4,"2548":1,"2551":1,"2557":1,"2559":62,"2560":1,"2563":1,"2568":1,"2572":2,"2578":1,"2580":1,"2587":1,"2603":1,"2609":1,"2615":1,"2622":1,"2626":3,"2627":1,"2631":1,"2644":1,"2645":6,"2652":2,"2663":1,"2666":2,"2669":1,"2680":1,"2693":1,"2708":1,"2715":1,"2718":1,"2721":5,"2723":2,"2746":1,"2748":4,"2749":4,"2750":1,"2757":2,"2769":1,"2789":2,"2806":1,"2814":1,"2815":1,"2854":1,"2864":1,"2865":1,"2870":2,"2871":1,"2873":1,"2877":1,"2879":1,"2892":1,"2895":1,"2896":1,"2897":1,"2901":3,"2902":4,"2908":2,"2909":2,"2910":1,"2911":2,"2913":3,"2914":3,"2927":2,"2929":1,"2932":2,"2942":1}}],["whistles",{"2":{"2721":1}}],["whitefacemountain",{"2":{"277":1}}],["whitefox",{"2":{"143":2,"236":1}}],["white",{"2":{"266":1,"490":1,"492":2,"587":1,"1285":5,"1413":1,"1952":1,"2067":2,"2198":1,"2205":3,"2769":4}}],["whitespace",{"2":{"211":4,"520":1,"521":1,"613":1,"676":1,"1521":1,"2553":1}}],["whilst",{"2":{"198":1,"458":1,"2569":1,"2703":1}}],["while",{"0":{"320":1},"2":{"21":1,"37":1,"49":1,"73":1,"191":1,"194":3,"199":2,"203":1,"294":1,"328":1,"387":1,"402":1,"553":1,"562":1,"616":1,"625":1,"647":1,"663":1,"683":3,"711":1,"720":1,"1340":1,"1345":1,"1348":1,"1359":2,"1378":1,"1392":1,"1402":1,"1404":1,"1406":3,"1410":2,"1412":1,"1441":1,"1444":1,"1447":1,"1455":1,"1484":1,"1522":1,"1523":1,"1527":1,"1556":1,"1586":1,"1587":2,"1591":2,"1594":2,"1606":1,"1655":1,"1658":1,"1672":1,"1675":1,"1696":1,"1736":1,"1751":1,"1754":3,"1755":1,"1758":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1948":7,"1953":1,"1983":3,"1985":4,"2025":1,"2027":1,"2031":1,"2035":1,"2037":1,"2044":1,"2067":1,"2156":1,"2164":1,"2172":1,"2176":1,"2205":1,"2210":1,"2245":1,"2252":1,"2265":1,"2268":1,"2283":5,"2289":2,"2293":1,"2297":3,"2310":1,"2312":1,"2382":1,"2383":1,"2397":2,"2403":1,"2410":2,"2411":1,"2427":1,"2433":1,"2451":1,"2544":3,"2546":1,"2553":2,"2554":1,"2571":1,"2574":1,"2579":1,"2580":1,"2605":3,"2673":1,"2747":1,"2757":1,"2773":1,"2813":1,"2824":1,"2827":1,"2832":1,"2844":1,"2872":1,"2898":1,"2900":1,"2902":3,"2911":1,"2916":1,"2917":1,"2927":1,"2929":1,"2938":1}}],["whichever",{"2":{"283":1,"1486":1,"2051":1,"2293":1}}],["which",{"0":{"1326":1,"1327":1,"1594":1},"2":{"0":1,"9":1,"19":1,"27":1,"30":1,"33":1,"39":1,"45":1,"49":3,"50":1,"52":1,"69":1,"108":1,"118":1,"119":1,"134":1,"149":1,"154":1,"158":1,"173":1,"191":1,"194":1,"201":1,"209":1,"215":2,"233":1,"236":1,"246":1,"265":1,"288":3,"312":1,"320":1,"369":1,"373":2,"383":1,"387":1,"390":2,"393":1,"397":1,"421":1,"458":1,"472":1,"473":1,"487":1,"490":1,"511":1,"520":1,"534":1,"537":1,"541":1,"553":3,"560":1,"561":2,"562":2,"567":1,"570":1,"586":3,"597":1,"613":1,"615":1,"617":1,"631":1,"643":1,"646":1,"673":1,"675":1,"683":1,"692":3,"711":1,"712":1,"717":3,"718":2,"750":1,"757":1,"762":1,"765":2,"794":1,"1190":1,"1197":1,"1204":1,"1205":1,"1206":1,"1243":1,"1245":2,"1264":1,"1266":1,"1283":1,"1284":1,"1285":1,"1288":1,"1317":1,"1327":1,"1328":1,"1345":1,"1346":2,"1354":1,"1359":1,"1362":3,"1365":1,"1375":1,"1376":1,"1378":1,"1406":1,"1407":2,"1416":2,"1417":1,"1430":1,"1448":1,"1450":2,"1452":3,"1473":1,"1474":1,"1475":1,"1477":1,"1478":1,"1481":2,"1485":3,"1492":1,"1495":1,"1497":1,"1498":1,"1500":1,"1502":1,"1504":1,"1509":1,"1513":1,"1517":1,"1529":1,"1552":2,"1554":1,"1583":2,"1587":1,"1589":1,"1594":2,"1604":1,"1611":1,"1612":1,"1616":1,"1621":1,"1622":1,"1624":2,"1626":3,"1627":2,"1628":1,"1633":1,"1634":2,"1639":1,"1658":1,"1659":1,"1661":1,"1664":2,"1674":1,"1677":1,"1740":1,"1741":1,"1742":1,"1743":1,"1751":3,"1754":1,"1756":1,"1757":1,"1758":1,"1761":1,"1764":1,"1766":1,"1798":1,"1799":1,"1846":3,"1929":2,"1930":3,"1933":1,"1941":1,"1942":1,"1947":3,"1948":1,"1950":2,"1951":2,"1990":1,"2002":1,"2005":1,"2006":2,"2017":3,"2021":3,"2030":1,"2051":1,"2052":1,"2069":5,"2156":1,"2159":1,"2168":1,"2170":1,"2182":3,"2187":1,"2188":1,"2210":1,"2218":1,"2245":1,"2263":2,"2271":2,"2279":1,"2280":1,"2296":1,"2302":4,"2310":1,"2312":2,"2318":1,"2319":1,"2322":2,"2372":1,"2381":1,"2382":1,"2384":1,"2400":3,"2402":1,"2403":1,"2410":2,"2411":1,"2420":3,"2424":2,"2433":1,"2436":1,"2439":1,"2440":1,"2459":3,"2463":1,"2492":1,"2494":1,"2497":2,"2498":1,"2528":1,"2548":1,"2552":1,"2553":1,"2560":2,"2566":2,"2567":1,"2568":3,"2569":2,"2585":1,"2590":1,"2609":1,"2621":1,"2628":1,"2630":3,"2632":3,"2633":2,"2638":1,"2667":1,"2668":1,"2675":1,"2683":1,"2688":2,"2689":1,"2693":3,"2695":1,"2696":1,"2697":1,"2700":1,"2702":1,"2711":1,"2721":1,"2722":1,"2744":2,"2746":1,"2749":2,"2750":4,"2757":1,"2760":1,"2769":2,"2787":4,"2788":4,"2806":2,"2816":1,"2834":1,"2837":1,"2850":1,"2862":1,"2864":4,"2865":1,"2870":5,"2871":6,"2873":1,"2875":1,"2877":1,"2880":1,"2882":1,"2886":2,"2894":1,"2901":1,"2902":2,"2910":1,"2917":1,"2919":1,"2920":1,"2927":1,"2928":1,"2929":1,"2930":1,"2933":1,"2934":1,"2936":1,"2942":3}}],["waz",{"2":{"2288":1,"2289":1}}],["warranty",{"2":{"1438":2,"2725":2}}],["warn",{"2":{"114":1,"160":1,"667":1,"2501":1}}],["warnings",{"0":{"2448":1,"2683":1},"2":{"95":1,"160":1,"170":1,"191":1,"211":1,"236":2,"308":1,"317":1,"408":1,"2410":1,"2448":2,"2897":1}}],["warning",{"2":{"23":1,"50":1,"107":1,"114":1,"134":1,"149":1,"153":1,"154":1,"160":1,"176":2,"182":1,"199":3,"228":1,"236":4,"266":1,"308":1,"346":3,"373":1,"490":1,"594":1,"595":1,"597":1,"598":1,"631":1,"667":1,"679":2,"683":1,"685":1,"745":1,"747":1,"750":1,"751":1,"752":1,"756":1,"1190":1,"1194":1,"1294":1,"1404":1,"1434":2,"1437":1,"1444":1,"1479":1,"1529":1,"1583":1,"1616":1,"1627":1,"1634":1,"1660":1,"1662":1,"1758":1,"1790":1,"1946":1,"1948":2,"2015":1,"2016":2,"2017":2,"2018":1,"2050":1,"2181":1,"2184":1,"2191":1,"2242":1,"2254":2,"2258":1,"2269":1,"2270":1,"2287":1,"2291":1,"2302":1,"2316":1,"2324":1,"2402":1,"2478":1,"2480":1,"2482":1,"2483":1,"2487":1,"2496":2,"2578":1,"2582":1,"2583":1,"2584":2,"2587":1,"2599":1,"2600":1,"2609":2,"2615":1,"2619":1,"2620":1,"2630":1,"2644":1,"2667":1,"2686":1,"2720":1,"2745":1,"2746":1,"2749":4,"2750":3,"2754":1,"2787":2,"2894":1,"2910":1,"2915":1,"2917":1,"2941":1}}],["watch",{"2":{"1362":1,"2187":1,"2582":1,"2934":1}}],["watchdog",{"2":{"191":1,"222":2,"294":1,"568":3,"2271":5,"2873":2}}],["waffling60",{"2":{"236":1}}],["waffling80",{"2":{"211":1}}],["waveshare",{"2":{"2749":3}}],["wavetable",{"2":{"1474":1}}],["waveforms",{"2":{"1680":1}}],["waveform",{"0":{"1680":1},"2":{"249":1,"1474":5,"1482":2,"1674":2,"1680":2}}],["wave",{"2":{"222":1,"266":1,"718":1,"1474":3,"1678":1,"1843":8,"2063":5,"2887":1}}],["walk",{"2":{"2403":1,"2550":1,"2614":1,"2625":1,"2723":1}}],["walter",{"2":{"191":1}}],["wallaby",{"2":{"143":2}}],["wako",{"2":{"1340":1,"2405":1}}],["waka60",{"2":{"266":1}}],["wakizashi40",{"2":{"211":1}}],["wakizashi",{"2":{"149":1}}],["wakes",{"2":{"646":1}}],["wakeup",{"0":{"647":1},"2":{"112":1,"114":1,"176":1,"199":2,"222":3,"236":1,"559":2,"572":1,"645":2,"646":1,"647":2,"648":2,"1638":3,"2750":1,"2875":2}}],["wake",{"0":{"646":1,"648":1,"1367":1,"1373":1},"1":{"647":1,"648":1},"2":{"62":1,"73":1,"231":1,"328":1,"559":1,"572":1,"1348":1,"1367":2,"2510":3,"2515":3}}],["wanted",{"2":{"1442":1,"1443":1,"1493":1,"2315":1}}],["wanten",{"2":{"143":2}}],["wanting",{"2":{"1249":1,"2310":1,"2424":1,"2699":1,"2774":1}}],["wants",{"2":{"222":1,"1512":1,"2573":1,"2629":1,"2932":1}}],["want",{"0":{"608":1,"1338":1,"1339":1},"1":{"1339":1},"2":{"125":1,"173":1,"185":1,"194":1,"232":1,"307":1,"397":1,"433":1,"472":1,"508":1,"509":1,"524":1,"541":1,"546":1,"548":1,"559":3,"562":3,"568":2,"594":1,"595":1,"596":1,"598":1,"607":1,"611":1,"624":1,"628":1,"631":5,"638":1,"643":1,"662":1,"666":1,"714":1,"715":1,"760":1,"1204":1,"1205":1,"1316":1,"1362":1,"1375":3,"1389":1,"1393":1,"1412":2,"1413":7,"1414":1,"1416":1,"1419":2,"1420":1,"1421":1,"1432":1,"1438":1,"1439":2,"1441":2,"1442":1,"1443":5,"1444":1,"1450":2,"1451":1,"1452":1,"1453":1,"1455":1,"1459":1,"1477":1,"1486":2,"1492":1,"1519":1,"1523":1,"1529":1,"1557":2,"1583":2,"1606":4,"1613":1,"1618":1,"1657":1,"1736":1,"1758":1,"1806":1,"1838":1,"1840":2,"1844":1,"1846":1,"1849":1,"1917":1,"1929":1,"1931":1,"1941":1,"1948":1,"1952":1,"1956":1,"1990":1,"2006":1,"2042":1,"2058":1,"2060":2,"2066":1,"2069":1,"2072":1,"2074":1,"2075":1,"2183":1,"2189":1,"2191":2,"2206":1,"2207":1,"2211":1,"2244":1,"2253":1,"2257":1,"2273":1,"2279":1,"2283":1,"2286":2,"2290":1,"2293":1,"2294":1,"2302":4,"2303":1,"2310":4,"2324":1,"2374":2,"2400":1,"2403":1,"2410":2,"2411":1,"2412":1,"2416":1,"2418":1,"2420":1,"2422":1,"2423":2,"2424":1,"2428":1,"2445":1,"2446":1,"2467":1,"2475":1,"2489":1,"2548":1,"2550":1,"2577":1,"2586":1,"2587":1,"2588":1,"2604":1,"2607":1,"2621":4,"2628":1,"2629":1,"2630":1,"2633":1,"2644":2,"2658":1,"2664":1,"2667":1,"2683":1,"2687":1,"2695":1,"2724":1,"2747":1,"2776":1,"2779":2,"2780":2,"2781":1,"2784":1,"2879":1,"2883":2,"2901":1,"2915":1,"2917":1,"2934":1,"2937":1,"2942":2}}],["waits",{"2":{"572":1,"656":1,"1407":1,"1459":2,"1724":1,"1726":1,"2387":1,"2392":1,"2902":1}}],["waiting",{"2":{"176":1,"191":1,"230":1,"371":1,"568":1,"580":1,"1326":1,"1329":2,"1459":1,"1656":1,"2271":1,"2272":1,"2584":1}}],["wait",{"2":{"92":1,"94":2,"112":1,"113":1,"114":4,"149":1,"176":3,"222":2,"263":1,"266":1,"308":1,"392":1,"572":2,"611":1,"645":1,"655":1,"769":2,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"1407":1,"1466":1,"1585":1,"1846":1,"1988":1,"2069":1,"2185":1,"2187":6,"2215":1,"2224":1,"2228":1,"2302":1,"2308":4,"2310":1,"2320":1,"2376":1,"2379":2,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":4,"2395":4,"2397":4,"2605":1,"2719":1,"2747":1,"2865":1,"2873":2,"2875":3,"2910":1,"2911":1}}],["waaffle",{"2":{"86":4}}],["wasn",{"2":{"1606":1,"2903":1}}],["wasting",{"2":{"487":1}}],["wasdat",{"2":{"57":4,"160":1}}],["was",{"0":{"408":1},"1":{"409":1,"410":1,"411":1,"412":1},"2":{"6":1,"8":1,"10":1,"11":1,"113":1,"125":1,"174":1,"179":1,"185":1,"189":2,"194":1,"214":1,"215":1,"243":1,"245":1,"251":1,"255":1,"263":1,"271":1,"293":1,"305":1,"314":1,"331":1,"341":1,"380":1,"383":1,"408":1,"424":2,"539":1,"562":1,"586":1,"602":1,"613":2,"663":1,"720":1,"1201":1,"1250":1,"1340":1,"1347":2,"1413":1,"1519":1,"1529":1,"1611":2,"1751":1,"1754":1,"1756":1,"1759":1,"1820":1,"1947":2,"1948":7,"1956":1,"2043":1,"2156":1,"2160":4,"2274":2,"2283":4,"2288":1,"2303":2,"2312":1,"2359":1,"2361":1,"2422":1,"2449":1,"2459":1,"2552":1,"2567":1,"2600":1,"2621":1,"2627":4,"2633":1,"2669":1,"2699":1,"2748":1,"2796":1}}],["ways",{"2":{"303":1,"306":1,"315":1,"393":1,"489":1,"494":1,"495":1,"496":1,"506":1,"566":1,"597":1,"614":1,"617":1,"674":1,"1345":1,"1406":2,"1412":1,"1416":1,"1417":1,"1421":1,"1444":1,"1523":1,"1587":1,"1790":1,"2033":1,"2263":1,"2285":1,"2415":2,"2428":1,"2445":1,"2474":1,"2549":1,"2605":1,"2625":2}}],["way",{"2":{"0":1,"9":1,"19":1,"39":1,"50":1,"52":1,"120":1,"124":1,"154":2,"194":2,"222":1,"254":1,"285":2,"393":1,"410":1,"434":1,"490":1,"493":2,"550":1,"591":1,"617":2,"641":1,"693":1,"747":1,"1280":1,"1308":1,"1309":1,"1412":1,"1418":1,"1427":1,"1435":1,"1441":1,"1443":2,"1472":1,"1485":1,"1528":1,"1532":2,"1547":1,"1583":1,"1617":1,"1736":1,"1756":1,"1758":1,"1769":1,"1805":1,"1840":1,"1929":1,"2016":1,"2017":1,"2021":1,"2025":1,"2051":1,"2060":1,"2162":1,"2178":1,"2270":1,"2291":1,"2324":1,"2372":1,"2384":1,"2418":1,"2420":1,"2459":3,"2474":1,"2492":1,"2497":1,"2549":1,"2552":1,"2569":1,"2587":1,"2606":1,"2627":2,"2629":1,"2633":1,"2656":1,"2683":1,"2693":1,"2719":1,"2724":1,"2743":1,"2787":1,"2788":1,"2865":1,"2879":1,"2895":1,"2913":1,"2917":1,"2919":1,"2937":1,"2940":1}}],["wikipedia",{"2":{"1375":1,"1929":1,"2459":1}}],["wiki",{"2":{"572":1,"1979":1,"2292":1}}],["wipe",{"2":{"2783":1}}],["wiper",{"2":{"1766":1}}],["wip",{"2":{"277":1}}],["wiping",{"0":{"2783":1},"2":{"191":1,"2420":1}}],["witf",{"2":{"211":1}}],["within",{"2":{"31":1,"34":1,"50":1,"67":1,"75":1,"86":1,"94":1,"102":1,"122":1,"124":1,"126":1,"132":1,"133":1,"134":1,"141":2,"143":1,"149":2,"159":1,"168":1,"181":1,"190":1,"191":1,"195":1,"197":1,"199":1,"201":1,"222":1,"231":1,"236":2,"254":1,"266":1,"285":2,"288":1,"293":1,"297":1,"305":1,"307":1,"308":1,"312":1,"314":1,"317":1,"373":1,"393":1,"423":1,"430":1,"489":1,"492":1,"510":1,"527":1,"568":1,"637":2,"667":1,"668":1,"746":1,"747":1,"752":1,"1324":1,"1385":1,"1417":1,"1425":1,"1455":1,"1478":1,"1481":1,"1492":1,"1522":2,"1584":1,"1591":1,"1596":1,"1606":1,"1608":1,"1609":1,"1616":1,"1626":1,"1627":1,"1628":1,"1630":1,"1634":1,"1645":1,"1675":1,"1844":1,"1859":1,"1861":1,"1953":1,"2002":1,"2066":1,"2085":1,"2087":1,"2167":1,"2181":1,"2255":1,"2260":1,"2271":1,"2303":1,"2310":1,"2311":1,"2379":1,"2406":1,"2407":2,"2411":1,"2468":1,"2510":1,"2515":1,"2549":1,"2587":1,"2591":1,"2656":1,"2704":2,"2714":1,"2721":2,"2744":2,"2765":1,"2768":1,"2861":1,"2877":1,"2895":1,"2896":3,"2908":3,"2909":2,"2910":1,"2911":2,"2914":1,"2925":1,"2928":1,"2929":1,"2933":1}}],["without",{"0":{"2075":1},"2":{"23":1,"49":2,"70":1,"80":1,"112":1,"125":1,"152":2,"164":1,"173":1,"176":1,"185":1,"194":1,"228":1,"273":2,"276":1,"285":1,"308":1,"328":1,"346":1,"408":1,"427":1,"445":1,"471":1,"487":1,"537":1,"548":1,"557":1,"568":1,"572":1,"607":1,"617":1,"639":3,"642":1,"760":1,"1364":1,"1375":4,"1418":1,"1438":2,"1443":1,"1479":1,"1497":1,"1512":4,"1523":1,"1550":1,"1556":1,"1594":1,"1617":1,"1657":1,"1747":1,"1804":2,"1844":1,"1932":1,"1958":1,"2013":1,"2016":1,"2030":1,"2066":1,"2075":1,"2162":1,"2171":1,"2175":2,"2188":1,"2219":1,"2265":1,"2268":1,"2271":1,"2272":1,"2284":1,"2285":1,"2287":1,"2290":1,"2295":1,"2324":2,"2383":1,"2398":1,"2400":2,"2410":2,"2411":1,"2445":1,"2459":1,"2464":1,"2496":1,"2567":32,"2583":1,"2633":1,"2643":1,"2674":1,"2684":1,"2721":1,"2725":2,"2728":1,"2744":1,"2750":4,"2778":1,"2793":1,"2898":1,"2911":1,"2917":3,"2928":1,"2942":1}}],["with",{"0":{"1":1,"27":1,"521":1,"682":1,"1321":1,"1322":1,"1323":1,"1339":1,"1356":1,"1418":1,"1427":1,"1741":1,"1742":1,"1743":1,"1765":1,"1935":1,"2223":1,"2227":1,"2286":1,"2287":1,"2293":1,"2403":1,"2591":1,"2606":1,"2624":1,"2667":1},"1":{"683":1,"684":1,"685":1,"686":1,"1419":1,"1420":1,"1421":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"2224":1,"2228":1,"2288":1,"2289":1,"2290":1,"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1,"2607":1,"2608":1,"2625":1},"2":{"1":1,"5":1,"6":2,"7":2,"8":1,"11":1,"25":1,"27":1,"30":2,"31":5,"33":2,"34":2,"36":1,"49":3,"50":1,"60":1,"69":1,"72":1,"77":1,"83":1,"84":1,"86":1,"92":1,"93":1,"98":4,"100":1,"107":1,"111":1,"114":11,"119":2,"123":1,"124":1,"126":1,"131":2,"134":6,"138":1,"149":7,"153":1,"154":1,"156":1,"157":1,"160":4,"163":2,"166":1,"167":1,"172":1,"173":3,"175":2,"176":9,"182":5,"186":1,"189":1,"190":1,"191":6,"194":2,"195":1,"196":1,"198":1,"199":7,"201":1,"211":9,"218":1,"221":1,"222":5,"230":2,"231":2,"236":1,"240":3,"241":1,"243":1,"244":1,"249":8,"253":1,"254":1,"263":1,"264":1,"265":1,"266":4,"268":1,"270":1,"273":3,"274":1,"276":1,"277":1,"279":2,"281":1,"282":1,"283":1,"284":2,"285":7,"288":1,"289":2,"292":1,"293":1,"294":4,"301":1,"302":1,"305":1,"307":1,"308":1,"312":2,"313":1,"314":2,"320":3,"326":1,"327":1,"328":3,"331":1,"338":1,"347":1,"348":2,"350":1,"360":1,"373":2,"378":1,"380":1,"387":2,"396":1,"397":4,"403":1,"405":1,"406":1,"408":1,"414":1,"418":1,"419":1,"420":1,"423":1,"424":2,"427":8,"428":2,"431":1,"432":1,"434":1,"437":2,"446":1,"447":1,"448":1,"457":3,"468":1,"473":3,"485":1,"487":1,"488":1,"492":2,"494":1,"510":3,"512":1,"513":1,"519":1,"520":2,"522":3,"529":2,"535":2,"539":1,"540":1,"544":1,"546":2,"548":2,"550":2,"552":1,"559":7,"562":1,"565":1,"566":3,"567":1,"568":2,"571":1,"572":2,"579":2,"598":2,"602":1,"603":1,"608":1,"609":2,"611":6,"612":2,"613":4,"616":2,"617":3,"619":1,"620":1,"625":2,"641":1,"642":1,"644":1,"663":1,"667":1,"668":1,"670":2,"674":1,"676":2,"681":1,"682":2,"683":2,"684":2,"685":2,"686":2,"690":1,"692":1,"700":1,"711":1,"713":4,"714":1,"716":1,"718":2,"719":2,"727":1,"751":3,"754":1,"758":3,"782":1,"785":1,"788":1,"791":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1189":1,"1190":1,"1194":1,"1197":4,"1200":1,"1201":2,"1202":2,"1204":1,"1206":1,"1207":1,"1212":1,"1244":1,"1269":1,"1281":1,"1283":2,"1285":2,"1308":1,"1309":1,"1312":4,"1313":2,"1315":1,"1316":2,"1329":3,"1330":2,"1332":1,"1333":1,"1336":1,"1339":1,"1340":2,"1345":2,"1356":1,"1359":1,"1362":1,"1363":1,"1365":1,"1368":1,"1369":1,"1374":2,"1375":8,"1377":1,"1378":2,"1385":1,"1387":1,"1392":1,"1395":1,"1397":1,"1398":1,"1402":1,"1403":1,"1406":2,"1407":1,"1409":1,"1410":2,"1411":1,"1412":1,"1413":1,"1416":4,"1418":1,"1419":2,"1425":1,"1427":2,"1429":1,"1432":1,"1433":1,"1434":3,"1435":1,"1436":3,"1438":3,"1443":3,"1450":1,"1452":1,"1453":1,"1454":1,"1459":1,"1460":1,"1461":1,"1466":1,"1468":1,"1469":2,"1471":2,"1472":2,"1473":1,"1474":3,"1476":2,"1478":1,"1479":1,"1480":2,"1484":3,"1492":2,"1493":1,"1494":1,"1497":3,"1512":2,"1516":4,"1517":3,"1519":1,"1521":2,"1526":1,"1529":1,"1532":14,"1533":2,"1559":1,"1560":2,"1583":1,"1586":1,"1588":2,"1589":1,"1591":3,"1594":1,"1596":2,"1597":1,"1598":1,"1599":2,"1603":2,"1604":3,"1606":2,"1609":1,"1612":2,"1613":1,"1614":1,"1616":1,"1619":6,"1621":1,"1625":1,"1627":1,"1628":2,"1633":1,"1634":1,"1635":2,"1636":2,"1639":1,"1645":1,"1656":1,"1658":1,"1659":2,"1660":1,"1661":1,"1665":2,"1666":1,"1672":1,"1675":1,"1678":1,"1680":1,"1682":1,"1683":1,"1684":2,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1691":1,"1736":2,"1740":1,"1746":5,"1747":1,"1749":2,"1751":2,"1752":1,"1756":2,"1757":3,"1758":1,"1761":1,"1765":1,"1767":3,"1768":1,"1769":1,"1770":1,"1771":1,"1795":1,"1798":3,"1804":2,"1840":1,"1844":2,"1845":1,"1847":1,"1849":1,"1913":1,"1928":1,"1930":1,"1934":2,"1935":1,"1939":2,"1940":2,"1941":1,"1943":1,"1946":7,"1947":2,"1948":2,"1954":2,"1956":1,"1986":1,"1990":1,"1993":1,"2000":1,"2001":1,"2002":1,"2006":2,"2010":1,"2012":2,"2014":1,"2016":3,"2017":1,"2018":1,"2025":2,"2027":1,"2029":1,"2030":3,"2033":1,"2038":1,"2039":1,"2047":1,"2050":2,"2052":3,"2060":1,"2063":2,"2065":2,"2066":2,"2068":1,"2070":1,"2072":1,"2073":2,"2075":1,"2156":2,"2159":3,"2160":1,"2162":1,"2165":1,"2166":1,"2167":3,"2170":1,"2178":2,"2179":1,"2181":1,"2187":1,"2189":4,"2192":1,"2206":1,"2209":1,"2210":1,"2212":2,"2215":2,"2221":1,"2223":1,"2225":1,"2227":2,"2240":2,"2241":2,"2242":1,"2244":1,"2249":7,"2251":2,"2252":8,"2253":3,"2257":1,"2260":1,"2265":1,"2266":9,"2267":2,"2268":1,"2270":4,"2271":4,"2272":1,"2273":1,"2279":1,"2282":1,"2283":1,"2284":2,"2285":4,"2286":1,"2287":1,"2291":2,"2294":1,"2301":1,"2302":5,"2303":1,"2309":1,"2310":3,"2312":6,"2317":1,"2319":1,"2320":3,"2323":3,"2324":2,"2367":2,"2368":3,"2375":1,"2376":2,"2377":2,"2378":1,"2379":3,"2380":2,"2381":1,"2382":2,"2383":1,"2384":3,"2386":3,"2387":1,"2388":2,"2389":1,"2390":1,"2391":2,"2392":1,"2393":1,"2395":1,"2397":3,"2400":1,"2403":5,"2404":4,"2405":1,"2410":3,"2411":4,"2415":1,"2416":2,"2417":1,"2418":4,"2420":2,"2421":1,"2424":1,"2425":1,"2427":2,"2434":1,"2435":2,"2443":1,"2450":1,"2457":1,"2459":1,"2462":1,"2464":1,"2466":1,"2468":1,"2470":1,"2475":1,"2476":1,"2479":1,"2483":2,"2489":2,"2492":1,"2497":1,"2498":1,"2499":2,"2502":1,"2513":1,"2528":1,"2547":1,"2548":2,"2550":1,"2552":1,"2553":2,"2556":1,"2559":1,"2562":2,"2563":1,"2564":1,"2567":8,"2568":2,"2569":1,"2575":1,"2576":3,"2577":1,"2580":1,"2582":2,"2583":1,"2585":1,"2591":4,"2592":1,"2593":1,"2594":1,"2595":1,"2598":1,"2600":5,"2601":2,"2606":1,"2607":1,"2610":2,"2612":3,"2621":2,"2622":2,"2626":2,"2627":5,"2628":1,"2630":4,"2632":1,"2633":1,"2644":1,"2645":1,"2646":1,"2648":1,"2652":1,"2655":2,"2662":1,"2664":1,"2667":3,"2668":1,"2669":1,"2671":1,"2675":1,"2676":3,"2677":1,"2679":1,"2683":1,"2684":2,"2698":4,"2700":2,"2702":1,"2703":1,"2704":1,"2706":1,"2707":2,"2711":1,"2712":1,"2714":1,"2718":2,"2719":6,"2720":1,"2721":6,"2722":1,"2723":1,"2725":1,"2726":2,"2728":1,"2729":1,"2731":1,"2739":2,"2743":2,"2746":1,"2748":1,"2749":24,"2750":12,"2751":3,"2754":2,"2757":1,"2760":1,"2768":1,"2769":1,"2771":1,"2772":1,"2773":3,"2783":1,"2788":1,"2789":1,"2792":1,"2807":1,"2810":1,"2820":1,"2821":1,"2828":1,"2843":2,"2844":2,"2847":1,"2862":1,"2864":1,"2871":1,"2877":1,"2878":1,"2879":1,"2883":2,"2888":1,"2889":1,"2890":1,"2895":1,"2896":1,"2898":1,"2901":6,"2903":1,"2908":1,"2909":1,"2910":2,"2911":1,"2914":11,"2915":5,"2917":2,"2919":3,"2920":1,"2922":1,"2925":1,"2926":1,"2927":1,"2930":3,"2931":1,"2938":1,"2939":3,"2941":1,"2942":3}}],["wild",{"2":{"2301":1}}],["wildcard",{"2":{"467":1}}],["wildcards",{"2":{"431":3}}],["wilba",{"2":{"191":1,"199":1,"211":23,"2721":3}}],["willing",{"2":{"2724":1}}],["willoucom",{"2":{"222":1}}],["will",{"0":{"397":1,"2896":1,"2897":1},"2":{"0":1,"5":1,"7":1,"9":1,"10":1,"14":1,"19":1,"21":1,"22":1,"23":3,"39":1,"45":1,"49":1,"52":1,"70":1,"88":3,"89":1,"90":3,"103":1,"104":3,"105":2,"107":1,"110":2,"120":1,"126":1,"127":3,"132":3,"152":1,"153":1,"156":1,"170":3,"182":2,"195":2,"198":1,"201":1,"203":2,"206":1,"209":3,"213":3,"218":1,"220":1,"228":1,"230":1,"240":2,"255":1,"256":1,"262":1,"263":2,"265":3,"272":1,"273":1,"275":1,"276":1,"283":1,"303":1,"306":1,"307":5,"327":1,"332":1,"347":1,"359":1,"372":1,"378":1,"387":3,"390":2,"392":1,"393":2,"397":1,"401":1,"406":5,"411":1,"415":1,"416":1,"417":1,"418":1,"421":2,"427":2,"428":1,"430":1,"434":1,"435":1,"438":1,"440":1,"442":2,"443":1,"444":1,"461":1,"472":1,"481":1,"486":2,"487":4,"488":1,"490":1,"492":2,"498":1,"503":2,"504":1,"505":1,"507":2,"509":1,"511":1,"521":3,"535":2,"541":2,"545":1,"553":1,"554":1,"558":1,"559":1,"560":1,"561":1,"563":2,"569":1,"572":2,"576":1,"579":2,"582":1,"583":1,"584":1,"587":1,"590":1,"591":1,"594":1,"595":1,"597":1,"598":2,"599":1,"611":2,"613":1,"617":2,"619":1,"624":1,"625":1,"627":1,"628":3,"631":1,"637":4,"641":1,"643":1,"645":1,"647":2,"649":3,"650":1,"651":1,"654":1,"655":3,"656":1,"657":1,"663":1,"664":1,"670":1,"675":2,"676":2,"677":1,"682":1,"683":2,"685":2,"696":3,"698":2,"718":1,"720":1,"743":4,"746":1,"747":1,"751":3,"754":1,"763":1,"794":1,"1200":1,"1201":1,"1206":2,"1249":1,"1262":1,"1273":1,"1278":1,"1285":1,"1289":1,"1294":1,"1297":1,"1309":1,"1312":1,"1316":1,"1317":1,"1319":1,"1326":1,"1329":2,"1333":1,"1344":1,"1345":4,"1362":2,"1363":1,"1364":1,"1365":1,"1374":2,"1377":1,"1385":1,"1387":1,"1395":1,"1404":1,"1406":4,"1407":2,"1409":1,"1413":6,"1416":3,"1417":2,"1419":2,"1421":3,"1425":1,"1427":1,"1434":1,"1435":2,"1436":1,"1437":2,"1438":1,"1441":1,"1443":7,"1444":1,"1450":1,"1452":1,"1458":1,"1462":1,"1463":1,"1464":1,"1466":5,"1477":1,"1479":2,"1484":2,"1485":2,"1486":2,"1487":4,"1492":2,"1493":3,"1495":1,"1497":4,"1512":5,"1514":1,"1516":1,"1520":1,"1521":3,"1522":1,"1526":2,"1527":2,"1529":2,"1550":1,"1552":1,"1583":2,"1587":2,"1596":1,"1597":1,"1598":1,"1599":1,"1603":1,"1614":5,"1616":1,"1621":1,"1628":1,"1631":1,"1633":1,"1641":1,"1655":1,"1660":2,"1661":1,"1662":3,"1664":1,"1665":1,"1666":2,"1667":3,"1669":1,"1670":1,"1672":1,"1674":1,"1675":4,"1679":1,"1681":4,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1707":1,"1723":2,"1732":2,"1735":1,"1746":7,"1751":5,"1752":3,"1754":2,"1755":1,"1756":3,"1758":3,"1759":1,"1765":2,"1790":1,"1792":3,"1794":1,"1795":1,"1805":1,"1806":1,"1807":2,"1846":2,"1859":1,"1861":1,"1913":2,"1917":1,"1920":1,"1929":3,"1930":3,"1934":2,"1941":2,"1943":1,"1947":1,"1948":2,"1951":1,"1988":1,"1990":4,"2006":2,"2009":1,"2015":1,"2016":3,"2017":2,"2018":1,"2019":1,"2020":1,"2021":3,"2025":3,"2027":1,"2029":2,"2030":3,"2031":3,"2032":2,"2037":1,"2039":2,"2043":1,"2045":4,"2047":1,"2050":1,"2064":1,"2065":3,"2069":2,"2073":1,"2074":1,"2075":1,"2085":1,"2087":1,"2165":1,"2167":1,"2172":1,"2173":1,"2182":1,"2188":1,"2189":4,"2191":3,"2208":1,"2209":1,"2210":2,"2212":1,"2214":1,"2215":1,"2242":1,"2252":1,"2254":1,"2257":2,"2261":1,"2264":1,"2265":3,"2266":2,"2268":2,"2269":1,"2270":1,"2271":4,"2273":1,"2279":2,"2281":1,"2283":2,"2285":2,"2287":3,"2290":1,"2291":1,"2293":3,"2294":2,"2297":1,"2302":6,"2310":3,"2312":1,"2316":1,"2318":1,"2322":4,"2323":3,"2324":3,"2340":1,"2371":1,"2372":5,"2375":3,"2376":2,"2377":1,"2380":1,"2383":1,"2384":2,"2390":1,"2398":1,"2400":3,"2403":1,"2408":1,"2409":1,"2410":6,"2411":7,"2412":1,"2414":1,"2415":1,"2416":3,"2419":1,"2420":3,"2421":7,"2422":1,"2424":1,"2427":1,"2428":1,"2433":1,"2435":2,"2439":1,"2445":2,"2448":1,"2459":5,"2460":1,"2464":2,"2475":1,"2476":1,"2477":1,"2481":1,"2483":1,"2490":2,"2494":1,"2495":1,"2499":3,"2500":1,"2515":1,"2550":1,"2551":1,"2554":2,"2557":1,"2560":2,"2562":1,"2568":1,"2569":3,"2570":2,"2571":3,"2573":1,"2575":1,"2578":1,"2580":2,"2582":2,"2583":2,"2584":2,"2585":1,"2588":1,"2589":2,"2590":2,"2591":2,"2594":2,"2595":1,"2596":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":2,"2603":2,"2605":3,"2606":1,"2607":1,"2608":1,"2609":2,"2610":2,"2612":1,"2614":2,"2615":1,"2617":1,"2619":2,"2621":5,"2625":1,"2627":1,"2628":1,"2630":3,"2633":1,"2634":1,"2643":4,"2644":2,"2645":1,"2649":1,"2650":2,"2651":1,"2652":2,"2655":1,"2656":2,"2658":1,"2660":1,"2662":2,"2667":5,"2680":1,"2683":1,"2697":1,"2700":1,"2702":4,"2704":1,"2706":1,"2707":1,"2710":3,"2718":1,"2719":5,"2720":2,"2721":6,"2722":3,"2723":1,"2724":1,"2725":1,"2744":2,"2746":2,"2747":4,"2748":1,"2749":1,"2750":7,"2754":1,"2774":1,"2778":3,"2780":1,"2788":4,"2806":1,"2835":1,"2845":2,"2862":1,"2864":1,"2871":1,"2882":6,"2892":1,"2895":2,"2896":4,"2897":2,"2901":3,"2902":1,"2907":2,"2908":6,"2909":3,"2910":7,"2914":3,"2917":7,"2923":1,"2927":4,"2928":2,"2929":1,"2930":3,"2932":1,"2933":1,"2937":1,"2938":2,"2942":3}}],["wise",{"2":{"753":1,"765":1,"1245":1,"1266":1}}],["wisdom",{"2":{"179":1}}],["wishes",{"2":{"1628":1}}],["wished",{"2":{"587":1}}],["wishing",{"2":{"284":1,"484":1}}],["wish",{"2":{"1":1,"152":1,"206":1,"231":1,"232":1,"265":1,"427":1,"557":1,"1438":1,"1627":1,"1662":1,"1747":1,"1845":1,"2051":1,"2068":1,"2181":1,"2260":1,"2290":1,"2409":2,"2567":2,"2583":1,"2584":2,"2585":1,"2606":1,"2669":1,"2670":1,"2696":1}}],["widht",{"2":{"1521":2}}],["width",{"2":{"111":1,"114":1,"677":1,"751":1,"752":1,"753":1,"1521":2,"1547":1,"1933":1,"1943":2,"1946":3,"1947":3,"1948":1,"2002":2,"2281":2,"2282":3,"2749":16,"2750":8,"2761":4,"2767":1,"2788":1,"2862":1,"2882":1}}],["widely",{"2":{"2646":1,"2702":1}}],["wider",{"2":{"408":1,"520":1,"522":2}}],["widen",{"2":{"191":1}}],["wide",{"0":{"508":1,"509":1},"2":{"77":1,"188":1,"677":1,"1843":3,"2063":3,"2656":1,"2698":1,"2750":3,"2792":1,"2877":1,"2887":1}}],["winc",{"2":{"2320":1,"2321":1,"2325":1,"2337":1,"2545":1}}],["wincompose",{"2":{"191":1,"2320":1,"2321":1,"2324":4,"2325":2,"2337":1,"2338":1,"2339":1,"2545":2}}],["window",{"2":{"387":3,"406":2,"685":1,"1205":1,"1604":2,"1606":2,"1669":1,"1929":1,"2495":1,"2550":1,"2575":1,"2580":1,"2609":1,"2656":1,"2662":2,"2693":1}}],["windows",{"0":{"240":1,"382":1,"2402":1,"2659":1},"1":{"2660":1,"2661":1,"2662":1},"2":{"73":1,"158":1,"240":1,"382":2,"387":1,"456":1,"521":1,"682":1,"684":1,"686":1,"1315":1,"1323":1,"1348":1,"1358":1,"1367":1,"1466":1,"1612":2,"1669":1,"1670":1,"1754":1,"1951":1,"1952":1,"1958":1,"2050":1,"2321":1,"2324":5,"2325":3,"2383":1,"2393":1,"2395":1,"2397":1,"2400":1,"2402":6,"2491":1,"2495":2,"2499":1,"2507":2,"2509":1,"2515":4,"2545":3,"2557":1,"2559":2,"2560":1,"2592":1,"2598":2,"2606":1,"2607":1,"2612":1,"2619":1,"2620":1,"2657":1,"2660":3,"2662":2,"2667":4,"2710":1,"2732":1}}],["winusb",{"2":{"240":2,"686":13}}],["wings",{"2":{"211":2,"266":1}}],["wings42",{"2":{"143":6}}],["winkeyless",{"2":{"211":1}}],["winkeys",{"2":{"211":1}}],["winni",{"2":{"211":1}}],["winry25",{"2":{"317":1}}],["winry25tc",{"2":{"143":2,"149":1}}],["winry315",{"2":{"277":1}}],["winry",{"2":{"143":1,"149":1}}],["wins",{"2":{"70":13}}],["win",{"2":{"70":1,"134":1,"266":1,"1667":1,"2321":1,"2325":1,"2535":1,"2545":1,"2559":1}}],["wired",{"2":{"563":2,"1310":1,"1473":1,"1552":1,"1564":1,"1624":1,"1663":2,"2000":1,"2258":1,"2271":1,"2422":1,"2478":1,"2480":1,"2482":1,"2566":1,"2567":11,"2569":2,"2837":1,"2841":1,"2920":1}}],["wires",{"2":{"390":1,"1189":1,"1197":1,"2257":2,"2258":4,"2259":1,"2260":1,"2420":1,"2422":5,"2423":1,"2424":4,"2427":2,"2476":2}}],["wireless",{"0":{"2366":1,"2521":1,"2737":1,"2852":1},"1":{"2367":1,"2368":1,"2369":1,"2370":1},"2":{"241":1,"2370":1,"2521":2,"2566":1,"2567":20,"2569":2,"2721":10,"2729":1,"2799":2,"2852":1}}],["wire",{"2":{"45":2,"114":1,"390":1,"1189":5,"1191":1,"1194":1,"1280":2,"1284":1,"1392":1,"2178":2,"2208":1,"2274":1,"2414":3,"2415":1,"2416":3,"2418":9,"2420":1,"2421":2,"2422":5,"2427":1,"2429":1,"2459":3,"2461":1}}],["wiring",{"0":{"45":1,"1469":1,"1472":1,"1476":1,"2259":1,"2260":1,"2413":1,"2418":1,"2423":1,"2478":1,"2480":1,"2482":1,"2484":1,"2486":1,"2488":1,"2500":1},"1":{"1473":1,"2414":1,"2415":1,"2416":1,"2417":1,"2418":1,"2419":2,"2420":2,"2421":2,"2422":2,"2423":1,"2424":2,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1},"2":{"45":3,"134":1,"713":1,"1472":1,"1476":1,"1675":1,"1948":2,"2014":1,"2063":1,"2283":2,"2415":1,"2418":1,"2420":1,"2422":1,"2427":1,"2429":1,"2476":1,"2501":1,"2667":1,"2714":1,"2821":1}}],["welcomed",{"2":{"2724":1}}],["welcome",{"2":{"2652":1}}],["well",{"2":{"49":1,"50":2,"90":1,"107":1,"131":1,"132":1,"152":1,"153":1,"173":1,"198":1,"201":1,"213":1,"215":1,"224":1,"229":1,"232":1,"243":1,"249":1,"263":1,"265":1,"272":1,"298":1,"331":1,"387":1,"392":1,"431":1,"492":1,"569":1,"609":1,"617":1,"663":1,"686":1,"696":1,"753":1,"1195":1,"1198":1,"1378":1,"1415":1,"1428":1,"1443":1,"1477":1,"1484":1,"1492":1,"1497":1,"1528":1,"1534":1,"1588":1,"1630":1,"1675":1,"1756":1,"1757":1,"1792":1,"1798":1,"2014":1,"2017":1,"2045":1,"2064":1,"2166":1,"2248":2,"2254":1,"2285":1,"2291":1,"2303":1,"2310":1,"2322":1,"2377":1,"2384":1,"2400":1,"2411":2,"2415":1,"2432":1,"2446":1,"2495":1,"2501":1,"2528":1,"2567":1,"2569":1,"2584":1,"2700":1,"2744":1,"2746":2,"2887":1,"2920":1}}],["wetting",{"2":{"2420":1}}],["wet",{"2":{"2420":1}}],["wete",{"2":{"197":4}}],["west",{"2":{"1769":1,"1993":1}}],["westberrytech",{"0":{"514":1},"2":{"130":1,"134":1}}],["week",{"0":{"401":1},"2":{"406":1}}],["weeks",{"0":{"399":1,"400":1},"2":{"228":1,"406":7,"2567":1}}],["webhost",{"2":{"2627":3}}],["webpage",{"2":{"1312":1}}],["webserver",{"2":{"458":1}}],["website",{"2":{"70":1,"2418":1,"2425":1,"2427":1,"2429":1,"2437":1,"2810":1}}],["web",{"2":{"358":1,"374":1,"574":1,"614":1,"659":1,"1379":1,"2310":1,"2430":1,"2593":1}}],["weikav",{"2":{"2567":1}}],["weighting",{"2":{"2000":1}}],["weight",{"2":{"1678":2,"1679":3,"2293":1}}],["weights",{"2":{"249":1,"2000":6}}],["weird",{"2":{"1484":1,"2783":1}}],["weirdo",{"2":{"143":7,"149":2,"211":1}}],["werror=array",{"2":{"160":1}}],["weren",{"2":{"199":1}}],["were",{"2":{"98":1,"128":1,"131":1,"166":1,"175":1,"186":1,"188":1,"204":1,"229":1,"234":2,"244":1,"251":1,"254":1,"256":1,"263":2,"268":1,"272":1,"273":1,"279":1,"283":1,"520":1,"522":1,"1395":1,"1419":1,"1493":1,"1511":1,"1532":1,"1586":1,"1598":1,"1631":1,"1632":1,"1756":1,"1990":1,"2027":1,"2156":1,"2160":1,"2167":1,"2168":1,"2183":1,"2273":1,"2569":1,"2582":1,"2627":2,"2748":1,"2793":1,"2887":1,"2908":1}}],["went",{"2":{"125":1,"185":1,"1947":1}}],["wealthier",{"2":{"1522":2}}],["weact",{"0":{"2672":1},"1":{"2673":1,"2674":1,"2675":1,"2676":1,"2677":1,"2678":1,"2679":1,"2680":1},"2":{"308":1,"513":2,"2672":3,"2680":1,"2888":1}}],["wear",{"0":{"174":1,"749":1,"750":1,"751":1,"752":1,"753":1,"754":1},"1":{"751":1,"752":1,"753":1,"754":1},"2":{"114":1,"174":1,"176":4,"191":1,"211":1,"236":5,"249":1,"277":1,"308":1,"333":1,"743":2,"749":3,"750":6,"751":8,"752":7,"753":5,"2857":3}}],["weakly",{"2":{"769":1,"794":1,"1585":1,"2337":1,"2338":1,"2339":1}}],["weak",{"0":{"1359":1},"2":{"65":1,"93":1,"114":1,"149":2,"191":1,"222":1,"328":1,"568":1,"623":4,"1359":7,"1441":2,"1443":1,"1511":2,"1526":1,"1594":2,"1683":1,"1948":2,"2269":1,"2283":4,"2374":3,"2721":1}}],["we",{"0":{"1490":1,"2431":1,"2920":1},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1},"2":{"0":1,"9":1,"19":1,"39":1,"50":2,"51":1,"52":1,"83":1,"89":1,"92":1,"93":1,"111":1,"112":1,"172":1,"188":2,"194":2,"213":1,"224":1,"228":1,"245":2,"263":1,"273":1,"277":1,"283":1,"370":1,"378":1,"387":7,"390":3,"393":3,"398":1,"400":1,"401":1,"402":1,"414":1,"415":1,"419":1,"487":6,"490":1,"493":1,"497":1,"499":1,"502":1,"503":2,"504":1,"520":6,"521":1,"522":5,"523":1,"524":4,"526":1,"529":1,"535":1,"537":3,"538":1,"545":1,"546":2,"547":2,"548":1,"550":1,"551":1,"552":1,"553":1,"569":1,"587":2,"594":1,"606":1,"607":2,"608":1,"613":2,"614":1,"616":1,"617":3,"618":2,"619":1,"625":2,"659":1,"663":4,"668":2,"669":1,"682":1,"698":4,"718":1,"1310":1,"1317":1,"1332":1,"1337":1,"1338":1,"1339":2,"1379":1,"1393":1,"1407":1,"1413":5,"1418":1,"1425":2,"1443":1,"1450":8,"1451":1,"1466":1,"1493":7,"1512":1,"1519":4,"1522":1,"1532":7,"1533":1,"1612":2,"1616":1,"1617":1,"1622":1,"1655":1,"1941":2,"1946":1,"1947":2,"1953":1,"2027":2,"2052":1,"2189":4,"2190":1,"2191":2,"2254":1,"2279":2,"2303":3,"2309":2,"2312":4,"2377":1,"2384":1,"2403":1,"2415":1,"2422":1,"2424":2,"2430":1,"2432":2,"2433":2,"2443":1,"2444":1,"2445":1,"2447":3,"2453":1,"2459":9,"2550":1,"2551":1,"2553":1,"2554":1,"2555":1,"2572":1,"2573":1,"2574":1,"2575":1,"2613":1,"2621":1,"2625":2,"2627":4,"2632":1,"2650":1,"2656":2,"2660":1,"2661":1,"2662":1,"2666":1,"2677":1,"2721":1,"2723":1,"2724":3,"2744":1,"2787":3,"2788":3,"2789":1,"2829":1,"2898":1,"2908":2,"2920":2,"2930":3,"2931":2,"2932":3,"2933":1}}],["i+7",{"2":{"2750":1}}],["i+=8",{"2":{"2750":3}}],["i++",{"2":{"1844":2,"1941":1,"1942":1,"2066":2,"2073":2,"2074":1,"2279":1}}],["i2s",{"2":{"2682":1}}],["i2c0",{"2":{"2690":2}}],["i2cv2",{"0":{"767":1},"2":{"767":1}}],["i2cv1",{"0":{"766":1},"2":{"766":1}}],["i2cd0",{"2":{"2690":1}}],["i2cd1",{"2":{"765":2,"2690":1,"2695":1}}],["i2cd2",{"2":{"199":1,"765":1}}],["i2c3",{"2":{"765":1}}],["i2c2",{"2":{"765":4}}],["i2c1",{"2":{"765":7,"766":3,"767":5,"2690":2,"2695":2}}],["i2c",{"0":{"244":1,"746":1,"761":1,"763":1,"769":1,"770":2,"773":2,"776":2,"779":2,"782":2,"785":2,"788":2,"791":2,"794":2,"1288":1,"1944":1,"2260":1,"2458":1,"2690":1},"1":{"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"769":1,"770":1,"771":3,"772":3,"773":1,"774":3,"775":3,"776":1,"777":3,"778":3,"779":1,"780":3,"781":3,"782":1,"783":3,"784":3,"785":1,"786":3,"787":3,"788":1,"789":3,"790":3,"791":1,"792":3,"793":3,"794":1,"795":3,"796":3},"2":{"30":1,"33":2,"45":1,"75":1,"92":1,"114":1,"118":2,"134":4,"149":1,"176":5,"191":1,"199":2,"211":1,"232":1,"234":4,"236":4,"244":9,"249":7,"266":1,"285":1,"294":5,"328":1,"349":1,"559":2,"568":3,"743":2,"746":19,"761":1,"762":3,"763":5,"764":3,"765":16,"766":1,"769":4,"770":1,"771":1,"772":3,"773":2,"774":1,"775":3,"776":1,"777":1,"778":3,"779":1,"780":1,"781":3,"782":1,"783":1,"784":3,"785":1,"786":1,"787":3,"788":1,"789":1,"790":3,"791":1,"792":1,"793":3,"794":2,"795":1,"796":3,"798":1,"799":2,"800":1,"824":1,"825":6,"826":5,"853":1,"854":6,"855":5,"885":1,"886":6,"887":5,"917":1,"918":6,"919":17,"952":1,"953":6,"954":17,"986":1,"987":6,"988":5,"1020":1,"1021":6,"1022":5,"1054":1,"1055":6,"1056":5,"1088":1,"1089":6,"1090":17,"1122":1,"1123":6,"1124":17,"1156":1,"1157":6,"1158":17,"1212":1,"1213":6,"1214":5,"1282":1,"1286":1,"1288":6,"1392":1,"1676":1,"1937":1,"1939":3,"1944":1,"1947":1,"2002":3,"2005":2,"2006":3,"2012":3,"2254":2,"2255":1,"2257":1,"2268":4,"2424":1,"2456":1,"2458":1,"2682":1,"2685":2,"2688":1,"2690":4,"2695":3,"2719":1,"2746":9,"2749":17,"2857":1,"2873":1,"2876":5}}],["ipad",{"2":{"2439":1}}],["iphone",{"2":{"2439":1}}],["ipsum",{"2":{"357":1}}],["ignoring",{"0":{"2163":1,"2164":1},"1":{"2164":1,"2165":1,"2166":1},"2":{"2042":1}}],["ignores",{"2":{"1356":1,"1358":1,"2164":1,"2166":1,"2902":1}}],["ignored",{"2":{"450":2,"451":2,"1404":1,"1407":1,"1521":1,"1527":1,"1954":1,"2000":1,"2030":1,"2163":2,"2164":1,"2172":1,"2189":1,"2496":1,"2557":1,"2760":1,"2865":1}}],["ignore",{"0":{"194":1,"206":1},"2":{"22":2,"112":2,"160":1,"194":11,"199":2,"206":2,"211":1,"249":1,"308":1,"387":1,"390":1,"2039":1,"2164":1,"2166":1,"2170":1,"2189":1,"2265":1,"2512":1,"2515":1,"2562":1,"2621":1}}],["iqs572",{"2":{"2001":1}}],["iqs550",{"2":{"2001":1}}],["iqs525",{"2":{"2001":1}}],["iqs5xx",{"0":{"2001":1},"1":{"2002":1,"2003":1,"2004":1},"2":{"236":1,"2001":2,"2002":9,"2003":17,"2004":3}}],["i²c",{"0":{"800":1,"826":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1214":1},"2":{"797":1,"799":2,"800":1,"801":1,"823":1,"825":6,"826":1,"827":1,"852":1,"854":6,"855":1,"859":1,"884":1,"886":6,"887":1,"889":1,"916":1,"918":6,"919":1,"924":1,"951":1,"953":6,"954":1,"958":1,"985":1,"987":6,"988":1,"992":1,"1019":1,"1021":6,"1022":1,"1026":1,"1053":1,"1055":6,"1056":1,"1060":1,"1087":1,"1089":6,"1090":1,"1094":1,"1121":1,"1123":6,"1124":1,"1128":1,"1155":1,"1157":6,"1158":1,"1162":1,"1211":1,"1213":6,"1214":1,"1215":1,"2876":2}}],["ie",{"2":{"738":1,"810":1,"814":1,"818":1,"820":1,"837":1,"841":1,"845":1,"847":1,"869":1,"873":1,"877":1,"879":1,"901":1,"905":1,"909":1,"911":1,"936":1,"940":1,"944":1,"946":1,"970":1,"974":1,"978":1,"980":1,"1004":1,"1008":1,"1012":1,"1014":1,"1038":1,"1042":1,"1046":1,"1048":1,"1072":1,"1076":1,"1080":1,"1082":1,"1106":1,"1110":1,"1114":1,"1116":1,"1140":1,"1144":1,"1148":1,"1150":1,"1174":1,"1178":1,"1182":1,"1184":1,"1227":1,"1231":1,"1235":1,"1237":1,"1273":1,"1287":1,"1645":1,"1675":1,"1712":1,"1769":1,"2619":1}}],["icsp",{"2":{"2487":1}}],["ics",{"2":{"1937":1,"2376":1}}],["icelandic",{"2":{"2880":3}}],["ice",{"2":{"1933":1}}],["icebreaker",{"2":{"308":1}}],["ic",{"2":{"1211":1,"1295":1,"1557":1,"1691":2,"1937":1,"1943":5,"1946":3,"2276":2}}],["icon",{"2":{"392":1,"2615":2}}],["ivndbt",{"2":{"300":2,"308":1}}],["ivy",{"2":{"143":2}}],["ijk",{"2":{"266":1}}],["ii",{"2":{"199":1,"211":1}}],["iie",{"2":{"181":2}}],["i64",{"2":{"191":1}}],["ireland",{"2":{"2880":1}}],["irene",{"2":{"211":1}}],["iron",{"2":{"2414":1,"2420":5,"2421":1,"2422":1}}],["irony",{"2":{"2322":2}}],["iron180",{"2":{"211":2,"249":1}}],["ir",{"2":{"2014":1}}],["irregularities",{"2":{"2915":1}}],["irregular",{"2":{"620":1}}],["irrelevant",{"2":{"244":1}}],["irq",{"2":{"191":1,"236":1,"765":1,"2368":1}}],["irqs",{"2":{"176":1}}],["irish",{"2":{"2880":1}}],["iris60",{"2":{"211":1}}],["iris",{"2":{"45":1,"134":1,"199":1,"211":2,"266":2,"277":1}}],["ik75",{"2":{"176":1}}],["imagine",{"2":{"1805":1,"1840":1,"2060":1,"2787":1}}],["image",{"0":{"465":1,"466":1,"2443":1},"2":{"466":1,"673":4,"886":1,"1317":1,"2416":1,"2418":1,"2698":1,"2708":1,"2721":3,"2727":1,"2748":14,"2750":55,"2765":1,"2767":2,"2769":2,"2771":5,"2772":1}}],["images",{"0":{"337":1},"2":{"153":3,"464":1,"673":1,"1339":1,"2408":1,"2708":1,"2721":2,"2746":2,"2747":2,"2748":2,"2750":5,"2758":1,"2765":1}}],["imgur",{"2":{"673":2,"674":1,"2408":1,"2443":1,"2708":1,"2721":4}}],["imera",{"2":{"249":1,"1386":1,"1388":3,"2888":1}}],["immediate",{"2":{"616":1,"1410":3,"2727":1,"2740":1}}],["immediately",{"2":{"230":1,"259":1,"297":1,"405":1,"649":1,"704":1,"737":1,"809":1,"813":1,"817":1,"819":1,"836":1,"840":1,"844":1,"846":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1226":1,"1230":1,"1234":1,"1236":1,"1278":1,"1303":1,"1348":1,"1375":2,"1407":1,"1413":3,"1492":1,"1532":1,"1606":1,"1756":1,"2303":1,"2643":2,"2750":1,"2768":1,"2769":2,"2779":1,"2879":1,"2901":1,"2902":3,"2908":1,"2909":1,"2911":1,"2912":1,"2914":1,"2941":1}}],["immutable",{"2":{"541":1}}],["immune",{"2":{"231":1}}],["impartial",{"2":{"2569":1}}],["impact",{"2":{"194":1,"641":1,"2269":1,"2303":1,"2751":1,"2895":1,"2896":1,"2910":1}}],["impacts",{"2":{"14":1}}],["impose",{"2":{"2726":1,"2728":1}}],["impossible",{"2":{"1362":1,"1417":1,"1804":1,"2438":1}}],["imported",{"2":{"446":1,"447":1,"448":1,"1628":1,"2416":1,"2425":1,"2719":1}}],["importer",{"2":{"176":1}}],["important",{"0":{"396":1,"679":1},"2":{"490":1,"520":1,"534":1,"594":1,"617":2,"625":1,"679":2,"1375":1,"1419":1,"1466":1,"1516":1,"1529":1,"1614":1,"1641":1,"2074":1,"2372":1,"2599":1,"2605":1,"2879":1,"2901":1}}],["imports",{"0":{"524":1},"1":{"525":1},"2":{"236":1,"446":1,"447":1,"524":1}}],["importing",{"0":{"2655":1},"2":{"173":1,"446":1,"447":1,"448":1,"524":2,"2425":1,"2655":1}}],["import",{"0":{"173":1,"446":1,"447":1,"448":1,"525":1},"2":{"173":4,"176":1,"288":1,"348":1,"387":2,"446":2,"447":2,"448":2,"487":2,"524":8,"525":4,"546":1,"1626":1,"1628":1,"1629":1,"2052":1,"2425":3,"2582":1,"2721":1}}],["impedance",{"2":{"758":1}}],["impls",{"2":{"1844":2,"2066":2}}],["impls\`",{"2":{"1844":1,"2066":1}}],["implied",{"2":{"1438":1,"2725":1}}],["implies",{"2":{"1310":1,"1478":1,"2271":1}}],["implicitly",{"2":{"563":1}}],["implicit",{"2":{"534":1,"543":1,"2879":1}}],["implications",{"2":{"312":1,"408":2,"411":1}}],["implementing",{"0":{"1411":1},"2":{"277":2,"617":1,"621":1,"622":1,"644":1,"687":1,"1189":1,"1534":1,"1611":1,"1612":1,"2015":1,"2721":1}}],["implemented",{"2":{"74":1,"149":1,"176":1,"215":2,"288":1,"312":1,"327":1,"591":1,"637":1,"1340":1,"1389":1,"1390":1,"1626":1,"1639":1,"1683":1,"1756":1,"1757":1,"1793":1,"1917":1,"1930":1,"2046":1,"2050":1,"2309":1,"2324":1,"2325":1,"2370":12,"2521":12,"2545":1,"2702":1,"2721":2,"2760":1,"2769":1,"2862":3,"2895":1}}],["implement",{"2":{"50":1,"74":1,"93":1,"114":1,"131":1,"134":1,"149":1,"160":1,"176":1,"191":1,"199":2,"211":1,"236":5,"259":1,"277":2,"288":1,"308":2,"328":2,"573":1,"617":1,"622":1,"623":2,"631":1,"725":1,"1340":1,"1407":1,"1411":2,"1425":1,"1474":1,"1486":1,"1557":1,"1626":1,"1790":1,"1801":1,"1840":1,"1917":1,"1939":1,"1946":1,"1996":1,"1997":1,"2017":2,"2047":1,"2050":1,"2060":1,"2171":1,"2277":1,"2374":1,"2440":1,"2645":1,"2669":1,"2670":1,"2671":1,"2744":1}}],["implementations",{"2":{"149":3,"175":1,"211":1,"214":1,"277":6,"285":1,"288":1,"294":2,"328":2,"333":1,"1189":1,"1626":1,"1797":1,"1798":1,"2254":1,"2721":1,"2722":1,"2882":1,"2927":1}}],["implementation",{"0":{"629":1,"633":1,"639":1,"642":1,"645":1,"647":1,"650":1,"651":1,"1413":1,"1424":1,"1793":1,"1794":1,"2303":1,"2742":1},"2":{"49":1,"75":1,"114":1,"125":1,"163":1,"176":1,"185":1,"233":1,"236":1,"277":1,"307":1,"308":1,"317":1,"328":1,"617":1,"622":1,"625":1,"692":2,"698":3,"754":1,"1195":1,"1198":1,"1202":2,"1289":1,"1474":2,"1487":1,"1523":1,"1531":2,"1587":1,"1599":1,"1675":1,"1947":1,"1986":2,"2000":1,"2024":1,"2254":2,"2294":1,"2367":1,"2411":2,"2440":1,"2528":1,"2569":1,"2669":1,"2670":1,"2671":1,"2865":2,"2882":1,"2912":1,"2913":1}}],["implements",{"2":{"49":1,"289":1,"1639":1,"1765":1,"2045":1,"2170":1,"2456":1,"2564":1,"2914":1}}],["improving",{"2":{"458":1}}],["improvement",{"2":{"114":1,"175":1,"328":1}}],["improvements",{"0":{"84":1,"98":1,"107":1,"109":1,"175":1,"210":1},"1":{"110":1,"111":1,"112":1},"2":{"45":1,"107":1,"114":2,"134":1,"149":1,"176":1,"190":1,"191":2,"211":3,"222":1,"236":1,"1534":1,"2895":1}}],["improve",{"0":{"229":1},"2":{"93":1,"114":5,"134":1,"175":1,"176":4,"191":2,"211":3,"214":1,"222":1,"236":4,"249":1,"285":2,"294":1,"573":1,"607":1,"611":1,"1407":1,"1410":1,"1943":1,"2281":1,"2372":1,"2555":1,"2895":2}}],["improved",{"0":{"83":1},"2":{"10":2,"50":1,"74":1,"84":1,"174":1,"196":1,"618":1,"1296":1}}],["improper",{"2":{"249":1,"1364":1}}],["ibus",{"2":{"2324":3}}],["ibnuda",{"2":{"143":3,"149":2}}],["ibm122m",{"2":{"207":2}}],["ibm4704",{"2":{"133":1,"134":1}}],["ibm",{"2":{"114":1,"204":1,"207":11,"217":1,"222":1}}],["ixora",{"2":{"102":2}}],["ilovbee",{"2":{"2567":1}}],["illusion",{"2":{"1547":1}}],["illustrious",{"2":{"123":1}}],["illustrate",{"2":{"99":1,"194":1,"2903":1}}],["ill",{"2":{"411":1,"2914":1}}],["ili9341",{"2":{"2746":2,"2749":7}}],["ili9163",{"2":{"2746":2,"2749":7}}],["ili9486",{"2":{"248":1,"249":1,"2746":2,"2749":8}}],["ili9488",{"2":{"176":1,"2746":2,"2749":7}}],["ili9xxx",{"2":{"222":1}}],["ilumkb",{"2":{"102":1,"114":1}}],["ios",{"2":{"1951":1,"1952":1,"2367":2,"2439":5}}],["iohidconsumer",{"2":{"1354":2}}],["iohidfamily",{"2":{"1354":6}}],["io",{"2":{"74":1,"112":1,"559":1,"759":1,"2600":1,"2697":1,"2865":1}}],["iota",{"2":{"31":3,"34":2,"1949":10}}],["i",{"0":{"409":1,"603":1,"608":2,"610":1,"611":1,"1317":1,"1333":1,"1334":2,"1335":1,"1336":1,"1338":2,"1339":1,"1342":1,"1344":1,"1345":1,"1361":1,"1494":1,"1520":1,"1588":1,"1760":1,"2157":1,"2402":1,"2625":1},"1":{"410":1,"411":1,"412":1,"1339":2,"1589":1},"2":{"65":1,"105":2,"108":1,"114":1,"219":4,"249":2,"266":2,"328":1,"335":1,"369":1,"387":1,"391":1,"464":1,"471":1,"587":2,"594":1,"613":2,"620":1,"668":1,"673":1,"674":1,"765":1,"1245":1,"1266":1,"1289":1,"1316":1,"1349":1,"1419":1,"1450":1,"1454":1,"1517":3,"1529":2,"1531":1,"1532":4,"1606":2,"1655":1,"1751":2,"1844":6,"1849":1,"1941":3,"1942":3,"1979":1,"2030":1,"2052":4,"2066":6,"2072":1,"2073":8,"2074":4,"2159":1,"2170":6,"2203":4,"2279":3,"2312":2,"2322":2,"2323":4,"2325":4,"2379":1,"2382":1,"2410":3,"2416":2,"2417":2,"2423":2,"2451":1,"2495":1,"2503":3,"2515":3,"2545":4,"2553":1,"2567":1,"2582":1,"2655":1,"2682":1,"2719":1,"2720":1,"2721":3,"2748":6,"2750":19,"2773":2,"2934":2,"2942":1}}],["idproduct",{"2":{"1329":1}}],["idvendor",{"2":{"1329":1}}],["id=92",{"2":{"1316":1}}],["id=some",{"2":{"335":1}}],["idling",{"0":{"646":1},"1":{"647":1,"648":1}}],["idled",{"2":{"646":2}}],["idle",{"0":{"1592":1,"1762":1},"2":{"149":1,"211":1,"222":1,"236":2,"297":1,"308":1,"645":1,"1587":1,"1592":3,"1762":3,"2176":1,"2854":1,"2872":1}}],["idx",{"2":{"323":1,"1606":3}}],["idb",{"2":{"217":3}}],["idb60",{"2":{"211":1}}],["ids",{"0":{"169":1,"184":1},"1":{"170":1},"2":{"169":1,"176":1,"184":1,"222":1,"373":1,"568":2,"686":1,"1637":1,"2050":1,"2270":4}}],["id75",{"2":{"143":1,"149":3,"199":1,"211":2,"291":2,"294":1,"308":1}}],["idobo",{"2":{"143":1,"149":1}}],["idobao",{"2":{"143":6,"149":6,"168":4,"176":4,"266":1,"328":1}}],["id87v2",{"2":{"176":1}}],["id87",{"2":{"143":2,"149":1}}],["id80v1",{"2":{"176":1}}],["id80v3",{"2":{"176":1}}],["id80",{"2":{"143":2,"149":4,"168":4}}],["id67",{"2":{"143":4,"149":1,"176":1}}],["ides",{"2":{"2923":1}}],["ideally",{"2":{"1434":1,"2015":1,"2034":3,"2273":1,"2704":1}}],["ideal",{"2":{"1406":1,"1439":1,"2260":1,"2378":1,"2380":1,"2387":1}}],["idea",{"2":{"540":1,"617":1,"618":1,"1312":1,"1444":1,"1497":1,"1532":1,"1957":1,"2050":1,"2421":1,"2422":2,"2706":1}}],["identity",{"2":{"619":1}}],["identical",{"2":{"307":1,"1391":1,"1392":1,"1394":1,"1397":1,"1398":1,"1487":1,"1932":1,"2268":1,"2302":1,"2687":1,"2695":1,"2704":1,"2749":1,"2759":1,"2763":1,"2764":1}}],["identification",{"2":{"2569":1}}],["identifies",{"2":{"2570":1}}],["identified",{"2":{"312":1,"1532":1,"2567":1,"2571":2}}],["identifier",{"2":{"157":2,"528":1,"1417":1,"1630":1,"2560":1,"2725":2}}],["identifiers",{"2":{"110":1,"266":1,"1522":1,"1587":1}}],["identifying",{"2":{"2789":1}}],["identify",{"2":{"70":1,"110":1,"312":1,"1532":1,"1533":1,"1584":1,"1979":1,"2313":1,"2933":1}}],["ide",{"0":{"386":1},"2":{"132":1,"378":1,"379":1,"386":1,"387":1,"427":1,"2646":2,"2651":2,"2807":1}}],["id",{"0":{"364":1,"365":1,"366":1},"2":{"50":1,"70":2,"160":1,"169":2,"184":2,"191":2,"211":1,"277":1,"285":1,"370":1,"371":1,"397":1,"559":2,"1300":1,"1316":4,"1329":1,"2049":3,"2050":3,"2052":6,"2270":3,"2288":2,"2491":1,"2492":1,"2493":1,"2494":1,"2552":1,"2710":1,"2760":2,"2761":2,"2762":2,"2766":3,"2767":2,"2768":2,"2769":2,"2770":2,"2771":2,"2772":2,"2875":2}}],["iwrap",{"2":{"50":1}}],["italian",{"2":{"2880":9}}],["itunes",{"2":{"2515":1}}],["ition",{"2":{"2170":1}}],["ith",{"2":{"1751":1}}],["iterates",{"2":{"1947":1}}],["iterate",{"2":{"637":1}}],["iterators",{"2":{"528":1}}],["iterations",{"2":{"613":1}}],["iteration",{"2":{"65":1,"494":1,"644":1}}],["itemid=1",{"2":{"1316":1}}],["item",{"0":{"183":1},"2":{"268":1,"279":1,"534":2,"535":1,"748":1,"2305":1}}],["items",{"2":{"83":1,"112":1,"134":1,"183":1,"210":1,"236":2,"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"338":3,"397":1,"540":1}}],["it",{"0":{"27":1,"605":1,"666":1,"670":1,"671":1,"1317":2,"1328":1,"1339":1,"1345":1,"1492":1,"1519":1,"2472":1,"2610":1},"2":{"5":1,"6":1,"8":1,"14":2,"21":2,"23":1,"27":1,"31":2,"45":2,"50":1,"82":1,"89":1,"94":1,"98":1,"99":1,"105":2,"114":2,"116":2,"119":1,"123":1,"130":2,"133":1,"134":1,"149":1,"153":2,"154":1,"166":1,"173":1,"174":2,"176":1,"179":3,"182":2,"194":2,"195":2,"198":1,"199":1,"203":1,"213":1,"214":1,"228":2,"233":1,"235":1,"246":1,"251":2,"254":1,"259":1,"288":1,"294":1,"297":2,"302":1,"303":1,"315":1,"323":2,"328":1,"334":1,"338":5,"359":1,"361":1,"364":1,"371":1,"380":1,"381":1,"383":1,"384":1,"385":1,"387":3,"390":2,"397":5,"403":1,"408":2,"409":1,"410":1,"411":1,"427":3,"428":1,"432":1,"433":2,"435":1,"438":1,"440":1,"441":1,"442":1,"443":1,"457":3,"461":3,"468":1,"473":1,"480":1,"487":3,"489":1,"492":2,"493":1,"494":1,"497":1,"519":1,"520":2,"521":7,"522":1,"525":1,"533":1,"534":1,"536":1,"537":2,"539":1,"540":2,"541":1,"544":1,"546":2,"548":4,"549":1,"557":2,"561":1,"562":3,"566":1,"567":2,"569":1,"570":1,"572":2,"573":1,"583":2,"584":1,"591":1,"594":2,"596":2,"598":2,"608":2,"609":1,"611":2,"617":8,"621":1,"622":1,"623":1,"625":1,"628":2,"629":3,"631":1,"632":2,"635":1,"641":2,"643":2,"644":1,"646":3,"649":4,"654":5,"655":2,"656":2,"657":2,"662":1,"664":3,"670":1,"673":2,"674":1,"678":1,"681":2,"683":3,"684":1,"685":2,"686":1,"696":2,"698":2,"717":1,"718":1,"720":1,"729":1,"745":1,"751":2,"752":1,"758":4,"760":1,"762":1,"769":1,"794":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1190":3,"1192":1,"1193":1,"1195":1,"1196":1,"1198":1,"1200":3,"1201":4,"1202":1,"1243":1,"1264":1,"1287":1,"1294":3,"1309":1,"1324":1,"1326":2,"1328":1,"1329":1,"1335":1,"1336":1,"1338":2,"1340":1,"1344":2,"1345":3,"1347":1,"1348":1,"1351":1,"1353":4,"1358":1,"1361":2,"1362":3,"1369":1,"1375":1,"1377":3,"1378":1,"1389":2,"1393":2,"1403":1,"1406":1,"1407":2,"1409":1,"1412":2,"1413":17,"1416":7,"1417":2,"1418":1,"1419":3,"1421":2,"1422":4,"1427":1,"1428":1,"1432":1,"1435":4,"1438":4,"1441":3,"1442":1,"1443":3,"1444":2,"1450":2,"1451":4,"1453":1,"1458":1,"1459":2,"1466":1,"1467":1,"1479":5,"1484":1,"1486":2,"1487":2,"1490":1,"1492":4,"1493":3,"1494":1,"1511":2,"1512":1,"1516":1,"1519":2,"1520":3,"1521":2,"1522":5,"1523":1,"1526":2,"1531":3,"1532":1,"1547":2,"1548":2,"1552":1,"1556":1,"1564":2,"1583":1,"1584":1,"1586":2,"1587":4,"1591":1,"1596":2,"1598":1,"1599":2,"1603":2,"1606":6,"1612":2,"1614":3,"1615":1,"1617":2,"1624":2,"1626":1,"1630":3,"1631":1,"1632":1,"1633":1,"1638":1,"1642":2,"1646":1,"1655":3,"1656":2,"1657":1,"1658":1,"1659":2,"1662":1,"1666":1,"1667":2,"1669":1,"1675":2,"1723":1,"1732":3,"1733":1,"1735":2,"1739":1,"1747":1,"1751":2,"1755":1,"1756":4,"1759":2,"1760":1,"1761":1,"1765":1,"1767":1,"1778":1,"1793":2,"1794":1,"1796":1,"1798":1,"1804":1,"1807":3,"1838":2,"1840":2,"1845":1,"1847":2,"1859":1,"1861":1,"1902":1,"1904":1,"1906":1,"1909":1,"1928":3,"1929":4,"1930":1,"1933":1,"1942":1,"1946":1,"1947":1,"1948":5,"1950":3,"1951":4,"1953":2,"1956":1,"1958":1,"1990":2,"1995":1,"1996":2,"1997":1,"2000":1,"2009":1,"2013":2,"2015":1,"2019":1,"2021":1,"2023":1,"2024":1,"2031":1,"2032":1,"2033":1,"2039":1,"2040":1,"2042":1,"2044":1,"2045":2,"2050":4,"2051":1,"2052":1,"2058":2,"2060":2,"2064":2,"2068":1,"2070":2,"2075":2,"2085":1,"2087":1,"2146":1,"2148":1,"2150":1,"2153":1,"2157":1,"2159":2,"2160":1,"2161":2,"2163":2,"2164":1,"2165":1,"2167":1,"2170":1,"2179":2,"2181":1,"2184":1,"2188":2,"2189":1,"2198":2,"2210":3,"2212":1,"2213":1,"2242":1,"2248":2,"2251":1,"2258":1,"2260":1,"2262":2,"2263":1,"2264":4,"2265":3,"2266":1,"2268":3,"2270":3,"2271":5,"2272":1,"2274":1,"2280":1,"2283":4,"2284":1,"2286":5,"2288":1,"2290":1,"2291":1,"2293":3,"2295":1,"2298":1,"2301":3,"2302":2,"2303":8,"2310":2,"2311":1,"2312":2,"2313":1,"2319":1,"2321":1,"2322":1,"2323":1,"2324":9,"2367":2,"2368":3,"2372":1,"2376":1,"2377":1,"2379":2,"2381":2,"2382":1,"2383":2,"2384":2,"2389":1,"2398":1,"2400":3,"2402":3,"2403":9,"2404":1,"2407":1,"2408":1,"2410":6,"2411":4,"2415":3,"2416":4,"2420":6,"2421":13,"2422":8,"2423":3,"2424":1,"2425":1,"2427":5,"2428":1,"2432":1,"2433":1,"2435":3,"2437":3,"2438":1,"2440":1,"2441":1,"2444":1,"2445":1,"2446":1,"2447":1,"2459":5,"2462":2,"2465":1,"2468":1,"2474":1,"2475":4,"2477":1,"2481":1,"2489":2,"2490":1,"2493":1,"2494":2,"2495":1,"2496":1,"2497":2,"2501":4,"2528":1,"2548":1,"2549":1,"2550":1,"2551":2,"2552":1,"2553":1,"2554":3,"2559":2,"2560":4,"2562":2,"2567":1,"2572":3,"2573":1,"2577":1,"2578":1,"2579":1,"2580":1,"2582":1,"2583":1,"2585":3,"2588":1,"2591":1,"2594":1,"2599":1,"2600":1,"2605":5,"2607":1,"2609":3,"2610":3,"2613":1,"2619":3,"2620":1,"2621":2,"2622":1,"2626":1,"2627":4,"2628":1,"2629":1,"2630":1,"2631":2,"2632":2,"2633":5,"2643":1,"2644":2,"2645":6,"2646":1,"2649":1,"2651":7,"2652":1,"2655":1,"2660":3,"2662":1,"2663":3,"2664":1,"2666":5,"2667":5,"2672":1,"2675":2,"2676":1,"2679":1,"2680":1,"2683":1,"2684":1,"2687":1,"2693":2,"2695":1,"2696":1,"2698":1,"2700":1,"2702":1,"2703":2,"2706":2,"2707":1,"2710":2,"2713":1,"2714":1,"2719":4,"2721":3,"2722":1,"2723":3,"2724":2,"2725":3,"2744":1,"2746":1,"2747":1,"2749":2,"2750":9,"2751":2,"2755":1,"2757":2,"2758":1,"2760":1,"2763":1,"2765":1,"2767":1,"2769":1,"2776":2,"2778":4,"2780":2,"2785":1,"2787":1,"2788":2,"2789":2,"2792":1,"2810":1,"2827":1,"2836":1,"2839":2,"2844":1,"2862":1,"2867":1,"2873":1,"2877":2,"2879":4,"2881":1,"2884":3,"2888":1,"2896":1,"2901":2,"2910":3,"2911":1,"2912":1,"2913":1,"2915":1,"2917":2,"2918":3,"2919":1,"2920":3,"2923":2,"2926":2,"2927":5,"2928":3,"2929":4,"2930":1,"2931":2,"2932":2,"2934":1,"2935":1,"2936":1,"2937":4,"2940":1,"2941":1,"2942":7}}],["itsybitsy",{"2":{"686":2,"2492":2}}],["itself",{"2":{"152":1,"377":1,"574":1,"586":1,"637":2,"662":1,"682":1,"684":1,"685":1,"711":1,"1434":1,"1516":1,"1523":1,"1529":1,"1587":2,"1627":1,"2287":1,"2381":1,"2383":1,"2410":1,"2421":1,"2423":1,"2475":1,"2499":1,"2556":1,"2668":1,"2700":1,"2731":1,"2788":1,"2877":1,"2919":1,"2933":1}}],["its",{"0":{"2650":1},"1":{"2651":1,"2652":1,"2653":1},"2":{"3":1,"7":1,"8":1,"15":1,"30":1,"33":1,"113":2,"114":1,"120":1,"133":1,"157":1,"174":1,"175":1,"195":1,"307":1,"386":1,"387":1,"405":1,"408":1,"556":1,"586":1,"684":1,"718":1,"731":1,"748":1,"751":1,"752":1,"753":2,"759":1,"1196":1,"1310":1,"1312":1,"1314":1,"1353":1,"1368":1,"1386":1,"1404":1,"1408":1,"1410":1,"1482":1,"1490":2,"1511":1,"1512":1,"1532":1,"1533":3,"1564":2,"1596":1,"1599":1,"1606":4,"1607":1,"1630":1,"1747":1,"1766":1,"1770":1,"1928":4,"1940":1,"1947":1,"1979":1,"2016":1,"2064":2,"2065":1,"2168":3,"2248":2,"2293":1,"2312":1,"2324":1,"2407":2,"2420":1,"2430":1,"2440":1,"2459":4,"2466":1,"2548":1,"2549":1,"2552":2,"2566":2,"2569":1,"2570":1,"2591":1,"2598":1,"2602":2,"2603":1,"2619":3,"2655":1,"2721":1,"2749":1,"2758":1,"2765":1,"2788":1,"2792":1,"2800":1,"2837":1,"2844":1,"2857":1,"2895":1,"2907":1,"2908":2,"2909":2,"2910":2,"2918":1,"2927":1}}],["ifkb",{"2":{"2567":1}}],["ifeq",{"2":{"2440":2}}],["ifnormation",{"2":{"179":1}}],["ifndef",{"2":{"134":1,"520":1,"1443":1,"1504":5,"1527":1,"2309":1,"2439":4,"2719":1}}],["ify",{"2":{"176":1}}],["ifdefs",{"2":{"114":1,"191":1,"211":1,"266":1,"1403":1}}],["ifdef",{"2":{"31":4,"34":4,"134":1,"211":1,"249":2,"520":1,"553":1,"645":3,"664":1,"1326":1,"1388":14,"1396":5,"1403":1,"1432":3,"1442":3,"1479":2,"1504":1,"1527":2,"1529":4,"1606":4,"1622":2,"1794":2,"1807":3,"1844":2,"1939":1,"1942":1,"1982":1,"1983":1,"1985":1,"2014":1,"2066":2,"2277":1,"2280":1,"2439":1}}],["if",{"0":{"141":1,"1335":1,"1336":1,"1339":1},"2":{"1":1,"7":1,"14":1,"16":1,"18":2,"21":1,"23":2,"31":4,"34":4,"37":1,"43":1,"45":1,"49":2,"50":2,"62":1,"87":1,"89":1,"90":9,"98":1,"105":6,"107":1,"114":2,"119":1,"125":2,"149":1,"152":1,"157":1,"158":2,"160":1,"182":1,"185":2,"194":3,"196":4,"198":1,"199":2,"201":1,"202":1,"206":1,"209":2,"214":1,"215":1,"218":1,"221":1,"222":1,"228":1,"230":1,"232":2,"233":1,"236":2,"240":3,"241":1,"245":1,"247":1,"248":1,"253":1,"254":1,"255":1,"256":1,"259":1,"266":1,"270":1,"272":1,"273":2,"276":1,"277":2,"281":1,"283":1,"284":1,"289":1,"306":1,"307":5,"315":1,"320":2,"323":1,"324":1,"325":1,"338":6,"347":1,"364":2,"367":1,"368":1,"369":1,"373":1,"375":1,"376":1,"377":1,"382":1,"383":1,"387":2,"388":1,"390":1,"392":1,"397":4,"405":1,"408":1,"409":1,"410":1,"412":1,"416":1,"417":1,"418":1,"419":1,"424":2,"427":1,"428":1,"430":1,"432":1,"433":1,"434":1,"435":1,"438":1,"440":1,"442":1,"443":1,"444":1,"456":1,"461":1,"463":1,"467":1,"486":1,"487":2,"490":2,"491":1,"492":1,"503":2,"505":1,"507":1,"508":1,"520":16,"521":2,"522":3,"526":1,"529":2,"532":2,"533":3,"538":1,"540":2,"541":3,"543":5,"545":1,"548":3,"551":1,"552":1,"554":1,"557":1,"558":1,"559":9,"560":1,"561":1,"562":10,"563":4,"566":2,"567":3,"568":4,"570":1,"572":1,"573":2,"574":1,"578":1,"586":1,"587":1,"591":7,"594":3,"596":1,"597":2,"598":1,"602":2,"603":1,"608":2,"609":1,"610":1,"611":3,"612":1,"613":1,"614":2,"615":1,"616":1,"617":5,"618":1,"619":1,"628":2,"629":2,"632":1,"637":1,"638":1,"642":1,"643":1,"644":1,"645":10,"646":1,"649":3,"650":2,"651":1,"654":5,"655":3,"658":1,"666":1,"669":1,"670":2,"671":2,"674":1,"681":2,"682":1,"683":6,"684":3,"685":1,"686":1,"687":1,"695":1,"696":2,"698":2,"700":2,"713":1,"717":2,"718":1,"722":1,"727":2,"745":2,"746":3,"747":1,"751":2,"760":3,"762":2,"763":1,"765":1,"769":1,"772":2,"775":2,"778":2,"781":2,"784":2,"787":2,"790":2,"793":2,"794":1,"796":2,"798":2,"824":2,"853":2,"858":1,"885":2,"917":2,"923":1,"952":2,"957":1,"986":2,"991":1,"1020":2,"1025":1,"1054":2,"1059":1,"1088":2,"1093":1,"1122":2,"1127":1,"1156":2,"1161":1,"1193":1,"1195":1,"1196":1,"1197":1,"1198":2,"1200":4,"1201":4,"1204":2,"1206":1,"1212":2,"1243":2,"1245":2,"1249":1,"1250":2,"1253":1,"1255":1,"1258":2,"1261":2,"1263":1,"1264":2,"1273":1,"1278":1,"1279":1,"1281":2,"1283":1,"1284":1,"1294":1,"1298":1,"1300":1,"1311":1,"1312":3,"1314":1,"1315":1,"1317":1,"1319":1,"1326":2,"1329":1,"1333":2,"1335":2,"1336":1,"1339":1,"1341":1,"1345":1,"1346":1,"1359":1,"1361":1,"1362":1,"1369":1,"1375":3,"1377":3,"1378":3,"1385":1,"1387":1,"1388":1,"1389":1,"1393":2,"1395":1,"1396":1,"1404":1,"1406":2,"1407":3,"1410":1,"1411":1,"1412":2,"1413":21,"1416":3,"1417":1,"1419":2,"1420":1,"1421":1,"1422":4,"1425":5,"1432":1,"1434":2,"1435":2,"1436":2,"1438":2,"1441":2,"1442":3,"1443":4,"1446":1,"1448":1,"1450":6,"1451":4,"1452":2,"1453":2,"1454":2,"1455":1,"1456":2,"1458":1,"1459":3,"1466":6,"1467":1,"1475":1,"1476":1,"1477":1,"1479":1,"1482":2,"1484":3,"1487":1,"1492":5,"1494":1,"1496":2,"1497":1,"1511":3,"1512":5,"1513":1,"1516":5,"1519":1,"1522":1,"1526":1,"1527":9,"1529":1,"1530":1,"1532":1,"1533":2,"1548":2,"1550":1,"1552":2,"1557":1,"1577":1,"1582":1,"1583":1,"1584":1,"1585":2,"1587":2,"1588":2,"1592":1,"1593":1,"1595":1,"1596":1,"1597":1,"1599":3,"1600":1,"1602":2,"1603":3,"1604":1,"1606":19,"1607":1,"1609":1,"1612":1,"1613":2,"1614":6,"1616":1,"1617":1,"1619":1,"1621":1,"1622":9,"1627":2,"1628":1,"1630":1,"1631":1,"1632":1,"1633":1,"1634":1,"1638":1,"1641":1,"1642":1,"1646":1,"1655":1,"1656":1,"1657":1,"1658":1,"1659":3,"1660":3,"1661":1,"1662":14,"1665":1,"1667":3,"1669":1,"1670":4,"1672":3,"1675":6,"1680":1,"1681":2,"1693":1,"1699":1,"1703":1,"1718":1,"1723":1,"1735":2,"1736":1,"1740":1,"1749":1,"1751":4,"1752":5,"1754":2,"1755":1,"1756":3,"1758":2,"1762":1,"1764":2,"1765":2,"1771":1,"1778":1,"1793":1,"1794":2,"1799":1,"1801":4,"1805":2,"1806":1,"1807":5,"1818":2,"1820":2,"1821":1,"1825":1,"1828":1,"1831":1,"1834":1,"1837":1,"1838":1,"1840":2,"1841":7,"1844":1,"1845":1,"1846":6,"1849":2,"1858":1,"1901":1,"1917":2,"1918":1,"1929":1,"1930":1,"1931":1,"1934":1,"1941":3,"1942":4,"1943":1,"1945":1,"1946":2,"1947":2,"1948":24,"1952":2,"1954":1,"1956":4,"1973":1,"1982":1,"1985":1,"1990":2,"1993":1,"1997":1,"2000":1,"2002":1,"2006":1,"2014":3,"2015":1,"2016":3,"2017":1,"2018":2,"2019":3,"2020":1,"2021":1,"2023":1,"2024":2,"2025":4,"2027":5,"2029":1,"2030":1,"2031":1,"2032":2,"2039":4,"2042":1,"2043":5,"2044":2,"2045":2,"2047":1,"2049":1,"2051":1,"2052":6,"2058":1,"2060":2,"2061":8,"2066":1,"2068":1,"2069":9,"2072":2,"2073":4,"2074":6,"2075":1,"2084":1,"2145":1,"2156":1,"2159":1,"2160":4,"2165":1,"2166":1,"2167":4,"2168":7,"2170":2,"2177":3,"2179":2,"2181":2,"2182":2,"2183":1,"2185":1,"2189":1,"2191":2,"2192":1,"2193":1,"2194":1,"2199":2,"2203":1,"2206":1,"2207":1,"2208":1,"2211":1,"2213":1,"2214":1,"2216":1,"2218":1,"2252":3,"2253":2,"2257":1,"2260":1,"2261":1,"2264":2,"2265":1,"2266":1,"2267":3,"2268":5,"2270":5,"2271":4,"2279":3,"2280":3,"2283":19,"2285":1,"2286":3,"2287":1,"2288":2,"2290":2,"2291":2,"2293":4,"2294":1,"2295":1,"2298":2,"2299":1,"2302":7,"2303":7,"2307":1,"2308":2,"2309":4,"2310":13,"2311":3,"2312":11,"2313":1,"2314":2,"2315":1,"2321":1,"2322":1,"2323":1,"2324":3,"2325":1,"2340":1,"2354":1,"2359":1,"2361":1,"2368":1,"2372":6,"2374":10,"2375":1,"2376":2,"2377":2,"2379":1,"2381":1,"2384":3,"2386":1,"2388":1,"2390":1,"2391":1,"2397":1,"2400":2,"2403":3,"2408":1,"2409":1,"2410":5,"2411":2,"2412":1,"2415":1,"2416":1,"2419":1,"2420":2,"2421":3,"2422":7,"2423":1,"2424":2,"2425":1,"2426":1,"2427":5,"2428":2,"2435":2,"2437":1,"2438":3,"2439":2,"2441":1,"2445":3,"2446":2,"2447":1,"2449":4,"2450":2,"2453":1,"2459":1,"2465":1,"2467":1,"2476":1,"2483":1,"2490":1,"2495":3,"2496":2,"2499":1,"2501":4,"2516":2,"2545":1,"2548":1,"2554":1,"2555":1,"2560":2,"2562":1,"2563":3,"2564":2,"2567":3,"2568":2,"2569":3,"2570":1,"2572":4,"2573":2,"2576":1,"2577":3,"2578":1,"2579":1,"2580":1,"2583":1,"2584":2,"2585":1,"2586":1,"2587":1,"2588":3,"2590":1,"2593":1,"2594":1,"2595":1,"2599":2,"2601":2,"2602":1,"2605":3,"2606":1,"2607":1,"2609":3,"2610":2,"2612":1,"2614":1,"2619":2,"2621":2,"2622":1,"2626":1,"2627":1,"2628":2,"2629":2,"2630":1,"2633":2,"2643":2,"2644":2,"2645":14,"2649":1,"2651":2,"2652":2,"2655":1,"2658":1,"2662":3,"2664":1,"2666":1,"2667":3,"2668":1,"2669":2,"2670":1,"2674":1,"2675":1,"2679":1,"2684":1,"2687":1,"2695":1,"2700":1,"2702":3,"2704":2,"2705":1,"2707":1,"2710":2,"2718":1,"2719":4,"2721":16,"2722":5,"2723":1,"2725":1,"2735":1,"2744":1,"2745":2,"2747":5,"2748":4,"2749":2,"2750":22,"2754":1,"2757":1,"2758":2,"2760":1,"2761":1,"2762":2,"2763":3,"2766":1,"2768":1,"2769":6,"2773":1,"2776":4,"2777":2,"2778":1,"2779":2,"2780":4,"2781":1,"2783":2,"2784":1,"2785":3,"2787":1,"2790":1,"2793":1,"2827":1,"2833":1,"2846":4,"2862":1,"2869":2,"2873":1,"2878":1,"2879":1,"2880":1,"2881":1,"2882":3,"2883":3,"2884":1,"2885":3,"2887":2,"2888":1,"2890":1,"2896":1,"2900":2,"2901":12,"2902":5,"2908":7,"2909":4,"2910":3,"2912":2,"2913":3,"2914":5,"2915":4,"2916":2,"2917":3,"2919":2,"2920":2,"2923":1,"2924":1,"2927":1,"2930":1,"2934":3,"2936":2,"2937":2,"2939":1,"2942":2}}],["innovation",{"2":{"2895":1}}],["inner",{"0":{"1753":1},"1":{"1754":1,"1755":1,"1756":1},"2":{"356":1,"1949":1,"2029":1,"2180":1,"2546":1}}],["inbound",{"2":{"2270":1}}],["inoperable",{"2":{"1362":1}}],["inheriting",{"2":{"2862":1}}],["inheritance",{"2":{"546":1}}],["inherently",{"2":{"1757":1}}],["inherent",{"2":{"1285":1}}],["injection",{"0":{"2219":1}}],["injected",{"2":{"2215":1}}],["inject",{"2":{"624":1,"1616":1}}],["inability",{"2":{"2734":1}}],["inadvertently",{"2":{"2567":1}}],["inactivity",{"2":{"1943":2,"2281":1}}],["inactive",{"2":{"1416":1,"2045":1}}],["inappropriate",{"2":{"619":1}}],["inaugural",{"2":{"0":1}}],["ini",{"2":{"471":1,"472":1,"474":1,"480":1,"481":1,"487":1}}],["initiator2target",{"2":{"2270":4}}],["initiated",{"2":{"1930":1}}],["initiative",{"2":{"213":1}}],["initially",{"2":{"2548":1}}],["initial",{"0":{"1805":1,"2597":1},"1":{"2598":1,"2599":1,"2600":1,"2601":1,"2602":1},"2":{"93":1,"130":1,"134":2,"149":2,"188":1,"191":1,"199":2,"266":1,"1481":1,"1930":5,"2003":5,"2162":2,"2548":1,"2601":1,"2722":2,"2848":1,"2907":1}}],["initializing",{"2":{"632":1,"711":1,"1988":1,"2266":1,"2668":1,"2927":1}}],["initializers",{"2":{"1739":1,"1751":1}}],["initialized",{"2":{"631":1,"632":2,"635":2,"638":1,"639":1,"693":1,"1533":1,"1585":1,"1948":1,"2283":1,"2495":1,"2513":1,"2670":1}}],["initialize",{"2":{"622":1,"623":1,"703":1,"735":1,"736":1,"769":1,"806":1,"832":1,"864":1,"894":1,"929":1,"963":1,"997":1,"1031":1,"1065":1,"1099":1,"1133":1,"1167":1,"1220":1,"1247":1,"1268":1,"1302":1,"1378":2,"1698":1,"1948":1,"2283":1,"2312":1,"2671":1}}],["initializes",{"2":{"49":1}}],["initialization",{"0":{"631":1,"632":1,"635":1,"638":1,"2668":1},"1":{"632":1,"633":2,"634":2,"635":1,"636":2,"637":2,"638":1,"639":2,"640":2,"2669":1,"2670":1,"2671":1},"2":{"149":1,"176":2,"236":1,"249":1,"288":1,"335":2,"421":1,"422":1,"631":2,"632":1,"638":1,"649":1,"1364":1,"1422":2,"1626":1,"2019":2,"2032":1,"2668":2,"2670":1,"2671":1,"2721":1}}],["initialised",{"2":{"176":1}}],["initialise",{"2":{"65":1,"637":1,"2750":2,"2754":1}}],["initialisation",{"2":{"49":1,"73":1,"77":1,"94":2,"637":3,"725":1,"2441":1,"2669":1,"2721":1,"2750":4,"2754":1}}],["initilization",{"2":{"149":1}}],["init",{"0":{"633":1,"634":1,"636":1,"639":1,"640":1,"647":1,"703":1,"735":1,"769":1,"806":1,"832":1,"864":1,"894":1,"929":1,"963":1,"997":1,"1031":1,"1065":1,"1099":1,"1133":1,"1167":1,"1220":1,"1247":1,"1268":1,"1302":1,"1698":1,"2669":1,"2670":1,"2671":1},"1":{"736":1,"833":1,"865":1,"895":1,"930":1,"964":1,"998":1,"1032":1,"1066":1,"1100":1,"1134":1,"1168":1,"1221":1,"1269":1,"1699":1},"2":{"31":2,"34":4,"49":1,"50":1,"65":1,"114":2,"134":1,"149":2,"176":3,"191":7,"199":1,"236":3,"249":6,"266":2,"277":1,"317":1,"328":1,"332":1,"421":1,"542":1,"622":1,"623":7,"631":4,"633":2,"634":2,"636":2,"637":1,"639":2,"640":2,"646":1,"647":1,"648":2,"725":1,"769":1,"1319":1,"1412":2,"1413":6,"1414":2,"1480":1,"1557":1,"1628":1,"1638":12,"1695":2,"1696":2,"1700":1,"1701":1,"1702":1,"1844":3,"1942":1,"1948":5,"1949":2,"1983":1,"1985":1,"1988":1,"2014":3,"2015":1,"2019":2,"2021":1,"2028":1,"2032":1,"2066":3,"2075":2,"2189":1,"2191":1,"2266":1,"2270":1,"2280":1,"2283":4,"2441":1,"2501":1,"2601":1,"2669":4,"2670":4,"2671":2,"2721":8,"2749":3,"2750":8,"2754":3,"2783":1,"2942":1}}],["inexpensively",{"2":{"2828":1}}],["inefficient",{"2":{"2198":1,"2750":1}}],["inett",{"2":{"249":1}}],["inertia",{"0":{"1933":1},"2":{"190":2,"191":2,"1928":1,"1933":3}}],["inertial",{"2":{"175":1,"176":1,"1934":1,"2016":2}}],["inland",{"2":{"217":1,"317":1,"2390":1}}],["inline",{"2":{"50":1,"199":1,"348":2}}],["insulate",{"2":{"2422":1}}],["insulation",{"2":{"2418":3,"2422":2}}],["inspected",{"2":{"2724":1}}],["inspect",{"2":{"2421":1}}],["inspiration",{"2":{"1736":1,"1844":1,"2066":1,"2170":1,"2721":1}}],["inseparable",{"2":{"2727":1}}],["insensitive",{"2":{"1521":1}}],["insertion",{"2":{"2403":1}}],["inserting",{"2":{"683":1}}],["inserted",{"2":{"1622":1,"1662":1,"2323":3}}],["inserts",{"2":{"360":1}}],["insert",{"2":{"249":1,"266":1,"611":2,"1657":1,"1688":1,"1996":1,"2324":1,"2509":2,"2511":1,"2515":3}}],["insights",{"2":{"1206":1,"2029":1}}],["inside",{"2":{"169":1,"184":1,"241":1,"253":1,"270":1,"281":1,"487":1,"552":1,"627":1,"1197":1,"1526":2,"1633":1,"1844":1,"2066":1,"2181":1,"2428":1,"2436":1,"2546":1,"2572":2,"2578":1,"2583":1,"2619":1,"2666":2,"2668":1,"2702":3,"2750":4,"2937":1}}],["ins",{"2":{"587":2,"2509":1,"2515":1}}],["instructs",{"2":{"2750":1}}],["instruct",{"2":{"419":1,"2265":1,"2625":1}}],["instruction",{"2":{"1720":1,"2788":1}}],["instructions",{"0":{"2375":1,"2410":1,"2424":1},"1":{"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2411":1,"2412":1},"2":{"36":1,"112":1,"240":1,"328":1,"333":1,"379":1,"380":1,"427":1,"592":1,"674":1,"683":1,"1202":1,"1289":1,"1311":1,"1312":1,"1717":1,"2050":1,"2495":1,"2583":2,"2587":1,"2594":1,"2605":1,"2617":1,"2620":1,"2621":1,"2680":1,"2698":1,"2721":1,"2723":1,"2750":3,"2788":1,"2807":1,"2845":2,"2928":1}}],["instructing",{"2":{"23":1,"2630":1}}],["instant",{"2":{"2310":1,"2569":1}}],["instantly",{"0":{"320":1},"2":{"320":1,"328":1,"2919":1}}],["instances",{"2":{"277":1,"2631":1}}],["instance",{"2":{"31":3,"34":1,"152":1,"338":3,"397":1,"527":1,"631":1,"714":1,"719":1,"1200":1,"1201":1,"1433":1,"1436":1,"1441":1,"1442":1,"1443":1,"1451":1,"1521":1,"1522":1,"1523":1,"1552":1,"1585":1,"1587":1,"1592":1,"1596":1,"1602":1,"1764":1,"1770":1,"2039":1,"2161":1,"2164":1,"2167":1,"2295":1,"2310":1,"2311":1,"2374":1,"2619":1,"2687":1,"2704":1,"2721":1,"2882":1,"2886":1,"2900":2,"2901":1,"2907":1,"2912":1,"2914":1,"2917":1,"2919":1,"2920":1}}],["installs",{"2":{"2489":1,"2664":1}}],["installer",{"2":{"521":1,"1315":1,"2660":1,"2661":2,"2663":2}}],["installed",{"2":{"23":1,"65":1,"379":1,"415":1,"416":1,"417":2,"418":2,"458":1,"459":1,"682":1,"684":1,"1315":1,"1522":1,"1662":1,"2178":1,"2324":1,"2403":1,"2594":1,"2615":1,"2651":1,"2653":1,"2662":1,"2664":1}}],["installing",{"0":{"379":1,"2661":1},"1":{"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"2662":1},"2":{"317":1,"663":1,"2383":1,"2415":1,"2653":1,"2663":1}}],["install",{"0":{"416":1,"417":1,"418":1,"2594":1,"2650":1,"2651":1,"2653":1},"1":{"2651":1,"2652":1,"2653":1},"2":{"158":2,"160":2,"191":1,"294":1,"378":1,"379":1,"381":2,"382":2,"383":1,"384":1,"386":1,"387":2,"415":2,"416":2,"417":1,"418":3,"419":1,"421":1,"486":2,"521":1,"683":2,"1315":1,"1494":1,"1522":2,"1547":1,"2324":1,"2384":1,"2399":1,"2426":1,"2499":2,"2594":7,"2611":1,"2613":1,"2614":2,"2615":1,"2616":2,"2617":1,"2618":2,"2619":2,"2620":2,"2649":1,"2650":1,"2651":2,"2664":1,"2667":1}}],["installation",{"0":{"158":1,"682":1,"683":1,"684":1,"2616":1,"2618":1,"2619":1,"2620":1},"1":{"683":1,"684":1,"685":1,"686":1},"2":{"158":2,"173":1,"191":1,"240":1,"380":3,"417":1,"682":1,"685":1,"1315":2,"2318":1,"2615":1,"2619":2,"2620":1,"2651":1,"2652":2,"2666":1,"2667":1}}],["instability",{"2":{"73":1}}],["instead",{"2":{"5":1,"17":1,"25":1,"30":1,"33":1,"45":2,"65":1,"70":1,"87":1,"88":1,"95":1,"104":1,"127":1,"128":1,"149":3,"164":1,"184":1,"188":1,"191":1,"195":1,"196":1,"199":1,"202":1,"206":1,"211":1,"215":1,"218":1,"232":2,"234":1,"240":2,"265":1,"268":1,"283":1,"285":1,"302":1,"308":1,"323":2,"332":1,"432":1,"448":1,"459":1,"468":1,"471":1,"509":1,"511":1,"524":2,"532":1,"542":1,"559":1,"561":1,"562":2,"563":1,"568":1,"586":1,"591":2,"613":1,"637":2,"658":1,"670":1,"674":1,"683":2,"684":1,"696":1,"700":1,"716":1,"719":1,"727":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1190":1,"1193":1,"1212":1,"1280":1,"1281":1,"1294":2,"1299":1,"1330":1,"1345":1,"1348":1,"1349":1,"1351":1,"1365":1,"1375":1,"1378":1,"1389":1,"1393":1,"1411":1,"1416":1,"1432":1,"1433":1,"1443":1,"1454":1,"1455":1,"1459":1,"1461":1,"1512":2,"1521":1,"1528":1,"1532":1,"1551":1,"1552":2,"1555":1,"1564":1,"1596":1,"1606":1,"1616":2,"1617":1,"1633":1,"1659":1,"1666":1,"1739":1,"1747":1,"1756":1,"1758":1,"1770":1,"1799":1,"1838":1,"1846":1,"1930":1,"1947":2,"1988":1,"1990":1,"2014":1,"2016":2,"2024":1,"2025":1,"2043":2,"2058":1,"2069":1,"2074":1,"2156":1,"2164":1,"2178":1,"2181":1,"2212":1,"2215":1,"2262":1,"2274":1,"2290":1,"2302":1,"2322":2,"2323":1,"2324":1,"2372":1,"2376":1,"2386":1,"2402":1,"2407":2,"2417":1,"2425":1,"2427":1,"2458":1,"2475":1,"2487":1,"2489":1,"2497":1,"2515":1,"2548":1,"2552":1,"2572":1,"2586":1,"2591":1,"2619":2,"2620":2,"2627":1,"2631":1,"2645":1,"2652":1,"2656":1,"2668":1,"2710":1,"2713":1,"2719":2,"2721":2,"2723":1,"2725":1,"2734":1,"2748":2,"2749":3,"2750":2,"2757":1,"2780":2,"2839":1,"2854":1,"2864":1,"2871":1,"2877":1,"2885":1,"2907":1,"2908":1,"2909":1,"2910":1,"2917":2,"2920":1,"2929":1,"2934":1}}],["instituted",{"2":{"1":1}}],["invalid",{"2":{"222":1,"236":2,"249":3,"285":1,"293":1,"294":2,"305":1,"314":1,"333":1,"655":1,"657":1,"1250":1,"1765":1,"2438":1}}],["invited",{"2":{"194":1,"206":1}}],["invisible",{"2":{"176":1,"2418":1}}],["invented",{"2":{"1347":1}}],["inversion",{"2":{"222":1}}],["inversely",{"2":{"719":1}}],["inverse",{"2":{"222":1,"566":1}}],["inverts",{"2":{"211":1,"1422":1,"1591":1,"1948":6,"2016":2,"2018":2,"2283":6}}],["inverted",{"2":{"199":1,"285":1,"294":1,"1793":1,"1948":1,"2283":1}}],["invert",{"0":{"1591":1,"1991":1,"1992":1},"2":{"114":3,"190":1,"191":1,"211":1,"222":1,"758":1,"1422":1,"1591":2,"1763":1,"1765":1,"1770":1,"1948":13,"1991":2,"1992":5,"2016":2,"2018":3,"2019":1,"2020":1,"2283":9,"2854":2}}],["investigations",{"2":{"134":1}}],["invoking",{"2":{"2167":1,"2270":1,"2459":1,"2662":1}}],["invoke",{"2":{"294":1,"625":1,"645":1,"2270":1,"2323":1,"2750":1,"2927":1}}],["invoked",{"2":{"92":1,"572":1,"644":1,"654":1,"655":2,"656":2,"657":1,"1801":1,"1810":1,"1811":1,"1812":1,"1902":1,"1904":1,"1906":1,"1909":1,"1955":1,"2054":1,"2146":1,"2148":1,"2150":1,"2153":1,"2302":1,"2333":1,"2335":1,"2411":1,"2749":1,"2750":1}}],["involve",{"2":{"2318":1,"2415":1}}],["involves",{"2":{"621":1,"2915":1}}],["involved",{"2":{"608":1,"685":1,"2706":1}}],["involving",{"2":{"99":1,"692":1,"2166":1,"2903":1,"2914":1}}],["invocations",{"2":{"1955":1,"2941":1}}],["invocation",{"2":{"176":1,"236":1,"654":1}}],["inputting",{"2":{"1608":1,"1609":1,"2323":1,"2411":1}}],["inputs",{"2":{"637":1,"692":2,"1356":1,"1407":1,"1982":1,"2017":1,"2421":1,"2757":2}}],["input",{"0":{"1352":1,"2322":1,"2324":1,"2327":1,"2329":1,"2331":1,"2332":1,"2333":2,"2335":2,"2337":1,"2338":1,"2339":1,"2464":1},"1":{"2323":1,"2328":1,"2330":1,"2334":2,"2336":2},"2":{"94":1,"114":1,"143":4,"149":1,"176":1,"199":2,"203":2,"236":2,"243":3,"249":2,"297":1,"312":1,"442":1,"559":1,"563":1,"637":2,"758":6,"769":2,"1210":1,"1410":4,"1446":1,"1526":3,"1693":1,"1754":1,"1755":1,"1756":2,"1757":1,"1766":2,"1770":1,"1777":1,"1985":1,"2017":1,"2046":1,"2172":1,"2265":1,"2287":1,"2303":1,"2317":1,"2318":2,"2320":5,"2321":6,"2323":2,"2324":17,"2325":7,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":2,"2335":1,"2336":2,"2337":2,"2338":2,"2339":2,"2340":2,"2352":1,"2355":1,"2356":1,"2357":1,"2360":1,"2362":1,"2363":1,"2367":1,"2377":1,"2383":1,"2384":1,"2389":2,"2400":2,"2421":1,"2468":1,"2470":2,"2495":3,"2545":7,"2677":1,"2721":1,"2747":1,"2748":16,"2788":1,"2858":1,"2865":2,"2869":1,"2879":1,"2911":1,"2914":1,"2940":1}}],["induced",{"2":{"1758":1,"2917":1}}],["industry",{"2":{"149":1}}],["indisinguishable",{"2":{"2749":1}}],["indirect",{"2":{"2324":1}}],["individually",{"2":{"1244":1,"2456":1}}],["individual",{"2":{"552":1,"723":1,"1285":1,"1286":1,"1435":1,"1497":2,"1547":1,"1553":1,"1736":1,"1798":2,"1981":1,"2178":1,"2312":1,"2410":1,"2457":1,"2687":1}}],["indicative",{"2":{"2310":1}}],["indicating",{"2":{"1751":1,"2435":1,"2915":1}}],["indication",{"2":{"1412":1,"1413":6,"1423":1,"1841":1,"1849":1,"2061":1,"2072":1}}],["indicated",{"2":{"1532":1,"1948":1,"2283":1,"2288":1,"2289":1,"2722":1}}],["indicate",{"2":{"1450":1,"1467":1,"1532":1,"1630":1,"2074":1,"2578":1,"2645":1}}],["indicates",{"2":{"563":1,"580":1,"581":1,"582":1,"649":2,"1645":1,"1658":1,"1717":1,"2164":1,"2548":1,"2578":1}}],["indicator",{"0":{"185":1,"2073":1},"1":{"2074":1,"2075":1},"2":{"114":1,"185":1,"191":2,"199":1,"266":1,"298":1,"317":1,"568":1,"1550":1,"1642":1,"1647":1,"1648":1,"1791":1,"1793":1,"1796":2,"1841":1,"1845":1,"1849":3,"1859":1,"1861":1,"2061":1,"2068":1,"2072":3,"2073":3,"2074":2,"2085":1,"2087":1,"2676":1,"2721":2,"2850":1,"2873":1}}],["indicators",{"0":{"1790":1,"1849":1,"1902":1,"1904":1,"1906":1,"1909":1,"2072":1,"2075":1,"2146":1,"2148":1,"2150":1,"2153":1,"2860":1},"1":{"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1903":1,"1905":1,"2147":1,"2149":1},"2":{"63":1,"93":1,"114":1,"149":1,"185":4,"191":1,"211":1,"222":2,"587":1,"666":1,"687":1,"1638":12,"1790":1,"1791":1,"1849":6,"2072":6,"2073":3,"2074":3,"2075":1,"2188":2,"2819":1,"2860":2,"2873":1}}],["indices",{"2":{"149":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"2296":1,"2322":1,"2323":1,"2870":1}}],["indemnification",{"2":{"2728":1}}],["indefinite",{"2":{"2039":1}}],["indefinitely",{"2":{"1592":1,"2570":1,"2747":1,"2750":1}}],["indeed",{"2":{"644":1}}],["indenting",{"2":{"520":1}}],["indent",{"2":{"346":1,"520":2,"522":1,"529":1}}],["indented",{"0":{"346":1},"2":{"348":2,"529":1}}],["indentation",{"2":{"249":1,"520":2,"2600":1}}],["independence",{"2":{"307":1}}],["independently",{"2":{"1604":1,"1933":1,"2014":1,"2189":1,"2260":1,"2468":1}}],["independent",{"0":{"1613":1},"1":{"1614":1},"2":{"113":1,"114":1,"176":1,"1416":1,"2244":1,"2677":1,"2848":1}}],["indexes",{"2":{"2298":1}}],["indexed",{"2":{"692":2,"696":1,"2547":1,"2655":1,"2769":5}}],["index>",{"2":{"432":1}}],["indexing",{"2":{"333":1}}],["index",{"0":{"704":1,"737":1,"741":1,"809":1,"813":1,"817":1,"819":1,"832":1,"834":1,"836":1,"840":1,"844":1,"846":1,"848":1,"850":1,"864":1,"866":1,"868":1,"872":1,"876":1,"878":1,"880":1,"882":1,"894":1,"896":1,"898":1,"900":1,"904":1,"908":1,"910":1,"912":1,"914":1,"929":1,"931":1,"933":1,"935":1,"939":1,"943":1,"945":1,"947":1,"949":1,"963":1,"965":1,"967":1,"969":1,"973":1,"977":1,"979":1,"981":1,"983":1,"997":1,"999":1,"1001":1,"1003":1,"1007":1,"1011":1,"1013":1,"1015":1,"1017":1,"1031":1,"1033":1,"1035":1,"1037":1,"1041":1,"1045":1,"1047":1,"1049":1,"1051":1,"1065":1,"1067":1,"1069":1,"1071":1,"1075":1,"1079":1,"1081":1,"1083":1,"1085":1,"1099":1,"1101":1,"1103":1,"1105":1,"1109":1,"1113":1,"1115":1,"1117":1,"1119":1,"1133":1,"1135":1,"1137":1,"1139":1,"1143":1,"1147":1,"1149":1,"1151":1,"1153":1,"1167":1,"1169":1,"1171":1,"1173":1,"1177":1,"1181":1,"1183":1,"1185":1,"1187":1,"1220":1,"1222":1,"1224":1,"1226":1,"1230":1,"1234":1,"1236":1,"1238":1,"1240":1,"1303":1,"1713":1,"1715":1,"1859":1,"1963":1,"1965":1,"1967":1,"1969":1,"1971":1,"2085":1,"2344":1,"2347":1,"2350":1},"1":{"705":1,"738":1,"742":1,"810":1,"814":1,"818":1,"820":1,"833":1,"835":1,"837":1,"841":1,"845":1,"847":1,"849":1,"851":1,"865":1,"867":1,"869":1,"873":1,"877":1,"879":1,"881":1,"883":1,"895":1,"897":1,"899":1,"901":1,"905":1,"909":1,"911":1,"913":1,"915":1,"930":1,"932":1,"934":1,"936":1,"940":1,"944":1,"946":1,"948":1,"950":1,"964":1,"966":1,"968":1,"970":1,"974":1,"978":1,"980":1,"982":1,"984":1,"998":1,"1000":1,"1002":1,"1004":1,"1008":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":1,"1036":1,"1038":1,"1042":1,"1046":1,"1048":1,"1050":1,"1052":1,"1066":1,"1068":1,"1070":1,"1072":1,"1076":1,"1080":1,"1082":1,"1084":1,"1086":1,"1100":1,"1102":1,"1104":1,"1106":1,"1110":1,"1114":1,"1116":1,"1118":1,"1120":1,"1134":1,"1136":1,"1138":1,"1140":1,"1144":1,"1148":1,"1150":1,"1152":1,"1154":1,"1168":1,"1170":1,"1172":1,"1174":1,"1178":1,"1182":1,"1184":1,"1186":1,"1188":1,"1221":1,"1223":1,"1225":1,"1227":1,"1231":1,"1235":1,"1237":1,"1239":1,"1241":1,"1304":1,"1714":1,"1716":1,"1860":1,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"1973":1,"2086":1,"2345":1,"2346":1,"2348":1,"2349":1,"2351":1},"2":{"46":3,"90":10,"105":8,"160":1,"324":1,"325":2,"333":1,"335":1,"589":1,"611":2,"645":1,"693":1,"705":2,"731":2,"734":1,"738":3,"742":2,"752":1,"802":2,"810":3,"814":3,"818":3,"820":3,"826":1,"828":2,"831":1,"833":2,"835":2,"837":3,"841":3,"845":3,"847":3,"849":2,"851":2,"855":1,"860":2,"863":1,"865":2,"867":2,"869":3,"873":3,"877":3,"879":3,"881":2,"883":2,"887":1,"890":2,"893":1,"895":2,"897":2,"899":2,"901":3,"905":3,"909":3,"911":3,"913":2,"915":2,"919":1,"920":1,"925":2,"928":1,"930":2,"932":2,"934":2,"936":3,"940":3,"944":3,"946":3,"948":2,"950":2,"954":1,"959":2,"962":1,"964":2,"966":2,"968":2,"970":3,"974":3,"978":3,"980":3,"982":2,"984":2,"988":1,"993":2,"996":1,"998":2,"1000":2,"1002":2,"1004":3,"1008":3,"1012":3,"1014":3,"1016":2,"1018":2,"1022":1,"1027":2,"1030":1,"1032":2,"1034":2,"1036":2,"1038":3,"1042":3,"1046":3,"1048":3,"1050":2,"1052":2,"1056":1,"1061":2,"1064":1,"1066":2,"1068":2,"1070":2,"1072":3,"1076":3,"1080":3,"1082":3,"1084":2,"1086":2,"1090":1,"1091":1,"1095":2,"1098":1,"1100":2,"1102":2,"1104":2,"1106":3,"1110":3,"1114":3,"1116":3,"1118":2,"1120":2,"1124":1,"1125":1,"1129":2,"1132":1,"1134":2,"1136":2,"1138":2,"1140":3,"1144":3,"1148":3,"1150":3,"1152":2,"1154":2,"1158":1,"1163":2,"1166":1,"1168":2,"1170":2,"1172":2,"1174":3,"1178":3,"1182":3,"1184":3,"1186":2,"1188":2,"1214":1,"1216":2,"1219":1,"1221":2,"1223":2,"1225":2,"1227":3,"1231":3,"1235":3,"1237":3,"1239":2,"1241":2,"1304":2,"1316":1,"1342":1,"1350":1,"1364":1,"1372":1,"1373":1,"1599":2,"1606":13,"1607":3,"1611":5,"1612":7,"1622":4,"1662":7,"1714":2,"1716":2,"1780":1,"1782":1,"1798":2,"1840":7,"1849":2,"1860":2,"1872":1,"1907":2,"1910":2,"1941":2,"1943":2,"1947":1,"1948":4,"1964":2,"1966":2,"1968":2,"1970":2,"1972":2,"2014":1,"2032":2,"2034":1,"2039":1,"2060":7,"2072":2,"2073":5,"2086":2,"2098":1,"2151":2,"2154":2,"2198":4,"2279":2,"2281":2,"2283":4,"2302":1,"2309":2,"2322":1,"2325":2,"2344":1,"2345":1,"2346":1,"2347":1,"2348":2,"2350":1,"2351":2,"2364":1,"2365":2,"2411":1,"2545":2,"2627":1,"2760":3,"2769":3,"2862":1}}],["inf",{"2":{"685":4}}],["infrequently",{"2":{"214":1}}],["infrastructure",{"0":{"51":1,"65":1,"70":1,"76":1,"95":1},"2":{"2398":1}}],["influence",{"2":{"203":1,"631":1,"2902":1}}],["inferred",{"2":{"2712":1,"2713":1}}],["inferior",{"2":{"1407":1}}],["infer",{"2":{"133":1,"134":1,"236":1,"266":1}}],["infinity87",{"2":{"211":3}}],["infinity60",{"2":{"143":2,"236":1}}],["infinity",{"2":{"114":3,"134":1,"143":2,"2276":1,"2410":2}}],["infinitely",{"2":{"553":1}}],["infinite",{"2":{"93":1,"179":1,"1805":1}}],["informing",{"2":{"2572":1,"2580":1}}],["informs",{"2":{"654":1}}],["inform",{"2":{"276":1,"747":1,"756":1}}],["informed",{"2":{"275":1,"2570":1}}],["information",{"0":{"586":1,"2375":1,"2678":1},"1":{"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2679":1,"2680":1},"2":{"2":1,"14":1,"70":1,"118":1,"132":1,"152":1,"153":1,"169":1,"170":2,"174":1,"182":1,"184":2,"194":1,"196":1,"206":1,"213":1,"247":1,"285":1,"288":2,"289":1,"297":1,"298":1,"304":1,"306":1,"315":1,"320":1,"331":1,"372":1,"373":1,"417":1,"435":3,"464":1,"465":1,"466":1,"484":1,"488":1,"492":1,"559":2,"568":2,"569":1,"572":1,"630":1,"654":1,"663":2,"670":1,"674":1,"695":1,"696":1,"718":1,"723":1,"749":1,"752":1,"763":1,"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1189":1,"1206":1,"1286":1,"1315":1,"1319":1,"1325":1,"1327":1,"1353":1,"1374":1,"1375":1,"1394":1,"1400":1,"1427":1,"1444":2,"1538":1,"1553":1,"1564":1,"1586":2,"1630":1,"1634":1,"1790":1,"1839":1,"1956":1,"1979":1,"1981":1,"1996":1,"2021":1,"2029":1,"2050":1,"2059":1,"2074":1,"2178":1,"2179":1,"2269":1,"2274":1,"2303":1,"2375":1,"2404":1,"2406":1,"2407":2,"2410":1,"2411":4,"2419":1,"2437":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1,"2495":1,"2547":1,"2559":1,"2572":1,"2582":1,"2605":1,"2609":1,"2610":1,"2615":1,"2635":1,"2667":3,"2705":1,"2707":3,"2720":1,"2747":1,"2749":2,"2750":3,"2762":1,"2844":5,"2845":1,"2918":1,"2935":1,"2942":1}}],["info",{"0":{"435":1,"665":1,"668":1,"2438":1,"2844":1},"1":{"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1,"2860":1,"2861":1,"2862":1,"2863":1,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1,"2869":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2875":1,"2876":1},"2":{"70":33,"73":1,"76":4,"99":1,"109":1,"110":1,"111":2,"112":1,"114":5,"134":1,"141":1,"149":1,"160":1,"169":2,"176":3,"184":3,"191":4,"198":1,"199":4,"201":5,"211":22,"213":2,"222":2,"224":2,"232":1,"236":8,"238":1,"249":26,"262":1,"266":3,"277":1,"333":1,"338":1,"346":2,"431":4,"434":1,"435":4,"441":2,"446":1,"461":3,"487":1,"489":1,"490":2,"491":1,"494":1,"498":1,"537":1,"553":3,"663":3,"664":2,"665":1,"666":1,"667":5,"668":2,"670":2,"671":3,"674":1,"1286":1,"1317":1,"1333":1,"1334":1,"1373":1,"1438":1,"1443":1,"1628":1,"1630":1,"1633":1,"1638":1,"1845":1,"1981":1,"1986":2,"2050":1,"2068":1,"2251":1,"2287":1,"2294":1,"2310":1,"2390":1,"2407":1,"2435":1,"2436":1,"2438":1,"2439":1,"2501":17,"2552":1,"2619":1,"2620":1,"2627":1,"2644":1,"2721":5,"2788":3,"2789":1,"2790":1,"2844":4,"2862":2,"2925":1,"2930":1}}],["int9",{"2":{"2508":1,"2515":1}}],["int7",{"2":{"2508":1,"2515":1}}],["int6",{"2":{"2508":1,"2515":1}}],["int3",{"2":{"2508":1,"2515":1}}],["int2",{"2":{"1983":3,"2508":1,"2515":1}}],["int8",{"0":{"1788":1},"1":{"1789":1},"2":{"1658":4,"1775":1,"1789":1,"2025":4,"2039":2,"2270":3,"2293":1,"2508":1,"2515":1}}],["intimidates",{"2":{"2572":1}}],["intimidated",{"2":{"412":1,"548":1}}],["intimidating",{"0":{"1337":1}}],["intimate",{"2":{"754":1}}],["int4",{"2":{"369":1,"2508":1,"2515":1,"2553":1}}],["int5",{"2":{"369":1,"2508":1,"2515":1,"2553":1}}],["int16",{"0":{"1783":1,"1786":1},"1":{"1784":1,"1785":1,"1787":1},"2":{"1771":1,"1775":1,"1787":1,"2750":2}}],["int1",{"2":{"369":1,"2508":1,"2515":1,"2553":1}}],["intrinsics",{"2":{"236":1}}],["introducing",{"2":{"2922":1}}],["introduction",{"0":{"262":1,"470":1,"2301":1,"2404":1},"1":{"471":1,"472":1,"2405":1,"2406":1,"2407":1,"2408":1},"2":{"293":1,"305":1,"314":1,"2638":1,"2926":1}}],["introduces",{"2":{"298":1,"2914":1}}],["introduced",{"2":{"191":1,"211":1,"236":1,"293":1,"305":1,"308":1,"314":1,"663":1,"2621":1}}],["introduce",{"2":{"191":1,"199":1,"359":1,"1843":1,"2063":2}}],["introspection",{"0":{"1634":2},"2":{"176":1,"191":1,"211":1,"222":1,"249":1,"272":1,"277":2,"1634":2}}],["int",{"0":{"737":1,"809":1,"813":1,"836":1,"840":1,"868":1,"872":1,"900":1,"904":1,"935":1,"939":1,"969":1,"973":1,"1003":1,"1007":1,"1037":1,"1041":1,"1071":1,"1075":1,"1105":1,"1109":1,"1139":1,"1143":1,"1173":1,"1177":1,"1226":1,"1230":1,"1303":1},"1":{"738":1,"810":1,"814":1,"837":1,"841":1,"869":1,"873":1,"901":1,"905":1,"936":1,"940":1,"970":1,"974":1,"1004":1,"1008":1,"1038":1,"1042":1,"1072":1,"1076":1,"1106":1,"1110":1,"1140":1,"1144":1,"1174":1,"1178":1,"1227":1,"1231":1,"1304":1},"2":{"211":1,"520":1,"530":1,"531":1,"532":1,"669":2,"698":4,"738":1,"810":1,"814":1,"837":1,"841":1,"869":1,"873":1,"901":1,"905":1,"936":1,"940":1,"970":1,"974":1,"1004":1,"1008":1,"1038":1,"1042":1,"1072":1,"1076":1,"1106":1,"1110":1,"1140":1,"1144":1,"1174":1,"1178":1,"1227":1,"1231":1,"1304":1,"1326":7,"1365":1,"1942":1,"1983":5,"1985":1,"2021":4,"2270":2,"2749":11,"2750":5}}],["intel",{"2":{"2497":1}}],["intelligent",{"2":{"2646":1,"2657":1}}],["intelligently",{"2":{"669":1}}],["intellisense",{"2":{"2009":1,"2663":1,"2664":1,"2667":1}}],["intensity",{"2":{"2180":1}}],["intend",{"2":{"486":1,"541":1,"625":1,"1493":1,"1760":1,"2047":1,"2649":1}}],["intended",{"2":{"240":1,"328":1,"625":1,"654":2,"1416":1,"1422":1,"1633":1,"1996":1,"2669":1,"2670":1,"2671":1,"2897":1,"2901":1,"2914":1}}],["intentional",{"2":{"2569":1}}],["intentionally",{"2":{"2567":3}}],["intention",{"2":{"1516":1,"2721":1}}],["intent",{"2":{"293":1,"305":1,"314":1,"387":1,"520":1,"2895":1}}],["integral",{"2":{"492":1}}],["integrates",{"2":{"2751":1}}],["integrated",{"2":{"1202":1,"1986":1,"2646":1,"2662":4,"2707":1,"2746":1}}],["integrate",{"2":{"133":1,"284":1,"666":1,"2016":1}}],["integration",{"0":{"551":1,"2751":1,"2940":1},"1":{"2752":1,"2753":1,"2754":1,"2755":1,"2756":1,"2757":1},"2":{"118":1,"142":1,"199":1,"503":3,"550":1,"551":1,"2583":1,"2734":1,"2751":1,"2752":1,"2810":1,"2940":1}}],["integrations",{"2":{"24":1,"156":1}}],["integers",{"2":{"669":1,"687":1}}],["integer",{"2":{"114":1,"176":1,"191":1,"222":1,"531":1,"532":2,"669":1,"1487":1,"1785":1,"1946":1,"2025":2,"2282":1,"2310":1,"2744":1,"2758":1,"2765":1,"2901":1}}],["interpolation",{"2":{"2769":3}}],["interprets",{"2":{"1587":2}}],["interpret",{"2":{"1327":1,"1532":1,"1758":1,"1958":1,"2017":1,"2440":1,"2917":1}}],["interpreted",{"0":{"2460":1},"1":{"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2467":1,"2468":1},"2":{"215":1,"1664":1,"2440":1,"2907":1}}],["interdependence",{"2":{"2735":1}}],["intervention",{"2":{"2171":1,"2750":1}}],["intervals",{"2":{"654":1,"1460":1,"1928":1,"2187":6}}],["interval",{"0":{"2223":1,"2227":1,"2241":1},"1":{"2224":1,"2228":1},"2":{"49":1,"63":1,"93":1,"112":2,"328":1,"559":1,"562":1,"564":1,"717":3,"1289":2,"1537":1,"1920":1,"1929":4,"1930":4,"1931":8,"1933":2,"1934":2,"1943":3,"1990":3,"2000":2,"2185":1,"2224":1,"2227":1,"2228":1,"2241":2,"2281":2,"2851":1,"2866":1,"2873":1,"2875":1}}],["inter",{"2":{"2170":1}}],["intercepting",{"0":{"2561":1},"1":{"2562":1,"2563":1,"2564":1},"2":{"2562":1}}],["interceptable",{"2":{"2291":1,"2293":1}}],["intercept",{"2":{"2019":2,"2020":2,"2024":1,"2562":1,"2563":4,"2564":2}}],["interchangeable",{"2":{"2016":1}}],["interfacing",{"0":{"2293":1}}],["interfaces",{"2":{"559":1,"684":1,"2052":6,"2471":1,"2734":1,"2743":1}}],["interface",{"2":{"49":2,"114":1,"308":1,"414":1,"711":1,"725":1,"1245":1,"1369":1,"1404":2,"1478":1,"2047":1,"2049":3,"2050":1,"2052":11,"2501":1,"2582":1,"2632":1,"2729":1,"2737":1,"2749":1,"2812":1,"2841":1}}],["interfere",{"2":{"1359":1,"2920":1}}],["internet",{"2":{"763":1,"2934":1}}],["internally",{"2":{"2009":1,"2253":1,"2749":2,"2750":4}}],["internal",{"2":{"174":1,"211":1,"231":1,"235":1,"695":1,"711":1,"745":1,"1196":1,"1310":1,"1354":1,"1359":1,"1375":1,"1529":1,"1603":1,"1917":1,"2006":1,"2512":1,"2675":1,"2688":1,"2698":1,"2747":2,"2750":2,"2755":1}}],["internals",{"0":{"25":1,"51":1,"65":1,"70":1,"76":1,"95":1},"2":{"263":1,"546":1,"642":1,"1655":1}}],["international",{"0":{"2508":1},"2":{"74":1,"188":1,"191":1,"2323":1,"2467":1,"2508":12,"2515":18,"2880":5}}],["intermittently",{"2":{"613":1,"2676":1}}],["intermediates=yes",{"2":{"211":1}}],["intermediate",{"0":{"1420":1,"1745":1,"2924":1},"1":{"1746":1,"1747":1},"2":{"211":1,"222":1,"465":1,"466":1,"1532":1,"1953":1,"1956":1,"2591":1,"2748":2,"2923":1}}],["intersections",{"0":{"1625":1},"2":{"1620":1,"2265":2,"2865":1}}],["intersection",{"2":{"567":2,"2265":4}}],["interacting",{"2":{"488":1}}],["interaction",{"0":{"488":1},"1":{"489":1,"490":1,"491":1,"492":1},"2":{"363":1,"1642":1,"1757":1,"2038":1,"2171":1}}],["interactions",{"2":{"133":1,"134":1,"488":1}}],["interact",{"2":{"360":1,"473":1,"487":1,"494":1,"2270":1,"2698":1}}],["interacts",{"2":{"263":1}}],["interoperate",{"2":{"218":1}}],["interoperation",{"2":{"182":1}}],["interesting",{"2":{"2410":1,"2553":1,"2554":1,"2568":1}}],["interested",{"2":{"375":1,"377":1,"574":1,"611":1,"1531":1,"2750":1}}],["interest",{"2":{"175":1}}],["interrupter",{"2":{"2301":1}}],["interrupted",{"2":{"562":1,"1326":1,"2301":1,"2303":1,"2310":5}}],["interrupting",{"2":{"1512":1}}],["interruptions",{"2":{"760":1,"2303":1}}],["interruption",{"2":{"562":1}}],["interrupts",{"2":{"760":3,"1979":1,"2902":1}}],["interrupt",{"0":{"194":1,"206":1,"1983":1,"1984":1},"2":{"22":2,"73":1,"112":2,"114":1,"194":10,"199":1,"206":2,"211":2,"294":1,"760":1,"765":1,"1202":1,"1289":1,"1555":1,"1981":1,"1982":1,"1983":2,"1984":2,"1985":1,"2605":1,"2868":1}}],["into",{"0":{"2605":1,"2607":1},"2":{"18":1,"21":1,"35":1,"36":1,"50":2,"65":2,"72":1,"73":1,"75":1,"99":1,"113":1,"114":7,"119":1,"131":1,"133":1,"134":4,"149":27,"160":3,"173":1,"176":1,"179":1,"188":1,"191":1,"198":2,"201":3,"211":1,"213":1,"218":1,"222":2,"224":1,"236":1,"238":1,"249":11,"254":1,"265":1,"266":1,"272":1,"277":1,"284":1,"288":1,"302":1,"359":1,"360":1,"370":2,"393":1,"400":1,"401":1,"403":1,"405":1,"406":4,"408":1,"430":1,"446":2,"447":2,"448":1,"468":1,"474":1,"481":1,"493":1,"507":1,"509":1,"510":1,"548":1,"556":1,"566":4,"573":2,"577":1,"583":1,"596":1,"613":1,"617":1,"641":2,"642":1,"649":1,"654":1,"663":1,"666":1,"681":1,"683":1,"685":1,"711":1,"738":1,"777":1,"780":1,"789":1,"792":1,"810":1,"814":1,"818":1,"820":1,"837":1,"841":1,"845":1,"847":1,"869":1,"873":1,"877":1,"879":1,"901":1,"905":1,"909":1,"911":1,"936":1,"940":1,"944":1,"946":1,"970":1,"974":1,"978":1,"980":1,"1004":1,"1008":1,"1012":1,"1014":1,"1038":1,"1042":1,"1046":1,"1048":1,"1072":1,"1076":1,"1080":1,"1082":1,"1106":1,"1110":1,"1114":1,"1116":1,"1140":1,"1144":1,"1148":1,"1150":1,"1174":1,"1178":1,"1182":1,"1184":1,"1227":1,"1231":1,"1235":1,"1237":1,"1260":1,"1277":1,"1313":1,"1345":3,"1362":2,"1410":1,"1418":1,"1427":2,"1443":1,"1477":1,"1479":1,"1485":1,"1532":1,"1583":2,"1603":2,"1616":1,"1622":1,"1626":1,"1627":1,"1628":2,"1634":1,"1662":1,"1678":1,"1753":1,"1838":1,"1942":1,"1946":1,"1948":2,"1991":1,"1992":2,"2016":1,"2025":1,"2058":1,"2189":1,"2242":1,"2252":1,"2254":1,"2282":1,"2283":2,"2284":1,"2289":1,"2302":2,"2318":1,"2322":1,"2344":1,"2346":1,"2348":1,"2351":1,"2365":1,"2376":1,"2381":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":1,"2395":1,"2403":2,"2425":1,"2427":1,"2428":1,"2446":1,"2475":1,"2497":1,"2516":2,"2554":1,"2557":1,"2560":1,"2567":1,"2568":1,"2569":1,"2570":1,"2571":1,"2572":1,"2599":1,"2601":1,"2602":1,"2603":2,"2605":1,"2607":2,"2608":1,"2613":1,"2619":1,"2628":1,"2667":1,"2668":1,"2700":1,"2706":1,"2707":1,"2721":4,"2727":1,"2734":1,"2744":2,"2745":2,"2746":2,"2749":1,"2750":2,"2752":1,"2758":1,"2788":4,"2804":1,"2842":1,"2845":1,"2881":1,"2882":1,"2884":1,"2886":1,"2897":1,"2924":1,"2932":1,"2942":1}}],["inclination",{"2":{"2700":1}}],["inclusive",{"2":{"1840":1,"2017":2,"2060":1,"2750":1}}],["inclusions",{"2":{"236":1}}],["inclusion",{"2":{"50":1,"74":1,"134":1,"176":2,"234":1,"236":1,"397":1}}],["including",{"2":{"30":1,"33":1,"49":1,"174":1,"234":1,"235":1,"248":1,"277":1,"288":1,"298":1,"327":1,"492":1,"558":1,"700":1,"762":1,"1198":1,"1243":1,"1264":1,"1281":1,"1324":1,"1437":1,"1526":1,"1759":1,"2160":1,"2188":1,"2191":1,"2274":1,"2289":1,"2311":1,"2322":1,"2400":1,"2447":1,"2567":1,"2594":1,"2632":1,"2671":1,"2720":1,"2721":3,"2740":1,"2741":1,"2759":1,"2766":1,"2879":1,"2927":1}}],["include=",{"2":{"2410":2}}],["included",{"0":{"394":1,"397":1},"2":{"10":2,"114":1,"160":1,"273":1,"288":1,"308":1,"397":1,"400":1,"401":1,"535":1,"537":1,"558":2,"569":1,"677":1,"700":1,"727":1,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1432":1,"1434":2,"1435":1,"1479":1,"1520":1,"1633":1,"1986":1,"2198":2,"2374":1,"2410":2,"2411":1,"2441":1,"2551":1,"2567":2,"2663":1,"2722":4,"2758":2,"2760":1,"2774":1,"2894":1,"2933":1,"2937":1}}],["includes",{"0":{"1432":1},"2":{"5":1,"10":2,"12":1,"25":1,"94":1,"114":3,"191":6,"194":1,"211":1,"222":7,"266":4,"393":1,"397":1,"408":1,"572":1,"1346":1,"1401":1,"1405":2,"1548":1,"1849":1,"2072":1,"2179":1,"2374":1,"2398":1,"2411":1,"2463":1,"2559":1,"2566":1,"2568":2,"2569":1,"2666":1,"2700":2,"2726":1,"2746":1,"2758":1,"2765":1,"2879":1,"2884":1,"2935":1,"2936":1}}],["include",{"0":{"2920":1},"2":{"4":1,"12":1,"22":1,"50":1,"73":1,"114":3,"132":1,"133":2,"134":5,"149":2,"176":4,"199":1,"211":1,"222":1,"236":2,"265":1,"276":1,"277":1,"333":1,"405":1,"427":2,"431":3,"503":1,"520":3,"521":1,"522":1,"534":1,"587":1,"616":2,"620":1,"673":1,"688":2,"714":2,"715":2,"718":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1296":2,"1300":2,"1314":1,"1324":1,"1362":1,"1402":1,"1406":1,"1432":3,"1434":1,"1435":2,"1438":1,"1443":6,"1448":1,"1453":2,"1473":1,"1498":1,"1500":1,"1502":1,"1509":1,"1562":2,"1563":2,"1616":2,"1655":1,"1680":1,"1735":1,"1918":1,"1951":1,"1956":1,"1984":1,"1995":1,"2159":1,"2181":1,"2194":1,"2312":3,"2322":1,"2409":1,"2411":6,"2418":1,"2430":1,"2440":1,"2442":1,"2451":1,"2551":1,"2569":2,"2598":1,"2660":1,"2719":2,"2720":1,"2721":8,"2726":1,"2743":1,"2748":1,"2750":4,"2824":1,"2832":1,"2845":2,"2878":3,"2879":2,"2882":1,"2894":1,"2920":1,"2937":2,"2941":1}}],["inch",{"2":{"2014":1}}],["inc",{"0":{"1635":1,"1636":1},"2":{"1635":2,"1636":2,"1844":2,"2066":2,"2937":1}}],["incredibly",{"2":{"1804":2,"2774":1}}],["increasing",{"2":{"563":1,"750":1,"1930":1,"1943":1,"2016":1,"2189":1,"2372":2,"2560":1,"2669":1,"2902":1}}],["increase",{"0":{"1570":1,"1873":1,"1874":1,"1879":1,"1880":1,"2099":1,"2100":1,"2105":1,"2106":1,"2111":1,"2112":1,"2117":1,"2118":1},"2":{"134":2,"149":1,"211":2,"561":1,"562":1,"563":1,"658":1,"1319":1,"1481":1,"1514":1,"1516":2,"1549":1,"1570":1,"1603":1,"1655":1,"1656":1,"1662":2,"1674":2,"1682":1,"1842":2,"1843":1,"1873":1,"1874":1,"1879":1,"1880":1,"1919":4,"1947":1,"2016":1,"2062":3,"2063":3,"2064":1,"2099":1,"2100":1,"2105":1,"2106":1,"2111":1,"2112":1,"2117":1,"2118":1,"2181":8,"2189":1,"2201":12,"2202":2,"2211":1,"2246":1,"2247":3,"2302":1,"2420":1,"2520":1,"2530":2,"2532":4,"2537":8,"2538":3,"2757":1,"2901":1}}],["increases",{"2":{"119":1,"215":1,"1487":1,"1489":1,"1845":1,"1846":2,"2064":2,"2068":1,"2069":2,"2202":2,"2517":1,"2536":1,"2669":1,"2864":1,"2871":1,"2901":2}}],["increased",{"2":{"70":1,"175":1,"262":1,"408":1,"655":1,"699":1,"752":2,"2064":1,"2179":1,"2312":1,"2750":2}}],["incrementms",{"2":{"2536":2,"2901":2}}],["incremented",{"2":{"1696":1,"2303":1}}],["incremental",{"2":{"421":1}}],["incrementing",{"2":{"403":1,"1941":1,"2279":1}}],["increments",{"2":{"160":1,"1998":1,"1999":1,"2013":1,"2014":2}}],["increment",{"2":{"114":1,"1533":2,"1846":2,"1941":1,"2069":4,"2182":3,"2279":1,"2864":2,"2870":3,"2871":4,"2901":2}}],["inception",{"2":{"113":1}}],["inconsistencies",{"2":{"2718":1}}],["inconsistent",{"2":{"520":1,"1285":1,"1364":1}}],["incoming",{"2":{"1526":1}}],["incomplete",{"2":{"614":1,"1794":1}}],["incompatibility",{"2":{"284":1,"2729":1}}],["incompatible",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"393":1,"1193":1,"1402":1,"2567":1,"2726":1,"2728":1,"2737":1}}],["incorporated",{"2":{"493":1,"556":1}}],["incorporates",{"2":{"408":1,"2821":1}}],["incorrect",{"2":{"114":1,"160":1,"191":2,"198":1,"211":1,"249":1,"333":1,"686":1,"1659":1,"1664":1,"2172":1,"2496":1,"2501":1,"2600":1}}],["incorrectly",{"2":{"11":1,"751":1,"1518":1,"1956":1,"2427":1}}],["in",{"0":{"3":1,"7":1,"8":1,"15":1,"23":1,"120":1,"218":1,"273":1,"394":1,"603":1,"1308":1,"1314":1,"1354":1,"1355":1,"1373":1,"1445":1,"1449":1,"1454":1,"1497":1,"1624":1,"1625":2,"1647":1,"1648":1,"1655":1,"2248":1,"2284":1,"2285":1,"2578":1,"2786":1},"1":{"1309":1,"1446":1,"1447":1,"1448":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1455":1,"1456":1,"1457":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1,"1656":1,"1657":1,"1658":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"0":1,"3":3,"5":2,"6":1,"9":1,"10":3,"11":1,"15":3,"16":2,"17":1,"19":1,"25":3,"28":1,"31":1,"33":1,"39":1,"48":1,"49":9,"50":5,"52":1,"55":1,"62":1,"64":1,"70":33,"73":2,"74":4,"75":3,"76":2,"77":1,"86":2,"87":1,"92":4,"94":1,"95":2,"99":3,"103":3,"108":1,"109":1,"110":2,"111":1,"113":1,"114":13,"118":1,"119":5,"120":4,"123":2,"124":4,"125":2,"126":1,"132":1,"133":1,"134":13,"142":1,"149":10,"154":2,"156":3,"158":3,"160":3,"169":3,"170":2,"172":2,"174":1,"175":2,"176":21,"179":1,"182":10,"184":3,"185":2,"186":1,"188":1,"189":1,"190":1,"191":13,"194":7,"195":1,"196":2,"199":11,"201":4,"202":2,"204":1,"206":2,"211":9,"213":1,"214":1,"215":2,"218":2,"221":2,"222":10,"228":3,"231":1,"232":1,"233":2,"234":4,"236":4,"240":2,"246":2,"248":1,"249":7,"251":1,"254":1,"262":1,"263":3,"264":1,"265":2,"266":7,"268":1,"272":1,"273":2,"274":1,"276":2,"277":2,"282":1,"283":1,"284":2,"285":4,"288":2,"289":1,"292":1,"294":2,"301":1,"303":2,"306":1,"307":4,"308":6,"312":1,"313":1,"315":1,"317":2,"320":1,"326":1,"328":1,"332":2,"333":4,"334":1,"338":5,"347":1,"348":1,"370":1,"371":1,"373":5,"375":2,"376":1,"377":1,"378":1,"387":2,"390":1,"391":3,"392":1,"393":4,"397":6,"399":1,"400":1,"401":1,"405":3,"408":3,"410":1,"415":1,"419":1,"420":2,"421":1,"427":10,"428":2,"430":1,"434":1,"435":3,"437":1,"438":2,"439":1,"440":2,"442":2,"443":2,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"456":2,"458":2,"460":2,"461":1,"462":1,"481":1,"487":4,"489":3,"493":2,"494":3,"495":1,"496":1,"502":1,"503":3,"509":1,"520":2,"521":2,"522":1,"523":1,"524":2,"527":1,"528":2,"529":2,"536":1,"537":1,"540":2,"541":2,"543":1,"546":1,"547":1,"548":3,"549":1,"550":1,"551":1,"552":1,"553":2,"554":1,"555":1,"559":9,"562":2,"563":3,"565":1,"566":1,"567":3,"568":1,"573":3,"574":1,"578":1,"582":1,"586":5,"587":2,"589":2,"590":2,"591":3,"592":2,"593":1,"594":2,"595":2,"596":1,"597":3,"598":1,"608":1,"609":4,"611":3,"613":3,"614":4,"616":4,"617":6,"618":2,"619":1,"622":2,"623":2,"624":1,"630":1,"631":2,"637":1,"638":1,"641":2,"645":3,"653":1,"654":2,"655":2,"658":1,"664":3,"666":6,"667":3,"670":1,"671":2,"673":2,"674":4,"675":1,"676":1,"677":2,"681":1,"682":1,"683":5,"684":3,"685":3,"686":3,"687":1,"692":3,"693":2,"698":2,"700":2,"701":2,"705":1,"711":1,"713":1,"714":2,"715":2,"716":1,"717":1,"719":1,"723":1,"724":3,"731":3,"743":2,"745":1,"746":6,"747":6,"748":2,"750":1,"751":7,"752":3,"753":1,"754":1,"756":11,"758":1,"760":1,"761":1,"762":2,"764":1,"765":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"794":1,"795":1,"799":1,"802":2,"825":1,"826":1,"828":2,"854":1,"855":1,"857":6,"860":3,"886":1,"887":1,"890":3,"918":1,"919":1,"920":1,"925":3,"953":1,"954":1,"959":3,"987":1,"988":1,"993":3,"1021":1,"1022":1,"1027":3,"1055":1,"1056":1,"1061":3,"1089":1,"1090":1,"1091":1,"1092":6,"1095":3,"1123":1,"1124":1,"1125":1,"1126":6,"1129":3,"1157":1,"1158":1,"1160":6,"1163":3,"1189":2,"1191":1,"1192":1,"1194":2,"1195":2,"1197":2,"1198":2,"1200":3,"1201":3,"1202":2,"1203":1,"1204":1,"1205":3,"1210":7,"1213":1,"1214":1,"1216":3,"1242":1,"1243":2,"1245":4,"1250":1,"1263":2,"1264":2,"1280":1,"1281":2,"1282":6,"1283":1,"1284":1,"1285":1,"1286":2,"1288":1,"1289":1,"1292":2,"1294":4,"1295":1,"1304":1,"1308":1,"1313":1,"1316":2,"1317":1,"1319":2,"1327":2,"1329":2,"1335":1,"1339":1,"1340":2,"1342":1,"1343":1,"1344":1,"1345":4,"1347":1,"1348":3,"1351":2,"1353":2,"1354":1,"1362":3,"1363":4,"1365":4,"1366":2,"1367":2,"1373":2,"1375":7,"1376":1,"1377":2,"1378":2,"1385":2,"1392":1,"1403":1,"1406":4,"1407":9,"1409":1,"1410":1,"1411":2,"1412":2,"1413":6,"1416":1,"1417":1,"1419":2,"1421":5,"1422":4,"1425":1,"1426":1,"1427":3,"1428":3,"1429":1,"1433":3,"1434":3,"1435":6,"1436":1,"1437":4,"1438":1,"1439":1,"1441":9,"1442":5,"1443":3,"1445":2,"1446":1,"1448":1,"1450":1,"1451":2,"1452":3,"1453":1,"1455":3,"1468":1,"1471":1,"1474":2,"1475":3,"1476":1,"1477":3,"1478":1,"1479":6,"1481":2,"1482":2,"1483":2,"1484":1,"1485":4,"1486":3,"1487":2,"1489":1,"1493":2,"1494":1,"1495":1,"1496":1,"1497":3,"1508":1,"1512":2,"1513":1,"1515":1,"1516":1,"1517":1,"1519":3,"1520":2,"1521":3,"1527":3,"1529":1,"1531":3,"1532":9,"1533":2,"1537":1,"1541":1,"1544":1,"1546":1,"1547":1,"1550":1,"1551":1,"1552":1,"1553":1,"1556":1,"1557":1,"1562":1,"1564":2,"1583":2,"1584":1,"1585":3,"1587":3,"1588":3,"1589":2,"1591":1,"1592":1,"1595":1,"1596":1,"1597":2,"1599":3,"1600":1,"1601":1,"1603":2,"1605":3,"1606":14,"1613":1,"1614":1,"1615":1,"1616":4,"1617":1,"1619":1,"1620":3,"1627":2,"1628":2,"1630":2,"1631":1,"1632":1,"1634":1,"1635":1,"1636":1,"1642":6,"1645":2,"1647":1,"1648":1,"1655":3,"1656":4,"1660":2,"1661":1,"1662":1,"1664":2,"1666":1,"1669":1,"1670":1,"1672":2,"1675":5,"1676":1,"1677":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1691":1,"1696":2,"1732":1,"1733":2,"1735":1,"1736":2,"1738":1,"1740":1,"1746":2,"1747":2,"1751":1,"1752":2,"1753":1,"1754":3,"1755":1,"1756":4,"1757":2,"1758":3,"1760":2,"1761":1,"1762":2,"1764":2,"1765":3,"1768":1,"1770":3,"1790":2,"1791":1,"1792":2,"1793":1,"1798":1,"1799":1,"1801":1,"1805":3,"1807":1,"1840":1,"1842":2,"1843":5,"1844":5,"1845":4,"1846":2,"1849":2,"1901":1,"1907":2,"1910":2,"1913":1,"1917":1,"1920":1,"1924":1,"1927":1,"1928":2,"1929":3,"1930":3,"1931":2,"1932":1,"1933":5,"1934":2,"1939":1,"1940":1,"1941":3,"1942":2,"1943":4,"1946":3,"1947":7,"1948":4,"1951":2,"1952":1,"1953":2,"1954":2,"1956":5,"1958":1,"1981":2,"1982":2,"1983":2,"1984":3,"1985":2,"1986":1,"1990":1,"1993":1,"1995":2,"1996":1,"1998":1,"1999":1,"2000":1,"2001":1,"2002":3,"2003":8,"2005":1,"2006":5,"2007":1,"2008":3,"2009":4,"2011":1,"2012":1,"2013":1,"2014":9,"2015":1,"2017":6,"2021":6,"2023":3,"2025":3,"2029":1,"2030":1,"2031":1,"2032":4,"2037":1,"2039":2,"2042":1,"2043":3,"2044":2,"2045":1,"2046":3,"2047":1,"2050":3,"2051":1,"2052":1,"2055":1,"2057":1,"2060":1,"2062":3,"2063":12,"2064":2,"2066":5,"2067":1,"2068":4,"2069":2,"2072":2,"2145":1,"2151":2,"2154":2,"2156":1,"2157":2,"2159":4,"2160":1,"2161":2,"2163":2,"2164":1,"2167":2,"2168":1,"2170":2,"2177":1,"2178":1,"2179":2,"2181":3,"2182":1,"2183":1,"2185":2,"2187":6,"2188":1,"2189":5,"2191":1,"2194":2,"2199":4,"2205":1,"2206":4,"2207":1,"2210":1,"2212":1,"2215":1,"2224":1,"2228":1,"2243":1,"2249":2,"2251":1,"2252":4,"2253":1,"2254":1,"2257":1,"2258":2,"2260":1,"2262":2,"2263":1,"2265":2,"2266":4,"2268":2,"2269":1,"2270":4,"2271":2,"2277":1,"2278":1,"2279":3,"2280":2,"2281":2,"2282":1,"2283":3,"2284":2,"2285":1,"2286":5,"2287":3,"2288":1,"2289":1,"2290":3,"2291":4,"2293":5,"2294":2,"2295":2,"2296":1,"2298":1,"2301":2,"2302":9,"2303":5,"2305":3,"2306":1,"2309":1,"2310":12,"2311":3,"2312":6,"2315":1,"2318":1,"2320":1,"2322":5,"2323":6,"2324":5,"2325":2,"2337":1,"2338":1,"2339":1,"2347":1,"2350":1,"2355":1,"2367":1,"2368":1,"2370":1,"2372":3,"2374":1,"2375":2,"2376":3,"2378":1,"2379":2,"2380":1,"2381":2,"2382":3,"2383":4,"2384":2,"2386":2,"2387":1,"2388":2,"2389":1,"2390":1,"2391":2,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":3,"2400":3,"2403":2,"2405":3,"2408":1,"2409":1,"2410":2,"2411":12,"2412":1,"2415":2,"2416":3,"2418":1,"2419":1,"2420":2,"2421":5,"2422":5,"2423":1,"2424":4,"2425":2,"2426":2,"2427":2,"2428":4,"2434":1,"2435":2,"2436":2,"2438":3,"2439":8,"2440":4,"2441":3,"2443":3,"2445":3,"2446":1,"2447":1,"2448":1,"2449":3,"2451":1,"2459":8,"2460":1,"2461":1,"2462":1,"2466":2,"2467":1,"2468":2,"2475":4,"2483":1,"2490":2,"2491":1,"2492":2,"2493":1,"2494":2,"2495":3,"2496":2,"2497":1,"2498":2,"2501":3,"2502":1,"2510":2,"2512":2,"2514":2,"2515":2,"2517":1,"2521":1,"2528":1,"2530":2,"2536":1,"2537":1,"2538":3,"2545":2,"2547":4,"2548":2,"2549":2,"2550":2,"2551":3,"2552":2,"2553":2,"2554":2,"2557":3,"2559":2,"2560":2,"2562":1,"2566":2,"2567":5,"2568":3,"2569":4,"2570":3,"2571":1,"2576":1,"2577":2,"2578":1,"2579":1,"2584":1,"2587":4,"2588":1,"2589":1,"2590":2,"2591":3,"2598":2,"2599":2,"2600":1,"2601":1,"2602":2,"2603":4,"2605":9,"2607":4,"2608":1,"2609":2,"2615":1,"2619":1,"2621":4,"2622":2,"2625":3,"2626":2,"2627":8,"2628":1,"2630":2,"2631":1,"2632":1,"2633":1,"2635":2,"2643":3,"2644":1,"2645":2,"2646":1,"2648":1,"2650":1,"2657":1,"2660":1,"2662":4,"2664":1,"2666":1,"2667":9,"2668":1,"2669":3,"2670":1,"2671":1,"2673":2,"2674":1,"2677":2,"2681":1,"2683":2,"2684":2,"2687":1,"2688":1,"2693":3,"2695":2,"2697":2,"2698":1,"2699":1,"2700":3,"2702":2,"2703":1,"2704":2,"2706":1,"2707":1,"2709":1,"2710":5,"2712":1,"2713":1,"2714":1,"2718":1,"2719":6,"2721":19,"2722":4,"2723":2,"2724":4,"2725":1,"2726":1,"2728":2,"2734":1,"2740":1,"2743":1,"2744":1,"2745":1,"2746":1,"2747":5,"2748":3,"2749":38,"2750":14,"2751":2,"2754":1,"2756":1,"2758":2,"2760":5,"2761":1,"2763":1,"2764":2,"2765":2,"2766":2,"2767":4,"2768":2,"2769":3,"2770":2,"2771":1,"2773":1,"2774":1,"2780":2,"2786":1,"2787":4,"2788":7,"2789":4,"2792":1,"2793":4,"2802":1,"2803":1,"2805":1,"2811":1,"2833":1,"2835":1,"2839":2,"2843":1,"2844":2,"2846":2,"2847":2,"2848":2,"2849":1,"2850":1,"2851":4,"2854":1,"2855":1,"2856":1,"2862":10,"2863":1,"2864":5,"2865":2,"2867":2,"2870":1,"2871":5,"2873":3,"2875":2,"2876":2,"2877":4,"2878":2,"2879":3,"2880":1,"2882":1,"2883":1,"2885":1,"2887":3,"2889":1,"2894":3,"2895":1,"2897":1,"2899":1,"2900":1,"2901":13,"2902":5,"2903":3,"2907":2,"2908":6,"2909":1,"2910":1,"2911":2,"2913":2,"2914":4,"2915":6,"2916":2,"2917":5,"2918":1,"2919":5,"2920":1,"2923":2,"2924":1,"2927":3,"2928":3,"2930":2,"2933":2,"2934":2,"2936":2,"2937":5,"2938":1,"2939":1,"2940":1,"2942":4}}],["is25lp080",{"2":{"2698":2}}],["isc20",{"2":{"1983":1}}],["isc21",{"2":{"1983":1}}],["isdata",{"0":{"1719":1,"1721":1},"1":{"1720":1,"1722":1,"1723":1},"2":{"1720":1,"1722":1,"1723":1}}],["is=yes",{"2":{"1392":1}}],["isn",{"0":{"1335":1,"1347":1},"2":{"347":1,"595":1,"635":1,"643":1,"1194":1,"1378":1,"1436":1,"1479":1,"1511":1,"2015":1,"2265":1,"2422":1,"2459":1,"2660":1,"2662":1,"2882":1,"2921":1}}],["islefthand",{"0":{"332":1},"2":{"332":2,"333":2}}],["isp",{"0":{"2475":1,"2477":1,"2479":1,"2481":1,"2811":1},"1":{"2476":1,"2477":1,"2478":2,"2479":1,"2480":2,"2481":1,"2482":2,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2498":1,"2499":1,"2500":1,"2501":1},"2":{"328":1,"428":1,"686":1,"2381":1,"2382":1,"2475":2,"2476":3,"2477":2,"2479":2,"2481":2,"2484":1,"2486":1,"2487":1,"2489":2,"2490":1,"2495":2,"2497":1,"2567":1}}],["ish",{"0":{"344":1},"2":{"160":2,"211":1,"2312":1}}],["issi",{"2":{"114":2,"134":3,"176":1,"211":1,"236":4,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1}}],["issuing",{"2":{"49":1}}],["issued",{"2":{"2567":1,"2897":1}}],["issuecomment",{"2":{"1356":1}}],["issues",{"0":{"312":1,"2679":1,"2790":1,"2892":1},"1":{"2791":1,"2792":1,"2793":1},"2":{"24":1,"25":1,"86":1,"114":7,"134":8,"149":2,"160":1,"176":3,"199":1,"211":2,"240":1,"263":1,"266":1,"273":1,"276":1,"285":1,"294":1,"317":1,"333":1,"408":1,"562":2,"596":1,"611":1,"1190":1,"1204":1,"1206":1,"1312":1,"1315":1,"1316":1,"1326":1,"1328":1,"1334":1,"1335":1,"1349":1,"1350":1,"1353":1,"1356":3,"1358":1,"1373":1,"1413":1,"1417":1,"1437":1,"1459":1,"1480":1,"1484":1,"1557":1,"1603":1,"1954":2,"1955":2,"2017":1,"2025":1,"2029":1,"2265":1,"2268":1,"2291":1,"2324":1,"2398":1,"2557":1,"2560":2,"2583":1,"2627":1,"2628":1,"2633":1,"2644":1,"2655":1,"2664":1,"2672":1,"2675":1,"2679":1,"2783":1,"2898":2}}],["issue",{"0":{"1335":1},"2":{"5":1,"6":1,"73":1,"92":1,"114":2,"149":2,"176":4,"191":2,"199":3,"211":3,"236":1,"249":1,"294":2,"408":1,"552":1,"568":1,"602":1,"610":1,"611":6,"616":1,"617":1,"618":1,"642":1,"666":1,"670":1,"1293":1,"1315":1,"1330":1,"1333":1,"1335":1,"1336":1,"1339":1,"1353":1,"1427":1,"1634":1,"1956":1,"2042":1,"2439":1,"2453":1,"2483":1,"2555":1,"2557":1,"2560":1,"2631":1,"2644":1,"2675":1,"2679":1,"2683":1,"2697":1,"2718":1,"2720":1,"2723":1,"2810":1,"2843":1,"2892":2}}],["is31flcommon",{"2":{"249":1}}],["is31fl3236",{"0":{"823":1,"830":1,"832":1,"834":1,"836":1,"838":1,"840":1,"842":1,"844":1,"846":1,"848":1,"850":1},"1":{"824":1,"825":1,"826":1,"827":1,"828":1,"829":1,"830":1,"831":2,"832":1,"833":2,"834":1,"835":2,"836":1,"837":2,"838":1,"839":2,"840":1,"841":2,"842":1,"843":2,"844":1,"845":2,"846":1,"847":2,"848":1,"849":2,"850":1,"851":2},"2":{"266":1,"823":1,"824":4,"825":7,"826":6,"828":6,"836":1,"837":1,"840":1,"841":1,"844":1,"845":1,"846":1,"847":1,"1839":1,"2059":1,"2871":1}}],["is31fl3218",{"0":{"797":1,"804":1,"806":1,"807":1,"809":1,"811":1,"813":1,"815":1,"817":1,"819":1,"821":1,"822":1},"1":{"798":1,"799":1,"800":1,"801":1,"802":1,"803":1,"804":1,"805":2,"806":1,"807":1,"808":2,"809":1,"810":2,"811":1,"812":2,"813":1,"814":2,"815":1,"816":2,"817":1,"818":2,"819":1,"820":2,"821":1,"822":1},"2":{"236":3,"797":1,"798":4,"799":3,"800":2,"802":6,"809":1,"810":1,"813":1,"814":1,"817":1,"818":1,"819":1,"820":1,"1839":2,"2059":2,"2864":1,"2871":1}}],["is31fl3729",{"0":{"852":1,"862":1,"864":1,"866":1,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"880":1,"882":1},"1":{"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":2,"864":1,"865":2,"866":1,"867":2,"868":1,"869":2,"870":1,"871":2,"872":1,"873":2,"874":1,"875":2,"876":1,"877":2,"878":1,"879":2,"880":1,"881":2,"882":1,"883":2},"2":{"249":2,"333":1,"852":1,"853":4,"854":14,"855":6,"856":10,"857":22,"858":1,"860":6,"868":1,"869":1,"872":1,"873":1,"876":1,"877":1,"878":1,"879":1,"1839":1,"2059":1,"2871":1}}],["is31fl3741a",{"2":{"1019":1,"1021":1,"1023":1}}],["is31fl3741",{"0":{"1019":1,"1029":1,"1031":1,"1033":1,"1035":1,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1051":1},"1":{"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":2,"1031":1,"1032":2,"1033":1,"1034":2,"1035":1,"1036":2,"1037":1,"1038":2,"1039":1,"1040":2,"1041":1,"1042":2,"1043":1,"1044":2,"1045":1,"1046":2,"1047":1,"1048":2,"1049":1,"1050":2,"1051":1,"1052":2},"2":{"221":2,"236":2,"249":1,"1020":4,"1021":15,"1022":6,"1023":6,"1024":22,"1025":1,"1027":6,"1037":1,"1038":1,"1041":1,"1042":1,"1045":1,"1046":1,"1047":1,"1048":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3746a",{"0":{"1155":1,"1165":1,"1167":1,"1169":1,"1171":1,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1185":1,"1187":1},"1":{"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":2,"1167":1,"1168":2,"1169":1,"1170":2,"1171":1,"1172":2,"1173":1,"1174":2,"1175":1,"1176":2,"1177":1,"1178":2,"1179":1,"1180":2,"1181":1,"1182":2,"1183":1,"1184":2,"1185":1,"1186":2,"1187":1,"1188":2},"2":{"147":1,"149":1,"221":4,"249":1,"1155":1,"1156":4,"1157":15,"1158":18,"1159":9,"1160":22,"1161":1,"1163":6,"1173":1,"1174":1,"1177":1,"1178":1,"1181":1,"1182":1,"1183":1,"1184":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3745",{"0":{"1121":1,"1131":1,"1133":1,"1135":1,"1137":1,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1151":1,"1153":1},"1":{"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1128":1,"1129":1,"1130":1,"1131":1,"1132":2,"1133":1,"1134":2,"1135":1,"1136":2,"1137":1,"1138":2,"1139":1,"1140":2,"1141":1,"1142":2,"1143":1,"1144":2,"1145":1,"1146":2,"1147":1,"1148":2,"1149":1,"1150":2,"1151":1,"1152":2,"1153":1,"1154":2},"2":{"147":1,"149":1,"221":4,"249":1,"1121":1,"1122":4,"1123":21,"1124":18,"1125":5,"1126":22,"1127":1,"1129":6,"1139":1,"1140":1,"1143":1,"1144":1,"1147":1,"1148":1,"1149":1,"1150":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3743a",{"0":{"1087":1,"1097":1,"1099":1,"1101":1,"1103":1,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1117":1,"1119":1},"1":{"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":2,"1099":1,"1100":2,"1101":1,"1102":2,"1103":1,"1104":2,"1105":1,"1106":2,"1107":1,"1108":2,"1109":1,"1110":2,"1111":1,"1112":2,"1113":1,"1114":2,"1115":1,"1116":2,"1117":1,"1118":2,"1119":1,"1120":2},"2":{"147":1,"149":1,"221":4,"249":1,"1087":1,"1088":4,"1089":21,"1090":18,"1091":5,"1092":22,"1093":1,"1095":6,"1105":1,"1106":1,"1109":1,"1110":1,"1113":1,"1114":1,"1115":1,"1116":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3742a",{"0":{"1053":1,"1063":1,"1065":1,"1067":1,"1069":1,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1083":1,"1085":1},"1":{"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":2,"1065":1,"1066":2,"1067":1,"1068":2,"1069":1,"1070":2,"1071":1,"1072":2,"1073":1,"1074":2,"1075":1,"1076":2,"1077":1,"1078":2,"1079":1,"1080":2,"1081":1,"1082":2,"1083":1,"1084":2,"1085":1,"1086":2},"2":{"147":1,"149":1,"221":4,"249":1,"1053":1,"1054":4,"1055":15,"1056":6,"1057":6,"1058":22,"1059":1,"1061":6,"1071":1,"1072":1,"1075":1,"1076":1,"1079":1,"1080":1,"1081":1,"1082":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3731",{"0":{"884":1,"892":1,"894":1,"896":1,"898":1,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"912":1,"914":1,"2456":1},"1":{"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":2,"894":1,"895":2,"896":1,"897":2,"898":1,"899":2,"900":1,"901":2,"902":1,"903":2,"904":1,"905":2,"906":1,"907":2,"908":1,"909":2,"910":1,"911":2,"912":1,"913":2,"914":1,"915":2},"2":{"221":4,"236":1,"884":1,"885":4,"886":8,"887":6,"888":2,"890":6,"900":1,"901":1,"904":1,"905":1,"908":1,"909":1,"910":1,"911":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3736b",{"2":{"953":1,"955":1}}],["is31fl3736",{"0":{"951":1,"961":1,"963":1,"965":1,"967":1,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"981":1,"983":1},"1":{"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":2,"963":1,"964":2,"965":1,"966":2,"967":1,"968":2,"969":1,"970":2,"971":1,"972":2,"973":1,"974":2,"975":1,"976":2,"977":1,"978":2,"979":1,"980":2,"981":1,"982":2,"983":1,"984":2},"2":{"211":3,"221":2,"236":2,"249":1,"951":1,"952":4,"953":14,"954":18,"955":7,"956":22,"957":1,"959":6,"969":1,"970":1,"973":1,"974":1,"977":1,"978":1,"979":1,"980":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3737b",{"2":{"160":1,"987":1,"989":1}}],["is31fl3737",{"0":{"985":1,"995":1,"997":1,"999":1,"1001":1,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1017":1},"1":{"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"995":1,"996":2,"997":1,"998":2,"999":1,"1000":2,"1001":1,"1002":2,"1003":1,"1004":2,"1005":1,"1006":2,"1007":1,"1008":2,"1009":1,"1010":2,"1011":1,"1012":2,"1013":1,"1014":2,"1015":1,"1016":2,"1017":1,"1018":2},"2":{"114":2,"176":1,"191":1,"221":2,"236":2,"985":1,"986":4,"987":14,"988":6,"989":7,"990":22,"991":1,"993":6,"1003":1,"1004":1,"1007":1,"1008":1,"1011":1,"1012":1,"1013":1,"1014":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3733b",{"2":{"134":1,"918":1,"921":1}}],["is31fl3733",{"0":{"916":1,"927":1,"929":1,"931":1,"933":1,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"947":1,"949":1,"2457":1},"1":{"917":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":2,"929":1,"930":2,"931":1,"932":2,"933":1,"934":2,"935":1,"936":2,"937":1,"938":2,"939":1,"940":2,"941":1,"942":2,"943":1,"944":2,"945":1,"946":2,"947":1,"948":2,"949":1,"950":2},"2":{"93":1,"149":1,"221":2,"236":2,"249":2,"916":1,"917":4,"918":22,"919":18,"920":5,"921":7,"922":22,"923":1,"925":6,"935":1,"936":1,"939":1,"940":1,"943":1,"944":1,"945":1,"946":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31common",{"2":{"249":4}}],["is31",{"2":{"114":1}}],["isolated",{"2":{"2765":1}}],["isolation",{"2":{"241":2,"2727":1}}],["iso",{"2":{"102":3,"114":2,"122":3,"143":2,"149":2,"159":2,"168":2,"191":1,"199":1,"211":5,"217":2,"226":4,"236":2,"266":2,"277":1,"328":2,"427":2,"442":1,"1343":3,"1428":1,"1436":2,"2416":1,"2438":5,"2790":1,"2792":2,"2862":5,"2880":18}}],["is",{"0":{"141":1,"395":1,"602":1,"604":1,"1314":1,"1326":1,"1327":1,"1332":1,"1576":1,"1581":1,"1857":1,"1971":1,"2043":1,"2083":1,"2167":1,"2168":1,"2470":1,"2912":1},"1":{"396":1,"1577":1,"1582":1,"1858":1,"1972":1,"1973":1,"2084":1},"2":{"0":2,"3":1,"7":1,"9":2,"10":2,"13":2,"14":1,"15":1,"18":4,"19":2,"23":2,"24":1,"25":1,"28":2,"30":1,"31":3,"34":2,"36":1,"39":2,"45":2,"48":1,"49":4,"50":3,"52":2,"70":23,"76":1,"88":1,"90":1,"94":1,"98":1,"103":1,"104":1,"113":2,"114":1,"118":1,"120":2,"123":1,"126":1,"127":1,"130":1,"134":3,"141":1,"149":4,"152":1,"153":3,"154":3,"156":3,"160":2,"166":1,"176":3,"179":1,"191":3,"194":4,"195":4,"196":1,"199":5,"201":2,"202":1,"203":2,"204":1,"206":1,"209":3,"211":2,"213":2,"218":1,"222":1,"224":3,"228":1,"230":1,"232":2,"233":3,"234":1,"235":2,"236":3,"238":1,"240":1,"244":1,"246":2,"249":4,"251":1,"262":2,"263":1,"266":2,"268":1,"273":1,"276":2,"279":2,"284":1,"288":1,"289":3,"293":2,"294":1,"297":2,"305":2,"306":2,"314":2,"315":1,"317":1,"320":7,"332":2,"338":3,"342":1,"344":1,"346":5,"348":1,"349":2,"356":1,"359":1,"360":1,"362":1,"363":1,"364":1,"368":1,"369":1,"371":4,"372":1,"373":2,"378":1,"379":1,"380":2,"381":1,"384":1,"385":1,"387":3,"390":1,"391":1,"392":1,"393":3,"395":1,"396":6,"397":10,"399":2,"400":2,"401":2,"402":3,"403":1,"405":2,"406":5,"408":2,"409":2,"410":1,"411":2,"418":1,"427":2,"428":5,"431":10,"435":1,"437":1,"438":1,"440":1,"442":2,"443":1,"444":1,"448":1,"450":2,"451":2,"458":1,"461":1,"470":1,"473":1,"485":2,"487":6,"488":1,"490":1,"491":1,"492":1,"493":1,"494":1,"497":2,"502":1,"519":1,"520":6,"521":2,"522":1,"524":2,"525":1,"529":1,"533":2,"534":3,"535":2,"536":1,"537":2,"538":1,"539":1,"541":3,"546":4,"548":1,"549":4,"550":2,"551":2,"553":2,"554":2,"558":2,"559":17,"562":6,"563":5,"566":11,"567":8,"568":8,"569":3,"570":5,"572":1,"573":2,"576":1,"577":2,"578":1,"579":1,"583":1,"584":1,"586":7,"589":1,"590":1,"591":9,"594":2,"597":2,"598":1,"599":1,"603":1,"608":1,"609":2,"611":3,"612":1,"613":2,"614":3,"617":4,"619":1,"621":2,"623":1,"624":2,"625":1,"626":2,"627":2,"628":2,"629":2,"630":2,"631":5,"632":2,"635":4,"637":2,"638":2,"641":1,"643":1,"645":6,"646":3,"647":1,"649":10,"654":4,"655":7,"656":1,"657":1,"659":1,"662":1,"663":2,"664":1,"666":3,"667":2,"669":1,"671":2,"673":2,"674":1,"679":2,"680":2,"681":2,"683":3,"684":1,"685":1,"686":2,"687":1,"692":2,"693":3,"695":1,"696":1,"698":1,"700":1,"711":1,"712":2,"713":1,"716":3,"717":1,"718":1,"719":2,"722":1,"724":1,"725":1,"727":1,"743":5,"745":1,"746":5,"747":2,"748":1,"749":1,"750":5,"751":4,"752":3,"753":1,"754":5,"755":1,"756":1,"757":2,"758":4,"759":2,"760":4,"762":1,"763":2,"764":1,"765":6,"769":1,"773":1,"794":2,"798":1,"800":1,"802":2,"824":1,"826":1,"828":2,"853":1,"855":1,"858":1,"860":2,"885":1,"887":1,"890":2,"917":1,"923":1,"925":2,"952":1,"957":1,"959":2,"986":1,"988":1,"991":1,"993":2,"1020":1,"1022":1,"1025":1,"1027":2,"1054":1,"1056":1,"1059":1,"1061":2,"1088":1,"1093":1,"1095":2,"1122":1,"1127":1,"1129":2,"1156":1,"1161":1,"1163":2,"1189":2,"1190":3,"1191":3,"1193":3,"1194":5,"1195":1,"1196":4,"1197":4,"1198":1,"1200":3,"1201":4,"1202":4,"1204":1,"1205":1,"1210":4,"1211":1,"1212":1,"1214":1,"1216":2,"1243":1,"1244":2,"1245":2,"1249":1,"1250":1,"1264":1,"1265":1,"1273":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1287":2,"1289":2,"1290":1,"1291":2,"1293":1,"1294":5,"1295":1,"1300":2,"1309":1,"1310":1,"1312":3,"1317":1,"1319":1,"1324":3,"1325":1,"1326":2,"1328":1,"1329":3,"1332":1,"1333":2,"1334":1,"1335":1,"1345":3,"1346":1,"1347":3,"1348":2,"1350":1,"1351":1,"1353":4,"1358":2,"1359":6,"1361":1,"1362":5,"1365":1,"1368":2,"1369":1,"1373":1,"1375":6,"1377":1,"1378":6,"1379":1,"1385":1,"1386":1,"1389":3,"1390":2,"1391":1,"1393":1,"1394":2,"1395":1,"1402":1,"1403":1,"1406":3,"1407":14,"1409":1,"1410":18,"1411":1,"1412":5,"1413":8,"1414":1,"1415":1,"1416":9,"1417":4,"1419":1,"1420":1,"1421":5,"1422":8,"1425":6,"1426":1,"1427":1,"1432":1,"1435":3,"1436":1,"1437":2,"1438":3,"1439":1,"1441":3,"1442":2,"1444":2,"1447":2,"1448":1,"1450":16,"1451":6,"1452":1,"1456":3,"1459":3,"1466":7,"1469":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1479":6,"1480":11,"1481":4,"1482":1,"1484":4,"1485":1,"1486":2,"1487":3,"1491":1,"1492":9,"1495":3,"1496":3,"1497":6,"1504":3,"1506":1,"1508":1,"1511":7,"1512":5,"1516":1,"1517":3,"1519":5,"1520":3,"1521":3,"1522":6,"1523":1,"1526":6,"1527":3,"1529":2,"1530":2,"1531":5,"1532":11,"1533":2,"1547":2,"1548":1,"1550":1,"1551":3,"1552":4,"1553":1,"1554":1,"1555":2,"1556":3,"1557":1,"1562":1,"1564":4,"1577":1,"1582":1,"1583":5,"1584":3,"1585":4,"1587":9,"1588":1,"1589":3,"1591":2,"1592":2,"1593":2,"1594":5,"1595":1,"1596":1,"1598":1,"1599":3,"1600":1,"1602":1,"1604":1,"1606":5,"1607":2,"1608":2,"1609":4,"1610":1,"1613":2,"1614":5,"1615":1,"1616":1,"1617":4,"1618":2,"1619":2,"1624":1,"1627":2,"1628":3,"1630":4,"1633":3,"1634":3,"1638":1,"1639":1,"1641":4,"1642":3,"1645":1,"1646":1,"1655":3,"1656":2,"1657":1,"1658":3,"1662":2,"1664":1,"1665":2,"1669":2,"1670":4,"1672":4,"1675":14,"1676":1,"1678":2,"1679":4,"1681":2,"1683":1,"1684":5,"1696":3,"1700":1,"1701":1,"1702":1,"1711":1,"1714":2,"1715":1,"1716":2,"1717":1,"1718":1,"1720":1,"1723":1,"1728":1,"1730":1,"1734":1,"1735":1,"1736":1,"1737":2,"1739":2,"1741":1,"1744":1,"1746":3,"1747":1,"1749":2,"1751":10,"1752":5,"1753":1,"1754":7,"1755":7,"1756":18,"1759":2,"1760":1,"1761":4,"1762":1,"1763":3,"1764":9,"1765":5,"1766":2,"1767":1,"1768":1,"1770":4,"1775":1,"1785":1,"1790":1,"1791":1,"1792":1,"1793":2,"1794":2,"1795":1,"1798":2,"1799":1,"1801":2,"1803":2,"1804":2,"1805":4,"1812":1,"1817":1,"1818":3,"1820":1,"1821":1,"1839":2,"1840":13,"1841":3,"1843":1,"1845":1,"1846":1,"1847":1,"1849":1,"1852":1,"1854":1,"1856":1,"1858":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"1901":1,"1902":2,"1904":2,"1906":2,"1909":2,"1920":1,"1924":1,"1928":1,"1929":6,"1930":4,"1931":7,"1932":3,"1933":3,"1934":1,"1935":1,"1940":1,"1941":1,"1942":5,"1943":2,"1945":1,"1946":3,"1947":6,"1948":16,"1950":1,"1951":2,"1952":1,"1953":4,"1954":1,"1955":4,"1956":1,"1957":1,"1958":2,"1973":1,"1980":1,"1982":1,"1986":2,"1988":1,"1990":2,"1993":1,"1995":1,"1996":1,"1998":1,"1999":2,"2000":3,"2003":8,"2005":1,"2006":4,"2008":1,"2010":1,"2011":2,"2012":2,"2013":1,"2014":6,"2015":1,"2016":6,"2017":3,"2018":2,"2019":1,"2021":13,"2023":4,"2024":1,"2025":7,"2030":6,"2031":1,"2032":1,"2034":1,"2035":1,"2036":2,"2037":2,"2039":4,"2040":1,"2042":1,"2043":4,"2045":3,"2046":1,"2050":4,"2052":6,"2059":2,"2060":13,"2061":4,"2063":2,"2064":3,"2068":1,"2069":2,"2070":1,"2072":1,"2074":1,"2075":1,"2078":1,"2080":1,"2082":1,"2084":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2145":1,"2146":2,"2148":2,"2150":2,"2153":2,"2156":3,"2159":5,"2160":4,"2161":2,"2162":2,"2163":1,"2164":3,"2166":2,"2167":8,"2168":3,"2170":1,"2171":1,"2172":1,"2177":6,"2178":1,"2179":3,"2181":12,"2182":1,"2183":3,"2184":1,"2185":1,"2187":1,"2188":2,"2189":4,"2191":3,"2192":2,"2198":4,"2202":2,"2203":3,"2204":1,"2207":1,"2209":1,"2210":3,"2212":2,"2213":3,"2214":3,"2216":1,"2225":1,"2227":1,"2231":1,"2233":1,"2235":1,"2237":1,"2242":1,"2247":6,"2251":1,"2252":2,"2253":3,"2254":4,"2258":2,"2259":1,"2260":1,"2263":1,"2264":2,"2265":7,"2266":4,"2267":3,"2268":4,"2269":10,"2270":5,"2271":12,"2272":4,"2273":1,"2274":1,"2279":1,"2280":5,"2282":2,"2283":9,"2284":1,"2285":1,"2286":1,"2287":1,"2288":5,"2289":3,"2290":4,"2291":1,"2293":13,"2295":2,"2296":3,"2297":1,"2299":2,"2302":15,"2303":22,"2308":1,"2309":1,"2310":24,"2311":2,"2312":16,"2314":2,"2318":2,"2321":6,"2322":3,"2323":1,"2324":6,"2325":1,"2333":1,"2335":1,"2337":1,"2338":1,"2339":1,"2353":1,"2354":1,"2367":3,"2368":3,"2370":1,"2372":6,"2374":4,"2375":1,"2376":2,"2378":2,"2379":1,"2380":4,"2381":3,"2382":3,"2383":3,"2384":1,"2385":1,"2386":2,"2387":2,"2388":3,"2389":3,"2390":3,"2391":2,"2392":1,"2393":3,"2395":3,"2397":2,"2399":1,"2400":5,"2402":1,"2403":1,"2405":1,"2406":2,"2407":4,"2408":1,"2410":6,"2411":9,"2414":1,"2415":1,"2416":2,"2417":1,"2418":2,"2420":2,"2421":5,"2422":2,"2423":1,"2424":3,"2425":3,"2426":1,"2427":3,"2428":1,"2430":1,"2434":1,"2435":3,"2437":1,"2438":8,"2439":3,"2440":3,"2441":2,"2442":1,"2443":1,"2445":1,"2448":1,"2449":1,"2450":1,"2451":2,"2459":17,"2461":2,"2462":3,"2463":1,"2464":1,"2465":2,"2466":3,"2467":1,"2470":1,"2474":1,"2475":2,"2476":2,"2483":1,"2487":1,"2489":1,"2490":1,"2492":3,"2493":2,"2494":1,"2495":5,"2496":2,"2497":2,"2498":4,"2501":5,"2514":1,"2516":1,"2523":1,"2526":1,"2528":1,"2537":10,"2545":1,"2546":3,"2548":4,"2549":1,"2551":1,"2552":4,"2553":5,"2554":1,"2560":4,"2562":1,"2563":1,"2566":1,"2567":1,"2568":4,"2569":5,"2570":1,"2572":2,"2573":2,"2576":1,"2577":2,"2578":2,"2579":1,"2580":1,"2582":3,"2583":2,"2584":2,"2588":2,"2590":1,"2591":3,"2592":1,"2594":1,"2595":1,"2599":2,"2605":4,"2606":2,"2607":1,"2609":4,"2610":1,"2614":2,"2615":2,"2619":4,"2620":2,"2621":3,"2622":4,"2626":2,"2627":4,"2628":1,"2629":2,"2630":1,"2631":2,"2632":3,"2633":6,"2634":1,"2643":5,"2645":7,"2646":2,"2649":1,"2650":1,"2651":4,"2652":3,"2655":1,"2657":2,"2660":4,"2661":2,"2663":1,"2664":2,"2667":2,"2668":4,"2669":6,"2670":5,"2671":4,"2672":1,"2673":2,"2674":3,"2675":1,"2676":4,"2677":3,"2679":1,"2680":1,"2681":1,"2683":2,"2684":2,"2693":2,"2695":5,"2697":2,"2698":2,"2699":1,"2700":2,"2702":7,"2703":1,"2704":1,"2705":1,"2707":2,"2708":1,"2709":1,"2710":1,"2711":1,"2713":1,"2714":2,"2715":1,"2718":1,"2719":9,"2721":12,"2722":2,"2723":2,"2724":5,"2725":2,"2727":1,"2731":1,"2734":1,"2743":1,"2745":1,"2746":4,"2747":3,"2748":5,"2749":39,"2750":29,"2751":3,"2754":1,"2757":3,"2758":4,"2759":2,"2760":2,"2763":3,"2764":2,"2765":4,"2766":2,"2767":1,"2768":2,"2769":6,"2770":6,"2776":4,"2778":2,"2779":1,"2780":1,"2781":1,"2784":6,"2787":4,"2788":3,"2789":1,"2792":2,"2798":1,"2800":1,"2802":1,"2803":1,"2806":1,"2807":1,"2814":3,"2815":1,"2820":1,"2824":1,"2827":2,"2832":1,"2833":1,"2837":2,"2839":1,"2842":2,"2844":2,"2846":2,"2850":2,"2854":1,"2862":3,"2864":1,"2865":1,"2867":1,"2870":2,"2871":1,"2877":3,"2879":4,"2881":3,"2882":1,"2886":1,"2888":2,"2890":2,"2891":1,"2892":1,"2894":3,"2895":6,"2896":2,"2897":1,"2899":5,"2901":7,"2902":12,"2907":4,"2908":11,"2909":7,"2910":6,"2911":10,"2912":6,"2913":8,"2914":16,"2915":4,"2917":1,"2918":1,"2919":7,"2920":4,"2921":1,"2927":5,"2928":6,"2929":6,"2930":3,"2931":1,"2932":1,"2933":6,"2934":1,"2936":2,"2937":1,"2941":1,"2942":4}}],["bndu",{"2":{"1919":1,"2532":1}}],["bndd",{"2":{"1919":1,"2532":1}}],["bn009",{"2":{"207":1,"211":1}}],["bn009r2",{"2":{"207":1}}],["bn006",{"2":{"191":1}}],["b♭",{"2":{"1919":6,"2532":6}}],["bbb",{"2":{"2567":1}}],["bb5",{"2":{"1919":1,"2532":1}}],["bb4",{"2":{"1919":1,"2532":1}}],["bb3",{"2":{"1919":1,"2532":1}}],["bb2",{"2":{"1919":1,"2532":1}}],["bb1",{"2":{"1919":1,"2532":1}}],["bb",{"2":{"1919":1,"2532":1}}],["bbs",{"2":{"266":1}}],["b9",{"2":{"1620":1,"2684":1}}],["b8",{"2":{"1562":1,"2669":1,"2684":1}}],["b87",{"2":{"211":2}}],["b3",{"2":{"633":2,"1244":3,"1664":6,"1693":1,"1793":1,"1919":1,"2478":1,"2480":2,"2482":1,"2532":1,"2684":2,"2713":1}}],["b2",{"2":{"633":2,"692":1,"1244":3,"1393":1,"1476":2,"1552":1,"1559":1,"1664":6,"1693":1,"1793":1,"1919":1,"2478":1,"2480":2,"2482":1,"2532":1,"2674":1,"2684":2,"2713":1,"2865":2}}],["b11",{"2":{"2684":1}}],["b10",{"2":{"2684":1}}],["b15",{"2":{"692":1,"1245":1,"2684":1}}],["b15288fb87",{"2":{"95":1}}],["b14",{"2":{"692":1,"1245":1,"1620":1,"2684":1}}],["b12",{"2":{"692":1,"1659":1,"1660":1,"2684":1}}],["b13",{"2":{"692":1,"1245":1,"1659":1,"1660":1,"2684":1}}],["b1²",{"2":{"692":1}}],["b1¹",{"2":{"692":1}}],["b1",{"2":{"633":2,"692":4,"1244":2,"1476":2,"1559":1,"1664":6,"1693":1,"1793":1,"1919":1,"2478":1,"2480":1,"2482":1,"2532":1,"2605":1,"2684":2,"2713":1,"2865":2}}],["b7",{"2":{"559":5,"567":2,"712":2,"765":1,"769":2,"1198":1,"1244":1,"1265":1,"1468":2,"1559":1,"2264":1,"2411":1,"2684":1,"2713":1}}],["b0²",{"2":{"692":1}}],["b0¹",{"2":{"692":1}}],["b007",{"2":{"686":1,"2389":1}}],["b0",{"2":{"559":2,"568":1,"633":2,"692":4,"1244":2,"1389":1,"1393":3,"1793":1,"2271":1,"2383":1,"2482":2,"2684":3,"2713":1,"2865":2}}],["b6",{"2":{"559":5,"690":1,"765":1,"769":2,"1195":1,"1198":1,"1244":1,"1468":2,"1559":1,"1693":1,"2014":1,"2478":1,"2480":1,"2684":2,"2713":1}}],["b5",{"2":{"559":5,"690":1,"712":2,"1244":2,"1468":2,"1559":1,"1919":1,"2014":1,"2480":1,"2532":1,"2677":1,"2684":2,"2713":1,"2873":1}}],["bgr",{"2":{"1284":1}}],["bg",{"2":{"490":1,"492":1,"2750":9}}],["bdfc",{"2":{"370":1,"371":1}}],["bdn9",{"2":{"149":1,"1385":1,"1387":2,"1402":2}}],["bc417",{"2":{"2367":1}}],["bcat",{"2":{"222":1}}],["bc",{"2":{"211":1}}],["bcd",{"2":{"149":1,"328":1,"2875":1}}],["bx",{"2":{"211":2}}],["bsd",{"2":{"2321":2,"2324":2,"2325":3,"2545":3,"2741":1}}],["bspace",{"2":{"1619":1}}],["bspc",{"2":{"195":1,"369":1,"587":4,"1378":6,"1529":1,"1594":1,"1599":5,"1616":1,"1744":1,"2159":1,"2164":1,"2374":2,"2505":1,"2515":1,"2553":1,"2908":1,"2909":1}}],["bssl",{"2":{"1616":1}}],["bss",{"2":{"1362":1}}],["bsls",{"2":{"369":1,"587":2,"2505":1,"2515":1,"2553":1}}],["bs",{"2":{"191":3,"259":2,"266":1,"308":1,"2215":1,"2513":3,"2531":3}}],["bépo",{"2":{"176":1,"2880":1}}],["bpm",{"2":{"1481":1}}],["bp",{"2":{"176":1}}],["bpp",{"2":{"160":1,"236":1}}],["bpiphany",{"2":{"143":2,"149":2}}],["bkf",{"2":{"143":2}}],["b4",{"2":{"111":1,"559":1,"633":2,"690":1,"712":2,"1244":2,"1793":1,"1919":1,"2368":1,"2480":1,"2532":1,"2684":2}}],["bmpgdbserialport",{"2":{"2667":2}}],["bmp",{"2":{"2667":1}}],["bm",{"2":{"134":1,"266":1}}],["bm68hsrgb",{"2":{"122":1,"143":2,"149":1}}],["bm68rgb",{"2":{"102":2,"122":1}}],["bm65hsrgb",{"2":{"122":1,"143":2,"149":1}}],["bm65iso",{"2":{"122":1}}],["bm60hsrgb",{"2":{"122":3,"328":3}}],["bm60rgb",{"2":{"102":4,"122":2}}],["bm60poker",{"2":{"102":2,"122":1}}],["bm43a",{"2":{"102":2}}],["bm40hsrgb",{"2":{"102":2,"226":2,"236":1}}],["bm16s",{"2":{"102":2}}],["bm16a",{"2":{"102":2,"199":1}}],["b",{"0":{"2085":1,"2087":1},"1":{"2086":1,"2088":1},"2":{"98":2,"199":1,"211":5,"249":1,"266":1,"328":1,"345":1,"348":1,"355":2,"369":1,"422":1,"423":1,"428":1,"457":2,"458":3,"559":3,"570":2,"587":2,"611":1,"615":1,"731":1,"734":1,"802":1,"805":1,"828":1,"831":1,"860":1,"863":1,"890":1,"893":1,"925":1,"928":1,"959":1,"962":1,"993":1,"996":1,"1027":1,"1030":1,"1061":1,"1064":1,"1095":1,"1098":1,"1129":1,"1132":1,"1163":1,"1166":1,"1216":1,"1219":1,"1285":2,"1591":1,"1596":3,"1597":1,"1598":2,"1599":1,"1611":2,"1616":1,"1619":1,"1622":3,"1659":4,"1660":3,"1663":1,"1664":2,"1754":2,"1755":2,"1756":2,"1919":13,"2014":2,"2052":2,"2072":1,"2074":1,"2086":1,"2088":1,"2159":2,"2181":1,"2198":10,"2215":1,"2270":2,"2271":1,"2289":2,"2294":2,"2310":1,"2455":1,"2465":2,"2503":3,"2515":3,"2532":13,"2537":1,"2553":1,"2605":2,"2633":3,"2858":2,"2903":1,"2904":10,"2905":29,"2906":17}}],["btn",{"2":{"1990":8}}],["btn8",{"2":{"1927":1,"2533":1}}],["btn7",{"2":{"1927":1,"2533":1}}],["btn6",{"2":{"1927":1,"2533":1}}],["btn5",{"2":{"1927":1,"2533":1}}],["btn4",{"2":{"1927":1,"2533":1}}],["btn3",{"2":{"1927":1,"2533":1}}],["btn2",{"2":{"1927":1,"2533":1}}],["btn1",{"2":{"1927":1,"2023":2,"2533":1}}],["bt",{"2":{"75":1,"134":1,"2370":9,"2521":9}}],["bfo",{"2":{"45":1}}],["bh",{"2":{"37":3,"159":6,"160":3}}],["baart",{"2":{"2636":1}}],["bay",{"2":{"2420":1}}],["ball",{"2":{"2012":1,"2908":1}}],["balance",{"2":{"211":1}}],["baud",{"0":{"1268":1},"1":{"1269":1},"2":{"1204":12,"1269":2,"2291":1}}],["baudrate",{"0":{"1204":1,"1297":1},"2":{"93":1,"1204":4,"1296":1,"1297":2}}],["baking",{"2":{"581":1}}],["bakingpy",{"2":{"572":1,"2411":1}}],["bakeneko",{"2":{"211":1}}],["bakeneko80",{"2":{"143":2}}],["bakeneko60",{"2":{"143":2}}],["bakeneko65",{"2":{"102":3,"114":1,"143":4}}],["baz",{"2":{"520":1}}],["bare",{"2":{"2418":1,"2702":1,"2721":2,"2732":1}}],["barring",{"2":{"2045":1}}],["barrel",{"0":{"1651":1,"1652":1},"2":{"1639":1,"1645":2,"1651":1,"1652":1}}],["bar",{"2":{"520":2,"526":1,"542":8,"543":2,"603":1,"627":2,"1758":1,"2286":1,"2294":12,"2324":1,"2917":1}}],["barleycorn",{"2":{"143":2}}],["bamfk",{"2":{"266":1}}],["bamfk1",{"2":{"222":1}}],["babyv",{"2":{"236":1}}],["badly",{"2":{"614":1}}],["bad",{"2":{"149":1,"294":1,"520":1,"525":1,"541":1,"543":1,"1444":1,"1529":1,"2420":2,"2427":1,"2448":1,"2721":1}}],["battery",{"0":{"721":1,"1535":1,"1540":1,"1543":1,"1545":1,"2851":1},"1":{"722":1,"723":1,"724":1,"725":1,"1536":1,"1537":1,"1538":1,"1539":1,"1540":1,"1541":2,"1542":1,"1543":1,"1544":1,"1545":1,"1546":1},"2":{"308":3,"317":1,"687":1,"721":1,"722":1,"723":1,"724":6,"725":2,"1535":1,"1537":2,"1538":1,"1540":1,"1541":1,"1543":1,"1544":1,"1545":1,"1546":1,"2271":1,"2851":3}}],["bat43",{"2":{"143":4}}],["batch",{"2":{"133":1,"402":1,"405":1,"406":1,"1907":2,"1910":2,"2151":2,"2154":2}}],["ban",{"2":{"2740":1}}],["bang",{"2":{"2322":3}}],["banging",{"2":{"1190":1,"1287":1}}],["banger",{"2":{"143":2,"149":1}}],["bandwidth",{"2":{"2700":1}}],["band",{"2":{"1843":10,"2063":20,"2887":6}}],["bandana",{"2":{"211":1}}],["bandominedoni",{"2":{"134":1}}],["bank",{"2":{"49":4,"176":1,"2669":8}}],["basing",{"2":{"2422":1}}],["basis",{"0":{"2412":1},"2":{"1330":1,"1840":1,"2060":1,"2620":1}}],["basics",{"0":{"1447":1},"1":{"1448":1},"2":{"2636":2,"2922":1,"2923":1}}],["basically",{"2":{"297":1,"643":1,"1948":1,"2283":1,"2723":1,"2911":1}}],["basic",{"0":{"701":1,"714":1,"728":1,"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1282":1,"1471":1,"1537":1,"1550":1,"1693":1,"1740":1,"1802":1,"1915":1,"1943":1,"2049":1,"2214":1,"2281":1,"2320":1,"2405":1,"2425":1,"2502":1,"2515":1},"1":{"729":1,"800":1,"826":1,"855":1,"856":1,"857":1,"858":1,"887":1,"888":1,"919":1,"920":1,"921":1,"922":1,"923":1,"954":1,"955":1,"956":1,"957":1,"988":1,"989":1,"990":1,"991":1,"1022":1,"1023":1,"1024":1,"1025":1,"1056":1,"1057":1,"1058":1,"1059":1,"1090":1,"1091":1,"1092":1,"1093":1,"1124":1,"1125":1,"1126":1,"1127":1,"1158":1,"1159":1,"1160":1,"1161":1,"1214":1,"1283":1,"1284":1,"1285":1,"1472":1,"1473":1,"1551":1,"1552":1,"1803":1,"1804":1,"1805":1,"1806":1,"1944":1,"1945":1,"2321":1,"2406":1,"2407":1,"2408":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1},"2":{"133":1,"134":1,"211":1,"222":1,"231":4,"248":1,"249":2,"363":1,"373":1,"435":1,"438":1,"448":1,"467":1,"597":1,"604":1,"617":1,"664":1,"681":1,"713":1,"717":1,"720":1,"758":1,"1353":1,"1417":1,"1448":1,"1471":2,"1474":1,"1526":1,"1527":1,"1627":1,"1659":1,"1735":1,"1744":1,"1746":1,"1747":2,"1758":1,"1765":2,"1913":2,"1915":2,"2047":1,"2212":1,"2215":1,"2290":1,"2302":1,"2311":1,"2322":1,"2404":1,"2416":1,"2425":1,"2471":1,"2502":1,"2515":1,"2555":1,"2560":1,"2562":1,"2579":1,"2585":1,"2612":1,"2637":1,"2721":2,"2739":1,"2744":2,"2746":1,"2758":1,"2765":1,"2813":1,"2849":1,"2917":1,"2923":1,"2926":2,"2941":1}}],["bashcompinit",{"2":{"507":3}}],["bashrc",{"2":{"507":1,"2621":2}}],["bash",{"2":{"505":1,"2621":2,"2660":1,"2662":1}}],["bastard",{"2":{"249":1}}],["bastardkb",{"2":{"114":1,"176":2,"266":1,"277":1,"311":50,"317":8,"2699":1}}],["base64",{"0":{"2239":1},"2":{"2784":2}}],["bases",{"2":{"617":2}}],["base",{"0":{"2553":1},"2":{"125":1,"163":1,"174":1,"185":1,"217":2,"221":1,"226":1,"270":2,"294":1,"311":1,"573":1,"589":1,"745":1,"746":4,"753":1,"1404":1,"1416":1,"1419":1,"1420":4,"1527":3,"1551":1,"1607":1,"1613":1,"1638":1,"1760":2,"1761":2,"1930":4,"2438":1,"2528":2,"2548":3,"2552":1,"2553":1,"2554":1,"2585":1,"2627":2,"2633":2,"2646":1,"2694":1,"2696":1,"2700":1,"2707":1,"2719":1,"2722":1}}],["based",{"0":{"25":1,"1468":1,"1470":1,"2735":1},"1":{"1469":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1},"2":{"25":1,"49":1,"50":1,"65":2,"74":1,"93":1,"113":1,"114":2,"123":1,"153":1,"160":1,"163":1,"164":1,"172":1,"191":1,"199":1,"210":1,"235":1,"236":1,"248":1,"263":2,"350":1,"405":1,"431":1,"442":1,"443":1,"448":1,"493":1,"565":1,"614":1,"637":6,"712":1,"713":1,"743":2,"751":1,"756":1,"1193":1,"1196":1,"1293":1,"1317":1,"1322":1,"1389":1,"1390":1,"1392":1,"1407":10,"1413":1,"1422":7,"1424":1,"1442":1,"1443":2,"1468":1,"1471":1,"1677":1,"1766":1,"1771":1,"1801":1,"1840":1,"1845":1,"1933":1,"1937":1,"1947":1,"1948":1,"1950":1,"1955":1,"2002":1,"2012":1,"2025":2,"2042":1,"2060":1,"2068":1,"2074":1,"2166":1,"2171":1,"2200":2,"2203":1,"2271":1,"2283":1,"2296":1,"2301":1,"2324":1,"2367":2,"2368":1,"2372":1,"2375":2,"2378":1,"2380":1,"2387":1,"2411":1,"2425":1,"2454":1,"2458":1,"2475":1,"2494":1,"2502":1,"2567":24,"2568":1,"2573":1,"2583":1,"2588":1,"2593":1,"2609":1,"2668":1,"2672":2,"2681":1,"2697":2,"2699":1,"2726":1,"2734":1,"2746":1,"2749":4,"2750":4,"2758":1,"2763":1,"2765":1,"2784":1,"2836":1,"2846":1,"2896":1,"2915":1}}],["backtick",{"2":{"1667":1,"1669":1}}],["backticks",{"2":{"348":1}}],["backlit",{"2":{"1547":1}}],["backlightx",{"2":{"2440":1}}],["backlighting",{"0":{"1547":1,"2520":1},"1":{"1548":1,"1549":1,"1550":1,"1551":1,"1552":1,"1553":1,"1554":1,"1555":1,"1556":1,"1557":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":1,"1578":1,"1579":1,"1580":1,"1581":1,"1582":1},"2":{"1548":1,"1838":1,"2302":1,"2411":1,"2440":1,"2520":1,"2783":1}}],["backlights",{"2":{"646":1,"1658":1}}],["backlight|led",{"2":{"176":1}}],["backlight",{"0":{"7":1,"14":2,"16":1,"1552":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1574":1,"1576":1,"1578":1,"1579":1,"1580":1,"1581":1,"2798":1,"2850":1},"1":{"1573":1,"1575":1,"1577":1,"1582":1},"2":{"14":4,"16":4,"32":1,"49":1,"50":1,"63":1,"70":1,"73":1,"93":1,"94":1,"110":1,"111":1,"112":4,"114":1,"134":4,"149":1,"160":1,"188":1,"191":4,"198":1,"199":6,"222":4,"231":3,"236":2,"249":3,"266":3,"294":1,"559":7,"1308":2,"1389":1,"1390":1,"1549":14,"1550":21,"1551":4,"1552":10,"1553":1,"1554":1,"1556":1,"1557":5,"1559":1,"1560":1,"1562":4,"1563":1,"1564":3,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":2,"1576":1,"1577":1,"1578":1,"1579":1,"1580":1,"1581":1,"1582":1,"1838":1,"1841":1,"2061":1,"2411":3,"2412":3,"2440":3,"2520":14,"2685":1,"2721":2,"2750":11,"2798":1,"2850":9,"2924":1,"2933":1}}],["backslash",{"2":{"1346":1,"1686":2,"1758":1,"2505":2,"2513":3,"2515":2,"2531":3,"2917":1}}],["backspaced",{"2":{"2323":1}}],["backspaces",{"2":{"1528":2,"1529":3,"1532":1,"1533":1}}],["backspace",{"0":{"1378":1},"2":{"99":1,"152":1,"211":1,"255":1,"597":1,"603":1,"1346":1,"1378":2,"1532":3,"1587":1,"1599":1,"1686":1,"1737":1,"1744":1,"2159":1,"2164":4,"2215":1,"2372":1,"2505":2,"2513":6,"2515":2,"2531":6}}],["backgrounds",{"2":{"492":1}}],["background",{"2":{"492":5,"654":1,"2750":3}}],["backup",{"2":{"445":2}}],["backing",{"0":{"2629":1},"2":{"236":1,"750":1,"751":3,"752":3,"753":4,"2857":1}}],["backwards",{"2":{"114":1,"249":1,"262":1,"293":1,"305":1,"314":1,"316":1,"331":1,"1612":1,"2253":1,"2370":1,"2521":1}}],["backward",{"2":{"75":1,"285":1,"2159":2}}],["back",{"0":{"2466":1,"2474":1},"2":{"50":1,"55":13,"124":1,"134":1,"152":1,"387":1,"397":1,"487":1,"538":1,"586":1,"649":1,"674":1,"681":1,"1477":1,"1516":2,"1656":1,"1657":1,"1658":1,"1761":1,"1805":1,"2002":1,"2051":1,"2063":3,"2159":1,"2172":1,"2173":1,"2175":1,"2270":2,"2273":1,"2287":2,"2377":1,"2384":1,"2403":1,"2421":1,"2422":1,"2427":1,"2496":2,"2510":2,"2515":2,"2566":1,"2580":1,"2609":1,"2627":2,"2676":1,"2722":1,"2845":1,"2887":1,"2901":1,"2929":1}}],["backend",{"0":{"377":1},"2":{"49":1,"279":2,"2660":1,"2857":1}}],["backport",{"0":{"5":1},"2":{"74":1}}],["bidirectional",{"2":{"2047":1}}],["bilateral",{"2":{"294":1}}],["bioses",{"2":{"573":1}}],["bios",{"0":{"1373":1},"2":{"263":1,"1363":1,"1367":1,"1373":1}}],["bioi",{"2":{"211":4,"236":1}}],["biacco42",{"2":{"143":3,"149":2}}],["bigram",{"2":{"2161":5}}],["bigrams",{"2":{"2161":2}}],["bigseries",{"2":{"143":8}}],["bigswitch",{"2":{"43":2,"266":1}}],["big",{"2":{"94":2,"405":1,"537":1,"602":1,"785":1,"791":1,"2411":1,"2751":1}}],["bigger",{"2":{"46":1,"572":1,"2459":1,"2579":1,"2942":1}}],["bin|hex",{"2":{"428":1}}],["binding",{"2":{"2411":1}}],["bindings",{"2":{"1516":1,"2515":1,"2721":2}}],["bind",{"2":{"308":1,"1758":1,"2917":1}}],["binary",{"0":{"1531":1},"1":{"1532":1,"1533":1},"2":{"284":1,"285":1,"360":1,"372":1,"428":1,"579":2,"582":1,"584":2,"1378":1,"2410":1,"2443":1,"2499":1,"2501":1,"2721":1,"2726":1,"2727":1,"2728":1,"2729":1,"2732":1,"2734":2,"2737":2,"2739":1,"2742":1,"2743":1,"2847":1,"2942":1}}],["binaries",{"0":{"164":1},"2":{"93":1,"164":1,"176":1,"199":1,"576":1,"1323":1,"2388":1,"2450":2,"2667":1,"2703":1}}],["binepad",{"2":{"207":2,"211":1,"328":1}}],["bin",{"2":{"23":1,"94":2,"95":2,"133":1,"134":1,"388":1,"428":1,"444":1,"570":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2400":1,"2410":1,"2501":2,"2582":1,"2600":1,"2607":2,"2621":2,"2662":1,"2667":3,"2847":1}}],["bit|status",{"2":{"2548":1}}],["bitmap",{"2":{"1947":1}}],["bitmask",{"2":{"285":1,"1375":2,"1426":1,"1741":1,"1742":1,"1743":1,"1751":1,"1840":1,"1976":1,"1978":1,"2060":1,"2769":1}}],["bitfields",{"2":{"2864":1,"2871":1}}],["bitfield",{"2":{"1752":1,"1764":1,"2864":1,"2871":1}}],["bitwise",{"2":{"763":1,"1375":2,"1416":1,"1532":1,"1947":1}}],["bits",{"2":{"372":1,"763":1,"1375":1,"1413":2,"1417":4,"1422":6,"1532":3,"1533":1,"1768":1,"1770":1,"1841":4,"2021":2,"2061":4,"2288":4,"2291":2,"2293":2,"2459":1,"2496":2,"2547":2,"2548":1,"2560":3,"2761":6}}],["bitbanging",{"2":{"1193":1,"1196":1}}],["bitbang",{"0":{"1190":1,"1287":1},"1":{"1191":1,"1192":1},"2":{"249":1,"1189":1,"1190":3,"1191":1,"1192":3,"1193":1,"1204":1,"1286":1,"1287":1,"1292":2,"2179":1,"2873":2,"2876":3}}],["bit",{"0":{"11":1,"1391":1},"2":{"11":2,"63":1,"114":1,"130":1,"134":1,"166":1,"176":2,"199":2,"211":1,"285":1,"308":1,"687":1,"698":4,"716":2,"717":1,"763":4,"771":1,"774":1,"777":1,"780":1,"782":1,"783":1,"785":1,"786":1,"788":1,"789":1,"791":1,"792":1,"795":1,"800":1,"826":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1189":1,"1190":1,"1214":1,"1249":1,"1282":3,"1283":3,"1287":1,"1292":2,"1340":2,"1365":1,"1375":5,"1377":1,"1386":1,"1388":3,"1410":1,"1413":2,"1414":1,"1417":3,"1422":2,"1487":1,"1511":1,"1517":1,"1526":4,"1532":2,"1533":1,"1594":2,"1622":1,"1691":1,"1714":2,"1716":2,"1749":6,"1751":2,"1758":12,"1764":1,"1768":2,"1775":1,"1785":1,"1941":2,"1985":4,"2021":2,"2025":1,"2165":1,"2231":1,"2233":1,"2235":1,"2265":2,"2279":2,"2289":2,"2311":2,"2459":1,"2528":1,"2547":1,"2548":1,"2551":6,"2552":2,"2560":3,"2562":1,"2605":1,"2610":1,"2615":2,"2644":1,"2682":1,"2706":1,"2707":1,"2749":1,"2758":1,"2765":1,"2766":1,"2769":8,"2774":1,"2795":1,"2796":1,"2895":1,"2912":1,"2917":12,"2934":1,"2941":1}}],["bob",{"2":{"2934":1}}],["bout",{"2":{"2170":1}}],["bounce",{"0":{"1406":1},"1":{"1407":1,"1408":1,"1409":1,"1410":1,"1411":1},"2":{"1406":4,"2575":1}}],["bounce75",{"2":{"211":1}}],["bound",{"2":{"236":1,"1758":1,"2894":1,"2917":1}}],["boundary",{"2":{"191":1}}],["bounds",{"2":{"114":1,"160":1,"333":3,"1948":3,"2283":3,"2432":1}}],["bounded",{"2":{"31":1,"34":1}}],["bold",{"2":{"344":1,"602":1,"1210":1}}],["bolt",{"0":{"2288":1},"2":{"231":1,"2287":1,"2288":3,"2289":1,"2290":2,"2291":1,"2293":2,"2294":4}}],["bongopad",{"2":{"311":2}}],["bonsai",{"0":{"1393":1},"2":{"176":1,"189":1,"191":1,"1386":1,"1388":3,"1393":1,"2888":1}}],["boy",{"2":{"211":1}}],["bocc",{"2":{"211":1}}],["boston",{"2":{"134":1,"211":1}}],["bodges",{"2":{"199":1}}],["bodge",{"2":{"114":1,"134":1,"149":1,"266":1}}],["box",{"2":{"114":1,"288":1,"346":1,"594":1,"2272":1,"2273":1,"2420":1,"2568":1,"2570":1,"2607":1,"2929":1}}],["boilerplate",{"2":{"114":1,"622":1,"2409":2}}],["bottom",{"2":{"100":1,"149":1,"255":1,"559":1,"614":1,"1362":1,"1397":1,"1398":1,"1405":1,"1486":1,"1527":1,"1633":1,"1641":1,"1840":1,"1843":1,"2060":1,"2063":2,"2178":1,"2262":1,"2289":1,"2310":1,"2312":1,"2418":1,"2474":1,"2605":1,"2652":1,"2719":1,"2750":6,"2771":2,"2787":1,"2838":1}}],["both",{"0":{"2564":1},"2":{"35":1,"45":1,"58":1,"70":14,"98":1,"107":1,"114":1,"134":1,"152":1,"163":1,"173":1,"175":1,"190":1,"229":1,"232":1,"233":1,"236":1,"249":1,"283":3,"360":1,"405":1,"445":1,"489":1,"492":1,"503":2,"520":1,"550":1,"562":1,"563":1,"568":1,"590":1,"597":1,"607":1,"627":1,"667":1,"687":1,"743":1,"1190":1,"1340":2,"1375":2,"1378":1,"1393":1,"1407":1,"1422":2,"1430":1,"1433":1,"1441":1,"1459":1,"1472":1,"1512":1,"1527":1,"1547":1,"1587":2,"1588":3,"1589":3,"1598":1,"1659":1,"1660":1,"1674":1,"1751":1,"1792":1,"1931":1,"1939":1,"2005":1,"2009":1,"2014":3,"2018":1,"2021":1,"2033":1,"2050":1,"2189":2,"2251":1,"2254":1,"2255":1,"2260":1,"2267":2,"2269":2,"2270":1,"2271":1,"2287":1,"2294":2,"2313":1,"2318":1,"2323":1,"2324":1,"2367":1,"2370":1,"2421":3,"2427":2,"2435":2,"2438":2,"2489":1,"2501":1,"2513":6,"2515":1,"2531":6,"2568":1,"2592":1,"2605":2,"2612":1,"2625":1,"2627":1,"2630":1,"2643":1,"2695":1,"2697":1,"2700":1,"2729":2,"2749":1,"2750":1,"2773":1,"2776":4,"2835":1,"2854":2,"2858":1,"2882":1,"2887":1,"2908":1,"2911":1,"2912":2,"2913":1,"2915":1,"2925":1,"2942":1}}],["boardinit",{"2":{"2671":1,"2721":2}}],["board",{"0":{"172":1,"189":1,"2671":1,"2696":1},"2":{"50":5,"76":1,"77":2,"113":1,"114":3,"134":1,"160":3,"167":1,"176":3,"182":1,"189":3,"191":1,"199":1,"211":2,"222":1,"233":1,"236":2,"248":1,"266":2,"277":1,"283":1,"285":1,"306":1,"307":1,"308":6,"315":1,"317":12,"333":1,"391":2,"519":1,"559":2,"563":1,"586":1,"644":1,"646":2,"649":1,"682":1,"683":2,"684":1,"714":1,"715":1,"730":1,"753":1,"765":2,"801":1,"827":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1197":1,"1215":1,"1245":2,"1266":1,"1296":1,"1300":1,"1345":5,"1369":1,"1388":2,"1389":1,"1393":1,"1396":1,"1400":1,"1404":2,"1413":1,"1436":1,"1442":1,"1473":1,"1482":1,"1486":1,"1557":1,"1562":1,"1563":1,"1840":1,"1947":1,"1953":1,"2012":1,"2018":1,"2060":1,"2254":2,"2258":1,"2268":1,"2271":2,"2321":1,"2367":1,"2368":1,"2403":1,"2414":1,"2417":4,"2418":1,"2422":1,"2423":2,"2426":1,"2445":1,"2476":1,"2487":1,"2490":3,"2494":1,"2566":2,"2567":2,"2568":1,"2569":5,"2582":1,"2605":2,"2609":2,"2667":1,"2668":4,"2669":1,"2670":1,"2671":3,"2684":1,"2687":2,"2693":1,"2695":2,"2696":3,"2700":1,"2703":1,"2707":5,"2719":2,"2720":1,"2721":16,"2722":1,"2751":1,"2780":3,"2781":1,"2828":1,"2837":1,"2838":1,"2846":7,"2887":1,"2901":1,"2915":1}}],["boardsource",{"2":{"176":4,"249":1,"277":2,"308":1,"2695":1}}],["boards",{"0":{"43":1,"235":1,"1468":1,"1470":1,"1798":1,"2273":1,"2417":1,"2694":1},"1":{"1469":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"2695":1,"2696":1},"2":{"8":1,"10":1,"28":1,"45":1,"57":1,"72":1,"80":1,"93":1,"108":1,"114":7,"131":1,"134":3,"149":25,"153":2,"160":3,"163":1,"172":3,"185":1,"189":1,"191":4,"199":2,"211":8,"221":1,"222":4,"235":1,"249":1,"263":1,"266":1,"277":1,"279":2,"283":1,"308":4,"317":9,"333":1,"553":1,"562":1,"566":3,"572":1,"683":1,"712":2,"713":1,"714":1,"720":1,"1193":1,"1196":1,"1288":1,"1309":1,"1316":1,"1389":1,"1390":1,"1441":1,"1442":3,"1443":4,"1468":1,"1486":1,"1583":1,"1585":1,"1767":1,"1798":1,"2069":1,"2258":1,"2272":3,"2273":1,"2367":2,"2376":2,"2379":1,"2383":1,"2386":1,"2388":1,"2389":1,"2391":1,"2411":1,"2417":1,"2476":1,"2494":1,"2566":2,"2567":30,"2568":1,"2569":6,"2572":2,"2668":1,"2672":1,"2693":1,"2694":2,"2695":2,"2699":1,"2700":1,"2705":1,"2706":1,"2721":4,"2722":1,"2734":1,"2746":1,"2845":1,"2888":1}}],["books",{"2":{"2934":1}}],["boost",{"2":{"1672":1,"2722":1}}],["bootstrap",{"2":{"2707":1}}],["bootsel",{"2":{"2397":2}}],["boot1",{"2":{"2674":1}}],["booted",{"2":{"1951":1}}],["bootable",{"2":{"751":1}}],["booting",{"2":{"751":1,"1942":1,"2548":1}}],["boot\`",{"2":{"674":1}}],["bootlader",{"2":{"236":1}}],["bootloadhid",{"0":{"2383":1,"2493":1},"1":{"2384":1,"2385":1},"2":{"114":1,"191":1,"571":1,"686":1,"2383":6,"2410":1}}],["bootloader>",{"2":{"428":2,"2501":1}}],["bootloaders",{"0":{"686":1},"2":{"49":1,"149":1,"160":1,"199":1,"294":1,"428":3,"432":1,"683":1,"751":1,"1345":1,"2375":2,"2400":1,"2410":1,"2475":1,"2491":2,"2721":1}}],["bootloader",{"0":{"141":1,"682":1,"1314":1,"1315":1,"2375":1,"2490":1,"2495":1,"2498":1,"2605":1,"2679":1,"2698":1,"2782":1,"2800":1,"2869":1},"1":{"683":1,"684":1,"685":1,"686":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2491":1,"2492":1,"2493":1,"2494":1,"2496":1,"2499":1,"2500":1,"2501":1},"2":{"49":4,"50":1,"65":1,"70":1,"74":1,"93":2,"111":1,"112":1,"114":3,"141":3,"149":8,"176":8,"191":4,"199":6,"211":1,"230":2,"231":1,"236":1,"240":3,"428":4,"432":1,"513":1,"566":3,"571":1,"649":4,"650":4,"651":3,"652":2,"674":2,"682":3,"683":6,"684":2,"685":2,"686":9,"1313":1,"1315":2,"1345":2,"1362":1,"1368":1,"1443":7,"1583":3,"1585":2,"1619":4,"1675":2,"1942":5,"2266":10,"2375":1,"2376":6,"2377":8,"2379":5,"2381":6,"2382":5,"2383":5,"2384":15,"2386":5,"2387":1,"2388":6,"2389":4,"2390":3,"2391":5,"2392":1,"2393":7,"2395":7,"2397":7,"2475":6,"2483":1,"2489":1,"2490":1,"2492":4,"2493":1,"2494":2,"2495":2,"2496":2,"2497":3,"2498":5,"2499":1,"2501":2,"2516":4,"2605":1,"2609":6,"2669":9,"2675":2,"2679":1,"2680":3,"2684":2,"2693":5,"2698":2,"2721":2,"2735":1,"2745":4,"2782":2,"2837":1,"2845":1,"2846":2,"2869":3}}],["boot20",{"2":{"2501":1}}],["boot2",{"2":{"236":1}}],["bootmapper",{"2":{"235":1,"1288":1,"2493":1,"2605":1}}],["bootmagic",{"0":{"87":1,"103":1,"104":1,"126":1,"127":1,"245":2,"1583":1,"1585":1,"2801":1,"2853":1},"1":{"88":1,"104":1,"127":1,"1584":1,"1585":1,"1586":1},"2":{"70":1,"87":8,"88":8,"93":2,"94":1,"103":3,"104":8,"111":1,"114":2,"126":3,"127":8,"134":1,"176":3,"199":3,"222":1,"245":4,"249":2,"333":2,"572":3,"649":1,"674":1,"683":3,"1317":2,"1345":1,"1362":1,"1413":1,"1583":5,"1584":3,"1585":6,"1586":1,"1617":1,"1994":1,"2377":1,"2384":1,"2411":1,"2513":1,"2721":1,"2783":1,"2853":3,"2873":2,"2925":1}}],["boot",{"0":{"156":1,"167":1,"2693":1},"2":{"149":1,"156":2,"167":2,"176":1,"191":2,"199":1,"266":1,"277":1,"303":1,"369":1,"572":1,"573":2,"587":2,"683":3,"751":1,"1362":1,"1479":1,"1480":1,"1942":2,"2376":1,"2379":1,"2381":1,"2382":2,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2516":1,"2613":1,"2669":1,"2693":1,"2695":1,"2721":1,"2745":1,"2782":1}}],["boot0",{"2":{"49":4,"2386":3,"2388":3,"2391":3}}],["boolean",{"0":{"90":1,"105":1},"2":{"93":1,"114":1,"134":1,"203":1,"645":1,"1378":3,"1413":1,"1456":1,"1795":1,"2847":11,"2849":4,"2850":4,"2853":1,"2854":4,"2856":1,"2859":1,"2863":2,"2864":4,"2865":4,"2866":1,"2868":2,"2870":6,"2871":4,"2872":1,"2873":13,"2874":1,"2875":4,"2876":1}}],["bool",{"0":{"817":3,"819":1,"844":3,"846":1,"908":3,"910":1,"943":3,"945":1,"977":3,"979":1,"1011":3,"1013":1,"1045":3,"1047":1,"1234":3,"1236":1,"1248":2,"1278":1,"1576":1,"1581":1,"1698":2,"1702":2,"1717":1,"1719":1,"1721":1,"1812":1,"1817":1,"1818":1,"1821":1,"1822":1,"1823":1,"1826":1,"1829":1,"1832":1,"1835":1,"1857":1,"1900":1,"1902":1,"1904":1,"1906":1,"1909":1,"1971":1,"2083":1,"2144":1,"2146":1,"2148":1,"2150":1,"2153":1,"2353":1,"2357":1,"2360":1},"1":{"818":3,"820":1,"845":3,"847":1,"909":3,"911":1,"944":3,"946":1,"978":3,"980":1,"1012":3,"1014":1,"1046":3,"1048":1,"1235":3,"1237":1,"1249":2,"1250":2,"1279":1,"1577":1,"1582":1,"1699":2,"1703":2,"1718":1,"1720":1,"1722":1,"1723":1,"1813":1,"1814":1,"1819":1,"1820":1,"1824":1,"1825":1,"1827":1,"1828":1,"1830":1,"1831":1,"1833":1,"1834":1,"1836":1,"1837":1,"1858":1,"1901":1,"1903":1,"1905":1,"1972":1,"1973":1,"2084":1,"2145":1,"2147":1,"2149":1,"2354":1,"2358":1,"2359":1,"2361":1},"2":{"22":2,"46":2,"90":6,"105":8,"114":1,"125":2,"185":2,"230":1,"591":1,"622":2,"623":1,"630":3,"645":2,"650":1,"651":1,"652":4,"654":1,"698":1,"818":3,"820":1,"845":3,"847":1,"909":3,"911":1,"944":3,"946":1,"978":3,"980":1,"1012":3,"1014":1,"1046":3,"1048":1,"1235":3,"1237":1,"1249":1,"1378":2,"1413":3,"1425":1,"1443":2,"1450":2,"1451":1,"1466":1,"1485":1,"1511":2,"1526":1,"1529":1,"1595":2,"1599":1,"1606":6,"1607":1,"1611":2,"1612":3,"1622":2,"1645":4,"1662":2,"1683":1,"1699":2,"1703":2,"1706":1,"1720":1,"1722":1,"1749":2,"1751":3,"1765":1,"1771":2,"1775":1,"1792":2,"1793":1,"1794":1,"1807":1,"1844":3,"1918":1,"1939":1,"1940":1,"1942":4,"1948":26,"1956":1,"2020":1,"2024":2,"2025":2,"2027":1,"2036":2,"2037":1,"2039":5,"2040":3,"2044":4,"2045":1,"2066":3,"2160":1,"2162":1,"2168":1,"2170":2,"2203":1,"2247":6,"2270":2,"2283":16,"2309":1,"2310":1,"2312":1,"2374":2,"2441":2,"2722":1,"2749":1,"2750":5,"2760":1,"2901":1,"2933":34}}],["buflen",{"2":{"2270":2}}],["buff",{"2":{"1941":4,"2279":4}}],["buffered",{"2":{"285":1}}],["buffers",{"0":{"741":1,"821":1,"848":1,"880":1,"912":1,"947":1,"981":1,"1015":1,"1049":1,"1083":1,"1117":1,"1151":1,"1185":1,"1238":1},"1":{"742":1,"849":1,"881":1,"913":1,"948":1,"982":1,"1016":1,"1050":1,"1084":1,"1118":1,"1152":1,"1186":1,"1239":1},"2":{"93":1,"249":2,"285":1,"650":1,"651":1,"737":1,"809":1,"813":1,"836":1,"840":1,"868":1,"872":1,"900":1,"904":1,"935":1,"939":1,"969":1,"973":1,"1003":1,"1007":1,"1037":1,"1041":1,"1071":1,"1075":1,"1105":1,"1109":1,"1139":1,"1143":1,"1173":1,"1177":1,"1226":1,"1230":1,"1603":5,"2195":1,"2207":2,"2372":1}}],["buffer",{"0":{"717":1,"1298":1,"1603":1,"1941":1,"2279":1},"2":{"49":1,"93":1,"114":1,"176":1,"199":1,"211":1,"249":3,"698":3,"716":3,"717":8,"777":1,"780":1,"789":1,"792":1,"1260":1,"1273":2,"1277":1,"1278":1,"1296":2,"1298":3,"1482":1,"1519":4,"1526":1,"1527":6,"1603":2,"1615":1,"1656":3,"1801":1,"1806":2,"1815":1,"1818":2,"1820":1,"1821":1,"1823":1,"1825":1,"1826":1,"1828":1,"1829":1,"1831":1,"1832":1,"1834":1,"1835":1,"1837":1,"1941":7,"1946":3,"1947":2,"1948":16,"2017":1,"2050":1,"2051":1,"2052":1,"2055":1,"2057":1,"2206":1,"2270":10,"2279":7,"2282":1,"2283":17,"2355":1,"2356":1,"2357":1,"2360":1,"2747":1,"2749":10,"2750":2,"2941":1}}],["bundled",{"2":{"2390":1}}],["bundle",{"2":{"2252":1,"2594":3,"2613":1}}],["bunch",{"2":{"254":1,"1334":1,"1412":1,"1441":1,"1442":1,"1443":1,"2459":1,"2664":1,"2886":1,"2890":1,"2920":1}}],["buzz",{"2":{"1674":3,"1675":12,"1680":7,"2269":1}}],["buzzer",{"2":{"1469":1}}],["burst",{"2":{"2014":1}}],["burnout",{"2":{"2724":1}}],["burns",{"2":{"2418":1}}],["burn",{"2":{"1362":1,"1943":2,"2281":1}}],["burden",{"2":{"213":1,"2721":1}}],["buy",{"2":{"674":1,"1316":1}}],["bumblebee",{"2":{"277":1}}],["bump",{"2":{"76":1,"114":2,"160":1,"236":1,"285":1,"423":2,"1680":3}}],["buspirate",{"2":{"2487":1}}],["bus",{"0":{"2487":1},"1":{"2488":1},"2":{"191":2,"266":1,"277":1,"794":1,"2487":2,"2488":1,"2841":1}}],["busywait",{"0":{"1982":1},"2":{"1979":1,"1981":1,"1982":2,"2868":2}}],["busy",{"0":{"1717":1},"1":{"1718":1},"2":{"191":1,"765":1,"1556":1,"1718":1,"1723":1,"1724":1,"1726":1}}],["business",{"2":{"143":4}}],["bulk",{"2":{"182":1,"2303":1,"2380":1}}],["bullseye",{"2":{"114":1}}],["bugging",{"2":{"2579":1}}],["buggy",{"2":{"317":1,"1487":1}}],["bug17281",{"2":{"199":1}}],["bugfix",{"2":{"176":1,"222":1,"236":1,"266":1,"294":1,"333":1,"396":1,"406":3}}],["bugfixes",{"2":{"10":2,"196":1,"396":1,"400":2,"401":2,"2829":1}}],["bugs",{"0":{"606":1},"2":{"114":1,"134":1,"149":1,"160":1,"176":1,"191":2,"199":1,"211":1,"222":1,"236":2,"249":1,"266":1,"277":1,"285":1,"294":1,"308":1,"317":1,"328":1,"333":1,"548":1,"1747":3,"2728":1,"2740":1}}],["bug",{"0":{"1336":1},"2":{"62":1,"73":1,"149":1,"160":2,"236":1,"371":1,"392":1,"550":1,"602":1,"606":1,"611":1,"617":2,"2474":1,"2491":1,"2621":3,"2667":1,"2942":1}}],["builtin",{"2":{"645":1,"758":2,"1329":2,"1473":1,"2291":1}}],["built",{"0":{"1334":1,"2248":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2253":1},"2":{"33":1,"49":1,"191":1,"228":1,"393":1,"459":2,"489":1,"645":1,"686":1,"712":1,"1202":1,"1407":1,"1479":1,"1487":1,"1633":1,"1844":1,"2014":1,"2066":1,"2266":1,"2284":1,"2324":2,"2379":1,"2407":1,"2410":1,"2451":1,"2572":1,"2589":1,"2591":1,"2603":1,"2604":1,"2703":1,"2746":1,"2752":1,"2789":1}}],["buildable",{"2":{"2435":1,"2438":1}}],["builder",{"2":{"448":1,"2415":1,"2416":1,"2425":2}}],["builddefs",{"2":{"149":1,"285":1}}],["building",{"0":{"388":1,"1429":1,"2575":1,"2591":1,"2788":1},"1":{"1430":1,"2576":1,"2577":1,"2578":1,"2579":1,"2580":1,"2581":1,"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1},"2":{"114":2,"133":1,"134":1,"145":1,"199":1,"213":1,"224":1,"233":1,"361":1,"387":1,"414":1,"427":1,"570":1,"572":2,"593":1,"617":1,"1308":1,"1311":1,"1329":1,"1332":1,"2368":1,"2400":2,"2429":1,"2551":1,"2568":1,"2573":1,"2575":1,"2584":1,"2587":1,"2623":1,"2656":1,"2749":2}}],["builds",{"2":{"28":1,"49":1,"94":1,"114":3,"130":1,"134":4,"149":2,"153":1,"160":3,"176":1,"198":1,"209":1,"211":3,"241":1,"253":1,"270":1,"273":1,"281":1,"288":2,"450":3,"451":3,"453":1,"1340":1,"1443":1,"1626":1,"2410":2,"2589":1,"2590":1,"2626":1,"2628":1,"2656":1,"2667":1,"2689":1,"2722":2,"2789":1,"2837":1}}],["build",{"0":{"23":1,"55":1,"141":1,"382":1,"570":1,"1308":1,"1311":1,"1439":1,"1627":1,"2415":1,"2576":1,"2580":1,"2588":1,"2589":1,"2613":1,"2622":1,"2648":1,"2656":1,"2717":1},"1":{"1309":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1},"2":{"23":1,"55":3,"65":1,"70":1,"73":1,"92":2,"112":3,"114":6,"118":1,"126":1,"132":1,"133":1,"134":3,"149":7,"160":2,"164":1,"170":1,"176":2,"189":2,"191":4,"199":6,"201":2,"204":1,"206":1,"211":2,"222":1,"228":1,"234":3,"236":1,"249":1,"262":1,"266":23,"277":2,"279":1,"293":5,"294":1,"304":1,"305":5,"314":5,"317":1,"348":1,"361":2,"382":1,"387":6,"388":1,"416":1,"417":1,"418":1,"423":1,"427":3,"431":1,"433":1,"444":1,"446":1,"447":1,"448":1,"450":4,"451":4,"452":2,"453":5,"553":1,"573":1,"595":1,"597":1,"671":3,"674":3,"717":1,"1310":1,"1311":1,"1362":2,"1363":1,"1373":1,"1385":1,"1387":1,"1429":1,"1430":1,"1434":1,"1435":1,"1439":1,"1627":2,"1630":2,"1631":1,"1632":1,"1633":2,"1675":1,"2319":1,"2390":2,"2398":3,"2400":9,"2409":1,"2410":3,"2418":1,"2425":1,"2429":2,"2438":1,"2439":1,"2440":1,"2448":1,"2494":1,"2554":2,"2568":1,"2572":1,"2573":1,"2575":1,"2576":1,"2577":1,"2580":3,"2583":4,"2584":1,"2588":2,"2589":2,"2590":2,"2591":3,"2592":1,"2598":1,"2599":1,"2600":6,"2601":1,"2602":4,"2603":2,"2609":1,"2611":2,"2622":6,"2625":1,"2646":1,"2648":1,"2656":2,"2657":1,"2658":1,"2667":4,"2707":1,"2721":1,"2787":1,"2788":2,"2847":1,"2922":1,"2937":1,"2939":1}}],["butterstick",{"2":{"143":2}}],["button",{"0":{"1779":2,"1781":2,"1958":1,"1962":1,"1963":1,"1965":1,"1967":1,"1969":1,"1971":1,"1974":1,"1975":1,"1977":1,"1990":1,"2541":1},"1":{"1780":2,"1782":2,"1959":1,"1960":1,"1961":1,"1962":1,"1963":1,"1964":2,"1965":1,"1966":2,"1967":1,"1968":2,"1969":1,"1970":2,"1971":1,"1972":2,"1973":2,"1974":1,"1975":1,"1976":2,"1977":1,"1978":2},"2":{"49":1,"63":1,"134":1,"188":1,"190":1,"191":3,"231":5,"388":1,"390":1,"598":2,"599":2,"624":2,"674":2,"683":2,"1310":1,"1345":1,"1362":1,"1443":1,"1450":3,"1487":1,"1583":1,"1655":1,"1768":2,"1772":64,"1775":2,"1779":1,"1780":2,"1781":1,"1782":2,"1927":16,"1935":2,"1958":1,"1959":1,"1960":64,"1962":1,"1963":1,"1964":1,"1965":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1977":1,"1978":1,"1990":5,"2003":6,"2019":2,"2021":4,"2025":1,"2030":1,"2266":1,"2291":2,"2376":1,"2379":1,"2381":1,"2382":3,"2384":1,"2386":3,"2388":3,"2389":1,"2390":1,"2391":3,"2393":2,"2395":2,"2397":4,"2403":3,"2425":1,"2426":3,"2525":64,"2533":16,"2541":65,"2572":2,"2605":1,"2608":1,"2652":2,"2662":1,"2667":2,"2676":1,"2682":1,"2788":1,"2845":1,"2933":1}}],["buttons",{"0":{"1991":1},"2":{"49":1,"74":1,"114":1,"134":4,"149":1,"190":1,"222":1,"1639":1,"1766":1,"1768":1,"1775":1,"1924":1,"1958":1,"1990":4,"1991":2,"2006":2,"2019":2,"2021":1,"2023":3,"2030":1,"2045":1}}],["but",{"0":{"1337":1,"1464":1},"2":{"11":1,"49":1,"50":1,"99":1,"100":1,"120":1,"124":1,"125":2,"153":1,"156":1,"160":1,"170":1,"174":1,"185":2,"194":1,"202":1,"233":1,"251":1,"262":1,"273":2,"279":1,"283":2,"320":1,"373":1,"390":1,"392":1,"397":1,"408":1,"411":1,"415":1,"427":1,"428":1,"434":1,"489":1,"503":1,"520":2,"525":1,"536":1,"538":1,"539":1,"540":1,"541":1,"546":1,"556":1,"570":1,"572":1,"573":1,"586":1,"587":1,"589":1,"594":1,"597":1,"613":1,"614":1,"617":1,"624":1,"631":1,"635":2,"673":1,"683":1,"698":1,"699":1,"746":1,"747":1,"749":1,"750":1,"751":1,"752":1,"802":1,"828":1,"858":1,"860":1,"890":1,"923":1,"925":1,"957":1,"959":1,"991":1,"993":1,"1025":1,"1027":1,"1059":1,"1061":1,"1093":1,"1095":1,"1127":1,"1129":1,"1161":1,"1163":1,"1196":1,"1205":1,"1216":1,"1263":1,"1293":1,"1295":1,"1308":4,"1319":1,"1324":2,"1335":1,"1340":1,"1346":1,"1351":1,"1358":2,"1373":1,"1375":3,"1406":1,"1407":1,"1413":1,"1416":2,"1417":1,"1421":1,"1422":2,"1428":1,"1438":1,"1441":2,"1442":2,"1452":2,"1454":1,"1460":1,"1461":1,"1474":1,"1477":2,"1481":1,"1484":3,"1490":1,"1493":4,"1497":1,"1499":1,"1520":1,"1521":1,"1527":1,"1529":1,"1531":2,"1548":1,"1555":1,"1604":1,"1608":1,"1609":1,"1621":1,"1642":1,"1655":1,"1661":1,"1732":1,"1747":1,"1754":1,"1759":1,"1761":1,"1767":1,"1803":1,"1805":2,"1840":1,"1902":1,"1904":1,"1906":1,"1909":1,"1928":1,"1937":1,"1948":1,"1951":1,"1958":1,"1986":1,"1996":1,"2013":1,"2015":1,"2021":1,"2030":1,"2031":1,"2060":1,"2146":1,"2148":1,"2150":1,"2153":1,"2191":2,"2194":1,"2210":1,"2215":2,"2243":1,"2252":1,"2254":1,"2258":1,"2272":1,"2283":1,"2285":1,"2286":1,"2290":1,"2293":3,"2303":3,"2310":2,"2312":1,"2313":1,"2322":1,"2324":1,"2367":1,"2368":1,"2375":1,"2378":1,"2380":2,"2387":1,"2389":1,"2392":1,"2394":1,"2396":1,"2404":1,"2410":1,"2411":2,"2414":1,"2416":2,"2420":1,"2421":1,"2422":3,"2424":1,"2425":1,"2447":1,"2449":1,"2459":2,"2463":1,"2471":1,"2489":1,"2492":1,"2494":1,"2496":1,"2499":1,"2510":1,"2515":2,"2549":1,"2553":1,"2554":1,"2556":1,"2559":1,"2560":1,"2562":1,"2567":4,"2568":2,"2583":2,"2610":1,"2619":2,"2628":1,"2630":1,"2631":1,"2632":2,"2645":1,"2646":1,"2660":3,"2667":2,"2675":2,"2676":1,"2677":1,"2683":1,"2684":1,"2687":1,"2693":1,"2698":1,"2700":1,"2702":1,"2713":1,"2721":3,"2723":1,"2725":1,"2738":2,"2744":1,"2750":1,"2776":1,"2781":1,"2784":1,"2798":1,"2814":1,"2828":1,"2862":2,"2880":1,"2882":3,"2883":1,"2884":1,"2898":1,"2901":1,"2902":2,"2907":1,"2909":1,"2918":1,"2919":1,"2920":1,"2924":1,"2926":1,"2927":2,"2929":1,"2930":1,"2932":1,"2933":1,"2934":1,"2936":1,"2941":1,"2942":2}}],["blurb",{"0":{"2449":1},"2":{"597":1}}],["bluesmirf",{"2":{"2367":1}}],["blue",{"0":{"704":1,"706":1,"737":1,"739":1,"809":1,"811":1,"817":1,"836":1,"838":1,"844":1,"868":1,"870":1,"876":1,"900":1,"902":1,"908":1,"935":1,"937":1,"943":1,"969":1,"971":1,"977":1,"1003":1,"1005":1,"1011":1,"1037":1,"1039":1,"1045":1,"1071":1,"1073":1,"1079":1,"1105":1,"1107":1,"1113":1,"1139":1,"1141":1,"1147":1,"1173":1,"1175":1,"1181":1,"1226":1,"1228":1,"1234":1,"1303":1,"1305":1},"1":{"705":1,"707":1,"738":1,"740":1,"810":1,"812":1,"818":1,"837":1,"839":1,"845":1,"869":1,"871":1,"877":1,"901":1,"903":1,"909":1,"936":1,"938":1,"944":1,"970":1,"972":1,"978":1,"1004":1,"1006":1,"1012":1,"1038":1,"1040":1,"1046":1,"1072":1,"1074":1,"1080":1,"1106":1,"1108":1,"1114":1,"1140":1,"1142":1,"1148":1,"1174":1,"1176":1,"1182":1,"1227":1,"1229":1,"1235":1,"1304":1,"1306":1},"2":{"490":1,"492":1,"705":2,"707":2,"731":1,"734":1,"738":2,"740":2,"802":1,"805":1,"810":2,"812":2,"818":2,"828":1,"831":1,"837":2,"839":2,"845":2,"860":1,"863":1,"869":2,"871":2,"877":2,"890":1,"893":1,"901":2,"903":2,"909":2,"925":1,"928":1,"936":2,"938":2,"944":2,"959":1,"962":1,"970":2,"972":2,"978":2,"993":1,"996":1,"1004":2,"1006":2,"1012":2,"1027":1,"1030":1,"1038":2,"1040":2,"1046":2,"1061":1,"1064":1,"1072":2,"1074":2,"1080":2,"1095":1,"1098":1,"1106":2,"1108":2,"1114":2,"1129":1,"1132":1,"1140":2,"1142":2,"1148":2,"1163":1,"1166":1,"1174":2,"1176":2,"1182":2,"1216":1,"1219":1,"1227":2,"1229":2,"1235":2,"1285":1,"1304":2,"1306":2,"1952":1,"2067":2,"2072":2,"2073":1,"2086":1,"2088":1,"2181":1,"2205":2,"2537":1,"2615":1}}],["bluefruit",{"2":{"221":1,"308":1,"572":1,"2367":4,"2368":6,"2369":1,"2852":1}}],["bluefruitle",{"0":{"142":1},"2":{"149":1,"221":1}}],["bluepill70",{"2":{"67":1}}],["bluepill",{"2":{"67":1,"72":1,"160":2,"191":1,"207":2,"513":1,"720":1,"2395":1,"2498":1,"2500":2,"2501":3}}],["bluetooth",{"0":{"1356":1,"2366":1,"2367":1,"2369":1,"2370":1,"2521":1,"2729":1,"2737":1,"2799":1,"2852":1},"1":{"2367":1,"2368":2,"2369":1,"2370":1},"2":{"50":2,"51":1,"70":1,"75":1,"111":1,"112":2,"133":1,"134":2,"142":1,"188":1,"191":4,"211":1,"221":4,"222":1,"285":1,"308":2,"572":1,"687":1,"2367":9,"2368":1,"2369":2,"2370":21,"2451":1,"2521":20,"2721":4,"2729":3,"2732":1,"2734":1,"2735":1,"2737":2,"2743":2,"2852":1}}],["blade",{"2":{"1843":1,"2063":2}}],["blank",{"2":{"262":1,"294":1,"529":2,"597":1,"2400":1,"2713":1}}],["black",{"2":{"492":2,"559":1,"1469":1,"1472":3,"1476":2,"1941":1,"2067":2,"2205":2,"2416":1,"2421":1,"2459":2,"2667":5,"2769":4,"2929":1}}],["blackio83",{"2":{"253":2,"266":1}}],["blackpills",{"2":{"2254":1,"2672":2}}],["blackpill",{"0":{"2672":1},"1":{"2673":1,"2674":1,"2675":1,"2676":1,"2677":1,"2678":1,"2679":1,"2680":1},"2":{"93":1,"114":1,"160":2,"176":1,"191":2,"207":2,"253":1,"513":2,"2254":1,"2266":1,"2393":1,"2672":2,"2673":1,"2680":1,"2846":1,"2888":1}}],["blackheart",{"2":{"37":3}}],["blowing",{"2":{"2421":1}}],["blow",{"2":{"2421":1}}],["blog",{"2":{"1374":1,"2559":1,"2636":2}}],["blob",{"2":{"1350":1,"2758":2,"2765":2,"2766":2,"2769":1,"2770":1,"2772":1}}],["blobs",{"2":{"276":2,"284":3,"285":1,"2742":1,"2743":1}}],["blooming",{"2":{"236":1,"2063":3,"2887":1}}],["blok",{"0":{"1391":1},"2":{"176":1,"211":1,"317":1,"1386":1,"1388":3,"2695":1,"2888":1}}],["bloat",{"2":{"114":1,"2411":1}}],["blocked",{"2":{"1484":1}}],["blocked65",{"2":{"159":2}}],["blocker",{"2":{"211":2,"308":1}}],["blocks",{"0":{"348":1,"678":1},"1":{"679":1,"680":1},"2":{"191":2,"211":1,"231":1,"308":1,"533":1,"678":1,"752":1,"1943":1,"1946":1,"1947":2,"1948":1,"2282":1,"2721":1,"2758":2,"2759":1,"2765":2,"2766":1}}],["block",{"0":{"2759":1,"2760":1,"2763":1,"2764":1,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1},"2":{"16":1,"31":3,"34":3,"134":1,"176":1,"188":1,"191":1,"346":1,"520":2,"591":1,"627":1,"630":1,"671":1,"751":1,"752":7,"756":2,"760":8,"1273":1,"1362":1,"1419":1,"1607":1,"1844":1,"1946":6,"1947":6,"2066":1,"2268":1,"2273":1,"2282":6,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2758":9,"2759":2,"2760":5,"2761":4,"2762":4,"2763":4,"2764":3,"2765":10,"2766":10,"2767":5,"2768":8,"2769":13,"2770":2,"2771":2,"2772":2,"2792":1,"2930":1}}],["bling",{"2":{"114":1}}],["blinks",{"2":{"2693":1}}],["blinked",{"2":{"2191":1}}],["blink",{"0":{"1698":1,"1702":1,"2191":1},"1":{"1699":1,"1703":1},"2":{"112":1,"563":2,"1658":1,"1699":2,"1703":2,"2191":9,"2302":1,"2676":1,"2870":1}}],["blinking",{"2":{"93":1,"160":1,"1656":1,"1695":1,"2191":3,"2870":1}}],["blindassassin111",{"2":{"37":2}}],["blend",{"2":{"308":1,"2323":1}}],["ble",{"0":{"2368":1},"2":{"50":1,"133":1,"134":2,"142":1,"2367":2,"2368":1,"2734":1}}],["bl",{"0":{"7":1},"2":{"7":1,"369":1,"428":3,"587":6,"1549":7,"2266":3,"2520":7,"2551":2,"2553":1,"2554":1}}],["brmu",{"2":{"2509":1,"2515":1}}],["brmd",{"2":{"2506":1,"2515":1}}],["brk",{"2":{"2509":1,"2515":1}}],["brtg",{"2":{"1549":1,"2520":1}}],["brushing",{"2":{"246":1}}],["brutal",{"2":{"211":2}}],["brazilian",{"2":{"2880":2}}],["brazil",{"2":{"2880":1}}],["brass",{"2":{"2418":1}}],["brackets",{"2":{"2662":1}}],["bracket",{"2":{"1686":2,"2505":2,"2515":2,"2539":2,"2558":2}}],["braces",{"2":{"520":2,"521":1,"2219":1,"2311":1,"2834":1}}],["brace",{"2":{"520":5,"2539":2,"2558":2}}],["braking",{"2":{"1678":1,"1679":1}}],["brakefactor",{"2":{"1678":1,"1679":1}}],["brands",{"2":{"2390":1}}],["branding",{"2":{"1339":1}}],["brand",{"0":{"1339":1},"2":{"559":1,"674":1}}],["branching",{"2":{"1532":5,"1533":1}}],["branch",{"0":{"405":1,"2628":1,"2629":1,"2630":1,"2632":1},"1":{"2629":1,"2630":1},"2":{"51":2,"73":1,"76":1,"92":1,"94":1,"114":2,"251":1,"294":1,"308":1,"393":2,"402":1,"405":5,"420":1,"423":1,"424":2,"457":4,"577":1,"584":1,"586":1,"592":1,"611":3,"1532":2,"2494":1,"2601":1,"2625":1,"2626":2,"2627":12,"2628":3,"2629":5,"2630":3,"2631":4,"2632":3,"2633":19,"2634":1,"2719":7,"2721":1,"2722":1,"2723":7,"2896":2}}],["branches",{"2":{"51":1,"199":1,"308":1,"403":1,"1532":1,"1533":1,"2631":1,"2632":1,"2723":3}}],["brauner",{"2":{"211":1}}],["brett",{"2":{"1374":1,"2559":1}}],["brew",{"2":{"158":1,"416":1,"2384":1,"2499":1,"2594":1,"2617":1}}],["breadth",{"2":{"2722":1}}],["breach",{"2":{"2568":1}}],["breath",{"2":{"559":1,"1550":1,"2411":1,"2421":1}}],["breathe",{"0":{"460":1},"2":{"460":2,"2181":1,"2185":2,"2537":1}}],["breathing",{"0":{"1578":1,"1579":1,"1580":1,"1581":1},"1":{"1582":1},"2":{"74":1,"93":1,"112":2,"134":1,"160":2,"199":1,"231":1,"285":2,"294":1,"460":1,"559":3,"639":2,"1549":2,"1550":5,"1556":1,"1578":1,"1579":1,"1580":1,"1581":1,"1582":1,"1843":3,"2063":7,"2181":1,"2183":2,"2184":2,"2185":2,"2187":2,"2210":2,"2520":2,"2537":1,"2850":6,"2864":1,"2870":1,"2871":1,"2887":3}}],["breakout",{"2":{"2012":1}}],["breaks",{"2":{"573":1,"711":1}}],["breakpoints",{"2":{"2667":2}}],["breakpoint",{"2":{"403":1,"405":2}}],["breakage",{"2":{"114":1}}],["break",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"105":2,"114":1,"236":1,"249":1,"333":1,"393":1,"533":1,"535":1,"1413":6,"1424":5,"1442":2,"1443":1,"1450":4,"1451":2,"1466":1,"1511":2,"1521":1,"1522":1,"1527":2,"1599":2,"1611":2,"1612":1,"1622":4,"1670":1,"1765":1,"1939":3,"1952":4,"2023":1,"2025":2,"2027":2,"2042":2,"2043":3,"2073":3,"2162":2,"2165":1,"2170":10,"2191":3,"2208":1,"2277":3,"2308":3,"2310":12,"2311":8,"2312":4,"2562":1,"2625":1,"2840":1,"2901":4,"2916":2}}],["breaking",{"0":{"0":1,"9":1,"19":1,"39":1,"52":1,"66":1,"78":1,"96":1,"115":1,"135":1,"150":1,"161":1,"177":1,"192":1,"200":1,"212":1,"223":1,"237":1,"250":1,"267":1,"278":1,"286":1,"295":1,"309":1,"318":1,"329":1,"393":1,"394":1,"395":1,"407":1,"408":1,"1594":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"146":1,"147":1,"148":1,"149":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1,"330":1,"331":1,"332":1,"333":1,"394":1,"395":1,"396":2,"397":1,"398":1,"399":1,"400":1,"401":1,"402":1,"403":1,"404":1,"405":1,"406":1,"409":1,"410":1,"411":1,"412":1},"2":{"0":3,"9":2,"19":2,"23":1,"28":1,"39":2,"52":2,"103":1,"105":1,"107":1,"114":1,"116":1,"126":1,"131":1,"156":1,"163":1,"167":1,"172":1,"176":1,"182":1,"184":1,"187":1,"198":1,"201":1,"206":1,"213":2,"224":1,"238":1,"251":1,"254":1,"262":1,"265":2,"273":1,"275":1,"276":1,"284":1,"303":1,"307":2,"332":1,"393":3,"394":1,"395":1,"397":4,"398":1,"399":3,"400":3,"401":3,"402":1,"403":1,"405":3,"406":4,"407":1,"408":1,"409":1,"410":2,"548":1,"1591":1,"1592":1,"1594":2,"2722":1,"2896":2,"2897":1}}],["bridge",{"2":{"2386":2,"2388":2,"2391":2}}],["brid",{"2":{"1746":1,"1842":1,"2159":1,"2510":1,"2515":1,"2530":1}}],["briu",{"2":{"1746":1,"1842":1,"2159":1,"2510":1,"2515":1,"2530":1}}],["briefs",{"2":{"2284":1}}],["brief",{"2":{"1440":1,"1761":1,"1840":1,"2060":1,"2407":1}}],["briefly",{"2":{"674":1}}],["bricking",{"2":{"2567":1}}],["brick",{"2":{"199":1,"1362":1}}],["brightens",{"2":{"2185":1}}],["brighter",{"2":{"492":1}}],["bright",{"2":{"492":1}}],["brightness",{"0":{"709":2,"1746":1,"2193":1},"1":{"710":2},"2":{"111":1,"114":1,"160":1,"176":1,"191":2,"333":1,"563":1,"701":2,"709":1,"710":2,"813":1,"814":1,"815":1,"816":1,"840":1,"841":1,"842":1,"843":1,"872":1,"873":1,"874":1,"875":1,"904":1,"905":1,"906":1,"907":1,"939":1,"940":1,"941":1,"942":1,"973":1,"974":1,"975":1,"976":1,"1007":1,"1008":1,"1009":1,"1010":1,"1041":1,"1042":1,"1043":1,"1044":1,"1075":1,"1076":1,"1077":1,"1078":1,"1109":1,"1110":1,"1111":1,"1112":1,"1143":1,"1144":1,"1145":1,"1146":1,"1177":1,"1178":1,"1179":1,"1180":1,"1230":1,"1231":1,"1232":1,"1233":1,"1547":1,"1549":1,"1550":2,"1552":1,"1737":1,"1746":7,"1798":5,"1842":4,"1843":4,"1846":5,"1859":1,"1860":1,"1861":1,"1862":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1899":1,"1943":3,"1948":4,"2062":2,"2063":8,"2069":6,"2074":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2159":1,"2180":1,"2181":4,"2182":3,"2185":1,"2193":2,"2506":1,"2509":1,"2510":4,"2515":6,"2520":1,"2530":4,"2537":4,"2538":2,"2750":1,"2769":3,"2848":2,"2850":6,"2864":5,"2870":5,"2871":4}}],["brigthness",{"2":{"176":1}}],["bringing",{"2":{"663":1}}],["brings",{"2":{"251":1,"268":1,"279":1}}],["bring",{"2":{"114":1,"285":1,"347":1,"1758":1,"2662":1,"2917":1}}],["brownfox",{"2":{"2418":1,"2429":1}}],["brown",{"2":{"746":1}}],["browsed",{"2":{"2655":1}}],["browse",{"2":{"387":1,"2610":1,"2927":1}}],["browser",{"2":{"294":1,"458":4,"579":1,"615":1,"2159":1,"2510":7,"2515":7,"2550":1}}],["browsing",{"2":{"110":1,"458":1}}],["brought",{"2":{"108":1}}],["broken",{"2":{"73":1,"93":1,"114":2,"134":2,"149":1,"176":1,"191":1,"199":1,"236":1,"277":1,"285":1,"317":1,"371":1,"408":1,"548":1,"617":1,"1386":1,"2476":1}}],["br",{"2":{"5":1,"338":1,"2293":1,"2294":3}}],["bypasses",{"2":{"2177":1}}],["bypassed",{"2":{"4":1}}],["bytecode",{"2":{"546":1}}],["byte",{"0":{"1284":1,"2235":1},"1":{"2236":1},"2":{"191":1,"746":1,"747":1,"751":1,"753":1,"763":1,"794":1,"1249":1,"1251":1,"1252":1,"1254":1,"1255":1,"1270":1,"1271":1,"1272":1,"1273":1,"1282":3,"1284":5,"1375":1,"1531":1,"1532":8,"1533":5,"1603":1,"1696":1,"1714":2,"1716":2,"1719":1,"1720":2,"1721":1,"1723":1,"1726":1,"1727":1,"1941":4,"1947":3,"1948":2,"1999":1,"2006":1,"2051":1,"2052":2,"2279":4,"2283":2,"2288":7,"2289":1,"2496":1,"2552":2,"2744":1,"2749":3,"2813":1,"2833":1}}],["bytes",{"2":{"25":1,"131":1,"134":1,"215":1,"222":1,"236":1,"698":1,"745":1,"746":3,"747":3,"748":1,"751":2,"752":2,"753":4,"754":11,"756":5,"770":1,"771":1,"773":1,"774":1,"776":1,"777":1,"779":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1256":1,"1257":1,"1259":1,"1260":1,"1274":1,"1275":1,"1276":1,"1277":1,"1284":1,"1412":1,"1532":2,"1533":1,"1714":1,"1716":1,"1941":3,"2050":1,"2052":2,"2055":1,"2057":1,"2268":1,"2270":1,"2279":3,"2288":1,"2289":2,"2372":1,"2375":1,"2403":1,"2489":1,"2495":4,"2496":1,"2501":2,"2580":1,"2608":4,"2622":1,"2750":2,"2760":1,"2761":1,"2766":1,"2767":1,"2769":1,"2771":1,"2772":1,"2857":2,"2882":1,"2942":1}}],["by",{"0":{"27":1,"43":1,"589":1,"593":1,"1614":1,"2264":1,"2265":1,"2266":1,"2267":1,"2460":1},"1":{"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"600":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2467":1,"2468":1},"2":{"3":1,"7":1,"15":1,"21":1,"25":2,"28":1,"31":1,"34":1,"37":6,"38":2,"43":2,"45":1,"49":2,"50":2,"58":1,"74":1,"82":1,"94":1,"114":6,"118":2,"119":2,"120":1,"124":1,"125":1,"134":5,"149":2,"154":2,"164":1,"169":1,"173":1,"174":1,"175":1,"176":5,"179":1,"182":1,"184":1,"185":1,"191":4,"194":1,"195":3,"199":4,"201":1,"209":3,"211":1,"215":1,"222":3,"233":1,"248":1,"263":1,"273":1,"288":1,"289":1,"308":1,"312":2,"320":1,"328":2,"333":1,"334":1,"338":3,"341":1,"348":1,"373":2,"374":1,"377":1,"385":1,"387":1,"396":1,"397":3,"408":2,"427":1,"428":2,"431":3,"461":1,"464":1,"470":1,"472":1,"474":1,"480":1,"485":2,"487":4,"492":1,"498":1,"504":1,"517":1,"521":1,"527":1,"528":1,"529":1,"537":1,"546":1,"548":1,"552":1,"555":1,"559":3,"562":1,"567":1,"568":1,"569":1,"570":2,"573":3,"577":1,"578":1,"579":1,"580":1,"584":1,"586":4,"587":1,"590":1,"594":1,"598":1,"611":1,"615":1,"616":1,"617":3,"626":1,"628":1,"629":1,"637":2,"638":1,"641":1,"646":2,"654":1,"655":1,"656":1,"657":1,"658":1,"667":1,"669":1,"670":1,"671":2,"674":1,"676":2,"683":3,"684":1,"685":1,"693":2,"698":3,"700":1,"713":1,"714":1,"716":1,"717":1,"718":1,"719":1,"720":1,"726":1,"729":1,"731":1,"743":3,"746":2,"749":1,"750":2,"751":2,"752":3,"753":1,"754":1,"762":1,"763":1,"765":1,"794":1,"797":1,"802":1,"823":1,"828":1,"852":1,"856":1,"858":2,"860":1,"884":1,"890":1,"916":1,"920":1,"921":1,"923":2,"925":1,"951":1,"955":1,"957":2,"959":1,"985":1,"989":1,"991":2,"993":1,"1019":1,"1023":1,"1025":2,"1027":1,"1053":1,"1057":1,"1059":2,"1061":1,"1087":1,"1091":1,"1093":2,"1095":1,"1121":1,"1125":1,"1127":2,"1129":1,"1155":1,"1159":1,"1161":2,"1163":1,"1190":1,"1196":1,"1197":1,"1200":1,"1201":2,"1202":2,"1204":1,"1205":1,"1211":1,"1216":1,"1243":1,"1249":2,"1262":1,"1264":1,"1281":1,"1283":1,"1284":1,"1287":1,"1294":1,"1297":1,"1310":2,"1319":1,"1323":1,"1324":1,"1329":1,"1330":1,"1340":4,"1345":1,"1348":1,"1351":1,"1356":1,"1358":1,"1363":1,"1369":1,"1370":1,"1374":1,"1375":4,"1378":1,"1385":1,"1386":1,"1387":1,"1388":1,"1389":1,"1393":2,"1394":1,"1396":1,"1401":1,"1402":1,"1406":1,"1407":2,"1410":4,"1413":5,"1416":2,"1417":1,"1421":1,"1427":2,"1436":1,"1438":1,"1441":1,"1443":1,"1444":1,"1445":1,"1448":2,"1450":2,"1452":3,"1453":1,"1459":1,"1468":2,"1474":2,"1479":1,"1481":2,"1483":1,"1484":1,"1485":2,"1486":1,"1487":4,"1495":3,"1496":1,"1504":1,"1511":1,"1512":2,"1516":1,"1519":1,"1520":2,"1522":1,"1532":5,"1533":2,"1547":3,"1548":1,"1551":1,"1564":1,"1583":2,"1584":1,"1587":5,"1588":5,"1589":3,"1591":2,"1595":1,"1602":1,"1604":1,"1605":1,"1606":4,"1607":1,"1610":1,"1611":3,"1612":3,"1616":2,"1617":1,"1618":2,"1620":1,"1626":1,"1627":1,"1630":1,"1655":2,"1656":1,"1659":3,"1660":1,"1661":1,"1669":1,"1675":2,"1679":1,"1733":1,"1735":1,"1736":1,"1746":1,"1751":1,"1752":1,"1753":1,"1755":1,"1756":6,"1758":2,"1759":2,"1764":1,"1766":2,"1767":1,"1768":1,"1769":2,"1770":1,"1798":2,"1803":1,"1806":1,"1838":1,"1840":2,"1843":1,"1844":1,"1845":2,"1846":2,"1913":1,"1920":1,"1928":1,"1930":3,"1941":3,"1942":2,"1946":3,"1947":2,"1948":7,"1958":1,"1986":1,"1988":1,"1990":1,"1997":2,"2000":1,"2008":1,"2009":1,"2015":1,"2016":5,"2017":7,"2018":4,"2019":1,"2020":1,"2021":2,"2024":1,"2025":1,"2030":1,"2032":2,"2035":1,"2045":2,"2049":2,"2050":3,"2052":1,"2058":1,"2060":2,"2063":3,"2064":1,"2066":1,"2068":2,"2069":4,"2156":1,"2159":7,"2161":1,"2162":2,"2163":1,"2167":1,"2170":1,"2173":1,"2179":1,"2182":4,"2185":2,"2188":1,"2189":2,"2191":1,"2193":1,"2206":2,"2207":1,"2210":1,"2213":1,"2214":1,"2216":1,"2243":1,"2252":3,"2254":3,"2259":1,"2263":1,"2264":2,"2265":1,"2266":1,"2269":1,"2270":1,"2271":1,"2272":1,"2276":1,"2279":3,"2280":2,"2283":9,"2284":2,"2285":1,"2288":3,"2289":1,"2293":1,"2297":2,"2298":1,"2301":1,"2302":4,"2303":1,"2310":2,"2312":1,"2323":3,"2324":5,"2340":1,"2368":1,"2371":1,"2372":1,"2374":1,"2375":1,"2376":2,"2380":1,"2381":1,"2382":1,"2389":1,"2394":1,"2396":1,"2400":5,"2403":2,"2409":1,"2411":7,"2415":1,"2420":1,"2421":1,"2423":1,"2425":1,"2427":1,"2428":2,"2429":1,"2432":1,"2438":2,"2440":1,"2442":1,"2443":1,"2449":1,"2453":1,"2459":4,"2462":2,"2463":1,"2466":1,"2467":1,"2472":1,"2474":1,"2491":1,"2492":1,"2494":1,"2498":1,"2499":1,"2501":1,"2536":4,"2547":1,"2548":1,"2551":1,"2559":2,"2560":1,"2562":2,"2566":1,"2567":2,"2568":1,"2572":1,"2582":1,"2607":1,"2609":3,"2616":1,"2618":1,"2619":3,"2620":2,"2622":1,"2626":1,"2627":1,"2630":2,"2631":1,"2632":2,"2633":4,"2643":3,"2644":1,"2645":3,"2656":1,"2660":1,"2667":1,"2669":1,"2670":1,"2674":1,"2676":1,"2693":3,"2695":2,"2697":1,"2698":3,"2699":1,"2700":1,"2702":4,"2705":1,"2706":1,"2710":3,"2719":1,"2721":5,"2722":1,"2725":1,"2747":1,"2748":3,"2749":23,"2750":7,"2751":2,"2758":1,"2760":2,"2765":1,"2767":1,"2769":2,"2788":1,"2790":1,"2792":1,"2795":1,"2796":1,"2805":1,"2818":1,"2833":1,"2834":1,"2844":2,"2854":2,"2857":1,"2862":3,"2864":2,"2870":3,"2871":4,"2877":1,"2879":1,"2882":2,"2883":1,"2884":3,"2886":1,"2887":3,"2894":1,"2895":1,"2896":1,"2897":1,"2899":1,"2900":1,"2901":9,"2907":1,"2908":7,"2909":5,"2910":2,"2911":2,"2913":1,"2914":3,"2915":2,"2917":2,"2919":4,"2922":1,"2927":2,"2929":1,"2930":1,"2934":2,"2938":1,"2941":1,"2942":4}}],["bepo",{"2":{"2880":2}}],["beware",{"2":{"1675":1}}],["beat",{"2":{"2245":7}}],["beats",{"2":{"1481":1,"2245":2}}],["beacon",{"2":{"1843":3,"2063":6,"2887":2}}],["bear65",{"2":{"72":1}}],["bear",{"2":{"67":2,"277":2,"2416":1,"2423":1}}],["bespoke",{"2":{"2700":1}}],["besides",{"2":{"1464":1,"1474":1,"2166":1,"2410":1,"2925":1}}],["best",{"0":{"675":1,"2624":1},"1":{"2625":1},"2":{"233":1,"419":1,"520":1,"595":1,"603":1,"617":2,"619":1,"632":1,"675":1,"794":1,"1417":1,"1450":3,"1484":1,"1528":1,"1950":1,"1979":1,"2064":1,"2310":1,"2322":1,"2422":1,"2560":1,"2582":1,"2605":1,"2619":1,"2620":1,"2625":1,"2700":1,"2706":1,"2718":1,"2719":1,"2723":1,"2750":1,"2890":1}}],["beyond",{"0":{"1365":1},"2":{"752":1,"1365":1,"2168":1,"2574":1,"2726":1,"2728":1,"2916":1}}],["beiwagon",{"2":{"308":1}}],["being",{"2":{"6":1,"92":1,"114":1,"124":1,"176":1,"182":1,"234":1,"411":1,"617":1,"716":2,"717":1,"747":1,"756":1,"1294":1,"1328":1,"1378":1,"1410":1,"1427":1,"1432":1,"1434":2,"1442":1,"1454":1,"1456":1,"1493":1,"1518":1,"1523":1,"1552":1,"1564":1,"1588":1,"1603":1,"1655":1,"1658":3,"1736":1,"1756":3,"1953":1,"1955":1,"2001":1,"2167":2,"2178":1,"2181":1,"2184":1,"2293":2,"2302":2,"2310":3,"2411":2,"2416":2,"2427":1,"2459":14,"2523":1,"2553":1,"2569":2,"2570":1,"2580":1,"2605":1,"2609":1,"2631":1,"2632":1,"2643":2,"2649":1,"2680":1,"2702":1,"2723":1,"2729":1,"2749":3,"2790":1,"2888":1,"2897":1,"2914":1,"2918":1,"2925":1}}],["beneath",{"2":{"2424":1}}],["beneficial",{"2":{"752":1,"2757":1}}],["benefits",{"2":{"406":1,"1736":1,"2254":1}}],["benefit",{"2":{"215":1,"617":1,"1434":1,"2432":1}}],["bent",{"2":{"2421":2,"2422":1}}],["bends",{"2":{"2420":1}}],["bending",{"2":{"2418":1,"2420":1}}],["bend",{"2":{"231":1,"1919":4,"2420":1,"2532":4}}],["beck",{"2":{"2934":1}}],["becom",{"2":{"2165":1}}],["become",{"2":{"293":1,"305":1,"371":1,"1616":1,"2393":2,"2395":2,"2397":2,"2421":1,"2459":1,"2560":2,"2740":1}}],["becomes",{"2":{"213":1,"231":1,"562":1,"1587":1,"2447":1,"2475":1,"2727":1,"2732":1}}],["because",{"2":{"28":1,"408":1,"521":1,"594":1,"692":3,"1202":1,"1280":1,"1284":1,"1294":1,"1347":1,"1377":1,"1407":2,"1416":1,"1417":1,"1419":1,"1441":1,"1523":1,"1526":1,"1532":1,"1587":3,"1756":1,"1917":1,"1947":2,"2023":1,"2032":1,"2050":1,"2074":1,"2075":1,"2178":1,"2191":1,"2266":1,"2268":1,"2272":1,"2286":1,"2293":2,"2302":2,"2303":1,"2312":1,"2318":1,"2372":1,"2467":1,"2475":1,"2496":1,"2557":1,"2560":2,"2562":1,"2563":1,"2568":1,"2569":1,"2627":1,"2674":1,"2677":1,"2723":1,"2749":1,"2750":1,"2757":1,"2778":1,"2901":1,"2902":1,"2908":1,"2919":1,"2928":1,"2940":1}}],["bebol",{"2":{"211":1}}],["beekeeb",{"2":{"211":1}}],["beeps",{"2":{"1467":1}}],["beep",{"2":{"120":1,"1445":1,"1448":3,"1467":1,"2214":1,"2849":2,"2861":1}}],["been",{"0":{"394":1},"2":{"1":2,"3":1,"7":1,"8":2,"10":1,"14":2,"15":1,"16":1,"25":1,"36":1,"38":1,"49":2,"60":1,"67":2,"69":1,"70":3,"82":1,"84":1,"86":3,"90":1,"98":1,"114":2,"118":2,"123":1,"124":1,"125":1,"126":1,"128":1,"132":1,"137":1,"140":2,"142":1,"154":1,"157":1,"163":1,"164":1,"166":1,"167":1,"169":1,"175":2,"182":5,"183":1,"185":1,"194":2,"196":1,"198":2,"201":4,"202":1,"203":1,"206":1,"209":1,"213":2,"215":1,"218":1,"219":1,"220":1,"221":1,"224":1,"228":2,"230":1,"231":1,"233":2,"238":1,"243":1,"254":1,"262":3,"265":1,"271":1,"273":1,"279":1,"283":2,"284":2,"293":1,"302":1,"303":1,"304":1,"305":1,"312":2,"314":1,"315":1,"316":1,"323":1,"331":2,"405":1,"432":1,"457":1,"468":1,"567":1,"580":1,"594":1,"632":1,"635":2,"642":1,"644":4,"655":1,"657":1,"663":2,"683":1,"720":1,"1389":1,"1390":1,"1395":1,"1402":1,"1450":1,"1451":2,"1533":1,"1583":1,"1755":1,"1778":1,"1803":1,"1846":5,"1931":1,"1953":1,"2039":1,"2054":1,"2063":1,"2069":7,"2167":1,"2169":1,"2191":1,"2242":1,"2258":1,"2268":2,"2293":2,"2301":1,"2303":1,"2310":2,"2397":1,"2459":1,"2495":1,"2568":1,"2569":4,"2571":1,"2579":1,"2587":1,"2605":1,"2609":1,"2610":1,"2626":1,"2632":1,"2633":1,"2646":1,"2648":1,"2670":2,"2721":2,"2749":1,"2750":2,"2774":1,"2806":1,"2895":1,"2907":1,"2927":1,"2932":1}}],["belgian",{"2":{"2880":4}}],["belgium",{"2":{"2880":2}}],["bel",{"2":{"2214":1,"2849":1}}],["belong",{"2":{"1200":1,"1201":1,"1493":1,"2721":2}}],["below",{"2":{"43":1,"55":1,"182":1,"196":2,"204":1,"224":1,"489":1,"529":1,"625":1,"654":1,"655":1,"659":1,"667":2,"673":1,"685":1,"713":1,"723":1,"743":3,"755":1,"769":1,"1195":1,"1198":1,"1247":1,"1268":1,"1286":1,"1312":1,"1325":1,"1379":1,"1416":1,"1497":1,"1511":1,"1553":1,"1584":1,"1587":2,"1588":1,"1598":1,"1674":1,"1738":1,"1739":1,"1743":1,"1751":1,"1770":1,"1801":2,"1804":1,"1839":1,"1946":1,"1948":1,"1981":1,"1984":1,"1996":1,"2020":1,"2030":2,"2043":1,"2044":1,"2059":1,"2063":1,"2159":1,"2179":1,"2180":1,"2206":1,"2215":1,"2259":1,"2288":1,"2289":1,"2302":1,"2303":1,"2310":1,"2311":2,"2319":1,"2410":2,"2416":1,"2430":1,"2435":1,"2502":1,"2578":2,"2698":1,"2721":1,"2746":1,"2750":3,"2758":1,"2760":3,"2765":1,"2769":3,"2877":1,"2878":1,"2879":1,"2925":1,"2933":2,"2937":1}}],["believe",{"2":{"408":1}}],["belt",{"2":{"199":1}}],["bells",{"2":{"2721":1}}],["bella",{"2":{"211":1}}],["bell",{"2":{"114":1,"1448":1,"1480":1,"2214":2}}],["began",{"2":{"2372":1}}],["begins",{"2":{"1532":1,"1801":1,"1810":1,"2293":1,"2372":2,"2529":1,"2552":1,"2578":1}}],["beginner",{"2":{"1421":1}}],["beginners",{"0":{"1419":1}}],["beginning",{"0":{"2923":1},"2":{"203":1,"392":1,"520":1,"1466":1,"1532":3,"1657":1,"1930":1,"1948":2,"2283":2,"2288":1,"2289":1,"2303":1,"2312":1,"2320":3,"2422":1,"2627":1,"2787":1}}],["begin",{"2":{"94":1,"113":1,"114":1,"133":1,"134":1,"249":1,"1523":1,"1808":1,"1815":1,"1948":2,"2177":1,"2337":1,"2352":1,"2434":1,"2585":1,"2607":1,"2942":1}}],["begun",{"2":{"50":1}}],["bet",{"2":{"233":1,"1528":1,"2605":1}}],["beta",{"2":{"143":2,"211":1,"228":1,"311":1}}],["better",{"0":{"2774":1},"1":{"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1},"2":{"50":1,"98":1,"149":1,"160":1,"191":2,"263":1,"308":1,"328":1,"525":1,"534":1,"549":1,"646":1,"1979":1,"2000":1,"2453":1,"2460":1,"2555":1,"2645":1,"2651":2,"2660":1,"2663":1,"2757":1,"2843":1,"2895":1,"2903":1,"2908":1,"2909":1,"2942":1}}],["between",{"0":{"1340":1,"1434":1,"1980":1,"2270":1},"1":{"1435":1,"1436":1,"1437":1,"1438":1,"1439":1,"1440":1,"1441":1,"1442":1,"1443":1},"2":{"32":1,"45":1,"49":2,"64":1,"76":1,"107":1,"114":1,"211":2,"249":1,"257":1,"258":1,"259":2,"266":1,"271":1,"276":1,"397":1,"470":1,"472":1,"520":1,"529":1,"535":1,"541":1,"559":2,"562":2,"568":3,"620":1,"649":1,"687":1,"713":1,"717":3,"761":1,"1189":1,"1242":1,"1263":1,"1285":1,"1294":1,"1295":1,"1340":1,"1347":1,"1363":1,"1375":1,"1377":2,"1406":1,"1420":2,"1421":1,"1422":6,"1434":1,"1435":1,"1443":1,"1532":1,"1537":1,"1564":1,"1584":1,"1588":1,"1617":1,"1641":1,"1659":1,"1661":1,"1669":1,"1689":1,"1758":1,"1770":1,"1793":1,"1929":4,"1930":2,"1931":8,"1933":3,"1934":1,"1948":1,"1954":1,"1955":1,"1956":1,"1979":1,"1980":1,"2000":1,"2017":2,"2024":1,"2047":1,"2163":1,"2175":1,"2180":1,"2183":1,"2185":1,"2187":6,"2198":13,"2200":2,"2201":2,"2202":2,"2219":1,"2223":1,"2227":1,"2247":1,"2257":1,"2258":2,"2259":1,"2260":1,"2266":1,"2269":3,"2270":1,"2271":1,"2273":1,"2287":1,"2289":1,"2290":1,"2298":1,"2302":1,"2310":1,"2320":1,"2358":1,"2370":1,"2371":1,"2373":2,"2377":1,"2384":1,"2406":1,"2419":1,"2420":1,"2435":2,"2490":1,"2497":1,"2575":1,"2627":2,"2649":1,"2662":1,"2734":1,"2744":2,"2747":1,"2757":1,"2758":1,"2765":1,"2784":1,"2787":1,"2835":1,"2847":2,"2851":1,"2865":1,"2870":1,"2902":1,"2908":1,"2910":1,"2917":1,"2942":1}}],["behind",{"2":{"49":1,"198":1,"201":1,"213":1,"224":1,"238":1,"251":1,"574":1,"2303":1,"2729":1,"2895":2}}],["behave",{"2":{"303":1,"586":1,"1377":1,"1591":1,"1757":1,"2030":1,"2167":1,"2301":1,"2510":1,"2644":1,"2722":1,"2908":1}}],["behaves",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"393":1,"624":1,"2168":1,"2578":1}}],["behavioral",{"2":{"1346":1}}],["behaviors",{"0":{"562":1}}],["behavior",{"0":{"624":1,"628":1},"1":{"625":1,"629":1,"630":1},"2":{"4":1,"49":1,"64":1,"87":2,"88":1,"103":1,"104":1,"126":1,"127":1,"176":1,"194":2,"297":3,"320":1,"327":2,"387":1,"408":3,"429":1,"487":2,"492":1,"548":1,"551":1,"568":1,"619":1,"623":2,"626":1,"628":2,"629":1,"646":1,"1346":1,"1484":1,"1496":1,"1617":1,"1656":1,"1657":1,"1736":1,"1740":1,"1743":1,"1747":1,"1751":1,"1752":1,"1754":1,"1755":1,"1756":1,"1757":1,"1792":1,"1793":1,"1950":1,"1955":1,"2017":1,"2021":2,"2168":1,"2271":1,"2311":1,"2313":1,"2337":1,"2338":1,"2339":1,"2446":1,"2459":1,"2565":1,"2643":1,"2656":1,"2693":2,"2695":1,"2801":1,"2898":1,"2902":2,"2911":3,"2914":3,"2919":2}}],["behaviours",{"2":{"198":1}}],["behaviour",{"0":{"194":1,"206":1,"2031":1},"2":{"2":1,"113":1,"114":1,"134":1,"149":2,"191":2,"206":1,"211":2,"294":2,"328":1,"333":1,"644":1,"654":1,"1319":1,"1378":1,"1425":1,"1513":1,"1587":1,"1608":1,"1662":2,"1806":1,"2031":1,"2047":1,"2181":2,"2264":1,"2713":1}}],["be",{"0":{"25":1,"263":1,"397":1,"560":1,"561":1,"562":1,"589":1,"2675":1,"2896":1,"2897":1},"2":{"5":1,"10":2,"11":1,"16":1,"22":1,"23":1,"24":1,"25":1,"28":1,"45":1,"49":2,"50":2,"58":1,"60":1,"63":2,"64":1,"70":1,"74":4,"88":2,"93":1,"100":1,"103":2,"104":2,"107":1,"109":1,"110":1,"118":1,"124":2,"125":1,"126":1,"127":2,"131":1,"134":4,"137":1,"138":1,"153":2,"154":1,"156":1,"157":1,"160":1,"164":1,"176":1,"184":1,"185":2,"191":2,"194":3,"195":2,"201":5,"203":1,"209":3,"210":1,"213":2,"220":1,"221":1,"228":3,"230":2,"231":1,"236":1,"249":1,"254":1,"262":2,"263":1,"265":3,"266":1,"268":1,"271":1,"273":1,"275":2,"276":2,"283":1,"284":1,"285":2,"288":2,"289":1,"303":2,"306":2,"307":3,"308":1,"312":1,"315":1,"317":1,"327":1,"328":1,"332":1,"338":3,"347":1,"371":1,"372":1,"373":1,"380":1,"383":1,"387":3,"390":3,"391":1,"393":1,"396":1,"397":8,"399":2,"400":2,"401":3,"405":1,"406":10,"408":5,"417":2,"420":2,"421":2,"424":1,"427":3,"428":2,"431":6,"441":1,"442":1,"444":1,"453":3,"457":1,"458":1,"459":1,"467":3,"471":1,"472":1,"473":1,"474":1,"481":1,"487":2,"490":1,"491":1,"492":2,"498":3,"503":1,"504":1,"507":1,"509":1,"510":1,"520":1,"522":1,"524":1,"527":1,"529":1,"532":1,"533":2,"539":1,"540":1,"541":3,"545":1,"546":2,"548":3,"549":2,"550":1,"551":1,"554":1,"555":1,"558":2,"559":4,"561":1,"562":1,"563":3,"566":3,"567":2,"568":3,"569":1,"572":2,"573":4,"576":2,"582":1,"586":4,"587":2,"589":1,"590":1,"591":1,"592":1,"594":2,"595":1,"596":1,"599":1,"603":1,"607":1,"608":1,"611":2,"613":2,"617":5,"618":1,"623":2,"624":1,"625":4,"627":1,"628":2,"631":1,"632":1,"637":1,"638":1,"641":2,"643":2,"645":1,"646":2,"649":2,"654":4,"655":9,"656":1,"657":2,"658":1,"659":1,"670":1,"677":1,"681":3,"683":4,"684":3,"685":4,"686":2,"687":1,"692":5,"693":2,"695":1,"696":3,"698":2,"703":1,"716":1,"717":5,"718":2,"720":1,"723":1,"731":1,"735":1,"743":3,"745":1,"746":4,"747":1,"748":1,"750":1,"751":5,"752":5,"753":2,"755":1,"760":2,"763":1,"764":1,"765":1,"769":3,"794":1,"802":1,"806":1,"828":1,"832":1,"856":1,"860":1,"864":1,"890":1,"894":1,"920":2,"921":1,"925":1,"929":1,"955":1,"959":1,"963":1,"989":1,"993":1,"997":1,"1023":1,"1027":1,"1031":1,"1057":1,"1061":1,"1065":1,"1091":2,"1095":1,"1099":1,"1125":2,"1129":1,"1133":1,"1159":1,"1163":1,"1167":1,"1189":1,"1193":1,"1195":1,"1196":1,"1197":4,"1198":1,"1200":2,"1201":2,"1202":2,"1203":1,"1206":1,"1210":1,"1216":1,"1220":1,"1244":1,"1245":4,"1247":2,"1249":2,"1266":1,"1268":2,"1280":1,"1283":1,"1284":2,"1285":2,"1286":1,"1289":1,"1291":3,"1294":2,"1295":2,"1298":1,"1302":1,"1310":1,"1316":1,"1317":3,"1321":1,"1322":1,"1323":1,"1326":1,"1327":1,"1328":1,"1329":1,"1340":1,"1345":3,"1348":1,"1350":1,"1368":2,"1369":1,"1370":1,"1373":1,"1374":3,"1375":4,"1378":1,"1379":1,"1385":3,"1387":2,"1392":1,"1404":2,"1405":1,"1406":1,"1407":3,"1409":1,"1410":1,"1412":3,"1413":2,"1416":5,"1417":2,"1418":1,"1419":2,"1420":1,"1421":4,"1422":1,"1423":1,"1427":2,"1428":4,"1429":1,"1430":1,"1432":1,"1434":2,"1435":5,"1436":1,"1437":2,"1438":1,"1441":2,"1442":1,"1443":2,"1444":1,"1450":3,"1451":1,"1452":2,"1455":1,"1456":1,"1457":1,"1458":1,"1459":2,"1466":2,"1468":2,"1471":1,"1472":1,"1474":1,"1475":2,"1477":1,"1479":5,"1481":1,"1483":1,"1484":1,"1485":2,"1487":1,"1492":1,"1495":1,"1496":1,"1497":1,"1504":1,"1511":1,"1512":7,"1516":1,"1517":1,"1521":2,"1522":1,"1526":1,"1527":2,"1528":1,"1532":2,"1552":2,"1560":1,"1583":1,"1585":1,"1588":1,"1589":1,"1594":2,"1599":1,"1601":1,"1602":2,"1603":4,"1604":3,"1606":8,"1614":2,"1617":1,"1619":1,"1621":2,"1622":1,"1624":2,"1626":1,"1628":1,"1631":1,"1633":2,"1634":1,"1639":1,"1641":2,"1642":3,"1645":1,"1655":1,"1659":4,"1660":1,"1661":2,"1662":1,"1663":2,"1664":4,"1672":1,"1675":5,"1676":1,"1679":1,"1680":2,"1681":2,"1691":1,"1696":2,"1698":2,"1723":2,"1732":2,"1735":2,"1740":1,"1742":1,"1744":1,"1746":2,"1747":1,"1749":1,"1751":13,"1752":3,"1753":1,"1754":2,"1755":1,"1757":2,"1758":2,"1762":1,"1765":3,"1766":3,"1768":1,"1769":1,"1770":3,"1775":1,"1792":1,"1793":1,"1805":1,"1806":1,"1840":3,"1844":2,"1845":1,"1846":1,"1847":1,"1859":1,"1861":1,"1913":1,"1930":2,"1932":1,"1933":1,"1934":2,"1935":1,"1937":1,"1940":2,"1941":2,"1943":1,"1945":1,"1947":1,"1948":4,"1950":1,"1951":1,"1953":1,"1954":1,"1958":2,"1981":1,"1984":1,"1985":1,"1986":2,"1988":1,"1990":3,"1993":1,"1996":2,"1997":1,"2000":3,"2003":1,"2006":3,"2008":4,"2009":2,"2011":1,"2013":1,"2014":3,"2015":2,"2016":3,"2017":4,"2019":1,"2021":4,"2025":3,"2029":2,"2030":5,"2031":1,"2032":3,"2035":1,"2037":1,"2039":3,"2040":1,"2042":4,"2043":2,"2044":2,"2045":2,"2046":2,"2049":1,"2050":3,"2051":2,"2057":2,"2060":3,"2065":1,"2066":2,"2067":1,"2068":1,"2069":1,"2070":1,"2074":2,"2085":1,"2087":1,"2156":1,"2159":1,"2160":1,"2161":3,"2162":1,"2163":2,"2164":1,"2165":3,"2166":1,"2168":1,"2169":3,"2170":1,"2171":1,"2172":2,"2173":1,"2178":1,"2179":1,"2181":2,"2182":2,"2183":1,"2184":2,"2189":3,"2191":2,"2205":1,"2208":2,"2210":1,"2212":2,"2215":2,"2242":1,"2254":1,"2258":2,"2260":2,"2264":2,"2265":3,"2266":2,"2268":3,"2269":1,"2270":6,"2271":2,"2272":1,"2279":2,"2283":2,"2286":1,"2287":2,"2288":1,"2291":1,"2293":7,"2294":2,"2297":1,"2302":5,"2303":1,"2309":1,"2310":6,"2311":1,"2312":6,"2313":1,"2315":1,"2316":1,"2317":1,"2319":1,"2323":6,"2324":2,"2337":1,"2338":1,"2339":1,"2340":1,"2358":1,"2368":2,"2370":1,"2371":1,"2372":4,"2374":1,"2375":2,"2376":2,"2381":2,"2383":3,"2384":1,"2386":3,"2388":2,"2389":2,"2390":1,"2391":3,"2393":1,"2395":1,"2397":1,"2402":2,"2403":3,"2405":3,"2407":1,"2408":2,"2410":5,"2411":7,"2416":2,"2417":1,"2418":2,"2419":1,"2420":2,"2421":7,"2422":3,"2423":2,"2424":2,"2425":2,"2427":4,"2428":1,"2430":1,"2434":1,"2435":4,"2436":3,"2438":3,"2439":3,"2440":1,"2441":1,"2443":1,"2445":1,"2447":1,"2448":1,"2449":2,"2451":1,"2453":1,"2459":4,"2460":1,"2463":1,"2464":1,"2466":1,"2475":1,"2476":1,"2478":1,"2479":1,"2480":1,"2482":1,"2483":1,"2490":1,"2492":1,"2494":1,"2495":3,"2496":2,"2497":1,"2498":2,"2499":3,"2500":1,"2501":1,"2515":1,"2528":1,"2547":2,"2548":1,"2549":2,"2551":3,"2555":1,"2557":1,"2559":1,"2560":3,"2562":4,"2563":1,"2566":2,"2567":1,"2568":6,"2569":6,"2570":3,"2571":3,"2576":1,"2577":2,"2578":3,"2582":2,"2583":1,"2585":1,"2589":2,"2590":2,"2591":2,"2594":2,"2602":1,"2603":4,"2605":4,"2606":1,"2607":1,"2609":1,"2611":1,"2612":1,"2621":1,"2622":2,"2629":1,"2630":1,"2632":1,"2633":4,"2643":1,"2644":1,"2645":2,"2649":1,"2651":1,"2652":1,"2655":3,"2660":2,"2662":1,"2666":1,"2667":12,"2669":6,"2670":1,"2671":1,"2672":1,"2673":1,"2674":3,"2675":5,"2676":5,"2677":4,"2679":1,"2680":1,"2683":1,"2684":1,"2687":1,"2688":1,"2689":1,"2693":1,"2695":1,"2696":1,"2697":1,"2698":2,"2699":1,"2700":1,"2702":6,"2703":3,"2704":2,"2705":1,"2706":2,"2707":1,"2709":1,"2712":1,"2713":1,"2715":2,"2718":1,"2719":11,"2720":6,"2721":34,"2722":13,"2724":2,"2725":1,"2744":1,"2746":2,"2747":5,"2748":4,"2749":42,"2750":30,"2752":1,"2757":1,"2760":2,"2761":2,"2762":1,"2765":1,"2766":1,"2767":2,"2768":1,"2769":3,"2771":2,"2773":1,"2774":1,"2778":4,"2780":1,"2787":2,"2806":1,"2840":1,"2843":1,"2845":2,"2846":1,"2847":2,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2857":3,"2862":1,"2864":3,"2865":2,"2868":1,"2869":1,"2870":2,"2871":3,"2873":2,"2874":1,"2876":1,"2879":1,"2881":1,"2882":1,"2886":1,"2887":1,"2890":1,"2894":2,"2895":3,"2896":7,"2897":2,"2901":5,"2902":1,"2907":2,"2908":5,"2909":3,"2910":5,"2913":1,"2914":4,"2915":3,"2916":2,"2917":2,"2919":1,"2920":2,"2922":1,"2923":1,"2925":1,"2927":1,"2929":1,"2933":3,"2936":3,"2937":2,"2938":1,"2939":1,"2940":1,"2941":3,"2942":2}}],["beforehand",{"2":{"2605":1}}],["before",{"0":{"324":1,"399":1,"400":1,"401":1,"402":1},"2":{"1":1,"45":1,"49":1,"55":1,"73":1,"90":1,"105":1,"160":2,"176":1,"191":1,"199":1,"203":2,"211":1,"234":1,"240":1,"246":1,"259":1,"263":1,"289":1,"320":2,"356":1,"363":1,"397":1,"401":1,"403":1,"406":9,"453":1,"465":1,"467":1,"504":1,"545":1,"562":7,"572":3,"611":1,"613":2,"615":1,"617":4,"628":1,"631":1,"632":1,"635":1,"642":1,"644":1,"649":2,"655":2,"656":1,"657":1,"693":1,"760":2,"769":1,"1247":1,"1268":1,"1407":1,"1450":1,"1451":4,"1459":1,"1460":1,"1484":1,"1492":1,"1497":1,"1512":2,"1521":1,"1522":1,"1523":1,"1526":1,"1532":1,"1585":1,"1598":1,"1616":1,"1634":1,"1672":1,"1698":1,"1724":1,"1726":1,"1751":1,"1790":1,"1840":1,"1902":1,"1904":1,"1906":1,"1909":1,"1933":1,"1942":1,"1947":1,"1988":1,"1990":1,"1995":1,"2003":8,"2024":1,"2027":1,"2030":1,"2032":2,"2039":2,"2042":2,"2060":1,"2146":1,"2148":1,"2150":1,"2153":1,"2176":1,"2224":1,"2228":1,"2252":2,"2253":1,"2258":1,"2268":2,"2274":1,"2293":2,"2301":1,"2303":1,"2310":1,"2410":1,"2411":1,"2418":1,"2420":1,"2422":1,"2424":1,"2440":1,"2459":1,"2496":1,"2566":1,"2567":1,"2573":1,"2583":1,"2605":1,"2611":1,"2612":1,"2627":1,"2643":1,"2648":1,"2658":1,"2669":3,"2705":1,"2706":1,"2719":1,"2721":2,"2724":1,"2741":1,"2748":1,"2778":1,"2814":1,"2854":1,"2862":1,"2867":1,"2872":1,"2875":1,"2889":1,"2896":1,"2902":1,"2907":1,"2908":1,"2914":2,"2919":2}}],["m4",{"2":{"2682":1}}],["mrwd",{"2":{"2159":1,"2510":1,"2515":1}}],["mrelax",{"2":{"160":1}}],["mhz",{"2":{"1249":2}}],["mb85rs64v",{"2":{"747":2}}],["mb85rc256v",{"2":{"746":2}}],["mnt",{"2":{"2619":1}}],["mnemonic",{"2":{"2323":2,"2411":1}}],["mnxt",{"2":{"587":2,"1746":1,"2159":1,"2510":1,"2515":1}}],["mnk50",{"2":{"241":2}}],["mnk75",{"2":{"211":1,"241":2}}],["mnk1800s",{"2":{"211":1,"241":2}}],["mnk65",{"2":{"211":1}}],["mmd",{"2":{"2567":1}}],["mm",{"2":{"405":2,"2002":4,"2006":1,"2875":1}}],["mmcu=",{"2":{"348":1,"2381":1}}],["mmoskal",{"2":{"199":1}}],["m32u4",{"2":{"2495":1}}],["m3",{"2":{"328":1}}],["m3n3van",{"2":{"143":2}}],["m1",{"2":{"328":1}}],["m122",{"2":{"114":1,"207":8}}],["m12og",{"2":{"102":3}}],["m2s",{"2":{"2270":7}}],["m2",{"2":{"328":1}}],["m256ws",{"2":{"277":1}}],["m256wh",{"2":{"277":1}}],["m20add",{"2":{"114":1}}],["mj65",{"2":{"253":2}}],["mj6xy",{"2":{"211":1}}],["mfa",{"2":{"2660":1}}],["mffd",{"2":{"2159":1,"2510":1,"2515":1}}],["mf34",{"2":{"226":1,"236":1}}],["mf17",{"2":{"226":1,"236":1}}],["m60",{"2":{"199":1}}],["m65",{"2":{"114":1,"211":2}}],["msel",{"2":{"2510":1,"2515":1}}],["msecs",{"2":{"1452":1}}],["mstp",{"2":{"2510":1,"2515":1}}],["msb",{"2":{"2289":2}}],["msbs",{"2":{"2288":1}}],["msg1967778",{"2":{"1373":2}}],["msg1884034",{"2":{"1372":2}}],["msg1127447",{"2":{"1364":2}}],["msg1492604",{"2":{"1350":2}}],["msystem",{"2":{"2662":1}}],["msys2",{"0":{"2662":1},"2":{"158":1,"160":1,"682":1,"2495":1,"2499":1,"2594":1,"2613":1,"2614":1,"2615":1,"2662":2}}],["msys",{"2":{"158":1,"160":1,"240":1,"2390":1,"2495":1,"2594":1,"2598":1,"2613":1,"2614":1,"2615":3,"2621":1,"2662":2,"2667":4}}],["ms",{"0":{"1497":1},"2":{"149":1,"160":1,"209":2,"222":2,"231":2,"559":1,"562":1,"568":1,"645":2,"769":1,"1407":2,"1448":1,"1585":1,"1656":1,"1661":2,"1675":4,"1804":1,"1927":19,"1931":22,"1932":6,"1933":1,"1943":1,"2002":1,"2003":2,"2006":1,"2016":2,"2023":1,"2034":6,"2045":1,"2064":2,"2159":8,"2215":2,"2268":1,"2281":1,"2308":4,"2492":1,"2533":19,"2643":1,"2693":1,"2719":2,"2847":2,"2855":1,"2863":1,"2865":1,"2873":1,"2875":1,"2876":1,"2911":1}}],["mschwingen",{"2":{"149":1,"207":2}}],["mctl",{"2":{"2510":1,"2515":1}}],["mcselec",{"2":{"1316":1}}],["mcmuffin",{"2":{"676":1}}],["mc",{"2":{"211":1}}],["mcall",{"2":{"160":1}}],["mcp23018",{"2":{"148":1,"149":2,"191":2}}],["mcu>",{"2":{"348":1,"2376":3,"2379":1,"2381":1,"2382":1,"2495":1}}],["mcuconf",{"2":{"50":2,"714":1,"715":1,"718":1,"765":3,"1200":3,"1201":3,"1245":3,"1266":2,"1296":1,"1300":1,"1402":2,"1562":1,"1563":1,"2690":1,"2691":1,"2692":1}}],["mcus",{"0":{"1207":1,"2667":1},"1":{"1208":1,"1209":1,"1210":1},"2":{"49":1,"76":1,"114":1,"149":1,"174":1,"191":1,"249":1,"378":1,"387":1,"390":1,"392":1,"510":1,"511":1,"687":1,"698":1,"711":1,"713":1,"750":1,"751":1,"761":1,"1195":3,"1197":4,"1198":4,"1200":2,"1201":2,"1242":1,"1263":1,"1297":1,"1369":1,"1471":1,"1768":2,"1947":1,"2266":1,"2386":1,"2391":1,"2494":1,"2669":5,"2685":1,"2703":1,"2704":3,"2722":1,"2749":1,"2795":1,"2796":1}}],["mcu",{"0":{"130":1,"145":1,"386":1,"571":1,"1624":1,"2700":1,"2701":1,"2704":1,"2706":1,"2823":1},"1":{"2701":1,"2702":2,"2703":2,"2704":1,"2705":1,"2706":1},"2":{"10":2,"73":1,"93":1,"114":1,"130":2,"134":1,"145":1,"149":1,"174":2,"176":5,"191":1,"199":4,"211":1,"236":1,"285":2,"341":1,"378":1,"379":1,"382":1,"387":5,"390":1,"391":1,"569":1,"571":1,"572":2,"620":1,"643":1,"644":1,"695":1,"696":1,"711":1,"713":2,"718":1,"720":1,"743":1,"749":1,"750":2,"751":9,"754":3,"764":2,"765":2,"1189":1,"1193":1,"1195":1,"1197":3,"1198":1,"1200":4,"1201":5,"1202":1,"1244":2,"1245":1,"1249":2,"1265":2,"1266":1,"1291":3,"1294":3,"1297":1,"1300":1,"1309":1,"1310":2,"1369":1,"1412":1,"1475":1,"1562":1,"1564":3,"1620":1,"1624":1,"1663":1,"1675":1,"1676":1,"1986":1,"2011":1,"2208":1,"2254":1,"2368":1,"2377":1,"2383":1,"2384":1,"2411":1,"2451":1,"2476":2,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2667":5,"2669":2,"2683":2,"2684":4,"2687":1,"2700":8,"2702":3,"2704":1,"2706":1,"2711":1,"2721":3,"2722":1,"2747":3,"2751":1,"2800":2,"2804":1,"2808":1,"2821":1,"2856":1}}],["mprv",{"2":{"1746":1,"2159":1,"2510":1,"2515":1}}],["mply",{"2":{"587":2,"1746":6,"2510":1,"2515":1}}],["mp",{"2":{"143":2}}],["mpaland",{"0":{"24":1},"2":{"176":1}}],["m0",{"2":{"134":1}}],["m0lly",{"2":{"43":2,"211":1}}],["md5",{"2":{"2410":2,"2501":1}}],["mdbt40",{"2":{"2368":1}}],["mdash",{"2":{"2290":1,"2631":2,"2632":2,"2633":1,"2790":2}}],["mdloader",{"2":{"134":1}}],["md",{"0":{"673":1,"674":1,"1438":1,"2437":1,"2708":1},"2":{"114":1,"134":1,"176":2,"222":1,"397":1,"403":1,"405":1,"406":1,"616":2,"664":1,"681":2,"1350":1,"1427":3,"1434":1,"2407":1,"2408":1,"2433":1,"2436":1,"2437":1,"2443":2,"2708":2,"2721":1}}],["mün",{"2":{"114":1}}],["mymacro2",{"2":{"2941":2}}],["mymacro1",{"2":{"2941":2}}],["mycoolkeeb",{"2":{"2707":4}}],["mycm",{"2":{"2510":1,"2515":1}}],["myusername",{"2":{"2585":1}}],["mykeyclub",{"2":{"2567":1}}],["mykeyboard",{"2":{"169":2,"184":2}}],["mylayout",{"2":{"1436":3}}],["my",{"0":{"408":1,"499":1,"602":1,"603":1,"1317":1,"1345":1,"1346":1,"1361":1},"1":{"409":1,"410":1,"411":1,"412":1,"500":1,"501":1,"502":1,"503":1,"504":1},"2":{"114":1,"120":2,"272":4,"307":6,"369":1,"387":1,"391":1,"471":1,"530":1,"531":1,"532":1,"541":2,"614":4,"627":1,"654":3,"655":3,"656":2,"657":2,"676":2,"681":5,"763":2,"1349":1,"1421":1,"1435":2,"1445":2,"1450":4,"1454":4,"1479":3,"1517":3,"1614":4,"1633":1,"1844":10,"2066":10,"2167":4,"2168":5,"2189":10,"2311":2,"2312":14,"2403":2,"2409":2,"2429":1,"2510":2,"2515":2,"2583":5,"2588":1,"2609":2,"2633":1,"2710":1,"2748":10,"2749":5,"2750":29,"2878":2}}],["mx",{"2":{"2414":1,"2883":1}}],["mx25l4006e",{"2":{"756":1}}],["mxss",{"2":{"211":2,"236":1}}],["mx1062",{"2":{"108":1}}],["mx5160",{"2":{"57":2,"211":1}}],["m",{"2":{"93":1,"102":1,"114":1,"158":2,"191":1,"204":2,"207":14,"211":1,"217":1,"222":1,"249":1,"266":5,"369":1,"403":1,"405":1,"418":1,"421":2,"422":1,"428":2,"435":2,"460":1,"486":1,"587":2,"611":1,"1522":1,"1599":2,"1619":1,"2162":6,"2181":10,"2403":1,"2496":3,"2503":3,"2515":3,"2537":10,"2553":1,"2601":2,"2627":1,"2633":1,"2875":1}}],["mumbo",{"0":{"1947":1}}],["mu",{"2":{"1484":4,"1489":4,"2517":4}}],["muhenkan",{"2":{"1355":1,"2508":1}}],["mux",{"2":{"695":4,"696":2}}],["mutually",{"2":{"1420":1}}],["mutable",{"2":{"541":1}}],["mute",{"2":{"231":1,"255":1,"2509":2,"2510":3,"2515":5}}],["mutex",{"2":{"160":1}}],["murcielago",{"2":{"253":2}}],["musical",{"2":{"1479":1,"1487":2}}],["music",{"0":{"1484":1,"1485":1,"1486":1},"1":{"1485":1,"1486":1},"2":{"191":1,"211":1,"649":1,"1478":1,"1479":15,"1480":20,"1484":13,"1485":6,"1486":6,"1489":8,"1622":2,"2517":8,"2884":2,"2933":1}}],["must",{"2":{"88":2,"104":2,"127":2,"141":1,"184":1,"194":1,"268":1,"284":1,"387":1,"427":2,"456":1,"474":1,"532":1,"533":1,"541":1,"562":3,"565":1,"568":2,"572":1,"589":1,"592":1,"623":2,"625":1,"666":1,"674":1,"686":1,"693":1,"695":1,"731":1,"752":1,"769":1,"802":1,"828":1,"860":1,"890":1,"920":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1091":1,"1095":1,"1125":1,"1129":1,"1163":1,"1192":1,"1197":1,"1216":1,"1247":1,"1268":1,"1291":2,"1294":2,"1329":1,"1348":1,"1401":1,"1406":1,"1417":1,"1418":1,"1428":4,"1450":1,"1512":3,"1521":1,"1551":1,"1559":1,"1583":1,"1604":2,"1605":1,"1606":12,"1610":1,"1617":1,"1619":1,"1627":2,"1630":1,"1633":1,"1641":1,"1664":1,"1691":1,"1696":1,"1751":2,"1758":2,"1767":1,"1768":1,"1770":2,"1821":1,"1925":1,"1931":1,"1932":1,"1986":1,"1990":2,"2009":1,"2011":1,"2017":2,"2032":1,"2042":1,"2046":1,"2050":2,"2057":2,"2172":1,"2178":1,"2179":2,"2208":1,"2254":1,"2271":1,"2273":1,"2312":1,"2323":1,"2358":1,"2369":1,"2386":1,"2391":1,"2409":1,"2411":2,"2435":1,"2450":1,"2499":1,"2515":1,"2566":2,"2568":3,"2571":1,"2587":1,"2603":2,"2605":1,"2637":1,"2644":1,"2648":2,"2667":1,"2700":1,"2713":1,"2714":1,"2719":4,"2720":1,"2721":9,"2722":2,"2742":2,"2748":1,"2749":3,"2760":2,"2761":2,"2762":1,"2766":1,"2767":2,"2769":1,"2771":1,"2787":1,"2846":1,"2847":2,"2849":1,"2850":1,"2851":1,"2852":1,"2857":2,"2864":2,"2865":1,"2868":1,"2870":2,"2871":2,"2873":2,"2874":1,"2876":1,"2879":1,"2910":1,"2917":2}}],["multilingual",{"2":{"2880":3}}],["multilayer",{"2":{"285":1}}],["multitude",{"2":{"2668":1}}],["multiarch",{"2":{"2667":1}}],["multimeter",{"2":{"2427":1}}],["multisplash",{"2":{"1843":3,"2063":6,"2887":2}}],["multinexus",{"2":{"1843":3,"2063":3,"2887":1}}],["multicross",{"2":{"1843":3,"2063":3,"2887":1}}],["multiwide",{"2":{"1843":3,"2063":3,"2887":1}}],["multiprocessing",{"0":{"545":1}}],["multiplier",{"2":{"1945":1,"1989":3,"2012":1,"2017":7}}],["multiplicative",{"2":{"1487":1}}],["multiplication",{"2":{"191":1}}],["multiples",{"2":{"1928":1}}],["multiplexing",{"0":{"1478":1},"2":{"1478":4,"1480":2,"2688":1}}],["multiplexer",{"2":{"620":1}}],["multiple",{"0":{"479":1,"481":1,"1427":1,"1552":1,"1664":1},"1":{"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1},"2":{"75":1,"114":1,"160":3,"211":1,"234":2,"236":1,"249":1,"307":1,"308":1,"312":1,"369":1,"431":2,"453":1,"467":2,"472":2,"475":1,"481":1,"520":1,"535":1,"647":1,"677":1,"685":2,"696":1,"751":1,"752":1,"753":1,"759":1,"760":1,"765":1,"770":1,"773":1,"776":1,"779":1,"920":1,"1091":1,"1125":1,"1244":1,"1245":1,"1256":1,"1259":1,"1266":1,"1274":1,"1276":1,"1406":2,"1408":1,"1416":1,"1420":1,"1427":1,"1430":1,"1436":1,"1443":1,"1444":1,"1448":3,"1480":1,"1511":1,"1516":1,"1532":1,"1547":1,"1552":2,"1596":1,"1609":1,"1613":1,"1641":1,"1642":1,"1659":1,"1664":1,"1675":1,"1757":1,"1804":1,"1843":4,"1930":1,"1931":1,"2014":4,"2016":3,"2050":1,"2063":5,"2172":1,"2189":1,"2191":1,"2286":1,"2370":1,"2427":1,"2435":1,"2438":2,"2468":1,"2528":1,"2547":1,"2567":2,"2569":1,"2577":1,"2580":1,"2603":1,"2609":1,"2626":1,"2633":1,"2667":1,"2719":1,"2721":2,"2722":1,"2734":1,"2768":1,"2779":1,"2817":1,"2822":1,"2836":1,"2849":1,"2857":1,"2911":1,"2914":1,"2915":1}}],["multiply",{"2":{"25":1}}],["multi",{"0":{"920":1,"1091":1,"1125":1},"2":{"191":1,"211":1,"2914":1}}],["multibuild",{"2":{"149":1,"199":1}}],["mun",{"2":{"114":1}}],["much",{"0":{"2896":1},"2":{"98":1,"100":1,"123":1,"153":1,"163":1,"174":1,"175":1,"189":1,"244":1,"247":1,"248":1,"251":1,"263":1,"307":1,"411":1,"544":1,"586":1,"612":1,"754":1,"1339":1,"1415":1,"1441":1,"1487":1,"1504":1,"1519":1,"1564":1,"1736":1,"1757":1,"1932":1,"1933":1,"1984":1,"2006":1,"2063":2,"2323":1,"2372":1,"2383":1,"2398":1,"2421":1,"2422":1,"2459":1,"2584":1,"2660":1,"2662":1,"2663":1,"2670":1,"2688":1,"2697":1,"2720":1,"2877":1,"2941":1}}],["mv",{"2":{"70":1,"724":1}}],["med",{"2":{"1680":22}}],["medium",{"0":{"1210":1},"2":{"1678":1,"1679":1,"1680":5,"2501":2}}],["media",{"0":{"1746":1,"2510":1},"2":{"73":1,"176":1,"266":1,"559":1,"589":1,"1746":1,"2050":1,"2159":3,"2510":13,"2515":9,"2548":1,"2882":1}}],["meh",{"2":{"1374":1,"2534":2,"2535":1,"2540":1,"2559":3,"2644":1}}],["mentioning",{"2":{"2729":1}}],["mentioned",{"2":{"228":1,"276":1,"754":1,"1343":1,"1744":1,"1840":1,"2060":1,"2303":1,"2483":1,"2498":1}}],["menu",{"0":{"1347":1},"2":{"685":1,"1347":1,"1758":2,"2266":1,"2324":1,"2509":3,"2515":3,"2615":1,"2917":2,"2919":1}}],["messing",{"2":{"1362":1}}],["messages",{"0":{"1324":1,"1917":1},"2":{"82":1,"160":1,"191":2,"199":2,"222":1,"432":5,"490":1,"613":1,"1206":3,"1321":1,"1322":1,"1323":1,"1324":1,"1913":1,"1917":1,"2007":1,"2029":2,"2411":10,"2427":1,"2633":1,"2812":2,"2939":1}}],["message",{"0":{"1330":1},"2":{"49":1,"93":1,"149":1,"236":1,"399":1,"400":1,"401":1,"405":1,"450":1,"451":1,"452":1,"453":1,"458":1,"459":1,"467":1,"602":1,"611":2,"1329":2,"1589":1,"1942":1,"2605":1,"2621":1,"2627":1,"2633":1,"2719":1,"2748":3,"2750":1}}],["mesh",{"2":{"617":1}}],["meck",{"2":{"253":2}}],["mechanics",{"2":{"2303":1}}],["mechanical",{"0":{"1351":1,"2469":1},"1":{"2470":1,"2471":1,"2472":1,"2473":1,"2474":1},"2":{"559":1,"674":1,"1332":1,"1351":2,"1406":1,"2462":1,"2470":1,"2572":1}}],["mechanism",{"2":{"160":1,"620":1,"626":1,"1674":1,"2568":1,"2693":1,"2734":1}}],["mechanisms",{"2":{"152":1,"663":1,"2569":1,"2734":1}}],["mechmerlin",{"2":{"427":2}}],["mechmini",{"2":{"143":4}}],["mechwild",{"2":{"211":1,"236":1,"266":2}}],["mechkeys",{"0":{"256":1},"1":{"257":1,"258":1,"259":1,"260":1},"2":{"143":5,"149":2,"266":1}}],["mechloving",{"2":{"134":1}}],["mechlovin9",{"2":{"102":3,"114":1,"211":1}}],["mechlovin",{"2":{"102":3,"134":1,"191":1,"211":9,"222":1,"249":1,"266":2,"308":1}}],["meant",{"2":{"1455":1,"2675":1,"2778":1}}],["meantime",{"2":{"397":1}}],["mean",{"0":{"619":1},"2":{"263":1,"607":1,"1353":1,"2551":1,"2719":1,"2721":1}}],["means",{"2":{"251":1,"263":1,"380":1,"393":1,"408":1,"453":1,"467":1,"559":1,"611":1,"619":1,"627":1,"670":1,"716":1,"1365":1,"1375":1,"1395":1,"1451":2,"1479":1,"1485":1,"1551":1,"1588":1,"1656":1,"1751":1,"1806":1,"1928":1,"1958":1,"2164":1,"2258":1,"2287":1,"2288":1,"2303":1,"2310":4,"2318":1,"2402":1,"2410":2,"2419":1,"2420":1,"2459":1,"2467":2,"2609":1,"2621":1,"2688":1,"2724":1,"2727":1,"2740":1,"2754":1,"2778":1,"2839":1,"2844":1,"2879":1,"2903":1}}],["meaningful",{"2":{"2724":1}}],["meaning",{"2":{"245":1,"769":1,"794":1,"1294":1,"1377":1,"1406":1,"1417":1,"1519":1,"1641":1,"1913":1,"1958":1,"2160":1,"2420":1,"2459":1,"2560":1,"2748":1}}],["measure",{"2":{"687":1,"2006":1}}],["measured",{"2":{"214":1,"1407":1,"1481":1,"1756":1,"2302":1,"2750":1}}],["measurement",{"2":{"199":1,"2372":1,"2669":1,"2750":1}}],["merchantability",{"2":{"1438":1,"2725":1}}],["mercutio",{"2":{"211":1,"317":1}}],["merits",{"2":{"1340":1}}],["meridian",{"2":{"211":1}}],["merely",{"2":{"555":1,"2286":1}}],["merges",{"2":{"279":1,"393":1,"396":1,"400":2,"401":1,"402":1,"406":3}}],["merged",{"2":{"114":1,"134":1,"396":4,"397":2,"399":1,"400":1,"401":1,"405":2,"406":4,"408":1,"456":1,"611":1,"2567":2,"2719":1,"2721":2,"2722":1,"2724":1}}],["merge",{"0":{"399":1,"400":1,"401":1,"402":1,"403":1,"404":1,"2626":1},"1":{"405":1,"406":1,"2627":1},"2":{"0":1,"1":1,"75":1,"114":2,"158":1,"176":1,"191":1,"199":2,"201":1,"211":1,"222":2,"275":1,"276":1,"328":1,"338":3,"393":1,"396":1,"397":3,"401":1,"402":1,"403":2,"405":1,"406":17,"424":2,"545":1,"594":1,"1338":1,"1627":1,"2014":2,"2569":2,"2570":1,"2571":1,"2625":1,"2626":1,"2627":6,"2631":1,"2719":4,"2721":1,"2722":1,"2723":1,"2724":1,"2897":1}}],["merging",{"0":{"424":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"73":1,"191":1,"424":1,"2627":1,"2719":2}}],["metrics",{"2":{"2047":1,"2895":1}}],["met",{"2":{"1664":1}}],["metal",{"2":{"2420":1,"2732":1}}],["metaclasses",{"2":{"546":1}}],["metadata",{"0":{"578":1,"2845":1},"2":{"188":1,"191":1,"266":1,"361":2,"373":3,"553":1,"576":2,"578":1,"2652":1,"2844":1}}],["meticulously",{"2":{"201":1}}],["methods=",{"0":{"363":1,"364":1,"365":1,"366":1}}],["methods",{"2":{"140":1,"489":2,"1312":1,"1346":1,"1406":2,"1410":1,"1588":1,"1790":1,"1797":1,"1844":2,"2066":2,"2270":1,"2375":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":2,"2391":1,"2393":2,"2395":2,"2397":2,"2418":1,"2573":1,"2667":1,"2734":1}}],["method",{"0":{"1410":1},"2":{"49":1,"169":1,"184":1,"236":1,"285":1,"293":1,"305":1,"314":1,"365":1,"366":1,"527":1,"567":1,"1406":1,"1588":2,"1633":1,"1844":1,"2066":1,"2254":1,"2261":1,"2266":2,"2284":1,"2318":1,"2323":1,"2324":2,"2375":1,"2468":1,"2778":1,"2784":1,"2811":1}}],["me",{"0":{"619":1},"2":{"169":2,"184":2,"199":1,"559":1,"607":1,"1349":1,"1413":1,"2312":1,"2572":1,"2577":1,"2591":1}}],["mem",{"2":{"2750":9}}],["memset",{"2":{"2052":2}}],["member",{"2":{"408":1,"1751":1,"1753":1,"1754":1,"2724":1}}],["members",{"0":{"734":1,"805":1,"831":1,"863":1,"893":1,"928":1,"962":1,"996":1,"1030":1,"1064":1,"1098":1,"1132":1,"1166":1,"1219":1,"1645":1,"1775":1,"1777":1},"2":{"312":1,"1751":2,"2470":1,"2567":1,"2635":1}}],["memory",{"0":{"323":1,"1454":1,"2186":1},"2":{"160":1,"236":1,"308":1,"328":1,"617":1,"746":2,"747":1,"749":1,"1345":1,"1362":1,"1410":1,"1413":1,"1422":2,"1484":1,"1519":1,"1520":1,"1603":2,"1613":1,"1656":1,"1845":1,"1946":3,"1947":5,"1956":1,"2068":1,"2290":1,"2376":1,"2475":1,"2495":2,"2496":1,"2501":1,"2516":1,"2608":3,"2698":3,"2727":2,"2734":1,"2745":1,"2749":1,"2750":2,"2942":3}}],["memcmp",{"2":{"114":1}}],["meletrix",{"2":{"2567":1}}],["melt",{"2":{"2420":1,"2422":1}}],["melting",{"2":{"2420":1}}],["melodies",{"2":{"222":1}}],["melody96",{"2":{"159":2,"160":1,"226":2,"236":1}}],["melgeek",{"2":{"134":1,"253":10}}],["meishi",{"2":{"143":2}}],["meishi2",{"2":{"143":2}}],["meira",{"2":{"143":2}}],["meetup",{"2":{"134":1}}],["mtb60",{"2":{"211":1}}],["mtbkeys",{"2":{"211":1}}],["mt980",{"2":{"159":2}}],["mt84",{"2":{"159":2,"277":1}}],["mt64rgb",{"2":{"159":2,"211":1}}],["mt40",{"2":{"159":2}}],["mt",{"2":{"38":1,"159":6,"160":1,"277":1,"297":1,"562":2,"1684":1,"1765":2,"2311":1,"2535":1,"2559":2,"2560":1,"2562":2,"2911":1}}],["mkand",{"2":{"2937":1}}],["mkmakeifeq",{"2":{"2440":1}}],["mkmake",{"2":{"2440":1}}],["mkdir",{"2":{"1628":1,"2598":1}}],["mk64fx512",{"2":{"516":1}}],["mk66fx1m0",{"2":{"133":1,"134":1,"516":1}}],["mk66f18",{"2":{"81":1,"93":2,"133":1,"134":1}}],["mk20dx256",{"2":{"516":1}}],["mk20dx128",{"2":{"516":1}}],["mkl26z64",{"2":{"516":1}}],["mk0",{"2":{"199":1}}],["mkiirgb",{"2":{"217":1}}],["mkii",{"2":{"114":1}}],["mk",{"0":{"569":1,"1435":1,"1632":2,"1672":1,"2369":1,"2411":1,"2440":1,"2882":1},"1":{"570":1,"571":1,"572":1,"573":1,"1436":1},"2":{"32":1,"49":1,"50":1,"70":29,"74":1,"76":1,"87":1,"94":1,"103":1,"114":2,"118":2,"119":1,"133":5,"134":8,"141":1,"149":2,"172":1,"191":3,"199":1,"202":1,"211":5,"235":1,"262":1,"266":11,"293":1,"305":1,"308":3,"314":1,"338":1,"342":1,"431":1,"553":2,"556":1,"565":1,"621":1,"622":1,"623":1,"653":1,"663":3,"664":1,"665":1,"667":2,"670":2,"671":5,"688":1,"700":1,"722":1,"723":1,"727":1,"743":1,"750":1,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1192":1,"1195":2,"1198":2,"1212":1,"1243":1,"1264":1,"1281":1,"1286":1,"1319":1,"1327":1,"1366":1,"1388":1,"1396":1,"1410":1,"1411":2,"1427":1,"1428":2,"1434":2,"1435":7,"1436":1,"1442":2,"1443":2,"1467":1,"1471":1,"1474":1,"1475":1,"1477":1,"1494":2,"1520":1,"1536":1,"1548":1,"1553":1,"1583":1,"1588":1,"1589":1,"1596":1,"1616":1,"1617":1,"1620":1,"1621":1,"1633":1,"1640":1,"1655":1,"1659":1,"1661":1,"1672":1,"1692":1,"1733":1,"1738":1,"1760":1,"1767":1,"1800":1,"1839":1,"1844":2,"1913":1,"1926":1,"1930":1,"1931":22,"1932":2,"1938":1,"1951":1,"1956":1,"1959":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1996":1,"1998":1,"1999":1,"2000":1,"2001":1,"2005":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":2,"2015":1,"2048":1,"2059":1,"2066":2,"2157":1,"2174":1,"2179":2,"2210":1,"2213":1,"2243":1,"2251":1,"2261":1,"2277":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2295":1,"2302":1,"2305":1,"2313":1,"2319":1,"2322":2,"2323":1,"2367":1,"2369":2,"2371":1,"2375":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2391":1,"2393":2,"2395":2,"2397":2,"2407":2,"2408":1,"2410":1,"2412":4,"2436":1,"2440":22,"2490":1,"2598":1,"2601":1,"2667":1,"2684":1,"2695":1,"2696":1,"2717":1,"2719":2,"2721":4,"2746":2,"2749":11,"2750":2,"2752":1,"2844":1,"2882":1,"2884":1,"2901":2,"2925":1,"2933":1,"2937":6,"2939":1,"2941":1}}],["mib",{"2":{"2403":2}}],["mimic",{"2":{"2310":1,"2312":1}}],["mi",{"2":{"1913":2,"1919":174,"1920":2,"2411":2,"2532":174}}],["mikrocontroller",{"2":{"1364":1}}],["mike1808",{"2":{"114":1}}],["might",{"2":{"391":1,"397":1,"421":1,"427":1,"559":1,"683":2,"746":2,"763":1,"1362":2,"1406":2,"1407":6,"1416":2,"1421":1,"1434":1,"1450":1,"1523":1,"1584":1,"1589":1,"1609":1,"1613":1,"1917":1,"2000":1,"2006":1,"2287":1,"2302":1,"2406":1,"2408":1,"2427":1,"2438":1,"2655":1,"2703":1,"2936":1,"2942":1}}],["migrator",{"2":{"65":1}}],["migrations",{"2":{"77":1,"134":1,"199":1,"266":3}}],["migration",{"0":{"38":1,"69":1,"77":1,"265":1,"275":1},"2":{"70":1,"77":1,"113":1,"114":1,"134":2,"149":1,"188":1,"191":1,"199":3,"201":1,"213":1,"238":1,"265":1}}],["migrating",{"0":{"3":1,"7":1,"15":1,"30":1,"36":1},"1":{"31":1},"2":{"167":1,"232":1,"2721":1}}],["migrated",{"2":{"118":1,"126":1,"128":1,"140":1,"209":1,"262":1,"2715":1,"2721":2}}],["migrate",{"0":{"31":1,"34":1,"441":1},"2":{"75":1,"113":1,"114":4,"133":2,"134":6,"149":3,"176":1,"199":7,"211":1,"228":1,"236":9,"249":27,"266":66,"277":11,"294":4,"304":1,"307":1,"308":1,"317":4,"328":25,"332":1,"333":1,"441":1,"586":1}}],["mixture",{"2":{"2284":1}}],["mixing",{"2":{"2254":1}}],["mix",{"2":{"1285":1,"1413":1,"1417":1,"2560":1}}],["mixed",{"0":{"2739":1},"2":{"338":1,"420":1,"520":1,"617":1,"1493":1,"2743":1}}],["mixup",{"2":{"199":1}}],["mit",{"2":{"2741":1}}],["mitchsplit",{"0":{"260":1},"2":{"256":1}}],["mitigates",{"2":{"1349":1}}],["mitigated",{"2":{"263":1,"2560":1}}],["mitigate",{"0":{"312":1},"2":{"211":1,"317":1,"1406":2,"2896":1}}],["mitigation",{"2":{"191":1,"312":1}}],["miiiw",{"2":{"253":2,"266":1}}],["mice",{"2":{"1988":1,"2451":1,"2470":1}}],["michi",{"0":{"1391":1},"2":{"199":1,"1386":1,"1388":3,"2888":1}}],["micdrop",{"2":{"163":1}}],["microcontrol",{"2":{"2823":1}}],["microcontroller>",{"2":{"428":1}}],["microcontroller",{"0":{"2417":1},"2":{"81":1,"428":2,"431":1,"510":2,"519":1,"573":1,"698":1,"717":1,"757":1,"759":1,"765":1,"1554":1,"1564":1,"1766":1,"2266":1,"2414":1,"2423":3,"2426":1,"2459":1,"2475":2,"2487":1,"2495":1,"2496":1,"2707":1,"2721":1,"2732":1,"2846":2,"2894":1}}],["microcontrollers",{"0":{"510":1},"1":{"511":1,"512":1,"513":1,"514":1,"515":1,"516":1,"517":1,"518":1,"519":1},"2":{"69":1,"215":2,"263":1,"519":2,"1293":1,"1937":1,"2383":1,"2389":1,"2475":2,"2707":3,"2729":1,"2925":1}}],["microchip",{"2":{"746":3,"1280":1,"2178":1,"2491":1}}],["microsoft",{"2":{"1347":1,"2667":1}}],["micros",{"2":{"566":1,"682":1,"2259":1,"2260":1,"2479":1,"2693":1,"2699":1,"2828":1}}],["microseconds",{"2":{"559":1,"1282":1,"2865":1}}],["microdox",{"2":{"176":2}}],["micronucleus",{"2":{"149":1}}],["micro",{"0":{"271":1,"1388":1,"1391":1,"2477":1,"2479":1,"2695":1},"1":{"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"2478":1,"2480":1},"2":{"77":1,"86":2,"93":1,"163":1,"172":1,"176":1,"189":1,"271":2,"322":2,"511":1,"686":4,"1314":1,"1368":2,"1388":2,"1393":1,"1395":1,"1397":1,"1398":1,"1403":1,"1930":1,"2254":1,"2256":1,"2266":2,"2272":1,"2379":1,"2380":1,"2414":1,"2416":1,"2417":3,"2477":2,"2478":3,"2479":2,"2480":3,"2492":4,"2495":5,"2496":1,"2582":1,"2672":1,"2681":1,"2683":1,"2684":6,"2693":1,"2695":2,"2696":1,"2707":1,"2888":3}}],["mio",{"2":{"143":2}}],["mirrored",{"2":{"2295":1}}],["mirrors",{"2":{"568":1,"2269":1,"2312":3,"2583":1,"2721":1}}],["mirroring",{"2":{"114":1,"126":1,"2721":1}}],["mirror",{"2":{"76":1,"114":1,"149":1,"568":1,"1846":1,"2069":1,"2269":1,"2873":10}}],["mint",{"2":{"2619":1}}],["minted",{"2":{"2590":1}}],["minus",{"2":{"1686":1,"2505":1,"2511":1,"2515":2}}],["minuted",{"2":{"1955":1}}],["minute",{"0":{"2371":1},"1":{"2372":1,"2373":1,"2374":1},"2":{"1481":1,"2371":1,"2872":1}}],["minutes",{"2":{"1308":1,"2421":1}}],["mine",{"2":{"1441":1,"2403":1}}],["mind",{"2":{"520":1,"546":1,"608":1,"613":1,"617":1,"676":1,"1377":1,"1412":1,"1455":1,"1585":1,"1660":1,"1946":1,"2252":1,"2282":1,"2302":1,"2416":1,"2421":1,"2423":1,"2427":1,"2445":1,"2446":1,"2448":1,"2459":1,"2751":1,"2895":1}}],["mins",{"2":{"369":1,"587":2,"1587":2,"1594":1,"2505":1,"2515":1,"2553":1}}],["mino",{"2":{"222":1,"241":6}}],["minor",{"2":{"49":1,"51":1,"64":1,"86":1,"114":1,"149":1,"176":1,"191":1,"222":2,"294":1,"328":1,"333":1,"1487":1}}],["min",{"0":{"1906":1,"1909":1,"2150":1,"2153":1},"2":{"211":1,"308":1,"1285":1,"1487":2,"1521":1,"1633":1,"1675":3,"1768":3,"1777":1,"1844":4,"1849":1,"1907":1,"1910":1,"2000":2,"2066":4,"2072":1,"2073":6,"2074":3,"2151":1,"2154":1}}],["mingw64",{"2":{"2615":1,"2662":1,"2667":3}}],["mingw",{"2":{"158":1,"2499":2,"2615":2}}],["minizone",{"2":{"249":1}}],["miniaxe",{"2":{"241":2,"249":1}}],["minitkl",{"2":{"222":1}}],["minitomic",{"2":{"57":2}}],["mini36",{"2":{"191":1}}],["mini42",{"2":{"191":1}}],["minidox",{"2":{"143":2,"149":1,"217":1,"236":1,"277":1}}],["mini",{"2":{"134":1,"143":4,"149":1,"211":3,"1673":1,"2417":1}}],["minimize",{"2":{"613":1,"2713":1}}],["minimise",{"2":{"103":1,"308":1,"749":1,"751":1,"2748":1,"2894":1}}],["minim",{"2":{"143":2}}],["minimally",{"2":{"2270":1,"2721":1}}],["minimal",{"2":{"128":1,"160":1,"176":1,"215":1,"328":1,"2303":1,"2444":1,"2749":1,"2882":1,"2895":1,"2896":1}}],["minimum",{"2":{"70":1,"134":1,"222":1,"285":1,"716":2,"717":1,"745":1,"1630":1,"1633":1,"1770":1,"1777":1,"2003":5,"2007":2,"2179":1,"2201":6,"2372":1,"2568":1,"2702":1,"2721":2,"2767":1,"2937":1}}],["midpoint",{"2":{"1777":1}}],["midway",{"2":{"631":1}}],["midway60",{"2":{"211":1}}],["mid",{"2":{"562":1,"1777":1,"1785":1}}],["middle",{"2":{"50":1,"222":1,"387":1,"760":1,"1452":1,"1642":1,"1990":2,"2932":1}}],["mididevice",{"2":{"1918":1}}],["midi",{"0":{"1488":1,"1912":1,"1915":1,"1916":1,"1918":1,"1922":1,"2532":1},"1":{"1913":1,"1914":1,"1915":1,"1916":1,"1917":2,"1918":2,"1919":1,"1920":1,"1921":1,"1922":1,"1923":1},"2":{"50":1,"63":1,"70":1,"75":1,"111":1,"114":1,"188":1,"191":2,"199":3,"222":1,"231":3,"249":1,"266":1,"572":2,"573":1,"649":1,"1480":4,"1488":1,"1913":4,"1914":1,"1915":2,"1916":2,"1917":3,"1918":15,"1919":147,"1920":1,"1922":2,"1923":9,"2242":1,"2287":1,"2411":3,"2470":1,"2532":148,"2721":2,"2933":1}}],["millimeters",{"2":{"2002":2,"2006":1}}],["millivolts",{"2":{"724":1,"2851":1}}],["millisecond",{"2":{"654":1,"1407":1,"1804":1}}],["milliseconds",{"2":{"25":1,"119":1,"195":1,"559":2,"562":2,"563":1,"654":1,"655":2,"765":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"799":1,"825":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1205":1,"1213":1,"1288":1,"1407":1,"1409":1,"1410":7,"1448":1,"1452":1,"1459":2,"1537":1,"1588":1,"1592":1,"1762":1,"1803":1,"1846":2,"1928":1,"1929":1,"1930":2,"1933":1,"1934":1,"1951":1,"1953":1,"1954":1,"2000":1,"2002":1,"2006":1,"2012":1,"2064":1,"2069":2,"2185":1,"2187":6,"2191":1,"2215":1,"2224":1,"2228":1,"2268":3,"2302":1,"2303":1,"2320":1,"2379":1,"2536":1,"2747":2,"2757":1,"2769":1,"2847":2,"2851":1,"2854":1,"2855":1,"2863":1,"2864":2,"2865":1,"2867":1,"2871":2,"2873":3,"2875":1,"2876":1,"2899":1,"2901":1,"2910":1,"2911":2}}],["mild",{"2":{"211":1}}],["milc",{"2":{"65":2,"95":1,"487":3,"488":1}}],["milk",{"2":{"37":2}}],["misfires",{"2":{"1602":1,"1604":1,"1608":1,"1609":1}}],["miso",{"2":{"1244":2,"1245":5,"2476":1,"2478":1,"2480":2,"2482":1,"2484":2,"2486":2,"2488":2,"2676":1,"2695":1}}],["misterknife",{"2":{"211":3}}],["mistaken",{"2":{"2258":1}}],["mistakenly",{"2":{"243":1,"331":1}}],["mistake",{"2":{"92":1}}],["mishandling",{"2":{"199":1}}],["mis",{"2":{"199":1,"211":1}}],["mismatch",{"2":{"191":1,"405":1}}],["mismatched",{"2":{"149":1}}],["miss",{"2":{"602":1,"2557":1,"2560":1}}],["mission",{"2":{"199":2,"2510":2,"2515":2}}],["missing",{"2":{"28":1,"73":1,"92":1,"93":1,"134":4,"149":4,"160":1,"176":2,"182":1,"191":3,"199":2,"201":1,"211":4,"236":2,"249":1,"294":1,"328":1,"333":1,"2433":1,"2578":1,"2719":1,"2757":1}}],["missed",{"2":{"149":1,"160":1,"236":1}}],["miscellaneous",{"0":{"1360":1},"1":{"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1368":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1},"2":{"211":1,"222":1,"266":3,"308":1,"317":1}}],["misc",{"2":{"149":1,"249":2,"266":3,"277":1,"2159":1}}],["misconfigured",{"2":{"28":1}}],["misplaced",{"2":{"134":1}}],["mocks",{"2":{"2935":1}}],["mock",{"0":{"2935":1},"2":{"2935":1}}],["mocking",{"2":{"552":1,"2937":2}}],["moff",{"2":{"2297":1,"2544":1}}],["mood",{"2":{"2183":1,"2184":2,"2187":1,"2210":1,"2870":1,"2887":1}}],["moon",{"2":{"317":1}}],["moonlander",{"2":{"191":1,"199":1,"241":2,"249":1,"277":2}}],["mounting",{"2":{"2423":1}}],["mount",{"2":{"2414":1,"2417":1}}],["mounted",{"2":{"2178":1,"2682":1}}],["mousing",{"2":{"2028":1}}],["mousereport",{"2":{"2021":6}}],["mouse=true",{"2":{"1319":1}}],["mousekey",{"2":{"63":1,"70":1,"75":1,"111":1,"114":1,"188":1,"191":2,"209":1,"222":1,"236":1,"564":5,"572":1,"573":2,"1362":1,"1929":16,"1930":12,"1933":13,"1934":7,"2210":1,"2411":1,"2882":1}}],["mousekeysaccel",{"2":{"1929":1}}],["mousekeys",{"0":{"2825":1},"2":{"48":1,"160":1,"176":1,"191":1,"562":1,"1996":1,"2825":1}}],["mouse",{"0":{"246":1,"316":1,"564":1,"1364":1,"1924":1,"1925":1,"1926":1,"1927":1,"1928":1,"1934":1,"1935":1,"1979":1,"1988":1,"1991":1,"1992":1,"1993":1,"2021":1,"2023":1,"2024":1,"2030":1,"2035":1,"2036":1,"2037":1,"2039":1,"2042":1,"2044":1,"2046":1,"2533":1,"2866":1},"1":{"1925":1,"1926":2,"1927":2,"1928":1,"1929":2,"1930":2,"1931":2,"1932":2,"1933":2,"1934":2,"1935":1,"1980":1,"1981":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1,"2022":1,"2023":1,"2024":1,"2025":1,"2026":1,"2027":1,"2028":1,"2031":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":2,"2037":3,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1},"2":{"48":1,"74":3,"100":1,"112":7,"114":5,"133":1,"134":1,"149":1,"160":3,"175":5,"176":4,"190":6,"191":7,"211":2,"222":3,"231":1,"236":2,"246":3,"249":1,"266":2,"277":3,"285":2,"291":2,"294":1,"308":1,"316":2,"317":2,"320":1,"328":2,"559":1,"562":1,"572":1,"573":4,"597":1,"1512":1,"1619":2,"1639":2,"1924":2,"1925":3,"1926":1,"1927":39,"1928":1,"1930":5,"1931":2,"1933":1,"1934":4,"1935":3,"1979":1,"1982":1,"1983":1,"1984":1,"1985":1,"1986":1,"1988":18,"1989":5,"1990":12,"1991":1,"1992":4,"1993":3,"1994":5,"1995":4,"2003":6,"2014":8,"2015":4,"2016":3,"2017":5,"2019":14,"2020":9,"2021":13,"2023":4,"2024":12,"2025":17,"2026":1,"2027":10,"2028":3,"2030":7,"2031":7,"2032":15,"2033":1,"2034":9,"2035":5,"2036":4,"2037":3,"2038":1,"2039":33,"2040":11,"2042":10,"2043":16,"2044":10,"2045":8,"2046":10,"2050":1,"2159":4,"2287":1,"2291":1,"2367":1,"2533":39,"2579":1,"2825":1,"2866":3,"2868":2,"2875":2,"2919":1,"2928":1}}],["motivations",{"2":{"2895":1}}],["motion",{"2":{"190":1,"191":1,"1933":1,"2000":1,"2014":3,"2016":7,"2017":1,"2030":1}}],["motions",{"2":{"175":1}}],["motors",{"2":{"1677":1,"1678":1}}],["motor",{"0":{"1677":1},"1":{"1678":1,"1679":1},"2":{"1673":1,"1677":1,"1678":2,"1679":2}}],["moky88",{"2":{"294":1}}],["moky",{"2":{"294":1}}],["momokai",{"2":{"266":1}}],["moment",{"2":{"211":2,"1756":5,"2643":1,"2646":1,"2788":1,"2914":1,"2932":1}}],["momentarily",{"2":{"73":1,"1416":4,"1932":1,"2314":2,"2528":2,"2901":1}}],["momentary",{"0":{"3":1,"2312":1},"2":{"199":1,"1350":1,"1416":1,"1606":5,"1684":2,"1736":1,"1749":3,"1759":2,"1761":1,"1931":8,"2297":4,"2313":1,"2544":4}}],["mojo75",{"2":{"253":2}}],["mojo68",{"2":{"253":2}}],["morgan65",{"2":{"211":2}}],["moreover",{"2":{"2254":1}}],["more",{"0":{"1737":1,"2410":1},"1":{"2411":1,"2412":1},"2":{"2":1,"6":2,"8":1,"10":2,"14":1,"16":1,"24":1,"46":1,"49":1,"76":1,"82":1,"93":1,"99":2,"107":1,"109":1,"111":1,"112":1,"114":6,"118":1,"133":2,"134":4,"149":6,"152":1,"153":2,"160":1,"166":1,"172":1,"174":1,"176":4,"179":1,"182":1,"190":3,"191":4,"194":2,"195":1,"196":1,"198":1,"199":6,"206":1,"211":6,"213":1,"222":2,"224":1,"228":2,"229":1,"231":1,"232":1,"236":3,"245":1,"247":1,"248":1,"249":1,"251":1,"265":1,"266":1,"288":2,"289":1,"294":1,"297":1,"298":1,"304":1,"306":1,"308":3,"315":1,"320":2,"331":1,"374":1,"390":1,"397":1,"411":2,"414":1,"417":1,"419":1,"428":1,"464":1,"465":1,"466":1,"475":1,"503":1,"520":1,"522":1,"529":1,"537":2,"546":1,"548":1,"549":1,"553":1,"559":2,"563":1,"568":2,"572":2,"573":1,"597":1,"611":1,"613":1,"623":1,"624":3,"669":1,"674":2,"675":1,"683":2,"685":1,"687":2,"695":1,"696":1,"717":1,"749":1,"752":1,"763":1,"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1189":1,"1196":1,"1244":1,"1285":1,"1295":1,"1309":1,"1315":1,"1327":2,"1342":1,"1344":1,"1365":1,"1373":1,"1374":1,"1375":2,"1376":1,"1394":1,"1395":1,"1400":1,"1407":1,"1416":1,"1419":1,"1420":1,"1421":3,"1434":1,"1438":1,"1440":1,"1448":2,"1450":1,"1470":1,"1471":1,"1485":1,"1486":2,"1492":1,"1495":1,"1497":2,"1504":1,"1511":1,"1532":1,"1538":1,"1564":1,"1586":1,"1596":1,"1599":1,"1603":1,"1604":1,"1608":1,"1613":1,"1622":1,"1630":1,"1656":1,"1664":1,"1691":1,"1736":1,"1738":1,"1743":2,"1747":1,"1751":1,"1790":1,"1804":1,"1806":1,"1840":2,"1844":1,"1913":1,"1917":1,"1928":1,"1929":1,"1934":1,"1947":1,"1979":1,"1997":1,"2017":1,"2025":1,"2030":1,"2038":1,"2046":1,"2047":1,"2060":2,"2066":1,"2069":1,"2073":1,"2074":1,"2156":1,"2161":1,"2179":1,"2191":1,"2207":1,"2286":1,"2289":1,"2292":1,"2293":1,"2302":2,"2303":1,"2310":2,"2319":1,"2324":1,"2367":1,"2372":2,"2375":1,"2406":1,"2407":2,"2410":4,"2411":4,"2416":2,"2417":2,"2418":2,"2420":1,"2421":1,"2422":1,"2430":1,"2437":1,"2439":1,"2440":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1,"2459":2,"2461":1,"2471":1,"2483":1,"2492":1,"2495":1,"2496":1,"2502":1,"2514":1,"2552":2,"2554":3,"2555":1,"2559":2,"2603":1,"2605":1,"2609":1,"2610":1,"2615":1,"2631":1,"2633":1,"2635":1,"2643":1,"2649":1,"2664":1,"2667":1,"2697":1,"2705":1,"2706":1,"2707":4,"2716":1,"2720":2,"2722":1,"2723":1,"2724":1,"2725":1,"2747":3,"2750":2,"2751":1,"2785":1,"2787":1,"2788":2,"2834":1,"2837":1,"2844":3,"2877":1,"2887":1,"2899":2,"2901":1,"2908":1,"2909":2,"2910":1,"2917":1,"2918":1,"2919":1,"2924":1,"2938":1,"2942":1}}],["mobile",{"2":{"149":1,"160":1}}],["monsgeek",{"2":{"2390":1}}],["monstargear",{"2":{"211":1}}],["mon",{"2":{"2297":1,"2544":1}}],["monitor",{"2":{"1933":1}}],["monitors",{"2":{"1641":1}}],["month",{"2":{"393":1,"2724":1}}],["months",{"2":{"251":1,"548":1,"2896":1}}],["montex",{"2":{"143":2,"149":1}}],["mono1bpp",{"2":{"2749":1}}],["mono16",{"2":{"2748":4}}],["mono2",{"2":{"2748":3,"2749":2}}],["mono256",{"2":{"2748":3}}],["mono4",{"2":{"2748":4}}],["monochrome",{"2":{"2746":6,"2749":1,"2750":3}}],["monolithic",{"2":{"2727":2}}],["mono",{"2":{"249":2,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1}}],["monokei",{"2":{"241":3,"249":1}}],["monksoffunk",{"2":{"149":1}}],["mona",{"2":{"102":3,"197":6}}],["movable",{"2":{"1766":1}}],["movements",{"2":{"1444":1,"1928":1,"1929":4,"1930":15,"1931":4,"1932":1,"1933":3,"1934":1,"2411":1}}],["movement",{"0":{"1995":1},"2":{"48":1,"74":1,"175":2,"246":1,"249":1,"328":1,"1928":5,"1929":4,"1930":5,"1931":5,"1933":2,"1934":1,"1982":1,"1988":1,"1995":1,"2000":5,"2021":3,"2024":2,"2025":1,"2034":1,"2045":1}}],["moved",{"2":{"43":1,"50":1,"56":1,"57":1,"67":1,"72":1,"86":1,"102":1,"114":1,"122":1,"143":1,"149":1,"159":1,"168":1,"181":1,"197":1,"198":1,"201":2,"204":1,"222":1,"335":1,"659":1,"1379":1,"1395":1,"1995":1,"2430":1,"2641":1,"2642":1,"2721":1,"2881":1}}],["moves",{"0":{"37":1},"2":{"393":1,"1769":1,"1928":2,"1948":2,"2180":1,"2283":2,"2302":1,"2553":1,"2721":1}}],["move",{"0":{"323":1},"2":{"21":1,"36":1,"37":1,"50":1,"72":1,"75":1,"94":1,"100":2,"113":6,"114":14,"133":7,"134":9,"149":58,"156":1,"160":11,"167":1,"176":6,"188":1,"191":7,"199":11,"211":38,"222":16,"236":6,"241":1,"249":12,"253":1,"255":2,"266":2,"270":1,"277":3,"281":1,"285":1,"294":2,"308":1,"328":1,"333":1,"445":1,"1422":1,"1425":1,"1486":1,"1669":1,"1701":1,"1705":1,"1706":2,"1707":1,"1729":1,"1731":1,"1867":1,"1868":1,"1869":1,"1870":1,"1893":1,"1894":1,"1895":1,"1896":1,"1919":2,"1924":1,"1928":1,"1929":1,"1930":3,"1933":4,"1934":2,"2093":1,"2094":1,"2095":1,"2096":1,"2131":1,"2132":1,"2133":1,"2134":1,"2219":1,"2302":1,"2370":2,"2421":1,"2424":1,"2447":1,"2521":2,"2532":2,"2581":1,"2605":1,"2623":1,"2721":2,"2788":1}}],["moving",{"0":{"16":1},"2":{"36":1,"37":1,"43":1,"111":1,"113":1,"191":1,"275":1,"294":1,"360":1,"520":1,"1417":1,"1805":1,"1932":1,"1947":1,"1948":2,"1990":1,"1996":1,"2008":1,"2016":1,"2024":1,"2063":3,"2283":2,"2418":1,"2421":1,"2560":1,"2723":1,"2887":1}}],["mosy",{"2":{"2416":1}}],["mosi",{"2":{"1244":2,"1245":5,"1291":1,"1296":2,"2476":1,"2478":1,"2480":2,"2482":1,"2484":2,"2486":2,"2488":2,"2676":1,"2695":1,"2749":2}}],["most",{"0":{"2881":1},"1":{"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"70":1,"118":1,"124":1,"131":1,"158":1,"182":2,"194":1,"214":1,"215":2,"221":1,"233":1,"234":1,"249":2,"251":1,"263":2,"364":1,"392":1,"489":1,"490":1,"491":1,"497":1,"512":1,"520":1,"521":1,"522":1,"555":1,"556":1,"559":2,"586":1,"612":1,"617":1,"626":1,"631":3,"632":1,"649":1,"667":1,"670":1,"673":2,"700":1,"751":1,"762":1,"1243":1,"1264":1,"1281":1,"1284":1,"1315":1,"1316":1,"1340":1,"1347":1,"1351":1,"1353":1,"1415":2,"1418":1,"1419":1,"1421":1,"1427":1,"1450":1,"1451":1,"1466":1,"1471":1,"1478":1,"1522":2,"1526":1,"1548":1,"1551":1,"1552":1,"1666":1,"1675":1,"1679":1,"1768":1,"1805":1,"1806":1,"1928":1,"1933":1,"1989":1,"1999":1,"2006":2,"2017":1,"2042":1,"2194":1,"2254":1,"2258":1,"2274":1,"2284":1,"2285":1,"2289":1,"2290":2,"2322":2,"2323":1,"2403":1,"2410":2,"2411":1,"2420":1,"2451":1,"2472":1,"2475":1,"2476":1,"2498":1,"2546":1,"2547":1,"2567":1,"2573":1,"2576":2,"2621":4,"2702":2,"2707":1,"2721":1,"2749":1,"2783":1,"2799":1,"2802":1,"2810":1,"2819":1,"2841":1,"2879":1,"2882":2,"2884":1,"2888":1,"2894":1,"2902":1,"2927":2,"2934":1}}],["mostly",{"2":{"8":1,"199":1,"434":1,"1340":1,"2254":1,"2492":1,"2662":1}}],["mosfet",{"2":{"14":2,"1551":2,"1564":2,"1675":1}}],["modu",{"2":{"1919":1,"2532":1}}],["modulation",{"2":{"1547":1,"1913":1,"1919":6,"1920":1,"2532":6}}],["modular",{"2":{"16":1}}],["modules",{"0":{"288":1,"298":1,"1626":1},"1":{"1627":1,"1628":1,"1629":1,"1630":1,"1631":1,"1632":1,"1633":1,"1634":1,"1635":1,"1636":1,"1637":1,"1638":1},"2":{"93":1,"288":5,"294":1,"298":1,"308":4,"328":1,"333":1,"546":2,"746":1,"747":1,"1626":3,"1627":9,"1628":6,"1629":1,"1633":1,"1638":1,"1691":2,"1937":2,"2276":1,"2367":1,"2451":1}}],["module",{"0":{"1627":1,"1628":1,"1629":1,"1630":1,"1633":1,"1635":1,"1636":1},"1":{"1630":1,"1631":1,"1632":1,"1633":1,"1634":1,"1635":1,"1636":1,"1637":1,"1638":1},"2":{"6":1,"288":1,"298":1,"308":1,"485":1,"524":5,"527":1,"528":1,"537":2,"552":1,"625":12,"746":1,"747":1,"1356":1,"1627":3,"1628":8,"1629":1,"1630":11,"1633":2,"1635":1,"1636":1,"1637":2,"1638":22,"1691":1,"1979":3,"1980":1,"2012":2,"2276":1,"2748":1,"2749":1}}],["modd",{"2":{"1919":1,"2532":1}}],["modded",{"2":{"176":1,"1461":1,"2374":2}}],["modtaps",{"2":{"1375":1}}],["modifying",{"2":{"520":1,"548":2,"683":1,"1419":1,"1531":1,"2449":1,"2463":1,"2472":1}}],["modify",{"2":{"125":1,"185":1,"211":1,"221":1,"236":1,"548":1,"586":1,"765":2,"1245":2,"1266":1,"1375":1,"1438":1,"1451":1,"1481":1,"1642":1,"1796":1,"2019":2,"2020":2,"2024":1,"2025":1,"2179":1,"2187":1,"2189":1,"2293":1,"2463":1,"2583":1,"2721":1,"2725":1,"2728":1,"2734":1,"2824":1,"2898":1}}],["modifiable",{"2":{"1996":1}}],["modification",{"0":{"2208":1},"2":{"65":1,"546":1,"1353":1,"2063":1,"2178":1,"2942":2}}],["modifications",{"2":{"21":1,"338":3,"397":1,"522":1,"1346":1,"2405":1,"2667":2,"2704":1,"2719":1,"2722":1}}],["modifiers",{"0":{"1359":1,"1495":1,"1740":1,"1741":1,"1742":1,"1743":1,"1749":1,"1758":1,"2507":1,"2534":1},"1":{"1754":1,"1755":1,"1756":1},"2":{"99":1,"112":1,"160":1,"222":1,"560":1,"562":1,"673":1,"1359":3,"1375":15,"1378":2,"1416":2,"1417":5,"1455":1,"1457":1,"1467":1,"1495":3,"1511":1,"1512":1,"1596":1,"1611":3,"1735":1,"1736":4,"1740":3,"1742":1,"1746":1,"1751":7,"1752":4,"1754":5,"1755":1,"1757":1,"1843":1,"2074":1,"2164":1,"2252":1,"2557":1,"2559":1,"2560":2,"2562":1,"2643":2,"2873":1,"2914":1}}],["modifier",{"0":{"1349":1,"1350":1,"1374":1,"1375":1,"1604":1,"1799":1,"2824":1,"2827":1},"1":{"1376":1,"1377":1,"1378":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1},"2":{"74":1,"99":1,"194":2,"211":1,"231":4,"289":1,"320":5,"568":1,"1350":3,"1359":5,"1374":3,"1375":15,"1377":1,"1378":4,"1416":1,"1417":1,"1451":2,"1452":2,"1455":1,"1511":1,"1512":1,"1523":1,"1526":2,"1604":1,"1657":1,"1684":2,"1735":1,"1736":3,"1740":1,"1747":1,"1749":1,"1751":7,"1752":2,"1754":3,"1755":2,"1756":2,"1757":2,"1758":4,"1765":1,"1771":1,"1841":2,"1846":1,"2030":1,"2061":2,"2069":1,"2074":1,"2163":2,"2166":1,"2252":8,"2253":7,"2269":2,"2534":1,"2559":2,"2560":1,"2644":1,"2645":2,"2827":1,"2873":1,"2901":1,"2914":1,"2917":3,"2919":7}}],["modified",{"2":{"2":1,"8":1,"74":1,"149":1,"221":2,"520":1,"541":1,"1211":1,"1332":1,"1422":1,"1756":1,"1932":1,"2165":1,"2311":1,"2386":1,"2391":1,"2491":1,"2621":1,"2719":1,"2721":1,"2723":1,"2740":1,"2901":1,"2908":1,"2942":1}}],["modifies",{"2":{"0":1,"9":1,"19":1,"30":1,"33":1,"39":1,"52":1,"297":1,"312":1,"393":1,"2063":2,"2911":1,"2942":1}}],["moderate",{"2":{"2427":1}}],["modern",{"2":{"1197":1,"1347":1,"1351":1,"1587":1,"2322":1,"2411":1,"2418":1,"2425":1,"2429":1}}],["modernize",{"2":{"222":1,"236":2}}],["modernise",{"2":{"222":2}}],["modemmanager",{"2":{"1313":4}}],["mode=guest",{"2":{"674":1}}],["modelled",{"2":{"2270":1}}],["models",{"2":{"1410":1}}],["modelh",{"2":{"217":2,"308":1}}],["modelm101",{"2":{"207":2}}],["modelm",{"0":{"204":1},"2":{"149":1,"207":3}}],["model",{"2":{"125":1,"143":2,"149":1,"185":1,"204":2,"207":12,"217":1,"222":2,"2002":1,"2721":1,"2940":1}}],["model01",{"2":{"37":2}}],["modes",{"0":{"124":1,"2324":1,"2902":1},"1":{"2903":1,"2904":1,"2905":1,"2906":1,"2907":1,"2908":1,"2909":1},"2":{"114":1,"124":2,"134":1,"186":2,"235":1,"1202":1,"1484":2,"1489":1,"1843":1,"1928":2,"1979":1,"2006":1,"2063":2,"2181":2,"2183":1,"2184":2,"2187":2,"2271":1,"2320":2,"2324":6,"2325":2,"2517":1,"2537":2,"2545":2,"2773":1,"2902":2,"2903":1}}],["mode",{"0":{"186":1,"486":1,"1248":1,"1314":1,"1484":1,"1682":1,"1863":2,"1865":2,"1871":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"2007":1,"2008":1,"2009":1,"2089":2,"2091":2,"2097":1,"2199":1,"2200":1,"2327":1,"2329":2,"2331":1,"2332":1,"2333":2,"2335":2,"2605":1,"2907":1},"1":{"1249":1,"1250":1,"1485":1,"1486":1,"1864":2,"1866":2,"1872":1,"2090":2,"2092":2,"2098":1,"2328":1,"2330":2,"2334":2,"2336":2},"2":{"49":3,"93":1,"118":2,"134":1,"160":2,"175":1,"176":8,"183":4,"190":1,"191":2,"211":3,"230":1,"231":1,"240":2,"266":1,"317":1,"486":1,"639":3,"683":4,"684":1,"686":1,"695":1,"718":1,"728":2,"758":2,"765":4,"769":2,"1194":1,"1195":1,"1197":2,"1198":2,"1208":1,"1209":1,"1210":1,"1245":8,"1249":3,"1262":1,"1266":8,"1294":2,"1296":2,"1300":1,"1313":1,"1319":2,"1324":2,"1345":2,"1358":1,"1361":1,"1362":2,"1363":2,"1413":10,"1477":1,"1478":1,"1479":7,"1480":8,"1482":1,"1484":13,"1485":1,"1486":2,"1487":3,"1489":7,"1556":1,"1562":1,"1635":1,"1636":1,"1674":3,"1675":2,"1681":3,"1682":1,"1691":1,"1842":2,"1844":2,"1845":5,"1846":4,"1864":1,"1866":1,"1899":1,"1929":2,"1930":3,"1931":3,"1932":5,"1933":6,"1934":2,"1942":1,"1945":2,"1947":1,"1988":5,"1999":2,"2006":10,"2008":2,"2009":2,"2026":1,"2027":7,"2062":2,"2065":3,"2066":2,"2068":5,"2069":4,"2075":1,"2090":1,"2092":1,"2143":1,"2181":22,"2182":3,"2183":15,"2184":10,"2185":1,"2199":9,"2204":2,"2266":1,"2269":1,"2286":1,"2287":1,"2290":4,"2293":8,"2320":4,"2321":6,"2324":22,"2325":8,"2327":1,"2328":1,"2329":1,"2330":2,"2331":1,"2332":1,"2333":1,"2334":2,"2335":1,"2336":2,"2337":1,"2338":1,"2339":1,"2340":1,"2376":1,"2381":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2403":1,"2411":1,"2492":1,"2516":3,"2517":7,"2530":2,"2537":22,"2538":2,"2545":8,"2567":19,"2605":3,"2610":1,"2669":2,"2675":1,"2684":1,"2721":1,"2745":3,"2749":11,"2845":1,"2884":2,"2902":10,"2903":1,"2908":4,"2909":6}}],["mods",{"0":{"320":1,"1463":1,"1464":1,"1742":1,"1743":1,"2163":1,"2165":1,"2272":1},"1":{"2164":1,"2165":1,"2166":1,"2273":1},"2":{"38":5,"63":2,"149":1,"191":1,"199":2,"222":3,"266":1,"289":1,"294":1,"328":1,"373":1,"559":1,"562":1,"568":2,"1359":4,"1375":40,"1377":1,"1378":3,"1443":5,"1455":1,"1462":1,"1463":1,"1464":1,"1484":1,"1511":2,"1526":1,"1527":5,"1589":1,"1594":2,"1604":2,"1611":5,"1612":2,"1619":1,"1742":1,"1749":2,"1751":5,"1752":2,"1754":2,"1755":2,"1758":5,"1759":1,"1843":3,"2063":3,"2156":3,"2159":1,"2160":6,"2161":1,"2162":1,"2163":1,"2164":1,"2165":7,"2166":4,"2168":1,"2169":5,"2170":5,"2252":1,"2269":1,"2311":2,"2374":6,"2528":2,"2551":2,"2560":2,"2644":3,"2645":30,"2721":1,"2864":1,"2871":1,"2887":1,"2900":5,"2908":1,"2911":1,"2912":1,"2914":1,"2917":4,"2919":1,"2920":1}}],["mod",{"0":{"194":1,"206":1,"320":1,"1381":1,"1684":1,"1765":1,"2311":1,"2535":1,"2559":1,"2561":1},"1":{"2560":1,"2561":1,"2562":2,"2563":2,"2564":2,"2565":1},"2":{"22":2,"38":11,"98":1,"112":2,"134":1,"176":1,"191":1,"194":17,"199":3,"203":2,"206":2,"211":4,"289":1,"294":1,"297":1,"317":2,"320":2,"328":2,"373":1,"559":1,"562":5,"1375":29,"1377":1,"1378":7,"1381":1,"1416":5,"1417":8,"1443":6,"1452":1,"1455":1,"1461":1,"1511":1,"1512":1,"1513":1,"1526":1,"1527":10,"1588":3,"1589":1,"1591":1,"1594":2,"1597":1,"1606":5,"1611":2,"1612":2,"1619":1,"1684":4,"1735":1,"1744":1,"1746":9,"1747":2,"1749":7,"1751":4,"1752":3,"1758":18,"1759":2,"1765":2,"1771":2,"1806":1,"1919":1,"2030":6,"2031":1,"2159":11,"2160":2,"2165":2,"2166":1,"2252":13,"2253":2,"2273":1,"2311":2,"2374":5,"2528":4,"2532":1,"2535":3,"2540":2,"2551":1,"2557":1,"2559":17,"2560":1,"2562":1,"2565":1,"2643":1,"2644":7,"2645":9,"2721":1,"2827":2,"2863":1,"2883":1,"2900":22,"2901":2,"2903":1,"2907":1,"2908":2,"2911":3,"2912":2,"2914":2,"2917":19,"2919":4,"2941":1}}],["mo",{"0":{"3":1},"2":{"294":1,"369":5,"587":2,"589":2,"630":1,"1340":1,"1416":4,"1599":1,"1606":1,"1657":1,"1684":1,"1759":2,"1761":1,"2031":1,"2312":3,"2313":1,"2528":3,"2553":2,"2554":2,"2644":1,"2721":2}}],["mail",{"2":{"2510":2,"2515":2}}],["mainstream",{"2":{"1756":1,"2619":1}}],["mainly",{"2":{"198":1,"201":1,"213":1,"224":1,"238":2,"334":1,"1288":1,"1375":1}}],["maintains",{"2":{"308":1,"616":1,"666":1,"1340":1,"1519":1,"2377":1,"2384":1,"2470":1,"2594":1,"2613":1,"2742":1}}],["maintained",{"2":{"262":1,"293":1,"305":1,"314":1,"616":2,"667":1,"1340":2,"2710":1,"2845":1}}],["maintainers",{"0":{"376":1},"2":{"124":1,"173":1,"204":1,"265":1,"338":3,"374":1,"397":3,"586":1,"607":1,"1630":1,"1844":1,"2066":1,"2566":1,"2567":1,"2569":1,"2620":1,"2706":1,"2895":1}}],["maintainer",{"2":{"70":1,"111":1,"611":3,"616":1,"666":1,"674":1,"1400":1,"1404":1,"1630":2,"2707":2,"2710":1,"2721":1,"2788":1,"2844":1,"2845":2}}],["maintainability",{"2":{"262":1,"524":1,"535":1}}],["maintain",{"2":{"70":1,"114":1,"228":1,"419":1,"486":1,"529":1,"618":1,"663":1,"1443":1,"1479":1,"1794":1,"2411":2,"2583":2,"2700":1,"2895":1}}],["maintaining",{"2":{"70":1,"2063":1,"2432":1,"2925":1}}],["maintenance",{"2":{"24":1,"198":1,"213":1,"236":1,"238":1,"251":1,"268":1,"285":1,"663":2,"2700":1,"2721":1}}],["main",{"0":{"2928":1},"1":{"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"22":1,"49":1,"50":1,"65":1,"112":1,"113":1,"114":1,"191":1,"199":1,"228":2,"236":1,"294":1,"362":1,"363":1,"379":1,"392":1,"485":1,"489":1,"553":1,"617":1,"631":1,"1293":1,"1368":2,"1378":1,"1487":1,"1557":1,"1948":1,"2052":1,"2269":2,"2283":1,"2303":1,"2399":1,"2447":2,"2464":1,"2494":1,"2550":1,"2552":1,"2573":1,"2583":1,"2587":2,"2601":2,"2605":1,"2721":1,"2873":1,"2895":1,"2911":1,"2927":6,"2928":2}}],["male",{"2":{"2423":1}}],["malicious",{"2":{"312":1}}],["ma",{"2":{"559":1,"2875":1}}],["magnet",{"2":{"1679":1,"2418":1}}],["magenta",{"2":{"492":1,"1413":1,"2067":2,"2205":2}}],["magically",{"2":{"2567":1}}],["magic+n",{"2":{"2411":1}}],["magic+d",{"2":{"1330":1,"2411":1}}],["magic",{"0":{"2445":1,"2513":1,"2531":1},"2":{"114":1,"149":1,"199":4,"226":2,"231":3,"236":2,"328":2,"544":1,"559":1,"562":2,"572":2,"683":1,"1330":1,"1346":1,"1363":1,"1480":4,"1586":4,"1616":2,"1617":2,"1619":31,"2411":4,"2445":1,"2513":37,"2531":36,"2667":5,"2721":1,"2760":1,"2767":1,"2882":3,"2933":1}}],["making",{"0":{"1431":1,"2633":1},"1":{"1432":1,"1433":1},"2":{"130":1,"194":2,"288":1,"328":1,"338":3,"397":1,"427":1,"613":1,"616":1,"1362":1,"1407":1,"1411":1,"1443":1,"1511":1,"1626":1,"2258":1,"2377":2,"2384":2,"2422":1,"2551":1,"2567":1,"2572":1,"2645":2,"2750":2,"2888":1,"2928":1,"2930":2}}],["makemusic",{"2":{"2884":1}}],["makemidi",{"2":{"1913":1}}],["makequantum",{"2":{"2746":1,"2749":11,"2752":1}}],["makeucis",{"2":{"2323":1}}],["makeunicodemap",{"2":{"2322":1}}],["makeunicode",{"2":{"2319":1,"2322":1}}],["makeuart",{"2":{"1264":1}}],["maketri",{"2":{"2313":1}}],["makepointing",{"2":{"1996":1,"1998":1,"1999":1,"2000":1,"2001":1,"2005":2,"2010":1,"2011":1,"2012":1,"2013":1,"2014":2,"2015":1}}],["makeps2",{"2":{"1982":1,"1983":1,"1985":1}}],["makeprogrammable",{"2":{"1959":1}}],["makepin",{"2":{"306":1,"315":1}}],["makeos",{"2":{"1951":1}}],["makeoled",{"2":{"1938":1,"1939":2}}],["makelto",{"2":{"2882":1}}],["makeled",{"2":{"1839":1}}],["makeleader",{"2":{"1800":1}}],["makelayer",{"2":{"1760":1}}],["makejoystick",{"2":{"1767":2}}],["makehd44780",{"2":{"1692":1}}],["makehaptic",{"2":{"1672":1}}],["makeencoder",{"2":{"1659":1,"1661":1}}],["makedigitizer",{"2":{"1640":1}}],["makedip",{"2":{"1621":1}}],["makeboard",{"2":{"2696":1}}],["makebootmagic",{"2":{"1583":1}}],["makebluetooth",{"2":{"2369":1}}],["makebacklight",{"2":{"1548":1,"1554":1,"1555":1,"1556":1,"1557":1}}],["makebattery",{"2":{"722":1,"724":1,"1536":1}}],["makeifdef",{"2":{"1435":1}}],["makeifeq",{"2":{"1435":1,"1442":1,"1443":1}}],["makei2c",{"2":{"762":1}}],["makews2812",{"2":{"1281":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1}}],["makeconsole",{"2":{"1956":1,"2882":1}}],["makecommand",{"2":{"1589":1,"1617":1,"2251":1}}],["makecommon",{"2":{"727":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1}}],["makecaps",{"2":{"1588":1}}],["makecustom",{"2":{"622":1,"623":1}}],["makeavr",{"2":{"2882":1}}],["makeautocorrect",{"2":{"1520":1}}],["makeaudio",{"2":{"712":1}}],["makeapa102",{"2":{"700":1}}],["makeanalog",{"2":{"688":1}}],["makergblight",{"2":{"2179":2}}],["makergb",{"2":{"2059":1}}],["makeraw",{"2":{"2048":1}}],["makers",{"2":{"553":1,"2915":1}}],["makerepeat",{"2":{"202":1,"2157":1}}],["maker",{"0":{"1308":1},"1":{"1309":1},"2":{"114":1,"1308":2,"1309":1,"1310":2,"2435":1,"2437":1}}],["makefileaudio",{"2":{"1402":1}}],["makefileconvert",{"2":{"1387":1}}],["makefileifeq",{"2":{"348":1}}],["makefiles",{"2":{"222":2,"616":1}}],["makefile",{"0":{"2412":1},"2":{"49":1,"133":2,"134":2,"149":3,"198":1,"199":2,"333":1,"347":1,"387":1,"569":1,"1329":1,"1362":1,"1363":1,"1373":1,"1632":1,"2410":1,"2655":1,"2667":1}}],["makesteno",{"2":{"2287":1,"2288":1,"2289":1,"2290":1}}],["makest7565",{"2":{"2277":1}}],["makespace",{"2":{"2882":1}}],["makesplit",{"2":{"2261":2}}],["makespi",{"2":{"1243":1}}],["makesequencer",{"2":{"2243":1}}],["makesend",{"2":{"2213":1}}],["makesecure",{"2":{"2174":1}}],["makeserial",{"2":{"1192":1,"1195":2,"1198":2}}],["makesrc",{"2":{"621":1,"2750":2}}],["makes",{"2":{"17":1,"123":1,"320":1,"414":1,"520":1,"548":1,"553":1,"562":1,"570":1,"1340":1,"1377":1,"1513":1,"1587":1,"1604":1,"1929":2,"1930":1,"1933":1,"1950":1,"2000":1,"2039":1,"2042":1,"2069":1,"2159":1,"2163":1,"2268":1,"2371":1,"2398":1,"2440":1,"2459":1,"2554":1,"2567":1,"2573":1,"2662":1,"2664":1,"2720":1,"2750":1,"2837":1,"2908":2,"2909":1,"2919":1}}],["make",{"0":{"465":1,"611":1,"1344":1,"1740":1,"1741":1,"1742":1,"1743":1,"2378":1,"2380":1,"2385":1,"2387":1,"2392":1,"2394":1,"2396":1,"2410":1,"2472":1,"2774":1,"2820":1},"1":{"2411":1,"2412":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2782":1,"2783":1,"2784":1,"2785":1},"2":{"2":1,"10":1,"18":4,"21":1,"24":1,"31":1,"36":2,"49":2,"55":1,"65":2,"70":1,"76":1,"94":2,"107":1,"114":7,"119":1,"131":1,"133":2,"134":4,"149":2,"160":1,"175":1,"176":8,"189":1,"191":2,"199":3,"211":5,"236":2,"249":2,"265":1,"279":1,"294":1,"361":1,"378":1,"387":1,"390":1,"411":1,"423":2,"427":6,"453":2,"463":1,"467":3,"489":1,"492":3,"522":2,"533":1,"536":1,"537":1,"541":1,"545":1,"546":1,"561":1,"565":1,"569":1,"586":4,"587":1,"594":2,"605":1,"607":1,"611":2,"613":9,"617":3,"618":1,"638":1,"645":1,"663":1,"666":1,"674":5,"676":1,"681":1,"683":1,"684":1,"714":1,"715":1,"718":1,"1311":1,"1312":2,"1314":2,"1316":1,"1317":1,"1335":1,"1337":1,"1356":1,"1361":1,"1362":2,"1374":1,"1378":1,"1402":1,"1406":1,"1413":2,"1416":1,"1417":1,"1429":1,"1430":2,"1434":2,"1439":2,"1443":5,"1466":1,"1467":2,"1487":2,"1511":2,"1522":1,"1603":1,"1609":1,"1612":1,"1619":11,"1656":1,"1736":1,"1740":1,"1744":1,"1746":6,"1747":2,"1751":1,"1752":1,"1761":2,"1805":1,"1849":1,"1929":3,"1933":2,"1979":1,"2026":1,"2030":1,"2072":1,"2166":1,"2188":1,"2206":1,"2208":1,"2251":1,"2258":1,"2271":1,"2286":2,"2310":1,"2319":1,"2323":1,"2376":3,"2377":2,"2379":2,"2381":2,"2382":2,"2383":2,"2384":4,"2386":2,"2388":2,"2391":2,"2393":2,"2395":2,"2397":2,"2400":1,"2403":1,"2404":1,"2407":1,"2410":23,"2411":1,"2412":1,"2421":2,"2422":1,"2423":1,"2424":1,"2427":2,"2432":1,"2434":1,"2435":4,"2446":2,"2494":1,"2496":1,"2501":1,"2516":1,"2551":1,"2559":1,"2569":1,"2576":1,"2578":1,"2579":2,"2592":1,"2599":1,"2610":1,"2612":1,"2613":1,"2625":1,"2627":2,"2628":1,"2630":1,"2633":6,"2656":2,"2658":1,"2664":1,"2684":1,"2723":1,"2745":2,"2748":3,"2749":27,"2750":1,"2754":1,"2787":1,"2788":1,"2820":1,"2879":1,"2882":1,"2901":2,"2924":1,"2931":1,"2937":1,"2938":4,"2939":1,"2942":2}}],["majority",{"2":{"156":1,"166":1,"245":1,"248":1,"1200":1,"1333":1,"1583":1,"1585":1,"2899":1}}],["major",{"2":{"116":1,"199":1,"607":1,"1348":1,"1479":2,"1480":3,"1484":2,"2398":1,"2731":2,"2732":1}}],["macs",{"2":{"1955":1}}],["macca",{"2":{"676":1}}],["mac",{"0":{"1354":1,"1355":1,"1358":1,"1371":1},"1":{"1372":1},"2":{"266":1,"1356":1,"1358":1,"2320":1,"2321":1,"2325":1,"2337":1,"2338":1,"2339":1,"2545":1,"2880":18}}],["machines",{"2":{"1202":1,"1955":1,"2287":1}}],["machine",{"2":{"263":1,"378":1,"379":1,"611":1,"1289":1,"2242":1,"2285":1,"2287":1,"2291":2,"2324":1,"2400":1,"2402":1,"2403":1,"2584":1,"2585":1,"2587":1,"2804":1}}],["mach80",{"2":{"134":1}}],["macos",{"0":{"416":1,"1353":1,"1747":1,"2402":1},"2":{"114":1,"149":1,"158":1,"176":1,"199":1,"236":1,"266":1,"294":1,"562":2,"1323":1,"1348":2,"1459":1,"1669":1,"1670":1,"1747":3,"1754":1,"1951":1,"1952":1,"1955":1,"1958":1,"2050":1,"2320":1,"2321":1,"2324":3,"2325":2,"2337":1,"2338":1,"2339":1,"2393":1,"2395":1,"2397":1,"2400":1,"2402":1,"2495":1,"2499":1,"2506":1,"2509":1,"2510":1,"2515":3,"2545":2,"2592":1,"2606":1,"2607":1,"2612":1,"2620":1,"2666":2,"2667":2,"2710":1,"2880":11}}],["macro2",{"2":{"1442":1}}],["macro30",{"2":{"1958":1}}],["macro3",{"2":{"241":2,"249":1}}],["macro1",{"2":{"241":2,"1442":1}}],["macro0",{"2":{"199":1}}],["macropad",{"2":{"120":1,"176":3,"211":1,"236":1,"328":1,"1445":1,"2878":1}}],["macros=",{"2":{"2410":2}}],["macros",{"0":{"17":1,"120":1,"758":1,"1443":1,"1444":1,"1445":1,"1449":1,"1451":1,"1655":2,"2523":1,"2714":1},"1":{"1445":1,"1446":2,"1447":2,"1448":2,"1449":1,"1450":2,"1451":2,"1452":2,"1453":2,"1454":2,"1455":2,"1456":2,"1457":2,"1458":2,"1459":2,"1460":2,"1461":2,"1462":2,"1463":2,"1464":2,"1465":2,"1466":2,"1656":2,"1657":2,"1658":2},"2":{"16":1,"17":1,"38":1,"50":1,"89":1,"114":1,"120":5,"134":2,"140":1,"176":2,"191":3,"196":1,"201":1,"211":2,"236":2,"249":1,"266":3,"277":1,"328":1,"369":1,"445":1,"521":1,"624":1,"758":1,"1376":1,"1422":1,"1425":2,"1442":7,"1443":3,"1444":3,"1445":4,"1446":1,"1450":1,"1452":1,"1455":1,"1599":1,"1614":2,"1616":2,"1655":5,"1656":2,"1657":1,"1751":1,"1765":1,"1770":1,"2162":1,"2167":1,"2168":1,"2170":1,"2215":1,"2410":2,"2523":1,"2721":4,"2787":3,"2849":1,"2882":1,"2924":3,"2930":1}}],["macro",{"0":{"27":1,"140":1,"1447":1,"1455":1,"1657":1,"2262":1,"2806":1,"2822":1},"1":{"1448":1,"1456":1,"1457":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1},"2":{"3":1,"7":1,"15":1,"27":1,"50":1,"75":1,"89":1,"114":3,"120":8,"134":1,"140":2,"149":2,"160":2,"188":2,"191":4,"199":3,"211":75,"222":3,"231":3,"236":1,"249":1,"255":2,"257":1,"258":1,"259":1,"277":2,"294":1,"333":1,"369":2,"586":2,"587":1,"627":1,"758":1,"760":1,"1376":1,"1407":1,"1421":1,"1433":1,"1442":2,"1443":1,"1445":4,"1447":2,"1448":1,"1450":9,"1455":3,"1466":1,"1486":1,"1618":1,"1655":22,"1656":14,"1657":6,"1658":14,"1680":1,"1756":1,"1844":2,"1849":1,"1958":1,"2066":2,"2072":1,"2162":3,"2167":7,"2168":6,"2189":2,"2194":1,"2206":1,"2212":1,"2215":1,"2240":1,"2241":1,"2290":1,"2302":3,"2310":1,"2324":1,"2438":1,"2439":1,"2523":10,"2546":1,"2553":3,"2559":1,"2644":1,"2714":3,"2721":2,"2781":2,"2783":2,"2787":1,"2788":1,"2789":2,"2806":2,"2822":1,"2849":1,"2901":3,"2915":1,"2930":6,"2931":2,"2933":1}}],["max660",{"2":{"1691":1}}],["maxfitlerouput",{"2":{"1522":1}}],["maxing",{"2":{"562":1}}],["maximus",{"2":{"222":1}}],["maximum",{"2":{"28":1,"166":2,"427":2,"559":2,"563":1,"568":2,"658":1,"726":1,"823":1,"852":1,"884":1,"916":1,"923":1,"951":1,"957":1,"985":1,"991":1,"1019":1,"1025":1,"1053":1,"1059":1,"1087":1,"1093":1,"1121":1,"1127":1,"1155":1,"1161":1,"1211":1,"1362":1,"1407":1,"1550":3,"1556":1,"1588":1,"1768":1,"1770":1,"1777":1,"1840":2,"1846":3,"1928":3,"1929":4,"1930":2,"1932":2,"1933":2,"1948":2,"2000":1,"2003":5,"2007":2,"2060":2,"2069":4,"2182":1,"2185":1,"2189":1,"2201":6,"2268":2,"2270":1,"2271":2,"2283":2,"2302":1,"2311":1,"2747":3,"2749":11,"2750":1,"2760":1,"2766":1,"2767":1,"2850":1,"2864":1,"2870":2,"2871":1,"2875":1,"2910":1}}],["max",{"0":{"1906":1,"1909":1,"2150":1,"2153":1},"2":{"112":4,"134":1,"160":1,"166":1,"176":1,"191":1,"194":1,"211":2,"231":1,"308":1,"460":1,"559":1,"563":1,"564":2,"658":2,"716":4,"717":4,"728":2,"729":1,"1482":3,"1487":2,"1521":1,"1527":8,"1549":1,"1606":4,"1675":1,"1768":3,"1777":1,"1839":1,"1843":1,"1844":6,"1849":1,"1907":1,"1910":1,"1929":7,"1933":4,"1948":6,"2000":3,"2034":1,"2059":1,"2063":1,"2066":6,"2072":1,"2073":6,"2074":3,"2151":1,"2154":1,"2182":1,"2185":1,"2189":2,"2268":2,"2283":6,"2293":2,"2302":2,"2312":1,"2323":1,"2374":6,"2375":1,"2439":3,"2520":1,"2850":2,"2864":2,"2866":2,"2870":3,"2871":2,"2875":1,"2900":3,"2942":1}}],["maps",{"2":{"338":1,"664":1,"1354":1,"1484":1,"1486":1,"1946":1,"2877":1,"2930":1}}],["mapped",{"2":{"182":1,"209":2,"559":1,"674":1,"687":1,"731":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1389":2,"1393":2,"1404":1,"1405":1,"1516":3,"1552":1,"1669":1,"2215":1,"2464":1,"2467":1,"2750":3,"2770":3,"2816":1,"2907":2,"2908":2,"2909":1}}],["mappings",{"2":{"191":1,"211":1,"236":2,"667":2,"1950":1,"2721":1}}],["mapping",{"0":{"154":1,"247":1,"667":1,"731":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1927":1,"2298":1},"1":{"668":1,"669":1,"2299":1},"2":{"49":1,"114":1,"149":1,"154":1,"160":2,"191":6,"209":1,"211":1,"231":1,"236":1,"247":2,"266":1,"307":1,"338":1,"664":1,"667":5,"669":1,"670":1,"1358":1,"1404":1,"1621":2,"1661":3,"1946":2,"2298":1,"2322":2,"2323":4,"2411":2,"2464":1,"2467":1,"2553":1,"2862":1,"2879":1,"2908":1,"2909":1}}],["maple",{"2":{"143":9,"149":1,"181":2,"270":2,"277":1,"317":1,"686":1,"2498":1}}],["map",{"0":{"1486":1,"1621":1,"1661":1,"2930":1},"2":{"76":1,"134":1,"160":1,"176":2,"191":1,"199":2,"201":3,"209":1,"211":6,"218":1,"222":2,"247":2,"249":1,"277":1,"307":5,"328":1,"1362":1,"1486":4,"1515":1,"1621":3,"1641":1,"1661":5,"1662":1,"1925":1,"1927":1,"1946":2,"1947":1,"2000":1,"2206":3,"2207":2,"2294":2,"2296":1,"2298":1,"2322":4,"2323":3,"2325":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2350":1,"2351":1,"2411":1,"2545":1,"2721":2,"2787":1,"2870":1,"2930":2,"2931":2,"2933":2}}],["manjaro",{"2":{"2594":1,"2619":1}}],["manipulating",{"0":{"2021":1},"1":{"2022":1,"2023":1,"2024":1,"2025":1,"2026":1,"2027":1,"2028":1},"2":{"1454":1,"2584":1}}],["manipulation",{"2":{"243":1,"331":1,"390":1,"637":1,"1202":1}}],["manipulations",{"2":{"64":1}}],["manipulate",{"2":{"1422":1,"1530":1,"1586":1,"1593":1,"1763":1,"2021":1,"2026":1,"2299":1}}],["man",{"2":{"1312":1,"2495":1}}],["manner",{"2":{"559":2,"568":1,"1616":1,"1845":1,"2068":1}}],["mango",{"2":{"226":1,"236":1}}],["mandatory",{"2":{"201":2,"2721":1}}],["management",{"0":{"1616":1},"2":{"1340":1,"1367":1,"1948":1,"2283":1}}],["managed",{"2":{"417":1,"1340":1}}],["manager",{"0":{"380":1},"2":{"380":1,"421":1,"684":1,"685":1,"686":2,"1367":1,"2050":1,"2495":1,"2499":1,"2575":1,"2605":1,"2619":1,"2660":1}}],["manageable",{"2":{"251":1,"548":1}}],["manage",{"2":{"182":1,"611":1,"653":1,"1378":1}}],["manual",{"0":{"2684":1},"2":{"149":1,"160":1,"234":1,"249":2,"1297":1,"1312":1}}],["manually",{"2":{"134":1,"234":1,"244":1,"390":1,"418":1,"521":1,"578":1,"653":1,"1315":1,"1529":1,"1627":1,"1739":1,"1796":1,"1946":1,"1948":2,"1997":1,"2021":1,"2266":1,"2283":2,"2400":2,"2562":1,"2587":1,"2614":1,"2619":1,"2627":1,"2652":1,"2721":1,"2746":1,"2750":2,"2900":1,"2908":1,"2942":1}}],["manufacture",{"2":{"2407":1}}],["manufacturers",{"2":{"746":1,"1200":1,"1201":1}}],["manufacturer",{"2":{"70":3,"76":1,"111":1,"169":2,"184":2,"191":4,"213":1,"383":1,"559":1,"594":1,"743":1,"2052":3,"2377":1,"2384":1,"2567":1,"2569":1,"2710":3,"2720":1,"2721":1,"2844":1,"2845":3}}],["manuform",{"2":{"114":3,"149":2,"211":1,"217":2,"222":8,"226":1,"236":1,"308":1,"2418":1}}],["manyboard",{"2":{"114":1}}],["many",{"2":{"30":1,"198":1,"265":1,"433":1,"487":1,"502":1,"546":1,"562":2,"635":1,"655":1,"659":1,"716":2,"1280":1,"1329":1,"1379":1,"1406":2,"1459":1,"1486":1,"1491":1,"1497":1,"1511":1,"1547":1,"1589":1,"1659":1,"1739":1,"1917":1,"1933":1,"1943":1,"2017":1,"2047":1,"2189":1,"2254":1,"2271":1,"2272":1,"2281":1,"2285":1,"2289":1,"2302":2,"2311":1,"2312":1,"2322":1,"2372":3,"2375":1,"2376":1,"2410":2,"2415":1,"2428":1,"2440":1,"2496":2,"2554":1,"2569":1,"2573":1,"2582":1,"2592":1,"2611":1,"2612":1,"2619":1,"2632":1,"2633":1,"2646":2,"2657":3,"2709":1,"2721":1,"2750":1,"2807":1,"2836":1,"2862":1,"2877":1,"2879":1,"2894":1,"2921":1,"2929":2,"2934":3,"2941":1,"2942":1}}],["maarten",{"0":{"57":1}}],["maartenwut",{"0":{"57":1},"2":{"57":23}}],["mario",{"2":{"1807":1}}],["mary",{"2":{"1667":2}}],["mar",{"2":{"55":1}}],["marketing",{"2":{"2567":4}}],["marked",{"2":{"713":1,"1210":1,"1559":1,"1646":1,"1778":1,"1843":1,"2492":1,"2627":1,"2845":1}}],["marker",{"2":{"346":1,"2497":1,"2773":8}}],["markers",{"2":{"266":22}}],["markdown",{"2":{"334":2,"397":1,"529":1,"681":1,"1427":1,"2664":2}}],["mark",{"2":{"48":1,"176":1,"191":1,"234":1,"236":1,"559":1,"2362":1,"2627":1,"2921":1}}],["marksard",{"2":{"143":3,"149":2}}],["marks",{"2":{"0":1,"2627":2}}],["matias",{"2":{"2414":1}}],["materials",{"2":{"2418":1,"2422":1}}],["material",{"2":{"2415":1,"2567":1}}],["mate",{"2":{"2367":1}}],["math",{"2":{"536":1,"2000":1}}],["matt",{"2":{"2937":1}}],["matte",{"2":{"2421":1}}],["matters",{"2":{"2189":1,"2554":1}}],["matter",{"2":{"194":1,"613":1,"1441":1,"1624":1,"2422":1,"2554":1,"2611":1,"2735":1,"2787":1}}],["matt3o",{"2":{"2418":2,"2429":1}}],["matthewdias",{"2":{"143":4,"149":2}}],["matrices",{"2":{"176":1,"1583":1,"1838":1,"2058":1,"2271":1,"2456":1,"2459":2}}],["matrix=true",{"2":{"1319":1}}],["matrix==true",{"2":{"431":1}}],["matrix",{"0":{"80":1,"84":1,"124":1,"214":1,"218":1,"327":1,"620":1,"635":1,"636":1,"637":1,"641":1,"642":1,"643":1,"1326":1,"1365":1,"1625":1,"1635":1,"1636":1,"1838":1,"1843":1,"1844":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1859":1,"1861":1,"1863":1,"1865":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1885":1,"1887":1,"1889":1,"1891":1,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1899":1,"1900":1,"1902":1,"1904":1,"1906":1,"1909":1,"2058":1,"2063":1,"2064":1,"2065":1,"2066":1,"2075":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2085":1,"2087":1,"2089":1,"2091":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2123":1,"2125":1,"2127":1,"2129":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2137":1,"2139":1,"2141":1,"2143":1,"2144":1,"2146":1,"2148":1,"2150":1,"2153":1,"2265":1,"2416":1,"2418":1,"2431":1,"2459":1,"2530":1,"2538":1,"2711":1,"2712":1,"2713":1,"2821":1,"2864":1,"2865":1,"2871":1,"2929":1,"2930":1},"1":{"621":1,"622":1,"623":1,"636":1,"637":1,"642":1,"643":1,"1839":1,"1840":1,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1847":1,"1848":1,"1849":1,"1850":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":2,"1859":1,"1860":2,"1861":1,"1862":2,"1863":1,"1864":2,"1865":1,"1866":2,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":2,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":2,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":2,"1885":1,"1886":2,"1887":1,"1888":2,"1889":1,"1890":2,"1891":1,"1892":2,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":2,"1899":1,"1900":1,"1901":2,"1902":1,"1903":2,"1904":1,"1905":2,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":2,"2065":2,"2066":1,"2067":1,"2068":1,"2069":1,"2070":1,"2071":1,"2072":1,"2073":1,"2074":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":2,"2085":1,"2086":2,"2087":1,"2088":2,"2089":1,"2090":2,"2091":1,"2092":2,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":2,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":2,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":2,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":2,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":2,"2123":1,"2124":2,"2125":1,"2126":2,"2127":1,"2128":2,"2129":1,"2130":2,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":2,"2137":1,"2138":1,"2139":1,"2140":2,"2141":1,"2142":2,"2143":1,"2144":1,"2145":2,"2146":1,"2147":2,"2148":1,"2149":2,"2150":1,"2151":1,"2152":1,"2153":1,"2154":1,"2155":1,"2417":1,"2419":1,"2420":1,"2421":1,"2422":1,"2712":1,"2713":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"17":1,"31":8,"49":3,"63":2,"64":1,"65":4,"70":1,"74":4,"76":1,"80":2,"84":1,"92":4,"93":14,"94":5,"102":3,"111":2,"112":7,"113":1,"114":36,"124":2,"133":1,"134":11,"149":13,"160":4,"176":4,"183":22,"185":9,"191":16,"196":1,"199":7,"201":1,"211":14,"214":1,"218":1,"221":6,"222":18,"236":12,"238":1,"249":33,"266":10,"277":11,"283":3,"285":6,"294":3,"298":1,"308":7,"312":3,"316":1,"317":6,"328":8,"333":4,"390":1,"431":1,"435":2,"559":18,"567":4,"568":9,"572":2,"587":2,"620":2,"621":4,"622":10,"623":19,"631":1,"632":1,"635":1,"636":2,"637":18,"641":1,"643":4,"644":2,"645":2,"650":3,"651":3,"666":1,"674":1,"700":1,"716":1,"717":1,"726":1,"727":1,"731":1,"798":2,"824":2,"852":1,"853":2,"884":1,"885":2,"916":1,"917":2,"951":1,"952":2,"985":1,"986":2,"1019":1,"1020":2,"1053":1,"1054":2,"1087":1,"1088":2,"1121":1,"1122":2,"1155":1,"1156":2,"1211":1,"1212":2,"1281":1,"1282":1,"1326":1,"1328":8,"1365":1,"1369":1,"1407":3,"1410":1,"1411":2,"1413":1,"1417":1,"1450":4,"1466":1,"1486":5,"1547":1,"1584":2,"1585":3,"1619":2,"1620":2,"1635":5,"1636":5,"1638":12,"1662":4,"1675":1,"1838":1,"1839":3,"1840":5,"1842":14,"1843":64,"1844":23,"1845":5,"1846":20,"1847":1,"1849":8,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1860":1,"1900":1,"1901":1,"1918":2,"1943":1,"1946":3,"1949":8,"1952":4,"2058":1,"2059":3,"2060":5,"2062":18,"2063":151,"2064":7,"2065":1,"2066":23,"2068":5,"2069":24,"2070":1,"2072":8,"2073":10,"2074":7,"2075":4,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":1,"2086":1,"2144":1,"2145":1,"2176":1,"2181":3,"2188":2,"2257":1,"2262":3,"2265":11,"2269":2,"2271":4,"2281":1,"2282":2,"2296":3,"2305":2,"2377":1,"2384":1,"2407":1,"2411":3,"2415":1,"2416":4,"2423":1,"2424":1,"2425":2,"2431":1,"2438":1,"2441":2,"2451":1,"2456":1,"2457":1,"2459":6,"2530":15,"2538":19,"2547":3,"2552":6,"2553":1,"2560":1,"2578":2,"2600":3,"2603":1,"2677":1,"2711":1,"2712":6,"2713":7,"2714":21,"2721":12,"2722":1,"2750":3,"2757":1,"2787":5,"2821":1,"2847":1,"2853":3,"2856":4,"2862":4,"2864":7,"2865":8,"2871":7,"2872":2,"2873":7,"2884":1,"2887":46,"2915":11,"2920":1,"2924":2,"2925":2,"2928":2,"2929":8,"2930":6,"2931":4,"2932":4,"2942":1}}],["matched",{"2":{"431":2,"1512":1,"1527":1,"1807":1}}],["matches",{"2":{"397":1,"405":1,"685":1,"1200":1,"1201":1,"1486":1,"1522":9,"1533":2,"1630":1,"1633":1,"1661":1,"1825":1,"1828":1,"1831":1,"1834":1,"1837":1,"2006":1,"2496":1,"2587":2,"2667":1,"2748":1,"2750":2,"2930":1}}],["matchstickworks",{"2":{"226":2,"236":1}}],["match",{"2":{"65":1,"77":1,"105":1,"134":1,"149":1,"182":1,"191":1,"195":1,"333":1,"405":1,"410":1,"431":11,"520":1,"597":1,"685":1,"765":1,"1245":1,"1266":1,"1353":1,"1375":2,"1413":1,"1417":1,"1428":2,"1432":1,"1446":1,"1519":1,"1526":1,"1614":1,"1946":1,"2298":1,"2362":1,"2465":1,"2496":1,"2560":1,"2687":2,"2707":1,"2748":1,"2757":1,"2760":1,"2787":1,"2788":1,"2931":1}}],["matchingsubstring",{"2":{"2938":2}}],["matching",{"2":{"50":1,"149":1,"243":1,"331":1,"431":1,"467":1,"764":1,"1200":1,"1201":1,"1244":1,"1289":1,"1375":1,"1422":6,"1522":2,"2465":1,"2500":1,"2571":1,"2696":1,"2721":1,"2877":1,"2938":1}}],["masquerade",{"2":{"2704":1}}],["masking",{"2":{"328":1}}],["masked",{"2":{"317":1,"1526":1,"2265":2,"2562":1,"2865":1}}],["mask",{"0":{"1485":1},"2":{"105":6,"114":1,"559":1,"1375":21,"1378":2,"1417":2,"1422":12,"1443":2,"1455":1,"1485":6,"1527":4,"1589":1,"1611":2,"1619":1,"1622":4,"1744":1,"1746":11,"1747":2,"1749":1,"1751":3,"1758":3,"1941":1,"1988":2,"1990":5,"2160":2,"2165":2,"2166":1,"2265":1,"2279":1,"2374":1,"2645":8,"2761":2,"2912":1,"2917":3}}],["masks",{"2":{"49":1,"1375":1,"1758":1,"1941":2,"2279":2,"2761":1,"2917":1}}],["massive",{"2":{"163":1}}],["massively",{"2":{"70":1}}],["mass",{"2":{"93":1,"199":1,"423":1,"1678":1,"2400":1,"2497":1,"2693":1}}],["massdrop",{"2":{"73":1,"114":1,"131":1,"134":1,"207":2,"279":2,"674":3}}],["masterzen",{"2":{"2429":1}}],["master",{"0":{"761":1,"1242":1,"2629":1,"2631":1,"2632":1},"1":{"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"769":1,"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"777":1,"778":1,"779":1,"780":1,"781":1,"782":1,"783":1,"784":1,"785":1,"786":1,"787":1,"788":1,"789":1,"790":1,"791":1,"792":1,"793":1,"794":1,"795":1,"796":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1254":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"2632":1,"2633":1,"2634":1},"2":{"31":3,"34":1,"45":1,"51":1,"74":1,"114":1,"134":2,"149":1,"169":1,"176":4,"191":1,"234":4,"236":1,"277":1,"294":3,"373":2,"393":1,"396":4,"401":1,"402":3,"403":2,"405":8,"406":5,"424":4,"457":2,"566":4,"567":4,"568":7,"572":1,"577":1,"586":1,"587":2,"592":1,"746":3,"747":1,"756":1,"761":1,"762":2,"764":1,"920":3,"1091":3,"1125":3,"1197":2,"1198":1,"1242":1,"1243":2,"1350":1,"1942":3,"2008":1,"2045":1,"2198":4,"2267":3,"2268":4,"2269":3,"2270":18,"2271":6,"2272":1,"2280":3,"2371":1,"2403":3,"2513":2,"2531":2,"2625":1,"2626":1,"2627":8,"2628":4,"2629":6,"2630":4,"2631":2,"2632":7,"2633":1,"2719":3,"2721":2,"2722":1,"2723":4,"2749":3,"2897":1}}],["made",{"2":{"10":1,"73":1,"116":1,"124":1,"134":1,"172":1,"201":1,"243":1,"246":1,"263":1,"271":1,"272":1,"273":1,"312":1,"320":1,"331":1,"371":1,"383":1,"485":1,"520":1,"522":1,"576":1,"611":5,"663":1,"674":1,"794":1,"1402":1,"1484":1,"1616":1,"1628":1,"2272":1,"2437":1,"2449":1,"2555":1,"2568":1,"2609":1,"2626":2,"2627":3,"2629":1,"2638":1,"2667":1,"2895":1,"2901":1,"2919":1}}],["maybe",{"0":{"2468":1}}],["may",{"0":{"19":1,"78":1,"150":1,"200":1,"250":1,"295":1},"1":{"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"211":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1},"2":{"10":1,"14":1,"24":1,"31":2,"34":1,"73":1,"88":1,"104":1,"124":2,"127":1,"157":1,"166":1,"182":1,"194":1,"240":1,"248":1,"251":1,"259":1,"284":1,"288":1,"289":1,"312":1,"338":3,"395":1,"396":7,"397":1,"399":1,"400":1,"401":1,"407":6,"408":7,"411":2,"412":1,"431":5,"437":1,"453":1,"467":2,"509":2,"510":3,"528":1,"533":1,"547":1,"548":1,"559":2,"561":1,"562":4,"568":1,"596":2,"608":1,"613":1,"631":1,"635":1,"646":1,"674":1,"683":3,"684":2,"685":1,"686":1,"692":1,"716":4,"720":1,"730":1,"749":1,"750":1,"751":2,"752":2,"801":1,"827":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1215":1,"1244":1,"1245":2,"1263":1,"1269":1,"1284":3,"1287":1,"1291":2,"1295":1,"1296":1,"1297":1,"1300":1,"1314":1,"1315":2,"1317":2,"1327":1,"1329":1,"1345":2,"1353":1,"1368":1,"1369":1,"1402":1,"1405":1,"1410":1,"1412":1,"1416":1,"1435":3,"1442":1,"1443":2,"1446":2,"1452":1,"1455":2,"1479":1,"1487":1,"1493":1,"1512":1,"1521":1,"1528":1,"1560":1,"1562":1,"1563":1,"1583":1,"1587":1,"1588":2,"1603":2,"1621":1,"1626":1,"1628":1,"1630":1,"1634":2,"1638":1,"1641":1,"1655":1,"1661":1,"1664":2,"1675":5,"1707":1,"1732":1,"1742":1,"1743":1,"1747":1,"1751":1,"1754":1,"1757":1,"1758":1,"1759":1,"1762":1,"1790":1,"1805":2,"1806":1,"1914":1,"1929":1,"1937":1,"1941":1,"1943":1,"1945":1,"1950":1,"1951":1,"1954":2,"1955":2,"1956":1,"1958":1,"1982":1,"1986":1,"2015":1,"2025":1,"2030":1,"2044":1,"2050":2,"2064":1,"2069":1,"2159":1,"2160":1,"2161":1,"2165":1,"2168":1,"2208":2,"2253":1,"2260":1,"2265":1,"2269":1,"2271":1,"2273":1,"2279":1,"2286":2,"2291":1,"2302":2,"2310":1,"2318":1,"2322":1,"2323":1,"2324":2,"2376":1,"2379":1,"2381":1,"2383":1,"2384":2,"2386":3,"2388":1,"2389":1,"2390":1,"2391":2,"2393":1,"2395":1,"2400":1,"2403":1,"2405":2,"2408":1,"2410":1,"2411":1,"2415":1,"2417":1,"2420":2,"2421":3,"2424":1,"2427":3,"2434":2,"2445":1,"2446":1,"2450":1,"2467":1,"2475":1,"2489":1,"2490":1,"2494":1,"2496":4,"2499":1,"2501":1,"2510":1,"2547":1,"2551":2,"2557":2,"2560":1,"2567":1,"2568":3,"2569":4,"2570":3,"2574":1,"2577":1,"2578":2,"2583":1,"2605":1,"2607":1,"2645":1,"2649":1,"2660":1,"2664":2,"2667":1,"2669":2,"2672":1,"2674":1,"2675":1,"2676":1,"2679":1,"2683":3,"2719":5,"2722":1,"2744":1,"2749":4,"2750":2,"2757":2,"2765":1,"2766":1,"2774":1,"2778":1,"2879":1,"2881":1,"2882":2,"2894":1,"2895":1,"2896":3,"2898":1,"2901":1,"2902":2,"2913":1,"2914":3,"2915":6,"2916":2,"2917":1,"2919":1,"2920":3,"2923":1,"2941":3}}],["aabb",{"0":{"2904":1}}],["aa",{"2":{"2748":1}}],["aaron",{"2":{"2165":2}}],["ajazz",{"2":{"2567":2}}],["ajisai74",{"2":{"143":2}}],["azerty",{"0":{"2797":1},"2":{"2880":2}}],["azure",{"2":{"2067":2,"2205":2}}],["azoteq",{"0":{"2001":1},"1":{"2002":1,"2003":1,"2004":1},"2":{"236":1,"249":1,"294":1,"2001":2,"2002":10,"2003":17,"2004":3}}],["ao",{"2":{"2294":1}}],["aoff",{"2":{"1919":1,"2532":1}}],["aozora",{"2":{"122":2}}],["a♯",{"2":{"1919":6,"2532":6}}],["a♭",{"2":{"1919":6,"2532":6}}],["a\`",{"2":{"1607":1}}],["a9",{"2":{"1266":1,"1984":2,"2675":1,"2684":1}}],["a8",{"2":{"713":2,"718":2,"1477":1,"1984":2,"2684":1}}],["a7²",{"2":{"692":1}}],["a7¹",{"2":{"692":1}}],["a7",{"2":{"690":1,"692":4,"2676":2,"2684":1}}],["a6²",{"2":{"692":1}}],["a6¹",{"2":{"692":1}}],["a6",{"2":{"690":1,"692":4,"2676":2,"2684":1}}],["a54",{"2":{"2684":1}}],["a5+dacd2",{"2":{"713":6}}],["a5²",{"2":{"692":1}}],["a5¹",{"2":{"692":1}}],["a5",{"2":{"690":1,"692":4,"713":1,"714":1,"1471":3,"1472":3,"1473":1,"1474":1,"1919":1,"2532":1,"2676":2,"2684":1}}],["a43",{"2":{"2684":1}}],["a4+a5",{"2":{"1473":1}}],["a4+dacd1",{"2":{"713":6}}],["a4²",{"2":{"692":1}}],["a4¹",{"2":{"692":1}}],["a4",{"2":{"690":1,"692":4,"713":1,"714":1,"1471":3,"1472":3,"1473":1,"1474":1,"1770":2,"1919":1,"2532":1,"2676":2,"2684":1}}],["a3²",{"2":{"692":2}}],["a3¹",{"2":{"692":2}}],["a3",{"2":{"690":1,"692":4,"1310":1,"1919":1,"2532":1}}],["a2²",{"2":{"692":2}}],["a2¹",{"2":{"692":2}}],["a2",{"2":{"690":1,"692":4,"1919":1,"2532":1,"2684":1,"2865":2}}],["a14",{"2":{"2684":1}}],["a145",{"2":{"2684":1}}],["a135",{"2":{"2684":1}}],["a13",{"2":{"1675":1,"2684":1}}],["a15",{"2":{"1620":1,"2684":1}}],["a12",{"2":{"1266":1,"2674":1}}],["a11",{"2":{"1266":1,"2674":1}}],["a10",{"2":{"1266":1,"1620":1,"2675":1,"2679":1,"2684":1}}],["a1²",{"2":{"692":2}}],["a1¹",{"2":{"692":2}}],["a1",{"2":{"690":1,"692":4,"1919":1,"2532":1,"2684":1,"2865":2,"2873":1}}],["a0²",{"2":{"692":2}}],["a0¹",{"2":{"692":2}}],["a0",{"2":{"690":1,"692":4,"696":1,"2281":2,"2383":1,"2676":1,"2677":1,"2684":1,"2865":2}}],["akko",{"2":{"2390":1}}],["akp846",{"2":{"294":1}}],["akc084",{"2":{"294":1}}],["akemipad",{"2":{"211":1}}],["akis",{"2":{"211":1}}],["akira",{"2":{"211":1}}],["akb",{"2":{"211":2}}],["aka",{"2":{"149":1,"194":1,"297":1,"308":1,"1482":1,"1483":1,"1587":2,"1758":1,"2259":1,"2260":1,"2293":1,"2917":1}}],["air",{"2":{"2273":1}}],["aim",{"2":{"2375":1}}],["aims",{"2":{"1996":1,"2171":1,"2625":1}}],["aiming",{"2":{"1917":1}}],["aimed",{"2":{"251":1,"662":1,"1849":1,"2072":1,"2635":1}}],["ain",{"2":{"521":1}}],["aids",{"2":{"2420":1}}],["aid",{"2":{"334":1,"535":1}}],["aide",{"2":{"249":1,"2007":1}}],["aidansmithdotdev",{"2":{"211":1}}],["ai03",{"2":{"149":1,"211":2,"445":1,"2415":1}}],["ae",{"2":{"2323":2}}],["aegis",{"2":{"211":1}}],["aeroboard",{"2":{"222":1}}],["aero",{"2":{"211":1}}],["aella",{"2":{"211":1}}],["aelith",{"2":{"197":2}}],["aeboards",{"0":{"60":1},"2":{"102":3,"114":1,"191":1,"211":3}}],["axis",{"0":{"1783":2,"1786":2},"1":{"1784":2,"1785":2,"1787":2},"2":{"183":2,"236":1,"1406":1,"1673":1,"1679":1,"1768":3,"1770":12,"1771":9,"1775":1,"1776":1,"1777":1,"1783":1,"1784":2,"1786":1,"1787":2,"2000":10,"2016":2,"2017":2,"2018":2,"2021":2,"2788":2,"2862":4,"2864":2,"2871":2}}],["axes",{"0":{"1770":1,"1771":1,"1992":1,"1993":1},"1":{"1771":1},"2":{"49":1,"183":2,"1766":3,"1768":1,"1770":4,"1771":2,"1775":1,"1992":2,"2045":1}}],["awkward",{"2":{"1761":1}}],["awinic",{"2":{"726":1}}],["awesome",{"2":{"196":1,"369":1,"530":1,"531":1,"532":1,"1338":1,"1440":1,"1466":1,"1801":1,"2710":1}}],["awake",{"2":{"2021":1}}],["awaiting",{"2":{"1942":1,"2571":1}}],["awaited",{"2":{"131":1}}],["aware",{"2":{"427":1,"428":1,"435":1,"438":1,"440":1,"443":1,"509":1,"1603":1,"2515":1}}],["away",{"2":{"3":1,"15":1,"134":3,"176":1,"266":1,"445":1,"1520":1,"1805":1,"1843":4,"1941":1,"2063":6,"2279":1,"2312":1,"2416":1,"2421":1,"2459":1,"2838":1}}],["aw20216s",{"0":{"726":1,"733":1,"735":1,"737":1,"739":1,"741":1},"1":{"727":1,"728":1,"729":1,"730":1,"731":1,"732":1,"733":1,"734":2,"735":1,"736":2,"737":1,"738":2,"739":1,"740":2,"741":1,"742":2},"2":{"236":1,"249":1,"726":1,"727":3,"728":7,"729":1,"731":3,"737":1,"738":1,"2059":1,"2871":1}}],["aw20216",{"2":{"114":3,"176":1,"211":1,"221":2,"236":1}}],["amtel",{"2":{"2266":1}}],["amt",{"2":{"2014":4}}],["among",{"2":{"1670":1,"2496":1,"2911":1}}],["amounts",{"2":{"1415":1,"2747":1,"2749":1,"2750":1}}],["amount",{"2":{"107":1,"750":1,"751":1,"1319":1,"1417":1,"1459":1,"1603":2,"1656":1,"1661":1,"1803":1,"1805":1,"1845":1,"1953":2,"1993":1,"2034":1,"2063":3,"2068":1,"2191":1,"2224":1,"2228":1,"2268":1,"2290":1,"2301":1,"2320":1,"2420":3,"2427":1,"2444":1,"2560":1,"2645":1,"2672":1,"2719":1,"2747":3,"2749":1,"2854":1,"2855":1,"2863":1,"2865":1,"2867":1,"2873":2,"2875":1,"2894":1}}],["amazing",{"2":{"1339":1}}],["amag23",{"2":{"211":1}}],["am",{"2":{"423":1,"1517":3,"2044":2,"2627":1}}],["america",{"2":{"1343":1,"2880":3}}],["amet",{"2":{"357":1}}],["amended",{"2":{"2719":1}}],["amending",{"2":{"229":1}}],["amend",{"2":{"222":2}}],["amendment",{"2":{"222":1}}],["ambiguous",{"2":{"524":1,"527":1,"2567":1}}],["ambiguity",{"2":{"273":1,"2567":3,"2569":1,"2719":1}}],["amber80",{"2":{"211":1}}],["amux",{"2":{"249":1}}],["amj84",{"2":{"222":1}}],["amj",{"2":{"160":1}}],["amjpad",{"2":{"159":2}}],["amj96",{"2":{"159":2}}],["amj60",{"2":{"159":2}}],["amjkeyboard",{"2":{"159":4,"160":1,"222":1}}],["amj40",{"2":{"159":2}}],["ampr",{"2":{"2539":1,"2558":1}}],["amptrics",{"2":{"308":1}}],["ampersand",{"2":{"277":1,"2539":1,"2558":1}}],["amp",{"0":{"25":1,"538":1,"1373":1,"1450":1,"1746":1,"1946":1,"2895":1},"1":{"1451":1,"1452":1,"1453":1,"1454":1,"1947":1,"2896":1,"2897":1},"2":{"63":1,"72":1,"93":1,"114":5,"134":1,"149":1,"160":1,"190":1,"191":1,"199":2,"211":2,"249":1,"266":1,"308":1,"317":3,"693":1,"1316":4,"1375":2,"1455":1,"1480":1,"1528":2,"1560":2,"1659":1,"1751":1,"1840":2,"1946":1,"1991":1,"2060":2,"2063":1,"2415":1,"2495":1,"2503":1,"2515":1,"2516":1,"2539":1,"2558":1,"2621":2,"2745":1,"2937":1}}],["ahead",{"2":{"76":1,"520":1,"522":1,"763":1,"2585":1,"2628":1}}],["apos",{"2":{"2567":1}}],["apt",{"2":{"521":1,"2594":1}}],["apart",{"2":{"2257":1,"2420":1,"2427":1}}],["apache",{"2":{"1630":1,"2741":1}}],["apa",{"2":{"222":1}}],["apa102",{"0":{"699":1,"703":1,"704":1,"706":1,"708":1,"709":1,"2848":1},"1":{"700":1,"701":1,"702":1,"703":1,"704":1,"705":2,"706":1,"707":2,"708":1,"709":1,"710":2},"2":{"75":1,"201":2,"211":1,"221":2,"234":2,"236":2,"249":2,"277":1,"294":1,"333":1,"699":1,"700":4,"701":3,"704":1,"705":1,"2059":1,"2178":1,"2179":7,"2848":2,"2870":1}}],["apm32",{"0":{"2386":1},"1":{"2387":1},"2":{"211":1,"222":1,"686":2,"2386":2}}],["apm32f103",{"2":{"134":1}}],["ap2",{"2":{"176":1}}],["aplyard",{"2":{"67":2,"72":1}}],["aplx6",{"2":{"67":3,"72":1}}],["apis",{"0":{"1638":1},"2":{"153":1,"236":1,"244":1,"700":1,"727":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1281":1,"1633":1,"1638":1,"2668":2,"2719":1,"2734":1,"2749":3,"2750":3}}],["api",{"0":{"220":1,"244":1,"362":1,"367":1,"374":1,"579":1,"702":1,"732":1,"768":1,"803":1,"829":1,"861":1,"891":1,"926":1,"960":1,"994":1,"1028":1,"1062":1,"1096":1,"1130":1,"1164":1,"1217":1,"1246":1,"1267":1,"1301":1,"1565":1,"1643":1,"1697":1,"1773":1,"1809":1,"1850":1,"1948":1,"1961":1,"2053":1,"2076":1,"2220":1,"2283":1,"2326":1,"2750":1,"2753":1},"1":{"363":1,"364":1,"365":1,"366":1,"368":1,"369":1,"370":1,"371":1,"372":1,"373":1,"375":1,"376":1,"377":1,"580":1,"581":1,"582":1,"703":1,"704":1,"705":1,"706":1,"707":1,"708":1,"709":1,"710":1,"733":1,"734":1,"735":1,"736":1,"737":1,"738":1,"739":1,"740":1,"741":1,"742":1,"769":1,"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"777":1,"778":1,"779":1,"780":1,"781":1,"782":1,"783":1,"784":1,"785":1,"786":1,"787":1,"788":1,"789":1,"790":1,"791":1,"792":1,"793":1,"794":1,"795":1,"796":1,"804":1,"805":1,"806":1,"807":1,"808":1,"809":1,"810":1,"811":1,"812":1,"813":1,"814":1,"815":1,"816":1,"817":1,"818":1,"819":1,"820":1,"821":1,"822":1,"830":1,"831":1,"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"839":1,"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"862":1,"863":1,"864":1,"865":1,"866":1,"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1,"878":1,"879":1,"880":1,"881":1,"882":1,"883":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"912":1,"913":1,"914":1,"915":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"947":1,"948":1,"949":1,"950":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"972":1,"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":1,"983":1,"984":1,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1,"1010":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1037":1,"1038":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1048":1,"1049":1,"1050":1,"1051":1,"1052":1,"1063":1,"1064":1,"1065":1,"1066":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1072":1,"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1,"1083":1,"1084":1,"1085":1,"1086":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1131":1,"1132":1,"1133":1,"1134":1,"1135":1,"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1,"1183":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1254":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1302":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1571":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":1,"1578":1,"1579":1,"1580":1,"1581":1,"1582":1,"1644":1,"1645":1,"1646":1,"1647":1,"1648":1,"1649":1,"1650":1,"1651":1,"1652":1,"1653":1,"1654":1,"1698":1,"1699":1,"1700":1,"1701":1,"1702":1,"1703":1,"1704":1,"1705":1,"1706":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1718":1,"1719":1,"1720":1,"1721":1,"1722":1,"1723":1,"1724":1,"1725":1,"1726":1,"1727":1,"1728":1,"1729":1,"1730":1,"1731":1,"1774":1,"1775":1,"1776":1,"1777":1,"1778":1,"1779":1,"1780":1,"1781":1,"1782":1,"1783":1,"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1859":1,"1860":1,"1861":1,"1862":1,"1863":1,"1864":1,"1865":1,"1866":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":1,"1899":1,"1900":1,"1901":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"1962":1,"1963":1,"1964":1,"1965":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1977":1,"1978":1,"2054":1,"2055":1,"2056":1,"2057":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":1,"2085":1,"2086":1,"2087":1,"2088":1,"2089":1,"2090":1,"2091":1,"2092":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":1,"2123":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2142":1,"2143":1,"2144":1,"2145":1,"2146":1,"2147":1,"2148":1,"2149":1,"2150":1,"2151":1,"2152":1,"2153":1,"2154":1,"2155":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2241":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2754":1,"2755":1},"2":{"51":1,"95":2,"113":1,"114":3,"133":3,"134":4,"149":2,"160":2,"176":1,"182":1,"188":1,"191":5,"196":1,"199":3,"211":2,"218":1,"222":2,"230":1,"236":1,"244":2,"248":1,"249":2,"266":3,"277":2,"285":1,"294":2,"328":1,"360":4,"362":1,"363":2,"367":2,"368":2,"370":1,"371":1,"373":1,"374":2,"375":2,"376":1,"377":2,"576":1,"579":4,"583":1,"584":1,"586":1,"590":1,"655":1,"663":1,"693":1,"700":1,"762":1,"763":1,"1243":1,"1264":1,"1281":1,"1408":1,"1557":1,"1633":2,"1638":5,"1839":1,"1948":1,"1949":2,"2059":1,"2212":2,"2319":1,"2438":1,"2669":1,"2670":1,"2746":1,"2749":9,"2750":1,"2751":1,"2787":1,"2789":1,"2844":1,"2870":1,"2925":2}}],["apps",{"2":{"2324":2}}],["approvals",{"2":{"2724":1}}],["approximately",{"2":{"1933":1,"2372":1}}],["approaching",{"2":{"2705":1,"2706":1,"2881":1}}],["approaches",{"2":{"1340":1}}],["approach",{"2":{"717":1,"1378":1}}],["approachable",{"2":{"522":1,"546":1}}],["appropriately",{"2":{"619":1,"677":1,"746":1,"2039":1,"2042":1}}],["appropriate",{"2":{"36":2,"49":1,"191":1,"232":1,"387":1,"491":1,"544":1,"548":1,"611":1,"625":2,"664":1,"666":1,"681":1,"763":1,"1195":1,"1198":1,"1210":1,"1314":1,"1410":1,"1555":1,"1628":1,"1946":1,"2039":2,"2046":1,"2208":1,"2273":1,"2293":1,"2302":1,"2494":1,"2607":1,"2667":1,"2719":1,"2721":1,"2746":1,"2877":1,"2901":1}}],["appreciated",{"2":{"411":1}}],["app",{"0":{"363":1,"364":1,"365":1,"366":1,"375":1},"2":{"375":1,"1345":1,"1347":1,"2509":1,"2515":1,"2605":1,"2621":2}}],["apparently",{"2":{"349":2,"2367":1}}],["appearance",{"2":{"2418":1}}],["appear",{"2":{"373":1,"388":1,"682":1,"1508":1,"2567":1,"2788":1}}],["appears",{"2":{"50":1,"682":1,"683":1,"684":1,"686":1,"1348":1,"2492":1,"2495":1,"2666":2,"2683":1,"2710":1,"2721":1,"2735":1}}],["appended",{"2":{"1634":1,"2377":1,"2384":1}}],["appendix",{"0":{"1531":1},"1":{"1532":1,"1533":1}}],["appending",{"2":{"1385":1,"2449":1}}],["append",{"2":{"211":1,"2721":1,"2936":1}}],["apple",{"2":{"1353":3,"1354":2,"1358":2}}],["applies",{"2":{"320":1,"521":1,"562":1,"1513":1,"1639":1,"1751":1,"1756":1,"1928":2,"1988":1,"2006":1,"2014":2,"2019":1,"2020":1,"2643":1,"2672":1,"2706":1,"2720":1,"2734":1,"2743":1,"2826":1,"2919":2}}],["applied",{"2":{"233":1,"397":2,"654":1,"1378":1,"1461":1,"1512":1,"1594":1,"1660":1,"1679":1,"1934":1,"2420":1,"2627":1,"2749":2,"2750":1,"2793":1,"2901":1}}],["applicable",{"2":{"199":1,"685":1,"1411":1,"1758":1,"2437":1,"2721":3,"2846":2,"2908":1,"2917":1}}],["application",{"2":{"182":1,"362":1,"367":1,"370":1,"375":1,"471":1,"472":1,"474":1,"480":1,"481":1,"576":1,"888":1,"1347":1,"1627":1,"1928":1,"2376":1,"2377":1,"2381":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":1,"2395":1,"2397":1,"2475":1,"2499":1,"2509":2,"2515":2,"2607":1,"2649":1,"2731":2,"2732":2}}],["applications",{"2":{"182":1,"1377":2,"1758":1,"2459":1,"2667":1,"2917":1,"2919":1}}],["apply",{"0":{"1528":1,"1529":1,"2730":1},"1":{"1529":1,"2731":1,"2732":1},"2":{"92":1,"199":1,"222":1,"341":1,"387":2,"391":1,"555":1,"720":1,"724":1,"1288":1,"1292":1,"1296":1,"1299":1,"1300":1,"1377":1,"1407":2,"1417":1,"1427":1,"1493":1,"1512":1,"1528":1,"1529":3,"1557":1,"1560":1,"1562":1,"1563":1,"1594":1,"1606":1,"2169":2,"2193":1,"2252":1,"2253":2,"2420":2,"2560":1,"2670":1,"2721":1}}],["applying",{"2":{"21":1,"320":1,"2253":1,"2420":1,"2627":3,"2919":1}}],["adequate",{"2":{"2414":1}}],["adelie",{"2":{"211":1}}],["adelais",{"2":{"134":6,"191":1}}],["adj",{"2":{"1939":3,"2277":3}}],["adjusting",{"2":{"1487":1,"1766":1,"1930":1}}],["adjusts",{"2":{"1482":1,"1771":1,"2185":2,"2286":1}}],["adjusted",{"2":{"856":1,"921":1,"955":1,"989":1,"1023":1,"1057":1,"1159":1,"2790":1}}],["adjustments",{"2":{"2901":1}}],["adjustment",{"0":{"1283":1},"2":{"236":1,"1846":2,"2042":1,"2069":4,"2182":3,"2185":1,"2276":1}}],["adjustable",{"2":{"134":1}}],["adjust",{"2":{"105":4,"149":2,"191":3,"198":1,"211":1,"266":1,"507":1,"613":1,"729":1,"857":1,"858":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1296":1,"1297":1,"1413":1,"1424":1,"1482":1,"1622":2,"1929":1,"1930":1,"1931":1,"2019":1,"2020":1,"2025":1,"2042":1,"2044":1,"2064":1,"2190":1,"2211":2,"2286":1,"2313":2,"2314":2,"2315":4,"2316":6,"2695":1,"2777":4,"2779":2,"2901":1}}],["adherence",{"2":{"2895":1}}],["adheres",{"2":{"2420":1}}],["adhere",{"2":{"1404":1,"2603":1}}],["adhlns",{"2":{"134":1}}],["ad",{"2":{"826":1,"855":1,"887":1}}],["administrator",{"2":{"685":1,"2324":1}}],["adm42",{"2":{"226":2,"236":1}}],["advice",{"2":{"2719":1}}],["advised",{"2":{"1193":1,"1196":1,"1479":1,"2651":1}}],["adventurous",{"2":{"1606":1}}],["advertised",{"2":{"594":1,"2569":1}}],["advantageous",{"2":{"2757":1}}],["advantages",{"2":{"1193":1,"1196":1,"2646":1,"2657":1,"2662":1}}],["advantage",{"2":{"93":1,"663":1,"1753":1,"2285":1,"2472":1}}],["advances",{"2":{"1948":8,"2283":8}}],["advanced",{"0":{"659":1,"759":1,"1203":1,"1379":1,"1399":1,"1421":1,"1451":1,"1455":1,"1465":1,"1585":1,"1597":1,"1601":1,"1748":1,"1753":1,"1906":1,"1909":1,"1916":1,"2025":1,"2038":1,"2041":1,"2150":1,"2153":1,"2311":1,"2925":1},"1":{"660":1,"661":1,"1204":1,"1205":1,"1380":1,"1381":1,"1382":1,"1383":1,"1384":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1,"1405":1,"1456":1,"1457":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1466":1,"1602":1,"1603":1,"1604":1,"1605":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1611":1,"1612":1,"1613":1,"1614":1,"1749":1,"1754":1,"1755":1,"1756":1,"1917":1,"1918":1,"2039":1,"2040":1,"2041":1,"2042":2,"2043":2,"2044":1},"2":{"49":1,"63":1,"93":1,"149":1,"249":1,"285":1,"561":1,"562":1,"597":1,"604":1,"759":2,"1203":1,"1300":1,"1340":1,"1376":1,"1378":1,"1421":1,"1455":1,"1485":1,"1597":2,"1634":1,"1638":6,"1751":1,"1849":2,"1913":2,"1916":2,"2006":1,"2025":1,"2038":1,"2072":2,"2073":3,"2074":2,"2302":3,"2303":1,"2308":1,"2310":3,"2311":2,"2312":1,"2425":1,"2471":1,"2496":1,"2614":1,"2668":1,"2697":1,"2721":1,"2744":1,"2923":1,"2924":1,"2925":2,"2937":1}}],["advance",{"0":{"2896":1},"2":{"30":1,"33":1,"378":1,"390":1,"1948":3,"2283":3,"2896":1}}],["adopted",{"2":{"537":1}}],["adoption",{"2":{"128":1}}],["adkb96",{"2":{"253":2}}],["adpenrose",{"2":{"211":2}}],["ad65",{"2":{"211":1}}],["adns9800",{"0":{"273":1,"276":1,"284":1},"2":{"118":1,"149":1,"273":3,"276":1,"277":1,"1999":6}}],["adns",{"0":{"1998":1,"1999":1},"2":{"118":2,"1998":2,"1999":2}}],["adns5050",{"2":{"118":1,"285":1,"1998":4}}],["adcconfig",{"2":{"2006":5}}],["adc6",{"2":{"695":1}}],["adcrpenablets",{"2":{"693":1}}],["adcd1",{"2":{"693":2}}],["adc3",{"2":{"692":3}}],["adc2",{"2":{"692":2}}],["adc1",{"2":{"692":1,"696":1}}],["adcv3",{"2":{"692":1}}],["adcv1",{"2":{"692":1}}],["adcs",{"2":{"692":2,"696":2}}],["adc",{"0":{"687":1,"724":1},"1":{"688":1,"689":1,"690":1,"691":1,"692":1,"693":1,"694":1,"695":1,"696":1,"697":1,"698":1},"2":{"93":1,"191":2,"234":2,"249":1,"687":1,"690":2,"692":7,"693":3,"695":5,"696":11,"698":12,"723":1,"724":11,"1766":2,"1767":1,"1768":1,"1770":2,"2000":1,"2006":5,"2685":1,"2851":5}}],["adb",{"2":{"75":1,"1354":2}}],["adalyn",{"2":{"143":2}}],["adafruitble",{"0":{"142":1},"2":{"142":1,"149":1}}],["adafruit",{"0":{"1390":1,"2368":1},"2":{"50":2,"133":1,"134":2,"142":1,"163":1,"176":3,"511":1,"686":3,"746":1,"747":1,"1388":1,"1391":1,"1394":1,"1675":1,"2367":1,"2368":4,"2483":1,"2487":1,"2492":3,"2695":1,"2721":1,"2888":1}}],["adaptation",{"2":{"2568":1}}],["adapting",{"2":{"2449":1}}],["adapter",{"2":{"378":1,"2439":1}}],["adapted",{"2":{"179":1}}],["adapt",{"2":{"32":1,"191":1,"2915":1}}],["addenda",{"0":{"1586":1}}],["added",{"2":{"14":1,"49":8,"63":1,"67":1,"72":2,"74":1,"81":1,"82":1,"86":1,"93":1,"112":1,"114":2,"132":1,"134":1,"149":4,"153":1,"154":1,"158":1,"160":1,"173":1,"175":2,"176":8,"189":1,"191":2,"196":1,"201":1,"202":1,"203":1,"211":1,"222":2,"230":1,"231":1,"234":3,"236":3,"243":1,"249":2,"266":2,"277":1,"285":1,"317":1,"331":1,"397":1,"450":1,"492":1,"507":1,"570":1,"611":1,"681":1,"1201":1,"1313":1,"1428":1,"1434":1,"1435":3,"1437":1,"1452":1,"1479":1,"1512":1,"1527":1,"1548":1,"1621":1,"1631":1,"1633":2,"1656":1,"1661":1,"1755":2,"1806":2,"1812":1,"1813":1,"1820":1,"1946":1,"2015":1,"2035":1,"2182":1,"2274":1,"2359":1,"2418":1,"2451":1,"2570":1,"2589":2,"2632":1,"2662":1,"2719":1,"2722":2,"2843":1}}],["addr2",{"2":{"919":1,"954":1,"1090":1,"1124":1,"1158":1}}],["addr1",{"2":{"919":1,"954":1,"1090":1,"1124":1,"1158":1}}],["addr",{"2":{"236":1,"746":1,"988":1,"1022":1,"1056":1,"1214":1,"2006":1,"2501":8}}],["addressed",{"2":{"747":1,"756":1,"2017":1}}],["addresses",{"2":{"236":1,"249":1,"733":1,"763":1,"804":1,"826":1,"830":1,"855":1,"862":1,"887":1,"892":1,"919":1,"927":1,"954":1,"961":1,"988":1,"995":1,"1022":1,"1029":1,"1056":1,"1063":1,"1090":1,"1097":1,"1124":1,"1131":1,"1158":1,"1165":1,"1214":1,"1218":1,"2161":1,"2726":1}}],["addressable",{"2":{"699":1,"1280":2,"2178":2}}],["addressing",{"0":{"763":1,"800":1,"826":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1214":1},"2":{"198":1,"201":1,"213":1,"224":1,"238":1,"611":1,"763":1,"1947":1,"2206":1,"2453":1}}],["address",{"0":{"770":1,"773":1,"776":1,"779":1,"794":2,"1728":2,"1730":2},"1":{"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":1,"781":1,"795":2,"796":2,"1729":2,"1731":2},"2":{"50":1,"73":1,"114":2,"191":1,"236":1,"577":1,"578":1,"579":1,"611":1,"668":2,"734":3,"746":9,"747":1,"750":1,"756":2,"763":6,"771":2,"773":1,"774":2,"777":2,"780":2,"782":1,"783":2,"785":1,"786":2,"788":1,"789":2,"791":1,"792":2,"794":2,"795":2,"800":2,"805":4,"808":1,"825":8,"826":5,"831":4,"835":1,"854":8,"855":5,"863":4,"867":1,"886":8,"887":5,"893":4,"897":1,"918":8,"919":17,"928":4,"932":1,"953":8,"954":17,"962":4,"966":1,"987":8,"988":5,"996":4,"1000":1,"1021":8,"1022":5,"1030":4,"1034":1,"1055":8,"1056":5,"1064":4,"1068":1,"1089":8,"1090":17,"1098":4,"1102":1,"1123":8,"1124":17,"1132":4,"1136":1,"1157":8,"1158":17,"1166":4,"1170":1,"1213":8,"1214":5,"1219":4,"1223":1,"1288":2,"1446":1,"1723":2,"1728":1,"1729":2,"1730":1,"1731":2,"1944":2,"1947":1,"2002":2,"2006":1,"2012":2,"2456":1,"2499":1,"2501":1,"2687":1,"2749":3,"2876":2}}],["additive",{"0":{"715":1,"1474":1},"2":{"222":3,"236":2,"249":1,"713":1,"717":2,"720":1,"1471":1,"1474":2,"1478":1,"2849":1}}],["addition",{"2":{"114":1,"176":1,"194":1,"211":34,"249":1,"328":1,"1375":1,"1422":1,"1451":1,"1615":1,"1747":1,"1798":1,"1849":1,"2072":1,"2207":1,"2252":1,"2287":1,"2302":1,"2424":1,"2512":1,"2897":1,"2902":2}}],["additionally",{"2":{"67":1,"86":1,"175":1,"209":1,"262":1,"586":1,"649":1,"714":1,"715":1,"1337":1,"1412":1,"1413":1,"1437":1,"1438":1,"1479":1,"1493":1,"1520":1,"1523":1,"1528":1,"1583":1,"1622":1,"1658":1,"1659":1,"1660":1,"1669":1,"1741":1,"1742":1,"1743":1,"1759":1,"1917":1,"2008":1,"2021":1,"2030":1,"2181":1,"2312":1,"2374":1,"2377":1,"2384":1,"2438":1,"2499":1,"2557":1,"2560":1,"2583":1,"2643":1,"2724":1,"2790":1}}],["additional",{"0":{"592":1,"1401":1,"1402":1,"1846":1,"1987":1,"2036":1,"2069":1,"2170":1,"2274":1,"2574":1,"2678":1,"2715":1},"1":{"1988":1,"1989":1,"1990":1,"1991":1,"1992":1,"1993":1,"1994":1,"1995":1,"2037":1,"2679":1,"2680":1,"2716":1,"2717":1},"2":{"50":1,"86":2,"94":1,"114":1,"134":1,"176":1,"189":1,"191":3,"198":1,"201":1,"210":1,"211":1,"213":1,"236":1,"308":1,"431":1,"486":1,"553":1,"621":1,"698":1,"1206":1,"1210":1,"1295":1,"1325":1,"1337":1,"1385":1,"1387":1,"1392":1,"1397":1,"1398":1,"1402":1,"1406":1,"1416":1,"1422":1,"1435":2,"1455":1,"1528":1,"1530":1,"1534":1,"1585":3,"1656":1,"1658":1,"1691":1,"1740":1,"1743":1,"1843":1,"1934":1,"1946":1,"1998":1,"2010":1,"2013":1,"2019":2,"2029":1,"2030":1,"2035":1,"2040":1,"2043":1,"2063":2,"2156":1,"2160":1,"2163":1,"2170":1,"2179":1,"2183":1,"2184":1,"2254":1,"2268":1,"2269":1,"2311":1,"2318":1,"2319":1,"2376":1,"2381":1,"2384":1,"2410":1,"2428":1,"2438":1,"2439":1,"2440":1,"2451":1,"2565":1,"2719":1,"2726":1,"2728":1,"2741":1,"2742":1,"2779":1,"2882":1,"2883":1,"2933":1,"2937":2,"2941":1}}],["additions",{"0":{"49":1,"63":1,"74":1,"93":1},"2":{"149":1,"211":147,"222":1,"236":1,"249":1,"285":1,"2405":1}}],["adding",{"0":{"14":1,"585":1,"665":1,"1627":1,"1628":1,"1925":1,"2035":1,"2587":1,"2588":1,"2704":1,"2705":1,"2706":1,"2707":1,"2937":1},"1":{"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"1926":1,"1927":1,"2036":1,"2037":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1},"2":{"74":1,"86":1,"99":1,"114":1,"173":1,"201":1,"213":1,"236":1,"249":1,"266":1,"277":1,"427":1,"498":1,"590":1,"594":1,"627":1,"665":1,"666":1,"670":1,"731":1,"750":1,"802":1,"828":1,"856":1,"860":1,"890":1,"921":1,"925":1,"955":1,"959":1,"989":1,"993":1,"1023":1,"1027":1,"1057":1,"1061":1,"1095":1,"1129":1,"1159":1,"1163":1,"1216":1,"1284":1,"1339":1,"1340":1,"1351":1,"1387":1,"1393":1,"1402":1,"1410":1,"1416":1,"1450":2,"1474":1,"1495":1,"1511":1,"1527":1,"1589":1,"1591":1,"1596":1,"1616":1,"1620":1,"1656":1,"1659":1,"1680":1,"1803":1,"1913":1,"1939":1,"1995":1,"2015":1,"2017":1,"2035":1,"2036":2,"2040":1,"2049":1,"2159":1,"2178":1,"2264":1,"2265":1,"2269":1,"2277":1,"2302":2,"2323":1,"2371":1,"2403":2,"2411":1,"2428":1,"2585":1,"2633":1,"2645":1,"2667":1,"2698":1,"2700":1,"2704":2,"2721":1,"2722":2,"2749":11,"2883":1,"2884":2,"2899":1,"2908":1,"2909":1,"2914":1,"2915":1,"2937":1,"2942":2}}],["add",{"0":{"35":1,"163":1,"173":1,"450":1,"666":1,"667":1,"670":1,"671":1,"1338":1,"1812":1,"1818":1,"1963":1,"2037":1,"2357":1,"2599":1,"2600":1},"1":{"36":1,"668":1,"669":1,"1339":1,"1813":1,"1814":1,"1819":1,"1820":1,"1964":1,"2358":1,"2359":1},"2":{"28":1,"31":1,"32":2,"34":2,"49":4,"63":5,"65":4,"70":1,"74":5,"76":2,"77":2,"92":1,"93":24,"110":2,"114":38,"119":1,"123":1,"130":2,"133":2,"134":26,"149":21,"160":21,"175":1,"176":33,"189":4,"190":1,"191":27,"199":25,"202":2,"211":25,"221":1,"222":18,"235":1,"236":30,"249":23,"266":15,"273":1,"277":7,"285":17,"294":8,"307":3,"308":15,"317":5,"328":15,"333":3,"338":6,"397":1,"405":1,"421":1,"422":1,"450":2,"493":1,"503":1,"507":1,"508":1,"520":1,"548":1,"570":2,"585":1,"587":1,"591":1,"594":1,"611":4,"621":2,"622":2,"623":2,"645":2,"664":6,"666":1,"667":1,"670":1,"671":1,"681":2,"688":1,"700":1,"701":1,"722":1,"727":1,"728":1,"729":1,"762":1,"798":1,"799":1,"824":1,"825":1,"853":1,"854":1,"857":1,"858":1,"885":1,"886":1,"888":1,"917":1,"918":1,"922":1,"923":1,"952":1,"953":1,"956":1,"957":1,"986":1,"987":1,"990":1,"991":1,"1020":1,"1021":1,"1024":1,"1025":1,"1054":1,"1055":1,"1058":1,"1059":1,"1088":1,"1089":1,"1092":1,"1093":1,"1122":1,"1123":1,"1126":1,"1127":1,"1156":1,"1157":1,"1160":1,"1161":1,"1200":3,"1201":3,"1206":1,"1210":1,"1212":1,"1213":1,"1243":1,"1264":1,"1281":1,"1282":1,"1285":1,"1294":1,"1297":1,"1298":1,"1308":1,"1319":1,"1326":1,"1327":1,"1328":1,"1353":1,"1359":1,"1369":1,"1375":3,"1389":1,"1400":1,"1404":1,"1411":1,"1413":4,"1425":1,"1435":4,"1436":1,"1437":1,"1441":3,"1442":2,"1443":7,"1450":1,"1466":1,"1467":1,"1471":1,"1472":1,"1478":1,"1479":1,"1484":2,"1486":2,"1487":1,"1494":1,"1497":3,"1504":1,"1511":1,"1512":1,"1516":1,"1520":1,"1528":1,"1536":1,"1537":1,"1550":1,"1551":1,"1552":1,"1583":1,"1584":1,"1585":1,"1588":3,"1594":2,"1596":1,"1599":1,"1616":1,"1621":1,"1627":1,"1628":2,"1640":1,"1655":1,"1657":1,"1658":1,"1661":2,"1692":1,"1693":1,"1695":1,"1738":1,"1760":1,"1767":1,"1769":1,"1800":2,"1804":1,"1805":1,"1806":1,"1818":1,"1819":1,"1839":1,"1844":2,"1915":1,"1916":1,"1926":1,"1938":1,"1951":1,"1956":2,"1959":1,"1994":1,"1996":1,"1998":1,"1999":1,"2000":1,"2001":1,"2005":1,"2010":1,"2011":1,"2012":1,"2013":1,"2014":2,"2029":1,"2040":1,"2048":1,"2059":1,"2065":1,"2066":2,"2067":1,"2157":1,"2159":1,"2160":1,"2174":1,"2179":1,"2181":1,"2184":1,"2192":1,"2193":1,"2205":1,"2213":1,"2214":1,"2218":1,"2243":1,"2261":2,"2264":1,"2265":2,"2266":1,"2267":2,"2269":1,"2270":1,"2271":1,"2273":1,"2277":1,"2286":2,"2287":1,"2288":1,"2289":1,"2290":1,"2305":3,"2310":3,"2311":2,"2312":1,"2313":1,"2315":1,"2319":1,"2320":1,"2321":1,"2322":4,"2323":1,"2324":3,"2357":1,"2358":1,"2369":1,"2377":1,"2384":1,"2403":3,"2410":2,"2424":1,"2449":1,"2496":1,"2563":1,"2578":1,"2579":1,"2588":4,"2600":1,"2601":2,"2627":2,"2630":2,"2632":3,"2633":5,"2662":1,"2693":1,"2696":1,"2721":1,"2746":1,"2747":1,"2750":4,"2752":1,"2757":1,"2774":1,"2779":2,"2781":1,"2878":1,"2879":1,"2882":1,"2883":2,"2887":1,"2899":2,"2901":1,"2908":2,"2909":2,"2910":3,"2917":3,"2919":1,"2937":2,"2939":1,"2941":3,"2942":7}}],["adds",{"2":{"13":1,"35":1,"49":2,"50":1,"74":1,"107":1,"114":1,"173":1,"222":1,"229":1,"249":1,"277":1,"297":1,"441":1,"450":1,"563":1,"1443":1,"1487":1,"1532":1,"1627":1,"2270":1,"2286":1,"2302":1,"2376":1,"2633":1,"2667":1,"2941":1}}],["agin",{"2":{"2509":1,"2515":1}}],["age",{"2":{"1406":1}}],["ag",{"2":{"1375":1,"1479":4,"1480":8,"2513":7,"2531":7}}],["agaim",{"2":{"649":1}}],["again",{"2":{"114":1,"134":1,"149":1,"396":1,"594":1,"684":2,"1317":1,"1416":2,"1466":1,"1477":1,"1492":1,"1520":1,"1533":1,"1612":1,"1613":1,"1642":1,"1655":2,"1732":2,"1734":1,"1746":1,"1752":1,"1755":1,"1756":1,"1759":1,"1761":1,"2031":1,"2164":1,"2167":2,"2191":1,"2268":1,"2302":1,"2303":1,"2380":1,"2409":1,"2459":1,"2501":1,"2509":4,"2515":4,"2526":1,"2620":1,"2643":1,"2721":1}}],["against",{"2":{"26":1,"49":1,"51":1,"134":1,"176":1,"251":1,"263":1,"265":2,"275":1,"399":1,"405":1,"406":1,"457":2,"492":1,"587":1,"746":1,"1522":1,"2407":1,"2420":1,"2495":1,"2567":1,"2627":1,"2718":1,"2723":1,"2840":1,"2895":1,"2932":1}}],["agreed",{"2":{"204":1,"2700":1}}],["agnostic",{"0":{"1431":1},"1":{"1432":1,"1433":1},"2":{"17":1,"114":1,"757":1,"1401":1,"1433":1}}],["abab",{"0":{"2906":1}}],["abba",{"0":{"2905":1}}],["abbreviate",{"2":{"527":1}}],["abbreviations",{"2":{"527":1,"1587":1}}],["abbreviation",{"2":{"527":1,"2687":1}}],["abuse",{"2":{"2566":1,"2721":1}}],["abuser",{"2":{"619":1}}],["ab5",{"2":{"1919":1,"2532":1}}],["ab4",{"2":{"1919":1,"2532":1}}],["ab3",{"2":{"1919":1,"2532":1}}],["ab375d3",{"2":{"74":1}}],["ab2",{"2":{"1919":1,"2532":1}}],["ab1",{"2":{"1919":1,"2532":1}}],["ab",{"2":{"1599":4,"1611":5,"1616":1,"1919":1,"2532":1,"2904":6,"2905":1,"2906":4}}],["abc",{"2":{"317":1}}],["abcd",{"2":{"266":1,"1329":2}}],["abcminiuser",{"2":{"12":1}}],["abort",{"2":{"2627":2}}],["aborted",{"2":{"765":1}}],["above",{"2":{"228":1,"233":1,"266":1,"276":1,"307":2,"333":1,"373":1,"405":1,"408":1,"418":1,"489":1,"521":1,"525":1,"587":1,"589":1,"617":1,"645":1,"654":1,"655":1,"670":1,"756":1,"760":2,"1283":1,"1327":1,"1330":1,"1346":1,"1362":1,"1404":1,"1413":5,"1416":1,"1419":1,"1443":1,"1454":1,"1497":2,"1532":4,"1557":1,"1606":1,"1630":2,"1675":1,"1760":1,"1765":1,"1791":1,"1920":1,"2002":1,"2007":1,"2015":1,"2018":1,"2020":1,"2042":1,"2044":1,"2159":1,"2168":1,"2190":1,"2191":1,"2198":1,"2253":2,"2268":1,"2273":1,"2296":1,"2302":1,"2311":1,"2312":4,"2322":1,"2324":1,"2376":1,"2409":1,"2416":2,"2439":1,"2498":1,"2501":1,"2549":1,"2567":1,"2570":1,"2571":1,"2576":1,"2601":1,"2605":1,"2619":1,"2622":1,"2667":2,"2679":1,"2702":1,"2707":1,"2714":1,"2721":1,"2722":1,"2749":2,"2750":4,"2761":1,"2762":1,"2901":1,"2907":3,"2908":3,"2909":1,"2911":1,"2912":1,"2916":1,"2919":1,"2930":1,"2931":1,"2932":1}}],["about",{"2":{"49":1,"50":1,"93":1,"110":1,"114":1,"160":1,"176":1,"240":1,"251":1,"371":1,"403":1,"408":1,"435":2,"517":1,"548":2,"568":6,"569":1,"576":1,"608":2,"611":2,"617":1,"618":1,"624":2,"630":1,"642":1,"663":1,"763":1,"1311":1,"1318":1,"1339":1,"1341":1,"1376":1,"1416":1,"1531":1,"1630":1,"1655":1,"1929":1,"1947":2,"1956":2,"2006":1,"2170":1,"2186":1,"2254":1,"2268":6,"2293":3,"2403":1,"2415":1,"2424":1,"2445":1,"2515":1,"2553":1,"2567":1,"2569":2,"2573":1,"2603":1,"2663":1,"2667":1,"2721":2,"2751":1,"2844":2,"2845":1,"2920":1,"2923":1,"2924":1,"2932":2}}],["abstracted",{"2":{"2668":1}}],["abstracting",{"2":{"2411":2}}],["abstraction",{"2":{"249":1,"277":1,"757":1,"759":1,"1535":1,"1839":1,"2059":1,"2700":1,"2719":1,"2817":1}}],["abstractions",{"2":{"244":1,"1401":1,"2719":2}}],["absence",{"2":{"714":1,"1190":1}}],["absent",{"2":{"431":2,"2864":1,"2870":1,"2871":1}}],["absinthe",{"2":{"159":2}}],["absolutely",{"2":{"2424":1,"2721":1}}],["absolute",{"0":{"2007":1,"2008":1},"2":{"100":1,"114":1,"461":1,"1639":1,"1653":1,"2006":4,"2245":1,"2495":1,"2862":4}}],["abelx",{"2":{"134":1}}],["ability",{"2":{"49":2,"65":1,"93":1,"100":1,"114":1,"131":1,"134":1,"153":1,"160":1,"164":1,"173":1,"174":1,"176":1,"199":1,"285":1,"563":1,"653":1,"765":1,"1198":1,"1377":2,"1415":1,"1656":1,"2178":1,"2270":1,"2271":1,"2667":1,"2728":1,"2894":1,"2895":1,"2910":3}}],["able",{"2":{"23":1,"50":1,"114":1,"153":2,"228":1,"308":1,"406":1,"498":1,"594":1,"599":1,"611":1,"617":1,"624":1,"627":1,"684":1,"1317":1,"1407":1,"1412":1,"1429":1,"1434":1,"1444":1,"1547":1,"1675":2,"1735":1,"1736":1,"1753":1,"1805":1,"1845":1,"1913":1,"1990":1,"2025":1,"2050":1,"2068":1,"2179":1,"2208":1,"2287":1,"2291":1,"2298":1,"2303":1,"2312":1,"2374":1,"2375":1,"2393":1,"2395":1,"2397":1,"2403":1,"2460":1,"2605":1,"2612":1,"2622":1,"2648":1,"2649":1,"2667":1,"2702":2,"2703":1,"2749":1,"2778":1,"2877":1,"2923":1,"2925":1,"2939":1}}],["abnt2",{"2":{"5":1,"2707":1,"2880":2}}],["acl2",{"2":{"1927":1,"1931":7,"1932":2,"2533":1}}],["acl1",{"2":{"1927":1,"1931":8,"1932":2,"2533":1}}],["acl0",{"2":{"1927":1,"1931":7,"1932":2,"2533":1}}],["acm=y",{"2":{"1314":1}}],["acm",{"2":{"1314":1}}],["acknowledge",{"2":{"563":1,"2191":1}}],["acknowledgment",{"2":{"312":1}}],["achievable",{"2":{"2894":1}}],["achieved",{"2":{"1765":1,"1947":1,"2750":1,"2877":1}}],["achieve",{"2":{"1747":1,"2211":1,"2310":1,"2416":1,"2418":1,"2749":1}}],["achordion",{"2":{"294":1}}],["acheron",{"2":{"211":2}}],["acquire",{"2":{"277":1,"2400":1}}],["ac",{"2":{"236":1,"1450":1,"1520":1,"1523":1,"1524":3,"2219":1,"2519":3,"2914":1}}],["acid",{"2":{"211":1}}],["acid3",{"2":{"143":13,"149":2,"308":1}}],["acr60",{"0":{"256":1},"1":{"257":1,"258":1,"259":1,"260":1},"2":{"143":2,"256":1,"266":1}}],["across",{"2":{"31":1,"34":1,"118":1,"128":1,"137":1,"138":1,"167":1,"246":1,"262":1,"283":1,"285":1,"757":1,"1532":1,"1696":1,"2318":1,"2908":1}}],["accident",{"2":{"2901":1}}],["accidental",{"2":{"246":1,"289":1,"1459":1,"1602":1,"1608":1,"2911":1,"2914":1}}],["accidentally",{"2":{"194":1,"198":1,"684":1,"2050":1}}],["accumulates",{"2":{"2191":1}}],["accumulate",{"2":{"2025":1}}],["accumulated",{"2":{"2025":13}}],["accuracy",{"2":{"1932":1,"2284":1}}],["accurately",{"2":{"1840":1,"2060":1,"2710":1}}],["accurate",{"2":{"10":1,"1193":1,"1196":1,"1285":1,"2372":1,"2459":1}}],["accompanying",{"2":{"2568":1,"2722":1}}],["accompanied",{"2":{"118":1,"1495":1,"2897":1}}],["accomplish",{"2":{"1385":1,"1417":1,"2303":1,"2560":1,"2573":1}}],["accomplished",{"2":{"597":1}}],["accommodate",{"2":{"149":1,"1480":1,"1603":1}}],["accounted",{"2":{"1283":1}}],["account",{"2":{"149":1,"211":1,"222":1,"302":1,"468":1,"611":2,"2403":2,"2446":1,"2499":1,"2585":1,"2592":2,"2595":1,"2625":2}}],["according",{"2":{"134":2,"695":1,"696":1,"1958":1,"2064":1,"2440":1,"2599":1,"2609":1,"2915":1,"2916":1}}],["accordingly",{"2":{"126":1,"220":1,"334":1,"920":1,"1091":1,"1125":1,"2312":1,"2439":1,"2695":1,"2704":1}}],["accented",{"2":{"2879":1}}],["accel",{"2":{"1931":3}}],["accelerating",{"2":{"1930":1}}],["acceleration",{"2":{"48":2,"1927":6,"1928":1,"1929":4,"1930":3,"1931":1,"1932":4,"1933":1,"1934":4,"1995":1,"2533":6}}],["accelerate",{"2":{"2421":1,"2933":1}}],["accelerates",{"2":{"1928":4,"1933":1}}],["accelerated",{"0":{"1929":1},"2":{"1928":1,"1929":1,"1930":5,"1932":2,"1933":1}}],["accel2",{"2":{"231":1}}],["accessor",{"2":{"2750":2}}],["accessible",{"2":{"1345":1,"2424":1}}],["accessing",{"2":{"323":1,"373":1,"1375":1,"2619":1,"2750":2}}],["accessed",{"2":{"558":1,"1375":1,"1759":1}}],["accesses",{"2":{"114":1,"1761":1}}],["access",{"2":{"222":1,"240":1,"308":1,"323":1,"384":1,"487":2,"490":1,"493":4,"498":1,"546":1,"654":1,"668":2,"690":1,"757":1,"1329":1,"1412":1,"1444":1,"1634":1,"1657":1,"1749":1,"1759":1,"1917":1,"2410":4,"2513":1,"2595":1,"2601":2,"2660":1,"2664":2,"2721":1,"2778":2,"2901":2}}],["acceptable",{"2":{"2719":1,"2721":1}}],["acceptance",{"2":{"397":1}}],["accepts",{"2":{"396":1,"431":1,"461":1,"579":1,"2748":1,"2750":2}}],["accepted",{"2":{"201":1,"265":1,"397":1,"607":1,"613":1,"1434":1,"2569":1,"2720":1,"2721":3}}],["accepting",{"2":{"199":1,"213":1,"224":1,"606":1,"1340":1,"2705":1,"2706":1}}],["accept",{"2":{"173":1,"520":1,"1416":1,"1717":1,"2215":1,"2403":1,"2411":1,"2443":1,"2447":1,"2495":1,"2721":1}}],["actor",{"2":{"2600":3}}],["acto",{"2":{"2273":1}}],["acts",{"2":{"1765":2,"2528":1,"2559":1,"2827":1,"2913":1}}],["act",{"2":{"283":3,"743":1,"1375":1,"1587":1,"2040":1,"2159":1,"2309":1,"2459":1,"2566":1,"2632":1}}],["actuators",{"2":{"1679":1}}],["actuated",{"2":{"1675":4,"2427":1}}],["actuation",{"2":{"236":1,"1675":1}}],["actual",{"2":{"361":1,"391":1,"628":1,"630":1,"649":1,"1368":1,"1377":1,"1796":1,"1941":1,"1955":1,"2006":1,"2050":1,"2207":1,"2279":1,"2293":1,"2463":1,"2465":1,"2475":1,"2489":1,"2875":1,"2929":1,"2935":1}}],["actually",{"2":{"13":1,"28":1,"51":1,"83":1,"182":1,"453":1,"551":1,"584":1,"613":1,"692":1,"747":1,"751":1,"1335":1,"1342":1,"1347":1,"1353":1,"1358":1,"1406":1,"1417":1,"1441":1,"1442":1,"1523":1,"1947":1,"2021":1,"2212":1,"2215":1,"2258":1,"2259":1,"2293":1,"2310":1,"2427":2,"2463":1,"2466":2,"2496":1,"2704":1,"2775":1,"2787":1,"2877":2,"2901":1,"2920":1,"2942":1}}],["activating",{"2":{"246":1,"328":1,"1416":1,"1752":3,"1761":1,"1995":1,"2030":1,"2689":1,"2910":1}}],["activation",{"0":{"246":1,"1607":1,"1754":1,"2045":1},"2":{"152":1,"246":1,"289":1,"328":1,"1377":1,"1378":1,"1459":1,"1588":1,"1612":1,"1675":2,"1749":1,"1751":1,"1752":3,"1754":1,"2034":2,"2039":2,"2045":6,"2046":1,"2247":2,"2914":1}}],["activates",{"2":{"1416":6,"1421":1,"1450":1,"1595":1,"1740":1,"1749":1,"2016":1,"2313":1,"2553":1,"2693":1}}],["activate",{"0":{"2031":1},"2":{"194":2,"211":1,"613":1,"1192":1,"1195":1,"1198":1,"1200":2,"1201":2,"1309":1,"1416":1,"1421":1,"1467":1,"1587":1,"1588":6,"1589":1,"1598":2,"1605":1,"1606":2,"1607":1,"1609":1,"1611":1,"1619":1,"1684":2,"1736":1,"1742":1,"1746":2,"1751":3,"1752":1,"1754":4,"2030":3,"2045":1,"2247":3,"2287":1,"2324":1,"2554":1,"2559":1,"2644":1,"2693":1,"2778":1,"2818":1,"2854":2,"2901":1,"2910":1}}],["activated",{"2":{"73":1,"236":1,"1416":4,"1421":1,"1450":1,"1479":1,"1480":2,"1552":1,"1589":1,"1603":1,"1610":1,"1611":1,"1675":1,"1751":3,"1754":1,"1931":1,"2045":1,"2193":1,"2459":1,"2693":1,"2695":1}}],["actively",{"2":{"2555":1,"2566":1}}],["active",{"0":{"1817":1,"2043":1,"2353":1},"1":{"2354":1},"2":{"105":8,"149":1,"191":1,"199":1,"249":1,"312":2,"320":1,"594":1,"1375":3,"1377":2,"1378":2,"1416":5,"1419":1,"1421":2,"1422":2,"1426":1,"1455":1,"1466":5,"1478":1,"1527":2,"1587":1,"1592":1,"1594":1,"1595":3,"1613":1,"1622":7,"1627":1,"1672":4,"1675":3,"1681":1,"1684":1,"1751":3,"1761":1,"1817":1,"1931":2,"2016":3,"2025":2,"2030":1,"2034":1,"2037":1,"2039":2,"2042":2,"2045":2,"2046":1,"2156":1,"2160":1,"2188":1,"2189":4,"2246":1,"2247":4,"2269":1,"2271":2,"2302":1,"2303":2,"2312":3,"2328":1,"2353":1,"2354":1,"2528":1,"2549":2,"2554":1,"2563":1,"2643":1,"2645":1,"2817":1,"2919":1}}],["activity",{"2":{"74":2,"211":2,"249":1,"645":5,"2173":1,"2177":2,"2269":3,"2676":1,"2864":1,"2871":1,"2873":2}}],["acting",{"2":{"14":1,"2783":1}}],["actioned",{"2":{"16":1}}],["actions",{"0":{"3":1,"7":1,"15":1,"1927":1,"2590":1},"2":{"3":2,"7":3,"15":2,"16":1,"38":1,"114":2,"134":2,"247":1,"320":1,"396":1,"403":1,"411":1,"572":1,"577":1,"578":1,"1350":1,"1406":1,"1413":1,"1448":1,"1557":1,"1596":1,"1599":1,"1736":2,"1751":2,"1758":1,"1925":1,"1927":1,"1952":1,"2172":1,"2302":3,"2305":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":3,"2461":1,"2548":1,"2583":1,"2584":1,"2588":1,"2590":1,"2592":1,"2600":3,"2602":1,"2603":1,"2656":1,"2744":1,"2902":1,"2917":1,"2919":3}}],["action",{"0":{"3":1,"7":1,"15":1,"40":1,"53":1,"67":1,"72":1,"85":1,"101":1,"121":1,"139":1,"140":1,"155":1,"165":1,"180":1,"193":1,"205":1,"216":1,"225":1,"239":1,"252":1,"269":1,"280":1,"290":1,"299":1,"310":1,"321":1,"2295":1,"2600":1},"1":{"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"86":1,"87":1,"88":1,"89":1,"90":1,"102":1,"103":1,"104":1,"105":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"140":1,"141":1,"142":1,"143":1,"156":1,"157":1,"158":1,"159":1,"166":1,"167":1,"168":1,"169":1,"170":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"194":1,"195":1,"196":1,"197":1,"206":1,"207":1,"217":1,"218":1,"219":1,"220":1,"221":1,"226":1,"240":1,"241":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"270":1,"271":1,"272":1,"273":1,"281":1,"291":1,"300":1,"311":1,"312":1,"322":1,"323":1,"324":1,"325":1,"2296":1,"2297":1,"2298":1,"2299":1},"2":{"16":1,"38":9,"49":1,"75":2,"120":7,"140":1,"149":2,"199":6,"203":1,"211":1,"317":1,"323":3,"324":6,"325":4,"347":1,"408":3,"485":1,"560":3,"562":1,"563":1,"577":1,"586":1,"603":1,"684":1,"1421":1,"1443":1,"1445":7,"1448":9,"1512":2,"1527":3,"1596":1,"1599":3,"1616":2,"1735":1,"1749":1,"1751":2,"1757":1,"1758":2,"1846":2,"1928":1,"1929":1,"1931":4,"2069":4,"2156":1,"2159":1,"2161":1,"2182":3,"2191":1,"2295":2,"2302":12,"2303":2,"2305":2,"2307":2,"2308":4,"2309":7,"2310":6,"2311":2,"2312":4,"2547":5,"2552":1,"2591":1,"2662":1,"2824":1,"2882":2,"2883":2,"2885":1,"2902":6,"2908":7,"2909":5,"2917":2,"2933":1}}],["averages",{"2":{"2724":1}}],["average",{"2":{"2371":1,"2372":2,"2899":1}}],["avail",{"2":{"2605":1}}],["availability",{"2":{"674":1,"2721":1}}],["available",{"0":{"1278":1,"1405":1,"2452":1},"1":{"1279":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1},"2":{"10":1,"73":1,"83":1,"124":2,"153":1,"160":1,"164":1,"186":1,"189":1,"202":1,"210":1,"211":1,"213":1,"232":2,"235":1,"283":1,"285":1,"288":2,"298":1,"364":1,"371":1,"373":1,"405":1,"428":1,"432":1,"442":1,"467":3,"486":1,"508":1,"554":1,"568":4,"573":1,"576":1,"583":1,"613":1,"663":1,"666":1,"674":1,"698":1,"711":1,"713":1,"746":1,"747":1,"751":2,"800":1,"1189":1,"1193":1,"1198":1,"1202":1,"1208":1,"1209":1,"1210":1,"1263":1,"1279":1,"1308":1,"1320":1,"1323":1,"1340":1,"1342":2,"1345":1,"1386":1,"1392":1,"1406":1,"1435":1,"1442":1,"1478":1,"1479":2,"1483":1,"1484":2,"1487":1,"1526":1,"1600":1,"1626":1,"1672":2,"1743":1,"1843":1,"1950":1,"1979":1,"1986":1,"1990":1,"2015":1,"2018":1,"2020":1,"2063":1,"2210":1,"2290":1,"2370":2,"2371":2,"2375":1,"2376":1,"2378":1,"2379":1,"2380":1,"2381":1,"2384":1,"2385":1,"2387":1,"2390":1,"2392":1,"2393":2,"2395":2,"2397":2,"2410":2,"2420":1,"2426":1,"2435":1,"2437":1,"2438":3,"2467":1,"2475":1,"2494":1,"2514":1,"2521":2,"2567":1,"2568":2,"2606":1,"2614":1,"2621":1,"2671":1,"2672":1,"2697":1,"2709":1,"2716":1,"2717":1,"2721":1,"2729":1,"2738":1,"2741":1,"2742":1,"2750":6,"2878":1,"2879":1}}],["avalon",{"2":{"211":1}}],["avoids",{"2":{"1425":1,"2591":1}}],["avoided",{"0":{"2675":1},"2":{"539":1,"540":1,"545":1,"677":1,"2569":1,"2675":3,"2679":1,"2750":1}}],["avoiding",{"0":{"1522":1},"2":{"338":3,"397":1,"1421":1}}],["avoid",{"0":{"528":1},"2":{"34":1,"114":2,"176":1,"191":1,"195":1,"271":1,"289":1,"308":1,"492":1,"524":1,"536":1,"544":1,"613":1,"663":1,"676":1,"1329":1,"1412":1,"1418":1,"1422":2,"1479":1,"1564":1,"1587":1,"1662":1,"1696":1,"1948":1,"2021":1,"2039":1,"2043":2,"2050":1,"2372":1,"2424":3,"2591":1,"2651":1,"2911":1,"2914":1,"2929":1}}],["avrisp",{"2":{"2477":1,"2481":1,"2495":1}}],["avr109",{"2":{"2379":3}}],["avr8",{"2":{"571":1}}],["avrdudess",{"2":{"2379":1,"2382":1}}],["avrdude",{"2":{"236":1,"566":2,"1443":1,"2266":3,"2379":3,"2380":6,"2382":2,"2410":1,"2477":2,"2479":2,"2481":2,"2483":3,"2485":2,"2487":2,"2489":2,"2495":19,"2496":2}}],["avrs",{"2":{"160":1,"2376":1,"2882":1}}],["avr",{"0":{"123":1,"511":1,"571":1,"690":1,"695":1,"712":1,"764":1,"1244":1,"1265":1,"1468":1,"1558":1,"1983":1,"2453":1,"2796":1,"2881":1},"1":{"1469":1,"1559":1,"1560":1,"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"2":1,"28":2,"74":1,"111":1,"113":1,"114":5,"123":2,"130":1,"134":3,"149":3,"153":2,"160":4,"166":1,"172":1,"176":5,"191":2,"199":1,"211":1,"215":2,"222":2,"266":2,"308":1,"510":3,"568":2,"609":1,"617":1,"687":2,"712":1,"743":2,"758":2,"759":2,"1189":1,"1245":1,"1287":2,"1365":1,"1389":1,"1390":1,"1768":1,"1937":4,"1947":1,"1948":2,"2254":2,"2255":1,"2266":3,"2268":1,"2367":1,"2368":1,"2375":1,"2382":1,"2383":1,"2411":1,"2450":1,"2453":1,"2475":1,"2483":1,"2489":1,"2495":2,"2496":3,"2646":1,"2650":1,"2655":1,"2693":1,"2746":1,"2796":1,"2811":1,"2828":1,"2837":1,"2881":2,"2894":1,"2924":1,"2927":2}}],["au",{"2":{"1479":3,"1483":2,"1489":5,"2517":5}}],["audience",{"2":{"537":1}}],["audio",{"0":{"28":1,"215":1,"711":1,"1366":1,"1467":1,"1480":1,"1482":1,"1487":1,"1489":1,"2321":1,"2517":1,"2849":1,"2884":1},"1":{"712":1,"713":1,"714":1,"715":1,"716":1,"717":1,"718":1,"719":1,"720":1,"1468":1,"1469":1,"1470":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"1478":1,"1479":1,"1480":1,"1481":1,"1482":1,"1483":1,"1484":1,"1485":1,"1486":1,"1487":1,"1488":1,"1489":1,"2323":1},"2":{"28":6,"70":1,"74":1,"75":1,"105":4,"111":1,"112":2,"114":1,"133":1,"134":1,"149":1,"188":1,"191":3,"215":1,"222":6,"231":4,"236":1,"249":2,"266":3,"294":1,"317":1,"333":1,"559":26,"572":3,"649":1,"711":2,"713":3,"714":4,"715":1,"716":12,"717":4,"718":5,"719":5,"1366":1,"1389":1,"1402":1,"1436":1,"1448":1,"1467":1,"1468":10,"1469":2,"1470":1,"1471":6,"1472":3,"1473":3,"1474":7,"1475":2,"1476":4,"1477":5,"1478":3,"1479":17,"1480":10,"1481":3,"1482":2,"1483":8,"1487":18,"1489":19,"1529":2,"1560":1,"1622":4,"1794":2,"1807":3,"2214":1,"2321":1,"2411":4,"2510":3,"2515":3,"2517":20,"2685":1,"2780":2,"2783":1,"2849":5,"2883":1,"2884":1,"2924":1,"2933":1}}],["austin",{"2":{"211":1}}],["aurora",{"2":{"191":2}}],["authentication",{"0":{"2595":1}}],["authenticated",{"2":{"584":1,"2595":1}}],["authenticate",{"2":{"312":1}}],["author",{"2":{"1628":1,"2449":1,"2567":3,"2719":1}}],["authored",{"2":{"38":1}}],["authorship",{"2":{"1438":1}}],["authors",{"2":{"32":1,"1628":1,"1629":1}}],["autoload",{"2":{"507":1}}],["auto+retro",{"2":{"236":1}}],["autocorrected",{"2":{"1523":1,"1529":1}}],["autocorrection",{"0":{"1520":1},"2":{"1520":1,"1522":1,"1523":1,"1528":1,"1529":3,"1531":1,"1532":1}}],["autocorrect",{"0":{"179":1,"1518":1,"1521":1,"1523":1,"1526":1,"1527":1,"1528":1,"1529":1,"1530":1,"2519":1},"1":{"1519":1,"1520":1,"1521":1,"1522":2,"1523":1,"1524":2,"1525":1,"1526":1,"1527":2,"1528":1,"1529":2,"1530":1,"1531":1,"1532":1,"1533":1,"1534":1},"2":{"179":2,"188":1,"191":2,"211":1,"222":2,"328":1,"1520":1,"1521":6,"1522":1,"1523":2,"1524":6,"1526":6,"1527":6,"1528":1,"1529":6,"1530":9,"1531":1,"1532":1,"2519":7}}],["automation",{"2":{"2646":1,"2657":1}}],["automatically",{"2":{"173":1,"201":1,"246":1,"403":1,"415":1,"427":1,"428":1,"433":1,"435":1,"438":1,"440":1,"443":1,"458":1,"492":1,"493":1,"502":2,"521":2,"615":1,"617":1,"654":1,"683":1,"700":1,"712":1,"727":1,"751":2,"762":1,"798":1,"824":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1282":1,"1285":1,"1434":3,"1435":1,"1443":1,"1479":2,"1506":1,"1518":1,"1519":1,"1521":1,"1587":1,"1592":1,"1614":2,"1631":1,"1633":2,"1846":1,"1951":1,"1958":1,"1995":1,"2000":1,"2030":1,"2064":1,"2065":1,"2069":1,"2198":1,"2212":1,"2272":1,"2286":2,"2324":1,"2370":1,"2375":1,"2376":2,"2377":1,"2379":1,"2381":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2400":1,"2409":1,"2441":1,"2489":1,"2521":1,"2583":1,"2590":1,"2602":1,"2749":1,"2854":1}}],["automatic",{"0":{"246":1,"2030":1,"2173":1},"1":{"2031":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1},"2":{"134":1,"190":2,"191":1,"246":1,"751":1,"1389":1,"1390":1,"1493":1,"2046":1}}],["automata02",{"2":{"222":1}}],["automate",{"2":{"199":1}}],["automated",{"2":{"10":1,"198":1,"663":1,"1385":1,"2840":1}}],["autoshifted",{"2":{"1504":1}}],["autoshift",{"2":{"93":1,"191":1,"1497":4,"1511":3}}],["auto",{"0":{"521":1,"1490":1,"1491":1,"1493":1,"1494":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":2,"1507":1,"1508":1,"1509":1,"1510":1,"1514":1,"2039":1,"2042":1,"2044":1,"2046":1,"2518":1},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":2,"1498":2,"1499":2,"1500":2,"1501":2,"1502":2,"1503":2,"1504":2,"1505":2,"1506":2,"1507":2,"1508":2,"1509":2,"1510":2,"1511":1,"1512":1,"1513":1,"1514":1,"1515":2,"1516":2,"1517":2},"2":{"49":1,"63":1,"134":3,"176":1,"188":1,"191":1,"195":3,"211":3,"222":2,"246":1,"249":1,"266":1,"285":1,"751":1,"1491":1,"1492":14,"1493":2,"1494":2,"1495":4,"1496":3,"1497":7,"1498":1,"1499":2,"1500":1,"1501":1,"1502":1,"1503":1,"1504":15,"1506":1,"1510":1,"1511":4,"1512":3,"1514":1,"1515":12,"1516":4,"1517":1,"1529":1,"2000":2,"2025":3,"2030":1,"2031":2,"2032":10,"2033":1,"2034":7,"2038":1,"2039":33,"2040":7,"2042":10,"2043":11,"2044":10,"2045":3,"2046":5,"2370":2,"2518":13,"2521":2,"2627":1,"2667":1,"2910":5,"2918":2,"2933":1}}],["august",{"0":{"96":1,"161":1,"267":1},"1":{"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1},"2":{"254":1,"268":1,"307":1,"2805":1}}],["aug",{"0":{"0":1,"39":1,"212":1,"309":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1},"2":{"88":1,"104":1,"127":1,"170":1,"371":2,"394":1,"407":7}}],["afnor",{"2":{"2880":3}}],["af2",{"2":{"1562":1}}],["aforementioned",{"2":{"1417":1,"1756":1}}],["africa",{"2":{"1343":1}}],["afpp",{"2":{"1210":7}}],["afio",{"2":{"1210":1}}],["af4",{"2":{"1209":4}}],["af0",{"2":{"1209":4}}],["af1",{"2":{"1209":10}}],["af7",{"2":{"1208":22}}],["affecting",{"2":{"1375":4,"2180":1,"2427":1,"2445":1,"2722":1}}],["affect",{"2":{"221":1,"233":1,"492":2,"617":1,"2722":2,"2788":1,"2901":1,"2918":1}}],["affects",{"2":{"45":1,"49":1,"244":1,"279":1,"1317":1,"1407":1,"2302":1,"2747":1}}],["affected",{"2":{"3":1,"4":1,"10":1,"14":1,"15":1,"221":1,"254":1,"1660":1,"1675":1,"2270":1,"2683":1,"2908":2,"2909":1,"2914":1}}],["afterwards",{"2":{"202":1,"1345":1,"2421":1,"2621":1}}],["aftermath",{"2":{"176":1}}],["after",{"0":{"25":1,"325":1,"2307":1},"2":{"10":1,"11":1,"23":1,"24":1,"25":4,"49":1,"90":1,"105":1,"114":2,"134":4,"149":1,"157":1,"176":4,"191":3,"195":1,"199":5,"211":2,"222":1,"255":2,"259":1,"263":1,"294":1,"371":1,"380":1,"396":1,"397":1,"400":1,"401":1,"405":1,"406":3,"520":1,"552":1,"559":2,"562":2,"567":1,"570":2,"572":1,"611":1,"616":1,"627":1,"632":1,"635":1,"639":1,"645":2,"653":1,"656":1,"674":1,"704":1,"717":1,"737":1,"751":1,"760":1,"809":1,"813":1,"817":1,"819":1,"836":1,"840":1,"844":1,"846":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1226":1,"1230":1,"1234":1,"1236":1,"1303":1,"1317":1,"1324":1,"1340":1,"1351":1,"1362":1,"1373":1,"1378":3,"1411":1,"1412":1,"1413":2,"1427":1,"1435":1,"1451":4,"1484":1,"1492":1,"1521":1,"1522":1,"1532":3,"1611":1,"1627":1,"1634":1,"1680":1,"1746":1,"1752":1,"1756":2,"1762":1,"1804":1,"1805":2,"1844":1,"1902":1,"1904":1,"1906":1,"1909":1,"1928":1,"1931":1,"1933":2,"1943":2,"1951":1,"1955":1,"1986":1,"1988":1,"1990":1,"2016":1,"2030":1,"2034":2,"2066":1,"2146":1,"2148":1,"2150":1,"2153":1,"2156":1,"2173":1,"2178":1,"2189":1,"2191":1,"2268":2,"2281":1,"2291":1,"2293":1,"2302":3,"2303":2,"2310":1,"2380":1,"2403":1,"2410":1,"2418":1,"2421":3,"2424":1,"2425":1,"2459":1,"2501":1,"2513":1,"2548":1,"2552":1,"2587":1,"2632":1,"2633":1,"2643":2,"2645":1,"2653":1,"2669":1,"2670":1,"2671":1,"2702":1,"2710":1,"2719":1,"2722":1,"2723":1,"2747":1,"2750":1,"2754":1,"2761":1,"2762":1,"2773":1,"2775":1,"2780":2,"2788":1,"2822":1,"2875":2,"2879":1,"2901":1,"2907":1,"2910":1,"2914":1,"2923":1,"2933":2}}],["arng",{"2":{"2878":1}}],["arpeggiation",{"2":{"2285":1}}],["arbitrary",{"2":{"374":1,"431":1,"1452":1,"1460":1,"1531":1,"1747":1,"1765":1,"2270":1,"2632":1,"2669":1}}],["arises",{"2":{"2459":1}}],["arise",{"2":{"273":1,"2579":1}}],["arrive",{"2":{"2285":1}}],["arrangement",{"2":{"2714":2}}],["arranged",{"2":{"2459":2,"2787":1}}],["arrange",{"2":{"1419":1,"2713":1}}],["arrays",{"2":{"191":1,"431":2,"587":1,"1758":2,"1947":2,"2289":1,"2546":3,"2712":1,"2917":2}}],["array",{"0":{"27":1},"2":{"27":1,"176":1,"249":1,"266":1,"586":2,"669":5,"738":1,"810":1,"814":1,"818":1,"820":1,"837":1,"841":1,"845":1,"847":1,"869":1,"873":1,"877":1,"879":1,"901":1,"905":1,"909":1,"911":1,"936":1,"940":1,"944":1,"946":1,"970":1,"974":1,"978":1,"980":1,"1004":1,"1008":1,"1012":1,"1014":1,"1038":1,"1042":1,"1046":1,"1048":1,"1072":1,"1076":1,"1080":1,"1082":1,"1106":1,"1110":1,"1114":1,"1116":1,"1140":1,"1144":1,"1148":1,"1150":1,"1174":1,"1178":1,"1182":1,"1184":1,"1227":1,"1231":1,"1235":1,"1237":1,"1354":1,"1433":1,"1447":1,"1450":1,"1532":3,"1599":1,"1605":1,"1606":3,"1630":1,"1659":1,"1675":1,"1693":1,"1714":1,"1716":1,"1770":1,"1775":2,"1946":2,"2000":2,"2176":1,"2189":4,"2265":1,"2296":2,"2298":1,"2302":2,"2322":2,"2344":1,"2346":1,"2347":1,"2348":1,"2350":1,"2351":1,"2546":4,"2547":1,"2713":1,"2768":1,"2770":1,"2772":1,"2798":1,"2816":1,"2845":1,"2849":1,"2850":1,"2856":2,"2858":1,"2861":2,"2862":2,"2864":4,"2865":4,"2870":2,"2871":4,"2872":1,"2873":1,"2930":2}}],["arrowmechanics",{"2":{"266":1}}],["arrow",{"2":{"255":2,"259":2,"266":1,"683":2,"1688":4,"1761":1,"2037":1,"2156":1,"2159":5,"2164":2,"2219":1,"2509":4,"2511":4,"2515":8,"2790":1,"2793":2}}],["arg",{"2":{"498":3,"654":2,"655":1,"2165":1}}],["args",{"2":{"176":1,"498":3,"529":1,"532":1,"2160":1,"2662":1}}],["arguments",{"0":{"493":1,"498":1,"532":1,"705":1,"707":1,"710":1,"736":1,"738":1,"740":1,"742":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"808":1,"810":1,"812":1,"814":1,"816":1,"818":1,"820":1,"833":1,"835":1,"837":1,"839":1,"841":1,"843":1,"845":1,"847":1,"849":1,"851":1,"865":1,"867":1,"869":1,"871":1,"873":1,"875":1,"877":1,"879":1,"881":1,"883":1,"895":1,"897":1,"899":1,"901":1,"903":1,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"930":1,"932":1,"934":1,"936":1,"938":1,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"964":1,"966":1,"968":1,"970":1,"972":1,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"998":1,"1000":1,"1002":1,"1004":1,"1006":1,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":1,"1036":1,"1038":1,"1040":1,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1066":1,"1068":1,"1070":1,"1072":1,"1074":1,"1076":1,"1078":1,"1080":1,"1082":1,"1084":1,"1086":1,"1100":1,"1102":1,"1104":1,"1106":1,"1108":1,"1110":1,"1112":1,"1114":1,"1116":1,"1118":1,"1120":1,"1134":1,"1136":1,"1138":1,"1140":1,"1142":1,"1144":1,"1146":1,"1148":1,"1150":1,"1152":1,"1154":1,"1168":1,"1170":1,"1172":1,"1174":1,"1176":1,"1178":1,"1180":1,"1182":1,"1184":1,"1186":1,"1188":1,"1221":1,"1223":1,"1225":1,"1227":1,"1229":1,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1249":1,"1252":1,"1257":1,"1260":1,"1269":1,"1271":1,"1275":1,"1277":1,"1304":1,"1306":1,"1544":1,"1546":1,"1573":1,"1654":1,"1699":1,"1703":1,"1706":1,"1708":1,"1710":1,"1712":1,"1714":1,"1716":1,"1720":1,"1722":1,"1725":1,"1727":1,"1729":1,"1731":1,"1780":1,"1782":1,"1784":1,"1787":1,"1789":1,"1813":1,"1819":1,"1824":1,"1827":1,"1830":1,"1833":1,"1836":1,"1860":1,"1862":1,"1864":1,"1866":1,"1884":1,"1886":1,"1890":1,"1892":1,"1907":1,"1910":1,"1964":1,"1966":1,"1968":1,"1970":1,"1972":1,"1978":1,"2055":1,"2057":1,"2086":1,"2088":1,"2090":1,"2092":1,"2122":1,"2124":1,"2128":1,"2130":1,"2138":1,"2140":1,"2151":1,"2154":1,"2222":1,"2224":1,"2226":1,"2228":1,"2230":1,"2232":1,"2234":1,"2236":1,"2238":1,"2330":1,"2334":1,"2336":1,"2341":1,"2343":1,"2345":1,"2348":1,"2351":1,"2358":1,"2365":1},"1":{"494":1,"495":1,"496":1,"497":1,"498":1,"1908":1,"1911":1,"2152":1,"2155":1},"2":{"114":1,"285":1,"294":1,"442":1,"450":1,"451":1,"457":1,"470":1,"471":1,"473":1,"489":2,"498":2,"529":1,"540":1,"1428":1,"2051":1,"2290":1,"2303":1,"2496":1,"2633":1,"2748":3,"2931":1}}],["argument",{"0":{"541":1},"2":{"46":1,"194":2,"199":1,"236":1,"266":1,"427":3,"428":1,"470":1,"472":2,"473":1,"487":6,"493":5,"498":3,"541":1,"630":2,"654":3,"655":1,"1245":1,"1375":1,"1388":1,"1396":1,"1417":4,"1430":1,"1764":1,"2293":2,"2495":1,"2559":1,"2560":1,"2633":1,"2645":1,"2748":7}}],["artifact",{"2":{"2600":1}}],["artifacts",{"2":{"114":1,"2602":1,"2754":1}}],["article",{"2":{"2375":1,"2459":2}}],["artery",{"0":{"515":1}}],["arterytek",{"2":{"285":1}}],["art",{"2":{"176":2}}],["architectural",{"0":{"2734":1}}],["architectures",{"2":{"2743":1}}],["architecture",{"0":{"574":1,"2727":1},"2":{"574":2,"759":1,"2734":1}}],["archive",{"2":{"2600":1}}],["arch",{"2":{"143":2,"176":1,"571":1,"2594":1,"2619":1}}],["arabica37",{"2":{"134":1}}],["arya",{"2":{"134":1}}],["arduinoisp",{"2":{"2479":1}}],["arduino",{"0":{"243":1,"1368":1,"2479":1},"1":{"2480":1},"2":{"113":1,"114":1,"133":1,"134":1,"243":2,"331":2,"609":2,"686":4,"1368":8,"2379":1,"2453":1,"2479":2,"2492":4}}],["armtoolchainpath",{"2":{"2667":3}}],["arm",{"0":{"378":1,"381":1,"512":1,"691":1,"696":1,"698":1,"713":1,"730":1,"765":1,"801":1,"827":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1215":1,"1245":1,"1266":1,"1292":1,"1317":1,"1470":1,"1482":1,"1561":1,"1984":1,"2667":1,"2668":1,"2700":1,"2795":1},"1":{"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"513":1,"514":1,"515":1,"516":1,"517":1,"692":1,"693":1,"714":1,"715":1,"716":1,"717":1,"718":1,"719":1,"720":1,"766":1,"767":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"1562":1,"1563":1,"2669":1,"2670":1,"2671":1,"2701":1,"2702":1,"2703":1,"2704":1,"2705":1,"2706":1},"2":{"11":1,"24":1,"69":1,"75":1,"92":1,"93":3,"107":2,"114":3,"123":1,"130":1,"134":2,"153":1,"160":2,"174":1,"191":1,"215":2,"248":1,"263":3,"277":1,"279":2,"285":2,"294":3,"378":2,"381":2,"387":2,"390":1,"392":1,"510":2,"512":1,"565":1,"566":1,"568":2,"609":1,"613":1,"617":1,"687":3,"698":1,"713":1,"714":1,"743":1,"773":1,"1189":1,"1190":1,"1192":1,"1193":1,"1196":1,"1290":1,"1291":1,"1292":1,"1293":1,"1317":1,"1389":2,"1390":2,"1478":1,"1482":1,"1711":1,"1715":1,"1767":2,"1937":5,"1948":2,"1955":1,"1984":1,"2179":1,"2225":1,"2227":1,"2240":1,"2241":1,"2254":3,"2255":1,"2266":2,"2271":1,"2272":3,"2283":2,"2411":1,"2450":1,"2475":1,"2667":3,"2668":1,"2681":1,"2690":1,"2691":1,"2700":2,"2721":1,"2846":1,"2888":2}}],["around",{"2":{"8":1,"191":2,"198":1,"201":1,"213":1,"222":1,"224":1,"266":1,"293":1,"305":1,"314":1,"421":1,"678":1,"712":1,"1294":1,"1312":1,"1343":1,"1362":2,"1365":1,"1484":1,"1487":1,"1670":1,"1843":1,"1996":1,"2063":4,"2180":1,"2201":4,"2420":1,"2459":1,"2470":1,"2562":1,"2882":1,"2915":3,"2934":1,"2936":1,"2942":1}}],["aref",{"2":{"2424":1}}],["arep",{"2":{"202":1,"2157":1,"2158":1,"2542":1}}],["area",{"2":{"182":1,"642":1,"1948":1,"2064":1,"2633":2,"2749":2,"2750":1,"2800":1,"2895":1,"2911":1}}],["areas",{"2":{"113":1,"213":1,"397":1,"2722":2,"2895":2}}],["aren",{"0":{"1348":1},"2":{"173":1,"188":1,"211":1,"614":1,"617":1,"663":1,"1362":1,"1660":1,"2014":1,"2403":1,"2422":1,"2427":1,"2549":1,"2700":1,"2732":1,"2749":2}}],["are",{"0":{"90":1,"105":1,"603":1,"1337":1,"1340":1,"1343":1,"1346":1,"1359":1,"1493":1,"1594":1,"2460":1,"2921":1},"1":{"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2467":1,"2468":1},"2":{"3":1,"4":1,"11":1,"15":1,"16":2,"27":1,"31":3,"33":1,"34":2,"37":1,"55":1,"69":1,"70":1,"73":1,"75":1,"92":1,"94":1,"110":1,"111":1,"114":1,"119":1,"123":2,"124":1,"132":1,"152":1,"163":1,"176":1,"182":1,"187":1,"191":1,"194":1,"196":2,"201":2,"203":1,"206":1,"209":1,"210":1,"215":2,"221":1,"222":1,"231":1,"234":1,"241":1,"253":1,"254":1,"262":1,"263":2,"264":1,"268":1,"270":1,"274":1,"275":1,"281":1,"282":1,"288":2,"289":1,"292":1,"294":1,"301":1,"307":2,"313":1,"326":1,"338":6,"350":1,"361":1,"362":1,"367":1,"371":1,"373":4,"375":1,"377":1,"379":1,"380":1,"382":1,"387":2,"390":2,"393":2,"397":3,"405":2,"406":1,"408":2,"409":1,"410":2,"415":1,"419":1,"423":1,"427":1,"428":1,"430":1,"431":2,"435":1,"438":1,"440":1,"442":1,"443":1,"445":1,"456":2,"471":1,"473":3,"487":1,"489":1,"490":1,"491":1,"492":2,"505":1,"506":1,"512":1,"520":2,"521":1,"524":1,"527":1,"532":1,"533":2,"534":2,"536":1,"537":1,"540":2,"547":1,"548":3,"549":1,"550":1,"551":1,"552":1,"553":4,"555":1,"556":1,"559":2,"563":2,"566":1,"567":2,"568":1,"572":3,"573":3,"574":1,"577":1,"578":2,"579":2,"587":1,"594":1,"596":1,"605":1,"606":1,"608":1,"609":1,"611":2,"612":1,"613":2,"616":3,"617":7,"618":1,"619":3,"624":1,"625":1,"628":3,"631":2,"644":2,"646":1,"649":1,"655":1,"658":1,"663":3,"666":4,"667":1,"668":1,"670":2,"671":1,"673":1,"682":1,"683":2,"684":1,"685":1,"686":1,"687":1,"690":2,"692":5,"696":1,"698":1,"699":1,"700":1,"704":1,"712":1,"713":4,"715":1,"716":2,"718":2,"722":1,"723":1,"727":1,"737":1,"746":1,"747":1,"751":1,"756":1,"758":1,"760":3,"762":1,"763":1,"765":2,"798":1,"809":1,"813":1,"817":1,"819":1,"824":1,"836":1,"840":1,"844":1,"846":1,"853":1,"856":1,"857":2,"868":1,"872":1,"876":1,"878":1,"885":1,"900":1,"904":1,"908":1,"910":1,"917":1,"919":1,"921":1,"922":2,"935":1,"939":1,"943":1,"945":1,"952":1,"954":1,"955":1,"956":2,"969":1,"973":1,"977":1,"979":1,"986":1,"989":1,"990":2,"1003":1,"1007":1,"1011":1,"1013":1,"1020":1,"1023":1,"1024":2,"1037":1,"1041":1,"1045":1,"1047":1,"1054":1,"1057":1,"1058":2,"1071":1,"1075":1,"1079":1,"1081":1,"1088":1,"1090":1,"1092":2,"1105":1,"1109":1,"1113":1,"1115":1,"1122":1,"1124":1,"1126":2,"1139":1,"1143":1,"1147":1,"1149":1,"1156":1,"1158":1,"1159":1,"1160":2,"1173":1,"1177":1,"1181":1,"1183":1,"1189":2,"1193":1,"1194":1,"1196":1,"1197":4,"1202":1,"1203":1,"1210":1,"1212":1,"1226":1,"1230":1,"1234":1,"1236":1,"1243":1,"1250":1,"1264":1,"1269":2,"1280":1,"1281":1,"1284":1,"1286":1,"1293":1,"1294":1,"1297":1,"1300":1,"1303":1,"1308":1,"1310":1,"1312":1,"1315":1,"1317":1,"1320":1,"1323":1,"1327":1,"1340":2,"1342":1,"1343":2,"1348":2,"1354":1,"1355":1,"1359":2,"1362":2,"1363":1,"1375":3,"1378":2,"1386":2,"1388":1,"1389":1,"1390":1,"1392":1,"1393":1,"1395":1,"1396":1,"1404":2,"1406":5,"1407":4,"1410":2,"1412":3,"1413":1,"1416":2,"1417":2,"1419":2,"1420":1,"1422":5,"1425":1,"1427":1,"1432":1,"1434":1,"1441":1,"1443":1,"1447":1,"1448":2,"1450":2,"1455":2,"1459":1,"1475":1,"1477":1,"1478":1,"1479":2,"1481":2,"1482":1,"1485":3,"1487":2,"1492":2,"1493":2,"1497":3,"1504":1,"1508":1,"1511":1,"1512":2,"1516":3,"1517":1,"1518":2,"1519":1,"1521":2,"1522":1,"1523":1,"1526":2,"1527":5,"1528":1,"1532":4,"1550":1,"1551":1,"1553":1,"1557":1,"1559":1,"1562":2,"1564":2,"1583":1,"1584":1,"1585":1,"1587":1,"1588":1,"1591":2,"1592":1,"1594":1,"1596":1,"1597":1,"1599":1,"1600":1,"1602":1,"1605":2,"1606":6,"1609":1,"1610":1,"1611":1,"1613":2,"1615":1,"1620":1,"1626":2,"1627":1,"1628":1,"1629":1,"1634":1,"1635":1,"1636":1,"1641":1,"1655":2,"1656":1,"1658":1,"1659":2,"1660":1,"1662":1,"1664":1,"1666":1,"1668":1,"1670":1,"1672":2,"1675":2,"1696":1,"1736":2,"1740":2,"1744":1,"1746":1,"1751":2,"1754":6,"1755":3,"1756":2,"1757":3,"1758":4,"1768":1,"1770":2,"1790":1,"1791":1,"1793":1,"1801":1,"1805":1,"1806":1,"1840":2,"1843":2,"1846":1,"1849":2,"1913":1,"1917":2,"1920":2,"1928":2,"1930":2,"1931":1,"1932":1,"1933":4,"1937":1,"1938":1,"1940":1,"1942":1,"1943":1,"1946":4,"1947":5,"1948":2,"1954":1,"1958":3,"1979":1,"1981":1,"1985":1,"1986":1,"1990":1,"1996":1,"1997":2,"2000":2,"2002":2,"2005":2,"2006":2,"2009":1,"2014":1,"2015":1,"2017":1,"2018":2,"2020":1,"2021":2,"2029":1,"2030":3,"2033":1,"2035":1,"2037":1,"2038":1,"2042":2,"2045":1,"2047":1,"2049":1,"2050":3,"2052":2,"2060":2,"2063":2,"2064":1,"2067":2,"2069":1,"2072":2,"2156":1,"2159":1,"2160":1,"2163":3,"2165":1,"2167":1,"2178":1,"2179":2,"2181":1,"2184":2,"2185":3,"2187":1,"2189":1,"2191":1,"2192":1,"2198":11,"2199":2,"2201":2,"2205":2,"2206":1,"2210":2,"2212":2,"2215":3,"2216":1,"2251":1,"2253":1,"2254":2,"2255":1,"2256":1,"2258":3,"2262":1,"2263":1,"2267":1,"2268":4,"2270":1,"2271":4,"2277":1,"2278":1,"2280":1,"2282":1,"2283":1,"2284":1,"2285":1,"2287":1,"2288":2,"2290":1,"2291":2,"2293":1,"2296":3,"2298":1,"2302":6,"2303":1,"2306":1,"2310":4,"2312":1,"2313":4,"2316":1,"2318":1,"2319":1,"2322":1,"2323":2,"2324":1,"2375":1,"2377":2,"2384":2,"2400":3,"2404":2,"2408":2,"2409":1,"2410":3,"2411":5,"2415":3,"2416":1,"2417":2,"2419":1,"2420":4,"2421":3,"2422":1,"2423":1,"2424":4,"2428":1,"2434":2,"2435":1,"2436":1,"2438":3,"2439":2,"2440":1,"2441":1,"2445":1,"2446":1,"2449":1,"2450":2,"2451":1,"2453":1,"2459":4,"2463":1,"2467":2,"2472":1,"2474":1,"2475":1,"2476":1,"2490":1,"2491":2,"2492":1,"2494":1,"2495":1,"2496":1,"2501":1,"2502":1,"2510":3,"2512":1,"2513":1,"2514":1,"2516":1,"2524":1,"2546":1,"2547":2,"2550":1,"2551":3,"2552":1,"2553":2,"2555":1,"2556":2,"2557":1,"2559":1,"2560":2,"2563":1,"2566":2,"2567":2,"2568":1,"2572":4,"2573":3,"2574":1,"2575":2,"2579":2,"2580":2,"2587":2,"2592":1,"2593":1,"2602":1,"2607":2,"2609":1,"2610":1,"2612":2,"2619":2,"2623":1,"2626":1,"2627":2,"2628":1,"2630":2,"2633":2,"2635":1,"2643":3,"2644":1,"2645":3,"2652":1,"2653":1,"2656":1,"2661":1,"2662":1,"2663":1,"2664":1,"2667":1,"2669":2,"2670":1,"2673":2,"2674":1,"2676":2,"2677":2,"2684":1,"2686":1,"2687":1,"2688":1,"2697":3,"2699":1,"2702":2,"2703":2,"2704":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":2,"2714":1,"2715":1,"2718":1,"2719":1,"2720":1,"2721":10,"2722":2,"2723":2,"2724":4,"2726":1,"2731":3,"2732":1,"2744":4,"2745":1,"2747":2,"2749":8,"2750":6,"2758":4,"2760":1,"2765":2,"2768":2,"2773":1,"2774":4,"2775":1,"2776":3,"2778":2,"2780":1,"2783":1,"2787":2,"2789":2,"2790":1,"2813":2,"2816":1,"2826":1,"2828":1,"2833":1,"2844":2,"2862":3,"2864":1,"2865":1,"2870":1,"2871":1,"2877":3,"2878":1,"2879":1,"2880":4,"2881":1,"2882":6,"2883":2,"2885":2,"2888":2,"2889":1,"2890":1,"2896":1,"2897":1,"2898":2,"2901":1,"2902":2,"2908":1,"2911":1,"2913":1,"2914":7,"2915":3,"2917":4,"2921":1,"2929":3,"2934":2,"2938":2,"2939":1,"2940":3,"2941":1,"2942":1}}],["al",{"2":{"2908":2,"2909":1}}],["albeit",{"2":{"2322":1}}],["alpaca",{"2":{"2567":1}}],["alps",{"2":{"1351":1}}],["alphabet",{"2":{"2879":1}}],["alphabetical",{"2":{"1516":1}}],["alphanumeric",{"2":{"2073":1,"2792":1}}],["alphas",{"2":{"1843":3,"2063":3,"2864":1,"2871":1,"2887":1,"2911":1}}],["alpha",{"0":{"1502":1,"1507":1,"1685":1},"2":{"143":8,"1497":2,"1502":1,"1504":2,"1522":1,"1685":2}}],["alone",{"2":{"663":1,"1323":1}}],["alongside",{"2":{"113":1,"114":1}}],["along",{"2":{"69":1,"83":1,"113":1,"149":1,"166":1,"196":1,"230":1,"559":3,"1285":1,"1434":1,"1438":1,"1691":1,"1751":1,"1933":1,"2008":1,"2052":1,"2063":1,"2212":1,"2375":1,"2422":1,"2424":2,"2489":1,"2605":1,"2719":1,"2725":1}}],["alvicstep",{"2":{"211":1}}],["alf",{"2":{"211":2}}],["alcor",{"2":{"191":1}}],["al1",{"2":{"160":1}}],["alu84",{"2":{"143":2}}],["alef",{"2":{"294":1}}],["aleblazer",{"2":{"222":1}}],["alexa",{"2":{"211":1}}],["aleth42",{"2":{"143":2}}],["alerts",{"2":{"433":1,"454":1}}],["alert",{"2":{"28":1,"1680":2}}],["alisaie",{"2":{"222":1}}],["alice",{"2":{"211":1,"2930":1}}],["alicia",{"2":{"143":2,"211":1}}],["aligns",{"2":{"2418":1}}],["aligned",{"2":{"137":1,"2421":1,"2792":2}}],["alignment",{"2":{"114":1,"133":1,"134":1,"191":1,"266":1,"333":1,"2423":1,"2720":1,"2750":1}}],["align",{"2":{"113":1,"114":3,"133":1,"134":3,"149":4,"176":2,"188":3,"191":3,"199":4,"222":1,"249":4,"266":4,"277":1,"308":3,"317":1,"328":1}}],["aliasing",{"2":{"2748":1}}],["aliased",{"2":{"1627":1}}],["aliases",{"2":{"92":1,"111":1,"182":1,"188":1,"191":1,"222":4,"266":1,"294":6,"317":4,"1374":1,"1422":1,"1479":1,"1483":1,"1484":1,"1487":1,"1489":1,"1515":1,"1524":1,"1549":1,"1600":1,"1630":2,"1668":1,"1674":1,"1750":1,"1772":1,"1808":1,"1842":1,"1919":1,"1927":1,"1960":1,"2039":1,"2062":1,"2158":1,"2175":1,"2181":1,"2246":1,"2250":1,"2297":1,"2325":1,"2370":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2527":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2558":1,"2559":1,"2644":1,"2721":1,"2745":1,"2861":1,"2862":2,"2877":2,"2901":1}}],["alias",{"0":{"8":1},"2":{"8":2,"133":1,"134":1,"188":1,"191":2,"199":3,"211":1,"236":1,"249":1,"308":1,"333":1,"758":1,"773":1,"1588":1,"1655":1,"1711":1,"1715":1,"1760":1,"1948":1,"2157":2,"2225":1,"2227":1,"2314":1,"2549":2,"2562":1,"2633":1}}],["almost",{"2":{"77":1,"83":1,"163":1,"268":1,"276":1,"279":1,"383":1,"755":1,"756":1,"1757":1,"2324":1,"2375":1,"2388":1,"2619":1,"2719":1,"2722":1,"2749":1,"2787":1,"2894":1,"2936":1}}],["already",{"0":{"2701":1},"1":{"2702":1,"2703":1},"2":{"75":1,"105":2,"118":1,"125":1,"169":2,"182":3,"185":1,"199":1,"221":1,"228":1,"232":1,"233":1,"241":1,"253":1,"270":1,"281":1,"294":1,"347":1,"430":1,"461":2,"596":1,"609":1,"645":1,"682":1,"722":1,"1197":1,"1210":1,"1250":1,"1347":1,"1377":1,"1404":1,"1425":1,"1441":1,"1527":1,"1627":1,"1675":1,"1754":3,"2014":1,"2043":2,"2045":1,"2283":2,"2303":1,"2312":3,"2415":1,"2425":1,"2475":2,"2498":1,"2567":4,"2573":1,"2587":1,"2594":1,"2621":1,"2629":1,"2651":1,"2658":1,"2662":2,"2663":1,"2666":1,"2702":2,"2721":1,"2722":1,"2749":2,"2754":1,"2832":1,"2895":1,"2937":1}}],["algr",{"2":{"1374":1,"1452":1,"2507":1,"2515":1,"2534":1,"2535":1,"2559":1}}],["algorithm>",{"2":{"1410":1}}],["algorithms",{"0":{"1407":1,"1408":1},"1":{"1409":1,"1410":1,"1411":1},"2":{"114":1,"176":1,"222":1,"1406":1,"1407":6,"1408":1}}],["algorithm",{"2":{"74":1,"174":1,"176":1,"328":1,"749":1,"751":1,"752":3,"753":1,"1407":10,"1410":4,"1411":2,"1929":1,"2773":1,"2847":1,"2857":1}}],["algernon",{"2":{"37":1,"2301":2,"2410":2}}],["altlp",{"2":{"2311":6}}],["altrep",{"2":{"2170":1}}],["altrep3",{"2":{"2170":12}}],["altrep2",{"2":{"2170":12}}],["alttab",{"2":{"1612":6}}],["alt↯tab",{"0":{"1466":1}}],["altered",{"2":{"2270":1}}],["altering",{"2":{"1547":1,"1616":1}}],["alter",{"2":{"1450":1,"1608":1,"1611":1,"1662":1,"2293":1,"2515":1}}],["alternating",{"2":{"2183":2,"2184":2,"2887":1}}],["alternatives",{"2":{"2573":1,"2895":1}}],["alternative",{"0":{"1453":1},"2":{"279":2,"572":1,"1296":2,"1300":1,"1362":1,"1388":1,"1396":1,"1417":1,"1472":1,"1475":1,"1562":1,"1587":1,"2014":1,"2291":1,"2411":1,"2573":1,"2721":1,"2728":1,"2803":1,"2805":1}}],["alternatively",{"2":{"31":1,"521":1,"683":1,"746":1,"747":1,"1204":1,"1315":1,"1378":1,"1402":1,"1435":1,"1479":1,"1591":1,"1764":1,"1769":1,"2050":1,"2257":1,"2587":1,"2651":1,"2669":1,"2779":1,"2878":1,"2915":1,"2939":1}}],["alternate0",{"2":{"718":1}}],["alternate",{"0":{"1207":1,"2159":1,"2160":1,"2168":1,"2170":1,"2688":1},"1":{"1208":1,"1209":1,"1210":1,"2161":1,"2162":1},"2":{"36":1,"114":1,"202":2,"559":3,"568":1,"713":1,"718":5,"765":2,"769":2,"1190":1,"1195":2,"1197":2,"1198":2,"1205":1,"1210":2,"1245":3,"1266":4,"1477":1,"1616":1,"1619":3,"2158":1,"2159":7,"2160":6,"2161":2,"2162":1,"2163":1,"2167":2,"2168":10,"2169":2,"2170":1,"2509":2,"2515":2,"2542":1,"2693":1,"2721":2}}],["although",{"2":{"1417":1,"1756":1,"1767":1,"2006":1,"2286":1,"2291":1,"2548":1}}],["alt+tab",{"2":{"1612":1}}],["alt+escape",{"2":{"1377":1}}],["alt+shift+esc",{"2":{"1377":1}}],["alt+right",{"2":{"347":1,"1417":1}}],["altogether",{"2":{"717":1,"2268":1,"2885":1}}],["altgr+escape",{"2":{"1377":1}}],["altgr",{"2":{"160":1,"2165":1,"2507":1,"2515":1,"2559":1,"2900":1}}],["alt",{"0":{"1377":2},"2":{"73":1,"114":1,"131":2,"134":2,"160":1,"202":2,"231":1,"266":1,"279":1,"559":3,"673":1,"713":1,"719":2,"1344":2,"1346":1,"1374":14,"1375":8,"1377":5,"1461":1,"1466":10,"1468":3,"1469":1,"1471":2,"1472":2,"1473":2,"1476":2,"1480":2,"1523":1,"1612":1,"1619":3,"1670":2,"1684":1,"1737":1,"1746":7,"1749":1,"1758":6,"1946":2,"2157":1,"2158":1,"2159":3,"2160":3,"2161":2,"2162":3,"2168":3,"2169":1,"2248":1,"2249":4,"2250":4,"2310":1,"2311":3,"2320":2,"2324":2,"2337":1,"2338":1,"2339":1,"2507":4,"2513":10,"2515":4,"2531":10,"2534":16,"2535":15,"2540":14,"2542":1,"2543":4,"2559":19,"2644":14,"2645":4,"2824":1,"2882":1,"2917":6}}],["always",{"2":{"14":1,"50":1,"156":1,"176":1,"191":1,"201":1,"235":1,"249":1,"277":1,"283":1,"294":1,"474":1,"487":1,"489":1,"520":1,"527":1,"529":1,"531":1,"532":1,"534":1,"541":1,"542":1,"566":1,"579":1,"606":1,"617":1,"760":1,"1210":2,"1294":1,"1416":1,"1420":2,"1441":1,"1443":2,"1485":1,"1493":1,"1511":2,"1583":1,"1613":1,"1669":1,"1670":4,"1751":1,"1950":1,"2032":1,"2050":1,"2051":1,"2055":2,"2057":2,"2163":1,"2183":1,"2258":1,"2265":1,"2267":3,"2293":1,"2428":1,"2548":1,"2563":1,"2607":1,"2722":1,"2760":1,"2767":1,"2768":1,"2787":1,"2798":1,"2835":1,"2894":2,"2902":1,"2910":1,"2938":1}}],["also",{"0":{"1317":1},"2":{"10":1,"16":1,"28":1,"50":1,"67":1,"86":1,"98":1,"125":1,"130":1,"153":1,"154":1,"156":1,"160":1,"166":1,"167":1,"176":1,"185":1,"194":1,"195":1,"231":1,"244":1,"297":1,"328":1,"393":1,"397":1,"408":1,"415":1,"428":3,"431":1,"444":1,"459":1,"475":1,"487":2,"492":1,"494":1,"512":1,"537":1,"573":2,"611":1,"614":1,"616":1,"617":2,"623":1,"643":1,"663":1,"692":1,"714":1,"718":2,"719":1,"752":1,"1211":1,"1285":1,"1291":1,"1316":1,"1323":1,"1340":1,"1345":1,"1367":1,"1374":1,"1375":1,"1377":1,"1385":1,"1406":2,"1416":1,"1417":1,"1422":1,"1436":1,"1441":1,"1443":2,"1450":1,"1452":3,"1455":1,"1478":1,"1481":1,"1492":1,"1511":1,"1527":1,"1529":1,"1564":1,"1586":2,"1587":1,"1588":1,"1589":1,"1597":1,"1603":1,"1608":1,"1610":1,"1611":1,"1642":1,"1655":1,"1659":3,"1679":1,"1684":2,"1736":1,"1740":1,"1747":1,"1754":2,"1755":2,"1757":1,"1761":1,"1768":1,"1798":1,"1821":1,"1846":1,"1931":1,"1956":1,"1988":1,"1989":1,"1990":1,"2006":1,"2014":1,"2021":1,"2025":1,"2044":2,"2050":2,"2052":1,"2064":1,"2069":1,"2156":1,"2159":1,"2166":1,"2167":1,"2179":1,"2181":1,"2183":1,"2187":1,"2189":1,"2191":1,"2208":1,"2210":1,"2215":1,"2242":1,"2260":1,"2261":1,"2266":1,"2286":2,"2287":1,"2291":1,"2298":1,"2314":2,"2318":1,"2319":1,"2323":1,"2324":1,"2372":1,"2375":1,"2376":1,"2378":1,"2380":1,"2386":1,"2387":1,"2391":1,"2392":1,"2394":1,"2396":1,"2398":1,"2400":2,"2410":3,"2411":1,"2415":1,"2417":1,"2420":3,"2424":1,"2429":1,"2437":1,"2438":1,"2439":1,"2440":1,"2446":1,"2476":1,"2479":1,"2490":1,"2492":1,"2495":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2545":1,"2551":3,"2560":2,"2563":1,"2576":1,"2605":1,"2613":1,"2643":1,"2645":3,"2651":1,"2652":1,"2662":1,"2667":1,"2679":1,"2684":2,"2700":2,"2710":1,"2714":1,"2721":2,"2746":1,"2748":2,"2749":1,"2750":1,"2751":1,"2758":1,"2765":1,"2788":1,"2827":1,"2844":1,"2869":1,"2880":1,"2882":1,"2885":1,"2900":1,"2907":2,"2908":4,"2909":1,"2910":1,"2911":1,"2913":1,"2918":1,"2934":1,"2935":1,"2937":1,"2938":2,"2942":3}}],["alleviate",{"2":{"1491":1,"1616":1}}],["allocate",{"2":{"1946":1,"2282":1,"2749":1}}],["allocated",{"2":{"751":1,"2749":1}}],["allocation",{"2":{"328":1,"333":1,"2697":1}}],["allowing",{"2":{"64":1,"82":1,"98":1,"103":1,"107":1,"109":1,"125":1,"126":1,"185":1,"229":1,"234":1,"284":1,"553":1,"649":1,"663":1,"743":1,"1404":1,"1416":1,"1466":1,"1629":1,"1630":1,"1632":1,"1805":1,"1840":1,"2030":1,"2038":1,"2060":1,"2178":1,"2269":1,"2285":1,"2411":1,"2583":2,"2750":3,"2766":1,"2910":1}}],["allowed",{"2":{"28":1,"173":1,"189":1,"526":1,"716":1,"1751":1,"1754":1,"2268":1,"2302":1,"2768":1,"2910":1}}],["allows",{"2":{"24":1,"30":1,"33":1,"46":1,"49":3,"50":1,"99":1,"105":2,"107":2,"152":1,"153":1,"154":1,"164":1,"166":2,"172":1,"228":2,"230":2,"231":2,"246":1,"247":1,"262":1,"265":1,"288":1,"312":1,"365":1,"366":1,"384":1,"427":1,"431":1,"461":1,"470":1,"559":1,"562":1,"565":1,"568":1,"572":3,"576":1,"654":2,"668":1,"717":1,"751":1,"1285":1,"1404":1,"1412":1,"1413":1,"1415":1,"1435":1,"1443":1,"1455":1,"1486":1,"1504":1,"1528":1,"1547":1,"1550":1,"1552":1,"1586":2,"1626":1,"1630":1,"1658":1,"1665":1,"1675":1,"1683":1,"1743":1,"1751":1,"1799":1,"1838":1,"1913":1,"1924":1,"1930":2,"1933":1,"1947":1,"1954":1,"2000":1,"2014":1,"2016":2,"2024":1,"2047":1,"2058":1,"2074":1,"2212":1,"2270":1,"2271":3,"2295":1,"2303":1,"2370":1,"2372":1,"2374":1,"2387":2,"2411":8,"2456":1,"2459":1,"2475":1,"2497":1,"2515":1,"2592":1,"2612":1,"2643":1,"2646":1,"2664":1,"2668":1,"2688":1,"2714":1,"2721":1,"2748":1,"2750":2,"2800":1,"2801":1,"2818":1,"2845":1,"2910":1,"2916":1,"2937":1}}],["allow",{"0":{"164":1,"1607":1},"2":{"6":2,"10":1,"45":1,"49":1,"63":4,"65":2,"70":1,"74":5,"90":2,"93":2,"99":1,"110":1,"113":1,"114":7,"118":1,"125":3,"142":1,"149":1,"160":5,"172":1,"176":7,"185":3,"189":1,"191":6,"199":5,"202":1,"203":1,"211":2,"213":1,"222":2,"234":1,"236":6,"249":2,"277":1,"283":1,"285":3,"308":2,"317":1,"333":2,"390":1,"486":1,"488":2,"556":1,"562":1,"617":2,"624":1,"625":1,"663":1,"757":1,"761":1,"1197":1,"1242":1,"1263":1,"1344":1,"1346":1,"1362":1,"1367":1,"1374":1,"1400":1,"1416":2,"1421":1,"1443":1,"1444":1,"1447":1,"1461":1,"1526":1,"1529":1,"1552":1,"1607":2,"1622":1,"1634":1,"1639":1,"1656":1,"1662":1,"1736":1,"1739":1,"1752":3,"1792":2,"1794":1,"2019":2,"2038":1,"2286":1,"2310":1,"2311":1,"2372":1,"2374":1,"2398":1,"2445":1,"2459":1,"2513":1,"2549":1,"2557":1,"2560":1,"2644":1,"2645":1,"2719":1,"2722":1,"2742":1,"2744":1,"2750":2,"2817":1,"2821":1,"2834":1,"2911":1,"2915":1,"2916":1,"2930":1}}],["alls",{"2":{"211":2}}],["all|txbolt|geminipr",{"2":{"176":1}}],["allison",{"2":{"143":4,"211":1}}],["all",{"0":{"483":1,"706":1,"739":1,"811":1,"815":1,"838":1,"842":1,"870":1,"874":1,"902":1,"906":1,"937":1,"941":1,"971":1,"975":1,"1005":1,"1009":1,"1039":1,"1043":1,"1073":1,"1077":1,"1107":1,"1111":1,"1141":1,"1145":1,"1175":1,"1179":1,"1228":1,"1232":1,"1305":1,"1439":1,"1861":1,"2087":1,"2719":1},"1":{"707":1,"740":1,"812":1,"816":1,"839":1,"843":1,"871":1,"875":1,"903":1,"907":1,"938":1,"942":1,"972":1,"976":1,"1006":1,"1010":1,"1040":1,"1044":1,"1074":1,"1078":1,"1108":1,"1112":1,"1142":1,"1146":1,"1176":1,"1180":1,"1229":1,"1233":1,"1306":1,"1862":1,"2088":1},"2":{"1":1,"3":1,"4":1,"7":1,"8":1,"14":1,"15":1,"16":1,"22":1,"25":1,"26":1,"32":1,"36":1,"49":3,"57":1,"65":1,"69":1,"77":1,"83":1,"98":1,"111":2,"113":1,"114":4,"120":1,"124":1,"126":1,"134":1,"149":1,"160":1,"163":2,"176":2,"182":1,"191":2,"194":2,"199":2,"204":1,"211":14,"249":1,"255":1,"265":2,"266":1,"268":3,"277":1,"279":1,"307":3,"369":2,"373":1,"374":1,"378":1,"387":1,"392":2,"405":2,"407":1,"408":1,"422":1,"423":2,"427":3,"431":2,"432":2,"439":1,"440":1,"444":1,"453":1,"457":3,"486":1,"490":6,"492":1,"494":1,"508":1,"522":2,"529":1,"533":1,"549":1,"550":2,"553":2,"557":1,"562":1,"572":1,"587":4,"590":1,"595":1,"597":1,"603":1,"613":2,"614":1,"617":1,"629":2,"637":1,"644":1,"650":2,"651":2,"654":1,"669":1,"683":1,"684":2,"692":1,"706":1,"711":1,"718":1,"739":1,"750":1,"755":1,"756":2,"763":1,"802":1,"811":1,"815":1,"828":1,"838":1,"842":1,"860":1,"870":1,"874":1,"890":1,"902":1,"906":1,"925":1,"937":1,"941":1,"959":1,"971":1,"975":1,"993":1,"1005":1,"1009":1,"1027":1,"1039":1,"1043":1,"1061":1,"1073":1,"1077":1,"1095":1,"1107":1,"1111":1,"1129":1,"1141":1,"1145":1,"1163":1,"1175":1,"1179":1,"1196":1,"1216":1,"1228":1,"1232":1,"1283":1,"1291":1,"1305":1,"1315":1,"1330":1,"1340":2,"1345":1,"1346":1,"1348":1,"1374":1,"1375":2,"1395":1,"1406":1,"1407":3,"1410":1,"1413":2,"1416":1,"1417":1,"1419":1,"1422":5,"1427":3,"1434":1,"1435":1,"1439":3,"1441":1,"1443":5,"1445":1,"1448":1,"1450":2,"1462":1,"1463":1,"1464":1,"1475":1,"1479":3,"1484":1,"1485":1,"1486":1,"1491":1,"1497":1,"1512":1,"1513":1,"1532":2,"1552":1,"1564":1,"1585":1,"1587":1,"1598":1,"1606":4,"1610":1,"1613":1,"1614":2,"1619":1,"1662":1,"1672":1,"1674":1,"1675":1,"1732":1,"1740":1,"1744":1,"1746":2,"1751":2,"1752":1,"1753":1,"1754":2,"1755":1,"1798":2,"1807":2,"1840":2,"1841":3,"1846":2,"1861":1,"1917":2,"1919":2,"1932":1,"1946":1,"1948":3,"1949":2,"1952":4,"2006":1,"2021":1,"2023":1,"2030":1,"2035":1,"2037":1,"2045":1,"2050":1,"2060":2,"2061":3,"2063":4,"2069":2,"2073":1,"2087":1,"2163":1,"2172":1,"2184":1,"2188":1,"2191":3,"2210":1,"2212":1,"2215":1,"2246":4,"2247":7,"2252":2,"2253":1,"2268":1,"2272":1,"2282":1,"2286":1,"2289":1,"2290":3,"2296":1,"2303":4,"2306":2,"2308":1,"2312":1,"2318":1,"2322":1,"2323":1,"2324":4,"2370":1,"2375":1,"2376":1,"2381":1,"2386":1,"2391":1,"2400":2,"2403":1,"2408":1,"2410":13,"2411":4,"2418":1,"2420":1,"2421":1,"2423":1,"2424":1,"2427":2,"2428":1,"2434":2,"2435":1,"2437":1,"2438":4,"2445":1,"2448":1,"2459":3,"2467":1,"2468":1,"2470":1,"2492":1,"2495":1,"2501":2,"2515":1,"2521":1,"2528":1,"2532":2,"2547":1,"2551":1,"2560":1,"2567":1,"2569":3,"2571":1,"2575":1,"2579":1,"2589":2,"2590":1,"2594":1,"2601":1,"2605":1,"2613":1,"2619":1,"2621":5,"2627":1,"2630":1,"2631":1,"2633":1,"2653":1,"2656":3,"2658":1,"2660":1,"2671":1,"2672":1,"2679":1,"2683":1,"2684":1,"2688":1,"2695":1,"2696":1,"2700":1,"2702":2,"2707":1,"2719":2,"2721":7,"2722":1,"2723":1,"2727":2,"2740":1,"2742":1,"2743":1,"2744":1,"2747":1,"2749":12,"2750":5,"2758":2,"2759":1,"2765":2,"2766":1,"2820":1,"2829":1,"2844":1,"2862":1,"2874":2,"2878":1,"2883":1,"2885":2,"2887":1,"2888":1,"2899":1,"2900":2,"2901":1,"2908":3,"2909":3,"2920":1,"2922":1,"2924":1,"2928":1,"2931":1,"2933":1,"2936":1,"2938":3,"2939":1,"2941":1,"2942":2}}],["ast1109mltrq",{"2":{"2682":1}}],["astr",{"2":{"2539":1,"2558":1}}],["astro65",{"2":{"114":1}}],["asterisk",{"2":{"2511":1,"2515":1,"2539":1,"2558":1}}],["asian",{"2":{"2322":1}}],["aside",{"2":{"1375":1,"2467":1}}],["as5",{"2":{"1919":1,"2532":1}}],["as400",{"2":{"2511":1,"2515":1}}],["as4",{"2":{"1919":1,"2532":1}}],["as3",{"2":{"1919":1,"2532":1}}],["as2",{"2":{"1919":1,"2532":1}}],["as1",{"2":{"1919":1,"2532":1}}],["asd",{"2":{"1805":2}}],["asdf2",{"2":{"447":5}}],["asking",{"2":{"2567":1}}],["ask",{"0":{"412":1},"2":{"533":1,"608":3,"616":1,"617":1,"2400":1,"2403":1,"2432":1,"2573":1,"2605":1,"2666":1,"2723":1,"2929":1}}],["asked",{"0":{"1311":1,"1331":1},"1":{"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"265":1,"275":1,"307":1,"683":1,"2499":1,"2605":1,"2722":1}}],["aspects",{"2":{"279":1,"369":1,"1427":1,"1586":1}}],["asynchronously",{"2":{"390":1}}],["asynchronous",{"2":{"368":1,"374":1}}],["asyncusb",{"2":{"266":1}}],["async",{"0":{"263":1},"2":{"266":1,"277":1}}],["asymmetric",{"2":{"160":1,"1407":2}}],["asym",{"2":{"114":1,"1407":5,"1410":1,"2847":1}}],["ashpil",{"2":{"207":2}}],["ascii",{"0":{"1352":1,"2229":1,"2761":1},"1":{"2230":1},"2":{"176":2,"1450":1,"1532":1,"2052":2,"2212":1,"2214":1,"2215":1,"2216":1,"2221":1,"2223":1,"2225":1,"2227":1,"2229":1,"2230":1,"2748":8,"2758":2,"2760":3,"2761":6,"2762":3,"2763":2,"2845":2,"2849":1,"2879":3}}],["asst",{"2":{"2510":1,"2515":1}}],["associate",{"2":{"2312":1}}],["associated",{"2":{"175":1,"240":1,"373":1,"560":1,"561":1,"611":2,"625":1,"1532":1,"2288":1,"2289":1,"2312":3,"2459":1,"2689":1,"2714":1,"2722":1,"2772":1,"2773":3,"2864":1,"2871":1}}],["assistance",{"2":{"2605":1}}],["assistant",{"2":{"2510":2,"2515":2}}],["assist",{"2":{"1339":1,"2194":1}}],["assigns",{"2":{"2463":1,"2789":1}}],["assigned",{"2":{"686":1,"1614":1,"2019":1,"2020":1}}],["assigning",{"2":{"627":1,"2425":1,"2669":1}}],["assignment",{"0":{"2931":1},"2":{"133":1,"134":2,"312":1,"540":1,"2719":1,"2862":1}}],["assignments",{"2":{"17":1,"114":1,"1619":2,"2684":1,"2749":2}}],["assign",{"2":{"48":1,"235":1,"686":1,"1309":1,"1310":1,"1659":1,"1733":1,"1760":1,"1839":1,"2025":1,"2059":1,"2157":1,"2189":1,"2467":2,"2513":1,"2836":1,"2919":1}}],["assembled",{"2":{"1953":1,"1955":1}}],["assembler",{"2":{"134":1}}],["assertions",{"2":{"2728":1}}],["assertion",{"2":{"391":1}}],["assert",{"2":{"390":1,"1633":1,"1647":1,"1649":1,"1651":1,"2760":1,"2761":1,"2766":1,"2767":1,"2769":1,"2771":1}}],["assessment",{"2":{"312":1}}],["assuming",{"2":{"758":4,"2074":1,"2290":1,"2310":1,"2750":2}}],["assume",{"2":{"390":1,"624":1,"644":1,"2404":1,"2587":1,"2926":1}}],["assumes",{"2":{"378":1,"724":1,"1190":1,"1453":1,"1939":1,"2017":1,"2216":1,"2252":1,"2256":1,"2264":1,"2268":1,"2271":2,"2277":1,"2310":1,"2403":1,"2404":1,"2625":1,"2695":1,"2879":1,"2926":2}}],["assumed",{"2":{"14":1,"141":1,"201":1,"334":1,"473":1,"566":1,"1413":1,"1847":1,"2070":1,"2264":1,"2293":1,"2415":1,"2667":1,"2698":1}}],["assumption",{"2":{"303":1,"317":1}}],["assumptions",{"2":{"149":1,"191":1}}],["as",{"0":{"6":1,"341":1,"1749":1,"1918":1,"2036":1,"2448":1,"2477":1,"2479":1,"2481":1},"1":{"1754":1,"1755":1,"1756":1,"2037":1,"2478":1,"2480":1,"2482":1},"2":{"6":1,"8":1,"31":2,"37":1,"49":3,"50":5,"55":1,"56":1,"57":1,"65":1,"67":1,"69":1,"76":1,"86":1,"87":1,"90":1,"99":1,"103":2,"107":2,"114":2,"116":1,"118":1,"120":1,"123":1,"124":2,"125":1,"126":2,"131":1,"132":4,"149":1,"152":2,"153":3,"156":2,"160":2,"163":1,"166":1,"169":1,"170":1,"173":2,"175":1,"176":3,"179":1,"184":2,"185":1,"189":1,"191":2,"194":2,"198":5,"199":2,"201":3,"211":1,"213":4,"215":3,"224":5,"228":1,"229":3,"230":1,"231":1,"232":3,"233":1,"234":3,"235":1,"236":1,"238":1,"240":3,"243":3,"244":1,"246":1,"249":2,"254":1,"262":1,"263":7,"265":2,"266":1,"272":2,"273":1,"275":1,"276":3,"279":1,"283":2,"284":1,"289":1,"293":1,"297":1,"298":2,"302":2,"303":2,"305":1,"307":1,"308":1,"312":1,"314":1,"317":1,"320":1,"323":1,"328":1,"331":3,"334":1,"348":1,"359":1,"369":2,"373":1,"387":3,"390":1,"391":1,"397":1,"408":3,"414":1,"417":1,"428":1,"431":5,"442":1,"458":1,"459":1,"460":1,"468":2,"471":1,"487":2,"489":3,"502":2,"511":1,"520":4,"521":1,"522":3,"524":1,"528":1,"529":1,"533":2,"535":1,"539":2,"540":1,"546":1,"550":2,"562":4,"568":3,"569":2,"570":2,"572":1,"573":1,"580":1,"581":1,"586":5,"590":1,"591":1,"596":1,"608":2,"611":1,"614":1,"617":2,"619":1,"625":3,"628":1,"632":2,"633":2,"638":2,"641":1,"643":4,"644":4,"649":5,"655":1,"663":4,"664":1,"667":1,"669":2,"679":1,"680":1,"682":3,"683":2,"685":3,"686":4,"687":2,"692":3,"696":1,"698":1,"711":1,"713":3,"717":2,"719":1,"723":1,"731":1,"743":1,"746":5,"747":2,"751":1,"752":2,"753":2,"754":1,"756":6,"758":8,"762":1,"763":2,"765":2,"800":1,"860":1,"890":1,"920":4,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1091":4,"1095":1,"1125":4,"1129":1,"1163":1,"1189":1,"1190":2,"1191":2,"1194":4,"1195":1,"1197":3,"1198":1,"1202":1,"1211":1,"1216":1,"1243":1,"1245":4,"1266":2,"1284":1,"1285":1,"1286":2,"1293":1,"1294":1,"1295":1,"1308":1,"1310":1,"1314":1,"1316":1,"1327":2,"1329":1,"1333":1,"1340":1,"1358":1,"1362":2,"1369":2,"1373":1,"1375":2,"1377":1,"1378":2,"1395":1,"1402":2,"1412":1,"1413":4,"1416":5,"1417":2,"1419":3,"1420":1,"1421":2,"1422":1,"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1434":1,"1435":2,"1436":2,"1437":2,"1438":2,"1443":3,"1445":1,"1450":3,"1452":1,"1455":1,"1457":1,"1459":1,"1468":1,"1472":2,"1473":1,"1476":1,"1477":2,"1479":1,"1480":2,"1484":1,"1486":2,"1492":1,"1493":1,"1495":2,"1497":1,"1508":1,"1511":1,"1512":3,"1513":1,"1515":6,"1516":6,"1517":3,"1521":2,"1522":2,"1526":2,"1527":1,"1528":2,"1532":8,"1534":2,"1547":2,"1552":2,"1555":1,"1584":1,"1586":2,"1587":4,"1588":3,"1591":1,"1597":1,"1599":2,"1600":1,"1603":1,"1605":1,"1606":4,"1610":1,"1614":1,"1616":3,"1617":1,"1624":1,"1625":1,"1628":2,"1629":1,"1630":3,"1631":1,"1632":1,"1635":1,"1636":1,"1638":1,"1646":1,"1655":1,"1662":1,"1664":2,"1675":3,"1679":1,"1681":1,"1683":1,"1684":1,"1696":1,"1732":1,"1735":2,"1747":2,"1749":1,"1751":5,"1756":2,"1757":1,"1758":1,"1759":1,"1765":2,"1766":2,"1767":1,"1770":1,"1771":1,"1775":1,"1778":1,"1790":1,"1792":2,"1795":1,"1796":1,"1798":2,"1804":1,"1806":1,"1838":1,"1840":3,"1843":1,"1844":1,"1845":1,"1849":1,"1914":2,"1917":1,"1919":1,"1928":2,"1929":2,"1931":1,"1933":3,"1940":1,"1941":1,"1946":1,"1947":1,"1948":1,"1950":1,"1979":1,"1981":2,"1985":1,"1990":1,"1993":1,"2006":2,"2014":3,"2017":4,"2019":2,"2020":1,"2030":6,"2031":7,"2032":1,"2034":1,"2035":1,"2037":1,"2039":1,"2040":1,"2042":2,"2043":1,"2044":1,"2045":2,"2046":1,"2047":2,"2058":1,"2060":3,"2064":4,"2066":1,"2068":1,"2072":2,"2142":1,"2160":3,"2161":1,"2162":1,"2166":2,"2167":2,"2168":4,"2181":1,"2188":1,"2189":2,"2193":1,"2206":1,"2207":1,"2210":2,"2212":1,"2215":1,"2246":1,"2247":1,"2248":4,"2252":1,"2253":2,"2254":3,"2258":1,"2262":1,"2265":1,"2266":1,"2268":4,"2269":1,"2270":1,"2271":3,"2273":2,"2274":1,"2279":1,"2283":1,"2285":3,"2287":3,"2288":1,"2289":1,"2290":3,"2291":4,"2293":2,"2294":1,"2296":1,"2298":2,"2302":1,"2303":1,"2309":3,"2310":2,"2311":4,"2312":4,"2322":2,"2323":3,"2324":4,"2362":1,"2368":1,"2373":1,"2374":1,"2375":2,"2376":1,"2377":4,"2378":1,"2380":2,"2381":1,"2382":1,"2383":1,"2384":4,"2386":1,"2387":1,"2388":1,"2392":1,"2393":1,"2395":1,"2397":1,"2398":1,"2400":4,"2402":1,"2410":5,"2411":5,"2415":4,"2416":2,"2417":1,"2418":1,"2420":1,"2421":1,"2422":1,"2423":2,"2424":6,"2425":1,"2427":1,"2428":1,"2432":1,"2434":2,"2436":1,"2437":1,"2438":2,"2439":3,"2440":1,"2443":2,"2445":1,"2446":2,"2448":1,"2459":6,"2465":1,"2466":1,"2470":1,"2477":1,"2479":1,"2481":1,"2489":1,"2492":1,"2495":1,"2496":3,"2497":1,"2498":1,"2501":1,"2511":1,"2513":7,"2515":2,"2518":6,"2528":1,"2531":6,"2532":1,"2547":2,"2548":1,"2551":1,"2552":2,"2554":2,"2556":1,"2559":1,"2566":3,"2567":4,"2568":4,"2569":9,"2571":1,"2576":1,"2582":1,"2583":1,"2584":1,"2585":1,"2587":3,"2590":2,"2613":2,"2615":1,"2619":4,"2621":1,"2627":1,"2630":2,"2632":2,"2636":1,"2643":2,"2644":1,"2645":1,"2646":3,"2655":2,"2657":3,"2660":3,"2662":1,"2665":1,"2667":1,"2668":2,"2669":2,"2670":1,"2671":1,"2672":1,"2677":2,"2687":1,"2696":1,"2697":1,"2698":1,"2700":5,"2702":2,"2703":1,"2704":3,"2706":1,"2707":2,"2708":1,"2710":1,"2719":2,"2721":14,"2722":4,"2723":1,"2724":2,"2725":1,"2734":1,"2735":3,"2744":2,"2746":6,"2747":1,"2748":6,"2749":1,"2750":10,"2757":1,"2758":1,"2762":1,"2765":1,"2774":1,"2780":1,"2781":1,"2787":3,"2788":2,"2789":2,"2792":2,"2793":3,"2795":1,"2801":1,"2827":2,"2833":1,"2839":1,"2844":1,"2845":2,"2850":2,"2862":3,"2875":2,"2877":1,"2878":1,"2879":4,"2881":2,"2887":1,"2894":2,"2895":2,"2896":1,"2901":6,"2907":2,"2908":9,"2909":3,"2910":3,"2911":2,"2914":7,"2915":2,"2916":2,"2917":1,"2919":2,"2921":1,"2927":2,"2929":2,"2933":1,"2936":1,"2941":4,"2942":2}}],["at25sf128a",{"2":{"2698":2}}],["ation",{"2":{"2170":1}}],["atm32u4dfu",{"2":{"686":1}}],["atm16u4",{"2":{"686":1}}],["atmel",{"0":{"511":1,"2376":1,"2491":1},"1":{"2377":1,"2378":1},"2":{"111":1,"240":3,"571":2,"686":7,"2376":2,"2491":1,"2496":1,"2605":1,"2608":2,"2795":1,"2796":1}}],["atmega16",{"2":{"690":1,"764":2,"1244":1,"1265":2,"1559":2,"1560":2}}],["atmega16u4",{"2":{"511":1,"2491":1}}],["atmega16u2",{"2":{"64":1,"92":1,"511":1,"686":1}}],["atmega32a",{"2":{"235":1,"511":1,"690":1,"764":1,"1244":1,"1265":1,"1559":1,"1560":1,"2493":1,"2494":2}}],["atmega32u4",{"0":{"1983":1},"2":{"70":1,"111":1,"442":1,"511":1,"571":1,"695":1,"712":1,"720":1,"1312":4,"1314":1,"1368":1,"1468":1,"1947":1,"1985":1,"2254":1,"2417":5,"2491":1,"2492":1,"2495":1,"2605":1,"2608":5,"2699":1,"2894":1,"2927":1}}],["atmega32u2",{"2":{"63":1,"64":1,"511":1,"686":1}}],["atmega328p",{"2":{"64":1,"511":1,"2382":1,"2494":2}}],["atmega328",{"2":{"64":1,"511":1,"690":2,"764":1,"1244":1,"1265":1,"1559":1,"1560":1}}],["at32",{"0":{"515":1,"2391":1},"1":{"2392":1},"2":{"317":1,"686":2,"2391":3,"2392":1}}],["at32f415",{"2":{"285":1,"294":1,"515":1}}],["atlas",{"2":{"211":1}}],["atsam",{"2":{"75":1,"114":4,"134":1,"160":1,"277":1,"279":2,"285":1}}],["atop",{"2":{"69":1}}],["atomically",{"2":{"760":1}}],["atomic",{"0":{"760":1},"2":{"64":1,"277":1,"760":5}}],["atom47",{"2":{"57":4,"114":1}}],["at90usb1286",{"2":{"2417":1}}],["at90usb128",{"2":{"511":1,"686":1,"2483":2,"2491":2}}],["at90usb162",{"2":{"74":1,"511":1,"1559":1,"1560":1}}],["at90usb64",{"2":{"511":1,"686":1,"690":1,"764":1,"1244":1,"1265":1,"1559":1,"1560":1,"2491":2}}],["at90usb",{"2":{"63":1}}],["attain",{"2":{"2567":1,"2569":1,"2721":1}}],["attacking",{"2":{"1487":1}}],["attack",{"2":{"312":1,"2567":1}}],["attach",{"0":{"2754":1},"2":{"2754":4}}],["attachment",{"2":{"1364":1,"2754":1}}],["attaching",{"2":{"82":1,"2754":1}}],["attached",{"2":{"49":1,"1555":1,"1641":1,"1678":2,"1679":1,"2014":1,"2178":1,"2265":1,"2416":3,"2459":1}}],["attribution",{"2":{"2707":2}}],["attribute",{"2":{"493":1,"495":1,"496":1,"623":4,"1441":2,"1443":1,"1683":1,"2374":1,"2760":1,"2761":1,"2762":2,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1}}],["attributes",{"2":{"110":1,"492":1,"2667":2}}],["attractive",{"2":{"2418":1}}],["attrs",{"2":{"1329":2}}],["attiny85",{"2":{"1288":2}}],["attenuate",{"2":{"2006":5}}],["attenuation",{"2":{"176":1,"191":1,"2006":6}}],["attention",{"2":{"397":1,"678":1,"2265":1,"2509":1,"2515":1}}],["attempted",{"0":{"2733":1},"1":{"2734":1,"2735":1},"2":{"263":1,"1386":1,"1404":1,"2567":6,"2605":1}}],["attempts",{"0":{"2734":1},"2":{"87":1,"312":1,"359":1,"717":1,"2172":1,"2268":2,"2404":1,"2926":1}}],["attempting",{"2":{"51":1,"123":1,"240":1,"1326":1,"1765":1,"2270":1,"2501":1,"2608":1,"2669":1}}],["attempt",{"2":{"51":1,"123":1,"182":1,"794":2,"1443":1,"2268":3,"2362":1,"2380":1,"2418":1,"2567":1,"2609":1}}],["at101",{"2":{"37":2,"159":2,"160":1}}],["at",{"0":{"2308":1},"2":{"4":1,"11":1,"21":1,"25":1,"28":1,"65":2,"73":1,"75":1,"114":1,"124":1,"134":2,"149":2,"152":1,"156":1,"157":1,"191":2,"199":1,"203":1,"211":1,"222":1,"229":2,"231":1,"241":2,"249":3,"251":1,"265":3,"266":2,"277":1,"285":1,"371":2,"392":1,"397":1,"405":1,"406":1,"408":1,"471":1,"487":2,"490":1,"520":5,"529":2,"532":1,"537":1,"549":1,"550":2,"552":1,"553":2,"554":1,"565":1,"572":1,"574":2,"590":2,"591":2,"602":2,"606":1,"614":1,"624":1,"625":5,"631":1,"633":1,"641":1,"643":1,"644":2,"645":1,"654":1,"655":2,"662":1,"671":1,"674":1,"683":1,"684":2,"688":1,"692":1,"717":1,"730":1,"746":1,"751":3,"754":1,"760":1,"794":1,"801":1,"827":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1189":1,"1195":1,"1198":1,"1215":1,"1249":2,"1269":1,"1293":1,"1296":1,"1300":1,"1315":1,"1316":1,"1324":1,"1328":1,"1345":1,"1375":1,"1386":1,"1410":2,"1416":1,"1417":2,"1438":1,"1441":1,"1443":1,"1471":1,"1475":1,"1478":3,"1479":1,"1481":1,"1486":1,"1497":2,"1521":1,"1522":1,"1527":1,"1532":2,"1533":2,"1552":2,"1562":1,"1563":1,"1564":1,"1587":2,"1589":1,"1596":1,"1602":1,"1610":1,"1619":1,"1621":1,"1630":1,"1633":1,"1639":1,"1641":2,"1655":1,"1657":1,"1661":1,"1664":2,"1679":1,"1683":1,"1691":1,"1722":1,"1723":1,"1756":1,"1757":1,"1768":1,"1821":1,"1847":1,"1849":1,"1924":1,"1925":1,"1928":2,"1929":1,"1930":6,"1931":1,"1932":1,"1933":3,"1940":1,"1941":1,"1947":1,"1948":12,"1950":1,"1955":1,"1985":1,"1997":1,"1999":1,"2006":1,"2014":3,"2016":1,"2017":4,"2030":1,"2050":1,"2063":7,"2070":1,"2072":1,"2074":1,"2179":1,"2183":1,"2187":1,"2191":1,"2198":5,"2201":12,"2205":1,"2245":1,"2251":1,"2252":1,"2257":2,"2260":2,"2265":4,"2270":1,"2279":1,"2283":11,"2286":1,"2287":1,"2291":2,"2292":1,"2293":2,"2302":2,"2303":1,"2310":2,"2312":1,"2322":1,"2325":2,"2372":3,"2389":1,"2393":1,"2395":1,"2397":1,"2403":1,"2410":1,"2411":3,"2418":1,"2420":1,"2421":3,"2422":1,"2427":1,"2435":1,"2447":1,"2449":1,"2459":4,"2464":1,"2468":1,"2474":1,"2497":1,"2501":9,"2539":1,"2545":2,"2547":1,"2550":1,"2551":1,"2558":1,"2560":2,"2567":2,"2568":1,"2572":1,"2577":1,"2578":1,"2585":1,"2589":1,"2595":1,"2601":1,"2605":1,"2609":1,"2620":1,"2621":1,"2627":4,"2630":1,"2633":1,"2635":1,"2643":1,"2651":1,"2652":3,"2667":5,"2668":1,"2669":2,"2670":1,"2671":1,"2679":1,"2683":1,"2708":1,"2710":1,"2719":1,"2721":7,"2722":1,"2725":1,"2727":1,"2746":1,"2747":3,"2748":1,"2749":2,"2750":8,"2751":1,"2760":2,"2767":2,"2809":1,"2826":1,"2835":1,"2844":2,"2875":1,"2878":1,"2885":1,"2896":3,"2901":2,"2903":1,"2916":1,"2927":1,"2929":1,"2930":2,"2931":1,"2932":2,"2933":3,"2937":1,"2940":1,"2941":1,"2942":1}}],["atreus",{"0":{"4":1},"2":{"176":1,"277":1,"328":1}}],["ancient",{"2":{"2703":1}}],["anchors",{"2":{"335":3}}],["anchor",{"2":{"222":1,"335":1}}],["analysis",{"2":{"2646":1}}],["analogue",{"2":{"2423":1}}],["analogreference",{"2":{"695":1}}],["analogreadpinadc",{"2":{"696":1}}],["analogreadpin",{"2":{"50":1,"695":1,"696":1}}],["analogread",{"2":{"50":1,"133":1,"134":1}}],["analog",{"0":{"2000":1},"2":{"49":1,"74":1,"118":2,"149":1,"191":1,"199":2,"234":6,"236":1,"249":1,"687":1,"688":1,"695":1,"1395":2,"1766":2,"1767":2,"1770":1,"1775":1,"1777":4,"1783":1,"1917":1,"2000":22}}],["anatomy",{"0":{"2550":1},"1":{"2551":1,"2552":1,"2553":1,"2554":1}}],["anodes",{"2":{"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1}}],["another",{"2":{"95":1,"149":2,"194":1,"233":1,"251":1,"268":1,"289":1,"397":1,"507":1,"562":2,"673":1,"1393":1,"1421":1,"1450":2,"1466":1,"1472":1,"1474":1,"1477":1,"1492":1,"1512":1,"1527":1,"1532":1,"1589":1,"1603":1,"1607":1,"1613":2,"1656":1,"1675":1,"1752":1,"1755":1,"2156":1,"2157":1,"2160":1,"2258":1,"2285":2,"2291":1,"2293":2,"2303":1,"2310":1,"2318":1,"2381":1,"2393":1,"2395":1,"2397":1,"2449":1,"2475":1,"2496":1,"2550":1,"2568":1,"2627":1,"2651":1,"2652":1,"2662":1,"2721":2,"2749":2,"2824":1,"2827":1,"2902":3,"2908":4,"2909":4,"2914":1,"2917":3,"2935":1}}],["answer",{"2":{"532":1,"608":2,"2621":4}}],["ansi|iso",{"2":{"308":1}}],["ansi",{"0":{"35":1,"2539":1,"2556":1},"1":{"36":1,"2557":1,"2558":1},"2":{"35":1,"36":4,"99":1,"102":1,"114":1,"149":1,"159":2,"168":2,"176":1,"188":1,"191":1,"207":1,"211":4,"217":2,"226":6,"259":2,"260":1,"266":2,"277":1,"308":1,"322":1,"427":3,"442":1,"492":1,"1343":3,"1427":3,"1428":3,"1436":2,"2216":1,"2252":1,"2438":5,"2539":1,"2556":1,"2587":1,"2721":1,"2862":4,"2877":1,"2879":1,"2880":10}}],["anti",{"2":{"438":1,"2728":1,"2741":1,"2748":1,"2865":1}}],["anticipation",{"2":{"86":1}}],["anticipated",{"2":{"2":1,"1493":1}}],["annotation",{"2":{"547":1}}],["annotated",{"0":{"547":1}}],["announce",{"2":{"224":1,"401":1,"402":1,"405":1}}],["annepro2",{"2":{"191":1,"249":1,"266":2}}],["anim",{"2":{"2750":4}}],["animtion",{"2":{"191":1}}],["animate",{"2":{"2187":1,"2750":9}}],["animated",{"2":{"153":1,"2459":1,"2746":1,"2748":1,"2750":1}}],["animation",{"0":{"2184":1,"2185":1,"2187":1},"2":{"49":2,"160":1,"191":5,"222":1,"236":1,"249":1,"285":1,"308":1,"328":1,"460":1,"1842":2,"1843":1,"1846":4,"1859":1,"1861":1,"1902":1,"1904":1,"1906":1,"1909":1,"1943":2,"2062":2,"2063":3,"2069":4,"2085":1,"2087":1,"2146":1,"2148":1,"2150":1,"2153":1,"2181":10,"2183":1,"2184":11,"2185":10,"2187":6,"2199":4,"2202":4,"2530":2,"2537":10,"2538":2,"2750":6,"2757":1,"2768":1,"2864":4,"2870":2,"2871":4}}],["animations",{"0":{"2183":1,"2196":1},"1":{"2184":1,"2185":1,"2186":1,"2187":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1},"2":{"32":1,"124":5,"153":1,"176":1,"191":1,"199":1,"211":1,"222":1,"236":1,"1840":2,"1842":2,"1844":1,"2060":2,"2062":2,"2066":1,"2184":4,"2185":1,"2186":2,"2187":6,"2188":1,"2199":6,"2530":2,"2538":2,"2721":1,"2746":1,"2747":4,"2748":1,"2750":1,"2769":1,"2864":3,"2870":2,"2871":3,"2887":4}}],["angle65",{"2":{"211":1}}],["angle",{"2":{"176":2,"1769":1,"2014":2,"2017":1,"2539":2,"2558":2,"2862":1}}],["angel64",{"2":{"143":4}}],["angel17",{"2":{"143":2}}],["an",{"0":{"424":1,"665":1,"1335":1,"1517":1,"1625":1,"2628":1,"2700":1,"2701":1,"2704":1},"1":{"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"2629":1,"2630":1,"2701":1,"2702":2,"2703":2,"2704":1,"2705":1,"2706":1},"2":{"5":1,"6":1,"14":1,"49":1,"50":1,"73":2,"99":3,"103":1,"126":1,"132":1,"149":1,"158":1,"172":1,"176":1,"182":1,"194":2,"201":1,"203":2,"234":1,"248":1,"249":1,"268":1,"279":1,"288":1,"289":1,"294":1,"320":1,"333":1,"346":1,"360":1,"367":1,"368":1,"374":1,"375":1,"378":2,"383":2,"445":1,"461":1,"465":1,"466":1,"470":1,"471":1,"474":1,"475":1,"485":1,"487":2,"489":1,"493":1,"494":1,"520":1,"521":1,"528":1,"531":1,"532":3,"533":1,"546":1,"552":1,"557":1,"559":2,"563":1,"568":1,"572":1,"576":1,"580":1,"589":1,"597":2,"602":1,"610":1,"611":4,"616":1,"617":2,"618":2,"621":1,"625":1,"626":1,"627":1,"628":1,"642":2,"663":1,"666":2,"669":1,"670":1,"673":2,"676":2,"684":1,"685":1,"686":1,"693":1,"695":1,"696":1,"698":2,"711":1,"712":1,"714":1,"720":1,"731":1,"745":1,"746":1,"747":1,"749":1,"750":1,"751":2,"752":1,"758":4,"763":1,"765":3,"773":1,"782":1,"788":1,"802":1,"828":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1194":1,"1196":1,"1200":1,"1201":1,"1202":2,"1205":1,"1216":1,"1245":1,"1248":1,"1249":2,"1266":1,"1285":1,"1288":1,"1293":1,"1308":1,"1312":1,"1317":1,"1329":1,"1333":1,"1336":1,"1339":1,"1342":1,"1353":1,"1362":1,"1375":1,"1396":1,"1406":2,"1413":2,"1424":1,"1432":1,"1447":1,"1448":1,"1450":3,"1456":1,"1472":1,"1474":1,"1475":1,"1486":1,"1487":1,"1492":1,"1493":1,"1511":2,"1512":1,"1521":1,"1522":2,"1551":1,"1555":1,"1564":1,"1587":2,"1595":1,"1599":1,"1606":1,"1611":1,"1620":1,"1634":1,"1638":2,"1659":1,"1660":1,"1661":1,"1663":1,"1667":1,"1675":1,"1691":1,"1693":1,"1711":1,"1714":1,"1715":1,"1720":1,"1747":1,"1749":2,"1751":1,"1754":1,"1755":2,"1758":1,"1764":2,"1765":1,"1766":3,"1775":1,"1790":1,"1794":1,"1804":1,"1805":1,"1839":2,"1844":1,"1845":1,"1846":2,"1849":1,"1859":1,"1861":1,"1919":2,"1930":2,"1947":1,"1956":1,"1986":1,"1998":1,"1999":1,"2000":2,"2010":1,"2012":1,"2013":1,"2016":1,"2017":1,"2018":1,"2030":1,"2047":1,"2052":1,"2056":1,"2059":2,"2066":1,"2068":1,"2069":2,"2072":1,"2085":1,"2087":1,"2142":1,"2160":1,"2161":1,"2168":1,"2177":2,"2188":2,"2189":2,"2208":2,"2214":1,"2215":1,"2225":1,"2227":1,"2229":1,"2231":1,"2248":1,"2253":2,"2254":1,"2260":1,"2265":1,"2269":2,"2271":1,"2273":1,"2284":2,"2286":1,"2287":1,"2291":1,"2293":1,"2298":2,"2302":1,"2310":4,"2322":2,"2323":1,"2324":1,"2346":1,"2368":2,"2372":1,"2377":1,"2381":1,"2383":1,"2384":1,"2387":3,"2392":1,"2403":1,"2411":1,"2416":1,"2422":2,"2428":1,"2434":1,"2435":1,"2438":3,"2443":1,"2453":1,"2458":1,"2459":2,"2465":1,"2470":1,"2476":1,"2477":1,"2479":2,"2481":1,"2495":1,"2497":1,"2498":1,"2499":1,"2501":1,"2532":2,"2546":1,"2549":1,"2550":1,"2553":1,"2554":1,"2555":1,"2568":1,"2569":2,"2572":1,"2582":2,"2587":1,"2591":3,"2621":1,"2625":1,"2633":2,"2645":1,"2646":3,"2651":1,"2656":1,"2657":1,"2669":1,"2675":1,"2676":2,"2681":1,"2683":1,"2684":1,"2693":1,"2698":2,"2699":1,"2700":2,"2702":1,"2703":1,"2704":4,"2706":1,"2708":2,"2718":1,"2719":3,"2721":8,"2722":2,"2731":1,"2746":1,"2748":3,"2749":2,"2750":5,"2751":2,"2754":1,"2758":1,"2760":2,"2765":1,"2767":1,"2768":1,"2769":1,"2770":1,"2772":1,"2783":2,"2785":1,"2788":2,"2793":1,"2798":1,"2803":1,"2805":1,"2807":1,"2811":1,"2812":1,"2814":1,"2815":1,"2816":1,"2817":1,"2843":1,"2858":1,"2862":1,"2864":2,"2869":1,"2871":2,"2879":1,"2888":1,"2892":1,"2894":1,"2908":1,"2909":1,"2911":1,"2914":5,"2917":1,"2930":1,"2932":1,"2941":1}}],["anding",{"2":{"1375":1}}],["andrebrait",{"2":{"114":2,"191":1}}],["andc",{"2":{"49":1}}],["and",{"0":{"22":1,"35":2,"49":1,"50":1,"51":1,"58":1,"63":1,"64":1,"65":1,"69":1,"70":1,"74":1,"75":1,"76":1,"77":1,"87":1,"93":1,"94":1,"95":1,"113":1,"133":1,"140":1,"190":1,"229":1,"233":1,"273":1,"276":1,"284":1,"316":1,"493":1,"499":2,"500":1,"535":1,"545":1,"606":1,"647":1,"779":1,"1316":1,"1317":1,"1337":1,"1340":1,"1357":1,"1359":1,"1372":1,"1391":1,"1394":1,"1416":1,"1452":1,"1461":1,"1513":1,"1603":1,"1606":1,"1655":1,"1742":1,"1743":1,"1935":1,"1980":1,"1992":1,"2014":1,"2019":1,"2020":1,"2039":1,"2163":1,"2183":1,"2184":1,"2185":1,"2190":1,"2196":1,"2272":1,"2311":1,"2312":1,"2323":1,"2375":1,"2431":1,"2445":1,"2460":1,"2503":1,"2547":1,"2549":1,"2552":1,"2564":1,"2625":1,"2640":1,"2650":1,"2651":1,"2689":1,"2738":1,"2740":1,"2790":1,"2935":1},"1":{"36":2,"88":1,"494":1,"495":1,"496":1,"497":1,"498":1,"500":2,"501":2,"502":2,"503":2,"504":2,"780":1,"781":1,"1317":1,"1417":1,"1656":1,"1657":1,"1658":1,"2164":1,"2165":1,"2166":1,"2184":1,"2185":1,"2186":1,"2187":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1,"2273":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2466":1,"2467":1,"2468":1,"2548":1,"2549":1,"2553":1,"2554":1,"2641":1,"2642":1,"2651":1,"2652":1,"2653":1,"2690":1,"2691":1,"2692":1,"2791":1,"2792":1,"2793":1},"2":{"1":1,"2":2,"3":4,"4":1,"5":2,"6":1,"7":3,"8":1,"10":2,"11":1,"14":2,"15":4,"16":1,"17":1,"18":1,"21":2,"22":1,"24":2,"25":2,"28":2,"30":1,"31":3,"32":5,"33":2,"34":2,"35":1,"36":1,"37":1,"38":1,"43":1,"45":4,"49":12,"50":7,"57":1,"58":1,"63":1,"64":2,"65":3,"67":1,"69":1,"70":19,"72":1,"73":3,"74":2,"75":2,"76":1,"77":1,"84":1,"86":2,"87":2,"90":1,"92":1,"93":5,"94":3,"99":1,"103":1,"107":2,"108":1,"110":2,"113":4,"114":26,"116":1,"118":1,"119":1,"120":2,"124":3,"126":2,"128":1,"130":2,"132":2,"133":1,"134":9,"140":1,"149":10,"152":2,"153":6,"157":2,"160":6,"163":3,"169":1,"172":1,"173":2,"174":2,"175":5,"176":20,"179":1,"182":3,"185":1,"186":1,"187":1,"188":4,"189":1,"190":1,"191":23,"194":6,"195":2,"196":2,"198":6,"199":11,"201":2,"202":2,"203":2,"206":2,"210":2,"211":53,"213":3,"214":1,"218":1,"220":2,"221":1,"222":12,"224":1,"228":6,"229":2,"230":1,"231":3,"232":3,"233":3,"234":1,"235":3,"236":14,"240":2,"244":1,"245":2,"249":14,"251":2,"255":1,"256":1,"257":1,"258":1,"259":4,"262":1,"263":4,"265":2,"266":6,"268":1,"271":1,"273":2,"276":2,"277":6,"283":4,"284":1,"285":4,"288":4,"289":1,"293":1,"294":4,"297":1,"298":2,"304":1,"305":1,"307":2,"308":6,"312":5,"316":1,"317":3,"320":1,"328":3,"338":4,"340":1,"341":1,"344":1,"347":1,"360":5,"361":2,"363":1,"368":2,"369":1,"371":4,"372":1,"374":1,"378":3,"380":3,"384":1,"387":11,"388":1,"390":4,"391":3,"392":2,"396":1,"397":7,"405":1,"406":1,"408":2,"410":1,"411":3,"414":4,"416":2,"417":2,"418":2,"419":1,"420":2,"427":2,"428":3,"431":8,"432":2,"433":4,"435":2,"438":4,"440":1,"441":1,"442":1,"443":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"458":3,"459":3,"467":1,"470":3,"471":1,"481":2,"485":2,"486":1,"487":4,"488":4,"489":2,"492":2,"493":3,"498":1,"499":3,"503":2,"504":1,"505":1,"510":1,"511":1,"519":3,"520":5,"521":4,"522":1,"524":5,"527":2,"528":1,"529":2,"532":1,"533":1,"535":1,"537":2,"538":1,"539":1,"541":1,"542":1,"546":5,"547":1,"548":5,"550":3,"551":3,"552":1,"553":2,"555":2,"556":2,"558":2,"559":8,"560":1,"562":11,"563":1,"566":3,"567":2,"568":2,"569":1,"570":1,"572":5,"573":1,"576":2,"578":1,"579":3,"582":1,"584":2,"586":1,"590":1,"591":2,"594":2,"597":2,"603":1,"606":1,"607":5,"608":1,"609":3,"611":3,"613":3,"614":1,"616":2,"617":5,"618":1,"619":2,"620":2,"621":1,"622":1,"623":3,"624":2,"627":2,"628":2,"629":1,"633":1,"635":1,"637":4,"641":1,"644":1,"645":4,"646":2,"648":2,"649":5,"654":2,"655":1,"663":9,"664":1,"666":4,"667":4,"670":3,"671":1,"672":1,"673":1,"674":4,"675":1,"676":4,"677":2,"681":4,"682":4,"683":5,"684":3,"685":5,"686":5,"687":2,"690":1,"692":4,"693":1,"696":4,"698":1,"699":1,"700":1,"711":1,"713":4,"714":3,"716":3,"717":1,"718":3,"719":1,"720":3,"725":1,"727":1,"730":1,"731":1,"743":4,"746":1,"747":1,"748":1,"750":2,"751":8,"752":2,"753":2,"754":3,"758":1,"763":2,"764":2,"779":1,"798":1,"801":1,"802":3,"824":1,"827":1,"828":3,"853":1,"857":3,"859":1,"860":3,"885":1,"889":1,"890":3,"917":1,"919":1,"920":1,"922":3,"924":1,"925":3,"952":1,"954":1,"956":3,"958":1,"959":3,"986":1,"990":3,"992":1,"993":3,"1020":1,"1024":3,"1026":1,"1027":3,"1054":1,"1058":3,"1060":1,"1061":3,"1088":1,"1090":1,"1091":1,"1092":3,"1094":1,"1095":3,"1122":1,"1124":1,"1125":1,"1126":3,"1128":1,"1129":3,"1156":1,"1158":1,"1160":3,"1162":1,"1163":3,"1189":4,"1190":2,"1191":1,"1193":2,"1194":1,"1195":1,"1196":1,"1197":6,"1198":2,"1200":1,"1201":1,"1202":4,"1204":1,"1212":1,"1215":1,"1216":3,"1244":2,"1262":2,"1263":1,"1265":1,"1269":2,"1280":3,"1281":1,"1283":2,"1284":1,"1285":1,"1287":1,"1289":3,"1290":2,"1291":4,"1292":2,"1294":2,"1295":2,"1296":2,"1297":2,"1300":1,"1309":1,"1310":1,"1311":1,"1312":1,"1314":1,"1315":2,"1317":2,"1323":1,"1326":1,"1327":1,"1329":2,"1333":1,"1334":1,"1336":1,"1337":2,"1338":1,"1339":2,"1340":9,"1343":3,"1344":1,"1345":5,"1346":1,"1347":2,"1348":2,"1350":1,"1351":3,"1353":1,"1354":1,"1358":1,"1359":1,"1361":1,"1362":2,"1363":2,"1365":1,"1366":1,"1368":2,"1369":1,"1373":2,"1374":48,"1375":8,"1378":4,"1385":1,"1389":2,"1390":1,"1392":1,"1393":3,"1404":1,"1406":3,"1407":11,"1409":1,"1410":2,"1412":8,"1413":18,"1414":3,"1415":1,"1416":7,"1417":7,"1419":2,"1420":1,"1421":4,"1422":16,"1425":2,"1427":4,"1428":2,"1430":1,"1432":1,"1433":2,"1434":1,"1435":2,"1436":4,"1437":2,"1438":3,"1441":3,"1442":6,"1443":10,"1444":2,"1445":1,"1447":1,"1450":4,"1451":3,"1452":6,"1454":1,"1455":2,"1457":2,"1459":2,"1461":1,"1462":1,"1466":1,"1467":1,"1468":2,"1469":2,"1471":1,"1472":6,"1474":2,"1475":1,"1477":3,"1478":2,"1479":4,"1483":2,"1484":2,"1485":3,"1486":5,"1487":4,"1490":2,"1492":2,"1493":2,"1494":1,"1497":3,"1498":1,"1500":1,"1504":1,"1509":1,"1510":1,"1511":2,"1512":4,"1514":1,"1515":1,"1516":5,"1517":1,"1519":3,"1520":1,"1521":6,"1522":3,"1523":1,"1526":3,"1527":3,"1528":4,"1529":5,"1531":1,"1532":8,"1533":1,"1534":1,"1547":2,"1551":1,"1552":3,"1555":1,"1556":1,"1564":1,"1583":3,"1587":4,"1588":3,"1589":1,"1591":4,"1594":3,"1596":7,"1597":1,"1599":4,"1600":2,"1603":1,"1604":1,"1606":5,"1607":2,"1608":1,"1610":1,"1611":2,"1612":3,"1613":2,"1614":1,"1615":1,"1617":1,"1620":2,"1624":1,"1625":1,"1626":1,"1627":3,"1628":2,"1630":3,"1633":1,"1634":2,"1635":1,"1636":1,"1638":2,"1639":2,"1641":3,"1647":1,"1648":1,"1649":1,"1650":1,"1651":1,"1652":1,"1653":2,"1655":6,"1657":1,"1658":2,"1659":1,"1660":1,"1661":2,"1662":3,"1663":1,"1664":1,"1665":1,"1667":1,"1670":1,"1672":1,"1675":6,"1676":2,"1678":1,"1679":3,"1680":1,"1684":4,"1689":1,"1696":1,"1702":1,"1714":1,"1716":1,"1717":1,"1723":1,"1724":2,"1730":1,"1732":2,"1733":1,"1735":1,"1736":2,"1740":2,"1743":1,"1746":6,"1747":2,"1749":3,"1751":7,"1752":1,"1754":4,"1755":2,"1756":4,"1757":4,"1758":5,"1759":1,"1760":1,"1761":1,"1763":3,"1765":2,"1766":1,"1768":2,"1770":6,"1771":1,"1779":1,"1781":1,"1783":1,"1793":4,"1798":1,"1801":1,"1805":1,"1806":1,"1815":1,"1840":4,"1843":4,"1844":5,"1899":1,"1913":4,"1914":1,"1917":1,"1920":1,"1924":1,"1925":1,"1928":3,"1929":3,"1930":3,"1931":4,"1932":4,"1933":6,"1935":2,"1939":2,"1940":2,"1941":2,"1942":1,"1946":2,"1947":8,"1948":9,"1950":2,"1951":1,"1955":3,"1956":6,"1958":1,"1967":1,"1969":1,"1979":2,"1980":2,"1983":2,"1984":2,"1985":1,"1986":1,"1989":1,"1990":1,"1992":1,"1995":1,"1996":3,"1998":1,"2000":1,"2001":2,"2002":1,"2003":2,"2005":2,"2006":2,"2008":1,"2009":1,"2010":2,"2013":1,"2014":4,"2015":1,"2016":6,"2017":7,"2018":4,"2019":5,"2020":6,"2021":5,"2023":2,"2024":2,"2025":7,"2026":1,"2027":2,"2028":1,"2030":4,"2031":2,"2032":1,"2033":1,"2035":1,"2037":2,"2039":2,"2040":1,"2042":1,"2044":1,"2045":2,"2046":1,"2047":1,"2049":2,"2050":7,"2051":1,"2052":7,"2060":4,"2063":11,"2065":1,"2066":5,"2074":1,"2075":1,"2137":1,"2139":1,"2141":1,"2143":1,"2156":1,"2157":1,"2159":1,"2160":5,"2161":1,"2162":2,"2163":3,"2164":1,"2166":2,"2167":1,"2168":2,"2170":3,"2171":1,"2175":1,"2177":1,"2179":2,"2180":2,"2181":1,"2183":1,"2184":1,"2185":1,"2186":1,"2189":5,"2190":1,"2191":2,"2198":19,"2199":1,"2200":2,"2201":2,"2202":2,"2207":2,"2208":1,"2210":1,"2211":1,"2218":1,"2219":1,"2239":1,"2244":1,"2247":1,"2248":3,"2249":3,"2252":6,"2254":6,"2255":1,"2256":1,"2257":4,"2258":5,"2259":1,"2260":5,"2262":2,"2264":1,"2265":2,"2266":5,"2267":2,"2268":4,"2269":3,"2270":3,"2271":7,"2272":1,"2273":4,"2274":1,"2277":1,"2279":2,"2280":1,"2282":1,"2283":7,"2284":5,"2285":4,"2286":1,"2287":5,"2288":1,"2289":3,"2290":2,"2291":4,"2293":3,"2295":1,"2296":2,"2298":1,"2301":3,"2302":11,"2303":8,"2305":1,"2310":11,"2311":4,"2312":6,"2313":3,"2316":2,"2318":1,"2319":1,"2322":4,"2323":10,"2324":11,"2337":1,"2338":1,"2339":1,"2358":2,"2362":1,"2368":1,"2370":3,"2371":2,"2372":3,"2374":2,"2375":4,"2376":1,"2377":5,"2378":2,"2379":3,"2380":2,"2381":2,"2382":1,"2383":2,"2384":6,"2385":1,"2386":2,"2387":2,"2388":2,"2389":2,"2390":1,"2391":1,"2392":2,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":2,"2400":4,"2402":2,"2403":11,"2407":2,"2408":2,"2409":2,"2410":6,"2411":18,"2412":1,"2414":2,"2415":3,"2416":5,"2417":2,"2418":5,"2419":1,"2420":8,"2421":12,"2422":6,"2423":2,"2424":3,"2425":3,"2426":3,"2427":9,"2428":1,"2429":1,"2432":3,"2433":1,"2434":3,"2435":4,"2436":1,"2437":1,"2438":5,"2439":2,"2440":3,"2441":2,"2442":1,"2443":3,"2444":1,"2445":3,"2446":2,"2448":2,"2449":1,"2451":4,"2453":2,"2459":12,"2460":1,"2461":1,"2462":2,"2464":1,"2467":1,"2470":2,"2472":2,"2474":2,"2475":3,"2476":2,"2479":1,"2483":3,"2489":1,"2490":1,"2491":2,"2492":3,"2493":1,"2494":3,"2495":1,"2496":4,"2497":2,"2498":2,"2499":2,"2501":5,"2502":1,"2503":36,"2505":13,"2506":1,"2508":2,"2510":2,"2511":10,"2513":26,"2515":61,"2521":2,"2528":1,"2531":25,"2534":50,"2535":20,"2540":20,"2547":2,"2548":2,"2549":1,"2551":7,"2552":4,"2553":2,"2554":1,"2556":1,"2557":1,"2559":25,"2560":7,"2563":2,"2564":1,"2566":4,"2567":5,"2568":2,"2569":5,"2570":1,"2571":2,"2572":3,"2573":3,"2574":1,"2575":2,"2576":1,"2578":3,"2580":2,"2583":3,"2584":1,"2585":2,"2586":1,"2587":1,"2588":1,"2589":1,"2590":2,"2591":2,"2592":4,"2593":1,"2594":2,"2598":1,"2599":2,"2600":1,"2601":1,"2602":1,"2603":4,"2605":10,"2606":1,"2607":1,"2609":5,"2610":2,"2611":1,"2612":4,"2613":1,"2615":1,"2619":1,"2621":10,"2625":3,"2626":1,"2627":16,"2628":1,"2630":2,"2631":2,"2632":4,"2633":6,"2643":8,"2644":25,"2646":2,"2650":1,"2651":3,"2652":2,"2655":2,"2656":3,"2657":1,"2658":1,"2660":2,"2661":1,"2662":4,"2663":3,"2664":3,"2666":4,"2667":10,"2668":3,"2669":2,"2670":6,"2671":1,"2672":2,"2674":3,"2675":1,"2676":6,"2677":5,"2680":1,"2683":2,"2684":2,"2687":1,"2689":2,"2694":1,"2695":3,"2696":2,"2697":4,"2698":1,"2700":1,"2702":1,"2703":3,"2704":1,"2707":1,"2709":1,"2710":5,"2711":1,"2712":2,"2713":4,"2714":3,"2717":1,"2719":10,"2720":1,"2721":23,"2722":3,"2723":1,"2724":4,"2725":1,"2726":2,"2727":1,"2728":1,"2729":1,"2732":1,"2734":1,"2744":4,"2746":1,"2747":2,"2748":6,"2749":11,"2750":20,"2751":3,"2754":1,"2755":1,"2757":1,"2758":4,"2759":1,"2760":2,"2763":1,"2764":1,"2765":6,"2767":1,"2769":1,"2776":2,"2778":4,"2780":2,"2781":1,"2784":3,"2785":1,"2787":4,"2788":8,"2789":3,"2792":1,"2795":1,"2798":1,"2806":1,"2810":1,"2811":1,"2816":1,"2821":1,"2824":1,"2825":1,"2827":1,"2829":1,"2830":1,"2832":1,"2835":3,"2838":1,"2843":1,"2844":4,"2847":2,"2850":1,"2857":2,"2862":4,"2863":1,"2865":2,"2873":2,"2876":1,"2877":1,"2879":2,"2881":1,"2882":6,"2883":1,"2884":1,"2886":1,"2887":1,"2888":1,"2890":1,"2894":3,"2895":4,"2896":2,"2897":1,"2899":3,"2900":3,"2901":14,"2902":5,"2903":1,"2907":1,"2908":12,"2909":4,"2910":3,"2911":2,"2912":3,"2913":3,"2914":6,"2915":3,"2917":7,"2919":1,"2920":1,"2922":1,"2923":1,"2924":1,"2925":1,"2927":3,"2928":3,"2929":2,"2930":1,"2931":1,"2932":2,"2933":1,"2934":2,"2935":1,"2936":4,"2937":3,"2940":2,"2941":3,"2942":5}}],["anymore",{"2":{"1599":1}}],["anything",{"2":{"408":1,"631":1,"716":1,"717":1,"1335":1,"1417":1,"1441":1,"1444":1,"1485":1,"2019":1,"2160":1,"2286":1,"2411":1,"2464":1,"2496":1,"2551":1,"2560":1,"2633":1,"2667":1,"2671":1,"2674":1,"2679":1,"2722":1,"2840":1,"2910":1}}],["anyways",{"2":{"1205":1}}],["anyway",{"2":{"215":1,"562":1,"2567":2,"2568":1}}],["anywhere",{"2":{"201":1,"383":1,"2310":1,"2324":2,"2424":1}}],["anyone",{"2":{"123":1,"1444":1,"1531":1,"2398":1}}],["any",{"0":{"590":1,"628":1},"1":{"629":1,"630":1},"2":{"0":1,"5":1,"9":1,"19":1,"21":1,"22":1,"28":1,"36":1,"39":1,"43":1,"46":1,"49":1,"52":1,"70":1,"73":1,"99":1,"103":1,"124":1,"126":1,"131":1,"142":1,"152":1,"173":1,"175":1,"182":2,"194":1,"215":1,"245":2,"257":1,"258":1,"259":2,"265":2,"268":1,"275":3,"276":2,"307":1,"320":1,"327":1,"346":1,"367":1,"373":2,"374":1,"393":3,"406":1,"427":1,"433":1,"442":1,"444":1,"445":1,"452":1,"472":1,"510":1,"512":1,"520":1,"522":1,"528":1,"533":1,"547":1,"552":1,"572":1,"590":1,"598":1,"611":3,"613":3,"619":1,"624":1,"628":1,"645":1,"649":1,"666":1,"673":1,"681":2,"683":1,"685":1,"692":1,"713":2,"725":1,"769":1,"1202":1,"1210":1,"1245":1,"1247":1,"1268":1,"1289":1,"1310":1,"1314":1,"1316":2,"1317":1,"1339":1,"1367":1,"1375":4,"1404":2,"1407":2,"1410":5,"1413":3,"1419":1,"1424":1,"1428":1,"1437":1,"1438":2,"1441":1,"1443":4,"1450":2,"1475":1,"1479":1,"1482":1,"1495":1,"1511":1,"1512":1,"1516":1,"1521":2,"1527":1,"1550":1,"1552":1,"1559":1,"1560":1,"1583":1,"1587":1,"1588":1,"1604":1,"1606":1,"1614":1,"1665":1,"1675":1,"1698":1,"1735":1,"1740":1,"1752":1,"1754":2,"1757":1,"1765":1,"1770":1,"1841":2,"1844":1,"1954":1,"1956":1,"1983":2,"1984":1,"1986":1,"2016":1,"2030":2,"2039":1,"2040":1,"2042":2,"2045":2,"2061":2,"2066":1,"2156":1,"2160":2,"2188":1,"2189":1,"2210":1,"2211":1,"2213":1,"2249":1,"2253":1,"2254":1,"2257":1,"2270":2,"2271":1,"2284":1,"2285":2,"2286":1,"2293":1,"2302":1,"2310":2,"2311":1,"2312":2,"2317":1,"2324":1,"2374":1,"2376":1,"2379":2,"2381":1,"2382":1,"2383":2,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":3,"2395":3,"2397":3,"2398":1,"2400":1,"2409":1,"2410":1,"2412":1,"2422":1,"2424":1,"2443":1,"2447":1,"2459":1,"2495":1,"2513":1,"2551":1,"2557":1,"2566":1,"2568":5,"2569":1,"2570":3,"2573":1,"2578":1,"2579":1,"2584":1,"2590":1,"2596":1,"2615":1,"2619":1,"2627":1,"2630":1,"2631":1,"2632":1,"2633":2,"2645":4,"2664":1,"2675":1,"2695":1,"2696":1,"2697":1,"2698":1,"2718":1,"2721":4,"2722":2,"2723":1,"2724":1,"2725":2,"2726":1,"2727":1,"2734":1,"2740":1,"2741":1,"2742":1,"2747":2,"2748":5,"2750":8,"2763":1,"2778":1,"2826":1,"2839":1,"2887":1,"2889":1,"2896":1,"2907":1,"2915":1,"2919":1,"2927":2,"2933":1,"2934":1,"2936":2,"2938":1,"2939":1,"2942":1}}],["a",{"0":{"6":1,"21":1,"141":1,"370":1,"424":1,"608":1,"611":1,"625":1,"627":1,"656":1,"657":1,"667":1,"1199":1,"1328":1,"1336":1,"1338":1,"1357":1,"1427":1,"1428":1,"1429":1,"1439":1,"1490":1,"1607":1,"1627":1,"1628":1,"1629":1,"1737":1,"1765":1,"1799":1,"2043":1,"2164":1,"2167":1,"2168":1,"2300":1,"2308":1,"2412":1,"2419":1,"2431":1,"2459":1,"2462":1,"2497":1,"2550":1,"2577":1,"2587":1,"2596":1,"2599":1,"2600":1,"2704":1,"2705":1,"2706":1},"1":{"668":1,"669":1,"1200":1,"1201":1,"1202":1,"1339":1,"1428":1,"1429":1,"1430":2,"1431":1,"1432":1,"1433":1,"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"1630":1,"1631":1,"1632":1,"1633":1,"1634":1,"1635":1,"1636":1,"1637":1,"1638":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1822":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1829":1,"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1,"2551":1,"2552":1,"2553":1,"2554":1},"2":{"0":5,"1":1,"3":1,"6":2,"8":2,"9":4,"10":3,"11":1,"14":1,"15":1,"16":2,"18":2,"19":4,"21":1,"23":1,"24":1,"25":2,"28":3,"39":4,"49":11,"50":2,"52":4,"62":1,"65":3,"70":4,"73":1,"76":1,"80":1,"82":1,"83":1,"84":1,"86":1,"89":1,"90":1,"94":1,"95":1,"98":4,"99":1,"100":4,"107":1,"110":1,"112":2,"114":8,"116":1,"118":1,"120":1,"125":2,"130":2,"131":2,"132":3,"134":3,"138":3,"145":1,"149":9,"152":2,"153":3,"154":1,"156":2,"157":1,"160":2,"163":3,"164":2,"166":2,"169":2,"172":3,"173":4,"174":4,"175":1,"176":3,"179":2,"182":5,"183":1,"185":2,"187":1,"189":3,"190":1,"191":7,"194":10,"195":2,"196":3,"198":3,"199":1,"201":1,"202":1,"203":1,"209":1,"211":11,"213":1,"218":1,"222":7,"224":2,"228":3,"229":1,"230":1,"231":2,"233":1,"234":1,"236":1,"238":2,"246":2,"247":2,"248":1,"249":3,"251":1,"254":1,"255":1,"262":2,"263":2,"265":2,"266":6,"272":1,"273":2,"279":2,"285":1,"288":4,"289":1,"293":2,"294":4,"297":3,"303":1,"305":2,"306":1,"307":1,"312":6,"314":2,"315":1,"317":1,"323":2,"328":2,"332":1,"338":7,"345":1,"346":4,"347":1,"348":2,"355":2,"358":1,"359":1,"360":1,"361":6,"362":2,"363":2,"369":5,"370":2,"371":4,"372":4,"373":4,"377":1,"380":3,"387":2,"388":1,"390":1,"393":4,"396":1,"397":12,"403":1,"405":4,"408":9,"409":2,"410":2,"411":3,"414":1,"417":1,"419":4,"420":1,"421":2,"422":1,"423":1,"427":7,"428":3,"430":1,"431":4,"434":2,"435":6,"436":2,"437":2,"438":3,"440":2,"442":1,"443":3,"444":1,"445":3,"446":2,"447":2,"448":3,"450":6,"451":6,"453":1,"457":2,"458":1,"460":1,"461":1,"464":1,"465":1,"467":1,"470":4,"472":2,"475":1,"480":1,"481":1,"485":2,"487":5,"489":1,"490":3,"492":1,"493":2,"498":2,"502":1,"503":1,"504":2,"508":1,"509":1,"517":1,"520":5,"521":2,"522":2,"523":1,"524":5,"526":1,"527":2,"529":3,"532":1,"533":4,"534":3,"535":5,"536":2,"537":1,"538":1,"540":1,"541":1,"545":1,"546":3,"548":4,"550":2,"551":1,"552":1,"553":1,"554":1,"557":1,"558":1,"559":6,"561":1,"562":6,"563":3,"565":1,"566":2,"568":2,"569":1,"570":6,"572":4,"573":5,"574":1,"576":2,"577":2,"578":2,"579":1,"580":1,"583":2,"585":2,"586":4,"587":4,"589":2,"591":2,"594":3,"595":1,"597":4,"598":1,"602":1,"609":1,"611":11,"613":4,"614":1,"615":1,"616":7,"617":9,"618":2,"620":1,"621":1,"622":2,"623":1,"624":3,"625":4,"626":2,"627":3,"628":3,"629":3,"630":1,"641":1,"642":1,"643":2,"645":1,"646":2,"649":4,"653":2,"654":3,"655":6,"656":2,"657":2,"658":1,"659":2,"663":11,"664":3,"665":1,"666":3,"667":3,"668":1,"669":6,"670":2,"671":3,"673":2,"674":1,"675":1,"676":1,"680":2,"681":6,"682":4,"683":4,"684":2,"685":2,"686":2,"687":3,"692":1,"693":2,"695":2,"696":3,"698":3,"704":1,"711":1,"712":1,"714":1,"715":1,"716":4,"717":3,"718":2,"719":1,"724":2,"725":1,"726":1,"733":1,"737":1,"743":1,"746":2,"747":1,"750":2,"751":4,"752":7,"753":2,"756":1,"757":1,"761":1,"762":1,"763":4,"765":2,"769":1,"771":2,"774":2,"777":3,"780":4,"782":1,"783":2,"785":2,"786":2,"788":1,"789":3,"791":2,"792":3,"794":5,"795":1,"804":1,"809":1,"813":1,"817":1,"819":1,"823":1,"830":1,"836":1,"840":1,"844":1,"846":1,"852":1,"862":1,"868":1,"872":1,"876":1,"878":1,"884":1,"892":1,"900":1,"904":1,"908":1,"910":1,"916":1,"927":1,"935":1,"939":1,"943":1,"945":1,"951":1,"961":1,"969":1,"973":1,"977":1,"979":1,"985":1,"995":1,"1003":1,"1007":1,"1011":1,"1013":1,"1019":1,"1029":1,"1037":1,"1041":1,"1045":1,"1047":1,"1053":1,"1063":1,"1071":1,"1075":1,"1079":1,"1081":1,"1087":1,"1097":1,"1105":1,"1109":1,"1113":1,"1115":1,"1121":1,"1131":1,"1139":1,"1143":1,"1147":1,"1149":1,"1155":1,"1165":1,"1173":1,"1177":1,"1181":1,"1183":1,"1189":1,"1190":2,"1191":1,"1193":1,"1194":2,"1195":1,"1197":3,"1198":1,"1200":1,"1201":1,"1202":2,"1204":1,"1205":1,"1210":1,"1211":2,"1218":1,"1226":1,"1230":1,"1234":1,"1236":1,"1242":1,"1243":1,"1245":4,"1251":1,"1254":1,"1257":1,"1260":2,"1263":1,"1264":1,"1265":6,"1266":1,"1270":1,"1272":1,"1275":1,"1277":2,"1280":5,"1282":3,"1283":6,"1284":1,"1285":2,"1288":1,"1292":2,"1294":4,"1295":2,"1296":1,"1298":1,"1300":2,"1303":1,"1308":10,"1309":1,"1310":4,"1312":3,"1316":2,"1322":1,"1324":5,"1325":1,"1326":1,"1327":2,"1329":1,"1330":2,"1332":2,"1333":2,"1334":2,"1335":1,"1336":1,"1338":1,"1339":1,"1340":8,"1346":1,"1347":2,"1348":1,"1353":2,"1359":1,"1362":3,"1365":1,"1368":1,"1370":2,"1374":6,"1375":9,"1378":2,"1379":2,"1385":1,"1387":1,"1388":2,"1395":2,"1396":1,"1400":1,"1402":1,"1403":1,"1404":3,"1406":4,"1407":6,"1410":9,"1411":1,"1412":3,"1413":7,"1414":1,"1415":3,"1416":4,"1417":5,"1418":1,"1419":3,"1421":7,"1422":3,"1425":4,"1427":5,"1428":3,"1429":1,"1430":2,"1433":2,"1434":2,"1435":1,"1436":1,"1438":5,"1439":2,"1440":1,"1441":5,"1442":3,"1443":6,"1444":4,"1445":2,"1446":3,"1448":5,"1450":8,"1451":5,"1452":11,"1453":2,"1454":1,"1455":3,"1456":1,"1459":1,"1460":1,"1467":2,"1468":2,"1469":1,"1471":3,"1474":2,"1475":2,"1478":6,"1479":7,"1480":2,"1481":1,"1482":2,"1483":1,"1484":6,"1485":1,"1486":6,"1487":8,"1490":2,"1491":1,"1492":7,"1493":4,"1495":2,"1496":1,"1497":10,"1502":1,"1504":2,"1507":2,"1508":1,"1509":1,"1510":1,"1511":1,"1512":7,"1513":1,"1517":6,"1518":1,"1519":12,"1520":3,"1521":4,"1522":7,"1523":3,"1526":6,"1527":3,"1528":2,"1529":3,"1532":23,"1533":2,"1547":4,"1551":2,"1552":2,"1555":1,"1557":3,"1559":1,"1562":1,"1564":4,"1583":3,"1584":1,"1585":2,"1587":7,"1588":3,"1589":1,"1591":2,"1592":1,"1594":2,"1595":1,"1596":7,"1597":1,"1598":2,"1599":4,"1600":1,"1603":3,"1604":2,"1606":4,"1607":2,"1609":1,"1611":5,"1612":1,"1614":4,"1615":1,"1616":2,"1617":2,"1621":1,"1622":3,"1625":1,"1626":1,"1627":5,"1628":5,"1630":8,"1633":3,"1634":1,"1638":2,"1639":2,"1642":2,"1655":3,"1656":4,"1657":1,"1658":4,"1659":5,"1660":6,"1661":1,"1663":1,"1664":5,"1665":2,"1667":2,"1669":1,"1672":3,"1673":1,"1675":7,"1678":2,"1679":9,"1680":1,"1681":1,"1683":1,"1684":5,"1685":2,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1707":1,"1709":1,"1711":1,"1713":1,"1715":1,"1716":1,"1719":1,"1721":1,"1724":1,"1726":1,"1732":3,"1733":1,"1736":5,"1739":1,"1740":2,"1741":1,"1742":1,"1743":2,"1746":1,"1747":1,"1749":3,"1751":11,"1752":3,"1753":1,"1754":5,"1755":3,"1756":21,"1757":1,"1758":7,"1759":2,"1760":2,"1761":4,"1764":3,"1765":5,"1766":4,"1768":1,"1769":1,"1770":2,"1771":1,"1775":1,"1776":1,"1779":1,"1781":1,"1785":1,"1792":1,"1793":1,"1794":1,"1796":1,"1799":3,"1801":3,"1803":1,"1804":1,"1805":1,"1806":5,"1812":1,"1840":7,"1841":3,"1843":5,"1844":6,"1845":1,"1847":1,"1849":1,"1859":1,"1917":4,"1919":19,"1920":1,"1924":2,"1928":2,"1929":2,"1930":3,"1933":8,"1934":1,"1940":1,"1941":3,"1942":2,"1943":1,"1946":1,"1947":4,"1948":13,"1950":1,"1953":2,"1954":1,"1955":2,"1958":1,"1963":1,"1965":1,"1967":1,"1969":1,"1971":1,"1978":1,"1979":5,"1980":1,"1986":1,"1988":2,"1990":3,"1993":1,"1995":1,"1996":2,"1997":2,"1998":1,"2000":1,"2001":1,"2003":1,"2006":3,"2008":4,"2009":1,"2010":1,"2012":1,"2013":1,"2014":1,"2015":2,"2016":8,"2017":9,"2018":3,"2019":6,"2020":5,"2021":6,"2023":2,"2024":1,"2025":1,"2026":1,"2027":1,"2028":2,"2030":9,"2031":3,"2033":1,"2039":1,"2044":2,"2045":1,"2046":1,"2047":1,"2050":3,"2051":2,"2052":5,"2054":1,"2055":1,"2057":1,"2060":7,"2061":3,"2063":14,"2064":2,"2066":6,"2068":1,"2070":1,"2072":1,"2074":3,"2085":1,"2156":2,"2157":1,"2159":1,"2162":3,"2163":1,"2165":1,"2167":4,"2168":1,"2170":6,"2171":2,"2172":1,"2173":1,"2175":3,"2176":1,"2178":6,"2179":1,"2183":3,"2187":1,"2188":1,"2189":2,"2191":2,"2194":2,"2198":4,"2209":1,"2214":2,"2215":3,"2216":1,"2218":1,"2221":1,"2223":2,"2225":1,"2227":2,"2233":1,"2235":1,"2237":1,"2239":3,"2242":2,"2252":3,"2253":2,"2254":4,"2257":1,"2258":2,"2261":1,"2262":2,"2264":1,"2265":6,"2266":4,"2268":5,"2270":12,"2271":9,"2273":4,"2274":1,"2278":1,"2279":3,"2280":1,"2283":11,"2284":2,"2285":1,"2286":1,"2287":9,"2288":5,"2289":4,"2290":2,"2291":5,"2293":6,"2294":5,"2295":2,"2296":1,"2297":1,"2298":2,"2301":3,"2302":8,"2303":13,"2305":3,"2309":1,"2310":18,"2311":5,"2312":4,"2313":3,"2317":1,"2320":4,"2321":5,"2322":2,"2323":6,"2324":6,"2340":2,"2342":1,"2349":1,"2358":1,"2368":3,"2371":1,"2372":3,"2373":1,"2374":1,"2375":1,"2376":1,"2377":5,"2378":1,"2379":4,"2380":2,"2381":2,"2382":3,"2383":2,"2384":7,"2385":1,"2386":6,"2388":4,"2389":2,"2390":1,"2391":5,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":3,"2399":1,"2400":2,"2403":6,"2404":1,"2405":1,"2406":2,"2407":4,"2408":2,"2409":2,"2410":3,"2411":8,"2412":2,"2414":2,"2415":3,"2416":8,"2417":4,"2419":4,"2420":14,"2421":5,"2422":5,"2423":2,"2424":5,"2425":5,"2427":9,"2428":3,"2429":1,"2430":2,"2431":1,"2433":1,"2434":2,"2435":11,"2437":1,"2438":7,"2439":5,"2440":6,"2441":1,"2442":1,"2443":1,"2445":3,"2446":1,"2447":3,"2448":1,"2451":3,"2455":1,"2457":1,"2459":21,"2461":1,"2462":2,"2463":5,"2464":2,"2465":5,"2466":2,"2467":8,"2468":4,"2470":1,"2472":1,"2474":3,"2475":4,"2477":3,"2479":1,"2481":3,"2489":1,"2491":1,"2492":3,"2494":5,"2495":2,"2496":4,"2497":4,"2498":2,"2503":3,"2513":2,"2514":3,"2515":10,"2528":1,"2529":1,"2531":2,"2532":19,"2534":1,"2546":4,"2547":1,"2548":2,"2549":5,"2550":1,"2551":4,"2552":2,"2553":2,"2554":2,"2555":1,"2556":2,"2559":4,"2560":4,"2562":1,"2564":1,"2566":3,"2567":2,"2568":7,"2569":8,"2570":3,"2571":1,"2572":7,"2573":3,"2576":1,"2577":7,"2578":3,"2579":4,"2580":2,"2582":3,"2583":1,"2584":3,"2585":2,"2586":1,"2587":3,"2588":4,"2590":1,"2591":3,"2592":3,"2594":2,"2596":1,"2598":2,"2599":2,"2601":1,"2603":1,"2604":1,"2605":4,"2607":1,"2609":2,"2610":1,"2612":4,"2613":2,"2615":1,"2620":2,"2621":1,"2622":6,"2625":3,"2626":4,"2627":6,"2628":2,"2629":3,"2630":4,"2631":3,"2632":2,"2633":4,"2636":2,"2638":1,"2643":8,"2644":2,"2645":7,"2646":2,"2649":1,"2652":2,"2655":2,"2656":1,"2657":3,"2662":4,"2664":2,"2667":6,"2668":5,"2669":4,"2670":2,"2671":1,"2672":5,"2673":3,"2674":3,"2675":2,"2679":2,"2684":5,"2689":1,"2693":2,"2695":1,"2696":1,"2697":1,"2698":2,"2699":3,"2700":2,"2702":3,"2703":1,"2704":1,"2705":1,"2706":2,"2707":9,"2709":2,"2710":2,"2713":2,"2714":1,"2715":2,"2717":1,"2718":2,"2719":12,"2720":1,"2721":26,"2722":7,"2723":2,"2724":3,"2725":2,"2727":1,"2728":1,"2731":1,"2734":1,"2735":2,"2742":1,"2744":2,"2748":8,"2749":21,"2750":26,"2751":3,"2754":1,"2757":3,"2758":4,"2760":1,"2762":1,"2764":1,"2765":3,"2766":3,"2767":1,"2768":1,"2769":7,"2770":1,"2773":2,"2774":2,"2778":3,"2780":3,"2781":2,"2783":1,"2784":6,"2787":3,"2788":6,"2789":4,"2790":1,"2792":2,"2793":1,"2795":2,"2796":1,"2798":2,"2799":2,"2800":2,"2801":1,"2802":1,"2805":1,"2806":1,"2811":1,"2813":2,"2814":2,"2815":1,"2816":1,"2817":1,"2818":2,"2819":1,"2821":2,"2822":2,"2824":1,"2825":1,"2826":1,"2827":3,"2828":1,"2829":1,"2830":1,"2832":2,"2833":3,"2834":1,"2835":3,"2836":1,"2837":3,"2838":1,"2839":1,"2840":1,"2841":1,"2843":1,"2844":1,"2845":5,"2847":1,"2849":2,"2850":2,"2855":1,"2856":2,"2857":1,"2858":3,"2861":3,"2862":8,"2863":1,"2864":3,"2865":6,"2869":2,"2870":1,"2871":3,"2872":1,"2873":1,"2875":4,"2877":2,"2878":2,"2879":5,"2880":2,"2881":2,"2882":1,"2883":1,"2886":2,"2887":1,"2888":1,"2889":1,"2890":1,"2895":2,"2896":1,"2897":1,"2899":4,"2900":3,"2901":13,"2903":4,"2904":8,"2905":8,"2906":5,"2907":11,"2908":15,"2909":6,"2910":11,"2911":7,"2912":1,"2913":1,"2914":8,"2915":6,"2916":1,"2917":8,"2919":4,"2920":2,"2921":2,"2923":1,"2925":3,"2926":2,"2927":2,"2929":7,"2930":6,"2931":1,"2932":3,"2933":5,"2934":2,"2936":1,"2937":12,"2938":1,"2939":1,"2940":3,"2941":4,"2942":9}}]],"serializationVersion":2}`; -export { - _localSearchIndexroot as default -}; diff --git a/assets/chunks/@localSearchIndexroot.D34-pwHA.js b/assets/chunks/@localSearchIndexroot.D34-pwHA.js new file mode 100644 index 00000000000..3148660d457 --- /dev/null +++ b/assets/chunks/@localSearchIndexroot.D34-pwHA.js @@ -0,0 +1,4 @@ +const _localSearchIndexroot = `{"documentCount":2943,"nextId":2943,"documentIds":{"0":"/ChangeLog/20190830#qmk-breaking-change-2019-aug-30","1":"/ChangeLog/20190830#core-code-formatting-with-clang-format","2":"/ChangeLog/20190830#lufa-usb-descriptor-cleanup","3":"/ChangeLog/20190830#migrating-action-layer-momentary-entries-in-fn-actions-to-mo-keycodes","4":"/ChangeLog/20190830#update-atreus-to-current-code-conventions","5":"/ChangeLog/20190830#backport-changes-to-keymap-language-files-from-zsa-fork","6":"/ChangeLog/20190830#update-repo-to-use-lufa-as-a-git-submodule","7":"/ChangeLog/20190830#migrating-action-backlight-entries-in-fn-actions-to-bl-keycodes","8":"/ChangeLog/20190830#remove-kc-delt-alias-in-favor-of-kc-del","9":"/ChangeLog/20200229#qmk-breaking-change-2020-feb-29-changelog","10":"/ChangeLog/20200229#update-chibios-chibios-contrib-ugfx-submodules","11":"/ChangeLog/20200229#fix-chibios-timer-overflow-for-16-bit-systick-devices","12":"/ChangeLog/20200229#update-lufa-submodule","13":"/ChangeLog/20200229#encoder-flip","14":"/ChangeLog/20200229#adding-support-for-backlight-on-state-for-hardware-pwm-backlight","15":"/ChangeLog/20200229#migrating-action-layer-tap-key-entries-in-fn-actions-to-lt-keycodes","16":"/ChangeLog/20200229#moving-backlight-keycode-handling-to-process-keycode","17":"/ChangeLog/20200229#refactor-planck-keymaps-to-use-layout-macros","18":"/ChangeLog/20200229#gon-nerd-codebase-refactor","19":"/ChangeLog/20200530#qmk-breaking-change-2020-may-30-changelog","20":"/ChangeLog/20200530#core-changes","21":"/ChangeLog/20200530#converting-v-usb-usbdrv-to-a-submodule","22":"/ChangeLog/20200530#unify-tap-hold-functions-and-documentation","23":"/ChangeLog/20200530#python-required-in-the-build-process","24":"/ChangeLog/20200530#upgrade-from-tinyprintf-to-mpaland-printf","25":"/ChangeLog/20200530#fixed-rgb-disable-after-timeout-to-be-seconds-based-small-internals-cleanup","26":"/ChangeLog/20200530#switch-to-qmk-forks-for-everything","27":"/ChangeLog/20200530#code-cleanup-regarding-deprecated-macro-play-note-array-by-replacing-it-with-play-song","28":"/ChangeLog/20200530#fixing-wrong-configuration-of-audio-feature","29":"/ChangeLog/20200530#keyboard-refactors","30":"/ChangeLog/20200530#migrating-lily58-to-use-split-common","31":"/ChangeLog/20200530#to-migrate-existing-lily58-firmware","32":"/ChangeLog/20200530#refactor-zinc-to-use-split-common","33":"/ChangeLog/20200530#refactor-of-tkc1800-to-use-common-oled-code","34":"/ChangeLog/20200530#to-migrate-existing-tkc1800-firmware","35":"/ChangeLog/20200530#split-hhkb-to-ansi-and-jp-layouts-and-add-via-support-for-each","36":"/ChangeLog/20200530#migrating-existing-hhkb-keymaps","37":"/ChangeLog/20200530#keyboard-moves","38":"/ChangeLog/20200530#keycode-migration-prs","39":"/ChangeLog/20200829#qmk-breaking-change-2020-aug-29-changelog","40":"/ChangeLog/20200829#changes-requiring-user-action","41":"/ChangeLog/20200829#relocated-keyboards","42":"/ChangeLog/20200829#the-key-company-project-consolidation-9547","43":"/ChangeLog/20200829#relocating-boards-by-flehrad-to-flehrad-folder-9635","44":"/ChangeLog/20200829#keyboard-updates","45":"/ChangeLog/20200829#keebio-rgb-wiring-update-7754","46":"/ChangeLog/20200829#core-updates","47":"/ChangeLog/20200829#core-changes","48":"/ChangeLog/20200829#core-fixes","49":"/ChangeLog/20200829#core-additions","50":"/ChangeLog/20200829#core-optimizations","51":"/ChangeLog/20200829#qmk-internals","52":"/ChangeLog/20201128#qmk-breaking-change-2020-nov-28-changelog","53":"/ChangeLog/20201128#changes-requiring-user-action","54":"/ChangeLog/20201128#relocated-keyboards","55":"/ChangeLog/20201128#reduce-helix-keyboard-build-variation-8669","56":"/ChangeLog/20201128#update-the-speedo-firmware-for-v3-0-10657","57":"/ChangeLog/20201128#maartenwut-maarten-name-change-to-evyd13-evy-10274","58":"/ChangeLog/20201128#xelus-valor-and-dawn60-refactors-10512-10584","59":"/ChangeLog/20201128#keyboard-updates","60":"/ChangeLog/20201128#aeboards-ext65-refactor-10820","61":"/ChangeLog/20201128#core-changes","62":"/ChangeLog/20201128#core-fixes","63":"/ChangeLog/20201128#core-additions","64":"/ChangeLog/20201128#core-optimizations","65":"/ChangeLog/20201128#qmk-internals","66":"/ChangeLog/20210227#qmk-breaking-changes-2021-february-27-changelog","67":"/ChangeLog/20210227#changes-requiring-user-action","68":"/ChangeLog/20210227#core-changes","69":"/ChangeLog/20210227#chibios-update-and-config-migration","70":"/ChangeLog/20210227#qmk-infrastructure-and-internals","71":"/ChangeLog/20210227#detailed-change-list","72":"/ChangeLog/20210227#changes-requiring-user-action-1","73":"/ChangeLog/20210227#fixes","74":"/ChangeLog/20210227#additions-and-enhancements","75":"/ChangeLog/20210227#clean-ups-and-optimizations","76":"/ChangeLog/20210227#qmk-infrastructure-and-internals-1","77":"/ChangeLog/20210227#chibios-update-and-config-migration-1","78":"/ChangeLog/20210529#qmk-breaking-changes-2021-may-29-changelog","79":"/ChangeLog/20210529#notable-changes","80":"/ChangeLog/20210529#rgb-matrix-split-common","81":"/ChangeLog/20210529#teensy-3-6-support","82":"/ChangeLog/20210529#new-command-qmk-console","83":"/ChangeLog/20210529#improve-command-qmk-config","84":"/ChangeLog/20210529#led-matrix-improvements","85":"/ChangeLog/20210529#changes-requiring-user-action","86":"/ChangeLog/20210529#updated-keyboard-codebases","87":"/ChangeLog/20210529#bootmagic-deprecation-and-refactor","88":"/ChangeLog/20210529#tentative-deprecation-schedule","89":"/ChangeLog/20210529#removal-of-layout-kc","90":"/ChangeLog/20210529#encoder-callback-boolean","91":"/ChangeLog/20210529#core-changes","92":"/ChangeLog/20210529#core-fixes","93":"/ChangeLog/20210529#core-additions","94":"/ChangeLog/20210529#core-optimizations","95":"/ChangeLog/20210529#qmk-internals","96":"/ChangeLog/20210828#qmk-breaking-changes-2021-august-28-changelog","97":"/ChangeLog/20210828#notable-features","98":"/ChangeLog/20210828#combo-processing-improvements","99":"/ChangeLog/20210828#key-overrides","100":"/ChangeLog/20210828#digitizer-support-12851","101":"/ChangeLog/20210828#changes-requiring-user-action","102":"/ChangeLog/20210828#updated-keyboard-codebases","103":"/ChangeLog/20210828#bootmagic-full-removal","104":"/ChangeLog/20210828#bootmagic-full-deprecation-schedule","105":"/ChangeLog/20210828#dip-switch-boolean","106":"/ChangeLog/20210828#notable-core","107":"/ChangeLog/20210828#split-transport-improvements","108":"/ChangeLog/20210828#teensy-4-x-support","109":"/ChangeLog/20210828#data-driven-improvements-13366","110":"/ChangeLog/20210828#tags","111":"/ChangeLog/20210828#dot-notation","112":"/ChangeLog/20210828#new-configuration-keys","113":"/ChangeLog/20210828#codebase-restructure","114":"/ChangeLog/20210828#full-changelist","115":"/ChangeLog/20211127#qmk-breaking-changes-2021-november-27-changelog","116":"/ChangeLog/20211127#qmk-2000th-keyboard","117":"/ChangeLog/20211127#notable-features","118":"/ChangeLog/20211127#expanded-pointing-device","119":"/ChangeLog/20211127#dynamic-tapping-term","120":"/ChangeLog/20211127#macros-in-keymap-json","121":"/ChangeLog/20211127#changes-requiring-user-action","122":"/ChangeLog/20211127#updated-keyboard-codebases","123":"/ChangeLog/20211127#squeezing-space-from-avr","124":"/ChangeLog/20211127#explicit-rgb-modes","125":"/ChangeLog/20211127#oled-task-refactor","126":"/ChangeLog/20211127#bootmagic-full-removal","127":"/ChangeLog/20211127#bootmagic-full-deprecation-schedule-complete","128":"/ChangeLog/20211127#remove-qwiic","129":"/ChangeLog/20211127#notable-core","130":"/ChangeLog/20211127#new-mcu-support","131":"/ChangeLog/20211127#eeprom-changes","132":"/ChangeLog/20211127#compile-commands","133":"/ChangeLog/20211127#codebase-restructure","134":"/ChangeLog/20211127#full-changelist","135":"/ChangeLog/20220528#qmk-breaking-changes-2022-may-28-changelog","136":"/ChangeLog/20220528#notable-features","137":"/ChangeLog/20220528#caps-word","138":"/ChangeLog/20220528#quantum-painter","139":"/ChangeLog/20220528#encoder-mapping","140":"/ChangeLog/20220528#changes-requiring-user-action","141":"/ChangeLog/20220528#reset-2-qk_boot","142":"/ChangeLog/20220528#sendstring-keycodes","143":"/ChangeLog/20220528#pillow-install","144":"/ChangeLog/20220528#updated-keyboard-codebases","145":"/ChangeLog/20220528#full-changelist","146":"/ChangeLog/20220226#qmk-breaking-changes-2022-february-26-changelog","147":"/ChangeLog/20220226#notable-features","148":"/ChangeLog/20220226#default-usb-polling-rate-now-1khz-15352","149":"/ChangeLog/20220226#split-support-for-pointing-devices-15304","150":"/ChangeLog/20220226#changes-requiring-user-action","151":"/ChangeLog/20220226#legacy-macro-and-action-function-system-removed-16025","152":"/ChangeLog/20220226#create-a-build-error-if-no-bootloader-is-specified-16181","153":"/ChangeLog/20220226#rename-adafruitble-to-bluefruitle-16127","154":"/ChangeLog/20220226#updated-keyboard-codebases","155":"/ChangeLog/20220226#notable-core","156":"/ChangeLog/20220226#new-mcu-support","157":"/ChangeLog/20220226#new-drivers","158":"/ChangeLog/20220226#led","159":"/ChangeLog/20220226#gpio","160":"/ChangeLog/20220226#full-changelist","161":"/ChangeLog/20220827#qmk-breaking-changes-2022-august-27-changelog","162":"/ChangeLog/20220827#notable-features","163":"/ChangeLog/20220827#rp2040-support","164":"/ChangeLog/20220827#cli-flash-binaries","165":"/ChangeLog/20220827#changes-requiring-user-action","166":"/ChangeLog/20220827#default-layers-dropped-from-32-to-16-15286","167":"/ChangeLog/20220827#reset-2-qk_boot","168":"/ChangeLog/20220827#updated-keyboard-codebases","169":"/ChangeLog/20220827#usb-ids-Refactoring","170":"/ChangeLog/20220827#deprecation-schedule","171":"/ChangeLog/20220827#notable-core","172":"/ChangeLog/20220827#board-converters","173":"/ChangeLog/20220827#cli-import","174":"/ChangeLog/20220827#wear-leveling","175":"/ChangeLog/20220827#pointing-device-improvements","176":"/ChangeLog/20220827#full-changelist","177":"/ChangeLog/20221126#qmk-breaking-changes-2022-november-26-changelog","178":"/ChangeLog/20221126#notable-features","179":"/ChangeLog/20221126#autocorrect","180":"/ChangeLog/20221126#changes-requiring-user-action","181":"/ChangeLog/20221126#updated-keyboard-codebases","182":"/ChangeLog/20221126#keycodes-overhaul-user-action","183":"/ChangeLog/20221126#config-refactoring","184":"/ChangeLog/20221126#usb-ids-Refactoring","185":"/ChangeLog/20221126#led-callback-refactor","186":"/ChangeLog/20221126#unicode-mode-renaming","187":"/ChangeLog/20221126#notable-core","188":"/ChangeLog/20221126#keycodes-overhaul-core-changes","189":"/ChangeLog/20221126#board-converters","190":"/ChangeLog/20221126#pointing-and-digitizer","191":"/ChangeLog/20221126#full-changelist","192":"/ChangeLog/20230226#qmk-breaking-changes-2023-february-26-changelog","193":"/ChangeLog/20230226#changes-requiring-user-action","194":"/ChangeLog/20230226#i-m-t-i","195":"/ChangeLog/20230226#quick-tap-term","196":"/ChangeLog/20230226#leader-key-rework-leader-key-rework-19632","197":"/ChangeLog/20230226#updated-keyboard-codebases","198":"/ChangeLog/20230226#notable-core","199":"/ChangeLog/20230226#full-changelist","200":"/ChangeLog/20230827#qmk-breaking-changes-2023-aug-27-changelog","201":"/ChangeLog/20230827#notable-changes","202":"/ChangeLog/20230827#rgb-matrix-optimizations","203":"/ChangeLog/20230827#audio-optimizations-21496-21498","204":"/ChangeLog/20230827#changes-requiring-user-action","205":"/ChangeLog/20230827#updated-keyboard-codebases","206":"/ChangeLog/20230827#remove-encoder-in-matrix-workaround-code","207":"/ChangeLog/20230827#unicodemap-keycodes-rename","208":"/ChangeLog/20230827#remove-old-oled-api-code","209":"/ChangeLog/20230827#driver-naming-consolidation","210":"/ChangeLog/20230827#full-changelist","211":"/ChangeLog/20230528#qmk-breaking-changes-2023-may-28-changelog","212":"/ChangeLog/20230528#notable-changes","213":"/ChangeLog/20230528#repeat-last-key","214":"/ChangeLog/20230528#user-callback-for-pre-process-record","215":"/ChangeLog/20230528#consolidate-modelm","216":"/ChangeLog/20230528#changes-requiring-user-action","217":"/ChangeLog/20230528#i-m-t-i","218":"/ChangeLog/20230528#updated-keyboard-codebases","219":"/ChangeLog/20230528#notable-core","220":"/ChangeLog/20230528#encoder-functionality-fallback","221":"/ChangeLog/20230528#oled-driver-improvements","222":"/ChangeLog/20230528#full-changelist","223":"/ChangeLog/20231126#qmk-breaking-changes-2023-november-26-changelog","224":"/ChangeLog/20231126#notable-features","225":"/ChangeLog/20231126#changes-requiring-user-action","226":"/ChangeLog/20231126#updated-keyboard-codebases","227":"/ChangeLog/20231126#notable-core","228":"/ChangeLog/20231126#external-userspace-22222","229":"/ChangeLog/20231126#improve-and-cleanup-shutdown-callbacks","230":"/ChangeLog/20231126#oled-force-flush","231":"/ChangeLog/20231126#switch-statement-helpers-for-keycode-ranges","232":"/ChangeLog/20231126#quantum-painter-oled-support","233":"/ChangeLog/20231126#rgb-led-lighting-driver-naming-and-cleanup-21890-21891-21892-21903-21904-21905-21918-21929-21938-22004-22008-22009-22071-22090-22099-22126-22133-22163-22200-22308-22309-22311-22325-22365-22379-22380-22381-22383-22436","234":"/ChangeLog/20231126#peripheral-subsystem-enabling","235":"/ChangeLog/20231126#vusb-nkro","236":"/ChangeLog/20231126#full-changelist","237":"/ChangeLog/20240225#qmk-breaking-changes-2024-february-25-changelog","238":"/ChangeLog/20240225#notable-features","239":"/ChangeLog/20240225#changes-requiring-user-action","240":"/ChangeLog/20240225#windows-driver-changes-qmk-toolbox-0-3-0-release","241":"/ChangeLog/20240225#updated-keyboard-codebases","242":"/ChangeLog/20240225#notable-core","243":"/ChangeLog/20240225#gpio-rename","244":"/ChangeLog/20240225#i2c-driver-api-changes-22905","245":"/ChangeLog/20240225#bootmagic-rename","246":"/ChangeLog/20240225#auto-mouse-layer","247":"/ChangeLog/20240225#dip-switch-map","248":"/ChangeLog/20240225#qp-updates","249":"/ChangeLog/20240225#full-changelist","250":"/ChangeLog/20240526#qmk-breaking-changes-2024-may-26-changelog","251":"/ChangeLog/20240526#notable-features","252":"/ChangeLog/20240526#changes-requiring-user-action","253":"/ChangeLog/20240526#updated-keyboard-codebases","254":"/ChangeLog/20240526#remove-deprecated-quantum-keycodes-23407","255":"/ChangeLog/20240526#spacey-layout-updates","256":"/ChangeLog/20240526#acr60-layout-updates","257":"/ChangeLog/20240526#acr60-layout-hhkb","258":"/ChangeLog/20240526#acr60-layout-true-hhkb","259":"/ChangeLog/20240526#acr60-layout-directional","260":"/ChangeLog/20240526#acr60-layout-mitchsplit","261":"/ChangeLog/20240526#notable-core","262":"/ChangeLog/20240526#keyboard-json","263":"/ChangeLog/20240526#refactor-chibios-usb-endpoints-to-be-fully-async-21656","264":"/ChangeLog/20240526#deprecation-notices","265":"/ChangeLog/20240526#migration-of-via-keymaps-to-via-team-control","266":"/ChangeLog/20240526#full-changelist","267":"/ChangeLog/20240825#qmk-breaking-changes-2024-august-25-changelog","268":"/ChangeLog/20240825#notable-features","269":"/ChangeLog/20240825#changes-requiring-user-action","270":"/ChangeLog/20240825#updated-keyboard-codebases","271":"/ChangeLog/20240825#sparkfun-pro-micro-rp2040-converter-renamed-24192","272":"/ChangeLog/20240825#key-override-keymap-c-signature-change-24120","273":"/ChangeLog/20240825#adns9800-and-pmw33xx-firmware-upload-now-opt-in-24001","274":"/ChangeLog/20240825#deprecation-notices","275":"/ChangeLog/20240825#migration-of-via-keymaps-to-via-team-control","276":"/ChangeLog/20240825#adns9800-and-pmw33xx-sensor-firmware-rom-removal","277":"/ChangeLog/20240825#full-changelist","278":"/ChangeLog/20241124#qmk-breaking-changes-2024-november-24-changelog","279":"/ChangeLog/20241124#notable-features","280":"/ChangeLog/20241124#changes-requiring-user-action","281":"/ChangeLog/20241124#updated-keyboard-codebases","282":"/ChangeLog/20241124#deprecation-notices","283":"/ChangeLog/20241124#rgb-keycode-overhaul-23679-24484-24490","284":"/ChangeLog/20241124#adns9800-and-pmw33xx-sensor-firmware-rom-removal-24428","285":"/ChangeLog/20241124#full-changelist","286":"/ChangeLog/20250223#qmk-breaking-changes-2025-february-23-changelog","287":"/ChangeLog/20250223#notable-features","288":"/ChangeLog/20250223#community-modules-24848","289":"/ChangeLog/20250223#chordal-hold-24560","290":"/ChangeLog/20250223#changes-requiring-user-action","291":"/ChangeLog/20250223#updated-keyboard-codebases","292":"/ChangeLog/20250223#deprecation-notices","293":"/ChangeLog/20250223#default-folder-removal-24836","294":"/ChangeLog/20250223#full-changelist","295":"/ChangeLog/20250525#qmk-breaking-changes-2025-may-25-changelog","296":"/ChangeLog/20250525#notable-features","297":"/ChangeLog/20250525#flow-tap-25125","298":"/ChangeLog/20250525#community-modules-1-1-1-25050-25187","299":"/ChangeLog/20250525#changes-requiring-user-action","300":"/ChangeLog/20250525#updated-keyboard-codebases","301":"/ChangeLog/20250525#deprecation-notices","302":"/ChangeLog/20250525#deprecation-of-qmk-generate-compilation-database-25237","303":"/ChangeLog/20250525#deprecation-of-usb-force-nkro-force-nkro-25262","304":"/ChangeLog/20250525#ctpc-convert-to-proton-c-removal-25111","305":"/ChangeLog/20250525#default-folder-removal-23281","306":"/ChangeLog/20250525#converter-pin-compatible-updates-20330","307":"/ChangeLog/20250525#deprecation-of-encoder-update-kb-user","308":"/ChangeLog/20250525#full-changelist","309":"/ChangeLog/20250831#qmk-breaking-changes-2025-aug-31-changelog","310":"/ChangeLog/20250831#changes-requiring-user-action","311":"/ChangeLog/20250831#updated-keyboard-codebases","312":"/ChangeLog/20250831#mitigate-via-keylogger-security-issues-25414","313":"/ChangeLog/20250831#deprecation-notices","314":"/ChangeLog/20250831#default-folder-removal-23281","315":"/ChangeLog/20250831#converter-pin-compatible-updates-20330","316":"/ChangeLog/20250831#removal-of-deprecated-rgb-and-mouse-keycodes-25444","317":"/ChangeLog/20250831#full-changelist","318":"/ChangeLog/20251130#qmk-breaking-changes-2025-nov-30-changelog","319":"/ChangeLog/20251130#notable-features","320":"/ChangeLog/20251130#speculative-hold-option-for-mod-taps-hold-mods-instantly-while-unsettled-25572","321":"/ChangeLog/20251130#changes-requiring-user-action","322":"/ChangeLog/20251130#updated-keyboard-codebases","323":"/ChangeLog/20251130#reduce-tap-dance-memory-usage-move-state-out-of-data-25415","324":"/ChangeLog/20251130#before","325":"/ChangeLog/20251130#after","326":"/ChangeLog/20251130#deprecation-notices","327":"/ChangeLog/20251130#remove-override-of-qk-led-rgb-matrix-toggle-keycode-25672","328":"/ChangeLog/20251130#full-changelist","329":"/ChangeLog/20260222#qmk-breaking-changes-2026-feb-22-changelog","330":"/ChangeLog/20260222#deprecation-notices","331":"/ChangeLog/20260222#removal-of-deprecated-gpio-defines-26028","332":"/ChangeLog/20260222#removal-of-deprecated-islefthand-25897","333":"/ChangeLog/20260222#full-changelist","334":"/__capabilities#documentation-capabilities","335":"/__capabilities#overall-capabilities","336":"/__capabilities#dividing-lines","337":"/__capabilities#images","338":"/__capabilities#lists","339":"/__capabilities#emoji","340":"/__capabilities#direct","341":"/__capabilities#as-colon-name-colon","342":"/__capabilities#xml-entities","343":"/__capabilities#styling","344":"/__capabilities#css-ish","345":"/__capabilities#tables","346":"/__capabilities#indented-sections","347":"/__capabilities#keyboard-keys","348":"/__capabilities#code-blocks","349":"/__capabilities#sub-superscript","350":"/__capabilities#tabs","351":"/__capabilities#tab-one","352":"/__capabilities#nested-one","353":"/__capabilities#nested-two","354":"/__capabilities#tab-two","355":"/__capabilities#tab-three","356":"/__capabilities#details-sections","357":"/__capabilities#embed","358":"/api_development_overview#qmk-compiler-development-guide","359":"/api_development_overview#overview","360":"/api_development_overview#workers","361":"/api_development_overview#api-service","362":"/api_development_overview#app-route-v1-compile-methods-post","363":"/api_development_overview#app-route-v1-compile-string-job-id-methods-get","364":"/api_development_overview#app-route-v1-compile-string-job-id-download-methods-get","365":"/api_development_overview#app-route-v1-compile-string-job-id-source-methods-get","366":"/api_development_environment#development-environment-setup","367":"/api_docs#qmk-api","368":"/api_docs#overview","369":"/api_docs#example-json-payload","370":"/api_docs#submitting-a-compile-job","371":"/api_docs#checking-the-status","372":"/api_docs#examining-finished-results","373":"/api_docs#qmk-constants","374":"/api_overview#qmk-api","375":"/api_overview#app-developers","376":"/api_overview#keyboard-maintainers","377":"/api_overview#backend-developers","378":"/arm_debugging#arm-debugging-using-eclipse","379":"/arm_debugging#installing-the-software","380":"/arm_debugging#the-xpack-manager","381":"/arm_debugging#the-arm-toolchain","382":"/arm_debugging#windows-build-tools","383":"/arm_debugging#programmer-debugger-drivers","384":"/arm_debugging#openocd","385":"/arm_debugging#java","386":"/arm_debugging#gnu-mcu-eclipse-ide","387":"/arm_debugging#configuring-eclipse","388":"/arm_debugging#building","389":"/arm_debugging#debugging","390":"/arm_debugging#connecting-the-debugger","391":"/arm_debugging#configuring-the-debugger","392":"/arm_debugging#running-the-debugger","393":"/breaking_changes#breaking-changes","394":"/breaking_changes#what-has-been-included-in-past-breaking-changes","395":"/breaking_changes#when-is-the-next-breaking-change","396":"/breaking_changes#important-dates","397":"/breaking_changes#what-changes-will-be-included","398":"/breaking_changes#checklists","399":"/breaking_changes#_4-weeks-before-merge","400":"/breaking_changes#_2-weeks-before-merge","401":"/breaking_changes#_1-week-before-merge","402":"/breaking_changes#_2-days-before-merge","403":"/breaking_changes#day-of-merge","404":"/breaking_changes#post-merge-operations","405":"/breaking_changes#updating-the-develop-branch","406":"/breaking_changes#set-up-discord-events-for-the-next-cycle","407":"/breaking_changes_history#past-breaking-changes","408":"/breaking_changes_instructions#breaking-changes-my-pull-request-was-flagged","409":"/breaking_changes_instructions#what-do-i-do","410":"/breaking_changes_instructions#consider-splitting-up-your-pr","411":"/breaking_changes_instructions#document-your-changes","412":"/breaking_changes_instructions#ask-for-help","413":"/chibios_upgrade_instructions#chibios-upgrade-procedure","414":"/chibios_upgrade_instructions#getting-chibios","415":"/chibios_upgrade_instructions#getting-chibios-contrib","416":"/chibios_upgrade_instructions#updating-submodules","417":"/chibios_upgrade_instructions#when-merging-a-pr-containing-an-upgrade-of-chibios-chibios-contrib","418":"/cli#qmk-cli","419":"/cli#overview","420":"/cli#requirements","421":"/cli#install-using-homebrew","422":"/cli#install-using-uv","423":"/cli#install-using-easy_install-or-pip","424":"/cli#packaging-for-other-operating-systems","425":"/cli_commands#qmk-cli-commands","426":"/cli_commands#user-commands","427":"/cli_commands#qmk-compile","428":"/cli_commands#qmk-flash","429":"/cli_commands#qmk-config","430":"/cli_commands#qmk-cd","431":"/cli_commands#qmk-find","432":"/cli_commands#qmk-console","433":"/cli_commands#qmk-doctor","434":"/cli_commands#qmk-format-json","435":"/cli_commands#qmk-info","436":"/cli_commands#qmk-json2c","437":"/cli_commands#qmk-c2json","438":"/cli_commands#qmk-lint","439":"/cli_commands#qmk-list-keyboards","440":"/cli_commands#qmk-list-keymaps","441":"/cli_commands#qmk-migrate","442":"/cli_commands#qmk-new-keyboard","443":"/cli_commands#qmk-new-keymap","444":"/cli_commands#qmk-clean","445":"/cli_commands#qmk-via2json","446":"/cli_commands#qmk-import-keyboard","447":"/cli_commands#qmk-import-keymap","448":"/cli_commands#qmk-import-kbfirmware","449":"/cli_commands#external-userspace-commands","450":"/cli_commands#qmk-userspace-add","451":"/cli_commands#qmk-userspace-remove","452":"/cli_commands#qmk-userspace-list","453":"/cli_commands#qmk-userspace-compile","454":"/cli_commands#qmk-userspace-doctor","455":"/cli_commands#developer-commands","456":"/cli_commands#qmk-format-text","457":"/cli_commands#qmk-format-c","458":"/cli_commands#qmk-docs","459":"/cli_commands#qmk-generate-docs","460":"/cli_commands#qmk-generate-rgb-breathe-table","461":"/cli_commands#qmk-kle2json","462":"/cli_commands#qmk-format-python","463":"/cli_commands#qmk-pytest","464":"/cli_commands#qmk-painter-convert-graphics","465":"/cli_commands#qmk-painter-make-font-image","466":"/cli_commands#qmk-painter-convert-font-image","467":"/cli_commands#qmk-test-c","468":"/cli_commands#qmk-generate-compilation-database","469":"/cli_configuration#qmk-cli-configuration","470":"/cli_configuration#introduction","471":"/cli_configuration#simple-example","472":"/cli_configuration#setting-user-defaults","473":"/cli_configuration#cli-documentation-qmk-config","474":"/cli_configuration#setting-configuration-values","475":"/cli_configuration#reading-configuration-values","476":"/cli_configuration#entire-configuration-example","477":"/cli_configuration#whole-section-example","478":"/cli_configuration#single-key-example","479":"/cli_configuration#multiple-keys-example","480":"/cli_configuration#deleting-configuration-values","481":"/cli_configuration#multiple-operations","482":"/cli_configuration#user-configuration-options","483":"/cli_configuration#all-configuration-options","484":"/cli_development#qmk-cli-development","485":"/cli_development#overview","486":"/cli_development#developer-mode","487":"/cli_development#subcommands","488":"/cli_development#user-interaction","489":"/cli_development#printing-text","490":"/cli_development#logging-cli-log","491":"/cli_development#printing-cli-echo","492":"/cli_development#colorizing-text","493":"/cli_development#arguments-and-configuration","494":"/cli_development#reading-configuration-values","495":"/cli_development#setting-configuration-values","496":"/cli_development#deleting-configuration-values","497":"/cli_development#writing-the-configuration-file","498":"/cli_development#excluding-arguments-from-configuration","499":"/cli_development#testing-and-linting-and-formatting-oh-my","500":"/cli_development#testing-and-linting","501":"/cli_development#formatting","502":"/cli_development#formatting-details","503":"/cli_development#testing-details","504":"/cli_development#linting-details","505":"/cli_tab_complete#tab-completion-for-qmk","506":"/cli_tab_complete#setup","507":"/cli_tab_complete#for-your-user-only","508":"/cli_tab_complete#system-wide-symlink","509":"/cli_tab_complete#system-wide-copy","510":"/coding_conventions_c#coding-conventions-c","511":"/coding_conventions_c#auto-formatting-with-clang-format","512":"/coding_conventions_python#coding-conventions-python","513":"/coding_conventions_python#yapf","514":"/coding_conventions_python#imports","515":"/coding_conventions_python#import-examples","516":"/coding_conventions_python#statements","517":"/coding_conventions_python#naming","518":"/coding_conventions_python#names-to-avoid","519":"/coding_conventions_python#docstrings","520":"/coding_conventions_python#simple-docstring-example","521":"/coding_conventions_python#complex-docstring-example","522":"/coding_conventions_python#function-arguments-docstring-example","523":"/coding_conventions_python#exceptions","524":"/coding_conventions_python#tuples","525":"/coding_conventions_python#lists-and-dictionaries","526":"/coding_conventions_python#parentheses","527":"/coding_conventions_python#format-strings","528":"/coding_conventions_python#comprehensions-generator-expressions","529":"/coding_conventions_python#lambdas","530":"/coding_conventions_python#conditional-expressions","531":"/coding_conventions_python#default-argument-values","532":"/coding_conventions_python#properties","533":"/coding_conventions_python#true-false-evaluations","534":"/coding_conventions_python#decorators","535":"/coding_conventions_python#threading-and-multiprocessing","536":"/coding_conventions_python#power-features","537":"/coding_conventions_python#type-annotated-code","538":"/coding_conventions_python#function-length","539":"/coding_conventions_python#fixmes","540":"/coding_conventions_python#testing","541":"/coding_conventions_python#integration-tests","542":"/coding_conventions_python#unit-tests","543":"/compatible_microcontrollers#compatible-microcontrollers","544":"/compatible_microcontrollers#atmel-avr","545":"/compatible_microcontrollers#arm","546":"/compatible_microcontrollers#stmicroelectronics-stm32","547":"/compatible_microcontrollers#westberrytech-wb32","548":"/compatible_microcontrollers#artery-at32","549":"/compatible_microcontrollers#nxp-kinetis","550":"/compatible_microcontrollers#raspberry-pi","551":"/compatible_microcontrollers#risc-v","552":"/compatible_microcontrollers#gigadevice","553":"/config_options#configuring-qmk","554":"/config_options#qmk-default","555":"/config_options#keyboard","556":"/config_options#folders","557":"/config_options#keymap","558":"/config_options#the-config-h-file","559":"/config_options#hardware-options","560":"/config_options#features-that-can-be-disabled","561":"/config_options#features-that-can-be-enabled","562":"/config_options#behaviors-that-can-be-configured","563":"/config_options#rgb-light-configuration","564":"/config_options#mouse-key-options","565":"/config_options#split-keyboard-options","566":"/config_options#setting-handedness","567":"/config_options#defines-for-handedness","568":"/config_options#other-options","569":"/config_options#the-rules-mk-file","570":"/config_options#build-options","571":"/config_options#avr-mcu-options","572":"/config_options#feature-options","573":"/config_options#usb-endpoint-limitations","574":"/configurator_architecture#qmk-configurator-architecture","575":"/configurator_architecture#overview","576":"/configurator_architecture#detailed-description","577":"/configurator_architecture#configurator-frontend","578":"/configurator_architecture#keyboard-metadata","579":"/configurator_architecture#qmk-api","580":"/configurator_architecture#compile-job-queued","581":"/configurator_architecture#compile-job-running","582":"/configurator_architecture#compile-job-finished","583":"/configurator_architecture#redis-rq","584":"/configurator_architecture#qmk-compiler","585":"/configurator_default_keymaps#adding-default-keymaps","586":"/configurator_default_keymaps#technical-information","587":"/configurator_default_keymaps#example","588":"/configurator_default_keymaps#caveats","589":"/configurator_default_keymaps#layer-references","590":"/configurator_default_keymaps#custom-code","591":"/configurator_default_keymaps#custom-keycodes","592":"/configurator_default_keymaps#additional-reading","593":"/configurator_step_by_step#qmk-configurator-step-by-step","594":"/configurator_step_by_step#step-1-select-your-keyboard","595":"/configurator_step_by_step#step-2-select-your-keyboard-layout","596":"/configurator_step_by_step#step-3-name-your-keymap","597":"/configurator_step_by_step#step-4-define-your-keymap","598":"/configurator_step_by_step#step-5-save-your-keymap-for-future-changes","599":"/configurator_step_by_step#step-6-compile-your-firmware-file","600":"/configurator_step_by_step#next-steps-flashing-your-keyboard","601":"/configurator_troubleshooting#configurator-troubleshooting","602":"/configurator_troubleshooting#my-json-file-is-not-working","603":"/configurator_troubleshooting#there-are-extra-spaces-in-my-layout-what-do-i-do","604":"/configurator_troubleshooting#what-is-the-keycode-for","605":"/configurator_troubleshooting#it-won-t-compile","606":"/configurator_troubleshooting#problems-and-bugs","607":"/contributing#how-to-contribute","608":"/contributing#i-don-t-want-to-read-this-whole-thing-i-just-have-a-question","609":"/contributing#project-overview","610":"/contributing#where-can-i-go-for-help","611":"/contributing#how-do-i-make-a-contribution","612":"/contributing#coding-conventions","613":"/contributing#general-guidelines","614":"/contributing#documentation","615":"/contributing#previewing-the-documentation","616":"/contributing#keyboards","617":"/contributing#quantum-tmk-core","618":"/contributing#refactoring","619":"/contributing#what-does-the-code-of-conduct-mean-for-me","620":"/custom_matrix#custom-matrix","621":"/custom_matrix#prerequisites","622":"/custom_matrix#lite","623":"/custom_matrix#full-replacement","624":"/custom_quantum_functions#how-to-customize-your-keyboard-s-behavior","625":"/custom_quantum_functions#a-word-on-core-vs-keyboards-vs-keymap","626":"/custom_quantum_functions#custom-keycodes","627":"/custom_quantum_functions#defining-a-new-keycode","628":"/custom_quantum_functions#programming-the-behavior-of-any-keycode","629":"/custom_quantum_functions#example-process-record-user-implementation","630":"/custom_quantum_functions#process-record-function-documentation","631":"/custom_quantum_functions#keyboard-initialization-code","632":"/custom_quantum_functions#keyboard-pre-initialization-code","633":"/custom_quantum_functions#example-keyboard-pre-init-user-implementation","634":"/custom_quantum_functions#keyboard-pre-init-function-documentation","635":"/custom_quantum_functions#matrix-initialization-code","636":"/custom_quantum_functions#matrix-init-function-documentation","637":"/custom_quantum_functions#low-level-matrix-overrides","638":"/custom_quantum_functions#keyboard-post-initialization-code","639":"/custom_quantum_functions#example-keyboard-post-init-user-implementation","640":"/custom_quantum_functions#keyboard-post-init-function-documentation","641":"/custom_quantum_functions#matrix-scanning-code","642":"/custom_quantum_functions#example-matrix-scan-implementation","643":"/custom_quantum_functions#matrix-scan-function-documentation","644":"/custom_quantum_functions#keyboard-housekeeping","645":"/custom_quantum_functions#example-void-housekeeping-task-user-void-implementation","646":"/custom_quantum_functions#keyboard-idling-wake-code","647":"/custom_quantum_functions#example-suspend-power-down-user-and-suspend-wakeup-init-user-implementation","648":"/custom_quantum_functions#keyboard-suspend-wake-function-documentation","649":"/custom_quantum_functions#keyboard-shutdown-reboot-code","650":"/custom_quantum_functions#example-shutdown-kb-implementation","651":"/custom_quantum_functions#example-shutdown-user-implementation","652":"/custom_quantum_functions#keyboard-shutdown-reboot-function-documentation","653":"/custom_quantum_functions#deferred-execution","654":"/custom_quantum_functions#deferred-executor-callbacks","655":"/custom_quantum_functions#deferred-executor-registration","656":"/custom_quantum_functions#extending-a-deferred-execution","657":"/custom_quantum_functions#cancelling-a-deferred-execution","658":"/custom_quantum_functions#deferred-callback-limits","659":"/custom_quantum_functions#advanced-topics","660":"/custom_quantum_functions#layer-change-code","661":"/custom_quantum_functions#persistent-configuration-eeprom","662":"/data_driven_config#data-driven-configuration","663":"/data_driven_config#history","664":"/data_driven_config#overview","665":"/data_driven_config#adding-an-option-to-info-json","666":"/data_driven_config#add-it-to-the-schema","667":"/data_driven_config#add-a-mapping","668":"/data_driven_config#info-key","669":"/data_driven_config#value-types","670":"/data_driven_config#add-code-to-extract-it","671":"/data_driven_config#add-code-to-generate-it","672":"/documentation_best_practices#documentation-best-practices","673":"/documentation_best_practices#page-opening","674":"/documentation_best_practices#headings","675":"/documentation_best_practices#styled-hint-blocks","676":"/documentation_best_practices#important","677":"/documentation_best_practices#general-tips","678":"/documentation_best_practices#documenting-features","679":"/documentation_templates#documentation-templates","680":"/documentation_templates#keyboard-readmemd-template","681":"/documentation_templates#keyboard-readme-md-template","682":"/driver_installation_zadig#bootloader-driver-installation-with-zadig","683":"/driver_installation_zadig#installation","684":"/driver_installation_zadig#recovering-from-installation-to-wrong-device","685":"/driver_installation_zadig#uninstallation","686":"/driver_installation_zadig#list-of-known-bootloaders","687":"/drivers/adc#adc-driver","688":"/drivers/adc#usage","689":"/drivers/adc#channels","690":"/drivers/adc#avr","691":"/drivers/adc#arm","692":"/drivers/adc#stm32","693":"/drivers/adc#rp2040","694":"/drivers/adc#functions","695":"/drivers/adc#avr-1","696":"/drivers/adc#arm-1","697":"/drivers/adc#configuration","698":"/drivers/adc#arm-2","699":"/drivers/apa102#apa102-driver","700":"/drivers/apa102#usage","701":"/drivers/apa102#basic-configuration","702":"/drivers/apa102#api","703":"/drivers/apa102#api-apa102-init","704":"/drivers/apa102#api-apa102-set-color","705":"/drivers/apa102#api-apa102-set-color-arguments","706":"/drivers/apa102#api-apa102-set-color-all","707":"/drivers/apa102#api-apa102-set-color-all-arguments","708":"/drivers/apa102#api-apa102-flush","709":"/drivers/apa102#api-apa102-set-brightness","710":"/drivers/apa102#api-apa102-set-brightness-arguments","711":"/drivers/audio#audio-driver","712":"/drivers/audio#avr","713":"/drivers/audio#arm","714":"/drivers/audio#dac-basic","715":"/drivers/audio#dac-additive","716":"/drivers/audio#dac-config","717":"/drivers/audio#buffer-size","718":"/drivers/audio#pwm-hardware","719":"/drivers/audio#pwm-software","720":"/drivers/audio#testing-notes","721":"/drivers/aw20216s#aw20216s-driver","722":"/drivers/aw20216s#usage","723":"/drivers/aw20216s#basic-configuration","724":"/drivers/aw20216s#global-current-control","725":"/drivers/aw20216s#arm-configuration","726":"/drivers/aw20216s#led-mapping","727":"/drivers/aw20216s#api","728":"/drivers/aw20216s#api-aw20216s-led-t","729":"/drivers/aw20216s#api-aw20216s-led-t-members","730":"/drivers/aw20216s#api-aw20216s-init","731":"/drivers/aw20216s#api-aw20216s-init-arguments","732":"/drivers/aw20216s#api-aw20216s-set-color","733":"/drivers/aw20216s#api-aw20216s-set-color-arguments","734":"/drivers/aw20216s#api-aw20216s-set-color-all","735":"/drivers/aw20216s#api-aw20216s-set-color-all-arguments","736":"/drivers/aw20216s#api-aw20216s-update-pwm-buffers","737":"/drivers/aw20216s#api-aw20216s-update-pwm-buffers-arguments","738":"/drivers/battery#battery-driver","739":"/drivers/battery#usage","740":"/drivers/battery#driver-configuration","741":"/drivers/battery#adc-driver","742":"/drivers/battery#custom-driver","743":"/drivers/eeprom#eeprom-driver-configuration","744":"/drivers/eeprom#vendor-eeprom-driver-configuration","745":"/drivers/eeprom#stm32l0l1-eeprom-driver-configuration","746":"/drivers/eeprom#i2c-eeprom-driver-configuration","747":"/drivers/eeprom#spi-eeprom-driver-configuration","748":"/drivers/eeprom#transient-eeprom-driver-configuration","749":"/drivers/eeprom#wear_leveling-eeprom-driver-configuration","750":"/drivers/eeprom#wear_leveling-configuration","751":"/drivers/eeprom#wear_leveling-efl-driver-configuration","752":"/drivers/eeprom#wear_leveling-flash_spi-driver-configuration","753":"/drivers/eeprom#wear_leveling-rp2040-driver-configuration","754":"/drivers/eeprom#wear_leveling-legacy-driver-configuration","755":"/drivers/flash#flash-driver-configuration","756":"/drivers/flash#spi-flash-driver-configuration","757":"/drivers/gpio#gpio-control","758":"/drivers/gpio#macros","759":"/drivers/gpio#advanced-settings","760":"/drivers/gpio#atomic-operation","761":"/drivers/i2c#i2c-master-driver","762":"/drivers/i2c#usage","763":"/drivers/i2c#note-on-i2c-addresses","764":"/drivers/i2c#avr-configuration","765":"/drivers/i2c#arm-configuration","766":"/drivers/i2c#arm-configuration-i2cv1","767":"/drivers/i2c#arm-configuration-i2cv2","768":"/drivers/i2c#api","769":"/drivers/i2c#api-i2c-init","770":"/drivers/i2c#api-i2c-transmit","771":"/drivers/i2c#api-i2c-transmit-arguments","772":"/drivers/i2c#api-i2c-transmit-return","773":"/drivers/i2c#api-i2c-transmit-p","774":"/drivers/i2c#api-i2c-transmit-p-arguments","775":"/drivers/i2c#api-i2c-transmit-p-return","776":"/drivers/i2c#api-i2c-receive","777":"/drivers/i2c#api-i2c-receive-arguments","778":"/drivers/i2c#api-i2c-receive-return","779":"/drivers/i2c#api-i2c-transmit-and-receive","780":"/drivers/i2c#api-i2c-transmit-and-receive-arguments","781":"/drivers/i2c#api-i2c-transmit-and-receive-return","782":"/drivers/i2c#api-i2c-write-register","783":"/drivers/i2c#api-i2c-write-register-arguments","784":"/drivers/i2c#api-i2c-write-register-return","785":"/drivers/i2c#api-i2c-write-register16","786":"/drivers/i2c#api-i2c-write-register16-arguments","787":"/drivers/i2c#api-i2c-write-register16-return","788":"/drivers/i2c#api-i2c-read-register","789":"/drivers/i2c#api-i2c-read-register-arguments","790":"/drivers/i2c#api-i2c-read-register-return","791":"/drivers/i2c#api-i2c-read-register16","792":"/drivers/i2c#api-i2c-read-register16-arguments","793":"/drivers/i2c#api-i2c-read-register16-return","794":"/drivers/i2c#api-i2c-ping-address","795":"/drivers/i2c#api-i2c-ping-address-arguments","796":"/drivers/i2c#api-i2c-ping-address-return","797":"/drivers/is31fl3236#is31fl3236-driver","798":"/drivers/is31fl3236#usage","799":"/drivers/is31fl3236#basic-configuration","800":"/drivers/is31fl3236#i2c-addressing","801":"/drivers/is31fl3236#arm-configuration","802":"/drivers/is31fl3236#led-mapping","803":"/drivers/is31fl3236#api","804":"/drivers/is31fl3236#api-is31fl3236-led-t","805":"/drivers/is31fl3236#api-is31fl3236-led-t-members","806":"/drivers/is31fl3236#api-is31fl3236-init","807":"/drivers/is31fl3236#api-is31fl3236-init-arguments","808":"/drivers/is31fl3236#api-is31fl3236-write-register","809":"/drivers/is31fl3236#api-is31fl3236-write-register-arguments","810":"/drivers/is31fl3236#api-is31fl3236-set-color","811":"/drivers/is31fl3236#api-is31fl3236-set-color-arguments","812":"/drivers/is31fl3236#api-is31fl3236-set-color-all","813":"/drivers/is31fl3236#api-is31fl3236-set-color-all-arguments","814":"/drivers/is31fl3236#api-is31fl3236-set-value","815":"/drivers/is31fl3236#api-is31fl3236-set-value-arguments","816":"/drivers/is31fl3236#api-is31fl3236-set-value-all","817":"/drivers/is31fl3236#api-is31fl3236-set-value-all-arguments","818":"/drivers/is31fl3236#api-is31fl3236-set-led-control-register-rgb","819":"/drivers/is31fl3236#api-is31fl3236-set-led-control-register-rgb-arguments","820":"/drivers/is31fl3236#api-is31fl3236-set-led-control-register-mono","821":"/drivers/is31fl3236#api-is31fl3236-set-led-control-register-mono-arguments","822":"/drivers/is31fl3236#api-is31fl3236-update-pwm-buffers","823":"/drivers/is31fl3236#api-is31fl3236-update-pwm-buffers-arguments","824":"/drivers/is31fl3236#api-is31fl3236-update-led-control-registers","825":"/drivers/is31fl3236#api-is31fl3236-update-led-control-registers-arguments","826":"/drivers/is31fl3218#is31fl3218-driver","827":"/drivers/is31fl3218#usage","828":"/drivers/is31fl3218#basic-configuration","829":"/drivers/is31fl3218#i2c-addressing","830":"/drivers/is31fl3218#arm-configuration","831":"/drivers/is31fl3218#led-mapping","832":"/drivers/is31fl3218#api","833":"/drivers/is31fl3218#api-is31fl3218-led-t","834":"/drivers/is31fl3218#api-is31fl3218-led-t-members","835":"/drivers/is31fl3218#api-is31fl3218-init","836":"/drivers/is31fl3218#api-is31fl3218-write-register","837":"/drivers/is31fl3218#api-is31fl3218-write-register-arguments","838":"/drivers/is31fl3218#api-is31fl3218-set-color","839":"/drivers/is31fl3218#api-is31fl3218-set-color-arguments","840":"/drivers/is31fl3218#api-is31fl3218-set-color-all","841":"/drivers/is31fl3218#api-is31fl3218-set-color-all-arguments","842":"/drivers/is31fl3218#api-is31fl3218-set-value","843":"/drivers/is31fl3218#api-is31fl3218-set-value-arguments","844":"/drivers/is31fl3218#api-is31fl3218-set-value-all","845":"/drivers/is31fl3218#api-is31fl3218-set-value-all-arguments","846":"/drivers/is31fl3218#api-is31fl3218-set-led-control-register-rgb","847":"/drivers/is31fl3218#api-is31fl3218-set-led-control-register-rgb-arguments","848":"/drivers/is31fl3218#api-is31fl3218-set-led-control-register-mono","849":"/drivers/is31fl3218#api-is31fl3218-set-led-control-register-mono-arguments","850":"/drivers/is31fl3218#api-is31fl3218-update-pwm-buffers","851":"/drivers/is31fl3218#api-is31fl3218-update-led-control-registers","852":"/drivers/is31fl3729#is31fl3729-driver","853":"/drivers/is31fl3729#usage","854":"/drivers/is31fl3729#basic-configuration","855":"/drivers/is31fl3729#i2c-addressing","856":"/drivers/is31fl3729#pwm-frequency","857":"/drivers/is31fl3729#de-ghosting","858":"/drivers/is31fl3729#global-current-control","859":"/drivers/is31fl3729#arm-configuration","860":"/drivers/is31fl3729#led-mapping","861":"/drivers/is31fl3729#api","862":"/drivers/is31fl3729#api-is31fl3729-led-t","863":"/drivers/is31fl3729#api-is31fl3729-led-t-members","864":"/drivers/is31fl3729#api-is31fl3729-init","865":"/drivers/is31fl3729#api-is31fl3729-init-arguments","866":"/drivers/is31fl3729#api-is31fl3729-write-register","867":"/drivers/is31fl3729#api-is31fl3729-write-register-arguments","868":"/drivers/is31fl3729#api-is31fl3729-set-color","869":"/drivers/is31fl3729#api-is31fl3729-set-color-arguments","870":"/drivers/is31fl3729#api-is31fl3729-set-color-all","871":"/drivers/is31fl3729#api-is31fl3729-set-color-all-arguments","872":"/drivers/is31fl3729#api-is31fl3729-set-value","873":"/drivers/is31fl3729#api-is31fl3729-set-value-arguments","874":"/drivers/is31fl3729#api-is31fl3729-set-value-all","875":"/drivers/is31fl3729#api-is31fl3729-set-value-all-arguments","876":"/drivers/is31fl3729#api-is31fl3729-set-scaling-register-rgb","877":"/drivers/is31fl3729#api-is31fl3729-set-scaling-register-rgb-arguments","878":"/drivers/is31fl3729#api-is31fl3729-set-scaling-register-mono","879":"/drivers/is31fl3729#api-is31fl3729-set-scaling-register-mono-arguments","880":"/drivers/is31fl3729#api-is31fl3729-update-pwm-buffers","881":"/drivers/is31fl3729#api-is31fl3729-update-pwm-buffers-arguments","882":"/drivers/is31fl3729#api-is31fl3729-update-scaling-registers","883":"/drivers/is31fl3729#api-is31fl3729-update-scaling-registers-arguments","884":"/drivers/is31fl3731#is31fl3731-driver","885":"/drivers/is31fl3731#usage","886":"/drivers/is31fl3731#basic-configuration","887":"/drivers/is31fl3731#i2c-addressing","888":"/drivers/is31fl3731#de-ghosting","889":"/drivers/is31fl3731#arm-configuration","890":"/drivers/is31fl3731#led-mapping","891":"/drivers/is31fl3731#api","892":"/drivers/is31fl3731#api-is31fl3731-led-t","893":"/drivers/is31fl3731#api-is31fl3731-led-t-members","894":"/drivers/is31fl3731#api-is31fl3731-init","895":"/drivers/is31fl3731#api-is31fl3731-init-arguments","896":"/drivers/is31fl3731#api-is31fl3731-write-register","897":"/drivers/is31fl3731#api-is31fl3731-write-register-arguments","898":"/drivers/is31fl3731#api-is31fl3731-select-page","899":"/drivers/is31fl3731#api-is31fl3731-select-page-arguments","900":"/drivers/is31fl3731#api-is31fl3731-set-color","901":"/drivers/is31fl3731#api-is31fl3731-set-color-arguments","902":"/drivers/is31fl3731#api-is31fl3731-set-color-all","903":"/drivers/is31fl3731#api-is31fl3731-set-color-all-arguments","904":"/drivers/is31fl3731#api-is31fl3731-set-value","905":"/drivers/is31fl3731#api-is31fl3731-set-value-arguments","906":"/drivers/is31fl3731#api-is31fl3731-set-value-all","907":"/drivers/is31fl3731#api-is31fl3731-set-value-all-arguments","908":"/drivers/is31fl3731#api-is31fl3731-set-led-control-register-rgb","909":"/drivers/is31fl3731#api-is31fl3731-set-led-control-register-rgb-arguments","910":"/drivers/is31fl3731#api-is31fl3731-set-led-control-register-mono","911":"/drivers/is31fl3731#api-is31fl3731-set-led-control-register-mono-arguments","912":"/drivers/is31fl3731#api-is31fl3731-update-pwm-buffers","913":"/drivers/is31fl3731#api-is31fl3731-update-pwm-buffers-arguments","914":"/drivers/is31fl3731#api-is31fl3731-update-led-control-registers","915":"/drivers/is31fl3731#api-is31fl3731-update-led-control-registers-arguments","916":"/drivers/is31fl3733#is31fl3733-driver","917":"/drivers/is31fl3733#usage","918":"/drivers/is31fl3733#basic-configuration","919":"/drivers/is31fl3733#i2c-addressing","920":"/drivers/is31fl3733#multi-driver-synchronization","921":"/drivers/is31fl3733#pwm-frequency","922":"/drivers/is31fl3733#de-ghosting","923":"/drivers/is31fl3733#global-current-control","924":"/drivers/is31fl3733#arm-configuration","925":"/drivers/is31fl3733#led-mapping","926":"/drivers/is31fl3733#api","927":"/drivers/is31fl3733#api-is31fl3733-led-t","928":"/drivers/is31fl3733#api-is31fl3733-led-t-members","929":"/drivers/is31fl3733#api-is31fl3733-init","930":"/drivers/is31fl3733#api-is31fl3733-init-arguments","931":"/drivers/is31fl3733#api-is31fl3733-write-register","932":"/drivers/is31fl3733#api-is31fl3733-write-register-arguments","933":"/drivers/is31fl3733#api-is31fl3733-select-page","934":"/drivers/is31fl3733#api-is31fl3733-select-page-arguments","935":"/drivers/is31fl3733#api-is31fl3733-set-color","936":"/drivers/is31fl3733#api-is31fl3733-set-color-arguments","937":"/drivers/is31fl3733#api-is31fl3733-set-color-all","938":"/drivers/is31fl3733#api-is31fl3733-set-color-all-arguments","939":"/drivers/is31fl3733#api-is31fl3733-set-value","940":"/drivers/is31fl3733#api-is31fl3733-set-value-arguments","941":"/drivers/is31fl3733#api-is31fl3733-set-value-all","942":"/drivers/is31fl3733#api-is31fl3733-set-value-all-arguments","943":"/drivers/is31fl3733#api-is31fl3733-set-led-control-register-rgb","944":"/drivers/is31fl3733#api-is31fl3733-set-led-control-register-rgb-arguments","945":"/drivers/is31fl3733#api-is31fl3733-set-led-control-register-mono","946":"/drivers/is31fl3733#api-is31fl3733-set-led-control-register-mono-arguments","947":"/drivers/is31fl3733#api-is31fl3733-update-pwm-buffers","948":"/drivers/is31fl3733#api-is31fl3733-update-pwm-buffers-arguments","949":"/drivers/is31fl3733#api-is31fl3733-update-led-control-registers","950":"/drivers/is31fl3733#api-is31fl3733-update-led-control-registers-arguments","951":"/drivers/is31fl3736#is31fl3736-driver","952":"/drivers/is31fl3736#usage","953":"/drivers/is31fl3736#basic-configuration","954":"/drivers/is31fl3736#i2c-addressing","955":"/drivers/is31fl3736#pwm-frequency","956":"/drivers/is31fl3736#de-ghosting","957":"/drivers/is31fl3736#global-current-control","958":"/drivers/is31fl3736#arm-configuration","959":"/drivers/is31fl3736#led-mapping","960":"/drivers/is31fl3736#api","961":"/drivers/is31fl3736#api-is31fl3736-led-t","962":"/drivers/is31fl3736#api-is31fl3736-led-t-members","963":"/drivers/is31fl3736#api-is31fl3736-init","964":"/drivers/is31fl3736#api-is31fl3736-init-arguments","965":"/drivers/is31fl3736#api-is31fl3736-write-register","966":"/drivers/is31fl3736#api-is31fl3736-write-register-arguments","967":"/drivers/is31fl3736#api-is31fl3736-select-page","968":"/drivers/is31fl3736#api-is31fl3736-select-page-arguments","969":"/drivers/is31fl3736#api-is31fl3736-set-color","970":"/drivers/is31fl3736#api-is31fl3736-set-color-arguments","971":"/drivers/is31fl3736#api-is31fl3736-set-color-all","972":"/drivers/is31fl3736#api-is31fl3736-set-color-all-arguments","973":"/drivers/is31fl3736#api-is31fl3736-set-value","974":"/drivers/is31fl3736#api-is31fl3736-set-value-arguments","975":"/drivers/is31fl3736#api-is31fl3736-set-value-all","976":"/drivers/is31fl3736#api-is31fl3736-set-value-all-arguments","977":"/drivers/is31fl3736#api-is31fl3736-set-led-control-register-rgb","978":"/drivers/is31fl3736#api-is31fl3736-set-led-control-register-rgb-arguments","979":"/drivers/is31fl3736#api-is31fl3736-set-led-control-register-mono","980":"/drivers/is31fl3736#api-is31fl3736-set-led-control-register-mono-arguments","981":"/drivers/is31fl3736#api-is31fl3736-update-pwm-buffers","982":"/drivers/is31fl3736#api-is31fl3736-update-pwm-buffers-arguments","983":"/drivers/is31fl3736#api-is31fl3736-update-led-control-registers","984":"/drivers/is31fl3736#api-is31fl3736-update-led-control-registers-arguments","985":"/drivers/is31fl3737#is31fl3737-driver","986":"/drivers/is31fl3737#usage","987":"/drivers/is31fl3737#basic-configuration","988":"/drivers/is31fl3737#i2c-addressing","989":"/drivers/is31fl3737#pwm-frequency","990":"/drivers/is31fl3737#de-ghosting","991":"/drivers/is31fl3737#global-current-control","992":"/drivers/is31fl3737#arm-configuration","993":"/drivers/is31fl3737#led-mapping","994":"/drivers/is31fl3737#api","995":"/drivers/is31fl3737#api-is31fl3737-led-t","996":"/drivers/is31fl3737#api-is31fl3737-led-t-members","997":"/drivers/is31fl3737#api-is31fl3737-init","998":"/drivers/is31fl3737#api-is31fl3737-init-arguments","999":"/drivers/is31fl3737#api-is31fl3737-write-register","1000":"/drivers/is31fl3737#api-is31fl3737-write-register-arguments","1001":"/drivers/is31fl3737#api-is31fl3737-select-page","1002":"/drivers/is31fl3737#api-is31fl3737-select-page-arguments","1003":"/drivers/is31fl3737#api-is31fl3737-set-color","1004":"/drivers/is31fl3737#api-is31fl3737-set-color-arguments","1005":"/drivers/is31fl3737#api-is31fl3737-set-color-all","1006":"/drivers/is31fl3737#api-is31fl3737-set-color-all-arguments","1007":"/drivers/is31fl3737#api-is31fl3737-set-value","1008":"/drivers/is31fl3737#api-is31fl3737-set-value-arguments","1009":"/drivers/is31fl3737#api-is31fl3737-set-value-all","1010":"/drivers/is31fl3737#api-is31fl3737-set-value-all-arguments","1011":"/drivers/is31fl3737#api-is31fl3737-set-led-control-register-rgb","1012":"/drivers/is31fl3737#api-is31fl3737-set-led-control-register-rgb-arguments","1013":"/drivers/is31fl3737#api-is31fl3737-set-led-control-register-mono","1014":"/drivers/is31fl3737#api-is31fl3737-set-led-control-register-mono-arguments","1015":"/drivers/is31fl3737#api-is31fl3737-update-pwm-buffers","1016":"/drivers/is31fl3737#api-is31fl3737-update-pwm-buffers-arguments","1017":"/drivers/is31fl3737#api-is31fl3737-update-led-control-registers","1018":"/drivers/is31fl3737#api-is31fl3737-update-led-control-registers-arguments","1019":"/drivers/is31fl3741#is31fl3741-driver","1020":"/drivers/is31fl3741#usage","1021":"/drivers/is31fl3741#basic-configuration","1022":"/drivers/is31fl3741#i2c-addressing","1023":"/drivers/is31fl3741#pwm-frequency","1024":"/drivers/is31fl3741#de-ghosting","1025":"/drivers/is31fl3741#global-current-control","1026":"/drivers/is31fl3741#arm-configuration","1027":"/drivers/is31fl3741#led-mapping","1028":"/drivers/is31fl3741#api","1029":"/drivers/is31fl3741#api-is31fl3741-led-t","1030":"/drivers/is31fl3741#api-is31fl3741-led-t-members","1031":"/drivers/is31fl3741#api-is31fl3741-init","1032":"/drivers/is31fl3741#api-is31fl3741-init-arguments","1033":"/drivers/is31fl3741#api-is31fl3741-write-register","1034":"/drivers/is31fl3741#api-is31fl3741-write-register-arguments","1035":"/drivers/is31fl3741#api-is31fl3741-select-page","1036":"/drivers/is31fl3741#api-is31fl3741-select-page-arguments","1037":"/drivers/is31fl3741#api-is31fl3741-set-color","1038":"/drivers/is31fl3741#api-is31fl3741-set-color-arguments","1039":"/drivers/is31fl3741#api-is31fl3741-set-color-all","1040":"/drivers/is31fl3741#api-is31fl3741-set-color-all-arguments","1041":"/drivers/is31fl3741#api-is31fl3741-set-value","1042":"/drivers/is31fl3741#api-is31fl3741-set-value-arguments","1043":"/drivers/is31fl3741#api-is31fl3741-set-value-all","1044":"/drivers/is31fl3741#api-is31fl3741-set-value-all-arguments","1045":"/drivers/is31fl3741#api-is31fl3741-set-led-control-register-rgb","1046":"/drivers/is31fl3741#api-is31fl3741-set-led-control-register-rgb-arguments","1047":"/drivers/is31fl3741#api-is31fl3741-set-led-control-register-mono","1048":"/drivers/is31fl3741#api-is31fl3741-set-led-control-register-mono-arguments","1049":"/drivers/is31fl3741#api-is31fl3741-update-pwm-buffers","1050":"/drivers/is31fl3741#api-is31fl3741-update-pwm-buffers-arguments","1051":"/drivers/is31fl3741#api-is31fl3741-update-led-control-registers","1052":"/drivers/is31fl3741#api-is31fl3741-update-led-control-registers-arguments","1053":"/drivers/is31fl3742a#is31fl3742a-driver","1054":"/drivers/is31fl3742a#usage","1055":"/drivers/is31fl3742a#basic-configuration","1056":"/drivers/is31fl3742a#i2c-addressing","1057":"/drivers/is31fl3742a#pwm-frequency","1058":"/drivers/is31fl3742a#de-ghosting","1059":"/drivers/is31fl3742a#global-current-control","1060":"/drivers/is31fl3742a#arm-configuration","1061":"/drivers/is31fl3742a#led-mapping","1062":"/drivers/is31fl3742a#api","1063":"/drivers/is31fl3742a#api-is31fl3742a-led-t","1064":"/drivers/is31fl3742a#api-is31fl3742a-led-t-members","1065":"/drivers/is31fl3742a#api-is31fl3742a-init","1066":"/drivers/is31fl3742a#api-is31fl3742a-init-arguments","1067":"/drivers/is31fl3742a#api-is31fl3742a-write-register","1068":"/drivers/is31fl3742a#api-is31fl3742a-write-register-arguments","1069":"/drivers/is31fl3742a#api-is31fl3742a-select-page","1070":"/drivers/is31fl3742a#api-is31fl3742a-select-page-arguments","1071":"/drivers/is31fl3742a#api-is31fl3742a-set-color","1072":"/drivers/is31fl3742a#api-is31fl3742a-set-color-arguments","1073":"/drivers/is31fl3742a#api-is31fl3742a-set-color-all","1074":"/drivers/is31fl3742a#api-is31fl3742a-set-color-all-arguments","1075":"/drivers/is31fl3742a#api-is31fl3742a-set-value","1076":"/drivers/is31fl3742a#api-is31fl3742a-set-value-arguments","1077":"/drivers/is31fl3742a#api-is31fl3742a-set-value-all","1078":"/drivers/is31fl3742a#api-is31fl3742a-set-value-all-arguments","1079":"/drivers/is31fl3742a#api-is31fl3742a-set-scaling-register-rgb","1080":"/drivers/is31fl3742a#api-is31fl3742a-set-scaling-register-rgb-arguments","1081":"/drivers/is31fl3742a#api-is31fl3742a-set-scaling-register-mono","1082":"/drivers/is31fl3742a#api-is31fl3742a-set-scaling-register-mono-arguments","1083":"/drivers/is31fl3742a#api-is31fl3742a-update-pwm-buffers","1084":"/drivers/is31fl3742a#api-is31fl3742a-update-pwm-buffers-arguments","1085":"/drivers/is31fl3742a#api-is31fl3742a-update-scaling-registers","1086":"/drivers/is31fl3742a#api-is31fl3742a-update-scaling-registers-arguments","1087":"/drivers/is31fl3743a#is31fl3743a-driver","1088":"/drivers/is31fl3743a#usage","1089":"/drivers/is31fl3743a#basic-configuration","1090":"/drivers/is31fl3743a#i2c-addressing","1091":"/drivers/is31fl3743a#multi-driver-synchronization","1092":"/drivers/is31fl3743a#de-ghosting","1093":"/drivers/is31fl3743a#global-current-control","1094":"/drivers/is31fl3743a#arm-configuration","1095":"/drivers/is31fl3743a#led-mapping","1096":"/drivers/is31fl3743a#api","1097":"/drivers/is31fl3743a#api-is31fl3743a-led-t","1098":"/drivers/is31fl3743a#api-is31fl3743a-led-t-members","1099":"/drivers/is31fl3743a#api-is31fl3743a-init","1100":"/drivers/is31fl3743a#api-is31fl3743a-init-arguments","1101":"/drivers/is31fl3743a#api-is31fl3743a-write-register","1102":"/drivers/is31fl3743a#api-is31fl3743a-write-register-arguments","1103":"/drivers/is31fl3743a#api-is31fl3743a-select-page","1104":"/drivers/is31fl3743a#api-is31fl3743a-select-page-arguments","1105":"/drivers/is31fl3743a#api-is31fl3743a-set-color","1106":"/drivers/is31fl3743a#api-is31fl3743a-set-color-arguments","1107":"/drivers/is31fl3743a#api-is31fl3743a-set-color-all","1108":"/drivers/is31fl3743a#api-is31fl3743a-set-color-all-arguments","1109":"/drivers/is31fl3743a#api-is31fl3743a-set-value","1110":"/drivers/is31fl3743a#api-is31fl3743a-set-value-arguments","1111":"/drivers/is31fl3743a#api-is31fl3743a-set-value-all","1112":"/drivers/is31fl3743a#api-is31fl3743a-set-value-all-arguments","1113":"/drivers/is31fl3743a#api-is31fl3743a-set-scaling-register-rgb","1114":"/drivers/is31fl3743a#api-is31fl3743a-set-scaling-register-rgb-arguments","1115":"/drivers/is31fl3743a#api-is31fl3743a-set-scaling-register-mono","1116":"/drivers/is31fl3743a#api-is31fl3743a-set-scaling-register-mono-arguments","1117":"/drivers/is31fl3743a#api-is31fl3743a-update-pwm-buffers","1118":"/drivers/is31fl3743a#api-is31fl3743a-update-pwm-buffers-arguments","1119":"/drivers/is31fl3743a#api-is31fl3743a-update-scaling-registers","1120":"/drivers/is31fl3743a#api-is31fl3743a-update-scaling-registers-arguments","1121":"/drivers/is31fl3745#is31fl3745-driver","1122":"/drivers/is31fl3745#usage","1123":"/drivers/is31fl3745#basic-configuration","1124":"/drivers/is31fl3745#i2c-addressing","1125":"/drivers/is31fl3745#multi-driver-synchronization","1126":"/drivers/is31fl3745#de-ghosting","1127":"/drivers/is31fl3745#global-current-control","1128":"/drivers/is31fl3745#arm-configuration","1129":"/drivers/is31fl3745#led-mapping","1130":"/drivers/is31fl3745#api","1131":"/drivers/is31fl3745#api-is31fl3745-led-t","1132":"/drivers/is31fl3745#api-is31fl3745-led-t-members","1133":"/drivers/is31fl3745#api-is31fl3745-init","1134":"/drivers/is31fl3745#api-is31fl3745-init-arguments","1135":"/drivers/is31fl3745#api-is31fl3745-write-register","1136":"/drivers/is31fl3745#api-is31fl3745-write-register-arguments","1137":"/drivers/is31fl3745#api-is31fl3745-select-page","1138":"/drivers/is31fl3745#api-is31fl3745-select-page-arguments","1139":"/drivers/is31fl3745#api-is31fl3745-set-color","1140":"/drivers/is31fl3745#api-is31fl3745-set-color-arguments","1141":"/drivers/is31fl3745#api-is31fl3745-set-color-all","1142":"/drivers/is31fl3745#api-is31fl3745-set-color-all-arguments","1143":"/drivers/is31fl3745#api-is31fl3745-set-value","1144":"/drivers/is31fl3745#api-is31fl3745-set-value-arguments","1145":"/drivers/is31fl3745#api-is31fl3745-set-value-all","1146":"/drivers/is31fl3745#api-is31fl3745-set-value-all-arguments","1147":"/drivers/is31fl3745#api-is31fl3745-set-scaling-register-rgb","1148":"/drivers/is31fl3745#api-is31fl3745-set-scaling-register-rgb-arguments","1149":"/drivers/is31fl3745#api-is31fl3745-set-scaling-register-mono","1150":"/drivers/is31fl3745#api-is31fl3745-set-scaling-register-mono-arguments","1151":"/drivers/is31fl3745#api-is31fl3745-update-pwm-buffers","1152":"/drivers/is31fl3745#api-is31fl3745-update-pwm-buffers-arguments","1153":"/drivers/is31fl3745#api-is31fl3745-update-scaling-registers","1154":"/drivers/is31fl3745#api-is31fl3745-update-scaling-registers-arguments","1155":"/drivers/is31fl3746a#is31fl3746a-driver","1156":"/drivers/is31fl3746a#usage","1157":"/drivers/is31fl3746a#basic-configuration","1158":"/drivers/is31fl3746a#i2c-addressing","1159":"/drivers/is31fl3746a#pwm-frequency","1160":"/drivers/is31fl3746a#de-ghosting","1161":"/drivers/is31fl3746a#global-current-control","1162":"/drivers/is31fl3746a#arm-configuration","1163":"/drivers/is31fl3746a#led-mapping","1164":"/drivers/is31fl3746a#api","1165":"/drivers/is31fl3746a#api-is31fl3746a-led-t","1166":"/drivers/is31fl3746a#api-is31fl3746a-led-t-members","1167":"/drivers/is31fl3746a#api-is31fl3746a-init","1168":"/drivers/is31fl3746a#api-is31fl3746a-init-arguments","1169":"/drivers/is31fl3746a#api-is31fl3746a-write-register","1170":"/drivers/is31fl3746a#api-is31fl3746a-write-register-arguments","1171":"/drivers/is31fl3746a#api-is31fl3746a-select-page","1172":"/drivers/is31fl3746a#api-is31fl3746a-select-page-arguments","1173":"/drivers/is31fl3746a#api-is31fl3746a-set-color","1174":"/drivers/is31fl3746a#api-is31fl3746a-set-color-arguments","1175":"/drivers/is31fl3746a#api-is31fl3746a-set-color-all","1176":"/drivers/is31fl3746a#api-is31fl3746a-set-color-all-arguments","1177":"/drivers/is31fl3746a#api-is31fl3746a-set-value","1178":"/drivers/is31fl3746a#api-is31fl3746a-set-value-arguments","1179":"/drivers/is31fl3746a#api-is31fl3746a-set-value-all","1180":"/drivers/is31fl3746a#api-is31fl3746a-set-value-all-arguments","1181":"/drivers/is31fl3746a#api-is31fl3746a-set-scaling-register-rgb","1182":"/drivers/is31fl3746a#api-is31fl3746a-set-scaling-register-rgb-arguments","1183":"/drivers/is31fl3746a#api-is31fl3746a-set-scaling-register-mono","1184":"/drivers/is31fl3746a#api-is31fl3746a-set-scaling-register-mono-arguments","1185":"/drivers/is31fl3746a#api-is31fl3746a-update-pwm-buffers","1186":"/drivers/is31fl3746a#api-is31fl3746a-update-pwm-buffers-arguments","1187":"/drivers/is31fl3746a#api-is31fl3746a-update-scaling-registers","1188":"/drivers/is31fl3746a#api-is31fl3746a-update-scaling-registers-arguments","1189":"/drivers/serial#serial-driver","1190":"/drivers/serial#bitbang","1191":"/drivers/serial#pin-configuration","1192":"/drivers/serial#setup","1193":"/drivers/serial#usart-half-duplex","1194":"/drivers/serial#pin-configuration-1","1195":"/drivers/serial#setup-1","1196":"/drivers/serial#usart-full-duplex","1197":"/drivers/serial#pin-configuration-2","1198":"/drivers/serial#setup-2","1199":"/drivers/serial#choosing-a-driver-subsystem","1200":"/drivers/serial#the-serial-driver","1201":"/drivers/serial#the-sio-driver","1202":"/drivers/serial#the-pio-driver","1203":"/drivers/serial#advanced-configuration","1204":"/drivers/serial#baudrate","1205":"/drivers/serial#timeout","1206":"/drivers/serial#troubleshooting","1207":"/drivers/serial#alternate-functions-for-selected-stm32-mcus","1208":"/drivers/serial#stm32f303-proton-c-datasheet","1209":"/drivers/serial#stm32f072-datasheet","1210":"/drivers/serial#stm32f103-medium-density-c8-cb-datasheet","1211":"/drivers/snled27351#snled27351-driver","1212":"/drivers/snled27351#usage","1213":"/drivers/snled27351#basic-configuration","1214":"/drivers/snled27351#i2c-addressing","1215":"/drivers/snled27351#arm-configuration","1216":"/drivers/snled27351#led-mapping","1217":"/drivers/snled27351#api","1218":"/drivers/snled27351#api-snled27351-led-t","1219":"/drivers/snled27351#api-snled27351-led-t-members","1220":"/drivers/snled27351#api-snled27351-init","1221":"/drivers/snled27351#api-snled27351-init-arguments","1222":"/drivers/snled27351#api-snled27351-write-register","1223":"/drivers/snled27351#api-snled27351-write-register-arguments","1224":"/drivers/snled27351#api-snled27351-select-page","1225":"/drivers/snled27351#api-snled27351-select-page-arguments","1226":"/drivers/snled27351#api-snled27351-set-color","1227":"/drivers/snled27351#api-snled27351-set-color-arguments","1228":"/drivers/snled27351#api-snled27351-set-color-all","1229":"/drivers/snled27351#api-snled27351-set-color-all-arguments","1230":"/drivers/snled27351#api-snled27351-set-value","1231":"/drivers/snled27351#api-snled27351-set-value-arguments","1232":"/drivers/snled27351#api-snled27351-set-value-all","1233":"/drivers/snled27351#api-snled27351-set-value-all-arguments","1234":"/drivers/snled27351#api-snled27351-set-led-control-register-rgb","1235":"/drivers/snled27351#api-snled27351-set-led-control-register-rgb-arguments","1236":"/drivers/snled27351#api-snled27351-set-led-control-register-mono","1237":"/drivers/snled27351#api-snled27351-set-led-control-register-mono-arguments","1238":"/drivers/snled27351#api-snled27351-update-pwm-buffers","1239":"/drivers/snled27351#api-snled27351-update-pwm-buffers-arguments","1240":"/drivers/snled27351#api-snled27351-update-led-control-registers","1241":"/drivers/snled27351#api-snled27351-update-led-control-registers-arguments","1242":"/drivers/spi#spi-master-driver","1243":"/drivers/spi#usage","1244":"/drivers/spi#avr-configuration","1245":"/drivers/spi#arm-configuration","1246":"/drivers/spi#api","1247":"/drivers/spi#api-spi-init","1248":"/drivers/spi#api-spi-start","1249":"/drivers/spi#api-spi-start-arguments","1250":"/drivers/spi#api-spi-start-return","1251":"/drivers/spi#api-spi-write","1252":"/drivers/spi#api-spi-write-arguments","1253":"/drivers/spi#api-spi-write-return","1254":"/drivers/spi#api-spi-read","1255":"/drivers/spi#api-spi-read-return","1256":"/drivers/spi#api-spi-transmit","1257":"/drivers/spi#api-spi-transmit-arguments","1258":"/drivers/spi#api-spi-transmit-return","1259":"/drivers/spi#api-spi-receive","1260":"/drivers/spi#api-spi-receive-arguments","1261":"/drivers/spi#api-spi-receive-return","1262":"/drivers/spi#api-spi-stop","1263":"/drivers/uart#uart-driver","1264":"/drivers/uart#usage","1265":"/drivers/uart#avr-configuration","1266":"/drivers/uart#arm-configuration","1267":"/drivers/uart#api","1268":"/drivers/uart#api-uart-init","1269":"/drivers/uart#api-uart-init-arguments","1270":"/drivers/uart#api-uart-write","1271":"/drivers/uart#api-uart-write-arguments","1272":"/drivers/uart#api-uart-read","1273":"/drivers/uart#api-uart-read-return","1274":"/drivers/uart#api-uart-transmit","1275":"/drivers/uart#api-uart-transmit-arguments","1276":"/drivers/uart#api-uart-receive","1277":"/drivers/uart#api-uart-receive-arguments","1278":"/drivers/uart#api-uart-available","1279":"/drivers/uart#api-uart-available-return","1280":"/drivers/ws2812#ws2812-driver","1281":"/drivers/ws2812#usage","1282":"/drivers/ws2812#basic-configuration","1283":"/drivers/ws2812#timing-adjustment","1284":"/drivers/ws2812#byte-order","1285":"/drivers/ws2812#rgbw-support","1286":"/drivers/ws2812#driver-configuration","1287":"/drivers/ws2812#bitbang-driver","1288":"/drivers/ws2812#i2c-driver","1289":"/drivers/ws2812#pio-driver","1290":"/drivers/ws2812#pwm-driver","1291":"/drivers/ws2812#spi-driver","1292":"/drivers/ws2812#arm-configuration","1293":"/drivers/ws2812#logic-levels","1294":"/drivers/ws2812#open-drain-circuit","1295":"/drivers/ws2812#level-shifter","1296":"/drivers/ws2812#arm-spi-driver","1297":"/drivers/ws2812#arm-spi-baudrate","1298":"/drivers/ws2812#arm-spi-circular-buffer","1299":"/drivers/ws2812#arm-pio-driver","1300":"/drivers/ws2812#arm-pwm-driver","1301":"/drivers/ws2812#api","1302":"/drivers/ws2812#api-ws2812-init","1303":"/drivers/ws2812#api-ws2812-set-color","1304":"/drivers/ws2812#api-ws2812-set-color-arguments","1305":"/drivers/ws2812#api-ws2812-set-color-all","1306":"/drivers/ws2812#api-ws2812-set-color-all-arguments","1307":"/drivers/ws2812#api-ws2812-flush","1308":"/easy_maker#easy-maker-build-one-off-projects-in-configurator","1309":"/easy_maker#quickstart","1310":"/easy_maker#direct-pin","1311":"/faq_build#frequently-asked-build-questions","1312":"/faq_build#can-t-program-on-linux","1313":"/faq_build#linux-udev-rules","1314":"/faq_build#serial-device-is-not-detected-in-bootloader-mode-on-linux","1315":"/faq_build#unknown-device-for-dfu-bootloader","1316":"/faq_build#usb-vid-and-pid","1317":"/faq_build#i-just-flashed-my-keyboard-and-it-does-nothing-keypresses-don-t-register-it-s-also-arm-rev6-planck-clueboard-60-hs60v2-etc-feb-2019","1318":"/faq_debug#debugging-faq","1319":"/faq_debug#debugging","1320":"/faq_debug#debugging-tools","1321":"/faq_debug#debugging-with-qmk-toolbox","1322":"/faq_debug#debugging-with-qmk-cli","1323":"/faq_debug#debugging-with-hid-listen","1324":"/faq_debug#debug-api","1325":"/faq_debug#debug-examples","1326":"/faq_debug#which-matrix-position-is-this-keypress","1327":"/faq_debug#which-keycode-is-this-keypress","1328":"/faq_debug#how-long-did-it-take-to-scan-for-a-keypress","1329":"/faq_debug#hid-listen-can-t-recognize-device","1330":"/faq_debug#can-t-get-message-on-console","1331":"/faq_general#frequently-asked-questions","1332":"/faq_general#what-is-qmk","1333":"/faq_general#i-don-t-know-where-to-start","1334":"/faq_general#how-can-i-flash-the-firmware-i-built","1335":"/faq_general#what-if-i-have-an-issue-that-isn-t-covered-here","1336":"/faq_general#what-if-i-found-a-bug","1337":"/faq_general#but-git-and-github-are-intimidating","1338":"/faq_general#i-have-a-keyboard-that-i-want-to-add-support-for","1339":"/faq_general#what-if-i-want-to-brand-it-with-qmk","1340":"/faq_general#what-differences-are-there-between-qmk-and-tmk","1341":"/faq_keymap#keymap-faq","1342":"/faq_keymap#what-keycodes-can-i-use","1343":"/faq_keymap#what-are-the-default-keycodes","1344":"/faq_keymap#how-can-i-make-custom-names-for-complex-keycodes","1345":"/faq_keymap#my-keymap-doesn-t-update-when-i-flash-it","1346":"/faq_keymap#some-of-my-keys-are-swapped-or-not-working","1347":"/faq_keymap#the-menu-key-isn-t-working","1348":"/faq_keymap#power-keys-aren-t-working","1349":"/faq_keymap#one-shot-modifier","1350":"/faq_keymap#modifier-layer-stuck","1351":"/faq_keymap#mechanical-lock-switch-support","1352":"/faq_keymap#input-special-characters-other-than-ascii-like-cedille-c","1353":"/faq_keymap#fn-key-on-macos","1354":"/faq_keymap#keys-supported-in-mac-osx","1355":"/faq_keymap#jis-keys-in-mac-osx","1356":"/faq_keymap#rn-42-bluetooth-doesn-t-work-with-karabiner","1357":"/faq_keymap#esc-and-on-a-single-key","1358":"/faq_keymap#eject-on-mac-osx","1359":"/faq_keymap#what-are-real-and-weak-modifiers","1360":"/faq_misc#miscellaneous-faq","1361":"/faq_misc#testing","1362":"/faq_misc#safety-considerations","1363":"/faq_misc#nkro-doesn-t-work","1364":"/faq_misc#trackpoint-needs-reset-circuit-ps-2-mouse-support","1365":"/faq_misc#can-t-read-column-of-matrix-beyond-16","1366":"/faq_misc#special-extra-key-doesn-t-work-system-audio-control-keys","1367":"/faq_misc#wake-from-sleep-doesn-t-work","1368":"/faq_misc#using-arduino","1369":"/faq_misc#enabling-jtag","1370":"/faq_misc#usb-3-compatibility","1371":"/faq_misc#mac-compatibility","1372":"/faq_misc#os-x-10-11-and-hub","1373":"/faq_misc#problem-in-bios-uefi-setup-resume-sleep-wake-power-cycles","1374":"/feature_advanced_keycodes#modifier-keys","1375":"/feature_advanced_keycodes#checking-modifier-state","1376":"/feature_advanced_keycodes#examples","1377":"/feature_advanced_keycodes#alt-escape-for-alt-tab","1378":"/feature_advanced_keycodes#shift-backspace-for-delete","1379":"/feature_advanced_keycodes#advanced-topics","1380":"/feature_advanced_keycodes#switching-and-toggling-layers","1381":"/feature_advanced_keycodes#mod-tap","1382":"/feature_advanced_keycodes#one-shot-keys","1383":"/feature_advanced_keycodes#tap-hold-configuration-options","1384":"/feature_advanced_keycodes#key-overrides","1385":"/feature_converters#converters","1386":"/feature_converters#supported-converters","1387":"/feature_converters#configuration","1388":"/feature_converters#pro-micro-converters","1389":"/feature_converters#proton_c","1390":"/feature_converters#kb2040","1391":"/feature_converters#sparkfun_pm2040","1392":"/feature_converters#stemcell","1393":"/feature_converters#bonsai_c4","1394":"/feature_converters#rp2040_ce","1395":"/feature_converters#svlinky","1396":"/feature_converters#elite-c-converters","1397":"/feature_converters#stemcell_elite","1398":"/feature_converters#rp2040_ce_elite","1399":"/feature_converters#advanced-topics","1400":"/feature_converters#keyboard-configuration","1401":"/feature_converters#keyboard-req","1402":"/feature_converters#keymap-add","1403":"/feature_converters#conditional-configuration","1404":"/feature_converters#pin_compatible","1405":"/feature_converters#available-pin-compatibility","1406":"/feature_eeprom#persistent-configuration-eeprom","1407":"/feature_eeprom#example-implementation","1408":"/feature_eeprom#eeconfig-function-documentation","1409":"/feature_debounce_type#contact-bounce-contact-chatter","1410":"/feature_debounce_type#types-of-debounce-algorithms","1411":"/feature_debounce_type#supported-debounce-algorithms","1412":"/feature_debounce_type#debounce-time","1413":"/feature_debounce_type#debounce-method","1414":"/feature_debounce_type#implementing-your-own-debouncing-code","1415":"/feature_layers#layers","1416":"/feature_layers#switching-and-toggling-layers","1417":"/feature_layers#caveats","1418":"/feature_layers#working-with-layers","1419":"/feature_layers#beginners","1420":"/feature_layers#intermediate-users","1421":"/feature_layers#advanced-users","1422":"/feature_layers#functions","1423":"/feature_layers#layer-change-code","1424":"/feature_layers#example-layer-state-set-implementation","1425":"/feature_layers#example-keycode-to-cycle-through-layers","1426":"/feature_layers#layer-state-set-function-documentation","1427":"/feature_layouts#layouts-using-a-keymap-with-multiple-keyboards","1428":"/feature_layouts#supporting-a-layout","1429":"/feature_layouts#building-a-keymap","1430":"/feature_layouts#conflicting-layouts","1431":"/feature_layouts#tips-for-making-layouts-keyboard-agnostic","1432":"/feature_layouts#includes","1433":"/feature_layouts#keymaps","1434":"/feature_macros#macros","1435":"/feature_macros#using-macros-in-json-keymaps","1436":"/feature_macros#selecting-your-host-keyboard-layout","1437":"/feature_macros#macro-basics","1438":"/feature_macros#object-format","1439":"/feature_macros#using-macros-in-c-keymaps","1440":"/feature_macros#send-string-process-record-user","1441":"/feature_macros#advanced-macros","1442":"/feature_macros#tap-down-and-up","1443":"/feature_macros#alternative-keymaps","1444":"/feature_macros#strings-in-memory","1445":"/feature_macros#advanced-macro-functions","1446":"/feature_macros#record-event-pressed","1447":"/feature_macros#register-code-kc","1448":"/feature_macros#unregister-code-kc","1449":"/feature_macros#tap-code-kc","1450":"/feature_macros#tap-code-delay-kc-delay","1451":"/feature_macros#register-code16-kc-unregister-code16-kc-tap-code16-kc-and-tap-code16-delay-kc-delay","1452":"/feature_macros#clear-keyboard","1453":"/feature_macros#clear-mods","1454":"/feature_macros#clear-keyboard-but-mods","1455":"/feature_macros#advanced-example","1456":"/feature_macros#super-alt↯tab","1457":"/feature_userspace#userspace-sharing-code-between-keymaps","1458":"/feature_userspace#rules-mk","1459":"/feature_userspace#override-default-userspace","1460":"/feature_userspace#configuration-options-config-h","1461":"/feature_userspace#readme-readme-md","1462":"/feature_userspace#build-all-keyboards-that-support-a-specific-keymap","1463":"/feature_userspace#examples","1464":"/feature_userspace#customized-functions","1465":"/feature_userspace#custom-features","1466":"/feature_userspace#consolidated-macros","1467":"/features/audio#audio","1468":"/features/audio#avr-based-boards","1469":"/features/audio#wiring","1470":"/features/audio#arm-based-boards","1471":"/features/audio#dac-basic","1472":"/features/audio#wiring-1","1473":"/features/audio#proton-c-example","1474":"/features/audio#dac-additive","1475":"/features/audio#pwm-software","1476":"/features/audio#wiring-2","1477":"/features/audio#pwm-hardware","1478":"/features/audio#tone-multiplexing","1479":"/features/audio#songs","1480":"/features/audio#audio-config","1481":"/features/audio#tempo","1482":"/features/audio#arm-audio-volume","1483":"/features/audio#voices","1484":"/features/audio#music-mode","1485":"/features/audio#music-mask","1486":"/features/audio#music-map","1487":"/features/audio#audio-click","1488":"/features/audio#midi-functionality","1489":"/features/audio#audio-keycodes","1490":"/features/auto_shift#auto-shift-why-do-we-need-a-shift-key","1491":"/features/auto_shift#why-auto-shift","1492":"/features/auto_shift#how-does-it-work","1493":"/features/auto_shift#are-there-limitations-to-auto-shift","1494":"/features/auto_shift#how-do-i-enable-auto-shift","1495":"/features/auto_shift#modifiers","1496":"/features/auto_shift#configuring-auto-shift","1497":"/features/auto_shift#auto-shift-timeout-value-in-ms","1498":"/features/auto_shift#no-auto-shift-special-simple-define","1499":"/features/auto_shift#no-auto-shift-tab-simple-define","1500":"/features/auto_shift#no-auto-shift-symbols-simple-define","1501":"/features/auto_shift#no-auto-shift-numeric-simple-define","1502":"/features/auto_shift#no-auto-shift-alpha-simple-define","1503":"/features/auto_shift#auto-shift-enter-simple-define","1504":"/features/auto_shift#auto-shift-per-key","1505":"/features/auto_shift#auto-shift-repeat-simple-define","1506":"/features/auto_shift#auto-shift-no-auto-repeat-simple-define","1507":"/features/auto_shift#auto-shift-alpha-predefined-key-group","1508":"/features/auto_shift#auto-shift-numeric-predefined-key-group","1509":"/features/auto_shift#auto-shift-symbols-predefined-key-group","1510":"/features/auto_shift#auto-shift-special-predefined-key-group","1511":"/features/auto_shift#custom-shifted-values","1512":"/features/auto_shift#retro-shift","1513":"/features/auto_shift#retro-shift-and-tap-hold-configurations","1514":"/features/auto_shift#using-auto-shift-setup","1515":"/features/auto_shift#setup","1516":"/features/auto_shift#use","1517":"/features/auto_shift#an-example-run","1518":"/features/autocorrect#autocorrect","1519":"/features/autocorrect#how-does-it-work","1520":"/features/autocorrect#how-do-i-enable-autocorrection","1521":"/features/autocorrect#customizing-autocorrect-library","1522":"/features/autocorrect#avoiding-false-triggers","1523":"/features/autocorrect#overriding-autocorrect","1524":"/features/autocorrect#keycodes","1525":"/features/autocorrect#user-callback-functions","1526":"/features/autocorrect#process-autocorrect","1527":"/features/autocorrect#process-autocorrect-example","1528":"/features/autocorrect#apply-autocorrect","1529":"/features/autocorrect#apply-autocorrect-example","1530":"/features/autocorrect#autocorrect-status","1531":"/features/autocorrect#appendix","1532":"/features/autocorrect#encoding","1533":"/features/autocorrect#decoding","1534":"/features/autocorrect#credits","1535":"/features/backlight#backlighting","1536":"/features/backlight#usage","1537":"/features/backlight#keycodes","1538":"/features/backlight#basic-configuration","1539":"/features/backlight#on-state","1540":"/features/backlight#multiple-backlight-pins","1541":"/features/backlight#driver-configuration","1542":"/features/backlight#pwm-driver","1543":"/features/backlight#timer-driver","1544":"/features/backlight#software-driver","1545":"/features/backlight#custom-driver","1546":"/features/backlight#avr-configuration","1547":"/features/backlight#avr-pwm-driver","1548":"/features/backlight#avr-timer-driver","1549":"/features/backlight#arm-configuration","1550":"/features/backlight#arm-pwm-driver","1551":"/features/backlight#arm-timer-driver","1552":"/features/backlight#example-schematic","1553":"/features/backlight#api","1554":"/features/backlight#api-backlight-toggle","1555":"/features/backlight#api-backlight-enable","1556":"/features/backlight#api-backlight-disable","1557":"/features/backlight#api-backlight-step","1558":"/features/backlight#api-backlight-increase","1559":"/features/backlight#api-backlight-decrease","1560":"/features/backlight#api-backlight-level","1561":"/features/backlight#api-backlight-level-arguments","1562":"/features/backlight#api-get-backlight-level","1563":"/features/backlight#api-get-backlight-level-return","1564":"/features/backlight#api-is-backlight-enabled","1565":"/features/backlight#api-is-backlight-enabled-return","1566":"/features/backlight#api-backlight-toggle-breathing","1567":"/features/backlight#api-backlight-enable-breathing","1568":"/features/backlight#api-backlight-disable-breathing","1569":"/features/backlight#api-is-backlight-breathing","1570":"/features/backlight#api-is-backlight-breathing-return","1571":"/features/battery#battery","1572":"/features/battery#usage","1573":"/features/battery#basic-configuration","1574":"/features/battery#driver-configuration","1575":"/features/battery#functions","1576":"/features/battery#api-battery-get-percent","1577":"/features/battery#api-battery-get-percent-return","1578":"/features/battery#callbacks","1579":"/features/battery#api-battery-percent-changed-user","1580":"/features/battery#api-battery-percent-changed-user-arguments","1581":"/features/battery#api-battery-percent-changed-kb","1582":"/features/battery#api-battery-percent-changed-kb-arguments","1583":"/features/bootmagic#bootmagic","1584":"/features/bootmagic#split-keyboards","1585":"/features/bootmagic#advanced-bootmagic","1586":"/features/bootmagic#addenda","1587":"/features/caps_word#caps-word","1588":"/features/caps_word#how-do-i-enable-caps-word","1589":"/features/caps_word#troubleshooting-command","1590":"/features/caps_word#customizing-caps-word","1591":"/features/caps_word#invert-on-shift","1592":"/features/caps_word#idle-timeout","1593":"/features/caps_word#functions","1594":"/features/caps_word#configure-which-keys-are-word-breaking","1595":"/features/caps_word#representing-caps-word-state","1596":"/features/combo#combos","1597":"/features/combo#advanced-keycodes-support","1598":"/features/combo#overlapping-combos","1599":"/features/combo#examples","1600":"/features/combo#keycodes","1601":"/features/combo#advanced-configuration","1602":"/features/combo#combo-term","1603":"/features/combo#buffer-and-state-sizes","1604":"/features/combo#modifier-combos","1605":"/features/combo#strict-key-press-order","1606":"/features/combo#per-combo-timing-holding-tapping-and-key-press-order","1607":"/features/combo#generic-hook-to-dis-allow-a-combo-activation","1608":"/features/combo#combo-timer","1609":"/features/combo#define-combo-strict-timer","1610":"/features/combo#define-combo-no-timer","1611":"/features/combo#customizable-key-releases","1612":"/features/combo#customizable-key-repress","1613":"/features/combo#layer-independent-combos","1614":"/features/combo#combo-reference-layers-by-layer","1615":"/features/combo#user-callbacks","1616":"/features/combo#dictionary-management","1617":"/features/command#command","1618":"/features/command#usage","1619":"/features/command#configuration","1620":"/features/community_modules#community-modules","1621":"/features/community_modules#adding-a-community-module-to-your-build","1622":"/features/community_modules#adding-a-community-module-to-your-external-userspace","1623":"/features/community_modules#writing-a-qmk-community-module","1624":"/features/community_modules#qmk-module-json","1625":"/features/community_modules#config-h","1626":"/features/community_modules#rules-mk-post-rules-mk","1627":"/features/community_modules#module-c","1628":"/features/community_modules#introspection-c-introspection-h","1629":"/features/community_modules#led-matrix-module-inc","1630":"/features/community_modules#rgb-matrix-module-inc","1631":"/features/community_modules#custom-split-keyboard-data-sync","1632":"/features/community_modules#compatible-apis","1633":"/features/digitizer#digitizer","1634":"/features/digitizer#usage","1635":"/features/digitizer#positioning","1636":"/features/digitizer#examples","1637":"/features/digitizer#api","1638":"/features/digitizer#api-digitizer-t","1639":"/features/digitizer#api-digitizer-t-members","1640":"/features/digitizer#api-digitizer-flush","1641":"/features/digitizer#api-digitizer-in-range-on","1642":"/features/digitizer#api-digitizer-in-range-off","1643":"/features/digitizer#api-digitizer-tip-switch-on","1644":"/features/digitizer#api-digitizer-tip-switch-off","1645":"/features/digitizer#api-digitizer-barrel-switch-on","1646":"/features/digitizer#api-digitizer-barrel-switch-off","1647":"/features/digitizer#api-digitizer-set-position","1648":"/features/digitizer#api-digitizer-set-position-arguments","1649":"/features/dip_switch#dip-switches","1650":"/features/dip_switch#dip-switch-map","1651":"/features/dip_switch#callbacks","1652":"/features/dip_switch#hardware","1653":"/features/dip_switch#connects-each-switch-in-the-dip-switch-to-the-gpio-pin-of-the-mcu","1654":"/features/dip_switch#connect-each-switch-in-the-dip-switch-to-an-unused-intersections-in-the-key-matrix","1655":"/features/dynamic_macros#dynamic-macros-record-and-replay-macros-in-runtime","1656":"/features/dynamic_macros#customization","1657":"/features/dynamic_macros#dynamic-macro-user-call","1658":"/features/dynamic_macros#user-hooks","1659":"/features/encoders#encoders","1660":"/features/encoders#split-keyboards","1661":"/features/encoders#encoder-map","1662":"/features/encoders#callbacks","1663":"/features/encoders#hardware","1664":"/features/encoders#multiple-encoders","1665":"/features/grave_esc#grave-escape","1666":"/features/grave_esc#usage","1667":"/features/grave_esc#what-your-os-sees","1668":"/features/grave_esc#keycodes","1669":"/features/grave_esc#caveats","1670":"/features/grave_esc#configuration","1671":"/features/haptic_feedback#haptic-feedback","1672":"/features/haptic_feedback#haptic-feedback-rules-mk-options","1673":"/features/haptic_feedback#known-supported-hardware","1674":"/features/haptic_feedback#haptic-keycodes","1675":"/features/haptic_feedback#solenoids","1676":"/features/haptic_feedback#drv2605l","1677":"/features/haptic_feedback#feedback-motor-setup","1678":"/features/haptic_feedback#erm","1679":"/features/haptic_feedback#lra","1680":"/features/haptic_feedback#drv2605l-waveform-library","1681":"/features/haptic_feedback#optional-drv2605l-defines","1682":"/features/haptic_feedback#drv2605l-continuous-haptic-mode","1683":"/features/haptic_feedback#haptic-key-exclusion","1684":"/features/haptic_feedback#no-haptic-mod","1685":"/features/haptic_feedback#no-haptic-alpha","1686":"/features/haptic_feedback#no-haptic-punctuation","1687":"/features/haptic_feedback#no-haptic-lockkeys","1688":"/features/haptic_feedback#no-haptic-nav","1689":"/features/haptic_feedback#no-haptic-numeric","1690":"/features/hd44780#hd44780-lcd-driver","1691":"/features/hd44780#supported-hardware","1692":"/features/hd44780#usage","1693":"/features/hd44780#basic-configuration","1694":"/features/hd44780#examples","1695":"/features/hd44780#example-hello-world","1696":"/features/hd44780#example-custom-character","1697":"/features/hd44780#api","1698":"/features/hd44780#api-hd44780-init","1699":"/features/hd44780#api-hd44780-init-arguments","1700":"/features/hd44780#api-hd44780-clear","1701":"/features/hd44780#api-hd44780-home","1702":"/features/hd44780#api-hd44780-on","1703":"/features/hd44780#api-hd44780-on-arguments","1704":"/features/hd44780#api-hd44780-off","1705":"/features/hd44780#api-hd44780-set-cursor","1706":"/features/hd44780#api-hd44780-set-cursor-arguments","1707":"/features/hd44780#api-hd44780-putc","1708":"/features/hd44780#api-hd44780-putc-arguments","1709":"/features/hd44780#api-hd44780-puts","1710":"/features/hd44780#api-hd44780-puts-arguments","1711":"/features/hd44780#api-hd44780-puts-p","1712":"/features/hd44780#api-hd44780-puts-p-arguments","1713":"/features/hd44780#api-hd44780-define-char","1714":"/features/hd44780#api-hd44780-define-char-arguments","1715":"/features/hd44780#api-hd44780-define-char-p","1716":"/features/hd44780#api-hd44780-define-char-p-arguments","1717":"/features/hd44780#api-hd44780-busy","1718":"/features/hd44780#api-hd44780-busy-arguments","1719":"/features/hd44780#api-hd44780-write","1720":"/features/hd44780#api-hd44780-write-arguments","1721":"/features/hd44780#api-hd44780-read","1722":"/features/hd44780#api-hd44780-read-arguments","1723":"/features/hd44780#api-hd44780-read-return","1724":"/features/hd44780#api-hd44780-command","1725":"/features/hd44780#api-hd44780-command-arguments","1726":"/features/hd44780#api-hd44780-data","1727":"/features/hd44780#api-hd44780-data-arguments","1728":"/features/hd44780#api-hd44780-set-cgram-address","1729":"/features/hd44780#api-hd44780-set-cgram-address-arguments","1730":"/features/hd44780#api-hd44780-set-ddram-address","1731":"/features/hd44780#api-hd44780-set-ddram-address-arguments","1732":"/features/joystick#joystick","1733":"/features/joystick#usage","1734":"/features/joystick#configuration","1735":"/features/joystick#hat-switch","1736":"/features/joystick#axes","1737":"/features/joystick#virtual-axes","1738":"/features/joystick#keycodes","1739":"/features/joystick#api","1740":"/features/joystick#api-joystick-t","1741":"/features/joystick#api-joystick-t-members","1742":"/features/joystick#api-joystick-config-t","1743":"/features/joystick#api-joystick-config-t-members","1744":"/features/joystick#api-joystick-flush","1745":"/features/joystick#api-register-joystick-button","1746":"/features/joystick#api-register-joystick-button-arguments","1747":"/features/joystick#api-unregister-joystick-button","1748":"/features/joystick#api-unregister-joystick-button-arguments","1749":"/features/joystick#api-joystick-read-axis","1750":"/features/joystick#api-joystick-read-axis-arguments","1751":"/features/joystick#api-joystick-read-axis-return","1752":"/features/joystick#api-joystick-set-axis","1753":"/features/joystick#api-joystick-set-axis-arguments","1754":"/features/joystick#api-joystick-set-hat","1755":"/features/joystick#api-joystick-set-hat-arguments","1756":"/features/key_lock#key-lock","1757":"/features/key_lock#usage","1758":"/features/key_lock#keycodes","1759":"/features/key_lock#caveats","1760":"/features/key_overrides#key-overrides","1761":"/features/key_overrides#a-few-more-examples-to-get-started-you-could-use-key-overrides-to","1762":"/features/key_overrides#setup","1763":"/features/key_overrides#creating-key-overrides","1764":"/features/key_overrides#ko-make-basic-modifiers-key-replacement","1765":"/features/key_overrides#ko-make-with-layers-modifiers-key-replacement-layers","1766":"/features/key_overrides#ko-make-with-layers-and-negmods-modifiers-key-replacement-layers-negative-mods","1767":"/features/key_overrides#ko-make-with-layers-negmods-and-options-modifiers-key-replacement-layers-negative-mods-options","1768":"/features/key_overrides#simple-example","1769":"/features/key_overrides#intermediate-difficulty-examples","1770":"/features/key_overrides#media-controls-amp-screen-brightness","1771":"/features/key_overrides#flexible-macos-friendly-grave-escape","1772":"/features/key_overrides#advanced-examples","1773":"/features/key_overrides#modifiers-as-layer-keys","1774":"/features/key_overrides#keycodes","1775":"/features/key_overrides#reference-for-key_override_t","1776":"/features/key_overrides#reference-for-ko_option_t","1777":"/features/key_overrides#for-advanced-users-inner-workings","1778":"/features/key_overrides#activation","1779":"/features/key_overrides#deactivation","1780":"/features/key_overrides#key-repeat-delay","1781":"/features/key_overrides#difference-to-combos","1782":"/features/key_overrides#neutralize-flashing-modifiers","1783":"/features/leader_key#the-leader-key","1784":"/features/leader_key#usage","1785":"/features/leader_key#callbacks","1786":"/features/leader_key#basic-configuration","1787":"/features/leader_key#timeout","1788":"/features/leader_key#per-key-timeout","1789":"/features/leader_key#disabling-initial-timeout","1790":"/features/leader_key#strict-key-processing","1791":"/features/leader_key#example","1792":"/features/leader_key#keycodes","1793":"/features/leader_key#api","1794":"/features/leader_key#api-leader-start-user","1795":"/features/leader_key#api-leader-end-user","1796":"/features/leader_key#api-leader-add-user","1797":"/features/leader_key#api-leader-add-user-arguments","1798":"/features/leader_key#api-leader-add-user-return","1799":"/features/leader_key#api-leader-start","1800":"/features/leader_key#api-leader-end","1801":"/features/leader_key#api-leader-sequence-active","1802":"/features/leader_key#api-leader-sequence-add","1803":"/features/leader_key#api-leader-sequence-add-arguments","1804":"/features/leader_key#api-leader-sequence-add-return","1805":"/features/leader_key#api-leader-sequence-timed-out","1806":"/features/leader_key#api-leader-reset-timer","1807":"/features/leader_key#api-leader-sequence-one-key","1808":"/features/leader_key#api-leader-sequence-one-key-arguments","1809":"/features/leader_key#api-leader-sequence-one-key-return","1810":"/features/leader_key#api-leader-sequence-two-keys","1811":"/features/leader_key#api-leader-sequence-two-keys-arguments","1812":"/features/leader_key#api-leader-sequence-two-keys-return","1813":"/features/leader_key#api-leader-sequence-three-keys","1814":"/features/leader_key#api-leader-sequence-three-keys-arguments","1815":"/features/leader_key#api-leader-sequence-three-keys-return","1816":"/features/leader_key#api-leader-sequence-four-keys","1817":"/features/leader_key#api-leader-sequence-four-keys-arguments","1818":"/features/leader_key#api-leader-sequence-four-keys-return","1819":"/features/leader_key#api-leader-sequence-five-keys","1820":"/features/leader_key#api-leader-sequence-five-keys-arguments","1821":"/features/leader_key#api-leader-sequence-five-keys-return","1822":"/features/layer_lock#layer-lock","1823":"/features/layer_lock#how-do-i-enable-layer-lock","1824":"/features/layer_lock#example-use","1825":"/features/layer_lock#idle-timeout","1826":"/features/layer_lock#functions","1827":"/features/layer_lock#representing-the-current-layer-lock-state","1828":"/features/layer_lock#combine-layer-lock-with-a-mod-tap","1829":"/features/led_indicators#led-indicators","1830":"/features/led_indicators#configuration-options","1831":"/features/led_indicators#led-update-function","1832":"/features/led_indicators#example-of-keyboard-led-update-implementation","1833":"/features/led_indicators#example-of-user-led-update-implementation","1834":"/features/led_indicators#host-keyboard-led-state","1835":"/features/led_indicators#led-update-ports","1836":"/features/led_indicators#setting-physical-led-state","1837":"/features/led_indicators#ergodox-boards","1838":"/features/led_matrix#led-matrix-lighting","1839":"/features/led_matrix#driver-configuration","1840":"/features/led_matrix#common-configuration","1841":"/features/led_matrix#flags","1842":"/features/led_matrix#keycodes","1843":"/features/led_matrix#led-matrix-effects","1844":"/features/led_matrix#custom-led-matrix-effects","1845":"/features/led_matrix#naming","1846":"/features/led_matrix#additional-configh-options","1847":"/features/led_matrix#eeprom-storage","1848":"/features/led_matrix#callbacks","1849":"/features/led_matrix#indicators","1850":"/features/led_matrix#api","1851":"/features/led_matrix#api-led-matrix-toggle","1852":"/features/led_matrix#api-led-matrix-toggle-noeeprom","1853":"/features/led_matrix#api-led-matrix-enable","1854":"/features/led_matrix#api-led-matrix-enable-noeeprom","1855":"/features/led_matrix#api-led-matrix-disable","1856":"/features/led_matrix#api-led-matrix-disable-noeeprom","1857":"/features/led_matrix#api-led-matrix-is-enabled","1858":"/features/led_matrix#api-led-matrix-is-enabled-return","1859":"/features/led_matrix#led-matrix-set-value","1860":"/features/led_matrix#api-led-matrix-set-value-arguments","1861":"/features/led_matrix#api-led-matrix-set-value-all","1862":"/features/led_matrix#api-led-matrix-set-value-all-arguments","1863":"/features/led_matrix#api-led-matrix-mode","1864":"/features/led_matrix#api-led-matrix-mode-arguments","1865":"/features/led_matrix#api-led-matrix-mode-noeeprom","1866":"/features/led_matrix#api-led-matrix-mode-noeeprom-arguments","1867":"/features/led_matrix#api-led-matrix-step","1868":"/features/led_matrix#api-led-matrix-step-noeeprom","1869":"/features/led_matrix#api-led-matrix-step-reverse","1870":"/features/led_matrix#api-led-matrix-step-reverse-noeeprom","1871":"/features/led_matrix#api-led-matrix-get-mode","1872":"/features/led_matrix#api-led-matrix-get-mode-return","1873":"/features/led_matrix#api-led-matrix-increase-val","1874":"/features/led_matrix#api-led-matrix-increase-val-noeeprom","1875":"/features/led_matrix#api-led-matrix-decrease-val","1876":"/features/led_matrix#api-led-matrix-decrease-val-noeeprom","1877":"/features/led_matrix#api-led-matrix-get-val","1878":"/features/led_matrix#api-led-matrix-get-val-return","1879":"/features/led_matrix#api-led-matrix-increase-speed","1880":"/features/led_matrix#api-led-matrix-increase-speed-noeeprom","1881":"/features/led_matrix#api-led-matrix-decrease-speed","1882":"/features/led_matrix#api-led-matrix-decrease-speed-noeeprom","1883":"/features/led_matrix#api-led-matrix-set-speed","1884":"/features/led_matrix#api-led-matrix-set-speed-arguments","1885":"/features/led_matrix#api-led-matrix-set-speed-noeeprom","1886":"/features/led_matrix#api-led-matrix-set-speed-noeeprom-arguments","1887":"/features/led_matrix#api-led-matrix-get-speed","1888":"/features/led_matrix#api-led-matrix-get-speed-return","1889":"/features/led_matrix#api-led-matrix-set-flags","1890":"/features/led_matrix#api-led-matrix-set-flags-arguments","1891":"/features/led_matrix#api-led-matrix-set-flags-noeeprom","1892":"/features/led_matrix#api-led-matrix-set-flags-noeeprom-arguments","1893":"/features/led_matrix#api-led-matrix-flags-step","1894":"/features/led_matrix#api-led-matrix-flags-step-noeeprom","1895":"/features/led_matrix#api-led-matrix-flags-step-reverse","1896":"/features/led_matrix#api-led-matrix-flags-step-reverse-noeeprom","1897":"/features/led_matrix#api-led-matrix-get-flags","1898":"/features/led_matrix#api-led-matrix-get-flags-return","1899":"/features/led_matrix#api-led-matrix-reload-from-eeprom","1900":"/features/led_matrix#api-led-matrix-get-suspend-state","1901":"/features/led_matrix#api-led-matrix-get-suspend-state-return","1902":"/features/led_matrix#api-led-matrix-indicators-kb","1903":"/features/led_matrix#api-led-matrix-indicators-kb-return","1904":"/features/led_matrix#api-led-matrix-indicators-user","1905":"/features/led_matrix#api-led-matrix-indicators-user-return","1906":"/features/led_matrix#api-led-matrix-indicators-advanced-kb","1907":"/features/led_matrix#api-led-matrix-indicators-advanced-kb-arguments","1908":"/features/led_matrix#api-led-matrix-indicators-advanced-kb-return","1909":"/features/led_matrix#api-led-matrix-indicators-advanced-user","1910":"/features/led_matrix#api-led-matrix-indicators-advanced-user-arguments","1911":"/features/led_matrix#api-led-matrix-indicators-advanced-user-return","1912":"/features/midi#midi","1913":"/features/midi#usage","1914":"/features/midi#caveats","1915":"/features/midi#basic-midi","1916":"/features/midi#advanced-midi","1917":"/features/midi#sending-control-change-cc-messages","1918":"/features/midi#example-code-for-using-generic-on-off-switches-as-per-midi-specification","1919":"/features/midi#keycodes","1920":"/features/midi#configuration","1921":"/features/midi#references","1922":"/features/midi#midi-specification","1923":"/features/midi#qmk-c-files","1924":"/features/mouse_keys#mouse-keys","1925":"/features/mouse_keys#adding-mouse-keys-to-your-keyboard","1926":"/features/mouse_keys#enabling-mouse-keys","1927":"/features/mouse_keys#mapping-mouse-actions","1928":"/features/mouse_keys#configuring-mouse-keys","1929":"/features/mouse_keys#accelerated-mode","1930":"/features/mouse_keys#kinetic-mode","1931":"/features/mouse_keys#constant-mode","1932":"/features/mouse_keys#combined-mode","1933":"/features/mouse_keys#inertia-mode","1934":"/features/mouse_keys#overlapping-mouse-key-control","1935":"/features/mouse_keys#use-with-ps-2-mouse-and-pointing-device","1936":"/features/os_detection#os-detection","1937":"/features/os_detection#usage","1938":"/features/os_detection#callbacks","1939":"/features/os_detection#os-detection-stability","1940":"/features/os_detection#configuration-options","1941":"/features/os_detection#troubleshooting","1942":"/features/os_detection#debug","1943":"/features/os_detection#credits","1944":"/features/oled_driver#oled-driver","1945":"/features/oled_driver#supported-hardware","1946":"/features/oled_driver#usage","1947":"/features/oled_driver#oled-type","1948":"/features/oled_driver#logo-example","1949":"/features/oled_driver#buffer-read-example","1950":"/features/oled_driver#other-examples","1951":"/features/oled_driver#basic-configuration","1952":"/features/oled_driver#i2c-configuration","1953":"/features/oled_driver#spi-configuration","1954":"/features/oled_driver#_128x64-custom-sized-oled-displays","1955":"/features/oled_driver#_90-degree-rotation-technical-mumbo-jumbo","1956":"/features/oled_driver#oled-api","1957":"/features/oled_driver#ssd1306-h-driver-conversion-guide","1958":"/features/pointing_device#pointing-device","1959":"/features/pointing_device#sensor-drivers","1960":"/features/pointing_device#adns-5050-sensor","1961":"/features/pointing_device#adns-9800-sensor","1962":"/features/pointing_device#analog-joystick","1963":"/features/pointing_device#azoteq-iqs5xx-trackpad","1964":"/features/pointing_device#device-settings","1965":"/features/pointing_device#gesture-settings","1966":"/features/pointing_device#rotation-settings","1967":"/features/pointing_device#cirque-trackpad","1968":"/features/pointing_device#common-settings","1969":"/features/pointing_device#absolute-mode-settings","1970":"/features/pointing_device#absolute-mode-gestures","1971":"/features/pointing_device#relative-mode-gestures","1972":"/features/pointing_device#paw-3204-sensor","1973":"/features/pointing_device#paw-3222-sensor","1974":"/features/pointing_device#pimoroni-trackball","1975":"/features/pointing_device#pmw3320-sensor","1976":"/features/pointing_device#pmw-3360-and-pmw-3389-sensor","1977":"/features/pointing_device#custom-driver","1978":"/features/pointing_device#common-configuration","1979":"/features/pointing_device#high-resolution-scrolling","1980":"/features/pointing_device#split-keyboard-configuration","1981":"/features/pointing_device#callbacks-and-functions","1982":"/features/pointing_device#split-keyboard-callbacks-and-functions","1983":"/features/pointing_device#manipulating-mouse-reports","1984":"/features/pointing_device#examples","1985":"/features/pointing_device#custom-mouse-keycode","1986":"/features/pointing_device#drag-scroll-or-mouse-scroll","1987":"/features/pointing_device#advanced-drag-scroll","1988":"/features/pointing_device#split-examples","1989":"/features/pointing_device#single-pointing-device","1990":"/features/pointing_device#combined-pointing-devices","1991":"/features/pointing_device#troubleshooting","1992":"/features/pointing_device#pointing-device-auto-mouse","1993":"/features/pointing_device#behaviour-of-layer-keys-that-activate-the-target-layer","1994":"/features/pointing_device#how-to-enable","1995":"/features/pointing_device#how-to-customize","1996":"/features/pointing_device#config-h-options","1997":"/features/pointing_device#adding-mouse-keys","1998":"/features/pointing_device#callbacks-for-setting-up-additional-key-codes-as-mouse-keys","1999":"/features/pointing_device#to-use-the-callback-function-to-add-mouse-keys","2000":"/features/pointing_device#advanced-control","2001":"/features/pointing_device#functions-to-control-auto-mouse-enable-and-target-layer","2002":"/features/pointing_device#functions-for-handling-custom-key-events","2003":"/features/pointing_device#advanced-control-examples","2004":"/features/pointing_device#disable-auto-mouse-on-certain-layers","2005":"/features/pointing_device#set-different-target-layer-when-a-particular-layer-is-active","2006":"/features/pointing_device#use-custom-keys-to-control-auto-mouse","2007":"/features/pointing_device#customize-target-layer-activation","2008":"/features/pointing_device#auto-mouse-for-custom-pointing-device-task","2009":"/features/programmable_button#programmable-button","2010":"/features/programmable_button#usage","2011":"/features/programmable_button#keycodes","2012":"/features/programmable_button#api","2013":"/features/programmable_button#api-programmable-button-clear","2014":"/features/programmable_button#api-programmable-button-add","2015":"/features/programmable_button#api-programmable-button-add-arguments","2016":"/features/programmable_button#api-programmable-button-remove","2017":"/features/programmable_button#api-programmable-button-remove-arguments","2018":"/features/programmable_button#api-programmable-button-register","2019":"/features/programmable_button#api-programmable-button-register-arguments","2020":"/features/programmable_button#api-programmable-button-unregister","2021":"/features/programmable_button#api-programmable-button-unregister-arguments","2022":"/features/programmable_button#api-programmable-button-is-on","2023":"/features/programmable_button#api-programmable-button-is-on-arguments","2024":"/features/programmable_button#api-programmable-button-is-on-return","2025":"/features/programmable_button#api-programmable-button-flush","2026":"/features/programmable_button#api-programmable-button-get-report","2027":"/features/programmable_button#api-programmable-button-get-report-return","2028":"/features/programmable_button#api-programmable-button-set-report","2029":"/features/programmable_button#api-programmable-button-set-report-arguments","2030":"/features/ps2_mouse#ps2-mouse-support","2031":"/features/ps2_mouse#the-circuitry-between-trackpoint-and-controller","2032":"/features/ps2_mouse#driver-configuration","2033":"/features/ps2_mouse#busywait-driver","2034":"/features/ps2_mouse#interrupt-driver-avr","2035":"/features/ps2_mouse#interrupt-driver-chibios","2036":"/features/ps2_mouse#usart-driver","2037":"/features/ps2_mouse#rp2040-pio-driver","2038":"/features/ps2_mouse#additional-settings","2039":"/features/ps2_mouse#ps2-mouse-features","2040":"/features/ps2_mouse#fine-control","2041":"/features/ps2_mouse#scroll-button","2042":"/features/ps2_mouse#invert-buttons","2043":"/features/ps2_mouse#invert-mouse-and-scroll-axes","2044":"/features/ps2_mouse#rotate-mouse-axes","2045":"/features/ps2_mouse#debug-settings","2046":"/features/ps2_mouse#movement-hook","2047":"/features/rawhid#raw-hid","2048":"/features/rawhid#usage","2049":"/features/rawhid#basic-configuration","2050":"/features/rawhid#sending-data-to-the-keyboard","2051":"/features/rawhid#receiving-data-from-the-keyboard","2052":"/features/rawhid#simple-example","2053":"/features/rawhid#api","2054":"/features/rawhid#api-raw-hid-receive","2055":"/features/rawhid#api-raw-hid-receive-arguments","2056":"/features/rawhid#api-raw-hid-send","2057":"/features/rawhid#api-raw-hid-send-arguments","2058":"/features/rgb_matrix#rgb-matrix-lighting","2059":"/features/rgb_matrix#driver-configuration","2060":"/features/rgb_matrix#common-configuration","2061":"/features/rgb_matrix#flags","2062":"/features/rgb_matrix#keycodes","2063":"/features/rgb_matrix#rgb-matrix-effects","2064":"/features/rgb_matrix#rgb-matrix-effect-typing-heatmap","2065":"/features/rgb_matrix#rgb-matrix-effect-solid-reactive","2066":"/features/rgb_matrix#custom-rgb-matrix-effects","2067":"/features/rgb_matrix#colors","2068":"/features/rgb_matrix#naming","2069":"/features/rgb_matrix#additional-configh-options","2070":"/features/rgb_matrix#eeprom-storage","2071":"/features/rgb_matrix#callbacks","2072":"/features/rgb_matrix#indicators","2073":"/features/rgb_matrix#indicator-examples","2074":"/features/rgb_matrix#indicator-examples-2","2075":"/features/rgb_matrix#indicators-without-rgb-matrix-effect","2076":"/features/rgb_matrix#api","2077":"/features/rgb_matrix#api-rgb-matrix-toggle","2078":"/features/rgb_matrix#api-rgb-matrix-toggle-noeeprom","2079":"/features/rgb_matrix#api-rgb-matrix-enable","2080":"/features/rgb_matrix#api-rgb-matrix-enable-noeeprom","2081":"/features/rgb_matrix#api-rgb-matrix-disable","2082":"/features/rgb_matrix#api-rgb-matrix-disable-noeeprom","2083":"/features/rgb_matrix#api-rgb-matrix-is-enabled","2084":"/features/rgb_matrix#api-rgb-matrix-is-enabled-return","2085":"/features/rgb_matrix#api-rgb-matrix-set-color","2086":"/features/rgb_matrix#api-rgb-matrix-set-color-arguments","2087":"/features/rgb_matrix#api-rgb-matrix-set-color-all","2088":"/features/rgb_matrix#api-rgb-matrix-set-color-all-arguments","2089":"/features/rgb_matrix#api-rgb-matrix-mode","2090":"/features/rgb_matrix#api-rgb-matrix-mode-arguments","2091":"/features/rgb_matrix#api-rgb-matrix-mode-noeeprom","2092":"/features/rgb_matrix#api-rgb-matrix-mode-noeeprom-arguments","2093":"/features/rgb_matrix#api-rgb-matrix-step","2094":"/features/rgb_matrix#api-rgb-matrix-step-noeeprom","2095":"/features/rgb_matrix#api-rgb-matrix-step-reverse","2096":"/features/rgb_matrix#api-rgb-matrix-step-reverse-noeeprom","2097":"/features/rgb_matrix#api-rgb-matrix-get-mode","2098":"/features/rgb_matrix#api-rgb-matrix-get-mode-return","2099":"/features/rgb_matrix#api-rgb-matrix-increase-hue","2100":"/features/rgb_matrix#api-rgb-matrix-increase-hue-noeeprom","2101":"/features/rgb_matrix#api-rgb-matrix-decrease-hue","2102":"/features/rgb_matrix#api-rgb-matrix-decrease-hue-noeeprom","2103":"/features/rgb_matrix#api-rgb-matrix-get-hue","2104":"/features/rgb_matrix#api-rgb-matrix-get-hue-return","2105":"/features/rgb_matrix#api-rgb-matrix-increase-sat","2106":"/features/rgb_matrix#api-rgb-matrix-increase-sat-noeeprom","2107":"/features/rgb_matrix#api-rgb-matrix-decrease-sat","2108":"/features/rgb_matrix#api-rgb-matrix-decrease-sat-noeeprom","2109":"/features/rgb_matrix#api-rgb-matrix-get-sat","2110":"/features/rgb_matrix#api-rgb-matrix-get-sat-return","2111":"/features/rgb_matrix#api-rgb-matrix-increase-val","2112":"/features/rgb_matrix#api-rgb-matrix-increase-val-noeeprom","2113":"/features/rgb_matrix#api-rgb-matrix-decrease-val","2114":"/features/rgb_matrix#api-rgb-matrix-decrease-val-noeeprom","2115":"/features/rgb_matrix#api-rgb-matrix-get-val","2116":"/features/rgb_matrix#api-rgb-matrix-get-val-return","2117":"/features/rgb_matrix#api-rgb-matrix-increase-speed","2118":"/features/rgb_matrix#api-rgb-matrix-increase-speed-noeeprom","2119":"/features/rgb_matrix#api-rgb-matrix-decrease-speed","2120":"/features/rgb_matrix#api-rgb-matrix-decrease-speed-noeeprom","2121":"/features/rgb_matrix#api-rgb-matrix-set-speed","2122":"/features/rgb_matrix#api-rgb-matrix-set-speed-arguments","2123":"/features/rgb_matrix#api-rgb-matrix-set-speed-noeeprom","2124":"/features/rgb_matrix#api-rgb-matrix-set-speed-noeeprom-arguments","2125":"/features/rgb_matrix#api-rgb-matrix-get-speed","2126":"/features/rgb_matrix#api-rgb-matrix-get-speed-return","2127":"/features/rgb_matrix#api-rgb-matrix-set-flags","2128":"/features/rgb_matrix#api-rgb-matrix-set-flags-arguments","2129":"/features/rgb_matrix#api-rgb-matrix-set-flags-noeeprom","2130":"/features/rgb_matrix#api-rgb-matrix-set-flags-noeeprom-arguments","2131":"/features/rgb_matrix#api-rgb-matrix-flags-step","2132":"/features/rgb_matrix#api-rgb-matrix-flags-step-noeeprom","2133":"/features/rgb_matrix#api-rgb-matrix-flags-step-reverse","2134":"/features/rgb_matrix#api-rgb-matrix-flags-step-reverse-noeeprom","2135":"/features/rgb_matrix#api-rgb-matrix-get-flags","2136":"/features/rgb_matrix#api-rgb-matrix-get-flags-return","2137":"/features/rgb_matrix#api-rgb-matrix-sethsv","2138":"/features/rgb_matrix#api-rgb-matrix-sethsv-arguments","2139":"/features/rgb_matrix#api-rgb-matrix-sethsv-noeeprom","2140":"/features/rgb_matrix#api-rgb-matrix-sethsv-noeeprom-arguments","2141":"/features/rgb_matrix#api-rgb-matrix-get-hsv","2142":"/features/rgb_matrix#api-rgb-matrix-get-hsv-return","2143":"/features/rgb_matrix#api-rgb-matrix-reload-from-eeprom","2144":"/features/rgb_matrix#api-rgb-matrix-get-suspend-state","2145":"/features/rgb_matrix#api-rgb-matrix-get-suspend-state-return","2146":"/features/rgb_matrix#api-rgb-matrix-indicators-kb","2147":"/features/rgb_matrix#api-rgb-matrix-indicators-kb-return","2148":"/features/rgb_matrix#api-rgb-matrix-indicators-user","2149":"/features/rgb_matrix#api-rgb-matrix-indicators-user-return","2150":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-kb","2151":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-kb-arguments","2152":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-kb-return","2153":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-user","2154":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-user-arguments","2155":"/features/rgb_matrix#api-rgb-matrix-indicators-advanced-user-return","2156":"/features/repeat_key#repeat-key","2157":"/features/repeat_key#how-do-i-enable-repeat-key","2158":"/features/repeat_key#keycodes","2159":"/features/repeat_key#alternate-repeating","2160":"/features/repeat_key#defining-alternate-keys","2161":"/features/repeat_key#eliminating-sfbs","2162":"/features/repeat_key#typing-shortcuts","2163":"/features/repeat_key#ignoring-certain-keys-and-mods","2164":"/features/repeat_key#ignoring-a-key","2165":"/features/repeat_key#filtering-remembered-mods","2166":"/features/repeat_key#further-conditions","2167":"/features/repeat_key#handle-how-a-key-is-repeated","2168":"/features/repeat_key#handle-how-a-key-is-alternate-repeated","2169":"/features/repeat_key#functions","2170":"/features/repeat_key#additional-alternate-keys","2171":"/features/rgblight#rgb-lighting","2172":"/features/rgblight#usage","2173":"/features/rgblight#color-selection","2174":"/features/rgblight#keycodes","2175":"/features/rgblight#configuration","2176":"/features/rgblight#effects-and-animations","2177":"/features/rgblight#effect-and-animation-toggles","2178":"/features/rgblight#effect-and-animation-settings","2179":"/features/rgblight#example-usage-to-reduce-memory-footprint","2180":"/features/rgblight#animation-speed","2181":"/features/rgblight#lighting-layers","2182":"/features/rgblight#defining-lighting-layers","2183":"/features/rgblight#enabling-lighting-layers","2184":"/features/rgblight#lighting-layer-blink","2185":"/features/rgblight#overriding-rgb-lighting-on-off-status","2186":"/features/rgblight#retain-brightness","2187":"/features/rgblight#functions","2188":"/features/rgblight#low-level-functions","2189":"/features/rgblight#effects-and-animations-functions","2190":"/features/rgblight#effect-range-setting","2191":"/features/rgblight#direct-operation","2192":"/features/rgblight#effect-mode-change","2193":"/features/rgblight#effects-mode-disable-enable","2194":"/features/rgblight#hue-sat-val-change","2195":"/features/rgblight#speed-functions","2196":"/features/rgblight#layer-functions","2197":"/features/rgblight#query","2198":"/features/rgblight#colors","2199":"/features/rgblight#changing-the-order-of-the-leds","2200":"/features/rgblight#clipping-range","2201":"/features/rgblight#hardware-modification","2202":"/features/rgblight#velocikey","2203":"/features/rgblight#usage-1","2204":"/features/rgblight#configuration-1","2205":"/features/secure#secure","2206":"/features/secure#unlock-sequence","2207":"/features/secure#automatic-locking","2208":"/features/secure#usage","2209":"/features/secure#keycodes","2210":"/features/secure#configuration","2211":"/features/secure#functions","2212":"/features/sequencer#sequencer","2213":"/features/sequencer#enable-the-step-sequencer","2214":"/features/sequencer#tracks","2215":"/features/sequencer#resolutions","2216":"/features/sequencer#keycodes","2217":"/features/sequencer#functions","2218":"/features/send_string#send-string","2219":"/features/send_string#usage","2220":"/features/send_string#basic-configuration","2221":"/features/send_string#keycodes","2222":"/features/send_string#language-support","2223":"/features/send_string#examples","2224":"/features/send_string#example-hello-world","2225":"/features/send_string#example-keycode-injection","2226":"/features/send_string#api","2227":"/features/send_string#api-send-string","2228":"/features/send_string#api-send-string-arguments","2229":"/features/send_string#api-send-string-with-delay","2230":"/features/send_string#api-send-string-with-delay-arguments","2231":"/features/send_string#api-send-string-p","2232":"/features/send_string#api-send-string-p-arguments","2233":"/features/send_string#api-send-string-with-delay-p","2234":"/features/send_string#api-send-string-with-delay-p-arguments","2235":"/features/send_string#api-send-char","2236":"/features/send_string#api-send-char-arguments","2237":"/features/send_string#api-send-dword","2238":"/features/send_string#api-send-dword-arguments","2239":"/features/send_string#api-send-word","2240":"/features/send_string#api-send-word-arguments","2241":"/features/send_string#api-send-bytes","2242":"/features/send_string#api-send-byte-arguments","2243":"/features/send_string#api-send-nibble","2244":"/features/send_string#api-send-nibble-arguments","2245":"/features/send_string#api-tap-random-base64","2246":"/features/send_string#api-send-string-macro","2247":"/features/send_string#api-send-string-delay-macro","2248":"/features/space_cadet#space-cadet-the-future-built-in","2249":"/features/space_cadet#usage","2250":"/features/space_cadet#keycodes","2251":"/features/space_cadet#caveats","2252":"/features/space_cadet#configuration","2253":"/features/space_cadet#obsolete-configuration","2254":"/features/split_keyboard#split-keyboard","2255":"/features/split_keyboard#compatibility-overview","2256":"/features/split_keyboard#hardware-configuration","2257":"/features/split_keyboard#required-hardware","2258":"/features/split_keyboard#considerations","2259":"/features/split_keyboard#serial-wiring","2260":"/features/split_keyboard#i2c-wiring","2261":"/features/split_keyboard#firmware-configuration","2262":"/features/split_keyboard#layout-macro","2263":"/features/split_keyboard#setting-handedness","2264":"/features/split_keyboard#handedness-by-pin","2265":"/features/split_keyboard#handedness-by-matrix-pin","2266":"/features/split_keyboard#handedness-by-eeprom","2267":"/features/split_keyboard#handedness-by-define","2268":"/features/split_keyboard#communication-options","2269":"/features/split_keyboard#data-sync-options","2270":"/features/split_keyboard#custom-data-sync","2271":"/features/split_keyboard#hardware-configuration-options","2272":"/features/split_keyboard#hardware-considerations-and-mods","2273":"/features/split_keyboard#teensy-boards","2274":"/features/split_keyboard#additional-resources","2275":"/features/st7565#st7565-lcd-driver","2276":"/features/st7565#supported-hardware","2277":"/features/st7565#usage","2278":"/features/st7565#logo-example","2279":"/features/st7565#buffer-read-example","2280":"/features/st7565#other-examples","2281":"/features/st7565#basic-configuration","2282":"/features/st7565#custom-sized-displays","2283":"/features/st7565#api","2284":"/features/stenography#stenography-in-qmk","2285":"/features/stenography#steno-support-in-qmk","2286":"/features/stenography#plover-with-qwerty-keyboard","2287":"/features/stenography#plover-with-steno-protocol","2288":"/features/stenography#tx-bolt","2289":"/features/stenography#geminipr","2290":"/features/stenography#switching-protocols-on-the-fly","2291":"/features/stenography#configuring-qmk-for-steno","2292":"/features/stenography#learning-stenography","2293":"/features/stenography#interfacing-with-the-code","2294":"/features/stenography#keycode-reference","2295":"/features/swap_hands#swap-hands-action","2296":"/features/swap_hands#configuration","2297":"/features/swap_hands#swap-keycodes","2298":"/features/swap_hands#encoder-mapping","2299":"/features/swap_hands#functions","2300":"/features/tap_dance#tap-dance-a-single-key-can-do-3-5-or-100-different-things","2301":"/features/tap_dance#introduction","2302":"/features/tap_dance#how-to-use","2303":"/features/tap_dance#implementation","2304":"/features/tap_dance#examples","2305":"/features/tap_dance#simple-example","2306":"/features/tap_dance#complex-examples","2307":"/features/tap_dance#example-1","2308":"/features/tap_dance#example-2","2309":"/features/tap_dance#example-3","2310":"/features/tap_dance#example-4","2311":"/features/tap_dance#example-5","2312":"/features/tap_dance#example-6","2313":"/features/tri_layer#tri-layers","2314":"/features/tri_layer#keycodes","2315":"/features/tri_layer#configuration","2316":"/features/tri_layer#functions","2317":"/features/unicode#unicode","2318":"/features/unicode#caveats","2319":"/features/unicode#usage","2320":"/features/unicode#basic-configuration","2321":"/features/unicode#audio-feedback","2322":"/features/unicode#input-subsystems","2323":"/features/unicode#unicodemap-pairs","2324":"/features/unicode#input-modes","2325":"/features/unicode#keycodes","2326":"/features/unicode#api","2327":"/features/unicode#api-get-unicode-input-mode","2328":"/features/unicode#api-get-unicode-input-mode-return-value","2329":"/features/unicode#api-set-unicode-input-mode","2330":"/features/unicode#api-set-unicode-input-mode-arguments","2331":"/features/unicode#api-unicode-input-mode-step","2332":"/features/unicode#api-unicode-input-mode-step-reverse","2333":"/features/unicode#api-unicode-input-mode-set-user","2334":"/features/unicode#api-unicode-input-mode-set-user-arguments","2335":"/features/unicode#api-unicode-input-mode-set-kb","2336":"/features/unicode#api-unicode-input-mode-set-kb-arguments","2337":"/features/unicode#api-unicode-input-start","2338":"/features/unicode#api-unicode-input-finish","2339":"/features/unicode#api-unicode-input-cancel","2340":"/features/unicode#api-register-unicode","2341":"/features/unicode#api-register-unicode-arguments","2342":"/features/unicode#api-send-unicode-string","2343":"/features/unicode#api-send-unicode-string-arguments","2344":"/features/unicode#api-unicodemap-index","2345":"/features/unicode#api-unicodemap-index-arguments","2346":"/features/unicode#api-unicodemap-index-return-value","2347":"/features/unicode#api-unicodemap-get-code-point","2348":"/features/unicode#unicodemap-get-code-point-arguments","2349":"/features/unicode#unicodemap-get-code-point-return-value","2350":"/features/unicode#api-register-unicodemap","2351":"/features/unicode#api-register-unicodemap-arguments","2352":"/features/unicode#api-ucis-start","2353":"/features/unicode#api-ucis-active","2354":"/features/unicode#api-ucis-active-return-value","2355":"/features/unicode#api-ucis-count","2356":"/features/unicode#api-ucis-count-return-value","2357":"/features/unicode#api-ucis-add","2358":"/features/unicode#api-ucis-add-arguments","2359":"/features/unicode#api-ucis-add-return-value","2360":"/features/unicode#api-ucis-remove-last","2361":"/features/unicode#api-ucis-remove-last-return-value","2362":"/features/unicode#api-ucis-finish","2363":"/features/unicode#api-ucis-cancel","2364":"/features/unicode#api-register-ucis","2365":"/features/unicode#api-register-ucis-arguments","2366":"/features/wireless#wireless-bluetooth","2367":"/features/wireless#bluetooth-known-supported-hardware","2368":"/features/wireless#adafruit-ble-spi-friend","2369":"/features/wireless#bluetooth-rules-mk-options","2370":"/features/wireless#bluetooth-keycodes","2371":"/features/wpm#word-per-minute-wpm-calculation","2372":"/features/wpm#configuration","2373":"/features/wpm#public-functions","2374":"/features/wpm#callbacks","2375":"/flashing#flashing-instructions-and-bootloader-information","2376":"/flashing#atmel-dfu","2377":"/flashing#qmk-dfu","2378":"/flashing#make-targets","2379":"/flashing#caterina","2380":"/flashing#make-targets-1","2381":"/flashing#halfkay","2382":"/flashing#usbasploader","2383":"/flashing#bootloadhid","2384":"/flashing#qmk-hid","2385":"/flashing#make-targets-2","2386":"/flashing#stm32-apm32-dfu","2387":"/flashing#make-targets-3","2388":"/flashing#stm32duino","2389":"/flashing#kiibohd-dfu","2390":"/flashing#wb32-dfu","2391":"/flashing#at32-dfu","2392":"/flashing#make-targets-4","2393":"/flashing#tinyuf2","2394":"/flashing#make-targets-5","2395":"/flashing#uf2boot","2396":"/flashing#make-targets-6","2397":"/flashing#raspberry-pi-rp2040-uf2","2398":"/getting_started_github#how-to-use-github-with-qmk","2399":"/getting_started_docker#docker-quick-start","2400":"/getting_started_docker#requirements","2401":"/getting_started_docker#usage","2402":"/getting_started_docker#faq","2403":"/getting_started_docker#why-can-t-i-flash-on-windows-macos","2404":"/getting_started_introduction#introduction","2405":"/getting_started_introduction#basic-qmk-structure","2406":"/getting_started_introduction#userspace-structure","2407":"/getting_started_introduction#keyboard-project-structure","2408":"/getting_started_introduction#keymap-structure","2409":"/getting_started_introduction#the-config-h-file","2410":"/getting_started_make_guide#more-detailed-make-instructions","2411":"/getting_started_make_guide#rules-mk-options","2412":"/getting_started_make_guide#customizing-makefile-options-on-a-per-keymap-basis","2413":"/hand_wire#hand-wiring-guide","2414":"/hand_wire#parts-list","2415":"/hand_wire#starting-the-build","2416":"/hand_wire#planning-the-matrix","2417":"/hand_wire#common-microcontroller-boards","2418":"/hand_wire#wiring-the-matrix","2419":"/hand_wire#a-note-on-split-keyboards","2420":"/hand_wire#soldering","2421":"/hand_wire#soldering-the-diodes","2422":"/hand_wire#soldering-the-columns","2423":"/hand_wire#wiring-up-the-controller","2424":"/hand_wire#specific-instructions-for-the-teensy-2-0","2425":"/hand_wire#getting-some-basic-firmware-set-up","2426":"/hand_wire#flashing-the-firmware","2427":"/hand_wire#testing-your-firmware","2428":"/hand_wire#finishing-up","2429":"/hand_wire#links-to-other-guides","2430":"/hand_wire#legacy-content","2431":"/hand_wire#preamble-how-a-keyboard-matrix-works-and-why-we-need-diodes","2432":"/hardware_drivers#qmk-hardware-drivers","2433":"/hardware_drivers#available-drivers","2434":"/hardware_drivers#promicro-avr-only","2435":"/hardware_drivers#ssd1306-oled-driver","2436":"/hardware_drivers#ws2812","2437":"/hardware_drivers#is31fl3731","2438":"/hardware_drivers#is31fl3733","2439":"/hardware_drivers#_24xx-series-external-i2c-eeprom","2440":"/hardware_keyboard_guidelines#qmk-keyboard-guidelines","2441":"/hardware_keyboard_guidelines#use-qmk-lint","2442":"/hardware_keyboard_guidelines#naming-your-keyboard-project","2443":"/hardware_keyboard_guidelines#sub-folders","2444":"/hardware_keyboard_guidelines#keyboard-folder-structure","2445":"/hardware_keyboard_guidelines#readme-md","2446":"/hardware_keyboard_guidelines#keyboard-json-info-json","2447":"/hardware_keyboard_guidelines#config-h","2448":"/hardware_keyboard_guidelines#rules-mk","2449":"/hardware_keyboard_guidelines#keyboard-c","2450":"/hardware_keyboard_guidelines#keyboard-h","2451":"/hardware_keyboard_guidelines#image-hardware-files","2452":"/hardware_keyboard_guidelines#keyboard-defaults","2453":"/hardware_keyboard_guidelines#magic-keycodes-and-command","2454":"/hardware_keyboard_guidelines#custom-keyboard-programming","2455":"/hardware_keyboard_guidelines#non-production-handwired-projects","2456":"/hardware_keyboard_guidelines#warnings-as-errors","2457":"/hardware_keyboard_guidelines#copyright-blurb","2458":"/hardware_keyboard_guidelines#license","2459":"/how_a_matrix_works#how-a-keyboard-matrix-works","2460":"/#quantum-mechanical-keyboard-firmware","2461":"/#what-is-qmk-firmware","2462":"/#get-started","2463":"/#make-it-yours","2464":"/#need-help","2465":"/#give-back","2466":"/how_keyboards_work#how-keys-are-registered-and-interpreted-by-computers","2467":"/how_keyboards_work#schematic-view","2468":"/how_keyboards_work#_1-you-press-a-key","2469":"/how_keyboards_work#_2-what-the-firmware-sends","2470":"/how_keyboards_work#_3-what-the-event-input-kernel-does","2471":"/how_keyboards_work#_4-what-the-operating-system-does","2472":"/how_keyboards_work#back-to-the-firmware","2473":"/how_keyboards_work#list-of-characters-you-can-send","2474":"/how_keyboards_work#how-to-maybe-enter-unicode-characters","2475":"/isp_flashing_guide#isp-flashing-guide","2476":"/isp_flashing_guide#hardware","2477":"/isp_flashing_guide#pro-micro-as-isp","2478":"/isp_flashing_guide#wiring","2479":"/isp_flashing_guide#arduino-uno-micro-as-isp","2480":"/isp_flashing_guide#wiring-1","2481":"/isp_flashing_guide#teensy-2-0-as-isp","2482":"/isp_flashing_guide#wiring-2","2483":"/isp_flashing_guide#sparkfun-pocketavr-usbtinyisp","2484":"/isp_flashing_guide#wiring-3","2485":"/isp_flashing_guide#usbasp","2486":"/isp_flashing_guide#wiring-4","2487":"/isp_flashing_guide#bus-pirate","2488":"/isp_flashing_guide#wiring-5","2489":"/isp_flashing_guide#software","2490":"/isp_flashing_guide#bootloader-firmware","2491":"/isp_flashing_guide#atmel-dfu","2492":"/isp_flashing_guide#caterina","2493":"/isp_flashing_guide#bootloadhid-ps2avrgb","2494":"/isp_flashing_guide#usbasploader","2495":"/isp_flashing_guide#flashing-the-bootloader","2496":"/isp_flashing_guide#setting-the-fuses","2497":"/isp_flashing_guide#creating-a-production-firmware","2498":"/isp_flashing_guide#flashing-stm32duino-bootloader","2499":"/isp_flashing_guide#software-1","2500":"/isp_flashing_guide#wiring-6","2501":"/isp_flashing_guide#flashing","2502":"/keycodes#keycodes-overview","2503":"/keycodes#basic-keycodes","2504":"/keycodes#quantum-keycodes","2505":"/keycodes#audio-keys","2506":"/keycodes#auto-shift","2507":"/keycodes#autocorrect","2508":"/keycodes#backlighting","2509":"/keycodes#bluetooth","2510":"/keycodes#caps-word","2511":"/keycodes#dynamic-macros","2512":"/keycodes#grave-escape","2513":"/keycodes#joystick","2514":"/keycodes#key-lock","2515":"/keycodes#layer-lock","2516":"/keycodes#layer-switching","2517":"/keycodes#leader-key","2518":"/keycodes#led-matrix","2519":"/keycodes#magic-keycodes","2520":"/keycodes#midi","2521":"/keycodes#mouse-keys","2522":"/keycodes#modifiers","2523":"/keycodes#mod-tap-keys","2524":"/keycodes#tapping-term-keys","2525":"/keycodes#rgb-lighting","2526":"/keycodes#rgb-matrix","2527":"/keycodes#us-ansi-shifted-symbols","2528":"/keycodes#one-shot-keys","2529":"/keycodes#programmable-button","2530":"/keycodes#repeat-key","2531":"/keycodes#space-cadet","2532":"/keycodes#swap-hands","2533":"/keycodes#unicode-support","2534":"/keycodes_basic#basic-keycodes","2535":"/keycodes_basic#letters-and-numbers","2536":"/keycodes_basic#f-keys","2537":"/keycodes_basic#punctuation","2538":"/keycodes_basic#lock-keys","2539":"/keycodes_basic#modifiers","2540":"/keycodes_basic#international","2541":"/keycodes_basic#commands","2542":"/keycodes_basic#media-keys","2543":"/keycodes_basic#number-pad","2544":"/keycodes_basic#special-keys","2545":"/keycodes_us_ansi_shifted#us-ansi-shifted-symbols","2546":"/keycodes_us_ansi_shifted#caveats","2547":"/keycodes_us_ansi_shifted#keycodes","2548":"/keycodes_magic#magic-keycodes","2549":"/keymap#keymap-overview","2550":"/keymap#keymap-and-layers","2551":"/keymap#keymap-layer-status","2552":"/keymap#layer-precedence-and-transparency","2553":"/keymap#anatomy-of-a-keymap-c","2554":"/keymap#definitions","2555":"/keymap#layers-and-keymaps","2556":"/keymap#base-layer","2557":"/keymap#function-overlay-layer","2558":"/keymap#nitty-gritty-details","2559":"/license_violations#license-violations","2560":"/license_violations#offending-vendors","2561":"/license_violations#licensing","2562":"/license_violations#qmk-pr-considerations","2563":"/license_violations#detection","2564":"/license_violations#remediation","2565":"/mod_tap#mod-tap","2566":"/mod_tap#caveats","2567":"/mod_tap#intercepting-mod-taps","2568":"/mod_tap#changing-tap-function","2569":"/mod_tap#changing-hold-function","2570":"/mod_tap#changing-both-tap-and-hold","2571":"/mod_tap#other-resources","2572":"/newbs#the-qmk-tutorial","2573":"/newbs#overview","2574":"/newbs#additional-resources","2575":"/newbs_building_firmware#building-your-first-firmware","2576":"/newbs_building_firmware#configure-your-build-environment-defaults-optional","2577":"/newbs_building_firmware#create-a-new-keymap","2578":"/newbs_building_firmware#open-keymap-c-in-your-favorite-text-editor","2579":"/newbs_building_firmware#customize-the-layout-to-your-liking","2580":"/newbs_building_firmware#build-your-firmware","2581":"/newbs_building_firmware#flash-your-firmware","2582":"/newbs_building_firmware_configurator#qmk-configurator","2583":"/newbs_external_userspace#external-qmk-userspace","2584":"/newbs_external_userspace#setting-up-qmk-locally","2585":"/newbs_external_userspace#external-userspace-repository-setup-forked-on-github","2586":"/newbs_external_userspace#external-userspace-setup-locally-stored-only","2587":"/newbs_external_userspace#adding-a-keymap","2588":"/newbs_external_userspace#adding-the-keymap-to-external-userspace-build-targets","2589":"/newbs_external_userspace#compiling-external-userspace-build-targets","2590":"/newbs_external_userspace#using-github-actions","2591":"/newbs_building_firmware_workflow#building-qmk-with-github-userspace","2592":"/newbs_building_firmware_workflow#prerequisites","2593":"/newbs_building_firmware_workflow#environment-setup","2594":"/newbs_building_firmware_workflow#_1-install-git","2595":"/newbs_building_firmware_workflow#_2-github-authentication","2596":"/newbs_building_firmware_workflow#_3-create-a-repository","2597":"/newbs_building_firmware_workflow#initial-code-commit","2598":"/newbs_building_firmware_workflow#create-template-files","2599":"/newbs_building_firmware_workflow#add-a-json-keymap","2600":"/newbs_building_firmware_workflow#add-a-github-action-workflow","2601":"/newbs_building_firmware_workflow#commit-files-to-github","2602":"/newbs_building_firmware_workflow#review-workflow-output","2603":"/newbs_building_firmware_workflow#customising-your-keymap","2604":"/newbs_flashing#flashing-your-keyboard","2605":"/newbs_flashing#put-your-keyboard-into-dfu-bootloader-mode","2606":"/newbs_flashing#flashing-your-keyboard-with-qmk-toolbox","2607":"/newbs_flashing#load-the-file-into-qmk-toolbox","2608":"/newbs_flashing#flash-your-keyboard","2609":"/newbs_flashing#flash-your-keyboard-from-the-command-line","2610":"/newbs_flashing#test-it-out","2611":"/newbs_getting_started#setting-up-your-qmk-environment","2612":"/newbs_getting_started#_1-prerequisites","2613":"/newbs_getting_started#set-up-your-environment","2614":"/newbs_getting_started#prerequisites","2615":"/newbs_getting_started#prerequisites-1","2616":"/newbs_getting_started#installation","2617":"/newbs_getting_started#prerequisites-2","2618":"/newbs_getting_started#installation-1","2619":"/newbs_getting_started#installation-2","2620":"/newbs_getting_started#installation-3","2621":"/newbs_getting_started#set-up-qmk","2622":"/newbs_getting_started#_4-test-your-build-environment","2623":"/newbs_getting_started#creating-your-keymap","2624":"/newbs_git_best_practices#best-git-practices-for-working-with-qmk","2625":"/newbs_git_best_practices#or-how-i-learned-to-stop-worrying-and-love-git","2626":"/newbs_git_resolving_merge_conflicts#resolving-merge-conflicts","2627":"/newbs_git_resolving_merge_conflicts#rebasing-your-changes","2628":"/newbs_git_resynchronize_a_branch#resynchronizing-an-out-of-sync-git-branch","2629":"/newbs_git_resynchronize_a_branch#backing-up-the-changes-on-your-own-master-branch-optional","2630":"/newbs_git_resynchronize_a_branch#resynchronizing-your-branch","2631":"/newbs_git_using_your_master_branch#your-fork-s-master-update-often-commit-never","2632":"/newbs_git_using_your_master_branch#updating-your-master-branch","2633":"/newbs_git_using_your_master_branch#making-changes","2634":"/newbs_git_using_your_master_branch#publishing-your-changes","2635":"/newbs_learn_more_resources#learning-resources","2636":"/newbs_learn_more_resources#qmk-resources","2637":"/newbs_learn_more_resources#command-line-resources","2638":"/newbs_learn_more_resources#text-editor-resources","2639":"/newbs_learn_more_resources#git-resources","2640":"/newbs_testing_debugging#testing-and-debugging","2641":"/newbs_testing_debugging#testing","2642":"/newbs_testing_debugging#debugging","2643":"/one_shot_keys#one-shot-keys","2644":"/one_shot_keys#keycodes","2645":"/one_shot_keys#callbacks","2646":"/other_eclipse#setting-up-eclipse-for-qmk-development","2647":"/other_eclipse#prerequisites","2648":"/other_eclipse#build-environment","2649":"/other_eclipse#java","2650":"/other_eclipse#install-eclipse-and-its-plugins","2651":"/other_eclipse#download-and-install-eclipse-cdt","2652":"/other_eclipse#first-launch","2653":"/other_eclipse#install-the-necessary-plugins","2654":"/other_eclipse#configure-eclipse-for-qmk","2655":"/other_eclipse#importing-the-project","2656":"/other_eclipse#build-your-keyboard","2657":"/platformdev_blackpill_f4x1#weact-blackpill-stm32f4x1","2658":"/platformdev_blackpill_f4x1#pin-usage-limitations","2659":"/platformdev_blackpill_f4x1#unusable-pins","2660":"/platformdev_blackpill_f4x1#pins-to-be-avoided","2661":"/platformdev_blackpill_f4x1#shared-usage","2662":"/platformdev_blackpill_f4x1#limited-usage","2663":"/platformdev_blackpill_f4x1#additional-information","2664":"/platformdev_blackpill_f4x1#bootloader-issues","2665":"/platformdev_blackpill_f4x1#tiny-uf2-support","2666":"/other_vscode#setting-up-visual-studio-code-for-qmk-development","2667":"/other_vscode#set-up-vs-code","2668":"/other_vscode#windows","2669":"/other_vscode#prerequisites","2670":"/other_vscode#installing-vs-code","2671":"/other_vscode#msys2-setup","2672":"/other_vscode#every-other-operating-system","2673":"/other_vscode#extensions","2674":"/other_vscode#configure-vs-code-for-qmk","2675":"/other_vscode#configuring-vs-code","2676":"/other_vscode#debugging-arm-mcus-with-visual-studio-code","2677":"/platformdev_chibios_earlyinit#chibios-early-init","2678":"/platformdev_chibios_earlyinit#early-hardware-init-pre","2679":"/platformdev_chibios_earlyinit#early-hardware-init-post","2680":"/platformdev_chibios_earlyinit#board-init","2681":"/platformdev_proton_c#proton-c","2682":"/platformdev_proton_c#features","2683":"/platformdev_proton_c#warnings","2684":"/platformdev_proton_c#manual-conversion","2685":"/platformdev_selecting_arm_mcu#choose-arm-mcu","2686":"/platformdev_selecting_arm_mcu#selecting-already-supported-mcu","2687":"/platformdev_selecting_arm_mcu#stm32-families","2688":"/platformdev_selecting_arm_mcu#non-stm32-families","2689":"/platformdev_selecting_arm_mcu#add-new-stm32-mcu","2690":"/platformdev_selecting_arm_mcu#add-new-stm32-family","2691":"/platformdev_selecting_arm_mcu#add-new-mcu-family","2692":"/platformdev_rp2040#raspberry-pi-rp2040","2693":"/platformdev_rp2040#gpio","2694":"/platformdev_rp2040#pin-nomenclature","2695":"/platformdev_rp2040#alternate-functions","2696":"/platformdev_rp2040#selecting-hardware-peripherals-and-drivers","2697":"/platformdev_rp2040#i2c-driver","2698":"/platformdev_rp2040#spi-driver","2699":"/platformdev_rp2040#uart-driver","2700":"/platformdev_rp2040#double-tap","2701":"/platformdev_rp2040#pre-defined-rp2040-boards","2702":"/platformdev_rp2040#generic-pro-micro-rp2040","2703":"/platformdev_rp2040#generic-rp2040-board","2704":"/platformdev_rp2040#split-keyboard-support","2705":"/platformdev_rp2040#rp2040-second-stage-bootloader-selection","2706":"/platformdev_rp2040#rp2040_ce","2707":"/porting_your_keyboard_to_qmk#adding-your-keyboard-to-qmk","2708":"/porting_your_keyboard_to_qmk#readme-md","2709":"/porting_your_keyboard_to_qmk#keyboard-json","2710":"/porting_your_keyboard_to_qmk#hardware-configuration","2711":"/porting_your_keyboard_to_qmk#matrix-configuration","2712":"/porting_your_keyboard_to_qmk#diode-matrix","2713":"/porting_your_keyboard_to_qmk#direct-pin-matrix","2714":"/porting_your_keyboard_to_qmk#layout-macros","2715":"/porting_your_keyboard_to_qmk#additional-configuration","2716":"/porting_your_keyboard_to_qmk#configuration-options","2717":"/porting_your_keyboard_to_qmk#build-options","2718":"/pr_checklist#pr-checklists","2719":"/pr_checklist#requirements-for-all-prs","2720":"/pr_checklist#keymap-prs","2721":"/pr_checklist#keyboard-prs","2722":"/pr_checklist#core-pr","2723":"/pr_checklist#notes","2724":"/pr_checklist#review-process","2725":"/pr_checklist#example-gplv2-header","2726":"/proprietary_libs#proprietary-vendor-libraries","2727":"/proprietary_libs#architecture-constraints","2728":"/proprietary_libs#common-vendor-library-restrictions","2729":"/proprietary_libs#bluetooth-stack-licensing-examples","2730":"/proprietary_libs#why-the-system-library-exception-doesn-t-apply","2731":"/proprietary_libs#system-library-requirements","2732":"/proprietary_libs#why-vendor-libraries-fail-these-requirements","2733":"/proprietary_libs#attempted-workarounds","2734":"/proprietary_libs#architectural-separation-attempts","2735":"/proprietary_libs#loader-based-separation","2736":"/proprietary_libs#real-world-examples","2737":"/proprietary_libs#bluetooth-wireless-stacks","2738":"/proprietary_libs#hal-and-driver-libraries","2739":"/proprietary_libs#mixed-proprietary-open","2740":"/proprietary_libs#legal-and-practical-consequences","2741":"/proprietary_libs#evaluation-criteria-for-libraries","2742":"/proprietary_libs#policy-implementation","2743":"/proprietary_libs#summary","2744":"/quantum_keycodes#quantum-keycodes","2745":"/quantum_keycodes#qmk-keycodes","2746":"/quantum_painter#quantum-painter","2747":"/quantum_painter#quantum-painter-config","2748":"/quantum_painter#quantum-painter-cli","2749":"/quantum_painter#quantum-painter-drivers","2750":"/quantum_painter#quantum-painter-api","2751":"/quantum_painter_lvgl#lvgl","2752":"/quantum_painter_lvgl#lvgl-enabling","2753":"/quantum_painter_lvgl#lvgl-api","2754":"/quantum_painter_lvgl#lvgl-api-init","2755":"/quantum_painter_lvgl#lvgl-api-detach","2756":"/quantum_painter_lvgl#lvgl-configuring","2757":"/quantum_painter_lvgl#changing-the-lvgl-task-frequency","2758":"/quantum_painter_qff#qmk-font-format","2759":"/quantum_painter_qff#qff-block-header","2760":"/quantum_painter_qff#qff-font-descriptor","2761":"/quantum_painter_qff#qff-ascii-table","2762":"/quantum_painter_qff#qff-unicode-table","2763":"/quantum_painter_qff#qff-palette-descriptor","2764":"/quantum_painter_qff#qff-data-descriptor","2765":"/quantum_painter_rle#qmk-qp-rle-schema","2766":"/quantum_painter_qgf#qmk-graphics-format","2767":"/quantum_painter_qgf#qgf-block-header","2768":"/quantum_painter_qgf#qgf-graphics-descriptor","2769":"/quantum_painter_qgf#qgf-frame-offset-descriptor","2770":"/quantum_painter_qgf#qgf-frame-descriptor","2771":"/quantum_painter_qgf#qgf-frame-palette-descriptor","2772":"/quantum_painter_qgf#qgf-frame-delta-descriptor","2773":"/quantum_painter_qgf#qgf-frame-data-descriptor","2774":"/reference_configurator_support#supporting-your-keyboard-in-qmk-configurator","2775":"/reference_configurator_support#how-the-configurator-understands-keyboards","2776":"/reference_configurator_support#building-the-json-file","2777":"/reference_configurator_support#how-the-configurator-programs-keys","2778":"/reference_configurator_support#issues-and-hazards","2779":"/reference_configurator_support#workarounds","2780":"/reference_configurator_support#non-rectangular-keys","2781":"/reference_configurator_support#vertically-offset-keys","2782":"/ref_functions#list-of-useful-core-functions-to-make-your-keyboard-better","2783":"/ref_functions#olkb-tri-layers","2784":"/ref_functions#update-tri-layer-x-y-z","2785":"/ref_functions#example","2786":"/ref_functions#update-tri-layer-state-state-x-y-z","2787":"/ref_functions#example-1","2788":"/ref_functions#setting-the-persistent-default-layer","2789":"/ref_functions#resetting-the-keyboard","2790":"/ref_functions#reset-to-bootloader","2791":"/ref_functions#wiping-the-eeprom-persistent-storage","2792":"/ref_functions#tap-random-key","2793":"/ref_functions#software-timers","2794":"/reference_glossary#glossary-of-qmk-terms","2795":"/reference_glossary#arm","2796":"/reference_glossary#avr","2797":"/reference_glossary#azerty","2798":"/reference_glossary#backlight","2799":"/reference_glossary#bluetooth","2800":"/reference_glossary#bootloader","2801":"/reference_glossary#bootmagic","2802":"/reference_glossary#c","2803":"/reference_glossary#colemak","2804":"/reference_glossary#compile","2805":"/reference_glossary#dvorak","2806":"/reference_glossary#dynamic-macro","2807":"/reference_glossary#eclipse","2808":"/reference_glossary#firmware","2809":"/reference_glossary#git","2810":"/reference_glossary#github","2811":"/reference_glossary#isp","2812":"/reference_glossary#hid-listen","2813":"/reference_glossary#keycode","2814":"/reference_glossary#key-down","2815":"/reference_glossary#key-up","2816":"/reference_glossary#keymap","2817":"/reference_glossary#layer","2818":"/reference_glossary#leader-key","2819":"/reference_glossary#led","2820":"/reference_glossary#make","2821":"/reference_glossary#matrix","2822":"/reference_glossary#macro","2823":"/reference_glossary#mcu","2824":"/reference_glossary#modifier","2825":"/reference_glossary#mousekeys","2826":"/reference_glossary#n-key-rollover-nkro","2827":"/reference_glossary#oneshot-modifier","2828":"/reference_glossary#promicro","2829":"/reference_glossary#pull-request","2830":"/reference_glossary#qwerty","2831":"/reference_glossary#qwertz","2832":"/reference_glossary#rollover","2833":"/reference_glossary#scancode","2834":"/reference_glossary#space-cadet-shift","2835":"/reference_glossary#tap","2836":"/reference_glossary#tap-dance","2837":"/reference_glossary#teensy","2838":"/reference_glossary#underlight","2839":"/reference_glossary#unicode","2840":"/reference_glossary#unit-testing","2841":"/reference_glossary#usb","2842":"/reference_glossary#usb-host-or-simply-host","2843":"/reference_glossary#couldn-t-find-the-term-you-re-looking-for","2844":"/reference_info_json#info-json-reference","2845":"/reference_info_json#general-metadata","2846":"/reference_info_json#hardware-configuration","2847":"/reference_info_json#firmware-configuration","2848":"/reference_info_json#apa102","2849":"/reference_info_json#audio","2850":"/reference_info_json#backlight","2851":"/reference_info_json#battery","2852":"/reference_info_json#bluetooth","2853":"/reference_info_json#bootmagic","2854":"/reference_info_json#caps-word","2855":"/reference_info_json#combo","2856":"/reference_info_json#dip-switch","2857":"/reference_info_json#eeprom","2858":"/reference_info_json#encoder","2859":"/reference_info_json#host","2860":"/reference_info_json#indicators","2861":"/reference_info_json#keycodes","2862":"/reference_info_json#layouts","2863":"/reference_info_json#leader-key","2864":"/reference_info_json#led-matrix","2865":"/reference_info_json#matrix","2866":"/reference_info_json#mouse-keys","2867":"/reference_info_json#one-shot","2868":"/reference_info_json#ps2","2869":"/reference_info_json#qmk-lufa-bootloader","2870":"/reference_info_json#rgblight","2871":"/reference_info_json#rgb-matrix","2872":"/reference_info_json#secure","2873":"/reference_info_json#split-keyboard","2874":"/reference_info_json#stenography","2875":"/reference_info_json#usb","2876":"/reference_info_json#ws2812","2877":"/reference_keymap_extras#language-specific-keycodes","2878":"/reference_keymap_extras#selecting-your-host-keyboard-layout","2879":"/reference_keymap_extras#sendstring-support","2880":"/reference_keymap_extras#header-files","2881":"/squeezing_avr#squeezing-the-most-out-of-avr","2882":"/squeezing_avr#rules-mk-settings","2883":"/squeezing_avr#config-h-settings","2884":"/squeezing_avr#audio-settings","2885":"/squeezing_avr#layers","2886":"/squeezing_avr#oled-tweaks","2887":"/squeezing_avr#rgb-settings","2888":"/squeezing_avr#final-thoughts","2889":"/support#getting-help","2890":"/support#realtime-chat","2891":"/support#olkb-subreddit","2892":"/support#github-issues","2893":"/support_deprecation_policy#feature-support-policies","2894":"/support_deprecation_policy#system-constraints","2895":"/support_deprecation_policy#deprecation-removal-policy","2896":"/support_deprecation_policy#how-much-advance-notice-will-be-given","2897":"/support_deprecation_policy#how-will-deprecation-be-communicated","2898":"/syllabus#qmk-syllabus","2899":"/syllabus#beginning-topics","2900":"/syllabus#intermediate-topics","2901":"/syllabus#advanced-topics","2902":"/tap_hold#tap-hold-configuration-options","2903":"/tap_hold#tapping-term","2904":"/tap_hold#example","2905":"/tap_hold#dynamic-tapping-term","2906":"/tap_hold#tap-or-hold-decision-modes","2907":"/tap_hold#comparison","2908":"/tap_hold#distinct-taps","2909":"/tap_hold#nested-tap","2910":"/tap_hold#rolling-keys","2911":"/tap_hold#default-mode","2912":"/tap_hold#permissive-hold","2913":"/tap_hold#hold-on-other-key-press","2914":"/tap_hold#quick-tap-term","2915":"/tap_hold#flow-tap","2916":"/tap_hold#is-flow-tap-key","2917":"/tap_hold#get-flow-tap-term","2918":"/tap_hold#chordal-hold","2919":"/tap_hold#chordal-hold-handedness","2920":"/tap_hold#per-chord-customization","2921":"/tap_hold#retro-tapping","2922":"/tap_hold#retro-shift","2923":"/tap_hold#speculative-hold","2924":"/tap_hold#why-do-we-include-the-key-record-for-the-per-key-functions","2925":"/tap_hold#why-are-there-no-kb-or-user-functions","2926":"/understanding_qmk#understanding-qmk-s-code","2927":"/understanding_qmk#startup","2928":"/understanding_qmk#the-main-loop","2929":"/understanding_qmk#matrix-scanning","2930":"/understanding_qmk#matrix-to-physical-layout-map","2931":"/understanding_qmk#keycode-assignment","2932":"/understanding_qmk#state-change-detection","2933":"/understanding_qmk#process-record","2934":"/unit_testing#unit-testing","2935":"/unit_testing#google-test-and-google-mock","2936":"/unit_testing#use-of-c","2937":"/unit_testing#adding-tests-for-new-or-existing-features","2938":"/unit_testing#running-the-tests","2939":"/unit_testing#debugging-the-tests","2940":"/unit_testing#full-integration-tests","2941":"/unit_testing#keycode-string","2942":"/unit_testing#tracing-variables"},"fieldIds":{"title":0,"titles":1,"text":2},"fieldLength":{"0":[6,1,56],"1":[6,6,41],"2":[4,6,36],"3":[11,6,49],"4":[6,6,33],"5":[9,6,41],"6":[9,6,47],"7":[10,6,44],"8":[8,6,34],"9":[7,1,47],"10":[5,7,90],"11":[9,7,46],"12":[3,7,19],"13":[2,7,29],"14":[9,7,69],"15":[12,7,49],"16":[7,7,44],"17":[7,7,25],"18":[4,7,30],"19":[7,1,51],"20":[2,7,1],"21":[7,9,50],"22":[6,9,46],"23":[6,9,47],"24":[6,9,43],"25":[13,9,69],"26":[6,9,12],"27":[13,9,20],"28":[6,9,77],"29":[2,7,1],"30":[6,9,44],"31":[6,15,119],"32":[6,9,45],"33":[8,9,42],"34":[6,17,98],"35":[12,9,22],"36":[4,21,57],"37":[2,7,60],"38":[3,7,58],"39":[7,1,47],"40":[4,7,1],"41":[2,11,1],"42":[6,13,1],"43":[7,13,48],"44":[3,11,1],"45":[5,14,91],"46":[4,11,35],"47":[2,7,1],"48":[1,9,22],"49":[3,9,349],"50":[4,9,260],"51":[4,7,31],"52":[7,1,47],"53":[4,7,1],"54":[2,11,1],"55":[6,13,47],"56":[8,13,21],"57":[8,13,39],"58":[6,13,25],"59":[3,11,1],"60":[4,14,15],"61":[2,7,1],"62":[1,9,26],"63":[3,9,83],"64":[4,9,45],"65":[4,7,121],"66":[7,1,1],"67":[4,7,48],"68":[2,7,1],"69":[5,8,51],"70":[4,8,171],"71":[3,7,1],"72":[4,10,35],"73":[1,10,113],"74":[3,10,149],"75":[4,10,117],"76":[4,10,90],"77":[5,10,68],"78":[7,1,1],"79":[2,7,1],"80":[7,8,13],"81":[5,8,9],"82":[5,8,31],"83":[4,8,33],"84":[4,8,14],"85":[4,7,1],"86":[3,10,86],"87":[5,10,50],"88":[3,15,39],"89":[5,10,24],"90":[6,10,75],"91":[2,7,1],"92":[1,8,112],"93":[3,8,234],"94":[4,8,145],"95":[4,8,35],"96":[7,1,1],"97":[2,7,1],"98":[4,9,54],"99":[3,9,74],"100":[3,9,29],"101":[4,7,1],"102":[3,10,85],"103":[4,10,63],"104":[4,14,41],"105":[7,10,65],"106":[3,7,1],"107":[3,10,84],"108":[5,10,19],"109":[4,10,21],"110":[1,14,42],"111":[2,14,107],"112":[3,14,117],"113":[4,10,105],"114":[2,7,1145],"115":[7,1,1],"116":[3,7,42],"117":[2,7,1],"118":[5,9,106],"119":[4,9,104],"120":[5,9,78],"121":[4,7,1],"122":[3,10,44],"123":[6,10,62],"124":[8,10,95],"125":[4,10,86],"126":[4,10,69],"127":[6,14,40],"128":[4,10,28],"129":[3,7,1],"130":[3,10,50],"131":[2,10,78],"132":[2,10,87],"133":[4,10,179],"134":[2,7,847],"135":[7,1,1],"136":[2,7,1],"137":[3,9,80],"138":[3,9,111],"139":[3,9,54],"140":[4,7,1],"141":[6,10,65],"142":[4,10,50],"143":[3,10,73],"144":[3,10,51],"145":[2,7,516],"146":[7,1,1],"147":[2,7,1],"148":[7,9,22],"149":[6,9,28],"150":[4,7,1],"151":[8,10,23],"152":[10,10,19],"153":[5,10,22],"154":[3,10,291],"155":[3,7,1],"156":[3,10,18],"157":[2,10,12],"158":[1,12,5],"159":[1,12,3],"160":[2,7,866],"161":[7,1,1],"162":[2,7,1],"163":[6,9,73],"164":[9,9,57],"165":[4,7,1],"166":[8,10,71],"167":[6,10,38],"168":[3,10,29],"169":[6,10,75],"170":[2,16,27],"171":[3,7,1],"172":[3,10,67],"173":[7,10,87],"174":[7,10,75],"175":[4,10,100],"176":[2,7,977],"177":[7,1,1],"178":[2,7,1],"179":[2,9,38],"180":[4,7,1],"181":[3,10,38],"182":[2,10,137],"183":[3,10,34],"184":[6,10,66],"185":[5,10,93],"186":[3,10,31],"187":[3,7,21],"188":[2,10,171],"189":[2,10,67],"190":[5,10,79],"191":[2,7,1144],"192":[7,1,1],"193":[4,7,1],"194":[7,10,182],"195":[9,10,106],"196":[7,10,89],"197":[3,10,37],"198":[3,7,105],"199":[2,7,907],"200":[7,1,1],"201":[2,7,110],"202":[4,8,35],"203":[3,8,54],"204":[4,7,1],"205":[3,10,46],"206":[7,10,49],"207":[4,10,15],"208":[6,10,29],"209":[4,10,105],"210":[2,7,740],"211":[7,1,1],"212":[2,7,147],"213":[4,8,71],"214":[7,8,74],"215":[3,8,37],"216":[4,7,1],"217":[7,10,60],"218":[3,10,49],"219":[3,7,1],"220":[4,10,60],"221":[4,10,31],"222":[2,7,1441],"223":[7,1,1],"224":[2,7,75],"225":[4,7,1],"226":[3,10,47],"227":[3,7,1],"228":[3,10,94],"229":[6,10,45],"230":[4,10,55],"231":[7,10,127],"232":[5,10,68],"233":[8,10,78],"234":[4,10,112],"235":[6,10,44],"236":[2,7,816],"237":[7,1,1],"238":[2,7,45],"239":[4,7,1],"240":[4,10,94],"241":[3,10,110],"242":[3,7,1],"243":[7,10,76],"244":[5,10,50],"245":[6,10,40],"246":[7,10,44],"247":[4,10,50],"248":[4,10,50],"249":[2,7,827],"250":[7,1,1],"251":[2,7,62],"252":[4,7,1],"253":[3,10,75],"254":[5,10,45],"255":[5,10,59],"256":[5,10,31],"257":[2,15,21],"258":[3,15,22],"259":[2,15,44],"260":[2,15,8],"261":[3,7,1],"262":[5,10,85],"263":[9,10,104],"264":[2,7,15],"265":[7,9,81],"266":[2,7,686],"267":[7,1,1],"268":[2,7,64],"269":[4,7,1],"270":[3,10,47],"271":[7,10,34],"272":[7,10,52],"273":[9,10,104],"274":[2,7,15],"275":[7,9,45],"276":[7,9,73],"277":[2,7,446],"278":[7,1,1],"279":[2,7,81],"280":[4,7,1],"281":[3,10,39],"282":[2,7,15],"283":[4,9,66],"284":[8,9,69],"285":[2,7,382],"286":[7,1,1],"287":[2,7,1],"288":[3,9,98],"289":[3,9,61],"290":[4,7,1],"291":[3,10,20],"292":[2,7,15],"293":[4,9,53],"294":[2,7,365],"295":[7,1,1],"296":[2,7,1],"297":[3,9,65],"298":[4,9,32],"299":[4,7,1],"300":[3,10,23],"301":[2,7,15],"302":[7,9,31],"303":[8,9,66],"304":[7,9,29],"305":[4,9,53],"306":[5,9,38],"307":[6,9,146],"308":[2,7,481],"309":[7,1,1],"310":[4,7,1],"311":[3,10,47],"312":[5,10,126],"313":[2,7,15],"314":[4,9,52],"315":[5,9,40],"316":[8,9,23],"317":[2,7,320],"318":[7,1,1],"319":[2,7,1],"320":[11,9,84],"321":[4,7,1],"322":[3,10,21],"323":[10,10,53],"324":[2,10,38],"325":[2,10,39],"326":[2,7,15],"327":[9,9,25],"328":[2,7,414],"329":[7,1,1],"330":[2,7,1],"331":[6,9,58],"332":[5,9,40],"333":[2,7,207],"334":[2,1,37],"335":[2,2,47],"336":[2,4,1],"337":[1,4,1],"338":[1,4,93],"339":[1,4,1],"340":[2,5,15],"341":[4,5,14],"342":[2,4,19],"343":[1,2,1],"344":[2,3,9],"345":[1,3,6],"346":[2,3,28],"347":[2,3,60],"348":[2,3,89],"349":[2,3,9],"350":[1,3,12],"351":[3,4,3],"352":[3,7,4],"353":[3,7,4],"354":[3,4,3],"355":[3,4,8],"356":[2,2,18],"357":[1,2,8],"358":[4,1,36],"359":[1,1,53],"360":[1,1,50],"361":[2,1,18],"362":[7,2,34],"363":[12,2,24],"364":[13,2,11],"365":[13,2,12],"366":[3,1,12],"367":[2,1,23],"368":[1,2,35],"369":[4,3,143],"370":[4,2,48],"371":[3,2,98],"372":[3,2,46],"373":[1,2,130],"374":[2,1,45],"375":[2,2,20],"376":[2,2,21],"377":[2,2,25],"378":[4,1,56],"379":[3,4,25],"380":[3,7,55],"381":[3,7,23],"382":[3,7,17],"383":[3,7,37],"384":[1,7,22],"385":[1,7,12],"386":[4,7,16],"387":[2,4,168],"388":[1,4,20],"389":[1,4,1],"390":[3,4,86],"391":[3,4,85],"392":[4,4,51],"393":[2,1,82],"394":[9,2,12],"395":[7,2,11],"396":[2,8,53],"397":[6,2,187],"398":[1,2,14],"399":[4,3,39],"400":[4,3,46],"401":[4,3,54],"402":[4,3,35],"403":[3,3,67],"404":[3,2,1],"405":[4,5,139],"406":[8,5,95],"407":[3,1,54],"408":[7,1,159],"409":[4,7,22],"410":[5,11,42],"411":[3,11,50],"412":[3,11,31],"413":[3,1,24],"414":[2,3,67],"415":[3,3,35],"416":[2,3,63],"417":[11,3,33],"418":[2,1,1],"419":[1,2,34],"420":[1,3,33],"421":[7,3,33],"422":[3,3,46],"423":[3,3,51],"424":[5,3,59],"425":[3,1,1],"426":[2,1,1],"427":[2,2,176],"428":[2,2,113],"429":[2,2,23],"430":[2,2,39],"431":[2,2,144],"432":[2,2,67],"433":[2,2,38],"434":[3,2,35],"435":[2,2,63],"436":[2,2,15],"437":[2,2,51],"438":[2,2,42],"439":[3,2,14],"440":[3,2,31],"441":[2,2,31],"442":[3,2,52],"443":[3,2,32],"444":[2,2,29],"445":[2,2,58],"446":[3,2,51],"447":[3,2,51],"448":[3,2,61],"449":[3,1,1],"450":[3,3,63],"451":[3,3,64],"452":[3,3,44],"453":[3,3,83],"454":[3,3,30],"455":[2,1,1],"456":[3,2,37],"457":[3,2,54],"458":[2,2,62],"459":[3,2,59],"460":[5,2,45],"461":[2,2,60],"462":[3,2,11],"463":[2,2,33],"464":[4,2,26],"465":[5,2,27],"466":[5,2,22],"467":[3,2,75],"468":[4,2,39],"469":[3,1,8],"470":[1,1,33],"471":[2,1,58],"472":[3,1,56],"473":[5,1,38],"474":[3,5,43],"475":[3,5,25],"476":[3,7,3],"477":[3,7,4],"478":[3,7,5],"479":[3,7,7],"480":[3,5,31],"481":[2,5,46],"482":[3,1,20],"483":[3,1,23],"484":[3,1,14],"485":[1,1,45],"486":[3,1,42],"487":[1,1,142],"488":[2,1,34],"489":[2,2,81],"490":[4,4,88],"491":[4,4,37],"492":[2,4,115],"493":[3,1,71],"494":[3,3,51],"495":[3,3,20],"496":[3,3,19],"497":[4,3,33],"498":[4,3,58],"499":[7,1,21],"500":[3,7,3],"501":[1,7,4],"502":[2,7,26],"503":[2,7,72],"504":[2,7,28],"505":[4,1,34],"506":[1,4,10],"507":[4,5,43],"508":[3,5,29],"509":[3,5,40],"510":[4,1,221],"511":[5,1,104],"512":[4,1,104],"513":[1,1,16],"514":[1,1,84],"515":[2,1,22],"516":[1,1,21],"517":[1,1,55],"518":[3,1,33],"519":[1,1,79],"520":[3,1,19],"521":[3,1,24],"522":[4,1,61],"523":[1,1,61],"524":[1,1,43],"525":[3,1,47],"526":[1,1,32],"527":[2,1,72],"528":[4,1,32],"529":[1,1,24],"530":[2,1,46],"531":[3,1,63],"532":[1,1,21],"533":[3,1,24],"534":[1,1,15],"535":[3,1,20],"536":[2,1,102],"537":[3,1,25],"538":[2,1,104],"539":[1,1,46],"540":[1,1,60],"541":[2,1,45],"542":[2,1,66],"543":[2,1,37],"544":[2,2,42],"545":[1,2,22],"546":[3,3,28],"547":[3,3,3],"548":[3,3,2],"549":[3,3,13],"550":[2,3,14],"551":[2,2,1],"552":[1,4,32],"553":[2,1,108],"554":[2,2,25],"555":[1,2,35],"556":[1,2,41],"557":[1,2,34],"558":[4,1,37],"559":[2,4,283],"560":[5,4,39],"561":[5,4,48],"562":[5,4,249],"563":[3,4,126],"564":[3,4,14],"565":[3,4,37],"566":[2,7,90],"567":[3,9,97],"568":[2,7,209],"569":[4,1,33],"570":[2,4,81],"571":[3,4,31],"572":[2,4,196],"573":[3,4,103],"574":[3,1,27],"575":[1,1,1],"576":[2,1,60],"577":[2,2,44],"578":[2,2,55],"579":[2,2,72],"580":[3,4,27],"581":[3,4,16],"582":[3,4,20],"583":[2,2,31],"584":[2,2,44],"585":[6,1,14],"586":[2,6,127],"587":[1,6,204],"588":[1,6,1],"589":[7,7,45],"590":[8,7,56],"591":[5,7,88],"592":[2,6,27],"593":[4,1,13],"594":[5,4,87],"595":[6,4,44],"596":[5,4,29],"597":[5,4,80],"598":[8,4,65],"599":[6,4,18],"600":[5,4,6],"601":[2,1,1],"602":[6,2,36],"603":[11,2,33],"604":[6,2,7],"605":[4,2,19],"606":[3,2,16],"607":[3,1,62],"608":[14,3,83],"609":[2,1,48],"610":[7,1,13],"611":[7,1,166],"612":[2,1,31],"613":[2,1,171],"614":[1,2,106],"615":[3,3,39],"616":[1,2,109],"617":[3,2,215],"618":[1,2,43],"619":[10,1,47],"620":[2,1,44],"621":[1,2,39],"622":[2,2,55],"623":[2,2,85],"624":[7,1,66],"625":[7,7,80],"626":[2,1,27],"627":[4,2,65],"628":[6,2,71],"629":[5,8,70],"630":[4,8,54],"631":[3,1,87],"632":[4,3,48],"633":[6,5,31],"634":[5,5,10],"635":[3,3,41],"636":[4,4,9],"637":[6,4,89],"638":[4,3,29],"639":[6,5,46],"640":[5,5,10],"641":[3,1,57],"642":[4,3,40],"643":[4,3,68],"644":[2,1,82],"645":[6,2,138],"646":[4,1,51],"647":[9,4,19],"648":[5,4,13],"649":[4,1,111],"650":[4,4,36],"651":[4,4,38],"652":[5,4,11],"653":[2,1,33],"654":[3,2,126],"655":[3,2,104],"656":[4,2,39],"657":[4,2,39],"658":[3,2,44],"659":[2,1,43],"660":[3,2,4],"661":[4,2,4],"662":[3,1,24],"663":[1,3,147],"664":[1,3,72],"665":[6,3,16],"666":[5,9,95],"667":[3,9,72],"668":[2,12,49],"669":[2,12,52],"670":[5,9,83],"671":[5,9,74],"672":[3,1,32],"673":[2,1,72],"674":[1,1,35],"675":[3,1,14],"676":[1,3,8],"677":[2,3,9],"678":[2,1,88],"679":[2,1,17],"680":[4,2,91],"681":[4,2,129],"682":[5,1,80],"683":[1,5,175],"684":[6,5,114],"685":[1,5,127],"686":[4,5,164],"687":[2,1,82],"688":[1,2,27],"689":[1,2,1],"690":[1,3,81],"691":[1,3,1],"692":[1,4,203],"693":[1,4,55],"694":[1,2,1],"695":[1,3,57],"696":[1,3,74],"697":[1,2,1],"698":[1,2,130],"699":[2,1,23],"700":[1,2,53],"701":[2,2,36],"702":[1,2,1],"703":[4,3,11],"704":[12,3,22],"705":[1,15,17],"706":[11,3,7],"707":[1,14,10],"708":[4,3,8],"709":[7,3,5],"710":[1,10,11],"711":[2,1,61],"712":[1,2,53],"713":[1,2,104],"714":[2,3,93],"715":[2,3,59],"716":[2,3,148],"717":[4,5,124],"718":[2,3,145],"719":[2,3,58],"720":[2,3,59],"721":[2,1,27],"722":[1,2,47],"723":[2,2,50],"724":[3,4,29],"725":[3,2,18],"726":[2,2,67],"727":[1,2,1],"728":[4,3,11],"729":[1,7,26],"730":[7,3,11],"731":[1,10,15],"732":[12,3,23],"733":[1,15,20],"734":[11,3,7],"735":[1,14,10],"736":[11,3,8],"737":[1,14,15],"738":[2,1,10],"739":[1,2,29],"740":[2,2,26],"741":[2,3,56],"742":[2,3,29],"743":[3,1,101],"744":[3,3,1],"745":[4,4,61],"746":[3,3,179],"747":[3,3,128],"748":[3,3,37],"749":[4,3,37],"750":[3,1,100],"751":[6,3,175],"752":[6,3,119],"753":[5,3,83],"754":[7,3,72],"755":[3,1,36],"756":[4,3,93],"757":[2,1,22],"758":[1,2,57],"759":[2,2,44],"760":[2,2,69],"761":[3,1,19],"762":[1,3,51],"763":[2,3,97],"764":[2,3,64],"765":[3,3,151],"766":[1,6,27],"767":[1,6,28],"768":[1,3,1],"769":[4,4,70],"770":[12,4,9],"771":[1,16,36],"772":[2,16,16],"773":[13,4,27],"774":[1,17,36],"775":[2,17,16],"776":[11,4,9],"777":[1,15,36],"778":[2,15,16],"779":[16,4,11],"780":[1,20,41],"781":[2,20,16],"782":[14,4,14],"783":[1,18,39],"784":[2,18,16],"785":[14,4,15],"786":[1,18,39],"787":[2,18,16],"788":[13,4,14],"789":[1,17,39],"790":[2,17,16],"791":[13,4,15],"792":[1,17,39],"793":[2,17,16],"794":[9,4,62],"795":[1,13,23],"796":[2,13,16],"797":[2,1,25],"798":[1,2,54],"799":[2,2,44],"800":[2,4,48],"801":[3,2,18],"802":[2,2,74],"803":[1,2,1],"804":[4,3,11],"805":[1,7,31],"806":[7,3,11],"807":[1,10,6],"808":[10,3,7],"809":[1,13,13],"810":[12,3,26],"811":[1,15,20],"812":[11,3,10],"813":[1,14,10],"814":[9,3,26],"815":[1,12,18],"816":[8,3,11],"817":[1,11,8],"818":[14,3,26],"819":[1,17,21],"820":[12,3,26],"821":[1,15,18],"822":[9,3,8],"823":[1,12,6],"824":[10,3,9],"825":[1,13,6],"826":[2,1,18],"827":[1,2,54],"828":[2,2,37],"829":[2,4,14],"830":[3,2,18],"831":[2,2,71],"832":[1,2,1],"833":[4,3,11],"834":[1,7,25],"835":[4,3,11],"836":[9,3,7],"837":[1,12,11],"838":[12,3,26],"839":[1,15,20],"840":[11,3,10],"841":[1,14,10],"842":[9,3,26],"843":[1,12,18],"844":[8,3,11],"845":[1,11,8],"846":[14,3,26],"847":[1,17,21],"848":[12,3,26],"849":[1,15,18],"850":[6,3,8],"851":[7,3,9],"852":[2,1,28],"853":[1,2,54],"854":[2,2,69],"855":[2,4,48],"856":[2,4,42],"857":[2,4,68],"858":[3,4,36],"859":[3,2,18],"860":[2,2,88],"861":[1,2,1],"862":[4,3,11],"863":[1,7,31],"864":[7,3,11],"865":[1,10,6],"866":[10,3,7],"867":[1,13,13],"868":[12,3,26],"869":[1,15,20],"870":[11,3,10],"871":[1,14,10],"872":[9,3,26],"873":[1,12,18],"874":[8,3,11],"875":[1,11,8],"876":[12,3,25],"877":[1,15,20],"878":[10,3,25],"879":[1,13,16],"880":[9,3,8],"881":[1,12,6],"882":[9,3,9],"883":[1,12,6],"884":[2,1,28],"885":[1,2,54],"886":[2,2,49],"887":[2,4,48],"888":[2,4,30],"889":[3,2,18],"890":[2,2,92],"891":[1,2,1],"892":[4,3,11],"893":[1,7,31],"894":[7,3,11],"895":[1,10,6],"896":[10,3,7],"897":[1,13,13],"898":[8,3,9],"899":[1,11,10],"900":[12,3,26],"901":[1,15,20],"902":[11,3,10],"903":[1,14,10],"904":[9,3,26],"905":[1,12,18],"906":[8,3,11],"907":[1,11,8],"908":[14,3,26],"909":[1,17,21],"910":[12,3,26],"911":[1,15,18],"912":[9,3,8],"913":[1,12,6],"914":[10,3,9],"915":[1,13,6],"916":[2,1,27],"917":[1,2,54],"918":[2,2,76],"919":[2,4,62],"920":[3,4,46],"921":[2,4,42],"922":[2,4,70],"923":[3,4,36],"924":[3,2,18],"925":[2,2,88],"926":[1,2,1],"927":[4,3,11],"928":[1,7,31],"929":[7,3,11],"930":[1,10,6],"931":[10,3,7],"932":[1,13,13],"933":[8,3,9],"934":[1,11,10],"935":[12,3,26],"936":[1,15,20],"937":[11,3,10],"938":[1,14,10],"939":[9,3,26],"940":[1,12,18],"941":[8,3,11],"942":[1,11,8],"943":[14,3,26],"944":[1,17,21],"945":[12,3,26],"946":[1,15,18],"947":[9,3,8],"948":[1,12,6],"949":[10,3,9],"950":[1,13,6],"951":[2,1,27],"952":[1,2,54],"953":[2,2,71],"954":[2,4,62],"955":[2,4,42],"956":[2,4,70],"957":[3,4,36],"958":[3,2,18],"959":[2,2,88],"960":[1,2,1],"961":[4,3,11],"962":[1,7,31],"963":[7,3,11],"964":[1,10,6],"965":[10,3,7],"966":[1,13,13],"967":[8,3,9],"968":[1,11,10],"969":[12,3,26],"970":[1,15,20],"971":[11,3,10],"972":[1,14,10],"973":[9,3,26],"974":[1,12,18],"975":[8,3,11],"976":[1,11,8],"977":[14,3,26],"978":[1,17,21],"979":[12,3,26],"980":[1,15,18],"981":[9,3,8],"982":[1,12,6],"983":[10,3,9],"984":[1,13,6],"985":[2,1,27],"986":[1,2,54],"987":[2,2,71],"988":[2,4,48],"989":[2,4,42],"990":[2,4,70],"991":[3,4,36],"992":[3,2,18],"993":[2,2,88],"994":[1,2,1],"995":[4,3,11],"996":[1,7,31],"997":[7,3,11],"998":[1,10,6],"999":[10,3,7],"1000":[1,13,13],"1001":[8,3,9],"1002":[1,11,10],"1003":[12,3,26],"1004":[1,15,20],"1005":[11,3,10],"1006":[1,14,10],"1007":[9,3,26],"1008":[1,12,18],"1009":[8,3,11],"1010":[1,11,8],"1011":[14,3,26],"1012":[1,17,21],"1013":[12,3,26],"1014":[1,15,18],"1015":[9,3,8],"1016":[1,12,6],"1017":[10,3,9],"1018":[1,13,6],"1019":[2,1,27],"1020":[1,2,54],"1021":[2,2,75],"1022":[2,4,48],"1023":[2,4,40],"1024":[2,4,70],"1025":[3,4,36],"1026":[3,2,18],"1027":[2,2,88],"1028":[1,2,1],"1029":[4,3,11],"1030":[1,7,31],"1031":[7,3,11],"1032":[1,10,6],"1033":[10,3,7],"1034":[1,13,13],"1035":[8,3,9],"1036":[1,11,10],"1037":[12,3,26],"1038":[1,15,20],"1039":[11,3,10],"1040":[1,14,10],"1041":[9,3,26],"1042":[1,12,18],"1043":[8,3,11],"1044":[1,11,8],"1045":[14,3,26],"1046":[1,17,21],"1047":[12,3,26],"1048":[1,15,18],"1049":[9,3,8],"1050":[1,12,6],"1051":[10,3,9],"1052":[1,13,6],"1053":[2,1,27],"1054":[1,2,54],"1055":[2,2,74],"1056":[2,4,48],"1057":[2,4,37],"1058":[2,4,70],"1059":[3,4,36],"1060":[3,2,18],"1061":[2,2,88],"1062":[1,2,1],"1063":[4,3,11],"1064":[1,7,31],"1065":[7,3,11],"1066":[1,10,6],"1067":[10,3,7],"1068":[1,13,13],"1069":[8,3,9],"1070":[1,11,10],"1071":[12,3,26],"1072":[1,15,20],"1073":[11,3,10],"1074":[1,14,10],"1075":[9,3,26],"1076":[1,12,18],"1077":[8,3,11],"1078":[1,11,8],"1079":[12,3,25],"1080":[1,15,20],"1081":[10,3,26],"1082":[1,13,16],"1083":[9,3,8],"1084":[1,12,6],"1085":[9,3,9],"1086":[1,12,6],"1087":[2,1,27],"1088":[1,2,54],"1089":[2,2,73],"1090":[2,4,62],"1091":[3,4,46],"1092":[2,4,72],"1093":[3,4,36],"1094":[3,2,18],"1095":[2,2,88],"1096":[1,2,1],"1097":[4,3,11],"1098":[1,7,31],"1099":[7,3,11],"1100":[1,10,6],"1101":[10,3,7],"1102":[1,13,13],"1103":[8,3,9],"1104":[1,11,10],"1105":[12,3,26],"1106":[1,15,20],"1107":[11,3,10],"1108":[1,14,10],"1109":[9,3,26],"1110":[1,12,18],"1111":[8,3,11],"1112":[1,11,8],"1113":[12,3,25],"1114":[1,15,20],"1115":[10,3,26],"1116":[1,13,16],"1117":[9,3,8],"1118":[1,12,6],"1119":[9,3,9],"1120":[1,12,6],"1121":[2,1,27],"1122":[1,2,54],"1123":[2,2,73],"1124":[2,4,62],"1125":[3,4,46],"1126":[2,4,72],"1127":[3,4,36],"1128":[3,2,18],"1129":[2,2,88],"1130":[1,2,1],"1131":[4,3,11],"1132":[1,7,31],"1133":[7,3,11],"1134":[1,10,6],"1135":[10,3,7],"1136":[1,13,13],"1137":[8,3,9],"1138":[1,11,10],"1139":[12,3,26],"1140":[1,15,20],"1141":[11,3,10],"1142":[1,14,10],"1143":[9,3,26],"1144":[1,12,18],"1145":[8,3,11],"1146":[1,11,8],"1147":[12,3,25],"1148":[1,15,20],"1149":[10,3,26],"1150":[1,13,16],"1151":[9,3,8],"1152":[1,12,6],"1153":[9,3,9],"1154":[1,12,6],"1155":[2,1,27],"1156":[1,2,54],"1157":[2,2,75],"1158":[2,4,62],"1159":[2,4,44],"1160":[2,4,72],"1161":[3,4,36],"1162":[3,2,18],"1163":[2,2,88],"1164":[1,2,1],"1165":[4,3,11],"1166":[1,7,31],"1167":[7,3,11],"1168":[1,10,12],"1169":[10,3,7],"1170":[1,13,13],"1171":[8,3,9],"1172":[1,11,10],"1173":[12,3,26],"1174":[1,15,20],"1175":[11,3,10],"1176":[1,14,10],"1177":[9,3,26],"1178":[1,12,18],"1179":[8,3,11],"1180":[1,11,8],"1181":[12,3,25],"1182":[1,15,20],"1183":[10,3,26],"1184":[1,13,16],"1185":[9,3,8],"1186":[1,12,6],"1187":[9,3,9],"1188":[1,12,6],"1189":[3,1,79],"1190":[1,3,56],"1191":[2,4,44],"1192":[1,4,61],"1193":[3,3,59],"1194":[2,6,90],"1195":[1,6,111],"1196":[3,3,62],"1197":[2,6,121],"1198":[1,6,124],"1199":[4,3,1],"1200":[3,7,99],"1201":[3,7,107],"1202":[3,7,95],"1203":[2,3,17],"1204":[1,5,75],"1205":[1,5,47],"1206":[1,3,48],"1207":[6,3,6],"1208":[3,9,35],"1209":[1,9,34],"1210":[6,9,82],"1211":[2,1,39],"1212":[1,2,53],"1213":[2,2,44],"1214":[2,4,48],"1215":[3,2,18],"1216":[2,2,86],"1217":[1,2,1],"1218":[4,3,11],"1219":[1,7,31],"1220":[7,3,11],"1221":[1,10,6],"1222":[10,3,7],"1223":[1,13,13],"1224":[8,3,9],"1225":[1,11,10],"1226":[12,3,26],"1227":[1,15,20],"1228":[11,3,10],"1229":[1,14,10],"1230":[9,3,26],"1231":[1,12,18],"1232":[8,3,11],"1233":[1,11,8],"1234":[14,3,26],"1235":[1,17,21],"1236":[12,3,26],"1237":[1,15,18],"1238":[9,3,8],"1239":[1,12,6],"1240":[10,3,9],"1241":[1,13,6],"1242":[3,1,19],"1243":[1,3,51],"1244":[2,3,69],"1245":[3,3,135],"1246":[1,3,1],"1247":[4,4,18],"1248":[12,4,5],"1249":[1,16,80],"1250":[2,16,20],"1251":[7,4,9],"1252":[1,11,8],"1253":[2,11,11],"1254":[6,4,9],"1255":[2,10,14],"1256":[10,4,9],"1257":[1,14,21],"1258":[2,14,16],"1259":[9,4,9],"1260":[1,13,22],"1261":[2,13,16],"1262":[4,4,21],"1263":[2,1,40],"1264":[1,2,46],"1265":[2,2,41],"1266":[3,2,94],"1267":[1,2,1],"1268":[7,3,18],"1269":[1,10,31],"1270":[7,3,5],"1271":[1,10,8],"1272":[6,3,5],"1273":[2,9,19],"1274":[10,3,4],"1275":[1,13,21],"1276":[9,3,4],"1277":[1,12,22],"1278":[5,3,19],"1279":[2,8,9],"1280":[2,1,68],"1281":[1,2,53],"1282":[2,2,72],"1283":[2,4,63],"1284":[2,4,78],"1285":[2,4,80],"1286":[2,2,34],"1287":[2,3,49],"1288":[2,3,43],"1289":[2,3,56],"1290":[2,3,22],"1291":[2,3,49],"1292":[3,2,34],"1293":[2,5,47],"1294":[4,7,97],"1295":[3,7,45],"1296":[2,5,84],"1297":[3,6,57],"1298":[2,6,27],"1299":[2,5,23],"1300":[2,5,109],"1301":[1,2,1],"1302":[4,3,11],"1303":[12,3,22],"1304":[1,15,17],"1305":[11,3,7],"1306":[1,14,10],"1307":[4,3,8],"1308":[8,1,74],"1309":[1,8,48],"1310":[2,1,89],"1311":[4,1,25],"1312":[5,4,77],"1313":[3,9,78],"1314":[10,9,35],"1315":[5,4,68],"1316":[4,4,88],"1317":[25,8,78],"1318":[2,1,13],"1319":[1,2,60],"1320":[2,2,9],"1321":[4,3,16],"1322":[4,3,21],"1323":[4,3,26],"1324":[5,2,52],"1325":[2,2,18],"1326":[7,4,96],"1327":[6,4,63],"1328":[11,4,46],"1329":[6,2,100],"1330":[6,2,50],"1331":[3,1,1],"1332":[4,3,25],"1333":[8,3,41],"1334":[8,3,25],"1335":[12,3,40],"1336":[7,3,22],"1337":[7,3,30],"1338":[10,3,16],"1339":[10,13,47],"1340":[9,3,132],"1341":[2,1,19],"1342":[6,2,24],"1343":[6,2,36],"1344":[10,2,40],"1345":[9,2,99],"1346":[9,2,58],"1347":[6,2,46],"1348":[5,2,67],"1349":[3,2,29],"1350":[3,2,57],"1351":[4,2,58],"1352":[10,2,5],"1353":[4,2,78],"1354":[6,2,46],"1355":[5,2,41],"1356":[8,2,43],"1357":[7,2,6],"1358":[4,2,52],"1359":[8,2,58],"1360":[2,1,1],"1361":[7,2,36],"1362":[2,2,173],"1363":[4,2,46],"1364":[9,2,33],"1365":[8,2,70],"1366":[11,2,19],"1367":[6,2,31],"1368":[3,2,47],"1369":[2,2,58],"1370":[3,2,17],"1371":[2,2,1],"1372":[6,4,10],"1373":[11,2,58],"1374":[2,1,105],"1375":[3,1,226],"1376":[1,3,20],"1377":[5,4,98],"1378":[5,4,176],"1379":[2,1,43],"1380":[1,2,2],"1381":[2,2,3],"1382":[3,2,4],"1383":[4,2,5],"1384":[2,2,3],"1385":[1,1,81],"1386":[2,1,50],"1387":[1,1,54],"1388":[3,1,100],"1389":[2,3,86],"1390":[2,3,56],"1391":[10,3,8],"1392":[1,3,72],"1393":[2,3,58],"1394":[8,3,27],"1395":[1,3,56],"1396":[3,1,53],"1397":[1,3,15],"1398":[3,3,17],"1399":[2,1,1],"1400":[2,3,31],"1401":[2,5,17],"1402":[3,3,89],"1403":[2,3,36],"1404":[2,3,89],"1405":[3,5,18],"1406":[4,1,113],"1407":[2,4,271],"1408":[4,4,35],"1409":[4,1,148],"1410":[4,4,199],"1411":[3,4,9],"1412":[2,7,30],"1413":[2,7,136],"1414":[5,7,61],"1415":[1,1,49],"1416":[4,1,201],"1417":[1,4,150],"1418":[3,1,38],"1419":[1,3,109],"1420":[2,3,48],"1421":[2,3,130],"1422":[1,1,146],"1423":[3,1,20],"1424":[5,4,43],"1425":[6,4,130],"1426":[5,4,21],"1427":[7,1,105],"1428":[3,7,54],"1429":[3,7,20],"1430":[2,8,37],"1431":[6,7,1],"1432":[1,12,64],"1433":[1,12,47],"1434":[1,1,73],"1435":[5,1,58],"1436":[5,5,47],"1437":[2,5,24],"1438":[2,7,79],"1439":[5,1,1],"1440":[6,5,193],"1441":[2,11,91],"1442":[4,11,129],"1443":[2,11,32],"1444":[3,11,58],"1445":[3,5,73],"1446":[4,8,30],"1447":[6,8,26],"1448":[6,8,29],"1449":[6,8,77],"1450":[7,8,21],"1451":[10,8,38],"1452":[3,8,10],"1453":[3,8,8],"1454":[5,8,11],"1455":[3,5,1],"1456":[2,8,98],"1457":[5,1,98],"1458":[2,5,115],"1459":[3,7,77],"1460":[5,5,61],"1461":[4,5,114],"1462":[8,5,36],"1463":[1,5,14],"1464":[2,6,130],"1465":[2,6,124],"1466":[2,6,252],"1467":[1,1,50],"1468":[3,1,59],"1469":[1,4,25],"1470":[3,1,11],"1471":[3,4,76],"1472":[2,7,49],"1473":[4,8,33],"1474":[3,4,98],"1475":[3,4,63],"1476":[1,7,39],"1477":[3,4,75],"1478":[2,1,88],"1479":[1,1,180],"1480":[2,1,129],"1481":[1,1,58],"1482":[3,1,67],"1483":[1,1,51],"1484":[2,1,165],"1485":[2,3,86],"1486":[2,3,166],"1487":[2,1,175],"1488":[2,1,3],"1489":[2,1,52],"1490":[9,1,20],"1491":[4,9,41],"1492":[5,9,101],"1493":[7,9,92],"1494":[7,9,35],"1495":[1,9,54],"1496":[3,9,48],"1497":[7,9,173],"1498":[7,9,17],"1499":[7,9,15],"1500":[7,9,14],"1501":[7,9,10],"1502":[7,9,12],"1503":[6,9,6],"1504":[4,9,79],"1505":[6,9,3],"1506":[7,9,10],"1507":[7,9,9],"1508":[7,9,25],"1509":[7,9,16],"1510":[7,9,14],"1511":[3,9,139],"1512":[2,9,139],"1513":[6,9,47],"1514":[4,9,18],"1515":[1,10,48],"1516":[1,10,94],"1517":[3,11,75],"1518":[1,1,32],"1519":[5,1,92],"1520":[5,1,60],"1521":[3,1,160],"1522":[3,4,121],"1523":[2,1,74],"1524":[1,2,20],"1525":[3,1,1],"1526":[2,4,112],"1527":[3,5,159],"1528":[2,4,73],"1529":[3,5,111],"1530":[2,4,24],"1531":[5,1,50],"1532":[1,6,213],"1533":[1,6,84],"1534":[1,1,22],"1535":[1,1,76],"1536":[1,1,32],"1537":[1,1,34],"1538":[2,1,100],"1539":[4,3,62],"1540":[3,3,91],"1541":[2,1,24],"1542":[2,3,19],"1543":[2,3,31],"1544":[2,3,37],"1545":[2,3,69],"1546":[2,1,1],"1547":[2,3,51],"1548":[2,3,51],"1549":[3,1,1],"1550":[2,4,103],"1551":[2,4,56],"1552":[2,1,84],"1553":[1,1,1],"1554":[4,2,7],"1555":[4,2,5],"1556":[4,2,5],"1557":[4,2,5],"1558":[4,2,5],"1559":[4,2,5],"1560":[6,2,5],"1561":[1,8,11],"1562":[7,2,6],"1563":[2,9,10],"1564":[6,2,6],"1565":[2,8,7],"1566":[5,2,7],"1567":[5,2,5],"1568":[5,2,5],"1569":[6,2,7],"1570":[2,8,7],"1571":[1,1,11],"1572":[1,1,16],"1573":[2,1,22],"1574":[2,1,9],"1575":[1,1,1],"1576":[7,2,4],"1577":[2,9,9],"1578":[1,1,1],"1579":[9,2,8],"1580":[1,2,12],"1581":[9,2,8],"1582":[1,2,12],"1583":[1,1,110],"1584":[2,1,119],"1585":[2,1,81],"1586":[1,1,48],"1587":[2,1,174],"1588":[6,2,137],"1589":[2,6,80],"1590":[3,2,1],"1591":[3,3,85],"1592":[2,3,51],"1593":[1,3,20],"1594":[8,3,78],"1595":[4,3,45],"1596":[1,1,104],"1597":[3,1,56],"1598":[2,1,47],"1599":[1,1,148],"1600":[1,1,49],"1601":[2,1,12],"1602":[2,3,42],"1603":[4,3,108],"1604":[2,3,48],"1605":[4,3,24],"1606":[9,3,193],"1607":[8,3,69],"1608":[2,3,38],"1609":[5,5,47],"1610":[5,5,34],"1611":[3,3,92],"1612":[3,3,98],"1613":[3,3,61],"1614":[6,6,85],"1615":[2,1,40],"1616":[2,1,157],"1617":[1,1,60],"1618":[1,1,37],"1619":[1,1,149],"1620":[2,1,50],"1621":[7,2,103],"1622":[8,2,85],"1623":[5,2,22],"1624":[3,6,105],"1625":[2,6,19],"1626":[3,6,25],"1627":[5,6,79],"1628":[3,6,64],"1629":[4,6,31],"1630":[4,6,31],"1631":[5,6,15],"1632":[2,6,75],"1633":[1,1,42],"1634":[1,1,12],"1635":[1,1,53],"1636":[1,1,63],"1637":[1,1,1],"1638":[3,2,6],"1639":[1,5,36],"1640":[4,2,13],"1641":[6,2,10],"1642":[6,2,10],"1643":[6,2,8],"1644":[6,2,8],"1645":[6,2,8],"1646":[6,2,8],"1647":[8,2,13],"1648":[1,10,16],"1649":[2,1,63],"1650":[3,2,66],"1651":[1,2,76],"1652":[1,2,1],"1653":[11,3,28],"1654":[13,3,15],"1655":[7,1,156],"1656":[1,7,123],"1657":[4,8,67],"1658":[2,8,69],"1659":[1,1,104],"1660":[2,1,84],"1661":[2,1,128],"1662":[1,1,112],"1663":[1,1,19],"1664":[2,1,96],"1665":[2,1,35],"1666":[1,2,34],"1667":[4,2,36],"1668":[1,2,17],"1669":[1,3,38],"1670":[1,2,48],"1671":[2,1,1],"1672":[5,2,77],"1673":[3,2,17],"1674":[2,2,71],"1675":[1,3,197],"1676":[1,3,23],"1677":[3,4,22],"1678":[1,6,71],"1679":[1,6,107],"1680":[3,4,210],"1681":[3,3,44],"1682":[4,3,15],"1683":[3,2,34],"1684":[3,4,73],"1685":[3,4,21],"1686":[3,4,38],"1687":[3,4,23],"1688":[3,4,32],"1689":[3,4,25],"1690":[3,1,1],"1691":[2,3,52],"1692":[1,3,12],"1693":[2,3,58],"1694":[1,3,1],"1695":[2,4,25],"1696":[3,4,90],"1697":[1,3,1],"1698":[7,4,17],"1699":[1,11,10],"1700":[4,4,10],"1701":[4,4,13],"1702":[7,4,15],"1703":[1,11,10],"1704":[4,4,5],"1705":[9,4,9],"1706":[1,13,20],"1707":[6,4,31],"1708":[1,10,7],"1709":[7,4,9],"1710":[1,11,8],"1711":[8,4,22],"1712":[1,12,13],"1713":[9,4,5],"1714":[1,13,34],"1715":[11,4,20],"1716":[1,15,36],"1717":[5,4,12],"1718":[2,9,7],"1719":[9,4,7],"1720":[1,13,18],"1721":[7,4,7],"1722":[1,11,13],"1723":[2,11,20],"1724":[6,4,24],"1725":[1,10,7],"1726":[6,4,18],"1727":[1,10,9],"1728":[8,4,13],"1729":[1,12,11],"1730":[8,4,17],"1731":[1,12,11],"1732":[1,1,62],"1733":[1,1,48],"1734":[1,1,73],"1735":[2,2,86],"1736":[1,2,103],"1737":[2,3,62],"1738":[1,1,41],"1739":[1,1,1],"1740":[3,2,6],"1741":[1,5,48],"1742":[4,2,5],"1743":[1,6,24],"1744":[4,2,14],"1745":[7,2,10],"1746":[1,9,13],"1747":[7,2,10],"1748":[1,9,13],"1749":[7,2,10],"1750":[1,9,7],"1751":[2,9,14],"1752":[9,2,7],"1753":[1,11,11],"1754":[8,2,7],"1755":[1,10,10],"1756":[2,1,58],"1757":[1,2,27],"1758":[1,2,14],"1759":[1,2,66],"1760":[2,1,99],"1761":[13,2,30],"1762":[1,2,33],"1763":[3,2,34],"1764":[7,3,40],"1765":[8,3,14],"1766":[12,3,20],"1767":[13,3,37],"1768":[2,2,42],"1769":[3,2,1],"1770":[5,5,109],"1771":[5,5,80],"1772":[2,2,1],"1773":[4,4,107],"1774":[1,2,18],"1775":[5,2,192],"1776":[5,2,76],"1777":[5,2,36],"1778":[1,11,92],"1779":[1,11,87],"1780":[3,11,135],"1781":[3,2,95],"1782":[7,2,165],"1783":[8,1,33],"1784":[1,8,18],"1785":[1,8,72],"1786":[2,8,1],"1787":[1,10,39],"1788":[3,10,94],"1789":[3,10,101],"1790":[3,10,62],"1791":[1,8,82],"1792":[1,8,11],"1793":[1,8,1],"1794":[5,9,9],"1795":[5,9,9],"1796":[8,9,13],"1797":[1,17,10],"1798":[2,17,9],"1799":[4,9,9],"1800":[4,9,5],"1801":[6,9,7],"1802":[8,9,18],"1803":[1,17,7],"1804":[2,17,11],"1805":[7,9,22],"1806":[6,9,6],"1807":[9,9,8],"1808":[1,18,8],"1809":[2,18,7],"1810":[10,9,8],"1811":[1,19,11],"1812":[2,19,7],"1813":[11,9,8],"1814":[1,20,13],"1815":[2,20,7],"1816":[12,9,8],"1817":[1,21,15],"1818":[2,21,7],"1819":[13,9,8],"1820":[1,22,17],"1821":[2,22,7],"1822":[2,1,64],"1823":[6,2,46],"1824":[2,2,77],"1825":[2,2,36],"1826":[1,2,25],"1827":[6,2,61],"1828":[7,2,106],"1829":[2,1,80],"1830":[2,2,63],"1831":[3,2,63],"1832":[6,4,67],"1833":[6,4,54],"1834":[4,2,37],"1835":[4,2,32],"1836":[4,2,14],"1837":[2,5,53],"1838":[3,1,35],"1839":[2,3,66],"1840":[2,3,173],"1841":[1,3,44],"1842":[1,3,46],"1843":[3,3,132],"1844":[4,3,157],"1845":[1,3,75],"1846":[4,3,132],"1847":[2,3,25],"1848":[1,3,1],"1849":[1,4,85],"1850":[1,3,1],"1851":[5,4,7],"1852":[6,4,14],"1853":[5,4,5],"1854":[6,4,12],"1855":[5,4,5],"1856":[6,4,12],"1857":[7,4,9],"1858":[2,11,7],"1859":[10,4,32],"1860":[1,14,16],"1861":[10,4,31],"1862":[1,14,9],"1863":[7,4,6],"1864":[1,11,8],"1865":[8,4,13],"1866":[1,12,8],"1867":[5,4,7],"1868":[6,4,13],"1869":[6,4,7],"1870":[7,4,13],"1871":[8,4,6],"1872":[2,12,8],"1873":[5,4,6],"1874":[7,4,13],"1875":[6,4,6],"1876":[7,4,13],"1877":[8,4,7],"1878":[2,12,9],"1879":[6,4,5],"1880":[7,4,12],"1881":[6,4,5],"1882":[7,4,12],"1883":[8,4,5],"1884":[1,12,11],"1885":[9,4,12],"1886":[1,13,11],"1887":[8,4,6],"1888":[2,12,9],"1889":[7,4,6],"1890":[1,11,8],"1891":[8,4,13],"1892":[1,12,8],"1893":[6,4,7],"1894":[7,4,13],"1895":[7,4,7],"1896":[8,4,13],"1897":[8,4,7],"1898":[2,12,5],"1899":[7,4,11],"1900":[8,4,9],"1901":[2,12,11],"1902":[7,4,18],"1903":[2,11,3],"1904":[7,4,18],"1905":[2,11,9],"1906":[11,4,18],"1907":[1,4,16],"1908":[2,5,3],"1909":[11,4,18],"1910":[1,4,16],"1911":[2,5,9],"1912":[1,1,1],"1913":[1,1,58],"1914":[1,2,17],"1915":[2,2,15],"1916":[2,2,15],"1917":[5,3,80],"1918":[13,3,66],"1919":[1,2,282],"1920":[1,2,50],"1921":[1,2,1],"1922":[2,3,7],"1923":[3,3,10],"1924":[2,1,31],"1925":[6,2,18],"1926":[3,7,19],"1927":[3,7,65],"1928":[3,2,97],"1929":[2,4,139],"1930":[2,4,154],"1931":[2,4,131],"1932":[2,4,78],"1933":[2,4,173],"1934":[4,4,66],"1935":[8,2,22],"1936":[2,1,54],"1937":[1,2,80],"1938":[1,2,56],"1939":[3,2,52],"1940":[2,2,64],"1941":[1,2,81],"1942":[1,2,107],"1943":[1,2,8],"1944":[2,1,1],"1945":[2,2,45],"1946":[1,2,27],"1947":[2,2,97],"1948":[2,2,135],"1949":[3,2,127],"1950":[2,2,112],"1951":[2,2,158],"1952":[2,4,14],"1953":[2,4,40],"1954":[6,2,151],"1955":[6,7,203],"1956":[2,2,280],"1957":[5,2,29],"1958":[2,1,72],"1959":[2,2,38],"1960":[3,4,60],"1961":[3,4,80],"1962":[2,4,210],"1963":[3,4,36],"1964":[2,7,82],"1965":[2,7,88],"1966":[2,7,18],"1967":[2,4,45],"1968":[2,6,194],"1969":[3,6,36],"1970":[3,6,68],"1971":[3,6,73],"1972":[3,4,62],"1973":[3,4,57],"1974":[2,4,79],"1975":[2,4,68],"1976":[5,4,210],"1977":[2,4,76],"1978":[2,2,168],"1979":[3,2,172],"1980":[3,2,93],"1981":[3,2,99],"1982":[5,2,84],"1983":[3,1,133],"1984":[1,3,1],"1985":[3,4,73],"1986":[4,4,71],"1987":[3,4,147],"1988":[2,3,22],"1989":[3,5,64],"1990":[3,5,55],"1991":[1,1,51],"1992":[3,1,131],"1993":[9,3,70],"1994":[4,3,70],"1995":[4,3,24],"1996":[4,7,73],"1997":[3,7,26],"1998":[11,9,20],"1999":[10,18,52],"2000":[2,3,19],"2001":[10,5,118],"2002":[7,5,69],"2003":[3,5,1],"2004":[7,6,93],"2005":[10,6,69],"2006":[8,5,89],"2007":[4,3,104],"2008":[7,3,64],"2009":[2,1,81],"2010":[1,2,13],"2011":[1,2,42],"2012":[1,2,1],"2013":[5,3,6],"2014":[8,3,7],"2015":[1,11,13],"2016":[8,3,7],"2017":[1,11,13],"2018":[8,3,10],"2019":[1,11,13],"2020":[8,3,10],"2021":[1,11,13],"2022":[9,3,7],"2023":[1,12,13],"2024":[2,12,7],"2025":[5,3,8],"2026":[8,3,6],"2027":[2,11,7],"2028":[8,3,6],"2029":[1,11,10],"2030":[4,1,67],"2031":[6,4,26],"2032":[2,4,32],"2033":[2,6,46],"2034":[5,6,61],"2035":[5,6,59],"2036":[2,6,104],"2037":[3,6,82],"2038":[2,4,1],"2039":[4,6,88],"2040":[2,6,38],"2041":[2,6,104],"2042":[3,6,20],"2043":[5,6,23],"2044":[3,6,47],"2045":[2,6,20],"2046":[2,6,37],"2047":[2,1,67],"2048":[1,2,12],"2049":[2,2,39],"2050":[5,2,186],"2051":[5,2,48],"2052":[2,2,134],"2053":[1,2,1],"2054":[9,3,14],"2055":[1,12,17],"2056":[9,3,5],"2057":[1,12,19],"2058":[3,1,36],"2059":[2,3,71],"2060":[2,3,174],"2061":[1,3,47],"2062":[1,3,54],"2063":[3,3,241],"2064":[5,4,119],"2065":[5,4,51],"2066":[4,3,160],"2067":[1,3,48],"2068":[1,3,75],"2069":[4,3,163],"2070":[2,3,25],"2071":[1,3,1],"2072":[1,4,97],"2073":[2,4,100],"2074":[1,6,130],"2075":[5,6,49],"2076":[1,3,1],"2077":[5,4,7],"2078":[6,4,14],"2079":[5,4,5],"2080":[6,4,12],"2081":[5,4,5],"2082":[6,4,12],"2083":[7,4,9],"2084":[2,11,7],"2085":[12,4,32],"2086":[1,16,21],"2087":[12,4,31],"2088":[1,16,13],"2089":[7,4,6],"2090":[1,11,8],"2091":[8,4,13],"2092":[1,12,8],"2093":[5,4,7],"2094":[6,4,13],"2095":[6,4,7],"2096":[7,4,13],"2097":[8,4,6],"2098":[2,12,8],"2099":[6,4,6],"2100":[7,4,13],"2101":[6,4,6],"2102":[7,4,13],"2103":[8,4,7],"2104":[2,12,9],"2105":[6,4,6],"2106":[7,4,13],"2107":[6,4,6],"2108":[7,4,13],"2109":[8,4,7],"2110":[2,12,9],"2111":[6,4,7],"2112":[7,4,14],"2113":[6,4,7],"2114":[7,4,14],"2115":[8,4,8],"2116":[2,12,9],"2117":[6,4,5],"2118":[7,4,12],"2119":[6,4,5],"2120":[7,4,12],"2121":[8,4,5],"2122":[1,12,11],"2123":[9,4,12],"2124":[1,13,11],"2125":[8,4,6],"2126":[2,12,9],"2127":[8,4,6],"2128":[1,12,8],"2129":[9,4,13],"2130":[1,13,8],"2131":[6,4,7],"2132":[7,4,13],"2133":[7,4,7],"2134":[8,4,13],"2135":[8,4,7],"2136":[2,12,5],"2137":[10,4,10],"2138":[1,4,16],"2139":[11,4,17],"2140":[1,15,16],"2141":[7,4,11],"2142":[2,11,10],"2143":[7,4,11],"2144":[8,4,9],"2145":[2,12,11],"2146":[7,4,18],"2147":[2,11,3],"2148":[7,4,18],"2149":[2,11,9],"2150":[12,4,18],"2151":[1,4,16],"2152":[2,5,3],"2153":[12,4,18],"2154":[1,4,16],"2155":[2,5,9],"2156":[2,1,73],"2157":[6,2,33],"2158":[1,2,18],"2159":[2,2,176],"2160":[3,2,108],"2161":[2,5,86],"2162":[2,5,87],"2163":[5,2,56],"2164":[3,7,62],"2165":[3,7,74],"2166":[2,7,70],"2167":[6,2,102],"2168":[7,2,90],"2169":[1,2,34],"2170":[4,2,116],"2171":[2,1,104],"2172":[1,2,109],"2173":[2,3,37],"2174":[1,2,164],"2175":[1,2,79],"2176":[3,2,99],"2177":[4,5,73],"2178":[4,5,106],"2179":[6,5,31],"2180":[2,5,91],"2181":[2,2,72],"2182":[3,3,167],"2183":[5,3,42],"2184":[3,3,162],"2185":[6,3,37],"2186":[2,3,34],"2187":[1,2,36],"2188":[3,3,19],"2189":[4,3,1],"2190":[3,6,12],"2191":[2,6,75],"2192":[3,6,35],"2193":[4,6,25],"2194":[4,6,43],"2195":[2,6,24],"2196":[2,6,23],"2197":[1,6,17],"2198":[1,2,56],"2199":[5,2,50],"2200":[2,2,65],"2201":[2,2,52],"2202":[1,2,27],"2203":[1,3,90],"2204":[1,3,37],"2205":[1,1,34],"2206":[2,1,34],"2207":[2,1,32],"2208":[1,1,12],"2209":[1,1,34],"2210":[1,1,35],"2211":[1,1,37],"2212":[1,1,45],"2213":[4,1,33],"2214":[1,1,25],"2215":[1,1,47],"2216":[1,1,54],"2217":[1,1,58],"2218":[2,1,52],"2219":[1,2,32],"2220":[2,2,42],"2221":[1,2,89],"2222":[2,3,31],"2223":[1,2,1],"2224":[2,3,42],"2225":[2,3,34],"2226":[1,2,1],"2227":[6,3,16],"2228":[1,9,8],"2229":[11,3,13],"2230":[1,14,22],"2231":[7,3,23],"2232":[1,10,8],"2233":[12,3,26],"2234":[1,15,22],"2235":[6,3,6],"2236":[1,9,8],"2237":[7,3,22],"2238":[1,10,14],"2239":[7,3,22],"2240":[1,10,12],"2241":[7,3,21],"2242":[1,10,11],"2243":[7,3,16],"2244":[1,10,11],"2245":[5,3,15],"2246":[4,3,18],"2247":[6,3,18],"2248":[6,1,43],"2249":[1,6,32],"2250":[1,6,33],"2251":[1,6,43],"2252":[1,6,124],"2253":[2,6,104],"2254":[2,1,115],"2255":[2,2,21],"2256":[2,2,19],"2257":[2,4,49],"2258":[1,5,107],"2259":[2,4,42],"2260":[2,4,70],"2261":[2,2,31],"2262":[2,4,54],"2263":[2,4,29],"2264":[3,6,58],"2265":[4,6,128],"2266":[3,6,169],"2267":[3,6,46],"2268":[2,4,178],"2269":[3,4,144],"2270":[5,4,193],"2271":[3,4,207],"2272":[4,2,54],"2273":[2,6,87],"2274":[2,2,51],"2275":[3,1,1],"2276":[2,3,35],"2277":[1,3,89],"2278":[2,3,100],"2279":[3,3,125],"2280":[2,3,77],"2281":[2,3,101],"2282":[3,3,60],"2283":[1,3,191],"2284":[3,1,79],"2285":[4,3,77],"2286":[4,3,106],"2287":[4,3,124],"2288":[2,7,123],"2289":[1,7,131],"2290":[5,7,118],"2291":[4,3,169],"2292":[2,3,12],"2293":[4,3,196],"2294":[2,3,152],"2295":[3,1,60],"2296":[1,3,70],"2297":[2,3,63],"2298":[2,3,72],"2299":[1,5,22],"2300":[13,1,1],"2301":[1,13,67],"2302":[5,13,269],"2303":[2,13,198],"2304":[1,13,1],"2305":[10,14,62],"2306":[2,14,33],"2307":[9,15,27],"2308":[12,15,75],"2309":[6,15,101],"2310":[7,15,335],"2311":[11,15,167],"2312":[12,15,233],"2313":[2,1,89],"2314":[1,2,25],"2315":[1,2,47],"2316":[1,2,38],"2317":[1,1,17],"2318":[1,1,55],"2319":[1,1,47],"2320":[2,1,67],"2321":[2,3,45],"2322":[2,1,148],"2323":[5,5,197],"2324":[2,1,246],"2325":[1,1,64],"2326":[1,1,1],"2327":[8,2,7],"2328":[2,10,7],"2329":[8,2,6],"2330":[1,10,8],"2331":[6,2,8],"2332":[7,2,8],"2333":[9,2,11],"2334":[1,11,7],"2335":[9,2,11],"2336":[1,11,7],"2337":[5,2,48],"2338":[5,2,40],"2339":[5,2,40],"2340":[8,2,18],"2341":[1,10,11],"2342":[8,2,7],"2343":[1,10,8],"2344":[7,2,16],"2345":[1,9,12],"2346":[2,9,8],"2347":[9,2,12],"2348":[1,11,10],"2349":[2,11,6],"2350":[7,2,12],"2351":[1,9,10],"2352":[4,2,5],"2353":[5,2,6],"2354":[2,7,6],"2355":[6,2,10],"2356":[2,8,7],"2357":[7,2,9],"2358":[1,9,17],"2359":[2,9,7],"2360":[6,2,9],"2361":[2,8,8],"2362":[4,2,11],"2363":[4,2,5],"2364":[4,2,10],"2365":[1,6,10],"2366":[2,1,1],"2367":[4,2,94],"2368":[4,5,89],"2369":[4,2,34],"2370":[2,2,88],"2371":[5,1,49],"2372":[1,5,137],"2373":[2,5,20],"2374":[1,5,115],"2375":[5,1,89],"2376":[2,5,129],"2377":[2,7,108],"2378":[2,7,37],"2379":[1,5,120],"2380":[2,6,57],"2381":[1,5,132],"2382":[1,5,101],"2383":[1,5,110],"2384":[2,6,183],"2385":[2,6,18],"2386":[3,5,135],"2387":[2,8,55],"2388":[1,5,115],"2389":[2,5,101],"2390":[2,5,98],"2391":[2,5,114],"2392":[2,7,29],"2393":[1,5,107],"2394":[2,6,21],"2395":[1,5,104],"2396":[2,6,21],"2397":[4,5,116],"2398":[6,1,232],"2399":[3,1,52],"2400":[1,3,14],"2401":[1,3,141],"2402":[1,3,1],"2403":[8,4,47],"2404":[1,1,34],"2405":[3,1,32],"2406":[2,4,28],"2407":[3,4,94],"2408":[2,4,54],"2409":[4,1,70],"2410":[4,1,263],"2411":[3,4,338],"2412":[8,4,45],"2413":[3,1,1],"2414":[2,3,64],"2415":[3,3,72],"2416":[3,3,129],"2417":[3,6,69],"2418":[3,3,142],"2419":[5,5,36],"2420":[1,5,183],"2421":[3,6,184],"2422":[3,6,150],"2423":[4,3,75],"2424":[7,6,127],"2425":[6,3,132],"2426":[3,3,46],"2427":[3,3,180],"2428":[2,3,96],"2429":[4,3,37],"2430":[2,1,40],"2431":[12,2,6],"2432":[3,1,51],"2433":[2,1,1],"2434":[4,2,41],"2435":[3,2,15],"2436":[1,2,18],"2437":[1,2,35],"2438":[1,2,30],"2439":[5,2,24],"2440":[3,1,43],"2441":[3,3,47],"2442":[4,3,55],"2443":[2,3,101],"2444":[3,3,41],"2445":[2,5,39],"2446":[3,5,115],"2447":[2,5,127],"2448":[2,5,128],"2449":[5,5,67],"2450":[5,5,28],"2451":[3,3,54],"2452":[2,3,40],"2453":[4,4,86],"2454":[3,3,64],"2455":[4,3,43],"2456":[3,3,34],"2457":[2,3,82],"2458":[1,3,37],"2459":[5,1,267],"2460":[4,1,1],"2461":[5,4,45],"2462":[2,4,22],"2463":[3,4,27],"2464":[3,4,15],"2465":[2,4,54],"2466":[8,1,30],"2467":[2,8,41],"2468":[5,8,47],"2469":[5,8,57],"2470":[7,8,35],"2471":[6,8,48],"2472":[4,8,44],"2473":[6,8,77],"2474":[6,8,54],"2475":[3,1,92],"2476":[1,3,76],"2477":[4,4,33],"2478":[1,7,34],"2479":[5,4,37],"2480":[1,8,40],"2481":[5,4,32],"2482":[1,8,29],"2483":[3,4,62],"2484":[1,7,10],"2485":[1,4,10],"2486":[1,5,10],"2487":[2,4,34],"2488":[1,6,13],"2489":[1,3,49],"2490":[2,3,48],"2491":[2,5,53],"2492":[1,5,111],"2493":[3,5,32],"2494":[1,5,94],"2495":[3,3,195],"2496":[3,5,142],"2497":[5,3,79],"2498":[3,3,63],"2499":[1,5,73],"2500":[1,5,32],"2501":[1,5,212],"2502":[2,1,37],"2503":[2,2,508],"2504":[2,2,56],"2505":[2,2,54],"2506":[2,2,39],"2507":[1,2,22],"2508":[1,2,37],"2509":[2,2,71],"2510":[2,2,15],"2511":[2,2,35],"2512":[2,2,20],"2513":[1,2,44],"2514":[2,2,17],"2515":[2,2,18],"2516":[2,2,80],"2517":[2,2,12],"2518":[2,2,48],"2519":[2,2,97],"2520":[1,2,284],"2521":[2,2,55],"2522":[1,2,58],"2523":[3,2,63],"2524":[3,2,31],"2525":[2,2,97],"2526":[2,2,56],"2527":[4,2,63],"2528":[3,2,69],"2529":[3,2,45],"2530":[2,2,21],"2531":[2,2,37],"2532":[2,2,43],"2533":[2,2,67],"2534":[2,1,31],"2535":[3,2,70],"2536":[2,2,28],"2537":[1,2,58],"2538":[2,2,26],"2539":[1,2,37],"2540":[1,2,50],"2541":[1,2,118],"2542":[2,2,148],"2543":[2,2,62],"2544":[2,2,34],"2545":[4,1,41],"2546":[1,4,68],"2547":[1,4,57],"2548":[2,1,120],"2549":[2,1,35],"2550":[3,2,99],"2551":[3,4,104],"2552":[4,4,79],"2553":[5,2,53],"2554":[1,7,121],"2555":[3,7,100],"2556":[2,10,154],"2557":[3,10,101],"2558":[3,1,44],"2559":[2,1,100],"2560":[2,2,287],"2561":[1,2,159],"2562":[3,2,181],"2563":[1,2,66],"2564":[1,2,56],"2565":[2,1,145],"2566":[1,2,162],"2567":[3,2,1],"2568":[3,4,77],"2569":[3,4,75],"2570":[5,4,49],"2571":[2,2,14],"2572":[3,1,113],"2573":[1,3,81],"2574":[2,3,26],"2575":[4,1,44],"2576":[7,4,83],"2577":[4,4,82],"2578":[8,4,92],"2579":[6,4,85],"2580":[3,4,91],"2581":[3,4,13],"2582":[2,1,95],"2583":[3,1,126],"2584":[4,3,56],"2585":[8,3,59],"2586":[7,3,39],"2587":[3,3,99],"2588":[8,3,69],"2589":[5,3,39],"2590":[3,3,59],"2591":[5,1,72],"2592":[1,5,61],"2593":[2,5,29],"2594":[3,7,89],"2595":[3,7,29],"2596":[4,7,29],"2597":[3,5,1],"2598":[3,8,59],"2599":[4,8,64],"2600":[5,8,111],"2601":[4,8,77],"2602":[3,8,64],"2603":[3,5,84],"2604":[3,1,16],"2605":[7,3,173],"2606":[6,3,47],"2607":[6,6,87],"2608":[3,6,69],"2609":[7,3,124],"2610":[4,3,80],"2611":[5,1,31],"2612":[2,5,79],"2613":[5,5,48],"2614":[1,8,35],"2615":[1,8,58],"2616":[1,8,15],"2617":[1,8,14],"2618":[1,8,15],"2619":[1,8,102],"2620":[1,8,57],"2621":[4,5,132],"2622":[5,5,92],"2623":[3,1,19],"2624":[7,1,1],"2625":[12,7,79],"2626":[3,1,66],"2627":[3,3,227],"2628":[7,1,70],"2629":[11,7,42],"2630":[3,7,128],"2631":[8,1,67],"2632":[4,8,124],"2633":[2,8,153],"2634":[3,8,25],"2635":[2,1,20],"2636":[2,2,25],"2637":[3,2,14],"2638":[3,2,22],"2639":[2,2,13],"2640":[3,1,1],"2641":[1,3,3],"2642":[1,3,3],"2643":[3,1,117],"2644":[1,3,160],"2645":[1,3,139],"2646":[6,1,90],"2647":[1,1,1],"2648":[2,1,24],"2649":[1,1,34],"2650":[5,1,37],"2651":[5,5,82],"2652":[2,5,77],"2653":[4,5,19],"2654":[4,1,1],"2655":[3,4,80],"2656":[3,4,82],"2657":[4,1,56],"2658":[3,4,39],"2659":[2,6,47],"2660":[4,6,56],"2661":[2,6,65],"2662":[2,6,66],"2663":[2,4,1],"2664":[2,5,40],"2665":[3,5,37],"2666":[8,1,79],"2667":[4,1,33],"2668":[1,4,1],"2669":[1,5,104],"2670":[3,5,28],"2671":[2,6,141],"2672":[4,4,37],"2673":[1,4,86],"2674":[5,1,18],"2675":[3,5,80],"2676":[7,1,293],"2677":[4,1,96],"2678":[5,4,162],"2679":[5,4,93],"2680":[3,4,67],"2681":[2,1,16],"2682":[1,2,43],"2683":[1,2,65],"2684":[2,2,165],"2685":[4,1,115],"2686":[5,4,1],"2687":[2,7,121],"2688":[3,7,66],"2689":[11,4,84],"2690":[7,4,34],"2691":[7,4,53],"2692":[3,1,33],"2693":[1,3,12],"2694":[2,4,73],"2695":[2,4,57],"2696":[5,3,39],"2697":[2,8,23],"2698":[2,8,23],"2699":[2,8,15],"2700":[6,3,89],"2701":[4,3,25],"2702":[4,6,110],"2703":[3,6,54],"2704":[3,3,78],"2705":[5,3,79],"2706":[3,3,57],"2707":[5,1,164],"2708":[2,5,38],"2709":[2,5,42],"2710":[2,7,97],"2711":[2,7,36],"2712":[2,9,48],"2713":[3,9,91],"2714":[2,7,67],"2715":[2,5,39],"2716":[2,7,16],"2717":[2,7,17],"2718":[2,1,44],"2719":[4,2,253],"2720":[2,2,101],"2721":[2,2,601],"2722":[2,2,194],"2723":[1,2,108],"2724":[2,2,102],"2725":[3,2,93],"2726":[3,1,43],"2727":[2,3,59],"2728":[4,3,81],"2729":[4,3,66],"2730":[8,3,12],"2731":[3,11,32],"2732":[6,11,54],"2733":[2,3,1],"2734":[3,5,99],"2735":[3,5,42],"2736":[3,3,1],"2737":[3,6,19],"2738":[4,6,21],"2739":[3,6,19],"2740":[4,3,42],"2741":[4,3,30],"2742":[2,3,35],"2743":[1,3,56],"2744":[2,1,91],"2745":[2,2,65],"2746":[2,1,157],"2747":[3,2,166],"2748":[4,2,240],"2749":[4,2,338],"2750":[4,2,518],"2751":[4,1,76],"2752":[2,4,31],"2753":[4,4,1],"2754":[4,5,71],"2755":[4,5,19],"2756":[4,4,13],"2757":[5,4,90],"2758":[3,1,98],"2759":[2,3,18],"2760":[3,3,130],"2761":[3,3,67],"2762":[3,3,58],"2763":[3,3,37],"2764":[3,3,27],"2765":[6,1,57],"2766":[3,1,108],"2767":[2,3,68],"2768":[3,3,86],"2769":[3,3,70],"2770":[3,3,146],"2771":[3,3,72],"2772":[3,3,51],"2773":[3,3,42],"2774":[6,1,13],"2775":[5,6,188],"2776":[4,6,190],"2777":[5,6,100],"2778":[3,6,50],"2779":[1,9,1],"2780":[3,10,40],"2781":[3,10,56],"2782":[10,1,39],"2783":[4,10,16],"2784":[7,13,51],"2785":[1,20,26],"2786":[8,13,76],"2787":[1,21,36],"2788":[5,10,82],"2789":[3,10,38],"2790":[3,10,14],"2791":[6,10,53],"2792":[3,10,60],"2793":[2,10,37],"2794":[4,1,1],"2795":[1,4,21],"2796":[1,4,18],"2797":[1,4,14],"2798":[1,4,27],"2799":[1,4,13],"2800":[1,4,23],"2801":[1,4,22],"2802":[1,4,16],"2803":[1,4,10],"2804":[1,4,14],"2805":[1,4,20],"2806":[2,4,23],"2807":[1,4,13],"2808":[1,4,7],"2809":[1,4,8],"2810":[1,4,23],"2811":[1,4,17],"2812":[2,4,22],"2813":[1,4,21],"2814":[2,4,15],"2815":[2,4,10],"2816":[1,4,19],"2817":[1,4,17],"2818":[2,4,29],"2819":[1,4,14],"2820":[1,4,21],"2821":[1,4,28],"2822":[1,4,21],"2823":[1,4,9],"2824":[1,4,21],"2825":[1,4,16],"2826":[5,4,17],"2827":[2,4,34],"2828":[1,4,28],"2829":[2,4,18],"2830":[1,4,21],"2831":[1,4,14],"2832":[1,4,18],"2833":[1,4,30],"2834":[3,4,28],"2835":[1,4,24],"2836":[2,4,23],"2837":[1,4,34],"2838":[1,4,25],"2839":[1,4,34],"2840":[2,4,24],"2841":[1,4,12],"2842":[5,4,13],"2843":[10,1,23],"2844":[3,1,101],"2845":[2,3,81],"2846":[2,3,43],"2847":[2,3,96],"2848":[1,3,35],"2849":[1,3,64],"2850":[1,3,83],"2851":[1,3,55],"2852":[2,3,19],"2853":[1,3,30],"2854":[2,3,50],"2855":[1,3,20],"2856":[2,3,34],"2857":[1,3,50],"2858":[1,3,38],"2859":[1,3,9],"2860":[1,3,36],"2861":[3,3,36],"2862":[1,3,176],"2863":[2,3,43],"2864":[2,3,165],"2865":[1,3,101],"2866":[2,3,21],"2867":[2,3,27],"2868":[2,3,38],"2869":[3,3,37],"2870":[1,3,113],"2871":[2,3,178],"2872":[1,3,50],"2873":[2,3,132],"2874":[1,3,25],"2875":[1,3,96],"2876":[1,3,51],"2877":[3,1,109],"2878":[5,3,59],"2879":[2,3,122],"2880":[2,3,160],"2881":[6,1,52],"2882":[3,6,174],"2883":[3,6,75],"2884":[2,6,51],"2885":[1,6,54],"2886":[2,6,62],"2887":[2,6,131],"2888":[2,1,71],"2889":[2,1,23],"2890":[2,2,34],"2891":[2,2,11],"2892":[2,2,21],"2893":[3,1,1],"2894":[2,3,77],"2895":[4,3,129],"2896":[8,7,80],"2897":[6,7,39],"2898":[2,1,26],"2899":[2,1,70],"2900":[2,1,67],"2901":[2,1,71],"2902":[4,1,39],"2903":[2,4,106],"2904":[1,6,87],"2905":[3,6,280],"2906":[5,4,107],"2907":[1,7,58],"2908":[4,8,31],"2909":[4,8,30],"2910":[4,8,28],"2911":[2,7,66],"2912":[2,7,198],"2913":[5,7,137],"2914":[3,4,142],"2915":[2,4,121],"2916":[5,5,76],"2917":[5,5,101],"2918":[2,4,171],"2919":[3,5,170],"2920":[3,5,89],"2921":[2,4,218],"2922":[2,6,42],"2923":[2,4,165],"2924":[11,4,84],"2925":[9,4,33],"2926":[4,1,45],"2927":[1,4,108],"2928":[3,4,76],"2929":[2,7,98],"2930":[5,9,138],"2931":[2,9,74],"2932":[3,9,85],"2933":[2,9,146],"2934":[2,1,95],"2935":[4,2,39],"2936":[3,2,78],"2937":[7,2,145],"2938":[3,2,58],"2939":[3,2,45],"2940":[3,2,53],"2941":[2,1,132],"2942":[2,1,181]},"averageFieldLength":[3.641522256201156,5.007815154604132,53.14203194019706],"storedFields":{"0":{"title":"QMK Breaking Change - 2019 Aug 30","titles":[]},"1":{"title":"Core code formatting with clang-format","titles":["QMK Breaking Change - 2019 Aug 30"]},"2":{"title":"LUFA USB descriptor cleanup","titles":["QMK Breaking Change - 2019 Aug 30"]},"3":{"title":"Migrating ACTION_LAYER_MOMENTARY() entries in fn_actions to MO() keycodes","titles":["QMK Breaking Change - 2019 Aug 30"]},"4":{"title":"Update Atreus to current code conventions","titles":["QMK Breaking Change - 2019 Aug 30"]},"5":{"title":"Backport changes to keymap language files from ZSA fork","titles":["QMK Breaking Change - 2019 Aug 30"]},"6":{"title":"Update repo to use LUFA as a git submodule","titles":["QMK Breaking Change - 2019 Aug 30"]},"7":{"title":"Migrating ACTION_BACKLIGHT_*() entries in fn_actions to BL_ keycodes","titles":["QMK Breaking Change - 2019 Aug 30"]},"8":{"title":"Remove KC_DELT alias in favor of KC_DEL","titles":["QMK Breaking Change - 2019 Aug 30"]},"9":{"title":"QMK Breaking Change - 2020 Feb 29 Changelog","titles":[]},"10":{"title":"Update ChibiOS/ChibiOS-Contrib/uGFX submodules","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"11":{"title":"Fix ChibiOS timer overflow for 16-bit SysTick devices","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"12":{"title":"Update LUFA submodule","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"13":{"title":"Encoder flip","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"14":{"title":"Adding support for BACKLIGHT_ON_STATE for hardware PWM backlight","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"15":{"title":"Migrating ACTION_LAYER_TAP_KEY() entries in fn_actions to LT() keycodes","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"16":{"title":"Moving backlight keycode handling to process_keycode/","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"17":{"title":"Refactor Planck keymaps to use Layout Macros","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"18":{"title":"GON NerD codebase refactor","titles":["QMK Breaking Change - 2020 Feb 29 Changelog"]},"19":{"title":"QMK Breaking Change - 2020 May 30 Changelog","titles":[]},"20":{"title":"Core Changes","titles":["QMK Breaking Change - 2020 May 30 Changelog"]},"21":{"title":"Converting V-USB usbdrv to a submodule","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"22":{"title":"Unify Tap Hold functions and documentation","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"23":{"title":"Python Required In The Build Process","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"24":{"title":"Upgrade from tinyprintf to mpaland/printf","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"25":{"title":"Fixed RGB_DISABLE_AFTER_TIMEOUT to be seconds based & small internals cleanup","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"26":{"title":"Switch to qmk forks for everything","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"27":{"title":"code cleanup regarding deprecated macro PLAY_NOTE_ARRAY by replacing it with PLAY_SONG","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"28":{"title":"fixing wrong configuration of AUDIO feature","titles":["QMK Breaking Change - 2020 May 30 Changelog","Core Changes"]},"29":{"title":"Keyboard Refactors","titles":["QMK Breaking Change - 2020 May 30 Changelog"]},"30":{"title":"Migrating Lily58 to use split_common","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors"]},"31":{"title":"To migrate existing Lily58 firmware:","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors","Migrating Lily58 to use split_common"]},"32":{"title":"Refactor zinc to use split_common","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors"]},"33":{"title":"Refactor of TKC1800 to use common OLED code","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors"]},"34":{"title":"To migrate existing TKC1800 firmware:","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors","Refactor of TKC1800 to use common OLED code"]},"35":{"title":"Split HHKB to ANSI and JP layouts and Add VIA support for each","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors"]},"36":{"title":"Migrating existing HHKB keymaps","titles":["QMK Breaking Change - 2020 May 30 Changelog","Keyboard Refactors","Split HHKB to ANSI and JP layouts and Add VIA support for each"]},"37":{"title":"Keyboard Moves","titles":["QMK Breaking Change - 2020 May 30 Changelog"]},"38":{"title":"Keycode Migration PRs","titles":["QMK Breaking Change - 2020 May 30 Changelog"]},"39":{"title":"QMK Breaking Change - 2020 Aug 29 Changelog","titles":[]},"40":{"title":"Changes Requiring User Action","titles":["QMK Breaking Change - 2020 Aug 29 Changelog"]},"41":{"title":"Relocated Keyboards","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action"]},"42":{"title":"The Key Company project consolidation (","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"43":{"title":"relocating boards by flehrad to flehrad/ folder (","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"44":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action"]},"45":{"title":"Keebio RGB wiring update (","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action","Updated Keyboard Codebases"]},"46":{"title":"Changes to Core Functionality","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Changes Requiring User Action"]},"47":{"title":"Core Changes","titles":["QMK Breaking Change - 2020 Aug 29 Changelog"]},"48":{"title":"Fixes","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Core Changes"]},"49":{"title":"Additions and Enhancements","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Core Changes"]},"50":{"title":"Clean-ups and Optimizations","titles":["QMK Breaking Change - 2020 Aug 29 Changelog","Core Changes"]},"51":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Change - 2020 Aug 29 Changelog"]},"52":{"title":"QMK Breaking Change - 2020 Nov 28 Changelog","titles":[]},"53":{"title":"Changes Requiring User Action","titles":["QMK Breaking Change - 2020 Nov 28 Changelog"]},"54":{"title":"Relocated Keyboards","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action"]},"55":{"title":"Reduce Helix keyboard build variation (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"56":{"title":"Update the Speedo firmware for v3.0 (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"57":{"title":"Maartenwut/Maarten name change to evyd13/Evy (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"58":{"title":"Xelus Valor and Dawn60 Refactors (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Relocated Keyboards"]},"59":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action"]},"60":{"title":"AEboards EXT65 Refactor (","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Changes Requiring User Action","Updated Keyboard Codebases"]},"61":{"title":"Core Changes","titles":["QMK Breaking Change - 2020 Nov 28 Changelog"]},"62":{"title":"Fixes","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Core Changes"]},"63":{"title":"Additions and Enhancements","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Core Changes"]},"64":{"title":"Clean-ups and Optimizations","titles":["QMK Breaking Change - 2020 Nov 28 Changelog","Core Changes"]},"65":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Change - 2020 Nov 28 Changelog"]},"66":{"title":"QMK Breaking Changes - 2021 February 27 Changelog","titles":[]},"67":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 February 27 Changelog"]},"68":{"title":"Core Changes","titles":["QMK Breaking Changes - 2021 February 27 Changelog"]},"69":{"title":"ChibiOS Update and Config Migration","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Core Changes"]},"70":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Core Changes"]},"71":{"title":"Detailed Change List","titles":["QMK Breaking Changes - 2021 February 27 Changelog"]},"72":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"73":{"title":"Fixes","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"74":{"title":"Additions and Enhancements","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"75":{"title":"Clean-ups and Optimizations","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"76":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"77":{"title":"ChibiOS Update and Config Migration","titles":["QMK Breaking Changes - 2021 February 27 Changelog","Detailed Change List"]},"78":{"title":"QMK Breaking Changes - 2021 May 29 Changelog","titles":[]},"79":{"title":"Notable Changes","titles":["QMK Breaking Changes - 2021 May 29 Changelog"]},"80":{"title":"RGB Matrix support for split common (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"81":{"title":"Teensy 3.6 support (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"82":{"title":"New command: qmk console (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"83":{"title":"Improved command: qmk config","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"84":{"title":"LED Matrix Improvements (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Notable Changes"]},"85":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 May 29 Changelog"]},"86":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action"]},"87":{"title":"Bootmagic Deprecation and Refactor (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action"]},"88":{"title":"Tentative Deprecation Schedule","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action","Bootmagic Deprecation and Refactor ("]},"89":{"title":"Removal of LAYOUT_kc (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action"]},"90":{"title":"Encoder callbacks are now boolean (","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Changes Requiring User Action"]},"91":{"title":"Core Changes","titles":["QMK Breaking Changes - 2021 May 29 Changelog"]},"92":{"title":"Fixes","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Core Changes"]},"93":{"title":"Additions and Enhancements","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Core Changes"]},"94":{"title":"Clean-ups and Optimizations","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Core Changes"]},"95":{"title":"QMK Infrastructure and Internals","titles":["QMK Breaking Changes - 2021 May 29 Changelog","Core Changes"]},"96":{"title":"QMK Breaking Changes - 2021 August 28 Changelog","titles":[]},"97":{"title":"Notable Features","titles":["QMK Breaking Changes - 2021 August 28 Changelog"]},"98":{"title":"Combo processing improvements (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable Features"]},"99":{"title":"Key Overrides (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable Features"]},"100":{"title":"Digitizer support (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable Features"]},"101":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 August 28 Changelog"]},"102":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Changes Requiring User Action"]},"103":{"title":"Bootmagic Full Removal (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Changes Requiring User Action"]},"104":{"title":"Bootmagic Full Deprecation Schedule","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Changes Requiring User Action","Bootmagic Full Removal ("]},"105":{"title":"DIP switch callbacks are now boolean (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Changes Requiring User Action"]},"106":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2021 August 28 Changelog"]},"107":{"title":"Split transport improvements","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes"]},"108":{"title":"Teensy 4.x support (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes"]},"109":{"title":"Data Driven Improvements (","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes"]},"110":{"title":"Tags","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes","Data Driven Improvements ("]},"111":{"title":"Dot Notation","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes","Data Driven Improvements ("]},"112":{"title":"New configuration keys","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes","Data Driven Improvements ("]},"113":{"title":"Codebase restructure and cleanup","titles":["QMK Breaking Changes - 2021 August 28 Changelog","Notable core changes"]},"114":{"title":"Full changelist","titles":["QMK Breaking Changes - 2021 August 28 Changelog"]},"115":{"title":"QMK Breaking Changes - 2021 November 27 Changelog","titles":[]},"116":{"title":"2000 keyboards!","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"117":{"title":"Notable Features","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"118":{"title":"Expanded Pointing Device support (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable Features"]},"119":{"title":"Dynamic Tapping Term (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable Features"]},"120":{"title":"Macros in JSON keymaps (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable Features"]},"121":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"122":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"123":{"title":"Squeezing space out of AVR (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"124":{"title":"Require explicit enabling of RGB Matrix modes (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"125":{"title":"OLED task refactoring (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"126":{"title":"Bootmagic Full Removal (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"127":{"title":"Bootmagic Full Deprecation Schedule: Complete!","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action","Bootmagic Full Removal ("]},"128":{"title":"Remove QWIIC_DRIVERS (","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Changes Requiring User Action"]},"129":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"130":{"title":"New MCU Support","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable core changes"]},"131":{"title":"EEPROM Changes","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable core changes"]},"132":{"title":"Compilation Database","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable core changes"]},"133":{"title":"Codebase restructure and cleanup","titles":["QMK Breaking Changes - 2021 November 27 Changelog","Notable core changes"]},"134":{"title":"Full changelist","titles":["QMK Breaking Changes - 2021 November 27 Changelog"]},"135":{"title":"QMK Breaking Changes - 2022 May 28 Changelog","titles":[]},"136":{"title":"Notable Features","titles":["QMK Breaking Changes - 2022 May 28 Changelog"]},"137":{"title":"Caps Word (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Notable Features"]},"138":{"title":"Quantum Painter (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Notable Features"]},"139":{"title":"Encoder Mapping (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Notable Features"]},"140":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2022 May 28 Changelog"]},"141":{"title":"RESET => QK_BOOT (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Changes Requiring User Action"]},"142":{"title":"Sendstring keycode overhaul (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Changes Requiring User Action"]},"143":{"title":"Pillow Installation (","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Changes Requiring User Action"]},"144":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2022 May 28 Changelog","Changes Requiring User Action"]},"145":{"title":"Full changelist","titles":["QMK Breaking Changes - 2022 May 28 Changelog"]},"146":{"title":"QMK Breaking Changes - 2022 February 26 Changelog","titles":[]},"147":{"title":"Notable Features","titles":["QMK Breaking Changes - 2022 February 26 Changelog"]},"148":{"title":"Default USB Polling rate now 1kHz (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable Features"]},"149":{"title":"Split support for pointing devices (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable Features"]},"150":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2022 February 26 Changelog"]},"151":{"title":"Legacy macro and action_function system removed (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Changes Requiring User Action"]},"152":{"title":"Create a build error if no bootloader is specified (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Changes Requiring User Action"]},"153":{"title":"Rename AdafruitBLE to BluefruitLE (","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Changes Requiring User Action"]},"154":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Changes Requiring User Action"]},"155":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2022 February 26 Changelog"]},"156":{"title":"New MCU Support","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable core changes"]},"157":{"title":"New Drivers","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable core changes"]},"158":{"title":"LED","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable core changes","New Drivers"]},"159":{"title":"GPIO","titles":["QMK Breaking Changes - 2022 February 26 Changelog","Notable core changes","New Drivers"]},"160":{"title":"Full changelist","titles":["QMK Breaking Changes - 2022 February 26 Changelog"]},"161":{"title":"QMK Breaking Changes - 2022 August 27 Changelog","titles":[]},"162":{"title":"Notable Features","titles":["QMK Breaking Changes - 2022 August 27 Changelog"]},"163":{"title":"Add Raspberry Pi RP2040 support (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable Features"]},"164":{"title":"Allow qmk flash to use prebuilt firmware binaries (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable Features"]},"165":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2022 August 27 Changelog"]},"166":{"title":"Default layers dropped from 32 to 16 (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action"]},"167":{"title":"RESET => QK_BOOT (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action"]},"168":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action"]},"169":{"title":"Data-driven USB IDs Refactoring (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action"]},"170":{"title":"Deprecation Schedule","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Changes Requiring User Action","Data-driven USB IDs Refactoring ("]},"171":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2022 August 27 Changelog"]},"172":{"title":"Board converters (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable core changes"]},"173":{"title":"Add cli command to import keyboard|keymap|kbfirmware (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable core changes"]},"174":{"title":"Generic wear-leveling for EEPROM emulation (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable core changes"]},"175":{"title":"Pointing Device Improvements (","titles":["QMK Breaking Changes - 2022 August 27 Changelog","Notable core changes"]},"176":{"title":"Full changelist","titles":["QMK Breaking Changes - 2022 August 27 Changelog"]},"177":{"title":"QMK Breaking Changes - 2022 November 26 Changelog","titles":[]},"178":{"title":"Notable Features","titles":["QMK Breaking Changes - 2022 November 26 Changelog"]},"179":{"title":"Autocorrect (","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Notable Features"]},"180":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2022 November 26 Changelog"]},"181":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"182":{"title":"Keycodes refactoring","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"183":{"title":"Configuration Item Refactoring","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"184":{"title":"Data-driven USB IDs Refactoring (","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"185":{"title":"LED Indicator callback refactoring (","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"186":{"title":"Unicode mode refactoring","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Changes Requiring User Action"]},"187":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2022 November 26 Changelog"]},"188":{"title":"Keycodes refactoring","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Notable core changes"]},"189":{"title":"Board Converters","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Notable core changes"]},"190":{"title":"Pointing and Digitizer device updates","titles":["QMK Breaking Changes - 2022 November 26 Changelog","Notable core changes"]},"191":{"title":"Full changelist","titles":["QMK Breaking Changes - 2022 November 26 Changelog"]},"192":{"title":"QMK Breaking Changes - 2023 February 26 Changelog","titles":[]},"193":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2023 February 26 Changelog"]},"194":{"title":"IGNORE_MOD_TAP_INTERRUPT behaviour changes (","titles":["QMK Breaking Changes - 2023 February 26 Changelog","Changes Requiring User Action"]},"195":{"title":"TAPPING_FORCE_HOLD => QUICK_TAP_TERM (","titles":["QMK Breaking Changes - 2023 February 26 Changelog","Changes Requiring User Action"]},"196":{"title":"Leader Key Rework {#leader-key-rework (","titles":["QMK Breaking Changes - 2023 February 26 Changelog","Changes Requiring User Action"]},"197":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2023 February 26 Changelog","Changes Requiring User Action"]},"198":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2023 February 26 Changelog"]},"199":{"title":"Full changelist","titles":["QMK Breaking Changes - 2023 February 26 Changelog"]},"200":{"title":"QMK Breaking Changes - 2023 Aug 27 Changelog","titles":[]},"201":{"title":"Notable Changes","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog"]},"202":{"title":"RGB Matrix optimizations (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Notable Changes"]},"203":{"title":"Audio optimizations (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Notable Changes"]},"204":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog"]},"205":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"206":{"title":"Remove encoder in-matrix workaround code (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"207":{"title":"Unicodemap keycodes rename (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"208":{"title":"Remove old OLED API code (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"209":{"title":"Driver naming consolidation (","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog","Changes Requiring User Action"]},"210":{"title":"Full changelist","titles":["QMK Breaking Changes - 2023 Aug 27 Changelog"]},"211":{"title":"QMK Breaking Changes - 2023 May 28 Changelog","titles":[]},"212":{"title":"Notable Changes","titles":["QMK Breaking Changes - 2023 May 28 Changelog"]},"213":{"title":"Repeat last key (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable Changes"]},"214":{"title":"User callback for pre process record (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable Changes"]},"215":{"title":"Consolidate modelm (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable Changes"]},"216":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2023 May 28 Changelog"]},"217":{"title":"IGNORE_MOD_TAP_INTERRUPT behaviour changes (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Changes Requiring User Action"]},"218":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Changes Requiring User Action"]},"219":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2023 May 28 Changelog"]},"220":{"title":"Encoder functionality fallback (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable core changes"]},"221":{"title":"OLED Driver Improvements (","titles":["QMK Breaking Changes - 2023 May 28 Changelog","Notable core changes"]},"222":{"title":"Full changelist","titles":["QMK Breaking Changes - 2023 May 28 Changelog"]},"223":{"title":"QMK Breaking Changes - 2023 November 26 Changelog","titles":[]},"224":{"title":"Notable Features","titles":["QMK Breaking Changes - 2023 November 26 Changelog"]},"225":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2023 November 26 Changelog"]},"226":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Changes Requiring User Action"]},"227":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2023 November 26 Changelog"]},"228":{"title":"External Userspace (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"229":{"title":"Improve and Cleanup Shutdown callbacks (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"230":{"title":"OLED Force Flush (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"231":{"title":"Switch statement helpers for keycode ranges (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"232":{"title":"Quantum Painter OLED support (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"233":{"title":"RGB/LED lighting driver naming and cleanup (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"234":{"title":"Peripheral subsystem enabling (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"235":{"title":"NKRO on V-USB boards (","titles":["QMK Breaking Changes - 2023 November 26 Changelog","Notable core changes"]},"236":{"title":"Full changelist","titles":["QMK Breaking Changes - 2023 November 26 Changelog"]},"237":{"title":"QMK Breaking Changes - 2024 February 25 Changelog","titles":[]},"238":{"title":"Notable Features","titles":["QMK Breaking Changes - 2024 February 25 Changelog"]},"239":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2024 February 25 Changelog"]},"240":{"title":"Windows Driver Changes (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Changes Requiring User Action"]},"241":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Changes Requiring User Action"]},"242":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2024 February 25 Changelog"]},"243":{"title":"Renaming Arduino-style GPIO pin functions (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"244":{"title":"I2C driver API Changes (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"245":{"title":"Renaming Bootmagic Lite => Bootmagic (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"246":{"title":"Threshold for automatic mouse layer activation (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"247":{"title":"DIP Switch Mapping (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"248":{"title":"Quantum Painter updates (","titles":["QMK Breaking Changes - 2024 February 25 Changelog","Notable core changes"]},"249":{"title":"Full changelist","titles":["QMK Breaking Changes - 2024 February 25 Changelog"]},"250":{"title":"QMK Breaking Changes - 2024 May 26 Changelog","titles":[]},"251":{"title":"Notable Features","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"252":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"253":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action"]},"254":{"title":"Remove deprecated quantum keycodes (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action"]},"255":{"title":"P3D Spacey Layout Updates (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action"]},"256":{"title":"MechKeys ACR60 Layout Updates (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action"]},"257":{"title":"LAYOUT_hhkb","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action","MechKeys ACR60 Layout Updates ("]},"258":{"title":"LAYOUT_true_hhkb","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action","MechKeys ACR60 Layout Updates ("]},"259":{"title":"LAYOUT_directional","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action","MechKeys ACR60 Layout Updates ("]},"260":{"title":"LAYOUT_mitchsplit","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Changes Requiring User Action","MechKeys ACR60 Layout Updates ("]},"261":{"title":"Notable core changes","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"262":{"title":"Introduction of keyboard.json (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Notable core changes"]},"263":{"title":"Refactor ChibiOS USB endpoints to be fully async (","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Notable core changes"]},"264":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"265":{"title":"Migration of VIA keymaps to VIA team control","titles":["QMK Breaking Changes - 2024 May 26 Changelog","Deprecation Notices"]},"266":{"title":"Full changelist","titles":["QMK Breaking Changes - 2024 May 26 Changelog"]},"267":{"title":"QMK Breaking Changes - 2024 August 25 Changelog","titles":[]},"268":{"title":"Notable Features","titles":["QMK Breaking Changes - 2024 August 25 Changelog"]},"269":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2024 August 25 Changelog"]},"270":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Changes Requiring User Action"]},"271":{"title":"SparkFun Pro Micro RP2040 converter renamed (","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Changes Requiring User Action"]},"272":{"title":"Key Override keymap.c signature change (","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Changes Requiring User Action"]},"273":{"title":"ADNS9800 and PMW33xx firmware upload now opt-in (","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Changes Requiring User Action"]},"274":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2024 August 25 Changelog"]},"275":{"title":"Migration of VIA keymaps to VIA team control","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Deprecation Notices"]},"276":{"title":"ADNS9800 and PMW33xx sensor firmware ROM removal","titles":["QMK Breaking Changes - 2024 August 25 Changelog","Deprecation Notices"]},"277":{"title":"Full changelist","titles":["QMK Breaking Changes - 2024 August 25 Changelog"]},"278":{"title":"QMK Breaking Changes - 2024 November 24 Changelog","titles":[]},"279":{"title":"Notable Features","titles":["QMK Breaking Changes - 2024 November 24 Changelog"]},"280":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2024 November 24 Changelog"]},"281":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2024 November 24 Changelog","Changes Requiring User Action"]},"282":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2024 November 24 Changelog"]},"283":{"title":"RGB Keycode Overhaul (","titles":["QMK Breaking Changes - 2024 November 24 Changelog","Deprecation Notices"]},"284":{"title":"ADNS9800 and PMW33xx sensor firmware ROM removal (","titles":["QMK Breaking Changes - 2024 November 24 Changelog","Deprecation Notices"]},"285":{"title":"Full changelist","titles":["QMK Breaking Changes - 2024 November 24 Changelog"]},"286":{"title":"QMK Breaking Changes - 2025 February 23 Changelog","titles":[]},"287":{"title":"Notable Features","titles":["QMK Breaking Changes - 2025 February 23 Changelog"]},"288":{"title":"Community Modules (","titles":["QMK Breaking Changes - 2025 February 23 Changelog","Notable Features"]},"289":{"title":"Chordal Hold (","titles":["QMK Breaking Changes - 2025 February 23 Changelog","Notable Features"]},"290":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2025 February 23 Changelog"]},"291":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2025 February 23 Changelog","Changes Requiring User Action"]},"292":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2025 February 23 Changelog"]},"293":{"title":"DEFAULT_FOLDER removal (","titles":["QMK Breaking Changes - 2025 February 23 Changelog","Deprecation Notices"]},"294":{"title":"Full changelist","titles":["QMK Breaking Changes - 2025 February 23 Changelog"]},"295":{"title":"QMK Breaking Changes - 2025 May 25 Changelog","titles":[]},"296":{"title":"Notable Features","titles":["QMK Breaking Changes - 2025 May 25 Changelog"]},"297":{"title":"Flow Tap (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Notable Features"]},"298":{"title":"Community Modules 1.1.1 (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Notable Features"]},"299":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2025 May 25 Changelog"]},"300":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Changes Requiring User Action"]},"301":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2025 May 25 Changelog"]},"302":{"title":"Deprecation of qmk generate-compilation-database (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"303":{"title":"Deprecation of usb.force_nkro/FORCE_NKRO (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"304":{"title":"CTPC/CONVERT_TO_PROTON_C removal (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"305":{"title":"DEFAULT_FOLDER removal (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"306":{"title":"Converter Pin Compatible updates (","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"307":{"title":"Deprecation of encoder_update_{kb|user}","titles":["QMK Breaking Changes - 2025 May 25 Changelog","Deprecation Notices"]},"308":{"title":"Full changelist","titles":["QMK Breaking Changes - 2025 May 25 Changelog"]},"309":{"title":"QMK Breaking Changes - 2025 Aug 31 Changelog","titles":[]},"310":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog"]},"311":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Changes Requiring User Action"]},"312":{"title":"Mitigate VIA keylogger security issues","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Changes Requiring User Action"]},"313":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog"]},"314":{"title":"DEFAULT_FOLDER removal (","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Deprecation Notices"]},"315":{"title":"Converter Pin Compatible updates (","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Deprecation Notices"]},"316":{"title":"Removal of deprecated RGB and Mouse keycodes (","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog","Deprecation Notices"]},"317":{"title":"Full changelist","titles":["QMK Breaking Changes - 2025 Aug 31 Changelog"]},"318":{"title":"QMK Breaking Changes - 2025 Nov 30 Changelog","titles":[]},"319":{"title":"Notable Features","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog"]},"320":{"title":"Speculative Hold option for mod-taps: hold mods instantly while unsettled","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Notable Features"]},"321":{"title":"Changes Requiring User Action","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog"]},"322":{"title":"Updated Keyboard Codebases","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Changes Requiring User Action"]},"323":{"title":"Reduce tap dance memory usage, move state out of data","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Changes Requiring User Action"]},"324":{"title":"Before:","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Changes Requiring User Action"]},"325":{"title":"After:","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Changes Requiring User Action"]},"326":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog"]},"327":{"title":"Remove override of QK_{LED,RGB}_MATRIX_TOGGLE keycode","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog","Deprecation Notices"]},"328":{"title":"Full changelist","titles":["QMK Breaking Changes - 2025 Nov 30 Changelog"]},"329":{"title":"QMK Breaking Changes - 2026 Feb 22 Changelog","titles":[]},"330":{"title":"Deprecation Notices","titles":["QMK Breaking Changes - 2026 Feb 22 Changelog"]},"331":{"title":"Removal of deprecated GPIO defines (","titles":["QMK Breaking Changes - 2026 Feb 22 Changelog","Deprecation Notices"]},"332":{"title":"Removal of deprecated isLeftHand (","titles":["QMK Breaking Changes - 2026 Feb 22 Changelog","Deprecation Notices"]},"333":{"title":"Full changelist","titles":["QMK Breaking Changes - 2026 Feb 22 Changelog"]},"334":{"title":"Documentation Capabilities","titles":[]},"335":{"title":"Overall capabilities","titles":["Documentation Capabilities"]},"336":{"title":"Dividing lines","titles":["Documentation Capabilities","Overall capabilities"]},"337":{"title":"Images","titles":["Documentation Capabilities","Overall capabilities"]},"338":{"title":"Lists","titles":["Documentation Capabilities","Overall capabilities"]},"339":{"title":"Emoji","titles":["Documentation Capabilities","Overall capabilities"]},"340":{"title":"Direct:","titles":["Documentation Capabilities","Overall capabilities","Emoji"]},"341":{"title":"As colon-name-colon:","titles":["Documentation Capabilities","Overall capabilities","Emoji"]},"342":{"title":"XML Entities","titles":["Documentation Capabilities","Overall capabilities"]},"343":{"title":"Styling","titles":["Documentation Capabilities"]},"344":{"title":"CSS-ish","titles":["Documentation Capabilities","Styling"]},"345":{"title":"Tables","titles":["Documentation Capabilities","Styling"]},"346":{"title":"Indented sections","titles":["Documentation Capabilities","Styling"]},"347":{"title":"Keyboard keys","titles":["Documentation Capabilities","Styling"]},"348":{"title":"Code Blocks","titles":["Documentation Capabilities","Styling"]},"349":{"title":"Sub/Superscript","titles":["Documentation Capabilities","Styling"]},"350":{"title":"Tabs","titles":["Documentation Capabilities","Styling"]},"351":{"title":"** Tab one **","titles":["Documentation Capabilities","Styling","Tabs"]},"352":{"title":"** Nested one **","titles":["Documentation Capabilities","Styling","Tabs","** Tab one **"]},"353":{"title":"** Nested two **","titles":["Documentation Capabilities","Styling","Tabs","** Tab one **"]},"354":{"title":"** Tab two **","titles":["Documentation Capabilities","Styling","Tabs"]},"355":{"title":"** Tab three **","titles":["Documentation Capabilities","Styling","Tabs"]},"356":{"title":"Details sections","titles":["Documentation Capabilities"]},"357":{"title":"Embed","titles":["Documentation Capabilities"]},"358":{"title":"QMK Compiler Development Guide","titles":[]},"359":{"title":"Overview","titles":[]},"360":{"title":"Workers","titles":[]},"361":{"title":"API Service","titles":[]},"362":{"title":"@app.route('/v1/compile', methods=['POST'])","titles":["API Service"]},"363":{"title":"@app.route('/v1/compile/<string:job_id>', methods=['GET'])","titles":["API Service"]},"364":{"title":"@app.route('/v1/compile/<string:job_id>/download', methods=['GET'])","titles":["API Service"]},"365":{"title":"@app.route('/v1/compile/<string:job_id>/source', methods=['GET'])","titles":["API Service"]},"366":{"title":"Development Environment Setup","titles":[]},"367":{"title":"QMK API","titles":[]},"368":{"title":"Overview","titles":["QMK API"]},"369":{"title":"Example JSON Payload:","titles":["QMK API","Overview"]},"370":{"title":"Submitting a Compile Job","titles":["QMK API"]},"371":{"title":"Checking The Status","titles":["QMK API"]},"372":{"title":"Examining Finished Results","titles":["QMK API"]},"373":{"title":"Constants","titles":["QMK API"]},"374":{"title":"QMK API","titles":[]},"375":{"title":"App Developers","titles":["QMK API"]},"376":{"title":"Keyboard Maintainers","titles":["QMK API"]},"377":{"title":"Backend Developers","titles":["QMK API"]},"378":{"title":"ARM Debugging using Eclipse","titles":[]},"379":{"title":"Installing the software","titles":["ARM Debugging using Eclipse"]},"380":{"title":"The xPack Manager","titles":["ARM Debugging using Eclipse","Installing the software"]},"381":{"title":"The ARM Toolchain","titles":["ARM Debugging using Eclipse","Installing the software"]},"382":{"title":"Windows build tools","titles":["ARM Debugging using Eclipse","Installing the software"]},"383":{"title":"Programmer/Debugger Drivers","titles":["ARM Debugging using Eclipse","Installing the software"]},"384":{"title":"OpenOCD","titles":["ARM Debugging using Eclipse","Installing the software"]},"385":{"title":"Java","titles":["ARM Debugging using Eclipse","Installing the software"]},"386":{"title":"GNU MCU Eclipse IDE","titles":["ARM Debugging using Eclipse","Installing the software"]},"387":{"title":"Configuring Eclipse","titles":["ARM Debugging using Eclipse"]},"388":{"title":"Building","titles":["ARM Debugging using Eclipse"]},"389":{"title":"Debugging","titles":["ARM Debugging using Eclipse"]},"390":{"title":"Connecting the Debugger","titles":["ARM Debugging using Eclipse","Debugging"]},"391":{"title":"Configuring the Debugger","titles":["ARM Debugging using Eclipse","Debugging"]},"392":{"title":"Running the Debugger.","titles":["ARM Debugging using Eclipse","Debugging"]},"393":{"title":"Breaking Changes","titles":[]},"394":{"title":"What has been included in past Breaking Changes?","titles":["Breaking Changes"]},"395":{"title":"When is the next Breaking Change?","titles":["Breaking Changes"]},"396":{"title":"Important Dates","titles":["Breaking Changes","When is the next Breaking Change?"]},"397":{"title":"What changes will be included?","titles":["Breaking Changes"]},"398":{"title":"Checklists","titles":["Breaking Changes"]},"399":{"title":"4 Weeks Before Merge","titles":["Breaking Changes","Checklists"]},"400":{"title":"2 Weeks Before Merge","titles":["Breaking Changes","Checklists"]},"401":{"title":"1 Week Before Merge","titles":["Breaking Changes","Checklists"]},"402":{"title":"2 Days Before Merge","titles":["Breaking Changes","Checklists"]},"403":{"title":"Day Of Merge","titles":["Breaking Changes","Checklists"]},"404":{"title":"Post-merge operations","titles":["Breaking Changes"]},"405":{"title":"Updating the develop branch","titles":["Breaking Changes","Post-merge operations"]},"406":{"title":"Set up Discord events for the next cycle","titles":["Breaking Changes","Post-merge operations"]},"407":{"title":"Past Breaking Changes","titles":[]},"408":{"title":"Breaking Changes: My Pull Request Was Flagged","titles":[]},"409":{"title":"What Do I Do?","titles":["Breaking Changes: My Pull Request Was Flagged"]},"410":{"title":"Consider Splitting Up Your PR","titles":["Breaking Changes: My Pull Request Was Flagged","What Do I Do?"]},"411":{"title":"Document Your Changes","titles":["Breaking Changes: My Pull Request Was Flagged","What Do I Do?"]},"412":{"title":"Ask for Help","titles":["Breaking Changes: My Pull Request Was Flagged","What Do I Do?"]},"413":{"title":"ChibiOS Upgrade Procedure","titles":[]},"414":{"title":"Getting ChibiOS","titles":["ChibiOS Upgrade Procedure"]},"415":{"title":"Getting ChibiOS-Contrib","titles":["ChibiOS Upgrade Procedure"]},"416":{"title":"Updating submodules","titles":["ChibiOS Upgrade Procedure"]},"417":{"title":"When merging a PR containing an upgrade of ChibiOS/ChibiOS-Contrib:","titles":["ChibiOS Upgrade Procedure"]},"418":{"title":"QMK CLI","titles":[]},"419":{"title":"Overview","titles":["QMK CLI"]},"420":{"title":"Requirements","titles":["QMK CLI","Overview"]},"421":{"title":"Install Using Homebrew (macOS, some Linux)","titles":["QMK CLI","Overview"]},"422":{"title":"Install Using uv","titles":["QMK CLI","Overview"]},"423":{"title":"Install Using pip","titles":["QMK CLI","Overview"]},"424":{"title":"Packaging For Other Operating Systems","titles":["QMK CLI","Overview"]},"425":{"title":"QMK CLI Commands","titles":[]},"426":{"title":"User Commands","titles":[]},"427":{"title":"qmk compile","titles":["User Commands"]},"428":{"title":"qmk flash","titles":["User Commands"]},"429":{"title":"qmk config","titles":["User Commands"]},"430":{"title":"qmk cd","titles":["User Commands"]},"431":{"title":"qmk find","titles":["User Commands"]},"432":{"title":"qmk console","titles":["User Commands"]},"433":{"title":"qmk doctor","titles":["User Commands"]},"434":{"title":"qmk format-json","titles":["User Commands"]},"435":{"title":"qmk info","titles":["User Commands"]},"436":{"title":"qmk json2c","titles":["User Commands"]},"437":{"title":"qmk c2json","titles":["User Commands"]},"438":{"title":"qmk lint","titles":["User Commands"]},"439":{"title":"qmk list-keyboards","titles":["User Commands"]},"440":{"title":"qmk list-keymaps","titles":["User Commands"]},"441":{"title":"qmk migrate","titles":["User Commands"]},"442":{"title":"qmk new-keyboard","titles":["User Commands"]},"443":{"title":"qmk new-keymap","titles":["User Commands"]},"444":{"title":"qmk clean","titles":["User Commands"]},"445":{"title":"qmk via2json","titles":["User Commands"]},"446":{"title":"qmk import-keyboard","titles":["User Commands"]},"447":{"title":"qmk import-keymap","titles":["User Commands"]},"448":{"title":"qmk import-kbfirmware","titles":["User Commands"]},"449":{"title":"External Userspace Commands","titles":[]},"450":{"title":"qmk userspace-add","titles":["External Userspace Commands"]},"451":{"title":"qmk userspace-remove","titles":["External Userspace Commands"]},"452":{"title":"qmk userspace-list","titles":["External Userspace Commands"]},"453":{"title":"qmk userspace-compile","titles":["External Userspace Commands"]},"454":{"title":"qmk userspace-doctor","titles":["External Userspace Commands"]},"455":{"title":"Developer Commands","titles":[]},"456":{"title":"qmk format-text","titles":["Developer Commands"]},"457":{"title":"qmk format-c","titles":["Developer Commands"]},"458":{"title":"qmk docs","titles":["Developer Commands"]},"459":{"title":"qmk generate-docs","titles":["Developer Commands"]},"460":{"title":"qmk generate-rgb-breathe-table","titles":["Developer Commands"]},"461":{"title":"qmk kle2json","titles":["Developer Commands"]},"462":{"title":"qmk format-python","titles":["Developer Commands"]},"463":{"title":"qmk pytest","titles":["Developer Commands"]},"464":{"title":"qmk painter-convert-graphics","titles":["Developer Commands"]},"465":{"title":"qmk painter-make-font-image","titles":["Developer Commands"]},"466":{"title":"qmk painter-convert-font-image","titles":["Developer Commands"]},"467":{"title":"qmk test-c","titles":["Developer Commands"]},"468":{"title":"qmk generate-compilation-database","titles":["Developer Commands"]},"469":{"title":"QMK CLI Configuration","titles":[]},"470":{"title":"Introduction","titles":[]},"471":{"title":"Simple Example","titles":["Introduction"]},"472":{"title":"Setting User Defaults","titles":["Introduction"]},"473":{"title":"CLI Documentation (qmk config)","titles":[]},"474":{"title":"Setting Configuration Values","titles":["CLI Documentation (qmk config)"]},"475":{"title":"Reading Configuration Values","titles":["CLI Documentation (qmk config)"]},"476":{"title":"Entire Configuration Example","titles":["CLI Documentation (qmk config)","Reading Configuration Values"]},"477":{"title":"Whole Section Example","titles":["CLI Documentation (qmk config)","Reading Configuration Values"]},"478":{"title":"Single Key Example","titles":["CLI Documentation (qmk config)","Reading Configuration Values"]},"479":{"title":"Multiple Keys Example","titles":["CLI Documentation (qmk config)","Reading Configuration Values"]},"480":{"title":"Deleting Configuration Values","titles":["CLI Documentation (qmk config)"]},"481":{"title":"Multiple Operations","titles":["CLI Documentation (qmk config)"]},"482":{"title":"User Configuration Options","titles":[]},"483":{"title":"All Configuration Options","titles":[]},"484":{"title":"QMK CLI Development","titles":[]},"485":{"title":"Overview","titles":[]},"486":{"title":"Developer mode:","titles":["Overview"]},"487":{"title":"Subcommands","titles":[]},"488":{"title":"User Interaction","titles":[]},"489":{"title":"Printing Text","titles":["User Interaction"]},"490":{"title":"Logging (cli.log)","titles":["User Interaction","Printing Text"]},"491":{"title":"Printing (cli.echo)","titles":["User Interaction","Printing Text"]},"492":{"title":"Colorizing Text","titles":["User Interaction","Printing Text"]},"493":{"title":"Arguments and Configuration","titles":[]},"494":{"title":"Reading Configuration Values","titles":["Arguments and Configuration"]},"495":{"title":"Setting Configuration Values","titles":["Arguments and Configuration"]},"496":{"title":"Deleting Configuration Values","titles":["Arguments and Configuration"]},"497":{"title":"Writing The Configuration File","titles":["Arguments and Configuration"]},"498":{"title":"Excluding Arguments From Configuration","titles":["Arguments and Configuration"]},"499":{"title":"Testing, and Linting, and Formatting (oh my!)","titles":[]},"500":{"title":"Testing and Linting","titles":["Testing, and Linting, and Formatting (oh my!)"]},"501":{"title":"Formatting","titles":["Testing, and Linting, and Formatting (oh my!)"]},"502":{"title":"Formatting Details","titles":["Testing, and Linting, and Formatting (oh my!)"]},"503":{"title":"Testing Details","titles":["Testing, and Linting, and Formatting (oh my!)"]},"504":{"title":"Linting Details","titles":["Testing, and Linting, and Formatting (oh my!)"]},"505":{"title":"Tab Completion for QMK","titles":[]},"506":{"title":"Setup","titles":["Tab Completion for QMK"]},"507":{"title":"For Your User Only","titles":["Tab Completion for QMK","Setup"]},"508":{"title":"System Wide Symlink","titles":["Tab Completion for QMK","Setup"]},"509":{"title":"System Wide Copy","titles":["Tab Completion for QMK","Setup"]},"510":{"title":"Coding Conventions (C)","titles":[]},"511":{"title":"Auto-formatting with clang-format","titles":[]},"512":{"title":"Coding Conventions (Python)","titles":[]},"513":{"title":"YAPF","titles":[]},"514":{"title":"Imports","titles":[]},"515":{"title":"Import Examples","titles":["Imports"]},"516":{"title":"Statements","titles":[]},"517":{"title":"Naming","titles":[]},"518":{"title":"Names to Avoid","titles":["Naming"]},"519":{"title":"Docstrings","titles":[]},"520":{"title":"Simple docstring example","titles":["Docstrings"]},"521":{"title":"Complex docstring example","titles":["Docstrings"]},"522":{"title":"Function arguments docstring example","titles":["Docstrings"]},"523":{"title":"Exceptions","titles":[]},"524":{"title":"Tuples","titles":[]},"525":{"title":"Lists and Dictionaries","titles":[]},"526":{"title":"Parentheses","titles":[]},"527":{"title":"Format Strings","titles":[]},"528":{"title":"Comprehensions & Generator Expressions","titles":[]},"529":{"title":"Lambdas","titles":[]},"530":{"title":"Conditional Expressions","titles":[]},"531":{"title":"Default Argument Values","titles":[]},"532":{"title":"Properties","titles":[]},"533":{"title":"True/False Evaluations","titles":[]},"534":{"title":"Decorators","titles":[]},"535":{"title":"Threading and Multiprocessing","titles":[]},"536":{"title":"Power Features","titles":[]},"537":{"title":"Type Annotated Code","titles":[]},"538":{"title":"Function length","titles":[]},"539":{"title":"FIXMEs","titles":[]},"540":{"title":"Testing","titles":[]},"541":{"title":"Integration Tests","titles":["Testing"]},"542":{"title":"Unit Tests","titles":["Testing"]},"543":{"title":"Compatible Microcontrollers","titles":[]},"544":{"title":"Atmel AVR","titles":["Compatible Microcontrollers"]},"545":{"title":"ARM","titles":["Compatible Microcontrollers"]},"546":{"title":"STMicroelectronics (STM32)","titles":["Compatible Microcontrollers","ARM"]},"547":{"title":"WestBerryTech (WB32)","titles":["Compatible Microcontrollers","ARM"]},"548":{"title":"Artery (AT32)","titles":["Compatible Microcontrollers","ARM"]},"549":{"title":"NXP (Kinetis)","titles":["Compatible Microcontrollers","ARM"]},"550":{"title":"Raspberry Pi","titles":["Compatible Microcontrollers","ARM"]},"551":{"title":"RISC-V","titles":["Compatible Microcontrollers"]},"552":{"title":"GigaDevice","titles":["Compatible Microcontrollers","RISC-V"]},"553":{"title":"Configuring QMK","titles":[]},"554":{"title":"QMK Default","titles":["Configuring QMK"]},"555":{"title":"Keyboard","titles":["Configuring QMK"]},"556":{"title":"Folders","titles":["Configuring QMK"]},"557":{"title":"Keymap","titles":["Configuring QMK"]},"558":{"title":"The config.h File","titles":[]},"559":{"title":"Hardware Options","titles":["The config.h File"]},"560":{"title":"Features That Can Be Disabled","titles":["The config.h File"]},"561":{"title":"Features That Can Be Enabled","titles":["The config.h File"]},"562":{"title":"Behaviors That Can Be Configured","titles":["The config.h File"]},"563":{"title":"RGB Light Configuration","titles":["The config.h File"]},"564":{"title":"Mouse Key Options","titles":["The config.h File"]},"565":{"title":"Split Keyboard Options","titles":["The config.h File"]},"566":{"title":"Setting Handedness","titles":["The config.h File","Split Keyboard Options"]},"567":{"title":"Defines for handedness","titles":["The config.h File","Split Keyboard Options","Setting Handedness"]},"568":{"title":"Other Options","titles":["The config.h File","Split Keyboard Options"]},"569":{"title":"The rules.mk File","titles":[]},"570":{"title":"Build Options","titles":["The rules.mk File"]},"571":{"title":"AVR MCU Options","titles":["The rules.mk File"]},"572":{"title":"Feature Options","titles":["The rules.mk File"]},"573":{"title":"USB Endpoint Limitations","titles":["The rules.mk File"]},"574":{"title":"QMK Configurator Architecture","titles":[]},"575":{"title":"Overview","titles":[]},"576":{"title":"Detailed Description","titles":[]},"577":{"title":"Configurator Frontend","titles":["Detailed Description"]},"578":{"title":"Keyboard Metadata","titles":["Detailed Description"]},"579":{"title":"QMK API","titles":["Detailed Description"]},"580":{"title":"Compile Job Queued","titles":["Detailed Description","QMK API"]},"581":{"title":"Compile Job Running","titles":["Detailed Description","QMK API"]},"582":{"title":"Compile Job Finished","titles":["Detailed Description","QMK API"]},"583":{"title":"Redis/RQ","titles":["Detailed Description"]},"584":{"title":"QMK Compiler","titles":["Detailed Description"]},"585":{"title":"Adding Default Keymaps to QMK Configurator","titles":[]},"586":{"title":"Technical Information","titles":["Adding Default Keymaps to QMK Configurator"]},"587":{"title":"Example","titles":["Adding Default Keymaps to QMK Configurator"]},"588":{"title":"Caveats","titles":["Adding Default Keymaps to QMK Configurator"]},"589":{"title":"Layers can only be referenced by number","titles":["Adding Default Keymaps to QMK Configurator","Caveats"]},"590":{"title":"No support for custom code of any kind","titles":["Adding Default Keymaps to QMK Configurator","Caveats"]},"591":{"title":"Limited Support for Custom keycodes","titles":["Adding Default Keymaps to QMK Configurator","Caveats"]},"592":{"title":"Additional Reading","titles":["Adding Default Keymaps to QMK Configurator"]},"593":{"title":"QMK Configurator: Step by Step","titles":[]},"594":{"title":"Step 1: Select Your Keyboard","titles":["QMK Configurator: Step by Step"]},"595":{"title":"Step 2: Select Your Keyboard Layout","titles":["QMK Configurator: Step by Step"]},"596":{"title":"Step 3: Name Your Keymap","titles":["QMK Configurator: Step by Step"]},"597":{"title":"Step 4: Define Your Keymap","titles":["QMK Configurator: Step by Step"]},"598":{"title":"Step 5: Save Your Keymap for Future Changes","titles":["QMK Configurator: Step by Step"]},"599":{"title":"Step 6: Compile Your Firmware File","titles":["QMK Configurator: Step by Step"]},"600":{"title":"Next steps: Flashing Your Keyboard","titles":["QMK Configurator: Step by Step"]},"601":{"title":"Configurator Troubleshooting","titles":[]},"602":{"title":"My .json file is not working","titles":["Configurator Troubleshooting"]},"603":{"title":"There are extra spaces in my layout? What do I do?","titles":["Configurator Troubleshooting"]},"604":{"title":"What is the keycode for...","titles":["Configurator Troubleshooting"]},"605":{"title":"It won't compile","titles":["Configurator Troubleshooting"]},"606":{"title":"Problems and Bugs","titles":["Configurator Troubleshooting"]},"607":{"title":"How to Contribute","titles":[]},"608":{"title":"I Don't Want to Read This Whole Thing! I Just Have a Question!","titles":["How to Contribute"]},"609":{"title":"Project Overview","titles":[]},"610":{"title":"Where Can I Go for Help?","titles":[]},"611":{"title":"How Do I Make a Contribution?","titles":[]},"612":{"title":"Coding Conventions","titles":[]},"613":{"title":"General Guidelines","titles":[]},"614":{"title":"Documentation","titles":["General Guidelines"]},"615":{"title":"Previewing the Documentation","titles":["General Guidelines","Documentation"]},"616":{"title":"Keyboards","titles":["General Guidelines"]},"617":{"title":"Quantum/TMK Core","titles":["General Guidelines"]},"618":{"title":"Refactoring","titles":["General Guidelines"]},"619":{"title":"What Does the Code of Conduct Mean for Me?","titles":[]},"620":{"title":"Custom Matrix","titles":[]},"621":{"title":"Prerequisites","titles":["Custom Matrix"]},"622":{"title":"'lite'","titles":["Custom Matrix"]},"623":{"title":"Full Replacement","titles":["Custom Matrix"]},"624":{"title":"How to Customize Your Keyboard's Behavior","titles":[]},"625":{"title":"A Word on Core vs Keyboards vs Keymap","titles":["How to Customize Your Keyboard's Behavior"]},"626":{"title":"Custom Keycodes","titles":[]},"627":{"title":"Defining a New Keycode","titles":["Custom Keycodes"]},"628":{"title":"Programming the Behavior of Any Keycode","titles":["Custom Keycodes"]},"629":{"title":"Example process_record_user() Implementation","titles":["Custom Keycodes","Programming the Behavior of Any Keycode"]},"630":{"title":"process_record_* Function Documentation","titles":["Custom Keycodes","Programming the Behavior of Any Keycode"]},"631":{"title":"Keyboard Initialization Code","titles":[]},"632":{"title":"Keyboard Pre Initialization code","titles":["Keyboard Initialization Code"]},"633":{"title":"Example keyboard_pre_init_user() Implementation","titles":["Keyboard Initialization Code","Keyboard Pre Initialization code"]},"634":{"title":"keyboard_pre_init_* Function Documentation","titles":["Keyboard Initialization Code","Keyboard Pre Initialization code"]},"635":{"title":"Matrix Initialization Code","titles":["Keyboard Initialization Code"]},"636":{"title":"matrix_init_* Function Documentation","titles":["Keyboard Initialization Code","Matrix Initialization Code"]},"637":{"title":"Low-level Matrix Overrides Function Documentation","titles":["Keyboard Initialization Code","Matrix Initialization Code"]},"638":{"title":"Keyboard Post Initialization code","titles":["Keyboard Initialization Code"]},"639":{"title":"Example keyboard_post_init_user() Implementation","titles":["Keyboard Initialization Code","Keyboard Post Initialization code"]},"640":{"title":"keyboard_post_init_* Function Documentation","titles":["Keyboard Initialization Code","Keyboard Post Initialization code"]},"641":{"title":"Matrix Scanning Code","titles":[]},"642":{"title":"Example matrix_scan_* Implementation","titles":["Matrix Scanning Code"]},"643":{"title":"matrix_scan_* Function Documentation","titles":["Matrix Scanning Code"]},"644":{"title":"Keyboard housekeeping","titles":[]},"645":{"title":"Example void housekeeping_task_user(void) implementation","titles":["Keyboard housekeeping"]},"646":{"title":"Keyboard Idling/Wake Code","titles":[]},"647":{"title":"Example suspend_power_down_user() and suspend_wakeup_init_user() Implementation","titles":["Keyboard Idling/Wake Code"]},"648":{"title":"Keyboard suspend/wake Function Documentation","titles":["Keyboard Idling/Wake Code"]},"649":{"title":"Keyboard Shutdown/Reboot Code","titles":[]},"650":{"title":"Example shutdown_kb() Implementation","titles":["Keyboard Shutdown/Reboot Code"]},"651":{"title":"Example shutdown_user() Implementation","titles":["Keyboard Shutdown/Reboot Code"]},"652":{"title":"Keyboard shutdown/reboot Function Documentation","titles":["Keyboard Shutdown/Reboot Code"]},"653":{"title":"Deferred Execution","titles":[]},"654":{"title":"Deferred executor callbacks","titles":["Deferred Execution"]},"655":{"title":"Deferred executor registration","titles":["Deferred Execution"]},"656":{"title":"Extending a deferred execution","titles":["Deferred Execution"]},"657":{"title":"Cancelling a deferred execution","titles":["Deferred Execution"]},"658":{"title":"Deferred callback limits","titles":["Deferred Execution"]},"659":{"title":"Advanced topics","titles":[]},"660":{"title":"Layer Change Code","titles":["Advanced topics"]},"661":{"title":"Persistent Configuration (EEPROM)","titles":["Advanced topics"]},"662":{"title":"Data Driven Configuration","titles":[]},"663":{"title":"History","titles":["Data Driven Configuration"]},"664":{"title":"Overview","titles":["Data Driven Configuration"]},"665":{"title":"Adding an option to info.json","titles":["Data Driven Configuration"]},"666":{"title":"Add it to the schema","titles":["Data Driven Configuration","Adding an option to info.json"]},"667":{"title":"Add a mapping","titles":["Data Driven Configuration","Adding an option to info.json"]},"668":{"title":"Info Key","titles":["Data Driven Configuration","Adding an option to info.json","Add a mapping"]},"669":{"title":"Value Types","titles":["Data Driven Configuration","Adding an option to info.json","Add a mapping"]},"670":{"title":"Add code to extract it","titles":["Data Driven Configuration","Adding an option to info.json"]},"671":{"title":"Add code to generate it","titles":["Data Driven Configuration","Adding an option to info.json"]},"672":{"title":"Documentation Best Practices","titles":[]},"673":{"title":"Page Opening","titles":[]},"674":{"title":"Headings","titles":[]},"675":{"title":"Styled Hint Blocks","titles":[]},"676":{"title":"Important","titles":["Styled Hint Blocks"]},"677":{"title":"General Tips","titles":["Styled Hint Blocks"]},"678":{"title":"Documenting Features","titles":[]},"679":{"title":"Documentation Templates","titles":[]},"680":{"title":"Keymap readme.md Template","titles":["Documentation Templates"]},"681":{"title":"Keyboard readme.md Template","titles":["Documentation Templates"]},"682":{"title":"Bootloader Driver Installation with Zadig","titles":[]},"683":{"title":"Installation","titles":["Bootloader Driver Installation with Zadig"]},"684":{"title":"Recovering from Installation to Wrong Device","titles":["Bootloader Driver Installation with Zadig"]},"685":{"title":"Uninstallation","titles":["Bootloader Driver Installation with Zadig"]},"686":{"title":"List of Known Bootloaders","titles":["Bootloader Driver Installation with Zadig"]},"687":{"title":"ADC Driver","titles":[]},"688":{"title":"Usage","titles":["ADC Driver"]},"689":{"title":"Channels","titles":["ADC Driver"]},"690":{"title":"AVR","titles":["ADC Driver","Channels"]},"691":{"title":"ARM","titles":["ADC Driver","Channels"]},"692":{"title":"STM32","titles":["ADC Driver","Channels","ARM"]},"693":{"title":"RP2040","titles":["ADC Driver","Channels","ARM"]},"694":{"title":"Functions","titles":["ADC Driver"]},"695":{"title":"AVR","titles":["ADC Driver","Functions"]},"696":{"title":"ARM","titles":["ADC Driver","Functions"]},"697":{"title":"Configuration","titles":["ADC Driver"]},"698":{"title":"ARM","titles":["ADC Driver"]},"699":{"title":"APA102 Driver","titles":[]},"700":{"title":"Usage","titles":["APA102 Driver"]},"701":{"title":"Basic Configuration","titles":["APA102 Driver"]},"702":{"title":"API","titles":["APA102 Driver"]},"703":{"title":"void apa102_init(void)","titles":["APA102 Driver","API"]},"704":{"title":"void apa102_set_color(uint16_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["APA102 Driver","API"]},"705":{"title":"Arguments","titles":["APA102 Driver","API","void apa102_set_color(uint16_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"706":{"title":"void apa102_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["APA102 Driver","API"]},"707":{"title":"Arguments","titles":["APA102 Driver","API","void apa102_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"708":{"title":"void apa102_flush(void)","titles":["APA102 Driver","API"]},"709":{"title":"void apa102_set_brightness(uint8_t brightness)","titles":["APA102 Driver","API"]},"710":{"title":"Arguments","titles":["APA102 Driver","API","void apa102_set_brightness(uint8_t brightness)"]},"711":{"title":"Audio Driver","titles":[]},"712":{"title":"AVR","titles":["Audio Driver"]},"713":{"title":"ARM","titles":["Audio Driver"]},"714":{"title":"DAC basic","titles":["Audio Driver","ARM"]},"715":{"title":"DAC additive","titles":["Audio Driver","ARM"]},"716":{"title":"DAC Config","titles":["Audio Driver","ARM"]},"717":{"title":"Notes on buffer size","titles":["Audio Driver","ARM","DAC Config"]},"718":{"title":"PWM hardware","titles":["Audio Driver","ARM"]},"719":{"title":"PWM software","titles":["Audio Driver","ARM"]},"720":{"title":"Testing Notes","titles":["Audio Driver","ARM"]},"721":{"title":"AW20216S Driver","titles":[]},"722":{"title":"Usage","titles":["AW20216S Driver"]},"723":{"title":"Basic Configuration","titles":["AW20216S Driver"]},"724":{"title":"Global Current Control","titles":["AW20216S Driver","Basic Configuration"]},"725":{"title":"ARM/ChibiOS Configuration","titles":["AW20216S Driver"]},"726":{"title":"LED Mapping","titles":["AW20216S Driver"]},"727":{"title":"API","titles":["AW20216S Driver"]},"728":{"title":"struct aw20216s_led_t","titles":["AW20216S Driver","API"]},"729":{"title":"Members","titles":["AW20216S Driver","API","struct aw20216s_led_t"]},"730":{"title":"void aw20216s_init(pin_t cs_pin)","titles":["AW20216S Driver","API"]},"731":{"title":"Arguments","titles":["AW20216S Driver","API","void aw20216s_init(pin_t cs_pin)"]},"732":{"title":"void aw20216s_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["AW20216S Driver","API"]},"733":{"title":"Arguments","titles":["AW20216S Driver","API","void aw20216s_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"734":{"title":"void aw20216s_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["AW20216S Driver","API"]},"735":{"title":"Arguments","titles":["AW20216S Driver","API","void aw20216s_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"736":{"title":"void aw20216s_update_pwm_buffers(pin_t cs_pin, uint8_t index)","titles":["AW20216S Driver","API"]},"737":{"title":"Arguments","titles":["AW20216S Driver","API","void aw20216s_update_pwm_buffers(pin_t cs_pin, uint8_t index)"]},"738":{"title":"Battery Driver","titles":[]},"739":{"title":"Usage","titles":["Battery Driver"]},"740":{"title":"Driver Configuration","titles":["Battery Driver"]},"741":{"title":"ADC Driver","titles":["Battery Driver","Driver Configuration"]},"742":{"title":"Custom Driver","titles":["Battery Driver","Driver Configuration"]},"743":{"title":"EEPROM Driver Configuration","titles":[]},"744":{"title":"Vendor Driver Configuration","titles":["EEPROM Driver Configuration"]},"745":{"title":"STM32 L0/L1 Configuration","titles":["EEPROM Driver Configuration","Vendor Driver Configuration"]},"746":{"title":"I2C Driver Configuration","titles":["EEPROM Driver Configuration"]},"747":{"title":"SPI Driver Configuration","titles":["EEPROM Driver Configuration"]},"748":{"title":"Transient Driver configuration","titles":["EEPROM Driver Configuration"]},"749":{"title":"Wear-leveling Driver Configuration","titles":["EEPROM Driver Configuration"]},"750":{"title":"Wear-leveling Configuration","titles":[]},"751":{"title":"Wear-leveling Embedded Flash Driver Configuration","titles":["Wear-leveling Configuration"]},"752":{"title":"Wear-leveling SPI Flash Driver Configuration","titles":["Wear-leveling Configuration"]},"753":{"title":"Wear-leveling RP2040 Driver Configuration","titles":["Wear-leveling Configuration"]},"754":{"title":"Wear-leveling Legacy EEPROM Emulation Driver Configuration","titles":["Wear-leveling Configuration"]},"755":{"title":"FLASH Driver Configuration","titles":[]},"756":{"title":"SPI FLASH Driver Configuration","titles":["FLASH Driver Configuration"]},"757":{"title":"GPIO Control","titles":[]},"758":{"title":"Macros","titles":["GPIO Control"]},"759":{"title":"Advanced Settings","titles":["GPIO Control"]},"760":{"title":"Atomic Operation","titles":["GPIO Control"]},"761":{"title":"I2C Master Driver","titles":[]},"762":{"title":"Usage","titles":["I2C Master Driver"]},"763":{"title":"I2C Addressing","titles":["I2C Master Driver"]},"764":{"title":"AVR Configuration","titles":["I2C Master Driver"]},"765":{"title":"ChibiOS/ARM Configuration","titles":["I2C Master Driver"]},"766":{"title":"I2Cv1","titles":["I2C Master Driver","ChibiOS/ARM Configuration"]},"767":{"title":"I2Cv2","titles":["I2C Master Driver","ChibiOS/ARM Configuration"]},"768":{"title":"API","titles":["I2C Master Driver"]},"769":{"title":"void i2c_init(void)","titles":["I2C Master Driver","API"]},"770":{"title":"i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"771":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"772":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"773":{"title":"i2c_status_t i2c_transmit_P(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"774":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit_P(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"775":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit_P(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"776":{"title":"i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"777":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)"]},"778":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)"]},"779":{"title":"i2c_status_t i2c_transmit_and_receive(uint8_t address, const uint8_t* tx_data, uint16_t tx_length, uint8_t* rx_data, uint16_t rx_length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"780":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit_and_receive(uint8_t address, const uint8_t* tx_data, uint16_t tx_length, uint8_t* rx_data, uint16_t rx_length, uint16_t timeout)"]},"781":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_transmit_and_receive(uint8_t address, const uint8_t* tx_data, uint16_t tx_length, uint8_t* rx_data, uint16_t rx_length, uint16_t timeout)"]},"782":{"title":"i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"783":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"784":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"785":{"title":"i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"786":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"787":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)"]},"788":{"title":"i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"789":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)"]},"790":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)"]},"791":{"title":"i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)","titles":["I2C Master Driver","API"]},"792":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)"]},"793":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)"]},"794":{"title":"i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)","titles":["I2C Master Driver","API"]},"795":{"title":"Arguments","titles":["I2C Master Driver","API","i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)"]},"796":{"title":"Return Value","titles":["I2C Master Driver","API","i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)"]},"797":{"title":"IS31FL3236 Driver","titles":[]},"798":{"title":"Usage","titles":["IS31FL3236 Driver"]},"799":{"title":"Basic Configuration","titles":["IS31FL3236 Driver"]},"800":{"title":"I²C Addressing","titles":["IS31FL3236 Driver","Basic Configuration"]},"801":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3236 Driver"]},"802":{"title":"LED Mapping","titles":["IS31FL3236 Driver"]},"803":{"title":"API","titles":["IS31FL3236 Driver"]},"804":{"title":"struct is31fl3236_led_t","titles":["IS31FL3236 Driver","API"]},"805":{"title":"Members","titles":["IS31FL3236 Driver","API","struct is31fl3236_led_t"]},"806":{"title":"void is31fl3236_init(uint8_t index)","titles":["IS31FL3236 Driver","API"]},"807":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_init(uint8_t index)"]},"808":{"title":"void is31fl3236_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3236 Driver","API"]},"809":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"810":{"title":"void is31fl3236_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3236 Driver","API"]},"811":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"812":{"title":"void is31fl3236_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3236 Driver","API"]},"813":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"814":{"title":"void is31fl3236_set_value(int index, uint8_t value)","titles":["IS31FL3236 Driver","API"]},"815":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_value(int index, uint8_t value)"]},"816":{"title":"void is31fl3236_set_value_all(uint8_t value)","titles":["IS31FL3236 Driver","API"]},"817":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_value_all(uint8_t value)"]},"818":{"title":"void is31fl3236_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3236 Driver","API"]},"819":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"820":{"title":"void is31fl3236_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3236 Driver","API"]},"821":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_set_led_control_register(uint8_t index, bool value)"]},"822":{"title":"void is31fl3236_update_pwm_buffers(uint8_t index)","titles":["IS31FL3236 Driver","API"]},"823":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_update_pwm_buffers(uint8_t index)"]},"824":{"title":"void is31fl3236_update_led_control_registers(uint8_t index)","titles":["IS31FL3236 Driver","API"]},"825":{"title":"Arguments","titles":["IS31FL3236 Driver","API","void is31fl3236_update_led_control_registers(uint8_t index)"]},"826":{"title":"IS31FL3218 Driver","titles":[]},"827":{"title":"Usage","titles":["IS31FL3218 Driver"]},"828":{"title":"Basic Configuration","titles":["IS31FL3218 Driver"]},"829":{"title":"I²C Addressing","titles":["IS31FL3218 Driver","Basic Configuration"]},"830":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3218 Driver"]},"831":{"title":"LED Mapping","titles":["IS31FL3218 Driver"]},"832":{"title":"API","titles":["IS31FL3218 Driver"]},"833":{"title":"struct is31fl3218_led_t","titles":["IS31FL3218 Driver","API"]},"834":{"title":"Members","titles":["IS31FL3218 Driver","API","struct is31fl3218_led_t"]},"835":{"title":"void is31fl3218_init(void)","titles":["IS31FL3218 Driver","API"]},"836":{"title":"void is31fl3218_write_register(uint8_t reg, uint8_t data)","titles":["IS31FL3218 Driver","API"]},"837":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_write_register(uint8_t reg, uint8_t data)"]},"838":{"title":"void is31fl3218_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3218 Driver","API"]},"839":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"840":{"title":"void is31fl3218_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3218 Driver","API"]},"841":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"842":{"title":"void is31fl3218_set_value(int index, uint8_t value)","titles":["IS31FL3218 Driver","API"]},"843":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_value(int index, uint8_t value)"]},"844":{"title":"void is31fl3218_set_value_all(uint8_t value)","titles":["IS31FL3218 Driver","API"]},"845":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_value_all(uint8_t value)"]},"846":{"title":"void is31fl3218_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3218 Driver","API"]},"847":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"848":{"title":"void is31fl3218_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3218 Driver","API"]},"849":{"title":"Arguments","titles":["IS31FL3218 Driver","API","void is31fl3218_set_led_control_register(uint8_t index, bool value)"]},"850":{"title":"void is31fl3218_update_pwm_buffers(void)","titles":["IS31FL3218 Driver","API"]},"851":{"title":"void is31fl3218_update_led_control_registers(void)","titles":["IS31FL3218 Driver","API"]},"852":{"title":"IS31FL3729 Driver","titles":[]},"853":{"title":"Usage","titles":["IS31FL3729 Driver"]},"854":{"title":"Basic Configuration","titles":["IS31FL3729 Driver"]},"855":{"title":"I²C Addressing","titles":["IS31FL3729 Driver","Basic Configuration"]},"856":{"title":"PWM Frequency","titles":["IS31FL3729 Driver","Basic Configuration"]},"857":{"title":"De-Ghosting","titles":["IS31FL3729 Driver","Basic Configuration"]},"858":{"title":"Global Current Control","titles":["IS31FL3729 Driver","Basic Configuration"]},"859":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3729 Driver"]},"860":{"title":"LED Mapping","titles":["IS31FL3729 Driver"]},"861":{"title":"API","titles":["IS31FL3729 Driver"]},"862":{"title":"struct is31fl3729_led_t","titles":["IS31FL3729 Driver","API"]},"863":{"title":"Members","titles":["IS31FL3729 Driver","API","struct is31fl3729_led_t"]},"864":{"title":"void is31fl3729_init(uint8_t index)","titles":["IS31FL3729 Driver","API"]},"865":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_init(uint8_t index)"]},"866":{"title":"void is31fl3729_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3729 Driver","API"]},"867":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"868":{"title":"void is31fl3729_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3729 Driver","API"]},"869":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"870":{"title":"void is31fl3729_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3729 Driver","API"]},"871":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"872":{"title":"void is31fl3729_set_value(int index, uint8_t value)","titles":["IS31FL3729 Driver","API"]},"873":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_value(int index, uint8_t value)"]},"874":{"title":"void is31fl3729_set_value_all(uint8_t value)","titles":["IS31FL3729 Driver","API"]},"875":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_value_all(uint8_t value)"]},"876":{"title":"void is31fl3729_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3729 Driver","API"]},"877":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"878":{"title":"void is31fl3729_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3729 Driver","API"]},"879":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_set_scaling_register(uint8_t index, uint8_t value)"]},"880":{"title":"void is31fl3729_update_pwm_buffers(uint8_t index)","titles":["IS31FL3729 Driver","API"]},"881":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_update_pwm_buffers(uint8_t index)"]},"882":{"title":"void is31fl3729_update_scaling_registers(uint8_t index)","titles":["IS31FL3729 Driver","API"]},"883":{"title":"Arguments","titles":["IS31FL3729 Driver","API","void is31fl3729_update_scaling_registers(uint8_t index)"]},"884":{"title":"IS31FL3731 Driver","titles":[]},"885":{"title":"Usage","titles":["IS31FL3731 Driver"]},"886":{"title":"Basic Configuration","titles":["IS31FL3731 Driver"]},"887":{"title":"I²C Addressing","titles":["IS31FL3731 Driver","Basic Configuration"]},"888":{"title":"De-Ghosting","titles":["IS31FL3731 Driver","Basic Configuration"]},"889":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3731 Driver"]},"890":{"title":"LED Mapping","titles":["IS31FL3731 Driver"]},"891":{"title":"API","titles":["IS31FL3731 Driver"]},"892":{"title":"struct is31fl3731_led_t","titles":["IS31FL3731 Driver","API"]},"893":{"title":"Members","titles":["IS31FL3731 Driver","API","struct is31fl3731_led_t"]},"894":{"title":"void is31fl3731_init(uint8_t index)","titles":["IS31FL3731 Driver","API"]},"895":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_init(uint8_t index)"]},"896":{"title":"void is31fl3731_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3731 Driver","API"]},"897":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"898":{"title":"void is31fl3731_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3731 Driver","API"]},"899":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_select_page(uint8_t index, uint8_t page)"]},"900":{"title":"void is31fl3731_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3731 Driver","API"]},"901":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"902":{"title":"void is31fl3731_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3731 Driver","API"]},"903":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"904":{"title":"void is31fl3731_set_value(int index, uint8_t value)","titles":["IS31FL3731 Driver","API"]},"905":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_value(int index, uint8_t value)"]},"906":{"title":"void is31fl3731_set_value_all(uint8_t value)","titles":["IS31FL3731 Driver","API"]},"907":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_value_all(uint8_t value)"]},"908":{"title":"void is31fl3731_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3731 Driver","API"]},"909":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"910":{"title":"void is31fl3731_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3731 Driver","API"]},"911":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_set_led_control_register(uint8_t index, bool value)"]},"912":{"title":"void is31fl3731_update_pwm_buffers(uint8_t index)","titles":["IS31FL3731 Driver","API"]},"913":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_update_pwm_buffers(uint8_t index)"]},"914":{"title":"void is31fl3731_update_led_control_registers(uint8_t index)","titles":["IS31FL3731 Driver","API"]},"915":{"title":"Arguments","titles":["IS31FL3731 Driver","API","void is31fl3731_update_led_control_registers(uint8_t index)"]},"916":{"title":"IS31FL3733 Driver","titles":[]},"917":{"title":"Usage","titles":["IS31FL3733 Driver"]},"918":{"title":"Basic Configuration","titles":["IS31FL3733 Driver"]},"919":{"title":"I²C Addressing","titles":["IS31FL3733 Driver","Basic Configuration"]},"920":{"title":"Multi-Driver Synchronization","titles":["IS31FL3733 Driver","Basic Configuration"]},"921":{"title":"PWM Frequency","titles":["IS31FL3733 Driver","Basic Configuration"]},"922":{"title":"De-Ghosting","titles":["IS31FL3733 Driver","Basic Configuration"]},"923":{"title":"Global Current Control","titles":["IS31FL3733 Driver","Basic Configuration"]},"924":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3733 Driver"]},"925":{"title":"LED Mapping","titles":["IS31FL3733 Driver"]},"926":{"title":"API","titles":["IS31FL3733 Driver"]},"927":{"title":"struct is31fl3733_led_t","titles":["IS31FL3733 Driver","API"]},"928":{"title":"Members","titles":["IS31FL3733 Driver","API","struct is31fl3733_led_t"]},"929":{"title":"void is31fl3733_init(uint8_t index)","titles":["IS31FL3733 Driver","API"]},"930":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_init(uint8_t index)"]},"931":{"title":"void is31fl3733_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3733 Driver","API"]},"932":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"933":{"title":"void is31fl3733_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3733 Driver","API"]},"934":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_select_page(uint8_t index, uint8_t page)"]},"935":{"title":"void is31fl3733_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3733 Driver","API"]},"936":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"937":{"title":"void is31fl3733_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3733 Driver","API"]},"938":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"939":{"title":"void is31fl3733_set_value(int index, uint8_t value)","titles":["IS31FL3733 Driver","API"]},"940":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_value(int index, uint8_t value)"]},"941":{"title":"void is31fl3733_set_value_all(uint8_t value)","titles":["IS31FL3733 Driver","API"]},"942":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_value_all(uint8_t value)"]},"943":{"title":"void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3733 Driver","API"]},"944":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"945":{"title":"void is31fl3733_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3733 Driver","API"]},"946":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_set_led_control_register(uint8_t index, bool value)"]},"947":{"title":"void is31fl3733_update_pwm_buffers(uint8_t index)","titles":["IS31FL3733 Driver","API"]},"948":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_update_pwm_buffers(uint8_t index)"]},"949":{"title":"void is31fl3733_update_led_control_registers(uint8_t index)","titles":["IS31FL3733 Driver","API"]},"950":{"title":"Arguments","titles":["IS31FL3733 Driver","API","void is31fl3733_update_led_control_registers(uint8_t index)"]},"951":{"title":"IS31FL3736 Driver","titles":[]},"952":{"title":"Usage","titles":["IS31FL3736 Driver"]},"953":{"title":"Basic Configuration","titles":["IS31FL3736 Driver"]},"954":{"title":"I²C Addressing","titles":["IS31FL3736 Driver","Basic Configuration"]},"955":{"title":"PWM Frequency","titles":["IS31FL3736 Driver","Basic Configuration"]},"956":{"title":"De-Ghosting","titles":["IS31FL3736 Driver","Basic Configuration"]},"957":{"title":"Global Current Control","titles":["IS31FL3736 Driver","Basic Configuration"]},"958":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3736 Driver"]},"959":{"title":"LED Mapping","titles":["IS31FL3736 Driver"]},"960":{"title":"API","titles":["IS31FL3736 Driver"]},"961":{"title":"struct is31fl3736_led_t","titles":["IS31FL3736 Driver","API"]},"962":{"title":"Members","titles":["IS31FL3736 Driver","API","struct is31fl3736_led_t"]},"963":{"title":"void is31fl3736_init(uint8_t index)","titles":["IS31FL3736 Driver","API"]},"964":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_init(uint8_t index)"]},"965":{"title":"void is31fl3736_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3736 Driver","API"]},"966":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"967":{"title":"void is31fl3736_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3736 Driver","API"]},"968":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_select_page(uint8_t index, uint8_t page)"]},"969":{"title":"void is31fl3736_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3736 Driver","API"]},"970":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"971":{"title":"void is31fl3736_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3736 Driver","API"]},"972":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"973":{"title":"void is31fl3736_set_value(int index, uint8_t value)","titles":["IS31FL3736 Driver","API"]},"974":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_value(int index, uint8_t value)"]},"975":{"title":"void is31fl3736_set_value_all(uint8_t value)","titles":["IS31FL3736 Driver","API"]},"976":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_value_all(uint8_t value)"]},"977":{"title":"void is31fl3736_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3736 Driver","API"]},"978":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"979":{"title":"void is31fl3736_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3736 Driver","API"]},"980":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_set_led_control_register(uint8_t index, bool value)"]},"981":{"title":"void is31fl3736_update_pwm_buffers(uint8_t index)","titles":["IS31FL3736 Driver","API"]},"982":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_update_pwm_buffers(uint8_t index)"]},"983":{"title":"void is31fl3736_update_led_control_registers(uint8_t index)","titles":["IS31FL3736 Driver","API"]},"984":{"title":"Arguments","titles":["IS31FL3736 Driver","API","void is31fl3736_update_led_control_registers(uint8_t index)"]},"985":{"title":"IS31FL3737 Driver","titles":[]},"986":{"title":"Usage","titles":["IS31FL3737 Driver"]},"987":{"title":"Basic Configuration","titles":["IS31FL3737 Driver"]},"988":{"title":"I²C Addressing","titles":["IS31FL3737 Driver","Basic Configuration"]},"989":{"title":"PWM Frequency","titles":["IS31FL3737 Driver","Basic Configuration"]},"990":{"title":"De-Ghosting","titles":["IS31FL3737 Driver","Basic Configuration"]},"991":{"title":"Global Current Control","titles":["IS31FL3737 Driver","Basic Configuration"]},"992":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3737 Driver"]},"993":{"title":"LED Mapping","titles":["IS31FL3737 Driver"]},"994":{"title":"API","titles":["IS31FL3737 Driver"]},"995":{"title":"struct is31fl3737_led_t","titles":["IS31FL3737 Driver","API"]},"996":{"title":"Members","titles":["IS31FL3737 Driver","API","struct is31fl3737_led_t"]},"997":{"title":"void is31fl3737_init(uint8_t index)","titles":["IS31FL3737 Driver","API"]},"998":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_init(uint8_t index)"]},"999":{"title":"void is31fl3737_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3737 Driver","API"]},"1000":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1001":{"title":"void is31fl3737_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3737 Driver","API"]},"1002":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_select_page(uint8_t index, uint8_t page)"]},"1003":{"title":"void is31fl3737_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3737 Driver","API"]},"1004":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1005":{"title":"void is31fl3737_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3737 Driver","API"]},"1006":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1007":{"title":"void is31fl3737_set_value(int index, uint8_t value)","titles":["IS31FL3737 Driver","API"]},"1008":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_value(int index, uint8_t value)"]},"1009":{"title":"void is31fl3737_set_value_all(uint8_t value)","titles":["IS31FL3737 Driver","API"]},"1010":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_value_all(uint8_t value)"]},"1011":{"title":"void is31fl3737_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3737 Driver","API"]},"1012":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"1013":{"title":"void is31fl3737_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3737 Driver","API"]},"1014":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_set_led_control_register(uint8_t index, bool value)"]},"1015":{"title":"void is31fl3737_update_pwm_buffers(uint8_t index)","titles":["IS31FL3737 Driver","API"]},"1016":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_update_pwm_buffers(uint8_t index)"]},"1017":{"title":"void is31fl3737_update_led_control_registers(uint8_t index)","titles":["IS31FL3737 Driver","API"]},"1018":{"title":"Arguments","titles":["IS31FL3737 Driver","API","void is31fl3737_update_led_control_registers(uint8_t index)"]},"1019":{"title":"IS31FL3741 Driver","titles":[]},"1020":{"title":"Usage","titles":["IS31FL3741 Driver"]},"1021":{"title":"Basic Configuration","titles":["IS31FL3741 Driver"]},"1022":{"title":"I²C Addressing","titles":["IS31FL3741 Driver","Basic Configuration"]},"1023":{"title":"PWM Frequency","titles":["IS31FL3741 Driver","Basic Configuration"]},"1024":{"title":"De-Ghosting","titles":["IS31FL3741 Driver","Basic Configuration"]},"1025":{"title":"Global Current Control","titles":["IS31FL3741 Driver","Basic Configuration"]},"1026":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3741 Driver"]},"1027":{"title":"LED Mapping","titles":["IS31FL3741 Driver"]},"1028":{"title":"API","titles":["IS31FL3741 Driver"]},"1029":{"title":"struct is31fl3741_led_t","titles":["IS31FL3741 Driver","API"]},"1030":{"title":"Members","titles":["IS31FL3741 Driver","API","struct is31fl3741_led_t"]},"1031":{"title":"void is31fl3741_init(uint8_t index)","titles":["IS31FL3741 Driver","API"]},"1032":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_init(uint8_t index)"]},"1033":{"title":"void is31fl3741_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3741 Driver","API"]},"1034":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1035":{"title":"void is31fl3741_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3741 Driver","API"]},"1036":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_select_page(uint8_t index, uint8_t page)"]},"1037":{"title":"void is31fl3741_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3741 Driver","API"]},"1038":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1039":{"title":"void is31fl3741_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3741 Driver","API"]},"1040":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1041":{"title":"void is31fl3741_set_value(int index, uint8_t value)","titles":["IS31FL3741 Driver","API"]},"1042":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_value(int index, uint8_t value)"]},"1043":{"title":"void is31fl3741_set_value_all(uint8_t value)","titles":["IS31FL3741 Driver","API"]},"1044":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_value_all(uint8_t value)"]},"1045":{"title":"void is31fl3741_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["IS31FL3741 Driver","API"]},"1046":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"1047":{"title":"void is31fl3741_set_led_control_register(uint8_t index, bool value)","titles":["IS31FL3741 Driver","API"]},"1048":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_set_led_control_register(uint8_t index, bool value)"]},"1049":{"title":"void is31fl3741_update_pwm_buffers(uint8_t index)","titles":["IS31FL3741 Driver","API"]},"1050":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_update_pwm_buffers(uint8_t index)"]},"1051":{"title":"void is31fl3741_update_led_control_registers(uint8_t index)","titles":["IS31FL3741 Driver","API"]},"1052":{"title":"Arguments","titles":["IS31FL3741 Driver","API","void is31fl3741_update_led_control_registers(uint8_t index)"]},"1053":{"title":"IS31FL3742A Driver","titles":[]},"1054":{"title":"Usage","titles":["IS31FL3742A Driver"]},"1055":{"title":"Basic Configuration","titles":["IS31FL3742A Driver"]},"1056":{"title":"I²C Addressing","titles":["IS31FL3742A Driver","Basic Configuration"]},"1057":{"title":"PWM Frequency","titles":["IS31FL3742A Driver","Basic Configuration"]},"1058":{"title":"De-Ghosting","titles":["IS31FL3742A Driver","Basic Configuration"]},"1059":{"title":"Global Current Control","titles":["IS31FL3742A Driver","Basic Configuration"]},"1060":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3742A Driver"]},"1061":{"title":"LED Mapping","titles":["IS31FL3742A Driver"]},"1062":{"title":"API","titles":["IS31FL3742A Driver"]},"1063":{"title":"struct is31fl3742a_led_t","titles":["IS31FL3742A Driver","API"]},"1064":{"title":"Members","titles":["IS31FL3742A Driver","API","struct is31fl3742a_led_t"]},"1065":{"title":"void is31fl3742a_init(uint8_t index)","titles":["IS31FL3742A Driver","API"]},"1066":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_init(uint8_t index)"]},"1067":{"title":"void is31fl3742a_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3742A Driver","API"]},"1068":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1069":{"title":"void is31fl3742a_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3742A Driver","API"]},"1070":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_select_page(uint8_t index, uint8_t page)"]},"1071":{"title":"void is31fl3742a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3742A Driver","API"]},"1072":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1073":{"title":"void is31fl3742a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3742A Driver","API"]},"1074":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1075":{"title":"void is31fl3742a_set_value(int index, uint8_t value)","titles":["IS31FL3742A Driver","API"]},"1076":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_value(int index, uint8_t value)"]},"1077":{"title":"void is31fl3742a_set_value_all(uint8_t value)","titles":["IS31FL3742A Driver","API"]},"1078":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_value_all(uint8_t value)"]},"1079":{"title":"void is31fl3742a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3742A Driver","API"]},"1080":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"1081":{"title":"void is31fl3742a_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3742A Driver","API"]},"1082":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_set_scaling_register(uint8_t index, uint8_t value)"]},"1083":{"title":"void is31fl3742a_update_pwm_buffers(uint8_t index)","titles":["IS31FL3742A Driver","API"]},"1084":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_update_pwm_buffers(uint8_t index)"]},"1085":{"title":"void is31fl3742a_update_scaling_registers(uint8_t index)","titles":["IS31FL3742A Driver","API"]},"1086":{"title":"Arguments","titles":["IS31FL3742A Driver","API","void is31fl3742a_update_scaling_registers(uint8_t index)"]},"1087":{"title":"IS31FL3743A Driver","titles":[]},"1088":{"title":"Usage","titles":["IS31FL3743A Driver"]},"1089":{"title":"Basic Configuration","titles":["IS31FL3743A Driver"]},"1090":{"title":"I²C Addressing","titles":["IS31FL3743A Driver","Basic Configuration"]},"1091":{"title":"Multi-Driver Synchronization","titles":["IS31FL3743A Driver","Basic Configuration"]},"1092":{"title":"De-Ghosting","titles":["IS31FL3743A Driver","Basic Configuration"]},"1093":{"title":"Global Current Control","titles":["IS31FL3743A Driver","Basic Configuration"]},"1094":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3743A Driver"]},"1095":{"title":"LED Mapping","titles":["IS31FL3743A Driver"]},"1096":{"title":"API","titles":["IS31FL3743A Driver"]},"1097":{"title":"struct is31fl3743a_led_t","titles":["IS31FL3743A Driver","API"]},"1098":{"title":"Members","titles":["IS31FL3743A Driver","API","struct is31fl3743a_led_t"]},"1099":{"title":"void is31fl3743a_init(uint8_t index)","titles":["IS31FL3743A Driver","API"]},"1100":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_init(uint8_t index)"]},"1101":{"title":"void is31fl3743a_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3743A Driver","API"]},"1102":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1103":{"title":"void is31fl3743a_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3743A Driver","API"]},"1104":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_select_page(uint8_t index, uint8_t page)"]},"1105":{"title":"void is31fl3743a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3743A Driver","API"]},"1106":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1107":{"title":"void is31fl3743a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3743A Driver","API"]},"1108":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1109":{"title":"void is31fl3743a_set_value(int index, uint8_t value)","titles":["IS31FL3743A Driver","API"]},"1110":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_value(int index, uint8_t value)"]},"1111":{"title":"void is31fl3743a_set_value_all(uint8_t value)","titles":["IS31FL3743A Driver","API"]},"1112":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_value_all(uint8_t value)"]},"1113":{"title":"void is31fl3743a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3743A Driver","API"]},"1114":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"1115":{"title":"void is31fl3743a_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3743A Driver","API"]},"1116":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_set_scaling_register(uint8_t index, uint8_t value)"]},"1117":{"title":"void is31fl3743a_update_pwm_buffers(uint8_t index)","titles":["IS31FL3743A Driver","API"]},"1118":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_update_pwm_buffers(uint8_t index)"]},"1119":{"title":"void is31fl3743a_update_scaling_registers(uint8_t index)","titles":["IS31FL3743A Driver","API"]},"1120":{"title":"Arguments","titles":["IS31FL3743A Driver","API","void is31fl3743a_update_scaling_registers(uint8_t index)"]},"1121":{"title":"IS31FL3745 Driver","titles":[]},"1122":{"title":"Usage","titles":["IS31FL3745 Driver"]},"1123":{"title":"Basic Configuration","titles":["IS31FL3745 Driver"]},"1124":{"title":"I²C Addressing","titles":["IS31FL3745 Driver","Basic Configuration"]},"1125":{"title":"Multi-Driver Synchronization","titles":["IS31FL3745 Driver","Basic Configuration"]},"1126":{"title":"De-Ghosting","titles":["IS31FL3745 Driver","Basic Configuration"]},"1127":{"title":"Global Current Control","titles":["IS31FL3745 Driver","Basic Configuration"]},"1128":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3745 Driver"]},"1129":{"title":"LED Mapping","titles":["IS31FL3745 Driver"]},"1130":{"title":"API","titles":["IS31FL3745 Driver"]},"1131":{"title":"struct is31fl3745_led_t","titles":["IS31FL3745 Driver","API"]},"1132":{"title":"Members","titles":["IS31FL3745 Driver","API","struct is31fl3745_led_t"]},"1133":{"title":"void is31fl3745_init(uint8_t index)","titles":["IS31FL3745 Driver","API"]},"1134":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_init(uint8_t index)"]},"1135":{"title":"void is31fl3745_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3745 Driver","API"]},"1136":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1137":{"title":"void is31fl3745_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3745 Driver","API"]},"1138":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_select_page(uint8_t index, uint8_t page)"]},"1139":{"title":"void is31fl3745_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3745 Driver","API"]},"1140":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1141":{"title":"void is31fl3745_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3745 Driver","API"]},"1142":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1143":{"title":"void is31fl3745_set_value(int index, uint8_t value)","titles":["IS31FL3745 Driver","API"]},"1144":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_value(int index, uint8_t value)"]},"1145":{"title":"void is31fl3745_set_value_all(uint8_t value)","titles":["IS31FL3745 Driver","API"]},"1146":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_value_all(uint8_t value)"]},"1147":{"title":"void is31fl3745_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3745 Driver","API"]},"1148":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"1149":{"title":"void is31fl3745_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3745 Driver","API"]},"1150":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_set_scaling_register(uint8_t index, uint8_t value)"]},"1151":{"title":"void is31fl3745_update_pwm_buffers(uint8_t index)","titles":["IS31FL3745 Driver","API"]},"1152":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_update_pwm_buffers(uint8_t index)"]},"1153":{"title":"void is31fl3745_update_scaling_registers(uint8_t index)","titles":["IS31FL3745 Driver","API"]},"1154":{"title":"Arguments","titles":["IS31FL3745 Driver","API","void is31fl3745_update_scaling_registers(uint8_t index)"]},"1155":{"title":"IS31FL3746A Driver","titles":[]},"1156":{"title":"Usage","titles":["IS31FL3746A Driver"]},"1157":{"title":"Basic Configuration","titles":["IS31FL3746A Driver"]},"1158":{"title":"I²C Addressing","titles":["IS31FL3746A Driver","Basic Configuration"]},"1159":{"title":"PWM Frequency","titles":["IS31FL3746A Driver","Basic Configuration"]},"1160":{"title":"De-Ghosting","titles":["IS31FL3746A Driver","Basic Configuration"]},"1161":{"title":"Global Current Control","titles":["IS31FL3746A Driver","Basic Configuration"]},"1162":{"title":"ARM/ChibiOS Configuration","titles":["IS31FL3746A Driver"]},"1163":{"title":"LED Mapping","titles":["IS31FL3746A Driver"]},"1164":{"title":"API","titles":["IS31FL3746A Driver"]},"1165":{"title":"struct is31fl3746a_led_t","titles":["IS31FL3746A Driver","API"]},"1166":{"title":"Members","titles":["IS31FL3746A Driver","API","struct is31fl3746a_led_t"]},"1167":{"title":"void is31fl3746a_init(uint8_t index)","titles":["IS31FL3746A Driver","API"]},"1168":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_init(uint8_t index)"]},"1169":{"title":"void is31fl3746a_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["IS31FL3746A Driver","API"]},"1170":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1171":{"title":"void is31fl3746a_select_page(uint8_t index, uint8_t page)","titles":["IS31FL3746A Driver","API"]},"1172":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_select_page(uint8_t index, uint8_t page)"]},"1173":{"title":"void is31fl3746a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3746A Driver","API"]},"1174":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1175":{"title":"void is31fl3746a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3746A Driver","API"]},"1176":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1177":{"title":"void is31fl3746a_set_value(int index, uint8_t value)","titles":["IS31FL3746A Driver","API"]},"1178":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_value(int index, uint8_t value)"]},"1179":{"title":"void is31fl3746a_set_value_all(uint8_t value)","titles":["IS31FL3746A Driver","API"]},"1180":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_value_all(uint8_t value)"]},"1181":{"title":"void is31fl3746a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)","titles":["IS31FL3746A Driver","API"]},"1182":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)"]},"1183":{"title":"void is31fl3746a_set_scaling_register(uint8_t index, uint8_t value)","titles":["IS31FL3746A Driver","API"]},"1184":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_set_scaling_register(uint8_t index, uint8_t value)"]},"1185":{"title":"void is31fl3746a_update_pwm_buffers(uint8_t index)","titles":["IS31FL3746A Driver","API"]},"1186":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_update_pwm_buffers(uint8_t index)"]},"1187":{"title":"void is31fl3746a_update_scaling_registers(uint8_t index)","titles":["IS31FL3746A Driver","API"]},"1188":{"title":"Arguments","titles":["IS31FL3746A Driver","API","void is31fl3746a_update_scaling_registers(uint8_t index)"]},"1189":{"title":"'serial' Driver","titles":[]},"1190":{"title":"Bitbang","titles":["'serial' Driver"]},"1191":{"title":"Pin configuration","titles":["'serial' Driver","Bitbang"]},"1192":{"title":"Setup","titles":["'serial' Driver","Bitbang"]},"1193":{"title":"USART Half-duplex","titles":["'serial' Driver"]},"1194":{"title":"Pin configuration","titles":["'serial' Driver","USART Half-duplex"]},"1195":{"title":"Setup","titles":["'serial' Driver","USART Half-duplex"]},"1196":{"title":"USART Full-duplex","titles":["'serial' Driver"]},"1197":{"title":"Pin configuration","titles":["'serial' Driver","USART Full-duplex"]},"1198":{"title":"Setup","titles":["'serial' Driver","USART Full-duplex"]},"1199":{"title":"Choosing a driver subsystem","titles":["'serial' Driver"]},"1200":{"title":"The SERIAL driver","titles":["'serial' Driver","Choosing a driver subsystem"]},"1201":{"title":"The SIO driver","titles":["'serial' Driver","Choosing a driver subsystem"]},"1202":{"title":"The PIO driver","titles":["'serial' Driver","Choosing a driver subsystem"]},"1203":{"title":"Advanced Configuration","titles":["'serial' Driver"]},"1204":{"title":"Baudrate","titles":["'serial' Driver","Advanced Configuration"]},"1205":{"title":"Timeout","titles":["'serial' Driver","Advanced Configuration"]},"1206":{"title":"Troubleshooting","titles":["'serial' Driver"]},"1207":{"title":"Alternate Functions for selected STM32 MCUs","titles":["'serial' Driver"]},"1208":{"title":"STM32F303 / Proton-C","titles":["'serial' Driver","Alternate Functions for selected STM32 MCUs"]},"1209":{"title":"STM32F072","titles":["'serial' Driver","Alternate Functions for selected STM32 MCUs"]},"1210":{"title":"STM32F103 Medium Density (C8-CB)","titles":["'serial' Driver","Alternate Functions for selected STM32 MCUs"]},"1211":{"title":"SNLED27351 Driver","titles":[]},"1212":{"title":"Usage","titles":["SNLED27351 Driver"]},"1213":{"title":"Basic Configuration","titles":["SNLED27351 Driver"]},"1214":{"title":"I²C Addressing","titles":["SNLED27351 Driver","Basic Configuration"]},"1215":{"title":"ARM/ChibiOS Configuration","titles":["SNLED27351 Driver"]},"1216":{"title":"LED Mapping","titles":["SNLED27351 Driver"]},"1217":{"title":"API","titles":["SNLED27351 Driver"]},"1218":{"title":"struct snled27351_led_t","titles":["SNLED27351 Driver","API"]},"1219":{"title":"Members","titles":["SNLED27351 Driver","API","struct snled27351_led_t"]},"1220":{"title":"void snled27351_init(uint8_t index)","titles":["SNLED27351 Driver","API"]},"1221":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_init(uint8_t index)"]},"1222":{"title":"void snled27351_write_register(uint8_t index, uint8_t reg, uint8_t data)","titles":["SNLED27351 Driver","API"]},"1223":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_write_register(uint8_t index, uint8_t reg, uint8_t data)"]},"1224":{"title":"void snled27351_select_page(uint8_t index, uint8_t page)","titles":["SNLED27351 Driver","API"]},"1225":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_select_page(uint8_t index, uint8_t page)"]},"1226":{"title":"void snled27351_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["SNLED27351 Driver","API"]},"1227":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1228":{"title":"void snled27351_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["SNLED27351 Driver","API"]},"1229":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1230":{"title":"void snled27351_set_value(int index, uint8_t value)","titles":["SNLED27351 Driver","API"]},"1231":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_value(int index, uint8_t value)"]},"1232":{"title":"void snled27351_set_value_all(uint8_t value)","titles":["SNLED27351 Driver","API"]},"1233":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_value_all(uint8_t value)"]},"1234":{"title":"void snled27351_set_led_control_register(uint8_t index, bool red, bool green, bool blue)","titles":["SNLED27351 Driver","API"]},"1235":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_led_control_register(uint8_t index, bool red, bool green, bool blue)"]},"1236":{"title":"void snled27351_set_led_control_register(uint8_t index, bool value)","titles":["SNLED27351 Driver","API"]},"1237":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_set_led_control_register(uint8_t index, bool value)"]},"1238":{"title":"void snled27351_update_pwm_buffers(uint8_t index)","titles":["SNLED27351 Driver","API"]},"1239":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_update_pwm_buffers(uint8_t index)"]},"1240":{"title":"void snled27351_update_led_control_registers(uint8_t index)","titles":["SNLED27351 Driver","API"]},"1241":{"title":"Arguments","titles":["SNLED27351 Driver","API","void snled27351_update_led_control_registers(uint8_t index)"]},"1242":{"title":"SPI Master Driver","titles":[]},"1243":{"title":"Usage","titles":["SPI Master Driver"]},"1244":{"title":"AVR Configuration","titles":["SPI Master Driver"]},"1245":{"title":"ChibiOS/ARM Configuration","titles":["SPI Master Driver"]},"1246":{"title":"API","titles":["SPI Master Driver"]},"1247":{"title":"void spi_init(void)","titles":["SPI Master Driver","API"]},"1248":{"title":"bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)","titles":["SPI Master Driver","API"]},"1249":{"title":"Arguments","titles":["SPI Master Driver","API","bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)"]},"1250":{"title":"Return Value","titles":["SPI Master Driver","API","bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)"]},"1251":{"title":"spi_status_t spi_write(uint8_t data)","titles":["SPI Master Driver","API"]},"1252":{"title":"Arguments","titles":["SPI Master Driver","API","spi_status_t spi_write(uint8_t data)"]},"1253":{"title":"Return Value","titles":["SPI Master Driver","API","spi_status_t spi_write(uint8_t data)"]},"1254":{"title":"spi_status_t spi_read(void)","titles":["SPI Master Driver","API"]},"1255":{"title":"Return Value","titles":["SPI Master Driver","API","spi_status_t spi_read(void)"]},"1256":{"title":"spi_status_t spi_transmit(const uint8_t *data, uint16_t length)","titles":["SPI Master Driver","API"]},"1257":{"title":"Arguments","titles":["SPI Master Driver","API","spi_status_t spi_transmit(const uint8_t *data, uint16_t length)"]},"1258":{"title":"Return Value","titles":["SPI Master Driver","API","spi_status_t spi_transmit(const uint8_t *data, uint16_t length)"]},"1259":{"title":"spi_status_t spi_receive(uint8_t *data, uint16_t length)","titles":["SPI Master Driver","API"]},"1260":{"title":"Arguments","titles":["SPI Master Driver","API","spi_status_t spi_receive(uint8_t *data, uint16_t length)"]},"1261":{"title":"Return Value","titles":["SPI Master Driver","API","spi_status_t spi_receive(uint8_t *data, uint16_t length)"]},"1262":{"title":"void spi_stop(void)","titles":["SPI Master Driver","API"]},"1263":{"title":"UART Driver","titles":[]},"1264":{"title":"Usage","titles":["UART Driver"]},"1265":{"title":"AVR Configuration","titles":["UART Driver"]},"1266":{"title":"ChibiOS/ARM Configuration","titles":["UART Driver"]},"1267":{"title":"API","titles":["UART Driver"]},"1268":{"title":"void uart_init(uint32_t baud)","titles":["UART Driver","API"]},"1269":{"title":"Arguments","titles":["UART Driver","API","void uart_init(uint32_t baud)"]},"1270":{"title":"void uart_write(uint8_t data)","titles":["UART Driver","API"]},"1271":{"title":"Arguments","titles":["UART Driver","API","void uart_write(uint8_t data)"]},"1272":{"title":"uint8_t uart_read(void)","titles":["UART Driver","API"]},"1273":{"title":"Return Value","titles":["UART Driver","API","uint8_t uart_read(void)"]},"1274":{"title":"void uart_transmit(const uint8_t *data, uint16_t length)","titles":["UART Driver","API"]},"1275":{"title":"Arguments","titles":["UART Driver","API","void uart_transmit(const uint8_t *data, uint16_t length)"]},"1276":{"title":"void uart_receive(char *data, uint16_t length)","titles":["UART Driver","API"]},"1277":{"title":"Arguments","titles":["UART Driver","API","void uart_receive(char *data, uint16_t length)"]},"1278":{"title":"bool uart_available(void)","titles":["UART Driver","API"]},"1279":{"title":"Return Value","titles":["UART Driver","API","bool uart_available(void)"]},"1280":{"title":"WS2812 Driver","titles":[]},"1281":{"title":"Usage","titles":["WS2812 Driver"]},"1282":{"title":"Basic Configuration","titles":["WS2812 Driver"]},"1283":{"title":"Timing Adjustment","titles":["WS2812 Driver","Basic Configuration"]},"1284":{"title":"Byte Order","titles":["WS2812 Driver","Basic Configuration"]},"1285":{"title":"RGBW Support","titles":["WS2812 Driver","Basic Configuration"]},"1286":{"title":"Driver Configuration","titles":["WS2812 Driver"]},"1287":{"title":"Bitbang Driver","titles":["WS2812 Driver","Driver Configuration"]},"1288":{"title":"I2C Driver","titles":["WS2812 Driver","Driver Configuration"]},"1289":{"title":"PIO Driver","titles":["WS2812 Driver","Driver Configuration"]},"1290":{"title":"PWM Driver","titles":["WS2812 Driver","Driver Configuration"]},"1291":{"title":"SPI Driver","titles":["WS2812 Driver","Driver Configuration"]},"1292":{"title":"ChibiOS/ARM Configuration","titles":["WS2812 Driver"]},"1293":{"title":"Logic Levels","titles":["WS2812 Driver","ChibiOS/ARM Configuration"]},"1294":{"title":"1. Open Drain Circuit","titles":["WS2812 Driver","ChibiOS/ARM Configuration","Logic Levels"]},"1295":{"title":"2. Level Shifter","titles":["WS2812 Driver","ChibiOS/ARM Configuration","Logic Levels"]},"1296":{"title":"SPI Driver","titles":["WS2812 Driver","ChibiOS/ARM Configuration"]},"1297":{"title":"Setting the Baudrate","titles":["WS2812 Driver","ChibiOS/ARM Configuration","SPI Driver"]},"1298":{"title":"Circular Buffer","titles":["WS2812 Driver","ChibiOS/ARM Configuration","SPI Driver"]},"1299":{"title":"PIO Driver","titles":["WS2812 Driver","ChibiOS/ARM Configuration"]},"1300":{"title":"PWM Driver","titles":["WS2812 Driver","ChibiOS/ARM Configuration"]},"1301":{"title":"API","titles":["WS2812 Driver"]},"1302":{"title":"void ws2812_init(void)","titles":["WS2812 Driver","API"]},"1303":{"title":"void ws2812_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)","titles":["WS2812 Driver","API"]},"1304":{"title":"Arguments","titles":["WS2812 Driver","API","void ws2812_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)"]},"1305":{"title":"void ws2812_set_color_all(uint8_t red, uint8_t green, uint8_t blue)","titles":["WS2812 Driver","API"]},"1306":{"title":"Arguments","titles":["WS2812 Driver","API","void ws2812_set_color_all(uint8_t red, uint8_t green, uint8_t blue)"]},"1307":{"title":"void ws2812_flush(void)","titles":["WS2812 Driver","API"]},"1308":{"title":"Easy Maker - Build One-Off Projects In Configurator","titles":[]},"1309":{"title":"Quickstart","titles":["Easy Maker - Build One-Off Projects In Configurator"]},"1310":{"title":"Direct Pin","titles":[]},"1311":{"title":"Frequently Asked Build Questions","titles":[]},"1312":{"title":"Can't Program on Linux","titles":["Frequently Asked Build Questions"]},"1313":{"title":"Linux udev Rules","titles":["Frequently Asked Build Questions","Can't Program on Linux"]},"1314":{"title":"Serial device is not detected in bootloader mode on Linux","titles":["Frequently Asked Build Questions","Can't Program on Linux"]},"1315":{"title":"Unknown Device for DFU Bootloader","titles":["Frequently Asked Build Questions"]},"1316":{"title":"USB VID and PID","titles":["Frequently Asked Build Questions"]},"1317":{"title":"I just flashed my keyboard and it does nothing/keypresses don't register - it's also ARM (rev6 planck, clueboard 60, hs60v2, etc...) (Feb 2019)","titles":["Frequently Asked Build Questions","USB VID and PID"]},"1318":{"title":"Debugging FAQ","titles":[]},"1319":{"title":"Debugging","titles":["Debugging FAQ"]},"1320":{"title":"Debugging Tools","titles":["Debugging FAQ"]},"1321":{"title":"Debugging With QMK Toolbox","titles":["Debugging FAQ","Debugging Tools"]},"1322":{"title":"Debugging with QMK CLI","titles":["Debugging FAQ","Debugging Tools"]},"1323":{"title":"Debugging With hid_listen","titles":["Debugging FAQ","Debugging Tools"]},"1324":{"title":"Sending Your Own Debug Messages","titles":["Debugging FAQ"]},"1325":{"title":"Debug Examples","titles":["Debugging FAQ"]},"1326":{"title":"Which matrix position is this keypress?","titles":["Debugging FAQ","Debug Examples"]},"1327":{"title":"Which keycode is this keypress?","titles":["Debugging FAQ","Debug Examples"]},"1328":{"title":"How long did it take to scan for a keypress?","titles":["Debugging FAQ","Debug Examples"]},"1329":{"title":"hid_listen Can't Recognize Device","titles":["Debugging FAQ"]},"1330":{"title":"Can't Get Message on Console","titles":["Debugging FAQ"]},"1331":{"title":"Frequently Asked Questions","titles":[]},"1332":{"title":"What is QMK?","titles":["Frequently Asked Questions"]},"1333":{"title":"I don't know where to start!","titles":["Frequently Asked Questions"]},"1334":{"title":"How can I flash the firmware I built?","titles":["Frequently Asked Questions"]},"1335":{"title":"What if I have an issue that isn't covered here?","titles":["Frequently Asked Questions"]},"1336":{"title":"What if I found a bug?","titles":["Frequently Asked Questions"]},"1337":{"title":"But git and GitHub are intimidating!","titles":["Frequently Asked Questions"]},"1338":{"title":"I have a Keyboard that I want to add support for","titles":["Frequently Asked Questions"]},"1339":{"title":"What if I want to brand it with QMK?","titles":["Frequently Asked Questions","I have a Keyboard that I want to add support for"]},"1340":{"title":"What Differences Are There Between QMK and TMK?","titles":["Frequently Asked Questions"]},"1341":{"title":"Keymap FAQ","titles":[]},"1342":{"title":"What Keycodes Can I Use?","titles":["Keymap FAQ"]},"1343":{"title":"What Are the Default Keycodes?","titles":["Keymap FAQ"]},"1344":{"title":"How Can I Make Custom Names For Complex Keycodes?","titles":["Keymap FAQ"]},"1345":{"title":"My Keymap Doesn't Update When I Flash It","titles":["Keymap FAQ"]},"1346":{"title":"Some Of My Keys Are Swapped Or Not Working","titles":["Keymap FAQ"]},"1347":{"title":"The Menu Key Isn't Working","titles":["Keymap FAQ"]},"1348":{"title":"Power Keys Aren't Working","titles":["Keymap FAQ"]},"1349":{"title":"One Shot Modifier","titles":["Keymap FAQ"]},"1350":{"title":"Modifier/Layer Stuck","titles":["Keymap FAQ"]},"1351":{"title":"Mechanical Lock Switch Support","titles":["Keymap FAQ"]},"1352":{"title":"Input Special Characters Other Than ASCII like Cédille 'Ç'","titles":["Keymap FAQ"]},"1353":{"title":"Fn Key on macOS","titles":["Keymap FAQ"]},"1354":{"title":"Keys Supported in Mac OSX?","titles":["Keymap FAQ"]},"1355":{"title":"JIS Keys in Mac OSX","titles":["Keymap FAQ"]},"1356":{"title":"RN-42 Bluetooth Doesn't Work with Karabiner","titles":["Keymap FAQ"]},"1357":{"title":"Esc and ` on a Single Key","titles":["Keymap FAQ"]},"1358":{"title":"Eject on Mac OSX","titles":["Keymap FAQ"]},"1359":{"title":"What are "Real" and "Weak" modifiers?","titles":["Keymap FAQ"]},"1360":{"title":"Miscellaneous FAQ","titles":[]},"1361":{"title":"How do I test my keyboard?","titles":["Miscellaneous FAQ"]},"1362":{"title":"Safety Considerations","titles":["Miscellaneous FAQ"]},"1363":{"title":"NKRO Doesn't work","titles":["Miscellaneous FAQ"]},"1364":{"title":"TrackPoint Needs Reset Circuit (PS/2 Mouse Support)","titles":["Miscellaneous FAQ"]},"1365":{"title":"Can't Read Column of Matrix Beyond 16","titles":["Miscellaneous FAQ"]},"1366":{"title":"Special Extra Key Doesn't Work (System, Audio Control Keys)","titles":["Miscellaneous FAQ"]},"1367":{"title":"Wake from Sleep Doesn't Work","titles":["Miscellaneous FAQ"]},"1368":{"title":"Using Arduino?","titles":["Miscellaneous FAQ"]},"1369":{"title":"Enabling JTAG","titles":["Miscellaneous FAQ"]},"1370":{"title":"USB 3 Compatibility","titles":["Miscellaneous FAQ"]},"1371":{"title":"Mac Compatibility","titles":["Miscellaneous FAQ"]},"1372":{"title":"OS X 10.11 and Hub","titles":["Miscellaneous FAQ","Mac Compatibility"]},"1373":{"title":"Problem in BIOS (UEFI) Setup/Resume (Sleep & Wake)/Power Cycles","titles":["Miscellaneous FAQ"]},"1374":{"title":"Modifier Keys","titles":[]},"1375":{"title":"Checking Modifier State","titles":[]},"1376":{"title":"Examples","titles":["Checking Modifier State"]},"1377":{"title":"Alt + Escape for Alt + Tab","titles":["Checking Modifier State","Examples"]},"1378":{"title":"Shift + Backspace for Delete","titles":["Checking Modifier State","Examples"]},"1379":{"title":"Advanced topics","titles":[]},"1380":{"title":"Layers","titles":["Advanced topics"]},"1381":{"title":"Mod-Tap","titles":["Advanced topics"]},"1382":{"title":"One Shot Keys","titles":["Advanced topics"]},"1383":{"title":"Tap-Hold Configuration Options","titles":["Advanced topics"]},"1384":{"title":"Key Overrides","titles":["Advanced topics"]},"1385":{"title":"Converters","titles":[]},"1386":{"title":"Supported Converters","titles":["Converters"]},"1387":{"title":"Configuration","titles":["Converters"]},"1388":{"title":"Pro Micro Converters","titles":["Converters"]},"1389":{"title":"Proton C","titles":["Converters","Pro Micro Converters"]},"1390":{"title":"Adafruit KB2040","titles":["Converters","Pro Micro Converters"]},"1391":{"title":"SparkFun Pro Micro - RP2040, Blok, Bit-C PRO and Michi","titles":["Converters","Pro Micro Converters"]},"1392":{"title":"STeMCell","titles":["Converters","Pro Micro Converters"]},"1393":{"title":"Bonsai C4","titles":["Converters","Pro Micro Converters"]},"1394":{"title":"RP2040 Community Edition - Elite-Pi, Helios, and Liatris","titles":["Converters","Pro Micro Converters"]},"1395":{"title":"Svlinky","titles":["Converters","Pro Micro Converters"]},"1396":{"title":"Elite-C Converters","titles":["Converters"]},"1397":{"title":"STeMCell","titles":["Converters","Elite-C Converters"]},"1398":{"title":"RP2040 Community Edition","titles":["Converters","Elite-C Converters"]},"1399":{"title":"Advanced Topics","titles":["Converters"]},"1400":{"title":"Keyboard Configuration","titles":["Converters","Advanced Topics"]},"1401":{"title":"Additional Requirements","titles":["Converters","Advanced Topics","Keyboard Configuration"]},"1402":{"title":"Additional Keymap Configuration","titles":["Converters","Advanced Topics"]},"1403":{"title":"Conditional Configuration","titles":["Converters","Advanced Topics"]},"1404":{"title":"Pin Compatibility","titles":["Converters","Advanced Topics"]},"1405":{"title":"Available Pin Compatibility","titles":["Converters","Advanced Topics","Pin Compatibility"]},"1406":{"title":"Persistent Configuration (EEPROM)","titles":[]},"1407":{"title":"Example Implementation","titles":["Persistent Configuration (EEPROM)"]},"1408":{"title":"'EECONFIG' Function Documentation","titles":["Persistent Configuration (EEPROM)"]},"1409":{"title":"Contact bounce / contact chatter","titles":[]},"1410":{"title":"Types of debounce algorithms","titles":["Contact bounce / contact chatter"]},"1411":{"title":"Supported Debounce Algorithms","titles":["Contact bounce / contact chatter"]},"1412":{"title":"Debounce Time","titles":["Contact bounce / contact chatter","Supported Debounce Algorithms"]},"1413":{"title":"Debounce Method","titles":["Contact bounce / contact chatter","Supported Debounce Algorithms"]},"1414":{"title":"Implementing your own debouncing code","titles":["Contact bounce / contact chatter","Supported Debounce Algorithms"]},"1415":{"title":"Layers","titles":[]},"1416":{"title":"Switching and Toggling Layers","titles":["Layers"]},"1417":{"title":"Caveats","titles":["Layers","Switching and Toggling Layers"]},"1418":{"title":"Working with Layers","titles":["Layers"]},"1419":{"title":"Beginners","titles":["Layers","Working with Layers"]},"1420":{"title":"Intermediate Users","titles":["Layers","Working with Layers"]},"1421":{"title":"Advanced Users","titles":["Layers","Working with Layers"]},"1422":{"title":"Functions","titles":["Layers"]},"1423":{"title":"Layer Change Code","titles":["Layers"]},"1424":{"title":"Example layer_state_set_* Implementation","titles":["Layers","Layer Change Code"]},"1425":{"title":"Example: Keycode to cycle through layers","titles":["Layers","Layer Change Code"]},"1426":{"title":"layer_state_set_* Function Documentation","titles":["Layers","Layer Change Code"]},"1427":{"title":"Layouts: Using a Keymap with Multiple Keyboards","titles":[]},"1428":{"title":"Supporting a Layout","titles":["Layouts: Using a Keymap with Multiple Keyboards"]},"1429":{"title":"Building a Keymap","titles":["Layouts: Using a Keymap with Multiple Keyboards"]},"1430":{"title":"Conflicting layouts","titles":["Layouts: Using a Keymap with Multiple Keyboards","Building a Keymap"]},"1431":{"title":"Tips for Making Layouts Keyboard-Agnostic","titles":["Layouts: Using a Keymap with Multiple Keyboards"]},"1432":{"title":"Includes","titles":["Layouts: Using a Keymap with Multiple Keyboards","Tips for Making Layouts Keyboard-Agnostic"]},"1433":{"title":"Keymaps","titles":["Layouts: Using a Keymap with Multiple Keyboards","Tips for Making Layouts Keyboard-Agnostic"]},"1434":{"title":"Macros","titles":[]},"1435":{"title":"Using Macros In JSON Keymaps","titles":["Macros"]},"1436":{"title":"Selecting Your Host Keyboard Layout","titles":["Macros","Using Macros In JSON Keymaps"]},"1437":{"title":"Macro Basics","titles":["Macros","Using Macros In JSON Keymaps"]},"1438":{"title":"Object Format","titles":["Macros","Using Macros In JSON Keymaps","Macro Basics"]},"1439":{"title":"Using Macros in C Keymaps","titles":["Macros"]},"1440":{"title":"SEND_STRING() & process_record_user","titles":["Macros","Using Macros in C Keymaps"]},"1441":{"title":"Advanced Macros","titles":["Macros","Using Macros in C Keymaps","SEND_STRING() & process_record_user"]},"1442":{"title":"TAP, DOWN and UP","titles":["Macros","Using Macros in C Keymaps","SEND_STRING() & process_record_user"]},"1443":{"title":"Alternative Keymaps","titles":["Macros","Using Macros in C Keymaps","SEND_STRING() & process_record_user"]},"1444":{"title":"Strings in Memory","titles":["Macros","Using Macros in C Keymaps","SEND_STRING() & process_record_user"]},"1445":{"title":"Advanced Macro Functions","titles":["Macros","Using Macros in C Keymaps"]},"1446":{"title":"record->event.pressed","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1447":{"title":"register_code(<kc>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1448":{"title":"unregister_code(<kc>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1449":{"title":"tap_code(<kc>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1450":{"title":"tap_code_delay(<kc>, <delay>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1451":{"title":"register_code16(<kc>);, unregister_code16(<kc>);, tap_code16(<kc>); and tap_code16_delay(<kc>, <delay>);","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1452":{"title":"clear_keyboard();","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1453":{"title":"clear_mods();","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1454":{"title":"clear_keyboard_but_mods();","titles":["Macros","Using Macros in C Keymaps","Advanced Macro Functions"]},"1455":{"title":"Advanced Example:","titles":["Macros","Using Macros in C Keymaps"]},"1456":{"title":"Super ALT↯TAB","titles":["Macros","Using Macros in C Keymaps","Advanced Example:"]},"1457":{"title":"Userspace: Sharing Code Between Keymaps","titles":[]},"1458":{"title":"Rules.mk","titles":["Userspace: Sharing Code Between Keymaps"]},"1459":{"title":"Override default userspace","titles":["Userspace: Sharing Code Between Keymaps","Rules.mk"]},"1460":{"title":"Configuration Options (config.h)","titles":["Userspace: Sharing Code Between Keymaps"]},"1461":{"title":"Readme (readme.md)","titles":["Userspace: Sharing Code Between Keymaps"]},"1462":{"title":"Build All Keyboards That Support a Specific Keymap","titles":["Userspace: Sharing Code Between Keymaps"]},"1463":{"title":"Examples","titles":["Userspace: Sharing Code Between Keymaps"]},"1464":{"title":"Customized Functions","titles":["Userspace: Sharing Code Between Keymaps","Examples"]},"1465":{"title":"Custom Features","titles":["Userspace: Sharing Code Between Keymaps","Examples"]},"1466":{"title":"Consolidated Macros","titles":["Userspace: Sharing Code Between Keymaps","Examples"]},"1467":{"title":"Audio","titles":[]},"1468":{"title":"AVR based boards","titles":["Audio"]},"1469":{"title":"Wiring","titles":["Audio","AVR based boards"]},"1470":{"title":"ARM based boards","titles":["Audio"]},"1471":{"title":"DAC (basic)","titles":["Audio","ARM based boards"]},"1472":{"title":"Wiring:","titles":["Audio","ARM based boards","DAC (basic)"]},"1473":{"title":"Proton-C Example:","titles":["Audio","ARM based boards","DAC (basic)","Wiring:"]},"1474":{"title":"DAC (additive)","titles":["Audio","ARM based boards"]},"1475":{"title":"PWM (software)","titles":["Audio","ARM based boards"]},"1476":{"title":"Wiring","titles":["Audio","ARM based boards","PWM (software)"]},"1477":{"title":"PWM (hardware)","titles":["Audio","ARM based boards"]},"1478":{"title":"Tone Multiplexing","titles":["Audio"]},"1479":{"title":"Songs","titles":["Audio"]},"1480":{"title":"Audio Config","titles":["Audio"]},"1481":{"title":"Tempo","titles":["Audio"]},"1482":{"title":"ARM Audio Volume","titles":["Audio"]},"1483":{"title":"Voices","titles":["Audio"]},"1484":{"title":"Music Mode","titles":["Audio"]},"1485":{"title":"Music Mask","titles":["Audio","Music Mode"]},"1486":{"title":"Music Map","titles":["Audio","Music Mode"]},"1487":{"title":"Audio Click","titles":["Audio"]},"1488":{"title":"MIDI Functionality","titles":["Audio"]},"1489":{"title":"Audio Keycodes","titles":["Audio"]},"1490":{"title":"Auto Shift: Why Do We Need a Shift Key?","titles":[]},"1491":{"title":"Why Auto Shift?","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1492":{"title":"How Does It Work?","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1493":{"title":"Are There Limitations to Auto Shift?","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1494":{"title":"How Do I Enable Auto Shift?","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1495":{"title":"Modifiers","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1496":{"title":"Configuring Auto Shift","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1497":{"title":"AUTO_SHIFT_TIMEOUT (Value in ms)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1498":{"title":"NO_AUTO_SHIFT_SPECIAL (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1499":{"title":"NO_AUTO_SHIFT_TAB (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1500":{"title":"NO_AUTO_SHIFT_SYMBOLS (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1501":{"title":"NO_AUTO_SHIFT_NUMERIC (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1502":{"title":"NO_AUTO_SHIFT_ALPHA (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1503":{"title":"AUTO_SHIFT_ENTER (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1504":{"title":"Auto Shift Per Key","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1505":{"title":"AUTO_SHIFT_REPEAT (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1506":{"title":"AUTO_SHIFT_NO_AUTO_REPEAT (simple define)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1507":{"title":"AUTO_SHIFT_ALPHA (predefined key group)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1508":{"title":"AUTO_SHIFT_NUMERIC (predefined key group)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1509":{"title":"AUTO_SHIFT_SYMBOLS (predefined key group)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1510":{"title":"AUTO_SHIFT_SPECIAL (predefined key group)","titles":["Auto Shift: Why Do We Need a Shift Key?","Configuring Auto Shift"]},"1511":{"title":"Custom Shifted Values","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1512":{"title":"Retro Shift","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1513":{"title":"Retro Shift and Tap Hold Configurations","titles":["Auto Shift: Why Do We Need a Shift Key?","Retro Shift"]},"1514":{"title":"Using Auto Shift Setup","titles":["Auto Shift: Why Do We Need a Shift Key?"]},"1515":{"title":"Setup","titles":["Auto Shift: Why Do We Need a Shift Key?","Using Auto Shift Setup"]},"1516":{"title":"Use","titles":["Auto Shift: Why Do We Need a Shift Key?","Using Auto Shift Setup"]},"1517":{"title":"An Example Run","titles":["Auto Shift: Why Do We Need a Shift Key?","Using Auto Shift Setup","Use"]},"1518":{"title":"Autocorrect","titles":[]},"1519":{"title":"How does it work?","titles":["Autocorrect"]},"1520":{"title":"How do I enable Autocorrection","titles":["Autocorrect"]},"1521":{"title":"Customizing autocorrect library","titles":["Autocorrect"]},"1522":{"title":"Avoiding false triggers","titles":["Autocorrect","Customizing autocorrect library"]},"1523":{"title":"Overriding Autocorrect","titles":["Autocorrect"]},"1524":{"title":"Keycodes","titles":["Autocorrect","Overriding Autocorrect"]},"1525":{"title":"User Callback Functions","titles":["Autocorrect"]},"1526":{"title":"Process Autocorrect","titles":["Autocorrect","User Callback Functions"]},"1527":{"title":"Process Autocorrect Example","titles":["Autocorrect","User Callback Functions","Process Autocorrect"]},"1528":{"title":"Apply Autocorrect","titles":["Autocorrect","User Callback Functions"]},"1529":{"title":"Apply Autocorrect Example","titles":["Autocorrect","User Callback Functions","Apply Autocorrect"]},"1530":{"title":"Autocorrect Status","titles":["Autocorrect","User Callback Functions"]},"1531":{"title":"Appendix: Trie binary data format","titles":["Autocorrect"]},"1532":{"title":"Encoding","titles":["Autocorrect","Appendix: Trie binary data format"]},"1533":{"title":"Decoding","titles":["Autocorrect","Appendix: Trie binary data format"]},"1534":{"title":"Credits","titles":["Autocorrect"]},"1535":{"title":"Backlighting","titles":[]},"1536":{"title":"Usage","titles":["Backlighting"]},"1537":{"title":"Keycodes","titles":["Backlighting"]},"1538":{"title":"Basic Configuration","titles":["Backlighting"]},"1539":{"title":""On" State","titles":["Backlighting","Basic Configuration"]},"1540":{"title":"Multiple Backlight Pins","titles":["Backlighting","Basic Configuration"]},"1541":{"title":"Driver Configuration","titles":["Backlighting"]},"1542":{"title":"PWM Driver","titles":["Backlighting","Driver Configuration"]},"1543":{"title":"Timer Driver","titles":["Backlighting","Driver Configuration"]},"1544":{"title":"Software Driver","titles":["Backlighting","Driver Configuration"]},"1545":{"title":"Custom Driver","titles":["Backlighting","Driver Configuration"]},"1546":{"title":"AVR Configuration","titles":["Backlighting"]},"1547":{"title":"PWM Driver","titles":["Backlighting","AVR Configuration"]},"1548":{"title":"Timer Driver","titles":["Backlighting","AVR Configuration"]},"1549":{"title":"ChibiOS/ARM Configuration","titles":["Backlighting"]},"1550":{"title":"PWM Driver","titles":["Backlighting","ChibiOS/ARM Configuration"]},"1551":{"title":"Timer Driver","titles":["Backlighting","ChibiOS/ARM Configuration"]},"1552":{"title":"Example Schematic","titles":["Backlighting"]},"1553":{"title":"API","titles":["Backlighting"]},"1554":{"title":"void backlight_toggle(void)","titles":["Backlighting","API"]},"1555":{"title":"void backlight_enable(void)","titles":["Backlighting","API"]},"1556":{"title":"void backlight_disable(void)","titles":["Backlighting","API"]},"1557":{"title":"void backlight_step(void)","titles":["Backlighting","API"]},"1558":{"title":"void backlight_increase(void)","titles":["Backlighting","API"]},"1559":{"title":"void backlight_decrease(void)","titles":["Backlighting","API"]},"1560":{"title":"void backlight_level(uint8_t level)","titles":["Backlighting","API"]},"1561":{"title":"Arguments","titles":["Backlighting","API","void backlight_level(uint8_t level)"]},"1562":{"title":"uint8_t get_backlight_level(void)","titles":["Backlighting","API"]},"1563":{"title":"Return Value","titles":["Backlighting","API","uint8_t get_backlight_level(void)"]},"1564":{"title":"bool is_backlight_enabled(void)","titles":["Backlighting","API"]},"1565":{"title":"Return Value","titles":["Backlighting","API","bool is_backlight_enabled(void)"]},"1566":{"title":"void backlight_toggle_breathing(void)","titles":["Backlighting","API"]},"1567":{"title":"void backlight_enable_breathing(void)","titles":["Backlighting","API"]},"1568":{"title":"void backlight_disable_breathing(void)","titles":["Backlighting","API"]},"1569":{"title":"bool is_backlight_breathing(void)","titles":["Backlighting","API"]},"1570":{"title":"Return Value","titles":["Backlighting","API","bool is_backlight_breathing(void)"]},"1571":{"title":"Battery","titles":[]},"1572":{"title":"Usage","titles":["Battery"]},"1573":{"title":"Basic Configuration","titles":["Battery"]},"1574":{"title":"Driver Configuration","titles":["Battery"]},"1575":{"title":"Functions","titles":["Battery"]},"1576":{"title":"uint8_t battery_get_percent(void)","titles":["Battery","Functions"]},"1577":{"title":"Return Value","titles":["Battery","Functions","uint8_t battery_get_percent(void)"]},"1578":{"title":"Callbacks","titles":["Battery"]},"1579":{"title":"void battery_percent_changed_user(uint8_t level)","titles":["Battery","Callbacks"]},"1580":{"title":"Arguments","titles":["Battery","Callbacks"]},"1581":{"title":"void battery_percent_changed_kb(uint8_t level)","titles":["Battery","Callbacks"]},"1582":{"title":"Arguments","titles":["Battery","Callbacks"]},"1583":{"title":"Bootmagic","titles":[]},"1584":{"title":"Split Keyboards","titles":["Bootmagic"]},"1585":{"title":"Advanced Bootmagic","titles":["Bootmagic"]},"1586":{"title":"Addenda","titles":["Bootmagic"]},"1587":{"title":"Caps Word","titles":[]},"1588":{"title":"How do I enable Caps Word","titles":["Caps Word"]},"1589":{"title":"Troubleshooting: Command","titles":["Caps Word","How do I enable Caps Word"]},"1590":{"title":"Customizing Caps Word","titles":["Caps Word"]},"1591":{"title":"Invert on shift","titles":["Caps Word","Customizing Caps Word"]},"1592":{"title":"Idle timeout","titles":["Caps Word","Customizing Caps Word"]},"1593":{"title":"Functions","titles":["Caps Word","Customizing Caps Word"]},"1594":{"title":"Configure which keys are "word breaking"","titles":["Caps Word","Customizing Caps Word"]},"1595":{"title":"Representing Caps Word state","titles":["Caps Word","Customizing Caps Word"]},"1596":{"title":"Combos","titles":[]},"1597":{"title":"Advanced Keycodes Support","titles":["Combos"]},"1598":{"title":"Overlapping Combos","titles":["Combos"]},"1599":{"title":"Examples","titles":["Combos"]},"1600":{"title":"Keycodes","titles":["Combos"]},"1601":{"title":"Advanced Configuration","titles":["Combos"]},"1602":{"title":"Combo Term","titles":["Combos","Advanced Configuration"]},"1603":{"title":"Buffer and state sizes","titles":["Combos","Advanced Configuration"]},"1604":{"title":"Modifier Combos","titles":["Combos","Advanced Configuration"]},"1605":{"title":"Strict key press order","titles":["Combos","Advanced Configuration"]},"1606":{"title":"Per Combo Timing, Holding, Tapping and Key Press Order","titles":["Combos","Advanced Configuration"]},"1607":{"title":"Generic hook to (dis)allow a combo activation","titles":["Combos","Advanced Configuration"]},"1608":{"title":"Combo timer","titles":["Combos","Advanced Configuration"]},"1609":{"title":"#define COMBO_STRICT_TIMER","titles":["Combos","Advanced Configuration","Combo timer"]},"1610":{"title":"#define COMBO_NO_TIMER","titles":["Combos","Advanced Configuration","Combo timer"]},"1611":{"title":"Customizable key releases","titles":["Combos","Advanced Configuration"]},"1612":{"title":"Customizable key repress","titles":["Combos","Advanced Configuration"]},"1613":{"title":"Layer independent combos","titles":["Combos","Advanced Configuration"]},"1614":{"title":"Combo reference layers by layer.","titles":["Combos","Advanced Configuration","Layer independent combos"]},"1615":{"title":"User callbacks","titles":["Combos"]},"1616":{"title":"Dictionary Management","titles":["Combos"]},"1617":{"title":"Command","titles":[]},"1618":{"title":"Usage","titles":["Command"]},"1619":{"title":"Configuration","titles":["Command"]},"1620":{"title":"Community Modules","titles":[]},"1621":{"title":"Adding a Community Module to your build","titles":["Community Modules"]},"1622":{"title":"Adding a Community Module to your External Userspace","titles":["Community Modules"]},"1623":{"title":"Writing a QMK Community Module","titles":["Community Modules"]},"1624":{"title":"qmk_module.json","titles":["Community Modules","Writing a QMK Community Module"]},"1625":{"title":"config.h","titles":["Community Modules","Writing a QMK Community Module"]},"1626":{"title":"rules.mk / post_rules.mk","titles":["Community Modules","Writing a QMK Community Module"]},"1627":{"title":"<module>.c","titles":["Community Modules","Writing a QMK Community Module"]},"1628":{"title":"introspection.c / introspection.h","titles":["Community Modules","Writing a QMK Community Module"]},"1629":{"title":"led_matrix_module.inc","titles":["Community Modules","Writing a QMK Community Module"]},"1630":{"title":"rgb_matrix_module.inc","titles":["Community Modules","Writing a QMK Community Module"]},"1631":{"title":"Custom split keyboard data sync","titles":["Community Modules","Writing a QMK Community Module"]},"1632":{"title":"Compatible APIs","titles":["Community Modules","Writing a QMK Community Module"]},"1633":{"title":"Digitizer","titles":[]},"1634":{"title":"Usage","titles":["Digitizer"]},"1635":{"title":"Positioning","titles":["Digitizer"]},"1636":{"title":"Examples","titles":["Digitizer"]},"1637":{"title":"API","titles":["Digitizer"]},"1638":{"title":"struct digitizer_t","titles":["Digitizer","API"]},"1639":{"title":"Members","titles":["Digitizer","API","struct digitizer_t"]},"1640":{"title":"void digitizer_flush(void)","titles":["Digitizer","API"]},"1641":{"title":"void digitizer_in_range_on(void)","titles":["Digitizer","API"]},"1642":{"title":"void digitizer_in_range_off(void)","titles":["Digitizer","API"]},"1643":{"title":"void digitizer_tip_switch_on(void)","titles":["Digitizer","API"]},"1644":{"title":"void digitizer_tip_switch_off(void)","titles":["Digitizer","API"]},"1645":{"title":"void digitizer_barrel_switch_on(void)","titles":["Digitizer","API"]},"1646":{"title":"void digitizer_barrel_switch_off(void)","titles":["Digitizer","API"]},"1647":{"title":"void digitizer_set_position(float x, float y)","titles":["Digitizer","API"]},"1648":{"title":"Arguments","titles":["Digitizer","API","void digitizer_set_position(float x, float y)"]},"1649":{"title":"DIP Switches","titles":[]},"1650":{"title":"DIP Switch map","titles":["DIP Switches"]},"1651":{"title":"Callbacks","titles":["DIP Switches"]},"1652":{"title":"Hardware","titles":["DIP Switches"]},"1653":{"title":"Connects each switch in the dip switch to the GPIO pin of the MCU","titles":["DIP Switches","Hardware"]},"1654":{"title":"Connect each switch in the DIP switch to an unused intersections in the key matrix.","titles":["DIP Switches","Hardware"]},"1655":{"title":"Dynamic Macros: Record and Replay Macros in Runtime","titles":[]},"1656":{"title":"Customization","titles":["Dynamic Macros: Record and Replay Macros in Runtime"]},"1657":{"title":"DYNAMIC_MACRO_USER_CALL","titles":["Dynamic Macros: Record and Replay Macros in Runtime","Customization"]},"1658":{"title":"User Hooks","titles":["Dynamic Macros: Record and Replay Macros in Runtime","Customization"]},"1659":{"title":"Encoders","titles":[]},"1660":{"title":"Split Keyboards","titles":["Encoders"]},"1661":{"title":"Encoder map","titles":["Encoders"]},"1662":{"title":"Callbacks","titles":["Encoders"]},"1663":{"title":"Hardware","titles":["Encoders"]},"1664":{"title":"Multiple Encoders","titles":["Encoders"]},"1665":{"title":"Grave Escape","titles":[]},"1666":{"title":"Usage","titles":["Grave Escape"]},"1667":{"title":"What Your OS Sees","titles":["Grave Escape"]},"1668":{"title":"Keycodes","titles":["Grave Escape"]},"1669":{"title":"Caveats","titles":["Grave Escape","Keycodes"]},"1670":{"title":"Configuration","titles":["Grave Escape"]},"1671":{"title":"Haptic Feedback","titles":[]},"1672":{"title":"Haptic feedback rules.mk options","titles":["Haptic Feedback"]},"1673":{"title":"Known Supported Hardware","titles":["Haptic Feedback"]},"1674":{"title":"Haptic Keycodes","titles":["Haptic Feedback"]},"1675":{"title":"Solenoids","titles":["Haptic Feedback","Haptic Keycodes"]},"1676":{"title":"DRV2605L","titles":["Haptic Feedback","Haptic Keycodes"]},"1677":{"title":"Feedback motor setup","titles":["Haptic Feedback","Haptic Keycodes","DRV2605L"]},"1678":{"title":"ERM","titles":["Haptic Feedback","Haptic Keycodes","DRV2605L","Feedback motor setup"]},"1679":{"title":"LRA","titles":["Haptic Feedback","Haptic Keycodes","DRV2605L","Feedback motor setup"]},"1680":{"title":"DRV2605L waveform library","titles":["Haptic Feedback","Haptic Keycodes","DRV2605L"]},"1681":{"title":"Optional DRV2605L defines","titles":["Haptic Feedback","Haptic Keycodes"]},"1682":{"title":"DRV2605L Continuous Haptic Mode","titles":["Haptic Feedback","Haptic Keycodes"]},"1683":{"title":"Haptic Key Exclusion","titles":["Haptic Feedback"]},"1684":{"title":"NO_HAPTIC_MOD","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1685":{"title":"NO_HAPTIC_ALPHA","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1686":{"title":"NO_HAPTIC_PUNCTUATION","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1687":{"title":"NO_HAPTIC_LOCKKEYS","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1688":{"title":"NO_HAPTIC_NAV","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1689":{"title":"NO_HAPTIC_NUMERIC","titles":["Haptic Feedback","Haptic Key Exclusion"]},"1690":{"title":"HD44780 LCD Driver","titles":[]},"1691":{"title":"Supported Hardware","titles":["HD44780 LCD Driver"]},"1692":{"title":"Usage","titles":["HD44780 LCD Driver"]},"1693":{"title":"Basic Configuration","titles":["HD44780 LCD Driver"]},"1694":{"title":"Examples","titles":["HD44780 LCD Driver"]},"1695":{"title":"Hello World","titles":["HD44780 LCD Driver","Examples"]},"1696":{"title":"Custom Character Definition","titles":["HD44780 LCD Driver","Examples"]},"1697":{"title":"API","titles":["HD44780 LCD Driver"]},"1698":{"title":"void hd44780_init(bool cursor, bool blink)","titles":["HD44780 LCD Driver","API"]},"1699":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_init(bool cursor, bool blink)"]},"1700":{"title":"void hd44780_clear(void)","titles":["HD44780 LCD Driver","API"]},"1701":{"title":"void hd44780_home(void)","titles":["HD44780 LCD Driver","API"]},"1702":{"title":"void hd44780_on(bool cursor, bool blink)","titles":["HD44780 LCD Driver","API"]},"1703":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_on(bool cursor, bool blink)"]},"1704":{"title":"void hd44780_off(void)","titles":["HD44780 LCD Driver","API"]},"1705":{"title":"void hd44780_set_cursor(uint8_t col, uint8_t line)","titles":["HD44780 LCD Driver","API"]},"1706":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_set_cursor(uint8_t col, uint8_t line)"]},"1707":{"title":"void hd44780_putc(char c)","titles":["HD44780 LCD Driver","API"]},"1708":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_putc(char c)"]},"1709":{"title":"void hd44780_puts(const char *s)","titles":["HD44780 LCD Driver","API"]},"1710":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_puts(const char *s)"]},"1711":{"title":"void hd44780_puts_P(const char *s)","titles":["HD44780 LCD Driver","API"]},"1712":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_puts_P(const char *s)"]},"1713":{"title":"void hd44780_define_char(uint8_t index, uint8_t *data)","titles":["HD44780 LCD Driver","API"]},"1714":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_define_char(uint8_t index, uint8_t *data)"]},"1715":{"title":"void hd44780_define_char_P(uint8_t index, const uint8_t *data)","titles":["HD44780 LCD Driver","API"]},"1716":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_define_char_P(uint8_t index, const uint8_t *data)"]},"1717":{"title":"bool hd44780_busy(void)","titles":["HD44780 LCD Driver","API"]},"1718":{"title":"Return Value","titles":["HD44780 LCD Driver","API","bool hd44780_busy(void)"]},"1719":{"title":"void hd44780_write(uint8_t data, bool isData)","titles":["HD44780 LCD Driver","API"]},"1720":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_write(uint8_t data, bool isData)"]},"1721":{"title":"uint8_t hd44780_read(bool isData)","titles":["HD44780 LCD Driver","API"]},"1722":{"title":"Arguments","titles":["HD44780 LCD Driver","API","uint8_t hd44780_read(bool isData)"]},"1723":{"title":"Return Value","titles":["HD44780 LCD Driver","API","uint8_t hd44780_read(bool isData)"]},"1724":{"title":"void hd44780_command(uint8_t command)","titles":["HD44780 LCD Driver","API"]},"1725":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_command(uint8_t command)"]},"1726":{"title":"void hd44780_data(uint8_t data)","titles":["HD44780 LCD Driver","API"]},"1727":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_data(uint8_t data)"]},"1728":{"title":"void hd44780_set_cgram_address(uint8_t address)","titles":["HD44780 LCD Driver","API"]},"1729":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_set_cgram_address(uint8_t address)"]},"1730":{"title":"void hd44780_set_ddram_address(uint8_t address)","titles":["HD44780 LCD Driver","API"]},"1731":{"title":"Arguments","titles":["HD44780 LCD Driver","API","void hd44780_set_ddram_address(uint8_t address)"]},"1732":{"title":"Joystick","titles":[]},"1733":{"title":"Usage","titles":["Joystick"]},"1734":{"title":"Configuration","titles":["Joystick"]},"1735":{"title":"Hat Switch","titles":["Joystick","Configuration"]},"1736":{"title":"Axes","titles":["Joystick","Configuration"]},"1737":{"title":"Virtual Axes","titles":["Joystick","Configuration","Axes"]},"1738":{"title":"Keycodes","titles":["Joystick"]},"1739":{"title":"API","titles":["Joystick"]},"1740":{"title":"struct joystick_t","titles":["Joystick","API"]},"1741":{"title":"Members","titles":["Joystick","API","struct joystick_t"]},"1742":{"title":"struct joystick_config_t","titles":["Joystick","API"]},"1743":{"title":"Members","titles":["Joystick","API","struct joystick_config_t"]},"1744":{"title":"void joystick_flush(void)","titles":["Joystick","API"]},"1745":{"title":"void register_joystick_button(uint8_t button)","titles":["Joystick","API"]},"1746":{"title":"Arguments","titles":["Joystick","API","void register_joystick_button(uint8_t button)"]},"1747":{"title":"void unregister_joystick_button(uint8_t button)","titles":["Joystick","API"]},"1748":{"title":"Arguments","titles":["Joystick","API","void unregister_joystick_button(uint8_t button)"]},"1749":{"title":"int16_t joystick_read_axis(uint8_t axis)","titles":["Joystick","API"]},"1750":{"title":"Arguments","titles":["Joystick","API","int16_t joystick_read_axis(uint8_t axis)"]},"1751":{"title":"Return Value","titles":["Joystick","API","int16_t joystick_read_axis(uint8_t axis)"]},"1752":{"title":"void joystick_set_axis(uint8_t axis, int16_t value)","titles":["Joystick","API"]},"1753":{"title":"Arguments","titles":["Joystick","API","void joystick_set_axis(uint8_t axis, int16_t value)"]},"1754":{"title":"void joystick_set_hat(int8_t value)","titles":["Joystick","API"]},"1755":{"title":"Arguments","titles":["Joystick","API","void joystick_set_hat(int8_t value)"]},"1756":{"title":"Key Lock","titles":[]},"1757":{"title":"Usage","titles":["Key Lock"]},"1758":{"title":"Keycodes","titles":["Key Lock"]},"1759":{"title":"Caveats","titles":["Key Lock"]},"1760":{"title":"Key Overrides","titles":[]},"1761":{"title":"A few more examples to get started: You could use key overrides to...","titles":["Key Overrides"]},"1762":{"title":"Setup","titles":["Key Overrides"]},"1763":{"title":"Creating Key Overrides","titles":["Key Overrides"]},"1764":{"title":"ko_make_basic(modifiers, key, replacement)","titles":["Key Overrides","Creating Key Overrides"]},"1765":{"title":"ko_make_with_layers(modifiers, key, replacement, layers)","titles":["Key Overrides","Creating Key Overrides"]},"1766":{"title":"ko_make_with_layers_and_negmods(modifiers, key, replacement, layers, negative_mods)","titles":["Key Overrides","Creating Key Overrides"]},"1767":{"title":"ko_make_with_layers_negmods_and_options(modifiers, key, replacement, layers, negative_mods, options)","titles":["Key Overrides","Creating Key Overrides"]},"1768":{"title":"Simple Example","titles":["Key Overrides"]},"1769":{"title":"Intermediate Difficulty Examples","titles":["Key Overrides"]},"1770":{"title":"Media Controls & Screen Brightness","titles":["Key Overrides","Intermediate Difficulty Examples"]},"1771":{"title":"Flexible macOS-friendly Grave Escape","titles":["Key Overrides","Intermediate Difficulty Examples"]},"1772":{"title":"Advanced Examples","titles":["Key Overrides"]},"1773":{"title":"Modifiers as Layer Keys","titles":["Key Overrides","Advanced Examples"]},"1774":{"title":"Keycodes","titles":["Key Overrides"]},"1775":{"title":"Reference for key_override_t","titles":["Key Overrides"]},"1776":{"title":"Reference for ko_option_t","titles":["Key Overrides"]},"1777":{"title":"For Advanced Users: Inner Workings","titles":["Key Overrides"]},"1778":{"title":"Activation","titles":["Key Overrides","For Advanced Users: Inner Workings","Modifiers as Layer Keys"]},"1779":{"title":"Deactivation","titles":["Key Overrides","For Advanced Users: Inner Workings","Modifiers as Layer Keys"]},"1780":{"title":"Key Repeat Delay","titles":["Key Overrides","For Advanced Users: Inner Workings","Modifiers as Layer Keys"]},"1781":{"title":"Difference to Combos","titles":["Key Overrides"]},"1782":{"title":"Solution to the problem of flashing modifiers","titles":["Key Overrides"]},"1783":{"title":"The Leader Key: A New Kind of Modifier","titles":[]},"1784":{"title":"Usage","titles":["The Leader Key: A New Kind of Modifier"]},"1785":{"title":"Callbacks","titles":["The Leader Key: A New Kind of Modifier"]},"1786":{"title":"Basic Configuration","titles":["The Leader Key: A New Kind of Modifier"]},"1787":{"title":"Timeout","titles":["The Leader Key: A New Kind of Modifier","Basic Configuration"]},"1788":{"title":"Per-Key Timeout","titles":["The Leader Key: A New Kind of Modifier","Basic Configuration"]},"1789":{"title":"Disabling Initial Timeout","titles":["The Leader Key: A New Kind of Modifier","Basic Configuration"]},"1790":{"title":"Strict Key Processing","titles":["The Leader Key: A New Kind of Modifier","Basic Configuration"]},"1791":{"title":"Example","titles":["The Leader Key: A New Kind of Modifier"]},"1792":{"title":"Keycodes","titles":["The Leader Key: A New Kind of Modifier"]},"1793":{"title":"API","titles":["The Leader Key: A New Kind of Modifier"]},"1794":{"title":"void leader_start_user(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1795":{"title":"void leader_end_user(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1796":{"title":"bool leader_add_user(uint16_t keycode)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1797":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_add_user(uint16_t keycode)"]},"1798":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_add_user(uint16_t keycode)"]},"1799":{"title":"void leader_start(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1800":{"title":"void leader_end(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1801":{"title":"bool leader_sequence_active(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1802":{"title":"bool leader_sequence_add(uint16_t keycode)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1803":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_add(uint16_t keycode)"]},"1804":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_add(uint16_t keycode)"]},"1805":{"title":"bool leader_sequence_timed_out(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1806":{"title":"bool leader_reset_timer(void)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1807":{"title":"bool leader_sequence_one_key(uint16_t kc)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1808":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_one_key(uint16_t kc)"]},"1809":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_one_key(uint16_t kc)"]},"1810":{"title":"bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1811":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)"]},"1812":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)"]},"1813":{"title":"bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1814":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)"]},"1815":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)"]},"1816":{"title":"bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1817":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)"]},"1818":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)"]},"1819":{"title":"bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)","titles":["The Leader Key: A New Kind of Modifier","API"]},"1820":{"title":"Arguments","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)"]},"1821":{"title":"Return Value","titles":["The Leader Key: A New Kind of Modifier","API","bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)"]},"1822":{"title":"Layer Lock","titles":[]},"1823":{"title":"How do I enable Layer Lock","titles":["Layer Lock"]},"1824":{"title":"Example use","titles":["Layer Lock"]},"1825":{"title":"Idle timeout","titles":["Layer Lock"]},"1826":{"title":"Functions","titles":["Layer Lock"]},"1827":{"title":"Representing the current Layer Lock state","titles":["Layer Lock"]},"1828":{"title":"Combine Layer Lock with a mod-tap","titles":["Layer Lock"]},"1829":{"title":"LED Indicators","titles":[]},"1830":{"title":"Configuration Options","titles":["LED Indicators"]},"1831":{"title":"LED update function","titles":["LED Indicators"]},"1832":{"title":"Example of keyboard LED update implementation","titles":["LED Indicators","LED update function"]},"1833":{"title":"Example of user LED update implementation","titles":["LED Indicators","LED update function"]},"1834":{"title":"Host keyboard LED state","titles":["LED Indicators"]},"1835":{"title":"led_update_ports()","titles":["LED Indicators"]},"1836":{"title":"Setting Physical LED State","titles":["LED Indicators"]},"1837":{"title":"Ergodox Boards","titles":["LED Indicators","Setting Physical LED State"]},"1838":{"title":"LED Matrix Lighting","titles":[]},"1839":{"title":"Driver Configuration","titles":["LED Matrix Lighting"]},"1840":{"title":"Common Configuration","titles":["LED Matrix Lighting"]},"1841":{"title":"Flags","titles":["LED Matrix Lighting"]},"1842":{"title":"Keycodes","titles":["LED Matrix Lighting"]},"1843":{"title":"LED Matrix Effects","titles":["LED Matrix Lighting"]},"1844":{"title":"Custom LED Matrix Effects","titles":["LED Matrix Lighting"]},"1845":{"title":"Naming","titles":["LED Matrix Lighting"]},"1846":{"title":"Additional config.h Options","titles":["LED Matrix Lighting"]},"1847":{"title":"EEPROM storage","titles":["LED Matrix Lighting"]},"1848":{"title":"Callbacks","titles":["LED Matrix Lighting"]},"1849":{"title":"Indicators","titles":["LED Matrix Lighting","Callbacks"]},"1850":{"title":"API","titles":["LED Matrix Lighting"]},"1851":{"title":"void led_matrix_toggle(void)","titles":["LED Matrix Lighting","API"]},"1852":{"title":"void led_matrix_toggle_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1853":{"title":"void led_matrix_enable(void)","titles":["LED Matrix Lighting","API"]},"1854":{"title":"void led_matrix_enable_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1855":{"title":"void led_matrix_disable(void)","titles":["LED Matrix Lighting","API"]},"1856":{"title":"void led_matrix_disable_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1857":{"title":"bool led_matrix_is_enabled(void)","titles":["LED Matrix Lighting","API"]},"1858":{"title":"Return Value","titles":["LED Matrix Lighting","API","bool led_matrix_is_enabled(void)"]},"1859":{"title":"void led_matrix_set_value(uint8_t index, uint8_t v)","titles":["LED Matrix Lighting","API"]},"1860":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_value(uint8_t index, uint8_t v)"]},"1861":{"title":"void led_matrix_set_value_all(uint8_t v)","titles":["LED Matrix Lighting","API"]},"1862":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_value_all(uint8_t v)"]},"1863":{"title":"void led_matrix_mode(uint8_t mode)","titles":["LED Matrix Lighting","API"]},"1864":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_mode(uint8_t mode)"]},"1865":{"title":"void led_matrix_mode_noeeprom(uint8_t mode)","titles":["LED Matrix Lighting","API"]},"1866":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_mode_noeeprom(uint8_t mode)"]},"1867":{"title":"void led_matrix_step(void)","titles":["LED Matrix Lighting","API"]},"1868":{"title":"void led_matrix_step_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1869":{"title":"void led_matrix_step_reverse(void)","titles":["LED Matrix Lighting","API"]},"1870":{"title":"void led_matrix_step_reverse_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1871":{"title":"uint8_t led_matrix_get_mode(void)","titles":["LED Matrix Lighting","API"]},"1872":{"title":"Return Value","titles":["LED Matrix Lighting","API","uint8_t led_matrix_get_mode(void)"]},"1873":{"title":"void val_matrix_increase_val(void)","titles":["LED Matrix Lighting","API"]},"1874":{"title":"void led_matrix_increase_val_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1875":{"title":"void led_matrix_decrease_val(void)","titles":["LED Matrix Lighting","API"]},"1876":{"title":"void led_matrix_decrease_val_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1877":{"title":"uint8_t led_matrix_get_val(void)","titles":["LED Matrix Lighting","API"]},"1878":{"title":"Return Value","titles":["LED Matrix Lighting","API","uint8_t led_matrix_get_val(void)"]},"1879":{"title":"void led_matrix_increase_speed(void)","titles":["LED Matrix Lighting","API"]},"1880":{"title":"void led_matrix_increase_speed_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1881":{"title":"void led_matrix_decrease_speed(void)","titles":["LED Matrix Lighting","API"]},"1882":{"title":"void led_matrix_decrease_speed_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1883":{"title":"void led_matrix_set_speed(uint8_t speed)","titles":["LED Matrix Lighting","API"]},"1884":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_speed(uint8_t speed)"]},"1885":{"title":"void led_matrix_set_speed_noeeprom(uint8_t speed)","titles":["LED Matrix Lighting","API"]},"1886":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_speed_noeeprom(uint8_t speed)"]},"1887":{"title":"uint8_t led_matrix_get_speed(void)","titles":["LED Matrix Lighting","API"]},"1888":{"title":"Return Value","titles":["LED Matrix Lighting","API","uint8_t led_matrix_get_speed(void)"]},"1889":{"title":"void led_matrix_set_flags(led_flags_t flags)","titles":["LED Matrix Lighting","API"]},"1890":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_flags(led_flags_t flags)"]},"1891":{"title":"void led_matrix_set_flags_noeeprom(led_flags_t flags)","titles":["LED Matrix Lighting","API"]},"1892":{"title":"Arguments","titles":["LED Matrix Lighting","API","void led_matrix_set_flags_noeeprom(led_flags_t flags)"]},"1893":{"title":"void led_matrix_flags_step(void)","titles":["LED Matrix Lighting","API"]},"1894":{"title":"void led_matrix_flags_step_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1895":{"title":"void led_matrix_flags_step_reverse(void)","titles":["LED Matrix Lighting","API"]},"1896":{"title":"void led_matrix_flags_step_reverse_noeeprom(void)","titles":["LED Matrix Lighting","API"]},"1897":{"title":"uint8_t led_matrix_get_flags(void)","titles":["LED Matrix Lighting","API"]},"1898":{"title":"Return Value","titles":["LED Matrix Lighting","API","uint8_t led_matrix_get_flags(void)"]},"1899":{"title":"void led_matrix_reload_from_eeprom(void)","titles":["LED Matrix Lighting","API"]},"1900":{"title":"bool led_matrix_get_suspend_state(void)","titles":["LED Matrix Lighting","API"]},"1901":{"title":"Return Value","titles":["LED Matrix Lighting","API","bool led_matrix_get_suspend_state(void)"]},"1902":{"title":"bool led_matrix_indicators_kb(void)","titles":["LED Matrix Lighting","API"]},"1903":{"title":"Return Value","titles":["LED Matrix Lighting","API","bool led_matrix_indicators_kb(void)"]},"1904":{"title":"bool led_matrix_indicators_user(void)","titles":["LED Matrix Lighting","API"]},"1905":{"title":"Return Value","titles":["LED Matrix Lighting","API","bool led_matrix_indicators_user(void)"]},"1906":{"title":"bool led_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)","titles":["LED Matrix Lighting","API"]},"1907":{"title":"Arguments","titles":["LED Matrix Lighting","API"]},"1908":{"title":"Return Value","titles":["LED Matrix Lighting","API","Arguments"]},"1909":{"title":"bool led_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)","titles":["LED Matrix Lighting","API"]},"1910":{"title":"Arguments","titles":["LED Matrix Lighting","API"]},"1911":{"title":"Return Value","titles":["LED Matrix Lighting","API","Arguments"]},"1912":{"title":"MIDI","titles":[]},"1913":{"title":"Usage","titles":["MIDI"]},"1914":{"title":"Caveats","titles":["MIDI","Usage"]},"1915":{"title":"Basic MIDI","titles":["MIDI","Usage"]},"1916":{"title":"Advanced MIDI","titles":["MIDI","Usage"]},"1917":{"title":"Sending Control Change (CC) Messages","titles":["MIDI","Usage","Advanced MIDI"]},"1918":{"title":"Example code for using Generic On Off Switches as per MIDI Specification.","titles":["MIDI","Usage","Advanced MIDI"]},"1919":{"title":"Keycodes","titles":["MIDI","Usage"]},"1920":{"title":"Configuration","titles":["MIDI","Usage"]},"1921":{"title":"References","titles":["MIDI","Usage"]},"1922":{"title":"MIDI Specification","titles":["MIDI","Usage","References"]},"1923":{"title":"QMK C Files","titles":["MIDI","Usage","References"]},"1924":{"title":"Mouse keys","titles":[]},"1925":{"title":"Adding mouse keys to your keyboard","titles":["Mouse keys"]},"1926":{"title":"Enabling mouse keys","titles":["Mouse keys","Adding mouse keys to your keyboard"]},"1927":{"title":"Mapping mouse actions","titles":["Mouse keys","Adding mouse keys to your keyboard"]},"1928":{"title":"Configuring mouse keys","titles":["Mouse keys"]},"1929":{"title":"Accelerated mode","titles":["Mouse keys","Configuring mouse keys"]},"1930":{"title":"Kinetic Mode","titles":["Mouse keys","Configuring mouse keys"]},"1931":{"title":"Constant mode","titles":["Mouse keys","Configuring mouse keys"]},"1932":{"title":"Combined mode","titles":["Mouse keys","Configuring mouse keys"]},"1933":{"title":"Inertia mode","titles":["Mouse keys","Configuring mouse keys"]},"1934":{"title":"Overlapping mouse key control","titles":["Mouse keys","Configuring mouse keys"]},"1935":{"title":"Use with PS/2 Mouse and Pointing Device","titles":["Mouse keys"]},"1936":{"title":"OS Detection","titles":[]},"1937":{"title":"Usage","titles":["OS Detection"]},"1938":{"title":"Callbacks","titles":["OS Detection"]},"1939":{"title":"OS detection stability","titles":["OS Detection"]},"1940":{"title":"Configuration Options","titles":["OS Detection"]},"1941":{"title":"Troubleshooting","titles":["OS Detection"]},"1942":{"title":"Debug","titles":["OS Detection"]},"1943":{"title":"Credits","titles":["OS Detection"]},"1944":{"title":"OLED Driver","titles":[]},"1945":{"title":"Supported Hardware","titles":["OLED Driver"]},"1946":{"title":"Usage","titles":["OLED Driver"]},"1947":{"title":"OLED type","titles":["OLED Driver"]},"1948":{"title":"Logo Example","titles":["OLED Driver"]},"1949":{"title":"Buffer Read Example","titles":["OLED Driver"]},"1950":{"title":"Other Examples","titles":["OLED Driver"]},"1951":{"title":"Basic Configuration","titles":["OLED Driver"]},"1952":{"title":"I2C Configuration","titles":["OLED Driver","Basic Configuration"]},"1953":{"title":"SPI Configuration","titles":["OLED Driver","Basic Configuration"]},"1954":{"title":"128x64 & Custom sized OLED Displays","titles":["OLED Driver"]},"1955":{"title":"90 Degree Rotation - Technical Mumbo Jumbo","titles":["OLED Driver","128x64 & Custom sized OLED Displays"]},"1956":{"title":"OLED API","titles":["OLED Driver"]},"1957":{"title":"SSD1306.h Driver Conversion Guide","titles":["OLED Driver"]},"1958":{"title":"Pointing Device","titles":[]},"1959":{"title":"Sensor Drivers","titles":["Pointing Device"]},"1960":{"title":"ADNS 5050 Sensor","titles":["Pointing Device","Sensor Drivers"]},"1961":{"title":"ADNS 9800 Sensor","titles":["Pointing Device","Sensor Drivers"]},"1962":{"title":"Analog Joystick","titles":["Pointing Device","Sensor Drivers"]},"1963":{"title":"Azoteq IQS5XX Trackpad","titles":["Pointing Device","Sensor Drivers"]},"1964":{"title":"Device settings","titles":["Pointing Device","Sensor Drivers","Azoteq IQS5XX Trackpad"]},"1965":{"title":"Gesture settings","titles":["Pointing Device","Sensor Drivers","Azoteq IQS5XX Trackpad"]},"1966":{"title":"Rotation settings","titles":["Pointing Device","Sensor Drivers","Azoteq IQS5XX Trackpad"]},"1967":{"title":"Cirque Trackpad","titles":["Pointing Device","Sensor Drivers"]},"1968":{"title":"Common settings","titles":["Pointing Device","Sensor Drivers","Cirque Trackpad"]},"1969":{"title":"Absolute mode settings","titles":["Pointing Device","Sensor Drivers","Cirque Trackpad"]},"1970":{"title":"Absolute mode gestures","titles":["Pointing Device","Sensor Drivers","Cirque Trackpad"]},"1971":{"title":"Relative mode gestures","titles":["Pointing Device","Sensor Drivers","Cirque Trackpad"]},"1972":{"title":"PAW 3204 Sensor","titles":["Pointing Device","Sensor Drivers"]},"1973":{"title":"PAW-3222 Sensor","titles":["Pointing Device","Sensor Drivers"]},"1974":{"title":"Pimoroni Trackball","titles":["Pointing Device","Sensor Drivers"]},"1975":{"title":"PMW3320 Sensor","titles":["Pointing Device","Sensor Drivers"]},"1976":{"title":"PMW 3360 and PMW 3389 Sensor","titles":["Pointing Device","Sensor Drivers"]},"1977":{"title":"Custom Driver","titles":["Pointing Device","Sensor Drivers"]},"1978":{"title":"Common Configuration","titles":["Pointing Device"]},"1979":{"title":"High Resolution Scrolling","titles":["Pointing Device"]},"1980":{"title":"Split Keyboard Configuration","titles":["Pointing Device"]},"1981":{"title":"Callbacks and Functions","titles":["Pointing Device"]},"1982":{"title":"Split Keyboard Callbacks and Functions","titles":["Pointing Device"]},"1983":{"title":"Manipulating Mouse Reports","titles":[]},"1984":{"title":"Examples","titles":["Manipulating Mouse Reports"]},"1985":{"title":"Custom Mouse Keycode","titles":["Manipulating Mouse Reports","Examples"]},"1986":{"title":"Drag Scroll or Mouse Scroll","titles":["Manipulating Mouse Reports","Examples"]},"1987":{"title":"Advanced Drag Scroll","titles":["Manipulating Mouse Reports","Examples"]},"1988":{"title":"Split Examples","titles":["Manipulating Mouse Reports"]},"1989":{"title":"Single Pointing Device","titles":["Manipulating Mouse Reports","Split Examples"]},"1990":{"title":"Combined Pointing Devices","titles":["Manipulating Mouse Reports","Split Examples"]},"1991":{"title":"Troubleshooting","titles":[]},"1992":{"title":"Automatic Mouse Layer","titles":[]},"1993":{"title":"Behaviour of Layer keys that activate the target layer","titles":["Automatic Mouse Layer"]},"1994":{"title":"How to enable:","titles":["Automatic Mouse Layer"]},"1995":{"title":"How to Customize:","titles":["Automatic Mouse Layer"]},"1996":{"title":"config.h Options:","titles":["Automatic Mouse Layer","How to Customize:"]},"1997":{"title":"Adding mouse keys","titles":["Automatic Mouse Layer","How to Customize:"]},"1998":{"title":"Callbacks for setting up additional key codes as mouse keys:","titles":["Automatic Mouse Layer","How to Customize:","Adding mouse keys"]},"1999":{"title":"To use the callback function to add mouse keys:","titles":["Automatic Mouse Layer","How to Customize:","Adding mouse keys","Callbacks for setting up additional key codes as mouse keys:"]},"2000":{"title":"Advanced control","titles":["Automatic Mouse Layer"]},"2001":{"title":"Functions to control auto mouse enable and target layer:","titles":["Automatic Mouse Layer","Advanced control"]},"2002":{"title":"Functions for handling custom key events:","titles":["Automatic Mouse Layer","Advanced control"]},"2003":{"title":"Advanced control examples","titles":["Automatic Mouse Layer","Advanced control"]},"2004":{"title":"Disable auto mouse on certain layers:","titles":["Automatic Mouse Layer","Advanced control","Advanced control examples"]},"2005":{"title":"Set different target layer when a particular layer is active:","titles":["Automatic Mouse Layer","Advanced control","Advanced control examples"]},"2006":{"title":"Use custom keys to control auto mouse:","titles":["Automatic Mouse Layer","Advanced control"]},"2007":{"title":"Customize Target Layer Activation","titles":["Automatic Mouse Layer"]},"2008":{"title":"Auto Mouse for Custom Pointing Device Task","titles":["Automatic Mouse Layer"]},"2009":{"title":"Programmable Button","titles":[]},"2010":{"title":"Usage","titles":["Programmable Button"]},"2011":{"title":"Keycodes","titles":["Programmable Button"]},"2012":{"title":"API","titles":["Programmable Button"]},"2013":{"title":"void programmable_button_clear(void)","titles":["Programmable Button","API"]},"2014":{"title":"void programmable_button_add(uint8_t index)","titles":["Programmable Button","API"]},"2015":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_add(uint8_t index)"]},"2016":{"title":"void programmable_button_remove(uint8_t index)","titles":["Programmable Button","API"]},"2017":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_remove(uint8_t index)"]},"2018":{"title":"void programmable_button_register(uint8_t index)","titles":["Programmable Button","API"]},"2019":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_register(uint8_t index)"]},"2020":{"title":"void programmable_button_unregister(uint8_t index)","titles":["Programmable Button","API"]},"2021":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_unregister(uint8_t index)"]},"2022":{"title":"bool programmable_button_is_on(uint8_t index)","titles":["Programmable Button","API"]},"2023":{"title":"Arguments","titles":["Programmable Button","API","bool programmable_button_is_on(uint8_t index)"]},"2024":{"title":"Return Value","titles":["Programmable Button","API","bool programmable_button_is_on(uint8_t index)"]},"2025":{"title":"void programmable_button_flush(void)","titles":["Programmable Button","API"]},"2026":{"title":"uint32_t programmable_button_get_report(void)","titles":["Programmable Button","API"]},"2027":{"title":"Return Value","titles":["Programmable Button","API","uint32_t programmable_button_get_report(void)"]},"2028":{"title":"void programmable_button_set_report(uint32_t report)","titles":["Programmable Button","API"]},"2029":{"title":"Arguments","titles":["Programmable Button","API","void programmable_button_set_report(uint32_t report)"]},"2030":{"title":"PS/2 Mouse Support","titles":[]},"2031":{"title":"The Circuitry between Trackpoint and Controller","titles":["PS/2 Mouse Support"]},"2032":{"title":"Driver Configuration","titles":["PS/2 Mouse Support"]},"2033":{"title":"Busywait Driver","titles":["PS/2 Mouse Support","Driver Configuration"]},"2034":{"title":"Interrupt Driver (AVR/ATMega32u4)","titles":["PS/2 Mouse Support","Driver Configuration"]},"2035":{"title":"Interrupt Driver (ARM chibios)","titles":["PS/2 Mouse Support","Driver Configuration"]},"2036":{"title":"USART Driver","titles":["PS/2 Mouse Support","Driver Configuration"]},"2037":{"title":"RP2040 PIO Driver","titles":["PS/2 Mouse Support","Driver Configuration"]},"2038":{"title":"Additional Settings","titles":["PS/2 Mouse Support"]},"2039":{"title":"PS/2 Mouse Features","titles":["PS/2 Mouse Support","Additional Settings"]},"2040":{"title":"Fine Control","titles":["PS/2 Mouse Support","Additional Settings"]},"2041":{"title":"Scroll Button","titles":["PS/2 Mouse Support","Additional Settings"]},"2042":{"title":"Invert Mouse buttons","titles":["PS/2 Mouse Support","Additional Settings"]},"2043":{"title":"Invert Mouse and Scroll Axes","titles":["PS/2 Mouse Support","Additional Settings"]},"2044":{"title":"Rotate Mouse Axes","titles":["PS/2 Mouse Support","Additional Settings"]},"2045":{"title":"Debug Settings","titles":["PS/2 Mouse Support","Additional Settings"]},"2046":{"title":"Movement Hook","titles":["PS/2 Mouse Support","Additional Settings"]},"2047":{"title":"Raw HID","titles":[]},"2048":{"title":"Usage","titles":["Raw HID"]},"2049":{"title":"Basic Configuration","titles":["Raw HID"]},"2050":{"title":"Sending Data to the Keyboard","titles":["Raw HID"]},"2051":{"title":"Receiving Data from the Keyboard","titles":["Raw HID"]},"2052":{"title":"Simple Example","titles":["Raw HID"]},"2053":{"title":"API","titles":["Raw HID"]},"2054":{"title":"void raw_hid_receive(uint8_t *data, uint8_t length)","titles":["Raw HID","API"]},"2055":{"title":"Arguments","titles":["Raw HID","API","void raw_hid_receive(uint8_t *data, uint8_t length)"]},"2056":{"title":"void raw_hid_send(uint8_t *data, uint8_t length)","titles":["Raw HID","API"]},"2057":{"title":"Arguments","titles":["Raw HID","API","void raw_hid_send(uint8_t *data, uint8_t length)"]},"2058":{"title":"RGB Matrix Lighting","titles":[]},"2059":{"title":"Driver Configuration","titles":["RGB Matrix Lighting"]},"2060":{"title":"Common Configuration","titles":["RGB Matrix Lighting"]},"2061":{"title":"Flags","titles":["RGB Matrix Lighting"]},"2062":{"title":"Keycodes","titles":["RGB Matrix Lighting"]},"2063":{"title":"RGB Matrix Effects","titles":["RGB Matrix Lighting"]},"2064":{"title":"RGB Matrix Effect Typing Heatmap","titles":["RGB Matrix Lighting","RGB Matrix Effects"]},"2065":{"title":"RGB Matrix Effect Solid Reactive","titles":["RGB Matrix Lighting","RGB Matrix Effects"]},"2066":{"title":"Custom RGB Matrix Effects","titles":["RGB Matrix Lighting"]},"2067":{"title":"Colors","titles":["RGB Matrix Lighting"]},"2068":{"title":"Naming","titles":["RGB Matrix Lighting"]},"2069":{"title":"Additional config.h Options","titles":["RGB Matrix Lighting"]},"2070":{"title":"EEPROM storage","titles":["RGB Matrix Lighting"]},"2071":{"title":"Callbacks","titles":["RGB Matrix Lighting"]},"2072":{"title":"Indicators","titles":["RGB Matrix Lighting","Callbacks"]},"2073":{"title":"Indicator Examples","titles":["RGB Matrix Lighting","Callbacks"]},"2074":{"title":"Examples","titles":["RGB Matrix Lighting","Callbacks","Indicator Examples"]},"2075":{"title":"Indicators without RGB Matrix Effect","titles":["RGB Matrix Lighting","Callbacks","Indicator Examples"]},"2076":{"title":"API","titles":["RGB Matrix Lighting"]},"2077":{"title":"void rgb_matrix_toggle(void)","titles":["RGB Matrix Lighting","API"]},"2078":{"title":"void rgb_matrix_toggle_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2079":{"title":"void rgb_matrix_enable(void)","titles":["RGB Matrix Lighting","API"]},"2080":{"title":"void rgb_matrix_enable_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2081":{"title":"void rgb_matrix_disable(void)","titles":["RGB Matrix Lighting","API"]},"2082":{"title":"void rgb_matrix_disable_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2083":{"title":"bool rgb_matrix_is_enabled(void)","titles":["RGB Matrix Lighting","API"]},"2084":{"title":"Return Value","titles":["RGB Matrix Lighting","API","bool rgb_matrix_is_enabled(void)"]},"2085":{"title":"void rgb_matrix_set_color(uint8_t index, uint8_t r, uint8_t g, uint8_t b)","titles":["RGB Matrix Lighting","API"]},"2086":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_color(uint8_t index, uint8_t r, uint8_t g, uint8_t b)"]},"2087":{"title":"void rgb_matrix_set_color_all(uint8_t r, uint8_t g, uint8_t b)","titles":["RGB Matrix Lighting","API"]},"2088":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_color_all(uint8_t r, uint8_t g, uint8_t b)"]},"2089":{"title":"void rgb_matrix_mode(uint8_t mode)","titles":["RGB Matrix Lighting","API"]},"2090":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_mode(uint8_t mode)"]},"2091":{"title":"void rgb_matrix_mode_noeeprom(uint8_t mode)","titles":["RGB Matrix Lighting","API"]},"2092":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_mode_noeeprom(uint8_t mode)"]},"2093":{"title":"void rgb_matrix_step(void)","titles":["RGB Matrix Lighting","API"]},"2094":{"title":"void rgb_matrix_step_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2095":{"title":"void rgb_matrix_step_reverse(void)","titles":["RGB Matrix Lighting","API"]},"2096":{"title":"void rgb_matrix_step_reverse_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2097":{"title":"uint8_t rgb_matrix_get_mode(void)","titles":["RGB Matrix Lighting","API"]},"2098":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_mode(void)"]},"2099":{"title":"void rgb_matrix_increase_hue(void)","titles":["RGB Matrix Lighting","API"]},"2100":{"title":"void rgb_matrix_increase_hue_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2101":{"title":"void rgb_matrix_decrease_hue(void)","titles":["RGB Matrix Lighting","API"]},"2102":{"title":"void rgb_matrix_decrease_hue_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2103":{"title":"uint8_t rgb_matrix_get_hue(void)","titles":["RGB Matrix Lighting","API"]},"2104":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_hue(void)"]},"2105":{"title":"void rgb_matrix_increase_sat(void)","titles":["RGB Matrix Lighting","API"]},"2106":{"title":"void rgb_matrix_increase_sat_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2107":{"title":"void rgb_matrix_decrease_sat(void)","titles":["RGB Matrix Lighting","API"]},"2108":{"title":"void rgb_matrix_decrease_sat_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2109":{"title":"uint8_t rgb_matrix_get_sat(void)","titles":["RGB Matrix Lighting","API"]},"2110":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_sat(void)"]},"2111":{"title":"void rgb_matrix_increase_val(void)","titles":["RGB Matrix Lighting","API"]},"2112":{"title":"void rgb_matrix_increase_val_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2113":{"title":"void rgb_matrix_decrease_val(void)","titles":["RGB Matrix Lighting","API"]},"2114":{"title":"void rgb_matrix_decrease_val_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2115":{"title":"uint8_t rgb_matrix_get_val(void)","titles":["RGB Matrix Lighting","API"]},"2116":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_val(void)"]},"2117":{"title":"void rgb_matrix_increase_speed(void)","titles":["RGB Matrix Lighting","API"]},"2118":{"title":"void rgb_matrix_increase_speed_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2119":{"title":"void rgb_matrix_decrease_speed(void)","titles":["RGB Matrix Lighting","API"]},"2120":{"title":"void rgb_matrix_decrease_speed_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2121":{"title":"void rgb_matrix_set_speed(uint8_t speed)","titles":["RGB Matrix Lighting","API"]},"2122":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_speed(uint8_t speed)"]},"2123":{"title":"void rgb_matrix_set_speed_noeeprom(uint8_t speed)","titles":["RGB Matrix Lighting","API"]},"2124":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_speed_noeeprom(uint8_t speed)"]},"2125":{"title":"uint8_t rgb_matrix_get_speed(void)","titles":["RGB Matrix Lighting","API"]},"2126":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_speed(void)"]},"2127":{"title":"void rgb_matrix_set_flags(led_flags_t flags)","titles":["RGB Matrix Lighting","API"]},"2128":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_flags(led_flags_t flags)"]},"2129":{"title":"void rgb_matrix_set_flags_noeeprom(led_flags_t flags)","titles":["RGB Matrix Lighting","API"]},"2130":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_set_flags_noeeprom(led_flags_t flags)"]},"2131":{"title":"void rgb_matrix_flags_step(void)","titles":["RGB Matrix Lighting","API"]},"2132":{"title":"void rgb_matrix_flags_step_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2133":{"title":"void rgb_matrix_flags_step_reverse(void)","titles":["RGB Matrix Lighting","API"]},"2134":{"title":"void rgb_matrix_flags_step_reverse_noeeprom(void)","titles":["RGB Matrix Lighting","API"]},"2135":{"title":"uint8_t rgb_matrix_get_flags(void)","titles":["RGB Matrix Lighting","API"]},"2136":{"title":"Return Value","titles":["RGB Matrix Lighting","API","uint8_t rgb_matrix_get_flags(void)"]},"2137":{"title":"void rgb_matrix_sethsv(uint8_t h, uint8_t s, uint8_t v)","titles":["RGB Matrix Lighting","API"]},"2138":{"title":"Arguments","titles":["RGB Matrix Lighting","API"]},"2139":{"title":"void rgb_matrix_sethsv_noeeprom(uint8_t h, uint8_t s, uint8_t v)","titles":["RGB Matrix Lighting","API"]},"2140":{"title":"Arguments","titles":["RGB Matrix Lighting","API","void rgb_matrix_sethsv_noeeprom(uint8_t h, uint8_t s, uint8_t v)"]},"2141":{"title":"hsv_t rgb_matrix_get_hsv(void)","titles":["RGB Matrix Lighting","API"]},"2142":{"title":"Return Value","titles":["RGB Matrix Lighting","API","hsv_t rgb_matrix_get_hsv(void)"]},"2143":{"title":"void rgb_matrix_reload_from_eeprom(void)","titles":["RGB Matrix Lighting","API"]},"2144":{"title":"bool rgb_matrix_get_suspend_state(void)","titles":["RGB Matrix Lighting","API"]},"2145":{"title":"Return Value","titles":["RGB Matrix Lighting","API","bool rgb_matrix_get_suspend_state(void)"]},"2146":{"title":"bool rgb_matrix_indicators_kb(void)","titles":["RGB Matrix Lighting","API"]},"2147":{"title":"Return Value","titles":["RGB Matrix Lighting","API","bool rgb_matrix_indicators_kb(void)"]},"2148":{"title":"bool rgb_matrix_indicators_user(void)","titles":["RGB Matrix Lighting","API"]},"2149":{"title":"Return Value","titles":["RGB Matrix Lighting","API","bool rgb_matrix_indicators_user(void)"]},"2150":{"title":"bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)","titles":["RGB Matrix Lighting","API"]},"2151":{"title":"Arguments","titles":["RGB Matrix Lighting","API"]},"2152":{"title":"Return Value","titles":["RGB Matrix Lighting","API","Arguments"]},"2153":{"title":"bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)","titles":["RGB Matrix Lighting","API"]},"2154":{"title":"Arguments","titles":["RGB Matrix Lighting","API"]},"2155":{"title":"Return Value","titles":["RGB Matrix Lighting","API","Arguments"]},"2156":{"title":"Repeat Key","titles":[]},"2157":{"title":"How do I enable Repeat Key","titles":["Repeat Key"]},"2158":{"title":"Keycodes","titles":["Repeat Key"]},"2159":{"title":"Alternate Repeating","titles":["Repeat Key"]},"2160":{"title":"Defining alternate keys","titles":["Repeat Key"]},"2161":{"title":"Eliminating SFBs","titles":["Repeat Key","Defining alternate keys"]},"2162":{"title":"Typing shortcuts","titles":["Repeat Key","Defining alternate keys"]},"2163":{"title":"Ignoring certain keys and mods","titles":["Repeat Key"]},"2164":{"title":"Ignoring a key","titles":["Repeat Key","Ignoring certain keys and mods"]},"2165":{"title":"Filtering remembered mods","titles":["Repeat Key","Ignoring certain keys and mods"]},"2166":{"title":"Further conditions","titles":["Repeat Key","Ignoring certain keys and mods"]},"2167":{"title":"Handle how a key is repeated","titles":["Repeat Key"]},"2168":{"title":"Handle how a key is alternate repeated","titles":["Repeat Key"]},"2169":{"title":"Functions","titles":["Repeat Key"]},"2170":{"title":"Additional "Alternate" keys","titles":["Repeat Key"]},"2171":{"title":"RGB Lighting","titles":[]},"2172":{"title":"Usage","titles":["RGB Lighting"]},"2173":{"title":"Color Selection","titles":["RGB Lighting","Usage"]},"2174":{"title":"Keycodes","titles":["RGB Lighting"]},"2175":{"title":"Configuration","titles":["RGB Lighting"]},"2176":{"title":"Effects and Animations","titles":["RGB Lighting"]},"2177":{"title":"Effect and Animation Toggles","titles":["RGB Lighting","Effects and Animations"]},"2178":{"title":"Effect and Animation Settings","titles":["RGB Lighting","Effects and Animations"]},"2179":{"title":"Example Usage to Reduce Memory Footprint","titles":["RGB Lighting","Effects and Animations"]},"2180":{"title":"Animation Speed","titles":["RGB Lighting","Effects and Animations"]},"2181":{"title":"Lighting Layers","titles":["RGB Lighting"]},"2182":{"title":"Defining Lighting Layers","titles":["RGB Lighting","Lighting Layers"]},"2183":{"title":"Enabling and disabling lighting layers","titles":["RGB Lighting","Lighting Layers"]},"2184":{"title":"Lighting layer blink","titles":["RGB Lighting","Lighting Layers"]},"2185":{"title":"Overriding RGB Lighting on/off status","titles":["RGB Lighting","Lighting Layers"]},"2186":{"title":"Retain brightness","titles":["RGB Lighting","Lighting Layers"]},"2187":{"title":"Functions","titles":["RGB Lighting"]},"2188":{"title":"Low level Functions","titles":["RGB Lighting","Functions"]},"2189":{"title":"Effects and Animations Functions","titles":["RGB Lighting","Functions"]},"2190":{"title":"effect range setting","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2191":{"title":"direct operation","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2192":{"title":"effect mode change","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2193":{"title":"effects mode disable/enable","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2194":{"title":"hue, sat, val change","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2195":{"title":"Speed functions","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2196":{"title":"layer functions","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2197":{"title":"query","titles":["RGB Lighting","Functions","Effects and Animations Functions"]},"2198":{"title":"Colors","titles":["RGB Lighting"]},"2199":{"title":"Changing the order of the LEDs","titles":["RGB Lighting"]},"2200":{"title":"Clipping Range","titles":["RGB Lighting"]},"2201":{"title":"Hardware Modification","titles":["RGB Lighting"]},"2202":{"title":"Velocikey","titles":["RGB Lighting"]},"2203":{"title":"Usage","titles":["RGB Lighting","Velocikey"]},"2204":{"title":"Configuration","titles":["RGB Lighting","Velocikey"]},"2205":{"title":"Secure","titles":[]},"2206":{"title":"Unlock sequence","titles":["Secure"]},"2207":{"title":"Automatic Locking","titles":["Secure"]},"2208":{"title":"Usage","titles":["Secure"]},"2209":{"title":"Keycodes","titles":["Secure"]},"2210":{"title":"Configuration","titles":["Secure"]},"2211":{"title":"Functions","titles":["Secure"]},"2212":{"title":"Sequencer","titles":[]},"2213":{"title":"Enable the step sequencer","titles":["Sequencer"]},"2214":{"title":"Tracks","titles":["Sequencer"]},"2215":{"title":"Resolutions","titles":["Sequencer"]},"2216":{"title":"Keycodes","titles":["Sequencer"]},"2217":{"title":"Functions","titles":["Sequencer"]},"2218":{"title":"Send String","titles":[]},"2219":{"title":"Usage","titles":["Send String"]},"2220":{"title":"Basic Configuration","titles":["Send String"]},"2221":{"title":"Keycodes","titles":["Send String"]},"2222":{"title":"Language Support","titles":["Send String","Keycodes"]},"2223":{"title":"Examples","titles":["Send String"]},"2224":{"title":"Hello World","titles":["Send String","Examples"]},"2225":{"title":"Keycode Injection","titles":["Send String","Examples"]},"2226":{"title":"API","titles":["Send String"]},"2227":{"title":"void send_string(const char *string)","titles":["Send String","API"]},"2228":{"title":"Arguments","titles":["Send String","API","void send_string(const char *string)"]},"2229":{"title":"void send_string_with_delay(const char *string, uint8_t interval)","titles":["Send String","API"]},"2230":{"title":"Arguments","titles":["Send String","API","void send_string_with_delay(const char *string, uint8_t interval)"]},"2231":{"title":"void send_string_P(const char *string)","titles":["Send String","API"]},"2232":{"title":"Arguments","titles":["Send String","API","void send_string_P(const char *string)"]},"2233":{"title":"void send_string_with_delay_P(const char *string, uint8_t interval)","titles":["Send String","API"]},"2234":{"title":"Arguments","titles":["Send String","API","void send_string_with_delay_P(const char *string, uint8_t interval)"]},"2235":{"title":"void send_char(char ascii_code)","titles":["Send String","API"]},"2236":{"title":"Arguments","titles":["Send String","API","void send_char(char ascii_code)"]},"2237":{"title":"void send_dword(uint32_t number)","titles":["Send String","API"]},"2238":{"title":"Arguments","titles":["Send String","API","void send_dword(uint32_t number)"]},"2239":{"title":"void send_word(uint16_t number)","titles":["Send String","API"]},"2240":{"title":"Arguments","titles":["Send String","API","void send_word(uint16_t number)"]},"2241":{"title":"void send_byte(uint8_t number)","titles":["Send String","API"]},"2242":{"title":"Arguments","titles":["Send String","API","void send_byte(uint8_t number)"]},"2243":{"title":"void send_nibble(uint8_t number)","titles":["Send String","API"]},"2244":{"title":"Arguments","titles":["Send String","API","void send_nibble(uint8_t number)"]},"2245":{"title":"void tap_random_base64(void)","titles":["Send String","API"]},"2246":{"title":"SEND_STRING(string)","titles":["Send String","API"]},"2247":{"title":"SEND_STRING_DELAY(string, interval)","titles":["Send String","API"]},"2248":{"title":"Space Cadet: The Future, Built In","titles":[]},"2249":{"title":"Usage","titles":["Space Cadet: The Future, Built In"]},"2250":{"title":"Keycodes","titles":["Space Cadet: The Future, Built In"]},"2251":{"title":"Caveats","titles":["Space Cadet: The Future, Built In"]},"2252":{"title":"Configuration","titles":["Space Cadet: The Future, Built In"]},"2253":{"title":"Obsolete Configuration","titles":["Space Cadet: The Future, Built In"]},"2254":{"title":"Split Keyboard","titles":[]},"2255":{"title":"Compatibility Overview","titles":["Split Keyboard"]},"2256":{"title":"Hardware Configuration","titles":["Split Keyboard"]},"2257":{"title":"Required Hardware","titles":["Split Keyboard","Hardware Configuration"]},"2258":{"title":"Considerations","titles":["Split Keyboard","Hardware Configuration","Required Hardware"]},"2259":{"title":"Serial Wiring","titles":["Split Keyboard","Hardware Configuration"]},"2260":{"title":"I2C Wiring","titles":["Split Keyboard","Hardware Configuration"]},"2261":{"title":"Firmware Configuration","titles":["Split Keyboard"]},"2262":{"title":"Layout Macro","titles":["Split Keyboard","Firmware Configuration"]},"2263":{"title":"Setting Handedness","titles":["Split Keyboard","Firmware Configuration"]},"2264":{"title":"Handedness by Pin","titles":["Split Keyboard","Firmware Configuration","Setting Handedness"]},"2265":{"title":"Handedness by Matrix Pin","titles":["Split Keyboard","Firmware Configuration","Setting Handedness"]},"2266":{"title":"Handedness by EEPROM","titles":["Split Keyboard","Firmware Configuration","Setting Handedness"]},"2267":{"title":"Handedness by #define","titles":["Split Keyboard","Firmware Configuration","Setting Handedness"]},"2268":{"title":"Communication Options","titles":["Split Keyboard","Firmware Configuration"]},"2269":{"title":"Data Sync Options","titles":["Split Keyboard","Firmware Configuration"]},"2270":{"title":"Custom data sync between sides","titles":["Split Keyboard","Firmware Configuration"]},"2271":{"title":"Hardware Configuration Options","titles":["Split Keyboard","Firmware Configuration"]},"2272":{"title":"Hardware Considerations and Mods","titles":["Split Keyboard"]},"2273":{"title":"Teensy boards","titles":["Split Keyboard","Hardware Considerations and Mods"]},"2274":{"title":"Additional Resources","titles":["Split Keyboard"]},"2275":{"title":"ST7565 LCD Driver","titles":[]},"2276":{"title":"Supported Hardware","titles":["ST7565 LCD Driver"]},"2277":{"title":"Usage","titles":["ST7565 LCD Driver"]},"2278":{"title":"Logo Example","titles":["ST7565 LCD Driver"]},"2279":{"title":"Buffer Read Example","titles":["ST7565 LCD Driver"]},"2280":{"title":"Other Examples","titles":["ST7565 LCD Driver"]},"2281":{"title":"Basic Configuration","titles":["ST7565 LCD Driver"]},"2282":{"title":"Custom sized displays","titles":["ST7565 LCD Driver"]},"2283":{"title":"API","titles":["ST7565 LCD Driver"]},"2284":{"title":"Stenography in QMK","titles":[]},"2285":{"title":"Steno Support in QMK","titles":["Stenography in QMK"]},"2286":{"title":"Plover with QWERTY Keyboard","titles":["Stenography in QMK"]},"2287":{"title":"Plover with Steno Protocol","titles":["Stenography in QMK"]},"2288":{"title":"TX Bolt","titles":["Stenography in QMK","Plover with Steno Protocol"]},"2289":{"title":"GeminiPR","titles":["Stenography in QMK","Plover with Steno Protocol"]},"2290":{"title":"Switching protocols on the fly","titles":["Stenography in QMK","Plover with Steno Protocol"]},"2291":{"title":"Configuring QMK for Steno","titles":["Stenography in QMK"]},"2292":{"title":"Learning Stenography","titles":["Stenography in QMK"]},"2293":{"title":"Interfacing with the code","titles":["Stenography in QMK"]},"2294":{"title":"Keycode Reference","titles":["Stenography in QMK"]},"2295":{"title":"Swap-Hands Action","titles":[]},"2296":{"title":"Configuration","titles":["Swap-Hands Action"]},"2297":{"title":"Swap Keycodes","titles":["Swap-Hands Action"]},"2298":{"title":"Encoder Mapping","titles":["Swap-Hands Action"]},"2299":{"title":"Functions","titles":["Swap-Hands Action","Encoder Mapping"]},"2300":{"title":"Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","titles":[]},"2301":{"title":"Introduction","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things"]},"2302":{"title":"How to Use Tap Dance","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things"]},"2303":{"title":"Implementation Details","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things"]},"2304":{"title":"Examples","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things"]},"2305":{"title":"Simple Example: Send ESC on Single Tap, CAPS_LOCK on Double Tap","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples"]},"2306":{"title":"Complex Examples","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples"]},"2307":{"title":"Example 1: Send "Safety Dance!" After 100 Taps","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2308":{"title":"Example 2: Turn LED Lights On Then Off, One at a Time","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2309":{"title":"Example 3: Send : on Tap, ; on Hold","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2310":{"title":"Example 4: 'Quad Function Tap-Dance'","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2311":{"title":"Example 5: Using tap dance for advanced mod-tap and layer-tap keys","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2312":{"title":"Example 6: Using tap dance for momentary-layer-switch and layer-toggle keys","titles":["Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","Examples","Complex Examples"]},"2313":{"title":"Tri Layers","titles":[]},"2314":{"title":"Keycodes","titles":["Tri Layers"]},"2315":{"title":"Configuration","titles":["Tri Layers"]},"2316":{"title":"Functions","titles":["Tri Layers"]},"2317":{"title":"Unicode","titles":[]},"2318":{"title":"Caveats","titles":["Unicode"]},"2319":{"title":"Usage","titles":["Unicode"]},"2320":{"title":"Basic Configuration","titles":["Unicode"]},"2321":{"title":"Audio Feedback","titles":["Unicode","Basic Configuration"]},"2322":{"title":"Input Subsystems","titles":["Unicode"]},"2323":{"title":"Lower and Upper Case Pairs","titles":["Unicode","Input Subsystems","Audio Feedback"]},"2324":{"title":"Input Modes","titles":["Unicode"]},"2325":{"title":"Keycodes","titles":["Unicode"]},"2326":{"title":"API","titles":["Unicode"]},"2327":{"title":"uint8_t get_unicode_input_mode(void)","titles":["Unicode","API"]},"2328":{"title":"Return Value","titles":["Unicode","API","uint8_t get_unicode_input_mode(void)"]},"2329":{"title":"void set_unicode_input_mode(uint8_t mode)","titles":["Unicode","API"]},"2330":{"title":"Arguments","titles":["Unicode","API","void set_unicode_input_mode(uint8_t mode)"]},"2331":{"title":"void unicode_input_mode_step(void)","titles":["Unicode","API"]},"2332":{"title":"void unicode_input_mode_step_reverse(void)","titles":["Unicode","API"]},"2333":{"title":"void unicode_input_mode_set_user(uint8_t input_mode)","titles":["Unicode","API"]},"2334":{"title":"Arguments","titles":["Unicode","API","void unicode_input_mode_set_user(uint8_t input_mode)"]},"2335":{"title":"void unicode_input_mode_set_kb(uint8_t input_mode)","titles":["Unicode","API"]},"2336":{"title":"Arguments","titles":["Unicode","API","void unicode_input_mode_set_kb(uint8_t input_mode)"]},"2337":{"title":"void unicode_input_start(void)","titles":["Unicode","API"]},"2338":{"title":"void unicode_input_finish(void)","titles":["Unicode","API"]},"2339":{"title":"void unicode_input_cancel(void)","titles":["Unicode","API"]},"2340":{"title":"void register_unicode(uint32_t code_point)","titles":["Unicode","API"]},"2341":{"title":"Arguments","titles":["Unicode","API","void register_unicode(uint32_t code_point)"]},"2342":{"title":"void send_unicode_string(const char *str)","titles":["Unicode","API"]},"2343":{"title":"Arguments","titles":["Unicode","API","void send_unicode_string(const char *str)"]},"2344":{"title":"uint8_t unicodemap_index(uint16_t keycode)","titles":["Unicode","API"]},"2345":{"title":"Arguments","titles":["Unicode","API","uint8_t unicodemap_index(uint16_t keycode)"]},"2346":{"title":"Return Value","titles":["Unicode","API","uint8_t unicodemap_index(uint16_t keycode)"]},"2347":{"title":"uint32_t unicodemap_get_code_point(uint8_t index)","titles":["Unicode","API"]},"2348":{"title":"Arguments","titles":["Unicode","API","uint32_t unicodemap_get_code_point(uint8_t index)"]},"2349":{"title":"Return Value","titles":["Unicode","API","uint32_t unicodemap_get_code_point(uint8_t index)"]},"2350":{"title":"void register_unicodemap(uint8_t index)","titles":["Unicode","API"]},"2351":{"title":"Arguments","titles":["Unicode","API","void register_unicodemap(uint8_t index)"]},"2352":{"title":"void ucis_start(void)","titles":["Unicode","API"]},"2353":{"title":"bool ucis_active(void)","titles":["Unicode","API"]},"2354":{"title":"Return Value","titles":["Unicode","API","bool ucis_active(void)"]},"2355":{"title":"uint8_t ucis_count(void)","titles":["Unicode","API"]},"2356":{"title":"Return Value","titles":["Unicode","API","uint8_t ucis_count(void)"]},"2357":{"title":"bool ucis_add(uint16_t keycode)","titles":["Unicode","API"]},"2358":{"title":"Arguments","titles":["Unicode","API","bool ucis_add(uint16_t keycode)"]},"2359":{"title":"Return Value","titles":["Unicode","API","bool ucis_add(uint16_t keycode)"]},"2360":{"title":"bool ucis_remove_last(void)","titles":["Unicode","API"]},"2361":{"title":"Return Value","titles":["Unicode","API","bool ucis_remove_last(void)"]},"2362":{"title":"void ucis_finish(void)","titles":["Unicode","API"]},"2363":{"title":"void ucis_cancel(void)","titles":["Unicode","API"]},"2364":{"title":"void register_ucis(void)","titles":["Unicode","API"]},"2365":{"title":"Arguments","titles":["Unicode","API","void register_ucis(void)"]},"2366":{"title":"Wireless / Bluetooth","titles":[]},"2367":{"title":"Bluetooth Known Supported Hardware","titles":["Wireless / Bluetooth"]},"2368":{"title":"Adafruit BLE SPI Friend","titles":["Wireless / Bluetooth","Bluetooth Known Supported Hardware"]},"2369":{"title":"Bluetooth Rules.mk Options","titles":["Wireless / Bluetooth"]},"2370":{"title":"Bluetooth Keycodes","titles":["Wireless / Bluetooth"]},"2371":{"title":"Word Per Minute (WPM) Calculation","titles":[]},"2372":{"title":"Configuration","titles":["Word Per Minute (WPM) Calculation"]},"2373":{"title":"Public Functions","titles":["Word Per Minute (WPM) Calculation"]},"2374":{"title":"Callbacks","titles":["Word Per Minute (WPM) Calculation"]},"2375":{"title":"Flashing Instructions and Bootloader Information","titles":[]},"2376":{"title":"Atmel DFU","titles":["Flashing Instructions and Bootloader Information"]},"2377":{"title":"QMK DFU","titles":["Flashing Instructions and Bootloader Information","Atmel DFU"]},"2378":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","Atmel DFU"]},"2379":{"title":"Caterina","titles":["Flashing Instructions and Bootloader Information"]},"2380":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","Caterina"]},"2381":{"title":"HalfKay","titles":["Flashing Instructions and Bootloader Information"]},"2382":{"title":"USBasploader","titles":["Flashing Instructions and Bootloader Information"]},"2383":{"title":"BootloadHID","titles":["Flashing Instructions and Bootloader Information"]},"2384":{"title":"QMK HID","titles":["Flashing Instructions and Bootloader Information","BootloadHID"]},"2385":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","BootloadHID"]},"2386":{"title":"STM32/APM32 DFU","titles":["Flashing Instructions and Bootloader Information"]},"2387":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","STM32/APM32 DFU"]},"2388":{"title":"STM32duino","titles":["Flashing Instructions and Bootloader Information"]},"2389":{"title":"Kiibohd DFU","titles":["Flashing Instructions and Bootloader Information"]},"2390":{"title":"WB32 DFU","titles":["Flashing Instructions and Bootloader Information"]},"2391":{"title":"AT32 DFU","titles":["Flashing Instructions and Bootloader Information"]},"2392":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","AT32 DFU"]},"2393":{"title":"tinyuf2","titles":["Flashing Instructions and Bootloader Information"]},"2394":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","tinyuf2"]},"2395":{"title":"uf2boot","titles":["Flashing Instructions and Bootloader Information"]},"2396":{"title":"make Targets","titles":["Flashing Instructions and Bootloader Information","uf2boot"]},"2397":{"title":"Raspberry Pi RP2040 UF2","titles":["Flashing Instructions and Bootloader Information"]},"2398":{"title":"How to Use GitHub with QMK","titles":[]},"2399":{"title":"Docker Quick Start","titles":[]},"2400":{"title":"Requirements","titles":["Docker Quick Start"]},"2401":{"title":"Usage","titles":["Docker Quick Start"]},"2402":{"title":"FAQ","titles":["Docker Quick Start"]},"2403":{"title":"Why can't I flash on Windows/macOS","titles":["Docker Quick Start","FAQ"]},"2404":{"title":"Introduction","titles":[]},"2405":{"title":"Basic QMK Structure","titles":["Introduction"]},"2406":{"title":"Userspace Structure","titles":["Introduction","Basic QMK Structure"]},"2407":{"title":"Keyboard Project Structure","titles":["Introduction","Basic QMK Structure"]},"2408":{"title":"Keymap Structure","titles":["Introduction","Basic QMK Structure"]},"2409":{"title":"The config.h File","titles":[]},"2410":{"title":"More Detailed make Instructions","titles":[]},"2411":{"title":"rules.mk Options","titles":["More Detailed make Instructions"]},"2412":{"title":"Customizing Makefile Options on a Per-Keymap Basis","titles":["More Detailed make Instructions"]},"2413":{"title":"Hand-Wiring Guide","titles":[]},"2414":{"title":"Parts list","titles":["Hand-Wiring Guide"]},"2415":{"title":"Starting the build","titles":["Hand-Wiring Guide"]},"2416":{"title":"Planning the matrix","titles":["Hand-Wiring Guide"]},"2417":{"title":"Common Microcontroller Boards","titles":["Hand-Wiring Guide","Planning the matrix"]},"2418":{"title":"Wiring the matrix","titles":["Hand-Wiring Guide"]},"2419":{"title":"A note on split keyboards","titles":["Hand-Wiring Guide","Wiring the matrix"]},"2420":{"title":"Soldering","titles":["Hand-Wiring Guide","Wiring the matrix"]},"2421":{"title":"Soldering the Diodes","titles":["Hand-Wiring Guide","Wiring the matrix","Soldering"]},"2422":{"title":"Soldering the Columns","titles":["Hand-Wiring Guide","Wiring the matrix","Soldering"]},"2423":{"title":"Wiring up the controller","titles":["Hand-Wiring Guide"]},"2424":{"title":"Specific instructions for the Teensy 2.0","titles":["Hand-Wiring Guide","Wiring up the controller"]},"2425":{"title":"Getting Some Basic Firmware Set Up","titles":["Hand-Wiring Guide"]},"2426":{"title":"Flashing the Firmware","titles":["Hand-Wiring Guide"]},"2427":{"title":"Testing Your Firmware","titles":["Hand-Wiring Guide"]},"2428":{"title":"Finishing up","titles":["Hand-Wiring Guide"]},"2429":{"title":"Links to Other Guides","titles":["Hand-Wiring Guide"]},"2430":{"title":"Legacy Content","titles":[]},"2431":{"title":"Preamble: How a Keyboard Matrix Works (and why we need diodes)","titles":["Legacy Content"]},"2432":{"title":"QMK Hardware Drivers","titles":[]},"2433":{"title":"Available Drivers","titles":[]},"2434":{"title":"ProMicro (AVR Only)","titles":["Available Drivers"]},"2435":{"title":"SSD1306 OLED Driver","titles":["Available Drivers"]},"2436":{"title":"WS2812","titles":["Available Drivers"]},"2437":{"title":"IS31FL3731","titles":["Available Drivers"]},"2438":{"title":"IS31FL3733","titles":["Available Drivers"]},"2439":{"title":"24xx series external I2C EEPROM","titles":["Available Drivers"]},"2440":{"title":"QMK Keyboard Guidelines","titles":[]},"2441":{"title":"Use QMK Lint","titles":["QMK Keyboard Guidelines"]},"2442":{"title":"Naming Your Keyboard/Project","titles":["QMK Keyboard Guidelines"]},"2443":{"title":"Sub-folders","titles":["QMK Keyboard Guidelines"]},"2444":{"title":"Keyboard Folder Structure","titles":["QMK Keyboard Guidelines"]},"2445":{"title":"readme.md","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2446":{"title":"keyboard.json/info.json","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2447":{"title":"config.h","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2448":{"title":"rules.mk","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2449":{"title":"<keyboard>.c","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2450":{"title":"<keyboard>.h","titles":["QMK Keyboard Guidelines","Keyboard Folder Structure"]},"2451":{"title":"Image/Hardware Files","titles":["QMK Keyboard Guidelines"]},"2452":{"title":"Keyboard Defaults","titles":["QMK Keyboard Guidelines"]},"2453":{"title":"Magic Keycodes and Command","titles":["QMK Keyboard Guidelines","Keyboard Defaults"]},"2454":{"title":"Custom Keyboard Programming","titles":["QMK Keyboard Guidelines"]},"2455":{"title":"Non-Production/Handwired Projects","titles":["QMK Keyboard Guidelines"]},"2456":{"title":"Warnings as Errors","titles":["QMK Keyboard Guidelines"]},"2457":{"title":"Copyright Blurb","titles":["QMK Keyboard Guidelines"]},"2458":{"title":"License","titles":["QMK Keyboard Guidelines"]},"2459":{"title":"How a Keyboard Matrix Works","titles":[]},"2460":{"title":"Quantum Mechanical Keyboard Firmware","titles":[]},"2461":{"title":"What is QMK Firmware?","titles":["Quantum Mechanical Keyboard Firmware"]},"2462":{"title":"Get Started","titles":["Quantum Mechanical Keyboard Firmware"]},"2463":{"title":"Make It Yours","titles":["Quantum Mechanical Keyboard Firmware"]},"2464":{"title":"Need help?","titles":["Quantum Mechanical Keyboard Firmware"]},"2465":{"title":"Give Back","titles":["Quantum Mechanical Keyboard Firmware"]},"2466":{"title":"How Keys Are Registered, and Interpreted by Computers","titles":[]},"2467":{"title":"Schematic View","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2468":{"title":"1. You Press a Key","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2469":{"title":"2. What the Firmware Sends","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2470":{"title":"3. What the Event Input/Kernel Does","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2471":{"title":"4. What the Operating System Does","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2472":{"title":"Back to the Firmware","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2473":{"title":"List of Characters You Can Send","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2474":{"title":"How to (Maybe) Enter Unicode Characters","titles":["How Keys Are Registered, and Interpreted by Computers"]},"2475":{"title":"ISP Flashing Guide","titles":[]},"2476":{"title":"Hardware","titles":["ISP Flashing Guide"]},"2477":{"title":"Pro Micro as ISP","titles":["ISP Flashing Guide","Hardware"]},"2478":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","Pro Micro as ISP"]},"2479":{"title":"Arduino Uno / Micro as ISP","titles":["ISP Flashing Guide","Hardware"]},"2480":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","Arduino Uno / Micro as ISP"]},"2481":{"title":"Teensy 2.0 as ISP","titles":["ISP Flashing Guide","Hardware"]},"2482":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","Teensy 2.0 as ISP"]},"2483":{"title":"SparkFun PocketAVR / USBtinyISP","titles":["ISP Flashing Guide","Hardware"]},"2484":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","SparkFun PocketAVR / USBtinyISP"]},"2485":{"title":"USBasp","titles":["ISP Flashing Guide","Hardware"]},"2486":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","USBasp"]},"2487":{"title":"Bus Pirate","titles":["ISP Flashing Guide","Hardware"]},"2488":{"title":"Wiring","titles":["ISP Flashing Guide","Hardware","Bus Pirate"]},"2489":{"title":"Software","titles":["ISP Flashing Guide"]},"2490":{"title":"Bootloader Firmware","titles":["ISP Flashing Guide"]},"2491":{"title":"Atmel DFU","titles":["ISP Flashing Guide","Bootloader Firmware"]},"2492":{"title":"Caterina","titles":["ISP Flashing Guide","Bootloader Firmware"]},"2493":{"title":"BootloadHID (PS2AVRGB)","titles":["ISP Flashing Guide","Bootloader Firmware"]},"2494":{"title":"USBaspLoader","titles":["ISP Flashing Guide","Bootloader Firmware"]},"2495":{"title":"Flashing the Bootloader","titles":["ISP Flashing Guide"]},"2496":{"title":"Setting the Fuses","titles":["ISP Flashing Guide","Flashing the Bootloader"]},"2497":{"title":"Creating a "Production" Firmware","titles":["ISP Flashing Guide"]},"2498":{"title":"Flashing STM32Duino Bootloader","titles":["ISP Flashing Guide"]},"2499":{"title":"Software","titles":["ISP Flashing Guide","Flashing STM32Duino Bootloader"]},"2500":{"title":"Wiring","titles":["ISP Flashing Guide","Flashing STM32Duino Bootloader"]},"2501":{"title":"Flashing","titles":["ISP Flashing Guide","Flashing STM32Duino Bootloader"]},"2502":{"title":"Keycodes Overview","titles":[]},"2503":{"title":"Basic Keycodes","titles":["Keycodes Overview"]},"2504":{"title":"Quantum Keycodes","titles":["Keycodes Overview"]},"2505":{"title":"Audio Keys","titles":["Keycodes Overview"]},"2506":{"title":"Auto Shift","titles":["Keycodes Overview"]},"2507":{"title":"Autocorrect","titles":["Keycodes Overview"]},"2508":{"title":"Backlighting","titles":["Keycodes Overview"]},"2509":{"title":"Wireless/Bluetooth","titles":["Keycodes Overview"]},"2510":{"title":"Caps Word","titles":["Keycodes Overview"]},"2511":{"title":"Dynamic Macros","titles":["Keycodes Overview"]},"2512":{"title":"Grave Escape","titles":["Keycodes Overview"]},"2513":{"title":"Joystick","titles":["Keycodes Overview"]},"2514":{"title":"Key Lock","titles":["Keycodes Overview"]},"2515":{"title":"Layer Lock","titles":["Keycodes Overview"]},"2516":{"title":"Layer Switching","titles":["Keycodes Overview"]},"2517":{"title":"Leader Key","titles":["Keycodes Overview"]},"2518":{"title":"LED Matrix","titles":["Keycodes Overview"]},"2519":{"title":"Magic Keycodes","titles":["Keycodes Overview"]},"2520":{"title":"MIDI","titles":["Keycodes Overview"]},"2521":{"title":"Mouse Keys","titles":["Keycodes Overview"]},"2522":{"title":"Modifiers","titles":["Keycodes Overview"]},"2523":{"title":"Mod-Tap Keys","titles":["Keycodes Overview"]},"2524":{"title":"Tapping Term Keys","titles":["Keycodes Overview"]},"2525":{"title":"RGB Lighting","titles":["Keycodes Overview"]},"2526":{"title":"RGB Matrix","titles":["Keycodes Overview"]},"2527":{"title":"US ANSI Shifted Symbols","titles":["Keycodes Overview"]},"2528":{"title":"One Shot Keys","titles":["Keycodes Overview"]},"2529":{"title":"Programmable Button Support","titles":["Keycodes Overview"]},"2530":{"title":"Repeat Key","titles":["Keycodes Overview"]},"2531":{"title":"Space Cadet","titles":["Keycodes Overview"]},"2532":{"title":"Swap Hands","titles":["Keycodes Overview"]},"2533":{"title":"Unicode Support","titles":["Keycodes Overview"]},"2534":{"title":"Basic Keycodes","titles":[]},"2535":{"title":"Letters and Numbers","titles":["Basic Keycodes"]},"2536":{"title":"F Keys","titles":["Basic Keycodes"]},"2537":{"title":"Punctuation","titles":["Basic Keycodes"]},"2538":{"title":"Lock Keys","titles":["Basic Keycodes"]},"2539":{"title":"Modifiers","titles":["Basic Keycodes"]},"2540":{"title":"International","titles":["Basic Keycodes"]},"2541":{"title":"Commands","titles":["Basic Keycodes"]},"2542":{"title":"Media Keys","titles":["Basic Keycodes"]},"2543":{"title":"Number Pad","titles":["Basic Keycodes"]},"2544":{"title":"Special Keys","titles":["Basic Keycodes"]},"2545":{"title":"US ANSI Shifted Symbols","titles":[]},"2546":{"title":"Caveats","titles":["US ANSI Shifted Symbols"]},"2547":{"title":"Keycodes","titles":["US ANSI Shifted Symbols"]},"2548":{"title":"Magic Keycodes","titles":[]},"2549":{"title":"Keymap Overview","titles":[]},"2550":{"title":"Keymap and Layers","titles":["Keymap Overview"]},"2551":{"title":"Keymap Layer Status","titles":["Keymap Overview","Keymap and Layers"]},"2552":{"title":"Layer Precedence and Transparency","titles":["Keymap Overview","Keymap and Layers"]},"2553":{"title":"Anatomy of a keymap.c","titles":["Keymap Overview"]},"2554":{"title":"Definitions","titles":["Keymap Overview","Anatomy of a keymap.c"]},"2555":{"title":"Layers and Keymaps","titles":["Keymap Overview","Anatomy of a keymap.c"]},"2556":{"title":"Base Layer","titles":["Keymap Overview","Anatomy of a keymap.c","Layers and Keymaps"]},"2557":{"title":"Function Overlay Layer","titles":["Keymap Overview","Anatomy of a keymap.c","Layers and Keymaps"]},"2558":{"title":"Nitty Gritty Details","titles":[]},"2559":{"title":"License Violations","titles":[]},"2560":{"title":"Offending Vendors","titles":["License Violations"]},"2561":{"title":"Licensing","titles":["License Violations"]},"2562":{"title":"QMK PR Considerations","titles":["License Violations"]},"2563":{"title":"Detection","titles":["License Violations"]},"2564":{"title":"Remediation","titles":["License Violations"]},"2565":{"title":"Mod-Tap","titles":[]},"2566":{"title":"Caveats","titles":["Mod-Tap"]},"2567":{"title":"Intercepting Mod-Taps","titles":["Mod-Tap"]},"2568":{"title":"Changing tap function","titles":["Mod-Tap","Intercepting Mod-Taps"]},"2569":{"title":"Changing hold function","titles":["Mod-Tap","Intercepting Mod-Taps"]},"2570":{"title":"Changing both tap and hold","titles":["Mod-Tap","Intercepting Mod-Taps"]},"2571":{"title":"Other Resources","titles":["Mod-Tap"]},"2572":{"title":"The QMK Tutorial","titles":[]},"2573":{"title":"Overview","titles":["The QMK Tutorial"]},"2574":{"title":"Additional Resources","titles":["The QMK Tutorial"]},"2575":{"title":"Building Your First Firmware","titles":[]},"2576":{"title":"Configure Your Build Environment Defaults (Optional)","titles":["Building Your First Firmware"]},"2577":{"title":"Create a New Keymap","titles":["Building Your First Firmware"]},"2578":{"title":"Open keymap.c In Your Favorite Text Editor","titles":["Building Your First Firmware"]},"2579":{"title":"Customize The Layout To Your Liking","titles":["Building Your First Firmware"]},"2580":{"title":"Build Your Firmware","titles":["Building Your First Firmware"]},"2581":{"title":"Flash Your Firmware","titles":["Building Your First Firmware"]},"2582":{"title":"QMK Configurator","titles":[]},"2583":{"title":"External QMK Userspace","titles":[]},"2584":{"title":"Setting up QMK Locally","titles":["External QMK Userspace"]},"2585":{"title":"External Userspace Repository Setup (forked on GitHub)","titles":["External QMK Userspace"]},"2586":{"title":"External Userspace Setup (locally stored only)","titles":["External QMK Userspace"]},"2587":{"title":"Adding a Keymap","titles":["External QMK Userspace"]},"2588":{"title":"Adding the keymap to External Userspace build targets","titles":["External QMK Userspace"]},"2589":{"title":"Compiling External Userspace build targets","titles":["External QMK Userspace"]},"2590":{"title":"Using GitHub Actions","titles":["External QMK Userspace"]},"2591":{"title":"Building QMK with GitHub Userspace","titles":[]},"2592":{"title":"Prerequisites","titles":["Building QMK with GitHub Userspace"]},"2593":{"title":"Environment Setup","titles":["Building QMK with GitHub Userspace"]},"2594":{"title":"1. Install Git","titles":["Building QMK with GitHub Userspace","Environment Setup"]},"2595":{"title":"2. GitHub authentication","titles":["Building QMK with GitHub Userspace","Environment Setup"]},"2596":{"title":"3. Create a repository","titles":["Building QMK with GitHub Userspace","Environment Setup"]},"2597":{"title":"Initial Code Commit","titles":["Building QMK with GitHub Userspace"]},"2598":{"title":"Create template files","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2599":{"title":"Add a JSON keymap","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2600":{"title":"Add a GitHub Action workflow","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2601":{"title":"Commit files to GitHub","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2602":{"title":"Review workflow output","titles":["Building QMK with GitHub Userspace","Initial Code Commit"]},"2603":{"title":"Customising your keymap","titles":["Building QMK with GitHub Userspace"]},"2604":{"title":"Flashing Your Keyboard","titles":[]},"2605":{"title":"Put Your Keyboard into DFU (Bootloader) Mode","titles":["Flashing Your Keyboard"]},"2606":{"title":"Flashing Your Keyboard with QMK Toolbox","titles":["Flashing Your Keyboard"]},"2607":{"title":"Load the File into QMK Toolbox","titles":["Flashing Your Keyboard","Flashing Your Keyboard with QMK Toolbox"]},"2608":{"title":"Flash Your Keyboard","titles":["Flashing Your Keyboard","Flashing Your Keyboard with QMK Toolbox"]},"2609":{"title":"Flash your Keyboard from the Command Line","titles":["Flashing Your Keyboard"]},"2610":{"title":"Test It Out!","titles":["Flashing Your Keyboard"]},"2611":{"title":"Setting Up Your QMK Environment","titles":[]},"2612":{"title":"1. Prerequisites","titles":["Setting Up Your QMK Environment"]},"2613":{"title":"2. Prepare Your Build Environment","titles":["Setting Up Your QMK Environment"]},"2614":{"title":"Prerequisites","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2615":{"title":"Prerequisites","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2616":{"title":"Installation","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2617":{"title":"Prerequisites","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2618":{"title":"Installation","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2619":{"title":"Installation","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2620":{"title":"Installation","titles":["Setting Up Your QMK Environment","2. Prepare Your Build Environment"]},"2621":{"title":"3. Run QMK Setup","titles":["Setting Up Your QMK Environment"]},"2622":{"title":"4. Test Your Build Environment","titles":["Setting Up Your QMK Environment"]},"2623":{"title":"Creating Your Keymap","titles":[]},"2624":{"title":"Best Git Practices for Working with QMK","titles":[]},"2625":{"title":"Or, "How I Learned to Stop Worrying and Love Git."","titles":["Best Git Practices for Working with QMK"]},"2626":{"title":"Resolving Merge Conflicts","titles":[]},"2627":{"title":"Rebasing Your Changes","titles":["Resolving Merge Conflicts"]},"2628":{"title":"Resynchronizing an Out-of-Sync Git Branch","titles":[]},"2629":{"title":"Backing Up the Changes on Your Own Master Branch (Optional)","titles":["Resynchronizing an Out-of-Sync Git Branch"]},"2630":{"title":"Resynchronizing Your Branch","titles":["Resynchronizing an Out-of-Sync Git Branch"]},"2631":{"title":"Your Fork's Master: Update Often, Commit Never","titles":[]},"2632":{"title":"Updating your master branch","titles":["Your Fork's Master: Update Often, Commit Never"]},"2633":{"title":"Making Changes","titles":["Your Fork's Master: Update Often, Commit Never"]},"2634":{"title":"Publishing Your Changes","titles":["Your Fork's Master: Update Often, Commit Never"]},"2635":{"title":"Learning Resources","titles":[]},"2636":{"title":"QMK resources","titles":["Learning Resources"]},"2637":{"title":"Command Line resources","titles":["Learning Resources"]},"2638":{"title":"Text Editor resources","titles":["Learning Resources"]},"2639":{"title":"Git resources","titles":["Learning Resources"]},"2640":{"title":"Testing and Debugging","titles":[]},"2641":{"title":"Testing","titles":["Testing and Debugging"]},"2642":{"title":"Debugging","titles":["Testing and Debugging"]},"2643":{"title":"One Shot Keys","titles":[]},"2644":{"title":"Keycodes","titles":["One Shot Keys"]},"2645":{"title":"Callbacks","titles":["One Shot Keys"]},"2646":{"title":"Setting up Eclipse for QMK Development","titles":[]},"2647":{"title":"Prerequisites","titles":[]},"2648":{"title":"Build Environment","titles":["Prerequisites"]},"2649":{"title":"Java","titles":["Prerequisites"]},"2650":{"title":"Install Eclipse and Its Plugins","titles":[]},"2651":{"title":"Download and Install Eclipse CDT","titles":["Install Eclipse and Its Plugins"]},"2652":{"title":"First Launch","titles":["Install Eclipse and Its Plugins"]},"2653":{"title":"Install the Necessary Plugins","titles":["Install Eclipse and Its Plugins"]},"2654":{"title":"Configure Eclipse for QMK","titles":[]},"2655":{"title":"Importing the Project","titles":["Configure Eclipse for QMK"]},"2656":{"title":"Build Your Keyboard","titles":["Configure Eclipse for QMK"]},"2657":{"title":"WeAct Blackpill (STM32F4x1)","titles":[]},"2658":{"title":"Pin Usage Limitations","titles":["WeAct Blackpill (STM32F4x1)"]},"2659":{"title":"Unusable pins","titles":["WeAct Blackpill (STM32F4x1)","Pin Usage Limitations"]},"2660":{"title":"Pins to be avoided","titles":["WeAct Blackpill (STM32F4x1)","Pin Usage Limitations"]},"2661":{"title":"Shared Usage","titles":["WeAct Blackpill (STM32F4x1)","Pin Usage Limitations"]},"2662":{"title":"Limited Usage","titles":["WeAct Blackpill (STM32F4x1)","Pin Usage Limitations"]},"2663":{"title":"Additional Information","titles":["WeAct Blackpill (STM32F4x1)"]},"2664":{"title":"Bootloader issues","titles":["WeAct Blackpill (STM32F4x1)","Additional Information"]},"2665":{"title":"Tiny UF2 Support","titles":["WeAct Blackpill (STM32F4x1)","Additional Information"]},"2666":{"title":"Setting up Visual Studio Code for QMK Development","titles":[]},"2667":{"title":"Set up VS Code","titles":[]},"2668":{"title":"Windows","titles":["Set up VS Code"]},"2669":{"title":"Prerequisites","titles":["Set up VS Code","Windows"]},"2670":{"title":"Installing VS Code","titles":["Set up VS Code","Windows"]},"2671":{"title":"MSYS2 Setup","titles":["Set up VS Code","Windows","Installing VS Code"]},"2672":{"title":"Every other Operating System","titles":["Set up VS Code"]},"2673":{"title":"Extensions","titles":["Set up VS Code"]},"2674":{"title":"Configure VS Code for QMK","titles":[]},"2675":{"title":"Configuring VS Code","titles":["Configure VS Code for QMK"]},"2676":{"title":"Debugging ARM MCUs with Visual Studio Code","titles":[]},"2677":{"title":"Arm/ChibiOS Early Initialization","titles":[]},"2678":{"title":"early_hardware_init_pre()","titles":["Arm/ChibiOS Early Initialization"]},"2679":{"title":"early_hardware_init_post()","titles":["Arm/ChibiOS Early Initialization"]},"2680":{"title":"board_init()","titles":["Arm/ChibiOS Early Initialization"]},"2681":{"title":"Proton C","titles":[]},"2682":{"title":"Features","titles":["Proton C"]},"2683":{"title":"Warnings","titles":["Proton C"]},"2684":{"title":"Manual Conversion","titles":["Proton C"]},"2685":{"title":"Choosing an Arm MCU","titles":[]},"2686":{"title":"Selecting an already-supported MCU","titles":["Choosing an Arm MCU"]},"2687":{"title":"STM32 families","titles":["Choosing an Arm MCU","Selecting an already-supported MCU"]},"2688":{"title":"Non-STM32 families","titles":["Choosing an Arm MCU","Selecting an already-supported MCU"]},"2689":{"title":"Adding support for a new STM32 MCU (for an existing family)","titles":["Choosing an Arm MCU"]},"2690":{"title":"Adding support for a new STM32 Family","titles":["Choosing an Arm MCU"]},"2691":{"title":"Adding support for a new MCU Family","titles":["Choosing an Arm MCU"]},"2692":{"title":"Raspberry Pi RP2040","titles":[]},"2693":{"title":"GPIO","titles":["Raspberry Pi RP2040"]},"2694":{"title":"Pin nomenclature","titles":["Raspberry Pi RP2040","GPIO"]},"2695":{"title":"Alternate functions","titles":["Raspberry Pi RP2040","GPIO"]},"2696":{"title":"Selecting hardware peripherals and drivers","titles":["Raspberry Pi RP2040"]},"2697":{"title":"I2C Driver","titles":["Raspberry Pi RP2040","Selecting hardware peripherals and drivers"]},"2698":{"title":"SPI Driver","titles":["Raspberry Pi RP2040","Selecting hardware peripherals and drivers"]},"2699":{"title":"UART Driver","titles":["Raspberry Pi RP2040","Selecting hardware peripherals and drivers"]},"2700":{"title":"Double-tap reset boot-loader entry","titles":["Raspberry Pi RP2040"]},"2701":{"title":"Pre-defined RP2040 boards","titles":["Raspberry Pi RP2040"]},"2702":{"title":"Generic Pro Micro RP2040","titles":["Raspberry Pi RP2040","Pre-defined RP2040 boards"]},"2703":{"title":"Generic RP2040 board","titles":["Raspberry Pi RP2040","Pre-defined RP2040 boards"]},"2704":{"title":"Split keyboard support","titles":["Raspberry Pi RP2040"]},"2705":{"title":"RP2040 second stage bootloader selection","titles":["Raspberry Pi RP2040"]},"2706":{"title":"RP2040 Community Edition","titles":["Raspberry Pi RP2040"]},"2707":{"title":"Adding Your Keyboard to QMK","titles":[]},"2708":{"title":"readme.md","titles":["Adding Your Keyboard to QMK"]},"2709":{"title":"keyboard.json","titles":["Adding Your Keyboard to QMK"]},"2710":{"title":"Hardware Configuration","titles":["Adding Your Keyboard to QMK","keyboard.json"]},"2711":{"title":"Matrix Configuration","titles":["Adding Your Keyboard to QMK","keyboard.json"]},"2712":{"title":"Diode Matrix","titles":["Adding Your Keyboard to QMK","keyboard.json","Matrix Configuration"]},"2713":{"title":"Direct Pin Matrix","titles":["Adding Your Keyboard to QMK","keyboard.json","Matrix Configuration"]},"2714":{"title":"Layout Macros","titles":["Adding Your Keyboard to QMK","keyboard.json"]},"2715":{"title":"Additional Configuration","titles":["Adding Your Keyboard to QMK"]},"2716":{"title":"Configuration Options","titles":["Adding Your Keyboard to QMK","Additional Configuration"]},"2717":{"title":"Build Options","titles":["Adding Your Keyboard to QMK","Additional Configuration"]},"2718":{"title":"PR checklists","titles":[]},"2719":{"title":"Requirements for all PRs","titles":["PR checklists"]},"2720":{"title":"Keymap PRs","titles":["PR checklists"]},"2721":{"title":"Keyboard PRs","titles":["PR checklists"]},"2722":{"title":"Core PRs","titles":["PR checklists"]},"2723":{"title":"Notes","titles":["PR checklists"]},"2724":{"title":"Review Process","titles":["PR checklists"]},"2725":{"title":"Example GPLv2 Header","titles":["PR checklists"]},"2726":{"title":"Proprietary Vendor Libraries","titles":[]},"2727":{"title":"Architecture Constraints","titles":["Proprietary Vendor Libraries"]},"2728":{"title":"Common Vendor Library Restrictions","titles":["Proprietary Vendor Libraries"]},"2729":{"title":"Bluetooth Stack Licensing Examples","titles":["Proprietary Vendor Libraries"]},"2730":{"title":"Why the System Library Exception Doesn't Apply","titles":["Proprietary Vendor Libraries"]},"2731":{"title":"System Library Requirements","titles":["Proprietary Vendor Libraries","Why the System Library Exception Doesn't Apply"]},"2732":{"title":"Why Vendor Libraries Fail These Requirements","titles":["Proprietary Vendor Libraries","Why the System Library Exception Doesn't Apply"]},"2733":{"title":"Attempted Workarounds","titles":["Proprietary Vendor Libraries"]},"2734":{"title":"Architectural Separation Attempts","titles":["Proprietary Vendor Libraries","Attempted Workarounds"]},"2735":{"title":"Loader-Based Separation","titles":["Proprietary Vendor Libraries","Attempted Workarounds"]},"2736":{"title":"Real-World Examples","titles":["Proprietary Vendor Libraries"]},"2737":{"title":"Bluetooth/Wireless Stacks","titles":["Proprietary Vendor Libraries","Real-World Examples"]},"2738":{"title":"HAL and Driver Libraries","titles":["Proprietary Vendor Libraries","Real-World Examples"]},"2739":{"title":"Mixed Proprietary/Open","titles":["Proprietary Vendor Libraries","Real-World Examples"]},"2740":{"title":"Legal and Practical Consequences","titles":["Proprietary Vendor Libraries"]},"2741":{"title":"Evaluation Criteria for Libraries","titles":["Proprietary Vendor Libraries"]},"2742":{"title":"Policy Implementation","titles":["Proprietary Vendor Libraries"]},"2743":{"title":"Summary","titles":["Proprietary Vendor Libraries"]},"2744":{"title":"Quantum Keycodes","titles":[]},"2745":{"title":"QMK Keycodes","titles":["Quantum Keycodes"]},"2746":{"title":"Quantum Painter","titles":[]},"2747":{"title":"Quantum Painter Configuration","titles":["Quantum Painter"]},"2748":{"title":"Quantum Painter CLI Commands","titles":["Quantum Painter"]},"2749":{"title":"Quantum Painter Display Drivers","titles":["Quantum Painter"]},"2750":{"title":"Quantum Painter Drawing API","titles":["Quantum Painter"]},"2751":{"title":"Quantum Painter LVGL Integration","titles":[]},"2752":{"title":"Enabling LVGL","titles":["Quantum Painter LVGL Integration"]},"2753":{"title":"Quantum Painter LVGL API","titles":["Quantum Painter LVGL Integration"]},"2754":{"title":"Quantum Painter LVGL Attach","titles":["Quantum Painter LVGL Integration","Quantum Painter LVGL API"]},"2755":{"title":"Quantum Painter LVGL Detach","titles":["Quantum Painter LVGL Integration","Quantum Painter LVGL API"]},"2756":{"title":"Enabling/Disabling LVGL features","titles":["Quantum Painter LVGL Integration"]},"2757":{"title":"Changing the LVGL task frequency","titles":["Quantum Painter LVGL Integration"]},"2758":{"title":"QMK Font Format","titles":[]},"2759":{"title":"Block Header","titles":["QMK Font Format"]},"2760":{"title":"Font descriptor block","titles":["QMK Font Format"]},"2761":{"title":"ASCII glyph table","titles":["QMK Font Format"]},"2762":{"title":"Unicode glyph table","titles":["QMK Font Format"]},"2763":{"title":"Font palette block","titles":["QMK Font Format"]},"2764":{"title":"Font data block","titles":["QMK Font Format"]},"2765":{"title":"QMK QGF/QFF RLE data schema","titles":[]},"2766":{"title":"QMK Graphics Format","titles":[]},"2767":{"title":"Block Header","titles":["QMK Graphics Format"]},"2768":{"title":"Graphics descriptor block","titles":["QMK Graphics Format"]},"2769":{"title":"Frame offset block","titles":["QMK Graphics Format"]},"2770":{"title":"Frame descriptor block","titles":["QMK Graphics Format"]},"2771":{"title":"Frame palette block","titles":["QMK Graphics Format"]},"2772":{"title":"Frame delta block","titles":["QMK Graphics Format"]},"2773":{"title":"Frame data block","titles":["QMK Graphics Format"]},"2774":{"title":"Supporting Your Keyboard in QMK Configurator","titles":[]},"2775":{"title":"How the Configurator Understands Keyboards","titles":["Supporting Your Keyboard in QMK Configurator"]},"2776":{"title":"Building the JSON file","titles":["Supporting Your Keyboard in QMK Configurator"]},"2777":{"title":"How the Configurator Programs Keys","titles":["Supporting Your Keyboard in QMK Configurator"]},"2778":{"title":"Issues and Hazards","titles":["Supporting Your Keyboard in QMK Configurator"]},"2779":{"title":"Workarounds","titles":["Supporting Your Keyboard in QMK Configurator","Issues and Hazards"]},"2780":{"title":"Non-rectangular keys","titles":["Supporting Your Keyboard in QMK Configurator","Issues and Hazards","Workarounds"]},"2781":{"title":"Vertically-offset keys","titles":["Supporting Your Keyboard in QMK Configurator","Issues and Hazards","Workarounds"]},"2782":{"title":"List of Useful Core Functions To Make Your Keyboard Better","titles":[]},"2783":{"title":"(OLKB) Tri Layers","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2784":{"title":"update_tri_layer(x, y, z)","titles":["List of Useful Core Functions To Make Your Keyboard Better","(OLKB) Tri Layers"]},"2785":{"title":"Example","titles":["List of Useful Core Functions To Make Your Keyboard Better","(OLKB) Tri Layers","update_tri_layer(x, y, z)"]},"2786":{"title":"update_tri_layer_state(state, x, y, z)","titles":["List of Useful Core Functions To Make Your Keyboard Better","(OLKB) Tri Layers"]},"2787":{"title":"Example","titles":["List of Useful Core Functions To Make Your Keyboard Better","(OLKB) Tri Layers","update_tri_layer_state(state, x, y, z)"]},"2788":{"title":"Setting the Persistent Default Layer","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2789":{"title":"Resetting the keyboard","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2790":{"title":"Reset to bootloader","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2791":{"title":"Wiping the EEPROM (Persistent Storage)","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2792":{"title":"Tap random key","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2793":{"title":"Software Timers","titles":["List of Useful Core Functions To Make Your Keyboard Better"]},"2794":{"title":"Glossary of QMK Terms","titles":[]},"2795":{"title":"ARM","titles":["Glossary of QMK Terms"]},"2796":{"title":"AVR","titles":["Glossary of QMK Terms"]},"2797":{"title":"AZERTY","titles":["Glossary of QMK Terms"]},"2798":{"title":"Backlight","titles":["Glossary of QMK Terms"]},"2799":{"title":"Bluetooth","titles":["Glossary of QMK Terms"]},"2800":{"title":"Bootloader","titles":["Glossary of QMK Terms"]},"2801":{"title":"Bootmagic","titles":["Glossary of QMK Terms"]},"2802":{"title":"C","titles":["Glossary of QMK Terms"]},"2803":{"title":"Colemak","titles":["Glossary of QMK Terms"]},"2804":{"title":"Compile","titles":["Glossary of QMK Terms"]},"2805":{"title":"Dvorak","titles":["Glossary of QMK Terms"]},"2806":{"title":"Dynamic Macro","titles":["Glossary of QMK Terms"]},"2807":{"title":"Eclipse","titles":["Glossary of QMK Terms"]},"2808":{"title":"Firmware","titles":["Glossary of QMK Terms"]},"2809":{"title":"git","titles":["Glossary of QMK Terms"]},"2810":{"title":"GitHub","titles":["Glossary of QMK Terms"]},"2811":{"title":"ISP","titles":["Glossary of QMK Terms"]},"2812":{"title":"hid_listen","titles":["Glossary of QMK Terms"]},"2813":{"title":"Keycode","titles":["Glossary of QMK Terms"]},"2814":{"title":"Key Down","titles":["Glossary of QMK Terms"]},"2815":{"title":"Key Up","titles":["Glossary of QMK Terms"]},"2816":{"title":"Keymap","titles":["Glossary of QMK Terms"]},"2817":{"title":"Layer","titles":["Glossary of QMK Terms"]},"2818":{"title":"Leader Key","titles":["Glossary of QMK Terms"]},"2819":{"title":"LED","titles":["Glossary of QMK Terms"]},"2820":{"title":"Make","titles":["Glossary of QMK Terms"]},"2821":{"title":"Matrix","titles":["Glossary of QMK Terms"]},"2822":{"title":"Macro","titles":["Glossary of QMK Terms"]},"2823":{"title":"MCU","titles":["Glossary of QMK Terms"]},"2824":{"title":"Modifier","titles":["Glossary of QMK Terms"]},"2825":{"title":"Mousekeys","titles":["Glossary of QMK Terms"]},"2826":{"title":"N-Key Rollover (NKRO)","titles":["Glossary of QMK Terms"]},"2827":{"title":"Oneshot Modifier","titles":["Glossary of QMK Terms"]},"2828":{"title":"ProMicro","titles":["Glossary of QMK Terms"]},"2829":{"title":"Pull Request","titles":["Glossary of QMK Terms"]},"2830":{"title":"QWERTY","titles":["Glossary of QMK Terms"]},"2831":{"title":"QWERTZ","titles":["Glossary of QMK Terms"]},"2832":{"title":"Rollover","titles":["Glossary of QMK Terms"]},"2833":{"title":"Scancode","titles":["Glossary of QMK Terms"]},"2834":{"title":"Space Cadet Shift","titles":["Glossary of QMK Terms"]},"2835":{"title":"Tap","titles":["Glossary of QMK Terms"]},"2836":{"title":"Tap Dance","titles":["Glossary of QMK Terms"]},"2837":{"title":"Teensy","titles":["Glossary of QMK Terms"]},"2838":{"title":"Underlight","titles":["Glossary of QMK Terms"]},"2839":{"title":"Unicode","titles":["Glossary of QMK Terms"]},"2840":{"title":"Unit Testing","titles":["Glossary of QMK Terms"]},"2841":{"title":"USB","titles":["Glossary of QMK Terms"]},"2842":{"title":"USB Host (or simply Host)","titles":["Glossary of QMK Terms"]},"2843":{"title":"Couldn't Find the Term You're Looking For?","titles":[]},"2844":{"title":"info.json Reference","titles":[]},"2845":{"title":"General Metadata","titles":["info.json Reference"]},"2846":{"title":"Hardware Configuration","titles":["info.json Reference"]},"2847":{"title":"Firmware Configuration","titles":["info.json Reference"]},"2848":{"title":"APA102","titles":["info.json Reference"]},"2849":{"title":"Audio","titles":["info.json Reference"]},"2850":{"title":"Backlight","titles":["info.json Reference"]},"2851":{"title":"Battery","titles":["info.json Reference"]},"2852":{"title":"Wireless/Bluetooth","titles":["info.json Reference"]},"2853":{"title":"Bootmagic","titles":["info.json Reference"]},"2854":{"title":"Caps Word","titles":["info.json Reference"]},"2855":{"title":"Combo","titles":["info.json Reference"]},"2856":{"title":"DIP Switches","titles":["info.json Reference"]},"2857":{"title":"EEPROM","titles":["info.json Reference"]},"2858":{"title":"Encoder","titles":["info.json Reference"]},"2859":{"title":"Host","titles":["info.json Reference"]},"2860":{"title":"Indicators","titles":["info.json Reference"]},"2861":{"title":"(Custom) Keycodes","titles":["info.json Reference"]},"2862":{"title":"Layouts","titles":["info.json Reference"]},"2863":{"title":"Leader Key","titles":["info.json Reference"]},"2864":{"title":"LED Matrix","titles":["info.json Reference"]},"2865":{"title":"Matrix","titles":["info.json Reference"]},"2866":{"title":"Mouse Keys","titles":["info.json Reference"]},"2867":{"title":"One Shot","titles":["info.json Reference"]},"2868":{"title":"PS/2","titles":["info.json Reference"]},"2869":{"title":"QMK LUFA Bootloader","titles":["info.json Reference"]},"2870":{"title":"RGBLight","titles":["info.json Reference"]},"2871":{"title":"RGB Matrix","titles":["info.json Reference"]},"2872":{"title":"Secure","titles":["info.json Reference"]},"2873":{"title":"Split Keyboard","titles":["info.json Reference"]},"2874":{"title":"Stenography","titles":["info.json Reference"]},"2875":{"title":"USB","titles":["info.json Reference"]},"2876":{"title":"WS2812","titles":["info.json Reference"]},"2877":{"title":"Language-specific Keycodes","titles":[]},"2878":{"title":"Selecting Your Host Keyboard Layout","titles":["Language-specific Keycodes"]},"2879":{"title":"Sendstring Support","titles":["Language-specific Keycodes"]},"2880":{"title":"Header Files","titles":["Language-specific Keycodes"]},"2881":{"title":"Squeezing the most out of AVR","titles":[]},"2882":{"title":"rules.mk Settings","titles":["Squeezing the most out of AVR"]},"2883":{"title":"config.h Settings","titles":["Squeezing the most out of AVR"]},"2884":{"title":"Audio Settings","titles":["Squeezing the most out of AVR"]},"2885":{"title":"Layers","titles":["Squeezing the most out of AVR"]},"2886":{"title":"OLED tweaks","titles":["Squeezing the most out of AVR"]},"2887":{"title":"RGB Settings","titles":["Squeezing the most out of AVR"]},"2888":{"title":"Final Thoughts","titles":[]},"2889":{"title":"Getting Help","titles":[]},"2890":{"title":"Realtime Chat","titles":["Getting Help"]},"2891":{"title":"OLKB Subreddit","titles":["Getting Help"]},"2892":{"title":"GitHub Issues","titles":["Getting Help"]},"2893":{"title":"Feature support policies","titles":[]},"2894":{"title":"System Constraints","titles":["Feature support policies"]},"2895":{"title":"Deprecation & Removal Policy","titles":["Feature support policies"]},"2896":{"title":"How much advance notice will be given?","titles":["Feature support policies","Deprecation & Removal Policy"]},"2897":{"title":"How will deprecation be communicated?","titles":["Feature support policies","Deprecation & Removal Policy"]},"2898":{"title":"QMK Syllabus","titles":[]},"2899":{"title":"Beginning Topics","titles":[]},"2900":{"title":"Intermediate Topics","titles":[]},"2901":{"title":"Advanced Topics","titles":[]},"2902":{"title":"Tap-Hold Configuration Options","titles":[]},"2903":{"title":"Tapping Term","titles":["Tap-Hold Configuration Options"]},"2904":{"title":"Example","titles":["Tap-Hold Configuration Options","Tapping Term"]},"2905":{"title":"Dynamic Tapping Term","titles":["Tap-Hold Configuration Options","Tapping Term"]},"2906":{"title":"Tap-Or-Hold Decision Modes","titles":["Tap-Hold Configuration Options"]},"2907":{"title":"Comparison","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes"]},"2908":{"title":"Distinct taps (AABB)","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes","Comparison"]},"2909":{"title":"Nested tap (ABBA)","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes","Comparison"]},"2910":{"title":"Rolling keys (ABAB)","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes","Comparison"]},"2911":{"title":"Default Mode","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes"]},"2912":{"title":"Permissive Hold","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes"]},"2913":{"title":"Hold On Other Key Press","titles":["Tap-Hold Configuration Options","Tap-Or-Hold Decision Modes"]},"2914":{"title":"Quick Tap Term","titles":["Tap-Hold Configuration Options"]},"2915":{"title":"Flow Tap","titles":["Tap-Hold Configuration Options"]},"2916":{"title":"is_flow_tap_key()","titles":["Tap-Hold Configuration Options","Flow Tap"]},"2917":{"title":"get_flow_tap_term()","titles":["Tap-Hold Configuration Options","Flow Tap"]},"2918":{"title":"Chordal Hold","titles":["Tap-Hold Configuration Options"]},"2919":{"title":"Chordal Hold Handedness","titles":["Tap-Hold Configuration Options","Chordal Hold"]},"2920":{"title":"Per-chord customization","titles":["Tap-Hold Configuration Options","Chordal Hold"]},"2921":{"title":"Retro Tapping","titles":["Tap-Hold Configuration Options"]},"2922":{"title":"Retro Shift","titles":["Tap-Hold Configuration Options","Retro Tapping"]},"2923":{"title":"Speculative Hold","titles":["Tap-Hold Configuration Options"]},"2924":{"title":"Why do we include the key record for the per key functions?","titles":["Tap-Hold Configuration Options"]},"2925":{"title":"Why are there no *_kb or *_user functions?!","titles":["Tap-Hold Configuration Options"]},"2926":{"title":"Understanding QMK's Code","titles":[]},"2927":{"title":"Startup","titles":["Understanding QMK's Code"]},"2928":{"title":"The Main Loop","titles":["Understanding QMK's Code"]},"2929":{"title":"Matrix Scanning","titles":["Understanding QMK's Code","The Main Loop"]},"2930":{"title":"Matrix to Physical Layout Map","titles":["Understanding QMK's Code","The Main Loop","Matrix Scanning"]},"2931":{"title":"Keycode Assignment","titles":["Understanding QMK's Code","The Main Loop","Matrix Scanning"]},"2932":{"title":"State Change Detection","titles":["Understanding QMK's Code","The Main Loop","Matrix Scanning"]},"2933":{"title":"Process Record","titles":["Understanding QMK's Code","The Main Loop","Matrix Scanning"]},"2934":{"title":"Unit Testing","titles":[]},"2935":{"title":"Google Test and Google Mock","titles":["Unit Testing"]},"2936":{"title":"Use of C++","titles":["Unit Testing"]},"2937":{"title":"Adding Tests for New or Existing Features","titles":["Unit Testing"]},"2938":{"title":"Running the Tests","titles":["Unit Testing"]},"2939":{"title":"Debugging the Tests","titles":["Unit Testing"]},"2940":{"title":"Full Integration Tests","titles":["Unit Testing"]},"2941":{"title":"Keycode String","titles":[]},"2942":{"title":"Tracing Variables","titles":[]}},"dirtCount":0,"index":[["ąžerty",{"2":{"2880":1}}],["ąƚɂɻɣɉʣ",{"2":{"2748":2}}],["µs",{"2":{"2865":1}}],["↓",{"2":{"2776":3}}],["└──",{"2":{"2601":3}}],["└row1",{"2":{"2459":3}}],["├──",{"2":{"2601":4}}],["¥",{"2":{"2540":1}}],["✔6",{"2":{"2503":1}}],["✔5",{"2":{"2503":4}}],["✔4",{"2":{"2503":2}}],["✔3",{"2":{"2503":4}}],["✔2",{"2":{"2503":3}}],["✔",{"2":{"2503":447}}],["✔️",{"2":{"341":1,"720":12,"1189":4,"1208":1,"1209":1,"2255":2,"2692":10,"2704":6}}],["€",{"2":{"2473":1}}],["┌─┘3",{"2":{"2459":2}}],["┌─┤1",{"2":{"2459":2}}],["┌─┤0",{"2":{"2459":2}}],["─────┴────────┘",{"2":{"2459":8}}],["│",{"2":{"2459":25,"2601":2}}],["│└row0",{"2":{"2459":3}}],["ಠ",{"2":{"2323":2}}],["🇺🇦",{"2":{"2323":1}}],["🎉👍",{"2":{"340":1,"607":1}}],["🤣",{"2":{"2323":1}}],["≤",{"2":{"2323":4}}],["æ",{"2":{"2323":2}}],["å",{"2":{"2323":2,"2877":1}}],["ツ",{"2":{"2322":1}}],["ћ",{"2":{"2322":1}}],["□",{"2":{"1696":25}}],["■",{"2":{"1696":15}}],["ñ",{"2":{"1587":1}}],["⇒",{"2":{"1532":3,"1533":3}}],["\\tmod",{"2":{"1770":1}}],["\\t~0",{"2":{"1770":1}}],["\\tkc",{"2":{"1770":2}}],["\\tko",{"2":{"1770":2}}],["\\t\\t\\t\\t\\t\\t\\t\\t\\t\\t\\tkc",{"2":{"1770":4}}],["\\t\\tmod",{"2":{"1770":1}}],["\\t\\treturn",{"2":{"1657":1}}],["\\tif",{"2":{"1657":1}}],["\\t",{"2":{"1486":1,"1657":1,"1768":1,"1770":6,"1771":2}}],["\\t12",{"2":{"1486":1}}],["\\t24",{"2":{"1486":1}}],["\\t36",{"2":{"1486":1}}],["✅",{"2":{"1417":1,"2255":1}}],["^ge^s^s^w^c",{"2":{"2295":1}}],["^3+0",{"2":{"1962":1}}],["^",{"2":{"1409":1,"1979":1,"2006":1,"2459":1,"2503":1,"2527":1,"2535":1,"2547":1}}],["^=",{"2":{"1407":1}}],["ひらがな",{"2":{"1355":1}}],["変換",{"2":{"1355":1}}],["無変換",{"2":{"1355":1}}],["ç",{"0":{"1352":1}}],["²",{"2":{"692":1}}],["¹",{"2":{"692":1,"2655":1}}],["être",{"2":{"616":1}}],["¯",{"2":{"490":2}}],["☐",{"2":{"490":1}}],["¬",{"2":{"490":2}}],["☒",{"2":{"461":1,"490":1,"2441":2}}],["ψ",{"2":{"427":9,"445":1,"446":5,"447":5,"448":5,"450":2,"451":2,"452":3,"453":1,"454":4,"461":1,"471":1,"472":1,"474":1,"480":1,"481":1,"490":1,"2425":5,"2441":1,"2577":1,"2707":17,"2845":2}}],["\`action",{"2":{"2311":1}}],["\`all\`",{"2":{"452":1}}],["\`layer",{"2":{"2311":2}}],["\`lalt\`",{"2":{"2311":1}}],["\`length\`",{"2":{"2050":1}}],["\`led",{"2":{"1844":1}}],["\`tapping",{"2":{"2310":1}}],["\`finished\`",{"2":{"2311":2}}],["\`ff\`",{"2":{"2310":2}}],["\`f\`",{"2":{"2310":1}}],["\`buffer\`",{"2":{"2310":1}}],["\`reset\`",{"2":{"2311":2}}],["\`rgb",{"2":{"2066":1}}],["\`raw",{"2":{"2050":1}}],["\`data\`",{"2":{"2050":1}}],["\`develop\`",{"2":{"373":1}}],["\`oled",{"2":{"1845":1,"2068":1}}],["\`offset\`",{"2":{"522":1}}],["\`esc\`",{"2":{"2310":1}}],["\`effect",{"2":{"1845":1,"2068":1}}],["\`encoder",{"2":{"307":2}}],["\`",{"2":{"1607":1,"1771":3,"1827":1,"1845":1,"2068":1,"2311":7,"2550":3,"2551":3,"2771":12}}],["\`set",{"2":{"1827":1}}],["\`some",{"2":{"1607":1}}],["\`start\`",{"2":{"522":1}}],["\`kc",{"2":{"1425":1}}],["\`qk",{"2":{"681":1,"1425":1}}],["\`qmk",{"2":{"421":2,"422":2,"423":2,"454":1}}],["\`cd\`",{"2":{"446":1,"447":1,"448":1,"2425":1}}],["\`master\`",{"2":{"373":1,"2723":3}}],["❌",{"2":{"341":1,"720":6,"1417":3}}],["⭕",{"2":{"341":1,"720":4}}],["😃",{"2":{"2398":1,"2843":1}}],["💩",{"2":{"2323":1}}],["🐍",{"2":{"2322":1}}],["👍🎉",{"2":{"340":1,"607":1}}],["😉",{"2":{"123":1}}],["→",{"2":{"176":3,"683":1,"684":2,"685":1,"2324":2}}],["麦田",{"2":{"145":1}}],["|0",{"2":{"2775":1}}],["|ent|",{"2":{"2775":1}}],["|3",{"2":{"2775":1}}],["|2",{"2":{"2775":1}}],["|1",{"2":{"2775":1}}],["|6",{"2":{"2775":1}}],["|5",{"2":{"2775":1}}],["|4",{"2":{"2775":1}}],["|9",{"2":{"2775":1}}],["|8",{"2":{"2775":1}}],["|7",{"2":{"2775":1}}],["|nlk|",{"2":{"2775":1}}],["|ing",{"2":{"2041":1}}],["|mod",{"2":{"1782":1,"2554":5,"2921":1}}],["|=",{"2":{"1527":2,"1985":1,"2034":2}}],["||",{"2":{"1425":1,"1527":1,"1606":1,"2166":1,"2310":2,"2311":1,"2374":9,"2687":1,"2904":1,"2919":1,"2920":1}}],["|kc",{"2":{"678":3}}],["|long",{"2":{"678":1}}],["|",{"2":{"116":1,"678":4,"726":1,"769":4,"802":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1191":20,"1194":32,"1197":32,"1216":2,"1313":1,"1315":1,"1375":2,"1409":18,"1416":1,"1427":26,"1430":13,"1466":2,"1532":19,"1696":9,"1735":2,"1773":3,"1846":1,"1955":1,"1956":1,"2031":4,"2034":1,"2036":8,"2069":1,"2165":1,"2374":1,"2398":2,"2459":28,"2467":6,"2495":6,"2503":2,"2527":1,"2537":2,"2540":1,"2547":1,"2550":8,"2551":14,"2565":1,"2600":1,"2616":1,"2618":1,"2619":1,"2644":1,"2775":24,"2776":11,"2911":72,"2912":48,"2913":24,"2916":1,"2918":24,"2921":22}}],["5+",{"2":{"2031":2}}],["5=64",{"2":{"1956":1}}],["59",{"2":{"1680":1}}],["58s",{"2":{"2495":1}}],["587968d6cbc2b0e1c7147540872f2a67e59ca18b",{"2":{"2398":1}}],["58",{"2":{"1680":1,"1962":1}}],["54",{"2":{"1680":1}}],["536",{"2":{"2748":1}}],["535",{"2":{"2240":1}}],["53",{"2":{"1680":1,"1962":1}}],["51",{"2":{"1680":1,"1919":1,"1962":1,"2520":1,"2792":1}}],["512",{"2":{"756":1,"1954":1,"2282":1}}],["56",{"2":{"1521":1,"1680":1,"1962":1,"2608":1}}],["5625",{"2":{"586":1}}],["575",{"2":{"1736":3}}],["57",{"2":{"1680":1,"2398":1}}],["577ch",{"2":{"1362":1}}],["577c",{"2":{"1362":1}}],["57600",{"2":{"1204":1,"1269":1}}],["5kb",{"2":{"2886":1}}],["5kro",{"2":{"1353":1}}],["5kω",{"2":{"1194":1}}],["5u",{"2":{"1326":1}}],["55",{"2":{"856":1,"1680":1}}],["55k",{"2":{"856":1}}],["5v",{"2":{"686":2,"687":1,"1293":1,"1294":3,"1295":2,"1673":1,"1733":1,"2254":1,"2273":3,"2477":1,"2480":2,"2492":2,"2662":1,"2682":1,"2683":2,"2684":3,"2693":1}}],["5rows",{"2":{"311":1}}],["52583",{"2":{"1364":1}}],["525",{"2":{"746":1}}],["52",{"2":{"181":2,"1680":1,"2792":1}}],["5291",{"2":{"114":1}}],["5",{"0":{"598":1,"2300":1,"2311":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"176":1,"188":1,"191":1,"199":3,"210":2,"222":2,"249":1,"266":1,"308":1,"317":1,"369":1,"371":1,"406":2,"549":1,"553":1,"556":1,"559":3,"568":1,"587":2,"655":1,"690":1,"692":4,"746":1,"857":2,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":2,"1126":2,"1159":1,"1160":2,"1204":1,"1245":3,"1296":2,"1412":1,"1416":1,"1417":1,"1438":1,"1451":1,"1464":1,"1486":1,"1521":1,"1587":1,"1592":1,"1619":2,"1636":2,"1678":2,"1679":1,"1680":1,"1696":1,"1714":1,"1716":1,"1735":2,"1738":3,"1782":1,"1829":1,"1831":1,"1840":1,"1846":1,"1919":31,"1924":1,"1927":2,"1930":1,"1955":2,"1962":1,"1965":1,"1968":1,"1974":1,"2009":1,"2011":3,"2060":1,"2069":1,"2074":3,"2161":1,"2170":1,"2176":3,"2180":1,"2200":1,"2215":1,"2268":1,"2270":3,"2289":1,"2294":1,"2296":4,"2297":1,"2302":1,"2315":2,"2370":1,"2372":2,"2378":1,"2380":1,"2385":1,"2398":3,"2487":1,"2503":9,"2509":1,"2513":3,"2520":31,"2521":2,"2529":3,"2535":2,"2540":2,"2543":2,"2556":1,"2643":1,"2651":1,"2729":1,"2738":1,"2748":2,"2749":2,"2767":2,"2770":3,"2776":2,"2777":1,"2781":2,"2847":1,"2854":1,"2864":2,"2865":2,"2871":2,"2872":1,"2873":1,"2886":1,"2919":3,"2921":1,"2929":1}}],["50",{"2":{"765":1,"1289":1,"1497":1,"1606":1,"1680":26,"1951":1,"1965":2,"1976":2,"2064":1,"2180":3,"2308":4,"2855":2,"2904":1,"2905":6}}],["5000",{"2":{"1592":1,"1930":1,"2210":1,"2643":1,"2854":1,"2872":1}}],["500",{"2":{"559":2,"562":1,"654":2,"856":2,"1438":1,"1512":1,"1960":1,"1972":1,"1975":1,"2184":4,"2268":1,"2270":1,"2875":2}}],["500ms",{"2":{"176":1,"1780":1,"2270":1}}],["50ms",{"2":{"160":1,"1602":1,"2905":1}}],["5050",{"0":{"1960":1},"2":{"118":1,"1960":2}}],["5x7",{"2":{"154":2,"253":2}}],["5x8",{"2":{"154":4,"1691":2}}],["5x6",{"2":{"154":4,"210":1}}],["5x13",{"2":{"114":1,"249":1}}],["5ms",{"2":{"119":2,"1955":1,"2524":2,"2905":3}}],["$5",{"2":{"2828":1}}],["$path",{"2":{"2621":1}}],["$home",{"2":{"2585":1,"2586":1,"2621":4}}],["$qmk",{"2":{"416":3}}],["$id",{"2":{"308":1}}],["$",{"2":{"111":1,"176":1,"348":1,"370":2,"371":1,"373":3,"427":11,"445":1,"446":1,"448":1,"450":1,"451":1,"452":1,"453":1,"461":2,"471":1,"472":1,"474":1,"480":1,"481":1,"571":1,"587":1,"722":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1312":4,"1458":2,"1465":2,"1466":2,"2375":1,"2425":1,"2441":2,"2448":9,"2503":1,"2527":1,"2535":1,"2547":1,"2585":1,"2586":1,"2600":5,"2627":2,"2630":2,"2632":1,"2676":2,"2707":1,"2720":1,"2748":5}}],["≈10ms",{"2":{"94":1}}],["⚠",{"2":{"70":23,"448":1,"490":1,"2425":1}}],[">line",{"2":{"2750":1}}],[">width",{"2":{"2750":2}}],[">>>>>>>",{"2":{"2627":1}}],[">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>",{"2":{"2608":2}}],[">>>",{"2":{"2608":3}}],[">0",{"2":{"2551":1}}],[">1",{"2":{"2551":2}}],[">|",{"2":{"2467":4}}],[">height",{"2":{"2750":2}}],[">held",{"2":{"2309":5}}],[">hold",{"2":{"2309":2}}],[">interrupted",{"2":{"2309":1,"2310":3,"2311":1}}],[">init",{"2":{"1844":1,"2066":1}}],[">pressed",{"2":{"2309":1,"2310":3,"2311":1,"2312":1}}],[">m2s",{"2":{"2270":1}}],[">s2m",{"2":{"2270":1}}],[">state",{"2":{"324":2}}],[">keys",{"2":{"1606":2}}],[">keycode",{"2":{"1606":5}}],[">=",{"2":{"1527":2,"1606":1,"2073":1,"2307":1,"2308":1,"2374":10,"2765":1}}],[">finished",{"2":{"325":1,"2309":1}}],[">count",{"2":{"325":1,"2307":1,"2308":2,"2309":2,"2310":3,"2311":2,"2312":2}}],[">tap",{"2":{"324":1,"325":1,"1326":2,"1527":2,"1828":1,"2309":3,"2568":1,"2569":3,"2570":1}}],[">user",{"2":{"324":1,"325":1,"2309":1}}],[">event",{"2":{"307":2,"324":1,"325":1,"591":6,"629":2,"645":1,"1326":4,"1377":1,"1378":1,"1407":4,"1425":1,"1440":4,"1441":2,"1446":1,"1456":1,"1465":2,"1466":1,"1737":5,"1828":1,"1918":1,"1942":2,"1985":1,"1986":1,"1987":1,"2006":1,"2167":2,"2168":3,"2170":2,"2224":1,"2309":1,"2568":1,"2569":3,"2570":2,"2785":2,"2905":4}}],[">",{"2":{"70":1,"428":1,"471":2,"472":2,"474":1,"480":1,"481":2,"645":1,"1328":6,"1409":1,"1425":2,"1456":1,"1461":1,"1521":10,"1976":1,"2073":2,"2074":1,"2167":1,"2168":1,"2270":1,"2374":2,"2398":1,"2551":3,"2598":2,"2725":1,"2750":6}}],["~1",{"2":{"2886":1}}],["~175ms",{"2":{"2312":1}}],["~400",{"2":{"2882":1}}],["~5",{"2":{"2660":1}}],["~$6",{"2":{"2657":1,"2888":1}}],["~$",{"2":{"2398":4}}],["~mouse",{"2":{"1985":1}}],["~mod",{"2":{"1527":1,"2165":1}}],["~0x05",{"2":{"2773":1}}],["~0x04",{"2":{"2772":1}}],["~0x03",{"2":{"2771":1}}],["~0x02",{"2":{"2762":1,"2770":1}}],["~0x01",{"2":{"2761":1,"2769":1}}],["~0x00",{"2":{"2760":1,"2768":1}}],["~0",{"2":{"1770":4}}],["~",{"2":{"70":3,"421":1,"422":1,"423":1,"424":1,"427":5,"446":1,"447":1,"448":1,"507":2,"508":1,"587":1,"1665":1,"1667":1,"1771":1,"1773":2,"2034":1,"2036":3,"2165":1,"2425":1,"2503":2,"2527":1,"2537":2,"2547":1,"2598":5,"2599":1,"2600":1,"2601":1,"2630":2}}],["~22k",{"2":{"2660":1}}],["~2",{"2":{"6":1,"10":1}}],["7da94ac5",{"2":{"2398":1}}],["7kohm",{"2":{"2260":1}}],["7kω",{"2":{"2257":1}}],["7k",{"2":{"2031":3}}],["7k25",{"2":{"1159":1}}],["7=256",{"2":{"1956":1}}],["79",{"2":{"1680":1,"1962":1}}],["7949",{"2":{"65":1}}],["78",{"2":{"1680":1}}],["777",{"2":{"2748":1}}],["77",{"2":{"1680":1}}],["73",{"2":{"1680":1,"1962":1}}],["73b4",{"2":{"371":1}}],["7172",{"2":{"2501":1}}],["71",{"2":{"1521":1,"1680":1}}],["7114",{"2":{"32":1}}],["74",{"2":{"1521":1,"1680":1}}],["72mhz",{"2":{"2682":1}}],["72",{"2":{"721":1,"1155":1,"1680":1,"1839":1,"2059":1}}],["7capi8w",{"2":{"680":1}}],["7u",{"2":{"266":1,"767":1}}],["7000h",{"2":{"1362":2}}],["70",{"2":{"519":1,"613":1,"1329":1,"1680":1,"1962":1,"2608":1}}],["70keys",{"2":{"241":2}}],["70ec",{"2":{"114":1,"160":1}}],["76",{"2":{"510":1,"512":1,"1521":1,"1680":1,"1919":1,"1962":1,"2520":1}}],["76k",{"2":{"222":1}}],["7648",{"2":{"49":1}}],["750",{"2":{"2379":1,"2492":1}}],["750ms",{"2":{"1680":1}}],["75000",{"2":{"1204":1}}],["75kbps",{"2":{"568":1,"2268":1}}],["75",{"2":{"222":2,"266":1,"308":1,"442":1,"1521":1,"1680":1}}],["7521",{"2":{"134":1}}],["7splus",{"2":{"154":2}}],["7skb",{"2":{"154":2,"222":1}}],["7",{"2":{"70":1,"76":1,"160":1,"172":1,"173":1,"222":1,"236":1,"369":1,"407":1,"564":1,"587":2,"613":1,"690":1,"692":4,"714":1,"763":2,"769":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"800":1,"829":1,"855":1,"887":1,"919":1,"921":1,"954":1,"955":1,"988":1,"989":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1159":1,"1195":2,"1198":2,"1214":1,"1266":4,"1354":2,"1486":1,"1521":1,"1619":2,"1678":1,"1679":1,"1680":1,"1696":1,"1714":1,"1716":1,"1735":2,"1738":3,"1919":5,"1927":2,"1955":2,"1956":3,"1962":1,"1965":1,"1983":1,"2011":3,"2178":1,"2200":1,"2289":1,"2294":1,"2296":5,"2379":1,"2381":1,"2403":1,"2501":1,"2503":8,"2513":3,"2520":5,"2521":2,"2529":3,"2535":2,"2540":4,"2543":2,"2556":1,"2627":1,"2750":3,"2770":1,"2776":2,"2777":1}}],["x=0",{"2":{"2750":1}}],["xbps",{"2":{"2594":1}}],["xvx",{"2":{"2560":1}}],["xl",{"2":{"2501":1}}],["x7f",{"2":{"2221":1}}],["x0",{"2":{"2750":1}}],["x0a",{"2":{"2221":1}}],["x09",{"2":{"2221":1}}],["x08",{"2":{"1696":1,"2221":1}}],["xmas",{"2":{"2174":1,"2525":1}}],["xml",{"0":{"342":1}}],["x+",{"2":{"1965":1}}],["x^2",{"2":{"1962":1}}],["xor",{"2":{"1422":2}}],["xorg",{"2":{"1358":1}}],["xo87",{"2":{"222":1}}],["xfer",{"2":{"1355":1}}],["x1b",{"2":{"2221":1}}],["x1",{"2":{"328":1,"2750":1}}],["xzy",{"2":{"249":1}}],["xtap",{"2":{"2310":5}}],["xtx",{"2":{"222":1}}],["xt",{"2":{"222":4}}],["xt8x",{"2":{"222":1}}],["xt60",{"2":{"222":2}}],["x2",{"2":{"222":1,"2905":4}}],["x26",{"2":{"105":8,"272":4,"324":4,"325":6,"507":2,"645":2,"1378":1,"1466":2,"1511":5,"1527":6,"1585":1,"1606":3,"1651":6,"1768":1,"1770":6,"1771":2,"1918":2,"1949":1,"1976":2,"1985":1,"1986":2,"2034":1,"2036":5,"2063":11,"2073":7,"2160":2,"2165":2,"2166":1,"2182":3,"2270":2,"2279":1,"2298":2,"2309":9,"2374":25,"2568":2,"2569":6,"2570":2,"2645":8,"2904":3,"2916":1,"2917":4,"2942":1}}],["xprintf",{"2":{"2411":3}}],["xpm",{"2":{"380":3,"381":2,"382":1,"384":1}}],["xpack",{"0":{"380":1},"2":{"381":1,"384":1,"387":1}}],["xp",{"2":{"207":1}}],["xs60",{"2":{"197":2,"199":1}}],["xy",{"2":{"176":1}}],["xicolinguada",{"2":{"2418":1}}],["xip",{"2":{"174":1,"191":1}}],["xiudi",{"2":{"102":9,"114":1,"222":1,"253":2,"266":1,"285":1}}],["xap",{"2":{"145":1,"199":1,"222":1}}],["x86",{"2":{"143":1,"2499":2}}],["xealous",{"2":{"294":1}}],["xealousbrown",{"2":{"114":1}}],["xelus22",{"2":{"58":1}}],["xelus",{"0":{"58":1},"2":{"58":4,"197":2,"222":8,"277":1}}],["xd96",{"2":{"102":2}}],["xd87",{"2":{"102":2}}],["xd84pro",{"2":{"102":2}}],["xd84",{"2":{"102":2}}],["xd68",{"2":{"102":2}}],["xd60",{"2":{"93":1,"102":2}}],["xd004",{"2":{"102":2,"222":1,"253":2}}],["xd002",{"2":{"102":2,"114":1,"285":1}}],["xd75",{"2":{"64":1,"102":2,"266":1}}],["x3c",{"2":{"55":2,"105":8,"348":2,"370":1,"373":1,"427":11,"428":13,"432":4,"434":1,"450":2,"451":2,"461":1,"473":3,"495":6,"496":4,"503":2,"522":2,"621":1,"714":2,"715":2,"718":2,"763":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1296":2,"1300":2,"1402":1,"1413":1,"1425":1,"1427":3,"1429":2,"1430":6,"1461":5,"1466":1,"1527":1,"1529":1,"1550":2,"1551":2,"1585":2,"1606":1,"1651":8,"1773":2,"1782":2,"1844":2,"1949":1,"1950":1,"1976":1,"1994":3,"1999":1,"2034":8,"2035":1,"2036":32,"2041":2,"2066":2,"2073":5,"2074":1,"2168":1,"2271":2,"2279":1,"2374":10,"2375":2,"2376":4,"2379":3,"2381":2,"2382":2,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2401":2,"2457":4,"2495":4,"2501":1,"2551":1,"2552":2,"2576":1,"2577":3,"2580":2,"2587":2,"2588":3,"2607":2,"2609":2,"2622":1,"2627":14,"2630":3,"2632":2,"2725":1,"2750":6,"2761":6,"2793":1,"2919":1,"2921":2}}],["x",{"0":{"108":1,"1372":1,"1647":1,"2784":1,"2786":1},"1":{"1648":1,"2785":1,"2787":1},"2":{"49":1,"70":1,"108":1,"113":2,"114":5,"207":1,"210":1,"222":3,"249":2,"266":2,"279":1,"294":1,"308":1,"317":1,"369":1,"370":1,"415":5,"530":1,"587":2,"1370":1,"1409":1,"1422":4,"1442":5,"1444":1,"1599":2,"1606":1,"1619":1,"1635":2,"1639":2,"1647":1,"1648":2,"1696":24,"1734":1,"1736":1,"1737":2,"1760":1,"1840":6,"1846":2,"1928":1,"1929":1,"1955":2,"1956":2,"1962":5,"1964":3,"1965":2,"1968":2,"1969":4,"1976":4,"1978":5,"1980":5,"1983":3,"1986":2,"1987":3,"1989":2,"1990":2,"2007":1,"2040":1,"2043":2,"2060":6,"2069":2,"2174":1,"2192":2,"2221":4,"2225":1,"2273":1,"2283":2,"2306":1,"2310":18,"2311":1,"2325":1,"2373":2,"2410":1,"2414":3,"2448":2,"2459":21,"2503":3,"2525":1,"2533":1,"2535":3,"2556":1,"2569":4,"2694":1,"2714":16,"2749":3,"2750":13,"2775":1,"2776":19,"2777":17,"2781":8,"2784":3,"2786":3,"2862":3,"2864":2,"2871":2,"2911":2,"2919":1,"2942":1}}],["xxxx",{"2":{"2176":1,"2721":4}}],["xxxxxxx",{"2":{"2503":1,"2544":1,"2554":2,"2775":1}}],["xxxxx",{"2":{"1661":1}}],["xxx",{"2":{"212":2,"283":7,"625":1,"765":4,"1417":1,"1775":1,"1776":1,"1782":2,"2775":5,"2921":2}}],["xx",{"2":{"28":1}}],["jdk",{"2":{"2649":1}}],["jre",{"2":{"2649":1}}],["jris75",{"2":{"2560":1}}],["jx",{"2":{"2410":1}}],["jerky",{"2":{"1930":1,"2033":1}}],["jels60v2",{"2":{"210":1}}],["jellybean",{"2":{"114":1,"199":1,"210":1,"285":1,"2063":3,"2887":1}}],["j8",{"2":{"1466":1}}],["jkl",{"2":{"1616":1}}],["jk1",{"2":{"328":1}}],["jk",{"2":{"266":1,"1599":4,"1616":1}}],["jkeys",{"2":{"168":1,"222":2}}],["jm60",{"2":{"241":2}}],["jig",{"2":{"2292":1}}],["jittery",{"2":{"1979":1}}],["jian",{"2":{"236":1}}],["jis",{"0":{"1355":1},"2":{"210":1,"1343":2,"1355":1,"2540":9}}],["jisplit89",{"2":{"154":2}}],["jb",{"2":{"222":1}}],["jf",{"2":{"222":1,"249":1}}],["jsmith",{"2":{"2707":2}}],["jsjson",{"2":{"1962":1}}],["js",{"2":{"380":1,"1738":32,"1743":1,"1962":1,"2050":1,"2513":32}}],["jscotto",{"2":{"199":1,"205":5,"210":1}}],["json\`",{"2":{"454":1}}],["json>",{"2":{"427":1,"428":1,"2588":1}}],["json2c",{"0":{"436":1},"2":{"222":2,"436":1,"2577":1}}],["jsons",{"2":{"114":1}}],["jsonschema",{"2":{"76":1,"114":1,"145":1,"191":2,"210":1,"338":1,"664":1,"666":2,"2844":1}}],["json",{"0":{"120":1,"262":1,"369":1,"434":1,"602":1,"665":1,"1435":1,"1624":1,"2446":2,"2599":1,"2709":1,"2776":1,"2844":1},"1":{"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"1436":1,"1437":1,"1438":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1,"2860":1,"2861":1,"2862":1,"2863":1,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1,"2869":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2875":1,"2876":1},"2":{"70":32,"73":1,"75":1,"76":6,"109":1,"110":1,"111":1,"112":1,"114":5,"120":3,"132":2,"134":3,"152":1,"160":1,"169":3,"176":2,"184":4,"189":1,"191":8,"198":1,"199":5,"201":2,"210":1,"212":5,"222":22,"224":2,"232":1,"236":10,"238":1,"249":27,"262":2,"266":30,"277":3,"285":1,"293":1,"303":2,"305":1,"306":1,"308":1,"314":1,"315":1,"328":1,"333":4,"348":1,"362":2,"368":1,"369":1,"370":5,"373":4,"427":3,"431":4,"434":6,"435":2,"437":1,"441":2,"445":4,"446":3,"447":3,"448":2,"450":2,"451":2,"461":4,"498":2,"553":3,"576":1,"578":1,"579":3,"582":1,"583":1,"584":2,"586":3,"587":2,"590":1,"598":5,"602":2,"662":1,"663":3,"664":1,"665":1,"666":1,"667":4,"668":3,"670":1,"671":1,"678":1,"1286":1,"1387":1,"1400":2,"1402":1,"1404":1,"1427":1,"1435":2,"1621":3,"1622":4,"1624":4,"2032":1,"2037":3,"2050":1,"2390":1,"2407":1,"2425":3,"2443":6,"2444":2,"2446":3,"2447":1,"2560":14,"2577":2,"2583":1,"2588":2,"2599":2,"2600":5,"2601":1,"2602":1,"2603":4,"2671":2,"2675":2,"2676":2,"2709":1,"2710":2,"2711":1,"2712":2,"2713":1,"2714":1,"2721":9,"2775":1,"2776":10,"2777":3,"2778":2,"2781":2,"2844":4,"2847":1,"2862":2,"2864":1,"2865":1,"2870":1,"2871":1,"2878":2,"2901":1,"2919":2,"2930":1}}],["jnao",{"2":{"154":2}}],["jtagen",{"2":{"1369":1}}],["jtag",{"0":{"1369":1},"2":{"145":1,"1369":4,"2491":4,"2496":1,"2811":1}}],["jolly",{"2":{"2501":1}}],["jonasfasler",{"2":{"2418":1}}],["jones",{"2":{"210":1}}],["john",{"2":{"1517":3,"1599":2,"2707":1}}],["joint",{"2":{"2420":3,"2421":1}}],["joints",{"2":{"2418":2,"2421":1,"2427":3}}],["join",{"2":{"542":1,"666":1,"670":1,"2420":1,"2497":1}}],["job",{"0":{"363":1,"364":1,"365":1,"370":1,"580":1,"581":1,"582":1},"2":{"360":3,"362":1,"363":2,"370":1,"371":1,"372":2,"578":2,"579":5,"580":1,"581":1,"582":1,"586":1,"1531":1,"2602":1}}],["jobs>",{"2":{"427":2,"428":2}}],["jobs",{"2":{"359":4,"427":3,"453":1,"467":1,"577":1,"583":1,"2600":1}}],["joshajohnson",{"2":{"241":2}}],["jopr",{"2":{"191":1}}],["journey",{"2":{"133":1}}],["joysticks",{"2":{"49":1,"118":2,"277":1,"1962":1}}],["joystick",{"0":{"1732":1,"1740":1,"1742":1,"1744":1,"1745":1,"1747":1,"1749":1,"1752":1,"1754":1,"1962":1,"2513":1},"1":{"1733":1,"1734":1,"1735":1,"1736":1,"1737":1,"1738":1,"1739":1,"1740":1,"1741":2,"1742":1,"1743":2,"1744":1,"1745":1,"1746":2,"1747":1,"1748":2,"1749":1,"1750":2,"1751":2,"1752":1,"1753":2,"1754":1,"1755":2},"2":{"49":7,"63":1,"114":1,"118":1,"145":2,"160":1,"183":5,"188":1,"191":4,"199":1,"231":3,"236":1,"249":3,"285":1,"1732":2,"1733":2,"1734":3,"1735":11,"1736":7,"1737":8,"1738":32,"1740":1,"1741":2,"1744":1,"1962":21,"2513":33,"2933":1}}],["james",{"2":{"2934":1}}],["japan",{"2":{"1343":1}}],["japanese",{"2":{"176":1,"1355":1,"2878":1,"2880":3}}],["jacks",{"2":{"2256":1,"2258":1}}],["jackhumbert",{"2":{"681":1,"1521":1}}],["jack",{"2":{"681":1,"1340":3,"1457":3,"1462":1}}],["jacky",{"2":{"67":3,"72":1,"218":4,"222":2}}],["jan",{"2":{"520":1,"521":1,"522":2}}],["jane",{"2":{"122":2,"134":1}}],["java",{"0":{"385":1,"2649":1},"2":{"385":1,"2050":1,"2646":1,"2649":3}}],["jazz",{"2":{"294":2}}],["jay60",{"2":{"222":1}}],["jaykeeb",{"2":{"205":1,"218":1}}],["ja",{"2":{"199":1}}],["jj50",{"2":{"102":2,"253":2,"266":1}}],["jj4x4",{"2":{"102":2}}],["jj40",{"2":{"102":2,"253":2,"266":1}}],["j",{"2":{"65":1,"207":2,"222":1,"249":2,"266":2,"369":1,"416":1,"427":4,"428":2,"453":2,"467":2,"587":2,"1599":1,"1616":2,"2159":1,"2310":1,"2323":4,"2325":2,"2503":3,"2533":2,"2535":3,"2556":1,"2918":3}}],["jurisdiction",{"2":{"2728":1}}],["judged",{"2":{"2265":2}}],["judgment",{"2":{"408":1}}],["jumbo",{"0":{"1955":1}}],["jumpers",{"2":{"2501":1}}],["jumper",{"2":{"2386":2,"2388":2,"2391":2,"2476":1}}],["jumping",{"2":{"649":1,"1583":1}}],["jump",{"2":{"65":1,"74":1,"160":2,"176":1,"191":1,"614":1,"649":1,"650":3,"651":2,"652":2,"1484":1,"1583":1,"1585":2,"1619":2,"1950":2,"2159":1,"2671":2,"2678":2}}],["jumps",{"2":{"49":1}}],["jun",{"2":{"1340":1,"2405":1}}],["junco",{"2":{"253":2}}],["junk",{"2":{"160":1,"222":1}}],["justifiable",{"2":{"2719":1}}],["justification",{"2":{"2719":3,"2721":1}}],["just60",{"2":{"154":2}}],["just",{"0":{"608":1,"1317":1},"2":{"5":1,"45":1,"116":1,"173":1,"188":2,"233":1,"245":1,"320":1,"387":1,"453":1,"543":1,"598":1,"603":1,"764":1,"1244":2,"1265":1,"1312":1,"1335":1,"1351":1,"1369":1,"1407":1,"1416":2,"1419":1,"1421":1,"1433":1,"1434":1,"1440":2,"1444":1,"1464":1,"1466":1,"1467":1,"1471":1,"1479":1,"1486":1,"1511":1,"1518":1,"1522":1,"1528":1,"1531":1,"1583":1,"1599":1,"1603":1,"1606":1,"1610":1,"1612":1,"1613":1,"1657":1,"1675":1,"1773":1,"1780":2,"1781":1,"1789":2,"1917":1,"1955":1,"1977":1,"1978":2,"2075":1,"2183":1,"2253":1,"2258":2,"2267":1,"2301":1,"2302":2,"2310":1,"2313":1,"2318":1,"2368":1,"2410":1,"2416":1,"2422":2,"2427":1,"2497":1,"2554":1,"2560":12,"2562":1,"2583":1,"2596":1,"2606":1,"2609":1,"2669":1,"2671":1,"2707":1,"2723":1,"2734":1,"2749":1,"2776":1,"2786":1,"2905":1,"2906":1,"2923":1,"2936":1,"2937":1,"2942":1}}],["jpg",{"2":{"681":1,"2721":1}}],["jps",{"2":{"36":1}}],["jp",{"0":{"35":1},"1":{"36":1},"2":{"35":1,"36":4}}],["9a",{"2":{"2237":1,"2239":1,"2241":1,"2243":1}}],["95",{"2":{"1680":1,"2580":1,"2761":2}}],["9501",{"2":{"51":1}}],["9b5c",{"2":{"370":1,"371":1}}],["91",{"2":{"1680":1}}],["910",{"2":{"222":1}}],["9126",{"2":{"199":1}}],["9174",{"2":{"48":1}}],["9171",{"2":{"32":1}}],["9",{"2":{"114":1,"137":1,"222":1,"249":1,"266":3,"308":1,"328":1,"369":1,"407":1,"416":2,"420":1,"423":1,"512":1,"587":2,"690":1,"692":4,"860":1,"925":1,"959":1,"993":1,"1129":1,"1393":1,"1427":1,"1428":1,"1486":1,"1508":1,"1521":1,"1587":1,"1619":3,"1680":1,"1689":1,"1738":3,"1919":3,"1962":1,"2011":3,"2176":1,"2182":3,"2184":2,"2245":1,"2252":4,"2253":3,"2284":1,"2289":1,"2294":1,"2296":4,"2398":4,"2503":8,"2513":3,"2520":3,"2529":3,"2535":2,"2540":4,"2543":2,"2556":1,"2776":2,"2777":1,"2792":1,"2875":2}}],["967",{"2":{"2238":1}}],["9600",{"2":{"1269":1,"2291":1}}],["9603",{"2":{"74":1}}],["96",{"0":{"1357":1},"2":{"222":1,"342":1,"347":1,"951":1,"1665":1,"1667":1,"1668":1,"1669":1,"1680":1,"1839":1,"1962":1,"2503":1,"2512":1,"2519":2,"2537":1,"2548":2,"2671":1}}],["9657",{"2":{"114":1}}],["92",{"2":{"1680":1,"1962":1}}],["9207",{"2":{"686":1,"2492":1}}],["9203",{"2":{"686":1,"2492":1}}],["9205",{"2":{"114":1,"686":1,"2492":1}}],["9284",{"2":{"50":1}}],["97",{"2":{"1330":1,"1680":1}}],["9700",{"2":{"64":1}}],["9703",{"2":{"63":1}}],["9738",{"2":{"49":1}}],["93",{"2":{"1680":1}}],["9335",{"2":{"92":1}}],["9308",{"2":{"51":1}}],["9356",{"2":{"50":1}}],["9355",{"2":{"50":1}}],["9310",{"2":{"50":1}}],["9315",{"2":{"50":1}}],["9318",{"2":{"46":1}}],["98",{"2":{"1680":1}}],["9800",{"0":{"1961":1},"2":{"118":1,"1961":2}}],["9824",{"2":{"114":1}}],["9826",{"2":{"63":1}}],["9842",{"2":{"93":1}}],["9832",{"2":{"50":1}}],["9864",{"2":{"49":1}}],["9856",{"2":{"49":1}}],["94",{"2":{"1680":1}}],["9404",{"2":{"114":1}}],["9485",{"2":{"73":1}}],["9487",{"2":{"49":1}}],["9471",{"2":{"49":1}}],["99",{"2":{"416":1,"1680":1,"2284":1,"2875":1,"2929":1}}],["9973",{"2":{"270":1,"277":1}}],["9952",{"2":{"65":1}}],["9940",{"2":{"63":1}}],["9949",{"2":{"49":1}}],["9905",{"2":{"51":1}}],["9964",{"2":{"49":1}}],["9987",{"2":{"48":1}}],["90°",{"2":{"1413":1,"1735":1}}],["906",{"2":{"1159":2}}],["9054",{"2":{"50":1}}],["9055",{"2":{"50":1}}],["9023",{"2":{"50":1}}],["9020",{"2":{"49":1}}],["9001",{"2":{"1606":1}}],["900",{"2":{"1023":2,"1057":2,"1282":1,"1736":2}}],["900k",{"2":{"645":1}}],["9005",{"2":{"50":1}}],["900000",{"2":{"645":1}}],["9000",{"2":{"23":1,"45":1}}],["9019",{"2":{"26":1}}],["90",{"0":{"1955":1},"2":{"8":1,"1487":1,"1680":1,"1954":2,"1955":3,"1956":2,"1966":2,"1978":2,"1980":2,"2044":2,"2398":1,"2750":1}}],["zxcvm",{"2":{"2880":3}}],["zuoya",{"2":{"2560":1}}],["zr",{"2":{"2294":3}}],["zdst",{"2":{"2288":1}}],["zle12864b",{"2":{"2276":1}}],["zone",{"2":{"2633":1}}],["zolentech",{"2":{"2276":1}}],["zoom",{"2":{"1965":9}}],["zodiark",{"2":{"210":1}}],["z0",{"2":{"1427":1,"1428":1}}],["zshrc",{"2":{"507":1}}],["zsh",{"2":{"505":1,"507":1}}],["zsa",{"0":{"5":1},"2":{"74":1,"241":1,"249":1,"270":1,"277":3}}],["zk3mod",{"2":{"249":1}}],["z34",{"2":{"241":2}}],["z12",{"2":{"241":2}}],["z150",{"2":{"37":2,"144":2,"145":1}}],["zadig",{"0":{"682":1},"1":{"683":1,"684":1,"685":1,"686":1},"2":{"240":3,"682":1,"683":2,"684":3,"685":1,"686":2,"1315":2}}],["zwag75",{"2":{"222":1}}],["z70ultra",{"2":{"222":1,"253":2}}],["ztboards",{"2":{"222":2}}],["zip",{"2":{"360":2}}],["zigotica",{"2":{"241":2,"249":1}}],["zicodia",{"2":{"222":1}}],["zinc",{"0":{"32":1},"2":{"32":1,"154":6}}],["zenkaku",{"2":{"2540":1}}],["zeal60",{"2":{"1585":1}}],["zeus",{"2":{"222":1}}],["zed65",{"2":{"210":1,"249":1}}],["zeroes",{"2":{"222":1,"1983":1}}],["zero",{"2":{"195":1,"210":1,"236":1,"427":1,"717":2,"747":1,"1365":1,"1501":1,"1532":2,"1533":1,"1985":1,"2007":1,"2296":1,"2372":1,"2645":1,"2678":1,"2758":1,"2760":2,"2766":1,"2768":1,"2882":1}}],["zcar",{"2":{"176":1}}],["zvecr",{"2":{"173":1,"182":1,"266":1}}],["z",{"0":{"2784":1,"2786":1},"1":{"2785":1,"2787":1},"2":{"137":1,"191":1,"249":1,"257":1,"258":1,"259":2,"266":1,"277":1,"369":1,"587":2,"758":1,"1422":4,"1502":1,"1507":1,"1521":1,"1532":1,"1587":1,"1594":1,"1596":1,"1616":1,"1619":1,"1673":1,"1685":1,"1734":1,"1760":1,"1781":1,"1968":1,"2156":7,"2160":5,"2165":1,"2245":2,"2289":1,"2294":1,"2310":1,"2358":1,"2471":2,"2503":3,"2535":3,"2556":1,"2784":3,"2786":5,"2792":2,"2915":1,"2916":1,"2920":1,"2923":1}}],["zygomorph",{"2":{"93":1}}],["+size",{"2":{"2721":1}}],["++col",{"2":{"2073":1}}],["++row",{"2":{"2073":1}}],["++i",{"2":{"1529":1,"2750":2}}],["+6",{"2":{"1919":1,"2520":1}}],["+4",{"2":{"1919":1,"2520":1}}],["+3",{"2":{"1919":1,"2520":1,"2661":1}}],["+2",{"2":{"1919":1,"2520":1}}],["+1",{"2":{"1919":1,"2520":1}}],["+127",{"2":{"1734":1}}],["+7",{"2":{"1484":1}}],["+5v",{"2":{"2488":1}}],["+5",{"2":{"1484":1,"1919":1,"2520":1}}],["+=",{"2":{"234":9,"570":4,"571":1,"621":1,"722":2,"798":3,"827":3,"853":3,"885":3,"917":3,"952":3,"986":3,"1020":3,"1054":3,"1088":3,"1122":3,"1156":3,"1212":3,"1329":2,"1414":1,"1458":3,"1465":1,"1466":1,"1606":1,"1616":1,"1627":1,"1987":2,"2448":2,"2598":1,"2746":16,"2749":13,"2750":2,"2905":1}}],["+cleanup",{"2":{"199":1}}],["+",{"0":{"1377":2,"1378":1},"2":{"25":1,"99":2,"134":2,"160":1,"176":3,"199":2,"210":1,"236":1,"332":1,"348":2,"405":1,"639":1,"713":9,"1191":8,"1194":8,"1195":1,"1197":8,"1198":1,"1308":4,"1409":18,"1425":1,"1427":15,"1428":1,"1430":8,"1497":1,"1526":1,"1527":3,"1532":42,"1588":1,"1589":4,"1741":1,"1760":4,"1761":4,"1768":1,"1770":11,"1771":4,"1773":2,"1778":1,"1780":1,"1781":1,"1789":1,"1846":1,"1976":3,"1983":4,"2031":4,"2052":2,"2063":2,"2069":1,"2156":6,"2159":16,"2160":9,"2179":2,"2245":1,"2270":1,"2311":1,"2337":1,"2398":2,"2459":8,"2467":20,"2503":2,"2527":1,"2537":1,"2543":1,"2547":1,"2551":2,"2675":8,"2746":22,"2760":1,"2761":1,"2768":1,"2770":1,"2775":10,"2776":2,"2777":1,"2781":4,"2792":1,"2864":1,"2871":1,"2903":1,"2904":2,"2905":1,"2911":36,"2912":24,"2913":12,"2918":16,"2921":8,"2923":1}}],["8bpp",{"2":{"2770":2}}],["8bit",{"2":{"166":1,"1467":1,"2885":1}}],["8px",{"2":{"2750":2}}],["8t",{"2":{"2215":1}}],["86",{"2":{"1680":1}}],["8x",{"2":{"1678":1,"1679":1}}],["8xv1",{"2":{"222":1}}],["81",{"2":{"1159":1,"1680":1,"1918":1}}],["8192",{"2":{"746":1,"747":1,"753":1}}],["8k4",{"2":{"918":1,"921":2,"953":1,"955":2,"987":1,"989":2}}],["8k",{"2":{"857":2,"922":2,"956":2,"990":2,"1024":2,"1055":2,"1058":4,"1092":2,"1126":2,"1160":2}}],["8mhz",{"2":{"328":1,"2492":2}}],["87",{"2":{"1680":1}}],["87h",{"2":{"266":1}}],["8777",{"2":{"49":1}}],["8778",{"2":{"49":1}}],["8l",{"2":{"222":1}}],["80x160",{"2":{"2746":1,"2749":1}}],["80k",{"2":{"856":1}}],["8000",{"2":{"1989":1,"1990":1}}],["800",{"2":{"656":1,"1961":1,"1972":1,"1976":2}}],["800ms",{"2":{"656":1}}],["800khz",{"2":{"285":1}}],["80",{"2":{"210":1,"562":2,"856":1,"1449":1,"1680":16,"1918":3,"1929":1,"2749":3,"2750":2,"2847":2}}],["8|16|32",{"2":{"166":1}}],["88",{"2":{"1680":1}}],["88200u",{"2":{"716":1}}],["8893",{"2":{"65":1}}],["8830",{"2":{"37":1}}],["8200",{"2":{"1961":1}}],["82",{"2":{"1680":1,"1918":1,"1962":1}}],["8237",{"2":{"587":1}}],["8236",{"2":{"371":1}}],["8291",{"2":{"49":1}}],["8256",{"2":{"49":1}}],["8269",{"2":{"24":1}}],["8",{"2":{"49":1,"74":1,"111":1,"114":1,"166":1,"199":1,"222":2,"285":1,"348":2,"369":1,"407":1,"563":1,"587":2,"658":1,"690":1,"692":4,"698":2,"714":1,"716":2,"752":1,"756":1,"782":1,"788":1,"857":2,"890":1,"921":1,"922":2,"955":1,"956":2,"989":1,"990":2,"1023":1,"1024":2,"1027":1,"1057":1,"1058":2,"1061":1,"1092":2,"1095":1,"1126":2,"1160":2,"1163":1,"1194":1,"1249":1,"1297":1,"1300":1,"1407":1,"1413":1,"1417":1,"1486":1,"1521":2,"1526":2,"1532":1,"1603":3,"1619":2,"1679":1,"1680":1,"1696":3,"1714":1,"1716":1,"1734":2,"1735":1,"1736":1,"1738":3,"1741":1,"1782":1,"1846":1,"1919":3,"1920":1,"1924":1,"1927":2,"1928":2,"1929":2,"1930":3,"1933":1,"1949":2,"1951":1,"1954":2,"1955":3,"1956":2,"1962":1,"1965":1,"1983":2,"1987":2,"2011":3,"2036":1,"2069":1,"2175":1,"2179":2,"2182":2,"2200":1,"2214":1,"2215":1,"2237":1,"2241":1,"2279":2,"2281":1,"2282":2,"2289":1,"2291":1,"2294":1,"2296":4,"2325":1,"2337":1,"2403":1,"2491":1,"2500":1,"2501":3,"2503":8,"2513":3,"2520":3,"2521":2,"2529":3,"2533":1,"2535":2,"2540":4,"2543":2,"2550":2,"2555":1,"2556":1,"2566":1,"2649":1,"2747":1,"2748":3,"2750":3,"2758":1,"2766":1,"2772":2,"2776":2,"2777":1,"2796":1,"2864":1,"2870":2,"2871":1,"2885":1,"2921":1}}],["85",{"2":{"1521":1,"1680":1,"1962":1,"2180":1}}],["8591",{"2":{"114":2,"1599":1}}],["8532",{"2":{"94":1}}],["8537",{"2":{"37":1}}],["8564",{"2":{"63":1}}],["8582",{"2":{"35":1}}],["84",{"2":{"1680":1}}],["8422",{"2":{"133":1,"134":1}}],["8403",{"2":{"93":1}}],["8441",{"2":{"49":1}}],["8499",{"2":{"37":1}}],["8412",{"2":{"37":1}}],["8472",{"2":{"33":1}}],["8484",{"2":{"27":1}}],["89",{"2":{"1680":1,"1919":1,"1962":1,"2520":1}}],["8936",{"2":{"458":1,"615":1}}],["8979",{"2":{"38":1}}],["8977",{"2":{"38":1}}],["8974",{"2":{"28":1}}],["8968",{"2":{"38":1}}],["8959",{"2":{"38":1}}],["8958",{"2":{"38":1}}],["8957",{"2":{"38":1}}],["8954",{"2":{"38":1}}],["8903",{"2":{"28":1}}],["83",{"2":{"251":1,"1680":1,"1918":1}}],["8327",{"2":{"50":1}}],["8321",{"2":{"21":1}}],["8318",{"2":{"49":1}}],["8348",{"2":{"22":1}}],["vqge7ok",{"2":{"2721":2}}],["vbat",{"2":{"2659":1}}],["vbus",{"2":{"1393":2,"1394":1,"2271":1,"2272":4,"2273":2,"2660":1}}],["v60",{"2":{"2442":1}}],["v=vkrppahlisy",{"2":{"2180":1}}],["vlc",{"2":{"2503":1}}],["vl",{"2":{"2501":1}}],["vl9",{"2":{"1919":1,"2520":1}}],["vl8",{"2":{"1919":1,"2520":1}}],["vl7",{"2":{"1919":1,"2520":1}}],["vl6",{"2":{"1919":1,"2520":1}}],["vl5",{"2":{"1919":1,"2520":1}}],["vl4",{"2":{"1919":1,"2520":1}}],["vl3",{"2":{"1919":1,"2520":1}}],["vl2",{"2":{"1919":1,"2520":1}}],["vl10",{"2":{"1919":1,"2520":1}}],["vl1",{"2":{"1919":1,"2520":1}}],["vl0",{"2":{"1919":1,"2520":1}}],["vlk",{"2":{"188":1,"191":1}}],["vddio",{"2":{"1214":1}}],["vdd",{"2":{"1191":1,"1194":1,"1197":1}}],["vcs",{"2":{"2594":2}}],["vcc",{"2":{"687":1,"800":1,"802":1,"831":1,"855":1,"887":1,"919":8,"954":8,"988":1,"1022":1,"1056":1,"1090":8,"1124":8,"1158":8,"1294":2,"1675":1,"1832":1,"2201":1,"2258":1,"2259":1,"2260":1,"2386":1,"2388":1,"2391":1,"2424":1,"2478":2,"2480":2,"2482":2,"2484":2,"2486":2,"2488":1,"2683":1,"2684":2}}],["vcl65",{"2":{"222":1}}],["vcl",{"2":{"222":1}}],["vk",{"2":{"188":1,"191":1,"2203":1}}],["vulnerability",{"2":{"312":1}}],["vuhopkep",{"2":{"160":1}}],["vusb",{"2":{"50":1,"134":1,"160":1,"249":1,"266":1,"562":1,"1316":1,"2927":1}}],["vn66",{"2":{"154":2}}],["vpath",{"2":{"114":2,"191":1,"722":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1616":1}}],["vss",{"2":{"1310":1}}],["vscode",{"2":{"199":1,"308":1,"511":1,"2593":1,"2671":1,"2676":3}}],["vs",{"0":{"625":2,"2667":1,"2670":1,"2674":1,"2675":1},"1":{"2668":1,"2669":1,"2670":1,"2671":2,"2672":1,"2673":1,"2675":1},"2":{"114":1,"199":1,"514":1,"1410":5,"2254":1,"2638":1,"2666":3,"2669":1,"2670":1,"2672":1,"2673":4,"2675":4,"2676":5,"2689":1,"2899":1,"2920":1}}],["vowel",{"2":{"2294":4}}],["vol",{"2":{"1770":4,"2503":2,"2542":2}}],["vold",{"2":{"220":1,"587":2,"1661":1,"1662":1,"1770":1,"2159":1,"2503":1,"2542":1}}],["volunteers",{"2":{"2559":2}}],["volunteer",{"2":{"2559":1}}],["volu",{"2":{"220":1,"587":2,"1661":1,"1662":1,"1770":1,"2159":1,"2503":1,"2542":1}}],["volume",{"0":{"1482":1},"2":{"191":1,"687":1,"716":1,"1482":2,"1662":2,"1761":1,"1770":3,"2159":1,"2503":7,"2541":4,"2542":2,"2882":1}}],["voltages",{"2":{"687":1}}],["voltage",{"2":{"199":1,"308":1,"695":1,"741":8,"746":1,"1293":2,"1409":1,"1678":1,"1679":1,"1691":1,"1732":2,"2271":1,"2272":1,"2496":1,"2851":5}}],["volatile",{"2":{"114":1,"308":1,"2290":1}}],["volcano660",{"2":{"102":2,"114":1,"222":1}}],["voilà",{"2":{"1490":1}}],["voice",{"2":{"231":1,"1483":3,"1489":2,"1679":1,"2505":2}}],["voices",{"0":{"1483":1},"2":{"112":1,"559":2,"1483":4,"1489":2,"2505":2,"2849":2}}],["void",{"0":{"645":2,"703":2,"704":1,"706":1,"708":2,"709":1,"730":1,"732":1,"734":1,"736":1,"769":2,"806":1,"808":1,"810":1,"812":1,"814":1,"816":1,"818":1,"820":1,"822":1,"824":1,"835":2,"836":1,"838":1,"840":1,"842":1,"844":1,"846":1,"848":1,"850":2,"851":2,"864":1,"866":1,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"880":1,"882":1,"894":1,"896":1,"898":1,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"912":1,"914":1,"929":1,"931":1,"933":1,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"947":1,"949":1,"963":1,"965":1,"967":1,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"981":1,"983":1,"997":1,"999":1,"1001":1,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1017":1,"1031":1,"1033":1,"1035":1,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1051":1,"1065":1,"1067":1,"1069":1,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1083":1,"1085":1,"1099":1,"1101":1,"1103":1,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1117":1,"1119":1,"1133":1,"1135":1,"1137":1,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1151":1,"1153":1,"1167":1,"1169":1,"1171":1,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1185":1,"1187":1,"1220":1,"1222":1,"1224":1,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1240":1,"1247":2,"1254":1,"1262":2,"1268":1,"1270":1,"1272":1,"1274":1,"1276":1,"1278":1,"1302":2,"1303":1,"1305":1,"1307":2,"1554":2,"1555":2,"1556":2,"1557":2,"1558":2,"1559":2,"1560":1,"1562":1,"1564":1,"1566":2,"1567":2,"1568":2,"1569":1,"1576":1,"1579":1,"1581":1,"1640":2,"1641":2,"1642":2,"1643":2,"1644":2,"1645":2,"1646":2,"1647":1,"1698":1,"1700":2,"1701":2,"1702":1,"1704":2,"1705":1,"1707":1,"1709":1,"1711":1,"1713":1,"1715":1,"1717":1,"1719":1,"1724":1,"1726":1,"1728":1,"1730":1,"1744":2,"1745":1,"1747":1,"1752":1,"1754":1,"1794":2,"1795":2,"1799":2,"1800":2,"1801":1,"1805":1,"1806":1,"1851":2,"1852":2,"1853":2,"1854":2,"1855":2,"1856":2,"1857":1,"1859":1,"1861":1,"1863":1,"1865":1,"1867":2,"1868":2,"1869":2,"1870":2,"1871":1,"1873":2,"1874":2,"1875":2,"1876":2,"1877":1,"1879":2,"1880":2,"1881":2,"1882":2,"1883":1,"1885":1,"1887":1,"1889":1,"1891":1,"1893":2,"1894":2,"1895":2,"1896":2,"1897":1,"1899":2,"1900":1,"1902":1,"1904":1,"2013":2,"2014":1,"2016":1,"2018":1,"2020":1,"2025":2,"2026":1,"2028":1,"2054":1,"2056":1,"2077":2,"2078":2,"2079":2,"2080":2,"2081":2,"2082":2,"2083":1,"2085":1,"2087":1,"2089":1,"2091":1,"2093":2,"2094":2,"2095":2,"2096":2,"2097":1,"2099":2,"2100":2,"2101":2,"2102":2,"2103":1,"2105":2,"2106":2,"2107":2,"2108":2,"2109":1,"2111":2,"2112":2,"2113":2,"2114":2,"2115":1,"2117":2,"2118":2,"2119":2,"2120":2,"2121":1,"2123":1,"2125":1,"2127":1,"2129":1,"2131":2,"2132":2,"2133":2,"2134":2,"2135":1,"2137":1,"2139":1,"2141":1,"2143":2,"2144":1,"2146":1,"2148":1,"2227":1,"2229":1,"2231":1,"2233":1,"2235":1,"2237":1,"2239":1,"2241":1,"2243":1,"2245":2,"2327":1,"2329":1,"2331":2,"2332":2,"2333":1,"2335":1,"2337":2,"2338":2,"2339":2,"2340":1,"2342":1,"2350":1,"2352":2,"2353":1,"2355":1,"2360":1,"2362":2,"2363":2,"2364":2},"1":{"705":1,"707":1,"710":1,"731":1,"733":1,"735":1,"737":1,"807":1,"809":1,"811":1,"813":1,"815":1,"817":1,"819":1,"821":1,"823":1,"825":1,"837":1,"839":1,"841":1,"843":1,"845":1,"847":1,"849":1,"865":1,"867":1,"869":1,"871":1,"873":1,"875":1,"877":1,"879":1,"881":1,"883":1,"895":1,"897":1,"899":1,"901":1,"903":1,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"930":1,"932":1,"934":1,"936":1,"938":1,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"964":1,"966":1,"968":1,"970":1,"972":1,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"998":1,"1000":1,"1002":1,"1004":1,"1006":1,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":1,"1036":1,"1038":1,"1040":1,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1066":1,"1068":1,"1070":1,"1072":1,"1074":1,"1076":1,"1078":1,"1080":1,"1082":1,"1084":1,"1086":1,"1100":1,"1102":1,"1104":1,"1106":1,"1108":1,"1110":1,"1112":1,"1114":1,"1116":1,"1118":1,"1120":1,"1134":1,"1136":1,"1138":1,"1140":1,"1142":1,"1144":1,"1146":1,"1148":1,"1150":1,"1152":1,"1154":1,"1168":1,"1170":1,"1172":1,"1174":1,"1176":1,"1178":1,"1180":1,"1182":1,"1184":1,"1186":1,"1188":1,"1221":1,"1223":1,"1225":1,"1227":1,"1229":1,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1255":1,"1269":1,"1271":1,"1273":1,"1275":1,"1277":1,"1279":1,"1304":1,"1306":1,"1561":1,"1563":1,"1565":1,"1570":1,"1577":1,"1648":1,"1699":1,"1703":1,"1706":1,"1708":1,"1710":1,"1712":1,"1714":1,"1716":1,"1718":1,"1720":1,"1725":1,"1727":1,"1729":1,"1731":1,"1746":1,"1748":1,"1753":1,"1755":1,"1858":1,"1860":1,"1862":1,"1864":1,"1866":1,"1872":1,"1878":1,"1884":1,"1886":1,"1888":1,"1890":1,"1892":1,"1898":1,"1901":1,"1903":1,"1905":1,"2015":1,"2017":1,"2019":1,"2021":1,"2027":1,"2029":1,"2055":1,"2057":1,"2084":1,"2086":1,"2088":1,"2090":1,"2092":1,"2098":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2128":1,"2130":1,"2136":1,"2140":1,"2142":1,"2145":1,"2147":1,"2149":1,"2228":1,"2230":1,"2232":1,"2234":1,"2236":1,"2238":1,"2240":1,"2242":1,"2244":1,"2328":1,"2330":1,"2334":1,"2336":1,"2341":1,"2343":1,"2351":1,"2354":1,"2356":1,"2361":1,"2365":2},"2":{"31":1,"34":1,"46":2,"90":2,"105":3,"125":3,"185":3,"196":1,"210":1,"249":3,"348":1,"510":1,"622":1,"623":13,"633":1,"634":4,"636":4,"637":5,"639":1,"640":4,"643":4,"644":4,"645":14,"647":3,"648":8,"654":1,"742":2,"760":1,"769":1,"1319":1,"1407":2,"1408":8,"1441":1,"1456":2,"1474":1,"1481":2,"1511":2,"1545":4,"1585":1,"1599":1,"1612":1,"1695":1,"1696":2,"1773":2,"1775":2,"1785":3,"1791":4,"1844":1,"1849":1,"1937":1,"1947":1,"1948":3,"1949":2,"1950":1,"1956":35,"1976":2,"1977":3,"1981":6,"1990":1,"1994":2,"2001":16,"2002":5,"2008":1,"2039":13,"2066":1,"2072":1,"2075":1,"2170":2,"2182":2,"2184":3,"2217":31,"2270":10,"2277":2,"2278":2,"2279":2,"2280":2,"2283":33,"2307":1,"2308":6,"2309":5,"2310":8,"2311":8,"2312":8,"2373":1,"2449":4,"2594":1,"2645":2,"2678":1,"2679":1,"2680":1,"2749":5,"2750":22,"2754":2,"2755":1,"2933":12,"2942":1}}],["v1",{"0":{"362":1,"363":1,"364":1,"365":1},"2":{"86":1,"102":4,"114":1,"154":7,"160":2,"168":2,"197":10,"199":1,"210":1,"218":1,"226":1,"236":2,"253":2,"277":2,"300":1,"311":1,"370":2,"371":1,"373":4,"686":1,"1392":3,"2676":1,"2760":7,"2761":7,"2762":3,"2767":5,"2768":7,"2769":3,"2770":7,"2771":3,"2772":6,"2773":3}}],["v19",{"2":{"49":1}}],["v2j37s7",{"2":{"2501":1}}],["v2",{"2":{"56":2,"86":2,"114":1,"122":1,"154":2,"160":2,"168":2,"191":1,"197":4,"199":2,"205":4,"210":2,"218":2,"222":2,"236":2,"249":3,"277":1,"308":1,"311":24,"328":1,"383":1,"1392":2,"2498":1}}],["v2017",{"2":{"181":2}}],["v20",{"2":{"49":1}}],["v32a",{"2":{"197":2}}],["v3x",{"2":{"191":1}}],["v3",{"0":{"56":1},"2":{"56":2,"114":1,"160":2,"191":1,"222":1,"277":1,"2600":3}}],["vtor",{"2":{"50":1}}],["vault",{"2":{"333":1}}],["vault35",{"2":{"249":1}}],["vast",{"2":{"166":1,"1760":1}}],["vagrant",{"2":{"113":1,"114":2,"222":1}}],["vaguettelite",{"2":{"86":2}}],["vanilla",{"2":{"2720":1}}],["vaneelaex",{"2":{"86":2}}],["vaneela",{"2":{"86":2}}],["vanana",{"2":{"86":4}}],["varying",{"2":{"2063":3,"2285":1}}],["vary",{"2":{"1409":1,"2499":1,"2903":1}}],["var",{"2":{"517":3,"1324":2}}],["var>=",{"2":{"427":1,"428":2}}],["varaible",{"2":{"176":1}}],["variety",{"2":{"1962":1,"2705":1}}],["varies",{"2":{"1676":1,"1961":1,"1968":1,"1976":2,"1978":1,"2929":1}}],["variants",{"2":{"156":1,"222":1,"1283":1,"1284":1,"1285":1,"2323":1,"2379":1,"2492":2,"2560":1,"2562":1,"2832":1}}],["variant",{"2":{"114":1,"142":1,"210":3,"308":2,"387":1,"1937":2,"1938":1,"2035":1,"2379":1,"2645":1,"2721":1,"2749":1}}],["variations",{"2":{"236":1,"243":1,"331":1,"1285":1}}],["variation",{"0":{"55":1},"2":{"176":1,"1824":1}}],["variable",{"2":{"50":1,"65":1,"133":1,"134":3,"236":1,"285":1,"332":1,"424":1,"453":1,"467":1,"487":1,"494":1,"517":1,"530":1,"557":1,"667":2,"1378":6,"1410":1,"1428":2,"1458":1,"1515":2,"1533":1,"1659":1,"1987":1,"2001":1,"2002":1,"2050":2,"2182":1,"2288":1,"2303":1,"2401":1,"2410":1,"2411":2,"2427":1,"2506":2,"2621":1,"2676":2,"2679":1,"2762":1,"2763":1,"2764":1,"2769":1,"2771":1,"2773":1,"2905":1,"2942":11}}],["variables",{"0":{"2942":1},"2":{"49":2,"222":2,"302":1,"468":1,"553":1,"558":1,"668":1,"1378":1,"1407":1,"1422":1,"1432":1,"1496":1,"1987":1,"2305":1,"2411":2,"2678":1,"2679":1,"2684":1,"2942":5}}],["various",{"2":{"50":2,"114":1,"145":1,"160":3,"191":2,"222":1,"277":2,"303":1,"387":1,"398":1,"527":1,"553":2,"622":1,"1318":1,"1320":1,"1409":1,"1410":1,"1416":1,"1491":1,"1496":1,"1680":1,"1776":1,"2178":1,"2207":1,"2371":1,"2738":1,"2801":1,"2820":1,"2834":1,"2839":1,"2933":1}}],["vars",{"2":{"49":2,"2410":1}}],["valu",{"2":{"587":2,"1661":1,"2062":1,"2174":1,"2525":1,"2526":1}}],["valued",{"2":{"1407":1}}],["valueerror",{"2":{"522":2}}],["value>",{"2":{"427":1,"428":2,"473":1,"495":2}}],["values",{"0":{"474":1,"475":1,"480":1,"494":1,"495":1,"496":1,"531":1,"1511":1},"1":{"476":1,"477":1,"478":1,"479":1},"2":{"65":1,"70":1,"83":1,"182":1,"186":2,"198":2,"199":1,"231":1,"236":1,"249":1,"431":1,"474":1,"475":1,"489":2,"495":1,"496":1,"531":2,"559":1,"663":1,"666":1,"669":1,"670":1,"671":1,"687":1,"708":1,"716":1,"726":1,"736":1,"740":1,"746":1,"747":1,"748":1,"765":1,"822":1,"824":1,"850":1,"851":1,"856":1,"857":4,"860":1,"880":1,"882":1,"890":1,"912":1,"914":1,"921":1,"922":4,"925":1,"947":1,"949":1,"955":1,"956":4,"959":1,"981":1,"983":1,"989":1,"990":4,"993":1,"1015":1,"1017":1,"1023":1,"1024":4,"1027":1,"1049":1,"1051":1,"1057":1,"1058":4,"1061":1,"1083":1,"1085":1,"1092":4,"1095":1,"1117":1,"1119":1,"1126":4,"1129":1,"1151":1,"1153":1,"1159":1,"1160":4,"1163":1,"1185":1,"1187":1,"1194":1,"1195":1,"1198":1,"1216":1,"1238":1,"1240":1,"1269":1,"1286":1,"1307":1,"1319":1,"1406":1,"1407":4,"1410":1,"1482":1,"1487":2,"1511":2,"1550":1,"1552":1,"1584":1,"1735":1,"1736":4,"1741":1,"1782":2,"1840":2,"1917":2,"1920":2,"1933":2,"1937":1,"1951":1,"1954":2,"1955":1,"1956":1,"1964":1,"1968":2,"1969":1,"1972":1,"1976":2,"1983":1,"1987":7,"2032":1,"2060":2,"2063":1,"2178":2,"2204":1,"2268":1,"2283":1,"2293":1,"2296":2,"2313":1,"2315":1,"2372":3,"2411":1,"2459":1,"2490":1,"2496":1,"2678":1,"2696":1,"2697":1,"2698":1,"2699":1,"2702":1,"2707":1,"2710":2,"2721":3,"2747":1,"2750":1,"2758":1,"2760":1,"2761":1,"2766":1,"2770":2,"2781":1,"2793":1,"2921":2}}],["value",{"0":{"669":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"814":2,"816":2,"820":1,"842":2,"844":2,"848":1,"872":2,"874":2,"878":1,"904":2,"906":2,"910":1,"939":2,"941":2,"945":1,"973":2,"975":2,"979":1,"1007":2,"1009":2,"1013":1,"1041":2,"1043":2,"1047":1,"1075":2,"1077":2,"1081":1,"1109":2,"1111":2,"1115":1,"1143":2,"1145":2,"1149":1,"1177":2,"1179":2,"1183":1,"1230":2,"1232":2,"1236":1,"1250":1,"1253":1,"1255":1,"1258":1,"1261":1,"1273":1,"1279":1,"1497":1,"1563":1,"1565":1,"1570":1,"1577":1,"1718":1,"1723":1,"1751":1,"1752":1,"1754":1,"1798":1,"1804":1,"1809":1,"1812":1,"1815":1,"1818":1,"1821":1,"1858":1,"1859":1,"1861":1,"1872":1,"1878":1,"1888":1,"1898":1,"1901":1,"1903":1,"1905":1,"1908":1,"1911":1,"2024":1,"2027":1,"2084":1,"2098":1,"2104":1,"2110":1,"2116":1,"2126":1,"2136":1,"2142":1,"2145":1,"2147":1,"2149":1,"2152":1,"2155":1,"2328":1,"2346":1,"2349":1,"2354":1,"2356":1,"2359":1,"2361":1},"1":{"815":2,"817":2,"821":1,"843":2,"845":2,"849":1,"873":2,"875":2,"879":1,"905":2,"907":2,"911":1,"940":2,"942":2,"946":1,"974":2,"976":2,"980":1,"1008":2,"1010":2,"1014":1,"1042":2,"1044":2,"1048":1,"1076":2,"1078":2,"1082":1,"1110":2,"1112":2,"1116":1,"1144":2,"1146":2,"1150":1,"1178":2,"1180":2,"1184":1,"1231":2,"1233":2,"1237":1,"1753":1,"1755":1,"1860":1,"1862":1},"2":{"25":1,"45":2,"49":1,"63":1,"70":13,"90":1,"176":1,"191":1,"195":1,"210":1,"236":1,"317":1,"372":1,"406":5,"431":19,"470":1,"472":2,"475":1,"480":1,"482":1,"483":1,"487":3,"494":1,"510":1,"559":1,"562":2,"563":3,"567":1,"586":3,"587":1,"645":1,"654":1,"655":4,"658":2,"665":1,"666":1,"667":5,"669":2,"670":1,"685":1,"695":4,"696":4,"698":1,"705":3,"707":3,"716":7,"717":2,"723":2,"733":3,"735":3,"742":1,"745":2,"746":2,"747":1,"748":1,"751":1,"752":1,"756":1,"763":1,"800":1,"808":1,"809":1,"811":3,"813":3,"815":2,"817":2,"821":1,"836":1,"837":1,"839":3,"841":3,"843":2,"845":2,"849":1,"854":3,"855":1,"858":1,"866":1,"867":1,"869":3,"871":3,"873":2,"875":2,"877":3,"879":2,"887":1,"896":1,"897":1,"901":3,"903":3,"905":2,"907":2,"911":1,"918":3,"919":1,"920":1,"923":1,"931":1,"932":1,"936":3,"938":3,"940":2,"942":2,"946":1,"953":3,"954":1,"957":1,"965":1,"966":1,"970":3,"972":3,"974":2,"976":2,"980":1,"987":3,"988":1,"991":1,"999":1,"1000":1,"1004":3,"1006":3,"1008":2,"1010":2,"1014":1,"1021":4,"1022":1,"1025":1,"1033":1,"1034":1,"1038":3,"1040":3,"1042":2,"1044":2,"1048":1,"1055":4,"1056":1,"1059":1,"1067":1,"1068":1,"1072":3,"1074":3,"1076":2,"1078":2,"1080":3,"1082":2,"1089":4,"1090":1,"1091":1,"1093":1,"1101":1,"1102":1,"1106":3,"1108":3,"1110":2,"1112":2,"1114":3,"1116":2,"1123":4,"1124":1,"1125":1,"1127":1,"1135":1,"1136":1,"1140":3,"1142":3,"1144":2,"1146":2,"1148":3,"1150":2,"1157":4,"1158":1,"1161":1,"1169":1,"1170":1,"1174":3,"1176":3,"1178":2,"1180":2,"1182":3,"1184":2,"1205":1,"1214":1,"1222":1,"1223":1,"1227":3,"1229":3,"1231":2,"1233":2,"1237":1,"1289":1,"1304":3,"1306":3,"1407":4,"1408":2,"1409":1,"1446":1,"1474":1,"1487":1,"1492":1,"1497":6,"1511":5,"1512":5,"1515":1,"1516":3,"1517":1,"1545":1,"1635":3,"1648":2,"1656":1,"1661":1,"1675":1,"1732":1,"1735":3,"1736":3,"1743":4,"1749":1,"1752":1,"1753":3,"1755":1,"1763":1,"1775":1,"1776":1,"1780":1,"1782":1,"1787":1,"1840":1,"1841":1,"1843":8,"1844":2,"1846":3,"1849":5,"1860":1,"1862":1,"1878":1,"1890":1,"1892":1,"1920":1,"1929":1,"1930":1,"1933":3,"1950":1,"1954":1,"1956":2,"1962":1,"1969":4,"1978":1,"1979":4,"1990":2,"2001":1,"2002":1,"2060":1,"2061":1,"2062":2,"2063":23,"2064":1,"2069":7,"2086":3,"2088":3,"2104":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2128":1,"2130":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2160":1,"2173":2,"2174":6,"2175":4,"2191":9,"2194":10,"2195":2,"2196":1,"2217":3,"2237":1,"2238":1,"2239":1,"2240":1,"2241":1,"2242":1,"2244":1,"2265":1,"2268":1,"2269":1,"2270":1,"2280":1,"2283":1,"2290":1,"2297":1,"2310":2,"2311":1,"2313":1,"2349":1,"2372":4,"2373":1,"2375":1,"2447":1,"2448":1,"2454":1,"2459":3,"2506":1,"2525":6,"2526":2,"2678":1,"2702":1,"2721":1,"2750":3,"2760":1,"2768":1,"2771":1,"2787":1,"2844":1,"2850":1,"2864":3,"2870":6,"2871":7,"2873":1,"2895":1,"2905":9,"2914":2,"2919":1,"2921":1,"2922":1}}],["vald",{"2":{"587":2,"1661":1,"2062":1,"2174":1,"2525":1,"2526":1}}],["valhalla",{"2":{"222":1}}],["valor",{"0":{"58":1},"2":{"58":3,"114":1,"222":1}}],["val",{"0":{"1873":2,"1874":1,"1875":1,"1876":1,"1877":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2194":1},"1":{"1878":1,"2116":1},"2":{"49":1,"145":1,"183":4,"191":1,"210":2,"563":1,"1408":3,"1538":1,"1737":8,"1843":3,"1846":2,"2063":9,"2069":2,"2074":2,"2175":4,"2186":2,"2194":4,"2197":2,"2447":4,"2750":11,"2864":2,"2870":1,"2871":2,"2887":3}}],["validating",{"2":{"2608":1}}],["validation",{"2":{"114":1,"199":2,"210":2,"236":1,"266":1,"273":1,"308":1,"362":1,"1404":1}}],["validated",{"2":{"720":1,"2550":1}}],["validate",{"2":{"76":1,"199":2,"222":1,"333":1,"405":1}}],["valid",{"2":{"49":1,"160":1,"199":2,"241":1,"253":1,"266":1,"270":1,"281":1,"431":1,"454":1,"655":1,"740":1,"751":1,"856":1,"857":2,"921":1,"922":2,"955":1,"956":2,"989":1,"990":2,"1023":1,"1024":2,"1057":1,"1058":2,"1092":2,"1126":2,"1159":1,"1160":2,"1286":1,"1317":1,"1386":1,"1404":1,"1526":1,"1541":1,"1724":1,"1965":1,"2032":1,"2178":2,"2290":1,"2442":1,"2446":1,"2470":1,"2502":1,"2551":1,"2552":1,"2719":4,"2721":4,"2748":2,"2770":1}}],["violates",{"2":{"2734":1}}],["violating",{"2":{"2562":2}}],["violation",{"2":{"2560":2,"2563":1,"2740":1}}],["violations",{"0":{"2559":1},"1":{"2560":1,"2561":1,"2562":1,"2563":1,"2564":1},"2":{"2559":1,"2560":1,"2563":1,"2564":2,"2727":1}}],["violin",{"2":{"1479":2,"1480":3,"1484":1}}],["virster",{"2":{"2291":1}}],["virtually",{"2":{"2689":1}}],["virtual",{"0":{"1737":1},"2":{"1359":1,"1635":1,"1732":1,"1736":3,"1737":3,"1743":1,"2287":2,"2291":1,"2379":1,"2746":1}}],["virtualenv",{"2":{"424":1}}],["virtser",{"2":{"573":1}}],["vibrate",{"2":{"1679":1,"1681":1}}],["vibrator",{"2":{"1679":1}}],["vibrations",{"2":{"1678":1}}],["vibration",{"2":{"1678":1}}],["vim",{"2":{"1587":1,"1783":1,"2159":2}}],["vik",{"2":{"1395":1}}],["viktus",{"2":{"134":1,"144":3,"145":1,"222":3}}],["victim",{"2":{"619":1}}],["vice",{"2":{"194":1,"1416":1,"1655":1,"2160":2}}],["viewport",{"2":{"2749":2,"2750":7}}],["viewpoint",{"2":{"2573":1}}],["viewing",{"2":{"2676":1}}],["viewed",{"2":{"2516":1}}],["views",{"2":{"361":1,"2262":1}}],["view",{"0":{"2467":1},"2":{"273":1,"347":1,"577":1,"578":1,"684":1,"685":1,"2467":1,"2557":1,"2576":1,"2622":1,"2652":1,"2671":1,"2676":2,"2735":1,"2812":1}}],["viendi",{"2":{"222":1}}],["viper",{"2":{"222":1}}],["visit",{"2":{"428":1,"2410":1,"2599":1,"2602":1,"2676":1}}],["visible",{"2":{"198":1,"373":1,"1287":1,"1693":2,"2738":1}}],["vision",{"2":{"114":1,"618":1}}],["visualize",{"2":{"2556":1}}],["visualizer",{"2":{"133":1,"134":1}}],["visual",{"0":{"2666":1,"2676":1},"2":{"132":1,"2666":1,"2669":1,"2676":1,"2777":2}}],["vitoni",{"2":{"160":1}}],["vitamins",{"2":{"114":1}}],["viterbi",{"2":{"45":1}}],["vintage",{"2":{"1351":1}}],["vinta",{"2":{"102":2,"205":2}}],["videos",{"2":{"2934":2}}],["video",{"2":{"2176":1,"2181":1,"2429":1,"2562":1,"2582":1,"2934":1,"2937":1}}],["videogames",{"2":{"1420":1}}],["vid>",{"2":{"432":1}}],["vid",{"0":{"1316":1},"1":{"1317":1},"2":{"70":1,"111":1,"169":1,"184":1,"249":2,"266":1,"317":2,"432":1,"559":1,"685":1,"686":1,"1316":1,"1353":1,"2562":1,"2710":3,"2721":1,"2875":1}}],["vial",{"2":{"2721":2}}],["via2json",{"0":{"445":1},"2":{"294":1,"445":2}}],["via",{"0":{"35":1,"265":2,"275":2,"312":1},"1":{"36":1},"2":{"35":1,"92":1,"114":7,"134":6,"139":1,"145":1,"160":2,"176":6,"191":2,"194":1,"199":5,"206":1,"210":5,"222":7,"234":1,"249":3,"265":8,"266":4,"268":4,"275":5,"277":8,"294":1,"308":1,"312":6,"317":1,"422":1,"445":3,"663":1,"678":1,"718":1,"745":1,"746":1,"747":1,"756":1,"763":1,"1192":1,"1195":1,"1198":1,"1345":3,"1390":2,"1406":1,"1410":1,"1440":1,"1584":1,"2045":1,"2204":1,"2293":1,"2368":2,"2381":1,"2384":1,"2386":2,"2387":2,"2388":2,"2391":2,"2393":1,"2395":1,"2397":1,"2411":1,"2425":1,"2459":1,"2560":16,"2561":1,"2562":1,"2563":1,"2688":1,"2720":3,"2721":7,"2729":1,"2933":1}}],["vect",{"2":{"2034":2,"2036":2}}],["vector",{"2":{"191":1,"222":1}}],["velu",{"2":{"1919":1,"2520":1}}],["veld",{"2":{"1919":1,"2520":1}}],["velocikey",{"0":{"2202":1},"1":{"2203":1,"2204":1},"2":{"236":1,"2202":1,"2203":5,"2204":2,"2933":1}}],["velocity",{"2":{"63":1,"1913":1,"1919":26,"1920":1,"1928":1,"2520":26}}],["vega",{"2":{"222":1}}],["ventilation",{"2":{"2414":1}}],["venus",{"2":{"114":1,"322":2,"328":1}}],["venv",{"2":{"114":1}}],["vendors",{"0":{"2560":1},"2":{"2559":2,"2560":3,"2561":6,"2562":2,"2563":2,"2564":2,"2721":4,"2734":1}}],["vendor",{"0":{"744":1,"2726":1,"2728":1,"2732":1},"1":{"745":1,"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1},"2":{"37":1,"43":1,"70":1,"86":1,"145":2,"160":13,"169":1,"184":1,"191":1,"199":1,"222":1,"236":1,"266":1,"277":1,"559":1,"686":1,"740":1,"743":1,"1195":2,"1198":2,"1286":1,"1289":1,"1316":1,"1329":1,"1390":2,"2032":1,"2037":1,"2050":2,"2052":2,"2407":1,"2492":1,"2559":3,"2560":2,"2561":4,"2562":1,"2563":5,"2564":1,"2720":3,"2721":4,"2726":1,"2728":2,"2730":1,"2732":2,"2738":1,"2740":1,"2743":1,"2851":1,"2857":2,"2868":1,"2873":1,"2875":1,"2876":2}}],["ve",{"2":{"83":1,"89":1,"105":2,"112":1,"143":1,"172":1,"243":1,"273":1,"331":1,"370":1,"519":1,"607":1,"663":1,"746":1,"765":1,"1245":1,"1266":1,"1407":1,"1418":1,"1425":1,"1440":1,"1442":4,"1466":1,"1467":1,"2041":1,"2398":1,"2423":1,"2427":1,"2440":2,"2574":1,"2589":1,"2604":1,"2605":1,"2613":1,"2625":1,"2629":1,"2633":1,"2673":1,"2676":1,"2723":1,"2750":2,"2777":1,"2782":1,"2883":1,"2888":1}}],["vertically",{"0":{"2781":1},"2":{"1985":1,"2421":1,"2778":1,"2781":2}}],["vertical",{"2":{"1933":1,"1962":1,"1970":1,"1971":1,"1979":1,"1983":1,"2750":1,"2781":1,"2862":1,"2864":1,"2871":1}}],["vertex",{"2":{"222":1,"2560":1}}],["verbose=true",{"2":{"2410":1}}],["verbose",{"2":{"597":1,"2410":5,"2748":2}}],["verbosity",{"2":{"222":1}}],["verification",{"2":{"2483":1,"2501":1,"2562":1}}],["verified",{"2":{"541":1,"1945":2,"2495":1,"2501":1,"2722":1}}],["verifying",{"2":{"2495":2}}],["verify",{"2":{"199":1,"685":1,"2632":1,"2656":1,"2721":1,"2741":1,"2942":2}}],["ver20",{"2":{"414":5}}],["vero",{"2":{"222":1}}],["versed",{"2":{"609":1}}],["versatile",{"2":{"2751":1}}],["versa",{"2":{"194":1,"1416":1,"1655":1,"2160":2}}],["versioned",{"2":{"182":1}}],["versioning",{"2":{"182":1,"2809":1}}],["version=yes",{"2":{"65":1}}],["versions",{"2":{"22":1,"35":1,"49":2,"182":2,"189":1,"191":1,"308":1,"328":1,"373":3,"413":1,"594":1,"1313":1,"1375":1,"1392":1,"1407":1,"1464":1,"1657":1,"1660":1,"1759":1,"2176":1,"2323":1,"2324":1,"2403":1,"2410":1,"2476":1,"2490":1,"2560":1}}],["version",{"2":{"10":1,"36":2,"65":1,"69":1,"70":1,"114":2,"134":1,"145":1,"160":3,"169":1,"173":1,"176":1,"182":1,"184":1,"191":1,"199":2,"222":1,"236":1,"279":1,"285":1,"298":1,"328":1,"333":3,"373":1,"380":3,"386":1,"391":1,"396":1,"403":3,"407":26,"413":1,"414":1,"416":2,"559":1,"586":1,"594":1,"1211":1,"1387":1,"1402":1,"1461":2,"1464":4,"1466":1,"1492":1,"1493":1,"1512":1,"1586":1,"1618":1,"1619":2,"1627":4,"1632":1,"2033":1,"2036":1,"2390":1,"2425":2,"2454":2,"2458":1,"2501":1,"2553":1,"2627":1,"2651":1,"2676":1,"2678":1,"2679":1,"2680":1,"2710":1,"2721":1,"2725":2,"2760":1,"2768":1,"2875":2,"2922":1}}],["very",{"2":{"182":1,"362":1,"381":1,"540":1,"614":1,"626":1,"631":1,"632":1,"638":1,"678":1,"716":2,"1291":1,"1316":1,"1319":1,"1406":1,"1456":1,"1486":1,"1497":1,"1678":1,"1679":1,"1781":1,"1789":2,"1932":1,"1937":1,"1950":1,"1977":1,"1986":1,"2258":1,"2274":1,"2280":1,"2399":1,"2418":2,"2421":2,"2452":1,"2467":1,"2546":1,"2560":1,"2573":1,"2594":1,"2605":1,"2651":1,"2677":1,"2828":1,"2837":1,"2890":1,"2926":1,"2937":1}}],["ver",{"2":{"70":2,"111":1,"169":1,"184":1,"191":1,"559":1}}],["ver19",{"2":{"10":1}}],["v",{"0":{"21":1,"235":1,"551":1,"1859":1,"1861":1,"2137":1,"2139":1},"1":{"552":1,"1860":1,"1862":1,"2140":1},"2":{"21":2,"49":2,"50":3,"130":2,"134":2,"138":1,"154":2,"176":1,"236":4,"249":1,"266":1,"348":1,"369":1,"380":1,"490":1,"544":1,"587":2,"802":1,"805":1,"831":1,"834":1,"860":1,"863":1,"890":1,"893":1,"925":1,"928":1,"959":1,"962":1,"993":1,"996":1,"1027":1,"1030":1,"1061":1,"1064":1,"1095":1,"1098":1,"1129":1,"1132":1,"1163":1,"1166":1,"1216":1,"1219":1,"1619":1,"1678":1,"1679":3,"1849":1,"1860":1,"1862":1,"1914":1,"1936":1,"1983":2,"1985":2,"1986":1,"1987":9,"1989":1,"1990":1,"2007":1,"2040":1,"2041":1,"2043":1,"2074":2,"2138":1,"2140":1,"2191":8,"2194":4,"2287":1,"2310":1,"2324":1,"2381":1,"2382":1,"2403":2,"2410":3,"2494":1,"2503":3,"2535":3,"2550":1,"2556":1,"2569":4,"2570":2,"2630":3,"2632":2,"2710":1,"2748":2,"2771":1,"2870":1,"2871":1,"2918":5,"2920":1}}],["6=128",{"2":{"1956":1}}],["69",{"2":{"1680":1}}],["61",{"2":{"1680":1,"2792":1}}],["67",{"2":{"1349":1,"1680":1}}],["6739",{"2":{"74":1}}],["63",{"2":{"427":1,"1159":1,"1680":1,"1918":1,"1969":1,"2180":1,"2792":2}}],["6pad",{"2":{"266":1}}],["6kro",{"2":{"236":1,"285":1,"1353":1,"1363":2,"2832":1}}],["68",{"2":{"210":1,"222":1,"1680":1,"1962":1}}],["6x",{"2":{"1678":1,"1679":1}}],["6x13",{"2":{"249":1}}],["6x7",{"2":{"210":2}}],["6x6",{"2":{"205":1,"210":1}}],["6ball",{"2":{"154":2}}],["66",{"2":{"122":2,"160":1,"222":1,"369":1,"427":4,"432":2,"452":1,"453":1,"471":3,"472":2,"481":1,"482":1,"483":2,"1087":1,"1680":1,"2059":1,"2441":2,"2442":1,"2443":6,"2553":1,"2576":3,"2577":1,"2622":7,"2844":2,"2845":1}}],["64x48",{"2":{"1954":2}}],["64x32",{"2":{"1954":2}}],["64x128",{"2":{"1945":2,"1954":3}}],["64kb",{"2":{"752":2}}],["64kb+",{"2":{"543":1}}],["64u",{"2":{"716":2}}],["64",{"2":{"143":1,"747":1,"748":1,"756":1,"858":1,"916":1,"1211":1,"1297":1,"1521":1,"1532":1,"1680":1,"1737":1,"1840":5,"1918":1,"1919":1,"1955":1,"2059":2,"2060":5,"2180":1,"2398":1,"2438":1,"2442":1,"2483":1,"2499":2,"2501":1,"2520":1,"2615":2,"2864":1,"2871":1}}],["6490",{"2":{"114":1}}],["6480",{"2":{"25":1}}],["6",{"0":{"81":1,"599":1,"2312":1},"2":{"23":1,"81":1,"93":1,"114":1,"131":1,"134":1,"176":1,"188":1,"191":1,"222":1,"369":1,"549":1,"559":1,"563":2,"568":2,"587":2,"690":1,"692":4,"696":2,"698":1,"714":1,"715":1,"769":1,"826":1,"1023":1,"1057":1,"1486":1,"1487":1,"1521":1,"1538":1,"1603":2,"1619":2,"1649":3,"1678":1,"1679":1,"1680":1,"1696":1,"1732":1,"1734":1,"1735":2,"1738":3,"1919":7,"1927":2,"1951":1,"1955":2,"1965":1,"2011":3,"2050":1,"2059":1,"2176":1,"2182":3,"2184":2,"2198":1,"2200":1,"2270":1,"2271":2,"2281":1,"2289":2,"2294":1,"2296":4,"2411":1,"2500":1,"2503":9,"2513":3,"2520":7,"2521":2,"2529":3,"2535":2,"2540":3,"2543":2,"2556":1,"2748":1,"2761":1,"2762":1,"2770":2,"2776":2,"2777":1,"2781":6,"2797":1,"2830":1,"2831":1,"2850":2,"2856":3,"2919":1}}],["62key",{"2":{"226":1}}],["6259",{"2":{"49":1}}],["6260",{"2":{"30":1}}],["62",{"2":{"21":1,"1680":1,"1962":1,"2792":1}}],["600ºf",{"2":{"2420":1}}],["600",{"2":{"1972":1}}],["60000ms",{"2":{"1951":1,"2281":1}}],["60000",{"2":{"1825":1,"1951":1,"2210":1,"2281":1,"2872":1}}],["6000",{"2":{"663":1}}],["60hz",{"2":{"1929":1}}],["60fps",{"2":{"1846":1,"1933":1,"2069":1}}],["60f",{"2":{"1487":1}}],["606",{"2":{"1354":2}}],["6068",{"2":{"131":1,"134":1}}],["60",{"0":{"1317":1},"2":{"18":2,"154":2,"205":2,"210":1,"222":6,"236":1,"257":1,"258":1,"259":2,"260":1,"266":1,"285":1,"427":1,"442":1,"564":1,"1053":1,"1365":1,"1427":3,"1428":3,"1665":1,"1680":17,"1825":1,"1929":1,"1933":3,"1962":1,"2059":1,"2180":1,"2443":1,"2446":1,"2470":1,"2707":1,"2780":1,"2862":6}}],["650",{"2":{"1996":1}}],["65536",{"2":{"752":1,"2501":1}}],["65keys",{"2":{"241":2}}],["6580",{"2":{"93":1}}],["65",{"2":{"11":1,"67":2,"176":1,"222":6,"236":1,"308":1,"1487":1,"1680":1,"1962":1,"2240":1,"2418":1,"2707":2,"2748":1}}],["0|1",{"2":{"2849":1,"2850":1,"2860":1,"2865":1}}],["03d",{"2":{"2882":1,"2886":1}}],["03h",{"2":{"2705":2}}],["03",{"2":{"2501":17}}],["03eb",{"2":{"686":7,"2491":4,"2605":1,"2608":2}}],["064",{"2":{"1962":2}}],["0=2",{"2":{"1956":1}}],["0ms",{"2":{"1951":1}}],["0°",{"2":{"1735":1}}],["0f",{"2":{"1484":2,"1487":5}}],["05f",{"2":{"1487":1}}],["05",{"2":{"921":1,"955":1,"989":1,"1387":1,"1402":1,"2367":1}}],["05dc",{"2":{"686":1,"2494":2}}],["05df",{"2":{"686":1,"2493":1}}],["0k5",{"2":{"857":2,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":2,"1126":2,"1160":2}}],["0u",{"2":{"767":2}}],["0b11",{"2":{"2459":3}}],["0b10100000",{"2":{"746":2}}],["0b00",{"2":{"2459":1}}],["0b01",{"2":{"2459":3}}],["0b01010000",{"2":{"746":1}}],["0b",{"2":{"2459":1}}],["0v",{"2":{"687":1,"695":1,"696":1}}],["04",{"2":{"2646":1,"2666":1}}],["04x",{"2":{"1326":1}}],["0483",{"2":{"686":1,"2386":1}}],["0478",{"2":{"686":1}}],["0422",{"2":{"308":1}}],["005",{"2":{"2886":1}}],["00s",{"2":{"2495":1}}],["00100000",{"2":{"2289":2}}],["00101000",{"2":{"2288":1,"2289":1}}],["00hwpkts",{"2":{"2288":1}}],["0001",{"2":{"2627":1}}],["00010000",{"2":{"2288":1}}],["00000101",{"2":{"2289":1}}],["00000001ff",{"2":{"2497":1}}],["00000001",{"2":{"2289":1}}],["00000000",{"2":{"2237":1,"2289":7}}],["00000010",{"2":{"2289":1}}],["00001100",{"2":{"2289":1}}],["0000",{"2":{"2239":1,"2605":1,"2608":2}}],["000",{"2":{"1973":2}}],["0003",{"2":{"686":1,"2388":1}}],["000e",{"2":{"686":1,"2492":1}}],["000d",{"2":{"686":1,"2492":1}}],["000c",{"2":{"686":1,"2492":1}}],["003",{"2":{"686":1}}],["0037",{"2":{"686":2,"2492":1}}],["0036",{"2":{"686":2,"2492":1}}],["00am",{"2":{"406":9}}],["00",{"2":{"373":5,"520":2,"521":2,"522":4,"1532":1,"1533":1,"2241":1}}],["004",{"2":{"291":1}}],["002",{"2":{"291":1}}],["0ab",{"2":{"266":1}}],["08t12",{"2":{"2501":17}}],["08752684f7f6",{"2":{"370":1,"371":1}}],["08",{"2":{"265":1}}],["02",{"2":{"249":1}}],["01101010",{"2":{"2289":1}}],["01110000",{"2":{"2288":1}}],["01ue",{"2":{"2288":1}}],["0189",{"2":{"686":1}}],["0106",{"2":{"686":1}}],["0101",{"2":{"686":1,"2492":1}}],["01000010",{"2":{"1375":1,"2288":2}}],["0100",{"2":{"253":1}}],["0131",{"2":{"226":1}}],["0130",{"2":{"226":1}}],["01",{"2":{"222":2,"1532":2,"1533":1}}],["0+atmel3",{"2":{"114":1}}],["07",{"2":{"114":2}}],["0xxx",{"2":{"2496":3}}],["0xe7",{"2":{"2469":1}}],["0xe8",{"2":{"1964":1}}],["0xd7",{"2":{"2494":1}}],["0xd8",{"2":{"2492":8}}],["0xdb",{"2":{"2491":1}}],["0xd9",{"2":{"2491":3}}],["0xd4",{"2":{"1948":1,"2278":1}}],["0xd3",{"2":{"1948":1,"2278":1}}],["0xd2",{"2":{"1948":1,"2278":1}}],["0xd1",{"2":{"1948":1,"2278":1}}],["0xd0",{"2":{"1948":1,"2278":1,"2492":1,"2493":1,"2494":1}}],["0xb4",{"2":{"1948":1,"2278":1}}],["0xb3",{"2":{"1948":1,"2278":1}}],["0xb2",{"2":{"1948":1,"2278":1,"2706":1}}],["0xb1",{"2":{"1948":1,"2278":1}}],["0xb0",{"2":{"1288":1,"1948":1,"2278":1,"2876":1}}],["0xaf",{"2":{"1948":1,"2278":1}}],["0xae",{"2":{"1948":1,"2278":1}}],["0xad",{"2":{"1948":1,"2278":1}}],["0xac",{"2":{"1948":1,"2278":1}}],["0xab",{"2":{"1948":1,"2278":1}}],["0xaa",{"2":{"1948":1,"2278":1}}],["0xa9",{"2":{"1948":1,"2278":1}}],["0xa8",{"2":{"1948":1,"2278":1}}],["0xa7",{"2":{"1948":1,"2278":1}}],["0xa6",{"2":{"1948":1,"2278":1}}],["0xa5",{"2":{"1948":1,"2278":1,"2534":1,"2544":1}}],["0xa4f9",{"2":{"2050":1}}],["0xa4",{"2":{"1948":1,"2278":1}}],["0xa3",{"2":{"1948":1,"2278":1}}],["0xa2",{"2":{"1948":1,"2278":1}}],["0xa1",{"2":{"1948":1,"2278":1}}],["0xa0",{"2":{"1948":1,"2278":1}}],["0x9b",{"2":{"2491":1}}],["0x99",{"2":{"2491":3}}],["0x94",{"2":{"1948":1,"2278":1}}],["0x93",{"2":{"1948":1,"2278":1}}],["0x92",{"2":{"1948":1,"2278":1}}],["0x91",{"2":{"1948":1,"2278":1}}],["0x90",{"2":{"1948":1,"2278":1}}],["0x8f",{"2":{"1948":1,"2278":1}}],["0x8e",{"2":{"1948":1,"2278":1}}],["0x8d",{"2":{"1948":1,"2278":1}}],["0x8c",{"2":{"1948":1,"2278":1}}],["0x8b",{"2":{"1948":1,"2278":1}}],["0x8a",{"2":{"1948":1,"2278":1}}],["0x89",{"2":{"1948":1,"2278":1}}],["0x88",{"2":{"1948":1,"2278":1}}],["0x87",{"2":{"1948":1,"2278":1}}],["0x86",{"2":{"1948":1,"2278":1}}],["0x85",{"2":{"1948":1,"2278":1}}],["0x84",{"2":{"1948":1,"2278":1}}],["0x83",{"2":{"1948":1,"2278":1}}],["0x82",{"2":{"1948":1,"2278":1}}],["0x81",{"2":{"1948":1,"2278":1}}],["0x8000000",{"2":{"2386":1,"2390":1,"2391":1,"2501":1}}],["0x80",{"2":{"1948":1,"1951":1,"2278":1}}],["0x464751",{"2":{"2768":1}}],["0x464651",{"2":{"2760":1}}],["0x4335",{"2":{"2052":1}}],["0x41",{"2":{"2052":2}}],["0x4207",{"2":{"1327":1,"2941":1}}],["0x400",{"2":{"2501":1}}],["0x40b",{"2":{"2322":1}}],["0x40",{"2":{"854":1,"858":1}}],["0x",{"2":{"1326":1}}],["0xf8",{"2":{"2492":1}}],["0xfb",{"2":{"2492":6}}],["0xfe",{"2":{"2492":2}}],["0xfeed",{"2":{"1316":1,"2710":2}}],["0xf3",{"2":{"2491":4}}],["0xffff",{"2":{"2744":2,"2813":1}}],["0xff60",{"2":{"2049":2,"2052":1}}],["0xff",{"2":{"918":1,"923":1,"953":1,"957":1,"987":1,"991":1,"1021":1,"1025":1,"1055":1,"1059":1,"1089":1,"1093":1,"1123":1,"1127":1,"1157":1,"1161":1,"1417":1,"1424":6,"1484":1,"1485":2,"1511":5,"1527":3,"1841":1,"1844":1,"2039":1,"2061":1,"2066":4,"2374":4,"2492":9,"2566":1,"2813":1}}],["0x6fff",{"2":{"2608":1}}],["0x6f",{"2":{"1158":1}}],["0x6e",{"2":{"1158":1}}],["0x6d",{"2":{"1158":1}}],["0x6c",{"2":{"1158":1}}],["0x6b",{"2":{"1158":1}}],["0x6a",{"2":{"1158":1}}],["0x69",{"2":{"1158":1}}],["0x68",{"2":{"1158":1}}],["0x67",{"2":{"1158":1}}],["0x66",{"2":{"1158":1}}],["0x65",{"2":{"1158":1}}],["0x64",{"2":{"1158":1}}],["0x63",{"2":{"1158":1}}],["0x62",{"2":{"1158":1}}],["0x61",{"2":{"1158":1,"2049":2,"2052":1}}],["0x60000002",{"2":{"2551":1}}],["0x60",{"2":{"1158":1}}],["0x7e",{"2":{"2748":3,"2760":1,"2761":1}}],["0x7000",{"2":{"2608":2}}],["0x7fff",{"2":{"2325":1,"2411":1,"2533":1}}],["0x7f",{"2":{"1731":1}}],["0x7a",{"2":{"1424":1}}],["0x77",{"2":{"887":1,"1214":1}}],["0x76",{"2":{"887":1,"1214":1}}],["0x75",{"2":{"887":1,"1214":1}}],["0x74",{"2":{"887":1,"1214":1}}],["0x5f",{"2":{"919":1,"954":1,"988":1}}],["0x5e",{"2":{"919":1,"954":1,"2491":4}}],["0x5d",{"2":{"919":1,"954":1}}],["0x5c",{"2":{"919":1,"954":1}}],["0x5b",{"2":{"919":1,"954":1}}],["0x5a",{"2":{"919":1,"954":1,"988":1}}],["0x59",{"2":{"919":1,"954":1}}],["0x58",{"2":{"919":1,"954":1}}],["0x57",{"2":{"919":1,"954":1}}],["0x56f0",{"2":{"1527":1}}],["0x56",{"2":{"919":1,"954":1}}],["0x5678",{"2":{"169":2,"184":2,"559":1}}],["0x55",{"2":{"919":1,"954":1,"988":1}}],["0x53",{"2":{"919":1,"954":1}}],["0x52",{"2":{"919":1,"954":1}}],["0x51",{"2":{"919":1,"954":1}}],["0x50",{"2":{"919":1,"954":1,"988":1}}],["0x54",{"2":{"829":1,"919":1,"954":1}}],["0x3",{"2":{"1659":1}}],["0x33",{"2":{"1022":1,"1056":1}}],["0x32",{"2":{"1022":1,"1056":1}}],["0x31",{"2":{"1022":1,"1055":1,"1056":1,"1123":1}}],["0x37",{"2":{"855":1}}],["0x36",{"2":{"855":1}}],["0x35",{"2":{"855":1}}],["0x34",{"2":{"855":1}}],["0x3f80",{"2":{"2608":2}}],["0x3f7f",{"2":{"2608":1}}],["0x3f",{"2":{"800":1,"1729":1}}],["0x3e",{"2":{"800":1}}],["0x3d",{"2":{"800":1}}],["0x3c",{"2":{"800":1,"1952":1}}],["0x30c4",{"2":{"2322":1}}],["0x30",{"2":{"763":1,"1022":1,"1056":1}}],["0x2f",{"2":{"1090":1,"1124":1}}],["0x2e2e",{"2":{"2322":1}}],["0x2e",{"2":{"1090":1,"1124":1}}],["0x2d",{"2":{"1090":1,"1124":1}}],["0x2c",{"2":{"1090":1,"1124":1}}],["0x2b",{"2":{"1090":1,"1124":1}}],["0x2a",{"2":{"1090":1,"1124":1,"1968":1}}],["0x29",{"2":{"1090":1,"1124":1}}],["0x28",{"2":{"1090":1,"1124":1}}],["0x27",{"2":{"1090":1,"1124":1}}],["0x26",{"2":{"1090":1,"1124":1}}],["0x25",{"2":{"1090":1,"1124":1}}],["0x24",{"2":{"1090":1,"1124":1}}],["0x23b0",{"2":{"2875":1}}],["0x23",{"2":{"1090":1,"1124":1}}],["0x2330",{"2":{"111":1}}],["0x22",{"2":{"1090":1,"1124":1}}],["0x21",{"2":{"1090":1,"1124":1}}],["0x203d",{"2":{"2322":1}}],["0x20",{"2":{"1090":1,"1124":1,"2748":3,"2760":1,"2761":1}}],["0x2000",{"2":{"373":1}}],["0x100",{"2":{"2813":1}}],["0x10ffff",{"2":{"2411":2}}],["0x1e9587",{"2":{"2495":1}}],["0x1eff",{"2":{"373":1}}],["0x1d",{"2":{"2471":1}}],["0x1c04",{"2":{"2501":1}}],["0x1c",{"2":{"2471":1}}],["0x1f",{"2":{"2494":1}}],["0x1f1e6",{"2":{"2323":1}}],["0x1f1fa",{"2":{"2323":1}}],["0x1f923",{"2":{"2323":1}}],["0x1f4a9",{"2":{"2323":1}}],["0x1f40d",{"2":{"2322":1}}],["0x1fff",{"2":{"373":1}}],["0x15",{"2":{"1696":3}}],["0x18",{"2":{"763":2}}],["0x1234",{"2":{"169":2,"184":2,"559":1}}],["0x03",{"2":{"2763":2,"2770":1,"2771":2}}],["0x03a8",{"2":{"2050":1}}],["0x07",{"2":{"2534":1,"2770":1}}],["0x06",{"2":{"2471":1,"2770":1}}],["0x05",{"2":{"2471":1,"2770":1,"2773":2}}],["0x0ca0",{"2":{"2323":2}}],["0x0f",{"2":{"2039":1,"2493":1}}],["0x09",{"2":{"2009":1}}],["0x0b",{"2":{"2009":1}}],["0x02",{"2":{"1976":1,"2061":1,"2762":2,"2770":3}}],["0x0a",{"2":{"1974":1}}],["0x08001c00",{"2":{"2501":1}}],["0x08001800",{"2":{"2501":1}}],["0x08001400",{"2":{"2501":1}}],["0x08001000",{"2":{"2501":1}}],["0x08000c00",{"2":{"2501":1}}],["0x08000800",{"2":{"2501":1}}],["0x08000400",{"2":{"2501":1}}],["0x08000000",{"2":{"2501":2}}],["0x08",{"2":{"1696":1,"1841":1,"2061":1}}],["0x0410",{"2":{"2501":2}}],["0x04",{"2":{"1696":3,"1841":1,"2061":1,"2471":1,"2472":1,"2494":1,"2764":2,"2770":1,"2772":2}}],["0x0e",{"2":{"1696":1}}],["0x01",{"2":{"1089":1,"1157":1,"1841":1,"2061":1,"2074":2,"2760":1,"2761":2,"2768":1,"2769":2,"2770":2}}],["0x0100",{"2":{"373":1,"559":1}}],["0x0",{"2":{"717":1,"2608":2}}],["0x005f",{"2":{"2323":1}}],["0x00c6",{"2":{"2323":1}}],["0x00e6",{"2":{"2323":1}}],["0x00",{"2":{"1424":8,"1696":1,"1729":1,"1731":1,"1841":1,"1948":1,"2052":1,"2061":1,"2066":1,"2278":1,"2469":1,"2760":2,"2768":2,"2770":2,"2813":1}}],["0x00ff",{"2":{"373":1,"2744":2}}],["0x0008e534",{"2":{"2501":1}}],["0x0002",{"2":{"2052":1}}],["0x00000002",{"2":{"2551":1}}],["0x00000001",{"2":{"2551":1}}],["0x0000",{"2":{"373":1,"2501":1,"2710":1,"2744":2}}],["0x0001",{"2":{"111":1,"169":1,"184":1}}],["0xcf",{"2":{"1948":1,"2278":1}}],["0xce",{"2":{"1948":1,"2278":1}}],["0xcd",{"2":{"1948":1,"2278":1}}],["0xcc",{"2":{"1948":1,"2278":1}}],["0xca",{"2":{"1948":1,"2278":1}}],["0xc9",{"2":{"1948":1,"2278":1}}],["0xc8",{"2":{"1948":1,"2278":1}}],["0xc7",{"2":{"1948":1,"2278":1}}],["0xc6",{"2":{"1948":1,"2278":1}}],["0xc5",{"2":{"1948":1,"2278":1}}],["0xc4",{"2":{"1948":1,"2278":1}}],["0xc3",{"2":{"1948":1,"2278":1}}],["0xc2",{"2":{"1948":1,"2278":1}}],["0xc1",{"2":{"1948":1,"2278":1}}],["0xc1ed",{"2":{"111":1,"2875":1}}],["0xc0",{"2":{"1948":1,"2278":1,"2494":1}}],["0xcb",{"2":{"114":1,"266":1,"322":4,"328":1,"1388":1,"1396":1,"1948":1,"2278":1,"2706":1,"2888":1}}],["0$",{"2":{"70":3}}],["0",{"0":{"56":1,"2424":1,"2481":1},"1":{"2482":1},"2":{"11":1,"14":1,"38":2,"56":1,"90":2,"102":1,"105":4,"114":5,"120":2,"122":2,"137":1,"168":1,"169":2,"176":1,"184":2,"191":2,"195":1,"199":2,"210":1,"231":4,"236":1,"238":2,"240":2,"247":1,"249":2,"266":5,"277":2,"279":1,"285":1,"294":2,"307":1,"308":1,"328":1,"332":2,"348":1,"369":1,"373":8,"407":52,"427":1,"453":1,"467":1,"522":2,"544":2,"559":1,"562":1,"564":2,"568":1,"587":3,"591":1,"654":3,"655":1,"681":3,"686":1,"687":1,"690":1,"692":4,"693":2,"696":2,"701":1,"710":1,"716":1,"717":1,"723":1,"724":1,"726":2,"729":1,"741":2,"751":1,"752":1,"794":2,"799":2,"802":3,"805":1,"828":1,"854":2,"857":4,"858":1,"860":3,"863":1,"886":2,"890":3,"893":1,"918":5,"922":6,"923":1,"925":3,"928":1,"953":4,"956":6,"957":1,"959":3,"962":1,"987":4,"990":6,"991":1,"993":3,"996":1,"1021":2,"1024":4,"1025":1,"1027":3,"1030":1,"1055":2,"1058":4,"1059":1,"1061":3,"1064":1,"1089":3,"1092":4,"1093":1,"1095":3,"1098":1,"1123":3,"1126":4,"1127":1,"1129":3,"1132":1,"1157":2,"1160":4,"1161":1,"1163":3,"1166":1,"1204":1,"1213":2,"1216":3,"1219":1,"1249":1,"1282":1,"1283":1,"1285":3,"1292":1,"1308":1,"1326":23,"1362":2,"1370":1,"1392":8,"1407":1,"1409":4,"1412":1,"1416":2,"1417":2,"1419":2,"1425":1,"1435":1,"1440":2,"1449":1,"1456":1,"1480":1,"1486":1,"1487":1,"1508":2,"1521":23,"1527":4,"1529":1,"1532":4,"1533":1,"1538":1,"1539":1,"1561":1,"1563":1,"1577":1,"1580":1,"1582":1,"1583":3,"1587":1,"1592":1,"1594":1,"1606":2,"1613":2,"1619":3,"1624":3,"1627":2,"1632":28,"1635":3,"1636":2,"1648":2,"1649":1,"1650":1,"1651":3,"1658":1,"1661":1,"1662":2,"1664":1,"1672":1,"1675":1,"1678":3,"1679":3,"1689":2,"1696":1,"1706":2,"1714":1,"1716":1,"1734":2,"1735":2,"1736":2,"1737":6,"1738":3,"1746":1,"1748":1,"1751":1,"1775":1,"1828":2,"1830":1,"1832":2,"1833":1,"1840":5,"1843":1,"1846":1,"1860":1,"1878":1,"1884":1,"1886":1,"1888":1,"1918":2,"1919":29,"1920":2,"1927":2,"1929":1,"1931":4,"1949":5,"1950":2,"1951":9,"1954":2,"1955":5,"1956":5,"1962":6,"1965":1,"1976":3,"1977":1,"1979":2,"1983":2,"1986":2,"1987":6,"1989":2,"1990":2,"1996":2,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2034":4,"2036":10,"2041":3,"2052":5,"2060":5,"2063":1,"2069":2,"2073":3,"2074":4,"2086":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2138":3,"2140":3,"2165":1,"2167":2,"2168":2,"2175":2,"2176":8,"2178":2,"2183":1,"2184":4,"2191":15,"2194":2,"2195":2,"2198":1,"2199":1,"2200":1,"2210":4,"2227":1,"2231":1,"2237":1,"2238":1,"2239":1,"2240":1,"2241":1,"2242":1,"2243":2,"2244":1,"2245":1,"2246":2,"2252":4,"2253":1,"2268":3,"2270":2,"2273":2,"2279":5,"2281":5,"2283":2,"2288":1,"2289":6,"2293":1,"2296":16,"2298":1,"2309":2,"2323":2,"2358":1,"2373":2,"2374":3,"2381":1,"2386":1,"2389":1,"2391":1,"2398":3,"2417":2,"2459":10,"2481":2,"2495":1,"2501":3,"2503":4,"2513":3,"2520":29,"2521":2,"2535":2,"2543":2,"2550":4,"2551":9,"2555":1,"2556":4,"2569":5,"2570":2,"2608":2,"2676":2,"2678":2,"2710":2,"2714":18,"2725":1,"2747":1,"2748":2,"2749":1,"2750":27,"2754":1,"2765":2,"2767":1,"2770":6,"2771":6,"2775":1,"2776":13,"2777":10,"2792":3,"2847":1,"2848":1,"2850":1,"2851":2,"2853":2,"2856":1,"2862":4,"2864":6,"2865":1,"2870":4,"2871":7,"2872":5,"2873":1,"2875":3,"2886":2,"2904":3,"2908":2,"2909":3,"2910":2,"2914":2,"2916":1,"2917":4,"2919":2,"2929":21,"2931":1,"2932":39}}],["3akeyboard",{"2":{"2721":1}}],["3aclosed+label",{"2":{"2721":1}}],["3apr+is",{"2":{"2721":1}}],["3d",{"2":{"2428":1}}],["3+0",{"2":{"1962":1}}],["3=5",{"2":{"1956":1}}],["3|128",{"2":{"1532":1}}],["34",{"2":{"1486":1,"1680":1,"1962":1}}],["3b",{"2":{"1368":1}}],["35",{"2":{"1486":1,"1521":1,"1680":1,"1962":1,"2447":1,"2627":1}}],["3500",{"2":{"1975":1}}],["350",{"2":{"1282":1,"1787":1}}],["351",{"2":{"1019":1,"1839":1}}],["384",{"2":{"2322":1}}],["38400",{"2":{"1204":1,"1269":1}}],["38",{"2":{"1486":1,"1680":1,"1840":1,"1919":1,"1962":1,"2060":1,"2520":1}}],["38u",{"2":{"767":1}}],["3k63",{"2":{"1159":1}}],["3k6",{"2":{"1023":1,"1057":1}}],["3key",{"2":{"154":2}}],["333c30605e739ce9bedee5999fdaf81b",{"2":{"2501":1}}],["33s",{"2":{"2495":1}}],["3389",{"0":{"1976":1},"2":{"1976":3}}],["33",{"2":{"1486":1,"1680":1,"1962":1,"2750":6}}],["3300",{"2":{"741":1,"2851":1}}],["3360",{"0":{"1976":1},"2":{"118":1,"1976":3}}],["3v3",{"2":{"2492":2}}],["3v",{"2":{"686":2,"687":2,"1293":1,"1294":1,"1295":1,"1691":1,"1733":1,"2254":1,"2500":1,"2661":1,"2662":1,"2682":1,"2683":2,"2684":3}}],["3rd",{"2":{"514":1,"613":1}}],["39000",{"2":{"1204":1}}],["39x9",{"2":{"1019":1}}],["39kbps",{"2":{"568":1,"2268":1}}],["39",{"2":{"371":2,"1486":1,"1680":1}}],["316",{"2":{"1328":4}}],["313",{"2":{"1328":1}}],["315ºc",{"2":{"2420":1}}],["315°",{"2":{"1735":1}}],["315",{"2":{"1328":1}}],["314b",{"2":{"686":1}}],["31",{"0":{"309":1},"1":{"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1},"2":{"231":4,"285":1,"394":1,"395":1,"396":2,"407":2,"559":1,"701":2,"710":1,"1350":1,"1486":1,"1538":1,"1680":1,"1738":3,"1746":1,"1748":1,"1962":1,"2011":3,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2180":1,"2501":13,"2513":3,"2529":3,"2550":2,"2551":5,"2848":2,"2850":1}}],["3x",{"2":{"1678":1,"1679":1,"1968":1}}],["3x5+3",{"2":{"249":1}}],["3x5",{"2":{"205":1,"210":2,"249":1,"311":10,"317":2,"1584":1}}],["3x8",{"2":{"154":2}}],["3x7",{"2":{"154":2}}],["3x6",{"2":{"154":2,"311":8,"317":1}}],["360",{"2":{"1931":1,"2750":1,"2771":1}}],["36",{"2":{"154":2,"222":1,"797":1,"1680":1,"1839":1,"1962":1,"2417":1}}],["37",{"2":{"1486":1,"1680":1,"1840":1,"1962":1,"2060":1}}],["3731",{"2":{"236":1}}],["3733",{"2":{"134":1}}],["3741",{"2":{"236":1}}],["378",{"2":{"222":1}}],["378edd9",{"2":{"73":1}}],["3700",{"2":{"57":2}}],["320",{"2":{"2750":3}}],["320x480",{"2":{"2746":2}}],["3204",{"0":{"1972":1},"2":{"1972":2}}],["3286",{"2":{"2483":1}}],["328p",{"2":{"235":1}}],["32k",{"2":{"854":1,"856":2,"922":2,"956":2,"990":2,"1021":2,"1024":4,"1058":2}}],["32kb",{"2":{"750":2}}],["32kb+",{"2":{"543":1}}],["32u2",{"2":{"764":1,"1244":1,"1265":1,"1547":1,"1548":1}}],["32u4rc",{"2":{"2376":1}}],["32u4",{"2":{"222":1,"322":1,"544":1,"686":4,"690":1,"764":1,"1265":1,"1547":1,"1548":1,"2368":2,"2492":4}}],["32bit",{"2":{"645":1}}],["32730",{"2":{"2495":4}}],["32767",{"2":{"562":2,"1978":4}}],["3270",{"2":{"114":1,"218":8}}],["3222",{"0":{"1973":1},"2":{"328":1,"1973":1}}],["32",{"0":{"166":1},"2":{"63":1,"120":1,"231":1,"277":1,"407":1,"563":1,"746":1,"747":1,"856":1,"922":2,"951":1,"956":2,"990":2,"1024":2,"1058":2,"1297":1,"1407":1,"1408":1,"1417":1,"1435":1,"1486":1,"1603":1,"1680":1,"1732":1,"1734":1,"1840":2,"1930":1,"1931":2,"1933":3,"1954":2,"1962":1,"2011":3,"2050":1,"2051":1,"2052":1,"2055":2,"2057":2,"2059":1,"2060":2,"2064":1,"2182":2,"2213":1,"2215":1,"2237":1,"2270":1,"2281":1,"2282":2,"2437":1,"2529":3,"2550":2,"2551":1,"2566":1,"2579":1,"2682":1,"2795":1,"2864":1,"2870":1,"2871":1}}],["3",{"0":{"81":1,"596":1,"1370":1,"2300":1,"2309":1,"2470":1,"2596":1,"2621":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"10":1,"23":1,"69":1,"70":1,"76":1,"81":1,"93":1,"114":2,"120":2,"122":2,"131":1,"134":3,"160":1,"176":3,"188":1,"191":1,"199":1,"205":1,"210":1,"222":1,"236":1,"240":1,"251":1,"266":6,"294":1,"307":1,"311":6,"348":1,"369":1,"393":1,"396":2,"406":1,"414":5,"415":5,"420":1,"423":1,"512":1,"549":3,"559":1,"568":1,"579":1,"587":2,"591":6,"597":1,"639":1,"663":1,"681":1,"686":1,"687":2,"690":1,"692":22,"693":1,"713":2,"729":1,"756":1,"799":2,"805":1,"854":2,"863":1,"886":2,"890":1,"893":1,"918":4,"928":1,"953":2,"962":1,"987":2,"996":1,"1021":2,"1023":1,"1030":1,"1055":2,"1057":1,"1064":1,"1089":4,"1098":1,"1123":4,"1132":1,"1157":2,"1159":1,"1166":1,"1195":1,"1198":1,"1204":1,"1213":2,"1219":1,"1249":1,"1293":1,"1294":1,"1295":1,"1343":1,"1370":1,"1435":1,"1464":1,"1468":1,"1486":1,"1532":2,"1538":1,"1547":4,"1548":2,"1550":1,"1592":1,"1616":1,"1619":2,"1651":1,"1661":1,"1664":1,"1678":4,"1679":3,"1680":1,"1691":1,"1696":1,"1733":1,"1734":1,"1735":2,"1738":3,"1790":2,"1837":2,"1840":1,"1843":1,"1919":31,"1927":2,"1931":3,"1953":1,"1955":3,"1956":1,"1961":1,"1965":1,"1968":1,"2011":3,"2036":2,"2040":2,"2060":1,"2063":2,"2176":4,"2178":1,"2182":1,"2183":1,"2184":2,"2198":1,"2199":1,"2200":3,"2252":1,"2254":1,"2257":1,"2259":1,"2260":1,"2268":1,"2289":2,"2291":1,"2294":1,"2296":16,"2302":1,"2308":4,"2310":1,"2315":1,"2370":1,"2409":1,"2443":1,"2447":4,"2448":4,"2458":1,"2459":3,"2500":3,"2503":9,"2509":1,"2513":3,"2520":31,"2521":2,"2529":3,"2535":2,"2540":2,"2543":2,"2556":1,"2566":1,"2573":1,"2575":2,"2625":1,"2627":1,"2651":1,"2662":1,"2682":1,"2683":2,"2684":3,"2695":1,"2714":16,"2749":26,"2770":2,"2771":1,"2776":9,"2777":8,"2818":1,"2850":1,"2870":1,"2872":1,"2896":1,"2911":1,"2924":1,"2930":1}}],["30fps",{"2":{"2750":6}}],["30x6",{"2":{"1053":1}}],["300",{"2":{"562":2,"1787":1,"1788":1,"1933":1,"1965":2,"2041":1,"2284":1,"2863":2}}],["30000",{"2":{"1573":1,"2747":1,"2851":1}}],["3000",{"2":{"266":1,"568":1,"1592":1,"1930":1,"2271":1}}],["30",{"0":{"0":1,"19":1,"318":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1},"2":{"114":1,"176":1,"394":1,"407":4,"559":1,"1486":1,"1680":8,"1738":3,"1929":1,"1949":1,"1962":1,"2011":3,"2063":2,"2074":1,"2180":2,"2279":1,"2501":4,"2513":3,"2529":3,"2550":1,"2551":4,"2560":1,"2851":1,"2865":2}}],["1bpp",{"2":{"2749":1,"2770":2}}],["1b4f",{"2":{"686":3,"2492":3}}],["1ca027",{"2":{"1967":1}}],["1c11",{"2":{"686":1,"2389":1}}],["1=3",{"2":{"1956":1}}],["1>",{"2":{"1782":1,"2921":1}}],["1x",{"2":{"1678":1,"1679":1,"1968":1,"2257":1,"2682":1}}],["1x4",{"2":{"222":1}}],["1st",{"2":{"1425":1}}],["1️⃣",{"2":{"713":12}}],["1p5",{"2":{"698":1}}],["1eaf",{"2":{"686":1,"2388":1}}],["1ffb",{"2":{"686":1,"2492":1}}],["1u",{"2":{"2862":2}}],["1up60rgb",{"2":{"586":1}}],["1upkeyboards",{"2":{"191":2,"222":2,"236":1,"322":4,"328":1,"586":1}}],["1ul",{"2":{"105":4,"1365":2,"1651":4}}],["19",{"2":{"371":2,"407":1,"1486":1,"1521":1,"1680":1,"1738":3,"1962":2,"2011":3,"2513":3,"2529":3}}],["199",{"2":{"2908":1,"2909":1}}],["19939",{"2":{"236":1}}],["19954",{"2":{"222":1}}],["19997",{"2":{"236":1}}],["19998",{"2":{"222":1}}],["19991",{"2":{"222":1}}],["19993",{"2":{"222":1}}],["19987",{"2":{"222":1}}],["19985",{"2":{"222":1}}],["19980",{"2":{"222":1}}],["19961",{"2":{"222":1}}],["19966",{"2":{"222":1}}],["19925",{"2":{"222":1}}],["19923",{"2":{"199":1}}],["19974",{"2":{"222":1}}],["19948",{"2":{"222":1}}],["19941",{"2":{"199":1}}],["19940",{"2":{"199":1}}],["19912",{"2":{"222":1}}],["19916",{"2":{"199":1}}],["19919",{"2":{"199":1}}],["19918",{"2":{"199":1}}],["19910",{"2":{"199":1}}],["19902",{"2":{"199":1}}],["19901",{"2":{"199":1}}],["19909",{"2":{"199":1}}],["19907",{"2":{"199":1}}],["198",{"2":{"1087":1,"1839":1}}],["19849",{"2":{"222":1}}],["19845",{"2":{"199":1}}],["19842",{"2":{"199":1}}],["19893",{"2":{"199":1}}],["19898",{"2":{"199":1}}],["19891",{"2":{"199":1}}],["19890",{"2":{"199":1}}],["19869",{"2":{"199":1}}],["19867",{"2":{"199":1}}],["19866",{"2":{"199":1}}],["19864",{"2":{"199":1}}],["19863",{"2":{"199":1}}],["19860",{"2":{"199":1}}],["19854",{"2":{"222":1}}],["19857",{"2":{"199":1}}],["19856",{"2":{"199":1}}],["19859",{"2":{"199":1}}],["19851",{"2":{"199":1}}],["19825",{"2":{"222":1}}],["19828",{"2":{"199":1}}],["19821",{"2":{"199":1}}],["19826",{"2":{"199":1}}],["19829",{"2":{"199":1}}],["19808",{"2":{"199":1}}],["19800",{"2":{"199":1}}],["19806",{"2":{"199":1}}],["19889",{"2":{"199":1}}],["19888",{"2":{"199":1}}],["19887",{"2":{"199":1}}],["19885",{"2":{"199":1}}],["19884",{"2":{"199":1}}],["19874",{"2":{"199":1}}],["19879",{"2":{"199":1}}],["19872",{"2":{"199":1}}],["19877",{"2":{"199":1}}],["19875",{"2":{"199":1}}],["19833",{"2":{"199":1}}],["19831",{"2":{"199":1}}],["19830",{"2":{"199":1}}],["19815",{"2":{"199":1}}],["19817",{"2":{"199":1}}],["19813",{"2":{"199":1}}],["19738",{"2":{"222":1}}],["19780",{"2":{"210":2}}],["19784",{"2":{"199":1}}],["19793",{"2":{"199":1}}],["19795",{"2":{"199":1}}],["19778",{"2":{"199":1}}],["19777",{"2":{"199":1}}],["19774",{"2":{"199":1}}],["19767",{"2":{"199":1}}],["19768",{"2":{"199":1}}],["19761",{"2":{"199":1}}],["19749",{"2":{"236":1}}],["19748",{"2":{"199":1}}],["19742",{"2":{"199":1}}],["19752",{"2":{"199":1}}],["19750",{"2":{"199":1}}],["19756",{"2":{"199":1}}],["19755",{"2":{"199":1}}],["19753",{"2":{"199":1}}],["19723",{"2":{"199":1}}],["19721",{"2":{"199":1}}],["19726",{"2":{"199":1}}],["19722",{"2":{"199":1}}],["19720",{"2":{"199":1}}],["19718",{"2":{"199":1}}],["19715",{"2":{"199":1}}],["19714",{"2":{"199":1}}],["19713",{"2":{"199":1}}],["19712",{"2":{"199":1}}],["1970",{"2":{"520":1,"521":1,"522":2}}],["19705",{"2":{"222":1}}],["19700",{"2":{"222":1}}],["19703",{"2":{"199":1}}],["19704",{"2":{"199":1}}],["19701",{"2":{"199":1}}],["19689",{"2":{"222":1}}],["19683",{"2":{"199":1}}],["1967st",{"2":{"222":1}}],["19670",{"2":{"222":1}}],["19675",{"2":{"199":1}}],["19658",{"2":{"199":1}}],["19652",{"2":{"199":1}}],["19656",{"2":{"199":1}}],["19647",{"2":{"199":1}}],["19644",{"2":{"199":1}}],["19649",{"2":{"199":1}}],["19640",{"2":{"199":1}}],["19646",{"2":{"199":1}}],["19699",{"2":{"199":1}}],["19630",{"2":{"199":1}}],["19633",{"2":{"199":1}}],["19632",{"2":{"199":1}}],["19629",{"2":{"199":1}}],["19620",{"2":{"199":1}}],["19602",{"2":{"199":1}}],["19607",{"2":{"199":1}}],["19606",{"2":{"199":1}}],["19603",{"2":{"199":2}}],["19515",{"2":{"210":1}}],["19511",{"2":{"199":1}}],["19537",{"2":{"199":1}}],["19530",{"2":{"199":1}}],["19588",{"2":{"199":1}}],["19581",{"2":{"199":1}}],["19570",{"2":{"199":1}}],["19529",{"2":{"199":1}}],["19599",{"2":{"199":1}}],["19597",{"2":{"199":1}}],["19594",{"2":{"199":1}}],["19562",{"2":{"199":1}}],["19565",{"2":{"199":1}}],["19564",{"2":{"199":1}}],["19563",{"2":{"199":1}}],["19543",{"2":{"222":1}}],["19549",{"2":{"199":1}}],["19548",{"2":{"199":1}}],["19541",{"2":{"199":1}}],["19542",{"2":{"199":1}}],["19545",{"2":{"199":1}}],["19544",{"2":{"199":1}}],["19447",{"2":{"199":1}}],["19468",{"2":{"199":1}}],["19464",{"2":{"199":1}}],["19462",{"2":{"199":1}}],["19463",{"2":{"199":1}}],["19496",{"2":{"199":1}}],["19488",{"2":{"199":1}}],["19487",{"2":{"199":1}}],["19485",{"2":{"199":1}}],["19480",{"2":{"199":1}}],["19474",{"2":{"199":1}}],["19479",{"2":{"199":1}}],["19475",{"2":{"199":1}}],["19453",{"2":{"199":1}}],["19452",{"2":{"199":1}}],["19412",{"2":{"199":1}}],["19411",{"2":{"199":1}}],["19418",{"2":{"199":1}}],["19416",{"2":{"199":1}}],["19415",{"2":{"199":1}}],["19400",{"2":{"199":1}}],["19313",{"2":{"199":1}}],["19341",{"2":{"199":1}}],["19348",{"2":{"199":1}}],["19332",{"2":{"199":1}}],["1930",{"2":{"2805":1}}],["19304",{"2":{"199":1}}],["19302",{"2":{"199":1}}],["19301",{"2":{"199":1}}],["19306",{"2":{"199":1}}],["19303",{"2":{"199":1}}],["19350",{"2":{"199":1}}],["19326",{"2":{"199":1}}],["19325",{"2":{"199":1}}],["19399",{"2":{"199":1}}],["19397",{"2":{"199":1}}],["19394",{"2":{"199":1}}],["19382",{"2":{"199":1}}],["19370",{"2":{"199":1}}],["19366",{"2":{"199":1}}],["192",{"2":{"916":1,"1211":1,"1839":2,"2438":1}}],["19280",{"2":{"249":1}}],["19269",{"2":{"199":1}}],["19267",{"2":{"199":1}}],["19262",{"2":{"199":1}}],["1920",{"2":{"1933":1}}],["19200",{"2":{"1204":1,"1269":1}}],["19201",{"2":{"199":1}}],["19203",{"2":{"199":1}}],["19248",{"2":{"199":1}}],["19243",{"2":{"199":1}}],["19275",{"2":{"199":1}}],["19271",{"2":{"199":1}}],["19277",{"2":{"199":1}}],["19273",{"2":{"199":1}}],["19229",{"2":{"199":1}}],["19226",{"2":{"199":1}}],["19225",{"2":{"199":1}}],["19224",{"2":{"199":1}}],["19216",{"2":{"199":1}}],["19214",{"2":{"199":1}}],["1919",{"2":{"1969":1}}],["19194",{"2":{"199":1}}],["191",{"2":{"1949":1,"2279":1}}],["19172",{"2":{"199":1}}],["19153",{"2":{"199":1}}],["19159",{"2":{"191":1}}],["19160",{"2":{"199":1}}],["19167",{"2":{"199":1}}],["19163",{"2":{"199":1}}],["19135",{"2":{"199":1}}],["19137",{"2":{"191":1}}],["19110",{"2":{"199":1}}],["19119",{"2":{"191":1}}],["19140",{"2":{"191":1}}],["19146",{"2":{"191":1}}],["19144",{"2":{"191":1}}],["19143",{"2":{"188":1,"191":1}}],["19107",{"2":{"191":1}}],["19121",{"2":{"191":1}}],["19120",{"2":{"191":1}}],["19124",{"2":{"191":1}}],["19122",{"2":{"191":1}}],["19049",{"2":{"199":1}}],["19096",{"2":{"191":1}}],["19094",{"2":{"191":1}}],["19053",{"2":{"199":1}}],["19059",{"2":{"191":1}}],["19058",{"2":{"191":1}}],["19056",{"2":{"191":1}}],["19052",{"2":{"191":1}}],["19089",{"2":{"191":1}}],["19086",{"2":{"191":1}}],["19080",{"2":{"191":1}}],["19077",{"2":{"199":1}}],["19075",{"2":{"199":1}}],["19072",{"2":{"191":1}}],["19079",{"2":{"191":1}}],["19031",{"2":{"199":1}}],["19038",{"2":{"191":1}}],["19034",{"2":{"190":1,"191":1}}],["19024",{"2":{"199":1}}],["19028",{"2":{"191":1}}],["19029",{"2":{"191":1}}],["19020",{"2":{"191":1}}],["19015",{"2":{"191":1}}],["19018",{"2":{"191":1}}],["19069",{"2":{"222":1}}],["19066",{"2":{"191":1}}],["19060",{"2":{"191":1}}],["19065",{"2":{"191":1}}],["19063",{"2":{"191":1}}],["19068",{"2":{"191":1}}],["19005",{"2":{"236":1}}],["19006",{"2":{"191":1}}],["19007",{"2":{"191":1}}],["19004",{"2":{"188":1,"191":1}}],["1k81",{"2":{"1159":1}}],["1k8",{"2":{"1023":1,"1057":1}}],["1k05",{"2":{"921":1,"955":1,"989":1}}],["1k",{"2":{"856":1,"857":4,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":4,"1126":4,"1160":4,"2302":1,"2660":1}}],["1kb",{"2":{"745":1}}],["1key",{"2":{"154":2}}],["1khz",{"0":{"148":1},"2":{"148":1,"160":1}}],["1ms",{"2":{"148":1,"176":1,"222":1}}],["15ms",{"2":{"1955":1}}],["15min",{"2":{"645":1}}],["15x9",{"2":{"852":1}}],["15pad",{"2":{"266":1}}],["15",{"2":{"176":1,"407":1,"559":1,"692":4,"888":1,"925":1,"993":1,"1365":1,"1416":2,"1417":2,"1486":1,"1521":2,"1680":1,"1706":1,"1738":3,"1919":2,"1951":1,"1962":2,"2011":3,"2182":1,"2244":1,"2478":1,"2480":1,"2513":3,"2520":2,"2529":3,"2770":1,"2781":2}}],["15843",{"2":{"1326":1}}],["15847",{"2":{"222":1}}],["15814",{"2":{"160":1}}],["15815",{"2":{"160":1}}],["15801",{"2":{"160":1}}],["15805",{"2":{"160":1}}],["15889",{"2":{"236":1}}],["15880",{"2":{"160":1}}],["15883",{"2":{"160":1}}],["15882",{"2":{"160":1}}],["15866",{"2":{"160":1}}],["15859",{"2":{"160":1}}],["15828",{"2":{"160":1}}],["15827",{"2":{"160":1}}],["15829",{"2":{"160":1}}],["15821",{"2":{"160":1}}],["15703",{"2":{"1326":1}}],["15741",{"2":{"199":1}}],["15740",{"2":{"160":1}}],["15799",{"2":{"160":1}}],["15798",{"2":{"160":1}}],["15797",{"2":{"160":1}}],["15791",{"2":{"160":1}}],["15789",{"2":{"160":1}}],["15788",{"2":{"160":1}}],["15786",{"2":{"160":1}}],["15785",{"2":{"160":1}}],["15783",{"2":{"160":1}}],["15781",{"2":{"160":1}}],["15780",{"2":{"160":1}}],["15787",{"2":{"160":1}}],["15767",{"2":{"160":1}}],["15760",{"2":{"160":1}}],["15758",{"2":{"160":1}}],["15730",{"2":{"160":1}}],["15733",{"2":{"145":1}}],["15725",{"2":{"160":1}}],["15510",{"2":{"1326":1}}],["15519",{"2":{"160":1}}],["15505",{"2":{"1326":1}}],["15592",{"2":{"160":1}}],["15589",{"2":{"160":1}}],["15557",{"2":{"160":1}}],["15559",{"2":{"160":1}}],["15538",{"2":{"160":1}}],["15537",{"2":{"160":1}}],["15579",{"2":{"160":1}}],["15416",{"2":{"160":1}}],["15419",{"2":{"160":1}}],["15483",{"2":{"160":1}}],["15489",{"2":{"160":1}}],["15481",{"2":{"160":1}}],["15492",{"2":{"160":1}}],["15479",{"2":{"160":1}}],["15457",{"2":{"160":1}}],["15450",{"2":{"160":1}}],["15435",{"2":{"160":1}}],["15431",{"2":{"160":1}}],["15420",{"2":{"160":1}}],["15409",{"2":{"160":1}}],["15699",{"2":{"191":1}}],["15691",{"2":{"160":1}}],["15674",{"2":{"176":1}}],["15606",{"2":{"160":1}}],["15603",{"2":{"160":1}}],["15609",{"2":{"160":1}}],["15682",{"2":{"160":1}}],["15687",{"2":{"160":1}}],["15684",{"2":{"160":1}}],["15681",{"2":{"160":1}}],["15680",{"2":{"145":1}}],["15668",{"2":{"160":1}}],["15667",{"2":{"160":1}}],["15665",{"2":{"160":1}}],["15662",{"2":{"160":1}}],["15661",{"2":{"160":1}}],["15646",{"2":{"160":1}}],["15647",{"2":{"160":1}}],["15645",{"2":{"160":1}}],["15643",{"2":{"160":1}}],["15641",{"2":{"160":1}}],["15638",{"2":{"160":1}}],["15637",{"2":{"160":1}}],["15636",{"2":{"160":1}}],["15635",{"2":{"160":1}}],["15657",{"2":{"145":1}}],["15988",{"2":{"160":1}}],["15985",{"2":{"160":1}}],["15984",{"2":{"160":1}}],["15987",{"2":{"160":1}}],["15976",{"2":{"160":1}}],["15938",{"2":{"160":1}}],["15935",{"2":{"160":1}}],["15919",{"2":{"160":1}}],["15907",{"2":{"176":1}}],["15906",{"2":{"160":1}}],["15904",{"2":{"160":1}}],["15968",{"2":{"160":1}}],["15954",{"2":{"160":1}}],["15953",{"2":{"160":1}}],["15959",{"2":{"145":1}}],["15944",{"2":{"160":1}}],["15924",{"2":{"160":1}}],["15925",{"2":{"160":1}}],["15923",{"2":{"160":1}}],["15999",{"2":{"160":1}}],["15997",{"2":{"160":1}}],["15993",{"2":{"160":1}}],["15992",{"2":{"160":1}}],["15991",{"2":{"160":1}}],["15996",{"2":{"145":1}}],["15990",{"2":{"145":1}}],["15378",{"2":{"160":1}}],["15376",{"2":{"160":1}}],["15340",{"2":{"160":1}}],["15349",{"2":{"160":1}}],["15336",{"2":{"160":1}}],["15368",{"2":{"160":1}}],["15352",{"2":{"160":1}}],["15321",{"2":{"160":1}}],["15320",{"2":{"145":1}}],["15316",{"2":{"134":1}}],["15313",{"2":{"134":1}}],["15312",{"2":{"134":1}}],["15306",{"2":{"160":1}}],["15305",{"2":{"160":1}}],["15304",{"2":{"160":1}}],["15307",{"2":{"134":1}}],["15302",{"2":{"134":1}}],["15301",{"2":{"134":1}}],["15309",{"2":{"134":1}}],["15303",{"2":{"134":1}}],["15277",{"2":{"160":1}}],["15207",{"2":{"160":1}}],["15205",{"2":{"134":1}}],["15286",{"2":{"176":1}}],["15285",{"2":{"160":1}}],["15282",{"2":{"160":1}}],["15292",{"2":{"176":1}}],["15298",{"2":{"134":1}}],["15299",{"2":{"134":1}}],["15239",{"2":{"134":1}}],["15221",{"2":{"134":1}}],["15223",{"2":{"134":1}}],["15240",{"2":{"134":1}}],["15243",{"2":{"134":1}}],["15244",{"2":{"134":1}}],["15268",{"2":{"134":1}}],["15263",{"2":{"134":1}}],["15262",{"2":{"134":1}}],["15261",{"2":{"134":1}}],["15260",{"2":{"134":1}}],["15269",{"2":{"134":1}}],["15132",{"2":{"160":1}}],["15130",{"2":{"134":1}}],["15167",{"2":{"134":1}}],["15162",{"2":{"133":1,"134":1}}],["15115",{"2":{"134":1}}],["15116",{"2":{"134":1}}],["15109",{"2":{"134":1}}],["15185",{"2":{"134":1}}],["15184",{"2":{"134":1}}],["15171",{"2":{"134":1}}],["15170",{"2":{"134":1}}],["15174",{"2":{"134":1}}],["15199",{"2":{"134":1}}],["15196",{"2":{"134":1}}],["15195",{"2":{"134":1}}],["150",{"2":{"344":1,"723":2,"724":1,"1316":1,"1496":1,"1497":1,"1604":1,"1606":1,"1933":1,"1965":2,"2915":2}}],["15088",{"2":{"160":1}}],["15083",{"2":{"160":1}}],["15029",{"2":{"134":2}}],["15020",{"2":{"134":1}}],["15021",{"2":{"134":1}}],["15073",{"2":{"134":1}}],["15068",{"2":{"134":1}}],["15055",{"2":{"134":1}}],["15019",{"2":{"134":1}}],["15014",{"2":{"134":1}}],["15017",{"2":{"134":1}}],["15012",{"2":{"134":1}}],["15011",{"2":{"134":1}}],["15010",{"2":{"134":1}}],["15018",{"2":{"134":1}}],["15047",{"2":{"134":1}}],["15040",{"2":{"134":2}}],["15031",{"2":{"134":1}}],["15034",{"2":{"134":1}}],["15037",{"2":{"133":1,"134":1}}],["1500",{"2":{"655":2,"1487":1}}],["15006",{"2":{"160":1}}],["15004",{"2":{"134":1}}],["15003",{"2":{"134":1}}],["15002",{"2":{"134":1}}],["18x4",{"2":{"1155":1}}],["18x8",{"2":{"1121":1}}],["18x11",{"2":{"1087":1}}],["18x12",{"2":{"721":1}}],["18499",{"2":{"199":1}}],["18455",{"2":{"191":1}}],["18450",{"2":{"191":1}}],["18459",{"2":{"191":1}}],["18449",{"2":{"191":1}}],["18441",{"2":{"191":1}}],["18477",{"2":{"191":1}}],["18475",{"2":{"191":1}}],["18472",{"2":{"191":1}}],["1840",{"2":{"222":1}}],["18408",{"2":{"191":1}}],["18403",{"2":{"191":1}}],["18402",{"2":{"191":1}}],["18404",{"2":{"190":1,"191":1}}],["18463",{"2":{"199":1}}],["18467",{"2":{"191":1}}],["18464",{"2":{"191":1}}],["18431",{"2":{"191":1}}],["18432",{"2":{"191":1}}],["18439",{"2":{"191":1}}],["18437",{"2":{"191":1}}],["18438880",{"2":{"160":1}}],["18428",{"2":{"191":1}}],["18426",{"2":{"191":1}}],["18423",{"2":{"191":1}}],["18424",{"2":{"191":1}}],["18421",{"2":{"191":1}}],["18414",{"2":{"191":1}}],["18419",{"2":{"191":1}}],["18418",{"2":{"191":1}}],["18417",{"2":{"191":1}}],["18415",{"2":{"191":1}}],["18521",{"2":{"249":1}}],["18527",{"2":{"191":1}}],["18581",{"2":{"191":1}}],["18588",{"2":{"188":1,"191":1}}],["18574",{"2":{"191":1}}],["18577",{"2":{"191":1}}],["18557",{"2":{"191":1}}],["18553",{"2":{"191":1}}],["18566",{"2":{"191":1}}],["18560",{"2":{"191":1}}],["18565",{"2":{"190":1,"191":1}}],["18545",{"2":{"191":1}}],["18544",{"2":{"191":1}}],["18593",{"2":{"191":1}}],["18594",{"2":{"191":1}}],["18599",{"2":{"191":1}}],["18592",{"2":{"191":1}}],["18513",{"2":{"190":1,"191":1}}],["183874",{"2":{"2398":1}}],["183883",{"2":{"2398":3}}],["18314",{"2":{"328":1}}],["18310",{"2":{"191":1}}],["18371",{"2":{"199":1}}],["18370",{"2":{"191":1}}],["18351",{"2":{"191":1}}],["18352",{"2":{"191":1}}],["18332",{"2":{"277":1}}],["18338",{"2":{"191":1}}],["18333",{"2":{"191":1}}],["18345",{"2":{"191":1}}],["18394",{"2":{"191":1}}],["18399",{"2":{"191":1}}],["18396",{"2":{"191":1}}],["18366",{"2":{"191":1}}],["18363",{"2":{"190":1,"191":1}}],["18323",{"2":{"191":1}}],["18309",{"2":{"189":1,"191":1}}],["187",{"2":{"1840":1,"2060":1}}],["18734",{"2":{"191":1}}],["18730",{"2":{"191":1}}],["18725",{"2":{"191":1}}],["18729",{"2":{"191":2}}],["18728",{"2":{"191":1}}],["18727",{"2":{"191":1}}],["18726",{"2":{"191":2}}],["18720",{"2":{"191":1}}],["18721",{"2":{"191":1}}],["18701",{"2":{"191":1}}],["18700",{"2":{"191":1}}],["18709",{"2":{"191":1}}],["18766",{"2":{"191":1}}],["18767",{"2":{"191":1}}],["18769",{"2":{"188":1,"191":1}}],["18751",{"2":{"191":1}}],["18753",{"2":{"191":2}}],["18750",{"2":{"191":1}}],["18716",{"2":{"191":1}}],["18715",{"2":{"191":1}}],["18714",{"2":{"191":1}}],["18717",{"2":{"191":1}}],["18710",{"2":{"188":1,"191":1}}],["18775",{"2":{"191":1}}],["18774",{"2":{"190":1,"191":1}}],["18776",{"2":{"189":1,"191":1}}],["18745",{"2":{"199":1}}],["18749",{"2":{"188":1,"191":1}}],["18740",{"2":{"188":1,"191":1}}],["18789",{"2":{"191":1}}],["18781",{"2":{"191":1}}],["18787",{"2":{"188":1,"191":1}}],["18782",{"2":{"188":1,"191":1}}],["18791",{"2":{"191":1}}],["18796",{"2":{"188":1,"191":1}}],["18792",{"2":{"188":1,"191":1}}],["18249",{"2":{"191":1}}],["18244",{"2":{"191":1}}],["18205",{"2":{"191":1}}],["18299",{"2":{"191":1}}],["18298",{"2":{"191":1}}],["18297",{"2":{"191":1}}],["18292",{"2":{"191":1}}],["18290",{"2":{"188":1,"191":1}}],["18268",{"2":{"191":1}}],["18262",{"2":{"191":1}}],["18260",{"2":{"191":1}}],["18259",{"2":{"191":1}}],["18215",{"2":{"191":2}}],["18212",{"2":{"191":1}}],["18289",{"2":{"191":1}}],["18279",{"2":{"191":1}}],["18274",{"2":{"191":1}}],["18271",{"2":{"188":1,"191":1}}],["18234",{"2":{"191":1}}],["18235",{"2":{"191":1}}],["18230",{"2":{"191":1}}],["18236",{"2":{"189":1,"191":1}}],["18224",{"2":{"191":1}}],["18228",{"2":{"191":1}}],["18222",{"2":{"191":1}}],["18654",{"2":{"191":1}}],["18650",{"2":{"191":1}}],["18651",{"2":{"191":1}}],["18659",{"2":{"190":1,"191":1}}],["18617",{"2":{"191":1}}],["18613",{"2":{"191":1}}],["18618",{"2":{"191":1}}],["18615",{"2":{"191":1}}],["18692",{"2":{"191":1}}],["18693",{"2":{"191":1}}],["18690",{"2":{"191":1}}],["18687",{"2":{"191":1}}],["18689",{"2":{"191":1}}],["18683",{"2":{"188":1,"191":1}}],["18649",{"2":{"191":1}}],["18640",{"2":{"191":1}}],["18641",{"2":{"191":1}}],["18643",{"2":{"188":1,"191":1}}],["18629",{"2":{"191":1}}],["18609",{"2":{"191":1}}],["18608",{"2":{"191":1}}],["18606",{"2":{"191":1}}],["18601",{"2":{"188":1,"191":1}}],["18638",{"2":{"222":1}}],["18635",{"2":{"191":1}}],["18631",{"2":{"191":1}}],["18637",{"2":{"189":1,"191":1}}],["18634",{"2":{"188":1,"191":1}}],["18668",{"2":{"191":1}}],["18667",{"2":{"191":1}}],["18662",{"2":{"191":1}}],["18669",{"2":{"188":1,"191":1}}],["18660",{"2":{"188":1,"191":1}}],["189kbps",{"2":{"568":1,"2268":1}}],["18915",{"2":{"199":1}}],["18910",{"2":{"191":1}}],["18921f",{"2":{"1487":1}}],["18921",{"2":{"191":1}}],["18924",{"2":{"191":1}}],["18984",{"2":{"191":1}}],["18982",{"2":{"191":1}}],["1897",{"2":{"747":1}}],["18977",{"2":{"191":1}}],["18979",{"2":{"191":1}}],["18978",{"2":{"191":1}}],["18974",{"2":{"191":1}}],["18973",{"2":{"191":1}}],["18972",{"2":{"188":1,"191":1}}],["18933",{"2":{"191":1}}],["18939",{"2":{"188":1,"191":1}}],["189000",{"2":{"1204":1}}],["18908",{"2":{"191":1}}],["18901",{"2":{"189":1,"191":1}}],["18992",{"2":{"191":1}}],["18999",{"2":{"191":1}}],["18997",{"2":{"191":1}}],["18991",{"2":{"191":1}}],["18998",{"2":{"191":1}}],["18996",{"2":{"191":1}}],["1895",{"2":{"746":1}}],["18954",{"2":{"191":1}}],["18956",{"2":{"191":1}}],["18959",{"2":{"191":1}}],["18952",{"2":{"191":1}}],["18951",{"2":{"191":1}}],["18958",{"2":{"188":1,"191":1}}],["18943",{"2":{"199":1}}],["18944",{"2":{"191":1}}],["18942",{"2":{"191":1}}],["18940",{"2":{"191":1,"199":1}}],["18949",{"2":{"191":1}}],["18948",{"2":{"191":1}}],["18947",{"2":{"191":1}}],["18946",{"2":{"191":1}}],["18965",{"2":{"191":1}}],["18969",{"2":{"191":1}}],["18961",{"2":{"188":1,"191":1}}],["18964",{"2":{"188":1,"191":1}}],["18963",{"2":{"188":1,"191":1}}],["18962",{"2":{"188":1,"191":1}}],["188",{"2":{"1840":1,"2060":1}}],["18822",{"2":{"191":1}}],["18852",{"2":{"199":1}}],["18855",{"2":{"191":1}}],["18859",{"2":{"191":1}}],["18858",{"2":{"191":1}}],["18887",{"2":{"191":1}}],["18884",{"2":{"191":1}}],["18886",{"2":{"191":1}}],["18882",{"2":{"188":1,"191":1}}],["18876",{"2":{"191":1}}],["18878",{"2":{"191":1}}],["18874",{"2":{"191":1}}],["18877",{"2":{"188":1,"191":1}}],["18860",{"2":{"191":1}}],["18866",{"2":{"191":1}}],["18867",{"2":{"191":1}}],["18864",{"2":{"188":1,"191":1}}],["18811",{"2":{"191":1}}],["18804",{"2":{"191":1}}],["18806",{"2":{"191":1}}],["18803",{"2":{"191":1}}],["18800",{"2":{"188":1,"191":2}}],["18807",{"2":{"188":1,"191":1}}],["18838",{"2":{"191":1}}],["18837",{"2":{"191":1}}],["18832",{"2":{"188":1,"191":1}}],["18834",{"2":{"188":1,"191":1}}],["18890",{"2":{"199":1}}],["18898",{"2":{"188":1,"191":1}}],["18893",{"2":{"188":1,"191":1}}],["18892",{"2":{"188":1,"191":1}}],["18840",{"2":{"191":1}}],["18847",{"2":{"188":1,"191":1}}],["18844",{"2":{"188":1,"191":1}}],["18843",{"2":{"188":1,"191":1}}],["18196",{"2":{"191":1}}],["18194",{"2":{"191":1}}],["18195",{"2":{"191":1}}],["18183",{"2":{"191":1}}],["18178",{"2":{"191":1}}],["18175",{"2":{"176":1}}],["18116",{"2":{"176":1}}],["18117",{"2":{"176":1}}],["18108",{"2":{"191":1}}],["18101",{"2":{"191":1}}],["18102",{"2":{"176":1}}],["18100",{"2":{"176":1}}],["18168",{"2":{"176":1}}],["18131",{"2":{"176":1}}],["18152",{"2":{"169":1,"176":1}}],["18",{"2":{"114":1,"407":1,"826":1,"857":1,"1024":1,"1486":1,"1521":1,"1680":1,"1738":3,"1839":1,"1962":2,"2011":3,"2513":3,"2529":3,"2666":1,"2707":1,"2761":1,"2768":3}}],["180°",{"2":{"1735":1}}],["18098",{"2":{"191":1}}],["18099",{"2":{"176":1}}],["18066",{"2":{"199":1}}],["18060",{"2":{"190":1,"191":1}}],["18067",{"2":{"176":1}}],["18063",{"2":{"176":1}}],["18028",{"2":{"176":1}}],["18025",{"2":{"176":1}}],["18020",{"2":{"176":1}}],["18029",{"2":{"176":1}}],["18036",{"2":{"191":1}}],["18039",{"2":{"176":1}}],["18038",{"2":{"176":1}}],["18032",{"2":{"176":1}}],["18037",{"2":{"176":1}}],["18059",{"2":{"285":1}}],["18058",{"2":{"191":1}}],["18050",{"2":{"176":1}}],["18056",{"2":{"176":1}}],["18057",{"2":{"176":1}}],["18018",{"2":{"176":1}}],["18016",{"2":{"176":1}}],["18011",{"2":{"176":1}}],["18044",{"2":{"191":1}}],["18043",{"2":{"176":1}}],["18045",{"2":{"176":1}}],["18042",{"2":{"176":1}}],["18006",{"2":{"191":1}}],["18008",{"2":{"176":1}}],["18007",{"2":{"176":1}}],["18000",{"2":{"176":1}}],["1800",{"2":{"57":2,"222":1,"308":1,"1961":1,"2778":1,"2781":1}}],["180",{"2":{"31":2,"34":2,"332":2,"639":1,"1053":1,"1839":1,"1950":2,"1955":3,"1956":2,"1966":2,"1978":2,"1980":2,"2044":2,"2280":2,"2283":1,"2750":1}}],["14k5",{"2":{"1159":1}}],["14",{"2":{"407":1,"692":4,"1159":1,"1486":1,"1680":1,"1738":3,"1919":2,"1962":1,"2009":1,"2011":3,"2182":1,"2258":1,"2478":1,"2480":1,"2513":3,"2520":2,"2529":3,"2707":2,"2781":4}}],["14674",{"2":{"160":1}}],["14678",{"2":{"134":1}}],["14655",{"2":{"134":1}}],["14659",{"2":{"133":1,"134":1}}],["14639",{"2":{"134":1}}],["14662",{"2":{"134":1}}],["14699",{"2":{"134":1}}],["14600",{"2":{"134":1}}],["149",{"2":{"1840":1,"2060":1}}],["14944",{"2":{"266":1}}],["14948",{"2":{"160":1}}],["14947",{"2":{"134":1}}],["14934",{"2":{"134":1}}],["14906",{"2":{"134":1}}],["14989",{"2":{"160":1}}],["14982",{"2":{"134":1}}],["14983",{"2":{"134":1}}],["14980",{"2":{"134":1}}],["14967",{"2":{"134":1}}],["14969",{"2":{"133":1,"134":1}}],["14928",{"2":{"134":1}}],["14919",{"2":{"134":1}}],["14917",{"2":{"133":1,"134":1}}],["14975",{"2":{"134":1}}],["14973",{"2":{"134":1}}],["14976",{"2":{"133":1,"134":1}}],["14972",{"2":{"133":1,"134":1}}],["14814",{"2":{"199":1}}],["14877",{"2":{"176":1}}],["14879",{"2":{"134":1}}],["14872",{"2":{"134":1}}],["14864",{"2":{"134":1}}],["14848",{"2":{"134":1}}],["14835",{"2":{"134":1}}],["14839",{"2":{"133":1,"134":1}}],["14898",{"2":{"134":1}}],["14899",{"2":{"133":1,"134":1}}],["14895",{"2":{"133":1,"134":1}}],["14894",{"2":{"133":1,"134":1}}],["14888",{"2":{"133":1,"134":1}}],["14859",{"2":{"134":1}}],["14854",{"2":{"134":1}}],["14858",{"2":{"133":1,"134":1}}],["14855",{"2":{"133":1,"134":1}}],["1471",{"2":{"1969":1}}],["14713",{"2":{"134":1}}],["14764",{"2":{"746":2}}],["14760",{"2":{"133":1,"134":1}}],["14785",{"2":{"134":1}}],["14780",{"2":{"134":1}}],["14751",{"2":{"134":1}}],["14752",{"2":{"131":1,"134":1}}],["14730",{"2":{"134":1}}],["14775",{"2":{"134":1}}],["14747",{"2":{"134":1}}],["14749",{"2":{"134":1}}],["14740",{"2":{"134":1}}],["14745",{"2":{"133":1,"134":1}}],["14743",{"2":{"133":1,"134":1}}],["14720",{"2":{"134":1}}],["14729",{"2":{"134":1}}],["14727",{"2":{"133":1,"134":1}}],["14726",{"2":{"133":1,"134":1}}],["14723",{"2":{"133":1,"134":1}}],["14243",{"2":{"160":1}}],["14248",{"2":{"134":2}}],["14261",{"2":{"134":1}}],["14252",{"2":{"134":1}}],["14235",{"2":{"134":1}}],["14231",{"2":{"133":1,"134":1}}],["14289",{"2":{"134":1}}],["14200",{"2":{"176":1}}],["14208",{"2":{"134":1}}],["14206",{"2":{"134":1}}],["14201",{"2":{"134":1}}],["14207",{"2":{"133":1,"134":1}}],["14215",{"2":{"134":1}}],["14213",{"2":{"134":1}}],["14216",{"2":{"133":1,"134":1}}],["14210",{"2":{"133":1,"134":1}}],["144",{"2":{"884":1,"985":1,"1121":1,"1839":3,"2437":1}}],["14464",{"2":{"134":1}}],["14462",{"2":{"132":1,"134":1}}],["14452",{"2":{"191":1}}],["14455",{"2":{"134":1}}],["14454",{"2":{"134":1}}],["14456",{"2":{"133":1,"134":1}}],["14442",{"2":{"134":1}}],["14420",{"2":{"176":1}}],["14421",{"2":{"134":1}}],["14422",{"2":{"130":1,"134":1}}],["14497",{"2":{"134":1}}],["14490",{"2":{"134":1}}],["14496",{"2":{"134":1}}],["14415",{"2":{"134":1}}],["14413",{"2":{"134":1}}],["14419",{"2":{"134":1}}],["14408",{"2":{"134":1}}],["14404",{"2":{"133":1,"134":1}}],["14474",{"2":{"134":1}}],["14470",{"2":{"134":1}}],["14434",{"2":{"134":1}}],["14439",{"2":{"134":2}}],["14433",{"2":{"134":1}}],["14430",{"2":{"134":1}}],["14325",{"2":{"134":1}}],["14327",{"2":{"134":1}}],["14399",{"2":{"134":1}}],["14372",{"2":{"134":1}}],["14374",{"2":{"134":1}}],["14370",{"2":{"132":1,"134":1}}],["14343",{"2":{"134":1}}],["14348",{"2":{"133":1,"134":1}}],["14389",{"2":{"134":1}}],["14380",{"2":{"133":1,"134":1}}],["14388",{"2":{"130":1,"134":1}}],["14308",{"2":{"133":1,"134":1}}],["14580",{"2":{"160":1}}],["14584",{"2":{"130":1,"134":1}}],["14590",{"2":{"134":1}}],["14591",{"2":{"131":1,"134":1}}],["14546",{"2":{"134":1}}],["14508",{"2":{"134":1}}],["14530",{"2":{"133":1,"134":1}}],["14194",{"2":{"134":1}}],["14195",{"2":{"131":1,"134":1}}],["14181",{"2":{"134":1}}],["14155",{"2":{"134":1}}],["14150",{"2":{"114":1}}],["14174",{"2":{"134":1}}],["14171",{"2":{"114":1}}],["14172",{"2":{"114":1}}],["14118",{"2":{"114":1}}],["14146",{"2":{"114":1}}],["14142",{"2":{"114":1}}],["14140",{"2":{"114":1}}],["14144",{"2":{"114":2}}],["14123",{"2":{"114":1}}],["14120",{"2":{"114":1}}],["14106",{"2":{"114":1}}],["14108",{"2":{"114":1}}],["14105",{"2":{"114":1}}],["14136",{"2":{"114":1}}],["14133",{"2":{"114":1}}],["14134",{"2":{"113":1,"114":1}}],["14132",{"2":{"113":1,"114":1}}],["140",{"2":{"2910":1}}],["14091",{"2":{"160":1}}],["14095",{"2":{"114":1}}],["14090",{"2":{"114":1}}],["14097",{"2":{"114":1}}],["14052",{"2":{"114":1}}],["14051",{"2":{"114":1}}],["14017",{"2":{"114":1}}],["14065",{"2":{"160":1}}],["14061",{"2":{"114":1}}],["14063",{"2":{"114":1}}],["14048",{"2":{"114":1}}],["14045",{"2":{"114":1}}],["14033",{"2":{"134":1}}],["14039",{"2":{"114":1}}],["14038",{"2":{"114":1}}],["14005",{"2":{"114":1}}],["14007",{"2":{"114":1}}],["14089",{"2":{"114":1}}],["14084",{"2":{"114":1}}],["14080",{"2":{"114":1}}],["14083",{"2":{"114":2}}],["14079",{"2":{"114":1}}],["14025",{"2":{"113":1,"114":1}}],["12bit",{"2":{"1482":1}}],["12x12",{"2":{"985":1}}],["12x16",{"2":{"916":1}}],["12x8",{"2":{"951":1}}],["12x4",{"2":{"681":1}}],["12e3",{"2":{"294":1}}],["12e4",{"2":{"291":1}}],["12",{"2":{"199":1,"266":1,"348":1,"371":2,"373":1,"406":9,"407":1,"563":3,"690":1,"692":4,"698":1,"716":1,"797":1,"860":1,"1027":1,"1061":1,"1095":1,"1129":1,"1313":1,"1487":1,"1521":2,"1675":1,"1680":1,"1734":1,"1738":3,"1919":3,"1962":1,"2011":3,"2059":1,"2179":1,"2182":4,"2480":1,"2513":3,"2520":3,"2529":3,"2748":1}}],["12674",{"2":{"114":1}}],["12670",{"2":{"114":1,"134":1}}],["12671",{"2":{"94":1}}],["12632",{"2":{"114":1}}],["12637",{"2":{"114":1}}],["12633",{"2":{"93":1}}],["12692",{"2":{"134":1}}],["12691",{"2":{"134":1}}],["12699",{"2":{"114":1}}],["12697",{"2":{"94":1}}],["12689",{"2":{"114":1}}],["12685",{"2":{"93":1}}],["12669",{"2":{"114":1}}],["12641",{"2":{"114":1}}],["12602",{"2":{"94":1}}],["12600",{"2":{"93":1}}],["12625",{"2":{"94":1}}],["12626",{"2":{"94":1}}],["12651",{"2":{"93":1}}],["12617",{"2":{"114":1}}],["12619",{"2":{"93":1}}],["12613",{"2":{"86":1}}],["1252",{"2":{"2324":1}}],["125",{"2":{"1930":1,"1960":2}}],["1250",{"2":{"1282":1,"2903":1,"2905":1}}],["12508",{"2":{"130":1,"134":1}}],["12509",{"2":{"93":1}}],["12538",{"2":{"114":1}}],["12567",{"2":{"114":1}}],["12560",{"2":{"93":1}}],["12561",{"2":{"92":1}}],["12588",{"2":{"93":1}}],["12580",{"2":{"93":1}}],["121",{"2":{"1680":1}}],["12159",{"2":{"114":1}}],["12116",{"2":{"114":1}}],["12160",{"2":{"94":1}}],["12161",{"2":{"94":1}}],["12187",{"2":{"94":1}}],["12197",{"2":{"94":1}}],["12108",{"2":{"134":1}}],["12109",{"2":{"94":1}}],["12107",{"2":{"93":1}}],["12172",{"2":{"93":1}}],["12425",{"2":{"114":1}}],["12495",{"2":{"94":1}}],["12403",{"2":{"93":1}}],["12444",{"2":{"93":1}}],["12417",{"2":{"93":1}}],["12419",{"2":{"93":1}}],["12435",{"2":{"93":1}}],["12482",{"2":{"92":1}}],["123",{"2":{"1440":1,"1680":1}}],["12315",{"2":{"114":1}}],["12314",{"2":{"114":1}}],["12317",{"2":{"93":1}}],["12386",{"2":{"114":1}}],["12327",{"2":{"94":1}}],["12342",{"2":{"93":1}}],["12361",{"2":{"93":1}}],["122",{"2":{"218":5,"1680":1}}],["12240",{"2":{"114":1}}],["12249",{"2":{"94":1}}],["12238",{"2":{"114":1}}],["12237",{"2":{"93":1}}],["12211",{"2":{"114":1}}],["12216",{"2":{"93":1}}],["12284",{"2":{"94":1}}],["12286",{"2":{"94":1}}],["12258",{"2":{"93":1}}],["12226",{"2":{"86":1}}],["129",{"2":{"1521":2}}],["129u",{"2":{"767":1}}],["12950",{"2":{"134":1}}],["12951",{"2":{"114":1}}],["12947",{"2":{"131":1,"134":2}}],["12946",{"2":{"114":1}}],["12949",{"2":{"114":1}}],["12945",{"2":{"92":1}}],["12914",{"2":{"114":1}}],["12915",{"2":{"95":1}}],["12987",{"2":{"93":1}}],["12985",{"2":{"93":1}}],["12936",{"2":{"93":1}}],["12933",{"2":{"92":1}}],["12977",{"2":{"92":1}}],["12976",{"2":{"92":1}}],["128x40",{"2":{"2746":2}}],["128x128",{"2":{"1945":1,"1954":3,"2746":2}}],["128x32",{"2":{"1945":2,"1954":1,"1955":1,"1956":1,"2276":1,"2282":1,"2746":1}}],["128x64",{"0":{"1954":1},"1":{"1955":1},"2":{"232":1,"1945":3,"1951":1,"1954":2,"2276":1,"2746":3}}],["128u",{"2":{"716":1}}],["128",{"2":{"690":1,"764":1,"1244":1,"1265":1,"1297":1,"1532":1,"1547":1,"1548":1,"1655":1,"1656":2,"1951":1,"1954":1,"1956":1,"1983":4,"2282":1,"2323":1,"2765":5,"2864":1,"2871":1}}],["12870",{"2":{"114":1}}],["12878",{"2":{"92":1}}],["12819",{"2":{"114":1}}],["12893",{"2":{"114":1}}],["12895",{"2":{"92":1}}],["12859",{"2":{"114":1}}],["12851",{"2":{"114":1}}],["12856",{"2":{"95":1}}],["12845",{"2":{"114":1}}],["12846",{"2":{"94":1}}],["12831",{"2":{"114":1}}],["12833",{"2":{"95":1}}],["12832",{"2":{"95":1}}],["12805",{"2":{"93":1}}],["12861",{"2":{"114":1}}],["12864",{"2":{"94":1}}],["12868",{"2":{"93":1}}],["12866",{"2":{"92":1}}],["12828",{"2":{"93":1}}],["12888",{"2":{"92":1}}],["12881",{"2":{"86":1}}],["127",{"2":{"176":1,"562":2,"1734":1,"1736":2,"1737":1,"1846":1,"1918":2,"1919":1,"1920":1,"1949":1,"1969":1,"1976":5,"1978":4,"1979":2,"1983":8,"1985":5,"2069":1,"2178":1,"2180":2,"2279":1,"2323":2,"2520":1}}],["12795",{"2":{"160":2}}],["12797",{"2":{"114":1}}],["12789",{"2":{"114":1}}],["12767",{"2":{"114":1}}],["12755",{"2":{"114":1}}],["12754",{"2":{"114":1}}],["12750",{"2":{"92":1}}],["12770",{"2":{"94":1}}],["12721",{"2":{"93":1}}],["12723",{"2":{"92":1}}],["120",{"2":{"1481":1,"1680":1,"1931":1,"1979":2,"2180":1,"2909":2,"2914":1}}],["12097",{"2":{"114":1}}],["12091",{"2":{"93":1}}],["12023",{"2":{"114":1}}],["12022",{"2":{"73":1}}],["12069",{"2":{"114":1}}],["12067",{"2":{"94":1}}],["12063",{"2":{"93":1}}],["12054",{"2":{"94":1}}],["12086",{"2":{"93":1}}],["12018",{"2":{"93":1}}],["12039",{"2":{"73":1}}],["12001",{"2":{"77":1}}],["12000",{"2":{"76":1,"1976":1}}],["120000",{"2":{"25":1}}],["1200",{"2":{"25":1,"1269":1,"1972":1,"1979":1}}],["11",{"0":{"1372":1},"2":{"145":1,"176":2,"191":1,"222":1,"249":1,"294":1,"373":2,"406":1,"407":1,"690":1,"692":4,"890":1,"1201":1,"1486":1,"1521":1,"1680":1,"1738":3,"1919":2,"2011":3,"2182":2,"2258":1,"2270":1,"2288":1,"2296":4,"2480":1,"2495":1,"2513":3,"2520":2,"2529":3,"2560":1,"2694":1,"2748":1,"2770":1}}],["112",{"2":{"1521":1,"1680":1,"1840":3,"2060":3,"2864":1,"2871":1}}],["11261",{"2":{"77":1}}],["11237",{"2":{"75":1}}],["118",{"2":{"1680":1}}],["11842",{"2":{"114":1}}],["11846",{"2":{"77":1}}],["11896",{"2":{"114":1}}],["11890",{"2":{"94":1}}],["11893",{"2":{"76":1}}],["11864",{"2":{"92":1}}],["11863",{"2":{"75":1}}],["11820",{"2":{"75":1}}],["11829",{"2":{"75":1}}],["11823",{"2":{"75":1}}],["11824",{"2":{"74":1}}],["11804",{"2":{"75":1}}],["11805",{"2":{"75":1}}],["119972",{"2":{"2398":2}}],["119",{"2":{"1680":1}}],["11988",{"2":{"93":1}}],["11981",{"2":{"72":1}}],["11978",{"2":{"86":1}}],["11927",{"2":{"77":1}}],["11928",{"2":{"76":1}}],["11930",{"2":{"107":1,"114":1}}],["11935",{"2":{"93":1}}],["11936",{"2":{"76":1}}],["11938",{"2":{"74":1}}],["11907",{"2":{"76":1}}],["11905",{"2":{"76":1}}],["11966",{"2":{"75":1}}],["11943",{"2":{"75":1}}],["11940",{"2":{"75":1}}],["11913",{"2":{"74":1}}],["11912",{"2":{"74":1}}],["11000010",{"2":{"2288":1}}],["11001000",{"2":{"2288":1}}],["110",{"2":{"1680":1,"2288":1,"2909":2,"2910":2}}],["11025u",{"2":{"716":1}}],["11036",{"2":{"134":1}}],["11083",{"2":{"93":1}}],["11059",{"2":{"134":2}}],["11055",{"2":{"93":1}}],["11057",{"2":{"74":1}}],["11046",{"2":{"74":1}}],["117",{"2":{"1019":1,"1521":1,"1680":1,"2059":1,"2176":1}}],["11727",{"2":{"93":1}}],["11728",{"2":{"73":1}}],["11793",{"2":{"77":1}}],["11750",{"2":{"75":1}}],["11751",{"2":{"75":1}}],["11768",{"2":{"74":1}}],["116",{"2":{"1521":5,"1680":1}}],["11621",{"2":{"77":1}}],["11620",{"2":{"77":1}}],["11615",{"2":{"77":1}}],["11617",{"2":{"77":1}}],["11646",{"2":{"77":1}}],["11630",{"2":{"77":1}}],["11637",{"2":{"75":1}}],["11607",{"2":{"77":1}}],["11600",{"2":{"73":1}}],["11689",{"2":{"77":1}}],["11688",{"2":{"76":1}}],["11687",{"2":{"74":1}}],["11672",{"2":{"75":1}}],["113",{"2":{"1680":1}}],["11350",{"2":{"74":1}}],["11307",{"2":{"74":1}}],["111",{"2":{"1680":1}}],["11151",{"2":{"114":1}}],["11154",{"2":{"74":1}}],["11123",{"2":{"77":1}}],["11111",{"2":{"77":1}}],["11108",{"2":{"76":1}}],["11101",{"2":{"76":1}}],["11165",{"2":{"75":1}}],["11168",{"2":{"75":1}}],["11162",{"2":{"73":1}}],["11195",{"2":{"72":1}}],["115",{"2":{"1517":2,"1680":1}}],["115200",{"2":{"1204":1,"1269":1,"2291":1}}],["11528",{"2":{"199":1}}],["11529",{"2":{"77":1}}],["11536",{"2":{"93":1}}],["11588",{"2":{"77":1}}],["11584",{"2":{"73":1}}],["11504",{"2":{"77":1}}],["11502",{"2":{"76":1}}],["11548",{"2":{"76":1}}],["11544",{"2":{"76":1}}],["11542",{"2":{"76":1}}],["11576",{"2":{"75":1}}],["11570",{"2":{"74":1}}],["11553",{"2":{"74":1}}],["11552",{"2":{"74":1}}],["11519",{"2":{"74":1}}],["11598",{"2":{"77":1}}],["11595",{"2":{"74":1}}],["11594",{"2":{"73":1}}],["114",{"2":{"1521":2,"1680":1,"1919":1,"2520":1}}],["11487",{"2":{"92":1}}],["11495",{"2":{"77":1}}],["11492",{"2":{"76":1}}],["11408",{"2":{"76":1}}],["11409",{"2":{"73":1}}],["11422",{"2":{"114":1}}],["11426",{"2":{"74":1}}],["11427",{"2":{"73":1}}],["11450",{"2":{"73":1}}],["11435",{"2":{"73":1}}],["11473",{"2":{"73":1}}],["11449",{"2":{"77":1}}],["11447",{"2":{"73":1}}],["11448",{"2":{"73":1}}],["11414",{"2":{"77":1}}],["11413",{"2":{"77":1}}],["11418",{"2":{"74":1}}],["11412",{"2":{"73":1}}],["11415",{"2":{"72":1}}],["1360",{"2":{"2580":1}}],["13606",{"2":{"114":1}}],["13697",{"2":{"114":1}}],["13696",{"2":{"114":1}}],["13695",{"2":{"114":1}}],["13692",{"2":{"114":1}}],["13691",{"2":{"114":1}}],["13690",{"2":{"114":1}}],["13698",{"2":{"114":1}}],["13668",{"2":{"114":1}}],["13667",{"2":{"114":1}}],["13665",{"2":{"114":1}}],["13664",{"2":{"114":1}}],["13658",{"2":{"114":1}}],["13653",{"2":{"114":1}}],["13633",{"2":{"114":1}}],["13688",{"2":{"114":1}}],["13687",{"2":{"114":1}}],["13686",{"2":{"114":1}}],["13685",{"2":{"114":1}}],["13684",{"2":{"114":1}}],["13681",{"2":{"114":1}}],["13689",{"2":{"114":1}}],["13680",{"2":{"114":1}}],["13648",{"2":{"114":1}}],["13647",{"2":{"114":1}}],["13646",{"2":{"114":1}}],["13645",{"2":{"114":1}}],["13649",{"2":{"114":1}}],["13641",{"2":{"114":1}}],["13629",{"2":{"114":1}}],["13677",{"2":{"114":2}}],["13672",{"2":{"114":1}}],["13671",{"2":{"114":1}}],["13676",{"2":{"114":1}}],["13673",{"2":{"113":1,"114":1}}],["135°",{"2":{"1735":1}}],["135",{"2":{"852":1,"1497":1,"1839":1}}],["13546",{"2":{"114":1}}],["13542",{"2":{"114":1}}],["13525",{"2":{"114":1}}],["13523",{"2":{"107":1,"114":1}}],["13533",{"2":{"114":1}}],["13511",{"2":{"114":1}}],["13597",{"2":{"114":1}}],["13596",{"2":{"114":1}}],["13571",{"2":{"114":1}}],["13570",{"2":{"114":1}}],["13551",{"2":{"114":1}}],["13550",{"2":{"114":1}}],["13559",{"2":{"114":1}}],["13504",{"2":{"114":1}}],["13502",{"2":{"114":1}}],["13588",{"2":{"114":1}}],["13566",{"2":{"114":1}}],["134217728",{"2":{"2501":1}}],["13425",{"2":{"114":1}}],["13471",{"2":{"114":1}}],["13470",{"2":{"114":1}}],["13404",{"2":{"114":1}}],["13405",{"2":{"114":1}}],["13403",{"2":{"114":1}}],["13481",{"2":{"114":1}}],["13480",{"2":{"114":1}}],["13442",{"2":{"114":1}}],["13457",{"2":{"114":1}}],["13454",{"2":{"114":1}}],["13450",{"2":{"114":1}}],["13433",{"2":{"114":1}}],["13430",{"2":{"114":1}}],["13418",{"2":{"107":1,"114":1}}],["13310",{"2":{"114":1}}],["13312",{"2":{"113":1,"114":1}}],["13371",{"2":{"114":1}}],["1337",{"2":{"114":1}}],["13377",{"2":{"114":1}}],["13398",{"2":{"114":1}}],["13399",{"2":{"114":1}}],["13389",{"2":{"114":1}}],["13383",{"2":{"114":1}}],["13366",{"2":{"114":1}}],["13360",{"2":{"114":1}}],["13350",{"2":{"114":1}}],["13349",{"2":{"114":1}}],["13333",{"2":{"114":1}}],["13330",{"2":{"114":2}}],["13321",{"2":{"114":1}}],["13304",{"2":{"114":1}}],["13309",{"2":{"114":1}}],["13302",{"2":{"114":1}}],["132x162",{"2":{"2746":1,"2749":1}}],["132x64",{"2":{"1951":1}}],["132",{"2":{"2398":1}}],["13286",{"2":{"139":1,"145":1}}],["13243",{"2":{"114":1}}],["13247",{"2":{"114":1}}],["13209",{"2":{"114":1}}],["13201",{"2":{"114":1}}],["13271",{"2":{"114":1}}],["13228",{"2":{"114":1}}],["13297",{"2":{"114":1}}],["13298",{"2":{"114":1}}],["13296",{"2":{"114":1}}],["13293",{"2":{"114":1}}],["13253",{"2":{"114":1}}],["13251",{"2":{"114":1}}],["13257",{"2":{"114":1}}],["13252",{"2":{"114":1}}],["13236",{"2":{"114":1}}],["13239",{"2":{"114":1}}],["13238",{"2":{"114":1}}],["13237",{"2":{"114":1}}],["131",{"2":{"1521":1}}],["13146",{"2":{"114":1}}],["13147",{"2":{"114":1}}],["13189",{"2":{"114":1}}],["13165",{"2":{"114":1}}],["13172",{"2":{"114":1}}],["13154",{"2":{"114":1}}],["13152",{"2":{"114":1}}],["13151",{"2":{"114":1}}],["13150",{"2":{"114":1}}],["13955",{"2":{"134":1}}],["13954",{"2":{"114":1}}],["13944",{"2":{"134":1}}],["13993",{"2":{"114":1}}],["13992",{"2":{"114":1}}],["13988",{"2":{"114":1}}],["13980",{"2":{"114":1}}],["13985",{"2":{"114":1}}],["13979",{"2":{"114":1}}],["13973",{"2":{"113":1,"114":1}}],["13937",{"2":{"114":1}}],["13931",{"2":{"114":1}}],["13932",{"2":{"114":1}}],["13918",{"2":{"133":1,"134":1}}],["13913",{"2":{"114":1}}],["13912",{"2":{"114":1}}],["13902",{"2":{"134":1}}],["13900",{"2":{"114":1}}],["13908",{"2":{"114":1}}],["13905",{"2":{"114":1}}],["13901",{"2":{"114":1}}],["13968",{"2":{"114":1}}],["13926",{"2":{"114":1}}],["13920",{"2":{"114":1}}],["13927",{"2":{"113":1,"114":1}}],["13810",{"2":{"114":1}}],["13819",{"2":{"114":1}}],["13886",{"2":{"114":1}}],["13885",{"2":{"114":1}}],["13872",{"2":{"114":1}}],["13877",{"2":{"114":1}}],["13838",{"2":{"114":1}}],["13831",{"2":{"114":1}}],["13832",{"2":{"114":1}}],["13830",{"2":{"114":1}}],["13826",{"2":{"114":1}}],["13821",{"2":{"114":1}}],["13823",{"2":{"114":1}}],["13850",{"2":{"114":1}}],["13890",{"2":{"133":1,"134":1}}],["13898",{"2":{"114":1}}],["13896",{"2":{"114":1}}],["13894",{"2":{"113":1,"114":1}}],["13801",{"2":{"114":1}}],["13804",{"2":{"114":1}}],["13800",{"2":{"114":1}}],["13842",{"2":{"134":1}}],["13846",{"2":{"114":1}}],["13843",{"2":{"113":1,"114":1}}],["137000",{"2":{"1204":1}}],["13706",{"2":{"114":1}}],["137kbps",{"2":{"568":1,"2268":1}}],["13789",{"2":{"134":1}}],["13724",{"2":{"114":1}}],["13722",{"2":{"114":1}}],["13720",{"2":{"114":1}}],["13728",{"2":{"114":1}}],["13799",{"2":{"114":1}}],["1375",{"2":{"1960":1}}],["13758",{"2":{"114":1}}],["13755",{"2":{"114":1}}],["13731",{"2":{"114":1}}],["13716",{"2":{"114":1}}],["13717",{"2":{"114":1}}],["13715",{"2":{"114":1}}],["13718",{"2":{"114":1}}],["13713",{"2":{"114":1}}],["13712",{"2":{"114":1}}],["13777",{"2":{"113":1,"114":1}}],["13740",{"2":{"114":1}}],["13747",{"2":{"114":1}}],["13749",{"2":{"113":1,"114":1}}],["13748",{"2":{"113":1,"114":1}}],["130",{"2":{"1521":2,"2074":1,"2903":1,"2905":1,"2910":1}}],["13056",{"2":{"114":1}}],["13098",{"2":{"114":1}}],["13089",{"2":{"114":1}}],["13081",{"2":{"107":1,"114":1}}],["13078",{"2":{"114":1}}],["13077",{"2":{"114":1}}],["13076",{"2":{"114":1}}],["13074",{"2":{"114":1}}],["13070",{"2":{"114":1}}],["13069",{"2":{"114":1}}],["13065",{"2":{"114":1}}],["13064",{"2":{"114":1}}],["13062",{"2":{"114":1}}],["13045",{"2":{"114":1}}],["13044",{"2":{"114":1}}],["13025",{"2":{"114":1}}],["13023",{"2":{"94":1}}],["13024",{"2":{"93":1}}],["13014",{"2":{"93":1}}],["13",{"2":{"70":1,"407":1,"690":1,"692":4,"1163":1,"1202":1,"1216":1,"1486":1,"1680":1,"1738":3,"1919":2,"1962":1,"2011":3,"2182":2,"2367":1,"2480":1,"2513":3,"2520":2,"2529":3,"2772":2,"2781":2}}],["17915",{"2":{"199":1}}],["17911",{"2":{"176":1}}],["17962",{"2":{"190":1,"191":1}}],["17999",{"2":{"176":1}}],["17996",{"2":{"176":1}}],["17989",{"2":{"176":1}}],["17935",{"2":{"191":1}}],["17936",{"2":{"176":1}}],["17931",{"2":{"176":1}}],["17905",{"2":{"176":1}}],["17904",{"2":{"176":2}}],["17923",{"2":{"176":1}}],["17940",{"2":{"167":1,"176":1}}],["17893",{"2":{"222":1}}],["17892",{"2":{"191":1}}],["17880",{"2":{"191":1}}],["17839",{"2":{"176":1}}],["17832",{"2":{"176":1}}],["17817",{"2":{"176":1}}],["17808",{"2":{"176":1}}],["17800",{"2":{"176":1}}],["17803",{"2":{"176":1}}],["17850",{"2":{"176":1}}],["17856",{"2":{"176":1}}],["17855",{"2":{"176":1}}],["17854",{"2":{"176":1}}],["17853",{"2":{"176":1}}],["17862",{"2":{"176":1}}],["17867",{"2":{"176":1}}],["17868",{"2":{"176":1}}],["17863",{"2":{"176":1}}],["17861",{"2":{"176":1}}],["17866",{"2":{"176":1}}],["17864",{"2":{"176":1}}],["17842",{"2":{"176":1}}],["17848",{"2":{"176":1}}],["17840",{"2":{"176":1}}],["17820",{"2":{"199":1}}],["17827",{"2":{"176":1}}],["17823",{"2":{"176":1}}],["17723",{"2":{"191":1}}],["17798",{"2":{"176":1}}],["17795",{"2":{"176":1}}],["17790",{"2":{"176":1}}],["17791",{"2":{"176":1}}],["17716",{"2":{"176":1}}],["17711",{"2":{"176":1}}],["17777",{"2":{"176":1}}],["17776",{"2":{"175":1,"176":1}}],["17732",{"2":{"176":1}}],["17735",{"2":{"176":1}}],["17734",{"2":{"176":1}}],["17786",{"2":{"176":1}}],["17755",{"2":{"176":1}}],["17760",{"2":{"176":1}}],["17748",{"2":{"176":1}}],["17745",{"2":{"176":1}}],["17740",{"2":{"176":1}}],["17706",{"2":{"191":1}}],["17702",{"2":{"176":1}}],["17707",{"2":{"176":1}}],["17708",{"2":{"176":1}}],["17703",{"2":{"176":1}}],["17693",{"2":{"176":1}}],["17695",{"2":{"176":1}}],["17663",{"2":{"191":1}}],["17661",{"2":{"176":1}}],["17669",{"2":{"176":1}}],["17678",{"2":{"176":1}}],["17675",{"2":{"176":1}}],["17679",{"2":{"176":1}}],["17638",{"2":{"176":1}}],["17632",{"2":{"176":1}}],["17639",{"2":{"176":1}}],["17684",{"2":{"176":1}}],["17658",{"2":{"176":1}}],["17656",{"2":{"176":1}}],["17652",{"2":{"176":1}}],["17655",{"2":{"176":1}}],["17654",{"2":{"176":1}}],["17651",{"2":{"176":1}}],["17650",{"2":{"176":1}}],["17645",{"2":{"176":1}}],["17647",{"2":{"176":1}}],["17643",{"2":{"176":1}}],["17615",{"2":{"176":1}}],["17611",{"2":{"176":1}}],["17612",{"2":{"176":1}}],["17613",{"2":{"175":1,"176":1}}],["17601",{"2":{"176":1}}],["17607",{"2":{"176":1}}],["17603",{"2":{"176":1}}],["17602",{"2":{"176":1}}],["175ms",{"2":{"2302":2}}],["175",{"2":{"1497":1,"2302":1}}],["17588",{"2":{"199":1}}],["17584",{"2":{"176":1}}],["17534",{"2":{"176":1}}],["17533",{"2":{"176":1}}],["17593",{"2":{"176":1}}],["17595",{"2":{"176":1}}],["17522",{"2":{"176":1}}],["17549",{"2":{"176":1}}],["17545",{"2":{"176":1}}],["17540",{"2":{"176":1}}],["17559",{"2":{"176":1}}],["17557",{"2":{"176":1}}],["17554",{"2":{"176":1}}],["17501",{"2":{"176":1}}],["17507",{"2":{"176":1}}],["17506",{"2":{"176":1}}],["17579",{"2":{"176":1}}],["17578",{"2":{"176":1}}],["17512",{"2":{"176":1}}],["17519",{"2":{"176":1}}],["17517",{"2":{"176":1}}],["17516",{"2":{"176":1}}],["17514",{"2":{"176":1}}],["174",{"2":{"251":1,"1326":2}}],["17463",{"2":{"176":1}}],["17414",{"2":{"176":1}}],["17492",{"2":{"176":1}}],["17459",{"2":{"176":2}}],["17439",{"2":{"176":1}}],["17435",{"2":{"176":1}}],["17438",{"2":{"176":2}}],["17423",{"2":{"176":2}}],["17426",{"2":{"176":1}}],["17420",{"2":{"176":1}}],["17488",{"2":{"176":1}}],["17481",{"2":{"176":1}}],["17482",{"2":{"175":2,"176":1}}],["17440",{"2":{"176":1}}],["17448",{"2":{"176":1}}],["17444",{"2":{"176":1}}],["17371",{"2":{"176":1}}],["17376",{"2":{"176":1}}],["17335",{"2":{"176":1}}],["17333",{"2":{"176":1}}],["17383",{"2":{"176":1}}],["17385",{"2":{"176":1}}],["17387",{"2":{"176":1}}],["17368",{"2":{"176":1}}],["17397",{"2":{"176":1}}],["17399",{"2":{"176":1}}],["17396",{"2":{"176":1}}],["17354",{"2":{"176":1}}],["17356",{"2":{"176":1}}],["17355",{"2":{"176":1}}],["17352",{"2":{"176":1}}],["17342",{"2":{"176":1}}],["17326",{"2":{"176":1}}],["172",{"2":{"1326":2}}],["17282",{"2":{"199":1}}],["17287",{"2":{"176":1}}],["17265",{"2":{"176":1}}],["17263",{"2":{"176":1}}],["17234",{"2":{"176":1}}],["17232",{"2":{"176":1}}],["17231",{"2":{"176":1}}],["17210",{"2":{"176":1}}],["17295",{"2":{"176":1}}],["17275",{"2":{"176":1}}],["17272",{"2":{"176":1}}],["17271",{"2":{"176":1}}],["17258",{"2":{"176":1}}],["17257",{"2":{"176":1}}],["17256",{"2":{"176":1}}],["17229",{"2":{"176":1}}],["17228",{"2":{"176":1}}],["17222",{"2":{"176":1}}],["170",{"2":{"2180":1}}],["17007",{"2":{"199":1}}],["17046",{"2":{"176":1}}],["17099",{"2":{"176":1}}],["17091",{"2":{"176":1}}],["17095",{"2":{"145":1}}],["17065",{"2":{"176":1}}],["17028",{"2":{"199":1}}],["17020",{"2":{"176":1}}],["17025",{"2":{"145":1}}],["17024",{"2":{"145":1}}],["17037",{"2":{"141":1,"145":1}}],["17189",{"2":{"191":1}}],["17184",{"2":{"176":1}}],["17129",{"2":{"191":1}}],["17174",{"2":{"176":1}}],["17178",{"2":{"176":1}}],["17176",{"2":{"175":1,"176":1}}],["17143",{"2":{"176":1}}],["17142",{"2":{"176":1}}],["17114",{"2":{"176":1}}],["17111",{"2":{"175":1,"176":1}}],["17156",{"2":{"145":1}}],["17150",{"2":{"145":1}}],["17136",{"2":{"145":1}}],["17133",{"2":{"145":1}}],["17104",{"2":{"145":1}}],["17106",{"2":{"145":1}}],["17",{"2":{"55":2,"111":2,"312":1,"396":1,"407":1,"1486":1,"1521":1,"1680":1,"1738":3,"1962":1,"2011":3,"2175":2,"2447":2,"2513":3,"2529":3,"2775":2,"2870":2,"2930":1}}],["10glbprf",{"2":{"2288":1}}],["10kohm",{"2":{"2260":1}}],["10kω",{"2":{"1294":1}}],["10ms",{"2":{"1968":1,"2905":1}}],["10µf",{"2":{"1691":1}}],["103",{"2":{"1680":1}}],["10388",{"2":{"63":1}}],["10bits",{"2":{"698":1}}],["10bit",{"2":{"698":1}}],["109",{"2":{"1680":1}}],["10904",{"2":{"114":1}}],["10997",{"2":{"74":1}}],["10976",{"2":{"77":1}}],["10973",{"2":{"72":1}}],["10974",{"2":{"65":1}}],["10972",{"2":{"65":1}}],["106",{"2":{"1680":1}}],["10638",{"2":{"65":1}}],["10622",{"2":{"63":1}}],["108",{"2":{"1521":1,"1680":1}}],["10817",{"2":{"76":1}}],["10894",{"2":{"75":1}}],["10807",{"2":{"74":1}}],["10800",{"2":{"62":1}}],["10840",{"2":{"65":1}}],["10824",{"2":{"65":1}}],["10837",{"2":{"64":1}}],["104",{"2":{"1521":2,"1680":1}}],["10419",{"2":{"92":1}}],["10418",{"2":{"77":1}}],["10417",{"2":{"65":1}}],["10400",{"2":{"74":1}}],["10437",{"2":{"73":1}}],["10438",{"2":{"65":1}}],["10439",{"2":{"63":1}}],["10420",{"2":{"65":1}}],["10491",{"2":{"64":1}}],["107",{"2":{"1680":1}}],["10730",{"2":{"74":1}}],["10735",{"2":{"64":1}}],["10767",{"2":{"65":1}}],["10716",{"2":{"65":1}}],["10750",{"2":{"64":1}}],["10706",{"2":{"63":1}}],["105",{"2":{"1521":1,"1680":1}}],["10533",{"2":{"114":1}}],["10530",{"2":{"65":1}}],["10528",{"2":{"72":1}}],["10524",{"2":{"64":1}}],["10563",{"2":{"65":1}}],["10549",{"2":{"63":1}}],["102",{"2":{"1680":1,"1919":1,"2520":1}}],["102559237",{"2":{"1356":1}}],["10259",{"2":{"63":1}}],["1024",{"2":{"745":1,"754":6,"756":3,"1968":1,"2501":2,"2747":1}}],["1023",{"2":{"687":1,"1962":1}}],["10231",{"2":{"65":1}}],["10214",{"2":{"65":1}}],["10206",{"2":{"65":1}}],["10204",{"2":{"63":1}}],["10260",{"2":{"63":1}}],["10",{"0":{"1372":1},"2":{"55":1,"73":1,"111":2,"114":1,"407":1,"559":1,"568":1,"608":1,"641":1,"687":1,"690":1,"692":4,"698":3,"741":1,"765":1,"769":1,"1358":1,"1412":1,"1478":1,"1486":1,"1521":1,"1532":2,"1533":1,"1621":1,"1661":1,"1680":4,"1734":2,"1738":3,"1919":3,"1929":3,"1930":1,"1962":2,"1964":1,"1974":1,"1979":1,"1996":2,"2011":3,"2180":2,"2182":1,"2268":1,"2271":1,"2296":4,"2320":1,"2403":1,"2447":1,"2478":2,"2480":3,"2487":1,"2495":1,"2513":3,"2520":3,"2529":3,"2750":1,"2851":1,"2870":2,"2873":2,"2905":1,"2929":1}}],["10101100",{"2":{"2288":1}}],["10101000",{"2":{"2288":1}}],["10103",{"2":{"50":1}}],["101",{"2":{"218":1,"1521":2,"1680":1,"1962":1}}],["10174",{"2":{"145":1}}],["10171",{"2":{"93":1}}],["10179",{"2":{"63":1}}],["10183",{"2":{"63":1}}],["10127",{"2":{"50":1}}],["10129",{"2":{"50":1}}],["10169",{"2":{"49":1}}],["100ms",{"2":{"2793":2}}],["100ma",{"2":{"134":1}}],["100644",{"2":{"2398":1}}],["100k",{"2":{"1362":1}}],["10088",{"2":{"62":1,"114":1}}],["1000ms",{"2":{"1456":1,"1680":1}}],["1000",{"2":{"120":1,"1435":1,"1442":1,"1456":1,"1788":1,"1930":1,"1933":2,"1972":2,"1975":1,"1990":1,"1996":2,"2039":1,"2875":1}}],["10008",{"2":{"50":1}}],["10000000",{"2":{"2289":3}}],["1000000",{"2":{"1968":1}}],["100000l",{"2":{"559":2}}],["100000",{"2":{"11":1,"766":1,"1362":1}}],["10053",{"2":{"50":1}}],["10040",{"2":{"50":1}}],["100",{"0":{"2300":1,"2307":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"25":2,"273":1,"562":2,"568":1,"717":2,"741":2,"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1288":1,"1460":1,"1482":1,"1577":1,"1580":1,"1582":1,"1675":1,"1680":1,"1930":1,"1933":1,"1962":3,"1974":1,"1976":2,"1996":2,"2180":2,"2268":1,"2307":1,"2398":7,"2447":2,"2495":3,"2608":2,"2678":1,"2750":2,"2793":1,"2851":2,"2876":2,"2904":2}}],["16bit",{"2":{"2885":1}}],["16bpp",{"2":{"2749":3}}],["16mb",{"2":{"2767":1}}],["16mhz",{"2":{"2477":1,"2492":2}}],["16ms",{"2":{"1846":1,"2069":1}}],["16t",{"2":{"2215":1}}],["16th",{"2":{"1487":1}}],["16k",{"2":{"922":2,"956":2,"990":2,"1024":2,"1058":2}}],["16kb",{"2":{"543":1}}],["16x2",{"2":{"1691":1,"1706":2}}],["16x",{"2":{"1678":1,"1679":1}}],["16x12",{"2":{"1211":1}}],["16x9",{"2":{"884":1}}],["16x8",{"2":{"852":1,"2750":1}}],["16c0",{"2":{"686":3,"2493":1,"2494":2}}],["16188",{"2":{"160":1}}],["16181",{"2":{"160":1}}],["16185",{"2":{"160":1}}],["16163",{"2":{"176":1}}],["16168",{"2":{"160":1}}],["16167",{"2":{"160":1}}],["16166",{"2":{"160":1}}],["16162",{"2":{"160":1}}],["16157",{"2":{"160":1}}],["16135",{"2":{"160":1}}],["16134",{"2":{"160":1}}],["16128",{"2":{"160":1}}],["16127",{"2":{"160":1}}],["16116",{"2":{"160":1}}],["16113",{"2":{"160":1}}],["16112",{"2":{"160":1}}],["16114",{"2":{"145":1}}],["16107",{"2":{"160":1}}],["16109",{"2":{"160":1}}],["16108",{"2":{"160":1}}],["16102",{"2":{"160":1}}],["16100",{"2":{"160":1}}],["16190",{"2":{"160":1}}],["162",{"2":{"1244":1}}],["16292",{"2":{"160":1}}],["16290",{"2":{"160":1}}],["16276",{"2":{"160":1}}],["16277",{"2":{"160":1}}],["16230",{"2":{"160":1}}],["16208",{"2":{"160":1}}],["16287",{"2":{"176":1}}],["16282",{"2":{"160":1}}],["16280",{"2":{"160":1}}],["16215",{"2":{"160":1}}],["16217",{"2":{"160":1}}],["16228",{"2":{"160":1}}],["16222",{"2":{"160":1}}],["16225",{"2":{"160":1}}],["16221",{"2":{"160":1}}],["16220",{"2":{"160":2}}],["16256",{"2":{"160":1}}],["16252",{"2":{"160":1}}],["16254",{"2":{"160":1}}],["16257",{"2":{"145":1}}],["16251",{"2":{"145":1}}],["16268",{"2":{"160":1}}],["16269",{"2":{"145":1}}],["16266",{"2":{"145":1}}],["16411",{"2":{"1326":1}}],["16436",{"2":{"176":1}}],["16438",{"2":{"145":1}}],["16423",{"2":{"145":1}}],["16441",{"2":{"145":1}}],["169",{"2":{"1326":2}}],["16992",{"2":{"176":1}}],["16996",{"2":{"176":1}}],["16990",{"2":{"176":1}}],["16997",{"2":{"145":1}}],["16949",{"2":{"176":1}}],["16941",{"2":{"145":1}}],["16932",{"2":{"176":1}}],["16939",{"2":{"145":1}}],["16974",{"2":{"145":1}}],["16958",{"2":{"145":1}}],["16951",{"2":{"145":2}}],["16957",{"2":{"145":1}}],["16915",{"2":{"145":1}}],["16961",{"2":{"145":1}}],["16960",{"2":{"145":1}}],["16926",{"2":{"145":1}}],["16909",{"2":{"145":1}}],["16810",{"2":{"176":1}}],["16800",{"2":{"176":1}}],["16806",{"2":{"145":1}}],["16879",{"2":{"176":1}}],["16875",{"2":{"145":1}}],["16874",{"2":{"145":1}}],["16871",{"2":{"145":1}}],["16865",{"2":{"145":1}}],["16863",{"2":{"145":1}}],["16869",{"2":{"145":1}}],["16827",{"2":{"145":1}}],["16892",{"2":{"145":1}}],["16891",{"2":{"145":1}}],["16859",{"2":{"145":2}}],["16843",{"2":{"145":1}}],["16778",{"2":{"176":1}}],["16770",{"2":{"145":1}}],["16773",{"2":{"145":1}}],["16716",{"2":{"145":1}}],["16718",{"2":{"145":1}}],["16705",{"2":{"145":1}}],["16706",{"2":{"145":1}}],["16702",{"2":{"145":1}}],["16723",{"2":{"145":1}}],["16728",{"2":{"145":1}}],["16782",{"2":{"145":1}}],["16785",{"2":{"145":1}}],["16783",{"2":{"145":1}}],["16738",{"2":{"145":1}}],["16737",{"2":{"145":1}}],["16732",{"2":{"145":1}}],["16689",{"2":{"236":1}}],["16681",{"2":{"145":1}}],["16699",{"2":{"199":1}}],["16669",{"2":{"176":1}}],["16668",{"2":{"173":1,"176":1}}],["16667",{"2":{"145":1}}],["16620",{"2":{"145":1}}],["16621",{"2":{"145":1}}],["16617",{"2":{"145":1}}],["16614",{"2":{"145":1}}],["16611",{"2":{"145":1}}],["16630",{"2":{"145":1}}],["16637",{"2":{"145":1}}],["16635",{"2":{"145":1}}],["16640",{"2":{"145":1}}],["16649",{"2":{"145":1}}],["16647",{"2":{"145":1}}],["16600",{"2":{"145":1}}],["16584",{"2":{"176":1}}],["16588",{"2":{"145":1}}],["16597",{"2":{"145":1}}],["16596",{"2":{"145":1}}],["16593",{"2":{"145":1}}],["16559",{"2":{"145":1}}],["16523",{"2":{"145":1}}],["16525",{"2":{"145":1}}],["16505",{"2":{"145":1}}],["16516",{"2":{"145":1}}],["16518",{"2":{"145":1}}],["16561",{"2":{"145":1}}],["16543",{"2":{"145":1}}],["16303",{"2":{"1326":1}}],["16300",{"2":{"160":1}}],["16384",{"2":{"754":2}}],["16384u",{"2":{"716":1}}],["16394",{"2":{"176":1}}],["16359",{"2":{"160":1}}],["16358",{"2":{"160":1}}],["16357",{"2":{"160":1}}],["16348",{"2":{"160":1}}],["16316",{"2":{"160":1}}],["16312",{"2":{"160":1}}],["16315",{"2":{"145":1}}],["16371",{"2":{"175":2,"176":1}}],["16378",{"2":{"160":1}}],["16376",{"2":{"160":1}}],["16370",{"2":{"145":1}}],["16336",{"2":{"176":1}}],["16339",{"2":{"145":1}}],["16337",{"2":{"145":1}}],["16331",{"2":{"145":1}}],["16099",{"2":{"160":1}}],["16096",{"2":{"160":1}}],["16091",{"2":{"160":1}}],["16095",{"2":{"145":1}}],["16076",{"2":{"188":1,"191":1}}],["16075",{"2":{"160":1}}],["16072",{"2":{"160":1}}],["16070",{"2":{"160":1}}],["16054",{"2":{"160":1}}],["16059",{"2":{"160":1}}],["16053",{"2":{"160":1}}],["16050",{"2":{"160":1}}],["16051",{"2":{"160":1}}],["16044",{"2":{"160":1}}],["16041",{"2":{"160":1}}],["16040",{"2":{"160":1}}],["16032",{"2":{"160":1}}],["16039",{"2":{"160":1}}],["16038",{"2":{"145":1}}],["16067",{"2":{"160":1}}],["16063",{"2":{"160":1}}],["16068",{"2":{"145":1}}],["1602a",{"2":{"1691":1}}],["16027",{"2":{"160":1}}],["16026",{"2":{"160":1}}],["16028",{"2":{"160":1}}],["16025",{"2":{"160":1}}],["16023",{"2":{"160":1}}],["16020",{"2":{"160":1}}],["16017",{"2":{"160":1}}],["16016",{"2":{"160":1}}],["16015",{"2":{"160":1}}],["16000",{"2":{"1976":1}}],["16000000",{"2":{"571":1}}],["1600",{"2":{"1972":2,"1976":1}}],["16001",{"2":{"160":1}}],["16007",{"2":{"160":1}}],["16002",{"2":{"160":1}}],["16004",{"2":{"145":1}}],["16089",{"2":{"160":1}}],["16082",{"2":{"160":1}}],["16081",{"2":{"160":1}}],["16080",{"2":{"160":1}}],["16087",{"2":{"160":1}}],["16084",{"2":{"145":1}}],["16086",{"2":{"145":1}}],["16",{"0":{"11":1,"166":1,"1365":1},"2":{"11":2,"63":1,"134":1,"160":1,"166":2,"176":1,"236":1,"407":1,"608":1,"658":2,"692":4,"726":2,"785":1,"791":1,"919":1,"922":2,"954":1,"956":2,"959":1,"990":2,"1024":2,"1058":2,"1090":1,"1124":1,"1158":1,"1296":1,"1297":2,"1365":5,"1407":1,"1417":1,"1486":1,"1521":1,"1526":2,"1532":2,"1533":1,"1603":1,"1680":1,"1693":1,"1696":2,"1734":2,"1738":3,"1751":1,"1840":2,"1846":3,"1919":2,"1929":1,"1930":2,"1931":4,"1933":3,"1950":1,"1954":1,"1962":1,"2011":3,"2060":2,"2064":1,"2069":5,"2213":1,"2215":1,"2239":1,"2282":1,"2322":1,"2376":1,"2478":1,"2480":1,"2501":17,"2513":3,"2520":2,"2529":3,"2550":1,"2555":1,"2566":1,"2568":1,"2646":1,"2748":3,"2749":2,"2750":1,"2770":1,"2864":4,"2871":6,"2885":1,"2941":1}}],["1",{"0":{"298":3,"401":1,"594":1,"1294":1,"2307":1,"2468":1,"2594":1,"2612":1},"2":{"10":1,"14":1,"45":3,"90":2,"102":1,"105":2,"114":5,"120":2,"134":1,"145":1,"160":1,"168":1,"169":1,"172":1,"176":1,"184":1,"191":2,"195":1,"197":2,"199":2,"210":1,"212":4,"222":6,"231":1,"236":1,"247":1,"249":3,"259":1,"266":14,"272":2,"294":3,"298":3,"307":1,"308":2,"335":1,"342":1,"348":2,"369":4,"373":3,"406":2,"510":1,"520":1,"521":1,"522":2,"530":1,"556":1,"568":2,"586":1,"587":6,"591":6,"630":1,"655":1,"673":1,"690":1,"692":22,"693":1,"696":4,"698":3,"713":1,"716":1,"718":1,"723":1,"745":1,"746":2,"752":1,"763":1,"765":1,"799":2,"854":2,"856":1,"857":4,"886":2,"890":2,"918":4,"921":2,"922":2,"953":2,"955":2,"956":2,"987":2,"989":2,"990":2,"1021":3,"1023":1,"1024":2,"1055":2,"1057":1,"1058":2,"1089":4,"1092":4,"1123":4,"1126":4,"1157":2,"1159":1,"1160":4,"1194":1,"1204":1,"1213":2,"1249":1,"1282":1,"1283":1,"1292":1,"1300":1,"1313":1,"1326":5,"1354":2,"1365":3,"1374":1,"1387":1,"1392":1,"1402":1,"1407":10,"1409":4,"1417":4,"1425":1,"1435":1,"1442":1,"1465":1,"1468":1,"1477":2,"1480":2,"1486":1,"1487":5,"1508":1,"1516":2,"1538":2,"1547":16,"1548":7,"1583":1,"1585":1,"1594":1,"1597":1,"1598":2,"1606":1,"1619":2,"1627":1,"1632":26,"1635":3,"1648":2,"1649":1,"1650":1,"1651":3,"1655":7,"1658":3,"1661":1,"1662":2,"1664":1,"1666":1,"1672":1,"1675":2,"1678":3,"1679":5,"1680":1,"1681":1,"1689":1,"1696":2,"1706":1,"1735":5,"1737":2,"1738":3,"1741":2,"1760":2,"1773":1,"1775":1,"1830":2,"1832":2,"1837":2,"1840":6,"1843":1,"1844":2,"1860":1,"1919":32,"1927":4,"1929":2,"1930":1,"1931":9,"1933":4,"1951":1,"1955":3,"1956":2,"1968":1,"1973":1,"1976":5,"1978":1,"1979":5,"1983":1,"1996":1,"2005":2,"2006":1,"2011":3,"2034":3,"2036":13,"2039":4,"2040":1,"2041":2,"2052":4,"2060":6,"2063":1,"2066":2,"2073":1,"2086":1,"2167":1,"2176":7,"2178":3,"2182":1,"2183":1,"2184":6,"2191":2,"2199":1,"2200":1,"2215":1,"2217":1,"2243":1,"2255":1,"2268":2,"2283":1,"2288":1,"2289":4,"2291":1,"2293":3,"2294":2,"2296":16,"2298":1,"2308":4,"2309":1,"2310":1,"2311":1,"2312":1,"2315":1,"2320":1,"2324":1,"2358":1,"2367":1,"2370":1,"2374":1,"2397":1,"2398":13,"2417":1,"2443":1,"2447":8,"2448":8,"2459":12,"2467":1,"2501":3,"2503":9,"2509":1,"2511":4,"2513":3,"2516":1,"2520":32,"2521":4,"2529":3,"2535":2,"2540":2,"2543":2,"2550":2,"2551":7,"2556":1,"2565":1,"2566":1,"2576":1,"2625":1,"2627":8,"2645":2,"2671":1,"2678":1,"2684":1,"2694":1,"2695":1,"2707":2,"2710":1,"2714":16,"2721":1,"2744":1,"2747":1,"2749":11,"2758":1,"2761":4,"2765":2,"2766":1,"2768":1,"2770":3,"2771":2,"2776":10,"2777":9,"2780":1,"2818":1,"2833":1,"2849":1,"2850":2,"2856":1,"2860":1,"2862":3,"2864":1,"2870":2,"2871":1,"2872":2,"2873":1,"2875":3,"2903":1,"2905":1,"2911":1,"2912":1,"2913":1,"2919":2,"2929":1,"2932":1,"2942":1}}],["=+",{"2":{"1498":1,"1500":1,"1509":1}}],["=>",{"2":{"196":4,"1785":4,"1962":1}}],["=helix",{"2":{"55":4}}],["=======",{"2":{"2627":2}}],["==========================",{"2":{"717":1}}],["=================================================",{"2":{"717":1}}],["============================",{"2":{"717":1}}],["=====",{"2":{"717":1}}],["==",{"2":{"13":1,"90":4,"194":1,"431":1,"533":2,"559":1,"717":1,"1329":2,"1375":2,"1377":1,"1589":1,"1606":1,"1619":1,"1657":1,"1662":4,"1775":1,"1949":1,"1986":1,"1993":1,"2005":2,"2052":5,"2074":2,"2165":1,"2279":1,"2309":1,"2310":3,"2311":2,"2312":3,"2374":4,"2645":1,"2750":1,"2760":1,"2761":1,"2767":1,"2768":1,"2770":1,"2772":1,"2919":2,"2920":3,"2924":1}}],["=",{"0":{"141":1,"167":1,"195":1,"245":1},"2":{"10":1,"28":1,"49":1,"87":1,"88":3,"104":3,"118":9,"119":1,"127":3,"134":1,"166":1,"176":4,"199":1,"212":1,"213":1,"232":1,"234":7,"235":1,"247":1,"266":2,"272":2,"285":1,"306":1,"307":6,"315":1,"324":2,"325":4,"328":1,"348":2,"406":1,"431":3,"473":1,"474":1,"495":2,"522":1,"527":1,"530":1,"531":1,"532":2,"565":2,"567":2,"571":5,"573":2,"587":3,"590":1,"591":2,"614":1,"622":2,"623":3,"627":1,"645":4,"653":1,"654":1,"655":1,"688":1,"700":1,"712":1,"713":14,"717":2,"718":4,"722":1,"726":1,"739":1,"741":1,"743":5,"750":4,"752":1,"755":1,"762":1,"798":1,"802":2,"827":1,"831":2,"853":1,"860":2,"885":1,"890":2,"917":1,"925":2,"952":1,"959":2,"986":1,"993":2,"1020":1,"1027":2,"1054":1,"1061":2,"1088":1,"1095":2,"1122":1,"1129":2,"1156":1,"1163":2,"1192":1,"1195":2,"1198":2,"1212":1,"1216":2,"1243":1,"1264":1,"1281":1,"1285":4,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1319":1,"1327":1,"1366":1,"1378":3,"1387":1,"1402":1,"1407":4,"1413":1,"1414":1,"1425":4,"1428":2,"1430":1,"1440":6,"1444":2,"1456":6,"1459":1,"1464":1,"1465":1,"1466":4,"1467":1,"1471":1,"1472":2,"1474":1,"1475":1,"1477":2,"1479":1,"1482":1,"1485":1,"1486":1,"1494":1,"1520":1,"1521":1,"1527":8,"1529":2,"1536":1,"1542":1,"1543":1,"1544":1,"1545":1,"1572":1,"1583":1,"1588":1,"1589":1,"1596":4,"1597":2,"1598":3,"1599":14,"1606":4,"1611":3,"1612":3,"1617":1,"1634":1,"1636":2,"1649":1,"1650":2,"1655":1,"1657":1,"1659":1,"1661":6,"1662":1,"1672":3,"1692":1,"1696":1,"1733":2,"1736":1,"1737":7,"1757":1,"1762":1,"1768":2,"1770":7,"1771":7,"1773":11,"1780":1,"1784":1,"1791":6,"1823":1,"1832":1,"1833":5,"1834":1,"1839":1,"1840":3,"1843":2,"1844":5,"1845":1,"1846":2,"1913":1,"1918":2,"1926":1,"1933":3,"1937":1,"1942":2,"1946":1,"1947":3,"1948":1,"1949":5,"1950":1,"1955":4,"1956":4,"1958":1,"1960":1,"1961":1,"1962":1,"1963":1,"1967":2,"1972":1,"1973":1,"1974":1,"1975":1,"1976":5,"1977":1,"1985":6,"1986":7,"1987":14,"1989":7,"1990":4,"2004":1,"2005":1,"2006":3,"2010":1,"2033":3,"2034":4,"2035":3,"2036":13,"2045":1,"2048":1,"2052":14,"2059":1,"2060":3,"2063":2,"2066":5,"2068":1,"2069":2,"2073":7,"2074":6,"2157":1,"2160":1,"2162":1,"2165":1,"2170":1,"2172":3,"2180":7,"2182":6,"2184":4,"2203":4,"2208":1,"2213":1,"2219":1,"2251":1,"2261":2,"2270":7,"2277":2,"2278":1,"2279":5,"2286":2,"2287":1,"2288":5,"2289":5,"2290":2,"2291":1,"2295":1,"2296":1,"2298":1,"2302":1,"2305":4,"2307":2,"2308":4,"2309":13,"2310":11,"2311":3,"2312":7,"2313":1,"2319":1,"2322":6,"2323":5,"2367":2,"2369":3,"2371":1,"2374":13,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2411":1,"2412":2,"2448":3,"2453":1,"2495":1,"2503":3,"2537":1,"2543":2,"2551":6,"2555":1,"2556":1,"2557":1,"2578":1,"2665":1,"2676":3,"2684":2,"2703":1,"2720":1,"2721":3,"2746":1,"2749":12,"2750":31,"2752":3,"2754":1,"2760":6,"2761":6,"2762":6,"2763":2,"2764":2,"2765":9,"2768":6,"2769":6,"2770":14,"2771":6,"2772":6,"2773":6,"2787":2,"2793":1,"2849":1,"2850":1,"2860":1,"2865":1,"2882":9,"2884":1,"2886":1,"2904":4,"2905":6,"2916":1,"2919":1,"2931":2,"2941":2}}],["2d",{"2":{"2882":1}}],["2bpp",{"2":{"2770":2}}],["2c1219002b135937334d4e00",{"2":{"2501":1}}],["2p4g",{"2":{"2370":1,"2509":1}}],["2p4ghz",{"2":{"2370":1,"2509":1}}],["2t",{"2":{"2215":1}}],["2=4",{"2":{"1956":1}}],["2ms",{"2":{"1955":1}}],["2>",{"2":{"1782":1,"2921":1}}],["2x2",{"2":{"2459":1}}],["2x1800",{"2":{"2407":1}}],["2x",{"2":{"1678":1,"1679":1,"1968":2,"2257":2}}],["2x4",{"2":{"114":1,"222":1}}],["2v",{"2":{"1673":1}}],["2u",{"2":{"1326":2,"2780":1}}],["2kro",{"2":{"2832":1}}],["2kω",{"2":{"1194":1}}],["2k1",{"2":{"921":1,"955":1,"989":1}}],["2k",{"2":{"854":2,"856":1,"857":6,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1089":2,"1092":6,"1123":2,"1126":6,"1157":2,"1160":6,"1968":1,"2260":1}}],["2key",{"2":{"154":2}}],["2️⃣",{"2":{"713":3}}],["2e3c",{"2":{"686":1,"2391":1}}],["2a03",{"2":{"686":2}}],["2ffb",{"2":{"686":1,"2491":1}}],["2ff9",{"2":{"686":1,"2491":1}}],["2ff4",{"2":{"686":1,"2491":1,"2605":1,"2608":2}}],["2ff3",{"2":{"686":1,"2491":1}}],["2ff0",{"2":{"686":1}}],["2fef",{"2":{"686":1}}],["23x",{"2":{"2682":1}}],["239",{"2":{"1949":1,"2279":1,"2750":6}}],["239a",{"2":{"686":3,"2492":3}}],["23994",{"2":{"294":1}}],["23999",{"2":{"277":1}}],["23953",{"2":{"285":1}}],["23954",{"2":{"277":1}}],["23945",{"2":{"277":1}}],["23967",{"2":{"277":1}}],["23963",{"2":{"277":1}}],["23987",{"2":{"277":1}}],["23985",{"2":{"277":1}}],["23983",{"2":{"277":1}}],["23981",{"2":{"277":1}}],["23980",{"2":{"277":1}}],["23923",{"2":{"277":1}}],["23925",{"2":{"277":1}}],["23924",{"2":{"277":1}}],["23917",{"2":{"277":1}}],["23911",{"2":{"277":1}}],["23979",{"2":{"277":1}}],["23975",{"2":{"277":1}}],["23901",{"2":{"277":1}}],["23838",{"2":{"285":1}}],["23857",{"2":{"277":1}}],["23818",{"2":{"277":1}}],["23896",{"2":{"277":1}}],["23894",{"2":{"277":1}}],["23884",{"2":{"308":1}}],["23887",{"2":{"285":1}}],["23883",{"2":{"277":1}}],["23885",{"2":{"277":1}}],["23881",{"2":{"277":1}}],["2370",{"2":{"432":2}}],["23709",{"2":{"266":1}}],["23796",{"2":{"277":1}}],["23793",{"2":{"266":1}}],["23792",{"2":{"266":1}}],["23790",{"2":{"266":1}}],["23782",{"2":{"277":1}}],["23789",{"2":{"266":1}}],["23788",{"2":{"266":1}}],["23787",{"2":{"266":1}}],["23786",{"2":{"266":1}}],["23785",{"2":{"266":1}}],["23784",{"2":{"266":1}}],["23783",{"2":{"266":1}}],["23781",{"2":{"266":1}}],["23780",{"2":{"266":1}}],["23779",{"2":{"266":1}}],["23778",{"2":{"266":1}}],["23774",{"2":{"266":1}}],["23773",{"2":{"266":1}}],["23772",{"2":{"266":1}}],["23771",{"2":{"266":1}}],["23770",{"2":{"266":1}}],["23765",{"2":{"277":1}}],["23769",{"2":{"266":1}}],["23768",{"2":{"266":1}}],["23767",{"2":{"266":1}}],["23764",{"2":{"266":1}}],["23763",{"2":{"266":1}}],["23762",{"2":{"266":1}}],["23760",{"2":{"266":1}}],["23759",{"2":{"266":1}}],["23758",{"2":{"266":1}}],["23757",{"2":{"266":1}}],["23754",{"2":{"266":1}}],["23751",{"2":{"266":1}}],["23750",{"2":{"266":1}}],["23749",{"2":{"266":1}}],["23747",{"2":{"266":1}}],["23746",{"2":{"266":1}}],["23745",{"2":{"266":1}}],["23719",{"2":{"266":1}}],["23716",{"2":{"266":1}}],["23714",{"2":{"266":1}}],["23712",{"2":{"266":1}}],["23726",{"2":{"266":1}}],["23266",{"2":{"266":1}}],["23264",{"2":{"266":1}}],["23222",{"2":{"266":1}}],["23221",{"2":{"266":1}}],["23206",{"2":{"266":1}}],["23202",{"2":{"266":1}}],["23292",{"2":{"266":1}}],["23299",{"2":{"266":1}}],["23294",{"2":{"266":1}}],["23293",{"2":{"266":1}}],["23297",{"2":{"266":1}}],["23281",{"2":{"317":1}}],["23289",{"2":{"266":1}}],["23288",{"2":{"266":1}}],["23287",{"2":{"266":1}}],["23286",{"2":{"266":1}}],["23285",{"2":{"266":1}}],["23277",{"2":{"266":1}}],["23276",{"2":{"266":1}}],["23273",{"2":{"266":1}}],["23259",{"2":{"266":1}}],["23246",{"2":{"266":1}}],["23248",{"2":{"266":1}}],["23247",{"2":{"266":1}}],["23236",{"2":{"266":1}}],["23217",{"2":{"266":1}}],["23641",{"2":{"294":1}}],["23642",{"2":{"277":1}}],["23679",{"2":{"285":1}}],["23673",{"2":{"266":1}}],["23699",{"2":{"285":1}}],["23692",{"2":{"277":1}}],["23694",{"2":{"266":1}}],["23697",{"2":{"266":1}}],["23691",{"2":{"266":1}}],["23685",{"2":{"266":1}}],["23668",{"2":{"266":1}}],["23663",{"2":{"266":1}}],["23630",{"2":{"277":1}}],["23635",{"2":{"266":1}}],["23633",{"2":{"266":1}}],["23627",{"2":{"266":1}}],["23624",{"2":{"266":1}}],["23622",{"2":{"266":1}}],["23616",{"2":{"266":1}}],["23614",{"2":{"266":1}}],["23612",{"2":{"266":1}}],["23609",{"2":{"266":1}}],["23607",{"2":{"266":1}}],["23606",{"2":{"266":1}}],["23601",{"2":{"266":1}}],["23650",{"2":{"277":1}}],["23655",{"2":{"266":1}}],["23652",{"2":{"266":1}}],["23658",{"2":{"266":1}}],["23653",{"2":{"266":1}}],["23657",{"2":{"266":1}}],["23656",{"2":{"266":1}}],["23598",{"2":{"266":1}}],["23599",{"2":{"266":1}}],["23593",{"2":{"266":1}}],["23591",{"2":{"266":1}}],["23590",{"2":{"266":1}}],["23589",{"2":{"266":1}}],["23588",{"2":{"266":1}}],["23585",{"2":{"266":1}}],["23576",{"2":{"266":1}}],["23573",{"2":{"266":1}}],["23569",{"2":{"266":1}}],["23567",{"2":{"266":1}}],["23566",{"2":{"266":1}}],["23565",{"2":{"266":1}}],["23564",{"2":{"266":1}}],["23562",{"2":{"266":1}}],["23558",{"2":{"308":1}}],["23557",{"2":{"266":1}}],["23556",{"2":{"266":1}}],["23547",{"2":{"266":1}}],["23542",{"2":{"266":1}}],["23541",{"2":{"266":1}}],["23540",{"2":{"266":1}}],["23534",{"2":{"266":1}}],["23533",{"2":{"266":1}}],["23532",{"2":{"266":1}}],["23530",{"2":{"266":1}}],["23520",{"2":{"277":1}}],["23529",{"2":{"266":1}}],["23525",{"2":{"266":1}}],["23524",{"2":{"266":1}}],["23522",{"2":{"266":1}}],["23516",{"2":{"266":1}}],["23515",{"2":{"266":1}}],["23514",{"2":{"266":1}}],["23512",{"2":{"266":1}}],["23511",{"2":{"266":1}}],["23445",{"2":{"285":1}}],["23448",{"2":{"266":1}}],["23488",{"2":{"266":1}}],["23486",{"2":{"266":1}}],["23462",{"2":{"266":1}}],["23461",{"2":{"266":1}}],["23460",{"2":{"266":1}}],["23463",{"2":{"266":1}}],["23451",{"2":{"285":1}}],["23453",{"2":{"266":1}}],["23452",{"2":{"266":1}}],["23455",{"2":{"266":1}}],["2341",{"2":{"686":2,"2492":2}}],["23419",{"2":{"266":1}}],["23418",{"2":{"266":1}}],["23412",{"2":{"266":1}}],["23406",{"2":{"266":1}}],["23403",{"2":{"266":1}}],["23402",{"2":{"266":1}}],["23405",{"2":{"266":1}}],["23407",{"2":{"266":1}}],["23430",{"2":{"285":1}}],["23437",{"2":{"277":1}}],["23439",{"2":{"277":1}}],["23436",{"2":{"266":1}}],["23434",{"2":{"266":1}}],["23432",{"2":{"266":1}}],["23425",{"2":{"266":1}}],["23424",{"2":{"266":1}}],["23423",{"2":{"266":1}}],["23421",{"2":{"266":1}}],["23426",{"2":{"266":1}}],["23422",{"2":{"266":1}}],["23389",{"2":{"328":1}}],["23384",{"2":{"266":1}}],["23355",{"2":{"277":1}}],["23357",{"2":{"266":1}}],["23341",{"2":{"277":1}}],["23346",{"2":{"266":1}}],["23335",{"2":{"266":1}}],["23330",{"2":{"266":1}}],["23399",{"2":{"266":1}}],["23396",{"2":{"266":1}}],["23395",{"2":{"266":1}}],["23397",{"2":{"266":1}}],["23394",{"2":{"266":1}}],["23393",{"2":{"266":1}}],["23390",{"2":{"266":1}}],["23379",{"2":{"266":1}}],["23378",{"2":{"266":1}}],["23377",{"2":{"266":1}}],["23376",{"2":{"266":1}}],["23373",{"2":{"266":1}}],["23371",{"2":{"266":1}}],["23375",{"2":{"266":1}}],["23367",{"2":{"266":1}}],["23361",{"2":{"266":1}}],["23360",{"2":{"266":1}}],["23311",{"2":{"266":1}}],["23309",{"2":{"266":1}}],["23307",{"2":{"266":1}}],["23305",{"2":{"266":1}}],["23302",{"2":{"266":1}}],["23329",{"2":{"266":1}}],["23324",{"2":{"266":1}}],["23321",{"2":{"266":1}}],["23322",{"2":{"266":1}}],["23188",{"2":{"266":1}}],["23185",{"2":{"266":1}}],["23179",{"2":{"266":1}}],["2316",{"2":{"2622":1}}],["23169",{"2":{"266":1}}],["23162",{"2":{"266":1}}],["23144",{"2":{"266":1}}],["23143",{"2":{"249":1}}],["23111",{"2":{"266":1}}],["23116",{"2":{"249":1}}],["23112",{"2":{"249":1}}],["23110",{"2":{"249":1}}],["23119",{"2":{"249":1}}],["23155",{"2":{"249":1}}],["23129",{"2":{"249":1}}],["23127",{"2":{"249":1}}],["23121",{"2":{"249":1}}],["23128",{"2":{"249":1}}],["23106",{"2":{"249":1}}],["23104",{"2":{"249":1}}],["23102",{"2":{"249":1}}],["23109",{"2":{"249":1}}],["23108",{"2":{"249":1}}],["23",{"0":{"286":1},"1":{"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1},"2":{"249":1,"407":2,"613":1,"922":1,"990":1,"1058":1,"1092":1,"1126":1,"1160":1,"1486":1,"1521":3,"1680":1,"1738":3,"1962":22,"2011":3,"2513":3,"2529":3,"2768":1}}],["23038",{"2":{"266":1}}],["23037",{"2":{"249":1}}],["230400",{"2":{"1204":1}}],["23048",{"2":{"249":1}}],["23047",{"2":{"249":1}}],["23049",{"2":{"249":1}}],["23097",{"2":{"277":1}}],["23091",{"2":{"277":1}}],["23096",{"2":{"249":1}}],["23095",{"2":{"249":1}}],["23094",{"2":{"249":1}}],["23092",{"2":{"249":1}}],["23093",{"2":{"249":1}}],["23084",{"2":{"249":1}}],["23083",{"2":{"249":1}}],["23081",{"2":{"249":1}}],["23085",{"2":{"249":1}}],["23076",{"2":{"266":1}}],["23077",{"2":{"249":1}}],["23074",{"2":{"249":1}}],["23073",{"2":{"249":1}}],["23065",{"2":{"294":1}}],["23063",{"2":{"249":1}}],["23067",{"2":{"249":1}}],["23029",{"2":{"249":1}}],["23000",{"2":{"249":1}}],["23002",{"2":{"249":1}}],["23055",{"2":{"266":1}}],["23059",{"2":{"249":1}}],["23056",{"2":{"249":1}}],["23058",{"2":{"249":1}}],["23052",{"2":{"249":1}}],["24bpp",{"2":{"2749":1}}],["24lc256",{"2":{"746":2}}],["24lc128",{"2":{"746":3}}],["24lc64",{"2":{"746":3}}],["24lc32a",{"2":{"176":1,"746":3}}],["24xx",{"0":{"2439":1},"2":{"743":1,"746":1}}],["24989",{"2":{"333":1}}],["24961",{"2":{"328":1}}],["24997",{"2":{"308":1}}],["24990",{"2":{"308":1}}],["24932",{"2":{"308":1}}],["24938",{"2":{"294":1}}],["24952",{"2":{"308":1}}],["24928",{"2":{"294":1}}],["24915",{"2":{"294":1}}],["24912",{"2":{"294":1}}],["24913",{"2":{"294":1}}],["24903",{"2":{"294":1}}],["248",{"2":{"1350":1,"2411":1}}],["24880",{"2":{"294":1}}],["24878",{"2":{"294":1}}],["24877",{"2":{"294":1}}],["24879",{"2":{"294":1}}],["24868",{"2":{"294":1}}],["24807",{"2":{"294":1}}],["24803",{"2":{"294":1}}],["24802",{"2":{"294":1}}],["24800",{"2":{"294":1}}],["24857",{"2":{"294":1}}],["24855",{"2":{"294":1}}],["24850",{"2":{"294":1}}],["24840",{"2":{"294":1}}],["24844",{"2":{"294":1}}],["24842",{"2":{"294":1}}],["24845",{"2":{"294":1}}],["24848",{"2":{"294":1}}],["24846",{"2":{"294":1}}],["24836",{"2":{"294":1}}],["24838",{"2":{"294":1}}],["24835",{"2":{"294":1}}],["24839",{"2":{"294":1}}],["24837",{"2":{"294":1}}],["24834",{"2":{"294":1}}],["24832",{"2":{"294":1}}],["24830",{"2":{"294":1}}],["24817",{"2":{"294":1}}],["247",{"2":{"1949":1,"2279":1}}],["24776",{"2":{"333":1}}],["24772",{"2":{"294":1}}],["24764",{"2":{"308":1}}],["24723",{"2":{"308":1}}],["24724",{"2":{"294":1}}],["24785",{"2":{"308":1}}],["24787",{"2":{"308":1}}],["24786",{"2":{"294":1}}],["24784",{"2":{"294":1}}],["24757",{"2":{"294":1}}],["24749",{"2":{"294":1}}],["24748",{"2":{"294":1}}],["24719",{"2":{"328":1}}],["24714",{"2":{"294":1}}],["24715",{"2":{"294":1}}],["24705",{"2":{"294":1}}],["24701",{"2":{"294":1}}],["24707",{"2":{"294":1}}],["24794",{"2":{"294":1}}],["24649",{"2":{"327":1,"328":1}}],["24640",{"2":{"294":1}}],["24690",{"2":{"308":1}}],["24680",{"2":{"308":1}}],["24666",{"2":{"308":1}}],["24667",{"2":{"294":1}}],["24656",{"2":{"294":1}}],["24655",{"2":{"294":1}}],["24651",{"2":{"294":1}}],["24678",{"2":{"294":1}}],["24611",{"2":{"294":1}}],["24623",{"2":{"294":1}}],["24627",{"2":{"285":1}}],["24622",{"2":{"285":1}}],["24637",{"2":{"294":1}}],["24635",{"2":{"285":1}}],["24633",{"2":{"285":1}}],["24639",{"2":{"285":1}}],["24630",{"2":{"285":1}}],["24553",{"2":{"308":1}}],["24554",{"2":{"285":1}}],["24590",{"2":{"294":1}}],["24593",{"2":{"285":1}}],["24560",{"2":{"294":1}}],["24503",{"2":{"294":1}}],["24502",{"2":{"285":1}}],["24508",{"2":{"285":1}}],["24529",{"2":{"294":1}}],["24525",{"2":{"294":1}}],["24521",{"2":{"294":1}}],["24528",{"2":{"285":1}}],["24520",{"2":{"285":1}}],["24548",{"2":{"285":1}}],["24540",{"2":{"285":1}}],["24573",{"2":{"285":1}}],["24531",{"2":{"294":1}}],["24539",{"2":{"285":1}}],["24535",{"2":{"285":1}}],["24534",{"2":{"285":1}}],["24532",{"2":{"285":1}}],["24515",{"2":{"285":1}}],["24513",{"2":{"285":1}}],["24418",{"2":{"328":1}}],["24413",{"2":{"285":1}}],["24490",{"2":{"285":1}}],["24481",{"2":{"285":1}}],["24484",{"2":{"285":1}}],["24480",{"2":{"285":1}}],["24408",{"2":{"285":1}}],["24456",{"2":{"285":1}}],["24479",{"2":{"285":1}}],["24474",{"2":{"285":1}}],["24473",{"2":{"285":1}}],["24476",{"2":{"285":1}}],["24477",{"2":{"285":1}}],["24471",{"2":{"285":1}}],["24468",{"2":{"285":1}}],["24467",{"2":{"285":1}}],["24449",{"2":{"285":1}}],["24445",{"2":{"285":1}}],["24433",{"2":{"285":1}}],["24432",{"2":{"285":1}}],["24423",{"2":{"308":1}}],["24428",{"2":{"285":1}}],["24422",{"2":{"285":1}}],["24301",{"2":{"308":1}}],["24364",{"2":{"285":1}}],["24398",{"2":{"285":1}}],["24337",{"2":{"285":1}}],["24388",{"2":{"285":1}}],["24379",{"2":{"285":1}}],["24376",{"2":{"285":1}}],["24356",{"2":{"308":1}}],["24355",{"2":{"285":1}}],["24352",{"2":{"285":1}}],["24351",{"2":{"285":1}}],["24348",{"2":{"285":1}}],["24316",{"2":{"277":1}}],["24322",{"2":{"277":1}}],["24266",{"2":{"294":1}}],["24241",{"2":{"294":1}}],["24249",{"2":{"285":1}}],["24240",{"2":{"277":1}}],["24259",{"2":{"294":1}}],["24258",{"2":{"285":1}}],["24251",{"2":{"285":1}}],["24253",{"2":{"277":1}}],["24229",{"2":{"285":1}}],["24223",{"2":{"285":1}}],["24238",{"2":{"277":1}}],["24237",{"2":{"277":1}}],["24236",{"2":{"277":1}}],["24233",{"2":{"277":1}}],["24232",{"2":{"277":1}}],["24231",{"2":{"277":1}}],["24234",{"2":{"277":1}}],["24215",{"2":{"277":1}}],["24201",{"2":{"277":1}}],["24200",{"2":{"277":1}}],["24203",{"2":{"277":1}}],["24202",{"2":{"277":1}}],["24116",{"2":{"277":1}}],["24194",{"2":{"285":1}}],["24191",{"2":{"277":1}}],["24192",{"2":{"277":1}}],["24185",{"2":{"277":1}}],["24180",{"2":{"277":1}}],["24163",{"2":{"277":1}}],["24155",{"2":{"277":1}}],["24146",{"2":{"277":1}}],["24143",{"2":{"277":1}}],["24142",{"2":{"277":1}}],["24136",{"2":{"277":1}}],["24133",{"2":{"277":1}}],["24127",{"2":{"277":1}}],["24122",{"2":{"277":1}}],["24120",{"2":{"277":1}}],["240px",{"2":{"2750":1}}],["240",{"2":{"2749":3,"2750":3}}],["240x80",{"2":{"2749":2}}],["240x320",{"2":{"2746":2,"2749":1,"2750":4}}],["240x240",{"2":{"2746":2,"2749":1,"2750":1}}],["24092",{"2":{"277":1}}],["24094",{"2":{"277":1}}],["24082",{"2":{"328":1}}],["24084",{"2":{"285":1}}],["24086",{"2":{"277":1}}],["24087",{"2":{"277":1}}],["24068",{"2":{"277":1}}],["24064",{"2":{"277":1}}],["24060",{"2":{"277":1}}],["24032",{"2":{"277":1}}],["24017",{"2":{"277":1}}],["24016",{"2":{"277":1}}],["24011",{"2":{"277":1}}],["24010",{"2":{"277":1}}],["24053",{"2":{"285":1}}],["24054",{"2":{"277":1}}],["24055",{"2":{"277":1}}],["24051",{"2":{"277":1}}],["24049",{"2":{"277":1}}],["24020",{"2":{"277":1}}],["2400",{"2":{"1269":1}}],["24009",{"2":{"277":1}}],["24008",{"2":{"277":1}}],["24006",{"2":{"277":1}}],["24003",{"2":{"277":1}}],["24001",{"2":{"277":1}}],["24",{"0":{"278":1},"1":{"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1},"2":{"238":1,"396":1,"407":2,"1155":1,"1521":2,"1680":1,"1738":3,"1933":1,"1954":1,"1962":6,"2011":3,"2059":1,"2288":1,"2513":3,"2529":3,"2767":1}}],["22947",{"2":{"277":1}}],["22948",{"2":{"249":1}}],["22942",{"2":{"249":1}}],["22934",{"2":{"249":1}}],["22932",{"2":{"249":1}}],["22926",{"2":{"266":1}}],["22922",{"2":{"249":1}}],["22921",{"2":{"249":1}}],["22920",{"2":{"249":1}}],["22997",{"2":{"249":1}}],["22998",{"2":{"249":1}}],["22992",{"2":{"249":1}}],["22991",{"2":{"249":1}}],["22917",{"2":{"249":1}}],["22911",{"2":{"249":1}}],["22910",{"2":{"249":1}}],["22901",{"2":{"249":1}}],["22909",{"2":{"249":1}}],["22908",{"2":{"249":1}}],["22905",{"2":{"249":1}}],["22985",{"2":{"249":1}}],["22971",{"2":{"249":1}}],["22979",{"2":{"249":1}}],["22975",{"2":{"249":1}}],["22970",{"2":{"249":1}}],["22963",{"2":{"285":1}}],["22967",{"2":{"266":1}}],["22962",{"2":{"266":1}}],["22969",{"2":{"249":1}}],["22966",{"2":{"249":1}}],["22961",{"2":{"249":1}}],["22953",{"2":{"249":1}}],["22955",{"2":{"249":1}}],["22951",{"2":{"249":1}}],["22858",{"2":{"285":1}}],["22857",{"2":{"249":1}}],["22851",{"2":{"249":1}}],["22859",{"2":{"249":1}}],["22895",{"2":{"266":1}}],["22891",{"2":{"266":1}}],["22897",{"2":{"249":1}}],["22896",{"2":{"249":1}}],["22899",{"2":{"249":1}}],["22898",{"2":{"249":1}}],["22819",{"2":{"249":1}}],["22811",{"2":{"249":1}}],["22814",{"2":{"249":1}}],["22884",{"2":{"249":1}}],["22873",{"2":{"249":1}}],["22879",{"2":{"249":1}}],["22878",{"2":{"249":1}}],["22872",{"2":{"249":1}}],["22866",{"2":{"249":1}}],["22864",{"2":{"249":1}}],["22863",{"2":{"249":1}}],["22862",{"2":{"249":1}}],["22861",{"2":{"249":1}}],["22860",{"2":{"249":1}}],["22869",{"2":{"249":1}}],["22865",{"2":{"249":1}}],["22832",{"2":{"249":1}}],["22839",{"2":{"249":1}}],["22830",{"2":{"249":1}}],["22829",{"2":{"249":1}}],["22823",{"2":{"249":1}}],["22826",{"2":{"249":1}}],["22825",{"2":{"249":1}}],["22824",{"2":{"249":1}}],["22809",{"2":{"249":1}}],["22802",{"2":{"249":1}}],["22808",{"2":{"249":1}}],["22807",{"2":{"249":1}}],["22806",{"2":{"249":1}}],["22801",{"2":{"249":1}}],["22803",{"2":{"249":1}}],["22800",{"2":{"249":1}}],["22731",{"2":{"266":1}}],["22736",{"2":{"249":1}}],["22799",{"2":{"249":1}}],["22796",{"2":{"249":1}}],["22798",{"2":{"249":1}}],["22797",{"2":{"249":1}}],["22792",{"2":{"249":1}}],["22795",{"2":{"249":1}}],["22771",{"2":{"249":1}}],["22775",{"2":{"249":1}}],["22764",{"2":{"249":1}}],["22763",{"2":{"249":1}}],["22762",{"2":{"249":1}}],["22760",{"2":{"249":1}}],["22759",{"2":{"249":1}}],["22753",{"2":{"249":1}}],["22750",{"2":{"249":1}}],["22741",{"2":{"266":1}}],["22745",{"2":{"249":1}}],["22743",{"2":{"249":1}}],["22740",{"2":{"249":1}}],["22742",{"2":{"249":1}}],["22721",{"2":{"249":1}}],["22726",{"2":{"249":1}}],["22719",{"2":{"249":1}}],["22715",{"2":{"249":1}}],["22714",{"2":{"249":1}}],["22712",{"2":{"249":1}}],["22710",{"2":{"249":1}}],["22709",{"2":{"249":1}}],["22708",{"2":{"249":1}}],["22701",{"2":{"249":1}}],["22695",{"2":{"266":1}}],["22662",{"2":{"266":1}}],["22649",{"2":{"249":1}}],["22652",{"2":{"249":1}}],["22651",{"2":{"249":1}}],["22656",{"2":{"249":1}}],["22603",{"2":{"249":1}}],["22688",{"2":{"249":1}}],["22682",{"2":{"249":1}}],["22681",{"2":{"249":1}}],["22680",{"2":{"249":1}}],["22670",{"2":{"277":1}}],["22675",{"2":{"249":1}}],["22674",{"2":{"249":1}}],["22673",{"2":{"249":1}}],["22638",{"2":{"249":1}}],["22637",{"2":{"249":1}}],["22636",{"2":{"249":1}}],["22635",{"2":{"249":1}}],["22628",{"2":{"249":1}}],["22625",{"2":{"249":1}}],["22620",{"2":{"249":1}}],["22617",{"2":{"249":1}}],["225°",{"2":{"1735":1}}],["22579",{"2":{"249":1}}],["22578",{"2":{"249":1}}],["22577",{"2":{"249":1}}],["22575",{"2":{"249":1}}],["22570",{"2":{"249":1}}],["22558",{"2":{"249":1}}],["22560",{"2":{"249":1}}],["22562",{"2":{"249":1}}],["22530",{"2":{"249":1}}],["22518",{"2":{"249":1}}],["22546",{"2":{"249":1}}],["22543",{"2":{"249":1}}],["22542",{"2":{"249":1}}],["22549",{"2":{"236":1}}],["22548",{"2":{"236":1}}],["22545",{"2":{"236":1}}],["22544",{"2":{"236":1}}],["22526",{"2":{"249":1}}],["22529",{"2":{"249":1}}],["22523",{"2":{"236":1}}],["22528",{"2":{"236":1}}],["22525",{"2":{"236":1}}],["22",{"0":{"329":1},"1":{"330":1,"331":1,"332":1,"333":1},"2":{"236":1,"249":1,"394":1,"396":1,"407":2,"1486":1,"1680":1,"1738":3,"1962":4,"2011":3,"2513":3,"2529":3}}],["224x64",{"2":{"2064":1}}],["224",{"2":{"1840":4,"2060":4,"2864":1,"2871":1}}],["22459",{"2":{"308":1}}],["22489",{"2":{"277":1}}],["22480",{"2":{"236":1}}],["22474",{"2":{"249":1}}],["22471",{"2":{"236":1}}],["22419",{"2":{"249":1}}],["22497",{"2":{"236":1}}],["22437",{"2":{"236":1}}],["22435",{"2":{"236":1}}],["22434",{"2":{"236":1}}],["22436",{"2":{"236":1}}],["22469",{"2":{"236":1}}],["22446",{"2":{"236":1}}],["22444",{"2":{"236":1}}],["22448",{"2":{"236":1}}],["22445",{"2":{"236":1}}],["22423",{"2":{"236":1}}],["22401",{"2":{"249":1}}],["22403",{"2":{"236":1}}],["22400",{"2":{"236":1}}],["223",{"2":{"1949":1,"1951":1,"2279":1,"2281":1}}],["22396",{"2":{"1362":3}}],["22398",{"2":{"236":1}}],["22374",{"2":{"249":1}}],["22379",{"2":{"236":1}}],["22358",{"2":{"249":1}}],["22357",{"2":{"236":1}}],["22341",{"2":{"249":1}}],["22342",{"2":{"236":1}}],["22332",{"2":{"236":1}}],["22368",{"2":{"249":1}}],["22364",{"2":{"236":1}}],["22366",{"2":{"236":1}}],["22363",{"2":{"236":1}}],["22369",{"2":{"236":1}}],["22365",{"2":{"236":1}}],["22384",{"2":{"249":1}}],["22383",{"2":{"236":1}}],["22381",{"2":{"236":1}}],["22380",{"2":{"236":1}}],["22328",{"2":{"236":1}}],["22325",{"2":{"236":1}}],["22324",{"2":{"236":1}}],["22323",{"2":{"236":1}}],["22321",{"2":{"236":1}}],["22315",{"2":{"249":1}}],["22314",{"2":{"249":1}}],["22312",{"2":{"236":1}}],["22310",{"2":{"236":1}}],["22313",{"2":{"236":1}}],["22311",{"2":{"236":1}}],["22303",{"2":{"249":1}}],["22304",{"2":{"249":1}}],["22305",{"2":{"236":1}}],["22309",{"2":{"236":1}}],["22308",{"2":{"236":1}}],["22201",{"2":{"249":1}}],["22200",{"2":{"236":1}}],["22281",{"2":{"249":1}}],["22280",{"2":{"236":1}}],["22276",{"2":{"249":1}}],["22297",{"2":{"236":1}}],["22239",{"2":{"236":1}}],["22235",{"2":{"236":1}}],["22236",{"2":{"236":1}}],["22242",{"2":{"236":1}}],["22248",{"2":{"236":1}}],["22265",{"2":{"266":1}}],["22263",{"2":{"249":1}}],["22268",{"2":{"236":1}}],["22264",{"2":{"236":1}}],["22267",{"2":{"236":1}}],["22221",{"2":{"236":1}}],["22222",{"2":{"236":1}}],["22251",{"2":{"266":1}}],["22256",{"2":{"236":1}}],["22253",{"2":{"236":1}}],["22212",{"2":{"236":1}}],["22135",{"2":{"266":1}}],["22133",{"2":{"236":1}}],["22114",{"2":{"249":1}}],["22117",{"2":{"236":1}}],["22185",{"2":{"249":1}}],["22188",{"2":{"236":1}}],["22108",{"2":{"236":1}}],["22106",{"2":{"236":1}}],["22105",{"2":{"236":1}}],["22152",{"2":{"236":1}}],["22151",{"2":{"236":1}}],["22149",{"2":{"236":1}}],["22148",{"2":{"236":1}}],["22145",{"2":{"236":1}}],["22144",{"2":{"236":1}}],["22193",{"2":{"236":1}}],["22170",{"2":{"236":1}}],["22163",{"2":{"236":1}}],["22125",{"2":{"236":1}}],["22122",{"2":{"236":1}}],["22121",{"2":{"236":1}}],["22129",{"2":{"236":1}}],["22126",{"2":{"236":1}}],["22123",{"2":{"236":1}}],["220",{"2":{"2908":1,"2909":1}}],["22050u",{"2":{"716":1}}],["22021",{"2":{"236":1}}],["22025",{"2":{"236":1}}],["22082",{"2":{"249":1}}],["22089",{"2":{"236":1}}],["22088",{"2":{"236":1}}],["22087",{"2":{"236":1}}],["22085",{"2":{"236":1}}],["22084",{"2":{"236":1}}],["22068",{"2":{"236":1}}],["22041",{"2":{"236":1}}],["22049",{"2":{"236":1}}],["22034",{"2":{"236":1}}],["22013",{"2":{"236":1}}],["22011",{"2":{"236":1}}],["22010",{"2":{"236":1}}],["22017",{"2":{"236":1}}],["22091",{"2":{"249":1}}],["22099",{"2":{"236":1}}],["22090",{"2":{"236":1}}],["22072",{"2":{"236":1}}],["22073",{"2":{"236":1}}],["22074",{"2":{"236":1}}],["22071",{"2":{"236":1}}],["22009",{"2":{"236":1}}],["22008",{"2":{"236":1}}],["22007",{"2":{"236":1}}],["22006",{"2":{"236":1}}],["22004",{"2":{"236":1}}],["25mhz",{"2":{"2664":1}}],["25k",{"2":{"1522":1}}],["25keys",{"2":{"154":5,"160":1}}],["25xx",{"2":{"743":1,"747":1}}],["25939",{"2":{"333":1}}],["25931",{"2":{"333":1}}],["25902",{"2":{"333":1}}],["25999",{"2":{"333":1}}],["25998",{"2":{"333":1}}],["25977",{"2":{"333":1}}],["25975",{"2":{"333":1}}],["25969",{"2":{"333":1}}],["25946",{"2":{"333":1}}],["25955",{"2":{"333":1}}],["25898",{"2":{"333":1}}],["25891",{"2":{"333":1}}],["25899",{"2":{"333":1}}],["25864",{"2":{"333":1}}],["25834",{"2":{"333":1}}],["25882",{"2":{"333":1}}],["25888",{"2":{"333":1}}],["25857",{"2":{"333":1}}],["25856",{"2":{"333":1}}],["25854",{"2":{"333":1}}],["25859",{"2":{"333":1}}],["25808",{"2":{"333":1}}],["25802",{"2":{"328":1}}],["25804",{"2":{"328":1}}],["25818",{"2":{"328":1}}],["25814",{"2":{"328":1}}],["25819",{"2":{"328":1}}],["25797",{"2":{"328":1}}],["25733",{"2":{"328":1}}],["25731",{"2":{"328":1}}],["25774",{"2":{"328":1}}],["25775",{"2":{"328":1}}],["25754",{"2":{"328":1}}],["25751",{"2":{"328":1}}],["25780",{"2":{"328":1}}],["25785",{"2":{"328":1}}],["25786",{"2":{"328":1}}],["25763",{"2":{"328":1}}],["25717",{"2":{"328":1}}],["25716",{"2":{"328":1}}],["25706",{"2":{"328":1}}],["255",{"2":{"639":2,"724":1,"858":1,"923":2,"957":2,"991":2,"1025":2,"1059":2,"1093":2,"1127":2,"1161":2,"1285":4,"1527":3,"1538":2,"1840":1,"1846":1,"1878":1,"1884":1,"1886":1,"1888":1,"1933":1,"1951":2,"2060":1,"2069":3,"2074":9,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2138":3,"2140":3,"2175":2,"2178":3,"2180":1,"2191":9,"2194":2,"2195":2,"2217":1,"2242":1,"2281":1,"2373":2,"2750":20,"2770":1,"2771":3,"2850":2,"2864":4,"2870":3,"2871":5}}],["25503",{"2":{"333":1}}],["25502",{"2":{"333":1}}],["25500",{"2":{"317":1}}],["25590",{"2":{"328":1}}],["25599",{"2":{"328":1}}],["25598",{"2":{"328":1}}],["25594",{"2":{"328":1}}],["25595",{"2":{"328":1}}],["25570",{"2":{"333":1}}],["25571",{"2":{"328":1}}],["25572",{"2":{"328":1}}],["25526",{"2":{"328":1}}],["25587",{"2":{"328":1}}],["25580",{"2":{"317":1}}],["25563",{"2":{"328":1}}],["25561",{"2":{"328":1}}],["25560",{"2":{"328":1}}],["25565",{"2":{"328":1}}],["25564",{"2":{"317":1}}],["25537",{"2":{"328":1}}],["25559",{"2":{"328":1}}],["25558",{"2":{"328":1}}],["25556",{"2":{"317":1}}],["25550",{"2":{"317":1}}],["25546",{"2":{"317":1}}],["25547",{"2":{"317":1}}],["25542",{"2":{"317":1}}],["25541",{"2":{"317":1}}],["25516",{"2":{"328":1}}],["25515",{"2":{"328":1}}],["25517",{"2":{"317":1}}],["25513",{"2":{"317":1}}],["254",{"2":{"1949":1,"2279":1}}],["25407",{"2":{"333":1}}],["25408",{"2":{"317":1}}],["25477",{"2":{"317":1}}],["25471",{"2":{"317":1}}],["25475",{"2":{"317":1}}],["25492",{"2":{"328":1}}],["25497",{"2":{"317":1}}],["25498",{"2":{"317":1}}],["25494",{"2":{"317":1}}],["25493",{"2":{"317":1}}],["25491",{"2":{"317":1}}],["25467",{"2":{"328":1}}],["25469",{"2":{"317":1}}],["25468",{"2":{"317":1}}],["25462",{"2":{"317":1}}],["25453",{"2":{"328":1}}],["25458",{"2":{"317":1}}],["25459",{"2":{"317":1}}],["25456",{"2":{"317":1}}],["25452",{"2":{"317":1}}],["25450",{"2":{"317":1}}],["25431",{"2":{"328":1}}],["25436",{"2":{"317":1}}],["25438",{"2":{"317":1}}],["25433",{"2":{"317":1}}],["25430",{"2":{"317":1}}],["25437",{"2":{"317":1}}],["25422",{"2":{"328":1}}],["25423",{"2":{"317":1}}],["25429",{"2":{"317":1}}],["25428",{"2":{"317":1}}],["25421",{"2":{"317":1}}],["25415",{"2":{"328":1}}],["25417",{"2":{"317":1}}],["25414",{"2":{"317":1}}],["25488",{"2":{"317":1}}],["25489",{"2":{"317":1}}],["25487",{"2":{"317":1}}],["25486",{"2":{"317":1}}],["25481",{"2":{"317":1}}],["25444",{"2":{"317":1}}],["25442",{"2":{"317":1}}],["253",{"2":{"1949":1,"2279":1}}],["25322",{"2":{"317":1}}],["25328",{"2":{"317":1}}],["25370",{"2":{"317":1}}],["25369",{"2":{"317":1}}],["25351",{"2":{"317":1}}],["25342",{"2":{"317":1}}],["25341",{"2":{"317":1}}],["25344",{"2":{"317":1}}],["25334",{"2":{"328":1}}],["25338",{"2":{"317":1}}],["25331",{"2":{"317":1}}],["25317",{"2":{"317":1}}],["25316",{"2":{"317":1}}],["25315",{"2":{"317":1}}],["25383",{"2":{"317":1}}],["25395",{"2":{"317":1}}],["25245",{"2":{"328":1}}],["25247",{"2":{"328":1}}],["25246",{"2":{"308":1}}],["25238",{"2":{"308":1}}],["25237",{"2":{"308":1}}],["25210",{"2":{"308":1}}],["25219",{"2":{"308":1}}],["25291",{"2":{"317":1}}],["25298",{"2":{"308":1}}],["25295",{"2":{"308":1}}],["25294",{"2":{"308":1}}],["25293",{"2":{"308":1}}],["25285",{"2":{"317":1}}],["25288",{"2":{"308":1}}],["25287",{"2":{"308":1}}],["25280",{"2":{"308":1}}],["25263",{"2":{"308":1}}],["25268",{"2":{"308":1}}],["25266",{"2":{"308":1}}],["25262",{"2":{"308":1}}],["25279",{"2":{"317":1}}],["25272",{"2":{"308":1}}],["25274",{"2":{"308":1}}],["25271",{"2":{"308":1}}],["25254",{"2":{"308":1}}],["25250",{"2":{"308":1}}],["25251",{"2":{"308":1}}],["25255",{"2":{"308":1}}],["25204",{"2":{"308":1}}],["25209",{"2":{"308":1}}],["25208",{"2":{"308":1}}],["25207",{"2":{"308":1}}],["25203",{"2":{"308":1}}],["25201",{"2":{"308":1}}],["25200",{"2":{"308":1}}],["251",{"2":{"1949":1,"2279":1}}],["25168",{"2":{"328":1}}],["25160",{"2":{"317":1}}],["25166",{"2":{"308":1}}],["25169",{"2":{"308":1}}],["25198",{"2":{"328":1}}],["25194",{"2":{"308":1}}],["25191",{"2":{"308":1}}],["25193",{"2":{"308":1}}],["25190",{"2":{"308":1}}],["25199",{"2":{"308":1}}],["25157",{"2":{"308":1}}],["25146",{"2":{"308":1}}],["25142",{"2":{"308":1}}],["25149",{"2":{"308":1}}],["25141",{"2":{"308":1}}],["25116",{"2":{"308":1}}],["25111",{"2":{"308":1}}],["25189",{"2":{"308":1}}],["25181",{"2":{"308":1}}],["25182",{"2":{"308":1}}],["25187",{"2":{"308":1}}],["25184",{"2":{"308":1}}],["25175",{"2":{"308":1}}],["25178",{"2":{"308":1}}],["25176",{"2":{"308":1}}],["25173",{"2":{"308":1}}],["25171",{"2":{"308":1}}],["25135",{"2":{"308":1}}],["25121",{"2":{"308":1}}],["25129",{"2":{"308":1}}],["25125",{"2":{"308":1}}],["250ms",{"2":{"1940":1}}],["250",{"2":{"856":2,"1358":1,"1788":1,"1940":1,"1975":1,"1996":1}}],["25060",{"2":{"308":1}}],["25061",{"2":{"308":1}}],["25015",{"2":{"308":1}}],["25018",{"2":{"308":1}}],["25010",{"2":{"308":1}}],["25088",{"2":{"308":1}}],["25080",{"2":{"308":1}}],["25085",{"2":{"308":1}}],["25070",{"2":{"308":1}}],["25049",{"2":{"317":1}}],["25046",{"2":{"308":1}}],["25042",{"2":{"308":1}}],["25009",{"2":{"317":1}}],["25005",{"2":{"308":1}}],["25001",{"2":{"308":1}}],["25050",{"2":{"308":2}}],["25u×2uh",{"2":{"2862":1}}],["25u",{"2":{"259":1,"2780":1}}],["25",{"0":{"237":1,"267":1,"295":1},"1":{"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1},"2":{"265":1,"266":1,"407":4,"563":1,"956":1,"1159":1,"1486":1,"1521":1,"1680":1,"1738":3,"1919":1,"1962":3,"1965":2,"1996":1,"2011":3,"2064":1,"2180":1,"2372":1,"2417":3,"2513":3,"2520":1,"2529":3,"2760":1,"2781":12,"2792":1,"2862":2,"2917":1,"2919":1}}],["256kb",{"2":{"2682":1}}],["256u",{"2":{"716":2}}],["25673",{"2":{"328":1}}],["25678",{"2":{"328":1}}],["25671",{"2":{"328":1}}],["25649",{"2":{"328":1}}],["25648",{"2":{"328":1}}],["25644",{"2":{"328":1}}],["25694",{"2":{"328":1}}],["25668",{"2":{"328":1}}],["25665",{"2":{"328":1}}],["25654",{"2":{"328":1}}],["25653",{"2":{"328":1}}],["25650",{"2":{"328":1}}],["25625",{"2":{"328":1}}],["25624",{"2":{"328":1}}],["25623",{"2":{"328":1}}],["25622",{"2":{"328":1}}],["25621",{"2":{"328":1}}],["25620",{"2":{"328":1}}],["25619",{"2":{"328":1}}],["25618",{"2":{"328":1}}],["25617",{"2":{"328":1}}],["25616",{"2":{"328":1}}],["25610",{"2":{"328":1}}],["25609",{"2":{"328":1}}],["25608",{"2":{"328":1}}],["25607",{"2":{"328":1}}],["25606",{"2":{"328":1}}],["25605",{"2":{"328":1}}],["25603",{"2":{"328":1}}],["25602",{"2":{"328":1}}],["25601",{"2":{"328":1}}],["25600",{"2":{"328":1}}],["25638",{"2":{"328":1}}],["25637",{"2":{"328":1}}],["25632",{"2":{"328":1}}],["256",{"2":{"46":1,"756":1,"1297":1,"2747":2,"2748":4,"2750":1,"2751":1,"2770":1}}],["26356",{"2":{"2622":1}}],["266",{"2":{"1373":1}}],["26k7",{"2":{"921":1,"955":1,"989":1}}],["26kbps",{"2":{"568":1,"2268":1}}],["26025",{"2":{"333":1}}],["26024",{"2":{"333":1}}],["26028",{"2":{"333":1}}],["26012",{"2":{"333":1}}],["26011",{"2":{"333":1}}],["26010",{"2":{"333":1}}],["26000",{"2":{"1204":1}}],["26008",{"2":{"333":1}}],["26007",{"2":{"333":1}}],["26006",{"2":{"333":1}}],["26",{"0":{"146":1,"177":1,"192":1,"223":1,"250":1},"1":{"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1},"2":{"170":1,"279":1,"373":2,"407":6,"921":1,"955":1,"989":1,"1486":1,"1521":1,"1680":1,"1738":3,"1962":3,"2011":3,"2513":3,"2529":3,"2792":1}}],["21944",{"2":{"249":1}}],["21948",{"2":{"236":1}}],["21926",{"2":{"236":1}}],["21929",{"2":{"236":1}}],["21939",{"2":{"236":2}}],["21938",{"2":{"236":1}}],["21996",{"2":{"236":1}}],["21995",{"2":{"236":1}}],["21994",{"2":{"236":1}}],["21993",{"2":{"236":1}}],["21991",{"2":{"236":1}}],["21981",{"2":{"236":1}}],["21986",{"2":{"236":1}}],["21975",{"2":{"236":1}}],["21979",{"2":{"236":1}}],["21978",{"2":{"236":1}}],["21977",{"2":{"236":1}}],["21966",{"2":{"236":1}}],["21964",{"2":{"236":1}}],["21960",{"2":{"236":1}}],["21918",{"2":{"236":1}}],["21909",{"2":{"236":1}}],["21906",{"2":{"236":1}}],["21908",{"2":{"236":1}}],["21905",{"2":{"236":1}}],["21904",{"2":{"236":1}}],["21903",{"2":{"236":1}}],["21883",{"2":{"249":1}}],["21825",{"2":{"236":1}}],["21827",{"2":{"210":1}}],["21897",{"2":{"236":1}}],["21898",{"2":{"236":1}}],["21892",{"2":{"236":1}}],["21891",{"2":{"236":1}}],["21890",{"2":{"236":1}}],["21879",{"2":{"236":1}}],["21874",{"2":{"236":1}}],["21878",{"2":{"236":1}}],["21875",{"2":{"236":1}}],["21866",{"2":{"236":1}}],["21865",{"2":{"236":1}}],["21861",{"2":{"236":1}}],["21859",{"2":{"236":1}}],["21804",{"2":{"236":1}}],["21800",{"2":{"210":1}}],["21842",{"2":{"210":1}}],["21830",{"2":{"210":1}}],["21817",{"2":{"210":1}}],["21815",{"2":{"210":1}}],["21775",{"2":{"249":1}}],["21770",{"2":{"249":1}}],["21777",{"2":{"249":1}}],["21773",{"2":{"210":1}}],["21721",{"2":{"249":1}}],["21727",{"2":{"210":1}}],["21767",{"2":{"236":1}}],["21744",{"2":{"236":1}}],["21740",{"2":{"236":1}}],["21792",{"2":{"210":1}}],["21757",{"2":{"210":1}}],["21751",{"2":{"210":1}}],["21717",{"2":{"236":1}}],["21711",{"2":{"236":1}}],["21718",{"2":{"210":1}}],["21714",{"2":{"210":1}}],["21710",{"2":{"210":1}}],["21704",{"2":{"210":1}}],["21709",{"2":{"210":1}}],["21708",{"2":{"210":1}}],["21703",{"2":{"210":1}}],["216",{"2":{"721":1,"2748":1}}],["21695",{"2":{"266":1}}],["21671",{"2":{"236":1}}],["21676",{"2":{"210":1}}],["21687",{"2":{"249":1}}],["21684",{"2":{"236":1}}],["21688",{"2":{"236":1}}],["21682",{"2":{"210":1}}],["21667",{"2":{"236":1}}],["21662",{"2":{"236":1}}],["21664",{"2":{"236":1}}],["21663",{"2":{"210":1}}],["21661",{"2":{"210":1}}],["21656",{"2":{"266":1}}],["21654",{"2":{"236":1}}],["21659",{"2":{"210":1}}],["21653",{"2":{"210":1}}],["21658",{"2":{"210":1}}],["21651",{"2":{"210":1}}],["21642",{"2":{"236":1}}],["21645",{"2":{"210":1}}],["21644",{"2":{"210":1}}],["21640",{"2":{"210":1}}],["21636",{"2":{"210":1}}],["21635",{"2":{"210":1}}],["21630",{"2":{"210":1}}],["21623",{"2":{"249":1}}],["21626",{"2":{"210":1}}],["21625",{"2":{"210":1}}],["21624",{"2":{"210":1}}],["21611",{"2":{"236":1}}],["21614",{"2":{"210":1}}],["21612",{"2":{"210":1}}],["21613",{"2":{"210":1}}],["21576",{"2":{"236":1}}],["21574",{"2":{"236":1}}],["21579",{"2":{"210":1}}],["21572",{"2":{"210":1}}],["21548",{"2":{"249":1}}],["21543",{"2":{"210":1}}],["21540",{"2":{"210":1}}],["21569",{"2":{"210":1}}],["21567",{"2":{"210":1}}],["21526",{"2":{"210":1}}],["21523",{"2":{"210":1}}],["21592",{"2":{"210":1}}],["21596",{"2":{"210":1}}],["21594",{"2":{"210":1}}],["21591",{"2":{"210":1}}],["21583",{"2":{"236":1}}],["21589",{"2":{"210":1}}],["21588",{"2":{"210":1}}],["21580",{"2":{"210":1}}],["21554",{"2":{"210":1}}],["21553",{"2":{"210":1}}],["21558",{"2":{"210":1}}],["21551",{"2":{"210":1}}],["21519",{"2":{"210":1}}],["21517",{"2":{"210":1}}],["21514",{"2":{"210":1}}],["21507",{"2":{"210":1}}],["21410",{"2":{"266":1}}],["21456",{"2":{"249":1}}],["21450",{"2":{"236":1}}],["21454",{"2":{"210":1}}],["21402",{"2":{"236":1}}],["21405",{"2":{"210":1}}],["21448",{"2":{"249":1}}],["21447",{"2":{"210":1}}],["21444",{"2":{"210":1}}],["21467",{"2":{"236":1}}],["21468",{"2":{"210":1}}],["21465",{"2":{"210":1}}],["21494",{"2":{"236":1}}],["21497",{"2":{"210":1}}],["21495",{"2":{"210":1}}],["21498",{"2":{"210":1}}],["21496",{"2":{"210":2}}],["21493",{"2":{"210":1}}],["21489",{"2":{"210":1}}],["21484",{"2":{"210":1}}],["21482",{"2":{"210":1}}],["21486",{"2":{"210":1}}],["21485",{"2":{"210":1}}],["21480",{"2":{"210":1}}],["21476",{"2":{"210":1}}],["21473",{"2":{"210":1}}],["21472",{"2":{"210":1}}],["21435",{"2":{"210":1}}],["21432",{"2":{"210":1}}],["21436",{"2":{"210":1}}],["21434",{"2":{"210":1}}],["21422",{"2":{"210":1}}],["21427",{"2":{"210":1}}],["21424",{"2":{"210":1}}],["213",{"2":{"1356":1}}],["21398",{"2":{"249":1}}],["21391",{"2":{"210":1}}],["21345",{"2":{"210":1}}],["21343",{"2":{"210":1}}],["21307",{"2":{"210":1}}],["21302",{"2":{"210":1}}],["21380",{"2":{"236":1}}],["21389",{"2":{"210":1}}],["21384",{"2":{"210":1}}],["21382",{"2":{"210":1}}],["21370",{"2":{"210":1}}],["21364",{"2":{"236":1}}],["21365",{"2":{"210":1}}],["21363",{"2":{"210":1}}],["21360",{"2":{"210":1}}],["21366",{"2":{"210":1}}],["21339",{"2":{"210":1}}],["21337",{"2":{"210":1}}],["21332",{"2":{"210":1}}],["21324",{"2":{"210":1}}],["21325",{"2":{"210":1}}],["21322",{"2":{"210":1}}],["21320",{"2":{"210":1}}],["21354",{"2":{"210":1}}],["21353",{"2":{"210":1}}],["21352",{"2":{"210":1}}],["21206",{"2":{"210":1}}],["21205",{"2":{"210":1}}],["21298",{"2":{"210":1}}],["21299",{"2":{"210":1}}],["21296",{"2":{"210":1}}],["21292",{"2":{"210":1}}],["21293",{"2":{"210":1}}],["21287",{"2":{"210":1}}],["21284",{"2":{"210":1}}],["21281",{"2":{"210":1}}],["21273",{"2":{"249":1}}],["21272",{"2":{"210":1}}],["21278",{"2":{"210":1}}],["21271",{"2":{"210":1}}],["21260",{"2":{"210":1}}],["21248",{"2":{"210":1}}],["21240",{"2":{"210":1}}],["21247",{"2":{"210":1}}],["21237",{"2":{"210":1}}],["21234",{"2":{"210":1}}],["21217",{"2":{"210":1}}],["21124",{"2":{"249":1}}],["21174",{"2":{"236":1}}],["21171",{"2":{"236":1}}],["21176",{"2":{"210":1}}],["21190",{"2":{"210":1}}],["21144",{"2":{"210":1}}],["21169",{"2":{"210":1}}],["21164",{"2":{"210":1}}],["21157",{"2":{"210":1}}],["21154",{"2":{"210":1}}],["21151",{"2":{"210":1}}],["21139",{"2":{"210":1}}],["21135",{"2":{"210":1}}],["21134",{"2":{"210":1}}],["21113",{"2":{"210":1}}],["21110",{"2":{"210":1}}],["21116",{"2":{"210":1}}],["21115",{"2":{"210":1}}],["21109",{"2":{"210":1}}],["21108",{"2":{"210":1}}],["21107",{"2":{"210":1}}],["210",{"2":{"2908":2,"2909":2,"2910":1}}],["21060",{"2":{"236":1}}],["21033",{"2":{"222":1}}],["21032",{"2":{"222":1}}],["21044",{"2":{"222":1}}],["21046",{"2":{"210":1}}],["21005",{"2":{"222":1}}],["21007",{"2":{"222":1}}],["21002",{"2":{"222":1}}],["21013",{"2":{"222":1}}],["21015",{"2":{"210":1}}],["21029",{"2":{"222":1}}],["21079",{"2":{"210":1}}],["21072",{"2":{"210":1}}],["21096",{"2":{"249":1}}],["21095",{"2":{"210":1}}],["21094",{"2":{"210":1}}],["21092",{"2":{"210":1}}],["21054",{"2":{"210":1}}],["21056",{"2":{"210":1}}],["21086",{"2":{"210":1}}],["21",{"2":{"145":1,"176":2,"191":1,"222":1,"249":1,"294":1,"371":2,"407":1,"1201":1,"1486":1,"1680":1,"1738":3,"1962":3,"2011":3,"2513":3,"2529":3}}],["27312",{"2":{"2580":1}}],["275ms",{"2":{"2312":1}}],["275",{"2":{"2312":1}}],["270",{"2":{"1955":1,"1956":1,"1966":2,"1978":2,"1980":2,"2044":2,"2750":1}}],["270°",{"2":{"1735":1}}],["27749e1",{"2":{"73":1}}],["27",{"0":{"66":1,"115":1,"161":1,"200":1},"1":{"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1},"2":{"88":1,"104":1,"127":1,"170":1,"407":5,"1486":1,"1680":1,"1738":3,"1962":1,"2011":3,"2513":3,"2529":3}}],["282",{"2":{"1962":2}}],["285",{"2":{"1736":2,"2761":2}}],["28672",{"2":{"1362":2,"2580":1,"2622":1}}],["280",{"2":{"1282":1}}],["28e9",{"2":{"686":1}}],["28",{"0":{"52":1,"96":1,"135":1,"211":1},"1":{"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1},"2":{"55":1,"88":1,"104":1,"127":1,"407":5,"1486":1,"1680":1,"1738":3,"1962":2,"2011":3,"2513":3,"2529":3}}],["2",{"0":{"400":1,"402":1,"595":1,"1295":1,"1364":1,"1935":1,"2030":1,"2039":1,"2308":1,"2424":1,"2469":1,"2481":1,"2595":1,"2613":1,"2868":1},"1":{"2031":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1,"2482":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1},"2":{"37":2,"45":3,"49":1,"69":1,"114":7,"120":2,"133":2,"134":3,"175":1,"176":4,"188":1,"191":5,"210":2,"212":3,"222":7,"236":4,"249":2,"266":12,"272":2,"285":2,"307":1,"311":8,"317":1,"335":1,"348":1,"355":4,"369":3,"373":1,"401":1,"402":1,"406":5,"432":1,"505":1,"516":1,"530":1,"544":2,"549":1,"562":2,"568":1,"579":1,"587":2,"589":1,"591":6,"597":1,"627":1,"681":1,"686":1,"690":1,"692":21,"693":1,"696":2,"698":2,"713":2,"716":2,"717":1,"723":1,"746":1,"747":1,"751":1,"752":1,"753":2,"799":2,"854":2,"856":1,"857":4,"886":2,"890":1,"918":4,"921":2,"922":2,"953":2,"955":2,"956":2,"987":2,"989":2,"990":2,"1021":2,"1024":2,"1055":2,"1058":2,"1089":4,"1092":4,"1123":4,"1126":4,"1157":2,"1160":4,"1195":1,"1198":1,"1202":1,"1204":1,"1213":2,"1249":2,"1297":1,"1300":3,"1308":2,"1326":2,"1327":1,"1354":1,"1370":1,"1392":1,"1416":1,"1435":1,"1461":1,"1464":1,"1465":1,"1479":1,"1486":1,"1497":1,"1529":1,"1532":1,"1550":1,"1584":1,"1585":1,"1619":2,"1624":3,"1649":1,"1651":1,"1655":5,"1658":1,"1659":1,"1660":1,"1661":1,"1664":1,"1673":1,"1677":1,"1678":2,"1679":6,"1680":1,"1693":1,"1696":2,"1735":2,"1738":3,"1791":3,"1833":2,"1837":2,"1840":1,"1844":1,"1914":1,"1919":32,"1927":4,"1931":4,"1933":1,"1935":1,"1953":1,"1955":3,"1956":1,"1962":2,"1968":1,"1976":1,"1982":1,"2005":5,"2011":3,"2030":2,"2039":3,"2041":3,"2060":1,"2066":1,"2073":1,"2074":1,"2166":3,"2167":1,"2176":6,"2178":2,"2182":4,"2183":1,"2184":1,"2191":2,"2199":1,"2200":1,"2215":2,"2241":1,"2260":2,"2268":1,"2273":2,"2289":2,"2293":1,"2294":3,"2296":19,"2308":5,"2310":1,"2311":2,"2312":1,"2315":1,"2367":1,"2370":4,"2381":1,"2388":1,"2410":1,"2417":3,"2437":2,"2443":1,"2447":6,"2448":6,"2453":1,"2481":2,"2500":1,"2503":9,"2509":4,"2511":4,"2513":3,"2520":32,"2521":4,"2529":3,"2535":2,"2540":2,"2543":2,"2550":2,"2551":4,"2553":1,"2556":1,"2593":1,"2599":1,"2625":1,"2645":1,"2676":1,"2684":2,"2714":16,"2721":1,"2725":2,"2748":2,"2758":1,"2766":1,"2770":2,"2776":16,"2777":12,"2813":1,"2818":1,"2856":1,"2862":1,"2864":3,"2865":1,"2868":6,"2870":1,"2871":4,"2873":1,"2905":2,"2911":7,"2912":9,"2913":5,"2919":1,"2921":3,"2941":1}}],["290",{"2":{"2761":2}}],["295",{"2":{"2238":1}}],["294",{"2":{"2238":1}}],["29k",{"2":{"1021":1,"1023":2,"1055":1,"1057":2,"1157":1,"1159":2}}],["29",{"0":{"9":1,"39":1,"78":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1},"2":{"88":1,"104":1,"127":1,"396":1,"407":4,"1023":1,"1057":1,"1159":1,"1486":1,"1680":1,"1738":3,"1962":2,"2011":3,"2513":3,"2529":3,"2550":1,"2551":4}}],["20x4",{"2":{"1691":1}}],["20kbps",{"2":{"568":1,"2268":1}}],["20899",{"2":{"222":1}}],["20895",{"2":{"222":1}}],["20893",{"2":{"222":1}}],["20892",{"2":{"222":1}}],["20891",{"2":{"222":1}}],["20897",{"2":{"222":1}}],["20889",{"2":{"222":1}}],["20888",{"2":{"222":1}}],["20887",{"2":{"222":1}}],["20886",{"2":{"222":1}}],["20885",{"2":{"222":1}}],["20884",{"2":{"222":1}}],["20882",{"2":{"222":1}}],["20881",{"2":{"222":1}}],["20880",{"2":{"222":1}}],["20879",{"2":{"222":1}}],["20878",{"2":{"222":1}}],["20877",{"2":{"222":1}}],["20876",{"2":{"222":1}}],["20875",{"2":{"222":1}}],["20874",{"2":{"222":1}}],["20873",{"2":{"222":1}}],["20872",{"2":{"222":1}}],["20871",{"2":{"222":1}}],["20870",{"2":{"222":1}}],["20863",{"2":{"236":1}}],["20869",{"2":{"222":1}}],["20867",{"2":{"222":1}}],["20866",{"2":{"222":1}}],["20865",{"2":{"222":1}}],["20864",{"2":{"222":1}}],["20861",{"2":{"222":1}}],["20860",{"2":{"222":1}}],["20857",{"2":{"236":1}}],["20859",{"2":{"222":1}}],["20858",{"2":{"222":1}}],["20855",{"2":{"222":1}}],["20854",{"2":{"222":1}}],["20853",{"2":{"222":1}}],["20851",{"2":{"222":1}}],["20850",{"2":{"222":1}}],["20849",{"2":{"222":1}}],["20848",{"2":{"222":1}}],["20847",{"2":{"222":1}}],["20845",{"2":{"222":1}}],["20844",{"2":{"222":1}}],["20843",{"2":{"222":1}}],["20842",{"2":{"222":1}}],["20835",{"2":{"222":1}}],["20834",{"2":{"222":1}}],["20833",{"2":{"222":1}}],["20832",{"2":{"222":1}}],["20831",{"2":{"222":1}}],["20830",{"2":{"222":1}}],["20836",{"2":{"222":1}}],["20828",{"2":{"285":1}}],["20829",{"2":{"222":1}}],["20827",{"2":{"222":1}}],["20825",{"2":{"222":1}}],["20824",{"2":{"222":1}}],["20822",{"2":{"222":1}}],["20821",{"2":{"222":1}}],["20820",{"2":{"222":1}}],["20819",{"2":{"222":1}}],["20818",{"2":{"222":1}}],["20816",{"2":{"222":1}}],["20814",{"2":{"222":1}}],["20813",{"2":{"222":1}}],["20812",{"2":{"222":1}}],["20810",{"2":{"222":1}}],["20806",{"2":{"222":1}}],["20808",{"2":{"222":1}}],["20805",{"2":{"222":1}}],["20804",{"2":{"222":1}}],["20809",{"2":{"222":1}}],["20807",{"2":{"222":1}}],["20802",{"2":{"222":1}}],["20801",{"2":{"222":1}}],["20800",{"2":{"222":1}}],["209",{"2":{"251":1}}],["20981",{"2":{"222":1}}],["20949",{"2":{"222":1}}],["20962",{"2":{"222":1}}],["20960",{"2":{"222":1}}],["20969",{"2":{"222":1}}],["20953",{"2":{"236":1}}],["20958",{"2":{"222":1}}],["20957",{"2":{"222":1}}],["20956",{"2":{"222":1}}],["20931",{"2":{"222":1}}],["20932",{"2":{"222":1}}],["20930",{"2":{"222":1}}],["20924",{"2":{"222":1}}],["20923",{"2":{"222":1}}],["20929",{"2":{"222":1}}],["20928",{"2":{"222":1}}],["20927",{"2":{"222":1}}],["20926",{"2":{"222":1}}],["20921",{"2":{"222":1}}],["20920",{"2":{"222":1}}],["20915",{"2":{"222":1}}],["20919",{"2":{"222":1}}],["20918",{"2":{"222":1}}],["20917",{"2":{"222":1}}],["20913",{"2":{"222":1}}],["20912",{"2":{"222":1}}],["20908",{"2":{"222":1}}],["20907",{"2":{"222":1}}],["20906",{"2":{"222":1}}],["20901",{"2":{"222":1}}],["20900",{"2":{"222":1}}],["20998",{"2":{"222":1}}],["20996",{"2":{"210":1}}],["20992",{"2":{"210":1}}],["20799",{"2":{"222":1}}],["20791",{"2":{"222":1}}],["20790",{"2":{"222":1}}],["20789",{"2":{"222":1}}],["20788",{"2":{"222":1}}],["20787",{"2":{"222":1}}],["20786",{"2":{"222":1}}],["20785",{"2":{"222":1}}],["20784",{"2":{"222":1}}],["20783",{"2":{"222":1}}],["20782",{"2":{"222":1}}],["20781",{"2":{"222":1}}],["20779",{"2":{"222":1}}],["20778",{"2":{"222":1}}],["20777",{"2":{"222":1}}],["20776",{"2":{"222":1}}],["20775",{"2":{"222":1}}],["20774",{"2":{"222":1}}],["20773",{"2":{"222":1}}],["20770",{"2":{"222":1}}],["20765",{"2":{"222":1}}],["20764",{"2":{"222":1}}],["20763",{"2":{"222":1}}],["20761",{"2":{"210":1}}],["20756",{"2":{"222":1}}],["20755",{"2":{"222":1}}],["20754",{"2":{"222":1}}],["20753",{"2":{"222":1}}],["20752",{"2":{"222":1}}],["20751",{"2":{"222":1}}],["20750",{"2":{"222":1}}],["20749",{"2":{"222":1}}],["20748",{"2":{"222":1}}],["20747",{"2":{"222":1}}],["20746",{"2":{"222":1}}],["20745",{"2":{"222":1}}],["20744",{"2":{"222":1}}],["20743",{"2":{"222":1}}],["20742",{"2":{"222":1}}],["20741",{"2":{"222":1}}],["20740",{"2":{"222":1}}],["20732",{"2":{"236":1}}],["20733",{"2":{"222":1}}],["20739",{"2":{"222":1}}],["20738",{"2":{"222":1}}],["20737",{"2":{"222":1}}],["20736",{"2":{"222":1}}],["20735",{"2":{"222":1}}],["20731",{"2":{"222":1}}],["20734",{"2":{"222":1}}],["20723",{"2":{"222":1}}],["20728",{"2":{"222":1}}],["20727",{"2":{"222":1}}],["20726",{"2":{"222":1}}],["20725",{"2":{"222":1}}],["20724",{"2":{"222":1}}],["20722",{"2":{"222":1}}],["20720",{"2":{"222":1}}],["20719",{"2":{"222":1}}],["20718",{"2":{"222":1}}],["20717",{"2":{"222":1}}],["20716",{"2":{"222":1}}],["20715",{"2":{"222":1}}],["20714",{"2":{"222":1}}],["20713",{"2":{"222":1}}],["20712",{"2":{"222":1}}],["20711",{"2":{"222":1}}],["20710",{"2":{"222":1}}],["20708",{"2":{"222":1}}],["20706",{"2":{"222":1}}],["20703",{"2":{"222":1}}],["20699",{"2":{"222":1}}],["20698",{"2":{"222":1}}],["20697",{"2":{"222":1}}],["20696",{"2":{"222":1}}],["20695",{"2":{"222":1}}],["20694",{"2":{"222":1}}],["20693",{"2":{"222":1}}],["20692",{"2":{"222":1}}],["20691",{"2":{"222":1}}],["20689",{"2":{"222":1}}],["20688",{"2":{"222":1}}],["20685",{"2":{"222":1}}],["20684",{"2":{"222":1}}],["20682",{"2":{"222":1}}],["20681",{"2":{"222":1}}],["20680",{"2":{"222":1}}],["2067",{"2":{"686":1}}],["20670",{"2":{"222":1}}],["20679",{"2":{"222":1}}],["20678",{"2":{"222":1}}],["20677",{"2":{"222":1}}],["20676",{"2":{"222":1}}],["20675",{"2":{"222":1}}],["20672",{"2":{"222":1}}],["20671",{"2":{"222":1}}],["20669",{"2":{"222":2}}],["20667",{"2":{"222":1}}],["20666",{"2":{"222":1}}],["20665",{"2":{"222":1}}],["20663",{"2":{"222":1}}],["20662",{"2":{"222":1}}],["20661",{"2":{"222":1}}],["20660",{"2":{"222":1}}],["20653",{"2":{"222":1}}],["20659",{"2":{"222":1}}],["20658",{"2":{"222":1}}],["20657",{"2":{"222":1}}],["20651",{"2":{"222":1}}],["20633",{"2":{"222":1}}],["20634",{"2":{"222":1}}],["20639",{"2":{"222":1}}],["20636",{"2":{"222":1}}],["20635",{"2":{"222":1}}],["20638",{"2":{"222":1}}],["20629",{"2":{"222":1}}],["20628",{"2":{"222":1}}],["20622",{"2":{"222":1}}],["20621",{"2":{"222":1}}],["20620",{"2":{"222":1}}],["20623",{"2":{"222":1}}],["20619",{"2":{"222":1}}],["20614",{"2":{"222":1}}],["20613",{"2":{"222":1}}],["20612",{"2":{"222":1}}],["20611",{"2":{"222":1}}],["20610",{"2":{"222":1}}],["20604",{"2":{"222":1}}],["20600",{"2":{"222":1}}],["20645",{"2":{"249":1}}],["20648",{"2":{"222":1}}],["20640",{"2":{"222":1}}],["20642",{"2":{"222":1}}],["20646",{"2":{"210":1}}],["201",{"2":{"2908":1}}],["20101",{"2":{"266":1}}],["20188",{"2":{"222":1}}],["20183",{"2":{"222":1}}],["20148",{"2":{"222":1}}],["20168",{"2":{"222":1}}],["20167",{"2":{"222":1}}],["20113",{"2":{"222":1}}],["20110",{"2":{"222":1}}],["2017",{"2":{"371":2,"2425":1,"2457":3}}],["20177",{"2":{"222":1}}],["20172",{"2":{"222":1}}],["2015",{"2":{"1340":1,"2457":1}}],["20157",{"2":{"222":1}}],["20156",{"2":{"222":1}}],["20155",{"2":{"222":1}}],["20159",{"2":{"222":1}}],["20154",{"2":{"222":1}}],["20150",{"2":{"222":1}}],["20191",{"2":{"222":1}}],["20194",{"2":{"222":1}}],["20192",{"2":{"222":1}}],["2019",{"0":{"0":1,"1317":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1},"2":{"55":2,"134":1,"407":1}}],["20405",{"2":{"266":1}}],["20402",{"2":{"210":1}}],["20456",{"2":{"222":1}}],["20454",{"2":{"222":1}}],["20410",{"2":{"236":1}}],["20411",{"2":{"222":1}}],["20417",{"2":{"222":1}}],["20412",{"2":{"222":1}}],["20499",{"2":{"222":1}}],["20498",{"2":{"222":1}}],["20496",{"2":{"222":1}}],["20495",{"2":{"222":1}}],["20494",{"2":{"222":1}}],["20491",{"2":{"222":1}}],["20490",{"2":{"222":1}}],["20480",{"2":{"2501":1}}],["2048",{"2":{"751":1,"754":3}}],["20489",{"2":{"222":1}}],["20488",{"2":{"222":1}}],["20487",{"2":{"222":1}}],["20481",{"2":{"210":1}}],["20475",{"2":{"222":1}}],["20473",{"2":{"222":1}}],["20478",{"2":{"222":1}}],["20477",{"2":{"222":1}}],["20474",{"2":{"222":1}}],["20470",{"2":{"222":1}}],["20468",{"2":{"222":1}}],["20463",{"2":{"222":1}}],["20443",{"2":{"222":1}}],["20442",{"2":{"222":1}}],["20440",{"2":{"222":1}}],["20433",{"2":{"222":1}}],["20432",{"2":{"222":1}}],["20439",{"2":{"222":1}}],["20438",{"2":{"222":1}}],["20436",{"2":{"222":1}}],["20430",{"2":{"222":1}}],["20427",{"2":{"236":1}}],["20422",{"2":{"222":1}}],["20423",{"2":{"222":1}}],["205",{"2":{"1679":1,"2908":1,"2909":1,"2910":1}}],["20524",{"2":{"222":1}}],["20599",{"2":{"222":1}}],["20598",{"2":{"222":1}}],["20597",{"2":{"222":1}}],["20596",{"2":{"222":1}}],["20595",{"2":{"222":1}}],["20594",{"2":{"222":1}}],["20593",{"2":{"222":1}}],["20592",{"2":{"222":1}}],["20588",{"2":{"222":1}}],["20586",{"2":{"222":1}}],["20585",{"2":{"222":1}}],["20583",{"2":{"222":1}}],["20580",{"2":{"222":1}}],["20584",{"2":{"222":1}}],["20577",{"2":{"222":1}}],["20571",{"2":{"222":1}}],["20570",{"2":{"222":1}}],["20572",{"2":{"222":1}}],["20569",{"2":{"222":1}}],["20568",{"2":{"222":1}}],["20567",{"2":{"222":1}}],["20566",{"2":{"222":1}}],["20565",{"2":{"222":1}}],["20564",{"2":{"222":1}}],["20563",{"2":{"222":1}}],["20562",{"2":{"222":1}}],["20561",{"2":{"222":1}}],["20560",{"2":{"222":1}}],["20558",{"2":{"222":1}}],["20555",{"2":{"222":1}}],["20554",{"2":{"222":1}}],["20553",{"2":{"222":1}}],["20552",{"2":{"222":1}}],["20549",{"2":{"222":1}}],["20548",{"2":{"222":1}}],["20547",{"2":{"222":1}}],["20546",{"2":{"222":1}}],["20541",{"2":{"222":1}}],["20515",{"2":{"222":1}}],["20519",{"2":{"222":1}}],["20518",{"2":{"222":1}}],["20516",{"2":{"222":1}}],["20517",{"2":{"210":1}}],["20508",{"2":{"222":1}}],["20504",{"2":{"222":1}}],["20500",{"2":{"222":1}}],["20534",{"2":{"210":1}}],["20367",{"2":{"222":1}}],["20365",{"2":{"222":1}}],["20356",{"2":{"222":1}}],["20350",{"2":{"222":1}}],["20348",{"2":{"222":1}}],["20349",{"2":{"222":1}}],["20341",{"2":{"222":1}}],["20340",{"2":{"222":1}}],["20347",{"2":{"222":1}}],["20330",{"2":{"317":1}}],["20339",{"2":{"222":1}}],["20337",{"2":{"222":1}}],["20334",{"2":{"222":2}}],["20331",{"2":{"222":1}}],["20325",{"2":{"222":1}}],["20326",{"2":{"222":1}}],["20321",{"2":{"222":1}}],["20328",{"2":{"222":1}}],["20320",{"2":{"222":1}}],["20397",{"2":{"222":1}}],["20398",{"2":{"222":1}}],["20395",{"2":{"210":1}}],["20383",{"2":{"222":1}}],["20381",{"2":{"222":1}}],["20389",{"2":{"210":1}}],["20315",{"2":{"236":1}}],["20311",{"2":{"222":1}}],["20317",{"2":{"222":1}}],["20316",{"2":{"222":1}}],["20310",{"2":{"222":1}}],["20314",{"2":{"222":1}}],["20313",{"2":{"222":1}}],["20312",{"2":{"222":1}}],["20308",{"2":{"222":1}}],["20303",{"2":{"222":1}}],["20300",{"2":{"222":1}}],["200u",{"2":{"2700":1}}],["20043e64",{"2":{"2398":1}}],["2004a",{"2":{"1691":1}}],["200ms",{"2":{"1939":1,"2310":1,"2903":1,"2907":1,"2912":1,"2913":1}}],["200",{"2":{"559":1,"562":4,"1788":1,"1961":1,"1970":2,"1996":1,"2069":2,"2178":1,"2184":1,"2284":1,"2447":1,"2724":2,"2847":2,"2903":1,"2908":1,"2909":2,"2910":1}}],["20059",{"2":{"236":1}}],["20056",{"2":{"222":1}}],["20097",{"2":{"222":1}}],["20092",{"2":{"222":1}}],["20083",{"2":{"222":1}}],["20084",{"2":{"222":1}}],["20078",{"2":{"222":1}}],["20075",{"2":{"222":1}}],["20079",{"2":{"222":1}}],["20020",{"2":{"222":1}}],["20019",{"2":{"222":1}}],["20013",{"2":{"222":1}}],["20061",{"2":{"222":1}}],["20034",{"2":{"222":1}}],["20033",{"2":{"222":1}}],["20030",{"2":{"222":1}}],["2003",{"2":{"116":1}}],["2000000",{"2":{"1961":1,"1976":1}}],["20000",{"2":{"222":1,"1204":1}}],["20003",{"2":{"222":1}}],["20001",{"2":{"222":1}}],["20006",{"2":{"222":1}}],["20004",{"2":{"222":1}}],["2000th",{"2":{"116":1}}],["2000",{"0":{"116":1},"2":{"568":1,"1965":1,"1976":1,"1989":1,"2271":1,"2459":1,"2873":1}}],["2026",{"0":{"329":1},"1":{"330":1,"331":1,"332":1,"333":1},"2":{"394":1,"395":1,"396":7,"407":1}}],["20262",{"2":{"222":1}}],["20273",{"2":{"277":1}}],["20274",{"2":{"222":1}}],["20292",{"2":{"222":1}}],["20297",{"2":{"222":1}}],["20293",{"2":{"222":1}}],["20290",{"2":{"222":1}}],["20289",{"2":{"222":1}}],["2025",{"0":{"286":1,"295":1,"309":1,"318":1},"1":{"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1},"2":{"307":1,"394":2,"396":1,"407":4,"1387":1,"1402":1}}],["20253",{"2":{"222":1}}],["20255",{"2":{"210":1}}],["2024",{"0":{"237":1,"250":1,"267":1,"278":1},"1":{"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1},"2":{"249":1,"251":1,"265":1,"268":1,"279":1,"407":4,"2560":1,"2725":2}}],["20241124",{"2":{"397":1}}],["20241",{"2":{"222":1}}],["20248",{"2":{"222":1}}],["20243",{"2":{"222":1}}],["20234",{"2":{"222":1}}],["20238",{"2":{"222":1}}],["20237",{"2":{"222":1}}],["20236",{"2":{"222":1}}],["20235",{"2":{"222":1}}],["20230",{"2":{"210":1}}],["2023",{"0":{"192":1,"200":1,"211":1,"223":1},"1":{"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1},"2":{"254":1,"407":4}}],["20220",{"2":{"236":1}}],["2022",{"0":{"135":1,"146":1,"161":1,"177":1},"1":{"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1},"2":{"170":2,"312":1,"373":2,"407":4,"2501":17}}],["20218",{"2":{"222":1}}],["20211",{"2":{"222":1}}],["2021",{"0":{"66":1,"78":1,"96":1,"115":1},"1":{"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1},"2":{"88":3,"104":3,"114":2,"127":3,"407":4}}],["20204",{"2":{"222":1}}],["20203",{"2":{"222":1}}],["2020",{"0":{"9":1,"19":1,"39":1,"52":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1},"2":{"55":2,"407":4,"1284":2}}],["20",{"2":{"49":1,"69":1,"111":1,"134":1,"407":1,"415":5,"564":1,"692":1,"1205":2,"1300":1,"1387":1,"1402":1,"1486":1,"1680":5,"1738":3,"1929":1,"1931":1,"1955":1,"1962":3,"1968":1,"1974":1,"2011":3,"2180":3,"2417":2,"2501":1,"2513":3,"2529":3,"2750":1,"2760":3,"2864":1,"2871":1,"2914":1}}],["k13",{"2":{"2775":4,"2777":1,"2930":2}}],["k12",{"2":{"2775":4,"2777":1,"2930":2}}],["k11",{"2":{"2775":4,"2777":1,"2930":2}}],["k10",{"2":{"2775":4,"2777":1,"2930":2}}],["k03",{"2":{"2775":4,"2777":1,"2930":2}}],["k02",{"2":{"2775":4,"2777":1,"2930":2}}],["k01",{"2":{"2775":4,"2777":1,"2930":2}}],["k00",{"2":{"2775":4,"2777":1,"2930":2}}],["kp",{"2":{"2503":19,"2543":19}}],["kprepublic",{"2":{"102":12,"114":1,"122":10,"134":2,"154":4,"199":1,"226":2,"236":1,"253":4,"266":2,"311":4,"328":3,"2560":1}}],["kxy",{"2":{"2427":1}}],["kvm",{"2":{"1941":1}}],["kvms",{"2":{"1940":2,"1941":2}}],["kω",{"2":{"857":14,"922":14,"956":14,"990":14,"1024":14,"1058":14,"1092":14,"1126":14,"1160":14}}],["khz",{"2":{"856":6,"921":5,"955":5,"989":5,"1023":3,"1057":3,"1159":5}}],["k7",{"2":{"328":1}}],["k6",{"2":{"328":1}}],["k5",{"2":{"328":1}}],["k552",{"2":{"199":2}}],["k42",{"2":{"2775":4,"2777":1,"2930":2}}],["k40",{"2":{"2775":4,"2777":1,"2930":2}}],["k4",{"2":{"328":1}}],["k22",{"2":{"2775":4,"2777":1,"2930":2}}],["k21",{"2":{"2775":4,"2777":1,"2930":2}}],["k20",{"2":{"2775":4,"2777":1,"2930":2}}],["k2",{"2":{"328":1}}],["kth",{"2":{"1827":2}}],["kt60hs",{"2":{"300":2,"308":1}}],["ktec",{"2":{"102":3}}],["kl",{"2":{"1326":7,"2294":3}}],["kle",{"2":{"461":3,"2582":1,"2721":1,"2776":4,"2778":1,"2781":1,"2862":1}}],["kle2json",{"0":{"461":1},"2":{"461":3}}],["klein",{"2":{"249":1}}],["kludge",{"2":{"328":1,"2560":1}}],["kl90",{"2":{"210":1,"249":1}}],["kumaokobo",{"2":{"241":10,"249":2}}],["kudox",{"2":{"241":16}}],["kj",{"2":{"222":1}}],["k83",{"2":{"205":1}}],["kohm",{"2":{"741":2,"2851":2}}],["koyu",{"2":{"222":1}}],["kopibeng",{"2":{"222":5}}],["koalafications",{"2":{"222":1}}],["koolertron",{"2":{"222":1}}],["ko",{"0":{"1764":1,"1765":1,"1766":1,"1767":1,"1776":1},"2":{"188":1,"191":1,"1764":1,"1767":1,"1768":1,"1770":9,"1771":2,"1773":1,"1774":3,"1775":2,"1776":8,"1779":1}}],["korean",{"2":{"176":1,"2880":2}}],["krush60",{"2":{"249":1}}],["kr",{"2":{"176":4}}],["kkatano",{"2":{"154":6,"160":2,"222":1}}],["kapton",{"2":{"2418":1}}],["kapcave",{"2":{"122":2,"134":1}}],["katakana",{"2":{"1355":1,"2540":2}}],["katana60",{"2":{"438":1,"2441":1}}],["karabiner",{"0":{"1356":1},"2":{"1355":1,"1356":4}}],["karn",{"2":{"249":1}}],["karlk90",{"2":{"163":1}}],["kangaroo",{"2":{"222":1}}],["kana",{"2":{"210":1,"1829":1,"1830":2,"1832":1,"2860":2}}],["kastenwagen",{"2":{"222":2}}],["kamigakushi",{"2":{"205":2,"218":2,"222":1}}],["ka2hiro",{"2":{"160":1}}],["kagamidget",{"2":{"154":2}}],["kagizaraya",{"2":{"154":3,"160":1,"241":1,"249":1}}],["kakunpc",{"2":{"154":11,"160":2}}],["knife",{"2":{"2273":2,"2414":1}}],["knife66",{"2":{"222":3}}],["knight",{"2":{"145":1,"2174":2,"2176":2,"2177":2,"2178":6,"2180":2,"2203":1,"2525":2,"2887":1}}],["knops",{"2":{"114":1}}],["knowledge",{"2":{"624":1,"754":1,"1339":1,"2269":1,"2462":1,"2898":1,"2899":2,"2901":1}}],["know",{"0":{"1333":1},"2":{"228":1,"245":1,"387":1,"391":1,"412":1,"494":1,"503":1,"760":2,"1326":1,"1328":1,"1336":1,"1354":1,"1422":2,"1425":1,"1635":1,"1679":1,"1776":1,"1783":1,"2050":1,"2263":1,"2274":1,"2404":1,"2572":1,"2609":1,"2621":2,"2627":1,"2633":1,"2637":1,"2898":1,"2930":1,"2932":1,"2936":1}}],["knows",{"2":{"49":1,"160":1,"718":1}}],["known",{"0":{"686":1,"1673":1,"2367":1},"1":{"2368":1},"2":{"37":1,"545":1,"611":1,"683":1,"686":1,"1194":1,"1211":1,"1284":1,"1535":1,"1586":1,"1617":1,"1941":1,"2009":1,"2258":1,"2562":1,"2627":1,"2676":1,"2721":1,"2749":2,"2827":1}}],["knobx1",{"2":{"328":1}}],["knobs",{"2":{"249":1}}],["knob",{"2":{"13":1}}],["kmac",{"2":{"241":4}}],["km",{"2":{"132":1,"176":1,"427":3,"428":1,"431":2,"435":2,"437":2,"438":1,"443":1,"445":1,"446":1,"447":1,"448":1,"450":3,"451":3,"468":1,"1385":1,"1521":1,"2266":3,"2375":1,"2425":1,"2504":1,"2580":1,"2587":1,"2588":1,"2609":1,"2622":2,"2675":1,"2707":1,"2745":1}}],["kyria",{"2":{"102":2,"114":3,"134":1,"210":2,"277":1}}],["k33",{"2":{"2775":4,"2777":1,"2930":2}}],["k32",{"2":{"2775":4,"2777":1,"2930":2}}],["k320",{"2":{"86":1,"102":2,"181":2,"191":1}}],["k31",{"2":{"2775":4,"2777":1,"2930":2}}],["k310",{"2":{"114":1,"181":2,"191":1}}],["k30",{"2":{"2775":4,"2777":1,"2930":2}}],["k3",{"2":{"328":1}}],["k34",{"2":{"210":1}}],["k3x0",{"2":{"102":1,"181":2}}],["kzar",{"2":{"92":1,"93":1}}],["kiiboom",{"2":{"2560":1}}],["kiibohd",{"0":{"2389":1},"2":{"50":1,"686":2,"2389":1}}],["kib",{"2":{"2398":1,"2483":1,"2501":3}}],["kit",{"2":{"681":1}}],["kira80",{"2":{"241":2}}],["kira",{"2":{"241":2,"249":1}}],["kira75",{"2":{"241":2}}],["kiko",{"2":{"222":1}}],["kikoslab",{"2":{"210":1,"249":1}}],["kicad",{"2":{"222":1}}],["kinds",{"2":{"1532":1,"2204":1,"2475":1}}],["kind",{"0":{"590":1,"1783":1},"1":{"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1},"2":{"1532":1,"1533":1,"2310":1}}],["king",{"2":{"176":1}}],["kintwin",{"2":{"210":1}}],["kint41",{"2":{"114":1,"2656":1}}],["kint",{"2":{"114":1,"134":1}}],["kint2pp",{"2":{"94":1}}],["kint36",{"2":{"93":1,"94":1,"114":1,"199":1,"2656":1}}],["kinetis",{"0":{"549":1},"2":{"114":1,"145":2,"191":1,"2389":1,"2678":1,"2685":1,"2795":1}}],["kinetic",{"0":{"1930":1},"2":{"74":1,"145":2,"175":2,"176":1,"210":2,"1928":1,"1930":3,"1933":1,"1934":1,"1978":1}}],["kinesis",{"2":{"93":2,"114":1,"205":2,"210":3,"222":1,"2656":2}}],["k",{"2":{"49":2,"65":1,"114":1,"154":2,"191":1,"236":1,"249":2,"266":8,"277":1,"285":2,"317":1,"369":1,"587":2,"1442":2,"1599":1,"1616":2,"1619":1,"2159":1,"2162":4,"2174":1,"2289":1,"2294":1,"2310":1,"2503":3,"2525":1,"2535":3,"2556":1,"2775":1,"2882":1,"2918":3}}],["kb2",{"2":{"616":2}}],["kb2040",{"0":{"1390":1},"2":{"163":1,"176":2,"322":2,"1386":1,"1388":3,"1391":1,"1394":1,"2702":1,"2888":1}}],["kb1",{"2":{"616":1}}],["kb16",{"2":{"176":1,"191":1,"249":1}}],["kb|user",{"0":{"307":1}}],["kb38",{"2":{"210":1,"266":1}}],["kb83",{"2":{"205":1,"210":1,"317":1}}],["kbo5000",{"2":{"199":1}}],["kbfirmware",{"0":{"448":1},"2":{"173":4,"448":2,"598":1,"2425":2,"2582":1,"2721":2}}],["kbd",{"2":{"1619":1}}],["kbdmania",{"2":{"241":2,"249":1}}],["kbd66",{"2":{"222":1}}],["kbd67mkiirgb",{"2":{"205":1}}],["kbd67",{"2":{"114":1,"205":1,"249":1}}],["kbdfans",{"2":{"154":1,"160":1,"191":1,"205":2,"222":6,"241":2,"249":1}}],["kb",{"0":{"650":1,"1581":1,"1902":1,"1906":1,"2146":1,"2150":1,"2335":1,"2925":1},"1":{"1903":1,"2147":1,"2336":1},"2":{"34":1,"70":1,"90":3,"105":4,"111":1,"125":2,"132":1,"185":2,"190":1,"191":3,"197":13,"199":3,"214":2,"222":1,"229":1,"230":1,"231":3,"266":1,"277":6,"285":1,"294":1,"317":1,"328":2,"427":6,"428":1,"435":4,"437":2,"438":2,"440":1,"441":1,"442":1,"443":1,"445":2,"446":1,"447":1,"448":1,"450":3,"451":3,"468":1,"568":1,"591":3,"623":4,"625":6,"628":1,"630":1,"634":1,"636":1,"640":1,"643":1,"644":1,"648":2,"650":1,"651":1,"652":1,"1348":1,"1385":1,"1406":3,"1408":3,"1422":2,"1426":1,"1464":2,"1485":1,"1521":1,"1629":1,"1630":1,"1632":2,"1651":2,"1662":1,"1831":2,"1832":1,"1844":2,"1849":2,"1938":2,"1956":2,"1976":2,"1981":2,"1982":1,"1998":1,"1999":1,"2066":2,"2072":2,"2266":3,"2270":1,"2303":1,"2375":1,"2425":1,"2441":2,"2449":4,"2454":1,"2503":4,"2504":1,"2541":4,"2577":1,"2580":1,"2587":1,"2588":1,"2609":1,"2622":2,"2645":4,"2675":1,"2707":1,"2721":2,"2722":1,"2745":1,"2749":1,"2750":4,"2751":1,"2754":1,"2933":4,"2941":1}}],["kc5",{"0":{"1819":1},"1":{"1820":1,"1821":1},"2":{"1820":1}}],["kc4",{"0":{"1816":1,"1819":1},"1":{"1817":1,"1818":1,"1820":1,"1821":1},"2":{"1817":1,"1820":1}}],["kc3",{"0":{"1813":1,"1816":1,"1819":1},"1":{"1814":1,"1815":1,"1817":1,"1818":1,"1820":1,"1821":1},"2":{"1814":1,"1817":1,"1820":1}}],["kc2",{"0":{"1810":1,"1813":1,"1816":1,"1819":1},"1":{"1811":1,"1812":1,"1814":1,"1815":1,"1817":1,"1818":1,"1820":1,"1821":1},"2":{"1811":1,"1814":1,"1817":1,"1820":1,"2302":3}}],["kc1",{"0":{"1810":1,"1813":1,"1816":1,"1819":1},"1":{"1811":1,"1812":1,"1814":1,"1815":1,"1817":1,"1818":1,"1820":1,"1821":1},"2":{"1374":1,"1811":1,"1814":1,"1817":1,"1820":1,"2302":3}}],["kc60",{"2":{"236":1,"2180":1}}],["kc",{"0":{"8":2,"89":1,"1447":1,"1448":1,"1449":1,"1450":1,"1451":4,"1807":1},"1":{"1808":1,"1809":1},"2":{"7":2,"8":3,"38":6,"89":1,"90":8,"94":1,"176":2,"188":3,"191":5,"194":5,"195":2,"196":9,"199":5,"213":3,"220":6,"231":16,"255":1,"307":6,"369":211,"559":3,"562":3,"587":338,"629":1,"630":1,"1326":7,"1327":3,"1344":2,"1347":3,"1348":5,"1350":1,"1351":6,"1358":1,"1374":71,"1375":5,"1377":9,"1378":14,"1407":1,"1416":4,"1417":4,"1421":2,"1425":2,"1438":2,"1440":1,"1441":10,"1442":4,"1447":6,"1448":1,"1449":4,"1450":1,"1451":1,"1456":8,"1466":4,"1484":3,"1485":1,"1497":1,"1498":1,"1499":1,"1504":3,"1510":1,"1511":8,"1526":2,"1527":3,"1529":1,"1532":2,"1584":6,"1587":13,"1588":3,"1591":2,"1594":10,"1596":6,"1597":3,"1598":7,"1599":19,"1606":3,"1611":5,"1612":9,"1616":19,"1619":1,"1657":2,"1661":4,"1662":6,"1666":3,"1667":1,"1684":1,"1689":2,"1737":6,"1759":1,"1768":2,"1770":6,"1771":4,"1773":8,"1775":3,"1782":15,"1785":9,"1788":3,"1790":3,"1791":3,"1808":1,"1824":1,"1828":2,"1999":3,"2073":1,"2159":40,"2160":11,"2161":11,"2162":3,"2164":1,"2165":3,"2168":1,"2169":1,"2170":10,"2221":6,"2252":34,"2253":9,"2297":2,"2302":6,"2305":2,"2308":2,"2309":2,"2310":12,"2311":7,"2312":2,"2320":3,"2358":4,"2374":8,"2427":1,"2472":1,"2503":329,"2516":3,"2522":69,"2523":72,"2527":41,"2532":2,"2534":2,"2535":36,"2536":24,"2537":34,"2538":13,"2539":23,"2540":36,"2541":64,"2542":63,"2543":37,"2544":3,"2545":1,"2547":41,"2552":7,"2554":10,"2556":72,"2557":22,"2565":73,"2566":2,"2568":7,"2569":7,"2570":4,"2644":2,"2744":3,"2775":8,"2777":1,"2786":1,"2877":1,"2903":2,"2905":2,"2907":3,"2908":9,"2909":14,"2910":9,"2911":19,"2912":16,"2913":9,"2914":6,"2915":7,"2916":8,"2917":2,"2918":18,"2920":5,"2921":19,"2923":3,"2930":5,"2931":17,"2932":1,"2941":3}}],["kent",{"2":{"2934":1}}],["kerpleplork",{"2":{"613":4}}],["kernels",{"2":{"2732":1}}],["kernel",{"0":{"2470":1},"2":{"199":1,"1314":1,"2503":1,"2710":1,"2731":1}}],["kept",{"2":{"586":1,"666":1,"717":1,"1675":1,"1992":1,"2588":1,"2685":1}}],["keaboard",{"2":{"253":2}}],["kezewa",{"2":{"241":2,"249":1}}],["kestra",{"2":{"222":1}}],["kegen",{"2":{"191":1,"222":1}}],["kelowna",{"2":{"154":2}}],["keeb",{"2":{"2748":6}}],["keebzdotnet",{"2":{"222":1}}],["keebs",{"2":{"160":8,"176":1}}],["keebio",{"0":{"45":1},"2":{"45":1,"114":3,"134":1,"191":1,"199":2,"210":1,"277":1,"285":1,"317":1,"328":1,"1385":1,"1387":2,"1402":2,"2271":1}}],["keeps",{"2":{"1377":1,"1378":2,"1656":1,"2561":1}}],["keeping",{"2":{"538":1,"751":1,"1344":1,"1929":1,"2293":1,"2456":1,"2895":1,"2914":1}}],["keep",{"2":{"6":1,"74":2,"113":1,"124":1,"194":1,"222":2,"328":1,"420":1,"510":2,"514":1,"525":1,"536":1,"559":1,"608":1,"613":1,"617":2,"644":1,"672":1,"673":2,"717":1,"1194":1,"1369":1,"1377":1,"1406":1,"1419":1,"1432":1,"1445":1,"1552":1,"1585":1,"1656":1,"1660":1,"1684":1,"1760":1,"1933":1,"1941":1,"1983":1,"2252":1,"2288":1,"2302":1,"2382":1,"2411":1,"2420":2,"2421":2,"2422":1,"2424":1,"2427":1,"2451":1,"2453":1,"2454":1,"2456":1,"2459":1,"2561":2,"2575":1,"2579":1,"2585":1,"2586":1,"2631":2,"2632":1,"2651":2,"2655":1,"2673":1,"2719":1,"2723":3,"2747":1,"2749":1,"2751":1,"2847":1,"2942":1}}],["keyunit",{"2":{"2862":4}}],["keyup",{"2":{"1374":1,"1446":1,"1448":1,"1661":2,"2221":2,"2847":2,"2864":2,"2871":2}}],["key3",{"2":{"2459":6}}],["key2",{"2":{"2459":10}}],["key0",{"2":{"2459":6}}],["key1",{"2":{"2294":1,"2459":6}}],["keylog",{"2":{"2882":2}}],["keyloggers",{"2":{"312":1}}],["keylogger",{"0":{"312":1},"2":{"317":1}}],["keylight",{"2":{"1841":1,"1846":1,"2061":1,"2069":1,"2073":1}}],["keyreleases",{"2":{"1846":2,"2069":2}}],["keyrepeating",{"2":{"1493":1,"1506":1,"1511":1}}],["keyrepeat",{"2":{"1492":1,"1493":1,"1505":1}}],["keyrecords",{"2":{"1997":1}}],["keyrecord",{"2":{"22":3,"160":1,"194":2,"195":2,"307":1,"324":1,"325":1,"591":2,"629":1,"630":2,"645":1,"1326":1,"1377":1,"1378":1,"1407":1,"1425":1,"1440":2,"1441":2,"1456":1,"1465":1,"1466":2,"1497":1,"1504":2,"1511":3,"1526":1,"1527":1,"1607":2,"1658":1,"1683":1,"1737":1,"1828":1,"1918":1,"1942":1,"1986":1,"1987":1,"1998":2,"1999":1,"2006":1,"2008":1,"2162":1,"2164":1,"2165":1,"2166":1,"2167":1,"2168":1,"2170":2,"2184":2,"2224":1,"2293":2,"2309":1,"2312":1,"2449":1,"2568":1,"2569":1,"2570":1,"2785":1,"2903":1,"2904":2,"2905":2,"2912":1,"2913":1,"2914":1,"2917":2,"2920":2,"2921":1,"2923":1,"2933":42}}],["keyed",{"2":{"667":1}}],["keyevent",{"2":{"222":1,"630":1,"2002":2,"2933":1}}],["key>",{"2":{"473":1,"495":2,"496":2}}],["key=value",{"2":{"431":1}}],["keydown",{"2":{"320":1,"1374":1,"1416":1,"1446":1,"1447":1,"1661":2,"2069":1,"2221":2,"2847":2,"2864":1,"2871":1,"2923":1}}],["keyten",{"2":{"300":2}}],["keypos",{"2":{"630":1,"2073":1,"2296":2,"2919":2}}],["keypads",{"2":{"266":1}}],["keypad",{"2":{"181":2,"210":1,"1348":1,"1354":1,"1737":1,"2503":20,"2534":1,"2538":1,"2542":1,"2543":19}}],["keypresses",{"0":{"1317":1},"2":{"289":1,"1416":1,"1441":1,"1655":1,"1846":1,"2069":1,"2210":1,"2269":1,"2662":1,"2821":1,"2918":1}}],["keypress",{"0":{"1326":1,"1327":1,"1328":1},"2":{"98":1,"328":1,"1326":1,"1374":1,"1421":1,"1487":1,"1656":1,"1658":1,"1674":1,"2069":1,"2293":1,"2528":30,"2644":30,"2822":1,"2863":1}}],["keyhive",{"2":{"144":10,"145":3}}],["keycap",{"2":{"2877":1}}],["keycaps",{"2":{"2286":1,"2798":1}}],["keycapsss",{"2":{"249":1}}],["keycult",{"2":{"308":1}}],["keychron",{"2":{"134":1,"176":1,"191":4,"222":2,"226":14,"236":5,"249":3,"266":2,"317":1}}],["keycode",{"0":{"16":2,"38":1,"142":1,"231":1,"283":1,"327":1,"604":1,"627":1,"628":1,"1327":1,"1425":1,"1796":1,"1802":1,"1985":1,"2225":1,"2294":1,"2344":1,"2357":1,"2813":1,"2931":1,"2941":1},"1":{"629":1,"630":1,"1797":1,"1798":1,"1803":1,"1804":1,"2345":1,"2346":1,"2358":1,"2359":1},"2":{"3":1,"7":1,"15":1,"16":1,"22":4,"38":1,"112":1,"133":1,"134":3,"141":3,"142":1,"145":2,"167":1,"182":4,"188":9,"191":15,"194":9,"195":5,"198":2,"199":7,"210":5,"231":25,"235":1,"236":1,"249":1,"255":2,"259":1,"266":2,"277":2,"285":6,"288":1,"294":1,"307":5,"308":4,"312":1,"317":1,"320":1,"324":3,"325":4,"333":1,"561":2,"562":3,"591":14,"597":6,"604":2,"626":2,"627":2,"629":3,"630":3,"645":1,"681":1,"683":1,"1319":1,"1326":2,"1327":6,"1342":1,"1345":1,"1353":2,"1358":3,"1374":1,"1377":4,"1378":4,"1407":4,"1416":1,"1417":4,"1425":7,"1440":14,"1441":5,"1445":1,"1449":1,"1451":1,"1456":3,"1465":2,"1466":7,"1485":6,"1497":2,"1504":5,"1511":13,"1512":2,"1515":1,"1520":1,"1523":1,"1524":1,"1526":2,"1527":15,"1532":3,"1533":3,"1587":2,"1588":2,"1594":3,"1597":1,"1599":2,"1600":1,"1606":2,"1607":2,"1611":3,"1612":3,"1616":1,"1619":1,"1621":1,"1657":2,"1661":1,"1683":1,"1684":2,"1737":2,"1757":1,"1758":1,"1774":1,"1775":6,"1782":5,"1784":1,"1790":2,"1796":1,"1797":2,"1802":1,"1803":2,"1804":1,"1807":1,"1808":1,"1811":2,"1814":3,"1817":4,"1820":5,"1823":1,"1828":6,"1917":1,"1918":2,"1919":1,"1920":1,"1923":1,"1942":2,"1986":2,"1987":2,"1992":1,"1998":2,"1999":3,"2006":3,"2008":2,"2073":1,"2157":2,"2158":1,"2159":1,"2160":11,"2161":3,"2162":5,"2164":2,"2165":2,"2166":2,"2167":3,"2168":7,"2169":6,"2170":11,"2184":4,"2185":1,"2203":1,"2218":1,"2221":5,"2224":3,"2250":1,"2252":3,"2253":3,"2293":3,"2302":7,"2305":1,"2309":4,"2311":5,"2312":2,"2314":1,"2323":3,"2344":1,"2345":2,"2357":1,"2358":2,"2359":1,"2374":39,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2411":1,"2449":1,"2470":2,"2471":2,"2472":1,"2530":1,"2545":1,"2546":1,"2548":1,"2550":2,"2552":3,"2555":3,"2565":1,"2566":4,"2568":5,"2569":5,"2570":2,"2644":1,"2720":1,"2722":1,"2745":1,"2785":2,"2786":1,"2789":1,"2790":1,"2791":1,"2847":1,"2861":4,"2862":1,"2877":3,"2878":1,"2903":2,"2904":4,"2905":5,"2912":2,"2913":2,"2914":3,"2916":3,"2917":12,"2920":6,"2921":8,"2923":4,"2930":1,"2931":1,"2933":41,"2941":13}}],["keycodes",{"0":{"3":1,"7":1,"15":1,"182":1,"188":1,"207":1,"254":1,"316":1,"591":1,"626":1,"1342":1,"1343":1,"1344":1,"1489":1,"1524":1,"1537":1,"1597":1,"1600":1,"1668":1,"1674":1,"1738":1,"1758":1,"1774":1,"1792":1,"1842":1,"1919":1,"2011":1,"2062":1,"2158":1,"2174":1,"2209":1,"2216":1,"2221":1,"2250":1,"2297":1,"2314":1,"2325":1,"2370":1,"2453":1,"2502":1,"2503":1,"2504":1,"2519":1,"2534":1,"2547":1,"2548":1,"2644":1,"2744":1,"2745":1,"2861":1,"2877":1},"1":{"627":1,"628":1,"629":1,"630":1,"1669":1,"1675":1,"1676":1,"1677":1,"1678":1,"1679":1,"1680":1,"1681":1,"1682":1,"2222":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2514":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2745":1,"2878":1,"2879":1,"2880":1},"2":{"3":1,"7":1,"15":1,"16":2,"38":1,"49":1,"74":1,"93":1,"94":1,"114":1,"119":1,"120":5,"142":2,"145":2,"160":2,"176":1,"182":4,"186":1,"188":25,"191":29,"194":1,"198":1,"199":8,"207":1,"210":1,"222":1,"231":3,"254":4,"255":1,"257":1,"258":1,"259":2,"266":7,"277":5,"283":6,"285":3,"303":1,"307":4,"308":1,"316":2,"317":2,"327":2,"328":1,"369":1,"373":4,"374":1,"562":2,"586":1,"591":4,"614":2,"627":4,"628":1,"629":1,"678":4,"1310":1,"1327":1,"1340":3,"1342":3,"1343":1,"1344":1,"1346":1,"1348":1,"1351":2,"1354":2,"1375":1,"1407":2,"1417":2,"1425":3,"1435":5,"1436":1,"1438":10,"1440":5,"1442":2,"1451":1,"1456":2,"1460":1,"1466":4,"1479":2,"1483":1,"1484":3,"1485":3,"1487":1,"1526":4,"1527":3,"1532":1,"1586":3,"1588":1,"1594":2,"1596":1,"1597":2,"1599":1,"1600":1,"1606":1,"1613":1,"1615":1,"1617":1,"1624":3,"1674":1,"1675":1,"1759":1,"1760":1,"1810":1,"1813":1,"1816":1,"1819":1,"1838":1,"1913":2,"1917":2,"1918":1,"1923":1,"1927":1,"1942":2,"1955":2,"1986":1,"1987":1,"2006":1,"2009":2,"2058":1,"2065":1,"2073":1,"2159":4,"2160":1,"2162":1,"2170":1,"2172":1,"2174":5,"2218":1,"2221":3,"2290":3,"2291":1,"2294":2,"2302":2,"2311":6,"2313":1,"2319":1,"2322":2,"2323":1,"2324":2,"2344":1,"2374":1,"2411":1,"2453":1,"2463":1,"2472":1,"2473":2,"2502":1,"2503":2,"2504":1,"2519":1,"2534":2,"2542":4,"2544":1,"2545":2,"2546":1,"2548":2,"2552":2,"2556":1,"2558":1,"2566":3,"2579":2,"2720":1,"2721":3,"2722":1,"2744":6,"2775":1,"2784":1,"2813":2,"2816":1,"2836":1,"2861":2,"2863":1,"2877":1,"2879":1,"2880":2,"2882":1,"2899":2,"2900":1,"2904":1,"2915":1,"2916":1,"2924":1,"2930":2,"2931":1,"2933":1,"2941":10}}],["keyword",{"2":{"103":1,"120":1,"126":1,"514":1,"1435":1}}],["key",{"0":{"15":1,"42":1,"99":1,"196":2,"213":1,"272":1,"478":1,"564":1,"668":1,"1347":1,"1353":1,"1357":1,"1366":1,"1384":1,"1490":1,"1504":1,"1507":1,"1508":1,"1509":1,"1510":1,"1605":1,"1606":1,"1611":1,"1612":1,"1654":1,"1683":1,"1756":1,"1760":1,"1761":1,"1763":1,"1764":1,"1765":1,"1766":1,"1767":1,"1775":1,"1780":1,"1783":1,"1788":1,"1790":1,"1807":1,"1934":1,"1998":1,"2002":1,"2156":1,"2157":1,"2164":1,"2167":1,"2168":1,"2300":1,"2468":1,"2514":1,"2517":1,"2530":1,"2792":1,"2814":1,"2815":1,"2818":1,"2826":1,"2863":1,"2913":1,"2916":1,"2924":2},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1757":1,"1758":1,"1759":1,"1761":1,"1762":1,"1763":1,"1764":2,"1765":2,"1766":2,"1767":2,"1768":1,"1769":1,"1770":1,"1771":1,"1772":1,"1773":1,"1774":1,"1775":1,"1776":1,"1777":1,"1778":1,"1779":1,"1780":1,"1781":1,"1782":1,"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":2,"1809":2,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1999":1,"2157":1,"2158":1,"2159":1,"2160":1,"2161":1,"2162":1,"2163":1,"2164":1,"2165":1,"2166":1,"2167":1,"2168":1,"2169":1,"2170":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"22":1,"38":3,"43":1,"50":1,"63":1,"73":2,"93":2,"99":6,"110":1,"112":14,"114":7,"119":1,"134":2,"137":1,"160":5,"175":1,"176":4,"188":2,"191":7,"194":12,"195":3,"196":3,"199":7,"206":1,"210":5,"212":1,"213":9,"214":5,"217":2,"222":8,"231":1,"236":1,"249":1,"255":2,"257":1,"258":1,"259":2,"266":3,"268":1,"272":8,"277":1,"285":1,"288":1,"289":3,"294":1,"297":1,"308":2,"312":2,"320":2,"328":1,"333":1,"372":3,"431":23,"435":1,"470":2,"474":3,"475":1,"482":1,"483":1,"494":3,"559":1,"561":1,"562":34,"567":1,"572":6,"586":4,"587":1,"597":4,"628":8,"629":2,"630":1,"645":4,"666":1,"667":1,"669":1,"671":1,"680":2,"681":3,"683":2,"717":1,"1309":1,"1326":3,"1345":1,"1347":4,"1350":1,"1353":2,"1355":3,"1358":1,"1361":1,"1367":1,"1374":3,"1378":5,"1384":1,"1407":1,"1409":1,"1410":18,"1413":14,"1415":1,"1416":6,"1417":1,"1421":2,"1427":1,"1434":1,"1438":8,"1440":4,"1441":2,"1442":3,"1448":1,"1449":2,"1456":1,"1466":1,"1479":2,"1480":1,"1483":1,"1484":1,"1486":1,"1487":2,"1489":1,"1490":3,"1491":1,"1492":10,"1493":4,"1494":1,"1495":1,"1497":2,"1503":1,"1504":6,"1511":7,"1512":6,"1516":4,"1517":1,"1519":2,"1523":1,"1526":1,"1537":1,"1583":5,"1584":6,"1587":5,"1588":2,"1589":3,"1591":1,"1592":1,"1594":5,"1596":1,"1598":2,"1599":3,"1603":3,"1605":1,"1606":6,"1608":2,"1609":1,"1610":1,"1611":9,"1612":8,"1613":2,"1618":2,"1619":35,"1620":1,"1621":1,"1624":1,"1649":1,"1655":1,"1656":1,"1657":1,"1658":1,"1661":1,"1665":2,"1666":3,"1668":1,"1670":1,"1674":1,"1683":1,"1684":3,"1738":1,"1756":4,"1757":3,"1758":2,"1759":4,"1760":7,"1762":2,"1763":2,"1764":3,"1767":1,"1768":6,"1770":16,"1771":5,"1773":7,"1774":6,"1775":9,"1776":5,"1777":3,"1778":9,"1779":6,"1780":12,"1781":8,"1782":3,"1783":2,"1785":2,"1787":1,"1788":7,"1789":6,"1790":2,"1791":1,"1792":1,"1798":1,"1805":1,"1822":5,"1823":2,"1824":7,"1828":3,"1840":6,"1841":2,"1842":1,"1843":8,"1927":2,"1928":2,"1929":3,"1930":1,"1931":4,"1933":5,"1934":2,"1936":1,"1985":1,"1986":1,"1987":2,"1992":7,"1993":7,"1996":1,"1999":1,"2001":5,"2002":5,"2006":5,"2009":2,"2011":1,"2060":6,"2061":2,"2062":1,"2063":13,"2064":3,"2065":1,"2069":1,"2073":1,"2074":1,"2156":9,"2157":5,"2158":4,"2159":8,"2160":9,"2161":2,"2162":1,"2163":3,"2164":6,"2165":2,"2166":2,"2167":9,"2168":8,"2169":5,"2170":1,"2174":1,"2209":1,"2216":1,"2224":1,"2225":1,"2249":4,"2252":15,"2253":7,"2257":1,"2265":5,"2266":1,"2269":2,"2286":1,"2288":1,"2291":2,"2293":4,"2294":5,"2295":1,"2297":3,"2301":1,"2302":13,"2303":8,"2309":1,"2310":16,"2311":3,"2312":12,"2313":1,"2320":6,"2323":2,"2325":1,"2337":3,"2338":1,"2339":1,"2369":1,"2370":1,"2377":1,"2383":2,"2384":1,"2411":8,"2422":1,"2427":1,"2459":5,"2467":2,"2468":5,"2469":2,"2470":1,"2473":2,"2502":2,"2503":7,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2514":4,"2515":1,"2516":1,"2517":2,"2518":1,"2519":4,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":5,"2531":1,"2532":2,"2533":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":3,"2540":1,"2541":2,"2542":1,"2543":1,"2544":3,"2547":1,"2548":4,"2550":2,"2551":1,"2556":5,"2557":1,"2562":1,"2565":8,"2566":1,"2568":1,"2569":2,"2570":1,"2599":1,"2605":1,"2610":1,"2632":1,"2643":10,"2644":4,"2645":4,"2661":1,"2678":1,"2714":1,"2721":2,"2745":1,"2775":2,"2776":8,"2777":4,"2778":2,"2780":2,"2789":1,"2792":1,"2793":3,"2813":1,"2814":2,"2815":1,"2816":1,"2817":1,"2818":3,"2822":1,"2824":3,"2826":1,"2827":5,"2832":2,"2833":1,"2835":3,"2836":1,"2844":1,"2847":6,"2853":2,"2856":1,"2861":1,"2862":24,"2863":3,"2864":1,"2865":1,"2866":1,"2867":2,"2869":2,"2871":1,"2877":1,"2878":1,"2883":1,"2887":1,"2900":1,"2903":4,"2905":6,"2906":13,"2907":4,"2908":4,"2909":6,"2910":4,"2911":3,"2912":28,"2913":18,"2914":4,"2915":6,"2916":5,"2917":9,"2918":10,"2919":11,"2920":1,"2921":7,"2922":1,"2923":4,"2924":3,"2929":2,"2930":1,"2932":2,"2933":2,"2941":2}}],["keyswitch",{"2":{"1650":1,"1654":1,"1661":1,"2421":2,"2422":3,"2424":1,"2427":5,"2459":5,"2865":1}}],["keyswitches",{"2":{"567":1,"1535":1,"2414":1}}],["keystrokes",{"2":{"1434":1,"1519":1,"2064":1,"2218":1,"2222":1,"2310":1,"2320":1,"2371":1,"2757":1}}],["keystroke",{"2":{"312":1,"1441":2}}],["keys",{"0":{"112":1,"347":1,"479":1,"1346":1,"1348":1,"1354":1,"1355":1,"1366":1,"1374":1,"1382":1,"1594":1,"1773":1,"1810":1,"1813":1,"1816":1,"1819":1,"1924":1,"1925":1,"1926":1,"1928":1,"1993":1,"1997":1,"1998":1,"1999":1,"2006":1,"2160":1,"2163":1,"2170":1,"2311":1,"2312":1,"2466":1,"2505":1,"2521":1,"2523":1,"2524":1,"2528":1,"2536":1,"2538":1,"2542":1,"2544":1,"2643":1,"2777":1,"2780":1,"2781":1,"2866":1,"2910":1},"1":{"1778":1,"1779":1,"1780":1,"1811":1,"1812":1,"1814":1,"1815":1,"1817":1,"1818":1,"1820":1,"1821":1,"1925":1,"1926":2,"1927":2,"1928":1,"1929":2,"1930":2,"1931":2,"1932":2,"1933":2,"1934":2,"1935":1,"1998":1,"1999":2,"2161":1,"2162":1,"2164":1,"2165":1,"2166":1,"2467":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1,"2644":1,"2645":1},"2":{"7":2,"70":1,"74":1,"98":2,"112":2,"114":2,"119":2,"134":2,"145":1,"154":4,"160":1,"176":5,"182":2,"190":2,"191":6,"194":2,"196":3,"199":1,"212":1,"213":3,"222":6,"236":1,"255":1,"259":1,"263":1,"277":1,"289":1,"294":1,"297":2,"308":1,"316":1,"320":1,"431":1,"470":1,"475":1,"559":1,"562":4,"572":1,"582":1,"597":2,"603":1,"605":1,"667":1,"668":1,"671":1,"1346":2,"1348":1,"1350":2,"1353":1,"1355":2,"1359":2,"1361":1,"1375":2,"1378":1,"1382":1,"1410":1,"1413":1,"1415":1,"1416":1,"1419":1,"1428":1,"1436":1,"1438":3,"1441":2,"1442":1,"1452":1,"1454":1,"1467":1,"1484":1,"1486":1,"1493":3,"1497":6,"1498":1,"1500":1,"1501":1,"1504":2,"1507":1,"1508":1,"1509":1,"1510":1,"1511":4,"1512":1,"1513":1,"1514":1,"1515":1,"1516":2,"1526":1,"1527":3,"1535":1,"1585":1,"1587":2,"1588":2,"1591":6,"1592":1,"1594":2,"1596":5,"1598":1,"1602":1,"1603":3,"1605":1,"1606":10,"1613":1,"1616":1,"1619":1,"1655":1,"1657":1,"1684":7,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1759":3,"1760":4,"1773":1,"1778":1,"1779":2,"1781":4,"1782":1,"1783":1,"1785":3,"1788":1,"1789":2,"1791":1,"1822":2,"1824":1,"1843":1,"1924":1,"1925":3,"1926":1,"1928":6,"1931":1,"1932":1,"1934":1,"1935":2,"1958":1,"1962":1,"1992":3,"1993":1,"1997":4,"1998":2,"1999":2,"2002":2,"2009":1,"2050":1,"2063":4,"2064":4,"2073":3,"2159":2,"2160":1,"2162":2,"2163":3,"2164":1,"2165":1,"2166":3,"2167":1,"2170":4,"2206":1,"2248":1,"2251":1,"2252":10,"2253":2,"2262":1,"2285":1,"2286":2,"2287":1,"2288":4,"2289":2,"2291":3,"2293":10,"2294":4,"2301":1,"2302":4,"2310":1,"2312":4,"2313":1,"2323":2,"2411":1,"2414":1,"2425":1,"2427":1,"2453":1,"2459":5,"2474":1,"2502":1,"2519":3,"2521":1,"2522":1,"2528":4,"2548":3,"2549":1,"2551":3,"2552":1,"2554":1,"2555":1,"2556":1,"2557":2,"2569":1,"2572":1,"2578":1,"2579":1,"2605":3,"2610":1,"2643":9,"2644":5,"2645":1,"2714":2,"2744":1,"2775":2,"2776":1,"2777":2,"2778":2,"2780":1,"2781":3,"2784":1,"2791":1,"2792":1,"2797":1,"2801":1,"2818":1,"2834":1,"2844":1,"2854":1,"2862":1,"2866":2,"2867":1,"2879":1,"2882":1,"2883":1,"2902":1,"2903":1,"2904":5,"2905":7,"2906":3,"2912":6,"2913":2,"2915":3,"2917":5,"2918":5,"2919":5,"2921":1,"2923":2,"2924":1,"2929":1,"2930":2}}],["keymapping",{"2":{"1356":1}}],["keymap=",{"2":{"2576":1}}],["keymap=skully",{"2":{"481":1}}],["keymap=none",{"2":{"480":1,"481":1}}],["keymap=default",{"2":{"427":1,"471":1,"472":1,"474":1,"481":1}}],["keymap>",{"2":{"427":2,"450":1,"451":1,"2375":1,"2401":1,"2580":1,"2587":1,"2588":1,"2607":1,"2609":1}}],["keymap",{"0":{"5":1,"272":1,"443":1,"447":1,"557":1,"596":1,"597":1,"598":1,"625":1,"680":1,"1341":1,"1345":1,"1402":1,"1427":1,"1429":1,"1462":1,"2408":1,"2412":1,"2549":1,"2550":1,"2551":1,"2553":1,"2577":1,"2578":1,"2587":1,"2588":1,"2599":1,"2603":1,"2623":1,"2720":1,"2816":1},"1":{"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1352":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1428":1,"1429":1,"1430":2,"1431":1,"1432":1,"1433":1,"2550":1,"2551":2,"2552":2,"2553":1,"2554":2,"2555":2,"2556":2,"2557":2},"2":{"4":1,"5":4,"18":4,"31":1,"32":1,"34":1,"36":1,"45":1,"48":1,"55":1,"75":2,"86":1,"89":1,"90":1,"92":4,"93":3,"94":1,"114":19,"119":2,"120":3,"123":1,"125":7,"133":1,"134":7,"139":1,"145":4,"160":5,"173":1,"176":19,"185":7,"189":1,"191":10,"199":14,"201":1,"206":1,"210":6,"213":2,"217":1,"222":14,"228":1,"229":1,"236":7,"241":1,"249":7,"253":1,"255":2,"256":1,"266":7,"270":1,"272":2,"273":1,"277":6,"281":1,"284":1,"285":4,"288":1,"294":4,"307":3,"308":6,"317":3,"323":1,"328":3,"333":6,"360":1,"369":2,"370":1,"371":2,"372":2,"374":1,"387":1,"408":1,"427":15,"428":3,"431":7,"434":1,"435":4,"436":1,"437":5,"438":4,"443":6,"445":6,"447":5,"450":7,"451":7,"452":3,"460":1,"468":1,"471":4,"472":1,"474":1,"479":1,"480":1,"481":2,"482":2,"483":4,"498":2,"515":3,"553":1,"554":1,"557":1,"559":1,"579":3,"583":1,"584":2,"585":1,"586":8,"587":8,"590":2,"591":2,"594":1,"595":1,"596":1,"598":4,"605":1,"613":2,"616":1,"625":4,"627":2,"630":2,"634":1,"636":1,"640":1,"643":1,"644":1,"645":3,"648":1,"652":1,"658":1,"671":2,"680":1,"1312":1,"1319":2,"1326":1,"1341":1,"1344":1,"1345":4,"1350":1,"1351":1,"1354":1,"1385":2,"1387":2,"1402":2,"1407":4,"1408":1,"1415":1,"1417":1,"1419":1,"1425":1,"1426":2,"1427":4,"1428":1,"1429":1,"1433":1,"1435":3,"1440":2,"1443":2,"1456":1,"1457":3,"1458":2,"1459":1,"1460":2,"1464":9,"1465":1,"1466":11,"1478":1,"1479":1,"1481":1,"1485":1,"1486":1,"1494":1,"1496":1,"1497":1,"1515":1,"1521":2,"1526":1,"1588":1,"1595":1,"1596":1,"1597":1,"1600":1,"1616":4,"1619":1,"1621":4,"1622":3,"1624":1,"1625":1,"1626":1,"1628":5,"1650":4,"1651":2,"1655":1,"1656":1,"1661":4,"1662":2,"1666":1,"1695":1,"1736":1,"1757":1,"1762":1,"1770":1,"1784":1,"1823":1,"1824":1,"1827":1,"1828":1,"1831":1,"1844":2,"1845":2,"1849":1,"1904":1,"1909":1,"1917":1,"1926":1,"1927":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1938":1,"1942":1,"1947":2,"1993":1,"1994":1,"1998":1,"2004":1,"2005":1,"2006":1,"2046":2,"2050":1,"2066":2,"2068":2,"2072":1,"2073":1,"2148":1,"2153":1,"2157":1,"2160":1,"2163":1,"2172":1,"2174":1,"2182":1,"2184":1,"2224":1,"2249":2,"2266":1,"2270":1,"2277":2,"2286":1,"2291":2,"2295":2,"2298":1,"2302":3,"2305":3,"2310":5,"2311":1,"2312":2,"2313":1,"2319":1,"2322":4,"2323":5,"2324":1,"2389":1,"2393":2,"2395":2,"2397":2,"2398":4,"2401":6,"2407":2,"2408":6,"2409":2,"2410":6,"2411":5,"2412":1,"2422":1,"2427":1,"2441":1,"2446":2,"2447":3,"2448":2,"2449":1,"2463":1,"2497":1,"2502":1,"2504":1,"2548":1,"2550":3,"2551":4,"2553":3,"2554":2,"2558":2,"2565":1,"2566":1,"2572":1,"2576":2,"2577":8,"2578":4,"2580":2,"2583":4,"2587":7,"2588":4,"2591":2,"2596":1,"2598":7,"2599":4,"2600":2,"2601":6,"2602":1,"2603":3,"2607":1,"2609":2,"2622":1,"2623":1,"2656":1,"2675":2,"2720":2,"2721":10,"2722":5,"2744":2,"2745":1,"2750":2,"2775":2,"2777":2,"2862":2,"2877":1,"2878":5,"2879":2,"2880":71,"2887":2,"2899":1,"2903":1,"2905":2,"2912":1,"2913":1,"2914":1,"2916":1,"2919":3,"2920":1,"2921":1,"2923":1,"2930":2,"2931":1,"2932":1,"2933":1,"2940":1,"2941":1}}],["keymaps",{"0":{"17":1,"36":1,"120":1,"265":1,"275":1,"440":1,"585":1,"1433":1,"1435":1,"1439":1,"1443":1,"1457":1,"2555":1},"1":{"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"1436":1,"1437":1,"1438":1,"1440":1,"1441":1,"1442":1,"1443":1,"1444":1,"1445":1,"1446":1,"1447":1,"1448":1,"1449":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1455":1,"1456":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1,"2556":1,"2557":1},"2":{"0":1,"2":1,"3":1,"4":2,"5":1,"7":1,"8":1,"9":1,"15":1,"17":2,"19":1,"32":1,"36":3,"39":1,"52":1,"60":1,"65":1,"73":1,"74":1,"75":2,"107":1,"114":3,"125":1,"134":1,"139":1,"141":2,"145":2,"160":2,"167":1,"173":2,"176":3,"182":2,"185":1,"191":8,"199":4,"201":4,"208":1,"210":1,"212":1,"222":2,"224":2,"228":5,"231":1,"232":1,"236":2,"238":1,"249":7,"265":5,"266":5,"268":2,"275":3,"277":1,"283":1,"285":2,"317":1,"333":1,"368":1,"374":1,"393":1,"408":1,"410":2,"419":1,"427":4,"428":1,"435":2,"437":1,"440":2,"445":1,"447":1,"555":2,"576":2,"586":5,"587":2,"613":1,"616":1,"617":2,"625":1,"679":1,"680":1,"698":1,"1326":1,"1328":1,"1340":3,"1341":1,"1345":1,"1387":1,"1427":1,"1440":3,"1459":1,"1462":1,"1466":2,"1474":2,"1621":1,"1918":1,"2047":1,"2286":1,"2287":1,"2305":1,"2312":1,"2398":1,"2401":2,"2407":2,"2409":1,"2410":3,"2446":3,"2447":2,"2448":2,"2453":1,"2549":1,"2550":1,"2555":4,"2572":1,"2577":1,"2578":1,"2579":1,"2583":7,"2585":2,"2587":2,"2588":1,"2589":1,"2590":1,"2603":1,"2611":1,"2720":6,"2721":5,"2722":4,"2861":1,"2899":1,"2900":2,"2901":1,"2931":1}}],["keyboard=true",{"2":{"1319":1}}],["keyboard=clueboard",{"2":{"471":1,"472":1,"481":1,"2576":1}}],["keyboard>",{"2":{"427":4,"428":1,"450":1,"451":1,"621":1,"1429":1,"1430":2,"1999":1,"2375":1,"2401":1,"2577":1,"2580":1,"2587":1,"2588":1,"2607":1,"2609":1,"2622":1}}],["keyboard|keymap|kbfirmware",{"0":{"173":1},"2":{"176":1}}],["keyboardio",{"2":{"37":2,"176":1}}],["keyboard",{"0":{"29":1,"37":1,"44":1,"55":1,"59":1,"86":1,"102":1,"122":1,"144":1,"154":1,"168":1,"181":1,"197":1,"205":1,"218":1,"226":1,"241":1,"253":1,"262":1,"270":1,"281":1,"291":1,"300":1,"311":1,"322":1,"347":1,"376":1,"442":1,"446":1,"555":1,"565":1,"578":1,"594":1,"595":1,"600":1,"624":1,"631":1,"632":1,"633":1,"634":1,"638":1,"639":1,"640":1,"644":1,"646":1,"648":1,"649":1,"652":1,"681":1,"1317":1,"1338":1,"1361":1,"1400":1,"1431":1,"1436":1,"1452":1,"1454":1,"1631":1,"1832":1,"1834":1,"1925":1,"1980":1,"1982":1,"2050":1,"2051":1,"2254":1,"2286":1,"2407":1,"2431":1,"2440":1,"2442":1,"2444":1,"2446":1,"2449":1,"2450":1,"2452":1,"2454":1,"2459":1,"2460":1,"2604":1,"2605":1,"2606":1,"2608":1,"2609":1,"2656":1,"2704":1,"2707":1,"2709":1,"2721":1,"2774":1,"2782":1,"2789":1,"2873":1,"2878":1},"1":{"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"45":1,"60":1,"566":1,"567":1,"568":1,"625":1,"632":1,"633":2,"634":2,"635":1,"636":1,"637":1,"638":1,"639":2,"640":2,"645":1,"647":1,"648":1,"650":1,"651":1,"652":1,"1339":1,"1401":1,"1432":1,"1433":1,"1926":1,"1927":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2260":1,"2261":1,"2262":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2268":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":2,"2446":2,"2447":2,"2448":2,"2449":2,"2450":2,"2451":1,"2452":1,"2453":2,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2605":1,"2606":1,"2607":2,"2608":2,"2609":1,"2610":1,"2708":1,"2709":1,"2710":2,"2711":2,"2712":2,"2713":2,"2714":2,"2715":1,"2716":1,"2717":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"4":2,"14":2,"31":2,"34":3,"36":1,"50":6,"55":1,"56":1,"62":1,"67":3,"70":5,"74":1,"75":2,"76":2,"82":2,"86":6,"90":3,"92":1,"93":2,"94":3,"99":1,"102":2,"105":4,"107":1,"110":2,"111":2,"112":1,"114":7,"116":2,"119":1,"120":1,"122":2,"124":1,"125":5,"133":4,"134":10,"144":2,"145":3,"149":1,"154":4,"160":14,"168":2,"169":1,"173":2,"176":8,"181":2,"184":1,"185":5,"191":10,"197":2,"199":6,"205":3,"206":1,"209":2,"210":11,"212":3,"215":1,"218":2,"220":3,"222":10,"226":2,"229":3,"233":2,"234":1,"236":11,"238":1,"240":1,"241":4,"249":12,"253":4,"255":1,"262":3,"263":2,"265":1,"266":67,"270":4,"277":7,"281":4,"285":4,"291":2,"293":1,"294":13,"300":2,"305":1,"306":1,"308":8,"311":2,"312":2,"314":1,"315":1,"317":4,"322":2,"328":4,"332":2,"333":4,"347":1,"360":1,"362":1,"367":1,"369":4,"374":2,"376":2,"378":1,"390":2,"392":1,"393":1,"427":7,"428":2,"431":2,"432":2,"435":7,"437":1,"438":4,"440":3,"441":2,"442":3,"443":4,"445":1,"446":4,"448":4,"450":6,"451":6,"452":3,"460":1,"468":1,"471":4,"472":2,"478":1,"479":1,"482":2,"483":6,"494":2,"553":3,"554":1,"555":2,"559":8,"563":2,"565":2,"568":1,"570":2,"572":7,"573":4,"576":3,"578":3,"585":1,"586":5,"587":2,"590":2,"591":6,"592":3,"594":4,"597":1,"613":2,"616":5,"620":1,"621":1,"622":1,"623":3,"624":2,"625":4,"630":1,"631":4,"633":3,"634":3,"636":1,"637":6,"638":1,"639":1,"640":3,"641":2,"643":1,"644":1,"645":1,"646":1,"647":2,"648":1,"649":3,"652":1,"658":1,"663":1,"666":3,"671":2,"680":1,"681":6,"682":2,"683":5,"684":6,"686":2,"717":1,"725":1,"726":1,"743":2,"750":1,"751":1,"752":1,"753":1,"755":1,"801":1,"802":1,"830":1,"831":1,"859":1,"860":1,"889":1,"890":1,"924":1,"925":1,"958":1,"959":1,"992":1,"993":1,"1026":1,"1027":1,"1060":1,"1061":1,"1094":1,"1095":1,"1128":1,"1129":1,"1162":1,"1163":1,"1189":1,"1192":1,"1195":1,"1198":2,"1200":3,"1201":3,"1215":1,"1216":1,"1296":1,"1300":1,"1309":1,"1310":1,"1312":1,"1316":1,"1317":3,"1319":2,"1320":1,"1321":1,"1322":1,"1329":1,"1332":1,"1339":1,"1343":1,"1346":1,"1348":1,"1349":1,"1350":1,"1353":3,"1354":1,"1355":4,"1356":2,"1358":2,"1359":1,"1361":2,"1362":5,"1365":1,"1369":1,"1373":2,"1375":2,"1377":1,"1378":1,"1385":1,"1387":2,"1394":1,"1400":2,"1402":1,"1404":3,"1406":1,"1407":3,"1408":1,"1410":1,"1413":1,"1415":1,"1416":1,"1418":1,"1419":1,"1421":1,"1422":4,"1426":1,"1427":1,"1428":4,"1429":1,"1430":1,"1432":7,"1433":1,"1434":1,"1435":1,"1438":1,"1440":1,"1445":2,"1457":1,"1458":1,"1466":6,"1467":1,"1474":1,"1479":2,"1480":1,"1484":1,"1485":2,"1486":5,"1487":1,"1491":1,"1516":1,"1517":1,"1521":1,"1535":1,"1538":1,"1544":2,"1545":1,"1550":2,"1551":1,"1581":1,"1583":1,"1584":1,"1586":1,"1587":2,"1617":1,"1619":4,"1624":1,"1625":1,"1626":1,"1632":6,"1651":1,"1655":4,"1660":2,"1662":3,"1665":1,"1667":1,"1669":1,"1675":2,"1681":1,"1695":1,"1696":1,"1760":3,"1778":3,"1779":3,"1780":1,"1781":2,"1782":1,"1825":1,"1829":3,"1830":1,"1831":4,"1832":1,"1833":1,"1834":2,"1835":1,"1836":1,"1840":9,"1841":1,"1843":1,"1844":3,"1846":2,"1849":1,"1902":1,"1905":1,"1906":1,"1911":1,"1918":1,"1924":1,"1925":1,"1937":1,"1938":1,"1940":2,"1941":4,"1942":1,"1946":1,"1947":3,"1950":5,"1971":1,"1976":1,"1979":1,"1981":2,"1982":1,"1990":1,"1992":2,"1998":1,"2030":2,"2033":1,"2034":1,"2035":1,"2036":1,"2047":1,"2050":4,"2051":1,"2060":9,"2061":1,"2063":6,"2064":1,"2066":3,"2069":2,"2072":1,"2073":1,"2074":1,"2075":1,"2146":1,"2149":1,"2150":1,"2155":1,"2162":4,"2171":3,"2172":1,"2181":1,"2182":6,"2183":1,"2184":1,"2200":1,"2201":1,"2203":2,"2204":1,"2206":1,"2207":1,"2212":1,"2222":2,"2257":1,"2258":1,"2261":2,"2262":2,"2265":2,"2266":5,"2267":1,"2268":2,"2269":9,"2270":9,"2271":2,"2274":1,"2277":4,"2280":5,"2281":1,"2285":5,"2286":3,"2287":4,"2290":3,"2291":2,"2295":1,"2298":2,"2301":1,"2308":2,"2317":1,"2318":1,"2324":3,"2335":1,"2370":1,"2375":1,"2379":1,"2383":2,"2393":3,"2395":3,"2397":3,"2399":1,"2401":6,"2405":2,"2407":8,"2409":3,"2410":11,"2411":7,"2412":3,"2414":2,"2416":5,"2419":2,"2424":1,"2425":7,"2426":1,"2427":4,"2428":1,"2429":2,"2431":1,"2432":1,"2441":2,"2442":3,"2443":13,"2444":5,"2445":1,"2446":7,"2447":4,"2448":3,"2449":2,"2450":2,"2451":1,"2452":1,"2453":3,"2454":1,"2456":1,"2457":1,"2459":4,"2461":1,"2468":1,"2469":2,"2470":2,"2471":1,"2473":1,"2478":3,"2480":4,"2482":3,"2484":1,"2486":1,"2488":1,"2490":1,"2497":1,"2504":5,"2516":1,"2519":2,"2534":1,"2542":1,"2545":1,"2546":1,"2548":3,"2554":1,"2555":1,"2556":2,"2560":1,"2566":1,"2572":5,"2573":1,"2575":1,"2576":5,"2577":1,"2578":1,"2580":1,"2581":1,"2582":2,"2583":1,"2588":1,"2590":1,"2592":1,"2598":1,"2599":1,"2602":1,"2604":1,"2605":7,"2606":2,"2607":2,"2609":5,"2610":3,"2612":1,"2622":4,"2643":1,"2644":1,"2645":1,"2656":1,"2658":1,"2671":1,"2675":2,"2676":2,"2677":5,"2678":2,"2679":2,"2680":1,"2694":1,"2701":1,"2707":11,"2708":2,"2709":2,"2710":8,"2711":2,"2713":1,"2714":1,"2719":2,"2720":1,"2721":26,"2722":4,"2745":5,"2746":1,"2749":2,"2750":4,"2754":1,"2757":1,"2775":6,"2776":8,"2777":1,"2780":1,"2781":3,"2789":1,"2790":1,"2797":2,"2798":1,"2799":1,"2801":1,"2803":1,"2805":2,"2806":2,"2812":1,"2816":1,"2819":1,"2820":1,"2823":1,"2825":1,"2830":2,"2831":2,"2838":1,"2841":1,"2842":1,"2844":4,"2845":7,"2846":2,"2847":1,"2862":4,"2864":1,"2871":1,"2873":2,"2875":5,"2877":5,"2878":3,"2879":1,"2887":1,"2899":1,"2901":4,"2903":2,"2919":4,"2921":1,"2924":2,"2925":1,"2928":6,"2929":2,"2930":3,"2932":1,"2933":1,"2940":1,"2941":1}}],["keyboards",{"0":{"41":1,"54":1,"116":1,"439":1,"616":1,"625":1,"1427":1,"1462":1,"1584":1,"1660":1,"2419":1,"2775":1},"1":{"42":1,"43":1,"55":1,"56":1,"57":1,"58":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1},"2":{"2":1,"14":1,"28":1,"30":1,"33":1,"35":2,"36":3,"37":1,"43":3,"49":1,"50":1,"58":1,"65":2,"67":1,"69":2,"70":5,"73":2,"74":3,"86":3,"90":1,"92":1,"93":2,"102":1,"107":3,"109":1,"110":1,"114":9,"116":1,"118":1,"122":1,"123":1,"124":2,"132":1,"134":5,"144":1,"145":2,"152":1,"154":1,"160":14,"168":1,"169":2,"173":2,"176":2,"181":1,"191":4,"197":1,"199":2,"201":2,"206":1,"209":1,"210":5,"212":3,"220":1,"222":3,"235":1,"236":4,"240":2,"249":17,"251":1,"262":1,"266":8,"277":3,"279":1,"285":3,"294":1,"308":4,"317":4,"328":3,"333":1,"338":1,"373":4,"419":1,"427":5,"428":1,"430":1,"431":2,"432":2,"435":1,"437":1,"439":2,"446":1,"447":1,"448":1,"486":1,"505":1,"556":2,"559":2,"563":1,"565":1,"566":1,"572":1,"576":1,"578":1,"586":1,"587":1,"595":1,"609":1,"613":1,"616":4,"617":3,"621":1,"625":1,"663":5,"664":1,"679":1,"683":1,"687":1,"698":1,"1189":1,"1192":1,"1195":2,"1198":2,"1203":1,"1205":1,"1206":1,"1315":1,"1316":1,"1318":1,"1332":1,"1340":3,"1347":1,"1351":1,"1353":1,"1385":1,"1389":1,"1390":1,"1401":1,"1413":2,"1414":2,"1427":1,"1433":1,"1458":1,"1459":1,"1465":1,"1466":1,"1474":2,"1484":1,"1486":1,"1511":1,"1517":3,"1535":1,"1536":1,"1538":1,"1540":1,"1583":3,"1589":1,"1616":1,"1617":1,"1649":1,"1675":1,"1829":1,"1846":1,"1936":1,"1950":1,"1951":1,"1976":2,"1991":1,"2007":1,"2069":1,"2073":1,"2074":1,"2171":1,"2172":2,"2175":1,"2182":2,"2184":1,"2201":1,"2254":4,"2258":2,"2265":1,"2271":1,"2280":1,"2285":1,"2287":1,"2370":1,"2371":1,"2375":2,"2376":2,"2378":1,"2380":1,"2387":1,"2389":1,"2390":1,"2393":1,"2395":1,"2398":1,"2401":1,"2405":1,"2406":1,"2407":2,"2409":2,"2410":4,"2411":1,"2416":1,"2425":1,"2428":1,"2432":1,"2440":1,"2441":1,"2443":3,"2444":1,"2447":13,"2448":13,"2455":3,"2459":1,"2461":1,"2466":1,"2493":1,"2503":1,"2543":1,"2549":1,"2560":2,"2563":1,"2576":3,"2577":3,"2580":1,"2582":1,"2583":1,"2587":1,"2605":1,"2609":1,"2611":1,"2622":3,"2685":1,"2700":1,"2702":3,"2703":2,"2704":1,"2705":1,"2706":1,"2707":3,"2719":1,"2721":3,"2722":1,"2748":6,"2774":1,"2775":3,"2826":1,"2844":3,"2845":1,"2846":1,"2864":1,"2871":1,"2877":1,"2887":1,"2901":3,"2919":1,"2926":1}}],["g5",{"2":{"1919":1,"2520":1}}],["g3",{"2":{"1919":1,"2520":1}}],["g1",{"2":{"1919":1,"2520":1}}],["g♯",{"2":{"1919":6,"2520":6}}],["gs5",{"2":{"1919":1,"2520":1}}],["gs4",{"2":{"1919":1,"2520":1}}],["gs3",{"2":{"1919":1,"2520":1}}],["gs2",{"2":{"1919":1,"2520":1}}],["gs1",{"2":{"1919":1,"2520":1}}],["gs",{"2":{"1919":1,"2520":1}}],["gskt00",{"2":{"122":2}}],["g♭",{"2":{"1919":6,"2520":6}}],["gb5",{"2":{"1919":1,"2520":1}}],["gb4",{"2":{"1919":1,"2520":1}}],["gb3",{"2":{"1919":1,"2520":1}}],["gb2",{"2":{"1919":1,"2520":1}}],["gb1",{"2":{"1919":1,"2520":1}}],["gb",{"2":{"1651":1,"1919":1,"2520":1}}],["gboy",{"2":{"191":1}}],["gboards",{"2":{"145":1,"154":4,"160":1,"191":1,"1616":2}}],["gnd",{"2":{"695":1,"696":1,"713":8,"719":1,"800":1,"855":1,"887":1,"919":8,"954":8,"988":1,"1022":1,"1056":1,"1090":8,"1124":8,"1158":8,"1191":1,"1194":1,"1197":1,"1214":1,"1310":1,"1675":1,"1832":1,"2201":1,"2259":1,"2260":1,"2376":1,"2379":1,"2381":1,"2382":1,"2384":1,"2386":1,"2388":1,"2391":1,"2424":1,"2478":2,"2480":4,"2482":2,"2484":2,"2486":2,"2488":2,"2500":2,"2605":1,"2676":1,"2684":6}}],["gnu++14",{"2":{"176":1}}],["gnu11",{"2":{"176":1}}],["gnu",{"0":{"386":1},"2":{"134":1,"236":3,"378":1,"382":1,"1461":4,"2458":1,"2725":4}}],["gd25q64cs",{"2":{"2705":2}}],["gdb",{"2":{"384":1,"391":1,"2676":3,"2939":1}}],["gd32v",{"2":{"191":1,"686":2}}],["gd32vf103",{"2":{"130":2,"134":1,"176":2,"552":1}}],["gmt",{"2":{"371":2,"373":2}}],["gmmk2",{"2":{"236":1}}],["gmmk",{"2":{"102":3,"114":11,"134":1,"144":4,"145":2,"160":2,"176":3,"191":2,"199":1,"210":1,"2390":1}}],["gp3",{"2":{"2702":1}}],["gp8",{"2":{"2694":1}}],["gpx",{"2":{"2694":1}}],["gp0",{"2":{"2037":1,"2702":2}}],["gp19",{"2":{"2702":1}}],["gp18",{"2":{"2702":1}}],["gp17",{"2":{"2700":1}}],["gp1",{"2":{"2037":1,"2702":2}}],["gpt",{"2":{"714":8,"715":4,"1551":4}}],["gptd15",{"2":{"1551":1}}],["gptd8",{"2":{"719":1}}],["gptd8tim8",{"2":{"713":1}}],["gptd6",{"2":{"715":1}}],["gptd6tim6",{"2":{"713":1}}],["gptd9",{"2":{"714":1}}],["gptd7tim7",{"2":{"713":1}}],["gp20",{"2":{"2702":1}}],["gp2",{"2":{"2702":1}}],["gp29",{"2":{"693":1}}],["gp28",{"2":{"693":1}}],["gp27",{"2":{"693":1}}],["gp26",{"2":{"693":1}}],["gpl3",{"2":{"2719":1}}],["gpl2+",{"2":{"2719":1,"2721":1}}],["gpl2",{"2":{"2719":1}}],["gplv3",{"2":{"2458":2}}],["gplv2",{"0":{"2725":1},"2":{"2458":1}}],["gpl",{"2":{"284":1,"579":1,"1461":1,"1624":2,"2458":1,"2560":1,"2561":1,"2719":1,"2725":1,"2726":2,"2727":1,"2728":3,"2729":2,"2730":1,"2734":3,"2735":2,"2737":1,"2740":2,"2741":3,"2742":1,"2743":3}}],["gpioa",{"2":{"1393":1}}],["gpiob",{"2":{"769":2}}],["gpios",{"2":{"758":1,"2677":1,"2678":1,"2679":1}}],["gpiov3",{"2":{"718":1}}],["gpiov2",{"2":{"718":1}}],["gpiov1",{"2":{"718":1}}],["gpiof",{"2":{"65":1}}],["gpio",{"0":{"159":1,"243":1,"331":1,"757":1,"1653":1,"2693":1},"1":{"758":1,"759":1,"760":1,"2694":1,"2695":1},"2":{"49":1,"64":1,"94":1,"114":3,"133":1,"134":1,"160":2,"243":13,"244":1,"249":2,"266":4,"277":1,"308":1,"331":3,"333":1,"633":5,"637":3,"690":1,"701":2,"723":3,"731":1,"737":1,"741":1,"757":1,"758":13,"759":1,"769":2,"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":2,"1197":2,"1198":1,"1202":2,"1213":1,"1245":2,"1249":1,"1280":1,"1282":1,"1287":1,"1294":3,"1295":2,"1395":2,"1401":1,"1548":1,"1552":2,"1649":1,"1693":4,"1832":6,"2037":2,"2281":3,"2678":2,"2679":2,"2684":1,"2693":1,"2694":3,"2695":3,"2700":1,"2704":1,"2719":1,"2848":2,"2849":3,"2850":3,"2851":1,"2856":1,"2858":2,"2860":6,"2865":4,"2868":2,"2869":4,"2873":3,"2876":1}}],["gc9a01",{"2":{"277":1,"2746":2,"2749":7}}],["gc9107",{"2":{"277":1}}],["gc9xxx",{"2":{"277":1}}],["gcc15",{"2":{"308":1}}],["gcc10",{"2":{"134":1}}],["gcc",{"2":{"73":1,"132":1,"134":2,"210":1,"381":1,"387":1,"2410":1,"2655":1}}],["gk61",{"2":{"236":3,"294":1}}],["g2",{"2":{"222":2,"1919":1,"2520":1}}],["g60",{"2":{"222":2}}],["g431",{"2":{"249":1}}],["g4",{"2":{"191":1,"1919":1,"2520":1}}],["g474",{"2":{"49":1}}],["gluing",{"2":{"2415":1}}],["glue",{"2":{"487":1,"2428":1}}],["glossary",{"0":{"2794":1},"1":{"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1,"2827":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2842":1}}],["glorious",{"2":{"2390":2}}],["globs",{"2":{"467":1}}],["globe",{"2":{"236":1}}],["globally",{"2":{"1422":1,"1768":1,"1770":1}}],["global",{"0":{"724":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1},"2":{"94":1,"134":1,"172":1,"176":2,"191":1,"285":2,"297":1,"308":1,"381":1,"382":1,"384":1,"517":2,"572":1,"623":1,"701":1,"709":1,"723":2,"724":1,"854":2,"858":1,"918":2,"923":1,"953":2,"957":1,"987":2,"991":1,"1021":2,"1025":1,"1055":2,"1059":1,"1089":2,"1093":1,"1123":2,"1127":1,"1157":2,"1161":1,"1410":4,"1413":1,"1425":1,"1466":1,"1844":3,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1889":1,"1891":1,"1897":1,"2006":1,"2066":3,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2127":1,"2129":1,"2135":1,"2137":1,"2139":1,"2141":1,"2311":1,"2600":1,"2848":1,"2903":1,"2905":1}}],["glcdfont",{"2":{"1948":1,"1951":1,"2281":1}}],["glibc",{"2":{"2732":1}}],["gliding",{"2":{"1933":1}}],["glide",{"2":{"1933":1,"1970":1,"1978":3}}],["glides",{"2":{"1933":1}}],["glitch",{"2":{"222":1,"716":1}}],["glance",{"2":{"490":1,"2633":1,"2927":1}}],["glamorous",{"2":{"251":1}}],["glacier",{"2":{"222":1}}],["glyphs",{"2":{"2748":21,"2758":2,"2760":4,"2761":1,"2762":2,"2763":2}}],["glyph",{"0":{"2761":1,"2762":1},"2":{"176":1,"2748":2,"2758":2,"2760":3,"2761":13,"2762":8,"2763":2}}],["glenpickle",{"2":{"154":4,"160":1}}],["gif",{"2":{"2748":2}}],["gifs",{"2":{"138":1,"2746":1}}],["gigadevice",{"0":{"552":1},"2":{"552":1}}],["gives",{"2":{"490":1,"493":1,"536":1,"1603":1,"1790":1,"1840":1,"1955":1,"2060":1,"2367":1,"2411":1,"2627":1,"2906":1}}],["give",{"0":{"2465":1},"2":{"317":1,"358":1,"1206":1,"1375":1,"1614":2,"1991":1,"2050":1,"2372":1,"2423":1,"2453":1,"2632":1,"2655":1,"2696":1,"2906":1,"2934":1}}],["given",{"0":{"2896":1},"2":{"166":1,"312":1,"695":2,"696":2,"794":1,"808":1,"836":1,"866":1,"896":1,"931":1,"965":1,"999":1,"1033":1,"1067":1,"1101":1,"1135":1,"1169":1,"1222":1,"1375":1,"1478":1,"1497":1,"1606":3,"1614":1,"1616":1,"1627":1,"1749":1,"1752":1,"1802":1,"1807":1,"1810":1,"1813":1,"1816":1,"1819":1,"1827":1,"1928":2,"1939":1,"2191":9,"2194":2,"2221":3,"2293":1,"2312":1,"2344":1,"2347":1,"2350":1,"2357":1,"2364":1,"2410":1,"2425":1,"2452":1,"2469":1,"2473":1,"2474":1,"2552":1,"2558":1,"2560":1,"2605":1,"2689":1,"2719":1,"2721":2,"2722":1,"2750":2,"2777":1,"2905":1,"2919":1,"2932":1,"2941":1}}],["giving",{"2":{"283":1,"1583":1,"2635":1}}],["giabalanai",{"2":{"210":1}}],["ginkgo65hot",{"2":{"176":1}}],["gingham",{"2":{"154":2}}],["gitconfig",{"2":{"442":1}}],["gitignore",{"2":{"160":2,"176":1,"191":1}}],["git",{"0":{"6":1,"1337":1,"2594":1,"2624":1,"2625":1,"2628":1,"2639":1,"2809":1},"1":{"2625":1,"2629":1,"2630":1},"2":{"10":1,"24":1,"114":1,"199":1,"222":1,"249":1,"403":12,"405":16,"408":2,"414":10,"415":11,"416":9,"417":6,"457":1,"485":1,"586":1,"587":2,"611":7,"613":1,"1337":2,"1622":4,"1623":1,"2398":8,"2401":2,"2585":2,"2586":2,"2588":1,"2591":1,"2594":12,"2595":1,"2600":2,"2601":10,"2603":1,"2608":1,"2625":1,"2627":21,"2628":1,"2629":1,"2630":19,"2632":18,"2633":18,"2634":2,"2639":2,"2646":1,"2666":1,"2669":10,"2673":3,"2676":1,"2719":1,"2723":3,"2810":1,"2899":1}}],["github",{"0":{"1337":1,"2398":1,"2585":1,"2590":1,"2591":1,"2595":1,"2600":1,"2601":1,"2810":1,"2892":1},"1":{"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1},"2":{"2":1,"21":2,"134":1,"236":1,"338":3,"396":1,"397":2,"403":1,"406":1,"408":1,"414":1,"415":2,"482":1,"503":1,"539":1,"572":1,"577":1,"611":6,"681":1,"1316":1,"1335":1,"1336":1,"1337":2,"1349":1,"1350":2,"1356":3,"1358":1,"1373":1,"1395":1,"1457":1,"1461":3,"1622":2,"1942":1,"2324":1,"2398":6,"2401":1,"2576":2,"2577":2,"2583":2,"2584":1,"2585":2,"2586":2,"2588":1,"2590":3,"2591":3,"2592":2,"2593":2,"2594":1,"2595":1,"2596":1,"2598":2,"2599":2,"2600":4,"2601":7,"2602":2,"2603":2,"2621":2,"2625":1,"2628":1,"2630":11,"2632":5,"2657":1,"2673":2,"2674":1,"2707":1,"2721":1,"2845":1,"2892":1}}],["ggkeyboards",{"2":{"114":1}}],["guessed",{"2":{"1942":1,"2919":1}}],["guess",{"2":{"1936":1}}],["guestures",{"2":{"176":1}}],["guarantees",{"2":{"2750":1}}],["guarantee",{"2":{"627":1}}],["guaranteed",{"2":{"397":1,"760":1}}],["guarded",{"2":{"2687":1}}],["guard",{"2":{"145":1,"176":1,"199":1,"210":1,"328":1,"333":1,"412":1}}],["guards",{"2":{"4":1,"134":1,"510":1,"2719":1}}],["gu",{"2":{"285":1,"2519":3,"2548":3}}],["gurindam",{"2":{"154":2}}],["guiding",{"2":{"2898":1}}],["guidance",{"2":{"2573":1}}],["guided",{"2":{"2934":1}}],["guides",{"0":{"2429":1},"2":{"608":1,"1311":1,"2420":1}}],["guidelines",{"0":{"613":1,"2440":1},"1":{"614":1,"615":1,"616":1,"617":1,"618":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2449":1,"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1},"2":{"424":2,"510":1,"519":1,"607":2,"613":1,"616":1,"617":1,"672":1,"1337":1,"1418":1,"1419":1,"2407":1,"2603":1,"2707":2,"2714":1,"2901":1}}],["guide",{"0":{"358":1,"1957":1,"2413":1,"2475":1},"1":{"2414":1,"2415":1,"2416":1,"2417":1,"2418":1,"2419":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1,"2476":1,"2477":1,"2478":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2498":1,"2499":1,"2500":1,"2501":1},"2":{"199":1,"378":2,"379":1,"428":1,"681":2,"1333":1,"2274":1,"2398":2,"2410":1,"2415":1,"2416":1,"2427":1,"2429":3,"2572":1,"2573":3,"2574":1,"2575":1,"2584":1,"2591":2,"2596":1,"2603":1,"2609":1,"2666":1,"2667":1}}],["guitar",{"2":{"1479":2,"1480":3,"1484":1}}],["gui+s",{"2":{"196":1,"1785":1}}],["gui",{"2":{"114":1,"231":2,"266":1,"285":1,"328":1,"348":1,"374":1,"680":1,"1346":2,"1374":15,"1375":8,"1451":1,"1666":1,"1667":1,"1668":1,"1670":2,"1684":1,"1771":3,"1773":1,"1782":8,"2159":1,"2166":3,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2503":4,"2512":1,"2519":26,"2522":16,"2523":16,"2528":15,"2539":4,"2548":26,"2565":19,"2572":1,"2644":15,"2645":4,"2646":1,"2751":1,"2882":1,"2921":8,"2923":1}}],["gr",{"2":{"2293":1,"2294":3}}],["grunt",{"2":{"1456":1}}],["grb",{"2":{"1282":1,"1284":3}}],["grv",{"2":{"369":2,"587":2,"1666":2,"1771":2,"2503":1,"2537":1,"2556":1,"2557":1,"2903":1,"2905":1}}],["growing",{"2":{"2934":1}}],["grow",{"2":{"607":1,"2881":1}}],["grown",{"2":{"113":1,"663":1,"2440":2}}],["grounded",{"2":{"2492":1}}],["ground",{"2":{"390":1,"559":1,"746":1,"1294":1,"1309":1,"1310":1,"1469":1,"1472":2,"1476":1,"1552":1,"1653":1,"1663":1,"2426":1,"2713":1}}],["groupbuys",{"2":{"2721":1}}],["group",{"0":{"1507":1,"1508":1,"1509":1,"1510":1},"2":{"249":5,"463":1,"514":1,"666":1,"1332":1,"1507":1,"1508":1,"1509":1,"1510":1,"2178":1,"2288":4,"2461":1,"2502":1,"2937":1}}],["groups",{"2":{"231":1,"1497":2,"2289":1}}],["gritty",{"0":{"2558":1},"2":{"358":1}}],["grin",{"2":{"179":1}}],["grid",{"2":{"112":1,"249":1,"567":3,"1433":1,"1649":1,"1840":1,"2060":1,"2064":1,"2265":3,"2856":1,"2873":1}}],["grayscale",{"2":{"2748":4,"2770":5}}],["graystudio",{"2":{"222":1}}],["gram",{"2":{"2170":1}}],["grammar",{"2":{"176":1}}],["graphic",{"2":{"2748":2}}],["graphical",{"2":{"2462":1,"2582":1,"2592":1,"2612":1,"2666":1,"2746":1,"2751":1}}],["graphics",{"0":{"464":1,"2766":1,"2768":1},"1":{"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1},"2":{"2748":2,"2751":2,"2766":3,"2767":1,"2768":4,"2769":1}}],["grape",{"2":{"222":1}}],["grabbing",{"2":{"2421":1}}],["grab",{"2":{"380":1,"2421":1,"2627":1}}],["gracefully",{"2":{"220":1}}],["granularity",{"2":{"2215":1,"2920":1}}],["granular",{"2":{"195":1,"1492":1,"1497":1,"1504":1,"2903":1,"2912":1,"2913":1,"2914":1,"2921":1}}],["gradients",{"2":{"2063":2}}],["gradient",{"2":{"176":1,"199":1,"348":1,"1407":1,"1843":4,"2063":22,"2065":3,"2174":2,"2176":2,"2177":2,"2179":1,"2180":2,"2525":2,"2887":3}}],["grave",{"0":{"1665":1,"1771":1,"2512":1},"1":{"1666":1,"1667":1,"1668":1,"1669":1,"1670":1},"2":{"114":1,"188":1,"191":1,"199":1,"347":1,"680":1,"1357":1,"1619":1,"1665":2,"1668":1,"1670":4,"1686":1,"1771":4,"2503":1,"2512":2,"2519":2,"2537":1,"2548":2,"2554":2,"2579":1,"2671":1,"2879":1,"2882":1,"2933":1}}],["grs",{"2":{"114":1,"160":1}}],["greyscale",{"2":{"2758":1,"2766":1}}],["grep",{"2":{"2721":2}}],["greek",{"2":{"2879":1,"2880":2}}],["greeting",{"2":{"487":1,"1681":1}}],["greet",{"2":{"483":1,"487":1}}],["green",{"0":{"704":1,"706":1,"732":1,"734":1,"810":1,"812":1,"818":1,"838":1,"840":1,"846":1,"868":1,"870":1,"876":1,"900":1,"902":1,"908":1,"935":1,"937":1,"943":1,"969":1,"971":1,"977":1,"1003":1,"1005":1,"1011":1,"1037":1,"1039":1,"1045":1,"1071":1,"1073":1,"1079":1,"1105":1,"1107":1,"1113":1,"1139":1,"1141":1,"1147":1,"1173":1,"1175":1,"1181":1,"1226":1,"1228":1,"1234":1,"1303":1,"1305":1},"1":{"705":1,"707":1,"733":1,"735":1,"811":1,"813":1,"819":1,"839":1,"841":1,"847":1,"869":1,"871":1,"877":1,"901":1,"903":1,"909":1,"936":1,"938":1,"944":1,"970":1,"972":1,"978":1,"1004":1,"1006":1,"1012":1,"1038":1,"1040":1,"1046":1,"1072":1,"1074":1,"1080":1,"1106":1,"1108":1,"1114":1,"1140":1,"1142":1,"1148":1,"1174":1,"1176":1,"1182":1,"1227":1,"1229":1,"1235":1,"1304":1,"1306":1},"2":{"49":1,"338":3,"397":1,"492":1,"599":2,"650":1,"683":1,"705":2,"707":2,"726":1,"729":1,"733":2,"735":2,"802":1,"805":1,"811":2,"813":2,"819":2,"831":1,"834":1,"839":2,"841":2,"847":2,"860":1,"863":1,"869":2,"871":2,"877":2,"890":1,"893":1,"901":2,"903":2,"909":2,"925":1,"928":1,"936":2,"938":2,"944":2,"959":1,"962":1,"970":2,"972":2,"978":2,"993":1,"996":1,"1004":2,"1006":2,"1012":2,"1027":1,"1030":1,"1038":2,"1040":2,"1046":2,"1061":1,"1064":1,"1072":2,"1074":2,"1080":2,"1095":1,"1098":1,"1106":2,"1108":2,"1114":2,"1129":1,"1132":1,"1140":2,"1142":2,"1148":2,"1163":1,"1166":1,"1174":2,"1176":2,"1182":2,"1216":1,"1219":1,"1227":2,"1229":2,"1235":2,"1284":1,"1285":1,"1304":2,"1306":2,"1407":1,"2067":2,"2072":2,"2073":1,"2086":1,"2088":1,"2174":1,"2178":1,"2182":2,"2184":1,"2191":1,"2198":3,"2525":1,"2676":1,"2724":1}}],["greatest",{"2":{"2687":1}}],["greater",{"2":{"63":1,"408":1,"420":1,"431":2,"717":1,"1417":1,"1512":2,"2000":1,"2566":1}}],["great",{"2":{"540":1,"563":1,"1333":1,"1497":1,"1583":1,"1585":1,"1788":1,"2588":1,"2638":1,"2639":1,"2658":1,"2673":1,"2685":1}}],["greatly",{"2":{"49":1,"2410":1}}],["gh",{"2":{"2601":4}}],["ghcr",{"2":{"2600":1}}],["gh62",{"2":{"448":5,"2425":5}}],["gh60",{"2":{"427":3,"2608":1}}],["gherkin",{"2":{"266":1,"322":4,"328":1,"2683":1}}],["ghoul",{"2":{"199":1}}],["ghosting",{"0":{"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1},"2":{"134":1,"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"2459":2,"2865":1}}],["ghost",{"2":{"112":1,"199":1,"559":2,"886":1,"2865":1}}],["gh80",{"2":{"57":4,"266":1}}],["gauge",{"2":{"2895":1}}],["gather",{"2":{"1958":1,"2895":1}}],["gathering",{"2":{"427":1}}],["gateway",{"2":{"2933":1}}],["gateron",{"2":{"2414":1}}],["gate",{"2":{"1539":1,"1552":2}}],["gasc",{"2":{"1375":2}}],["gamma",{"2":{"236":1}}],["game",{"2":{"241":6,"1434":1,"1600":1,"1732":1,"2560":1,"2639":1}}],["gamers",{"2":{"148":1}}],["gamebuddy",{"2":{"102":3,"114":1}}],["galleon",{"2":{"222":1}}],["galaxy",{"2":{"114":1}}],["garbled",{"2":{"191":1}}],["gap",{"2":{"134":1,"2459":1}}],["gain",{"2":{"131":1,"690":1,"2887":1}}],["gained",{"2":{"100":1,"107":1,"138":1}}],["gaining",{"2":{"86":1,"2803":1}}],["gold",{"2":{"2067":2,"2198":3}}],["goldenrod",{"2":{"2067":2,"2198":2}}],["golden",{"2":{"1517":1}}],["googletest",{"2":{"2398":1}}],["google",{"0":{"2935":2},"2":{"392":1,"2935":3,"2936":1}}],["googling",{"2":{"391":1}}],["goodbye",{"2":{"1479":1,"1480":2}}],["good",{"2":{"119":1,"510":1,"515":2,"530":1,"531":1,"533":1,"608":1,"631":1,"646":1,"1312":1,"1334":1,"1421":1,"1427":1,"1461":1,"1519":1,"1980":1,"1981":1,"2050":1,"2302":1,"2310":2,"2398":1,"2418":1,"2420":2,"2421":1,"2422":1,"2459":1,"2463":1,"2501":1,"2572":1,"2637":1,"2657":1,"2710":1,"2903":1,"2924":1,"2934":1}}],["goal",{"2":{"262":1,"514":1,"1427":1}}],["going",{"2":{"188":1,"268":1,"624":1,"752":1,"1407":1,"2303":1,"2422":2,"2424":1,"2427":1,"2453":1,"2467":1,"2580":1,"2585":1,"2633":2,"2644":1,"2775":2,"2776":1,"2890":1,"2940":1}}],["goes",{"2":{"166":1,"392":1,"410":1,"490":1,"1365":1,"1476":2,"1534":1,"2050":1,"2175":1,"2215":1,"2495":1,"2501":1,"2719":1,"2746":1,"2864":1,"2870":1,"2871":1}}],["gotten",{"2":{"594":1}}],["got",{"2":{"143":1,"164":1,"176":1,"179":1,"182":1,"190":1,"245":1,"511":1,"1349":1,"1467":1,"2427":1}}],["go",{"0":{"610":1},"2":{"92":1,"119":1,"137":1,"148":1,"347":1,"358":1,"387":2,"405":1,"410":1,"510":1,"512":1,"556":1,"666":2,"1416":2,"1466":1,"1476":1,"1516":2,"1533":2,"1674":2,"1949":1,"1956":1,"2004":1,"2202":1,"2279":1,"2283":1,"2303":1,"2324":1,"2386":1,"2388":1,"2391":1,"2398":1,"2409":1,"2415":1,"2422":1,"2425":1,"2580":1,"2643":1,"2671":1,"2676":1,"2685":1,"2690":1,"2721":2,"2776":1,"2905":2}}],["gone",{"2":{"172":1}}],["gon",{"0":{"18":1},"2":{"18":3}}],["g",{"0":{"2085":1,"2087":1},"1":{"2086":1,"2088":1},"2":{"38":2,"65":1,"114":1,"145":2,"160":1,"191":2,"222":6,"236":1,"249":3,"266":2,"328":25,"369":1,"405":1,"563":1,"586":1,"587":2,"683":2,"692":1,"726":2,"729":1,"733":1,"802":3,"805":1,"811":1,"815":1,"819":1,"821":1,"831":3,"834":1,"839":1,"843":1,"847":1,"849":1,"860":3,"863":1,"869":1,"873":1,"877":1,"879":1,"890":3,"893":1,"901":1,"905":1,"909":1,"911":1,"925":3,"928":1,"936":1,"940":1,"944":1,"946":1,"959":3,"962":1,"970":1,"974":1,"978":1,"980":1,"993":3,"996":1,"1004":1,"1008":1,"1012":1,"1014":1,"1027":3,"1030":1,"1038":1,"1042":1,"1046":1,"1048":1,"1061":3,"1064":1,"1072":1,"1076":1,"1080":1,"1082":1,"1095":3,"1098":1,"1106":1,"1110":1,"1114":1,"1116":1,"1129":3,"1132":1,"1140":1,"1144":1,"1148":1,"1150":1,"1163":3,"1166":1,"1174":1,"1178":1,"1182":1,"1184":1,"1193":1,"1197":1,"1216":3,"1219":1,"1227":1,"1231":1,"1235":1,"1237":1,"1285":2,"1362":1,"1374":1,"1389":1,"1390":1,"1410":2,"1413":3,"1416":1,"1440":1,"1443":1,"1459":1,"1478":1,"1532":1,"1584":1,"1595":1,"1597":1,"1612":3,"1616":2,"1659":1,"1761":1,"1775":3,"1781":1,"1782":1,"1829":1,"1840":1,"1844":2,"1919":19,"1947":2,"1950":1,"1955":2,"1962":1,"1978":1,"1979":1,"1992":1,"2007":1,"2044":1,"2060":1,"2064":1,"2066":2,"2072":1,"2073":2,"2074":3,"2086":1,"2088":1,"2174":2,"2182":1,"2184":3,"2185":1,"2191":10,"2203":1,"2266":5,"2269":3,"2280":1,"2289":1,"2294":1,"2302":1,"2311":1,"2407":1,"2416":1,"2418":2,"2419":1,"2428":1,"2483":2,"2503":3,"2520":19,"2522":1,"2525":1,"2535":3,"2556":1,"2603":2,"2620":1,"2655":1,"2656":2,"2662":1,"2676":1,"2678":2,"2719":1,"2720":1,"2721":3,"2722":1,"2724":1,"2750":1,"2847":1,"2882":1,"2905":8,"2921":1,"2923":1}}],["gfx",{"2":{"31":3,"34":2,"1957":10,"2750":2}}],["german",{"2":{"2831":1,"2880":8}}],["gergo",{"2":{"154":2}}],["gergoplex",{"2":{"145":1,"191":1}}],["ge",{"2":{"2519":2,"2548":2}}],["gemini",{"2":{"2290":3,"2293":2}}],["geminipr",{"0":{"2289":1},"2":{"2287":1,"2289":6,"2291":1,"2294":2,"2874":1}}],["geminate60",{"2":{"154":2,"222":1}}],["geekhack",{"2":{"1350":1,"1364":1,"1372":1,"1373":1}}],["geometric",{"2":{"2864":1,"2871":1}}],["geometry",{"2":{"2750":2,"2919":1}}],["geonworks",{"2":{"241":1,"249":1}}],["georgi",{"2":{"154":2}}],["gesture",{"0":{"1965":1},"2":{"1964":1,"1970":1,"1971":1,"1978":3,"2039":1}}],["gestures",{"0":{"1970":1,"1971":1},"2":{"176":1,"1965":3,"1968":2,"1970":2,"1971":1,"1978":3}}],["gesc",{"2":{"191":2,"199":2,"1666":1,"1667":2,"1668":1,"2512":1}}],["genuine",{"2":{"1358":1}}],["gen1",{"2":{"481":1}}],["gentoo",{"2":{"191":1,"222":2,"2594":1}}],["gentleman",{"2":{"176":1}}],["gentleman65",{"2":{"168":2,"222":2}}],["genisis",{"2":{"114":1}}],["genetic",{"2":{"327":1}}],["genesis",{"2":{"102":3}}],["generic",{"0":{"174":1,"1607":1,"1918":1,"2702":1,"2703":1},"2":{"50":1,"172":1,"175":1,"176":3,"236":3,"317":1,"328":1,"682":1,"1427":1,"1497":3,"1918":1,"1958":2,"2254":2,"2501":1,"2542":1,"2703":2,"2705":2,"2798":1,"2838":1}}],["generating",{"2":{"328":1,"663":1,"671":1,"1466":1,"1512":1,"1939":1,"2394":1,"2396":1,"2707":1,"2792":1,"2844":1}}],["generation",{"2":{"12":1,"132":1,"176":1,"191":3,"199":2,"210":4,"231":1,"249":1,"277":1,"285":1,"294":1,"2669":1}}],["generators",{"2":{"334":2,"528":1,"529":1}}],["generator",{"0":{"528":1},"2":{"132":1,"160":2,"1696":1,"2415":1}}],["generates",{"2":{"459":1,"460":1,"670":1,"2582":1}}],["generated",{"2":{"73":1,"308":1,"333":1,"459":1,"578":1,"602":1,"671":1,"716":1,"1444":1,"1475":1,"1482":1,"1614":1,"2410":1,"2550":1,"2676":1,"2721":1,"2748":5,"2757":1}}],["generate",{"0":{"302":1,"459":1,"460":1,"468":1,"671":1},"2":{"70":4,"95":1,"114":1,"132":2,"138":1,"145":1,"191":1,"199":2,"222":1,"236":2,"249":2,"277":1,"308":2,"328":3,"338":3,"369":1,"445":1,"459":1,"460":1,"468":1,"578":1,"664":3,"671":5,"1385":1,"1474":3,"1521":1,"1522":1,"1664":1,"1962":1,"1974":1,"1978":1,"2377":2,"2384":2,"2410":2,"2675":1,"2748":4,"2930":1}}],["generally",{"2":{"397":1,"492":1,"514":1,"525":1,"527":1,"530":1,"533":1,"536":1,"542":1,"543":1,"559":1,"654":1,"673":1,"674":1,"685":1,"743":1,"747":1,"765":1,"794":1,"1245":1,"1266":1,"1295":1,"1312":1,"1416":1,"1471":1,"1538":1,"1550":1,"1633":1,"1662":1,"1830":1,"1847":1,"2002":1,"2070":1,"2161":1,"2310":1,"2417":1,"2456":1,"2472":1,"2475":1,"2494":1,"2605":1,"2676":1,"2748":2,"2749":1,"2750":1,"2853":1,"2887":1,"2896":3}}],["generalise",{"2":{"191":1,"236":1}}],["generalize",{"2":{"160":1}}],["general",{"0":{"613":1,"677":1,"2845":1},"1":{"614":1,"615":1,"616":1,"617":1,"618":1},"2":{"5":1,"10":1,"175":1,"201":1,"212":1,"233":1,"489":1,"510":1,"512":1,"607":1,"1300":1,"1461":3,"1551":1,"1760":1,"2008":1,"2310":1,"2458":1,"2637":1,"2639":1,"2685":2,"2689":1,"2724":1,"2725":3,"2749":1,"2750":1,"2758":1,"2766":1,"2894":1}}],["gets",{"2":{"494":1,"576":1,"643":1,"644":1,"649":1,"655":1,"656":1,"657":1,"1434":1,"1445":1,"1458":1,"1511":2,"1531":1,"1827":1,"1941":1,"1956":1,"1981":1,"2001":1,"2197":6,"2293":1,"2316":3,"2459":2,"2554":1,"2678":1,"2942":1}}],["getter",{"2":{"532":1}}],["getters",{"2":{"236":2}}],["getting",{"0":{"414":1,"415":1,"2425":1,"2889":1},"1":{"2890":1,"2891":1,"2892":1},"2":{"222":2,"397":1,"674":1,"681":2,"698":1,"1407":1,"1419":1,"2648":1,"2667":1,"2718":1,"2719":1,"2724":1,"2776":1,"2889":1}}],["getta25",{"2":{"154":2,"308":1}}],["getreuer",{"2":{"179":1,"191":1,"288":1,"1534":1}}],["get",{"0":{"363":1,"364":1,"365":1,"1330":1,"1562":1,"1576":1,"1761":1,"1871":1,"1877":1,"1887":1,"1897":1,"1900":1,"2026":1,"2097":1,"2103":1,"2109":1,"2115":1,"2125":1,"2135":1,"2141":1,"2144":1,"2327":1,"2347":1,"2462":1,"2917":1},"1":{"1563":1,"1577":1,"1872":1,"1878":1,"1888":1,"1898":1,"1901":1,"2027":1,"2098":1,"2104":1,"2110":1,"2116":1,"2126":1,"2136":1,"2142":1,"2145":1,"2328":1,"2348":1,"2349":1},"2":{"22":4,"23":1,"50":1,"75":1,"143":1,"145":1,"151":1,"190":1,"191":3,"194":6,"195":2,"199":1,"210":4,"236":2,"249":1,"273":1,"276":1,"277":1,"284":1,"285":1,"308":1,"317":1,"323":4,"324":2,"325":4,"371":1,"379":1,"380":1,"383":1,"386":1,"432":1,"435":1,"456":1,"511":1,"528":1,"559":1,"562":2,"572":1,"586":1,"608":1,"613":1,"614":1,"617":2,"623":1,"627":1,"643":1,"684":1,"1309":1,"1327":2,"1329":2,"1333":1,"1353":1,"1362":1,"1375":10,"1377":1,"1378":1,"1385":1,"1387":1,"1407":1,"1421":2,"1422":1,"1423":1,"1424":1,"1425":1,"1436":1,"1445":1,"1464":1,"1466":2,"1478":1,"1484":1,"1485":1,"1490":2,"1492":2,"1493":2,"1497":7,"1504":5,"1511":1,"1520":1,"1527":1,"1528":1,"1562":1,"1564":1,"1569":1,"1585":1,"1587":2,"1588":1,"1589":1,"1595":1,"1606":9,"1614":1,"1619":1,"1655":1,"1683":1,"1775":1,"1782":1,"1828":1,"1829":1,"1834":1,"1845":4,"1846":1,"1857":1,"1871":1,"1877":1,"1887":1,"1897":1,"1900":1,"1917":1,"1936":1,"1937":1,"1947":1,"1949":1,"1956":1,"1977":2,"1978":1,"1979":2,"1981":3,"1983":1,"1985":1,"1987":1,"1989":1,"2001":6,"2002":1,"2004":1,"2005":1,"2006":1,"2022":1,"2026":1,"2031":1,"2052":2,"2064":2,"2068":4,"2069":1,"2073":3,"2074":3,"2083":1,"2097":1,"2103":1,"2109":1,"2115":1,"2125":1,"2135":1,"2141":1,"2144":1,"2159":1,"2160":3,"2161":1,"2162":1,"2166":2,"2167":4,"2168":5,"2169":4,"2170":5,"2178":1,"2186":1,"2196":1,"2197":5,"2217":2,"2248":2,"2254":1,"2277":1,"2279":1,"2301":1,"2302":1,"2309":4,"2312":2,"2316":3,"2327":1,"2344":1,"2345":1,"2347":1,"2355":1,"2373":1,"2374":2,"2417":1,"2421":1,"2425":1,"2427":1,"2455":1,"2459":4,"2464":1,"2465":1,"2483":1,"2495":1,"2496":1,"2501":1,"2579":2,"2592":1,"2605":1,"2612":1,"2621":1,"2627":1,"2667":1,"2675":1,"2676":1,"2691":1,"2707":2,"2719":1,"2724":2,"2747":1,"2750":8,"2877":1,"2882":4,"2886":5,"2890":1,"2903":1,"2904":6,"2905":8,"2912":1,"2913":1,"2914":1,"2916":2,"2917":4,"2918":1,"2920":5,"2921":2,"2923":2,"2929":1,"2936":1,"2941":4}}],["gtk",{"2":{"2324":2}}],["gtest",{"2":{"114":1}}],["gt",{"0":{"141":1,"167":1,"195":1,"245":1,"363":1,"364":1,"365":1,"1446":1,"1447":1,"1448":1,"1449":1,"1450":2,"1451":5,"1627":1,"2449":1,"2450":1},"2":{"4":3,"18":2,"49":1,"55":3,"70":1,"94":1,"113":2,"114":5,"132":2,"133":2,"134":2,"166":1,"176":4,"191":3,"199":3,"210":1,"212":2,"222":1,"249":5,"277":1,"285":1,"317":1,"323":3,"338":1,"346":2,"347":6,"356":1,"387":15,"391":1,"397":1,"401":2,"403":3,"405":8,"406":1,"427":1,"428":1,"431":2,"457":1,"474":2,"490":1,"493":4,"557":1,"567":2,"568":3,"586":2,"591":2,"616":3,"625":8,"670":1,"671":4,"678":1,"726":1,"758":1,"765":2,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1245":2,"1266":2,"1312":2,"1375":3,"1385":1,"1403":1,"1404":2,"1409":4,"1427":1,"1428":3,"1432":4,"1433":1,"1447":1,"1448":1,"1449":3,"1450":1,"1457":6,"1458":5,"1460":4,"1462":1,"1464":1,"1466":5,"1485":1,"1498":1,"1500":1,"1509":1,"1521":1,"1522":1,"1584":1,"1599":2,"1621":2,"1631":1,"1632":20,"1651":1,"1662":1,"1782":1,"1987":1,"1992":1,"1993":9,"1994":1,"2002":1,"2009":1,"2266":5,"2284":1,"2291":2,"2293":1,"2310":1,"2398":1,"2407":2,"2409":4,"2410":18,"2411":2,"2427":1,"2444":2,"2446":1,"2447":1,"2450":2,"2459":1,"2495":4,"2497":2,"2501":1,"2503":1,"2527":2,"2537":1,"2547":2,"2583":5,"2587":2,"2598":1,"2621":4,"2627":7,"2632":3,"2655":2,"2656":2,"2671":4,"2674":2,"2675":2,"2676":2,"2677":1,"2678":1,"2719":1,"2721":4,"2749":1,"2750":4,"2751":1,"2775":4,"2844":1,"2862":1,"2905":2,"2921":1,"2924":1}}],["e5",{"2":{"1919":1,"2520":1}}],["e4",{"2":{"1919":1,"2520":1}}],["e3",{"2":{"1919":1,"2520":1}}],["e2",{"2":{"1919":1,"2520":1}}],["e♭",{"2":{"1919":6,"2520":6}}],["ebay",{"2":{"2498":1,"2828":1}}],["eb5",{"2":{"1919":1,"2520":1}}],["eb4",{"2":{"1919":1,"2520":1}}],["eb3",{"2":{"1919":1,"2520":1}}],["eb2",{"2":{"1919":1,"2520":1}}],["eb1",{"2":{"1919":1,"2520":1}}],["eb",{"2":{"1919":1,"2520":1}}],["ejct",{"2":{"1358":1,"2503":1,"2542":1}}],["eject",{"0":{"1358":1},"2":{"1358":3,"2503":2,"2542":2}}],["eimsk",{"2":{"2034":2}}],["eicra",{"2":{"2034":1}}],["eight",{"2":{"1696":2,"1734":1,"1955":1,"2215":1,"2237":1}}],["eighth",{"2":{"763":1,"2220":1,"2296":1}}],["either",{"2":{"49":1,"60":1,"87":1,"88":2,"104":2,"127":2,"137":1,"152":1,"408":1,"452":1,"461":1,"493":1,"511":1,"612":1,"617":1,"670":1,"683":1,"692":1,"700":1,"711":1,"1195":1,"1198":1,"1281":1,"1294":1,"1313":1,"1343":1,"1378":1,"1461":1,"1468":1,"1471":1,"1474":1,"1519":1,"1532":1,"1619":1,"1621":1,"1655":2,"1656":1,"1706":1,"1732":1,"1956":1,"1989":1,"1992":1,"1994":1,"2159":1,"2260":1,"2272":1,"2285":1,"2286":1,"2291":2,"2384":1,"2420":1,"2453":1,"2458":1,"2587":1,"2619":1,"2620":1,"2661":1,"2669":1,"2679":1,"2721":1,"2725":1,"2749":1,"2750":1,"2760":1,"2784":1,"2862":2,"2906":1,"2918":2,"2919":2}}],["e1",{"2":{"1919":1,"2520":1}}],["e15",{"2":{"692":1}}],["e14",{"2":{"692":1}}],["e12",{"2":{"692":1}}],["e11",{"2":{"692":1}}],["e10",{"2":{"692":1}}],["e13",{"2":{"692":1}}],["e9",{"2":{"692":1}}],["egg",{"2":{"673":1,"2306":1,"2307":3,"2308":2}}],["eggman",{"2":{"154":2}}],["eg",{"2":{"431":1,"516":1,"527":1,"562":1,"616":1,"630":1,"649":1,"695":1,"696":3,"760":1,"1442":1,"1451":1,"1521":1,"1587":1,"1693":1,"1790":1,"2001":1,"2237":1,"2239":1,"2241":1,"2243":1,"2254":1,"2315":1,"2377":2,"2381":1,"2384":2,"2393":1,"2395":1,"2397":1,"2443":1,"2448":1,"2644":1,"2706":1,"2721":1,"2845":2}}],["e7",{"2":{"328":1,"692":1}}],["e8",{"2":{"692":2}}],["e8ghtyneo",{"2":{"317":1}}],["e88",{"2":{"222":1}}],["eubg",{"2":{"2288":1,"2289":1}}],["euro",{"2":{"2473":1}}],["europe",{"2":{"1343":1}}],["eurkey",{"2":{"294":1,"2880":2}}],["eu",{"2":{"241":2,"2294":1}}],["eyes",{"2":{"2421":1}}],["eyeohdesigns",{"2":{"236":1}}],["eyboard",{"2":{"2162":1}}],["eybord",{"2":{"2162":1}}],["eyalroz",{"2":{"176":1}}],["ekow",{"2":{"222":1}}],["ek65",{"2":{"199":1}}],["ec44c6c1675c25b9827aacd08c02433cccde7780",{"2":{"2398":1}}],["ec11",{"2":{"1659":1}}],["echo",{"0":{"491":1},"2":{"489":1,"491":1,"515":4,"527":1,"2598":2,"2621":1}}],["eclipse",{"0":{"378":1,"386":1,"387":1,"2646":1,"2650":1,"2651":1,"2654":1,"2807":1},"1":{"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"2651":1,"2652":1,"2653":1,"2655":1,"2656":1},"2":{"378":1,"379":1,"382":1,"385":1,"387":2,"2646":3,"2649":1,"2650":2,"2651":6,"2652":3,"2653":1,"2656":1,"2807":1,"2899":1}}],["ecosystem",{"2":{"243":1,"331":1}}],["eccentric",{"2":{"1678":1}}],["ecc",{"2":{"236":1}}],["ec",{"2":{"210":1,"247":2,"277":1,"1650":2,"2519":3,"2548":3}}],["equo",{"2":{"2594":1}}],["equally",{"2":{"1780":1,"2734":1}}],["equality",{"2":{"1375":1}}],["equal",{"2":{"431":3,"474":1,"1365":1,"1686":1,"2288":1,"2293":1,"2503":3,"2537":1,"2543":2,"2760":2,"2768":2}}],["equals",{"2":{"249":1}}],["equivalency",{"2":{"533":1}}],["equivalents",{"2":{"553":1,"1280":1,"1982":1,"2684":1}}],["equivalent",{"2":{"7":1,"103":1,"185":1,"186":1,"232":1,"234":1,"746":1,"747":1,"750":1,"1395":1,"1614":1,"1632":1,"1633":1,"1691":1,"1846":1,"2069":1,"2174":1,"2552":1,"2560":1,"2561":1,"2645":1,"2678":1,"2679":1,"2721":4}}],["equinox",{"2":{"222":1}}],["eql",{"2":{"176":1,"369":1,"587":2,"2503":1,"2537":1,"2556":1}}],["efuse",{"2":{"2496":2}}],["ef8878fba5d3786e3f9c66436da63a560cd36ac9",{"2":{"587":2}}],["efgh",{"2":{"266":1}}],["ef",{"2":{"249":1}}],["efl",{"2":{"176":2,"191":1,"236":1,"277":1,"751":4,"754":1}}],["effort",{"2":{"663":1,"794":1,"1402":1,"1522":1,"2309":1,"2418":1,"2451":1,"2620":1}}],["efficiently",{"2":{"1519":1,"1679":1}}],["efficient",{"2":{"63":1,"231":1,"1189":2,"1190":1,"1196":1,"1955":1,"1992":1,"2286":1}}],["effect2",{"2":{"1844":6,"2066":6}}],["effective",{"2":{"716":1,"1410":1,"1782":1,"1933":1,"2905":1,"2921":1}}],["effectively",{"2":{"49":1,"163":1,"1294":1,"1736":1,"2265":1,"2474":1,"2561":1,"2914":1}}],["effects",{"0":{"1843":1,"1844":1,"2063":1,"2066":1,"2176":1,"2189":1,"2193":1},"1":{"2064":1,"2065":1,"2177":1,"2178":1,"2179":1,"2180":1,"2190":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1},"2":{"84":1,"93":2,"124":1,"134":1,"141":1,"210":1,"249":1,"266":1,"277":1,"294":1,"298":1,"308":1,"515":3,"716":1,"1483":1,"1629":2,"1630":2,"1840":1,"1843":2,"1844":6,"1845":1,"1846":3,"2060":1,"2063":3,"2065":1,"2066":6,"2068":1,"2069":3,"2190":1,"2202":1,"2203":2,"2721":1,"2787":1,"2864":3,"2870":2,"2871":3}}],["effect",{"0":{"2064":1,"2065":1,"2075":1,"2177":1,"2178":1,"2190":1,"2192":1},"2":{"49":1,"74":1,"93":1,"134":1,"145":1,"160":2,"176":1,"191":6,"194":1,"199":1,"210":1,"236":1,"249":2,"266":1,"276":1,"277":1,"285":4,"294":2,"317":1,"348":2,"587":1,"1348":1,"1419":1,"1483":1,"1487":2,"1492":1,"1591":1,"1596":1,"1629":1,"1630":1,"1679":1,"1823":1,"1828":1,"1843":3,"1844":21,"1845":3,"1859":1,"1861":1,"1863":1,"1864":1,"1865":1,"1866":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1885":1,"1887":1,"1888":1,"1889":1,"1891":1,"1897":1,"1898":1,"1899":1,"1933":1,"1956":2,"2040":1,"2063":3,"2064":4,"2065":1,"2066":21,"2068":3,"2075":2,"2085":1,"2087":1,"2089":1,"2090":1,"2091":1,"2092":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2123":1,"2125":1,"2126":1,"2127":1,"2129":1,"2135":1,"2136":1,"2137":1,"2139":1,"2141":1,"2142":1,"2143":1,"2171":1,"2174":2,"2176":1,"2177":10,"2178":11,"2179":2,"2190":1,"2191":1,"2192":1,"2193":6,"2194":14,"2202":1,"2203":1,"2302":1,"2312":1,"2525":2,"2864":1,"2870":1,"2871":1,"2887":10,"2918":1}}],["ede48346eee4b8d6847c19bc01420bee76a5e486",{"2":{"2398":1}}],["ed",{"2":{"275":1,"2161":2,"2678":1}}],["edges",{"2":{"2063":1,"2919":1}}],["edge",{"2":{"175":1,"1249":8,"2036":1,"2420":1,"2561":1,"2776":2,"2780":2,"2858":1}}],["editable",{"2":{"493":1}}],["editorconfig",{"2":{"2673":1}}],["editors",{"2":{"502":1,"2638":1}}],["editor",{"0":{"2578":1,"2638":1},"2":{"427":2,"446":1,"447":1,"448":1,"680":1,"1434":1,"1948":2,"2416":1,"2425":2,"2427":1,"2497":1,"2575":1,"2578":1,"2582":1,"2592":3,"2593":1,"2600":1,"2612":3,"2627":1,"2633":1,"2638":1,"2646":1,"2656":1,"2666":3,"2669":2,"2776":1,"2781":1,"2862":1}}],["edit",{"2":{"403":1,"405":1,"614":2,"666":1,"670":1,"1844":1,"2066":1,"2204":1,"2214":1,"2407":2,"2465":1,"2592":1,"2612":1,"2626":1,"2627":1,"2633":1,"2781":1,"2916":1}}],["edited",{"2":{"391":1,"408":1,"587":1,"1948":1,"2631":1}}],["editing",{"2":{"391":1,"458":1,"465":1,"614":1,"617":1,"1316":1,"1523":1,"2578":1,"2627":1,"2748":1}}],["edition",{"0":{"1394":1,"1398":1,"2706":1},"2":{"222":2,"249":3,"1388":1,"1394":1,"1395":2,"1396":1,"1398":1,"2706":1}}],["edits",{"2":{"222":1,"408":1}}],["edi",{"2":{"154":1,"160":1}}],["eopkg",{"2":{"2594":1}}],["eof",{"2":{"249":1,"2765":1}}],["eol",{"2":{"173":1,"308":1,"333":1}}],["eon95",{"2":{"57":2}}],["eon87",{"2":{"57":2}}],["eon75",{"2":{"57":2}}],["eon65",{"2":{"57":2}}],["eon40",{"2":{"57":2}}],["etc",{"0":{"1317":1},"2":{"169":1,"285":1,"442":2,"508":1,"509":1,"530":1,"536":1,"630":1,"649":1,"726":1,"765":2,"802":2,"831":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1245":2,"1266":2,"1280":1,"1313":2,"1329":1,"1369":1,"1419":1,"1479":1,"1824":1,"1950":1,"1992":1,"2050":1,"2074":1,"2171":1,"2182":1,"2205":1,"2269":1,"2280":1,"2414":2,"2420":1,"2646":1,"2666":1,"2707":2,"2719":3,"2721":4,"2722":1,"2882":1,"2883":2}}],["eh",{"2":{"154":4,"270":3,"277":1,"2519":2,"2548":2}}],["estonian",{"2":{"2880":3}}],["estimating",{"2":{"2372":1}}],["estimated",{"2":{"2372":1,"2374":1}}],["established",{"2":{"572":1,"2284":1,"2418":1}}],["es",{"2":{"1587":1}}],["esr",{"2":{"608":1}}],["essential",{"2":{"384":1,"1777":1}}],["essentially",{"2":{"263":1,"2248":1,"2417":1}}],["especially",{"2":{"320":1,"617":1,"1410":1,"1421":1,"1511":1,"1540":1,"1583":1,"1587":1,"1979":1,"2410":1,"2422":1,"2689":1,"2757":1,"2892":1,"2923":1,"2924":1,"2934":1}}],["espectro",{"2":{"154":2}}],["eschew",{"2":{"517":1}}],["escaping",{"2":{"191":1}}],["escaped",{"2":{"2845":2}}],["escape",{"0":{"1377":1,"1665":1,"1771":1,"2512":1},"1":{"1666":1,"1667":1,"1668":1,"1669":1,"1670":1},"2":{"114":1,"176":1,"188":1,"191":1,"222":1,"231":1,"680":1,"681":1,"683":2,"1345":1,"1357":1,"1432":1,"1440":1,"1596":1,"1665":3,"1668":2,"1670":4,"1771":2,"2221":1,"2305":1,"2310":1,"2339":2,"2380":1,"2411":1,"2503":2,"2512":3,"2519":8,"2537":2,"2548":8,"2565":2,"2579":1,"2605":1,"2862":1}}],["esc",{"0":{"1357":1,"2305":1},"2":{"105":2,"114":1,"199":1,"369":1,"587":2,"1377":3,"1440":1,"1447":1,"1583":1,"1596":2,"1597":1,"1598":1,"1599":3,"1616":2,"1619":1,"1651":3,"1666":1,"1667":1,"1670":4,"1686":1,"1761":1,"1771":10,"2221":1,"2305":4,"2306":1,"2308":2,"2310":2,"2377":3,"2384":3,"2503":1,"2519":2,"2537":1,"2548":2,"2550":1,"2565":1,"2869":2,"2882":1,"2923":1,"2933":1}}],["epomaker",{"2":{"2560":2}}],["epoch80",{"2":{"241":2}}],["epsize",{"2":{"2050":1,"2051":1}}],["epsize\`",{"2":{"2050":1}}],["ep",{"2":{"114":1,"190":1,"191":1,"222":1,"266":1,"573":2}}],["e6",{"2":{"111":1,"568":1,"1192":1,"2368":1,"2377":1,"2384":1,"2684":1,"2713":1}}],["emergencies",{"2":{"2896":1}}],["emerge",{"2":{"2594":1}}],["emery65",{"2":{"222":1}}],["em",{"2":{"1599":3}}],["emitting",{"2":{"2819":1}}],["emitted",{"2":{"1492":2,"2009":1}}],["emit",{"2":{"1497":1,"2309":1}}],["emac",{"2":{"2325":1,"2533":1}}],["emacs",{"2":{"176":1,"1587":1,"2159":1,"2324":2,"2325":2,"2337":1,"2338":1,"2339":1,"2533":2}}],["email>",{"2":{"1461":1}}],["email",{"2":{"1461":2,"1599":5,"2457":1,"2499":1,"2627":3}}],["emoji",{"0":{"339":1},"1":{"340":1,"341":1},"2":{"335":1,"490":2,"2322":1,"2323":1,"2411":1}}],["employing",{"2":{"1409":1}}],["emphasis",{"2":{"198":1,"212":1}}],["emptystring",{"2":{"181":2,"191":1}}],["empty",{"2":{"50":1,"199":1,"210":1,"222":2,"249":1,"308":2,"597":2,"613":1,"1273":1,"1802":1,"2361":1,"2497":1,"2608":2,"2652":1,"2721":2}}],["embed",{"0":{"357":1},"2":{"357":1}}],["embedded",{"0":{"751":1},"2":{"174":1,"176":1,"356":1,"609":1,"750":3,"751":2,"754":3,"2556":1,"2700":1,"2721":2,"2751":1,"2857":1}}],["embracing",{"2":{"116":1}}],["emulating",{"2":{"750":1}}],["emulation",{"0":{"174":1,"754":1},"2":{"94":1,"131":1,"134":1,"249":1,"277":1,"743":1,"1788":1,"2692":1}}],["emulates",{"2":{"1778":1,"1779":1,"1965":1,"2382":1,"2477":1,"2481":1,"2494":1}}],["emulate",{"2":{"174":1,"1917":1,"1924":1,"2311":1,"2479":1,"2940":1}}],["emulated",{"2":{"145":1,"176":2,"743":1,"750":1,"754":1,"1544":1,"1780":1,"2290":1,"2940":1}}],["eep",{"2":{"566":2,"567":2}}],["eeproms",{"2":{"2692":1}}],["eeprom",{"0":{"131":1,"174":1,"661":1,"743":1,"754":1,"1406":1,"1847":1,"1899":1,"2070":1,"2143":1,"2266":1,"2439":1,"2791":1,"2857":1},"1":{"744":1,"745":1,"746":1,"747":1,"748":1,"749":1,"1407":1,"1408":1},"2":{"49":2,"65":1,"73":1,"94":3,"114":7,"131":5,"134":7,"145":1,"160":5,"174":2,"176":10,"188":1,"191":5,"222":1,"236":7,"249":1,"277":3,"285":1,"294":1,"308":1,"333":1,"566":3,"567":3,"649":1,"661":1,"743":12,"745":4,"746":36,"747":13,"748":5,"750":4,"751":1,"752":2,"753":1,"754":2,"1317":5,"1345":5,"1346":1,"1362":2,"1406":5,"1407":10,"1408":2,"1422":2,"1538":3,"1583":1,"1585":1,"1619":4,"1847":1,"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"1899":1,"1920":1,"1942":2,"2070":1,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2143":1,"2175":6,"2191":9,"2192":5,"2193":3,"2194":7,"2195":3,"2266":9,"2290":1,"2320":1,"2324":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2411":1,"2439":3,"2504":2,"2516":1,"2661":1,"2692":1,"2745":2,"2791":3,"2857":4}}],["ee",{"2":{"191":1,"249":2,"566":1,"567":2,"1345":1,"1407":1,"1584":1,"1980":1,"2266":2,"2504":1,"2519":4,"2548":4,"2745":1,"2791":1}}],["eeconfig",{"0":{"1408":1},"2":{"94":1,"114":1,"134":1,"176":1,"191":2,"222":1,"236":1,"249":5,"266":1,"277":1,"285":1,"308":1,"328":1,"745":1,"1406":6,"1407":7,"1408":7,"2266":1,"2791":1}}],["elbow",{"2":{"2421":1}}],["elapses",{"2":{"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1253":1,"1255":1,"1258":1,"1261":1}}],["elapsed32",{"2":{"645":1,"2270":1,"2750":6}}],["elapsed",{"2":{"249":1,"294":1,"1410":1,"1456":1,"2184":1,"2793":1}}],["elf",{"2":{"236":1,"1362":1,"2580":1,"2622":1,"2676":2}}],["elongate",{"2":{"222":1}}],["ellora65",{"2":{"222":1}}],["ellipse",{"2":{"222":3,"236":1,"2750":3}}],["ellipses",{"2":{"138":1,"2750":3}}],["elevated",{"2":{"2422":1}}],["element++",{"2":{"1949":1,"2279":1}}],["element",{"2":{"1949":2,"2279":2}}],["elements",{"2":{"134":1,"2721":1,"2751":1}}],["electrical",{"2":{"1840":3,"2060":3,"2199":2,"2420":1,"2428":1,"2676":1,"2721":3}}],["electronics",{"2":{"763":1,"1552":1}}],["elephant42",{"2":{"191":2}}],["elephant",{"2":{"67":4,"72":1}}],["elsewhere",{"2":{"558":1,"614":1,"635":1,"1994":1,"2420":1,"2451":2,"2476":1,"2750":1,"2905":1,"2933":1,"2941":1}}],["else",{"2":{"90":6,"105":4,"179":1,"194":1,"196":3,"406":1,"408":2,"510":2,"530":1,"629":2,"639":1,"650":1,"651":1,"683":1,"1377":2,"1378":1,"1403":1,"1407":2,"1440":3,"1446":1,"1456":1,"1464":1,"1527":3,"1587":1,"1595":1,"1612":1,"1651":7,"1662":6,"1773":1,"1785":3,"1791":2,"1918":1,"1950":2,"1956":1,"1985":1,"2001":1,"2074":2,"2160":2,"2167":1,"2168":2,"2270":1,"2280":1,"2291":1,"2309":1,"2310":6,"2311":2,"2312":4,"2324":1,"2374":2,"2399":1,"2447":2,"2457":1,"2570":1,"2673":2,"2765":1,"2785":2,"2793":1,"2899":1}}],["eligible",{"2":{"1294":1,"2163":1}}],["eliminating",{"0":{"2161":1},"2":{"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1}}],["eliminate",{"2":{"76":1,"210":1,"277":1,"1773":1,"2161":1,"2427":1,"2721":1}}],["elitec",{"2":{"122":1,"311":18}}],["elite",{"0":{"1394":1,"1396":1},"1":{"1397":1,"1398":1},"2":{"86":2,"138":1,"189":2,"191":2,"199":1,"311":1,"1386":7,"1388":3,"1396":4,"1404":4,"2266":1,"2378":1,"2417":1,"2706":2,"2846":1,"2888":1}}],["evidence",{"2":{"2562":2}}],["evaporate",{"2":{"2420":1}}],["evaluate",{"2":{"2007":1}}],["evaluates",{"2":{"1841":2,"2061":2,"2246":1,"2247":1}}],["evaluated",{"2":{"561":1}}],["evaluation",{"0":{"2741":1},"2":{"533":1}}],["evaluations",{"0":{"533":1}}],["evo70",{"2":{"222":1}}],["evy",{"0":{"57":1}}],["evyd13",{"0":{"57":1},"2":{"57":22,"222":1}}],["ever",{"2":{"112":1,"139":1,"175":1,"194":1,"1308":1,"1440":3,"2928":1}}],["everywhere",{"2":{"2001":1}}],["everyone",{"2":{"179":1,"405":1,"406":1,"608":1,"619":1,"1492":1,"1497":1,"2573":1}}],["every",{"0":{"2672":1},"2":{"92":1,"188":1,"194":2,"199":1,"303":1,"456":1,"472":1,"492":1,"543":1,"554":1,"577":1,"578":1,"579":1,"613":1,"628":1,"643":1,"680":1,"711":1,"716":1,"717":1,"745":1,"1361":1,"1375":1,"1414":1,"1422":1,"1423":1,"1466":1,"1532":1,"1594":1,"1608":1,"1849":1,"1955":1,"2007":2,"2064":1,"2072":1,"2164":1,"2215":3,"2266":1,"2268":2,"2270":1,"2290":1,"2302":2,"2303":1,"2378":1,"2380":1,"2385":1,"2408":1,"2410":1,"2422":1,"2600":1,"2610":1,"2633":1,"2695":1,"2724":1,"2844":1,"2897":1,"2905":1,"2930":2}}],["everything",{"0":{"26":1},"2":{"317":1,"388":1,"416":1,"639":1,"659":1,"1197":1,"1333":1,"1339":1,"1379":1,"1407":1,"1419":1,"1462":1,"1655":1,"2075":1,"2183":1,"2274":1,"2289":1,"2291":1,"2410":2,"2427":1,"2430":1,"2501":1,"2553":1,"2579":1,"2586":1,"2610":1,"2666":1,"2671":1,"2727":1,"2751":1,"2901":1,"2928":1}}],["even",{"2":{"93":1,"138":2,"190":1,"222":1,"288":1,"516":1,"531":1,"538":1,"553":1,"562":2,"563":1,"590":1,"617":1,"632":1,"643":1,"654":2,"1353":1,"1361":1,"1378":2,"1406":1,"1407":2,"1409":1,"1410":1,"1434":1,"1447":1,"1461":1,"1511":1,"1513":1,"1587":1,"1596":1,"1606":2,"1613":1,"1664":1,"1669":1,"1767":1,"1775":1,"1779":1,"1780":1,"1931":1,"1941":1,"1979":1,"2185":1,"2248":1,"2252":1,"2258":1,"2287":1,"2302":1,"2324":1,"2372":1,"2374":1,"2411":1,"2422":1,"2428":1,"2446":1,"2453":1,"2561":2,"2610":1,"2685":1,"2725":1,"2750":1,"2788":1,"2906":2,"2918":1,"2921":1,"2925":1,"2936":2}}],["eventual",{"2":{"1427":1}}],["eventually",{"2":{"169":1,"1362":1,"2398":1,"2459":1}}],["events",{"0":{"406":1,"2002":1},"2":{"73":2,"214":1,"312":1,"406":1,"628":1,"629":1,"630":1,"641":1,"1407":1,"1410":2,"1449":1,"1599":1,"1661":1,"1662":1,"1778":1,"1782":1,"1987":1,"2069":1,"2269":1,"2566":1,"2793":1,"2822":1,"2847":2,"2863":1,"2906":1,"2912":4,"2917":1,"2921":1,"2933":2}}],["event",{"0":{"1446":1,"2470":1},"2":{"46":3,"145":1,"176":1,"199":1,"214":1,"406":5,"578":1,"628":1,"630":1,"1350":1,"1374":2,"1438":4,"1447":1,"1448":1,"1450":1,"1529":1,"1599":2,"1612":3,"1616":1,"1780":1,"1828":1,"1987":1,"2002":3,"2207":1,"2211":1,"2221":3,"2293":1,"2468":1,"2814":1,"2815":1,"2835":1,"2907":1,"2908":2,"2909":3,"2910":2,"2911":1,"2924":1,"2933":1}}],["ez",{"2":{"50":1,"114":1,"270":2,"277":1,"435":1,"440":1,"2212":1,"2721":1}}],["e",{"2":{"38":2,"114":2,"266":2,"328":1,"335":1,"348":1,"369":1,"405":1,"427":1,"428":2,"452":2,"453":2,"464":1,"467":2,"518":1,"563":1,"586":1,"587":2,"683":2,"765":1,"1193":1,"1197":1,"1245":1,"1266":1,"1362":1,"1385":2,"1388":14,"1389":1,"1390":1,"1392":2,"1396":5,"1410":1,"1416":1,"1419":1,"1440":2,"1443":1,"1459":1,"1478":1,"1532":2,"1584":1,"1595":1,"1597":1,"1599":2,"1606":2,"1619":1,"1655":1,"1659":1,"1693":2,"1735":1,"1761":1,"1775":3,"1781":1,"1782":1,"1791":2,"1829":1,"1844":2,"1919":13,"1947":2,"1950":1,"1955":2,"1962":1,"1978":1,"1979":1,"1992":2,"2007":1,"2030":1,"2044":1,"2066":2,"2074":1,"2159":1,"2161":4,"2174":1,"2182":1,"2184":3,"2185":1,"2203":1,"2221":1,"2266":5,"2269":3,"2280":1,"2289":1,"2293":1,"2294":4,"2302":1,"2311":1,"2407":1,"2416":2,"2418":2,"2419":1,"2428":1,"2483":2,"2495":1,"2503":3,"2520":13,"2535":3,"2550":1,"2556":1,"2582":1,"2603":2,"2655":2,"2656":2,"2662":1,"2678":2,"2719":2,"2720":2,"2721":4,"2722":1,"2724":1,"2748":1,"2750":1,"2882":1,"2921":1,"2923":1}}],["eat",{"2":{"2411":1}}],["eabi",{"2":{"381":1}}],["ea1514b3",{"2":{"370":1,"371":1}}],["eagle",{"2":{"222":1}}],["eager",{"2":{"94":1,"114":1,"199":1,"210":1,"236":1,"1410":9,"1413":4,"2847":3}}],["earliest",{"2":{"2678":1,"2679":1}}],["earlier",{"2":{"114":1,"1623":1,"1657":1,"1840":1,"2060":1,"2687":1,"2691":1,"2905":1,"2906":4,"2912":2,"2931":1}}],["early",{"0":{"2677":1,"2678":1,"2679":1},"1":{"2678":1,"2679":1,"2680":1},"2":{"49":1,"63":1,"65":1,"77":1,"320":1,"335":2,"631":1,"632":1,"1611":1,"1937":1,"1975":1,"1992":1,"2309":1,"2425":1,"2677":2,"2678":5,"2679":4,"2721":5,"2923":1}}],["each",{"0":{"35":1,"1653":1,"1654":1},"1":{"36":1},"2":{"31":3,"34":1,"36":1,"45":2,"65":1,"118":1,"149":1,"160":1,"166":1,"176":2,"188":1,"210":1,"234":1,"273":1,"307":1,"369":1,"396":1,"405":1,"431":2,"470":1,"471":1,"485":1,"490":1,"519":1,"541":1,"556":1,"559":1,"562":2,"563":1,"566":1,"573":1,"578":1,"613":2,"614":1,"625":1,"626":1,"637":1,"645":3,"667":1,"684":1,"698":1,"712":1,"721":1,"726":1,"759":1,"797":1,"802":1,"831":1,"852":1,"860":1,"884":1,"890":1,"916":1,"925":1,"951":1,"959":1,"985":1,"993":1,"1019":1,"1027":1,"1053":1,"1061":1,"1087":1,"1095":1,"1121":1,"1129":1,"1155":1,"1163":1,"1211":1,"1216":1,"1249":1,"1280":1,"1285":1,"1309":1,"1310":1,"1326":1,"1340":1,"1386":1,"1406":1,"1410":1,"1413":1,"1421":1,"1427":1,"1437":1,"1438":2,"1466":1,"1487":3,"1519":2,"1522":1,"1532":2,"1533":1,"1606":1,"1611":1,"1632":1,"1649":2,"1656":2,"1658":1,"1659":2,"1660":1,"1664":1,"1675":1,"1714":1,"1716":1,"1741":1,"1777":1,"1781":1,"1788":1,"1840":1,"1846":1,"1928":1,"1930":1,"1950":1,"1954":1,"1955":2,"1956":1,"1976":1,"1978":2,"1979":1,"1985":1,"2030":1,"2060":1,"2064":2,"2069":1,"2171":1,"2172":1,"2178":3,"2180":7,"2183":1,"2229":1,"2233":1,"2257":1,"2265":1,"2266":1,"2270":1,"2271":1,"2274":1,"2280":1,"2282":1,"2288":1,"2302":6,"2303":2,"2308":3,"2311":6,"2318":1,"2322":1,"2323":3,"2380":1,"2398":1,"2406":1,"2407":1,"2416":1,"2419":1,"2421":2,"2422":1,"2424":1,"2427":1,"2437":1,"2438":1,"2443":1,"2459":1,"2469":1,"2495":1,"2502":2,"2551":1,"2554":2,"2556":1,"2559":1,"2564":1,"2579":1,"2632":1,"2653":1,"2677":1,"2687":2,"2705":1,"2713":2,"2722":1,"2747":1,"2748":1,"2749":2,"2750":3,"2758":2,"2766":2,"2767":1,"2769":2,"2771":2,"2775":2,"2776":2,"2777":1,"2862":4,"2863":1,"2864":2,"2865":1,"2870":1,"2871":2,"2903":1,"2907":1,"2912":1,"2919":2,"2924":1,"2937":3,"2942":1}}],["east",{"2":{"1735":1,"2044":1,"2322":1}}],["eason",{"2":{"210":1}}],["ease",{"2":{"70":1,"2322":1,"2472":1}}],["easyeda",{"2":{"93":1}}],["easy",{"0":{"1308":1},"1":{"1309":1},"2":{"6":1,"114":2,"139":1,"381":1,"437":1,"493":1,"510":2,"530":1,"536":1,"607":1,"608":1,"612":1,"614":1,"663":1,"680":1,"693":1,"757":1,"763":1,"1308":3,"1310":1,"1385":1,"1789":1,"2181":1,"2258":1,"2418":1,"2421":1,"2452":1,"2572":2,"2578":1,"2613":1,"2621":1,"2751":1}}],["easiest",{"2":{"614":1,"1309":1,"1840":1,"2060":1,"2302":1,"2322":1,"2368":1,"2422":1,"2465":1,"2776":1}}],["easier",{"2":{"2":1,"10":1,"21":1,"31":1,"45":1,"70":1,"118":1,"130":1,"133":1,"285":1,"397":1,"419":1,"488":1,"489":1,"514":1,"526":1,"528":1,"538":1,"587":1,"1337":1,"1466":1,"1587":1,"1849":1,"1992":1,"2072":1,"2201":1,"2286":1,"2319":1,"2323":1,"2399":1,"2401":1,"2418":2,"2429":1,"2440":1,"2448":1,"2554":2,"2557":1,"2573":1,"2578":1,"2579":1,"2625":1,"2671":1,"2673":1,"2744":1,"2775":1,"2930":1,"2940":1}}],["easily",{"2":{"6":1,"65":1,"328":1,"445":1,"672":1,"684":1,"1280":1,"1440":1,"1760":1,"1958":1,"2050":1,"2171":1,"2399":1,"2420":1,"2425":1,"2577":1,"2607":1,"2633":1,"2655":1,"2905":1,"2937":1}}],["exempt",{"2":{"2918":1,"2919":2}}],["exempted",{"2":{"2862":1}}],["exe",{"2":{"2608":3,"2671":1,"2676":1}}],["exercise",{"2":{"1606":1,"2775":1}}],["exec",{"2":{"160":1,"572":1,"653":1,"654":1,"655":1,"656":2,"657":2,"1624":1,"2270":2,"2411":1,"2503":1,"2541":1,"2933":1}}],["executor",{"0":{"654":1,"655":1},"2":{"572":1,"654":1,"655":1,"1624":1,"2411":1}}],["executors",{"2":{"134":1,"658":2}}],["executable",{"2":{"391":1,"2572":1,"2652":1,"2676":2,"2727":1,"2937":1,"2939":1}}],["executions",{"2":{"655":1}}],["execution",{"0":{"653":1,"656":1,"657":1},"1":{"654":1,"655":1,"656":1,"657":1,"658":1},"2":{"65":1,"249":1,"572":1,"654":3,"655":1,"656":2,"657":2,"760":1,"2411":1,"2678":1,"2727":1,"2747":1}}],["executing",{"2":{"49":1,"145":1,"654":1,"655":1,"2200":1,"2676":1,"2678":2,"2679":1}}],["executed",{"2":{"481":1,"655":1,"760":2,"2310":1,"2678":3,"2679":2,"2680":1,"2747":1}}],["executes",{"2":{"49":1,"750":1,"753":1}}],["execute",{"2":{"49":1,"65":1,"77":1,"105":2,"247":1,"653":1,"1378":1,"1529":2,"2410":2,"2496":1,"2503":2,"2541":2,"2705":1}}],["exlm",{"2":{"1511":2,"2527":1,"2547":1}}],["exsl",{"2":{"1441":1,"2503":1,"2541":1}}],["exsel",{"2":{"231":2,"1441":3,"2503":2,"2541":2}}],["exhaustion",{"2":{"716":1,"717":1}}],["exhaustive",{"2":{"273":1,"720":1,"2718":1,"2719":1,"2895":1}}],["exiting",{"2":{"2291":1,"2377":2,"2384":2}}],["exit",{"2":{"430":2,"450":1,"451":1,"452":1,"453":1,"458":1,"459":1,"467":1,"683":1,"2052":1,"2501":1,"2748":3,"2869":2}}],["existed",{"2":{"2310":1}}],["existence",{"2":{"199":1,"1445":1,"2562":1}}],["exists",{"2":{"191":1,"266":1,"294":1,"431":2,"461":1,"667":1,"672":1,"1375":2,"1430":1,"1478":1,"1494":1,"1496":1,"1662":1,"1780":1,"2160":1,"2449":1,"2676":1,"2721":1,"2722":1}}],["exist",{"2":{"182":1,"191":1,"199":1,"236":1,"373":2,"553":1,"567":1,"596":1,"611":1,"1340":1,"1479":1,"2310":1,"2398":1,"2496":1,"2684":1,"2760":1,"2768":1,"2937":1}}],["existing",{"0":{"31":1,"34":1,"36":1,"2689":1,"2937":1},"2":{"50":2,"92":1,"118":1,"128":1,"143":1,"151":1,"160":2,"194":1,"201":1,"209":1,"212":1,"214":1,"240":1,"249":1,"262":1,"268":1,"272":1,"275":1,"283":1,"327":1,"338":3,"347":1,"387":1,"397":1,"400":1,"408":1,"443":1,"510":2,"538":1,"617":1,"626":1,"628":1,"1422":8,"1425":1,"1427":1,"1628":1,"1761":1,"1980":1,"2416":1,"2424":1,"2475":1,"2560":1,"2563":1,"2587":1,"2633":2,"2655":2,"2671":1,"2676":2,"2689":2,"2719":1,"2721":5,"2722":1,"2937":2}}],["exaggeration",{"2":{"2929":1}}],["exactly",{"2":{"1432":1,"2050":1,"2289":1,"2398":1,"2472":1}}],["exact",{"2":{"392":1,"595":1,"654":1,"1606":1,"1707":1,"1780":1,"2337":1,"2338":1,"2339":1,"2399":1,"2476":1,"2561":2,"2903":1,"2929":1}}],["examine",{"2":{"1584":1}}],["examines",{"2":{"433":1,"454":1}}],["examining",{"0":{"372":1}}],["examples",{"0":{"515":1,"1325":1,"1376":1,"1463":1,"1599":1,"1636":1,"1694":1,"1761":1,"1769":1,"1772":1,"1950":1,"1984":1,"1988":1,"2003":1,"2073":1,"2074":1,"2223":1,"2280":1,"2304":1,"2306":1,"2729":1,"2736":1},"1":{"1326":1,"1327":1,"1328":1,"1377":1,"1378":1,"1464":1,"1465":1,"1466":1,"1695":1,"1696":1,"1770":1,"1771":1,"1773":1,"1985":1,"1986":1,"1987":1,"1989":1,"1990":1,"2004":1,"2005":1,"2074":1,"2075":1,"2224":1,"2225":1,"2305":1,"2306":1,"2307":2,"2308":2,"2309":2,"2310":2,"2311":2,"2312":2,"2737":1,"2738":1,"2739":1},"2":{"99":1,"114":1,"198":1,"312":1,"432":1,"433":1,"435":1,"437":1,"438":1,"461":1,"463":1,"467":1,"614":1,"666":2,"1325":1,"1376":1,"1414":1,"1427":1,"1447":1,"1463":1,"1606":1,"1607":1,"1760":1,"1767":1,"1782":1,"1844":1,"1988":1,"2050":1,"2066":1,"2288":1,"2289":1,"2302":1,"2303":1,"2306":3,"2312":4,"2410":1,"2418":1,"2432":1,"2442":1,"2459":1,"2639":1,"2728":2,"2748":3,"2750":2,"2824":1,"2921":1,"2936":1}}],["example",{"0":{"369":1,"471":1,"476":1,"477":1,"478":1,"479":1,"520":1,"521":1,"522":1,"587":1,"629":1,"633":1,"639":1,"642":1,"645":1,"647":1,"650":1,"651":1,"1407":1,"1424":1,"1425":1,"1455":1,"1473":1,"1517":1,"1527":1,"1529":1,"1552":1,"1768":1,"1791":1,"1824":1,"1832":1,"1833":1,"1918":1,"1948":1,"1949":1,"2052":1,"2179":1,"2278":1,"2279":1,"2305":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1,"2725":1,"2785":1,"2787":1,"2904":1},"1":{"1456":1},"2":{"49":2,"70":1,"90":2,"98":1,"99":2,"105":2,"111":1,"114":2,"160":1,"194":1,"213":1,"214":1,"222":1,"234":1,"272":1,"288":1,"303":1,"332":1,"357":1,"370":1,"387":3,"414":1,"427":3,"430":1,"431":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"471":2,"472":3,"474":2,"480":2,"481":1,"482":2,"483":4,"487":2,"489":1,"494":1,"498":2,"510":1,"527":1,"530":1,"570":1,"586":1,"589":1,"597":1,"611":1,"613":2,"614":1,"627":1,"629":1,"633":1,"639":1,"642":2,"645":1,"646":1,"654":1,"658":1,"668":1,"673":1,"681":2,"683":1,"718":1,"726":1,"746":1,"763":1,"765":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1200":1,"1201":1,"1216":1,"1245":1,"1249":1,"1266":2,"1284":1,"1312":1,"1326":1,"1327":2,"1328":1,"1344":1,"1368":1,"1374":1,"1375":2,"1377":2,"1378":2,"1385":1,"1402":2,"1403":1,"1404":1,"1406":1,"1407":4,"1409":2,"1416":1,"1420":1,"1424":2,"1425":1,"1432":1,"1438":8,"1440":1,"1441":1,"1442":2,"1445":1,"1446":1,"1457":1,"1458":1,"1462":1,"1463":2,"1466":1,"1469":1,"1472":1,"1474":1,"1476":1,"1486":1,"1493":1,"1497":1,"1511":1,"1512":1,"1526":1,"1528":1,"1529":1,"1532":2,"1545":1,"1550":1,"1552":1,"1585":1,"1587":1,"1591":1,"1598":1,"1599":3,"1606":1,"1607":1,"1611":2,"1612":2,"1613":1,"1618":1,"1624":1,"1627":1,"1632":1,"1636":1,"1659":1,"1660":1,"1664":2,"1684":1,"1696":1,"1736":1,"1737":1,"1759":1,"1768":1,"1770":1,"1771":1,"1773":2,"1775":1,"1789":1,"1791":1,"1828":1,"1832":1,"1833":1,"1834":1,"1835":1,"1839":1,"1840":1,"1844":1,"1917":1,"1928":1,"1930":1,"1933":1,"1947":1,"1948":1,"1949":1,"1951":1,"1955":1,"1982":1,"1985":1,"1987":1,"1989":1,"1990":1,"2006":1,"2030":1,"2034":1,"2035":1,"2037":2,"2046":1,"2050":1,"2052":1,"2059":1,"2060":1,"2066":1,"2074":1,"2160":2,"2166":1,"2168":1,"2181":1,"2187":1,"2191":1,"2199":1,"2207":1,"2225":2,"2253":1,"2262":1,"2266":1,"2270":1,"2277":1,"2278":1,"2279":1,"2286":1,"2287":1,"2290":1,"2293":1,"2296":2,"2298":1,"2301":1,"2302":2,"2305":1,"2308":1,"2310":5,"2311":1,"2312":2,"2322":2,"2323":1,"2324":1,"2401":2,"2407":1,"2410":4,"2425":1,"2441":2,"2443":2,"2446":1,"2447":2,"2448":1,"2449":1,"2454":1,"2457":3,"2459":2,"2471":1,"2473":1,"2479":1,"2492":1,"2495":3,"2496":1,"2497":1,"2516":1,"2542":1,"2551":1,"2553":1,"2556":1,"2566":1,"2568":1,"2569":1,"2570":1,"2576":2,"2607":1,"2622":2,"2643":1,"2645":1,"2678":1,"2685":1,"2687":1,"2688":1,"2689":1,"2714":1,"2719":1,"2721":3,"2749":1,"2750":1,"2778":1,"2793":1,"2844":1,"2845":6,"2846":2,"2847":1,"2856":1,"2861":2,"2862":6,"2864":4,"2865":3,"2870":3,"2871":4,"2872":1,"2873":1,"2875":3,"2877":1,"2878":2,"2879":1,"2904":2,"2905":3,"2911":3,"2912":2,"2913":1,"2914":1,"2917":1,"2918":1,"2919":3,"2920":1,"2927":1,"2930":2,"2932":1,"2934":1,"2937":1,"2939":1,"2941":1,"2942":1}}],["exclaim",{"2":{"2527":1,"2547":1}}],["exclamation",{"2":{"1511":1}}],["excluding",{"0":{"498":1},"2":{"559":1,"1538":1,"2164":1,"2850":1}}],["excluded",{"2":{"498":1,"2191":2}}],["exclude",{"2":{"176":2,"308":1,"667":2,"1527":7}}],["exclusion",{"0":{"1683":1},"1":{"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1},"2":{"1683":2}}],["exclusions",{"2":{"114":1,"160":1}}],["exclusively",{"2":{"359":1,"2388":1}}],["exclusive",{"2":{"145":1,"1420":1}}],["exchangeable",{"2":{"711":1}}],["excess",{"2":{"674":1,"2421":1}}],["excessive",{"2":{"526":1,"716":1,"2757":1}}],["except",{"2":{"510":1,"518":2,"523":1,"559":1,"794":1,"1282":1,"1316":1,"1395":1,"1416":1,"1759":1,"1985":1,"2376":1,"2386":1,"2446":1,"2516":1,"2926":1}}],["exceptionally",{"2":{"2920":1}}],["exceptional",{"2":{"523":1}}],["exceptionname",{"2":{"517":1}}],["exception",{"0":{"2730":1},"1":{"2731":1,"2732":1},"2":{"189":1,"194":1,"518":1,"523":3,"1471":1,"1478":1,"2310":1,"2475":1,"2534":1,"2689":1,"2730":1,"2731":1,"2732":1,"2734":1,"2760":1,"2915":1,"2918":1}}],["exceptions",{"0":{"523":1},"2":{"145":1,"523":1,"682":1,"1526":1,"1992":1,"2007":1,"2451":1}}],["exceed",{"2":{"2416":1}}],["exceeds",{"2":{"176":1,"538":1}}],["exceeding",{"2":{"145":1}}],["exceeded",{"2":{"28":1,"573":1,"1506":1}}],["ext",{"2":{"2706":1}}],["extreg",{"2":{"1968":5}}],["extremely",{"2":{"536":1,"641":1,"685":1,"2619":1,"2922":1}}],["extraneous",{"2":{"2882":1}}],["extracondensedbold",{"2":{"2748":1}}],["extracts",{"2":{"670":1}}],["extracted",{"2":{"249":1,"2652":1}}],["extract",{"0":{"670":1},"2":{"236":1,"249":5,"277":1,"338":1,"664":1,"670":4,"2651":1,"2863":1}}],["extraction",{"2":{"191":1}}],["extrapolates",{"2":{"663":1}}],["extrakeys",{"2":{"191":1,"2882":1}}],["extrakey",{"2":{"70":1,"111":1,"191":1,"220":1,"572":1,"573":2,"1362":1,"1366":2,"2203":1,"2411":1,"2882":1}}],["extras",{"2":{"48":1,"114":1,"145":1,"199":2,"210":1,"277":1,"1404":1,"2880":1}}],["extra",{"0":{"603":1,"1366":1},"2":{"45":2,"114":1,"156":1,"176":1,"191":2,"199":1,"294":1,"373":1,"620":1,"690":1,"743":1,"755":1,"1362":2,"1472":1,"1544":1,"1603":7,"2182":1,"2271":2,"2291":1,"2410":1,"2424":1,"2497":1,"2578":1,"2669":1,"2677":1,"2684":1,"2748":1,"2906":1}}],["extkeys",{"2":{"154":2}}],["extern",{"2":{"266":1,"1918":1,"2936":1}}],["externs",{"2":{"196":1,"333":1}}],["externally",{"2":{"224":1,"228":1,"373":1,"2583":1}}],["external",{"0":{"228":1,"449":1,"1622":1,"2439":1,"2583":1,"2585":1,"2586":1,"2588":1,"2589":1},"1":{"450":1,"451":1,"452":1,"453":1,"454":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1},"2":{"73":1,"114":1,"134":1,"160":1,"174":1,"208":1,"224":1,"228":3,"241":2,"253":2,"268":1,"270":2,"281":2,"288":1,"308":1,"320":1,"450":1,"451":1,"452":1,"453":1,"454":1,"695":1,"743":1,"746":10,"747":5,"750":1,"752":6,"753":1,"756":7,"1194":1,"1202":1,"1294":1,"1621":2,"1622":2,"1838":1,"1844":1,"1948":1,"2058":1,"2066":1,"2439":1,"2583":5,"2584":1,"2585":1,"2586":1,"2587":2,"2588":2,"2589":3,"2590":1,"2692":1,"2705":2,"2708":1,"2721":1,"2735":1,"2747":1,"2750":1,"2811":1}}],["extent",{"2":{"2298":1,"2750":1}}],["extensively",{"2":{"527":1}}],["extensive",{"2":{"411":1,"1342":1}}],["extensions",{"0":{"2673":1},"2":{"2673":2}}],["extension",{"2":{"199":1,"222":1,"511":1,"517":1,"562":2,"1930":1,"2673":3,"2675":2,"2685":1}}],["extensible",{"2":{"107":1,"114":1,"2646":1}}],["extending",{"0":{"656":1},"2":{"562":2,"628":1}}],["extend",{"2":{"145":1,"191":1,"294":1,"308":1,"656":2}}],["extended",{"2":{"74":1,"176":2,"222":1,"236":1,"285":1,"492":2,"562":2,"746":1,"747":1,"748":1,"1604":1,"1978":4,"1979":1,"2491":1,"2492":1,"2494":1,"2496":2,"2684":1,"2880":2,"2896":1}}],["ext65",{"0":{"60":1},"2":{"60":1}}],["expires",{"2":{"2914":1}}],["expired",{"2":{"2007":1,"2906":1}}],["expansion",{"2":{"2438":1}}],["expands",{"2":{"452":1,"2905":1}}],["expanding",{"2":{"356":1,"1417":1,"2566":1}}],["expandable",{"2":{"356":1}}],["expanders",{"2":{"2432":1}}],["expander",{"2":{"266":1}}],["expanded",{"0":{"118":1},"2":{"70":1,"563":1,"1340":1,"2182":1}}],["expand",{"2":{"134":1,"160":1,"285":1,"387":1,"452":1,"2905":1}}],["expression",{"2":{"526":1}}],["expressions",{"0":{"528":1,"530":1},"2":{"431":2,"530":1}}],["expressed",{"2":{"70":1}}],["explore",{"2":{"2428":1,"2463":1,"2579":1}}],["explorer",{"2":{"2393":1,"2395":1,"2397":1,"2607":2,"2655":1}}],["exploiting",{"2":{"312":1}}],["exploit",{"2":{"312":1}}],["explanations",{"2":{"2408":1}}],["explanation",{"2":{"1415":1,"1941":2,"2303":1,"2313":1}}],["explained",{"2":{"1426":1,"2410":1}}],["explain",{"2":{"510":1,"512":1,"611":1,"617":1,"1780":1,"2404":1,"2926":1}}],["explains",{"2":{"469":1,"1777":1,"2445":1,"2726":1}}],["explaining",{"2":{"173":1,"1777":1,"2721":1,"2930":1,"2934":1}}],["explicit",{"0":{"124":1},"2":{"134":1,"198":1,"1616":1,"2728":1}}],["explicitly",{"2":{"14":1,"114":1,"191":1,"526":1,"746":1,"1513":1,"1583":1,"1617":1,"2177":1,"2191":1,"2291":1,"2712":1,"2729":1,"2737":1,"2887":1}}],["exponent",{"2":{"1979":4}}],["exporting",{"2":{"2748":2}}],["exports",{"2":{"427":2,"428":1}}],["exported",{"2":{"373":1}}],["export",{"2":{"134":1,"421":1,"422":1,"423":1,"436":1,"448":1,"450":2,"451":2,"498":1,"576":1,"2425":2,"2721":1}}],["exposes",{"2":{"1403":1,"2452":1}}],["exposed",{"2":{"751":1,"752":1,"753":1,"2422":2,"2658":1,"2857":1}}],["expose",{"2":{"114":1,"145":1,"176":1,"222":1,"285":1,"2453":1}}],["expert",{"2":{"765":2}}],["experiment",{"2":{"1962":1,"2428":1}}],["experimentation",{"2":{"613":1}}],["experimental",{"2":{"568":1,"1204":1,"1484":1,"2212":2,"2268":1}}],["experiencing",{"2":{"1335":1}}],["experience",{"2":{"553":1,"609":1,"1204":1,"1298":1,"1484":1,"1486":1,"2265":1,"2625":1}}],["expense",{"2":{"553":1,"2372":1}}],["expensive",{"2":{"114":1,"1295":1,"1413":1,"1849":1,"2072":1,"2417":1}}],["expects",{"2":{"1782":1,"2287":1,"2748":1,"2921":1}}],["expect",{"2":{"494":1,"1361":1,"1409":1,"1975":1,"2302":1,"2466":1,"2559":1,"2562":1,"2610":1,"2875":1,"2940":1}}],["expecting",{"2":{"124":1,"1395":1}}],["expected",{"2":{"4":1,"13":1,"303":1,"320":1,"373":1,"408":1,"742":1,"763":1,"1528":1,"1790":1,"1840":3,"1992":1,"2060":3,"2291":1,"2862":1,"2907":1,"2923":1}}],["erm",{"0":{"1678":1},"2":{"1673":1,"1678":2,"1679":2}}],["err",{"2":{"553":1}}],["errno",{"2":{"308":1}}],["erroneous",{"2":{"145":1,"160":1}}],["error",{"0":{"152":1},"2":{"28":1,"92":1,"103":1,"114":4,"126":1,"145":1,"160":4,"176":3,"191":2,"199":3,"210":4,"212":1,"222":1,"236":1,"328":1,"333":1,"371":1,"490":1,"557":1,"573":1,"579":1,"613":1,"751":1,"772":2,"775":2,"778":2,"781":2,"784":2,"787":2,"790":2,"793":2,"796":2,"1258":2,"1261":2,"1419":1,"1518":1,"1974":1,"2036":1,"2287":1,"2427":1,"2448":1,"2501":1,"2600":1,"2609":1,"2621":1,"2627":1}}],["errors",{"0":{"2456":1},"2":{"17":1,"34":1,"73":2,"92":1,"114":2,"134":1,"145":2,"160":1,"191":2,"199":1,"222":2,"333":1,"372":1,"416":1,"438":1,"538":1,"613":3,"1362":1,"1385":1,"1387":1,"1518":1,"1974":1,"1979":1,"2268":2,"2284":1,"2410":1,"2427":1,"2456":2,"2483":1,"2591":1,"2600":1,"2602":1,"2671":1,"2760":1,"2767":1,"2768":1,"2936":1}}],["eras",{"2":{"2503":1,"2541":1}}],["erasing",{"2":{"2495":1,"2501":1,"2608":1}}],["erased",{"2":{"2501":8}}],["erase",{"2":{"277":2,"745":1,"749":1,"752":1,"1312":1,"1362":1,"1949":1,"2279":1,"2376":2,"2495":1,"2503":2,"2541":2,"2608":1,"2630":1}}],["era",{"2":{"236":1,"249":1}}],["era65",{"2":{"210":1}}],["erovia",{"2":{"164":1}}],["ergokbd",{"2":{"2560":1}}],["ergotaco",{"2":{"154":2}}],["ergodash",{"2":{"154":4}}],["ergodone",{"2":{"102":2}}],["ergodox",{"0":{"1837":1},"2":{"8":1,"114":3,"134":1,"154":2,"222":1,"285":2,"291":2,"294":1,"435":1,"1413":1,"1837":7,"2276":1,"2308":9,"2410":2}}],["ergoarrows",{"2":{"154":2}}],["ergo42",{"2":{"154":2}}],["ergo",{"2":{"154":2}}],["ergosaurus",{"2":{"144":2}}],["ergoinu",{"2":{"37":2,"160":1}}],["enamelled",{"2":{"2418":1}}],["enablehexnumpad",{"2":{"2324":1}}],["enable=true",{"2":{"1319":1,"1330":1}}],["enable=yes",{"2":{"93":1,"277":1,"432":1,"1329":1,"2203":1,"2939":1}}],["enabled",{"0":{"561":1,"1564":1,"1857":1,"2083":1},"1":{"1565":1,"1858":1,"2084":1},"2":{"112":3,"114":2,"174":1,"191":1,"210":2,"220":4,"222":1,"236":1,"249":2,"265":1,"268":1,"275":2,"277":1,"283":1,"307":1,"308":1,"328":1,"445":1,"454":1,"559":9,"562":1,"572":1,"573":1,"649":2,"693":1,"714":1,"745":1,"760":3,"1298":1,"1317":1,"1324":2,"1326":1,"1369":1,"1389":2,"1390":2,"1394":1,"1403":1,"1407":5,"1422":4,"1438":1,"1458":1,"1465":7,"1479":1,"1483":1,"1494":1,"1499":1,"1504":1,"1512":3,"1513":1,"1520":1,"1527":1,"1530":1,"1536":1,"1565":1,"1570":1,"1583":1,"1589":1,"1604":1,"1615":1,"1617":1,"1650":1,"1658":1,"1661":1,"1672":1,"1681":1,"1683":1,"1773":1,"1775":2,"1845":2,"1846":2,"1857":1,"1858":1,"1867":1,"1868":1,"1869":1,"1870":1,"1899":1,"1919":1,"1959":1,"1971":1,"1991":1,"1992":1,"1994":2,"2001":3,"2006":4,"2037":2,"2068":2,"2069":2,"2083":1,"2084":1,"2093":1,"2094":1,"2095":1,"2096":1,"2143":1,"2159":1,"2172":1,"2174":1,"2176":1,"2192":7,"2196":1,"2197":1,"2203":2,"2217":1,"2219":1,"2220":1,"2254":1,"2269":3,"2271":3,"2285":1,"2314":2,"2321":1,"2324":2,"2372":1,"2403":1,"2408":1,"2411":1,"2452":1,"2496":1,"2520":1,"2656":1,"2721":3,"2747":2,"2750":1,"2788":1,"2847":1,"2849":2,"2850":2,"2853":1,"2854":1,"2856":1,"2864":1,"2866":1,"2868":2,"2870":3,"2871":1,"2872":1,"2873":2,"2874":1,"2882":1,"2887":2,"2912":3,"2913":3,"2915":2,"2916":2,"2918":3,"2921":2}}],["enables",{"2":{"87":1,"114":1,"119":1,"283":1,"308":1,"559":7,"561":1,"562":6,"563":1,"570":1,"572":2,"639":1,"888":1,"1282":1,"1480":4,"1505":1,"1512":1,"1513":1,"1615":1,"1624":1,"1843":20,"1846":1,"1934":1,"1940":1,"1951":1,"1970":1,"1971":1,"1978":2,"1979":2,"1989":1,"1996":1,"2063":49,"2069":1,"2159":1,"2269":8,"2271":1,"2313":1,"2314":4,"2411":7,"2700":1,"2821":1,"2853":1,"2854":1,"2866":1,"2894":1,"2903":1,"2914":1,"2917":1}}],["enable",{"0":{"1494":1,"1520":1,"1555":1,"1567":1,"1588":1,"1823":1,"1853":1,"1854":1,"1994":1,"2001":1,"2079":1,"2080":1,"2157":1,"2193":1,"2213":1},"1":{"1589":1},"2":{"10":1,"28":1,"31":3,"34":3,"49":1,"65":5,"70":1,"74":1,"75":1,"87":3,"88":7,"93":2,"94":1,"103":1,"104":7,"114":6,"118":1,"119":1,"124":1,"126":1,"127":7,"131":1,"133":1,"134":12,"145":1,"160":2,"176":5,"191":3,"194":2,"199":1,"210":2,"213":2,"220":2,"222":2,"232":1,"234":1,"235":2,"236":2,"247":1,"249":1,"266":35,"273":1,"277":2,"285":1,"307":2,"308":2,"312":1,"328":2,"374":1,"427":1,"486":1,"505":1,"559":2,"561":2,"562":4,"568":8,"570":1,"572":23,"573":7,"590":1,"639":1,"645":1,"653":2,"714":1,"715":1,"718":1,"723":1,"725":1,"760":1,"765":4,"801":1,"819":3,"821":1,"830":1,"847":3,"849":1,"859":1,"886":1,"888":1,"889":1,"909":3,"911":1,"924":1,"944":3,"946":1,"958":1,"978":3,"980":1,"992":1,"1012":3,"1014":1,"1026":1,"1046":3,"1048":1,"1060":1,"1094":1,"1128":1,"1162":1,"1198":1,"1200":1,"1201":1,"1206":2,"1215":1,"1235":3,"1237":1,"1245":3,"1266":2,"1285":1,"1296":2,"1298":1,"1300":1,"1319":2,"1326":2,"1327":1,"1328":1,"1330":1,"1351":3,"1355":4,"1356":1,"1362":4,"1363":1,"1366":2,"1373":3,"1375":2,"1392":1,"1402":1,"1407":3,"1458":3,"1464":1,"1465":4,"1467":1,"1471":1,"1478":2,"1479":2,"1480":2,"1483":1,"1486":1,"1487":1,"1494":1,"1495":1,"1512":1,"1514":1,"1520":3,"1527":1,"1529":4,"1530":1,"1536":1,"1538":4,"1550":1,"1551":1,"1572":1,"1583":1,"1588":1,"1589":2,"1591":1,"1596":2,"1600":1,"1615":1,"1617":1,"1619":1,"1634":1,"1649":1,"1650":2,"1651":2,"1655":2,"1659":1,"1661":2,"1662":1,"1672":7,"1692":1,"1733":1,"1735":1,"1757":2,"1762":2,"1773":1,"1784":1,"1788":2,"1790":1,"1791":3,"1823":1,"1829":1,"1833":2,"1843":22,"1845":2,"1846":2,"1913":2,"1915":1,"1916":1,"1925":1,"1926":2,"1930":1,"1931":3,"1933":1,"1937":1,"1942":2,"1946":2,"1947":1,"1950":1,"1958":2,"1959":1,"1965":13,"1969":1,"1970":4,"1971":5,"1974":1,"1976":1,"1978":6,"1979":2,"1980":1,"1982":1,"1987":1,"1988":1,"1989":1,"1991":1,"1994":3,"1996":1,"2001":6,"2004":3,"2006":1,"2010":1,"2033":2,"2034":2,"2035":2,"2036":2,"2039":4,"2041":2,"2045":1,"2048":1,"2063":51,"2065":1,"2068":2,"2069":2,"2073":1,"2074":1,"2157":1,"2172":2,"2175":1,"2177":11,"2181":1,"2182":2,"2183":1,"2184":3,"2193":2,"2196":1,"2203":4,"2208":1,"2213":1,"2214":1,"2216":1,"2217":4,"2219":1,"2251":1,"2261":1,"2266":1,"2269":13,"2271":4,"2277":3,"2280":1,"2286":3,"2287":2,"2288":1,"2289":1,"2290":2,"2291":1,"2295":1,"2298":2,"2302":1,"2305":1,"2313":2,"2322":4,"2323":2,"2324":3,"2369":2,"2371":2,"2377":1,"2384":1,"2411":17,"2412":2,"2447":5,"2448":2,"2453":4,"2519":2,"2548":2,"2665":1,"2676":4,"2720":1,"2721":8,"2745":1,"2746":2,"2747":1,"2749":12,"2752":2,"2847":3,"2856":1,"2864":1,"2868":2,"2870":4,"2871":1,"2872":1,"2873":1,"2874":1,"2876":1,"2882":8,"2883":2,"2884":1,"2887":46,"2903":1,"2905":5,"2912":1,"2917":1,"2921":1,"2923":1,"2941":1,"2942":1}}],["enabling",{"0":{"124":1,"234":1,"1369":1,"1926":1,"2183":1,"2752":1,"2756":1},"2":{"10":1,"50":1,"107":2,"134":1,"190":1,"191":1,"195":1,"232":2,"234":1,"445":1,"562":1,"569":1,"1263":1,"1351":1,"1402":1,"1484":1,"2271":1,"2285":1,"2291":1,"2590":1,"2721":1,"2749":11,"2751":1,"2882":2}}],["enjoy",{"2":{"2411":1}}],["enqueue",{"2":{"2303":1}}],["enqueued",{"2":{"370":1,"371":1}}],["ensuring",{"2":{"1627":1,"2743":1}}],["ensures",{"2":{"220":1,"568":4,"1386":1,"1404":1,"2270":1,"2399":1,"2420":1,"2750":1}}],["ensure",{"2":{"31":1,"34":1,"90":1,"92":1,"160":1,"176":2,"191":3,"198":1,"240":1,"249":4,"294":2,"308":1,"317":1,"327":1,"373":1,"397":1,"423":1,"456":1,"463":1,"467":1,"540":1,"619":1,"641":1,"693":1,"746":1,"1194":1,"1330":1,"1404":1,"1462":1,"1622":1,"1788":1,"1992":1,"2001":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2416":1,"2420":1,"2421":1,"2619":1,"2670":1,"2676":1,"2685":1,"2687":2,"2721":1,"2722":1,"2750":1}}],["energy",{"2":{"608":1,"2367":1}}],["enough",{"2":{"390":1,"543":1,"595":1,"613":1,"642":1,"645":2,"678":1,"1191":1,"1194":1,"1197":1,"1378":1,"1493":1,"1603":1,"1776":1,"1831":1,"1930":1,"1956":1,"2283":1,"2302":1,"2422":2,"2424":1,"2427":1,"2560":1,"2582":1,"2612":1,"2676":1,"2719":1,"2882":1}}],["encryption",{"2":{"2205":1}}],["encompasses",{"2":{"2461":1}}],["encompass",{"2":{"659":1,"663":1,"1379":1}}],["encountering",{"2":{"1771":1}}],["encountered",{"2":{"1315":1,"2220":1}}],["encounter",{"2":{"598":1,"2033":1,"2287":1,"2399":1}}],["encouraging",{"2":{"539":1}}],["encourages",{"2":{"1340":1}}],["encouraged",{"2":{"531":1,"553":1,"1622":1,"1623":1,"1624":1,"2708":1,"2719":1,"2724":1,"2894":1}}],["encourage",{"2":{"510":1,"512":1,"528":1,"594":1,"1617":1,"2721":1,"2829":1}}],["encodes",{"2":{"2289":1}}],["encode",{"2":{"1532":3}}],["encoded",{"2":{"1532":5}}],["encoder2b",{"2":{"1659":1,"1660":1,"2271":1}}],["encoder2a",{"2":{"1659":1,"1660":1,"2271":1}}],["encoder1b",{"2":{"1659":1,"1660":1,"2271":1}}],["encoder1a",{"2":{"1659":1,"1660":1,"2271":1}}],["encodermap",{"2":{"199":2}}],["encoder+encoder",{"2":{"176":1}}],["encoders",{"0":{"1659":1,"1664":1},"1":{"1660":1,"1661":1,"1662":1,"1663":1,"1664":1},"2":{"13":1,"114":3,"139":1,"145":1,"198":1,"212":3,"236":1,"277":1,"307":3,"1659":3,"1660":1,"1661":3,"1662":1,"1663":1,"1664":6,"1979":1,"2298":3,"2721":1}}],["encoder",{"0":{"13":1,"90":1,"139":1,"206":1,"220":1,"307":1,"1661":1,"2298":1,"2858":1},"1":{"2299":1},"2":{"13":2,"63":2,"74":1,"90":11,"93":1,"105":1,"110":1,"114":1,"134":1,"139":2,"145":3,"176":5,"191":5,"199":2,"206":2,"210":3,"212":3,"220":5,"222":8,"226":4,"247":1,"249":3,"255":1,"266":3,"277":2,"307":19,"317":2,"328":2,"333":1,"645":2,"687":1,"1308":2,"1659":13,"1660":13,"1661":16,"1662":9,"1664":9,"2174":1,"2271":3,"2298":5,"2721":4,"2757":1,"2858":5,"2862":2,"2873":2}}],["encoding",{"0":{"1532":1},"2":{"73":1,"222":1,"1283":1,"2748":2,"2758":1,"2766":1,"2839":1}}],["enclosing",{"2":{"350":1}}],["enforce",{"2":{"333":1,"1627":1}}],["enhance",{"2":{"277":1,"288":1,"308":1,"376":1,"625":1,"1620":1}}],["enhancement",{"2":{"93":1,"145":1,"210":2,"236":2,"249":1,"312":1}}],["enhancements",{"0":{"49":1,"63":1,"74":1,"93":1},"2":{"222":1}}],["en",{"2":{"249":1,"723":1,"746":3,"1368":2}}],["engagement",{"2":{"312":1}}],["english",{"2":{"222":1,"1436":1,"1522":4,"2161":1,"2170":1,"2289":1,"2540":1,"2830":1,"2880":5}}],["engineering",{"2":{"2562":1}}],["engineered",{"2":{"2560":1}}],["engine",{"2":{"145":1,"359":1,"1526":1}}],["env",{"2":{"93":1,"453":3,"467":4,"2671":1}}],["environments",{"2":{"132":1}}],["environment",{"0":{"366":1,"2576":1,"2593":1,"2611":1,"2613":1,"2622":1,"2648":1},"1":{"2594":1,"2595":1,"2596":1,"2612":1,"2613":1,"2614":2,"2615":2,"2616":2,"2617":2,"2618":2,"2619":2,"2620":2,"2621":1,"2622":1},"2":{"23":1,"302":1,"377":1,"421":1,"422":1,"423":1,"424":1,"433":4,"454":1,"468":1,"485":1,"494":1,"615":1,"681":2,"682":1,"1311":1,"2399":1,"2401":1,"2425":1,"2489":1,"2494":1,"2573":1,"2575":1,"2576":1,"2577":2,"2580":1,"2591":2,"2609":1,"2611":1,"2613":2,"2622":1,"2625":1,"2646":1}}],["enumerating",{"2":{"627":2,"2052":1,"2398":1}}],["enumeration",{"2":{"308":1,"572":1,"2875":2}}],["enumerated",{"2":{"1440":1}}],["enumerate",{"2":{"627":1,"2052":1,"2491":1}}],["enums",{"2":{"199":1,"510":1,"614":1,"2306":2,"2310":1,"2578":1,"2720":2}}],["enum",{"2":{"50":1,"510":1,"589":1,"591":2,"614":1,"685":2,"1425":1,"1440":1,"1456":1,"1460":1,"1466":1,"1599":1,"1606":1,"1918":1,"1955":2,"1956":2,"2006":1,"2283":2,"2305":1,"2306":1,"2310":3,"2311":2,"2312":3,"2322":2,"2554":1,"2861":1}}],["ent",{"2":{"369":1,"587":2,"1466":1,"1504":1,"1606":1,"1999":1,"2253":1,"2302":2,"2503":1,"2537":1,"2556":1}}],["entities",{"0":{"342":1}}],["entirety",{"2":{"2563":1}}],["entirely",{"2":{"50":1,"210":1,"273":1,"307":1,"308":1,"408":1,"510":1,"1528":1,"2064":1,"2446":1,"2554":1,"2579":1,"2749":1}}],["entire",{"0":{"476":1},"2":{"50":1,"137":1,"199":1,"231":1,"249":1,"463":1,"467":1,"475":2,"1413":1,"1789":1,"1790":1,"1956":3,"2262":1,"2503":1,"2542":1,"2561":1,"2749":3,"2760":2,"2768":2,"2896":1}}],["entered",{"2":{"2627":2}}],["enters",{"2":{"2379":1,"2381":1}}],["entering",{"2":{"380":1,"649":1,"683":1,"2377":1,"2384":1,"2474":1,"2633":1,"2660":1,"2664":1,"2700":1}}],["enter80",{"2":{"241":2}}],["enter67",{"2":{"241":2}}],["enter",{"0":{"1503":1,"2474":1},"2":{"176":1,"222":1,"381":1,"391":2,"629":4,"681":1,"683":1,"1407":3,"1419":1,"1480":1,"1503":1,"1504":1,"1606":1,"1686":1,"1999":1,"2221":1,"2224":1,"2249":1,"2250":2,"2291":1,"2302":2,"2323":1,"2337":1,"2338":2,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2398":1,"2411":1,"2496":1,"2503":4,"2531":2,"2537":2,"2543":2,"2605":1,"2632":2,"2634":1,"2678":2,"2684":1,"2700":1,"2702":1,"2707":2,"2776":2,"2777":1,"2778":1,"2780":1,"2862":1}}],["entry",{"0":{"2700":1},"2":{"160":1,"176":1,"210":1,"236":1,"597":1,"684":2,"1522":1,"1622":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2295":1,"2303":3,"2323":2,"2656":1,"2700":1,"2720":1,"2769":1,"2771":3,"2878":1,"2919":1,"2927":1}}],["entrypoint",{"2":{"94":1,"362":1,"485":2}}],["entries",{"0":{"3":1,"7":1,"15":1},"2":{"685":1,"1486":1,"1522":1,"1583":1,"1584":1,"1614":1,"2322":1,"2771":2}}],["ended",{"2":{"2310":1}}],["endianness",{"2":{"1249":1,"1262":1}}],["endian",{"2":{"785":1,"791":1,"1532":1,"2758":1,"2766":1}}],["ending",{"2":{"265":1,"307":1,"456":1,"1951":1,"2281":1}}],["endings",{"2":{"249":1,"277":1,"456":2,"2669":1}}],["endif",{"2":{"31":2,"34":2,"134":1,"247":1,"307":1,"348":1,"510":1,"645":3,"1326":1,"1403":1,"1432":2,"1458":2,"1465":2,"1466":2,"1479":2,"1504":6,"1527":3,"1529":4,"1606":4,"1650":1,"1651":2,"1661":1,"1791":3,"1833":2,"1844":1,"1947":1,"1950":1,"1956":1,"1976":1,"2033":1,"2034":1,"2036":1,"2066":1,"2277":1,"2280":1,"2298":1,"2309":1,"2447":5,"2448":3}}],["endpoints",{"0":{"263":1},"2":{"176":1,"266":1,"373":2,"573":4,"1914":1,"2291":1}}],["endpoint",{"0":{"573":1},"2":{"49":1,"50":4,"112":2,"145":1,"191":1,"236":1,"249":1,"363":1,"370":1,"373":4,"571":1,"573":4,"2285":1,"2291":1,"2384":1,"2875":3}}],["ends",{"2":{"28":1,"124":1,"1519":2,"1785":1,"1791":1,"1795":1,"2293":1,"2303":1,"2622":1}}],["end",{"0":{"1795":1,"1800":1},"2":{"3":1,"15":1,"137":1,"160":1,"196":2,"199":1,"222":1,"255":2,"265":2,"307":1,"406":5,"408":1,"492":1,"507":1,"510":2,"587":2,"591":1,"607":1,"631":1,"644":1,"645":1,"663":1,"666":1,"751":2,"1262":1,"1330":1,"1362":1,"1410":2,"1425":3,"1444":1,"1587":1,"1596":3,"1597":2,"1598":2,"1599":7,"1606":1,"1611":1,"1612":1,"1636":1,"1658":1,"1688":1,"1785":1,"1791":1,"1800":1,"1947":1,"1951":1,"1956":2,"1979":1,"2159":3,"2191":2,"2277":1,"2281":1,"2293":1,"2302":1,"2303":1,"2310":1,"2410":1,"2420":3,"2421":3,"2427":1,"2449":1,"2497":2,"2500":1,"2503":3,"2541":2,"2543":1,"2557":1,"2580":1,"2600":1,"2620":1,"2627":2,"2666":1,"2679":1,"2719":1,"2721":1,"2749":1,"2750":1,"2911":1,"2928":1,"2942":2}}],["l75",{"2":{"2560":1}}],["lr",{"2":{"1954":2,"2294":3}}],["lra",{"0":{"1679":1},"2":{"1673":1,"1678":1,"1679":5}}],["lpt",{"2":{"2495":1}}],["lp",{"2":{"2311":3}}],["lprn",{"2":{"1759":1,"2311":5,"2527":1,"2547":1}}],["lpad",{"2":{"241":2,"2503":1,"2542":1}}],["lgpl",{"2":{"2741":1}}],["lgr",{"2":{"2294":1}}],["lg",{"2":{"1680":10}}],["lgui",{"2":{"196":1,"369":1,"587":2,"1374":1,"1375":1,"1442":1,"1447":1,"1484":1,"1785":1,"1791":1,"2503":1,"2519":4,"2522":1,"2523":1,"2528":1,"2539":1,"2548":4,"2554":1,"2556":1,"2565":2,"2644":1}}],["l65",{"2":{"1673":1}}],["lyr",{"2":{"1407":2}}],["lyso1",{"2":{"154":2,"160":2}}],["lbrc",{"2":{"369":1,"587":2,"2159":1,"2503":1,"2537":1,"2556":1}}],["l17",{"2":{"1584":2}}],["l16",{"2":{"1584":2}}],["l15",{"2":{"1584":2}}],["l14",{"2":{"1584":2}}],["l13",{"2":{"1584":2}}],["l12",{"2":{"1584":2}}],["l11",{"2":{"1584":2}}],["l10",{"2":{"1584":2}}],["l1",{"0":{"745":1},"2":{"277":1,"745":1}}],["l09",{"2":{"1584":2}}],["l082",{"2":{"2689":1}}],["l08",{"2":{"1584":2}}],["l073rz",{"2":{"2721":1}}],["l072",{"2":{"2689":1}}],["l07",{"2":{"1584":2}}],["l06",{"2":{"1584":2}}],["l05",{"2":{"1584":2}}],["l04",{"2":{"1584":2}}],["l03",{"2":{"1584":2}}],["l02",{"2":{"1584":2}}],["l01",{"2":{"1584":2}}],["l0xx",{"2":{"720":1}}],["l0",{"0":{"745":1},"2":{"277":1}}],["lfs",{"2":{"2669":1}}],["lfuse",{"2":{"2496":2}}],["lf",{"2":{"249":1,"456":1,"2221":1}}],["lfk87",{"2":{"222":1}}],["lfkeyboards",{"2":{"160":1,"222":1}}],["lwin",{"2":{"1374":1,"1442":1,"2503":1,"2522":1,"2523":1,"2539":1,"2565":1}}],["lw75",{"2":{"241":2}}],["lw67",{"2":{"241":2}}],["lv061228b",{"2":{"1673":1}}],["lvgl",{"0":{"2751":1,"2752":1,"2753":1,"2754":1,"2755":1,"2756":1,"2757":1},"1":{"2752":1,"2753":1,"2754":2,"2755":2,"2756":1,"2757":1},"2":{"199":2,"236":1,"308":1,"2747":1,"2751":5,"2752":2,"2754":9,"2755":3,"2756":1,"2757":6}}],["lv",{"2":{"176":2,"2756":1}}],["lsb",{"2":{"2770":8}}],["lsbfirst",{"0":{"1248":1},"1":{"1249":1,"1250":1},"2":{"1249":1,"1961":1,"1968":1}}],["lswp",{"2":{"2519":2,"2548":2}}],["lspo",{"2":{"2249":1,"2250":1,"2252":6,"2253":5,"2531":1}}],["lsusb",{"2":{"2050":1,"2605":1,"2710":2}}],["lshift",{"2":{"1375":1}}],["lshift+rshift+key",{"2":{"2411":1}}],["lshift+rshift+n",{"2":{"1363":1}}],["lshift+ralt",{"2":{"1375":1}}],["lsg",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["lsag",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["lsa",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["lscr",{"2":{"559":1,"1351":1,"2503":1,"2538":1}}],["ls",{"2":{"154":4}}],["lsft",{"2":{"120":2,"369":1,"587":2,"1374":1,"1375":2,"1417":4,"1435":2,"1438":4,"1442":1,"1447":1,"1511":1,"1527":6,"1588":3,"1591":1,"1594":2,"1597":1,"1598":2,"1599":5,"1611":1,"1616":1,"1759":1,"1782":1,"1791":1,"1828":1,"2252":6,"2253":2,"2320":1,"2374":1,"2503":1,"2522":1,"2523":1,"2528":1,"2539":1,"2545":1,"2554":1,"2556":1,"2565":3,"2568":1,"2643":1,"2644":2,"2904":1,"2907":1,"2908":5,"2909":8,"2910":5,"2921":1,"2923":1}}],["ld7032",{"2":{"285":1,"2746":4,"2749":11}}],["lds",{"2":{"236":3}}],["ldscript",{"2":{"114":1}}],["ld",{"2":{"131":1,"134":1,"277":1,"285":1,"2410":2}}],["llck",{"2":{"1823":1,"1828":1,"2515":1}}],["llvm",{"2":{"511":2}}],["ll3ma",{"2":{"311":1,"317":1}}],["ll3macorn",{"2":{"311":1}}],["lld",{"2":{"191":1,"698":1,"765":1}}],["ll",{"2":{"124":1,"143":2,"188":1,"232":1,"254":1,"272":1,"307":1,"372":1,"594":1,"609":1,"614":1,"671":2,"714":1,"715":1,"751":1,"765":2,"1245":2,"1266":2,"1313":1,"1334":1,"1338":1,"1362":1,"1466":2,"1517":1,"1596":1,"1621":1,"1762":1,"1917":1,"1946":1,"2203":1,"2266":1,"2273":2,"2277":1,"2302":2,"2310":2,"2398":4,"2407":1,"2422":3,"2424":2,"2425":1,"2459":2,"2466":1,"2476":2,"2553":2,"2554":1,"2555":3,"2577":1,"2578":3,"2587":1,"2592":2,"2604":1,"2605":1,"2607":1,"2609":1,"2612":3,"2625":1,"2627":1,"2630":1,"2671":1,"2676":2,"2708":1,"2710":1,"2719":1,"2738":1,"2776":1,"2927":1,"2928":1,"2930":1,"2932":1}}],["luminkey",{"2":{"2560":1}}],["lumissil",{"2":{"797":1,"826":1,"852":1,"884":1,"916":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1121":1,"1155":1}}],["lump",{"2":{"616":1,"617":1}}],["lune",{"2":{"222":1}}],["luna",{"2":{"191":1}}],["lucid",{"2":{"222":2}}],["lucky",{"2":{"2883":1}}],["luckily",{"2":{"2375":1,"2621":1}}],["luck",{"2":{"124":1,"173":1,"2610":1}}],["lulu",{"2":{"176":1}}],["lut",{"2":{"160":1,"460":2,"2878":1,"2879":1,"2880":2}}],["lufa",{"0":{"2":1,"6":1,"12":1,"2869":1},"2":{"6":4,"12":2,"49":1,"50":2,"93":1,"111":1,"114":2,"176":2,"191":1,"199":1,"277":1,"544":1,"571":1,"609":1,"1936":1,"2376":2,"2377":1,"2384":2,"2398":1,"2492":1,"2719":1,"2869":1,"2927":3}}],["l400",{"2":{"1407":1}}],["l4",{"2":{"191":1}}],["l422",{"2":{"114":1}}],["l443",{"2":{"93":1}}],["lcb",{"2":{"2861":1}}],["lcbon",{"2":{"2861":1}}],["lcbr",{"2":{"2159":1,"2527":1,"2547":1}}],["lcpo",{"2":{"2249":1,"2250":1,"2252":1,"2531":1}}],["lctrl",{"2":{"1375":1,"2550":1}}],["lctl",{"2":{"38":2,"120":1,"194":5,"196":2,"369":1,"587":2,"1340":1,"1374":2,"1375":2,"1416":1,"1417":1,"1435":1,"1440":1,"1442":2,"1484":1,"1526":1,"1596":1,"1611":1,"1684":1,"1785":2,"1791":2,"2225":1,"2252":2,"2310":2,"2320":1,"2374":1,"2503":1,"2519":2,"2522":1,"2523":1,"2528":1,"2539":1,"2548":2,"2556":1,"2565":3,"2566":1,"2568":1,"2644":2,"2744":1,"2917":1,"2920":1,"2923":1}}],["lcg",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["lcag",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["lca",{"2":{"1374":2,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["lcap",{"2":{"559":1,"1351":1,"2503":1,"2538":1}}],["lcsg",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["lcs",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["lcmd",{"2":{"1374":1,"1442":1,"2503":1,"2522":1,"2523":1,"2539":1,"2565":1}}],["lc",{"2":{"549":1}}],["lck75",{"2":{"154":2}}],["lcds",{"2":{"138":1}}],["lcd",{"0":{"1690":1,"2275":1},"1":{"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1698":1,"1699":1,"1700":1,"1701":1,"1702":1,"1703":1,"1704":1,"1705":1,"1706":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1718":1,"1719":1,"1720":1,"1721":1,"1722":1,"1723":1,"1724":1,"1725":1,"1726":1,"1727":1,"1728":1,"1729":1,"1730":1,"1731":1,"2276":1,"2277":1,"2278":1,"2279":1,"2280":1,"2281":1,"2282":1,"2283":1},"2":{"114":1,"133":1,"134":1,"277":1,"1691":1,"2276":1,"2432":1,"2746":7}}],["lmn",{"2":{"266":1}}],["lm",{"2":{"38":1,"134":1,"317":1,"1416":3,"1417":6,"1684":1,"1822":1,"1842":11,"1993":1,"2516":2,"2518":11}}],["l",{"2":{"32":1,"116":1,"191":1,"249":1,"266":3,"328":1,"369":1,"432":2,"435":1,"442":1,"445":1,"467":2,"587":2,"630":1,"1375":27,"1532":5,"1616":1,"2159":1,"2161":1,"2289":1,"2294":1,"2495":1,"2503":3,"2535":3,"2556":1,"2862":2,"2911":5,"2912":9,"2913":5,"2919":25}}],["lnrm",{"2":{"2519":2,"2548":2}}],["lng9",{"2":{"2503":1,"2540":1}}],["lng8",{"2":{"2503":1,"2540":1}}],["lng7",{"2":{"2503":1,"2540":1}}],["lng6",{"2":{"2503":1,"2540":1}}],["lng5",{"2":{"2503":1,"2540":1}}],["lng4",{"2":{"2503":1,"2540":1}}],["lng3",{"2":{"2503":1,"2540":1}}],["lng2",{"2":{"2503":1,"2540":1}}],["lng1",{"2":{"2503":1,"2540":1}}],["lnx",{"2":{"2320":1,"2321":1,"2337":1}}],["lnum",{"2":{"559":1,"1351":1,"2503":1,"2538":1}}],["ln",{"2":{"31":2,"508":1,"1845":1,"1947":2,"1956":5,"1957":4,"2068":1,"2277":2,"2283":3}}],["legs",{"2":{"2416":1,"2418":1}}],["leg",{"2":{"1919":1,"2416":3,"2520":1}}],["legato",{"2":{"1919":2,"2520":2}}],["legally",{"2":{"2740":2,"2743":1}}],["legal",{"0":{"2740":1},"2":{"1353":1,"2728":1,"2740":1,"2741":1}}],["legacy",{"0":{"151":1,"754":1,"2430":1},"1":{"2431":1},"2":{"75":1,"86":2,"94":1,"114":2,"133":1,"134":2,"145":2,"176":3,"188":12,"191":18,"210":1,"222":1,"236":1,"254":1,"277":1,"441":1,"562":1,"750":2,"2857":2,"2881":1}}],["leonardo",{"2":{"686":2,"1368":2,"2492":1}}],["len",{"2":{"2052":2}}],["lenght",{"2":{"1521":2}}],["lengths",{"2":{"1481":1,"2418":3}}],["lengthy",{"2":{"717":1}}],["length",{"0":{"538":1,"770":1,"773":1,"776":1,"779":2,"782":1,"785":1,"788":1,"791":1,"1256":1,"1259":1,"1274":1,"1276":1,"2054":1,"2056":1},"1":{"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":2,"781":2,"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1,"1257":1,"1258":1,"1260":1,"1261":1,"1275":1,"1277":1,"2055":1,"2057":1},"2":{"249":2,"369":1,"431":3,"538":1,"559":1,"771":2,"773":1,"774":2,"777":2,"780":4,"783":2,"786":2,"789":2,"792":2,"1257":2,"1260":2,"1275":2,"1277":2,"1282":4,"1283":1,"1292":2,"1492":1,"1512":1,"1521":4,"1538":1,"1603":2,"1612":1,"1675":1,"1928":1,"1956":2,"1970":2,"2050":5,"2051":1,"2052":7,"2055":3,"2057":3,"2178":2,"2283":2,"2356":1,"2424":1,"2554":1,"2712":1,"2758":1,"2760":2,"2761":2,"2762":2,"2763":1,"2764":1,"2765":11,"2766":1,"2767":4,"2768":2,"2769":2,"2770":2,"2771":2,"2772":2,"2773":2,"2850":1}}],["lenient",{"2":{"114":1,"2561":1}}],["leeloo",{"2":{"236":2}}],["lefishe",{"2":{"154":2}}],["left=4",{"2":{"2750":1}}],["leftuf2",{"2":{"2266":1}}],["leftdfu",{"2":{"2266":2}}],["leftavrdude",{"2":{"2266":1}}],["leftmost",{"2":{"1635":1}}],["lefthand",{"2":{"566":1,"567":1}}],["leftover30",{"2":{"222":1}}],["leftover",{"2":{"77":1}}],["lefty",{"2":{"43":2,"134":3,"222":1,"241":6}}],["left",{"2":{"31":1,"34":1,"45":1,"100":1,"114":3,"137":1,"176":1,"213":2,"231":2,"236":2,"249":2,"257":1,"258":1,"259":2,"277":1,"307":4,"332":2,"345":1,"369":2,"387":3,"559":2,"563":2,"566":5,"567":4,"568":2,"587":2,"680":1,"681":1,"683":5,"746":1,"763":1,"1191":1,"1194":1,"1197":1,"1291":1,"1345":1,"1359":9,"1365":1,"1374":32,"1375":4,"1377":3,"1417":2,"1442":3,"1486":1,"1588":5,"1589":4,"1599":1,"1606":1,"1618":2,"1661":1,"1666":1,"1686":1,"1688":1,"1775":2,"1782":15,"1840":1,"1843":9,"1846":1,"1927":5,"1950":2,"1951":1,"1953":1,"1956":5,"1965":2,"1971":1,"1976":1,"1980":5,"1982":5,"1983":2,"1989":1,"1990":10,"2041":1,"2042":1,"2060":1,"2063":14,"2069":2,"2159":8,"2164":2,"2200":1,"2225":2,"2248":1,"2249":6,"2250":6,"2253":2,"2262":2,"2264":2,"2265":2,"2266":3,"2267":3,"2271":2,"2280":1,"2283":3,"2294":2,"2298":1,"2308":3,"2320":1,"2337":1,"2338":1,"2339":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2410":2,"2421":3,"2422":1,"2449":1,"2503":12,"2519":10,"2521":5,"2522":39,"2523":32,"2527":3,"2528":32,"2531":6,"2537":1,"2539":8,"2541":2,"2543":1,"2545":1,"2547":3,"2548":10,"2556":2,"2565":40,"2566":2,"2579":1,"2605":2,"2627":2,"2644":32,"2655":1,"2684":3,"2721":1,"2748":1,"2750":11,"2772":3,"2776":2,"2777":1,"2834":1,"2853":1,"2854":1,"2862":3,"2864":1,"2871":1,"2887":2,"2918":1,"2919":2,"2921":15}}],["le",{"2":{"154":2,"209":1,"210":1,"236":1,"308":1,"572":1,"2367":3,"2368":4,"2369":1,"2852":1}}],["lean",{"2":{"2591":1}}],["leaps",{"2":{"2440":1}}],["learned",{"0":{"2625":1}}],["learn",{"2":{"2292":1,"2293":1,"2466":1,"2574":1,"2581":1,"2603":1,"2612":1,"2639":1,"2676":1,"2751":1,"2844":1,"2899":2,"2900":2}}],["learning",{"0":{"2292":1,"2635":1},"1":{"2636":1,"2637":1,"2638":1,"2639":1},"2":{"2292":1,"2574":1}}],["leaflabs",{"2":{"2498":1}}],["leaf",{"2":{"1519":1,"1532":7,"1533":1}}],["lease",{"2":{"405":1,"417":2,"2630":2}}],["least",{"2":{"199":1,"519":1,"539":1,"641":1,"692":1,"763":1,"1249":1,"1417":1,"1497":1,"1714":1,"1716":1,"1734":1,"1805":1,"1925":1,"1931":1,"1932":1,"1961":1,"1968":2,"2257":2,"2265":2,"2310":1,"2422":1,"2501":1,"2560":1,"2566":1,"2595":1,"2896":1,"2929":1,"2940":1}}],["leak",{"2":{"236":1}}],["leaving",{"2":{"169":1,"184":1,"539":1,"1362":1,"1417":1,"2420":1,"2566":1,"2655":1,"2904":1}}],["leaves",{"2":{"1294":1,"1422":2,"1519":1}}],["leave",{"2":{"87":1,"103":1,"126":1,"519":1,"539":1,"567":1,"597":1,"1416":1,"1499":1,"1612":1,"2386":1,"2391":1,"2401":2,"2410":1,"2422":1,"2457":1,"2669":1,"2710":1}}],["leading",{"2":{"518":1,"717":1,"1249":6,"1293":1,"2288":1}}],["leader",{"0":{"196":2,"1783":1,"1794":1,"1795":1,"1796":1,"1799":1,"1800":1,"1801":1,"1802":1,"1805":1,"1806":1,"1807":1,"1810":1,"1813":1,"1816":1,"1819":1,"2517":1,"2818":1,"2863":1},"1":{"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":2,"1798":2,"1799":1,"1800":1,"1801":1,"1802":1,"1803":2,"1804":2,"1805":1,"1806":1,"1807":1,"1808":2,"1809":2,"1810":1,"1811":2,"1812":2,"1813":1,"1814":2,"1815":2,"1816":1,"1817":2,"1818":2,"1819":1,"1820":2,"1821":2},"2":{"93":1,"112":3,"176":1,"196":15,"199":2,"294":1,"562":6,"572":2,"1783":2,"1785":12,"1787":2,"1788":5,"1789":9,"1790":1,"1791":15,"1792":2,"1794":1,"1795":1,"1796":1,"1797":1,"1799":1,"1800":1,"1801":1,"1802":1,"1805":2,"1806":1,"2517":2,"2818":2,"2863":3,"2933":1}}],["lead",{"2":{"73":1,"188":2,"191":2,"1469":2,"1472":1,"1476":1,"1784":1,"1791":1,"1792":1,"1930":1,"2421":1,"2517":1,"2757":1}}],["letting",{"2":{"2421":1}}],["letter",{"2":{"1519":4,"1523":1,"1526":1,"1587":1,"1594":1,"1780":4,"2165":1,"2170":1,"2310":3}}],["letters",{"0":{"2535":1},"2":{"191":1,"222":1,"348":1,"517":1,"1329":1,"1436":1,"1516":3,"1521":1,"1523":1,"1527":1,"1528":1,"1587":1,"1591":1,"2156":1,"2161":1,"2165":1,"2310":3,"2374":1,"2442":1,"2469":1,"2719":1,"2830":1,"2831":1}}],["let",{"2":{"70":1,"110":1,"194":1,"228":1,"245":1,"387":2,"391":1,"412":1,"471":2,"487":1,"505":1,"528":1,"567":1,"572":1,"629":1,"1375":1,"1377":2,"1378":1,"1407":1,"1416":2,"1425":1,"1433":1,"1464":1,"1756":1,"1780":1,"1958":1,"2254":1,"2274":1,"2303":1,"2386":1,"2388":1,"2391":1,"2411":1,"2412":1,"2441":1,"2576":1,"2609":1,"2613":1,"2643":1,"2902":1,"2907":1,"2932":1,"2934":1}}],["lets",{"2":{"70":27,"114":1,"148":1,"154":2,"270":2,"277":1,"429":1,"432":1,"487":1,"563":1,"1378":2,"1445":1,"1466":1,"1596":1,"2202":1,"2411":2,"2822":1,"2825":1,"2836":1,"2905":1}}],["leveraging",{"2":{"2170":1}}],["leveraged",{"2":{"2562":1,"2896":1}}],["leverages",{"2":{"373":1,"1289":1,"1290":1,"1291":1,"1518":1,"1542":1}}],["leverage",{"2":{"138":1,"687":1,"1623":1,"2270":1,"2561":1,"2703":1,"2722":1}}],["lever",{"2":{"1962":2}}],["leveling",{"0":{"174":1,"749":1,"750":1,"751":1,"752":1,"753":1,"754":1},"1":{"751":1,"752":1,"753":1,"754":1},"2":{"114":1,"174":1,"176":4,"191":1,"222":1,"236":5,"249":1,"277":1,"308":1,"333":1,"743":2,"749":3,"750":6,"751":8,"752":7,"753":5,"2857":3}}],["levels",{"0":{"1293":1},"1":{"1294":1,"1295":1},"2":{"112":1,"199":2,"510":1,"553":3,"559":2,"1537":1,"1538":3,"1557":1,"1561":1,"1563":1,"2270":1,"2443":1,"2508":1,"2850":2,"2933":1}}],["level",{"0":{"637":1,"1295":1,"1560":2,"1562":1,"1579":1,"1581":1,"2188":1},"1":{"1561":2,"1563":1},"2":{"4":1,"14":1,"28":1,"75":1,"90":4,"93":2,"125":3,"134":1,"145":2,"185":3,"191":2,"229":2,"243":2,"249":2,"262":1,"266":3,"277":3,"285":1,"308":1,"328":1,"335":1,"411":1,"490":4,"510":1,"519":1,"553":1,"554":1,"555":1,"557":1,"559":2,"567":2,"568":1,"569":1,"574":1,"590":1,"591":2,"613":1,"624":1,"625":5,"633":1,"637":2,"649":2,"651":1,"666":1,"671":1,"687":1,"701":1,"710":1,"725":1,"738":1,"758":6,"801":1,"830":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1215":1,"1293":1,"1294":1,"1295":1,"1296":1,"1300":1,"1402":1,"1407":1,"1428":1,"1537":2,"1538":2,"1540":1,"1545":2,"1550":1,"1551":1,"1558":1,"1559":1,"1560":1,"1561":2,"1562":1,"1563":1,"1571":2,"1576":1,"1579":1,"1580":1,"1581":1,"1582":1,"1587":1,"1619":1,"1650":1,"1659":1,"1661":1,"1662":3,"1683":1,"1831":3,"1832":1,"1837":1,"1842":2,"1844":1,"1849":1,"1902":1,"1904":1,"1905":1,"1906":1,"1909":1,"1911":1,"1938":1,"1951":1,"1956":3,"1981":2,"1998":2,"2007":1,"2062":2,"2066":1,"2072":1,"2146":1,"2148":1,"2149":1,"2150":1,"2153":1,"2155":1,"2175":1,"2270":2,"2281":1,"2333":1,"2335":1,"2389":1,"2393":1,"2395":1,"2397":1,"2443":1,"2447":2,"2448":1,"2496":1,"2503":1,"2508":2,"2518":2,"2526":2,"2552":1,"2677":2,"2678":1,"2680":1,"2685":1,"2719":1,"2721":2,"2722":2,"2732":1,"2746":1,"2750":1,"2802":1,"2844":1,"2848":1,"2850":1,"2864":1,"2870":1,"2871":1,"2895":1,"2896":1,"2925":2,"2926":1,"2930":1,"2931":1,"2933":1,"2941":1}}],["levinson",{"2":{"45":1}}],["ledmatrix",{"2":{"65":1}}],["led",{"0":{"84":1,"158":1,"185":1,"233":1,"327":1,"726":1,"728":1,"802":1,"804":1,"818":1,"820":1,"824":1,"831":1,"833":1,"846":1,"848":1,"851":1,"860":1,"862":1,"890":1,"892":1,"908":1,"910":1,"914":1,"925":1,"927":1,"943":1,"945":1,"949":1,"959":1,"961":1,"977":1,"979":1,"983":1,"993":1,"995":1,"1011":1,"1013":1,"1017":1,"1027":1,"1029":1,"1045":1,"1047":1,"1051":1,"1061":1,"1063":1,"1095":1,"1097":1,"1129":1,"1131":1,"1163":1,"1165":1,"1216":1,"1218":1,"1234":1,"1236":1,"1240":1,"1629":1,"1829":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1838":1,"1843":1,"1844":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1859":1,"1861":1,"1863":1,"1865":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1874":1,"1875":1,"1876":1,"1877":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1885":1,"1887":1,"1889":2,"1891":2,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1899":1,"1900":1,"1902":1,"1904":1,"1906":3,"1909":3,"2127":1,"2129":1,"2150":2,"2153":2,"2308":1,"2518":1,"2819":1,"2864":1},"1":{"729":1,"805":1,"819":1,"821":1,"825":1,"834":1,"847":1,"849":1,"863":1,"893":1,"909":1,"911":1,"915":1,"928":1,"944":1,"946":1,"950":1,"962":1,"978":1,"980":1,"984":1,"996":1,"1012":1,"1014":1,"1018":1,"1030":1,"1046":1,"1048":1,"1052":1,"1064":1,"1098":1,"1132":1,"1166":1,"1219":1,"1235":1,"1237":1,"1241":1,"1830":1,"1831":1,"1832":2,"1833":2,"1834":1,"1835":1,"1836":1,"1837":2,"1839":1,"1840":1,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1847":1,"1848":1,"1849":1,"1850":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":2,"1859":1,"1860":2,"1861":1,"1862":2,"1863":1,"1864":2,"1865":1,"1866":2,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":2,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":2,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":2,"1885":1,"1886":2,"1887":1,"1888":2,"1889":1,"1890":3,"1891":1,"1892":3,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":2,"1899":1,"1900":1,"1901":2,"1902":1,"1903":2,"1904":1,"1905":2,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"2128":1,"2130":1},"2":{"32":2,"50":2,"65":1,"70":2,"84":1,"92":3,"93":10,"94":6,"111":1,"113":1,"114":13,"133":1,"134":9,"145":2,"160":5,"176":8,"183":14,"185":5,"191":27,"199":5,"202":1,"209":3,"210":16,"222":3,"233":1,"236":27,"249":33,"266":10,"277":11,"285":4,"294":2,"308":2,"317":1,"328":29,"333":1,"348":2,"559":1,"563":2,"568":1,"632":1,"633":2,"701":2,"703":1,"704":1,"705":1,"708":1,"721":1,"722":1,"726":4,"728":1,"729":4,"730":1,"731":1,"732":1,"733":1,"736":1,"797":1,"798":2,"802":6,"804":1,"805":5,"806":1,"810":1,"811":1,"814":1,"815":1,"818":3,"819":1,"820":3,"821":2,"822":1,"824":2,"826":1,"827":2,"831":6,"833":1,"834":4,"835":1,"838":1,"839":1,"842":1,"843":1,"846":3,"847":1,"848":3,"849":2,"850":1,"851":2,"852":1,"853":2,"860":6,"862":1,"863":5,"864":1,"868":1,"869":1,"872":1,"873":1,"876":1,"877":1,"878":1,"879":2,"880":1,"882":1,"884":1,"885":2,"890":6,"892":1,"893":5,"894":1,"898":1,"900":1,"901":1,"904":1,"905":1,"908":3,"909":1,"910":3,"911":2,"912":1,"914":2,"916":1,"917":2,"925":6,"927":1,"928":5,"929":1,"933":1,"935":1,"936":1,"939":1,"940":1,"943":3,"944":1,"945":3,"946":2,"947":1,"949":2,"951":1,"952":2,"959":6,"961":1,"962":5,"963":1,"967":1,"969":1,"970":1,"973":1,"974":1,"977":3,"978":1,"979":3,"980":2,"981":1,"983":2,"985":1,"986":2,"993":6,"995":1,"996":5,"997":1,"1001":1,"1003":1,"1004":1,"1007":1,"1008":1,"1011":3,"1012":1,"1013":3,"1014":2,"1015":1,"1017":2,"1019":1,"1020":2,"1027":6,"1029":1,"1030":5,"1031":1,"1035":1,"1037":1,"1038":1,"1041":1,"1042":1,"1045":3,"1046":1,"1047":3,"1048":2,"1049":1,"1051":2,"1053":1,"1054":2,"1061":6,"1063":1,"1064":5,"1065":1,"1069":1,"1071":1,"1072":1,"1075":1,"1076":1,"1079":1,"1080":1,"1081":1,"1082":2,"1083":1,"1085":1,"1087":1,"1088":2,"1095":6,"1097":1,"1098":5,"1099":1,"1103":1,"1105":1,"1106":1,"1109":1,"1110":1,"1113":1,"1114":1,"1115":1,"1116":2,"1117":1,"1119":1,"1121":1,"1122":2,"1129":6,"1131":1,"1132":5,"1133":1,"1137":1,"1139":1,"1140":1,"1143":1,"1144":1,"1147":1,"1148":1,"1149":1,"1150":2,"1151":1,"1153":1,"1155":1,"1156":2,"1163":6,"1165":1,"1166":5,"1167":1,"1168":1,"1171":1,"1173":1,"1174":1,"1177":1,"1178":1,"1181":1,"1182":1,"1183":1,"1184":2,"1185":1,"1187":1,"1211":1,"1212":2,"1216":6,"1218":1,"1219":5,"1220":1,"1224":1,"1226":1,"1227":1,"1230":1,"1231":1,"1234":3,"1235":1,"1236":3,"1237":2,"1238":1,"1240":2,"1280":2,"1282":2,"1283":1,"1284":1,"1285":3,"1293":1,"1295":1,"1302":1,"1303":1,"1304":1,"1307":1,"1308":2,"1373":1,"1389":1,"1393":1,"1538":1,"1540":3,"1595":1,"1619":2,"1629":5,"1632":6,"1658":1,"1672":3,"1827":2,"1829":9,"1830":12,"1831":10,"1832":12,"1833":7,"1834":6,"1835":3,"1837":9,"1838":2,"1839":4,"1840":26,"1841":10,"1842":14,"1843":64,"1844":31,"1845":5,"1846":30,"1849":12,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1859":1,"1860":3,"1890":1,"1892":1,"1900":1,"1901":1,"1907":4,"1910":4,"1947":7,"1976":1,"2058":3,"2059":2,"2060":25,"2061":12,"2063":1,"2064":1,"2066":10,"2069":10,"2070":1,"2072":4,"2073":17,"2074":11,"2085":1,"2086":2,"2128":1,"2130":1,"2151":4,"2154":4,"2171":2,"2172":2,"2178":4,"2179":2,"2182":4,"2183":4,"2188":1,"2191":9,"2199":6,"2200":3,"2201":2,"2203":1,"2269":3,"2277":7,"2308":10,"2377":2,"2384":2,"2411":3,"2424":1,"2436":1,"2448":2,"2449":3,"2518":15,"2645":1,"2661":2,"2682":1,"2684":5,"2700":2,"2721":3,"2847":1,"2848":2,"2860":6,"2864":13,"2869":3,"2870":3,"2871":10,"2876":1,"2900":1}}],["leds",{"0":{"2199":1},"2":{"25":1,"45":1,"50":1,"114":1,"160":1,"212":2,"222":1,"229":1,"249":2,"308":1,"563":4,"643":1,"644":1,"699":2,"701":1,"704":1,"706":1,"721":2,"726":1,"732":1,"733":1,"734":1,"797":2,"802":2,"810":1,"811":1,"812":1,"814":1,"815":1,"816":1,"818":1,"819":1,"820":1,"821":1,"826":2,"831":2,"838":1,"839":1,"840":1,"842":1,"843":1,"844":1,"846":1,"847":1,"848":1,"849":1,"852":2,"854":1,"860":2,"868":1,"869":1,"870":1,"872":1,"873":1,"874":1,"876":1,"877":1,"878":1,"879":1,"884":2,"890":2,"900":1,"901":1,"902":1,"904":1,"905":1,"906":1,"908":1,"909":1,"910":1,"911":1,"916":2,"918":1,"925":2,"935":1,"936":1,"937":1,"939":1,"940":1,"941":1,"943":1,"944":1,"945":1,"946":1,"951":2,"953":1,"959":2,"969":1,"970":1,"971":1,"973":1,"974":1,"975":1,"977":1,"978":1,"979":1,"980":1,"985":2,"987":1,"993":2,"1003":1,"1004":1,"1005":1,"1007":1,"1008":1,"1009":1,"1011":1,"1012":1,"1013":1,"1014":1,"1019":2,"1021":1,"1027":2,"1037":1,"1038":1,"1039":1,"1041":1,"1042":1,"1043":1,"1045":1,"1046":1,"1047":1,"1048":1,"1053":2,"1055":1,"1061":2,"1071":1,"1072":1,"1073":1,"1075":1,"1076":1,"1077":1,"1079":1,"1080":1,"1081":1,"1082":1,"1087":2,"1095":2,"1105":1,"1106":1,"1107":1,"1109":1,"1110":1,"1111":1,"1113":1,"1114":1,"1115":1,"1116":1,"1121":2,"1129":2,"1139":1,"1140":1,"1141":1,"1143":1,"1144":1,"1145":1,"1147":1,"1148":1,"1149":1,"1150":1,"1155":2,"1157":1,"1163":2,"1173":1,"1174":1,"1175":1,"1177":1,"1178":1,"1179":1,"1181":1,"1182":1,"1183":1,"1184":1,"1211":2,"1216":2,"1226":1,"1227":1,"1228":1,"1230":1,"1231":1,"1232":1,"1234":1,"1235":1,"1236":1,"1237":1,"1280":4,"1282":1,"1283":1,"1284":1,"1285":2,"1288":1,"1293":1,"1303":1,"1305":1,"1369":1,"1405":2,"1459":1,"1535":3,"1538":1,"1539":1,"1540":2,"1552":2,"1656":1,"1829":2,"1831":1,"1835":1,"1836":1,"1837":3,"1839":1,"1840":2,"1843":1,"1844":2,"1846":4,"1861":1,"1902":1,"1904":1,"1906":1,"1909":1,"2059":1,"2060":2,"2063":4,"2064":1,"2066":2,"2069":4,"2087":1,"2146":1,"2148":1,"2150":1,"2153":1,"2171":6,"2172":10,"2178":5,"2181":1,"2182":6,"2188":1,"2191":7,"2193":6,"2194":14,"2199":2,"2200":3,"2201":1,"2271":2,"2301":1,"2302":1,"2308":1,"2428":1,"2437":3,"2438":2,"2798":1,"2838":2,"2850":2,"2860":1,"2864":5,"2870":3,"2871":5,"2876":1,"2928":2}}],["less",{"2":{"24":1,"133":1,"134":1,"263":1,"431":2,"512":1,"1295":1,"1362":1,"1410":1,"1413":1,"1484":1,"1485":1,"1492":1,"1516":1,"1604":1,"1609":2,"1955":1,"1968":1,"2288":1,"2302":2,"2410":1,"2447":1,"2576":1,"2695":1,"2719":1,"2793":1,"2844":1,"2906":1}}],["lone",{"2":{"1782":1,"2921":1,"2923":1}}],["longan",{"2":{"552":1}}],["long",{"0":{"1328":1},"2":{"131":1,"139":1,"151":1,"164":1,"243":1,"331":1,"387":1,"493":1,"510":1,"512":1,"538":3,"562":4,"673":1,"678":1,"713":1,"717":1,"1283":1,"1362":1,"1365":1,"1487":1,"1491":1,"1493":1,"1495":1,"1497":1,"1521":1,"1532":1,"1545":1,"1599":1,"1603":4,"1622":1,"1664":1,"1675":1,"1680":17,"1756":1,"1788":1,"1822":1,"1992":1,"2050":1,"2178":1,"2180":6,"2203":1,"2268":1,"2274":1,"2310":1,"2312":1,"2323":1,"2424":1,"2453":1,"2626":1,"2656":1,"2685":1,"2750":1,"2775":1,"2892":1}}],["longer",{"2":{"48":1,"50":1,"98":1,"124":1,"130":1,"152":1,"194":1,"196":1,"201":1,"206":1,"212":1,"224":1,"233":1,"240":1,"262":2,"265":1,"268":1,"273":2,"276":1,"283":1,"284":1,"570":1,"579":1,"613":1,"616":1,"645":1,"684":1,"1287":1,"1317":1,"1457":1,"1490":1,"1493":1,"1497":1,"1513":1,"1522":1,"1775":1,"1782":1,"1933":1,"1965":1,"2302":1,"2303":1,"2310":1,"2312":1,"2420":2,"2564":1,"2720":1,"2721":1,"2750":2,"2882":1,"2905":1,"2906":1,"2911":2,"2917":1,"2921":1}}],["loud",{"2":{"1482":1,"1487":1}}],["louder",{"2":{"277":1}}],["lo",{"2":{"1442":4,"1837":1,"2161":1}}],["losh",{"2":{"2248":1}}],["loss",{"2":{"1406":1,"1416":1,"2316":1,"2411":1}}],["loses",{"2":{"1416":1,"2516":1,"2873":1}}],["lose",{"2":{"717":1,"1583":1,"2629":1}}],["lost",{"2":{"176":1,"743":1,"1655":1,"2806":1}}],["love",{"0":{"2625":1},"2":{"618":1,"1339":1,"1442":2,"2724":1}}],["lorem",{"2":{"357":1}}],["loki65",{"2":{"222":1}}],["lopt",{"2":{"176":1,"1374":1,"1442":1,"2503":1,"2522":1,"2523":1,"2539":1,"2565":1}}],["loadable",{"2":{"2748":1}}],["loads",{"2":{"1287":1,"2750":2}}],["loaded",{"2":{"683":1,"2501":1,"2655":1,"2747":3,"2750":2}}],["loader",{"0":{"2700":1,"2735":1},"2":{"348":3,"2381":3,"2384":1,"2501":3,"2700":1,"2702":1,"2735":1}}],["load",{"0":{"2607":1},"2":{"160":1,"507":1,"598":1,"649":1,"716":1,"1362":1,"2475":1,"2477":1,"2481":1,"2495":1,"2504":1,"2580":1,"2582":1,"2622":1,"2735":1,"2745":1,"2747":1,"2750":11}}],["loading",{"2":{"145":1,"1362":1,"2633":1,"2750":2}}],["loose",{"2":{"2427":2,"2588":1}}],["looking",{"0":{"2843":1},"2":{"228":1,"424":1,"487":2,"540":1,"659":1,"718":2,"1379":1,"2050":1,"2411":1,"2420":1,"2430":1,"2459":1,"2645":1,"2720":1}}],["look",{"2":{"194":1,"397":1,"471":1,"527":1,"616":1,"654":1,"684":1,"685":1,"1296":1,"1300":1,"1316":1,"1346":1,"1407":2,"1409":1,"1464":1,"1486":1,"1521":1,"1550":1,"1551":1,"1780":1,"2291":1,"2323":1,"2409":1,"2421":1,"2490":1,"2552":1,"2553":1,"2560":1,"2572":1,"2577":1,"2662":1,"2744":1,"2751":1,"2905":1,"2927":1,"2930":1,"2932":2,"2933":1,"2936":1,"2937":1}}],["lookup",{"2":{"191":1,"460":1,"1840":1,"2060":1,"2222":1,"2702":1,"2879":1}}],["looks",{"2":{"125":1,"185":1,"1491":1,"1504":1,"2398":1,"2560":1,"2578":1,"2580":1,"2929":1,"2931":1,"2932":1}}],["looping",{"2":{"2420":1,"2928":1}}],["loopgain",{"2":{"1678":1,"1679":1}}],["loops",{"2":{"145":1,"2001":1}}],["loop",{"0":{"2928":1},"1":{"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"65":1,"92":1,"113":1,"114":1,"160":1,"176":2,"277":1,"528":1,"645":1,"1479":2,"1545":1,"1949":2,"1951":1,"2065":1,"2279":2,"2377":1,"2380":2,"2384":1,"2420":1,"2750":1,"2927":1,"2928":2,"2932":1}}],["locate",{"2":{"2599":1,"2605":1,"2607":1}}],["locates",{"2":{"2552":1}}],["located",{"2":{"572":1,"683":1,"753":1,"1347":1,"1496":1,"1521":1,"1584":1,"1948":1,"2411":1,"2423":1,"2444":1,"2542":1,"2605":1,"2607":1,"2619":1,"2760":1,"2761":1,"2762":1,"2768":1,"2880":1}}],["locating",{"2":{"317":1,"333":1}}],["locations",{"2":{"132":1,"160":1,"176":1,"215":1,"266":1,"391":1,"597":1,"726":1,"1621":1,"2008":1,"2210":1,"2409":1,"2775":1,"2856":1,"2872":1,"2931":2}}],["location",{"2":{"114":1,"133":1,"134":1,"160":1,"199":1,"234":1,"249":2,"317":1,"421":1,"422":1,"423":1,"507":1,"625":1,"667":1,"746":1,"747":1,"753":1,"1486":1,"1948":1,"2008":1,"2063":1,"2423":1,"2577":1,"2583":1,"2598":1,"2651":1,"2655":1,"2676":2,"2707":1,"2749":2,"2750":3,"2772":5,"2776":2,"2930":1,"2942":1}}],["localhost",{"2":{"615":1}}],["locally",{"0":{"2584":1,"2586":1},"2":{"613":1,"617":1,"1457":1,"2425":1,"2584":2,"2586":1,"2587":1}}],["local",{"2":{"458":2,"487":1,"512":1,"514":1,"517":1,"611":1,"612":1,"655":1,"673":1,"1954":1,"1955":1,"2008":1,"2282":1,"2398":2,"2401":1,"2426":1,"2546":1,"2566":1,"2584":1,"2585":1,"2586":1,"2591":1,"2594":1,"2607":1,"2621":2,"2630":2,"2644":1,"2721":1}}],["locale",{"2":{"249":1}}],["lockout",{"2":{"1996":1}}],["lockkeys",{"0":{"1687":1},"2":{"1687":1}}],["locks",{"2":{"1416":1,"1822":1,"1824":1,"1826":1,"2515":1}}],["lockups",{"2":{"263":1}}],["locking",{"0":{"2207":1},"2":{"176":1,"188":1,"191":2,"199":2,"236":1,"266":32,"559":3,"1351":2,"1823":1,"2503":6,"2538":6,"2656":1,"2847":2,"2883":2}}],["locked",{"2":{"145":1,"266":1,"312":1,"373":2,"396":3,"402":1,"1822":2,"1826":3,"1827":7,"2206":1,"2207":1,"2209":2,"2210":1,"2211":2,"2269":1,"2645":7,"2726":1,"2729":1,"2737":1,"2738":1,"2872":1}}],["lock",{"0":{"1351":1,"1756":1,"1822":1,"1823":1,"1827":1,"1828":1,"2305":1,"2514":1,"2515":1,"2538":1},"1":{"1757":1,"1758":1,"1759":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1},"2":{"73":1,"160":2,"176":1,"188":2,"191":2,"199":2,"210":3,"231":2,"285":2,"308":1,"562":1,"563":1,"587":1,"1351":2,"1416":1,"1418":1,"1449":1,"1538":2,"1540":4,"1587":5,"1619":2,"1687":3,"1756":4,"1757":3,"1758":1,"1759":4,"1822":2,"1823":3,"1824":6,"1825":3,"1826":4,"1827":3,"1828":7,"1829":4,"1830":6,"1832":3,"1833":6,"1834":2,"1849":1,"1947":3,"1950":1,"2072":1,"2073":2,"2074":5,"2181":1,"2182":2,"2183":1,"2209":2,"2211":2,"2269":2,"2277":3,"2280":1,"2305":1,"2323":1,"2411":2,"2503":12,"2514":2,"2515":2,"2519":16,"2538":12,"2548":16,"2643":1,"2645":1,"2728":1,"2776":3,"2777":2,"2847":1,"2850":2,"2860":6,"2883":2,"2928":3,"2933":1}}],["lowr",{"2":{"2314":1}}],["lowest",{"2":{"553":1,"1413":1,"1419":1,"1420":1,"1487":1,"1837":1,"2313":1,"2503":1,"2544":1,"2557":1}}],["lower",{"0":{"2323":1},"2":{"198":1,"236":1,"696":1,"698":1,"716":3,"717":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1204":1,"1293":1,"1407":1,"1416":2,"1419":1,"1421":1,"1424":1,"1485":1,"1515":1,"1538":1,"1675":1,"1788":1,"1929":2,"1930":1,"1933":1,"1962":2,"1968":2,"1969":2,"2294":3,"2313":2,"2314":3,"2315":2,"2316":6,"2323":2,"2442":1,"2506":1,"2550":1,"2552":4,"2555":1,"2562":1,"2785":7,"2787":2,"2904":1,"2905":1}}],["lowercase",{"2":{"137":1,"209":1,"1329":1,"1432":1,"1493":1,"2323":3,"2446":1,"2495":1,"2719":2,"2905":1}}],["low",{"0":{"637":1,"2188":1},"2":{"49":1,"134":1,"145":1,"243":2,"559":2,"566":1,"567":5,"568":1,"637":2,"716":3,"746":1,"758":3,"1292":2,"1294":1,"1316":1,"1413":1,"1480":1,"1538":1,"1539":1,"1672":5,"1675":3,"1678":1,"1679":1,"1736":3,"1830":1,"1832":2,"1929":2,"1930":1,"1978":2,"1990":1,"2177":1,"2264":2,"2265":1,"2367":1,"2491":1,"2492":1,"2493":1,"2494":1,"2496":2,"2550":1,"2555":1,"2662":1,"2677":1,"2678":1,"2680":1,"2719":1,"2802":1,"2828":1,"2837":1,"2865":1,"2905":2}}],["login",{"2":{"2671":1}}],["logically",{"2":{"2200":1}}],["logical",{"2":{"134":1,"236":1,"613":1,"750":1,"751":2,"752":3,"753":2,"1284":1,"1776":2,"2199":1,"2459":2,"2849":1,"2850":1,"2857":2,"2860":1,"2865":1}}],["logic",{"0":{"1293":1},"1":{"1294":1,"1295":1},"2":{"16":1,"75":1,"94":2,"113":1,"114":2,"133":2,"134":5,"145":3,"160":1,"191":1,"198":1,"199":1,"210":2,"222":1,"249":2,"266":1,"277":6,"285":1,"308":1,"317":1,"320":1,"328":3,"333":1,"591":2,"1293":1,"1295":1,"1425":1,"1533":1,"1585":1,"1626":1,"1628":1,"1843":1,"1942":1,"2063":2,"2254":2,"2303":1,"2645":1,"2719":1,"2919":1,"2923":1}}],["logfile",{"2":{"2410":4}}],["logged",{"2":{"491":1,"1327":1,"2941":1}}],["logger",{"2":{"487":1,"490":1}}],["logging",{"0":{"490":1},"2":{"249":1,"308":1,"487":1,"527":1,"1326":1,"1327":1,"1328":1}}],["log",{"0":{"490":1},"2":{"114":1,"199":2,"222":1,"405":1,"427":1,"487":3,"489":2,"490":12,"491":2,"494":1,"498":1,"523":2,"527":2,"586":1,"587":2,"611":1,"2429":1,"2602":1}}],["logo",{"0":{"1948":1,"2278":1},"2":{"31":2,"1948":7,"1950":2,"2278":5,"2280":2}}],["logs",{"2":{"17":1,"1327":1,"2627":1,"2710":1}}],["lots",{"2":{"558":1,"2463":1,"2560":2}}],["lotus58",{"2":{"222":1,"266":1,"311":8,"317":1}}],["lot",{"2":{"6":1,"10":2,"114":1,"138":1,"172":1,"175":1,"187":1,"198":2,"201":1,"212":1,"224":1,"233":1,"238":1,"397":1,"492":1,"523":1,"609":1,"617":1,"624":1,"643":1,"663":1,"1333":1,"1407":2,"1417":1,"1518":1,"1603":1,"1616":1,"1617":1,"2254":1,"2302":1,"2420":1,"2422":1,"2428":1,"2432":1,"2465":1,"2566":1,"2572":2,"2579":1,"2580":1,"2622":1,"2709":1,"2715":1,"2721":1,"2722":1,"2782":1,"2886":1,"2887":1,"2889":1,"2901":1,"2927":1}}],["laziness",{"2":{"2719":1}}],["lazydesigners",{"2":{"102":3}}],["lapo",{"2":{"2249":1,"2250":1,"2252":1,"2531":1}}],["laptop",{"2":{"1415":1}}],["laid",{"2":{"618":1,"663":1}}],["lambdas",{"0":{"529":1},"2":{"529":1}}],["larr",{"2":{"342":1,"2443":6}}],["largely",{"2":{"244":1,"552":1,"609":1,"2389":1,"2411":2}}],["largest",{"2":{"176":1,"2882":1}}],["larger",{"2":{"138":1,"174":1,"175":1,"176":1,"222":1,"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"397":1,"718":1,"751":2,"752":2,"1477":1,"1603":2,"1951":1,"1979":1,"2253":1,"2416":1,"2456":1,"2749":1,"2839":1,"2919":1,"2930":1}}],["large",{"2":{"134":1,"138":1,"163":1,"174":1,"175":1,"176":1,"233":1,"397":1,"408":1,"572":1,"659":1,"663":1,"717":1,"1362":1,"1379":1,"1603":1,"1930":1,"1932":1,"2372":1,"2572":1,"2657":1,"2669":1,"2722":1,"2749":1,"2750":1,"2788":1,"2888":1,"2896":1}}],["lacking",{"2":{"2721":1}}],["lacks",{"2":{"2201":1}}],["lack",{"2":{"312":1,"1193":1,"1466":1,"1844":1,"2066":1,"2272":1,"2273":1,"2560":1,"2895":1}}],["lags",{"2":{"716":1}}],["laggy",{"2":{"320":1,"2923":1}}],["lag",{"2":{"297":1,"1287":1,"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1,"2915":1,"2929":1}}],["la+",{"2":{"222":1}}],["labor",{"2":{"2724":1}}],["labk",{"2":{"2527":1,"2547":1}}],["labeled",{"2":{"765":1,"1245":1,"1266":1,"2605":1}}],["label",{"2":{"397":4,"2776":18,"2777":18,"2781":8,"2861":1,"2862":2}}],["labels",{"2":{"191":1,"333":1,"2877":1}}],["lab",{"2":{"222":3}}],["latches",{"2":{"1283":1}}],["latter",{"2":{"413":1,"1348":1,"1609":1,"1785":1,"1963":1,"2075":1,"2649":1,"2750":3,"2912":1,"2917":1,"2919":1}}],["lattice60",{"2":{"144":2}}],["latam",{"2":{"249":1}}],["latvian",{"2":{"176":1,"2880":3}}],["latin",{"2":{"2879":1,"2880":6}}],["latinpad",{"2":{"154":2}}],["latinpadble",{"2":{"154":2,"222":1}}],["latin6rgb",{"2":{"154":2}}],["latin64ble",{"2":{"154":2}}],["latin60rgb",{"2":{"154":2}}],["latin47ble",{"2":{"154":2}}],["latincompass",{"2":{"154":7,"160":2}}],["latin17rgb",{"2":{"154":2}}],["late",{"2":{"654":1}}],["late9",{"2":{"241":2,"249":1,"300":2}}],["latency",{"2":{"94":1,"199":1,"2372":2}}],["later",{"2":{"23":1,"142":1,"408":1,"423":1,"505":1,"525":1,"598":1,"613":1,"713":1,"1378":1,"1461":1,"1624":2,"1942":1,"2182":2,"2302":2,"2424":1,"2457":1,"2491":1,"2554":1,"2621":1,"2625":1,"2725":2}}],["latest",{"2":{"10":1,"24":1,"176":1,"191":1,"222":1,"254":1,"294":1,"308":1,"386":1,"2324":1,"2594":1,"2600":1,"2614":1}}],["lanes",{"2":{"2258":1}}],["laneware",{"2":{"241":5,"249":1}}],["landed",{"2":{"131":1}}],["languages",{"2":{"134":1,"2287":1,"2322":1,"2411":1,"2646":1,"2666":1,"2877":1,"2878":1}}],["language",{"0":{"5":1,"2222":1,"2877":1},"1":{"2878":1,"2879":1,"2880":1},"2":{"74":1,"427":1,"536":1,"1436":3,"2050":1,"2287":1,"2503":18,"2540":13,"2561":1,"2673":1,"2675":2,"2802":1,"2830":1,"2839":1,"2877":2,"2878":2,"2880":1}}],["lalt",{"2":{"120":1,"369":1,"587":2,"1344":1,"1374":2,"1375":1,"1377":2,"1416":1,"1435":1,"1438":1,"1442":1,"1456":4,"1484":1,"1612":2,"2252":2,"2310":2,"2311":2,"2503":1,"2516":1,"2519":2,"2522":1,"2523":1,"2528":1,"2539":1,"2548":2,"2554":1,"2556":1,"2565":2,"2644":1,"2916":1}}],["laser",{"2":{"118":1,"191":1,"241":2,"1961":1}}],["lastly",{"2":{"1407":1}}],["last",{"0":{"213":1,"2360":1},"1":{"2361":1},"2":{"23":1,"74":1,"103":1,"105":1,"167":1,"176":2,"184":1,"189":1,"198":1,"201":1,"210":1,"212":1,"213":2,"217":1,"222":2,"224":2,"238":1,"249":1,"275":1,"284":1,"373":2,"396":1,"399":1,"400":1,"401":1,"406":4,"519":1,"586":1,"638":1,"644":1,"645":2,"751":2,"1416":1,"1425":1,"1441":2,"1493":1,"1511":1,"1519":2,"1523":1,"1532":1,"1684":1,"1778":1,"1907":1,"1910":1,"1996":1,"2151":1,"2154":1,"2156":3,"2158":2,"2159":2,"2160":3,"2161":1,"2163":2,"2164":2,"2165":1,"2166":1,"2167":1,"2168":1,"2169":5,"2170":6,"2184":1,"2268":2,"2270":3,"2288":1,"2290":1,"2302":1,"2303":2,"2310":1,"2324":1,"2360":1,"2425":1,"2497":1,"2530":2,"2562":1,"2570":1,"2577":1,"2602":1,"2634":1,"2645":1,"2671":1,"2684":1,"2747":1,"2749":1,"2750":25,"2764":1,"2920":1,"2931":1,"2932":1}}],["launchpad",{"2":{"154":2,"199":2,"231":1,"317":1,"1917":1,"2503":2,"2542":2}}],["launch",{"0":{"2652":1},"2":{"114":2,"541":1,"2291":1,"2372":2,"2503":5,"2542":5,"2652":1,"2676":2}}],["layr",{"2":{"2312":3}}],["lays",{"2":{"334":1}}],["layout=ortho",{"2":{"1430":2}}],["layout>",{"2":{"1429":1,"1430":4}}],["layouts+users",{"2":{"191":1}}],["layouts",{"0":{"35":1,"1427":1,"1430":1,"1431":1,"2862":1},"1":{"36":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":2,"1433":2},"2":{"70":3,"73":1,"74":1,"99":1,"111":1,"114":1,"169":1,"176":1,"191":3,"199":4,"201":1,"210":3,"212":3,"222":23,"236":2,"249":3,"256":2,"308":1,"317":1,"427":2,"435":1,"570":2,"595":2,"1343":2,"1416":1,"1420":1,"1427":8,"1428":3,"1430":2,"1459":1,"1613":1,"2072":1,"2446":6,"2583":1,"2587":2,"2707":1,"2714":1,"2721":3,"2776":2,"2778":1,"2830":1,"2862":5,"2877":1,"2879":2,"2919":3,"2930":1}}],["layout",{"0":{"17":1,"89":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"595":1,"603":1,"1428":1,"1436":1,"2262":1,"2579":1,"2714":1,"2878":1,"2930":1},"1":{"257":1,"258":1,"259":1,"260":1},"2":{"17":1,"36":1,"48":1,"70":2,"76":1,"89":2,"94":1,"111":4,"114":2,"120":2,"145":2,"160":1,"191":4,"199":4,"201":1,"210":11,"212":3,"222":248,"236":9,"238":1,"249":4,"255":3,"256":4,"257":2,"258":2,"259":4,"260":1,"266":10,"277":2,"285":5,"294":3,"308":3,"328":1,"369":4,"427":1,"445":1,"511":1,"586":2,"587":6,"595":3,"597":4,"680":6,"681":1,"1387":3,"1402":3,"1416":2,"1419":2,"1420":1,"1427":10,"1428":6,"1430":4,"1433":6,"1435":2,"1436":2,"1443":1,"1459":2,"1486":5,"1584":2,"1587":1,"1613":1,"1665":1,"1840":2,"1918":1,"1937":1,"2060":2,"2161":1,"2167":1,"2170":1,"2222":2,"2252":2,"2262":3,"2266":1,"2286":2,"2287":1,"2291":2,"2311":1,"2323":1,"2324":1,"2407":2,"2415":1,"2416":2,"2425":2,"2446":18,"2471":2,"2472":2,"2473":6,"2474":1,"2549":1,"2551":2,"2556":4,"2557":1,"2578":1,"2582":1,"2583":1,"2587":4,"2599":2,"2603":1,"2676":1,"2702":1,"2707":2,"2714":8,"2721":15,"2775":6,"2776":11,"2777":2,"2780":1,"2781":2,"2797":1,"2803":1,"2805":1,"2816":1,"2830":1,"2831":1,"2862":18,"2864":1,"2871":1,"2877":3,"2878":3,"2879":3,"2880":3,"2915":1,"2919":6,"2930":5,"2931":3}}],["layering",{"2":{"2557":1}}],["layer>",{"2":{"1994":3}}],["layer9",{"2":{"1619":1}}],["layer8",{"2":{"1619":1}}],["layer7",{"2":{"1619":1,"2004":2}}],["layer6",{"2":{"1619":1}}],["layer5",{"2":{"1619":1,"2004":2}}],["layer4",{"2":{"1619":1}}],["layer3",{"2":{"1619":1,"2182":2}}],["layer2",{"2":{"1619":1,"2182":2}}],["layer1",{"2":{"1619":1,"2182":2}}],["layer0",{"2":{"1619":3}}],["layers\`",{"2":{"1425":1}}],["layers",{"0":{"166":1,"589":1,"1380":1,"1415":1,"1416":1,"1418":1,"1425":1,"1614":1,"1765":2,"1766":2,"1767":2,"2004":1,"2181":1,"2182":1,"2183":1,"2313":1,"2550":1,"2555":1,"2783":1,"2885":1},"1":{"1416":1,"1417":2,"1418":1,"1419":2,"1420":2,"1421":2,"1422":1,"1423":1,"1424":1,"1425":1,"1426":1,"2182":1,"2183":1,"2184":1,"2185":1,"2186":1,"2314":1,"2315":1,"2316":1,"2551":1,"2552":1,"2556":1,"2557":1,"2784":1,"2785":1,"2786":1,"2787":1},"2":{"112":4,"114":1,"120":1,"145":1,"166":4,"176":1,"190":1,"191":1,"198":1,"199":3,"222":1,"266":1,"285":1,"307":1,"360":1,"369":1,"445":1,"560":1,"563":6,"586":1,"587":2,"589":1,"605":1,"614":2,"1317":1,"1350":1,"1380":1,"1407":1,"1415":1,"1416":12,"1417":2,"1418":1,"1419":6,"1420":3,"1421":5,"1422":12,"1423":1,"1424":1,"1425":3,"1426":1,"1435":1,"1480":1,"1527":1,"1613":3,"1614":2,"1616":1,"1661":1,"1684":1,"1759":1,"1764":1,"1765":2,"1770":6,"1773":1,"1775":2,"1823":1,"1824":1,"1827":2,"1947":1,"1992":1,"1996":1,"2004":2,"2163":1,"2181":3,"2182":21,"2183":1,"2184":9,"2185":3,"2186":3,"2187":1,"2277":1,"2287":1,"2311":1,"2312":1,"2313":1,"2315":1,"2316":2,"2516":1,"2550":6,"2551":2,"2552":5,"2554":1,"2555":5,"2578":1,"2579":2,"2643":1,"2644":1,"2784":1,"2786":2,"2787":1,"2870":2,"2878":1,"2885":5,"2899":1,"2919":1}}],["layer",{"0":{"3":1,"15":1,"246":1,"660":1,"1350":1,"1423":1,"1424":1,"1426":1,"1613":1,"1614":1,"1773":1,"1822":1,"1823":1,"1827":1,"1828":1,"1992":1,"1993":2,"2001":1,"2005":2,"2007":1,"2184":1,"2196":1,"2311":1,"2312":2,"2515":1,"2516":1,"2551":1,"2552":1,"2556":1,"2557":1,"2784":1,"2786":1,"2788":1,"2817":1},"1":{"1424":1,"1425":1,"1426":1,"1614":1,"1778":1,"1779":1,"1780":1,"1823":1,"1824":1,"1825":1,"1826":1,"1827":1,"1828":1,"1993":1,"1994":1,"1995":1,"1996":1,"1997":1,"1998":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2785":1,"2787":1},"2":{"31":1,"38":10,"49":2,"73":1,"93":1,"105":4,"114":2,"145":1,"160":1,"166":3,"176":2,"190":1,"191":5,"194":4,"198":1,"199":7,"222":4,"236":4,"246":2,"249":1,"266":2,"285":7,"297":1,"298":1,"307":1,"308":2,"328":2,"369":1,"560":1,"561":3,"562":2,"563":3,"568":2,"586":2,"589":2,"614":4,"644":1,"660":1,"683":1,"757":1,"759":1,"1350":4,"1406":1,"1407":29,"1415":1,"1416":30,"1417":4,"1418":2,"1419":10,"1420":2,"1421":13,"1422":90,"1423":2,"1424":5,"1425":30,"1426":6,"1460":1,"1464":13,"1467":1,"1480":3,"1484":1,"1527":9,"1599":3,"1606":4,"1607":5,"1613":3,"1614":31,"1616":6,"1619":28,"1632":6,"1651":8,"1655":1,"1656":2,"1657":1,"1661":1,"1684":5,"1760":1,"1773":14,"1775":2,"1790":1,"1822":26,"1823":4,"1824":15,"1825":3,"1826":13,"1827":9,"1828":10,"1835":1,"1839":1,"1849":1,"1947":4,"1950":1,"1987":9,"1989":6,"1992":17,"1993":15,"1994":8,"1996":6,"1997":2,"1999":2,"2001":31,"2002":1,"2004":12,"2005":30,"2006":3,"2007":4,"2008":2,"2046":1,"2059":1,"2072":1,"2073":13,"2074":5,"2163":2,"2164":1,"2166":7,"2181":1,"2182":18,"2183":14,"2184":24,"2196":4,"2269":3,"2277":4,"2280":1,"2285":1,"2286":1,"2291":3,"2295":1,"2297":1,"2302":9,"2311":4,"2312":26,"2313":4,"2314":8,"2315":13,"2316":22,"2374":4,"2515":3,"2516":20,"2528":2,"2546":1,"2549":2,"2550":2,"2551":18,"2552":5,"2553":1,"2554":5,"2555":4,"2556":3,"2557":6,"2569":2,"2578":2,"2644":6,"2645":14,"2677":1,"2685":2,"2720":1,"2721":4,"2784":4,"2785":8,"2786":10,"2787":7,"2788":10,"2817":1,"2861":1,"2862":2,"2863":1,"2870":2,"2873":2,"2883":1,"2885":3,"2904":5,"2905":2,"2911":2,"2912":7,"2913":5,"2914":1,"2915":1,"2941":1,"2942":7}}],["lter",{"2":{"1532":1}}],["ltoboolean",{"2":{"2847":1}}],["lto",{"2":{"111":1,"112":2,"114":3,"134":5,"145":1,"160":1,"222":2,"249":1,"266":2,"570":2,"2676":1}}],["lt",{"0":{"15":1,"363":1,"364":1,"365":1,"1447":1,"1448":1,"1449":1,"1450":2,"1451":5,"1627":1,"2449":1,"2450":1},"2":{"4":3,"18":2,"55":1,"70":1,"132":2,"133":1,"134":1,"176":4,"195":1,"199":1,"212":1,"222":1,"249":2,"297":1,"317":1,"338":1,"397":1,"401":2,"403":3,"405":8,"427":1,"428":1,"431":2,"457":1,"474":2,"490":1,"493":4,"519":1,"557":1,"562":1,"567":2,"568":3,"586":2,"591":2,"616":3,"625":6,"670":1,"671":4,"678":1,"718":1,"726":1,"752":1,"758":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1312":2,"1313":1,"1327":1,"1344":1,"1365":6,"1375":3,"1385":1,"1403":1,"1404":2,"1416":2,"1417":1,"1427":1,"1428":3,"1432":4,"1433":1,"1447":1,"1448":1,"1449":3,"1450":1,"1457":6,"1458":5,"1460":4,"1462":1,"1464":1,"1466":5,"1485":2,"1498":1,"1500":1,"1509":1,"1584":1,"1587":1,"1597":1,"1598":2,"1599":2,"1621":2,"1631":1,"1632":20,"1651":1,"1662":1,"1684":1,"1775":2,"1782":1,"1790":2,"1822":2,"1828":1,"1931":5,"1992":1,"1993":11,"1994":1,"2266":3,"2311":1,"2398":1,"2407":2,"2409":4,"2410":16,"2411":2,"2427":1,"2444":2,"2446":1,"2447":1,"2450":2,"2495":4,"2497":2,"2501":1,"2503":1,"2516":1,"2527":2,"2537":1,"2547":2,"2569":4,"2570":2,"2583":5,"2587":2,"2598":1,"2621":2,"2627":7,"2632":3,"2675":2,"2676":2,"2677":1,"2678":1,"2719":1,"2721":2,"2775":4,"2786":1,"2844":1,"2862":1,"2903":1,"2905":3,"2911":4,"2912":7,"2913":4,"2915":1,"2921":4,"2941":1}}],["liability",{"2":{"2740":1}}],["liatris",{"0":{"1394":1},"2":{"222":1,"1386":2,"1388":3,"1396":3,"2706":1,"2888":1}}],["liking",{"0":{"2579":1},"2":{"2172":1}}],["likewise",{"2":{"568":1,"2569":1}}],["likelihood",{"2":{"263":1,"397":1,"751":1,"2719":2}}],["likely",{"2":{"118":1,"132":1,"141":1,"182":1,"201":2,"397":1,"713":1,"751":1,"1362":1,"1635":1,"2041":1,"2178":1,"2287":1,"2390":1,"2499":1,"2594":1,"2605":1,"2678":1,"2688":1,"2694":1,"2719":1,"2746":1,"2754":1,"2884":1}}],["like",{"0":{"1352":1},"2":{"100":1,"114":1,"120":1,"125":3,"137":3,"141":1,"169":2,"175":1,"176":1,"185":3,"189":1,"194":1,"212":1,"230":1,"244":1,"247":1,"263":1,"307":1,"320":1,"335":1,"376":1,"424":1,"503":1,"511":1,"539":1,"542":1,"566":2,"567":1,"572":1,"576":1,"608":1,"611":2,"613":2,"645":1,"654":1,"666":1,"685":1,"754":1,"1197":1,"1296":1,"1300":1,"1308":4,"1327":2,"1329":2,"1340":1,"1351":1,"1355":1,"1369":1,"1373":1,"1375":3,"1377":1,"1402":1,"1406":1,"1407":1,"1409":2,"1415":1,"1416":3,"1417":1,"1435":1,"1436":1,"1440":1,"1442":2,"1444":1,"1450":1,"1457":1,"1458":2,"1460":1,"1465":1,"1475":1,"1479":4,"1484":1,"1485":1,"1487":2,"1504":2,"1513":1,"1521":1,"1522":2,"1532":1,"1540":1,"1550":1,"1551":1,"1584":1,"1585":1,"1587":2,"1588":1,"1589":1,"1591":1,"1599":1,"1608":1,"1619":1,"1624":1,"1660":1,"1662":1,"1664":1,"1760":1,"1773":1,"1781":2,"1782":2,"1788":2,"1827":1,"1845":1,"1913":2,"1917":1,"1932":1,"1933":2,"1958":1,"1987":1,"2047":1,"2068":1,"2074":2,"2156":2,"2159":1,"2170":1,"2174":1,"2185":1,"2186":1,"2202":1,"2204":2,"2266":1,"2269":2,"2285":1,"2293":1,"2297":1,"2302":5,"2306":1,"2310":1,"2312":1,"2322":1,"2324":1,"2374":1,"2375":1,"2383":1,"2398":1,"2408":1,"2409":1,"2411":1,"2416":1,"2419":1,"2420":1,"2421":2,"2423":1,"2424":1,"2440":1,"2443":1,"2457":2,"2459":2,"2461":1,"2476":2,"2516":2,"2565":2,"2566":1,"2576":1,"2577":1,"2578":1,"2614":1,"2621":1,"2627":1,"2644":1,"2645":2,"2656":1,"2673":1,"2679":1,"2684":2,"2695":1,"2713":1,"2721":2,"2722":2,"2724":1,"2732":1,"2744":1,"2748":1,"2778":2,"2788":1,"2882":3,"2883":1,"2904":1,"2912":2,"2913":1,"2918":1,"2921":2,"2923":1,"2927":3,"2929":1,"2931":1,"2932":2,"2937":1,"2938":1,"2941":2}}],["lilypadusb",{"2":{"686":1,"2492":1}}],["lily58",{"0":{"30":1,"31":1},"1":{"31":1},"2":{"30":2}}],["live",{"2":{"458":1,"459":1,"1621":1,"2293":1,"2673":1}}],["lives",{"2":{"99":1,"288":1,"2475":1}}],["licensing",{"0":{"2561":1,"2729":1},"2":{"273":1,"284":1,"408":1,"2688":2,"2727":1}}],["licensed",{"2":{"2458":1,"2728":1}}],["licenses",{"2":{"1461":1,"2719":1,"2725":1,"2728":1,"2729":2,"2738":1,"2743":1}}],["license",{"0":{"2458":1,"2559":1},"1":{"2560":1,"2561":1,"2562":1,"2563":1,"2564":1},"2":{"199":1,"276":1,"308":1,"338":3,"397":1,"1316":1,"1461":5,"1624":3,"2458":2,"2559":1,"2560":2,"2561":4,"2562":1,"2563":2,"2719":7,"2721":2,"2725":5,"2727":1,"2729":3,"2737":1,"2740":1,"2741":1,"2743":1}}],["lights",{"0":{"2308":1},"2":{"646":1,"1424":1,"1459":1,"2202":1,"2203":1}}],["lightweight",{"2":{"279":1}}],["lightcycle",{"2":{"210":1}}],["light",{"0":{"563":1},"2":{"199":1,"210":1,"563":1,"568":1,"645":1,"1539":1,"1960":1,"1972":1,"1975":1,"2063":1,"2065":1,"2074":1,"2175":1,"2176":1,"2178":2,"2181":1,"2182":6,"2203":1,"2271":1,"2274":1,"2308":1,"2436":1,"2651":1,"2721":1,"2751":1,"2819":1,"2838":1,"2870":1,"2887":2}}],["lighting",{"0":{"233":1,"1838":1,"2058":1,"2171":1,"2181":1,"2182":1,"2183":1,"2184":1,"2185":1,"2525":1},"1":{"1839":1,"1840":1,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1847":1,"1848":1,"1849":1,"1850":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1859":1,"1860":1,"1861":1,"1862":1,"1863":1,"1864":1,"1865":1,"1866":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":1,"1899":1,"1900":1,"1901":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":1,"2065":1,"2066":1,"2067":1,"2068":1,"2069":1,"2070":1,"2071":1,"2072":1,"2073":1,"2074":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":1,"2085":1,"2086":1,"2087":1,"2088":1,"2089":1,"2090":1,"2091":1,"2092":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":1,"2123":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2142":1,"2143":1,"2144":1,"2145":1,"2146":1,"2147":1,"2148":1,"2149":1,"2150":1,"2151":1,"2152":1,"2153":1,"2154":1,"2155":1,"2172":1,"2173":1,"2174":1,"2175":1,"2176":1,"2177":1,"2178":1,"2179":1,"2180":1,"2181":1,"2182":2,"2183":2,"2184":2,"2185":2,"2186":2,"2187":1,"2188":1,"2189":1,"2190":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1},"2":{"114":1,"191":1,"209":1,"233":1,"236":3,"244":1,"249":2,"266":1,"308":1,"316":1,"460":1,"563":4,"1389":1,"1390":1,"1458":1,"2171":1,"2172":1,"2174":1,"2175":3,"2176":1,"2181":2,"2182":2,"2183":2,"2184":2,"2185":4,"2186":2,"2187":1,"2196":2,"2202":1,"2525":2,"2750":1,"2798":1,"2870":2,"2900":2}}],["little",{"2":{"191":1,"644":1,"685":1,"1362":1,"1493":1,"1497":2,"1513":2,"1517":1,"1532":1,"2302":1,"2303":1,"2309":1,"2317":1,"2398":2,"2421":1,"2610":1,"2758":1,"2766":1}}],["lithuanian",{"2":{"176":2,"2880":6}}],["literal",{"2":{"145":2,"669":1,"1444":1}}],["literals",{"2":{"114":1,"191":1,"2221":1}}],["lite",{"0":{"245":1,"622":1},"2":{"87":3,"88":3,"93":1,"103":4,"104":3,"112":1,"126":5,"127":3,"134":1,"160":2,"245":2,"249":2,"317":1,"328":1,"622":1,"2721":3,"2865":2}}],["liftoff",{"2":{"1976":2}}],["lifted",{"2":{"1779":1,"1976":1}}],["lifting",{"2":{"1770":1,"2609":1}}],["lift",{"2":{"175":1,"1976":1,"1978":2}}],["life",{"2":{"123":1,"307":1,"608":1,"1406":1,"2178":1,"2724":1}}],["lime",{"2":{"134":1}}],["limitation",{"2":{"692":1,"1512":1,"2483":1,"2568":1,"2662":1}}],["limitations",{"0":{"573":1,"1493":1,"2658":1},"1":{"2659":1,"2660":1,"2661":1,"2662":1},"2":{"293":1,"305":1,"314":1,"609":1,"1300":1,"2255":1,"2287":1,"2318":1,"2411":1,"2726":1,"2728":2,"2741":1}}],["limits",{"0":{"658":1},"2":{"176":2,"236":1,"285":2,"294":1,"573":1,"716":1,"1844":2,"1846":3,"1978":1,"2066":2,"2069":3,"2662":1,"2864":2,"2871":2}}],["limiting",{"2":{"114":1,"427":1,"1846":1,"2069":1,"2452":1,"2678":1,"2679":1}}],["limited",{"0":{"591":1,"2662":1},"2":{"92":1,"130":1,"174":1,"306":1,"315":1,"590":1,"613":1,"617":1,"687":1,"716":1,"1319":1,"1346":1,"1406":1,"1417":2,"1522":1,"1656":1,"1771":1,"2074":1,"2161":1,"2212":1,"2270":1,"2322":1,"2367":1,"2389":1,"2468":1,"2473":3,"2474":1,"2566":1,"2632":1,"2724":1,"2881":1,"2895":1}}],["limit",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"63":1,"114":1,"145":2,"176":1,"191":1,"210":1,"236":1,"393":1,"538":1,"627":1,"655":1,"716":1,"752":1,"759":1,"1410":1,"1538":1,"1675":2,"1844":1,"1846":2,"1951":1,"2064":3,"2066":1,"2069":2,"2175":2,"2447":2,"2747":1,"2864":2,"2871":2,"2885":1}}],["linx",{"2":{"2325":1,"2533":1}}],["linworks",{"2":{"191":1,"266":1}}],["lingering",{"2":{"191":3,"199":1}}],["linux1",{"2":{"2503":1}}],["linux",{"0":{"421":1,"1312":1,"1313":1,"1314":1},"1":{"1313":1,"1314":1},"2":{"143":1,"210":1,"1312":1,"1313":1,"1323":1,"1329":2,"1358":1,"1778":1,"1937":1,"1938":1,"2009":1,"2050":1,"2320":1,"2321":1,"2324":3,"2325":2,"2337":1,"2338":1,"2339":1,"2401":1,"2495":1,"2499":1,"2503":1,"2533":2,"2606":1,"2612":1,"2613":1,"2619":2,"2620":1,"2637":1,"2676":2,"2710":1,"2732":1,"2880":2}}],["linting",{"0":{"499":1,"500":1,"504":1},"1":{"500":1,"501":1,"502":1,"503":1,"504":1}}],["lint",{"0":{"438":1,"2441":1},"2":{"134":1,"145":1,"191":1,"199":1,"236":1,"249":1,"266":1,"294":1,"308":4,"317":1,"328":1,"333":2,"338":3,"397":1,"438":3,"499":1,"504":1,"2441":5}}],["linear",{"2":{"1679":2,"2770":3}}],["linebreak",{"2":{"519":1}}],["lined",{"2":{"348":1,"510":1}}],["lines",{"0":{"336":1},"2":{"64":1,"113":1,"138":1,"222":1,"272":1,"273":1,"277":1,"510":2,"512":2,"519":1,"525":1,"538":1,"613":1,"645":1,"718":1,"1387":1,"1444":1,"1663":2,"1693":3,"1956":5,"2031":1,"2283":4,"2287":1,"2288":1,"2289":1,"2290":1,"2490":1,"2497":1,"2578":2,"2710":1,"2750":1}}],["line",{"0":{"1705":1,"2609":1,"2637":1},"1":{"1706":1},"2":{"45":1,"65":1,"112":1,"114":2,"118":2,"142":1,"199":1,"226":2,"236":1,"249":1,"264":1,"274":1,"277":1,"282":1,"285":1,"292":1,"301":1,"302":1,"313":1,"326":1,"338":3,"348":2,"419":1,"456":3,"457":1,"468":1,"471":1,"487":1,"494":1,"510":4,"511":1,"514":1,"516":2,"519":3,"525":3,"530":1,"613":2,"620":1,"1194":1,"1202":1,"1249":1,"1294":1,"1330":1,"1389":1,"1393":2,"1400":1,"1404":1,"1412":1,"1413":1,"1432":1,"1459":1,"1599":3,"1606":1,"1654":2,"1693":2,"1706":2,"1707":1,"1926":1,"1956":5,"1958":1,"2031":1,"2213":1,"2283":3,"2291":1,"2313":1,"2376":1,"2379":1,"2381":2,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2398":2,"2410":1,"2416":1,"2421":1,"2459":2,"2497":2,"2578":3,"2582":1,"2600":1,"2606":2,"2612":1,"2627":2,"2632":2,"2637":1,"2646":1,"2666":1,"2669":1,"2671":1,"2684":1,"2703":1,"2707":1,"2750":7,"2760":1,"2776":1,"2795":1,"2796":1,"2809":1,"2916":1,"2920":1,"2942":2}}],["linkid=830387",{"2":{"2676":1}}],["linking",{"2":{"236":2,"335":1,"570":2,"1362":1,"2451":1,"2560":1,"2580":1,"2622":1,"2727":1,"2734":4}}],["link007",{"2":{"2499":1}}],["linked",{"2":{"236":1,"570":1,"2451":1,"2494":1,"2727":1,"2862":1}}],["linker",{"2":{"114":1}}],["links",{"0":{"2429":1},"2":{"199":1,"335":2,"387":1,"407":1,"659":1,"1337":1,"1379":1,"1532":1,"2423":1,"2430":1,"2445":1,"2476":1,"2502":1,"2560":1,"2721":1}}],["link",{"2":{"10":2,"50":1,"93":1,"94":1,"114":1,"133":1,"134":2,"277":1,"383":2,"405":1,"570":2,"614":1,"678":1,"1310":1,"1342":1,"1532":2,"1533":1,"2039":2,"2387":4,"2398":2,"2417":4,"2498":1,"2499":2,"2500":2,"2501":4,"2651":1,"2669":1,"2719":1,"2721":3,"2847":1,"2882":1}}],["libusbk",{"2":{"686":1}}],["libusb",{"2":{"240":3}}],["liberal",{"2":{"512":1,"528":1}}],["liberally",{"2":{"510":1,"512":1}}],["liber",{"2":{"154":2,"160":1}}],["libc",{"2":{"114":1,"743":1,"2882":1}}],["lib8tion",{"2":{"114":1,"308":1}}],["libraries",{"0":{"2726":1,"2732":1,"2738":1,"2741":1},"1":{"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1},"2":{"30":1,"33":1,"2050":1,"2560":1,"2726":3,"2728":4,"2730":1,"2731":1,"2732":2,"2734":2,"2737":1,"2739":1,"2742":1,"2743":2,"2896":1}}],["library",{"0":{"1521":1,"1680":1,"2728":1,"2730":1,"2731":1},"1":{"1522":1,"2731":1,"2732":1},"2":{"30":2,"145":1,"471":1,"472":1,"474":1,"480":1,"481":1,"536":1,"570":1,"759":2,"1520":3,"1521":2,"1680":1,"2050":2,"2051":1,"2052":1,"2728":1,"2730":1,"2734":1,"2740":1,"2741":1,"2751":2}}],["lib",{"2":{"6":1,"75":1,"113":1,"114":1,"234":2,"338":3,"405":2,"416":1,"487":2,"503":1,"540":1,"541":1,"542":2,"570":8,"664":3,"670":1,"671":3,"2398":4,"2677":1,"2728":1}}],["lists",{"0":{"338":1,"525":1},"2":{"439":1,"440":1,"452":1,"531":1,"683":1}}],["listings",{"2":{"222":1,"2676":1}}],["listing",{"2":{"160":1,"428":1,"678":1,"1438":1}}],["listed",{"2":{"43":1,"120":1,"215":1,"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"420":1,"423":1,"511":1,"566":1,"631":1,"637":1,"713":1,"716":1,"763":1,"1417":1,"1421":1,"1622":1,"1956":1,"2263":1,"2302":1,"2490":1,"2495":1,"2496":1,"2602":1,"2687":1,"2705":1,"2746":1,"2877":1,"2933":1}}],["listening",{"2":{"1326":1,"1329":2,"2211":1}}],["listen",{"0":{"1323":1,"1329":1,"2812":1},"2":{"34":1,"560":1,"1323":1,"1329":4,"1330":1,"2271":1,"2411":2,"2812":1}}],["list",{"0":{"71":1,"439":1,"440":1,"452":1,"686":1,"2414":1,"2473":1,"2782":1},"1":{"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"0":1,"19":1,"76":1,"93":1,"114":1,"116":1,"120":1,"124":1,"134":3,"142":1,"160":2,"172":1,"182":1,"186":1,"188":2,"189":1,"191":2,"199":1,"213":1,"215":1,"222":1,"233":2,"234":1,"249":1,"272":1,"279":1,"288":1,"298":1,"316":1,"348":1,"369":1,"372":3,"373":1,"387":1,"397":1,"431":3,"432":1,"439":1,"440":1,"450":1,"451":1,"452":2,"453":1,"467":5,"514":1,"524":1,"570":3,"594":1,"669":1,"683":2,"686":1,"720":1,"1340":1,"1375":2,"1435":1,"1440":2,"1464":1,"1479":5,"1596":1,"1599":2,"1606":1,"1627":1,"1649":1,"1680":1,"1759":1,"1782":2,"1839":1,"1941":1,"2050":1,"2059":1,"2067":1,"2159":1,"2182":3,"2184":1,"2187":1,"2192":4,"2198":1,"2270":1,"2293":1,"2320":1,"2324":2,"2428":1,"2469":1,"2472":1,"2473":1,"2549":2,"2555":1,"2556":1,"2563":1,"2564":1,"2576":2,"2578":2,"2579":1,"2590":1,"2599":1,"2600":2,"2603":1,"2622":2,"2627":4,"2656":1,"2677":1,"2687":1,"2688":1,"2709":1,"2710":3,"2717":1,"2719":1,"2721":1,"2766":1,"2788":1,"2845":1,"2850":1,"2856":2,"2858":1,"2861":2,"2862":2,"2864":2,"2865":3,"2871":2,"2872":1,"2895":1,"2899":1,"2921":2}}],["sz",{"2":{"2324":1}}],["s2",{"2":{"2289":1,"2294":2}}],["s2m",{"2":{"2270":9}}],["s1",{"2":{"2289":1,"2294":2}}],["sg",{"2":{"1375":1}}],["sgk50",{"2":{"294":1}}],["sbin",{"2":{"1313":1}}],["s4",{"2":{"294":1}}],["svc",{"2":{"2729":1,"2734":1,"2737":1,"2743":1}}],["svd",{"2":{"2676":5}}],["svdfile",{"2":{"2676":2}}],["svlinky",{"0":{"1395":1},"2":{"285":1,"1386":1,"1388":3,"1395":1,"2707":1}}],["svnroot",{"2":{"414":1}}],["svn",{"2":{"114":1,"160":1,"414":8}}],["sfbs",{"0":{"2161":1}}],["sf",{"2":{"222":1}}],["sftent",{"2":{"2252":3,"2253":1}}],["sftllck",{"2":{"1828":4}}],["sft",{"2":{"195":1,"1599":2,"2523":1,"2565":1,"2903":1,"2905":1,"2911":3,"2914":6,"2918":8}}],["s65",{"2":{"222":1}}],["sram",{"2":{"2501":3}}],["srand",{"2":{"1949":1,"2279":1}}],["sr",{"2":{"2294":3}}],["srst",{"2":{"391":1}}],["srom",{"2":{"273":2,"277":1}}],["sriwedari70",{"2":{"222":1}}],["src",{"2":{"75":1,"114":1,"133":1,"134":1,"160":1,"234":9,"236":1,"427":1,"570":8,"671":2,"722":1,"798":2,"827":2,"853":2,"885":2,"917":2,"952":2,"986":2,"1020":2,"1054":2,"1088":2,"1122":2,"1156":2,"1212":2,"1414":1,"1458":4,"1627":1,"2447":1,"2598":1,"2937":1}}],["s3",{"2":{"210":1,"359":2,"360":1,"363":1,"576":1,"2294":1}}],["sq",{"2":{"2215":9,"2216":12}}],["sq80",{"2":{"249":1}}],["sqrt",{"2":{"210":1}}],["squash",{"2":{"617":1}}],["square",{"2":{"210":1,"718":1,"1474":2,"1482":1}}],["squigglies",{"2":{"427":1}}],["squigglybob",{"2":{"210":1}}],["squiggle",{"2":{"154":2}}],["squishytkl",{"2":{"197":2}}],["squishy65",{"2":{"197":2}}],["squeeze",{"2":{"145":1,"543":1,"673":1}}],["squeezing",{"0":{"123":1,"2881":1},"1":{"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"134":1,"2894":1,"2900":1}}],["sdep",{"2":{"2368":1}}],["sdio",{"2":{"1960":2,"1972":2,"1975":2,"1978":3}}],["sd",{"2":{"1599":4}}],["sd2",{"2":{"1266":1}}],["sd3",{"2":{"1200":2}}],["sd1",{"2":{"1200":1,"1266":2}}],["sdb",{"2":{"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1}}],["sdk",{"2":{"191":1,"199":1,"308":1,"2738":1}}],["sdadel",{"2":{"767":1}}],["sda",{"2":{"176":1,"764":2,"765":4,"800":1,"855":1,"887":1,"919":8,"954":8,"988":1,"1022":1,"1056":1,"1090":8,"1124":8,"1158":8,"1214":1,"1676":1,"2260":1,"2702":1}}],["ssh",{"2":{"2595":1,"2601":1}}],["ssion",{"2":{"2170":1}}],["ssp",{"2":{"1191":3}}],["ssk",{"2":{"218":3}}],["ss",{"2":{"176":2,"196":2,"1244":5,"1249":1,"1440":1,"1442":24,"1444":1,"1785":2,"1791":4,"2221":4,"2224":1,"2225":2,"2281":1}}],["ssd1351",{"2":{"176":1,"2746":2,"2749":7}}],["ssd1306oled",{"2":{"31":3,"34":3,"208":1}}],["ssd1306",{"0":{"1957":1,"2435":1},"2":{"30":1,"33":1,"50":1,"138":1,"176":1,"208":2,"209":2,"248":1,"249":1,"1945":5,"1947":3,"1951":1,"1954":1,"1955":3,"1956":2,"2435":1,"2746":2,"2749":2}}],["snek",{"2":{"2322":3}}],["snes",{"2":{"236":1}}],["sn",{"2":{"2174":1,"2525":1}}],["snippers",{"2":{"2414":1}}],["snippet",{"2":{"1657":1,"2037":1}}],["snip>",{"2":{"373":1}}],["sn74lv1t34",{"2":{"1295":1}}],["sn74x138",{"2":{"145":1,"159":1,"160":1}}],["sn74x154",{"2":{"145":1}}],["snled27351",{"0":{"1211":1,"1218":1,"1220":1,"1222":1,"1224":1,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1240":1},"1":{"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":2,"1220":1,"1221":2,"1222":1,"1223":2,"1224":1,"1225":2,"1226":1,"1227":2,"1228":1,"1229":2,"1230":1,"1231":2,"1232":1,"1233":2,"1234":1,"1235":2,"1236":1,"1237":2,"1238":1,"1239":2,"1240":1,"1241":2},"2":{"236":2,"249":1,"1211":1,"1212":4,"1213":7,"1214":6,"1216":6,"1226":1,"1227":1,"1230":1,"1231":1,"1234":1,"1235":1,"1236":1,"1237":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["snowe",{"2":{"191":1}}],["snprintf",{"2":{"191":1,"2882":3,"2886":1}}],["snapping",{"2":{"1979":1}}],["snapshot",{"2":{"611":1}}],["snap",{"2":{"277":1}}],["snake",{"2":{"145":1,"2174":2,"2176":2,"2177":2,"2178":2,"2180":2,"2203":1,"2525":2,"2870":1,"2887":1}}],["snagpad",{"2":{"43":2}}],["skeleton",{"2":{"2585":1}}],["skeletyl",{"2":{"311":8,"317":1}}],["sketches",{"2":{"2492":1}}],["sketch",{"2":{"2479":1}}],["skewed",{"2":{"1486":1}}],["sk6805",{"2":{"1280":1,"1284":1,"2171":1}}],["sk6812rgbw",{"2":{"1285":1}}],["sk6812mini",{"2":{"1280":1,"2171":1}}],["sk6812",{"2":{"1280":1,"1284":1,"2171":1}}],["skully",{"2":{"481":1}}],["skullydazed",{"2":{"111":1,"2845":1}}],["skills",{"2":{"614":1,"1788":1,"2047":1}}],["skiller",{"2":{"294":1}}],["skips",{"2":{"1441":2,"1659":1,"1968":1,"1993":2,"2503":1}}],["skipped",{"2":{"277":1,"2303":1}}],["skipping",{"2":{"240":1,"654":1,"2303":1}}],["skip",{"2":{"49":1,"65":1,"114":1,"160":1,"176":1,"202":1,"307":2,"328":1,"628":1,"629":1,"1195":1,"1198":1,"1407":1,"1527":1,"1964":1,"1968":1,"2401":1,"2416":1,"2497":1,"2542":2,"2554":1,"2593":1,"2606":1,"2627":2,"2651":1,"2652":1,"2900":1}}],["skyloong",{"2":{"210":1,"236":4,"294":1}}],["slct",{"2":{"2503":1,"2541":1}}],["sl",{"2":{"2294":2}}],["slep",{"2":{"1348":1,"2503":1,"2542":1}}],["sleeping",{"2":{"1619":1,"2411":1}}],["sleep",{"0":{"1367":1,"1373":1},"2":{"70":1,"73":1,"93":1,"190":2,"191":1,"210":1,"249":2,"317":1,"645":1,"1367":1,"1373":1,"1619":1,"1846":1,"2069":1,"2175":2,"2411":1,"2503":2,"2542":2,"2864":2,"2870":2,"2871":2}}],["slovenian",{"2":{"2880":3}}],["slovak",{"2":{"2880":3}}],["slows",{"2":{"1978":1}}],["slowdown",{"2":{"1955":1}}],["slower",{"2":{"1951":1,"1990":1,"2216":1,"2217":1,"2591":1}}],["slowest",{"2":{"1931":1,"1932":1,"1956":1,"2873":1}}],["slowly",{"2":{"1949":1,"2063":1,"2279":1}}],["slow",{"2":{"563":1,"1410":2,"1484":1,"1675":1,"1929":1,"1962":1,"1979":1,"2182":1,"2619":1,"2757":1}}],["slots",{"2":{"206":1}}],["slsh",{"2":{"369":1,"587":2,"2374":1,"2503":1,"2537":1,"2556":1,"2915":1,"2916":1,"2920":1,"2923":1}}],["sla0044",{"2":{"2729":1,"2738":1}}],["slash",{"2":{"1619":1,"1686":1,"2442":1,"2503":2,"2537":1,"2543":1}}],["slashes",{"2":{"160":1}}],["slated",{"2":{"750":1}}],["slate",{"2":{"616":1,"2721":1}}],["slavepin",{"0":{"1248":1},"1":{"1249":1,"1250":1},"2":{"1245":1,"1249":1}}],["slave",{"2":{"74":1,"92":1,"93":1,"107":1,"222":1,"566":2,"568":13,"747":2,"756":2,"920":3,"1091":3,"1125":3,"1197":2,"1244":1,"1245":2,"1262":1,"1829":1,"2036":1,"2074":1,"2184":1,"2191":4,"2254":1,"2268":4,"2269":8,"2270":24,"2271":7,"2272":1,"2281":1,"2371":1}}],["slim",{"2":{"2064":1,"2381":1}}],["sliding",{"2":{"1933":1}}],["slicing",{"2":{"1478":1}}],["slightly",{"2":{"617":1,"698":1,"1196":1,"1211":1,"1283":1,"1487":1,"1490":1,"1608":1,"1675":1,"1987":1,"2262":1,"2372":1,"2491":1,"2496":1,"2721":1,"2912":1}}],["slight",{"2":{"160":1,"236":1,"2063":3}}],["slipped",{"2":{"95":1}}],["smith",{"2":{"2707":1}}],["smithrune",{"2":{"222":1}}],["smp",{"2":{"698":1}}],["smpr",{"2":{"698":1}}],["smartmmd",{"2":{"2560":1}}],["smart",{"2":{"608":1}}],["smallest",{"2":{"2719":1,"2722":1}}],["smaller",{"2":{"134":1,"166":1,"248":1,"249":2,"538":1,"1675":1,"1956":1,"2288":1,"2719":1,"2749":3,"2882":2,"2896":1}}],["smallice",{"2":{"144":2}}],["small",{"0":{"25":1},"2":{"138":1,"174":1,"191":2,"222":1,"277":1,"294":1,"420":1,"538":1,"570":1,"1280":1,"1511":1,"1519":1,"1520":1,"1616":1,"1673":1,"1929":1,"1932":1,"2171":1,"2273":2,"2386":1,"2414":1,"2417":1,"2420":2,"2422":1,"2456":1,"2560":1,"2562":1,"2579":1,"2633":1,"2934":1}}],["smoke",{"2":{"2421":2}}],["smoothly",{"2":{"2372":1}}],["smoothed",{"2":{"2372":1}}],["smoother",{"2":{"74":1,"562":1,"1929":1,"1930":1,"1979":1}}],["smoothing",{"2":{"1979":2}}],["smoothness",{"2":{"1930":1,"2372":1}}],["smooth1",{"2":{"1680":12}}],["smooth2",{"2":{"1680":12}}],["smooth",{"2":{"308":1,"317":1,"409":1,"1680":5,"1933":1,"1979":1,"2063":3,"2625":1}}],["smoll",{"2":{"241":4,"249":1}}],["smolka",{"2":{"222":1}}],["syllabus",{"0":{"2898":1},"2":{"2574":1}}],["syllable",{"2":{"2284":2}}],["syrq",{"2":{"2503":1,"2541":1}}],["sysreq",{"2":{"2503":1,"2541":1}}],["sys",{"2":{"2052":2}}],["syscalls",{"2":{"308":1}}],["sysclk",{"2":{"134":1}}],["sysex",{"2":{"114":1,"133":1,"134":1}}],["systemctl",{"2":{"1313":2}}],["systemd",{"2":{"1313":1}}],["systems",{"0":{"424":1},"2":{"134":1,"234":1,"424":1,"649":1,"1348":1,"1466":1,"1913":1,"2318":1,"2323":1,"2410":2,"2474":1,"2739":1,"2743":1,"2758":1,"2766":1,"2882":1,"2923":1}}],["system",{"0":{"151":1,"508":1,"509":1,"1366":1,"2471":1,"2672":1,"2730":1,"2731":1,"2894":1},"1":{"2731":1,"2732":1},"2":{"49":2,"75":1,"76":1,"84":1,"93":1,"114":1,"160":1,"176":1,"231":3,"232":1,"234":1,"249":1,"262":2,"272":1,"283":1,"293":2,"305":2,"314":2,"423":1,"459":1,"470":1,"491":1,"508":1,"514":1,"536":1,"537":1,"572":1,"646":1,"662":1,"671":1,"683":1,"718":1,"743":1,"749":1,"1289":1,"1313":1,"1348":1,"1366":1,"1624":1,"1626":1,"1838":1,"1840":1,"1847":1,"1928":1,"1929":1,"1958":1,"1981":1,"1983":1,"1986":2,"2009":1,"2050":1,"2058":1,"2060":1,"2070":1,"2218":1,"2253":1,"2260":1,"2287":1,"2324":2,"2371":1,"2398":1,"2399":1,"2409":1,"2411":2,"2470":1,"2471":1,"2474":1,"2503":8,"2541":2,"2542":7,"2583":2,"2587":1,"2594":1,"2605":1,"2646":1,"2651":1,"2671":1,"2692":1,"2710":1,"2727":1,"2730":1,"2731":1,"2732":3,"2735":1,"2746":1,"2750":1,"2802":1,"2811":1,"2877":1,"2882":1,"2894":1,"2912":1,"2913":1}}],["systick",{"0":{"11":1},"2":{"11":2}}],["symb",{"2":{"2787":1}}],["symbol",{"2":{"387":1,"1500":1,"2176":2,"2323":2,"2365":1,"2459":1,"2473":1,"2545":1}}],["symbolic",{"2":{"236":1,"1509":1}}],["symbols",{"0":{"1500":1,"1509":1,"2527":1,"2545":1},"1":{"2546":1,"2547":1},"2":{"176":2,"1504":2,"1510":1,"2322":1,"2411":1,"2502":1,"2527":1}}],["symmetric",{"2":{"1410":2,"2161":1}}],["symmetric70",{"2":{"114":1,"134":1}}],["symlink",{"0":{"508":1},"2":{"508":1,"509":1}}],["symlinks",{"2":{"459":1}}],["sym",{"2":{"94":1,"160":1,"199":1,"236":2,"1410":3,"1413":8,"2323":4,"2847":5}}],["synapse",{"2":{"241":2}}],["synth",{"2":{"1474":2}}],["synthesis",{"2":{"1474":1}}],["synthesis60",{"2":{"222":1}}],["syntaxwarning",{"2":{"249":1}}],["syntax",{"2":{"92":1,"176":1,"191":1,"285":1,"431":1,"1521":1,"2410":1,"2495":1,"2572":1,"2600":1,"2632":1,"2905":2}}],["synchronous",{"2":{"2036":1}}],["synchronizes",{"2":{"2269":1}}],["synchronized",{"2":{"920":1,"1091":1,"1125":1}}],["synchronization",{"0":{"920":1,"1091":1,"1125":1},"2":{"920":1,"1091":1,"1125":1,"2175":1,"2268":1,"2271":1,"2870":1}}],["synchronizing",{"2":{"568":1}}],["synced",{"2":{"1829":1,"2074":1,"2184":1}}],["syncs",{"2":{"568":2}}],["syncing",{"2":{"328":1,"2073":1,"2269":4}}],["sync",{"0":{"1631":1,"2269":1,"2270":1,"2628":1},"1":{"2629":1,"2630":1},"2":{"74":1,"107":1,"112":2,"114":4,"210":1,"222":1,"236":2,"249":2,"285":1,"333":1,"563":1,"568":3,"918":12,"920":5,"1089":12,"1091":5,"1123":12,"1125":5,"1168":2,"1466":1,"1631":1,"1829":1,"1980":1,"2073":1,"2074":1,"2182":1,"2184":1,"2268":3,"2269":1,"2270":16,"2625":1,"2630":1,"2873":1}}],["s7",{"2":{"67":4,"72":1}}],["schottky",{"2":{"2273":2}}],["school",{"2":{"2258":1,"2719":1}}],["scheikled",{"2":{"210":1}}],["schemes",{"2":{"692":1,"2839":2}}],["scheme",{"2":{"182":1,"2467":1,"2760":3,"2770":3}}],["schemas",{"2":{"191":1,"308":1,"338":1,"664":1,"666":1,"2844":1}}],["schematics",{"2":{"1368":1}}],["schematic",{"0":{"1552":1,"2467":1},"2":{"93":1,"1310":1,"1364":1,"1368":2}}],["schema",{"0":{"666":1,"2765":1},"2":{"76":2,"160":1,"176":3,"199":1,"210":1,"249":1,"266":2,"277":1,"308":1,"338":1,"664":1,"2721":1,"2844":1}}],["scheduled",{"2":{"395":1,"655":1,"658":1,"2757":1}}],["schedule",{"0":{"88":1,"104":1,"127":1,"170":1},"2":{"184":1}}],["score",{"2":{"2371":1,"2374":1}}],["scope",{"2":{"2009":1,"2212":1,"2728":1,"2929":1,"2930":1}}],["scottoalp",{"2":{"266":1}}],["scottostarter",{"2":{"205":2}}],["scottocmd",{"2":{"205":2}}],["scotto9",{"2":{"205":2}}],["scottokeebs",{"2":{"205":5}}],["scotto36",{"2":{"205":2}}],["scotto40",{"2":{"199":1,"205":2}}],["sck",{"2":{"1244":2,"1245":4,"1296":4,"2661":1,"2702":1,"2749":2}}],["scenario",{"2":{"312":1,"1326":1,"1328":1,"2293":1,"2459":1,"2552":1,"2562":1}}],["scenarios",{"2":{"263":1,"720":1,"2459":1,"2561":1,"2907":1}}],["scenes",{"2":{"198":1,"201":1,"212":1,"224":1,"238":1,"251":1,"2303":1}}],["science",{"2":{"199":1}}],["sclr",{"2":{"2216":1}}],["sclk",{"2":{"1960":2,"1972":2,"1975":2,"1978":3,"2476":1,"2478":1,"2480":2,"2482":1,"2484":2,"2486":2,"2488":1}}],["scll",{"2":{"767":1}}],["sclh",{"2":{"767":1}}],["scldel",{"2":{"767":1}}],["scln",{"2":{"176":1,"369":1,"587":2,"1587":1,"2309":1,"2503":1,"2537":1,"2556":1,"2915":1,"2916":1}}],["scl",{"2":{"176":1,"559":1,"764":3,"765":4,"800":1,"855":1,"887":1,"919":8,"954":8,"988":1,"1022":1,"1056":1,"1090":8,"1124":8,"1158":8,"1214":1,"1676":1,"2260":1,"2702":1}}],["scythe",{"2":{"154":2}}],["scylla",{"2":{"114":1,"311":8,"317":1}}],["scary",{"2":{"2936":1}}],["scarlet",{"2":{"222":1}}],["scarletbandana",{"2":{"154":2}}],["scattered",{"2":{"2934":1}}],["scaling",{"0":{"876":1,"878":1,"882":1,"1079":1,"1081":1,"1085":1,"1113":1,"1115":1,"1119":1,"1147":1,"1149":1,"1153":1,"1181":1,"1183":1,"1187":1},"1":{"877":1,"879":1,"883":1,"1080":1,"1082":1,"1086":1,"1114":1,"1116":1,"1120":1,"1148":1,"1150":1,"1154":1,"1182":1,"1184":1,"1188":1},"2":{"176":1,"249":2,"723":2,"876":2,"877":3,"878":2,"879":1,"882":1,"1079":2,"1080":3,"1081":2,"1082":1,"1085":1,"1113":2,"1114":3,"1115":2,"1116":1,"1119":1,"1147":2,"1148":3,"1149":2,"1150":1,"1153":1,"1181":2,"1182":3,"1183":2,"1184":1,"1187":1,"1486":1,"1968":1,"2039":3}}],["scaled",{"2":{"1736":2,"2850":1,"2864":1,"2870":1,"2871":1}}],["scale8",{"2":{"308":1}}],["scale",{"2":{"176":1,"191":1,"199":1,"1484":5,"1486":1,"1974":1,"2064":1,"2722":1}}],["scancode",{"0":{"2833":1},"2":{"2469":2,"2470":1}}],["scancodes",{"2":{"1354":1,"2469":2,"2556":1,"2839":1}}],["scans",{"2":{"1410":2,"1421":1}}],["scanned",{"2":{"698":1,"1326":1,"1328":1,"2459":10}}],["scanning",{"0":{"641":1,"2929":1},"1":{"642":1,"643":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"49":1,"134":1,"266":1,"572":1,"620":1,"622":2,"623":3,"641":1,"643":1,"716":1,"717":1,"1410":4,"1675":1,"2262":1,"2411":1,"2459":1,"2687":1,"2757":1,"2775":1,"2865":2,"2928":1,"2929":4,"2930":2,"2932":2}}],["scanf",{"2":{"390":1}}],["scan",{"0":{"642":1,"643":1,"1328":1},"2":{"31":1,"65":1,"93":2,"112":1,"113":1,"114":1,"160":2,"176":2,"196":1,"199":2,"202":1,"277":1,"333":1,"622":1,"623":5,"643":3,"644":2,"645":1,"684":1,"1328":7,"1410":2,"1413":1,"1414":1,"1456":1,"1585":5,"1675":2,"1951":1,"1974":1,"2268":1,"2269":1,"2281":1,"2291":1,"2377":1,"2384":1,"2449":1,"2468":1,"2556":1,"2931":1,"2932":3}}],["sculpt",{"2":{"145":1,"160":1}}],["sc",{"2":{"55":11,"2249":7,"2250":7,"2252":1,"2253":1,"2531":7}}],["scratch",{"2":{"2410":1,"2651":1}}],["scr",{"2":{"1947":1,"2277":1}}],["scrutiny",{"2":{"408":1}}],["scrl",{"2":{"369":1,"587":2,"1351":1,"2503":1,"2538":1,"2557":1}}],["scrollwheel",{"2":{"2039":1}}],["scrolls",{"2":{"1951":1}}],["scroll",{"0":{"1986":2,"1987":1,"2041":1,"2043":1},"2":{"175":1,"176":3,"188":1,"191":1,"199":1,"210":1,"236":2,"308":1,"568":1,"1687":1,"1829":1,"1830":2,"1832":1,"1924":1,"1928":5,"1929":3,"1931":13,"1932":1,"1947":1,"1950":2,"1951":3,"1956":7,"1965":3,"1968":1,"1970":5,"1971":3,"1978":3,"1979":11,"1985":1,"1986":4,"1987":25,"1990":1,"2039":3,"2041":15,"2043":1,"2277":1,"2280":1,"2503":4,"2538":4,"2860":2,"2928":1}}],["scrolling",{"0":{"1979":1},"2":{"48":1,"175":1,"308":1,"1487":1,"1843":6,"1928":2,"1929":4,"1930":1,"1931":1,"1945":4,"1950":1,"1956":17,"1965":1,"1979":8,"1983":2,"1985":1,"1986":5,"1987":18,"1988":1,"1989":8,"1990":1,"2039":1,"2041":2,"2063":9}}],["screw",{"2":{"114":1}}],["screens",{"2":{"649":1,"1956":1,"2432":1}}],["screen",{"0":{"1770":1},"2":{"34":1,"138":1,"568":1,"1487":1,"1636":1,"1688":1,"1770":1,"1933":1,"1948":1,"1949":1,"1951":3,"1955":2,"1956":12,"1957":1,"2269":2,"2278":1,"2279":1,"2281":1,"2283":11,"2503":2,"2541":2,"2580":1,"2652":1,"2655":1,"2750":11}}],["script",{"2":{"94":1,"114":2,"134":1,"160":3,"191":1,"199":1,"277":1,"285":1,"312":1,"391":2,"485":1,"487":2,"508":1,"509":1,"682":1,"1315":1,"2384":1,"2401":1,"2619":1}}],["scripts",{"2":{"10":1,"222":1,"312":1,"391":2}}],["shcurl",{"2":{"2616":1,"2618":1,"2619":1}}],["shcd",{"2":{"1622":1,"2585":1,"2586":1}}],["shqmk",{"2":{"1385":1,"1521":1,"2576":2,"2577":2,"2580":2,"2587":1,"2589":1,"2609":2,"2621":4,"2622":2}}],["sheer",{"2":{"2895":1}}],["sheet",{"2":{"713":2,"718":2,"1477":1}}],["shenzhen",{"2":{"2560":1}}],["she",{"2":{"1667":1}}],["shell",{"2":{"116":1,"176":1,"249":1,"430":2,"485":1,"2162":1,"2404":1,"2671":1}}],["shade",{"2":{"2748":4}}],["shades",{"2":{"2064":1}}],["shall",{"2":{"2302":1,"2721":1}}],["shapes",{"2":{"2778":1}}],["shaped",{"2":{"2271":1}}],["shapped",{"2":{"2063":1}}],["sha",{"2":{"586":2}}],["sha1",{"2":{"405":1}}],["shandoncodes",{"2":{"241":5,"249":1}}],["shark",{"2":{"2560":1}}],["sharkropad",{"2":{"328":1}}],["sharp2",{"2":{"1680":12}}],["sharp1",{"2":{"1680":12}}],["sharp",{"2":{"1680":8,"1919":30,"2414":1,"2520":30}}],["sharing",{"0":{"1457":1},"1":{"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1},"2":{"107":1,"1340":1,"1624":1,"1664":1,"2713":1}}],["shares",{"2":{"1586":1,"2727":1}}],["share",{"2":{"63":1,"472":1,"1340":1,"1433":1,"1457":1,"1461":1,"1656":1,"1664":2,"1665":1,"2443":1,"2559":1,"2673":1,"2740":1}}],["shared",{"0":{"2661":1},"2":{"30":1,"33":1,"50":1,"107":1,"112":2,"114":1,"145":1,"149":1,"190":1,"191":1,"262":1,"559":1,"573":2,"690":1,"1458":1,"1466":1,"1847":1,"1935":1,"1982":2,"2070":1,"2174":1,"2443":1,"2659":1,"2661":4,"2684":2,"2727":1,"2875":3}}],["shutdown",{"0":{"229":1,"649":1,"650":1,"651":1,"652":1},"1":{"650":1,"651":1,"652":1},"2":{"229":6,"230":1,"236":2,"249":1,"266":1,"277":1,"288":1,"333":1,"649":3,"650":2,"651":1,"652":2,"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1620":1,"1632":3,"1950":1}}],["sh1107",{"2":{"221":1,"294":1,"1945":4,"1947":1,"1951":1,"1954":1,"1955":3,"1956":1}}],["sh1106",{"2":{"138":1,"232":2,"1945":2,"1947":1,"1951":2,"1955":2,"1956":1,"2746":6,"2749":16}}],["shpkg",{"2":{"2620":1}}],["shpython3",{"2":{"143":1}}],["shpacman",{"2":{"143":1}}],["shbrew",{"2":{"143":1}}],["sh",{"2":{"114":1,"199":1,"416":1,"507":1,"508":3,"509":1,"1315":1,"1680":10,"2297":10,"2401":7,"2532":8,"2588":1,"2594":1,"2616":1,"2617":1,"2618":1,"2619":1}}],["shine",{"2":{"2798":1,"2838":1}}],["shiny",{"2":{"2420":1,"2421":1}}],["ships",{"2":{"2560":1}}],["shipping",{"2":{"2458":2}}],["shipped",{"2":{"682":1,"2491":1,"2561":1,"2564":1,"2721":1,"2735":1}}],["ship",{"2":{"1200":1,"1201":1,"2562":1}}],["shisaku",{"2":{"222":1}}],["shield",{"2":{"113":1,"114":1}}],["shifting",{"2":{"1493":2,"1513":1,"1594":1}}],["shifter",{"0":{"1295":1},"2":{"333":2,"637":1,"1294":1,"1295":1}}],["shifted",{"0":{"1511":1,"2527":1,"2545":1},"1":{"2546":1,"2547":1},"2":{"176":1,"188":1,"191":2,"249":1,"266":1,"746":2,"1490":1,"1492":3,"1493":3,"1497":3,"1504":5,"1511":12,"1512":3,"1516":1,"1527":1,"1587":2,"1594":2,"1667":1,"1759":1,"2063":1,"2160":2,"2165":1,"2527":1,"2545":1,"2568":1,"2922":1}}],["shift+option",{"2":{"2503":1}}],["shift+v",{"2":{"1618":1}}],["shift+s",{"2":{"1591":1}}],["shift+a",{"2":{"1591":2}}],["shift+escape",{"2":{"683":1}}],["shift+b",{"2":{"683":1}}],["shift+right",{"2":{"683":3,"1618":2}}],["shift+click",{"2":{"320":1,"2923":1}}],["shift+2",{"2":{"99":1}}],["shifts",{"2":{"134":2,"1378":2,"1587":1,"1588":4,"1589":2,"1913":1,"2063":4,"2854":1}}],["shift",{"0":{"1378":1,"1490":2,"1491":1,"1493":1,"1494":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1512":1,"1513":1,"1514":1,"1591":1,"2506":1,"2834":1,"2922":1},"1":{"1491":2,"1492":2,"1493":2,"1494":2,"1495":2,"1496":2,"1497":3,"1498":3,"1499":3,"1500":3,"1501":3,"1502":3,"1503":3,"1504":3,"1505":3,"1506":3,"1507":3,"1508":3,"1509":3,"1510":3,"1511":2,"1512":2,"1513":3,"1514":2,"1515":3,"1516":3,"1517":3},"2":{"49":1,"63":1,"99":1,"114":1,"134":4,"137":4,"176":1,"188":1,"191":1,"210":2,"222":3,"236":2,"255":1,"257":1,"258":1,"259":2,"347":1,"559":1,"603":1,"683":1,"763":2,"1349":1,"1359":9,"1365":1,"1374":14,"1375":11,"1378":7,"1417":2,"1445":2,"1451":1,"1466":4,"1490":1,"1491":2,"1492":10,"1493":5,"1494":1,"1495":4,"1496":3,"1497":7,"1498":1,"1499":2,"1500":1,"1501":1,"1502":1,"1503":1,"1504":10,"1506":1,"1510":1,"1511":7,"1512":9,"1513":3,"1514":1,"1515":12,"1516":4,"1517":1,"1523":1,"1526":2,"1527":3,"1587":2,"1588":9,"1589":4,"1591":10,"1594":3,"1599":1,"1611":1,"1618":1,"1619":1,"1666":1,"1667":1,"1668":1,"1670":2,"1684":1,"1756":2,"1759":1,"1760":2,"1761":1,"1768":2,"1770":5,"1771":2,"1778":1,"1779":2,"1780":6,"1782":1,"1828":1,"1951":1,"2156":3,"2159":2,"2160":5,"2165":4,"2174":10,"2248":4,"2249":6,"2250":6,"2251":1,"2253":4,"2281":1,"2311":1,"2323":1,"2325":1,"2344":1,"2453":1,"2503":4,"2504":2,"2506":13,"2512":1,"2522":16,"2523":14,"2525":10,"2528":14,"2531":6,"2533":1,"2539":4,"2545":1,"2546":1,"2565":20,"2566":2,"2605":2,"2643":4,"2644":14,"2645":4,"2675":4,"2745":2,"2824":1,"2834":3,"2854":6,"2862":1,"2904":1,"2908":6,"2909":3,"2914":2,"2918":2,"2921":1,"2922":3,"2923":2,"2933":1,"2938":2}}],["shore",{"2":{"2934":1}}],["shorting",{"2":{"2427":1,"2683":1}}],["shorts",{"2":{"2418":1,"2420":1}}],["shortcuts",{"0":{"2162":1},"2":{"1442":1,"1444":1,"1760":1,"1761":1,"1781":2,"1782":1,"2162":1,"2170":1,"2324":1,"2473":1,"2545":1,"2565":1,"2921":1}}],["shortcut",{"2":{"1377":1,"1378":1,"1669":2,"1947":1,"2246":1,"2247":1,"2277":1,"2284":1,"2613":1,"2830":1}}],["shortly",{"2":{"632":1,"1780":1,"2293":1}}],["shortest",{"2":{"1497":1}}],["shorted",{"2":{"567":1,"2683":1}}],["shorter",{"2":{"514":1,"1283":1,"1656":1,"1930":1,"2584":1}}],["shortened",{"2":{"213":1,"2805":1,"2861":1}}],["shorten",{"2":{"160":1,"1406":1}}],["shorthands",{"2":{"2067":1,"2198":1}}],["shorthand",{"2":{"199":1,"2632":1,"2775":1}}],["shortages",{"2":{"172":1}}],["short",{"2":{"114":1,"123":1,"134":1,"266":1,"297":1,"519":1,"523":1,"525":1,"538":1,"597":1,"611":2,"613":1,"673":1,"680":1,"681":1,"717":2,"769":1,"1309":1,"1332":1,"1409":1,"1492":1,"1588":1,"1603":2,"1680":16,"1780":3,"1789":1,"1823":1,"1937":1,"2157":2,"2258":2,"2312":1,"2376":1,"2379":1,"2381":1,"2382":1,"2384":1,"2386":1,"2388":1,"2391":1,"2418":1,"2422":1,"2423":1,"2426":1,"2427":1,"2605":1,"2643":1,"2683":1,"2684":1,"2799":1,"2849":1,"2861":1,"2915":1,"2917":1}}],["shop",{"2":{"2483":1,"2888":1}}],["shooting",{"2":{"2427":1}}],["shot",{"0":{"1349":1,"1382":1,"2528":1,"2643":1,"2867":1},"1":{"2644":1,"2645":1},"2":{"93":1,"145":2,"188":1,"191":1,"194":1,"199":1,"231":1,"560":1,"562":1,"1349":1,"1375":11,"1382":1,"1416":1,"1527":3,"1588":2,"1591":2,"1759":2,"1822":1,"1992":2,"1993":1,"2297":1,"2528":7,"2532":1,"2643":8,"2644":10,"2645":7,"2867":1,"2904":2,"2912":1,"2914":1,"2941":1}}],["showcasing",{"2":{"2721":1}}],["showed",{"2":{"1517":1}}],["shows",{"2":{"356":1,"371":1,"473":1,"580":1,"581":1,"613":1,"1424":1,"1425":1,"1768":1,"1773":1,"2410":2,"2687":1,"2692":1}}],["shown",{"2":{"134":1,"141":1,"563":1,"692":1,"726":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1200":1,"1201":1,"1216":1,"1343":1,"1699":1,"1703":1,"1707":1,"1763":1,"2185":1,"2288":1,"2289":1,"2416":2,"2769":1,"2878":1,"2905":1,"2912":1,"2920":1}}],["show",{"2":{"83":1,"114":1,"119":1,"176":1,"230":1,"254":1,"285":1,"432":4,"435":4,"450":1,"451":1,"452":1,"453":2,"458":1,"459":1,"467":1,"490":1,"645":1,"1310":1,"1362":1,"1695":1,"1699":1,"1703":1,"1988":1,"2181":1,"2291":1,"2410":2,"2457":1,"2459":2,"2546":1,"2566":1,"2620":1,"2627":1,"2671":1,"2687":1,"2710":1,"2748":3}}],["showing",{"2":{"70":1,"77":1,"312":1,"563":1,"1310":1,"1409":1,"2181":1,"2646":1,"2666":1,"2781":1}}],["shouldn",{"2":{"558":1,"632":1,"1362":1,"1520":1,"1936":1,"2268":1,"2421":1,"2721":1}}],["should",{"2":{"3":1,"6":1,"10":2,"11":1,"15":1,"17":1,"49":1,"70":1,"103":1,"125":1,"126":1,"131":2,"141":1,"142":2,"167":1,"182":1,"185":2,"194":1,"198":1,"212":7,"217":1,"234":1,"236":1,"240":1,"245":1,"249":1,"254":1,"268":1,"271":1,"275":1,"279":1,"304":2,"317":1,"332":1,"334":1,"338":3,"347":1,"358":1,"361":1,"371":3,"375":1,"377":1,"380":1,"388":2,"390":1,"392":1,"397":3,"413":1,"417":1,"463":1,"467":1,"489":2,"491":2,"492":3,"498":1,"504":1,"510":1,"514":2,"517":1,"519":1,"523":2,"525":1,"529":1,"530":1,"533":1,"535":1,"539":1,"555":1,"574":1,"586":6,"587":1,"612":1,"613":3,"615":1,"616":1,"617":5,"625":2,"628":1,"630":1,"631":1,"637":3,"638":1,"641":1,"642":1,"643":1,"645":1,"654":1,"655":2,"657":1,"666":1,"673":1,"674":2,"679":1,"680":1,"683":1,"684":2,"685":1,"703":1,"717":2,"730":1,"751":1,"753":1,"759":1,"763":1,"794":1,"806":1,"835":1,"864":1,"894":1,"929":1,"963":1,"997":1,"1031":1,"1065":1,"1099":1,"1133":1,"1167":1,"1189":1,"1196":1,"1200":1,"1201":1,"1220":1,"1245":1,"1302":1,"1310":1,"1311":1,"1312":1,"1316":1,"1317":2,"1333":2,"1341":1,"1346":1,"1359":1,"1367":1,"1404":3,"1407":1,"1410":1,"1420":2,"1427":1,"1429":1,"1432":1,"1440":1,"1460":1,"1461":1,"1466":2,"1474":1,"1477":1,"1485":1,"1497":1,"1504":1,"1516":1,"1521":1,"1526":1,"1527":2,"1538":1,"1550":1,"1587":1,"1589":1,"1594":3,"1606":3,"1607":3,"1627":1,"1628":1,"1650":1,"1653":3,"1655":1,"1656":1,"1661":1,"1663":2,"1698":1,"1736":1,"1775":1,"1830":1,"1838":1,"1951":1,"1977":1,"1980":1,"2001":2,"2002":1,"2005":1,"2008":1,"2051":1,"2058":1,"2172":1,"2174":1,"2177":1,"2205":1,"2211":1,"2258":1,"2260":1,"2268":1,"2270":2,"2290":1,"2291":1,"2293":1,"2303":1,"2310":1,"2389":1,"2410":2,"2421":4,"2424":1,"2425":1,"2427":2,"2443":2,"2444":3,"2445":1,"2446":4,"2447":1,"2449":3,"2450":1,"2453":1,"2454":1,"2457":3,"2459":3,"2478":1,"2480":1,"2482":1,"2494":1,"2495":2,"2497":1,"2501":2,"2558":1,"2559":1,"2560":2,"2562":2,"2577":1,"2580":1,"2582":1,"2583":1,"2605":1,"2612":1,"2615":1,"2622":2,"2630":1,"2632":1,"2660":3,"2662":3,"2669":2,"2671":1,"2676":4,"2680":1,"2684":1,"2689":1,"2690":1,"2707":1,"2710":2,"2711":1,"2713":1,"2716":1,"2719":4,"2720":3,"2721":19,"2722":8,"2725":1,"2747":1,"2749":2,"2750":6,"2765":1,"2766":1,"2770":2,"2772":1,"2786":1,"2853":1,"2862":3,"2865":1,"2875":2,"2882":1,"2899":2,"2901":1,"2905":1,"2919":1,"2936":2,"2939":1,"2942":1}}],["sadly",{"2":{"2621":1}}],["sabayon",{"2":{"2594":1}}],["sasha",{"2":{"2418":1,"2429":1}}],["said",{"2":{"1444":1,"2560":3}}],["saikoutype",{"2":{"249":1}}],["sag",{"2":{"1375":1}}],["sa",{"2":{"1375":1,"1770":2}}],["salt",{"2":{"2383":1}}],["sall",{"2":{"2216":1}}],["salad",{"2":{"1362":1}}],["salicylic",{"2":{"154":13,"160":2,"222":1,"308":1}}],["sake",{"2":{"1344":1}}],["sanitisation",{"2":{"1526":1}}],["sanitise",{"2":{"1526":1}}],["sane",{"2":{"716":2}}],["sango",{"2":{"249":1}}],["sacrifices",{"2":{"716":1}}],["says",{"2":{"2398":1,"2560":3,"2605":1,"2936":1}}],["saying",{"2":{"602":1,"2621":1}}],["say",{"2":{"594":1,"1375":1,"1756":1,"1845":1,"2068":1,"2252":1,"2253":1,"2293":1,"2412":1,"2615":1,"2792":1,"2929":1}}],["sawnsprojects",{"2":{"222":2,"249":1}}],["sauce",{"2":{"222":1}}],["saevus",{"2":{"222":1,"281":2,"285":1}}],["safemode",{"2":{"2495":1}}],["safest",{"2":{"1662":1}}],["safety",{"0":{"1362":1,"2307":1},"2":{"2268":1,"2307":1}}],["safe",{"2":{"199":1,"229":2,"294":1,"591":1,"614":1,"627":3,"1440":3,"1456":1,"1466":5,"1918":1,"1942":1,"1986":1,"1987":1,"2006":1,"2162":1,"2170":1,"2600":2,"2743":1,"2905":1}}],["safely",{"2":{"31":1,"34":1,"240":1,"644":1,"1949":1,"2279":1,"2496":1,"2621":1,"2633":1}}],["savage65",{"2":{"308":1}}],["saves",{"2":{"1968":1,"1983":1,"2633":2}}],["save",{"0":{"598":1},"2":{"249":1,"285":2,"497":1,"560":1,"598":1,"646":1,"1407":1,"1465":1,"1487":1,"1532":1,"1603":1,"1760":1,"2179":1,"2268":1,"2425":1,"2497":1,"2592":2,"2599":1,"2600":1,"2612":2,"2627":1,"2629":1,"2633":1,"2669":1,"2674":1,"2882":1,"2886":1}}],["saved",{"2":{"131":1,"450":1,"451":1,"1317":1,"1407":1,"1583":1}}],["saving",{"2":{"131":1,"134":1,"639":3,"663":1,"2776":1}}],["savings",{"2":{"25":1,"2882":1}}],["sata",{"2":{"2258":1}}],["satan",{"2":{"427":3,"2608":1}}],["satisfied",{"2":{"598":1,"2905":1,"2906":1}}],["satisfaction75",{"2":{"134":2,"199":1,"249":1}}],["satu",{"2":{"587":2,"1661":1,"2062":1,"2174":1,"2525":1,"2526":1}}],["saturation",{"2":{"111":1,"114":1,"563":1,"2062":4,"2063":6,"2069":2,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2173":2,"2174":6,"2175":2,"2194":8,"2525":6,"2526":4,"2750":2,"2771":1,"2870":2,"2871":2}}],["satd",{"2":{"587":2,"1661":1,"2062":1,"2174":1,"2525":1,"2526":1}}],["satellite",{"2":{"191":1,"222":1}}],["satt99",{"2":{"160":1}}],["satt",{"2":{"154":1,"160":1,"176":1}}],["sat",{"0":{"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2194":1},"1":{"2110":1},"2":{"49":1,"183":2,"210":3,"348":1,"371":2,"563":1,"2063":12,"2069":2,"2175":2,"2179":1,"2194":4,"2197":2,"2447":2,"2750":11,"2870":1,"2871":2,"2887":3}}],["sampling",{"2":{"160":1,"698":2,"738":1,"1571":1,"2372":1,"2851":1}}],["sampled",{"2":{"1410":1}}],["samples",{"2":{"716":2,"1474":1,"1482":1,"1573":1,"1736":1,"2562":1}}],["sample",{"2":{"31":1,"176":1,"210":1,"716":6,"717":4,"742":1,"1249":4,"1474":6,"1482":4,"1496":1,"1520":1,"1573":1,"1576":1,"1749":1,"2036":1,"2039":3,"2372":6,"2471":1,"2851":1}}],["same",{"2":{"27":1,"45":2,"73":1,"142":1,"166":1,"169":1,"210":1,"234":1,"235":1,"289":1,"307":2,"335":1,"369":1,"510":2,"519":1,"553":1,"568":2,"579":1,"586":2,"597":1,"598":1,"603":1,"625":1,"654":1,"657":1,"664":1,"685":1,"692":1,"719":1,"750":1,"753":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1197":1,"1216":1,"1283":1,"1335":2,"1350":1,"1358":1,"1359":1,"1375":1,"1385":1,"1410":1,"1419":1,"1422":1,"1433":2,"1436":1,"1457":1,"1458":1,"1459":2,"1460":1,"1464":1,"1495":1,"1527":1,"1532":3,"1540":2,"1589":1,"1599":1,"1602":1,"1605":1,"1606":3,"1613":2,"1616":2,"1629":1,"1630":1,"1653":1,"1656":1,"1664":1,"1781":1,"1788":1,"1838":1,"1840":1,"1843":4,"1928":1,"1929":1,"1933":3,"1934":1,"1955":1,"1976":3,"1993":1,"2040":1,"2044":1,"2050":1,"2058":1,"2060":1,"2063":5,"2161":3,"2184":1,"2199":1,"2251":1,"2254":1,"2271":1,"2287":1,"2296":1,"2302":2,"2303":2,"2310":1,"2323":1,"2377":1,"2384":1,"2389":1,"2399":1,"2401":1,"2410":1,"2417":1,"2420":1,"2421":1,"2437":1,"2443":2,"2446":1,"2447":1,"2457":1,"2492":1,"2554":1,"2560":2,"2583":1,"2587":2,"2603":1,"2605":1,"2615":1,"2626":2,"2627":1,"2630":1,"2631":1,"2679":1,"2687":1,"2689":3,"2691":1,"2713":1,"2719":1,"2721":4,"2727":1,"2729":1,"2734":1,"2747":1,"2748":4,"2749":2,"2763":1,"2776":1,"2786":1,"2836":1,"2862":1,"2883":1,"2912":1,"2918":3,"2919":3,"2923":1,"2928":1,"2937":1,"2941":1}}],["sprintf",{"2":{"2882":2,"2886":2}}],["springgreen",{"2":{"2067":2,"2198":2}}],["spring",{"2":{"1679":1}}],["springs",{"2":{"1679":1}}],["spread",{"2":{"2064":2,"2465":1}}],["spreads",{"2":{"2064":1}}],["spruce",{"2":{"210":1}}],["splash",{"2":{"1843":3,"2063":6,"2887":2}}],["splaytoraid",{"2":{"266":1,"322":4,"328":1}}],["spleeb",{"2":{"317":1}}],["splicing",{"2":{"1480":1}}],["splinky",{"2":{"176":1,"311":13,"2706":1}}],["splitography",{"2":{"2287":1}}],["splitting",{"0":{"410":1}}],["splitty",{"2":{"253":2}}],["splitreus62",{"2":{"154":2}}],["split75",{"2":{"144":2}}],["splitkb",{"2":{"102":1,"114":1,"134":2,"210":1,"222":1,"277":1}}],["split",{"0":{"30":1,"32":1,"35":1,"80":1,"107":1,"149":1,"565":1,"1584":1,"1631":1,"1660":1,"1980":1,"1982":1,"1988":1,"2254":1,"2419":1,"2704":1,"2873":1},"1":{"31":1,"36":1,"566":1,"567":1,"568":1,"1989":1,"1990":1,"2255":1,"2256":1,"2257":1,"2258":1,"2259":1,"2260":1,"2261":1,"2262":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2268":1,"2269":1,"2270":1,"2271":1,"2272":1,"2273":1,"2274":1},"2":{"30":3,"32":2,"45":3,"65":2,"70":28,"74":3,"80":1,"92":2,"93":4,"94":1,"107":7,"111":1,"112":10,"114":13,"134":4,"145":3,"149":1,"154":8,"160":10,"175":1,"176":15,"191":7,"199":3,"210":9,"222":7,"236":5,"249":4,"253":2,"259":5,"260":2,"266":8,"270":2,"277":11,"285":2,"300":1,"308":3,"332":1,"333":1,"559":1,"563":6,"565":5,"566":8,"567":7,"568":26,"572":5,"668":2,"1189":2,"1194":2,"1195":1,"1202":1,"1389":1,"1390":1,"1392":2,"1394":1,"1414":1,"1427":1,"1433":3,"1486":1,"1584":3,"1631":1,"1649":1,"1660":3,"1829":2,"1846":3,"1950":2,"1951":1,"1968":1,"1971":1,"1976":1,"1978":1,"1980":1,"1982":1,"1988":1,"2007":1,"2069":3,"2073":2,"2074":2,"2172":2,"2175":2,"2182":4,"2184":2,"2200":1,"2254":4,"2258":2,"2261":1,"2262":2,"2264":1,"2265":3,"2266":10,"2267":1,"2268":5,"2269":21,"2270":4,"2271":14,"2272":3,"2273":2,"2274":2,"2280":2,"2298":1,"2371":1,"2378":3,"2380":3,"2387":3,"2392":2,"2394":2,"2396":2,"2411":9,"2419":2,"2432":1,"2519":2,"2548":2,"2704":1,"2714":1,"2721":1,"2722":1,"2845":1,"2864":2,"2870":4,"2871":2,"2873":5,"2901":1,"2919":1}}],["splits",{"2":{"18":1,"35":1,"114":1}}],["sponge",{"2":{"2420":1}}],["spots",{"2":{"603":1}}],["spot",{"2":{"251":1,"597":2,"649":1,"2557":1}}],["spooky",{"2":{"176":1}}],["sp111",{"2":{"222":1}}],["spc",{"2":{"195":1,"266":1,"369":2,"587":2,"1587":1,"1616":2,"2302":3,"2503":1,"2537":1,"2556":2,"2903":1,"2905":1,"2914":1,"2915":1,"2916":2,"2921":4}}],["spdu",{"2":{"1661":1,"1842":1,"2062":1,"2065":1,"2174":1,"2518":1,"2525":1,"2526":1}}],["spdd",{"2":{"1661":1,"1842":1,"2062":1,"2065":1,"2174":1,"2518":1,"2525":1,"2526":1}}],["spdx",{"2":{"1624":1,"2725":2}}],["spd",{"2":{"183":4,"210":1,"1846":2,"2069":2,"2175":1}}],["spacing",{"2":{"2600":1,"2720":1}}],["space+b",{"2":{"683":1}}],["spaces",{"0":{"603":1},"2":{"348":1,"473":1,"510":2,"512":1,"576":1,"578":1,"584":2,"2271":1,"2713":1,"2720":1,"2889":1,"2930":1}}],["spacebars",{"2":{"259":1}}],["spacebar",{"2":{"259":1,"2503":1,"2537":1,"2605":1}}],["spacey",{"0":{"255":1},"2":{"241":2,"255":1,"266":1}}],["spaceholdings",{"2":{"154":3,"160":2,"253":2,"266":1}}],["space",{"0":{"123":1,"2248":1,"2531":1,"2834":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2253":1},"2":{"49":2,"123":1,"124":3,"134":1,"154":8,"166":1,"176":3,"188":1,"189":1,"191":2,"214":1,"222":2,"249":1,"255":1,"259":1,"260":1,"543":1,"587":1,"603":2,"669":1,"717":1,"1417":1,"1465":1,"1484":1,"1487":1,"1522":1,"1532":1,"1587":1,"1588":1,"1656":1,"1686":1,"1760":1,"2177":1,"2248":1,"2250":7,"2251":1,"2252":3,"2253":3,"2290":1,"2302":2,"2323":1,"2338":1,"2372":1,"2374":1,"2503":1,"2531":8,"2537":1,"2566":1,"2591":1,"2657":1,"2727":1,"2751":1,"2834":1,"2879":1,"2886":2,"2887":1,"2900":1,"2916":1,"2933":1}}],["spaceman",{"2":{"37":4}}],["span",{"2":{"2050":1}}],["spanish",{"2":{"176":1,"249":1,"1587":1,"2880":9}}],["spamming",{"2":{"210":1,"2942":1}}],["sparse",{"2":{"328":1}}],["spare",{"2":{"206":1,"1467":1}}],["sparkfun",{"0":{"271":1,"1391":1,"2483":1},"1":{"2484":1},"2":{"163":1,"176":1,"271":3,"277":1,"544":1,"746":3,"1386":1,"1388":3,"2367":2,"2477":1,"2479":1,"2483":3,"2492":4,"2702":2,"2888":1}}],["sp",{"2":{"134":1,"222":1}}],["spi0",{"2":{"2698":2}}],["spiral",{"2":{"1843":4,"2063":12,"2887":3}}],["spid0",{"2":{"2698":1,"2702":1}}],["spid2",{"2":{"1245":2}}],["spid1",{"2":{"1245":1,"1296":1,"2698":1}}],["spiderisland",{"2":{"154":1}}],["spidey3",{"2":{"74":1,"176":1,"191":1}}],["spi3",{"2":{"1245":1}}],["spi2",{"2":{"1245":4}}],["spi1",{"2":{"1245":2,"1296":2,"2698":2}}],["spinning",{"2":{"1843":3,"2063":9}}],["spins",{"2":{"1678":1}}],["spin",{"2":{"176":1}}],["spi",{"0":{"747":1,"752":1,"756":1,"1242":1,"1247":1,"1248":1,"1251":2,"1254":2,"1256":2,"1259":2,"1262":1,"1291":1,"1296":1,"1953":1,"2368":1,"2698":1},"1":{"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":2,"1250":2,"1251":1,"1252":3,"1253":3,"1254":1,"1255":3,"1256":1,"1257":3,"1258":3,"1259":1,"1260":3,"1261":3,"1262":1,"1297":1,"1298":1},"2":{"93":1,"114":2,"118":2,"134":1,"160":2,"174":1,"176":9,"221":1,"232":1,"234":4,"236":5,"277":2,"285":1,"294":1,"308":1,"317":3,"721":1,"722":1,"723":4,"725":1,"743":3,"747":9,"750":2,"752":2,"755":1,"756":6,"1242":1,"1243":3,"1244":3,"1245":23,"1247":1,"1248":1,"1249":4,"1250":1,"1251":1,"1253":2,"1254":1,"1255":1,"1256":1,"1258":3,"1259":1,"1261":3,"1262":2,"1286":1,"1291":4,"1296":12,"1297":2,"1298":1,"1945":1,"1947":2,"1953":4,"1961":8,"1967":2,"1968":9,"1973":2,"1976":4,"2276":1,"2281":2,"2367":3,"2368":5,"2424":1,"2661":3,"2682":1,"2692":2,"2695":1,"2698":4,"2702":6,"2705":1,"2719":1,"2746":25,"2749":71,"2857":2,"2876":2}}],["spent",{"2":{"2929":1}}],["spend",{"2":{"173":1,"1519":1,"2724":1}}],["speaks",{"2":{"2287":1}}],["speak",{"2":{"2287":2}}],["speakers",{"2":{"712":1,"713":1,"1478":1}}],["speaker",{"2":{"712":3,"1467":1,"1468":3,"1469":1,"1471":2,"1475":1,"1477":1,"1478":1,"1480":5,"2220":1,"2377":2,"2384":2,"2682":1,"2684":2,"2849":3,"2869":2}}],["spelled",{"2":{"1522":1}}],["spelling",{"2":{"49":1,"92":1,"1442":2,"2284":1}}],["speculatively",{"2":{"320":1,"2923":2}}],["speculative",{"0":{"320":1,"2923":1},"2":{"320":5,"328":2,"2923":10}}],["specially",{"2":{"2168":1}}],["specialization",{"2":{"1632":1}}],["specializations",{"2":{"1632":1}}],["specialized",{"2":{"1288":1,"2494":1}}],["special",{"0":{"1352":1,"1366":1,"1498":1,"1510":1,"2544":1},"2":{"210":1,"480":1,"489":1,"562":1,"624":1,"644":1,"682":1,"769":1,"1244":1,"1265":1,"1280":1,"1416":1,"1467":1,"1484":1,"1496":1,"1497":2,"1498":1,"1499":1,"1504":1,"1521":1,"1526":1,"1612":1,"1759":1,"1849":1,"1985":1,"2072":1,"2171":1,"2219":1,"2290":1,"2323":1,"2424":1,"2477":1,"2481":1,"2551":1,"2556":1,"2605":2,"2658":1,"2721":1,"2744":1,"2787":1,"2800":1,"2834":1,"2903":1,"2905":1}}],["specifying",{"2":{"76":1,"87":1,"103":1,"118":1,"126":1,"166":1,"170":2,"222":1,"246":1,"247":1,"335":1,"471":1,"531":1,"751":2,"1417":2,"1450":1,"2401":1,"2609":1,"2748":1}}],["specify",{"2":{"55":1,"87":1,"134":1,"169":1,"184":1,"212":1,"234":1,"369":1,"428":1,"475":1,"487":1,"531":1,"562":1,"568":2,"570":1,"668":1,"1197":1,"1204":1,"1362":1,"1407":1,"1430":1,"1521":1,"1583":2,"1614":1,"1624":1,"1660":1,"1675":1,"1837":1,"1954":1,"1958":1,"1964":2,"2184":1,"2199":1,"2271":3,"2301":1,"2302":1,"2410":1,"2411":1,"2412":1,"2495":1,"2577":1,"2580":1,"2609":1,"2632":1,"2684":1,"2700":1,"2711":1,"2712":1,"2748":7,"2767":1,"2916":1,"2919":2,"2942":1}}],["specifiers",{"2":{"2882":1}}],["specifies",{"2":{"1410":1,"1767":1,"1770":1,"1974":1,"2410":1,"2721":1,"2770":2,"2844":1}}],["specified",{"0":{"152":1},"2":{"49":1,"58":1,"70":14,"109":1,"160":1,"184":1,"302":1,"428":2,"440":1,"441":1,"457":1,"468":1,"563":1,"570":2,"653":1,"695":2,"696":3,"746":2,"747":1,"756":5,"1289":1,"1410":1,"1422":12,"1438":1,"1442":1,"1628":1,"1660":1,"1705":1,"1764":1,"1844":1,"1956":1,"2066":1,"2160":1,"2184":2,"2264":1,"2283":1,"2293":1,"2302":2,"2324":1,"2372":2,"2393":1,"2395":1,"2397":1,"2410":6,"2443":1,"2447":1,"2495":1,"2546":1,"2566":2,"2609":2,"2621":1,"2645":1,"2676":2,"2712":1,"2713":1,"2721":1,"2748":7,"2749":3,"2760":1,"2763":1,"2767":1,"2846":2,"2862":1,"2919":2}}],["specifics",{"2":{"711":1,"1297":1,"1317":1}}],["specifications",{"2":{"1964":2}}],["specification",{"0":{"1918":1,"1922":1},"2":{"169":1,"182":1,"184":1,"1347":1,"1395":1,"1917":1,"2050":1,"2469":1,"2744":1}}],["specifically",{"2":{"107":1,"2417":1,"2638":1,"2687":1,"2729":1,"2758":1,"2766":1,"2924":1}}],["specific",{"0":{"1462":1,"2424":1,"2877":1},"1":{"2878":1,"2879":1,"2880":1},"2":{"5":1,"21":1,"49":1,"74":2,"77":1,"94":1,"113":1,"114":2,"118":1,"124":1,"133":3,"134":3,"176":2,"191":2,"199":1,"222":2,"380":1,"427":1,"431":1,"457":1,"514":1,"565":1,"609":1,"666":1,"683":1,"693":1,"698":1,"718":1,"749":1,"759":1,"794":1,"1202":1,"1355":1,"1375":2,"1389":1,"1390":1,"1402":1,"1432":1,"1436":1,"1458":1,"1460":1,"1466":3,"1483":1,"1678":1,"1679":2,"1681":1,"1683":1,"1756":1,"1775":1,"1844":1,"1936":2,"1956":2,"1964":1,"1977":1,"1993":1,"2035":1,"2037":1,"2066":1,"2074":1,"2221":1,"2254":1,"2283":1,"2303":1,"2310":1,"2376":1,"2394":1,"2396":1,"2407":2,"2410":1,"2411":1,"2428":1,"2443":1,"2452":1,"2474":1,"2475":1,"2561":1,"2605":1,"2656":1,"2676":1,"2696":1,"2719":1,"2720":3,"2721":4,"2728":1,"2750":2,"2754":1,"2756":1,"2777":2,"2782":1,"2784":1,"2793":1,"2844":3,"2877":2,"2880":1,"2887":1,"2905":1,"2928":1,"2933":1,"2938":1}}],["specs",{"2":{"114":1}}],["spec",{"2":{"114":1,"590":1,"1829":1,"1983":4,"2260":1,"2877":1}}],["speeds",{"2":{"568":1,"1924":1,"1928":2,"1931":3,"1932":2,"1956":1,"2180":1,"2204":1}}],["speedo",{"0":{"56":1},"2":{"56":6}}],["speed",{"0":{"1879":1,"1880":1,"1881":1,"1882":1,"1883":2,"1885":2,"1887":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":2,"2123":2,"2125":1,"2180":1,"2195":1},"1":{"1884":2,"1886":2,"1888":1,"2122":2,"2124":2,"2126":1},"2":{"49":3,"112":2,"114":1,"198":1,"210":1,"317":1,"427":1,"559":1,"564":1,"568":4,"766":1,"1204":4,"1249":2,"1291":1,"1410":1,"1466":1,"1481":1,"1484":1,"1842":4,"1843":2,"1846":2,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":2,"1885":1,"1886":2,"1887":1,"1888":1,"1919":4,"1928":6,"1929":8,"1930":14,"1931":12,"1932":4,"1933":5,"1951":1,"1956":3,"1961":2,"1962":2,"1968":2,"1976":3,"1987":2,"2040":1,"2062":4,"2063":5,"2065":1,"2069":2,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":2,"2123":1,"2124":2,"2125":1,"2126":1,"2174":6,"2175":1,"2195":12,"2197":2,"2202":2,"2203":2,"2204":1,"2215":1,"2268":2,"2269":1,"2468":1,"2496":1,"2503":1,"2518":4,"2520":4,"2525":6,"2526":4,"2864":4,"2866":1,"2870":2,"2871":4,"2873":2}}],["stsw",{"2":{"2499":1}}],["stk500v1",{"2":{"2479":1}}],["stk500",{"2":{"2479":1}}],["st4",{"2":{"2294":1}}],["st3",{"2":{"2294":1}}],["st2",{"2":{"2294":1}}],["st1",{"2":{"2294":1}}],["st110r2",{"2":{"249":1}}],["stn",{"2":{"2293":5,"2294":113}}],["stmc",{"2":{"1392":2}}],["stm",{"2":{"1392":1}}],["stmicroelectronics",{"0":{"546":1},"2":{"387":1}}],["stm32cubemx",{"2":{"1297":1}}],["stm32s",{"2":{"718":1}}],["stm32h733",{"2":{"546":1}}],["stm32h723",{"2":{"210":1,"546":1}}],["stm32g0x1",{"2":{"308":1}}],["stm32g431",{"2":{"77":1,"546":1}}],["stm32g4xx",{"2":{"74":1,"249":1}}],["stm32g474",{"2":{"49":1,"77":1,"546":1}}],["stm32g4",{"2":{"49":1}}],["stm32duino",{"0":{"2388":1,"2498":1},"1":{"2499":1,"2500":1,"2501":1},"2":{"114":1,"546":1,"686":1,"2386":1,"2388":2,"2498":1}}],["stm32f2",{"2":{"1477":1}}],["stm32f2xx",{"2":{"766":1}}],["stm32f7xx",{"2":{"767":1}}],["stm32f070",{"2":{"754":1}}],["stm32f072xb",{"2":{"743":1}}],["stm32f072",{"0":{"1209":1},"2":{"50":1,"191":1,"754":1}}],["stm32f042",{"2":{"754":1,"2386":1}}],["stm32f0",{"2":{"696":1}}],["stm32f0x2",{"2":{"546":1}}],["stm32f0xx",{"2":{"199":1,"692":1,"750":1,"754":1,"767":1}}],["stm32f1x",{"2":{"2501":2}}],["stm32f1xx",{"2":{"93":1,"692":2,"743":1,"766":1,"1471":1,"1475":1,"1477":1}}],["stm32f103c8",{"2":{"713":1,"718":2,"720":1}}],["stm32f103c6",{"2":{"176":1}}],["stm32f103x",{"2":{"692":1}}],["stm32f103",{"0":{"1210":1},"2":{"199":1,"546":1,"552":1,"1195":1,"1197":1,"1198":1,"1210":1,"2386":1,"2388":1,"2475":1,"2498":1,"2501":1}}],["stm32f3discovery",{"2":{"391":2}}],["stm32f303xc",{"2":{"2417":1,"2681":1,"2687":2}}],["stm32f303xe",{"2":{"145":1}}],["stm32f303",{"0":{"1208":1},"2":{"442":1,"546":1,"552":1,"765":1,"1197":1,"1245":1,"1266":1,"1550":1,"1675":1,"2676":2,"2684":1}}],["stm32f303cct6",{"2":{"720":1,"2682":1}}],["stm32f303cc",{"2":{"387":1}}],["stm32f3",{"2":{"210":1,"387":2,"391":1,"696":1}}],["stm32f3xx",{"2":{"93":1,"692":1,"743":1,"767":1}}],["stm32f4x1",{"0":{"2657":1},"1":{"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1},"2":{"750":1,"754":1}}],["stm32f4xx",{"2":{"93":1,"692":2,"766":1}}],["stm32f411",{"2":{"431":1,"546":1,"754":1}}],["stm32f4",{"2":{"285":1}}],["stm32f407",{"2":{"546":1}}],["stm32f407x",{"2":{"114":1}}],["stm32f405vg",{"2":{"720":1}}],["stm32f405",{"2":{"546":1}}],["stm32f405rg",{"2":{"277":1}}],["stm32f401",{"2":{"546":1,"754":1}}],["stm32f446",{"2":{"93":1,"328":1,"546":1}}],["stm32l1xx",{"2":{"743":1,"766":1}}],["stm32l073rz",{"2":{"2721":1}}],["stm32l072",{"2":{"2689":1}}],["stm32l0xx",{"2":{"743":1,"766":1}}],["stm32l0",{"2":{"294":1,"745":1}}],["stm32l082kz",{"2":{"2721":1}}],["stm32l082",{"2":{"49":1,"2689":1}}],["stm32l443",{"2":{"546":1}}],["stm32l442",{"2":{"156":1,"160":1,"546":1}}],["stm32l422",{"2":{"546":1}}],["stm32l422xb",{"2":{"114":1}}],["stm32l412",{"2":{"546":1}}],["stm32l412xb",{"2":{"114":1}}],["stm32l4xx",{"2":{"249":1,"767":1}}],["stm32l432",{"2":{"156":1,"160":1,"236":1,"546":1}}],["stm32l433",{"2":{"93":1,"546":1}}],["stm32l4+",{"2":{"49":1}}],["stm32",{"0":{"546":1,"692":1,"745":1,"1207":1,"2386":1,"2687":1,"2688":1,"2689":1,"2690":1},"1":{"1208":1,"1209":1,"1210":1,"2387":1},"2":{"49":4,"50":2,"65":1,"114":1,"131":1,"133":1,"134":5,"176":3,"210":1,"222":1,"277":1,"285":1,"291":2,"294":1,"308":1,"686":2,"713":1,"714":10,"715":6,"718":2,"745":1,"759":1,"765":7,"769":4,"1195":2,"1197":1,"1198":2,"1200":4,"1201":4,"1245":3,"1266":3,"1296":3,"1297":1,"1300":5,"1389":1,"1471":2,"1477":1,"1550":3,"1551":3,"1734":1,"1955":1,"2386":3,"2387":1,"2389":1,"2475":1,"2498":1,"2501":1,"2605":1,"2678":8,"2684":1,"2685":1,"2687":8,"2688":2,"2689":2,"2846":1,"2857":1}}],["stylus",{"2":{"1633":1,"1968":1}}],["styling",{"0":{"343":1},"1":{"344":1,"345":1,"346":1,"347":1,"348":1,"349":1,"350":1,"351":1,"352":1,"353":1,"354":1,"355":1},"2":{"243":1,"331":1,"335":1}}],["styled",{"0":{"675":1},"1":{"676":1,"677":1},"2":{"675":1}}],["styles",{"2":{"525":1,"612":1,"617":1,"1308":1,"2934":1}}],["style=file",{"2":{"511":1}}],["style",{"0":{"243":1},"2":{"133":1,"134":1,"176":1,"199":1,"243":1,"265":1,"283":2,"331":1,"335":2,"489":1,"490":6,"492":2,"493":2,"495":2,"496":2,"510":9,"512":1,"513":1,"524":1,"527":2,"612":1,"617":2,"672":1,"1626":1,"1971":1,"2313":1,"2492":1,"2669":2}}],["st7789",{"2":{"2746":2,"2749":8}}],["st7735",{"2":{"176":1,"236":1,"2746":2,"2749":8}}],["st7565p",{"2":{"2276":1}}],["st7565r",{"2":{"2276":1}}],["st7565",{"0":{"2275":1},"1":{"2276":1,"2277":1,"2278":1,"2279":1,"2280":1,"2281":1,"2282":1,"2283":1},"2":{"114":5,"191":1,"568":2,"2269":2,"2276":1,"2277":11,"2278":1,"2279":4,"2280":3,"2281":13,"2282":11,"2283":39,"2873":2}}],["std",{"2":{"766":1}}],["stdlayout",{"2":{"414":1}}],["stderr",{"2":{"372":1,"2939":1}}],["stdout",{"2":{"372":1}}],["stdint",{"2":{"176":1}}],["stdbool",{"2":{"73":1}}],["stilgar",{"2":{"2418":1}}],["still",{"2":{"16":1,"124":2,"125":1,"141":1,"170":1,"185":1,"191":2,"214":1,"228":3,"232":1,"241":1,"253":1,"270":1,"273":1,"281":1,"334":1,"363":1,"417":1,"492":1,"511":1,"524":1,"567":1,"746":1,"754":1,"1317":1,"1359":1,"1363":1,"1378":2,"1466":1,"1484":1,"1485":1,"1493":1,"1497":1,"1527":1,"1657":1,"1664":1,"1684":3,"1764":1,"1779":2,"1789":1,"2052":1,"2252":1,"2293":1,"2302":1,"2310":3,"2421":2,"2459":1,"2583":3,"2610":1,"2630":1,"2729":1,"2750":1,"2843":1,"2877":1,"2882":1,"2888":1,"2897":1,"2902":1,"2905":2,"2906":1,"2912":1}}],["sticky",{"2":{"2428":1,"2643":1,"2827":1}}],["stick",{"2":{"1427":1,"1482":1,"1962":1}}],["stickandgum",{"2":{"114":1}}],["steve",{"2":{"2248":1,"2934":1}}],["steelseries",{"2":{"285":1,"328":1}}],["stef9998",{"2":{"253":2}}],["steadily",{"2":{"251":1}}],["steal",{"2":{"154":2}}],["stello65",{"2":{"222":1}}],["stella",{"2":{"154":2}}],["stemcell",{"0":{"1392":1,"1397":1},"2":{"176":1,"311":6,"317":1,"1386":2,"1388":3,"1392":3,"1396":3,"1397":1,"2888":1}}],["stenographers",{"2":{"2284":1}}],["stenography",{"0":{"2284":1,"2292":1,"2874":1},"1":{"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1},"2":{"2284":2,"2287":2,"2289":1,"2290":2,"2291":2,"2292":1,"2874":3,"2901":1}}],["stenotype",{"2":{"2170":1,"2291":1}}],["stenothe",{"2":{"197":1}}],["steno",{"0":{"2285":1,"2287":1,"2291":1},"1":{"2288":1,"2289":1,"2290":1},"2":{"114":1,"176":4,"199":1,"231":3,"236":1,"249":1,"2203":1,"2284":2,"2285":3,"2286":1,"2287":4,"2288":4,"2289":2,"2290":10,"2291":4,"2292":1,"2293":13,"2294":2,"2874":1,"2933":1}}],["stepped",{"2":{"1979":1}}],["stepping",{"2":{"194":1,"1487":2}}],["steps",{"0":{"600":1},"2":{"111":3,"191":1,"210":2,"222":1,"231":1,"255":1,"593":1,"631":1,"1192":1,"1195":1,"1198":1,"1200":1,"1201":1,"1385":1,"1414":1,"1487":1,"1846":1,"1929":1,"1931":8,"1939":1,"1946":1,"2069":1,"2178":2,"2180":6,"2203":1,"2213":2,"2214":1,"2215":2,"2216":4,"2217":6,"2277":1,"2576":1,"2600":1,"2601":1,"2610":1,"2630":1,"2651":1,"2864":3,"2870":3,"2871":5,"2894":1,"2937":1}}],["step",{"0":{"593":2,"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"1557":1,"1867":1,"1868":1,"1869":1,"1870":1,"1893":1,"1894":1,"1895":1,"1896":1,"2093":1,"2094":1,"2095":1,"2096":1,"2131":1,"2132":1,"2133":1,"2134":1,"2213":1,"2331":1,"2332":1},"1":{"594":2,"595":2,"596":2,"597":2,"598":2,"599":2,"600":2},"2":{"49":1,"63":1,"210":2,"348":2,"369":1,"563":6,"627":1,"663":1,"1195":2,"1198":2,"1516":2,"1537":2,"1675":3,"1844":2,"1846":2,"1928":2,"1929":2,"1930":2,"1934":2,"2064":1,"2066":2,"2069":4,"2175":3,"2178":2,"2179":2,"2192":4,"2212":1,"2214":1,"2216":4,"2217":16,"2312":1,"2398":1,"2416":1,"2429":2,"2447":6,"2489":1,"2497":1,"2508":2,"2557":1,"2577":1,"2579":1,"2582":2,"2593":1,"2599":1,"2600":1,"2602":1,"2630":1,"2634":1,"2651":2,"2687":1,"2882":1,"2933":1}}],["story",{"2":{"510":1,"512":1}}],["stores",{"2":{"750":1,"1378":1,"1410":1,"1532":1,"2932":1}}],["store",{"2":{"493":1,"576":2,"611":1,"645":2,"751":1,"752":1,"753":1,"1378":1,"1406":1,"1407":1,"1519":1,"1655":1,"1942":4,"1987":1,"2252":1,"2583":1,"2587":2,"2588":1,"2591":1,"2705":1,"2942":1}}],["stored",{"0":{"2586":1},"2":{"228":2,"488":1,"567":1,"1345":1,"1375":1,"1406":1,"1520":1,"1527":1,"1532":1,"1619":1,"1696":1,"1920":1,"1942":1,"1955":1,"2290":1,"2322":1,"2550":1,"2583":1,"2591":1,"2607":1,"2747":1}}],["storing",{"2":{"224":1,"1519":1,"1532":1,"2583":1}}],["storage",{"0":{"1847":1,"2070":1,"2791":1},"2":{"93":1,"131":1,"359":1,"748":1,"750":1,"751":2,"752":1,"753":3,"754":1,"2266":1,"2401":1,"2669":1,"2700":1,"2735":1,"2747":1,"2791":1,"2857":1}}],["stone",{"2":{"194":1}}],["stock",{"2":{"114":1,"374":1,"566":1,"567":1,"2266":1,"2285":1,"2720":1,"2888":1}}],["stopped",{"2":{"649":2,"1658":1,"2750":1}}],["stopping",{"2":{"222":1,"646":1,"711":1,"1421":1,"1680":1}}],["stops",{"2":{"586":1,"1373":1,"1587":1,"1929":1,"1930":2,"1933":2,"1956":1,"2194":8,"2372":1,"2552":1,"2750":1,"2755":1}}],["stop",{"0":{"1262":1,"2625":1},"2":{"74":1,"134":1,"145":1,"176":1,"210":1,"277":1,"717":1,"1484":2,"1529":1,"1594":1,"1655":2,"1919":1,"1933":1,"2036":1,"2184":1,"2191":2,"2216":1,"2217":1,"2271":1,"2291":1,"2428":1,"2503":6,"2511":1,"2519":1,"2520":1,"2541":2,"2542":4,"2548":1,"2750":6}}],["sturdy",{"2":{"2421":1,"2422":1}}],["stumbled",{"2":{"602":1}}],["stuttered",{"2":{"294":1}}],["stub",{"2":{"236":1}}],["stubs",{"2":{"114":1,"2935":1}}],["stuck",{"0":{"1350":1},"2":{"210":1,"222":1,"263":1,"294":1,"1350":1,"1485":1,"2001":1}}],["studiokestra",{"2":{"226":2}}],["studios",{"2":{"222":1}}],["studio",{"0":{"2666":1,"2676":1},"2":{"67":3,"132":1,"218":4,"222":16,"249":1,"291":2,"294":2,"2560":1,"2666":1,"2669":1,"2676":1}}],["stuff",{"2":{"50":2,"114":1,"231":2,"632":1,"635":1,"1457":2,"1458":2,"1599":1,"2410":1,"2554":1,"2882":1}}],["stlink",{"2":{"49":1,"2387":1,"2499":3,"2501":3}}],["st",{"2":{"49":1,"266":1,"383":2,"1484":2,"1550":1,"2387":6,"2498":1,"2499":3,"2500":2,"2501":7,"2721":1,"2728":1,"2729":3,"2734":2,"2735":1,"2737":1,"2738":1,"2743":1,"2795":1}}],["stapelberg",{"2":{"2656":2}}],["staff",{"2":{"2559":1}}],["staying",{"2":{"2424":1}}],["stay",{"2":{"279":1,"1822":2,"2492":1}}],["stays",{"2":{"199":1,"1407":1,"1492":1,"1675":1,"1824":1}}],["staging",{"2":{"2633":2}}],["staggering",{"2":{"1465":1}}],["staggered",{"2":{"222":1,"2422":1}}],["stage2",{"2":{"176":1}}],["stage",{"0":{"2705":1},"2":{"119":1,"141":1,"2676":1,"2677":1,"2680":1,"2705":1}}],["stabilisers",{"2":{"2414":1,"2415":1}}],["stability",{"0":{"1939":1},"2":{"1664":1,"1940":1}}],["stabilizes",{"2":{"1939":1}}],["stabilize",{"2":{"176":1,"191":1}}],["stable",{"2":{"222":1,"294":2,"406":1,"1939":2,"1940":1}}],["stacks",{"0":{"2737":1},"2":{"2729":1,"2732":1,"2739":1,"2743":1}}],["stackexchange",{"2":{"1552":1}}],["stacked",{"2":{"210":1}}],["stacktrace",{"2":{"523":1}}],["stack",{"0":{"2729":1},"2":{"199":2,"210":1,"366":2,"544":1,"561":1,"1415":1,"1416":2,"1421":1,"1997":1,"2001":2,"2005":2,"2008":3,"2291":1,"2313":1,"2550":1,"2552":1,"2650":1,"2729":2,"2734":1}}],["stale",{"2":{"191":1}}],["stands",{"2":{"2694":1}}],["stand",{"2":{"1323":1}}],["standpoint",{"2":{"626":1,"1340":2}}],["standalone",{"2":{"700":1,"722":1,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1}}],["standaside",{"2":{"154":2,"160":1}}],["standards",{"2":{"244":1,"266":1,"308":1,"1189":1,"1340":1,"1427":1,"2562":1,"2721":1,"2895":1}}],["standardisation",{"2":{"238":1}}],["standardised",{"2":{"198":1,"2746":1}}],["standardise",{"2":{"160":1,"182":1}}],["standardizing",{"2":{"614":1}}],["standardization",{"2":{"236":1,"266":2}}],["standardized",{"2":{"134":1}}],["standard",{"2":{"125":2,"134":1,"163":1,"176":3,"185":2,"191":1,"199":1,"208":2,"266":1,"308":1,"320":1,"488":1,"511":1,"514":1,"536":1,"565":1,"572":2,"759":1,"1245":1,"1343":1,"1484":3,"1626":1,"1759":1,"1778":1,"1779":1,"1780":1,"1835":2,"1968":1,"1992":1,"2284":1,"2286":2,"2287":2,"2289":1,"2318":1,"2410":1,"2411":2,"2479":1,"2545":1,"2675":1,"2706":1,"2721":4,"2744":1,"2750":1,"2754":1,"2780":1,"2797":1,"2830":2,"2831":1,"2882":1,"2923":1}}],["standing",{"2":{"139":1}}],["star",{"2":{"686":1,"1791":2,"2379":1,"2492":1}}],["starlight",{"2":{"236":1,"277":1,"294":1,"308":1,"317":1,"2063":12}}],["staryu",{"2":{"102":2}}],["started",{"0":{"1761":1,"2462":1},"2":{"581":1,"614":1,"631":1,"632":1,"635":1,"681":2,"1309":1,"1332":1,"1333":1,"1340":1,"1419":1,"1608":1,"1609":1,"1956":1,"2465":1,"2579":1,"2592":1,"2612":1,"2648":1,"2652":1,"2667":1,"2707":1,"2750":1,"2776":1,"2927":1}}],["start=none",{"2":{"522":1}}],["starting",{"0":{"2415":1},"2":{"119":1,"510":1,"644":1,"711":1,"1478":1,"1487":1,"1519":1,"1532":1,"1656":1,"1789":1,"1951":1,"2182":2,"2265":1,"2281":1,"2310":1,"2421":1,"2440":1,"2501":2,"2648":1,"2667":1,"2707":1,"2750":1,"2760":1,"2768":1,"2875":1,"2883":1,"2915":1}}],["start",{"0":{"1248":1,"1333":1,"1794":1,"1799":1,"2337":1,"2352":1,"2399":1},"1":{"1249":1,"1250":1,"2400":1,"2401":1,"2402":1,"2403":1},"2":{"50":1,"75":1,"132":1,"191":3,"196":1,"198":1,"222":1,"277":1,"347":1,"377":1,"406":5,"446":1,"447":1,"448":1,"487":1,"510":2,"519":1,"522":7,"542":1,"562":1,"574":1,"616":1,"666":1,"673":1,"681":1,"685":1,"1195":1,"1198":1,"1244":1,"1245":2,"1248":1,"1262":1,"1324":1,"1333":1,"1337":1,"1425":3,"1458":1,"1484":1,"1486":1,"1497":1,"1533":1,"1655":5,"1656":1,"1658":2,"1707":1,"1785":2,"1789":1,"1791":4,"1951":1,"1956":7,"1962":1,"2002":1,"2050":1,"2178":2,"2191":4,"2212":1,"2214":1,"2216":1,"2217":1,"2281":1,"2283":5,"2288":1,"2323":1,"2398":1,"2401":1,"2415":1,"2420":1,"2425":1,"2459":1,"2511":4,"2560":1,"2575":1,"2578":1,"2582":1,"2607":1,"2615":1,"2622":1,"2627":2,"2631":1,"2644":1,"2650":1,"2671":1,"2675":2,"2676":1,"2678":1,"2700":1,"2760":1,"2768":1,"2769":1,"2770":1,"2793":1,"2900":1,"2923":1,"2927":1,"2942":1}}],["startup",{"0":{"2927":1},"2":{"49":1,"65":1,"112":1,"114":1,"134":1,"183":8,"191":3,"266":1,"572":2,"631":2,"632":1,"1479":3,"1480":4,"1545":1,"1681":1,"1937":1,"1941":1,"2271":1,"2324":1,"2652":1,"2853":1,"2875":2}}],["starts",{"2":{"49":1,"362":1,"458":1,"572":1,"1369":1,"1479":1,"1480":1,"1492":1,"1933":1,"1956":2,"1994":1,"2266":1,"2748":1,"2927":1}}],["stat",{"2":{"1978":1}}],["station",{"2":{"2273":2,"2414":1}}],["stating",{"2":{"408":1,"2560":1}}],["statically",{"2":{"2727":1,"2749":1}}],["static",{"2":{"50":1,"202":1,"328":1,"348":1,"459":1,"577":1,"645":2,"1378":1,"1521":1,"1737":3,"1833":1,"1843":2,"1844":5,"1948":1,"1949":1,"1950":1,"1989":1,"2063":5,"2066":5,"2170":2,"2174":2,"2175":1,"2176":3,"2177":2,"2179":1,"2180":1,"2270":1,"2278":1,"2279":1,"2280":1,"2310":1,"2311":1,"2312":1,"2525":2,"2646":1,"2727":1,"2728":1,"2734":1,"2743":1,"2749":1,"2750":11,"2760":1,"2761":1,"2767":1,"2768":1,"2770":1,"2772":1,"2870":1,"2887":1,"2941":1}}],["statuses",{"2":{"371":1}}],["status",{"0":{"371":1,"770":1,"773":1,"776":1,"779":1,"782":1,"785":1,"788":1,"791":1,"794":1,"1251":1,"1254":1,"1256":1,"1259":1,"1530":1,"2185":1,"2551":1},"1":{"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":1,"781":1,"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1,"795":1,"796":1,"1252":1,"1253":1,"1255":1,"1257":1,"1258":1,"1260":1,"1261":1},"2":{"92":1,"160":1,"191":2,"199":2,"359":1,"360":1,"368":1,"371":2,"577":1,"578":1,"579":3,"580":2,"581":2,"582":2,"643":1,"772":3,"775":3,"778":3,"781":3,"784":3,"787":3,"790":3,"793":3,"796":3,"1253":2,"1255":1,"1258":3,"1261":3,"1326":1,"1378":3,"1407":2,"1413":2,"1425":1,"1465":1,"1520":1,"1523":1,"1524":1,"1615":2,"1619":2,"1672":4,"1947":2,"1950":1,"1978":1,"1981":9,"2002":1,"2008":1,"2074":1,"2181":1,"2197":1,"2269":6,"2277":2,"2280":1,"2288":1,"2507":1,"2519":1,"2528":1,"2548":1,"2551":1,"2644":1,"2692":1,"2700":1,"2873":2,"2881":1,"2928":2}}],["stats",{"2":{"50":1}}],["stateless",{"2":{"2862":1}}],["state|default",{"2":{"2073":1,"2074":1}}],["state++",{"2":{"1844":1,"2066":1}}],["stated",{"2":{"1623":1,"2691":1}}],["states",{"2":{"247":1,"644":1,"1359":1,"1409":1,"1650":1,"1741":1,"1983":1,"2027":1,"2029":1,"2311":2,"2312":1,"2627":1}}],["statement",{"0":{"231":1},"2":{"194":1,"236":1,"317":1,"333":1,"510":2,"516":1,"589":1,"1432":1,"1440":1,"1527":1,"1616":1,"2302":1,"2457":1}}],["statements",{"0":{"516":1},"2":{"145":1,"231":1,"514":1,"516":1,"518":1,"523":1,"526":1,"530":1,"533":1,"664":1,"2942":1}}],["state",{"0":{"14":1,"323":1,"1375":1,"1424":1,"1426":1,"1539":1,"1595":1,"1603":1,"1827":1,"1834":1,"1836":1,"1900":1,"2144":1,"2786":2,"2932":1},"1":{"1376":1,"1377":1,"1378":1,"1837":1,"1901":1,"2145":1,"2787":2},"2":{"14":2,"31":1,"49":1,"50":1,"62":1,"63":1,"74":1,"93":1,"105":10,"112":1,"114":2,"160":3,"166":2,"176":2,"179":1,"199":2,"222":1,"247":1,"285":3,"298":1,"323":9,"325":7,"328":2,"510":1,"559":3,"563":1,"568":7,"611":1,"623":2,"637":4,"654":1,"711":1,"713":7,"714":4,"715":1,"719":1,"742":1,"746":1,"1202":1,"1289":1,"1353":1,"1359":7,"1375":9,"1378":9,"1407":10,"1409":1,"1410":1,"1413":7,"1419":1,"1422":37,"1424":6,"1425":7,"1426":9,"1445":1,"1464":18,"1479":1,"1480":2,"1489":1,"1490":1,"1492":2,"1493":1,"1497":3,"1512":1,"1515":1,"1533":3,"1538":3,"1539":2,"1552":1,"1564":1,"1569":1,"1591":1,"1595":1,"1603":1,"1607":1,"1614":1,"1615":2,"1632":6,"1636":4,"1638":1,"1639":3,"1651":7,"1656":2,"1675":1,"1740":1,"1741":1,"1745":1,"1747":1,"1775":1,"1826":1,"1827":2,"1828":1,"1829":7,"1830":2,"1831":4,"1832":7,"1833":8,"1834":5,"1835":1,"1836":1,"1841":1,"1844":3,"1846":1,"1852":1,"1854":1,"1856":1,"1857":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"1900":1,"1901":1,"1935":1,"1947":6,"1949":1,"1950":1,"1983":1,"1987":7,"1989":6,"2001":12,"2002":2,"2004":10,"2005":12,"2014":1,"2016":1,"2018":1,"2020":1,"2022":1,"2061":1,"2066":3,"2069":1,"2073":6,"2074":5,"2078":1,"2080":1,"2082":1,"2083":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2144":1,"2145":1,"2166":2,"2170":1,"2181":1,"2183":23,"2184":3,"2193":2,"2196":2,"2206":1,"2207":1,"2209":1,"2269":9,"2277":6,"2279":1,"2280":1,"2302":1,"2303":4,"2307":4,"2308":10,"2309":14,"2310":40,"2311":29,"2312":35,"2344":1,"2449":1,"2505":1,"2506":1,"2519":1,"2548":1,"2551":8,"2627":2,"2634":1,"2644":1,"2645":3,"2662":1,"2750":2,"2786":3,"2787":17,"2847":2,"2849":4,"2850":4,"2854":1,"2859":1,"2860":2,"2864":1,"2865":2,"2870":1,"2871":1,"2872":1,"2873":7,"2885":2,"2929":1,"2930":1,"2932":2,"2942":4}}],["struggle",{"2":{"2828":1}}],["structs",{"2":{"236":1,"249":1,"285":2,"2758":1,"2766":1}}],["struct",{"0":{"728":1,"804":1,"833":1,"862":1,"892":1,"927":1,"961":1,"995":1,"1029":1,"1063":1,"1097":1,"1131":1,"1165":1,"1218":1,"1638":1,"1740":1,"1742":1},"1":{"729":1,"805":1,"834":1,"863":1,"893":1,"928":1,"962":1,"996":1,"1030":1,"1064":1,"1098":1,"1132":1,"1166":1,"1219":1,"1639":1,"1741":1,"1743":1},"2":{"31":1,"236":1,"266":1,"328":1,"1407":1,"1636":1,"1763":1,"1831":1,"1840":1,"1920":1,"1956":1,"1957":1,"2060":1,"2142":1,"2270":2,"2283":1,"2309":1,"2310":1,"2312":1,"2760":1,"2761":1,"2762":2,"2767":1,"2768":1,"2769":1,"2770":1,"2771":2,"2772":1,"2773":1}}],["structured",{"2":{"625":1,"1981":1,"1982":1}}],["structures",{"2":{"222":1,"556":1}}],["structure",{"0":{"2405":1,"2406":1,"2407":1,"2408":1,"2444":1},"1":{"2406":1,"2407":1,"2408":1,"2445":1,"2446":1,"2447":1,"2448":1,"2449":1,"2450":1},"2":{"22":1,"125":1,"185":1,"236":1,"323":1,"538":1,"754":1,"766":1,"767":1,"1407":5,"1457":1,"1519":2,"1596":1,"1949":2,"1981":1,"1982":1,"2050":1,"2279":2,"2303":2,"2312":1,"2407":2,"2549":1,"2578":1,"2583":1,"2758":1,"2766":1,"2937":1}}],["stroke",{"2":{"2288":1,"2293":2}}],["strokes",{"2":{"2284":2,"2288":1,"2289":1,"2291":1}}],["stronger",{"2":{"2429":1}}],["strongly",{"2":{"182":1,"397":1,"1190":1,"1621":1,"1623":1,"1933":1,"2585":1,"2619":1,"2620":1,"2722":1}}],["strong",{"2":{"182":1,"397":2,"529":1,"535":1,"1680":10,"2205":1,"2420":1,"2427":1,"2721":1}}],["stress",{"2":{"1789":1}}],["strength",{"2":{"1674":2,"1682":1,"2662":1}}],["stretching",{"2":{"1491":1}}],["streamed",{"2":{"2750":1}}],["stream2",{"2":{"1300":1}}],["streampad",{"2":{"249":1}}],["stream",{"2":{"50":1,"114":1,"134":1,"1300":2,"1528":1,"2039":2}}],["streamline",{"2":{"50":1,"419":1}}],["streams",{"2":{"49":2}}],["strategies",{"2":{"2929":1}}],["strategy",{"2":{"312":1,"2600":1}}],["stranded",{"2":{"2422":1}}],["strange",{"2":{"14":1}}],["straight",{"2":{"2401":1,"2420":1,"2425":1}}],["straightforward",{"2":{"411":1,"470":1,"493":1,"680":1,"1361":1,"2476":1,"2610":1}}],["strain",{"2":{"2284":1}}],["strapped",{"2":{"1955":1}}],["stray",{"2":{"199":1,"222":1}}],["str",{"0":{"2342":1},"1":{"2343":1},"2":{"145":1,"191":1,"669":1,"1444":4,"1528":1,"1529":4,"1680":8,"2294":4,"2343":1,"2750":3,"2882":3,"2886":5}}],["strives",{"2":{"2895":1}}],["strike",{"2":{"182":1,"240":1}}],["stringified",{"2":{"2941":1}}],["stringify",{"2":{"1962":1}}],["strings",{"0":{"527":1,"1444":1},"2":{"176":1,"191":1,"308":1,"431":2,"473":1,"489":1,"524":1,"527":1,"668":1,"669":2,"673":1,"1330":1,"1437":2,"1442":2,"1444":1,"1528":2,"1788":1,"2052":1,"2377":1,"2384":1,"2941":1}}],["string",{"0":{"363":1,"364":1,"365":1,"1440":1,"2218":1,"2227":2,"2229":2,"2231":2,"2233":2,"2246":2,"2247":2,"2342":1,"2941":1},"1":{"1441":1,"1442":1,"1443":1,"1444":1,"2219":1,"2220":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":3,"2229":1,"2230":3,"2231":1,"2232":3,"2233":1,"2234":3,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2241":1,"2242":1,"2243":1,"2244":1,"2245":1,"2246":1,"2247":1,"2343":1},"2":{"94":1,"114":2,"142":1,"145":3,"160":1,"176":1,"190":1,"191":4,"196":5,"222":1,"249":1,"266":1,"294":1,"308":2,"480":1,"489":2,"492":1,"586":3,"591":6,"668":1,"669":1,"1324":8,"1327":5,"1440":9,"1442":21,"1444":7,"1465":2,"1466":3,"1480":1,"1484":2,"1528":1,"1529":5,"1532":4,"1533":1,"1599":1,"1616":2,"1709":1,"1710":1,"1711":1,"1712":1,"1785":5,"1788":1,"1791":2,"1947":1,"1956":6,"2162":2,"2167":2,"2168":3,"2170":10,"2218":1,"2219":2,"2221":5,"2222":1,"2224":1,"2225":2,"2227":3,"2228":2,"2229":1,"2230":2,"2231":3,"2232":2,"2233":3,"2234":2,"2246":4,"2247":4,"2277":1,"2283":6,"2307":1,"2342":1,"2343":1,"2377":1,"2384":1,"2748":1,"2750":2,"2845":10,"2846":5,"2849":2,"2850":1,"2851":1,"2852":1,"2857":2,"2861":3,"2862":4,"2864":2,"2865":1,"2868":1,"2870":2,"2871":2,"2873":2,"2874":1,"2875":3,"2876":2,"2879":4,"2941":11}}],["strictly",{"2":{"1377":1,"1404":1,"1636":1,"2669":1}}],["strict",{"0":{"1605":1,"1609":1,"1790":1},"2":{"75":1,"112":1,"191":1,"438":1,"561":1,"562":2,"1313":1,"1378":1,"1609":1,"1790":1,"2037":1,"2742":1,"2863":1}}],["stripping",{"2":{"2418":2,"2422":1}}],["strippers",{"2":{"2414":1}}],["stripped",{"2":{"328":1,"2418":1}}],["strip",{"2":{"45":1,"199":1,"222":2,"1458":1,"1465":1,"1466":1,"2172":2,"2178":1,"2201":2,"2274":1,"2418":1,"2420":1,"2448":3}}],["s",{"0":{"624":1,"1317":1,"1709":1,"1711":1,"2137":1,"2139":1,"2631":1,"2926":1},"1":{"625":1,"1710":1,"1712":1,"2140":1,"2632":1,"2633":1,"2634":1,"2927":1,"2928":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"14":1,"46":1,"49":1,"69":1,"70":1,"72":1,"82":1,"99":2,"109":1,"114":4,"116":1,"119":2,"125":1,"133":1,"134":1,"138":1,"141":1,"143":1,"160":31,"163":1,"174":1,"176":7,"182":3,"185":1,"191":2,"194":1,"196":5,"213":1,"222":6,"224":1,"243":1,"249":2,"265":1,"266":4,"268":1,"273":1,"276":1,"279":2,"288":3,"308":2,"312":2,"317":1,"320":1,"328":1,"331":1,"334":1,"338":6,"342":1,"347":1,"362":2,"369":2,"376":1,"383":2,"387":1,"393":1,"397":2,"405":1,"414":1,"441":1,"443":1,"459":3,"460":1,"471":2,"482":1,"486":1,"487":3,"489":2,"492":3,"493":1,"494":3,"498":2,"508":1,"510":3,"515":1,"527":1,"530":2,"559":2,"566":1,"567":1,"572":2,"583":1,"586":3,"587":3,"589":1,"591":1,"594":1,"608":1,"611":2,"617":1,"620":1,"627":1,"631":2,"632":1,"635":1,"637":2,"644":1,"645":2,"649":1,"654":2,"655":1,"656":1,"657":1,"662":1,"666":1,"667":1,"671":1,"673":1,"680":1,"683":2,"684":2,"695":1,"696":1,"718":1,"723":2,"729":3,"743":1,"745":1,"747":1,"750":1,"751":3,"752":1,"753":1,"754":1,"765":3,"805":3,"828":1,"829":1,"834":3,"863":3,"893":3,"928":3,"962":3,"996":3,"1030":3,"1064":3,"1098":3,"1132":3,"1166":3,"1194":1,"1196":1,"1200":3,"1201":3,"1219":3,"1245":3,"1249":2,"1266":2,"1282":2,"1291":1,"1292":2,"1294":1,"1295":1,"1324":3,"1327":1,"1329":1,"1333":1,"1335":2,"1339":1,"1340":3,"1344":2,"1353":1,"1361":1,"1362":1,"1374":1,"1375":1,"1377":1,"1378":1,"1385":1,"1387":2,"1400":1,"1404":1,"1406":1,"1407":2,"1416":3,"1418":1,"1419":3,"1421":1,"1427":1,"1428":3,"1433":1,"1436":1,"1441":1,"1442":1,"1448":1,"1451":1,"1458":4,"1459":1,"1461":1,"1464":1,"1479":2,"1486":1,"1487":1,"1493":2,"1494":1,"1511":1,"1512":1,"1522":2,"1526":2,"1529":2,"1533":1,"1540":1,"1552":1,"1584":1,"1587":1,"1591":1,"1599":2,"1603":1,"1606":1,"1611":1,"1612":2,"1614":1,"1617":1,"1619":1,"1621":1,"1622":2,"1628":2,"1650":1,"1655":1,"1659":1,"1661":1,"1679":1,"1693":4,"1710":1,"1712":1,"1732":2,"1735":1,"1756":1,"1759":1,"1771":1,"1780":1,"1782":1,"1785":5,"1788":1,"1838":1,"1840":3,"1845":1,"1847":1,"1922":1,"1926":1,"1929":1,"1930":2,"1931":1,"1932":1,"1933":3,"1954":1,"1956":1,"1971":1,"1977":1,"1979":1,"1985":1,"1986":1,"2041":2,"2050":3,"2058":1,"2060":3,"2063":3,"2064":2,"2068":1,"2070":1,"2138":1,"2140":1,"2160":1,"2169":1,"2170":6,"2181":1,"2191":8,"2194":4,"2216":1,"2218":1,"2248":1,"2251":1,"2254":2,"2258":1,"2262":2,"2264":3,"2266":3,"2269":1,"2270":2,"2271":2,"2274":1,"2281":3,"2283":1,"2289":2,"2293":1,"2294":3,"2295":1,"2298":1,"2301":4,"2302":1,"2303":4,"2305":1,"2312":1,"2319":1,"2323":2,"2324":1,"2364":1,"2368":4,"2376":3,"2383":1,"2384":1,"2386":1,"2390":3,"2391":1,"2398":2,"2401":3,"2403":1,"2405":1,"2407":1,"2410":3,"2411":3,"2412":2,"2418":8,"2421":2,"2422":4,"2423":1,"2424":1,"2427":4,"2429":4,"2432":1,"2436":1,"2443":1,"2444":1,"2445":2,"2451":1,"2452":1,"2457":2,"2467":1,"2475":1,"2476":1,"2478":1,"2480":1,"2482":1,"2485":1,"2494":2,"2495":1,"2499":2,"2503":3,"2504":1,"2516":1,"2522":1,"2535":3,"2550":1,"2554":1,"2556":4,"2560":2,"2561":3,"2562":1,"2563":1,"2572":1,"2576":1,"2577":1,"2579":1,"2583":1,"2592":1,"2594":2,"2605":1,"2609":2,"2610":2,"2612":1,"2619":1,"2621":1,"2622":1,"2625":1,"2626":1,"2627":3,"2628":2,"2630":5,"2632":2,"2633":3,"2636":2,"2645":1,"2669":2,"2671":3,"2672":2,"2673":2,"2676":3,"2677":1,"2678":2,"2679":2,"2680":2,"2687":2,"2688":2,"2691":1,"2694":1,"2702":2,"2711":1,"2713":1,"2714":1,"2719":1,"2721":6,"2722":1,"2723":1,"2724":1,"2728":4,"2729":2,"2730":1,"2734":3,"2745":1,"2747":1,"2748":3,"2749":3,"2750":4,"2751":1,"2757":2,"2758":1,"2759":1,"2760":1,"2763":1,"2764":1,"2766":1,"2769":2,"2770":2,"2771":1,"2773":1,"2775":3,"2776":8,"2777":2,"2781":1,"2788":1,"2793":2,"2805":1,"2812":1,"2830":1,"2845":2,"2849":2,"2851":1,"2858":2,"2869":2,"2873":1,"2877":1,"2881":1,"2884":1,"2887":2,"2895":1,"2905":5,"2912":2,"2918":1,"2919":1,"2921":1,"2923":1,"2924":2,"2928":1,"2929":4,"2930":2,"2932":1,"2934":3,"2935":1,"2936":1,"2937":6,"2940":1,"2941":2,"2942":2}}],["sixty",{"2":{"1487":1}}],["sixtyfive",{"2":{"222":1}}],["sixth",{"2":{"1353":1}}],["six",{"2":{"1289":1,"2215":1,"2289":1}}],["sipeed",{"2":{"552":1}}],["situation",{"2":{"523":1,"1294":1,"1410":1,"1789":1}}],["situations",{"2":{"523":1,"540":1,"624":1,"1363":1,"1440":1,"1459":1,"2621":4,"2835":1,"2882":1}}],["sites",{"2":{"2562":1}}],["site",{"2":{"459":1,"2935":1}}],["sit",{"2":{"357":1,"673":1}}],["silvery",{"2":{"2420":1}}],["silakka54",{"2":{"294":1}}],["silent=true",{"2":{"2410":1}}],["silent",{"2":{"236":1}}],["silicon",{"2":{"49":1}}],["sizing",{"2":{"222":1,"344":1}}],["size=x",{"2":{"2942":1}}],["sizey",{"2":{"2750":1}}],["sizex",{"2":{"2750":1}}],["sizeof",{"2":{"1954":1,"2270":2,"2282":1,"2760":2,"2761":2,"2767":1,"2768":2,"2769":1,"2770":2,"2771":1,"2772":1,"2882":1,"2942":1}}],["sized",{"0":{"1954":1,"2282":1},"1":{"1955":1},"2":{"2288":1}}],["sizes",{"0":{"1603":1},"2":{"134":1,"160":1,"212":1,"221":1,"751":1,"1603":3,"1945":1,"1954":1,"2270":1,"2749":1,"2767":1,"2775":1}}],["size",{"0":{"717":1},"2":{"3":1,"15":1,"28":1,"69":1,"70":1,"75":1,"113":1,"114":10,"134":4,"138":1,"160":4,"166":1,"176":2,"191":1,"199":1,"203":1,"210":2,"212":1,"222":4,"236":5,"266":2,"553":1,"560":1,"561":1,"563":1,"568":2,"570":1,"617":1,"716":3,"717":4,"745":2,"746":4,"747":4,"748":3,"750":2,"751":11,"752":9,"753":11,"756":10,"1362":4,"1521":2,"1526":1,"1527":4,"1655":1,"1656":3,"1675":3,"1691":1,"1741":1,"1843":1,"1929":2,"1930":2,"1934":2,"1945":1,"1954":6,"1955":3,"1956":7,"2063":2,"2064":1,"2159":1,"2182":1,"2268":1,"2270":6,"2276":1,"2282":6,"2283":2,"2293":2,"2302":1,"2323":1,"2372":2,"2374":1,"2375":2,"2410":2,"2411":2,"2422":1,"2451":1,"2496":1,"2580":2,"2622":2,"2689":1,"2721":1,"2746":1,"2747":1,"2748":7,"2749":3,"2751":1,"2760":4,"2768":4,"2857":4,"2881":2,"2882":2,"2885":1,"2894":2,"2942":2}}],["sion",{"2":{"2170":1}}],["siod0",{"2":{"2699":1,"2702":2}}],["siod3",{"2":{"1201":2}}],["siod1",{"2":{"1201":1,"2699":1}}],["sio",{"0":{"1201":1},"2":{"176":1,"199":1,"249":1,"1195":1,"1198":1,"1201":6,"1402":2,"2692":2,"2699":2,"2702":1,"2704":3}}],["sinks",{"2":{"2662":1}}],["sink",{"2":{"2559":1}}],["sinusoidal",{"2":{"1678":1}}],["sine",{"2":{"1474":2,"1843":2}}],["singa",{"2":{"222":1}}],["single",{"0":{"478":1,"1357":1,"1989":1,"2300":1,"2305":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"16":1,"94":1,"112":1,"113":1,"114":2,"149":1,"191":1,"210":1,"222":3,"236":1,"262":1,"285":3,"311":1,"328":1,"369":1,"390":1,"463":1,"467":1,"475":1,"481":1,"516":1,"518":1,"525":2,"573":2,"576":1,"663":2,"692":1,"693":1,"704":1,"721":1,"728":1,"732":1,"765":1,"794":1,"797":1,"798":1,"802":1,"804":1,"805":1,"810":1,"814":2,"816":1,"818":1,"820":2,"826":1,"827":1,"831":1,"833":1,"834":1,"838":1,"842":2,"844":1,"846":1,"848":2,"852":1,"853":1,"860":1,"862":1,"863":1,"868":1,"872":2,"874":1,"876":1,"878":2,"884":1,"885":1,"890":1,"892":1,"893":1,"900":1,"904":2,"906":1,"908":1,"910":2,"916":1,"917":1,"925":1,"927":1,"928":1,"935":1,"939":2,"941":1,"943":1,"945":2,"951":1,"952":1,"959":1,"961":1,"962":1,"969":1,"973":2,"975":1,"977":1,"979":2,"985":1,"986":1,"993":1,"995":1,"996":1,"1003":1,"1007":2,"1009":1,"1011":1,"1013":2,"1019":1,"1020":1,"1027":1,"1029":1,"1030":1,"1037":1,"1041":2,"1043":1,"1045":1,"1047":2,"1053":1,"1054":1,"1061":1,"1063":1,"1064":1,"1071":1,"1075":2,"1077":1,"1079":1,"1081":2,"1087":1,"1088":1,"1095":1,"1097":1,"1098":1,"1105":1,"1109":2,"1111":1,"1113":1,"1115":2,"1121":1,"1122":1,"1129":1,"1131":1,"1132":1,"1139":1,"1143":2,"1145":1,"1147":1,"1149":2,"1155":1,"1156":1,"1163":1,"1165":1,"1166":1,"1173":1,"1177":2,"1179":1,"1181":1,"1183":2,"1189":2,"1211":1,"1212":1,"1216":1,"1218":1,"1219":1,"1226":1,"1230":2,"1232":1,"1234":1,"1236":2,"1270":1,"1272":1,"1280":2,"1303":1,"1308":6,"1309":1,"1310":1,"1361":1,"1374":1,"1375":1,"1392":1,"1409":1,"1413":1,"1422":2,"1438":3,"1462":1,"1480":1,"1487":1,"1532":3,"1535":2,"1583":1,"1587":1,"1636":1,"1679":1,"1693":1,"1742":1,"1770":1,"1843":6,"1844":1,"1859":1,"1940":1,"1941":1,"1949":2,"1956":2,"1965":2,"1978":2,"1982":1,"2052":1,"2058":1,"2063":18,"2066":1,"2085":1,"2171":1,"2191":2,"2217":1,"2243":1,"2252":1,"2265":1,"2279":2,"2283":2,"2290":1,"2298":1,"2302":2,"2303":1,"2305":1,"2310":17,"2311":12,"2312":11,"2340":1,"2410":1,"2422":2,"2438":1,"2446":1,"2497":1,"2556":1,"2570":1,"2610":1,"2707":1,"2719":1,"2721":1,"2727":1,"2734":1,"2735":1,"2744":1,"2762":1,"2765":1,"2771":1,"2788":2,"2822":1,"2833":1}}],["sinanju",{"2":{"222":1}}],["sinc",{"2":{"191":1}}],["since",{"2":{"113":1,"175":1,"240":1,"297":1,"520":1,"521":1,"522":1,"570":1,"698":1,"716":1,"717":2,"1407":1,"1419":1,"1464":1,"1465":1,"1478":1,"1482":1,"1508":1,"1519":1,"1552":1,"1589":1,"1635":1,"1679":1,"1779":1,"1782":1,"1828":1,"1971":1,"2182":1,"2212":1,"2258":1,"2262":1,"2268":2,"2303":2,"2324":1,"2372":1,"2389":1,"2422":1,"2440":1,"2459":1,"2495":1,"2546":1,"2627":2,"2669":1,"2713":1,"2749":1,"2776":1,"2786":1,"2911":2,"2915":1,"2918":1,"2921":1,"2936":1}}],["signed",{"2":{"1751":1,"1983":4,"2167":1,"2169":1}}],["sign",{"2":{"474":1,"611":1,"2905":2}}],["significance",{"2":{"2313":1}}],["significantly",{"2":{"196":1,"570":1,"1410":1,"1929":1,"2747":2}}],["significant",{"2":{"107":1,"169":1,"182":1,"203":1,"228":1,"543":1,"617":2,"750":1,"763":1,"1249":1,"1714":1,"1716":1,"1961":1,"1968":1,"2265":1,"2289":1,"2411":1,"2457":1,"2559":1,"2747":2,"2749":1}}],["signifies",{"2":{"397":1,"2678":1,"2770":1}}],["signum",{"2":{"122":2}}],["signature65",{"2":{"222":1}}],["signature",{"0":{"272":1},"2":{"114":1,"272":1,"654":1,"2495":1}}],["signals",{"2":{"2459":1}}],["signalling",{"2":{"125":1,"185":1}}],["signal",{"2":{"92":1,"176":1,"390":4,"1475":1,"1535":1,"1543":1,"1624":1,"1636":1,"1678":1,"1679":1}}],["sided",{"2":{"1982":1,"2428":1}}],["sidebar",{"2":{"678":1,"2579":1,"2676":2}}],["side",{"2":{"74":1,"141":1,"149":1,"160":2,"191":2,"222":1,"387":2,"553":1,"566":6,"568":1,"579":2,"664":1,"1310":1,"1649":1,"1653":3,"1660":2,"1679":2,"1968":1,"1970":3,"1971":2,"1976":1,"1980":2,"1982":3,"1990":5,"2007":1,"2009":1,"2050":1,"2052":1,"2191":4,"2263":1,"2264":1,"2267":3,"2269":12,"2270":6,"2271":7,"2298":1,"2394":1,"2396":1,"2420":1,"2421":1,"2424":1,"2459":1,"2500":1,"2627":1,"2721":1,"2722":1,"2750":5,"2918":3}}],["sides",{"0":{"2270":1},"2":{"31":1,"34":1,"107":2,"134":1,"222":1,"568":2,"1660":1,"1775":1,"1971":1,"1976":1,"1980":1,"2182":2,"2254":1,"2267":2,"2269":1,"2271":1,"2298":1,"2427":2,"2519":6,"2548":6}}],["sidestep",{"2":{"24":1}}],["simulation",{"2":{"2063":1}}],["simulate",{"2":{"1487":1,"2063":1}}],["simultaneous",{"2":{"620":1,"716":4,"1468":1,"1979":1,"2302":2}}],["simultaneously",{"2":{"283":1,"716":1,"1471":1,"1480":1,"1587":1,"1588":1,"1664":1,"1928":1,"2174":1,"2293":1,"2302":1,"2550":1}}],["similarity",{"2":{"2721":1}}],["similarly",{"2":{"82":1,"1375":1,"1469":1,"1472":1,"1635":1,"1828":1,"2162":1,"2167":1,"2941":1}}],["similar",{"2":{"49":2,"99":1,"128":1,"139":1,"208":1,"214":1,"231":1,"294":1,"428":1,"489":1,"586":1,"626":1,"644":1,"699":1,"1297":1,"1335":1,"1417":1,"1451":1,"1457":1,"1543":1,"1675":1,"1760":1,"1771":1,"1993":1,"2005":1,"2174":1,"2254":1,"2297":1,"2302":1,"2312":3,"2313":1,"2324":1,"2495":1,"2501":1,"2560":1,"2569":1,"2572":1,"2580":1,"2605":1,"2608":1,"2622":1,"2630":1,"2700":1,"2729":1,"2731":1,"2734":1,"2922":1,"2937":1,"2939":1}}],["simplfy",{"2":{"210":1}}],["simplified",{"2":{"2805":1}}],["simplifies",{"2":{"160":1,"198":1}}],["simplifying",{"2":{"164":1}}],["simplify",{"2":{"10":1,"145":1,"176":1,"191":2,"198":1,"210":1,"236":1,"262":1,"328":2,"419":1,"2707":1,"2722":1}}],["simply",{"0":{"2842":1},"2":{"31":1,"110":1,"194":1,"283":1,"370":1,"430":1,"485":1,"491":1,"659":1,"666":1,"671":1,"711":1,"716":1,"750":1,"773":1,"1285":1,"1379":1,"1493":1,"1497":1,"1504":1,"1532":1,"1636":1,"1711":1,"1715":1,"1844":1,"1859":1,"1861":1,"2051":1,"2066":1,"2085":1,"2087":1,"2167":1,"2172":1,"2227":1,"2231":1,"2233":1,"2293":1,"2310":1,"2430":1,"2473":1,"2494":1,"2495":1,"2501":1,"2545":1,"2629":1,"2653":1,"2711":1,"2878":1}}],["simplest",{"2":{"2606":1,"2629":1,"2687":1}}],["simpler",{"2":{"236":1,"397":1,"2669":1,"2924":1}}],["simple",{"0":{"471":1,"520":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1505":1,"1506":1,"1768":1,"2052":1,"2305":1},"2":{"13":1,"94":1,"114":2,"249":1,"285":1,"361":1,"371":1,"538":1,"624":1,"667":1,"668":1,"1324":3,"1345":1,"1375":1,"1377":1,"1385":1,"1419":1,"1445":1,"1467":1,"1531":1,"1533":1,"1545":1,"1667":1,"1775":2,"1843":3,"1844":1,"2063":3,"2066":1,"2224":1,"2273":1,"2288":1,"2296":1,"2302":1,"2305":1,"2377":1,"2384":1,"2416":1,"2425":1,"2467":1,"2469":1,"2572":1,"2590":1,"2609":1,"2651":1,"2670":1,"2704":1,"2719":1,"2837":1,"2887":1,"2924":1,"2933":1}}],["sea",{"2":{"2706":1}}],["searches",{"2":{"441":1,"1427":1,"1522":1}}],["searched",{"2":{"317":1,"1522":1}}],["searching",{"2":{"294":1,"431":1,"1519":1,"2552":1,"2895":1}}],["search",{"2":{"114":1,"191":1,"236":2,"335":1,"431":2,"1519":1,"1533":1,"2503":2,"2542":2,"2552":1,"2560":1,"2721":1,"2942":1}}],["sep",{"2":{"2560":1}}],["sepr",{"2":{"2503":1,"2541":1}}],["separator",{"2":{"2503":2,"2541":2}}],["separation",{"0":{"2734":1,"2735":1},"2":{"236":1,"2442":1,"2727":1}}],["separated",{"2":{"323":1,"470":1,"519":1,"669":2,"2270":1,"2320":1,"2627":1,"2721":1}}],["separately",{"2":{"228":1,"414":1,"1460":1,"1606":1,"1649":1,"1928":1,"2722":2,"2789":1}}],["separate",{"2":{"18":1,"35":1,"114":1,"134":1,"210":2,"236":1,"266":1,"277":1,"285":2,"323":1,"410":1,"511":1,"559":1,"573":1,"613":3,"616":1,"669":1,"711":1,"712":1,"1340":1,"1427":1,"1444":1,"1540":1,"1545":1,"1955":1,"1992":1,"2005":1,"2295":1,"2322":1,"2323":1,"2428":1,"2455":1,"2494":1,"2671":1,"2707":1,"2713":1,"2719":1,"2735":1,"2750":1,"2783":1,"2930":1,"2937":2}}],["seq",{"2":{"1680":3,"1954":3}}],["sequential",{"2":{"191":1,"1949":1,"2210":1,"2279":1}}],["sequence",{"0":{"1801":1,"1802":1,"1805":1,"1807":1,"1810":1,"1813":1,"1816":1,"1819":1,"2206":1},"1":{"1803":1,"1804":1,"1808":1,"1809":1,"1811":1,"1812":1,"1814":1,"1815":1,"1817":1,"1818":1,"1820":1,"1821":1},"2":{"196":4,"294":1,"525":3,"530":1,"562":1,"1440":1,"1518":1,"1596":1,"1680":4,"1681":4,"1783":1,"1785":6,"1787":1,"1788":2,"1789":7,"1790":2,"1791":5,"1792":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1805":1,"1806":1,"1807":1,"1809":1,"1810":1,"1812":1,"1813":1,"1815":1,"1816":1,"1818":1,"1819":1,"1821":1,"2209":3,"2210":3,"2211":3,"2214":1,"2320":4,"2324":2,"2337":1,"2338":1,"2339":1,"2352":1,"2355":1,"2356":1,"2357":1,"2360":1,"2361":1,"2362":1,"2363":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2517":1,"2750":1,"2777":1,"2818":1,"2863":1,"2872":3,"2911":6,"2912":7,"2913":2,"2918":1}}],["sequences",{"2":{"134":1,"196":1,"492":2,"1680":2,"2218":1,"2324":1,"2474":1,"2906":1,"2912":1}}],["sequencer",{"0":{"2212":1,"2213":1},"1":{"2213":1,"2214":1,"2215":1,"2216":1,"2217":1},"2":{"63":1,"191":1,"199":1,"231":3,"2212":1,"2213":2,"2214":1,"2215":1,"2216":12,"2217":32,"2933":1,"2937":1}}],["sequencing",{"2":{"49":1,"176":1,"229":1}}],["semi",{"2":{"2310":1}}],["semitone",{"2":{"1919":2,"2520":2}}],["semitones",{"2":{"1919":10,"2520":10}}],["semicolon",{"2":{"1587":1,"1686":1,"1844":1,"2066":1,"2301":2,"2503":1,"2537":1}}],["semantics",{"2":{"199":1,"277":1}}],["seil",{"2":{"1355":2}}],["seigaiha",{"2":{"154":2}}],["selling",{"2":{"2560":24}}],["self",{"2":{"485":1,"532":6,"666":1,"1614":1,"1616":1,"1844":1,"2066":1}}],["selectable",{"2":{"1410":1}}],["selects",{"2":{"562":1,"1440":1,"2777":1,"2792":1,"2906":3,"2913":1}}],["selectively",{"2":{"2179":1}}],["selecting",{"0":{"1436":1,"2686":1,"2696":1,"2878":1},"1":{"2687":1,"2688":1,"2697":1,"2698":1,"2699":1},"2":{"266":1,"387":1,"743":1,"1310":1,"2291":1,"2566":1,"2656":1}}],["selection",{"0":{"2173":1,"2705":1},"2":{"75":1,"114":1,"188":1,"191":2,"199":1,"210":1,"222":1,"249":1,"285":1,"687":1,"740":1,"1286":1,"1541":1,"1614":1,"1931":2,"2032":1,"2159":1,"2368":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2448":1,"2685":1,"2695":1,"2705":1,"2721":1,"2792":1,"2865":1}}],["select",{"0":{"594":1,"595":1,"898":1,"933":1,"967":1,"1001":1,"1035":1,"1069":1,"1103":1,"1137":1,"1171":1,"1224":1},"1":{"899":1,"934":1,"968":1,"1002":1,"1036":1,"1070":1,"1104":1,"1138":1,"1172":1,"1225":1},"2":{"210":1,"236":1,"387":16,"391":3,"559":1,"568":1,"594":3,"595":1,"683":2,"684":1,"685":1,"723":2,"731":1,"737":1,"747":2,"756":2,"899":1,"934":1,"968":1,"1002":1,"1036":1,"1070":1,"1104":1,"1138":1,"1172":1,"1204":1,"1225":1,"1244":1,"1245":4,"1262":1,"1309":1,"1413":1,"1474":1,"1483":1,"1675":2,"1931":3,"1960":1,"1961":1,"1965":1,"1968":1,"1973":1,"1975":1,"1976":4,"2156":1,"2159":1,"2173":1,"2214":1,"2266":1,"2268":1,"2281":1,"2288":1,"2289":1,"2291":1,"2398":2,"2426":1,"2503":3,"2541":2,"2542":1,"2599":2,"2602":2,"2652":3,"2655":2,"2656":1,"2661":1,"2669":2,"2675":2,"2676":1,"2703":1,"2707":1,"2746":1,"2749":11,"2878":1,"2906":1,"2912":2,"2913":2}}],["selector",{"2":{"176":1,"2652":1}}],["selected",{"0":{"1207":1},"1":{"1208":1,"1209":1,"1210":1},"2":{"65":1,"186":1,"597":1,"718":1,"719":1,"750":1,"751":1,"765":1,"770":1,"773":1,"776":1,"779":1,"1195":1,"1197":1,"1198":1,"1200":3,"1201":4,"1251":1,"1254":1,"1256":1,"1259":1,"1291":1,"1469":1,"1474":1,"1475":1,"1476":1,"1479":4,"1480":4,"1677":1,"1681":1,"2180":1,"2320":1,"2321":5,"2324":4,"2325":2,"2337":1,"2338":1,"2339":1,"2370":1,"2533":2,"2702":1,"2705":1,"2895":2,"2896":1,"2906":2}}],["session",{"2":{"312":1}}],["segregrate",{"2":{"285":1}}],["segments",{"2":{"2182":5,"2184":2,"2418":1}}],["segment",{"2":{"236":3,"2182":6,"2184":3}}],["seven",{"2":{"2775":2}}],["seventyfive",{"2":{"222":1}}],["severity",{"2":{"312":1}}],["several",{"2":{"201":1,"215":2,"360":1,"372":1,"414":1,"488":1,"506":1,"538":1,"594":1,"608":1,"617":1,"631":1,"1189":1,"1195":1,"1198":1,"1203":1,"1340":1,"1345":1,"1670":1,"1781":1,"2000":1,"2263":1,"2287":1,"2306":1,"2390":1,"2443":1,"2444":1,"2475":1,"2492":1,"2574":1,"2645":1,"2650":1,"2684":1,"2862":1,"2895":1,"2937":1}}],["severely",{"2":{"123":1,"2881":1}}],["sekigon",{"2":{"114":1}}],["serbian",{"2":{"2880":5}}],["servicing",{"2":{"717":1}}],["services",{"2":{"573":1}}],["service",{"0":{"361":1},"1":{"362":1,"363":1,"364":1,"365":1},"2":{"294":1,"359":2,"361":1,"368":1,"371":1,"680":1,"1313":2,"1975":1,"2408":1,"2708":1,"2721":1}}],["served",{"2":{"577":1}}],["serves",{"2":{"459":1}}],["serve",{"2":{"459":3,"2817":1}}],["servertype",{"2":{"2676":1}}],["server",{"2":{"371":1,"427":1,"458":1,"2465":1,"2673":1,"2675":2,"2706":1,"2890":1}}],["serratus",{"2":{"222":1}}],["serenity",{"2":{"222":1}}],["serpent65",{"2":{"222":1}}],["serious",{"2":{"371":1,"2724":1}}],["series",{"0":{"2439":1},"2":{"160":1,"249":1,"387":2,"552":1,"589":1,"746":1,"747":1,"1471":1,"2483":1,"2934":1}}],["serialport>",{"2":{"2379":1}}],["serialized",{"2":{"1531":1,"1532":3}}],["serial",{"0":{"1189":1,"1200":1,"1314":1,"2259":1},"1":{"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":1,"1201":1,"1202":1,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1209":1,"1210":1},"2":{"30":1,"45":1,"63":2,"65":1,"74":1,"93":1,"94":1,"111":1,"112":2,"114":3,"133":2,"134":2,"160":2,"176":2,"191":5,"199":3,"277":11,"285":1,"308":2,"317":1,"568":7,"682":1,"1189":2,"1190":1,"1191":2,"1192":2,"1194":2,"1195":5,"1197":6,"1198":8,"1200":8,"1201":3,"1202":3,"1204":4,"1205":1,"1206":2,"1266":2,"1314":1,"1619":1,"1960":1,"1972":1,"1975":1,"2254":4,"2255":1,"2259":1,"2268":7,"2287":4,"2290":1,"2291":3,"2371":1,"2379":1,"2477":1,"2479":1,"2481":1,"2487":1,"2492":1,"2495":2,"2501":1,"2676":1,"2692":1,"2702":7,"2704":1,"2841":1,"2873":2}}],["sergiopoverony",{"2":{"114":1}}],["sentence",{"2":{"2310":1}}],["sentences",{"2":{"678":1,"1516":1,"1756":1}}],["sent",{"2":{"222":1,"263":2,"297":1,"320":1,"644":1,"1249":1,"1280":1,"1283":1,"1284":1,"1285":1,"1359":1,"1374":2,"1378":1,"1421":1,"1441":2,"1448":1,"1480":1,"1495":1,"1511":1,"1639":1,"1675":1,"1741":1,"1775":1,"1782":1,"1828":1,"1979":2,"1983":3,"1985":1,"1986":1,"2041":2,"2046":1,"2052":1,"2171":1,"2218":2,"2221":1,"2249":1,"2250":1,"2252":2,"2270":1,"2293":5,"2302":1,"2340":1,"2469":1,"2531":1,"2833":1,"2914":4,"2915":1,"2918":1,"2921":1,"2923":1}}],["sensible",{"2":{"2167":1}}],["sensitivity",{"2":{"1968":1,"1976":1,"2040":1}}],["sensitive",{"2":{"511":1,"642":1,"1434":1,"1968":3}}],["sensing",{"2":{"1310":1}}],["senselessclay",{"2":{"222":1}}],["sense75",{"2":{"210":1}}],["sense",{"2":{"123":1,"510":1,"617":1,"1340":1,"1513":1,"2159":1,"2660":1,"2707":1,"2900":1}}],["sensors",{"2":{"145":1,"273":1,"276":1,"284":1,"285":1,"1959":1,"1976":5,"1977":1,"1981":2,"2721":1}}],["sensor",{"0":{"276":1,"284":1,"1959":1,"1960":1,"1961":1,"1972":1,"1973":1,"1975":1,"1976":1},"1":{"1960":1,"1961":1,"1962":1,"1963":1,"1964":1,"1965":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1977":1},"2":{"114":3,"118":2,"160":4,"175":1,"176":1,"249":2,"273":3,"276":1,"284":1,"285":1,"328":1,"693":2,"1959":2,"1960":5,"1961":5,"1962":1,"1964":2,"1967":1,"1968":7,"1969":4,"1972":4,"1973":2,"1974":2,"1975":5,"1976":15,"1977":2,"1978":7,"1981":3}}],["sends",{"0":{"2469":1},"2":{"213":1,"680":1,"1361":1,"1374":1,"1416":1,"1438":1,"1447":1,"1448":1,"1449":1,"1519":1,"1684":2,"1764":1,"1981":3,"1983":1,"2164":1,"2302":4,"2504":1,"2565":1,"2610":1,"2745":1,"2792":1,"2877":1,"2922":1,"2923":1}}],["sendstring",{"0":{"142":1,"2879":1},"2":{"114":1,"145":1,"188":1,"191":1,"222":1,"1443":1,"1480":1,"2220":1,"2878":1,"2879":3,"2880":53}}],["sending",{"0":{"1324":1,"1917":1,"2050":1},"2":{"176":2,"191":2,"199":1,"559":1,"624":1,"1189":1,"1450":1,"1656":1,"1724":1,"1726":1,"1768":1,"1983":1,"1992":1,"2039":1,"2041":1,"2047":1,"2293":1,"2302":1,"2411":1,"2750":1,"2875":1,"2877":1}}],["sendyyeah",{"2":{"74":1}}],["sendz",{"2":{"74":1}}],["send",{"0":{"1440":1,"2056":1,"2218":1,"2227":1,"2229":1,"2231":1,"2233":1,"2235":1,"2237":1,"2239":1,"2241":1,"2243":1,"2246":1,"2247":1,"2305":1,"2307":1,"2309":1,"2342":1,"2473":1},"1":{"1441":1,"1442":1,"1443":1,"1444":1,"2057":1,"2219":1,"2220":1,"2221":1,"2222":1,"2223":1,"2224":1,"2225":1,"2226":1,"2227":1,"2228":2,"2229":1,"2230":2,"2231":1,"2232":2,"2233":1,"2234":2,"2235":1,"2236":2,"2237":1,"2238":2,"2239":1,"2240":2,"2241":1,"2242":2,"2243":1,"2244":2,"2245":1,"2246":1,"2247":1,"2343":1},"2":{"50":1,"94":1,"114":1,"142":1,"145":1,"160":1,"176":1,"190":1,"191":4,"195":1,"196":3,"210":1,"236":1,"249":1,"266":1,"294":1,"572":1,"591":6,"628":1,"629":1,"770":1,"773":1,"779":1,"1256":1,"1353":1,"1375":2,"1393":1,"1407":1,"1417":1,"1434":2,"1438":2,"1440":8,"1441":2,"1442":5,"1444":6,"1449":1,"1456":1,"1465":2,"1466":3,"1480":1,"1512":1,"1529":5,"1532":1,"1533":1,"1596":1,"1599":2,"1616":1,"1640":1,"1659":1,"1670":4,"1720":1,"1724":1,"1725":1,"1726":1,"1727":1,"1744":1,"1760":1,"1761":3,"1770":7,"1775":1,"1785":3,"1788":1,"1791":2,"1913":1,"1918":2,"1955":1,"1956":4,"1981":1,"1983":5,"1985":1,"2008":1,"2025":1,"2041":3,"2050":2,"2051":3,"2052":3,"2056":1,"2057":1,"2162":2,"2167":2,"2168":3,"2170":10,"2218":1,"2219":1,"2221":7,"2222":1,"2224":1,"2227":1,"2231":1,"2233":1,"2246":2,"2247":2,"2252":9,"2253":5,"2269":1,"2270":3,"2291":1,"2293":2,"2301":2,"2302":1,"2307":1,"2310":8,"2311":1,"2324":1,"2325":3,"2341":1,"2342":1,"2343":1,"2350":1,"2364":1,"2411":5,"2459":2,"2469":2,"2474":1,"2533":3,"2545":1,"2546":1,"2565":1,"2566":1,"2568":2,"2569":4,"2570":2,"2792":1,"2822":1,"2839":1,"2849":1,"2875":2,"2879":3,"2911":2,"2921":2}}],["sectors",{"2":{"751":3}}],["sector",{"2":{"333":1,"751":3,"753":2,"756":2}}],["section>",{"2":{"495":2,"496":2}}],["sections",{"0":{"346":1,"356":1},"2":{"194":1,"335":1,"659":1,"1379":1,"2173":1,"2467":1,"2553":1,"2573":1,"2614":1,"2627":1,"2696":1,"2715":1,"2747":1,"2765":1}}],["section",{"0":{"477":1},"2":{"31":2,"34":1,"124":1,"195":1,"217":1,"236":1,"240":1,"350":1,"376":1,"398":1,"474":1,"475":1,"494":4,"502":1,"510":1,"665":1,"685":1,"686":1,"743":2,"749":1,"755":1,"1195":2,"1197":1,"1198":2,"1309":1,"1327":1,"1421":1,"1531":1,"1621":1,"1777":1,"2171":1,"2274":1,"2293":1,"2306":1,"2386":1,"2411":1,"2416":1,"2430":1,"2444":1,"2475":1,"2495":2,"2496":2,"2546":1,"2566":1,"2575":1,"2602":1,"2606":1,"2609":1,"2625":2,"2644":1,"2648":1,"2687":1,"2695":1,"2697":1,"2698":1,"2711":1,"2720":1,"2750":1,"2752":1,"2754":1,"2775":2,"2899":1,"2900":1,"2928":1,"2931":1}}],["security",{"0":{"312":1},"2":{"312":8,"317":1,"1434":1}}],["secure",{"0":{"2205":1,"2872":1},"1":{"2206":1,"2207":1,"2208":1,"2209":1,"2210":1,"2211":1},"2":{"145":2,"188":2,"191":2,"2205":2,"2207":1,"2209":4,"2210":3,"2211":7,"2428":1,"2669":1,"2792":1,"2872":3,"2933":1}}],["secondary",{"2":{"176":1,"191":1,"713":1,"1469":1,"1471":1,"1633":1,"1968":1,"1971":1,"2063":1,"2873":11}}],["second",{"0":{"2705":1},"2":{"90":2,"142":1,"266":1,"432":1,"563":1,"613":1,"614":2,"641":1,"654":1,"723":1,"745":1,"1378":1,"1440":1,"1442":1,"1468":1,"1472":1,"1480":2,"1497":1,"1519":1,"1662":2,"1811":1,"1814":1,"1817":1,"1820":1,"1840":1,"1930":3,"1933":1,"1976":2,"2060":1,"2063":1,"2167":1,"2254":1,"2265":1,"2271":1,"2302":2,"2303":1,"2420":1,"2457":1,"2496":1,"2605":1,"2627":1,"2676":1,"2705":1,"2869":1,"2914":3,"2929":3,"2930":1}}],["seconds>",{"2":{"432":1}}],["seconds",{"0":{"25":1},"2":{"11":1,"520":1,"521":2,"522":4,"559":1,"579":1,"655":1,"1538":1,"1587":1,"1592":2,"1621":1,"1825":1,"2372":5,"2378":1,"2379":1,"2380":1,"2381":1,"2385":1,"2503":1,"2850":2,"2854":1,"2872":1,"2873":1}}],["setpixel",{"2":{"2750":4}}],["setpinoutputopendrain",{"2":{"243":1}}],["setpinoutputpushpull",{"2":{"243":1}}],["setpinoutput",{"2":{"243":1}}],["setpininputlow",{"2":{"243":1}}],["setpininput",{"2":{"243":1}}],["setpininputhigh",{"2":{"34":2,"243":1}}],["setrgb",{"2":{"1424":5,"2067":1,"2191":5,"2198":3}}],["settling",{"2":{"1410":3}}],["settle",{"2":{"1409":1,"2919":1}}],["settles",{"2":{"1409":1,"2920":1}}],["settled",{"2":{"289":1,"320":1,"2918":6,"2923":1}}],["setter",{"2":{"532":2}}],["setta21",{"2":{"154":2}}],["settable",{"2":{"114":1}}],["setting",{"0":{"472":1,"474":1,"495":1,"566":1,"1297":1,"1836":1,"1998":1,"2190":1,"2263":1,"2496":1,"2584":1,"2611":1,"2646":1,"2666":1,"2788":1},"1":{"567":1,"1837":1,"1999":1,"2264":1,"2265":1,"2266":1,"2267":1,"2612":1,"2613":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1,"2621":1,"2622":1},"2":{"87":1,"88":3,"93":1,"104":3,"127":3,"176":2,"191":1,"303":1,"377":1,"427":1,"472":2,"480":1,"492":1,"554":3,"559":1,"562":1,"573":2,"590":1,"613":1,"635":1,"681":1,"698":1,"724":1,"763":1,"765":3,"858":1,"888":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1197":1,"1313":1,"1367":1,"1412":1,"1419":1,"1465":1,"1481":1,"1483":1,"1487":1,"1496":1,"1497":1,"1511":1,"1532":1,"1592":1,"1595":1,"1678":1,"1679":1,"1730":1,"1757":1,"1771":1,"1827":1,"1832":1,"1836":1,"1844":1,"1929":5,"1930":3,"1931":1,"1940":2,"1960":1,"1961":2,"1962":1,"1964":3,"1965":1,"1966":1,"1968":4,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":2,"1978":1,"1979":2,"1980":1,"1981":1,"1994":3,"2004":1,"2006":1,"2066":1,"2184":1,"2200":1,"2203":1,"2213":1,"2265":1,"2266":2,"2271":2,"2289":2,"2378":1,"2380":1,"2387":1,"2389":1,"2390":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2401":1,"2407":1,"2409":6,"2410":1,"2425":1,"2489":1,"2494":1,"2496":1,"2665":1,"2676":1,"2791":1,"2903":3,"2917":1}}],["settings",{"0":{"759":1,"1964":1,"1965":1,"1966":1,"1968":1,"1969":1,"2038":1,"2045":1,"2178":1,"2882":1,"2883":1,"2884":1,"2887":1},"1":{"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1},"2":{"69":1,"74":1,"75":1,"114":1,"131":1,"134":1,"347":1,"387":1,"553":1,"555":2,"562":5,"639":1,"716":1,"759":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1197":1,"1317":1,"1367":1,"1406":3,"1407":3,"1460":2,"1466":1,"1480":1,"1583":1,"1586":1,"1599":1,"1601":1,"1672":2,"1675":3,"1781":1,"1929":1,"1930":2,"1931":1,"1932":1,"1933":1,"1934":1,"1964":1,"1968":1,"2039":1,"2204":1,"2271":1,"2291":1,"2316":1,"2409":1,"2411":1,"2447":1,"2448":1,"2590":1,"2644":1,"2671":4,"2676":1,"2707":1,"2710":1,"2721":1,"2788":1,"2791":1,"2877":1,"2885":1,"2905":1,"2912":1,"2913":1,"2914":1}}],["sets",{"2":{"50":1,"559":5,"562":4,"568":1,"633":1,"639":3,"695":1,"698":3,"712":1,"1407":1,"1416":1,"1422":5,"1487":5,"1656":2,"1675":3,"1682":1,"1832":1,"1846":6,"1932":3,"1956":4,"1961":5,"1962":3,"1964":3,"1968":7,"1974":1,"1976":8,"1981":3,"1982":2,"1990":1,"2001":1,"2069":8,"2074":1,"2173":1,"2195":2,"2266":1,"2268":3,"2271":3,"2283":2,"2315":3,"2316":1,"2373":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2407":2,"2448":1,"2721":1,"2904":2}}],["sethsv",{"0":{"2137":1,"2139":1},"1":{"2140":1},"2":{"49":1,"639":1,"1407":7,"2067":1,"2075":1,"2191":7,"2194":2,"2198":3}}],["setups",{"2":{"716":1,"719":1,"1942":6,"2557":1}}],["setup",{"0":{"366":1,"506":1,"1192":1,"1195":1,"1198":1,"1373":1,"1514":1,"1515":1,"1677":1,"1762":1,"2585":1,"2586":1,"2593":1,"2621":1,"2671":1},"1":{"507":1,"508":1,"509":1,"1515":1,"1516":1,"1517":1,"1678":1,"1679":1,"2594":1,"2595":1,"2596":1},"2":{"14":1,"23":1,"93":1,"176":1,"366":1,"378":1,"387":1,"388":1,"390":2,"421":1,"422":1,"423":1,"485":1,"502":1,"506":1,"513":1,"631":1,"681":1,"764":1,"1197":1,"1244":1,"1265":1,"1311":1,"1419":1,"1497":1,"1516":1,"1662":1,"1936":1,"1937":1,"1942":2,"1949":1,"1955":1,"1980":1,"2182":1,"2219":1,"2279":1,"2318":1,"2410":1,"2424":1,"2437":1,"2438":1,"2439":1,"2457":1,"2573":1,"2584":1,"2591":2,"2592":1,"2595":1,"2601":1,"2603":1,"2621":8,"2656":1,"2807":1,"2927":2}}],["set",{"0":{"406":1,"704":1,"706":1,"709":1,"732":1,"734":1,"810":1,"812":1,"814":1,"816":1,"818":1,"820":1,"838":1,"840":1,"842":1,"844":1,"846":1,"848":1,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1303":1,"1305":1,"1424":1,"1426":1,"1647":1,"1705":1,"1728":1,"1730":1,"1752":1,"1754":1,"1859":1,"1861":1,"1883":1,"1885":1,"1889":1,"1891":1,"2005":1,"2028":1,"2085":1,"2087":1,"2121":1,"2123":1,"2127":1,"2129":1,"2329":1,"2333":1,"2335":1,"2425":1,"2667":1},"1":{"705":1,"707":1,"710":1,"733":1,"735":1,"811":1,"813":1,"815":1,"817":1,"819":1,"821":1,"839":1,"841":1,"843":1,"845":1,"847":1,"849":1,"869":1,"871":1,"873":1,"875":1,"877":1,"879":1,"901":1,"903":1,"905":1,"907":1,"909":1,"911":1,"936":1,"938":1,"940":1,"942":1,"944":1,"946":1,"970":1,"972":1,"974":1,"976":1,"978":1,"980":1,"1004":1,"1006":1,"1008":1,"1010":1,"1012":1,"1014":1,"1038":1,"1040":1,"1042":1,"1044":1,"1046":1,"1048":1,"1072":1,"1074":1,"1076":1,"1078":1,"1080":1,"1082":1,"1106":1,"1108":1,"1110":1,"1112":1,"1114":1,"1116":1,"1140":1,"1142":1,"1144":1,"1146":1,"1148":1,"1150":1,"1174":1,"1176":1,"1178":1,"1180":1,"1182":1,"1184":1,"1227":1,"1229":1,"1231":1,"1233":1,"1235":1,"1237":1,"1304":1,"1306":1,"1648":1,"1706":1,"1729":1,"1731":1,"1753":1,"1755":1,"1860":1,"1862":1,"1884":1,"1886":1,"1890":1,"1892":1,"2029":1,"2086":1,"2088":1,"2122":1,"2124":1,"2128":1,"2130":1,"2330":1,"2334":1,"2336":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"6":1,"23":1,"25":1,"28":1,"30":1,"33":1,"38":1,"49":1,"50":2,"63":1,"83":1,"90":1,"92":1,"93":1,"114":2,"134":1,"138":2,"152":1,"163":1,"173":2,"191":5,"195":2,"199":3,"210":2,"220":1,"222":1,"228":1,"236":4,"243":6,"266":2,"277":2,"285":2,"333":1,"373":1,"416":1,"421":2,"422":2,"423":2,"424":1,"428":1,"442":1,"453":2,"467":2,"470":1,"471":1,"472":1,"474":1,"487":1,"490":1,"495":1,"503":1,"519":1,"553":1,"554":1,"558":1,"559":1,"562":1,"566":4,"569":1,"577":1,"586":1,"615":1,"631":1,"633":6,"635":1,"637":2,"649":1,"650":2,"651":2,"653":1,"659":1,"664":1,"667":3,"682":1,"698":3,"700":1,"704":1,"705":3,"706":1,"707":3,"709":1,"710":1,"713":1,"719":1,"722":1,"732":1,"733":3,"734":1,"735":3,"741":2,"751":1,"758":16,"761":1,"765":1,"769":4,"798":1,"800":1,"808":1,"809":1,"810":1,"811":3,"812":1,"813":3,"814":1,"815":1,"816":1,"817":1,"827":1,"836":1,"837":1,"838":1,"839":3,"840":1,"841":3,"842":1,"843":1,"844":1,"845":1,"853":1,"855":1,"866":1,"867":1,"868":1,"869":3,"870":1,"871":3,"872":1,"873":1,"874":1,"875":1,"885":1,"887":1,"896":1,"897":1,"900":1,"901":3,"902":1,"903":3,"904":1,"905":1,"906":1,"907":1,"917":1,"919":1,"920":1,"931":1,"932":1,"935":1,"936":3,"937":1,"938":3,"939":1,"940":1,"941":1,"942":1,"952":1,"954":1,"965":1,"966":1,"969":1,"970":3,"971":1,"972":3,"973":1,"974":1,"975":1,"976":1,"986":1,"988":1,"999":1,"1000":1,"1003":1,"1004":3,"1005":1,"1006":3,"1007":1,"1008":1,"1009":1,"1010":1,"1020":1,"1022":1,"1033":1,"1034":1,"1037":1,"1038":3,"1039":1,"1040":3,"1041":1,"1042":1,"1043":1,"1044":1,"1054":1,"1056":1,"1067":1,"1068":1,"1071":1,"1072":3,"1073":1,"1074":3,"1075":1,"1076":1,"1077":1,"1078":1,"1088":1,"1090":1,"1091":1,"1101":1,"1102":1,"1105":1,"1106":3,"1107":1,"1108":3,"1109":1,"1110":1,"1111":1,"1112":1,"1122":1,"1124":1,"1125":1,"1135":1,"1136":1,"1139":1,"1140":3,"1141":1,"1142":3,"1143":1,"1144":1,"1145":1,"1146":1,"1156":1,"1158":1,"1169":1,"1170":1,"1173":1,"1174":3,"1175":1,"1176":3,"1177":1,"1178":1,"1179":1,"1180":1,"1212":1,"1214":1,"1222":1,"1223":1,"1226":1,"1227":3,"1228":1,"1229":3,"1230":1,"1231":1,"1232":1,"1233":1,"1242":1,"1245":1,"1249":1,"1263":1,"1266":1,"1281":1,"1282":1,"1303":1,"1304":3,"1305":1,"1306":3,"1330":1,"1369":1,"1375":4,"1378":1,"1379":1,"1391":1,"1392":1,"1394":1,"1395":1,"1406":1,"1407":9,"1413":4,"1414":1,"1417":1,"1419":1,"1421":1,"1422":9,"1424":2,"1425":1,"1426":2,"1427":1,"1428":1,"1436":1,"1464":6,"1466":2,"1468":1,"1471":2,"1474":1,"1475":2,"1478":2,"1480":1,"1481":4,"1482":1,"1485":1,"1492":1,"1497":1,"1511":1,"1512":2,"1517":1,"1522":1,"1532":1,"1537":1,"1540":1,"1545":1,"1550":1,"1560":1,"1561":1,"1583":1,"1584":1,"1595":2,"1601":1,"1602":2,"1603":1,"1614":4,"1615":1,"1619":3,"1632":6,"1635":1,"1636":1,"1647":1,"1672":1,"1675":3,"1677":1,"1678":2,"1681":3,"1696":1,"1702":1,"1707":1,"1728":1,"1730":1,"1735":2,"1737":4,"1745":1,"1752":1,"1753":2,"1754":1,"1755":1,"1770":1,"1775":6,"1776":4,"1827":2,"1831":1,"1837":3,"1840":1,"1841":2,"1844":2,"1846":5,"1849":4,"1859":1,"1860":1,"1861":1,"1862":1,"1863":1,"1865":1,"1883":1,"1884":1,"1885":1,"1886":1,"1889":1,"1890":1,"1891":1,"1892":1,"1919":49,"1927":3,"1929":1,"1930":1,"1932":1,"1933":5,"1938":4,"1950":1,"1951":6,"1954":1,"1956":5,"1964":1,"1968":1,"1976":3,"1977":1,"1979":1,"1981":3,"1982":3,"1983":2,"1985":2,"1986":4,"1987":13,"1989":4,"1990":4,"1992":2,"1993":1,"1994":5,"2001":13,"2004":3,"2005":8,"2006":2,"2014":1,"2018":1,"2028":1,"2036":1,"2039":6,"2040":1,"2041":1,"2060":1,"2061":2,"2063":3,"2064":1,"2066":2,"2069":8,"2072":4,"2073":4,"2074":3,"2085":1,"2086":3,"2087":1,"2088":3,"2089":1,"2091":1,"2121":1,"2122":1,"2123":1,"2124":1,"2127":1,"2128":1,"2129":1,"2130":1,"2137":1,"2138":3,"2139":1,"2140":3,"2163":1,"2169":4,"2183":6,"2184":1,"2187":1,"2188":3,"2190":2,"2191":10,"2192":2,"2194":2,"2195":2,"2196":1,"2200":4,"2203":1,"2206":1,"2216":2,"2217":12,"2218":1,"2222":1,"2245":1,"2253":1,"2259":1,"2266":1,"2268":3,"2271":5,"2281":2,"2283":1,"2288":2,"2290":1,"2291":3,"2293":3,"2294":1,"2295":1,"2302":2,"2303":1,"2308":1,"2312":6,"2315":1,"2316":4,"2324":2,"2329":1,"2330":1,"2373":1,"2374":1,"2375":1,"2389":1,"2401":1,"2403":1,"2409":1,"2410":2,"2411":2,"2412":1,"2420":1,"2447":1,"2448":1,"2452":1,"2453":1,"2459":1,"2471":1,"2473":1,"2489":1,"2496":1,"2501":1,"2508":1,"2516":2,"2519":2,"2520":49,"2521":3,"2534":1,"2548":2,"2562":1,"2566":1,"2575":1,"2576":4,"2584":1,"2587":1,"2590":1,"2609":1,"2611":1,"2613":1,"2622":1,"2625":1,"2630":1,"2633":4,"2644":3,"2645":1,"2646":2,"2666":1,"2667":2,"2669":1,"2671":2,"2676":2,"2678":1,"2709":1,"2722":1,"2747":2,"2748":5,"2749":2,"2750":10,"2754":1,"2776":1,"2786":1,"2787":2,"2788":5,"2834":1,"2839":1,"2851":2,"2853":1,"2872":2,"2877":1,"2879":2,"2903":1,"2905":1,"2907":1,"2914":4,"2923":1,"2928":1,"2932":1,"2933":1}}],["se",{"2":{"5":1,"176":1,"1735":1,"2209":4,"2878":1}}],["seeks",{"2":{"2503":1}}],["seen",{"2":{"175":1,"232":1,"682":1,"1479":1,"1532":1,"2268":1,"2559":1,"2560":1,"2636":1}}],["seemingly",{"2":{"2560":4}}],["seem",{"2":{"119":1,"273":1,"276":2,"1373":1,"1788":1,"2750":1}}],["seems",{"2":{"50":1,"1358":1,"2560":1}}],["sees",{"0":{"1667":1},"2":{"49":1,"203":1,"1775":1}}],["see",{"2":{"2":1,"14":1,"118":1,"132":1,"137":1,"138":1,"149":1,"166":1,"172":1,"174":1,"179":1,"182":2,"186":1,"189":1,"196":1,"228":1,"229":1,"232":1,"240":1,"247":1,"288":1,"289":1,"297":1,"298":1,"304":1,"306":1,"315":1,"316":1,"320":1,"331":1,"335":1,"369":1,"371":1,"387":2,"397":1,"405":1,"422":1,"429":1,"464":1,"465":1,"466":1,"486":1,"489":2,"550":1,"553":1,"559":2,"562":4,"568":3,"572":2,"592":1,"597":1,"604":1,"667":2,"681":1,"683":2,"695":1,"696":1,"713":1,"716":3,"718":1,"740":1,"743":2,"749":1,"752":1,"755":1,"763":1,"766":1,"767":1,"888":1,"1195":4,"1198":4,"1286":1,"1309":1,"1312":2,"1315":1,"1316":1,"1317":1,"1327":1,"1329":1,"1330":5,"1335":1,"1340":1,"1342":1,"1352":1,"1353":1,"1356":1,"1357":1,"1364":1,"1372":1,"1375":1,"1395":1,"1400":1,"1407":1,"1409":2,"1414":1,"1415":1,"1416":3,"1422":1,"1440":1,"1446":1,"1457":1,"1461":2,"1464":1,"1470":1,"1474":1,"1483":1,"1487":1,"1488":1,"1493":1,"1497":1,"1512":1,"1522":1,"1527":1,"1541":1,"1552":1,"1574":1,"1586":2,"1587":2,"1589":1,"1599":1,"1629":1,"1630":1,"1631":1,"1667":1,"1684":2,"1691":1,"1762":1,"1764":1,"1767":1,"1780":3,"1829":1,"1839":1,"1917":1,"1940":2,"1968":2,"1980":1,"1982":1,"1983":1,"1992":2,"2004":1,"2032":1,"2037":1,"2039":2,"2059":1,"2073":1,"2074":1,"2159":1,"2166":1,"2171":1,"2172":1,"2181":1,"2184":1,"2187":1,"2188":1,"2218":1,"2251":1,"2268":1,"2286":1,"2312":1,"2319":1,"2375":1,"2386":1,"2398":2,"2406":1,"2407":2,"2411":6,"2421":1,"2428":1,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1,"2446":1,"2447":1,"2448":1,"2459":2,"2464":1,"2483":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2514":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2534":1,"2554":1,"2558":1,"2571":1,"2577":1,"2579":1,"2603":1,"2605":1,"2608":1,"2609":2,"2615":1,"2627":1,"2630":1,"2643":2,"2664":1,"2694":1,"2707":3,"2709":1,"2714":1,"2716":1,"2717":1,"2719":1,"2720":1,"2721":4,"2724":1,"2725":2,"2749":2,"2750":2,"2760":3,"2761":1,"2767":1,"2770":3,"2775":1,"2776":1,"2784":1,"2844":1,"2873":4,"2882":1,"2903":1,"2905":2,"2922":1,"2924":1,"2932":1}}],["swy",{"2":{"857":4,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1}}],["sw1",{"2":{"726":6,"860":5,"925":5,"959":5,"993":5,"1027":5,"1061":5,"1095":5,"1129":5,"1163":5}}],["swo",{"2":{"390":1}}],["swordfish",{"2":{"210":1}}],["swclk",{"2":{"390":2,"2500":1,"2501":1,"2676":1,"2684":1}}],["swdio",{"2":{"390":2,"2500":1,"2501":1,"2676":1,"2684":1}}],["swd",{"2":{"378":1,"384":1,"390":1,"2684":1}}],["swx",{"2":{"236":1,"854":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1092":3,"1123":1,"1126":3,"1157":1,"1160":3}}],["sw",{"2":{"205":1,"854":3,"857":15,"918":1,"922":2,"953":1,"956":2,"987":1,"990":2,"1021":1,"1024":2,"1055":1,"1058":2,"1089":2,"1092":6,"1123":2,"1126":6,"1157":2,"1160":6,"1735":1,"2174":1,"2525":1}}],["switzerland",{"2":{"2880":2}}],["switched",{"2":{"1421":1,"1480":1,"2175":1,"2645":1}}],["switches",{"0":{"1649":1,"1918":1,"2856":1},"1":{"1650":1,"1651":1,"1652":1,"1653":1,"1654":1},"2":{"114":1,"199":1,"236":1,"247":1,"249":1,"620":1,"1310":1,"1351":1,"1409":1,"1410":1,"1416":1,"1487":1,"1552":1,"1649":1,"1650":3,"1675":2,"1822":1,"1918":1,"1941":1,"2164":1,"2257":1,"2415":1,"2416":2,"2417":1,"2418":1,"2459":1,"2632":1,"2714":1,"2798":1,"2856":2,"2873":1}}],["switchplate",{"2":{"222":1}}],["switchs",{"2":{"145":1}}],["switching",{"0":{"1416":1,"2290":1,"2516":1},"1":{"1417":1},"2":{"50":1,"114":1,"132":1,"191":1,"573":1,"1350":2,"1370":1,"1416":1,"1418":1,"1535":1,"1759":1,"1940":2,"1941":2,"1950":1,"2047":1,"2280":1,"2286":2,"2302":1,"2370":1,"2496":1,"2516":1}}],["switch",{"0":{"26":1,"105":1,"231":1,"247":1,"1351":1,"1643":1,"1644":1,"1645":1,"1646":1,"1650":1,"1653":2,"1654":2,"1735":1,"2312":1},"2":{"3":1,"15":1,"16":1,"94":1,"105":15,"107":1,"114":8,"191":2,"194":3,"195":2,"231":3,"235":1,"236":5,"247":7,"249":4,"285":1,"307":1,"317":1,"324":1,"325":1,"328":1,"390":1,"559":3,"591":2,"620":1,"629":1,"630":1,"683":1,"1308":1,"1310":3,"1328":1,"1351":1,"1363":1,"1369":1,"1377":2,"1378":1,"1407":2,"1409":5,"1410":1,"1416":5,"1420":3,"1421":1,"1424":1,"1425":1,"1440":3,"1441":2,"1446":1,"1456":1,"1465":1,"1466":1,"1485":1,"1497":3,"1504":2,"1511":3,"1527":2,"1535":1,"1594":1,"1599":1,"1606":5,"1607":1,"1611":2,"1612":5,"1614":1,"1616":1,"1619":3,"1633":2,"1639":2,"1643":1,"1644":1,"1645":1,"1646":1,"1649":8,"1650":7,"1651":7,"1653":1,"1654":1,"1675":6,"1732":1,"1735":1,"1737":1,"1741":1,"1754":1,"1755":1,"1822":2,"1824":1,"1828":1,"1844":1,"1864":1,"1866":1,"1918":1,"1938":1,"1941":1,"1942":1,"1947":1,"1962":1,"1987":1,"1989":1,"1996":1,"1999":1,"2004":1,"2005":2,"2006":1,"2037":1,"2066":1,"2073":1,"2074":1,"2090":1,"2092":1,"2160":2,"2161":1,"2162":2,"2163":2,"2164":1,"2165":1,"2167":1,"2168":2,"2170":4,"2184":2,"2187":1,"2224":1,"2277":1,"2286":2,"2287":2,"2290":3,"2291":1,"2308":1,"2309":1,"2310":2,"2311":2,"2312":7,"2324":1,"2325":6,"2370":1,"2386":1,"2391":1,"2407":1,"2411":1,"2416":2,"2420":1,"2421":5,"2427":1,"2428":2,"2446":1,"2459":3,"2476":1,"2509":1,"2528":1,"2533":6,"2551":2,"2568":1,"2569":1,"2570":1,"2644":1,"2652":1,"2656":1,"2676":1,"2713":1,"2721":2,"2775":4,"2785":1,"2847":2,"2856":1,"2873":1,"2883":1,"2888":1,"2903":3,"2904":2,"2905":2,"2912":3,"2913":2,"2914":1,"2916":1,"2917":1,"2920":1,"2921":1,"2923":1,"2930":3,"2941":1}}],["swillkb",{"2":{"2415":1}}],["swipe",{"2":{"1965":12}}],["swirls",{"2":{"2178":1}}],["swirling",{"2":{"2176":1,"2180":1}}],["swirl",{"2":{"348":1,"2174":2,"2176":1,"2177":2,"2178":2,"2179":1,"2180":1,"2202":1,"2203":1,"2525":2,"2887":1}}],["swift65",{"2":{"266":2}}],["swiftrax",{"2":{"191":2,"277":1}}],["swiss",{"2":{"222":1,"2417":1,"2880":4}}],["sweet16v2",{"2":{"322":4,"328":1}}],["sweep",{"2":{"191":1,"249":1}}],["swedish",{"2":{"5":2,"2877":1,"2878":1,"2880":11}}],["swapping",{"2":{"194":1,"751":1,"1198":1,"1346":3,"2298":1,"2501":1,"2704":1,"2801":1,"2882":1}}],["swapped",{"0":{"1346":1},"2":{"166":1,"210":1,"743":1,"755":1,"1284":2,"1736":1}}],["swap",{"0":{"2295":1,"2297":1,"2532":1},"1":{"2296":1,"2297":1,"2298":1,"2299":1},"2":{"94":1,"114":1,"142":1,"160":1,"176":2,"191":1,"199":2,"222":2,"231":4,"247":1,"317":1,"1197":2,"1198":2,"1208":1,"1209":1,"1210":1,"1392":1,"1479":4,"1480":6,"1527":4,"1650":1,"1659":1,"2295":4,"2296":3,"2297":17,"2298":3,"2299":9,"2370":5,"2509":5,"2519":31,"2532":16,"2548":31}}],["suturation",{"2":{"2870":1}}],["sudden",{"2":{"2372":1}}],["sudo",{"2":{"511":1,"1312":8,"1313":6,"1329":1,"2410":1,"2594":7,"2710":1}}],["sunk",{"2":{"724":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1}}],["sunsetter",{"2":{"222":1}}],["suffer",{"2":{"717":1,"752":1,"1491":1}}],["sufficient",{"2":{"2290":1,"2562":1,"2722":1,"2929":1}}],["suffices",{"2":{"1775":1}}],["suffice",{"2":{"411":1}}],["suffix",{"2":{"625":4}}],["sugar|",{"2":{"678":1}}],["sugar||order",{"2":{"678":1}}],["sugar",{"2":{"678":1}}],["suggests",{"2":{"2735":1}}],["suggest",{"2":{"2441":1}}],["suggestions",{"2":{"618":1,"2558":1,"2609":1}}],["suggested",{"2":{"199":1,"397":1,"644":1,"2008":1,"2310":1,"2619":1,"2620":1}}],["summary",{"0":{"2743":1},"2":{"356":1}}],["sust",{"2":{"1919":1,"2520":1}}],["sustain",{"2":{"249":1,"1919":2,"2520":2}}],["susceptible",{"2":{"397":1,"1409":2,"1413":1}}],["suspense",{"2":{"210":1}}],["suspend",{"0":{"647":2,"648":1,"1900":1,"2144":1},"1":{"1901":1,"2145":1},"2":{"92":3,"93":1,"94":1,"112":1,"114":4,"133":1,"134":1,"160":2,"176":1,"210":3,"249":1,"263":2,"266":1,"277":2,"288":1,"328":1,"559":1,"572":1,"645":2,"646":2,"647":2,"648":4,"1620":1,"1632":6,"1900":1,"2144":1,"2265":1,"2746":1,"2750":4,"2875":2}}],["suspended",{"2":{"74":1,"114":2,"134":1,"210":1,"249":2,"647":1,"1672":1,"1679":1,"1846":1,"1901":1,"2069":1,"2145":1}}],["suspending",{"2":{"25":1,"559":1}}],["succeeds",{"2":{"2268":1}}],["succeed",{"2":{"1791":6}}],["success",{"2":{"611":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1253":1,"1258":1,"1261":1,"1981":2,"2608":4,"2619":1}}],["successfully",{"2":{"463":1,"467":1,"609":1,"1462":1,"1791":1,"1956":1,"2265":1,"2283":1,"2501":1,"2602":1,"2705":1}}],["successful",{"2":{"380":1,"1205":1,"1250":1,"1421":1,"2271":1}}],["successive",{"2":{"266":1}}],["succession",{"2":{"191":1}}],["such",{"2":{"55":1,"69":1,"87":1,"103":1,"118":1,"123":1,"124":1,"126":1,"132":1,"138":1,"163":1,"198":1,"229":1,"230":1,"234":1,"240":1,"244":1,"246":1,"263":1,"284":2,"297":1,"302":1,"408":1,"419":1,"428":1,"431":3,"468":1,"489":1,"514":1,"536":1,"538":1,"562":1,"586":1,"590":1,"625":1,"632":1,"642":1,"643":1,"649":2,"656":1,"663":1,"682":1,"687":1,"746":1,"747":1,"756":1,"762":1,"1243":1,"1285":1,"1295":1,"1308":1,"1314":1,"1417":1,"1442":1,"1447":1,"1458":1,"1459":1,"1460":2,"1466":1,"1479":1,"1480":1,"1486":1,"1512":1,"1526":2,"1586":1,"1597":1,"1600":1,"1624":1,"1684":1,"1732":1,"1733":1,"1759":1,"1775":1,"1788":1,"1822":1,"1849":1,"1914":2,"1948":1,"1968":2,"2004":1,"2006":1,"2047":2,"2072":2,"2266":1,"2269":1,"2271":1,"2273":1,"2311":2,"2323":2,"2324":2,"2382":1,"2386":1,"2393":1,"2395":1,"2397":1,"2403":1,"2415":1,"2427":1,"2428":1,"2445":1,"2451":2,"2461":1,"2473":2,"2496":1,"2545":1,"2551":1,"2555":1,"2559":1,"2561":1,"2562":3,"2582":1,"2587":1,"2619":3,"2646":3,"2666":3,"2677":2,"2678":1,"2687":1,"2707":1,"2708":1,"2721":4,"2722":3,"2724":1,"2726":1,"2735":1,"2744":1,"2746":2,"2747":1,"2750":1,"2788":1,"2795":1,"2801":1,"2844":1,"2862":1,"2879":1,"2904":1,"2905":1,"2911":1,"2912":1,"2914":1,"2915":1,"2925":1,"2927":1,"2933":1}}],["suits",{"2":{"2632":1}}],["suite",{"2":{"463":2,"467":2}}],["suited",{"2":{"222":1,"411":1}}],["suitable",{"2":{"138":1,"1362":1,"1413":1,"2573":1,"2802":1,"2905":1,"2942":1}}],["suihankey",{"2":{"154":6}}],["surprised",{"2":{"2722":1}}],["surplus",{"2":{"145":1}}],["surrogate",{"2":{"2324":1,"2340":1}}],["surrounding",{"2":{"510":2,"2064":2}}],["surfaces",{"2":{"2420":3,"2749":4}}],["surface",{"2":{"191":1,"328":1,"1639":1,"1961":1,"1976":1,"2421":1,"2746":2,"2749":31,"2838":1}}],["sure",{"2":{"50":1,"390":1,"416":1,"510":2,"512":1,"565":1,"594":2,"597":1,"605":1,"608":1,"613":7,"614":1,"617":2,"666":1,"670":1,"678":1,"683":1,"684":1,"1314":2,"1316":1,"1335":1,"1358":1,"1361":1,"1407":1,"1416":1,"1417":1,"1456":1,"1511":1,"1603":1,"1609":1,"2251":1,"2258":1,"2271":1,"2286":1,"2310":1,"2312":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2398":1,"2410":1,"2421":1,"2422":1,"2424":1,"2427":1,"2454":1,"2457":1,"2490":1,"2496":1,"2501":1,"2572":1,"2592":1,"2599":1,"2610":1,"2612":1,"2627":1,"2638":1,"2645":1,"2667":1,"2721":1,"2750":1,"2882":1,"2884":1}}],["supremely",{"2":{"1434":1}}],["superfluous",{"2":{"2905":1}}],["supervisor",{"2":{"2734":2}}],["supercharged",{"2":{"1756":1}}],["superior",{"2":{"1394":1,"1410":1}}],["super",{"0":{"1456":1},"2":{"673":1,"2381":1,"2503":2,"2539":2,"2565":2,"2670":1}}],["superscripted",{"2":{"349":1}}],["superscript",{"0":{"349":1}}],["supersedes",{"2":{"2583":1}}],["superseded",{"2":{"3":1,"7":1,"15":1,"25":1,"38":1}}],["superseeds",{"2":{"236":1}}],["suppression",{"2":{"1782":1,"2921":1}}],["suppressed",{"2":{"1773":1,"1775":2,"1778":1,"1779":1,"1782":2,"1968":1}}],["suppress",{"2":{"328":1,"1775":3,"1941":1}}],["supposing",{"2":{"1822":1,"2167":1,"2918":1,"2941":1}}],["supposed",{"2":{"2184":1,"2928":1}}],["suppose",{"2":{"289":1,"2628":1,"2918":1}}],["support=1",{"2":{"2401":1}}],["supports",{"2":{"166":1,"243":1,"248":1,"331":1,"369":1,"374":1,"467":1,"511":1,"545":1,"556":1,"570":1,"595":1,"617":1,"646":1,"687":1,"692":1,"698":1,"721":1,"743":3,"746":1,"747":1,"755":1,"756":1,"797":1,"826":1,"852":1,"884":1,"916":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1121":1,"1155":1,"1193":1,"1211":1,"1392":1,"1411":1,"1416":2,"1430":1,"1655":1,"1675":1,"1677":1,"1928":1,"1956":1,"1963":1,"1967":1,"1968":1,"1976":1,"2171":1,"2254":1,"2258":1,"2284":1,"2285":1,"2286":1,"2290":1,"2291":1,"2322":2,"2323":1,"2324":5,"2410":1,"2446":3,"2489":1,"2560":1,"2583":1,"2666":1,"2687":1,"2688":1,"2747":2,"2748":4,"2900":1,"2906":1,"2918":1}}],["supporting",{"0":{"1428":1,"2774":1},"1":{"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1},"2":{"50":1,"374":1,"592":1,"1732":1,"1978":3,"2248":1,"2289":1,"2393":1,"2395":1,"2562":1,"2895":1}}],["supported",{"0":{"1354":1,"1386":1,"1411":1,"1673":1,"1691":1,"1945":1,"2276":1,"2367":1,"2686":1},"1":{"1412":1,"1413":1,"1414":1,"2368":1,"2687":1,"2688":1},"2":{"49":2,"69":1,"118":1,"138":1,"139":2,"148":1,"163":2,"172":1,"201":1,"248":1,"262":1,"266":1,"285":1,"316":1,"341":1,"374":1,"428":1,"431":1,"494":1,"512":1,"568":1,"595":1,"617":1,"657":1,"663":1,"681":1,"687":1,"692":1,"713":2,"718":1,"720":2,"743":1,"765":1,"1196":1,"1200":2,"1201":2,"1202":1,"1297":1,"1300":1,"1340":1,"1348":1,"1354":1,"1388":2,"1389":2,"1390":2,"1396":2,"1417":1,"1438":1,"1440":1,"1475":1,"1538":1,"1544":1,"1547":1,"1548":1,"1597":1,"1621":1,"1649":1,"1659":1,"1691":1,"1734":1,"1839":1,"1947":1,"1954":2,"1959":1,"1967":1,"1968":1,"1970":1,"1972":1,"1976":1,"1977":1,"1978":2,"1981":2,"1982":1,"2039":1,"2040":1,"2041":1,"2059":1,"2218":2,"2221":1,"2285":1,"2287":1,"2302":2,"2324":1,"2367":2,"2368":2,"2369":1,"2393":1,"2395":1,"2401":1,"2411":3,"2498":1,"2560":2,"2576":1,"2583":1,"2609":2,"2619":1,"2620":1,"2622":1,"2677":1,"2685":2,"2687":4,"2691":1,"2704":2,"2720":1,"2722":1,"2746":1,"2747":2,"2751":3,"2796":1,"2862":2,"2882":1}}],["support",{"0":{"14":1,"35":1,"80":1,"81":1,"100":1,"108":1,"118":1,"130":1,"149":1,"156":1,"163":1,"232":1,"590":1,"591":1,"1285":1,"1338":1,"1351":1,"1364":1,"1462":1,"1597":1,"2030":1,"2222":1,"2285":1,"2529":1,"2533":1,"2665":1,"2689":1,"2690":1,"2691":1,"2704":1,"2879":1,"2893":1},"1":{"36":1,"1339":1,"2031":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1,"2894":1,"2895":1,"2896":1,"2897":1},"2":{"10":3,"35":1,"46":1,"49":4,"50":2,"63":5,"65":1,"74":3,"75":1,"76":1,"81":1,"86":2,"89":1,"93":12,"107":1,"108":1,"113":1,"114":15,"118":2,"120":1,"130":5,"131":1,"133":1,"134":14,"138":1,"139":1,"141":1,"145":7,"149":1,"156":1,"157":1,"160":9,"163":2,"167":1,"175":4,"176":18,"189":2,"190":1,"191":9,"199":10,"201":1,"206":1,"210":5,"212":1,"221":3,"222":28,"232":2,"234":1,"236":14,"248":2,"249":11,"262":1,"265":1,"266":4,"277":2,"279":1,"285":5,"288":1,"298":1,"306":1,"308":6,"315":1,"317":1,"328":4,"376":2,"427":1,"448":1,"459":1,"471":1,"472":1,"474":1,"480":1,"481":1,"489":1,"490":1,"527":1,"550":1,"552":1,"559":2,"562":1,"563":1,"572":2,"591":1,"592":1,"594":2,"663":1,"664":1,"665":1,"666":1,"699":1,"711":2,"738":1,"750":1,"1189":1,"1263":1,"1280":1,"1282":1,"1314":1,"1339":1,"1340":1,"1351":1,"1353":1,"1392":1,"1394":1,"1395":2,"1397":1,"1398":1,"1410":1,"1414":1,"1428":1,"1433":1,"1458":2,"1464":1,"1465":1,"1480":1,"1492":1,"1535":1,"1536":2,"1621":1,"1651":1,"1664":2,"1733":1,"1843":1,"1925":1,"1945":1,"1955":2,"1978":2,"2009":1,"2050":1,"2063":2,"2203":1,"2204":1,"2212":2,"2253":1,"2268":1,"2269":7,"2272":1,"2285":1,"2286":1,"2287":1,"2294":1,"2295":1,"2313":1,"2324":3,"2367":3,"2369":1,"2370":1,"2375":1,"2384":1,"2401":1,"2407":1,"2411":2,"2425":1,"2432":2,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1,"2452":1,"2464":1,"2483":1,"2533":1,"2559":4,"2562":2,"2563":1,"2572":1,"2573":1,"2583":1,"2620":1,"2627":3,"2651":1,"2665":2,"2669":3,"2676":1,"2677":1,"2685":10,"2687":1,"2688":3,"2689":1,"2692":1,"2696":1,"2707":2,"2720":1,"2721":1,"2722":2,"2726":1,"2746":2,"2749":12,"2774":1,"2778":1,"2847":1,"2877":2,"2881":1,"2883":2,"2890":1,"2894":1,"2895":1,"2937":1}}],["supplements",{"2":{"629":1,"2739":1}}],["supplement",{"2":{"620":1}}],["supplying",{"2":{"655":1}}],["supply",{"2":{"123":1,"284":1,"374":1,"427":1,"511":1,"514":1,"1293":1,"1552":1,"2657":1}}],["supplied",{"2":{"118":1,"157":1,"230":1,"360":1,"431":1,"450":2,"451":2,"473":1,"487":3,"1245":1,"1250":1,"1442":1,"2677":1,"2705":1,"2748":1,"2749":1,"2750":14,"2754":1}}],["sublime",{"2":{"2638":1}}],["subfolder",{"2":{"2407":1,"2442":1,"2937":1}}],["subchain",{"2":{"1532":1}}],["subcommands",{"0":{"487":1},"2":{"484":1,"486":1,"487":1,"499":1}}],["subcommand|general|default>",{"2":{"473":1}}],["subcommand",{"2":{"95":1,"114":1,"132":1,"134":1,"160":1,"437":1,"470":1,"485":3,"487":5,"489":1,"490":1,"492":1,"493":3,"498":1}}],["subreddit",{"0":{"2891":1},"2":{"608":1,"2428":1}}],["subprocess",{"2":{"541":1}}],["subjective",{"2":{"2722":1}}],["subjected",{"2":{"2559":1}}],["subject",{"2":{"373":1,"2638":1,"2729":1,"2750":1}}],["subdirectories",{"2":{"236":1,"2407":1}}],["subdirectory",{"2":{"145":1,"176":1}}],["subtracting",{"2":{"1987":1}}],["subtraction",{"2":{"1410":1}}],["subtracted",{"2":{"522":1}}],["subtlety",{"2":{"194":1}}],["subtarget",{"2":{"49":1}}],["subs",{"2":{"1616":2}}],["subscripted",{"2":{"349":1}}],["subscript",{"2":{"294":1}}],["substrings",{"2":{"1522":1}}],["substring",{"2":{"1522":1,"2937":1,"2938":1}}],["substituting",{"2":{"397":1}}],["substitutions",{"2":{"49":1}}],["substantially",{"2":{"109":1}}],["subsequent",{"2":{"312":1,"397":1,"414":1,"1608":1,"1940":1,"2750":1,"2895":1,"2941":1}}],["subsequently",{"2":{"49":1,"265":1,"307":1,"396":1,"2590":1,"2722":1,"2754":1}}],["subset",{"2":{"65":1,"743":1,"1956":1,"2474":1,"2933":1,"2937":1}}],["subsystem==",{"2":{"1329":1}}],["subsystems",{"0":{"2322":1},"1":{"2323":1},"2":{"77":2,"163":1,"198":1,"2254":1,"2319":1,"2322":1,"2687":2,"2704":1,"2896":1}}],["subsystem",{"0":{"234":1,"1199":1},"1":{"1200":1,"1201":1,"1202":1},"2":{"11":1,"107":1,"114":2,"138":1,"175":1,"244":1,"308":1,"373":2,"572":1,"752":1,"1194":1,"1195":2,"1198":2,"1200":2,"1201":3,"1202":1,"1838":1,"2037":1,"2058":1}}],["sub",{"0":{"349":1,"2443":1},"2":{"6":1,"113":1,"114":1,"133":1,"134":1,"160":1,"556":1,"1314":1,"2442":1,"2443":7,"2447":21,"2448":21,"2770":1}}],["submission",{"2":{"408":2,"409":1,"411":1,"412":1,"2721":1}}],["submissions",{"2":{"103":1,"126":1,"275":1,"397":1,"1457":1,"2560":1,"2720":1,"2721":1}}],["submits",{"2":{"576":1}}],["submit",{"2":{"359":1,"408":1,"410":2,"504":1,"611":1,"613":2,"616":2,"617":1,"2562":1,"2722":1,"2829":2}}],["submitters",{"2":{"2562":1,"2719":1,"2721":2}}],["submitter",{"2":{"397":1,"2719":1,"2722":1}}],["submitted",{"2":{"116":1,"579":1,"2562":1,"2718":1,"2719":1,"2720":1,"2721":2,"2895":1}}],["submitting",{"0":{"370":1},"2":{"1":1,"362":1,"371":1,"617":1,"679":1,"2398":2,"2562":2,"2721":1}}],["submodules=on",{"2":{"2630":2}}],["submodules",{"0":{"10":1,"416":1},"2":{"10":1,"26":1,"69":1,"266":1,"405":1,"416":1,"1623":1,"2398":2,"2401":2,"2600":1,"2630":2}}],["submodule",{"0":{"6":1,"12":1,"21":1},"2":{"6":1,"10":1,"12":1,"21":1,"24":1,"114":2,"134":1,"145":1,"176":4,"191":1,"199":4,"210":1,"222":2,"249":2,"266":1,"285":1,"294":1,"308":1,"328":1,"405":2,"1622":2,"2398":4}}],["soi8",{"2":{"2661":1}}],["sost",{"2":{"1919":1,"2520":1}}],["sostenuto",{"2":{"1919":2,"2520":2}}],["soyuz",{"2":{"317":1}}],["socket",{"2":{"2257":1,"2423":1}}],["sockets",{"2":{"114":1,"2257":1}}],["socd",{"2":{"288":1}}],["sodium62",{"2":{"249":1}}],["soda",{"2":{"176":1,"226":2,"236":2}}],["sonix",{"2":{"1211":1}}],["sony",{"2":{"133":1,"134":1}}],["songs",{"0":{"1479":1},"2":{"711":1,"1479":2,"1480":1,"1481":1,"2788":2}}],["song",{"0":{"27":1},"2":{"27":1,"134":1,"629":1,"1407":1,"1479":23,"1480":16,"1529":4,"1651":4,"1791":12,"1833":4,"2220":1,"2321":10,"2788":4}}],["sof",{"2":{"294":1}}],["sofle",{"2":{"114":1,"134":1,"249":1,"308":1}}],["softdevice",{"2":{"2728":1,"2729":2,"2734":3,"2737":1,"2743":1}}],["soft",{"2":{"63":1,"112":2,"199":3,"277":4,"308":1,"510":1,"512":1,"568":2,"649":3,"650":1,"651":1,"1191":1,"1192":1,"1204":1,"1680":4,"1919":3,"2259":1,"2268":2,"2371":1,"2520":3,"2702":1,"2789":1}}],["software",{"0":{"379":1,"719":1,"1475":1,"1544":1,"2489":1,"2499":1,"2793":1},"1":{"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"1476":1},"2":{"14":2,"203":1,"380":2,"684":1,"713":1,"719":2,"720":1,"1409":2,"1443":1,"1461":2,"1475":2,"1540":1,"1541":1,"1544":1,"1955":1,"2009":1,"2035":1,"2205":1,"2255":1,"2271":1,"2285":1,"2310":1,"2318":1,"2468":1,"2471":1,"2474":2,"2572":2,"2573":1,"2611":1,"2612":1,"2646":1,"2669":2,"2725":2,"2731":1,"2808":1,"2809":1,"2820":1,"2849":1,"2850":2,"2896":1,"2934":1}}],["sought",{"2":{"2690":1}}],["sourcing",{"2":{"2662":1}}],["sources",{"2":{"173":1,"663":1,"2324":1,"2560":26,"2561":1,"2562":1,"2719":1,"2721":2}}],["source",{"0":{"365":1},"2":{"5":1,"36":1,"67":1,"86":1,"102":1,"122":1,"130":1,"132":1,"144":1,"154":1,"168":1,"181":1,"197":1,"199":1,"234":1,"284":1,"359":1,"360":2,"365":1,"368":1,"372":2,"378":1,"424":1,"437":1,"507":1,"579":2,"582":1,"584":2,"611":1,"621":1,"663":2,"695":1,"746":1,"747":1,"1354":3,"1458":4,"1527":1,"1628":2,"1849":1,"1938":1,"1954":4,"1960":1,"1972":1,"1975":1,"2072":1,"2200":2,"2284":1,"2324":1,"2381":1,"2388":1,"2390":1,"2410":11,"2425":1,"2448":1,"2461":1,"2462":1,"2476":1,"2549":1,"2556":1,"2559":3,"2560":8,"2561":7,"2562":3,"2564":1,"2573":1,"2591":1,"2598":2,"2601":1,"2603":2,"2621":1,"2646":1,"2666":1,"2678":1,"2679":1,"2680":1,"2719":2,"2721":3,"2728":2,"2729":2,"2738":2,"2741":1,"2742":1,"2743":1,"2751":1,"2820":1,"2888":3,"2937":2}}],["southwest",{"2":{"1735":1}}],["south",{"2":{"1735":1,"2044":1}}],["southeast",{"2":{"1735":1}}],["southpad",{"2":{"226":2,"236":1}}],["southpaw75",{"2":{"67":2,"72":1}}],["southpole",{"2":{"144":2}}],["sound",{"2":{"1474":1,"1479":3,"1480":14,"1487":3,"1529":2,"1595":1,"1791":2,"1833":3,"2220":2,"2645":1,"2788":3}}],["soundmonster",{"2":{"92":1}}],["sounds",{"2":{"74":1,"1467":1,"1479":2,"1487":3,"1599":1,"1675":1,"2248":1,"2321":1,"2788":2}}],["solus",{"2":{"2594":1}}],["solutions",{"2":{"1334":1}}],["solution",{"0":{"1782":1},"2":{"1322":1,"1497":1,"1519":1,"1522":1,"1596":1,"1613":1,"1672":1,"1941":2,"2205":1,"2687":1,"2734":1}}],["solve",{"2":{"1417":1,"2566":1,"2627":1}}],["solves",{"2":{"1349":1}}],["solved",{"2":{"670":1}}],["sold",{"2":{"681":1}}],["soldering",{"0":{"2420":1,"2421":1,"2422":1},"1":{"2421":1,"2422":1},"2":{"2201":1,"2368":1,"2414":2,"2418":1,"2420":3,"2421":3,"2422":1,"2424":2}}],["solder",{"2":{"218":2,"222":4,"253":1,"266":1,"300":1,"2201":1,"2273":2,"2414":1,"2418":1,"2420":12,"2421":6,"2422":3,"2424":2,"2427":4,"2476":1}}],["solderd",{"2":{"176":1}}],["soldered",{"2":{"122":1,"197":1,"199":1,"222":4,"226":1,"241":2,"333":1,"1691":1,"2418":1,"2421":3,"2427":1}}],["solanis",{"2":{"222":1}}],["solidifies",{"2":{"2421":1}}],["solid",{"0":{"2065":1},"2":{"176":1,"249":1,"266":2,"1407":1,"1843":28,"1846":1,"2063":32,"2065":2,"2075":2,"2176":2,"2180":1,"2421":1,"2864":1,"2871":1,"2887":10}}],["sol3",{"2":{"160":1,"176":1}}],["sol",{"2":{"114":1,"160":1,"176":1,"294":1}}],["solomon",{"2":{"2418":1,"2429":1}}],["solo",{"2":{"107":1,"114":1}}],["solenoids",{"0":{"1675":1},"2":{"145":1,"1675":2}}],["solenoid",{"2":{"64":1,"114":1,"134":1,"191":1,"209":2,"236":1,"1672":2,"1674":3,"1675":28}}],["solheim68",{"2":{"57":2}}],["sorts",{"2":{"2461":1}}],["sorting",{"2":{"110":1,"222":1}}],["sort",{"2":{"49":1,"220":1,"222":1,"346":1,"649":1,"1353":1,"2257":1,"2421":1}}],["sooner",{"2":{"525":1,"2303":1}}],["soon",{"2":{"49":1,"371":1,"392":1,"562":1,"717":1,"1308":4,"1369":1,"1416":2,"1456":1,"1992":1,"2459":1}}],["somewhat",{"2":{"1348":1,"2322":1,"2398":1,"2677":1}}],["somewhere",{"2":{"406":1,"424":1,"430":1,"1443":1,"1622":1,"1994":1,"2008":1,"2627":1,"2905":1}}],["somebody",{"2":{"1335":1,"2673":3,"2890":1}}],["someone",{"2":{"536":1,"538":1,"608":1,"614":1,"670":1,"2457":1,"2559":1,"2573":1}}],["something",{"2":{"125":1,"148":2,"185":1,"371":1,"408":1,"490":1,"491":1,"586":1,"629":2,"644":1,"654":1,"683":1,"685":1,"1323":1,"1402":1,"1407":2,"1409":1,"1421":1,"1444":1,"1464":1,"1465":1,"1479":1,"1483":1,"1484":1,"1493":1,"1540":1,"1585":1,"1587":1,"1595":2,"1760":1,"1785":1,"1788":1,"1827":1,"1845":1,"1917":1,"1933":1,"2005":1,"2068":1,"2074":1,"2204":1,"2268":1,"2302":1,"2420":1,"2421":1,"2424":2,"2475":1,"2559":1,"2577":1,"2621":1,"2627":1,"2630":1,"2633":1,"2645":1,"2676":1,"2724":1,"2748":1,"2793":2,"2890":1}}],["sometimes",{"2":{"119":1,"472":1,"491":1,"514":1,"538":1,"595":1,"663":1,"683":2,"684":1,"713":1,"1324":1,"1344":1,"1402":1,"1409":1,"1410":1,"1420":1,"1421":1,"1440":1,"1539":1,"1756":1,"1789":1,"1822":1,"1987":1,"2398":1,"2427":1,"2475":1,"2550":1,"2555":1,"2626":1,"2644":1,"2688":1,"2775":1,"2895":1,"2930":1,"2942":1}}],["some",{"0":{"421":1,"1346":1,"2425":1},"2":{"2":1,"12":1,"25":1,"28":1,"50":1,"64":1,"95":1,"113":3,"114":6,"123":3,"124":1,"134":1,"138":1,"142":1,"143":3,"145":4,"160":4,"166":1,"174":2,"176":1,"182":2,"191":5,"196":1,"199":2,"203":1,"206":1,"210":2,"220":1,"222":8,"234":2,"235":1,"236":7,"246":1,"256":1,"266":3,"288":2,"294":4,"317":2,"333":1,"356":2,"362":1,"368":1,"387":1,"390":1,"391":1,"406":1,"408":3,"437":1,"485":1,"493":1,"498":1,"509":1,"510":1,"511":1,"512":2,"536":1,"538":1,"555":1,"556":1,"562":1,"569":1,"573":1,"595":1,"607":1,"608":1,"613":1,"616":1,"617":2,"635":1,"666":3,"681":1,"683":2,"685":1,"692":3,"716":1,"717":1,"746":1,"760":3,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1197":1,"1198":1,"1258":1,"1261":1,"1283":1,"1284":1,"1285":1,"1293":1,"1337":1,"1344":1,"1362":2,"1363":1,"1370":1,"1373":2,"1375":1,"1378":1,"1409":2,"1418":1,"1421":1,"1432":1,"1444":1,"1445":2,"1447":1,"1459":1,"1466":1,"1467":1,"1484":2,"1496":1,"1497":1,"1516":1,"1583":1,"1585":1,"1586":1,"1603":2,"1607":2,"1616":1,"1617":1,"1620":1,"1656":1,"1658":1,"1672":1,"1675":1,"1775":1,"1781":1,"1783":1,"1822":1,"1825":1,"1836":1,"1844":3,"1914":1,"1937":1,"1940":2,"1941":3,"1949":2,"1992":1,"2001":1,"2039":1,"2047":1,"2050":1,"2066":3,"2069":1,"2072":1,"2163":1,"2171":1,"2184":2,"2200":3,"2201":1,"2214":1,"2254":1,"2263":1,"2265":1,"2266":1,"2271":2,"2279":2,"2286":1,"2291":1,"2302":1,"2310":1,"2318":1,"2323":1,"2324":1,"2368":1,"2372":1,"2374":1,"2376":1,"2379":1,"2382":1,"2386":1,"2390":1,"2391":1,"2409":1,"2410":5,"2415":1,"2418":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":2,"2440":1,"2444":1,"2447":1,"2455":1,"2474":1,"2476":2,"2492":1,"2494":1,"2495":1,"2496":1,"2501":1,"2542":1,"2550":1,"2554":2,"2556":1,"2557":1,"2560":2,"2561":1,"2565":1,"2578":1,"2591":1,"2605":1,"2611":1,"2625":2,"2637":1,"2670":1,"2673":1,"2676":2,"2683":1,"2689":1,"2715":1,"2720":1,"2749":4,"2750":3,"2758":1,"2766":1,"2776":1,"2835":1,"2882":2,"2883":1,"2885":1,"2887":2,"2894":2,"2899":1,"2900":3,"2902":1,"2920":1,"2923":2,"2936":1,"2937":2,"2941":1,"2942":1}}],["so",{"2":{"0":1,"9":1,"13":2,"19":1,"39":1,"50":1,"52":1,"60":1,"73":1,"99":1,"112":1,"114":1,"118":1,"160":2,"163":2,"174":1,"176":1,"182":2,"191":1,"199":1,"231":1,"232":1,"245":1,"248":1,"273":1,"279":1,"284":2,"288":1,"323":1,"328":1,"347":1,"380":1,"385":1,"393":2,"397":1,"406":1,"487":1,"492":1,"503":1,"511":2,"524":1,"538":1,"584":1,"587":1,"608":2,"611":1,"614":1,"617":1,"645":1,"659":1,"663":1,"673":1,"674":1,"682":1,"684":1,"698":1,"717":1,"745":1,"752":1,"764":1,"1200":1,"1201":1,"1205":1,"1245":1,"1263":1,"1310":1,"1311":1,"1324":1,"1340":1,"1345":2,"1347":1,"1348":1,"1353":2,"1359":1,"1362":1,"1365":1,"1375":1,"1378":2,"1379":1,"1407":2,"1417":1,"1419":1,"1425":1,"1427":1,"1434":1,"1440":2,"1441":1,"1464":2,"1466":2,"1477":1,"1484":1,"1486":1,"1487":1,"1519":2,"1520":2,"1523":1,"1532":1,"1545":1,"1552":1,"1583":2,"1585":1,"1616":1,"1619":1,"1622":1,"1655":1,"1659":1,"1664":1,"1669":1,"1678":1,"1696":1,"1732":1,"1782":1,"1823":1,"1828":1,"1838":1,"1917":2,"1920":1,"1933":2,"1935":1,"1942":1,"1955":1,"1976":1,"1977":1,"1981":2,"1982":2,"1985":1,"1987":1,"1989":1,"2058":1,"2161":1,"2163":1,"2165":1,"2167":1,"2174":1,"2181":1,"2184":1,"2191":1,"2212":1,"2219":1,"2253":1,"2270":1,"2273":1,"2287":1,"2288":1,"2290":1,"2294":1,"2302":1,"2309":1,"2310":2,"2312":1,"2322":1,"2369":1,"2403":1,"2410":1,"2412":2,"2416":1,"2421":2,"2427":1,"2430":1,"2449":1,"2455":1,"2457":2,"2459":3,"2473":1,"2475":1,"2489":1,"2501":1,"2553":1,"2561":1,"2562":1,"2565":1,"2566":1,"2580":1,"2587":1,"2592":1,"2612":1,"2629":1,"2633":1,"2645":1,"2649":1,"2650":1,"2659":1,"2671":1,"2675":1,"2676":2,"2679":1,"2683":1,"2694":1,"2711":1,"2721":3,"2722":1,"2724":1,"2749":2,"2750":2,"2777":1,"2780":1,"2786":1,"2788":2,"2789":1,"2791":1,"2827":1,"2877":1,"2879":1,"2881":1,"2882":2,"2887":1,"2905":2,"2918":1,"2921":1,"2924":1,"2925":1,"2930":1,"2934":1,"2937":1,"2938":1,"2942":2}}],["ndel",{"2":{"2776":1}}],["ndash",{"2":{"342":1,"2160":3,"2288":1,"2915":1}}],["n↓",{"2":{"2776":1}}],["n→",{"2":{"2776":1}}],["n←",{"2":{"2776":1}}],["n↑",{"2":{"2776":1}}],["nhome",{"2":{"2776":1}}],["nhd",{"2":{"2276":1}}],["nrf5",{"2":{"2688":1}}],["nrf51822",{"2":{"2367":1,"2368":1}}],["nrst",{"2":{"2393":2,"2395":2,"2501":1,"2659":1,"2676":1}}],["nbsp",{"2":{"2915":1}}],["nb",{"2":{"2294":1}}],["n9",{"2":{"2294":1}}],["n8",{"2":{"2294":1}}],["n7",{"2":{"2294":1}}],["n3",{"2":{"1919":1,"2294":1,"2520":1}}],["n4",{"2":{"1919":1,"2294":1,"2520":1}}],["n40",{"2":{"210":1}}],["n5",{"2":{"1919":1,"2294":1,"2520":1}}],["n2",{"2":{"1919":2,"2294":1,"2520":2}}],["nw",{"2":{"1735":1}}],["nter",{"2":{"2170":1}}],["ntil",{"2":{"1587":1}}],["nt660",{"2":{"57":2}}],["nfer",{"2":{"1355":1}}],["ns",{"2":{"1289":1}}],["n1",{"2":{"405":1,"1919":2,"2294":1,"2520":2}}],["nyx",{"2":{"285":1}}],["nyquist",{"2":{"45":1,"285":1}}],["nucleo64",{"2":{"2721":1}}],["nucleo",{"2":{"2721":1}}],["nuanced",{"2":{"1928":1}}],["nubs",{"2":{"369":1,"587":2,"2503":1,"2537":1,"2556":1}}],["nuhs",{"2":{"369":1,"587":2,"2503":1,"2537":1,"2556":1}}],["nue",{"2":{"222":1}}],["nullbitsco",{"2":{"277":1}}],["null",{"2":{"210":1,"249":1,"272":2,"325":1,"371":1,"655":3,"1532":1,"1696":1,"1773":1,"1775":2,"2052":1,"2309":2,"2310":1,"2311":1,"2312":1,"2713":3,"2750":4}}],["numlock",{"2":{"1308":2}}],["numerous",{"2":{"188":1,"2254":1}}],["numerically",{"2":{"1421":1}}],["numerical",{"2":{"1327":2,"1421":1,"2877":1,"2941":1}}],["numeric",{"0":{"1501":1,"1508":1,"1689":1},"2":{"181":2,"589":1,"1497":1,"1501":1,"1504":2,"1689":1,"2313":1}}],["numpad",{"2":{"134":1,"154":2,"222":1,"236":1,"2324":1,"2337":1,"2540":1,"2775":5,"2776":5,"2929":1,"2930":2}}],["num",{"2":{"70":1,"188":1,"191":2,"199":1,"210":2,"212":3,"247":2,"249":2,"307":2,"328":1,"427":3,"428":2,"568":1,"698":1,"1351":1,"1413":1,"1414":1,"1650":2,"1661":2,"1687":1,"1829":1,"1830":2,"1832":1,"1947":2,"2074":1,"2178":1,"2188":1,"2190":1,"2269":1,"2277":2,"2294":12,"2298":1,"2503":5,"2538":5,"2747":2,"2749":13,"2750":2,"2760":1,"2776":3,"2777":3,"2860":2,"2928":1,"2931":1,"2932":1}}],["numbered",{"2":{"338":1,"696":1,"1419":2,"1420":1}}],["numbers",{"0":{"2535":1},"2":{"166":1,"522":2,"627":1,"1434":1,"1917":1,"2176":1,"2262":1,"2374":1,"2442":1,"2469":1,"2554":1,"2627":1,"2694":3,"2744":1,"2833":1}}],["number",{"0":{"589":1,"2237":1,"2239":1,"2241":1,"2243":1,"2543":1},"1":{"2238":1,"2240":1,"2242":1,"2244":1},"2":{"95":1,"114":2,"119":1,"134":1,"163":1,"166":2,"169":1,"174":3,"183":1,"199":1,"203":1,"212":2,"222":1,"233":1,"236":1,"285":1,"380":1,"419":1,"420":1,"427":2,"431":4,"453":1,"458":1,"467":1,"520":1,"521":2,"522":4,"559":4,"563":4,"573":1,"611":1,"617":1,"627":2,"646":1,"654":1,"655":1,"658":1,"663":1,"669":1,"698":1,"716":4,"746":1,"747":1,"749":1,"750":1,"751":3,"752":3,"753":3,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"799":1,"828":1,"854":1,"886":1,"899":1,"918":1,"934":1,"953":1,"968":1,"987":1,"1002":1,"1021":1,"1036":1,"1055":1,"1070":1,"1089":1,"1104":1,"1123":1,"1138":1,"1157":1,"1172":1,"1200":1,"1201":1,"1213":1,"1225":1,"1249":1,"1257":1,"1260":1,"1275":1,"1277":1,"1282":1,"1340":1,"1406":1,"1419":1,"1422":2,"1428":1,"1434":1,"1442":1,"1459":1,"1465":1,"1474":1,"1528":1,"1532":2,"1533":1,"1538":1,"1547":1,"1619":1,"1656":1,"1658":1,"1680":1,"1681":2,"1693":2,"1706":2,"1760":1,"1781":1,"1840":4,"1845":1,"1846":3,"1920":1,"1929":1,"1930":3,"1933":1,"1939":1,"1949":1,"1951":1,"1954":4,"1956":2,"1959":1,"1974":2,"2060":4,"2064":2,"2068":1,"2069":3,"2172":3,"2176":4,"2178":5,"2184":1,"2200":1,"2238":1,"2240":1,"2242":1,"2244":1,"2260":1,"2268":4,"2271":4,"2279":1,"2282":1,"2283":2,"2286":1,"2291":1,"2293":2,"2294":12,"2298":1,"2302":1,"2310":1,"2311":1,"2355":1,"2410":2,"2414":1,"2416":3,"2417":2,"2432":1,"2473":1,"2572":1,"2627":5,"2628":1,"2643":1,"2657":1,"2658":2,"2671":1,"2673":1,"2678":1,"2694":3,"2700":1,"2707":1,"2710":1,"2713":1,"2747":3,"2748":2,"2749":11,"2750":5,"2760":1,"2765":1,"2767":1,"2769":1,"2771":1,"2786":1,"2788":1,"2792":1,"2795":1,"2813":1,"2821":1,"2826":1,"2833":1,"2847":4,"2848":1,"2850":5,"2851":5,"2854":1,"2855":1,"2857":4,"2858":2,"2862":4,"2863":1,"2864":17,"2865":2,"2866":5,"2867":3,"2870":14,"2871":21,"2872":2,"2873":4,"2875":6,"2876":1,"2881":1,"2885":1,"2888":1,"2895":1,"2941":1,"2942":2}}],["numbering",{"2":{"50":1,"692":1}}],["numbrero",{"2":{"43":2}}],["nvram",{"2":{"191":1}}],["nvm",{"2":{"131":1,"134":1}}],["nqg",{"2":{"181":2,"191":1}}],["nc",{"2":{"2294":1}}],["ncr80",{"2":{"277":1}}],["ncc1701kb",{"2":{"249":1}}],["nced",{"2":{"176":1}}],["nckiibs",{"2":{"86":8}}],["nnbs",{"2":{"176":1}}],["nkeys",{"2":{"1619":1}}],["nk",{"2":{"222":1,"235":1,"303":1,"2184":3,"2286":1,"2519":3,"2548":3}}],["nknl7jp",{"2":{"154":2}}],["nknl7en",{"2":{"154":2}}],["nk87b",{"2":{"222":1}}],["nk87",{"2":{"154":2,"222":1}}],["nk65",{"2":{"154":2,"311":2,"317":1}}],["nk1",{"2":{"154":2}}],["nkro",{"0":{"235":1,"303":2,"1363":1,"2826":1},"2":{"50":1,"70":1,"111":1,"112":1,"191":1,"199":2,"222":1,"235":2,"236":3,"277":1,"303":6,"308":4,"317":2,"559":1,"572":2,"573":2,"1363":4,"1373":1,"1619":2,"2184":1,"2285":3,"2286":6,"2287":1,"2369":2,"2411":8,"2519":3,"2548":3,"2721":1,"2821":1,"2832":1,"2859":2,"2882":1}}],["nibble",{"0":{"2243":1},"1":{"2244":1}}],["nins",{"2":{"2776":1}}],["nine",{"2":{"1501":1}}],["ninja",{"2":{"191":1,"241":2}}],["nit",{"2":{"512":1}}],["nitty",{"0":{"2558":1},"2":{"358":1}}],["nickname",{"2":{"2632":1}}],["nicinabox",{"2":{"2274":1}}],["nicities",{"2":{"493":1}}],["nicer",{"2":{"2720":1,"2941":1}}],["nicest",{"2":{"2301":1}}],["nice",{"2":{"488":1,"490":1,"1337":1,"2171":1,"2274":1,"2671":1}}],["nightly",{"2":{"210":1,"222":1}}],["niu",{"2":{"154":2,"160":1}}],["nixpkgs",{"2":{"249":1}}],["nix",{"2":{"113":1,"114":1,"176":1,"222":1,"249":1,"308":1}}],["npgdn",{"2":{"2776":1}}],["npgup",{"2":{"2776":1}}],["npkc",{"2":{"2180":1}}],["npn",{"2":{"1539":1}}],["npm",{"2":{"380":1}}],["npminila",{"2":{"154":2}}],["npspears",{"2":{"160":1}}],["np21",{"2":{"154":2,"160":2}}],["nphhkb",{"2":{"154":2}}],["np64",{"2":{"154":2}}],["n6",{"2":{"114":1,"1919":1,"2294":1,"2520":1}}],["nxp",{"0":{"549":1},"2":{"108":1,"2389":1,"2795":1}}],["na",{"2":{"2294":1}}],["nav",{"0":{"1688":1},"2":{"1614":5,"1616":2,"1688":1,"1824":5,"1827":1}}],["navigating",{"2":{"2404":1}}],["navigation",{"2":{"1824":5,"2159":2,"2551":1,"2646":1,"2666":1}}],["navigate",{"2":{"615":1,"2426":1,"2495":1,"2607":1,"2687":1}}],["navi10",{"2":{"144":2}}],["nack",{"2":{"222":1}}],["nacly",{"2":{"154":2,"160":2,"249":1}}],["nanoseconds",{"2":{"1282":3,"1292":2}}],["nanoboot",{"2":{"311":1}}],["nano",{"2":{"191":1,"552":1}}],["naked64",{"2":{"154":2}}],["naked60",{"2":{"154":2}}],["naked48",{"2":{"154":2}}],["naiping",{"2":{"154":6}}],["nafuda",{"2":{"154":2}}],["naming",{"0":{"209":1,"233":1,"517":1,"1845":1,"2068":1,"2442":1},"1":{"518":1},"2":{"134":1,"141":1,"167":1,"182":2,"209":1,"210":6,"224":1,"233":2,"236":9,"238":1,"243":1,"244":1,"249":1,"266":1,"331":1,"614":1,"627":1,"1368":1,"1410":7,"2322":1,"2607":1,"2707":1,"2719":1,"2720":1}}],["name\`",{"2":{"1845":1,"2068":1}}],["name|description|",{"2":{"678":1}}],["name|short",{"2":{"678":1}}],["named",{"2":{"271":1,"370":1,"446":1,"447":1,"448":1,"487":1,"542":1,"591":1,"1347":1,"1427":2,"1457":2,"1458":1,"1947":1,"2277":1,"2425":1,"2446":3,"2596":1,"2629":1,"2633":1,"2775":1,"2776":1,"2797":1,"2830":1,"2831":1,"2930":1,"2942":1}}],["namely",{"2":{"213":1,"1466":1,"2381":1}}],["namecard2x4",{"2":{"154":2}}],["name>",{"2":{"55":2,"428":1,"1461":1,"1466":1}}],["name",{"0":{"57":1,"341":1,"596":1},"2":{"37":2,"43":2,"55":1,"56":2,"57":2,"58":2,"67":2,"70":1,"86":3,"102":2,"111":1,"114":2,"122":2,"134":1,"144":2,"154":2,"160":2,"167":1,"168":2,"169":1,"181":2,"182":2,"184":1,"188":1,"191":1,"197":2,"199":3,"205":2,"218":2,"226":2,"231":1,"236":1,"241":2,"253":2,"266":3,"270":2,"277":1,"281":2,"291":2,"294":1,"300":2,"311":2,"317":1,"322":2,"328":1,"335":1,"397":1,"431":2,"442":1,"457":3,"461":1,"470":1,"482":2,"483":4,"487":12,"490":1,"493":2,"494":1,"514":1,"517":9,"518":1,"527":2,"559":1,"586":1,"589":1,"596":1,"611":3,"616":2,"666":1,"684":1,"685":3,"686":5,"1310":1,"1375":1,"1413":2,"1428":2,"1433":1,"1457":7,"1458":5,"1459":4,"1460":4,"1461":2,"1462":1,"1464":2,"1465":1,"1466":3,"1478":1,"1517":3,"1606":4,"1616":1,"1622":2,"1624":2,"1627":1,"1673":1,"1680":4,"1681":2,"1843":1,"1844":1,"1845":7,"1846":2,"1958":1,"2052":1,"2063":1,"2066":1,"2068":7,"2069":2,"2315":1,"2316":1,"2324":6,"2401":1,"2410":1,"2427":1,"2434":2,"2442":1,"2444":2,"2446":2,"2457":7,"2472":1,"2495":1,"2499":1,"2554":2,"2576":2,"2577":1,"2587":3,"2599":1,"2600":7,"2601":1,"2609":1,"2627":1,"2632":5,"2633":3,"2655":4,"2676":4,"2707":3,"2710":4,"2714":1,"2721":1,"2725":2,"2776":6,"2788":1,"2845":1,"2846":1,"2861":1,"2862":2,"2937":1,"2941":4,"2942":2}}],["names",{"0":{"518":1,"1344":1},"2":{"36":1,"37":1,"43":1,"92":1,"114":1,"142":1,"182":2,"188":3,"191":3,"210":2,"241":2,"253":2,"270":2,"277":1,"281":2,"333":1,"432":1,"505":1,"514":1,"517":2,"518":2,"589":1,"698":1,"1200":1,"1201":1,"1344":2,"1427":1,"1432":2,"1587":1,"1629":1,"1630":1,"1735":1,"2313":1,"2322":2,"2410":2,"2442":3,"2446":1,"2554":2,"2560":1,"2711":1,"2721":3,"2775":1,"2861":1,"2862":2,"2941":7}}],["narrow",{"2":{"119":1,"176":1,"2050":1}}],["nat",{"2":{"2934":1}}],["nature",{"2":{"663":1,"1202":1,"2001":1,"2727":1}}],["naturally",{"2":{"1782":1,"2290":1,"2921":1}}],["natural",{"2":{"119":1,"1486":1,"2903":1}}],["natively",{"2":{"1955":1,"2684":1}}],["native",{"2":{"38":1,"49":1,"248":1,"249":1,"544":1,"586":1,"2747":2,"2748":2,"2749":12,"2750":3,"2938":1}}],["n",{"0":{"2826":1},"2":{"14":1,"196":1,"236":1,"266":2,"369":1,"432":2,"433":2,"453":2,"487":1,"519":1,"572":1,"587":2,"613":1,"800":2,"855":2,"887":2,"919":2,"920":2,"954":2,"988":2,"1022":2,"1056":2,"1090":2,"1091":2,"1124":2,"1125":2,"1158":2,"1200":1,"1201":1,"1204":2,"1210":1,"1214":2,"1265":6,"1326":1,"1327":1,"1330":1,"1363":1,"1410":1,"1440":2,"1529":1,"1539":1,"1552":1,"1619":2,"1695":1,"1707":1,"1735":1,"1785":1,"1791":1,"1837":3,"1841":2,"1947":4,"1954":2,"2061":2,"2159":1,"2161":1,"2216":6,"2221":1,"2224":1,"2270":2,"2277":4,"2286":1,"2291":1,"2293":4,"2321":5,"2323":1,"2369":1,"2494":1,"2503":9,"2519":3,"2535":3,"2548":3,"2556":1,"2707":1,"2748":4,"2762":3,"2769":3,"2771":4,"2773":3,"2920":1,"2941":1}}],["neo2",{"2":{"2880":2}}],["neopad",{"2":{"241":2,"300":2}}],["nend",{"2":{"2776":1}}],["neat",{"2":{"2418":1,"2884":1}}],["near",{"2":{"1456":1,"1479":1,"1843":2,"1970":1,"2063":2,"2422":1,"2775":1}}],["nearest",{"2":{"1249":1,"2294":1}}],["nearly",{"2":{"553":1,"663":1,"2503":1,"2633":1,"2695":1}}],["nearing",{"2":{"279":1}}],["nearfield",{"2":{"222":1}}],["neighbour",{"2":{"2420":1}}],["neighboring",{"2":{"2064":1}}],["neither",{"2":{"487":1,"492":1,"683":1,"1492":1,"2267":1,"2390":1,"2784":1,"2791":1}}],["negated",{"2":{"2760":1,"2767":1,"2768":1}}],["negatively",{"2":{"2269":1,"2895":1}}],["negative",{"0":{"1766":1,"1767":1},"2":{"641":1,"713":1,"719":1,"794":1,"1472":1,"1473":1,"1476":1,"1480":1,"1766":1,"1773":1,"1775":2,"1776":2,"1778":2,"1779":1,"2167":1}}],["neg",{"2":{"2760":2,"2761":1,"2762":1,"2767":1,"2768":2,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1}}],["negmods",{"0":{"1766":1,"1767":1},"2":{"1764":1,"1770":5}}],["ne",{"2":{"1735":1}}],["nexus",{"2":{"1843":3,"2063":3,"2887":1}}],["nexecstart=",{"2":{"1313":2}}],["next",{"0":{"395":1,"406":1,"600":1},"1":{"396":1},"2":{"23":1,"103":1,"104":1,"133":1,"134":1,"141":1,"214":1,"230":1,"236":1,"265":1,"276":1,"307":1,"387":2,"395":1,"397":1,"402":1,"403":2,"406":1,"510":1,"587":2,"644":1,"645":1,"673":1,"714":2,"715":2,"716":3,"718":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1280":1,"1289":1,"1296":2,"1300":2,"1378":1,"1402":1,"1416":1,"1425":4,"1483":2,"1484":2,"1489":4,"1533":2,"1550":2,"1551":2,"1588":1,"1594":1,"1606":1,"1608":1,"1616":1,"1661":1,"1669":1,"1674":3,"1693":1,"1707":1,"1756":1,"1758":1,"1770":3,"1842":3,"1859":1,"1861":1,"1867":1,"1868":1,"1893":1,"1894":1,"1949":1,"1956":4,"1996":1,"2035":1,"2050":1,"2062":3,"2085":1,"2087":1,"2093":1,"2094":1,"2131":1,"2132":1,"2159":2,"2171":1,"2174":2,"2192":2,"2230":1,"2234":1,"2266":1,"2279":1,"2283":4,"2297":1,"2302":1,"2310":1,"2324":2,"2325":2,"2331":1,"2370":5,"2372":1,"2416":1,"2421":1,"2422":1,"2467":1,"2501":1,"2503":3,"2505":4,"2509":5,"2514":1,"2518":3,"2525":2,"2526":3,"2532":1,"2533":2,"2542":3,"2544":1,"2557":1,"2599":1,"2643":1,"2655":1,"2676":2,"2679":1,"2687":1,"2711":1,"2714":1,"2879":1}}],["networks",{"2":{"2367":1}}],["net",{"2":{"414":1,"1364":1,"1365":1}}],["necessarily",{"2":{"2694":1,"2720":1}}],["necessary",{"0":{"2653":1},"2":{"206":1,"234":1,"369":1,"378":1,"379":1,"380":1,"387":2,"390":1,"391":1,"427":1,"434":1,"572":1,"641":1,"684":1,"718":1,"769":1,"794":1,"1200":2,"1201":2,"1210":1,"1283":1,"1340":1,"1511":1,"1655":1,"1662":1,"1775":2,"1776":1,"1778":5,"2030":1,"2049":1,"2265":1,"2282":1,"2287":1,"2289":1,"2389":1,"2411":1,"2420":1,"2446":1,"2448":1,"2449":1,"2476":1,"2496":1,"2561":1,"2594":1,"2606":1,"2613":1,"2650":1,"2703":1,"2721":3,"2844":1,"2905":1}}],["necessitating",{"2":{"408":1}}],["never",{"0":{"2631":1},"1":{"2632":1,"2633":1,"2634":1},"2":{"229":1,"489":1,"491":1,"517":1,"611":1,"625":1,"650":1,"651":1,"1592":1,"1655":1,"1776":1,"1828":1,"2001":1,"2573":1,"2625":1,"2626":1,"2628":1,"2631":1,"2723":2,"2927":1}}],["neutralized",{"2":{"1782":1,"2921":1}}],["neutralizer",{"2":{"1782":4,"2921":4,"2923":1}}],["neutralize",{"2":{"210":1,"1782":6,"2921":6,"2923":1}}],["nebula68",{"2":{"154":2}}],["nebula68b",{"2":{"154":2,"253":2,"266":1}}],["nebula12b",{"2":{"222":1}}],["nebula12",{"2":{"154":2}}],["nest",{"2":{"2443":1}}],["nesting",{"2":{"1655":1,"1656":1,"2311":1}}],["nested",{"0":{"352":1,"353":1,"2909":1},"2":{"134":1,"338":4,"352":1,"353":1,"355":2,"668":1,"1656":1,"2862":1,"2906":1,"2912":3,"2918":1}}],["neson",{"2":{"114":1}}],["nerdtkl",{"2":{"18":1}}],["nerd60",{"2":{"18":1}}],["nerdd",{"2":{"18":1}}],["nerd",{"0":{"18":1},"2":{"18":3}}],["needle",{"2":{"2414":1,"2421":1}}],["needlessly",{"2":{"2005":1}}],["needless",{"2":{"210":2,"2792":1}}],["needing",{"2":{"125":1,"164":1,"185":1,"228":1,"1756":1,"2287":1,"2427":1}}],["needs",{"0":{"1364":1},"2":{"46":1,"405":1,"408":1,"410":1,"428":1,"456":1,"637":1,"654":1,"655":1,"693":1,"714":1,"715":1,"743":1,"746":1,"751":1,"752":1,"753":1,"755":1,"1308":1,"1416":1,"1464":1,"1479":1,"1529":1,"1606":3,"1639":1,"1741":1,"1971":1,"2004":1,"2008":1,"2263":1,"2288":1,"2290":1,"2298":1,"2322":1,"2411":2,"2434":1,"2459":1,"2475":2,"2502":1,"2633":1,"2664":1,"2675":1,"2676":2,"2677":1,"2690":1,"2691":1,"2721":1,"2741":1,"2748":1,"2750":2,"2775":1,"2776":1,"2844":1,"2857":1,"2933":1}}],["needed",{"2":{"21":1,"45":1,"113":1,"134":1,"143":1,"179":1,"196":1,"385":1,"414":1,"510":1,"512":1,"563":2,"637":1,"664":1,"711":1,"1191":1,"1194":2,"1197":1,"1308":1,"1329":1,"1392":2,"1444":1,"1457":1,"1490":1,"1528":1,"1585":1,"1599":1,"1675":1,"1773":1,"1978":1,"2005":1,"2006":1,"2031":1,"2064":1,"2167":1,"2254":1,"2270":1,"2291":1,"2295":1,"2302":2,"2312":1,"2367":1,"2452":1,"2594":1,"2630":1,"2633":1,"2666":1,"2669":2,"2672":1,"2707":1,"2719":1,"2781":2,"2882":1,"2926":1,"2937":1}}],["need",{"0":{"1490":1,"2431":1,"2464":1},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1},"2":{"5":1,"7":1,"14":1,"22":1,"31":1,"45":1,"49":1,"50":1,"89":1,"90":1,"107":1,"118":1,"124":1,"143":2,"164":1,"194":1,"199":1,"206":1,"208":1,"210":1,"232":1,"240":1,"241":1,"253":1,"255":1,"256":1,"259":1,"270":1,"272":2,"279":1,"281":1,"307":2,"323":2,"338":3,"382":1,"387":1,"397":2,"405":1,"408":1,"413":1,"414":1,"420":1,"427":1,"431":1,"491":1,"494":1,"497":1,"507":2,"519":1,"523":2,"528":1,"529":1,"535":1,"539":1,"562":2,"587":1,"589":1,"610":1,"614":1,"617":1,"632":1,"635":1,"637":1,"642":1,"643":1,"663":1,"664":2,"670":1,"671":2,"683":1,"685":1,"687":1,"700":1,"717":1,"718":1,"722":1,"725":1,"749":1,"751":2,"762":1,"765":2,"798":1,"801":1,"827":1,"830":1,"853":1,"858":1,"859":1,"885":1,"889":1,"917":1,"923":1,"924":1,"952":1,"957":1,"958":1,"986":1,"991":1,"992":1,"1020":1,"1025":1,"1026":1,"1054":1,"1059":1,"1060":1,"1088":1,"1093":1,"1094":1,"1122":1,"1127":1,"1128":1,"1156":1,"1161":1,"1162":1,"1204":1,"1212":1,"1215":1,"1243":1,"1244":1,"1245":2,"1264":1,"1266":2,"1281":1,"1284":1,"1296":1,"1297":1,"1300":1,"1310":1,"1312":1,"1313":1,"1315":1,"1316":1,"1329":1,"1333":2,"1339":1,"1345":1,"1351":1,"1362":1,"1363":1,"1366":1,"1377":1,"1385":1,"1387":1,"1407":1,"1417":1,"1420":1,"1433":2,"1436":1,"1444":1,"1458":1,"1464":1,"1466":2,"1504":1,"1516":2,"1520":3,"1521":1,"1531":1,"1532":1,"1538":1,"1540":1,"1550":2,"1551":1,"1583":1,"1584":1,"1585":2,"1588":1,"1596":2,"1597":1,"1600":1,"1606":2,"1609":1,"1616":1,"1621":1,"1628":1,"1636":1,"1650":1,"1660":1,"1661":1,"1675":1,"1756":1,"1762":2,"1773":2,"1775":2,"1776":1,"1789":1,"1822":1,"1830":1,"1917":3,"1946":1,"1949":1,"1955":1,"1959":2,"1976":2,"2005":1,"2030":1,"2036":1,"2039":1,"2047":1,"2050":1,"2051":1,"2064":1,"2161":1,"2172":1,"2182":2,"2187":1,"2191":1,"2201":1,"2203":2,"2204":1,"2219":1,"2257":2,"2259":1,"2260":1,"2261":1,"2266":2,"2268":2,"2270":1,"2271":1,"2273":4,"2274":1,"2277":1,"2279":1,"2286":1,"2291":1,"2293":1,"2302":2,"2309":1,"2310":4,"2311":1,"2312":2,"2322":1,"2324":2,"2384":1,"2386":1,"2388":1,"2390":1,"2391":1,"2398":1,"2404":1,"2409":1,"2410":3,"2411":3,"2414":1,"2420":1,"2421":2,"2425":1,"2427":2,"2445":1,"2447":2,"2474":1,"2475":2,"2476":2,"2477":1,"2481":1,"2490":1,"2499":1,"2554":1,"2562":1,"2566":1,"2579":1,"2580":1,"2584":2,"2588":1,"2592":2,"2595":1,"2596":1,"2609":1,"2611":1,"2612":3,"2614":1,"2615":1,"2617":1,"2628":1,"2630":2,"2633":2,"2644":2,"2646":1,"2649":1,"2650":1,"2651":1,"2653":1,"2666":1,"2670":1,"2671":1,"2673":1,"2676":3,"2684":1,"2707":1,"2719":3,"2720":1,"2723":1,"2746":2,"2748":1,"2750":3,"2751":1,"2775":1,"2835":1,"2844":1,"2879":1,"2881":2,"2882":2,"2887":1,"2890":1,"2894":1,"2898":1,"2905":5,"2925":2,"2933":1,"2942":2}}],["newhaven",{"2":{"2276":1}}],["newbs",{"2":{"681":2,"1333":1,"2584":1,"2635":1,"2667":1,"2723":2}}],["newline",{"2":{"1330":1,"1442":2,"1707":1}}],["newlines",{"2":{"338":1,"511":1,"2556":1}}],["newlib",{"2":{"191":1}}],["newly",{"2":{"188":1,"191":1,"266":1,"275":1,"1466":1,"2303":1,"2426":1,"2590":1,"2671":1,"2676":1,"2719":1,"2722":1}}],["newest",{"2":{"163":1,"173":1,"402":1,"405":1,"406":1}}],["newer",{"2":{"10":2,"49":1,"123":1,"133":1,"142":1,"160":1,"236":3,"308":1,"2159":1,"2376":1,"2881":1}}],["news",{"2":{"133":1,"134":1}}],["new",{"0":{"82":1,"112":1,"130":1,"156":1,"157":1,"442":1,"443":1,"627":1,"1783":1,"2577":1,"2689":1,"2690":1,"2691":1,"2937":1},"1":{"158":1,"159":1,"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1},"2":{"1":1,"22":1,"24":1,"25":1,"36":1,"37":2,"38":1,"43":2,"46":1,"49":1,"56":2,"57":1,"58":1,"67":1,"70":4,"82":1,"86":1,"93":1,"99":2,"102":1,"103":1,"112":2,"113":2,"114":3,"118":3,"122":1,"123":1,"125":1,"126":1,"130":1,"132":1,"133":1,"134":4,"137":1,"138":2,"141":2,"143":1,"144":1,"145":1,"154":1,"160":7,"164":1,"167":1,"168":1,"173":2,"176":2,"181":1,"182":5,"183":3,"185":1,"186":1,"191":1,"194":1,"197":1,"199":3,"201":1,"205":1,"206":1,"207":1,"209":6,"213":1,"214":1,"218":1,"222":1,"224":1,"226":1,"228":3,"229":1,"230":2,"234":1,"236":3,"240":1,"241":1,"243":2,"244":1,"249":2,"253":1,"254":1,"265":1,"266":3,"270":1,"271":1,"273":1,"277":1,"281":1,"283":1,"285":3,"288":1,"291":1,"294":1,"300":1,"303":1,"307":3,"308":6,"311":1,"322":1,"328":1,"331":1,"333":2,"347":2,"359":1,"396":2,"397":2,"399":1,"406":2,"408":1,"416":1,"430":1,"441":1,"442":2,"443":2,"446":1,"447":1,"448":3,"483":2,"484":1,"493":1,"538":1,"540":1,"611":2,"616":1,"617":2,"621":2,"626":1,"628":1,"649":1,"664":2,"666":2,"670":2,"671":3,"678":1,"679":1,"681":1,"683":1,"684":1,"685":1,"1329":1,"1335":1,"1340":1,"1347":1,"1407":2,"1425":1,"1427":1,"1440":1,"1466":5,"1494":1,"1515":1,"1516":1,"1529":1,"1545":1,"1616":1,"1621":1,"1622":1,"1624":1,"1840":1,"1844":2,"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1884":1,"1885":1,"1886":1,"1891":1,"1894":1,"1896":1,"1934":2,"1949":1,"1950":1,"1956":2,"1957":1,"1977":1,"1981":2,"1983":1,"1992":1,"2060":1,"2066":2,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2122":1,"2123":1,"2124":1,"2129":1,"2132":1,"2134":1,"2139":1,"2252":1,"2279":1,"2283":2,"2288":2,"2291":1,"2296":1,"2303":1,"2334":1,"2336":1,"2380":1,"2393":1,"2395":1,"2397":1,"2398":1,"2399":1,"2411":1,"2421":1,"2425":2,"2452":1,"2493":1,"2495":1,"2497":2,"2560":1,"2561":1,"2576":1,"2577":4,"2581":1,"2583":1,"2587":4,"2590":1,"2614":1,"2615":1,"2630":1,"2631":2,"2633":5,"2635":1,"2636":1,"2655":1,"2671":1,"2684":1,"2685":1,"2689":1,"2690":1,"2691":1,"2707":5,"2719":2,"2721":3,"2722":6,"2776":1,"2829":1,"2886":2,"2905":5,"2918":1,"2934":1,"2937":2}}],["nomenclature",{"0":{"2694":1}}],["nomu30",{"2":{"154":2}}],["nose",{"2":{"2414":1,"2421":1}}],["nose2",{"2":{"499":1,"503":2}}],["nos",{"2":{"1484":1,"2427":1}}],["nobody",{"2":{"511":1}}],["nodes",{"2":{"583":1,"1532":5}}],["node",{"2":{"380":1,"458":1,"459":1,"580":1,"583":1,"1519":1,"1532":23,"1533":8,"2050":2}}],["nop",{"2":{"249":1}}],["nopq",{"2":{"249":1}}],["noop",{"2":{"2503":1,"2544":1,"2554":1}}],["noodlepad",{"2":{"249":1}}],["noon",{"2":{"222":1}}],["noxary",{"2":{"222":2}}],["noevent",{"2":{"199":1}}],["noeeprom",{"0":{"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1},"1":{"1866":1,"1886":1,"1892":1,"2092":1,"2124":1,"2130":1,"2140":1},"2":{"49":2,"191":1,"639":3,"1407":14,"2075":2,"2192":3,"2193":3,"2194":7,"2195":3,"2198":1}}],["noci",{"2":{"160":1,"191":1}}],["noconfirm",{"2":{"143":1,"2594":1}}],["norwegian",{"2":{"2880":3}}],["northwest",{"2":{"1735":1}}],["northeast",{"2":{"1735":1}}],["north",{"2":{"1343":1,"1735":2,"2044":1}}],["noroadsleft",{"2":{"266":1}}],["norm",{"2":{"191":1,"247":1,"523":1,"1479":4,"1480":6,"1650":1,"2519":6,"2548":6}}],["norman",{"2":{"176":1,"2880":3}}],["normalized",{"2":{"1635":1}}],["normalise",{"2":{"188":9,"191":10,"199":1,"266":1,"277":1}}],["normal",{"2":{"128":1,"137":1,"139":1,"224":1,"288":1,"334":1,"344":1,"492":1,"568":1,"628":1,"751":1,"754":2,"1317":2,"1346":1,"1375":2,"1407":2,"1413":1,"1419":1,"1440":1,"1441":2,"1492":3,"1497":1,"1512":1,"1516":1,"1529":1,"1604":1,"1620":1,"1627":1,"1632":1,"1650":1,"1661":2,"1778":1,"1779":1,"1780":1,"1781":1,"1979":1,"2044":1,"2248":1,"2258":1,"2266":1,"2268":1,"2269":1,"2270":1,"2372":1,"2410":1,"2569":3,"2583":1,"2587":1,"2630":1,"2643":1,"2644":1,"2676":2,"2680":1,"2704":1,"2721":1,"2731":1,"2746":1,"2749":1,"2750":2,"2896":1,"2924":1,"2936":1}}],["normally",{"2":{"99":1,"164":1,"302":1,"468":1,"493":1,"494":1,"567":1,"629":1,"680":1,"1407":1,"1425":1,"1441":1,"1508":1,"1608":1,"1624":1,"1775":2,"2167":1,"2168":1,"2185":1,"2199":1,"2265":1,"2285":1,"2311":1,"2516":1,"2651":1,"2912":1,"2913":1,"2933":1}}],["nor",{"2":{"174":1,"492":1,"635":1,"743":1,"750":1,"752":2,"755":1,"756":2,"1295":1,"1529":1,"2386":1,"2391":1,"2685":1,"2724":1}}],["nordic",{"2":{"5":1,"2368":2,"2728":2,"2729":5,"2734":4,"2735":1,"2737":1,"2738":1,"2743":1}}],["novices",{"2":{"2625":1}}],["novice",{"2":{"2453":1}}],["novelpad",{"2":{"154":2}}],["novelkeys",{"2":{"154":4,"160":1,"222":2,"311":2,"317":1}}],["november",{"0":{"115":1,"177":1,"223":1,"278":1},"1":{"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1},"2":{"279":1}}],["nov",{"0":{"52":1,"318":1},"1":{"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1},"2":{"55":1,"88":1,"104":1,"127":1,"170":1,"394":1,"407":6}}],["nonus",{"2":{"2503":2,"2537":2}}],["nonactuated",{"2":{"1675":2}}],["nonstandard",{"2":{"317":1}}],["nonex",{"2":{"2448":1}}],["none",{"2":{"266":1,"328":1,"333":1,"381":1,"391":1,"471":2,"472":2,"474":1,"480":2,"481":2,"482":3,"483":5,"485":1,"532":1,"686":2,"746":1,"747":1,"756":1,"857":2,"918":4,"920":1,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1089":4,"1091":1,"1092":2,"1123":4,"1125":1,"1126":2,"1160":2,"1189":1,"1245":1,"1315":1,"1516":1,"1545":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1841":1,"1843":1,"1846":6,"1996":1,"2001":7,"2002":3,"2052":2,"2061":1,"2063":1,"2069":8,"2176":4,"2291":1,"2310":3,"2311":1,"2312":3,"2370":2,"2448":1,"2509":2,"2678":1,"2707":1,"2746":1}}],["non",{"0":{"2455":1,"2688":1,"2780":1},"2":{"28":1,"49":1,"51":1,"70":1,"94":1,"133":1,"134":2,"145":2,"176":2,"199":1,"201":1,"210":1,"249":1,"308":2,"512":1,"579":1,"716":1,"754":1,"1407":1,"1422":2,"1433":1,"1436":1,"1511":1,"1521":1,"1522":1,"1660":1,"1675":2,"1686":2,"1775":2,"1778":1,"1779":2,"1781":2,"1992":1,"1993":1,"1996":1,"2002":1,"2007":1,"2163":2,"2262":1,"2269":1,"2289":1,"2290":1,"2310":1,"2312":1,"2324":1,"2382":1,"2427":1,"2428":1,"2453":1,"2503":3,"2537":2,"2544":1,"2552":2,"2559":1,"2561":2,"2688":2,"2704":1,"2718":1,"2719":1,"2721":1,"2740":1,"2765":1,"2778":1,"2888":1}}],["noise",{"2":{"17":1,"1409":4,"1410":6,"1413":2,"2046":1,"2377":1,"2384":1}}],["nowhere",{"2":{"2560":1}}],["now",{"0":{"90":1,"105":1,"148":1,"273":1},"2":{"10":3,"11":2,"16":1,"18":2,"25":1,"45":1,"49":5,"50":2,"58":1,"69":2,"70":2,"73":1,"74":1,"76":1,"80":1,"83":1,"94":1,"98":1,"99":2,"103":1,"104":1,"105":1,"107":1,"114":1,"118":2,"119":1,"120":2,"124":2,"125":1,"126":2,"127":1,"130":1,"131":1,"134":1,"138":1,"148":1,"149":1,"152":1,"157":1,"172":1,"173":1,"174":1,"182":2,"185":1,"194":1,"195":1,"196":1,"202":1,"212":3,"217":2,"220":1,"222":1,"224":1,"234":2,"235":1,"245":1,"246":1,"248":1,"262":2,"263":1,"273":1,"275":2,"283":2,"293":2,"305":2,"307":1,"314":3,"323":2,"331":1,"383":1,"386":1,"387":3,"397":1,"399":1,"400":1,"401":1,"402":2,"405":4,"471":2,"510":1,"537":1,"538":1,"587":1,"663":1,"718":1,"1308":1,"1359":4,"1373":1,"1407":3,"1442":1,"1466":1,"1517":4,"1586":1,"1598":1,"1609":1,"1667":2,"1756":1,"1780":1,"1788":1,"1789":1,"2182":1,"2183":1,"2212":1,"2248":1,"2252":1,"2253":1,"2270":1,"2291":1,"2295":1,"2303":1,"2308":1,"2310":1,"2312":1,"2398":2,"2423":1,"2459":2,"2491":1,"2495":1,"2501":1,"2554":1,"2559":1,"2575":1,"2576":1,"2583":2,"2588":1,"2604":1,"2622":1,"2623":1,"2627":2,"2628":1,"2629":1,"2630":3,"2632":3,"2633":1,"2655":1,"2656":1,"2671":1,"2675":1,"2677":1,"2707":2,"2722":2,"2887":1,"2905":1}}],["no",{"0":{"152":1,"590":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1506":1,"1610":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2925":1},"2":{"2":2,"5":1,"6":1,"48":1,"50":1,"74":1,"88":2,"92":1,"103":2,"104":2,"112":1,"114":1,"118":1,"124":1,"126":1,"127":2,"130":1,"134":1,"139":1,"152":1,"160":3,"176":1,"189":1,"191":1,"196":1,"199":2,"201":1,"206":1,"212":1,"222":2,"224":1,"231":1,"233":1,"240":1,"245":1,"249":1,"255":1,"262":1,"265":1,"266":4,"268":1,"273":3,"276":1,"279":1,"284":1,"285":1,"312":1,"317":1,"328":1,"342":1,"396":1,"403":1,"405":1,"406":1,"416":1,"432":1,"437":1,"453":1,"457":1,"473":2,"538":1,"560":5,"562":2,"568":1,"572":1,"573":1,"587":1,"594":1,"605":1,"611":1,"613":3,"616":1,"637":2,"673":1,"682":1,"684":1,"720":1,"747":1,"749":1,"764":1,"765":1,"920":1,"1091":1,"1125":1,"1210":1,"1244":1,"1245":3,"1265":1,"1273":1,"1294":1,"1295":1,"1316":1,"1317":1,"1358":1,"1369":1,"1377":1,"1402":1,"1405":1,"1406":1,"1410":1,"1413":7,"1418":1,"1425":1,"1456":1,"1457":1,"1475":1,"1484":1,"1485":1,"1490":1,"1492":3,"1494":1,"1496":2,"1497":1,"1504":5,"1511":1,"1512":1,"1516":2,"1522":4,"1527":2,"1528":1,"1584":6,"1589":1,"1592":1,"1599":1,"1603":1,"1610":1,"1612":2,"1614":1,"1616":2,"1635":1,"1655":1,"1656":2,"1658":1,"1662":1,"1664":1,"1665":2,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1736":1,"1770":5,"1773":3,"1775":5,"1776":2,"1779":2,"1780":1,"1782":3,"1789":1,"1791":1,"1802":1,"1805":1,"1823":1,"1840":10,"1841":1,"1843":1,"1919":1,"1931":2,"1932":1,"1945":4,"1965":1,"2009":2,"2052":1,"2060":10,"2061":1,"2063":1,"2073":1,"2159":1,"2160":1,"2174":1,"2184":2,"2191":1,"2203":2,"2219":1,"2251":1,"2252":3,"2253":1,"2268":2,"2271":2,"2285":2,"2291":3,"2303":1,"2309":1,"2310":1,"2318":1,"2369":1,"2381":1,"2410":1,"2411":5,"2412":1,"2418":4,"2426":1,"2443":1,"2453":1,"2459":3,"2462":1,"2497":1,"2503":1,"2520":1,"2525":1,"2534":1,"2544":1,"2554":2,"2557":1,"2560":4,"2561":1,"2564":1,"2569":1,"2570":2,"2605":1,"2611":1,"2629":1,"2646":1,"2650":1,"2666":1,"2672":1,"2676":1,"2678":1,"2713":1,"2719":1,"2720":1,"2721":15,"2727":2,"2728":2,"2729":1,"2732":2,"2734":1,"2741":4,"2742":4,"2743":1,"2746":1,"2748":8,"2750":3,"2760":1,"2767":1,"2770":5,"2775":8,"2847":1,"2862":1,"2864":1,"2865":1,"2871":1,"2875":1,"2879":2,"2882":7,"2883":2,"2884":2,"2885":1,"2905":1,"2918":2,"2921":3,"2925":1,"2927":1,"2929":1,"2930":5}}],["noto11",{"2":{"2748":4,"2750":3}}],["notosans",{"2":{"2748":1}}],["notset",{"2":{"490":1}}],["nothing",{"0":{"1317":1},"2":{"430":1,"664":1,"747":1,"1359":3,"1425":2,"1619":1,"1780":1,"2006":1,"2160":1,"2253":1,"2410":1,"2679":1,"2680":1,"2899":1,"2905":1,"2919":1,"2921":2}}],["noting",{"2":{"1599":1,"2302":1}}],["notion",{"2":{"1528":1}}],["notification",{"2":{"346":1,"356":1,"1621":1}}],["notified",{"2":{"312":1}}],["noticeably",{"2":{"1955":1}}],["noticeable",{"2":{"570":1,"2912":1}}],["noticed",{"2":{"1665":1,"1955":1}}],["notices",{"0":{"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"330":1},"1":{"265":1,"275":1,"276":1,"283":1,"284":1,"293":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"314":1,"315":1,"316":1,"327":1,"331":1,"332":1},"2":{"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1}}],["notice",{"0":{"2896":1},"2":{"263":1,"264":1,"274":1,"276":1,"282":1,"292":1,"301":1,"313":1,"326":1,"405":1,"1441":2,"1442":1,"2896":1,"2924":1,"2930":2,"2931":1}}],["notably",{"2":{"143":1,"1340":1,"1941":1}}],["notable",{"0":{"79":1,"97":1,"106":1,"117":1,"129":1,"136":1,"147":1,"155":1,"162":1,"171":1,"178":1,"187":1,"198":1,"201":1,"212":1,"219":1,"224":1,"227":1,"238":1,"242":1,"251":1,"261":1,"268":1,"279":1,"287":1,"296":1,"319":1},"1":{"80":1,"81":1,"82":1,"83":1,"84":1,"98":1,"99":1,"100":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"118":1,"119":1,"120":1,"130":1,"131":1,"132":1,"133":1,"137":1,"138":1,"139":1,"148":1,"149":1,"156":1,"157":1,"158":1,"159":1,"163":1,"164":1,"172":1,"173":1,"174":1,"175":1,"179":1,"188":1,"189":1,"190":1,"202":1,"203":1,"213":1,"214":1,"215":1,"220":1,"221":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"262":1,"263":1,"288":1,"289":1,"297":1,"298":1,"320":1},"2":{"224":1,"279":1,"682":1,"1471":1,"2562":1}}],["notation",{"0":{"111":1},"2":{"111":1,"323":2,"668":1,"2459":1}}],["noted",{"2":{"103":1,"126":1,"276":1,"1466":1,"2063":1,"2582":1}}],["note",{"0":{"27":1,"2419":1},"2":{"27":1,"132":1,"199":1,"201":1,"210":5,"212":1,"241":1,"253":1,"270":1,"272":1,"273":1,"281":1,"390":1,"391":1,"417":1,"428":1,"430":1,"437":1,"459":1,"486":1,"536":1,"563":1,"591":2,"613":1,"654":1,"685":1,"686":1,"692":2,"696":2,"714":1,"739":1,"760":1,"888":1,"1189":1,"1194":1,"1197":1,"1287":1,"1312":1,"1313":1,"1362":1,"1368":1,"1404":1,"1416":2,"1432":1,"1434":1,"1442":1,"1457":1,"1465":1,"1471":1,"1475":1,"1481":1,"1482":1,"1487":3,"1497":1,"1508":1,"1512":1,"1516":1,"1545":1,"1548":1,"1591":1,"1627":1,"1658":1,"1734":1,"1780":1,"1781":1,"1782":1,"1823":1,"1840":1,"1844":1,"1913":3,"1919":72,"1920":1,"1937":1,"1956":2,"1959":1,"1976":1,"1978":1,"1994":1,"2002":1,"2005":2,"2007":1,"2033":1,"2040":1,"2060":1,"2064":1,"2066":1,"2176":1,"2181":1,"2182":3,"2184":1,"2191":1,"2220":1,"2259":1,"2260":1,"2265":1,"2296":1,"2312":2,"2313":1,"2316":1,"2324":1,"2367":1,"2401":2,"2410":2,"2411":1,"2418":1,"2423":2,"2424":1,"2427":1,"2478":1,"2480":1,"2482":1,"2489":1,"2491":1,"2495":1,"2499":1,"2520":72,"2552":2,"2554":1,"2556":1,"2557":1,"2582":1,"2600":1,"2615":1,"2619":1,"2620":1,"2621":1,"2646":1,"2653":1,"2675":1,"2688":1,"2694":1,"2719":1,"2720":1,"2745":1,"2747":1,"2750":1,"2879":1,"2882":1,"2899":1,"2905":2,"2906":1,"2907":1,"2919":2,"2921":1,"2936":2,"2937":3,"2938":1}}],["notes",{"0":{"717":1,"720":1,"2723":1},"2":{"10":1,"203":1,"403":1,"711":1,"717":1,"1389":1,"1390":1,"1405":2,"1470":1,"1479":2,"1484":1,"1485":1,"1487":1,"1691":1,"1919":2,"1945":1,"2001":1,"2004":1,"2255":1,"2276":1,"2520":2,"2684":1,"2884":1,"2918":1}}],["not",{"0":{"602":1,"1314":1,"1346":1},"2":{"0":1,"5":1,"9":1,"14":1,"19":1,"23":3,"25":1,"28":1,"31":1,"34":1,"39":1,"49":1,"50":1,"52":1,"73":1,"90":1,"92":2,"114":2,"125":1,"134":3,"138":2,"139":1,"145":2,"160":1,"166":1,"176":1,"182":1,"185":1,"194":1,"198":1,"199":4,"202":1,"209":1,"210":1,"212":2,"220":1,"222":1,"232":1,"236":2,"240":2,"241":1,"249":2,"251":1,"253":1,"266":2,"268":1,"270":1,"273":1,"276":1,"277":2,"281":1,"284":1,"303":1,"317":1,"320":1,"328":1,"338":6,"341":2,"358":1,"363":1,"374":1,"390":2,"393":1,"397":3,"408":1,"413":1,"423":1,"431":2,"437":3,"442":2,"459":1,"461":1,"487":1,"490":1,"492":1,"493":1,"494":1,"497":2,"498":1,"503":2,"509":1,"510":6,"512":3,"514":1,"516":1,"517":2,"522":2,"523":1,"524":1,"526":1,"528":1,"529":1,"530":1,"531":2,"533":1,"536":1,"537":1,"538":1,"540":1,"542":1,"543":1,"544":1,"553":1,"554":1,"559":1,"562":3,"566":1,"567":2,"570":1,"572":1,"573":1,"580":1,"586":1,"590":1,"594":2,"595":1,"597":1,"598":1,"602":2,"608":1,"609":1,"611":1,"612":1,"613":5,"616":2,"617":2,"624":1,"631":1,"637":2,"641":1,"645":2,"649":1,"651":1,"654":1,"655":2,"657":1,"666":2,"670":2,"680":1,"682":1,"683":2,"684":1,"685":1,"686":1,"690":2,"692":2,"701":2,"704":1,"711":3,"716":1,"720":3,"723":3,"732":1,"741":1,"745":1,"746":1,"750":1,"751":4,"752":1,"759":1,"760":1,"764":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"794":2,"799":5,"810":1,"814":1,"818":1,"820":1,"828":1,"838":1,"842":1,"846":1,"848":1,"854":5,"868":1,"872":1,"876":1,"878":1,"886":6,"900":1,"904":1,"908":1,"910":1,"918":5,"935":1,"939":1,"943":1,"945":1,"953":5,"969":1,"973":1,"977":1,"979":1,"987":5,"1003":1,"1007":1,"1011":1,"1013":1,"1021":5,"1037":1,"1041":1,"1045":1,"1047":1,"1055":5,"1071":1,"1075":1,"1079":1,"1081":1,"1089":5,"1105":1,"1109":1,"1113":1,"1115":1,"1123":5,"1139":1,"1143":1,"1147":1,"1149":1,"1157":5,"1173":1,"1177":1,"1181":1,"1183":1,"1190":1,"1196":1,"1200":2,"1201":3,"1202":1,"1213":5,"1226":1,"1230":1,"1234":1,"1236":1,"1244":1,"1245":2,"1257":1,"1260":1,"1263":1,"1275":1,"1277":1,"1282":3,"1289":1,"1291":1,"1294":1,"1296":2,"1299":1,"1300":3,"1303":1,"1312":2,"1313":2,"1329":1,"1335":1,"1343":1,"1345":2,"1346":1,"1353":1,"1355":1,"1358":2,"1359":2,"1362":2,"1368":1,"1373":1,"1375":1,"1377":1,"1378":1,"1389":2,"1390":2,"1392":2,"1395":1,"1405":1,"1406":1,"1409":4,"1410":2,"1416":3,"1419":1,"1421":2,"1422":1,"1425":1,"1432":1,"1438":1,"1440":2,"1442":3,"1458":1,"1461":1,"1465":1,"1466":2,"1479":1,"1480":8,"1485":1,"1492":1,"1493":6,"1495":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1504":1,"1511":2,"1512":3,"1513":1,"1527":1,"1528":1,"1529":1,"1532":1,"1536":1,"1538":4,"1544":1,"1550":2,"1552":2,"1584":1,"1587":4,"1589":1,"1599":1,"1603":1,"1609":1,"1611":1,"1614":4,"1621":1,"1632":1,"1633":1,"1636":1,"1653":1,"1656":4,"1660":1,"1662":2,"1669":1,"1672":4,"1674":1,"1675":6,"1681":1,"1684":1,"1691":1,"1693":5,"1696":1,"1733":1,"1736":1,"1759":2,"1764":1,"1766":1,"1770":2,"1771":1,"1773":1,"1775":5,"1776":2,"1778":2,"1779":1,"1780":2,"1781":1,"1782":3,"1789":1,"1822":1,"1828":2,"1830":6,"1831":1,"1840":2,"1844":1,"1845":1,"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"1913":1,"1914":1,"1917":1,"1920":1,"1928":1,"1929":1,"1931":2,"1933":1,"1934":1,"1936":1,"1937":1,"1939":1,"1941":1,"1942":1,"1951":2,"1953":3,"1954":9,"1955":4,"1956":7,"1962":6,"1964":4,"1966":3,"1968":3,"1969":1,"1970":1,"1971":3,"1973":1,"1976":1,"1978":15,"1979":1,"1980":8,"1983":4,"1987":2,"1992":1,"1994":2,"1996":1,"2007":1,"2030":1,"2033":1,"2040":1,"2041":1,"2050":1,"2060":2,"2066":1,"2068":1,"2069":2,"2075":1,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2160":1,"2161":2,"2165":1,"2172":1,"2174":1,"2175":2,"2176":1,"2177":12,"2178":1,"2181":1,"2185":1,"2191":9,"2192":3,"2193":3,"2194":7,"2195":3,"2203":1,"2205":2,"2218":1,"2220":1,"2252":1,"2253":2,"2254":2,"2258":2,"2263":1,"2265":1,"2266":2,"2268":2,"2271":2,"2272":2,"2281":3,"2283":4,"2287":3,"2293":4,"2294":2,"2302":2,"2303":4,"2310":12,"2311":1,"2312":1,"2313":1,"2316":1,"2318":1,"2322":2,"2324":5,"2325":1,"2361":1,"2367":2,"2369":1,"2370":12,"2372":3,"2374":1,"2377":1,"2384":1,"2386":1,"2388":1,"2389":1,"2401":2,"2403":1,"2404":1,"2407":2,"2408":1,"2410":2,"2411":3,"2412":1,"2416":2,"2418":1,"2420":2,"2421":2,"2422":2,"2424":1,"2425":1,"2427":3,"2442":2,"2443":2,"2447":3,"2448":1,"2449":2,"2450":1,"2451":1,"2453":1,"2457":1,"2459":1,"2469":1,"2470":1,"2473":2,"2474":1,"2475":2,"2476":1,"2478":1,"2480":1,"2482":1,"2483":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":2,"2496":3,"2498":1,"2499":2,"2501":1,"2503":1,"2504":1,"2509":12,"2533":1,"2542":1,"2545":2,"2556":1,"2557":2,"2559":3,"2560":5,"2561":1,"2562":4,"2565":1,"2566":1,"2572":1,"2577":1,"2578":2,"2580":1,"2582":3,"2592":1,"2594":1,"2595":1,"2596":1,"2599":1,"2605":3,"2606":1,"2609":5,"2610":2,"2612":1,"2614":1,"2615":1,"2619":2,"2621":1,"2626":1,"2627":1,"2628":1,"2630":2,"2632":1,"2633":1,"2638":1,"2652":2,"2653":1,"2655":1,"2657":1,"2659":3,"2660":1,"2662":2,"2669":1,"2676":1,"2678":2,"2679":1,"2680":1,"2683":1,"2684":2,"2685":3,"2687":1,"2688":2,"2693":1,"2694":1,"2703":1,"2704":1,"2705":1,"2707":1,"2710":2,"2713":1,"2719":8,"2720":2,"2721":17,"2722":3,"2724":2,"2725":1,"2729":1,"2731":2,"2732":2,"2734":1,"2745":1,"2746":1,"2747":1,"2748":1,"2749":1,"2750":8,"2760":1,"2762":1,"2770":1,"2776":2,"2777":1,"2778":2,"2781":1,"2782":1,"2784":1,"2786":1,"2788":1,"2792":1,"2798":1,"2840":1,"2844":1,"2846":2,"2862":4,"2863":1,"2875":1,"2877":1,"2879":2,"2880":2,"2882":4,"2883":1,"2884":1,"2885":1,"2886":1,"2894":1,"2895":3,"2902":1,"2905":2,"2906":3,"2911":2,"2912":4,"2913":2,"2921":3,"2923":1,"2924":1,"2926":1,"2930":1,"2936":1,"2940":2,"2941":1,"2942":1}}],["y1",{"2":{"2750":1}}],["y0",{"2":{"2750":1}}],["y+",{"2":{"1965":1}}],["yyyy",{"2":{"405":2,"414":3,"415":3,"416":2,"417":2}}],["yyyyqn",{"2":{"397":1}}],["yynmt",{"2":{"154":2,"160":2}}],["yz",{"2":{"266":1,"328":1}}],["y",{"0":{"1647":1,"2784":1,"2786":1},"1":{"1648":1,"2785":1,"2787":1},"2":{"249":1,"308":1,"369":1,"433":2,"587":2,"1422":4,"1635":2,"1639":2,"1647":1,"1648":2,"1734":1,"1736":1,"1737":2,"1760":1,"1840":7,"1846":2,"1928":1,"1956":2,"1962":2,"1964":3,"1965":2,"1968":2,"1969":4,"1976":4,"1978":5,"1980":5,"1983":3,"1986":2,"1987":3,"1989":2,"1990":2,"2007":1,"2040":1,"2043":2,"2060":7,"2069":2,"2160":5,"2283":2,"2471":2,"2503":3,"2535":3,"2556":1,"2594":4,"2621":4,"2707":2,"2714":16,"2749":3,"2750":14,"2776":19,"2777":17,"2781":9,"2784":3,"2786":3,"2862":3,"2864":2,"2871":2,"2919":1}}],["ymlname",{"2":{"2600":1}}],["yml",{"2":{"2598":1,"2600":2,"2601":1,"2602":1,"2603":1}}],["ym68",{"2":{"222":1}}],["ymd96",{"2":{"154":2,"160":1}}],["ymd75",{"2":{"154":2,"160":1,"210":1}}],["ymdk",{"2":{"144":1,"145":1,"154":5,"160":5,"210":1,"222":5,"226":2,"236":1,"291":2,"294":1,"308":1}}],["yttyx",{"2":{"222":1}}],["yum",{"2":{"2594":1}}],["yunzii",{"2":{"2560":1}}],["yugo",{"2":{"218":2,"222":1}}],["yurei",{"2":{"154":2}}],["yosino58",{"2":{"176":1}}],["youtube",{"2":{"2180":2}}],["yourgithub",{"2":{"2725":2}}],["yours",{"0":{"2463":1},"2":{"670":1}}],["yourself",{"2":{"392":1,"412":1,"511":1,"540":1,"1368":1,"1418":1,"1616":1,"1756":1,"2201":1,"2291":1,"2494":1,"2553":1,"2572":1}}],["yourkeyboard",{"2":{"212":1}}],["yourkeymap",{"2":{"132":1}}],["yourkb",{"2":{"132":1}}],["your",{"0":{"410":1,"411":1,"507":1,"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"600":1,"624":1,"1324":1,"1414":1,"1436":1,"1621":1,"1622":1,"1667":1,"1925":1,"2427":1,"2442":1,"2575":1,"2576":1,"2578":1,"2579":1,"2580":1,"2581":1,"2603":1,"2604":1,"2605":1,"2606":1,"2608":1,"2609":1,"2611":1,"2613":1,"2622":1,"2623":1,"2627":1,"2629":1,"2630":1,"2631":1,"2632":1,"2634":1,"2656":1,"2707":1,"2774":1,"2782":1,"2878":1},"1":{"625":1,"1926":1,"1927":1,"2576":1,"2577":1,"2578":1,"2579":1,"2580":1,"2581":1,"2605":1,"2606":1,"2607":2,"2608":2,"2609":1,"2610":1,"2612":1,"2613":1,"2614":2,"2615":2,"2616":2,"2617":2,"2618":2,"2619":2,"2620":2,"2621":1,"2622":1,"2632":1,"2633":1,"2634":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"1":1,"14":1,"18":4,"23":1,"25":1,"31":1,"34":1,"36":1,"37":1,"43":1,"45":2,"49":3,"82":1,"87":1,"89":1,"90":1,"107":2,"110":3,"116":1,"119":4,"120":1,"124":3,"132":1,"196":1,"206":1,"212":1,"213":2,"228":1,"233":2,"235":1,"240":1,"241":2,"253":2,"255":2,"256":1,"257":1,"258":1,"259":2,"270":2,"272":2,"273":3,"276":1,"281":2,"284":1,"288":1,"307":7,"323":2,"338":3,"347":1,"358":1,"368":1,"370":2,"371":1,"372":1,"375":1,"376":1,"378":1,"380":1,"383":2,"387":3,"390":1,"391":2,"392":2,"397":4,"408":2,"409":1,"410":2,"411":2,"412":2,"414":1,"421":1,"422":1,"423":2,"424":2,"427":2,"430":1,"432":1,"433":4,"437":1,"446":1,"447":1,"448":1,"454":1,"456":1,"458":1,"460":1,"474":1,"487":2,"488":1,"489":3,"492":2,"493":1,"503":5,"504":1,"507":1,"510":2,"511":1,"513":1,"517":1,"519":1,"523":2,"535":1,"538":3,"539":1,"559":7,"561":1,"565":1,"572":2,"591":3,"592":3,"593":1,"594":3,"595":1,"597":4,"598":3,"605":1,"607":1,"608":2,"611":9,"613":3,"614":1,"615":2,"616":3,"617":11,"620":1,"621":2,"622":2,"623":2,"624":2,"625":1,"627":4,"630":1,"641":3,"644":1,"645":2,"646":1,"658":1,"664":2,"666":2,"669":1,"670":3,"671":4,"673":2,"674":1,"678":3,"680":2,"681":1,"682":1,"683":3,"684":3,"686":1,"688":2,"695":1,"696":1,"698":4,"700":2,"701":1,"717":2,"718":1,"722":1,"723":1,"724":1,"726":1,"739":1,"743":1,"746":2,"747":1,"750":1,"751":2,"752":1,"753":1,"754":1,"756":1,"762":2,"763":1,"764":1,"765":3,"769":1,"794":1,"798":1,"799":1,"800":1,"802":1,"827":1,"828":1,"831":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"860":1,"885":1,"886":1,"887":1,"888":1,"890":1,"917":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"925":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"959":1,"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"993":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1027":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1061":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1095":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1129":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1163":1,"1192":2,"1195":4,"1197":1,"1198":4,"1200":6,"1201":7,"1203":1,"1205":1,"1206":1,"1210":1,"1212":1,"1213":1,"1214":1,"1216":1,"1243":2,"1244":1,"1245":3,"1264":2,"1265":1,"1266":2,"1281":2,"1282":1,"1283":1,"1284":2,"1285":1,"1291":1,"1294":2,"1297":2,"1298":1,"1300":1,"1308":1,"1309":1,"1310":2,"1312":2,"1314":3,"1317":2,"1319":4,"1320":1,"1321":1,"1322":1,"1324":2,"1326":1,"1327":1,"1328":1,"1329":2,"1330":1,"1339":1,"1344":1,"1345":2,"1346":1,"1351":2,"1356":1,"1361":2,"1362":3,"1365":1,"1367":1,"1369":1,"1385":2,"1387":1,"1389":1,"1393":1,"1400":1,"1403":1,"1404":1,"1406":3,"1407":2,"1410":2,"1414":2,"1416":3,"1417":2,"1418":1,"1419":4,"1420":2,"1421":3,"1425":1,"1433":1,"1434":1,"1436":1,"1437":2,"1442":1,"1443":2,"1445":1,"1457":3,"1458":5,"1459":2,"1460":1,"1461":4,"1462":1,"1464":9,"1465":6,"1466":7,"1467":2,"1474":4,"1479":5,"1482":3,"1484":6,"1485":3,"1486":4,"1487":1,"1491":1,"1492":1,"1494":2,"1495":1,"1496":1,"1497":3,"1512":1,"1514":1,"1515":3,"1516":5,"1517":1,"1518":1,"1520":1,"1521":1,"1527":1,"1536":1,"1538":2,"1539":1,"1540":1,"1545":1,"1550":2,"1572":1,"1573":1,"1583":2,"1584":1,"1585":2,"1586":1,"1588":3,"1595":1,"1596":2,"1597":1,"1599":2,"1600":1,"1601":1,"1606":1,"1607":1,"1611":1,"1612":1,"1613":1,"1616":4,"1617":2,"1619":1,"1621":4,"1622":3,"1634":1,"1649":2,"1650":3,"1651":1,"1655":3,"1656":1,"1657":2,"1659":4,"1660":1,"1661":4,"1662":2,"1664":1,"1666":1,"1670":1,"1677":1,"1678":2,"1679":2,"1692":1,"1693":1,"1695":1,"1707":1,"1732":1,"1733":2,"1734":1,"1735":1,"1736":2,"1757":2,"1759":1,"1760":3,"1762":2,"1763":1,"1773":1,"1778":1,"1780":1,"1782":2,"1784":2,"1785":1,"1787":1,"1788":2,"1789":13,"1790":1,"1823":2,"1828":1,"1830":2,"1835":1,"1839":1,"1840":3,"1843":1,"1844":3,"1845":3,"1913":1,"1915":1,"1916":1,"1917":1,"1924":1,"1925":1,"1926":1,"1927":1,"1928":1,"1929":2,"1930":1,"1931":1,"1932":4,"1933":4,"1937":1,"1939":1,"1942":4,"1946":2,"1947":3,"1954":1,"1958":1,"1960":1,"1961":1,"1962":1,"1963":1,"1967":1,"1972":1,"1973":2,"1974":1,"1975":1,"1976":2,"1977":1,"1980":1,"1983":1,"1991":1,"1994":1,"2010":1,"2030":1,"2033":1,"2034":1,"2035":1,"2036":1,"2039":1,"2041":1,"2046":1,"2048":1,"2049":1,"2050":5,"2051":1,"2059":1,"2060":3,"2063":2,"2064":1,"2066":2,"2068":3,"2157":2,"2161":1,"2163":1,"2170":1,"2171":2,"2172":6,"2174":2,"2175":2,"2176":1,"2181":2,"2184":1,"2185":1,"2186":1,"2187":1,"2199":1,"2201":2,"2202":1,"2203":3,"2208":1,"2212":1,"2213":2,"2219":1,"2220":1,"2222":1,"2224":1,"2249":2,"2251":1,"2252":2,"2261":1,"2262":1,"2264":1,"2265":4,"2266":1,"2267":2,"2268":1,"2269":1,"2271":1,"2277":5,"2285":3,"2286":3,"2287":2,"2288":1,"2289":1,"2290":5,"2291":7,"2293":1,"2294":1,"2295":2,"2298":1,"2301":1,"2302":4,"2303":1,"2305":4,"2310":6,"2311":4,"2312":5,"2313":1,"2315":2,"2317":2,"2319":1,"2320":1,"2321":2,"2322":6,"2323":5,"2324":4,"2369":1,"2371":1,"2374":1,"2375":2,"2376":1,"2377":1,"2379":1,"2381":1,"2382":1,"2383":2,"2384":2,"2386":1,"2388":1,"2390":1,"2391":1,"2393":1,"2395":1,"2397":1,"2398":13,"2399":2,"2408":3,"2410":1,"2411":17,"2412":4,"2414":1,"2416":3,"2418":3,"2420":3,"2421":4,"2422":2,"2423":2,"2425":5,"2426":3,"2427":3,"2440":1,"2441":2,"2444":2,"2446":4,"2447":1,"2448":1,"2449":1,"2451":1,"2452":3,"2453":3,"2454":4,"2456":1,"2457":7,"2463":1,"2465":1,"2466":1,"2468":1,"2471":1,"2472":1,"2487":1,"2490":1,"2495":1,"2499":2,"2501":1,"2506":1,"2548":2,"2555":1,"2558":1,"2560":1,"2565":1,"2566":1,"2572":7,"2573":2,"2575":5,"2576":4,"2577":6,"2578":5,"2580":3,"2581":2,"2583":4,"2584":1,"2585":5,"2587":4,"2588":5,"2589":2,"2590":4,"2591":3,"2592":2,"2594":1,"2595":1,"2596":1,"2598":1,"2599":4,"2600":1,"2601":2,"2602":2,"2603":2,"2604":1,"2605":10,"2606":2,"2607":4,"2609":6,"2610":4,"2611":1,"2612":1,"2613":1,"2615":1,"2619":2,"2621":4,"2622":2,"2623":2,"2625":3,"2626":3,"2627":5,"2628":5,"2629":3,"2630":14,"2631":4,"2632":8,"2633":10,"2634":3,"2643":2,"2645":2,"2651":2,"2652":2,"2656":1,"2658":1,"2671":2,"2673":1,"2675":1,"2676":5,"2677":2,"2678":2,"2679":2,"2680":2,"2685":1,"2687":1,"2691":1,"2694":2,"2700":1,"2701":1,"2702":3,"2703":1,"2705":1,"2707":10,"2708":3,"2709":1,"2710":2,"2711":2,"2712":1,"2719":8,"2721":3,"2722":2,"2723":10,"2724":2,"2725":3,"2744":3,"2745":1,"2746":1,"2747":1,"2749":11,"2750":6,"2751":1,"2752":1,"2754":1,"2756":1,"2757":3,"2788":3,"2789":1,"2791":1,"2800":1,"2804":1,"2808":1,"2812":1,"2820":1,"2823":1,"2825":2,"2842":2,"2843":1,"2844":3,"2877":2,"2878":1,"2879":2,"2881":1,"2882":3,"2883":3,"2884":2,"2885":1,"2887":3,"2888":1,"2892":1,"2898":1,"2899":2,"2901":1,"2903":3,"2905":10,"2912":2,"2913":2,"2914":3,"2915":1,"2916":1,"2918":1,"2919":1,"2921":5,"2923":3,"2924":2,"2929":2,"2932":1,"2935":1,"2936":1,"2937":1,"2938":2,"2942":1}}],["you",{"0":{"1761":1,"2468":1,"2473":1,"2843":1},"2":{"1":2,"7":2,"16":1,"23":3,"31":5,"34":2,"37":1,"43":1,"45":2,"49":2,"70":1,"82":1,"83":2,"89":1,"90":3,"107":2,"110":2,"112":2,"119":6,"120":2,"124":3,"137":3,"142":2,"143":3,"182":1,"190":1,"194":2,"206":2,"213":2,"217":3,"228":2,"232":3,"233":2,"240":7,"241":2,"245":1,"248":2,"253":2,"254":2,"255":2,"256":2,"259":2,"270":2,"272":2,"281":2,"307":4,"323":4,"347":1,"358":3,"361":1,"367":2,"368":2,"369":2,"371":3,"372":1,"373":1,"375":2,"376":1,"377":2,"378":1,"382":2,"383":2,"387":4,"388":2,"390":1,"392":2,"397":3,"408":1,"409":1,"410":3,"412":2,"414":1,"420":2,"421":2,"422":1,"423":2,"424":2,"427":8,"428":1,"429":1,"430":1,"431":1,"432":1,"433":2,"434":1,"435":2,"438":1,"440":1,"443":1,"445":1,"450":1,"451":1,"452":2,"453":2,"454":4,"456":2,"458":1,"461":1,"463":2,"467":2,"472":2,"474":1,"475":2,"480":1,"481":1,"486":4,"487":1,"488":1,"489":4,"490":1,"491":3,"492":4,"493":3,"494":2,"495":1,"496":1,"497":1,"498":1,"499":1,"502":1,"503":5,"504":3,"505":3,"506":1,"507":2,"508":2,"509":2,"510":6,"511":4,"512":2,"513":1,"514":3,"518":1,"519":1,"523":5,"524":1,"525":1,"526":1,"528":1,"531":4,"533":1,"535":2,"536":1,"538":3,"540":1,"542":2,"545":1,"557":3,"559":3,"560":2,"561":2,"562":8,"563":1,"565":1,"566":1,"567":4,"568":4,"570":1,"572":2,"574":2,"577":1,"578":3,"579":1,"589":1,"594":4,"595":1,"596":2,"597":4,"598":4,"599":1,"602":2,"603":1,"608":3,"609":2,"610":2,"611":13,"612":2,"613":6,"614":4,"615":2,"616":4,"617":13,"618":1,"619":3,"623":1,"624":3,"625":1,"627":3,"628":3,"630":1,"631":6,"632":2,"635":1,"638":1,"641":1,"642":2,"643":4,"644":2,"645":1,"658":1,"664":3,"666":4,"667":1,"668":2,"669":1,"670":4,"671":4,"673":1,"675":1,"678":3,"679":1,"680":2,"681":1,"682":3,"683":7,"684":6,"685":2,"686":1,"687":1,"690":1,"698":3,"700":4,"704":1,"714":2,"715":1,"716":2,"717":2,"718":2,"719":1,"722":3,"725":1,"732":1,"739":2,"746":3,"747":1,"751":1,"756":1,"760":3,"762":3,"763":2,"765":3,"798":3,"801":1,"810":1,"814":1,"818":1,"820":1,"827":3,"830":1,"838":1,"842":1,"846":1,"848":1,"853":3,"858":1,"859":1,"868":1,"872":1,"876":1,"878":1,"885":3,"889":1,"900":1,"904":1,"908":1,"910":1,"917":3,"923":1,"924":1,"935":1,"939":1,"943":1,"945":1,"952":3,"957":1,"958":1,"969":1,"973":1,"977":1,"979":1,"986":3,"991":1,"992":1,"1003":1,"1007":1,"1011":1,"1013":1,"1020":3,"1025":1,"1026":1,"1037":1,"1041":1,"1045":1,"1047":1,"1054":3,"1059":1,"1060":1,"1071":1,"1075":1,"1079":1,"1081":1,"1088":3,"1093":1,"1094":1,"1105":1,"1109":1,"1113":1,"1115":1,"1122":3,"1127":1,"1128":1,"1139":1,"1143":1,"1147":1,"1149":1,"1156":3,"1161":1,"1162":1,"1173":1,"1177":1,"1181":1,"1183":1,"1192":1,"1195":1,"1197":2,"1198":1,"1200":3,"1201":3,"1204":5,"1205":2,"1206":3,"1212":3,"1215":1,"1226":1,"1230":1,"1234":1,"1236":1,"1243":3,"1244":2,"1245":4,"1264":3,"1266":3,"1269":1,"1280":1,"1281":4,"1284":2,"1294":1,"1296":1,"1297":1,"1298":1,"1300":1,"1303":1,"1308":4,"1309":1,"1310":4,"1311":2,"1312":4,"1313":2,"1315":2,"1316":6,"1317":1,"1319":2,"1324":1,"1329":5,"1333":3,"1334":1,"1335":1,"1336":1,"1337":1,"1339":3,"1340":1,"1341":2,"1342":1,"1344":1,"1345":2,"1346":1,"1350":1,"1351":2,"1354":1,"1355":1,"1356":1,"1359":1,"1361":2,"1362":8,"1363":4,"1364":1,"1365":2,"1366":1,"1369":1,"1374":2,"1375":8,"1376":1,"1377":1,"1385":4,"1387":2,"1389":1,"1393":2,"1395":2,"1402":2,"1403":1,"1404":1,"1406":9,"1407":15,"1408":1,"1409":6,"1410":5,"1414":2,"1415":1,"1416":8,"1417":2,"1419":3,"1420":4,"1421":8,"1422":7,"1425":1,"1429":1,"1432":3,"1433":2,"1434":4,"1435":2,"1436":4,"1437":1,"1440":4,"1441":1,"1442":5,"1443":1,"1444":4,"1445":6,"1448":1,"1449":2,"1451":2,"1456":1,"1457":3,"1458":8,"1459":4,"1460":1,"1461":5,"1462":2,"1464":14,"1465":10,"1466":15,"1467":3,"1474":1,"1476":1,"1477":2,"1479":11,"1480":5,"1482":4,"1484":5,"1485":4,"1486":5,"1487":4,"1490":2,"1492":5,"1493":3,"1494":1,"1495":2,"1496":1,"1497":9,"1504":1,"1511":2,"1514":1,"1516":8,"1517":2,"1520":5,"1521":3,"1523":2,"1526":1,"1527":1,"1528":1,"1529":2,"1531":1,"1535":1,"1536":2,"1538":2,"1539":1,"1540":3,"1545":4,"1550":3,"1551":1,"1583":6,"1584":2,"1585":4,"1586":2,"1587":2,"1588":3,"1589":1,"1594":1,"1596":5,"1597":2,"1599":3,"1600":2,"1602":1,"1603":8,"1604":1,"1606":11,"1607":2,"1609":2,"1611":3,"1612":2,"1613":2,"1615":1,"1616":6,"1617":1,"1618":1,"1619":1,"1621":4,"1628":1,"1635":1,"1636":2,"1649":1,"1655":5,"1657":1,"1658":4,"1659":2,"1660":5,"1661":1,"1662":3,"1664":2,"1665":3,"1670":1,"1674":1,"1675":3,"1677":1,"1733":2,"1734":1,"1735":1,"1736":1,"1756":6,"1759":1,"1760":5,"1762":2,"1763":1,"1767":2,"1771":3,"1773":3,"1775":2,"1776":2,"1779":1,"1780":7,"1781":1,"1782":5,"1783":3,"1785":1,"1787":2,"1788":3,"1789":8,"1790":2,"1791":2,"1822":1,"1823":1,"1827":1,"1830":2,"1834":1,"1838":4,"1840":2,"1843":1,"1845":2,"1846":1,"1849":2,"1913":2,"1917":6,"1924":2,"1925":1,"1927":1,"1929":5,"1930":1,"1931":6,"1932":2,"1936":1,"1937":1,"1938":2,"1942":4,"1946":1,"1949":1,"1950":1,"1954":2,"1955":1,"1956":1,"1958":3,"1959":2,"1962":2,"1964":1,"1968":2,"1976":3,"1977":1,"1978":1,"1980":1,"1983":2,"1986":1,"1987":2,"1991":2,"2004":1,"2030":1,"2033":1,"2034":1,"2036":2,"2037":1,"2039":1,"2040":1,"2041":6,"2042":1,"2043":2,"2047":2,"2050":6,"2051":2,"2058":4,"2060":2,"2063":1,"2064":1,"2066":1,"2068":2,"2069":1,"2072":2,"2074":4,"2075":2,"2161":1,"2167":1,"2171":1,"2172":6,"2174":1,"2176":2,"2177":2,"2180":1,"2181":2,"2182":3,"2184":3,"2185":1,"2186":1,"2187":3,"2199":3,"2200":4,"2201":2,"2202":2,"2203":2,"2204":3,"2212":1,"2213":1,"2214":2,"2222":2,"2248":3,"2252":3,"2253":5,"2256":1,"2257":4,"2258":3,"2260":1,"2261":2,"2264":2,"2265":4,"2266":5,"2267":1,"2268":7,"2271":7,"2273":7,"2274":1,"2277":1,"2279":1,"2280":1,"2283":1,"2285":3,"2286":4,"2287":3,"2290":4,"2291":8,"2293":5,"2294":1,"2295":1,"2298":1,"2302":11,"2303":4,"2310":11,"2311":3,"2312":1,"2315":3,"2321":2,"2322":4,"2323":4,"2324":3,"2368":1,"2372":2,"2374":5,"2375":1,"2379":2,"2381":1,"2384":1,"2386":1,"2387":2,"2388":1,"2390":1,"2391":1,"2398":16,"2399":5,"2401":7,"2404":3,"2407":2,"2409":4,"2410":10,"2411":17,"2412":3,"2414":1,"2415":2,"2416":5,"2418":1,"2419":1,"2420":4,"2421":5,"2422":12,"2423":3,"2424":8,"2425":5,"2427":9,"2428":6,"2434":2,"2440":2,"2441":1,"2443":3,"2446":5,"2447":4,"2453":5,"2454":3,"2457":8,"2458":4,"2459":2,"2461":1,"2464":1,"2465":1,"2466":3,"2467":1,"2468":1,"2469":1,"2472":2,"2473":6,"2474":1,"2475":3,"2476":4,"2477":1,"2481":1,"2483":2,"2489":1,"2490":3,"2494":1,"2495":6,"2496":6,"2497":2,"2499":4,"2501":5,"2502":1,"2546":1,"2548":2,"2549":1,"2550":1,"2551":3,"2553":3,"2554":6,"2555":5,"2557":3,"2558":2,"2560":5,"2565":4,"2566":3,"2572":6,"2573":4,"2574":2,"2575":3,"2576":5,"2577":7,"2578":5,"2579":6,"2580":6,"2582":1,"2583":6,"2584":4,"2585":3,"2586":2,"2587":5,"2588":4,"2589":3,"2590":3,"2592":4,"2593":2,"2594":1,"2595":1,"2596":1,"2599":1,"2601":2,"2603":1,"2604":2,"2605":7,"2606":1,"2607":4,"2608":1,"2609":8,"2610":4,"2611":3,"2612":8,"2613":2,"2614":3,"2615":1,"2617":1,"2619":1,"2620":1,"2621":9,"2622":6,"2623":1,"2625":3,"2626":3,"2627":4,"2628":5,"2629":3,"2630":6,"2631":1,"2632":4,"2633":12,"2643":6,"2644":5,"2645":8,"2648":2,"2649":3,"2650":1,"2651":6,"2652":3,"2653":1,"2655":1,"2667":3,"2669":1,"2671":5,"2673":4,"2674":1,"2675":1,"2676":8,"2678":1,"2679":1,"2683":1,"2684":3,"2687":1,"2691":1,"2694":3,"2701":1,"2702":1,"2707":4,"2708":2,"2709":1,"2710":5,"2711":1,"2712":1,"2713":2,"2714":1,"2716":1,"2718":1,"2719":5,"2721":2,"2722":1,"2723":4,"2725":2,"2744":2,"2746":1,"2747":1,"2749":3,"2750":10,"2751":1,"2756":1,"2757":1,"2782":1,"2783":2,"2784":1,"2786":6,"2787":3,"2788":11,"2789":3,"2791":3,"2792":2,"2812":1,"2818":1,"2820":1,"2822":1,"2825":1,"2827":1,"2834":1,"2835":1,"2836":2,"2844":2,"2862":2,"2877":1,"2879":6,"2880":1,"2881":1,"2882":8,"2883":9,"2884":3,"2885":5,"2886":2,"2887":4,"2888":1,"2890":1,"2892":1,"2898":3,"2899":4,"2900":2,"2901":1,"2902":1,"2903":5,"2904":2,"2905":30,"2912":7,"2913":4,"2914":2,"2917":1,"2919":3,"2920":1,"2921":7,"2923":1,"2924":2,"2926":2,"2927":3,"2928":1,"2929":1,"2930":2,"2934":4,"2936":6,"2937":5,"2938":1,"2939":2,"2940":3,"2942":17}}],["yiancar",{"2":{"160":1}}],["yiancardesigns",{"2":{"154":3,"160":1}}],["yd68",{"2":{"154":2}}],["yd60mq",{"2":{"154":2,"160":1}}],["ydkb",{"2":{"154":3,"160":1,"222":2}}],["yapf",{"0":{"513":1},"2":{"499":1,"502":3,"513":1,"525":3}}],["yarn",{"2":{"458":1,"459":1}}],["yakiimo",{"2":{"222":1}}],["yandrstudio",{"2":{"199":1}}],["yangdigi",{"2":{"160":1}}],["yanghu",{"2":{"134":1}}],["yasui",{"2":{"154":2}}],["yaml",{"2":{"114":1}}],["yellow",{"2":{"387":1,"490":1,"492":1,"2067":2,"2073":1,"2198":2,"2605":1}}],["yet",{"2":{"139":1,"160":1,"220":1,"236":1,"553":1,"580":1,"594":1,"595":1,"631":1,"711":1,"1311":1,"1828":1,"2203":1,"2293":2,"2367":1,"2370":12,"2411":1,"2474":1,"2509":12,"2596":1,"2621":1,"2652":1,"2679":1,"2680":1,"2687":1,"2707":1,"2710":1,"2715":1,"2760":1,"2770":1,"2907":1,"2940":1}}],["yes",{"2":{"10":1,"28":1,"49":1,"74":1,"87":1,"88":3,"103":4,"104":3,"118":1,"119":1,"126":3,"127":3,"213":1,"232":1,"234":7,"235":1,"266":1,"348":1,"565":1,"573":1,"590":1,"623":1,"653":1,"688":1,"700":1,"722":1,"739":1,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1319":1,"1327":1,"1366":1,"1440":1,"1458":1,"1465":2,"1466":2,"1467":1,"1493":1,"1494":1,"1520":1,"1536":1,"1572":1,"1583":1,"1588":1,"1596":1,"1617":1,"1634":1,"1649":1,"1650":1,"1655":1,"1659":1,"1661":1,"1662":1,"1672":1,"1692":1,"1733":1,"1757":1,"1762":1,"1784":1,"1823":1,"1844":2,"1913":1,"1926":1,"1937":1,"1942":1,"1946":1,"1958":1,"2010":1,"2033":2,"2034":2,"2035":2,"2036":2,"2048":1,"2066":2,"2157":1,"2172":2,"2184":2,"2203":2,"2208":1,"2213":1,"2219":1,"2248":1,"2261":1,"2277":1,"2286":2,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2295":1,"2296":1,"2302":1,"2305":1,"2313":1,"2319":1,"2322":2,"2323":1,"2369":1,"2371":1,"2411":1,"2412":1,"2448":2,"2676":1,"2721":1,"2746":1,"2749":11,"2752":2,"2882":2,"2905":1,"2941":1}}],["year>",{"2":{"1461":1}}],["years",{"2":{"6":1,"10":1,"201":1,"2457":1}}],["year",{"2":{"0":2,"9":2,"19":2,"39":2,"52":2,"173":1,"1461":1,"2457":3}}],["r=4",{"2":{"2750":1}}],["rbt",{"2":{"2504":1,"2745":1,"2789":1}}],["rbrc",{"2":{"369":1,"587":2,"2159":1,"2503":1,"2537":1,"2556":1}}],["rr",{"2":{"2294":3}}],["rle",{"0":{"2765":1},"2":{"2748":4,"2758":1,"2765":1,"2766":1,"2770":1}}],["rl",{"2":{"2294":3}}],["rj",{"2":{"2258":2}}],["rz",{"2":{"1734":1}}],["ry",{"2":{"1734":1,"2862":1}}],["ryanbaekr",{"2":{"210":1}}],["r09",{"2":{"1584":2}}],["r08",{"2":{"1584":2}}],["r07",{"2":{"1584":2}}],["r06",{"2":{"1584":2}}],["r05",{"2":{"1584":4}}],["r04",{"2":{"1584":2}}],["r03",{"2":{"1584":2}}],["r02",{"2":{"1584":2}}],["r01",{"2":{"1584":2}}],["r|64",{"2":{"1532":1}}],["rw",{"2":{"1693":2}}],["rwin",{"2":{"1374":1,"1442":1,"2503":1,"2522":1,"2523":1,"2539":1,"2565":1}}],["rwx",{"2":{"236":3}}],["rnrm",{"2":{"2519":2,"2548":2}}],["rn",{"0":{"1356":1},"2":{"1356":1,"2367":5}}],["rn42",{"2":{"134":1,"160":1,"191":1,"209":2,"222":1,"572":1,"2367":1,"2369":1,"2852":1}}],["rts",{"2":{"1263":1,"1265":1,"1266":4}}],["rtc",{"2":{"236":1}}],["rgui",{"2":{"587":2,"1347":1,"1374":1,"1375":1,"1442":1,"1773":5,"2503":1,"2519":4,"2522":1,"2523":1,"2528":1,"2539":1,"2548":4,"2554":1,"2565":2,"2644":1}}],["rght",{"2":{"369":1,"587":2,"1927":1,"2159":2,"2503":1,"2519":1,"2521":1,"2541":1,"2548":1,"2556":1,"2911":4,"2912":3,"2913":2}}],["rgbtest",{"2":{"2174":1,"2525":1}}],["rgb|led",{"2":{"317":1}}],["rgb888",{"2":{"199":1,"328":1,"2748":2,"2749":4}}],["rgbmatrix",{"2":{"191":1}}],["rgb565",{"2":{"191":1,"199":1,"2748":3,"2749":11,"2750":1}}],["rgb+via",{"2":{"176":1}}],["rgb64",{"2":{"154":2}}],["rgbw",{"0":{"1285":1},"2":{"112":1,"134":1,"266":2,"563":2,"1282":2,"1285":2,"2876":2}}],["rgbkb",{"2":{"93":1,"114":2,"160":1,"176":2,"191":1,"222":1,"266":1,"294":2,"328":1}}],["rgblight=true",{"2":{"431":1}}],["rgblight",{"0":{"2870":1},"2":{"49":3,"65":1,"70":3,"74":2,"75":1,"111":6,"112":5,"113":1,"114":6,"145":2,"176":2,"191":10,"199":2,"209":3,"210":6,"222":3,"236":5,"249":4,"266":6,"277":1,"283":3,"285":2,"308":2,"348":6,"460":2,"563":10,"572":1,"639":4,"645":11,"666":1,"668":2,"700":1,"1281":1,"1282":1,"1407":16,"1424":5,"1458":2,"2058":2,"2172":2,"2175":14,"2176":14,"2177":12,"2178":12,"2179":6,"2181":1,"2182":18,"2183":4,"2184":16,"2185":1,"2186":2,"2187":1,"2188":2,"2190":1,"2191":16,"2192":7,"2193":6,"2194":14,"2195":6,"2196":2,"2197":6,"2198":3,"2199":4,"2200":6,"2271":2,"2447":9,"2448":3,"2847":1,"2870":3,"2887":11}}],["rgbleds",{"2":{"191":1}}],["rgbled",{"2":{"45":2,"70":1,"191":1,"210":2,"249":2,"563":2,"568":1,"2172":1,"2180":7,"2271":1,"2448":6}}],["rgb",{"0":{"25":1,"45":1,"80":1,"124":1,"202":1,"233":1,"283":1,"316":1,"327":1,"460":1,"563":1,"1630":1,"2058":1,"2063":1,"2064":1,"2065":1,"2066":1,"2075":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2085":1,"2087":1,"2089":1,"2091":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2123":1,"2125":1,"2127":1,"2129":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2137":1,"2139":1,"2141":1,"2143":1,"2144":1,"2146":1,"2148":1,"2150":1,"2153":1,"2171":1,"2185":1,"2525":1,"2526":1,"2871":1,"2887":1},"1":{"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":2,"2065":2,"2066":1,"2067":1,"2068":1,"2069":1,"2070":1,"2071":1,"2072":1,"2073":1,"2074":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":2,"2085":1,"2086":2,"2087":1,"2088":2,"2089":1,"2090":2,"2091":1,"2092":2,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":2,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":2,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":2,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":2,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":2,"2123":1,"2124":2,"2125":1,"2126":2,"2127":1,"2128":2,"2129":1,"2130":2,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":2,"2137":1,"2138":1,"2139":1,"2140":2,"2141":1,"2142":2,"2143":1,"2144":1,"2145":2,"2146":1,"2147":2,"2148":1,"2149":2,"2150":1,"2151":1,"2152":1,"2153":1,"2154":1,"2155":1,"2172":1,"2173":1,"2174":1,"2175":1,"2176":1,"2177":1,"2178":1,"2179":1,"2180":1,"2181":1,"2182":1,"2183":1,"2184":1,"2185":1,"2186":1,"2187":1,"2188":1,"2189":1,"2190":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1,"2198":1,"2199":1,"2200":1,"2201":1,"2202":1,"2203":1,"2204":1},"2":{"25":7,"32":3,"45":2,"49":4,"63":1,"65":3,"70":1,"73":1,"80":1,"93":5,"94":1,"112":1,"114":27,"124":3,"133":1,"134":9,"138":2,"145":1,"154":4,"160":6,"176":3,"183":14,"185":7,"191":15,"199":2,"202":2,"209":3,"210":11,"212":1,"222":7,"229":1,"231":3,"233":1,"236":13,"238":1,"244":1,"249":31,"266":8,"277":9,"283":7,"285":11,"298":1,"308":8,"316":3,"317":4,"328":5,"431":2,"460":2,"563":5,"568":1,"631":1,"639":2,"645":20,"646":1,"649":1,"650":5,"651":5,"699":1,"700":1,"721":1,"722":1,"728":1,"797":1,"798":2,"804":1,"805":3,"810":1,"812":1,"818":1,"826":1,"827":2,"833":1,"834":3,"838":1,"840":1,"846":1,"852":1,"853":2,"862":1,"863":3,"868":1,"870":1,"876":1,"884":1,"885":2,"892":1,"893":3,"900":1,"902":1,"908":1,"916":1,"917":2,"927":1,"928":3,"935":1,"937":1,"943":1,"951":1,"952":2,"961":1,"962":3,"969":1,"971":1,"977":1,"985":1,"986":2,"995":1,"996":3,"1003":1,"1005":1,"1011":1,"1019":1,"1020":2,"1029":1,"1030":3,"1037":1,"1039":1,"1045":1,"1053":1,"1054":2,"1063":1,"1064":3,"1071":1,"1073":1,"1079":1,"1087":1,"1088":2,"1097":1,"1098":3,"1105":1,"1107":1,"1113":1,"1121":1,"1122":2,"1131":1,"1132":3,"1139":1,"1141":1,"1147":1,"1155":1,"1156":2,"1165":1,"1166":3,"1173":1,"1175":1,"1181":1,"1211":1,"1212":2,"1218":1,"1219":3,"1226":1,"1228":1,"1234":1,"1280":1,"1281":1,"1282":2,"1283":1,"1284":1,"1285":3,"1389":1,"1390":1,"1406":1,"1407":25,"1424":1,"1457":2,"1458":8,"1459":1,"1535":2,"1611":1,"1630":5,"1632":6,"1662":4,"1838":2,"1847":1,"1938":8,"1974":1,"2058":1,"2059":2,"2060":1,"2062":18,"2063":152,"2064":7,"2065":2,"2066":21,"2067":22,"2068":5,"2069":29,"2072":8,"2073":11,"2074":15,"2075":6,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":1,"2086":1,"2144":1,"2145":1,"2171":3,"2172":3,"2173":1,"2174":25,"2175":3,"2176":2,"2177":2,"2181":3,"2182":2,"2184":2,"2185":3,"2187":1,"2191":5,"2192":10,"2198":24,"2201":1,"2203":6,"2269":1,"2271":2,"2274":2,"2428":2,"2436":1,"2437":2,"2438":2,"2525":22,"2526":19,"2721":5,"2722":2,"2746":8,"2748":2,"2750":5,"2791":1,"2845":1,"2847":1,"2848":1,"2870":2,"2871":3,"2883":1,"2887":51,"2900":2,"2933":1}}],["rq",{"0":{"583":1},"2":{"359":2,"360":2,"583":2}}],["rk61",{"2":{"328":1}}],["rms",{"2":{"1679":1}}],["rm24c512c",{"2":{"746":2}}],["rm",{"2":{"283":1,"2062":15,"2065":2,"2526":15,"2627":1}}],["rmi",{"2":{"197":13,"199":1}}],["rswp",{"2":{"2519":2,"2548":2}}],["rspc",{"2":{"2249":1,"2250":1,"2252":5,"2253":3,"2531":1}}],["rsi",{"2":{"1491":1}}],["rstp",{"2":{"1655":2,"1657":2,"2511":1}}],["rst",{"2":{"1487":1,"1489":1,"1674":1,"1675":1,"1681":2,"1953":3,"2281":1,"2368":1,"2376":1,"2379":1,"2381":1,"2382":1,"2384":1,"2424":1,"2484":1,"2486":1,"2488":1,"2505":1,"2746":11,"2749":4}}],["rsg",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rsag",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rsa",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rs232",{"2":{"1189":1}}],["rs485",{"2":{"1189":1}}],["rs40",{"2":{"222":1}}],["rsft",{"2":{"328":1,"369":1,"587":2,"1374":1,"1442":1,"1527":4,"1588":1,"1591":1,"2252":9,"2253":1,"2374":1,"2503":1,"2522":1,"2523":1,"2528":1,"2539":1,"2554":1,"2556":1,"2565":2,"2644":1,"2904":1,"2923":1}}],["rs",{"2":{"249":1,"1693":2}}],["rshift",{"2":{"222":1,"260":1,"1375":1}}],["r17",{"2":{"1584":2}}],["r16",{"2":{"1584":2}}],["r15",{"2":{"1584":2}}],["r14",{"2":{"1584":2}}],["r13",{"2":{"1584":2}}],["r12",{"2":{"1584":2}}],["r11",{"2":{"1584":2}}],["r10",{"2":{"1584":2}}],["r1",{"2":{"222":1,"300":1,"741":1,"2851":1}}],["r2",{"2":{"218":1,"222":2,"277":1,"741":1,"2851":1}}],["rxc1",{"2":{"2036":1}}],["rxcie1",{"2":{"2036":1}}],["rxen1",{"2":{"2036":3}}],["rxled",{"2":{"1389":2,"1393":2}}],["rx",{"0":{"779":2},"1":{"780":2,"781":2},"2":{"191":1,"780":2,"1195":1,"1197":8,"1198":5,"1202":1,"1208":11,"1209":9,"1210":8,"1265":2,"1266":4,"1734":1,"2036":6,"2684":2,"2702":2,"2704":2,"2862":1}}],["rp2",{"2":{"2605":1}}],["rp2040",{"0":{"163":1,"271":1,"693":1,"753":1,"1391":1,"1394":1,"1398":1,"2037":1,"2397":1,"2692":1,"2701":1,"2702":1,"2703":1,"2705":1,"2706":1},"1":{"2693":1,"2694":1,"2695":1,"2696":1,"2697":1,"2698":1,"2699":1,"2700":1,"2701":1,"2702":2,"2703":2,"2704":1,"2705":1,"2706":1},"2":{"163":5,"174":1,"176":11,"191":9,"199":5,"222":3,"236":3,"266":1,"271":6,"277":1,"294":1,"308":1,"311":1,"317":1,"322":1,"328":1,"550":3,"693":2,"720":1,"750":2,"753":3,"1194":1,"1195":2,"1198":2,"1202":2,"1289":1,"1386":2,"1388":4,"1390":1,"1395":2,"1396":3,"1398":1,"2037":1,"2266":1,"2397":4,"2582":1,"2606":1,"2692":1,"2693":1,"2694":3,"2695":2,"2696":1,"2697":1,"2698":1,"2699":1,"2700":5,"2701":1,"2702":3,"2703":3,"2704":1,"2705":6,"2706":1,"2857":1,"2888":1}}],["rprn",{"2":{"2527":1,"2547":1}}],["rpi",{"2":{"2397":1}}],["rpt",{"2":{"1515":1,"1516":2,"1517":1,"2506":1}}],["rp",{"2":{"1402":2,"2697":2,"2698":2,"2699":2,"2703":1}}],["rpc",{"2":{"176":2,"2270":7}}],["rdesc",{"2":{"134":1}}],["rocky",{"2":{"2619":1}}],["rocketboard",{"2":{"160":1}}],["road",{"2":{"2456":1}}],["roadmap",{"2":{"88":1,"104":1}}],["roastpotatoes",{"2":{"2416":1,"2429":1}}],["rosin",{"2":{"2414":1,"2421":2}}],["rosaline",{"2":{"222":1}}],["roving",{"2":{"2367":1}}],["rofl",{"2":{"2323":3}}],["robot",{"2":{"763":1}}],["robustness",{"2":{"222":1}}],["robust",{"2":{"76":1}}],["ro",{"2":{"429":1}}],["rooms",{"2":{"2465":1}}],["room",{"2":{"1840":1,"1956":1,"2060":1,"2283":1,"2438":1}}],["root",{"2":{"335":1,"511":1,"570":1,"613":1,"1329":1,"1373":1,"1419":1,"1532":3,"1533":1,"1844":1,"2066":1,"2410":3,"2588":1,"2589":1,"2607":1,"2676":1,"2937":1}}],["rookiebwoy",{"2":{"241":2,"249":2,"300":2,"308":1}}],["royal",{"2":{"328":1,"2560":1}}],["rot",{"2":{"308":1,"2895":1}}],["rotary",{"2":{"236":1,"687":1,"1308":1,"2858":1,"2873":1}}],["rotates",{"2":{"1955":1,"1978":3,"1980":3}}],["rotate",{"0":{"2044":1},"2":{"1955":1,"2044":4}}],["rotated",{"2":{"31":1,"34":1,"1413":1,"1955":2,"1976":1}}],["rotating",{"2":{"1664":3,"1678":1,"1956":1,"2283":1}}],["rotations",{"2":{"1981":1,"1982":1,"2757":1,"2862":1}}],["rotational",{"2":{"160":1,"1976":2}}],["rotation",{"0":{"1955":1,"1966":1},"2":{"31":5,"34":5,"199":1,"307":2,"332":7,"1662":2,"1950":5,"1955":10,"1956":19,"1966":6,"1978":3,"1980":4,"2044":1,"2280":5,"2283":12,"2749":1,"2750":13,"2754":1,"2778":1,"2862":3}}],["rogue87",{"2":{"222":1}}],["ropt",{"2":{"176":1,"1374":1,"1442":1,"2503":1,"2522":1,"2523":1,"2539":1,"2565":1}}],["rollover",{"0":{"2826":1,"2832":1},"2":{"572":1,"1619":1,"2286":1,"2369":1,"2519":3,"2548":3}}],["rolls",{"2":{"308":1,"2906":1}}],["roll",{"2":{"294":1,"403":1,"1791":2,"2156":1}}],["rolled",{"2":{"289":1,"2918":1}}],["rollback",{"2":{"191":1}}],["rolling",{"0":{"2910":1},"2":{"134":1,"2371":1,"2912":3}}],["roles",{"2":{"2302":1,"2873":1}}],["role",{"2":{"114":1,"160":1,"194":1,"562":3,"2572":1,"2729":1,"2905":2,"2906":8,"2912":8,"2913":5,"2914":1}}],["roughly",{"2":{"1933":1}}],["rouge87",{"2":{"222":1}}],["routing",{"2":{"713":1,"2424":1}}],["routine",{"2":{"49":1,"572":2,"620":1,"622":1,"623":5,"1421":1,"1675":1,"2411":2,"2644":1}}],["routines",{"2":{"49":1,"125":1,"185":1,"565":1,"2680":1}}],["route",{"0":{"362":1,"363":1,"364":1,"365":1},"2":{"2422":1}}],["rounded",{"2":{"1249":1,"1289":1}}],["round",{"2":{"133":1,"134":1,"397":1,"594":1,"1472":1}}],["row1",{"2":{"2459":11}}],["row0",{"2":{"2459":12}}],["row2col",{"2":{"111":1,"559":1,"620":1,"637":3,"2712":2,"2865":1}}],["row",{"2":{"92":2,"114":1,"199":1,"210":1,"255":3,"289":1,"333":2,"559":1,"568":5,"622":1,"623":4,"630":1,"637":13,"1326":8,"1397":1,"1398":1,"1405":1,"1410":4,"1413":8,"1484":3,"1486":1,"1583":2,"1584":2,"1585":2,"1607":1,"1619":1,"1649":1,"1654":1,"1665":1,"1714":2,"1716":2,"1789":2,"1840":3,"1843":4,"2060":3,"2063":4,"2073":4,"2262":1,"2265":1,"2271":2,"2296":5,"2377":1,"2384":1,"2416":1,"2421":2,"2422":2,"2424":4,"2427":1,"2459":8,"2550":1,"2662":2,"2713":3,"2714":1,"2721":1,"2748":2,"2775":1,"2778":1,"2862":1,"2865":2,"2869":1,"2905":1,"2915":1,"2918":1,"2919":1,"2924":5,"2929":1}}],["rows",{"2":{"63":1,"111":1,"114":1,"222":2,"317":2,"328":1,"559":6,"587":1,"637":1,"1413":1,"1414":2,"1440":2,"1484":1,"1486":1,"1840":2,"1918":1,"1956":2,"2060":2,"2073":1,"2262":3,"2265":1,"2271":2,"2296":1,"2305":1,"2416":3,"2418":1,"2424":1,"2459":5,"2550":1,"2555":3,"2578":1,"2711":1,"2712":3,"2713":1,"2721":1,"2775":1,"2821":1,"2865":3,"2919":4,"2931":1}}],["romanian",{"2":{"2880":3}}],["rominronin",{"2":{"438":1,"2441":1}}],["roms",{"2":{"273":1}}],["rom",{"0":{"276":1,"284":1},"2":{"49":1,"273":1,"1707":1,"2475":1,"2498":1,"2942":1}}],["rcpc",{"2":{"2249":1,"2250":1,"2252":1,"2531":1}}],["rcbr",{"2":{"2159":1,"2527":1,"2547":1}}],["rctrl",{"2":{"1375":1}}],["rctl",{"2":{"328":1,"369":1,"587":2,"1347":1,"1374":1,"1442":1,"2252":2,"2374":1,"2503":1,"2519":2,"2522":1,"2523":1,"2528":1,"2539":1,"2548":2,"2556":1,"2565":2,"2644":1,"2917":1,"2920":1}}],["rcg",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rcsg",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rcs",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rcag",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rca",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rcmd",{"2":{"1374":1,"1442":1,"2503":1,"2522":1,"2523":1,"2539":1,"2565":1}}],["rc",{"2":{"49":3,"1409":1,"2678":1}}],["radius",{"2":{"2750":1}}],["radio",{"2":{"2729":1}}],["rabk",{"2":{"2527":1,"2547":1}}],["rabbit",{"2":{"154":2}}],["rapc",{"2":{"2249":1,"2250":1,"2252":1,"2531":1}}],["rapidly",{"2":{"1487":1,"1535":1,"2301":1}}],["rag",{"2":{"1374":1,"2522":1,"2523":1,"2528":1,"2565":1,"2644":1}}],["rarely",{"2":{"2324":1}}],["rare",{"2":{"393":1,"641":1,"2561":1}}],["rart",{"2":{"222":1}}],["rartlice",{"2":{"222":1}}],["rartand",{"2":{"222":1}}],["rart80",{"2":{"222":2}}],["rart75m",{"2":{"222":1}}],["rart75",{"2":{"222":2}}],["rart67m",{"2":{"222":1}}],["rart67",{"2":{"222":1}}],["rart60",{"2":{"222":1}}],["rart45",{"2":{"222":1}}],["ralt|mod",{"2":{"1417":1}}],["ralt",{"2":{"369":1,"587":2,"1374":1,"1375":1,"1442":1,"1773":5,"1782":1,"2165":1,"2252":2,"2503":1,"2519":2,"2522":1,"2523":1,"2528":1,"2539":1,"2548":2,"2554":1,"2556":1,"2565":2,"2644":1,"2904":1,"2921":1}}],["rastersoft",{"2":{"210":1}}],["raspberry",{"0":{"163":1,"550":1,"2397":1,"2692":1},"1":{"2693":1,"2694":1,"2695":1,"2696":1,"2697":1,"2698":1,"2699":1,"2700":1,"2701":1,"2702":1,"2703":1,"2704":1,"2705":1,"2706":1},"2":{"163":1,"176":1,"1195":1,"1198":1,"1202":1,"2037":1,"2694":1,"2695":1}}],["rand",{"2":{"1949":1,"2279":1}}],["randomly",{"2":{"2063":4}}],["randomness",{"2":{"1487":3}}],["random",{"0":{"2245":1,"2792":1},"2":{"263":1,"605":1,"1409":1,"1675":2,"1949":2,"2063":5,"2279":2,"2750":1,"2792":3}}],["random8",{"2":{"199":2}}],["ran",{"2":{"638":1}}],["ranges",{"0":{"231":1},"2":{"191":1,"199":2,"231":2,"236":1,"373":1,"1527":1,"1948":1,"1962":1,"2180":1,"2182":1,"2278":1}}],["range",{"0":{"1641":1,"1642":1,"2190":1,"2200":1},"2":{"160":1,"176":2,"191":1,"199":3,"231":22,"285":3,"294":1,"591":1,"614":1,"627":4,"1425":2,"1440":4,"1456":1,"1466":5,"1577":1,"1580":1,"1582":1,"1636":3,"1639":2,"1641":1,"1642":1,"1679":1,"1735":1,"1736":1,"1840":3,"1918":1,"1942":1,"1960":1,"1961":1,"1962":2,"1972":1,"1973":1,"1975":1,"1976":2,"1986":1,"1987":1,"1996":1,"2006":1,"2060":3,"2162":1,"2170":1,"2178":2,"2188":3,"2190":2,"2191":5,"2193":6,"2194":14,"2198":1,"2200":5,"2218":1,"2221":1,"2253":1,"2534":1,"2544":1,"2744":1,"2747":1,"2750":3,"2799":1,"2877":1,"2905":1}}],["raison",{"2":{"616":1}}],["raises",{"2":{"519":1,"522":1,"1929":1}}],["raised",{"2":{"397":1,"399":1,"406":2,"1931":2,"2560":1,"2722":2}}],["raise",{"2":{"198":1,"265":1,"522":1,"717":1,"1407":1,"1416":1,"1424":1,"1485":1,"1515":1,"1989":2,"2506":1,"2785":7,"2787":3}}],["rainbow",{"2":{"348":1,"2063":9,"2174":2,"2176":4,"2177":4,"2178":2,"2179":1,"2180":4,"2202":1,"2203":2,"2525":2,"2750":3,"2870":1,"2887":5}}],["raindrop",{"2":{"241":2}}],["raindrops",{"2":{"114":1,"210":1,"285":1,"294":1,"328":1,"2063":6,"2887":2}}],["rainkeeb",{"2":{"154":2}}],["rainkeebs",{"2":{"154":3,"160":2}}],["rain",{"2":{"134":1,"145":1,"199":1,"210":2,"285":1,"328":1,"2063":6,"2887":2}}],["rampdown",{"2":{"1680":24}}],["rampup",{"2":{"1680":24}}],["ramlord",{"2":{"222":1}}],["rama",{"2":{"199":1,"222":4}}],["ram",{"2":{"176":1,"191":1,"236":1,"716":1,"717":1,"743":1,"750":2,"1410":1,"1655":1,"1696":1,"2047":1,"2678":2,"2679":1,"2682":1,"2689":1,"2747":5,"2749":2,"2894":1}}],["ramonimbao",{"2":{"102":3,"197":13,"199":1}}],["ratio",{"2":{"1535":1,"1951":1}}],["ratio65",{"2":{"222":2}}],["rationale",{"2":{"49":1}}],["rated",{"2":{"1678":1,"1679":1}}],["rates",{"2":{"699":1}}],["rate",{"0":{"148":1},"2":{"65":1,"114":1,"148":1,"154":3,"160":4,"210":1,"236":1,"285":1,"559":2,"698":2,"716":4,"1269":1,"1328":1,"1410":1,"1413":1,"1478":4,"1929":1,"1933":1,"1951":1,"1968":1,"1979":1,"2039":3,"2204":1,"2281":1,"2291":1,"2371":1,"2757":3,"2929":1}}],["rather",{"2":{"49":1,"50":1,"124":1,"212":1,"230":1,"234":1,"323":1,"472":1,"510":1,"525":1,"533":1,"559":1,"562":1,"614":1,"617":1,"627":1,"628":1,"653":1,"1189":1,"1294":1,"1327":1,"1406":1,"1449":1,"1474":1,"1788":1,"1790":1,"2002":1,"2173":1,"2387":2,"2389":1,"2434":1,"2559":1,"2615":1,"2627":1,"2644":1,"2690":1,"2719":1,"2721":2,"2750":1,"2789":1,"2827":1,"2904":1,"2912":1,"2914":1}}],["raw",{"0":{"2047":1,"2054":1,"2056":1},"1":{"2048":1,"2049":1,"2050":1,"2051":1,"2052":1,"2053":1,"2054":1,"2055":2,"2056":1,"2057":2},"2":{"17":1,"50":1,"62":1,"114":1,"145":1,"191":1,"210":1,"266":1,"308":1,"461":1,"573":1,"623":1,"667":1,"669":1,"1407":7,"1414":1,"1949":3,"1956":6,"1981":1,"1982":1,"2045":1,"2047":1,"2049":5,"2050":2,"2051":2,"2052":8,"2054":1,"2279":3,"2283":4,"2683":2,"2684":1,"2748":4,"2750":3,"2776":3,"2862":1}}],["ribbon",{"2":{"2424":1}}],["river",{"2":{"2063":1}}],["riverflow",{"2":{"277":1,"285":1,"2063":3}}],["riccks",{"2":{"2560":1}}],["rick",{"2":{"1791":2}}],["richly",{"2":{"2720":1}}],["rich",{"2":{"114":1,"248":1}}],["rigid",{"2":{"2418":1}}],["rigor",{"2":{"613":1}}],["right=11",{"2":{"2750":1}}],["righthand",{"2":{"566":1,"567":1}}],["rightmost",{"2":{"55":1,"317":1,"1635":1,"1714":1,"1716":1}}],["righty",{"2":{"43":2}}],["right",{"2":{"31":1,"34":1,"100":2,"114":2,"119":2,"137":1,"145":1,"160":2,"176":1,"199":2,"213":1,"214":1,"231":2,"249":1,"255":1,"307":4,"328":1,"345":1,"347":1,"369":1,"387":3,"391":1,"510":1,"541":1,"559":2,"563":2,"566":7,"567":5,"568":10,"594":1,"649":1,"684":1,"1191":1,"1194":1,"1197":1,"1374":25,"1375":1,"1417":5,"1477":1,"1486":1,"1497":1,"1517":3,"1520":1,"1584":6,"1588":2,"1589":4,"1649":2,"1660":10,"1661":1,"1686":1,"1688":1,"1773":2,"1775":2,"1782":4,"1789":1,"1837":4,"1840":1,"1843":9,"1846":1,"1927":4,"1951":3,"1956":4,"1965":1,"1971":3,"1976":8,"1980":11,"1982":7,"1983":2,"1989":1,"1990":3,"1999":1,"2041":1,"2042":1,"2060":1,"2063":15,"2069":2,"2156":1,"2159":6,"2200":1,"2248":1,"2249":7,"2250":8,"2253":1,"2262":2,"2264":1,"2265":1,"2266":7,"2267":2,"2271":10,"2281":1,"2283":2,"2294":2,"2298":1,"2303":1,"2308":12,"2320":1,"2375":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2398":1,"2418":1,"2421":2,"2422":1,"2503":12,"2519":6,"2521":4,"2522":25,"2523":25,"2527":3,"2528":25,"2531":8,"2537":1,"2539":8,"2541":2,"2543":1,"2547":3,"2548":6,"2565":29,"2566":6,"2599":1,"2627":2,"2644":25,"2652":1,"2671":1,"2684":3,"2685":1,"2750":6,"2772":2,"2780":2,"2834":1,"2862":1,"2864":1,"2871":1,"2873":3,"2887":2,"2918":1,"2919":2,"2921":4}}],["rising",{"2":{"1249":2}}],["risky",{"2":{"1362":1}}],["risk",{"2":{"408":1,"572":1,"754":1,"1362":1,"2420":1,"2740":1,"2896":1}}],["risc",{"0":{"551":1},"1":{"552":1},"2":{"130":2,"134":2,"138":1}}],["riot",{"2":{"210":1,"241":2,"266":1}}],["rionlion100",{"2":{"37":1}}],["rider",{"2":{"2174":1,"2525":1}}],["rid",{"2":{"210":4}}],["ringing",{"2":{"1552":1}}],["ring",{"2":{"199":1,"285":1,"1970":1}}],["rip",{"2":{"160":1}}],["ruin",{"2":{"2422":1}}],["russian",{"2":{"236":1,"2879":1,"2880":2}}],["ruled",{"2":{"2844":1}}],["rule",{"2":{"160":1,"199":1,"289":1,"294":1,"514":1,"664":1,"671":1,"2918":3,"2919":1,"2920":2}}],["ruler",{"2":{"154":2,"2420":1}}],["rules",{"0":{"569":1,"1313":1,"1458":1,"1626":2,"1672":1,"2369":1,"2411":1,"2448":1,"2882":1},"1":{"570":1,"571":1,"572":1,"573":1,"1459":1},"2":{"32":1,"49":1,"50":2,"70":29,"74":1,"75":1,"76":3,"87":1,"94":1,"103":1,"114":2,"118":2,"119":1,"133":2,"134":5,"152":1,"160":1,"172":1,"176":2,"191":2,"199":1,"213":1,"222":5,"235":1,"262":1,"266":11,"285":1,"293":1,"305":1,"308":2,"314":1,"338":1,"342":1,"431":1,"514":1,"553":2,"556":1,"565":1,"621":1,"622":1,"623":1,"653":1,"663":3,"664":1,"665":1,"667":3,"670":2,"671":6,"688":1,"700":1,"722":1,"739":1,"740":1,"743":1,"750":1,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1192":1,"1195":2,"1198":2,"1212":1,"1243":1,"1264":1,"1281":1,"1286":1,"1312":1,"1313":2,"1319":1,"1327":1,"1329":2,"1366":1,"1388":1,"1396":1,"1413":1,"1414":2,"1421":1,"1427":1,"1428":2,"1457":2,"1458":7,"1459":1,"1465":2,"1466":2,"1467":1,"1471":1,"1474":1,"1475":1,"1477":1,"1494":2,"1520":1,"1536":1,"1541":1,"1572":1,"1583":1,"1588":1,"1589":1,"1596":1,"1616":1,"1617":1,"1627":1,"1634":1,"1649":1,"1650":1,"1655":1,"1659":1,"1661":1,"1672":1,"1692":1,"1733":1,"1757":1,"1762":1,"1784":1,"1823":1,"1839":1,"1844":2,"1913":1,"1926":1,"1937":1,"1942":1,"1946":1,"1958":1,"1960":1,"1961":1,"1962":1,"1963":1,"1967":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":2,"1977":1,"2010":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2048":1,"2059":1,"2066":2,"2157":1,"2172":2,"2203":1,"2208":1,"2213":1,"2219":1,"2251":1,"2261":1,"2277":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2295":1,"2302":1,"2305":1,"2313":1,"2319":1,"2322":2,"2323":1,"2367":1,"2369":2,"2371":1,"2375":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2391":1,"2393":2,"2395":2,"2397":2,"2407":2,"2408":1,"2410":2,"2412":4,"2444":1,"2448":19,"2490":1,"2572":1,"2598":1,"2601":1,"2639":1,"2676":1,"2684":1,"2702":1,"2703":1,"2717":1,"2719":1,"2721":3,"2746":2,"2749":11,"2750":2,"2752":1,"2844":1,"2882":1,"2884":1,"2901":1,"2905":2,"2933":1,"2937":3,"2939":1,"2941":1}}],["runoff",{"2":{"1840":1,"2060":1}}],["rundown",{"2":{"611":1}}],["runner",{"2":{"285":3,"294":1}}],["runner3680",{"2":{"154":20}}],["running",{"0":{"392":1,"581":1,"2938":1},"2":{"11":1,"50":1,"69":2,"108":1,"132":1,"160":1,"249":1,"371":3,"398":1,"579":1,"584":1,"586":3,"596":1,"615":1,"631":1,"639":1,"685":1,"1202":1,"1249":1,"1312":1,"1315":1,"1520":1,"1544":1,"1545":1,"1607":1,"1619":1,"1859":1,"1861":1,"1863":1,"1865":1,"1871":1,"1872":1,"1905":1,"1911":1,"2085":1,"2087":1,"2089":1,"2091":1,"2097":1,"2098":1,"2149":1,"2155":1,"2177":1,"2368":1,"2375":1,"2398":1,"2403":1,"2410":1,"2475":1,"2501":1,"2598":1,"2609":1,"2616":1,"2618":1,"2619":1,"2620":1,"2630":2,"2632":1,"2757":1,"2840":1}}],["run",{"0":{"1517":1,"2621":1},"2":{"51":1,"90":1,"114":1,"143":2,"176":2,"199":1,"254":1,"263":1,"384":1,"453":2,"457":3,"463":3,"467":4,"471":1,"473":1,"483":1,"485":1,"499":1,"503":1,"504":1,"511":2,"540":1,"541":1,"562":1,"572":1,"578":1,"587":1,"643":1,"647":2,"685":2,"1293":1,"1313":1,"1315":2,"1329":3,"1345":1,"1361":1,"1425":1,"1462":1,"1521":1,"1522":1,"1599":1,"1603":1,"1611":1,"1612":1,"1662":1,"1691":1,"1761":1,"1775":1,"1831":1,"1844":3,"1846":1,"1859":1,"1861":1,"1937":1,"1942":1,"1976":1,"1987":1,"2066":3,"2069":1,"2085":1,"2087":1,"2266":2,"2287":1,"2303":1,"2324":2,"2382":1,"2383":1,"2401":2,"2410":3,"2425":1,"2454":1,"2494":1,"2495":2,"2501":3,"2546":1,"2566":1,"2572":2,"2580":1,"2587":1,"2598":1,"2600":2,"2601":1,"2602":1,"2609":2,"2610":1,"2621":6,"2627":6,"2630":3,"2632":2,"2649":1,"2669":1,"2670":1,"2672":1,"2675":1,"2685":1,"2687":1,"2689":1,"2707":1,"2721":1,"2754":1,"2786":1,"2791":1,"2804":1,"2810":1,"2820":1,"2864":1,"2871":1,"2933":1,"2937":1,"2938":5,"2939":2,"2942":1}}],["runtime=",{"2":{"2401":1}}],["runtime",{"0":{"1655":1},"1":{"1656":1,"1657":1,"1658":1},"2":{"24":1,"717":1,"751":1,"1345":1,"1994":1,"1995":1,"2401":2,"2905":2}}],["runs",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"380":1,"463":2,"467":2,"490":1,"543":1,"632":1,"645":3,"1423":1,"1441":1,"1482":1,"1545":3,"1961":1,"1968":1,"1976":1,"2047":1,"2492":1,"2494":1,"2572":1,"2600":1,"2605":1,"2927":1,"2929":3}}],["r",{"0":{"2085":1,"2087":1},"1":{"2086":1,"2088":1},"2":{"32":1,"191":1,"266":2,"308":1,"317":1,"369":1,"486":1,"587":2,"726":1,"729":1,"802":1,"805":1,"831":1,"834":1,"860":1,"863":1,"890":1,"893":1,"925":1,"928":1,"959":1,"962":1,"993":1,"996":1,"1027":1,"1030":1,"1061":1,"1064":1,"1095":1,"1098":1,"1129":1,"1132":1,"1163":1,"1166":1,"1194":2,"1216":1,"1219":1,"1285":2,"1375":27,"1532":2,"1791":1,"2072":1,"2074":1,"2086":1,"2088":1,"2174":1,"2191":10,"2216":1,"2289":2,"2294":2,"2383":1,"2442":1,"2465":1,"2503":3,"2525":1,"2535":3,"2556":1,"2721":1,"2748":4,"2862":2,"2875":1,"2891":1,"2919":25}}],["req",{"2":{"2209":1}}],["requried",{"2":{"249":1}}],["requesting",{"2":{"387":1,"2560":1}}],["requested",{"2":{"99":1,"164":1,"584":1,"623":1,"1956":1,"2283":1,"2561":1}}],["request",{"0":{"408":1,"2829":1},"1":{"409":1,"410":1,"411":1,"412":1},"2":{"45":1,"50":1,"87":1,"103":1,"126":1,"373":1,"408":3,"411":1,"412":1,"594":1,"607":2,"611":9,"615":1,"617":1,"680":1,"794":1,"1336":1,"1338":1,"1414":1,"1462":1,"2052":8,"2209":2,"2211":1,"2398":3,"2465":1,"2503":1,"2541":1,"2560":1,"2626":1,"2628":1,"2676":1,"2724":1,"2829":1,"2843":1,"2942":1}}],["requests",{"2":{"38":1,"69":1,"199":1,"333":1,"411":1,"576":2,"606":1,"1340":1,"2559":1,"2631":1,"2722":1,"2723":1,"2829":1,"2895":1}}],["requirement",{"2":{"236":1,"713":1,"1683":1,"2690":1,"2719":1}}],["requirements",{"0":{"420":1,"1401":1,"2400":1,"2719":1,"2731":1,"2732":1},"2":{"145":1,"176":1,"420":2,"486":2,"746":1,"1283":1,"1287":1,"2037":1,"2561":1,"2722":1,"2728":1,"2734":1}}],["requires",{"2":{"143":1,"391":1,"420":1,"458":1,"459":2,"682":1,"746":1,"747":1,"750":1,"752":1,"754":1,"756":1,"762":1,"1243":1,"1264":1,"1295":1,"1353":1,"1362":1,"1529":1,"1627":1,"1914":1,"1954":1,"1960":1,"1972":1,"1975":1,"1990":1,"1992":1,"2051":1,"2271":1,"2276":1,"2285":2,"2323":1,"2324":1,"2368":1,"2381":1,"2387":2,"2403":2,"2516":1,"2561":1,"2591":1,"2600":1,"2676":1,"2680":1,"2721":2,"2722":1,"2745":1,"2747":2,"2748":4,"2750":3,"2754":1,"2901":1}}],["require",{"0":{"124":1},"2":{"58":1,"132":1,"134":1,"232":1,"297":1,"308":2,"374":1,"397":1,"408":1,"411":2,"428":1,"512":1,"573":1,"586":1,"590":1,"644":1,"682":1,"683":1,"716":1,"750":1,"751":2,"754":1,"1314":1,"1512":1,"1675":1,"1775":1,"1781":1,"1829":1,"1968":1,"1977":1,"2073":1,"2074":1,"2184":1,"2269":1,"2285":1,"2311":1,"2318":1,"2379":1,"2419":1,"2459":1,"2492":1,"2603":1,"2689":1,"2721":1,"2722":1,"2734":1,"2747":1,"2749":3,"2750":1,"2788":1,"2885":1,"2887":1,"2892":1,"2899":1}}],["required",{"0":{"23":1,"2257":1},"1":{"2258":1},"2":{"10":2,"24":1,"50":1,"69":1,"70":1,"107":1,"118":1,"222":1,"228":1,"234":9,"262":1,"285":1,"348":1,"568":1,"573":1,"609":1,"613":1,"623":1,"628":1,"654":1,"655":1,"667":1,"688":1,"700":1,"711":1,"722":1,"739":1,"745":1,"762":1,"764":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1194":1,"1202":1,"1212":1,"1243":1,"1244":1,"1245":1,"1264":1,"1265":1,"1281":1,"1296":2,"1300":1,"1402":1,"1438":1,"1497":1,"1511":2,"1526":1,"1636":2,"1683":1,"1693":4,"1775":1,"1776":1,"1937":1,"1953":2,"1955":1,"1960":3,"1961":1,"1962":2,"1964":3,"1968":2,"1972":2,"1973":2,"1974":1,"1975":3,"1976":1,"1980":3,"1994":3,"1996":2,"2047":1,"2205":1,"2269":1,"2270":1,"2281":3,"2285":1,"2313":1,"2340":1,"2372":1,"2401":1,"2408":2,"2418":2,"2420":1,"2423":1,"2447":1,"2448":1,"2449":2,"2450":1,"2462":1,"2476":1,"2498":1,"2561":1,"2562":1,"2592":2,"2594":1,"2599":1,"2658":1,"2677":1,"2719":1,"2721":2,"2722":1,"2728":1,"2749":4,"2750":6,"2845":4,"2846":2,"2848":2,"2849":2,"2850":1,"2851":2,"2858":3,"2860":1,"2861":1,"2862":3,"2864":5,"2869":2,"2870":1,"2871":5,"2875":3,"2876":1,"2936":1,"2937":1}}],["requiring",{"0":{"40":1,"53":1,"67":1,"72":1,"85":1,"101":1,"121":1,"140":1,"150":1,"165":1,"180":1,"193":1,"204":1,"216":1,"225":1,"239":1,"252":1,"269":1,"280":1,"290":1,"299":1,"310":1,"321":1},"1":{"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"86":1,"87":1,"88":1,"89":1,"90":1,"102":1,"103":1,"104":1,"105":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"141":1,"142":1,"143":1,"144":1,"151":1,"152":1,"153":1,"154":1,"166":1,"167":1,"168":1,"169":1,"170":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"194":1,"195":1,"196":1,"197":1,"205":1,"206":1,"207":1,"208":1,"209":1,"217":1,"218":1,"226":1,"240":1,"241":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"270":1,"271":1,"272":1,"273":1,"281":1,"291":1,"300":1,"311":1,"312":1,"322":1,"323":1,"324":1,"325":1},"2":{"173":1,"234":1,"276":1,"285":1,"408":2,"613":1,"751":1,"1585":1,"1587":1,"2295":1,"2560":1,"2739":1}}],["reregister",{"2":{"1770":5,"1776":1,"1779":1}}],["reusing",{"2":{"657":1,"2562":1}}],["reused",{"2":{"2398":3,"2862":1}}],["reuse",{"2":{"134":1,"2941":1}}],["reintroduced",{"2":{"2621":1}}],["reinitializes",{"2":{"2504":1,"2745":1}}],["reinitilization",{"2":{"1940":1}}],["reinstall",{"2":{"2651":1}}],["reinstalling",{"2":{"1315":1}}],["reinstate",{"2":{"285":1}}],["reimplementing",{"2":{"445":1}}],["reimplements",{"2":{"134":1}}],["reimplemented",{"2":{"118":1}}],["rekt1800",{"2":{"222":1}}],["rejects",{"2":{"294":1}}],["reject",{"2":{"191":1,"266":1,"294":2,"308":1}}],["rebase",{"2":{"2627":10}}],["rebasing",{"0":{"2627":1}}],["rebuilding",{"2":{"1365":1}}],["rebrand",{"2":{"317":1}}],["rebranded",{"2":{"57":1}}],["reboots",{"2":{"2290":1}}],["rebooted",{"2":{"1655":1,"2806":1}}],["rebooting",{"2":{"649":1,"1950":1}}],["reboot",{"0":{"649":1,"652":1},"1":{"650":1,"651":1,"652":1},"2":{"145":1,"176":1,"191":1,"229":1,"568":1,"649":1,"684":1,"2271":1,"2324":1,"2504":1,"2684":1,"2745":1,"2789":1,"2873":1}}],["recalculations",{"2":{"2757":1}}],["recall",{"2":{"1985":1}}],["rect",{"2":{"2750":5}}],["rectangle",{"2":{"2750":1}}],["rectangles",{"2":{"138":1,"2750":2}}],["rectangular",{"0":{"2780":1},"2":{"1486":1,"2778":1,"2780":1}}],["recreate",{"2":{"2425":2}}],["recreated",{"2":{"160":1}}],["recutting",{"2":{"2424":1}}],["recurse",{"2":{"2398":2,"2401":1,"2630":4}}],["recursive",{"2":{"160":1,"1622":1,"1655":1,"2600":1}}],["recv",{"2":{"2270":1}}],["rec2",{"2":{"1655":3,"2511":1}}],["rec1",{"2":{"1655":3,"2511":1}}],["receiving",{"0":{"2051":1},"2":{"1191":1,"1194":1,"1197":2,"2398":1,"2411":1,"2812":1}}],["receives",{"2":{"1831":1,"2459":2,"2775":1}}],["received",{"2":{"583":1,"765":1,"1461":1,"2050":1,"2051":1,"2052":1,"2054":1,"2055":1,"2288":1,"2560":1,"2725":1}}],["receive",{"0":{"776":1,"779":1,"1259":1,"1276":1,"2054":1},"1":{"777":1,"778":1,"780":1,"781":1,"1260":1,"1261":1,"1277":1,"2055":1},"2":{"191":1,"323":1,"328":1,"776":1,"779":1,"1259":1,"1269":1,"1272":1,"1273":1,"1276":1,"1278":1,"1979":1,"2009":1,"2050":1,"2052":1,"2303":1,"2470":1,"2501":1,"2743":1,"2873":1}}],["reception",{"2":{"1189":3}}],["recently",{"2":{"236":1,"2064":1}}],["recent",{"2":{"114":1,"134":2,"145":1,"160":1,"191":1,"199":1,"210":1,"312":1,"1519":1,"2367":1,"2649":1}}],["recolored",{"2":{"2750":3}}],["recolor",{"2":{"2750":9}}],["recognised",{"2":{"2469":1}}],["recognises",{"2":{"1669":1}}],["recognise",{"2":{"1440":1,"2324":1}}],["recognizes",{"2":{"1358":1,"2503":1}}],["recognized",{"2":{"1348":1,"1353":1,"1355":1,"1519":1,"1602":1,"2941":1}}],["recognize",{"0":{"1329":1},"2":{"176":1,"538":1,"683":1,"2503":1,"2855":1}}],["reconstruct",{"2":{"2627":1}}],["reconfigure",{"2":{"1588":1}}],["reconfiguration",{"2":{"754":1}}],["reconnect",{"2":{"62":1}}],["recopy",{"2":{"509":1}}],["recovering",{"0":{"684":1},"2":{"240":1}}],["recover",{"2":{"228":1}}],["recompilation",{"2":{"2474":1}}],["recompile",{"2":{"124":1,"154":4,"160":1,"2290":1}}],["recommends",{"2":{"611":1,"1621":1}}],["recommendations",{"2":{"2452":1,"2573":1,"2718":1,"2934":1}}],["recommendation",{"2":{"397":1}}],["recommend",{"2":{"145":1,"682":1,"746":1,"2004":1,"2377":1,"2384":1,"2452":1,"2453":1,"2621":1,"2669":1,"2723":1,"2934":1,"2937":1,"2942":1}}],["recommended",{"2":{"3":1,"4":1,"15":1,"348":2,"621":1,"746":1,"1190":1,"1313":1,"1348":1,"1410":7,"1440":1,"1457":1,"1458":2,"1624":1,"1679":1,"1763":1,"1782":1,"1788":1,"1840":2,"1933":3,"1957":1,"2001":1,"2030":1,"2033":1,"2060":2,"2174":1,"2258":1,"2270":1,"2324":2,"2376":2,"2379":2,"2381":2,"2382":2,"2383":2,"2386":2,"2388":2,"2389":2,"2390":2,"2391":1,"2403":1,"2415":1,"2422":2,"2489":1,"2493":1,"2585":1,"2614":1,"2631":1,"2632":1,"2633":2,"2688":1,"2719":1,"2722":1,"2723":1,"2751":1,"2915":1,"2921":1}}],["records",{"2":{"2002":1,"2006":1}}],["recorded",{"2":{"1655":1,"2511":1,"2627":1,"2806":1}}],["recording",{"2":{"210":1,"328":1,"1484":4,"1655":6,"1656":1,"1657":1,"1658":3,"2511":2}}],["record",{"0":{"214":1,"629":1,"630":1,"1440":1,"1446":1,"1655":1,"2924":1,"2933":1},"1":{"1441":1,"1442":1,"1443":1,"1444":1,"1656":1,"1657":1,"1658":1},"2":{"3":1,"7":1,"15":1,"22":2,"176":1,"194":2,"195":2,"214":7,"222":3,"285":1,"294":1,"307":5,"317":1,"324":3,"325":3,"591":14,"625":2,"628":2,"629":4,"630":6,"641":1,"645":3,"1326":8,"1377":3,"1378":3,"1407":8,"1425":3,"1440":10,"1441":9,"1446":1,"1456":3,"1465":5,"1466":9,"1497":1,"1504":3,"1511":3,"1526":1,"1527":3,"1531":1,"1599":1,"1607":2,"1632":9,"1655":3,"1656":1,"1657":3,"1658":4,"1661":1,"1683":1,"1737":7,"1828":5,"1917":1,"1918":3,"1942":4,"1985":1,"1986":3,"1987":4,"1997":1,"1998":4,"1999":4,"2002":2,"2006":3,"2008":2,"2162":2,"2164":1,"2165":1,"2166":1,"2167":5,"2168":5,"2170":5,"2174":1,"2184":5,"2224":3,"2293":3,"2303":4,"2309":4,"2312":1,"2449":2,"2454":1,"2511":3,"2568":5,"2569":8,"2570":5,"2603":1,"2721":1,"2785":4,"2903":1,"2904":2,"2905":8,"2912":1,"2913":1,"2914":1,"2917":3,"2920":6,"2921":1,"2923":1,"2924":2,"2932":1,"2933":59}}],["reordering",{"2":{"182":1,"191":1}}],["reorderable",{"2":{"176":1}}],["reordered",{"2":{"98":1}}],["reorg",{"2":{"114":1}}],["regress",{"2":{"2374":2}}],["regression",{"2":{"134":1,"160":2,"222":1,"2372":2,"2374":1}}],["regulated",{"2":{"2683":1}}],["regulator",{"2":{"1962":1,"2273":1}}],["regularly",{"2":{"643":1}}],["regular",{"2":{"89":1,"114":1,"682":1,"1210":1,"1451":1,"1591":2,"1675":1,"1781":1,"2293":1,"2323":1,"2416":1,"2565":1,"2907":1}}],["regex",{"2":{"1428":1}}],["regen",{"2":{"199":4}}],["regenerate",{"2":{"198":1,"199":1,"249":2,"294":1}}],["region",{"2":{"2501":1,"2749":5}}],["regions",{"2":{"1343":1,"2734":1}}],["registry",{"2":{"2687":1,"2689":1}}],["registrations",{"2":{"658":1}}],["registration",{"0":{"655":1},"2":{"63":1}}],["registered",{"0":{"2466":1},"1":{"2467":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1},"2":{"1378":6,"1770":1,"1775":2,"1776":1,"1778":1,"1965":8,"2270":1,"2302":1,"2912":3,"2913":2}}],["registering",{"2":{"562":1,"1378":1,"1449":1,"1451":2,"1779":1,"1955":1}}],["register16",{"0":{"785":1,"791":1},"1":{"786":1,"787":1,"792":1,"793":1},"2":{"244":2}}],["registers",{"0":{"824":1,"851":1,"882":1,"914":1,"949":1,"983":1,"1017":1,"1051":1,"1085":1,"1119":1,"1153":1,"1187":1,"1240":1},"1":{"825":1,"883":1,"915":1,"950":1,"984":1,"1018":1,"1052":1,"1086":1,"1120":1,"1154":1,"1188":1,"1241":1},"2":{"134":1,"818":2,"820":2,"846":2,"848":2,"876":2,"878":2,"908":2,"910":2,"943":2,"945":2,"977":2,"979":2,"1011":2,"1013":2,"1045":2,"1047":2,"1079":2,"1081":1,"1113":2,"1115":1,"1147":2,"1149":1,"1181":2,"1183":1,"1210":1,"1234":2,"1236":2,"1612":1,"1659":1,"1968":1,"2459":1,"2678":2}}],["register",{"0":{"782":1,"788":1,"808":1,"818":1,"820":1,"836":1,"846":1,"848":1,"866":1,"876":1,"878":1,"896":1,"908":1,"910":1,"931":1,"943":1,"945":1,"965":1,"977":1,"979":1,"999":1,"1011":1,"1013":1,"1033":1,"1045":1,"1047":1,"1067":1,"1079":1,"1081":1,"1101":1,"1113":1,"1115":1,"1135":1,"1147":1,"1149":1,"1169":1,"1181":1,"1183":1,"1222":1,"1234":1,"1236":1,"1317":1,"1447":1,"1451":1,"1745":1,"2018":1,"2340":1,"2350":1,"2364":1},"1":{"783":1,"784":1,"789":1,"790":1,"809":1,"819":1,"821":1,"837":1,"847":1,"849":1,"867":1,"877":1,"879":1,"897":1,"909":1,"911":1,"932":1,"944":1,"946":1,"966":1,"978":1,"980":1,"1000":1,"1012":1,"1014":1,"1034":1,"1046":1,"1048":1,"1068":1,"1080":1,"1082":1,"1102":1,"1114":1,"1116":1,"1136":1,"1148":1,"1150":1,"1170":1,"1182":1,"1184":1,"1223":1,"1235":1,"1237":1,"1746":1,"2019":1,"2341":1,"2351":1,"2365":1},"2":{"114":1,"134":1,"160":1,"190":1,"191":2,"236":3,"244":2,"249":5,"562":1,"728":1,"729":3,"782":1,"783":1,"785":1,"786":1,"788":1,"789":1,"791":1,"792":1,"794":2,"804":1,"805":4,"808":1,"809":1,"824":1,"833":1,"834":4,"836":1,"837":1,"851":1,"860":1,"862":1,"863":4,"866":1,"867":1,"882":1,"890":1,"892":1,"893":4,"896":1,"897":1,"914":1,"925":1,"927":1,"928":4,"931":1,"932":1,"949":1,"959":1,"961":1,"962":4,"965":1,"966":1,"983":1,"993":1,"995":1,"996":4,"999":1,"1000":1,"1017":1,"1021":1,"1027":1,"1029":1,"1030":4,"1033":1,"1034":1,"1051":1,"1055":1,"1061":1,"1063":1,"1064":4,"1067":1,"1068":1,"1081":1,"1085":1,"1089":1,"1095":1,"1097":1,"1098":4,"1101":1,"1102":1,"1115":1,"1119":1,"1123":1,"1129":1,"1131":1,"1132":4,"1135":1,"1136":1,"1149":1,"1153":1,"1157":1,"1163":1,"1165":1,"1166":4,"1169":1,"1170":1,"1183":1,"1187":1,"1216":1,"1218":1,"1219":4,"1222":1,"1223":1,"1240":1,"1375":1,"1377":2,"1378":1,"1441":2,"1448":1,"1449":1,"1451":1,"1456":3,"1511":3,"1612":1,"1775":2,"1782":1,"1955":1,"1978":1,"2270":1,"2303":1,"2309":2,"2310":5,"2311":3,"2427":1,"2468":2,"2676":1,"2679":1,"2858":1,"2921":1}}],["reg",{"0":{"808":1,"836":1,"866":1,"896":1,"931":1,"965":1,"999":1,"1033":1,"1067":1,"1101":1,"1135":1,"1169":1,"1222":1},"1":{"809":1,"837":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1223":1},"2":{"809":1,"837":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1223":1,"2324":2}}],["regaddr",{"0":{"782":1,"785":1,"788":1,"791":1},"1":{"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1},"2":{"783":1,"786":1,"789":1,"792":1}}],["regards",{"2":{"1512":1,"1781":1,"1968":1,"2310":1,"2658":1}}],["regard",{"2":{"760":1}}],["regardless",{"2":{"49":1,"619":1,"765":1,"1378":1,"1824":1,"2050":1,"2203":1,"2260":1,"2561":1,"2631":1,"2723":1,"2734":1,"2742":1}}],["regarding",{"0":{"27":1},"2":{"92":1,"176":1,"191":1,"201":1,"759":1,"1312":1}}],["retirement",{"2":{"2895":1}}],["retail",{"2":{"2562":1}}],["retaining",{"2":{"1464":1,"2763":1}}],["retained",{"2":{"1406":1,"2266":1,"2603":1,"2788":2}}],["retain",{"0":{"2186":1},"2":{"114":1,"191":1,"199":1,"2186":2}}],["retn",{"2":{"2503":1,"2541":1}}],["ret",{"2":{"2325":1,"2533":1}}],["retries",{"2":{"2270":1}}],["retrieves",{"2":{"2632":2}}],["retrieve",{"2":{"373":1,"2750":1}}],["retrieved",{"2":{"373":1}}],["retrieval",{"2":{"191":1,"222":1,"637":1}}],["retry",{"2":{"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1362":1}}],["retro",{"0":{"1512":1,"1513":1,"2921":1,"2922":1},"1":{"1513":1,"2922":1},"2":{"63":1,"112":2,"134":2,"210":1,"236":1,"294":1,"562":4,"1493":1,"1511":5,"1512":11,"1513":3,"2847":2,"2921":7,"2922":3,"2923":1,"2938":2}}],["returned",{"2":{"654":1,"655":1,"656":1,"657":1,"687":1,"1588":1,"1723":1,"1834":1,"2160":1,"2186":1,"2749":11,"2917":1,"2929":1}}],["returncode",{"2":{"485":1,"541":1}}],["returns",{"2":{"485":1,"510":1,"519":1,"521":1,"522":2,"654":1,"695":1,"696":1,"758":1,"1530":1,"1593":1,"1614":2,"1615":1,"1662":1,"1764":1,"1833":1,"1931":1,"1937":1,"1956":12,"1962":1,"1981":6,"1982":3,"1983":1,"2001":1,"2007":1,"2167":1,"2196":1,"2283":8,"2299":1,"2312":1,"2373":1,"2454":1,"2627":2,"2750":2,"2916":1}}],["returning",{"2":{"90":1,"105":2,"214":1,"526":1,"649":1,"654":1,"1594":2,"1611":1,"1662":1,"1831":2,"2164":1,"2210":1,"2377":1,"2384":1,"2872":1,"2917":1,"2920":2}}],["return",{"0":{"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1250":1,"1253":1,"1255":1,"1258":1,"1261":1,"1273":1,"1279":1,"1563":1,"1565":1,"1570":1,"1577":1,"1718":1,"1723":1,"1751":1,"1798":1,"1804":1,"1809":1,"1812":1,"1815":1,"1818":1,"1821":1,"1858":1,"1872":1,"1878":1,"1888":1,"1898":1,"1901":1,"1903":1,"1905":1,"1908":1,"1911":1,"2024":1,"2027":1,"2084":1,"2098":1,"2104":1,"2110":1,"2116":1,"2126":1,"2136":1,"2142":1,"2145":1,"2147":1,"2149":1,"2152":1,"2155":1,"2328":1,"2346":1,"2349":1,"2354":1,"2356":1,"2359":1,"2361":1},"2":{"31":2,"34":2,"50":1,"90":4,"105":7,"125":3,"134":3,"185":3,"191":2,"194":5,"195":4,"199":1,"249":3,"294":1,"307":2,"312":1,"324":1,"325":1,"328":1,"332":2,"333":1,"348":1,"380":1,"510":4,"520":2,"521":2,"522":3,"526":1,"532":1,"586":1,"591":8,"613":3,"622":1,"623":2,"628":2,"629":3,"650":2,"651":1,"654":2,"655":1,"742":2,"1278":2,"1326":1,"1346":1,"1350":1,"1377":3,"1378":4,"1407":6,"1408":1,"1424":1,"1425":4,"1440":3,"1441":2,"1456":1,"1464":2,"1465":1,"1466":2,"1485":3,"1497":3,"1504":4,"1511":2,"1527":12,"1529":5,"1594":3,"1606":12,"1607":2,"1611":2,"1612":3,"1614":4,"1651":6,"1662":4,"1737":6,"1773":1,"1775":2,"1827":1,"1828":2,"1832":1,"1833":1,"1844":3,"1849":3,"1918":2,"1938":2,"1942":2,"1947":1,"1948":1,"1949":1,"1950":4,"1956":1,"1976":1,"1977":3,"1981":1,"1986":2,"1987":3,"1989":2,"1990":1,"1999":4,"2001":7,"2002":2,"2004":1,"2005":1,"2006":1,"2007":2,"2008":1,"2052":2,"2066":3,"2072":3,"2073":3,"2074":2,"2160":7,"2161":6,"2162":4,"2164":2,"2165":1,"2166":2,"2167":2,"2168":4,"2170":5,"2183":3,"2217":5,"2224":2,"2279":1,"2280":3,"2283":1,"2293":3,"2296":1,"2309":1,"2310":11,"2311":6,"2312":6,"2374":5,"2454":1,"2503":3,"2537":1,"2541":2,"2568":3,"2569":10,"2570":2,"2626":1,"2628":1,"2630":1,"2632":1,"2722":1,"2750":1,"2785":3,"2787":3,"2903":3,"2904":5,"2905":4,"2912":2,"2913":2,"2914":2,"2916":3,"2917":7,"2919":3,"2920":3,"2921":2,"2923":2,"2933":1}}],["rewinding",{"2":{"2627":1}}],["rewind",{"2":{"2159":1,"2503":3,"2542":3}}],["rework",{"0":{"196":2},"2":{"114":1,"134":1,"145":2,"176":1,"191":1,"199":1,"210":1,"236":1,"249":1,"277":1,"285":1,"328":1,"617":1,"2579":1}}],["reworked",{"2":{"60":1,"86":1,"118":1,"188":1,"191":1,"283":1}}],["rewritten",{"2":{"107":1,"1345":1,"2886":1}}],["rewrite",{"2":{"31":1,"75":1,"176":2,"191":1,"1362":2}}],["re",{"0":{"2843":1},"2":{"51":1,"107":1,"119":3,"124":1,"132":1,"134":1,"142":1,"160":1,"176":2,"182":1,"188":1,"198":1,"222":1,"224":1,"228":1,"232":1,"240":1,"241":1,"248":1,"253":1,"268":1,"270":1,"272":1,"273":1,"279":1,"281":1,"283":1,"294":1,"363":2,"373":1,"400":1,"401":1,"510":1,"512":1,"562":2,"597":1,"598":1,"603":1,"608":1,"611":2,"613":1,"616":1,"631":1,"656":1,"659":1,"684":1,"1204":1,"1206":1,"1308":1,"1315":1,"1375":1,"1379":1,"1407":5,"1444":1,"1484":1,"1495":1,"1587":1,"1602":1,"1603":2,"1606":1,"1665":1,"1683":1,"1779":3,"1782":1,"1783":1,"1917":1,"1989":1,"2041":1,"2256":1,"2261":1,"2266":2,"2268":2,"2323":1,"2324":1,"2372":1,"2398":3,"2422":8,"2424":2,"2427":1,"2430":1,"2453":1,"2455":1,"2457":1,"2490":1,"2501":1,"2560":1,"2576":1,"2583":1,"2588":1,"2606":1,"2609":1,"2610":1,"2622":1,"2627":1,"2631":1,"2644":1,"2645":1,"2659":1,"2673":1,"2675":1,"2676":1,"2689":1,"2691":1,"2708":1,"2718":1,"2719":2,"2721":1,"2723":1,"2735":1,"2743":1,"2749":2,"2775":2,"2776":1,"2783":1,"2791":1,"2883":1,"2884":2,"2885":2,"2887":1,"2905":1,"2921":1}}],["rear",{"2":{"2776":1}}],["reapply",{"2":{"2627":1}}],["reapplying",{"2":{"1378":1}}],["reap",{"2":{"406":1}}],["reasons",{"2":{"620":1}}],["reasonable",{"2":{"617":1,"1990":1,"2902":1}}],["reason",{"2":{"288":1,"410":1,"523":1,"617":1,"1347":1,"1375":1,"1417":1,"1444":1,"1460":1,"2258":1,"2560":1,"2561":1,"2710":1,"2719":1,"2750":1,"2905":1,"2925":1,"2937":1}}],["reacting",{"2":{"2269":1}}],["reactive",{"0":{"2065":1},"2":{"93":1,"124":1,"176":1,"199":1,"249":1,"266":1,"317":1,"1843":22,"1846":2,"2063":25,"2065":3,"2069":2,"2887":8}}],["react",{"2":{"2269":1,"2864":2,"2871":2}}],["reached",{"2":{"1805":1,"1929":2,"1933":1}}],["reaches",{"2":{"1421":1,"1928":3,"2471":1,"2627":1}}],["reach",{"2":{"412":1,"614":1,"1519":1,"1789":2,"1933":1,"2284":1,"2719":1}}],["reachable",{"2":{"249":1,"1969":5}}],["reaching",{"2":{"188":1,"1491":1,"2372":1,"2928":1}}],["realtime",{"0":{"2890":1}}],["realpath",{"2":{"2585":1,"2586":1}}],["realising",{"2":{"2560":1}}],["realized",{"2":{"1768":1}}],["realign",{"2":{"222":1}}],["realloc",{"2":{"236":1}}],["reallocate",{"2":{"199":2}}],["really",{"2":{"138":1,"1316":1,"1413":1,"1493":1,"1495":1,"1511":1,"1587":1,"1773":1,"1776":1,"1781":1,"2418":1,"2672":1,"2924":1}}],["real",{"0":{"1359":1,"2736":1},"1":{"2737":1,"2738":1,"2739":1},"2":{"49":1,"245":1,"1325":1,"1353":1,"1359":7,"1409":1,"1511":1,"2284":2,"2707":1}}],["reader",{"2":{"1606":1,"1949":7,"1956":1,"2279":7,"2283":1}}],["readers",{"2":{"517":1}}],["read32",{"2":{"645":1,"2270":1,"2719":1,"2750":6}}],["reads",{"2":{"559":2,"566":1,"567":1,"568":1,"637":3,"695":2,"696":3,"747":1,"1962":1,"2052":1,"2401":1,"2775":1}}],["readily",{"2":{"536":1,"2498":1}}],["readings",{"2":{"234":1}}],["reading",{"0":{"475":1,"494":1,"592":1},"1":{"476":1,"477":1,"478":1,"479":1},"2":{"114":1,"134":1,"145":1,"160":1,"176":1,"498":1,"559":2,"617":1,"624":1,"743":1,"794":1,"1407":1,"1736":1,"1834":1,"2434":1,"2448":1,"2459":1,"2495":4,"2496":1,"2608":1,"2865":1,"2899":1}}],["readability",{"2":{"510":1,"525":1,"536":1,"587":1,"1344":1,"2554":1}}],["readable",{"2":{"308":1,"1327":2,"1344":1,"2776":1,"2804":1,"2941":1}}],["ready",{"2":{"338":3,"397":1,"1329":1,"1456":1,"1477":1,"1616":1,"1937":1,"2036":1,"2291":1,"2377":1,"2384":1,"2411":1,"2495":1,"2501":1,"2575":1,"2605":1,"2609":1,"2610":1,"2623":1,"2675":1}}],["readreg",{"2":{"244":1}}],["readreg16",{"2":{"134":1,"244":1}}],["readpin",{"2":{"243":1}}],["readport",{"2":{"114":1}}],["readonly",{"2":{"236":1}}],["readd",{"2":{"199":1}}],["readmes",{"2":{"266":1}}],["readme",{"0":{"680":1,"681":1,"1461":2,"2445":1,"2708":1},"2":{"114":3,"134":1,"145":1,"191":1,"210":2,"222":1,"294":2,"308":1,"328":1,"403":1,"405":1,"616":2,"683":1,"1427":3,"1457":1,"2383":1,"2407":1,"2408":1,"2410":1,"2441":1,"2444":1,"2445":1,"2451":2,"2494":1,"2708":3,"2721":1}}],["read",{"0":{"608":1,"788":1,"791":1,"1254":1,"1272":1,"1365":1,"1721":1,"1749":1,"1949":1,"2279":1},"1":{"789":1,"790":1,"792":1,"793":1,"1255":1,"1273":1,"1722":1,"1723":1,"1750":1,"1751":1},"2":{"2":1,"31":3,"49":1,"114":2,"145":2,"194":1,"195":1,"199":1,"217":1,"243":1,"244":2,"249":1,"285":1,"294":1,"308":1,"340":1,"358":2,"471":1,"475":1,"481":1,"538":1,"587":1,"607":1,"637":3,"690":1,"695":1,"696":2,"742":1,"758":1,"763":2,"777":2,"780":2,"788":1,"789":3,"791":1,"792":3,"794":1,"1189":1,"1254":1,"1255":1,"1260":2,"1273":2,"1277":2,"1278":1,"1279":1,"1311":1,"1341":1,"1365":1,"1376":1,"1406":3,"1407":5,"1408":3,"1409":1,"1422":1,"1456":1,"1533":1,"1606":1,"1655":1,"1656":1,"1721":1,"1722":1,"1732":2,"1736":2,"1743":1,"1750":1,"1767":1,"1829":1,"1929":1,"1949":6,"1956":1,"1962":1,"1974":1,"1976":2,"1978":1,"2052":1,"2264":2,"2265":1,"2279":6,"2283":1,"2303":1,"2411":1,"2447":1,"2459":2,"2496":1,"2578":1,"2626":1,"2628":1,"2697":1,"2698":1,"2707":1,"2719":1,"2752":1,"2754":1,"2765":3,"2775":1,"2776":1,"2793":2,"2889":1,"2899":2,"2900":1,"2919":1,"2936":1,"2941":1}}],["reddit",{"2":{"2891":1}}],["redragon",{"2":{"2560":1}}],["redetect",{"2":{"1941":1}}],["redesigning",{"2":{"1365":1}}],["redefined",{"2":{"2721":1}}],["redefine",{"2":{"557":1,"1393":1,"1466":1,"2252":2}}],["redirect",{"2":{"584":1,"659":1,"1379":1,"2430":1,"2630":1}}],["redirected",{"2":{"268":1,"2559":1}}],["redistribution",{"2":{"2688":1,"2719":1,"2726":1,"2728":1,"2741":1}}],["redistributed",{"2":{"2688":1}}],["redistribute",{"2":{"1461":1,"2725":1}}],["redis",{"0":{"583":1},"2":{"359":1,"363":1}}],["redox",{"2":{"241":2,"249":3}}],["redoing",{"2":{"191":1}}],["redo",{"2":{"145":1}}],["red",{"0":{"704":1,"706":1,"732":1,"734":1,"810":1,"812":1,"818":1,"838":1,"840":1,"846":1,"868":1,"870":1,"876":1,"900":1,"902":1,"908":1,"935":1,"937":1,"943":1,"969":1,"971":1,"977":1,"1003":1,"1005":1,"1011":1,"1037":1,"1039":1,"1045":1,"1071":1,"1073":1,"1079":1,"1105":1,"1107":1,"1113":1,"1139":1,"1141":1,"1147":1,"1173":1,"1175":1,"1181":1,"1226":1,"1228":1,"1234":1,"1303":1,"1305":1},"1":{"705":1,"707":1,"733":1,"735":1,"811":1,"813":1,"819":1,"839":1,"841":1,"847":1,"869":1,"871":1,"877":1,"901":1,"903":1,"909":1,"936":1,"938":1,"944":1,"970":1,"972":1,"978":1,"1004":1,"1006":1,"1012":1,"1038":1,"1040":1,"1046":1,"1072":1,"1074":1,"1080":1,"1106":1,"1108":1,"1114":1,"1140":1,"1142":1,"1148":1,"1174":1,"1176":1,"1182":1,"1227":1,"1229":1,"1235":1,"1304":1,"1306":1},"2":{"49":1,"338":3,"397":1,"427":1,"490":2,"492":1,"650":1,"651":2,"705":2,"707":2,"726":1,"729":1,"733":2,"735":2,"802":1,"805":1,"811":2,"813":2,"819":2,"831":1,"834":1,"839":2,"841":2,"847":2,"860":1,"863":1,"869":2,"871":2,"877":2,"890":1,"893":1,"901":2,"903":2,"909":2,"925":1,"928":1,"936":2,"938":2,"944":2,"959":1,"962":1,"970":2,"972":2,"978":2,"993":1,"996":1,"1004":2,"1006":2,"1012":2,"1027":1,"1030":1,"1038":2,"1040":2,"1046":2,"1061":1,"1064":1,"1072":2,"1074":2,"1080":2,"1095":1,"1098":1,"1106":2,"1108":2,"1114":2,"1129":1,"1132":1,"1140":2,"1142":2,"1148":2,"1163":1,"1166":1,"1174":2,"1176":2,"1182":2,"1216":1,"1219":1,"1227":2,"1229":2,"1235":2,"1284":1,"1285":1,"1304":2,"1306":2,"1407":1,"1469":1,"1472":3,"1476":2,"1938":1,"2067":2,"2072":2,"2073":1,"2086":1,"2088":1,"2174":1,"2175":1,"2178":1,"2182":3,"2184":1,"2191":1,"2198":2,"2525":1,"2594":1}}],["reducing",{"2":{"69":1,"622":1,"2372":1}}],["reduces",{"2":{"203":1,"265":1,"617":1,"2372":1}}],["reduced",{"2":{"195":1,"1193":1,"1196":1}}],["reduce",{"0":{"55":1,"323":1,"2179":1},"2":{"17":1,"94":1,"114":2,"134":1,"145":1,"160":1,"191":6,"199":2,"201":1,"210":3,"222":4,"236":1,"266":1,"297":1,"328":1,"570":1,"1518":1,"1951":2,"2159":1,"2281":1,"2410":1,"2411":2,"2631":1,"2721":1,"2881":1,"2885":1,"2915":1}}],["reduction",{"2":{"3":1,"15":1,"160":1}}],["redundant",{"2":{"8":1,"94":1,"114":1,"222":1,"249":5,"266":3,"293":1,"305":1,"308":1,"333":3,"1613":1}}],["renaming",{"0":{"243":1,"245":1},"2":{"182":1,"194":1,"2722":1}}],["renamed",{"0":{"271":1},"2":{"37":1,"50":1,"153":1,"183":1,"186":1,"207":1,"271":1}}],["rename",{"0":{"153":1,"207":1},"2":{"25":1,"65":1,"94":1,"133":1,"134":3,"145":2,"160":4,"176":4,"191":1,"199":1,"210":3,"222":13,"236":4,"243":1,"249":6,"266":3,"277":4,"285":3,"308":1,"331":1,"1340":1}}],["renderers",{"2":{"2862":1}}],["rendered",{"2":{"1468":1,"1902":1,"1904":1,"1906":1,"1909":1,"1955":1,"1956":1,"2146":1,"2148":1,"2150":1,"2153":1,"2283":1,"2749":2,"2750":1,"2780":1,"2781":1}}],["rendering",{"2":{"285":1,"1285":1,"1296":1,"1849":1,"1954":5,"1955":2,"1956":1,"2072":1,"2282":3,"2283":1,"2561":1,"2770":1}}],["renders",{"2":{"284":1,"676":1,"677":1,"1950":2,"1955":1,"1956":1,"2280":2,"2283":1}}],["render",{"2":{"31":1,"191":2,"210":1,"230":1,"1478":1,"1948":3,"1950":8,"1951":1,"1956":5,"1957":3,"2278":2,"2280":4,"2283":2,"2496":1,"2751":1}}],["remediated",{"2":{"2564":1}}],["remediation",{"0":{"2564":1}}],["remembered",{"0":{"2165":1},"2":{"2163":1,"2164":2,"2165":5,"2166":1,"2170":1}}],["remembers",{"2":{"2156":1}}],["remembering",{"2":{"561":1}}],["remember",{"2":{"492":2,"511":1,"566":1,"1407":1,"2050":1,"2163":1,"2164":2,"2165":1,"2166":1,"2170":1,"2290":1,"2291":1,"2293":1,"2324":1,"2459":2,"2620":1,"2936":1,"2942":1}}],["remnants",{"2":{"222":1}}],["remotes",{"2":{"2630":2}}],["remote",{"2":{"210":1,"236":1,"414":1,"415":1,"2039":3,"2270":1,"2398":5,"2546":3,"2566":3,"2601":2,"2630":9,"2632":9,"2644":2}}],["removal",{"0":{"89":1,"103":1,"126":1,"276":1,"284":1,"293":1,"304":1,"305":1,"314":1,"316":1,"331":1,"332":1,"2895":1},"1":{"104":1,"127":1,"2896":1,"2897":1},"2":{"114":1,"124":1,"126":1,"134":1,"240":1,"249":6,"279":2,"285":1,"750":1,"1993":2,"2895":2,"2896":2}}],["removes",{"2":{"27":1,"49":1,"50":1,"176":1,"451":1,"1377":1,"1407":1,"2410":1}}],["removed",{"0":{"151":1},"2":{"6":1,"8":1,"36":1,"50":6,"67":1,"86":2,"89":1,"128":1,"141":1,"142":1,"151":1,"194":2,"201":1,"206":1,"212":1,"217":1,"222":1,"228":1,"245":1,"249":1,"254":1,"255":1,"256":1,"262":1,"273":1,"276":1,"283":1,"284":1,"303":1,"304":1,"307":1,"314":1,"316":1,"327":1,"331":1,"332":1,"451":1,"1778":2,"1779":1,"1957":2,"2001":2,"2004":1,"2562":1,"2563":1,"2564":1,"2621":1,"2721":4,"2896":3}}],["remove",{"0":{"8":1,"128":1,"206":1,"208":1,"254":1,"327":1,"451":1,"2016":1,"2360":1},"1":{"2017":1,"2361":1},"2":{"4":1,"5":1,"31":3,"32":1,"34":3,"36":1,"38":1,"50":1,"64":1,"65":1,"70":1,"72":1,"75":9,"76":1,"86":1,"94":4,"114":17,"133":8,"134":15,"145":5,"160":10,"176":9,"188":15,"191":42,"199":33,"210":19,"222":23,"236":17,"249":22,"255":1,"257":1,"258":1,"259":2,"265":1,"266":22,"275":1,"277":16,"285":9,"294":10,"307":2,"308":14,"317":7,"328":3,"333":10,"403":1,"410":1,"451":2,"453":2,"467":1,"586":1,"685":1,"1359":1,"1516":1,"1789":1,"2001":3,"2004":3,"2005":2,"2064":1,"2177":1,"2291":1,"2310":1,"2360":1,"2497":1,"2578":1,"2579":1,"2608":1,"2684":1,"2685":1,"2719":2,"2721":1,"2776":1,"2885":1,"2914":1,"2916":1}}],["removing",{"2":{"3":1,"15":1,"50":1,"134":1,"182":1,"259":1,"272":1,"273":1,"1416":1,"1529":1,"1760":1}}],["remainder",{"2":{"1956":2,"2283":2}}],["remainders",{"2":{"236":1}}],["remains",{"2":{"320":1,"1457":1,"1592":1,"1931":1,"1996":1,"2923":1}}],["remain",{"2":{"312":1,"537":1,"2211":1,"2643":1,"2747":2}}],["remaining",{"2":{"22":1,"87":1,"103":1,"114":2,"126":1,"191":1,"199":2,"222":2,"249":1,"308":1,"317":2,"1280":1,"1523":1,"1949":3,"1956":1,"2171":1,"2279":3,"2283":1,"2288":1,"2289":1,"2899":1}}],["remapped",{"2":{"1210":1,"1956":2,"2283":2}}],["remapping",{"2":{"328":1,"1210":1,"1587":1}}],["remap",{"2":{"182":1,"1195":2,"1198":2,"1210":5,"1486":1,"1955":2,"2870":1}}],["refused",{"2":{"2560":1}}],["refuses",{"2":{"2560":2}}],["reflashing",{"2":{"2368":1,"2475":1}}],["reflash",{"2":{"1345":1,"1660":1}}],["reflected",{"2":{"1345":1,"2630":1}}],["reflection",{"2":{"536":1}}],["reflects",{"2":{"182":1,"2645":1}}],["reflect",{"2":{"90":1,"114":1,"182":1,"199":1,"262":1,"283":1,"285":1,"1378":1,"1672":1,"1829":1,"2457":1,"2710":1,"2721":1}}],["refills",{"2":{"717":4}}],["refill",{"2":{"716":1}}],["refine",{"2":{"74":1,"1942":1}}],["ref",{"2":{"695":3,"741":1,"1614":11,"1616":2}}],["refreshed",{"2":{"2207":1}}],["refreshes",{"2":{"645":1}}],["refreshing",{"2":{"1413":1}}],["refresh",{"2":{"387":1,"645":5,"699":1,"1929":1,"1933":1,"1955":1,"2503":2,"2542":2}}],["refers",{"2":{"1375":1,"2835":1}}],["referencing",{"2":{"1497":1,"1513":1}}],["referenced",{"0":{"589":1},"2":{"1844":1,"2066":1,"2552":1,"2630":1}}],["reference",{"0":{"1614":1,"1775":1,"1776":1,"2294":1,"2844":1},"1":{"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1,"2860":1,"2861":1,"2862":1,"2863":1,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1,"2869":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2875":1,"2876":1},"2":{"95":1,"182":1,"191":2,"199":1,"210":1,"294":1,"510":1,"597":2,"604":2,"695":1,"1297":1,"1378":1,"1407":1,"1419":1,"1427":1,"1527":1,"1614":8,"1616":4,"1763":1,"1775":1,"1917":1,"1922":1,"2446":1,"2463":1,"2502":1,"2561":1,"2723":1,"2777":1,"2851":1,"2901":1}}],["references",{"0":{"1921":1},"1":{"1922":1,"1923":1},"2":{"27":2,"38":1,"64":1,"95":1,"114":1,"133":1,"134":1,"191":4,"210":2,"222":2,"245":1,"266":1,"285":1,"1957":2,"2630":1}}],["refereed",{"2":{"1197":2}}],["referring",{"2":{"603":1,"754":1}}],["referred",{"2":{"212":1,"1191":1,"1194":1,"2550":1,"2551":1,"2555":1,"2632":1}}],["refer",{"2":{"233":1,"245":1,"503":1,"600":1,"668":1,"683":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1197":1,"1206":1,"1244":1,"1325":1,"1346":1,"1359":1,"1394":1,"1550":1,"1622":1,"1678":1,"1679":2,"1707":1,"1724":1,"1991":1,"2030":1,"2050":1,"2262":1,"2293":1,"2323":1,"2476":1,"2554":1,"2582":1,"2694":1,"2695":1,"2696":1,"2895":1,"2935":1}}],["refs",{"2":{"114":2,"160":1,"2627":1,"2632":2}}],["refactoring",{"0":{"125":1,"169":1,"182":1,"183":1,"184":1,"185":1,"186":1,"188":1,"618":1},"1":{"170":1},"2":{"187":1,"188":1,"191":3,"198":1,"199":1,"210":1,"235":1,"236":1,"244":1,"249":1,"266":1,"294":1,"397":1,"618":1,"2646":1,"2666":1,"2722":1}}],["refactored",{"2":{"49":1}}],["refactor",{"0":{"17":1,"18":1,"32":1,"33":1,"60":1,"87":1,"263":1},"1":{"34":1,"88":1},"2":{"17":1,"32":1,"49":1,"51":1,"72":1,"75":3,"86":1,"93":1,"94":2,"114":4,"134":2,"145":5,"160":4,"176":4,"190":1,"191":6,"199":5,"210":10,"222":4,"236":3,"249":19,"266":8,"277":8,"285":5,"294":2,"308":1,"317":15,"328":6,"333":3,"2719":1}}],["refactors",{"0":{"29":1,"58":1},"1":{"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1},"2":{"16":1,"618":1,"2721":1}}],["reformatting",{"2":{"317":1}}],["reformat",{"2":{"1":1,"114":1}}],["res2",{"2":{"2289":1,"2294":1}}],["res1",{"2":{"2289":1,"2294":1}}],["resd",{"2":{"2216":1}}],["rescue",{"2":{"1824":1,"2730":1}}],["reschedules",{"2":{"654":1}}],["resistant",{"2":{"1409":1,"1410":4,"1413":1}}],["resistance",{"2":{"741":2,"857":2,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":2,"1126":2,"1160":2,"1410":1,"2260":1,"2851":2}}],["resistors",{"2":{"1310":1,"1552":1,"2257":1,"2260":2}}],["resistor",{"2":{"236":1,"758":2,"854":2,"857":2,"918":2,"922":2,"953":2,"956":2,"987":2,"990":2,"1021":2,"1024":2,"1055":2,"1058":2,"1089":2,"1092":2,"1123":2,"1126":2,"1157":2,"1160":2,"1194":3,"1202":1,"1294":1,"1552":2,"2660":3,"2664":1}}],["res",{"2":{"698":2,"1832":3,"2215":9}}],["resynchronize",{"2":{"2630":3,"2723":1}}],["resynchronizing",{"0":{"2628":1,"2630":1},"1":{"2629":1,"2630":1},"2":{"2625":1}}],["resync",{"2":{"559":1,"1351":1,"2847":1,"2883":1}}],["responds",{"2":{"2052":1}}],["responding",{"2":{"747":1}}],["respond",{"2":{"608":1,"794":1,"1545":1,"1846":1,"2069":1}}],["responsibility",{"2":{"397":1}}],["responsible",{"2":{"360":1,"616":1,"619":1,"1294":1,"2303":1,"2572":1,"2677":1,"2757":1,"2928":3}}],["responsiveness",{"2":{"1413":1,"1846":2,"1978":1,"2069":2,"2303":1,"2757":1,"2864":1,"2871":1}}],["responsive",{"2":{"320":1,"411":1,"644":1,"2069":1,"2923":1}}],["responses",{"2":{"579":1,"2689":1}}],["response",{"2":{"312":1,"765":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"794":1,"795":1,"1413":3,"2052":10,"2468":1,"2560":2}}],["respected",{"2":{"2750":1}}],["respecting",{"2":{"2344":1}}],["respectively",{"2":{"646":1,"667":1,"682":1,"802":1,"831":1,"857":1,"860":1,"890":1,"922":1,"925":1,"956":1,"959":1,"990":1,"993":1,"1024":1,"1027":1,"1058":1,"1061":1,"1092":1,"1095":1,"1126":1,"1129":1,"1160":1,"1163":1,"1216":1,"1492":1,"1633":1,"1736":1,"1929":1,"2260":1,"2323":1,"2324":1,"2554":1,"2644":1,"2661":1,"2776":1,"2937":1}}],["respective",{"2":{"50":1,"210":1,"233":1,"234":1,"283":1,"567":1,"1195":1,"1198":1,"1297":1,"1402":1,"1442":1,"1839":1,"1931":3,"2059":1,"2221":1,"2324":1,"2550":1,"2728":1,"2747":1,"2750":1,"2767":1,"2782":1}}],["respect",{"2":{"14":1,"98":1,"176":1,"210":1,"222":1,"285":2,"294":1,"619":1,"2688":1,"2749":1,"2772":1}}],["resembles",{"2":{"2775":1}}],["reserves",{"2":{"2685":1}}],["reserved",{"2":{"518":1,"1696":1,"1948":1,"2278":1,"2442":1,"2496":1,"2544":1,"2744":1}}],["researchers",{"2":{"312":1}}],["reset6",{"2":{"2684":1}}],["resets",{"2":{"562":1,"1487":1,"1489":1,"1523":1,"1956":1,"2283":1,"2302":1,"2504":1,"2505":1,"2684":1,"2745":1,"2749":2}}],["resetting",{"0":{"2789":1},"2":{"230":1,"745":1,"1317":1,"1585":1,"1799":1,"2678":1}}],["reset",{"0":{"141":1,"167":1,"1364":1,"1806":1,"2700":1,"2790":1},"2":{"49":2,"114":2,"141":3,"160":1,"167":2,"176":2,"188":1,"191":4,"199":2,"210":1,"308":2,"390":2,"391":3,"392":1,"405":1,"417":2,"490":6,"492":3,"649":6,"650":1,"651":1,"681":2,"682":1,"683":2,"1262":1,"1282":1,"1283":1,"1312":1,"1317":3,"1362":1,"1364":1,"1375":2,"1407":3,"1445":2,"1487":1,"1489":1,"1527":1,"1583":2,"1608":1,"1674":2,"1696":1,"1747":1,"1802":1,"1806":1,"1840":1,"1934":5,"1940":2,"1941":2,"1992":1,"1999":1,"2001":1,"2002":2,"2016":1,"2020":1,"2060":1,"2266":4,"2281":1,"2294":2,"2302":2,"2303":5,"2307":1,"2308":3,"2309":2,"2310":3,"2311":3,"2312":4,"2316":1,"2376":3,"2379":3,"2381":2,"2382":2,"2383":1,"2384":2,"2386":5,"2388":5,"2389":2,"2390":2,"2391":5,"2397":3,"2411":1,"2426":2,"2476":1,"2478":4,"2480":5,"2482":4,"2484":1,"2486":1,"2488":1,"2492":1,"2501":3,"2505":1,"2605":2,"2608":1,"2630":1,"2644":1,"2682":1,"2684":2,"2700":5,"2702":1,"2721":1,"2749":11,"2789":2,"2790":2,"2791":3,"2845":1,"2863":1}}],["resu",{"2":{"2216":1}}],["resume",{"0":{"1373":1},"2":{"210":1,"263":2,"1373":1}}],["results",{"0":{"372":1},"2":{"99":1,"103":1,"126":1,"236":1,"263":1,"359":2,"371":1,"373":1,"431":1,"514":1,"576":1,"1516":1,"1939":1,"1940":1,"1979":1,"2372":1,"2918":1,"2922":1,"2932":2}}],["resulting",{"2":{"25":1,"119":1,"368":1,"578":1,"584":1,"587":1,"1596":1,"1616":1,"1661":1,"1979":1,"2401":1,"2589":1}}],["result",{"2":{"3":2,"8":1,"15":2,"87":1,"141":1,"166":1,"182":1,"371":2,"372":1,"538":1,"655":1,"698":4,"747":1,"752":2,"794":2,"1364":1,"1421":1,"1460":1,"1486":1,"1487":1,"1493":1,"1512":1,"1513":1,"1606":1,"1616":1,"1675":1,"1939":1,"1940":1,"1971":1,"1979":2,"2302":1,"2310":1,"2562":1,"2563":1,"2590":1,"2749":2,"2750":2,"2754":1,"2895":1,"2921":2,"2941":1}}],["resort",{"2":{"1939":1,"2324":1,"2562":1}}],["resonance",{"2":{"1679":2}}],["resonant",{"2":{"1679":1}}],["resources",{"0":{"2274":1,"2571":1,"2574":1,"2635":1,"2636":1,"2637":1,"2638":1,"2639":1},"1":{"2636":1,"2637":1,"2638":1,"2639":1},"2":{"1410":1,"2292":1,"2546":1,"2558":1,"2566":1,"2574":2,"2612":1,"2635":1,"2644":1,"2685":1,"2704":1,"2727":1,"2750":2,"2755":1,"2889":1,"2934":1}}],["resource",{"2":{"123":1,"573":1,"717":1,"1656":1,"2704":1,"2758":1,"2766":1,"2881":1}}],["resolving",{"0":{"2626":1},"1":{"2627":1},"2":{"214":1,"2398":2,"2625":1,"2719":2}}],["resolved",{"2":{"2627":1}}],["resolves",{"2":{"1604":1,"1611":1}}],["resolve",{"2":{"95":1,"191":3,"236":2,"294":1,"308":2,"333":1,"568":1,"611":1,"2627":1}}],["resolution",{"0":{"1979":1},"2":{"134":1,"183":2,"222":2,"308":1,"317":1,"328":2,"698":3,"741":2,"1289":1,"1659":2,"1660":2,"1734":3,"1736":1,"1933":1,"1964":8,"1979":11,"2039":3,"2040":1,"2215":2,"2216":5,"2217":12,"2851":2,"2858":1}}],["resolutions",{"0":{"2215":1},"2":{"63":1,"1659":1,"1660":4,"1964":1,"2749":1}}],["rests",{"2":{"2838":1}}],["resting",{"2":{"1736":1,"1743":1,"1751":1,"2421":1}}],["restricts",{"2":{"2729":1}}],["restricted",{"2":{"2695":1,"2729":1,"2738":2}}],["restriction",{"2":{"2680":1}}],["restrictions",{"0":{"2728":1},"2":{"2679":1,"2688":1,"2726":1,"2728":3,"2740":1,"2741":1,"2742":2}}],["restrictive",{"2":{"1522":1,"2729":1,"2743":1}}],["restrict",{"2":{"328":1}}],["restructuring",{"2":{"133":1,"617":1}}],["restructure",{"0":{"113":1,"133":1},"2":{"113":1,"176":2,"328":1,"523":1}}],["rest",{"2":{"243":1,"331":1,"519":1,"751":1,"752":1,"753":1,"1736":2,"1789":3,"2408":1,"2417":1,"2421":1,"2425":1,"2475":1,"2542":1,"2613":1,"2633":1,"2655":1,"2857":1,"2936":2}}],["restarted",{"2":{"1956":1}}],["restart",{"2":{"199":2,"683":1,"1313":1,"1485":1,"2653":2,"2673":1,"2675":1}}],["restarting",{"2":{"191":1}}],["restoration",{"2":{"160":1}}],["restored",{"2":{"279":1,"2381":1}}],["restore",{"2":{"62":1,"199":1,"210":3,"222":2,"285":1,"294":1,"328":1,"408":1,"1317":1,"1378":1}}],["revoke",{"2":{"2561":1,"2563":1}}],["revealed",{"2":{"312":1}}],["reverence",{"2":{"741":1,"2851":1}}],["reversed",{"2":{"2296":1}}],["reverses",{"2":{"2160":2}}],["reverse",{"0":{"1869":1,"1870":1,"1895":1,"1896":1,"2095":1,"2096":1,"2133":1,"2134":1,"2332":1},"2":{"191":1,"1377":1,"1483":1,"1489":1,"1519":1,"1842":2,"2043":1,"2062":3,"2159":1,"2160":2,"2161":1,"2174":2,"2192":2,"2199":1,"2325":1,"2505":1,"2518":2,"2525":2,"2526":3,"2533":1,"2560":1}}],["reversing",{"2":{"13":1,"2627":1}}],["reverted",{"2":{"176":1}}],["revert",{"2":{"114":2,"134":2,"145":1,"160":1,"176":2,"191":2,"199":5,"210":3,"217":1,"222":1,"236":1,"285":1,"2206":1,"2207":1,"2209":1,"2905":1}}],["rev7",{"2":{"277":1}}],["rev6",{"0":{"1317":1},"2":{"222":1,"387":2,"427":2,"450":2,"451":2,"452":1,"453":1,"1317":1,"1486":1,"1521":1,"2401":2}}],["reva",{"2":{"154":2}}],["revamp",{"2":{"74":1,"210":1}}],["reviewing",{"2":{"611":1,"2718":1,"2724":1}}],["reviewed",{"2":{"611":1}}],["reviewer",{"2":{"611":1}}],["reviews",{"2":{"397":1,"2721":1,"2724":2}}],["review",{"0":{"2602":1,"2724":1},"2":{"285":1,"397":2,"411":1,"1338":1,"2562":1,"2602":2,"2719":1,"2721":1,"2722":1}}],["revisit",{"2":{"537":1,"539":1}}],["revision",{"2":{"10":2,"17":1,"60":1,"86":1,"114":1,"236":3,"294":1,"440":1,"625":4,"630":1,"634":1,"636":1,"640":1,"643":1,"644":1,"648":1,"652":1,"1408":1,"1426":1,"1432":1,"1831":1,"2410":2,"2443":3,"2446":1}}],["revisions",{"2":{"10":1,"58":1,"114":1,"145":1,"249":1,"262":1,"277":1,"308":1,"405":1,"555":1,"559":1,"617":2,"750":1,"2443":4,"2677":1}}],["revised",{"2":{"236":1}}],["reviung61",{"2":{"154":2}}],["reviung5",{"2":{"154":2}}],["reviung53",{"2":{"154":2}}],["reviung41",{"2":{"154":2}}],["reviung39",{"2":{"154":2}}],["reviung34",{"2":{"154":2}}],["reviung33",{"2":{"154":2}}],["reviung",{"2":{"154":7,"160":2}}],["rev0",{"2":{"154":2}}],["rev",{"2":{"114":1,"134":3,"222":6,"226":2,"249":1,"253":1,"2050":1,"2627":4}}],["rev5",{"2":{"114":1,"222":1,"435":1,"2580":4,"2607":2}}],["rev4",{"2":{"114":1,"134":1,"210":1,"226":1,"285":1,"427":2,"471":3,"472":2,"482":1,"483":2,"681":3,"1362":3,"1432":2,"2377":2,"2384":2,"2410":5,"2576":3}}],["rev3",{"2":{"57":2,"86":4,"102":1,"134":1,"154":2,"191":1,"241":4,"253":1,"266":1,"311":4,"317":2,"432":2,"452":1,"453":1,"681":1,"1317":1,"2410":1,"2441":2,"2442":1,"2443":2,"2577":1,"2622":6}}],["rev1+rev2",{"2":{"72":1}}],["rev1",{"2":{"45":1,"55":4,"58":2,"67":3,"86":5,"102":5,"122":3,"144":2,"154":34,"160":1,"191":1,"210":1,"218":2,"222":5,"226":2,"236":2,"241":12,"249":1,"253":14,"266":2,"285":1,"291":3,"300":4,"311":1,"317":1,"681":1,"1385":1,"1387":2,"1402":2,"2266":3,"2443":2}}],["revs",{"2":{"45":3}}],["rev2",{"2":{"45":1,"55":29,"57":2,"67":3,"70":24,"72":1,"86":2,"102":6,"114":3,"145":1,"154":12,"176":3,"210":1,"222":2,"226":1,"236":3,"241":6,"277":1,"311":2,"317":1,"328":3,"369":1,"438":1,"681":1,"2441":1,"2443":2}}],["revx",{"2":{"32":1}}],["reliability",{"2":{"2324":1}}],["reliably",{"2":{"2312":1,"2324":1}}],["relies",{"2":{"2603":1}}],["relieves",{"2":{"2293":1}}],["relied",{"2":{"1936":1}}],["relying",{"2":{"1788":1,"1844":1,"2066":1}}],["rely",{"2":{"210":1,"524":1,"2583":1,"2609":1,"2757":1}}],["relay",{"2":{"1675":2}}],["relaxed",{"2":{"562":1,"1608":1,"1609":1,"2719":2}}],["relax",{"2":{"199":1}}],["relates",{"2":{"2839":1}}],["related",{"2":{"2":1,"16":1,"124":1,"131":1,"163":1,"175":1,"187":1,"188":1,"191":2,"199":1,"236":1,"265":2,"279":1,"338":3,"397":1,"454":1,"635":1,"666":1,"1337":1,"1373":1,"1421":1,"1422":1,"2303":1,"2453":1,"2496":1,"2584":1,"2633":1,"2673":1,"2710":1,"2721":3,"2750":2,"2755":1,"2882":1}}],["relation",{"2":{"2862":1}}],["relating",{"2":{"203":1,"616":1}}],["relatively",{"2":{"279":1,"361":1,"1522":1,"1628":1,"2498":1,"2631":1}}],["relative",{"0":{"1971":1},"2":{"160":1,"176":1,"308":1,"1481":1,"1532":1,"1622":1,"1633":1,"1968":2,"2495":1,"2576":1,"2588":1,"2622":1,"2769":1}}],["relatives",{"2":{"142":1}}],["reloading",{"2":{"459":1}}],["reload",{"0":{"1899":1,"2143":1},"2":{"160":1,"458":1,"1313":2,"1899":1,"2143":1,"2192":2}}],["relocalize",{"2":{"114":1}}],["relocations",{"2":{"238":1}}],["relocating",{"0":{"43":1},"2":{"236":1}}],["relocate",{"2":{"113":1,"114":2,"133":3,"134":3,"160":2,"188":1,"191":1,"199":1,"210":1,"222":1,"236":1,"277":5,"294":1,"317":2}}],["relocated",{"0":{"41":1,"54":1},"1":{"42":1,"43":1,"55":1,"56":1,"57":1,"58":1},"2":{"201":1}}],["releasing",{"2":{"562":1,"769":1,"1512":1,"1612":1,"1780":1,"1933":1,"2225":1,"2605":1,"2643":2,"2721":1,"2835":1,"2912":1,"2918":1,"2921":3}}],["releases",{"0":{"1611":1},"2":{"717":1,"1425":1,"1442":2,"1611":1,"2309":1,"2421":1,"2750":2,"2755":1,"2816":1}}],["released",{"2":{"43":1,"57":1,"320":1,"628":1,"1440":4,"1441":2,"1446":1,"1492":2,"1611":1,"1612":1,"1684":2,"1756":1,"1776":1,"1778":1,"1917":1,"1933":1,"1985":1,"1987":1,"2041":1,"2294":1,"2302":3,"2303":1,"2312":2,"2468":1,"2643":5,"2814":1,"2815":1,"2827":1,"2867":1,"2906":3,"2907":1,"2911":1,"2912":2,"2914":1,"2918":2,"2923":1,"2932":1}}],["release",{"2":{"23":1,"56":1,"111":1,"191":1,"201":1,"210":1,"238":1,"249":1,"251":1,"266":1,"268":1,"277":1,"279":1,"386":1,"396":1,"561":2,"562":1,"629":2,"769":1,"1201":1,"1350":1,"1359":2,"1374":1,"1378":3,"1392":1,"1407":2,"1441":1,"1442":2,"1449":1,"1511":2,"1512":3,"1523":1,"1588":1,"1610":1,"1611":6,"1674":1,"1748":1,"1779":1,"1780":1,"1824":1,"1928":1,"1992":1,"2017":1,"2021":1,"2252":1,"2293":1,"2302":4,"2324":1,"2338":2,"2339":2,"2560":2,"2590":1,"2594":1,"2614":1,"2621":1,"2912":2,"2913":1,"2914":1}}],["relevant",{"2":{"7":1,"31":1,"132":1,"637":1,"678":1,"1932":1,"2420":1,"2677":1,"2678":4,"2719":1,"2722":1,"2747":1,"2937":1}}],["repairing",{"2":{"2421":1}}],["reparenting",{"2":{"536":1}}],["repurposing",{"2":{"1835":1}}],["repetition",{"2":{"2167":1}}],["repetitively",{"2":{"1491":1}}],["repetitive",{"2":{"1434":1}}],["repeating",{"0":{"2159":1},"2":{"1780":1,"2156":1,"2161":1,"2163":2,"2164":1,"2165":1,"2167":1,"2168":5,"2169":3,"2765":1,"2766":1}}],["repeat",{"0":{"213":1,"1505":1,"1506":1,"1780":1,"2156":1,"2157":1,"2530":1},"1":{"2157":1,"2158":1,"2159":1,"2160":1,"2161":1,"2162":1,"2163":1,"2164":1,"2165":1,"2166":1,"2167":1,"2168":1,"2169":1,"2170":1},"2":{"195":3,"213":6,"222":3,"231":1,"308":1,"387":1,"562":3,"654":2,"684":1,"1492":9,"1780":6,"1933":1,"2156":7,"2157":2,"2158":3,"2159":9,"2160":3,"2161":4,"2162":4,"2164":2,"2167":8,"2168":8,"2169":2,"2170":1,"2184":3,"2530":4,"2914":5}}],["repeatedly",{"2":{"1362":1,"1416":1,"2191":1,"2297":1}}],["repeated",{"0":{"2167":1,"2168":1},"2":{"64":1,"93":1,"191":1,"312":1,"654":2,"685":1,"1409":1,"1780":1,"1941":1,"2163":2,"2164":1,"2166":1,"2167":4,"2168":1,"2169":4,"2170":1,"2563":1,"2765":2,"2914":1}}],["repeats",{"2":{"63":1,"213":1}}],["replays",{"2":{"1655":1}}],["replay",{"0":{"1655":1},"1":{"1656":1,"1657":1,"1658":1},"2":{"1655":5,"2511":2,"2627":1}}],["replacing",{"0":{"27":1},"2":{"565":1,"572":2,"628":1,"1622":1,"2323":1,"2601":1}}],["replacement",{"0":{"623":1,"1764":1,"1765":1,"1766":1,"1767":1},"2":{"172":1,"189":1,"215":1,"240":1,"279":1,"1385":1,"1528":1,"1532":1,"1764":1,"1770":1,"1773":1,"1775":5,"1778":2,"1779":1,"2205":1,"2557":1,"2678":1,"2679":1,"2680":1,"2681":1,"2706":1}}],["replacements",{"2":{"172":1,"2888":1}}],["replaced",{"2":{"7":1,"8":1,"27":1,"169":1,"184":1,"195":3,"254":1,"542":1,"684":1,"1378":1,"1395":1,"1464":1,"1981":1,"2427":1,"2721":1,"2896":1}}],["replace",{"2":{"5":1,"7":1,"31":4,"34":1,"50":1,"172":1,"176":1,"191":1,"199":2,"222":1,"240":4,"266":1,"387":1,"567":1,"620":1,"1329":1,"1375":1,"1416":2,"1440":1,"1461":1,"1466":2,"1528":2,"1532":1,"1585":2,"1622":1,"1666":1,"1760":1,"1982":1,"2249":4,"2411":2,"2600":1,"2601":1,"2905":2}}],["replicated",{"2":{"2561":1}}],["replicate",{"2":{"2174":1}}],["replicates",{"2":{"1650":1,"1661":1}}],["replied",{"2":{"408":1}}],["replugging",{"2":{"1484":1}}],["replug",{"2":{"683":1,"1345":1}}],["reply",{"2":{"380":1}}],["reproducing",{"2":{"1471":1,"2561":1}}],["reproduce",{"2":{"263":1}}],["reprimanded",{"2":{"619":1}}],["repress",{"0":{"1612":1},"2":{"285":1,"1612":4}}],["representing",{"0":{"1595":1,"1827":1},"2":{"1507":1,"1508":1,"1509":1,"1521":1,"1983":4,"2472":1,"2555":1,"2839":1}}],["represented",{"2":{"763":1,"1735":1,"2750":1,"2862":1}}],["represents",{"2":{"262":1,"595":1,"1517":1,"1533":1,"1840":5,"1983":1,"2060":5,"2165":1,"2288":1,"2293":1,"2410":1,"2459":2,"2627":1,"2776":1,"2813":1,"2833":1,"2942":1}}],["representation",{"2":{"199":1,"576":1,"1375":1,"1378":1,"2446":1,"2777":1,"2844":1,"2929":1}}],["represent",{"2":{"145":1,"493":1,"1519":1,"1595":1,"1827":1,"1983":1,"2459":2,"2496":1,"2627":1,"2729":1,"2776":1}}],["rep",{"2":{"213":1,"222":1,"2157":1,"2158":1,"2530":1}}],["reposition",{"2":{"1789":1}}],["repositories",{"2":{"26":1,"1427":2,"2719":1}}],["repository",{"0":{"2585":1,"2596":1},"2":{"21":1,"126":1,"163":1,"182":2,"224":1,"228":3,"233":1,"241":1,"253":1,"265":4,"268":3,"270":1,"275":1,"281":1,"288":2,"308":1,"393":1,"403":1,"405":2,"408":1,"456":1,"574":1,"586":3,"590":1,"592":1,"611":5,"1340":1,"1457":1,"1622":3,"2401":1,"2451":1,"2494":1,"2583":3,"2585":2,"2587":4,"2588":1,"2590":2,"2591":2,"2592":1,"2596":1,"2600":1,"2602":1,"2603":1,"2619":1,"2625":1,"2628":1,"2630":5,"2632":3,"2655":1,"2676":3,"2710":1,"2719":1,"2720":1,"2721":4,"2724":1,"2895":2,"2896":2}}],["reported",{"2":{"1373":1,"1410":1,"1516":1,"1734":1,"2294":1,"2501":1,"2710":1,"2942":1}}],["reporting",{"2":{"312":1,"562":1,"1410":1,"2039":2,"2826":1}}],["reports",{"0":{"1983":1},"1":{"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1},"2":{"160":1,"175":2,"176":2,"210":1,"285":1,"562":2,"606":1,"644":1,"684":1,"1968":2,"1974":1,"1978":3,"1979":3,"1981":1,"1982":2,"1983":2,"1987":1,"1990":1,"2045":1,"2050":4,"2284":1,"2822":1,"2875":3}}],["report",{"0":{"2026":1,"2028":2},"1":{"2027":1,"2029":2},"2":{"50":4,"74":1,"114":2,"145":3,"190":1,"191":6,"199":3,"222":1,"236":3,"285":2,"308":1,"317":1,"333":1,"360":1,"433":1,"562":1,"1353":2,"1359":2,"1375":2,"1514":1,"1515":2,"1636":1,"1640":1,"1641":1,"1642":1,"1643":1,"1644":1,"1645":1,"1646":1,"1647":1,"1744":1,"1745":1,"1747":1,"1760":1,"1778":3,"1779":3,"1834":1,"1940":2,"1941":1,"1976":15,"1977":5,"1978":5,"1979":1,"1980":2,"1981":18,"1982":18,"1983":16,"1985":5,"1986":11,"1987":12,"1988":1,"1989":10,"1990":13,"2007":4,"2008":4,"2013":1,"2018":1,"2020":1,"2025":1,"2026":1,"2028":1,"2029":1,"2046":2,"2050":2,"2051":1,"2052":13,"2054":1,"2056":1,"2265":1,"2465":1,"2506":2,"2833":1}}],["repo",{"0":{"6":1},"2":{"6":1,"22":1,"77":1,"283":1,"288":1,"416":1,"427":1,"446":1,"447":1,"596":1,"613":1,"1427":1,"1479":1,"1622":2,"2254":1,"2266":1,"2384":1,"2451":1,"2627":2,"2632":6,"2633":1,"2721":1}}],["q=is",{"2":{"2721":1}}],["ql",{"2":{"2312":14}}],["qn",{"2":{"414":3,"415":3,"416":2,"417":2}}],["qr",{"2":{"328":1}}],["qc60",{"2":{"253":2}}],["q9",{"2":{"249":1}}],["q8",{"2":{"249":1}}],["q7",{"2":{"249":1}}],["q4z",{"2":{"241":2}}],["q4",{"2":{"226":2,"236":1}}],["q0",{"2":{"222":2,"226":4,"236":1}}],["qol",{"2":{"222":1}}],["q5",{"2":{"191":1,"249":1}}],["q6",{"2":{"191":1}}],["q3",{"2":{"191":1,"236":1}}],["qff",{"0":{"2765":1},"2":{"191":1,"266":1,"465":1,"466":1,"2748":6,"2750":6,"2758":2,"2760":8,"2761":12,"2762":2,"2763":1,"2764":1,"2765":1}}],["qgfimagefile",{"2":{"249":1}}],["qgf",{"0":{"2765":1},"2":{"191":1,"266":1,"464":1,"2748":4,"2750":6,"2759":1,"2760":4,"2761":2,"2762":1,"2763":1,"2764":1,"2765":1,"2766":2,"2767":5,"2768":10,"2769":3,"2770":7,"2771":3,"2772":6,"2773":3}}],["q2m3ueu",{"2":{"681":1}}],["q2",{"2":{"176":1,"236":1}}],["q",{"2":{"160":1,"191":1,"266":1,"277":2,"369":1,"437":1,"460":1,"587":2,"1599":1,"1616":1,"2310":1,"2503":3,"2535":3,"2550":1,"2556":1,"2676":1,"2880":3}}],["qaz",{"2":{"154":2}}],["qpocket",{"2":{"160":2}}],["qpockets",{"2":{"154":4}}],["qp",{"2":{"145":1,"176":1,"191":2,"199":1,"210":1,"222":1,"236":4,"249":2,"285":1,"328":1,"2749":33,"2750":104,"2754":6,"2755":2,"2757":1}}],["qk100",{"2":{"266":1}}],["qk21",{"2":{"236":1}}],["qk",{"0":{"141":1,"167":1,"327":1},"2":{"120":8,"141":2,"167":2,"176":3,"188":4,"189":1,"191":8,"194":2,"199":5,"213":6,"231":26,"266":1,"277":1,"285":1,"307":1,"324":1,"325":2,"369":1,"373":3,"561":1,"587":2,"591":1,"649":2,"683":1,"1345":1,"1362":1,"1425":1,"1435":4,"1479":4,"1480":1,"1483":2,"1484":4,"1487":6,"1489":15,"1515":6,"1524":3,"1527":22,"1537":7,"1588":1,"1600":3,"1606":8,"1655":5,"1666":1,"1667":2,"1668":2,"1674":13,"1738":32,"1756":1,"1757":1,"1758":1,"1774":3,"1784":1,"1791":1,"1792":2,"1823":2,"1828":1,"1842":11,"1919":144,"1927":19,"2011":32,"2062":15,"2157":4,"2158":4,"2174":11,"2184":2,"2209":4,"2216":9,"2250":7,"2290":3,"2293":2,"2297":7,"2309":2,"2312":2,"2314":2,"2325":8,"2370":15,"2374":16,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2504":7,"2505":15,"2506":6,"2507":3,"2508":7,"2509":15,"2510":1,"2511":5,"2512":2,"2513":32,"2514":1,"2515":2,"2517":1,"2518":11,"2519":35,"2520":144,"2521":19,"2524":3,"2525":11,"2526":15,"2528":3,"2529":32,"2530":4,"2531":7,"2532":7,"2533":8,"2548":35,"2644":3,"2678":1,"2720":1,"2745":8,"2789":2,"2790":2,"2904":10,"2905":3}}],["q11",{"2":{"249":1}}],["q1v1",{"2":{"226":4,"236":1,"266":1}}],["q1",{"2":{"114":1,"191":1,"226":4}}],["qw",{"2":{"1599":4,"1616":1}}],["qwertz",{"0":{"2831":1}}],["qwertlekeys",{"2":{"222":1}}],["qwertykeys",{"2":{"2560":1}}],["qwertyydox",{"2":{"253":2}}],["qwerty",{"0":{"2286":1,"2830":1},"2":{"92":1,"176":2,"257":1,"258":1,"259":2,"629":1,"1407":1,"1416":2,"1419":1,"1420":1,"1436":1,"1443":1,"1479":1,"1613":1,"1614":3,"1616":2,"1947":2,"2161":1,"2277":2,"2285":1,"2286":1,"2295":1,"2471":1,"2472":1,"2473":4,"2551":1,"2555":1,"2788":2,"2880":4,"2915":1}}],["qwiic",{"0":{"128":1},"2":{"74":2,"128":2,"134":6}}],["quokka",{"2":{"249":1}}],["quote",{"2":{"1686":1,"2503":1,"2527":1,"2537":1,"2547":1}}],["quoted",{"2":{"145":1,"669":1}}],["quot",{"0":{"1359":4,"1539":2,"1594":2,"2170":2,"2307":2,"2497":2,"2625":2},"2":{"5":2,"14":2,"75":2,"92":2,"110":8,"114":4,"119":10,"134":4,"137":2,"145":6,"174":2,"175":2,"176":5,"182":4,"187":2,"189":2,"190":2,"191":8,"194":2,"199":6,"203":2,"206":2,"210":6,"212":16,"213":2,"221":2,"222":14,"230":2,"234":2,"236":8,"245":4,"249":10,"263":6,"266":6,"277":2,"289":2,"294":2,"297":2,"307":2,"308":8,"338":6,"369":1,"373":4,"397":2,"406":4,"408":2,"431":2,"486":2,"487":2,"514":2,"519":6,"523":2,"559":6,"562":2,"580":2,"581":2,"587":2,"611":6,"614":2,"631":2,"646":2,"654":2,"655":2,"668":4,"669":2,"674":2,"695":2,"696":2,"711":2,"716":2,"743":2,"750":2,"751":2,"752":2,"753":2,"794":2,"920":4,"1091":4,"1125":4,"1195":4,"1197":2,"1198":4,"1211":2,"1280":2,"1282":4,"1283":8,"1287":2,"1292":4,"1324":8,"1327":4,"1329":2,"1345":2,"1347":4,"1348":2,"1359":2,"1362":2,"1406":2,"1407":4,"1409":2,"1413":4,"1419":4,"1421":2,"1427":2,"1432":2,"1438":66,"1440":2,"1442":14,"1449":2,"1465":4,"1466":4,"1472":2,"1478":2,"1480":6,"1483":2,"1497":2,"1498":1,"1500":1,"1509":1,"1528":2,"1529":2,"1538":4,"1539":2,"1544":2,"1583":2,"1587":4,"1589":2,"1591":8,"1594":6,"1596":2,"1599":2,"1610":2,"1624":4,"1636":2,"1641":2,"1642":2,"1661":4,"1669":2,"1675":6,"1680":2,"1712":2,"1735":2,"1790":2,"1791":6,"1822":2,"1830":2,"1942":2,"1951":2,"1971":4,"1983":2,"2041":2,"2052":6,"2064":2,"2072":2,"2156":4,"2159":6,"2160":2,"2161":4,"2162":14,"2163":2,"2165":4,"2168":2,"2170":2,"2171":2,"2174":2,"2178":12,"2224":2,"2254":2,"2266":2,"2271":2,"2281":2,"2295":2,"2310":2,"2312":5,"2313":14,"2314":12,"2315":8,"2316":18,"2318":4,"2323":6,"2324":2,"2377":2,"2384":2,"2398":10,"2407":2,"2416":2,"2420":2,"2426":6,"2429":8,"2465":2,"2479":2,"2487":2,"2495":2,"2497":2,"2503":2,"2525":2,"2527":1,"2537":2,"2545":2,"2546":6,"2547":1,"2555":8,"2556":5,"2559":2,"2560":2,"2561":4,"2566":6,"2568":3,"2579":2,"2602":6,"2607":4,"2615":4,"2620":2,"2621":2,"2629":2,"2632":4,"2633":2,"2643":4,"2644":4,"2676":14,"2689":2,"2704":2,"2706":2,"2713":4,"2714":2,"2719":6,"2720":2,"2721":15,"2722":2,"2729":2,"2731":2,"2734":2,"2748":2,"2749":2,"2750":4,"2754":2,"2758":2,"2765":2,"2766":4,"2776":6,"2777":142,"2778":2,"2787":2,"2845":16,"2846":4,"2850":2,"2857":2,"2861":4,"2862":24,"2864":10,"2865":18,"2868":2,"2869":4,"2870":6,"2871":12,"2872":2,"2873":6,"2874":2,"2875":10,"2876":4,"2906":8,"2907":4,"2912":18,"2913":8,"2915":2,"2918":4,"2919":16,"2924":2,"2928":2,"2934":4,"2935":2,"2936":2,"2937":1,"2941":4,"2942":2}}],["quirky",{"2":{"2749":1}}],["quit",{"2":{"1425":1}}],["quite",{"2":{"119":1,"427":1,"1340":1,"1517":1,"1760":1,"1937":1,"2248":1,"2310":1,"2375":1,"2880":1,"2934":1,"2936":2,"2942":1}}],["quickly",{"2":{"1684":2,"1930":1,"1933":1,"2178":1,"2310":2,"2376":1,"2379":1,"2381":1,"2382":1,"2384":1,"2420":2,"2421":2,"2492":1,"2561":1,"2656":1,"2903":1}}],["quicker",{"2":{"1497":1,"2421":1,"2719":2}}],["quickest",{"2":{"124":1}}],["quickstart",{"0":{"1309":1}}],["quick",{"0":{"195":1,"2399":1,"2914":1},"1":{"2400":1,"2401":1,"2402":1,"2403":1},"2":{"112":1,"114":1,"195":8,"199":3,"297":1,"308":1,"562":4,"611":1,"1497":1,"2180":1,"2312":1,"2427":1,"2696":1,"2890":1,"2914":13}}],["quad",{"0":{"2310":1},"2":{"2310":1}}],["quadratic",{"2":{"1928":1,"1930":1,"1933":1}}],["quality",{"2":{"716":7,"1340":1,"2562":1,"2895":1}}],["quark",{"2":{"154":2}}],["quarter",{"2":{"133":1,"189":1,"279":1}}],["quackfire",{"2":{"57":2}}],["quantum",{"0":{"138":1,"232":1,"248":1,"254":1,"617":1,"2460":1,"2504":1,"2744":1,"2746":1,"2747":1,"2748":1,"2749":1,"2750":1,"2751":1,"2753":1,"2754":1,"2755":1},"1":{"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2745":1,"2747":1,"2748":1,"2749":1,"2750":1,"2752":1,"2753":1,"2754":2,"2755":2,"2756":1,"2757":1},"2":{"1":1,"74":1,"75":2,"94":1,"113":2,"114":7,"133":1,"134":1,"138":5,"143":1,"145":3,"160":3,"176":2,"191":2,"199":7,"210":9,"214":2,"222":3,"231":1,"232":5,"234":2,"236":1,"248":3,"249":1,"266":4,"285":2,"294":2,"317":2,"460":1,"464":1,"465":1,"466":1,"572":1,"625":1,"1332":1,"1342":1,"1407":1,"1414":1,"1464":2,"1466":1,"1479":7,"1480":2,"1483":1,"1487":1,"1526":2,"1527":1,"1632":1,"1844":1,"1923":7,"1976":1,"1977":1,"2066":1,"2176":1,"2303":2,"2405":1,"2411":3,"2461":1,"2504":1,"2555":1,"2579":1,"2655":1,"2721":2,"2744":3,"2746":20,"2747":12,"2748":4,"2749":27,"2750":4,"2751":2,"2752":4,"2754":1,"2758":1,"2766":1,"2788":1,"2789":1,"2813":1,"2818":1,"2880":1,"2925":1,"2927":1,"2928":1,"2933":4,"2937":1}}],["queried",{"2":{"1519":1}}],["queries",{"2":{"312":1}}],["query",{"0":{"2197":1},"2":{"132":1,"134":1,"346":1,"1826":1}}],["queued",{"0":{"580":1},"2":{"263":1,"371":1,"579":1}}],["queue",{"2":{"191":1,"359":1,"371":1,"583":1,"2750":1}}],["ques",{"2":{"134":1,"191":1,"2527":1,"2547":1}}],["questioned",{"2":{"2721":1}}],["questions",{"0":{"1311":1,"1331":1},"1":{"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"411":1,"608":4,"611":1,"616":1,"1311":1,"1318":1,"1339":1,"1341":1}}],["question",{"0":{"608":1},"2":{"48":1,"191":1,"586":1,"608":2,"616":1,"1552":1,"2527":1,"2547":1,"2559":1,"2843":2}}],["quefrency",{"2":{"45":1,"114":1,"317":1,"2271":1}}],["qmkuser",{"2":{"2630":2}}],["qmkurl",{"2":{"1440":4,"2721":1}}],["qmk+vial",{"2":{"2560":1}}],["qmk+current",{"2":{"49":1}}],["qmklayer",{"2":{"1527":2}}],["qmkbest",{"2":{"1440":9,"1527":2,"2721":1}}],["qmk",{"0":{"0":1,"9":1,"19":1,"26":1,"39":1,"51":1,"52":1,"65":1,"66":1,"70":1,"76":1,"78":1,"82":1,"83":1,"95":1,"96":1,"115":1,"135":1,"146":1,"161":1,"164":1,"177":1,"192":1,"200":1,"211":1,"223":1,"237":1,"250":1,"267":1,"278":1,"286":1,"295":1,"302":1,"309":1,"318":1,"329":1,"358":1,"367":1,"374":1,"418":1,"425":1,"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"456":1,"457":1,"458":1,"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1,"469":1,"473":1,"484":1,"505":1,"553":1,"554":1,"574":1,"579":1,"584":1,"585":1,"593":1,"1321":1,"1322":1,"1332":1,"1339":1,"1340":1,"1623":1,"1624":1,"1923":1,"2284":1,"2285":1,"2291":1,"2377":1,"2384":1,"2398":1,"2405":1,"2432":1,"2440":1,"2441":1,"2461":1,"2562":1,"2572":1,"2582":1,"2583":1,"2584":1,"2591":1,"2606":1,"2607":1,"2611":1,"2621":1,"2624":1,"2636":1,"2646":1,"2654":1,"2666":1,"2674":1,"2707":1,"2745":1,"2758":1,"2765":1,"2766":1,"2774":1,"2794":1,"2869":1,"2898":1,"2926":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1,"330":1,"331":1,"332":1,"333":1,"368":1,"369":1,"370":1,"371":1,"372":1,"373":1,"375":1,"376":1,"377":1,"419":1,"420":1,"421":1,"422":1,"423":1,"424":1,"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"506":1,"507":1,"508":1,"509":1,"554":1,"555":1,"556":1,"557":1,"580":1,"581":1,"582":1,"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"600":1,"1624":1,"1625":1,"1626":1,"1627":1,"1628":1,"1629":1,"1630":1,"1631":1,"1632":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2406":1,"2407":1,"2408":1,"2441":1,"2442":1,"2443":1,"2444":1,"2445":1,"2446":1,"2447":1,"2448":1,"2449":1,"2450":1,"2451":1,"2452":1,"2453":1,"2454":1,"2455":1,"2456":1,"2457":1,"2458":1,"2573":1,"2574":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1,"2607":1,"2608":1,"2612":1,"2613":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1,"2621":1,"2622":1,"2625":1,"2655":1,"2656":1,"2675":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1,"2759":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1,"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1,"2827":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2842":1,"2927":1,"2928":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"0":3,"1":1,"2":2,"6":1,"9":3,"10":2,"11":1,"12":1,"19":3,"21":4,"23":2,"24":3,"26":1,"38":2,"39":3,"49":2,"50":2,"51":1,"52":3,"65":1,"67":1,"69":2,"70":9,"75":2,"76":1,"82":2,"83":2,"86":2,"87":1,"93":1,"94":2,"95":4,"99":1,"100":1,"102":1,"103":1,"109":1,"110":1,"111":2,"112":3,"113":1,"114":5,"116":4,"118":1,"119":2,"120":3,"122":1,"124":1,"126":1,"128":2,"130":2,"131":2,"132":2,"133":2,"134":5,"137":2,"138":2,"139":1,"141":2,"143":7,"144":1,"145":2,"154":1,"156":1,"157":1,"163":5,"164":4,"166":1,"167":1,"168":1,"169":1,"172":3,"173":9,"174":2,"176":3,"179":1,"181":1,"182":2,"184":1,"189":3,"195":1,"196":1,"197":1,"199":6,"201":3,"212":3,"213":1,"220":1,"222":10,"224":3,"228":4,"230":1,"236":6,"238":1,"240":6,"243":3,"244":1,"249":6,"251":2,"254":1,"262":1,"263":3,"265":5,"266":3,"268":4,"273":3,"275":3,"276":3,"279":3,"284":2,"285":2,"288":3,"294":2,"302":1,"308":3,"312":2,"317":3,"328":3,"331":3,"333":5,"334":1,"335":1,"338":3,"347":1,"348":3,"358":1,"359":1,"360":2,"366":1,"367":2,"369":1,"370":1,"371":1,"373":5,"374":3,"376":1,"387":5,"391":1,"393":5,"397":4,"399":2,"400":2,"401":2,"402":1,"403":3,"405":8,"406":2,"407":1,"408":9,"412":1,"414":4,"415":1,"416":3,"417":4,"419":3,"420":2,"421":8,"422":7,"423":7,"424":3,"427":22,"428":6,"429":3,"430":3,"431":4,"432":7,"433":4,"434":1,"435":5,"436":2,"437":3,"438":2,"439":2,"440":1,"441":1,"442":1,"443":1,"444":2,"445":4,"446":3,"447":3,"448":4,"450":4,"451":4,"452":2,"453":2,"454":7,"456":1,"457":4,"458":1,"459":3,"460":1,"461":4,"462":2,"463":9,"464":1,"467":5,"468":2,"469":1,"470":1,"471":5,"472":3,"473":1,"474":3,"476":1,"477":1,"478":1,"479":1,"480":3,"481":3,"484":1,"485":2,"486":2,"487":8,"488":1,"490":1,"493":2,"494":1,"497":1,"498":1,"500":1,"501":1,"503":1,"504":1,"505":2,"507":3,"508":4,"509":1,"511":1,"515":5,"540":3,"541":1,"542":2,"543":3,"546":1,"550":1,"553":4,"554":1,"556":1,"568":7,"570":1,"571":2,"573":1,"574":3,"576":4,"577":3,"578":4,"579":5,"580":1,"583":3,"584":3,"585":1,"586":6,"587":4,"589":1,"590":1,"591":1,"592":3,"593":1,"594":1,"596":1,"598":3,"602":2,"606":1,"607":1,"608":3,"609":2,"611":3,"613":2,"614":3,"615":2,"616":1,"617":5,"618":2,"620":1,"624":3,"625":1,"627":1,"628":3,"629":1,"637":2,"642":1,"644":2,"645":1,"653":1,"662":2,"663":6,"664":3,"666":1,"670":2,"671":3,"672":2,"678":1,"679":1,"681":3,"682":2,"683":1,"686":4,"687":1,"693":1,"713":1,"746":1,"747":1,"750":1,"751":1,"752":2,"753":1,"756":1,"757":1,"761":1,"1206":1,"1210":1,"1242":1,"1263":1,"1285":1,"1308":2,"1309":1,"1310":1,"1311":1,"1315":4,"1316":1,"1321":1,"1322":1,"1325":1,"1330":1,"1332":2,"1333":1,"1339":2,"1340":7,"1345":1,"1346":1,"1348":1,"1353":2,"1361":2,"1366":1,"1377":2,"1378":1,"1388":1,"1396":1,"1400":1,"1401":1,"1404":1,"1407":1,"1409":1,"1411":1,"1415":1,"1417":1,"1419":1,"1421":1,"1425":1,"1427":1,"1432":1,"1434":1,"1435":1,"1438":1,"1440":6,"1457":2,"1458":1,"1463":1,"1464":1,"1466":2,"1522":1,"1526":1,"1535":1,"1587":1,"1603":1,"1618":2,"1619":1,"1620":2,"1621":7,"1622":1,"1624":2,"1626":1,"1627":2,"1628":1,"1632":1,"1655":1,"1661":1,"1664":1,"1696":2,"1759":1,"1785":1,"1829":1,"1844":1,"1913":1,"1918":1,"1923":1,"1942":1,"1948":3,"1958":1,"1991":1,"2009":1,"2047":1,"2066":1,"2171":2,"2173":1,"2187":1,"2212":1,"2218":1,"2254":3,"2262":1,"2265":2,"2266":6,"2270":1,"2274":1,"2278":3,"2285":2,"2286":1,"2287":3,"2290":1,"2294":1,"2310":1,"2324":1,"2367":1,"2368":1,"2375":4,"2376":4,"2377":7,"2379":2,"2381":2,"2382":2,"2383":2,"2384":11,"2385":1,"2386":2,"2388":2,"2389":2,"2390":4,"2391":1,"2393":2,"2395":2,"2397":3,"2398":8,"2399":1,"2401":5,"2403":1,"2404":1,"2405":2,"2407":3,"2408":1,"2411":1,"2414":2,"2417":1,"2419":1,"2425":7,"2426":2,"2427":1,"2428":1,"2432":1,"2440":1,"2441":3,"2443":4,"2444":1,"2446":2,"2452":1,"2455":1,"2458":1,"2459":1,"2461":5,"2462":1,"2463":1,"2464":1,"2465":1,"2475":1,"2489":2,"2490":1,"2494":1,"2495":1,"2496":1,"2497":5,"2501":1,"2502":1,"2504":2,"2549":1,"2550":1,"2554":1,"2555":2,"2559":6,"2560":36,"2561":15,"2562":7,"2563":6,"2564":1,"2565":1,"2566":1,"2572":4,"2574":1,"2576":5,"2577":3,"2579":2,"2580":1,"2582":6,"2583":7,"2584":3,"2585":3,"2586":4,"2587":8,"2588":4,"2589":1,"2591":2,"2592":1,"2594":2,"2596":2,"2598":8,"2599":2,"2600":9,"2601":6,"2602":3,"2603":2,"2605":2,"2606":2,"2607":4,"2608":2,"2609":2,"2610":2,"2612":1,"2613":4,"2614":1,"2616":2,"2618":2,"2619":4,"2620":4,"2621":8,"2622":4,"2625":4,"2627":3,"2628":4,"2630":19,"2631":1,"2632":14,"2635":1,"2636":2,"2646":1,"2648":1,"2652":1,"2655":2,"2666":1,"2667":1,"2669":1,"2671":3,"2673":2,"2674":1,"2675":2,"2676":10,"2677":4,"2678":1,"2684":1,"2685":5,"2687":3,"2688":2,"2690":2,"2691":2,"2694":1,"2696":1,"2700":1,"2701":1,"2707":11,"2718":2,"2719":4,"2720":2,"2721":18,"2722":3,"2723":2,"2724":1,"2726":2,"2741":1,"2742":1,"2743":1,"2744":1,"2745":2,"2746":1,"2748":20,"2749":1,"2750":3,"2757":2,"2758":1,"2766":1,"2770":1,"2771":1,"2774":1,"2775":5,"2776":3,"2780":2,"2782":1,"2802":1,"2810":2,"2812":1,"2829":1,"2839":1,"2840":1,"2844":5,"2845":2,"2847":1,"2857":1,"2862":3,"2869":1,"2877":1,"2878":1,"2881":1,"2889":1,"2891":1,"2895":8,"2896":3,"2898":2,"2899":1,"2900":1,"2901":2,"2926":1,"2927":3,"2928":1,"2930":3,"2932":1,"2933":1,"2936":1,"2941":1}}],["fwlink",{"2":{"2676":1}}],["fknraiden",{"2":{"2418":1}}],["fkeys",{"2":{"1619":1}}],["fps",{"2":{"1933":5}}],["fpc",{"2":{"1395":1}}],["f♯",{"2":{"1919":6,"2520":6}}],["fb",{"2":{"1678":3,"1679":3}}],["fdbk",{"2":{"1674":1}}],["f+g",{"2":{"1612":1}}],["f9²",{"2":{"692":1}}],["f9¹",{"2":{"692":1}}],["f9",{"2":{"369":1,"587":2,"2503":2,"2536":2,"2557":1}}],["f8²",{"2":{"692":1}}],["f8¹",{"2":{"692":1}}],["f8",{"2":{"369":1,"587":2,"2503":2,"2536":2,"2557":1}}],["f24",{"2":{"2503":2,"2536":2}}],["f23",{"2":{"1441":2,"2503":2,"2536":2}}],["f21",{"2":{"1441":2,"2503":2,"2536":2}}],["f22",{"2":{"1441":11,"2503":2,"2536":2}}],["f20",{"2":{"1358":1,"2503":2,"2536":2}}],["f2",{"2":{"369":1,"587":2,"690":1,"692":2,"1919":1,"2503":2,"2520":1,"2536":2,"2550":1,"2557":1}}],["fm",{"2":{"335":1,"370":1,"371":1,"373":4,"427":1,"577":1,"578":1,"579":1,"614":1,"681":2,"1309":1,"1310":1,"1315":1,"1440":1,"2461":1,"2616":1,"2618":1,"2619":1,"2707":3}}],["fme",{"2":{"222":1}}],["fghij",{"2":{"317":1}}],["fg",{"2":{"266":1,"490":5,"492":1,"2750":9}}],["fs5",{"2":{"1919":1,"2520":1}}],["fs4",{"2":{"1919":1,"2520":1}}],["fs3",{"2":{"1919":1,"2520":1}}],["fs2",{"2":{"1919":1,"2520":1}}],["fs1",{"2":{"1919":1,"2520":1}}],["fssl",{"2":{"1315":1,"2616":1,"2618":1,"2619":1}}],["fs",{"2":{"249":1,"1919":1,"2520":1}}],["fc980c",{"2":{"236":1}}],["fc660c",{"2":{"236":1}}],["fxtwink",{"2":{"317":1}}],["fx",{"2":{"222":1}}],["fjlabs",{"2":{"210":1,"222":6}}],["ffff",{"2":{"2239":1}}],["ffffffff",{"2":{"2237":1}}],["ff",{"2":{"197":6,"403":3,"405":3,"415":1,"416":1,"2241":1,"2495":1}}],["ffkeebs",{"2":{"134":1}}],["f3²",{"2":{"692":1}}],["f3",{"2":{"191":1,"369":1,"587":2,"690":1,"692":3,"1919":1,"2501":1,"2503":2,"2520":1,"2536":2,"2550":1,"2557":1}}],["f303",{"2":{"49":1,"50":1,"199":1,"2393":1}}],["f5²",{"2":{"692":1}}],["f5f9b992",{"2":{"371":1}}],["f5",{"2":{"111":1,"369":1,"559":2,"568":1,"587":2,"690":2,"1540":1,"1919":1,"2271":1,"2503":2,"2520":1,"2536":2,"2557":1,"2684":1,"2713":1}}],["f4²",{"2":{"692":1}}],["f4xx",{"2":{"176":1}}],["f4x1",{"2":{"145":1,"176":1,"222":1,"285":1,"2657":1}}],["f466",{"2":{"176":1}}],["f401",{"2":{"253":1,"2393":1,"2657":1}}],["f401xe",{"2":{"131":1,"134":1}}],["f405",{"2":{"130":1,"134":1,"308":1}}],["f4",{"2":{"111":1,"131":1,"134":1,"191":1,"285":1,"369":1,"559":2,"568":1,"587":2,"690":2,"692":2,"1919":1,"2271":1,"2503":2,"2520":1,"2536":2,"2557":1,"2684":1}}],["f411",{"2":{"93":1,"2393":2,"2657":2,"2846":1,"2888":1}}],["f072",{"2":{"1296":2}}],["f0",{"2":{"111":1,"559":2,"568":1,"690":2,"692":3,"2271":1,"2501":1,"2713":1}}],["f7²",{"2":{"692":1}}],["f7¹",{"2":{"692":1}}],["f7",{"2":{"111":1,"369":1,"559":2,"568":1,"587":2,"690":2,"1365":1,"2271":1,"2503":2,"2536":2,"2557":1,"2684":1,"2713":1}}],["f6²",{"2":{"692":1}}],["f6¹",{"2":{"692":1}}],["f6",{"2":{"111":1,"369":1,"559":2,"568":1,"587":2,"690":2,"692":1,"695":1,"2271":1,"2503":2,"2536":2,"2557":1,"2684":1,"2713":1}}],["f19",{"2":{"2503":2,"2536":2}}],["f17",{"2":{"2503":2,"2536":2}}],["f16",{"2":{"2503":2,"2536":2}}],["f15",{"2":{"2503":3,"2536":2}}],["f14",{"2":{"2503":2,"2536":2}}],["f14629ed1cd7c7ec9089604d64f29a99981558e8",{"2":{"586":2}}],["f1xx",{"2":{"2501":2}}],["f18",{"2":{"1782":1,"2503":2,"2536":2,"2921":1}}],["f12",{"2":{"369":1,"587":2,"2503":2,"2536":2,"2551":1,"2557":1}}],["f11",{"2":{"369":1,"587":2,"2503":2,"2536":2,"2557":1}}],["f10²",{"2":{"692":1}}],["f10¹",{"2":{"692":1}}],["f10",{"2":{"369":1,"587":2,"692":2,"2503":2,"2536":2,"2557":1}}],["f103",{"2":{"291":1,"718":1,"2395":1}}],["f103c6",{"2":{"222":1}}],["f103xb",{"2":{"114":1}}],["f13",{"2":{"222":1,"1438":1,"2503":3,"2536":2}}],["f1",{"2":{"111":1,"120":1,"191":1,"369":1,"559":2,"568":1,"587":2,"690":2,"1435":1,"1597":1,"1919":1,"2265":1,"2271":1,"2377":1,"2384":1,"2501":1,"2503":2,"2520":1,"2536":2,"2550":1,"2551":1,"2557":1,"2713":1}}],["f",{"0":{"2536":1},"2":{"111":2,"134":1,"160":1,"191":1,"196":2,"222":1,"266":2,"328":1,"369":1,"391":1,"431":6,"434":1,"435":1,"441":1,"461":5,"559":1,"571":3,"587":2,"764":1,"1532":3,"1591":1,"1612":3,"1665":1,"1679":1,"1785":2,"1919":19,"2052":2,"2159":1,"2237":1,"2239":1,"2241":1,"2243":2,"2289":1,"2294":1,"2501":2,"2503":3,"2520":19,"2535":3,"2556":3,"2748":8,"2880":3,"2917":1}}],["fantastic",{"2":{"2902":1}}],["fan",{"2":{"2414":1}}],["fancy",{"2":{"536":1,"1458":2}}],["faith",{"2":{"2721":1}}],["fair",{"2":{"2559":1}}],["fairly",{"2":{"1445":1,"1531":1,"1533":1,"2416":1,"2476":1}}],["fails",{"2":{"1791":1,"2410":1,"2734":2}}],["failed",{"2":{"371":1,"453":1,"1204":1,"1206":1,"2268":1,"2270":1,"2441":1,"2627":3}}],["failing",{"2":{"190":1,"191":1,"266":1,"613":1,"1362":1,"2441":1}}],["failures",{"2":{"134":1,"160":3,"191":1,"198":1,"199":3,"236":1,"317":1,"453":1,"613":1,"717":1,"2270":1}}],["failure",{"2":{"92":1,"160":1,"210":1,"236":3,"263":1,"277":1,"333":1,"655":2}}],["fail",{"0":{"2732":1},"2":{"88":2,"104":2,"126":1,"127":2,"170":1,"217":1,"387":1,"658":1,"683":1,"1526":1,"1791":2,"2599":1,"2600":1}}],["faqs",{"2":{"608":1}}],["faq",{"0":{"1318":1,"1341":1,"1360":1,"2402":1},"1":{"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":1,"1327":1,"1328":1,"1329":1,"1330":1,"1342":1,"1343":1,"1344":1,"1345":1,"1346":1,"1347":1,"1348":1,"1349":1,"1350":1,"1351":1,"1352":1,"1353":1,"1354":1,"1355":1,"1356":1,"1357":1,"1358":1,"1359":1,"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1368":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1,"2403":1},"2":{"572":1,"1334":1,"2483":1,"2558":1,"2610":1,"2926":1}}],["famous",{"2":{"485":1,"2063":1}}],["familiarity",{"2":{"2591":1,"2926":1}}],["familiarize",{"2":{"540":1}}],["familiar",{"2":{"527":1,"609":1,"612":1,"1312":1,"2398":1,"2404":2,"2573":1,"2593":1,"2626":1,"2628":1,"2862":1,"2901":1}}],["families",{"0":{"2687":1,"2688":1},"2":{"49":1,"130":1,"750":1,"754":1,"2685":1,"2687":1}}],["family",{"0":{"2689":1,"2690":1,"2691":1},"2":{"191":1,"277":1,"751":1,"2254":1,"2687":1,"2689":4,"2690":1,"2691":1,"2721":1,"2724":1}}],["facing",{"2":{"559":1,"2044":4,"2421":2,"2459":1,"2776":1}}],["face",{"2":{"277":2,"654":1,"2416":1,"2421":2,"2740":1}}],["factor",{"2":{"1487":3,"2776":1,"2846":1}}],["factory",{"2":{"176":3,"1369":1,"2386":1,"2391":1,"2491":1}}],["fact",{"2":{"45":1,"1316":1,"1339":1,"1353":1,"1407":1,"2171":1}}],["fading",{"2":{"249":1,"1843":1,"2063":2}}],["fader",{"2":{"1917":1}}],["fade",{"2":{"93":1,"1949":3,"1951":4,"2279":3}}],["fades",{"2":{"49":1,"1843":11,"2063":16}}],["fault",{"2":{"191":1}}],["fauxclicky",{"2":{"75":1,"188":1,"191":1,"2721":1}}],["fauxpark",{"2":{"38":1,"182":1}}],["fave",{"2":{"266":1}}],["fave84",{"2":{"199":1}}],["fave84h",{"2":{"191":1}}],["favorite",{"0":{"2578":1},"2":{"2600":1}}],["favorites",{"2":{"2503":2,"2542":2}}],["favor",{"0":{"8":1},"2":{"50":1,"94":1,"503":1}}],["favour",{"2":{"3":1,"15":1,"103":1,"169":1,"184":1,"199":1}}],["fake",{"2":{"191":1,"743":1,"2560":1}}],["fastest",{"2":{"698":1,"1931":1,"1956":1,"2873":1}}],["faster",{"2":{"397":1,"536":1,"1962":1,"2156":1,"2202":2,"2216":1,"2217":1,"2372":1,"2566":1}}],["fast",{"2":{"175":1,"297":3,"308":1,"514":1,"639":1,"1193":1,"1196":1,"1410":1,"1609":1,"1675":1,"1789":2,"1929":1,"1930":1,"1987":1,"2159":1,"2310":2,"2503":2,"2542":3,"2546":1,"2600":1,"2700":1,"2721":1,"2757":1,"2912":1,"2913":1,"2915":2}}],["fashion",{"2":{"169":1,"2561":1,"2942":1}}],["farther",{"2":{"2578":1}}],["farsi",{"2":{"277":1,"2880":2}}],["far",{"2":{"99":1,"188":1,"263":3,"273":1,"397":1,"626":1,"1789":1,"1970":1,"2212":1,"2284":1,"2683":1}}],["falls",{"2":{"1656":1}}],["fall",{"2":{"487":1,"528":1,"1477":1,"1964":1,"2552":1,"2609":1}}],["fallback",{"0":{"220":1},"2":{"222":2,"1497":1,"2941":1}}],["falling",{"2":{"50":1,"1249":2,"2036":1,"2627":1}}],["falsely",{"2":{"1522":2,"1782":2,"2921":2,"2923":1}}],["false",{"0":{"533":1,"1522":1},"2":{"31":2,"90":2,"105":4,"111":5,"125":3,"185":2,"194":4,"195":2,"199":1,"214":1,"249":1,"307":2,"308":2,"510":2,"533":2,"591":6,"622":1,"623":1,"628":1,"629":1,"645":2,"649":2,"650":1,"651":2,"667":3,"698":1,"794":1,"1250":1,"1377":1,"1378":4,"1402":1,"1407":3,"1425":3,"1441":1,"1456":2,"1485":2,"1497":1,"1504":1,"1511":1,"1522":1,"1527":10,"1529":4,"1538":1,"1594":2,"1606":5,"1607":1,"1611":2,"1612":1,"1615":1,"1619":1,"1651":2,"1657":1,"1662":4,"1696":2,"1737":6,"1773":1,"1775":2,"1791":1,"1798":1,"1804":1,"1828":1,"1831":1,"1845":1,"1849":2,"1938":1,"1942":2,"1947":9,"1948":2,"1950":3,"1956":3,"1961":1,"1965":4,"1968":1,"1982":1,"1986":1,"1987":2,"1989":2,"1990":1,"1999":1,"2001":4,"2002":1,"2004":2,"2005":1,"2006":1,"2068":1,"2072":2,"2073":3,"2074":2,"2164":2,"2166":1,"2167":1,"2168":1,"2170":3,"2224":1,"2277":8,"2278":1,"2283":1,"2293":1,"2324":1,"2374":2,"2568":2,"2569":3,"2570":1,"2600":1,"2676":1,"2678":2,"2747":3,"2750":2,"2785":2,"2847":12,"2849":2,"2850":3,"2853":1,"2854":4,"2856":1,"2859":1,"2863":2,"2864":4,"2865":4,"2866":1,"2868":2,"2870":6,"2871":4,"2872":1,"2873":12,"2874":1,"2875":3,"2876":1,"2886":5,"2912":1,"2913":1,"2916":2,"2920":1,"2921":1,"2923":1,"2933":1}}],["flsh",{"2":{"2306":1,"2308":8}}],["flgp",{"2":{"1842":1,"2062":1,"2518":1,"2526":1}}],["flgn",{"2":{"1842":1,"2062":1,"2518":1,"2526":1}}],["fl",{"2":{"1344":1,"2554":2,"2556":3,"2557":2}}],["flick",{"2":{"1978":1}}],["flicker",{"2":{"1544":1}}],["flickering",{"2":{"1298":1}}],["flight",{"2":{"655":1,"2639":1}}],["flipping",{"2":{"1976":1}}],["flipped",{"2":{"145":1,"1659":1,"1950":1,"2184":1,"2264":1,"2280":1,"2386":1,"2391":1}}],["flips",{"2":{"13":1,"31":1,"34":1,"1950":1,"2280":1}}],["flip",{"0":{"13":1},"2":{"13":1,"222":1,"1659":1,"2427":1}}],["flypage",{"2":{"1316":1}}],["flypage=shop",{"2":{"1316":1}}],["fly",{"0":{"2290":1},"2":{"536":1,"572":1,"1346":1,"1474":1,"1482":1,"1600":1,"1655":1,"2047":1,"2290":1,"2801":1,"2905":3}}],["flygone60",{"2":{"241":2}}],["float",{"0":{"1647":2},"1":{"1648":2},"2":{"203":2,"1529":1,"1639":2,"1648":2,"1791":3,"1833":2,"1987":4}}],["floating",{"2":{"203":2,"1294":1}}],["flowing",{"2":{"2063":1}}],["flows",{"2":{"1340":1}}],["flowtap",{"2":{"328":1}}],["flower",{"2":{"236":1,"2063":3,"2887":1}}],["flow",{"0":{"297":1,"2915":1,"2916":1,"2917":1},"1":{"2916":1,"2917":1},"2":{"160":1,"297":4,"308":3,"378":1,"523":1,"617":1,"1263":1,"2063":4,"2291":1,"2420":1,"2421":1,"2887":1,"2915":9,"2916":6,"2917":17}}],["flux",{"2":{"2420":2}}],["flushed",{"2":{"1902":1,"1904":1,"1906":1,"1909":1,"2146":1,"2148":1,"2150":1,"2153":1}}],["flushes",{"2":{"114":1}}],["flush",{"0":{"230":1,"708":1,"1307":1,"1640":1,"1744":1,"2025":1},"2":{"222":1,"236":2,"704":1,"708":1,"736":1,"822":1,"824":1,"850":1,"851":1,"880":1,"882":1,"912":1,"914":1,"947":1,"949":1,"981":1,"983":1,"1015":1,"1017":1,"1049":1,"1051":1,"1083":1,"1085":1,"1117":1,"1119":1,"1151":1,"1153":1,"1185":1,"1187":1,"1238":1,"1240":1,"1303":1,"1307":1,"1636":1,"1641":1,"1642":1,"1643":1,"1644":1,"1645":1,"1646":1,"1647":1,"1745":1,"1747":1,"1846":1,"1957":1,"2018":1,"2020":1,"2069":1,"2188":1,"2747":1,"2749":2,"2750":10,"2864":1,"2871":1}}],["flushing",{"2":{"191":1,"650":1,"651":1,"2747":1}}],["flurry",{"2":{"163":1}}],["flavours",{"2":{"2650":1}}],["flat",{"2":{"1532":1}}],["flatbread60",{"2":{"86":2}}],["flake8",{"2":{"499":1,"504":2}}],["flask",{"2":{"361":1}}],["flasher",{"2":{"2384":1,"2476":1,"2477":1,"2481":1,"2495":2,"2812":1}}],["flashers",{"2":{"428":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":1,"2395":1,"2397":1}}],["flashes",{"2":{"2266":1,"2378":2,"2380":3,"2385":1,"2387":2,"2392":2,"2394":1,"2396":1}}],["flashed",{"0":{"1317":1},"2":{"567":1,"576":1,"680":1,"2182":1,"2266":1,"2291":1,"2367":1,"2375":1,"2380":1,"2397":1,"2425":1,"2427":1,"2475":1,"2483":1,"2495":1,"2562":1,"2894":1}}],["flashable",{"2":{"372":1}}],["flashing",{"0":{"600":1,"1782":1,"2375":1,"2426":1,"2475":1,"2495":1,"2498":1,"2501":1,"2604":1,"2606":1},"1":{"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2476":1,"2477":1,"2478":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":2,"2497":1,"2498":1,"2499":2,"2500":2,"2501":2,"2605":1,"2606":1,"2607":2,"2608":2,"2609":1,"2610":1},"2":{"49":1,"134":2,"191":1,"210":2,"240":3,"428":2,"600":1,"681":1,"686":1,"1313":1,"1315":1,"1317":1,"1334":1,"1466":1,"1675":1,"2266":1,"2367":1,"2375":2,"2376":1,"2377":1,"2379":1,"2380":1,"2381":2,"2382":1,"2383":1,"2384":3,"2386":1,"2388":1,"2389":1,"2390":2,"2391":1,"2393":2,"2395":2,"2397":2,"2401":3,"2410":1,"2427":1,"2476":1,"2477":1,"2479":1,"2481":1,"2487":1,"2489":2,"2490":1,"2497":1,"2504":1,"2560":1,"2573":1,"2580":1,"2581":1,"2605":2,"2606":1,"2609":1,"2622":1,"2645":1,"2660":1,"2665":1,"2745":1,"2828":1,"2837":1,"2845":1}}],["flash",{"0":{"164":1,"428":1,"751":1,"752":1,"755":1,"756":1,"1334":1,"1345":1,"2403":1,"2581":1,"2608":1,"2609":1},"1":{"756":1},"2":{"49":3,"107":1,"113":1,"114":5,"124":1,"134":1,"145":1,"160":1,"164":3,"174":5,"176":4,"199":2,"210":1,"236":1,"240":1,"277":1,"294":1,"317":2,"333":1,"408":1,"428":6,"433":1,"543":1,"545":1,"566":2,"579":1,"649":1,"681":1,"682":1,"683":1,"716":1,"717":1,"743":3,"749":1,"750":6,"751":12,"752":9,"753":6,"754":5,"755":3,"756":15,"1312":2,"1317":1,"1345":2,"1362":2,"1385":2,"1466":8,"1617":1,"1658":1,"1845":1,"1968":1,"2068":1,"2177":1,"2182":1,"2266":7,"2267":2,"2308":2,"2375":3,"2376":3,"2379":3,"2380":1,"2381":2,"2382":2,"2383":1,"2384":1,"2386":1,"2387":4,"2388":1,"2389":1,"2390":2,"2391":1,"2393":2,"2395":2,"2397":2,"2398":1,"2401":3,"2410":3,"2411":1,"2426":1,"2475":4,"2483":1,"2495":8,"2496":1,"2497":1,"2501":18,"2504":1,"2590":1,"2602":1,"2604":1,"2605":1,"2606":3,"2608":4,"2609":8,"2661":1,"2676":2,"2682":1,"2684":1,"2689":1,"2705":10,"2721":3,"2745":1,"2747":1,"2750":2,"2751":1,"2857":4,"2869":1,"2881":1,"2894":1,"2899":1,"2905":1}}],["flagged",{"0":{"408":1},"1":{"409":1,"410":1,"411":1,"412":1},"2":{"199":1,"212":1,"338":3,"397":1,"408":1,"412":1,"2073":1,"2268":1}}],["flag",{"2":{"176":1,"191":1,"249":1,"302":1,"307":1,"427":1,"458":1,"459":1,"461":1,"468":1,"487":1,"562":3,"685":1,"751":1,"1403":1,"1606":1,"1723":1,"1724":1,"1726":1,"1775":1,"1840":2,"1841":5,"1842":2,"1846":6,"1893":1,"1894":1,"1895":1,"1896":1,"1993":1,"2060":2,"2061":6,"2062":2,"2069":7,"2073":1,"2074":1,"2131":1,"2132":1,"2133":1,"2134":1,"2184":1,"2211":1,"2266":1,"2518":2,"2526":2,"2721":1,"2760":1,"2766":1,"2864":2,"2871":2}}],["flags",{"0":{"1841":1,"1889":3,"1891":3,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"2061":1,"2127":3,"2129":3,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1},"1":{"1890":3,"1892":3,"1898":1,"2128":3,"2130":3,"2136":1},"2":{"176":1,"191":1,"220":1,"277":1,"327":1,"328":4,"333":1,"505":1,"1392":2,"1841":8,"1842":2,"1846":3,"1889":1,"1890":3,"1891":1,"1892":3,"1897":1,"1898":1,"1955":1,"1956":1,"2061":8,"2062":2,"2069":3,"2073":1,"2074":2,"2127":1,"2128":3,"2129":1,"2130":3,"2135":1,"2136":1,"2283":1,"2518":2,"2526":2,"2571":1,"2684":1,"2760":3,"2770":5,"2864":5,"2871":5}}],["flesh",{"2":{"2899":1}}],["flexible",{"0":{"1771":1},"2":{"536":1,"1197":1,"1202":1,"2695":2,"2704":1}}],["flexibility",{"2":{"6":1,"138":1,"553":1,"687":1,"1831":1,"2253":1,"2322":1,"2905":1,"2917":1}}],["flehrad",{"0":{"43":2},"2":{"43":6,"266":1}}],["frr",{"2":{"2294":1}}],["friction",{"2":{"1933":2,"1978":1}}],["friendly",{"0":{"1771":1},"2":{"434":1,"487":1,"1295":1,"2286":1,"2462":1}}],["friend",{"0":{"2368":1},"2":{"392":1,"2367":3,"2368":4}}],["friends",{"2":{"226":1,"236":1,"2465":1}}],["frustrates",{"2":{"2559":1}}],["frustrating",{"2":{"2310":1}}],["frustration",{"2":{"173":1}}],["fruit",{"2":{"1362":1}}],["frood",{"2":{"2706":1}}],["front",{"2":{"1465":1,"2666":1}}],["frontend",{"0":{"577":1},"2":{"577":1,"743":1}}],["fronzlebop",{"2":{"613":2}}],["frob",{"2":{"539":1}}],["from=",{"2":{"176":1}}],["from",{"0":{"5":1,"24":1,"166":1,"498":1,"684":1,"1367":1,"1899":1,"2051":1,"2143":1,"2609":1},"2":{"3":1,"6":2,"12":1,"15":1,"31":2,"34":1,"49":3,"50":1,"62":1,"63":1,"69":1,"70":1,"73":2,"74":1,"75":2,"76":1,"88":3,"90":1,"92":1,"94":1,"104":3,"113":2,"114":8,"116":1,"119":1,"127":3,"128":1,"132":2,"133":1,"134":10,"160":5,"163":1,"170":2,"172":1,"173":2,"174":1,"176":8,"191":9,"199":13,"210":7,"212":1,"217":1,"222":8,"224":1,"228":3,"230":1,"236":4,"240":1,"249":9,"263":1,"266":19,"272":1,"273":1,"275":1,"276":1,"277":5,"284":2,"285":1,"294":1,"307":1,"308":5,"312":1,"323":2,"333":2,"359":1,"360":1,"363":1,"379":1,"380":1,"383":1,"384":1,"385":1,"387":1,"401":1,"402":1,"403":1,"407":1,"427":3,"432":2,"436":1,"437":1,"445":2,"451":2,"461":1,"467":1,"471":1,"487":3,"494":2,"498":2,"509":1,"510":1,"511":1,"514":3,"515":4,"523":1,"553":1,"559":3,"561":1,"568":3,"576":1,"579":1,"583":1,"586":2,"590":1,"598":1,"613":1,"615":1,"617":2,"626":1,"645":1,"654":1,"663":1,"667":2,"670":1,"673":1,"674":1,"683":1,"685":2,"695":2,"696":4,"701":1,"710":1,"717":1,"719":2,"724":1,"729":1,"750":1,"751":2,"771":1,"773":1,"774":1,"776":1,"777":1,"779":1,"780":1,"783":1,"786":1,"788":1,"789":2,"791":1,"792":2,"794":1,"795":1,"805":1,"858":1,"863":1,"893":1,"923":1,"928":1,"957":1,"962":1,"991":1,"996":1,"1025":1,"1030":1,"1059":1,"1064":1,"1093":1,"1098":1,"1127":1,"1132":1,"1161":1,"1166":1,"1219":1,"1254":1,"1255":1,"1257":1,"1259":1,"1273":1,"1275":1,"1289":1,"1290":1,"1291":1,"1297":1,"1309":1,"1310":1,"1321":1,"1322":1,"1324":1,"1340":3,"1345":2,"1354":1,"1356":1,"1368":1,"1369":1,"1370":1,"1375":1,"1386":1,"1404":1,"1407":1,"1408":1,"1416":2,"1419":3,"1421":1,"1422":1,"1458":1,"1460":1,"1475":1,"1478":1,"1481":1,"1487":1,"1491":1,"1497":1,"1519":1,"1522":1,"1527":2,"1535":1,"1540":1,"1552":1,"1561":1,"1563":1,"1588":1,"1599":1,"1604":1,"1606":1,"1611":1,"1613":4,"1614":7,"1648":2,"1655":1,"1656":1,"1679":1,"1680":1,"1706":1,"1711":1,"1714":1,"1715":1,"1716":1,"1721":1,"1729":1,"1731":1,"1732":1,"1735":1,"1736":2,"1743":1,"1746":1,"1748":1,"1760":1,"1778":2,"1779":1,"1780":2,"1781":1,"1789":1,"1834":2,"1835":1,"1840":1,"1843":4,"1844":1,"1859":1,"1860":1,"1861":1,"1878":1,"1884":1,"1886":1,"1888":1,"1899":1,"1917":2,"1930":2,"1931":1,"1933":1,"1943":1,"1949":2,"1950":1,"1951":2,"1955":1,"1958":1,"1962":1,"1968":1,"1974":1,"1976":4,"1978":2,"1979":1,"1981":2,"1983":5,"1992":1,"1996":1,"2005":1,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2030":1,"2039":1,"2052":1,"2054":1,"2060":1,"2063":4,"2064":1,"2066":1,"2085":1,"2086":1,"2087":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2138":3,"2140":3,"2143":1,"2156":1,"2160":1,"2170":1,"2177":1,"2178":1,"2184":2,"2192":2,"2199":1,"2201":1,"2207":1,"2215":1,"2238":1,"2240":1,"2242":1,"2244":1,"2245":1,"2252":1,"2253":1,"2257":1,"2258":1,"2268":2,"2270":2,"2271":1,"2273":2,"2279":2,"2280":1,"2281":1,"2287":1,"2291":1,"2296":1,"2303":1,"2308":2,"2312":1,"2313":1,"2317":1,"2324":2,"2360":1,"2377":1,"2384":2,"2387":1,"2390":1,"2393":1,"2395":1,"2397":1,"2398":1,"2401":1,"2409":1,"2410":2,"2411":1,"2416":5,"2420":1,"2421":3,"2422":1,"2423":1,"2424":1,"2425":2,"2427":1,"2440":1,"2443":1,"2457":1,"2459":5,"2466":1,"2469":1,"2483":1,"2492":1,"2494":1,"2495":1,"2496":2,"2499":1,"2501":2,"2552":1,"2555":1,"2557":2,"2559":1,"2560":2,"2562":2,"2563":4,"2564":1,"2576":1,"2577":1,"2578":1,"2582":1,"2599":1,"2600":1,"2602":1,"2606":2,"2608":2,"2615":1,"2621":1,"2627":3,"2630":1,"2631":1,"2632":2,"2633":1,"2636":1,"2639":1,"2650":1,"2651":1,"2656":2,"2660":1,"2665":1,"2669":1,"2671":1,"2673":1,"2674":1,"2676":1,"2683":1,"2694":1,"2701":1,"2702":1,"2705":1,"2706":1,"2712":1,"2713":1,"2714":1,"2719":2,"2721":5,"2723":2,"2727":1,"2735":1,"2746":2,"2749":12,"2750":5,"2775":4,"2776":4,"2778":1,"2786":2,"2791":1,"2812":1,"2825":1,"2838":1,"2848":1,"2850":2,"2862":1,"2863":1,"2864":3,"2870":2,"2871":3,"2873":2,"2875":1,"2879":1,"2882":2,"2895":2,"2897":1,"2900":1,"2903":3,"2905":2,"2918":1,"2919":1,"2926":1,"2927":1,"2930":2,"2931":2,"2932":3,"2937":2,"2940":1}}],["fr",{"2":{"222":1,"2294":3,"2880":4}}],["frl",{"2":{"222":2}}],["français",{"2":{"2797":1}}],["franky36",{"2":{"317":1}}],["fraction",{"2":{"1979":1}}],["fractal",{"2":{"134":2,"176":1,"210":1,"277":1,"2063":4,"2887":1}}],["fram",{"2":{"746":1,"747":1}}],["frames",{"2":{"1933":1,"2748":1,"2766":2,"2769":1}}],["frame",{"0":{"2769":1,"2770":1,"2771":1,"2772":1,"2773":1},"2":{"1283":1,"1859":1,"1861":1,"1902":1,"1904":1,"1906":1,"1909":1,"1933":2,"1956":1,"2085":1,"2087":1,"2146":1,"2148":1,"2150":1,"2153":1,"2750":3,"2758":1,"2760":3,"2763":1,"2764":1,"2766":6,"2768":2,"2769":8,"2770":28,"2771":2,"2772":1,"2773":2}}],["frameworking",{"2":{"145":1}}],["framework",{"2":{"134":1,"358":1,"487":1,"1404":1,"2309":1,"2411":1,"2840":1,"2935":1}}],["framebuffer",{"2":{"93":1,"114":1,"236":1,"2063":1,"2749":3}}],["fragments",{"2":{"262":1}}],["fraanrosi",{"2":{"114":1}}],["fr4boards",{"2":{"67":1,"222":1}}],["fr4",{"2":{"67":1,"72":1}}],["freq",{"2":{"1487":5,"1679":1}}],["frequencies",{"2":{"1487":1}}],["frequency",{"0":{"856":1,"921":1,"955":1,"989":1,"1023":1,"1057":1,"1159":1,"2757":1},"2":{"11":1,"134":1,"145":1,"202":1,"210":2,"236":2,"285":1,"568":1,"747":1,"756":1,"764":1,"854":3,"856":12,"918":3,"921":9,"953":3,"955":9,"987":3,"989":9,"1021":3,"1023":8,"1055":3,"1057":8,"1157":3,"1159":11,"1328":7,"1487":7,"1489":3,"1679":3,"1951":1,"1978":1,"2271":1,"2505":3,"2873":1,"2875":1}}],["frequent",{"2":{"1466":1,"1979":1}}],["frequently",{"0":{"1311":1,"1331":1},"1":{"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"363":1,"1846":1,"2069":1,"2252":1,"2310":2,"2441":1,"2719":1,"2864":1,"2871":1,"2894":1,"2905":1}}],["fresh",{"2":{"360":1,"673":1}}],["french",{"2":{"249":1,"2797":1,"2880":16}}],["freyr",{"2":{"154":2}}],["freeman",{"2":{"2934":1}}],["freebsd",{"2":{"2620":2}}],["freely",{"2":{"1340":1}}],["freezing",{"2":{"717":1}}],["freezes",{"2":{"716":1,"717":1}}],["freeze",{"2":{"716":1,"717":1}}],["freeform",{"2":{"663":1}}],["frees",{"2":{"573":1}}],["free",{"2":{"110":1,"123":1,"124":1,"378":1,"540":1,"1461":2,"1479":1,"1955":1,"2067":1,"2198":1,"2324":1,"2580":1,"2622":1,"2723":1,"2724":1,"2725":2,"2845":2,"2934":1}}],["freedoms",{"2":{"2728":1,"2743":1}}],["freed",{"2":{"45":1,"166":1,"188":1,"191":1}}],["female",{"2":{"2423":1}}],["fe1",{"2":{"2036":1}}],["feather",{"2":{"544":1,"686":1,"2368":2,"2492":1}}],["featuring",{"2":{"236":1}}],["featured",{"2":{"2564":1,"2666":1,"2720":1,"2882":1}}],["featuresobject",{"2":{"2847":1}}],["features",{"0":{"97":1,"117":1,"136":1,"147":1,"162":1,"178":1,"224":1,"238":1,"251":1,"268":1,"279":1,"287":1,"296":1,"319":1,"536":1,"560":1,"561":1,"678":1,"1465":1,"2039":1,"2682":1,"2756":1,"2937":1},"1":{"98":1,"99":1,"100":1,"118":1,"119":1,"120":1,"137":1,"138":1,"139":1,"148":1,"149":1,"163":1,"164":1,"179":1,"288":1,"289":1,"297":1,"298":1,"320":1},"2":{"3":1,"7":1,"15":1,"25":1,"49":1,"94":1,"111":13,"133":4,"134":5,"173":1,"175":1,"176":2,"191":1,"201":1,"236":2,"249":2,"266":12,"268":1,"333":1,"392":1,"408":1,"431":3,"487":1,"536":2,"543":2,"560":1,"569":1,"572":1,"573":3,"590":1,"609":1,"613":1,"616":1,"631":1,"635":1,"638":1,"659":1,"663":1,"678":1,"1340":2,"1346":1,"1379":1,"1389":1,"1390":1,"1402":2,"1406":1,"1415":1,"1458":3,"1459":1,"1465":1,"1479":1,"1535":1,"1585":1,"1606":1,"1624":2,"1917":1,"1968":2,"2269":1,"2287":2,"2290":1,"2301":1,"2376":1,"2377":1,"2384":1,"2408":2,"2428":1,"2448":5,"2452":2,"2453":1,"2463":2,"2551":1,"2562":1,"2579":2,"2673":1,"2695":1,"2707":1,"2715":1,"2721":4,"2722":1,"2744":1,"2756":1,"2782":1,"2810":1,"2818":1,"2829":1,"2847":1,"2882":2,"2883":1,"2894":1,"2895":1,"2896":5,"2897":1,"2900":2,"2901":2,"2903":1,"2936":1,"2938":1}}],["feature",{"0":{"28":1,"572":1,"2893":1},"1":{"2894":1,"2895":1,"2896":1,"2897":1},"2":{"3":1,"15":1,"28":1,"32":1,"46":1,"49":3,"63":1,"70":13,"74":1,"75":1,"87":1,"93":1,"99":3,"103":1,"114":3,"118":1,"126":1,"133":2,"134":5,"137":1,"145":3,"160":1,"172":1,"176":4,"179":2,"186":1,"189":1,"190":2,"191":7,"195":1,"196":1,"199":2,"210":2,"222":1,"224":1,"228":2,"236":1,"248":1,"249":2,"266":1,"285":3,"288":1,"304":1,"306":1,"308":2,"312":2,"315":1,"328":1,"333":1,"408":1,"410":1,"460":1,"510":1,"512":1,"539":1,"552":1,"560":1,"561":1,"572":2,"611":3,"613":1,"616":1,"617":7,"620":1,"666":1,"670":1,"671":1,"673":2,"678":8,"700":1,"711":1,"722":1,"739":1,"762":1,"798":1,"827":1,"853":1,"885":1,"888":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1189":1,"1212":1,"1243":1,"1264":1,"1281":1,"1319":1,"1351":3,"1352":1,"1353":1,"1357":1,"1385":1,"1387":1,"1389":1,"1390":1,"1391":1,"1392":1,"1394":1,"1395":1,"1400":1,"1406":1,"1412":1,"1457":1,"1458":1,"1459":1,"1465":2,"1467":1,"1474":1,"1475":1,"1478":2,"1479":2,"1483":1,"1486":1,"1487":1,"1489":2,"1497":1,"1515":1,"1518":1,"1519":1,"1524":3,"1535":1,"1540":1,"1548":1,"1571":1,"1583":1,"1586":2,"1589":1,"1596":2,"1600":4,"1615":4,"1617":1,"1620":1,"1624":1,"1633":2,"1658":2,"1665":1,"1732":1,"1762":1,"1771":1,"1780":1,"1838":1,"1847":1,"1924":1,"1929":1,"1934":1,"1936":1,"1946":1,"1954":1,"1955":2,"1958":1,"1978":2,"1992":1,"1994":3,"1995":1,"1996":1,"2000":1,"2004":3,"2006":2,"2041":2,"2047":2,"2058":1,"2070":1,"2181":1,"2202":1,"2203":1,"2205":1,"2212":1,"2218":1,"2220":1,"2251":1,"2261":1,"2269":8,"2276":1,"2277":1,"2282":1,"2301":2,"2302":1,"2310":1,"2318":1,"2321":1,"2371":1,"2372":1,"2406":1,"2411":2,"2428":1,"2435":1,"2453":1,"2495":1,"2505":2,"2506":1,"2507":3,"2548":1,"2551":1,"2561":1,"2562":1,"2564":1,"2583":1,"2603":1,"2700":1,"2704":1,"2709":1,"2719":1,"2721":4,"2782":1,"2801":1,"2818":1,"2822":1,"2825":1,"2836":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":2,"2854":2,"2855":1,"2856":2,"2858":1,"2860":1,"2863":1,"2864":1,"2866":2,"2868":2,"2870":1,"2871":1,"2872":2,"2873":2,"2874":2,"2883":1,"2884":2,"2894":1,"2895":3,"2903":1,"2905":3,"2912":1,"2913":1,"2914":1,"2921":1,"2937":2,"2938":1,"2942":2}}],["feat",{"2":{"210":2,"236":2}}],["fedora",{"2":{"191":1,"2594":1,"2619":1}}],["feker",{"2":{"176":1}}],["felix",{"2":{"154":2}}],["few",{"0":{"1761":1},"2":{"131":1,"189":1,"201":1,"210":1,"224":1,"238":1,"359":1,"361":1,"409":1,"538":1,"566":1,"613":1,"678":1,"698":1,"716":1,"750":1,"751":1,"1324":1,"1340":1,"1385":1,"1478":1,"1517":2,"1591":1,"1615":1,"1756":1,"1760":1,"1995":1,"2273":1,"2310":1,"2375":1,"2451":1,"2572":1,"2579":1,"2598":1,"2612":2,"2625":1,"2837":1,"2880":1,"2905":2,"2942":1}}],["fewer",{"2":{"24":1,"45":1,"123":1,"2284":1,"2418":1,"2821":1}}],["fees",{"2":{"2728":1}}],["feed",{"2":{"2776":1}}],["feeding",{"2":{"2422":1}}],["feedback",{"0":{"1671":1,"1672":1,"1677":1,"2321":1},"1":{"1672":1,"1673":1,"1674":1,"1675":1,"1676":1,"1677":1,"1678":2,"1679":2,"1680":1,"1681":1,"1682":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2323":1},"2":{"114":1,"145":1,"188":1,"191":1,"199":1,"228":1,"613":1,"1479":1,"1658":1,"1672":4,"1674":6,"1677":1,"1681":1,"1682":1,"1684":4,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2269":1,"2873":1}}],["feeling",{"2":{"1606":1}}],["feels",{"2":{"119":1}}],["feel",{"2":{"119":1,"320":1,"1421":1,"1479":1,"1962":1,"2067":1,"2069":1,"2198":1,"2324":1,"2579":1,"2903":1,"2905":1,"2923":1}}],["ferris",{"2":{"114":1,"249":1,"294":1}}],["fetch",{"2":{"51":1,"359":1,"405":1,"414":1,"415":1,"416":2,"1949":2,"2279":2,"2627":2,"2630":4,"2632":5}}],["february",{"0":{"66":1,"146":1,"192":1,"237":1,"286":1},"1":{"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1}}],["feb",{"0":{"9":1,"329":1,"1317":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"330":1,"331":1,"332":1,"333":1},"2":{"394":1,"396":1,"407":7}}],["fumes",{"2":{"2422":1}}],["furthest",{"2":{"2416":1}}],["further",{"0":{"2166":1},"2":{"131":1,"134":1,"149":1,"191":1,"199":1,"210":1,"214":1,"306":1,"307":2,"315":1,"408":1,"431":1,"629":1,"698":1,"764":1,"1377":1,"1407":1,"1410":1,"1413":3,"1425":1,"1662":2,"1767":1,"1983":1,"2006":1,"2166":1,"2411":2,"2419":1,"2459":1,"2568":1,"2630":1,"2645":1,"2917":1,"2933":1,"2942":1}}],["fuzz",{"2":{"1680":1}}],["fulfilling",{"2":{"2428":1}}],["fulfill",{"2":{"1375":1}}],["fullremap",{"2":{"1210":2}}],["fullsize",{"2":{"191":1,"222":1,"236":1,"2416":2}}],["full",{"0":{"103":1,"104":1,"114":1,"126":1,"127":1,"134":1,"145":1,"160":1,"176":1,"191":1,"199":1,"210":1,"222":1,"236":1,"249":1,"266":1,"277":1,"285":1,"294":1,"308":1,"317":1,"328":1,"333":1,"623":1,"1196":1,"2940":1},"1":{"104":1,"127":1,"1197":1,"1198":1},"2":{"87":3,"88":2,"93":1,"103":2,"104":2,"107":2,"114":2,"124":1,"126":2,"127":2,"131":1,"134":1,"160":1,"172":1,"173":1,"176":1,"182":1,"189":1,"213":1,"222":1,"234":1,"236":1,"241":2,"245":1,"285":1,"288":1,"298":1,"372":1,"390":1,"429":1,"474":1,"511":1,"623":1,"663":1,"684":1,"1189":1,"1190":1,"1193":1,"1196":2,"1197":1,"1198":3,"1202":1,"1204":1,"1375":1,"1479":1,"1528":1,"1538":1,"1586":1,"1597":1,"1609":1,"1612":1,"1707":1,"1763":1,"1777":1,"1804":1,"1843":4,"1933":1,"2063":15,"2187":1,"2218":1,"2294":1,"2410":1,"2428":1,"2472":1,"2561":1,"2562":2,"2576":1,"2579":1,"2622":1,"2666":1,"2676":1,"2704":2,"2721":3,"2748":3,"2899":1,"2940":1}}],["fully",{"0":{"263":1},"2":{"23":1,"266":1,"1202":1,"1285":1,"1378":1,"2064":1,"2310":1,"2427":1,"2562":1,"2564":1,"2704":1,"2882":1}}],["fuses",{"0":{"2496":1},"2":{"2490":1,"2495":1,"2496":2}}],["fuse",{"2":{"1369":1,"2489":1,"2496":5}}],["funky",{"2":{"1467":1}}],["fundamentals",{"2":{"2415":1}}],["fundamentally",{"2":{"1410":1}}],["fundamental",{"2":{"624":1,"2729":1,"2734":1}}],["func",{"2":{"94":1,"531":2}}],["function96",{"2":{"86":4}}],["functionally",{"2":{"1653":1,"2561":1,"2919":1}}],["functionalities",{"2":{"1610":1}}],["functionality",{"0":{"46":1,"220":1,"1488":1},"2":{"3":1,"7":1,"15":1,"24":1,"30":1,"33":1,"87":1,"93":2,"98":1,"99":2,"114":2,"123":1,"124":1,"126":1,"128":1,"133":1,"134":1,"137":1,"139":1,"164":1,"191":2,"217":1,"220":2,"266":2,"293":1,"305":1,"307":1,"312":2,"314":1,"327":1,"338":3,"374":1,"397":1,"406":4,"562":1,"572":1,"573":2,"587":1,"624":1,"628":1,"643":1,"653":1,"654":2,"718":1,"764":1,"1407":2,"1416":1,"1440":2,"1445":2,"1464":2,"1465":1,"1479":1,"1504":1,"1528":1,"1586":1,"1599":1,"1616":1,"1617":1,"1623":1,"1650":1,"1658":1,"1661":1,"1771":1,"1783":1,"1785":1,"1936":1,"1958":1,"1978":1,"1988":1,"2175":1,"2251":2,"2270":1,"2303":1,"2312":2,"2313":1,"2425":1,"2449":1,"2452":1,"2453":2,"2454":1,"2496":1,"2502":1,"2548":1,"2583":1,"2662":1,"2679":1,"2680":1,"2721":3,"2722":2,"2729":1,"2732":1,"2776":1,"2782":1,"2784":1,"2791":1,"2882":1,"2885":1,"2894":1,"2895":2,"2927":1,"2928":1,"2933":1}}],["functional",{"2":{"28":1,"210":1,"276":1,"284":1,"399":1,"400":1,"401":1,"406":2,"684":1,"754":1,"1457":1,"2562":1,"2729":1,"2734":1,"2735":1}}],["function",{"0":{"151":1,"522":1,"538":1,"630":1,"634":1,"636":1,"637":1,"640":1,"643":1,"648":1,"652":1,"1408":1,"1426":1,"1831":1,"1999":1,"2310":1,"2557":1,"2568":1,"2569":1},"1":{"1832":1,"1833":1},"2":{"22":2,"27":1,"34":1,"46":3,"49":2,"74":1,"90":3,"92":1,"93":2,"114":1,"125":1,"132":1,"133":1,"134":3,"143":1,"145":1,"160":4,"170":1,"176":5,"191":1,"194":1,"195":2,"199":2,"210":2,"214":1,"229":1,"230":2,"236":1,"249":2,"266":1,"273":1,"285":1,"306":1,"308":3,"312":1,"315":1,"328":3,"334":1,"392":1,"431":2,"487":3,"490":1,"514":1,"517":3,"519":2,"520":1,"521":2,"522":2,"530":1,"538":5,"562":2,"625":1,"628":1,"631":2,"637":2,"643":2,"644":2,"645":1,"649":4,"654":2,"655":1,"670":2,"671":2,"693":2,"695":1,"696":3,"703":1,"704":1,"718":4,"720":1,"730":1,"732":1,"760":1,"765":2,"769":4,"773":1,"794":1,"806":1,"810":1,"814":1,"818":1,"820":1,"835":1,"838":1,"842":1,"846":1,"848":1,"864":1,"868":1,"872":1,"876":1,"878":1,"894":1,"900":1,"904":1,"908":1,"910":1,"929":1,"935":1,"939":1,"943":1,"945":1,"963":1,"969":1,"973":1,"977":1,"979":1,"997":1,"1003":1,"1007":1,"1011":1,"1013":1,"1031":1,"1037":1,"1041":1,"1045":1,"1047":1,"1065":1,"1071":1,"1075":1,"1079":1,"1081":1,"1099":1,"1105":1,"1109":1,"1113":1,"1115":1,"1133":1,"1139":1,"1143":1,"1147":1,"1149":1,"1167":1,"1173":1,"1177":1,"1181":1,"1183":1,"1191":1,"1194":1,"1195":1,"1197":1,"1198":1,"1208":1,"1209":1,"1210":3,"1220":1,"1226":1,"1230":1,"1234":1,"1236":1,"1245":3,"1247":1,"1266":4,"1268":1,"1273":1,"1278":1,"1296":2,"1300":1,"1302":1,"1303":1,"1330":2,"1406":1,"1407":4,"1408":1,"1415":1,"1416":1,"1417":1,"1422":3,"1432":1,"1440":2,"1441":2,"1445":1,"1448":1,"1449":1,"1464":3,"1465":1,"1477":1,"1497":1,"1504":1,"1512":1,"1515":2,"1526":4,"1527":1,"1529":1,"1530":1,"1532":1,"1550":1,"1585":2,"1593":1,"1599":1,"1606":1,"1607":1,"1611":2,"1614":3,"1615":1,"1616":3,"1619":1,"1657":1,"1662":4,"1698":1,"1700":1,"1701":1,"1702":1,"1711":1,"1715":1,"1724":1,"1726":1,"1728":1,"1730":1,"1759":1,"1775":3,"1826":1,"1828":1,"1829":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1845":1,"1849":2,"1859":1,"1861":1,"1938":2,"1949":2,"1956":2,"1979":1,"1981":3,"1982":2,"1983":2,"1985":1,"1987":3,"1992":1,"2001":1,"2002":1,"2004":1,"2007":5,"2008":2,"2030":1,"2046":1,"2050":1,"2051":1,"2068":1,"2069":1,"2072":2,"2075":1,"2085":1,"2087":1,"2160":1,"2167":1,"2169":1,"2188":1,"2190":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1,"2200":1,"2207":1,"2211":1,"2217":1,"2227":1,"2231":1,"2233":1,"2248":1,"2266":1,"2270":2,"2279":2,"2283":4,"2293":3,"2294":1,"2299":1,"2302":5,"2303":3,"2310":3,"2311":1,"2312":3,"2313":2,"2316":1,"2323":1,"2337":1,"2338":1,"2339":1,"2373":1,"2374":1,"2450":1,"2454":2,"2506":2,"2551":1,"2554":2,"2555":1,"2556":1,"2557":1,"2566":1,"2568":1,"2569":5,"2570":3,"2583":1,"2644":1,"2678":7,"2679":5,"2680":4,"2695":1,"2734":1,"2745":1,"2749":10,"2750":18,"2754":1,"2755":1,"2784":3,"2786":2,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2886":1,"2903":1,"2905":4,"2912":1,"2913":1,"2914":6,"2919":2,"2921":2,"2925":1,"2927":4,"2929":2,"2933":2,"2941":1}}],["functions",{"0":{"22":1,"243":1,"694":1,"1207":1,"1422":1,"1445":1,"1464":1,"1525":1,"1575":1,"1593":1,"1826":1,"1981":1,"1982":1,"2001":1,"2002":1,"2169":1,"2187":1,"2188":1,"2189":1,"2195":1,"2196":1,"2211":1,"2217":1,"2299":1,"2316":1,"2373":1,"2695":1,"2782":1,"2924":1,"2925":1},"1":{"695":1,"696":1,"1208":1,"1209":1,"1210":1,"1446":1,"1447":1,"1448":1,"1449":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1526":1,"1527":1,"1528":1,"1529":1,"1530":1,"1576":1,"1577":1,"2188":1,"2189":1,"2190":2,"2191":2,"2192":2,"2193":2,"2194":2,"2195":2,"2196":2,"2197":2,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"16":1,"22":1,"31":1,"49":3,"50":1,"62":1,"93":2,"114":2,"125":1,"134":2,"145":1,"160":2,"176":1,"185":1,"190":1,"191":3,"199":4,"214":2,"222":4,"236":2,"240":1,"243":1,"249":2,"266":1,"273":1,"285":2,"294":1,"308":1,"323":2,"331":1,"431":1,"503":1,"512":1,"527":1,"532":1,"538":4,"542":1,"590":1,"622":2,"623":1,"625":3,"628":3,"631":1,"637":2,"641":1,"644":1,"645":2,"646":2,"692":1,"713":1,"718":1,"759":1,"760":2,"761":1,"769":1,"1195":1,"1197":2,"1198":1,"1242":1,"1247":1,"1263":1,"1268":1,"1324":1,"1375":3,"1376":1,"1407":1,"1416":1,"1421":1,"1422":9,"1425":1,"1445":2,"1451":1,"1458":2,"1464":3,"1466":2,"1478":1,"1481":1,"1492":1,"1504":1,"1511":1,"1526":1,"1530":1,"1593":1,"1606":1,"1615":1,"1628":1,"1632":1,"1651":2,"1662":1,"1698":1,"1759":1,"1776":1,"1824":1,"1826":1,"1829":1,"1831":1,"1849":1,"1932":1,"1937":1,"1956":1,"1977":2,"1982":1,"1983":1,"1995":1,"2000":1,"2001":3,"2002":1,"2004":1,"2008":1,"2039":1,"2067":2,"2072":1,"2166":1,"2174":2,"2187":2,"2191":1,"2198":2,"2221":1,"2283":1,"2293":1,"2299":1,"2302":2,"2303":2,"2310":1,"2311":4,"2312":3,"2411":1,"2449":1,"2450":1,"2454":1,"2565":1,"2603":1,"2645":1,"2695":1,"2719":1,"2721":3,"2744":1,"2749":1,"2750":5,"2782":2,"2783":1,"2786":1,"2882":5,"2900":1,"2904":1,"2912":1,"2924":1,"2925":2,"2928":1,"2932":1,"2933":2}}],["fudge",{"2":{"249":1}}],["future",{"0":{"598":1,"2248":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2253":1},"2":{"6":1,"10":1,"110":1,"141":1,"145":1,"153":1,"182":1,"194":1,"198":1,"201":1,"262":2,"303":1,"307":1,"332":1,"334":1,"408":1,"537":1,"595":1,"598":1,"656":1,"657":1,"1263":1,"1404":1,"1410":1,"2455":1,"2562":1,"2563":1,"2564":1,"2721":1,"2722":1,"2723":1,"2895":1}}],["fn+f",{"2":{"1358":1}}],["fno",{"2":{"317":1}}],["fnv",{"2":{"176":1}}],["fn",{"0":{"3":1,"7":1,"15":1,"1353":1},"2":{"3":2,"7":4,"15":2,"16":1,"31":1,"38":1,"49":1,"114":2,"134":1,"589":2,"1344":2,"1353":2,"1464":1,"1760":2,"1773":6,"1947":3,"2183":1,"2277":3,"2289":1,"2294":1,"2302":14,"2303":10,"2307":1,"2308":2,"2309":1,"2310":1,"2311":2,"2312":1,"2556":1}}],["fischl",{"2":{"2485":1}}],["fish",{"2":{"505":1}}],["fifth",{"2":{"1820":1,"2296":1,"2302":1}}],["fifo",{"2":{"191":1}}],["five",{"0":{"1819":1},"1":{"1820":1,"1821":1},"2":{"1783":1,"2289":1,"2293":1,"2302":1,"2643":1,"2757":1,"2775":1,"2872":1}}],["figuring",{"2":{"1317":1}}],["figure",{"2":{"427":1,"726":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1410":1,"1532":2,"2310":1,"2578":1,"2610":1}}],["fiddle",{"2":{"2302":1}}],["fiddling",{"2":{"391":1}}],["fidelity",{"2":{"285":1}}],["fiuxup",{"2":{"249":1}}],["filthier",{"2":{"1522":1}}],["filterpaper",{"2":{"1534":1}}],["filter=ez",{"2":{"1309":1,"1310":1}}],["filtered",{"2":{"431":1}}],["filtering",{"0":{"2165":1},"2":{"431":1,"562":1,"1313":1,"2046":1,"2050":1,"2052":1,"2372":2,"2917":1,"2937":1}}],["filters",{"2":{"236":1,"431":1}}],["filter",{"2":{"199":1,"431":7,"441":1,"1313":1,"1409":1,"1521":2,"2448":1,"2904":2,"2912":1}}],["fills",{"2":{"2291":1,"2572":1}}],["filled",{"2":{"2063":1,"2750":9}}],["fill",{"2":{"427":1,"428":1,"435":1,"438":1,"440":1,"443":1,"603":1,"1486":1,"2052":1,"2291":1,"2713":1,"2750":3}}],["filen",{"2":{"457":1}}],["filenames",{"2":{"457":1,"517":1,"2719":1}}],["filename>",{"2":{"348":1,"461":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2495":1}}],["filename",{"2":{"317":1,"436":1,"437":2,"445":1,"446":1,"447":1,"448":1,"498":2,"517":1,"1362":1,"1627":1,"2495":1,"2501":1,"2607":1}}],["file2",{"2":{"457":1,"2633":1}}],["file1",{"2":{"457":1,"2633":1}}],["file>",{"2":{"434":1}}],["fileformat",{"2":{"199":1}}],["filegen",{"2":{"160":1}}],["file",{"0":{"497":1,"558":1,"569":1,"599":1,"602":1,"2409":1,"2607":1,"2776":1},"1":{"559":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"570":1,"571":1,"572":1,"573":1},"2":{"5":2,"16":1,"25":1,"65":2,"70":1,"73":1,"87":1,"114":2,"120":1,"132":2,"160":2,"164":1,"176":3,"189":1,"191":2,"222":4,"236":2,"249":1,"262":2,"266":1,"293":1,"305":1,"314":1,"328":1,"333":1,"342":1,"347":2,"360":1,"364":1,"370":1,"371":1,"387":1,"388":1,"397":1,"403":1,"406":1,"427":1,"431":1,"434":1,"450":2,"451":2,"456":1,"460":2,"461":3,"464":1,"465":1,"466":1,"487":1,"494":1,"498":3,"507":1,"509":2,"510":4,"511":2,"553":1,"558":2,"569":1,"586":2,"587":1,"590":1,"591":1,"598":4,"602":2,"606":1,"611":1,"616":2,"617":3,"621":4,"622":1,"623":1,"658":1,"664":1,"670":1,"678":1,"683":1,"750":1,"1192":2,"1195":3,"1198":3,"1203":1,"1205":1,"1206":1,"1210":1,"1313":1,"1324":1,"1329":1,"1362":5,"1407":1,"1432":2,"1433":1,"1435":1,"1458":2,"1460":4,"1464":1,"1466":3,"1479":3,"1486":2,"1496":2,"1521":6,"1583":1,"1584":2,"1596":1,"1601":1,"1616":2,"1624":1,"1625":1,"1627":4,"1628":2,"1629":1,"1630":1,"1655":1,"1656":1,"1762":1,"1780":1,"1840":1,"1844":2,"1849":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1937":1,"1938":1,"1947":1,"1948":2,"1951":1,"1991":1,"2060":1,"2066":2,"2072":1,"2181":1,"2184":1,"2264":2,"2265":1,"2266":2,"2267":2,"2268":1,"2269":1,"2277":1,"2281":1,"2294":1,"2302":2,"2305":1,"2310":2,"2375":1,"2376":1,"2377":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2398":1,"2401":2,"2407":7,"2409":1,"2410":13,"2411":9,"2412":3,"2425":1,"2426":2,"2427":1,"2443":5,"2445":1,"2446":3,"2447":5,"2448":5,"2449":5,"2450":5,"2451":1,"2457":3,"2466":1,"2490":1,"2494":1,"2495":3,"2497":5,"2501":2,"2549":1,"2553":2,"2554":1,"2555":2,"2556":1,"2558":1,"2575":1,"2577":6,"2578":3,"2580":2,"2588":1,"2599":2,"2600":7,"2602":2,"2603":3,"2604":1,"2607":5,"2622":2,"2627":13,"2631":1,"2633":1,"2645":1,"2655":1,"2669":1,"2671":3,"2674":2,"2676":7,"2687":1,"2689":1,"2700":1,"2702":2,"2703":1,"2705":1,"2709":2,"2719":1,"2721":4,"2748":10,"2750":2,"2756":1,"2758":1,"2760":6,"2764":1,"2766":2,"2768":6,"2769":3,"2775":4,"2776":2,"2777":3,"2778":1,"2781":2,"2788":1,"2844":2,"2930":1,"2936":1,"2937":6,"2941":1,"2942":1}}],["files>",{"2":{"2627":1}}],["filesystem",{"2":{"2619":1}}],["files",{"0":{"5":1,"1923":1,"2451":1,"2598":1,"2601":1,"2880":1},"2":{"1":1,"32":1,"50":4,"69":1,"73":2,"75":1,"86":1,"92":1,"113":1,"114":5,"118":1,"132":1,"133":1,"134":3,"145":2,"176":2,"191":3,"199":7,"201":2,"208":1,"212":2,"222":3,"224":2,"234":2,"236":4,"238":1,"249":3,"262":1,"266":1,"277":1,"285":2,"294":3,"308":3,"317":1,"333":1,"338":3,"397":1,"427":1,"428":1,"431":1,"437":1,"444":1,"453":2,"456":1,"457":5,"467":1,"505":1,"510":1,"511":1,"542":2,"553":3,"556":1,"558":1,"566":1,"570":4,"572":1,"577":1,"578":1,"579":2,"587":1,"602":1,"611":2,"663":2,"666":2,"667":1,"670":1,"671":2,"1200":1,"1201":1,"1362":1,"1458":3,"1460":1,"1464":1,"1465":1,"1466":3,"1526":1,"1626":1,"1627":1,"1628":1,"1655":1,"1844":1,"2066":1,"2266":3,"2408":2,"2409":1,"2410":4,"2411":2,"2444":1,"2447":1,"2448":2,"2451":2,"2457":1,"2490":1,"2492":1,"2494":1,"2497":1,"2554":1,"2580":1,"2582":2,"2587":1,"2589":1,"2590":1,"2591":1,"2592":2,"2593":1,"2596":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":2,"2612":2,"2626":1,"2627":2,"2630":1,"2633":4,"2655":1,"2671":1,"2672":1,"2678":1,"2679":1,"2680":1,"2687":1,"2694":1,"2707":2,"2719":5,"2720":1,"2721":7,"2728":1,"2746":2,"2776":1,"2820":1,"2844":5,"2877":1,"2878":1,"2937":4}}],["finnish",{"2":{"2880":3}}],["finger",{"2":{"1413":1,"1965":3,"1971":1,"2161":3,"2293":1,"2294":1}}],["fingers",{"2":{"1413":1,"1491":1,"1965":1}}],["fingerprintusbhost",{"2":{"1943":1}}],["fingerprint",{"2":{"199":1}}],["finite",{"2":{"573":1}}],["finishing",{"0":{"2428":1},"2":{"562":1}}],["finishes",{"2":{"387":1,"2302":2,"2303":1,"2927":1}}],["finished",{"0":{"372":1,"582":1},"2":{"324":1,"368":1,"371":1,"372":1,"579":1,"704":1,"732":1,"810":1,"814":1,"818":1,"820":1,"838":1,"842":1,"846":1,"848":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1226":1,"1230":1,"1234":1,"1236":1,"1303":1,"1844":2,"2050":1,"2066":2,"2302":2,"2303":5,"2308":2,"2309":2,"2310":3,"2311":3,"2312":4,"2501":1}}],["finish",{"0":{"2338":1,"2362":1},"2":{"387":1,"1655":2,"1657":1,"1788":1,"1798":1,"2511":1,"2655":1}}],["finalize",{"2":{"2398":1}}],["final",{"0":{"2888":1},"2":{"553":1,"556":1,"579":1,"671":1,"1359":4,"1532":1,"2302":1,"2421":1,"2676":1,"2847":1,"2882":1,"2933":1}}],["finally",{"2":{"163":1,"386":1,"683":1,"1409":1,"1440":1,"2052":1,"2252":1,"2303":1,"2312":1,"2322":1,"2499":1,"2684":1,"2712":1}}],["finer",{"2":{"2215":1,"2503":1}}],["fine40",{"2":{"222":1}}],["fine",{"0":{"2040":1},"2":{"176":1,"1335":1,"1486":1,"1511":1,"1781":1,"1824":1,"2041":1,"2167":1,"2168":1,"2258":1,"2291":1,"2580":1,"2622":1,"2652":1,"2669":1,"2721":2,"2724":1,"2914":1,"2924":1}}],["finder",{"2":{"2393":1,"2395":1,"2397":1,"2607":2}}],["finds",{"2":{"1329":1,"1330":1}}],["finding",{"2":{"614":1}}],["find",{"0":{"431":1,"2843":1},"2":{"31":4,"34":1,"124":1,"222":1,"233":1,"236":2,"240":1,"245":1,"248":1,"249":1,"285":1,"387":1,"391":1,"392":1,"408":3,"412":1,"427":1,"431":4,"487":1,"503":1,"511":1,"538":3,"609":1,"611":1,"614":1,"659":1,"673":1,"684":1,"685":1,"746":1,"1197":1,"1200":1,"1201":1,"1284":1,"1334":1,"1335":1,"1337":1,"1379":1,"1402":1,"1445":1,"1497":2,"1522":1,"1675":1,"1756":1,"1782":1,"2050":1,"2201":1,"2258":1,"2266":1,"2312":1,"2401":1,"2407":2,"2410":1,"2421":1,"2423":1,"2430":1,"2496":1,"2503":2,"2541":2,"2553":1,"2554":2,"2555":1,"2573":1,"2574":1,"2578":3,"2582":1,"2627":2,"2695":1,"2710":1,"2862":1,"2903":1,"2905":2,"2919":1,"2921":1,"2927":1,"2928":1,"2932":1,"2934":1,"2939":1}}],["fields",{"2":{"191":1,"308":1,"323":1,"1624":1,"1636":1,"2656":1,"2758":1,"2766":1}}],["field",{"2":{"160":1,"308":1,"391":1,"406":5,"685":1,"1624":2,"1779":1,"2303":1,"2599":1,"2776":2,"2882":1,"2919":1}}],["fitler",{"2":{"1521":2,"1532":2}}],["fits",{"2":{"1486":1,"2322":1}}],["fitness",{"2":{"1461":1,"2725":1}}],["fit",{"2":{"124":2,"134":1,"408":1,"1417":1,"1656":1,"1956":2,"2283":2,"2707":1,"2881":2}}],["fitting",{"2":{"114":1}}],["firefox",{"2":{"2582":1}}],["fired",{"2":{"2411":1}}],["fire",{"2":{"1606":3,"1675":2,"2303":1}}],["firstly",{"2":{"2249":1,"2501":1}}],["first",{"0":{"2575":1,"2652":1},"1":{"2576":1,"2577":1,"2578":1,"2579":1,"2580":1,"2581":1},"2":{"46":1,"65":1,"90":2,"113":1,"114":1,"120":1,"130":1,"142":1,"201":1,"210":1,"288":1,"317":1,"340":1,"414":2,"417":1,"423":1,"487":1,"510":1,"519":1,"522":1,"553":1,"558":1,"562":1,"563":1,"607":1,"613":1,"614":2,"616":1,"617":2,"627":1,"645":1,"654":1,"655":1,"663":1,"684":1,"701":2,"703":1,"713":1,"723":1,"726":1,"730":1,"751":2,"752":1,"802":1,"806":1,"831":1,"835":1,"860":1,"864":1,"890":1,"894":1,"925":1,"929":1,"959":1,"963":1,"993":1,"997":1,"1027":1,"1031":1,"1061":1,"1065":1,"1095":1,"1099":1,"1129":1,"1133":1,"1163":1,"1167":1,"1216":1,"1220":1,"1249":1,"1282":1,"1294":1,"1295":1,"1302":1,"1334":1,"1341":1,"1345":1,"1363":1,"1378":2,"1421":1,"1440":2,"1466":1,"1504":1,"1532":3,"1533":1,"1599":1,"1606":1,"1608":1,"1609":1,"1610":1,"1616":1,"1621":1,"1655":1,"1662":2,"1696":2,"1714":1,"1716":1,"1757":1,"1780":2,"1811":1,"1814":1,"1817":1,"1820":1,"1840":1,"1907":1,"1910":1,"1913":1,"1933":1,"1946":1,"1954":1,"1961":1,"1968":1,"1976":1,"1979":1,"2050":1,"2052":2,"2060":1,"2063":1,"2151":1,"2154":1,"2167":1,"2203":1,"2262":1,"2265":1,"2266":1,"2271":1,"2277":1,"2288":1,"2302":4,"2303":3,"2312":1,"2323":2,"2409":1,"2418":1,"2421":1,"2429":1,"2453":1,"2457":2,"2477":1,"2481":1,"2573":1,"2583":1,"2605":1,"2623":1,"2626":1,"2627":3,"2628":1,"2633":1,"2643":1,"2658":1,"2671":1,"2676":1,"2711":1,"2720":2,"2721":1,"2748":2,"2750":1,"2770":8,"2775":1,"2777":1,"2784":1,"2797":1,"2830":1,"2831":1,"2848":2,"2862":1,"2876":1,"2882":1,"2898":1,"2912":1,"2914":1,"2919":2,"2927":1,"2931":1}}],["firmware\`",{"2":{"421":2,"422":2,"423":2}}],["firmwares",{"2":{"164":1,"173":1,"263":1,"428":1,"2582":1}}],["firmware",{"0":{"31":1,"34":1,"56":1,"164":1,"273":1,"276":1,"284":1,"599":1,"1334":1,"2261":1,"2425":1,"2426":1,"2427":1,"2460":1,"2461":1,"2469":1,"2472":1,"2490":1,"2497":1,"2575":1,"2580":1,"2581":1,"2808":1,"2847":1},"1":{"2262":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2268":1,"2269":1,"2270":1,"2271":1,"2461":1,"2462":1,"2463":1,"2464":1,"2465":1,"2491":1,"2492":1,"2493":1,"2494":1,"2576":1,"2577":1,"2578":1,"2579":1,"2580":1,"2581":1},"2":{"2":1,"3":1,"10":1,"15":1,"21":1,"24":1,"28":2,"30":2,"33":2,"36":1,"37":1,"43":1,"49":1,"70":3,"73":1,"107":1,"112":1,"114":3,"116":1,"124":1,"130":2,"131":1,"132":1,"156":1,"160":4,"164":1,"166":1,"201":1,"203":1,"210":2,"212":1,"224":2,"228":3,"236":1,"238":1,"240":1,"243":1,"249":4,"265":2,"266":2,"268":1,"273":5,"275":1,"276":3,"284":3,"320":1,"331":1,"334":1,"347":1,"348":1,"360":3,"364":1,"365":1,"367":1,"368":3,"369":1,"370":1,"372":5,"388":1,"397":2,"399":2,"400":2,"401":2,"402":1,"403":2,"405":2,"408":2,"416":4,"419":1,"421":1,"422":1,"423":1,"424":2,"427":8,"428":2,"430":1,"432":1,"439":1,"444":1,"445":2,"448":1,"450":2,"451":2,"454":1,"462":1,"487":1,"507":2,"508":1,"515":3,"563":1,"570":3,"572":2,"576":1,"578":2,"584":1,"586":3,"587":2,"590":2,"591":1,"592":1,"593":1,"596":1,"599":1,"600":1,"611":2,"613":1,"614":1,"615":1,"631":2,"649":4,"717":1,"751":1,"1295":1,"1308":1,"1310":1,"1313":1,"1317":1,"1332":1,"1345":1,"1362":2,"1363":1,"1385":1,"1392":1,"1415":1,"1457":1,"1466":2,"1494":1,"1515":1,"1516":1,"1518":1,"1585":1,"1621":2,"1696":1,"1843":1,"1845":1,"1937":2,"1950":1,"1994":1,"2063":2,"2068":1,"2159":1,"2174":1,"2177":1,"2182":1,"2254":2,"2263":1,"2264":1,"2265":2,"2266":2,"2268":1,"2274":1,"2290":2,"2301":1,"2302":1,"2318":1,"2367":2,"2368":2,"2372":1,"2378":2,"2380":3,"2385":1,"2387":4,"2392":2,"2394":2,"2396":2,"2397":1,"2398":4,"2399":1,"2401":3,"2407":1,"2410":2,"2411":1,"2416":2,"2424":2,"2425":7,"2427":1,"2428":1,"2443":2,"2444":1,"2452":1,"2459":5,"2461":1,"2466":1,"2467":1,"2468":1,"2469":3,"2472":1,"2474":1,"2475":1,"2477":1,"2481":1,"2489":1,"2493":1,"2494":1,"2497":6,"2499":1,"2551":1,"2552":2,"2559":2,"2560":10,"2561":9,"2562":4,"2563":3,"2564":1,"2572":1,"2573":3,"2575":2,"2576":1,"2577":1,"2578":1,"2580":3,"2581":2,"2582":1,"2583":7,"2584":1,"2587":1,"2588":1,"2589":2,"2590":1,"2591":1,"2592":1,"2600":4,"2602":3,"2604":1,"2605":2,"2606":1,"2607":6,"2608":1,"2609":2,"2610":1,"2611":1,"2621":1,"2622":5,"2623":1,"2625":1,"2630":10,"2632":6,"2636":1,"2648":1,"2652":1,"2655":1,"2657":1,"2665":1,"2666":1,"2667":1,"2669":1,"2671":1,"2673":1,"2674":1,"2675":1,"2676":6,"2677":1,"2678":1,"2679":1,"2705":1,"2707":1,"2721":5,"2724":1,"2726":2,"2727":1,"2728":1,"2732":2,"2735":1,"2740":2,"2742":1,"2743":1,"2746":1,"2748":6,"2749":12,"2750":2,"2751":1,"2752":1,"2775":2,"2800":1,"2820":1,"2844":3,"2845":1,"2847":1,"2881":1,"2882":2,"2885":2,"2886":1,"2888":1,"2894":1,"2895":4,"2897":1,"2905":1,"2912":1,"2913":1,"2923":1,"2926":1,"2929":2,"2933":1,"2940":1}}],["fixme",{"2":{"539":1}}],["fixmes",{"0":{"539":1},"2":{"539":2}}],["fixups",{"2":{"114":1}}],["fixup",{"2":{"65":1,"92":2,"114":6,"134":3,"145":2,"160":3,"176":9,"191":23,"199":9,"210":3,"222":13,"236":1,"249":7,"266":4,"277":4,"285":1,"308":1,"317":1,"328":4}}],["fixing",{"0":{"28":1},"2":{"50":1,"114":1,"199":1,"236":1,"614":1,"2723":2}}],["fixed",{"0":{"25":1},"2":{"25":1,"50":1,"73":1,"86":1,"114":1,"145":1,"160":1,"191":1,"199":1,"222":2,"236":1,"266":1,"308":1,"491":1,"627":1,"1370":1,"2472":1,"2621":1,"2644":1,"2734":1}}],["fixes",{"0":{"48":1,"62":1,"73":1,"92":1},"2":{"5":1,"73":2,"92":1,"114":3,"134":3,"145":4,"160":8,"176":7,"190":2,"191":7,"199":3,"210":1,"222":2,"236":2,"249":1,"266":2,"277":3,"285":2,"294":1,"308":2,"317":3,"328":1,"333":2,"399":1,"2660":1}}],["fix",{"0":{"11":1},"2":{"6":1,"28":1,"32":1,"50":1,"51":1,"62":1,"73":6,"74":1,"75":1,"77":1,"92":8,"94":2,"95":2,"114":68,"133":1,"134":42,"145":12,"160":32,"175":1,"176":40,"190":2,"191":47,"199":25,"210":23,"222":25,"236":17,"249":19,"266":10,"277":5,"285":4,"294":5,"308":10,"317":4,"328":7,"333":3,"408":1,"433":3,"611":2,"617":2,"1315":1,"1336":2,"1345":1,"1484":1,"1589":1,"1941":1,"2447":1,"2473":1,"2546":2,"2566":2,"2609":1,"2621":2,"2625":1,"2644":1,"2719":1,"2728":1,"2740":1}}],["footprint",{"0":{"2179":1},"2":{"2661":1,"2682":1}}],["footnotes",{"2":{"335":1}}],["foo=none",{"2":{"531":1}}],["foo=",{"2":{"531":1}}],["foo",{"2":{"510":6,"514":1,"516":1,"531":2,"532":1,"533":2,"627":2,"629":2,"1407":1}}],["font",{"0":{"465":1,"466":1,"2758":1,"2760":1,"2763":1,"2764":1},"1":{"2759":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1},"2":{"328":1,"465":1,"466":1,"1948":5,"1951":8,"2278":1,"2281":8,"2748":18,"2750":34,"2758":6,"2759":1,"2760":6,"2761":2,"2762":3,"2763":4,"2764":1}}],["fonts",{"2":{"138":2,"248":1,"249":1,"328":1,"1951":3,"2281":3,"2746":2,"2747":5,"2748":1,"2750":5}}],["fox",{"2":{"222":1}}],["focused",{"2":{"538":1,"2573":1}}],["focuses",{"2":{"334":1}}],["focusing",{"2":{"233":1}}],["focus",{"2":{"182":1,"201":1,"487":1,"1669":1,"1782":1,"2656":1,"2921":1}}],["foundational",{"2":{"2901":1}}],["foundation",{"2":{"1461":1,"2725":1}}],["found",{"0":{"1336":1},"2":{"124":2,"221":1,"288":1,"332":1,"372":1,"380":1,"383":1,"391":1,"427":1,"433":1,"487":1,"503":1,"540":1,"541":1,"586":1,"609":1,"746":1,"747":1,"748":1,"758":1,"1347":1,"1374":1,"1421":1,"1479":1,"1519":1,"1526":1,"1533":1,"1732":1,"1950":1,"2050":1,"2052":1,"2280":1,"2284":1,"2286":1,"2287":1,"2367":1,"2388":1,"2405":3,"2408":2,"2411":1,"2419":1,"2428":1,"2472":1,"2501":1,"2542":1,"2565":1,"2576":1,"2583":1,"2585":1,"2621":1,"2622":1,"2665":1,"2688":1,"2694":1,"2748":1,"2750":1,"2828":1,"2899":1,"2927":1,"2942":1}}],["fourth",{"2":{"1487":1,"1817":1,"1820":1,"2293":1,"2302":1,"2308":2}}],["fourier",{"2":{"45":1}}],["four",{"0":{"1816":1},"1":{"1817":1,"1818":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"154":2,"160":1,"510":1,"512":1,"586":1,"721":1,"797":1,"800":1,"852":1,"855":1,"884":1,"887":1,"916":1,"951":1,"985":1,"988":1,"1019":1,"1022":1,"1053":1,"1056":1,"1087":1,"1121":1,"1155":1,"1211":1,"1214":1,"1375":1,"1661":1,"1693":1,"2215":1,"2239":1,"2293":2,"2496":1,"2500":1,"2775":1,"2875":2}}],["folks",{"2":{"399":1,"400":1,"401":1,"402":1,"405":1}}],["foldkb",{"2":{"134":1}}],["folder2",{"2":{"1432":1}}],["folder1",{"2":{"1432":1}}],["folder>",{"2":{"1427":3}}],["folder",{"0":{"43":1,"293":1,"305":1,"314":1,"2444":1},"1":{"2445":1,"2446":1,"2447":1,"2448":1,"2449":1,"2450":1},"2":{"70":1,"72":2,"111":1,"113":3,"114":5,"133":1,"134":1,"145":2,"160":20,"176":2,"199":2,"215":1,"222":6,"236":1,"249":10,"266":1,"277":2,"293":2,"294":10,"305":2,"314":2,"317":2,"342":1,"347":2,"387":3,"391":1,"427":1,"430":1,"444":1,"554":1,"556":2,"570":1,"615":1,"616":2,"622":1,"623":1,"1427":2,"1428":3,"1432":2,"1457":2,"1460":1,"1466":1,"1479":1,"1494":1,"1496":1,"1521":4,"1844":1,"2066":1,"2405":3,"2406":1,"2407":1,"2408":1,"2410":1,"2442":1,"2443":4,"2444":2,"2447":14,"2448":15,"2455":3,"2580":1,"2598":2,"2599":2,"2601":1,"2603":1,"2607":1,"2621":1,"2622":1,"2651":1,"2652":3,"2671":3,"2674":2,"2721":1,"2776":1,"2937":5,"2939":1}}],["folders",{"0":{"556":1,"2443":1},"2":{"35":1,"37":1,"43":1,"114":1,"160":1,"210":1,"215":1,"293":1,"305":1,"308":1,"314":1,"553":1,"555":1,"556":3,"1427":1,"2410":3,"2443":3,"2447":1,"2937":1}}],["followed",{"2":{"417":1,"673":1,"1410":1,"1413":3,"1438":1,"1442":2,"1532":2,"1628":1,"1780":3,"2559":1,"2648":1,"2719":2,"2748":1,"2760":1,"2768":1,"2770":2,"2818":1,"2911":1}}],["followup",{"2":{"160":1,"224":1,"2722":1}}],["follow",{"2":{"114":1,"125":1,"185":1,"228":1,"240":1,"424":2,"510":3,"616":1,"617":2,"663":1,"664":1,"666":2,"680":1,"1192":1,"1195":1,"1198":1,"1200":1,"1201":1,"1340":1,"1419":1,"1533":1,"1587":1,"1631":1,"2324":1,"2445":1,"2452":1,"2467":1,"2572":1,"2573":1,"2596":1,"2617":1,"2620":1,"2621":1,"2651":1,"2708":1,"2721":1,"2765":1,"2937":1}}],["following",{"2":{"30":1,"31":2,"33":1,"34":3,"45":1,"67":1,"86":1,"102":1,"118":1,"119":1,"122":1,"125":1,"143":1,"144":1,"154":1,"157":1,"167":1,"168":1,"181":1,"185":1,"194":2,"197":1,"212":1,"217":1,"248":1,"255":2,"256":1,"273":1,"284":1,"303":1,"306":1,"307":1,"315":1,"316":1,"370":1,"373":1,"428":2,"431":1,"473":1,"507":1,"510":1,"519":1,"544":1,"571":1,"573":1,"591":1,"613":1,"622":1,"623":2,"645":2,"655":1,"659":1,"667":1,"672":1,"688":1,"700":1,"701":1,"718":1,"720":1,"723":1,"724":1,"726":1,"739":1,"741":1,"742":1,"758":1,"760":1,"762":1,"764":1,"765":1,"799":1,"800":1,"802":1,"828":1,"831":1,"854":1,"855":1,"856":1,"857":1,"858":1,"860":1,"886":1,"887":1,"888":1,"890":1,"918":1,"919":1,"921":1,"922":1,"923":1,"925":1,"953":1,"954":1,"955":1,"956":1,"957":1,"959":1,"987":1,"988":1,"989":1,"990":1,"991":1,"993":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1027":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1061":1,"1089":1,"1090":1,"1092":1,"1093":1,"1095":1,"1123":1,"1124":1,"1126":1,"1127":1,"1129":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1163":1,"1200":3,"1201":3,"1202":1,"1213":1,"1214":1,"1216":1,"1243":1,"1245":1,"1264":1,"1281":1,"1282":1,"1284":1,"1285":1,"1288":1,"1292":1,"1294":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1313":2,"1319":1,"1326":1,"1328":1,"1329":1,"1355":1,"1369":1,"1376":1,"1379":1,"1386":1,"1387":1,"1389":1,"1390":1,"1392":1,"1400":1,"1402":1,"1404":1,"1412":1,"1413":1,"1414":1,"1422":1,"1457":1,"1459":1,"1466":1,"1468":1,"1474":1,"1478":1,"1484":1,"1497":2,"1511":1,"1512":1,"1519":1,"1529":1,"1533":2,"1536":1,"1538":1,"1539":1,"1547":1,"1548":2,"1550":1,"1551":1,"1572":1,"1573":1,"1588":1,"1600":1,"1603":2,"1606":1,"1614":1,"1616":1,"1621":1,"1622":2,"1624":1,"1632":1,"1634":1,"1655":1,"1657":1,"1661":1,"1664":1,"1672":2,"1677":1,"1681":1,"1684":1,"1686":1,"1687":1,"1688":1,"1689":1,"1692":1,"1693":1,"1695":1,"1733":1,"1735":1,"1736":1,"1737":1,"1770":1,"1782":1,"1784":1,"1787":1,"1788":1,"1789":1,"1790":1,"1824":1,"1826":1,"1828":1,"1831":1,"1839":1,"1840":1,"1845":1,"1913":1,"1915":1,"1916":1,"1926":1,"1927":1,"1928":1,"1929":1,"1930":1,"1931":1,"1934":1,"1937":1,"1946":1,"1948":1,"1958":1,"1962":1,"1973":1,"1977":2,"1980":1,"1983":1,"1988":1,"1989":1,"1990":1,"1999":1,"2004":1,"2008":2,"2010":1,"2034":1,"2037":1,"2039":1,"2040":1,"2041":1,"2046":1,"2048":1,"2049":1,"2050":1,"2052":1,"2059":1,"2060":1,"2064":1,"2065":1,"2068":1,"2159":1,"2160":1,"2161":1,"2162":1,"2164":1,"2166":1,"2168":1,"2170":1,"2171":1,"2172":2,"2178":1,"2179":1,"2200":1,"2203":1,"2208":1,"2213":1,"2219":1,"2220":1,"2221":1,"2224":1,"2249":1,"2261":1,"2262":1,"2264":1,"2265":2,"2266":2,"2267":2,"2269":1,"2277":1,"2278":1,"2287":1,"2288":1,"2289":1,"2290":1,"2298":1,"2310":1,"2311":1,"2312":2,"2319":1,"2320":1,"2321":1,"2322":2,"2323":1,"2324":1,"2368":1,"2369":1,"2376":1,"2377":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2401":1,"2407":1,"2408":1,"2410":2,"2416":1,"2430":1,"2446":1,"2448":2,"2449":1,"2459":3,"2476":1,"2495":1,"2496":1,"2499":1,"2501":3,"2554":1,"2558":1,"2560":2,"2561":1,"2568":1,"2569":1,"2592":1,"2594":2,"2595":1,"2598":1,"2600":1,"2601":2,"2603":1,"2605":1,"2608":1,"2614":1,"2621":4,"2627":1,"2632":2,"2676":3,"2677":2,"2687":3,"2692":1,"2700":1,"2703":1,"2715":1,"2721":1,"2746":1,"2748":2,"2749":34,"2750":2,"2752":1,"2767":1,"2770":1,"2878":1,"2903":4,"2912":3,"2913":2,"2914":3,"2917":2,"2918":1,"2919":1,"2921":4,"2923":1,"2926":1,"2941":1}}],["follows",{"2":{"0":1,"19":1,"31":1,"145":1,"214":1,"231":1,"234":1,"373":1,"512":1,"570":1,"591":1,"1375":1,"1626":1,"1931":1,"2041":1,"2044":1,"2447":2,"2448":1,"2471":1,"2593":1,"2607":1,"2696":1,"2758":1,"2763":1,"2765":1,"2766":1,"2769":1,"2770":2,"2776":1}}],["forum",{"2":{"2891":1}}],["forums",{"2":{"2465":1}}],["forbids",{"2":{"2729":1}}],["forgot",{"2":{"2905":1}}],["forget",{"2":{"2165":3}}],["forgiveness",{"2":{"523":1}}],["forever",{"2":{"2928":1}}],["forever60",{"2":{"446":5}}],["foremost",{"2":{"2882":1}}],["foreground",{"2":{"492":4}}],["foreach",{"2":{"405":1}}],["forth",{"2":{"397":1,"2287":1,"2377":1,"2384":1}}],["forcing",{"2":{"303":1,"2268":1}}],["forcibly",{"2":{"50":1,"2271":1}}],["forceon",{"2":{"760":4}}],["forces",{"2":{"572":1,"760":1,"1389":1,"1390":1,"2209":1}}],["forced",{"2":{"568":1,"1375":1,"2268":1,"2411":1}}],["forcefully",{"2":{"236":1}}],["force",{"0":{"195":1,"230":1,"303":2},"2":{"112":3,"145":1,"195":4,"199":2,"222":2,"226":2,"236":3,"249":1,"277":1,"308":4,"317":1,"405":1,"417":2,"461":2,"561":1,"650":1,"651":1,"1202":1,"1312":1,"1317":1,"1407":1,"1430":3,"1941":1,"2001":2,"2037":1,"2211":1,"2376":2,"2411":1,"2427":1,"2608":1,"2630":2,"2721":1,"2791":1,"2875":1}}],["forming",{"2":{"2865":1}}],["formulas",{"2":{"1962":1}}],["formula",{"2":{"1840":1,"2060":1}}],["formed",{"2":{"1519":1}}],["former",{"2":{"1312":1,"1348":1}}],["formerly",{"2":{"37":1,"1586":2,"1617":1}}],["forms",{"2":{"510":1,"1474":1,"1491":1}}],["formally",{"2":{"294":1}}],["formalise",{"2":{"191":1}}],["formatstring",{"2":{"2847":1}}],["formats",{"2":{"431":1,"434":1,"456":1,"457":1,"462":1,"2607":1,"2748":1}}],["formatters",{"2":{"114":1}}],["formatted",{"2":{"1":1,"50":1,"76":1,"539":1,"669":1,"1324":2,"2776":1}}],["formatting",{"0":{"1":1,"499":1,"501":1,"502":1,"511":1},"1":{"500":1,"501":1,"502":1,"503":1,"504":1},"2":{"73":1,"160":1,"176":1,"249":2,"333":2,"489":1,"519":1,"2646":1,"2666":1}}],["format",{"0":{"1":1,"434":1,"456":1,"457":1,"462":1,"511":1,"527":1,"1438":1,"1531":1,"2758":1,"2766":1},"1":{"1532":1,"1533":1,"2759":1,"2760":1,"2761":1,"2762":1,"2763":1,"2764":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1},"2":{"1":2,"93":1,"112":1,"114":2,"134":5,"145":1,"160":1,"191":1,"199":1,"222":2,"248":1,"249":1,"277":1,"308":1,"373":1,"397":2,"431":1,"434":4,"435":1,"441":1,"456":1,"457":7,"462":1,"464":2,"465":2,"466":1,"489":2,"499":2,"501":1,"502":2,"511":9,"519":1,"524":1,"525":2,"527":1,"553":1,"570":2,"586":1,"590":1,"667":1,"1353":1,"1375":1,"1429":1,"1532":3,"1533":1,"1632":1,"2237":1,"2239":1,"2241":1,"2243":1,"2288":1,"2289":1,"2293":1,"2401":1,"2451":1,"2457":1,"2497":1,"2501":1,"2591":1,"2603":1,"2607":1,"2622":1,"2721":1,"2748":21,"2749":13,"2750":2,"2758":5,"2760":4,"2766":6,"2767":1,"2768":1,"2769":1,"2770":6,"2771":2,"2773":1,"2776":1,"2847":1,"2862":1,"2875":1}}],["form",{"2":{"110":1,"450":1,"451":1,"473":1,"474":1,"510":1,"1317":1,"1629":1,"1630":1,"2265":1,"2293":1,"2310":1,"2731":1,"2734":1,"2776":1,"2805":1,"2845":2,"2846":1,"2919":1}}],["forwards",{"2":{"2370":1,"2509":1}}],["forward",{"2":{"36":1,"37":1,"43":1,"113":1,"134":1,"184":1,"254":1,"268":1,"1407":1,"1612":1,"1840":1,"1956":1,"2060":1,"2159":4,"2174":1,"2283":1,"2442":1,"2503":5,"2525":1,"2541":1,"2542":5,"2723":1,"2939":1}}],["forked",{"0":{"2585":1},"2":{"2555":1,"2625":1,"2896":1}}],["forks",{"0":{"26":1},"2":{"405":1,"1340":1,"2895":1}}],["forking",{"2":{"21":1,"2398":1}}],["fork",{"0":{"5":1,"2631":1},"1":{"2632":1,"2633":1,"2634":1},"2":{"26":1,"46":1,"176":1,"228":1,"405":1,"611":1,"613":1,"1332":1,"1340":3,"2376":1,"2377":1,"2384":1,"2398":7,"2405":1,"2494":1,"2561":1,"2564":1,"2583":1,"2585":2,"2588":1,"2591":1,"2621":1,"2625":1,"2626":1,"2628":1,"2630":7,"2632":3,"2633":2,"2634":2,"2687":1,"2688":2,"2723":3}}],["for",{"0":{"11":1,"14":2,"26":1,"35":1,"56":1,"80":1,"149":1,"174":1,"214":1,"231":1,"246":1,"320":1,"406":1,"412":1,"424":1,"505":1,"507":1,"567":1,"590":1,"591":1,"598":1,"604":1,"610":1,"619":1,"1207":1,"1315":1,"1328":1,"1338":1,"1344":1,"1377":1,"1378":1,"1431":1,"1775":1,"1776":1,"1777":1,"1918":1,"1998":1,"2002":1,"2008":1,"2291":1,"2311":1,"2312":1,"2424":1,"2624":1,"2646":1,"2654":1,"2666":1,"2674":1,"2689":2,"2690":1,"2691":1,"2719":1,"2741":1,"2843":1,"2924":1,"2937":1},"1":{"36":1,"506":1,"507":1,"508":1,"509":1,"1208":1,"1209":1,"1210":1,"1339":1,"1432":1,"1433":1,"1778":1,"1779":1,"1780":1,"1999":1,"2625":1,"2655":1,"2656":1,"2675":1},"2":{"0":1,"8":2,"9":1,"12":1,"13":3,"14":1,"18":3,"19":1,"28":1,"30":3,"31":3,"33":3,"34":1,"35":1,"36":9,"39":1,"45":5,"49":14,"50":10,"51":1,"52":1,"55":2,"63":2,"64":1,"65":4,"69":2,"70":1,"74":7,"75":3,"76":1,"81":1,"82":1,"86":2,"88":1,"89":1,"90":1,"92":4,"93":21,"94":3,"98":2,"99":4,"104":1,"107":2,"108":1,"111":1,"112":1,"114":58,"116":1,"118":5,"119":2,"120":2,"123":2,"125":3,"127":1,"128":1,"130":3,"131":1,"132":1,"133":1,"134":38,"137":3,"138":6,"139":1,"141":2,"143":1,"145":21,"149":2,"153":1,"156":1,"157":1,"160":33,"163":3,"164":1,"166":2,"169":2,"172":4,"173":2,"174":4,"175":5,"176":45,"179":1,"182":4,"183":1,"185":4,"186":2,"188":7,"189":3,"190":3,"191":52,"194":7,"195":2,"196":1,"199":28,"201":6,"203":1,"210":15,"212":7,"213":1,"214":1,"215":1,"217":2,"220":1,"221":2,"222":32,"224":1,"228":5,"229":3,"230":2,"231":2,"232":3,"234":2,"235":1,"236":26,"240":1,"241":1,"243":1,"246":1,"247":2,"248":2,"249":27,"253":1,"255":4,"256":1,"257":1,"258":1,"259":2,"262":1,"263":4,"264":1,"265":1,"266":18,"270":1,"271":1,"272":1,"273":2,"274":1,"276":1,"277":8,"279":2,"281":1,"282":1,"283":5,"284":1,"285":12,"288":3,"289":1,"292":1,"293":1,"294":10,"297":1,"298":2,"301":1,"303":1,"304":1,"305":1,"306":1,"307":2,"308":17,"313":1,"315":1,"316":1,"317":9,"320":2,"326":1,"328":4,"331":2,"332":1,"333":4,"335":2,"338":6,"340":1,"358":1,"359":1,"360":1,"362":1,"365":1,"367":1,"368":2,"371":1,"372":4,"373":3,"374":1,"378":2,"384":1,"387":6,"388":1,"390":3,"391":2,"392":2,"395":1,"396":3,"397":7,"399":4,"400":4,"401":2,"402":2,"403":3,"405":3,"406":10,"408":2,"411":3,"421":1,"422":2,"423":1,"424":4,"427":5,"428":5,"429":1,"430":1,"431":7,"433":1,"435":3,"440":1,"441":1,"442":1,"450":2,"451":2,"452":1,"457":4,"458":1,"459":2,"460":1,"464":1,"465":2,"466":1,"470":2,"472":2,"475":2,"484":1,"487":2,"488":2,"489":3,"490":1,"493":1,"494":3,"498":1,"503":2,"505":1,"510":3,"511":3,"512":2,"514":1,"518":1,"523":3,"527":3,"528":1,"529":1,"530":1,"531":1,"536":1,"537":1,"538":1,"540":1,"542":2,"543":2,"550":1,"552":2,"553":4,"555":1,"556":1,"557":1,"559":10,"561":1,"562":21,"563":4,"566":4,"567":1,"568":11,"569":1,"570":1,"572":8,"576":1,"578":1,"579":2,"580":1,"582":1,"585":1,"586":2,"587":3,"589":1,"590":1,"591":1,"592":2,"593":1,"594":1,"597":2,"598":2,"603":2,"607":4,"608":1,"611":6,"613":5,"614":3,"616":5,"617":4,"618":1,"619":2,"621":2,"622":1,"623":3,"624":1,"625":1,"626":1,"628":2,"629":1,"631":5,"632":3,"635":1,"637":2,"643":1,"645":3,"646":1,"649":6,"650":2,"651":2,"654":3,"655":1,"658":1,"659":1,"663":1,"664":1,"665":1,"666":2,"667":3,"668":2,"670":1,"671":4,"672":1,"678":2,"680":1,"681":3,"682":1,"683":5,"684":5,"685":2,"686":1,"687":4,"692":2,"693":1,"695":3,"696":7,"698":5,"699":1,"712":1,"713":4,"714":4,"715":1,"717":1,"718":7,"719":3,"728":1,"729":3,"738":1,"739":1,"740":1,"741":1,"743":4,"745":1,"746":5,"747":2,"748":1,"749":2,"750":4,"751":3,"752":4,"753":1,"754":2,"759":2,"763":3,"765":9,"766":1,"767":1,"769":3,"771":1,"773":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"794":3,"795":1,"798":2,"802":2,"804":1,"805":4,"818":1,"820":1,"827":2,"831":2,"833":1,"834":4,"846":1,"848":1,"853":2,"857":4,"860":2,"862":1,"863":4,"876":1,"877":3,"878":1,"879":1,"885":2,"888":1,"890":2,"892":1,"893":4,"898":1,"908":1,"910":1,"917":2,"918":4,"921":1,"922":4,"925":2,"927":1,"928":4,"933":1,"943":1,"945":1,"952":2,"955":1,"956":4,"959":2,"961":1,"962":4,"967":1,"977":1,"979":1,"986":2,"989":1,"990":4,"993":2,"995":1,"996":4,"1001":1,"1011":1,"1013":1,"1020":2,"1023":1,"1024":4,"1027":2,"1029":1,"1030":4,"1035":1,"1045":1,"1047":1,"1054":2,"1058":4,"1061":2,"1063":1,"1064":4,"1069":1,"1079":1,"1080":3,"1081":1,"1082":1,"1088":2,"1089":4,"1092":4,"1095":2,"1097":1,"1098":4,"1103":1,"1113":1,"1114":3,"1115":1,"1116":1,"1122":2,"1123":4,"1126":4,"1129":2,"1131":1,"1132":4,"1137":1,"1147":1,"1148":3,"1149":1,"1150":1,"1156":2,"1160":4,"1163":2,"1165":1,"1166":4,"1171":1,"1181":1,"1182":3,"1183":1,"1184":1,"1189":3,"1190":1,"1191":3,"1194":5,"1195":5,"1197":6,"1198":6,"1200":3,"1201":2,"1202":1,"1204":1,"1206":1,"1207":1,"1210":2,"1212":2,"1216":2,"1218":1,"1219":4,"1224":1,"1234":1,"1236":1,"1245":8,"1249":1,"1266":11,"1280":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1294":1,"1296":4,"1297":2,"1300":5,"1308":1,"1309":1,"1312":1,"1314":1,"1315":2,"1316":2,"1317":1,"1321":1,"1323":1,"1325":1,"1326":2,"1327":3,"1328":1,"1329":3,"1332":2,"1338":1,"1340":2,"1342":1,"1344":3,"1345":2,"1347":1,"1349":1,"1350":1,"1351":1,"1353":2,"1356":1,"1358":1,"1362":2,"1368":2,"1369":1,"1374":3,"1375":9,"1377":1,"1378":1,"1379":1,"1385":2,"1389":1,"1390":1,"1392":1,"1394":2,"1395":1,"1397":1,"1398":1,"1400":1,"1402":2,"1403":1,"1404":3,"1406":4,"1407":7,"1409":4,"1410":6,"1413":5,"1414":1,"1415":3,"1416":4,"1417":4,"1420":3,"1421":2,"1422":10,"1423":1,"1424":1,"1427":2,"1428":1,"1430":1,"1432":2,"1433":3,"1434":1,"1438":4,"1440":4,"1441":1,"1442":3,"1444":1,"1445":3,"1449":2,"1450":1,"1456":1,"1457":1,"1458":3,"1459":2,"1460":4,"1461":2,"1462":2,"1463":2,"1464":2,"1465":5,"1466":6,"1468":2,"1469":3,"1470":1,"1471":1,"1472":3,"1473":1,"1474":1,"1476":1,"1479":1,"1480":5,"1482":2,"1483":1,"1484":2,"1485":1,"1486":4,"1487":5,"1491":2,"1492":3,"1493":4,"1495":3,"1497":5,"1499":1,"1504":1,"1511":5,"1512":4,"1513":1,"1519":1,"1520":1,"1521":1,"1522":2,"1523":2,"1526":4,"1527":5,"1528":2,"1529":2,"1531":1,"1532":6,"1533":3,"1534":2,"1535":1,"1536":1,"1538":4,"1540":1,"1541":1,"1545":1,"1547":1,"1550":4,"1551":1,"1552":1,"1571":1,"1574":1,"1583":2,"1584":2,"1585":1,"1586":1,"1587":5,"1588":1,"1591":2,"1592":2,"1596":2,"1599":1,"1600":2,"1602":3,"1603":2,"1604":1,"1606":6,"1607":1,"1611":1,"1612":3,"1613":5,"1614":4,"1616":2,"1618":1,"1619":1,"1620":1,"1621":2,"1624":1,"1626":1,"1627":1,"1632":2,"1635":2,"1636":1,"1649":1,"1650":1,"1651":1,"1655":1,"1656":2,"1657":1,"1658":1,"1659":2,"1660":4,"1661":1,"1664":2,"1672":3,"1675":8,"1678":4,"1679":6,"1680":1,"1684":1,"1691":1,"1696":1,"1707":1,"1724":2,"1726":1,"1734":1,"1736":2,"1741":1,"1756":3,"1759":1,"1760":1,"1762":1,"1766":1,"1767":3,"1771":1,"1775":5,"1780":4,"1781":1,"1782":2,"1788":1,"1789":2,"1790":1,"1807":1,"1810":1,"1813":1,"1816":1,"1819":1,"1822":1,"1824":1,"1825":1,"1827":1,"1828":2,"1829":1,"1830":2,"1832":2,"1834":2,"1835":1,"1836":1,"1837":2,"1839":2,"1840":5,"1841":2,"1843":1,"1844":4,"1845":1,"1846":1,"1847":1,"1849":1,"1917":2,"1918":1,"1920":1,"1928":2,"1929":2,"1930":4,"1931":1,"1932":2,"1933":2,"1934":1,"1935":1,"1936":2,"1939":1,"1940":1,"1947":3,"1948":1,"1949":3,"1950":1,"1951":6,"1953":5,"1954":14,"1955":7,"1956":8,"1958":3,"1960":1,"1961":4,"1962":8,"1964":5,"1965":2,"1966":3,"1968":7,"1972":1,"1974":3,"1975":1,"1976":4,"1978":8,"1979":2,"1980":3,"1981":4,"1983":1,"1988":1,"1990":2,"1991":1,"1992":2,"1994":1,"1995":1,"1997":1,"1998":2,"2000":2,"2001":7,"2007":1,"2008":2,"2030":3,"2032":1,"2034":4,"2035":3,"2036":2,"2037":3,"2040":1,"2041":1,"2044":4,"2047":1,"2049":1,"2050":5,"2052":2,"2059":2,"2060":5,"2061":3,"2063":1,"2064":1,"2066":4,"2068":1,"2069":1,"2070":1,"2072":1,"2073":5,"2074":2,"2156":2,"2159":2,"2160":2,"2161":6,"2162":1,"2163":1,"2164":1,"2166":2,"2167":3,"2169":1,"2170":1,"2171":1,"2172":6,"2175":1,"2176":2,"2178":7,"2180":7,"2181":2,"2182":1,"2184":3,"2187":2,"2194":12,"2203":2,"2207":1,"2210":1,"2211":1,"2212":1,"2218":1,"2219":1,"2221":5,"2231":1,"2233":1,"2246":1,"2247":1,"2251":1,"2252":2,"2254":3,"2257":1,"2258":6,"2260":1,"2262":1,"2266":1,"2268":5,"2269":5,"2270":5,"2271":6,"2272":1,"2274":1,"2278":1,"2279":3,"2281":4,"2282":4,"2283":5,"2284":1,"2286":1,"2288":1,"2289":2,"2290":3,"2291":5,"2293":1,"2294":1,"2295":2,"2296":1,"2297":1,"2302":7,"2303":3,"2305":3,"2306":1,"2309":1,"2310":14,"2311":6,"2312":7,"2313":2,"2315":4,"2319":1,"2320":1,"2322":4,"2323":3,"2324":6,"2344":2,"2347":1,"2350":1,"2364":1,"2367":3,"2370":1,"2371":2,"2372":3,"2374":2,"2375":3,"2376":2,"2377":2,"2378":1,"2379":2,"2380":2,"2381":1,"2382":1,"2383":3,"2384":5,"2386":2,"2387":1,"2388":2,"2389":2,"2390":4,"2391":1,"2393":5,"2395":5,"2397":5,"2398":1,"2399":2,"2401":5,"2403":1,"2406":4,"2407":7,"2409":1,"2410":14,"2411":8,"2412":1,"2416":2,"2417":2,"2418":1,"2420":3,"2421":2,"2422":1,"2423":1,"2425":2,"2426":1,"2427":2,"2428":2,"2430":1,"2432":2,"2434":1,"2435":2,"2436":2,"2437":2,"2438":3,"2439":2,"2440":1,"2441":1,"2442":1,"2443":3,"2446":4,"2447":3,"2448":3,"2449":3,"2450":1,"2452":2,"2453":1,"2454":3,"2455":1,"2458":2,"2459":2,"2469":1,"2471":1,"2472":1,"2473":1,"2475":1,"2476":2,"2483":2,"2487":1,"2489":1,"2490":1,"2492":3,"2493":3,"2495":6,"2496":3,"2497":2,"2498":1,"2501":1,"2503":2,"2504":1,"2519":2,"2528":30,"2534":1,"2542":1,"2544":1,"2545":1,"2548":2,"2550":1,"2551":2,"2553":1,"2554":5,"2555":2,"2557":1,"2558":3,"2559":2,"2560":6,"2561":3,"2562":9,"2563":1,"2564":1,"2565":1,"2566":4,"2568":1,"2569":3,"2571":1,"2572":4,"2573":3,"2575":1,"2576":1,"2579":1,"2580":2,"2582":4,"2583":1,"2584":1,"2587":1,"2588":2,"2591":2,"2592":2,"2594":1,"2595":1,"2598":1,"2599":1,"2600":1,"2602":1,"2605":2,"2606":2,"2607":2,"2609":2,"2610":1,"2611":1,"2612":1,"2614":1,"2615":1,"2619":1,"2620":1,"2621":1,"2622":4,"2623":1,"2630":2,"2631":1,"2632":2,"2633":1,"2638":1,"2639":1,"2643":2,"2644":32,"2645":5,"2646":6,"2651":4,"2655":1,"2656":1,"2657":3,"2658":1,"2659":2,"2660":2,"2661":1,"2662":2,"2665":2,"2666":3,"2669":9,"2671":2,"2672":1,"2673":2,"2675":1,"2676":11,"2677":2,"2678":6,"2679":1,"2680":2,"2681":1,"2682":1,"2684":2,"2685":3,"2687":3,"2688":2,"2689":4,"2690":1,"2691":2,"2692":1,"2694":4,"2695":1,"2696":1,"2700":2,"2702":1,"2703":1,"2704":1,"2706":1,"2707":8,"2709":2,"2710":1,"2715":1,"2716":3,"2717":3,"2719":6,"2720":4,"2721":21,"2722":5,"2723":4,"2724":3,"2725":2,"2726":1,"2728":1,"2734":1,"2744":2,"2745":1,"2746":3,"2747":2,"2748":3,"2749":29,"2750":19,"2751":1,"2757":2,"2758":3,"2759":1,"2760":3,"2761":1,"2762":1,"2765":2,"2766":3,"2767":3,"2768":1,"2769":1,"2770":2,"2771":3,"2775":5,"2776":3,"2777":1,"2778":1,"2780":1,"2781":1,"2788":2,"2793":1,"2797":1,"2798":1,"2799":1,"2801":1,"2802":1,"2812":1,"2813":2,"2819":1,"2821":1,"2829":1,"2830":2,"2831":1,"2832":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2844":2,"2845":3,"2847":2,"2849":1,"2851":1,"2857":1,"2861":2,"2862":5,"2864":2,"2865":1,"2869":1,"2871":2,"2872":1,"2873":3,"2875":3,"2877":4,"2879":2,"2881":1,"2882":2,"2884":1,"2885":2,"2886":1,"2887":2,"2889":1,"2894":1,"2895":3,"2896":2,"2901":1,"2902":1,"2903":7,"2904":4,"2905":5,"2906":3,"2912":5,"2913":4,"2914":2,"2915":1,"2916":4,"2917":3,"2918":2,"2919":5,"2920":3,"2921":4,"2922":1,"2923":3,"2924":3,"2927":5,"2928":3,"2929":4,"2930":2,"2935":2,"2937":9,"2938":2,"2939":1,"2940":2,"2941":2,"2942":3}}],["oems",{"2":{"2562":1}}],["oem",{"2":{"2560":1}}],["oemxx",{"2":{"685":2}}],["oxidisation",{"2":{"2420":1}}],["oar",{"2":{"2288":1}}],["oops",{"2":{"1362":1}}],["oob",{"2":{"176":1,"210":2,"308":1}}],["oj",{"2":{"673":1}}],["oven",{"2":{"580":1}}],["overcome",{"2":{"2743":1}}],["overcrowded",{"2":{"2455":1}}],["overhead",{"2":{"2269":1}}],["overheat",{"2":{"1675":1}}],["overhauls",{"2":{"408":1}}],["overhaul",{"0":{"142":1,"283":1},"2":{"75":1,"94":1,"133":1,"134":1,"145":1,"160":1,"175":1,"176":2,"182":1,"266":1,"285":1}}],["overloading",{"2":{"1979":1}}],["overlook",{"2":{"530":1}}],["overlay",{"0":{"2557":1},"2":{"1968":4,"2182":1,"2551":2,"2555":1,"2557":1,"2585":1,"2586":1,"2587":1}}],["overlap",{"2":{"1598":1,"1617":1,"1934":4,"2182":1,"2722":1}}],["overlapping",{"0":{"1598":1,"1934":1},"2":{"98":1,"114":1,"236":1,"277":1,"1466":1,"1603":1,"1934":3,"2749":1}}],["overwritable",{"2":{"2007":1}}],["overwritten",{"2":{"1948":1,"2381":1,"2498":1,"2665":1,"2678":1,"2702":1}}],["overwrites",{"2":{"2266":1}}],["overwrite",{"2":{"461":3,"1375":2,"1526":1,"1859":1,"1861":1,"2085":1,"2087":1,"2475":1,"2756":1,"2941":1}}],["overwriting",{"2":{"70":9,"2007":1,"2008":1}}],["overwhelmed",{"2":{"412":1}}],["overall",{"0":{"335":1},"1":{"336":1,"337":1,"338":1,"339":1,"340":1,"341":1,"342":1},"2":{"431":1,"541":1,"562":1,"714":1,"2173":1,"2746":1,"2894":1}}],["oversized",{"2":{"285":1}}],["overnumpad",{"2":{"134":1}}],["overrun",{"2":{"114":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1257":1,"1260":1,"1275":1,"1277":1}}],["overridable",{"2":{"222":1,"1956":2,"2283":4}}],["overriding",{"0":{"1523":1,"2185":1},"1":{"1524":1},"2":{"99":1,"145":1,"191":1,"199":1,"277":1,"294":1,"317":1,"327":1,"714":1,"751":2,"1526":1,"2182":1,"2554":1,"2844":1,"2933":1}}],["override",{"0":{"272":1,"327":1,"1459":1,"1775":1},"2":{"50":1,"74":1,"90":2,"112":1,"114":1,"125":2,"134":1,"185":2,"188":1,"191":2,"199":1,"210":1,"272":7,"277":1,"288":1,"333":1,"434":1,"460":1,"557":1,"562":1,"563":1,"572":2,"624":1,"625":1,"628":1,"637":4,"698":1,"745":1,"746":2,"747":2,"748":1,"751":1,"752":1,"753":1,"756":2,"764":1,"765":1,"766":1,"767":1,"1200":1,"1201":1,"1245":1,"1266":1,"1479":1,"1497":1,"1527":1,"1620":1,"1662":2,"1670":4,"1760":2,"1762":1,"1763":2,"1764":2,"1765":1,"1766":1,"1767":1,"1768":4,"1770":19,"1771":7,"1773":3,"1774":3,"1775":17,"1776":4,"1777":2,"1778":4,"1779":2,"1780":2,"1781":1,"1831":1,"1956":1,"2160":1,"2185":1,"2213":1,"2222":1,"2283":1,"2409":2,"2630":1,"2677":1,"2678":2,"2679":1,"2722":1,"2749":2,"2846":1,"2879":1,"2914":1,"2923":1,"2933":1}}],["overrides",{"0":{"99":1,"637":1,"1384":1,"1760":1,"1761":1,"1763":1},"1":{"1761":1,"1762":1,"1763":1,"1764":2,"1765":2,"1766":2,"1767":2,"1768":1,"1769":1,"1770":1,"1771":1,"1772":1,"1773":1,"1774":1,"1775":1,"1776":1,"1777":1,"1778":1,"1779":1,"1780":1,"1781":1,"1782":1},"2":{"4":1,"50":1,"99":4,"114":2,"125":2,"145":1,"176":1,"185":2,"199":1,"210":1,"272":5,"308":1,"559":2,"562":1,"568":1,"625":1,"1378":1,"1384":1,"1760":2,"1762":1,"1763":1,"1768":2,"1770":4,"1771":2,"1773":1,"1774":3,"1775":1,"1777":1,"1778":2,"1780":2,"1781":4,"1782":2,"1983":1,"2001":1,"2182":3,"2409":1,"2677":1,"2713":1,"2900":1}}],["overridden",{"2":{"50":1,"555":1,"751":1,"769":1,"794":1,"1457":1,"1978":1,"1983":2,"2337":1,"2338":1,"2339":1}}],["overview",{"0":{"359":1,"368":1,"419":1,"485":1,"575":1,"609":1,"664":1,"2255":1,"2502":1,"2549":1,"2573":1},"1":{"369":1,"420":1,"421":1,"422":1,"423":1,"424":1,"486":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2514":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2550":1,"2551":1,"2552":1,"2553":1,"2554":1,"2555":1,"2556":1,"2557":1},"2":{"112":1,"550":1,"607":1,"1341":1,"1415":1,"1426":1,"2313":1,"2407":1,"2558":1,"2696":1,"2709":1,"2901":1}}],["over",{"2":{"99":1,"114":2,"124":1,"151":1,"191":1,"243":1,"307":1,"308":1,"312":1,"331":1,"366":1,"373":1,"375":1,"376":1,"438":1,"491":1,"536":1,"558":1,"559":1,"573":1,"597":1,"623":1,"746":1,"747":1,"756":1,"1193":2,"1196":2,"1280":1,"1284":1,"1369":1,"1410":1,"1413":1,"1417":1,"1441":2,"1619":1,"1621":1,"1676":1,"1945":1,"1947":1,"1949":2,"1955":1,"2041":1,"2047":1,"2065":1,"2171":1,"2172":1,"2254":1,"2276":1,"2277":1,"2279":2,"2287":2,"2288":1,"2303":1,"2368":1,"2401":1,"2411":2,"2412":1,"2420":1,"2421":1,"2427":1,"2441":1,"2466":1,"2469":1,"2475":1,"2497":1,"2560":1,"2583":1,"2644":2,"2646":1,"2651":1,"2666":1,"2685":1,"2715":1,"2800":1,"2833":1,"2900":1,"2912":1,"2928":1}}],["overflows",{"2":{"114":1}}],["overflow",{"0":{"11":1},"2":{"11":3,"114":1,"160":1,"236":1,"333":1,"1979":1}}],["ohm",{"2":{"854":2,"857":18,"918":2,"922":18,"953":2,"956":18,"987":2,"990":18,"1021":2,"1024":18,"1055":2,"1058":18,"1089":2,"1092":18,"1123":2,"1126":18,"1157":2,"1160":18}}],["oh",{"0":{"499":1},"1":{"500":1,"501":1,"502":1,"503":1,"504":1}}],["okay",{"2":{"1335":1,"1930":1,"2721":1}}],["ok",{"2":{"387":1,"453":2,"515":1,"529":1,"530":1,"536":1,"539":1,"611":1,"760":1,"1362":2,"1444":2,"1655":1,"2495":1,"2580":4,"2622":4,"2936":1}}],["oq",{"2":{"266":1}}],["odd",{"2":{"2036":1,"2459":1}}],["odelia",{"2":{"222":1}}],["odin",{"2":{"191":1,"222":2}}],["og60",{"2":{"236":1}}],["og",{"2":{"222":1}}],["ogr",{"2":{"222":1}}],["ogurec",{"2":{"154":2}}],["o",{"2":{"210":1,"266":1,"277":2,"369":1,"436":1,"437":1,"445":2,"460":1,"490":2,"498":1,"570":2,"587":2,"620":1,"1289":1,"2159":1,"2161":1,"2289":1,"2294":4,"2416":1,"2417":2,"2423":2,"2432":1,"2503":3,"2535":3,"2556":1,"2682":1,"2748":8}}],["owlab",{"2":{"2560":1}}],["owl8",{"2":{"154":2}}],["owners",{"2":{"2895":1}}],["owned",{"2":{"191":1}}],["owns",{"2":{"2754":1}}],["own",{"0":{"1324":1,"1414":1,"2629":1},"2":{"30":1,"33":1,"37":1,"43":1,"107":1,"113":1,"114":2,"134":1,"172":1,"228":1,"273":1,"284":1,"288":1,"294":1,"307":1,"374":1,"408":1,"510":1,"556":1,"613":1,"616":1,"620":1,"627":1,"659":1,"698":1,"754":1,"1353":1,"1379":1,"1414":2,"1457":1,"1465":1,"1474":2,"1479":2,"1538":1,"1550":1,"1599":1,"1620":1,"1621":1,"1624":1,"1662":1,"1830":1,"1978":1,"1979":1,"1983":1,"2050":2,"2168":2,"2248":2,"2303":1,"2318":1,"2322":1,"2324":1,"2374":1,"2375":1,"2376":1,"2389":1,"2411":2,"2430":1,"2459":1,"2472":1,"2494":1,"2545":1,"2558":1,"2559":1,"2560":1,"2561":1,"2564":1,"2577":1,"2582":1,"2583":1,"2588":1,"2591":1,"2623":1,"2628":1,"2630":1,"2645":1,"2678":1,"2679":1,"2680":1,"2719":3,"2721":2,"2723":1,"2744":1,"2747":1,"2758":1,"2766":2,"2776":1,"2800":1,"2877":1,"2905":1,"2922":1}}],["o3",{"2":{"114":1}}],["opinions",{"2":{"2934":1}}],["opmode",{"2":{"766":2}}],["opqr",{"2":{"266":1}}],["opposed",{"2":{"687":1,"1378":1,"1979":1}}],["opposite",{"2":{"213":1,"289":1,"294":1,"1265":1,"2044":1,"2487":1,"2918":9,"2919":2,"2920":2}}],["opportune",{"2":{"263":1}}],["opportunity",{"2":{"214":1}}],["opcode",{"2":{"210":1}}],["opus",{"2":{"144":2}}],["oper",{"2":{"2503":2,"2541":2}}],["operate",{"2":{"489":1,"1194":2,"1293":1,"1312":1,"1679":1,"2495":1}}],["operates",{"2":{"82":1,"485":1,"698":1,"1287":1,"1930":1,"2262":1,"2757":1,"2879":1}}],["operational",{"2":{"746":1}}],["operation",{"0":{"760":1,"2191":1},"2":{"687":1,"698":1,"763":1,"1193":1,"1196":1,"1198":1,"1202":1,"1250":1,"1346":1,"1968":1,"2627":1,"2658":1,"2704":2,"2750":1}}],["operations",{"0":{"404":1,"481":1},"1":{"405":1,"406":1},"2":{"266":1,"481":1,"489":1,"760":1,"1955":1,"2595":1,"2746":1,"2749":12,"2750":4,"2754":1}}],["operating",{"0":{"424":1,"2471":1,"2672":1},"2":{"176":1,"424":1,"459":1,"1348":1,"1928":1,"2009":1,"2287":1,"2318":1,"2399":1,"2410":2,"2470":1,"2471":1,"2474":1,"2594":1,"2710":1,"2727":1,"2732":1,"2877":1,"2923":1}}],["operators",{"2":{"1375":2}}],["operator",{"2":{"210":1,"285":1,"489":1,"527":1,"763":1,"1375":1}}],["opening",{"0":{"673":1},"2":{"510":2,"519":1,"611":1,"615":1,"617":1,"1434":1,"2050":1,"2225":1,"2248":1,"2607":1,"2644":1,"2719":1}}],["opensource",{"2":{"608":1,"1354":2}}],["opens",{"2":{"430":1,"510":2,"2289":1,"2615":1,"2776":1}}],["openocd",{"0":{"384":1},"2":{"378":1,"384":1,"387":1,"391":3,"2499":3,"2501":1}}],["opendeck",{"2":{"277":1}}],["opendrain",{"2":{"134":1,"769":2}}],["opened",{"2":{"275":1,"347":1,"2052":1,"2671":1,"2724":1}}],["open",{"0":{"1294":1,"2578":1,"2739":1},"2":{"160":1,"243":1,"265":1,"378":1,"380":1,"387":3,"408":1,"446":1,"447":1,"448":1,"458":2,"504":1,"542":1,"610":1,"611":1,"615":1,"616":1,"617":2,"618":1,"642":1,"666":1,"670":1,"681":1,"684":1,"685":2,"758":2,"1194":1,"1294":2,"1335":2,"1336":2,"1338":1,"1339":1,"1375":1,"1628":1,"1942":1,"2050":1,"2249":3,"2250":3,"2253":1,"2284":2,"2411":1,"2425":1,"2427":1,"2434":1,"2459":1,"2461":1,"2465":1,"2495":1,"2497":1,"2503":3,"2531":3,"2542":3,"2546":2,"2553":1,"2560":1,"2566":2,"2575":1,"2578":1,"2600":1,"2607":3,"2609":1,"2615":2,"2621":4,"2626":1,"2627":1,"2632":1,"2633":1,"2646":1,"2652":1,"2656":1,"2666":1,"2671":1,"2674":2,"2675":2,"2721":1,"2729":1,"2739":1,"2743":1,"2751":1,"2843":2,"2888":3,"2892":1,"2923":1}}],["opt",{"0":{"273":1},"2":{"124":3,"199":1,"273":1,"277":1,"571":1,"698":2,"1465":2,"1466":1,"2393":1,"2395":1,"2448":2,"2523":1,"2565":1,"2676":1}}],["optimal",{"2":{"1511":1,"1678":1,"1679":1}}],["optimisation",{"2":{"210":1,"236":1}}],["optimisations",{"2":{"160":1,"2676":2}}],["optimise",{"2":{"191":1}}],["optimized",{"2":{"191":1}}],["optimize",{"2":{"114":1,"134":1,"160":1,"236":1}}],["optimizations",{"0":{"50":1,"64":1,"75":1,"94":1,"202":1,"203":1}}],["optimization",{"2":{"10":2,"50":1,"294":1,"570":1,"2847":1,"2882":1}}],["optical",{"2":{"114":1,"160":3,"176":1,"199":1,"284":1,"285":1,"1961":1,"1976":1}}],["option+right",{"2":{"2324":1}}],["option+left",{"2":{"2324":1}}],["option=com",{"2":{"1316":1}}],["optional",{"0":{"1681":1,"2576":1,"2629":1},"2":{"262":1,"308":1,"338":1,"405":1,"421":1,"422":1,"423":1,"427":1,"428":1,"510":2,"511":1,"567":1,"664":1,"667":4,"1457":5,"1545":3,"1606":1,"1781":1,"1827":1,"1846":1,"1961":4,"1962":9,"1964":4,"1965":17,"1966":3,"1968":10,"1969":5,"1970":3,"1971":2,"1974":4,"1976":7,"1978":15,"1979":3,"1980":5,"1996":5,"2069":1,"2172":1,"2377":1,"2384":1,"2414":1,"2444":1,"2612":1,"2655":1,"2669":1,"2673":4,"2676":2,"2700":1,"2748":1,"2758":4,"2766":3,"2899":1}}],["optionally",{"2":{"222":1,"307":1,"421":1,"422":1,"423":1,"1202":1,"1461":1,"1468":1,"1471":1,"1473":1,"1660":1,"1825":1,"2037":1,"2157":1,"2159":1,"2206":1,"2291":1,"2302":1,"2322":1,"2376":1,"2386":1,"2725":1,"2916":1,"2917":1,"2923":1,"2941":1}}],["options",{"0":{"482":1,"483":1,"559":1,"564":1,"565":1,"568":1,"570":1,"571":1,"572":1,"1383":1,"1460":1,"1672":1,"1767":2,"1830":1,"1846":1,"1940":1,"1996":1,"2069":1,"2268":1,"2269":1,"2271":1,"2369":1,"2411":1,"2412":1,"2716":1,"2717":1,"2902":1},"1":{"566":1,"567":1,"568":1,"2903":1,"2904":1,"2905":1,"2906":1,"2907":1,"2908":1,"2909":1,"2910":1,"2911":1,"2912":1,"2913":1,"2914":1,"2915":1,"2916":1,"2917":1,"2918":1,"2919":1,"2920":1,"2921":1,"2922":1,"2923":1,"2924":1,"2925":1},"2":{"83":1,"109":1,"114":2,"128":1,"134":1,"137":1,"149":1,"160":1,"194":1,"198":1,"210":1,"217":1,"234":1,"236":2,"249":1,"303":1,"304":1,"308":1,"320":1,"391":1,"431":1,"450":1,"451":1,"452":1,"453":1,"458":1,"459":1,"467":1,"505":1,"555":1,"557":1,"560":1,"561":1,"565":1,"571":1,"572":1,"664":1,"666":2,"683":1,"698":2,"751":1,"752":1,"753":1,"1195":1,"1198":1,"1203":1,"1314":1,"1355":1,"1362":2,"1373":2,"1383":1,"1430":2,"1460":1,"1584":1,"1587":1,"1603":1,"1606":1,"1608":1,"1656":1,"1658":1,"1670":1,"1672":1,"1763":1,"1767":3,"1770":5,"1773":1,"1775":2,"1776":3,"1777":1,"1829":2,"1830":1,"1831":1,"1928":1,"1933":1,"1951":1,"1954":1,"1958":2,"1980":3,"1995":1,"2064":1,"2073":1,"2074":1,"2172":1,"2178":1,"2184":1,"2252":1,"2266":1,"2267":1,"2268":1,"2269":1,"2289":1,"2302":1,"2368":1,"2407":2,"2408":2,"2410":4,"2412":2,"2422":1,"2446":1,"2447":2,"2448":1,"2452":1,"2546":1,"2566":1,"2571":1,"2621":1,"2669":3,"2678":1,"2700":1,"2709":3,"2716":2,"2717":2,"2721":3,"2747":1,"2748":2,"2820":1,"2881":1,"2883":1,"2885":1,"2901":1,"2902":2,"2923":1,"2933":1,"2937":1}}],["option",{"0":{"320":1,"665":1,"1776":1},"1":{"666":1,"667":1,"668":1,"669":1,"670":1,"671":1},"2":{"14":1,"32":1,"50":1,"74":1,"75":1,"87":1,"103":1,"114":3,"126":1,"132":1,"134":2,"176":1,"191":1,"194":1,"195":1,"210":1,"222":2,"234":1,"236":1,"246":1,"249":2,"266":1,"271":1,"294":1,"297":1,"308":1,"328":2,"511":1,"562":1,"666":2,"671":1,"1287":1,"1356":1,"1363":1,"1414":1,"1461":1,"1466":1,"1474":1,"1486":1,"1487":1,"1587":1,"1591":2,"1662":1,"1682":1,"1767":1,"1770":5,"1773":1,"1775":1,"1776":6,"1778":1,"1779":2,"1948":1,"1977":1,"1980":4,"2258":1,"2266":2,"2267":3,"2269":1,"2271":5,"2273":1,"2290":1,"2302":5,"2324":1,"2410":4,"2422":1,"2448":8,"2495":1,"2503":2,"2539":2,"2576":1,"2622":1,"2669":4,"2687":1,"2715":1,"2725":1,"2747":1,"2750":2,"2791":1,"2882":1,"2912":5,"2913":3,"2918":2}}],["ou",{"2":{"2370":7,"2509":7}}],["ould",{"2":{"2170":1}}],["ouput",{"2":{"1521":3}}],["our",{"2":{"76":1,"114":2,"130":1,"164":1,"167":1,"379":1,"387":1,"390":1,"408":1,"487":1,"489":1,"490":1,"502":1,"503":2,"504":1,"510":1,"512":3,"514":1,"519":1,"527":2,"536":1,"540":2,"542":1,"587":1,"590":1,"612":2,"614":2,"617":1,"619":3,"629":1,"633":1,"663":1,"681":1,"698":1,"1333":1,"1335":1,"1425":1,"1440":2,"1533":1,"2311":1,"2312":3,"2422":1,"2440":1,"2459":2,"2465":2,"2554":4,"2557":2,"2572":1,"2627":1,"2632":1,"2724":1,"2775":6,"2776":4,"2781":1,"2840":1,"2889":2,"2890":1,"2930":5,"2931":2,"2932":3}}],["outs",{"2":{"2702":1}}],["outside",{"2":{"22":1,"182":1,"491":1,"517":1,"1197":1,"1378":1,"1425":1,"1834":1,"1971":1,"1983":1,"2266":1,"2583":1,"2921":1,"2930":1}}],["outlines",{"2":{"2685":1}}],["outlined",{"2":{"2269":1,"2687":1}}],["outright",{"2":{"2562":1,"2563":1,"2656":1,"2659":1,"2885":1}}],["outreach",{"2":{"312":1}}],["outbound",{"2":{"2270":1}}],["outer",{"2":{"1789":1,"1970":1,"2173":1,"2549":1,"2862":1,"2919":1}}],["out3",{"2":{"802":2,"831":2}}],["out2",{"2":{"802":2,"831":2}}],["out1",{"2":{"802":3,"831":3}}],["outwardly",{"2":{"198":1}}],["outdated",{"2":{"160":1,"308":2,"408":1,"663":1,"2895":1}}],["outputted",{"2":{"2721":1}}],["outputting",{"2":{"489":1,"491":1,"611":1}}],["output=",{"2":{"210":1}}],["output+keymap",{"2":{"210":1}}],["outputs",{"2":{"93":1,"637":1,"1300":1,"1468":1,"2370":1,"2410":1,"2421":1,"2886":2}}],["outputselect",{"2":{"50":1,"160":1}}],["output",{"0":{"2602":1},"2":{"10":2,"65":1,"75":1,"92":1,"99":1,"114":5,"119":1,"160":2,"176":1,"188":1,"191":4,"199":3,"210":1,"214":1,"222":2,"236":1,"243":3,"249":1,"285":1,"294":1,"328":1,"372":1,"405":1,"436":1,"437":1,"445":1,"460":1,"489":1,"490":1,"492":2,"498":2,"541":1,"559":1,"563":2,"633":6,"637":1,"643":1,"685":1,"718":3,"726":1,"729":3,"746":1,"758":11,"802":1,"805":4,"831":1,"834":4,"860":1,"863":4,"890":1,"893":4,"925":1,"928":4,"959":1,"962":4,"993":1,"996":4,"1027":1,"1030":4,"1061":1,"1064":4,"1095":1,"1098":4,"1129":1,"1132":4,"1163":1,"1166":4,"1206":1,"1216":1,"1219":4,"1294":1,"1300":3,"1319":3,"1326":1,"1328":1,"1330":1,"1466":3,"1471":1,"1475":1,"1485":1,"1521":2,"1542":1,"1543":1,"1547":1,"1616":1,"1618":1,"1664":1,"1666":2,"1667":2,"1669":1,"1732":1,"1733":1,"1951":1,"1956":1,"1961":1,"1991":1,"2044":2,"2199":1,"2200":1,"2265":1,"2281":1,"2283":1,"2291":1,"2322":2,"2370":11,"2375":1,"2377":1,"2384":1,"2410":5,"2411":1,"2421":1,"2495":1,"2501":1,"2509":11,"2577":1,"2580":2,"2602":1,"2608":1,"2622":1,"2627":1,"2662":1,"2682":1,"2747":3,"2748":23,"2776":1,"2847":1,"2869":1,"2907":1,"2911":1,"2940":1,"2941":1}}],["out",{"0":{"123":1,"323":1,"1805":1,"2610":1,"2628":1,"2881":1},"1":{"2629":1,"2630":1,"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"6":1,"10":1,"21":1,"49":1,"50":1,"93":1,"113":1,"114":3,"119":1,"124":1,"133":2,"134":5,"145":1,"160":2,"176":1,"191":4,"194":1,"199":4,"228":1,"236":1,"249":1,"288":1,"328":1,"333":2,"334":1,"377":1,"391":1,"412":1,"414":1,"424":1,"427":1,"430":1,"461":1,"491":1,"497":2,"519":1,"525":1,"539":1,"562":4,"567":1,"584":1,"586":1,"614":1,"618":2,"645":2,"663":2,"674":1,"711":1,"716":1,"743":1,"746":1,"755":1,"1206":1,"1317":1,"1362":2,"1410":1,"1422":3,"1437":1,"1440":2,"1444":2,"1466":1,"1468":1,"1478":1,"1592":1,"1616":1,"1621":1,"1789":1,"1843":13,"1844":1,"1951":4,"1956":3,"1965":1,"1975":1,"1983":1,"1991":1,"2009":1,"2063":20,"2066":1,"2069":1,"2176":1,"2188":1,"2201":1,"2224":1,"2225":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2237":1,"2239":1,"2241":1,"2243":1,"2258":1,"2270":3,"2271":1,"2272":1,"2273":1,"2274":1,"2283":3,"2310":1,"2313":1,"2398":4,"2410":3,"2422":1,"2427":1,"2459":1,"2464":1,"2465":1,"2476":1,"2503":2,"2541":2,"2563":1,"2572":1,"2578":1,"2591":1,"2610":2,"2619":1,"2625":1,"2630":1,"2633":3,"2673":1,"2688":1,"2695":1,"2702":1,"2719":2,"2721":3,"2747":1,"2748":2,"2749":1,"2887":2,"2888":2,"2899":1,"2904":1,"2915":1,"2928":1,"2929":1,"2937":3,"2942":1}}],["otype",{"2":{"769":2}}],["otaku",{"2":{"154":4}}],["otg2",{"2":{"2687":1}}],["otg1",{"2":{"176":1,"2687":1}}],["otg",{"2":{"65":1,"191":1,"294":1}}],["others",{"2":{"114":1,"134":1,"145":1,"160":1,"176":1,"191":1,"199":1,"210":1,"222":1,"236":1,"263":1,"277":1,"285":1,"294":1,"308":1,"328":1,"333":1,"531":1,"616":1,"920":1,"1091":1,"1125":1,"1196":1,"1296":2,"1373":1,"1420":1,"1461":1,"1465":1,"1474":1,"1484":1,"1497":1,"1547":1,"2171":1,"2408":1,"2424":1,"2626":1,"2705":1}}],["other",{"0":{"424":1,"568":1,"1352":1,"1950":1,"2280":1,"2429":1,"2571":1,"2672":1,"2913":1},"2":{"30":1,"33":1,"50":1,"98":1,"114":2,"128":1,"134":2,"137":2,"138":1,"153":1,"163":1,"173":1,"174":1,"175":1,"176":2,"191":2,"194":8,"199":1,"201":1,"208":1,"212":2,"217":2,"221":1,"229":1,"234":1,"244":1,"288":1,"294":1,"307":1,"308":1,"320":1,"334":2,"373":1,"387":2,"390":1,"397":1,"424":1,"487":1,"503":1,"505":1,"510":1,"527":1,"538":1,"542":1,"555":1,"558":1,"560":1,"562":5,"598":1,"602":1,"605":1,"617":1,"629":1,"643":1,"654":1,"655":1,"663":1,"666":2,"672":1,"685":1,"713":1,"720":1,"743":1,"763":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1200":1,"1201":1,"1210":1,"1245":1,"1258":1,"1261":1,"1291":1,"1297":1,"1310":2,"1314":1,"1316":2,"1330":1,"1340":2,"1346":1,"1375":6,"1378":1,"1407":2,"1414":1,"1416":2,"1419":2,"1421":2,"1422":3,"1424":1,"1425":1,"1434":1,"1436":1,"1440":5,"1442":1,"1464":2,"1466":1,"1468":1,"1471":1,"1472":1,"1479":1,"1482":1,"1493":2,"1499":1,"1522":1,"1523":1,"1526":1,"1527":2,"1540":2,"1544":1,"1587":3,"1613":1,"1614":2,"1620":1,"1627":1,"1653":1,"1656":1,"1665":1,"1698":1,"1771":1,"1773":1,"1776":1,"1778":1,"1779":1,"1781":1,"1791":1,"1822":1,"1824":1,"1828":1,"1917":1,"1929":1,"1954":1,"1958":2,"1981":1,"2004":1,"2006":2,"2159":1,"2162":1,"2163":1,"2164":1,"2166":1,"2167":1,"2168":1,"2170":1,"2182":2,"2184":1,"2201":1,"2203":1,"2215":1,"2252":2,"2253":1,"2254":1,"2268":1,"2285":1,"2286":1,"2287":2,"2310":1,"2311":1,"2312":1,"2323":1,"2324":1,"2372":1,"2410":1,"2411":2,"2412":1,"2416":1,"2421":1,"2427":1,"2432":1,"2440":1,"2446":1,"2450":1,"2459":2,"2489":1,"2496":1,"2498":1,"2516":1,"2548":1,"2551":3,"2552":1,"2554":1,"2559":1,"2560":2,"2561":4,"2562":1,"2565":1,"2582":1,"2630":1,"2643":1,"2646":2,"2659":1,"2661":1,"2666":1,"2673":1,"2683":1,"2689":1,"2700":1,"2702":1,"2719":3,"2721":2,"2722":5,"2744":1,"2749":11,"2750":1,"2784":1,"2786":1,"2810":1,"2818":1,"2830":1,"2845":1,"2847":2,"2879":1,"2888":1,"2894":1,"2895":2,"2896":1,"2904":1,"2906":6,"2908":2,"2909":3,"2910":2,"2912":4,"2913":7,"2918":6,"2919":3,"2920":7,"2922":1,"2923":1,"2925":1,"2927":4,"2938":1}}],["otherwise",{"2":{"28":1,"31":1,"220":1,"383":1,"405":1,"530":1,"615":1,"624":1,"625":1,"650":1,"651":1,"654":1,"671":1,"684":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1250":1,"1255":1,"1258":1,"1261":1,"1294":1,"1422":1,"1552":1,"1614":1,"1655":1,"1723":1,"1775":1,"1859":1,"1861":1,"2063":1,"2085":1,"2087":1,"2160":1,"2185":1,"2271":1,"2293":1,"2302":2,"2323":1,"2370":1,"2383":1,"2386":1,"2388":1,"2391":1,"2411":1,"2501":1,"2509":1,"2605":3,"2770":1,"2784":1,"2914":1,"2917":1,"2918":1,"2920":1,"2923":1}}],["omit",{"2":{"685":1,"751":2,"1619":1,"2495":1}}],["omitted",{"2":{"525":1,"559":2,"568":1,"642":1,"2401":1}}],["omkbd",{"2":{"154":12,"160":2}}],["omrontkl",{"2":{"57":2}}],["omnikey",{"2":{"37":2,"144":2,"145":1}}],["oc7",{"2":{"1919":1,"2520":1}}],["oc6",{"2":{"1919":1,"2520":1}}],["oc5",{"2":{"1919":1,"2520":1}}],["oc4",{"2":{"1919":1,"2520":1}}],["oc3",{"2":{"1919":1,"2520":1}}],["oc2",{"2":{"1919":1,"1920":1,"2520":1}}],["oc1",{"2":{"1919":1,"2520":1}}],["oc0",{"2":{"1919":1,"2520":1}}],["ocn1",{"2":{"1919":1,"2520":1}}],["ocn2",{"2":{"1919":1,"2520":1}}],["ocean",{"2":{"576":1,"584":1}}],["oceanographer",{"2":{"222":1}}],["occupied",{"2":{"1440":1}}],["occupy",{"2":{"1245":1}}],["occurrence",{"2":{"2905":1}}],["occurred",{"2":{"371":1,"645":3,"1410":1,"1413":4}}],["occurs",{"2":{"94":1,"655":1,"751":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1258":1,"1261":1,"1414":1,"2268":2,"2271":1,"2757":1}}],["occur",{"2":{"11":1,"49":1,"613":1,"637":2,"1674":1,"1983":1,"1985":1,"2269":1,"2270":1,"2583":1,"2700":1,"2750":1}}],["occasionally",{"2":{"1351":1,"1523":1,"2559":1}}],["occasional",{"2":{"654":1}}],["occasion",{"2":{"408":1,"1497":1}}],["ocd",{"2":{"191":1}}],["octet",{"2":{"2765":8}}],["octets",{"2":{"2765":3,"2767":1,"2773":1}}],["octd",{"2":{"1913":1,"1919":1,"2520":1}}],["octu",{"2":{"1913":1,"1919":1,"2520":1}}],["octave",{"2":{"1484":1,"1913":1,"1919":96,"1920":1,"2520":96}}],["octaves",{"2":{"1484":1}}],["octagon",{"2":{"249":1,"266":1,"308":1}}],["oct",{"2":{"55":2}}],["oscillator",{"2":{"1951":1}}],["oses",{"2":{"1778":1,"1779":1,"1780":1,"1941":1}}],["osdn",{"2":{"414":1}}],["osx",{"0":{"1354":1,"1355":1,"1358":1},"2":{"188":2,"191":2,"1354":2,"1355":2,"1356":1,"1358":1}}],["os",{"0":{"1372":1,"1667":1,"1936":1,"1939":1},"1":{"1937":1,"1938":1,"1939":1,"1940":1,"1941":1,"1942":1,"1943":1},"2":{"65":1,"145":2,"199":1,"222":1,"249":3,"285":3,"308":1,"380":1,"414":1,"424":2,"1329":1,"1443":1,"1511":1,"1587":2,"1632":3,"1635":1,"1667":1,"1775":1,"1780":1,"1936":4,"1937":10,"1938":14,"1939":1,"1940":5,"1941":6,"1942":4,"2222":1,"2297":1,"2317":1,"2324":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":2,"2391":1,"2393":2,"2395":2,"2397":2,"2411":1,"2459":1,"2467":1,"2474":4,"2528":31,"2532":1,"2542":1,"2592":1,"2612":1,"2644":31,"2677":1,"2727":1,"2731":1,"2732":1,"2839":1,"2873":2,"2877":1}}],["osms",{"2":{"222":1}}],["osm",{"2":{"38":1,"236":1,"1466":3,"1588":1,"1759":1,"2528":1,"2643":1,"2644":6,"2645":1}}],["osl",{"2":{"38":1,"199":1,"236":1,"294":1,"1416":1,"1822":1,"1993":1,"2528":1,"2644":2,"2645":1}}],["olkb",{"0":{"2783":1,"2891":1},"1":{"2784":1,"2785":1,"2786":1,"2787":1},"2":{"608":1,"681":3,"2313":1,"2376":2,"2428":1,"2465":1,"2891":1}}],["olly",{"2":{"222":1,"249":2,"308":1}}],["oledunder",{"2":{"55":1}}],["oledback",{"2":{"55":1}}],["oleds",{"2":{"31":1,"34":1,"114":1,"138":1,"229":1,"230":1,"232":1,"248":1,"2749":1,"2883":1}}],["oled",{"0":{"33":1,"125":1,"208":1,"221":1,"230":1,"232":1,"1944":1,"1947":1,"1954":1,"1956":1,"2435":1,"2886":1},"1":{"34":1,"1945":1,"1946":1,"1947":1,"1948":1,"1949":1,"1950":1,"1951":1,"1952":1,"1953":1,"1954":1,"1955":2,"1956":1,"1957":1},"2":{"30":1,"31":11,"33":2,"34":8,"49":1,"55":11,"62":1,"63":1,"92":2,"93":2,"114":4,"125":6,"128":2,"134":7,"138":1,"176":4,"191":3,"208":3,"209":2,"210":2,"221":4,"222":2,"230":4,"232":4,"236":3,"248":2,"249":2,"308":1,"328":2,"332":6,"568":2,"762":1,"1243":1,"1529":2,"1945":2,"1946":1,"1947":15,"1948":5,"1949":6,"1950":15,"1951":28,"1952":2,"1953":10,"1954":29,"1955":12,"1956":77,"1957":17,"2269":6,"2428":1,"2432":1,"2435":2,"2449":1,"2721":1,"2746":7,"2749":1,"2873":2,"2886":5}}],["older",{"2":{"142":1,"394":1,"1313":1,"1329":1,"2159":1,"2176":1,"2376":1,"2553":1,"2554":1,"2677":1}}],["old",{"0":{"208":1},"2":{"10":1,"22":1,"37":1,"38":1,"43":1,"46":1,"67":1,"86":1,"102":1,"122":1,"125":1,"134":1,"141":1,"142":1,"144":1,"154":1,"160":2,"168":1,"173":1,"174":1,"181":1,"182":2,"183":3,"185":1,"191":1,"194":1,"195":1,"197":1,"205":1,"207":1,"208":1,"209":6,"210":3,"217":1,"218":1,"226":1,"232":2,"234":1,"236":1,"241":1,"243":1,"244":1,"253":1,"262":1,"270":1,"271":1,"281":1,"291":1,"300":1,"311":1,"322":1,"410":2,"510":1,"659":1,"1351":1,"1379":1,"1616":1,"1957":1,"1981":2,"1983":1,"2176":1,"2253":1,"2258":1,"2303":1,"2430":1,"2629":2,"2719":1,"2886":1}}],["obligations",{"2":{"2743":1}}],["obliterated75",{"2":{"222":1}}],["obtain",{"2":{"2030":1}}],["obtaining",{"2":{"419":1}}],["objs",{"2":{"2410":1,"2447":1}}],["obj",{"2":{"671":2}}],["objects",{"2":{"431":1,"514":1,"531":2,"1437":2,"1438":1,"2398":8,"2776":1,"2858":1,"2861":1}}],["objective",{"2":{"379":1,"2382":1}}],["object",{"0":{"1438":1},"2":{"73":1,"236":1,"431":1,"453":1,"467":1,"487":2,"490":2,"531":1,"532":1,"536":1,"666":1,"668":1,"1438":1,"2050":1,"2410":2,"2750":2,"2776":7,"2777":2,"2858":1,"2861":1,"2862":4,"2864":2,"2870":1,"2871":2,"2934":1}}],["observe",{"2":{"614":1,"1516":1}}],["obsolete",{"0":{"2253":1},"2":{"3":1,"15":1}}],["obviously",{"2":{"1497":1,"1535":1,"2877":1}}],["obvious",{"2":{"249":3,"510":2,"512":2,"524":1,"617":1,"2453":1,"2459":1,"2562":1}}],["obfuscate",{"2":{"199":1}}],["obosob",{"2":{"154":2,"160":2}}],["obdev",{"2":{"21":1,"1316":1}}],["onboard",{"2":{"649":1,"743":1,"745":1,"1289":1,"1290":1,"1291":1,"2172":2,"2201":1,"2661":1,"2684":1}}],["onto",{"2":{"516":1,"1333":1,"1362":1,"1526":1,"2418":1,"2422":1,"2425":1,"2477":1,"2481":1,"2490":1,"2497":1,"2707":1,"2894":1,"2905":1}}],["onyx",{"2":{"222":1}}],["online",{"2":{"182":1,"2561":1,"2572":1,"2582":1,"2890":1}}],["only=true",{"2":{"498":3}}],["only",{"0":{"507":1,"589":1,"2434":1,"2586":1},"2":{"4":1,"14":1,"69":1,"83":1,"87":1,"98":1,"103":2,"107":1,"114":1,"116":1,"120":1,"126":2,"134":1,"169":1,"174":1,"184":1,"191":2,"194":3,"209":3,"210":1,"212":1,"233":1,"236":2,"244":1,"266":1,"303":1,"306":1,"308":2,"315":1,"317":1,"328":1,"373":1,"391":1,"396":2,"397":1,"399":1,"400":2,"401":2,"403":2,"405":2,"406":2,"408":1,"410":1,"414":2,"415":1,"416":1,"432":3,"433":1,"457":2,"498":1,"511":1,"536":1,"553":1,"556":1,"562":1,"567":1,"568":2,"573":1,"637":1,"663":1,"674":1,"680":1,"687":1,"692":1,"693":1,"698":2,"712":1,"715":1,"716":1,"717":1,"718":1,"741":1,"748":1,"754":1,"765":1,"769":1,"802":1,"805":4,"810":1,"812":1,"814":1,"816":1,"818":1,"820":1,"831":1,"834":4,"838":1,"840":1,"842":1,"844":1,"846":1,"848":1,"860":1,"863":4,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"890":1,"893":4,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"918":1,"921":1,"925":1,"928":4,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"953":1,"955":1,"959":1,"962":4,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"987":1,"989":1,"993":1,"996":4,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1021":1,"1023":1,"1027":1,"1030":4,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1061":1,"1064":4,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1095":1,"1098":4,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1129":1,"1132":4,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1163":1,"1166":4,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1191":1,"1194":2,"1195":1,"1198":2,"1201":2,"1202":1,"1216":1,"1219":4,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1247":1,"1268":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":3,"1294":1,"1296":1,"1297":1,"1299":1,"1300":3,"1310":1,"1313":1,"1324":2,"1329":1,"1340":1,"1348":1,"1353":1,"1375":1,"1377":2,"1386":1,"1389":1,"1392":1,"1393":2,"1395":1,"1404":1,"1406":2,"1407":3,"1410":2,"1413":1,"1416":4,"1417":1,"1419":1,"1438":1,"1441":1,"1457":1,"1465":1,"1471":1,"1475":1,"1477":1,"1478":1,"1482":1,"1497":1,"1512":2,"1521":1,"1522":1,"1526":1,"1535":1,"1540":1,"1547":1,"1548":1,"1550":1,"1551":1,"1552":1,"1583":1,"1591":1,"1598":1,"1605":1,"1606":6,"1609":1,"1613":1,"1614":1,"1650":1,"1660":1,"1661":1,"1664":2,"1698":1,"1759":1,"1775":2,"1776":1,"1778":1,"1782":1,"1790":1,"1840":1,"1847":1,"1859":1,"1861":1,"1913":1,"1928":1,"1931":1,"1934":1,"1940":1,"1955":3,"1959":1,"1970":1,"1978":1,"1979":1,"1980":5,"1981":1,"1982":1,"1983":2,"1985":1,"1987":1,"1990":1,"1994":2,"2007":1,"2037":1,"2060":1,"2070":1,"2073":1,"2085":1,"2087":1,"2165":1,"2176":1,"2182":1,"2212":1,"2216":1,"2217":1,"2218":1,"2221":1,"2268":2,"2269":2,"2270":1,"2273":1,"2290":1,"2291":1,"2293":1,"2302":4,"2323":1,"2324":1,"2367":1,"2368":1,"2370":4,"2372":1,"2374":1,"2379":1,"2381":1,"2393":1,"2395":1,"2397":1,"2408":1,"2416":1,"2418":1,"2424":1,"2442":1,"2446":2,"2449":1,"2454":1,"2457":1,"2459":3,"2469":2,"2473":1,"2492":1,"2502":1,"2509":3,"2559":1,"2560":3,"2562":1,"2566":1,"2572":1,"2576":1,"2583":1,"2606":1,"2611":1,"2613":1,"2630":1,"2633":1,"2646":1,"2662":2,"2669":1,"2675":1,"2677":1,"2683":1,"2684":2,"2688":1,"2689":1,"2696":1,"2702":1,"2704":2,"2710":1,"2719":1,"2721":3,"2722":1,"2724":1,"2726":1,"2728":3,"2729":2,"2731":1,"2734":2,"2737":2,"2742":1,"2747":1,"2748":2,"2749":2,"2758":2,"2763":2,"2770":1,"2776":1,"2777":1,"2784":1,"2822":1,"2846":1,"2850":1,"2876":3,"2879":2,"2895":1,"2906":1,"2917":1,"2919":1,"2921":1,"2925":1,"2932":1,"2933":1,"2937":1,"2938":1}}],["onkey",{"2":{"176":1}}],["ongoing",{"2":{"145":1,"663":1,"2721":1,"2895":1}}],["onces",{"2":{"199":1,"222":1}}],["once",{"2":{"114":1,"119":1,"134":1,"137":1,"231":1,"245":1,"303":1,"320":1,"328":1,"372":1,"387":1,"414":1,"459":2,"487":1,"510":1,"529":1,"655":1,"657":1,"714":2,"715":2,"718":2,"750":1,"765":2,"769":1,"1192":1,"1200":2,"1201":2,"1245":2,"1247":1,"1266":1,"1268":1,"1296":2,"1300":2,"1310":1,"1313":1,"1329":1,"1402":1,"1403":1,"1416":1,"1421":1,"1466":3,"1492":1,"1496":1,"1497":1,"1516":1,"1550":2,"1551":2,"1587":1,"1596":1,"1698":1,"1775":1,"1783":1,"1787":1,"1789":1,"1844":1,"1930":1,"1940":1,"1955":2,"1983":1,"1985":1,"2035":1,"2041":1,"2050":2,"2066":1,"2184":1,"2186":1,"2207":1,"2273":1,"2286":1,"2291":1,"2301":1,"2302":4,"2305":1,"2324":1,"2372":1,"2379":1,"2381":2,"2398":2,"2409":2,"2411":1,"2420":1,"2425":1,"2428":1,"2459":1,"2471":1,"2552":1,"2564":1,"2588":1,"2589":2,"2590":1,"2607":1,"2611":1,"2615":1,"2643":1,"2652":1,"2653":1,"2673":1,"2675":1,"2676":1,"2719":1,"2750":2,"2760":1,"2768":1,"2775":2,"2776":1,"2826":1,"2835":1,"2905":1,"2923":1,"2930":1,"2942":1}}],["ones",{"2":{"243":1,"266":1,"331":1,"428":1,"1293":1,"1351":1,"1479":1,"1483":1,"1609":1,"1616":1,"1761":1,"1976":1,"2067":2,"2198":2,"2218":1,"2221":1,"2302":1,"2426":1,"2427":1,"2455":1,"2473":1,"2671":1,"2744":1,"2750":1,"2877":1,"2942":1}}],["oneshots",{"2":{"2883":1}}],["oneshot",{"0":{"2827":1},"2":{"38":2,"63":2,"112":2,"134":1,"145":1,"188":1,"191":2,"222":1,"266":1,"560":1,"562":4,"568":1,"1375":8,"1466":2,"2269":2,"2374":1,"2643":3,"2644":8,"2645":19,"2867":1,"2883":1}}],["onehand",{"2":{"114":1}}],["onekey",{"2":{"49":1,"191":3,"210":1,"222":1,"308":1,"2393":1,"2395":1,"2397":1,"2676":2,"2722":1}}],["one",{"0":{"351":1,"352":1,"1308":1,"1349":1,"1382":1,"1807":1,"2308":1,"2528":1,"2643":1,"2867":1},"1":{"352":1,"353":1,"1309":1,"1808":1,"1809":1,"2644":1,"2645":1},"2":{"37":1,"45":1,"50":1,"55":1,"75":1,"82":1,"89":1,"93":2,"98":1,"107":1,"114":1,"139":1,"141":1,"142":1,"145":4,"163":1,"176":1,"188":1,"191":1,"194":3,"196":1,"199":2,"201":1,"215":1,"222":2,"231":1,"241":1,"253":1,"256":1,"262":1,"268":1,"270":1,"276":1,"279":1,"281":1,"333":1,"338":1,"347":1,"351":1,"352":1,"373":1,"397":1,"403":1,"408":1,"427":1,"431":1,"475":1,"510":2,"514":1,"516":1,"519":1,"524":2,"525":1,"558":1,"559":7,"560":1,"562":1,"565":1,"566":1,"572":3,"573":1,"586":1,"587":2,"594":1,"597":2,"613":1,"614":1,"617":1,"637":1,"669":1,"683":1,"685":2,"695":1,"698":1,"712":3,"713":1,"714":1,"715":1,"716":1,"718":1,"719":1,"800":1,"802":1,"831":1,"855":1,"860":1,"887":1,"890":1,"919":1,"920":1,"925":1,"954":1,"959":1,"988":1,"993":1,"1022":1,"1027":1,"1056":1,"1061":1,"1090":1,"1091":1,"1095":1,"1124":1,"1125":1,"1129":1,"1158":1,"1163":1,"1189":3,"1191":2,"1194":2,"1204":1,"1205":1,"1214":1,"1216":1,"1244":1,"1284":1,"1289":2,"1308":1,"1310":1,"1312":1,"1349":1,"1351":1,"1353":1,"1362":1,"1365":1,"1375":12,"1378":2,"1382":1,"1387":1,"1389":1,"1393":3,"1410":4,"1413":3,"1415":1,"1416":3,"1417":1,"1419":1,"1420":2,"1427":1,"1434":1,"1438":3,"1440":1,"1441":2,"1457":1,"1458":2,"1459":2,"1468":5,"1471":1,"1472":2,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"1478":4,"1480":2,"1494":1,"1495":1,"1496":1,"1497":3,"1512":2,"1513":1,"1519":1,"1527":3,"1532":2,"1533":2,"1538":1,"1540":1,"1552":1,"1588":3,"1591":3,"1603":2,"1611":2,"1613":3,"1653":1,"1655":1,"1660":1,"1664":1,"1675":1,"1734":1,"1736":1,"1759":2,"1775":1,"1776":1,"1779":2,"1781":1,"1785":1,"1789":1,"1791":3,"1805":1,"1822":2,"1831":1,"1847":1,"1929":1,"1937":1,"1954":2,"1955":1,"1956":1,"1958":1,"1959":2,"1964":3,"1975":1,"1979":2,"1980":3,"1982":1,"1992":2,"1993":1,"2004":1,"2036":1,"2070":1,"2207":1,"2248":1,"2249":1,"2254":1,"2258":2,"2265":2,"2267":1,"2268":2,"2270":1,"2271":1,"2288":1,"2293":3,"2294":2,"2295":1,"2297":1,"2301":3,"2303":4,"2308":1,"2310":3,"2312":1,"2322":1,"2323":1,"2377":1,"2384":1,"2393":1,"2395":1,"2397":1,"2401":2,"2410":2,"2411":1,"2415":1,"2416":3,"2418":1,"2421":2,"2422":1,"2425":1,"2426":1,"2459":6,"2473":1,"2475":2,"2476":1,"2483":1,"2490":1,"2496":1,"2499":1,"2528":37,"2532":1,"2555":2,"2557":1,"2560":1,"2562":1,"2566":1,"2572":1,"2579":1,"2584":1,"2594":1,"2595":1,"2596":1,"2607":2,"2627":1,"2629":1,"2630":1,"2643":9,"2644":40,"2645":7,"2671":1,"2684":1,"2687":1,"2689":1,"2705":1,"2707":1,"2721":2,"2747":3,"2750":2,"2769":1,"2771":1,"2775":1,"2776":1,"2784":1,"2834":1,"2846":1,"2847":2,"2849":1,"2850":2,"2851":1,"2852":1,"2857":2,"2864":2,"2865":1,"2867":1,"2868":1,"2870":2,"2871":2,"2873":2,"2874":1,"2876":1,"2878":2,"2879":1,"2886":1,"2887":1,"2896":1,"2904":2,"2912":1,"2914":1,"2919":2,"2920":1,"2924":1,"2933":1,"2936":1,"2937":1,"2941":1}}],["on",{"0":{"14":1,"235":1,"625":1,"717":1,"1312":1,"1314":1,"1330":1,"1353":1,"1357":1,"1358":1,"1539":1,"1591":1,"1641":1,"1643":1,"1645":1,"1702":1,"1918":1,"2004":1,"2022":1,"2185":1,"2290":1,"2305":2,"2308":1,"2309":2,"2403":1,"2412":1,"2419":1,"2585":1,"2629":1,"2913":1},"1":{"1313":1,"1314":1,"1703":1,"2023":1,"2024":1},"2":{"1":1,"2":1,"10":1,"11":3,"14":2,"24":1,"25":2,"28":2,"30":1,"31":1,"33":1,"34":2,"49":8,"50":4,"51":1,"65":3,"69":1,"73":4,"74":1,"77":1,"90":1,"92":2,"93":3,"99":1,"105":6,"107":1,"113":2,"114":23,"118":1,"123":2,"124":2,"131":1,"133":1,"134":15,"137":1,"138":4,"142":1,"143":3,"145":4,"149":1,"156":1,"160":2,"164":1,"169":2,"176":8,"182":2,"190":1,"191":15,"194":10,"195":1,"198":1,"199":7,"201":3,"203":2,"210":7,"212":1,"213":1,"217":4,"220":2,"221":1,"222":7,"228":2,"231":4,"233":1,"236":11,"240":1,"247":2,"249":4,"255":1,"263":1,"266":3,"276":2,"277":4,"279":1,"284":2,"289":1,"294":3,"302":1,"303":2,"307":1,"312":1,"320":1,"328":2,"333":2,"334":1,"335":1,"350":1,"358":1,"363":1,"373":2,"377":2,"378":1,"379":1,"387":8,"391":2,"392":1,"393":1,"397":1,"399":1,"400":1,"401":1,"405":2,"406":1,"408":2,"411":1,"412":2,"431":1,"442":1,"443":1,"446":1,"447":1,"448":2,"456":1,"457":2,"459":1,"464":1,"465":1,"466":1,"468":1,"487":1,"493":1,"503":1,"510":1,"511":4,"524":1,"525":1,"536":1,"538":1,"542":1,"543":1,"553":1,"559":9,"560":1,"562":10,"563":5,"568":8,"572":1,"576":1,"577":1,"578":1,"587":1,"592":1,"597":5,"598":1,"608":3,"610":1,"611":2,"612":1,"613":4,"614":1,"617":8,"619":1,"624":1,"631":1,"635":1,"637":6,"641":1,"642":1,"646":1,"647":1,"654":1,"659":1,"662":1,"663":1,"664":1,"666":1,"670":1,"673":1,"680":1,"681":2,"682":2,"683":3,"684":1,"687":3,"690":1,"692":3,"695":1,"696":2,"698":1,"713":2,"717":3,"718":3,"725":1,"726":5,"740":1,"743":4,"746":1,"749":1,"750":1,"751":5,"752":1,"753":2,"755":1,"756":1,"758":2,"763":1,"764":1,"765":1,"773":1,"782":1,"785":1,"788":1,"791":1,"794":1,"800":1,"801":1,"802":2,"830":1,"831":1,"855":1,"857":2,"859":1,"860":3,"887":1,"888":1,"889":1,"890":3,"919":1,"922":2,"924":1,"925":3,"954":1,"956":2,"958":1,"959":3,"988":1,"990":2,"992":1,"993":3,"1022":1,"1024":2,"1026":1,"1027":3,"1056":1,"1058":2,"1060":1,"1061":3,"1090":1,"1092":2,"1094":1,"1095":3,"1124":1,"1126":2,"1128":1,"1129":3,"1158":1,"1160":2,"1162":1,"1163":3,"1190":1,"1192":2,"1193":1,"1195":1,"1196":1,"1197":2,"1198":2,"1200":3,"1201":4,"1202":2,"1214":1,"1215":1,"1216":3,"1244":1,"1249":4,"1265":1,"1269":1,"1280":1,"1285":1,"1286":1,"1287":1,"1291":3,"1293":1,"1296":1,"1297":1,"1300":2,"1308":1,"1310":1,"1313":1,"1315":1,"1317":2,"1319":1,"1329":1,"1330":1,"1336":1,"1337":1,"1345":2,"1346":1,"1347":1,"1348":2,"1350":2,"1353":1,"1355":4,"1356":1,"1358":3,"1362":2,"1374":3,"1375":3,"1376":1,"1377":1,"1378":1,"1379":1,"1389":4,"1390":3,"1392":1,"1393":1,"1395":2,"1402":2,"1404":1,"1407":3,"1410":3,"1413":10,"1415":1,"1416":5,"1420":1,"1421":3,"1422":24,"1424":1,"1425":6,"1442":2,"1446":2,"1458":2,"1459":2,"1464":1,"1465":2,"1466":6,"1468":4,"1470":1,"1471":1,"1474":1,"1477":3,"1479":5,"1480":6,"1482":1,"1484":4,"1487":4,"1489":10,"1491":1,"1493":2,"1497":2,"1511":1,"1512":3,"1513":1,"1515":3,"1516":1,"1517":1,"1519":3,"1522":1,"1523":1,"1524":3,"1527":1,"1528":1,"1530":2,"1535":2,"1537":3,"1538":4,"1539":4,"1540":2,"1541":1,"1543":1,"1545":2,"1550":3,"1551":1,"1554":1,"1555":1,"1566":1,"1567":1,"1583":2,"1584":2,"1587":1,"1588":5,"1589":2,"1591":4,"1593":4,"1594":1,"1595":1,"1600":5,"1606":1,"1607":5,"1608":2,"1609":1,"1610":1,"1611":3,"1612":1,"1613":1,"1617":1,"1622":1,"1628":1,"1636":2,"1650":2,"1651":10,"1653":1,"1655":1,"1656":1,"1658":1,"1659":1,"1660":1,"1662":3,"1664":2,"1667":1,"1669":1,"1670":2,"1674":8,"1675":5,"1676":1,"1677":1,"1679":1,"1684":1,"1691":1,"1693":2,"1700":1,"1701":1,"1702":2,"1705":1,"1706":2,"1707":1,"1711":1,"1715":1,"1732":2,"1737":1,"1760":1,"1765":1,"1770":1,"1771":3,"1773":4,"1774":3,"1775":1,"1776":1,"1782":1,"1785":1,"1788":1,"1789":1,"1822":2,"1823":2,"1824":3,"1826":2,"1827":1,"1828":6,"1829":1,"1830":2,"1831":1,"1832":3,"1833":4,"1837":4,"1839":2,"1840":3,"1841":1,"1842":4,"1843":2,"1844":1,"1845":1,"1846":2,"1849":1,"1851":1,"1852":1,"1853":1,"1854":1,"1859":1,"1861":1,"1913":1,"1914":1,"1918":4,"1919":3,"1920":1,"1925":1,"1929":1,"1930":2,"1933":3,"1934":1,"1936":3,"1938":1,"1940":2,"1941":3,"1942":2,"1949":1,"1950":1,"1951":1,"1955":5,"1956":17,"1957":2,"1964":1,"1968":2,"1969":4,"1970":1,"1971":2,"1973":1,"1974":1,"1976":3,"1980":3,"1982":1,"1983":2,"1986":1,"1987":2,"1989":2,"1990":4,"1992":3,"2001":1,"2002":2,"2004":1,"2005":1,"2006":3,"2007":1,"2009":2,"2030":1,"2032":1,"2034":1,"2035":1,"2036":3,"2037":1,"2039":1,"2040":1,"2047":2,"2050":8,"2052":3,"2059":2,"2060":3,"2061":1,"2062":4,"2063":6,"2064":1,"2065":1,"2066":1,"2068":1,"2069":5,"2072":1,"2073":3,"2074":2,"2077":1,"2078":1,"2079":1,"2080":1,"2085":1,"2087":1,"2156":1,"2157":1,"2161":1,"2162":1,"2164":1,"2165":1,"2166":4,"2167":2,"2171":3,"2172":2,"2174":1,"2175":1,"2177":1,"2178":1,"2180":1,"2181":1,"2182":2,"2184":4,"2191":4,"2193":6,"2196":3,"2197":1,"2201":1,"2203":3,"2212":1,"2216":2,"2217":5,"2231":1,"2233":1,"2246":1,"2247":1,"2248":2,"2251":1,"2252":1,"2253":1,"2258":1,"2260":1,"2262":1,"2264":1,"2265":1,"2266":1,"2268":1,"2269":9,"2270":2,"2271":7,"2272":2,"2273":1,"2279":1,"2283":18,"2285":1,"2286":3,"2287":1,"2290":1,"2291":2,"2295":1,"2297":7,"2298":1,"2299":4,"2301":1,"2302":14,"2303":12,"2308":7,"2309":1,"2310":3,"2311":1,"2312":7,"2316":1,"2318":1,"2319":1,"2321":1,"2323":3,"2324":3,"2325":1,"2337":1,"2338":1,"2339":1,"2370":1,"2371":1,"2372":1,"2375":1,"2376":3,"2379":1,"2381":2,"2382":2,"2383":1,"2384":1,"2386":2,"2388":1,"2389":1,"2390":1,"2391":1,"2393":3,"2395":3,"2397":4,"2398":5,"2401":2,"2403":2,"2407":1,"2410":1,"2411":3,"2414":1,"2415":1,"2416":4,"2418":2,"2420":6,"2421":6,"2422":3,"2423":2,"2424":5,"2425":2,"2427":4,"2430":1,"2432":1,"2434":1,"2437":1,"2438":1,"2439":2,"2441":1,"2446":1,"2447":1,"2449":1,"2454":1,"2457":1,"2459":1,"2465":1,"2467":2,"2470":1,"2474":1,"2478":4,"2480":4,"2482":4,"2483":1,"2492":1,"2494":2,"2495":2,"2496":2,"2498":2,"2500":3,"2501":1,"2503":2,"2505":10,"2506":3,"2507":3,"2508":3,"2516":7,"2518":4,"2519":11,"2520":3,"2525":1,"2526":4,"2528":3,"2532":6,"2533":1,"2534":1,"2542":2,"2543":1,"2545":1,"2546":3,"2548":11,"2551":2,"2552":4,"2555":2,"2556":1,"2557":1,"2560":29,"2561":1,"2562":1,"2563":1,"2564":1,"2565":2,"2566":3,"2568":2,"2570":2,"2572":1,"2573":2,"2574":1,"2581":1,"2582":1,"2583":1,"2584":1,"2585":1,"2587":1,"2590":1,"2593":1,"2594":1,"2600":3,"2602":1,"2603":1,"2605":5,"2607":1,"2609":4,"2610":1,"2615":1,"2617":1,"2620":1,"2621":2,"2623":1,"2627":4,"2630":3,"2632":2,"2633":3,"2637":1,"2644":6,"2645":3,"2646":2,"2650":1,"2651":2,"2655":2,"2656":1,"2660":2,"2661":4,"2662":1,"2665":1,"2666":1,"2671":2,"2675":1,"2676":2,"2678":1,"2679":1,"2683":3,"2684":4,"2685":3,"2687":2,"2691":1,"2692":1,"2694":3,"2696":1,"2700":1,"2705":1,"2706":1,"2710":1,"2711":1,"2715":1,"2718":1,"2719":4,"2720":1,"2721":6,"2722":2,"2723":1,"2728":2,"2744":1,"2746":1,"2747":5,"2748":3,"2749":5,"2750":18,"2757":1,"2758":1,"2760":1,"2766":2,"2771":1,"2775":1,"2776":3,"2777":1,"2778":1,"2782":1,"2783":1,"2784":4,"2785":2,"2786":1,"2788":1,"2792":1,"2797":1,"2798":1,"2801":1,"2806":1,"2816":1,"2819":1,"2828":1,"2830":1,"2831":1,"2836":1,"2838":1,"2845":1,"2846":2,"2847":2,"2848":2,"2849":4,"2850":4,"2854":3,"2858":1,"2860":3,"2861":2,"2863":1,"2864":3,"2868":2,"2870":2,"2871":3,"2873":2,"2876":1,"2877":3,"2879":1,"2887":1,"2890":1,"2891":1,"2892":1,"2894":1,"2896":3,"2905":3,"2906":1,"2908":2,"2909":3,"2910":2,"2911":2,"2912":5,"2913":9,"2914":2,"2916":1,"2917":1,"2918":12,"2919":6,"2921":1,"2923":1,"2924":2,"2927":1,"2928":1,"2929":1,"2930":1,"2933":1,"2934":1,"2935":1,"2938":1}}],["often",{"0":{"2631":1},"1":{"2632":1,"2633":1,"2634":1},"2":{"99":1,"559":1,"643":1,"644":1,"682":1,"717":1,"1280":1,"1315":1,"1341":1,"1344":1,"1349":1,"1406":1,"1409":3,"1410":1,"1491":1,"1587":2,"1664":1,"1672":1,"1992":1,"2171":1,"2201":1,"2284":1,"2310":1,"2468":1,"2625":1,"2626":1,"2628":1,"2723":1,"2821":1,"2828":2,"2830":1,"2837":1}}],["offending",{"0":{"2560":1},"2":{"2563":1,"2564":1,"2721":1}}],["offer",{"2":{"2172":1,"2417":1}}],["offered",{"2":{"1775":1,"1777":1}}],["offers",{"2":{"1378":1,"1478":1,"1544":1,"2657":1}}],["official",{"2":{"1353":1,"1392":1,"2476":1,"2560":1,"2657":1,"2677":1,"2694":1,"2695":1,"2751":1,"2891":1}}],["officially",{"2":{"254":1,"1339":1,"1340":1,"2583":1}}],["offloaded",{"2":{"1193":1,"1196":1}}],["offload",{"2":{"765":1,"1289":1,"1290":1,"1291":1}}],["offset=0",{"2":{"522":1}}],["offsets",{"2":{"210":1,"249":1,"1532":1,"1955":1,"2749":6,"2750":4,"2769":4}}],["offset",{"0":{"2769":1,"2781":1},"2":{"199":1,"210":1,"222":2,"317":1,"522":4,"751":1,"752":1,"1532":2,"1931":12,"1951":1,"1954":1,"2063":1,"2178":1,"2281":1,"2749":2,"2750":8,"2760":1,"2761":3,"2766":1,"2768":2,"2769":2,"2778":1,"2781":4}}],["offs",{"2":{"114":1}}],["offhand",{"2":{"31":1,"34":1,"1950":1,"2280":1}}],["off",{"0":{"1308":1,"1642":1,"1644":1,"1646":1,"1704":1,"1918":1,"2185":1,"2308":1},"1":{"1309":1},"2":{"25":1,"92":1,"105":4,"114":2,"116":1,"134":1,"137":1,"145":1,"160":1,"195":1,"210":1,"222":1,"236":1,"247":2,"328":1,"333":1,"340":1,"403":1,"412":1,"511":1,"559":1,"563":3,"568":2,"607":1,"617":1,"645":1,"649":1,"650":2,"651":2,"667":1,"716":1,"717":2,"854":2,"857":14,"1089":2,"1092":14,"1123":2,"1126":14,"1157":2,"1160":14,"1308":1,"1375":1,"1407":1,"1416":1,"1420":1,"1421":1,"1422":7,"1425":2,"1427":1,"1458":1,"1479":6,"1480":5,"1484":3,"1487":2,"1489":8,"1515":3,"1523":1,"1524":3,"1530":1,"1535":1,"1537":4,"1538":1,"1540":1,"1543":1,"1554":1,"1556":1,"1566":1,"1568":1,"1591":1,"1592":1,"1593":2,"1595":1,"1600":4,"1636":1,"1650":2,"1651":7,"1672":1,"1674":6,"1675":1,"1678":2,"1704":1,"1773":1,"1774":3,"1822":1,"1824":1,"1825":1,"1826":2,"1832":1,"1833":4,"1837":4,"1842":4,"1846":2,"1851":1,"1852":1,"1855":1,"1856":1,"1913":1,"1918":4,"1919":4,"1949":1,"1951":1,"1956":8,"1957":2,"1962":1,"1976":1,"2001":7,"2002":1,"2005":4,"2006":4,"2034":1,"2036":1,"2062":4,"2063":3,"2067":2,"2069":2,"2075":3,"2077":1,"2078":1,"2081":1,"2082":1,"2174":1,"2175":1,"2184":3,"2185":2,"2193":4,"2197":1,"2198":2,"2203":1,"2216":2,"2217":3,"2269":4,"2279":2,"2281":1,"2283":10,"2297":6,"2299":2,"2303":1,"2308":8,"2311":1,"2312":5,"2410":2,"2411":3,"2418":1,"2420":1,"2422":1,"2505":8,"2506":3,"2507":3,"2508":4,"2516":2,"2518":4,"2519":5,"2520":4,"2525":1,"2526":4,"2528":3,"2532":5,"2548":5,"2551":2,"2562":1,"2644":4,"2645":5,"2715":1,"2718":1,"2721":2,"2747":1,"2750":2,"2784":1,"2785":2,"2786":1,"2850":1,"2864":1,"2870":1,"2871":1,"2873":2,"2928":1}}],["of",{"0":{"8":1,"28":1,"33":1,"89":1,"123":1,"124":1,"262":1,"265":1,"275":1,"302":1,"303":1,"307":1,"316":1,"323":1,"327":1,"331":1,"332":1,"403":1,"417":1,"590":1,"619":1,"628":1,"686":1,"1346":1,"1365":1,"1410":1,"1653":1,"1782":1,"1783":1,"1832":1,"1833":1,"1993":1,"2199":1,"2473":1,"2553":1,"2628":1,"2782":1,"2794":1,"2881":1,"2936":1},"1":{"34":1,"629":1,"630":1,"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"2554":1,"2555":1,"2556":1,"2557":1,"2629":1,"2630":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1,"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1,"2827":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2842":1,"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"0":1,"3":2,"4":1,"5":1,"6":1,"10":1,"15":2,"17":1,"19":1,"21":1,"22":2,"23":1,"25":2,"30":2,"31":3,"32":1,"33":2,"34":1,"37":1,"43":1,"45":3,"49":4,"50":9,"51":1,"55":1,"63":1,"64":1,"65":3,"67":1,"69":1,"70":2,"74":4,"76":3,"83":1,"86":2,"87":2,"88":2,"93":3,"94":3,"95":2,"98":2,"99":2,"103":4,"104":2,"107":3,"109":1,"112":3,"113":4,"114":15,"118":2,"119":4,"123":1,"124":3,"125":1,"126":2,"127":2,"130":2,"131":3,"132":1,"133":2,"134":21,"137":1,"138":3,"139":1,"141":5,"142":2,"143":1,"145":4,"153":1,"160":11,"163":4,"164":1,"166":3,"167":1,"169":3,"172":1,"173":3,"174":3,"175":2,"176":16,"182":4,"183":1,"184":2,"185":1,"186":1,"187":1,"189":3,"190":1,"191":15,"194":8,"195":1,"196":1,"198":4,"199":16,"201":4,"202":1,"203":1,"210":10,"212":6,"213":4,"214":5,"215":2,"220":2,"221":1,"222":20,"224":3,"228":1,"229":1,"231":1,"233":6,"234":2,"236":12,"238":5,"243":1,"245":1,"246":1,"247":1,"248":1,"249":6,"251":2,"254":2,"255":2,"256":2,"259":1,"262":5,"263":3,"265":3,"266":10,"268":2,"272":2,"273":2,"275":2,"276":1,"277":4,"279":6,"283":1,"285":9,"288":4,"293":2,"294":3,"297":3,"298":1,"303":1,"304":1,"305":2,"307":8,"308":10,"312":4,"314":2,"316":2,"317":2,"323":1,"327":1,"328":7,"331":1,"333":7,"344":1,"346":1,"348":1,"359":2,"360":2,"362":1,"369":2,"372":5,"373":5,"383":1,"387":2,"390":3,"391":1,"392":3,"393":1,"397":5,"401":1,"402":3,"405":2,"406":7,"408":1,"411":1,"419":1,"420":1,"427":2,"428":1,"429":1,"431":3,"432":1,"433":1,"434":1,"450":1,"451":1,"452":1,"453":1,"467":1,"470":1,"487":3,"489":2,"491":2,"492":4,"493":2,"502":1,"503":1,"505":1,"507":1,"508":1,"510":13,"511":2,"512":4,"514":1,"519":1,"520":1,"521":2,"522":5,"523":2,"526":1,"527":2,"528":1,"532":1,"536":2,"538":2,"539":1,"540":2,"541":1,"542":1,"543":1,"545":1,"553":5,"557":1,"558":2,"559":18,"561":1,"562":7,"563":9,"566":2,"567":1,"568":6,"570":1,"572":1,"573":1,"574":1,"576":2,"577":2,"578":1,"579":1,"584":1,"586":4,"587":2,"589":1,"590":1,"591":2,"592":1,"597":1,"598":1,"603":1,"605":1,"607":1,"609":1,"611":8,"612":1,"613":3,"614":2,"617":9,"618":1,"619":4,"620":1,"621":1,"624":1,"625":1,"626":1,"627":2,"628":2,"629":1,"631":1,"635":2,"637":8,"641":1,"644":1,"645":2,"646":2,"649":2,"653":1,"654":4,"655":3,"658":3,"659":2,"663":10,"664":1,"669":5,"671":2,"673":2,"674":2,"680":1,"681":1,"682":1,"683":3,"684":3,"685":5,"686":1,"687":2,"688":1,"692":4,"695":1,"696":2,"698":6,"701":3,"704":1,"706":1,"712":1,"714":1,"716":8,"717":1,"718":2,"719":1,"721":1,"729":1,"731":1,"732":1,"734":1,"737":2,"743":3,"745":2,"746":5,"747":4,"748":1,"749":1,"750":5,"751":12,"752":7,"753":7,"754":3,"755":1,"756":4,"758":3,"759":2,"760":4,"761":1,"763":5,"764":1,"765":3,"769":1,"771":3,"774":3,"777":3,"780":5,"783":3,"786":3,"789":3,"792":3,"795":1,"797":1,"799":5,"800":1,"805":1,"808":1,"810":1,"812":1,"814":1,"816":1,"828":1,"836":1,"838":1,"840":1,"842":1,"844":1,"852":1,"854":6,"855":1,"857":1,"863":1,"866":1,"868":1,"870":1,"872":1,"874":1,"884":1,"886":5,"887":1,"893":1,"896":1,"900":1,"902":1,"904":1,"906":1,"916":1,"918":6,"919":1,"922":1,"928":1,"931":1,"935":1,"937":1,"939":1,"941":1,"951":1,"953":6,"954":1,"956":1,"962":1,"965":1,"969":1,"971":1,"973":1,"975":1,"985":1,"987":6,"988":1,"990":1,"996":1,"999":1,"1003":1,"1005":1,"1007":1,"1009":1,"1019":1,"1021":7,"1022":1,"1024":1,"1030":1,"1033":1,"1037":1,"1039":1,"1041":1,"1043":1,"1053":1,"1055":7,"1056":1,"1058":1,"1064":1,"1067":1,"1071":1,"1073":1,"1075":1,"1077":1,"1087":1,"1089":6,"1090":1,"1092":1,"1098":1,"1101":1,"1105":1,"1107":1,"1109":1,"1111":1,"1121":1,"1123":6,"1124":1,"1126":1,"1132":1,"1135":1,"1139":1,"1141":1,"1143":1,"1145":1,"1155":1,"1157":7,"1158":1,"1160":1,"1166":1,"1168":1,"1169":1,"1173":1,"1175":1,"1177":1,"1179":1,"1189":2,"1190":2,"1192":1,"1193":2,"1194":2,"1195":1,"1197":6,"1198":1,"1200":3,"1201":2,"1202":5,"1204":1,"1206":1,"1210":1,"1211":2,"1213":5,"1214":1,"1219":1,"1222":1,"1226":1,"1228":1,"1230":1,"1232":1,"1242":1,"1244":1,"1247":1,"1249":3,"1257":2,"1260":2,"1263":1,"1265":1,"1268":1,"1275":2,"1277":2,"1280":2,"1282":7,"1283":2,"1284":2,"1285":1,"1288":1,"1292":2,"1297":1,"1299":1,"1300":1,"1303":1,"1305":1,"1308":1,"1310":1,"1312":2,"1313":1,"1314":1,"1316":1,"1319":1,"1324":1,"1325":1,"1326":1,"1327":1,"1329":1,"1330":1,"1332":2,"1333":2,"1334":2,"1340":5,"1342":1,"1345":1,"1346":2,"1349":1,"1350":1,"1353":5,"1356":1,"1359":3,"1362":4,"1364":2,"1365":3,"1367":1,"1369":1,"1373":1,"1375":8,"1377":1,"1378":13,"1379":2,"1387":1,"1392":1,"1393":1,"1395":2,"1397":1,"1398":1,"1401":1,"1404":3,"1406":4,"1407":6,"1408":1,"1410":12,"1413":11,"1414":1,"1415":3,"1416":3,"1417":6,"1419":2,"1421":4,"1422":4,"1425":4,"1426":1,"1427":5,"1428":2,"1432":1,"1433":1,"1434":2,"1437":1,"1440":2,"1442":2,"1444":1,"1445":2,"1446":1,"1449":1,"1451":1,"1456":2,"1458":1,"1459":1,"1461":4,"1464":4,"1465":3,"1466":7,"1468":3,"1471":2,"1474":2,"1478":1,"1479":5,"1480":1,"1481":1,"1482":1,"1485":1,"1486":2,"1487":5,"1489":2,"1491":1,"1492":2,"1493":1,"1496":1,"1497":4,"1504":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":2,"1512":3,"1513":1,"1515":1,"1516":3,"1518":1,"1519":2,"1522":3,"1523":1,"1524":1,"1526":2,"1527":3,"1528":4,"1529":2,"1532":12,"1533":2,"1535":4,"1538":4,"1539":1,"1540":5,"1542":1,"1543":1,"1545":1,"1547":1,"1548":1,"1552":3,"1583":2,"1585":2,"1586":1,"1587":1,"1596":2,"1599":2,"1603":5,"1606":3,"1607":1,"1608":1,"1612":1,"1614":1,"1615":2,"1616":4,"1617":2,"1620":1,"1621":1,"1622":1,"1624":1,"1627":7,"1636":3,"1638":1,"1639":4,"1647":1,"1648":2,"1649":2,"1653":1,"1655":4,"1656":3,"1657":3,"1658":2,"1660":2,"1661":2,"1662":1,"1663":1,"1664":1,"1666":2,"1672":2,"1675":5,"1680":2,"1684":1,"1685":2,"1686":2,"1687":2,"1688":2,"1689":2,"1693":4,"1698":1,"1707":2,"1709":1,"1711":2,"1714":4,"1715":1,"1716":4,"1726":1,"1727":1,"1734":2,"1735":2,"1736":4,"1740":1,"1741":1,"1745":1,"1746":1,"1747":1,"1748":1,"1749":1,"1752":1,"1753":1,"1754":1,"1756":2,"1759":2,"1760":3,"1763":1,"1768":1,"1773":2,"1775":4,"1776":4,"1777":2,"1778":4,"1779":3,"1780":3,"1781":5,"1782":5,"1783":1,"1785":1,"1787":1,"1788":3,"1789":8,"1790":2,"1822":2,"1824":2,"1825":1,"1829":1,"1830":1,"1831":2,"1834":1,"1835":1,"1836":1,"1837":2,"1839":2,"1840":14,"1843":5,"1844":2,"1845":3,"1846":5,"1857":1,"1859":1,"1861":1,"1872":1,"1900":1,"1907":2,"1910":2,"1917":3,"1928":3,"1929":4,"1930":9,"1931":1,"1932":2,"1933":3,"1934":2,"1937":2,"1939":3,"1941":1,"1945":1,"1947":1,"1948":1,"1949":2,"1951":5,"1952":1,"1953":3,"1954":10,"1955":2,"1956":16,"1958":1,"1959":1,"1960":4,"1961":1,"1962":2,"1964":3,"1968":8,"1970":2,"1971":4,"1972":3,"1973":1,"1974":2,"1975":5,"1976":7,"1978":4,"1979":4,"1982":2,"1983":1,"1985":1,"1986":1,"1987":5,"1992":1,"1994":2,"1996":2,"1999":1,"2001":5,"2002":1,"2004":1,"2005":1,"2006":1,"2007":3,"2009":2,"2014":1,"2015":1,"2016":1,"2017":1,"2018":1,"2019":1,"2020":1,"2021":1,"2022":1,"2023":1,"2027":1,"2029":1,"2030":2,"2036":2,"2037":3,"2039":1,"2040":1,"2041":1,"2044":2,"2049":2,"2050":6,"2052":2,"2055":1,"2057":1,"2059":2,"2060":14,"2063":10,"2064":9,"2066":2,"2068":3,"2069":6,"2072":1,"2083":1,"2085":1,"2087":1,"2098":1,"2144":1,"2151":2,"2154":2,"2156":1,"2158":1,"2159":1,"2160":3,"2161":2,"2164":1,"2167":1,"2168":1,"2169":1,"2171":3,"2172":6,"2173":2,"2174":1,"2176":1,"2178":6,"2180":7,"2181":2,"2182":5,"2183":2,"2184":3,"2187":1,"2191":2,"2192":4,"2196":1,"2199":3,"2200":2,"2201":1,"2202":2,"2203":1,"2204":1,"2206":1,"2207":1,"2210":2,"2215":1,"2218":3,"2220":1,"2221":2,"2227":1,"2229":1,"2230":1,"2231":1,"2233":1,"2234":1,"2249":1,"2252":1,"2253":2,"2254":1,"2257":1,"2258":1,"2259":1,"2260":2,"2262":2,"2263":1,"2265":2,"2266":1,"2267":1,"2268":10,"2269":28,"2270":2,"2271":7,"2272":1,"2273":2,"2274":1,"2276":1,"2277":1,"2278":1,"2279":2,"2281":2,"2282":4,"2283":11,"2284":4,"2285":3,"2286":2,"2287":2,"2288":16,"2289":6,"2290":3,"2291":5,"2293":17,"2294":1,"2296":1,"2298":2,"2301":3,"2302":6,"2303":6,"2305":1,"2309":1,"2310":8,"2311":3,"2312":6,"2313":1,"2316":1,"2318":3,"2319":1,"2320":2,"2322":5,"2323":6,"2324":4,"2341":1,"2345":1,"2355":1,"2372":6,"2374":2,"2375":4,"2376":2,"2377":1,"2379":2,"2381":1,"2382":1,"2383":1,"2384":2,"2386":2,"2388":2,"2389":1,"2390":4,"2391":2,"2393":2,"2395":2,"2397":2,"2398":2,"2401":1,"2403":1,"2405":1,"2407":1,"2408":5,"2410":12,"2411":2,"2414":1,"2416":4,"2417":4,"2418":6,"2419":1,"2420":13,"2421":5,"2422":5,"2423":2,"2424":3,"2425":4,"2427":7,"2428":2,"2430":1,"2432":2,"2439":1,"2442":1,"2443":1,"2444":1,"2446":4,"2448":3,"2449":1,"2451":1,"2452":1,"2454":2,"2457":1,"2458":1,"2459":7,"2461":3,"2463":3,"2465":1,"2466":1,"2467":2,"2468":2,"2469":2,"2471":2,"2473":4,"2474":4,"2475":4,"2476":1,"2483":2,"2487":1,"2489":1,"2490":2,"2494":2,"2495":4,"2496":5,"2497":5,"2498":1,"2500":1,"2501":3,"2502":1,"2503":1,"2505":2,"2506":1,"2507":1,"2519":3,"2530":1,"2534":2,"2542":2,"2544":1,"2545":1,"2548":4,"2549":4,"2550":4,"2551":4,"2552":2,"2553":2,"2554":3,"2555":5,"2556":2,"2557":2,"2559":1,"2560":8,"2561":9,"2562":2,"2563":2,"2564":3,"2566":4,"2568":2,"2569":3,"2572":6,"2573":2,"2575":1,"2576":1,"2577":2,"2578":4,"2579":4,"2580":3,"2583":4,"2584":1,"2586":1,"2587":1,"2588":1,"2589":2,"2590":2,"2591":2,"2594":4,"2595":1,"2600":2,"2605":3,"2607":1,"2610":1,"2612":1,"2613":1,"2619":2,"2620":3,"2621":4,"2622":3,"2625":2,"2626":1,"2627":13,"2628":2,"2629":2,"2630":1,"2631":3,"2633":3,"2634":1,"2636":1,"2643":3,"2644":1,"2645":3,"2646":1,"2648":1,"2651":2,"2652":1,"2655":1,"2656":2,"2657":2,"2658":2,"2661":1,"2662":2,"2664":1,"2666":1,"2667":1,"2669":1,"2671":1,"2673":2,"2676":8,"2677":7,"2678":8,"2679":4,"2680":2,"2683":1,"2684":2,"2685":5,"2687":3,"2688":3,"2689":4,"2691":1,"2693":1,"2694":3,"2695":1,"2700":3,"2702":2,"2704":1,"2705":2,"2706":1,"2707":5,"2708":1,"2709":2,"2710":2,"2711":2,"2712":1,"2713":4,"2714":3,"2715":2,"2718":1,"2719":10,"2720":1,"2721":11,"2722":6,"2723":1,"2724":2,"2725":4,"2731":3,"2732":1,"2734":4,"2742":1,"2744":1,"2747":9,"2748":12,"2749":21,"2750":29,"2751":1,"2757":4,"2758":5,"2760":7,"2761":1,"2762":1,"2763":1,"2764":1,"2765":4,"2766":6,"2767":5,"2768":6,"2769":4,"2770":6,"2771":2,"2772":2,"2773":1,"2775":4,"2776":4,"2777":1,"2778":1,"2780":1,"2782":2,"2786":1,"2788":1,"2789":1,"2791":2,"2792":1,"2795":2,"2796":1,"2798":1,"2800":1,"2804":1,"2805":1,"2810":1,"2811":1,"2816":1,"2818":1,"2821":2,"2824":1,"2826":2,"2828":1,"2833":1,"2834":2,"2838":2,"2839":2,"2844":2,"2845":3,"2846":2,"2847":4,"2848":1,"2849":1,"2850":4,"2851":1,"2852":1,"2853":1,"2854":2,"2855":1,"2856":2,"2857":7,"2858":2,"2861":4,"2862":19,"2863":1,"2864":13,"2865":6,"2867":2,"2868":1,"2870":5,"2871":13,"2872":1,"2873":5,"2874":1,"2875":1,"2876":2,"2877":3,"2878":3,"2879":2,"2881":2,"2882":2,"2883":1,"2885":2,"2886":2,"2887":2,"2888":3,"2889":3,"2890":1,"2894":1,"2895":6,"2896":3,"2899":2,"2900":4,"2901":1,"2902":1,"2903":4,"2905":6,"2906":2,"2907":2,"2911":2,"2912":4,"2913":3,"2914":3,"2915":7,"2916":1,"2917":3,"2918":1,"2919":7,"2921":6,"2922":1,"2924":3,"2925":1,"2926":1,"2927":4,"2928":2,"2929":6,"2930":6,"2931":3,"2932":3,"2933":5,"2934":3,"2936":4,"2937":4,"2938":1,"2941":1,"2942":7}}],["ordinarily",{"2":{"1512":1}}],["ordering",{"2":{"50":1,"2037":1,"2721":1}}],["order",{"0":{"1284":1,"1605":1,"1606":1,"2199":1},"2":{"10":1,"49":3,"50":1,"119":1,"124":1,"125":1,"132":1,"133":1,"134":1,"143":2,"174":1,"176":2,"185":1,"186":1,"188":1,"191":2,"206":1,"209":1,"222":1,"234":2,"272":1,"277":1,"308":1,"334":1,"373":1,"456":1,"481":1,"566":1,"570":1,"573":2,"631":1,"678":1,"682":1,"726":1,"746":1,"747":1,"751":2,"756":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1200":1,"1201":1,"1216":1,"1282":3,"1284":7,"1317":1,"1362":1,"1377":1,"1407":1,"1410":1,"1421":1,"1433":2,"1508":1,"1532":1,"1605":2,"1606":8,"1781":1,"1955":1,"2037":1,"2047":1,"2064":1,"2182":1,"2199":5,"2252":1,"2262":1,"2263":1,"2290":1,"2298":1,"2303":1,"2310":1,"2312":1,"2409":1,"2422":1,"2447":1,"2448":1,"2475":1,"2492":1,"2560":1,"2562":1,"2605":2,"2625":1,"2676":2,"2677":1,"2678":2,"2685":1,"2691":1,"2721":1,"2722":1,"2748":1,"2867":1,"2894":1,"2905":1,"2906":1,"2912":1,"2942":1}}],["ored",{"2":{"1359":1}}],["orient",{"2":{"2266":1}}],["orientation",{"2":{"2044":5,"2750":1}}],["oriented",{"2":{"632":1,"1950":1,"2280":1,"2934":1}}],["oring",{"2":{"1532":2,"2565":1}}],["originating",{"2":{"1970":1,"1971":1}}],["original",{"2":{"124":1,"654":1,"1378":1,"1656":1,"1760":1,"1943":1,"2405":1,"2457":1,"2796":1,"2921":1}}],["originally",{"2":{"113":1,"293":1,"305":1,"314":1,"1340":1,"1534":1,"2382":1,"2493":1,"2719":1}}],["origin",{"2":{"405":1,"415":2,"416":1,"417":2,"457":2,"611":1,"2601":3,"2630":6,"2632":4,"2633":1}}],["orange",{"2":{"160":1,"683":1,"1938":1,"2067":2,"2198":3}}],["organise",{"2":{"222":1}}],["organize",{"2":{"114":1,"160":1,"2443":1}}],["organization",{"2":{"21":1,"160":1,"268":1,"279":1,"342":1,"2398":1,"2443":3}}],["org",{"2":{"160":1,"608":1,"1350":1,"1355":1,"1364":1,"1372":1,"1373":1,"1461":1,"1922":1,"2725":1}}],["orbit",{"2":{"160":1}}],["orthocode",{"2":{"277":1}}],["orthograph",{"2":{"249":1}}],["ortho60",{"2":{"199":1}}],["ortholinear",{"2":{"114":1,"681":1,"1484":1,"2416":1}}],["ortho",{"2":{"70":1,"154":4,"222":3,"249":1,"1430":4,"1433":1,"1486":1,"2418":1,"2442":1,"2714":2,"2721":1,"2845":1}}],["or",{"0":{"1346":1,"1986":1,"2300":1,"2625":1,"2842":1,"2906":1,"2925":1,"2937":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1,"2907":1,"2908":1,"2909":1,"2910":1,"2911":1,"2912":1,"2913":1},"2":{"0":1,"9":1,"16":1,"19":1,"22":1,"23":1,"32":1,"39":1,"49":1,"52":1,"82":1,"87":1,"88":2,"90":2,"103":2,"104":2,"119":2,"126":2,"127":2,"131":1,"134":1,"137":2,"138":2,"143":2,"145":1,"149":1,"182":1,"191":1,"202":2,"209":1,"210":1,"212":1,"213":1,"214":2,"232":1,"234":4,"240":3,"244":1,"263":1,"268":1,"275":1,"279":2,"288":1,"302":1,"312":1,"347":1,"363":1,"393":3,"397":1,"408":5,"411":1,"412":2,"420":1,"423":1,"427":7,"428":3,"431":3,"433":1,"434":1,"435":3,"437":1,"438":3,"443":2,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"457":1,"458":1,"460":1,"461":3,"468":1,"475":1,"485":1,"486":1,"490":1,"491":1,"493":1,"494":1,"505":2,"507":1,"510":3,"511":2,"514":1,"517":1,"518":1,"522":2,"526":1,"536":2,"538":1,"539":1,"542":1,"543":2,"554":1,"555":2,"559":6,"562":3,"563":2,"567":1,"568":1,"572":2,"579":1,"589":1,"590":1,"594":1,"595":1,"598":3,"608":2,"610":1,"611":3,"612":1,"614":4,"617":7,"618":1,"619":1,"620":1,"625":3,"626":1,"628":3,"637":4,"642":1,"643":2,"645":2,"646":2,"649":3,"654":1,"655":2,"658":1,"663":1,"664":1,"666":1,"667":1,"670":3,"680":2,"681":1,"683":5,"686":1,"687":2,"692":2,"695":1,"698":3,"700":1,"711":1,"712":4,"716":4,"717":6,"718":1,"720":1,"721":1,"740":1,"743":1,"745":1,"755":1,"760":2,"762":1,"763":2,"797":1,"798":1,"819":3,"821":1,"826":1,"827":1,"847":3,"849":1,"852":1,"853":1,"884":1,"885":1,"909":3,"911":1,"916":1,"917":1,"944":3,"946":1,"951":1,"952":1,"978":3,"980":1,"985":1,"986":1,"1012":3,"1014":1,"1019":1,"1020":1,"1046":3,"1048":1,"1053":1,"1054":1,"1087":1,"1088":1,"1121":1,"1122":1,"1155":1,"1156":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1197":3,"1198":1,"1202":1,"1204":1,"1211":1,"1212":1,"1235":3,"1237":1,"1243":1,"1250":1,"1253":1,"1264":1,"1281":1,"1282":1,"1284":1,"1286":2,"1287":1,"1291":1,"1294":1,"1308":1,"1310":1,"1312":2,"1313":1,"1315":2,"1319":1,"1326":1,"1339":1,"1340":1,"1343":1,"1348":1,"1349":1,"1350":2,"1359":1,"1373":2,"1374":1,"1375":2,"1378":3,"1385":1,"1387":1,"1388":1,"1407":3,"1409":1,"1410":1,"1413":1,"1415":1,"1416":4,"1417":1,"1419":1,"1420":1,"1421":2,"1422":4,"1423":1,"1424":1,"1433":1,"1434":1,"1436":2,"1438":2,"1440":3,"1442":5,"1446":1,"1451":1,"1458":1,"1459":2,"1460":2,"1461":3,"1464":2,"1465":1,"1466":2,"1467":1,"1471":3,"1472":1,"1474":3,"1475":1,"1476":1,"1477":1,"1479":1,"1480":2,"1482":1,"1484":1,"1486":2,"1487":1,"1492":2,"1493":1,"1495":1,"1497":1,"1511":3,"1516":1,"1518":1,"1519":3,"1521":3,"1522":1,"1523":1,"1526":2,"1528":1,"1531":1,"1532":1,"1535":2,"1536":1,"1537":1,"1538":1,"1539":3,"1540":1,"1541":1,"1552":1,"1554":1,"1566":1,"1584":1,"1585":1,"1587":5,"1588":5,"1589":1,"1591":2,"1595":2,"1596":1,"1599":1,"1602":1,"1603":1,"1606":6,"1607":2,"1611":1,"1612":1,"1614":1,"1615":2,"1616":1,"1617":1,"1619":1,"1620":1,"1624":3,"1625":1,"1626":1,"1628":1,"1639":1,"1649":1,"1651":2,"1655":5,"1656":1,"1662":1,"1664":1,"1665":1,"1666":1,"1667":1,"1668":1,"1672":1,"1674":1,"1679":1,"1680":1,"1681":2,"1682":1,"1691":1,"1702":1,"1706":1,"1720":1,"1722":1,"1732":1,"1734":1,"1736":1,"1743":2,"1751":1,"1759":1,"1760":1,"1761":1,"1770":1,"1775":2,"1776":1,"1779":1,"1782":5,"1788":1,"1791":1,"1824":2,"1827":1,"1832":1,"1833":1,"1837":3,"1840":4,"1842":1,"1844":2,"1849":2,"1851":1,"1852":1,"1859":1,"1861":1,"1917":2,"1928":2,"1929":2,"1931":2,"1933":2,"1936":1,"1938":1,"1945":3,"1947":1,"1949":1,"1950":2,"1951":1,"1955":1,"1956":10,"1958":1,"1967":2,"1968":1,"1976":4,"1979":3,"1980":2,"1987":1,"1989":1,"1992":2,"1993":2,"1994":1,"1996":1,"2001":4,"2007":1,"2009":1,"2030":2,"2032":2,"2033":2,"2034":1,"2039":2,"2044":1,"2045":1,"2047":1,"2050":3,"2060":4,"2062":1,"2066":2,"2072":2,"2077":1,"2078":1,"2085":1,"2087":1,"2159":2,"2160":1,"2163":1,"2165":1,"2166":1,"2167":1,"2169":1,"2174":2,"2177":1,"2181":1,"2184":2,"2196":1,"2204":1,"2214":1,"2216":1,"2217":4,"2251":1,"2252":2,"2253":2,"2254":3,"2258":2,"2265":1,"2266":2,"2269":1,"2270":3,"2271":2,"2272":2,"2273":1,"2277":1,"2279":1,"2280":2,"2283":5,"2285":1,"2286":1,"2287":2,"2288":1,"2291":4,"2293":5,"2294":1,"2297":2,"2302":4,"2303":2,"2310":4,"2311":2,"2312":1,"2316":1,"2322":1,"2323":2,"2324":1,"2325":1,"2358":1,"2369":1,"2372":2,"2374":2,"2376":3,"2379":2,"2381":1,"2382":1,"2384":1,"2386":2,"2388":2,"2389":1,"2391":2,"2393":3,"2395":3,"2397":3,"2398":1,"2400":1,"2401":3,"2404":1,"2410":3,"2411":2,"2414":1,"2416":2,"2419":1,"2420":4,"2421":1,"2422":1,"2424":2,"2425":2,"2426":1,"2427":4,"2428":2,"2437":1,"2438":1,"2442":1,"2444":1,"2446":1,"2447":1,"2448":3,"2451":1,"2458":1,"2459":2,"2469":1,"2473":1,"2475":1,"2476":1,"2479":1,"2495":3,"2501":1,"2504":1,"2508":1,"2512":1,"2515":1,"2516":1,"2518":1,"2525":1,"2526":1,"2532":1,"2533":1,"2546":1,"2551":1,"2552":1,"2554":3,"2555":3,"2560":3,"2561":3,"2562":2,"2563":1,"2565":1,"2566":2,"2577":2,"2578":2,"2579":2,"2580":2,"2582":3,"2583":1,"2587":1,"2588":1,"2605":7,"2606":1,"2607":5,"2609":3,"2610":1,"2613":1,"2619":6,"2620":1,"2631":2,"2633":2,"2643":1,"2644":2,"2645":1,"2649":2,"2652":1,"2655":1,"2656":1,"2658":1,"2661":1,"2671":1,"2673":1,"2676":1,"2678":3,"2684":1,"2685":3,"2687":1,"2689":1,"2692":2,"2695":1,"2703":1,"2707":1,"2712":1,"2713":1,"2715":2,"2718":1,"2719":3,"2720":1,"2721":18,"2722":3,"2723":1,"2724":2,"2725":5,"2727":1,"2728":2,"2731":1,"2732":3,"2745":1,"2746":1,"2747":1,"2748":1,"2749":5,"2750":12,"2757":1,"2760":1,"2762":1,"2763":1,"2766":1,"2770":2,"2775":1,"2778":1,"2782":1,"2784":1,"2786":1,"2787":1,"2788":1,"2789":2,"2790":2,"2791":3,"2792":1,"2793":1,"2798":1,"2801":1,"2806":1,"2812":1,"2818":2,"2827":1,"2834":2,"2842":1,"2845":2,"2847":1,"2862":3,"2864":1,"2870":1,"2871":1,"2879":1,"2882":2,"2885":2,"2886":2,"2887":1,"2892":1,"2895":4,"2896":3,"2899":1,"2905":1,"2906":4,"2907":1,"2912":2,"2913":1,"2915":1,"2917":3,"2918":5,"2919":5,"2921":5,"2923":2,"2925":2,"2932":1,"2933":1,"2939":1,"2941":1}}],["dx",{"2":{"2882":1}}],["dlls",{"2":{"2732":1}}],["dlr",{"2":{"2527":1,"2547":1}}],["dg",{"2":{"2620":1}}],["dgk6x",{"2":{"199":1,"218":2,"322":2}}],["dqt",{"2":{"2527":1,"2547":1}}],["dquote",{"2":{"519":2}}],["dquo",{"2":{"176":2,"2527":1,"2547":1,"2568":6}}],["d♯",{"2":{"1919":6,"2520":6}}],["ds5",{"2":{"1919":1,"2520":1}}],["ds4",{"2":{"1919":1,"2520":1}}],["ds3",{"2":{"1919":1,"2520":1}}],["ds2",{"2":{"1919":1,"2520":1}}],["ds1",{"2":{"1919":1,"2520":1}}],["ds",{"2":{"1919":1,"2520":1}}],["d♭",{"2":{"1919":6,"2520":6}}],["dwl",{"2":{"1675":1}}],["dwld",{"2":{"1674":1}}],["dwlu",{"2":{"1674":1}}],["dwell",{"2":{"1674":4,"1675":13,"2269":1}}],["dword",{"0":{"2237":1},"1":{"2238":1},"2":{"1406":1,"1408":1}}],["db5",{"2":{"1919":1,"2520":1}}],["db4",{"2":{"1919":1,"2520":1}}],["db3",{"2":{"1919":1,"2520":1}}],["db2",{"2":{"1919":1,"2520":1}}],["db1",{"2":{"1919":1,"2520":1}}],["dbl",{"2":{"1680":2}}],["dblsharp",{"2":{"1680":6}}],["dblclick",{"2":{"1680":14}}],["dbaas",{"2":{"1591":1}}],["db",{"2":{"1319":1,"1919":1,"2184":1,"2504":1,"2520":1,"2745":1}}],["db60",{"2":{"191":1}}],["d9",{"2":{"692":1}}],["d8",{"2":{"692":1,"2495":1}}],["d3",{"2":{"568":1,"1192":1,"1265":3,"1392":1,"1919":1,"2259":1,"2520":1,"2684":1,"2712":1,"2713":1}}],["d2",{"2":{"568":1,"1192":1,"1265":3,"1392":1,"1919":1,"2033":1,"2034":2,"2036":1,"2259":1,"2520":1,"2684":1,"2712":1,"2713":1}}],["d7",{"2":{"559":1,"563":1,"690":1,"1265":1,"1693":1,"2684":1}}],["d6",{"2":{"559":1,"690":1,"1265":1,"2424":1}}],["d60b",{"2":{"328":1}}],["d4",{"2":{"559":1,"690":1,"1547":1,"1693":1,"1919":1,"2368":1,"2520":1,"2684":1,"2712":1}}],["d5",{"2":{"559":1,"1265":1,"1389":1,"1393":1,"1547":1,"1919":1,"2034":2,"2036":1,"2377":1,"2384":1,"2520":1,"2684":2,"2713":1}}],["dnworks",{"2":{"270":2,"277":2}}],["dpi",{"2":{"1981":2,"1982":1}}],["dprint",{"2":{"1324":1,"2270":1,"2411":2}}],["dprintf",{"2":{"50":1,"1324":1,"2270":1,"2941":2}}],["dp3000",{"2":{"226":2,"236":1}}],["dharma",{"2":{"222":1}}],["dyn",{"2":{"1657":1}}],["dynamically",{"2":{"119":1,"2757":1,"2844":1,"2905":1}}],["dynamic",{"0":{"119":1,"1655":1,"1657":1,"2511":1,"2806":1,"2905":1},"1":{"1656":1,"1657":1,"1658":1},"2":{"119":4,"134":1,"160":2,"176":3,"188":2,"191":4,"199":1,"210":3,"222":1,"236":2,"249":1,"277":2,"328":1,"536":1,"572":1,"1655":11,"1656":7,"1657":4,"1658":6,"2511":6,"2524":6,"2806":1,"2900":1,"2903":2,"2905":10,"2933":2}}],["dymium65",{"2":{"222":1}}],["dyz",{"2":{"222":1}}],["dclk",{"2":{"2500":1}}],["dc",{"2":{"1953":2,"2749":11}}],["dc60",{"2":{"222":1}}],["dc01",{"2":{"114":2}}],["d",{"2":{"194":1,"196":8,"199":1,"222":1,"249":1,"266":3,"328":1,"348":1,"369":1,"370":1,"432":3,"489":1,"494":1,"508":1,"509":1,"570":2,"587":2,"608":1,"613":2,"614":1,"616":1,"618":1,"631":1,"1313":2,"1327":1,"1329":1,"1461":1,"1464":1,"1465":2,"1466":1,"1517":1,"1591":2,"1596":2,"1599":1,"1619":1,"1785":8,"1791":1,"1919":19,"1949":1,"2159":1,"2161":2,"2270":1,"2279":1,"2289":1,"2294":1,"2315":1,"2324":1,"2386":2,"2388":2,"2389":2,"2390":1,"2391":2,"2418":1,"2455":1,"2495":1,"2503":3,"2520":19,"2535":3,"2550":1,"2556":1,"2608":1,"2614":1,"2645":1,"2746":11,"2748":2,"2749":4,"2750":4,"2882":1,"2941":1}}],["dvd",{"2":{"2561":1}}],["dv",{"2":{"176":2,"1587":1}}],["dvorak",{"0":{"2805":1},"2":{"92":1,"176":1,"1416":2,"1419":1,"1420":1,"1436":1,"1587":1,"1614":3,"1616":2,"2183":1,"2555":1,"2788":2,"2805":2,"2880":14}}],["ddr",{"2":{"2036":3}}],["ddram",{"0":{"1730":1},"1":{"1731":1},"2":{"1723":2,"1730":1,"1731":1}}],["dd",{"2":{"176":2,"188":1,"191":10,"199":7,"222":1,"236":2,"277":6,"317":2,"328":25,"333":1,"405":2}}],["djinn",{"2":{"176":1,"266":1}}],["dt40",{"2":{"210":1}}],["dtisaac",{"2":{"122":1}}],["dtisaac01",{"2":{"122":2}}],["dt",{"2":{"119":3,"2524":3,"2905":22}}],["dzr",{"2":{"2294":1}}],["dz60",{"2":{"222":1,"427":2}}],["dz60rgb",{"2":{"114":1,"160":1}}],["dztech",{"2":{"102":1,"160":1,"199":1,"222":1}}],["dribin",{"2":{"2459":1}}],["driving",{"2":{"712":1,"1293":1,"1294":1}}],["drives",{"2":{"176":1,"1471":1}}],["drive",{"2":{"173":1,"559":1,"719":1,"1202":1,"1472":1,"1476":1,"1477":1,"1539":1,"1675":2,"1678":1,"1679":1}}],["driven",{"0":{"109":1,"169":1,"184":1,"662":1},"1":{"110":1,"111":1,"112":1,"170":1,"663":1,"664":1,"665":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1},"2":{"76":1,"109":1,"114":1,"145":3,"160":2,"169":1,"176":4,"184":1,"191":2,"199":13,"210":13,"212":1,"222":26,"236":6,"262":1,"266":68,"277":3,"446":1,"447":1,"553":2,"662":1,"718":1,"1294":1,"1389":1,"1390":1,"1468":2,"1539":2,"1552":1,"1838":1,"1955":1,"1958":1,"1961":1,"1962":1,"1976":1,"2058":1,"2447":1,"2662":1,"2709":1,"2715":2,"2721":2,"2844":1,"2934":1}}],["driver",{"0":{"209":1,"221":1,"233":1,"240":1,"244":1,"682":1,"687":1,"699":1,"711":1,"721":1,"738":1,"740":1,"741":1,"742":1,"743":1,"744":1,"746":1,"747":1,"748":1,"749":1,"751":1,"752":1,"753":1,"754":1,"755":1,"756":1,"761":1,"797":1,"826":1,"852":1,"884":1,"916":1,"920":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1091":1,"1121":1,"1125":1,"1155":1,"1189":1,"1199":1,"1200":1,"1201":1,"1202":1,"1211":1,"1242":1,"1263":1,"1280":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1296":1,"1299":1,"1300":1,"1541":1,"1542":1,"1543":1,"1544":1,"1545":1,"1547":1,"1548":1,"1550":1,"1551":1,"1574":1,"1690":1,"1839":1,"1944":1,"1957":1,"1977":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2059":1,"2275":1,"2435":1,"2697":1,"2698":1,"2699":1,"2738":1},"1":{"683":1,"684":1,"685":1,"686":1,"688":1,"689":1,"690":1,"691":1,"692":1,"693":1,"694":1,"695":1,"696":1,"697":1,"698":1,"700":1,"701":1,"702":1,"703":1,"704":1,"705":1,"706":1,"707":1,"708":1,"709":1,"710":1,"712":1,"713":1,"714":1,"715":1,"716":1,"717":1,"718":1,"719":1,"720":1,"722":1,"723":1,"724":1,"725":1,"726":1,"727":1,"728":1,"729":1,"730":1,"731":1,"732":1,"733":1,"734":1,"735":1,"736":1,"737":1,"739":1,"740":1,"741":2,"742":2,"744":1,"745":2,"746":1,"747":1,"748":1,"749":1,"756":1,"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"769":1,"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"777":1,"778":1,"779":1,"780":1,"781":1,"782":1,"783":1,"784":1,"785":1,"786":1,"787":1,"788":1,"789":1,"790":1,"791":1,"792":1,"793":1,"794":1,"795":1,"796":1,"798":1,"799":1,"800":1,"801":1,"802":1,"803":1,"804":1,"805":1,"806":1,"807":1,"808":1,"809":1,"810":1,"811":1,"812":1,"813":1,"814":1,"815":1,"816":1,"817":1,"818":1,"819":1,"820":1,"821":1,"822":1,"823":1,"824":1,"825":1,"827":1,"828":1,"829":1,"830":1,"831":1,"832":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"839":1,"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":1,"864":1,"865":1,"866":1,"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1,"878":1,"879":1,"880":1,"881":1,"882":1,"883":1,"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"912":1,"913":1,"914":1,"915":1,"917":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"947":1,"948":1,"949":1,"950":1,"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"972":1,"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":1,"983":1,"984":1,"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1,"1010":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1037":1,"1038":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1048":1,"1049":1,"1050":1,"1051":1,"1052":1,"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":1,"1065":1,"1066":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1072":1,"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1,"1083":1,"1084":1,"1085":1,"1086":1,"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1128":1,"1129":1,"1130":1,"1131":1,"1132":1,"1133":1,"1134":1,"1135":1,"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1,"1183":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1190":1,"1191":1,"1192":1,"1193":1,"1194":1,"1195":1,"1196":1,"1197":1,"1198":1,"1199":1,"1200":2,"1201":2,"1202":2,"1203":1,"1204":1,"1205":1,"1206":1,"1207":1,"1208":1,"1209":1,"1210":1,"1212":1,"1213":1,"1214":1,"1215":1,"1216":1,"1217":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1254":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":2,"1288":2,"1289":2,"1290":2,"1291":2,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":2,"1298":2,"1299":1,"1300":1,"1301":1,"1302":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1542":1,"1543":1,"1544":1,"1545":1,"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1698":1,"1699":1,"1700":1,"1701":1,"1702":1,"1703":1,"1704":1,"1705":1,"1706":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1718":1,"1719":1,"1720":1,"1721":1,"1722":1,"1723":1,"1724":1,"1725":1,"1726":1,"1727":1,"1728":1,"1729":1,"1730":1,"1731":1,"1945":1,"1946":1,"1947":1,"1948":1,"1949":1,"1950":1,"1951":1,"1952":1,"1953":1,"1954":1,"1955":1,"1956":1,"1957":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2276":1,"2277":1,"2278":1,"2279":1,"2280":1,"2281":1,"2282":1,"2283":1},"2":{"21":1,"31":5,"34":5,"50":1,"65":4,"75":1,"93":3,"94":2,"107":1,"112":1,"114":12,"118":10,"128":1,"133":2,"134":8,"145":3,"160":13,"174":2,"175":1,"176":13,"183":2,"191":18,"199":4,"208":2,"209":11,"210":7,"221":2,"222":11,"224":1,"232":4,"234":8,"236":25,"240":6,"248":1,"249":11,"266":3,"277":3,"285":1,"294":3,"308":3,"317":1,"328":1,"333":1,"682":1,"683":7,"684":6,"685":4,"686":3,"687":1,"688":2,"692":2,"699":1,"700":4,"703":1,"711":3,"712":2,"713":2,"714":3,"717":3,"718":2,"719":2,"721":1,"722":5,"723":2,"726":3,"729":2,"730":1,"731":1,"736":1,"737":2,"738":1,"739":2,"740":2,"741":3,"742":3,"743":13,"746":2,"747":2,"748":1,"749":3,"750":10,"751":3,"752":2,"753":1,"754":4,"755":4,"756":2,"762":4,"763":2,"764":2,"765":3,"769":1,"797":1,"798":5,"799":4,"800":1,"802":5,"805":6,"806":1,"807":1,"809":1,"810":1,"812":1,"814":1,"816":1,"818":1,"820":1,"822":1,"823":1,"824":1,"825":1,"826":1,"827":5,"828":1,"831":2,"834":4,"835":1,"838":1,"840":1,"842":1,"844":1,"846":1,"848":1,"850":1,"851":1,"852":1,"853":5,"854":4,"855":1,"860":5,"863":6,"864":1,"865":1,"867":1,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"880":1,"881":1,"882":1,"883":1,"884":1,"885":5,"886":4,"887":1,"890":5,"893":6,"894":1,"895":1,"897":1,"898":1,"899":1,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"912":1,"913":1,"914":1,"915":1,"916":1,"917":5,"918":8,"919":1,"920":4,"925":5,"928":6,"929":1,"930":1,"932":1,"933":1,"934":1,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"947":1,"948":1,"949":1,"950":1,"951":1,"952":5,"953":4,"954":1,"959":5,"962":6,"963":1,"964":1,"966":1,"967":1,"968":1,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"981":1,"982":1,"983":1,"984":1,"985":1,"986":5,"987":4,"988":1,"993":5,"996":6,"997":1,"998":1,"1000":1,"1001":1,"1002":1,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1016":1,"1017":1,"1018":1,"1019":1,"1020":5,"1021":4,"1022":1,"1027":5,"1030":6,"1031":1,"1032":1,"1034":1,"1035":1,"1036":1,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1050":1,"1051":1,"1052":1,"1053":1,"1054":5,"1055":4,"1056":1,"1061":5,"1064":6,"1065":1,"1066":1,"1068":1,"1069":1,"1070":1,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1083":1,"1084":1,"1085":1,"1086":1,"1087":1,"1088":5,"1089":8,"1090":1,"1091":4,"1095":5,"1098":6,"1099":1,"1100":1,"1102":1,"1103":1,"1104":1,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1117":1,"1118":1,"1119":1,"1120":1,"1121":1,"1122":5,"1123":8,"1124":1,"1125":4,"1129":5,"1132":6,"1133":1,"1134":1,"1136":1,"1137":1,"1138":1,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1151":1,"1152":1,"1153":1,"1154":1,"1155":1,"1156":5,"1157":4,"1158":1,"1163":5,"1166":6,"1167":1,"1168":2,"1170":1,"1171":1,"1172":1,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1185":1,"1186":1,"1187":1,"1188":1,"1189":2,"1190":4,"1191":2,"1192":3,"1194":2,"1195":6,"1196":2,"1197":3,"1198":6,"1200":4,"1201":4,"1202":1,"1205":1,"1211":1,"1212":5,"1213":4,"1214":1,"1216":5,"1219":6,"1220":1,"1221":1,"1223":1,"1224":1,"1225":1,"1226":1,"1228":1,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1239":1,"1240":1,"1241":1,"1243":4,"1245":1,"1247":1,"1263":1,"1264":4,"1266":1,"1268":1,"1280":1,"1281":4,"1282":1,"1286":3,"1287":3,"1288":3,"1289":3,"1290":2,"1291":2,"1296":3,"1299":1,"1300":3,"1302":1,"1315":2,"1390":2,"1470":1,"1471":3,"1474":1,"1475":1,"1477":2,"1541":1,"1542":2,"1543":3,"1544":1,"1545":2,"1547":2,"1548":2,"1550":3,"1551":2,"1572":1,"1574":1,"1672":2,"1677":1,"1733":3,"1839":5,"1945":1,"1947":2,"1958":1,"1959":2,"1960":1,"1961":1,"1962":1,"1963":1,"1964":1,"1967":2,"1972":1,"1973":1,"1974":1,"1975":1,"1976":2,"1977":6,"1978":1,"2009":1,"2032":3,"2033":2,"2034":2,"2035":1,"2036":2,"2037":1,"2059":5,"2074":1,"2172":3,"2255":1,"2276":1,"2367":2,"2369":1,"2381":1,"2383":1,"2411":1,"2435":1,"2437":2,"2438":3,"2439":2,"2503":1,"2560":1,"2692":11,"2696":1,"2697":2,"2698":2,"2699":1,"2702":10,"2704":7,"2722":1,"2746":2,"2749":1,"2750":2,"2848":1,"2849":2,"2850":2,"2851":3,"2852":2,"2857":4,"2864":2,"2868":2,"2870":2,"2871":2,"2873":2,"2876":5}}],["drivers",{"0":{"128":1,"157":1,"383":1,"1959":1,"2432":1,"2433":1,"2696":1,"2749":1},"1":{"158":1,"159":1,"1960":1,"1961":1,"1962":1,"1963":1,"1964":1,"1965":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1977":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1,"2697":1,"2698":1,"2699":1},"2":{"1":1,"33":2,"65":1,"74":2,"93":1,"113":2,"114":4,"128":1,"133":2,"134":11,"175":1,"176":3,"199":1,"210":5,"222":2,"233":2,"234":1,"236":8,"249":21,"266":1,"277":2,"294":1,"383":2,"682":2,"685":3,"686":1,"721":1,"723":1,"740":1,"746":1,"747":1,"748":1,"750":1,"761":1,"797":1,"799":1,"852":1,"854":1,"884":1,"886":1,"916":1,"918":1,"920":1,"951":1,"953":1,"985":1,"987":1,"1019":1,"1021":1,"1053":1,"1055":1,"1087":1,"1089":1,"1091":1,"1121":1,"1123":1,"1125":1,"1155":1,"1157":1,"1189":1,"1190":2,"1211":1,"1213":1,"1242":1,"1263":1,"1286":1,"1292":2,"1315":1,"1402":1,"1478":1,"1540":1,"1541":2,"1545":1,"1672":1,"1838":1,"1839":1,"1840":1,"1948":1,"1955":1,"1976":2,"1977":2,"1991":1,"2032":1,"2058":1,"2059":1,"2060":1,"2254":1,"2432":1,"2437":1,"2448":1,"2696":1,"2701":1,"2702":1,"2703":2,"2721":1,"2732":2,"2738":1,"2739":1,"2746":16,"2747":1,"2749":13,"2751":1,"2752":3,"2850":1,"2876":1}}],["drgblight",{"2":{"2448":2}}],["dr",{"2":{"2294":3,"2805":1}}],["drum",{"2":{"2212":1}}],["drone",{"2":{"673":1,"678":1}}],["drops",{"2":{"2372":1}}],["dropdown",{"2":{"683":1,"1309":1,"1310":1,"2324":1,"2676":2}}],["drop",{"2":{"73":1,"114":1,"119":1,"131":3,"134":1,"172":1,"173":1,"210":2,"218":2,"222":1,"236":1,"594":1,"597":1,"1385":1,"2546":1,"2566":1,"2599":1,"2644":1,"2681":1,"2706":1}}],["dropped",{"0":{"166":1},"2":{"50":1}}],["dry",{"2":{"453":1}}],["drv",{"2":{"328":1}}],["drv2605l",{"0":{"1676":1,"1680":1,"1681":1,"1682":1},"1":{"1677":1,"1678":1,"1679":1,"1680":1},"2":{"209":2,"1672":1,"1674":4,"1676":1,"1678":5,"1679":8,"1680":3,"1681":2}}],["drhigsby",{"2":{"154":4,"160":2}}],["drastically",{"2":{"1406":1}}],["drashna",{"2":{"93":1,"114":5,"123":1,"134":1,"175":1,"179":1,"191":1,"1464":1,"2072":1}}],["drags",{"2":{"1935":1}}],["drag",{"0":{"1986":1,"1987":1},"2":{"236":1,"597":1,"1979":1,"1986":3,"1987":10,"2031":1,"2607":1}}],["drain",{"0":{"1294":1},"2":{"160":1,"243":1,"758":2,"1194":1,"1294":2}}],["drawtext",{"2":{"2750":7}}],["drawimage",{"2":{"2750":7}}],["drawing",{"0":{"2750":1},"2":{"125":5,"138":3,"1956":1,"2283":1,"2746":1,"2749":14,"2750":8,"2754":1}}],["draws",{"2":{"2749":1,"2750":1}}],["drawbacks",{"2":{"1340":1}}],["drawn",{"2":{"644":1,"675":1,"2749":2,"2750":3,"2772":1}}],["draw",{"2":{"138":1,"675":1,"2749":3,"2750":34,"2754":2,"2772":4,"2875":1}}],["draculad",{"2":{"114":1}}],["dm",{"2":{"1655":12,"1657":2,"2511":5}}],["dmote",{"2":{"226":2,"236":1}}],["dmq",{"2":{"176":1}}],["dmacros",{"2":{"1465":1}}],["dma1",{"2":{"1300":1}}],["dma",{"2":{"49":1,"50":3,"266":1,"765":4,"1289":2,"1290":1,"1291":1,"1300":4,"2682":1}}],["dmas",{"2":{"49":1}}],["dmamux",{"2":{"49":4,"1300":3}}],["dm9records",{"2":{"37":3}}],["dutch",{"2":{"2880":1}}],["duty",{"2":{"63":1,"766":2,"1535":1,"1538":1,"1540":1}}],["duophony",{"2":{"559":3}}],["ducky",{"2":{"222":1}}],["duckypad",{"2":{"210":1}}],["duckduckgo",{"2":{"196":1,"1785":1}}],["dumbpad",{"2":{"191":1}}],["dummy",{"2":{"191":1,"210":1,"294":2,"693":1,"1782":4,"2921":4,"2923":1}}],["dumps",{"2":{"2410":3}}],["dump",{"2":{"49":3,"176":1,"222":1,"277":1,"623":1,"2410":5}}],["dubba175",{"2":{"154":2}}],["duplex",{"0":{"1193":1,"1196":1},"1":{"1194":1,"1195":1,"1197":1,"1198":1},"2":{"93":1,"107":3,"114":2,"176":1,"191":1,"277":1,"1189":2,"1190":2,"1193":4,"1194":1,"1195":1,"1196":4,"1197":1,"1198":3,"1202":3,"1204":2,"2704":4}}],["duplicating",{"2":{"328":1,"2677":1}}],["duplication",{"2":{"4":1,"222":1,"236":3,"285":1,"308":5,"328":1,"333":1,"663":1,"2677":1,"2721":1}}],["duplicates",{"2":{"236":1}}],["duplicated",{"2":{"75":1,"236":1,"308":1,"1696":1}}],["duplicate",{"2":{"4":1,"70":2,"75":1,"76":1,"145":1,"176":1,"191":2,"199":3,"222":2,"266":1,"277":1,"308":1,"317":1,"327":1,"333":1,"667":1,"2427":1,"2629":2,"2769":1,"2844":1}}],["duration",{"2":{"119":1,"120":1,"210":2,"656":1,"1435":1,"1438":2,"1487":3,"1592":1,"1780":1,"2065":1,"2184":2}}],["durgod",{"2":{"86":4,"102":2,"114":2,"160":1,"181":4,"191":1,"199":1,"218":2,"222":1,"322":2,"328":1}}],["during",{"2":{"49":1,"103":1,"107":1,"116":1,"118":1,"126":1,"131":1,"160":1,"170":1,"176":1,"191":1,"201":1,"212":2,"236":1,"249":1,"273":1,"297":3,"308":1,"312":1,"333":1,"453":1,"628":1,"632":1,"644":1,"649":1,"715":1,"716":1,"719":1,"746":1,"1367":1,"1480":1,"1516":1,"1540":1,"1656":1,"1675":2,"1681":1,"1936":1,"1937":1,"1941":1,"1949":1,"1992":1,"1994":2,"1995":1,"2174":1,"2182":1,"2270":1,"2279":1,"2427":1,"2678":2,"2721":1,"2749":2,"2757":1,"2769":1,"2770":1,"2853":1,"2897":1,"2915":2,"2933":1}}],["dualbank",{"2":{"176":1}}],["dual",{"2":{"49":3,"114":2,"160":1,"176":1,"194":1,"562":3,"572":1,"1843":4,"2063":15,"2302":1,"2411":1,"2678":8,"2887":2,"2905":2,"2906":8,"2912":8,"2913":5,"2914":1,"2921":1}}],["due",{"2":{"45":1,"114":1,"120":1,"128":1,"134":2,"138":1,"167":1,"199":1,"233":1,"236":1,"273":1,"284":1,"285":1,"308":1,"1196":1,"1285":1,"1287":1,"1289":1,"1300":1,"1315":1,"1317":1,"1345":1,"1364":1,"1484":1,"1497":1,"1518":1,"1528":1,"1840":1,"2001":1,"2060":1,"2171":1,"2287":1,"2323":1,"2324":1,"2491":1,"2497":1,"2550":1,"2555":1,"2560":2,"2621":1,"2657":1,"2664":1,"2688":1,"2719":1,"2721":1,"2746":1,"2837":1,"2894":1,"2895":1,"2930":1}}],["dfsr",{"2":{"2501":1}}],["dflash",{"2":{"1466":1}}],["df11",{"2":{"686":2,"2386":1,"2391":1}}],["df1deb37c163",{"2":{"371":1}}],["df",{"2":{"38":1,"247":2,"317":1,"1416":1,"1650":2,"1993":1,"2516":1,"2534":1,"2544":1}}],["dfu",{"0":{"1315":1,"2376":1,"2377":1,"2386":1,"2389":1,"2390":1,"2391":1,"2491":1,"2605":1},"1":{"2377":1,"2378":1,"2387":1,"2392":1},"2":{"12":1,"49":2,"111":1,"114":1,"145":1,"199":1,"210":2,"240":5,"566":6,"571":4,"686":19,"1312":3,"1362":4,"1675":1,"2266":6,"2376":11,"2377":1,"2378":5,"2385":1,"2386":6,"2387":6,"2388":4,"2389":3,"2390":4,"2391":5,"2392":4,"2410":4,"2496":1,"2498":2,"2501":1,"2605":1,"2608":5,"2660":1}}],["d14",{"2":{"692":2}}],["d13",{"2":{"692":2}}],["d12",{"2":{"692":2}}],["d11",{"2":{"692":2}}],["d10",{"2":{"692":2}}],["d1",{"2":{"34":1,"568":1,"764":2,"1192":1,"1265":2,"1392":1,"1919":1,"2033":1,"2259":1,"2268":1,"2520":1,"2684":1,"2712":1}}],["d0",{"2":{"34":1,"559":1,"568":2,"764":2,"1192":1,"1265":2,"1368":1,"1392":1,"2259":1,"2265":1,"2268":2,"2684":1}}],["dio",{"2":{"2500":1}}],["dioded",{"2":{"2459":1}}],["diodes",{"0":{"2421":1,"2431":1},"2":{"2257":1,"2414":1,"2418":1,"2420":1,"2421":3,"2422":2,"2712":1,"2821":1,"2865":2}}],["diode",{"0":{"2712":1},"2":{"70":2,"111":1,"199":1,"559":2,"1400":1,"1404":1,"1654":1,"2265":2,"2273":3,"2416":4,"2420":1,"2421":12,"2424":2,"2427":2,"2459":4,"2712":1,"2713":1,"2721":1,"2819":1,"2865":1}}],["diameter",{"2":{"1968":3}}],["diagram",{"2":{"1675":1,"2694":1}}],["diagnose",{"2":{"1326":1}}],["dialog",{"2":{"1348":1}}],["die",{"2":{"1285":1}}],["dinterrupt",{"2":{"571":1}}],["ding",{"2":{"120":1,"1435":1}}],["diy",{"2":{"559":2,"2888":3}}],["dimensional",{"2":{"2296":1,"2865":1}}],["dimensions",{"2":{"1964":1,"2712":1,"2713":3}}],["dims",{"2":{"2178":1}}],["dimming",{"2":{"1535":1}}],["dimmer",{"2":{"492":1}}],["dim",{"2":{"492":1}}],["dictated",{"2":{"765":1,"1481":1}}],["dictionaries",{"0":{"525":1},"2":{"1437":1,"1616":1,"2862":2,"2864":1,"2871":1}}],["dictionary",{"0":{"1616":1},"2":{"196":1,"493":1,"495":1,"496":1,"1521":3,"1522":1,"2284":1,"2847":1,"2862":4,"2864":2,"2870":1,"2871":2}}],["dict",{"2":{"222":1,"668":1,"1523":1}}],["dilemma",{"2":{"176":2,"249":1,"311":2,"317":1}}],["dive",{"2":{"2428":1}}],["diverged",{"2":{"1340":1}}],["divergetm2",{"2":{"154":2}}],["diverge3",{"2":{"154":2}}],["dividing",{"0":{"336":1},"2":{"1249":1}}],["divided",{"2":{"1954":1,"2282":1}}],["divide",{"2":{"747":1,"756":1,"1951":1}}],["dividends",{"2":{"198":1}}],["divider",{"2":{"191":1,"741":6,"1732":1,"2851":5}}],["divine",{"2":{"236":1}}],["division",{"2":{"114":1}}],["divisors",{"2":{"1297":1,"1987":1}}],["divisor",{"0":{"1248":1},"1":{"1249":1,"1250":1},"2":{"114":1,"236":1,"723":2,"747":2,"756":2,"1249":3,"1262":1,"1296":2,"1297":1,"1953":1,"1961":2,"1962":1,"1968":2,"1973":2,"1976":2,"1987":6,"2041":2,"2281":2,"2749":11}}],["dig",{"2":{"1477":1,"2463":1,"2900":1}}],["digest",{"2":{"138":1}}],["digit",{"2":{"1743":3,"2237":1,"2239":1,"2241":1,"2243":1,"2496":1,"2875":2}}],["digital",{"2":{"145":1,"576":1,"584":1,"687":1,"1395":1,"1409":2,"1733":1,"2063":3,"2423":2,"2887":1}}],["digits",{"2":{"134":1,"397":1,"1522":1,"2459":1}}],["digitizers",{"2":{"190":1,"1633":1}}],["digitizer",{"0":{"100":1,"190":1,"1633":1,"1638":1,"1640":1,"1641":1,"1642":1,"1643":1,"1644":1,"1645":1,"1646":1,"1647":1},"1":{"1634":1,"1635":1,"1636":1,"1637":1,"1638":1,"1639":2,"1640":1,"1641":1,"1642":1,"1643":1,"1644":1,"1645":1,"1646":1,"1647":1,"1648":2},"2":{"100":2,"114":1,"190":3,"191":2,"1636":7,"1638":1,"1639":3,"1640":1,"1647":1}}],["dir=",{"2":{"2585":1,"2586":1,"2587":1}}],["dirty",{"2":{"114":1,"191":2,"199":1,"230":1,"1636":1,"1639":1,"1640":1,"1741":1,"1744":1,"1950":1,"1951":1,"1954":3,"1956":5,"2282":3,"2283":2,"2629":1,"2749":5}}],["dir",{"2":{"114":1}}],["dire",{"2":{"93":1}}],["directs",{"2":{"2559":1}}],["directives",{"2":{"510":2,"553":1}}],["directive",{"2":{"172":1}}],["directional",{"0":{"259":1},"2":{"236":1,"256":1}}],["directions",{"2":{"212":2,"222":1,"307":1,"1659":1,"1661":1,"1924":1,"1933":1,"2050":1}}],["direction",{"2":{"13":3,"70":2,"111":1,"191":1,"199":1,"222":2,"559":1,"617":1,"1400":1,"1404":1,"1658":5,"1659":2,"1934":1,"1951":1,"2044":1,"2159":2,"2174":2,"2416":1,"2420":1,"2525":2,"2712":2,"2713":1,"2721":1,"2865":1}}],["directpins",{"2":{"114":1}}],["directors",{"2":{"403":1}}],["directory",{"2":{"36":2,"50":1,"114":1,"132":1,"133":1,"134":3,"145":1,"160":2,"210":1,"236":1,"387":1,"427":9,"428":2,"430":1,"435":2,"438":2,"440":2,"443":2,"444":1,"446":1,"447":1,"448":1,"460":1,"461":1,"503":1,"511":1,"586":1,"614":1,"621":1,"1621":1,"1622":1,"1627":1,"1844":2,"2066":2,"2162":1,"2401":1,"2406":1,"2407":1,"2412":1,"2425":1,"2443":1,"2494":1,"2495":1,"2501":1,"2576":1,"2583":1,"2587":3,"2588":1,"2589":1,"2600":2,"2607":1,"2619":1,"2622":1,"2652":3,"2655":2,"2676":2,"2677":1,"2687":1,"2707":1,"2748":6}}],["directories",{"2":{"18":1,"113":1,"114":3,"2719":1,"2721":1}}],["directly",{"2":{"16":1,"50":1,"132":1,"134":1,"164":1,"236":1,"338":3,"397":1,"489":1,"509":1,"563":2,"579":1,"666":1,"690":1,"718":1,"738":1,"751":1,"1197":1,"1204":1,"1287":1,"1422":2,"1477":1,"1543":1,"1552":1,"1636":1,"1653":1,"1663":1,"1767":1,"1775":1,"1828":1,"1844":1,"1917":2,"1958":1,"1976":1,"1987":1,"2037":1,"2066":1,"2176":1,"2209":1,"2271":2,"2274":1,"2322":1,"2367":1,"2368":1,"2384":1,"2407":2,"2417":1,"2418":1,"2459":1,"2466":1,"2472":1,"2476":1,"2489":1,"2593":1,"2613":1,"2627":1,"2651":1,"2680":1,"2683":1,"2690":1,"2713":1,"2721":2,"2761":1,"2762":1,"2765":1,"2770":1}}],["direct",{"0":{"340":1,"1310":1,"2191":1,"2713":1},"2":{"3":1,"7":1,"15":1,"63":1,"199":2,"210":6,"335":1,"470":1,"559":1,"568":5,"637":3,"1308":9,"1309":3,"1310":3,"2271":2,"2560":1,"2651":1,"2713":3,"2721":2,"2734":1,"2865":2,"2929":1}}],["dip",{"0":{"105":1,"247":1,"1649":1,"1650":1,"1653":1,"1654":1,"2856":1},"1":{"1650":1,"1651":1,"1652":1,"1653":1,"1654":1},"2":{"105":13,"114":6,"191":1,"236":3,"247":9,"249":3,"328":1,"690":1,"1649":7,"1650":10,"1651":6,"1653":1,"1654":1,"2856":3,"2873":2}}],["di",{"2":{"70":1,"212":1,"222":3,"563":2,"701":2,"1282":2,"1291":1,"1294":3,"1295":1,"2172":2,"2848":1,"2876":1}}],["didn",{"2":{"279":1,"1440":1,"2308":1,"2675":1}}],["did",{"0":{"1328":1},"2":{"31":1,"125":1,"163":1,"185":1,"209":1,"602":1,"1493":2,"1531":1,"1791":4,"2427":1,"2577":1,"2580":1,"2609":1}}],["disk",{"2":{"2393":1,"2395":1,"2397":1}}],["dis",{"0":{"1607":1}}],["disputes",{"2":{"2895":1}}],["disposal",{"2":{"2176":1}}],["displacements",{"2":{"1633":1}}],["displaying",{"2":{"2269":2}}],["displayed",{"2":{"481":1,"488":1,"1284":1,"1285":1,"2757":1,"2776":1}}],["displays",{"0":{"1954":1,"2282":1},"1":{"1955":1},"2":{"138":2,"221":1,"232":2,"236":1,"248":2,"249":1,"435":1,"644":1,"686":1,"1706":2,"1849":1,"1950":1,"1951":1,"1954":7,"1955":1,"2072":1,"2280":1,"2293":1,"2410":2,"2435":1,"2721":2,"2746":1,"2747":1,"2749":26}}],["display",{"0":{"2749":1},"2":{"30":1,"31":3,"33":1,"34":2,"49":1,"63":1,"64":1,"82":1,"83":1,"92":1,"114":1,"123":1,"125":1,"138":1,"185":1,"222":1,"236":1,"435":1,"475":1,"643":1,"1321":1,"1322":1,"1323":1,"1529":1,"1635":1,"1693":8,"1698":1,"1700":1,"1702":1,"1704":1,"1705":1,"1707":2,"1709":1,"1711":1,"1717":1,"1718":1,"1719":1,"1720":1,"1721":1,"1724":2,"1726":2,"1730":1,"1845":1,"1929":1,"1949":3,"1950":1,"1951":3,"1952":2,"1953":5,"1954":23,"1955":2,"1956":13,"2068":1,"2269":2,"2276":1,"2279":4,"2280":4,"2281":5,"2282":8,"2283":14,"2291":2,"2428":1,"2446":1,"2449":1,"2503":1,"2602":2,"2710":1,"2722":1,"2746":1,"2747":5,"2749":13,"2750":46,"2751":1,"2752":2,"2754":15,"2757":1,"2775":1,"2780":1,"2844":1,"2862":1}}],["dispatched",{"2":{"2928":1}}],["dispatches",{"2":{"2928":1}}],["dispatchconsumerevent",{"2":{"1354":1}}],["dispatch",{"2":{"578":1,"2600":1,"2932":1}}],["disregarding",{"2":{"2896":1}}],["disregarded",{"2":{"338":3,"397":1,"1632":1}}],["disrupting",{"2":{"2181":1}}],["disruption",{"2":{"103":1}}],["distclean",{"2":{"2410":1}}],["distinguish",{"2":{"2310":1,"2835":1}}],["distinction",{"2":{"2557":1}}],["distinct",{"0":{"2908":1},"2":{"308":1,"1189":1,"1197":1,"1535":1,"1664":1,"2170":1}}],["distance",{"2":{"1965":9,"1976":2,"2064":1,"2424":1}}],["distances",{"2":{"1491":1,"1930":1,"1932":1}}],["distributions",{"2":{"2619":2,"2726":1,"2734":1}}],["distribution",{"2":{"2499":1,"2561":1,"2619":1,"2620":1,"2728":1,"2735":1,"2740":1}}],["distribute",{"2":{"583":1,"2728":1}}],["distributed",{"2":{"284":1,"1461":1,"2721":1,"2725":1,"2731":1,"2732":1}}],["distributable",{"2":{"284":1}}],["distros",{"2":{"1329":2,"2324":1}}],["distro",{"2":{"199":1}}],["disuse",{"2":{"285":1}}],["discretion",{"2":{"2722":1,"2896":1}}],["disclosure",{"2":{"2561":1,"2721":1}}],["disclose",{"2":{"2560":1}}],["disc",{"2":{"1673":1}}],["discusses",{"2":{"1409":1}}],["discussed",{"2":{"50":1,"617":1,"1427":1}}],["discuss",{"2":{"553":1,"2719":1}}],["discussion",{"2":{"265":1,"2892":1}}],["discarded",{"2":{"176":1,"743":1,"2748":1}}],["discovered",{"2":{"2440":1}}],["discovery",{"2":{"119":1,"191":1,"210":1,"328":1}}],["discouraged",{"2":{"338":1,"664":1,"2719":1}}],["disconnection",{"2":{"2268":1}}],["disconnect",{"2":{"160":1,"191":2,"1330":1,"2258":1}}],["disconnected",{"2":{"107":1,"134":1,"176":1,"2268":2,"2608":1}}],["discord",{"0":{"406":1},"2":{"49":1,"50":1,"201":1,"228":1,"276":1,"284":1,"399":1,"400":1,"401":1,"405":1,"406":1,"412":1,"542":1,"608":1,"610":1,"617":1,"642":1,"666":1,"670":1,"1339":1,"1628":1,"2428":1,"2465":1,"2560":1,"2605":1,"2610":1,"2706":1,"2718":1,"2719":2,"2722":1,"2890":1}}],["discharge",{"2":{"49":1}}],["disappearance",{"2":{"2896":1}}],["disappearing",{"2":{"26":1}}],["disadvantages",{"2":{"2474":1}}],["disallowed",{"2":{"2563":1}}],["disallows",{"2":{"2473":1}}],["disallow",{"2":{"1607":1}}],["disabling",{"0":{"1789":1,"2183":1,"2756":1},"2":{"28":1,"134":1,"266":1,"308":1,"543":1,"569":1,"1346":2,"1375":2,"2001":1,"2004":1,"2285":1,"2801":1,"2882":3,"2887":1,"2914":1}}],["disables",{"2":{"114":1,"297":1,"562":1,"572":1,"1407":1,"1506":1,"1587":2,"1610":1,"1615":1,"1656":1,"2001":1,"2002":1,"2748":4,"2882":3,"2915":1,"2917":1}}],["disabled",{"0":{"560":1},"2":{"50":1,"124":1,"134":2,"236":1,"249":1,"559":1,"617":2,"693":1,"760":2,"1369":1,"1389":1,"1407":1,"1479":1,"1487":1,"1492":2,"1495":1,"1520":1,"1527":3,"1583":1,"1604":1,"1610":1,"1617":1,"1672":2,"1675":1,"1974":1,"1994":2,"2001":1,"2004":1,"2159":1,"2185":1,"2219":1,"2251":1,"2302":1,"2324":1,"2491":4,"2747":1,"2875":1,"2915":1,"2917":1,"2927":1}}],["disable",{"0":{"25":1,"1556":1,"1568":1,"1855":1,"1856":1,"2004":1,"2081":1,"2082":1,"2193":1},"2":{"25":7,"50":1,"77":2,"114":6,"134":4,"143":1,"145":1,"176":1,"183":2,"191":2,"194":1,"195":1,"210":2,"222":2,"232":1,"236":3,"249":2,"297":1,"308":2,"328":1,"333":1,"391":1,"432":1,"492":1,"560":6,"562":1,"572":1,"649":1,"741":2,"765":1,"819":3,"821":1,"847":3,"849":1,"909":3,"911":1,"944":3,"946":1,"978":3,"980":1,"1012":3,"1014":1,"1046":3,"1048":1,"1235":3,"1237":1,"1245":1,"1369":1,"1373":1,"1375":2,"1402":1,"1407":2,"1412":1,"1465":1,"1484":2,"1527":1,"1530":1,"1588":1,"1589":1,"1600":2,"1607":2,"1615":1,"1655":1,"1678":1,"1679":1,"1773":1,"1789":1,"1929":1,"1951":2,"1981":1,"1987":3,"1989":1,"2001":3,"2004":2,"2006":2,"2039":1,"2041":2,"2075":2,"2174":1,"2177":1,"2179":2,"2182":1,"2183":1,"2193":2,"2196":1,"2210":2,"2214":1,"2216":1,"2217":4,"2253":2,"2268":2,"2281":1,"2287":1,"2291":1,"2324":1,"2370":1,"2411":4,"2495":1,"2509":1,"2519":2,"2548":2,"2600":1,"2659":1,"2669":1,"2676":2,"2748":2,"2847":1,"2851":2,"2864":1,"2870":1,"2871":1,"2872":2,"2875":1,"2882":2,"2883":2,"2884":1,"2887":2,"2905":1,"2916":2,"2917":3,"2923":1}}],["diffused",{"2":{"2171":1}}],["diffoled",{"2":{"332":1}}],["difficulty",{"0":{"1769":1},"1":{"1770":1,"1771":1}}],["difficulties",{"2":{"1602":1}}],["difficult",{"2":{"119":1,"123":1,"125":1,"185":1,"246":1,"538":1,"1327":1,"1789":1,"1929":1,"2417":1,"2418":2,"2421":1,"2422":1,"2723":1}}],["differs",{"2":{"2714":1,"2775":1}}],["difference",{"0":{"1781":1},"2":{"1375":1,"2689":1,"2724":1}}],["differences",{"0":{"1340":1},"2":{"2615":1}}],["differentiating",{"2":{"2289":1}}],["differentiates",{"2":{"649":1}}],["differentiate",{"2":{"525":1}}],["differently",{"2":{"1484":1,"1513":1,"1930":1,"1936":1,"1950":1,"2262":1,"2271":1,"2280":1,"2301":1,"2323":1,"2542":1,"2551":1,"2922":1}}],["different",{"0":{"2005":1,"2300":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"49":1,"191":1,"215":1,"413":1,"428":1,"538":1,"556":1,"566":1,"568":2,"613":2,"617":3,"624":1,"649":1,"683":2,"692":1,"698":2,"751":1,"757":1,"1283":1,"1284":1,"1308":1,"1324":1,"1368":1,"1392":1,"1410":1,"1415":1,"1420":2,"1427":2,"1436":1,"1444":1,"1459":5,"1466":1,"1479":1,"1483":1,"1484":1,"1487":1,"1492":1,"1497":1,"1532":1,"1535":1,"1584":1,"1586":1,"1596":1,"1613":1,"1660":1,"1677":1,"1679":1,"1760":3,"1778":1,"1781":1,"1924":1,"1928":1,"1931":1,"1936":1,"1945":1,"1950":1,"1962":2,"1976":2,"2178":1,"2180":1,"2182":1,"2199":1,"2222":1,"2252":1,"2254":1,"2271":5,"2280":1,"2288":1,"2289":1,"2375":2,"2407":1,"2423":1,"2428":2,"2432":1,"2475":1,"2490":1,"2557":1,"2560":1,"2582":2,"2605":2,"2655":1,"2666":1,"2671":1,"2719":2,"2721":2,"2749":2,"2758":1,"2764":1,"2766":2,"2879":1,"2887":1,"2906":1,"2912":1,"2927":1,"2929":1,"2934":2,"2937":2}}],["differ",{"2":{"69":1,"713":1,"1968":1,"2303":1,"2490":1,"2627":1}}],["diff",{"2":{"25":1,"160":1,"294":1,"348":1,"457":1,"613":1,"2179":1,"2781":2}}],["dollars",{"2":{"2837":1}}],["dollar",{"2":{"2527":1,"2547":1}}],["dolor",{"2":{"357":1}}],["dor1",{"2":{"2036":1}}],["doe",{"2":{"1517":3,"1599":2}}],["doesnt",{"2":{"191":1,"572":1}}],["doesn",{"0":{"1345":1,"1356":1,"1363":1,"1366":1,"1367":1,"2730":1},"1":{"2731":1,"2732":1},"2":{"114":1,"408":1,"427":1,"572":1,"597":1,"617":1,"678":1,"1315":1,"1346":1,"1361":1,"1363":2,"1378":1,"1421":1,"1464":1,"1466":1,"1487":1,"1519":1,"1523":1,"1603":1,"1606":1,"1954":1,"1980":1,"2204":1,"2286":1,"2410":1,"2411":1,"2422":1,"2427":1,"2434":1,"2455":1,"2609":1,"2610":1,"2676":1,"2703":1,"2930":2,"2932":1,"2937":1}}],["does",{"0":{"619":1,"1317":1,"1492":1,"1519":1,"2470":1,"2471":1},"2":{"23":1,"28":1,"50":1,"134":1,"236":1,"276":1,"320":1,"341":1,"358":1,"360":1,"362":1,"427":1,"459":1,"490":1,"493":1,"494":1,"503":1,"519":1,"559":1,"567":1,"584":1,"597":1,"607":1,"613":3,"624":1,"629":1,"641":1,"649":1,"654":1,"682":1,"704":1,"711":1,"720":1,"732":1,"751":1,"759":1,"764":1,"810":1,"814":1,"818":1,"820":1,"838":1,"842":1,"846":1,"848":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1200":1,"1201":1,"1226":1,"1230":1,"1234":1,"1236":1,"1263":1,"1303":1,"1359":1,"1362":1,"1410":1,"1421":1,"1422":2,"1438":1,"1442":1,"1478":2,"1491":1,"1493":1,"1504":1,"1512":1,"1587":2,"1616":1,"1632":1,"1660":1,"1733":1,"1759":1,"1781":1,"1828":1,"1956":2,"2050":1,"2165":1,"2205":1,"2263":1,"2294":1,"2310":1,"2312":1,"2322":1,"2367":1,"2404":1,"2420":1,"2421":1,"2453":1,"2469":1,"2473":1,"2474":2,"2496":1,"2499":1,"2503":1,"2504":1,"2557":1,"2560":1,"2562":1,"2592":2,"2609":1,"2612":2,"2655":1,"2684":1,"2685":2,"2688":1,"2705":1,"2710":1,"2719":2,"2721":2,"2745":1,"2762":1,"2776":1,"2778":1,"2875":1,"2895":1,"2906":1,"2923":1,"2926":1,"2930":1}}],["domain",{"2":{"335":1}}],["doing",{"2":{"284":1,"360":1,"492":1,"685":1,"1324":1,"1353":1,"1422":2,"1425":1,"1479":1,"1603":1,"2410":1,"2420":1,"2659":1,"2929":1,"2940":1}}],["doio",{"2":{"176":1,"191":1,"210":1,"249":1}}],["dogtag",{"2":{"222":1,"277":1,"447":2}}],["dozen0",{"2":{"154":2}}],["dozens",{"2":{"112":1}}],["doxygen",{"2":{"145":1,"222":1,"2687":1}}],["doubt",{"2":{"713":1,"2573":1}}],["doubled",{"2":{"692":1,"2156":1,"2310":1}}],["double",{"0":{"2305":1,"2700":1},"2":{"137":1,"203":2,"391":1,"518":1,"605":1,"684":1,"685":1,"1417":1,"1588":4,"2156":1,"2262":2,"2302":3,"2305":1,"2308":1,"2310":22,"2311":4,"2312":5,"2393":2,"2395":2,"2397":3,"2423":1,"2428":1,"2496":1,"2527":1,"2547":1,"2566":1,"2652":1,"2700":7,"2702":1,"2854":1,"2882":1}}],["dout",{"2":{"45":1}}],["dosa40rgb",{"2":{"134":1}}],["doc",{"2":{"199":1,"1350":1}}],["docker",{"0":{"2399":1},"1":{"2400":1,"2401":1,"2402":1,"2403":1},"2":{"114":1,"160":1,"2399":1,"2400":2,"2401":11,"2403":2}}],["docstring",{"0":{"520":1,"521":1,"522":1},"2":{"519":2}}],["docstrings",{"0":{"519":1},"1":{"520":1,"521":1,"522":1},"2":{"512":1,"519":2}}],["docs",{"0":{"458":1,"459":1},"2":{"114":3,"145":1,"160":1,"176":4,"182":1,"191":4,"199":2,"210":1,"222":1,"236":3,"285":1,"294":1,"328":3,"335":1,"397":1,"406":1,"458":3,"459":3,"614":3,"615":1,"617":1,"664":1,"678":3,"683":1,"1317":1,"1394":1,"2406":1,"2558":1,"2635":1,"2707":3,"2721":1}}],["doctor",{"0":{"433":1,"454":1},"2":{"114":3,"176":1,"199":3,"328":1,"333":1,"433":4,"454":1,"2609":1}}],["documenting",{"0":{"678":1},"2":{"2502":1}}],["documented",{"2":{"201":1,"312":1,"1531":1,"2383":1,"2434":1,"2454":1,"2584":1,"2739":1,"2744":1,"2833":1}}],["documents",{"2":{"32":1,"114":1,"398":1,"679":1,"1385":1,"2502":1,"2550":1,"2899":2,"2900":2,"2926":1}}],["documentation",{"0":{"22":1,"334":1,"473":1,"614":1,"615":1,"630":1,"634":1,"636":1,"637":1,"640":1,"643":1,"648":1,"652":1,"672":1,"679":1,"1408":1,"1426":1},"1":{"335":1,"336":1,"337":1,"338":1,"339":1,"340":1,"341":1,"342":1,"343":1,"344":1,"345":1,"346":1,"347":1,"348":1,"349":1,"350":1,"351":1,"352":1,"353":1,"354":1,"355":1,"356":1,"357":1,"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"615":1,"680":1,"681":1},"2":{"13":1,"22":1,"93":1,"99":1,"118":1,"123":1,"124":1,"134":1,"137":1,"138":1,"149":1,"160":1,"172":1,"174":1,"182":1,"195":1,"196":1,"210":2,"213":1,"228":1,"229":1,"232":1,"245":1,"247":1,"277":1,"288":1,"289":1,"297":1,"298":1,"304":1,"306":1,"315":1,"316":1,"320":1,"331":1,"334":1,"429":1,"459":1,"464":1,"465":1,"466":1,"503":1,"614":5,"668":1,"672":1,"673":1,"678":2,"698":1,"752":1,"1342":1,"1376":1,"1574":1,"1760":1,"1839":1,"2009":1,"2050":1,"2059":1,"2255":1,"2269":1,"2375":1,"2419":1,"2423":1,"2428":1,"2459":1,"2461":1,"2463":1,"2465":1,"2676":1,"2721":1,"2751":1,"2806":1,"2818":1,"2822":1,"2825":1,"2834":1,"2836":1,"2839":1,"2840":1,"2935":1,"2936":1}}],["document",{"0":{"411":1},"2":{"0":1,"76":1,"93":1,"176":1,"199":1,"362":1,"393":1,"397":1,"405":1,"424":1,"469":1,"484":1,"519":1,"539":1,"617":2,"672":1,"1422":1,"1461":1,"1627":1,"2293":1,"2583":1,"2626":2,"2628":2,"2646":1,"2657":1,"2666":1,"2718":1,"2719":2,"2726":1,"2776":2,"2897":1,"2926":1,"2929":1,"2930":1}}],["dots",{"2":{"542":1,"1691":2}}],["dotty",{"2":{"431":1,"668":1}}],["dotted",{"2":{"338":1}}],["dot",{"0":{"111":1},"2":{"111":1,"369":1,"587":2,"668":1,"1504":1,"1511":5,"1686":1,"2162":1,"2503":2,"2537":1,"2543":1,"2556":1,"2915":1,"2916":1}}],["downstream",{"2":{"2721":1}}],["downside",{"2":{"2704":1}}],["downward",{"2":{"1983":2}}],["downloadable",{"2":{"2561":1}}],["downloads",{"2":{"446":1,"447":1,"448":1,"579":2,"582":1,"2425":1,"2632":1}}],["downloaded",{"2":{"387":1,"2499":1,"2501":1,"2600":1,"2676":2}}],["download",{"0":{"364":1,"2651":1},"2":{"143":1,"359":1,"364":1,"365":1,"368":1,"385":1,"584":2,"598":1,"599":1,"1315":2,"2398":1,"2425":1,"2590":1,"2599":1,"2602":1,"2651":1,"2670":1,"2672":1,"2675":1}}],["down",{"0":{"647":1,"1442":1,"2814":1},"2":{"90":2,"119":3,"120":1,"160":1,"210":1,"220":1,"236":1,"255":1,"266":1,"328":1,"369":1,"587":4,"594":1,"628":1,"646":1,"647":1,"648":2,"680":1,"681":1,"683":1,"746":1,"758":1,"1348":1,"1359":1,"1386":1,"1410":6,"1413":1,"1416":1,"1419":1,"1421":1,"1435":1,"1438":6,"1441":1,"1442":3,"1448":1,"1484":2,"1487":4,"1489":2,"1492":2,"1493":1,"1497":1,"1515":3,"1516":3,"1517":1,"1527":2,"1537":2,"1583":1,"1606":2,"1618":1,"1632":3,"1662":1,"1666":1,"1667":1,"1674":2,"1679":1,"1688":2,"1756":2,"1758":1,"1761":2,"1764":2,"1770":6,"1773":3,"1775":3,"1776":6,"1778":9,"1779":6,"1780":4,"1781":1,"1842":2,"1843":7,"1919":8,"1927":5,"1929":1,"1955":1,"1956":1,"1962":1,"1978":1,"1987":1,"2002":2,"2006":1,"2050":1,"2062":4,"2063":7,"2069":1,"2159":10,"2174":4,"2211":1,"2216":2,"2221":1,"2265":1,"2283":1,"2293":4,"2302":1,"2310":1,"2312":1,"2323":1,"2377":1,"2384":1,"2411":1,"2427":1,"2451":1,"2456":1,"2459":2,"2503":14,"2505":2,"2506":3,"2508":2,"2514":1,"2518":2,"2520":8,"2521":5,"2524":2,"2525":4,"2526":4,"2538":1,"2541":6,"2542":5,"2543":2,"2546":1,"2552":1,"2556":2,"2565":1,"2566":1,"2569":1,"2578":1,"2599":1,"2605":4,"2643":1,"2644":2,"2660":1,"2750":5,"2757":1,"2814":1,"2824":1,"2827":1,"2832":1,"2835":1,"2882":1,"2887":2,"2905":14,"2906":5,"2908":4,"2909":6,"2910":4,"2912":8,"2913":2,"2914":3,"2918":5,"2942":2}}],["downbubble",{"2":{"43":2}}],["dongles",{"2":{"2501":1}}],["dongle",{"2":{"2387":2,"2498":1}}],["donating",{"2":{"608":1}}],["done",{"2":{"104":1,"114":1,"125":1,"127":2,"182":1,"185":2,"224":1,"387":1,"403":1,"414":1,"539":1,"599":1,"603":1,"654":1,"671":1,"684":1,"743":1,"757":1,"1197":1,"1245":1,"1311":1,"1375":1,"1378":1,"1387":1,"1407":1,"1425":1,"1466":1,"1496":2,"1531":1,"1532":1,"1930":1,"1939":1,"1955":1,"1983":1,"2005":1,"2273":1,"2288":1,"2376":2,"2381":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2398":8,"2420":1,"2423":1,"2425":1,"2427":1,"2428":1,"2457":2,"2472":1,"2495":1,"2575":1,"2588":1,"2611":1,"2622":1,"2631":1,"2632":1,"2675":1,"2676":1,"2721":1,"2723":2,"2724":1,"2749":22,"2750":1,"2883":1,"2888":1,"2930":1,"2937":1}}],["don",{"0":{"608":1,"1317":1,"1333":1},"2":{"31":1,"34":1,"119":1,"160":2,"166":1,"191":1,"198":1,"199":1,"210":1,"232":1,"277":2,"373":1,"453":1,"487":1,"510":1,"511":1,"512":1,"514":1,"536":1,"608":1,"617":1,"1205":1,"1245":1,"1310":1,"1316":1,"1337":1,"1340":1,"1351":2,"1362":1,"1406":1,"1409":1,"1448":1,"1464":2,"1466":1,"1484":1,"1485":1,"1511":1,"1519":1,"1531":1,"1583":1,"1603":1,"1662":1,"1760":1,"1979":1,"1992":1,"2273":1,"2290":1,"2313":1,"2403":1,"2420":1,"2459":1,"2554":2,"2559":1,"2572":1,"2579":1,"2586":1,"2608":1,"2609":1,"2621":1,"2651":1,"2671":1,"2694":1,"2707":1,"2710":1,"2775":1,"2787":1,"2883":3,"2887":1,"2900":1,"2905":2,"2936":1,"2942":2}}],["do",{"0":{"409":2,"603":2,"611":1,"1361":1,"1490":1,"1494":1,"1520":1,"1588":1,"1823":1,"2157":1,"2300":1,"2924":1},"1":{"410":2,"411":2,"412":2,"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"1589":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"14":1,"92":2,"132":1,"176":1,"194":1,"199":2,"222":1,"231":3,"232":2,"241":1,"253":1,"268":1,"270":1,"281":1,"284":1,"303":2,"317":1,"374":1,"409":1,"424":1,"427":2,"438":1,"492":1,"497":2,"503":2,"510":4,"511":1,"512":3,"514":1,"516":1,"517":2,"524":1,"526":2,"528":1,"531":1,"538":1,"542":2,"544":1,"573":1,"595":1,"608":2,"613":1,"616":2,"617":4,"619":1,"624":1,"629":2,"631":1,"644":2,"654":1,"680":1,"682":1,"683":1,"692":1,"715":1,"750":1,"763":1,"794":1,"920":1,"1091":1,"1125":1,"1205":1,"1263":1,"1317":2,"1345":2,"1362":1,"1375":1,"1377":3,"1406":1,"1407":2,"1409":1,"1419":1,"1421":1,"1434":2,"1438":1,"1440":1,"1441":1,"1456":1,"1464":1,"1465":2,"1466":2,"1471":1,"1474":1,"1477":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1523":1,"1583":1,"1585":1,"1586":1,"1587":1,"1595":2,"1599":1,"1603":1,"1611":1,"1616":1,"1622":1,"1655":1,"1662":1,"1770":1,"1773":1,"1782":1,"1785":1,"1788":1,"1827":1,"1828":1,"1831":1,"1840":1,"1844":1,"1845":1,"1913":1,"1933":1,"1942":1,"1950":1,"1955":1,"1980":1,"1992":1,"2006":1,"2034":3,"2036":4,"2060":1,"2066":1,"2068":1,"2160":1,"2181":2,"2199":1,"2249":1,"2263":1,"2264":1,"2265":1,"2266":1,"2272":1,"2280":1,"2294":1,"2301":2,"2302":1,"2303":1,"2310":1,"2312":1,"2369":1,"2377":1,"2384":1,"2388":1,"2407":2,"2411":2,"2418":1,"2434":1,"2451":1,"2453":1,"2454":1,"2459":1,"2470":1,"2473":1,"2475":2,"2478":1,"2480":1,"2482":1,"2483":1,"2495":1,"2496":1,"2499":1,"2545":1,"2561":1,"2572":1,"2576":1,"2577":1,"2578":1,"2580":1,"2582":2,"2587":1,"2596":1,"2600":1,"2605":1,"2609":1,"2622":1,"2629":1,"2630":2,"2631":1,"2632":1,"2634":1,"2645":1,"2649":1,"2652":2,"2653":1,"2670":1,"2675":1,"2676":1,"2678":1,"2679":1,"2680":1,"2688":1,"2703":1,"2710":1,"2711":1,"2720":1,"2721":4,"2723":1,"2750":2,"2757":1,"2784":1,"2788":3,"2789":2,"2791":1,"2793":2,"2840":1,"2844":1,"2863":1,"2877":1,"2879":2,"2881":1,"2882":1,"2883":1,"2905":3,"2912":2,"2913":2,"2921":1,"2924":1,"2928":2,"2937":1,"2940":1,"2942":1}}],["darmoshark",{"2":{"2560":1}}],["dave",{"2":{"2459":1}}],["dazzle",{"2":{"2156":1}}],["damage",{"2":{"1675":1,"2420":1,"2683":1}}],["damnit",{"2":{"346":1}}],["daemon",{"2":{"1313":1}}],["daunting",{"2":{"553":1}}],["daughterboard",{"2":{"311":1}}],["dashes",{"2":{"517":1,"518":1}}],["dashed",{"2":{"338":1}}],["daskeyboard4",{"2":{"308":1}}],["daskygit",{"2":{"175":1}}],["days",{"0":{"402":1},"2":{"401":1,"402":2,"406":1}}],["day",{"0":{"403":1},"2":{"222":1,"396":1,"399":1,"400":1,"401":2,"406":4,"536":1,"2560":1}}],["dac2",{"2":{"714":1}}],["dac1",{"2":{"714":5,"715":4}}],["dacs",{"2":{"714":1,"715":1}}],["dac",{"0":{"714":1,"715":1,"716":1,"1471":1,"1474":1},"1":{"717":1,"1472":1,"1473":1},"2":{"210":3,"236":2,"249":1,"713":2,"714":6,"715":7,"716":13,"717":6,"720":2,"1471":7,"1472":1,"1474":9,"1475":2,"1478":1,"1482":4,"2682":1,"2849":2}}],["dactyl",{"2":{"114":3,"191":1,"205":4,"210":14,"222":1,"226":1,"236":2,"277":1,"437":2,"2418":2,"2419":1}}],["daily",{"2":{"2669":1}}],["daily60",{"2":{"222":1}}],["dailycraft",{"2":{"154":7}}],["daisy",{"2":{"102":2}}],["dawn60",{"0":{"58":1},"2":{"58":3}}],["danish",{"2":{"2880":3}}],["danielggordon",{"2":{"2310":1}}],["danger",{"2":{"346":1,"2614":1}}],["dangerous",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"346":1,"393":2}}],["dango40",{"2":{"222":1}}],["dances",{"2":{"191":1,"2302":1,"2308":1,"2309":1,"2310":2,"2312":2}}],["dance",{"0":{"323":1,"2300":1,"2302":1,"2307":1,"2310":1,"2311":1,"2312":1,"2836":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"49":4,"176":3,"191":1,"199":1,"210":1,"249":1,"277":1,"323":7,"324":5,"325":8,"328":1,"560":1,"590":2,"1417":1,"1421":1,"1588":1,"1597":1,"1788":1,"2301":2,"2302":30,"2303":25,"2305":7,"2306":1,"2307":8,"2308":15,"2309":26,"2310":27,"2311":15,"2312":31,"2566":1,"2644":1,"2721":1,"2836":1,"2900":1,"2933":2,"2941":1}}],["datastructure",{"2":{"2553":1,"2929":2}}],["datasheets",{"2":{"763":1,"1197":1}}],["datasheet",{"2":{"160":1,"692":1,"695":1,"696":1,"721":1,"726":1,"746":3,"747":1,"751":1,"756":5,"759":1,"765":1,"797":1,"826":1,"852":1,"857":1,"860":1,"884":1,"890":1,"916":1,"922":1,"925":1,"951":1,"956":1,"959":1,"985":1,"990":1,"993":1,"1019":1,"1024":1,"1027":1,"1053":1,"1058":1,"1061":1,"1087":1,"1092":1,"1095":1,"1121":1,"1126":1,"1129":1,"1155":1,"1160":1,"1163":1,"1195":1,"1198":1,"1211":1,"1216":1,"1245":1,"1266":1,"1294":1,"1550":1,"1678":1,"1679":2,"1680":1,"1707":1,"1724":1,"2476":1,"2694":1,"2695":1}}],["datatypes",{"2":{"203":2,"2750":1}}],["datablock",{"2":{"191":1}}],["database",{"0":{"132":1,"302":1,"468":1},"2":{"132":3,"134":1,"249":1,"308":1,"427":3,"468":1,"2675":1}}],["data",{"0":{"109":1,"169":1,"184":1,"323":1,"662":1,"770":1,"773":1,"776":1,"779":2,"782":1,"785":1,"788":1,"791":1,"808":1,"836":1,"866":1,"896":1,"931":1,"965":1,"999":1,"1033":1,"1067":1,"1101":1,"1135":1,"1169":1,"1222":1,"1251":1,"1256":1,"1259":1,"1270":1,"1274":1,"1276":1,"1531":1,"1631":1,"1713":1,"1715":1,"1719":1,"1726":2,"2050":1,"2051":1,"2054":1,"2056":1,"2269":1,"2270":1,"2764":1,"2765":1,"2773":1},"1":{"110":1,"111":1,"112":1,"170":1,"663":1,"664":1,"665":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":2,"781":2,"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1,"809":1,"837":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1223":1,"1252":1,"1253":1,"1257":1,"1258":1,"1260":1,"1261":1,"1271":1,"1275":1,"1277":1,"1532":1,"1533":1,"1714":1,"1716":1,"1720":1,"1727":2,"2055":1,"2057":1},"2":{"45":2,"76":2,"107":4,"109":1,"114":3,"145":3,"160":2,"169":1,"176":6,"184":1,"191":3,"199":13,"202":1,"210":13,"212":2,"222":29,"236":7,"249":2,"251":1,"262":2,"266":68,"277":3,"285":1,"308":1,"312":1,"324":1,"325":1,"328":2,"333":1,"338":2,"370":2,"390":1,"431":2,"446":1,"447":1,"461":1,"491":1,"553":2,"568":3,"576":1,"623":1,"662":1,"664":2,"666":1,"667":2,"669":2,"699":1,"713":2,"718":2,"745":1,"765":1,"771":3,"773":1,"774":3,"777":2,"780":5,"783":3,"786":3,"789":2,"792":2,"809":1,"837":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1191":1,"1194":1,"1197":3,"1223":1,"1252":1,"1257":3,"1260":2,"1271":1,"1273":1,"1275":3,"1277":2,"1278":2,"1279":1,"1280":1,"1282":1,"1283":1,"1285":1,"1293":1,"1362":1,"1406":1,"1408":1,"1477":1,"1519":2,"1521":3,"1522":1,"1529":1,"1531":2,"1532":4,"1631":1,"1675":1,"1693":1,"1696":1,"1714":2,"1716":2,"1720":2,"1726":2,"1727":2,"1829":1,"1937":1,"1942":2,"1955":3,"1956":22,"1960":1,"1968":2,"1972":1,"1975":1,"1976":1,"1978":3,"1980":4,"1981":7,"1982":3,"2031":2,"2033":1,"2034":3,"2035":2,"2036":6,"2037":2,"2039":2,"2050":3,"2051":2,"2052":8,"2055":2,"2057":2,"2073":2,"2074":1,"2171":1,"2172":3,"2184":1,"2201":1,"2268":3,"2270":17,"2271":1,"2281":1,"2283":11,"2291":1,"2307":1,"2308":3,"2309":6,"2310":4,"2311":4,"2312":4,"2368":1,"2372":1,"2424":1,"2447":1,"2459":4,"2495":3,"2549":1,"2550":1,"2632":1,"2709":1,"2715":2,"2721":3,"2747":1,"2748":2,"2749":2,"2750":5,"2758":3,"2762":1,"2764":2,"2766":3,"2767":1,"2770":1,"2773":6,"2776":7,"2844":2,"2848":2,"2862":2,"2868":2}}],["dates",{"0":{"396":1},"2":{"406":1}}],["date",{"2":{"6":2,"10":1,"142":1,"403":1,"405":1,"406":10,"613":1,"2274":1,"2619":1,"2631":1,"2651":1,"2685":1,"2688":1,"2719":1}}],["deutsche",{"2":{"2831":1}}],["derivatives",{"2":{"2619":3,"2621":1}}],["derive",{"2":{"747":1,"756":1,"1297":1}}],["derived",{"2":{"379":1,"2492":1,"2879":1}}],["dereferencing",{"2":{"1949":1,"2279":1}}],["deghost",{"2":{"886":1,"888":1}}],["degradation",{"2":{"2747":1}}],["degrade",{"2":{"1951":1}}],["degrading",{"2":{"220":1}}],["degree",{"0":{"1955":1},"2":{"1656":1,"1658":1,"1954":2,"1955":3,"1966":3}}],["degrees",{"2":{"31":1,"34":1,"1950":1,"1976":1,"1978":3,"1980":3,"2044":1,"2280":1,"2285":1,"2750":1,"2771":1,"2862":1}}],["denied",{"2":{"2562":1}}],["denote",{"2":{"2552":1,"2770":2}}],["denoted",{"2":{"1624":1,"1956":1,"2283":1,"2758":1,"2766":1}}],["denotes",{"2":{"751":1,"752":1,"753":1,"800":1,"855":1,"887":1,"919":1,"920":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1091":1,"1124":1,"1125":1,"1158":1,"1214":1,"1283":1,"2769":1,"2770":1,"2857":1}}],["density",{"0":{"1210":1},"2":{"114":1,"2501":2}}],["deeper",{"2":{"2303":1}}],["deeply",{"2":{"668":1}}],["deep",{"2":{"553":1,"556":2,"2443":1}}],["deemen17",{"2":{"300":2,"308":1}}],["dedicate",{"2":{"2162":1}}],["dedicates",{"2":{"1308":3}}],["dedicated",{"2":{"550":1,"743":1,"1190":1,"1339":1,"1538":1,"1587":1,"1657":1,"1665":1,"1763":1,"1773":2,"1844":1,"2066":1,"2174":1}}],["dedupe",{"2":{"236":1}}],["de60",{"2":{"300":1,"308":1}}],["de60fs",{"2":{"300":1}}],["demand",{"2":{"2630":2}}],["demanding",{"2":{"2560":1}}],["demo",{"2":{"2180":1,"2271":1}}],["demonstrate",{"2":{"2562":1,"2926":1}}],["demonstrates",{"2":{"2173":1}}],["demonstrated",{"2":{"312":1}}],["demonstration",{"2":{"2052":1,"2176":1}}],["demiurge",{"2":{"222":1}}],["demultiplexer",{"2":{"160":1}}],["dekunukem",{"2":{"210":1}}],["dead",{"2":{"2643":1,"2827":1,"2879":1}}],["deadline",{"2":{"406":1,"568":1}}],["deadlock",{"2":{"191":2,"199":1}}],["deadlocks",{"2":{"176":1}}],["deaf",{"2":{"2284":1}}],["deactivating",{"2":{"2005":1,"2854":1}}],["deactivation",{"0":{"1779":1},"2":{"1773":1,"1993":2,"2001":1,"2002":1}}],["deactivates",{"2":{"1421":1,"1594":1,"1595":1,"1773":1,"1779":1,"2854":1}}],["deactivate",{"2":{"1418":1,"1594":1,"1776":1,"1992":2,"2216":1,"2217":4,"2287":1}}],["deactivated",{"2":{"1416":1,"1479":1,"1480":2,"1775":2,"1776":1,"1779":1,"1992":1}}],["deassert",{"2":{"1262":1,"1642":1,"1644":1,"1646":1}}],["deals",{"2":{"1345":1,"2711":1}}],["deal",{"2":{"1334":1,"1979":1,"2463":1}}],["dealt",{"2":{"644":1}}],["dealing",{"2":{"11":1,"2415":1}}],["de",{"0":{"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1},"2":{"134":1,"199":4,"266":1,"317":1,"888":1,"1416":2,"2161":1,"2503":1,"2880":2}}],["detrimental",{"2":{"276":1}}],["detach",{"0":{"2755":1},"2":{"266":1,"2755":2}}],["detailing",{"2":{"2625":1}}],["detail",{"2":{"176":2,"411":1,"613":1,"1356":1,"1777":1,"2303":1,"2410":1,"2502":1,"2934":1}}],["details",{"0":{"356":1,"502":1,"503":1,"504":1,"2303":1,"2558":1},"2":{"163":1,"195":1,"224":1,"228":1,"229":1,"232":1,"346":2,"358":1,"363":2,"392":1,"428":1,"493":1,"503":1,"527":1,"553":1,"562":3,"683":1,"685":1,"763":1,"1309":1,"1316":1,"1318":1,"1395":1,"1402":1,"1410":1,"1416":1,"1421":1,"1422":1,"1461":1,"1470":1,"1483":1,"1487":1,"1497":1,"1531":1,"1588":1,"1655":1,"1691":1,"1762":1,"1767":1,"1829":1,"2073":1,"2074":1,"2166":1,"2181":1,"2184":1,"2306":1,"2319":1,"2410":1,"2411":2,"2448":1,"2467":1,"2534":1,"2558":1,"2602":1,"2609":1,"2716":1,"2725":1,"2903":1}}],["detailed",{"0":{"71":1,"576":1,"2410":1},"1":{"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"577":1,"578":1,"579":1,"580":1,"581":1,"582":1,"583":1,"584":1,"2411":1,"2412":1},"2":{"14":1,"70":1,"550":1,"1315":1,"1353":1,"1415":1,"1932":1,"2255":1,"2274":1,"2313":1,"2447":1,"2626":1,"2628":1,"2717":1,"2920":1}}],["detent",{"2":{"1659":1,"1664":2}}],["determining",{"2":{"1421":1,"2288":1,"2873":1,"2919":1}}],["deterministically",{"2":{"230":1}}],["determines",{"2":{"427":1,"1249":1,"2266":1,"2873":1,"2903":1}}],["determined",{"2":{"409":1,"487":1,"566":2,"567":2,"751":1,"2551":1}}],["determine",{"2":{"114":1,"119":1,"142":1,"541":1,"566":1,"567":1,"654":1,"747":1,"751":1,"765":1,"1245":1,"1266":1,"1278":1,"1486":1,"1504":1,"1550":1,"2263":1,"2264":1,"2265":2,"2311":2,"2312":1,"2559":1,"2687":2,"2722":1,"2873":1,"2932":1}}],["detects",{"2":{"2459":1}}],["detected",{"0":{"1314":1},"2":{"222":1,"266":1,"308":1,"562":1,"751":1,"1375":1,"1632":3,"1937":2,"1938":8,"1942":1,"2268":1,"2288":1,"2401":1,"2609":1,"2676":1,"2873":2}}],["detecting",{"2":{"132":1,"568":2,"2271":2,"2272":1,"2380":1,"2572":2,"2672":1,"2757":1,"2760":1,"2767":1,"2768":1,"2928":1,"2929":1}}],["detection",{"0":{"1936":1,"1939":1,"2563":1,"2932":1},"1":{"1937":1,"1938":1,"1939":1,"1940":1,"1941":1,"1942":1,"1943":1},"2":{"114":1,"175":1,"199":4,"249":3,"285":2,"308":1,"751":1,"1393":1,"1394":1,"1526":1,"1937":1,"1939":1,"1940":7,"1941":5,"1942":3,"1980":1,"2271":1,"2272":3,"2273":2,"2929":1}}],["detect",{"2":{"112":1,"199":1,"285":1,"293":1,"305":1,"314":1,"434":1,"568":6,"683":1,"1377":1,"1378":1,"1393":1,"1529":1,"1937":1,"2271":5,"2272":3,"2273":2,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2459":1,"2676":1,"2721":1,"2821":1,"2873":2,"2942":1}}],["debating",{"2":{"2560":1}}],["debt",{"2":{"187":1,"198":1,"201":1,"212":1,"224":1,"238":1}}],["debian",{"2":{"114":3,"2594":1,"2619":1,"2621":3}}],["debouncing",{"0":{"1414":1},"2":{"94":1,"210":1,"572":1,"623":2,"1409":3,"1410":12,"1413":6,"1414":2,"1939":2,"1974":1,"2411":1}}],["debouncer",{"2":{"160":1}}],["debounce",{"0":{"1410":1,"1411":1,"1412":1,"1413":1},"1":{"1412":1,"1413":1,"1414":1},"2":{"70":2,"111":1,"112":1,"114":3,"134":1,"160":1,"176":1,"199":3,"210":2,"236":1,"308":1,"328":2,"559":1,"572":1,"623":4,"1409":3,"1410":6,"1411":1,"1412":3,"1413":10,"1414":4,"1585":1,"1940":2,"1970":1,"1971":1,"1974":1,"1996":1,"2001":4,"2007":1,"2411":1,"2721":3,"2847":2,"2865":2,"2901":1}}],["debugged",{"2":{"2775":1}}],["debuggers",{"2":{"392":1}}],["debugger",{"0":{"383":1,"390":1,"391":1,"392":1},"2":{"391":1,"1422":2,"2676":2,"2939":1,"2942":1}}],["debugging",{"0":{"378":1,"389":1,"1318":1,"1319":1,"1320":1,"1321":1,"1322":1,"1323":1,"2640":1,"2642":1,"2676":1,"2939":1},"1":{"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":2,"391":2,"392":2,"1319":1,"1320":1,"1321":2,"1322":2,"1323":2,"1324":1,"1325":1,"1326":1,"1327":1,"1328":1,"1329":1,"1330":1,"2641":1,"2642":1},"2":{"82":1,"114":1,"288":1,"378":1,"384":1,"387":1,"391":1,"392":1,"432":1,"559":1,"560":2,"1206":1,"1325":2,"1330":1,"1369":1,"1619":4,"1991":1,"2411":1,"2646":1,"2666":1,"2671":1,"2676":4,"2684":1,"2747":2,"2777":1,"2812":1,"2892":1,"2919":1}}],["debug=1",{"2":{"249":1,"2939":2}}],["debug",{"0":{"1324":1,"1325":1,"1942":1,"2045":1},"1":{"1326":1,"1327":1,"1328":1},"2":{"24":1,"34":1,"49":1,"50":1,"65":1,"114":2,"176":1,"188":1,"191":2,"199":1,"222":1,"249":2,"277":1,"285":1,"308":1,"390":1,"391":2,"392":1,"490":2,"538":1,"560":1,"572":2,"1206":2,"1319":8,"1320":1,"1321":1,"1322":1,"1323":1,"1324":3,"1328":1,"1329":1,"1330":3,"1422":2,"1619":4,"1942":1,"1991":2,"2045":5,"2184":4,"2410":1,"2411":4,"2504":2,"2579":1,"2592":1,"2612":1,"2676":11,"2745":2,"2747":3,"2939":1}}],["devuan",{"2":{"2594":1}}],["devaddr",{"0":{"782":1,"785":1,"788":1,"791":1},"1":{"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1},"2":{"783":1,"786":1,"789":1,"792":1}}],["devastatingtkl",{"2":{"222":1}}],["devised",{"2":{"2473":1}}],["deviation",{"2":{"1965":1}}],["deviate",{"2":{"424":1,"2702":1}}],["device",{"0":{"118":1,"175":1,"190":1,"684":1,"1314":1,"1315":1,"1329":1,"1935":1,"1958":1,"1964":1,"1989":1,"2008":1},"1":{"1959":1,"1960":1,"1961":1,"1962":1,"1963":1,"1964":1,"1965":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1977":1,"1978":1,"1979":1,"1980":1,"1981":1,"1982":1},"2":{"63":1,"70":2,"100":2,"111":1,"114":1,"118":13,"134":3,"149":3,"157":1,"160":2,"169":2,"175":4,"176":7,"184":2,"190":3,"191":7,"222":4,"240":2,"249":1,"266":1,"273":2,"285":2,"317":2,"387":1,"559":3,"562":1,"682":3,"683":3,"684":4,"685":6,"686":5,"692":1,"745":1,"759":1,"763":1,"770":1,"771":2,"773":1,"774":2,"776":1,"777":2,"779":1,"780":2,"782":1,"783":2,"785":1,"786":2,"788":1,"789":2,"791":1,"792":2,"795":2,"1193":1,"1196":1,"1249":2,"1251":1,"1254":1,"1255":1,"1256":1,"1259":1,"1265":1,"1269":1,"1312":1,"1313":1,"1314":2,"1326":1,"1329":5,"1330":1,"1367":2,"1388":1,"1396":1,"1409":2,"1632":6,"1633":2,"1672":2,"1732":2,"1917":1,"1918":3,"1923":1,"1935":1,"1939":1,"1940":1,"1941":1,"1947":1,"1958":3,"1959":1,"1960":4,"1961":2,"1962":1,"1963":1,"1964":1,"1967":2,"1968":2,"1970":2,"1971":1,"1972":3,"1973":2,"1974":1,"1975":4,"1976":10,"1977":6,"1978":23,"1979":8,"1980":15,"1981":20,"1982":9,"1983":9,"1985":3,"1986":2,"1987":1,"1989":5,"1990":6,"1991":2,"1992":3,"1994":2,"1996":1,"2007":2,"2008":10,"2009":1,"2030":1,"2044":6,"2050":5,"2052":7,"2211":5,"2269":2,"2318":1,"2375":1,"2376":2,"2378":1,"2379":2,"2380":2,"2381":3,"2382":1,"2383":3,"2384":2,"2385":1,"2386":2,"2387":1,"2388":2,"2389":2,"2390":2,"2391":2,"2392":1,"2393":2,"2395":2,"2397":2,"2447":4,"2448":1,"2492":1,"2494":1,"2495":4,"2498":1,"2556":1,"2605":3,"2608":3,"2676":3,"2710":2,"2721":1,"2749":64,"2750":52,"2754":3,"2819":1,"2828":1,"2842":1,"2868":2,"2875":2}}],["devices",{"0":{"11":1,"149":1,"1990":1},"2":{"11":2,"49":3,"149":1,"160":1,"174":2,"175":1,"190":1,"191":1,"229":1,"263":1,"266":1,"276":1,"294":1,"317":1,"387":2,"432":1,"613":2,"683":2,"684":1,"685":3,"686":1,"687":1,"692":4,"751":1,"754":1,"764":1,"773":1,"794":1,"1244":2,"1284":1,"1287":1,"1292":1,"1297":1,"1314":1,"1330":1,"1410":1,"1471":1,"1482":1,"1711":1,"1715":1,"1936":1,"1940":2,"1942":1,"1982":1,"2030":1,"2050":2,"2231":1,"2233":1,"2246":1,"2247":1,"2269":1,"2285":1,"2367":1,"2386":1,"2432":1,"2447":1,"2461":3,"2476":1,"2498":1,"2606":1,"2661":1,"2676":1,"2677":1,"2685":3,"2687":2,"2688":1,"2710":1,"2721":1,"2746":1,"2749":16,"2901":1}}],["dev",{"2":{"108":1,"285":1,"333":1,"381":1,"384":1,"486":1,"2495":2,"2593":1,"2594":2,"2633":5,"2634":1,"2676":1}}],["developing",{"2":{"2456":1,"2461":1,"2631":1,"2646":1,"2666":1,"2723":1}}],["developed",{"2":{"2381":1,"2805":1,"2895":1}}],["developer=true",{"2":{"486":1}}],["developer",{"0":{"455":1,"486":1},"1":{"456":1,"457":1,"458":1,"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1},"2":{"367":1,"375":1,"486":1,"594":1}}],["developers",{"0":{"375":1,"377":1},"2":{"358":1,"378":1,"484":1,"662":1,"2410":1,"2651":2,"2807":1}}],["developments",{"2":{"2631":1}}],["development",{"0":{"358":1,"366":1,"484":1,"2646":1,"2666":1},"2":{"132":1,"145":3,"163":2,"175":1,"176":1,"198":1,"233":1,"266":1,"306":1,"308":4,"315":1,"317":8,"366":1,"377":1,"459":1,"552":1,"615":1,"682":1,"1197":1,"1400":1,"1404":2,"2382":1,"2603":1,"2631":2,"2633":1,"2646":2,"2649":1,"2650":1,"2691":1,"2707":4,"2723":1,"2828":1,"2837":1,"2846":5,"2881":1,"2894":1,"2895":1,"2901":3,"2934":1}}],["develop",{"0":{"405":1},"2":{"51":1,"73":1,"76":1,"92":1,"93":1,"94":1,"114":5,"134":4,"160":3,"164":1,"169":1,"176":7,"191":6,"199":1,"210":4,"222":5,"236":2,"251":1,"266":1,"308":1,"373":2,"393":1,"396":6,"397":3,"399":1,"400":1,"401":1,"402":1,"403":5,"405":7,"406":12,"414":3,"415":3,"416":3,"417":6,"1337":1,"2303":1,"2421":1,"2721":4,"2722":1,"2896":2,"2897":1}}],["declined",{"2":{"2895":1}}],["declare",{"2":{"1404":2,"1844":2,"2066":2,"2311":1,"2312":1}}],["declared",{"2":{"1386":1,"1440":1,"1844":1,"2066":1,"2306":1}}],["declares",{"2":{"306":1,"315":1,"1937":1}}],["declarations",{"2":{"210":1,"2305":1}}],["declaration",{"2":{"191":1,"557":1}}],["decryption",{"2":{"2205":1}}],["decreasing",{"2":{"563":3,"1410":1,"2064":1}}],["decrease",{"0":{"1559":1,"1875":1,"1876":1,"1881":1,"1882":1,"2101":1,"2102":1,"2107":1,"2108":1,"2113":1,"2114":1,"2119":1,"2120":1},"2":{"166":1,"1481":1,"1514":1,"1516":1,"1537":1,"1538":1,"1559":1,"1662":2,"1674":2,"1682":1,"1842":2,"1875":1,"1876":1,"1881":1,"1882":1,"1919":4,"2062":3,"2063":1,"2064":3,"2101":1,"2102":1,"2107":1,"2108":1,"2113":1,"2114":1,"2119":1,"2120":1,"2174":8,"2194":12,"2195":2,"2216":1,"2217":3,"2374":1,"2508":1,"2518":2,"2520":4,"2525":8,"2526":3,"2757":1,"2905":1}}],["decreases",{"2":{"119":1,"1487":1,"1489":1,"2195":2,"2505":1,"2524":1,"2905":2}}],["decreased",{"2":{"49":1,"2064":1,"2372":1}}],["decays",{"2":{"2372":1}}],["decay",{"2":{"2204":1}}],["decalartion",{"2":{"160":1}}],["deceptively",{"2":{"2562":1,"2933":1}}],["deceptive",{"2":{"2560":3}}],["deception",{"2":{"2560":1,"2562":1}}],["decelerated",{"2":{"1930":4}}],["decelerates",{"2":{"1928":1}}],["decent",{"2":{"3":1,"15":1}}],["dec",{"2":{"1362":1}}],["decodable",{"2":{"1533":1}}],["decoding",{"0":{"1533":1}}],["decode",{"2":{"1531":1}}],["decoder",{"2":{"620":1,"2765":1}}],["decorators",{"0":{"534":1}}],["decorator",{"2":{"487":2}}],["decorated",{"2":{"485":1}}],["decoupled",{"2":{"174":1}}],["decouple",{"2":{"73":1,"94":1,"191":1,"210":1,"249":1,"277":1}}],["decimal",{"2":{"1362":1}}],["decides",{"2":{"2906":1}}],["decide",{"2":{"1195":1,"1198":1,"1516":2,"1606":3}}],["decided",{"2":{"87":1,"103":1,"126":1,"169":1,"179":1,"184":1,"1340":1}}],["deciding",{"2":{"510":1}}],["decisions",{"2":{"510":1,"512":1}}],["decision",{"0":{"2906":1},"1":{"2907":1,"2908":1,"2909":1,"2910":1,"2911":1,"2912":1,"2913":1},"2":{"210":1,"214":1,"243":1,"320":2,"331":1,"1410":1,"2293":1,"2560":1,"2906":3,"2907":2,"2912":1,"2920":1,"2923":2}}],["descr",{"2":{"2501":1}}],["describing",{"2":{"362":1,"397":1,"510":1,"512":1,"522":1,"678":1,"2210":1,"2845":4,"2864":1,"2871":1}}],["described",{"2":{"519":1,"619":1,"625":1,"655":1,"670":1,"686":1,"1445":1,"1532":1,"2168":1,"2248":1,"2416":1,"2444":1,"2747":1,"2923":1,"2932":1}}],["describes",{"2":{"367":1,"369":1,"378":1,"393":1,"574":1,"593":1,"662":1,"665":1,"678":1,"1547":1,"1548":1,"1742":1,"2301":1,"2676":1,"2677":1,"2707":1,"2767":1,"2771":1,"2772":1,"2773":1,"2862":1}}],["describe",{"2":{"99":1,"613":1,"2375":1,"2415":1,"2708":1,"2912":2}}],["descriptive",{"2":{"517":1,"611":1,"2633":1,"2676":1}}],["descriptions",{"2":{"746":1,"747":1,"748":1,"2676":1}}],["description",{"0":{"576":1},"1":{"577":1,"578":1,"579":1,"580":1,"581":1,"582":1,"583":1,"584":1},"2":{"119":1,"145":1,"397":1,"406":5,"482":1,"483":1,"492":1,"519":2,"597":1,"611":2,"613":1,"673":1,"680":1,"695":1,"696":1,"698":1,"701":1,"716":1,"723":1,"741":1,"743":1,"745":1,"746":1,"747":1,"748":1,"750":1,"751":1,"752":1,"753":1,"755":1,"756":1,"758":1,"764":1,"765":2,"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1245":1,"1266":1,"1282":1,"1288":1,"1292":1,"1296":1,"1299":1,"1300":1,"1374":1,"1413":1,"1422":3,"1479":1,"1480":1,"1483":1,"1484":1,"1487":2,"1489":1,"1515":1,"1524":1,"1530":1,"1537":1,"1538":1,"1548":1,"1550":1,"1551":1,"1573":1,"1593":1,"1600":1,"1606":1,"1615":1,"1619":1,"1655":1,"1656":1,"1668":1,"1670":1,"1672":1,"1673":1,"1674":1,"1675":1,"1693":1,"1738":1,"1758":1,"1774":1,"1775":1,"1776":1,"1792":1,"1826":1,"1830":1,"1841":1,"1842":1,"1843":2,"1919":1,"1927":1,"1929":1,"1930":1,"1931":1,"1933":1,"1934":1,"1941":1,"1951":1,"1952":1,"1953":1,"1954":2,"1960":1,"1961":1,"1962":1,"1964":3,"1965":1,"1966":1,"1968":3,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1978":1,"1979":1,"1980":1,"1981":1,"1982":1,"1996":1,"1998":1,"2001":1,"2002":1,"2007":1,"2008":1,"2011":1,"2049":1,"2061":1,"2062":1,"2063":3,"2158":1,"2159":4,"2169":1,"2172":1,"2174":1,"2175":1,"2176":1,"2177":1,"2178":1,"2188":1,"2190":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1,"2209":1,"2210":1,"2211":1,"2215":1,"2216":1,"2217":1,"2220":1,"2221":1,"2250":1,"2252":1,"2253":1,"2281":1,"2282":1,"2297":1,"2299":1,"2314":1,"2315":1,"2316":1,"2320":1,"2321":1,"2325":1,"2370":1,"2372":1,"2373":1,"2408":1,"2446":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2514":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2547":1,"2548":1,"2565":2,"2644":1,"2678":1,"2717":1,"2721":1,"2745":1,"2861":1,"2905":1}}],["descriptors",{"2":{"2":1,"50":1}}],["descriptor",{"0":{"2":1,"2760":1,"2768":1,"2770":1},"2":{"50":1,"114":1,"134":1,"145":1,"1939":1,"1979":1,"2758":1,"2759":1,"2760":5,"2761":1,"2762":1,"2766":2,"2767":1,"2768":4,"2769":2,"2770":3,"2771":1}}],["descendant",{"2":{"2498":1}}],["desktop",{"2":{"1635":1,"2542":1,"2546":3,"2566":3,"2644":2}}],["deskthority",{"2":{"1365":1,"2030":1,"2459":1}}],["deskdaily",{"2":{"222":1}}],["destination",{"2":{"1350":1,"2516":1}}],["destroyed",{"2":{"511":1,"655":1}}],["desirable",{"2":{"1459":1}}],["desire",{"2":{"597":1,"2561":1}}],["desired",{"2":{"368":1,"408":1,"759":1,"1249":2,"1319":1,"1375":1,"1493":1,"1496":1,"1622":1,"1934":1,"1979":1,"2291":1,"2322":1,"2401":1,"2633":1,"2776":1,"2879":1,"2894":1,"2915":1}}],["designing",{"2":{"1538":1,"1550":1,"1830":1,"2415":1}}],["designate",{"2":{"2775":1}}],["designated",{"2":{"920":1,"1091":1,"1125":1,"1512":1,"2377":1,"2384":1,"2869":2}}],["designates",{"2":{"487":1,"2775":1}}],["designs",{"2":{"222":1,"2493":1,"2695":1}}],["design",{"2":{"114":1,"168":1,"222":2,"1193":1,"1196":1,"1533":1,"2895":1}}],["designers",{"2":{"125":1,"185":1,"209":1,"212":1,"233":1,"234":1,"1840":1,"2060":1,"2677":1,"2706":1}}],["designer",{"2":{"56":1,"559":2,"568":1,"637":2,"2719":1}}],["designed",{"2":{"37":1,"43":1,"1340":1,"1385":1,"2417":1,"2448":1,"2493":1,"2582":2,"2706":1,"2735":2}}],["despite",{"2":{"312":1,"2560":2,"2749":2,"2837":1}}],["depicting",{"2":{"680":1}}],["depths",{"2":{"2749":1}}],["depth",{"2":{"618":1,"698":2}}],["depressed",{"2":{"1492":2}}],["deprecating",{"2":{"94":1}}],["deprecations",{"2":{"408":1,"2897":1}}],["deprecation",{"0":{"87":1,"88":1,"104":1,"127":1,"170":1,"264":1,"274":1,"282":1,"292":1,"301":1,"302":1,"303":1,"307":1,"313":1,"326":1,"330":1,"2895":1,"2897":1},"1":{"88":1,"265":1,"275":1,"276":1,"283":1,"284":1,"293":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"314":1,"315":1,"316":1,"327":1,"331":1,"332":1,"2896":1,"2897":1},"2":{"184":1,"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"750":1,"2895":4,"2896":2}}],["deprecate",{"2":{"87":1,"94":1,"103":1,"126":1,"160":1,"169":1,"176":1,"184":1,"188":7,"191":7,"294":1,"308":2,"317":1,"328":1,"2685":1}}],["deprecated",{"0":{"27":1,"254":1,"316":1,"331":1,"332":1},"2":{"3":1,"7":1,"15":1,"25":1,"27":1,"38":1,"50":1,"75":2,"114":2,"133":1,"134":1,"142":2,"151":1,"160":1,"176":1,"182":1,"188":1,"191":3,"194":1,"195":1,"199":2,"245":1,"249":1,"254":1,"266":1,"277":1,"294":3,"302":1,"303":2,"304":1,"316":1,"317":1,"332":1,"333":3,"468":1,"559":6,"1586":1,"1829":1,"2174":11,"2177":2,"2525":10,"2548":1,"2882":1,"2897":1}}],["depracted",{"2":{"199":1}}],["depend",{"2":{"1269":1,"1410":1,"1458":1,"1707":1,"2503":1}}],["depends",{"2":{"713":1,"1410":1,"1832":1,"1930":1,"1968":1,"2324":1,"2337":1,"2338":1,"2339":1,"2410":1,"2705":1,"2924":1}}],["dependent",{"2":{"635":1,"720":1,"765":1,"1291":1,"1389":1,"1390":1,"1550":1,"1656":1,"1973":1,"1978":1,"2470":1,"2896":1}}],["dependencies",{"2":{"73":1,"143":1,"145":2,"234":1,"308":1,"317":1,"378":1,"380":1,"1624":1,"2594":1,"2613":1}}],["dependency",{"2":{"24":1,"65":1,"384":1}}],["depending",{"2":{"25":1,"30":1,"33":1,"90":1,"220":1,"631":1,"654":1,"725":1,"743":1,"755":1,"800":1,"801":1,"830":1,"855":1,"859":1,"887":1,"889":1,"919":1,"924":1,"954":1,"958":1,"988":1,"992":1,"1022":1,"1026":1,"1056":1,"1060":1,"1090":1,"1094":1,"1124":1,"1128":1,"1158":1,"1162":1,"1214":1,"1215":1,"1291":1,"1296":1,"1300":1,"1308":1,"1550":1,"1551":1,"1611":1,"1664":2,"1674":1,"1676":1,"1831":1,"1956":1,"2063":1,"2258":1,"2310":1,"2415":1,"2422":1,"2447":1,"2492":1,"2542":1,"2650":1,"2661":1,"2758":1,"2760":1,"2766":2,"2771":1,"2783":1,"2877":1,"2894":1,"2933":1}}],["def1",{"2":{"1329":2}}],["def",{"2":{"145":2,"487":1,"498":1,"520":1,"521":1,"522":1,"531":2,"532":3,"1616":1,"2052":2}}],["defs",{"2":{"114":1,"134":1,"145":1,"236":1,"571":1,"1465":2,"1466":1,"2448":2,"2721":1,"2937":1}}],["deferred",{"0":{"653":1,"654":1,"655":1,"656":1,"657":1,"658":1},"1":{"654":1,"655":1,"656":1,"657":1,"658":1},"2":{"134":1,"160":1,"333":1,"397":1,"406":1,"572":3,"653":1,"654":4,"655":4,"656":2,"657":2,"658":3,"1624":2,"1780":1,"2411":3,"2750":4}}],["deferring",{"2":{"125":1,"185":1,"637":2}}],["defer",{"2":{"114":2,"125":1,"160":1,"185":1,"236":1,"654":1,"655":1,"656":1,"657":1,"1410":9,"1413":6,"2160":1,"2847":4,"2920":1}}],["definable",{"2":{"1511":1}}],["defining",{"0":{"627":1,"2160":1,"2182":1},"1":{"2161":1,"2162":1},"2":{"45":1,"49":2,"50":1,"80":1,"120":1,"196":1,"199":1,"524":1,"625":2,"714":1,"716":1,"719":1,"1204":1,"1205":1,"1416":1,"1417":1,"1485":1,"1487":1,"1589":1,"1603":1,"1605":1,"1607":1,"1610":1,"1611":1,"1612":1,"1613":1,"1655":1,"1656":3,"1659":1,"1696":1,"1728":1,"1736":1,"1775":1,"1843":1,"1978":1,"2063":1,"2160":1,"2199":2,"2265":2,"2297":1,"2324":1,"2446":1,"2502":1,"2643":1,"2702":1,"2905":1,"2915":1,"2919":1,"2923":1}}],["definitions",{"0":{"2554":1},"2":{"50":5,"76":1,"77":1,"93":1,"173":1,"176":1,"182":1,"199":1,"201":1,"210":1,"212":3,"222":1,"333":1,"387":1,"1466":1,"1628":1,"1659":1,"1660":1,"2159":2,"2160":2,"2305":2,"2422":1,"2550":1,"2553":1,"2554":2,"2555":1,"2561":1,"2584":1,"2677":4,"2721":6,"2750":1,"2862":1}}],["definition",{"0":{"1696":1},"2":{"25":2,"36":2,"50":1,"65":1,"90":1,"145":1,"166":1,"191":1,"199":1,"317":1,"525":1,"568":1,"1597":1,"1614":1,"1624":1,"1683":1,"1736":1,"2182":1,"2183":1,"2265":1,"2302":1,"2305":1,"2502":1,"2554":1,"2555":2,"2557":1,"2677":1,"2678":1,"2679":1,"2680":1,"2702":1,"2721":1,"2758":1,"2766":1,"2843":1,"2930":4}}],["define\\tsplit",{"2":{"2264":1}}],["defined",{"0":{"2701":1},"1":{"2702":1,"2703":1},"2":{"75":1,"199":4,"247":1,"298":1,"307":2,"439":1,"510":5,"562":3,"563":3,"567":2,"595":1,"625":1,"630":1,"655":1,"701":2,"723":3,"741":1,"746":2,"747":1,"751":1,"769":1,"794":1,"799":5,"828":1,"854":5,"886":6,"918":5,"953":5,"987":5,"1021":5,"1055":5,"1089":5,"1123":5,"1157":5,"1203":1,"1213":5,"1282":3,"1284":1,"1296":2,"1299":1,"1300":2,"1342":1,"1404":1,"1407":1,"1419":1,"1427":1,"1428":2,"1444":1,"1449":1,"1465":1,"1480":8,"1481":1,"1492":2,"1508":1,"1512":1,"1526":1,"1538":3,"1550":1,"1552":1,"1584":1,"1585":1,"1599":1,"1605":1,"1606":3,"1618":1,"1650":2,"1655":1,"1656":4,"1659":3,"1661":2,"1672":6,"1675":6,"1681":1,"1693":6,"1696":1,"1734":1,"1741":1,"1759":1,"1802":1,"1805":1,"1829":1,"1830":5,"1844":1,"1928":1,"1931":2,"1932":2,"1940":1,"1951":3,"1953":1,"1954":9,"1956":2,"1962":6,"1964":4,"1966":3,"1968":3,"1969":1,"1970":1,"1971":2,"1973":2,"1978":15,"1979":1,"1980":8,"1983":4,"1985":1,"1992":1,"1996":1,"2064":1,"2066":1,"2067":1,"2069":1,"2159":3,"2168":1,"2175":4,"2176":1,"2177":12,"2178":2,"2198":1,"2220":1,"2252":3,"2253":2,"2267":1,"2272":1,"2273":1,"2281":3,"2298":3,"2302":2,"2306":1,"2312":1,"2322":1,"2337":1,"2338":1,"2339":1,"2372":6,"2374":1,"2397":1,"2407":1,"2446":1,"2449":1,"2469":1,"2474":1,"2549":1,"2552":1,"2556":3,"2587":1,"2676":1,"2687":2,"2706":1,"2721":1,"2744":1,"2746":1,"2750":1,"2758":2,"2766":2,"2775":1,"2788":1,"2877":1,"2903":1,"2918":1,"2919":1,"2937":1,"2941":2}}],["defines",{"0":{"331":1,"567":1,"1681":1},"2":{"50":1,"93":1,"114":4,"133":1,"134":3,"160":1,"175":1,"176":2,"191":11,"199":5,"210":1,"222":2,"233":1,"236":9,"249":3,"266":1,"277":1,"294":2,"308":1,"333":1,"559":4,"567":1,"570":1,"589":1,"629":1,"687":1,"741":1,"764":1,"765":1,"800":1,"855":1,"887":1,"919":1,"920":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1091":1,"1124":1,"1125":1,"1158":1,"1210":1,"1214":1,"1283":1,"1288":1,"1292":1,"1296":1,"1299":1,"1300":1,"1473":1,"1474":1,"1478":1,"1483":1,"1492":1,"1548":1,"1550":1,"1551":1,"1629":1,"1630":1,"1631":1,"1659":2,"1696":1,"1724":1,"1765":1,"1766":1,"1768":1,"1770":1,"1843":1,"1954":7,"1955":1,"1964":1,"1978":1,"1981":1,"1982":1,"2040":1,"2041":1,"2063":2,"2162":1,"2168":1,"2170":1,"2175":1,"2177":1,"2215":2,"2252":1,"2253":4,"2282":1,"2315":1,"2368":1,"2372":2,"2377":1,"2384":1,"2554":2,"2578":1,"2675":1,"2676":1,"2687":1,"2689":1,"2701":1,"2705":1,"2714":2,"2720":1,"2721":2,"2861":1,"2887":1,"2927":1,"2937":1,"2941":1}}],["define",{"0":{"597":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1505":1,"1506":1,"1609":1,"1610":1,"1713":1,"1715":1,"2267":1},"1":{"1714":1,"1716":1},"2":{"13":1,"14":3,"25":2,"28":1,"31":1,"34":1,"49":2,"50":1,"69":1,"75":1,"94":1,"98":1,"107":1,"114":1,"120":3,"134":2,"139":1,"142":1,"160":1,"169":5,"176":2,"184":5,"191":4,"210":1,"222":1,"236":2,"249":2,"266":1,"273":3,"303":1,"307":1,"308":1,"348":3,"373":3,"487":1,"510":1,"553":1,"559":43,"560":6,"561":3,"562":28,"563":13,"564":5,"567":6,"568":25,"628":1,"645":2,"658":2,"664":1,"698":1,"701":1,"714":8,"715":5,"716":2,"718":7,"719":1,"723":1,"724":1,"741":1,"745":1,"746":15,"747":7,"748":1,"751":6,"752":5,"753":5,"756":7,"763":3,"765":2,"799":1,"800":1,"828":1,"854":1,"855":1,"856":2,"857":4,"858":1,"886":1,"887":1,"888":1,"918":1,"919":1,"920":1,"921":2,"922":4,"923":1,"953":1,"954":1,"955":2,"956":4,"957":1,"987":1,"988":1,"989":2,"990":4,"991":1,"1021":1,"1022":1,"1023":2,"1024":4,"1025":1,"1055":1,"1056":1,"1057":2,"1058":4,"1059":1,"1089":1,"1090":1,"1091":1,"1092":4,"1093":1,"1123":1,"1124":1,"1125":1,"1126":4,"1127":1,"1157":1,"1158":1,"1159":2,"1160":4,"1161":1,"1192":2,"1195":3,"1198":6,"1200":3,"1201":3,"1202":2,"1204":1,"1205":1,"1206":1,"1213":1,"1214":1,"1245":5,"1266":1,"1282":1,"1284":1,"1285":1,"1288":1,"1292":1,"1294":1,"1296":3,"1297":1,"1298":1,"1299":1,"1300":3,"1328":1,"1344":5,"1351":2,"1366":1,"1369":1,"1389":1,"1393":1,"1402":1,"1407":1,"1412":1,"1416":1,"1425":3,"1428":1,"1434":1,"1435":2,"1440":2,"1445":1,"1458":1,"1460":1,"1466":1,"1468":9,"1471":4,"1472":1,"1473":3,"1474":6,"1475":1,"1476":3,"1477":4,"1478":2,"1479":2,"1482":1,"1483":2,"1484":2,"1485":1,"1486":1,"1487":1,"1495":2,"1496":2,"1497":1,"1504":1,"1512":2,"1514":1,"1521":3,"1538":1,"1539":1,"1540":2,"1548":1,"1550":3,"1551":3,"1573":1,"1583":2,"1584":3,"1585":1,"1588":2,"1589":1,"1591":1,"1592":1,"1594":1,"1595":2,"1596":1,"1599":2,"1602":1,"1603":8,"1604":2,"1613":1,"1614":1,"1616":1,"1619":2,"1649":4,"1656":2,"1657":1,"1659":10,"1660":10,"1661":1,"1664":4,"1670":2,"1678":5,"1679":8,"1681":3,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1696":1,"1713":1,"1714":1,"1715":2,"1716":1,"1734":4,"1735":2,"1762":1,"1780":1,"1782":5,"1787":1,"1788":2,"1789":1,"1790":1,"1825":2,"1827":1,"1828":1,"1829":1,"1830":2,"1837":1,"1840":1,"1841":1,"1843":21,"1844":1,"1845":1,"1846":16,"1915":1,"1916":1,"1918":2,"1929":1,"1930":1,"1931":6,"1932":2,"1933":1,"1934":1,"1940":3,"1942":2,"1949":1,"1951":2,"1952":1,"1953":1,"1954":4,"1956":5,"1962":1,"1976":2,"1978":1,"1979":2,"1987":2,"1991":1,"1994":2,"1996":1,"2033":2,"2034":6,"2035":3,"2036":10,"2037":2,"2039":5,"2040":3,"2041":9,"2042":1,"2043":4,"2044":3,"2045":2,"2046":1,"2049":1,"2060":1,"2061":1,"2063":50,"2064":6,"2065":2,"2066":1,"2068":1,"2069":21,"2073":1,"2074":1,"2159":1,"2160":2,"2163":1,"2168":2,"2170":1,"2172":3,"2174":1,"2175":1,"2177":1,"2178":1,"2179":3,"2181":1,"2182":5,"2184":2,"2185":1,"2186":1,"2199":2,"2200":2,"2210":1,"2213":1,"2220":1,"2246":1,"2247":1,"2252":2,"2253":4,"2264":1,"2265":2,"2266":1,"2267":2,"2268":7,"2269":10,"2270":5,"2271":12,"2279":1,"2281":1,"2282":1,"2283":1,"2286":1,"2293":1,"2294":1,"2295":1,"2302":5,"2305":1,"2309":1,"2310":1,"2311":4,"2312":1,"2315":1,"2320":1,"2321":1,"2323":1,"2324":3,"2368":3,"2372":1,"2377":4,"2384":4,"2409":2,"2411":6,"2446":1,"2447":12,"2454":1,"2549":1,"2550":1,"2554":2,"2643":4,"2645":1,"2678":5,"2687":4,"2700":3,"2702":1,"2705":5,"2711":1,"2714":1,"2721":3,"2744":2,"2745":1,"2749":13,"2757":1,"2761":4,"2775":3,"2788":2,"2883":2,"2884":1,"2885":3,"2903":2,"2905":2,"2912":2,"2913":2,"2914":2,"2915":1,"2916":1,"2917":2,"2918":1,"2919":4,"2920":1,"2921":7,"2923":1,"2930":1,"2937":1,"2940":1}}],["default=",{"2":{"487":1}}],["defaulting",{"2":{"328":1}}],["default60",{"2":{"317":1}}],["defaults",{"0":{"472":1,"2452":1,"2576":1},"1":{"2453":1},"2":{"69":1,"77":1,"114":1,"134":2,"145":2,"160":1,"176":2,"199":1,"236":4,"249":1,"303":1,"308":5,"317":1,"328":2,"333":1,"555":1,"562":4,"563":1,"623":1,"716":1,"765":1,"1245":1,"1266":1,"1389":1,"1390":1,"1474":1,"1550":1,"1940":1,"1954":1,"1960":1,"1961":1,"1968":1,"1972":1,"1973":1,"1975":1,"1976":2,"2267":1,"2576":1,"2580":1,"2748":2,"2902":1,"2903":1}}],["default",{"0":{"148":1,"166":1,"293":1,"305":1,"314":1,"531":1,"554":1,"585":1,"1343":1,"1459":1,"2788":1,"2911":1},"1":{"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1},"2":{"14":1,"28":1,"30":1,"31":1,"33":1,"38":1,"49":1,"50":2,"69":1,"74":1,"77":1,"83":1,"93":2,"114":8,"124":1,"125":1,"134":2,"141":1,"145":2,"148":1,"154":2,"160":8,"164":1,"166":1,"176":10,"183":8,"191":8,"194":5,"195":3,"199":2,"210":1,"213":1,"217":1,"220":1,"222":5,"236":7,"249":4,"266":3,"273":1,"277":2,"283":1,"285":5,"289":1,"293":2,"294":9,"303":3,"305":2,"307":1,"308":2,"314":2,"317":6,"328":6,"387":3,"391":1,"427":2,"428":1,"431":2,"435":1,"437":2,"442":1,"443":1,"446":1,"448":1,"450":2,"451":2,"457":1,"458":3,"460":1,"461":1,"471":2,"472":1,"474":3,"480":3,"481":3,"482":2,"483":3,"487":1,"490":2,"492":3,"531":1,"553":1,"554":1,"559":5,"566":2,"568":4,"573":1,"585":1,"586":7,"587":5,"616":1,"617":2,"620":1,"622":1,"629":1,"637":2,"658":1,"664":1,"667":4,"669":1,"680":2,"681":2,"683":2,"693":1,"698":4,"701":3,"712":1,"714":1,"716":1,"717":1,"723":1,"741":2,"743":1,"745":2,"746":2,"747":2,"748":2,"751":2,"752":1,"753":1,"754":1,"756":2,"764":1,"765":2,"766":1,"767":1,"799":1,"828":1,"854":1,"856":1,"857":2,"858":1,"886":1,"918":1,"921":1,"922":2,"923":1,"953":1,"955":1,"956":2,"957":1,"987":1,"989":1,"990":2,"991":1,"1021":1,"1023":1,"1024":2,"1025":1,"1055":1,"1057":1,"1058":2,"1059":1,"1089":1,"1092":4,"1093":1,"1123":1,"1126":4,"1127":1,"1157":1,"1159":1,"1160":3,"1161":1,"1190":1,"1195":1,"1198":1,"1200":2,"1201":2,"1202":2,"1204":2,"1205":2,"1210":2,"1213":1,"1245":1,"1266":1,"1282":1,"1284":1,"1286":1,"1287":1,"1288":1,"1292":1,"1294":1,"1296":1,"1299":1,"1300":1,"1317":1,"1319":1,"1340":1,"1356":1,"1358":1,"1363":1,"1369":1,"1385":1,"1389":1,"1392":1,"1393":1,"1394":1,"1404":1,"1406":1,"1407":13,"1412":1,"1413":1,"1416":6,"1419":1,"1422":18,"1424":2,"1425":1,"1427":5,"1443":1,"1449":2,"1458":1,"1459":1,"1466":1,"1478":1,"1479":1,"1480":4,"1481":2,"1483":1,"1484":1,"1485":2,"1486":1,"1487":7,"1489":1,"1495":1,"1497":3,"1504":3,"1511":4,"1520":2,"1522":1,"1526":1,"1536":1,"1538":5,"1541":1,"1542":1,"1548":1,"1550":2,"1551":1,"1573":1,"1583":2,"1584":1,"1587":2,"1589":1,"1591":1,"1592":1,"1594":2,"1602":1,"1603":2,"1604":2,"1606":5,"1614":10,"1616":1,"1617":1,"1618":1,"1619":15,"1632":3,"1656":2,"1659":3,"1661":1,"1662":2,"1664":1,"1669":1,"1672":1,"1674":1,"1675":4,"1681":1,"1693":1,"1733":1,"1734":1,"1735":1,"1736":1,"1776":2,"1778":1,"1779":1,"1780":1,"1782":2,"1787":1,"1790":1,"1830":1,"1837":1,"1840":3,"1845":1,"1846":10,"1920":1,"1928":3,"1929":2,"1930":1,"1931":3,"1933":2,"1934":1,"1939":1,"1947":4,"1948":2,"1951":2,"1952":1,"1953":3,"1954":4,"1956":3,"1959":1,"1960":1,"1961":1,"1962":2,"1964":2,"1965":1,"1966":1,"1968":5,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":2,"1978":5,"1979":3,"1980":1,"1983":1,"1987":4,"1989":1,"1992":1,"1994":4,"1996":3,"1997":1,"1999":1,"2004":1,"2005":7,"2007":2,"2032":1,"2037":1,"2039":3,"2041":2,"2049":2,"2060":3,"2064":1,"2068":1,"2069":14,"2073":1,"2159":3,"2160":3,"2163":1,"2167":1,"2172":2,"2175":12,"2177":1,"2178":1,"2182":1,"2183":1,"2210":1,"2213":1,"2219":1,"2220":2,"2222":1,"2251":1,"2252":2,"2253":1,"2263":1,"2264":1,"2266":2,"2268":2,"2270":1,"2271":1,"2277":2,"2278":1,"2281":2,"2282":2,"2283":1,"2286":2,"2287":1,"2290":2,"2291":1,"2297":1,"2302":2,"2310":3,"2311":2,"2312":2,"2315":5,"2316":1,"2320":1,"2321":1,"2323":1,"2324":1,"2372":2,"2374":2,"2376":1,"2377":2,"2384":2,"2393":1,"2395":1,"2397":1,"2401":3,"2407":2,"2408":1,"2410":4,"2411":7,"2425":1,"2446":5,"2452":1,"2453":2,"2459":1,"2490":1,"2491":1,"2492":2,"2503":1,"2505":1,"2516":3,"2524":2,"2551":7,"2553":1,"2554":1,"2576":3,"2577":2,"2580":4,"2586":1,"2591":1,"2592":1,"2607":2,"2608":1,"2612":1,"2619":1,"2622":7,"2633":1,"2652":1,"2655":1,"2656":2,"2669":3,"2676":2,"2678":2,"2679":1,"2680":1,"2700":1,"2701":1,"2702":2,"2705":2,"2707":3,"2710":1,"2720":3,"2721":10,"2722":4,"2747":2,"2748":2,"2749":11,"2757":1,"2776":1,"2788":7,"2791":1,"2846":1,"2847":15,"2848":2,"2849":8,"2850":14,"2851":5,"2853":2,"2854":5,"2855":1,"2856":1,"2857":1,"2858":1,"2859":3,"2860":1,"2862":3,"2863":3,"2864":22,"2865":7,"2866":1,"2868":3,"2870":24,"2871":28,"2872":3,"2873":16,"2874":2,"2875":7,"2876":4,"2877":1,"2879":1,"2882":1,"2884":1,"2887":1,"2903":1,"2904":1,"2905":4,"2906":4,"2908":2,"2909":3,"2910":2,"2912":3,"2913":3,"2914":5,"2915":1,"2916":1,"2917":2,"2918":1,"2919":1,"2920":3,"2921":3,"2923":1,"2942":1}}],["delkey",{"2":{"1378":5}}],["delegation",{"2":{"2272":1}}],["delegating",{"2":{"568":1}}],["delegates",{"2":{"2271":1}}],["delegated",{"2":{"2271":1}}],["delegate",{"2":{"2271":1}}],["deleting",{"0":{"480":1,"496":1},"2":{"517":1}}],["deleted",{"2":{"16":1,"444":1,"2386":1,"2391":1}}],["delete",{"0":{"1378":1},"2":{"8":1,"31":1,"34":1,"99":1,"137":1,"210":1,"222":1,"255":1,"266":1,"403":1,"480":1,"496":1,"684":1,"685":3,"1378":4,"1587":1,"1688":1,"1761":1,"1768":3,"1957":2,"2159":1,"2221":1,"2372":1,"2503":4,"2537":1,"2541":2,"2543":1,"2942":2}}],["delimited",{"2":{"2748":1}}],["delimiter",{"2":{"2748":1}}],["delivered",{"2":{"673":1,"678":1}}],["deliberately",{"2":{"497":1,"642":1}}],["delilah",{"2":{"154":2}}],["delikeeb",{"2":{"86":8}}],["delayed",{"2":{"1442":1,"1487":1,"1940":1,"2906":1}}],["delays",{"2":{"572":1,"654":1,"1442":1,"1928":1,"2411":1,"2678":1,"2679":1,"2680":1}}],["delay",{"0":{"1450":2,"1451":2,"1780":1,"2229":1,"2233":1,"2247":1},"1":{"2230":1,"2234":1},"2":{"74":3,"112":6,"114":4,"120":1,"160":2,"176":5,"191":1,"210":2,"236":1,"249":2,"266":2,"317":1,"328":1,"333":1,"559":4,"562":5,"564":2,"654":2,"655":1,"656":1,"717":1,"1435":1,"1438":3,"1442":4,"1449":2,"1450":1,"1480":2,"1487":1,"1656":1,"1661":3,"1780":6,"1781":1,"1929":5,"1930":2,"1933":4,"1956":1,"1996":2,"2002":1,"2007":1,"2039":1,"2064":3,"2221":1,"2227":1,"2229":1,"2231":1,"2233":2,"2246":2,"2247":2,"2320":1,"2566":1,"2678":3,"2719":3,"2770":2,"2847":5,"2851":1,"2865":1,"2866":2,"2875":1,"2906":2}}],["del",{"0":{"8":1},"2":{"8":1,"63":1,"120":1,"369":1,"496":2,"587":2,"1374":3,"1375":3,"1378":9,"1435":1,"1438":1,"1594":1,"1768":1,"2159":1,"2221":1,"2374":2,"2503":1,"2541":1,"2557":1}}],["deltas",{"2":{"1968":1,"2398":2,"2748":1}}],["delta",{"0":{"2772":1},"2":{"100":1,"210":1,"222":1,"1929":2,"1930":1,"1933":2,"1934":4,"1976":2,"2398":5,"2748":1,"2760":1,"2766":2,"2770":8,"2772":9}}],["delt",{"0":{"8":1},"2":{"8":1,"188":1,"191":1}}],["u8",{"2":{"2886":2}}],["u80",{"2":{"222":1}}],["u03a8",{"2":{"2845":2}}],["u2192",{"2":{"2781":2}}],["u2193",{"2":{"2781":2}}],["u2190",{"2":{"2781":2}}],["u2191",{"2":{"2781":2}}],["u32",{"2":{"2769":1}}],["udr1",{"2":{"2036":1}}],["udevadm",{"2":{"1313":2}}],["udev",{"0":{"1313":1},"2":{"199":2,"1312":2,"1313":1,"1329":1,"2410":1}}],["ubrr1l",{"2":{"2036":1}}],["ubrr1h",{"2":{"2036":1}}],["ubuntu",{"2":{"511":1,"2594":1,"2600":1,"2619":1,"2621":3,"2646":1,"2666":1}}],["ultra",{"2":{"1421":1}}],["ultimately",{"2":{"2744":1}}],["ultimate",{"2":{"514":1}}],["ukrainian",{"2":{"2880":2}}],["ukr",{"2":{"2323":1}}],["uk",{"2":{"763":1,"1587":1,"2473":1,"2880":3}}],["uz",{"2":{"507":1}}],["uzu42",{"2":{"176":2}}],["uv",{"0":{"422":1},"2":{"422":4}}],["uvwxyz",{"2":{"266":1,"308":1}}],["urls",{"2":{"333":1,"372":3}}],["url",{"2":{"308":2,"372":3,"584":1,"666":1,"1624":2,"2630":1,"2632":1,"2721":1,"2776":1,"2845":2}}],["urbanvanilla",{"2":{"222":1}}],["ug",{"2":{"283":3,"587":16,"1661":10,"2174":11,"2185":1,"2525":11}}],["ugfx",{"0":{"10":1},"2":{"10":1,"114":1,"134":1}}],["u",{"2":{"266":1,"369":1,"442":2,"587":2,"1326":3,"2159":1,"2161":1,"2289":1,"2293":1,"2294":4,"2320":1,"2337":1,"2379":1,"2382":1,"2418":3,"2495":1,"2496":3,"2503":3,"2535":3,"2556":1,"2601":1,"2633":2,"2748":4}}],["uefi",{"0":{"1373":1},"2":{"263":1}}],["umsel10",{"2":{"2036":1}}],["um",{"2":{"207":1,"2322":3,"2325":1,"2411":1,"2533":1}}],["um70",{"2":{"114":1}}],["u16",{"2":{"191":1}}],["u+ffff",{"2":{"2324":2}}],["u+10ffff",{"2":{"2322":1}}],["u+",{"2":{"2322":1}}],["u+7fff",{"2":{"2322":1}}],["u+exxx",{"2":{"191":1}}],["u+axxx",{"2":{"191":1}}],["uaccess",{"2":{"1329":3}}],["ua62",{"2":{"154":2}}],["uart1",{"2":{"2699":2}}],["uart0",{"2":{"1402":2,"2699":2}}],["uart",{"0":{"1263":1,"1268":1,"1270":1,"1272":1,"1274":1,"1276":1,"1278":1,"2699":1},"1":{"1264":1,"1265":1,"1266":1,"1267":1,"1268":1,"1269":2,"1270":1,"1271":2,"1272":1,"1273":2,"1274":1,"1275":2,"1276":1,"1277":2,"1278":1,"1279":2},"2":{"50":1,"73":1,"75":1,"133":2,"134":2,"160":4,"191":1,"199":1,"234":2,"236":2,"249":1,"294":1,"1189":1,"1263":1,"1264":3,"1265":1,"1266":12,"1268":1,"1278":1,"1392":2,"2367":2,"2368":1,"2424":1,"2692":1,"2695":1,"2699":1,"2702":4,"2704":2}}],["utc",{"2":{"520":1,"521":1,"522":2}}],["utf",{"2":{"222":1}}],["ut47",{"2":{"160":1,"328":1}}],["ut472",{"2":{"144":2}}],["utilise",{"2":{"2721":1}}],["utilises",{"2":{"2685":1}}],["utilised",{"2":{"2450":1,"2895":2}}],["utilising",{"2":{"1193":1,"2685":1}}],["utilisation",{"2":{"573":1}}],["utilize",{"2":{"553":1,"2862":1}}],["utilized",{"2":{"553":1,"1202":1}}],["utilities",{"2":{"133":1,"134":1,"160":1}}],["utility",{"2":{"49":1,"199":1,"266":1,"682":1,"1466":1,"2387":2,"2390":1,"2577":1}}],["utils",{"2":{"249":1}}],["util",{"2":{"114":1,"222":1,"236":2,"266":1,"285":2,"332":1,"416":1,"507":1,"508":1,"509":1,"566":2,"1950":1,"2266":2,"2280":1,"2386":3,"2387":6,"2388":3,"2389":3,"2391":3,"2392":4,"2401":7,"2410":2,"2498":1,"2501":1,"2719":1}}],["ucpol1",{"2":{"2036":1}}],["ucsr1b",{"2":{"2036":3}}],["ucsr1a",{"2":{"2036":3}}],["ucsr1c",{"2":{"2036":2}}],["ucsz10",{"2":{"2036":1}}],["ucis",{"0":{"2352":1,"2353":1,"2355":1,"2357":1,"2360":1,"2362":1,"2363":1,"2364":1},"1":{"2354":1,"2356":1,"2358":1,"2359":1,"2361":1,"2365":1},"2":{"199":1,"210":1,"2323":12,"2353":1,"2354":1,"2364":1,"2365":1,"2411":1,"2933":1}}],["uc",{"2":{"134":1,"188":1,"191":1,"2322":3,"2324":2,"2325":9,"2411":1,"2533":9}}],["ui",{"2":{"120":1,"191":1,"578":1}}],["uint24",{"2":{"2760":1,"2761":1,"2762":2,"2767":1,"2768":1}}],["uintptr",{"2":{"1773":2}}],["uint",{"2":{"134":1}}],["uint32",{"0":{"1268":1,"2026":1,"2028":1,"2237":1,"2340":1,"2347":1},"1":{"1269":1,"2027":1,"2029":1,"2238":1,"2341":1,"2348":1,"2349":1},"2":{"105":4,"114":1,"176":1,"645":1,"654":1,"1030":5,"1269":1,"1407":1,"1408":4,"1651":2,"2029":1,"2238":1,"2270":1,"2322":1,"2323":1,"2341":1,"2750":7,"2760":2,"2768":2,"2769":2}}],["uint8",{"0":{"704":3,"706":3,"709":1,"732":3,"734":3,"736":1,"770":2,"773":2,"776":2,"779":3,"782":3,"785":2,"788":3,"791":2,"794":1,"806":1,"808":3,"810":3,"812":3,"814":1,"816":1,"818":1,"820":1,"822":1,"824":1,"836":2,"838":3,"840":3,"842":1,"844":1,"846":1,"848":1,"864":1,"866":3,"868":3,"870":3,"872":1,"874":1,"876":4,"878":2,"880":1,"882":1,"894":1,"896":3,"898":2,"900":3,"902":3,"904":1,"906":1,"908":1,"910":1,"912":1,"914":1,"929":1,"931":3,"933":2,"935":3,"937":3,"939":1,"941":1,"943":1,"945":1,"947":1,"949":1,"963":1,"965":3,"967":2,"969":3,"971":3,"973":1,"975":1,"977":1,"979":1,"981":1,"983":1,"997":1,"999":3,"1001":2,"1003":3,"1005":3,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1017":1,"1031":1,"1033":3,"1035":2,"1037":3,"1039":3,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1051":1,"1065":1,"1067":3,"1069":2,"1071":3,"1073":3,"1075":1,"1077":1,"1079":4,"1081":2,"1083":1,"1085":1,"1099":1,"1101":3,"1103":2,"1105":3,"1107":3,"1109":1,"1111":1,"1113":4,"1115":2,"1117":1,"1119":1,"1133":1,"1135":3,"1137":2,"1139":3,"1141":3,"1143":1,"1145":1,"1147":4,"1149":2,"1151":1,"1153":1,"1167":1,"1169":3,"1171":2,"1173":3,"1175":3,"1177":1,"1179":1,"1181":4,"1183":2,"1185":1,"1187":1,"1220":1,"1222":3,"1224":2,"1226":3,"1228":3,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1240":1,"1248":1,"1251":1,"1256":1,"1259":1,"1270":1,"1272":1,"1274":1,"1303":3,"1305":3,"1560":1,"1562":1,"1576":1,"1579":1,"1581":1,"1705":2,"1713":2,"1715":2,"1719":1,"1721":1,"1724":1,"1726":1,"1728":1,"1730":1,"1745":1,"1747":1,"1749":1,"1752":1,"1859":2,"1861":1,"1863":1,"1865":1,"1871":1,"1877":1,"1883":1,"1885":1,"1887":1,"1897":1,"1906":2,"1909":2,"2014":1,"2016":1,"2018":1,"2020":1,"2022":1,"2054":2,"2056":2,"2085":4,"2087":3,"2089":1,"2091":1,"2097":1,"2103":1,"2109":1,"2115":1,"2121":1,"2123":1,"2125":1,"2135":1,"2137":3,"2139":3,"2150":2,"2153":2,"2229":1,"2233":1,"2241":1,"2243":1,"2327":1,"2329":1,"2333":1,"2335":1,"2344":1,"2347":1,"2350":1,"2355":1},"1":{"705":3,"707":3,"710":1,"733":3,"735":3,"737":1,"771":2,"772":2,"774":2,"775":2,"777":2,"778":2,"780":3,"781":3,"783":3,"784":3,"786":2,"787":2,"789":3,"790":3,"792":2,"793":2,"795":1,"796":1,"807":1,"809":3,"811":3,"813":3,"815":1,"817":1,"819":1,"821":1,"823":1,"825":1,"837":2,"839":3,"841":3,"843":1,"845":1,"847":1,"849":1,"865":1,"867":3,"869":3,"871":3,"873":1,"875":1,"877":4,"879":2,"881":1,"883":1,"895":1,"897":3,"899":2,"901":3,"903":3,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"930":1,"932":3,"934":2,"936":3,"938":3,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"964":1,"966":3,"968":2,"970":3,"972":3,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"998":1,"1000":3,"1002":2,"1004":3,"1006":3,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":3,"1036":2,"1038":3,"1040":3,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1066":1,"1068":3,"1070":2,"1072":3,"1074":3,"1076":1,"1078":1,"1080":4,"1082":2,"1084":1,"1086":1,"1100":1,"1102":3,"1104":2,"1106":3,"1108":3,"1110":1,"1112":1,"1114":4,"1116":2,"1118":1,"1120":1,"1134":1,"1136":3,"1138":2,"1140":3,"1142":3,"1144":1,"1146":1,"1148":4,"1150":2,"1152":1,"1154":1,"1168":1,"1170":3,"1172":2,"1174":3,"1176":3,"1178":1,"1180":1,"1182":4,"1184":2,"1186":1,"1188":1,"1221":1,"1223":3,"1225":2,"1227":3,"1229":3,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1249":1,"1250":1,"1252":1,"1253":1,"1257":1,"1258":1,"1260":1,"1261":1,"1271":1,"1273":1,"1275":1,"1304":3,"1306":3,"1561":1,"1563":1,"1577":1,"1706":2,"1714":2,"1716":2,"1720":1,"1722":1,"1723":1,"1725":1,"1727":1,"1729":1,"1731":1,"1746":1,"1748":1,"1750":1,"1751":1,"1753":1,"1860":2,"1862":1,"1864":1,"1866":1,"1872":1,"1878":1,"1884":1,"1886":1,"1888":1,"1898":1,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2024":1,"2055":2,"2057":2,"2086":4,"2088":3,"2090":1,"2092":1,"2098":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2136":1,"2140":3,"2230":1,"2234":1,"2242":1,"2244":1,"2328":1,"2330":1,"2334":1,"2336":1,"2345":1,"2346":1,"2348":1,"2349":1,"2351":1,"2356":1},"2":{"46":1,"90":4,"105":4,"222":1,"323":1,"623":2,"630":2,"637":3,"645":1,"705":3,"707":3,"710":1,"729":4,"733":3,"735":3,"737":1,"742":1,"771":2,"774":2,"777":2,"780":3,"783":3,"786":2,"789":3,"792":2,"795":1,"805":5,"807":1,"809":3,"811":3,"813":3,"815":1,"817":1,"819":1,"821":1,"823":1,"825":1,"834":4,"837":2,"839":3,"841":3,"843":1,"845":1,"847":1,"849":1,"863":5,"865":1,"867":3,"869":3,"871":3,"873":1,"875":1,"877":4,"879":2,"881":1,"883":1,"893":5,"895":1,"897":3,"899":2,"901":3,"903":3,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"928":5,"930":1,"932":3,"934":2,"936":3,"938":3,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"962":5,"964":1,"966":3,"968":2,"970":3,"972":3,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"996":5,"998":1,"1000":3,"1002":2,"1004":3,"1006":3,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":3,"1036":2,"1038":3,"1040":3,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1064":5,"1066":1,"1068":3,"1070":2,"1072":3,"1074":3,"1076":1,"1078":1,"1080":4,"1082":2,"1084":1,"1086":1,"1098":5,"1100":1,"1102":3,"1104":2,"1106":3,"1108":3,"1110":1,"1112":1,"1114":4,"1116":2,"1118":1,"1120":1,"1132":5,"1134":1,"1136":3,"1138":2,"1140":3,"1142":3,"1144":1,"1146":1,"1148":4,"1150":2,"1152":1,"1154":1,"1166":5,"1168":2,"1170":3,"1172":2,"1174":3,"1176":3,"1178":1,"1180":1,"1182":4,"1184":2,"1186":1,"1188":1,"1219":5,"1221":1,"1223":3,"1225":2,"1227":3,"1229":3,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1249":1,"1252":1,"1257":1,"1260":1,"1271":1,"1275":1,"1277":1,"1304":3,"1306":3,"1378":1,"1407":1,"1425":2,"1441":1,"1466":2,"1481":3,"1486":2,"1521":1,"1526":2,"1527":2,"1528":1,"1529":3,"1545":1,"1561":1,"1580":1,"1582":1,"1606":1,"1611":2,"1612":2,"1614":2,"1651":2,"1662":2,"1696":1,"1706":1,"1714":2,"1716":2,"1720":1,"1725":1,"1727":1,"1729":1,"1731":1,"1741":1,"1746":1,"1748":1,"1750":1,"1753":1,"1773":3,"1775":3,"1829":2,"1833":1,"1837":5,"1844":3,"1849":2,"1860":2,"1862":1,"1864":1,"1866":1,"1884":1,"1886":1,"1907":2,"1910":2,"1949":2,"1955":1,"1956":15,"1981":1,"1983":1,"1996":1,"2001":3,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2050":2,"2052":3,"2055":2,"2057":2,"2066":3,"2072":2,"2073":12,"2074":5,"2086":4,"2088":3,"2090":1,"2092":1,"2122":1,"2124":1,"2138":3,"2140":3,"2151":2,"2154":2,"2160":2,"2161":1,"2162":1,"2164":1,"2165":1,"2166":1,"2168":1,"2170":3,"2175":1,"2180":7,"2217":11,"2230":1,"2234":1,"2242":1,"2244":1,"2270":6,"2279":2,"2283":6,"2293":2,"2298":1,"2330":1,"2334":1,"2336":1,"2348":1,"2351":1,"2365":1,"2374":2,"2555":1,"2645":6,"2749":4,"2750":34,"2760":6,"2767":2,"2768":1,"2770":4,"2771":7,"2773":1,"2904":1}}],["uint16",{"0":{"704":1,"770":2,"773":2,"776":2,"779":3,"782":2,"785":3,"788":2,"791":3,"794":1,"1248":1,"1256":1,"1259":1,"1274":1,"1276":1,"1796":1,"1802":1,"1807":1,"1810":2,"1813":3,"1816":4,"1819":5,"2239":1,"2344":1,"2357":1},"1":{"705":1,"771":2,"772":2,"774":2,"775":2,"777":2,"778":2,"780":3,"781":3,"783":2,"784":2,"786":3,"787":3,"789":2,"790":2,"792":3,"793":3,"795":1,"796":1,"1249":1,"1250":1,"1257":1,"1258":1,"1260":1,"1261":1,"1275":1,"1277":1,"1797":1,"1798":1,"1803":1,"1804":1,"1808":1,"1809":1,"1811":2,"1812":2,"1814":3,"1815":3,"1817":4,"1818":4,"1820":5,"1821":5,"2240":1,"2345":1,"2346":1,"2358":1,"2359":1},"2":{"22":6,"46":2,"194":2,"195":2,"247":1,"307":2,"324":1,"325":1,"587":1,"591":2,"629":1,"630":3,"645":1,"705":1,"771":2,"774":2,"777":2,"780":3,"783":2,"786":3,"789":2,"792":3,"795":1,"1249":1,"1257":1,"1260":1,"1275":1,"1277":1,"1326":1,"1377":1,"1378":1,"1407":2,"1425":1,"1440":4,"1441":2,"1456":2,"1465":1,"1466":2,"1474":1,"1485":1,"1497":1,"1504":2,"1511":3,"1526":1,"1527":1,"1594":2,"1596":2,"1597":2,"1598":2,"1599":7,"1606":11,"1607":4,"1611":5,"1612":6,"1650":1,"1661":1,"1683":1,"1737":3,"1743":3,"1775":2,"1797":1,"1803":1,"1808":1,"1811":2,"1814":3,"1817":4,"1820":5,"1828":1,"1918":2,"1942":1,"1949":1,"1954":1,"1956":7,"1977":2,"1979":1,"1981":1,"1982":1,"1986":1,"1987":1,"1998":2,"1999":1,"2001":3,"2006":1,"2008":1,"2160":2,"2161":1,"2162":3,"2164":1,"2165":1,"2166":1,"2167":1,"2168":2,"2170":4,"2184":2,"2224":1,"2240":1,"2279":1,"2282":1,"2283":4,"2293":2,"2305":1,"2309":4,"2312":2,"2345":1,"2358":1,"2374":4,"2449":1,"2550":1,"2555":1,"2568":1,"2569":1,"2570":1,"2578":1,"2749":45,"2750":39,"2760":1,"2768":3,"2770":1,"2772":4,"2785":1,"2793":1,"2903":1,"2904":2,"2905":2,"2912":1,"2913":1,"2914":1,"2916":1,"2917":4,"2920":2,"2921":1,"2923":1,"2931":1,"2933":38}}],["uf2families",{"2":{"285":1}}],["uf2boot",{"0":{"2395":1},"1":{"2396":1},"2":{"236":1,"2395":5}}],["uf2conv",{"2":{"210":1,"222":1,"328":1}}],["uf2",{"0":{"2397":1,"2665":1},"2":{"93":1,"114":1,"145":1,"176":2,"199":3,"222":1,"294":1,"2266":2,"2393":1,"2394":2,"2395":1,"2396":2,"2397":1,"2600":1,"2700":1,"2847":1}}],["unknowingly",{"2":{"2560":1}}],["unknown",{"0":{"1315":1},"2":{"111":1,"371":1,"2310":2,"2311":2,"2312":2,"2448":1,"2501":1}}],["unblink",{"2":{"2184":4}}],["unwanted",{"2":{"1780":1,"2205":1}}],["unnecessarily",{"2":{"1245":1,"1425":1}}],["unnecessary",{"2":{"134":1,"236":1,"266":1,"277":1,"303":1,"333":1,"613":1,"2554":1}}],["unquoted",{"2":{"669":1}}],["unusable",{"0":{"2659":1},"2":{"1317":1}}],["unusual",{"2":{"523":1,"680":1,"1583":1,"2930":1}}],["unuseful",{"2":{"266":1}}],["unused",{"0":{"1654":1},"2":{"50":1,"75":1,"160":1,"176":1,"191":1,"199":8,"333":2,"597":1,"1291":1,"1316":1,"1393":1,"1405":1,"1649":1,"1903":1,"1908":1,"2147":1,"2152":1,"2201":2,"2265":3,"2271":1,"2411":1,"2721":1,"2865":1}}],["unfiltered",{"2":{"2372":2}}],["unfamiliar",{"2":{"517":1}}],["unfortunately",{"2":{"173":1,"279":1,"594":1,"1287":1,"1493":1,"1522":1,"2546":1,"2657":1,"2879":1,"2934":1}}],["uncle",{"2":{"2934":1}}],["unclear",{"2":{"510":1,"515":1,"617":1}}],["unchanged",{"2":{"2904":1}}],["uncapitalizing",{"2":{"1591":1}}],["unconfigured",{"2":{"2865":1}}],["unconditionally",{"2":{"49":1,"114":1}}],["uncomment",{"2":{"1606":1}}],["uncommon",{"2":{"11":1,"1522":1}}],["uncombined",{"2":{"573":1}}],["uncovered",{"2":{"191":1}}],["unavoidable",{"2":{"2721":1}}],["unavailable",{"2":{"692":1,"758":2,"1405":1,"1475":1,"2036":1,"2562":1,"2715":1}}],["unacceptable",{"2":{"2561":1,"2562":2}}],["unaffected",{"2":{"1587":1}}],["unannotated",{"2":{"537":1}}],["unambiguous",{"2":{"524":1}}],["unable",{"2":{"393":1,"408":1,"2470":1,"2473":1,"2561":2,"2881":1}}],["unauthorized",{"2":{"312":1}}],["unassigned",{"2":{"236":1,"503":1}}],["unprivileged",{"2":{"2401":1}}],["unpr",{"2":{"2370":1,"2509":1}}],["unpressed",{"2":{"1409":1}}],["unpredictable",{"2":{"746":1}}],["unplugged",{"2":{"1655":1,"2806":1}}],["unplugging",{"2":{"1407":1,"1418":1,"1484":1,"2258":1}}],["unplug",{"2":{"683":1,"1345":1,"1617":1,"1655":1,"2501":1,"2605":3,"2788":2}}],["unpair",{"2":{"2370":1,"2509":1}}],["unpacking",{"2":{"524":1}}],["unparsed",{"2":{"249":1}}],["unpicking",{"2":{"303":1}}],["unxmaal",{"2":{"236":1}}],["unshifted",{"2":{"2545":1}}],["unswap",{"2":{"2519":20,"2548":20}}],["unsplit",{"2":{"1976":1}}],["unspecified",{"2":{"1632":1}}],["unscrewing",{"2":{"1362":1}}],["unsuccessful",{"2":{"794":1}}],["unsupported",{"2":{"695":1,"696":1,"1956":1,"2254":1}}],["unsure",{"2":{"683":1,"685":1,"1937":1,"1938":1,"2424":1,"2427":1,"2576":1,"2622":1}}],["unsigned",{"2":{"210":1,"333":1,"1365":1,"1954":1,"2237":1,"2239":1,"2282":1}}],["unsent",{"2":{"2033":1}}],["unsettled",{"0":{"320":1},"2":{"328":1}}],["unset",{"2":{"145":1,"751":2,"2747":2}}],["unselect",{"2":{"114":3,"559":1}}],["unmergeable",{"2":{"2721":1}}],["unmerged",{"2":{"209":1,"397":1}}],["unmod",{"2":{"1931":4}}],["unmodified",{"2":{"1782":1,"1931":7,"2921":1}}],["unmaintained",{"2":{"114":1}}],["unrecognized",{"2":{"2941":1}}],["unrecoverable",{"2":{"2496":1}}],["unresponsive",{"2":{"1655":1,"1929":1,"1930":1}}],["unreliable",{"2":{"1293":1}}],["unrelated",{"2":{"191":1,"335":1,"338":3,"397":1}}],["unregistered",{"2":{"654":1,"1456":1,"1611":1,"1775":1}}],["unregister",{"0":{"1448":1,"1451":1,"1747":1,"2020":1},"1":{"1748":1,"2021":1},"2":{"562":1,"1350":1,"1375":1,"1377":1,"1378":1,"1441":1,"1449":2,"1450":1,"1456":2,"1511":3,"1611":2,"1612":1,"1773":1,"1775":1,"1776":1,"1782":1,"2309":1,"2310":5,"2311":3,"2921":1}}],["unreachable",{"2":{"333":1}}],["unreferenced",{"2":{"133":1,"134":1}}],["unloaded",{"2":{"2750":2}}],["unlocking",{"2":{"2206":1,"2211":1}}],["unlocks",{"2":{"1824":1,"1826":1,"2515":1}}],["unlock",{"0":{"2206":1},"2":{"1822":2,"1825":1,"2206":1,"2209":6,"2210":3,"2211":6,"2501":2,"2872":4}}],["unlocked",{"2":{"396":1,"405":1,"1827":1,"2207":1,"2210":1,"2211":3,"2872":1}}],["unlk",{"2":{"2209":1}}],["unlike",{"2":{"1353":1,"1633":1,"2591":1,"2862":1,"2925":1}}],["unlikely",{"2":{"139":1,"559":1,"1353":1,"2689":1}}],["unlimited",{"2":{"453":1,"467":1}}],["unless",{"2":{"191":1,"492":1,"514":1,"526":1,"534":1,"623":2,"1350":1,"1353":1,"1362":1,"1375":1,"1422":2,"1492":1,"1538":1,"1550":1,"1830":1,"2005":1,"2063":1,"2410":1,"2427":1,"2472":1,"2516":1,"2685":1,"2702":1,"2719":1,"2721":4,"2750":1}}],["un",{"2":{"160":1,"191":1,"266":1,"284":1,"559":1,"1449":1,"2161":1,"2370":1,"2509":1}}],["unexplainable",{"2":{"2410":1}}],["unexpectedly",{"2":{"1365":1}}],["unexpected",{"2":{"87":1,"393":1,"1587":1,"1771":1}}],["unecessary",{"2":{"145":1}}],["uno",{"0":{"2479":1},"1":{"2480":1},"2":{"144":2,"145":2,"2479":2,"2480":3}}],["ungodly",{"2":{"114":2}}],["unterminated",{"2":{"134":1}}],["untested",{"2":{"49":1,"540":1,"1691":1,"1945":1,"1951":1,"2281":1,"2411":2}}],["until",{"2":{"114":1,"145":1,"199":1,"279":1,"320":1,"579":1,"645":1,"655":1,"684":1,"765":1,"1348":1,"1389":1,"1390":1,"1409":1,"1416":3,"1448":1,"1485":1,"1486":1,"1497":1,"1519":1,"1588":1,"1592":1,"1756":1,"1758":1,"1780":3,"1846":1,"1928":3,"1929":2,"1933":1,"1939":2,"1956":1,"1974":1,"1993":1,"2069":1,"2297":1,"2378":1,"2380":1,"2385":1,"2387":1,"2392":1,"2425":1,"2514":1,"2516":1,"2532":1,"2562":1,"2575":1,"2627":1,"2643":2,"2719":1,"2721":2,"2750":1,"2827":1,"2905":1,"2906":1,"2914":2,"2923":1}}],["universal",{"2":{"2841":1}}],["union",{"2":{"1407":2}}],["uninsulated",{"2":{"2418":1}}],["uninstallation",{"0":{"685":1},"2":{"685":1}}],["uninstall",{"2":{"684":1,"685":4,"686":1}}],["unintentional",{"2":{"191":1,"2418":1}}],["unilaterally",{"2":{"312":1}}],["unix",{"2":{"249":1,"277":1,"456":1,"2404":1,"2612":1,"2613":1,"2637":1,"2669":2}}],["unix60",{"2":{"67":1,"72":1,"222":1}}],["uniform",{"2":{"210":1}}],["unify",{"0":{"22":1},"2":{"113":1,"114":2,"160":1,"210":1,"294":3}}],["uni",{"2":{"197":2,"199":2}}],["unikeyboard",{"2":{"154":3,"160":2}}],["uniquely",{"2":{"1416":1,"1992":1}}],["unique",{"2":{"145":1,"199":1,"627":2,"663":1,"1316":2,"2422":1,"2727":1}}],["unicorne",{"2":{"134":1,"249":1}}],["unicodemap",{"0":{"207":1,"2344":1,"2347":1,"2350":1},"1":{"2345":1,"2346":1,"2348":1,"2349":1,"2351":1},"2":{"207":1,"210":2,"2411":1,"2933":1}}],["unicode",{"0":{"186":1,"2317":1,"2327":1,"2329":1,"2331":1,"2332":1,"2333":1,"2335":1,"2337":1,"2338":1,"2339":1,"2340":1,"2342":1,"2474":1,"2533":1,"2762":1,"2839":1},"1":{"2318":1,"2319":1,"2320":1,"2321":1,"2322":1,"2323":1,"2324":1,"2325":1,"2326":1,"2327":1,"2328":2,"2329":1,"2330":2,"2331":1,"2332":1,"2333":1,"2334":2,"2335":1,"2336":2,"2337":1,"2338":1,"2339":1,"2340":1,"2341":2,"2342":1,"2343":2,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1},"2":{"70":1,"94":1,"111":1,"134":1,"145":1,"160":2,"186":3,"188":3,"191":6,"199":2,"210":2,"222":1,"467":1,"490":1,"572":2,"590":1,"1352":1,"1521":1,"2218":2,"2317":1,"2318":2,"2319":1,"2320":11,"2321":5,"2322":6,"2323":6,"2324":21,"2325":12,"2327":1,"2328":1,"2329":1,"2331":1,"2332":1,"2337":4,"2338":2,"2339":2,"2340":1,"2342":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2411":5,"2473":1,"2474":2,"2533":13,"2748":18,"2758":2,"2760":3,"2762":6,"2763":2,"2839":3,"2845":2,"2879":1,"2901":1,"2933":2,"2941":1}}],["unity",{"2":{"2735":1}}],["units",{"2":{"563":3,"613":1,"711":1,"1410":2,"1825":1,"1985":1,"1996":3,"2770":1,"2776":2,"2862":4}}],["unit|integration>",{"2":{"503":1}}],["unit",{"0":{"542":1,"2840":1,"2934":1},"1":{"2935":1,"2936":1,"2937":1,"2938":1,"2939":1,"2940":1},"2":{"114":1,"134":1,"191":1,"198":1,"199":2,"249":1,"308":1,"467":1,"503":2,"540":1,"542":1,"617":1,"715":1,"765":2,"1327":1,"1410":1,"1474":1,"1656":1,"2411":1,"2722":3,"2823":1,"2840":2,"2934":2,"2935":1,"2937":2,"2940":1}}],["unite",{"2":{"114":1}}],["undone",{"2":{"2633":1}}],["undo",{"2":{"1616":1,"1985":1,"2503":2,"2541":2,"2627":1}}],["undocumented",{"2":{"8":1,"539":1}}],["unds",{"2":{"176":1,"1587":1,"1594":1,"2527":1,"2547":1}}],["undecided",{"2":{"2915":1}}],["undesired",{"2":{"1782":1,"2921":1}}],["undesirable",{"2":{"1781":1}}],["undef",{"2":{"45":1,"348":3,"557":1,"714":5,"715":3,"718":1,"765":1,"1200":1,"1201":1,"1245":1,"1266":1,"1296":1,"1300":1,"1393":1,"1402":1,"1550":1,"1551":1,"2179":4,"2409":2,"2883":2,"2887":55}}],["undefined",{"2":{"567":1,"1413":1,"1930":1,"1933":1,"1934":1,"1947":1,"1951":1,"1953":1,"2277":1,"2372":1,"2702":1}}],["undefine",{"2":{"45":1,"557":1,"1393":1}}],["underneath",{"2":{"1535":1}}],["undertake",{"2":{"611":1}}],["underlight",{"0":{"2838":1},"2":{"572":1}}],["underlying",{"2":{"234":1,"320":1,"435":1,"473":1,"487":1,"749":1,"751":2,"752":1,"753":2,"1606":1,"1839":1,"2059":1,"2677":1,"2857":1,"2923":1}}],["undergoing",{"2":{"214":1}}],["undergoes",{"2":{"214":1}}],["underglowx",{"2":{"2448":1}}],["underglow",{"2":{"32":1,"49":1,"266":1,"277":3,"283":1,"328":1,"631":1,"639":1,"1407":2,"1424":1,"1535":1,"2061":2,"2069":1,"2171":1,"2174":11,"2181":1,"2201":1,"2428":1,"2448":3,"2525":11,"2791":1,"2887":1}}],["underside",{"2":{"683":1,"2605":1,"2838":1}}],["understood",{"2":{"536":1}}],["understands",{"0":{"2775":1},"2":{"1280":1,"2171":1,"2287":1,"2775":1}}],["understandable",{"2":{"613":1}}],["understandability",{"2":{"514":1,"536":2}}],["understanding",{"0":{"2926":1},"1":{"2927":1,"2928":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"249":1,"358":1,"411":1,"531":1,"534":1,"536":1,"617":2,"624":1,"1421":1,"1777":1,"2303":1,"2635":1,"2775":2,"2898":1,"2901":1,"2926":1}}],["understand",{"2":{"2":1,"361":1,"489":1,"514":1,"526":1,"528":1,"624":1,"642":1,"663":1,"672":1,"680":1,"1406":1,"1523":1,"1778":1,"1779":1,"2466":1,"2775":2,"2926":1}}],["underscores",{"2":{"542":1,"2554":1,"2775":1}}],["underscore",{"2":{"518":1,"1522":1,"2442":2,"2527":1,"2547":1}}],["underscore33",{"2":{"154":4}}],["under",{"2":{"32":1,"55":13,"120":1,"134":1,"160":1,"210":1,"215":1,"222":1,"249":1,"265":1,"268":1,"387":1,"391":1,"397":1,"405":1,"427":1,"493":1,"611":1,"663":1,"668":1,"751":1,"754":1,"1317":1,"1348":1,"1435":1,"1461":1,"1487":1,"1622":1,"1844":1,"2004":2,"2050":1,"2066":1,"2268":1,"2310":1,"2324":3,"2426":2,"2458":1,"2495":1,"2579":1,"2602":1,"2603":1,"2676":3,"2704":1,"2722":1,"2725":1,"2729":3,"2749":1,"2750":1,"2828":1,"2844":1,"2895":2,"2919":1}}],["uprint",{"2":{"2411":4}}],["uprintf",{"2":{"1324":1,"1326":1}}],["uppr",{"2":{"2314":1}}],["upper",{"0":{"2323":1},"2":{"191":1,"680":1,"716":1,"763":1,"1516":2,"1675":1,"1962":1,"1969":2,"1971":1,"2294":3,"2313":2,"2314":3,"2315":2,"2316":6,"2323":2,"2398":1,"2556":1}}],["uppercase",{"2":{"191":1,"1403":1,"2323":3,"2719":2}}],["updir",{"2":{"2162":3}}],["updater",{"2":{"416":1,"2390":3}}],["updated",{"0":{"44":1,"59":1,"86":1,"102":1,"122":1,"144":1,"154":1,"168":1,"181":1,"197":1,"205":1,"218":1,"226":1,"241":1,"253":1,"270":1,"281":1,"291":1,"300":1,"311":1,"322":1},"1":{"45":1,"60":1},"2":{"10":1,"14":1,"69":1,"83":1,"86":2,"108":1,"114":2,"126":1,"134":1,"145":1,"160":1,"182":2,"195":1,"208":1,"230":1,"241":1,"244":1,"253":1,"262":1,"270":1,"281":1,"283":1,"373":2,"405":1,"413":1,"422":1,"644":2,"1829":1,"2631":1,"2632":1,"2633":2,"2721":1,"2723":3}}],["updates",{"0":{"190":1,"248":1,"255":1,"256":1,"306":1,"315":1},"1":{"257":1,"258":1,"259":1,"260":1},"2":{"5":1,"12":2,"22":1,"30":1,"33":1,"64":1,"114":2,"134":2,"145":2,"160":2,"176":3,"190":1,"191":2,"199":1,"210":1,"222":3,"236":3,"249":5,"266":3,"277":1,"285":2,"294":2,"308":2,"328":1,"399":2,"400":2,"401":2,"402":1,"405":2,"408":1,"414":1,"509":1,"714":1,"715":1,"1345":1,"2008":1,"2588":1,"2632":1,"2669":1,"2721":1}}],["update",{"0":{"4":1,"6":1,"10":1,"12":1,"45":1,"56":1,"69":1,"77":1,"307":1,"736":1,"822":1,"824":1,"850":1,"851":1,"880":1,"882":1,"912":1,"914":1,"947":1,"949":1,"981":1,"983":1,"1015":1,"1017":1,"1049":1,"1051":1,"1083":1,"1085":1,"1117":1,"1119":1,"1151":1,"1153":1,"1185":1,"1187":1,"1238":1,"1240":1,"1345":1,"1831":1,"1832":1,"1833":1,"1835":1,"2631":1,"2784":1,"2786":1},"1":{"737":1,"823":1,"825":1,"881":1,"883":1,"913":1,"915":1,"948":1,"950":1,"982":1,"984":1,"1016":1,"1018":1,"1050":1,"1052":1,"1084":1,"1086":1,"1118":1,"1120":1,"1152":1,"1154":1,"1186":1,"1188":1,"1239":1,"1241":1,"1832":1,"1833":1,"2632":1,"2633":1,"2634":1,"2785":1,"2787":1},"2":{"10":3,"21":1,"24":1,"31":1,"32":1,"46":1,"49":1,"63":1,"65":1,"75":1,"76":1,"89":1,"90":8,"93":3,"95":1,"105":12,"114":9,"131":2,"133":1,"134":8,"143":1,"145":3,"160":5,"176":15,"191":17,"194":1,"199":5,"206":1,"210":8,"222":8,"230":1,"236":11,"240":2,"249":12,"255":1,"256":1,"266":9,"277":8,"285":7,"294":9,"307":4,"308":4,"317":4,"323":1,"328":5,"333":2,"405":1,"406":1,"416":3,"417":2,"616":1,"645":1,"650":1,"651":1,"704":1,"713":2,"732":2,"810":2,"814":2,"818":2,"820":2,"838":2,"842":2,"846":2,"848":2,"868":2,"872":2,"876":2,"878":2,"900":2,"904":2,"908":2,"910":2,"935":2,"939":2,"943":2,"945":2,"969":2,"973":2,"977":2,"979":2,"1003":2,"1007":2,"1011":2,"1013":2,"1037":2,"1041":2,"1045":2,"1047":2,"1071":2,"1075":2,"1079":2,"1081":2,"1105":2,"1109":2,"1113":2,"1115":2,"1139":2,"1143":2,"1147":2,"1149":2,"1173":2,"1177":2,"1181":2,"1183":2,"1226":2,"1230":2,"1234":2,"1236":2,"1303":1,"1313":1,"1378":1,"1406":2,"1407":4,"1408":2,"1422":3,"1464":1,"1516":1,"1616":1,"1622":1,"1651":6,"1662":3,"1736":1,"1829":2,"1831":4,"1832":2,"1833":1,"1834":1,"1835":1,"1846":1,"1951":3,"1968":1,"1987":1,"1996":1,"2069":1,"2174":1,"2183":1,"2281":1,"2449":1,"2457":1,"2499":1,"2625":1,"2626":1,"2628":2,"2630":2,"2632":1,"2707":1,"2721":3,"2723":1,"2740":1,"2757":1,"2784":1,"2785":4,"2786":1,"2787":3,"2788":1,"2864":1,"2871":1,"2905":1,"2933":1}}],["updating",{"0":{"405":1,"416":1,"2632":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"107":1,"194":1,"199":1,"249":1,"294":1,"393":1,"408":1,"410":1,"414":1,"415":1,"1951":1,"2182":1,"2281":1,"2411":1,"2719":1}}],["upe1",{"2":{"2036":1}}],["upm10",{"2":{"2036":1}}],["upward",{"2":{"1983":2}}],["upwards",{"2":{"1486":1}}],["upgrading",{"2":{"422":1,"2721":1}}],["upgrades",{"2":{"10":1,"114":1}}],["upgrade",{"0":{"24":1,"413":1,"417":1},"1":{"414":1,"415":1,"416":1,"417":1},"2":{"10":3,"65":2,"143":3,"294":1,"422":1,"2706":1,"2800":1}}],["upgraded",{"2":{"10":1}}],["uploading",{"2":{"584":1}}],["uploaded",{"2":{"276":2,"578":1,"2410":1,"2721":1}}],["uploads",{"2":{"273":1,"277":1,"1368":2,"2410":1,"2591":1,"2632":1}}],["upload",{"0":{"273":1},"2":{"160":1,"273":4,"359":1,"360":1,"598":1,"680":1,"1515":1,"1516":1,"2408":1,"2410":1,"2498":1,"2600":1}}],["upon",{"2":{"65":1,"283":1,"312":1,"602":1,"1340":1,"1466":1,"1538":3,"1778":1,"1940":1,"1941":1,"2175":6,"2626":1,"2628":1,"2685":1,"2696":1,"2701":1}}],["ups",{"0":{"50":1,"64":1,"75":1,"94":1},"2":{"50":1,"176":1,"266":1,"1202":1,"2260":1}}],["upstreamed",{"2":{"2685":1,"2689":1,"2691":1}}],["upstreaming",{"2":{"2560":8,"2691":1}}],["upstream",{"2":{"10":1,"12":1,"26":1,"167":1,"210":1,"222":1,"285":1,"328":1,"403":3,"405":2,"415":2,"416":1,"613":1,"1457":1,"2560":1,"2562":1,"2564":1,"2627":8,"2630":6,"2632":8,"2633":4,"2685":1,"2690":1,"2719":2,"2895":1,"2896":2}}],["up",{"0":{"406":1,"410":1,"1442":1,"1998":1,"2423":1,"2425":1,"2428":1,"2584":1,"2611":1,"2629":1,"2646":1,"2666":1,"2667":1,"2815":1},"1":{"1999":1,"2424":1,"2612":1,"2613":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1,"2621":1,"2622":1,"2668":1,"2669":1,"2670":1,"2671":1,"2672":1,"2673":1},"2":{"6":1,"13":1,"23":1,"28":1,"45":1,"50":1,"62":1,"73":3,"77":1,"90":3,"93":1,"94":3,"100":1,"114":13,"119":2,"120":3,"123":1,"124":2,"130":2,"131":1,"133":2,"134":6,"138":1,"141":1,"145":1,"156":1,"160":5,"163":1,"166":1,"173":1,"182":1,"188":1,"191":8,"198":2,"199":6,"207":1,"210":8,"217":1,"220":1,"221":1,"222":55,"224":1,"228":1,"231":2,"232":1,"236":4,"248":1,"249":1,"251":1,"266":3,"294":3,"328":1,"347":1,"348":1,"356":1,"369":1,"377":1,"387":1,"403":1,"421":1,"422":1,"423":1,"427":1,"444":1,"510":2,"538":2,"553":1,"556":1,"559":1,"563":2,"572":2,"573":1,"580":1,"583":1,"586":1,"587":4,"611":1,"612":1,"613":1,"615":1,"628":2,"631":1,"633":1,"635":2,"637":2,"639":1,"646":1,"654":1,"681":1,"682":1,"684":1,"685":1,"692":1,"717":2,"721":1,"745":1,"746":3,"758":1,"765":1,"797":1,"826":1,"852":1,"884":1,"916":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1121":1,"1155":1,"1194":2,"1202":1,"1211":1,"1245":1,"1249":1,"1266":1,"1300":3,"1310":1,"1336":1,"1338":1,"1369":1,"1407":2,"1410":8,"1413":2,"1419":1,"1435":2,"1438":6,"1441":1,"1442":2,"1466":1,"1467":1,"1468":1,"1479":1,"1480":1,"1484":2,"1487":4,"1489":2,"1493":1,"1515":3,"1516":2,"1517":2,"1520":1,"1521":1,"1532":1,"1537":2,"1550":1,"1606":1,"1662":1,"1674":2,"1679":1,"1688":2,"1696":1,"1732":1,"1761":2,"1770":6,"1776":1,"1782":1,"1783":1,"1791":2,"1831":1,"1842":2,"1843":7,"1919":8,"1927":5,"1962":1,"1968":2,"1973":1,"1987":1,"1999":1,"2002":1,"2006":2,"2009":1,"2030":3,"2062":4,"2063":9,"2064":2,"2074":1,"2159":10,"2162":1,"2174":4,"2178":2,"2182":1,"2214":1,"2216":2,"2221":1,"2252":1,"2253":1,"2257":1,"2260":1,"2266":1,"2271":1,"2274":1,"2289":1,"2291":1,"2302":2,"2308":1,"2312":1,"2322":2,"2323":2,"2324":2,"2325":2,"2398":1,"2403":1,"2409":1,"2411":5,"2420":1,"2425":1,"2427":1,"2437":2,"2438":1,"2443":1,"2456":1,"2459":1,"2489":1,"2494":1,"2503":13,"2505":2,"2506":3,"2508":2,"2518":2,"2520":8,"2521":5,"2524":2,"2525":4,"2526":4,"2533":2,"2541":7,"2542":4,"2543":2,"2551":1,"2552":1,"2556":1,"2575":1,"2579":2,"2584":1,"2587":1,"2590":1,"2609":1,"2611":1,"2613":1,"2622":1,"2625":1,"2631":1,"2644":1,"2646":2,"2651":1,"2656":1,"2660":2,"2662":2,"2664":2,"2666":1,"2667":2,"2671":3,"2676":4,"2683":1,"2685":1,"2687":1,"2700":1,"2719":1,"2721":1,"2722":1,"2723":1,"2750":1,"2754":1,"2765":2,"2835":1,"2872":1,"2875":2,"2885":2,"2886":1,"2887":2,"2898":1,"2905":11,"2908":4,"2909":6,"2910":4,"2912":7,"2913":2,"2914":2,"2918":5,"2921":1,"2924":1,"2931":1}}],["usd",{"2":{"2657":1,"2888":1}}],["us=yes",{"2":{"1392":1}}],["usr",{"2":{"1313":1,"2671":1}}],["usually",{"2":{"228":1,"391":1,"434":1,"531":1,"572":1,"621":1,"655":1,"681":1,"682":1,"683":1,"687":1,"751":3,"763":1,"1197":1,"1205":1,"1287":1,"1293":1,"1345":2,"1361":1,"1410":1,"1413":1,"1482":1,"1535":1,"1540":1,"1545":2,"1583":1,"1666":1,"1979":1,"1980":1,"2172":2,"2186":1,"2219":1,"2284":1,"2383":1,"2410":1,"2411":1,"2468":1,"2476":1,"2494":1,"2496":1,"2500":1,"2551":1,"2564":1,"2605":2,"2610":1,"2643":1,"2652":1,"2676":1,"2689":1,"2775":1,"2862":1,"2890":1,"2894":1,"2942":1}}],["usual",{"2":{"77":1,"495":1,"496":1,"628":1,"1377":1,"1378":1,"1476":1,"1684":2,"2007":1,"2162":1,"2167":1,"2905":1}}],["usability",{"2":{"222":1}}],["usable",{"2":{"107":1,"114":1,"141":1,"220":1,"231":1,"464":1,"492":1,"713":1,"751":2,"752":1,"753":1,"1407":1,"1475":1,"2254":1,"2424":1,"2552":1,"2659":3,"2748":1,"2749":1,"2857":1}}],["usart4",{"2":{"1209":1}}],["usart2",{"2":{"1208":1,"1209":1,"1210":3,"1266":4}}],["usart3",{"2":{"1200":1,"1201":1,"1208":1,"1209":1,"1210":5,"1266":1}}],["usartn",{"2":{"1200":2,"1201":2}}],["usart1",{"2":{"1195":1,"1198":1,"1208":1,"1209":1,"1210":3,"1266":2,"2036":1}}],["usart",{"0":{"1193":1,"1196":1,"2036":1},"1":{"1194":1,"1195":1,"1197":1,"1198":1},"2":{"74":1,"107":1,"176":1,"266":1,"277":1,"285":1,"1189":3,"1193":1,"1194":2,"1195":5,"1196":2,"1197":5,"1198":10,"1200":5,"1201":5,"1204":1,"1205":2,"1207":1,"1210":3,"1266":1,"2030":1,"2032":1,"2033":1,"2036":11,"2254":1,"2682":1,"2702":4,"2868":1,"2873":1}}],["usages",{"2":{"75":1,"118":1,"128":1,"141":1,"142":1,"151":1,"160":1,"167":1,"199":4,"249":1,"1354":2,"2009":1,"2646":1}}],["usage",{"0":{"323":1,"688":1,"700":1,"722":1,"739":1,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1536":1,"1572":1,"1618":1,"1634":1,"1666":1,"1692":1,"1733":1,"1757":1,"1784":1,"1913":1,"1937":1,"1946":1,"2010":1,"2048":1,"2172":1,"2179":1,"2203":1,"2208":1,"2219":1,"2249":1,"2277":1,"2319":1,"2401":1,"2658":1,"2661":1,"2662":1},"1":{"1914":1,"1915":1,"1916":1,"1917":1,"1918":1,"1919":1,"1920":1,"1921":1,"1922":1,"1923":1,"2173":1,"2659":1,"2660":1,"2661":1,"2662":1},"2":{"45":1,"118":1,"141":1,"145":1,"176":1,"199":1,"222":1,"231":1,"236":1,"249":3,"266":2,"294":1,"307":1,"308":1,"328":1,"427":5,"428":3,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":2,"447":2,"448":2,"450":1,"451":1,"452":1,"453":1,"457":4,"458":2,"459":2,"460":1,"461":1,"462":1,"463":1,"467":1,"468":1,"717":2,"1193":1,"1196":1,"1202":1,"1348":1,"1410":1,"1413":2,"1603":1,"1840":1,"1968":1,"2009":1,"2037":1,"2047":1,"2049":6,"2050":3,"2052":8,"2060":1,"2534":1,"2542":1,"2550":1,"2555":1,"2587":1,"2650":1,"2660":1,"2677":1,"2704":1,"2748":6,"2775":1,"2833":1,"2875":1,"2895":1}}],["us",{"0":{"2527":1,"2545":1},"1":{"2546":1,"2547":1},"2":{"6":1,"74":1,"99":1,"114":2,"160":1,"176":2,"188":1,"191":1,"201":1,"228":1,"245":1,"371":1,"380":1,"412":1,"493":1,"536":1,"542":1,"607":1,"611":1,"617":3,"642":1,"663":2,"746":3,"1282":1,"1378":2,"1443":1,"1491":1,"1587":2,"1628":1,"1686":2,"1788":1,"1955":1,"2222":1,"2252":1,"2459":1,"2473":3,"2503":2,"2527":1,"2537":2,"2545":1,"2573":1,"2610":1,"2627":5,"2724":2,"2810":1,"2840":1,"2877":1,"2879":1,"2880":7,"2907":1,"2930":1,"2932":1}}],["using",{"0":{"378":1,"421":1,"422":1,"423":1,"1368":1,"1427":1,"1435":1,"1439":1,"1514":1,"1918":1,"2311":1,"2312":1,"2590":1},"1":{"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"1436":1,"1437":1,"1438":1,"1440":1,"1441":1,"1442":1,"1443":1,"1444":1,"1445":1,"1446":1,"1447":1,"1448":1,"1449":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1455":1,"1456":1,"1515":1,"1516":1,"1517":1},"2":{"5":1,"7":1,"14":1,"16":2,"45":1,"49":2,"50":1,"65":2,"73":1,"76":1,"83":1,"103":1,"111":2,"114":4,"126":1,"132":1,"142":1,"143":1,"160":1,"176":2,"191":1,"199":1,"208":1,"232":1,"234":1,"236":1,"240":2,"241":2,"244":1,"248":1,"253":2,"255":1,"270":2,"271":1,"272":1,"281":2,"289":1,"328":1,"367":1,"371":1,"375":2,"378":2,"380":1,"381":1,"382":1,"383":1,"387":1,"390":1,"408":1,"424":1,"427":1,"431":1,"437":1,"448":1,"457":2,"485":1,"488":1,"489":1,"493":1,"497":1,"498":1,"505":1,"510":1,"512":1,"514":2,"519":1,"523":1,"524":2,"527":2,"536":1,"537":1,"559":2,"560":1,"561":1,"562":1,"567":3,"568":14,"576":1,"578":1,"589":1,"591":1,"611":3,"616":1,"641":1,"649":1,"655":1,"663":1,"683":1,"684":1,"685":1,"687":1,"700":1,"716":1,"722":1,"739":1,"745":2,"752":1,"760":1,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1190":2,"1197":2,"1202":1,"1210":1,"1212":1,"1243":1,"1264":1,"1280":2,"1281":1,"1283":1,"1300":1,"1308":1,"1310":1,"1312":1,"1316":1,"1330":1,"1337":1,"1344":1,"1369":1,"1375":2,"1404":1,"1406":2,"1407":5,"1410":5,"1416":2,"1417":1,"1422":1,"1424":1,"1432":1,"1456":1,"1466":1,"1477":1,"1482":1,"1497":1,"1511":3,"1513":1,"1532":1,"1538":1,"1545":2,"1550":1,"1583":1,"1587":1,"1588":1,"1589":2,"1603":2,"1614":3,"1616":1,"1621":1,"1624":1,"1656":1,"1657":1,"1660":1,"1661":1,"1662":1,"1664":3,"1665":1,"1680":1,"1681":1,"1691":1,"1733":1,"1736":1,"1770":1,"1781":1,"1782":1,"1824":1,"1840":2,"1844":1,"1913":1,"1917":1,"1924":1,"1929":1,"1930":1,"1932":1,"1936":1,"1941":1,"1945":2,"1950":1,"1955":3,"1959":1,"1964":1,"1965":1,"1968":2,"1977":1,"1978":1,"1979":3,"1980":2,"1982":2,"1992":2,"2008":1,"2037":1,"2041":1,"2047":1,"2052":1,"2060":2,"2066":1,"2074":1,"2075":1,"2171":1,"2177":1,"2182":3,"2184":1,"2200":1,"2203":1,"2207":1,"2222":1,"2253":1,"2254":1,"2256":2,"2258":1,"2261":1,"2266":3,"2268":2,"2271":5,"2276":1,"2280":1,"2291":1,"2298":2,"2317":1,"2324":3,"2325":1,"2371":1,"2372":1,"2376":2,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2398":1,"2404":1,"2410":1,"2411":3,"2418":1,"2421":1,"2422":4,"2423":1,"2425":3,"2437":1,"2439":1,"2441":1,"2443":1,"2447":1,"2448":1,"2453":1,"2457":1,"2464":1,"2473":1,"2479":1,"2501":1,"2533":1,"2546":1,"2556":2,"2566":1,"2573":1,"2577":1,"2579":1,"2582":1,"2583":2,"2587":1,"2588":2,"2589":1,"2591":2,"2593":2,"2602":1,"2606":1,"2609":1,"2621":1,"2627":1,"2646":1,"2658":1,"2666":1,"2673":1,"2675":1,"2676":3,"2683":1,"2691":1,"2692":4,"2704":1,"2707":2,"2719":2,"2721":5,"2723":1,"2725":1,"2740":1,"2749":3,"2750":7,"2754":1,"2775":1,"2811":1,"2812":1,"2839":1,"2878":1,"2879":1,"2880":1,"2883":1,"2884":2,"2885":2,"2886":1,"2887":1,"2901":2,"2905":3,"2918":1,"2921":1,"2923":1,"2924":2,"2933":1,"2935":1}}],["usbmodemxxxxxx",{"2":{"2495":1}}],["usbtiny",{"2":{"2483":1}}],["usbtinyisp",{"0":{"2483":1},"1":{"2484":1},"2":{"428":1,"2483":3}}],["usbs1",{"2":{"2036":1}}],["usbser",{"2":{"686":12}}],["usb2adb",{"2":{"1354":1}}],["usb2422",{"2":{"134":1}}],["usbisactive",{"2":{"266":1}}],["usbc",{"2":{"218":2}}],["usbasploader",{"0":{"2382":1,"2494":1},"2":{"328":1,"428":1,"571":1,"683":1,"686":1,"2382":3,"2494":2}}],["usbasp",{"0":{"2485":1},"1":{"2486":1},"2":{"134":1,"191":1,"428":1,"686":1,"2382":4,"2485":2,"2494":1}}],["usbpd",{"2":{"74":1}}],["usbdrv",{"0":{"21":1}}],["usb",{"0":{"2":1,"21":1,"148":1,"169":1,"184":1,"235":1,"263":1,"303":1,"573":1,"1316":1,"1370":1,"2841":1,"2842":1,"2875":1},"1":{"170":1,"1317":1},"2":{"2":1,"21":2,"31":1,"34":1,"49":3,"50":5,"62":2,"65":1,"70":3,"73":2,"75":1,"94":2,"111":3,"112":9,"113":1,"114":7,"134":5,"145":6,"148":1,"160":4,"169":3,"170":2,"176":8,"184":4,"191":9,"199":5,"210":9,"222":1,"236":5,"240":1,"249":3,"263":2,"266":4,"285":2,"294":1,"303":1,"308":3,"317":1,"390":1,"543":1,"544":3,"545":1,"559":5,"566":4,"568":7,"571":1,"572":5,"573":2,"632":1,"644":1,"683":1,"685":1,"686":1,"1191":1,"1194":1,"1197":1,"1314":3,"1354":1,"1370":2,"1389":4,"1390":4,"1480":1,"1914":2,"1936":2,"1939":1,"1940":1,"1941":3,"1942":2,"1983":4,"2050":2,"2052":1,"2174":1,"2254":1,"2258":4,"2267":3,"2271":9,"2272":4,"2273":2,"2285":1,"2287":1,"2291":3,"2370":7,"2376":1,"2382":2,"2383":1,"2384":1,"2386":1,"2388":1,"2393":1,"2395":1,"2397":3,"2417":2,"2423":1,"2447":3,"2466":1,"2467":1,"2468":1,"2469":2,"2473":1,"2475":2,"2483":1,"2485":1,"2487":1,"2491":1,"2492":1,"2493":1,"2494":2,"2495":1,"2497":1,"2498":2,"2501":1,"2509":6,"2550":1,"2555":1,"2657":1,"2659":3,"2680":1,"2682":1,"2683":1,"2687":2,"2710":8,"2721":1,"2744":1,"2800":1,"2833":2,"2842":1,"2845":2,"2873":3,"2875":7,"2927":1}}],["useful",{"0":{"2782":1},"1":{"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"289":1,"320":1,"484":1,"512":1,"559":1,"572":1,"607":1,"635":1,"638":1,"649":1,"687":1,"719":1,"751":1,"1244":1,"1324":1,"1326":1,"1328":1,"1344":1,"1406":1,"1423":1,"1441":1,"1445":2,"1449":2,"1459":1,"1461":1,"1484":1,"1522":1,"1540":1,"1583":1,"1587":1,"1595":1,"1600":1,"1606":3,"1628":1,"1664":1,"1827":1,"1834":1,"1932":2,"1951":1,"1956":1,"1978":3,"1981":2,"1985":1,"2047":1,"2156":2,"2162":1,"2165":1,"2184":1,"2200":1,"2252":1,"2258":1,"2271":1,"2283":1,"2311":1,"2323":1,"2372":1,"2374":1,"2380":1,"2410":1,"2414":1,"2420":1,"2470":1,"2551":1,"2649":1,"2719":1,"2725":1,"2782":1,"2784":1,"2787":1,"2880":1,"2915":1,"2918":2,"2923":1,"2925":1}}],["useless",{"2":{"199":1,"222":1,"266":2}}],["used",{"2":{"25":1,"49":1,"50":1,"60":1,"110":1,"120":1,"142":1,"174":1,"176":2,"203":1,"214":1,"220":1,"240":1,"243":1,"285":1,"328":1,"331":1,"334":1,"335":1,"373":2,"380":1,"390":2,"397":1,"427":1,"431":2,"442":1,"472":1,"473":1,"492":1,"523":2,"524":1,"527":1,"554":1,"559":1,"561":1,"569":1,"570":2,"578":1,"586":5,"587":1,"591":1,"598":1,"614":1,"616":1,"625":2,"632":1,"643":1,"645":1,"654":1,"655":3,"656":1,"657":1,"659":2,"663":1,"692":4,"696":2,"714":2,"718":1,"719":1,"745":1,"747":1,"749":1,"750":5,"751":3,"752":4,"753":2,"754":1,"756":1,"759":2,"760":1,"761":1,"764":1,"765":2,"1189":3,"1191":1,"1193":1,"1194":1,"1195":1,"1197":2,"1200":2,"1201":1,"1202":1,"1242":1,"1245":2,"1263":1,"1266":1,"1288":1,"1296":1,"1317":1,"1321":1,"1322":1,"1323":1,"1368":1,"1375":1,"1378":1,"1379":2,"1392":2,"1415":1,"1416":2,"1417":2,"1430":1,"1435":1,"1441":1,"1442":1,"1459":1,"1466":1,"1471":1,"1474":1,"1504":1,"1512":1,"1532":1,"1539":1,"1548":1,"1588":1,"1603":1,"1624":1,"1629":1,"1630":1,"1657":1,"1672":1,"1675":1,"1728":1,"1730":1,"1765":1,"1768":1,"1770":1,"1771":2,"1775":2,"1776":1,"1781":1,"1823":1,"1845":1,"1847":1,"1933":1,"1934":1,"1935":1,"1949":1,"1951":1,"1953":3,"1954":2,"1956":3,"1961":1,"1962":5,"1963":1,"1967":1,"1968":1,"1974":2,"1976":1,"1978":2,"1979":2,"1980":1,"1983":1,"1985":1,"1992":1,"1994":1,"2001":2,"2005":2,"2006":1,"2035":1,"2037":3,"2052":1,"2068":1,"2070":1,"2160":1,"2162":1,"2167":3,"2168":2,"2169":1,"2174":2,"2178":2,"2186":1,"2187":1,"2222":1,"2252":1,"2253":2,"2254":1,"2258":2,"2259":1,"2265":1,"2266":1,"2268":2,"2272":1,"2276":1,"2279":1,"2283":2,"2284":1,"2289":1,"2290":2,"2294":1,"2302":3,"2306":1,"2310":6,"2311":1,"2312":3,"2313":1,"2319":1,"2324":1,"2370":1,"2372":1,"2376":1,"2382":1,"2388":1,"2401":1,"2407":1,"2411":4,"2424":1,"2428":1,"2430":2,"2432":1,"2442":2,"2443":1,"2446":2,"2447":1,"2448":1,"2468":1,"2479":1,"2498":1,"2546":1,"2552":1,"2554":2,"2557":1,"2561":1,"2562":1,"2566":3,"2568":2,"2569":1,"2590":1,"2609":1,"2619":1,"2632":1,"2633":1,"2646":1,"2658":1,"2659":5,"2660":2,"2661":4,"2662":4,"2675":1,"2684":1,"2687":2,"2696":1,"2707":3,"2719":2,"2721":9,"2744":1,"2746":1,"2749":11,"2750":12,"2754":1,"2760":2,"2765":1,"2767":1,"2768":1,"2770":2,"2771":2,"2775":1,"2777":2,"2809":1,"2813":2,"2817":1,"2819":1,"2820":1,"2837":1,"2844":1,"2845":2,"2857":1,"2864":1,"2869":1,"2871":1,"2877":1,"2879":1,"2897":1,"2918":2,"2919":2,"2933":1,"2940":1}}],["uses",{"2":{"8":1,"36":1,"46":1,"50":1,"89":1,"100":1,"114":1,"163":1,"206":1,"323":1,"487":1,"493":1,"552":1,"567":1,"583":1,"586":1,"587":1,"611":1,"692":2,"714":3,"718":2,"719":1,"743":1,"749":1,"1202":3,"1289":1,"1308":1,"1314":1,"1340":1,"1343":2,"1358":1,"1388":1,"1396":1,"1407":3,"1417":2,"1443":1,"1482":1,"1486":3,"1616":2,"1929":1,"1930":1,"1947":2,"1955":1,"1960":1,"1961":1,"1962":1,"1972":1,"1975":1,"1986":1,"2034":1,"2035":1,"2037":1,"2046":1,"2064":1,"2074":1,"2173":1,"2252":1,"2254":3,"2265":1,"2368":1,"2371":2,"2379":1,"2384":1,"2443":2,"2455":1,"2490":1,"2555":1,"2566":2,"2569":1,"2600":3,"2609":1,"2632":1,"2669":1,"2673":1,"2677":1,"2685":1,"2694":2,"2734":1,"2758":1,"2766":1,"2770":1,"2775":1,"2777":1,"2885":1,"2886":1,"2914":1}}],["username>",{"2":{"503":1,"1461":1,"2576":1,"2577":2,"2630":3,"2632":2}}],["username",{"2":{"442":2,"482":1,"539":3,"611":2,"1457":1,"1461":2,"2576":1,"2598":1,"2599":2,"2600":2,"2601":5,"2621":1,"2707":1,"2845":1}}],["user\`",{"2":{"307":2,"1425":1}}],["user",{"0":{"40":1,"53":1,"67":1,"72":1,"85":1,"101":1,"121":1,"140":1,"150":1,"165":1,"180":1,"193":1,"204":1,"214":1,"216":1,"225":1,"239":1,"252":1,"269":1,"280":1,"290":1,"299":1,"310":1,"321":1,"426":1,"472":1,"482":1,"488":1,"507":1,"629":1,"633":1,"639":1,"645":1,"647":2,"651":1,"1440":1,"1525":1,"1579":1,"1615":1,"1657":1,"1658":1,"1794":1,"1795":1,"1796":1,"1833":1,"1904":1,"1909":1,"2148":1,"2153":1,"2333":1,"2925":1},"1":{"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"86":1,"87":1,"88":1,"89":1,"90":1,"102":1,"103":1,"104":1,"105":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"141":1,"142":1,"143":1,"144":1,"151":1,"152":1,"153":1,"154":1,"166":1,"167":1,"168":1,"169":1,"170":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"194":1,"195":1,"196":1,"197":1,"205":1,"206":1,"207":1,"208":1,"209":1,"217":1,"218":1,"226":1,"240":1,"241":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"270":1,"271":1,"272":1,"273":1,"281":1,"291":1,"300":1,"311":1,"312":1,"322":1,"323":1,"324":1,"325":1,"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":1,"447":1,"448":1,"489":1,"490":1,"491":1,"492":1,"1441":1,"1442":1,"1443":1,"1444":1,"1526":1,"1527":1,"1528":1,"1529":1,"1530":1,"1797":1,"1798":1,"1905":1,"2149":1,"2334":1},"2":{"3":1,"4":1,"7":1,"15":1,"28":1,"31":5,"34":3,"49":3,"70":3,"75":3,"90":4,"93":1,"105":8,"114":1,"125":4,"134":1,"139":1,"143":1,"160":3,"167":1,"176":6,"182":2,"185":4,"191":4,"195":2,"196":3,"199":1,"201":2,"208":1,"210":1,"214":5,"222":4,"228":2,"229":1,"231":3,"238":1,"249":7,"277":2,"284":1,"285":1,"294":2,"303":1,"307":5,"312":2,"317":1,"324":1,"325":1,"332":1,"408":4,"424":1,"442":1,"472":5,"479":1,"482":4,"486":1,"487":6,"488":2,"490":3,"492":3,"497":1,"568":1,"587":1,"591":3,"613":1,"623":4,"625":5,"628":1,"629":1,"630":1,"631":1,"633":1,"634":1,"636":1,"639":1,"640":1,"643":2,"644":1,"645":4,"647":2,"648":2,"649":2,"650":1,"651":1,"652":1,"663":1,"673":1,"1319":1,"1326":1,"1377":1,"1378":1,"1406":3,"1407":35,"1408":3,"1422":2,"1424":1,"1425":2,"1426":1,"1440":4,"1441":4,"1456":2,"1459":1,"1460":1,"1464":5,"1465":2,"1466":2,"1479":1,"1481":1,"1485":2,"1511":4,"1518":1,"1521":1,"1526":5,"1527":2,"1530":1,"1579":1,"1594":2,"1595":2,"1599":1,"1622":7,"1628":4,"1629":1,"1630":1,"1632":2,"1651":4,"1655":1,"1656":2,"1657":2,"1658":4,"1662":4,"1695":1,"1696":1,"1736":2,"1737":1,"1783":1,"1785":2,"1791":2,"1794":1,"1795":1,"1796":1,"1827":2,"1828":2,"1829":1,"1831":2,"1832":1,"1833":1,"1844":3,"1849":4,"1917":1,"1918":1,"1932":1,"1938":3,"1942":1,"1947":1,"1948":1,"1949":1,"1950":3,"1954":1,"1956":5,"1957":2,"1976":3,"1979":1,"1981":4,"1982":2,"1986":3,"1987":3,"1989":2,"1990":2,"1994":1,"1998":2,"1999":1,"2004":1,"2005":2,"2006":3,"2046":1,"2063":3,"2065":1,"2066":3,"2072":4,"2073":3,"2074":2,"2075":1,"2159":1,"2160":3,"2161":1,"2162":2,"2163":1,"2164":2,"2165":1,"2166":1,"2167":2,"2168":3,"2170":2,"2174":2,"2182":1,"2183":3,"2184":5,"2205":1,"2206":1,"2209":1,"2210":1,"2211":2,"2224":1,"2270":14,"2277":1,"2279":1,"2280":2,"2283":9,"2293":3,"2299":1,"2302":2,"2303":1,"2307":1,"2308":3,"2309":7,"2310":4,"2311":4,"2312":4,"2324":1,"2333":1,"2337":1,"2338":1,"2339":1,"2374":2,"2389":1,"2393":1,"2395":1,"2397":1,"2398":4,"2406":1,"2409":1,"2411":4,"2447":2,"2448":2,"2449":1,"2453":1,"2454":3,"2462":1,"2467":1,"2568":2,"2569":2,"2570":1,"2576":2,"2582":1,"2583":1,"2585":1,"2586":1,"2587":1,"2598":1,"2601":1,"2603":2,"2621":2,"2636":2,"2645":5,"2661":1,"2665":1,"2676":1,"2704":1,"2720":1,"2721":6,"2722":2,"2746":1,"2747":1,"2749":2,"2750":10,"2775":1,"2777":2,"2785":1,"2787":2,"2872":1,"2877":1,"2905":1,"2914":1,"2925":1,"2933":3,"2941":2,"2942":1}}],["userspace",{"0":{"228":1,"449":1,"450":1,"451":1,"452":1,"453":1,"454":1,"1457":1,"1459":1,"1622":1,"2406":1,"2583":1,"2585":1,"2586":1,"2588":1,"2589":1,"2591":1},"1":{"450":1,"451":1,"452":1,"453":1,"454":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1,"2584":1,"2585":1,"2586":1,"2587":1,"2588":1,"2589":1,"2590":1,"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1},"2":{"74":2,"76":1,"134":1,"176":1,"191":3,"199":1,"201":2,"210":1,"222":1,"224":1,"228":4,"236":3,"241":2,"249":1,"253":2,"265":2,"268":2,"270":2,"275":1,"281":2,"288":2,"308":2,"317":1,"328":1,"333":2,"450":6,"451":6,"452":4,"453":3,"454":8,"613":1,"1457":2,"1458":2,"1459":1,"1464":2,"1465":3,"1466":2,"1479":1,"1621":3,"1622":3,"1844":2,"2066":2,"2406":1,"2409":1,"2583":5,"2584":1,"2585":3,"2586":3,"2587":2,"2588":5,"2589":5,"2590":1,"2591":1,"2600":1,"2603":1,"2720":1,"2721":1,"2900":1}}],["users",{"0":{"1420":1,"1421":1,"1777":1},"1":{"1778":1,"1779":1,"1780":1},"2":{"0":1,"9":1,"13":1,"19":1,"39":1,"52":1,"62":1,"70":1,"114":1,"118":1,"131":1,"139":1,"141":1,"166":2,"173":1,"209":2,"212":1,"228":1,"234":1,"243":2,"263":1,"276":1,"279":2,"283":1,"284":2,"304":1,"312":2,"331":2,"332":1,"364":1,"365":1,"378":1,"393":1,"408":5,"427":1,"445":1,"471":1,"472":1,"474":1,"480":1,"481":1,"492":1,"507":1,"508":1,"553":1,"576":1,"584":1,"616":1,"632":1,"663":1,"666":1,"759":1,"1312":1,"1340":1,"1418":1,"1421":1,"1422":2,"1427":2,"1457":4,"1458":1,"1463":1,"1464":1,"1528":1,"1587":1,"1623":1,"1657":1,"1775":1,"1790":1,"2302":1,"2324":1,"2406":2,"2409":1,"2447":1,"2448":1,"2452":1,"2453":3,"2454":1,"2583":2,"2598":1,"2600":2,"2603":1,"2614":2,"2619":1,"2630":1,"2631":1,"2707":1,"2721":2,"2740":1,"2743":1,"2746":1,"2750":1,"2829":1,"2894":3,"2895":1}}],["use",{"0":{"6":1,"17":1,"30":1,"32":1,"33":1,"164":1,"1342":1,"1516":1,"1761":1,"1824":1,"1935":1,"1999":1,"2006":1,"2302":1,"2398":1,"2441":1,"2936":1},"1":{"31":1,"34":1,"1517":1},"2":{"1":1,"7":1,"17":1,"25":1,"30":1,"31":1,"32":1,"33":1,"34":1,"36":1,"37":1,"43":1,"45":1,"49":2,"70":1,"74":1,"76":1,"80":1,"87":1,"89":1,"93":1,"94":3,"95":1,"99":1,"103":1,"107":1,"114":5,"118":1,"119":3,"126":1,"133":2,"134":9,"145":3,"160":5,"166":1,"167":1,"174":1,"176":15,"179":1,"190":1,"191":15,"194":2,"199":10,"203":1,"206":1,"208":2,"210":2,"217":1,"222":11,"232":1,"236":8,"240":1,"249":4,"256":1,"260":1,"266":2,"277":3,"285":4,"294":1,"302":1,"307":1,"308":8,"317":9,"320":1,"323":2,"328":1,"333":2,"360":1,"367":1,"369":1,"374":1,"386":1,"387":1,"390":1,"398":1,"405":1,"413":1,"427":1,"428":1,"435":1,"452":1,"458":3,"459":2,"461":2,"468":1,"487":3,"489":4,"492":1,"497":1,"499":2,"502":2,"503":1,"504":1,"510":6,"511":3,"512":2,"513":1,"514":2,"517":3,"518":1,"519":2,"523":1,"524":1,"526":2,"527":1,"528":1,"529":1,"530":1,"531":1,"532":1,"534":1,"536":3,"538":1,"540":1,"541":1,"544":2,"545":1,"557":1,"559":11,"562":2,"565":1,"566":3,"567":1,"568":1,"572":1,"573":2,"579":1,"586":1,"589":1,"594":1,"597":1,"598":1,"602":1,"611":2,"614":1,"620":2,"623":2,"625":1,"627":2,"628":1,"630":1,"631":1,"643":1,"645":2,"649":1,"654":1,"663":2,"668":2,"669":1,"670":1,"673":1,"678":1,"679":1,"680":1,"682":1,"683":1,"686":1,"688":1,"690":1,"692":1,"698":2,"700":2,"712":1,"714":12,"715":8,"716":2,"718":5,"722":2,"723":2,"726":1,"739":1,"743":1,"745":1,"751":2,"754":1,"759":1,"760":1,"762":1,"764":1,"765":7,"769":1,"794":1,"798":2,"802":1,"827":2,"831":1,"853":2,"860":1,"885":2,"890":1,"917":2,"925":1,"952":2,"959":1,"986":2,"993":1,"1020":2,"1027":1,"1054":2,"1061":1,"1088":2,"1095":1,"1122":2,"1129":1,"1156":2,"1163":1,"1189":1,"1190":1,"1192":2,"1195":1,"1197":1,"1198":1,"1200":5,"1201":5,"1202":1,"1210":2,"1212":2,"1216":1,"1243":1,"1244":1,"1245":7,"1249":1,"1250":1,"1264":1,"1266":7,"1281":2,"1294":2,"1296":7,"1298":1,"1299":2,"1300":6,"1310":1,"1312":2,"1313":1,"1316":3,"1319":2,"1324":1,"1327":1,"1343":3,"1344":1,"1345":1,"1348":1,"1351":2,"1355":1,"1361":1,"1363":1,"1365":2,"1366":1,"1375":2,"1376":1,"1378":1,"1385":2,"1387":1,"1401":2,"1402":2,"1403":1,"1406":1,"1407":9,"1410":2,"1413":1,"1414":1,"1415":1,"1416":1,"1417":2,"1421":1,"1422":3,"1425":2,"1427":1,"1432":2,"1433":2,"1434":2,"1436":2,"1440":3,"1442":2,"1444":1,"1445":1,"1448":1,"1451":2,"1457":1,"1458":1,"1459":2,"1460":1,"1461":1,"1464":7,"1465":1,"1466":4,"1467":1,"1474":3,"1475":1,"1477":2,"1485":1,"1486":2,"1511":2,"1520":1,"1523":1,"1526":2,"1529":2,"1531":1,"1532":1,"1534":1,"1538":1,"1547":1,"1548":1,"1550":6,"1551":4,"1572":1,"1583":2,"1584":1,"1587":1,"1588":2,"1589":2,"1597":1,"1599":1,"1600":1,"1603":1,"1606":1,"1613":1,"1615":1,"1616":1,"1617":2,"1618":1,"1621":1,"1624":2,"1627":3,"1656":1,"1658":1,"1664":1,"1675":1,"1676":1,"1733":1,"1735":1,"1760":3,"1763":1,"1773":2,"1775":3,"1776":1,"1778":1,"1779":1,"1782":4,"1824":2,"1826":1,"1827":1,"1828":1,"1838":4,"1840":1,"1844":2,"1845":1,"1849":2,"1917":1,"1925":1,"1927":1,"1931":2,"1932":1,"1933":1,"1936":1,"1938":1,"1941":2,"1947":1,"1948":1,"1951":2,"1953":1,"1954":10,"1960":1,"1961":1,"1962":4,"1963":1,"1967":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":5,"1978":1,"1980":1,"1983":2,"1986":1,"1988":1,"1996":1,"2002":1,"2033":1,"2034":1,"2035":1,"2036":3,"2037":1,"2039":3,"2040":2,"2041":1,"2046":1,"2047":1,"2050":1,"2058":4,"2060":1,"2066":2,"2068":1,"2072":2,"2074":2,"2075":1,"2157":1,"2160":3,"2161":1,"2168":2,"2170":1,"2172":1,"2175":5,"2177":1,"2179":1,"2181":1,"2182":1,"2184":2,"2200":1,"2212":1,"2252":1,"2253":1,"2254":2,"2257":2,"2258":2,"2260":2,"2265":1,"2267":1,"2268":3,"2269":6,"2272":1,"2273":1,"2277":1,"2278":1,"2281":2,"2282":1,"2285":1,"2287":1,"2290":2,"2291":1,"2293":1,"2294":1,"2302":2,"2303":2,"2309":1,"2310":3,"2311":2,"2312":4,"2322":3,"2323":2,"2367":1,"2368":1,"2370":1,"2372":2,"2375":3,"2376":1,"2377":2,"2379":1,"2384":3,"2389":1,"2390":1,"2401":2,"2403":1,"2406":1,"2407":2,"2408":1,"2410":6,"2411":3,"2421":1,"2422":3,"2424":1,"2427":2,"2428":1,"2459":2,"2462":2,"2465":1,"2474":1,"2477":1,"2481":1,"2483":1,"2493":1,"2495":1,"2503":1,"2509":1,"2544":2,"2548":1,"2554":4,"2560":1,"2561":1,"2563":1,"2566":1,"2569":1,"2576":1,"2579":1,"2582":1,"2583":3,"2584":1,"2585":1,"2586":1,"2587":3,"2588":1,"2594":1,"2599":2,"2601":1,"2605":1,"2607":1,"2610":1,"2620":2,"2621":2,"2622":1,"2627":1,"2630":1,"2633":6,"2636":1,"2638":1,"2644":1,"2645":3,"2652":1,"2657":1,"2658":1,"2664":1,"2669":4,"2675":1,"2676":2,"2678":1,"2680":1,"2684":4,"2688":1,"2689":1,"2694":1,"2695":1,"2697":2,"2698":2,"2699":2,"2702":2,"2708":1,"2710":2,"2713":2,"2719":2,"2721":8,"2723":1,"2728":1,"2747":1,"2748":3,"2749":3,"2750":3,"2751":3,"2775":1,"2776":3,"2783":1,"2786":3,"2788":4,"2789":1,"2790":1,"2791":2,"2792":1,"2846":2,"2847":1,"2849":2,"2850":2,"2851":1,"2852":1,"2857":2,"2861":1,"2864":1,"2865":2,"2868":1,"2870":1,"2871":1,"2873":3,"2874":1,"2876":1,"2879":1,"2882":3,"2887":1,"2895":1,"2896":2,"2899":2,"2904":1,"2905":4,"2917":1,"2919":2,"2920":1,"2921":4,"2923":1,"2924":1,"2927":1,"2930":2,"2931":1,"2941":2,"2942":1}}],["hm",{"2":{"2367":1}}],["hmcuconf",{"2":{"714":1,"715":1,"718":1,"765":1,"1245":1,"1296":1,"1300":1,"1550":1,"1551":1}}],["hc",{"2":{"2367":1,"2447":2}}],["hkcu",{"2":{"2324":1}}],["hrl",{"2":{"2294":1}}],["hrms",{"2":{"297":1,"308":1}}],["hl",{"2":{"2294":3}}],["hwdb",{"2":{"2470":1}}],["hw",{"2":{"1968":1}}],["hfuse",{"2":{"2496":2}}],["hf",{"2":{"1674":13,"1675":2,"1681":2}}],["hfdkb",{"2":{"205":1}}],["hz",{"2":{"764":1,"854":1,"856":11,"918":1,"921":6,"953":1,"955":6,"987":1,"989":6,"1021":1,"1023":6,"1055":1,"1057":6,"1157":1,"1159":10,"2875":1}}],["h>",{"2":{"714":2,"715":2,"718":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1296":2,"1300":2,"1402":1,"1550":2,"1551":2,"2035":1,"2750":1}}],["h1",{"2":{"673":1,"674":3}}],["hyphen",{"2":{"1587":1}}],["hyper",{"2":{"1374":1,"2403":2,"2565":2}}],["hypr",{"2":{"1374":1,"2522":2,"2523":1,"2528":1,"2565":2,"2644":1}}],["hypothetical",{"2":{"654":1}}],["hysteresis",{"2":{"114":1}}],["h87a",{"2":{"587":5}}],["h87g2",{"2":{"249":1}}],["hungarian",{"2":{"2880":3}}],["hundreds",{"2":{"1937":1}}],["hurts",{"2":{"2559":1}}],["hurt",{"2":{"2427":1}}],["hurry",{"2":{"1493":1}}],["huge",{"2":{"1616":1}}],["hum5",{"2":{"1680":1}}],["hum4",{"2":{"1680":1}}],["hum3",{"2":{"1680":1}}],["hum2",{"2":{"1680":1}}],["hum1",{"2":{"1680":1}}],["hum",{"2":{"1680":6}}],["humbert",{"2":{"681":1,"1340":1}}],["humans",{"2":{"587":1}}],["human",{"2":{"434":1,"493":1,"1327":1,"2566":1,"2776":1,"2804":1,"2941":1}}],["hub",{"0":{"1372":1},"2":{"249":1}}],["hub20",{"2":{"241":2}}],["hub16",{"2":{"241":2}}],["hues",{"2":{"2063":2,"2065":2,"2180":1}}],["hueu",{"2":{"587":2,"1661":1,"2062":1,"2174":1,"2525":1,"2526":1}}],["hued",{"2":{"587":2,"1661":1,"2062":1,"2174":1,"2525":1,"2526":1}}],["hue",{"0":{"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2194":1},"1":{"2104":1},"2":{"49":1,"111":1,"183":2,"210":3,"294":1,"328":1,"348":1,"563":2,"1662":4,"2062":4,"2063":44,"2069":4,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2173":2,"2174":6,"2175":4,"2179":1,"2194":12,"2197":2,"2447":2,"2525":6,"2526":4,"2750":13,"2771":1,"2870":4,"2871":4,"2887":3}}],["h2",{"2":{"222":1,"674":2}}],["hjson",{"2":{"191":1,"199":1,"210":1,"294":4,"667":2,"2721":1}}],["hnahkb",{"2":{"154":3,"160":1}}],["hpp",{"2":{"145":1}}],["http",{"2":{"371":1,"414":1,"458":1,"579":1,"608":1,"615":1,"1461":1,"1616":1,"2725":1}}],["https",{"2":{"2":1,"21":1,"196":1,"236":1,"370":1,"371":1,"373":4,"415":1,"427":1,"572":1,"577":1,"578":1,"608":1,"611":1,"614":1,"680":1,"681":5,"746":7,"747":1,"763":1,"1309":1,"1310":1,"1315":1,"1316":3,"1349":1,"1350":3,"1354":2,"1355":1,"1356":3,"1358":1,"1364":2,"1365":1,"1368":2,"1372":1,"1373":2,"1440":1,"1622":1,"1785":1,"2180":1,"2398":4,"2401":1,"2451":1,"2585":1,"2586":1,"2594":1,"2601":2,"2616":1,"2617":1,"2618":1,"2619":1,"2630":8,"2632":5,"2669":1,"2676":1,"2707":3,"2721":3,"2845":1}}],["html",{"2":{"335":1,"608":1,"1316":1,"1355":1,"1365":1}}],["ht32",{"2":{"130":1,"134":1}}],["hd44780u",{"2":{"1691":1}}],["hd44780",{"0":{"1690":1,"1698":1,"1700":1,"1701":1,"1702":1,"1704":1,"1705":1,"1707":1,"1709":1,"1711":1,"1713":1,"1715":1,"1717":1,"1719":1,"1721":1,"1724":1,"1726":1,"1728":1,"1730":1},"1":{"1691":1,"1692":1,"1693":1,"1694":1,"1695":1,"1696":1,"1697":1,"1698":1,"1699":2,"1700":1,"1701":1,"1702":1,"1703":2,"1704":1,"1705":1,"1706":2,"1707":1,"1708":2,"1709":1,"1710":2,"1711":1,"1712":2,"1713":1,"1714":2,"1715":1,"1716":2,"1717":1,"1718":2,"1719":1,"1720":2,"1721":1,"1722":2,"1723":2,"1724":1,"1725":2,"1726":1,"1727":2,"1728":1,"1729":2,"1730":1,"1731":2},"2":{"64":1,"145":1,"1693":7,"1695":2,"1696":4,"1711":1,"1715":1,"1724":1,"2721":2}}],["hse",{"2":{"328":1}}],["hseclk",{"2":{"308":1}}],["hs60v2",{"0":{"1317":1}}],["hs60",{"2":{"277":1}}],["hs",{"2":{"222":1,"266":1}}],["hsv888",{"2":{"2771":1}}],["hsvs",{"2":{"191":1}}],["hsv",{"0":{"2141":2},"1":{"2142":2},"2":{"49":1,"114":1,"160":1,"285":2,"308":1,"1407":7,"2064":1,"2067":22,"2074":11,"2075":1,"2142":2,"2182":5,"2184":2,"2191":7,"2194":2,"2198":24,"2750":1,"2771":3,"2870":1,"2871":1}}],["hsgw",{"2":{"37":2}}],["hierarchies",{"2":{"2646":1,"2666":1}}],["hierarchy",{"2":{"176":1,"625":1}}],["hich",{"2":{"2170":1}}],["hires",{"2":{"1979":8}}],["hiragana",{"2":{"1355":1,"2540":2}}],["himself",{"2":{"1340":1}}],["his",{"2":{"1340":1,"2418":1,"2429":1}}],["history",{"0":{"663":1},"2":{"2550":1,"2627":1}}],["historically",{"2":{"172":1,"189":1,"273":1,"276":1,"663":1,"2562":1,"2721":1}}],["historical",{"2":{"126":1,"127":1,"241":1,"245":1,"253":1,"270":1,"281":1,"750":1,"2560":1,"2583":1}}],["hint",{"0":{"675":1},"1":{"676":1,"677":1},"2":{"675":1,"2627":1}}],["hineybush",{"2":{"587":4}}],["hinder",{"2":{"531":1}}],["hi",{"2":{"266":1,"1837":1}}],["hillside48",{"2":{"176":1}}],["hillside",{"2":{"160":1,"168":2,"181":6,"191":1}}],["hits",{"2":{"1413":1,"1843":4,"2063":5}}],["hitting",{"2":{"683":2,"1596":1,"2310":1,"2372":1,"2411":1,"2632":1,"2643":1,"2789":1,"2921":1}}],["hit",{"2":{"114":1,"137":1,"347":1,"562":1,"684":1,"1345":1,"1413":1,"1487":1,"1493":1,"1596":4,"1756":1,"1783":1,"1789":1,"1791":1,"1843":5,"1955":1,"2063":7,"2286":1,"2294":1,"2301":3,"2310":4,"2323":1,"2380":1,"2671":1,"2894":1}}],["highest",{"2":{"553":1,"716":1,"1407":1,"1413":1,"1416":1,"1419":1,"1422":2,"1424":1,"1425":1,"1487":1,"1532":1,"1533":1,"1614":1,"1824":1,"1828":3,"1837":1,"1947":1,"1987":1,"1989":1,"2004":2,"2005":2,"2073":3,"2074":1,"2277":1,"2313":1,"2515":1,"2552":1,"2786":1,"2817":1}}],["higher",{"2":{"114":1,"125":1,"185":1,"397":1,"559":1,"562":1,"716":1,"1204":1,"1416":1,"1419":2,"1421":1,"1955":1,"1968":1,"2302":1,"2311":1,"2550":2,"2552":4,"2555":1,"2719":2,"2747":1,"2749":1,"2786":1,"2896":1,"2904":2,"2914":1}}],["highlight",{"2":{"492":1}}],["highlights",{"2":{"438":1}}],["highlighted",{"2":{"272":1,"1824":1}}],["highly",{"2":{"182":1,"720":1,"1458":1,"2212":1,"2489":1,"2631":1,"2723":1}}],["high",{"0":{"1979":1},"2":{"49":2,"92":1,"114":1,"243":2,"308":1,"335":1,"408":1,"559":3,"566":1,"567":2,"574":1,"613":1,"716":4,"745":1,"758":5,"1194":1,"1202":1,"1282":2,"1283":1,"1294":1,"1406":1,"1480":1,"1487":1,"1532":2,"1538":1,"1539":1,"1571":1,"1659":1,"1664":1,"1678":2,"1679":2,"1736":3,"1788":1,"1830":1,"1832":2,"1929":2,"1979":6,"2264":1,"2291":1,"2459":1,"2491":1,"2492":1,"2493":1,"2494":1,"2496":2,"2550":1,"2555":1,"2684":1,"2687":1,"2750":1,"2780":1,"2849":1,"2850":1,"2860":1,"2896":1,"2912":1,"2913":1,"2926":1}}],["hidden",{"2":{"2782":1,"2933":1}}],["hid4java",{"2":{"2050":1}}],["hidapi",{"2":{"2050":1}}],["hidraw",{"2":{"1329":1}}],["hidbootflash",{"2":{"2383":1}}],["hidboot",{"2":{"686":1}}],["hidusb",{"2":{"240":1,"683":1,"684":2,"686":4}}],["hides",{"2":{"2556":1}}],["hide",{"2":{"199":1,"1465":1}}],["hid",{"0":{"1323":1,"1329":1,"2047":1,"2054":1,"2056":1,"2384":1,"2812":1},"1":{"2048":1,"2049":1,"2050":1,"2051":1,"2052":1,"2053":1,"2054":1,"2055":2,"2056":1,"2057":2},"2":{"2":1,"34":1,"49":2,"50":1,"114":3,"154":2,"160":2,"199":2,"210":2,"236":1,"266":1,"308":1,"428":1,"560":1,"571":1,"573":1,"682":2,"686":1,"1323":1,"1329":4,"1330":1,"1347":1,"1348":1,"1353":1,"1621":1,"1782":1,"1829":1,"1976":3,"1979":1,"1983":4,"2009":2,"2045":1,"2047":2,"2049":4,"2050":7,"2051":2,"2052":11,"2054":1,"2056":1,"2174":1,"2367":1,"2381":1,"2383":1,"2384":6,"2385":1,"2411":2,"2468":1,"2469":1,"2503":1,"2534":1,"2550":1,"2555":1,"2721":1,"2744":1,"2812":1,"2822":1,"2833":2,"2877":1,"2921":1}}],["h7",{"2":{"49":1}}],["hhkbs",{"2":{"36":2}}],["hhkb",{"0":{"35":1,"36":1,"257":1,"258":1},"1":{"36":1},"2":{"35":3,"36":8,"222":2,"256":2,"257":1,"258":1,"285":1,"1358":1}}],["hebrew",{"2":{"2880":2}}],["heir",{"2":{"2170":1}}],["heights",{"2":{"1954":1}}],["height",{"2":{"111":1,"114":1,"1951":2,"1954":3,"1955":3,"1956":1,"1964":2,"2281":2,"2282":3,"2749":16,"2750":9,"2760":2,"2768":1,"2776":1,"2862":1}}],["henkan",{"2":{"1355":1,"2540":1}}],["hence",{"2":{"713":1,"1413":1,"1482":1}}],["hey",{"2":{"399":1,"400":1,"401":1,"402":1,"405":1}}],["her",{"2":{"1667":1}}],["hertz",{"2":{"716":1}}],["herringbone",{"2":{"197":4}}],["here",{"0":{"1335":1},"2":{"31":1,"201":1,"233":1,"264":1,"274":1,"282":1,"288":1,"292":1,"301":1,"313":1,"326":1,"362":1,"372":1,"379":1,"380":2,"383":1,"385":1,"386":1,"387":1,"390":1,"391":2,"392":1,"448":1,"510":1,"542":1,"558":1,"572":1,"591":1,"611":5,"617":2,"619":1,"622":2,"623":2,"627":1,"643":1,"666":1,"671":1,"678":1,"686":1,"716":1,"742":2,"745":1,"1309":1,"1310":1,"1316":1,"1337":1,"1343":1,"1346":1,"1362":1,"1372":1,"1375":1,"1406":1,"1407":1,"1427":1,"1432":1,"1440":2,"1458":2,"1460":1,"1464":1,"1486":1,"1511":1,"1512":1,"1531":1,"1534":1,"1545":2,"1585":1,"1606":4,"1611":1,"1612":1,"1619":1,"1664":1,"1773":1,"1840":1,"1941":1,"1958":1,"1983":1,"1987":1,"2004":1,"2005":1,"2050":2,"2052":1,"2060":1,"2074":1,"2170":1,"2180":1,"2181":1,"2259":1,"2266":1,"2301":1,"2302":1,"2305":1,"2310":2,"2311":2,"2312":1,"2322":1,"2388":1,"2398":2,"2409":1,"2410":1,"2411":1,"2416":1,"2420":1,"2423":1,"2425":2,"2426":1,"2427":1,"2459":2,"2467":1,"2468":1,"2472":1,"2496":2,"2499":1,"2516":1,"2556":1,"2560":1,"2579":1,"2583":1,"2585":1,"2594":1,"2614":1,"2626":1,"2627":1,"2628":1,"2630":1,"2641":1,"2642":1,"2665":1,"2669":1,"2671":1,"2676":1,"2709":1,"2713":1,"2721":1,"2723":2,"2782":1,"2793":1,"2843":1,"2879":1,"2886":1,"2897":1,"2901":1,"2905":1,"2922":1,"2924":1,"2925":2,"2930":1,"2932":1,"2934":1}}],["hecomi",{"2":{"154":2}}],["heated",{"2":{"2420":1}}],["heat",{"2":{"2064":1,"2418":1,"2420":3}}],["heating",{"2":{"2064":1,"2420":1,"2664":1}}],["heatmap",{"0":{"2064":1},"2":{"145":1,"176":2,"222":1,"2063":3,"2064":8,"2887":1}}],["heavily",{"2":{"1332":1,"1389":1,"1390":1,"1849":1,"2072":1}}],["heavy",{"2":{"160":1,"249":1,"251":1,"294":1,"1287":1,"2609":1}}],["healthy",{"2":{"684":1}}],["headings",{"0":{"674":1},"2":{"674":3}}],["heading",{"2":{"673":3}}],["headroom",{"2":{"134":2}}],["head",{"2":{"99":1,"366":1,"375":1,"376":1,"403":1,"1334":1,"1339":1,"2627":6,"2667":1,"2670":1,"2672":1}}],["headers",{"2":{"94":1,"145":1,"199":1,"222":3,"249":2,"294":3,"308":2,"333":1,"338":3,"350":1,"397":1,"616":1,"1937":1,"2719":2,"2878":1,"2879":1,"2880":1}}],["header",{"0":{"2725":1,"2759":1,"2767":1,"2880":1},"2":{"4":1,"134":1,"176":1,"191":6,"210":2,"222":1,"249":1,"277":1,"460":1,"510":1,"558":1,"591":1,"1628":2,"1656":1,"2450":1,"2457":1,"2476":1,"2487":2,"2500":1,"2605":1,"2719":4,"2758":2,"2759":2,"2760":3,"2761":3,"2762":2,"2766":2,"2767":8,"2768":3,"2769":2,"2770":3,"2771":2,"2772":2,"2773":2,"2877":1,"2878":2,"2879":3,"2880":4}}],["hexnumpad",{"2":{"2337":1,"2338":1,"2339":1}}],["hexadecimal",{"2":{"2237":1,"2239":1,"2241":1,"2243":1,"2322":1,"2875":2}}],["hex6c",{"2":{"222":1}}],["hex",{"2":{"94":1,"145":1,"199":1,"428":1,"444":1,"570":1,"669":2,"1312":1,"1362":6,"1466":1,"2052":1,"2221":1,"2324":2,"2375":1,"2376":1,"2377":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":2,"2401":1,"2410":3,"2411":4,"2425":1,"2426":1,"2494":2,"2495":6,"2496":1,"2497":4,"2580":3,"2582":1,"2600":1,"2607":3,"2608":1,"2622":3,"2847":1,"2941":1}}],["helo",{"2":{"1621":1,"1624":1}}],["helios",{"0":{"1394":1},"2":{"199":1,"1386":2,"1388":3,"1396":3,"1733":1,"2706":1,"2888":1}}],["helix",{"0":{"55":1},"2":{"55":52,"114":1,"133":1,"134":1,"145":1,"160":1,"222":1,"266":1,"311":6,"317":4,"1948":1}}],["held",{"2":{"145":1,"194":3,"320":1,"680":1,"1348":1,"1359":1,"1375":1,"1378":1,"1416":1,"1448":1,"1449":1,"1493":2,"1495":1,"1512":1,"1523":1,"1527":2,"1591":1,"1606":2,"1666":1,"1668":1,"1684":3,"1756":1,"1759":1,"1775":1,"1779":2,"1780":1,"1928":1,"1929":1,"1932":2,"1933":1,"1987":1,"1992":1,"1993":1,"2160":2,"2174":10,"2248":1,"2250":7,"2251":1,"2252":9,"2253":1,"2265":1,"2293":1,"2297":5,"2302":4,"2309":1,"2310":3,"2311":1,"2312":2,"2382":1,"2411":1,"2468":1,"2503":2,"2504":2,"2512":1,"2516":1,"2523":29,"2525":10,"2531":7,"2532":5,"2542":1,"2556":1,"2561":1,"2565":30,"2569":1,"2632":1,"2643":1,"2745":2,"2824":1,"2827":1,"2832":1,"2906":5,"2907":1,"2908":1,"2909":2,"2910":1,"2911":2,"2918":4,"2919":1,"2920":1,"2921":1,"2923":2}}],["helped",{"2":{"2629":1}}],["helper",{"2":{"49":1,"2270":1,"2417":1}}],["helpers",{"0":{"231":1},"2":{"49":1,"199":2,"222":1,"236":1,"285":1,"2559":1}}],["helping",{"2":{"2414":1,"2573":1}}],["helpful",{"2":{"677":2,"1512":1,"1788":1,"2004":1,"2177":1,"2271":1,"2421":1,"2553":1,"2554":1,"2574":1,"2890":1,"2919":1}}],["help=",{"2":{"487":1,"498":2}}],["helps",{"2":{"173":1,"297":1,"437":1,"534":1,"568":1,"1340":1,"1951":2,"2281":1,"2323":1,"2420":3,"2422":1,"2673":1,"2840":1,"2898":1,"2915":1}}],["help",{"0":{"412":1,"610":1,"2464":1,"2889":1},"1":{"2890":1,"2891":1,"2892":1},"2":{"132":1,"173":1,"228":1,"380":1,"450":2,"451":2,"452":2,"453":2,"458":2,"459":2,"467":2,"503":1,"542":1,"607":2,"610":1,"611":1,"613":1,"614":1,"624":1,"642":1,"670":1,"672":2,"680":1,"1418":1,"1421":1,"1434":1,"1487":1,"1497":1,"1518":1,"1619":4,"1628":1,"1849":1,"1940":2,"2072":1,"2263":1,"2317":1,"2399":1,"2410":1,"2415":1,"2416":1,"2421":1,"2428":1,"2434":2,"2459":1,"2461":1,"2464":1,"2465":1,"2503":2,"2541":2,"2549":1,"2559":2,"2605":1,"2610":1,"2621":1,"2627":3,"2664":1,"2673":2,"2719":1,"2721":1,"2723":1,"2748":6,"2810":1,"2882":1,"2883":1,"2889":1,"2890":1,"2903":1}}],["hello",{"0":{"1695":1,"2224":1},"2":{"23":1,"120":1,"483":1,"487":10,"489":1,"527":1,"1435":1,"1517":3,"1621":4,"1622":1,"1624":2,"1627":2,"1632":19,"1695":1,"1712":1,"2224":3,"2295":1,"2750":1}}],["hobbyist",{"2":{"2572":1}}],["hop",{"2":{"1333":1,"2932":1}}],["hopefully",{"2":{"617":1,"2936":1}}],["hope",{"2":{"245":1,"503":1,"1461":1,"2725":1}}],["hover",{"2":{"597":1,"2676":1}}],["housings",{"2":{"2420":1}}],["housekeeping",{"0":{"644":1,"645":1},"1":{"645":1},"2":{"75":1,"92":1,"277":1,"644":2,"645":2,"1632":3,"2270":2,"2750":7}}],["hours",{"2":{"414":1,"608":1}}],["home=",{"2":{"421":1,"422":1,"423":1}}],["homebrew",{"0":{"421":1},"2":{"421":1,"2384":1,"2594":1,"2617":1}}],["home",{"0":{"1701":1},"2":{"277":1,"289":1,"424":1,"430":1,"445":1,"450":1,"451":1,"454":4,"587":2,"1442":7,"1599":1,"1607":1,"1688":1,"1696":1,"1701":1,"1789":2,"2159":3,"2310":1,"2403":1,"2503":5,"2541":2,"2542":2,"2543":1,"2557":1,"2577":1,"2619":1,"2621":2,"2721":1,"2748":6,"2915":1,"2918":1,"2924":2}}],["hood",{"2":{"493":1,"668":1}}],["hoodrowg",{"2":{"222":1}}],["hooking",{"2":{"641":1,"642":1,"2030":1}}],["hooks",{"0":{"1658":1},"2":{"277":1,"284":1,"288":2,"298":1,"308":1,"624":1,"1620":1,"1658":1,"1838":1,"2058":1,"2207":1,"2291":1,"2293":2}}],["hook",{"0":{"1607":1,"2046":1},"2":{"199":1,"272":1,"641":1,"1467":1,"1579":1,"1581":1,"1614":1,"1628":1,"1632":1,"2030":2,"2683":1}}],["hooked",{"2":{"198":1,"563":1}}],["horizontally",{"2":{"1955":1,"1985":1,"2063":1}}],["horizontal",{"2":{"1933":1,"1955":1,"1962":1,"1970":1,"1979":1,"1983":1,"2750":1,"2862":1,"2864":1,"2871":1}}],["horrortroll",{"2":{"199":1,"285":1}}],["horn",{"2":{"176":1}}],["hole",{"2":{"2414":1,"2682":1}}],["holiday",{"2":{"176":1}}],["holds",{"2":{"195":1,"320":1,"1511":2,"1512":3,"1667":2,"1756":1,"2303":1,"2310":1,"2550":2,"2555":2,"2643":1,"2914":1,"2923":1}}],["holdings",{"2":{"222":1}}],["holding",{"0":{"1606":1},"2":{"137":2,"683":2,"1378":1,"1466":2,"1492":1,"1497":1,"1511":1,"1512":1,"1513":1,"1779":1,"1780":1,"1822":1,"1824":3,"1928":5,"1965":1,"1992":1,"1993":1,"2293":1,"2323":1,"2377":1,"2384":1,"2503":1,"2550":1,"2827":1,"2905":1,"2921":2,"2922":1}}],["hold",{"0":{"22":1,"195":1,"289":1,"320":2,"1383":1,"1513":1,"2309":1,"2569":1,"2570":1,"2902":1,"2906":1,"2912":1,"2913":1,"2918":1,"2919":1,"2923":1},"1":{"2903":1,"2904":1,"2905":1,"2906":1,"2907":2,"2908":2,"2909":2,"2910":2,"2911":2,"2912":2,"2913":2,"2914":1,"2915":1,"2916":1,"2917":1,"2918":1,"2919":2,"2920":2,"2921":1,"2922":1,"2923":1,"2924":1,"2925":1},"2":{"22":1,"112":4,"114":1,"134":2,"160":2,"176":2,"191":2,"194":8,"195":5,"199":3,"214":1,"217":3,"249":1,"289":6,"294":3,"297":3,"308":3,"320":7,"324":4,"325":4,"328":3,"562":18,"681":1,"683":2,"1345":1,"1359":1,"1374":28,"1383":1,"1416":1,"1434":1,"1449":2,"1490":1,"1492":1,"1493":2,"1495":1,"1497":1,"1504":1,"1512":5,"1513":2,"1527":2,"1583":1,"1588":1,"1604":3,"1606":6,"1610":1,"1618":1,"1756":1,"1758":1,"1759":1,"1775":1,"1778":3,"1779":2,"1780":2,"1824":1,"1828":2,"1931":1,"1932":1,"1965":3,"1992":2,"1999":1,"2252":1,"2302":1,"2309":32,"2310":16,"2311":4,"2312":6,"2320":2,"2337":2,"2383":1,"2397":2,"2411":1,"2417":1,"2420":2,"2514":1,"2522":28,"2528":29,"2562":1,"2563":1,"2564":1,"2565":1,"2569":4,"2570":3,"2571":1,"2605":4,"2643":1,"2644":29,"2652":1,"2721":2,"2847":5,"2862":1,"2867":1,"2900":1,"2902":2,"2903":1,"2904":1,"2905":1,"2906":10,"2907":1,"2908":4,"2909":6,"2910":4,"2912":19,"2913":14,"2914":2,"2915":5,"2916":1,"2917":3,"2918":27,"2919":7,"2920":11,"2923":12,"2924":1,"2938":4}}],["honor",{"2":{"176":1,"2583":1}}],["honeycomb",{"2":{"144":2}}],["hotkey",{"2":{"2159":1}}],["hotkeys",{"2":{"1523":1,"2156":1,"2159":1,"2916":1,"2918":1,"2920":1}}],["hot",{"2":{"2063":1,"2064":1,"2258":1,"2273":1,"2415":1,"2421":2,"2428":1}}],["hotdox76v2",{"2":{"191":1}}],["hotswap",{"2":{"122":1,"160":1,"191":1,"199":1,"210":1,"218":2,"222":8,"241":4,"266":1,"308":1,"481":1}}],["hotfix",{"2":{"114":1,"134":1}}],["hosts",{"2":{"2810":1}}],["hosting",{"2":{"680":1,"1621":1,"2451":1,"2721":1}}],["host",{"0":{"1436":1,"1834":1,"2842":2,"2859":1,"2878":1},"2":{"113":1,"114":1,"134":1,"160":2,"182":1,"190":2,"191":3,"195":1,"199":2,"210":1,"222":1,"263":2,"285":1,"303":2,"308":2,"317":1,"333":1,"390":1,"568":1,"572":1,"682":1,"1367":1,"1389":2,"1390":2,"1632":3,"1639":2,"1640":1,"1741":1,"1744":1,"1775":1,"1829":3,"1834":4,"1933":1,"1936":1,"1937":1,"1938":4,"1942":1,"1947":3,"1979":2,"1981":1,"1983":4,"1986":1,"2009":1,"2025":1,"2039":2,"2041":1,"2046":1,"2047":2,"2051":1,"2052":2,"2054":1,"2073":1,"2074":2,"2175":1,"2218":1,"2221":1,"2269":2,"2277":3,"2318":1,"2324":1,"2411":1,"2489":1,"2572":1,"2592":1,"2596":1,"2708":1,"2792":1,"2842":1,"2859":1,"2864":1,"2870":1,"2871":1,"2875":2,"2878":3,"2906":1,"2912":2,"2913":1,"2927":1}}],["hosted",{"2":{"93":1}}],["hostname",{"2":{"70":3}}],["however",{"2":{"553":1,"632":1,"641":1,"682":1,"687":1,"690":1,"700":1,"722":1,"751":1,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1285":1,"1294":1,"1348":1,"1353":1,"1406":1,"1409":1,"1464":1,"1466":1,"1486":2,"1497":1,"1512":1,"1539":1,"1544":1,"1587":1,"1664":1,"1666":1,"1684":3,"1790":1,"1932":1,"1954":1,"1955":2,"2004":1,"2049":1,"2050":1,"2219":1,"2253":1,"2258":2,"2266":1,"2268":1,"2274":1,"2310":1,"2313":1,"2319":1,"2323":1,"2324":1,"2368":1,"2389":1,"2475":1,"2476":1,"2492":1,"2498":1,"2557":1,"2606":1,"2609":1,"2651":2,"2659":1,"2660":1,"2661":1,"2670":1,"2702":1,"2713":1,"2719":1,"2764":1,"2877":1,"2881":1,"2912":1,"2930":1,"2934":1,"2940":1}}],["how",{"0":{"607":1,"611":1,"624":1,"1328":1,"1334":1,"1344":1,"1361":1,"1492":1,"1494":1,"1519":1,"1520":1,"1588":1,"1823":1,"1994":1,"1995":1,"2157":1,"2167":1,"2168":1,"2302":1,"2398":1,"2431":1,"2459":1,"2466":1,"2474":1,"2625":1,"2775":1,"2777":1,"2896":1,"2897":1},"1":{"608":1,"625":1,"1589":1,"1996":1,"1997":1,"1998":1,"1999":1,"2467":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"70":1,"76":1,"77":1,"90":1,"123":1,"138":2,"186":1,"188":1,"194":1,"263":1,"312":1,"378":1,"393":1,"469":1,"487":1,"488":1,"510":1,"559":1,"562":6,"585":1,"602":1,"608":2,"611":1,"614":1,"618":2,"624":1,"645":1,"662":1,"663":1,"666":1,"668":1,"670":1,"698":1,"800":1,"855":1,"857":1,"887":1,"919":1,"922":1,"954":1,"956":1,"988":1,"990":1,"1022":1,"1024":1,"1056":1,"1058":1,"1090":1,"1092":1,"1124":1,"1126":1,"1158":1,"1160":1,"1214":1,"1310":1,"1317":2,"1336":1,"1337":1,"1345":1,"1402":1,"1407":1,"1415":1,"1421":2,"1422":2,"1424":1,"1425":1,"1437":1,"1441":2,"1442":1,"1458":1,"1486":1,"1497":1,"1519":1,"1531":2,"1659":1,"1675":4,"1768":1,"1773":1,"1777":1,"1778":1,"1779":1,"1780":1,"1831":1,"1839":1,"1846":1,"1933":2,"1941":1,"1954":1,"1968":1,"1988":1,"2001":1,"2059":1,"2063":3,"2064":1,"2069":1,"2159":1,"2167":1,"2168":1,"2173":1,"2178":3,"2180":6,"2181":1,"2251":1,"2258":1,"2266":2,"2268":1,"2271":2,"2301":1,"2303":1,"2310":1,"2313":1,"2372":2,"2408":1,"2416":1,"2422":2,"2428":1,"2429":1,"2431":1,"2437":1,"2438":1,"2439":1,"2453":1,"2459":2,"2464":1,"2466":1,"2558":1,"2572":1,"2573":1,"2578":1,"2579":2,"2581":1,"2609":1,"2611":1,"2621":1,"2625":1,"2627":1,"2636":1,"2646":1,"2665":1,"2666":2,"2707":1,"2710":1,"2719":1,"2721":1,"2723":1,"2749":2,"2750":3,"2751":1,"2774":1,"2775":2,"2836":1,"2844":1,"2864":1,"2871":1,"2899":1,"2900":1,"2901":2,"2905":1,"2924":1,"2926":2,"2930":1,"2931":2,"2935":1,"2937":2}}],["h",{"0":{"558":1,"1460":1,"1625":1,"1628":1,"1846":1,"1957":1,"1996":1,"2069":1,"2137":1,"2139":1,"2409":1,"2447":1,"2450":1,"2883":1},"1":{"559":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"2140":1},"2":{"4":2,"5":4,"14":1,"25":1,"28":1,"31":2,"34":2,"49":1,"50":8,"65":3,"70":12,"73":2,"74":1,"75":2,"76":1,"86":2,"94":1,"114":6,"119":1,"134":1,"160":3,"169":2,"170":2,"173":3,"176":12,"184":2,"191":3,"199":12,"208":1,"210":13,"212":4,"222":10,"236":7,"246":1,"249":1,"266":12,"273":1,"277":2,"285":1,"294":1,"308":2,"328":1,"332":1,"333":3,"338":1,"369":1,"370":1,"427":1,"431":1,"441":1,"446":1,"447":1,"448":1,"450":2,"451":2,"452":2,"453":2,"458":2,"459":2,"460":1,"467":2,"510":2,"553":2,"556":1,"558":2,"587":3,"591":1,"616":1,"645":1,"658":1,"663":3,"664":1,"665":1,"667":3,"670":2,"671":4,"688":1,"698":1,"700":1,"701":1,"714":1,"715":1,"718":3,"723":1,"724":1,"745":1,"746":3,"747":3,"748":2,"751":2,"752":2,"753":2,"756":2,"758":1,"759":1,"762":1,"764":1,"765":5,"766":1,"767":1,"799":1,"800":1,"828":1,"854":1,"855":1,"856":1,"857":1,"858":1,"886":1,"887":1,"888":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"953":1,"954":1,"955":1,"956":1,"957":1,"987":1,"988":1,"989":1,"990":1,"991":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1192":1,"1195":1,"1198":1,"1200":4,"1201":4,"1202":1,"1203":1,"1205":1,"1206":1,"1210":1,"1213":1,"1214":1,"1243":1,"1245":7,"1264":1,"1266":2,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1294":1,"1296":1,"1297":1,"1298":1,"1300":1,"1316":1,"1324":2,"1328":1,"1330":1,"1342":1,"1351":1,"1365":1,"1369":1,"1389":1,"1393":1,"1402":1,"1407":1,"1410":1,"1412":1,"1421":1,"1427":1,"1428":2,"1432":4,"1443":1,"1457":3,"1458":1,"1460":7,"1465":1,"1466":6,"1468":1,"1471":1,"1472":1,"1473":1,"1474":2,"1475":1,"1476":1,"1477":1,"1478":1,"1479":4,"1482":1,"1483":2,"1484":2,"1485":1,"1486":1,"1487":2,"1495":1,"1496":2,"1497":1,"1512":1,"1516":2,"1521":1,"1527":1,"1538":1,"1539":1,"1540":1,"1550":1,"1551":1,"1573":1,"1583":1,"1584":2,"1588":2,"1589":1,"1591":1,"1592":1,"1601":1,"1613":1,"1616":4,"1619":2,"1649":1,"1655":2,"1656":1,"1657":1,"1659":1,"1660":1,"1661":1,"1670":1,"1672":1,"1677":1,"1680":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1724":1,"1734":1,"1735":1,"1780":1,"1782":2,"1787":1,"1788":1,"1789":1,"1790":1,"1825":1,"1829":1,"1830":1,"1840":1,"1843":1,"1845":1,"1915":1,"1916":1,"1918":1,"1923":3,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1942":2,"1948":1,"1950":1,"1951":2,"1960":1,"1961":1,"1962":1,"1971":1,"1972":1,"1973":2,"1974":1,"1976":2,"1983":2,"1985":3,"1986":1,"1987":9,"1989":1,"1990":1,"1991":1,"1994":2,"1995":1,"2006":1,"2007":1,"2033":1,"2034":1,"2035":2,"2036":1,"2037":1,"2039":1,"2041":1,"2042":1,"2043":3,"2049":1,"2060":1,"2063":1,"2067":1,"2068":1,"2138":1,"2140":1,"2159":2,"2172":1,"2174":1,"2175":1,"2176":1,"2181":1,"2182":1,"2184":1,"2185":1,"2186":1,"2187":1,"2191":8,"2194":4,"2198":1,"2199":2,"2200":1,"2213":1,"2220":1,"2252":1,"2264":2,"2265":1,"2266":1,"2267":2,"2268":1,"2269":1,"2280":1,"2281":1,"2286":1,"2289":1,"2294":2,"2302":2,"2312":1,"2315":2,"2320":1,"2321":1,"2323":1,"2324":1,"2368":1,"2377":2,"2384":2,"2407":3,"2408":1,"2409":6,"2411":5,"2427":1,"2444":2,"2447":21,"2495":1,"2503":3,"2535":3,"2551":1,"2554":1,"2556":2,"2598":2,"2601":1,"2621":1,"2643":1,"2645":1,"2678":1,"2684":1,"2687":1,"2689":1,"2697":1,"2698":1,"2699":1,"2700":1,"2702":1,"2705":1,"2712":1,"2716":1,"2719":3,"2720":1,"2721":6,"2745":1,"2747":1,"2748":10,"2749":11,"2750":7,"2756":1,"2757":1,"2771":1,"2775":4,"2776":7,"2777":2,"2788":2,"2844":1,"2862":1,"2878":2,"2879":1,"2880":121,"2883":3,"2884":1,"2885":1,"2887":2,"2901":1,"2903":2,"2905":3,"2912":2,"2913":2,"2914":2,"2915":1,"2917":1,"2918":1,"2921":4,"2923":2}}],["hazards",{"0":{"2778":1},"1":{"2779":1,"2780":1,"2781":1}}],["hamming",{"2":{"2293":1}}],["hammer",{"2":{"388":1}}],["habit",{"2":{"1497":1,"1518":1}}],["habits",{"2":{"195":1}}],["hargett",{"2":{"2937":1}}],["harmful",{"2":{"2421":1,"2422":1}}],["harming",{"2":{"538":1}}],["harr",{"2":{"2159":49}}],["harvest",{"2":{"2030":1}}],["hardwired",{"2":{"2419":1}}],["hardware",{"0":{"14":1,"559":1,"718":1,"1477":1,"1652":1,"1663":1,"1673":1,"1691":1,"1945":1,"2201":1,"2256":1,"2257":1,"2271":1,"2272":1,"2276":1,"2367":1,"2432":1,"2451":1,"2476":1,"2678":1,"2679":1,"2696":1,"2710":1,"2846":1},"1":{"1653":1,"1654":1,"2257":1,"2258":2,"2259":1,"2260":1,"2273":1,"2368":1,"2477":1,"2478":1,"2479":1,"2480":1,"2481":1,"2482":1,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2697":1,"2698":1,"2699":1},"2":{"14":2,"113":1,"114":1,"133":1,"141":1,"145":1,"163":2,"176":1,"191":4,"203":1,"236":1,"249":1,"277":1,"285":2,"294":1,"408":1,"556":1,"568":1,"620":1,"622":1,"623":3,"631":2,"632":2,"635":2,"681":2,"684":1,"711":2,"712":1,"713":2,"718":2,"720":1,"743":1,"746":1,"747":1,"755":1,"765":2,"1190":1,"1193":1,"1195":1,"1196":1,"1198":1,"1263":1,"1364":1,"1402":1,"1404":1,"1409":1,"1477":4,"1540":1,"1542":1,"1544":1,"1547":1,"1675":2,"1835":1,"1844":1,"1914":1,"1945":1,"1955":1,"1958":1,"1966":3,"1977":2,"1980":1,"1981":3,"2030":1,"2066":1,"2171":1,"2205":1,"2255":1,"2271":1,"2273":1,"2285":2,"2287":1,"2368":1,"2376":1,"2432":2,"2448":2,"2449":1,"2451":1,"2452":1,"2477":1,"2481":1,"2494":1,"2495":1,"2496":1,"2556":1,"2658":1,"2677":1,"2678":2,"2679":3,"2684":1,"2685":1,"2696":1,"2704":1,"2707":2,"2709":1,"2721":4,"2722":2,"2726":1,"2728":2,"2729":1,"2732":1,"2737":1,"2741":1,"2742":1,"2751":1,"2811":1,"2849":1,"2894":1,"2895":1,"2901":1,"2927":1}}],["hardline",{"2":{"2418":1}}],["hardcoding",{"2":{"746":1}}],["hardcoded",{"2":{"191":1,"1482":1}}],["harder",{"2":{"663":1,"2462":1,"2579":1}}],["hard",{"2":{"49":1,"92":1,"263":1,"405":1,"417":2,"514":1,"538":3,"617":1,"1789":1,"2182":1,"2440":1,"2453":1,"2572":1,"2630":1}}],["hate",{"2":{"427":1}}],["hat",{"0":{"1735":1,"1754":1},"1":{"1755":1},"2":{"285":1,"1732":1,"1735":12,"1741":2,"1754":1,"1755":1,"2594":1}}],["haierwangwei2005",{"2":{"160":1}}],["hacks",{"2":{"536":1}}],["hacking",{"2":{"377":1}}],["hackpad",{"2":{"210":1}}],["hacked",{"2":{"206":1}}],["hacky",{"2":{"145":1}}],["hack",{"2":{"114":2,"160":1}}],["happened",{"2":{"541":1,"617":1,"2211":1,"2911":1,"2942":1}}],["happen",{"2":{"430":1,"509":1,"650":1,"651":1,"684":1,"769":1,"1353":1,"1409":1,"1425":1,"2293":1,"2308":1,"2475":1,"2801":1}}],["happens",{"2":{"405":1,"577":1,"631":3,"645":1,"649":2,"1440":1,"1457":1,"1522":1,"1781":1,"1941":1,"2270":1,"2459":1,"2468":1,"2626":1,"2814":1,"2815":1,"2905":1,"2906":3,"2912":1}}],["happening",{"2":{"113":1,"649":1,"1602":1,"2377":1,"2384":1,"2921":2}}],["happy",{"2":{"119":1,"392":1,"1516":1,"2398":1,"2455":2,"2575":1}}],["haptics",{"2":{"209":1,"328":1,"1611":1}}],["haptic",{"0":{"1671":1,"1672":1,"1674":1,"1682":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1},"1":{"1672":1,"1673":1,"1674":1,"1675":2,"1676":2,"1677":2,"1678":2,"1679":2,"1680":2,"1681":2,"1682":2,"1683":1,"1684":2,"1685":2,"1686":2,"1687":2,"1688":2,"1689":2},"2":{"64":1,"114":2,"134":3,"145":1,"188":1,"191":1,"199":1,"209":2,"210":2,"222":1,"266":1,"649":1,"1672":14,"1674":21,"1681":1,"1682":1,"1683":3,"1684":4,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"2269":2,"2873":3,"2933":1}}],["hankaku",{"2":{"2540":1}}],["hanja",{"2":{"2540":1}}],["hangul",{"2":{"2540":1}}],["hang",{"2":{"358":1}}],["hangsheng",{"2":{"2560":1}}],["hangs",{"2":{"236":1}}],["hannah65",{"2":{"102":1}}],["handwiring",{"2":{"2417":1,"2901":1}}],["handwire",{"2":{"1295":1,"2416":2,"2428":1}}],["handwired",{"0":{"2455":1},"2":{"43":3,"49":1,"67":1,"72":1,"102":1,"114":2,"120":1,"122":1,"134":1,"160":2,"168":2,"181":3,"191":5,"199":3,"205":14,"210":1,"218":1,"222":7,"226":2,"241":1,"249":1,"253":6,"266":1,"277":3,"291":1,"294":2,"437":2,"1435":1,"2393":1,"2395":1,"2397":1,"2407":1,"2429":1,"2455":2,"2657":1,"2676":1,"2721":1,"2722":1,"2878":1}}],["hand88",{"2":{"222":1}}],["handful",{"2":{"130":1,"134":1,"160":1,"198":1,"210":1,"222":2,"283":1,"663":1,"2386":1,"2560":1,"2688":1,"2907":1}}],["hand",{"0":{"2413":1},"1":{"2414":1,"2415":1,"2416":1,"2417":1,"2418":1,"2419":1,"2420":1,"2421":1,"2422":1,"2423":1,"2424":1,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1},"2":{"114":1,"160":1,"176":1,"249":2,"277":1,"289":1,"317":1,"387":2,"566":1,"567":8,"1375":1,"1417":2,"1493":1,"1584":1,"1789":2,"2264":3,"2265":3,"2266":1,"2295":1,"2296":3,"2297":6,"2298":1,"2415":2,"2416":1,"2418":1,"2420":1,"2429":2,"2519":2,"2532":6,"2548":2,"2551":1,"2837":1,"2862":3,"2918":4,"2919":3}}],["handedness",{"0":{"566":1,"567":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2919":1},"1":{"567":1,"2264":1,"2265":1,"2266":1,"2267":1},"2":{"134":1,"176":1,"236":1,"566":2,"567":3,"1584":1,"1980":2,"2264":1,"2265":2,"2266":4,"2267":1,"2378":1,"2380":1,"2387":1,"2392":1,"2394":1,"2396":1,"2862":2,"2873":3,"2918":1,"2919":12,"2920":1}}],["handed",{"2":{"107":1,"199":1,"328":1,"2295":1,"2566":2,"2920":1}}],["handy",{"2":{"99":1,"628":1,"2162":1,"2554":1,"2613":1,"2892":1}}],["hands",{"0":{"2295":1,"2532":1},"1":{"2296":1,"2297":1,"2298":1,"2299":1},"2":{"94":1,"191":1,"199":2,"222":2,"231":3,"249":1,"289":1,"294":1,"566":1,"567":2,"1527":4,"1584":1,"1789":4,"1980":1,"2266":1,"2295":3,"2297":9,"2298":1,"2299":9,"2414":1,"2519":4,"2532":8,"2548":4,"2572":1,"2918":9,"2919":2,"2920":2}}],["handles",{"2":{"493":1,"711":1,"1288":1,"1354":1,"1583":1,"2008":1,"2168":1,"2556":1}}],["handle",{"0":{"2167":1,"2168":1},"2":{"134":1,"145":1,"190":1,"191":3,"199":2,"210":1,"214":1,"231":1,"236":1,"294":1,"307":2,"397":1,"487":1,"523":2,"630":1,"643":1,"644":1,"1333":1,"1409":1,"1465":1,"1497":1,"1526":1,"1527":1,"1778":1,"1779":1,"1958":1,"1976":1,"1981":2,"1987":3,"2008":1,"2050":1,"2167":1,"2298":1,"2303":2,"2311":1,"2746":1,"2749":11,"2750":18,"2928":1,"2930":1,"2933":1}}],["handled",{"2":{"105":2,"196":1,"559":2,"568":1,"628":1,"1425":1,"1460":1,"1511":1,"1780":1,"1939":1,"1971":1,"1992":1,"2009":1,"2051":1,"2293":1,"2301":1,"2721":1,"2750":1,"2933":1}}],["handlers",{"2":{"191":1,"277":1,"294":1,"2167":1,"2168":1}}],["handler",{"2":{"73":1,"191":1,"1202":1,"1289":1,"1543":1,"1956":1,"2270":4,"2283":1,"2757":1}}],["handling",{"0":{"16":1,"2002":1},"2":{"11":1,"50":2,"98":1,"114":1,"134":2,"160":1,"191":2,"199":2,"236":3,"266":4,"277":1,"285":3,"308":3,"317":2,"328":1,"400":1,"401":1,"562":8,"628":1,"1423":1,"1528":1,"1529":1,"1585":1,"1599":1,"1612":1,"1651":1,"1661":1,"1780":1,"1835":1,"2004":1,"2722":1,"2868":1,"2928":1}}],["hals",{"2":{"2732":1,"2738":1}}],["halve",{"2":{"1198":1,"2266":1}}],["halves",{"2":{"32":1,"45":1,"563":1,"567":1,"568":2,"1189":2,"1584":1,"2063":1,"2256":1,"2257":1,"2260":2,"2269":2,"2270":1,"2271":1,"2870":1}}],["halt",{"2":{"214":1,"2501":2,"2933":1}}],["hal",{"0":{"2738":1},"2":{"174":1,"698":1,"714":2,"715":2,"718":2,"765":1,"1200":2,"1201":2,"1245":1,"1296":1,"1300":1,"1550":1,"1551":1,"2677":1,"2738":1,"2739":1}}],["halberd",{"2":{"154":2}}],["halconf",{"2":{"50":2,"86":1,"714":2,"715":2,"718":2,"765":3,"1192":1,"1200":2,"1201":2,"1245":3,"1296":2,"1300":2,"1550":2,"1551":2,"2035":2}}],["halfkay",{"0":{"2381":1},"2":{"428":1,"571":1,"682":1,"686":1,"2381":3,"2383":1,"2384":1,"2837":1}}],["half",{"0":{"1193":1},"1":{"1194":1,"1195":1},"2":{"45":3,"107":2,"114":2,"160":1,"176":2,"191":2,"222":1,"236":1,"277":1,"563":5,"566":8,"567":2,"568":4,"572":1,"1189":1,"1190":1,"1193":3,"1194":1,"1195":1,"1196":2,"1197":4,"1202":2,"1204":1,"1584":3,"1660":3,"1829":1,"1846":1,"1932":1,"1933":1,"1971":1,"1976":3,"2063":2,"2069":1,"2074":1,"2172":1,"2184":1,"2257":1,"2260":1,"2262":2,"2266":1,"2271":2,"2371":1,"2419":1,"2519":2,"2548":2,"2704":2,"2775":1,"2864":1,"2870":1,"2871":1,"2873":14,"2919":2,"2931":1}}],["having",{"2":{"23":1,"160":1,"234":1,"412":1,"562":2,"603":1,"653":1,"746":1,"1204":1,"1206":1,"1315":1,"1329":1,"1378":1,"1419":1,"1449":1,"1466":1,"1497":1,"1602":1,"1616":1,"1617":1,"1844":1,"1991":1,"2066":1,"2162":2,"2268":1,"2290":1,"2323":1,"2473":1,"2583":1,"2644":1,"2673":1,"2684":1,"2721":1,"2744":1,"2786":1,"2791":1,"2822":1,"2915":1,"2942":1}}],["haven",{"2":{"164":1,"594":1,"1311":1,"1341":1,"2612":1,"2667":1}}],["have",{"0":{"608":1,"1335":1,"1338":1},"1":{"1339":1},"2":{"0":1,"1":1,"4":1,"7":1,"8":1,"9":1,"10":1,"14":2,"16":1,"19":1,"28":1,"36":1,"38":1,"39":1,"43":1,"45":1,"49":3,"50":1,"52":1,"57":1,"67":2,"69":1,"83":1,"86":1,"94":1,"98":1,"102":1,"114":1,"118":1,"122":1,"124":3,"128":1,"134":2,"142":2,"144":1,"151":2,"154":1,"168":1,"169":1,"172":1,"173":1,"175":1,"181":1,"182":5,"183":1,"189":1,"191":1,"195":1,"197":1,"198":1,"201":1,"206":1,"207":1,"208":1,"209":1,"212":3,"214":1,"220":1,"222":1,"224":1,"228":1,"231":1,"238":1,"240":1,"254":1,"255":1,"262":1,"268":1,"276":1,"277":1,"279":2,"283":4,"284":2,"294":1,"304":1,"383":1,"388":1,"393":1,"397":1,"405":1,"408":4,"412":1,"419":1,"421":1,"422":1,"423":2,"424":1,"456":2,"486":1,"487":1,"488":1,"490":1,"492":1,"493":2,"497":1,"510":1,"511":1,"514":1,"525":1,"527":1,"535":1,"536":1,"544":1,"545":1,"553":1,"556":2,"559":1,"563":1,"565":1,"572":1,"587":2,"595":1,"597":1,"602":1,"611":2,"612":1,"613":2,"614":1,"615":1,"616":1,"617":1,"618":2,"625":1,"632":1,"635":1,"641":1,"644":4,"654":1,"659":1,"663":5,"671":1,"673":1,"674":1,"675":1,"678":2,"680":1,"681":1,"682":2,"683":1,"684":1,"692":2,"699":1,"711":1,"720":1,"750":1,"759":1,"761":1,"765":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1197":1,"1216":1,"1242":1,"1244":1,"1245":1,"1263":1,"1266":1,"1283":1,"1284":1,"1297":1,"1308":1,"1310":1,"1312":1,"1318":1,"1319":1,"1337":1,"1339":2,"1340":1,"1341":1,"1350":1,"1351":2,"1356":1,"1362":1,"1363":1,"1364":1,"1365":1,"1368":1,"1375":1,"1379":1,"1395":2,"1402":1,"1406":1,"1409":1,"1410":1,"1413":3,"1414":1,"1419":1,"1420":1,"1421":1,"1427":1,"1436":1,"1438":1,"1441":1,"1456":1,"1458":3,"1459":1,"1461":1,"1464":2,"1465":2,"1466":3,"1471":1,"1475":1,"1477":1,"1479":1,"1484":1,"1486":1,"1492":2,"1493":3,"1497":2,"1511":1,"1516":3,"1521":1,"1527":1,"1532":1,"1536":2,"1540":2,"1583":3,"1585":1,"1591":1,"1596":1,"1603":2,"1606":2,"1614":1,"1616":2,"1621":2,"1635":1,"1655":1,"1660":1,"1665":1,"1674":1,"1677":1,"1733":1,"1759":1,"1775":1,"1776":1,"1787":1,"1789":3,"1936":1,"1942":1,"1949":1,"1950":1,"1954":1,"1955":1,"1976":1,"1977":1,"1978":1,"2009":1,"2036":1,"2063":1,"2171":1,"2176":1,"2178":1,"2254":1,"2258":1,"2260":1,"2265":1,"2266":1,"2271":3,"2273":2,"2279":1,"2280":1,"2285":1,"2286":1,"2291":1,"2293":1,"2301":1,"2302":1,"2303":4,"2310":3,"2313":1,"2321":1,"2322":1,"2323":3,"2376":1,"2379":1,"2381":1,"2384":1,"2386":1,"2391":1,"2398":2,"2399":1,"2401":1,"2403":1,"2410":4,"2412":1,"2415":1,"2421":2,"2422":3,"2424":2,"2425":1,"2427":1,"2428":2,"2430":1,"2441":1,"2443":1,"2445":1,"2446":4,"2447":1,"2453":2,"2455":1,"2457":2,"2459":1,"2469":1,"2471":1,"2473":2,"2474":1,"2475":1,"2476":1,"2490":1,"2492":1,"2494":1,"2499":1,"2501":1,"2545":1,"2552":1,"2554":2,"2555":1,"2556":1,"2557":2,"2558":2,"2560":1,"2561":1,"2562":3,"2564":1,"2565":1,"2572":2,"2573":1,"2575":1,"2576":1,"2577":1,"2580":2,"2582":1,"2583":1,"2587":3,"2588":1,"2589":1,"2590":1,"2594":1,"2601":2,"2605":2,"2607":2,"2609":3,"2613":1,"2619":2,"2622":1,"2625":3,"2626":2,"2627":2,"2628":1,"2629":1,"2630":2,"2631":1,"2633":2,"2648":2,"2650":1,"2651":2,"2658":1,"2662":1,"2664":2,"2667":1,"2671":1,"2676":1,"2678":1,"2680":1,"2683":1,"2685":1,"2687":1,"2688":1,"2696":1,"2705":1,"2707":2,"2710":1,"2714":1,"2715":1,"2720":1,"2721":5,"2724":2,"2725":1,"2742":1,"2744":2,"2747":1,"2749":3,"2750":1,"2766":1,"2776":1,"2784":1,"2787":1,"2788":2,"2793":2,"2877":1,"2879":1,"2883":1,"2895":1,"2900":1,"2902":1,"2904":1,"2905":1,"2919":1,"2925":1,"2926":1,"2930":5,"2936":1,"2942":1}}],["had60",{"2":{"222":1}}],["hadron",{"2":{"134":1}}],["hades",{"2":{"114":1,"218":2,"222":1}}],["had",{"2":{"7":1,"67":1,"86":1,"102":1,"116":1,"122":1,"124":1,"125":1,"138":1,"144":1,"154":1,"168":1,"172":1,"174":1,"181":1,"182":1,"185":1,"197":1,"233":1,"243":1,"245":1,"307":2,"331":1,"594":1,"1340":1,"1419":1,"1522":1,"2253":1,"2291":1,"2427":1,"2719":1}}],["hashbrowns",{"2":{"673":1}}],["hash",{"2":{"372":1,"405":3,"510":1,"587":1,"667":1,"669":1,"1686":1,"2503":1,"2527":1,"2537":1,"2547":1}}],["hasn",{"2":{"138":1,"202":1,"562":1,"594":1}}],["has",{"0":{"394":1},"2":{"1":1,"3":1,"7":1,"8":1,"14":2,"15":1,"25":1,"28":1,"31":1,"34":1,"49":3,"56":1,"57":1,"60":1,"67":1,"70":3,"82":1,"84":1,"86":3,"87":1,"90":1,"98":1,"99":1,"103":1,"109":1,"113":1,"114":2,"118":2,"123":2,"124":1,"126":1,"132":1,"138":2,"139":1,"141":1,"145":1,"148":1,"153":1,"157":1,"163":1,"164":1,"166":1,"167":1,"169":1,"172":1,"174":1,"175":3,"182":2,"184":1,"194":3,"196":1,"198":2,"199":1,"201":1,"202":1,"203":1,"206":1,"209":1,"212":2,"213":1,"217":1,"228":1,"230":1,"232":1,"233":3,"240":2,"243":2,"249":1,"262":2,"265":1,"271":1,"273":2,"277":1,"293":2,"302":1,"303":1,"305":2,"307":1,"312":4,"314":2,"315":1,"316":1,"317":1,"323":1,"331":3,"368":1,"371":3,"372":1,"373":1,"397":1,"405":1,"413":1,"432":1,"457":1,"468":1,"484":1,"522":1,"527":1,"536":1,"552":1,"554":1,"559":2,"562":1,"567":1,"573":2,"579":1,"580":1,"581":1,"582":1,"586":1,"594":2,"597":1,"617":1,"622":2,"624":1,"632":1,"635":1,"639":1,"642":1,"644":1,"645":5,"653":1,"655":1,"657":1,"663":1,"683":2,"684":1,"686":1,"692":2,"693":1,"698":1,"726":1,"750":1,"757":1,"763":1,"800":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1197":3,"1205":1,"1214":1,"1284":1,"1300":1,"1308":1,"1310":1,"1314":1,"1340":1,"1345":1,"1346":1,"1353":1,"1358":1,"1362":1,"1389":2,"1390":1,"1392":2,"1393":1,"1402":1,"1406":1,"1407":1,"1413":2,"1421":1,"1434":1,"1438":1,"1440":1,"1441":1,"1464":1,"1475":1,"1497":1,"1532":1,"1533":1,"1603":1,"1606":1,"1624":1,"1632":1,"1660":1,"1664":1,"1676":1,"1679":1,"1735":1,"1744":1,"1763":1,"1771":1,"1779":1,"1780":2,"1787":1,"1805":1,"1823":1,"1841":6,"1846":5,"1931":1,"1939":1,"1947":1,"1981":2,"1983":4,"2001":1,"2007":1,"2047":1,"2054":1,"2061":6,"2069":7,"2074":1,"2167":1,"2169":1,"2171":1,"2172":1,"2184":2,"2211":1,"2212":2,"2213":1,"2254":1,"2257":1,"2262":1,"2268":3,"2274":1,"2277":1,"2284":2,"2285":1,"2293":4,"2298":1,"2303":1,"2310":3,"2324":2,"2367":1,"2397":1,"2410":1,"2412":2,"2420":1,"2440":1,"2443":2,"2448":1,"2459":4,"2463":1,"2471":1,"2495":1,"2548":1,"2550":1,"2551":1,"2559":2,"2561":2,"2562":2,"2572":1,"2573":1,"2584":1,"2609":1,"2610":1,"2611":1,"2632":2,"2646":1,"2660":1,"2671":1,"2676":1,"2677":1,"2679":2,"2684":2,"2687":3,"2700":1,"2705":1,"2707":1,"2721":5,"2732":1,"2744":1,"2749":3,"2750":3,"2751":1,"2758":1,"2760":2,"2764":1,"2766":1,"2775":1,"2776":2,"2777":1,"2806":1,"2865":1,"2894":1,"2906":1,"2911":1,"2918":1,"2922":1,"2927":1,"2930":1,"2932":1,"2934":1,"2936":1,"2937":1}}],["c♯",{"2":{"1919":6,"2520":6}}],["cjoystick",{"2":{"1736":1,"1737":1}}],["c\\tuint16",{"2":{"1657":1}}],["cgram",{"0":{"1728":1},"1":{"1729":1},"2":{"1696":1,"1728":1,"1729":1}}],["cg",{"2":{"1375":1,"1479":4,"1480":4,"2519":7,"2548":7,"2916":1}}],["cédille",{"0":{"1352":1}}],["c8",{"0":{"1210":1}}],["c2²",{"2":{"692":2}}],["c2¹",{"2":{"692":2}}],["c2",{"2":{"690":1,"692":5,"1919":1,"2520":1,"2712":1,"2865":1}}],["c2json",{"0":{"437":1},"2":{"236":1,"437":3,"463":1}}],["c15",{"2":{"2662":1}}],["c14",{"2":{"2662":1}}],["c12832a1z",{"2":{"2276":1}}],["c13",{"2":{"1389":1,"1475":1,"2661":1,"2662":1,"2684":2}}],["c1²",{"2":{"692":2}}],["c1¹",{"2":{"692":2}}],["c1",{"2":{"690":1,"692":5,"764":1,"890":4,"1919":1,"2520":1,"2712":1,"2865":1}}],["c1ed",{"2":{"432":2}}],["c0²",{"2":{"692":2}}],["c0¹",{"2":{"692":2}}],["c0",{"2":{"690":1,"692":5,"696":2,"764":1,"2865":1}}],["ckeycode",{"2":{"2941":1}}],["ckeyrecord",{"2":{"630":1}}],["ck",{"2":{"1487":6,"1489":6,"2505":6}}],["ckled2001",{"2":{"160":1,"176":1,"209":4,"236":2,"1211":1}}],["c6",{"2":{"559":3,"712":2,"1468":1,"1547":1,"2377":1,"2384":1,"2411":1,"2684":1,"2713":1}}],["c5²",{"2":{"692":1}}],["c5¹",{"2":{"692":1}}],["c5",{"2":{"559":3,"690":1,"692":4,"712":2,"764":1,"1468":1,"1547":1,"1919":1,"2220":1,"2520":1}}],["c7",{"2":{"559":2,"568":1,"2271":1,"2713":1}}],["cdt",{"0":{"2651":1},"2":{"2650":1,"2651":2}}],["cdigitizer",{"2":{"1636":2}}],["cdeferred",{"2":{"655":1,"2750":1}}],["cd",{"0":{"430":1},"2":{"405":1,"416":5,"427":5,"430":1,"2401":1,"2494":1,"2601":1,"2748":2}}],["cdc",{"2":{"50":1,"2492":1}}],["cfloat",{"2":{"1479":1}}],["cfgr",{"2":{"698":1}}],["cfgr1",{"2":{"698":1}}],["cfg",{"2":{"391":2,"502":1,"513":1,"2501":2}}],["cformat",{"2":{"1":1,"51":1,"65":1,"199":1}}],["c3²",{"2":{"692":2}}],["c3¹",{"2":{"692":2}}],["c3",{"2":{"317":2,"690":1,"692":5,"1919":1,"1920":1,"2520":1,"2712":1}}],["c39",{"2":{"154":2}}],["cx",{"2":{"1840":1,"2060":1}}],["cxt",{"2":{"291":2,"294":2}}],["cx60",{"2":{"222":1}}],["csprintf",{"2":{"2882":1}}],["csr",{"2":{"2367":1}}],["cs5",{"2":{"1919":1,"2520":1}}],["cs4",{"2":{"1919":1,"2520":1}}],["csend",{"2":{"1442":4,"2225":2}}],["csg",{"2":{"1375":1}}],["csag",{"2":{"1375":1}}],["csa",{"2":{"1375":1,"1770":1,"2880":1}}],["cs3",{"2":{"726":2,"860":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1919":1,"2520":1}}],["cs2",{"2":{"726":2,"860":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1919":1,"2520":1}}],["cs1",{"2":{"726":2,"860":3,"925":3,"959":3,"993":3,"1027":3,"1061":3,"1095":3,"1129":3,"1163":3,"1919":1,"2520":1}}],["csx",{"2":{"724":1,"854":1,"857":4,"858":1,"918":1,"922":1,"923":1,"953":1,"956":1,"957":1,"987":1,"990":1,"991":1,"1021":1,"1024":1,"1025":1,"1055":1,"1058":1,"1059":1,"1089":1,"1092":1,"1123":1,"1126":1,"1157":1,"1160":1}}],["cstatic",{"2":{"645":1,"1441":1,"1948":1,"2278":1,"2749":1,"2750":2,"2754":1,"2793":1}}],["cstc40",{"2":{"311":4,"317":1}}],["css",{"0":{"344":1}}],["cs",{"0":{"730":1,"736":1},"1":{"731":1,"737":1},"2":{"266":1,"285":1,"723":2,"731":1,"737":1,"854":3,"857":15,"918":1,"922":2,"953":1,"956":2,"987":1,"990":2,"1021":1,"1024":2,"1055":1,"1058":2,"1089":2,"1092":6,"1123":2,"1126":6,"1157":2,"1160":6,"1375":2,"1770":2,"1919":1,"1953":2,"1960":2,"1961":2,"1968":2,"1973":2,"1975":2,"1976":16,"1978":3,"2368":1,"2520":1,"2749":4}}],["csy",{"2":{"236":1,"1092":3,"1093":1,"1126":3,"1127":1,"1160":3,"1161":1}}],["cbbrowne",{"2":{"1362":3}}],["cb1",{"2":{"1216":5}}],["cb1800",{"2":{"222":1}}],["cb",{"0":{"1210":1},"2":{"654":2,"655":1,"2495":1}}],["cb87v2",{"2":{"222":1}}],["cb87rgb",{"2":{"222":1}}],["cb65",{"2":{"222":1}}],["cbool",{"2":{"90":1,"105":1,"125":2,"185":2,"194":2,"195":1,"307":1,"324":1,"325":1,"591":1,"629":1,"650":1,"651":1,"1326":1,"1377":1,"1456":1,"1465":1,"1504":2,"1511":1,"1527":1,"1529":1,"1594":1,"1607":1,"1651":4,"1662":2,"1827":1,"1832":1,"1834":1,"1849":1,"1938":1,"1977":1,"2008":1,"2072":2,"2073":3,"2074":2,"2164":1,"2165":1,"2166":1,"2167":1,"2183":1,"2224":1,"2270":1,"2293":3,"2374":1,"2568":1,"2569":1,"2570":1,"2749":1,"2750":14,"2754":1,"2785":1,"2912":1,"2913":1,"2916":1,"2920":1,"2921":1,"2923":1}}],["cypress",{"2":{"2795":1}}],["cypher",{"2":{"222":2}}],["cycling",{"2":{"1843":1,"2063":2,"2176":1,"2180":1,"2316":1,"2320":1}}],["cycled",{"2":{"1846":1,"2069":1,"2324":1,"2864":1,"2871":1}}],["cycles",{"0":{"1373":1},"2":{"126":1,"156":1,"201":1,"224":1,"238":1,"279":1,"307":1,"749":1,"1373":1,"1410":7,"1483":2,"1484":1,"1489":3,"1696":1,"1955":1,"1974":2,"2173":1,"2505":3}}],["cycle",{"0":{"406":1,"1425":1},"2":{"63":1,"103":2,"105":1,"107":1,"116":1,"131":1,"141":1,"160":1,"163":1,"167":1,"172":1,"182":1,"184":1,"187":1,"190":1,"198":1,"201":1,"212":1,"217":1,"222":1,"224":1,"230":1,"233":1,"251":1,"262":1,"265":1,"268":1,"273":1,"275":1,"284":1,"303":1,"307":1,"327":1,"328":1,"332":1,"397":2,"399":1,"400":1,"401":1,"406":4,"559":1,"746":1,"766":2,"1283":1,"1362":1,"1425":12,"1456":1,"1478":1,"1535":1,"1537":1,"1538":1,"1540":1,"1557":1,"1669":1,"1842":4,"1843":9,"1849":1,"2062":6,"2063":21,"2069":1,"2072":1,"2174":2,"2268":1,"2320":1,"2324":1,"2325":2,"2370":2,"2495":1,"2508":1,"2509":2,"2518":4,"2525":2,"2526":6,"2533":2,"2850":1,"2864":1,"2871":1,"2887":7,"2896":2}}],["cyan",{"2":{"490":1,"492":1,"639":1,"1407":4,"2067":2,"2182":2,"2198":2}}],["cyberstar",{"2":{"222":1}}],["cccb1608",{"2":{"2398":1}}],["cc80",{"2":{"1918":3}}],["ccopyright",{"2":{"2457":3}}],["ccombo",{"2":{"1614":1}}],["cconst",{"2":{"272":2,"726":1,"802":2,"831":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1486":1,"1596":1,"1597":1,"1598":1,"1696":1,"1768":1,"1770":1,"1845":1,"2068":1,"2184":1,"2296":1,"2323":2,"2555":1,"2578":1,"2919":1,"2931":1,"2941":1}}],["cchar",{"2":{"1444":2,"2919":1}}],["ccw",{"2":{"307":4,"1661":8}}],["cc",{"0":{"1917":1},"2":{"210":3,"1368":2,"1917":1,"1918":7}}],["ccase",{"2":{"1985":1}}],["ccar",{"2":{"176":1}}],["ccache",{"2":{"133":1,"134":2}}],["cncl",{"2":{"2503":1,"2541":1}}],["cname",{"2":{"335":1}}],["cn",{"2":{"199":1}}],["cmsis",{"2":{"2676":1}}],["cmt",{"2":{"2565":1}}],["cmousekey",{"2":{"1926":1}}],["cmu",{"2":{"1922":1}}],["cmb",{"2":{"1612":4}}],["cmd=",{"2":{"2410":1}}],["cmd=yes",{"2":{"2410":2}}],["cmd",{"2":{"685":1,"1667":1,"1791":1,"1956":2,"2523":1,"2565":1}}],["cmatrix",{"2":{"623":1}}],["cmp",{"2":{"199":1,"1422":1,"2183":3}}],["cm",{"2":{"191":1,"1600":3,"1621":1,"1624":1}}],["cwd",{"2":{"2676":2}}],["cw",{"2":{"188":1,"191":1,"307":4,"1588":1,"1661":8,"2510":1}}],["cz",{"2":{"176":4}}],["czech",{"2":{"48":1,"266":1,"2880":9}}],["c4²",{"2":{"692":1}}],["c4¹",{"2":{"692":1}}],["c4",{"0":{"1393":1},"2":{"176":1,"189":1,"191":1,"559":3,"690":1,"692":4,"712":2,"764":1,"1386":1,"1388":5,"1393":1,"1468":1,"1547":1,"1919":1,"2520":1,"2712":1}}],["c++",{"0":{"2936":1},"2":{"176":1,"378":1,"387":4,"511":1,"609":1,"2050":1,"2650":1,"2651":2,"2656":1,"2673":1,"2936":3,"2937":1}}],["ctypedef",{"2":{"1407":1,"2270":1,"2309":1,"2310":1,"2760":1,"2762":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1}}],["cts",{"2":{"1263":1,"1265":1,"1266":4}}],["ctl",{"2":{"562":1,"2306":1,"2310":3,"2519":3,"2523":1,"2548":3,"2565":1,"2918":2}}],["ct",{"2":{"324":1,"325":1,"2306":3,"2307":1,"2308":3,"2309":2}}],["ctpc",{"0":{"304":1},"2":{"145":2,"191":1,"199":2,"304":1,"308":1}}],["ctrl+g",{"2":{"2339":1}}],["ctrl+x",{"2":{"2337":1}}],["ctrl+y",{"2":{"1761":1}}],["ctrl+z",{"2":{"1596":1}}],["ctrl+delete",{"2":{"1378":1}}],["ctrl+shift+i",{"2":{"2721":1}}],["ctrl+shift+z",{"2":{"1761":1}}],["ctrl+shift+a",{"2":{"1495":2}}],["ctrl+shift+backspace",{"2":{"1378":1}}],["ctrl+shift+enter",{"2":{"685":1}}],["ctrl+scroll",{"2":{"320":1}}],["ctrl+c",{"2":{"196":1,"1785":1,"2225":1,"2380":1}}],["ctrl+alt+del",{"2":{"1378":1}}],["ctrl+alt+shift+backspace",{"2":{"1378":1}}],["ctrl+a",{"2":{"196":1,"1495":2,"1785":1,"2225":1}}],["ctrl",{"2":{"131":2,"134":2,"160":1,"199":1,"231":2,"279":1,"347":1,"680":1,"1346":1,"1375":8,"1438":3,"1442":1,"1466":1,"1523":1,"1587":1,"1589":5,"1611":1,"1670":1,"1761":2,"1770":8,"1771":1,"1775":3,"1781":1,"1782":3,"2156":3,"2159":5,"2160":8,"2225":1,"2250":2,"2374":1,"2503":2,"2519":1,"2531":2,"2539":2,"2548":1,"2569":3,"2570":2,"2645":4,"2671":1,"2675":2,"2824":1,"2882":1,"2918":2,"2921":3,"2923":2}}],["cease",{"2":{"2895":1}}],["ce10f7642b0459e409839b23cc91498945119b4d",{"2":{"2398":1}}],["ceil",{"2":{"1962":1}}],["cells",{"2":{"1547":1}}],["celebrate",{"2":{"611":1}}],["centroid",{"2":{"2864":1,"2871":1}}],["centrally",{"2":{"1340":1}}],["centos",{"2":{"2594":1,"2619":1}}],["centered",{"2":{"1736":1,"1951":1,"2461":1}}],["center",{"2":{"191":1,"460":1,"1735":2,"1840":4,"1843":1,"2060":4,"2063":4,"2178":1,"2273":2,"2864":2,"2871":2}}],["cenum",{"2":{"307":1,"589":1,"591":2,"614":1,"627":1,"1440":2,"1599":2,"1611":1,"1612":1,"1843":1,"1937":1,"1942":1,"1986":1,"1987":1,"2063":1,"2162":1,"2170":1,"2322":1,"2905":1}}],["certainly",{"2":{"276":1,"1958":1,"2476":1,"2619":1,"2719":1,"2722":1}}],["certain",{"0":{"2004":1,"2163":1},"1":{"2164":1,"2165":1,"2166":1},"2":{"160":1,"544":1,"569":1,"572":1,"573":1,"638":1,"649":1,"687":1,"713":1,"1245":1,"1317":1,"1369":1,"1449":1,"1465":2,"1535":1,"1840":2,"1920":1,"1948":1,"2004":1,"2060":2,"2165":1,"2278":1,"2288":1,"2291":1,"2293":1,"2374":1,"2769":1,"2782":1,"2864":1,"2871":1,"2879":2,"2917":4,"2940":1}}],["ce",{"2":{"134":1,"199":1,"266":1,"271":1,"311":1,"322":1,"1386":2,"1388":4,"1396":4,"2161":1,"2400":1}}],["cest73",{"2":{"114":1,"222":1}}],["cpainter",{"2":{"2749":9,"2750":3}}],["cpnl",{"2":{"2503":1,"2542":1}}],["cplay",{"2":{"1479":2}}],["cp",{"2":{"509":1}}],["cpp",{"2":{"437":1,"1354":1,"2937":1}}],["cpi",{"2":{"236":1,"249":1,"1960":2,"1961":2,"1964":2,"1968":1,"1972":2,"1973":2,"1975":2,"1976":8,"1977":3,"1981":4,"1982":2,"1989":2,"1990":4}}],["cpus",{"2":{"2410":2}}],["cpu",{"2":{"114":1,"571":2,"716":1,"1190":1,"1193":1,"1196":1,"1287":1,"1289":1,"1290":1,"1291":1,"2047":1,"2410":1,"2734":1,"2929":1}}],["cpuclock",{"2":{"114":1}}],["cptc",{"2":{"92":1}}],["crux",{"2":{"2903":1}}],["cryptographically",{"2":{"2792":1}}],["cryptographic",{"2":{"2689":2}}],["crystal",{"2":{"2664":1}}],["crsl",{"2":{"2503":1,"2541":1}}],["crsel",{"2":{"2503":2,"2541":2}}],["crgblight",{"2":{"2184":2,"2191":1,"2198":1}}],["crgb",{"2":{"2066":1}}],["crippled",{"2":{"2559":1,"2560":9,"2562":1}}],["cribbit",{"2":{"2418":1,"2429":1}}],["criteria",{"0":{"2741":1},"2":{"397":1,"431":1,"2001":1,"2310":1,"2685":1}}],["critical",{"2":{"396":1,"401":1,"406":1,"490":1,"536":1,"685":1,"1552":1,"1936":1,"2721":1,"2722":2,"2729":1}}],["crin",{"2":{"222":1}}],["croatian",{"2":{"2880":3}}],["crossdiy",{"2":{"2560":1}}],["crossing",{"2":{"717":1}}],["cross",{"2":{"387":1,"1843":3,"2063":3,"2887":1}}],["cropped",{"2":{"114":1}}],["credential",{"2":{"2669":1}}],["credentials",{"2":{"312":1,"2669":1}}],["credits",{"0":{"1534":1,"1943":1}}],["credit",{"2":{"1434":1,"1534":1}}],["cream|",{"2":{"678":1}}],["cream||order",{"2":{"678":1}}],["cream",{"2":{"678":1}}],["creative",{"2":{"1421":1}}],["creating",{"0":{"1763":1,"2497":1,"2623":1},"1":{"1764":1,"1765":1,"1766":1,"1767":1},"2":{"297":1,"308":1,"419":1,"498":1,"616":1,"627":1,"1200":2,"1201":2,"1329":1,"1362":1,"1436":1,"1763":1,"1983":1,"2050":1,"2172":1,"2295":1,"2323":1,"2324":1,"2440":1,"2558":1,"2572":1,"2580":1,"2587":1,"2622":1,"2631":1,"2718":1,"2727":1,"2749":11,"2750":1,"2915":1}}],["creators",{"2":{"2562":1}}],["creator",{"2":{"114":1}}],["creates",{"2":{"427":1,"436":1,"437":1,"442":1,"443":1,"448":1,"487":1,"1535":1,"2562":1,"2633":1,"2651":1}}],["created",{"2":{"114":1,"251":1,"294":1,"371":1,"1340":1,"1378":1,"1407":2,"1418":1,"1655":1,"2006":1,"2301":1,"2425":1,"2426":1,"2457":1,"2560":1,"2577":1,"2588":1,"2590":1,"2627":3,"2636":1,"2676":2,"2707":1,"2721":1,"2750":3,"2937":1}}],["create",{"0":{"152":1,"2577":1,"2596":1,"2598":1},"2":{"76":1,"132":1,"134":2,"160":1,"172":1,"173":1,"175":1,"176":1,"249":1,"293":1,"305":1,"312":1,"314":1,"369":1,"397":1,"403":1,"406":1,"424":2,"427":1,"498":1,"576":1,"586":1,"594":1,"595":1,"611":1,"626":1,"664":1,"671":1,"678":2,"680":1,"763":1,"1308":1,"1347":1,"1353":1,"1407":1,"1457":1,"1465":1,"1466":1,"1479":1,"1480":1,"1494":1,"1496":1,"1521":1,"1614":1,"1621":1,"1655":1,"1761":1,"1767":1,"1775":1,"1828":1,"1844":2,"2006":1,"2066":2,"2291":2,"2310":1,"2311":1,"2322":1,"2323":1,"2398":3,"2424":1,"2472":1,"2499":1,"2549":1,"2570":1,"2572":1,"2577":2,"2587":2,"2596":1,"2598":2,"2599":1,"2623":1,"2628":1,"2629":1,"2633":1,"2707":1,"2749":2,"2750":1,"2751":1,"2754":1,"2777":1,"2784":1,"2844":1,"2899":1,"2901":1,"2937":2,"2942":1}}],["cradio",{"2":{"191":1}}],["craftwalk",{"2":{"134":1,"266":1}}],["crc8",{"2":{"114":1}}],["crc",{"2":{"107":1,"114":3,"176":1,"191":1}}],["crkbd",{"2":{"86":3,"94":1,"176":1,"222":1,"2266":3,"2560":1,"2603":1}}],["cvoid",{"2":{"34":1,"90":1,"105":1,"125":1,"185":1,"196":1,"622":1,"633":1,"639":1,"647":1,"742":1,"760":1,"769":1,"1319":1,"1407":2,"1481":1,"1545":1,"1585":1,"1595":1,"1695":1,"1785":1,"1849":1,"1950":1,"1990":1,"2039":1,"2046":1,"2050":1,"2052":1,"2075":1,"2184":1,"2270":1,"2307":1,"2645":4,"2678":1,"2679":1,"2680":1,"2750":10,"2755":1,"2942":1}}],["c",{"0":{"272":1,"304":1,"457":1,"467":1,"510":1,"1208":1,"1389":1,"1391":1,"1396":1,"1439":1,"1473":1,"1627":1,"1628":1,"1707":1,"1923":1,"2449":1,"2553":1,"2578":1,"2681":1,"2802":1},"1":{"1397":1,"1398":1,"1440":1,"1441":1,"1442":1,"1443":1,"1444":1,"1445":1,"1446":1,"1447":1,"1448":1,"1449":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1455":1,"1456":1,"1708":1,"2554":1,"2555":1,"2556":1,"2557":1,"2682":1,"2683":1,"2684":1},"2":{"28":1,"31":2,"34":3,"49":3,"50":6,"63":1,"64":1,"65":1,"74":1,"75":2,"77":1,"86":2,"92":1,"98":1,"105":2,"114":4,"134":5,"138":1,"145":2,"160":2,"169":1,"172":2,"176":3,"184":1,"189":3,"191":1,"196":1,"199":3,"208":1,"222":4,"231":2,"234":9,"236":2,"247":1,"249":1,"266":6,"272":1,"277":1,"285":1,"303":1,"304":2,"307":3,"308":2,"311":1,"317":2,"328":1,"348":2,"360":1,"369":1,"372":1,"374":1,"378":1,"387":4,"427":2,"428":2,"436":1,"437":4,"453":2,"457":5,"460":1,"467":9,"498":1,"510":3,"511":1,"527":1,"546":1,"558":1,"559":6,"566":1,"570":6,"586":2,"587":4,"589":1,"590":1,"591":2,"609":1,"612":2,"616":1,"621":3,"622":1,"623":2,"627":1,"645":3,"656":1,"657":1,"658":1,"664":1,"667":1,"688":1,"692":1,"714":3,"715":2,"717":1,"718":4,"719":1,"720":1,"722":1,"724":1,"726":1,"763":2,"765":3,"798":2,"802":1,"827":2,"831":1,"853":2,"856":1,"857":1,"858":1,"860":1,"885":2,"888":1,"890":1,"917":2,"921":1,"922":1,"923":1,"925":1,"952":2,"955":1,"956":1,"957":1,"959":1,"986":2,"989":1,"990":1,"991":1,"993":1,"1020":2,"1023":1,"1024":1,"1025":1,"1027":1,"1054":2,"1057":1,"1058":1,"1059":1,"1061":1,"1088":2,"1092":1,"1093":1,"1095":1,"1122":2,"1126":1,"1127":1,"1129":1,"1156":2,"1159":1,"1160":1,"1161":1,"1163":1,"1192":2,"1195":2,"1197":2,"1198":2,"1200":3,"1201":3,"1202":1,"1204":1,"1205":1,"1206":1,"1212":2,"1216":1,"1245":3,"1266":2,"1284":1,"1285":1,"1294":1,"1296":2,"1297":1,"1298":1,"1300":2,"1308":1,"1324":1,"1326":1,"1328":1,"1344":1,"1345":1,"1351":1,"1354":1,"1365":1,"1369":1,"1374":2,"1375":1,"1378":1,"1385":2,"1386":7,"1387":2,"1388":10,"1389":3,"1392":1,"1393":1,"1396":1,"1402":2,"1403":3,"1404":4,"1407":2,"1414":2,"1425":1,"1427":1,"1428":1,"1432":2,"1433":1,"1440":2,"1443":1,"1446":1,"1447":1,"1456":1,"1457":2,"1458":6,"1464":6,"1465":1,"1466":5,"1473":2,"1478":2,"1479":13,"1480":16,"1481":1,"1482":1,"1483":1,"1484":2,"1485":4,"1486":2,"1487":1,"1495":1,"1496":1,"1497":1,"1512":2,"1521":1,"1526":2,"1529":1,"1539":1,"1540":1,"1550":3,"1551":2,"1583":1,"1584":2,"1589":1,"1591":1,"1592":1,"1596":3,"1598":1,"1600":1,"1606":1,"1614":1,"1616":4,"1619":1,"1627":2,"1628":3,"1649":2,"1650":3,"1651":4,"1655":1,"1656":1,"1659":6,"1660":2,"1661":4,"1662":2,"1663":1,"1678":1,"1679":1,"1681":2,"1683":1,"1695":1,"1708":1,"1734":1,"1735":1,"1736":1,"1762":1,"1771":1,"1773":1,"1775":1,"1782":2,"1785":1,"1787":1,"1788":8,"1789":1,"1790":1,"1791":2,"1825":1,"1827":1,"1828":1,"1833":1,"1844":1,"1845":2,"1846":1,"1849":1,"1915":1,"1916":1,"1918":1,"1919":19,"1920":1,"1923":3,"1931":10,"1932":1,"1938":1,"1942":2,"1947":2,"1948":1,"1949":1,"1950":1,"1951":2,"1955":1,"1956":1,"1962":1,"1976":3,"1977":1,"1989":1,"1991":1,"1993":1,"1994":2,"1999":2,"2004":2,"2005":2,"2006":2,"2033":1,"2034":1,"2035":2,"2036":1,"2037":1,"2039":1,"2040":1,"2041":6,"2042":1,"2043":2,"2044":3,"2045":1,"2050":2,"2064":5,"2065":1,"2066":1,"2068":2,"2069":1,"2072":1,"2159":1,"2160":3,"2161":1,"2163":1,"2180":1,"2182":3,"2199":1,"2200":2,"2204":1,"2213":1,"2221":1,"2224":1,"2264":2,"2265":2,"2266":3,"2267":2,"2268":6,"2269":10,"2270":3,"2271":10,"2277":2,"2279":1,"2280":1,"2281":1,"2283":1,"2289":1,"2294":1,"2298":1,"2302":1,"2305":2,"2306":1,"2308":1,"2310":3,"2311":2,"2312":4,"2315":1,"2322":3,"2323":1,"2324":1,"2325":3,"2374":1,"2377":1,"2378":1,"2379":1,"2382":1,"2384":1,"2387":1,"2398":1,"2404":1,"2407":1,"2408":2,"2410":15,"2411":1,"2414":1,"2416":1,"2417":3,"2436":1,"2444":1,"2448":2,"2449":1,"2450":2,"2471":2,"2495":1,"2501":18,"2503":3,"2520":19,"2522":1,"2533":3,"2535":3,"2549":1,"2553":1,"2554":1,"2556":3,"2557":1,"2561":1,"2569":7,"2570":4,"2577":2,"2578":2,"2598":3,"2601":1,"2603":2,"2643":1,"2650":1,"2651":2,"2656":1,"2657":1,"2671":1,"2673":1,"2676":5,"2681":1,"2682":1,"2683":2,"2684":7,"2687":3,"2700":1,"2706":1,"2707":1,"2719":1,"2721":6,"2744":2,"2746":11,"2748":4,"2749":19,"2750":12,"2757":1,"2761":1,"2765":4,"2775":2,"2788":1,"2802":1,"2807":1,"2846":1,"2878":2,"2879":1,"2882":1,"2883":3,"2884":1,"2885":3,"2886":3,"2887":2,"2888":2,"2903":3,"2912":2,"2913":2,"2914":2,"2915":1,"2916":1,"2918":9,"2919":2,"2920":2,"2921":4,"2923":1,"2926":1,"2927":4,"2928":1,"2930":2,"2936":4,"2937":1,"2941":1}}],["cidoo",{"2":{"2560":1}}],["cif",{"2":{"1788":1}}],["cint16",{"2":{"2750":2}}],["cint",{"2":{"348":1}}],["cipulot",{"2":{"249":1,"285":1}}],["city42",{"2":{"210":1}}],["ciruitry",{"2":{"1675":1}}],["circ",{"2":{"2527":1,"2547":1}}],["circle",{"2":{"2173":1,"2750":4}}],["circles",{"2":{"138":1,"2750":2}}],["circumvent",{"2":{"2735":1}}],["circumflex",{"2":{"2527":1,"2547":1}}],["circumstances",{"2":{"209":1,"751":2,"754":1,"1317":1,"2004":1,"2268":1,"2271":1,"2398":1,"2676":1,"2704":1,"2749":1,"2750":1}}],["circular",{"0":{"1298":1},"2":{"93":1,"175":2,"176":2,"236":1,"698":2,"1296":2,"1298":3,"1970":1,"2746":1}}],["circuitry",{"0":{"2031":1},"2":{"2030":1}}],["circuits",{"2":{"1539":1}}],["circuit",{"0":{"1294":1,"1364":1},"2":{"49":4,"1364":2,"1368":1,"1409":1,"1539":1,"1675":1,"2386":1,"2388":1,"2391":1,"2427":1,"2459":4,"2678":1,"2849":1,"2850":1}}],["cirque",{"0":{"1967":1},"1":{"1968":1,"1969":1,"1970":1,"1971":1},"2":{"118":4,"175":2,"176":7,"190":1,"191":4,"249":3,"1967":4,"1968":20,"1969":5,"1970":3,"1971":3,"1987":1,"2007":1}}],["cie1931",{"2":{"84":1,"93":1}}],["cie",{"2":{"49":1,"2750":1}}],["ci",{"2":{"17":1,"51":1,"76":1,"134":1,"160":1,"164":1,"199":1,"222":2,"249":2,"294":2,"504":1,"613":1,"701":2,"2172":1,"2848":1}}],["caddy",{"2":{"2428":1}}],["cadence",{"2":{"393":1}}],["cadet",{"0":{"2248":1,"2531":1,"2834":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2253":1},"2":{"49":1,"188":1,"191":2,"249":1,"1588":1,"2248":1,"2250":7,"2251":1,"2252":3,"2253":3,"2531":8,"2834":1,"2882":1,"2933":1}}],["cag",{"2":{"1375":1}}],["ca",{"2":{"1375":1,"1616":1,"1770":1}}],["ca4",{"2":{"890":1}}],["ca3",{"2":{"890":1,"1216":2}}],["ca2",{"2":{"890":1,"1216":2}}],["ca1",{"2":{"890":1,"1216":3}}],["caveats",{"0":{"588":1,"1417":1,"1669":1,"1759":1,"1914":1,"2251":1,"2318":1,"2546":1,"2566":1},"1":{"589":1,"590":1,"591":1},"2":{"2658":1,"2721":1,"2786":1}}],["came",{"2":{"494":1,"561":1,"2862":1}}],["camps",{"2":{"173":1}}],["caution",{"2":{"598":1}}],["caught",{"2":{"412":1}}],["causing",{"2":{"141":1,"1479":1,"1979":1,"2491":1,"2659":1,"2757":1}}],["causes",{"2":{"613":1,"717":1,"1190":1,"1284":1,"1465":1,"1678":1,"2633":1}}],["caused",{"2":{"114":1,"134":1,"199":1,"210":1,"393":1,"1780":1}}],["cause",{"2":{"73":1,"88":2,"104":2,"127":2,"170":1,"212":1,"408":2,"613":1,"716":2,"1287":1,"1373":1,"1407":2,"1417":1,"1421":1,"1491":1,"1545":1,"1941":3,"1955":1,"1999":1,"2001":1,"2041":2,"2069":1,"2294":1,"2377":1,"2384":1,"2424":1,"2456":1,"2566":2,"2660":1,"2661":1,"2882":1,"2902":1}}],["cached",{"2":{"363":1}}],["cachyos",{"2":{"317":1,"2619":1}}],["cain",{"2":{"222":1}}],["caffeinated",{"2":{"222":1}}],["cables",{"2":{"1197":1,"2258":6}}],["cable",{"2":{"222":1,"683":1,"1191":1,"1194":1,"1197":1,"1975":1,"2254":1,"2257":3,"2258":1,"2259":1,"2260":1,"2267":3,"2271":1,"2397":2,"2419":1,"2423":1,"2424":1}}],["cathodes",{"2":{"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1}}],["cat24c512",{"2":{"746":2}}],["catb",{"2":{"608":1}}],["catch",{"2":{"523":1,"654":1,"1532":1}}],["catching",{"2":{"523":1}}],["cat",{"2":{"294":1}}],["caticorn",{"2":{"210":1}}],["category",{"2":{"1386":1}}],["categories",{"2":{"408":1}}],["categorize",{"2":{"110":1}}],["catered",{"2":{"378":1}}],["cater",{"2":{"182":1,"236":1,"308":1,"1189":1}}],["caterina",{"0":{"2379":1,"2492":1},"1":{"2380":1},"2":{"70":1,"566":1,"571":1,"682":1,"686":11,"2266":1,"2379":3,"2380":1,"2495":5,"2496":1}}],["casual",{"2":{"527":1}}],["cassini",{"2":{"222":1}}],["cassette42",{"2":{"154":2}}],["cases",{"2":{"25":1,"75":1,"176":1,"182":3,"194":1,"202":1,"234":1,"236":1,"246":1,"437":1,"509":1,"514":1,"540":1,"561":1,"641":1,"666":2,"667":1,"670":1,"700":1,"762":1,"1243":1,"1264":1,"1281":1,"1526":1,"1603":1,"1616":1,"1778":1,"1779":1,"1977":1,"2047":1,"2161":1,"2290":1,"2302":3,"2451":1,"2559":1,"2560":1,"2561":1,"2744":1,"2894":1,"2913":1,"2923":1}}],["case",{"0":{"2323":1},"2":{"11":1,"105":2,"145":1,"194":3,"195":2,"210":1,"213":1,"231":4,"273":1,"307":2,"324":1,"325":1,"391":1,"535":1,"591":6,"595":1,"629":2,"630":1,"655":2,"683":2,"769":1,"794":1,"1245":1,"1333":1,"1351":1,"1365":1,"1375":1,"1377":1,"1378":2,"1407":8,"1410":1,"1424":4,"1425":1,"1440":5,"1441":4,"1456":1,"1465":2,"1466":1,"1485":2,"1495":1,"1497":5,"1504":6,"1511":3,"1516":2,"1521":1,"1527":15,"1531":1,"1539":1,"1583":1,"1594":6,"1599":2,"1603":1,"1606":7,"1607":1,"1611":3,"1612":4,"1614":3,"1617":1,"1651":4,"1664":1,"1737":5,"1778":1,"1828":1,"1918":1,"1938":5,"1939":1,"1942":2,"1947":3,"1977":1,"1985":1,"1987":1,"1989":1,"1999":2,"2004":1,"2005":1,"2006":1,"2073":2,"2074":1,"2160":3,"2161":5,"2162":4,"2164":1,"2165":1,"2167":2,"2168":2,"2170":14,"2171":1,"2184":5,"2212":1,"2224":1,"2277":3,"2287":1,"2303":2,"2308":4,"2309":1,"2310":12,"2311":6,"2312":7,"2323":1,"2401":2,"2411":1,"2415":1,"2418":1,"2423":1,"2442":1,"2459":1,"2475":1,"2498":1,"2563":1,"2568":1,"2569":3,"2570":1,"2609":1,"2627":1,"2683":1,"2719":1,"2785":2,"2883":1,"2903":2,"2904":2,"2905":7,"2912":2,"2913":1,"2914":1,"2916":7,"2917":2,"2918":2,"2920":2,"2921":1,"2923":3}}],["carries",{"2":{"2258":1}}],["carryover",{"2":{"2252":1}}],["carefully",{"2":{"2421":1,"2936":1}}],["careful",{"2":{"531":1,"641":1,"643":1,"685":1,"1485":1,"2421":1,"2422":1,"2578":1}}],["care",{"2":{"236":1,"763":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1257":1,"1260":1,"1275":1,"1277":1,"1418":1,"1531":1,"1781":1,"2720":1,"2932":1}}],["carbo65",{"2":{"222":1}}],["car",{"2":{"222":1}}],["carve",{"2":{"113":1,"114":1,"133":1,"134":1}}],["card",{"2":{"111":2,"154":4,"1434":1}}],["captioning",{"2":{"2284":1}}],["capture",{"2":{"154":2,"194":1,"214":2,"312":2,"1485":1}}],["cap",{"2":{"1947":1,"2277":1}}],["capitalized",{"2":{"1587":2}}],["capitalization",{"2":{"176":1,"2165":1}}],["capitals",{"2":{"1587":1}}],["capital",{"2":{"222":1,"1493":2,"2643":1,"2775":1}}],["capacitors",{"2":{"1691":1}}],["capacity",{"2":{"145":1}}],["capability",{"2":{"164":1,"277":1,"312":1,"458":1,"1542":1,"2367":1,"2721":1}}],["capabilities",{"0":{"334":1,"335":1},"1":{"335":1,"336":2,"337":2,"338":2,"339":2,"340":2,"341":2,"342":2,"343":1,"344":1,"345":1,"346":1,"347":1,"348":1,"349":1,"350":1,"351":1,"352":1,"353":1,"354":1,"355":1,"356":1,"357":1},"2":{"145":1,"334":1,"1189":1,"2564":1,"2721":1,"2894":1}}],["capable",{"2":{"49":1,"138":2,"543":1,"712":1,"741":1,"1193":1,"1369":1,"1468":1,"1471":1,"1547":1,"1732":1,"2386":1,"2475":1,"2498":1,"2559":1,"2562":1,"2704":1,"2721":4,"2734":1,"2758":1,"2766":1,"2826":1}}],["capswrd",{"2":{"188":1,"191":1}}],["capsunlocked",{"2":{"154":3,"160":1,"205":4,"210":1,"249":1}}],["caps",{"0":{"137":1,"1587":1,"1588":1,"1590":1,"1595":1,"2305":1,"2510":1,"2854":1},"1":{"1588":1,"1589":2,"1590":1,"1591":2,"1592":2,"1593":2,"1594":2,"1595":2},"2":{"137":2,"145":2,"160":2,"176":5,"188":2,"191":3,"199":2,"210":2,"222":2,"231":2,"249":1,"308":1,"317":1,"369":1,"562":2,"563":1,"568":1,"587":2,"1344":3,"1346":1,"1351":1,"1449":3,"1527":1,"1538":2,"1540":4,"1587":18,"1588":9,"1589":2,"1591":6,"1592":6,"1593":9,"1594":8,"1595":6,"1597":1,"1619":1,"1687":1,"1756":2,"1829":1,"1830":2,"1832":1,"1833":13,"1834":3,"1849":1,"1947":1,"1950":1,"2072":1,"2073":2,"2074":4,"2181":1,"2182":2,"2183":1,"2269":1,"2277":1,"2280":1,"2305":5,"2306":1,"2308":2,"2323":1,"2325":1,"2503":5,"2510":3,"2519":17,"2533":1,"2538":5,"2548":17,"2556":1,"2847":1,"2850":2,"2854":7,"2860":2,"2928":1,"2933":1}}],["capslock",{"2":{"112":1,"137":1,"160":1,"1308":2,"2182":2,"2847":1}}],["calc",{"2":{"2503":1,"2542":1}}],["calculator",{"2":{"2496":1,"2503":2,"2542":2}}],["calculate",{"2":{"1840":4,"1955":1,"1987":1,"2060":4,"2178":1,"2375":1}}],["calculated",{"2":{"746":1,"751":2,"1249":1,"1741":1,"1955":1,"2372":2,"2749":1}}],["calculating",{"2":{"222":1,"1365":1,"2372":2}}],["calculation",{"0":{"2371":1},"1":{"2372":1,"2373":1,"2374":1},"2":{"50":1,"114":1,"210":3,"328":1,"333":1,"1964":2,"2372":1,"2374":2}}],["calibrating",{"2":{"1969":1}}],["calibration",{"2":{"249":1,"1969":1}}],["california",{"2":{"222":1,"435":1}}],["calice",{"2":{"222":1}}],["caller",{"2":{"1440":1}}],["called",{"2":{"49":1,"94":1,"187":1,"194":1,"214":1,"363":1,"391":1,"621":1,"623":2,"625":1,"628":2,"629":1,"631":1,"635":1,"641":1,"643":1,"644":2,"646":1,"649":1,"703":1,"730":1,"769":2,"806":1,"835":1,"864":1,"894":1,"929":1,"963":1,"997":1,"1031":1,"1065":1,"1099":1,"1133":1,"1167":1,"1220":1,"1247":2,"1268":2,"1280":1,"1302":1,"1329":1,"1347":1,"1407":1,"1409":1,"1422":3,"1440":1,"1545":1,"1579":1,"1581":1,"1585":1,"1594":1,"1664":1,"1680":1,"1698":2,"1700":1,"1701":1,"1702":1,"1773":1,"1775":1,"1827":1,"1829":1,"1831":1,"1940":1,"1956":2,"1979":1,"2001":2,"2004":1,"2007":1,"2164":1,"2171":2,"2283":6,"2284":1,"2293":4,"2302":1,"2303":8,"2323":1,"2324":1,"2412":2,"2459":2,"2475":1,"2494":1,"2554":1,"2577":1,"2626":1,"2643":1,"2645":1,"2687":1,"2707":1,"2786":1,"2916":1,"2922":1,"2928":1,"2933":2,"2935":1}}],["calling",{"2":{"160":1,"670":1,"693":1,"1449":1,"1588":1,"1735":1,"1759":1,"1949":1,"1956":1,"1992":1,"1994":2,"2279":1,"2283":1,"2303":2,"2749":1,"2750":3}}],["callback",{"0":{"185":1,"214":1,"658":1,"1525":1,"1999":1},"1":{"1526":1,"1527":1,"1528":1,"1529":1,"1530":1},"2":{"160":1,"185":1,"191":1,"196":1,"214":2,"222":1,"294":1,"317":1,"653":1,"654":4,"655":8,"715":1,"719":1,"1289":1,"1422":6,"1475":1,"1526":2,"1527":1,"1529":1,"1530":1,"1594":4,"1651":1,"1662":1,"1794":1,"1795":1,"1796":1,"1827":1,"1859":1,"1861":1,"1902":1,"1904":1,"1905":1,"1906":1,"1909":1,"1911":1,"1941":2,"1980":1,"1981":5,"1982":2,"1986":1,"1998":3,"2054":1,"2085":1,"2087":1,"2146":1,"2148":1,"2149":1,"2150":1,"2153":1,"2155":1,"2160":1,"2164":1,"2166":1,"2168":1,"2299":1,"2309":1,"2333":1,"2335":1,"2603":1,"2645":5,"2916":4,"2917":5,"2918":1,"2923":1}}],["callbacks",{"0":{"90":1,"105":1,"229":1,"654":1,"1578":1,"1615":1,"1651":1,"1662":1,"1785":1,"1848":1,"1938":1,"1981":1,"1982":1,"1998":1,"2071":1,"2374":1,"2645":1},"1":{"1579":1,"1580":1,"1581":1,"1582":1,"1849":1,"1999":1,"2072":1,"2073":1,"2074":1,"2075":1},"2":{"93":1,"105":1,"114":2,"160":2,"191":4,"229":1,"236":2,"249":1,"277":3,"298":2,"307":2,"308":1,"328":1,"572":1,"623":1,"654":1,"658":1,"719":1,"1192":2,"1422":2,"1595":1,"1785":1,"1831":1,"1835":1,"1940":1,"1982":1,"2035":1,"2411":1,"2645":1,"2722":2}}],["call",{"0":{"1657":1},"2":{"114":1,"134":2,"176":1,"191":1,"249":2,"266":1,"294":1,"323":1,"371":1,"396":1,"399":1,"400":1,"572":1,"591":1,"596":1,"625":1,"633":1,"639":1,"645":1,"654":1,"671":1,"700":1,"704":1,"732":1,"762":1,"810":1,"814":1,"818":1,"820":1,"838":1,"842":1,"846":1,"848":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1226":1,"1230":1,"1234":1,"1236":1,"1243":1,"1264":1,"1278":1,"1281":1,"1303":1,"1347":1,"1407":1,"1422":1,"1594":1,"1655":1,"1656":2,"1657":1,"1658":1,"1829":1,"1835":1,"1844":1,"1937":1,"1947":1,"1956":2,"2001":2,"2039":1,"2051":1,"2066":1,"2191":2,"2270":1,"2277":1,"2283":2,"2454":1,"2472":1,"2644":3,"2645":1,"2646":1,"2666":1,"2734":2,"2750":3,"2775":1,"2886":1,"2928":2,"2942":3}}],["calls",{"2":{"50":1,"114":1,"133":1,"134":1,"191":2,"199":1,"266":2,"277":1,"531":1,"644":1,"2191":1,"2227":1,"2302":2,"2454":1,"2757":1,"2933":1,"2942":4}}],["candidate",{"2":{"397":1,"454":1,"2721":1}}],["candidates",{"2":{"397":1}}],["candybar",{"2":{"43":4}}],["canonical",{"2":{"373":1}}],["cannot",{"2":{"302":1,"468":1,"686":1,"692":3,"752":1,"764":1,"1497":1,"1586":1,"1604":1,"1616":1,"1717":1,"1775":1,"1933":1,"1956":2,"1978":1,"2174":1,"2381":1,"2386":1,"2391":1,"2403":1,"2475":1,"2489":1,"2498":1,"2546":1,"2560":1,"2568":1,"2582":1,"2603":1,"2658":1,"2659":2,"2661":1,"2726":1,"2728":1,"2730":1,"2740":2,"2743":1,"2750":2,"2786":1,"2879":1,"2905":3}}],["cannonkeys",{"2":{"191":1,"199":1,"222":22}}],["canada",{"2":{"2880":1}}],["canadian",{"2":{"160":1,"249":1,"2880":5}}],["canary60rgb",{"2":{"253":2}}],["canary",{"2":{"253":2}}],["canceling",{"2":{"1378":1}}],["cancelled",{"2":{"1378":1,"1759":1}}],["cancelling",{"0":{"657":1},"2":{"1527":1}}],["canceled",{"2":{"320":1,"657":1,"2923":1}}],["cancel",{"0":{"2339":1,"2363":1},"2":{"160":1,"655":1,"657":3,"1759":2,"2339":1,"2363":1,"2503":2,"2541":2,"2644":2}}],["can",{"0":{"560":1,"561":1,"562":1,"589":1,"610":1,"1312":1,"1329":1,"1330":1,"1334":1,"1342":1,"1344":1,"1365":1,"2300":1,"2403":1,"2473":1},"1":{"1313":1,"1314":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"0":1,"1":1,"9":1,"19":1,"39":1,"45":1,"49":1,"50":2,"52":1,"60":1,"70":3,"73":1,"74":1,"80":1,"83":1,"98":1,"112":2,"119":2,"120":2,"124":1,"137":1,"149":1,"173":1,"179":1,"191":1,"194":1,"195":2,"199":1,"214":2,"217":1,"221":1,"228":1,"231":1,"233":1,"240":1,"262":1,"263":1,"288":2,"303":2,"306":1,"315":1,"320":1,"323":1,"328":1,"347":1,"367":1,"368":1,"369":2,"371":1,"373":1,"374":2,"378":1,"380":1,"383":2,"387":4,"390":3,"391":1,"393":1,"396":1,"397":1,"408":1,"409":1,"410":1,"411":1,"421":1,"422":2,"423":1,"427":3,"428":2,"431":5,"433":1,"434":1,"435":1,"441":1,"457":1,"458":1,"471":1,"472":1,"474":1,"475":2,"480":1,"481":1,"486":1,"487":1,"489":2,"490":1,"492":3,"493":1,"494":1,"495":1,"496":1,"497":1,"498":1,"499":1,"502":1,"503":4,"505":1,"506":1,"507":1,"508":1,"509":1,"510":3,"511":1,"512":1,"513":1,"531":1,"536":1,"538":1,"540":2,"541":1,"542":1,"545":1,"555":1,"556":1,"557":2,"558":1,"559":2,"560":1,"563":2,"566":1,"567":1,"568":2,"570":1,"573":6,"576":2,"577":1,"578":2,"579":1,"590":1,"591":1,"598":1,"603":1,"608":1,"610":1,"611":1,"614":1,"615":1,"616":1,"617":1,"618":1,"623":1,"625":1,"627":1,"628":1,"643":2,"644":2,"646":2,"649":1,"654":1,"655":3,"656":1,"657":1,"658":2,"663":2,"666":1,"667":1,"668":1,"669":1,"670":4,"671":1,"673":1,"675":1,"678":1,"680":1,"683":2,"684":3,"685":1,"687":2,"690":1,"692":1,"696":1,"698":3,"700":1,"712":1,"714":1,"716":3,"717":4,"718":2,"719":1,"740":1,"743":1,"745":1,"746":2,"747":2,"748":1,"755":1,"756":1,"759":1,"760":1,"762":1,"763":1,"764":1,"765":1,"769":2,"794":1,"856":1,"920":1,"921":1,"955":1,"989":1,"1023":1,"1057":1,"1091":1,"1125":1,"1159":1,"1193":1,"1194":1,"1195":1,"1198":1,"1200":1,"1201":1,"1202":2,"1203":1,"1204":2,"1205":1,"1206":1,"1210":1,"1243":1,"1244":1,"1245":2,"1247":1,"1249":1,"1264":1,"1266":1,"1268":1,"1280":2,"1281":1,"1283":1,"1285":1,"1286":1,"1293":1,"1294":1,"1295":1,"1298":1,"1308":1,"1309":1,"1310":2,"1313":2,"1315":1,"1316":2,"1317":1,"1319":1,"1321":1,"1322":1,"1323":1,"1324":1,"1326":1,"1328":1,"1329":2,"1335":1,"1337":1,"1340":2,"1345":2,"1350":1,"1351":1,"1354":1,"1355":1,"1361":1,"1362":1,"1363":1,"1365":1,"1368":1,"1370":1,"1374":2,"1375":6,"1376":1,"1377":1,"1378":1,"1385":3,"1387":1,"1389":1,"1390":1,"1393":2,"1402":1,"1403":1,"1406":5,"1407":5,"1412":1,"1413":1,"1416":3,"1417":2,"1419":1,"1421":4,"1422":4,"1423":1,"1425":1,"1427":2,"1428":1,"1430":1,"1432":2,"1434":1,"1435":2,"1436":1,"1440":1,"1441":1,"1442":6,"1444":2,"1445":2,"1446":1,"1449":1,"1457":2,"1458":2,"1459":2,"1461":2,"1462":1,"1464":7,"1465":3,"1466":4,"1467":3,"1468":2,"1471":1,"1474":1,"1475":2,"1476":1,"1477":1,"1478":1,"1479":6,"1481":1,"1482":2,"1483":1,"1484":2,"1485":2,"1486":1,"1487":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":2,"1497":3,"1511":1,"1512":1,"1520":2,"1521":1,"1522":1,"1523":1,"1526":1,"1527":1,"1529":1,"1532":2,"1535":1,"1544":1,"1545":2,"1548":1,"1552":1,"1585":2,"1587":1,"1588":1,"1594":1,"1599":2,"1600":1,"1601":1,"1602":1,"1603":3,"1604":3,"1606":2,"1607":1,"1611":2,"1612":3,"1614":1,"1615":1,"1616":2,"1619":1,"1620":1,"1622":2,"1636":2,"1649":1,"1651":1,"1655":4,"1656":1,"1658":2,"1659":6,"1660":2,"1661":1,"1662":1,"1664":2,"1670":1,"1680":2,"1681":1,"1696":1,"1698":1,"1732":3,"1733":1,"1734":1,"1735":2,"1736":2,"1756":1,"1759":2,"1760":2,"1764":1,"1771":2,"1773":2,"1775":2,"1778":2,"1781":2,"1782":1,"1785":1,"1787":1,"1788":1,"1789":3,"1827":1,"1828":2,"1832":1,"1834":1,"1838":1,"1840":3,"1843":2,"1844":2,"1845":1,"1846":1,"1849":1,"1859":1,"1861":1,"1924":1,"1927":1,"1929":3,"1930":1,"1931":2,"1932":2,"1933":1,"1934":1,"1935":1,"1936":1,"1937":1,"1938":1,"1939":1,"1942":2,"1948":2,"1949":2,"1950":1,"1954":2,"1955":1,"1956":2,"1958":2,"1959":1,"1962":2,"1964":1,"1968":2,"1970":3,"1971":1,"1976":2,"1978":3,"1979":3,"1981":3,"1982":2,"1983":4,"1991":1,"1992":1,"1994":2,"1997":1,"2001":1,"2004":2,"2007":1,"2009":1,"2032":1,"2034":1,"2035":1,"2037":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":2,"2049":1,"2050":3,"2051":1,"2058":1,"2060":3,"2063":3,"2065":1,"2066":2,"2067":1,"2068":1,"2069":1,"2072":1,"2074":2,"2075":1,"2085":1,"2087":1,"2156":1,"2161":2,"2162":1,"2164":1,"2165":1,"2166":1,"2167":1,"2170":1,"2171":1,"2175":1,"2176":1,"2177":1,"2180":1,"2181":2,"2182":3,"2183":1,"2184":2,"2198":1,"2199":2,"2200":3,"2206":1,"2207":1,"2212":1,"2213":1,"2214":1,"2221":1,"2222":1,"2251":1,"2252":2,"2253":1,"2254":1,"2257":1,"2258":1,"2264":2,"2265":2,"2266":3,"2267":1,"2268":3,"2269":1,"2270":4,"2271":2,"2272":1,"2273":1,"2279":2,"2280":1,"2283":2,"2284":1,"2285":2,"2286":2,"2287":3,"2288":1,"2290":1,"2291":2,"2293":1,"2294":1,"2297":1,"2298":1,"2301":2,"2302":1,"2309":1,"2310":2,"2311":1,"2312":2,"2315":1,"2317":1,"2319":1,"2321":1,"2322":2,"2323":4,"2324":3,"2337":1,"2338":1,"2339":1,"2368":2,"2370":1,"2374":1,"2383":1,"2388":1,"2393":1,"2395":1,"2397":1,"2398":5,"2401":2,"2405":1,"2407":2,"2410":4,"2411":5,"2415":1,"2416":3,"2418":2,"2419":1,"2420":2,"2422":4,"2423":2,"2424":2,"2425":3,"2428":2,"2432":1,"2434":1,"2438":1,"2443":1,"2447":3,"2448":2,"2450":1,"2451":1,"2453":1,"2454":1,"2456":1,"2457":1,"2459":4,"2464":1,"2465":1,"2466":2,"2468":2,"2469":2,"2472":2,"2473":1,"2474":1,"2475":1,"2476":1,"2479":1,"2494":1,"2495":2,"2496":2,"2497":1,"2498":1,"2499":1,"2501":3,"2516":1,"2550":2,"2551":2,"2553":1,"2554":6,"2555":1,"2559":2,"2560":1,"2562":2,"2565":3,"2566":3,"2568":2,"2569":1,"2572":3,"2573":1,"2576":4,"2577":3,"2579":1,"2580":1,"2583":3,"2585":3,"2586":1,"2587":2,"2589":1,"2590":2,"2592":1,"2593":1,"2603":2,"2605":1,"2607":1,"2609":1,"2610":1,"2611":1,"2612":1,"2621":2,"2622":2,"2627":4,"2628":1,"2629":1,"2630":1,"2632":4,"2633":7,"2643":2,"2644":1,"2645":2,"2651":2,"2655":1,"2659":1,"2660":4,"2661":4,"2662":1,"2664":1,"2665":1,"2671":2,"2675":1,"2676":4,"2678":2,"2679":1,"2684":3,"2687":2,"2688":1,"2689":3,"2694":1,"2695":2,"2700":1,"2701":1,"2702":1,"2703":1,"2705":1,"2707":1,"2709":1,"2712":2,"2713":1,"2715":1,"2719":1,"2720":1,"2721":6,"2722":2,"2723":1,"2724":2,"2725":1,"2728":1,"2746":1,"2747":4,"2748":2,"2749":37,"2750":13,"2756":1,"2757":2,"2760":1,"2768":1,"2783":1,"2788":2,"2789":2,"2791":2,"2792":1,"2804":1,"2812":1,"2827":1,"2844":1,"2845":2,"2864":1,"2869":1,"2871":1,"2877":1,"2879":1,"2882":2,"2883":3,"2884":1,"2885":3,"2886":3,"2887":2,"2892":1,"2894":2,"2895":1,"2899":1,"2903":5,"2904":2,"2905":9,"2912":4,"2913":3,"2914":2,"2921":3,"2923":3,"2927":2,"2930":1,"2932":1,"2933":2,"2934":1,"2936":2,"2937":2,"2938":2,"2939":2,"2942":8}}],["chunks",{"2":{"2283":1}}],["chunder",{"2":{"348":1}}],["chnu",{"2":{"1919":1,"2520":1}}],["chnd",{"2":{"1919":1,"2520":1}}],["ch9",{"2":{"1919":1,"2520":1}}],["ch8",{"2":{"1919":1,"2520":1}}],["ch7",{"2":{"1919":1,"2520":1}}],["ch6",{"2":{"1919":1,"2520":1}}],["ch582",{"2":{"2728":1,"2737":1}}],["ch5",{"2":{"1919":1,"2520":1}}],["ch4",{"2":{"718":1,"1919":1,"2520":1}}],["ch3",{"2":{"718":1,"1550":1,"1919":1,"2520":1}}],["chyn",{"2":{"718":1,"1300":2}}],["chy",{"2":{"718":1,"1477":1}}],["ch2",{"2":{"714":2,"715":2,"718":1,"1919":1,"2520":1}}],["ch16",{"2":{"1919":1,"2520":1}}],["ch15",{"2":{"1919":1,"2520":1}}],["ch14",{"2":{"1919":1,"2520":1}}],["ch13",{"2":{"1919":1,"2520":1}}],["ch12",{"2":{"1919":1,"2520":1}}],["ch11",{"2":{"1919":1,"2520":1}}],["ch10",{"2":{"1919":1,"2520":1}}],["ch1",{"2":{"713":2,"714":2,"715":2,"718":1,"719":1,"1477":1,"1919":1,"2520":1}}],["ch",{"2":{"199":1,"210":1,"616":1}}],["chrome",{"2":{"2582":1}}],["chromeos",{"2":{"191":1}}],["chromatic",{"2":{"1479":2,"1480":3,"1484":5}}],["chromatonemini",{"2":{"236":1}}],["christmas",{"2":{"49":2,"154":2,"181":2,"2174":1,"2176":2,"2177":2,"2178":4,"2525":1,"2887":1}}],["chosfox",{"2":{"2560":1}}],["chose",{"2":{"1347":1,"1476":1,"2592":1,"2612":1}}],["chosen",{"2":{"765":1,"1194":1,"1196":1,"1201":1,"1245":1,"1266":1,"1674":1,"1931":2,"2269":1,"2408":1,"2702":1,"2703":1,"2705":2,"2837":1}}],["choosing",{"0":{"1199":1,"2685":1},"1":{"1200":1,"1201":1,"1202":1,"2686":1,"2687":1,"2688":1,"2689":1,"2690":1,"2691":1},"2":{"1190":1,"1195":1,"1198":1,"2561":1,"2669":1}}],["chooses",{"2":{"1409":1,"2743":1}}],["choose",{"2":{"510":2,"512":1,"595":1,"623":1,"698":1,"1193":1,"1196":1,"1245":1,"1409":1,"1474":1,"1782":1,"1931":1,"2322":1,"2398":1,"2458":2,"2563":1,"2587":1,"2599":1,"2619":1,"2645":1,"2649":1,"2651":1,"2701":1,"2894":1,"2912":1,"2921":1}}],["chord",{"0":{"2920":1},"2":{"1438":1,"1599":1,"1606":3,"1609":1,"1616":1,"2285":1,"2291":1,"2293":12,"2918":2,"2920":2}}],["chorded",{"2":{"1378":1,"2284":1,"2293":1}}],["chording",{"2":{"572":1,"1377":1,"1596":1,"2915":1}}],["chords",{"2":{"562":1,"1478":1,"2166":1,"2290":1,"2291":1,"2293":1,"2919":2,"2920":1}}],["chordal",{"0":{"289":1,"2918":1,"2919":1},"1":{"2919":1,"2920":1},"2":{"289":4,"294":2,"2847":1,"2862":1,"2918":14,"2919":7,"2920":5}}],["chore",{"2":{"145":1,"222":1,"249":1,"308":2}}],["choc",{"2":{"154":2}}],["choco60",{"2":{"154":2}}],["choices",{"2":{"617":1,"2572":1,"2573":1,"2862":1}}],["choice",{"2":{"74":1,"124":1,"1548":1,"1607":1,"1773":1,"2050":1,"2253":1,"2290":1,"2293":1,"2310":1,"2651":1,"2652":1,"2657":1,"2658":1,"2685":1,"2707":2}}],["children",{"2":{"1532":1}}],["child",{"2":{"1532":5,"2722":1}}],["chili",{"2":{"154":2,"222":1}}],["chime",{"2":{"649":1,"1480":1}}],["chimera",{"2":{"154":8,"160":1,"2442":1}}],["chiffre",{"2":{"154":2,"210":1,"236":1}}],["chidori",{"2":{"154":2}}],["chipid",{"2":{"2501":2}}],["chip",{"2":{"130":1,"276":1,"545":1,"617":2,"720":1,"723":2,"731":1,"737":1,"743":2,"1368":1,"1675":1,"1951":1,"1954":1,"1960":1,"1961":1,"1968":1,"1973":1,"1976":4,"2171":1,"2367":2,"2368":3,"2424":1,"2439":1,"2495":2,"2605":1,"2661":3,"2705":2,"2722":1,"2728":1,"2747":1,"2749":11,"2811":1}}],["chipsets",{"2":{"2369":1}}],["chipset",{"2":{"2368":1}}],["chips",{"2":{"123":1,"617":1,"743":4,"746":2,"747":2,"755":1,"756":1,"1317":1,"1392":1,"2367":1,"2382":1,"2483":2,"2689":1,"2705":1,"2728":1}}],["chibios",{"0":{"10":2,"11":1,"69":1,"77":1,"263":1,"413":1,"414":1,"415":1,"417":2,"725":1,"765":1,"801":1,"830":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1215":1,"1245":1,"1266":1,"1292":1,"1549":1,"2035":1,"2677":1},"1":{"414":1,"415":1,"416":1,"417":1,"766":1,"767":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1550":1,"1551":1,"2678":1,"2679":1,"2680":1},"2":{"10":6,"11":1,"24":1,"49":5,"50":5,"65":4,"69":4,"73":1,"74":1,"77":1,"93":1,"108":2,"113":1,"114":9,"133":1,"134":8,"145":4,"160":6,"163":1,"176":11,"191":7,"199":6,"210":6,"222":2,"236":6,"249":3,"266":3,"277":1,"294":4,"308":2,"328":1,"405":5,"413":3,"414":2,"415":8,"416":7,"545":1,"552":1,"609":1,"692":1,"693":1,"698":1,"713":2,"718":2,"720":1,"725":1,"759":1,"765":1,"794":1,"801":1,"830":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1192":1,"1193":1,"1196":1,"1200":3,"1201":3,"1215":1,"1296":1,"1300":2,"1550":1,"1551":1,"1936":1,"2035":1,"2271":1,"2272":1,"2398":2,"2410":1,"2458":1,"2677":4,"2678":2,"2679":2,"2680":3,"2685":10,"2687":4,"2688":3,"2689":1,"2690":2,"2691":2,"2696":2,"2697":1,"2698":1,"2719":1,"2721":5,"2846":1,"2927":1}}],["chevron",{"2":{"2063":4,"2887":1}}],["chew",{"2":{"300":2,"308":1}}],["cherry",{"2":{"2883":1}}],["cherryb",{"2":{"222":4}}],["chere",{"2":{"2671":1}}],["cherish",{"2":{"176":1}}],["cheap",{"2":{"114":1,"134":1,"2498":1}}],["checkmark",{"2":{"2724":1}}],["checkbox",{"2":{"2652":1}}],["checklist",{"2":{"2562":1,"2718":1}}],["checklists",{"0":{"398":1,"2718":1},"1":{"399":1,"400":1,"401":1,"402":1,"403":1,"2719":1,"2720":1,"2721":1,"2722":1,"2723":1,"2724":1,"2725":1}}],["checker",{"2":{"2427":1}}],["checkerboards",{"2":{"154":3,"160":1,"222":1}}],["checked",{"2":{"405":1,"424":1,"504":1,"1512":1,"1613":1,"2005":1,"2007":1,"2266":1,"2398":4,"2633":2,"2786":1}}],["checkout",{"2":{"360":1,"403":2,"405":3,"415":2,"416":4,"417":2,"611":1,"1415":1,"1463":2,"2600":4,"2632":1,"2633":3,"2669":1}}],["checking",{"0":{"371":1,"1375":1},"1":{"1376":1,"1377":1,"1378":1},"2":{"176":1,"199":2,"308":1,"533":1,"541":1,"584":1,"586":1,"1378":1,"1445":1,"2166":2,"2288":1,"2312":1,"2580":1,"2608":2,"2622":1,"2687":1,"2718":1,"2904":1,"2912":1,"2924":1}}],["check",{"2":{"49":1,"87":1,"112":1,"114":2,"134":2,"145":2,"163":1,"176":6,"199":3,"202":1,"210":2,"222":2,"234":1,"236":1,"249":3,"254":1,"266":1,"277":2,"308":1,"333":1,"338":3,"359":1,"368":1,"371":2,"372":1,"377":1,"397":1,"433":3,"438":1,"572":2,"605":1,"613":2,"645":7,"683":1,"684":1,"685":1,"692":1,"751":1,"1297":1,"1312":1,"1330":1,"1335":1,"1361":1,"1367":2,"1368":1,"1375":2,"1422":2,"1425":3,"1440":1,"1445":1,"1458":1,"1462":1,"1465":1,"1511":1,"1519":1,"1522":1,"1536":1,"1613":1,"1615":1,"1616":1,"1807":1,"1808":1,"1810":1,"1811":2,"1813":1,"1814":3,"1816":1,"1817":4,"1819":1,"1820":5,"1827":1,"1844":3,"1968":2,"1983":1,"1987":1,"1989":1,"2005":1,"2023":1,"2066":3,"2172":1,"2176":1,"2211":3,"2268":2,"2303":1,"2312":2,"2313":1,"2410":2,"2427":7,"2441":5,"2459":1,"2464":1,"2495":1,"2496":1,"2501":2,"2609":1,"2610":1,"2630":1,"2632":1,"2662":1,"2669":1,"2677":1,"2784":1,"2786":1,"2853":1,"2875":2,"2882":1,"2937":1}}],["checksum",{"2":{"176":1,"2410":1,"2501":2}}],["checks",{"2":{"36":2,"160":1,"199":1,"236":1,"263":1,"308":1,"338":3,"359":1,"397":1,"438":1,"457":1,"645":1,"1377":1,"1422":3,"1519":1,"1826":1,"2004":1,"2303":2,"2310":1,"2378":1,"2380":1,"2385":1,"2600":1,"2633":1}}],["chconf",{"2":{"50":2,"86":1}}],["challenges",{"2":{"2727":1}}],["challenge",{"2":{"663":1,"1436":1}}],["chatter",{"0":{"1409":1},"1":{"1410":1,"1411":1,"1412":1,"1413":1,"1414":1},"2":{"1409":1}}],["chat",{"0":{"2890":1},"2":{"610":1,"617":1,"642":1,"1628":1,"2465":1,"2610":1}}],["chains",{"2":{"1287":1,"1532":2,"2682":1}}],["chained",{"2":{"1280":1,"2171":1}}],["chain",{"2":{"387":1,"701":2,"705":1,"708":1,"1282":2,"1293":1,"1304":1,"1307":1,"1374":1,"1532":7,"1533":1,"2467":1,"2848":2,"2870":1,"2876":1,"2912":1,"2933":2}}],["chaining",{"2":{"294":1}}],["chapter1",{"2":{"266":1}}],["charging",{"2":{"2678":1}}],["charge",{"2":{"49":2}}],["charlieplex",{"2":{"2437":1}}],["charlieplexed",{"2":{"884":1}}],["chartreuse",{"2":{"2067":2,"2198":2}}],["chars",{"2":{"249":1,"266":1,"1956":2,"2283":2}}],["character",{"0":{"1696":1},"2":{"510":1,"518":1,"1330":1,"1480":1,"1490":1,"1521":1,"1587":1,"1667":2,"1696":3,"1707":4,"1708":1,"1713":1,"1714":2,"1715":1,"1716":2,"1720":1,"1722":1,"1723":1,"1951":2,"1956":5,"2218":1,"2220":2,"2221":1,"2229":1,"2230":1,"2233":1,"2234":1,"2235":1,"2236":1,"2245":1,"2281":2,"2283":5,"2310":1,"2317":1,"2322":1,"2323":4,"2324":1,"2340":1,"2341":1,"2360":1,"2411":1,"2442":1,"2471":2,"2643":1,"2748":2,"2792":1,"2877":1,"2879":2,"2919":1}}],["characters",{"0":{"1352":1,"2473":1,"2474":1},"2":{"222":1,"613":1,"1440":2,"1493":2,"1499":1,"1502":1,"1509":1,"1521":1,"1522":1,"1529":2,"1693":2,"1696":3,"1709":1,"1711":1,"1728":1,"1730":1,"1780":2,"1948":1,"1956":1,"2218":1,"2221":1,"2222":1,"2227":1,"2229":1,"2231":1,"2233":1,"2278":1,"2283":1,"2322":1,"2323":5,"2324":1,"2342":1,"2355":1,"2374":2,"2411":4,"2427":1,"2469":1,"2473":1,"2474":1,"2545":1,"2546":1,"2566":1,"2719":1,"2761":1,"2762":2,"2839":1,"2845":2,"2849":1,"2877":1,"2879":4,"2905":1}}],["charactermatrix",{"2":{"31":1,"1957":1}}],["charon",{"2":{"222":1}}],["charue",{"2":{"222":2}}],["charybdis",{"2":{"176":2,"311":24,"317":3}}],["char",{"0":{"1276":1,"1707":1,"1709":1,"1711":1,"1713":1,"1715":1,"2227":1,"2229":1,"2231":1,"2233":1,"2235":2,"2342":1},"1":{"1277":1,"1708":1,"1710":1,"1712":1,"1714":1,"1716":1,"2228":1,"2230":1,"2232":1,"2234":1,"2236":2,"2343":1},"2":{"114":1,"134":1,"519":1,"1528":3,"1529":6,"1696":1,"1708":1,"1710":1,"1712":1,"1715":1,"1845":1,"1948":1,"1949":4,"1956":12,"1957":6,"2068":1,"2228":1,"2230":1,"2232":1,"2234":1,"2236":1,"2278":1,"2279":4,"2283":12,"2324":1,"2343":1,"2720":1,"2750":4,"2886":1,"2919":1,"2941":1}}],["chances",{"2":{"594":1,"2572":1,"2631":1,"2883":1}}],["chance",{"2":{"294":1,"594":1,"1316":1,"1609":1,"2469":1,"2719":1}}],["changing",{"0":{"2199":1,"2568":1,"2569":1,"2570":1,"2757":1},"2":{"194":1,"202":1,"233":1,"236":1,"559":1,"596":1,"655":1,"1407":2,"1409":1,"1828":1,"2001":1,"2173":3,"2182":1,"2372":1,"2463":1,"2466":1,"2474":1,"2749":12}}],["changelist",{"0":{"114":1,"134":1,"145":1,"160":1,"176":1,"191":1,"199":1,"210":1,"222":1,"236":1,"249":1,"266":1,"277":1,"285":1,"294":1,"308":1,"317":1,"328":1,"333":1}}],["changelogs",{"2":{"266":1,"407":1}}],["changelog",{"0":{"9":1,"19":1,"39":1,"52":1,"66":1,"78":1,"96":1,"115":1,"135":1,"146":1,"161":1,"177":1,"192":1,"200":1,"211":1,"223":1,"237":1,"250":1,"267":1,"278":1,"286":1,"295":1,"309":1,"318":1,"329":1},"1":{"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1,"330":1,"331":1,"332":1,"333":1},"2":{"99":1,"160":2,"397":3,"403":1,"411":2,"2897":1}}],["changed",{"0":{"1579":1,"1581":1},"2":{"14":1,"90":1,"114":1,"141":1,"145":1,"169":1,"176":1,"182":1,"186":1,"191":1,"199":1,"202":1,"203":1,"240":1,"256":1,"307":1,"308":1,"397":1,"457":4,"497":1,"611":2,"622":2,"623":4,"1195":1,"1198":1,"1202":1,"1407":1,"1412":1,"1423":1,"1579":1,"1581":1,"1602":1,"1669":1,"1734":1,"1773":1,"1828":1,"1840":1,"1953":1,"1956":2,"1981":2,"1983":4,"1992":1,"2049":1,"2060":1,"2266":1,"2297":1,"2321":1,"2323":1,"2333":1,"2335":1,"2398":1,"2557":1,"2633":3,"2645":7,"2905":2,"2942":3}}],["changesets",{"2":{"182":1}}],["changes",{"0":{"5":1,"20":1,"40":1,"46":1,"47":1,"53":1,"61":1,"66":1,"67":1,"68":1,"72":1,"78":1,"79":1,"85":1,"91":1,"96":1,"101":1,"106":1,"115":1,"121":1,"129":1,"131":1,"135":1,"140":1,"146":1,"150":1,"155":1,"161":1,"165":1,"171":1,"177":1,"180":1,"187":1,"192":1,"193":1,"194":1,"198":1,"200":1,"201":1,"204":1,"211":1,"212":1,"216":1,"217":1,"219":1,"223":1,"225":1,"227":1,"237":1,"239":1,"240":1,"242":1,"244":1,"250":1,"252":1,"261":1,"267":1,"269":1,"278":1,"280":1,"286":1,"290":1,"295":1,"299":1,"309":1,"310":1,"318":1,"321":1,"329":1,"393":1,"394":1,"397":1,"407":1,"408":1,"411":1,"598":1,"2627":1,"2629":1,"2633":1,"2634":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"48":1,"49":1,"50":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"62":1,"63":1,"64":1,"67":1,"68":1,"69":2,"70":2,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":2,"81":2,"82":2,"83":2,"84":2,"85":1,"86":2,"87":2,"88":2,"89":2,"90":2,"91":1,"92":2,"93":2,"94":2,"95":2,"97":1,"98":1,"99":1,"100":1,"101":1,"102":2,"103":2,"104":2,"105":2,"106":1,"107":2,"108":2,"109":2,"110":2,"111":2,"112":2,"113":2,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":2,"123":2,"124":2,"125":2,"126":2,"127":2,"128":2,"129":1,"130":2,"131":2,"132":2,"133":2,"134":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":2,"142":2,"143":2,"144":2,"145":1,"147":1,"148":1,"149":1,"150":1,"151":2,"152":2,"153":2,"154":2,"155":1,"156":2,"157":2,"158":2,"159":2,"160":1,"162":1,"163":1,"164":1,"165":1,"166":2,"167":2,"168":2,"169":2,"170":2,"171":1,"172":2,"173":2,"174":2,"175":2,"176":1,"178":1,"179":1,"180":1,"181":2,"182":2,"183":2,"184":2,"185":2,"186":2,"187":1,"188":2,"189":2,"190":2,"191":1,"193":1,"194":2,"195":2,"196":2,"197":2,"198":1,"199":1,"201":1,"202":2,"203":2,"204":1,"205":2,"206":2,"207":2,"208":2,"209":2,"210":1,"212":1,"213":2,"214":2,"215":2,"216":1,"217":2,"218":2,"219":1,"220":2,"221":2,"222":1,"224":1,"225":1,"226":2,"227":1,"228":2,"229":2,"230":2,"231":2,"232":2,"233":2,"234":2,"235":2,"236":1,"238":1,"239":1,"240":2,"241":2,"242":1,"243":2,"244":2,"245":2,"246":2,"247":2,"248":2,"249":1,"251":1,"252":1,"253":2,"254":2,"255":2,"256":2,"257":2,"258":2,"259":2,"260":2,"261":1,"262":2,"263":2,"264":1,"265":1,"266":1,"268":1,"269":1,"270":2,"271":2,"272":2,"273":2,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":2,"282":1,"283":1,"284":1,"285":1,"287":1,"288":1,"289":1,"290":1,"291":2,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":2,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":2,"312":2,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":2,"323":2,"324":2,"325":2,"326":1,"327":1,"328":1,"330":1,"331":1,"332":1,"333":1,"394":1,"395":1,"396":1,"397":1,"398":1,"399":1,"400":1,"401":1,"402":1,"403":1,"404":1,"405":1,"406":1,"409":1,"410":1,"411":1,"412":1},"2":{"0":3,"2":1,"9":2,"19":3,"22":1,"25":1,"28":1,"31":4,"32":1,"34":4,"36":1,"39":2,"45":1,"52":2,"67":1,"74":1,"86":1,"87":1,"103":2,"105":1,"107":1,"114":2,"116":1,"125":1,"126":2,"131":2,"133":1,"134":2,"141":1,"160":1,"163":2,"167":1,"172":1,"175":1,"176":3,"182":1,"184":1,"185":1,"187":2,"188":1,"191":4,"198":2,"199":1,"201":3,"210":2,"212":3,"217":1,"222":1,"224":3,"231":1,"233":3,"236":2,"238":2,"247":1,"251":1,"254":1,"262":1,"263":1,"265":3,"272":1,"273":1,"275":1,"276":1,"284":1,"294":1,"303":1,"307":3,"328":1,"332":1,"393":1,"394":1,"397":5,"398":1,"399":3,"400":3,"401":3,"402":2,"405":3,"406":4,"407":1,"408":9,"410":2,"411":1,"463":1,"467":1,"531":1,"562":1,"578":1,"607":1,"611":6,"613":1,"615":1,"617":4,"618":1,"638":1,"664":1,"684":1,"714":1,"715":1,"718":1,"1410":1,"1413":5,"1422":1,"1484":3,"1659":1,"1675":1,"1831":1,"1913":2,"1940":1,"1954":6,"1987":1,"2063":4,"2183":1,"2268":1,"2271":1,"2285":2,"2316":3,"2372":1,"2398":4,"2399":1,"2411":1,"2457":1,"2562":1,"2579":1,"2580":1,"2583":1,"2590":1,"2594":1,"2603":1,"2626":2,"2627":8,"2629":1,"2630":2,"2631":1,"2633":6,"2634":1,"2645":2,"2719":1,"2721":2,"2722":5,"2723":1,"2750":1,"2781":1,"2801":1,"2840":1,"2895":1,"2896":2,"2897":1,"2905":3,"2928":1,"2932":1,"2942":2}}],["change",{"0":{"0":1,"9":1,"19":1,"39":1,"52":1,"57":1,"71":1,"272":1,"395":1,"660":1,"1423":1,"1917":1,"2192":1,"2194":1,"2932":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"396":1,"1424":1,"1425":1,"1426":1},"2":{"0":3,"9":2,"19":2,"23":1,"31":2,"39":2,"45":1,"49":1,"52":2,"64":2,"87":1,"90":2,"93":1,"94":1,"95":1,"105":3,"114":4,"118":1,"133":1,"134":3,"145":2,"160":2,"176":2,"182":1,"188":1,"191":7,"198":2,"199":4,"201":1,"203":1,"212":1,"222":2,"249":4,"255":1,"257":1,"258":1,"259":2,"262":1,"263":4,"266":5,"271":1,"272":2,"277":2,"285":1,"294":1,"307":1,"312":1,"320":1,"338":6,"373":1,"393":5,"395":1,"397":4,"403":1,"405":1,"408":1,"409":1,"410":1,"411":1,"492":1,"497":1,"510":2,"511":1,"542":1,"555":1,"611":1,"613":2,"626":1,"660":1,"683":1,"698":1,"714":1,"719":1,"898":1,"933":1,"967":1,"1001":1,"1035":1,"1069":1,"1103":1,"1137":1,"1171":1,"1192":1,"1195":2,"1198":2,"1204":1,"1205":1,"1224":1,"1284":1,"1346":1,"1359":1,"1407":14,"1410":4,"1413":9,"1416":1,"1422":1,"1443":1,"1478":1,"1481":2,"1484":1,"1485":1,"1496":1,"1538":1,"1545":1,"1550":1,"1599":2,"1603":1,"1611":1,"1617":1,"1619":1,"1636":2,"1660":2,"1733":1,"1761":1,"1771":2,"1780":1,"1782":1,"1787":1,"1790":1,"1830":1,"1931":1,"1956":1,"1987":1,"1992":1,"2001":3,"2005":2,"2040":1,"2064":1,"2065":1,"2159":1,"2163":1,"2172":1,"2187":2,"2192":4,"2216":2,"2217":2,"2251":1,"2268":2,"2315":2,"2331":1,"2332":1,"2368":1,"2374":1,"2409":1,"2475":1,"2546":1,"2551":3,"2560":1,"2562":1,"2566":1,"2579":2,"2633":1,"2644":1,"2645":2,"2656":2,"2671":1,"2676":1,"2684":1,"2710":2,"2719":2,"2722":1,"2786":2,"2861":1,"2905":2,"2921":1,"2923":1,"2942":1}}],["channels",{"0":{"689":1},"1":{"690":1,"691":1,"692":1,"693":1},"2":{"690":1,"692":2,"698":2,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1285":1,"2424":1}}],["channel",{"2":{"14":2,"228":1,"690":1,"692":2,"693":1,"696":5,"713":1,"714":1,"718":2,"726":1,"729":3,"802":1,"805":3,"819":3,"831":1,"834":3,"847":3,"860":1,"863":3,"877":3,"890":1,"893":3,"909":3,"925":1,"928":3,"944":3,"959":1,"962":3,"978":3,"993":1,"996":3,"1012":3,"1027":1,"1030":3,"1046":3,"1061":1,"1064":3,"1080":3,"1095":1,"1098":3,"1114":3,"1129":1,"1132":3,"1148":3,"1163":1,"1166":3,"1182":3,"1216":1,"1219":3,"1235":3,"1285":1,"1300":4,"1471":2,"1477":1,"1539":2,"1550":2,"1552":1,"1913":1,"1918":2,"1919":36,"1920":1,"2520":36}}],["cumbersome",{"2":{"1616":1}}],["cuprintf",{"2":{"1327":1}}],["cuint32",{"2":{"654":1}}],["cuint16",{"2":{"195":1,"1497":1,"2160":2,"2161":1,"2168":1,"2750":4,"2903":1,"2904":2,"2905":1,"2914":1,"2917":2}}],["cu80",{"2":{"154":2,"160":1,"205":4,"210":1,"249":1}}],["cu75",{"2":{"154":2,"160":1}}],["cu24",{"2":{"154":2,"160":1}}],["cutters",{"2":{"2414":1,"2421":1}}],["cutoff",{"2":{"1962":1}}],["cutie",{"2":{"285":1}}],["cut",{"2":{"116":1,"1480":1,"1962":1,"2273":1,"2424":1,"2503":2,"2541":2,"2569":1}}],["currency",{"2":{"2473":1}}],["currentreport",{"2":{"1985":8}}],["currently",{"2":{"7":1,"65":1,"103":1,"209":1,"214":1,"262":1,"288":1,"316":1,"371":1,"373":1,"439":1,"568":2,"687":1,"712":1,"746":1,"747":2,"750":1,"752":1,"754":2,"756":2,"765":1,"1263":1,"1375":1,"1388":1,"1389":1,"1390":1,"1392":1,"1396":1,"1410":1,"1417":1,"1427":1,"1438":1,"1452":1,"1453":1,"1454":1,"1475":1,"1477":1,"1530":1,"1593":1,"1633":1,"1655":1,"1672":1,"1691":1,"1717":1,"1843":1,"1847":1,"1859":1,"1861":1,"1863":1,"1865":1,"1871":1,"1872":1,"1901":1,"1903":1,"1908":1,"1939":1,"1956":2,"1970":1,"1976":1,"2007":1,"2009":1,"2050":1,"2063":1,"2070":1,"2085":1,"2087":1,"2089":1,"2091":1,"2097":1,"2098":1,"2145":1,"2147":1,"2152":1,"2171":1,"2181":1,"2186":1,"2203":1,"2204":1,"2205":1,"2211":3,"2217":1,"2254":2,"2269":1,"2283":1,"2293":1,"2299":1,"2302":1,"2310":1,"2324":1,"2328":1,"2337":1,"2338":1,"2339":1,"2353":1,"2367":2,"2368":1,"2369":1,"2370":1,"2377":1,"2381":1,"2384":2,"2393":1,"2395":1,"2489":1,"2511":1,"2560":1,"2566":1,"2584":1,"2605":1,"2606":1,"2619":1,"2633":1,"2746":2,"2778":1,"2862":3,"2929":1}}],["current",{"0":{"4":1,"724":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1827":1},"2":{"30":1,"33":1,"49":1,"50":1,"88":1,"104":1,"114":1,"119":3,"176":2,"199":1,"266":1,"273":1,"279":1,"308":2,"397":1,"399":1,"406":3,"427":1,"452":1,"461":1,"473":1,"540":1,"561":1,"563":1,"568":4,"572":1,"590":1,"617":1,"622":1,"623":1,"637":6,"656":1,"698":1,"723":2,"724":2,"742":1,"854":2,"858":2,"898":1,"918":2,"923":2,"933":1,"953":2,"957":2,"967":1,"987":2,"991":2,"1001":1,"1021":2,"1025":2,"1035":1,"1055":2,"1059":2,"1069":1,"1089":2,"1093":2,"1103":1,"1123":2,"1127":2,"1137":1,"1157":2,"1161":2,"1171":1,"1224":1,"1262":1,"1375":4,"1378":1,"1416":1,"1421":2,"1422":2,"1425":4,"1466":1,"1515":1,"1517":1,"1527":1,"1533":1,"1552":1,"1562":1,"1563":1,"1564":1,"1569":1,"1594":1,"1595":1,"1599":1,"1614":3,"1618":1,"1619":1,"1639":1,"1672":1,"1675":2,"1722":1,"1723":2,"1741":1,"1822":1,"1827":1,"1857":1,"1877":1,"1878":1,"1887":1,"1888":1,"1897":1,"1898":1,"1900":1,"1902":1,"1904":1,"1906":1,"1909":1,"1949":3,"1950":1,"1956":10,"1981":3,"1983":1,"1987":1,"1992":1,"1993":1,"1997":1,"2001":4,"2063":2,"2083":1,"2103":1,"2104":1,"2109":1,"2110":1,"2115":1,"2116":1,"2125":1,"2126":1,"2135":1,"2136":1,"2141":1,"2142":1,"2144":1,"2146":1,"2148":1,"2150":1,"2153":1,"2166":1,"2176":1,"2197":6,"2217":2,"2252":1,"2269":4,"2279":3,"2280":1,"2283":9,"2288":3,"2293":1,"2311":1,"2312":1,"2316":3,"2320":1,"2327":1,"2356":1,"2370":1,"2373":4,"2416":1,"2459":2,"2475":1,"2503":1,"2506":1,"2509":1,"2524":3,"2542":1,"2551":1,"2563":1,"2564":1,"2572":1,"2607":1,"2627":10,"2632":1,"2634":1,"2645":1,"2651":1,"2662":3,"2672":1,"2692":1,"2722":1,"2746":1,"2750":2,"2770":1,"2873":1,"2875":2,"2882":1,"2886":3,"2905":6,"2917":1,"2929":1,"2932":2}}],["cur",{"2":{"2310":3,"2311":3,"2312":4}}],["curious",{"2":{"1531":1}}],["curly",{"2":{"2225":1,"2311":1,"2527":2,"2547":2,"2671":1}}],["curl",{"2":{"370":1,"371":1,"373":3,"1315":1}}],["cursorstyle",{"2":{"2671":1}}],["cursor",{"0":{"1698":1,"1702":1,"1705":1},"1":{"1699":1,"1703":1,"1706":1},"2":{"62":1,"114":1,"175":1,"176":2,"1633":1,"1636":1,"1695":1,"1696":1,"1699":3,"1701":1,"1702":1,"1703":3,"1705":1,"1707":1,"1722":2,"1730":1,"1927":8,"1928":8,"1929":10,"1930":14,"1931":12,"1932":6,"1933":8,"1934":2,"1950":1,"1956":19,"1970":1,"1978":5,"1986":2,"2159":2,"2225":1,"2283":19,"2411":1,"2521":8,"2825":1}}],["curved",{"2":{"1968":3}}],["curves",{"2":{"84":1,"1933":1}}],["curve",{"2":{"49":1,"74":1,"93":1,"1928":1,"1930":1,"1933":1,"2178":1,"2750":1}}],["customers",{"2":{"2560":3,"2562":1}}],["customer",{"2":{"606":1}}],["customarily",{"2":{"255":1}}],["customary",{"2":{"179":1,"255":1}}],["custommk",{"2":{"102":3,"1388":1}}],["customising",{"0":{"2603":1},"2":{"2603":1}}],["customisation",{"2":{"1626":1}}],["customisations",{"2":{"24":1}}],["customised",{"2":{"2561":1}}],["customise",{"2":{"1319":1,"1526":1,"2599":1,"2903":1}}],["customize",{"0":{"624":1,"1995":1,"2007":1,"2579":1},"1":{"625":1,"1996":1,"1997":1,"1998":1,"1999":1},"2":{"553":1,"594":1,"624":1,"641":1,"1764":1,"1767":1,"1778":1,"2454":1,"2646":1,"2707":1,"2916":1}}],["customized",{"0":{"1464":1},"2":{"45":2,"49":1,"1466":1,"1520":1,"1849":1,"2007":1,"2072":1,"2918":1}}],["customizing",{"0":{"1521":1,"1590":1,"2412":1},"1":{"1522":1,"1591":1,"1592":1,"1593":1,"1594":1,"1595":1},"2":{"236":1,"1440":1,"2454":1}}],["customizability",{"2":{"1511":1,"2645":1}}],["customizable",{"0":{"1611":1,"1612":1},"2":{"145":1}}],["customization",{"0":{"1656":1,"2920":1},"1":{"1657":1,"1658":1},"2":{"191":1,"631":1,"649":1,"1656":1,"1658":1,"1767":1,"1771":1,"1775":1,"1983":1,"2744":1,"2924":1}}],["custom",{"0":{"590":1,"591":1,"620":1,"626":1,"742":1,"1344":1,"1465":1,"1511":1,"1545":1,"1631":1,"1696":1,"1844":1,"1954":1,"1977":1,"1985":1,"2002":1,"2006":1,"2008":1,"2066":1,"2270":1,"2282":1,"2454":1,"2861":1},"1":{"621":1,"622":1,"623":1,"627":1,"628":1,"629":1,"630":1,"1955":1},"2":{"3":1,"7":1,"15":1,"49":1,"76":1,"80":1,"112":2,"114":2,"134":1,"145":2,"160":4,"176":2,"191":3,"222":3,"236":2,"265":1,"266":2,"277":2,"285":1,"317":1,"323":2,"328":3,"333":2,"368":1,"374":1,"536":1,"565":2,"568":2,"572":3,"576":1,"591":21,"621":1,"622":3,"624":1,"627":3,"629":1,"643":2,"716":1,"740":1,"742":1,"751":1,"1286":1,"1324":1,"1332":1,"1344":2,"1375":1,"1378":1,"1407":1,"1414":2,"1423":1,"1425":1,"1440":7,"1445":1,"1456":1,"1466":2,"1479":1,"1504":3,"1511":1,"1521":1,"1527":3,"1541":1,"1545":2,"1588":1,"1596":1,"1599":4,"1611":1,"1612":2,"1619":1,"1629":1,"1630":1,"1631":1,"1658":1,"1696":3,"1713":1,"1714":1,"1715":1,"1716":1,"1728":1,"1760":2,"1761":2,"1773":1,"1775":3,"1781":1,"1783":1,"1785":1,"1831":1,"1844":10,"1849":1,"1917":1,"1918":1,"1938":1,"1942":2,"1951":3,"1954":3,"1958":1,"1959":1,"1962":1,"1977":3,"1985":1,"1986":1,"1987":1,"2006":3,"2007":1,"2008":3,"2009":2,"2066":10,"2072":1,"2160":1,"2162":2,"2167":2,"2168":1,"2170":1,"2174":1,"2224":1,"2261":2,"2281":3,"2290":1,"2302":3,"2311":1,"2312":1,"2323":1,"2324":1,"2368":2,"2389":1,"2407":1,"2411":6,"2415":1,"2418":1,"2450":1,"2454":3,"2554":2,"2556":1,"2568":1,"2569":2,"2570":1,"2572":1,"2575":1,"2592":1,"2604":1,"2605":1,"2610":1,"2612":1,"2645":1,"2655":1,"2720":1,"2721":10,"2744":2,"2746":1,"2780":1,"2791":1,"2847":1,"2850":1,"2851":1,"2852":1,"2857":2,"2861":4,"2864":1,"2865":4,"2870":1,"2871":1,"2873":1,"2876":1,"2900":1,"2901":1,"2905":2,"2941":1}}],["cl",{"2":{"2519":5,"2548":5,"2554":2,"2557":1}}],["clk",{"2":{"2031":2,"2281":1,"2488":1,"2868":1}}],["cled",{"2":{"1840":1,"1844":1,"2060":1}}],["clearly",{"2":{"2560":1,"2561":1}}],["clearpageremainder",{"2":{"1956":1,"2283":1}}],["clears",{"2":{"1422":1,"1615":1,"1956":1,"2283":1,"2750":1}}],["clearing",{"2":{"1346":1,"1511":1,"1538":3,"2175":6}}],["cleared",{"2":{"649":1,"2678":1,"2679":1}}],["clearer",{"2":{"16":1}}],["clear",{"0":{"1452":1,"1453":1,"1454":1,"1700":1,"2013":1},"2":{"160":2,"188":1,"191":5,"199":1,"231":1,"618":1,"649":1,"1345":3,"1373":1,"1375":2,"1422":1,"1452":1,"1453":1,"1454":1,"1466":2,"1599":6,"1619":2,"1700":1,"1724":1,"1726":1,"1950":1,"1956":1,"1957":3,"1987":1,"2013":1,"2216":1,"2283":1,"2501":1,"2503":5,"2504":1,"2538":1,"2541":4,"2644":2,"2685":1,"2721":1,"2745":1,"2750":2,"2936":1}}],["cleaner",{"2":{"288":1,"2429":1}}],["cleaned",{"2":{"198":1}}],["cleaning",{"2":{"224":1,"251":1,"2420":1,"2656":1}}],["clean",{"0":{"50":1,"64":1,"75":1,"94":1,"444":1},"2":{"94":1,"114":3,"133":1,"134":2,"145":1,"191":6,"199":2,"210":2,"222":5,"236":3,"249":1,"427":1,"444":1,"453":1,"467":1,"616":1,"1409":1,"2410":3,"2656":1,"2721":1,"2934":1}}],["cleans",{"2":{"13":1,"444":1,"2410":1}}],["cleanups",{"2":{"2":1,"50":1,"160":1,"191":2,"210":7,"222":3,"236":10,"249":1,"277":1}}],["cleanup",{"0":{"2":1,"25":1,"27":1,"113":1,"133":1,"229":1,"233":1},"2":{"12":1,"25":1,"64":2,"94":1,"114":3,"160":1,"187":1,"191":2,"198":1,"199":1,"201":1,"212":1,"222":4,"224":1,"233":1,"235":1,"236":2,"249":2,"268":1,"277":1,"279":1,"308":1,"328":2,"649":1,"2560":2,"2933":1}}],["clr",{"2":{"1345":1,"1407":1,"1616":1,"2266":1,"2503":1,"2504":1,"2541":1,"2745":1,"2791":1}}],["cln",{"2":{"324":1,"325":1,"2306":1,"2309":2}}],["clusters",{"2":{"2919":1}}],["clunker",{"2":{"236":1}}],["clutter",{"2":{"2651":1}}],["cluttered",{"2":{"215":1}}],["cluttering",{"2":{"28":1}}],["club",{"2":{"114":1,"154":4,"160":1,"236":2,"285":1,"2389":2}}],["cluecard",{"2":{"111":1,"2933":1}}],["clueboards",{"2":{"2376":1}}],["clueboard",{"0":{"1317":1},"2":{"111":3,"160":1,"342":1,"369":1,"427":2,"432":2,"435":1,"452":1,"453":1,"471":2,"472":1,"482":1,"483":2,"680":3,"2407":2,"2441":2,"2442":1,"2443":7,"2553":1,"2556":1,"2576":2,"2577":1,"2622":7,"2720":1,"2844":4,"2845":3}}],["claim",{"2":{"2735":1}}],["claims",{"2":{"2734":1}}],["clauses",{"2":{"2728":2,"2741":1}}],["clause",{"2":{"2561":1,"2729":1,"2738":1}}],["clag",{"2":{"2503":1,"2541":1}}],["clayer",{"2":{"1407":1,"1424":1,"2787":2}}],["clamp",{"2":{"317":1}}],["classname",{"2":{"517":1}}],["class",{"2":{"288":1,"514":1,"532":1,"1621":1,"2583":1}}],["classic48",{"2":{"328":1}}],["classic",{"2":{"221":1,"294":1,"1365":1,"2367":1,"2734":1,"2905":1}}],["clarification",{"2":{"160":1,"191":1}}],["clarify",{"2":{"134":1,"2313":1}}],["claw44",{"2":{"154":2}}],["clawsome",{"2":{"102":3}}],["clangd",{"2":{"2673":1,"2675":4}}],["clang",{"0":{"1":1,"511":1},"2":{"1":1,"114":1,"132":2,"134":2,"160":1,"457":1,"511":8}}],["clogged",{"2":{"2747":1}}],["cloning",{"2":{"2398":2,"2494":1,"2587":1}}],["cloned",{"2":{"2619":1,"2655":1,"2667":1,"2674":1}}],["clones",{"2":{"271":2,"544":1,"2379":1,"2479":1,"2492":1,"2560":1,"2828":1}}],["clone",{"2":{"93":1,"415":1,"421":1,"422":1,"423":1,"611":2,"1427":1,"2379":1,"2398":3,"2399":1,"2401":1,"2560":1,"2585":2,"2586":2,"2603":1,"2619":1,"2621":1}}],["closing",{"2":{"510":2,"2225":1,"2248":1,"2427":1}}],["closer",{"2":{"2917":1}}],["closely",{"2":{"2273":1}}],["closest",{"2":{"1532":1}}],["closes",{"2":{"397":2}}],["closed",{"2":{"396":1,"397":1,"399":1,"400":1,"401":2,"402":2,"406":2,"2284":1,"2381":1,"2459":1,"2560":1,"2561":2,"2721":1,"2739":1,"2743":1}}],["close",{"2":{"387":2,"391":1,"1639":1,"2050":1,"2052":1,"2249":3,"2250":3,"2531":3,"2615":1,"2750":6}}],["cloudline",{"2":{"222":1}}],["clocks",{"2":{"2677":1,"2678":1,"2679":1}}],["clock",{"2":{"114":1,"390":1,"559":1,"747":3,"756":3,"764":1,"766":1,"1249":5,"1291":1,"1297":1,"1951":2,"1960":1,"1961":2,"1968":2,"1972":1,"1973":1,"1975":1,"1976":2,"2033":1,"2034":3,"2035":2,"2036":5,"2037":2,"2172":2,"2281":1,"2496":2,"2848":1,"2868":1}}],["clockwise",{"2":{"13":2,"90":10,"645":1,"1659":1,"1662":9,"1735":1,"2044":1}}],["clipping",{"0":{"2200":1},"2":{"2188":3,"2200":5}}],["client",{"2":{"362":2,"1288":1,"2493":1,"2594":1,"2605":1}}],["clients",{"2":{"359":1}}],["click4",{"2":{"1680":1}}],["click3",{"2":{"1680":2}}],["click2",{"2":{"1680":2}}],["click1",{"2":{"1680":2}}],["clicking",{"2":{"597":3,"2398":2,"2465":1}}],["clicks",{"2":{"266":1,"1487":3,"1489":2,"1512":1,"1935":1,"2411":1,"2505":2}}],["clicky",{"2":{"236":1,"1479":1,"1487":18,"1489":9,"1651":2,"2505":9,"2849":2,"2933":2}}],["click",{"0":{"1487":1},"2":{"160":1,"347":2,"387":3,"391":2,"594":1,"614":1,"683":1,"684":2,"1375":1,"1487":3,"1680":15,"1962":1,"1965":3,"1970":1,"1971":2,"1985":1,"2291":3,"2398":1,"2426":1,"2546":1,"2566":1,"2607":1,"2608":1,"2652":3,"2655":2,"2671":2,"2674":2,"2676":1,"2776":1,"2825":1,"2869":1}}],["cli",{"0":{"173":1,"418":1,"425":1,"469":1,"473":1,"484":1,"490":1,"491":1,"1322":1,"2748":1},"1":{"419":1,"420":1,"421":1,"422":1,"423":1,"424":1,"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1},"2":{"1":1,"94":1,"95":1,"114":6,"132":1,"134":4,"138":1,"143":2,"145":2,"160":1,"164":1,"173":1,"176":5,"191":1,"199":7,"210":1,"222":3,"236":3,"249":2,"266":1,"277":1,"285":1,"294":1,"308":2,"317":1,"328":1,"333":2,"338":2,"348":1,"419":1,"420":1,"422":1,"429":1,"463":2,"470":1,"485":2,"486":1,"487":18,"488":1,"489":3,"490":7,"491":2,"493":3,"494":6,"495":2,"496":2,"497":1,"498":8,"505":1,"523":1,"527":4,"541":3,"542":1,"663":1,"664":2,"666":1,"670":1,"671":3,"682":1,"1322":1,"1388":1,"1396":1,"2375":1,"2376":1,"2381":1,"2383":1,"2384":2,"2387":2,"2390":3,"2393":2,"2395":2,"2397":2,"2501":1,"2577":1,"2584":1,"2594":1,"2600":1,"2609":1,"2613":1,"2616":1,"2618":1,"2619":1,"2620":1,"2621":1,"2746":1,"2750":4,"2899":1,"2901":2}}],["coating",{"2":{"2420":1}}],["coarser",{"2":{"2215":1}}],["coarse",{"2":{"102":2,"205":1}}],["coil",{"2":{"1675":1,"1679":1}}],["coworkers",{"2":{"1482":1,"1487":1}}],["cowfish",{"2":{"191":1}}],["coffee|",{"2":{"678":1}}],["coffee||make",{"2":{"678":1}}],["coffee",{"2":{"673":1,"678":1}}],["coseyfannitutti",{"2":{"2494":1}}],["cosmetic",{"2":{"2269":3}}],["cosmo",{"2":{"1354":1}}],["costing",{"2":{"1532":1,"2837":1}}],["cost",{"2":{"536":1,"1655":1,"1978":1,"2372":1,"2828":1,"2837":1,"2934":1}}],["cospad",{"2":{"102":2}}],["coding",{"0":{"510":1,"512":1,"612":1},"2":{"408":1,"511":1,"607":1,"612":2,"617":1,"2050":1,"2673":1,"2901":2}}],["coders",{"2":{"2934":1}}],["codepoints",{"2":{"2839":1}}],["codegen",{"2":{"285":1}}],["code16",{"0":{"1451":4},"2":{"160":1,"176":1,"196":1,"324":1,"325":1,"328":1,"1451":1,"1511":4,"1599":3,"1612":1,"1785":1,"2174":1,"2309":4,"2311":5,"2568":1,"2569":3,"2570":2}}],["codes",{"0":{"1998":1},"1":{"1999":1},"2":{"32":1,"176":1,"1327":1,"1407":3,"1466":2,"1487":1,"1918":1,"2252":1,"2324":1,"2411":1,"2546":2,"2603":1,"2877":1,"2941":1}}],["codebases",{"0":{"44":1,"59":1,"86":1,"102":1,"122":1,"144":1,"154":1,"168":1,"181":1,"197":1,"205":1,"218":1,"226":1,"241":1,"253":1,"270":1,"281":1,"291":1,"300":1,"311":1,"322":1},"1":{"45":1,"60":1},"2":{"2936":1}}],["codebase",{"0":{"18":1,"113":1,"133":1},"2":{"18":1,"21":1,"35":1,"60":1,"86":1,"262":1,"284":1,"512":1,"536":1,"540":1,"2719":2,"2895":1,"2938":1,"2942":1}}],["code",{"0":{"1":1,"4":1,"27":1,"33":1,"206":1,"208":1,"348":1,"537":1,"590":1,"619":1,"631":1,"632":1,"635":1,"638":1,"641":1,"646":1,"649":1,"660":1,"670":1,"671":1,"1414":1,"1423":1,"1447":1,"1448":1,"1449":1,"1450":1,"1457":1,"1918":1,"2235":1,"2293":1,"2340":1,"2347":1,"2597":1,"2666":1,"2667":1,"2670":1,"2674":1,"2675":1,"2676":1,"2926":1},"1":{"34":1,"632":1,"633":2,"634":2,"635":1,"636":2,"637":2,"638":1,"639":2,"640":2,"642":1,"643":1,"647":1,"648":1,"650":1,"651":1,"652":1,"1424":1,"1425":1,"1426":1,"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1,"2236":1,"2341":1,"2348":1,"2349":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2668":1,"2669":1,"2670":1,"2671":2,"2672":1,"2673":1,"2675":1,"2927":1,"2928":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"2":1,"3":1,"10":1,"15":1,"21":1,"22":1,"24":1,"25":1,"28":1,"31":1,"49":2,"50":4,"57":2,"64":1,"65":1,"70":1,"74":2,"75":1,"76":1,"90":13,"92":1,"93":2,"94":2,"105":6,"112":1,"113":3,"114":11,"123":1,"125":7,"132":1,"133":5,"134":10,"145":2,"160":6,"173":1,"174":1,"175":3,"176":8,"185":7,"190":2,"191":5,"194":2,"199":2,"203":1,"206":1,"208":1,"210":4,"212":1,"217":1,"222":1,"229":1,"231":1,"236":5,"243":1,"245":1,"249":1,"266":4,"268":1,"272":1,"285":2,"288":1,"294":1,"307":4,"308":1,"323":1,"328":2,"331":1,"338":1,"347":1,"348":4,"358":2,"368":1,"372":1,"374":1,"387":1,"410":2,"441":1,"445":1,"457":3,"462":1,"463":1,"467":1,"487":1,"499":1,"502":2,"503":2,"504":2,"510":5,"511":2,"513":1,"514":1,"523":1,"526":1,"530":1,"535":1,"536":3,"537":1,"538":3,"539":4,"540":1,"553":1,"560":1,"561":1,"562":3,"574":1,"607":1,"613":2,"614":1,"617":1,"619":3,"620":1,"622":1,"624":1,"626":1,"631":1,"633":1,"639":1,"641":2,"643":1,"645":1,"647":2,"660":1,"664":1,"670":2,"671":1,"688":1,"700":2,"722":1,"750":1,"751":1,"753":1,"754":1,"762":2,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":2,"1264":2,"1281":2,"1319":1,"1324":1,"1326":1,"1327":1,"1328":1,"1338":1,"1340":1,"1345":1,"1354":1,"1358":1,"1375":1,"1377":2,"1378":3,"1385":1,"1387":1,"1389":1,"1390":1,"1403":3,"1407":1,"1410":2,"1422":1,"1423":1,"1425":1,"1432":1,"1434":1,"1441":3,"1445":1,"1448":1,"1449":4,"1450":1,"1456":4,"1457":1,"1461":1,"1465":2,"1466":1,"1480":1,"1481":1,"1526":1,"1527":1,"1528":1,"1529":2,"1534":1,"1585":2,"1587":1,"1588":1,"1611":1,"1612":3,"1620":1,"1661":1,"1662":5,"1675":1,"1707":1,"1732":1,"1736":1,"1761":1,"1831":2,"1832":1,"1845":1,"1917":1,"1948":1,"1951":1,"1955":1,"1962":1,"1976":1,"1981":2,"1982":2,"1987":1,"1999":1,"2004":1,"2005":1,"2006":4,"2008":3,"2050":1,"2068":1,"2174":1,"2187":1,"2200":1,"2236":1,"2270":1,"2274":1,"2278":1,"2281":1,"2290":3,"2293":1,"2298":1,"2310":11,"2311":1,"2312":4,"2322":4,"2323":3,"2324":7,"2325":3,"2337":1,"2338":1,"2339":1,"2341":2,"2347":1,"2349":1,"2350":1,"2364":1,"2372":1,"2388":1,"2405":1,"2406":1,"2407":1,"2408":1,"2409":2,"2411":7,"2434":1,"2443":1,"2449":4,"2450":1,"2454":1,"2457":2,"2533":3,"2550":6,"2555":1,"2557":1,"2559":3,"2560":10,"2561":7,"2562":4,"2564":1,"2566":1,"2568":1,"2569":2,"2573":1,"2593":1,"2596":1,"2603":1,"2638":2,"2646":5,"2655":2,"2666":8,"2669":2,"2670":1,"2672":1,"2673":4,"2675":5,"2676":6,"2678":2,"2679":1,"2707":1,"2721":8,"2722":1,"2724":1,"2726":1,"2727":4,"2729":1,"2732":2,"2734":3,"2741":1,"2742":1,"2743":1,"2750":1,"2754":2,"2762":2,"2786":1,"2802":2,"2804":2,"2829":1,"2886":3,"2889":1,"2894":1,"2895":1,"2899":1,"2905":1,"2906":1,"2927":1,"2928":2,"2935":1,"2936":1,"2942":5}}],["copper",{"2":{"2418":1}}],["copied",{"2":{"570":1,"2719":1}}],["copies",{"2":{"249":1,"1440":1,"2561":1}}],["copilot",{"2":{"333":1}}],["copying",{"2":{"2580":1,"2622":1,"2749":1}}],["copyrighted",{"2":{"1479":1}}],["copyrights",{"2":{"616":1}}],["copyright",{"0":{"2457":1},"2":{"408":1,"1461":1,"2457":2,"2560":1,"2707":2,"2725":2,"2895":1}}],["copypasta",{"2":{"114":1,"1434":1}}],["copy",{"0":{"509":1},"2":{"31":1,"114":1,"191":1,"360":1,"509":1,"611":1,"1345":1,"1461":1,"1526":1,"1622":1,"2393":2,"2395":2,"2397":2,"2398":1,"2401":2,"2503":2,"2541":2,"2561":1,"2569":1,"2570":1,"2577":1,"2583":1,"2584":1,"2585":1,"2586":1,"2587":1,"2603":1,"2607":1,"2719":1,"2721":1,"2725":1,"2749":1,"2776":2,"2916":1}}],["co",{"2":{"222":1,"763":1,"2073":1,"2845":1}}],["covered",{"0":{"1335":1},"2":{"1308":1,"2496":1}}],["cover",{"2":{"745":1,"1333":1,"1930":1,"2411":1,"2715":1}}],["covers",{"2":{"585":1,"673":1,"1311":1,"1339":1,"1341":1,"1526":1,"1928":1,"2274":1,"2322":1,"2411":1,"2666":1,"2731":1,"2732":1,"2774":1}}],["covering",{"2":{"210":1,"613":1,"2636":1}}],["coverage",{"2":{"134":2,"236":1}}],["cocoa40",{"2":{"154":2}}],["cooperate",{"2":{"2560":1}}],["cooperating",{"2":{"746":1}}],["cooler",{"2":{"2248":1}}],["cool",{"2":{"673":1,"678":5,"1457":2,"1458":2,"1844":10,"2066":10,"2248":1,"2420":1,"2421":2}}],["coordinate",{"2":{"312":1,"317":1,"1639":2,"1840":1,"2060":1,"2750":2}}],["coordinates",{"2":{"100":2,"114":1,"176":1,"277":1,"308":1,"1633":1,"1635":2,"1636":1,"1956":1,"1968":1,"2283":1,"2749":1}}],["cook",{"2":{"154":2,"222":1}}],["coexist",{"2":{"98":1,"283":1}}],["cozykeys",{"2":{"56":3}}],["col1",{"2":{"2459":13}}],["col0",{"2":{"2459":14}}],["col2row",{"2":{"559":3,"620":1,"637":3,"1400":1,"1404":1,"2377":2,"2384":2,"2662":2,"2712":1,"2865":1,"2869":2}}],["colons",{"2":{"2938":1}}],["colon",{"0":{"341":2},"2":{"2301":1,"2310":1,"2527":1,"2547":1}}],["coloured",{"2":{"1535":1}}],["colour",{"2":{"210":1,"1535":1}}],["colorreco",{"2":{"2560":1}}],["color=false",{"2":{"2410":2}}],["colored",{"2":{"683":1}}],["colorizing",{"0":{"492":1},"2":{"489":1}}],["colorize",{"2":{"488":1,"489":1,"492":1}}],["colors",{"0":{"2067":1,"2198":1},"2":{"160":1,"202":1,"492":3,"1284":1,"1611":1,"2067":1,"2075":1,"2173":1,"2178":1,"2182":1,"2198":1,"2747":1,"2748":4,"2750":1,"2770":4}}],["color",{"0":{"704":1,"706":1,"732":1,"734":1,"810":1,"812":1,"838":1,"840":1,"868":1,"870":1,"900":1,"902":1,"935":1,"937":1,"969":1,"971":1,"1003":1,"1005":1,"1037":1,"1039":1,"1071":1,"1073":1,"1105":1,"1107":1,"1139":1,"1141":1,"1173":1,"1175":1,"1226":1,"1228":1,"1303":1,"1305":1,"2085":1,"2087":1,"2173":1},"1":{"705":1,"707":1,"733":1,"735":1,"811":1,"813":1,"839":1,"841":1,"869":1,"871":1,"901":1,"903":1,"936":1,"938":1,"970":1,"972":1,"1004":1,"1006":1,"1038":1,"1040":1,"1072":1,"1074":1,"1106":1,"1108":1,"1140":1,"1142":1,"1174":1,"1176":1,"1227":1,"1229":1,"1304":1,"1306":1,"2086":1,"2088":1},"2":{"114":1,"191":1,"199":1,"236":1,"492":10,"639":1,"650":2,"651":2,"704":1,"706":1,"721":1,"732":1,"734":1,"797":1,"798":1,"802":1,"805":1,"810":1,"812":1,"814":1,"816":1,"820":1,"826":1,"827":1,"831":1,"834":1,"838":1,"840":1,"842":1,"844":1,"848":1,"852":1,"853":1,"860":1,"863":1,"868":1,"870":1,"872":1,"874":1,"878":1,"884":1,"885":1,"890":1,"893":1,"900":1,"902":1,"904":1,"906":1,"910":1,"916":1,"917":1,"925":1,"928":1,"935":1,"937":1,"939":1,"941":1,"945":1,"951":1,"952":1,"959":1,"962":1,"969":1,"971":1,"973":1,"975":1,"979":1,"985":1,"986":1,"993":1,"996":1,"1003":1,"1005":1,"1007":1,"1009":1,"1013":1,"1019":1,"1020":1,"1027":1,"1030":1,"1037":1,"1039":1,"1041":1,"1043":1,"1047":1,"1053":1,"1054":1,"1061":1,"1064":1,"1071":1,"1073":1,"1075":1,"1077":1,"1081":1,"1087":1,"1088":1,"1095":1,"1098":1,"1105":1,"1107":1,"1109":1,"1111":1,"1115":1,"1121":1,"1122":1,"1129":1,"1132":1,"1139":1,"1141":1,"1143":1,"1145":1,"1149":1,"1155":1,"1156":1,"1163":1,"1166":1,"1173":1,"1175":1,"1177":1,"1179":1,"1183":1,"1211":1,"1212":1,"1216":1,"1219":1,"1226":1,"1228":1,"1230":1,"1232":1,"1236":1,"1280":2,"1284":2,"1285":1,"1303":1,"1305":1,"1407":3,"1938":4,"2058":1,"2063":2,"2064":1,"2065":2,"2066":2,"2067":1,"2072":3,"2073":4,"2074":4,"2075":1,"2085":1,"2087":1,"2143":1,"2171":2,"2173":2,"2176":3,"2180":1,"2187":1,"2192":1,"2198":1,"2410":2,"2437":1,"2747":2,"2748":6,"2749":12,"2750":7,"2771":1,"2871":1}}],["col",{"0":{"1705":1},"1":{"1706":1},"2":{"199":1,"210":1,"559":1,"568":3,"630":1,"637":4,"1326":8,"1649":1,"1654":1,"1706":1,"1840":3,"1956":1,"2060":3,"2073":4,"2271":2,"2283":1,"2296":1,"2377":1,"2384":1,"2865":2,"2919":2}}],["colemak",{"0":{"2803":1},"2":{"191":1,"427":3,"1419":1,"1436":1,"1443":2,"1613":1,"2551":1,"2555":1,"2788":2,"2880":3}}],["coled",{"2":{"31":1,"34":1}}],["coln",{"2":{"176":3,"2309":1,"2527":1,"2547":1}}],["collectively",{"2":{"2632":1}}],["collection",{"2":{"1325":1,"1463":1}}],["collected",{"2":{"2574":1}}],["collect",{"2":{"1942":1}}],["collaborator",{"2":{"578":1,"618":1,"2718":1,"2722":1}}],["collaborators",{"2":{"163":1,"212":1,"397":2,"2461":1,"2718":1,"2719":2,"2722":2,"2724":1}}],["collisions",{"2":{"141":1,"167":1,"1425":1}}],["collision",{"2":{"134":1,"186":1,"751":1,"1316":1}}],["cols",{"2":{"111":1,"114":2,"559":1,"587":1,"637":2,"1365":1,"1440":2,"1486":1,"1693":1,"1840":2,"1918":1,"2060":2,"2073":1,"2296":1,"2305":1,"2550":1,"2555":3,"2578":1,"2662":1,"2712":3,"2713":1,"2721":1,"2865":1,"2919":3,"2931":1}}],["columner",{"2":{"241":2}}],["columns",{"0":{"2422":1},"2":{"222":1,"249":1,"510":1,"512":1,"559":3,"568":1,"1365":1,"1413":1,"1484":1,"1486":1,"2262":1,"2271":2,"2416":2,"2422":1,"2424":1,"2427":1,"2459":4,"2711":1,"2775":1,"2821":1,"2865":2,"2919":1}}],["column",{"0":{"1365":1},"2":{"55":1,"210":1,"266":1,"317":1,"345":2,"637":2,"1583":2,"1584":2,"1585":1,"1706":1,"1714":1,"1716":1,"1843":4,"1951":1,"1956":2,"2063":4,"2262":1,"2281":1,"2283":2,"2296":4,"2416":1,"2422":5,"2424":2,"2427":2,"2459":16,"2550":1,"2662":2,"2713":3,"2714":1,"2775":1,"2862":1,"2869":1,"2877":1,"2907":1,"2929":1}}],["courts",{"2":{"2735":1}}],["court",{"2":{"2284":1}}],["courtesy",{"2":{"619":1}}],["course",{"2":{"120":1,"123":1,"603":1,"1773":1,"2475":1,"2942":1}}],["couldn",{"0":{"2843":1}}],["could",{"0":{"1761":1},"2":{"222":1,"312":3,"408":1,"427":1,"431":1,"471":1,"538":2,"685":1,"696":1,"698":1,"1413":1,"1417":1,"1419":1,"1451":1,"1464":1,"1465":2,"1476":1,"1528":1,"1532":1,"1599":1,"1607":1,"1611":1,"1664":2,"1929":1,"1975":1,"2006":2,"2052":1,"2166":1,"2258":1,"2428":1,"2473":1,"2558":1,"2561":1,"2562":1,"2566":2,"2628":1,"2645":1,"2750":1,"2786":2,"2843":1,"2912":2,"2919":1,"2924":1,"2930":1}}],["couple",{"2":{"156":1,"402":1,"1346":1,"1442":1,"1479":1,"1523":1,"2162":1,"2268":1,"2287":1,"2421":1,"2424":1,"2786":1}}],["coupled",{"2":{"48":1,"119":1,"131":1}}],["count=6",{"2":{"2448":1}}],["count=30",{"2":{"2448":1}}],["counting",{"2":{"2398":2,"2775":1}}],["countries",{"2":{"1420":1}}],["counts",{"2":{"236":2,"277":1,"1976":1,"2167":1,"2303":1}}],["counteract",{"2":{"1782":1,"2921":1}}],["counterparts",{"2":{"1451":1}}],["counterpart",{"2":{"1417":1}}],["counters",{"2":{"518":1,"1413":1}}],["counter",{"2":{"114":1,"392":1,"1550":1,"1662":1,"2303":1}}],["count",{"0":{"2355":1},"1":{"2356":1},"2":{"49":2,"70":1,"111":1,"112":1,"166":1,"183":6,"191":4,"199":1,"210":3,"236":4,"249":4,"324":1,"348":2,"563":1,"668":2,"726":1,"746":1,"747":1,"751":1,"752":3,"802":2,"831":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1282":1,"1326":8,"1410":1,"1527":2,"1532":1,"1588":1,"1734":2,"1736":1,"1737":1,"1741":1,"1828":1,"1846":1,"1860":1,"1949":1,"1954":3,"1974":1,"1993":2,"2001":2,"2069":1,"2086":1,"2167":5,"2168":3,"2169":2,"2172":1,"2178":1,"2179":2,"2191":4,"2199":1,"2200":1,"2279":1,"2282":2,"2297":1,"2302":1,"2372":1,"2374":4,"2568":1,"2569":3,"2570":1,"2627":2,"2750":4,"2768":1,"2864":2,"2870":3,"2871":2}}],["corp",{"2":{"2605":1,"2608":2}}],["coral",{"2":{"2067":2,"2198":2}}],["corrupted",{"2":{"2475":1}}],["corruption",{"2":{"249":1,"2942":1}}],["corresponds",{"2":{"1532":1,"1920":1,"2291":1,"2310":1,"2495":1}}],["correspond",{"2":{"726":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1736":1,"2502":1,"2545":1,"2862":1,"2917":1,"2919":1}}],["corresponding",{"2":{"118":1,"166":1,"487":1,"698":1,"718":1,"1197":1,"1343":1,"1375":1,"1512":1,"1532":1,"1618":1,"1621":1,"1624":1,"1627":1,"1951":1,"2288":1,"2411":1,"2416":1,"2426":1,"2459":1,"2560":3,"2722":1,"2728":1,"2748":1,"2765":1,"2770":2,"2773":1,"2879":1,"2912":1,"2913":1}}],["corrected",{"2":{"456":1,"1528":1,"1529":2,"2750":1}}],["correctness",{"2":{"263":1,"2722":1}}],["corrections",{"2":{"199":1,"266":1,"317":1,"1521":2}}],["correction",{"2":{"49":1,"210":1,"236":1,"249":2,"294":1,"1521":3,"1532":1,"1533":1}}],["correct",{"2":{"11":1,"114":2,"132":1,"134":1,"160":1,"176":4,"194":1,"199":2,"210":2,"222":2,"236":1,"249":2,"294":1,"328":1,"485":1,"594":1,"595":1,"623":2,"683":1,"684":1,"686":1,"718":1,"746":1,"1197":1,"1200":1,"1201":1,"1317":1,"1406":1,"1466":1,"1486":1,"1511":1,"1518":1,"1519":1,"1522":2,"1528":2,"1529":3,"1532":1,"1584":1,"1775":1,"1936":1,"1980":1,"2037":1,"2266":1,"2324":1,"2459":1,"2599":1,"2613":1,"2665":1,"2671":1,"2675":1,"2676":1,"2689":1,"2721":1,"2750":2}}],["correctly",{"2":{"11":1,"31":1,"34":1,"48":1,"73":1,"132":1,"191":2,"199":1,"263":2,"277":2,"333":1,"379":1,"388":1,"434":1,"746":1,"1326":1,"1378":1,"1414":1,"1522":1,"1662":1,"1942":1,"2291":1,"2427":2,"2546":1,"2566":1,"2583":1,"2587":1,"2601":1,"2670":1,"2676":3,"2721":1,"2722":1,"2749":4}}],["cor65",{"2":{"249":1}}],["cor",{"2":{"222":1,"281":4}}],["corner",{"2":{"1971":1,"2862":2}}],["corne",{"2":{"86":1,"92":1,"93":1,"191":1,"222":1,"285":1}}],["cortex",{"2":{"50":1,"134":1,"191":1,"210":1,"2676":4,"2682":1}}],["cored",{"2":{"2414":1,"2422":2}}],["cores",{"2":{"2035":1}}],["core",{"0":{"1":1,"20":1,"46":1,"47":1,"61":1,"68":1,"91":1,"106":1,"129":1,"155":1,"171":1,"187":1,"198":1,"219":1,"227":1,"242":1,"261":1,"617":1,"625":1,"2722":1,"2782":1},"1":{"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"48":1,"49":1,"50":1,"62":1,"63":1,"64":1,"69":1,"70":1,"92":1,"93":1,"94":1,"95":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"130":1,"131":1,"132":1,"133":1,"156":1,"157":1,"158":1,"159":1,"172":1,"173":1,"174":1,"175":1,"188":1,"189":1,"190":1,"220":1,"221":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"262":1,"263":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"1":2,"75":2,"113":5,"114":7,"118":1,"130":1,"133":3,"134":6,"145":5,"151":1,"157":1,"160":3,"176":3,"179":1,"187":1,"191":2,"198":1,"199":4,"201":1,"210":2,"222":3,"236":2,"249":2,"266":1,"277":1,"285":2,"294":2,"297":1,"308":2,"317":2,"327":1,"328":1,"333":3,"397":2,"410":1,"457":3,"613":1,"616":1,"617":2,"625":1,"664":1,"711":1,"714":1,"1350":1,"1362":1,"1413":1,"1478":1,"1662":1,"1844":1,"2066":1,"2319":1,"2405":1,"2458":1,"2461":1,"2560":2,"2685":1,"2719":2,"2721":5,"2722":5,"2901":1,"2927":2,"2929":1}}],["congrats",{"2":{"2610":1}}],["congratulations",{"2":{"602":1}}],["conjunction",{"2":{"2312":1}}],["conu",{"2":{"1674":1}}],["conducted",{"2":{"2420":1}}],["conductors",{"2":{"1191":1,"1194":1,"1197":1}}],["conduct",{"0":{"619":1},"2":{"607":1,"619":2,"2889":1}}],["cond",{"2":{"530":1,"1674":1}}],["conditions",{"0":{"2166":1},"2":{"746":1,"1607":1,"1664":1,"2007":2,"2166":1,"2310":1}}],["conditional",{"0":{"530":1,"1403":1},"2":{"530":1}}],["condition",{"2":{"222":1,"277":1,"510":4,"1375":1,"1388":1,"1396":1,"2906":1}}],["concurrent",{"2":{"2747":1}}],["concurrently",{"2":{"2631":1}}],["concept",{"2":{"2677":1}}],["conceptually",{"2":{"2557":1}}],["concepts",{"2":{"113":1,"609":1,"2466":1,"2612":1,"2626":1,"2628":1,"2862":1,"2898":1,"2926":1}}],["conceived",{"2":{"2301":1}}],["concerning",{"2":{"1427":1}}],["concerns",{"2":{"312":2,"2896":1}}],["concern",{"2":{"312":1,"536":1,"2553":1,"2724":1}}],["concerned",{"2":{"263":1}}],["concreteflowers",{"2":{"281":2,"285":1}}],["concrete",{"2":{"234":1}}],["confuse",{"2":{"2452":1,"2778":1}}],["confused",{"2":{"1440":1}}],["confusion",{"2":{"271":1,"303":1,"1662":1,"2562":1,"2775":1}}],["confusingly",{"2":{"1348":1}}],["confusing",{"2":{"243":1,"331":1,"403":1,"531":1,"539":1,"613":1,"2296":1,"2877":1}}],["conforms",{"2":{"2748":1}}],["conform",{"2":{"244":1,"617":1,"2440":1,"2453":1,"2714":1}}],["conf",{"2":{"134":1,"416":1,"1313":1,"2756":1}}],["conflicted",{"2":{"2627":1}}],["conflicting",{"0":{"1430":1},"2":{"2627":7}}],["conflicts",{"0":{"2626":1},"1":{"2627":1},"2":{"191":1,"397":2,"1464":1,"2291":1,"2625":1,"2627":1,"2631":1,"2719":4,"2721":1}}],["conflict",{"2":{"92":1,"191":1,"424":1,"512":1,"1548":1,"1589":1,"2251":1,"2626":2,"2627":7}}],["confirm",{"2":{"403":1,"683":1,"684":1,"692":1,"751":1,"2562":1,"2687":1}}],["confirmed",{"2":{"32":1,"2428":1}}],["confident",{"2":{"393":1,"2840":1}}],["confidence",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"182":1,"393":1,"2687":1,"2722":1}}],["conficts",{"2":{"114":1}}],["configparser",{"2":{"493":2}}],["configuring",{"0":{"387":1,"391":1,"553":1,"1496":1,"1928":1,"2291":1,"2675":1},"1":{"554":1,"555":1,"556":1,"557":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1934":1},"2":{"637":1,"898":1,"933":1,"967":1,"1001":1,"1035":1,"1069":1,"1103":1,"1137":1,"1171":1,"1224":1,"1387":1,"1543":1,"2262":1,"2443":1,"2714":1,"2721":1,"2899":1}}],["configures",{"2":{"1404":1,"1480":2,"1592":1,"1672":2,"1675":3,"1736":1,"1966":3,"2268":1,"2447":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2860":1,"2863":1,"2864":1,"2866":1,"2867":1,"2868":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2876":1}}],["configured",{"0":{"562":1},"2":{"134":1,"236":1,"255":1,"256":1,"266":1,"303":1,"306":1,"315":1,"490":1,"525":1,"559":1,"623":2,"663":1,"712":1,"713":1,"717":1,"739":1,"740":1,"741":1,"746":1,"920":3,"1091":3,"1125":3,"1194":2,"1197":1,"1210":1,"1262":1,"1282":1,"1286":1,"1294":2,"1350":1,"1404":1,"1457":1,"1468":1,"1472":1,"1481":1,"1541":1,"1586":1,"1604":1,"1672":1,"1736":2,"1770":2,"1825":1,"1939":1,"2032":1,"2039":1,"2041":1,"2063":1,"2073":1,"2161":1,"2175":1,"2183":1,"2186":1,"2206":1,"2207":1,"2210":1,"2268":1,"2551":1,"2577":1,"2590":1,"2595":1,"2609":1,"2630":3,"2670":1,"2678":2,"2679":1,"2700":1,"2701":1,"2703":1,"2715":1,"2721":1,"2749":13,"2754":1,"2851":1,"2877":1,"2905":1,"2914":1,"2920":1,"2927":1}}],["configure",{"0":{"1594":1,"2576":1,"2654":1,"2674":1},"1":{"2655":1,"2656":1,"2675":1},"2":{"76":1,"112":2,"124":1,"139":1,"186":1,"195":1,"209":1,"222":1,"308":5,"317":11,"429":1,"572":1,"621":1,"622":1,"623":1,"718":1,"725":1,"764":1,"800":1,"801":1,"818":1,"820":1,"830":1,"846":1,"848":1,"855":1,"859":1,"876":1,"878":1,"887":1,"889":1,"908":1,"910":1,"919":1,"924":1,"943":1,"945":1,"954":1,"958":1,"977":1,"979":1,"988":1,"992":1,"1011":1,"1013":1,"1022":1,"1026":1,"1045":1,"1047":1,"1056":1,"1060":1,"1079":1,"1081":1,"1090":1,"1094":1,"1113":1,"1115":1,"1124":1,"1128":1,"1147":1,"1149":1,"1158":1,"1162":1,"1181":1,"1183":1,"1192":1,"1195":1,"1198":1,"1214":1,"1215":1,"1234":1,"1236":1,"1385":1,"1400":1,"1402":1,"1406":1,"1407":2,"1478":1,"1487":1,"1539":1,"1540":1,"1545":1,"1584":1,"1587":1,"1589":1,"1592":1,"1594":1,"1603":3,"1606":1,"1661":1,"1760":1,"1773":1,"1789":1,"1830":1,"1839":1,"1976":1,"1980":1,"2041":1,"2059":1,"2163":1,"2264":1,"2265":1,"2271":1,"2291":2,"2321":1,"2408":1,"2446":1,"2447":1,"2448":2,"2449":1,"2576":1,"2577":1,"2580":1,"2609":2,"2666":1,"2697":1,"2698":1,"2703":1,"2709":1,"2713":1,"2752":1,"2788":1,"2900":1,"2901":1,"2902":1,"2905":2,"2918":1}}],["configurability",{"2":{"1771":1}}],["configurables",{"2":{"124":1,"201":1,"212":1,"302":1,"468":1}}],["configurable",{"2":{"74":1,"109":1,"134":1,"137":1,"176":1,"198":1,"221":1,"222":1,"246":1,"553":1,"714":1,"745":1,"748":1,"751":1,"752":1,"753":1,"1587":1,"1971":1,"2065":1,"2678":1,"2721":1,"2747":1,"2750":2}}],["configuratorexport",{"2":{"427":1,"428":1}}],["configurator",{"0":{"574":1,"577":1,"585":1,"593":1,"601":1,"1308":1,"2582":1,"2774":1,"2775":1,"2777":1},"1":{"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"600":1,"602":1,"603":1,"604":1,"605":1,"606":1,"1309":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1},"2":{"35":1,"114":1,"120":2,"139":1,"220":1,"405":1,"427":1,"428":2,"436":1,"445":1,"450":2,"451":2,"461":1,"498":2,"574":3,"576":2,"577":3,"578":1,"580":1,"581":1,"585":1,"586":3,"587":1,"589":1,"590":2,"591":1,"592":2,"593":1,"594":1,"598":1,"602":2,"606":1,"1308":1,"1333":1,"1361":1,"1435":1,"1621":1,"2407":2,"2427":1,"2443":1,"2446":1,"2461":1,"2462":1,"2582":6,"2599":1,"2600":1,"2610":1,"2688":1,"2721":2,"2774":1,"2775":4,"2776":3,"2777":3,"2778":1,"2780":1,"2844":1,"2862":1}}],["configurations",{"0":{"1513":1},"2":{"76":1,"265":1,"391":1,"431":1,"493":1,"552":1,"556":1,"617":1,"692":2,"712":1,"713":1,"746":1,"747":1,"756":1,"1513":1,"1945":1,"1962":1,"1967":1,"1981":1,"1982":1,"2309":1,"2432":1,"2662":1,"2676":1,"2704":1,"2894":1,"2922":1,"2938":4}}],["configuration",{"0":{"28":1,"112":1,"183":1,"469":1,"474":1,"475":1,"476":1,"480":1,"482":1,"483":1,"493":1,"494":1,"495":1,"496":1,"497":1,"498":1,"563":1,"661":1,"662":1,"697":1,"701":1,"723":1,"725":1,"740":1,"743":1,"744":1,"745":1,"746":1,"747":1,"748":1,"749":1,"750":1,"751":1,"752":1,"753":1,"754":1,"755":1,"756":1,"764":1,"765":1,"799":1,"801":1,"828":1,"830":1,"854":1,"859":1,"886":1,"889":1,"918":1,"924":1,"953":1,"958":1,"987":1,"992":1,"1021":1,"1026":1,"1055":1,"1060":1,"1089":1,"1094":1,"1123":1,"1128":1,"1157":1,"1162":1,"1191":1,"1194":1,"1197":1,"1203":1,"1213":1,"1215":1,"1244":1,"1245":1,"1265":1,"1266":1,"1282":1,"1286":1,"1292":1,"1383":1,"1387":1,"1400":1,"1402":1,"1403":1,"1406":1,"1460":1,"1538":1,"1541":1,"1546":1,"1549":1,"1573":1,"1574":1,"1601":1,"1619":1,"1670":1,"1693":1,"1734":1,"1786":1,"1830":1,"1839":1,"1840":1,"1920":1,"1940":1,"1951":1,"1952":1,"1953":1,"1978":1,"1980":1,"2032":1,"2049":1,"2059":1,"2060":1,"2175":1,"2204":1,"2210":1,"2220":1,"2252":1,"2253":1,"2256":1,"2261":1,"2271":1,"2281":1,"2296":1,"2315":1,"2320":1,"2372":1,"2710":1,"2711":1,"2715":1,"2716":1,"2747":1,"2846":1,"2847":1,"2902":1},"1":{"476":1,"477":1,"478":1,"479":1,"494":1,"495":1,"496":1,"497":1,"498":1,"663":1,"664":1,"665":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"724":1,"741":1,"742":1,"744":1,"745":2,"746":1,"747":1,"748":1,"749":1,"751":1,"752":1,"753":1,"754":1,"756":1,"766":1,"767":1,"800":1,"829":1,"855":1,"856":1,"857":1,"858":1,"887":1,"888":1,"919":1,"920":1,"921":1,"922":1,"923":1,"954":1,"955":1,"956":1,"957":1,"988":1,"989":1,"990":1,"991":1,"1022":1,"1023":1,"1024":1,"1025":1,"1056":1,"1057":1,"1058":1,"1059":1,"1090":1,"1091":1,"1092":1,"1093":1,"1124":1,"1125":1,"1126":1,"1127":1,"1158":1,"1159":1,"1160":1,"1161":1,"1204":1,"1205":1,"1214":1,"1283":1,"1284":1,"1285":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1401":1,"1407":1,"1408":1,"1539":1,"1540":1,"1542":1,"1543":1,"1544":1,"1545":1,"1547":1,"1548":1,"1550":1,"1551":1,"1602":1,"1603":1,"1604":1,"1605":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1611":1,"1612":1,"1613":1,"1614":1,"1735":1,"1736":1,"1737":1,"1787":1,"1788":1,"1789":1,"1790":1,"1952":1,"1953":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2257":1,"2258":1,"2259":1,"2260":1,"2262":1,"2263":1,"2264":1,"2265":1,"2266":1,"2267":1,"2268":1,"2269":1,"2270":1,"2271":1,"2321":1,"2712":1,"2713":1,"2716":1,"2717":1,"2903":1,"2904":1,"2905":1,"2906":1,"2907":1,"2908":1,"2909":1,"2910":1,"2911":1,"2912":1,"2913":1,"2914":1,"2915":1,"2916":1,"2917":1,"2918":1,"2919":1,"2920":1,"2921":1,"2922":1,"2923":1,"2924":1,"2925":1},"2":{"28":1,"45":1,"50":1,"65":1,"69":1,"74":1,"83":2,"114":2,"118":1,"134":2,"149":1,"152":1,"160":2,"176":1,"183":4,"194":3,"198":1,"199":1,"217":1,"222":1,"233":1,"236":3,"238":1,"251":1,"262":2,"285":1,"293":3,"305":3,"314":3,"317":2,"391":2,"429":1,"470":1,"471":2,"472":1,"473":3,"474":2,"475":2,"480":2,"481":1,"487":2,"493":4,"494":1,"495":1,"496":1,"497":3,"498":1,"502":1,"511":2,"553":4,"556":1,"562":1,"568":1,"572":1,"639":1,"661":1,"662":1,"663":1,"664":1,"714":1,"718":2,"720":1,"725":1,"741":1,"746":2,"747":2,"749":3,"751":1,"752":1,"754":1,"756":2,"765":3,"766":1,"767":1,"801":1,"830":1,"859":1,"889":1,"918":4,"924":1,"958":1,"992":1,"1021":2,"1026":1,"1055":2,"1060":1,"1089":6,"1094":1,"1123":6,"1128":1,"1157":2,"1162":1,"1168":1,"1190":1,"1191":1,"1194":1,"1195":1,"1197":2,"1198":1,"1203":1,"1210":1,"1215":1,"1245":2,"1266":1,"1294":1,"1295":1,"1296":1,"1300":2,"1383":1,"1385":1,"1387":2,"1389":1,"1390":1,"1400":1,"1402":1,"1404":1,"1460":1,"1479":1,"1496":1,"1544":1,"1550":1,"1551":1,"1601":1,"1606":2,"1662":1,"1664":2,"1829":1,"1831":1,"1840":1,"1899":1,"1920":2,"1928":1,"1948":1,"1951":1,"1968":2,"1980":4,"2060":1,"2063":1,"2143":1,"2172":1,"2192":1,"2204":1,"2252":1,"2269":1,"2271":1,"2285":2,"2296":1,"2310":1,"2425":1,"2443":2,"2446":1,"2447":1,"2560":1,"2571":1,"2609":1,"2621":1,"2665":1,"2670":1,"2676":2,"2687":1,"2702":1,"2703":1,"2704":1,"2709":1,"2715":1,"2721":12,"2844":2,"2864":1,"2871":1,"2900":1,"2905":1,"2920":1,"2930":1}}],["configs",{"2":{"50":1,"77":1,"191":1,"199":1,"249":2,"285":1,"416":1,"1978":3}}],["config",{"0":{"69":1,"77":1,"83":1,"429":1,"473":1,"558":1,"716":1,"1460":1,"1480":1,"1625":1,"1742":1,"1846":1,"1996":1,"2069":1,"2409":1,"2447":1,"2883":1},"1":{"474":1,"475":1,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"559":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"717":1,"1743":1},"2":{"4":2,"14":1,"25":1,"28":1,"31":2,"34":2,"49":1,"50":1,"70":12,"74":1,"75":1,"76":1,"77":2,"83":2,"92":1,"93":2,"95":2,"114":5,"119":1,"133":2,"134":3,"145":4,"160":1,"169":2,"170":2,"176":4,"183":6,"184":2,"191":10,"199":21,"210":3,"212":1,"222":16,"224":1,"236":10,"246":1,"249":27,"262":2,"266":5,"273":1,"277":2,"285":3,"303":1,"308":1,"317":1,"328":27,"333":4,"338":1,"391":3,"427":2,"429":5,"469":1,"470":1,"471":1,"472":1,"473":1,"474":2,"476":1,"477":1,"478":1,"479":1,"480":1,"481":1,"486":1,"487":4,"493":4,"494":5,"495":2,"496":2,"497":2,"513":1,"553":2,"555":1,"556":1,"558":2,"577":1,"645":1,"658":1,"663":3,"664":2,"665":1,"667":4,"670":4,"671":4,"701":1,"714":1,"715":1,"718":2,"723":1,"724":1,"745":1,"746":2,"747":2,"748":1,"751":2,"752":2,"753":2,"756":2,"764":1,"765":1,"766":1,"767":1,"799":1,"800":1,"828":1,"854":1,"855":1,"856":1,"857":1,"858":1,"886":1,"887":1,"888":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"953":1,"954":1,"955":1,"956":1,"957":1,"987":1,"988":1,"989":1,"990":1,"991":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1192":1,"1195":1,"1198":1,"1200":1,"1201":1,"1202":1,"1203":1,"1205":1,"1206":1,"1210":1,"1213":1,"1214":1,"1245":3,"1266":1,"1282":1,"1283":1,"1284":1,"1285":1,"1294":1,"1297":1,"1298":1,"1309":1,"1310":1,"1314":1,"1316":1,"1328":1,"1351":1,"1369":1,"1389":1,"1393":1,"1402":1,"1407":21,"1410":1,"1412":1,"1427":1,"1457":1,"1460":3,"1468":1,"1471":1,"1472":1,"1473":1,"1474":2,"1475":1,"1476":1,"1477":1,"1478":1,"1479":1,"1481":1,"1482":1,"1483":1,"1484":2,"1485":1,"1486":1,"1487":1,"1495":1,"1496":2,"1497":1,"1512":1,"1516":2,"1538":1,"1539":1,"1540":1,"1573":1,"1583":1,"1584":1,"1588":2,"1589":1,"1591":1,"1592":1,"1601":1,"1606":1,"1613":1,"1619":2,"1649":1,"1655":1,"1656":1,"1657":1,"1659":1,"1660":1,"1661":1,"1670":1,"1672":1,"1674":1,"1677":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1734":1,"1735":1,"1736":1,"1737":1,"1762":1,"1780":1,"1782":2,"1787":1,"1788":1,"1789":1,"1790":1,"1825":1,"1829":1,"1830":2,"1840":4,"1843":1,"1845":1,"1915":1,"1916":1,"1918":2,"1920":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1942":1,"1951":1,"1960":1,"1961":1,"1962":1,"1971":1,"1972":1,"1973":2,"1974":1,"1976":2,"1978":2,"1991":1,"1994":2,"1995":1,"2006":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2042":1,"2043":2,"2049":1,"2060":4,"2063":1,"2064":1,"2068":1,"2073":2,"2074":1,"2159":1,"2172":1,"2174":1,"2175":1,"2181":1,"2182":1,"2184":2,"2185":1,"2186":1,"2199":2,"2200":1,"2213":1,"2220":1,"2252":1,"2264":2,"2265":2,"2266":1,"2267":2,"2268":1,"2269":1,"2286":1,"2294":1,"2295":1,"2296":3,"2298":1,"2302":2,"2312":1,"2315":3,"2320":1,"2321":1,"2323":1,"2324":1,"2368":1,"2377":2,"2384":2,"2407":2,"2408":1,"2409":7,"2411":5,"2444":1,"2447":23,"2551":1,"2576":3,"2585":1,"2586":1,"2587":1,"2598":1,"2600":1,"2601":1,"2643":1,"2645":1,"2678":1,"2684":1,"2694":1,"2700":1,"2702":1,"2705":1,"2707":1,"2712":1,"2716":2,"2717":1,"2721":4,"2745":1,"2747":1,"2749":11,"2750":2,"2757":1,"2788":1,"2844":1,"2873":4,"2883":3,"2884":1,"2885":1,"2887":2,"2901":1,"2903":2,"2904":1,"2905":3,"2912":2,"2913":2,"2914":2,"2915":1,"2918":1,"2921":4,"2923":2}}],["connects",{"0":{"1653":1},"2":{"1649":1,"2459":1}}],["connector",{"2":{"1395":1,"2258":1,"2487":1}}],["connectivity",{"2":{"2659":1,"2676":1}}],["connecting",{"0":{"390":1},"2":{"390":1,"920":1,"1091":1,"1125":1,"1310":1,"2258":1,"2420":2,"2476":1,"2595":1}}],["connection",{"2":{"92":1,"285":1,"308":1,"328":1,"568":1,"572":1,"1189":1,"1190":1,"1194":1,"1953":3,"2199":2,"2254":1,"2258":2,"2268":4,"2271":1,"2272":1,"2367":1,"2418":1,"2546":2,"2566":2,"2644":1,"2659":1,"2660":1,"2873":3}}],["connected",{"2":{"92":1,"160":1,"182":1,"249":1,"559":1,"563":1,"701":2,"713":1,"718":1,"723":3,"731":1,"737":1,"741":2,"799":1,"800":1,"802":1,"828":1,"831":1,"854":1,"855":1,"860":1,"886":1,"887":1,"890":1,"918":1,"919":1,"925":1,"953":1,"954":1,"959":1,"987":1,"988":1,"993":1,"1021":1,"1022":1,"1027":1,"1055":1,"1056":1,"1061":1,"1089":1,"1090":1,"1095":1,"1123":1,"1124":1,"1129":1,"1157":1,"1158":1,"1163":1,"1197":2,"1213":1,"1214":1,"1216":1,"1244":1,"1249":1,"1282":1,"1291":1,"1310":1,"1459":1,"1468":1,"1469":1,"1480":3,"1539":1,"1540":1,"1552":2,"1653":1,"1675":2,"1676":1,"1693":4,"1846":1,"1953":1,"1960":3,"1961":1,"1968":3,"1972":2,"1973":1,"1975":3,"1976":4,"2069":1,"2172":6,"2201":1,"2254":1,"2260":1,"2265":1,"2267":3,"2268":2,"2271":1,"2281":3,"2368":1,"2383":1,"2416":1,"2459":4,"2501":1,"2605":1,"2608":1,"2661":1,"2664":1,"2680":1,"2683":2,"2695":1,"2711":1,"2713":1,"2714":1,"2848":2,"2849":2,"2850":2,"2851":1,"2856":1,"2858":2,"2860":5,"2865":3,"2868":2,"2869":4,"2873":1,"2876":1}}],["connect",{"0":{"1654":1},"2":{"82":1,"92":1,"432":2,"764":1,"1244":1,"1265":1,"1308":1,"1310":1,"1649":1,"1654":1,"2256":1,"2259":1,"2260":1,"2367":1,"2421":1,"2422":1,"2423":2,"2427":1,"2476":1,"2478":1,"2480":1,"2482":1,"2487":1,"2500":1,"2501":1}}],["cons",{"2":{"2322":1,"2418":1}}],["consecutive",{"2":{"1965":5,"2313":1}}],["consequences",{"0":{"2740":1}}],["consequence",{"2":{"1417":1,"1522":1,"1587":1}}],["consequently",{"2":{"655":1}}],["consult",{"2":{"383":1,"698":1,"713":1,"751":1,"759":1,"1294":1,"2722":1}}],["consulted",{"2":{"142":1}}],["consuming",{"2":{"2591":1}}],["consumes",{"2":{"1955":1}}],["consume",{"2":{"1362":1,"1410":1}}],["consumed",{"2":{"586":1}}],["consumer",{"2":{"231":1,"236":1,"1348":1,"1354":1,"2276":1,"2542":1}}],["consumer2rn42",{"2":{"50":1}}],["consumer2bluefruit",{"2":{"50":1}}],["consumption",{"2":{"134":1,"222":1,"559":1,"646":1,"2447":3}}],["consist",{"2":{"2289":1}}],["consisting",{"2":{"1437":1,"2442":1}}],["consists",{"2":{"359":1,"470":1,"2862":1}}],["consistency",{"2":{"50":1,"114":2,"145":1,"183":1,"233":1,"285":1,"327":1,"510":1,"519":1,"527":1,"614":1,"621":1,"2719":2}}],["consistently",{"2":{"94":1,"176":2,"190":1,"191":1,"1284":1}}],["consistent",{"2":{"49":1,"191":1,"199":1,"293":1,"305":1,"314":1,"510":1,"559":1,"654":1,"672":1,"2749":1,"2847":1}}],["considers",{"2":{"2734":1,"2912":1}}],["considering",{"2":{"1591":1,"2770":1}}],["considerations",{"0":{"1362":1,"2258":1,"2272":1,"2562":1},"1":{"2273":1},"2":{"2658":1}}],["considerably",{"2":{"113":1}}],["consider",{"0":{"410":1},"2":{"410":1,"448":1,"538":1,"611":1,"617":1,"1414":1,"1616":1,"1824":1,"2424":1,"2425":1,"2560":2,"2677":1,"2678":1,"2679":1,"2690":1,"2691":1,"2888":1}}],["considered",{"2":{"241":1,"253":1,"270":1,"281":1,"307":1,"406":2,"567":1,"657":1,"1409":1,"1410":1,"1594":1,"1756":1,"1940":1,"1962":3,"1970":2,"2044":1,"2374":1,"2443":1,"2446":1,"2724":1,"2750":1,"2766":1,"2770":1,"2912":1,"2913":1}}],["construction",{"2":{"2749":2}}],["constructed",{"2":{"2052":1}}],["constraint",{"2":{"2894":1}}],["constraints",{"0":{"2727":1,"2894":1},"2":{"123":1,"134":1,"138":1,"717":1,"1297":1,"2323":1,"2881":1,"2894":2,"2895":1}}],["constraining",{"2":{"1421":1}}],["constrain",{"2":{"176":1,"1522":1,"1976":3}}],["constrained",{"2":{"123":1,"431":1,"2758":1,"2766":1,"2881":1}}],["const",{"0":{"770":1,"773":1,"779":1,"782":1,"785":1,"1256":1,"1274":1,"1709":1,"1711":1,"1715":1,"2227":1,"2229":1,"2231":1,"2233":1,"2342":1},"1":{"771":1,"772":1,"774":1,"775":1,"780":1,"781":1,"783":1,"784":1,"786":1,"787":1,"1257":1,"1258":1,"1275":1,"1710":1,"1712":1,"1716":1,"2228":1,"2230":1,"2232":1,"2234":1,"2343":1},"2":{"247":1,"272":1,"307":1,"587":1,"771":1,"774":1,"780":1,"783":1,"786":1,"1257":1,"1275":1,"1440":2,"1521":1,"1528":1,"1529":2,"1596":1,"1597":1,"1598":1,"1599":6,"1611":1,"1612":1,"1650":1,"1661":1,"1710":1,"1712":1,"1716":1,"1768":1,"1770":6,"1771":3,"1773":1,"1918":1,"1948":1,"1949":1,"1956":13,"2180":7,"2182":6,"2184":3,"2228":1,"2230":1,"2232":1,"2234":1,"2270":5,"2278":1,"2279":1,"2283":10,"2298":1,"2305":1,"2322":1,"2343":1,"2550":1,"2555":1,"2750":7}}],["constantly",{"2":{"2288":1}}],["constant",{"0":{"1931":1},"2":{"191":1,"198":1,"517":1,"1444":1,"1492":1,"1587":1,"1928":3,"1929":2,"1931":2,"1932":1,"1933":1,"2760":2,"2768":2,"2905":1}}],["constants",{"0":{"373":1},"2":{"76":1,"188":1,"191":1,"285":1,"373":10,"698":1,"1417":1,"1587":1,"1782":1,"2921":1}}],["constellation",{"2":{"102":3,"114":1,"222":1}}],["consoles",{"2":{"82":1,"432":1}}],["console",{"0":{"82":1,"432":1,"1330":1},"2":{"50":1,"70":1,"82":2,"93":1,"111":1,"114":4,"119":2,"134":3,"249":1,"277":1,"308":1,"432":9,"572":2,"573":1,"623":1,"1206":1,"1319":1,"1322":1,"1326":2,"1329":2,"1330":2,"1362":1,"1373":1,"1422":2,"1529":1,"1586":1,"1618":1,"1619":7,"1621":1,"1942":1,"1969":1,"1991":1,"2411":1,"2747":2,"2939":1,"2941":1}}],["consolidating",{"2":{"251":1}}],["consolidation",{"0":{"42":1,"209":1},"2":{"50":2,"198":1,"224":1,"233":1,"266":1,"2722":1}}],["consolidated",{"0":{"1466":1},"2":{"208":1}}],["consolidate",{"0":{"215":1},"2":{"191":1,"199":1,"210":1,"215":1,"222":1,"236":1,"249":1,"285":1,"294":2,"1466":1}}],["consolidates",{"2":{"50":1}}],["contiguous",{"2":{"2200":1}}],["continually",{"2":{"1362":1}}],["continuations",{"2":{"199":1}}],["continuing",{"2":{"403":1}}],["continued",{"2":{"238":1,"262":1}}],["continues",{"2":{"133":1,"251":1,"427":1,"1591":1,"1594":1,"1978":1,"2293":1,"2627":1,"2881":1}}],["continue",{"2":{"64":1,"145":1,"240":1,"246":1,"410":1,"1440":1,"1594":2,"1798":1,"1824":1,"1905":1,"1911":1,"1934":1,"2149":1,"2155":1,"2253":1,"2324":1,"2600":1,"2627":2,"2721":1}}],["continuously",{"2":{"1824":1,"1983":1}}],["continuous",{"0":{"1682":1},"2":{"32":1,"1674":6,"1682":1,"1978":1,"1979":1,"2191":2}}],["cont",{"2":{"1674":1}}],["contoller",{"2":{"1194":1}}],["contacted",{"2":{"2560":1}}],["contacts",{"2":{"1410":1,"2422":1,"2427":1,"2459":1}}],["contact",{"0":{"1409":2},"1":{"1410":2,"1411":2,"1412":2,"1413":2,"1414":2},"2":{"594":1,"1409":5,"1639":4,"1647":1,"1648":2,"1978":1,"2420":1,"2421":3,"2459":1}}],["contained",{"2":{"485":1,"666":1,"1844":1,"2066":1,"2844":1}}],["container",{"2":{"222":1,"684":1,"685":1,"2401":2,"2600":1,"2603":1,"2762":1,"2771":1}}],["contains",{"2":{"431":3,"553":2,"555":1,"557":1,"630":1,"728":1,"804":1,"833":1,"862":1,"892":1,"927":1,"961":1,"995":1,"1029":1,"1063":1,"1097":1,"1131":1,"1165":1,"1218":1,"1278":1,"1280":1,"1359":4,"1427":3,"1627":1,"1638":1,"1740":1,"1760":1,"1976":1,"2171":1,"2289":1,"2293":1,"2420":1,"2495":1,"2583":1,"2633":1,"2645":1,"2721":1,"2758":2,"2761":1,"2762":1,"2763":2,"2766":2,"2771":1,"2773":1,"2776":3,"2844":2,"2862":2,"2864":1,"2871":1,"2919":1}}],["contain",{"2":{"236":1,"268":1,"542":1,"579":1,"586":3,"698":1,"718":1,"1427":1,"1675":1,"1805":1,"2052":1,"2322":1,"2369":1,"2445":1,"2449":2,"2450":1,"2601":1,"2710":1,"2713":1,"2719":2,"2762":1,"2938":1}}],["containing",{"0":{"417":1},"2":{"141":1,"191":2,"222":1,"265":1,"284":1,"293":1,"305":1,"307":1,"314":1,"372":1,"473":1,"562":1,"1714":1,"1716":1,"1741":1,"2050":1,"2051":1,"2052":1,"2311":1,"2342":1,"2443":1,"2473":1,"2578":1,"2590":1,"2721":1,"2722":1,"2758":1,"2766":1,"2773":1,"2879":1,"2937":1}}],["context",{"2":{"654":1,"1189":1,"1773":1,"1775":4,"2503":2,"2541":1,"2553":1,"2727":1}}],["contexts",{"2":{"538":1}}],["content",{"0":{"2430":1},"1":{"2431":1},"2":{"160":1,"266":1,"294":2,"351":1,"352":1,"353":1,"354":1,"355":5,"356":1,"370":1,"391":1,"746":1,"1329":1,"1466":1,"1621":1,"1948":1,"1950":2,"2037":1,"2280":2,"2430":1,"2446":1,"2562":1,"2598":1,"2600":1,"2627":1,"2671":1,"2757":2}}],["contents",{"2":{"50":1,"230":1,"611":2,"673":1,"674":2,"1785":1,"1956":3,"2182":1,"2199":1,"2283":1,"2497":1,"2555":1,"2627":1,"2719":1,"2749":2,"2760":1,"2768":1,"2769":1,"2776":2,"2941":1}}],["contrast",{"2":{"1783":1,"2176":1,"2276":1,"2281":2}}],["control+click",{"2":{"2671":1}}],["control+shift",{"2":{"1782":1,"2921":1}}],["control+shift+escape",{"2":{"1670":1}}],["control+a",{"2":{"1442":1}}],["control+alt+delete",{"2":{"1374":1}}],["control+right",{"2":{"683":1}}],["controls",{"0":{"1770":1},"2":{"572":1,"687":1,"724":1,"763":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1204":1,"1401":1,"1497":1,"1538":1,"1540":1,"1606":3,"1732":1,"1830":5,"2007":1,"2063":2,"2268":1,"2578":1,"2747":2,"2750":1,"2808":1}}],["controllable",{"2":{"487":1,"1540":1}}],["controlling",{"2":{"166":1,"721":1,"797":1,"852":1,"884":1,"916":1,"951":1,"985":1,"1019":1,"1053":1,"1087":1,"1121":1,"1155":1,"1211":1,"1775":1,"1776":1,"1995":1}}],["controlled",{"2":{"45":1,"646":1,"658":1,"1676":1,"1780":1,"1978":1,"2065":1,"2203":1,"2643":1,"2750":4}}],["controllerwords",{"2":{"191":1}}],["controllerworks",{"2":{"191":1}}],["controllers",{"2":{"50":1,"134":1,"222":1,"563":1,"718":1,"1194":1,"1385":1,"1388":1,"1396":1,"1914":1,"1955":1,"1963":1,"2172":1,"2182":1,"2254":2,"2256":1,"2258":2,"2266":5,"2271":1,"2423":1,"2706":1}}],["controller",{"0":{"2031":1,"2423":1},"1":{"2424":1},"2":{"36":2,"50":1,"92":1,"93":1,"114":1,"134":1,"176":2,"210":2,"215":1,"221":1,"222":2,"716":1,"1196":1,"1308":1,"1312":1,"1406":1,"1459":1,"1484":1,"1656":1,"1732":1,"1917":1,"1941":1,"1951":1,"1954":1,"1964":1,"1967":1,"1976":1,"2030":1,"2031":1,"2258":1,"2264":2,"2265":1,"2266":6,"2271":2,"2274":1,"2316":1,"2397":1,"2416":1,"2417":2,"2419":1,"2423":1,"2424":5,"2426":1,"2428":1,"2459":2,"2478":1,"2480":1,"2482":1,"2582":2,"2657":1,"2661":2,"2664":2,"2749":2,"2750":1,"2876":1,"2881":1,"2888":1}}],["control",{"0":{"265":1,"275":1,"724":1,"757":1,"818":1,"820":1,"824":1,"846":1,"848":1,"851":1,"858":1,"908":1,"910":1,"914":1,"923":1,"943":1,"945":1,"949":1,"957":1,"977":1,"979":1,"983":1,"991":1,"1011":1,"1013":1,"1017":1,"1025":1,"1045":1,"1047":1,"1051":1,"1059":1,"1093":1,"1127":1,"1161":1,"1234":1,"1236":1,"1240":1,"1366":1,"1917":1,"1934":1,"2000":1,"2001":1,"2003":1,"2006":1,"2040":1},"1":{"758":1,"759":1,"760":1,"819":1,"821":1,"825":1,"847":1,"849":1,"909":1,"911":1,"915":1,"944":1,"946":1,"950":1,"978":1,"980":1,"984":1,"1012":1,"1014":1,"1018":1,"1046":1,"1048":1,"1052":1,"1235":1,"1237":1,"1241":1,"2001":1,"2002":1,"2003":1,"2004":2,"2005":2,"2006":1},"2":{"63":1,"114":1,"160":1,"195":1,"199":2,"231":1,"236":3,"249":1,"265":1,"268":1,"275":1,"277":1,"285":1,"308":1,"331":1,"487":1,"488":1,"492":2,"523":1,"571":1,"572":2,"623":1,"667":1,"683":2,"687":1,"723":1,"757":2,"758":1,"818":2,"820":2,"824":1,"846":2,"848":2,"851":1,"854":1,"857":1,"908":2,"910":2,"914":1,"918":1,"922":1,"943":2,"945":2,"949":1,"953":1,"956":1,"977":2,"979":2,"983":1,"987":1,"990":1,"1011":2,"1013":2,"1017":1,"1021":1,"1024":1,"1045":2,"1047":2,"1051":1,"1055":1,"1058":1,"1089":1,"1092":1,"1123":1,"1126":1,"1157":1,"1160":1,"1234":2,"1236":2,"1240":1,"1263":1,"1280":1,"1300":1,"1308":1,"1313":1,"1366":2,"1374":14,"1375":3,"1407":1,"1437":1,"1442":2,"1451":1,"1458":1,"1466":1,"1480":4,"1485":1,"1492":1,"1497":1,"1504":1,"1535":1,"1540":1,"1545":1,"1586":1,"1670":1,"1684":1,"1770":1,"1831":1,"1838":1,"1917":1,"1934":2,"1958":1,"1962":1,"1995":1,"2000":1,"2004":1,"2006":1,"2041":1,"2058":1,"2069":1,"2171":2,"2174":1,"2180":1,"2202":1,"2203":1,"2248":1,"2249":4,"2250":2,"2291":1,"2302":1,"2310":1,"2311":1,"2312":1,"2324":1,"2372":2,"2411":2,"2420":1,"2438":1,"2453":1,"2496":1,"2503":7,"2504":1,"2519":17,"2522":16,"2523":14,"2528":14,"2531":2,"2539":2,"2542":4,"2548":17,"2565":20,"2566":2,"2605":1,"2643":1,"2644":14,"2710":1,"2745":1,"2825":1,"2849":1,"2875":1,"2882":2,"2903":1,"2912":1,"2913":1,"2914":1,"2921":1}}],["contributor",{"2":{"2740":1,"2778":1}}],["contributors",{"2":{"163":1,"607":2,"2721":1}}],["contribution",{"0":{"611":1},"2":{"607":1,"611":1,"2691":1}}],["contributions",{"2":{"607":1,"611":1,"613":1,"2740":1}}],["contributing",{"2":{"410":1,"614":1,"2398":1,"2563":1,"2625":2,"2723":1}}],["contribute",{"0":{"607":1},"1":{"608":1},"2":{"340":1,"431":1,"486":1,"540":1,"607":1,"609":1,"613":1,"2324":1,"2440":1,"2465":2}}],["contributed",{"2":{"123":1,"2301":1}}],["contrib",{"0":{"10":1,"415":1,"417":1},"2":{"10":2,"69":1,"108":1,"114":2,"134":2,"145":1,"163":1,"176":4,"191":2,"199":1,"210":1,"249":1,"294":1,"328":1,"405":1,"413":1,"415":2,"416":1,"552":1,"2398":1,"2685":3,"2688":1,"2691":2}}],["convenient",{"2":{"1591":1,"1836":1,"1978":1,"2159":1,"2646":1,"2666":1}}],["conveniently",{"2":{"1532":1}}],["convenience",{"2":{"763":1,"2221":1,"2565":1,"2750":1}}],["conventional",{"2":{"2915":1}}],["convention",{"2":{"249":1,"589":1,"1410":5,"1631":1,"2632":1,"2696":1,"2720":1}}],["conventions",{"0":{"4":1,"510":1,"512":1,"612":1},"2":{"134":2,"243":1,"331":1,"408":1,"511":1,"607":1,"612":2,"614":1,"617":1,"1410":2,"2673":1,"2901":2}}],["convey",{"2":{"188":1,"492":1}}],["conversely",{"2":{"2905":1}}],["conversation",{"2":{"542":1,"666":1}}],["conversions",{"2":{"65":1,"77":1,"189":1,"266":25,"1404":1}}],["conversion",{"0":{"1957":1,"2684":1},"2":{"49":1,"172":1,"222":3,"693":1,"714":1,"715":1,"1285":1}}],["converts",{"2":{"167":1,"464":1,"465":1,"466":1,"2074":1,"2748":3,"2776":1,"2906":1}}],["converters",{"0":{"172":1,"189":1,"1385":1,"1386":1,"1388":1,"1396":1},"1":{"1386":1,"1387":1,"1388":1,"1389":2,"1390":2,"1391":2,"1392":2,"1393":2,"1394":2,"1395":2,"1396":1,"1397":2,"1398":2,"1399":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1,"1405":1},"2":{"145":2,"172":1,"176":2,"189":4,"191":2,"199":1,"302":1,"304":1,"306":1,"315":1,"468":1,"1386":1,"1402":1,"2582":1}}],["converter",{"0":{"271":1,"306":1,"315":1},"2":{"114":1,"133":1,"134":1,"145":2,"176":4,"181":2,"189":2,"191":3,"199":3,"218":3,"222":1,"249":1,"271":1,"277":1,"285":1,"306":1,"308":1,"315":1,"317":1,"328":1,"687":1,"1385":1,"1386":1,"1387":3,"1389":1,"1390":1,"1400":1,"1402":1,"1403":1,"1404":2,"1672":1,"1691":1,"2749":1,"2776":1,"2778":1}}],["converted",{"2":{"22":1,"50":1,"212":1,"249":1,"441":1,"445":1,"668":1,"1407":1,"2368":1,"2577":1,"2603":1,"2721":1,"2748":1,"2781":1}}],["convert",{"0":{"304":1,"464":1,"466":1},"2":{"93":1,"114":1,"134":1,"138":1,"145":3,"160":4,"172":1,"176":1,"222":2,"236":3,"266":3,"277":2,"288":1,"304":2,"308":1,"317":2,"461":1,"1285":1,"1295":1,"1385":3,"1387":1,"1388":42,"1389":1,"1396":15,"1403":2,"1417":1,"2222":1,"2684":2,"2746":1,"2748":4,"2750":2,"2776":2,"2886":1,"2941":2}}],["converting",{"0":{"21":1},"2":{"138":1,"189":1,"251":1,"465":1,"1385":1,"1534":1,"2748":2}}],["com4",{"2":{"2676":1}}],["comx",{"2":{"2495":1}}],["com>",{"2":{"2457":4}}],["comfortably",{"2":{"1789":1}}],["comfortable",{"2":{"663":1,"670":1,"2156":1,"2310":1,"2398":1,"2903":1}}],["coming",{"2":{"228":1,"1308":4,"1606":1,"1943":1,"2459":1}}],["come",{"2":{"536":1,"1369":1,"2171":1,"2293":1,"2319":1,"2386":1,"2388":1,"2389":1,"2391":1,"2420":1,"2474":1}}],["comet46",{"2":{"154":2,"160":1,"176":1}}],["comes",{"2":{"99":1,"233":1,"492":1,"515":1,"680":1,"1473":1,"1493":1,"1680":1,"1777":1,"1824":1,"2270":1,"2376":1,"2381":1,"2427":1,"2592":1,"2612":1,"2650":1,"2750":1}}],["comb",{"2":{"231":1,"1616":5}}],["combination",{"2":{"320":1,"540":1,"541":1,"559":1,"663":1,"683":1,"696":2,"1417":1,"1589":3,"1596":1,"1618":1,"1619":1,"1661":1,"1760":1,"1764":1,"1775":2,"1781":1,"1893":1,"1894":1,"1895":1,"1896":1,"1976":1,"2131":1,"2132":1,"2133":1,"2134":1,"2656":1,"2923":1}}],["combinations",{"2":{"99":1,"294":1,"713":1,"760":1,"1386":1,"1404":1,"1670":1,"1760":2,"1781":1,"1945":1,"2159":1,"2166":1,"2374":1,"2410":1,"2565":1,"2643":1}}],["combining",{"2":{"176":1,"573":1,"1375":1,"1512":1,"1612":1,"2377":1,"2384":1,"2879":1,"2918":1}}],["combines",{"2":{"1510":1,"1603":1}}],["combinedmap",{"2":{"2294":1}}],["combined",{"0":{"1932":1,"1990":1},"2":{"176":1,"312":1,"553":1,"573":3,"1416":1,"1655":1,"1828":1,"1928":1,"1932":3,"1933":1,"1980":2,"1982":9,"1990":2,"1992":1,"2156":1,"2171":1,"2294":2,"2418":1,"2492":1,"2497":1,"2844":2}}],["combinedkeys",{"2":{"114":1}}],["combine",{"0":{"1828":1},"2":{"64":1,"249":1,"481":1,"516":1,"663":1,"1374":1,"1442":1,"1982":2,"1990":1,"2041":1,"2182":1,"2565":1}}],["combo\`",{"2":{"1607":1}}],["combo2",{"2":{"1596":2,"1597":1,"1598":2}}],["combo1",{"2":{"1596":2,"1597":1,"1598":2}}],["combos",{"0":{"1596":1,"1598":1,"1604":1,"1613":1,"1781":1},"1":{"1597":1,"1598":1,"1599":1,"1600":1,"1601":1,"1602":1,"1603":1,"1604":1,"1605":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1611":1,"1612":1,"1613":1,"1614":2,"1615":1,"1616":1},"2":{"46":1,"98":3,"114":2,"176":1,"222":1,"328":2,"562":2,"1596":1,"1597":1,"1598":3,"1599":5,"1602":2,"1603":10,"1604":1,"1605":1,"1606":5,"1607":3,"1608":1,"1609":2,"1610":1,"1611":2,"1612":2,"1613":3,"1616":6,"1781":3,"1783":1,"1936":1,"2900":1,"2918":2}}],["combo",{"0":{"98":1,"1602":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1614":1,"2855":1},"1":{"1609":1,"1610":1},"2":{"46":7,"98":3,"112":2,"114":1,"145":1,"160":2,"188":1,"191":1,"199":2,"210":1,"214":1,"222":3,"285":2,"562":20,"572":2,"1588":1,"1596":9,"1597":3,"1598":6,"1599":36,"1600":7,"1602":2,"1603":5,"1604":7,"1605":1,"1606":80,"1607":12,"1608":1,"1609":2,"1610":1,"1611":19,"1612":23,"1613":1,"1614":16,"1615":9,"1616":7,"2411":1,"2588":1,"2721":1,"2748":2,"2855":3,"2933":1}}],["competitive",{"2":{"2561":1}}],["compensating",{"2":{"2044":1}}],["compensated",{"2":{"2724":1}}],["compensate",{"2":{"1410":1,"1487":1,"2044":4}}],["comprising",{"2":{"2650":1,"2862":1,"2872":1}}],["comprise",{"2":{"2578":1}}],["comprises",{"2":{"390":1}}],["compression",{"2":{"2398":1,"2758":1,"2760":3,"2766":1,"2770":4}}],["compressing",{"2":{"2398":2}}],["comprehensions",{"0":{"528":1},"2":{"528":1,"529":1}}],["comprehensive",{"2":{"503":1,"540":1}}],["compromised",{"2":{"312":1}}],["composite",{"2":{"2030":1}}],["composed",{"2":{"1603":1}}],["compose",{"2":{"210":1,"1375":1,"1829":1,"1830":2,"1832":1,"2860":2}}],["component",{"2":{"1635":2,"2731":2,"2734":1,"2771":3,"2870":1,"2871":1,"2935":1}}],["components",{"2":{"130":1,"1284":1,"1310":1,"2420":1,"2722":1,"2732":1,"2734":1,"2740":1}}],["computationally",{"2":{"1413":1}}],["computed",{"2":{"1979":1,"2371":1}}],["compute",{"2":{"191":1,"2371":1}}],["computers",{"0":{"2466":1},"1":{"2467":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1}}],["computer",{"2":{"62":1,"598":1,"624":1,"684":1,"1367":1,"1436":1,"1437":1,"1440":1,"1447":1,"1448":1,"1487":1,"1517":3,"1619":1,"1760":1,"1782":1,"1834":1,"1932":1,"1933":1,"1942":1,"1979":2,"1983":2,"2047":1,"2063":1,"2265":1,"2398":4,"2411":1,"2461":1,"2503":2,"2542":2,"2546":1,"2566":1,"2572":4,"2591":1,"2598":1,"2630":1,"2632":1,"2643":1,"2644":1,"2792":1,"2806":1,"2839":1,"2842":1,"2914":1,"2921":1,"2927":1,"2932":1,"2938":1}}],["computing",{"2":{"154":9,"160":1,"181":2,"270":2,"277":1,"317":1}}],["companies",{"2":{"2795":1}}],["companying",{"2":{"1607":1}}],["company",{"0":{"42":1},"2":{"43":1}}],["compact",{"2":{"536":1,"681":1,"1421":1,"2565":1}}],["comparing",{"2":{"2288":1,"2932":1}}],["comparisons",{"2":{"222":1}}],["comparison",{"0":{"2907":1},"1":{"2908":1,"2909":1,"2910":1},"2":{"190":1,"191":2,"248":1,"333":1}}],["compares",{"2":{"1981":1,"2932":1}}],["compared",{"2":{"1968":1,"2561":1,"2609":1,"2721":1,"2913":1}}],["compare",{"2":{"51":1,"405":1,"2632":1,"2904":1,"2907":1}}],["compatible",{"0":{"306":1,"315":1,"543":1,"1632":1},"1":{"544":1,"545":1,"546":1,"547":1,"548":1,"549":1,"550":1,"551":1,"552":1},"2":{"132":3,"134":1,"160":1,"172":1,"199":1,"294":1,"306":2,"315":2,"320":1,"359":1,"378":1,"543":1,"552":1,"576":2,"1280":1,"1321":1,"1385":1,"1387":1,"1388":1,"1402":1,"1404":2,"1461":1,"1627":1,"1659":1,"1945":1,"1967":1,"2254":2,"2256":1,"2266":4,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":1,"2395":1,"2397":1,"2414":1,"2498":1,"2582":1,"2662":1,"2683":1,"2687":2,"2705":3,"2706":1,"2707":3,"2719":1,"2729":1,"2741":1,"2749":11,"2846":1,"2888":1,"2901":1,"2923":1}}],["compatiblitly",{"2":{"75":1}}],["compatibility",{"0":{"1370":1,"1371":1,"1404":1,"1405":1,"2255":1},"1":{"1372":1,"1405":1},"2":{"31":1,"34":1,"98":1,"114":1,"176":1,"249":1,"262":1,"273":1,"276":1,"285":1,"293":1,"305":1,"312":1,"314":1,"316":1,"331":1,"512":1,"514":1,"573":1,"717":1,"1386":1,"1400":1,"1404":2,"1544":1,"2253":1,"2324":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2560":1,"2685":1,"2687":1,"2719":1,"2721":2}}],["compilable",{"2":{"2443":6}}],["compilation",{"0":{"132":1,"302":1,"468":1},"2":{"36":1,"88":2,"104":2,"114":2,"127":2,"132":3,"134":6,"160":4,"170":1,"176":6,"191":2,"199":2,"210":5,"222":5,"236":2,"249":1,"254":1,"266":1,"285":1,"308":3,"317":1,"371":3,"427":5,"468":1,"536":1,"570":2,"579":1,"584":1,"599":1,"621":2,"2410":2,"2448":1,"2449":1,"2590":1,"2897":1}}],["compiliation",{"2":{"285":1,"294":1}}],["compiling",{"0":{"2589":1},"2":{"58":1,"73":2,"92":1,"134":1,"368":2,"371":1,"419":1,"427":6,"453":1,"467":1,"569":1,"570":1,"581":1,"590":1,"596":1,"613":1,"1334":1,"1392":1,"1458":1,"1466":2,"1946":1,"2203":1,"2277":1,"2290":1,"2404":1,"2410":7,"2578":1,"2750":2}}],["compiledfirmware",{"2":{"428":1}}],["compiledb",{"2":{"132":1,"134":1,"302":1,"427":2,"468":1,"2675":1}}],["compiled",{"2":{"50":1,"182":1,"222":2,"364":1,"428":1,"432":1,"570":1,"577":1,"587":1,"590":1,"1432":1,"1466":1,"2425":1,"2427":1,"2573":1,"2580":1,"2602":1,"2676":2,"2881":1,"2882":1,"2900":1,"2927":2,"2938":1}}],["compiles",{"2":{"49":1,"176":1,"199":1,"453":1,"613":1,"1462":1,"1466":1,"2410":1,"2580":1,"2727":1,"2937":1}}],["compile",{"0":{"362":1,"363":1,"364":1,"365":1,"370":1,"427":1,"453":1,"580":1,"581":1,"582":1,"599":1,"605":1,"2804":1},"2":{"24":1,"28":1,"36":2,"37":1,"43":1,"73":1,"114":8,"120":1,"132":2,"134":3,"145":1,"160":1,"176":2,"191":1,"199":3,"294":1,"302":1,"308":1,"347":1,"359":4,"362":1,"367":1,"370":3,"371":1,"372":2,"374":1,"378":1,"416":1,"427":20,"428":1,"446":1,"447":1,"448":1,"453":2,"468":1,"471":8,"477":1,"478":1,"479":2,"481":5,"483":2,"494":2,"515":3,"561":1,"576":3,"579":4,"584":1,"586":1,"591":1,"599":1,"617":3,"1363":1,"1385":1,"1392":1,"1435":1,"1460":1,"1494":1,"1497":1,"1515":1,"1516":1,"1589":1,"2287":1,"2290":1,"2384":1,"2390":1,"2398":1,"2401":1,"2407":1,"2410":7,"2425":3,"2494":1,"2504":1,"2580":3,"2583":1,"2587":1,"2589":3,"2591":1,"2600":1,"2609":1,"2611":1,"2622":2,"2648":1,"2665":1,"2671":1,"2675":3,"2676":1,"2707":1,"2727":1,"2745":2,"2820":2,"2844":1,"2899":1,"2940":1}}],["compilers",{"2":{"2732":1}}],["compiler",{"0":{"358":1,"584":1},"2":{"21":1,"73":1,"160":1,"191":1,"199":1,"308":1,"358":1,"360":1,"376":1,"580":1,"583":2,"584":1,"1440":1,"1464":1,"2448":1,"2591":1,"2731":1,"2936":1,"2938":1}}],["comply",{"2":{"579":1,"2458":1}}],["complicated",{"2":{"538":1,"1406":2,"1417":1,"1463":1,"1486":1,"1599":1,"2302":1,"2416":1,"2557":1,"2566":1,"2605":1}}],["compliance",{"2":{"210":1,"263":1,"2559":1,"2560":1,"2740":1,"2743":1}}],["compliant",{"2":{"24":1}}],["compliation",{"2":{"114":1}}],["complaints",{"2":{"139":1}}],["complements",{"2":{"2161":1}}],["complementary",{"2":{"93":1,"249":1,"294":1,"718":2,"1300":4}}],["completing",{"2":{"2421":1,"2427":1}}],["completion",{"0":{"505":1},"1":{"506":1,"507":1,"508":1,"509":1},"2":{"279":1,"505":1,"506":1,"508":1,"760":1,"2646":1,"2666":1}}],["completes",{"2":{"1791":1,"2459":1,"2906":1,"2932":1}}],["completed",{"2":{"579":1,"582":1,"1283":1,"1385":1,"2398":2,"2421":1,"2590":1,"2601":1,"2615":1,"2676":1,"2680":1,"2814":1,"2897":1}}],["complete",{"0":{"127":1},"2":{"70":1,"126":1,"236":2,"263":1,"338":3,"360":1,"371":2,"397":1,"505":1,"507":1,"508":3,"509":2,"670":1,"681":1,"750":1,"1202":1,"1205":1,"1245":1,"1340":1,"1486":1,"1528":1,"1783":1,"1787":1,"2312":1,"2338":1,"2362":1,"2421":1,"2423":1,"2501":1,"2579":1,"2580":1,"2584":1,"2626":1,"2652":1,"2656":1,"2709":1,"2719":1,"2721":1,"2741":1,"2863":1}}],["completely",{"2":{"49":1,"195":2,"262":1,"266":1,"562":1,"1416":1,"1479":1,"1484":1,"1516":1,"1610":1,"1655":1,"1760":2,"1773":1,"2415":1,"2421":1,"2495":1,"2551":1,"2579":1}}],["complex",{"0":{"521":1,"1344":1,"2306":1},"1":{"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"134":1,"528":1,"624":1,"669":1,"1407":1,"1445":1,"1596":1,"1651":1,"1775":1,"1844":5,"2047":1,"2066":5,"2306":1,"2416":1}}],["complexity",{"2":{"3":1,"15":1,"138":1,"222":1,"528":1,"2746":1}}],["commercial",{"2":{"2390":1,"2685":1,"2721":2,"2728":1,"2740":1}}],["commenting",{"2":{"411":1}}],["commented",{"2":{"199":1,"2721":2}}],["comment",{"2":{"92":1,"160":2,"191":2,"412":1,"424":1,"510":1,"512":1,"2721":1}}],["comments",{"2":{"77":1,"114":1,"176":1,"222":1,"411":1,"503":1,"510":2,"512":2,"619":1,"1655":1,"1656":1,"1920":1,"2721":2}}],["comm",{"2":{"369":1,"587":2,"1587":1,"2503":1,"2537":1,"2556":1,"2915":1,"2916":1}}],["committee",{"2":{"2706":1}}],["committed",{"2":{"2398":1,"2602":1,"2628":1,"2633":1}}],["committing",{"2":{"613":1,"2723":1}}],["commits",{"2":{"617":1,"2627":5,"2628":1,"2630":2,"2633":1,"2669":1}}],["commit",{"0":{"2597":1,"2601":1,"2631":1},"1":{"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2632":1,"2633":1,"2634":1},"2":{"199":1,"403":1,"405":4,"416":1,"577":1,"586":3,"587":2,"611":1,"613":2,"2398":2,"2588":1,"2591":1,"2593":1,"2594":1,"2596":1,"2601":3,"2602":1,"2603":1,"2625":1,"2626":1,"2627":9,"2628":1,"2631":1,"2633":5,"2669":1,"2723":2}}],["comms",{"2":{"176":1,"191":2,"2746":1}}],["comma",{"2":{"524":1,"525":3,"669":2,"1522":1,"1686":1,"2270":1,"2310":1,"2320":1,"2503":2,"2537":1,"2543":1,"2578":1,"2671":1}}],["commas",{"2":{"145":1,"222":1,"1627":1,"2578":1,"2720":1}}],["command+option+escape",{"2":{"1670":1}}],["command+",{"2":{"342":1,"1669":1}}],["commandline",{"2":{"285":1}}],["commands",{"0":{"425":1,"426":1,"449":1,"455":1,"2541":1,"2748":1},"1":{"427":1,"428":1,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":1,"436":1,"437":1,"438":1,"439":1,"440":1,"441":1,"442":1,"443":1,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"456":1,"457":1,"458":1,"459":1,"460":1,"461":1,"462":1,"463":1,"464":1,"465":1,"466":1,"467":1,"468":1},"2":{"55":1,"93":1,"114":2,"132":2,"134":1,"138":1,"143":1,"160":1,"173":1,"199":1,"333":1,"403":2,"405":1,"419":1,"427":3,"453":1,"463":2,"472":2,"497":1,"541":2,"559":1,"572":2,"1313":1,"1330":1,"1466":1,"1522":1,"1724":1,"1955":1,"1956":1,"2284":1,"2410":2,"2411":2,"2442":1,"2496":1,"2584":1,"2594":1,"2598":2,"2601":1,"2607":1,"2612":1,"2632":1,"2637":2,"2675":2,"2750":2}}],["command",{"0":{"82":1,"83":1,"173":1,"1589":1,"1617":1,"1724":2,"2453":1,"2609":1,"2637":1},"1":{"1618":1,"1619":1,"1725":2},"2":{"1":1,"10":2,"18":2,"65":1,"70":3,"82":1,"83":1,"93":1,"111":1,"114":1,"143":1,"145":1,"173":1,"176":1,"199":1,"222":2,"302":2,"308":1,"347":1,"348":2,"381":1,"387":3,"419":1,"423":1,"427":2,"428":3,"429":1,"430":1,"431":1,"432":1,"433":1,"435":1,"438":1,"439":1,"440":2,"441":1,"442":1,"443":2,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"456":1,"457":2,"458":1,"459":2,"460":1,"461":1,"462":1,"463":1,"464":2,"465":2,"466":2,"467":1,"468":2,"471":2,"472":2,"473":1,"481":1,"487":1,"494":2,"511":1,"541":1,"559":1,"572":1,"587":1,"615":1,"683":2,"685":1,"765":1,"1312":2,"1319":1,"1322":1,"1346":1,"1363":2,"1385":1,"1429":1,"1462":1,"1466":2,"1586":2,"1588":1,"1589":7,"1617":3,"1618":3,"1619":6,"1724":2,"1725":2,"2251":3,"2266":1,"2281":1,"2295":1,"2324":1,"2376":2,"2379":1,"2381":2,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2398":2,"2401":1,"2410":7,"2411":1,"2453":4,"2495":2,"2496":1,"2501":3,"2503":2,"2539":2,"2565":2,"2576":1,"2577":1,"2580":1,"2582":1,"2583":1,"2587":2,"2588":1,"2589":1,"2601":1,"2606":2,"2609":3,"2612":1,"2621":5,"2622":1,"2627":2,"2632":2,"2633":1,"2637":1,"2646":1,"2648":1,"2666":1,"2671":1,"2675":4,"2707":1,"2721":1,"2748":5,"2809":1,"2882":1,"2937":1,"2942":2}}],["communicate",{"2":{"1244":1,"1313":1,"2047":1,"2257":1,"2379":1,"2499":1}}],["communicates",{"2":{"510":1,"2288":1,"2729":1}}],["communicated",{"0":{"2897":1},"2":{"408":1,"2896":1,"2897":1}}],["communicating",{"2":{"244":1,"1269":1,"1691":1,"1945":1,"2050":1,"2276":1,"2419":1}}],["communications",{"2":{"2268":1}}],["communication",{"0":{"2268":1},"2":{"30":1,"408":1,"565":1,"568":3,"1189":3,"1193":1,"1194":1,"1195":1,"1196":1,"1202":1,"1204":2,"1205":1,"1206":2,"1283":1,"1392":2,"1947":2,"1960":1,"1961":1,"1964":1,"1968":2,"1972":1,"1974":1,"1975":1,"1976":1,"2047":1,"2254":1,"2258":2,"2261":1,"2268":8,"2269":1,"2271":4,"2272":1,"2411":2,"2734":2,"2873":1}}],["community",{"0":{"288":1,"298":1,"1394":1,"1398":1,"1620":1,"1621":1,"1622":1,"1623":1,"2706":1},"1":{"1621":1,"1622":1,"1623":1,"1624":2,"1625":2,"1626":2,"1627":2,"1628":2,"1629":2,"1630":2,"1631":2,"1632":2},"2":{"70":2,"116":1,"145":1,"176":1,"199":1,"201":1,"212":1,"222":25,"236":3,"249":1,"266":2,"285":2,"288":3,"294":1,"298":1,"308":6,"312":1,"317":1,"328":2,"333":1,"408":1,"427":1,"512":1,"616":1,"625":4,"1340":4,"1388":1,"1394":1,"1395":2,"1396":1,"1398":1,"1427":4,"1430":1,"1620":1,"1621":5,"1622":1,"1623":1,"1624":2,"1627":2,"1629":1,"1630":1,"1632":2,"2301":1,"2440":1,"2461":3,"2465":1,"2559":1,"2560":3,"2561":3,"2620":1,"2635":1,"2706":1,"2721":3,"2724":1,"2845":1,"2862":2,"2889":1}}],["commonly",{"2":{"69":1,"187":1,"232":1,"524":1,"2171":1,"2187":1,"2258":1,"2310":1,"2416":1,"2726":1,"2837":1}}],["common",{"0":{"30":1,"32":1,"33":1,"80":1,"1840":1,"1968":1,"1978":1,"2060":1,"2417":1,"2728":1},"1":{"31":1,"34":1},"2":{"5":1,"8":1,"30":2,"32":1,"74":3,"75":1,"86":1,"92":1,"93":1,"94":3,"107":1,"113":1,"114":5,"133":4,"134":5,"145":1,"160":2,"176":2,"191":1,"199":2,"210":1,"212":1,"215":1,"222":2,"236":2,"248":1,"285":2,"293":1,"305":1,"314":1,"317":2,"438":1,"559":1,"562":1,"572":1,"589":1,"626":1,"654":1,"711":1,"761":1,"1242":1,"1263":1,"1269":1,"1318":1,"1330":1,"1334":1,"1362":1,"1418":1,"1434":1,"1440":1,"1464":1,"1491":1,"1497":1,"1606":1,"1609":1,"1663":1,"1941":1,"1950":1,"1954":1,"1980":2,"1986":1,"2159":1,"2170":1,"2272":1,"2280":1,"2310":1,"2319":1,"2411":1,"2426":1,"2432":1,"2448":4,"2459":1,"2501":15,"2565":1,"2609":1,"2632":1,"2707":1,"2721":1,"2748":1,"2799":1,"2801":1,"2819":1,"2841":1,"2844":1,"2927":1,"2933":1,"2937":1,"2941":2}}],["com",{"2":{"2":1,"21":1,"196":1,"222":1,"236":1,"414":1,"415":2,"572":1,"598":1,"608":1,"611":1,"680":1,"681":5,"746":7,"747":1,"1316":2,"1349":1,"1350":2,"1354":2,"1356":3,"1358":1,"1373":1,"1599":2,"1622":1,"1785":1,"1954":10,"2180":1,"2380":1,"2398":3,"2401":1,"2451":1,"2495":1,"2499":1,"2585":1,"2586":1,"2601":3,"2630":8,"2632":5,"2676":2,"2721":3,"2891":1}}],["4bpp",{"2":{"2770":2}}],["4+i",{"2":{"2750":2}}],["4t",{"2":{"2215":1}}],["4=25",{"2":{"1956":1}}],["4×",{"2":{"1659":1}}],["49",{"2":{"1521":1,"1680":1,"1962":1}}],["470ω",{"2":{"1552":1}}],["47",{"2":{"1486":1,"1680":1}}],["479b",{"2":{"371":1}}],["43",{"2":{"1486":1,"1680":1,"1962":1}}],["432",{"2":{"1484":1}}],["4352",{"2":{"611":1}}],["44",{"2":{"1486":1,"1521":1,"1680":1,"1962":1}}],["440",{"2":{"1484":1,"1487":1}}],["44100u",{"2":{"716":1}}],["42",{"0":{"1356":1},"2":{"1356":1,"1477":1,"1486":1,"1521":1,"1680":1,"2289":1,"2367":5}}],["4226",{"2":{"49":1}}],["4kib",{"2":{"2179":1}}],["4k2",{"2":{"921":1,"955":1,"989":1}}],["4k",{"2":{"856":1,"857":2,"922":2,"956":2,"990":2,"1024":2,"1058":2,"1092":2,"1126":2,"1160":2}}],["4key",{"2":{"154":2}}],["451",{"2":{"2301":1}}],["45°",{"2":{"1735":1}}],["453",{"2":{"1159":2}}],["45",{"2":{"852":1,"1486":1,"1680":1,"1955":1,"2059":1}}],["45pm",{"2":{"406":1}}],["412",{"2":{"2442":1}}],["41",{"2":{"1486":1,"1680":1,"1962":1}}],["4173",{"2":{"459":1}}],["4198",{"2":{"93":1}}],["4a7b",{"2":{"370":1,"371":1}}],["4rows",{"2":{"311":1}}],["4ghz",{"2":{"285":1,"2370":3,"2509":3}}],["4pplet",{"2":{"222":3}}],["460800",{"2":{"1204":1}}],["46",{"2":{"181":2,"1486":1,"1680":1,"1962":1,"2417":1}}],["4800",{"2":{"1269":1}}],["48",{"2":{"168":1,"181":2,"222":1,"236":1,"884":1,"985":1,"1121":1,"1680":1,"1840":2,"1920":1,"1930":1,"1962":1,"2059":3,"2060":2,"2270":2,"2864":1,"2871":1}}],["4871",{"2":{"2":1}}],["40kb",{"2":{"2682":1}}],["400",{"2":{"1930":1,"1972":2,"2447":1,"2503":1,"2543":1}}],["400000",{"2":{"764":1}}],["400000l",{"2":{"559":1}}],["4000",{"2":{"663":1}}],["40ms",{"2":{"1602":1}}],["403",{"2":{"1356":2}}],["4095u",{"2":{"716":2,"1482":2}}],["4096",{"2":{"131":1,"134":1}}],["40percentclub",{"2":{"266":1,"322":4,"328":2}}],["40",{"2":{"160":1,"176":1,"222":1,"538":1,"681":1,"1486":1,"1602":1,"1680":5,"1929":1,"1931":1,"1933":1,"1962":1,"1968":1,"2064":1,"2178":1,"2694":1,"2757":1}}],["401",{"2":{"114":1}}],["4x4",{"2":{"1430":3,"2714":2,"2721":1}}],["4x5",{"2":{"210":1}}],["4x8",{"2":{"154":2}}],["4x7",{"2":{"154":2}}],["4x6",{"2":{"154":2,"160":1,"210":1,"311":8,"317":1}}],["4x",{"2":{"114":1,"1678":1,"1679":1,"1968":3}}],["4x12",{"2":{"70":1,"1430":3,"1433":1,"1486":1}}],["4",{"0":{"108":1,"399":1,"597":1,"2310":1,"2471":1,"2622":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"70":1,"93":1,"108":1,"111":1,"114":5,"134":2,"188":1,"191":3,"210":1,"222":2,"236":1,"249":1,"266":2,"317":1,"342":1,"348":2,"369":1,"406":4,"414":5,"416":1,"505":1,"510":2,"512":1,"568":1,"587":2,"690":1,"692":22,"693":1,"716":1,"723":1,"756":1,"765":2,"769":2,"799":1,"854":1,"856":1,"857":2,"886":1,"918":2,"921":2,"922":2,"953":1,"955":2,"956":2,"987":1,"989":2,"990":2,"1021":1,"1024":2,"1055":1,"1058":2,"1089":2,"1092":2,"1123":2,"1126":2,"1157":1,"1160":2,"1204":1,"1213":1,"1244":1,"1249":1,"1297":1,"1395":1,"1406":1,"1417":2,"1425":1,"1444":2,"1447":1,"1486":1,"1532":1,"1584":4,"1603":2,"1619":2,"1659":2,"1660":2,"1675":1,"1678":1,"1679":1,"1680":1,"1691":1,"1696":2,"1735":2,"1738":3,"1840":5,"1846":1,"1919":31,"1920":1,"1927":2,"1931":1,"1955":2,"1956":1,"1962":3,"1965":1,"1973":1,"2011":3,"2031":3,"2060":5,"2069":1,"2176":3,"2178":1,"2182":4,"2199":1,"2200":3,"2215":1,"2238":1,"2239":1,"2257":2,"2258":3,"2260":3,"2268":1,"2281":1,"2288":1,"2289":2,"2294":1,"2296":5,"2308":2,"2310":1,"2370":1,"2398":3,"2409":1,"2443":2,"2447":3,"2448":2,"2459":1,"2500":1,"2503":9,"2509":1,"2513":3,"2520":31,"2521":2,"2529":3,"2535":2,"2540":2,"2543":2,"2556":1,"2566":1,"2621":2,"2695":1,"2744":1,"2747":2,"2748":2,"2750":3,"2758":1,"2766":1,"2770":2,"2776":4,"2777":3,"2858":1,"2862":4,"2864":1,"2870":1,"2871":1,"2872":1,"2886":1,"2929":1,"2942":2}}],["p>need",{"2":{"2627":2}}],["p>",{"2":{"2627":3}}],["p>for",{"2":{"2627":1}}],["p9",{"2":{"2503":1,"2543":1,"2931":1}}],["p7",{"2":{"2503":1,"2543":1,"2931":1}}],["p5",{"2":{"2503":1,"2543":1,"2931":1}}],["p3",{"2":{"2503":1,"2543":1,"2931":1}}],["p3d",{"0":{"255":1},"2":{"222":1,"241":5,"249":1,"266":1}}],["ppls",{"2":{"2503":1,"2543":1,"2931":1}}],["pp",{"2":{"2310":1}}],["p6",{"2":{"1737":1,"2503":1,"2543":1,"2931":1}}],["p4",{"2":{"1737":1,"2503":1,"2543":1,"2931":1}}],["p2",{"2":{"1737":1,"2503":1,"2543":1,"2931":1}}],["p8",{"2":{"1737":1,"2503":1,"2543":1,"2931":1}}],["p0",{"2":{"1737":2,"2503":1,"2543":1,"2931":1}}],["p1",{"2":{"2503":1,"2543":1,"2931":1}}],["p146279",{"2":{"1365":1}}],["p1800fl",{"2":{"102":2,"114":1}}],["pqrs",{"2":{"1355":1}}],["pbr",{"2":{"2294":1}}],["pb",{"2":{"2011":32,"2529":32}}],["pb11",{"2":{"1208":1,"1209":1,"1210":1}}],["pb10",{"2":{"1208":1,"1209":1,"1210":1}}],["pb4",{"2":{"1208":1}}],["pb3",{"2":{"1208":1}}],["pb7",{"2":{"1208":1,"1209":1,"1210":1}}],["pb6",{"2":{"1208":1,"1209":1,"1210":1}}],["pnp",{"2":{"1539":1}}],["pnputil",{"2":{"685":2}}],["png",{"2":{"680":1,"2746":1,"2748":4}}],["photos",{"2":{"2605":1}}],["phonetic",{"2":{"2284":1}}],["phone",{"2":{"2258":1}}],["phrases",{"2":{"1434":1,"1440":1}}],["phpshop",{"2":{"1316":1}}],["php",{"2":{"1316":1,"1350":1,"1364":1,"1372":1,"1373":1}}],["physically",{"2":{"1284":1,"1459":1,"2446":1,"2853":1,"2907":1}}],["physical",{"0":{"1836":1,"2930":1},"1":{"1837":1},"2":{"597":2,"681":1,"1284":1,"1359":3,"1410":1,"1427":2,"1428":1,"1583":1,"1836":1,"1840":7,"2060":7,"2064":1,"2271":1,"2293":1,"2418":1,"2556":1,"2605":1,"2714":3,"2775":3,"2776":2,"2816":1,"2862":1,"2907":1,"2908":2,"2909":3,"2910":2,"2919":1,"2930":2,"2931":1}}],["phapbgs",{"2":{"2288":1,"2289":1}}],["phantagom",{"2":{"222":1}}],["phantom",{"2":{"222":1}}],["phase",{"2":{"191":1,"1249":1,"1282":3,"1292":2}}],["pjrc",{"2":{"544":2,"549":4,"682":1,"1323":1,"2381":1,"2384":1,"2481":1,"2812":1}}],["pdot",{"2":{"2503":1,"2543":1,"2931":1}}],["pd3",{"2":{"2259":1}}],["pd1",{"2":{"2259":1,"2260":1}}],["pd0",{"2":{"1368":1,"2259":1,"2260":1}}],["pd9",{"2":{"1208":1,"1209":1,"1210":1}}],["pd8",{"2":{"1208":1,"1209":1,"1210":1}}],["pd6",{"2":{"1208":1,"1210":1}}],["pd5",{"2":{"1208":1,"1210":1,"2036":1}}],["pdr",{"2":{"918":1,"922":8,"953":1,"956":9,"987":1,"990":9,"1021":1,"1024":9,"1055":1,"1058":9,"1089":1,"1092":9,"1123":1,"1126":9,"1157":1,"1160":9}}],["pdfs",{"2":{"1591":1}}],["pdf",{"2":{"285":2,"1364":1,"1368":2,"1416":1,"2516":1}}],["pd2",{"2":{"191":1,"2036":1,"2259":1}}],["pwl",{"2":{"2294":1}}],["pwr",{"2":{"1348":1,"2031":1,"2289":1,"2294":1,"2503":1,"2542":1}}],["pw88",{"2":{"210":1,"241":2}}],["pwmd4",{"2":{"1550":1}}],["pwmd2",{"2":{"1300":1}}],["pwmd1",{"2":{"718":1,"719":1,"1477":1}}],["pwmd11tim1",{"2":{"713":1}}],["pwm3360",{"2":{"160":1}}],["pwm",{"0":{"14":1,"718":1,"719":1,"736":1,"822":1,"850":1,"856":1,"880":1,"912":1,"921":1,"947":1,"955":1,"981":1,"989":1,"1015":1,"1023":1,"1049":1,"1057":1,"1083":1,"1117":1,"1151":1,"1159":1,"1185":1,"1238":1,"1290":1,"1300":1,"1475":1,"1477":1,"1542":1,"1547":1,"1550":1},"1":{"737":1,"823":1,"881":1,"913":1,"948":1,"982":1,"1016":1,"1050":1,"1084":1,"1118":1,"1152":1,"1186":1,"1239":1,"1476":1},"2":{"14":4,"49":1,"50":1,"93":1,"134":3,"145":1,"176":3,"191":2,"210":1,"236":4,"249":8,"266":1,"285":3,"650":1,"651":1,"708":1,"712":2,"713":5,"718":10,"719":2,"720":2,"728":1,"729":3,"732":1,"736":1,"804":1,"805":4,"810":1,"814":1,"822":1,"833":1,"834":4,"838":1,"842":1,"850":1,"854":3,"856":11,"862":1,"863":4,"868":1,"872":1,"880":1,"892":1,"893":4,"900":1,"904":1,"912":1,"918":3,"921":8,"927":1,"928":4,"935":1,"939":1,"947":1,"953":3,"955":8,"961":1,"962":4,"969":1,"973":1,"981":1,"987":3,"989":8,"995":1,"996":4,"1003":1,"1007":1,"1015":1,"1021":3,"1023":7,"1029":1,"1030":4,"1037":1,"1041":1,"1049":1,"1055":3,"1057":7,"1063":1,"1064":4,"1071":1,"1075":1,"1083":1,"1097":1,"1098":4,"1105":1,"1109":1,"1117":1,"1131":1,"1132":4,"1139":1,"1143":1,"1151":1,"1157":3,"1159":10,"1165":1,"1166":4,"1173":1,"1177":1,"1185":1,"1218":1,"1219":4,"1226":1,"1230":1,"1238":1,"1286":1,"1290":2,"1300":15,"1307":1,"1389":1,"1390":1,"1468":2,"1475":3,"1477":7,"1535":2,"1540":2,"1541":1,"1542":2,"1543":2,"1544":1,"1547":2,"1548":1,"1550":11,"2424":1,"2682":1,"2695":1,"2849":2,"2850":3,"2876":2}}],["pt",{"2":{"210":3}}],["pmns",{"2":{"2503":1,"2543":1,"2931":1}}],["pmeg2005eh",{"2":{"2273":1}}],["pm2040",{"2":{"176":2,"277":1,"317":1,"1386":1,"1388":4}}],["pmw3320",{"0":{"1975":1},"2":{"222":1,"1975":6}}],["pmw33xx",{"0":{"273":1,"276":1,"284":1},"2":{"175":2,"176":3,"199":1,"236":1,"249":1,"273":3,"276":1,"277":1,"1976":23}}],["pmw3389",{"2":{"160":2,"199":1,"1976":1}}],["pmw3360",{"2":{"114":3,"118":1,"145":1,"160":4,"1976":1,"1978":1,"2721":1}}],["pmw",{"0":{"1976":2},"2":{"118":1,"1976":6}}],["pcmm",{"2":{"2503":1,"2543":1}}],["pcint",{"2":{"2034":1}}],["pc",{"2":{"1355":3}}],["pc13",{"2":{"2501":1}}],["pc11",{"2":{"1208":1,"1209":1,"1210":1}}],["pc10",{"2":{"1208":1,"1209":1,"1210":1}}],["pc5",{"2":{"1208":1,"1209":1}}],["pc4",{"2":{"1208":1,"1209":1}}],["pca9505",{"2":{"176":1}}],["pca9555",{"2":{"160":1}}],["pcba",{"2":{"2888":3}}],["pcbheaven",{"2":{"2459":1}}],["pcb1",{"2":{"2397":2}}],["pcb",{"2":{"18":2,"114":1,"134":2,"176":2,"210":2,"222":2,"308":1,"311":1,"328":1,"681":2,"1193":1,"1197":1,"1326":1,"1362":1,"2376":1,"2379":1,"2381":1,"2382":2,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2415":1,"2446":1,"2476":1,"2605":4,"2683":1,"2695":1,"2707":1,"2721":1,"2775":1,"2838":1,"2845":1}}],["pcbs",{"2":{"18":1,"37":2,"114":1,"249":1,"2376":1,"2451":1,"2683":3}}],["pseudocode",{"2":{"2765":1}}],["pseudorandomly",{"2":{"2792":1}}],["pseudorandom",{"2":{"2245":1}}],["pste",{"2":{"2503":1,"2541":1}}],["pstr",{"2":{"1529":1,"1695":1,"1696":1,"1712":1,"1947":11,"1950":2,"2246":1,"2247":1,"2277":11,"2886":2}}],["psls",{"2":{"2503":1,"2543":1,"2931":1}}],["psi",{"2":{"1696":3}}],["pscr",{"2":{"369":1,"587":2,"2503":1,"2541":1,"2557":1}}],["ps",{"0":{"1364":1,"1935":1,"2030":1,"2039":1,"2868":1},"1":{"2031":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1},"2":{"133":1,"134":1,"175":1,"176":1,"191":1,"222":3,"236":1,"266":1,"285":1,"1935":1,"2030":2,"2039":1,"2868":6}}],["psp",{"2":{"118":1}}],["ps2avrgb",{"0":{"2493":1},"2":{"235":1,"1288":1,"2383":1,"2493":1,"2605":1}}],["ps2",{"2":{"114":2,"133":1,"134":1,"160":1,"210":1,"2032":2,"2033":5,"2034":9,"2035":5,"2036":17,"2037":3,"2039":17,"2040":4,"2041":10,"2042":1,"2043":4,"2044":3,"2045":2,"2046":1,"2868":1}}],["punctuation",{"0":{"1686":1,"2537":1},"2":{"1587":1,"1686":1,"2374":1}}],["pulsing",{"2":{"1680":6,"2063":2}}],["pulses",{"2":{"1659":2,"1843":9,"2063":2}}],["pulse",{"2":{"1283":3,"1535":1,"1680":1,"2063":10,"2065":1}}],["pulled",{"2":{"1294":1,"1675":1,"2377":1,"2384":1,"2662":1}}],["pulldown",{"2":{"854":3,"857":12,"918":2,"922":3,"953":2,"956":3,"987":2,"990":3,"1021":2,"1024":3,"1055":2,"1058":3,"1089":2,"1092":3,"1123":2,"1126":3,"1157":2,"1160":3,"1552":1}}],["pulls",{"2":{"360":1,"363":1,"2721":1}}],["pullup",{"2":{"134":1,"236":1,"769":2,"854":3,"857":12,"918":2,"922":3,"953":2,"956":3,"987":2,"990":3,"1021":2,"1024":3,"1055":2,"1058":3,"1089":2,"1092":3,"1123":2,"1126":3,"1157":2,"1160":3,"1294":2}}],["pulling",{"2":{"10":1,"24":1,"49":1,"1294":1,"2719":1}}],["pull",{"0":{"408":1,"2829":1},"1":{"409":1,"410":1,"411":1,"412":1},"2":{"2":1,"38":1,"45":1,"69":1,"87":1,"103":1,"126":1,"243":1,"333":1,"403":2,"405":2,"408":3,"411":1,"412":1,"415":1,"416":1,"594":1,"607":2,"611":9,"615":1,"617":1,"680":1,"746":1,"758":5,"1194":2,"1202":2,"1210":1,"1294":2,"1310":1,"1336":1,"1338":1,"1340":1,"1414":1,"1462":1,"2257":1,"2260":2,"2398":3,"2465":1,"2626":1,"2628":2,"2631":1,"2632":2,"2633":2,"2660":3,"2662":1,"2664":1,"2684":1,"2723":1,"2724":1,"2829":1,"2843":1,"2895":1,"2942":1}}],["pupdr",{"2":{"769":2}}],["puzzle",{"2":{"671":1}}],["pumps",{"2":{"1661":1}}],["pumpkinpad",{"2":{"241":1}}],["pumpkin",{"2":{"191":1,"241":1,"249":1}}],["pumkinpad",{"2":{"249":1}}],["public",{"0":{"2373":1},"2":{"249":1,"328":1,"1461":3,"2458":1,"2561":1,"2725":3}}],["publishing",{"0":{"2634":1}}],["published",{"2":{"182":2,"373":1,"685":1,"1461":1,"2445":1,"2451":1,"2725":1,"2833":1}}],["publish",{"2":{"176":1,"188":1,"191":2,"199":1,"373":1,"2634":1}}],["pushed",{"2":{"577":1,"763":1,"1413":4,"1661":1,"2750":1}}],["pushbutton",{"2":{"255":1}}],["push",{"2":{"243":1,"262":1,"396":1,"403":3,"405":3,"414":2,"415":2,"416":2,"417":2,"611":2,"758":3,"1210":1,"1294":1,"1472":1,"2398":2,"2421":1,"2583":1,"2588":1,"2590":2,"2594":1,"2600":1,"2601":2,"2630":6,"2632":4,"2633":5,"2634":2}}],["putc",{"0":{"1707":1},"1":{"1708":1}}],["puts",{"0":{"1709":1,"1711":1},"1":{"1710":1,"1712":1},"2":{"1695":1,"1696":1,"1711":1,"2504":1,"2745":1}}],["putting",{"2":{"474":1,"2411":1,"2452":1,"2473":1,"2845":1}}],["put",{"0":{"2605":1},"2":{"134":1,"182":1,"184":1,"283":1,"284":1,"507":1,"583":1,"597":1,"607":1,"613":1,"617":1,"631":1,"643":1,"683":2,"1478":1,"1824":1,"2042":1,"2043":2,"2293":1,"2308":1,"2310":2,"2323":1,"2406":1,"2427":1,"2504":1,"2562":1,"2563":1,"2572":1,"2605":1,"2721":1,"2724":1,"2744":1,"2745":1,"2776":1}}],["puca",{"2":{"134":1}}],["purchases",{"2":{"2560":1}}],["purchased",{"2":{"2498":1}}],["purchase",{"2":{"2286":1,"2560":1}}],["purple",{"2":{"2067":2,"2182":2,"2198":2,"2615":2}}],["purposes",{"2":{"459":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1949":1,"2052":1,"2279":1,"2443":1,"2497":1,"2676":1,"2776":1,"2817":1}}],["purpose",{"2":{"411":2,"489":1,"1300":1,"1461":1,"1551":1,"2269":8,"2646":1,"2666":1,"2725":1,"2747":1}}],["pur",{"2":{"918":1,"922":10,"953":1,"956":9,"987":1,"990":9,"1021":1,"1024":9,"1055":1,"1058":9,"1089":1,"1092":9,"1123":1,"1126":9,"1157":1,"1160":9}}],["purely",{"2":{"2319":1}}],["purejavahidapi",{"2":{"2050":1}}],["pure",{"2":{"293":1,"305":1,"314":1}}],["purge",{"2":{"134":1,"238":1}}],["pursuit40",{"2":{"154":2}}],["pursuit",{"2":{"109":1}}],["peer",{"2":{"2799":2}}],["peej",{"2":{"222":1}}],["peql",{"2":{"2503":1,"2543":1}}],["pepper",{"2":{"2310":3}}],["pep8",{"2":{"512":1}}],["pent",{"2":{"2503":1,"2543":1,"2931":1}}],["penalize",{"2":{"2374":1}}],["pendulum",{"2":{"2063":3,"2887":1}}],["pending",{"2":{"656":1,"657":1,"2560":2}}],["pen",{"2":{"1968":1}}],["pedal",{"2":{"1919":1,"2520":1}}],["peaks",{"2":{"2420":1}}],["peak",{"2":{"1678":1,"1679":2}}],["pearl",{"2":{"222":5}}],["pe1",{"2":{"1208":1}}],["pe0",{"2":{"1208":1}}],["pegasushoof",{"2":{"199":2}}],["petruziamini",{"2":{"266":1}}],["pet",{"2":{"191":1}}],["people",{"2":{"119":2,"164":2,"172":2,"173":1,"209":1,"231":1,"244":2,"288":1,"424":1,"503":1,"538":1,"539":1,"613":1,"616":1,"617":1,"624":1,"631":1,"659":1,"663":2,"672":1,"680":1,"1318":1,"1332":1,"1341":1,"1344":1,"1373":1,"1379":1,"1415":1,"1421":1,"1491":1,"1620":1,"2399":1,"2411":1,"2428":1,"2430":1,"2440":2,"2465":1,"2557":1,"2576":2,"2582":1,"2626":1,"2723":1,"2828":1,"2890":1,"2902":1,"2903":1,"2924":1,"2940":1}}],["peiorisboards",{"2":{"102":1}}],["perpetually",{"2":{"2895":1}}],["perhaps",{"2":{"1773":1,"2919":1}}],["permitted",{"2":{"1782":1,"2719":1,"2720":1,"2742":1,"2921":1}}],["permissions",{"2":{"1312":1,"2728":1}}],["permission",{"2":{"199":1,"333":1}}],["permissive",{"0":{"2912":1},"2":{"112":2,"176":1,"562":4,"1513":1,"2309":1,"2310":1,"2847":2,"2906":1,"2908":2,"2909":3,"2910":2,"2912":11,"2913":2,"2918":5}}],["permanently",{"2":{"1684":1}}],["perks",{"2":{"1378":1}}],["perfectly",{"2":{"538":1,"2610":1}}],["perfect",{"2":{"228":1,"611":1,"1497":1}}],["perform",{"2":{"637":2,"693":1,"742":1,"1596":1,"1760":1,"1781":1,"1938":1,"1949":1,"1987":1,"2158":1,"2161":1,"2206":1,"2209":1,"2210":1,"2273":1,"2279":1,"2399":1,"2476":1,"2530":1,"2645":1,"2676":1,"2678":1,"2749":12,"2872":1,"2912":2,"2913":2}}],["performed",{"2":{"572":1,"649":1,"752":1,"753":1,"1736":1,"2495":1}}],["performs",{"2":{"169":1,"485":1,"584":1,"751":1,"752":1,"753":1,"754":1,"2156":2,"2159":2,"2377":1,"2384":1,"2927":1}}],["performing",{"2":{"134":1,"2209":2}}],["performance",{"2":{"93":1,"175":1,"176":1,"203":1,"236":1,"536":1,"641":2,"642":1,"1328":1,"1410":3,"1413":1,"1545":1,"1951":1,"1955":1,"1978":1,"2172":1,"2739":1,"2747":1}}],["perceptible",{"2":{"2929":1}}],["percentage",{"2":{"1577":1,"1580":1,"1582":1}}],["percent",{"0":{"1576":1,"1579":1,"1581":1},"1":{"1577":1},"2":{"527":1,"742":1,"2527":1,"2547":1}}],["perc",{"2":{"176":2,"2527":1,"2547":1}}],["person",{"2":{"1497":1,"2877":1}}],["personal",{"2":{"145":1,"191":1,"1316":1,"1349":1,"2398":1,"2451":1,"2453":1,"2591":2,"2595":1,"2596":1,"2601":1,"2621":1,"2623":1,"2669":1,"2720":1}}],["perspective",{"2":{"387":6,"392":1,"2636":1,"2685":1}}],["persisted",{"2":{"1920":1}}],["persistence",{"2":{"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1}}],["persistent",{"0":{"661":1,"1406":1,"2788":1,"2791":1},"1":{"1407":1,"1408":1},"2":{"131":1,"661":1,"1406":1,"1416":1,"1422":3,"1480":1,"1520":1,"1696":1,"1942":1,"2266":1,"2316":1,"2504":1,"2745":1,"2747":1,"2788":2,"2791":1,"2905":1}}],["persists",{"2":{"303":1,"1416":1}}],["persist",{"2":{"134":1,"531":1,"558":1,"1983":1,"2320":2,"2324":1,"2411":1}}],["perimeter",{"2":{"1970":1}}],["periodic",{"2":{"2468":1}}],["periodically",{"2":{"368":1,"509":1,"579":1,"1545":1,"2303":1}}],["periods",{"2":{"1627":1,"2310":1,"2372":3}}],["period",{"2":{"112":1,"199":1,"236":1,"264":1,"265":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"393":2,"406":1,"470":1,"559":1,"653":1,"772":1,"775":1,"778":1,"781":1,"784":1,"787":1,"790":1,"793":1,"796":1,"1253":1,"1255":1,"1258":1,"1261":1,"1492":2,"1511":1,"1522":1,"1538":1,"1550":2,"1602":1,"1675":1,"1756":1,"1822":1,"2372":1,"2643":1,"2757":1,"2850":1}}],["peripherals",{"0":{"2696":1},"1":{"2697":1,"2698":1,"2699":1},"2":{"118":2,"157":1,"163":1,"222":1,"229":2,"234":3,"244":1,"713":1,"750":1,"765":1,"1197":1,"1202":1,"1207":1,"1210":1,"1245":1,"1266":1,"1402":1,"1471":1,"1958":1,"2677":1,"2692":1,"2695":1,"2696":1,"2722":1,"2727":1}}],["peripheral",{"0":{"234":1},"2":{"49":1,"176":1,"191":2,"199":1,"234":1,"711":1,"713":1,"747":1,"752":3,"753":1,"756":1,"765":5,"1190":1,"1194":1,"1196":1,"1200":3,"1201":3,"1202":5,"1210":1,"1245":3,"1250":1,"1266":3,"1290":1,"1291":2,"1299":1,"1300":1,"1471":1,"2037":4,"2685":2,"2689":2,"2695":1,"2697":1,"2698":1,"2699":1,"2732":1,"2739":1}}],["per",{"0":{"1504":1,"1606":1,"1788":1,"1918":1,"2371":1,"2412":1,"2920":1,"2924":1},"1":{"2372":1,"2373":1,"2374":1},"2":{"0":1,"9":1,"19":1,"22":1,"39":1,"52":1,"63":2,"92":1,"93":1,"112":6,"114":2,"160":1,"176":1,"184":1,"191":1,"194":3,"195":2,"198":1,"199":4,"201":1,"212":1,"222":1,"224":1,"238":1,"307":1,"317":1,"514":1,"516":1,"525":1,"562":16,"586":1,"619":1,"641":1,"714":1,"746":1,"765":1,"1245":2,"1266":1,"1280":2,"1310":1,"1330":1,"1410":8,"1413":10,"1440":1,"1465":1,"1469":1,"1471":1,"1478":1,"1481":1,"1492":2,"1497":1,"1512":2,"1535":1,"1588":1,"1606":9,"1632":1,"1659":1,"1664":1,"1788":3,"1846":3,"1849":1,"1929":1,"1930":3,"1931":8,"1933":1,"1951":1,"1976":3,"2069":5,"2072":1,"2171":1,"2175":3,"2215":6,"2268":1,"2298":1,"2302":2,"2312":2,"2371":1,"2561":1,"2562":1,"2721":1,"2748":1,"2750":3,"2758":1,"2762":1,"2766":1,"2847":4,"2864":1,"2871":1,"2877":1,"2887":1,"2896":1,"2903":1,"2905":2,"2912":2,"2913":1,"2914":1,"2917":1,"2920":2,"2921":1,"2924":1,"2929":2}}],["pkg",{"2":{"2620":1}}],["pk",{"2":{"94":1,"114":1,"199":1,"1410":1,"1413":3,"2847":3}}],["pgm",{"2":{"145":1,"1606":1}}],["pgup",{"2":{"90":2,"220":1,"369":2,"587":2,"1662":2,"2159":1,"2503":1,"2541":1,"2556":1,"2557":1}}],["pgdn",{"2":{"90":2,"120":1,"220":1,"369":2,"587":2,"1435":1,"1662":2,"2159":1,"2503":1,"2541":1,"2556":1,"2557":1}}],["pywinusb",{"2":{"2050":1}}],["pyhidapi",{"2":{"2050":1,"2052":1}}],["pytest",{"0":{"463":1},"2":{"277":1,"317":1,"463":5,"499":1,"500":1,"504":1,"540":1}}],["pythonimport",{"2":{"2052":1}}],["pythonistas",{"2":{"512":1}}],["pythonfrom",{"2":{"348":1}}],["python3",{"2":{"143":1,"423":1,"486":1,"1522":1}}],["python",{"0":{"23":1,"462":1,"512":1},"2":{"23":1,"70":2,"76":1,"143":1,"145":2,"160":1,"285":2,"338":3,"420":1,"423":1,"462":2,"463":2,"487":4,"489":1,"499":1,"501":1,"503":2,"512":2,"514":1,"518":1,"523":1,"536":1,"540":1,"541":1,"542":2,"612":2,"664":3,"670":2,"671":3,"1522":1,"2050":1,"2052":1,"2384":1,"2748":1}}],["pyformat",{"2":{"199":1}}],["py",{"2":{"76":1,"114":1,"210":1,"338":3,"487":1,"517":1,"541":1,"542":1,"664":3,"670":1,"671":3,"2620":2}}],["pirate",{"0":{"2487":1},"1":{"2488":1},"2":{"2487":2,"2488":1}}],["piezos",{"2":{"1472":1}}],["piezo",{"2":{"713":2,"719":1,"1469":1,"1472":1,"1473":1,"1476":2}}],["piece",{"2":{"538":1,"671":1,"1375":1,"2285":1,"2427":1,"2471":1}}],["pieces",{"2":{"249":1,"538":1,"2420":2,"2612":1,"2934":1}}],["pitch",{"2":{"231":1,"1484":3,"1919":4,"2520":4}}],["pi50",{"2":{"222":2}}],["piantor",{"2":{"222":1}}],["piggy60",{"2":{"218":4,"222":2}}],["pizza65",{"2":{"191":1}}],["pizzakeyboards",{"2":{"191":1}}],["pi60",{"2":{"191":1,"236":1}}],["pio0",{"2":{"1202":1,"1299":1,"2037":1}}],["pio1",{"2":{"249":1,"1202":2,"1299":2,"2037":2}}],["pio",{"0":{"1202":1,"1289":1,"1299":1,"2037":1},"2":{"176":2,"191":3,"222":1,"249":1,"1194":1,"1195":3,"1198":3,"1202":7,"1289":2,"1292":2,"1299":2,"1390":2,"2037":4,"2692":2,"2704":4}}],["pi",{"0":{"163":1,"550":1,"1394":1,"2397":1,"2692":1},"1":{"2693":1,"2694":1,"2695":1,"2696":1,"2697":1,"2698":1,"2699":1,"2700":1,"2701":1,"2702":1,"2703":1,"2704":1,"2705":1,"2706":1},"2":{"163":1,"176":1,"189":1,"191":1,"199":1,"1195":1,"1198":1,"1202":1,"1386":2,"1388":5,"1396":5,"2037":1,"2694":1,"2695":1,"2706":1,"2888":1}}],["pipe",{"2":{"1782":1,"2527":1,"2547":1,"2921":1}}],["pipes",{"2":{"390":1}}],["pipeline",{"2":{"198":1,"1661":1,"2722":1}}],["pip",{"0":{"423":1},"2":{"143":2,"423":2,"486":1,"1522":1}}],["pillow",{"0":{"143":1},"2":{"143":2,"145":1,"2748":1}}],["pistachio",{"2":{"134":1,"154":6,"210":1}}],["picture",{"2":{"2721":1}}],["picro",{"2":{"2706":1}}],["pic",{"2":{"2487":1}}],["picks",{"2":{"2409":1}}],["picky",{"2":{"512":1}}],["picking",{"2":{"141":1}}],["picked",{"2":{"130":2,"156":1,"163":1,"221":1,"232":1,"248":1,"580":1,"1521":1}}],["pick",{"2":{"120":1,"485":1,"492":1,"510":1,"583":1,"612":1,"684":1,"696":1,"1316":1,"1477":1,"1584":1,"1757":1,"1823":1,"1964":2,"1980":3,"2157":1,"2707":1,"2710":1,"2894":1}}],["picolibc",{"2":{"134":1,"308":1}}],["pico",{"2":{"55":15,"163":1,"191":1,"199":1,"236":1,"241":4,"308":1,"317":1,"753":1,"2397":1,"2694":2}}],["pimoroni",{"0":{"1974":1},"2":{"114":2,"118":2,"176":1,"1974":9}}],["pixdata",{"2":{"2747":1,"2750":3}}],["pixart",{"2":{"328":1}}],["pixels",{"2":{"1930":2,"1933":2,"1949":3,"1951":1,"1956":5,"1965":5,"2279":3,"2281":1,"2283":5,"2750":9,"2760":2,"2768":2,"2770":2}}],["pixel",{"2":{"134":1,"160":1,"176":1,"199":1,"210":2,"248":1,"277":1,"285":1,"328":1,"1930":1,"1956":2,"2063":9,"2283":2,"2747":1,"2748":2,"2749":5,"2750":7,"2758":2,"2766":2,"2770":8,"2772":4,"2887":3}}],["pix",{"2":{"74":2}}],["pid>",{"2":{"432":1}}],["pid",{"0":{"1316":1},"1":{"1317":1},"2":{"70":1,"111":1,"169":1,"176":1,"184":1,"249":2,"266":1,"317":2,"432":1,"559":1,"685":1,"686":1,"1316":1,"1353":1,"2562":1,"2710":3,"2721":1,"2875":1}}],["pink",{"2":{"2067":2,"2198":2}}],["pinky",{"2":{"1491":1}}],["pinwheels",{"2":{"2063":3,"2887":1}}],["pinwheel",{"2":{"1843":4,"2063":12,"2887":3}}],["ping",{"0":{"794":1},"1":{"795":1,"796":1},"2":{"794":2,"2721":1}}],["pintomux",{"2":{"199":1,"695":1,"696":1}}],["pinouts",{"2":{"1392":1,"1660":1,"2417":1,"2501":1}}],["pinout",{"2":{"176":1,"568":2,"690":1,"1394":1,"1395":1,"1660":1,"2417":1,"2423":1,"2500":1,"2694":1,"2706":2}}],["pinnacle",{"2":{"118":2,"175":1,"176":2,"191":1,"1967":3,"1968":19,"1969":5,"1970":3,"1971":3,"2007":1}}],["pinxx",{"2":{"114":1}}],["pins>",{"2":{"2271":2}}],["pins",{"0":{"1540":1,"2659":1,"2660":1},"2":{"49":1,"70":1,"111":2,"112":2,"114":2,"134":1,"176":2,"191":2,"199":2,"222":1,"236":2,"249":1,"277":1,"328":1,"390":2,"559":14,"568":12,"620":1,"632":1,"633":2,"637":11,"663":1,"666":1,"687":1,"690":1,"692":4,"712":1,"718":1,"719":1,"720":1,"723":1,"724":1,"764":2,"765":2,"769":1,"799":1,"802":1,"831":1,"854":1,"857":1,"858":1,"860":1,"886":1,"890":1,"918":1,"919":1,"920":1,"922":1,"923":1,"925":1,"953":1,"954":1,"956":1,"957":1,"959":1,"987":1,"990":1,"991":1,"993":1,"1021":1,"1024":1,"1025":1,"1027":1,"1055":1,"1058":1,"1059":1,"1061":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1095":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1129":1,"1157":1,"1158":1,"1160":1,"1161":1,"1163":1,"1193":1,"1195":1,"1197":2,"1198":2,"1207":1,"1210":4,"1213":1,"1216":1,"1244":2,"1245":3,"1263":1,"1265":2,"1266":2,"1291":1,"1294":1,"1308":1,"1369":1,"1392":1,"1395":1,"1397":1,"1398":1,"1404":2,"1405":2,"1468":2,"1471":1,"1472":1,"1475":1,"1476":1,"1480":1,"1540":3,"1545":1,"1547":1,"1552":2,"1649":3,"1659":5,"1660":7,"1664":9,"1675":4,"1676":1,"1693":3,"1830":1,"1832":1,"1954":7,"1973":1,"1976":8,"2035":1,"2037":1,"2201":3,"2265":1,"2271":9,"2368":1,"2383":1,"2416":1,"2420":1,"2423":2,"2424":3,"2426":1,"2434":1,"2476":3,"2500":1,"2501":1,"2605":1,"2657":1,"2658":1,"2659":2,"2661":2,"2662":5,"2664":1,"2679":1,"2683":2,"2684":1,"2693":1,"2694":2,"2695":1,"2701":1,"2703":2,"2704":1,"2711":2,"2712":3,"2713":7,"2721":1,"2749":2,"2811":1,"2821":1,"2849":1,"2850":2,"2856":2,"2858":1,"2865":6,"2873":3}}],["pin",{"0":{"243":1,"306":1,"315":1,"730":2,"736":2,"1191":1,"1194":1,"1197":1,"1248":1,"1310":1,"1404":1,"1405":1,"1653":1,"2264":1,"2265":1,"2658":1,"2694":1,"2713":1},"1":{"731":2,"737":2,"1249":1,"1250":1,"1405":1,"2659":1,"2660":1,"2661":1,"2662":1},"2":{"28":2,"45":1,"70":2,"93":1,"111":1,"112":2,"114":5,"134":1,"145":4,"160":1,"172":1,"175":1,"176":2,"190":1,"191":1,"199":4,"210":1,"212":3,"222":8,"236":1,"243":33,"249":3,"266":1,"277":10,"294":1,"308":2,"552":1,"559":26,"563":4,"566":3,"567":7,"568":1,"633":5,"637":3,"692":1,"693":1,"695":5,"696":9,"701":6,"713":1,"718":5,"719":4,"723":8,"731":3,"737":3,"741":3,"746":5,"747":2,"756":2,"757":1,"758":34,"765":4,"769":2,"799":2,"800":1,"828":3,"854":2,"855":1,"860":1,"886":2,"887":1,"890":1,"918":2,"925":1,"953":2,"959":1,"987":2,"988":1,"993":1,"1021":2,"1022":1,"1027":1,"1055":2,"1056":1,"1061":1,"1089":2,"1095":1,"1123":2,"1129":1,"1157":2,"1163":1,"1190":1,"1191":3,"1192":2,"1194":5,"1195":3,"1197":12,"1198":7,"1202":2,"1208":2,"1209":2,"1210":6,"1213":2,"1214":1,"1216":1,"1244":3,"1245":13,"1249":2,"1262":1,"1266":8,"1282":3,"1291":2,"1294":4,"1295":1,"1296":4,"1300":1,"1308":13,"1309":4,"1310":5,"1368":2,"1386":1,"1392":2,"1393":2,"1400":1,"1404":3,"1409":1,"1459":1,"1467":1,"1468":10,"1469":2,"1471":4,"1472":3,"1473":3,"1474":2,"1475":5,"1476":4,"1477":5,"1480":9,"1538":4,"1539":2,"1540":4,"1543":2,"1547":1,"1548":1,"1550":2,"1552":3,"1584":1,"1649":1,"1653":1,"1664":1,"1672":5,"1675":8,"1693":6,"1732":1,"1733":1,"1736":4,"1743":3,"1830":11,"1832":9,"1953":7,"1954":3,"1960":12,"1961":3,"1962":6,"1968":3,"1972":8,"1973":4,"1975":12,"1976":11,"1978":16,"2030":1,"2031":2,"2033":2,"2034":4,"2035":2,"2036":2,"2037":3,"2172":11,"2201":2,"2259":2,"2260":2,"2264":4,"2265":3,"2268":2,"2271":1,"2281":6,"2368":4,"2377":2,"2384":2,"2411":3,"2424":1,"2478":3,"2480":3,"2482":3,"2487":2,"2492":1,"2500":1,"2659":3,"2660":4,"2661":4,"2664":1,"2678":2,"2683":1,"2684":1,"2694":2,"2695":2,"2700":1,"2702":15,"2704":2,"2713":1,"2721":1,"2749":70,"2846":1,"2848":6,"2849":5,"2850":4,"2851":3,"2856":1,"2858":8,"2860":10,"2865":4,"2868":6,"2869":8,"2873":7,"2876":3}}],["pliers",{"2":{"2414":1,"2421":1}}],["pl",{"2":{"2294":3}}],["plover",{"0":{"2286":1,"2287":1},"1":{"2288":1,"2289":1,"2290":1},"2":{"1407":1,"1424":1,"1651":4,"2284":1,"2285":2,"2286":5,"2287":6,"2291":2,"2292":2,"2880":4}}],["ploopyco",{"2":{"266":1,"285":1,"291":4,"317":1}}],["ploopy",{"2":{"134":1,"199":1,"294":1}}],["ply2",{"2":{"1655":2,"2511":1}}],["ply1",{"2":{"1655":2,"2511":1}}],["ply8x",{"2":{"300":2,"308":1}}],["plywrks",{"2":{"222":1,"300":2,"308":1}}],["plump",{"2":{"2427":1}}],["pluggable",{"2":{"2258":1}}],["plugging",{"2":{"1345":1,"1583":1,"2254":1,"2258":1,"2383":1,"2605":1,"2710":1}}],["plugged",{"2":{"566":4,"683":1,"1329":1,"2318":1,"2370":1,"2509":1,"2842":1}}],["plug",{"2":{"681":1,"683":1,"1375":1,"1655":1,"2426":1,"2495":1,"2501":1,"2605":2}}],["plugins",{"0":{"2650":1,"2653":1},"1":{"2651":1,"2652":1,"2653":1},"2":{"2650":1,"2653":1}}],["plugin",{"2":{"502":1,"511":1,"2397":2,"2646":1,"2651":1,"2653":1,"2676":1}}],["plunger",{"2":{"1675":1}}],["plunge",{"2":{"288":1}}],["plus",{"2":{"154":2,"176":2,"210":1,"222":2,"226":1,"241":4,"1956":1,"2283":1,"2416":1,"2503":1,"2527":1,"2543":1,"2547":1}}],["plenty",{"2":{"545":1,"1789":1}}],["plexus75",{"2":{"154":2}}],["pleased",{"2":{"224":1}}],["please",{"2":{"14":1,"16":1,"37":1,"43":1,"49":1,"195":1,"196":1,"228":1,"240":1,"273":1,"276":1,"284":1,"302":1,"385":1,"424":1,"468":1,"503":2,"510":1,"512":1,"536":1,"542":1,"592":1,"597":1,"600":1,"604":1,"605":1,"606":1,"608":2,"613":1,"614":1,"617":3,"642":1,"680":1,"698":1,"1197":1,"1287":1,"1335":2,"1336":1,"1395":1,"1414":1,"1457":1,"1461":1,"1589":1,"1628":1,"1655":1,"1656":1,"1678":1,"1679":1,"1782":1,"1942":1,"2030":1,"2033":1,"2050":1,"2172":1,"2182":1,"2324":1,"2408":1,"2434":1,"2445":1,"2448":1,"2454":1,"2558":1,"2560":1,"2572":1,"2582":1,"2608":1,"2626":1,"2628":1,"2696":1,"2697":1,"2698":1,"2707":2,"2708":2,"2720":1,"2724":1,"2751":1,"2752":1,"2754":1,"2889":1,"2921":1,"2935":1}}],["plastic",{"2":{"2422":1}}],["placing",{"2":{"2175":1,"2459":1}}],["placement",{"2":{"2260":1,"2310":1}}],["placeholder",{"2":{"1464":1,"1828":1}}],["placed",{"2":{"370":1,"538":1,"1295":1,"1535":1,"1552":1,"1633":1,"1951":1,"2260":1,"2273":1,"2427":1,"2447":1,"2448":1,"2459":1,"2589":1,"2603":1,"2709":1,"2721":2}}],["place",{"2":{"114":1,"176":2,"182":1,"194":1,"249":1,"284":1,"460":1,"509":1,"510":1,"531":1,"632":1,"678":2,"688":1,"1313":1,"1345":2,"1350":1,"1353":1,"1425":1,"1461":1,"1479":1,"1521":1,"1540":1,"1597":1,"2266":1,"2273":1,"2305":1,"2310":1,"2393":1,"2395":1,"2397":1,"2406":1,"2415":1,"2418":1,"2421":3,"2423":1,"2424":1,"2428":1,"2467":1,"2554":2,"2633":1,"2708":1,"2781":1,"2877":1,"2886":1,"2890":1,"2905":1,"2942":1}}],["places",{"2":{"111":1,"387":1,"527":1,"614":1,"667":1,"1616":1,"1636":1,"2310":1,"2498":1,"2775":1,"2919":1,"2930":1}}],["plates",{"2":{"2451":1}}],["plate",{"2":{"2414":2,"2415":4,"2418":1}}],["plat",{"2":{"133":1,"134":1}}],["platforms",{"2":{"50":1,"93":1,"141":1,"145":1,"148":1,"176":1,"191":1,"210":1,"512":1,"617":1,"757":1,"758":1,"1190":1,"1192":1,"1321":1,"2927":2}}],["platform",{"2":{"50":2,"65":1,"75":1,"111":1,"113":4,"114":4,"123":1,"133":5,"134":5,"145":1,"160":1,"163":2,"189":1,"191":1,"199":7,"222":1,"285":1,"711":1,"758":1,"1189":1,"1401":1,"1402":1,"1544":1,"1550":1,"1945":1,"2738":1,"2742":1,"2749":2,"2796":1,"2927":4,"2938":1}}],["plans",{"2":{"2940":1}}],["planning",{"0":{"2416":1},"1":{"2417":1},"2":{"2415":1,"2419":1,"2424":1,"2425":1}}],["planned",{"2":{"88":1,"617":1,"2203":1,"2414":1,"2418":1}}],["plan",{"2":{"154":2,"618":1,"674":1,"2416":2,"2611":1}}],["planck",{"0":{"17":1,"1317":1},"2":{"17":1,"270":2,"277":2,"387":2,"427":2,"435":1,"440":1,"450":2,"451":2,"452":1,"453":1,"681":7,"1317":1,"1340":1,"1362":4,"1424":1,"1432":4,"1433":2,"1457":2,"1474":2,"1486":2,"1521":1,"2050":1,"2212":1,"2286":1,"2296":1,"2377":2,"2384":2,"2398":1,"2401":2,"2410":8,"2416":2,"2429":1,"2442":1,"2580":4,"2603":1,"2607":2}}],["plain",{"2":{"1588":1,"2174":1,"2525":1,"2556":1,"2592":2,"2612":2,"2646":1,"2666":1}}],["plain60",{"2":{"57":2}}],["plaid",{"2":{"37":2,"249":1}}],["player",{"2":{"2503":1,"2542":1}}],["played",{"2":{"716":2,"1481":1,"1680":2}}],["plays",{"2":{"1479":12,"1480":16}}],["playback",{"2":{"1438":1,"1484":2,"2216":1,"2217":1,"2503":1}}],["playing",{"2":{"629":1,"711":1,"716":1,"1478":1,"1484":2,"1517":3,"1595":1,"2217":1}}],["play",{"0":{"27":2},"2":{"27":2,"210":1,"392":1,"536":1,"629":2,"1407":2,"1438":1,"1467":1,"1479":3,"1484":1,"1497":1,"1529":2,"1599":1,"1651":2,"1655":2,"1658":2,"1770":9,"1777":1,"1791":5,"1833":3,"2220":1,"2321":6,"2503":2,"2511":2,"2542":2,"2676":2,"2788":1,"2849":1,"2934":1}}],["p",{"0":{"773":1,"1711":1,"1715":1,"2231":1,"2233":1},"1":{"774":1,"775":1,"1712":1,"1716":1,"2232":1,"2234":1},"2":{"14":1,"222":1,"266":3,"317":1,"328":1,"348":1,"369":1,"431":4,"453":2,"458":2,"587":2,"690":2,"764":1,"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1244":1,"1265":1,"1529":3,"1532":1,"1533":1,"1539":1,"1547":1,"1548":1,"1591":1,"1622":1,"1695":1,"1696":2,"1947":8,"1948":1,"1950":2,"1956":7,"1957":6,"2159":1,"2174":1,"2246":1,"2247":1,"2277":8,"2278":1,"2283":3,"2289":2,"2294":2,"2310":2,"2379":2,"2382":1,"2495":3,"2503":3,"2525":1,"2535":3,"2556":1,"2598":1,"2675":4,"2886":2}}],["pave",{"2":{"2562":1}}],["paper",{"2":{"2291":2}}],["pam8302",{"2":{"1480":1}}],["pa0",{"2":{"1209":1}}],["pa3",{"2":{"1208":1,"1209":1,"1210":1}}],["pa2",{"2":{"1208":1,"1209":1,"1210":1}}],["pa1",{"2":{"1209":1}}],["pa15",{"2":{"1208":1,"1209":1}}],["pa14",{"2":{"1208":1,"1209":1}}],["pa11",{"2":{"718":1}}],["pa10",{"2":{"718":1,"1208":1,"1209":1,"1210":1}}],["pa9",{"2":{"718":1,"1208":1,"1209":1,"1210":1}}],["pa8",{"2":{"718":1,"1477":2}}],["pasted",{"2":{"2721":1}}],["paste",{"2":{"2398":1,"2497":1,"2503":2,"2541":2,"2569":1,"2570":1,"2600":1,"2721":1,"2776":1}}],["past",{"0":{"394":1,"407":1},"2":{"1495":1,"2503":1,"2543":1,"2562":1,"2922":1,"2931":1}}],["passes",{"2":{"1422":1,"1528":1,"2171":1}}],["passed",{"2":{"194":1,"431":2,"442":1,"444":1,"453":2,"467":3,"645":2,"654":1,"655":1,"1244":1,"1245":1,"1280":1,"1511":1,"1526":2,"1775":1,"1780":2,"1956":2,"1981":1,"1982":1,"2067":1,"2198":1,"2268":1,"2283":2,"2303":2,"2441":1,"2459":1,"2793":2}}],["passing",{"2":{"431":1,"563":1,"1956":1,"1982":1,"2283":1,"2311":1,"2441":1,"2572":1}}],["passwords",{"2":{"1434":1,"2792":1}}],["password",{"2":{"312":1,"2601":1}}],["pass",{"2":{"22":1,"114":1,"130":1,"134":1,"160":2,"338":3,"397":1,"457":1,"489":2,"498":1,"504":1,"511":1,"531":1,"533":4,"1416":1,"1484":1,"1532":1,"1533":1,"2459":2,"2501":1,"2750":1,"2879":1}}],["pauses",{"2":{"717":1}}],["pause",{"2":{"392":1,"559":1,"1438":1,"1688":1,"1770":8,"2503":4,"2541":2,"2542":2,"2605":1}}],["paus",{"2":{"369":1,"587":2,"2503":1,"2541":1,"2557":1}}],["pay",{"2":{"2265":1}}],["payloads",{"2":{"2050":1}}],["payload",{"0":{"369":1},"2":{"369":1,"370":1,"2050":1}}],["paying",{"2":{"198":1}}],["paw3222",{"2":{"1973":3}}],["paw3204",{"2":{"176":1,"1972":3}}],["paw",{"0":{"1972":1,"1973":1},"2":{"328":1,"1972":2,"1973":1}}],["pain",{"2":{"2424":1}}],["painter",{"0":{"138":1,"232":1,"248":1,"464":1,"465":1,"466":1,"2746":1,"2747":1,"2748":1,"2749":1,"2750":1,"2751":1,"2753":1,"2754":1,"2755":1},"1":{"2747":1,"2748":1,"2749":1,"2750":1,"2752":1,"2753":1,"2754":2,"2755":2,"2756":1,"2757":1},"2":{"138":5,"143":1,"145":1,"176":1,"199":2,"222":2,"232":5,"248":3,"249":1,"285":1,"294":2,"464":1,"465":1,"466":1,"2746":21,"2747":12,"2748":11,"2749":48,"2750":44,"2751":2,"2752":5,"2754":3}}],["paid",{"2":{"608":1,"2724":1}}],["pairs",{"0":{"2323":1},"2":{"586":1,"669":1,"1649":1,"2161":1,"2324":1,"2844":1}}],["pair",{"2":{"213":1,"307":1,"1664":1,"2037":1,"2340":1,"2344":1,"2370":1,"2509":1}}],["pachi",{"2":{"222":2,"277":1}}],["packaging",{"0":{"424":1},"2":{"2420":1,"2562":1,"2731":1}}],["package",{"2":{"380":1,"414":2,"424":2,"517":1,"518":1,"1315":1,"1522":1,"2499":1,"2619":1,"2620":1,"2650":1,"2651":2,"2652":1,"2685":1,"2688":1,"2820":1}}],["packages",{"2":{"167":1,"387":1,"420":1,"2499":1,"2619":1,"2672":1,"2685":1}}],["pack",{"2":{"387":1,"2398":1,"2673":2}}],["packs",{"2":{"387":3,"2271":1}}],["packed",{"2":{"236":2,"328":1,"1741":1,"1782":2,"2758":1,"2760":1,"2761":1,"2762":2,"2766":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1,"2921":2}}],["packets",{"2":{"263":1,"1942":2,"2288":2,"2289":2,"2293":1}}],["packet",{"2":{"236":2,"263":1,"559":1,"2288":5,"2289":3,"2293":2,"2875":1}}],["packing",{"2":{"199":1}}],["packrat",{"2":{"154":2}}],["pacman",{"2":{"145":1,"2499":1,"2594":1}}],["pal2",{"2":{"2748":3}}],["pal256",{"2":{"2748":3}}],["pal4",{"2":{"2748":3}}],["pal16",{"2":{"2748":3}}],["palsetpadmode",{"2":{"769":2}}],["palettes",{"2":{"2747":1}}],["palette",{"0":{"2763":1,"2771":1},"2":{"145":1,"249":1,"2675":2,"2747":1,"2748":6,"2758":2,"2760":1,"2763":3,"2766":3,"2770":14,"2771":8}}],["paladinpad",{"2":{"134":1}}],["paladin64",{"2":{"122":2,"222":1}}],["pal",{"2":{"133":1,"134":1,"222":1,"718":2,"759":1,"765":2,"769":6,"1192":2,"1195":1,"1197":2,"1198":1,"1245":3,"1266":4,"1296":2,"1300":1,"1393":1,"1477":1,"1550":1,"2035":1}}],["patent",{"2":{"2728":1}}],["patience",{"2":{"2724":1}}],["patient",{"2":{"608":1}}],["patching",{"2":{"2627":1}}],["patch",{"2":{"222":1,"294":2,"2627":3}}],["patterns",{"2":{"438":1,"663":2,"1628":1,"2170":1,"2440":1,"2735":1}}],["pattern",{"2":{"118":1,"125":1,"185":1,"198":1,"308":1,"317":1,"485":1,"625":1,"2821":1,"2905":1}}],["path=",{"2":{"2621":1}}],["path=raw",{"2":{"2052":1}}],["pathlib",{"2":{"348":1}}],["paths",{"2":{"132":1,"134":1,"160":1,"176":1,"199":1,"308":2,"387":1,"611":1,"2672":1}}],["path",{"2":{"6":1,"50":1,"114":1,"222":1,"308":1,"348":3,"387":2,"391":1,"450":1,"451":1,"461":1,"463":1,"482":1,"483":2,"507":1,"722":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1457":2,"1519":1,"1622":3,"2052":1,"2398":4,"2401":1,"2410":4,"2425":1,"2495":1,"2501":3,"2576":1,"2587":1,"2588":1,"2598":1,"2600":2,"2621":2,"2622":1,"2633":3,"2671":3,"2676":7,"2748":1}}],["padding",{"2":{"2758":1,"2766":1,"2882":1}}],["paddlegame",{"2":{"114":1}}],["pads",{"2":{"681":1,"1664":1,"2273":2}}],["pad",{"0":{"2543":1},"2":{"114":2,"191":1,"236":1,"241":5,"249":2,"266":1,"333":1,"1466":1,"1659":2,"2007":1,"2271":1,"2273":3,"2420":1}}],["pans",{"2":{"1956":1,"2283":1}}],["pan",{"2":{"222":1,"294":1,"328":1,"1956":1,"2283":1}}],["panel",{"2":{"138":1,"248":1,"1947":2,"2324":1,"2503":2,"2542":2,"2746":2,"2749":35,"2750":4}}],["panels",{"2":{"123":1,"138":2,"248":1,"2722":1,"2749":3,"2750":3}}],["pandora",{"2":{"114":1,"222":1}}],["pancake",{"2":{"37":2}}],["paren",{"2":{"2527":2,"2547":2}}],["parens",{"2":{"2311":1}}],["parenthesis",{"2":{"2248":1,"2249":6,"2250":6,"2531":6}}],["parentheses",{"0":{"526":1},"2":{"526":2,"2252":1,"2311":1}}],["parent",{"2":{"72":1,"160":1,"249":1,"266":1,"293":1,"305":1,"314":1,"430":1,"616":1,"2652":1}}],["parity",{"2":{"2036":1,"2291":1}}],["paryz",{"2":{"199":1}}],["parse",{"2":{"160":1,"669":1}}],["parsing",{"2":{"76":1,"92":1,"176":1,"191":1,"199":1,"222":1,"236":1,"308":1,"437":1,"487":1,"493":1,"2672":1,"2760":1,"2767":1,"2768":1}}],["paragraph",{"2":{"673":2}}],["params",{"2":{"199":1,"1844":11,"2066":11}}],["parameter",{"2":{"191":1,"323":1,"328":1,"517":1,"655":1,"1283":1,"1410":1,"1450":1,"1831":1,"2266":2,"2401":1,"2644":1,"2750":2}}],["parameters",{"2":{"70":1,"249":1,"763":1,"1250":1,"1362":1,"2401":3,"2447":1,"2551":1,"2721":1}}],["parallel",{"2":{"114":1,"134":1,"236":1,"427":3,"453":4,"467":5,"1448":1,"1552":1,"2421":1,"2749":1}}],["party",{"2":{"373":1,"514":1,"607":1,"2324":1,"2896":1}}],["participating",{"2":{"2889":1}}],["particular",{"0":{"2005":1},"2":{"510":1,"512":1,"517":1,"557":1,"616":3,"692":2,"769":1,"794":1,"1363":1,"1422":1,"1425":1,"1461":1,"1479":1,"1532":1,"1550":1,"1707":1,"1989":1,"2004":1,"2168":1,"2313":1,"2374":1,"2412":2,"2422":2,"2467":1,"2496":1,"2499":1,"2578":1,"2648":1,"2687":1,"2725":1,"2813":1}}],["particularly",{"2":{"289":1,"524":1,"609":1,"666":1,"1293":1,"2271":1,"2915":1,"2918":1}}],["parties",{"2":{"288":1,"1620":1,"2562":1,"2685":1}}],["partialremap",{"2":{"1210":2}}],["partially",{"2":{"176":1,"199":1,"236":2,"328":1,"720":1,"2739":1}}],["partial",{"2":{"49":1,"1389":1,"1390":1,"1528":1,"2372":1,"2749":1}}],["parts",{"0":{"2414":1},"2":{"172":1,"359":1,"539":1,"609":1,"765":1,"1245":1,"1266":1,"1987":2,"2422":1,"2496":2,"2626":1,"2937":1}}],["part",{"2":{"67":1,"76":1,"86":1,"114":2,"134":1,"145":1,"176":2,"188":5,"191":5,"199":1,"222":8,"236":1,"262":1,"266":32,"348":1,"511":1,"526":1,"527":1,"617":1,"631":1,"659":1,"670":1,"680":1,"698":1,"1206":1,"1329":1,"1379":1,"1406":1,"1421":1,"1445":1,"1464":2,"1466":1,"1485":1,"1519":1,"1526":1,"1527":1,"1540":1,"1655":1,"1790":1,"1840":2,"2060":2,"2218":1,"2268":5,"2271":1,"2290":1,"2374":1,"2398":1,"2425":1,"2427":2,"2430":1,"2476":1,"2542":1,"2555":2,"2594":2,"2625":3,"2627":2,"2631":1,"2644":1,"2670":1,"2676":1,"2677":1,"2687":1,"2731":2,"2732":1,"2789":1,"2833":1,"2927":1,"2937":1}}],["page=shop",{"2":{"1316":1}}],["pagesize",{"2":{"2501":1}}],["pages",{"2":{"277":1,"335":1,"577":1,"659":1,"1379":1,"1402":1,"2501":3,"2574":1,"2696":1}}],["page",{"0":{"673":1,"898":2,"933":2,"967":2,"1001":2,"1035":2,"1069":2,"1103":2,"1137":2,"1171":2,"1224":2},"1":{"899":2,"934":2,"968":2,"1002":2,"1036":2,"1070":2,"1104":2,"1138":2,"1172":2,"1225":2},"2":{"13":1,"124":1,"163":1,"164":1,"194":1,"217":1,"221":1,"249":1,"334":2,"335":1,"358":1,"367":1,"378":1,"386":1,"407":1,"550":1,"553":2,"574":1,"576":1,"585":1,"593":1,"614":2,"624":1,"659":2,"662":1,"672":1,"673":4,"674":1,"678":3,"679":1,"726":1,"746":2,"747":2,"756":2,"766":1,"767":1,"860":1,"890":1,"898":1,"899":2,"925":1,"933":1,"934":2,"959":1,"967":1,"968":2,"993":1,"1001":1,"1002":2,"1027":1,"1035":1,"1036":2,"1061":1,"1069":1,"1070":2,"1095":1,"1103":1,"1104":2,"1129":1,"1137":1,"1138":2,"1163":1,"1171":1,"1172":2,"1216":1,"1224":1,"1225":2,"1311":1,"1318":1,"1327":1,"1334":1,"1339":2,"1341":1,"1348":2,"1354":2,"1375":1,"1376":1,"1379":2,"1385":1,"1395":1,"1409":1,"1688":2,"1691":1,"1955":2,"1956":7,"2009":1,"2030":1,"2049":3,"2050":1,"2052":4,"2159":2,"2283":7,"2398":1,"2404":1,"2411":4,"2430":3,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1,"2446":1,"2464":1,"2465":1,"2483":1,"2501":8,"2502":2,"2503":6,"2534":1,"2541":4,"2542":3,"2543":2,"2602":1,"2615":1,"2646":1,"2666":1,"2677":1,"2685":1,"2707":1,"2709":1,"2716":1,"2717":1,"2719":1,"2744":1,"2774":1,"2782":1,"2844":1,"2845":3,"2898":1}}],["pong",{"2":{"2721":1}}],["podman",{"2":{"2400":2,"2401":3}}],["poop",{"2":{"2323":1}}],["poor",{"2":{"2310":1,"2895":2}}],["pop",{"2":{"2427":1}}],["populated",{"2":{"2930":1}}],["populates",{"2":{"2262":1}}],["populate",{"2":{"1407":1,"2707":1,"2930":1}}],["popularity",{"2":{"2803":1}}],["popular",{"2":{"236":1,"263":1,"2067":1,"2198":1,"2562":1,"2657":1,"2807":1,"2888":1}}],["popping",{"2":{"236":1}}],["polish",{"2":{"2880":2}}],["policies",{"0":{"2893":1},"1":{"2894":1,"2895":1,"2896":1,"2897":1},"2":{"2560":1}}],["policy",{"0":{"2742":1,"2895":1},"1":{"2896":1,"2897":1},"2":{"1313":1,"2742":1,"2896":1}}],["policy=default",{"2":{"1313":1}}],["polilla",{"2":{"253":2}}],["polarity",{"2":{"1249":1,"2678":1}}],["polaris",{"2":{"222":1,"445":4}}],["pololu",{"2":{"686":1,"2379":1,"2492":1}}],["polled",{"2":{"176":1,"1978":1}}],["poll",{"2":{"176":1,"568":2,"579":1,"2036":1,"2271":2,"2875":1}}],["polling",{"0":{"148":1},"2":{"112":1,"114":1,"148":1,"160":2,"285":1,"294":1,"559":2,"1978":1,"2873":2,"2875":1}}],["potentiometer",{"2":{"687":1,"1732":1,"1917":1}}],["potential",{"2":{"21":1,"153":1,"160":1,"262":1,"312":3,"433":1,"454":1,"2047":1,"2050":1}}],["potentially",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"130":1,"393":1,"644":1,"685":1,"1406":1,"1417":1,"1587":1,"2050":1,"2156":1,"2258":1,"2372":1,"2561":1,"2566":1,"2879":1}}],["potato65s",{"2":{"222":1}}],["pocketavr",{"0":{"2483":1},"1":{"2484":1},"2":{"2483":3}}],["pocket",{"2":{"226":1,"236":1}}],["pockettype",{"2":{"57":2}}],["poc",{"2":{"176":1}}],["poker",{"2":{"122":1,"328":1}}],["portuguese",{"2":{"2880":7}}],["port>",{"2":{"2495":1}}],["portmento",{"2":{"1919":1,"2520":1}}],["portb",{"2":{"1468":1}}],["portc",{"2":{"1468":1}}],["porting",{"2":{"1326":1,"2690":1,"2721":1,"2742":1}}],["portions",{"2":{"1790":1,"2561":1}}],["portion",{"2":{"228":1,"2411":1,"2684":1,"2862":1}}],["portamento",{"2":{"1919":1,"2520":1}}],["portability",{"2":{"761":1,"1242":1,"1263":1}}],["portal",{"2":{"122":2}}],["port",{"2":{"114":1,"134":2,"288":1,"294":1,"458":5,"459":1,"566":3,"682":1,"1370":2,"1919":1,"2287":3,"2291":2,"2380":1,"2477":1,"2479":1,"2481":1,"2483":1,"2485":1,"2487":1,"2492":1,"2495":2,"2520":1,"2659":1,"2676":3,"2682":1,"2728":1}}],["ports",{"0":{"1835":1},"2":{"114":1,"191":2,"1545":1,"2495":1,"2682":1,"2687":1}}],["powering",{"2":{"1552":1}}],["powerful",{"2":{"1415":1,"2309":1,"2462":1,"2572":1,"2657":1}}],["powers",{"2":{"1189":1,"2707":1,"2823":1}}],["powered",{"2":{"390":1,"431":1,"594":1,"1675":1,"1941":1,"2701":1}}],["poweron",{"2":{"249":1}}],["poweroff",{"2":{"222":1,"285":1}}],["power",{"0":{"536":1,"647":1,"1348":1,"1373":1},"2":{"70":1,"112":1,"134":3,"210":1,"222":1,"231":1,"262":1,"266":1,"559":2,"646":2,"647":1,"648":2,"663":1,"695":1,"717":1,"743":1,"746":2,"1249":1,"1293":1,"1348":3,"1367":1,"1373":1,"1404":1,"1406":1,"1416":2,"1480":5,"1552":1,"1632":3,"1672":1,"1696":1,"2201":1,"2294":1,"2316":2,"2324":1,"2411":1,"2447":4,"2503":4,"2516":1,"2541":2,"2542":2,"2572":1,"2683":1,"2721":1,"2750":7,"2849":2,"2875":1}}],["pose",{"2":{"1293":1}}],["possibility",{"2":{"2162":1,"2286":1,"2427":1}}],["possibilities",{"2":{"1760":1,"1767":1,"1840":1,"2060":1,"2428":1}}],["possibly",{"2":{"28":1,"50":1,"1296":2}}],["possible",{"2":{"11":1,"98":1,"99":1,"151":1,"224":1,"293":1,"305":1,"314":1,"338":3,"371":1,"397":1,"411":1,"427":1,"523":1,"540":1,"553":2,"586":1,"608":1,"641":1,"644":1,"645":1,"712":1,"713":1,"717":1,"750":1,"800":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1196":1,"1214":1,"1291":1,"1300":1,"1312":1,"1353":1,"1402":1,"1418":1,"1422":1,"1427":2,"1434":1,"1497":1,"1596":1,"1598":1,"1599":1,"1606":1,"1614":1,"1617":1,"1624":1,"1655":1,"1657":1,"1670":1,"1828":1,"1837":1,"1917":2,"1929":1,"1930":1,"1932":1,"1968":1,"1978":1,"2009":1,"2030":1,"2033":1,"2041":1,"2064":1,"2075":1,"2163":1,"2170":1,"2182":1,"2254":1,"2260":1,"2268":2,"2293":1,"2302":1,"2303":1,"2309":1,"2310":1,"2311":1,"2322":1,"2323":1,"2324":3,"2367":2,"2375":1,"2401":1,"2409":1,"2411":2,"2416":1,"2421":1,"2422":1,"2446":1,"2447":1,"2454":1,"2475":1,"2497":1,"2561":1,"2562":1,"2566":1,"2572":1,"2613":1,"2619":1,"2621":1,"2651":1,"2669":1,"2676":1,"2678":1,"2679":1,"2688":1,"2721":7,"2770":3,"2793":1,"2862":1,"2894":1,"2895":1,"2897":1,"2917":1,"2920":1,"2935":1,"2940":1,"2942":1}}],["possess",{"2":{"764":1,"1285":1,"1288":1,"2498":1}}],["possesses",{"2":{"690":1}}],["positive",{"2":{"522":2,"1956":1,"2283":1}}],["positives",{"2":{"199":1,"1497":1}}],["positioning",{"0":{"1635":1},"2":{"2750":1}}],["positional",{"2":{"450":1,"451":1}}],["positions",{"2":{"176":1,"210":1,"222":1,"1613":1,"1696":1,"1840":2,"1962":2,"2060":2,"2446":1,"2721":2,"2775":1,"2862":1,"2884":1,"2919":1}}],["position",{"0":{"1326":1,"1647":1},"1":{"1648":1},"2":{"62":1,"222":1,"1326":1,"1350":1,"1533":1,"1635":2,"1636":1,"1647":1,"1648":2,"1659":1,"1664":1,"1701":1,"1705":1,"1722":1,"1735":2,"1741":1,"1754":1,"1755":1,"1789":2,"1824":1,"1840":9,"1949":1,"1956":9,"1962":1,"1968":3,"2060":9,"2064":1,"2279":1,"2283":9,"2286":1,"2421":1,"2714":1,"2853":1,"2862":5,"2864":3,"2871":3,"2873":1,"2919":2,"2929":1}}],["pos",{"2":{"176":1,"1659":1,"2188":1,"2190":1}}],["postage",{"2":{"2417":2}}],["postprocess",{"2":{"176":1}}],["post",{"0":{"362":1,"404":1,"638":1,"639":1,"640":1,"1626":1,"2679":1},"1":{"405":1,"406":1,"639":1,"640":1},"2":{"74":1,"133":2,"134":3,"176":3,"266":2,"362":1,"368":1,"370":2,"399":1,"400":1,"631":2,"639":2,"640":2,"645":3,"1319":1,"1374":1,"1407":3,"1441":2,"1632":6,"1695":1,"1696":1,"1990":1,"2075":1,"2182":1,"2184":4,"2270":1,"2293":1,"2447":10,"2448":8,"2565":1,"2630":2,"2679":2,"2721":1,"2723":1,"2749":2,"2750":4,"2754":1,"2933":6}}],["posted",{"2":{"49":1,"2722":1}}],["points",{"2":{"510":1,"1532":1,"1775":1,"2293":1,"2303":1,"2322":3,"2323":3,"2324":5,"2411":3,"2427":1,"2677":1}}],["pointer",{"2":{"323":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1257":1,"1260":1,"1275":1,"1277":1,"1529":1,"1924":1,"1949":5,"1956":1,"1958":1,"1962":1,"2050":1,"2051":1,"2055":1,"2057":1,"2279":5,"2283":1,"2303":2}}],["pointers",{"2":{"114":1,"210":1,"579":1}}],["pointed",{"2":{"21":1}}],["point",{"0":{"2340":1,"2347":1},"1":{"2341":1,"2348":1,"2349":1},"2":{"94":2,"203":2,"236":1,"317":1,"396":1,"403":1,"405":1,"406":1,"638":1,"655":1,"659":1,"683":1,"684":2,"1345":1,"1379":1,"1511":1,"1522":1,"1532":1,"1603":1,"1664":1,"1751":1,"1840":2,"1992":1,"2060":2,"2265":1,"2303":2,"2310":1,"2312":1,"2322":1,"2324":1,"2325":3,"2341":2,"2347":1,"2349":1,"2350":1,"2364":1,"2411":1,"2424":1,"2430":1,"2455":1,"2533":3,"2557":1,"2585":1,"2627":2,"2630":1,"2676":2,"2678":1,"2707":1,"2712":1,"2749":1,"2762":2,"2864":1,"2871":1,"2881":1,"2907":1,"2915":1,"2927":1}}],["pointless",{"2":{"50":1,"94":1,"222":1,"236":1,"277":1}}],["pointing",{"0":{"118":1,"149":1,"175":1,"190":1,"1935":1,"1958":1,"1989":1,"1990":1,"2008":1},"1":{"1959":1,"1960":1,"1961":1,"1962":1,"1963":1,"1964":1,"1965":1,"1966":1,"1967":1,"1968":1,"1969":1,"1970":1,"1971":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":1,"1977":1,"1978":1,"1979":1,"1980":1,"1981":1,"1982":1},"2":{"6":1,"63":1,"118":12,"134":3,"149":4,"160":4,"175":5,"176":8,"190":4,"191":6,"222":3,"249":1,"266":1,"273":1,"285":2,"298":1,"317":2,"562":1,"1632":6,"1633":1,"1935":1,"1958":2,"1959":1,"1960":3,"1961":1,"1968":2,"1970":2,"1971":1,"1972":2,"1973":1,"1975":3,"1976":7,"1977":5,"1978":22,"1979":8,"1980":16,"1981":17,"1982":11,"1983":9,"1985":3,"1986":2,"1987":1,"1988":1,"1989":5,"1990":6,"1991":2,"1992":3,"1994":2,"1996":1,"2007":2,"2008":10,"2269":5,"2432":1,"2448":1,"2865":1,"2901":1}}],["pryce",{"2":{"2934":1}}],["prf5",{"2":{"2370":1,"2509":1}}],["prf4",{"2":{"2370":1,"2509":1}}],["prf3",{"2":{"2370":1,"2509":1}}],["prf2",{"2":{"2370":1,"2509":1}}],["prf1",{"2":{"2370":1,"2509":1}}],["prune",{"2":{"415":1,"416":2}}],["pr12345",{"2":{"397":1}}],["practical",{"0":{"2740":1},"2":{"2459":1,"2569":1,"2895":1,"2896":1}}],["practically",{"2":{"393":1,"2317":1,"2496":1}}],["practice",{"2":{"1375":1,"1493":1,"1517":1,"2456":1,"2750":1}}],["practices",{"0":{"672":1,"2624":1},"1":{"2625":1},"2":{"408":1,"424":1,"512":1,"672":1,"2719":1,"2723":1}}],["pragma",{"2":{"134":1,"199":1,"222":1,"303":1,"510":1,"714":2,"715":2,"718":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1296":2,"1300":2,"1402":1,"1466":1,"1496":1,"1550":2,"1551":2,"1844":1,"2035":1,"2066":1,"2409":2,"2719":1,"2775":2}}],["pr20584",{"2":{"222":1}}],["pristine",{"2":{"2721":2}}],["price",{"2":{"2657":1}}],["private",{"2":{"2561":1,"2721":1}}],["privately",{"2":{"2561":1}}],["privileged",{"2":{"2410":1}}],["privileges",{"2":{"1313":1,"1329":1}}],["prir",{"2":{"2503":1,"2541":1}}],["principle",{"2":{"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1928":1,"2691":1}}],["println",{"2":{"2645":12}}],["printed",{"2":{"1206":1,"1991":1,"2052":1,"2411":1,"2428":1,"2500":1,"2620":1,"2694":1,"2877":1}}],["printedpad",{"2":{"277":1}}],["printer",{"2":{"191":1}}],["prints",{"2":{"145":1,"1330":1,"1422":2,"1621":1,"2747":1}}],["print",{"2":{"75":2,"114":1,"119":1,"160":1,"199":1,"249":1,"431":6,"435":1,"453":2,"491":1,"527":1,"560":1,"623":2,"1324":9,"1326":1,"1330":3,"1444":1,"1619":5,"1688":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1942":4,"2052":7,"2411":13,"2503":2,"2524":1,"2541":2,"2905":1,"2942":1}}],["printing",{"0":{"489":1,"491":1},"1":{"490":1,"491":1,"492":1},"2":{"49":1,"222":1,"489":1,"560":1,"1586":1,"1730":1}}],["printf",{"0":{"24":1},"2":{"145":1,"176":4,"390":1,"489":1,"524":1,"527":1,"1313":1,"1529":1,"2882":1}}],["prioritized",{"2":{"397":1}}],["prioritizes",{"2":{"312":1}}],["priority",{"2":{"236":1,"553":2,"765":4,"2552":1}}],["prior",{"2":{"251":1,"297":1,"308":1,"609":1,"2503":2,"2541":2}}],["primitives",{"2":{"2746":1}}],["primarily",{"2":{"632":1,"1196":1,"1343":2,"2493":1}}],["primary",{"2":{"191":1,"713":1,"1469":1,"1633":1,"1945":1,"2269":1,"2276":1,"2399":1,"2873":2}}],["prime",{"2":{"328":1}}],["prime+",{"2":{"285":1,"328":1}}],["primekb",{"2":{"222":1}}],["primus75",{"2":{"222":1}}],["prnt",{"2":{"119":1,"2524":1,"2905":3}}],["preamble",{"0":{"2431":1}}],["prerequisite",{"2":{"2400":1}}],["prerequisites",{"0":{"621":1,"2592":1,"2612":1,"2614":1,"2615":1,"2617":1,"2647":1,"2669":1},"1":{"2648":1,"2649":1},"2":{"308":1,"458":1,"459":1}}],["preloaded",{"2":{"1680":1,"2386":1,"2391":1}}],["pregenerated",{"2":{"716":1}}],["pretty=oneline",{"2":{"586":1,"587":1}}],["pretty",{"2":{"435":1,"510":1,"612":1,"617":1,"1324":1,"1337":1,"1339":1,"1361":1,"1464":1,"2035":1,"2418":1,"2459":1,"2609":1,"2610":1}}],["pretend",{"2":{"100":1}}],["predetermined",{"2":{"1584":1}}],["predefined",{"0":{"1507":1,"1508":1,"1509":1,"1510":1},"2":{"231":1,"716":1,"1474":1,"1507":1,"1508":1,"1509":1,"1510":1,"1735":1,"2009":1,"2160":1,"2788":1}}],["predicted",{"2":{"393":1}}],["precompiled",{"2":{"2494":1,"2728":2,"2734":2,"2737":1,"2743":1}}],["precomputed",{"2":{"1482":1}}],["precalculated",{"2":{"1954":2,"1955":3,"2282":1}}],["precedence",{"0":{"2552":1},"2":{"566":1,"2182":2,"2263":1,"2412":1,"2550":2,"2817":1,"2912":1,"2917":1,"2919":1}}],["preceding",{"2":{"297":1,"2915":1,"2916":1}}],["precision",{"2":{"210":2,"687":1,"1675":1,"1737":12}}],["precisely",{"2":{"1763":1}}],["precise",{"2":{"134":1,"1930":1,"1933":1,"1934":1}}],["preonic",{"2":{"222":1,"1317":1}}],["preflashed",{"2":{"2381":1}}],["preformatted",{"2":{"348":1}}],["preferring",{"2":{"2721":1}}],["preferred",{"2":{"116":1,"446":1,"447":1,"448":1,"2401":1,"2425":1,"2451":1,"2621":2,"2687":1,"2720":2,"2721":2,"2757":1,"2775":1}}],["prefers",{"2":{"2710":1}}],["preferable",{"2":{"1410":1,"1675":1,"2002":1}}],["preferably",{"2":{"579":1,"1428":1,"2652":1,"2721":1}}],["prefer",{"2":{"338":3,"397":1,"489":1,"491":1,"497":1,"510":1,"514":2,"525":1,"527":1,"533":1,"536":1,"537":1,"538":1,"1322":1,"1410":1,"2586":1,"2720":1,"2721":1,"2934":1}}],["preferences",{"2":{"347":1,"492":1,"1669":1,"2324":1,"2671":1}}],["preference",{"2":{"328":1,"2599":1,"2721":2,"2906":1}}],["prefix=",{"2":{"414":1}}],["prefixed",{"2":{"236":1,"492":2,"1416":1,"1438":1,"2548":1,"2556":1,"2565":1,"2877":1}}],["prefix",{"2":{"199":3,"236":1,"249":1,"266":1,"1438":1,"1442":1,"1619":1,"2221":1,"2322":1,"2446":1,"2644":1,"2937":1}}],["prebuilt",{"0":{"164":1},"2":{"164":2,"1323":1,"2388":1}}],["preinstalled",{"2":{"2171":1}}],["preinstall",{"2":{"145":1}}],["preprocess",{"2":{"2303":1,"2933":1}}],["preprocessor",{"2":{"222":1,"510":3,"553":1,"1440":1,"2410":2,"2744":1}}],["prepend",{"2":{"1844":1,"2066":1}}],["prepended",{"2":{"1628":1,"1629":1,"1630":1}}],["prep",{"2":{"114":1,"160":1,"236":1}}],["preparing",{"2":{"453":1,"1462":1}}],["prepare",{"0":{"2613":1},"1":{"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1},"2":{"160":1,"210":1,"249":1,"402":1,"2200":1,"2324":1,"2418":1,"2613":1}}],["prepared",{"2":{"134":1,"617":1,"2562":1}}],["prepares",{"2":{"56":1}}],["preparation",{"2":{"86":1,"153":1,"1956":1,"2283":1}}],["presumably",{"2":{"1316":1}}],["prescribe",{"2":{"2713":1}}],["presc",{"2":{"767":1}}],["preset",{"2":{"1404":1}}],["presets",{"2":{"145":3,"716":1,"1954":3}}],["presence",{"2":{"249":1,"1375":1,"1968":1}}],["presented",{"2":{"2562":1}}],["presents",{"2":{"579":1,"682":1,"1436":1,"2381":1,"2383":1,"2727":1}}],["present",{"2":{"34":1,"212":2,"217":1,"228":1,"229":1,"236":1,"431":2,"444":1,"461":1,"519":1,"565":1,"592":1,"605":1,"690":1,"692":1,"743":1,"751":1,"755":1,"1404":1,"1405":1,"1410":1,"1459":1,"1622":1,"1625":1,"1626":1,"2287":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":2,"2388":2,"2391":2,"2393":1,"2395":1,"2397":1,"2446":1,"2473":1,"2605":1,"2627":1,"2687":2,"2710":1,"2721":3,"2759":1,"2767":1,"2771":1,"2879":1}}],["pressplayid",{"2":{"2560":1}}],["pressure",{"2":{"1633":1,"1968":1}}],["presses",{"2":{"312":1,"562":1,"624":2,"717":1,"1425":1,"1442":2,"1519":1,"1603":1,"1612":1,"1667":2,"1737":1,"1781":1,"1927":1,"1935":1,"1981":1,"2065":1,"2265":1,"2269":1,"2310":1,"2468":2,"2572":2,"2816":1,"2818":1,"2826":1,"2877":1}}],["pressed",{"0":{"1446":1},"2":{"46":2,"98":1,"194":2,"199":1,"210":1,"213":1,"289":2,"294":1,"297":1,"307":2,"324":1,"325":1,"562":1,"591":6,"628":1,"629":5,"630":1,"645":1,"1326":9,"1374":1,"1377":1,"1378":1,"1407":6,"1409":2,"1416":3,"1425":1,"1440":8,"1441":4,"1446":2,"1452":1,"1453":1,"1454":1,"1456":1,"1465":2,"1466":1,"1484":1,"1492":1,"1493":1,"1511":1,"1532":1,"1585":1,"1587":1,"1591":1,"1592":2,"1598":1,"1599":3,"1605":1,"1606":4,"1609":1,"1612":2,"1621":1,"1666":1,"1668":1,"1670":4,"1681":1,"1684":1,"1737":5,"1758":2,"1760":1,"1761":2,"1764":2,"1766":1,"1768":1,"1770":1,"1775":4,"1776":4,"1778":5,"1779":3,"1780":4,"1781":2,"1785":1,"1787":1,"1788":1,"1828":1,"1917":1,"1918":1,"1934":1,"1942":2,"1981":1,"1985":1,"1986":1,"1987":3,"1992":4,"1993":2,"1996":1,"1999":1,"2002":3,"2006":2,"2024":1,"2041":1,"2064":2,"2156":1,"2158":1,"2159":1,"2160":1,"2167":4,"2168":5,"2170":2,"2184":1,"2224":2,"2252":1,"2286":1,"2288":1,"2293":6,"2294":1,"2295":1,"2302":3,"2303":3,"2309":1,"2310":4,"2313":1,"2427":1,"2459":6,"2468":1,"2512":1,"2514":2,"2516":1,"2530":1,"2568":1,"2569":3,"2570":2,"2572":1,"2643":2,"2644":1,"2678":1,"2785":2,"2814":1,"2822":1,"2854":1,"2865":3,"2905":4,"2906":4,"2913":3,"2915":2,"2918":5,"2929":2,"2932":2}}],["press",{"0":{"1605":1,"1606":1,"2468":1,"2913":1},"2":{"99":1,"114":1,"134":1,"191":2,"194":7,"199":1,"213":2,"217":2,"235":1,"266":1,"312":1,"387":1,"392":2,"562":9,"598":1,"599":2,"629":1,"630":1,"645":1,"681":2,"685":1,"1345":1,"1361":1,"1362":1,"1374":28,"1375":1,"1407":1,"1409":1,"1440":1,"1442":1,"1449":1,"1479":5,"1480":5,"1492":2,"1495":1,"1511":2,"1512":1,"1516":3,"1517":3,"1519":1,"1523":1,"1594":3,"1605":1,"1606":5,"1608":2,"1609":1,"1618":2,"1655":4,"1746":1,"1756":2,"1760":1,"1780":1,"1781":1,"1790":1,"1822":1,"1828":1,"1924":1,"1931":1,"1962":1,"1965":2,"1974":1,"2015":1,"2019":1,"2064":1,"2156":2,"2162":1,"2164":1,"2265":1,"2286":1,"2290":1,"2293":2,"2297":1,"2303":1,"2310":2,"2312":2,"2323":1,"2376":2,"2379":2,"2381":2,"2382":2,"2384":2,"2389":1,"2390":1,"2426":1,"2459":4,"2468":1,"2470":1,"2522":28,"2532":1,"2557":1,"2605":3,"2610":1,"2675":2,"2721":1,"2792":1,"2827":2,"2836":1,"2845":1,"2847":2,"2905":1,"2906":1,"2908":2,"2909":3,"2910":2,"2911":1,"2912":6,"2913":9,"2914":3,"2915":1,"2916":1,"2918":6,"2923":1}}],["pressing",{"2":{"73":1,"99":1,"213":2,"222":1,"388":1,"597":1,"598":1,"683":1,"1330":1,"1367":1,"1378":1,"1409":1,"1434":1,"1512":1,"1587":1,"1588":3,"1591":1,"1602":1,"1612":1,"1761":2,"1824":1,"1929":2,"1930":1,"1933":1,"1986":1,"1992":1,"2156":1,"2163":1,"2167":1,"2168":1,"2459":1,"2643":3,"2645":2,"2827":1,"2832":1,"2835":1,"2854":2,"2906":1,"2912":1,"2921":2}}],["pre",{"0":{"214":1,"632":1,"633":1,"634":1,"2678":1,"2701":1},"1":{"633":1,"634":1,"2702":1,"2703":1},"2":{"34":2,"176":1,"194":1,"214":4,"222":2,"266":1,"285":1,"428":1,"437":1,"631":1,"633":2,"634":2,"746":1,"747":1,"1392":1,"1632":6,"1979":1,"2416":1,"2422":1,"2469":1,"2678":2,"2679":1,"2701":1,"2703":1,"2721":4,"2930":1,"2933":3}}],["prev",{"2":{"1483":1,"1489":1,"1661":1,"1674":1,"1770":2,"1842":1,"2062":1,"2174":1,"2324":1,"2325":1,"2370":4,"2503":1,"2505":1,"2509":4,"2518":1,"2525":1,"2526":1,"2533":1,"2542":2,"2917":5}}],["preview",{"2":{"615":1,"2673":2,"2721":2}}],["previewing",{"0":{"615":1}}],["previous",{"2":{"24":2,"56":1,"57":1,"58":1,"98":1,"107":1,"124":1,"126":1,"156":1,"160":1,"191":1,"217":1,"231":1,"279":1,"331":1,"400":1,"405":2,"407":1,"557":1,"685":1,"686":1,"1350":1,"1378":1,"1483":1,"1489":1,"1674":2,"1770":1,"1842":2,"1869":1,"1870":1,"1895":1,"1896":1,"2052":1,"2062":2,"2095":1,"2096":1,"2133":1,"2134":1,"2159":2,"2174":1,"2192":2,"2193":2,"2288":1,"2302":1,"2312":1,"2325":1,"2332":1,"2370":1,"2409":2,"2421":1,"2444":1,"2459":1,"2503":1,"2505":1,"2509":1,"2518":2,"2525":1,"2526":2,"2533":1,"2542":1,"2576":1,"2600":1,"2602":1,"2627":1,"2721":1,"2750":1,"2915":2,"2917":3,"2932":1,"2941":1}}],["previously",{"2":{"14":1,"50":1,"166":1,"169":1,"170":1,"182":1,"184":1,"234":1,"276":1,"283":1,"754":1,"2206":1,"2265":1,"2288":1,"2712":1,"2750":1}}],["prevention",{"2":{"886":1}}],["preventing",{"2":{"190":2,"191":1,"229":1,"1993":1,"2001":2,"2563":2}}],["prevent",{"2":{"186":1,"191":2,"199":1,"210":1,"222":1,"249":1,"308":1,"312":1,"333":1,"403":1,"562":1,"573":1,"590":1,"654":1,"674":1,"751":1,"760":1,"1779":1,"1993":1,"2006":1,"2205":1,"2253":1,"2291":1,"2411":1,"2578":1,"2660":1,"2665":1,"2719":1,"2775":1,"2879":1,"2923":1}}],["prevented",{"2":{"103":1}}],["prevents",{"2":{"6":1,"1449":1,"1780":1,"1983":1,"2905":1}}],["pros",{"2":{"2322":1,"2418":1}}],["professional",{"2":{"2284":1}}],["profile5",{"2":{"2370":1,"2509":1}}],["profile4",{"2":{"2370":1,"2509":1}}],["profile3",{"2":{"2370":1,"2509":1}}],["profile2",{"2":{"2370":1,"2509":1}}],["profile1",{"2":{"2370":1,"2509":1}}],["profiles",{"2":{"1964":1,"2671":1}}],["profile",{"2":{"507":1,"508":1,"509":1,"2370":10,"2509":10}}],["profiler",{"2":{"222":1}}],["proficient",{"2":{"408":1,"2898":1}}],["prone",{"2":{"1419":1,"1518":1,"1604":1,"1608":1}}],["proving",{"2":{"2559":1}}],["providing",{"2":{"614":1,"671":1,"1474":1,"2446":2,"2454":1,"2559":2,"2561":1,"2562":1,"2669":1,"2677":1,"2689":1,"2751":1}}],["provided",{"2":{"70":1,"125":1,"164":1,"185":1,"288":1,"312":1,"419":1,"442":1,"487":2,"568":7,"743":2,"750":1,"754":3,"1297":1,"1323":1,"1340":1,"1395":1,"1401":1,"1440":1,"1522":1,"1620":1,"1621":1,"1624":1,"1675":1,"1732":1,"1736":2,"1775":1,"1964":2,"1976":1,"1977":1,"1979":1,"2270":1,"2291":1,"2293":1,"2441":1,"2496":1,"2560":15,"2561":1,"2562":2,"2619":1,"2620":1,"2635":1,"2689":1,"2721":4,"2722":1,"2918":1}}],["provides",{"2":{"24":1,"45":1,"69":1,"164":1,"174":1,"374":1,"458":1,"552":1,"616":1,"620":1,"622":1,"627":1,"699":1,"720":1,"738":1,"1191":1,"1194":1,"1197":1,"1280":1,"1571":1,"1732":1,"1788":1,"1829":1,"1840":1,"1933":1,"1978":3,"2051":1,"2060":1,"2187":1,"2284":1,"2613":1,"2646":1,"2666":1,"2669":1,"2673":1,"2727":1,"2734":1,"2810":1,"2877":1}}],["provide",{"2":{"4":1,"145":1,"199":1,"201":1,"234":1,"285":1,"288":1,"308":1,"459":1,"493":1,"513":1,"573":1,"623":1,"758":1,"1385":1,"1387":1,"1389":1,"1390":1,"1404":1,"1511":1,"1520":1,"1521":1,"1620":1,"1622":1,"1623":1,"1624":2,"1628":2,"1632":2,"1675":1,"1736":1,"1829":1,"1831":1,"1836":1,"1837":1,"1917":1,"1978":1,"2258":1,"2411":1,"2453":1,"2499":1,"2559":2,"2561":2,"2564":1,"2685":1,"2701":1,"2703":1,"2729":1,"2732":1,"2734":1,"2744":1}}],["proves",{"2":{"538":1}}],["probe",{"2":{"2501":1,"2676":5}}],["probability",{"2":{"2178":1}}],["probably",{"2":{"233":1,"387":1,"529":1,"683":1,"1358":1,"1362":1,"1783":1,"1937":1,"2410":1,"2422":2,"2427":1,"2495":1,"2651":1,"2655":1,"2940":1}}],["problem",{"0":{"1373":1,"1782":1},"2":{"1316":1,"1349":1,"1356":1,"1368":1,"1421":1,"1464":1,"1491":1,"1497":1,"1587":1,"1941":2,"2459":1,"2729":1,"2936":1}}],["problems",{"0":{"606":1},"2":{"222":1,"254":1,"393":1,"433":4,"438":1,"454":1,"598":1,"611":1,"1370":1,"1418":1,"1479":1,"2410":1,"2441":1,"2560":1,"2579":1,"2609":1,"2659":1,"2735":1,"2939":1}}],["problematic",{"2":{"123":1,"254":1,"2740":1}}],["proceed",{"2":{"683":1,"2596":1}}],["procedures",{"2":{"2573":1}}],["procedure",{"0":{"413":1},"1":{"414":1,"415":1,"416":1,"417":1},"2":{"176":1,"191":1,"2262":1,"2270":1,"2721":1}}],["processes",{"2":{"398":1}}],["processed",{"2":{"114":1,"1419":1,"1440":2,"1458":1,"1460":1,"1485":2,"1606":1,"2009":1,"2293":2,"2313":1,"2555":1,"2786":1,"2816":1}}],["processors",{"2":{"609":1,"2291":1,"2458":2,"2927":1}}],["processor==stm32f411",{"2":{"431":3}}],["processor",{"2":{"70":1,"111":2,"191":1,"199":1,"437":1,"666":1,"1930":1,"2572":2,"2682":1,"2823":1,"2846":1}}],["processing",{"0":{"98":1,"1790":1},"2":{"4":1,"98":1,"112":1,"125":1,"185":1,"191":1,"199":1,"214":3,"249":1,"288":2,"294":1,"307":2,"562":1,"625":1,"628":1,"629":1,"644":1,"645":1,"760":1,"1289":1,"1290":1,"1291":1,"1407":1,"1466":1,"1527":2,"1529":1,"1603":1,"1604":1,"1612":1,"1620":2,"1661":1,"1717":1,"1790":1,"1958":1,"1993":1,"2006":1,"2008":1,"2293":2,"2447":1,"2552":1,"2568":1,"2569":3,"2757":2,"2863":1,"2933":1}}],["process",{"0":{"16":1,"23":1,"214":1,"629":1,"630":1,"1440":1,"1526":1,"1527":1,"2724":1,"2933":1},"1":{"1441":1,"1442":1,"1443":1,"1444":1,"1527":1},"2":{"0":1,"1":1,"3":1,"7":1,"9":1,"15":1,"19":1,"39":1,"46":3,"52":1,"76":1,"94":1,"114":1,"141":1,"176":2,"210":3,"212":1,"214":6,"222":3,"235":1,"236":1,"266":1,"277":1,"285":1,"294":1,"307":2,"317":2,"324":1,"325":1,"393":1,"398":1,"407":1,"409":1,"410":1,"411":1,"570":1,"591":5,"607":1,"617":1,"625":2,"628":3,"629":2,"630":2,"631":3,"638":1,"641":1,"645":1,"649":1,"651":1,"664":2,"684":1,"685":1,"760":2,"1326":1,"1377":3,"1378":2,"1385":2,"1407":4,"1425":2,"1440":4,"1441":5,"1456":1,"1465":2,"1466":5,"1479":6,"1480":12,"1512":1,"1521":1,"1526":4,"1527":2,"1599":3,"1611":3,"1612":6,"1616":1,"1632":12,"1655":2,"1657":2,"1661":1,"1662":1,"1675":1,"1737":1,"1749":1,"1828":2,"1846":2,"1917":1,"1918":1,"1923":2,"1938":4,"1939":1,"1942":1,"1951":1,"1986":1,"1987":1,"2002":1,"2006":1,"2008":2,"2046":1,"2069":2,"2162":1,"2167":2,"2168":1,"2170":5,"2174":2,"2184":3,"2224":1,"2270":1,"2293":3,"2303":5,"2309":2,"2318":1,"2389":1,"2421":2,"2422":1,"2434":1,"2449":1,"2454":1,"2459":1,"2552":1,"2568":2,"2569":1,"2570":1,"2573":1,"2584":1,"2599":1,"2603":2,"2605":1,"2614":2,"2619":1,"2625":1,"2707":1,"2715":1,"2721":1,"2722":1,"2727":1,"2785":1,"2804":1,"2864":2,"2871":2,"2873":1,"2905":1,"2929":1,"2932":1,"2933":45}}],["proprietary",{"0":{"2726":1,"2739":1},"1":{"2727":1,"2728":1,"2729":1,"2730":1,"2731":1,"2732":1,"2733":1,"2734":1,"2735":1,"2736":1,"2737":1,"2738":1,"2739":1,"2740":1,"2741":1,"2742":1,"2743":1},"2":{"2560":1,"2726":1,"2727":1,"2728":1,"2729":1,"2730":1,"2734":3,"2735":1,"2739":1,"2740":2,"2742":1,"2743":1}}],["props",{"2":{"2503":1,"2541":1}}],["proposed",{"2":{"338":3,"397":1,"408":1,"2726":1}}],["prophet",{"2":{"222":1}}],["property",{"2":{"532":1,"1367":1,"2750":2}}],["properties",{"0":{"532":1},"2":{"308":1,"387":2,"532":1,"685":1,"1702":1,"1983":1,"2656":1,"2862":2}}],["properly",{"2":{"191":1,"210":1,"249":1,"328":1,"559":1,"562":1,"1350":1,"1609":1,"1789":1,"1956":1,"2069":1,"2273":1,"2291":1,"2469":1,"2483":1,"2491":1,"2644":1,"2655":1,"2774":1}}],["proper",{"2":{"174":1,"456":1,"1312":1,"1313":1,"2600":1,"2658":1,"2660":1,"2689":1}}],["propagated",{"2":{"498":1}}],["propagate",{"2":{"160":1}}],["prologues",{"2":{"145":1}}],["promenade",{"2":{"294":1}}],["promethium",{"2":{"114":1}}],["prompts",{"2":{"308":1,"2621":4}}],["prompt",{"2":{"294":1,"308":1,"333":1,"433":1,"442":2,"685":1,"2495":1,"2503":1,"2601":1,"2615":1,"2669":1}}],["prompted",{"2":{"172":1,"2652":1}}],["promote",{"2":{"199":1,"333":1,"2560":1}}],["prominent",{"2":{"2778":1}}],["prominently",{"2":{"131":1}}],["promises",{"2":{"2743":1}}],["promicro",{"0":{"2434":1,"2828":1},"2":{"138":1,"210":1,"271":2,"277":1,"306":2,"311":14,"315":2,"317":2,"437":2,"1310":1,"1386":14,"1400":1,"1404":1,"2434":1,"2707":1,"2846":2}}],["programs",{"0":{"2777":1},"2":{"1782":2,"1979":2,"2159":1,"2575":1,"2704":1,"2921":2,"2927":1}}],["program",{"0":{"1312":1},"1":{"1313":1,"1314":1},"2":{"392":1,"487":1,"489":2,"538":1,"617":1,"663":1,"751":1,"1202":1,"1289":1,"1308":1,"1461":3,"1587":1,"1599":1,"2047":1,"2214":1,"2284":1,"2411":1,"2425":1,"2572":2,"2592":3,"2612":3,"2725":3,"2800":1,"2927":3,"2938":1}}],["programmed",{"2":{"2610":1}}],["programmer>",{"2":{"2495":1}}],["programmers",{"2":{"527":1,"2483":1,"2495":1,"2501":1}}],["programmer",{"0":{"383":1},"2":{"383":1,"1312":3,"1517":3,"1922":1,"2376":4,"2379":1,"2382":2,"2410":1,"2477":1,"2479":1,"2481":1,"2483":1,"2485":1,"2487":1,"2495":2,"2573":1,"2608":3,"2880":3}}],["programmatically",{"2":{"1736":1,"1844":1,"2066":1,"2290":1,"2319":1}}],["programmatic",{"2":{"1680":1}}],["programmable",{"0":{"2009":1,"2013":1,"2014":1,"2016":1,"2018":1,"2020":1,"2022":1,"2025":1,"2026":1,"2028":1,"2529":1},"1":{"2010":1,"2011":1,"2012":1,"2013":1,"2014":1,"2015":2,"2016":1,"2017":2,"2018":1,"2019":2,"2020":1,"2021":2,"2022":1,"2023":2,"2024":2,"2025":1,"2026":1,"2027":2,"2028":1,"2029":2},"2":{"134":4,"160":1,"188":1,"190":1,"191":3,"231":3,"1289":1,"2009":2,"2011":64,"2013":1,"2025":1,"2026":1,"2027":1,"2028":1,"2029":1,"2453":1,"2529":65,"2704":1,"2933":1}}],["programming",{"0":{"628":1,"2454":1},"1":{"629":1,"630":1},"2":{"609":1,"2047":1,"2050":1,"2462":1,"2496":1,"2561":1,"2572":1,"2582":1,"2608":1,"2666":1,"2802":1,"2811":2,"2926":1}}],["progressively",{"2":{"201":1}}],["progress",{"2":{"113":1,"371":1,"711":1,"2211":1}}],["progressed",{"2":{"109":1}}],["progmem",{"2":{"94":1,"114":1,"160":1,"247":1,"307":1,"587":1,"726":1,"773":1,"802":2,"831":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1440":2,"1521":1,"1529":1,"1534":1,"1596":2,"1597":2,"1598":2,"1599":6,"1611":1,"1612":1,"1650":1,"1661":1,"1696":1,"1711":1,"1712":1,"1715":1,"1716":1,"1918":1,"1948":1,"1956":3,"2180":7,"2182":5,"2184":3,"2231":1,"2233":1,"2278":1,"2283":3,"2296":1,"2298":1,"2305":1,"2322":1,"2323":1,"2550":1,"2555":2,"2578":1,"2919":1,"2931":1}}],["pro",{"0":{"271":1,"1388":1,"1391":2,"2477":1,"2702":1},"1":{"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"2478":1},"2":{"77":1,"86":2,"102":3,"114":12,"134":2,"144":4,"145":2,"154":2,"160":2,"163":1,"172":1,"176":4,"189":1,"191":2,"197":2,"199":1,"210":3,"236":2,"271":2,"317":2,"322":2,"544":1,"566":1,"682":1,"686":2,"1314":1,"1386":1,"1388":7,"1393":1,"1395":1,"1397":1,"1398":1,"1403":1,"2254":1,"2256":1,"2259":1,"2260":1,"2266":2,"2272":1,"2379":1,"2380":1,"2414":1,"2416":1,"2417":2,"2477":2,"2478":3,"2479":1,"2492":3,"2496":1,"2582":1,"2681":1,"2683":1,"2684":6,"2700":2,"2702":2,"2703":1,"2706":1,"2707":2,"2828":1,"2880":4,"2888":3}}],["producing",{"2":{"93":1,"2171":1}}],["production",{"0":{"2455":1,"2497":1},"2":{"459":1,"2377":3,"2384":3,"2455":1,"2497":2}}],["products",{"2":{"153":1,"746":3,"1316":1,"2564":1,"2740":1,"2844":1}}],["product",{"2":{"70":1,"134":2,"169":2,"184":2,"191":2,"559":2,"686":1,"746":4,"747":1,"1316":4,"1329":1,"2050":2,"2052":5,"2377":2,"2384":2,"2476":1,"2559":1,"2561":1,"2721":1,"2845":2,"2875":1}}],["producers",{"2":{"2562":1}}],["produced",{"2":{"428":1,"559":1,"2162":2,"2389":1,"2390":1,"2795":1,"2796":1}}],["produces",{"2":{"303":1,"1474":1,"1591":2,"1789":1,"2162":2,"2170":2}}],["produce",{"2":{"49":1,"170":1,"220":1,"266":1,"718":1,"1512":3,"1521":1,"1596":1,"1920":1,"2422":1,"2473":1,"2494":1,"2582":1,"2918":3}}],["protozoa",{"2":{"222":2}}],["prototypist",{"2":{"154":2,"160":1,"210":2,"222":3}}],["prototypes",{"2":{"133":1,"134":1,"2450":1,"2721":1}}],["prototype",{"2":{"114":1,"191":1,"2455":1,"2719":1}}],["proto",{"2":{"114":1,"134":1,"253":1}}],["protocol=serial",{"2":{"266":1,"277":1}}],["protocols",{"0":{"2290":1},"2":{"133":1,"134":1,"2285":1,"2287":2,"2290":3,"2291":1,"2367":1}}],["protocol",{"0":{"2287":1},"1":{"2288":1,"2289":1,"2290":1},"2":{"50":1,"75":1,"111":2,"112":1,"113":1,"114":1,"133":3,"134":3,"145":1,"176":2,"191":1,"199":2,"210":1,"236":2,"249":1,"263":1,"265":1,"266":1,"390":1,"568":1,"573":1,"1280":1,"1283":1,"1676":1,"1960":1,"1972":1,"1975":1,"2039":1,"2171":1,"2269":1,"2287":1,"2288":2,"2289":2,"2290":6,"2291":2,"2293":4,"2367":1,"2379":1,"2389":1,"2468":1,"2739":1,"2799":2,"2873":3,"2874":2,"2927":2,"2928":1}}],["proton",{"0":{"304":1,"1208":1,"1389":1,"1473":1,"2681":1},"1":{"2682":1,"2683":1,"2684":1},"2":{"49":3,"50":2,"77":1,"134":2,"145":1,"172":2,"189":2,"304":1,"308":1,"546":1,"566":1,"720":1,"765":1,"1197":2,"1245":1,"1266":1,"1308":1,"1386":1,"1387":2,"1388":3,"1389":2,"1392":1,"1402":1,"1403":2,"1473":1,"1550":1,"2266":1,"2387":1,"2414":1,"2416":1,"2417":1,"2676":2,"2681":1,"2683":2,"2684":6,"2888":1}}],["protected",{"2":{"2800":1}}],["protection",{"2":{"312":1}}],["protect",{"2":{"26":1,"746":1,"2459":1}}],["project¹",{"2":{"2655":1}}],["projectcain",{"2":{"249":1,"333":1}}],["projects",{"0":{"1308":1,"2455":1},"1":{"1309":1},"2":{"215":1,"559":2,"663":1,"2375":1,"2405":1,"2445":1,"2447":1,"2651":1,"2652":1}}],["project",{"0":{"42":1,"609":1,"2407":1,"2442":1,"2655":1},"2":{"201":1,"222":2,"347":1,"387":1,"408":1,"517":1,"558":1,"607":1,"611":1,"619":1,"1308":1,"1340":1,"1943":1,"2284":1,"2399":2,"2404":1,"2405":2,"2407":2,"2427":1,"2455":3,"2457":1,"2652":1,"2655":5,"2656":6,"2707":4,"2810":1}}],["pr",{"0":{"410":1,"417":1,"2562":1,"2718":1},"1":{"2719":1,"2720":1,"2721":1,"2722":1,"2723":1,"2724":1,"2725":1},"2":{"1":1,"14":1,"32":1,"36":1,"49":1,"130":1,"134":1,"160":2,"191":1,"198":1,"199":1,"229":1,"236":1,"255":1,"256":1,"265":1,"273":1,"275":1,"308":1,"338":12,"397":11,"400":1,"401":1,"402":1,"403":1,"410":1,"416":1,"503":1,"504":2,"613":2,"616":1,"617":2,"1410":1,"1413":3,"1427":1,"1599":1,"2290":1,"2294":3,"2560":5,"2562":2,"2719":8,"2721":8,"2722":6,"2724":2,"2847":2}}],["prs",{"0":{"38":1,"2719":1,"2720":1,"2721":1,"2722":1},"2":{"1":1,"21":1,"134":1,"188":1,"199":1,"201":1,"224":1,"233":1,"251":2,"265":1,"268":2,"275":1,"279":1,"307":1,"393":1,"396":4,"397":4,"399":3,"400":1,"401":1,"406":9,"456":1,"613":1,"617":1,"2560":5,"2562":3,"2563":1,"2564":1,"2718":1,"2719":1,"2720":1,"2721":4,"2722":3,"2723":1,"2724":3}}],["tft",{"2":{"2432":1,"2749":1}}],["tbd",{"2":{"2384":1}}],["tbkmini",{"2":{"311":8,"317":2}}],["tbk",{"2":{"277":1}}],["tsr",{"2":{"2294":1}}],["tsangan",{"2":{"222":2,"285":1,"308":1,"328":1}}],["tl",{"2":{"2294":3,"2314":2}}],["tps65",{"2":{"1963":1,"1964":2}}],["tps43",{"2":{"1963":1,"1964":2}}],["tpyo",{"2":{"1528":1}}],["tpm754",{"2":{"1364":2}}],["t6181",{"2":{"1365":1}}],["t1l",{"2":{"1292":1}}],["t1h",{"2":{"1282":1,"1283":1,"1292":1}}],["tmpu",{"2":{"2216":1}}],["tmpd",{"2":{"2216":1}}],["tm023023",{"2":{"1967":1}}],["tm035035",{"2":{"1967":1}}],["tm040040",{"2":{"1967":1}}],["tm1812",{"2":{"1284":1}}],["tmk",{"0":{"617":1,"1340":1},"2":{"1":1,"38":1,"49":1,"75":2,"113":4,"114":5,"133":3,"134":3,"176":1,"199":1,"210":2,"572":2,"1316":2,"1332":1,"1340":6,"1349":2,"1350":4,"1356":2,"1358":2,"1362":1,"1368":1,"1373":2,"2367":1,"2405":3,"2550":1,"2555":1,"2605":1,"2796":1,"2927":1}}],["t0l",{"2":{"349":1,"1292":1}}],["t0h",{"2":{"349":1,"1282":1,"1283":1,"1292":1}}],["td",{"2":{"324":1,"325":1,"1597":2,"2302":1,"2305":4,"2306":1,"2308":1,"2309":1,"2310":41,"2311":26,"2312":25}}],["tty",{"2":{"2495":1}}],["ttyacmx",{"2":{"2495":1}}],["ttf",{"2":{"465":1,"2746":1,"2748":3,"2750":1}}],["tt",{"2":{"194":1,"562":1,"1416":2,"1684":1,"1822":1,"1993":1,"2297":2,"2516":1,"2532":1,"2914":1}}],["txbolt",{"2":{"2288":1,"2874":1}}],["txen1",{"2":{"2036":1}}],["txled",{"2":{"1389":1,"1393":1}}],["tx",{"0":{"779":2,"2288":1},"1":{"780":2,"781":2},"2":{"277":1,"780":3,"1194":4,"1195":3,"1197":8,"1198":6,"1202":1,"1208":11,"1209":9,"1210":8,"1265":2,"1266":4,"2287":1,"2288":3,"2289":1,"2291":1,"2294":4,"2684":2,"2702":3,"2704":2}}],["txt",{"2":{"191":1,"420":1,"461":2,"486":1,"1521":1,"1523":1,"2627":4}}],["txuu",{"2":{"154":2}}],["tube",{"2":{"2418":1}}],["tuning",{"2":{"2167":1,"2914":1,"2920":1}}],["tuned",{"2":{"1968":1,"2715":1}}],["tunes",{"2":{"1467":1}}],["tune",{"2":{"176":2,"1763":1,"1781":1,"2168":1,"2788":1,"2924":1}}],["tuple",{"2":{"524":2,"526":1}}],["tuples",{"0":{"524":1},"2":{"524":1}}],["tutorial",{"0":{"2572":1},"1":{"2573":1,"2574":1},"2":{"383":1,"763":1,"2582":1,"2591":2,"2637":1,"2639":1,"2648":1,"2899":2}}],["tuw",{"2":{"328":1}}],["tuv",{"2":{"266":1}}],["tuvw",{"2":{"249":1}}],["turquoise",{"2":{"2067":2,"2198":2}}],["turing",{"2":{"2001":2}}],["turkish",{"2":{"134":1,"2880":6}}],["turnaround",{"2":{"265":1,"2584":1}}],["turn",{"0":{"2308":1},"2":{"92":1,"124":1,"137":1,"210":1,"403":1,"645":1,"667":1,"672":1,"715":1,"1192":1,"1204":1,"1285":1,"1319":1,"1479":1,"1537":2,"1539":1,"1543":1,"1555":1,"1556":1,"1567":1,"1568":1,"1674":2,"1702":1,"1704":1,"1774":2,"1822":1,"1824":1,"1825":1,"1837":2,"1842":2,"1846":1,"1853":1,"1854":1,"1855":1,"1856":1,"1919":2,"1949":1,"1956":2,"2006":1,"2062":2,"2063":3,"2069":1,"2079":1,"2080":1,"2081":1,"2082":1,"2184":2,"2193":4,"2203":1,"2212":1,"2279":1,"2283":2,"2286":1,"2297":5,"2308":2,"2411":1,"2508":2,"2516":3,"2518":2,"2520":2,"2526":2,"2532":5,"2557":1,"2704":1,"2721":1,"2786":1,"2849":1,"2850":1,"2860":1,"2864":1,"2870":1,"2871":1,"2928":1}}],["turned",{"2":{"77":1,"617":2,"1485":1,"1540":1,"1636":1,"1664":1,"1833":1,"1941":1,"2184":1,"2323":1,"2644":1,"2715":1}}],["turns",{"2":{"31":1,"34":1,"137":1,"559":1,"1407":1,"1422":10,"1479":2,"1484":2,"1487":2,"1489":6,"1515":2,"1524":2,"1530":2,"1587":1,"1588":4,"1589":2,"1591":1,"1592":1,"1593":2,"1595":1,"1600":2,"1826":2,"1832":2,"1846":1,"1950":1,"1951":1,"1956":3,"2069":1,"2281":1,"2283":4,"2299":2,"2302":1,"2410":2,"2505":6,"2506":2,"2507":2,"2516":2,"2528":2,"2644":2,"2748":1,"2784":2,"2854":2}}],["turning",{"2":{"13":1,"25":1,"134":1,"195":1,"328":1,"649":1,"1479":1,"1949":1,"2005":1,"2279":1,"2411":1,"2804":1,"2928":1}}],["tzarc",{"2":{"174":1,"176":1,"288":1}}],["typ65+",{"2":{"222":1}}],["typists",{"2":{"1410":1,"2912":1,"2913":1}}],["typically",{"2":{"670":1,"1285":1,"1294":1,"1340":1,"1343":1,"1419":1,"1492":1,"1736":1,"1823":1,"1953":1,"1979":1,"2310":1,"2411":1,"2448":1,"2449":1,"2555":1,"2728":1,"2798":1,"2800":1,"2838":1,"2919":1,"2929":1,"2930":1}}],["typical",{"2":{"194":1,"487":1,"1416":1,"1552":1,"1587":1,"1979":1,"2555":1,"2559":1}}],["typing",{"0":{"2064":1,"2162":1},"2":{"137":1,"195":1,"222":1,"246":1,"297":3,"308":1,"643":1,"1419":1,"1487":1,"1516":1,"1523":2,"1529":1,"1591":2,"1788":1,"1789":2,"1992":1,"2063":3,"2064":6,"2156":1,"2162":2,"2170":2,"2202":1,"2230":1,"2234":1,"2284":1,"2295":1,"2310":5,"2324":1,"2372":5,"2427":1,"2675":2,"2824":1,"2887":1,"2915":2,"2924":1,"2938":1}}],["typographic",{"2":{"199":1}}],["typos",{"2":{"134":2,"249":1,"308":1,"1518":1,"1519":3,"1521":1,"1522":2,"1526":1}}],["typo",{"2":{"114":4,"134":4,"160":3,"176":1,"191":1,"249":1,"1519":3,"1521":3,"1522":4,"1523":2,"1526":2,"1527":4,"1528":4,"1529":4,"1532":4,"1533":1}}],["typeid",{"2":{"2758":2,"2760":1,"2761":1,"2762":1,"2763":2,"2764":2,"2766":2,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1}}],["typed",{"2":{"1437":2,"1517":1,"1518":1,"1619":1,"1778":1,"1779":1,"1780":9,"2161":2,"2162":1,"2310":1,"2323":1,"2905":1}}],["typedef",{"2":{"236":1,"1955":1,"1956":1,"2270":1,"2283":1,"2310":1,"2311":1,"2312":2,"2761":1}}],["typewriter",{"2":{"236":1}}],["typenames",{"2":{"176":1}}],["typestring",{"2":{"2847":1}}],["types",{"0":{"669":1,"1410":1},"2":{"114":2,"119":1,"160":1,"191":1,"196":2,"236":1,"553":2,"613":1,"669":1,"1621":1,"1672":1,"1785":2,"1954":1,"2156":1,"2162":1,"2224":1,"2225":2,"2375":2,"2524":1,"2748":2,"2834":1,"2905":1}}],["type",{"0":{"537":1,"1947":1},"2":{"49":2,"111":1,"112":1,"114":2,"132":1,"137":2,"145":1,"154":2,"160":1,"199":1,"210":1,"222":1,"236":4,"249":3,"273":1,"277":1,"333":2,"370":1,"380":1,"430":1,"502":1,"537":1,"553":1,"572":1,"598":1,"613":1,"637":1,"667":1,"684":2,"685":1,"698":1,"1365":2,"1409":1,"1410":1,"1413":2,"1414":1,"1434":1,"1436":2,"1438":1,"1440":2,"1466":1,"1484":1,"1487":1,"1516":2,"1523":2,"1532":1,"1533":2,"1587":2,"1596":1,"1609":1,"1636":1,"1756":1,"1760":2,"1789":2,"1840":3,"1954":4,"1955":1,"1960":1,"1972":1,"1975":1,"1976":1,"1977":1,"2001":1,"2002":1,"2007":1,"2060":3,"2202":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2241":1,"2242":1,"2243":1,"2244":1,"2245":1,"2266":1,"2282":3,"2295":2,"2296":1,"2310":4,"2311":2,"2312":1,"2320":1,"2323":1,"2367":1,"2410":1,"2411":1,"2442":1,"2448":6,"2467":1,"2495":1,"2605":1,"2643":3,"2657":1,"2676":1,"2746":1,"2749":2,"2758":1,"2760":2,"2761":2,"2762":2,"2766":1,"2767":4,"2768":2,"2769":2,"2770":2,"2771":2,"2772":2,"2773":2,"2834":1,"2864":1,"2871":1,"2938":1}}],["tweezers",{"2":{"2414":1,"2421":1}}],["tweetydabird",{"2":{"311":8,"317":1}}],["tweak",{"2":{"119":1,"285":1,"2064":1,"2178":1,"2571":1}}],["tweaks",{"0":{"2886":1},"2":{"94":1,"160":1,"277":1,"294":1,"2658":1}}],["tw40",{"2":{"241":2}}],["tw",{"2":{"93":1,"2174":1,"2525":1}}],["twisting",{"2":{"2420":1}}],["twinkling",{"2":{"2178":1}}],["twinkle",{"2":{"74":1,"93":1,"114":1,"231":1,"2174":2,"2176":2,"2177":2,"2178":3,"2180":2,"2525":2,"2887":1}}],["twi",{"2":{"249":1}}],["twig50",{"2":{"191":1}}],["twice",{"2":{"92":1,"1492":1,"2215":1,"2301":1,"2302":1,"2305":1,"2379":1,"2492":1,"2854":1}}],["two",{"0":{"353":1,"354":1,"1810":1},"1":{"1811":1,"1812":1},"2":{"18":1,"31":1,"34":1,"35":1,"49":1,"114":1,"160":1,"196":2,"210":1,"214":1,"255":1,"277":1,"289":1,"338":1,"353":1,"354":1,"390":1,"471":1,"489":1,"536":1,"553":1,"613":1,"617":1,"629":1,"646":1,"663":1,"671":2,"682":1,"690":1,"712":2,"719":1,"1189":3,"1197":2,"1249":1,"1293":1,"1348":1,"1375":1,"1378":2,"1392":1,"1395":2,"1410":1,"1416":1,"1427":1,"1440":1,"1458":1,"1468":1,"1472":1,"1476":1,"1480":1,"1497":1,"1511":1,"1532":3,"1533":1,"1603":1,"1608":1,"1611":1,"1621":1,"1626":1,"1628":1,"1650":1,"1655":1,"1661":1,"1664":3,"1691":1,"1734":1,"1736":1,"1737":1,"1785":2,"1791":1,"1913":1,"1917":1,"1946":1,"1950":1,"1955":2,"1963":1,"1965":3,"2008":1,"2031":1,"2035":1,"2051":1,"2063":1,"2170":1,"2179":1,"2182":1,"2201":1,"2203":1,"2225":1,"2241":1,"2254":3,"2256":2,"2259":1,"2260":1,"2280":1,"2288":2,"2293":1,"2294":1,"2303":1,"2310":2,"2420":3,"2453":1,"2551":1,"2562":1,"2566":1,"2607":1,"2627":1,"2631":1,"2676":1,"2684":1,"2701":1,"2704":1,"2724":1,"2765":1,"2912":2,"2918":4,"2934":2,"2942":1}}],["tgr",{"2":{"122":2,"134":1}}],["tg",{"2":{"38":1,"1416":2,"1993":3,"2006":2,"2302":1,"2312":3,"2516":1}}],["tkd",{"2":{"2560":1}}],["tkm",{"2":{"114":1,"222":1}}],["tkc",{"2":{"43":4,"222":3}}],["tkc1800",{"0":{"33":1,"34":1},"1":{"34":1},"2":{"33":2,"34":1,"43":2,"2778":1}}],["tkl87",{"2":{"270":1,"277":1}}],["tklfrlnrlmlao",{"2":{"222":1}}],["tkl",{"2":{"18":2,"110":1,"197":6,"222":5,"226":2,"236":1,"253":2,"281":2,"2294":1,"2587":1,"2721":1}}],["tainting",{"2":{"2740":1}}],["tacworks",{"2":{"2560":1}}],["tate",{"2":{"2170":1}}],["talking",{"2":{"617":1,"2254":1}}],["talk",{"2":{"611":1,"617":2,"618":1,"1249":1,"2398":1,"2501":1}}],["tandem",{"2":{"413":1}}],["tag+=",{"2":{"1329":1}}],["tagging",{"2":{"414":1}}],["tagged",{"2":{"396":1}}],["tag",{"2":{"222":1,"228":1,"348":1,"403":2,"405":1,"414":2,"415":1,"616":1,"2657":1,"2676":1}}],["tags",{"0":{"110":1},"2":{"110":5,"414":2,"415":1,"416":2,"2632":1,"2776":1,"2845":2}}],["tabbing",{"2":{"1377":1}}],["tabs",{"0":{"350":1},"1":{"351":1,"352":1,"353":1,"354":1,"355":1},"2":{"350":1,"510":1,"512":1,"2425":1,"2720":1}}],["tabsification",{"2":{"191":1}}],["tab",{"0":{"351":1,"354":1,"355":1,"505":1,"1377":1,"1499":1},"1":{"352":1,"353":1,"506":1,"507":1,"508":1,"509":1},"2":{"210":1,"350":1,"369":1,"387":3,"391":1,"505":2,"506":1,"507":1,"508":4,"509":2,"577":1,"578":1,"587":2,"685":1,"1344":3,"1367":1,"1377":4,"1456":14,"1498":1,"1499":1,"1504":2,"1510":1,"1598":1,"1599":3,"1612":4,"1616":2,"2160":9,"2221":2,"2291":2,"2310":2,"2374":1,"2503":2,"2537":2,"2546":1,"2550":1,"2556":1,"2566":1,"2602":1,"2644":1,"2656":2,"2776":1}}],["tables",{"0":{"345":1},"2":{"2222":1,"2696":1,"2833":1,"2878":1,"2879":1}}],["tablet",{"2":{"100":1,"1415":1}}],["table",{"0":{"460":1,"2761":1,"2762":1},"2":{"55":1,"145":1,"191":1,"199":1,"247":1,"285":1,"460":3,"673":1,"674":2,"678":1,"685":1,"692":1,"716":3,"720":1,"1195":1,"1198":1,"1474":1,"1547":1,"1548":1,"1840":1,"1992":1,"2060":1,"2176":1,"2296":1,"2322":2,"2323":7,"2365":1,"2411":2,"2420":1,"2471":1,"2692":1,"2705":1,"2750":2,"2760":6,"2761":4,"2762":3}}],["taking",{"2":{"340":1,"408":1,"607":1,"2170":1,"2182":1,"2467":1,"2627":1,"2656":1,"2912":1}}],["takashicompany",{"2":{"249":2,"447":2}}],["takashiski",{"2":{"154":4,"160":2}}],["takai",{"2":{"160":1}}],["taken",{"2":{"408":1,"487":1,"1418":1,"1636":1,"2302":1,"2463":1}}],["take",{"0":{"1328":1},"2":{"134":1,"191":2,"194":1,"210":1,"236":1,"288":1,"302":1,"387":1,"391":1,"414":1,"468":1,"472":1,"570":1,"608":1,"617":1,"663":1,"763":1,"771":1,"774":1,"777":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1257":1,"1260":1,"1275":1,"1277":1,"1348":1,"1442":1,"1777":1,"1780":1,"1781":1,"1956":1,"2182":1,"2203":1,"2262":1,"2312":1,"2412":1,"2421":1,"2454":1,"2572":1,"2685":1,"2724":1,"2751":1,"2882":1,"2894":1,"2931":1,"2937":1,"2942":1}}],["takes",{"2":{"49":1,"472":1,"745":1,"1353":1,"1369":1,"1409":1,"1613":1,"1675":1,"1765":1,"1766":1,"1767":1,"1780":1,"1937":1,"2290":1,"2302":1,"2310":1,"2398":1,"2556":1,"2626":1,"2817":1,"2886":1,"2917":1,"2919":1}}],["taurus",{"2":{"114":1}}],["ta65",{"2":{"57":2}}],["taro",{"2":{"154":2}}],["targeted",{"2":{"2272":1,"2689":1}}],["target2initiator",{"2":{"2270":4}}],["targets",{"0":{"2378":1,"2380":1,"2385":1,"2387":1,"2392":1,"2394":1,"2396":1,"2588":1,"2589":1},"2":{"173":1,"176":1,"199":1,"201":1,"215":1,"236":1,"279":1,"293":3,"294":1,"305":3,"314":3,"431":11,"450":2,"451":2,"452":2,"453":1,"609":1,"1404":1,"2266":1,"2272":1,"2410":1,"2588":1,"2589":2,"2590":1,"2676":3,"2722":1}}],["targeting",{"2":{"160":1,"406":3,"1193":1,"1196":1,"2690":1,"2720":1,"2721":1}}],["target",{"0":{"1993":1,"2001":1,"2005":1,"2007":1},"2":{"49":2,"94":1,"114":3,"145":1,"160":1,"198":1,"236":1,"240":1,"266":23,"294":1,"317":1,"348":1,"417":4,"428":1,"431":2,"453":1,"512":1,"718":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"1195":1,"1198":1,"1297":1,"1385":1,"1388":1,"1396":1,"1403":1,"1404":1,"1421":1,"1466":1,"1954":4,"1992":6,"1993":12,"1994":1,"1996":1,"1999":1,"2001":8,"2002":1,"2004":4,"2005":6,"2006":1,"2007":3,"2008":1,"2376":1,"2377":2,"2379":1,"2381":1,"2382":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2401":5,"2410":5,"2474":1,"2476":2,"2487":1,"2495":1,"2501":1,"2609":2,"2650":1,"2656":2,"2676":3,"2719":1,"2722":1,"2749":3}}],["tartan",{"2":{"37":2}}],["tasks",{"2":{"76":1,"160":1,"419":1,"572":1,"649":1,"1544":1,"1596":1,"2927":1}}],["task",{"0":{"125":1,"645":1,"2008":1,"2757":1},"2":{"31":2,"34":1,"49":1,"64":1,"84":1,"93":1,"113":1,"114":1,"125":4,"134":5,"160":2,"222":1,"266":2,"277":1,"317":1,"626":1,"638":1,"644":2,"645":2,"654":1,"1389":1,"1390":1,"1545":1,"1632":6,"1846":1,"1947":2,"1948":1,"1949":1,"1950":1,"1956":5,"1957":4,"1968":1,"1976":2,"1978":2,"1981":2,"1982":3,"1983":2,"1986":2,"1987":1,"1989":1,"1990":1,"2007":1,"2008":8,"2069":1,"2270":2,"2277":2,"2279":1,"2280":1,"2283":4,"2303":1,"2573":1,"2625":1,"2747":4,"2750":7,"2757":5,"2864":1,"2871":1,"2928":3}}],["tapdance",{"2":{"2311":11}}],["tape",{"2":{"2291":2,"2418":2,"2428":2}}],["tapped1",{"2":{"2565":1}}],["tapped",{"2":{"289":1,"297":1,"320":1,"562":1,"1378":1,"1416":1,"1417":1,"1456":1,"1527":2,"1588":1,"1606":2,"1684":3,"1993":1,"2250":7,"2252":7,"2253":3,"2297":2,"2301":1,"2302":4,"2310":2,"2311":3,"2503":1,"2516":2,"2523":29,"2531":7,"2532":2,"2542":1,"2565":29,"2566":1,"2643":1,"2906":1,"2912":3,"2915":1,"2918":2,"2920":1,"2923":1}}],["tapping",{"0":{"119":1,"195":1,"1606":1,"2524":1,"2903":1,"2905":1,"2921":1},"1":{"2904":1,"2905":1,"2922":1},"2":{"22":2,"49":1,"63":1,"112":11,"119":11,"134":2,"145":1,"160":1,"176":1,"188":1,"191":1,"194":1,"195":6,"199":3,"210":3,"214":1,"289":1,"294":1,"297":1,"320":1,"560":2,"562":12,"572":2,"1416":2,"1460":1,"1492":1,"1493":2,"1497":1,"1512":6,"1513":1,"1516":1,"1527":2,"1532":1,"1588":6,"1604":1,"1684":1,"1782":2,"1828":1,"1970":3,"1971":1,"1993":2,"1996":1,"2156":2,"2252":1,"2297":2,"2302":9,"2303":4,"2310":4,"2311":1,"2312":7,"2382":1,"2524":9,"2643":1,"2834":1,"2847":1,"2883":2,"2903":10,"2904":9,"2905":51,"2906":6,"2907":2,"2911":6,"2912":6,"2913":4,"2914":8,"2915":2,"2918":4,"2921":11,"2922":2,"2923":4,"2933":1}}],["taps",{"0":{"320":1,"2307":1,"2567":1,"2908":1},"1":{"2568":1,"2569":1,"2570":1},"2":{"98":1,"176":1,"191":1,"194":7,"222":1,"289":1,"294":1,"297":1,"308":1,"320":1,"328":1,"562":2,"717":1,"1416":2,"1449":1,"1512":2,"1513":1,"1588":2,"1782":1,"1788":1,"1790":2,"1968":2,"2225":1,"2297":1,"2302":1,"2303":1,"2309":1,"2310":2,"2546":2,"2721":1,"2904":2,"2905":2,"2915":1,"2918":1,"2921":1,"2923":2,"2941":1}}],["tap",{"0":{"15":1,"22":1,"194":1,"195":1,"217":1,"297":1,"323":1,"1381":1,"1383":1,"1442":1,"1449":1,"1450":1,"1451":2,"1513":1,"1828":1,"2245":1,"2300":1,"2302":1,"2305":2,"2309":1,"2310":1,"2311":3,"2312":1,"2523":1,"2565":1,"2568":1,"2570":1,"2700":1,"2792":1,"2835":1,"2836":1,"2902":1,"2906":1,"2909":1,"2914":1,"2915":1,"2916":1,"2917":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1,"2566":1,"2567":1,"2568":1,"2569":1,"2570":1,"2571":1,"2903":1,"2904":1,"2905":1,"2906":1,"2907":2,"2908":2,"2909":2,"2910":2,"2911":2,"2912":2,"2913":2,"2914":1,"2915":1,"2916":2,"2917":2,"2918":1,"2919":1,"2920":1,"2921":1,"2922":1,"2923":1,"2924":1,"2925":1},"2":{"22":3,"38":1,"49":3,"74":1,"90":8,"112":5,"120":3,"134":1,"137":2,"160":4,"176":7,"191":4,"194":14,"195":10,"196":1,"199":6,"210":3,"214":3,"217":3,"222":3,"249":1,"266":1,"277":1,"289":2,"294":1,"297":8,"308":7,"317":1,"320":4,"323":7,"324":10,"325":13,"328":2,"373":1,"421":1,"560":1,"562":18,"590":2,"683":1,"1381":1,"1383":1,"1416":2,"1417":1,"1421":1,"1435":3,"1438":4,"1442":7,"1444":1,"1449":3,"1450":1,"1456":2,"1466":1,"1490":2,"1492":2,"1493":2,"1504":1,"1511":4,"1512":6,"1513":1,"1526":1,"1527":11,"1529":1,"1532":1,"1588":4,"1591":1,"1597":2,"1599":3,"1604":1,"1606":17,"1612":3,"1661":1,"1662":4,"1684":5,"1756":1,"1782":1,"1785":1,"1788":1,"1790":1,"1822":3,"1824":2,"1828":6,"1931":3,"1965":8,"1970":4,"1971":5,"1992":4,"1993":2,"2156":1,"2174":1,"2221":1,"2225":1,"2248":2,"2252":4,"2253":2,"2290":2,"2297":4,"2301":1,"2302":35,"2303":21,"2305":8,"2306":1,"2307":5,"2308":12,"2309":59,"2310":53,"2311":23,"2312":49,"2320":1,"2337":4,"2338":3,"2339":3,"2374":8,"2383":1,"2386":2,"2388":2,"2389":1,"2390":1,"2391":2,"2393":4,"2395":4,"2397":5,"2523":1,"2532":1,"2565":3,"2566":3,"2568":4,"2569":7,"2570":5,"2571":2,"2643":2,"2644":1,"2645":2,"2700":7,"2702":1,"2721":1,"2792":1,"2818":1,"2835":1,"2836":1,"2847":4,"2854":1,"2863":3,"2867":2,"2883":2,"2900":2,"2902":2,"2903":1,"2904":13,"2905":8,"2906":4,"2907":2,"2911":1,"2912":11,"2913":4,"2914":14,"2915":15,"2916":8,"2917":20,"2918":3,"2920":6,"2921":2,"2923":4,"2924":1,"2933":2,"2938":4,"2941":1}}],["ti",{"2":{"2795":1}}],["tie",{"2":{"2775":1}}],["tied",{"2":{"413":1,"2474":1,"2777":1}}],["tin",{"2":{"2420":1}}],["tiny",{"0":{"2665":1}}],["tinyuf2",{"0":{"2393":1},"1":{"2394":1},"2":{"93":1,"176":1,"199":1,"277":1,"2393":5,"2665":2}}],["tinyprintf",{"0":{"24":1}}],["tion",{"2":{"2170":2}}],["tilde",{"2":{"1771":2,"2527":1,"2547":1,"2879":1}}],["tild",{"2":{"1417":1,"2527":1,"2547":1,"2566":1}}],["tips",{"0":{"677":1,"1431":1},"1":{"1432":1,"1433":1},"2":{"1929":1,"1930":1,"1933":1,"2420":1,"2422":1}}],["tip",{"0":{"1643":1,"1644":1},"2":{"288":1,"346":2,"373":1,"502":1,"553":1,"594":1,"596":1,"597":1,"649":1,"654":1,"677":4,"684":1,"714":1,"746":1,"764":1,"765":1,"1189":1,"1206":1,"1300":1,"1385":1,"1387":1,"1412":1,"1413":2,"1422":1,"1440":2,"1445":1,"1466":1,"1497":1,"1522":1,"1526":1,"1527":1,"1528":1,"1529":1,"1584":1,"1627":1,"1633":2,"1635":1,"1639":2,"1643":1,"1644":1,"1650":1,"1655":1,"1661":2,"1662":1,"1734":1,"1829":1,"1843":1,"1844":1,"1934":1,"1937":1,"1948":1,"1964":1,"1991":1,"2009":1,"2063":2,"2066":1,"2073":1,"2074":1,"2166":1,"2172":1,"2174":1,"2181":1,"2205":1,"2218":1,"2259":1,"2266":2,"2267":1,"2271":2,"2302":1,"2398":1,"2443":1,"2446":1,"2447":1,"2448":1,"2492":1,"2494":1,"2496":1,"2542":1,"2576":1,"2579":1,"2583":1,"2593":1,"2598":1,"2601":1,"2603":1,"2606":1,"2612":1,"2619":1,"2621":2,"2622":1,"2626":1,"2628":1,"2632":1,"2633":2,"2671":1,"2702":1,"2710":1,"2714":1,"2749":1,"2750":5,"2751":1,"2775":1,"2776":1,"2788":1,"2792":1,"2895":1,"2903":1,"2912":1,"2914":1}}],["tiger80",{"2":{"222":1}}],["tiger910",{"2":{"154":2}}],["tighter",{"2":{"2063":2,"2583":1}}],["tight",{"2":{"191":1,"1287":1}}],["title",{"2":{"160":1,"335":1,"350":1,"611":2,"673":1}}],["ticking",{"2":{"2377":1,"2384":1}}],["tick3",{"2":{"1680":1}}],["tick2",{"2":{"1680":1}}],["tick1",{"2":{"1680":1}}],["tick",{"2":{"145":2,"285":1,"645":1,"684":1,"1680":6,"1979":2}}],["ticks",{"2":{"25":1,"64":1,"176":1,"1550":1,"2755":1}}],["tidy",{"2":{"50":1,"114":3,"131":1,"133":1,"134":3,"160":2,"199":3,"210":1,"222":3,"249":1,"266":3,"308":1,"328":1,"2418":1,"2424":1}}],["tim4",{"2":{"1550":3}}],["tim2",{"2":{"1300":2}}],["timx",{"2":{"718":2,"1300":5,"1477":1}}],["tim8",{"2":{"714":3,"720":1}}],["tim7",{"2":{"714":3}}],["tim6",{"2":{"714":3,"715":3}}],["tim15",{"2":{"1551":2}}],["tim1",{"2":{"713":1,"718":6,"719":1,"1477":1}}],["timingr",{"2":{"767":5}}],["timings",{"2":{"191":1,"1193":1,"1196":1,"1606":1}}],["timing",{"0":{"1283":1,"1606":1},"2":{"11":1,"74":1,"112":1,"134":2,"160":1,"222":1,"562":4,"654":1,"752":1,"1282":1,"1283":1,"1287":1,"1292":2,"1664":1,"1781":1,"1788":3,"2679":1,"2719":2,"2747":1,"2750":1,"2863":1,"2903":1,"2914":2}}],["timeframe",{"2":{"2303":1}}],["timely",{"2":{"2270":1,"2561":1}}],["timeline",{"2":{"127":1,"2722":1}}],["timed",{"0":{"1805":1},"2":{"572":1,"645":1,"2411":1}}],["time80",{"2":{"222":1}}],["timeout=1000",{"2":{"2052":1}}],["timeouts",{"2":{"25":1,"199":1,"2269":1,"2917":1}}],["timeout",{"0":{"25":1,"770":1,"773":1,"776":1,"779":1,"782":1,"785":1,"788":1,"791":1,"794":1,"1205":1,"1497":1,"1592":1,"1787":1,"1788":1,"1789":1,"1825":1},"1":{"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":1,"781":1,"783":1,"784":1,"786":1,"787":1,"789":1,"790":1,"792":1,"793":1,"795":1,"796":1},"2":{"25":7,"49":1,"74":1,"93":1,"112":2,"134":2,"137":1,"143":1,"145":1,"176":4,"183":4,"191":3,"222":1,"297":1,"328":1,"562":5,"568":7,"645":17,"765":1,"771":1,"772":2,"773":1,"774":1,"775":2,"777":1,"778":2,"780":1,"781":2,"783":1,"784":2,"786":1,"787":2,"789":1,"790":2,"792":1,"793":2,"795":1,"796":2,"799":2,"828":2,"854":2,"886":2,"918":2,"953":2,"987":2,"1021":2,"1055":2,"1089":2,"1123":2,"1157":2,"1205":2,"1213":2,"1253":2,"1255":2,"1258":2,"1261":2,"1288":2,"1492":3,"1495":1,"1496":1,"1497":5,"1506":1,"1512":1,"1514":1,"1515":3,"1516":5,"1517":1,"1592":4,"1602":2,"1606":1,"1787":1,"1788":4,"1789":3,"1802":1,"1805":2,"1825":2,"1846":1,"1951":5,"1956":1,"1964":2,"1968":2,"1974":2,"2001":6,"2069":1,"2207":2,"2210":4,"2268":1,"2271":6,"2281":1,"2283":1,"2310":1,"2506":3,"2643":1,"2700":2,"2747":2,"2854":1,"2863":2,"2864":3,"2867":1,"2871":3,"2872":4,"2873":2,"2876":2,"2915":3,"2917":3,"2922":1}}],["timer1",{"2":{"712":1,"2411":1}}],["timer3",{"2":{"712":1}}],["timer",{"0":{"11":1,"1543":1,"1548":1,"1551":1,"1608":1,"1609":1,"1610":1,"1806":1},"1":{"1609":1,"1610":1},"2":{"11":1,"49":1,"74":1,"114":4,"134":1,"160":2,"191":1,"199":3,"210":1,"285":1,"294":3,"308":1,"328":2,"562":5,"645":7,"714":5,"715":2,"718":3,"719":2,"1300":1,"1410":4,"1413":4,"1456":6,"1468":2,"1475":1,"1477":2,"1492":1,"1540":1,"1541":1,"1543":2,"1547":22,"1548":8,"1551":2,"1607":1,"1608":2,"1609":2,"1610":2,"1799":1,"1802":1,"1806":1,"1949":1,"1992":1,"1999":1,"2002":1,"2270":2,"2279":1,"2303":1,"2719":3,"2750":12,"2793":5,"2850":2}}],["timers",{"0":{"2793":1},"2":{"10":1,"11":1,"653":1,"714":1,"718":1,"1300":2,"1548":3,"1551":1,"2680":1,"2793":1}}],["time",{"0":{"1412":1,"2308":1},"2":{"10":2,"25":1,"28":1,"49":2,"50":1,"73":1,"112":1,"123":1,"124":1,"134":1,"137":1,"138":1,"151":1,"173":1,"174":1,"176":3,"182":1,"191":1,"210":1,"228":1,"243":1,"265":2,"283":1,"331":1,"340":1,"373":1,"383":1,"386":1,"387":2,"408":1,"414":1,"471":1,"487":1,"491":1,"509":2,"511":1,"520":2,"521":2,"522":3,"540":1,"542":1,"564":1,"570":2,"577":1,"578":1,"607":1,"608":1,"628":1,"630":1,"644":1,"645":5,"653":1,"654":6,"655":1,"656":1,"663":1,"746":2,"763":1,"765":1,"769":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"857":6,"1092":6,"1126":6,"1160":6,"1189":1,"1205":1,"1289":1,"1326":8,"1375":1,"1386":1,"1409":3,"1410":7,"1412":1,"1413":2,"1422":1,"1423":1,"1449":1,"1460":1,"1466":2,"1471":1,"1478":3,"1479":1,"1480":1,"1487":1,"1492":5,"1495":1,"1497":1,"1516":2,"1519":1,"1527":1,"1540":1,"1573":1,"1588":2,"1589":1,"1592":1,"1602":1,"1604":1,"1606":1,"1656":1,"1661":1,"1664":1,"1666":1,"1674":2,"1675":8,"1756":1,"1780":1,"1781":1,"1787":1,"1788":1,"1789":4,"1822":1,"1825":1,"1847":1,"1929":8,"1930":1,"1931":8,"1933":4,"1934":1,"1937":2,"1939":1,"1940":1,"1941":1,"1949":1,"1951":1,"1955":4,"1956":1,"1959":1,"1965":9,"1970":2,"1976":1,"1979":2,"1992":1,"1996":4,"2004":1,"2007":2,"2039":1,"2050":1,"2063":1,"2065":1,"2070":1,"2174":1,"2184":1,"2230":1,"2234":1,"2251":1,"2266":1,"2268":2,"2279":1,"2281":1,"2284":2,"2287":2,"2290":1,"2302":6,"2303":2,"2310":1,"2312":2,"2320":1,"2371":1,"2372":3,"2407":1,"2421":1,"2423":1,"2459":2,"2468":1,"2474":1,"2495":1,"2559":2,"2583":1,"2584":2,"2588":1,"2591":1,"2605":1,"2609":1,"2626":1,"2627":1,"2630":1,"2633":1,"2643":2,"2656":1,"2678":1,"2719":2,"2721":2,"2724":4,"2727":1,"2746":1,"2747":5,"2750":3,"2757":1,"2770":1,"2786":1,"2793":1,"2844":1,"2847":1,"2854":1,"2855":1,"2863":1,"2865":2,"2866":1,"2867":1,"2873":2,"2875":1,"2882":1,"2888":1,"2896":1,"2903":1,"2907":1,"2908":2,"2909":3,"2910":2,"2917":2,"2927":1,"2929":1}}],["timestamp",{"2":{"1410":6}}],["timestamps",{"2":{"199":1,"222":1,"432":1,"2269":1,"2873":1}}],["times",{"2":{"0":2,"9":2,"19":2,"39":2,"52":2,"210":1,"234":1,"431":2,"453":1,"467":2,"562":3,"641":1,"647":1,"685":1,"745":1,"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1409":1,"1410":1,"1512":1,"1517":2,"1532":2,"1675":1,"1684":1,"1928":2,"2167":1,"2169":1,"2184":3,"2215":5,"2301":2,"2310":1,"2410":1,"2516":1,"2643":2,"2645":1,"2765":1,"2769":1,"2834":1,"2836":1,"2867":1,"2905":2,"2929":3}}],["tedious",{"2":{"2403":1,"2576":1}}],["telephony",{"2":{"2009":1}}],["telling",{"2":{"2560":1}}],["tells",{"2":{"1438":1,"1464":1,"1840":1,"2060":1,"2253":1,"2469":1,"2627":2,"2633":1,"2775":2,"2932":1}}],["tell",{"2":{"105":2,"233":1,"263":1,"490":1,"586":1,"597":1,"616":1,"1942":1,"2265":2,"2411":1,"2560":1,"2566":1,"2628":1,"2942":1}}],["tekezo",{"2":{"1356":2}}],["tee",{"2":{"1313":1}}],["teensys",{"2":{"682":1,"2381":1,"2410":1}}],["teensy++",{"2":{"544":1,"2273":1,"2416":1,"2417":1}}],["teensy2",{"2":{"218":2}}],["teensypp",{"2":{"218":2}}],["teensy",{"0":{"81":1,"108":1,"2273":1,"2424":1,"2481":1,"2837":1},"1":{"2482":1},"2":{"81":1,"93":1,"108":1,"114":4,"131":1,"134":1,"160":2,"176":1,"199":1,"218":2,"348":4,"544":1,"549":4,"568":1,"681":1,"1308":1,"2273":3,"2381":5,"2384":1,"2410":2,"2414":1,"2416":1,"2417":1,"2423":1,"2424":1,"2427":2,"2481":2,"2482":3,"2837":1}}],["ten",{"2":{"2170":1}}],["tend",{"2":{"397":1,"1532":1,"2749":1}}],["tentative",{"0":{"88":1},"2":{"176":1}}],["tegic",{"2":{"253":2}}],["technology",{"2":{"1409":1}}],["technologies",{"2":{"1409":1}}],["technique",{"2":{"1409":1,"1535":1,"1782":1,"2418":1,"2921":1}}],["techniques",{"2":{"536":1,"2418":1}}],["technically",{"2":{"1353":1,"1409":1,"2272":1}}],["technical",{"0":{"586":1,"1955":1},"2":{"70":1,"201":1,"212":1,"224":1,"238":1,"608":1,"763":1,"1340":1,"1470":1,"2742":1,"2743":1}}],["tech",{"2":{"187":1,"191":1,"198":1,"199":1,"222":23,"335":1,"2560":1,"2721":3}}],["teach",{"2":{"2612":1,"2625":1}}],["teaching",{"2":{"176":1}}],["teal",{"2":{"639":1,"2067":2,"2198":2}}],["team",{"0":{"265":1,"275":1},"2":{"116":1,"265":3,"268":1,"273":1,"275":2,"276":1,"284":1,"312":5,"412":1,"1340":1,"2559":4,"2560":3,"2562":1,"2563":2,"2895":3,"2896":1}}],["team0110",{"2":{"102":1}}],["tempo",{"0":{"1481":1},"2":{"1481":10,"1487":1,"2064":1,"2215":1,"2216":4,"2217":10}}],["temporarily",{"2":{"273":1,"390":1,"1363":1,"1378":1,"1514":1,"1515":1,"1600":1,"2411":1,"2476":1,"2905":1,"2915":1}}],["temporary",{"2":{"114":1,"249":1,"279":1,"453":1,"1359":1,"1416":1,"1655":1}}],["temperature",{"2":{"693":2,"2064":3,"2420":1}}],["temp",{"2":{"453":1,"1466":7}}],["templates",{"0":{"679":1},"1":{"680":1,"681":1},"2":{"266":1,"277":1,"374":1,"442":1,"679":1}}],["template",{"0":{"680":1,"681":1,"2598":1},"2":{"50":1,"277":1,"308":1,"374":1,"616":1,"678":1,"1461":1,"1464":1,"1832":1,"2445":1,"2598":1,"2708":1,"2721":1}}],["textwidth",{"2":{"2750":4}}],["text",{"0":{"456":1,"489":1,"492":1,"2578":1,"2638":1},"1":{"490":1,"491":1,"492":1},"2":{"110":1,"111":2,"138":1,"199":1,"236":1,"335":1,"356":1,"446":1,"447":1,"448":1,"456":3,"488":1,"489":4,"491":1,"492":7,"675":1,"1362":1,"1434":1,"1521":2,"1522":1,"1532":1,"1965":1,"2323":1,"2411":1,"2425":1,"2427":1,"2497":1,"2575":1,"2578":1,"2592":3,"2600":1,"2612":3,"2615":1,"2627":2,"2633":1,"2638":2,"2646":1,"2656":1,"2666":1,"2750":4,"2776":1,"2845":2,"2879":1}}],["terpstra",{"2":{"1374":1,"2565":1}}],["terry",{"2":{"176":1}}],["terrazzo",{"2":{"92":2}}],["term\`",{"2":{"2310":1}}],["terms",{"0":{"2794":1},"1":{"2795":1,"2796":1,"2797":1,"2798":1,"2799":1,"2800":1,"2801":1,"2802":1,"2803":1,"2804":1,"2805":1,"2806":1,"2807":1,"2808":1,"2809":1,"2810":1,"2811":1,"2812":1,"2813":1,"2814":1,"2815":1,"2816":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":1,"2825":1,"2826":1,"2827":1,"2828":1,"2829":1,"2830":1,"2831":1,"2832":1,"2833":1,"2834":1,"2835":1,"2836":1,"2837":1,"2838":1,"2839":1,"2840":1,"2841":1,"2842":1},"2":{"1410":1,"1461":1,"1512":1,"1624":1,"2312":1,"2322":1,"2725":1,"2728":1,"2729":1,"2741":1,"2742":1,"2758":1,"2766":1,"2904":1,"2905":1}}],["terminated",{"2":{"1532":3,"1596":1}}],["terminator",{"2":{"272":1,"1696":1}}],["terminals",{"2":{"2615":1}}],["terminal",{"2":{"176":1,"191":1,"347":5,"380":2,"490":1,"492":1,"1322":1,"1529":1,"1669":1,"2220":1,"2310":1,"2427":1,"2495":1,"2575":1,"2580":1,"2609":1,"2613":1,"2615":3,"2621":3,"2671":9}}],["terminology",{"2":{"249":2}}],["term",{"0":{"119":1,"195":1,"1602":1,"2524":1,"2843":1,"2903":1,"2905":1,"2914":1,"2917":1},"1":{"2904":1,"2905":1},"2":{"22":2,"49":1,"112":3,"114":1,"119":9,"134":2,"145":1,"176":1,"188":1,"191":1,"194":1,"195":9,"199":3,"210":2,"262":1,"283":1,"289":1,"562":18,"572":2,"1460":1,"1492":1,"1512":1,"1513":1,"1588":4,"1596":1,"1602":1,"1604":2,"1606":8,"1608":1,"1609":1,"1970":3,"1971":1,"1996":1,"2302":9,"2303":4,"2310":3,"2311":1,"2312":6,"2524":9,"2685":1,"2798":1,"2826":1,"2832":1,"2838":1,"2843":1,"2847":2,"2855":1,"2892":1,"2903":10,"2904":8,"2905":51,"2906":6,"2907":1,"2911":6,"2912":6,"2913":4,"2914":17,"2915":4,"2917":7,"2918":4,"2921":2,"2933":1}}],["testgroup",{"2":{"2937":1}}],["testlist",{"2":{"2937":3}}],["tester",{"2":{"2427":2}}],["testers",{"2":{"396":1,"399":1,"400":1}}],["tested",{"2":{"49":3,"273":1,"341":1,"720":1,"1446":1,"1945":1,"2212":1,"2310":1,"2443":1,"2646":1}}],["testing",{"0":{"499":1,"500":1,"503":1,"540":1,"720":1,"2427":1,"2640":1,"2641":1,"2840":1,"2934":1},"1":{"500":1,"501":1,"502":1,"503":1,"504":1,"541":1,"542":1,"2641":1,"2642":1,"2935":1,"2936":1,"2937":1,"2938":1,"2939":1,"2940":1},"2":{"312":3,"393":1,"396":1,"405":1,"408":1,"454":1,"540":1,"1327":1,"1328":1,"1361":1,"1517":1,"1955":1,"2411":1,"2610":1,"2685":1,"2840":2,"2934":2,"2935":1,"2937":1,"2940":1}}],["test",{"0":{"467":1,"1361":1,"2610":1,"2622":1,"2935":1},"2":{"49":1,"134":3,"160":2,"191":1,"199":3,"222":2,"236":3,"249":3,"266":1,"277":1,"285":1,"348":2,"463":9,"467":16,"499":1,"503":1,"540":1,"541":1,"542":1,"1361":1,"1362":1,"1533":1,"1596":4,"1597":2,"1598":4,"1651":4,"2174":1,"2176":2,"2177":2,"2291":1,"2427":2,"2442":1,"2525":1,"2610":2,"2722":1,"2887":1,"2934":1,"2935":3,"2936":3,"2937":4,"2938":5,"2939":2,"2940":2}}],["tests",{"0":{"541":1,"542":1,"2937":1,"2938":1,"2939":1,"2940":1},"2":{"1":1,"114":1,"134":3,"145":1,"160":1,"174":1,"176":1,"191":1,"196":1,"198":1,"199":2,"210":1,"263":1,"285":1,"308":1,"463":3,"467":2,"499":1,"503":8,"540":5,"541":2,"542":4,"617":1,"1516":1,"2722":3,"2840":1,"2934":1,"2935":1,"2937":7,"2938":4,"2939":3,"2940":1}}],["t",{"0":{"605":1,"608":1,"704":4,"706":3,"709":1,"728":1,"730":1,"732":3,"734":3,"736":2,"770":5,"773":5,"776":5,"779":7,"782":6,"785":6,"788":6,"791":6,"794":3,"804":1,"806":1,"808":3,"810":3,"812":3,"814":1,"816":1,"818":1,"820":1,"822":1,"824":1,"833":1,"836":2,"838":3,"840":3,"842":1,"844":1,"846":1,"848":1,"862":1,"864":1,"866":3,"868":3,"870":3,"872":1,"874":1,"876":4,"878":2,"880":1,"882":1,"892":1,"894":1,"896":3,"898":2,"900":3,"902":3,"904":1,"906":1,"908":1,"910":1,"912":1,"914":1,"927":1,"929":1,"931":3,"933":2,"935":3,"937":3,"939":1,"941":1,"943":1,"945":1,"947":1,"949":1,"961":1,"963":1,"965":3,"967":2,"969":3,"971":3,"973":1,"975":1,"977":1,"979":1,"981":1,"983":1,"995":1,"997":1,"999":3,"1001":2,"1003":3,"1005":3,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1017":1,"1029":1,"1031":1,"1033":3,"1035":2,"1037":3,"1039":3,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1051":1,"1063":1,"1065":1,"1067":3,"1069":2,"1071":3,"1073":3,"1075":1,"1077":1,"1079":4,"1081":2,"1083":1,"1085":1,"1097":1,"1099":1,"1101":3,"1103":2,"1105":3,"1107":3,"1109":1,"1111":1,"1113":4,"1115":2,"1117":1,"1119":1,"1131":1,"1133":1,"1135":3,"1137":2,"1139":3,"1141":3,"1143":1,"1145":1,"1147":4,"1149":2,"1151":1,"1153":1,"1165":1,"1167":1,"1169":3,"1171":2,"1173":3,"1175":3,"1177":1,"1179":1,"1181":4,"1183":2,"1185":1,"1187":1,"1218":1,"1220":1,"1222":3,"1224":2,"1226":3,"1228":3,"1230":1,"1232":1,"1234":1,"1236":1,"1238":1,"1240":1,"1248":3,"1251":2,"1254":1,"1256":3,"1259":3,"1268":1,"1270":1,"1272":1,"1274":2,"1276":1,"1303":3,"1305":3,"1312":1,"1317":1,"1329":1,"1330":1,"1333":1,"1335":1,"1345":1,"1347":1,"1348":1,"1356":1,"1363":1,"1365":1,"1366":1,"1367":1,"1560":1,"1562":1,"1576":1,"1579":1,"1581":1,"1638":1,"1705":2,"1713":2,"1715":2,"1719":1,"1721":1,"1724":1,"1726":1,"1728":1,"1730":1,"1740":1,"1742":1,"1745":1,"1747":1,"1749":2,"1752":2,"1754":1,"1775":1,"1776":1,"1796":1,"1802":1,"1807":1,"1810":2,"1813":3,"1816":4,"1819":5,"1859":2,"1861":1,"1863":1,"1865":1,"1871":1,"1877":1,"1883":1,"1885":1,"1887":1,"1889":1,"1891":1,"1897":1,"1906":2,"1909":2,"2014":1,"2016":1,"2018":1,"2020":1,"2022":1,"2026":1,"2028":1,"2054":2,"2056":2,"2085":4,"2087":3,"2089":1,"2091":1,"2097":1,"2103":1,"2109":1,"2115":1,"2121":1,"2123":1,"2125":1,"2127":1,"2129":1,"2135":1,"2137":3,"2139":3,"2141":1,"2150":2,"2153":2,"2229":1,"2233":1,"2237":1,"2239":1,"2241":1,"2243":1,"2327":1,"2329":1,"2333":1,"2335":1,"2340":1,"2344":2,"2347":2,"2350":1,"2355":1,"2357":1,"2403":1,"2730":1,"2843":1},"1":{"705":4,"707":3,"710":1,"729":1,"731":1,"733":3,"735":3,"737":2,"771":5,"772":5,"774":5,"775":5,"777":5,"778":5,"780":7,"781":7,"783":6,"784":6,"786":6,"787":6,"789":6,"790":6,"792":6,"793":6,"795":3,"796":3,"805":1,"807":1,"809":3,"811":3,"813":3,"815":1,"817":1,"819":1,"821":1,"823":1,"825":1,"834":1,"837":2,"839":3,"841":3,"843":1,"845":1,"847":1,"849":1,"863":1,"865":1,"867":3,"869":3,"871":3,"873":1,"875":1,"877":4,"879":2,"881":1,"883":1,"893":1,"895":1,"897":3,"899":2,"901":3,"903":3,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"928":1,"930":1,"932":3,"934":2,"936":3,"938":3,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"962":1,"964":1,"966":3,"968":2,"970":3,"972":3,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"996":1,"998":1,"1000":3,"1002":2,"1004":3,"1006":3,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1030":1,"1032":1,"1034":3,"1036":2,"1038":3,"1040":3,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1064":1,"1066":1,"1068":3,"1070":2,"1072":3,"1074":3,"1076":1,"1078":1,"1080":4,"1082":2,"1084":1,"1086":1,"1098":1,"1100":1,"1102":3,"1104":2,"1106":3,"1108":3,"1110":1,"1112":1,"1114":4,"1116":2,"1118":1,"1120":1,"1132":1,"1134":1,"1136":3,"1138":2,"1140":3,"1142":3,"1144":1,"1146":1,"1148":4,"1150":2,"1152":1,"1154":1,"1166":1,"1168":1,"1170":3,"1172":2,"1174":3,"1176":3,"1178":1,"1180":1,"1182":4,"1184":2,"1186":1,"1188":1,"1219":1,"1221":1,"1223":3,"1225":2,"1227":3,"1229":3,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1249":3,"1250":3,"1252":2,"1253":2,"1255":1,"1257":3,"1258":3,"1260":3,"1261":3,"1269":1,"1271":1,"1273":1,"1275":2,"1277":1,"1304":3,"1306":3,"1313":1,"1314":1,"1561":1,"1563":1,"1577":1,"1639":1,"1706":2,"1714":2,"1716":2,"1720":1,"1722":1,"1723":1,"1725":1,"1727":1,"1729":1,"1731":1,"1741":1,"1743":1,"1746":1,"1748":1,"1750":2,"1751":2,"1753":2,"1755":1,"1797":1,"1798":1,"1803":1,"1804":1,"1808":1,"1809":1,"1811":2,"1812":2,"1814":3,"1815":3,"1817":4,"1818":4,"1820":5,"1821":5,"1860":2,"1862":1,"1864":1,"1866":1,"1872":1,"1878":1,"1884":1,"1886":1,"1888":1,"1890":1,"1892":1,"1898":1,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2024":1,"2027":1,"2029":1,"2055":2,"2057":2,"2086":4,"2088":3,"2090":1,"2092":1,"2098":1,"2104":1,"2110":1,"2116":1,"2122":1,"2124":1,"2126":1,"2128":1,"2130":1,"2136":1,"2140":3,"2142":1,"2230":1,"2234":1,"2238":1,"2240":1,"2242":1,"2244":1,"2328":1,"2330":1,"2334":1,"2336":1,"2341":1,"2345":2,"2346":2,"2348":2,"2349":2,"2351":1,"2356":1,"2358":1,"2359":1,"2731":1,"2732":1},"2":{"22":9,"31":3,"34":3,"46":3,"90":4,"94":2,"105":8,"114":4,"119":1,"138":1,"160":3,"164":1,"166":1,"173":2,"176":1,"188":1,"191":2,"194":9,"195":6,"198":1,"199":2,"202":1,"209":1,"210":1,"222":3,"232":1,"247":1,"249":1,"266":1,"272":3,"277":2,"279":1,"300":2,"307":3,"308":3,"323":3,"324":5,"325":6,"328":1,"332":2,"347":1,"369":1,"373":1,"405":1,"408":2,"427":1,"432":2,"442":1,"453":3,"463":4,"467":2,"487":1,"510":1,"511":2,"512":1,"514":1,"531":1,"536":1,"555":1,"558":1,"562":1,"572":1,"587":3,"591":4,"594":2,"595":1,"597":1,"608":1,"614":1,"617":4,"622":1,"623":3,"629":2,"630":10,"632":1,"635":1,"637":7,"643":1,"645":4,"654":2,"663":1,"670":1,"678":1,"705":4,"707":3,"710":1,"717":2,"726":1,"729":4,"731":1,"733":3,"735":3,"737":2,"742":1,"771":4,"774":4,"777":4,"780":6,"783":5,"786":5,"789":5,"792":5,"795":2,"802":2,"805":5,"807":1,"809":3,"811":3,"813":3,"815":1,"817":1,"819":1,"821":1,"823":1,"825":1,"831":2,"834":4,"837":2,"839":3,"841":3,"843":1,"845":1,"847":1,"849":1,"860":2,"863":5,"865":1,"867":3,"869":3,"871":3,"873":1,"875":1,"877":4,"879":2,"881":1,"883":1,"890":2,"893":5,"895":1,"897":3,"899":2,"901":3,"903":3,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"925":2,"928":5,"930":1,"932":3,"934":2,"936":3,"938":3,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"959":2,"962":5,"964":1,"966":3,"968":2,"970":3,"972":3,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"993":2,"996":5,"998":1,"1000":3,"1002":2,"1004":3,"1006":3,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1027":2,"1030":5,"1032":1,"1034":3,"1036":2,"1038":3,"1040":3,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1061":2,"1064":5,"1066":1,"1068":3,"1070":2,"1072":3,"1074":3,"1076":1,"1078":1,"1080":4,"1082":2,"1084":1,"1086":1,"1095":2,"1098":5,"1100":1,"1102":3,"1104":2,"1106":3,"1108":3,"1110":1,"1112":1,"1114":4,"1116":2,"1118":1,"1120":1,"1129":2,"1132":5,"1134":1,"1136":3,"1138":2,"1140":3,"1142":3,"1144":1,"1146":1,"1148":4,"1150":2,"1152":1,"1154":1,"1163":2,"1166":5,"1168":2,"1170":3,"1172":2,"1174":3,"1176":3,"1178":1,"1180":1,"1182":4,"1184":2,"1186":1,"1188":1,"1193":1,"1194":1,"1205":1,"1216":2,"1219":5,"1221":1,"1223":3,"1225":2,"1227":3,"1229":3,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1245":1,"1249":3,"1252":1,"1257":2,"1260":2,"1269":1,"1271":1,"1275":2,"1277":2,"1304":3,"1306":3,"1310":1,"1311":1,"1315":1,"1316":1,"1326":2,"1329":1,"1335":1,"1337":1,"1340":1,"1341":1,"1346":1,"1351":2,"1361":1,"1362":3,"1363":2,"1365":1,"1377":3,"1378":5,"1406":1,"1407":9,"1408":4,"1409":1,"1417":1,"1421":1,"1422":4,"1424":2,"1425":4,"1426":4,"1440":8,"1441":5,"1442":1,"1444":1,"1448":1,"1456":3,"1459":2,"1460":1,"1464":8,"1465":2,"1466":9,"1474":1,"1479":1,"1481":3,"1484":2,"1485":2,"1486":2,"1487":1,"1497":3,"1504":4,"1511":8,"1519":2,"1520":1,"1521":1,"1523":1,"1526":5,"1527":4,"1528":1,"1529":3,"1531":1,"1532":5,"1545":1,"1561":1,"1580":1,"1582":1,"1583":1,"1594":2,"1596":3,"1597":3,"1598":5,"1599":9,"1603":2,"1606":22,"1607":8,"1610":1,"1611":10,"1612":11,"1614":2,"1616":1,"1636":1,"1650":1,"1651":4,"1657":1,"1658":5,"1660":1,"1661":1,"1662":3,"1683":2,"1696":1,"1706":1,"1714":2,"1716":2,"1720":1,"1725":1,"1727":1,"1729":1,"1731":1,"1736":1,"1737":6,"1741":3,"1743":4,"1746":1,"1748":1,"1750":1,"1753":2,"1755":1,"1760":1,"1763":2,"1764":1,"1767":2,"1768":2,"1770":7,"1771":3,"1773":6,"1775":9,"1777":1,"1788":1,"1791":1,"1797":1,"1803":1,"1808":1,"1811":2,"1814":3,"1817":4,"1820":5,"1827":1,"1828":3,"1829":3,"1831":2,"1832":1,"1833":2,"1834":1,"1837":5,"1840":2,"1844":7,"1849":2,"1860":2,"1862":1,"1864":1,"1866":1,"1884":1,"1886":1,"1890":1,"1892":1,"1907":2,"1910":2,"1918":3,"1936":1,"1937":2,"1938":1,"1941":1,"1942":2,"1947":1,"1949":4,"1950":2,"1954":2,"1955":2,"1956":30,"1976":4,"1977":5,"1979":2,"1980":1,"1981":7,"1982":3,"1983":5,"1985":1,"1986":4,"1987":10,"1989":4,"1990":3,"1992":1,"1996":1,"1998":4,"1999":2,"2001":10,"2004":2,"2005":2,"2006":2,"2007":1,"2008":4,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2029":1,"2039":2,"2046":1,"2050":2,"2052":3,"2055":2,"2057":2,"2060":2,"2066":7,"2072":2,"2073":13,"2074":9,"2086":4,"2088":3,"2090":1,"2092":1,"2122":1,"2124":1,"2128":1,"2130":1,"2138":3,"2140":3,"2142":1,"2151":2,"2154":2,"2160":6,"2161":3,"2162":5,"2164":3,"2165":3,"2166":3,"2167":2,"2168":5,"2170":15,"2172":1,"2174":1,"2180":7,"2182":6,"2183":5,"2184":7,"2204":1,"2216":1,"2217":13,"2221":1,"2224":2,"2230":1,"2234":1,"2238":1,"2240":1,"2242":1,"2244":1,"2265":2,"2268":1,"2270":20,"2273":1,"2277":1,"2279":4,"2280":2,"2282":1,"2283":16,"2286":1,"2289":2,"2290":1,"2293":9,"2294":2,"2296":2,"2297":1,"2298":1,"2302":1,"2305":2,"2307":2,"2308":5,"2309":18,"2310":14,"2311":11,"2312":16,"2313":1,"2322":1,"2323":2,"2324":1,"2330":1,"2334":1,"2336":1,"2341":1,"2345":1,"2348":1,"2351":1,"2358":1,"2365":1,"2374":6,"2390":1,"2398":1,"2403":1,"2410":1,"2411":1,"2420":1,"2421":1,"2422":4,"2427":2,"2434":1,"2449":3,"2455":1,"2459":2,"2483":1,"2503":3,"2523":42,"2525":1,"2532":1,"2535":3,"2550":1,"2552":1,"2554":2,"2555":3,"2556":1,"2559":2,"2565":42,"2566":1,"2568":3,"2569":2,"2570":2,"2572":2,"2578":1,"2579":1,"2586":1,"2608":1,"2609":2,"2610":1,"2612":1,"2621":1,"2627":2,"2645":6,"2651":1,"2667":1,"2669":1,"2671":2,"2675":1,"2676":1,"2685":1,"2694":1,"2703":1,"2707":1,"2710":1,"2721":1,"2724":1,"2732":1,"2749":103,"2750":131,"2754":2,"2760":16,"2761":7,"2762":5,"2767":7,"2768":13,"2769":5,"2770":11,"2771":10,"2772":9,"2773":4,"2775":1,"2784":1,"2785":2,"2787":5,"2793":1,"2877":1,"2882":1,"2883":3,"2887":1,"2900":2,"2903":4,"2904":7,"2905":9,"2907":2,"2908":5,"2909":8,"2910":5,"2911":3,"2912":2,"2913":2,"2914":9,"2916":1,"2917":10,"2918":10,"2919":2,"2920":6,"2921":2,"2923":5,"2925":1,"2930":2,"2931":1,"2932":1,"2933":81,"2934":1,"2936":1,"2937":1,"2942":3}}],["tr6",{"2":{"1919":1,"2520":1}}],["tr5",{"2":{"1919":1,"2520":1}}],["tr4",{"2":{"1919":1,"2520":1}}],["tr3",{"2":{"1919":1,"2520":1}}],["tr2",{"2":{"1919":1,"2520":1}}],["tr1",{"2":{"1919":1,"2520":1}}],["tr0",{"2":{"1919":1,"2520":1}}],["trn1",{"2":{"1919":1,"2520":1}}],["trn2",{"2":{"1919":1,"2520":1}}],["trn3",{"2":{"1919":1,"2520":1}}],["trn4",{"2":{"1919":1,"2520":1}}],["trn5",{"2":{"1919":1,"2520":1}}],["trn6",{"2":{"1919":1,"2520":1}}],["trns",{"2":{"307":6,"369":118,"587":152,"1350":1,"1416":1,"1421":2,"1824":1,"2073":1,"2160":3,"2161":1,"2162":1,"2168":1,"2252":3,"2253":1,"2503":1,"2516":1,"2534":1,"2544":1,"2552":4,"2554":2,"2557":1,"2775":1}}],["trp",{"2":{"1680":1}}],["trrs",{"2":{"1197":1,"2254":1,"2256":1,"2257":2,"2258":2,"2259":1,"2260":1,"2271":1,"2419":1}}],["trsu",{"2":{"1919":1,"2520":1}}],["trsd",{"2":{"1919":1,"2520":1}}],["trst",{"2":{"1282":1,"1283":1}}],["trs",{"2":{"1191":1,"1194":1,"2259":1}}],["troubleshoot",{"2":{"2399":1}}],["troubleshooting",{"0":{"601":1,"1206":1,"1589":1,"1941":1,"1991":1},"1":{"602":1,"603":1,"604":1,"605":1,"606":1},"2":{"1206":1,"1318":1,"1325":1,"1940":2,"1991":1,"2274":1,"2591":1}}],["trouble",{"2":{"612":1,"1362":1,"2427":1}}],["tronguylabs",{"2":{"114":1,"218":4}}],["trk2",{"2":{"328":1}}],["trk1",{"2":{"277":1}}],["trkeyboard",{"2":{"277":1,"328":1}}],["trying",{"2":{"611":1,"1497":1,"1979":1,"2009":1,"2265":1,"2310":2,"2434":1,"2559":1,"2622":1}}],["try",{"2":{"228":1,"420":1,"518":1,"523":2,"534":1,"598":1,"608":1,"614":1,"617":1,"618":1,"683":1,"769":1,"1329":2,"1330":1,"1355":1,"1363":1,"1373":1,"1419":1,"1427":1,"1471":1,"1979":1,"2052":1,"2310":1,"2422":1,"2427":1,"2483":1,"2501":2,"2605":1,"2609":1,"2655":1,"2676":1,"2713":1,"2721":1,"2786":1,"2905":1,"2937":1}}],["treated",{"2":{"1993":4,"1997":1,"1999":1,"2456":1,"2503":1}}],["treating",{"2":{"619":1,"2519":1,"2548":1}}],["treat",{"2":{"176":1,"669":1,"1420":1,"2200":1,"2519":1,"2548":1,"2929":1}}],["treadstone48",{"2":{"154":4}}],["treadstone32",{"2":{"154":2}}],["tree",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"154":2,"181":2,"191":1,"199":2,"393":1,"493":1,"1297":1,"1419":1,"1519":1,"2591":2,"2627":1}}],["truth",{"2":{"663":2}}],["trunk",{"2":{"134":1}}],["truetype",{"2":{"2748":1}}],["true",{"0":{"258":1,"533":1},"2":{"13":1,"90":3,"105":6,"111":8,"185":1,"194":3,"195":1,"230":1,"249":1,"256":1,"258":1,"303":3,"324":1,"325":1,"370":1,"454":1,"510":1,"533":2,"591":1,"628":1,"629":2,"645":1,"649":1,"650":1,"666":1,"667":3,"698":1,"714":7,"715":5,"718":3,"743":1,"765":3,"1192":1,"1197":1,"1200":2,"1201":2,"1245":2,"1249":1,"1250":1,"1266":1,"1279":1,"1296":2,"1300":2,"1326":1,"1377":2,"1378":4,"1402":1,"1407":4,"1425":1,"1440":3,"1441":1,"1456":2,"1465":1,"1466":1,"1485":1,"1504":2,"1511":1,"1527":2,"1529":2,"1530":1,"1538":1,"1550":2,"1551":2,"1565":1,"1570":1,"1593":1,"1594":3,"1606":6,"1607":1,"1611":1,"1612":2,"1615":1,"1619":2,"1624":1,"1636":2,"1651":4,"1662":2,"1695":2,"1718":1,"1723":1,"1737":1,"1775":2,"1791":2,"1798":1,"1804":1,"1809":1,"1812":1,"1815":1,"1818":1,"1821":1,"1827":1,"1828":1,"1831":1,"1833":2,"1841":2,"1846":1,"1849":1,"1858":1,"1901":1,"1905":1,"1911":1,"1918":2,"1938":1,"1950":1,"1956":16,"1965":3,"1977":1,"1981":1,"1982":1,"1986":1,"1987":1,"1989":1,"1990":1,"1994":2,"1999":2,"2001":3,"2002":2,"2004":2,"2007":3,"2024":1,"2035":1,"2037":2,"2045":1,"2061":2,"2069":1,"2072":1,"2084":1,"2145":1,"2149":1,"2155":1,"2162":1,"2164":2,"2165":1,"2166":1,"2167":1,"2168":1,"2170":2,"2175":1,"2183":1,"2196":1,"2224":1,"2283":12,"2286":1,"2293":3,"2299":1,"2303":1,"2309":1,"2310":2,"2312":2,"2320":1,"2354":1,"2359":1,"2361":1,"2374":2,"2454":1,"2568":1,"2569":7,"2570":1,"2600":1,"2687":5,"2750":5,"2785":1,"2847":1,"2849":2,"2850":1,"2864":3,"2870":3,"2871":3,"2875":1,"2905":1,"2912":1,"2913":1,"2916":2,"2920":3,"2921":1,"2923":1,"2927":1}}],["tr",{"2":{"134":1,"2294":3}}],["trim",{"2":{"2421":1}}],["tried",{"2":{"2613":1,"2902":1}}],["trie",{"0":{"1531":1},"1":{"1532":1,"1533":1},"2":{"1519":4,"1521":1,"1531":1,"1532":4,"1533":1}}],["tries",{"2":{"559":1,"1532":1,"2572":1,"2607":1}}],["triangle",{"2":{"1474":1}}],["tricker",{"2":{"1421":1}}],["tricky",{"2":{"1419":1,"1519":1,"2398":1,"2942":1}}],["triplet",{"2":{"1285":1,"2750":1}}],["triple",{"2":{"519":2,"2310":5}}],["trinity",{"2":{"222":1}}],["tri",{"0":{"2313":1,"2783":1,"2784":1,"2786":1},"1":{"2314":1,"2315":1,"2316":1,"2784":1,"2785":2,"2786":1,"2787":2},"2":{"199":2,"222":1,"1422":3,"1464":3,"2313":1,"2314":2,"2315":4,"2316":7,"2560":19,"2721":2,"2784":1,"2785":4,"2786":1,"2787":4}}],["triggered",{"2":{"297":1,"562":1,"649":1,"715":1,"1658":4,"1684":3,"1775":1,"2001":1,"2915":1}}],["triggers",{"0":{"1522":1},"2":{"195":1,"1512":1,"1775":1,"1782":1,"1783":1,"1970":2,"2069":1,"2915":1,"2921":1}}],["triggering",{"2":{"98":1,"562":1,"1675":1,"2252":1,"2269":1}}],["trigger",{"2":{"95":1,"98":1,"114":1,"191":1,"198":1,"562":1,"578":1,"643":1,"649":1,"654":4,"714":2,"715":1,"1313":1,"1375":1,"1377":1,"1378":1,"1522":3,"1583":1,"1584":1,"1585":1,"1607":3,"1656":1,"1675":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1760":1,"1770":7,"1773":2,"1775":4,"1776":6,"1778":8,"1779":6,"1780":1,"1782":1,"1970":1,"1971":1,"2001":1,"2002":1,"2007":1,"2069":1,"2600":1,"2602":1,"2603":1,"2678":1,"2786":1,"2905":2,"2914":2,"2921":1,"2923":1}}],["trivial",{"2":{"95":1,"266":1,"1775":1,"2457":1,"2550":1}}],["travel",{"2":{"1965":7,"2178":1,"2416":1}}],["travis",{"2":{"1":1,"17":1}}],["trapezoid",{"2":{"1474":1}}],["trailing",{"2":{"222":2,"518":1,"524":1,"525":3,"1249":2}}],["traditional",{"2":{"2583":1}}],["traditionally",{"2":{"125":1,"185":1,"240":1,"2556":1,"2561":1}}],["tradestation",{"2":{"43":2}}],["tracing",{"0":{"2942":1},"2":{"2411":1,"2942":3}}],["trace=x",{"2":{"2942":1}}],["traced",{"2":{"2633":1,"2942":5}}],["trace",{"2":{"2273":1,"2411":1,"2942":4}}],["traceability",{"2":{"397":1}}],["tractyl",{"2":{"114":1,"160":2,"308":1}}],["tracked",{"2":{"1933":1}}],["tracker++",{"2":{"1441":1}}],["tracker",{"2":{"1441":3,"2001":5}}],["tracks",{"0":{"2214":1},"2":{"1928":1,"2214":2,"2627":1,"2942":2}}],["trackpoints",{"2":{"2030":1}}],["trackpoint",{"0":{"1364":1,"2031":1},"2":{"266":1,"2030":4,"2041":1}}],["trackpad",{"0":{"1963":1,"1967":1},"1":{"1964":1,"1965":1,"1966":1,"1968":1,"1969":1,"1970":1,"1971":1},"2":{"176":2,"249":1,"1963":1,"1964":3,"1967":1,"1968":6,"1971":4,"1987":1}}],["trackpads",{"2":{"176":1,"1963":1,"1967":1}}],["tracking",{"2":{"134":1,"711":1,"1961":1,"1976":1,"2163":1,"2810":1}}],["trackballs",{"2":{"1979":1}}],["trackball",{"0":{"1974":1},"2":{"114":3,"118":2,"176":1,"199":1,"246":1,"291":2,"1974":11,"1979":1}}],["track",{"2":{"74":2,"1378":2,"1770":6,"1968":5,"2007":1,"2159":1,"2216":1,"2217":19,"2288":1,"2293":1,"2420":1,"2503":8,"2542":10,"2749":1,"2942":3}}],["transcription",{"2":{"2284":1}}],["translucent",{"2":{"2171":1}}],["translating",{"2":{"2644":1}}],["translation",{"2":{"470":1,"2284":1}}],["translatable",{"2":{"1440":1}}],["translated",{"2":{"2009":1,"2561":1}}],["translates",{"2":{"695":1,"696":1,"2884":1}}],["translate",{"2":{"99":1,"1678":1,"2744":1}}],["transmitted",{"2":{"2368":1,"2747":1,"2906":1}}],["transmitting",{"2":{"1191":1,"1194":1,"1197":2,"2269":5}}],["transmit",{"0":{"770":1,"773":1,"779":1,"1256":1,"1274":1},"1":{"771":1,"772":1,"774":1,"775":1,"780":1,"781":1,"1257":1,"1258":1,"1275":1},"2":{"328":1,"746":1,"747":1,"771":1,"773":1,"774":1,"780":1,"783":1,"786":1,"1269":1,"1270":1,"1274":1,"2873":1}}],["transmissions",{"2":{"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1}}],["transmission",{"2":{"202":1,"263":1,"1189":3,"1249":1,"1293":1}}],["transistor",{"2":{"1539":4,"1552":1}}],["transitions",{"2":{"334":1,"1409":2,"1467":1,"2858":1}}],["transitioned",{"2":{"268":1}}],["transition",{"2":{"236":1,"265":1,"283":1,"1409":1,"1680":60}}],["transient",{"0":{"748":1},"2":{"160":1,"743":2,"748":3,"2857":1}}],["transparency",{"0":{"2552":1},"2":{"2552":1,"2760":2,"2770":3}}],["transparent",{"2":{"231":1,"307":1,"1416":1,"1782":1,"1824":1,"2253":1,"2503":2,"2544":2,"2552":4,"2554":1,"2760":1,"2770":3,"2921":1}}],["transposition",{"2":{"1919":15,"1920":1,"2520":15}}],["transpose",{"2":{"210":1,"1919":15,"2520":15}}],["transported",{"2":{"74":1}}],["transport",{"0":{"107":1},"2":{"74":1,"75":1,"111":1,"112":3,"114":1,"134":1,"145":1,"176":1,"266":1,"277":1,"565":1,"568":9,"1846":1,"1947":2,"1978":1,"2069":1,"2255":1,"2261":2,"2268":1,"2269":1,"2270":2,"2411":2,"2669":1,"2746":1,"2873":2}}],["transformation",{"2":{"2039":1,"2905":1}}],["transformations",{"2":{"169":1,"176":1,"185":1}}],["transform",{"2":{"1976":1,"2044":1}}],["transferring",{"2":{"1955":1,"2749":1}}],["transfers",{"2":{"145":1}}],["transfer",{"2":{"107":1,"765":1,"2268":1,"2270":1,"2290":1,"2468":1,"2749":2,"2750":2}}],["transactions",{"2":{"1204":1,"2270":1}}],["transaction",{"2":{"160":1,"176":1,"191":2,"266":1,"568":2,"1248":1,"1262":1,"1631":1,"2270":12,"2747":1}}],["toward",{"2":{"2421":1}}],["towards",{"2":{"111":1,"191":1,"194":1,"262":1,"378":1,"663":1,"1552":1,"2312":2,"2838":1}}],["to=michi",{"2":{"1388":2}}],["to=imera",{"2":{"1388":2}}],["to=liatris",{"2":{"1388":2,"1396":2}}],["to=helios",{"2":{"1388":2,"1396":2}}],["to=elite",{"2":{"1388":2,"1396":2}}],["to=rp2040",{"2":{"1388":2,"1396":2}}],["to=svlinky",{"2":{"1388":2}}],["to=stemcell",{"2":{"1388":2,"1396":2}}],["to=sparkfun",{"2":{"1388":2}}],["to=bonsai",{"2":{"1388":2}}],["to=bit",{"2":{"1388":2}}],["to=blok",{"2":{"1388":2}}],["to=kb2040",{"2":{"1388":2}}],["to=",{"2":{"1385":1}}],["to=proton",{"2":{"304":1,"1385":1,"1388":2,"2684":1}}],["tolerant",{"2":{"1294":1,"1295":1,"2662":1,"2693":1}}],["tour",{"2":{"617":1}}],["touching",{"2":{"2421":1}}],["touchdown",{"2":{"2007":1}}],["touch",{"2":{"176":1,"210":4,"222":44,"266":1,"273":1,"276":1,"284":1,"1967":1,"1968":1,"1970":4,"1971":1,"2421":2,"2427":1,"2598":2,"2718":1}}],["touchpads",{"2":{"190":1,"191":1,"244":1,"2030":1,"2040":1}}],["touchpad",{"2":{"118":2,"1968":1,"2039":1}}],["todo",{"2":{"503":1,"622":2,"623":4}}],["today",{"2":{"399":1,"400":1,"401":1}}],["tokens",{"2":{"473":1,"489":2,"492":1}}],["tokenn",{"2":{"429":1}}],["token2",{"2":{"429":1}}],["token1",{"2":{"429":1}}],["token",{"2":{"333":1,"655":4,"656":3,"657":5,"2595":1,"2601":1,"2669":1,"2750":6}}],["tokyokeyboard",{"2":{"102":1,"114":1}}],["tokyo60",{"2":{"102":2,"114":2}}],["tones",{"2":{"716":6,"1468":1,"1471":1,"1478":1,"1480":1}}],["tone",{"0":{"1478":1},"2":{"210":1,"629":3,"672":1,"1407":2,"1471":1,"1478":5,"1480":1}}],["tofujr",{"2":{"236":1}}],["tofu60",{"2":{"236":2}}],["tofu",{"2":{"199":1}}],["totally",{"2":{"1985":1}}],["total",{"2":{"191":4,"746":1,"747":1,"748":1,"756":1,"1282":1,"1283":1,"1655":1,"2260":1,"2375":1,"2398":2,"2424":1,"2579":1,"2750":2,"2760":4,"2768":4,"2885":1}}],["tominabox1",{"2":{"154":5,"160":2,"210":1,"236":1}}],["tops",{"2":{"2421":1}}],["topmost",{"2":{"1419":1,"1714":1,"1716":1}}],["topic=41989",{"2":{"1373":1}}],["topic=14290",{"2":{"1372":1}}],["topic=50176",{"2":{"1364":1}}],["topic=57008",{"2":{"1350":1}}],["topics",{"0":{"659":1,"1379":1,"1399":1,"2899":1,"2900":1,"2901":1},"1":{"660":1,"661":1,"1380":1,"1381":1,"1382":1,"1383":1,"1384":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1,"1405":1},"2":{"2610":1,"2899":1,"2900":2}}],["topic",{"2":{"406":5,"1375":1,"1628":1,"2496":1}}],["top",{"2":{"100":1,"160":1,"255":1,"405":1,"559":1,"569":1,"602":1,"666":1,"671":2,"681":1,"688":1,"743":1,"1324":1,"1345":1,"1407":1,"1416":1,"1421":2,"1479":1,"1584":2,"1635":1,"1662":1,"1735":1,"1789":1,"1839":1,"1840":1,"1843":1,"1956":1,"2004":1,"2050":1,"2059":1,"2060":1,"2063":2,"2161":1,"2262":1,"2283":1,"2289":1,"2310":1,"2319":1,"2421":1,"2443":2,"2447":13,"2448":13,"2457":1,"2496":1,"2554":1,"2555":2,"2578":1,"2605":1,"2627":1,"2652":1,"2671":1,"2676":2,"2708":1,"2710":1,"2721":1,"2748":1,"2750":5,"2772":3,"2775":1,"2776":1,"2777":1,"2853":1,"2862":2,"2878":1}}],["too",{"2":{"94":1,"105":1,"134":1,"138":1,"188":1,"222":1,"233":1,"528":1,"530":1,"534":1,"572":1,"612":1,"649":1,"655":1,"674":1,"683":1,"716":4,"717":3,"1317":1,"1362":2,"1406":1,"1407":1,"1409":1,"1417":1,"1445":1,"1466":1,"1482":1,"1487":1,"1491":1,"1519":1,"1596":1,"1789":1,"1929":6,"1930":1,"1987":1,"2273":2,"2298":1,"2302":1,"2310":1,"2312":1,"2411":1,"2420":1,"2421":1,"2422":1,"2454":1,"2566":1,"2583":1,"2645":1,"2709":1,"2719":2,"2721":2,"2888":1,"2905":1,"2942":1}}],["tool",{"2":{"182":1,"373":1,"380":1,"383":1,"387":1,"422":3,"487":1,"576":1,"598":1,"1356":1,"2324":1,"2441":1,"2477":1,"2479":1,"2481":1,"2560":1,"2582":1,"2721":1,"2776":1}}],["toolchains",{"2":{"294":1,"387":1}}],["toolchain",{"0":{"381":1},"2":{"134":1,"381":1,"408":1,"2655":1,"2676":1}}],["toolbox",{"0":{"1321":1,"2606":1,"2607":1},"1":{"2607":1,"2608":1},"2":{"82":1,"119":1,"131":1,"164":2,"240":3,"348":1,"576":1,"683":1,"686":1,"1315":1,"1321":1,"1330":1,"1618":1,"2266":2,"2375":1,"2376":2,"2379":1,"2381":1,"2382":1,"2383":1,"2386":1,"2388":1,"2389":1,"2390":2,"2403":1,"2426":2,"2461":1,"2489":1,"2501":1,"2592":1,"2602":1,"2605":1,"2606":3,"2607":2,"2608":1,"2612":1}}],["tooling",{"2":{"70":1,"198":1,"373":1,"663":1,"2650":1}}],["tools",{"0":{"382":1,"1320":1},"1":{"1321":1,"1322":1,"1323":1},"2":{"49":1,"182":1,"374":1,"378":1,"381":1,"382":1,"384":1,"387":1,"422":1,"488":2,"598":2,"663":2,"681":1,"1320":1,"1332":1,"1362":1,"1948":1,"2266":1,"2291":2,"2375":1,"2387":1,"2415":1,"2489":1,"2582":1,"2646":2,"2651":1,"2666":2,"2667":1,"2673":1,"2899":1}}],["tog",{"2":{"188":1,"191":1,"231":1}}],["togg",{"2":{"188":2,"191":3,"235":1,"285":1,"303":1,"587":4,"1319":1,"1479":1,"1484":1,"1487":1,"1489":3,"1515":1,"1520":1,"1523":1,"1524":1,"1537":1,"1588":1,"1600":1,"1674":1,"1774":1,"1842":1,"1919":1,"2062":1,"2174":1,"2184":2,"2185":1,"2203":1,"2209":1,"2216":1,"2297":2,"2504":1,"2505":3,"2506":1,"2507":1,"2508":1,"2510":1,"2518":1,"2519":7,"2520":1,"2525":1,"2526":1,"2528":1,"2532":1,"2548":7,"2644":1,"2745":1}}],["toggling",{"0":{"1416":1},"1":{"1417":1},"2":{"49":1,"1287":1,"1406":1,"1987":1,"1992":1,"2001":1,"2002":1,"2075":1,"2184":1,"2312":1,"2411":1,"2679":1,"2882":1}}],["toggles",{"0":{"2177":1},"2":{"718":1,"1407":1,"1416":1,"1422":1,"1475":1,"1479":1,"1484":1,"1487":1,"1489":3,"1515":1,"1524":1,"1530":1,"1593":1,"1600":1,"1615":1,"1826":1,"2203":1,"2299":1,"2302":1,"2505":3,"2506":1,"2507":1,"2510":1,"2516":1,"2519":1,"2528":1,"2548":1,"2644":1,"2645":1,"2914":1}}],["toggled",{"2":{"563":1,"719":1,"746":1,"1416":1,"2645":1,"2678":1,"2721":1}}],["toggleterminal",{"2":{"347":1,"2671":1}}],["togglepin",{"2":{"243":1}}],["toggle",{"0":{"327":1,"1554":1,"1566":1,"1851":1,"1852":1,"2077":1,"2078":1,"2312":1},"2":{"38":1,"49":2,"93":1,"112":2,"114":1,"145":1,"160":1,"210":1,"222":1,"231":3,"243":1,"562":6,"719":1,"758":1,"1363":1,"1406":1,"1416":4,"1479":1,"1484":1,"1487":1,"1489":3,"1515":1,"1523":1,"1524":1,"1527":1,"1530":1,"1537":3,"1554":1,"1566":1,"1588":1,"1593":1,"1600":2,"1615":1,"1619":6,"1674":8,"1684":3,"1773":1,"1774":2,"1822":1,"1828":2,"1842":2,"1851":1,"1852":1,"1919":2,"1986":1,"1987":1,"1992":2,"1993":2,"2001":4,"2002":4,"2006":4,"2062":2,"2077":1,"2078":1,"2174":2,"2184":2,"2193":4,"2209":2,"2216":3,"2217":7,"2297":9,"2299":1,"2302":1,"2312":1,"2386":1,"2391":1,"2411":1,"2504":2,"2505":3,"2506":1,"2507":1,"2508":3,"2510":1,"2516":1,"2518":2,"2519":13,"2520":2,"2525":2,"2526":2,"2528":1,"2532":4,"2548":13,"2643":2,"2644":1,"2645":2,"2678":1,"2679":1,"2745":2,"2847":1,"2867":1,"2914":1}}],["together",{"2":{"72":1,"378":1,"514":1,"573":1,"607":1,"666":1,"920":1,"1091":1,"1125":1,"1190":1,"1280":1,"1359":1,"1597":1,"1599":1,"1621":1,"1951":1,"2041":1,"2159":1,"2171":1,"2200":1,"2273":1,"2302":1,"2308":1,"2409":1,"2420":2,"2452":1,"2497":1,"2565":1,"2605":1,"2713":1,"2721":1,"2732":1,"2735":1,"2917":1,"2918":3}}],["to",{"0":{"3":1,"4":1,"5":1,"6":1,"7":1,"15":1,"16":1,"17":1,"21":1,"24":1,"25":1,"26":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"43":1,"46":1,"57":1,"153":1,"164":1,"166":1,"173":1,"263":1,"265":1,"275":1,"304":1,"518":1,"585":1,"607":1,"608":1,"624":1,"665":1,"666":1,"670":1,"671":1,"684":1,"1328":1,"1333":1,"1338":1,"1339":1,"1425":1,"1493":1,"1607":1,"1621":1,"1622":1,"1653":1,"1654":1,"1761":2,"1781":1,"1782":1,"1925":1,"1994":1,"1995":1,"1999":2,"2001":1,"2006":1,"2050":1,"2179":1,"2302":1,"2398":1,"2429":1,"2472":1,"2474":1,"2579":1,"2588":1,"2601":1,"2625":1,"2660":1,"2707":1,"2782":1,"2790":1,"2930":1},"1":{"31":1,"34":1,"36":1,"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"608":1,"625":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"1339":1,"1926":1,"1927":1,"1996":1,"1997":1,"1998":1,"1999":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"0":1,"1":2,"2":3,"3":1,"4":2,"5":3,"6":4,"7":1,"9":1,"10":9,"12":1,"14":4,"15":1,"16":2,"17":1,"19":1,"21":2,"22":2,"23":2,"24":3,"25":3,"26":1,"27":1,"28":5,"30":3,"31":5,"32":3,"33":3,"34":5,"36":2,"37":2,"38":1,"39":1,"43":2,"45":6,"46":3,"48":1,"49":21,"50":9,"51":2,"52":1,"56":2,"58":1,"62":1,"63":4,"64":4,"65":4,"69":2,"70":6,"72":1,"73":3,"74":8,"75":2,"76":5,"77":3,"82":5,"83":1,"87":3,"88":2,"89":1,"90":6,"92":3,"93":14,"94":5,"95":2,"98":2,"99":5,"100":2,"103":2,"104":2,"105":3,"107":5,"109":1,"110":3,"112":2,"113":6,"114":48,"116":1,"118":4,"119":8,"120":2,"123":4,"124":6,"125":9,"126":3,"127":2,"128":2,"130":3,"131":1,"132":3,"133":8,"134":38,"137":3,"138":11,"139":4,"141":2,"142":2,"143":4,"145":27,"148":1,"151":1,"153":1,"160":60,"163":2,"164":4,"166":1,"167":4,"169":2,"170":1,"172":5,"173":5,"174":4,"175":1,"176":32,"179":1,"182":6,"184":2,"185":9,"186":2,"187":1,"188":3,"189":4,"191":40,"194":8,"195":7,"198":3,"199":36,"201":5,"202":1,"203":2,"206":3,"208":3,"209":2,"210":28,"212":4,"213":4,"214":3,"215":1,"217":4,"220":3,"222":64,"224":2,"228":7,"230":3,"231":3,"232":4,"233":5,"234":4,"235":4,"236":33,"240":7,"241":1,"243":1,"244":3,"245":2,"246":1,"247":1,"249":38,"253":1,"255":4,"256":1,"257":1,"258":1,"259":2,"262":2,"263":4,"265":5,"266":87,"268":4,"270":1,"271":1,"272":5,"273":5,"275":3,"276":5,"277":24,"279":3,"281":1,"283":5,"284":3,"285":18,"288":4,"289":1,"293":3,"294":17,"297":2,"304":2,"305":3,"306":1,"307":7,"308":27,"312":6,"314":2,"315":1,"317":16,"320":1,"323":5,"327":2,"328":32,"331":1,"332":1,"333":9,"334":2,"335":4,"338":21,"340":1,"347":2,"348":1,"358":3,"359":1,"360":4,"364":1,"365":1,"366":2,"367":1,"368":1,"369":2,"370":2,"371":2,"373":6,"374":2,"375":1,"376":2,"378":1,"379":1,"380":2,"381":1,"382":1,"383":1,"386":2,"387":8,"390":2,"391":4,"392":1,"393":1,"396":4,"397":19,"399":2,"400":2,"401":3,"402":2,"405":8,"406":10,"407":1,"408":14,"409":1,"410":4,"411":1,"412":1,"413":2,"414":2,"416":3,"417":1,"419":1,"420":2,"424":4,"427":4,"428":5,"430":1,"431":6,"432":3,"433":3,"435":2,"441":2,"445":2,"446":1,"447":1,"448":1,"450":6,"451":4,"453":3,"454":2,"456":3,"457":3,"458":3,"459":3,"460":1,"461":5,"463":1,"464":1,"465":2,"466":1,"467":4,"471":1,"472":2,"473":2,"474":1,"475":1,"480":2,"481":1,"483":1,"484":1,"485":2,"486":4,"487":6,"488":2,"489":4,"490":3,"491":1,"492":9,"493":4,"494":1,"497":3,"498":5,"499":2,"502":2,"503":3,"504":1,"507":4,"508":2,"509":3,"510":7,"511":4,"512":5,"513":1,"514":6,"517":1,"519":1,"522":1,"523":3,"525":4,"526":2,"527":1,"528":2,"529":1,"530":2,"531":2,"534":1,"535":1,"536":6,"538":5,"539":3,"540":3,"541":2,"542":1,"545":1,"553":6,"555":1,"556":2,"557":2,"559":13,"561":1,"562":19,"563":11,"564":1,"566":8,"567":4,"568":3,"569":1,"570":5,"572":6,"573":4,"576":3,"577":1,"578":2,"579":2,"583":2,"584":2,"585":2,"586":5,"587":4,"589":2,"590":1,"591":4,"592":1,"594":7,"595":1,"598":3,"599":1,"600":1,"602":1,"603":2,"605":1,"607":4,"608":7,"609":2,"611":17,"612":1,"613":6,"614":5,"615":1,"616":2,"617":13,"618":3,"619":1,"620":2,"621":3,"622":2,"623":5,"624":4,"625":3,"626":2,"627":7,"628":3,"630":1,"631":4,"637":4,"638":2,"639":2,"641":2,"642":1,"643":1,"644":3,"645":7,"649":5,"650":3,"651":3,"652":2,"653":3,"654":5,"655":5,"656":1,"657":1,"658":1,"659":3,"662":1,"663":10,"664":7,"665":1,"666":7,"667":8,"668":5,"669":1,"670":4,"671":5,"672":2,"673":2,"674":1,"675":2,"678":7,"679":1,"680":4,"681":2,"682":2,"683":9,"684":4,"685":3,"686":3,"687":3,"688":2,"690":2,"692":1,"693":3,"695":2,"696":2,"698":4,"699":1,"700":2,"701":4,"705":3,"707":3,"708":1,"710":2,"711":1,"712":1,"713":1,"714":4,"715":4,"716":1,"717":7,"718":6,"719":2,"721":1,"722":2,"723":6,"724":3,"725":1,"726":4,"729":1,"731":2,"733":3,"735":3,"736":1,"737":1,"739":2,"741":7,"742":1,"743":4,"745":3,"746":5,"747":5,"749":1,"750":7,"751":12,"752":5,"753":3,"754":2,"755":1,"756":3,"757":2,"760":5,"761":1,"762":2,"763":2,"764":2,"765":10,"769":3,"770":1,"771":5,"773":1,"774":5,"777":5,"780":9,"782":1,"783":7,"785":1,"786":7,"789":6,"792":6,"794":2,"795":1,"797":1,"798":2,"799":3,"800":2,"801":1,"802":4,"805":1,"809":1,"811":3,"813":3,"815":1,"817":1,"822":1,"824":1,"826":1,"827":2,"828":3,"830":1,"831":4,"837":1,"839":3,"841":3,"843":1,"845":1,"850":1,"851":1,"852":1,"853":2,"854":3,"855":2,"856":1,"857":3,"858":3,"859":1,"860":5,"863":1,"867":1,"869":3,"871":3,"873":1,"875":1,"880":1,"882":1,"884":1,"885":2,"886":3,"887":2,"888":2,"889":1,"890":5,"893":1,"897":1,"899":1,"901":3,"903":3,"905":1,"907":1,"912":1,"914":1,"916":1,"917":2,"918":3,"919":2,"920":1,"921":1,"922":3,"923":3,"924":1,"925":5,"928":1,"932":1,"934":1,"936":3,"938":3,"940":1,"942":1,"947":1,"949":1,"951":1,"952":2,"953":3,"954":2,"955":1,"956":3,"957":3,"958":1,"959":5,"962":1,"966":1,"968":1,"970":3,"972":3,"974":1,"976":1,"981":1,"983":1,"985":1,"986":2,"987":3,"988":2,"989":1,"990":3,"991":3,"992":1,"993":5,"996":1,"1000":1,"1002":1,"1004":3,"1006":3,"1008":1,"1010":1,"1015":1,"1017":1,"1019":1,"1020":2,"1021":3,"1022":2,"1023":1,"1024":3,"1025":3,"1026":1,"1027":5,"1030":1,"1034":1,"1036":1,"1038":3,"1040":3,"1042":1,"1044":1,"1049":1,"1051":1,"1053":1,"1054":2,"1055":3,"1056":2,"1057":1,"1058":3,"1059":3,"1060":1,"1061":5,"1064":1,"1068":1,"1070":1,"1072":3,"1074":3,"1076":1,"1078":1,"1083":1,"1085":1,"1087":1,"1088":2,"1089":3,"1090":2,"1091":1,"1092":3,"1093":3,"1094":1,"1095":5,"1098":1,"1102":1,"1104":1,"1106":3,"1108":3,"1110":1,"1112":1,"1117":1,"1119":1,"1121":1,"1122":2,"1123":3,"1124":2,"1125":1,"1126":3,"1127":3,"1128":1,"1129":5,"1132":1,"1136":1,"1138":1,"1140":3,"1142":3,"1144":1,"1146":1,"1151":1,"1153":1,"1155":1,"1156":2,"1157":3,"1158":2,"1159":1,"1160":3,"1161":3,"1162":1,"1163":5,"1166":1,"1170":1,"1172":1,"1174":3,"1176":3,"1178":1,"1180":1,"1185":1,"1187":1,"1189":1,"1191":2,"1192":3,"1193":2,"1194":6,"1195":5,"1196":3,"1197":9,"1198":6,"1200":5,"1201":6,"1202":1,"1204":1,"1205":2,"1206":3,"1210":2,"1211":1,"1212":2,"1213":3,"1214":2,"1215":1,"1216":5,"1219":1,"1223":1,"1225":1,"1227":3,"1229":3,"1231":1,"1233":1,"1238":1,"1240":1,"1242":1,"1243":2,"1244":5,"1245":12,"1249":6,"1251":1,"1252":1,"1256":1,"1257":4,"1260":4,"1263":1,"1264":2,"1265":1,"1266":9,"1269":1,"1271":1,"1273":1,"1275":4,"1277":4,"1278":1,"1279":1,"1280":1,"1281":2,"1282":2,"1283":1,"1284":3,"1285":7,"1287":1,"1288":1,"1289":3,"1290":1,"1291":2,"1292":1,"1293":1,"1294":5,"1295":2,"1296":6,"1297":3,"1298":2,"1299":1,"1300":6,"1304":3,"1306":3,"1307":1,"1308":6,"1309":4,"1310":4,"1312":2,"1313":1,"1314":1,"1315":2,"1316":1,"1317":5,"1319":4,"1320":1,"1321":1,"1322":1,"1323":1,"1324":1,"1325":1,"1326":4,"1327":1,"1328":3,"1329":2,"1333":1,"1334":2,"1335":1,"1336":1,"1337":3,"1339":5,"1340":3,"1342":2,"1343":1,"1344":2,"1345":5,"1346":4,"1347":1,"1348":1,"1350":3,"1351":1,"1353":4,"1354":1,"1355":1,"1356":2,"1359":1,"1361":1,"1362":8,"1363":4,"1364":1,"1365":2,"1366":2,"1367":1,"1369":2,"1370":1,"1373":2,"1374":1,"1375":13,"1377":4,"1378":7,"1379":3,"1385":7,"1386":1,"1387":5,"1388":14,"1389":4,"1391":1,"1392":4,"1393":4,"1394":2,"1395":2,"1396":5,"1397":1,"1398":1,"1400":3,"1402":3,"1403":2,"1404":5,"1405":1,"1406":8,"1407":27,"1408":2,"1409":8,"1410":4,"1412":1,"1413":1,"1414":3,"1415":2,"1416":15,"1417":10,"1418":3,"1419":3,"1420":1,"1421":3,"1422":9,"1424":1,"1425":4,"1427":7,"1428":2,"1429":1,"1430":2,"1432":3,"1433":4,"1434":6,"1435":1,"1436":4,"1437":2,"1440":12,"1441":5,"1442":2,"1443":1,"1444":2,"1445":3,"1446":1,"1447":1,"1448":2,"1449":2,"1451":3,"1456":1,"1457":3,"1458":5,"1459":2,"1460":1,"1461":3,"1462":1,"1464":5,"1465":9,"1466":18,"1467":4,"1468":2,"1469":2,"1471":2,"1472":6,"1473":1,"1474":7,"1475":2,"1476":5,"1477":6,"1478":3,"1479":7,"1480":7,"1481":3,"1482":1,"1483":2,"1484":10,"1485":2,"1486":10,"1487":7,"1489":1,"1491":1,"1492":2,"1493":3,"1494":1,"1495":1,"1496":1,"1497":9,"1504":3,"1511":3,"1512":7,"1514":2,"1516":11,"1518":4,"1519":6,"1520":4,"1521":2,"1522":7,"1523":3,"1526":4,"1527":2,"1528":4,"1529":6,"1530":1,"1531":4,"1532":17,"1533":9,"1534":3,"1535":1,"1537":1,"1538":4,"1539":4,"1540":7,"1543":4,"1545":5,"1548":2,"1550":8,"1551":3,"1552":6,"1561":2,"1563":1,"1572":2,"1573":1,"1583":9,"1584":4,"1585":6,"1586":4,"1587":6,"1588":5,"1589":2,"1592":2,"1593":1,"1594":3,"1595":2,"1596":5,"1597":1,"1598":1,"1599":3,"1600":1,"1602":3,"1603":5,"1604":2,"1606":12,"1607":1,"1608":1,"1609":1,"1611":1,"1612":2,"1613":2,"1614":2,"1615":2,"1616":7,"1617":4,"1618":4,"1619":9,"1620":2,"1621":6,"1622":4,"1623":3,"1624":7,"1625":1,"1627":4,"1628":2,"1633":2,"1634":1,"1635":2,"1636":4,"1639":4,"1640":1,"1648":2,"1649":4,"1650":2,"1653":3,"1654":1,"1655":8,"1656":5,"1657":3,"1658":3,"1659":2,"1660":2,"1661":4,"1662":3,"1663":2,"1665":1,"1666":1,"1669":3,"1670":1,"1672":3,"1674":4,"1675":13,"1676":2,"1678":1,"1679":4,"1681":2,"1682":1,"1684":4,"1691":1,"1692":1,"1693":6,"1695":1,"1696":2,"1699":2,"1701":1,"1703":2,"1705":1,"1706":5,"1707":3,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1714":2,"1716":2,"1719":1,"1720":2,"1722":1,"1724":3,"1725":1,"1726":2,"1727":1,"1729":3,"1730":1,"1731":3,"1732":1,"1733":1,"1734":1,"1735":2,"1736":5,"1741":2,"1743":1,"1744":1,"1746":2,"1748":2,"1750":1,"1753":2,"1755":1,"1756":2,"1759":1,"1760":8,"1762":4,"1763":2,"1764":1,"1766":1,"1767":1,"1768":1,"1770":3,"1771":3,"1773":4,"1775":23,"1776":2,"1777":2,"1778":3,"1779":4,"1780":3,"1781":4,"1782":11,"1783":3,"1784":2,"1787":2,"1788":5,"1789":11,"1790":5,"1791":1,"1796":1,"1797":2,"1798":2,"1802":1,"1803":1,"1808":1,"1811":2,"1814":3,"1817":4,"1820":5,"1822":4,"1823":1,"1824":4,"1825":1,"1826":1,"1827":2,"1828":2,"1829":3,"1830":2,"1831":1,"1833":2,"1835":2,"1837":3,"1838":3,"1839":3,"1840":14,"1841":2,"1843":6,"1844":8,"1845":2,"1846":8,"1849":3,"1852":1,"1854":1,"1856":1,"1860":2,"1862":1,"1864":2,"1865":1,"1866":2,"1867":1,"1868":2,"1869":1,"1870":2,"1874":1,"1876":1,"1878":1,"1880":1,"1882":1,"1884":2,"1885":1,"1886":2,"1888":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":2,"1895":1,"1896":2,"1902":1,"1904":1,"1905":1,"1906":1,"1909":1,"1911":1,"1913":3,"1915":2,"1916":2,"1917":5,"1919":49,"1920":2,"1924":1,"1925":2,"1926":2,"1927":5,"1928":3,"1929":7,"1930":4,"1931":9,"1932":7,"1933":11,"1934":1,"1937":2,"1938":1,"1939":1,"1940":2,"1941":4,"1942":5,"1946":3,"1947":1,"1948":2,"1949":5,"1950":4,"1951":10,"1953":1,"1954":11,"1955":9,"1956":31,"1958":4,"1959":2,"1960":6,"1961":4,"1962":11,"1963":2,"1964":3,"1965":5,"1967":2,"1968":9,"1969":1,"1970":3,"1971":2,"1972":5,"1973":5,"1974":3,"1975":7,"1976":18,"1977":3,"1978":9,"1979":8,"1980":1,"1981":7,"1982":3,"1983":15,"1985":2,"1986":5,"1987":8,"1988":1,"1990":3,"1991":4,"1992":4,"1993":2,"1994":1,"1995":1,"1996":3,"1997":2,"1999":1,"2001":4,"2002":3,"2004":3,"2005":5,"2006":2,"2008":1,"2009":6,"2010":1,"2015":2,"2017":2,"2019":2,"2021":2,"2023":2,"2025":1,"2030":5,"2031":1,"2036":4,"2039":4,"2040":1,"2041":9,"2042":1,"2043":2,"2044":1,"2045":2,"2046":2,"2047":3,"2048":1,"2049":1,"2050":11,"2051":4,"2052":1,"2055":1,"2057":2,"2058":3,"2059":3,"2060":14,"2061":2,"2063":21,"2064":7,"2065":1,"2066":8,"2067":5,"2068":2,"2069":13,"2072":3,"2073":1,"2074":7,"2075":2,"2078":1,"2080":1,"2082":1,"2086":4,"2088":3,"2090":2,"2091":1,"2092":2,"2093":1,"2094":2,"2095":1,"2096":2,"2100":1,"2102":1,"2104":1,"2106":1,"2108":1,"2110":1,"2112":1,"2114":1,"2116":1,"2118":1,"2120":1,"2122":2,"2123":1,"2124":2,"2126":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":2,"2133":1,"2134":2,"2138":6,"2139":1,"2140":6,"2146":1,"2148":1,"2149":1,"2150":1,"2153":1,"2155":1,"2156":2,"2159":4,"2160":5,"2161":3,"2162":2,"2163":4,"2165":2,"2168":4,"2169":5,"2170":1,"2171":6,"2172":9,"2173":1,"2174":4,"2175":9,"2177":2,"2178":12,"2179":1,"2180":6,"2181":3,"2182":11,"2184":6,"2185":2,"2186":2,"2187":3,"2188":1,"2191":20,"2192":7,"2193":3,"2194":9,"2195":3,"2198":5,"2199":2,"2200":3,"2201":6,"2203":3,"2204":3,"2205":1,"2206":3,"2207":1,"2208":1,"2209":1,"2210":4,"2212":2,"2213":1,"2214":2,"2215":1,"2216":3,"2217":4,"2218":2,"2219":1,"2220":2,"2221":2,"2222":3,"2224":1,"2225":1,"2228":1,"2230":2,"2232":1,"2234":2,"2236":1,"2238":2,"2240":2,"2242":2,"2244":2,"2246":1,"2247":1,"2251":1,"2252":2,"2253":11,"2254":1,"2256":2,"2257":2,"2258":3,"2259":1,"2260":3,"2261":3,"2262":2,"2263":2,"2264":6,"2265":14,"2266":9,"2267":6,"2268":11,"2269":19,"2270":20,"2271":10,"2273":6,"2274":3,"2277":4,"2278":2,"2279":5,"2280":2,"2281":9,"2282":2,"2283":26,"2285":2,"2286":14,"2287":10,"2288":5,"2289":4,"2290":8,"2291":10,"2293":13,"2294":4,"2295":1,"2296":2,"2297":1,"2298":3,"2299":1,"2302":12,"2303":10,"2305":2,"2308":3,"2309":2,"2310":25,"2311":4,"2312":21,"2313":6,"2315":4,"2316":1,"2318":1,"2319":2,"2320":7,"2321":7,"2322":10,"2323":9,"2324":17,"2325":7,"2330":1,"2331":1,"2332":1,"2341":1,"2343":1,"2345":1,"2357":1,"2358":1,"2362":1,"2367":3,"2368":4,"2369":1,"2370":11,"2371":2,"2372":7,"2373":1,"2374":5,"2375":5,"2376":4,"2377":7,"2379":7,"2380":2,"2381":4,"2382":3,"2383":3,"2384":11,"2386":5,"2387":2,"2388":5,"2389":3,"2390":2,"2391":5,"2393":8,"2395":8,"2397":8,"2398":14,"2399":3,"2401":9,"2403":3,"2404":3,"2405":1,"2406":1,"2408":2,"2409":4,"2410":21,"2411":34,"2412":1,"2415":2,"2416":10,"2417":2,"2418":5,"2420":9,"2421":16,"2422":12,"2423":7,"2424":12,"2425":5,"2426":1,"2427":8,"2428":2,"2429":1,"2430":2,"2432":2,"2434":2,"2437":4,"2438":2,"2439":1,"2440":5,"2443":3,"2445":2,"2446":3,"2447":2,"2448":5,"2449":3,"2451":2,"2452":3,"2453":4,"2454":2,"2455":3,"2457":5,"2458":1,"2459":18,"2462":1,"2463":2,"2464":1,"2465":5,"2466":1,"2468":1,"2469":4,"2470":2,"2471":3,"2472":1,"2473":5,"2474":3,"2475":7,"2476":9,"2477":2,"2478":2,"2479":1,"2480":2,"2481":2,"2482":2,"2483":1,"2487":1,"2489":1,"2491":2,"2492":2,"2494":2,"2495":8,"2496":5,"2497":3,"2498":2,"2499":3,"2500":1,"2501":12,"2502":3,"2505":1,"2508":1,"2509":11,"2516":1,"2520":49,"2521":3,"2528":1,"2533":7,"2544":1,"2545":1,"2546":3,"2548":3,"2549":1,"2550":2,"2551":5,"2552":5,"2553":2,"2554":4,"2555":1,"2556":4,"2557":3,"2558":1,"2559":6,"2560":15,"2561":10,"2562":9,"2563":3,"2565":2,"2566":11,"2568":3,"2569":7,"2570":3,"2572":7,"2573":4,"2575":1,"2576":5,"2577":3,"2578":3,"2579":8,"2580":7,"2581":4,"2582":3,"2583":8,"2584":5,"2585":3,"2586":2,"2587":6,"2588":8,"2589":2,"2590":3,"2591":4,"2592":5,"2593":1,"2594":2,"2595":1,"2596":3,"2598":1,"2599":4,"2600":1,"2601":1,"2602":5,"2603":4,"2604":1,"2605":6,"2606":3,"2607":4,"2608":4,"2609":9,"2610":3,"2611":3,"2612":5,"2613":4,"2614":2,"2615":1,"2617":1,"2620":2,"2621":12,"2622":6,"2623":2,"2625":8,"2626":2,"2627":16,"2628":4,"2629":5,"2630":13,"2631":4,"2632":14,"2633":22,"2634":4,"2635":1,"2636":1,"2638":2,"2639":1,"2643":1,"2644":11,"2645":6,"2646":3,"2648":1,"2649":4,"2650":1,"2651":8,"2652":3,"2653":1,"2655":1,"2656":3,"2657":3,"2658":2,"2661":2,"2662":1,"2664":4,"2665":2,"2666":3,"2667":3,"2669":4,"2670":3,"2671":11,"2672":1,"2673":5,"2675":7,"2676":28,"2677":3,"2678":17,"2679":5,"2680":2,"2683":2,"2684":6,"2685":7,"2687":11,"2688":4,"2689":1,"2690":1,"2691":3,"2694":5,"2695":3,"2696":2,"2697":1,"2698":1,"2700":5,"2701":1,"2702":3,"2703":3,"2705":4,"2706":1,"2707":8,"2708":2,"2709":1,"2710":3,"2711":2,"2713":5,"2714":4,"2715":2,"2719":9,"2720":6,"2721":39,"2722":8,"2723":5,"2724":6,"2728":2,"2729":4,"2732":1,"2734":3,"2735":1,"2741":1,"2742":1,"2743":1,"2744":2,"2745":1,"2746":7,"2747":7,"2748":15,"2749":42,"2750":61,"2751":7,"2752":4,"2754":6,"2755":1,"2757":6,"2759":1,"2760":2,"2763":1,"2764":1,"2765":3,"2768":2,"2769":3,"2771":3,"2772":7,"2773":1,"2774":1,"2775":13,"2776":10,"2777":3,"2778":1,"2780":1,"2781":2,"2782":1,"2784":2,"2786":6,"2787":3,"2788":5,"2789":3,"2790":2,"2791":5,"2792":3,"2793":1,"2799":1,"2800":2,"2801":1,"2816":1,"2817":2,"2818":2,"2820":2,"2821":2,"2824":1,"2826":1,"2829":3,"2834":1,"2835":2,"2836":1,"2837":1,"2839":2,"2844":4,"2845":3,"2847":2,"2848":3,"2849":4,"2850":7,"2851":6,"2852":1,"2853":2,"2855":1,"2856":1,"2857":4,"2858":3,"2860":6,"2862":5,"2863":1,"2864":12,"2865":6,"2866":1,"2867":2,"2868":3,"2869":6,"2870":10,"2871":14,"2872":7,"2873":18,"2874":1,"2875":3,"2876":2,"2877":3,"2878":1,"2879":7,"2881":7,"2882":6,"2883":5,"2884":2,"2885":2,"2887":4,"2888":2,"2890":2,"2894":5,"2895":9,"2896":1,"2898":3,"2899":3,"2900":3,"2901":2,"2902":1,"2903":9,"2904":4,"2905":21,"2906":3,"2907":2,"2911":2,"2912":6,"2913":5,"2914":11,"2915":5,"2916":4,"2917":4,"2918":5,"2919":7,"2920":4,"2921":15,"2922":1,"2923":8,"2924":2,"2925":2,"2926":2,"2927":1,"2928":3,"2929":3,"2930":10,"2931":4,"2932":4,"2933":7,"2934":2,"2935":3,"2936":3,"2937":6,"2938":2,"2939":4,"2940":3,"2941":9,"2942":17}}],["th",{"2":{"1616":1}}],["th+tl",{"2":{"1282":1}}],["thus",{"2":{"397":1,"1202":1,"1285":1,"1365":1,"1375":1,"1456":1,"1495":1,"1587":1,"1782":1,"2262":1,"2312":1,"2381":1,"2469":1,"2474":1,"2563":1,"2627":1,"2696":1,"2703":1,"2734":1,"2879":1,"2905":1,"2912":1,"2921":1}}],["thumb",{"2":{"199":1,"294":1,"2919":2}}],["threads",{"2":{"2398":1}}],["threading",{"0":{"535":1}}],["threshold",{"0":{"246":1},"2":{"246":2,"249":1,"1996":1}}],["three",{"0":{"355":1,"1813":1},"1":{"1814":1,"1815":1},"2":{"98":1,"191":1,"196":1,"338":1,"355":1,"519":1,"553":1,"603":1,"631":1,"637":1,"1348":1,"1497":1,"1514":1,"1515":1,"1532":1,"1598":2,"1664":2,"1778":2,"1785":1,"1788":1,"1829":1,"1928":1,"1947":1,"1956":1,"2030":1,"2184":1,"2215":2,"2277":2,"2285":1,"2293":2,"2301":1,"2303":3,"2310":1,"2323":1,"2459":1,"2503":1,"2903":1,"2905":2,"2906":1}}],["throttling",{"2":{"644":1,"2268":1}}],["throttled",{"2":{"2270":1}}],["throttle",{"2":{"160":1,"568":1,"1968":1,"1978":2,"1979":1,"2268":1,"2747":1,"2750":6}}],["thrown",{"2":{"573":1}}],["throw",{"2":{"114":1,"1362":1}}],["throughout",{"2":{"1760":1}}],["through",{"0":{"1425":1},"2":{"110":1,"145":1,"166":1,"224":1,"232":1,"323":1,"371":1,"410":2,"431":1,"559":1,"586":1,"591":1,"631":1,"637":1,"663":1,"687":1,"718":1,"741":1,"1316":1,"1340":1,"1411":1,"1416":2,"1425":1,"1427":1,"1456":1,"1466":1,"1474":1,"1477":1,"1478":2,"1483":2,"1484":2,"1489":3,"1501":1,"1502":1,"1507":1,"1508":2,"1526":1,"1535":1,"1537":1,"1552":1,"1557":1,"1586":1,"1588":1,"1623":1,"1661":2,"1675":2,"1736":2,"1828":1,"1842":4,"1846":1,"2004":1,"2062":6,"2063":1,"2065":1,"2069":1,"2174":2,"2215":1,"2237":1,"2239":1,"2241":1,"2243":1,"2302":1,"2303":1,"2320":1,"2324":1,"2325":2,"2370":2,"2379":1,"2398":1,"2414":1,"2416":1,"2420":1,"2422":1,"2425":1,"2434":1,"2459":3,"2463":1,"2469":1,"2473":1,"2499":1,"2505":3,"2508":1,"2509":2,"2518":4,"2525":2,"2526":6,"2533":2,"2552":1,"2553":1,"2561":1,"2614":1,"2625":1,"2655":1,"2676":1,"2682":1,"2685":1,"2687":1,"2690":2,"2721":3,"2723":1,"2734":1,"2744":1,"2750":3,"2798":1,"2864":1,"2871":1,"2875":2,"2895":1,"2918":1,"2920":1,"2927":1}}],["thomas",{"2":{"2485":1,"2636":1}}],["thoughts",{"0":{"2888":1}}],["thought",{"2":{"539":1,"2423":1,"2572":1}}],["though",{"2":{"50":1,"390":1,"1368":1,"1377":1,"1458":1,"1471":1,"1492":1,"1522":1,"1535":1,"1775":1,"1779":1,"1780":1,"2417":1,"2420":1,"2422":1,"2633":1}}],["those",{"2":{"33":1,"49":1,"113":1,"175":1,"263":1,"265":1,"276":1,"359":1,"373":1,"487":1,"511":1,"536":1,"576":1,"598":2,"614":1,"700":1,"722":1,"750":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1197":1,"1212":1,"1281":1,"1346":1,"1348":1,"1355":1,"1464":1,"1466":1,"1467":1,"1484":1,"1497":1,"1516":1,"1782":1,"1788":1,"1831":1,"1849":1,"1955":1,"1979":1,"2036":1,"2072":1,"2287":1,"2293":1,"2322":1,"2398":1,"2424":1,"2468":1,"2555":1,"2573":1,"2583":1,"2598":1,"2671":1,"2683":1,"2687":1,"2711":1,"2726":1,"2744":1,"2749":1,"2782":1,"2791":1,"2878":1,"2881":1,"2882":1,"2895":1,"2905":1,"2921":1,"2924":2,"2930":2,"2937":2,"2939":1}}],["thickness",{"2":{"2415":1}}],["thicker",{"2":{"1968":1}}],["thiers",{"2":{"1522":1}}],["thier",{"2":{"1521":3,"1522":8}}],["thing",{"0":{"608":1},"2":{"201":1,"541":1,"566":1,"1335":1,"1375":1,"1385":1,"1406":1,"1440":3,"2310":1,"2473":1,"2711":1,"2879":1,"2924":1,"2936":1}}],["things",{"0":{"2300":1},"1":{"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1},"2":{"50":1,"113":1,"119":1,"143":1,"230":1,"334":1,"360":1,"408":1,"409":1,"446":1,"447":1,"448":1,"511":1,"512":1,"519":1,"558":1,"608":1,"617":2,"618":1,"624":1,"629":1,"631":1,"664":1,"687":1,"1337":1,"1362":1,"1441":1,"1444":1,"1484":1,"1485":1,"1497":1,"1586":1,"1913":1,"2031":1,"2269":2,"2273":1,"2293":2,"2310":1,"2319":1,"2377":1,"2384":1,"2398":1,"2410":1,"2421":2,"2425":1,"2427":2,"2449":1,"2459":1,"2472":1,"2496":1,"2556":1,"2557":1,"2561":1,"2572":2,"2605":1,"2625":2,"2667":1,"2670":1,"2678":1,"2724":1,"2732":1,"2882":1}}],["thinkpad",{"2":{"1365":1,"2030":1}}],["thinking",{"2":{"243":1,"331":1}}],["thinks",{"2":{"182":1}}],["think",{"2":{"119":1,"228":1,"510":1,"512":1,"538":1,"611":1,"617":1,"1316":1,"1493":2,"1756":1,"2453":1,"2459":1,"2719":1,"2877":1,"2927":1,"2942":1}}],["third",{"2":{"49":1,"288":1,"373":1,"607":1,"655":1,"714":1,"1487":1,"1620":1,"1780":1,"1814":1,"1817":1,"1820":1,"2296":2,"2302":1,"2310":1,"2313":1,"2324":1,"2562":1,"2721":1,"2896":1}}],["this",{"0":{"608":1,"1326":1,"1327":1},"2":{"0":1,"3":1,"5":1,"6":2,"10":1,"11":2,"14":2,"15":1,"16":1,"21":1,"23":1,"28":1,"30":1,"31":1,"32":1,"33":1,"34":1,"36":3,"45":2,"49":6,"50":2,"69":1,"70":2,"87":1,"88":1,"90":2,"99":3,"103":1,"104":1,"107":1,"111":1,"116":1,"119":1,"120":1,"123":1,"125":3,"126":2,"127":1,"131":1,"132":2,"133":1,"137":2,"139":1,"141":1,"154":2,"160":1,"163":1,"164":1,"172":2,"173":1,"182":2,"185":3,"187":1,"189":1,"190":1,"194":4,"198":1,"201":3,"202":1,"203":2,"206":2,"209":1,"212":2,"220":1,"222":1,"224":1,"228":2,"229":1,"230":2,"231":1,"233":1,"240":1,"243":1,"244":1,"251":1,"255":2,"256":1,"262":1,"263":5,"265":1,"268":1,"271":1,"273":4,"275":1,"276":2,"279":2,"302":1,"303":1,"306":1,"307":3,"312":5,"315":1,"320":1,"327":1,"331":1,"334":1,"335":1,"340":1,"342":1,"344":1,"346":6,"347":1,"348":1,"349":2,"356":1,"358":2,"359":1,"362":1,"363":1,"364":1,"365":1,"367":2,"368":1,"371":1,"372":2,"375":1,"378":3,"379":1,"380":1,"382":1,"383":1,"384":1,"387":4,"390":1,"391":2,"393":3,"396":1,"397":3,"398":1,"399":1,"400":1,"401":1,"405":3,"406":5,"407":1,"408":2,"411":1,"414":1,"421":1,"422":2,"423":2,"427":4,"428":3,"429":1,"430":1,"431":1,"432":1,"433":1,"434":1,"435":2,"437":1,"438":1,"439":1,"440":2,"441":1,"442":1,"443":2,"444":1,"445":1,"446":1,"447":1,"448":1,"450":2,"451":2,"452":2,"453":2,"454":1,"456":1,"457":1,"458":2,"459":4,"460":2,"461":1,"462":1,"463":2,"464":2,"465":2,"466":2,"467":3,"468":1,"469":1,"470":1,"472":1,"484":1,"486":1,"487":5,"490":1,"491":1,"492":1,"493":3,"497":1,"503":2,"504":1,"505":1,"507":2,"510":2,"514":1,"521":1,"522":2,"523":1,"524":1,"527":1,"535":1,"537":1,"538":1,"539":2,"540":1,"541":1,"542":2,"552":1,"553":1,"554":1,"555":2,"557":1,"558":1,"559":1,"562":3,"565":1,"567":2,"568":1,"569":1,"570":2,"572":2,"573":3,"574":1,"577":1,"578":2,"580":2,"581":2,"582":1,"585":1,"586":8,"589":1,"590":1,"591":6,"592":1,"593":1,"596":2,"598":4,"607":2,"611":1,"613":1,"614":1,"615":1,"617":3,"620":1,"621":2,"622":1,"623":3,"624":1,"627":2,"629":2,"631":2,"632":4,"633":1,"635":2,"637":5,"638":3,"639":1,"642":2,"643":2,"644":1,"645":1,"646":3,"649":5,"653":1,"654":2,"655":4,"656":1,"657":1,"658":1,"659":3,"662":1,"663":3,"665":1,"666":3,"667":4,"668":1,"670":3,"671":1,"672":1,"673":4,"676":2,"677":2,"678":1,"679":1,"680":1,"681":2,"683":2,"684":6,"685":5,"686":1,"687":2,"688":2,"692":4,"696":2,"698":2,"699":1,"703":1,"704":1,"714":1,"716":1,"718":3,"719":2,"722":1,"724":1,"726":2,"730":1,"732":1,"738":1,"739":2,"743":2,"746":1,"747":1,"749":2,"750":4,"751":4,"752":1,"753":1,"754":3,"757":1,"759":1,"763":1,"764":1,"765":2,"766":1,"767":1,"769":2,"773":1,"794":2,"798":1,"800":1,"802":2,"806":1,"810":1,"814":1,"818":1,"820":1,"827":1,"831":2,"835":1,"838":1,"842":1,"846":1,"848":1,"853":1,"855":1,"857":1,"858":1,"860":2,"864":1,"868":1,"872":1,"876":1,"878":1,"885":1,"887":1,"888":2,"890":2,"894":1,"900":1,"904":1,"908":1,"910":1,"917":1,"919":1,"920":1,"922":1,"923":1,"925":2,"929":1,"935":1,"939":1,"943":1,"945":1,"952":1,"954":1,"956":1,"957":1,"959":2,"963":1,"969":1,"973":1,"977":1,"979":1,"986":1,"988":1,"990":1,"991":1,"993":2,"997":1,"1003":1,"1007":1,"1011":1,"1013":1,"1020":1,"1022":1,"1024":1,"1025":1,"1027":2,"1031":1,"1037":1,"1041":1,"1045":1,"1047":1,"1054":1,"1056":1,"1058":1,"1059":1,"1061":2,"1065":1,"1071":1,"1075":1,"1079":1,"1081":1,"1088":1,"1090":1,"1091":1,"1092":1,"1093":1,"1095":2,"1099":1,"1105":1,"1109":1,"1113":1,"1115":1,"1122":1,"1124":1,"1125":1,"1126":1,"1127":1,"1129":2,"1133":1,"1139":1,"1143":1,"1147":1,"1149":1,"1156":1,"1158":1,"1160":1,"1161":1,"1163":2,"1167":1,"1173":1,"1177":1,"1181":1,"1183":1,"1189":1,"1190":2,"1191":2,"1194":2,"1196":1,"1197":5,"1200":1,"1201":1,"1202":2,"1205":2,"1211":1,"1212":1,"1214":1,"1216":2,"1220":1,"1226":1,"1230":1,"1234":1,"1236":1,"1244":1,"1245":1,"1247":1,"1249":1,"1262":1,"1263":1,"1268":1,"1269":1,"1273":1,"1278":1,"1280":2,"1287":2,"1289":3,"1290":1,"1291":2,"1293":1,"1294":2,"1295":1,"1296":1,"1300":1,"1302":1,"1303":1,"1309":1,"1310":1,"1311":1,"1312":2,"1313":1,"1316":2,"1317":5,"1318":1,"1326":1,"1327":1,"1328":1,"1329":3,"1333":1,"1339":2,"1341":1,"1344":1,"1345":5,"1346":1,"1347":1,"1349":1,"1351":5,"1353":3,"1354":1,"1356":2,"1358":1,"1362":1,"1363":1,"1365":1,"1367":1,"1374":1,"1375":1,"1377":3,"1378":4,"1379":3,"1385":3,"1386":2,"1389":1,"1395":1,"1401":1,"1404":2,"1406":5,"1407":16,"1409":2,"1410":1,"1412":1,"1413":3,"1415":1,"1416":7,"1417":4,"1419":2,"1421":1,"1422":1,"1423":2,"1424":1,"1425":2,"1428":1,"1429":1,"1432":1,"1435":1,"1436":3,"1438":1,"1440":2,"1441":5,"1442":3,"1443":1,"1444":1,"1446":2,"1447":1,"1448":2,"1449":3,"1452":1,"1453":1,"1454":1,"1456":3,"1457":3,"1458":4,"1459":2,"1460":2,"1461":5,"1462":1,"1464":3,"1465":6,"1466":11,"1467":1,"1473":1,"1474":1,"1475":1,"1478":1,"1479":6,"1482":1,"1484":6,"1485":4,"1486":5,"1487":7,"1492":3,"1493":1,"1496":1,"1497":7,"1504":2,"1512":3,"1514":1,"1518":1,"1520":1,"1521":3,"1522":3,"1523":2,"1526":1,"1527":1,"1528":1,"1529":3,"1531":3,"1532":6,"1533":1,"1534":1,"1535":1,"1539":2,"1540":3,"1542":1,"1543":1,"1544":1,"1545":1,"1548":1,"1550":1,"1551":1,"1552":2,"1571":1,"1572":1,"1583":4,"1585":3,"1587":2,"1588":3,"1589":1,"1591":2,"1595":1,"1596":2,"1599":2,"1600":1,"1602":1,"1603":3,"1604":1,"1606":2,"1608":1,"1610":1,"1614":3,"1616":2,"1617":2,"1618":1,"1621":1,"1622":1,"1625":1,"1627":3,"1629":1,"1630":1,"1633":1,"1635":1,"1636":1,"1649":2,"1650":2,"1655":2,"1656":4,"1657":1,"1658":1,"1659":3,"1660":1,"1661":2,"1662":2,"1664":3,"1666":1,"1669":1,"1670":2,"1675":2,"1677":1,"1679":2,"1681":1,"1682":1,"1683":1,"1691":1,"1696":2,"1698":1,"1700":1,"1701":1,"1702":1,"1711":1,"1715":1,"1724":1,"1726":1,"1728":1,"1730":1,"1732":1,"1733":1,"1734":1,"1759":1,"1760":2,"1762":1,"1764":2,"1766":1,"1768":2,"1770":2,"1773":3,"1775":16,"1776":1,"1777":2,"1778":1,"1779":1,"1780":7,"1782":2,"1787":2,"1788":4,"1789":3,"1790":4,"1791":1,"1823":1,"1827":1,"1828":2,"1832":3,"1833":1,"1834":1,"1835":1,"1838":1,"1840":6,"1841":2,"1849":2,"1859":1,"1861":1,"1907":2,"1910":2,"1920":1,"1929":3,"1930":2,"1931":1,"1932":7,"1933":2,"1934":1,"1936":1,"1937":2,"1939":1,"1940":2,"1941":2,"1942":1,"1947":1,"1948":1,"1949":2,"1950":1,"1951":2,"1954":1,"1955":4,"1958":1,"1960":1,"1961":1,"1962":3,"1963":2,"1967":2,"1970":3,"1971":2,"1972":1,"1973":2,"1974":1,"1975":1,"1976":4,"1978":4,"1979":4,"1983":14,"1985":2,"1986":2,"1987":2,"1992":1,"2001":1,"2004":1,"2007":2,"2009":2,"2033":1,"2037":1,"2041":2,"2047":2,"2050":1,"2058":1,"2060":6,"2061":2,"2064":3,"2067":1,"2069":2,"2072":2,"2074":4,"2075":1,"2085":1,"2087":1,"2151":2,"2154":2,"2156":1,"2160":1,"2162":1,"2163":1,"2165":2,"2166":1,"2167":1,"2168":1,"2171":2,"2173":1,"2174":2,"2176":3,"2182":2,"2184":1,"2194":12,"2198":1,"2199":1,"2200":1,"2206":1,"2212":1,"2213":1,"2218":1,"2220":1,"2225":2,"2227":1,"2231":1,"2233":1,"2246":1,"2247":1,"2252":1,"2253":1,"2254":1,"2256":1,"2258":2,"2263":1,"2264":4,"2265":2,"2266":5,"2267":3,"2268":13,"2269":19,"2270":4,"2271":17,"2276":1,"2277":1,"2278":1,"2279":2,"2280":1,"2281":2,"2282":1,"2285":3,"2287":3,"2290":1,"2291":1,"2293":10,"2296":1,"2301":1,"2302":8,"2303":5,"2306":2,"2309":1,"2310":6,"2311":1,"2312":8,"2313":3,"2315":1,"2318":2,"2322":1,"2323":3,"2324":8,"2337":1,"2338":1,"2339":1,"2368":1,"2370":2,"2371":2,"2372":5,"2374":1,"2375":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":2,"2381":1,"2382":1,"2383":2,"2384":3,"2386":1,"2387":1,"2388":2,"2389":2,"2390":2,"2391":1,"2393":3,"2395":3,"2397":3,"2398":5,"2399":3,"2401":2,"2403":2,"2404":1,"2406":1,"2407":4,"2409":1,"2410":3,"2411":21,"2415":2,"2416":2,"2418":1,"2420":4,"2421":5,"2422":1,"2424":2,"2427":1,"2428":2,"2430":3,"2434":2,"2437":1,"2443":3,"2444":1,"2446":4,"2447":2,"2448":2,"2449":5,"2450":3,"2453":3,"2457":1,"2459":14,"2461":1,"2465":1,"2466":1,"2467":1,"2468":3,"2469":1,"2470":1,"2472":1,"2473":1,"2475":3,"2483":1,"2492":2,"2493":1,"2494":2,"2495":2,"2496":3,"2497":2,"2498":2,"2499":1,"2501":2,"2502":2,"2503":1,"2544":1,"2546":3,"2549":1,"2551":1,"2553":1,"2554":1,"2555":5,"2556":1,"2557":4,"2558":1,"2559":1,"2561":3,"2562":3,"2564":1,"2565":2,"2566":7,"2570":1,"2572":2,"2573":3,"2574":1,"2575":1,"2576":1,"2577":2,"2578":3,"2579":1,"2580":2,"2582":1,"2583":1,"2584":1,"2587":1,"2588":2,"2590":1,"2591":4,"2596":1,"2603":1,"2605":5,"2607":2,"2609":9,"2611":1,"2614":1,"2615":1,"2621":5,"2622":2,"2625":3,"2626":2,"2627":4,"2628":1,"2630":4,"2632":5,"2633":3,"2634":1,"2643":3,"2644":3,"2645":1,"2646":2,"2651":2,"2652":1,"2656":1,"2657":1,"2660":2,"2661":1,"2662":1,"2664":1,"2665":1,"2666":2,"2669":6,"2670":1,"2671":3,"2673":4,"2675":1,"2676":6,"2677":2,"2678":8,"2679":5,"2680":4,"2683":3,"2684":1,"2685":2,"2687":3,"2689":1,"2690":2,"2694":1,"2695":2,"2700":1,"2702":1,"2703":2,"2704":1,"2707":2,"2708":1,"2712":1,"2713":1,"2714":1,"2718":2,"2719":5,"2720":2,"2721":5,"2722":2,"2723":2,"2724":1,"2725":3,"2726":2,"2727":1,"2734":4,"2743":1,"2744":2,"2746":1,"2747":3,"2748":8,"2749":1,"2750":7,"2757":3,"2758":1,"2760":1,"2762":1,"2766":1,"2767":1,"2768":1,"2769":3,"2770":5,"2771":1,"2772":1,"2773":1,"2774":1,"2775":5,"2776":3,"2784":4,"2786":5,"2787":1,"2788":5,"2792":2,"2828":1,"2844":1,"2845":2,"2853":1,"2862":3,"2875":1,"2877":3,"2879":2,"2882":8,"2883":3,"2884":3,"2886":5,"2888":1,"2892":1,"2894":1,"2895":1,"2898":1,"2899":1,"2903":6,"2904":2,"2905":4,"2906":7,"2907":1,"2911":1,"2912":7,"2913":5,"2914":2,"2915":3,"2916":1,"2917":4,"2918":5,"2919":3,"2921":4,"2923":3,"2926":1,"2927":2,"2928":3,"2929":3,"2930":5,"2931":2,"2932":3,"2933":4,"2936":1,"2937":1,"2942":4}}],["thank",{"2":{"2495":1}}],["thanks",{"2":{"235":1,"340":1,"607":1,"2398":1,"2440":1,"2471":1,"2723":1}}],["thankyou",{"2":{"116":1}}],["than",{"0":{"1352":1},"2":{"24":1,"46":1,"49":1,"50":1,"63":1,"112":1,"124":1,"137":1,"138":1,"166":1,"176":1,"194":1,"201":1,"212":2,"230":1,"234":1,"251":1,"323":1,"334":1,"424":1,"431":4,"472":1,"475":1,"510":3,"512":1,"525":1,"533":1,"539":1,"559":1,"562":1,"568":2,"613":1,"617":1,"624":2,"627":1,"628":1,"653":1,"685":1,"751":1,"1189":2,"1196":1,"1244":1,"1293":1,"1294":1,"1327":1,"1362":1,"1365":1,"1413":1,"1417":1,"1419":1,"1420":1,"1421":3,"1436":1,"1440":1,"1449":1,"1457":1,"1464":1,"1484":1,"1485":1,"1492":1,"1493":1,"1497":2,"1512":2,"1523":1,"1526":1,"1527":2,"1532":1,"1587":2,"1603":1,"1664":1,"1675":1,"1760":1,"1775":1,"1788":1,"1790":1,"1917":1,"1955":2,"1956":1,"1959":1,"1979":1,"1981":1,"2002":1,"2004":1,"2173":1,"2176":1,"2200":1,"2253":1,"2268":1,"2286":1,"2288":1,"2302":4,"2303":1,"2311":1,"2387":2,"2389":1,"2410":2,"2411":1,"2420":1,"2434":1,"2447":1,"2459":1,"2483":1,"2492":1,"2552":1,"2562":1,"2566":2,"2582":1,"2584":1,"2615":1,"2627":1,"2643":1,"2644":1,"2659":1,"2690":1,"2720":1,"2721":2,"2722":1,"2744":1,"2750":1,"2786":1,"2789":1,"2793":1,"2827":1,"2904":1,"2906":4,"2911":2,"2912":1,"2914":2,"2917":1,"2941":1,"2942":1}}],["that",{"0":{"560":1,"561":1,"562":1,"1335":1,"1338":1,"1462":1,"1993":1},"1":{"1339":1},"2":{"0":3,"5":1,"6":2,"9":3,"13":2,"14":1,"19":3,"23":1,"24":1,"28":1,"31":2,"34":1,"36":2,"38":1,"39":3,"45":1,"46":1,"49":2,"50":3,"52":3,"70":1,"73":2,"75":1,"87":1,"90":1,"94":2,"95":1,"98":1,"99":1,"103":1,"110":1,"112":1,"114":3,"123":2,"124":2,"125":1,"126":1,"131":1,"132":2,"137":2,"138":1,"139":1,"141":1,"160":4,"163":1,"166":1,"175":1,"176":5,"179":2,"182":4,"185":1,"191":2,"194":1,"195":1,"199":3,"206":1,"214":3,"220":1,"224":1,"230":1,"233":1,"240":2,"243":1,"255":1,"256":1,"262":1,"263":1,"268":1,"275":1,"276":1,"297":1,"303":1,"306":1,"312":2,"314":1,"315":1,"317":2,"323":1,"327":1,"331":1,"334":1,"356":1,"358":1,"360":1,"362":1,"368":1,"371":1,"373":3,"374":2,"380":2,"387":1,"390":1,"393":5,"397":3,"400":1,"401":2,"402":1,"403":1,"405":3,"406":2,"408":5,"409":1,"410":3,"411":1,"417":1,"423":1,"427":2,"430":1,"441":1,"442":1,"456":1,"457":1,"459":1,"471":1,"472":2,"485":1,"488":1,"491":1,"492":4,"493":1,"494":1,"503":1,"509":1,"510":5,"511":1,"514":1,"517":1,"522":1,"523":1,"524":2,"528":1,"530":1,"531":2,"536":2,"537":1,"538":3,"539":2,"540":1,"545":1,"552":1,"553":1,"554":2,"555":1,"556":1,"557":1,"558":1,"559":1,"563":2,"566":3,"569":2,"576":2,"577":1,"580":1,"581":1,"582":1,"586":5,"587":2,"590":2,"591":2,"594":1,"595":3,"597":1,"608":1,"611":3,"613":6,"616":2,"617":4,"619":2,"621":1,"624":2,"625":1,"627":2,"628":2,"631":2,"632":1,"635":1,"641":2,"643":1,"644":2,"649":2,"654":2,"655":2,"656":1,"658":1,"659":2,"663":4,"666":1,"668":1,"671":1,"673":1,"678":1,"680":1,"682":1,"683":1,"684":2,"685":1,"686":2,"692":2,"693":3,"696":2,"698":2,"716":3,"718":1,"719":1,"720":1,"746":1,"747":1,"750":1,"751":1,"753":2,"756":1,"760":3,"794":1,"1189":2,"1193":1,"1194":1,"1195":1,"1197":1,"1200":3,"1201":3,"1203":1,"1206":1,"1210":1,"1280":1,"1287":1,"1288":1,"1309":1,"1310":1,"1312":1,"1313":1,"1315":1,"1324":1,"1333":3,"1335":1,"1339":2,"1340":1,"1345":1,"1346":1,"1347":1,"1353":2,"1362":3,"1368":1,"1369":1,"1374":1,"1375":3,"1377":1,"1378":4,"1379":2,"1386":1,"1395":3,"1403":1,"1404":1,"1406":4,"1407":11,"1408":1,"1409":3,"1410":2,"1413":6,"1415":1,"1416":4,"1417":1,"1418":1,"1421":5,"1422":3,"1423":1,"1427":1,"1432":2,"1434":1,"1440":5,"1441":1,"1442":2,"1443":1,"1445":1,"1446":1,"1449":1,"1458":6,"1460":1,"1461":2,"1464":8,"1465":4,"1466":14,"1471":1,"1475":1,"1478":2,"1479":4,"1480":1,"1481":1,"1485":1,"1486":4,"1491":2,"1493":1,"1494":1,"1495":2,"1496":1,"1497":4,"1504":1,"1508":1,"1510":1,"1511":1,"1512":1,"1516":1,"1517":1,"1518":1,"1520":1,"1521":2,"1522":2,"1526":1,"1527":3,"1532":2,"1533":1,"1536":1,"1538":1,"1539":1,"1545":1,"1548":1,"1552":1,"1583":5,"1584":1,"1585":3,"1586":2,"1587":2,"1591":1,"1594":3,"1599":1,"1606":2,"1609":1,"1615":1,"1617":1,"1622":1,"1624":1,"1627":1,"1639":1,"1655":3,"1656":2,"1658":3,"1660":2,"1665":2,"1675":4,"1678":1,"1680":1,"1681":1,"1732":1,"1734":1,"1763":1,"1765":1,"1766":1,"1767":1,"1770":1,"1775":5,"1778":1,"1779":1,"1780":2,"1781":3,"1782":4,"1788":2,"1789":1,"1822":1,"1823":1,"1824":2,"1827":1,"1828":2,"1829":1,"1830":5,"1832":1,"1840":3,"1843":2,"1913":1,"1917":1,"1924":1,"1928":2,"1931":1,"1937":1,"1950":1,"1954":2,"1955":1,"1956":3,"1959":2,"1961":2,"1962":2,"1968":1,"1970":2,"1976":3,"1977":1,"1978":4,"1979":2,"1980":1,"1981":2,"1983":1,"1985":3,"1987":1,"1991":1,"1992":4,"2000":1,"2001":2,"2002":1,"2004":2,"2005":1,"2006":4,"2007":3,"2009":1,"2041":1,"2047":1,"2050":1,"2060":3,"2063":4,"2064":2,"2065":1,"2156":1,"2160":1,"2161":3,"2163":1,"2165":2,"2171":1,"2172":2,"2180":1,"2182":1,"2191":1,"2202":1,"2203":1,"2204":1,"2209":1,"2211":1,"2218":1,"2221":1,"2251":1,"2253":1,"2254":1,"2256":1,"2257":1,"2258":3,"2259":1,"2260":1,"2263":1,"2265":5,"2266":1,"2268":3,"2269":1,"2270":1,"2271":8,"2272":1,"2273":2,"2274":1,"2280":1,"2282":1,"2283":3,"2284":1,"2285":1,"2287":1,"2288":3,"2289":1,"2290":1,"2291":3,"2293":1,"2294":1,"2296":1,"2301":2,"2302":6,"2303":6,"2310":12,"2311":1,"2312":5,"2313":1,"2322":1,"2324":1,"2368":1,"2370":1,"2372":1,"2374":2,"2375":1,"2376":3,"2377":1,"2381":1,"2384":1,"2386":2,"2391":2,"2398":3,"2399":2,"2401":2,"2403":1,"2404":1,"2406":1,"2407":3,"2408":1,"2410":9,"2411":3,"2412":1,"2415":1,"2416":1,"2417":1,"2418":1,"2420":2,"2421":6,"2422":1,"2423":3,"2424":3,"2427":4,"2428":1,"2430":2,"2432":1,"2440":2,"2445":1,"2446":6,"2447":2,"2449":1,"2452":1,"2453":2,"2454":4,"2455":1,"2456":1,"2457":2,"2459":13,"2470":1,"2473":3,"2475":1,"2477":1,"2478":1,"2480":1,"2481":1,"2482":1,"2489":1,"2491":1,"2494":1,"2495":1,"2496":1,"2501":2,"2502":2,"2511":1,"2545":1,"2552":1,"2553":1,"2555":1,"2556":1,"2557":2,"2559":1,"2560":1,"2562":1,"2563":2,"2565":1,"2566":1,"2571":1,"2572":4,"2573":1,"2575":1,"2576":1,"2577":2,"2578":6,"2579":2,"2580":1,"2582":3,"2583":1,"2592":4,"2593":1,"2594":1,"2599":1,"2600":2,"2602":1,"2604":1,"2605":1,"2609":3,"2610":1,"2612":4,"2615":1,"2619":1,"2620":1,"2621":3,"2622":3,"2623":1,"2626":2,"2627":9,"2628":2,"2629":1,"2630":2,"2632":4,"2633":9,"2643":2,"2645":1,"2646":2,"2650":1,"2651":1,"2652":1,"2658":2,"2661":1,"2666":1,"2667":1,"2669":2,"2670":1,"2671":1,"2672":2,"2673":3,"2674":1,"2675":1,"2676":2,"2677":1,"2678":2,"2679":1,"2680":2,"2683":1,"2685":1,"2687":4,"2688":1,"2689":1,"2694":1,"2695":2,"2701":1,"2702":1,"2705":1,"2706":1,"2709":2,"2710":2,"2714":3,"2715":1,"2719":1,"2720":1,"2721":6,"2722":5,"2724":6,"2725":1,"2726":1,"2731":1,"2747":6,"2748":1,"2749":2,"2750":5,"2751":1,"2758":1,"2760":1,"2765":1,"2766":1,"2770":1,"2775":4,"2776":3,"2777":1,"2778":1,"2782":3,"2783":1,"2784":1,"2786":2,"2788":3,"2789":2,"2792":1,"2796":1,"2798":1,"2800":2,"2801":1,"2803":1,"2807":1,"2808":1,"2810":2,"2813":1,"2814":1,"2815":1,"2818":1,"2820":1,"2821":1,"2822":1,"2823":1,"2824":2,"2825":1,"2826":2,"2827":1,"2833":2,"2836":1,"2837":1,"2838":1,"2840":1,"2845":1,"2862":1,"2864":1,"2871":1,"2879":3,"2882":4,"2883":4,"2884":1,"2885":2,"2887":1,"2894":2,"2895":2,"2899":1,"2900":1,"2902":1,"2903":1,"2905":12,"2906":3,"2907":1,"2911":1,"2912":2,"2913":1,"2914":2,"2915":1,"2918":3,"2919":1,"2921":4,"2924":3,"2926":1,"2927":3,"2929":4,"2930":4,"2932":2,"2933":1,"2935":1,"2936":3,"2937":9,"2938":1,"2940":5,"2942":3}}],["theory",{"2":{"2659":1}}],["theories",{"2":{"2289":1}}],["thekey",{"2":{"218":4,"222":1}}],["thermal",{"2":{"191":1}}],["thereafter",{"2":{"1930":1}}],["thereby",{"2":{"69":1}}],["therefore",{"2":{"28":1,"437":1,"692":2,"760":2,"763":1,"765":1,"1190":1,"1193":1,"1196":1,"1202":1,"1675":1,"1939":1,"1955":1,"2037":1,"2383":1,"2936":1}}],["there",{"0":{"603":1,"1340":1,"1493":1,"2925":1},"2":{"28":1,"99":1,"123":1,"131":1,"137":1,"139":1,"163":1,"166":1,"175":1,"189":1,"198":1,"201":1,"212":1,"224":1,"233":1,"238":1,"268":1,"276":1,"279":1,"288":1,"342":1,"347":1,"361":1,"371":1,"393":1,"397":1,"405":1,"409":1,"416":1,"471":1,"485":1,"489":1,"492":1,"506":1,"511":1,"542":1,"553":1,"562":1,"566":1,"579":1,"582":1,"591":1,"594":1,"595":1,"605":1,"617":3,"631":1,"649":1,"655":1,"658":1,"666":1,"682":1,"687":1,"711":1,"712":1,"716":1,"746":1,"747":3,"749":1,"752":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1203":1,"1216":1,"1279":1,"1293":1,"1294":1,"1308":1,"1333":3,"1334":3,"1343":1,"1347":1,"1348":1,"1362":2,"1375":2,"1392":1,"1406":2,"1409":2,"1422":2,"1438":1,"1442":1,"1445":1,"1456":1,"1475":1,"1478":1,"1479":1,"1481":1,"1492":2,"1496":1,"1497":2,"1504":2,"1511":1,"1512":1,"1516":2,"1518":1,"1523":1,"1532":1,"1587":1,"1606":1,"1609":1,"1614":1,"1615":1,"1617":1,"1621":1,"1635":1,"1656":2,"1658":1,"1665":1,"1670":1,"1675":1,"1679":1,"1781":1,"1827":1,"1829":1,"1849":1,"1913":1,"1917":1,"1931":2,"1946":1,"1954":1,"1956":1,"1958":1,"1959":1,"1962":1,"1977":1,"1980":1,"1995":1,"2000":1,"2007":1,"2009":1,"2030":1,"2037":1,"2072":1,"2170":1,"2172":1,"2176":1,"2191":1,"2203":1,"2204":1,"2219":1,"2254":1,"2263":1,"2265":1,"2268":1,"2269":1,"2271":1,"2273":1,"2277":1,"2283":1,"2285":1,"2288":1,"2293":1,"2302":1,"2303":1,"2309":1,"2310":1,"2318":2,"2319":1,"2374":1,"2375":1,"2398":1,"2401":1,"2409":1,"2411":1,"2415":1,"2417":1,"2418":1,"2420":1,"2421":1,"2424":1,"2426":1,"2428":1,"2432":1,"2443":1,"2465":1,"2475":1,"2492":1,"2494":1,"2553":1,"2561":1,"2562":1,"2572":2,"2573":2,"2574":1,"2578":1,"2579":1,"2583":1,"2602":1,"2607":1,"2610":1,"2612":2,"2645":5,"2650":1,"2652":1,"2655":1,"2658":1,"2665":1,"2670":1,"2671":2,"2673":1,"2688":1,"2709":1,"2713":1,"2715":1,"2718":1,"2719":1,"2722":1,"2723":1,"2743":1,"2746":1,"2749":1,"2750":1,"2765":1,"2775":1,"2782":1,"2783":2,"2786":1,"2788":1,"2789":1,"2879":1,"2880":1,"2881":1,"2882":2,"2883":1,"2885":1,"2888":3,"2889":1,"2890":3,"2895":1,"2925":2,"2929":1,"2934":3,"2936":1,"2937":2,"2939":1,"2940":1}}],["thedogkeyboard",{"2":{"154":2,"222":1}}],["they",{"2":{"124":1,"125":2,"185":2,"188":1,"196":1,"198":1,"214":1,"243":1,"265":1,"273":2,"276":1,"283":3,"331":1,"359":1,"363":2,"390":1,"408":1,"424":1,"470":1,"473":1,"481":1,"487":1,"489":1,"492":1,"503":1,"510":1,"512":1,"523":1,"573":1,"576":1,"586":1,"595":1,"616":1,"631":1,"638":1,"659":1,"690":1,"699":1,"717":1,"760":1,"1245":1,"1348":1,"1375":2,"1379":1,"1407":1,"1421":1,"1442":2,"1508":1,"1526":2,"1527":4,"1536":1,"1591":1,"1605":1,"1606":1,"1610":1,"1622":1,"1655":2,"1656":1,"1659":1,"1781":1,"1782":1,"1840":2,"1976":1,"1979":1,"1992":1,"1999":1,"2009":2,"2041":2,"2049":1,"2060":2,"2163":1,"2174":1,"2184":1,"2254":1,"2258":1,"2271":1,"2293":2,"2301":2,"2303":2,"2310":1,"2313":1,"2324":1,"2367":1,"2388":1,"2406":1,"2422":2,"2427":1,"2430":1,"2447":1,"2453":1,"2459":1,"2492":1,"2495":1,"2545":1,"2554":1,"2558":1,"2559":2,"2560":1,"2569":1,"2582":1,"2583":2,"2587":1,"2659":1,"2662":2,"2684":1,"2689":1,"2710":1,"2713":1,"2719":2,"2721":4,"2722":2,"2734":1,"2735":1,"2743":1,"2744":1,"2749":4,"2750":2,"2775":1,"2777":1,"2781":1,"2784":1,"2877":1,"2879":1,"2882":2,"2902":1,"2905":1,"2921":1,"2929":1,"2938":1}}],["the60",{"2":{"102":3}}],["then",{"0":{"2308":1},"2":{"49":1,"70":1,"120":2,"137":1,"235":1,"289":1,"347":1,"359":1,"377":1,"387":1,"408":1,"410":1,"423":1,"489":1,"557":1,"562":1,"563":1,"567":1,"584":1,"591":1,"597":2,"598":1,"616":1,"645":1,"654":1,"658":1,"664":1,"670":1,"685":1,"688":1,"698":1,"700":1,"717":1,"746":1,"760":1,"762":1,"765":1,"1243":1,"1245":2,"1264":1,"1281":1,"1294":1,"1315":1,"1329":1,"1333":1,"1335":2,"1336":1,"1345":1,"1362":1,"1374":2,"1375":1,"1404":1,"1406":1,"1407":2,"1409":1,"1410":1,"1416":1,"1440":1,"1442":2,"1449":1,"1451":1,"1456":1,"1458":1,"1464":2,"1465":2,"1466":1,"1476":1,"1479":1,"1486":2,"1492":5,"1493":1,"1494":1,"1497":2,"1519":1,"1521":1,"1533":2,"1588":3,"1592":1,"1596":1,"1608":1,"1612":1,"1616":2,"1618":1,"1622":1,"1636":1,"1650":1,"1655":1,"1660":1,"1661":1,"1672":2,"1675":3,"1732":1,"1756":1,"1757":1,"1762":1,"1775":1,"1778":2,"1779":3,"1780":3,"1781":1,"1784":1,"1843":9,"1845":1,"1849":1,"1933":1,"1938":1,"1942":2,"1947":1,"1959":1,"1962":1,"1978":1,"1985":1,"1992":2,"1993":1,"2051":1,"2052":2,"2063":15,"2064":1,"2068":1,"2072":1,"2074":1,"2156":1,"2157":1,"2164":1,"2167":1,"2172":1,"2203":1,"2221":1,"2225":2,"2253":1,"2261":1,"2262":1,"2264":1,"2265":1,"2270":2,"2271":1,"2277":1,"2293":2,"2302":2,"2303":3,"2305":1,"2308":1,"2310":2,"2312":3,"2322":2,"2323":2,"2324":3,"2337":4,"2378":1,"2380":1,"2385":1,"2386":1,"2387":1,"2388":1,"2391":1,"2392":1,"2398":1,"2409":2,"2410":2,"2411":1,"2420":2,"2425":1,"2443":1,"2446":1,"2459":1,"2473":1,"2476":1,"2497":1,"2501":1,"2555":1,"2560":2,"2609":1,"2613":1,"2625":1,"2626":1,"2627":4,"2628":1,"2630":1,"2632":1,"2633":2,"2634":1,"2643":2,"2656":1,"2662":1,"2671":3,"2676":1,"2704":1,"2721":2,"2749":11,"2750":3,"2781":1,"2784":2,"2791":2,"2792":1,"2827":1,"2882":1,"2888":1,"2903":1,"2905":3,"2906":2,"2912":3,"2913":2,"2914":2,"2917":1,"2918":2,"2921":1,"2924":1,"2927":1,"2930":1,"2934":1,"2937":1,"2941":2,"2942":3}}],["themself",{"2":{"408":1}}],["themselves",{"2":{"233":1,"317":1,"408":1,"586":1,"1614":1,"1616":1,"2583":1,"2703":1,"2775":1}}],["theme",{"2":{"233":1}}],["them",{"2":{"2":1,"139":1,"164":1,"186":1,"209":1,"213":1,"215":1,"234":2,"272":1,"273":1,"284":1,"359":1,"390":1,"433":2,"510":2,"512":2,"526":1,"528":1,"536":1,"559":1,"584":1,"594":1,"603":1,"606":1,"611":1,"627":2,"674":1,"678":1,"718":1,"1244":1,"1366":1,"1374":1,"1393":1,"1410":1,"1419":1,"1420":1,"1421":1,"1422":1,"1442":1,"1451":1,"1456":1,"1457":1,"1464":1,"1465":1,"1466":1,"1479":1,"1497":1,"1535":1,"1550":1,"1588":1,"1591":1,"1600":1,"1606":1,"1607":1,"1655":1,"1670":1,"1837":1,"1917":2,"1929":1,"1941":1,"1968":1,"1997":1,"2009":1,"2041":1,"2050":1,"2162":1,"2170":1,"2171":2,"2182":2,"2252":2,"2253":1,"2254":1,"2258":1,"2291":1,"2308":1,"2312":1,"2318":1,"2323":1,"2375":3,"2398":1,"2411":2,"2419":1,"2420":1,"2421":1,"2422":1,"2428":1,"2440":1,"2451":2,"2454":1,"2455":1,"2456":1,"2476":1,"2491":1,"2496":1,"2548":1,"2554":1,"2560":2,"2561":1,"2565":1,"2566":1,"2574":1,"2579":1,"2582":2,"2589":1,"2601":1,"2603":1,"2605":2,"2620":1,"2625":1,"2627":3,"2630":1,"2633":2,"2658":1,"2672":1,"2684":2,"2702":1,"2713":1,"2722":1,"2750":1,"2781":1,"2877":1,"2882":1,"2887":1,"2895":1,"2902":1,"2912":1,"2925":1,"2934":1,"2937":1,"2942":1}}],["the",{"0":{"23":1,"42":1,"56":1,"371":1,"379":1,"380":1,"381":1,"390":1,"391":1,"392":1,"395":1,"405":1,"406":1,"497":1,"558":1,"569":1,"604":1,"615":1,"619":1,"628":1,"666":1,"1200":1,"1201":1,"1202":1,"1297":1,"1334":1,"1343":1,"1347":1,"1653":3,"1654":2,"1782":1,"1783":1,"1827":1,"1993":1,"1999":1,"2031":1,"2050":1,"2051":1,"2199":2,"2213":1,"2248":1,"2290":1,"2293":1,"2409":1,"2415":1,"2416":1,"2418":1,"2421":1,"2422":1,"2423":1,"2424":1,"2426":1,"2469":1,"2470":1,"2471":1,"2472":1,"2495":1,"2496":1,"2572":1,"2579":1,"2588":1,"2607":1,"2609":1,"2629":1,"2653":1,"2655":1,"2730":1,"2757":1,"2775":1,"2776":1,"2777":1,"2788":1,"2789":1,"2791":1,"2843":1,"2881":1,"2924":2,"2928":1,"2938":1,"2939":1},"1":{"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"396":1,"559":1,"560":1,"561":1,"562":1,"563":1,"564":1,"565":1,"566":1,"567":1,"568":1,"570":1,"571":1,"572":1,"573":1,"629":1,"630":1,"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2417":1,"2419":1,"2420":1,"2421":1,"2422":1,"2424":1,"2496":1,"2573":1,"2574":1,"2731":1,"2732":1,"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1,"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"0":1,"1":1,"2":1,"3":2,"4":2,"5":3,"6":3,"7":3,"8":1,"10":3,"11":1,"12":1,"13":3,"14":5,"15":2,"16":3,"18":1,"19":1,"21":4,"22":3,"23":2,"24":2,"25":4,"27":2,"28":5,"30":4,"31":13,"32":1,"33":3,"34":12,"35":1,"36":7,"37":1,"43":3,"45":7,"46":2,"49":24,"50":18,"51":1,"55":5,"56":3,"58":1,"60":1,"62":3,"65":3,"67":4,"69":2,"70":17,"73":3,"74":3,"76":1,"83":3,"86":5,"87":4,"88":2,"90":4,"92":1,"93":2,"94":2,"99":4,"100":1,"102":1,"103":6,"104":2,"105":3,"107":4,"110":1,"112":1,"113":3,"114":13,"116":3,"118":5,"119":8,"120":3,"122":1,"123":3,"124":8,"125":8,"126":5,"127":2,"128":2,"130":1,"131":4,"132":2,"134":5,"137":5,"138":4,"139":1,"141":6,"142":6,"143":4,"144":1,"145":6,"148":1,"149":1,"151":1,"153":1,"154":3,"157":1,"160":10,"163":6,"164":4,"166":4,"167":2,"168":1,"169":3,"172":2,"173":4,"174":5,"175":6,"176":12,"181":1,"182":13,"184":3,"185":9,"186":2,"187":1,"188":1,"189":4,"191":10,"194":23,"195":6,"196":6,"197":2,"198":3,"199":7,"201":6,"203":1,"206":3,"207":1,"208":2,"209":2,"210":9,"212":8,"213":7,"214":6,"215":3,"217":5,"220":5,"221":3,"222":11,"224":3,"228":6,"229":2,"230":4,"231":1,"232":4,"233":5,"234":5,"235":3,"236":3,"238":1,"240":9,"243":4,"244":1,"245":4,"246":3,"247":1,"248":3,"249":4,"251":5,"254":6,"255":16,"256":3,"257":1,"258":1,"259":4,"262":6,"263":7,"264":1,"265":14,"266":4,"268":3,"271":6,"272":4,"273":7,"274":1,"275":4,"276":4,"277":2,"279":4,"282":1,"283":5,"284":4,"285":2,"288":6,"289":5,"292":1,"293":5,"297":6,"298":2,"301":1,"302":2,"303":5,"304":1,"305":5,"306":2,"307":8,"308":2,"312":11,"313":1,"314":5,"315":2,"316":2,"320":12,"323":6,"326":1,"328":2,"331":5,"332":1,"333":1,"334":2,"335":1,"338":16,"340":1,"342":1,"347":4,"348":1,"350":1,"358":2,"359":6,"360":7,"361":1,"362":5,"363":3,"364":1,"365":1,"366":1,"367":1,"368":3,"369":3,"370":3,"371":8,"372":6,"373":8,"374":2,"375":1,"376":2,"377":2,"378":2,"379":3,"380":4,"381":2,"383":2,"386":3,"387":24,"388":2,"390":11,"391":10,"392":6,"393":4,"395":1,"397":20,"398":1,"402":3,"403":4,"405":8,"406":13,"407":1,"408":6,"409":1,"410":4,"411":2,"412":1,"413":2,"416":3,"417":5,"419":2,"420":3,"421":1,"422":2,"423":1,"424":3,"427":8,"428":9,"429":2,"430":2,"431":12,"432":1,"434":2,"435":3,"437":1,"439":1,"440":1,"441":2,"442":2,"444":2,"445":2,"446":2,"447":2,"448":1,"450":3,"451":3,"452":1,"453":3,"456":1,"457":1,"458":5,"459":4,"460":2,"461":2,"463":1,"464":2,"465":2,"466":2,"467":3,"468":2,"470":2,"471":1,"472":1,"473":4,"474":2,"475":1,"480":1,"482":3,"483":5,"485":5,"486":1,"487":23,"488":3,"489":3,"490":7,"491":2,"492":14,"493":6,"494":5,"495":1,"496":1,"497":3,"498":2,"499":1,"502":1,"503":1,"505":2,"507":2,"508":3,"509":3,"510":32,"511":7,"512":2,"514":4,"515":1,"519":9,"520":1,"521":1,"522":2,"523":2,"524":1,"525":2,"527":3,"528":1,"529":1,"531":1,"533":1,"536":1,"537":1,"538":3,"539":1,"540":6,"541":1,"542":3,"544":2,"550":2,"552":2,"553":9,"554":2,"555":1,"556":1,"557":1,"558":3,"559":31,"560":1,"561":3,"562":25,"563":14,"565":1,"566":17,"567":11,"568":35,"569":2,"570":11,"571":1,"572":15,"573":9,"574":4,"576":3,"577":4,"578":5,"579":11,"580":1,"581":1,"582":2,"583":2,"584":5,"586":19,"587":13,"589":2,"590":5,"591":9,"592":2,"593":1,"594":6,"595":3,"596":1,"597":6,"598":5,"599":3,"602":3,"603":2,"605":1,"607":3,"608":1,"609":1,"611":30,"613":13,"614":6,"615":2,"616":8,"617":11,"618":1,"619":4,"620":3,"621":1,"622":2,"623":8,"625":11,"626":3,"627":2,"628":7,"629":2,"630":3,"631":8,"632":3,"633":2,"635":3,"637":13,"638":2,"639":3,"641":2,"643":2,"644":5,"645":6,"646":2,"649":15,"653":1,"654":18,"655":18,"656":3,"657":2,"658":3,"659":1,"663":4,"664":5,"666":1,"667":5,"668":1,"669":1,"670":1,"671":5,"673":3,"674":2,"678":1,"679":1,"680":8,"681":11,"682":10,"683":27,"684":13,"685":18,"686":7,"687":2,"688":2,"690":2,"692":14,"693":5,"695":8,"696":12,"698":12,"699":1,"700":6,"701":11,"703":1,"704":2,"705":5,"706":1,"707":3,"708":2,"709":1,"710":1,"711":7,"712":1,"713":5,"714":8,"715":5,"716":9,"717":11,"718":15,"719":6,"720":2,"722":4,"723":11,"724":3,"725":2,"726":4,"728":1,"729":8,"730":1,"731":3,"732":2,"733":6,"734":1,"735":3,"736":2,"737":5,"739":2,"741":11,"742":1,"743":10,"745":3,"746":22,"747":10,"748":3,"749":5,"750":7,"751":29,"752":17,"753":13,"754":7,"755":4,"756":18,"758":3,"759":4,"760":11,"761":1,"762":4,"763":12,"764":6,"765":18,"766":1,"767":1,"769":3,"770":1,"771":7,"772":1,"773":1,"774":7,"775":1,"776":1,"777":6,"778":1,"779":1,"780":9,"781":1,"782":1,"783":8,"784":1,"785":1,"786":8,"787":1,"788":1,"789":7,"790":1,"791":1,"792":7,"793":1,"794":2,"795":4,"796":1,"798":4,"799":9,"800":5,"801":2,"802":7,"804":1,"805":10,"806":1,"807":1,"808":2,"809":3,"810":2,"811":6,"812":1,"813":3,"814":2,"815":4,"816":1,"817":1,"818":2,"819":6,"820":2,"821":4,"822":2,"823":1,"824":2,"825":1,"827":4,"828":5,"829":1,"830":2,"831":7,"833":1,"834":8,"835":1,"836":2,"837":2,"838":2,"839":6,"840":1,"841":3,"842":2,"843":4,"844":1,"845":1,"846":2,"847":6,"848":2,"849":4,"850":2,"851":2,"853":4,"854":14,"855":5,"856":2,"857":6,"858":4,"859":2,"860":10,"862":1,"863":10,"864":1,"865":1,"866":2,"867":3,"868":2,"869":6,"870":1,"871":3,"872":2,"873":4,"874":1,"875":1,"876":2,"877":9,"878":2,"879":5,"880":2,"881":1,"882":2,"883":1,"885":4,"886":9,"887":5,"888":3,"889":2,"890":10,"892":1,"893":10,"894":1,"895":1,"896":2,"897":3,"898":2,"899":2,"900":2,"901":6,"902":1,"903":3,"904":2,"905":4,"906":1,"907":1,"908":2,"909":6,"910":2,"911":4,"912":2,"913":1,"914":2,"915":1,"917":4,"918":18,"919":5,"920":5,"921":2,"922":6,"923":5,"924":2,"925":10,"927":1,"928":10,"929":1,"930":1,"931":2,"932":3,"933":2,"934":2,"935":2,"936":6,"937":1,"938":3,"939":2,"940":4,"941":1,"942":1,"943":2,"944":6,"945":2,"946":4,"947":2,"948":1,"949":2,"950":1,"952":4,"953":14,"954":5,"955":2,"956":6,"957":5,"958":2,"959":10,"961":1,"962":10,"963":1,"964":1,"965":2,"966":3,"967":2,"968":2,"969":2,"970":6,"971":1,"972":3,"973":2,"974":4,"975":1,"976":1,"977":2,"978":6,"979":2,"980":4,"981":2,"982":1,"983":2,"984":1,"986":4,"987":14,"988":5,"989":2,"990":6,"991":5,"992":2,"993":10,"995":1,"996":10,"997":1,"998":1,"999":2,"1000":3,"1001":2,"1002":2,"1003":2,"1004":6,"1005":1,"1006":3,"1007":2,"1008":4,"1009":1,"1010":1,"1011":2,"1012":6,"1013":2,"1014":4,"1015":2,"1016":1,"1017":2,"1018":1,"1020":4,"1021":16,"1022":5,"1023":2,"1024":6,"1025":5,"1026":2,"1027":10,"1029":1,"1030":10,"1031":1,"1032":1,"1033":2,"1034":3,"1035":2,"1036":2,"1037":2,"1038":6,"1039":1,"1040":3,"1041":2,"1042":4,"1043":1,"1044":1,"1045":2,"1046":6,"1047":2,"1048":4,"1049":2,"1050":1,"1051":2,"1052":1,"1054":4,"1055":16,"1056":5,"1057":2,"1058":6,"1059":5,"1060":2,"1061":10,"1063":1,"1064":10,"1065":1,"1066":1,"1067":2,"1068":3,"1069":2,"1070":2,"1071":2,"1072":6,"1073":1,"1074":3,"1075":2,"1076":4,"1077":1,"1078":1,"1079":2,"1080":9,"1081":2,"1082":5,"1083":2,"1084":1,"1085":2,"1086":1,"1088":4,"1089":18,"1090":5,"1091":5,"1092":6,"1093":5,"1094":2,"1095":10,"1097":1,"1098":10,"1099":1,"1100":1,"1101":2,"1102":3,"1103":2,"1104":2,"1105":2,"1106":6,"1107":1,"1108":3,"1109":2,"1110":4,"1111":1,"1112":1,"1113":2,"1114":9,"1115":2,"1116":5,"1117":2,"1118":1,"1119":2,"1120":1,"1122":4,"1123":18,"1124":5,"1125":5,"1126":6,"1127":5,"1128":2,"1129":10,"1131":1,"1132":10,"1133":1,"1134":1,"1135":2,"1136":3,"1137":2,"1138":2,"1139":2,"1140":6,"1141":1,"1142":3,"1143":2,"1144":4,"1145":1,"1146":1,"1147":2,"1148":9,"1149":2,"1150":5,"1151":2,"1152":1,"1153":2,"1154":1,"1156":4,"1157":16,"1158":5,"1159":2,"1160":6,"1161":5,"1162":2,"1163":10,"1165":1,"1166":10,"1167":1,"1168":2,"1169":2,"1170":3,"1171":2,"1172":2,"1173":2,"1174":6,"1175":1,"1176":3,"1177":2,"1178":4,"1179":1,"1180":1,"1181":2,"1182":9,"1183":2,"1184":5,"1185":2,"1186":1,"1187":2,"1188":1,"1189":4,"1190":5,"1191":3,"1192":4,"1193":1,"1194":8,"1195":10,"1196":3,"1197":23,"1198":10,"1200":16,"1201":17,"1202":13,"1204":4,"1205":1,"1206":4,"1210":3,"1212":4,"1213":9,"1214":5,"1215":2,"1216":10,"1218":1,"1219":10,"1220":1,"1221":1,"1222":2,"1223":3,"1224":2,"1225":2,"1226":2,"1227":6,"1228":1,"1229":3,"1230":2,"1231":4,"1232":1,"1233":1,"1234":2,"1235":6,"1236":2,"1237":4,"1238":2,"1239":1,"1240":2,"1241":1,"1242":1,"1243":4,"1244":4,"1245":14,"1247":2,"1249":11,"1250":3,"1251":1,"1252":1,"1253":1,"1254":1,"1255":3,"1256":1,"1257":3,"1258":1,"1259":1,"1260":2,"1261":1,"1262":3,"1263":2,"1264":4,"1265":3,"1266":12,"1268":2,"1269":2,"1271":1,"1273":3,"1275":3,"1277":2,"1278":1,"1280":4,"1281":6,"1282":13,"1283":7,"1284":8,"1285":7,"1287":4,"1288":6,"1289":6,"1290":2,"1291":6,"1292":3,"1293":3,"1294":9,"1295":5,"1296":10,"1297":5,"1298":2,"1299":3,"1300":11,"1302":1,"1303":2,"1304":5,"1305":1,"1306":3,"1307":2,"1308":3,"1309":4,"1310":5,"1311":1,"1312":3,"1313":3,"1315":6,"1316":1,"1317":3,"1319":5,"1322":1,"1324":1,"1326":2,"1327":4,"1328":3,"1329":4,"1332":1,"1333":2,"1334":1,"1335":3,"1336":1,"1338":1,"1340":5,"1343":2,"1345":15,"1346":3,"1347":3,"1348":4,"1349":4,"1350":1,"1352":1,"1353":8,"1356":1,"1357":1,"1358":1,"1359":9,"1361":1,"1362":14,"1363":1,"1364":1,"1367":1,"1369":8,"1373":1,"1374":5,"1375":24,"1376":2,"1377":7,"1378":23,"1379":1,"1385":5,"1386":1,"1387":3,"1388":1,"1389":4,"1390":1,"1392":2,"1393":3,"1394":1,"1395":5,"1396":1,"1397":1,"1398":1,"1400":3,"1401":1,"1402":1,"1403":1,"1404":8,"1406":9,"1407":39,"1408":5,"1409":10,"1410":17,"1412":1,"1413":9,"1414":2,"1415":3,"1416":16,"1417":13,"1418":1,"1419":6,"1420":2,"1421":10,"1422":19,"1423":1,"1424":4,"1425":9,"1426":4,"1427":13,"1428":8,"1429":1,"1430":1,"1432":3,"1433":3,"1435":1,"1436":1,"1438":3,"1440":19,"1441":7,"1442":8,"1444":1,"1445":3,"1446":1,"1447":2,"1448":3,"1449":4,"1450":1,"1451":2,"1454":1,"1456":6,"1457":8,"1458":10,"1459":8,"1460":7,"1461":9,"1463":1,"1464":10,"1465":7,"1466":20,"1468":3,"1469":5,"1470":1,"1471":5,"1472":2,"1473":1,"1474":5,"1475":4,"1476":4,"1477":4,"1478":6,"1479":13,"1480":12,"1481":5,"1482":5,"1483":3,"1484":9,"1485":1,"1486":16,"1487":18,"1489":5,"1491":3,"1492":11,"1493":6,"1494":1,"1495":2,"1496":2,"1497":12,"1498":1,"1499":1,"1503":1,"1504":3,"1508":1,"1511":10,"1512":9,"1513":1,"1515":6,"1516":9,"1517":3,"1519":11,"1520":2,"1521":13,"1522":4,"1523":7,"1524":4,"1526":4,"1527":6,"1528":10,"1529":8,"1531":4,"1532":42,"1533":14,"1534":1,"1535":6,"1536":1,"1537":5,"1538":16,"1539":9,"1540":11,"1542":3,"1543":4,"1544":2,"1545":4,"1547":4,"1548":7,"1550":9,"1551":5,"1552":11,"1554":1,"1555":1,"1556":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1569":1,"1571":1,"1572":1,"1573":2,"1574":1,"1577":2,"1580":2,"1582":2,"1583":11,"1584":9,"1585":5,"1586":3,"1587":12,"1588":7,"1589":4,"1591":3,"1592":2,"1594":7,"1595":1,"1596":5,"1597":2,"1598":2,"1599":4,"1600":3,"1602":4,"1603":10,"1604":5,"1605":3,"1606":22,"1607":3,"1608":6,"1609":5,"1610":3,"1611":5,"1612":1,"1613":5,"1614":17,"1615":9,"1616":14,"1617":2,"1618":6,"1619":27,"1620":1,"1621":4,"1622":11,"1624":15,"1625":2,"1626":1,"1627":11,"1628":9,"1629":1,"1630":1,"1631":1,"1632":2,"1633":3,"1634":1,"1635":11,"1636":8,"1638":2,"1639":13,"1640":2,"1641":2,"1642":2,"1643":2,"1644":2,"1645":2,"1646":2,"1647":3,"1648":4,"1649":6,"1650":2,"1651":1,"1653":5,"1654":3,"1655":19,"1656":18,"1657":6,"1658":2,"1659":3,"1660":11,"1661":8,"1662":7,"1663":4,"1664":4,"1665":1,"1666":4,"1667":1,"1669":2,"1672":7,"1675":41,"1676":2,"1677":1,"1678":2,"1679":8,"1680":1,"1681":3,"1682":1,"1683":3,"1684":6,"1685":2,"1686":2,"1687":2,"1688":2,"1689":2,"1692":1,"1693":13,"1695":1,"1696":6,"1698":2,"1699":2,"1700":1,"1701":2,"1702":2,"1703":2,"1704":1,"1705":3,"1706":2,"1707":9,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1714":8,"1716":8,"1717":1,"1718":1,"1719":1,"1720":3,"1721":1,"1722":3,"1723":5,"1724":6,"1725":1,"1726":4,"1727":1,"1728":1,"1729":1,"1730":3,"1731":1,"1732":3,"1733":4,"1734":2,"1735":6,"1736":16,"1737":1,"1740":2,"1741":5,"1743":5,"1744":2,"1745":2,"1746":2,"1747":2,"1748":2,"1749":2,"1750":1,"1751":1,"1752":2,"1753":3,"1754":2,"1755":1,"1756":1,"1757":1,"1758":2,"1759":5,"1760":5,"1762":1,"1763":2,"1765":1,"1768":1,"1770":4,"1771":2,"1773":4,"1775":27,"1776":10,"1777":1,"1778":17,"1779":12,"1780":13,"1781":3,"1782":9,"1783":1,"1784":2,"1785":7,"1787":4,"1788":3,"1789":17,"1790":5,"1791":3,"1792":1,"1794":1,"1795":1,"1796":1,"1797":2,"1798":1,"1799":2,"1800":1,"1801":1,"1802":4,"1803":1,"1804":2,"1805":3,"1806":1,"1807":2,"1808":1,"1809":1,"1810":2,"1811":2,"1812":1,"1813":2,"1814":3,"1815":1,"1816":2,"1817":4,"1818":1,"1819":2,"1820":5,"1821":1,"1822":9,"1823":3,"1824":15,"1825":1,"1826":2,"1827":4,"1828":9,"1829":6,"1830":15,"1831":6,"1832":6,"1834":6,"1835":4,"1836":2,"1837":5,"1838":3,"1839":5,"1840":34,"1841":3,"1842":4,"1843":5,"1844":10,"1845":6,"1846":13,"1847":2,"1849":4,"1857":1,"1859":3,"1860":2,"1861":3,"1862":1,"1863":1,"1864":1,"1865":1,"1866":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":2,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":1,"1899":1,"1900":1,"1901":1,"1902":1,"1904":1,"1905":1,"1906":1,"1907":4,"1909":1,"1910":4,"1911":1,"1913":2,"1915":1,"1916":1,"1917":4,"1920":3,"1924":1,"1926":1,"1927":1,"1928":10,"1929":12,"1930":23,"1931":13,"1932":7,"1933":11,"1934":4,"1936":2,"1937":3,"1938":4,"1939":5,"1940":5,"1941":7,"1942":1,"1946":2,"1947":5,"1948":5,"1949":18,"1950":3,"1951":17,"1952":2,"1953":14,"1954":28,"1955":18,"1956":84,"1958":4,"1959":1,"1960":12,"1961":11,"1962":14,"1963":3,"1964":8,"1967":4,"1968":25,"1969":8,"1970":2,"1971":4,"1972":9,"1973":7,"1974":12,"1975":12,"1976":26,"1977":4,"1978":13,"1979":11,"1980":12,"1981":13,"1982":11,"1983":23,"1985":4,"1986":7,"1987":15,"1988":3,"1989":2,"1990":2,"1991":3,"1992":16,"1993":2,"1994":4,"1995":1,"1997":1,"1999":3,"2000":1,"2001":19,"2002":1,"2004":8,"2005":4,"2006":4,"2007":7,"2008":3,"2009":6,"2010":1,"2013":1,"2014":1,"2015":2,"2016":1,"2017":2,"2018":2,"2019":2,"2020":2,"2021":2,"2022":1,"2023":2,"2024":1,"2025":2,"2026":1,"2027":1,"2028":1,"2030":3,"2031":3,"2034":1,"2035":3,"2036":1,"2037":9,"2039":9,"2040":4,"2041":13,"2042":1,"2043":2,"2044":6,"2045":2,"2046":3,"2047":5,"2048":1,"2049":7,"2050":23,"2051":6,"2052":15,"2054":1,"2055":3,"2057":3,"2058":3,"2059":5,"2060":34,"2061":4,"2062":6,"2063":9,"2064":17,"2065":3,"2066":10,"2067":4,"2068":6,"2069":19,"2070":2,"2072":5,"2074":6,"2075":1,"2083":1,"2085":3,"2086":4,"2087":3,"2088":3,"2089":1,"2090":1,"2091":1,"2092":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":2,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":1,"2123":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":1,"2137":1,"2138":3,"2139":1,"2140":3,"2141":1,"2142":1,"2143":1,"2144":1,"2145":1,"2146":1,"2148":1,"2149":1,"2150":1,"2151":4,"2153":1,"2154":4,"2155":1,"2156":10,"2157":2,"2158":2,"2159":10,"2160":17,"2161":4,"2162":7,"2163":1,"2164":5,"2165":3,"2166":3,"2167":8,"2168":5,"2169":5,"2170":1,"2171":12,"2172":20,"2173":10,"2174":3,"2175":20,"2176":3,"2177":1,"2178":21,"2179":1,"2180":9,"2181":1,"2182":15,"2183":4,"2184":12,"2185":1,"2186":1,"2187":3,"2191":18,"2192":15,"2194":14,"2195":6,"2198":4,"2199":10,"2200":8,"2201":4,"2202":6,"2203":4,"2204":3,"2205":1,"2206":2,"2207":5,"2208":1,"2209":1,"2210":2,"2211":5,"2212":2,"2213":2,"2214":3,"2215":6,"2216":12,"2217":26,"2218":7,"2219":1,"2220":6,"2221":10,"2222":1,"2224":2,"2225":3,"2228":1,"2230":3,"2232":1,"2234":3,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2241":1,"2242":1,"2243":1,"2244":1,"2245":1,"2248":3,"2249":4,"2251":3,"2252":20,"2253":13,"2254":6,"2255":1,"2257":1,"2258":9,"2259":4,"2260":9,"2261":2,"2262":13,"2263":1,"2264":7,"2265":13,"2266":24,"2267":8,"2268":18,"2269":45,"2270":11,"2271":31,"2272":1,"2273":15,"2274":4,"2277":5,"2278":3,"2279":18,"2280":3,"2281":19,"2282":10,"2283":69,"2284":3,"2285":3,"2286":7,"2287":6,"2288":23,"2289":8,"2290":11,"2291":18,"2292":1,"2293":22,"2294":4,"2295":3,"2296":5,"2298":6,"2301":6,"2302":46,"2303":31,"2305":1,"2306":2,"2308":4,"2309":2,"2310":25,"2311":8,"2312":30,"2313":7,"2314":6,"2315":9,"2316":9,"2318":3,"2319":2,"2320":9,"2321":13,"2322":12,"2323":17,"2324":15,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":3,"2338":3,"2339":3,"2340":1,"2341":2,"2343":1,"2344":3,"2345":2,"2346":1,"2347":3,"2348":2,"2350":3,"2351":2,"2352":1,"2355":2,"2356":1,"2357":2,"2358":1,"2359":1,"2360":2,"2361":1,"2362":1,"2363":1,"2364":2,"2365":2,"2367":2,"2368":11,"2369":2,"2370":3,"2371":4,"2372":11,"2373":2,"2374":7,"2375":9,"2376":11,"2377":13,"2378":3,"2379":13,"2380":5,"2381":10,"2382":13,"2383":10,"2384":27,"2385":1,"2386":11,"2387":7,"2388":11,"2389":11,"2390":11,"2391":10,"2392":3,"2393":22,"2394":2,"2395":22,"2396":2,"2397":28,"2398":6,"2399":3,"2400":1,"2401":16,"2404":2,"2405":6,"2406":2,"2407":11,"2408":6,"2409":7,"2410":57,"2411":27,"2412":1,"2414":1,"2415":4,"2416":21,"2417":2,"2418":7,"2419":1,"2420":25,"2421":45,"2422":18,"2423":10,"2424":24,"2425":11,"2426":4,"2427":28,"2428":5,"2430":1,"2432":1,"2434":3,"2435":1,"2436":1,"2437":2,"2438":2,"2439":3,"2442":1,"2443":5,"2444":2,"2445":3,"2446":12,"2447":9,"2448":13,"2449":4,"2450":1,"2451":2,"2452":3,"2453":1,"2454":5,"2455":3,"2456":1,"2457":11,"2458":3,"2459":44,"2461":2,"2462":1,"2463":1,"2464":1,"2465":4,"2466":1,"2467":2,"2468":5,"2469":5,"2470":3,"2471":3,"2472":3,"2473":5,"2474":5,"2475":10,"2476":14,"2478":8,"2479":1,"2480":8,"2482":8,"2483":5,"2487":5,"2489":4,"2490":7,"2491":2,"2492":8,"2493":1,"2494":4,"2495":16,"2496":17,"2497":12,"2498":6,"2499":5,"2500":7,"2501":17,"2502":2,"2503":7,"2504":4,"2505":5,"2506":6,"2507":4,"2508":5,"2509":3,"2511":1,"2514":2,"2515":1,"2516":4,"2518":4,"2519":8,"2524":3,"2526":6,"2530":2,"2534":4,"2542":9,"2544":2,"2545":2,"2546":7,"2548":11,"2549":3,"2550":8,"2551":7,"2552":10,"2553":3,"2554":6,"2555":11,"2556":13,"2557":5,"2558":1,"2559":8,"2560":10,"2561":14,"2562":8,"2563":7,"2564":3,"2565":4,"2566":12,"2568":3,"2569":2,"2571":1,"2572":5,"2573":2,"2574":1,"2575":1,"2576":8,"2577":5,"2578":7,"2579":5,"2580":5,"2582":4,"2583":11,"2584":1,"2585":1,"2586":1,"2587":12,"2588":4,"2589":5,"2590":2,"2591":3,"2592":2,"2593":2,"2594":6,"2595":1,"2598":3,"2599":9,"2600":5,"2601":5,"2602":8,"2603":7,"2605":16,"2606":7,"2607":8,"2608":2,"2609":14,"2610":2,"2612":2,"2613":3,"2614":3,"2615":5,"2616":1,"2617":1,"2618":1,"2619":6,"2620":5,"2621":13,"2622":6,"2625":3,"2626":3,"2627":60,"2628":1,"2629":2,"2630":5,"2631":2,"2632":18,"2633":14,"2634":2,"2635":3,"2636":1,"2638":1,"2643":9,"2644":9,"2645":8,"2646":5,"2648":4,"2649":3,"2650":3,"2651":6,"2652":14,"2655":13,"2656":9,"2657":2,"2658":2,"2660":3,"2661":10,"2662":6,"2664":4,"2665":3,"2666":3,"2667":2,"2669":9,"2670":2,"2671":15,"2672":5,"2673":4,"2674":1,"2675":6,"2676":51,"2677":7,"2678":15,"2679":8,"2680":5,"2681":2,"2683":8,"2684":10,"2685":8,"2687":15,"2688":2,"2689":9,"2690":1,"2691":2,"2692":2,"2693":2,"2694":14,"2695":4,"2696":2,"2697":2,"2698":2,"2700":10,"2702":7,"2703":3,"2704":8,"2705":4,"2706":2,"2707":11,"2708":3,"2709":3,"2710":14,"2711":4,"2712":4,"2713":6,"2714":9,"2715":2,"2716":1,"2717":1,"2718":1,"2719":15,"2720":2,"2721":52,"2722":14,"2724":5,"2725":8,"2726":2,"2727":1,"2729":2,"2730":1,"2731":5,"2732":2,"2734":4,"2740":1,"2743":1,"2744":3,"2745":4,"2746":6,"2747":17,"2748":40,"2749":111,"2750":129,"2751":3,"2752":3,"2754":9,"2755":2,"2757":3,"2758":7,"2759":2,"2760":12,"2761":3,"2762":6,"2763":8,"2764":3,"2765":3,"2766":8,"2767":5,"2768":4,"2769":9,"2770":12,"2771":6,"2772":11,"2773":5,"2774":1,"2775":17,"2776":36,"2777":12,"2778":6,"2780":2,"2781":6,"2784":2,"2786":7,"2787":1,"2788":8,"2789":2,"2790":1,"2791":4,"2792":2,"2796":1,"2797":3,"2798":1,"2800":1,"2801":1,"2804":1,"2805":2,"2806":3,"2808":1,"2809":1,"2810":2,"2811":1,"2817":1,"2818":1,"2819":1,"2820":1,"2821":2,"2823":1,"2824":1,"2827":4,"2830":3,"2831":3,"2832":1,"2833":2,"2834":1,"2836":1,"2838":6,"2839":1,"2841":1,"2842":1,"2843":2,"2844":9,"2845":12,"2846":8,"2847":5,"2848":9,"2849":9,"2850":14,"2851":11,"2852":2,"2853":5,"2854":3,"2855":2,"2856":4,"2857":8,"2858":6,"2859":1,"2860":13,"2861":4,"2862":41,"2863":4,"2864":29,"2865":9,"2866":2,"2867":4,"2868":8,"2869":6,"2870":22,"2871":36,"2872":6,"2873":35,"2874":3,"2875":14,"2876":8,"2877":15,"2878":6,"2879":7,"2881":2,"2882":7,"2883":2,"2884":2,"2885":4,"2887":1,"2888":2,"2890":1,"2891":1,"2894":5,"2895":12,"2896":8,"2898":2,"2899":5,"2900":3,"2902":2,"2903":10,"2905":43,"2906":34,"2907":5,"2911":10,"2912":43,"2913":22,"2914":20,"2915":13,"2916":9,"2917":9,"2918":24,"2919":22,"2920":6,"2921":15,"2922":2,"2923":14,"2924":5,"2925":1,"2926":2,"2927":13,"2928":8,"2929":7,"2930":13,"2931":4,"2932":10,"2933":5,"2935":3,"2936":5,"2937":20,"2938":7,"2939":5,"2940":3,"2941":8,"2942":25}}],["theirs",{"2":{"2457":1}}],["their",{"2":{"0":2,"9":2,"19":2,"39":2,"52":2,"58":1,"67":1,"83":1,"86":1,"102":1,"107":1,"114":1,"122":1,"123":1,"124":1,"125":1,"134":1,"139":1,"142":1,"144":1,"154":1,"166":1,"168":1,"172":1,"175":2,"179":1,"181":1,"182":1,"185":1,"197":1,"210":1,"228":2,"233":1,"234":1,"251":1,"263":1,"275":1,"284":3,"288":1,"362":1,"365":1,"374":1,"393":2,"405":1,"408":4,"431":1,"432":1,"445":1,"490":1,"492":1,"497":1,"510":1,"541":1,"553":2,"567":1,"576":3,"584":1,"608":1,"613":1,"616":1,"619":1,"644":1,"659":1,"686":1,"711":1,"713":1,"759":1,"802":2,"831":2,"860":2,"890":2,"925":2,"959":2,"993":2,"1027":2,"1061":2,"1095":2,"1129":2,"1163":2,"1216":2,"1284":1,"1318":1,"1340":2,"1373":1,"1379":1,"1402":1,"1417":1,"1451":1,"1511":1,"1521":2,"1522":1,"1606":1,"1614":1,"1620":1,"1623":1,"1635":1,"1833":1,"1837":1,"1840":2,"1931":1,"1978":1,"1979":2,"2060":2,"2170":1,"2186":1,"2193":2,"2221":1,"2318":1,"2322":1,"2324":1,"2375":1,"2376":2,"2379":1,"2389":1,"2434":2,"2449":1,"2453":3,"2457":2,"2494":1,"2502":1,"2545":1,"2559":4,"2560":3,"2561":1,"2562":3,"2564":3,"2576":1,"2582":1,"2583":1,"2621":2,"2630":1,"2688":1,"2694":1,"2696":1,"2714":1,"2719":3,"2721":2,"2723":1,"2728":1,"2747":2,"2750":1,"2751":1,"2766":1,"2778":1,"2782":1,"2828":1,"2877":1,"2902":1,"2904":1,"2912":1,"2941":1}}],["these",{"0":{"2732":1},"2":{"0":1,"7":1,"9":1,"16":1,"19":1,"21":1,"28":1,"37":1,"38":1,"39":1,"52":1,"67":1,"86":1,"120":2,"124":1,"182":1,"188":1,"213":2,"254":1,"268":2,"273":1,"276":1,"279":4,"288":1,"304":1,"307":2,"312":1,"373":1,"393":1,"420":1,"424":2,"471":1,"488":1,"489":1,"498":2,"499":1,"510":1,"527":1,"530":1,"536":3,"542":1,"553":1,"560":1,"561":1,"566":1,"572":1,"573":1,"577":1,"579":1,"586":1,"587":1,"608":2,"616":1,"617":1,"628":4,"630":1,"631":1,"637":1,"641":1,"644":3,"663":3,"667":1,"668":1,"669":1,"671":1,"672":1,"690":1,"692":1,"717":1,"718":1,"726":1,"751":1,"857":1,"860":1,"890":1,"922":1,"925":1,"956":1,"959":1,"990":1,"993":1,"1024":1,"1027":1,"1058":1,"1061":1,"1092":1,"1095":1,"1126":1,"1129":1,"1160":1,"1163":1,"1192":1,"1195":1,"1197":1,"1198":1,"1200":1,"1201":1,"1206":1,"1216":1,"1280":1,"1319":1,"1340":3,"1342":1,"1343":1,"1348":1,"1356":1,"1374":1,"1375":1,"1393":1,"1395":1,"1405":1,"1406":1,"1407":1,"1416":2,"1419":1,"1422":1,"1432":1,"1434":1,"1435":1,"1442":1,"1451":1,"1464":1,"1466":1,"1473":1,"1479":1,"1483":1,"1487":1,"1504":1,"1508":1,"1511":1,"1516":1,"1518":1,"1527":2,"1535":1,"1550":2,"1552":1,"1583":2,"1584":2,"1597":1,"1601":1,"1603":1,"1606":1,"1619":1,"1620":1,"1626":1,"1628":1,"1635":1,"1655":1,"1670":1,"1675":1,"1676":1,"1680":1,"1691":1,"1735":1,"1760":1,"1763":1,"1778":1,"1785":1,"1830":1,"1831":1,"1840":1,"1843":2,"1849":1,"1920":1,"1951":1,"1954":3,"1955":1,"1967":1,"1977":1,"1979":2,"1983":1,"1987":1,"1991":1,"2009":1,"2039":1,"2050":2,"2060":1,"2063":3,"2067":2,"2072":1,"2156":1,"2159":2,"2171":1,"2172":1,"2174":2,"2175":1,"2177":1,"2180":1,"2181":1,"2182":1,"2184":1,"2198":2,"2215":1,"2218":1,"2221":1,"2253":1,"2258":1,"2265":1,"2268":1,"2269":1,"2270":1,"2287":1,"2290":1,"2293":1,"2294":2,"2310":1,"2313":1,"2315":1,"2316":1,"2322":1,"2323":1,"2324":1,"2377":1,"2390":1,"2410":2,"2411":2,"2417":1,"2418":1,"2423":1,"2427":2,"2456":1,"2483":1,"2490":1,"2491":1,"2498":1,"2542":2,"2544":1,"2545":1,"2546":2,"2552":1,"2554":3,"2558":1,"2559":1,"2565":1,"2566":1,"2573":1,"2578":1,"2587":1,"2612":1,"2621":1,"2630":1,"2635":1,"2643":2,"2659":1,"2677":1,"2684":1,"2687":1,"2688":1,"2694":2,"2696":1,"2701":1,"2702":2,"2705":1,"2706":1,"2710":1,"2714":1,"2715":1,"2718":1,"2720":1,"2721":3,"2724":1,"2734":2,"2744":1,"2749":6,"2750":2,"2812":1,"2833":1,"2838":1,"2844":1,"2877":1,"2880":1,"2882":1,"2883":1,"2885":1,"2887":3,"2899":1,"2900":3,"2902":1,"2905":1,"2917":1,"2923":2,"2931":1,"2934":1,"2941":1}}],["w25x10cl",{"2":{"2705":2}}],["w25q080",{"2":{"2705":2}}],["wuque",{"2":{"2560":1}}],["wmp",{"2":{"2503":1}}],["wm",{"2":{"2503":1}}],["w^wr^sd",{"2":{"2295":1}}],["wfav",{"2":{"2503":1,"2542":1}}],["wfwd",{"2":{"2159":1,"2503":1,"2542":1}}],["wfi",{"2":{"210":1}}],["www",{"2":{"608":1,"681":1,"746":7,"747":1,"763":1,"1316":2,"1364":1,"1461":1,"2180":1,"2310":1,"2503":7,"2542":7,"2725":1}}],["wt",{"2":{"236":1,"249":2,"2721":2}}],["wt80",{"2":{"222":2}}],["wt75",{"2":{"222":3}}],["wt70",{"2":{"222":1}}],["wt69",{"2":{"222":1}}],["wt65",{"2":{"222":8}}],["wt60",{"2":{"199":1,"222":8}}],["w1",{"2":{"222":1,"241":2,"249":1}}],["wk",{"2":{"222":1}}],["wkl",{"2":{"160":1}}],["wl",{"2":{"176":2,"2294":3}}],["wbak",{"2":{"2159":1,"2503":1,"2542":1}}],["wbg7",{"2":{"176":1}}],["wb32fq95xx",{"2":{"547":1}}],["wb32fq95",{"2":{"145":1}}],["wb32f3g71xx",{"2":{"547":1}}],["wb32f3g71",{"2":{"134":1}}],["wb32",{"0":{"547":1,"2390":1},"2":{"145":1,"176":4,"191":4,"199":2,"210":1,"236":1,"2390":4}}],["wstp",{"2":{"2503":1,"2542":1}}],["wsch",{"2":{"2503":1,"2542":1}}],["ws2811",{"2":{"1280":1,"2171":1,"2436":1}}],["ws2812s",{"2":{"1284":1}}],["ws2812c",{"2":{"1280":1,"2171":1}}],["ws2812b",{"2":{"1280":1,"1284":2,"2171":1}}],["ws2812",{"0":{"1280":1,"1302":1,"1303":1,"1305":1,"1307":1,"2436":1,"2876":1},"1":{"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1286":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1,"1292":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1301":1,"1302":1,"1303":1,"1304":2,"1305":1,"1306":2,"1307":1},"2":{"49":1,"50":2,"93":2,"134":2,"160":1,"176":4,"191":3,"199":1,"209":4,"210":1,"212":2,"222":7,"234":2,"236":1,"249":3,"266":2,"285":2,"294":1,"333":1,"563":3,"699":1,"1190":2,"1280":1,"1281":4,"1282":10,"1283":2,"1284":3,"1285":2,"1286":2,"1287":1,"1288":3,"1289":1,"1292":6,"1293":1,"1294":2,"1296":6,"1297":1,"1298":1,"1299":1,"1300":7,"1303":1,"1304":1,"2059":1,"2074":1,"2171":1,"2172":4,"2436":1,"2682":1,"2692":1,"2870":2,"2871":1,"2876":3}}],["wsl",{"2":{"143":1,"1466":1,"2619":3}}],["w64",{"2":{"143":1,"2499":2}}],["w",{"2":{"134":1,"199":1,"212":2,"222":1,"241":1,"249":1,"266":4,"369":1,"432":1,"587":2,"1280":1,"1285":4,"1587":2,"1599":1,"1616":1,"1735":1,"1760":1,"1931":8,"2159":1,"2170":6,"2289":1,"2294":1,"2310":1,"2379":1,"2382":1,"2495":1,"2496":3,"2503":3,"2535":3,"2550":1,"2556":1,"2748":4,"2776":3,"2777":1,"2862":2,"2919":1}}],["wch",{"2":{"2728":1,"2734":1,"2737":1}}],["wc",{"2":{"116":1}}],["wp",{"2":{"114":1,"746":5}}],["wpm",{"0":{"2371":1},"1":{"2372":1,"2373":1,"2374":1},"2":{"93":1,"114":1,"134":1,"160":1,"191":2,"199":1,"568":2,"1788":1,"2063":1,"2269":3,"2284":1,"2371":4,"2372":24,"2373":4,"2374":9,"2873":2,"2882":2,"2886":12,"2933":1}}],["wref",{"2":{"2503":1,"2542":1}}],["wraps",{"2":{"1956":3,"2194":4,"2283":3}}],["wrapping",{"2":{"1442":1}}],["wrapped",{"2":{"249":1,"493":1}}],["wrappers",{"2":{"176":1}}],["wrap",{"2":{"199":1,"510":3,"511":1,"512":3,"1479":1,"1693":2,"2311":1}}],["wrote",{"2":{"174":1,"445":1,"461":1,"471":1,"472":1,"474":1,"480":1,"481":1}}],["wrongly",{"2":{"1349":1}}],["wrong",{"0":{"28":1,"684":1},"2":{"5":1,"25":1,"92":1,"176":1,"240":1,"249":1,"490":1,"614":1,"1284":1,"1315":1,"1362":1,"1528":1,"2562":1,"2610":1}}],["written",{"2":{"164":1,"230":1,"497":1,"609":2,"1406":1,"1407":1,"1852":1,"1854":1,"1856":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"2078":1,"2080":1,"2082":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2176":1,"2191":9,"2192":3,"2193":3,"2194":7,"2195":3,"2274":1,"2448":1,"2495":1,"2501":2,"2556":1,"2605":1,"2608":1,"2750":1,"2800":1,"2802":1,"2936":2,"2941":1}}],["writing",{"0":{"497":1,"1623":1},"1":{"1624":1,"1625":1,"1626":1,"1627":1,"1628":1,"1629":1,"1630":1,"1631":1,"1632":1},"2":{"65":1,"70":1,"112":1,"134":1,"174":1,"182":1,"373":1,"427":1,"445":1,"487":2,"491":1,"498":1,"540":2,"542":1,"672":1,"743":4,"746":1,"750":1,"755":1,"1406":1,"1445":1,"1519":1,"1680":1,"1956":6,"2283":6,"2284":1,"2323":1,"2398":1,"2448":1,"2495":2,"2678":1,"2708":1,"2748":4,"2750":1,"2935":1,"2940":1}}],["writereg16",{"2":{"244":1}}],["writereg",{"2":{"244":1,"249":1}}],["writepinlow",{"2":{"243":1}}],["writepinhigh",{"2":{"243":1}}],["writepin",{"2":{"145":1,"243":1}}],["writes",{"2":{"114":1,"751":1,"752":1,"753":1,"754":1,"1406":1,"1407":1,"1422":1,"1835":1,"1956":9,"2283":9,"2679":1,"2748":2}}],["write",{"0":{"782":1,"785":1,"808":1,"836":1,"866":1,"896":1,"931":1,"965":1,"999":1,"1033":1,"1067":1,"1101":1,"1135":1,"1169":1,"1222":1,"1251":1,"1270":1,"1719":1},"1":{"783":1,"784":1,"786":1,"787":1,"809":1,"837":1,"867":1,"897":1,"932":1,"966":1,"1000":1,"1034":1,"1068":1,"1102":1,"1136":1,"1170":1,"1223":1,"1252":1,"1253":1,"1271":1,"1720":1},"2":{"31":4,"62":1,"114":2,"160":1,"174":1,"243":3,"244":2,"249":5,"294":1,"333":2,"481":1,"484":1,"497":1,"498":1,"503":2,"510":1,"512":1,"542":1,"616":1,"617":1,"642":1,"670":1,"671":1,"680":1,"746":2,"750":1,"751":2,"752":3,"753":3,"758":3,"763":2,"771":1,"774":1,"780":1,"782":1,"783":2,"785":1,"786":2,"1251":1,"1252":1,"1257":2,"1271":1,"1275":2,"1362":2,"1406":1,"1407":5,"1408":1,"1422":1,"1442":1,"1445":1,"1529":1,"1616":1,"1719":1,"1832":6,"1845":1,"1947":9,"1948":1,"1949":1,"1950":2,"1956":17,"1957":18,"1974":1,"2009":1,"2047":1,"2052":1,"2068":1,"2277":9,"2278":1,"2279":1,"2283":11,"2501":4,"2581":1,"2679":1,"2707":1,"2735":1,"2765":2,"2886":5,"2935":1,"2936":2,"2937":1}}],["womier",{"2":{"2560":1}}],["wobkey",{"2":{"2560":1}}],["wonder",{"2":{"2473":1,"2942":1}}],["wondering",{"2":{"611":1,"2924":1}}],["wonderland",{"2":{"57":2}}],["won",{"0":{"605":1},"2":{"209":1,"405":1,"555":1,"617":1,"1444":1,"1460":1,"1464":1,"1466":1,"1484":1,"1788":1,"1941":1,"2172":1,"2302":1,"2422":1,"2483":1,"2627":1,"2724":1,"2784":1,"2877":1,"2900":1,"2905":1,"2934":1}}],["woodkeys",{"2":{"154":6,"160":2}}],["wootpatoot",{"2":{"70":1}}],["worst",{"2":{"2563":1}}],["worse",{"2":{"1353":1,"2258":1}}],["worrying",{"0":{"2625":1}}],["worry",{"2":{"1337":1}}],["worth",{"2":{"596":1,"1599":1,"2302":1,"2762":1,"2937":1}}],["worldsemi",{"2":{"1280":1}}],["world",{"0":{"1695":1,"2224":1,"2736":1},"1":{"2737":1,"2738":1,"2739":1},"2":{"487":4,"489":1,"527":1,"1325":1,"1343":1,"1409":2,"1517":3,"1621":2,"1622":1,"1624":1,"1627":2,"1632":19,"1695":1,"2224":2,"2295":1,"2839":1}}],["world1",{"2":{"120":1,"1435":1}}],["wordtypo",{"2":{"1528":1}}],["wordtpyo",{"2":{"1528":1}}],["words",{"2":{"1440":1,"1518":1,"1519":1,"1522":8,"1528":3,"1791":1,"2159":1,"2284":2,"2310":1,"2323":1,"2371":1,"2565":1,"2906":1}}],["word",{"0":{"137":1,"625":1,"1587":1,"1588":1,"1590":1,"1594":1,"1595":1,"2239":1,"2371":1,"2510":1,"2854":1},"1":{"1588":1,"1589":2,"1590":1,"1591":2,"1592":2,"1593":2,"1594":2,"1595":2,"2240":1,"2372":1,"2373":1,"2374":1},"2":{"137":3,"145":3,"176":2,"188":1,"191":2,"199":1,"210":1,"222":3,"249":1,"308":1,"517":1,"1378":1,"1521":1,"1522":3,"1526":1,"1527":1,"1528":2,"1587":14,"1588":10,"1589":2,"1591":8,"1592":7,"1593":9,"1594":11,"1595":6,"1606":1,"2156":1,"2159":2,"2310":2,"2372":2,"2374":1,"2465":1,"2510":3,"2854":7,"2933":1}}],["workman",{"2":{"1436":1,"2880":6}}],["worked",{"2":{"663":1,"2568":1,"2612":1}}],["worker",{"2":{"360":1}}],["workers",{"0":{"360":1},"2":{"359":1,"360":1}}],["workbench",{"2":{"347":1,"2652":2,"2671":1}}],["workarounds",{"0":{"2733":1,"2779":1},"1":{"2734":1,"2735":1,"2780":1,"2781":1},"2":{"1293":1,"2726":1,"2742":1}}],["workaround",{"0":{"206":1},"2":{"145":5,"160":1,"199":2,"206":2,"210":1,"249":2,"294":1,"1478":1,"1512":1,"2075":1}}],["workflows",{"2":{"262":1,"1404":1,"2590":1,"2598":2,"2600":1,"2601":1}}],["workflow",{"0":{"2600":1,"2602":1},"2":{"134":1,"164":1,"176":1,"191":1,"199":1,"201":1,"417":1,"578":1,"614":1,"2399":1,"2591":2,"2600":3,"2602":3,"2603":4}}],["workings",{"0":{"1777":1},"1":{"1778":1,"1779":1,"1780":1},"2":{"1991":1}}],["working",{"0":{"602":1,"1346":1,"1347":1,"1348":1,"1418":1,"2624":1},"1":{"1419":1,"1420":1,"1421":1,"2625":1},"2":{"114":1,"143":1,"377":1,"419":1,"427":1,"446":1,"447":1,"448":1,"456":1,"538":2,"573":1,"611":1,"617":1,"663":2,"746":1,"747":1,"752":1,"756":1,"1317":1,"1356":1,"1373":1,"1409":1,"1536":1,"1945":2,"2031":1,"2172":1,"2268":1,"2312":1,"2324":1,"2400":1,"2425":2,"2427":2,"2428":1,"2441":1,"2453":1,"2501":1,"2558":1,"2576":1,"2592":1,"2594":1,"2610":1,"2646":1,"2651":1,"2656":1,"2676":2,"2707":1,"2719":1}}],["workshop",{"2":{"1365":1}}],["workspaceroot",{"2":{"2676":2}}],["workspace",{"2":{"347":1,"2652":1,"2671":1,"2672":1,"2673":2,"2674":1}}],["works",{"0":{"2431":1,"2459":1},"2":{"100":1,"176":1,"199":1,"222":4,"263":2,"308":1,"341":1,"432":1,"469":1,"538":1,"567":1,"589":1,"662":1,"720":1,"1190":1,"1283":1,"1310":1,"1313":1,"1317":1,"1358":1,"1415":1,"1482":1,"1484":1,"1492":1,"1497":1,"1523":1,"1528":1,"1531":1,"1587":1,"1588":2,"1591":1,"1679":1,"1777":1,"1970":1,"1971":1,"1979":1,"2007":1,"2167":1,"2173":1,"2258":1,"2262":1,"2266":1,"2303":1,"2312":3,"2313":1,"2323":1,"2324":4,"2397":1,"2418":1,"2431":1,"2459":1,"2479":1,"2497":1,"2552":1,"2582":1,"2656":1,"2676":1,"2735":1,"2901":1,"2926":1,"2942":1}}],["work",{"0":{"1356":1,"1363":1,"1366":1,"1367":1,"1492":1,"1519":1},"2":{"10":1,"23":2,"28":1,"49":1,"50":2,"114":1,"131":1,"134":1,"145":1,"153":1,"182":2,"189":2,"191":3,"194":1,"199":2,"210":1,"236":1,"251":2,"266":1,"277":1,"293":1,"305":1,"308":1,"314":1,"373":1,"392":1,"405":1,"410":1,"414":1,"437":1,"492":1,"509":1,"545":1,"572":2,"591":1,"598":1,"608":1,"611":2,"617":3,"662":1,"663":1,"760":1,"794":1,"1194":1,"1200":1,"1201":1,"1310":1,"1312":1,"1315":1,"1346":1,"1363":2,"1365":1,"1378":2,"1407":2,"1416":1,"1421":2,"1444":1,"1451":1,"1456":1,"1466":3,"1484":4,"1497":3,"1513":1,"1516":1,"1610":1,"1613":1,"1670":1,"1674":1,"1781":2,"1824":1,"1828":1,"1913":1,"1914":1,"1936":1,"1956":1,"1975":1,"1979":1,"1980":1,"1989":1,"1994":2,"2001":1,"2181":1,"2185":1,"2254":1,"2286":1,"2291":1,"2294":1,"2303":1,"2310":1,"2318":1,"2322":1,"2384":1,"2386":1,"2403":1,"2404":1,"2410":1,"2424":1,"2427":1,"2440":2,"2449":1,"2457":2,"2459":1,"2466":1,"2474":1,"2489":1,"2492":1,"2546":1,"2566":1,"2579":1,"2587":1,"2610":1,"2612":1,"2626":1,"2627":1,"2629":1,"2643":1,"2655":1,"2660":1,"2676":1,"2678":1,"2734":1,"2735":1,"2750":1,"2901":1,"2912":1,"2913":1,"2926":1,"2930":1}}],["wouldn",{"2":{"1610":1,"2942":1}}],["would",{"2":{"11":1,"73":1,"98":1,"164":1,"194":3,"263":1,"293":1,"305":1,"314":1,"376":1,"387":1,"424":1,"536":1,"537":1,"542":1,"562":1,"586":1,"587":1,"589":1,"611":1,"668":1,"700":1,"717":4,"718":2,"722":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1200":1,"1201":1,"1212":1,"1249":1,"1281":1,"1296":1,"1300":1,"1339":1,"1369":1,"1375":2,"1409":1,"1415":1,"1417":3,"1419":1,"1442":4,"1447":1,"1472":1,"1473":1,"1486":1,"1511":2,"1513":1,"1522":2,"1532":2,"1550":1,"1551":1,"1596":1,"1598":1,"1602":1,"1619":1,"1662":1,"1679":1,"1775":1,"1781":1,"1824":1,"1844":1,"1847":1,"1917":1,"1930":1,"1985":1,"2002":1,"2004":2,"2006":2,"2041":1,"2066":1,"2070":1,"2074":1,"2170":1,"2179":1,"2184":1,"2185":1,"2186":1,"2204":1,"2293":3,"2295":1,"2296":1,"2303":1,"2310":2,"2324":1,"2368":1,"2374":1,"2416":1,"2459":2,"2548":1,"2552":2,"2565":1,"2566":4,"2576":1,"2622":2,"2669":1,"2690":1,"2694":1,"2721":1,"2734":1,"2750":3,"2775":1,"2788":2,"2895":1,"2911":2,"2912":1,"2913":1,"2936":1,"2940":3}}],["whlr",{"2":{"1927":1,"2159":1,"2521":1}}],["whll",{"2":{"1927":1,"2159":1,"2521":1}}],["whld",{"2":{"1661":1,"1927":1,"2159":1,"2521":1}}],["whlu",{"2":{"1661":1,"1927":1,"2159":1,"2521":1}}],["wh",{"2":{"220":2}}],["why",{"0":{"1490":1,"1491":1,"2403":1,"2431":1,"2730":1,"2732":1,"2924":1,"2925":1},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"2731":1,"2732":1},"2":{"173":1,"424":1,"510":1,"512":1,"539":1,"857":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1375":1,"1421":1,"2473":1,"2726":1,"2734":2,"2844":1,"2924":1,"2942":1}}],["whom",{"2":{"2503":1,"2542":1}}],["whoeveryouare",{"2":{"2398":3}}],["whose",{"2":{"487":1,"2290":1,"2905":1}}],["who",{"2":{"119":2,"164":1,"166":1,"173":3,"209":1,"220":1,"231":1,"234":1,"279":1,"527":1,"536":1,"559":1,"616":1,"662":1,"663":1,"1434":1,"1844":1,"2066":1,"2324":1,"2440":1,"2445":1,"2453":2,"2559":1,"2562":2,"2573":2,"2728":1}}],["whole",{"0":{"477":1,"608":1},"2":{"116":1,"263":1,"514":1,"555":1,"558":1,"1339":1,"1378":1,"1522":1,"1532":1,"1675":1,"1955":1,"2372":1,"2422":1,"2427":1,"2459":1,"2906":1,"2924":1,"2940":1}}],["whatever",{"2":{"559":3,"630":1,"1347":1,"1419":1,"1432":1,"1949":1,"2176":1,"2270":1,"2279":1,"2592":1,"2612":1,"2633":1,"2842":1,"2905":1}}],["what",{"0":{"394":1,"397":1,"409":1,"603":1,"604":1,"619":1,"1332":1,"1335":1,"1336":1,"1339":1,"1340":1,"1342":1,"1343":1,"1359":1,"1667":1,"2461":1,"2469":1,"2470":1,"2471":1},"1":{"410":1,"411":1,"412":1},"2":{"50":1,"99":1,"119":2,"182":1,"228":1,"246":1,"251":1,"254":1,"358":1,"492":1,"503":1,"519":1,"531":2,"573":1,"584":1,"596":1,"597":1,"607":1,"613":1,"624":1,"631":2,"643":1,"659":1,"663":1,"673":1,"686":1,"718":1,"1333":1,"1358":1,"1362":1,"1379":1,"1389":1,"1390":1,"1415":1,"1421":2,"1422":2,"1438":1,"1440":1,"1478":1,"1531":1,"1532":1,"1603":1,"1681":1,"1775":2,"1780":1,"1783":1,"1840":3,"1942":1,"1955":1,"2060":3,"2163":1,"2181":1,"2266":1,"2293":1,"2301":1,"2302":1,"2303":1,"2310":1,"2312":1,"2398":1,"2416":1,"2418":1,"2423":1,"2430":1,"2445":1,"2447":1,"2459":3,"2466":1,"2467":1,"2469":2,"2472":1,"2490":2,"2496":1,"2554":1,"2580":1,"2609":1,"2610":1,"2621":1,"2626":1,"2631":1,"2633":1,"2691":1,"2707":1,"2718":1,"2721":2,"2723":1,"2750":1,"2776":1,"2783":1,"2862":1,"2903":2,"2930":1,"2936":1}}],["wheatfield",{"2":{"144":2}}],["wheels",{"2":{"1979":2}}],["wheel",{"2":{"112":1,"210":1,"285":1,"320":1,"564":1,"1927":8,"1929":12,"1930":12,"1931":1,"1933":1,"1934":3,"1978":2,"1979":5,"2065":1,"2159":2,"2173":2,"2521":8,"2866":1}}],["whereas",{"2":{"649":1,"692":2,"717":1,"1635":1,"2905":1}}],["wherever",{"2":{"553":1,"1617":1,"2862":1,"2895":1,"2897":1}}],["where",{"0":{"610":1,"1333":1},"2":{"94":1,"99":1,"134":1,"151":1,"191":1,"194":1,"199":1,"222":1,"231":1,"249":1,"266":1,"293":1,"294":1,"305":1,"314":1,"328":1,"359":1,"431":10,"503":1,"515":1,"539":1,"541":1,"557":1,"559":2,"568":1,"583":1,"614":2,"631":2,"635":1,"746":1,"800":1,"855":1,"887":1,"919":1,"920":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1091":1,"1124":1,"1125":1,"1158":1,"1193":1,"1196":2,"1200":1,"1201":1,"1204":1,"1214":1,"1284":1,"1375":1,"1377":1,"1378":1,"1413":2,"1422":1,"1487":1,"1519":1,"1532":1,"1611":1,"1679":1,"1714":1,"1716":1,"1732":1,"1751":1,"1777":1,"1840":2,"1849":1,"1942":1,"1977":1,"1987":1,"2060":2,"2072":1,"2159":2,"2191":9,"2194":2,"2205":1,"2293":2,"2322":2,"2323":1,"2407":2,"2410":1,"2414":1,"2422":2,"2423":1,"2425":1,"2427":1,"2445":1,"2446":1,"2459":1,"2496":1,"2501":1,"2516":1,"2555":1,"2556":1,"2578":2,"2587":1,"2607":1,"2631":2,"2655":1,"2694":1,"2708":1,"2709":1,"2713":1,"2719":1,"2721":6,"2722":1,"2723":1,"2750":2,"2769":1,"2771":1,"2772":1,"2775":2,"2881":1,"2916":1,"2919":1,"2926":1,"2928":2,"2930":1,"2940":1,"2942":1}}],["whether",{"2":{"49":1,"202":1,"234":1,"410":1,"494":1,"538":1,"637":2,"649":1,"743":1,"755":1,"760":1,"763":1,"1278":1,"1300":1,"1375":1,"1493":1,"1511":1,"1519":2,"1538":1,"1639":1,"1699":2,"1703":2,"1717":1,"1720":1,"1722":1,"1741":1,"1775":1,"1801":1,"1805":1,"1826":2,"1832":1,"1840":1,"1931":1,"2060":1,"2217":3,"2265":1,"2269":1,"2293":1,"2303":2,"2310":1,"2312":1,"2320":1,"2353":1,"2496":1,"2560":1,"2678":1,"2743":1,"2747":1,"2749":1,"2750":1,"2760":1,"2850":1,"2865":4,"2919":1}}],["whenever",{"2":{"263":1,"338":3,"397":2,"629":1,"641":1,"645":1,"649":1,"670":1,"752":1,"753":1,"1200":1,"1440":1,"1523":1,"1624":1,"1660":1,"1985":1,"2004":1,"2064":1,"2183":1,"2187":1,"2268":1,"2295":1,"2372":1,"2467":1,"2468":1,"2552":1,"2583":1,"2590":1,"2645":1,"2750":1,"2933":1}}],["when",{"0":{"395":1,"417":1,"1345":1,"2005":1},"1":{"396":1},"2":{"11":1,"28":1,"49":1,"50":1,"58":1,"65":2,"74":1,"92":2,"93":1,"94":1,"107":1,"111":1,"114":6,"133":1,"134":2,"145":1,"160":1,"176":2,"191":5,"195":1,"199":7,"210":5,"222":3,"230":1,"233":1,"234":2,"236":3,"240":1,"241":1,"246":1,"247":1,"249":4,"253":1,"263":1,"266":1,"270":1,"281":1,"289":1,"294":3,"297":1,"303":1,"307":1,"308":2,"312":1,"317":2,"328":2,"333":1,"360":1,"368":1,"387":1,"393":1,"397":1,"398":1,"417":1,"420":1,"424":2,"450":2,"451":2,"473":2,"483":1,"488":1,"490":1,"492":1,"493":1,"497":1,"498":1,"504":2,"510":3,"514":2,"516":1,"522":1,"524":2,"525":2,"531":1,"534":1,"536":1,"538":1,"539":1,"553":1,"559":2,"562":1,"563":4,"567":2,"568":16,"570":1,"579":1,"583":1,"584":1,"586":1,"596":1,"598":1,"599":1,"613":1,"614":1,"616":1,"617":1,"622":1,"623":1,"625":2,"627":1,"628":1,"629":3,"635":1,"643":1,"646":2,"649":1,"663":1,"664":1,"666":2,"667":1,"672":1,"679":1,"680":1,"682":1,"684":1,"685":2,"696":1,"716":2,"743":1,"746":1,"760":1,"1190":1,"1201":1,"1244":1,"1282":1,"1293":1,"1294":1,"1312":1,"1313":2,"1315":1,"1324":2,"1326":2,"1328":1,"1329":1,"1340":2,"1342":1,"1347":1,"1359":1,"1363":2,"1365":1,"1374":1,"1378":1,"1405":1,"1407":4,"1409":2,"1410":1,"1413":4,"1416":5,"1417":1,"1418":1,"1419":1,"1420":2,"1421":2,"1430":1,"1434":1,"1436":1,"1438":1,"1440":6,"1449":1,"1457":1,"1458":1,"1462":2,"1478":1,"1479":13,"1480":17,"1491":1,"1492":2,"1493":1,"1506":1,"1511":2,"1513":1,"1522":2,"1527":4,"1529":1,"1538":1,"1539":1,"1540":1,"1544":1,"1552":1,"1579":1,"1581":1,"1583":1,"1584":1,"1587":1,"1589":1,"1591":1,"1594":1,"1595":3,"1596":1,"1598":1,"1605":1,"1606":2,"1607":1,"1612":1,"1616":2,"1619":1,"1621":1,"1655":1,"1656":2,"1658":3,"1659":1,"1664":1,"1666":2,"1668":2,"1675":4,"1678":1,"1679":1,"1681":1,"1684":6,"1728":1,"1730":1,"1733":1,"1736":1,"1760":1,"1761":4,"1764":1,"1768":1,"1770":1,"1771":1,"1773":1,"1775":1,"1776":4,"1778":1,"1779":2,"1780":2,"1785":2,"1791":2,"1794":1,"1795":1,"1796":1,"1822":1,"1824":1,"1827":1,"1830":1,"1831":2,"1835":1,"1846":1,"1928":1,"1929":1,"1931":2,"1932":1,"1934":1,"1938":1,"1940":3,"1941":3,"1946":1,"1951":2,"1955":1,"1956":2,"1962":1,"1968":1,"1978":1,"1979":3,"1980":1,"1982":1,"1983":2,"1985":1,"1987":2,"1992":4,"1993":4,"2001":1,"2002":1,"2004":1,"2005":1,"2006":1,"2007":4,"2008":1,"2041":1,"2044":1,"2054":1,"2069":1,"2074":1,"2159":1,"2165":2,"2167":1,"2168":1,"2169":2,"2171":1,"2174":10,"2175":1,"2177":1,"2178":1,"2182":5,"2184":1,"2185":2,"2203":2,"2220":1,"2224":1,"2248":2,"2250":14,"2251":1,"2252":17,"2253":4,"2254":1,"2265":1,"2266":2,"2267":1,"2269":1,"2271":7,"2272":1,"2277":1,"2283":4,"2287":1,"2293":2,"2297":4,"2298":1,"2301":1,"2302":10,"2303":4,"2310":4,"2311":4,"2312":1,"2318":1,"2320":3,"2321":6,"2323":2,"2333":1,"2335":1,"2370":4,"2372":6,"2377":1,"2384":1,"2399":1,"2401":1,"2410":5,"2415":1,"2418":1,"2420":1,"2421":3,"2424":1,"2427":2,"2443":1,"2446":2,"2448":1,"2452":1,"2453":1,"2456":1,"2459":6,"2468":1,"2474":1,"2495":1,"2496":1,"2502":1,"2503":2,"2509":3,"2512":2,"2516":3,"2523":58,"2525":10,"2531":14,"2532":4,"2542":2,"2546":1,"2551":1,"2554":1,"2561":1,"2565":62,"2566":1,"2569":1,"2572":2,"2578":1,"2580":1,"2587":1,"2603":1,"2609":1,"2615":1,"2622":1,"2626":3,"2627":1,"2631":1,"2644":1,"2645":6,"2652":2,"2665":1,"2672":1,"2675":2,"2678":1,"2700":1,"2708":1,"2715":1,"2718":1,"2721":5,"2723":2,"2746":1,"2748":4,"2749":4,"2750":1,"2757":2,"2770":1,"2777":2,"2806":1,"2814":1,"2815":1,"2854":1,"2864":1,"2865":1,"2870":2,"2871":1,"2873":1,"2877":1,"2879":1,"2892":1,"2895":1,"2896":1,"2897":1,"2905":3,"2906":4,"2912":2,"2913":2,"2914":1,"2915":2,"2917":3,"2918":3,"2927":2,"2929":1,"2932":2,"2942":1}}],["whistles",{"2":{"2721":1}}],["whitefacemountain",{"2":{"277":1}}],["whitefox",{"2":{"154":2,"236":1}}],["white",{"2":{"266":1,"490":1,"492":2,"587":1,"1285":5,"1407":1,"1938":1,"2067":2,"2191":1,"2198":3,"2770":4}}],["whitespace",{"2":{"222":4,"510":1,"511":1,"613":1,"673":1,"1521":1,"2556":1}}],["whilst",{"2":{"198":1,"458":1,"2562":1,"2688":1}}],["while",{"0":{"320":1},"2":{"21":1,"37":1,"49":1,"73":1,"191":1,"194":3,"199":2,"214":1,"294":1,"328":1,"387":1,"402":1,"553":1,"562":1,"616":1,"625":1,"647":1,"663":1,"683":3,"711":1,"720":1,"1340":1,"1345":1,"1348":1,"1359":2,"1378":1,"1392":1,"1402":1,"1404":1,"1406":1,"1409":3,"1413":2,"1434":1,"1437":1,"1445":1,"1464":1,"1484":1,"1522":1,"1523":1,"1527":1,"1544":1,"1586":1,"1587":2,"1591":2,"1594":2,"1606":1,"1655":1,"1658":1,"1672":1,"1675":1,"1696":1,"1760":1,"1775":1,"1778":3,"1779":1,"1782":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1939":1,"1956":7,"1987":1,"1989":1,"1993":1,"1997":1,"1999":1,"2006":1,"2034":3,"2036":4,"2067":1,"2156":1,"2164":1,"2198":1,"2203":1,"2206":1,"2210":1,"2215":1,"2252":1,"2265":1,"2268":1,"2283":5,"2289":2,"2293":1,"2297":3,"2310":1,"2312":1,"2382":1,"2383":1,"2397":2,"2398":1,"2410":2,"2411":1,"2427":1,"2432":1,"2441":1,"2532":3,"2549":1,"2556":2,"2557":1,"2564":1,"2574":1,"2579":1,"2580":1,"2605":3,"2658":1,"2747":1,"2757":1,"2765":1,"2813":1,"2824":1,"2827":1,"2832":1,"2844":1,"2872":1,"2902":1,"2904":1,"2906":3,"2915":1,"2920":1,"2921":1,"2927":1,"2929":1,"2938":1}}],["whichever",{"2":{"283":1,"1486":1,"2051":1,"2293":1}}],["which",{"0":{"1326":1,"1327":1,"1594":1},"2":{"0":1,"9":1,"19":1,"27":1,"30":1,"33":1,"39":1,"45":1,"49":3,"50":1,"52":1,"69":1,"108":1,"118":1,"119":1,"134":1,"139":1,"143":1,"160":1,"173":1,"191":1,"194":1,"203":2,"212":1,"220":1,"233":1,"236":1,"246":1,"265":1,"288":3,"312":1,"320":1,"369":1,"373":2,"383":1,"387":1,"390":2,"393":1,"397":1,"414":1,"458":1,"472":1,"473":1,"487":1,"490":1,"510":1,"524":1,"527":1,"531":1,"544":1,"553":3,"560":1,"561":2,"562":2,"567":1,"570":1,"586":3,"597":1,"613":1,"615":1,"617":1,"631":1,"643":1,"646":1,"672":1,"680":1,"683":1,"692":3,"711":1,"712":1,"717":3,"718":2,"750":1,"757":1,"762":1,"765":2,"794":1,"1190":1,"1197":1,"1204":1,"1205":1,"1206":1,"1243":1,"1245":2,"1264":1,"1266":1,"1283":1,"1284":1,"1285":1,"1288":1,"1317":1,"1327":1,"1328":1,"1345":1,"1346":2,"1354":1,"1359":1,"1362":3,"1365":1,"1375":1,"1376":1,"1378":1,"1409":1,"1410":2,"1416":2,"1417":1,"1430":1,"1438":1,"1440":2,"1442":3,"1473":1,"1474":1,"1475":1,"1477":1,"1478":1,"1481":2,"1485":3,"1492":1,"1495":1,"1497":1,"1498":1,"1500":1,"1502":1,"1504":1,"1509":1,"1513":1,"1517":1,"1529":1,"1540":2,"1542":1,"1583":2,"1587":1,"1589":1,"1594":2,"1604":1,"1611":1,"1612":1,"1616":1,"1620":3,"1621":2,"1622":1,"1627":1,"1628":2,"1633":1,"1650":1,"1651":1,"1653":2,"1658":1,"1659":1,"1661":1,"1664":2,"1674":1,"1677":1,"1732":1,"1764":1,"1765":1,"1766":1,"1767":1,"1775":3,"1778":1,"1780":1,"1781":1,"1782":1,"1783":1,"1824":1,"1827":1,"1837":1,"1846":3,"1929":2,"1930":3,"1933":1,"1936":2,"1937":2,"1949":1,"1950":1,"1955":3,"1956":1,"1964":1,"1967":1,"1968":2,"1979":3,"1983":3,"1992":1,"2041":1,"2051":1,"2052":1,"2069":5,"2156":1,"2159":1,"2168":1,"2170":1,"2175":3,"2180":1,"2181":1,"2203":1,"2215":1,"2224":1,"2263":2,"2271":2,"2279":1,"2280":1,"2296":1,"2302":4,"2310":1,"2312":2,"2318":1,"2319":1,"2322":2,"2372":1,"2381":1,"2382":1,"2384":1,"2398":1,"2401":3,"2403":1,"2410":2,"2411":1,"2420":3,"2424":2,"2441":1,"2444":1,"2447":1,"2448":1,"2459":3,"2469":1,"2492":1,"2494":1,"2497":2,"2498":1,"2516":1,"2551":1,"2555":1,"2556":1,"2559":2,"2560":1,"2561":3,"2562":2,"2566":2,"2585":1,"2590":1,"2609":1,"2621":1,"2628":1,"2630":3,"2632":3,"2633":2,"2638":1,"2660":1,"2676":1,"2677":1,"2683":1,"2685":1,"2687":1,"2695":2,"2696":1,"2700":3,"2702":1,"2703":1,"2704":1,"2711":1,"2721":1,"2722":1,"2744":2,"2746":1,"2749":2,"2750":4,"2757":1,"2760":1,"2770":2,"2775":4,"2776":4,"2806":2,"2816":1,"2834":1,"2837":1,"2850":1,"2862":1,"2864":4,"2865":1,"2870":5,"2871":6,"2873":1,"2875":1,"2877":1,"2880":1,"2882":1,"2886":2,"2894":1,"2905":1,"2906":2,"2914":1,"2921":1,"2923":1,"2924":1,"2927":1,"2928":1,"2929":1,"2930":1,"2933":1,"2934":1,"2936":1,"2942":3}}],["waz",{"2":{"2288":1,"2289":1}}],["warranty",{"2":{"1461":2,"2725":2}}],["warn",{"2":{"114":1,"145":1,"667":1,"2501":1}}],["warnings",{"0":{"2456":1,"2683":1},"2":{"95":1,"145":1,"170":1,"191":1,"222":1,"236":2,"308":1,"317":1,"408":1,"2410":1,"2456":2,"2897":1}}],["warning",{"2":{"23":1,"50":1,"107":1,"114":1,"134":1,"138":1,"139":1,"145":1,"160":1,"176":2,"182":1,"199":3,"228":1,"236":4,"266":1,"308":1,"346":3,"373":1,"490":1,"594":1,"595":1,"597":1,"598":1,"631":1,"667":1,"676":2,"683":1,"685":1,"745":1,"747":1,"750":1,"751":1,"752":1,"756":1,"1190":1,"1194":1,"1294":1,"1404":1,"1434":1,"1457":2,"1460":1,"1479":1,"1529":1,"1583":1,"1616":1,"1621":1,"1628":1,"1660":1,"1662":1,"1782":1,"1829":1,"1954":1,"1956":2,"1977":1,"1978":2,"1979":2,"1980":1,"2050":1,"2174":1,"2177":1,"2184":1,"2212":1,"2254":2,"2258":1,"2269":1,"2270":1,"2287":1,"2291":1,"2302":1,"2316":1,"2324":1,"2403":1,"2478":1,"2480":1,"2482":1,"2483":1,"2487":1,"2496":2,"2578":1,"2582":1,"2583":1,"2584":2,"2587":1,"2599":1,"2600":1,"2609":2,"2615":1,"2619":1,"2620":1,"2630":1,"2644":1,"2676":1,"2693":1,"2720":1,"2745":1,"2746":1,"2749":4,"2750":3,"2754":1,"2775":2,"2894":1,"2914":1,"2919":1,"2921":1,"2941":1}}],["watch",{"2":{"1362":1,"2180":1,"2582":1,"2934":1}}],["watchdog",{"2":{"191":1,"210":2,"294":1,"568":3,"2271":5,"2873":2}}],["waffling60",{"2":{"236":1}}],["waffling80",{"2":{"222":1}}],["waveshare",{"2":{"2749":3}}],["wavetable",{"2":{"1474":1}}],["waveforms",{"2":{"1680":1}}],["waveform",{"0":{"1680":1},"2":{"249":1,"1474":5,"1482":2,"1674":2,"1680":2}}],["wave",{"2":{"210":1,"266":1,"718":1,"1474":3,"1678":1,"1843":8,"2063":5,"2887":1}}],["walk",{"2":{"2398":1,"2553":1,"2614":1,"2625":1,"2723":1}}],["walter",{"2":{"191":1}}],["wallaby",{"2":{"154":2}}],["wako",{"2":{"1340":1,"2405":1}}],["waka60",{"2":{"266":1}}],["wakizashi40",{"2":{"222":1}}],["wakizashi",{"2":{"160":1}}],["wakes",{"2":{"646":1}}],["wakeup",{"0":{"647":1},"2":{"112":1,"114":1,"176":1,"199":2,"210":3,"236":1,"559":2,"572":1,"645":2,"646":1,"647":2,"648":2,"1632":3,"2750":1,"2875":2}}],["wake",{"0":{"646":1,"648":1,"1367":1,"1373":1},"1":{"647":1,"648":1},"2":{"62":1,"73":1,"231":1,"328":1,"559":1,"572":1,"1348":1,"1367":2,"2503":3,"2542":3}}],["wanted",{"2":{"1465":1,"1466":1,"1493":1,"2315":1}}],["wanten",{"2":{"154":2}}],["wanting",{"2":{"1249":1,"2310":1,"2424":1,"2706":1,"2782":1}}],["wants",{"2":{"210":1,"1512":1,"2573":1,"2629":1,"2932":1}}],["want",{"0":{"608":1,"1338":1,"1339":1},"1":{"1339":1},"2":{"125":1,"173":1,"185":1,"194":1,"232":1,"307":1,"397":1,"433":1,"472":1,"508":1,"509":1,"514":1,"531":1,"536":1,"538":1,"559":3,"562":3,"568":2,"594":1,"595":1,"596":1,"598":1,"607":1,"611":1,"624":1,"628":1,"631":5,"638":1,"643":1,"662":1,"666":1,"714":1,"715":1,"760":1,"1204":1,"1205":1,"1316":1,"1362":1,"1375":3,"1389":1,"1393":1,"1406":2,"1407":7,"1408":1,"1416":1,"1419":2,"1420":1,"1421":1,"1432":1,"1434":1,"1440":2,"1441":1,"1442":1,"1443":1,"1445":1,"1449":1,"1461":1,"1462":2,"1464":2,"1465":1,"1466":5,"1477":1,"1486":2,"1492":1,"1519":1,"1523":1,"1529":1,"1545":2,"1583":2,"1606":4,"1613":1,"1618":1,"1657":1,"1760":1,"1782":1,"1790":1,"1838":1,"1840":2,"1844":1,"1846":1,"1849":1,"1917":1,"1929":1,"1931":1,"1938":1,"1942":1,"1949":1,"1956":1,"1968":1,"2004":1,"2041":1,"2058":1,"2060":2,"2066":1,"2069":1,"2072":1,"2074":1,"2075":1,"2176":1,"2182":1,"2184":2,"2199":1,"2200":1,"2204":1,"2214":1,"2253":1,"2257":1,"2273":1,"2279":1,"2283":1,"2286":2,"2290":1,"2293":1,"2294":1,"2302":4,"2303":1,"2310":4,"2324":1,"2374":2,"2398":1,"2401":1,"2410":2,"2411":1,"2412":1,"2416":1,"2418":1,"2420":1,"2422":1,"2423":2,"2424":1,"2428":1,"2453":1,"2454":1,"2473":1,"2475":1,"2489":1,"2551":1,"2553":1,"2577":1,"2586":1,"2587":1,"2588":1,"2604":1,"2607":1,"2621":4,"2628":1,"2629":1,"2630":1,"2633":1,"2644":2,"2667":1,"2673":1,"2676":1,"2683":1,"2694":1,"2702":1,"2724":1,"2747":1,"2784":1,"2787":2,"2788":2,"2789":1,"2792":1,"2879":1,"2883":2,"2905":1,"2919":1,"2921":1,"2934":1,"2937":1,"2942":2}}],["waits",{"2":{"572":1,"656":1,"1410":1,"1449":2,"1724":1,"1726":1,"2387":1,"2392":1,"2906":1}}],["waiting",{"2":{"176":1,"191":1,"230":1,"371":1,"568":1,"580":1,"1326":1,"1329":2,"1449":1,"1656":1,"2271":1,"2272":1,"2584":1}}],["wait",{"2":{"92":1,"94":2,"112":1,"113":1,"114":4,"160":1,"176":3,"210":2,"263":1,"266":1,"308":1,"392":1,"572":2,"611":1,"645":1,"655":1,"769":2,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"1410":1,"1456":1,"1585":1,"1846":1,"2039":1,"2069":1,"2178":1,"2180":6,"2221":1,"2230":1,"2234":1,"2302":1,"2308":4,"2310":1,"2320":1,"2376":1,"2379":2,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":4,"2395":4,"2397":4,"2605":1,"2719":1,"2747":1,"2865":1,"2873":2,"2875":3,"2914":1,"2915":1}}],["waaffle",{"2":{"86":4}}],["wasn",{"2":{"1606":1,"2907":1}}],["wasting",{"2":{"487":1}}],["wasdat",{"2":{"57":4,"145":1}}],["was",{"0":{"408":1},"1":{"409":1,"410":1,"411":1,"412":1},"2":{"6":1,"8":1,"10":1,"11":1,"113":1,"125":1,"174":1,"179":1,"185":1,"189":2,"194":1,"202":1,"203":1,"243":1,"245":1,"251":1,"255":1,"263":1,"271":1,"293":1,"305":1,"314":1,"331":1,"341":1,"380":1,"383":1,"408":1,"417":2,"529":1,"562":1,"586":1,"602":1,"613":2,"663":1,"720":1,"1201":1,"1250":1,"1340":1,"1347":2,"1407":1,"1519":1,"1529":1,"1611":2,"1775":1,"1778":1,"1780":1,"1804":1,"1822":1,"1942":1,"1955":2,"1956":7,"2005":1,"2156":1,"2160":4,"2274":2,"2283":4,"2288":1,"2303":2,"2312":1,"2359":1,"2361":1,"2422":1,"2457":1,"2459":1,"2555":1,"2560":1,"2600":1,"2621":1,"2627":4,"2633":1,"2678":1,"2706":1,"2748":1,"2796":1}}],["ways",{"2":{"303":1,"306":1,"315":1,"393":1,"489":1,"494":1,"495":1,"496":1,"506":1,"566":1,"597":1,"614":1,"617":1,"681":1,"1345":1,"1406":1,"1409":2,"1416":1,"1417":1,"1421":1,"1434":1,"1523":1,"1587":1,"1829":1,"1995":1,"2263":1,"2285":1,"2415":2,"2428":1,"2453":1,"2465":1,"2552":1,"2605":1,"2625":2}}],["way",{"2":{"0":1,"9":1,"19":1,"39":1,"50":1,"52":1,"120":1,"124":1,"139":2,"194":2,"210":1,"254":1,"285":2,"393":1,"410":1,"434":1,"490":1,"493":2,"540":1,"591":1,"617":2,"641":1,"693":1,"747":1,"1280":1,"1308":1,"1309":1,"1406":1,"1418":1,"1427":1,"1458":1,"1464":1,"1466":2,"1472":1,"1485":1,"1528":1,"1532":2,"1535":1,"1583":1,"1617":1,"1735":1,"1760":1,"1780":1,"1782":1,"1789":1,"1840":1,"1929":1,"1978":1,"1979":1,"1983":1,"1987":1,"2051":1,"2060":1,"2162":1,"2171":1,"2270":1,"2291":1,"2324":1,"2372":1,"2384":1,"2418":1,"2420":1,"2459":3,"2465":1,"2492":1,"2497":1,"2552":1,"2555":1,"2562":1,"2587":1,"2606":1,"2627":2,"2629":1,"2633":1,"2656":1,"2683":1,"2700":1,"2719":1,"2724":1,"2743":1,"2775":1,"2776":1,"2865":1,"2879":1,"2895":1,"2917":1,"2921":1,"2923":1,"2937":1,"2940":1}}],["wikipedia",{"2":{"1375":1,"1929":1,"2459":1}}],["wiki",{"2":{"572":1,"2030":1,"2292":1}}],["wipe",{"2":{"2791":1}}],["wiper",{"2":{"1732":1}}],["wip",{"2":{"277":1}}],["wiping",{"0":{"2791":1},"2":{"191":1,"2420":1}}],["witf",{"2":{"222":1}}],["within",{"2":{"31":1,"34":1,"50":1,"67":1,"75":1,"86":1,"94":1,"102":1,"122":1,"124":1,"126":1,"132":1,"133":1,"134":1,"144":1,"152":2,"154":1,"160":2,"168":1,"181":1,"190":1,"191":1,"195":1,"197":1,"199":1,"210":1,"212":1,"231":1,"236":2,"254":1,"266":1,"285":2,"288":1,"293":1,"297":1,"305":1,"307":1,"308":1,"312":1,"314":1,"317":1,"373":1,"393":1,"416":1,"430":1,"489":1,"492":1,"517":1,"543":1,"568":1,"637":2,"667":1,"668":1,"746":1,"747":1,"752":1,"1324":1,"1385":1,"1417":1,"1425":1,"1445":1,"1478":1,"1481":1,"1492":1,"1522":2,"1584":1,"1591":1,"1596":1,"1606":1,"1608":1,"1609":1,"1616":1,"1620":1,"1621":1,"1622":1,"1624":1,"1628":1,"1639":1,"1675":1,"1844":1,"1859":1,"1861":1,"1939":1,"1964":1,"2066":1,"2085":1,"2087":1,"2167":1,"2174":1,"2255":1,"2260":1,"2271":1,"2303":1,"2310":1,"2311":1,"2379":1,"2406":1,"2407":2,"2411":1,"2474":1,"2503":1,"2542":1,"2552":1,"2587":1,"2591":1,"2656":1,"2689":2,"2714":1,"2721":2,"2744":2,"2766":1,"2769":1,"2861":1,"2877":1,"2895":1,"2896":3,"2901":1,"2912":3,"2913":2,"2914":1,"2915":2,"2918":1,"2928":1,"2929":1,"2933":1}}],["without",{"0":{"2075":1},"2":{"23":1,"49":2,"70":1,"80":1,"112":1,"125":1,"137":2,"164":1,"173":1,"176":1,"185":1,"194":1,"228":1,"273":2,"276":1,"285":1,"308":1,"328":1,"346":1,"408":1,"427":1,"445":1,"471":1,"487":1,"527":1,"538":1,"557":1,"568":1,"572":1,"607":1,"617":1,"639":3,"642":1,"760":1,"1364":1,"1375":4,"1418":1,"1461":2,"1466":1,"1479":1,"1497":1,"1512":4,"1523":1,"1538":1,"1544":1,"1594":1,"1617":1,"1657":1,"1771":1,"1788":2,"1844":1,"1932":1,"1975":1,"1978":1,"1992":1,"2009":1,"2066":1,"2075":1,"2162":1,"2181":1,"2205":1,"2209":2,"2225":1,"2265":1,"2268":1,"2271":1,"2272":1,"2284":1,"2285":1,"2287":1,"2290":1,"2295":1,"2324":2,"2383":1,"2399":1,"2401":2,"2410":2,"2411":1,"2453":1,"2459":1,"2470":1,"2496":1,"2560":32,"2583":1,"2633":1,"2643":1,"2659":1,"2684":1,"2721":1,"2725":2,"2728":1,"2744":1,"2750":4,"2781":1,"2786":1,"2902":1,"2915":1,"2921":3,"2928":1,"2942":1}}],["with",{"0":{"1":1,"27":1,"511":1,"682":1,"1321":1,"1322":1,"1323":1,"1339":1,"1356":1,"1418":1,"1427":1,"1765":1,"1766":1,"1767":1,"1828":1,"1935":1,"2229":1,"2233":1,"2286":1,"2287":1,"2293":1,"2398":1,"2591":1,"2606":1,"2624":1,"2676":1},"1":{"683":1,"684":1,"685":1,"686":1,"1419":1,"1420":1,"1421":1,"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1,"2230":1,"2234":1,"2288":1,"2289":1,"2290":1,"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1,"2607":1,"2608":1,"2625":1},"2":{"1":1,"5":1,"6":2,"7":2,"8":1,"11":1,"25":1,"27":1,"30":2,"31":5,"33":2,"34":2,"36":1,"49":3,"50":1,"60":1,"69":1,"72":1,"77":1,"83":1,"84":1,"86":1,"92":1,"93":1,"98":4,"100":1,"107":1,"111":1,"114":11,"119":2,"123":1,"124":1,"126":1,"131":2,"134":6,"138":1,"139":1,"141":1,"142":1,"145":4,"149":1,"160":7,"163":2,"166":1,"167":1,"172":1,"173":3,"175":2,"176":9,"182":5,"186":1,"189":1,"190":1,"191":6,"194":2,"195":1,"196":1,"198":1,"199":7,"206":1,"209":1,"210":5,"212":1,"222":9,"230":2,"231":2,"236":1,"240":3,"241":1,"243":1,"244":1,"249":8,"253":1,"254":1,"263":1,"264":1,"265":1,"266":4,"268":1,"270":1,"273":3,"274":1,"276":1,"277":1,"279":2,"281":1,"282":1,"283":1,"284":2,"285":7,"288":1,"289":2,"292":1,"293":1,"294":4,"301":1,"302":1,"305":1,"307":1,"308":1,"312":2,"313":1,"314":2,"320":3,"326":1,"327":1,"328":3,"331":1,"338":1,"347":1,"348":2,"350":1,"359":1,"373":2,"378":1,"380":1,"387":2,"396":1,"397":4,"403":1,"405":1,"406":1,"408":1,"413":1,"416":1,"417":2,"419":1,"423":1,"424":1,"427":8,"428":2,"431":1,"432":1,"434":1,"437":2,"446":1,"447":1,"448":1,"457":3,"468":1,"473":3,"485":1,"487":1,"488":1,"492":2,"494":1,"510":2,"512":3,"519":2,"525":2,"529":1,"530":1,"534":1,"536":2,"538":2,"540":2,"542":1,"543":3,"545":1,"546":1,"552":1,"559":7,"562":1,"565":1,"566":3,"567":1,"568":2,"571":1,"572":2,"579":2,"598":2,"602":1,"603":1,"608":1,"609":2,"611":6,"612":2,"613":4,"616":2,"617":3,"619":1,"620":1,"625":2,"641":1,"642":1,"644":1,"663":1,"667":1,"668":1,"670":2,"673":2,"678":1,"681":1,"682":2,"683":2,"684":2,"685":2,"686":2,"690":1,"692":1,"700":1,"711":1,"713":4,"714":1,"716":1,"718":2,"719":2,"722":1,"751":3,"754":1,"758":3,"782":1,"785":1,"788":1,"791":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1189":1,"1190":1,"1194":1,"1197":4,"1200":1,"1201":2,"1202":2,"1204":1,"1206":1,"1207":1,"1212":1,"1244":1,"1269":1,"1281":1,"1283":2,"1285":2,"1308":1,"1309":1,"1312":4,"1313":2,"1315":1,"1316":2,"1329":3,"1330":2,"1332":1,"1333":1,"1336":1,"1339":1,"1340":2,"1345":2,"1356":1,"1359":1,"1362":1,"1363":1,"1365":1,"1368":1,"1369":1,"1374":2,"1375":8,"1377":1,"1378":2,"1385":1,"1387":1,"1392":1,"1395":1,"1397":1,"1398":1,"1402":1,"1403":1,"1406":1,"1407":1,"1409":2,"1410":1,"1412":1,"1413":2,"1414":1,"1416":4,"1418":1,"1419":2,"1425":1,"1427":2,"1429":1,"1432":1,"1433":1,"1440":1,"1442":1,"1443":1,"1444":1,"1449":1,"1450":1,"1451":1,"1456":1,"1457":3,"1458":1,"1459":3,"1461":3,"1466":3,"1468":1,"1469":2,"1471":2,"1472":2,"1473":1,"1474":3,"1476":2,"1478":1,"1479":1,"1480":2,"1484":3,"1492":2,"1493":1,"1494":1,"1497":3,"1512":2,"1516":4,"1517":3,"1519":1,"1521":2,"1526":1,"1529":1,"1532":14,"1533":2,"1547":1,"1548":2,"1583":1,"1586":1,"1588":2,"1589":1,"1591":3,"1594":1,"1596":2,"1597":1,"1598":1,"1599":2,"1603":2,"1604":3,"1606":2,"1609":1,"1612":2,"1613":1,"1614":1,"1616":1,"1619":6,"1621":1,"1622":2,"1627":1,"1628":1,"1629":2,"1630":2,"1633":1,"1639":1,"1650":1,"1654":1,"1656":1,"1658":1,"1659":2,"1660":1,"1661":1,"1665":2,"1666":1,"1672":1,"1675":1,"1678":1,"1680":1,"1682":1,"1683":1,"1684":2,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1691":1,"1733":3,"1734":1,"1735":1,"1736":1,"1737":1,"1760":2,"1764":1,"1770":5,"1771":1,"1773":2,"1775":2,"1776":1,"1780":2,"1781":3,"1782":1,"1788":2,"1824":1,"1828":1,"1834":1,"1837":3,"1840":1,"1844":2,"1845":1,"1847":1,"1849":1,"1913":1,"1928":1,"1930":1,"1934":2,"1935":1,"1940":2,"1942":1,"1947":2,"1948":2,"1949":1,"1951":1,"1954":7,"1955":2,"1956":2,"1962":1,"1963":1,"1964":1,"1968":2,"1972":1,"1974":2,"1976":1,"1978":3,"1979":1,"1980":1,"1987":2,"1989":1,"1991":1,"1992":3,"1995":1,"2000":1,"2001":1,"2037":1,"2041":1,"2044":1,"2047":1,"2050":2,"2052":3,"2060":1,"2063":2,"2065":2,"2066":2,"2068":1,"2070":1,"2072":1,"2073":2,"2075":1,"2156":2,"2159":3,"2160":1,"2162":1,"2165":1,"2166":1,"2167":3,"2170":1,"2171":2,"2172":1,"2174":1,"2180":1,"2182":4,"2185":1,"2199":1,"2202":1,"2203":1,"2212":1,"2214":1,"2218":2,"2221":2,"2227":1,"2229":1,"2231":1,"2233":2,"2246":2,"2247":2,"2249":7,"2251":2,"2252":8,"2253":3,"2257":1,"2260":1,"2265":1,"2266":9,"2267":2,"2268":1,"2270":4,"2271":4,"2272":1,"2273":1,"2279":1,"2282":1,"2283":1,"2284":2,"2285":4,"2286":1,"2287":1,"2291":2,"2294":1,"2301":1,"2302":5,"2303":1,"2309":1,"2310":3,"2312":6,"2317":1,"2319":1,"2320":3,"2323":3,"2324":2,"2367":2,"2368":3,"2375":1,"2376":2,"2377":2,"2378":1,"2379":3,"2380":2,"2381":1,"2382":2,"2383":1,"2384":3,"2386":3,"2387":1,"2388":2,"2389":1,"2390":1,"2391":2,"2392":1,"2393":1,"2395":1,"2397":3,"2398":5,"2401":1,"2404":4,"2405":1,"2410":3,"2411":4,"2415":1,"2416":2,"2417":1,"2418":4,"2420":2,"2421":1,"2424":1,"2425":1,"2427":2,"2438":1,"2442":1,"2443":2,"2451":1,"2458":1,"2459":1,"2461":1,"2468":1,"2470":1,"2472":1,"2474":1,"2475":1,"2476":1,"2479":1,"2483":2,"2489":2,"2492":1,"2497":1,"2498":1,"2499":2,"2516":1,"2534":1,"2545":1,"2548":1,"2550":1,"2551":2,"2553":1,"2555":1,"2556":2,"2560":8,"2561":2,"2562":1,"2565":1,"2568":2,"2569":1,"2570":1,"2575":1,"2576":3,"2577":1,"2580":1,"2582":2,"2583":1,"2585":1,"2591":4,"2592":1,"2593":1,"2594":1,"2595":1,"2598":1,"2600":5,"2601":2,"2606":1,"2607":1,"2610":2,"2612":3,"2621":2,"2622":2,"2626":2,"2627":5,"2628":1,"2630":4,"2632":1,"2633":1,"2644":1,"2645":1,"2646":1,"2648":1,"2652":1,"2655":2,"2660":1,"2661":3,"2662":1,"2664":1,"2671":1,"2673":1,"2676":3,"2677":1,"2678":1,"2680":1,"2683":1,"2684":2,"2685":2,"2687":1,"2688":1,"2689":1,"2691":1,"2705":4,"2707":2,"2711":1,"2712":1,"2714":1,"2718":2,"2719":6,"2720":1,"2721":6,"2722":1,"2723":1,"2725":1,"2726":2,"2728":1,"2729":1,"2731":1,"2739":2,"2743":2,"2746":1,"2748":1,"2749":24,"2750":12,"2751":3,"2754":2,"2757":1,"2760":1,"2765":3,"2769":1,"2770":1,"2772":1,"2773":1,"2776":1,"2777":1,"2780":1,"2791":1,"2807":1,"2810":1,"2820":1,"2821":1,"2828":1,"2843":2,"2844":2,"2847":1,"2862":1,"2864":1,"2871":1,"2877":1,"2878":1,"2879":1,"2883":2,"2888":1,"2889":1,"2890":1,"2895":1,"2896":1,"2898":1,"2901":1,"2902":1,"2905":6,"2907":1,"2912":1,"2913":1,"2914":2,"2915":1,"2918":11,"2919":5,"2921":2,"2923":3,"2924":1,"2926":1,"2927":1,"2930":3,"2931":1,"2938":1,"2939":3,"2941":1,"2942":3}}],["wild",{"2":{"2301":1}}],["wildcard",{"2":{"467":1}}],["wildcards",{"2":{"431":3}}],["wilba",{"2":{"191":1,"199":1,"222":23,"2721":3}}],["willing",{"2":{"2724":1}}],["willoucom",{"2":{"210":1}}],["will",{"0":{"397":1,"2896":1,"2897":1},"2":{"0":1,"5":1,"7":1,"9":1,"10":1,"14":1,"19":1,"21":1,"22":1,"23":3,"39":1,"45":1,"49":1,"52":1,"70":1,"88":3,"89":1,"90":3,"103":1,"104":3,"105":2,"107":1,"110":2,"120":1,"126":1,"127":3,"132":3,"137":1,"138":1,"141":1,"170":3,"182":2,"195":2,"198":1,"201":3,"206":1,"208":1,"212":1,"214":2,"217":1,"220":3,"228":1,"230":1,"240":2,"255":1,"256":1,"262":1,"263":2,"265":3,"272":1,"273":1,"275":1,"276":1,"283":1,"303":1,"306":1,"307":5,"327":1,"332":1,"347":1,"358":1,"372":1,"378":1,"387":3,"390":2,"392":1,"393":2,"397":1,"401":1,"406":5,"411":1,"414":2,"420":1,"421":1,"422":1,"423":1,"427":2,"428":1,"430":1,"434":1,"435":1,"438":1,"440":1,"442":2,"443":1,"444":1,"461":1,"472":1,"481":1,"486":2,"487":4,"488":1,"490":1,"492":2,"498":1,"503":2,"504":1,"505":1,"507":2,"509":1,"511":3,"525":2,"531":2,"535":1,"544":1,"553":1,"554":1,"558":1,"559":1,"560":1,"561":1,"563":2,"569":1,"572":2,"576":1,"579":2,"582":1,"583":1,"584":1,"587":1,"590":1,"591":1,"594":1,"595":1,"597":1,"598":2,"599":1,"611":2,"613":1,"617":2,"619":1,"624":1,"625":1,"627":1,"628":3,"631":1,"637":4,"641":1,"643":1,"645":1,"647":2,"649":3,"650":1,"651":1,"654":1,"655":3,"656":1,"657":1,"663":1,"664":1,"670":1,"672":2,"673":2,"674":1,"682":1,"683":2,"685":2,"696":3,"698":2,"718":1,"720":1,"743":4,"746":1,"747":1,"751":3,"754":1,"763":1,"794":1,"1200":1,"1201":1,"1206":2,"1249":1,"1262":1,"1273":1,"1278":1,"1285":1,"1289":1,"1294":1,"1297":1,"1309":1,"1312":1,"1316":1,"1317":1,"1319":1,"1326":1,"1329":2,"1333":1,"1344":1,"1345":4,"1362":2,"1363":1,"1364":1,"1365":1,"1374":2,"1377":1,"1385":1,"1387":1,"1395":1,"1404":1,"1407":6,"1409":4,"1410":2,"1412":1,"1416":3,"1417":2,"1419":2,"1421":3,"1425":1,"1427":1,"1434":1,"1440":1,"1442":1,"1448":1,"1452":1,"1453":1,"1454":1,"1456":5,"1457":1,"1458":2,"1459":1,"1460":2,"1461":1,"1464":1,"1466":7,"1477":1,"1479":2,"1484":2,"1485":2,"1486":2,"1487":4,"1492":2,"1493":3,"1495":1,"1497":4,"1512":5,"1514":1,"1516":1,"1520":1,"1521":3,"1522":1,"1526":2,"1527":2,"1529":2,"1538":1,"1540":1,"1583":2,"1587":2,"1596":1,"1597":1,"1598":1,"1599":1,"1603":1,"1614":5,"1616":1,"1622":1,"1625":1,"1627":1,"1635":1,"1650":1,"1655":1,"1660":2,"1661":1,"1662":3,"1664":1,"1665":1,"1666":2,"1667":3,"1669":1,"1670":1,"1672":1,"1674":1,"1675":4,"1679":1,"1681":4,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1707":1,"1723":2,"1756":2,"1759":1,"1770":7,"1775":5,"1776":3,"1778":2,"1779":1,"1780":3,"1782":3,"1789":1,"1790":1,"1791":2,"1822":1,"1828":2,"1829":1,"1831":3,"1833":1,"1834":1,"1846":2,"1859":1,"1861":1,"1913":2,"1917":1,"1920":1,"1929":3,"1930":3,"1934":2,"1937":1,"1949":2,"1951":1,"1955":1,"1956":2,"1968":2,"1971":1,"1977":1,"1978":3,"1979":2,"1980":1,"1981":1,"1982":1,"1983":3,"1987":3,"1989":1,"1991":2,"1992":3,"1993":3,"1994":2,"1999":1,"2001":2,"2005":1,"2007":4,"2039":1,"2041":4,"2047":1,"2050":1,"2064":1,"2065":3,"2069":2,"2073":1,"2074":1,"2075":1,"2085":1,"2087":1,"2165":1,"2167":1,"2175":1,"2181":1,"2182":4,"2184":3,"2201":1,"2202":1,"2203":2,"2206":1,"2207":1,"2212":1,"2218":1,"2220":1,"2221":1,"2252":1,"2254":1,"2257":2,"2261":1,"2264":1,"2265":3,"2266":2,"2268":2,"2269":1,"2270":1,"2271":4,"2273":1,"2279":2,"2281":1,"2283":2,"2285":2,"2287":3,"2290":1,"2291":1,"2293":3,"2294":2,"2297":1,"2302":6,"2310":3,"2312":1,"2316":1,"2318":1,"2322":4,"2323":3,"2324":3,"2340":1,"2371":1,"2372":5,"2375":3,"2376":2,"2377":1,"2380":1,"2383":1,"2384":2,"2390":1,"2398":1,"2399":1,"2401":3,"2408":1,"2409":1,"2410":6,"2411":7,"2412":1,"2414":1,"2415":1,"2416":3,"2419":1,"2420":3,"2421":7,"2422":1,"2424":1,"2427":1,"2428":1,"2441":1,"2443":2,"2447":1,"2453":2,"2456":1,"2459":5,"2466":1,"2470":2,"2475":1,"2476":1,"2477":1,"2481":1,"2483":1,"2490":2,"2494":1,"2495":1,"2499":3,"2500":1,"2503":1,"2546":1,"2553":1,"2554":1,"2557":2,"2561":1,"2562":3,"2563":2,"2564":3,"2566":2,"2568":1,"2573":1,"2575":1,"2578":1,"2580":2,"2582":2,"2583":2,"2584":2,"2585":1,"2588":1,"2589":2,"2590":2,"2591":2,"2594":2,"2595":1,"2596":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":2,"2603":2,"2605":3,"2606":1,"2607":1,"2608":1,"2609":2,"2610":2,"2612":1,"2614":2,"2615":1,"2617":1,"2619":2,"2621":5,"2625":1,"2627":1,"2628":1,"2630":3,"2633":1,"2634":1,"2643":4,"2644":2,"2645":1,"2649":1,"2650":2,"2651":1,"2652":2,"2655":1,"2656":2,"2665":1,"2667":1,"2669":1,"2671":2,"2676":5,"2683":1,"2685":1,"2687":4,"2689":1,"2691":1,"2704":1,"2707":1,"2710":3,"2718":1,"2719":5,"2720":2,"2721":6,"2722":3,"2723":1,"2724":1,"2725":1,"2744":2,"2746":2,"2747":4,"2748":1,"2749":1,"2750":7,"2754":1,"2776":4,"2782":1,"2786":3,"2788":1,"2806":1,"2835":1,"2845":2,"2862":1,"2864":1,"2871":1,"2882":6,"2892":1,"2895":2,"2896":4,"2897":2,"2899":1,"2905":3,"2906":1,"2911":2,"2912":6,"2913":3,"2914":7,"2918":3,"2921":7,"2927":4,"2928":2,"2929":1,"2930":3,"2932":1,"2933":1,"2937":1,"2938":2,"2942":3}}],["wise",{"2":{"753":1,"765":1,"1245":1,"1266":1}}],["wisdom",{"2":{"179":1}}],["wishes",{"2":{"1622":1}}],["wished",{"2":{"587":1}}],["wishing",{"2":{"284":1,"484":1}}],["wish",{"2":{"1":1,"137":1,"217":1,"231":1,"232":1,"265":1,"427":1,"557":1,"1461":1,"1621":1,"1662":1,"1771":1,"1845":1,"2051":1,"2068":1,"2174":1,"2260":1,"2290":1,"2409":2,"2560":2,"2583":1,"2584":2,"2585":1,"2606":1,"2678":1,"2679":1,"2703":1}}],["widht",{"2":{"1521":2}}],["width",{"2":{"111":1,"114":1,"674":1,"751":1,"752":1,"753":1,"1521":2,"1535":1,"1933":1,"1951":2,"1954":3,"1955":3,"1956":1,"1964":2,"2281":2,"2282":3,"2749":16,"2750":8,"2761":4,"2768":1,"2776":1,"2862":1,"2882":1}}],["widely",{"2":{"2646":1,"2687":1}}],["wider",{"2":{"408":1,"510":1,"512":2}}],["widen",{"2":{"191":1}}],["wide",{"0":{"508":1,"509":1},"2":{"77":1,"188":1,"674":1,"1843":3,"2063":3,"2656":1,"2705":1,"2750":3,"2780":1,"2877":1,"2887":1}}],["winc",{"2":{"2320":1,"2321":1,"2325":1,"2337":1,"2533":1}}],["wincompose",{"2":{"191":1,"2320":1,"2321":1,"2324":4,"2325":2,"2337":1,"2338":1,"2339":1,"2533":2}}],["window",{"2":{"387":3,"406":2,"685":1,"1205":1,"1604":2,"1606":2,"1669":1,"1929":1,"2495":1,"2553":1,"2575":1,"2580":1,"2609":1,"2656":1,"2671":2,"2700":1}}],["windows",{"0":{"240":1,"382":1,"2403":1,"2668":1},"1":{"2669":1,"2670":1,"2671":1},"2":{"73":1,"143":1,"240":1,"382":2,"387":1,"456":1,"511":1,"682":1,"684":1,"686":1,"1315":1,"1323":1,"1348":1,"1358":1,"1367":1,"1456":1,"1612":2,"1669":1,"1670":1,"1778":1,"1937":1,"1938":1,"2009":1,"2050":1,"2321":1,"2324":5,"2325":3,"2383":1,"2393":1,"2395":1,"2397":1,"2401":1,"2403":6,"2491":1,"2495":2,"2499":1,"2503":4,"2533":3,"2539":2,"2541":1,"2546":1,"2565":2,"2566":1,"2592":1,"2598":2,"2606":1,"2607":1,"2612":1,"2619":1,"2620":1,"2666":1,"2669":3,"2671":2,"2676":4,"2710":1,"2732":1}}],["winusb",{"2":{"240":2,"686":13}}],["wings",{"2":{"222":2,"266":1}}],["wings42",{"2":{"154":6}}],["winkeyless",{"2":{"222":1}}],["winkeys",{"2":{"222":1}}],["winni",{"2":{"222":1}}],["winry25",{"2":{"317":1}}],["winry25tc",{"2":{"154":2,"160":1}}],["winry315",{"2":{"277":1}}],["winry",{"2":{"154":1,"160":1}}],["wins",{"2":{"70":13}}],["win",{"2":{"70":1,"134":1,"266":1,"1667":1,"2321":1,"2325":1,"2523":1,"2533":1,"2565":1}}],["wired",{"2":{"563":2,"1310":1,"1473":1,"1540":1,"1552":1,"1653":1,"1663":2,"1962":1,"2258":1,"2271":1,"2422":1,"2478":1,"2480":1,"2482":1,"2559":1,"2560":11,"2562":2,"2837":1,"2841":1,"2924":1}}],["wires",{"2":{"390":1,"1189":1,"1197":1,"2257":2,"2258":4,"2259":1,"2260":1,"2420":1,"2422":5,"2423":1,"2424":4,"2427":2,"2476":2}}],["wireless",{"0":{"2366":1,"2509":1,"2737":1,"2852":1},"1":{"2367":1,"2368":1,"2369":1,"2370":1},"2":{"241":1,"2370":1,"2509":2,"2559":1,"2560":20,"2562":2,"2721":10,"2729":1,"2799":2,"2852":1}}],["wire",{"2":{"45":2,"114":1,"390":1,"1189":5,"1191":1,"1194":1,"1280":2,"1284":1,"1392":1,"2171":2,"2201":1,"2274":1,"2414":3,"2415":1,"2416":3,"2418":9,"2420":1,"2421":2,"2422":5,"2427":1,"2429":1,"2459":3,"2467":1}}],["wiring",{"0":{"45":1,"1469":1,"1472":1,"1476":1,"2259":1,"2260":1,"2413":1,"2418":1,"2423":1,"2478":1,"2480":1,"2482":1,"2484":1,"2486":1,"2488":1,"2500":1},"1":{"1473":1,"2414":1,"2415":1,"2416":1,"2417":1,"2418":1,"2419":2,"2420":2,"2421":2,"2422":2,"2423":1,"2424":2,"2425":1,"2426":1,"2427":1,"2428":1,"2429":1},"2":{"45":3,"134":1,"713":1,"1472":1,"1476":1,"1675":1,"1956":2,"1976":1,"2063":1,"2283":2,"2415":1,"2418":1,"2420":1,"2422":1,"2427":1,"2429":1,"2476":1,"2501":1,"2676":1,"2714":1,"2821":1}}],["welcomed",{"2":{"2724":1}}],["welcome",{"2":{"2652":1}}],["well",{"2":{"49":1,"50":2,"90":1,"107":1,"131":1,"132":1,"137":1,"138":1,"173":1,"198":1,"201":1,"203":1,"212":1,"224":1,"229":1,"232":1,"243":1,"249":1,"263":1,"265":1,"272":1,"298":1,"331":1,"387":1,"392":1,"431":1,"492":1,"569":1,"609":1,"617":1,"663":1,"686":1,"696":1,"753":1,"1195":1,"1198":1,"1378":1,"1415":1,"1428":1,"1466":1,"1477":1,"1484":1,"1492":1,"1497":1,"1528":1,"1534":1,"1588":1,"1624":1,"1675":1,"1780":1,"1781":1,"1831":1,"1837":1,"1976":1,"1979":1,"2007":1,"2064":1,"2166":1,"2248":2,"2254":1,"2285":1,"2291":1,"2303":1,"2310":1,"2322":1,"2377":1,"2384":1,"2401":1,"2411":2,"2415":1,"2440":1,"2454":1,"2495":1,"2501":1,"2516":1,"2560":1,"2562":1,"2584":1,"2685":1,"2744":1,"2746":2,"2887":1,"2924":1}}],["wetting",{"2":{"2420":1}}],["wet",{"2":{"2420":1}}],["wete",{"2":{"197":4}}],["west",{"2":{"1735":1,"2044":1}}],["westberrytech",{"0":{"547":1},"2":{"130":1,"134":1}}],["week",{"0":{"401":1},"2":{"406":1}}],["weeks",{"0":{"399":1,"400":1},"2":{"228":1,"406":7,"2560":1}}],["webhost",{"2":{"2627":3}}],["webpage",{"2":{"1312":1}}],["webserver",{"2":{"458":1}}],["website",{"2":{"70":1,"2418":1,"2425":1,"2427":1,"2429":1,"2445":1,"2810":1}}],["web",{"2":{"366":1,"374":1,"574":1,"614":1,"659":1,"1379":1,"2310":1,"2430":1,"2593":1}}],["weikav",{"2":{"2560":1}}],["weighting",{"2":{"1962":1}}],["weight",{"2":{"1678":2,"1679":3,"2293":1}}],["weights",{"2":{"249":1,"1962":6}}],["weird",{"2":{"1484":1,"2791":1}}],["weirdo",{"2":{"154":7,"160":2,"222":1}}],["werror=array",{"2":{"145":1}}],["weren",{"2":{"199":1}}],["were",{"2":{"98":1,"128":1,"131":1,"166":1,"175":1,"186":1,"188":1,"215":1,"229":1,"234":2,"244":1,"251":1,"254":1,"256":1,"263":2,"268":1,"272":1,"273":1,"279":1,"283":1,"510":1,"512":1,"1395":1,"1419":1,"1493":1,"1511":1,"1532":1,"1586":1,"1598":1,"1625":1,"1626":1,"1780":1,"1989":1,"2041":1,"2156":1,"2160":1,"2167":1,"2168":1,"2176":1,"2273":1,"2562":1,"2582":1,"2627":2,"2748":1,"2781":1,"2887":1,"2912":1}}],["went",{"2":{"125":1,"185":1,"1955":1}}],["wealthier",{"2":{"1522":2}}],["weact",{"0":{"2657":1},"1":{"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1},"2":{"308":1,"546":2,"2657":3,"2665":1,"2888":1}}],["wear",{"0":{"174":1,"749":1,"750":1,"751":1,"752":1,"753":1,"754":1},"1":{"751":1,"752":1,"753":1,"754":1},"2":{"114":1,"174":1,"176":4,"191":1,"222":1,"236":5,"249":1,"277":1,"308":1,"333":1,"743":2,"749":3,"750":6,"751":8,"752":7,"753":5,"2857":3}}],["weakly",{"2":{"769":1,"794":1,"1585":1,"2337":1,"2338":1,"2339":1}}],["weak",{"0":{"1359":1},"2":{"65":1,"93":1,"114":1,"160":2,"191":1,"210":1,"328":1,"568":1,"623":4,"1359":7,"1464":2,"1466":1,"1511":2,"1526":1,"1594":2,"1683":1,"1956":2,"2269":1,"2283":4,"2374":3,"2721":1}}],["we",{"0":{"1490":1,"2431":1,"2924":1},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1},"2":{"0":1,"9":1,"19":1,"39":1,"50":2,"51":1,"52":1,"83":1,"89":1,"92":1,"93":1,"111":1,"112":1,"172":1,"188":2,"194":2,"201":1,"224":1,"228":1,"245":2,"263":1,"273":1,"277":1,"283":1,"370":1,"378":1,"387":7,"390":3,"393":3,"398":1,"400":1,"401":1,"402":1,"419":1,"420":1,"424":1,"487":6,"490":1,"493":1,"497":1,"499":1,"502":1,"503":2,"504":1,"510":6,"511":1,"512":5,"513":1,"514":4,"516":1,"519":1,"525":1,"527":3,"528":1,"535":1,"536":2,"537":2,"538":1,"540":1,"541":1,"542":1,"553":1,"569":1,"587":2,"594":1,"606":1,"607":2,"608":1,"613":2,"614":1,"616":1,"617":3,"618":2,"619":1,"625":2,"659":1,"663":4,"668":2,"669":1,"682":1,"698":4,"718":1,"1310":1,"1317":1,"1332":1,"1337":1,"1338":1,"1339":2,"1379":1,"1393":1,"1407":5,"1410":1,"1418":1,"1425":2,"1440":8,"1441":1,"1456":1,"1466":1,"1493":7,"1512":1,"1519":4,"1522":1,"1532":7,"1533":1,"1612":2,"1616":1,"1617":1,"1651":1,"1655":1,"1939":1,"1949":2,"1954":1,"1955":2,"1989":2,"2052":1,"2182":4,"2183":1,"2184":2,"2254":1,"2279":2,"2303":3,"2309":2,"2312":4,"2377":1,"2384":1,"2398":1,"2415":1,"2422":1,"2424":2,"2430":1,"2434":1,"2440":2,"2441":2,"2451":1,"2452":1,"2453":1,"2455":3,"2459":9,"2553":1,"2554":1,"2556":1,"2557":1,"2558":1,"2572":1,"2573":1,"2574":1,"2575":1,"2613":1,"2621":1,"2625":2,"2627":4,"2632":1,"2650":1,"2656":2,"2662":1,"2669":1,"2670":1,"2671":1,"2675":1,"2721":1,"2723":1,"2724":3,"2744":1,"2775":3,"2776":3,"2777":1,"2829":1,"2902":1,"2912":2,"2924":2,"2930":3,"2931":2,"2932":3,"2933":1}}],["i+7",{"2":{"2750":1}}],["i+=8",{"2":{"2750":3}}],["i++",{"2":{"1844":2,"1949":1,"1950":1,"2066":2,"2073":2,"2074":1,"2279":1}}],["i2s",{"2":{"2682":1}}],["i2c0",{"2":{"2697":2}}],["i2cv2",{"0":{"767":1},"2":{"767":1}}],["i2cv1",{"0":{"766":1},"2":{"766":1}}],["i2cd0",{"2":{"2697":1}}],["i2cd1",{"2":{"765":2,"2697":1,"2702":1}}],["i2cd2",{"2":{"199":1,"765":1}}],["i2c3",{"2":{"765":1}}],["i2c2",{"2":{"765":4}}],["i2c1",{"2":{"765":7,"766":3,"767":5,"2697":2,"2702":2}}],["i2c",{"0":{"244":1,"746":1,"761":1,"763":1,"769":1,"770":2,"773":2,"776":2,"779":2,"782":2,"785":2,"788":2,"791":2,"794":2,"1288":1,"1952":1,"2260":1,"2439":1,"2697":1},"1":{"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"769":1,"770":1,"771":3,"772":3,"773":1,"774":3,"775":3,"776":1,"777":3,"778":3,"779":1,"780":3,"781":3,"782":1,"783":3,"784":3,"785":1,"786":3,"787":3,"788":1,"789":3,"790":3,"791":1,"792":3,"793":3,"794":1,"795":3,"796":3},"2":{"30":1,"33":2,"45":1,"75":1,"92":1,"114":1,"118":2,"134":4,"160":1,"176":5,"191":1,"199":2,"222":1,"232":1,"234":4,"236":4,"244":9,"249":7,"266":1,"285":1,"294":5,"328":1,"349":1,"559":2,"568":3,"743":2,"746":19,"761":1,"762":3,"763":5,"764":3,"765":16,"766":1,"769":4,"770":1,"771":1,"772":3,"773":2,"774":1,"775":3,"776":1,"777":1,"778":3,"779":1,"780":1,"781":3,"782":1,"783":1,"784":3,"785":1,"786":1,"787":3,"788":1,"789":1,"790":3,"791":1,"792":1,"793":3,"794":2,"795":1,"796":3,"798":1,"799":6,"800":5,"827":1,"828":2,"829":1,"853":1,"854":6,"855":5,"885":1,"886":6,"887":5,"917":1,"918":6,"919":17,"952":1,"953":6,"954":17,"986":1,"987":6,"988":5,"1020":1,"1021":6,"1022":5,"1054":1,"1055":6,"1056":5,"1088":1,"1089":6,"1090":17,"1122":1,"1123":6,"1124":17,"1156":1,"1157":6,"1158":17,"1212":1,"1213":6,"1214":5,"1282":1,"1286":1,"1288":6,"1392":1,"1676":1,"1945":1,"1947":3,"1952":1,"1955":1,"1964":3,"1967":2,"1968":3,"1974":3,"2254":2,"2255":1,"2257":1,"2268":4,"2424":1,"2437":1,"2439":1,"2682":1,"2692":2,"2695":1,"2697":4,"2702":3,"2719":1,"2746":9,"2749":17,"2857":1,"2873":1,"2876":5}}],["ipad",{"2":{"2447":1}}],["iphone",{"2":{"2447":1}}],["ipsum",{"2":{"357":1}}],["ignoring",{"0":{"2163":1,"2164":1},"1":{"2164":1,"2165":1,"2166":1},"2":{"2004":1}}],["ignores",{"2":{"1356":1,"1358":1,"2164":1,"2166":1,"2906":1}}],["ignored",{"2":{"450":2,"451":2,"1404":1,"1410":1,"1521":1,"1527":1,"1940":1,"1962":1,"1992":1,"2163":2,"2164":1,"2182":1,"2206":1,"2496":1,"2546":1,"2760":1,"2865":1}}],["ignore",{"0":{"194":1,"217":1},"2":{"22":2,"112":2,"145":1,"194":11,"199":2,"217":2,"222":1,"249":1,"308":1,"387":1,"390":1,"2001":1,"2164":1,"2166":1,"2170":1,"2182":1,"2265":1,"2503":1,"2544":1,"2568":1,"2621":1}}],["iqs572",{"2":{"1963":1}}],["iqs550",{"2":{"1963":1}}],["iqs525",{"2":{"1963":1}}],["iqs5xx",{"0":{"1963":1},"1":{"1964":1,"1965":1,"1966":1},"2":{"236":1,"1963":2,"1964":9,"1965":17,"1966":3}}],["i²c",{"0":{"800":1,"829":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1214":1},"2":{"797":1,"799":6,"800":1,"801":1,"826":1,"828":2,"829":1,"830":1,"852":1,"854":6,"855":1,"859":1,"884":1,"886":6,"887":1,"889":1,"916":1,"918":6,"919":1,"924":1,"951":1,"953":6,"954":1,"958":1,"985":1,"987":6,"988":1,"992":1,"1019":1,"1021":6,"1022":1,"1026":1,"1053":1,"1055":6,"1056":1,"1060":1,"1087":1,"1089":6,"1090":1,"1094":1,"1121":1,"1123":6,"1124":1,"1128":1,"1155":1,"1157":6,"1158":1,"1162":1,"1211":1,"1213":6,"1214":1,"1215":1,"2876":2}}],["ie",{"2":{"733":1,"811":1,"815":1,"819":1,"821":1,"839":1,"843":1,"847":1,"849":1,"869":1,"873":1,"877":1,"879":1,"901":1,"905":1,"909":1,"911":1,"936":1,"940":1,"944":1,"946":1,"970":1,"974":1,"978":1,"980":1,"1004":1,"1008":1,"1012":1,"1014":1,"1038":1,"1042":1,"1046":1,"1048":1,"1072":1,"1076":1,"1080":1,"1082":1,"1106":1,"1110":1,"1114":1,"1116":1,"1140":1,"1144":1,"1148":1,"1150":1,"1174":1,"1178":1,"1182":1,"1184":1,"1227":1,"1231":1,"1235":1,"1237":1,"1273":1,"1287":1,"1639":1,"1675":1,"1712":1,"1735":1,"2619":1}}],["icsp",{"2":{"2487":1}}],["ics",{"2":{"1945":1,"2376":1}}],["icelandic",{"2":{"2880":3}}],["ice",{"2":{"1933":1}}],["icebreaker",{"2":{"308":1}}],["ic",{"2":{"1211":1,"1295":1,"1545":1,"1691":2,"1945":1,"1951":5,"1954":3,"2276":2}}],["icon",{"2":{"392":1,"2615":2}}],["ivndbt",{"2":{"300":2,"308":1}}],["ivy",{"2":{"154":2}}],["ijk",{"2":{"266":1}}],["ii",{"2":{"199":1,"222":1}}],["iie",{"2":{"181":2}}],["i64",{"2":{"191":1}}],["ireland",{"2":{"2880":1}}],["irene",{"2":{"222":1}}],["iron",{"2":{"2414":1,"2420":5,"2421":1,"2422":1}}],["irony",{"2":{"2322":2}}],["iron180",{"2":{"222":2,"249":1}}],["ir",{"2":{"1976":1}}],["irregularities",{"2":{"2919":1}}],["irregular",{"2":{"620":1}}],["irrelevant",{"2":{"244":1}}],["irq",{"2":{"191":1,"236":1,"765":1,"2368":1}}],["irqs",{"2":{"176":1}}],["irish",{"2":{"2880":1}}],["iris60",{"2":{"222":1}}],["iris",{"2":{"45":1,"134":1,"199":1,"222":2,"266":2,"277":1}}],["ik75",{"2":{"176":1}}],["ibus",{"2":{"2324":3}}],["ibnuda",{"2":{"154":3,"160":2}}],["ibm122m",{"2":{"218":2}}],["ibm4704",{"2":{"133":1,"134":1}}],["ibm",{"2":{"114":1,"205":1,"210":1,"215":1,"218":11}}],["imagine",{"2":{"1789":1,"1840":1,"2060":1,"2775":1}}],["image",{"0":{"465":1,"466":1,"2451":1},"2":{"466":1,"680":4,"886":1,"1317":1,"2416":1,"2418":1,"2705":1,"2708":1,"2721":3,"2727":1,"2748":14,"2750":55,"2766":1,"2768":2,"2770":2,"2772":5,"2773":1}}],["images",{"0":{"337":1},"2":{"138":3,"464":1,"680":1,"1339":1,"2408":1,"2708":1,"2721":2,"2746":2,"2747":2,"2748":2,"2750":5,"2758":1,"2766":1}}],["imgur",{"2":{"680":2,"681":1,"2408":1,"2451":1,"2708":1,"2721":4}}],["imera",{"2":{"249":1,"1386":1,"1388":3,"2888":1}}],["immediate",{"2":{"616":1,"1413":3,"2727":1,"2740":1}}],["immediately",{"2":{"230":1,"259":1,"297":1,"405":1,"649":1,"704":1,"732":1,"810":1,"814":1,"818":1,"820":1,"838":1,"842":1,"846":1,"848":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1226":1,"1230":1,"1234":1,"1236":1,"1278":1,"1303":1,"1348":1,"1375":2,"1407":3,"1410":1,"1492":1,"1532":1,"1606":1,"1780":1,"2303":1,"2643":2,"2750":1,"2769":1,"2770":2,"2787":1,"2879":1,"2905":1,"2906":3,"2912":1,"2913":1,"2915":1,"2916":1,"2918":1,"2941":1}}],["immutable",{"2":{"531":1}}],["immune",{"2":{"231":1}}],["impartial",{"2":{"2562":1}}],["impact",{"2":{"194":1,"641":1,"2269":1,"2303":1,"2751":1,"2895":1,"2896":1,"2914":1}}],["impacts",{"2":{"14":1}}],["impose",{"2":{"2726":1,"2728":1}}],["impossible",{"2":{"1362":1,"1417":1,"1788":1,"2446":1}}],["imported",{"2":{"446":1,"447":1,"448":1,"1622":1,"2416":1,"2425":1,"2719":1}}],["importer",{"2":{"176":1}}],["important",{"0":{"396":1,"676":1},"2":{"490":1,"510":1,"524":1,"594":1,"617":2,"625":1,"676":2,"1375":1,"1419":1,"1456":1,"1516":1,"1529":1,"1614":1,"1635":1,"2074":1,"2372":1,"2599":1,"2605":1,"2879":1,"2905":1}}],["imports",{"0":{"514":1},"1":{"515":1},"2":{"236":1,"446":1,"447":1,"514":1}}],["importing",{"0":{"2655":1},"2":{"173":1,"446":1,"447":1,"448":1,"514":2,"2425":1,"2655":1}}],["import",{"0":{"173":1,"446":1,"447":1,"448":1,"515":1},"2":{"173":4,"176":1,"288":1,"348":1,"387":2,"446":2,"447":2,"448":2,"487":2,"514":8,"515":4,"536":1,"1620":1,"1622":1,"1623":1,"2052":1,"2425":3,"2582":1,"2721":1}}],["impedance",{"2":{"758":1}}],["impls",{"2":{"1844":2,"2066":2}}],["impls\`",{"2":{"1844":1,"2066":1}}],["implied",{"2":{"1461":1,"2725":1}}],["implies",{"2":{"1310":1,"1478":1,"2271":1}}],["implicitly",{"2":{"563":1}}],["implicit",{"2":{"524":1,"533":1,"2879":1}}],["implications",{"2":{"312":1,"408":2,"411":1}}],["implementing",{"0":{"1414":1},"2":{"277":2,"617":1,"621":1,"622":1,"644":1,"687":1,"1189":1,"1534":1,"1611":1,"1612":1,"1977":1,"2721":1}}],["implemented",{"2":{"74":1,"160":1,"176":1,"203":2,"288":1,"312":1,"327":1,"591":1,"637":1,"1340":1,"1389":1,"1390":1,"1620":1,"1633":1,"1683":1,"1780":1,"1781":1,"1832":1,"1917":1,"1930":1,"2008":1,"2050":1,"2309":1,"2324":1,"2325":1,"2370":12,"2509":12,"2533":1,"2687":1,"2721":2,"2760":1,"2770":1,"2862":3,"2895":1}}],["implement",{"2":{"50":1,"74":1,"93":1,"114":1,"131":1,"134":1,"145":1,"160":1,"176":1,"191":1,"199":2,"222":1,"236":5,"259":1,"277":2,"288":1,"308":2,"328":2,"573":1,"617":1,"622":1,"623":2,"631":1,"742":1,"1340":1,"1410":1,"1414":2,"1425":1,"1474":1,"1486":1,"1545":1,"1620":1,"1785":1,"1829":1,"1840":1,"1917":1,"1947":1,"1954":1,"1958":1,"1959":1,"1979":2,"2047":1,"2050":1,"2060":1,"2205":1,"2277":1,"2374":1,"2448":1,"2645":1,"2678":1,"2679":1,"2680":1,"2744":1}}],["implementations",{"2":{"160":3,"175":1,"202":1,"222":1,"277":6,"285":1,"288":1,"294":2,"328":2,"333":1,"1189":1,"1620":1,"1836":1,"1837":1,"2254":1,"2721":1,"2722":1,"2882":1,"2927":1}}],["implementation",{"0":{"629":1,"633":1,"639":1,"642":1,"645":1,"647":1,"650":1,"651":1,"1407":1,"1424":1,"1832":1,"1833":1,"2303":1,"2742":1},"2":{"49":1,"75":1,"114":1,"125":1,"163":1,"176":1,"185":1,"233":1,"236":1,"277":1,"307":1,"308":1,"317":1,"328":1,"617":1,"622":1,"625":1,"692":2,"698":3,"754":1,"1195":1,"1198":1,"1202":2,"1289":1,"1474":2,"1487":1,"1523":1,"1531":2,"1587":1,"1599":1,"1675":1,"1955":1,"1962":1,"1986":1,"2037":2,"2254":2,"2294":1,"2367":1,"2411":2,"2448":1,"2516":1,"2562":1,"2678":1,"2679":1,"2680":1,"2865":2,"2882":1,"2916":1,"2917":1}}],["implements",{"2":{"49":1,"289":1,"1633":1,"1828":1,"2007":1,"2170":1,"2437":1,"2570":1,"2918":1}}],["improving",{"2":{"458":1}}],["improvement",{"2":{"114":1,"175":1,"328":1}}],["improvements",{"0":{"84":1,"98":1,"107":1,"109":1,"175":1,"221":1},"1":{"110":1,"111":1,"112":1},"2":{"45":1,"107":1,"114":2,"134":1,"160":1,"176":1,"190":1,"191":2,"210":1,"222":3,"236":1,"1534":1,"2895":1}}],["improve",{"0":{"229":1},"2":{"93":1,"114":5,"134":1,"175":1,"176":4,"191":2,"202":1,"210":1,"222":3,"236":4,"249":1,"285":2,"294":1,"573":1,"607":1,"611":1,"1410":1,"1413":1,"1951":1,"2281":1,"2372":1,"2558":1,"2895":2}}],["improved",{"0":{"83":1},"2":{"10":2,"50":1,"74":1,"84":1,"174":1,"196":1,"618":1,"1296":1}}],["improper",{"2":{"249":1,"1364":1}}],["ixora",{"2":{"102":2}}],["ilovbee",{"2":{"2560":1}}],["illusion",{"2":{"1535":1}}],["illustrious",{"2":{"123":1}}],["illustrate",{"2":{"99":1,"194":1,"2907":1}}],["ill",{"2":{"411":1,"2918":1}}],["ili9341",{"2":{"2746":2,"2749":7}}],["ili9163",{"2":{"2746":2,"2749":7}}],["ili9486",{"2":{"248":1,"249":1,"2746":2,"2749":8}}],["ili9488",{"2":{"176":1,"2746":2,"2749":7}}],["ili9xxx",{"2":{"210":1}}],["ilumkb",{"2":{"102":1,"114":1}}],["ios",{"2":{"1937":1,"1938":1,"2367":2,"2447":5}}],["iohidconsumer",{"2":{"1354":2}}],["iohidfamily",{"2":{"1354":6}}],["io",{"2":{"74":1,"112":1,"559":1,"759":1,"2600":1,"2704":1,"2865":1}}],["iota",{"2":{"31":3,"34":2,"1957":10}}],["i",{"0":{"409":1,"603":1,"608":2,"610":1,"611":1,"1317":1,"1333":1,"1334":2,"1335":1,"1336":1,"1338":2,"1339":1,"1342":1,"1344":1,"1345":1,"1361":1,"1494":1,"1520":1,"1588":1,"1823":1,"2157":1,"2403":1,"2625":1},"1":{"410":1,"411":1,"412":1,"1339":2,"1589":1},"2":{"65":1,"105":2,"108":1,"114":1,"207":4,"249":2,"266":2,"328":1,"335":1,"369":1,"387":1,"391":1,"464":1,"471":1,"587":2,"594":1,"613":2,"620":1,"668":1,"680":1,"681":1,"765":1,"1245":1,"1266":1,"1289":1,"1316":1,"1349":1,"1419":1,"1440":1,"1444":1,"1517":3,"1529":2,"1531":1,"1532":4,"1606":2,"1655":1,"1775":2,"1844":6,"1849":1,"1949":3,"1950":3,"1992":1,"2030":1,"2052":4,"2066":6,"2072":1,"2073":8,"2074":4,"2159":1,"2170":6,"2196":4,"2279":3,"2312":2,"2322":2,"2323":4,"2325":4,"2379":1,"2382":1,"2410":3,"2416":2,"2417":2,"2423":2,"2432":1,"2495":1,"2503":3,"2533":4,"2535":3,"2556":1,"2560":1,"2582":1,"2655":1,"2682":1,"2719":1,"2720":1,"2721":3,"2748":6,"2750":19,"2765":2,"2934":2,"2942":1}}],["idproduct",{"2":{"1329":1}}],["idvendor",{"2":{"1329":1}}],["id=92",{"2":{"1316":1}}],["id=some",{"2":{"335":1}}],["idling",{"0":{"646":1},"1":{"647":1,"648":1}}],["idled",{"2":{"646":2}}],["idle",{"0":{"1592":1,"1825":1},"2":{"160":1,"210":1,"222":1,"236":2,"297":1,"308":1,"645":1,"1587":1,"1592":3,"1825":3,"2210":1,"2854":1,"2872":1}}],["idx",{"2":{"323":1,"1606":3}}],["idb60",{"2":{"222":1}}],["idb",{"2":{"205":3}}],["ids",{"0":{"169":1,"184":1},"1":{"170":1},"2":{"169":1,"176":1,"184":1,"210":1,"373":1,"568":2,"686":1,"1631":1,"2050":1,"2270":4}}],["id75",{"2":{"154":1,"160":3,"199":1,"222":2,"291":2,"294":1,"308":1}}],["idobo",{"2":{"154":1,"160":1}}],["idobao",{"2":{"154":6,"160":6,"168":4,"176":4,"266":1,"328":1}}],["id87v2",{"2":{"176":1}}],["id87",{"2":{"154":2,"160":1}}],["id80v1",{"2":{"176":1}}],["id80v3",{"2":{"176":1}}],["id80",{"2":{"154":2,"160":4,"168":4}}],["id67",{"2":{"154":4,"160":1,"176":1}}],["ides",{"2":{"2899":1}}],["ideally",{"2":{"1457":1,"1977":1,"1996":3,"2273":1,"2689":1}}],["ideal",{"2":{"1409":1,"1462":1,"2260":1,"2378":1,"2380":1,"2387":1}}],["idea",{"2":{"530":1,"617":1,"618":1,"1312":1,"1434":1,"1497":1,"1532":1,"1943":1,"2050":1,"2421":1,"2422":2,"2691":1}}],["identity",{"2":{"619":1}}],["identical",{"2":{"307":1,"1391":1,"1392":1,"1394":1,"1397":1,"1398":1,"1487":1,"1932":1,"2268":1,"2302":1,"2689":1,"2694":1,"2702":1,"2749":1,"2759":1,"2763":1,"2764":1}}],["identification",{"2":{"2562":1}}],["identifies",{"2":{"2563":1}}],["identified",{"2":{"312":1,"1532":1,"2560":1,"2564":2}}],["identifier",{"2":{"142":2,"518":1,"1417":1,"1624":1,"2566":1,"2725":2}}],["identifiers",{"2":{"110":1,"266":1,"1522":1,"1587":1}}],["identifying",{"2":{"2777":1}}],["identify",{"2":{"70":1,"110":1,"312":1,"1532":1,"1533":1,"1584":1,"2030":1,"2313":1,"2933":1}}],["ide",{"0":{"386":1},"2":{"132":1,"378":1,"379":1,"386":1,"387":1,"427":1,"2646":2,"2651":2,"2807":1}}],["id",{"0":{"363":1,"364":1,"365":1},"2":{"50":1,"70":2,"145":1,"169":2,"184":2,"191":2,"222":1,"277":1,"285":1,"370":1,"371":1,"397":1,"559":2,"1300":1,"1316":4,"1329":1,"2049":3,"2050":3,"2052":6,"2270":3,"2288":2,"2491":1,"2492":1,"2493":1,"2494":1,"2555":1,"2710":1,"2760":2,"2761":2,"2762":2,"2767":3,"2768":2,"2769":2,"2770":2,"2771":2,"2772":2,"2773":2,"2875":2}}],["iwrap",{"2":{"50":1}}],["italian",{"2":{"2880":9}}],["itunes",{"2":{"2503":1}}],["ition",{"2":{"2170":1}}],["ith",{"2":{"1775":1}}],["iterates",{"2":{"1955":1}}],["iterate",{"2":{"637":1}}],["iterators",{"2":{"518":1}}],["iterations",{"2":{"613":1}}],["iteration",{"2":{"65":1,"494":1,"644":1}}],["itemid=1",{"2":{"1316":1}}],["item",{"0":{"183":1},"2":{"268":1,"279":1,"524":2,"525":1,"748":1,"2305":1}}],["items",{"2":{"83":1,"112":1,"134":1,"183":1,"221":1,"236":2,"264":1,"274":1,"282":1,"292":1,"301":1,"313":1,"326":1,"338":3,"397":1,"530":1}}],["it",{"0":{"27":1,"605":1,"666":1,"670":1,"671":1,"1317":2,"1328":1,"1339":1,"1345":1,"1492":1,"1519":1,"2463":1,"2610":1},"2":{"5":1,"6":1,"8":1,"14":2,"21":2,"23":1,"27":1,"31":2,"45":2,"50":1,"82":1,"89":1,"94":1,"98":1,"99":1,"105":2,"114":2,"116":2,"119":1,"123":1,"130":2,"133":1,"134":1,"138":2,"139":1,"160":1,"166":1,"173":1,"174":2,"176":1,"179":3,"182":2,"194":2,"195":2,"198":1,"199":1,"201":1,"202":1,"214":1,"228":2,"233":1,"235":1,"246":1,"251":2,"254":1,"259":1,"288":1,"294":1,"297":2,"302":1,"303":1,"315":1,"323":2,"328":1,"334":1,"338":5,"358":1,"360":1,"363":1,"371":1,"380":1,"381":1,"383":1,"384":1,"385":1,"387":3,"390":2,"397":5,"403":1,"408":2,"409":1,"410":1,"411":1,"427":3,"428":1,"432":1,"433":2,"435":1,"438":1,"440":1,"441":1,"442":1,"443":1,"457":3,"461":3,"468":1,"473":1,"480":1,"487":3,"489":1,"492":2,"493":1,"494":1,"497":1,"510":2,"511":7,"512":1,"515":1,"523":1,"524":1,"526":1,"527":2,"529":1,"530":2,"531":1,"534":1,"536":2,"538":4,"539":1,"552":1,"557":2,"561":1,"562":3,"566":1,"567":2,"569":1,"570":1,"572":2,"573":1,"583":2,"584":1,"591":1,"594":2,"596":2,"598":2,"608":2,"609":1,"611":2,"617":8,"621":1,"622":1,"623":1,"625":1,"628":2,"629":3,"631":1,"632":2,"635":1,"641":2,"643":2,"644":1,"646":3,"649":4,"654":5,"655":2,"656":2,"657":2,"662":1,"664":3,"670":1,"675":1,"678":2,"680":2,"681":1,"683":3,"684":1,"685":2,"686":1,"696":2,"698":2,"717":1,"718":1,"720":1,"724":1,"745":1,"751":2,"752":1,"758":4,"760":1,"762":1,"769":1,"794":1,"858":1,"923":1,"957":1,"991":1,"1025":1,"1059":1,"1093":1,"1127":1,"1161":1,"1190":3,"1192":1,"1193":1,"1195":1,"1196":1,"1198":1,"1200":3,"1201":4,"1202":1,"1243":1,"1264":1,"1287":1,"1294":3,"1309":1,"1324":1,"1326":2,"1328":1,"1329":1,"1335":1,"1336":1,"1338":2,"1340":1,"1344":2,"1345":3,"1347":1,"1348":1,"1351":1,"1353":4,"1358":1,"1361":2,"1362":3,"1369":1,"1375":1,"1377":3,"1378":1,"1389":2,"1393":2,"1403":1,"1406":2,"1407":17,"1409":1,"1410":2,"1412":1,"1416":7,"1417":2,"1418":1,"1419":3,"1421":2,"1422":4,"1427":1,"1428":1,"1432":1,"1434":2,"1440":2,"1441":4,"1443":1,"1448":1,"1449":2,"1456":1,"1458":4,"1461":4,"1464":3,"1465":1,"1466":3,"1467":1,"1479":5,"1484":1,"1486":2,"1487":2,"1490":1,"1492":4,"1493":3,"1494":1,"1511":2,"1512":1,"1516":1,"1519":2,"1520":3,"1521":2,"1522":5,"1523":1,"1526":2,"1531":3,"1532":1,"1535":2,"1536":2,"1540":1,"1544":1,"1552":2,"1583":1,"1584":1,"1586":2,"1587":4,"1591":1,"1596":2,"1598":1,"1599":2,"1603":2,"1606":6,"1612":2,"1614":3,"1615":1,"1617":2,"1620":1,"1624":3,"1625":1,"1626":1,"1627":1,"1632":1,"1636":2,"1640":1,"1653":2,"1655":3,"1656":2,"1657":1,"1658":1,"1659":2,"1662":1,"1666":1,"1667":2,"1669":1,"1675":2,"1723":1,"1733":1,"1744":1,"1756":3,"1757":1,"1759":2,"1763":1,"1771":1,"1775":2,"1779":1,"1780":4,"1788":1,"1791":3,"1822":2,"1823":1,"1824":1,"1828":1,"1832":2,"1833":1,"1835":1,"1837":1,"1838":2,"1840":2,"1845":1,"1847":2,"1859":1,"1861":1,"1902":1,"1904":1,"1906":1,"1909":1,"1928":3,"1929":4,"1930":1,"1933":1,"1936":3,"1937":4,"1939":2,"1942":1,"1950":1,"1954":1,"1955":1,"1956":5,"1958":2,"1959":1,"1962":1,"1971":1,"1975":2,"1977":1,"1981":1,"1983":1,"1985":1,"1986":1,"1993":1,"1994":1,"1995":1,"2001":1,"2002":1,"2004":1,"2006":1,"2007":2,"2009":1,"2041":2,"2046":1,"2050":4,"2051":1,"2052":1,"2058":2,"2060":2,"2064":2,"2068":1,"2070":2,"2075":2,"2085":1,"2087":1,"2146":1,"2148":1,"2150":1,"2153":1,"2157":1,"2159":2,"2160":1,"2161":2,"2163":2,"2164":1,"2165":1,"2167":1,"2170":1,"2172":2,"2174":1,"2177":1,"2181":2,"2182":1,"2191":2,"2203":3,"2212":1,"2218":1,"2219":1,"2248":2,"2251":1,"2258":1,"2260":1,"2262":2,"2263":1,"2264":4,"2265":3,"2266":1,"2268":3,"2270":3,"2271":5,"2272":1,"2274":1,"2280":1,"2283":4,"2284":1,"2286":5,"2288":1,"2290":1,"2291":1,"2293":3,"2295":1,"2298":1,"2301":3,"2302":2,"2303":8,"2310":2,"2311":1,"2312":2,"2313":1,"2319":1,"2321":1,"2322":1,"2323":1,"2324":9,"2367":2,"2368":3,"2372":1,"2376":1,"2377":1,"2379":2,"2381":2,"2382":1,"2383":2,"2384":2,"2389":1,"2398":9,"2399":1,"2401":3,"2403":3,"2404":1,"2407":1,"2408":1,"2410":6,"2411":4,"2415":3,"2416":4,"2420":6,"2421":13,"2422":8,"2423":3,"2424":1,"2425":1,"2427":5,"2428":1,"2440":1,"2441":1,"2443":3,"2445":3,"2446":1,"2448":1,"2449":1,"2452":1,"2453":1,"2454":1,"2455":1,"2459":5,"2465":1,"2468":2,"2471":1,"2474":1,"2475":4,"2477":1,"2481":1,"2489":2,"2490":1,"2493":1,"2494":2,"2495":1,"2496":1,"2497":2,"2501":4,"2516":1,"2551":1,"2552":1,"2553":1,"2554":2,"2555":1,"2556":1,"2557":3,"2560":1,"2565":2,"2566":4,"2568":2,"2572":3,"2573":1,"2577":1,"2578":1,"2579":1,"2580":1,"2582":1,"2583":1,"2585":3,"2588":1,"2591":1,"2594":1,"2599":1,"2600":1,"2605":5,"2607":1,"2609":3,"2610":3,"2613":1,"2619":3,"2620":1,"2621":2,"2622":1,"2626":1,"2627":4,"2628":1,"2629":1,"2630":1,"2631":2,"2632":2,"2633":5,"2643":1,"2644":2,"2645":6,"2646":1,"2649":1,"2651":7,"2652":1,"2655":1,"2657":1,"2660":2,"2661":1,"2664":1,"2665":1,"2669":3,"2671":1,"2672":3,"2673":1,"2675":5,"2676":5,"2683":1,"2684":1,"2685":1,"2687":1,"2688":2,"2691":2,"2694":1,"2700":2,"2702":1,"2703":1,"2705":1,"2707":1,"2710":2,"2713":1,"2714":1,"2719":4,"2721":3,"2722":1,"2723":3,"2724":2,"2725":3,"2744":1,"2746":1,"2747":1,"2749":2,"2750":9,"2751":2,"2755":1,"2757":2,"2758":1,"2760":1,"2763":1,"2766":1,"2768":1,"2770":1,"2775":1,"2776":2,"2777":2,"2780":1,"2784":2,"2786":4,"2788":2,"2793":1,"2810":1,"2827":1,"2836":1,"2839":2,"2844":1,"2862":1,"2867":1,"2873":1,"2877":2,"2879":4,"2881":1,"2884":3,"2888":1,"2896":1,"2899":2,"2905":2,"2914":3,"2915":1,"2916":1,"2917":1,"2919":1,"2921":2,"2922":3,"2923":1,"2924":3,"2926":2,"2927":5,"2928":3,"2929":4,"2930":1,"2931":2,"2932":2,"2934":1,"2935":1,"2936":1,"2937":4,"2940":1,"2941":1,"2942":7}}],["itsybitsy",{"2":{"686":2,"2492":2}}],["itself",{"2":{"137":1,"377":1,"574":1,"586":1,"637":2,"662":1,"682":1,"684":1,"685":1,"711":1,"1457":1,"1516":1,"1523":1,"1529":1,"1587":2,"1621":1,"2287":1,"2381":1,"2383":1,"2410":1,"2421":1,"2423":1,"2475":1,"2499":1,"2545":1,"2677":1,"2685":1,"2731":1,"2776":1,"2877":1,"2923":1,"2933":1}}],["its",{"0":{"2650":1},"1":{"2651":1,"2652":1,"2653":1},"2":{"3":1,"7":1,"8":1,"15":1,"30":1,"33":1,"113":2,"114":1,"120":1,"133":1,"142":1,"174":1,"175":1,"195":1,"307":1,"386":1,"387":1,"405":1,"408":1,"556":1,"586":1,"684":1,"718":1,"726":1,"748":1,"751":1,"752":1,"753":2,"759":1,"1196":1,"1310":1,"1312":1,"1314":1,"1353":1,"1368":1,"1386":1,"1404":1,"1411":1,"1413":1,"1482":1,"1490":2,"1511":1,"1512":1,"1532":1,"1533":3,"1552":2,"1596":1,"1599":1,"1606":4,"1607":1,"1624":1,"1732":1,"1736":1,"1771":1,"1928":4,"1948":1,"1955":1,"1978":1,"2030":1,"2064":2,"2065":1,"2168":3,"2248":2,"2293":1,"2312":1,"2324":1,"2407":2,"2420":1,"2430":1,"2448":1,"2459":4,"2472":1,"2551":1,"2552":1,"2555":2,"2559":2,"2562":1,"2563":1,"2591":1,"2598":1,"2602":2,"2603":1,"2619":3,"2655":1,"2721":1,"2749":1,"2758":1,"2766":1,"2776":1,"2780":1,"2800":1,"2837":1,"2844":1,"2857":1,"2895":1,"2911":1,"2912":2,"2913":2,"2914":2,"2922":1,"2927":1}}],["ifkb",{"2":{"2560":1}}],["ifeq",{"2":{"2448":2}}],["ifnormation",{"2":{"179":1}}],["ifndef",{"2":{"134":1,"510":1,"1466":1,"1504":5,"1527":1,"2309":1,"2447":4,"2719":1}}],["ify",{"2":{"176":1}}],["ifdefs",{"2":{"114":1,"191":1,"222":1,"266":1,"1403":1}}],["ifdef",{"2":{"31":4,"34":4,"134":1,"222":1,"249":2,"510":1,"553":1,"645":3,"664":1,"1326":1,"1388":14,"1396":5,"1403":1,"1432":3,"1465":3,"1479":2,"1504":1,"1527":2,"1529":4,"1606":4,"1651":2,"1791":3,"1833":2,"1844":2,"1947":1,"1950":1,"1976":1,"2033":1,"2034":1,"2036":1,"2066":2,"2277":1,"2280":1,"2447":1}}],["if",{"0":{"152":1,"1335":1,"1336":1,"1339":1},"2":{"1":1,"7":1,"14":1,"16":1,"18":2,"21":1,"23":2,"31":4,"34":4,"37":1,"43":1,"45":1,"49":2,"50":2,"62":1,"87":1,"89":1,"90":9,"98":1,"105":6,"107":1,"114":2,"119":1,"125":2,"137":1,"142":1,"143":2,"145":1,"160":1,"182":1,"185":2,"194":3,"196":4,"198":1,"199":2,"202":1,"203":1,"206":1,"209":1,"210":1,"212":1,"213":1,"217":1,"220":2,"228":1,"230":1,"232":2,"233":1,"236":2,"240":3,"241":1,"245":1,"247":1,"248":1,"253":1,"254":1,"255":1,"256":1,"259":1,"266":1,"270":1,"272":1,"273":2,"276":1,"277":2,"281":1,"283":1,"284":1,"289":1,"306":1,"307":5,"315":1,"320":2,"323":1,"324":1,"325":1,"338":6,"347":1,"363":2,"367":1,"368":1,"369":1,"373":1,"375":1,"376":1,"377":1,"382":1,"383":1,"387":2,"388":1,"390":1,"392":1,"397":4,"405":1,"408":1,"409":1,"410":1,"412":1,"417":2,"421":1,"422":1,"423":1,"424":1,"427":1,"428":1,"430":1,"432":1,"433":1,"434":1,"435":1,"438":1,"440":1,"442":1,"443":1,"444":1,"456":1,"461":1,"463":1,"467":1,"486":1,"487":2,"490":2,"491":1,"492":1,"503":2,"505":1,"507":1,"508":1,"510":16,"511":2,"512":3,"516":1,"519":2,"522":2,"523":3,"528":1,"530":2,"531":3,"533":5,"535":1,"538":3,"541":1,"542":1,"554":1,"557":1,"558":1,"559":9,"560":1,"561":1,"562":10,"563":4,"566":2,"567":3,"568":4,"570":1,"572":1,"573":2,"574":1,"578":1,"586":1,"587":1,"591":7,"594":3,"596":1,"597":2,"598":1,"602":2,"603":1,"608":2,"609":1,"610":1,"611":3,"612":1,"613":1,"614":2,"615":1,"616":1,"617":5,"618":1,"619":1,"628":2,"629":2,"632":1,"637":1,"638":1,"642":1,"643":1,"644":1,"645":10,"646":1,"649":3,"650":2,"651":1,"654":5,"655":3,"658":1,"666":1,"669":1,"670":2,"671":2,"678":2,"681":1,"682":1,"683":6,"684":3,"685":1,"686":1,"687":1,"695":1,"696":2,"698":2,"700":2,"713":1,"717":2,"718":1,"722":2,"739":1,"745":2,"746":3,"747":1,"751":2,"760":3,"762":2,"763":1,"765":1,"769":1,"772":2,"775":2,"778":2,"781":2,"784":2,"787":2,"790":2,"793":2,"794":1,"796":2,"798":2,"827":2,"853":2,"858":1,"885":2,"917":2,"923":1,"952":2,"957":1,"986":2,"991":1,"1020":2,"1025":1,"1054":2,"1059":1,"1088":2,"1093":1,"1122":2,"1127":1,"1156":2,"1161":1,"1193":1,"1195":1,"1196":1,"1197":1,"1198":2,"1200":4,"1201":4,"1204":2,"1206":1,"1212":2,"1243":2,"1245":2,"1249":1,"1250":2,"1253":1,"1255":1,"1258":2,"1261":2,"1263":1,"1264":2,"1273":1,"1278":1,"1279":1,"1281":2,"1283":1,"1284":1,"1294":1,"1298":1,"1300":1,"1311":1,"1312":3,"1314":1,"1315":1,"1317":1,"1319":1,"1326":2,"1329":1,"1333":2,"1335":2,"1336":1,"1339":1,"1341":1,"1345":1,"1346":1,"1359":1,"1361":1,"1362":1,"1369":1,"1375":3,"1377":3,"1378":3,"1385":1,"1387":1,"1388":1,"1389":1,"1393":2,"1395":1,"1396":1,"1404":1,"1406":2,"1407":21,"1409":2,"1410":3,"1413":1,"1414":1,"1416":3,"1417":1,"1419":2,"1420":1,"1421":1,"1422":4,"1425":5,"1432":1,"1436":1,"1438":1,"1440":6,"1441":4,"1442":2,"1443":2,"1444":2,"1445":1,"1446":2,"1448":1,"1449":3,"1456":6,"1457":2,"1458":2,"1459":2,"1461":2,"1464":2,"1465":3,"1466":4,"1467":1,"1475":1,"1476":1,"1477":1,"1479":1,"1482":2,"1484":3,"1487":1,"1492":5,"1494":1,"1496":2,"1497":1,"1511":3,"1512":5,"1513":1,"1516":5,"1519":1,"1522":1,"1526":1,"1527":9,"1529":1,"1530":1,"1532":1,"1533":2,"1536":2,"1538":1,"1540":2,"1545":1,"1565":1,"1570":1,"1583":1,"1584":1,"1585":2,"1587":2,"1588":2,"1592":1,"1593":1,"1595":1,"1596":1,"1597":1,"1599":3,"1600":1,"1602":2,"1603":3,"1604":1,"1606":19,"1607":1,"1609":1,"1612":1,"1613":2,"1614":6,"1616":1,"1617":1,"1619":1,"1621":2,"1622":1,"1624":1,"1625":1,"1626":1,"1627":1,"1628":1,"1632":1,"1635":1,"1636":1,"1640":1,"1650":1,"1651":9,"1655":1,"1656":1,"1657":1,"1658":1,"1659":3,"1660":3,"1661":1,"1662":14,"1665":1,"1667":3,"1669":1,"1670":4,"1672":3,"1675":6,"1680":1,"1681":2,"1693":1,"1699":1,"1703":1,"1718":1,"1723":1,"1737":1,"1744":1,"1759":2,"1760":1,"1764":1,"1773":1,"1775":4,"1776":5,"1778":2,"1779":1,"1780":3,"1782":2,"1783":1,"1785":4,"1789":2,"1790":1,"1791":5,"1802":2,"1804":2,"1805":1,"1809":1,"1812":1,"1815":1,"1818":1,"1821":1,"1825":1,"1827":2,"1828":2,"1832":1,"1833":2,"1838":1,"1840":2,"1841":7,"1844":1,"1845":1,"1846":6,"1849":2,"1858":1,"1901":1,"1917":2,"1918":1,"1929":1,"1930":1,"1931":1,"1934":1,"1938":2,"1940":1,"1942":4,"1949":3,"1950":4,"1951":1,"1953":1,"1954":2,"1955":2,"1956":24,"1959":1,"1962":1,"1964":1,"1968":1,"1976":3,"1977":1,"1978":3,"1979":1,"1980":2,"1981":3,"1982":1,"1983":1,"1985":1,"1986":2,"1987":4,"1989":5,"1991":1,"1992":1,"1993":1,"1994":2,"2001":4,"2004":1,"2005":5,"2006":2,"2007":2,"2024":1,"2033":1,"2036":1,"2041":2,"2044":1,"2047":1,"2049":1,"2051":1,"2052":6,"2058":1,"2060":2,"2061":8,"2066":1,"2068":1,"2069":9,"2072":2,"2073":4,"2074":6,"2075":1,"2084":1,"2145":1,"2156":1,"2159":1,"2160":4,"2165":1,"2166":1,"2167":4,"2168":7,"2170":2,"2172":2,"2174":2,"2175":2,"2176":1,"2178":1,"2182":1,"2184":2,"2185":1,"2186":1,"2187":1,"2192":2,"2196":1,"2199":1,"2200":1,"2201":1,"2204":1,"2211":3,"2219":1,"2220":1,"2222":1,"2224":1,"2252":3,"2253":2,"2257":1,"2260":1,"2261":1,"2264":2,"2265":1,"2266":1,"2267":3,"2268":5,"2270":5,"2271":4,"2279":3,"2280":3,"2283":19,"2285":1,"2286":3,"2287":1,"2288":2,"2290":2,"2291":2,"2293":4,"2294":1,"2295":1,"2298":2,"2299":1,"2302":7,"2303":7,"2307":1,"2308":2,"2309":4,"2310":13,"2311":3,"2312":11,"2313":1,"2314":2,"2315":1,"2321":1,"2322":1,"2323":1,"2324":3,"2325":1,"2340":1,"2354":1,"2359":1,"2361":1,"2368":1,"2372":6,"2374":10,"2375":1,"2376":2,"2377":2,"2379":1,"2381":1,"2384":3,"2386":1,"2388":1,"2390":1,"2391":1,"2397":1,"2398":3,"2401":2,"2408":1,"2409":1,"2410":5,"2411":2,"2412":1,"2415":1,"2416":1,"2419":1,"2420":2,"2421":3,"2422":7,"2423":1,"2424":2,"2425":1,"2426":1,"2427":5,"2428":2,"2434":1,"2443":2,"2445":1,"2446":3,"2447":2,"2449":1,"2453":3,"2454":2,"2455":1,"2457":4,"2458":2,"2459":1,"2471":1,"2473":1,"2476":1,"2483":1,"2490":1,"2495":3,"2496":2,"2499":1,"2501":4,"2504":2,"2533":1,"2551":1,"2557":1,"2558":1,"2560":3,"2561":2,"2562":3,"2563":1,"2566":2,"2568":1,"2569":3,"2570":2,"2572":4,"2573":2,"2576":1,"2577":3,"2578":1,"2579":1,"2580":1,"2583":1,"2584":2,"2585":1,"2586":1,"2587":1,"2588":3,"2590":1,"2593":1,"2594":1,"2595":1,"2599":2,"2601":2,"2602":1,"2605":3,"2606":1,"2607":1,"2609":3,"2610":2,"2612":1,"2614":1,"2619":2,"2621":2,"2622":1,"2626":1,"2627":1,"2628":2,"2629":2,"2630":1,"2633":2,"2643":2,"2644":2,"2645":14,"2649":1,"2651":2,"2652":2,"2655":1,"2659":1,"2660":1,"2664":1,"2667":1,"2671":3,"2673":1,"2675":1,"2676":3,"2677":1,"2678":2,"2679":1,"2684":1,"2685":1,"2687":3,"2689":2,"2690":1,"2694":1,"2702":1,"2707":1,"2710":2,"2718":1,"2719":4,"2721":16,"2722":5,"2723":1,"2725":1,"2735":1,"2744":1,"2745":2,"2747":5,"2748":4,"2749":2,"2750":22,"2754":1,"2757":1,"2758":2,"2760":1,"2761":1,"2762":2,"2763":3,"2765":1,"2767":1,"2769":1,"2770":6,"2775":1,"2778":1,"2781":1,"2784":4,"2785":2,"2786":1,"2787":2,"2788":4,"2789":1,"2791":2,"2792":1,"2793":3,"2827":1,"2833":1,"2846":4,"2862":1,"2869":2,"2873":1,"2878":1,"2879":1,"2880":1,"2881":1,"2882":3,"2883":3,"2884":1,"2885":3,"2887":2,"2888":1,"2890":1,"2896":1,"2899":1,"2900":1,"2904":2,"2905":12,"2906":5,"2912":7,"2913":4,"2914":3,"2916":2,"2917":3,"2918":5,"2919":4,"2920":2,"2921":3,"2923":2,"2924":2,"2927":1,"2930":1,"2934":3,"2936":2,"2937":2,"2939":1,"2942":2}}],["innovation",{"2":{"2895":1}}],["inner",{"0":{"1777":1},"1":{"1778":1,"1779":1,"1780":1},"2":{"356":1,"1957":1,"1991":1,"2173":1,"2549":1}}],["inbound",{"2":{"2270":1}}],["inoperable",{"2":{"1362":1}}],["inheriting",{"2":{"2862":1}}],["inheritance",{"2":{"536":1}}],["inherently",{"2":{"1781":1}}],["inherent",{"2":{"1285":1}}],["injection",{"0":{"2225":1}}],["injected",{"2":{"2221":1}}],["inject",{"2":{"624":1,"1616":1}}],["inability",{"2":{"2734":1}}],["inadvertently",{"2":{"2560":1}}],["inactivity",{"2":{"1951":2,"2281":1}}],["inactive",{"2":{"1416":1,"2007":1}}],["inappropriate",{"2":{"619":1}}],["inaugural",{"2":{"0":1}}],["ini",{"2":{"471":1,"472":1,"474":1,"480":1,"481":1,"487":1}}],["initiator2target",{"2":{"2270":4}}],["initiated",{"2":{"1930":1}}],["initiative",{"2":{"201":1}}],["initially",{"2":{"2551":1}}],["initial",{"0":{"1789":1,"2597":1},"1":{"2598":1,"2599":1,"2600":1,"2601":1,"2602":1},"2":{"93":1,"130":1,"134":2,"160":2,"188":1,"191":1,"199":2,"266":1,"1481":1,"1930":5,"1965":5,"2162":2,"2551":1,"2601":1,"2722":2,"2848":1,"2911":1}}],["initializing",{"2":{"632":1,"711":1,"2039":1,"2266":1,"2677":1,"2927":1}}],["initializers",{"2":{"1763":1,"1775":1}}],["initialized",{"2":{"631":1,"632":2,"635":2,"638":1,"639":1,"693":1,"1533":1,"1585":1,"1956":1,"2283":1,"2495":1,"2548":1,"2679":1}}],["initialize",{"2":{"622":1,"623":1,"703":1,"730":1,"731":1,"769":1,"806":1,"835":1,"864":1,"894":1,"929":1,"963":1,"997":1,"1031":1,"1065":1,"1099":1,"1133":1,"1167":1,"1220":1,"1247":1,"1268":1,"1302":1,"1378":2,"1698":1,"1956":1,"2283":1,"2312":1,"2680":1}}],["initializes",{"2":{"49":1}}],["initialization",{"0":{"631":1,"632":1,"635":1,"638":1,"2677":1},"1":{"632":1,"633":2,"634":2,"635":1,"636":2,"637":2,"638":1,"639":2,"640":2,"2678":1,"2679":1,"2680":1},"2":{"160":1,"176":2,"236":1,"249":1,"288":1,"335":2,"414":1,"415":1,"631":2,"632":1,"638":1,"649":1,"1364":1,"1422":2,"1620":1,"1981":2,"1994":1,"2677":2,"2679":1,"2680":1,"2721":1}}],["initialised",{"2":{"176":1}}],["initialise",{"2":{"65":1,"637":1,"2750":2,"2754":1}}],["initialisation",{"2":{"49":1,"73":1,"77":1,"94":2,"637":3,"742":1,"2449":1,"2678":1,"2721":1,"2750":4,"2754":1}}],["initilization",{"2":{"160":1}}],["init",{"0":{"633":1,"634":1,"636":1,"639":1,"640":1,"647":1,"703":1,"730":1,"769":1,"806":1,"835":1,"864":1,"894":1,"929":1,"963":1,"997":1,"1031":1,"1065":1,"1099":1,"1133":1,"1167":1,"1220":1,"1247":1,"1268":1,"1302":1,"1698":1,"2678":1,"2679":1,"2680":1},"1":{"731":1,"807":1,"865":1,"895":1,"930":1,"964":1,"998":1,"1032":1,"1066":1,"1100":1,"1134":1,"1168":1,"1221":1,"1269":1,"1699":1},"2":{"31":2,"34":4,"49":1,"50":1,"65":1,"114":2,"134":1,"160":2,"176":3,"191":7,"199":1,"236":3,"249":6,"266":2,"277":1,"317":1,"328":1,"332":1,"414":1,"532":1,"622":1,"623":7,"631":4,"633":2,"634":2,"636":2,"637":1,"639":2,"640":2,"646":1,"647":1,"648":2,"742":1,"769":1,"1319":1,"1406":2,"1407":6,"1408":2,"1480":1,"1545":1,"1622":1,"1632":12,"1695":2,"1696":2,"1700":1,"1701":1,"1702":1,"1844":3,"1950":1,"1956":5,"1957":2,"1976":3,"1977":1,"1981":2,"1983":1,"1990":1,"1994":1,"2034":1,"2036":1,"2039":1,"2066":3,"2075":2,"2182":1,"2184":1,"2266":1,"2270":1,"2280":1,"2283":4,"2449":1,"2501":1,"2601":1,"2678":4,"2679":4,"2680":2,"2721":8,"2749":3,"2750":8,"2754":3,"2791":1,"2942":1}}],["inexpensively",{"2":{"2828":1}}],["inefficient",{"2":{"2191":1,"2750":1}}],["inett",{"2":{"249":1}}],["inertia",{"0":{"1933":1},"2":{"190":2,"191":2,"1928":1,"1933":3}}],["inertial",{"2":{"175":1,"176":1,"1934":1,"1978":2}}],["inland",{"2":{"205":1,"317":1,"2390":1}}],["inline",{"2":{"50":1,"199":1,"348":2}}],["insulate",{"2":{"2422":1}}],["insulation",{"2":{"2418":3,"2422":2}}],["inspected",{"2":{"2724":1}}],["inspect",{"2":{"2421":1}}],["inspiration",{"2":{"1760":1,"1844":1,"2066":1,"2170":1,"2721":1}}],["inseparable",{"2":{"2727":1}}],["insensitive",{"2":{"1521":1}}],["insertion",{"2":{"2398":1}}],["inserting",{"2":{"683":1}}],["inserted",{"2":{"1651":1,"1662":1,"2323":3}}],["inserts",{"2":{"359":1}}],["insert",{"2":{"249":1,"266":1,"611":2,"1657":1,"1688":1,"1958":1,"2324":1,"2503":3,"2541":2,"2543":1}}],["insights",{"2":{"1206":1,"1991":1}}],["inside",{"2":{"169":1,"184":1,"241":1,"253":1,"270":1,"281":1,"487":1,"542":1,"627":1,"1197":1,"1526":2,"1627":1,"1844":1,"2066":1,"2174":1,"2428":1,"2444":1,"2549":1,"2572":2,"2578":1,"2583":1,"2619":1,"2675":2,"2677":1,"2687":3,"2750":4,"2937":1}}],["ins",{"2":{"587":2,"2503":1,"2541":1}}],["instructs",{"2":{"2750":1}}],["instruct",{"2":{"424":1,"2265":1,"2625":1}}],["instruction",{"2":{"1720":1,"2776":1}}],["instructions",{"0":{"2375":1,"2410":1,"2424":1},"1":{"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2411":1,"2412":1},"2":{"36":1,"112":1,"240":1,"328":1,"333":1,"379":1,"380":1,"427":1,"592":1,"681":1,"683":1,"1202":1,"1289":1,"1311":1,"1312":1,"1717":1,"2050":1,"2495":1,"2583":2,"2587":1,"2594":1,"2605":1,"2617":1,"2620":1,"2621":1,"2665":1,"2705":1,"2721":1,"2723":1,"2750":3,"2776":1,"2807":1,"2845":2,"2928":1}}],["instructing",{"2":{"23":1,"2630":1}}],["instant",{"2":{"2310":1,"2562":1}}],["instantly",{"0":{"320":1},"2":{"320":1,"328":1,"2923":1}}],["instances",{"2":{"277":1,"2631":1}}],["instance",{"2":{"31":3,"34":1,"137":1,"338":3,"397":1,"517":1,"631":1,"714":1,"719":1,"1200":1,"1201":1,"1433":1,"1441":1,"1459":1,"1464":1,"1465":1,"1466":1,"1521":1,"1522":1,"1523":1,"1540":1,"1585":1,"1587":1,"1592":1,"1596":1,"1602":1,"1736":1,"1827":1,"2001":1,"2161":1,"2164":1,"2167":1,"2295":1,"2310":1,"2311":1,"2374":1,"2619":1,"2689":1,"2694":1,"2721":1,"2882":1,"2886":1,"2904":2,"2905":1,"2911":1,"2916":1,"2918":1,"2921":1,"2923":1,"2924":1}}],["installs",{"2":{"2489":1,"2673":1}}],["installer",{"2":{"511":1,"1315":1,"2669":1,"2670":2,"2672":2}}],["installed",{"2":{"23":1,"65":1,"379":1,"420":1,"421":1,"422":2,"423":2,"458":1,"459":1,"682":1,"684":1,"1315":1,"1522":1,"1662":1,"2171":1,"2324":1,"2398":1,"2594":1,"2615":1,"2651":1,"2653":1,"2671":1,"2673":1}}],["installing",{"0":{"379":1,"2670":1},"1":{"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"2671":1},"2":{"317":1,"663":1,"2383":1,"2415":1,"2653":1,"2672":1}}],["install",{"0":{"421":1,"422":1,"423":1,"2594":1,"2650":1,"2651":1,"2653":1},"1":{"2651":1,"2652":1,"2653":1},"2":{"143":2,"145":2,"191":1,"294":1,"378":1,"379":1,"381":2,"382":2,"383":1,"384":1,"386":1,"387":2,"414":1,"420":2,"421":2,"422":1,"423":3,"424":1,"486":2,"511":1,"683":2,"1315":1,"1494":1,"1522":2,"1535":1,"2324":1,"2384":1,"2400":1,"2426":1,"2499":2,"2594":7,"2611":1,"2613":1,"2614":2,"2615":1,"2616":2,"2617":1,"2618":2,"2619":2,"2620":2,"2649":1,"2650":1,"2651":2,"2673":1,"2676":1}}],["installation",{"0":{"143":1,"682":1,"683":1,"684":1,"2616":1,"2618":1,"2619":1,"2620":1},"1":{"683":1,"684":1,"685":1,"686":1},"2":{"143":2,"173":1,"191":1,"240":1,"380":3,"422":1,"682":1,"685":1,"1315":2,"2318":1,"2615":1,"2619":2,"2620":1,"2651":1,"2652":2,"2675":1,"2676":1}}],["instability",{"2":{"73":1}}],["instead",{"2":{"5":1,"17":1,"25":1,"30":1,"33":1,"45":2,"65":1,"70":1,"87":1,"88":1,"95":1,"104":1,"127":1,"128":1,"160":3,"164":1,"184":1,"188":1,"191":1,"195":1,"196":1,"199":1,"203":1,"206":1,"213":1,"217":1,"222":1,"232":2,"234":1,"240":2,"265":1,"268":1,"283":1,"285":1,"302":1,"308":1,"323":2,"332":1,"432":1,"448":1,"459":1,"468":1,"471":1,"509":1,"514":2,"522":1,"532":1,"544":1,"559":1,"561":1,"562":2,"563":1,"568":1,"586":1,"591":2,"613":1,"637":2,"658":1,"670":1,"681":1,"683":2,"684":1,"696":1,"700":1,"716":1,"719":1,"722":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1190":1,"1193":1,"1212":1,"1280":1,"1281":1,"1294":2,"1299":1,"1330":1,"1345":1,"1348":1,"1349":1,"1351":1,"1365":1,"1375":1,"1378":1,"1389":1,"1393":1,"1414":1,"1416":1,"1432":1,"1433":1,"1444":1,"1445":1,"1449":1,"1451":1,"1466":1,"1512":2,"1521":1,"1528":1,"1532":1,"1539":1,"1540":2,"1543":1,"1552":1,"1596":1,"1606":1,"1616":2,"1617":1,"1627":1,"1659":1,"1666":1,"1736":1,"1763":1,"1771":1,"1780":1,"1782":1,"1783":1,"1838":1,"1846":1,"1930":1,"1955":2,"1976":1,"1978":2,"1986":1,"1987":1,"2005":2,"2039":1,"2041":1,"2058":1,"2069":1,"2074":1,"2156":1,"2164":1,"2171":1,"2174":1,"2218":1,"2221":1,"2262":1,"2274":1,"2290":1,"2302":1,"2322":2,"2323":1,"2324":1,"2372":1,"2376":1,"2386":1,"2403":1,"2407":2,"2417":1,"2425":1,"2427":1,"2439":1,"2475":1,"2487":1,"2489":1,"2497":1,"2503":1,"2551":1,"2555":1,"2572":1,"2586":1,"2591":1,"2619":2,"2620":2,"2627":1,"2631":1,"2645":1,"2652":1,"2656":1,"2677":1,"2710":1,"2713":1,"2719":2,"2721":2,"2723":1,"2725":1,"2734":1,"2748":2,"2749":3,"2750":2,"2757":1,"2788":2,"2839":1,"2854":1,"2864":1,"2871":1,"2877":1,"2885":1,"2911":1,"2912":1,"2913":1,"2914":1,"2921":2,"2924":1,"2929":1,"2934":1}}],["instituted",{"2":{"1":1}}],["invalid",{"2":{"210":1,"236":2,"249":3,"285":1,"293":1,"294":2,"305":1,"314":1,"333":1,"655":1,"657":1,"1250":1,"1828":1,"2446":1}}],["invited",{"2":{"194":1,"217":1}}],["invisible",{"2":{"176":1,"2418":1}}],["invented",{"2":{"1347":1}}],["inversion",{"2":{"210":1}}],["inversely",{"2":{"719":1}}],["inverse",{"2":{"210":1,"566":1}}],["inverts",{"2":{"222":1,"1422":1,"1591":1,"1956":6,"1978":2,"1980":2,"2283":6}}],["inverted",{"2":{"199":1,"285":1,"294":1,"1832":1,"1956":1,"2283":1}}],["invert",{"0":{"1591":1,"2042":1,"2043":1},"2":{"114":3,"190":1,"191":1,"210":1,"222":1,"758":1,"1422":1,"1591":2,"1736":1,"1826":1,"1828":1,"1956":13,"1978":2,"1980":3,"1981":1,"1982":1,"2042":2,"2043":5,"2283":9,"2854":2}}],["investigations",{"2":{"134":1}}],["invoking",{"2":{"2167":1,"2270":1,"2459":1,"2671":1}}],["invoke",{"2":{"294":1,"625":1,"645":1,"2270":1,"2323":1,"2750":1,"2927":1}}],["invoked",{"2":{"92":1,"572":1,"644":1,"654":1,"655":2,"656":2,"657":1,"1785":1,"1794":1,"1795":1,"1796":1,"1902":1,"1904":1,"1906":1,"1909":1,"1941":1,"2054":1,"2146":1,"2148":1,"2150":1,"2153":1,"2302":1,"2333":1,"2335":1,"2411":1,"2749":1,"2750":1}}],["involve",{"2":{"2318":1,"2415":1}}],["involves",{"2":{"621":1,"2919":1}}],["involved",{"2":{"608":1,"685":1,"2691":1}}],["involving",{"2":{"99":1,"692":1,"2166":1,"2907":1,"2918":1}}],["invocations",{"2":{"1941":1,"2941":1}}],["invocation",{"2":{"176":1,"236":1,"654":1}}],["inputting",{"2":{"1608":1,"1609":1,"2323":1,"2411":1}}],["inputs",{"2":{"637":1,"692":2,"1356":1,"1410":1,"1979":1,"2033":1,"2421":1,"2757":2}}],["input",{"0":{"1352":1,"2322":1,"2324":1,"2327":1,"2329":1,"2331":1,"2332":1,"2333":2,"2335":2,"2337":1,"2338":1,"2339":1,"2470":1},"1":{"2323":1,"2328":1,"2330":1,"2334":2,"2336":2},"2":{"94":1,"114":1,"154":4,"160":1,"176":1,"199":2,"214":2,"236":2,"243":3,"249":2,"297":1,"312":1,"442":1,"559":1,"563":1,"637":2,"758":6,"769":2,"1210":1,"1413":4,"1436":1,"1526":3,"1693":1,"1732":2,"1736":1,"1743":1,"1778":1,"1779":1,"1780":2,"1781":1,"1979":1,"2008":1,"2036":1,"2206":1,"2265":1,"2287":1,"2303":1,"2317":1,"2318":2,"2320":5,"2321":6,"2323":2,"2324":17,"2325":7,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":2,"2335":1,"2336":2,"2337":2,"2338":2,"2339":2,"2340":2,"2352":1,"2355":1,"2356":1,"2357":1,"2360":1,"2362":1,"2363":1,"2367":1,"2377":1,"2383":1,"2384":1,"2389":2,"2401":2,"2421":1,"2461":2,"2474":1,"2495":3,"2533":7,"2662":1,"2721":1,"2747":1,"2748":16,"2776":1,"2858":1,"2865":2,"2869":1,"2879":1,"2915":1,"2918":1,"2940":1}}],["induced",{"2":{"1782":1,"2921":1}}],["industry",{"2":{"160":1}}],["indisinguishable",{"2":{"2749":1}}],["indirect",{"2":{"2324":1}}],["individually",{"2":{"1244":1,"2437":1}}],["individual",{"2":{"542":1,"740":1,"1285":1,"1286":1,"1458":1,"1497":2,"1535":1,"1541":1,"1760":1,"1837":2,"2032":1,"2171":1,"2312":1,"2410":1,"2438":1,"2694":1}}],["indicative",{"2":{"2310":1}}],["indicating",{"2":{"1775":1,"2443":1,"2919":1}}],["indication",{"2":{"1406":1,"1407":6,"1423":1,"1841":1,"1849":1,"2061":1,"2072":1}}],["indicated",{"2":{"1532":1,"1956":1,"2283":1,"2288":1,"2289":1,"2722":1}}],["indicate",{"2":{"1440":1,"1467":1,"1532":1,"1624":1,"2074":1,"2578":1,"2645":1}}],["indicates",{"2":{"563":1,"580":1,"581":1,"582":1,"649":2,"1639":1,"1658":1,"1717":1,"2164":1,"2551":1,"2578":1}}],["indicator",{"0":{"185":1,"2073":1},"1":{"2074":1,"2075":1},"2":{"114":1,"185":1,"191":2,"199":1,"266":1,"298":1,"317":1,"568":1,"1538":1,"1636":1,"1641":1,"1642":1,"1830":1,"1832":1,"1835":2,"1841":1,"1845":1,"1849":3,"1859":1,"1861":1,"2061":1,"2068":1,"2072":3,"2073":3,"2074":2,"2085":1,"2087":1,"2661":1,"2721":2,"2850":1,"2873":1}}],["indicators",{"0":{"1829":1,"1849":1,"1902":1,"1904":1,"1906":1,"1909":1,"2072":1,"2075":1,"2146":1,"2148":1,"2150":1,"2153":1,"2860":1},"1":{"1830":1,"1831":1,"1832":1,"1833":1,"1834":1,"1835":1,"1836":1,"1837":1,"1903":1,"1905":1,"2147":1,"2149":1},"2":{"63":1,"93":1,"114":1,"160":1,"185":4,"191":1,"210":2,"222":1,"587":1,"666":1,"687":1,"1632":12,"1829":1,"1830":1,"1849":6,"2072":6,"2073":3,"2074":3,"2075":1,"2181":2,"2819":1,"2860":2,"2873":1}}],["indices",{"2":{"160":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"2296":1,"2322":1,"2323":1,"2870":1}}],["indemnification",{"2":{"2728":1}}],["indefinite",{"2":{"2001":1}}],["indefinitely",{"2":{"1592":1,"2563":1,"2747":1,"2750":1}}],["indeed",{"2":{"644":1}}],["indenting",{"2":{"510":1}}],["indent",{"2":{"346":1,"510":2,"512":1,"519":1}}],["indented",{"0":{"346":1},"2":{"348":2,"519":1}}],["indentation",{"2":{"249":1,"510":2,"2600":1}}],["independence",{"2":{"307":1}}],["independently",{"2":{"1604":1,"1933":1,"1976":1,"2182":1,"2260":1,"2474":1}}],["independent",{"0":{"1613":1},"1":{"1614":1},"2":{"113":1,"114":1,"176":1,"1416":1,"2214":1,"2662":1,"2848":1}}],["indexes",{"2":{"2298":1}}],["indexed",{"2":{"692":2,"696":1,"2550":1,"2655":1,"2770":5}}],["index>",{"2":{"432":1}}],["indexing",{"2":{"333":1}}],["index",{"0":{"704":1,"732":1,"736":1,"806":1,"808":1,"810":1,"814":1,"818":1,"820":1,"822":1,"824":1,"838":1,"842":1,"846":1,"848":1,"864":1,"866":1,"868":1,"872":1,"876":1,"878":1,"880":1,"882":1,"894":1,"896":1,"898":1,"900":1,"904":1,"908":1,"910":1,"912":1,"914":1,"929":1,"931":1,"933":1,"935":1,"939":1,"943":1,"945":1,"947":1,"949":1,"963":1,"965":1,"967":1,"969":1,"973":1,"977":1,"979":1,"981":1,"983":1,"997":1,"999":1,"1001":1,"1003":1,"1007":1,"1011":1,"1013":1,"1015":1,"1017":1,"1031":1,"1033":1,"1035":1,"1037":1,"1041":1,"1045":1,"1047":1,"1049":1,"1051":1,"1065":1,"1067":1,"1069":1,"1071":1,"1075":1,"1079":1,"1081":1,"1083":1,"1085":1,"1099":1,"1101":1,"1103":1,"1105":1,"1109":1,"1113":1,"1115":1,"1117":1,"1119":1,"1133":1,"1135":1,"1137":1,"1139":1,"1143":1,"1147":1,"1149":1,"1151":1,"1153":1,"1167":1,"1169":1,"1171":1,"1173":1,"1177":1,"1181":1,"1183":1,"1185":1,"1187":1,"1220":1,"1222":1,"1224":1,"1226":1,"1230":1,"1234":1,"1236":1,"1238":1,"1240":1,"1303":1,"1713":1,"1715":1,"1859":1,"2014":1,"2016":1,"2018":1,"2020":1,"2022":1,"2085":1,"2344":1,"2347":1,"2350":1},"1":{"705":1,"733":1,"737":1,"807":1,"809":1,"811":1,"815":1,"819":1,"821":1,"823":1,"825":1,"839":1,"843":1,"847":1,"849":1,"865":1,"867":1,"869":1,"873":1,"877":1,"879":1,"881":1,"883":1,"895":1,"897":1,"899":1,"901":1,"905":1,"909":1,"911":1,"913":1,"915":1,"930":1,"932":1,"934":1,"936":1,"940":1,"944":1,"946":1,"948":1,"950":1,"964":1,"966":1,"968":1,"970":1,"974":1,"978":1,"980":1,"982":1,"984":1,"998":1,"1000":1,"1002":1,"1004":1,"1008":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":1,"1036":1,"1038":1,"1042":1,"1046":1,"1048":1,"1050":1,"1052":1,"1066":1,"1068":1,"1070":1,"1072":1,"1076":1,"1080":1,"1082":1,"1084":1,"1086":1,"1100":1,"1102":1,"1104":1,"1106":1,"1110":1,"1114":1,"1116":1,"1118":1,"1120":1,"1134":1,"1136":1,"1138":1,"1140":1,"1144":1,"1148":1,"1150":1,"1152":1,"1154":1,"1168":1,"1170":1,"1172":1,"1174":1,"1178":1,"1182":1,"1184":1,"1186":1,"1188":1,"1221":1,"1223":1,"1225":1,"1227":1,"1231":1,"1235":1,"1237":1,"1239":1,"1241":1,"1304":1,"1714":1,"1716":1,"1860":1,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2024":1,"2086":1,"2345":1,"2346":1,"2348":1,"2349":1,"2351":1},"2":{"46":3,"90":10,"105":8,"145":1,"324":1,"325":2,"333":1,"335":1,"589":1,"611":2,"645":1,"693":1,"705":2,"726":2,"729":1,"733":3,"737":2,"752":1,"800":1,"802":2,"805":1,"807":2,"809":2,"811":3,"815":3,"819":3,"821":3,"823":2,"825":2,"831":2,"839":3,"843":3,"847":3,"849":3,"855":1,"860":2,"863":1,"865":2,"867":2,"869":3,"873":3,"877":3,"879":3,"881":2,"883":2,"887":1,"890":2,"893":1,"895":2,"897":2,"899":2,"901":3,"905":3,"909":3,"911":3,"913":2,"915":2,"919":1,"920":1,"925":2,"928":1,"930":2,"932":2,"934":2,"936":3,"940":3,"944":3,"946":3,"948":2,"950":2,"954":1,"959":2,"962":1,"964":2,"966":2,"968":2,"970":3,"974":3,"978":3,"980":3,"982":2,"984":2,"988":1,"993":2,"996":1,"998":2,"1000":2,"1002":2,"1004":3,"1008":3,"1012":3,"1014":3,"1016":2,"1018":2,"1022":1,"1027":2,"1030":1,"1032":2,"1034":2,"1036":2,"1038":3,"1042":3,"1046":3,"1048":3,"1050":2,"1052":2,"1056":1,"1061":2,"1064":1,"1066":2,"1068":2,"1070":2,"1072":3,"1076":3,"1080":3,"1082":3,"1084":2,"1086":2,"1090":1,"1091":1,"1095":2,"1098":1,"1100":2,"1102":2,"1104":2,"1106":3,"1110":3,"1114":3,"1116":3,"1118":2,"1120":2,"1124":1,"1125":1,"1129":2,"1132":1,"1134":2,"1136":2,"1138":2,"1140":3,"1144":3,"1148":3,"1150":3,"1152":2,"1154":2,"1158":1,"1163":2,"1166":1,"1168":2,"1170":2,"1172":2,"1174":3,"1178":3,"1182":3,"1184":3,"1186":2,"1188":2,"1214":1,"1216":2,"1219":1,"1221":2,"1223":2,"1225":2,"1227":3,"1231":3,"1235":3,"1237":3,"1239":2,"1241":2,"1304":2,"1316":1,"1342":1,"1350":1,"1364":1,"1372":1,"1373":1,"1599":2,"1606":13,"1607":3,"1611":5,"1612":7,"1651":4,"1662":7,"1714":2,"1716":2,"1746":1,"1748":1,"1837":2,"1840":7,"1849":2,"1860":2,"1872":1,"1907":2,"1910":2,"1949":2,"1951":2,"1955":1,"1956":4,"1976":1,"1994":2,"1996":1,"2001":1,"2015":2,"2017":2,"2019":2,"2021":2,"2023":2,"2060":7,"2072":2,"2073":5,"2086":2,"2098":1,"2151":2,"2154":2,"2191":4,"2279":2,"2281":2,"2283":4,"2302":1,"2309":2,"2322":1,"2325":2,"2344":1,"2345":1,"2346":1,"2347":1,"2348":2,"2350":1,"2351":2,"2364":1,"2365":2,"2411":1,"2533":2,"2627":1,"2760":3,"2770":3,"2862":1}}],["inf",{"2":{"685":4}}],["influence",{"2":{"214":1,"631":1,"2906":1}}],["infrequently",{"2":{"202":1}}],["infrastructure",{"0":{"51":1,"65":1,"70":1,"76":1,"95":1},"2":{"2399":1}}],["inferred",{"2":{"2712":1,"2713":1}}],["inferior",{"2":{"1410":1}}],["infer",{"2":{"133":1,"134":1,"236":1,"266":1}}],["infinity87",{"2":{"222":3}}],["infinity60",{"2":{"154":2,"236":1}}],["infinity",{"2":{"114":3,"134":1,"154":2,"2276":1,"2410":2}}],["infinitely",{"2":{"553":1}}],["infinite",{"2":{"93":1,"179":1,"1789":1}}],["informing",{"2":{"2572":1,"2580":1}}],["informs",{"2":{"654":1}}],["inform",{"2":{"276":1,"747":1,"756":1}}],["informed",{"2":{"275":1,"2563":1}}],["information",{"0":{"586":1,"2375":1,"2663":1},"1":{"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2664":1,"2665":1},"2":{"2":1,"14":1,"70":1,"118":1,"132":1,"137":1,"138":1,"169":1,"170":2,"174":1,"182":1,"184":2,"194":1,"196":1,"201":1,"217":1,"247":1,"285":1,"288":2,"289":1,"297":1,"298":1,"304":1,"306":1,"315":1,"320":1,"331":1,"372":1,"373":1,"422":1,"435":3,"464":1,"465":1,"466":1,"484":1,"488":1,"492":1,"559":2,"568":2,"569":1,"572":1,"630":1,"654":1,"663":2,"670":1,"681":1,"695":1,"696":1,"718":1,"740":1,"749":1,"752":1,"763":1,"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1189":1,"1206":1,"1286":1,"1315":1,"1319":1,"1325":1,"1327":1,"1353":1,"1374":1,"1375":1,"1394":1,"1400":1,"1427":1,"1434":2,"1541":1,"1552":1,"1574":1,"1586":2,"1624":1,"1628":1,"1829":1,"1839":1,"1942":1,"1958":1,"1983":1,"1991":1,"2030":1,"2032":1,"2050":1,"2059":1,"2074":1,"2171":1,"2172":1,"2269":1,"2274":1,"2303":1,"2375":1,"2404":1,"2406":1,"2407":2,"2410":1,"2411":4,"2419":1,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1,"2445":1,"2495":1,"2550":1,"2565":1,"2572":1,"2582":1,"2605":1,"2609":1,"2610":1,"2615":1,"2635":1,"2676":3,"2690":1,"2707":3,"2720":1,"2747":1,"2749":2,"2750":3,"2762":1,"2844":5,"2845":1,"2922":1,"2935":1,"2942":1}}],["info",{"0":{"435":1,"665":1,"668":1,"2446":1,"2844":1},"1":{"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"2845":1,"2846":1,"2847":1,"2848":1,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2854":1,"2855":1,"2856":1,"2857":1,"2858":1,"2859":1,"2860":1,"2861":1,"2862":1,"2863":1,"2864":1,"2865":1,"2866":1,"2867":1,"2868":1,"2869":1,"2870":1,"2871":1,"2872":1,"2873":1,"2874":1,"2875":1,"2876":1},"2":{"70":33,"73":1,"76":4,"99":1,"109":1,"110":1,"111":2,"112":1,"114":5,"134":1,"145":1,"152":1,"160":1,"169":2,"176":3,"184":3,"191":4,"198":1,"199":4,"201":2,"210":2,"212":5,"222":22,"224":2,"232":1,"236":8,"238":1,"249":26,"262":1,"266":3,"277":1,"333":1,"338":1,"346":2,"431":4,"434":1,"435":4,"441":2,"446":1,"461":3,"487":1,"489":1,"490":2,"491":1,"494":1,"498":1,"527":1,"553":3,"663":3,"664":2,"665":1,"666":1,"667":5,"668":2,"670":2,"671":3,"681":1,"1286":1,"1317":1,"1333":1,"1334":1,"1373":1,"1461":1,"1466":1,"1622":1,"1624":1,"1627":1,"1632":1,"1845":1,"2032":1,"2037":2,"2050":1,"2068":1,"2251":1,"2287":1,"2294":1,"2310":1,"2390":1,"2407":1,"2443":1,"2444":1,"2446":1,"2447":1,"2501":17,"2555":1,"2619":1,"2620":1,"2627":1,"2644":1,"2721":5,"2776":3,"2777":1,"2778":1,"2844":4,"2862":2,"2901":1,"2930":1}}],["int9",{"2":{"2503":1,"2540":1}}],["int7",{"2":{"2503":1,"2540":1}}],["int6",{"2":{"2503":1,"2540":1}}],["int3",{"2":{"2503":1,"2540":1}}],["int2",{"2":{"2034":3,"2503":1,"2540":1}}],["int8",{"0":{"1754":1},"1":{"1755":1},"2":{"1658":4,"1741":1,"1755":1,"1987":4,"2001":2,"2270":3,"2293":1,"2503":1,"2540":1}}],["intimidates",{"2":{"2572":1}}],["intimidated",{"2":{"412":1,"538":1}}],["intimidating",{"0":{"1337":1}}],["intimate",{"2":{"754":1}}],["int4",{"2":{"369":1,"2503":1,"2540":1,"2556":1}}],["int5",{"2":{"369":1,"2503":1,"2540":1,"2556":1}}],["int16",{"0":{"1749":1,"1752":1},"1":{"1750":1,"1751":1,"1753":1},"2":{"1737":1,"1741":1,"1753":1,"2750":2}}],["int1",{"2":{"369":1,"2503":1,"2540":1,"2556":1}}],["intrinsics",{"2":{"236":1}}],["introducing",{"2":{"2898":1}}],["introduction",{"0":{"262":1,"470":1,"2301":1,"2404":1},"1":{"471":1,"472":1,"2405":1,"2406":1,"2407":1,"2408":1},"2":{"293":1,"305":1,"314":1,"2638":1,"2926":1}}],["introduces",{"2":{"298":1,"2918":1}}],["introduced",{"2":{"191":1,"222":1,"236":1,"293":1,"305":1,"308":1,"314":1,"663":1,"2621":1}}],["introduce",{"2":{"191":1,"199":1,"358":1,"1843":1,"2063":2}}],["introspection",{"0":{"1628":2},"2":{"176":1,"191":1,"210":1,"222":1,"249":1,"272":1,"277":2,"1628":2}}],["int",{"0":{"732":1,"810":1,"814":1,"838":1,"842":1,"868":1,"872":1,"900":1,"904":1,"935":1,"939":1,"969":1,"973":1,"1003":1,"1007":1,"1037":1,"1041":1,"1071":1,"1075":1,"1105":1,"1109":1,"1139":1,"1143":1,"1173":1,"1177":1,"1226":1,"1230":1,"1303":1},"1":{"733":1,"811":1,"815":1,"839":1,"843":1,"869":1,"873":1,"901":1,"905":1,"936":1,"940":1,"970":1,"974":1,"1004":1,"1008":1,"1038":1,"1042":1,"1072":1,"1076":1,"1106":1,"1110":1,"1140":1,"1144":1,"1174":1,"1178":1,"1227":1,"1231":1,"1304":1},"2":{"222":1,"510":1,"520":1,"521":1,"522":1,"669":2,"698":4,"733":1,"811":1,"815":1,"839":1,"843":1,"869":1,"873":1,"901":1,"905":1,"936":1,"940":1,"970":1,"974":1,"1004":1,"1008":1,"1038":1,"1042":1,"1072":1,"1076":1,"1106":1,"1110":1,"1140":1,"1144":1,"1174":1,"1178":1,"1227":1,"1231":1,"1304":1,"1326":7,"1365":1,"1950":1,"1983":4,"2034":5,"2036":1,"2270":2,"2749":11,"2750":5}}],["intel",{"2":{"2497":1}}],["intelligent",{"2":{"2646":1,"2666":1}}],["intelligently",{"2":{"669":1}}],["intellisense",{"2":{"1971":1,"2672":1,"2673":1,"2676":1}}],["intensity",{"2":{"2173":1}}],["intend",{"2":{"486":1,"531":1,"625":1,"1493":1,"1823":1,"2047":1,"2649":1}}],["intended",{"2":{"240":1,"328":1,"625":1,"654":2,"1416":1,"1422":1,"1627":1,"1958":1,"2678":1,"2679":1,"2680":1,"2897":1,"2905":1,"2918":1}}],["intentional",{"2":{"2562":1}}],["intentionally",{"2":{"2560":3}}],["intention",{"2":{"1516":1,"2721":1}}],["intent",{"2":{"293":1,"305":1,"314":1,"387":1,"510":1,"2895":1}}],["integral",{"2":{"492":1}}],["integrates",{"2":{"2751":1}}],["integrated",{"2":{"1202":1,"2037":1,"2646":1,"2671":4,"2707":1,"2746":1}}],["integrate",{"2":{"133":1,"284":1,"666":1,"1978":1}}],["integration",{"0":{"541":1,"2751":1,"2940":1},"1":{"2752":1,"2753":1,"2754":1,"2755":1,"2756":1,"2757":1},"2":{"118":1,"153":1,"199":1,"503":3,"540":1,"541":1,"2583":1,"2734":1,"2751":1,"2752":1,"2810":1,"2940":1}}],["integrations",{"2":{"24":1,"141":1}}],["integers",{"2":{"669":1,"687":1}}],["integer",{"2":{"114":1,"176":1,"191":1,"210":1,"521":1,"522":2,"669":1,"1487":1,"1751":1,"1954":1,"1987":2,"2282":1,"2310":1,"2744":1,"2758":1,"2766":1,"2905":1}}],["interpolation",{"2":{"2770":3}}],["interprets",{"2":{"1587":2}}],["interpret",{"2":{"1327":1,"1532":1,"1782":1,"1979":1,"2009":1,"2448":1,"2921":1}}],["interpreted",{"0":{"2466":1},"1":{"2467":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1},"2":{"203":1,"1664":1,"2448":1,"2911":1}}],["interdependence",{"2":{"2735":1}}],["intervention",{"2":{"2205":1,"2750":1}}],["intervals",{"2":{"654":1,"1450":1,"1928":1,"2180":6}}],["interval",{"0":{"2229":1,"2233":1,"2247":1},"1":{"2230":1,"2234":1},"2":{"49":1,"63":1,"93":1,"112":2,"328":1,"559":1,"562":1,"564":1,"717":3,"1289":2,"1573":1,"1920":1,"1929":4,"1930":4,"1931":8,"1933":2,"1934":2,"1951":3,"1962":2,"2041":3,"2178":1,"2230":1,"2233":1,"2234":1,"2247":2,"2281":2,"2851":1,"2866":1,"2873":1,"2875":1}}],["inter",{"2":{"2170":1}}],["intercepting",{"0":{"2567":1},"1":{"2568":1,"2569":1,"2570":1},"2":{"2568":1}}],["interceptable",{"2":{"2291":1,"2293":1}}],["intercept",{"2":{"1981":2,"1982":2,"1986":1,"2568":1,"2569":4,"2570":2}}],["interchangeable",{"2":{"1978":1}}],["interfacing",{"0":{"2293":1}}],["interfaces",{"2":{"559":1,"684":1,"2052":6,"2462":1,"2734":1,"2743":1}}],["interface",{"2":{"49":2,"114":1,"308":1,"419":1,"711":1,"742":1,"1245":1,"1369":1,"1404":2,"1478":1,"2047":1,"2049":3,"2050":1,"2052":11,"2501":1,"2582":1,"2632":1,"2729":1,"2737":1,"2749":1,"2812":1,"2841":1}}],["interfere",{"2":{"1359":1,"2924":1}}],["internet",{"2":{"763":1,"2934":1}}],["internally",{"2":{"1971":1,"2253":1,"2749":2,"2750":4}}],["internal",{"2":{"174":1,"222":1,"231":1,"235":1,"695":1,"711":1,"745":1,"1196":1,"1310":1,"1354":1,"1359":1,"1375":1,"1529":1,"1603":1,"1917":1,"1968":1,"2544":1,"2660":1,"2695":1,"2705":1,"2747":2,"2750":2,"2755":1}}],["internals",{"0":{"25":1,"51":1,"65":1,"70":1,"76":1,"95":1},"2":{"263":1,"536":1,"642":1,"1655":1}}],["international",{"0":{"2540":1},"2":{"74":1,"188":1,"191":1,"2323":1,"2473":1,"2503":18,"2540":12,"2880":5}}],["intermittently",{"2":{"613":1,"2661":1}}],["intermediates=yes",{"2":{"222":1}}],["intermediate",{"0":{"1420":1,"1769":1,"2900":1},"1":{"1770":1,"1771":1},"2":{"210":1,"222":1,"465":1,"466":1,"1532":1,"1939":1,"1942":1,"2591":1,"2748":2,"2899":1}}],["intersections",{"0":{"1654":1},"2":{"1649":1,"2265":2,"2865":1}}],["intersection",{"2":{"567":2,"2265":4}}],["interacting",{"2":{"488":1}}],["interaction",{"0":{"488":1},"1":{"489":1,"490":1,"491":1,"492":1},"2":{"362":1,"1636":1,"1781":1,"2000":1,"2205":1}}],["interactions",{"2":{"133":1,"134":1,"488":1}}],["interact",{"2":{"359":1,"473":1,"487":1,"494":1,"2270":1,"2705":1}}],["interacts",{"2":{"263":1}}],["interoperate",{"2":{"206":1}}],["interoperation",{"2":{"182":1}}],["interesting",{"2":{"2410":1,"2556":1,"2557":1,"2561":1}}],["interested",{"2":{"375":1,"377":1,"574":1,"611":1,"1531":1,"2750":1}}],["interest",{"2":{"175":1}}],["interrupter",{"2":{"2301":1}}],["interrupted",{"2":{"562":1,"1326":1,"2301":1,"2303":1,"2310":5}}],["interrupting",{"2":{"1512":1}}],["interruptions",{"2":{"760":1,"2303":1}}],["interruption",{"2":{"562":1}}],["interrupts",{"2":{"760":3,"2030":1,"2906":1}}],["interrupt",{"0":{"194":1,"217":1,"2034":1,"2035":1},"2":{"22":2,"73":1,"112":2,"114":1,"194":10,"199":1,"217":2,"222":2,"294":1,"760":1,"765":1,"1202":1,"1289":1,"1543":1,"2032":1,"2033":1,"2034":2,"2035":2,"2036":1,"2605":1,"2868":1}}],["into",{"0":{"2605":1,"2607":1},"2":{"18":1,"21":1,"35":1,"36":1,"50":2,"65":2,"72":1,"73":1,"75":1,"99":1,"113":1,"114":7,"119":1,"131":1,"133":1,"134":4,"145":3,"160":27,"173":1,"176":1,"179":1,"188":1,"191":1,"198":2,"201":1,"206":1,"210":2,"212":3,"222":1,"224":1,"236":1,"238":1,"249":11,"254":1,"265":1,"266":1,"272":1,"277":1,"284":1,"288":1,"302":1,"358":1,"359":1,"370":2,"393":1,"400":1,"401":1,"403":1,"405":1,"406":4,"408":1,"430":1,"446":2,"447":2,"448":1,"468":1,"474":1,"481":1,"493":1,"507":1,"509":1,"538":1,"543":1,"556":1,"566":4,"573":2,"577":1,"583":1,"596":1,"613":1,"617":1,"641":2,"642":1,"649":1,"654":1,"663":1,"666":1,"678":1,"683":1,"685":1,"711":1,"733":1,"777":1,"780":1,"789":1,"792":1,"811":1,"815":1,"819":1,"821":1,"839":1,"843":1,"847":1,"849":1,"869":1,"873":1,"877":1,"879":1,"901":1,"905":1,"909":1,"911":1,"936":1,"940":1,"944":1,"946":1,"970":1,"974":1,"978":1,"980":1,"1004":1,"1008":1,"1012":1,"1014":1,"1038":1,"1042":1,"1046":1,"1048":1,"1072":1,"1076":1,"1080":1,"1082":1,"1106":1,"1110":1,"1114":1,"1116":1,"1140":1,"1144":1,"1148":1,"1150":1,"1174":1,"1178":1,"1182":1,"1184":1,"1227":1,"1231":1,"1235":1,"1237":1,"1260":1,"1277":1,"1313":1,"1345":3,"1362":2,"1413":1,"1418":1,"1427":2,"1466":1,"1477":1,"1479":1,"1485":1,"1532":1,"1583":2,"1603":2,"1616":1,"1620":1,"1621":1,"1622":2,"1628":1,"1651":1,"1662":1,"1678":1,"1777":1,"1838":1,"1950":1,"1954":1,"1956":2,"1978":1,"1987":1,"2042":1,"2043":2,"2058":1,"2182":1,"2212":1,"2252":1,"2254":1,"2282":1,"2283":2,"2284":1,"2289":1,"2302":2,"2318":1,"2322":1,"2344":1,"2346":1,"2348":1,"2351":1,"2365":1,"2376":1,"2381":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":1,"2395":1,"2398":2,"2425":1,"2427":1,"2428":1,"2454":1,"2475":1,"2497":1,"2504":2,"2546":1,"2557":1,"2560":1,"2561":1,"2562":1,"2563":1,"2564":1,"2566":1,"2572":1,"2599":1,"2601":1,"2602":1,"2603":2,"2605":1,"2607":2,"2608":1,"2613":1,"2619":1,"2628":1,"2676":1,"2677":1,"2685":1,"2691":1,"2707":1,"2721":4,"2727":1,"2734":1,"2744":2,"2745":2,"2746":2,"2749":1,"2750":2,"2752":1,"2758":1,"2776":4,"2804":1,"2842":1,"2845":1,"2881":1,"2882":1,"2884":1,"2886":1,"2897":1,"2900":1,"2932":1,"2942":1}}],["inclination",{"2":{"2685":1}}],["inclusive",{"2":{"1840":1,"1979":2,"2060":1,"2750":1}}],["inclusions",{"2":{"236":1}}],["inclusion",{"2":{"50":1,"74":1,"134":1,"176":2,"234":1,"236":1,"397":1}}],["including",{"2":{"30":1,"33":1,"49":1,"174":1,"234":1,"235":1,"248":1,"277":1,"288":1,"298":1,"327":1,"492":1,"558":1,"700":1,"762":1,"1198":1,"1243":1,"1264":1,"1281":1,"1324":1,"1460":1,"1526":1,"1822":1,"2160":1,"2181":1,"2184":1,"2274":1,"2289":1,"2311":1,"2322":1,"2401":1,"2455":1,"2560":1,"2594":1,"2632":1,"2680":1,"2720":1,"2721":3,"2740":1,"2741":1,"2759":1,"2767":1,"2879":1,"2927":1}}],["include=",{"2":{"2410":2}}],["included",{"0":{"394":1,"397":1},"2":{"10":2,"114":1,"145":1,"273":1,"288":1,"308":1,"397":1,"400":1,"401":1,"525":1,"527":1,"558":2,"569":1,"674":1,"700":1,"722":1,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1432":1,"1457":2,"1458":1,"1479":1,"1520":1,"1627":1,"2037":1,"2191":2,"2374":1,"2410":2,"2411":1,"2449":1,"2554":1,"2560":2,"2672":1,"2722":4,"2758":2,"2760":1,"2782":1,"2894":1,"2933":1,"2937":1}}],["includes",{"0":{"1432":1},"2":{"5":1,"10":2,"12":1,"25":1,"94":1,"114":3,"191":6,"194":1,"210":7,"222":1,"266":4,"393":1,"397":1,"408":1,"572":1,"1346":1,"1401":1,"1405":2,"1536":1,"1849":1,"2072":1,"2172":1,"2374":1,"2399":1,"2411":1,"2469":1,"2559":1,"2561":2,"2562":1,"2565":1,"2675":1,"2685":2,"2726":1,"2746":1,"2758":1,"2766":1,"2879":1,"2884":1,"2935":1,"2936":1}}],["include",{"0":{"2924":1},"2":{"4":1,"12":1,"22":1,"50":1,"73":1,"114":3,"132":1,"133":2,"134":5,"160":2,"176":4,"199":1,"210":1,"222":1,"236":2,"265":1,"276":1,"277":1,"333":1,"405":1,"427":2,"431":3,"503":1,"510":3,"511":1,"512":1,"524":1,"587":1,"616":2,"620":1,"680":1,"688":2,"714":2,"715":2,"718":2,"765":2,"1192":1,"1200":2,"1201":2,"1245":2,"1266":1,"1296":2,"1300":2,"1314":1,"1324":1,"1362":1,"1402":1,"1409":1,"1432":3,"1438":1,"1443":2,"1457":1,"1458":2,"1461":1,"1466":6,"1473":1,"1498":1,"1500":1,"1502":1,"1509":1,"1550":2,"1551":2,"1616":2,"1655":1,"1680":1,"1759":1,"1918":1,"1937":1,"1942":1,"2035":1,"2046":1,"2159":1,"2174":1,"2187":1,"2312":3,"2322":1,"2409":1,"2411":6,"2418":1,"2430":1,"2432":1,"2448":1,"2450":1,"2554":1,"2562":2,"2598":1,"2669":1,"2719":2,"2720":1,"2721":8,"2726":1,"2743":1,"2748":1,"2750":4,"2824":1,"2832":1,"2845":2,"2878":3,"2879":2,"2882":1,"2894":1,"2924":1,"2937":2,"2941":1}}],["inch",{"2":{"1976":1}}],["inc",{"0":{"1629":1,"1630":1},"2":{"1629":2,"1630":2,"1844":2,"2066":2,"2937":1}}],["incredibly",{"2":{"1788":2,"2782":1}}],["increasing",{"2":{"563":1,"750":1,"1930":1,"1951":1,"1978":1,"2182":1,"2372":2,"2566":1,"2678":1,"2906":1}}],["increase",{"0":{"1558":1,"1873":1,"1874":1,"1879":1,"1880":1,"2099":1,"2100":1,"2105":1,"2106":1,"2111":1,"2112":1,"2117":1,"2118":1},"2":{"134":2,"160":1,"222":2,"561":1,"562":1,"563":1,"658":1,"1319":1,"1481":1,"1514":1,"1516":2,"1537":1,"1558":1,"1603":1,"1655":1,"1656":1,"1662":2,"1674":2,"1682":1,"1842":2,"1843":1,"1873":1,"1874":1,"1879":1,"1880":1,"1919":4,"1955":1,"1978":1,"2062":3,"2063":3,"2064":1,"2099":1,"2100":1,"2105":1,"2106":1,"2111":1,"2112":1,"2117":1,"2118":1,"2174":8,"2182":1,"2194":12,"2195":2,"2204":1,"2216":1,"2217":3,"2302":1,"2420":1,"2508":1,"2518":2,"2520":4,"2525":8,"2526":3,"2757":1,"2905":1}}],["increases",{"2":{"119":1,"203":1,"1487":1,"1489":1,"1845":1,"1846":2,"2064":2,"2068":1,"2069":2,"2195":2,"2505":1,"2524":1,"2678":1,"2864":1,"2871":1,"2905":2}}],["increased",{"2":{"70":1,"175":1,"262":1,"408":1,"655":1,"699":1,"752":2,"2064":1,"2172":1,"2312":1,"2750":2}}],["incrementms",{"2":{"2524":2,"2905":2}}],["incremented",{"2":{"1696":1,"2303":1}}],["incremental",{"2":{"414":1}}],["incrementing",{"2":{"403":1,"1949":1,"2279":1}}],["increments",{"2":{"145":1,"1960":1,"1961":1,"1975":1,"1976":2}}],["increment",{"2":{"114":1,"1533":2,"1846":2,"1949":1,"2069":4,"2175":3,"2279":1,"2864":2,"2870":3,"2871":4,"2905":2}}],["inception",{"2":{"113":1}}],["inconsistencies",{"2":{"2718":1}}],["inconsistent",{"2":{"510":1,"1285":1,"1364":1}}],["incoming",{"2":{"1526":1}}],["incomplete",{"2":{"614":1,"1833":1}}],["incompatibility",{"2":{"284":1,"2729":1}}],["incompatible",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"393":1,"1193":1,"1402":1,"2560":1,"2726":1,"2728":1,"2737":1}}],["incorporated",{"2":{"493":1,"556":1}}],["incorporates",{"2":{"408":1,"2821":1}}],["incorrect",{"2":{"114":1,"145":1,"191":2,"198":1,"222":1,"249":1,"333":1,"686":1,"1659":1,"1664":1,"2206":1,"2496":1,"2501":1,"2600":1}}],["incorrectly",{"2":{"11":1,"751":1,"1518":1,"1942":1,"2427":1}}],["in",{"0":{"3":1,"7":1,"8":1,"15":1,"23":1,"120":1,"206":1,"273":1,"394":1,"603":1,"1308":1,"1314":1,"1354":1,"1355":1,"1373":1,"1435":1,"1439":1,"1444":1,"1497":1,"1641":1,"1642":1,"1653":1,"1654":2,"1655":1,"2248":1,"2284":1,"2285":1,"2578":1,"2774":1},"1":{"1309":1,"1436":1,"1437":1,"1438":1,"1440":1,"1441":1,"1442":1,"1443":1,"1444":1,"1445":1,"1446":1,"1447":1,"1448":1,"1449":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1455":1,"1456":1,"1656":1,"1657":1,"1658":1,"2249":1,"2250":1,"2251":1,"2252":1,"2253":1,"2285":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2292":1,"2293":1,"2294":1,"2775":1,"2776":1,"2777":1,"2778":1,"2779":1,"2780":1,"2781":1},"2":{"0":1,"3":3,"5":2,"6":1,"9":1,"10":3,"11":1,"15":3,"16":2,"17":1,"19":1,"25":3,"28":1,"31":1,"33":1,"39":1,"48":1,"49":9,"50":5,"52":1,"55":1,"62":1,"64":1,"70":33,"73":2,"74":4,"75":3,"76":2,"77":1,"86":2,"87":1,"92":4,"94":1,"95":2,"99":3,"103":3,"108":1,"109":1,"110":2,"111":1,"113":1,"114":13,"118":1,"119":5,"120":4,"123":2,"124":4,"125":2,"126":1,"132":1,"133":1,"134":13,"139":2,"141":3,"143":3,"145":3,"153":1,"160":10,"169":3,"170":2,"172":2,"174":1,"175":2,"176":21,"179":1,"182":10,"184":3,"185":2,"186":1,"188":1,"189":1,"190":1,"191":13,"194":7,"195":1,"196":2,"199":11,"201":1,"202":1,"203":2,"206":2,"209":2,"210":10,"212":4,"213":2,"215":1,"217":2,"222":9,"228":3,"231":1,"232":1,"233":2,"234":4,"236":4,"240":2,"246":2,"248":1,"249":7,"251":1,"254":1,"262":1,"263":3,"264":1,"265":2,"266":7,"268":1,"272":1,"273":2,"274":1,"276":2,"277":2,"282":1,"283":1,"284":2,"285":4,"288":2,"289":1,"292":1,"294":2,"301":1,"303":2,"306":1,"307":4,"308":6,"312":1,"313":1,"315":1,"317":2,"320":1,"326":1,"328":1,"332":2,"333":4,"334":1,"338":5,"347":1,"348":1,"370":1,"371":1,"373":5,"375":2,"376":1,"377":1,"378":1,"387":2,"390":1,"391":3,"392":1,"393":4,"397":6,"399":1,"400":1,"401":1,"405":3,"408":3,"410":1,"413":2,"414":1,"420":1,"424":1,"427":10,"428":2,"430":1,"434":1,"435":3,"437":1,"438":2,"439":1,"440":2,"442":2,"443":2,"444":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"456":2,"458":2,"460":2,"461":1,"462":1,"481":1,"487":4,"489":3,"493":2,"494":3,"495":1,"496":1,"502":1,"503":3,"509":1,"510":2,"511":2,"512":1,"513":1,"514":2,"517":1,"518":2,"519":2,"526":1,"527":1,"530":2,"531":2,"533":1,"536":1,"537":1,"538":3,"539":1,"540":1,"541":1,"542":1,"553":2,"554":1,"555":1,"559":9,"562":2,"563":3,"565":1,"566":1,"567":3,"568":1,"573":3,"574":1,"578":1,"582":1,"586":5,"587":2,"589":2,"590":2,"591":3,"592":2,"593":1,"594":2,"595":2,"596":1,"597":3,"598":1,"608":1,"609":4,"611":3,"613":3,"614":4,"616":4,"617":6,"618":2,"619":1,"622":2,"623":2,"624":1,"630":1,"631":2,"637":1,"638":1,"641":2,"645":3,"653":1,"654":2,"655":2,"658":1,"664":3,"666":6,"667":3,"670":1,"671":2,"672":1,"673":1,"674":2,"678":1,"680":2,"681":4,"682":1,"683":5,"684":3,"685":3,"686":3,"687":1,"692":3,"693":2,"698":2,"700":2,"701":2,"705":1,"711":1,"713":1,"714":2,"715":2,"716":1,"717":1,"719":1,"726":3,"740":1,"741":3,"743":2,"745":1,"746":6,"747":6,"748":2,"750":1,"751":7,"752":3,"753":1,"754":1,"756":11,"758":1,"760":1,"761":1,"762":2,"764":1,"765":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"794":1,"795":1,"799":1,"800":1,"802":2,"828":1,"831":2,"854":1,"855":1,"857":6,"860":3,"886":1,"887":1,"890":3,"918":1,"919":1,"920":1,"925":3,"953":1,"954":1,"959":3,"987":1,"988":1,"993":3,"1021":1,"1022":1,"1027":3,"1055":1,"1056":1,"1061":3,"1089":1,"1090":1,"1091":1,"1092":6,"1095":3,"1123":1,"1124":1,"1125":1,"1126":6,"1129":3,"1157":1,"1158":1,"1160":6,"1163":3,"1189":2,"1191":1,"1192":1,"1194":2,"1195":2,"1197":2,"1198":2,"1200":3,"1201":3,"1202":2,"1203":1,"1204":1,"1205":3,"1210":7,"1213":1,"1214":1,"1216":3,"1242":1,"1243":2,"1245":4,"1250":1,"1263":2,"1264":2,"1280":1,"1281":2,"1282":6,"1283":1,"1284":1,"1285":1,"1286":2,"1288":1,"1289":1,"1292":2,"1294":4,"1295":1,"1304":1,"1308":1,"1313":1,"1316":2,"1317":1,"1319":2,"1327":2,"1329":2,"1335":1,"1339":1,"1340":2,"1342":1,"1343":1,"1344":1,"1345":4,"1347":1,"1348":3,"1351":2,"1353":2,"1354":1,"1362":3,"1363":4,"1365":4,"1366":2,"1367":2,"1373":2,"1375":7,"1376":1,"1377":2,"1378":2,"1385":2,"1392":1,"1403":1,"1406":2,"1407":6,"1409":4,"1410":9,"1412":1,"1413":1,"1414":2,"1416":1,"1417":1,"1419":2,"1421":5,"1422":4,"1425":1,"1426":1,"1427":3,"1428":3,"1429":1,"1433":3,"1435":2,"1436":1,"1438":1,"1440":1,"1441":2,"1442":3,"1443":1,"1445":3,"1457":3,"1458":6,"1459":1,"1460":4,"1461":1,"1462":1,"1464":9,"1465":5,"1466":3,"1468":1,"1471":1,"1474":2,"1475":3,"1476":1,"1477":3,"1478":1,"1479":6,"1481":2,"1482":2,"1483":2,"1484":1,"1485":4,"1486":3,"1487":2,"1489":1,"1493":2,"1494":1,"1495":1,"1496":1,"1497":3,"1508":1,"1512":2,"1513":1,"1515":1,"1516":1,"1517":1,"1519":3,"1520":2,"1521":3,"1527":3,"1529":1,"1531":3,"1532":9,"1533":2,"1535":1,"1538":1,"1539":1,"1540":1,"1541":1,"1544":1,"1545":1,"1550":1,"1552":2,"1573":1,"1577":1,"1580":1,"1582":1,"1583":2,"1584":1,"1585":3,"1587":3,"1588":3,"1589":2,"1591":1,"1592":1,"1595":1,"1596":1,"1597":2,"1599":3,"1600":1,"1601":1,"1603":2,"1605":3,"1606":14,"1613":1,"1614":1,"1615":1,"1616":4,"1617":1,"1619":1,"1621":2,"1622":2,"1624":2,"1625":1,"1626":1,"1628":1,"1629":1,"1630":1,"1636":6,"1639":2,"1641":1,"1642":1,"1649":3,"1655":3,"1656":4,"1660":2,"1661":1,"1662":1,"1664":2,"1666":1,"1669":1,"1670":1,"1672":2,"1675":5,"1676":1,"1677":1,"1683":1,"1684":1,"1685":1,"1686":1,"1687":1,"1688":1,"1689":1,"1691":1,"1696":2,"1734":1,"1736":3,"1756":1,"1757":2,"1759":1,"1760":2,"1762":1,"1764":1,"1770":2,"1771":2,"1775":1,"1776":2,"1777":1,"1778":3,"1779":1,"1780":4,"1781":2,"1782":3,"1783":1,"1785":1,"1789":3,"1791":1,"1823":2,"1824":1,"1825":2,"1827":2,"1828":3,"1829":2,"1830":1,"1831":2,"1832":1,"1837":1,"1840":1,"1842":2,"1843":5,"1844":5,"1845":4,"1846":2,"1849":2,"1901":1,"1907":2,"1910":2,"1913":1,"1917":1,"1920":1,"1924":1,"1927":1,"1928":2,"1929":3,"1930":3,"1931":2,"1932":1,"1933":5,"1934":2,"1937":2,"1938":1,"1939":2,"1940":2,"1942":5,"1947":1,"1948":1,"1949":3,"1950":2,"1951":4,"1954":3,"1955":7,"1956":4,"1958":1,"1960":1,"1961":1,"1962":1,"1963":1,"1964":3,"1965":8,"1967":1,"1968":5,"1969":1,"1970":3,"1971":4,"1973":1,"1974":1,"1975":1,"1976":9,"1977":1,"1979":6,"1983":6,"1985":3,"1987":3,"1991":1,"1992":1,"1993":1,"1994":4,"1999":1,"2001":2,"2004":1,"2005":3,"2006":2,"2007":1,"2008":3,"2009":1,"2032":2,"2033":2,"2034":2,"2035":3,"2036":2,"2037":1,"2041":1,"2044":1,"2046":2,"2047":1,"2050":3,"2051":1,"2052":1,"2055":1,"2057":1,"2060":1,"2062":3,"2063":12,"2064":2,"2066":5,"2067":1,"2068":4,"2069":2,"2072":2,"2145":1,"2151":2,"2154":2,"2156":1,"2157":2,"2159":4,"2160":1,"2161":2,"2163":2,"2164":1,"2167":2,"2168":1,"2170":2,"2171":1,"2172":2,"2174":3,"2175":1,"2176":1,"2178":2,"2180":6,"2181":1,"2182":5,"2184":1,"2187":2,"2192":4,"2198":1,"2199":4,"2200":1,"2203":1,"2211":1,"2213":1,"2218":1,"2221":1,"2230":1,"2234":1,"2249":2,"2251":1,"2252":4,"2253":1,"2254":1,"2257":1,"2258":2,"2260":1,"2262":2,"2263":1,"2265":2,"2266":4,"2268":2,"2269":1,"2270":4,"2271":2,"2277":1,"2278":1,"2279":3,"2280":2,"2281":2,"2282":1,"2283":3,"2284":2,"2285":1,"2286":5,"2287":3,"2288":1,"2289":1,"2290":3,"2291":4,"2293":5,"2294":2,"2295":2,"2296":1,"2298":1,"2301":2,"2302":9,"2303":5,"2305":3,"2306":1,"2309":1,"2310":12,"2311":3,"2312":6,"2315":1,"2318":1,"2320":1,"2322":5,"2323":6,"2324":5,"2325":2,"2337":1,"2338":1,"2339":1,"2347":1,"2350":1,"2355":1,"2367":1,"2368":1,"2370":1,"2372":3,"2374":1,"2375":2,"2376":3,"2378":1,"2379":2,"2380":1,"2381":2,"2382":3,"2383":4,"2384":2,"2386":2,"2387":1,"2388":2,"2389":1,"2390":1,"2391":2,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":3,"2398":2,"2401":3,"2405":3,"2408":1,"2409":1,"2410":2,"2411":12,"2412":1,"2415":2,"2416":3,"2418":1,"2419":1,"2420":2,"2421":5,"2422":5,"2423":1,"2424":4,"2425":2,"2426":2,"2427":2,"2428":4,"2432":1,"2442":1,"2443":2,"2444":2,"2446":3,"2447":8,"2448":4,"2449":3,"2451":3,"2453":3,"2454":1,"2455":1,"2456":1,"2457":3,"2459":8,"2466":1,"2467":1,"2468":1,"2472":2,"2473":1,"2474":2,"2475":4,"2483":1,"2490":2,"2491":1,"2492":2,"2493":1,"2494":2,"2495":3,"2496":2,"2497":1,"2498":2,"2501":3,"2502":2,"2503":2,"2505":1,"2509":1,"2516":1,"2518":2,"2524":1,"2525":1,"2526":3,"2533":2,"2534":1,"2542":2,"2544":2,"2546":3,"2550":4,"2551":2,"2552":2,"2553":2,"2554":3,"2555":2,"2556":2,"2557":2,"2559":2,"2560":5,"2561":3,"2562":4,"2563":3,"2564":1,"2565":2,"2566":2,"2568":1,"2576":1,"2577":2,"2578":1,"2579":1,"2584":1,"2587":4,"2588":1,"2589":1,"2590":2,"2591":3,"2598":2,"2599":2,"2600":1,"2601":1,"2602":2,"2603":4,"2605":9,"2607":4,"2608":1,"2609":2,"2615":1,"2619":1,"2621":4,"2622":2,"2625":3,"2626":2,"2627":8,"2628":1,"2630":2,"2631":1,"2632":1,"2633":1,"2635":2,"2643":3,"2644":1,"2645":2,"2646":1,"2648":1,"2650":1,"2658":2,"2659":1,"2662":2,"2666":1,"2669":1,"2671":4,"2673":1,"2675":1,"2676":9,"2677":1,"2678":3,"2679":1,"2680":1,"2681":1,"2683":2,"2684":2,"2685":3,"2687":2,"2688":1,"2689":2,"2691":1,"2694":1,"2695":1,"2700":3,"2702":2,"2704":2,"2705":1,"2706":1,"2707":1,"2709":1,"2710":5,"2712":1,"2713":1,"2714":1,"2718":1,"2719":6,"2721":19,"2722":4,"2723":2,"2724":4,"2725":1,"2726":1,"2728":2,"2734":1,"2740":1,"2743":1,"2744":1,"2745":1,"2746":1,"2747":5,"2748":3,"2749":38,"2750":14,"2751":2,"2754":1,"2756":1,"2758":2,"2760":5,"2761":1,"2763":1,"2764":2,"2765":1,"2766":2,"2767":2,"2768":4,"2769":2,"2770":3,"2771":2,"2772":1,"2774":1,"2775":4,"2776":7,"2777":4,"2780":1,"2781":4,"2782":1,"2788":2,"2802":1,"2803":1,"2805":1,"2811":1,"2833":1,"2835":1,"2839":2,"2843":1,"2844":2,"2846":2,"2847":2,"2848":2,"2849":1,"2850":1,"2851":4,"2854":1,"2855":1,"2856":1,"2862":10,"2863":1,"2864":5,"2865":2,"2867":2,"2870":1,"2871":5,"2873":3,"2875":2,"2876":2,"2877":4,"2878":2,"2879":3,"2880":1,"2882":1,"2883":1,"2885":1,"2887":3,"2889":1,"2894":3,"2895":1,"2897":1,"2899":2,"2900":1,"2903":1,"2904":1,"2905":13,"2906":5,"2907":3,"2911":2,"2912":6,"2913":1,"2914":1,"2915":2,"2917":2,"2918":4,"2919":6,"2920":2,"2921":5,"2922":1,"2923":5,"2924":1,"2927":3,"2928":3,"2930":2,"2933":2,"2934":2,"2936":2,"2937":5,"2938":1,"2939":1,"2940":1,"2942":4}}],["is25lp080",{"2":{"2705":2}}],["isc20",{"2":{"2034":1}}],["isc21",{"2":{"2034":1}}],["isdata",{"0":{"1719":1,"1721":1},"1":{"1720":1,"1722":1,"1723":1},"2":{"1720":1,"1722":1,"1723":1}}],["is=yes",{"2":{"1392":1}}],["isn",{"0":{"1335":1,"1347":1},"2":{"347":1,"595":1,"635":1,"643":1,"1194":1,"1378":1,"1459":1,"1479":1,"1511":1,"1977":1,"2265":1,"2422":1,"2459":1,"2669":1,"2671":1,"2882":1,"2925":1}}],["islefthand",{"0":{"332":1},"2":{"332":2,"333":2}}],["isp",{"0":{"2475":1,"2477":1,"2479":1,"2481":1,"2811":1},"1":{"2476":1,"2477":1,"2478":2,"2479":1,"2480":2,"2481":1,"2482":2,"2483":1,"2484":1,"2485":1,"2486":1,"2487":1,"2488":1,"2489":1,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2497":1,"2498":1,"2499":1,"2500":1,"2501":1},"2":{"328":1,"428":1,"686":1,"2381":1,"2382":1,"2475":2,"2476":3,"2477":2,"2479":2,"2481":2,"2484":1,"2486":1,"2487":1,"2489":2,"2490":1,"2495":2,"2497":1,"2560":1}}],["ish",{"0":{"344":1},"2":{"145":2,"222":1,"2312":1}}],["issi",{"2":{"114":2,"134":3,"176":1,"222":1,"236":4,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1}}],["issuing",{"2":{"49":1}}],["issued",{"2":{"2560":1,"2897":1}}],["issuecomment",{"2":{"1356":1}}],["issues",{"0":{"312":1,"2664":1,"2778":1,"2892":1},"1":{"2779":1,"2780":1,"2781":1},"2":{"24":1,"25":1,"86":1,"114":7,"134":8,"145":1,"160":2,"176":3,"199":1,"222":2,"240":1,"263":1,"266":1,"273":1,"276":1,"285":1,"294":1,"317":1,"333":1,"408":1,"562":2,"596":1,"611":1,"1190":1,"1204":1,"1206":1,"1312":1,"1315":1,"1316":1,"1326":1,"1328":1,"1334":1,"1335":1,"1349":1,"1350":1,"1353":1,"1356":3,"1358":1,"1373":1,"1407":1,"1417":1,"1449":1,"1460":1,"1480":1,"1484":1,"1545":1,"1603":1,"1940":2,"1941":2,"1979":1,"1987":1,"1991":1,"2265":1,"2268":1,"2291":1,"2324":1,"2399":1,"2546":1,"2566":2,"2583":1,"2627":1,"2628":1,"2633":1,"2644":1,"2655":1,"2657":1,"2660":1,"2664":1,"2673":1,"2791":1,"2902":2}}],["issue",{"0":{"1335":1},"2":{"5":1,"6":1,"73":1,"92":1,"114":2,"160":2,"176":4,"191":2,"199":3,"222":3,"236":1,"249":1,"294":2,"408":1,"542":1,"568":1,"602":1,"610":1,"611":6,"616":1,"617":1,"618":1,"642":1,"666":1,"670":1,"1293":1,"1315":1,"1330":1,"1333":1,"1335":1,"1336":1,"1339":1,"1353":1,"1427":1,"1628":1,"1942":1,"2004":1,"2434":1,"2447":1,"2483":1,"2546":1,"2558":1,"2566":1,"2631":1,"2644":1,"2660":1,"2664":1,"2683":1,"2704":1,"2718":1,"2720":1,"2723":1,"2810":1,"2843":1,"2892":2}}],["is31flcommon",{"2":{"249":1}}],["is31fl3236",{"0":{"797":1,"804":1,"806":1,"808":1,"810":1,"812":1,"814":1,"816":1,"818":1,"820":1,"822":1,"824":1},"1":{"798":1,"799":1,"800":1,"801":1,"802":1,"803":1,"804":1,"805":2,"806":1,"807":2,"808":1,"809":2,"810":1,"811":2,"812":1,"813":2,"814":1,"815":2,"816":1,"817":2,"818":1,"819":2,"820":1,"821":2,"822":1,"823":2,"824":1,"825":2},"2":{"266":1,"797":1,"798":4,"799":7,"800":6,"802":6,"810":1,"811":1,"814":1,"815":1,"818":1,"819":1,"820":1,"821":1,"1839":1,"2059":1,"2871":1}}],["is31fl3218",{"0":{"826":1,"833":1,"835":1,"836":1,"838":1,"840":1,"842":1,"844":1,"846":1,"848":1,"850":1,"851":1},"1":{"827":1,"828":1,"829":1,"830":1,"831":1,"832":1,"833":1,"834":2,"835":1,"836":1,"837":2,"838":1,"839":2,"840":1,"841":2,"842":1,"843":2,"844":1,"845":2,"846":1,"847":2,"848":1,"849":2,"850":1,"851":1},"2":{"236":3,"826":1,"827":4,"828":3,"829":2,"831":6,"838":1,"839":1,"842":1,"843":1,"846":1,"847":1,"848":1,"849":1,"1839":2,"2059":2,"2864":1,"2871":1}}],["is31fl3729",{"0":{"852":1,"862":1,"864":1,"866":1,"868":1,"870":1,"872":1,"874":1,"876":1,"878":1,"880":1,"882":1},"1":{"853":1,"854":1,"855":1,"856":1,"857":1,"858":1,"859":1,"860":1,"861":1,"862":1,"863":2,"864":1,"865":2,"866":1,"867":2,"868":1,"869":2,"870":1,"871":2,"872":1,"873":2,"874":1,"875":2,"876":1,"877":2,"878":1,"879":2,"880":1,"881":2,"882":1,"883":2},"2":{"249":2,"333":1,"852":1,"853":4,"854":14,"855":6,"856":10,"857":22,"858":1,"860":6,"868":1,"869":1,"872":1,"873":1,"876":1,"877":1,"878":1,"879":1,"1839":1,"2059":1,"2871":1}}],["is31fl3741a",{"2":{"1019":1,"1021":1,"1023":1}}],["is31fl3741",{"0":{"1019":1,"1029":1,"1031":1,"1033":1,"1035":1,"1037":1,"1039":1,"1041":1,"1043":1,"1045":1,"1047":1,"1049":1,"1051":1},"1":{"1020":1,"1021":1,"1022":1,"1023":1,"1024":1,"1025":1,"1026":1,"1027":1,"1028":1,"1029":1,"1030":2,"1031":1,"1032":2,"1033":1,"1034":2,"1035":1,"1036":2,"1037":1,"1038":2,"1039":1,"1040":2,"1041":1,"1042":2,"1043":1,"1044":2,"1045":1,"1046":2,"1047":1,"1048":2,"1049":1,"1050":2,"1051":1,"1052":2},"2":{"209":2,"236":2,"249":1,"1020":4,"1021":15,"1022":6,"1023":6,"1024":22,"1025":1,"1027":6,"1037":1,"1038":1,"1041":1,"1042":1,"1045":1,"1046":1,"1047":1,"1048":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3746a",{"0":{"1155":1,"1165":1,"1167":1,"1169":1,"1171":1,"1173":1,"1175":1,"1177":1,"1179":1,"1181":1,"1183":1,"1185":1,"1187":1},"1":{"1156":1,"1157":1,"1158":1,"1159":1,"1160":1,"1161":1,"1162":1,"1163":1,"1164":1,"1165":1,"1166":2,"1167":1,"1168":2,"1169":1,"1170":2,"1171":1,"1172":2,"1173":1,"1174":2,"1175":1,"1176":2,"1177":1,"1178":2,"1179":1,"1180":2,"1181":1,"1182":2,"1183":1,"1184":2,"1185":1,"1186":2,"1187":1,"1188":2},"2":{"158":1,"160":1,"209":4,"249":1,"1155":1,"1156":4,"1157":15,"1158":18,"1159":9,"1160":22,"1161":1,"1163":6,"1173":1,"1174":1,"1177":1,"1178":1,"1181":1,"1182":1,"1183":1,"1184":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3745",{"0":{"1121":1,"1131":1,"1133":1,"1135":1,"1137":1,"1139":1,"1141":1,"1143":1,"1145":1,"1147":1,"1149":1,"1151":1,"1153":1},"1":{"1122":1,"1123":1,"1124":1,"1125":1,"1126":1,"1127":1,"1128":1,"1129":1,"1130":1,"1131":1,"1132":2,"1133":1,"1134":2,"1135":1,"1136":2,"1137":1,"1138":2,"1139":1,"1140":2,"1141":1,"1142":2,"1143":1,"1144":2,"1145":1,"1146":2,"1147":1,"1148":2,"1149":1,"1150":2,"1151":1,"1152":2,"1153":1,"1154":2},"2":{"158":1,"160":1,"209":4,"249":1,"1121":1,"1122":4,"1123":21,"1124":18,"1125":5,"1126":22,"1127":1,"1129":6,"1139":1,"1140":1,"1143":1,"1144":1,"1147":1,"1148":1,"1149":1,"1150":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3743a",{"0":{"1087":1,"1097":1,"1099":1,"1101":1,"1103":1,"1105":1,"1107":1,"1109":1,"1111":1,"1113":1,"1115":1,"1117":1,"1119":1},"1":{"1088":1,"1089":1,"1090":1,"1091":1,"1092":1,"1093":1,"1094":1,"1095":1,"1096":1,"1097":1,"1098":2,"1099":1,"1100":2,"1101":1,"1102":2,"1103":1,"1104":2,"1105":1,"1106":2,"1107":1,"1108":2,"1109":1,"1110":2,"1111":1,"1112":2,"1113":1,"1114":2,"1115":1,"1116":2,"1117":1,"1118":2,"1119":1,"1120":2},"2":{"158":1,"160":1,"209":4,"249":1,"1087":1,"1088":4,"1089":21,"1090":18,"1091":5,"1092":22,"1093":1,"1095":6,"1105":1,"1106":1,"1109":1,"1110":1,"1113":1,"1114":1,"1115":1,"1116":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3742a",{"0":{"1053":1,"1063":1,"1065":1,"1067":1,"1069":1,"1071":1,"1073":1,"1075":1,"1077":1,"1079":1,"1081":1,"1083":1,"1085":1},"1":{"1054":1,"1055":1,"1056":1,"1057":1,"1058":1,"1059":1,"1060":1,"1061":1,"1062":1,"1063":1,"1064":2,"1065":1,"1066":2,"1067":1,"1068":2,"1069":1,"1070":2,"1071":1,"1072":2,"1073":1,"1074":2,"1075":1,"1076":2,"1077":1,"1078":2,"1079":1,"1080":2,"1081":1,"1082":2,"1083":1,"1084":2,"1085":1,"1086":2},"2":{"158":1,"160":1,"209":4,"249":1,"1053":1,"1054":4,"1055":15,"1056":6,"1057":6,"1058":22,"1059":1,"1061":6,"1071":1,"1072":1,"1075":1,"1076":1,"1079":1,"1080":1,"1081":1,"1082":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3736b",{"2":{"953":1,"955":1}}],["is31fl3736",{"0":{"951":1,"961":1,"963":1,"965":1,"967":1,"969":1,"971":1,"973":1,"975":1,"977":1,"979":1,"981":1,"983":1},"1":{"952":1,"953":1,"954":1,"955":1,"956":1,"957":1,"958":1,"959":1,"960":1,"961":1,"962":2,"963":1,"964":2,"965":1,"966":2,"967":1,"968":2,"969":1,"970":2,"971":1,"972":2,"973":1,"974":2,"975":1,"976":2,"977":1,"978":2,"979":1,"980":2,"981":1,"982":2,"983":1,"984":2},"2":{"209":2,"222":3,"236":2,"249":1,"951":1,"952":4,"953":14,"954":18,"955":7,"956":22,"957":1,"959":6,"969":1,"970":1,"973":1,"974":1,"977":1,"978":1,"979":1,"980":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3731",{"0":{"884":1,"892":1,"894":1,"896":1,"898":1,"900":1,"902":1,"904":1,"906":1,"908":1,"910":1,"912":1,"914":1,"2437":1},"1":{"885":1,"886":1,"887":1,"888":1,"889":1,"890":1,"891":1,"892":1,"893":2,"894":1,"895":2,"896":1,"897":2,"898":1,"899":2,"900":1,"901":2,"902":1,"903":2,"904":1,"905":2,"906":1,"907":2,"908":1,"909":2,"910":1,"911":2,"912":1,"913":2,"914":1,"915":2},"2":{"209":4,"236":1,"884":1,"885":4,"886":8,"887":6,"888":2,"890":6,"900":1,"901":1,"904":1,"905":1,"908":1,"909":1,"910":1,"911":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3737b",{"2":{"145":1,"987":1,"989":1}}],["is31fl3737",{"0":{"985":1,"995":1,"997":1,"999":1,"1001":1,"1003":1,"1005":1,"1007":1,"1009":1,"1011":1,"1013":1,"1015":1,"1017":1},"1":{"986":1,"987":1,"988":1,"989":1,"990":1,"991":1,"992":1,"993":1,"994":1,"995":1,"996":2,"997":1,"998":2,"999":1,"1000":2,"1001":1,"1002":2,"1003":1,"1004":2,"1005":1,"1006":2,"1007":1,"1008":2,"1009":1,"1010":2,"1011":1,"1012":2,"1013":1,"1014":2,"1015":1,"1016":2,"1017":1,"1018":2},"2":{"114":2,"176":1,"191":1,"209":2,"236":2,"985":1,"986":4,"987":14,"988":6,"989":7,"990":22,"991":1,"993":6,"1003":1,"1004":1,"1007":1,"1008":1,"1011":1,"1012":1,"1013":1,"1014":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31fl3733b",{"2":{"134":1,"918":1,"921":1}}],["is31fl3733",{"0":{"916":1,"927":1,"929":1,"931":1,"933":1,"935":1,"937":1,"939":1,"941":1,"943":1,"945":1,"947":1,"949":1,"2438":1},"1":{"917":1,"918":1,"919":1,"920":1,"921":1,"922":1,"923":1,"924":1,"925":1,"926":1,"927":1,"928":2,"929":1,"930":2,"931":1,"932":2,"933":1,"934":2,"935":1,"936":2,"937":1,"938":2,"939":1,"940":2,"941":1,"942":2,"943":1,"944":2,"945":1,"946":2,"947":1,"948":2,"949":1,"950":2},"2":{"93":1,"160":1,"209":2,"236":2,"249":2,"916":1,"917":4,"918":22,"919":18,"920":5,"921":7,"922":22,"923":1,"925":6,"935":1,"936":1,"939":1,"940":1,"943":1,"944":1,"945":1,"946":1,"1839":1,"2059":1,"2864":1,"2871":1}}],["is31common",{"2":{"249":4}}],["is31",{"2":{"114":1}}],["isolated",{"2":{"2766":1}}],["isolation",{"2":{"241":2,"2727":1}}],["iso",{"2":{"102":3,"114":2,"122":3,"144":2,"154":2,"160":2,"168":2,"191":1,"199":1,"205":2,"222":5,"226":4,"236":2,"266":2,"277":1,"328":2,"427":2,"442":1,"1343":3,"1428":1,"1459":2,"2416":1,"2446":5,"2778":1,"2780":2,"2862":5,"2880":18}}],["is",{"0":{"152":1,"395":1,"602":1,"604":1,"1314":1,"1326":1,"1327":1,"1332":1,"1564":1,"1569":1,"1857":1,"2005":1,"2022":1,"2083":1,"2167":1,"2168":1,"2461":1,"2916":1},"1":{"396":1,"1565":1,"1570":1,"1858":1,"2023":1,"2024":1,"2084":1},"2":{"0":2,"3":1,"7":1,"9":2,"10":2,"13":2,"14":1,"15":1,"18":4,"19":2,"23":2,"24":1,"25":1,"28":2,"30":1,"31":3,"34":2,"36":1,"39":2,"45":2,"48":1,"49":4,"50":3,"52":2,"70":23,"76":1,"88":1,"90":1,"94":1,"98":1,"103":1,"104":1,"113":2,"114":1,"118":1,"120":2,"123":1,"126":1,"127":1,"130":1,"134":3,"137":1,"138":3,"139":3,"141":3,"145":2,"152":1,"160":4,"166":1,"176":3,"179":1,"191":3,"194":4,"195":4,"196":1,"199":5,"201":2,"206":1,"210":1,"212":2,"213":1,"214":2,"215":1,"217":1,"220":3,"222":2,"224":3,"228":1,"230":1,"232":2,"233":3,"234":1,"235":2,"236":3,"238":1,"240":1,"244":1,"246":2,"249":4,"251":1,"262":2,"263":1,"266":2,"268":1,"273":1,"276":2,"279":2,"284":1,"288":1,"289":3,"293":2,"294":1,"297":2,"305":2,"306":2,"314":2,"315":1,"317":1,"320":7,"332":2,"338":3,"342":1,"344":1,"346":5,"348":1,"349":2,"356":1,"358":1,"359":1,"361":1,"362":1,"363":1,"368":1,"369":1,"371":4,"372":1,"373":2,"378":1,"379":1,"380":2,"381":1,"384":1,"385":1,"387":3,"390":1,"391":1,"392":1,"393":3,"395":1,"396":6,"397":10,"399":2,"400":2,"401":2,"402":3,"403":1,"405":2,"406":5,"408":2,"409":2,"410":1,"411":2,"423":1,"427":2,"428":5,"431":10,"435":1,"437":1,"438":1,"440":1,"442":2,"443":1,"444":1,"448":1,"450":2,"451":2,"458":1,"461":1,"470":1,"473":1,"485":2,"487":6,"488":1,"490":1,"491":1,"492":1,"493":1,"494":1,"497":2,"502":1,"510":6,"511":2,"512":1,"514":2,"515":1,"519":1,"523":2,"524":3,"525":2,"526":1,"527":2,"528":1,"529":1,"531":3,"536":4,"538":1,"539":4,"540":2,"541":2,"552":1,"553":2,"554":2,"558":2,"559":17,"562":6,"563":5,"566":11,"567":8,"568":8,"569":3,"570":5,"572":1,"573":2,"576":1,"577":2,"578":1,"579":1,"583":1,"584":1,"586":7,"589":1,"590":1,"591":9,"594":2,"597":2,"598":1,"599":1,"603":1,"608":1,"609":2,"611":3,"612":1,"613":2,"614":3,"617":4,"619":1,"621":2,"623":1,"624":2,"625":1,"626":2,"627":2,"628":2,"629":2,"630":2,"631":5,"632":2,"635":4,"637":2,"638":2,"641":1,"643":1,"645":6,"646":3,"647":1,"649":10,"654":4,"655":7,"656":1,"657":1,"659":1,"662":1,"663":2,"664":1,"666":3,"667":2,"669":1,"671":2,"676":2,"677":2,"678":2,"680":2,"681":1,"683":3,"684":1,"685":1,"686":2,"687":1,"692":2,"693":3,"695":1,"696":1,"698":1,"700":1,"711":1,"712":2,"713":1,"716":3,"717":1,"718":1,"719":2,"722":1,"739":1,"741":1,"742":1,"743":5,"745":1,"746":5,"747":2,"748":1,"749":1,"750":5,"751":4,"752":3,"753":1,"754":5,"755":1,"756":1,"757":2,"758":4,"759":2,"760":4,"762":1,"763":2,"764":1,"765":6,"769":1,"773":1,"794":2,"798":1,"800":1,"802":2,"827":1,"829":1,"831":2,"853":1,"855":1,"858":1,"860":2,"885":1,"887":1,"890":2,"917":1,"923":1,"925":2,"952":1,"957":1,"959":2,"986":1,"988":1,"991":1,"993":2,"1020":1,"1022":1,"1025":1,"1027":2,"1054":1,"1056":1,"1059":1,"1061":2,"1088":1,"1093":1,"1095":2,"1122":1,"1127":1,"1129":2,"1156":1,"1161":1,"1163":2,"1189":2,"1190":3,"1191":3,"1193":3,"1194":5,"1195":1,"1196":4,"1197":4,"1198":1,"1200":3,"1201":4,"1202":4,"1204":1,"1205":1,"1210":4,"1211":1,"1212":1,"1214":1,"1216":2,"1243":1,"1244":2,"1245":2,"1249":1,"1250":1,"1264":1,"1265":1,"1273":1,"1279":1,"1280":1,"1281":1,"1282":1,"1283":1,"1284":1,"1285":1,"1287":2,"1289":2,"1290":1,"1291":2,"1293":1,"1294":5,"1295":1,"1300":2,"1309":1,"1310":1,"1312":3,"1317":1,"1319":1,"1324":3,"1325":1,"1326":2,"1328":1,"1329":3,"1332":1,"1333":2,"1334":1,"1335":1,"1345":3,"1346":1,"1347":3,"1348":2,"1350":1,"1351":1,"1353":4,"1358":2,"1359":6,"1361":1,"1362":5,"1365":1,"1368":2,"1369":1,"1373":1,"1375":6,"1377":1,"1378":6,"1379":1,"1385":1,"1386":1,"1389":3,"1390":2,"1391":1,"1393":1,"1394":2,"1395":1,"1402":1,"1403":1,"1406":5,"1407":8,"1408":1,"1409":3,"1410":14,"1412":1,"1413":18,"1414":1,"1415":1,"1416":9,"1417":4,"1419":1,"1420":1,"1421":5,"1422":8,"1425":6,"1426":1,"1427":1,"1432":1,"1434":2,"1437":2,"1438":1,"1440":16,"1441":6,"1442":1,"1446":3,"1449":3,"1456":7,"1458":3,"1459":1,"1460":2,"1461":3,"1462":1,"1464":3,"1465":2,"1469":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1479":6,"1480":11,"1481":4,"1482":1,"1484":4,"1485":1,"1486":2,"1487":3,"1491":1,"1492":9,"1495":3,"1496":3,"1497":6,"1504":3,"1506":1,"1508":1,"1511":7,"1512":5,"1516":1,"1517":3,"1519":5,"1520":3,"1521":3,"1522":6,"1523":1,"1526":6,"1527":3,"1529":2,"1530":2,"1531":5,"1532":11,"1533":2,"1535":2,"1536":1,"1538":1,"1539":3,"1540":4,"1541":1,"1542":1,"1543":2,"1544":3,"1545":1,"1550":1,"1552":4,"1565":1,"1570":1,"1583":5,"1584":3,"1585":4,"1587":9,"1588":1,"1589":3,"1591":2,"1592":2,"1593":2,"1594":5,"1595":1,"1596":1,"1598":1,"1599":3,"1600":1,"1602":1,"1604":1,"1606":5,"1607":2,"1608":2,"1609":4,"1610":1,"1613":2,"1614":5,"1615":1,"1616":1,"1617":4,"1618":2,"1619":2,"1621":2,"1622":3,"1624":4,"1627":3,"1628":3,"1632":1,"1633":1,"1635":4,"1636":3,"1639":1,"1640":1,"1653":1,"1655":3,"1656":2,"1657":1,"1658":3,"1662":2,"1664":1,"1665":2,"1669":2,"1670":4,"1672":4,"1675":14,"1676":1,"1678":2,"1679":4,"1681":2,"1683":1,"1684":5,"1696":3,"1700":1,"1701":1,"1702":1,"1711":1,"1714":2,"1715":1,"1716":2,"1717":1,"1718":1,"1720":1,"1723":1,"1728":1,"1730":1,"1732":2,"1733":1,"1734":1,"1736":4,"1741":1,"1751":1,"1758":1,"1759":1,"1760":1,"1761":2,"1763":2,"1765":1,"1768":1,"1770":3,"1771":1,"1773":2,"1775":10,"1776":5,"1777":1,"1778":7,"1779":7,"1780":18,"1783":1,"1785":2,"1787":2,"1788":2,"1789":4,"1796":1,"1801":1,"1802":3,"1804":1,"1805":1,"1822":2,"1823":1,"1824":4,"1825":1,"1826":3,"1827":9,"1828":5,"1829":1,"1830":1,"1831":1,"1832":2,"1833":2,"1834":1,"1837":2,"1839":2,"1840":13,"1841":3,"1843":1,"1845":1,"1846":1,"1847":1,"1849":1,"1852":1,"1854":1,"1856":1,"1858":1,"1865":1,"1868":1,"1870":1,"1874":1,"1876":1,"1880":1,"1882":1,"1885":1,"1891":1,"1894":1,"1896":1,"1901":1,"1902":2,"1904":2,"1906":2,"1909":2,"1920":1,"1924":1,"1928":1,"1929":6,"1930":4,"1931":7,"1932":3,"1933":3,"1934":1,"1935":1,"1936":1,"1937":2,"1938":1,"1939":4,"1940":1,"1941":4,"1942":1,"1943":1,"1948":1,"1949":1,"1950":5,"1951":2,"1953":1,"1954":3,"1955":6,"1956":16,"1958":1,"1960":1,"1961":2,"1962":3,"1965":8,"1967":1,"1968":4,"1970":1,"1972":1,"1973":2,"1974":2,"1975":1,"1976":6,"1977":1,"1978":6,"1979":3,"1980":2,"1981":1,"1983":13,"1985":4,"1986":1,"1987":7,"1992":6,"1993":1,"1994":1,"1996":1,"1997":1,"1998":2,"1999":2,"2001":4,"2002":1,"2004":1,"2005":4,"2007":3,"2008":1,"2009":2,"2024":1,"2031":1,"2033":1,"2037":2,"2039":1,"2041":2,"2044":1,"2046":1,"2050":4,"2052":6,"2059":2,"2060":13,"2061":4,"2063":2,"2064":3,"2068":1,"2069":2,"2070":1,"2072":1,"2074":1,"2075":1,"2078":1,"2080":1,"2082":1,"2084":1,"2091":1,"2094":1,"2096":1,"2100":1,"2102":1,"2106":1,"2108":1,"2112":1,"2114":1,"2118":1,"2120":1,"2123":1,"2129":1,"2132":1,"2134":1,"2139":1,"2145":1,"2146":2,"2148":2,"2150":2,"2153":2,"2156":3,"2159":5,"2160":4,"2161":2,"2162":2,"2163":1,"2164":3,"2166":2,"2167":8,"2168":3,"2170":1,"2171":1,"2172":3,"2174":12,"2175":1,"2176":3,"2177":1,"2178":1,"2180":1,"2181":2,"2182":4,"2184":3,"2185":2,"2191":4,"2195":2,"2196":3,"2197":1,"2200":1,"2202":1,"2203":3,"2205":1,"2206":1,"2211":6,"2212":1,"2217":6,"2218":2,"2219":3,"2220":3,"2222":1,"2231":1,"2233":1,"2237":1,"2239":1,"2241":1,"2243":1,"2251":1,"2252":2,"2253":3,"2254":4,"2258":2,"2259":1,"2260":1,"2263":1,"2264":2,"2265":7,"2266":4,"2267":3,"2268":4,"2269":10,"2270":5,"2271":12,"2272":4,"2273":1,"2274":1,"2279":1,"2280":5,"2282":2,"2283":9,"2284":1,"2285":1,"2286":1,"2287":1,"2288":5,"2289":3,"2290":4,"2291":1,"2293":13,"2295":2,"2296":3,"2297":1,"2299":2,"2302":15,"2303":22,"2308":1,"2309":1,"2310":24,"2311":2,"2312":16,"2314":2,"2318":2,"2321":6,"2322":3,"2323":1,"2324":6,"2325":1,"2333":1,"2335":1,"2337":1,"2338":1,"2339":1,"2353":1,"2354":1,"2367":3,"2368":3,"2370":1,"2372":6,"2374":4,"2375":1,"2376":2,"2378":2,"2379":1,"2380":4,"2381":3,"2382":3,"2383":3,"2384":1,"2385":1,"2386":2,"2387":2,"2388":3,"2389":3,"2390":3,"2391":2,"2392":1,"2393":3,"2395":3,"2397":2,"2398":1,"2400":1,"2401":5,"2403":1,"2405":1,"2406":2,"2407":4,"2408":1,"2410":6,"2411":9,"2414":1,"2415":1,"2416":2,"2417":1,"2418":2,"2420":2,"2421":5,"2422":2,"2423":1,"2424":3,"2425":3,"2426":1,"2427":3,"2428":1,"2430":1,"2432":2,"2442":1,"2443":3,"2445":1,"2446":8,"2447":3,"2448":3,"2449":2,"2450":1,"2451":1,"2453":1,"2456":1,"2457":1,"2458":1,"2459":17,"2461":1,"2465":1,"2467":2,"2468":3,"2469":1,"2470":1,"2471":2,"2472":3,"2473":1,"2475":2,"2476":2,"2483":1,"2487":1,"2489":1,"2490":1,"2492":3,"2493":2,"2494":1,"2495":5,"2496":2,"2497":2,"2498":4,"2501":5,"2502":1,"2504":1,"2511":1,"2514":1,"2516":1,"2525":10,"2533":1,"2549":3,"2551":4,"2552":1,"2554":1,"2555":4,"2556":5,"2557":1,"2559":1,"2560":1,"2561":4,"2562":5,"2563":1,"2566":4,"2568":1,"2569":1,"2572":2,"2573":2,"2576":1,"2577":2,"2578":2,"2579":1,"2580":1,"2582":3,"2583":2,"2584":2,"2588":2,"2590":1,"2591":3,"2592":1,"2594":1,"2595":1,"2599":2,"2605":4,"2606":2,"2607":1,"2609":4,"2610":1,"2614":2,"2615":2,"2619":4,"2620":2,"2621":3,"2622":4,"2626":2,"2627":4,"2628":1,"2629":2,"2630":1,"2631":2,"2632":3,"2633":6,"2634":1,"2643":5,"2645":7,"2646":2,"2649":1,"2650":1,"2651":4,"2652":3,"2655":1,"2657":1,"2658":2,"2659":3,"2660":1,"2661":4,"2662":3,"2664":1,"2665":1,"2666":2,"2669":4,"2670":2,"2672":1,"2673":2,"2676":2,"2677":4,"2678":6,"2679":5,"2680":4,"2681":1,"2683":2,"2684":2,"2685":2,"2687":7,"2688":1,"2689":1,"2690":1,"2700":2,"2702":5,"2704":2,"2705":2,"2706":1,"2707":2,"2708":1,"2709":1,"2710":1,"2711":1,"2713":1,"2714":2,"2715":1,"2718":1,"2719":9,"2721":12,"2722":2,"2723":2,"2724":5,"2725":2,"2727":1,"2731":1,"2734":1,"2743":1,"2745":1,"2746":4,"2747":3,"2748":5,"2749":39,"2750":29,"2751":3,"2754":1,"2757":3,"2758":4,"2759":2,"2760":2,"2763":3,"2764":2,"2766":4,"2767":2,"2768":1,"2769":2,"2770":6,"2771":6,"2775":4,"2776":3,"2777":1,"2780":2,"2784":4,"2786":2,"2787":1,"2788":1,"2789":1,"2792":6,"2798":1,"2800":1,"2802":1,"2803":1,"2806":1,"2807":1,"2814":3,"2815":1,"2820":1,"2824":1,"2827":2,"2832":1,"2833":1,"2837":2,"2839":1,"2842":2,"2844":2,"2846":2,"2850":2,"2854":1,"2862":3,"2864":1,"2865":1,"2867":1,"2870":2,"2871":1,"2877":3,"2879":4,"2881":3,"2882":1,"2886":1,"2888":2,"2890":2,"2891":1,"2892":1,"2894":3,"2895":6,"2896":2,"2897":1,"2903":5,"2905":7,"2906":12,"2911":4,"2912":11,"2913":7,"2914":6,"2915":10,"2916":6,"2917":8,"2918":16,"2919":4,"2921":1,"2922":1,"2923":7,"2924":4,"2925":1,"2927":5,"2928":6,"2929":6,"2930":3,"2931":1,"2932":1,"2933":6,"2934":1,"2936":2,"2937":1,"2941":1,"2942":4}}],["bndu",{"2":{"1919":1,"2520":1}}],["bndd",{"2":{"1919":1,"2520":1}}],["bn009",{"2":{"218":1,"222":1}}],["bn009r2",{"2":{"218":1}}],["bn006",{"2":{"191":1}}],["b♭",{"2":{"1919":6,"2520":6}}],["bbb",{"2":{"2560":1}}],["bb5",{"2":{"1919":1,"2520":1}}],["bb4",{"2":{"1919":1,"2520":1}}],["bb3",{"2":{"1919":1,"2520":1}}],["bb2",{"2":{"1919":1,"2520":1}}],["bb1",{"2":{"1919":1,"2520":1}}],["bb",{"2":{"1919":1,"2520":1}}],["bbs",{"2":{"266":1}}],["b9",{"2":{"1649":1,"2684":1}}],["b8",{"2":{"1550":1,"2678":1,"2684":1}}],["b87",{"2":{"222":2}}],["b3",{"2":{"633":2,"1244":3,"1664":6,"1693":1,"1832":1,"1919":1,"2478":1,"2480":2,"2482":1,"2520":1,"2684":2,"2713":1}}],["b2",{"2":{"633":2,"692":1,"1244":3,"1393":1,"1476":2,"1540":1,"1547":1,"1664":6,"1693":1,"1832":1,"1919":1,"2478":1,"2480":2,"2482":1,"2520":1,"2659":1,"2684":2,"2713":1,"2865":2}}],["b11",{"2":{"2684":1}}],["b10",{"2":{"2684":1}}],["b15",{"2":{"692":1,"1245":1,"2684":1}}],["b15288fb87",{"2":{"95":1}}],["b14",{"2":{"692":1,"1245":1,"1649":1,"2684":1}}],["b12",{"2":{"692":1,"1659":1,"1660":1,"2684":1}}],["b13",{"2":{"692":1,"1245":1,"1659":1,"1660":1,"2684":1}}],["b1²",{"2":{"692":1}}],["b1¹",{"2":{"692":1}}],["b1",{"2":{"633":2,"692":4,"1244":2,"1476":2,"1547":1,"1664":6,"1693":1,"1832":1,"1919":1,"2478":1,"2480":1,"2482":1,"2520":1,"2605":1,"2684":2,"2713":1,"2865":2}}],["b7",{"2":{"559":5,"567":2,"712":2,"765":1,"769":2,"1198":1,"1244":1,"1265":1,"1468":2,"1547":1,"2264":1,"2411":1,"2684":1,"2713":1}}],["b0²",{"2":{"692":1}}],["b0¹",{"2":{"692":1}}],["b007",{"2":{"686":1,"2389":1}}],["b0",{"2":{"559":2,"568":1,"633":2,"692":4,"1244":2,"1389":1,"1393":3,"1832":1,"2271":1,"2383":1,"2482":2,"2684":3,"2713":1,"2865":2}}],["b6",{"2":{"559":5,"690":1,"765":1,"769":2,"1195":1,"1198":1,"1244":1,"1468":2,"1547":1,"1693":1,"1976":1,"2478":1,"2480":1,"2684":2,"2713":1}}],["b5",{"2":{"559":5,"690":1,"712":2,"1244":2,"1468":2,"1547":1,"1919":1,"1976":1,"2480":1,"2520":1,"2662":1,"2684":2,"2713":1,"2873":1}}],["bgr",{"2":{"1284":1}}],["bg",{"2":{"490":1,"492":1,"2750":9}}],["bdfc",{"2":{"370":1,"371":1}}],["bdn9",{"2":{"160":1,"1385":1,"1387":2,"1402":2}}],["bx",{"2":{"222":2}}],["bc417",{"2":{"2367":1}}],["bc",{"2":{"222":1}}],["bcat",{"2":{"210":1}}],["bcd",{"2":{"160":1,"328":1,"2875":1}}],["bsd",{"2":{"2321":2,"2324":2,"2325":3,"2533":3,"2741":1}}],["bspace",{"2":{"1619":1}}],["bspc",{"2":{"195":1,"369":1,"587":4,"1378":6,"1529":1,"1594":1,"1599":5,"1616":1,"1768":1,"2159":1,"2164":1,"2374":2,"2503":1,"2537":1,"2556":1,"2912":1,"2913":1}}],["bssl",{"2":{"1616":1}}],["bss",{"2":{"1362":1}}],["bsls",{"2":{"369":1,"587":2,"2503":1,"2537":1,"2556":1}}],["bs",{"2":{"191":3,"259":2,"266":1,"308":1,"2221":1,"2519":3,"2548":3}}],["bépo",{"2":{"176":1,"2880":1}}],["bpm",{"2":{"1481":1}}],["bp",{"2":{"176":1}}],["bpiphany",{"2":{"154":2,"160":2}}],["bpp",{"2":{"145":1,"236":1}}],["bkf",{"2":{"154":2}}],["b4",{"2":{"111":1,"559":1,"633":2,"690":1,"712":2,"1244":2,"1832":1,"1919":1,"2368":1,"2480":1,"2520":1,"2684":2}}],["bmpgdbserialport",{"2":{"2676":2}}],["bmp",{"2":{"2676":1}}],["bm",{"2":{"134":1,"266":1}}],["bm68hsrgb",{"2":{"122":1,"154":2,"160":1}}],["bm68rgb",{"2":{"102":2,"122":1}}],["bm65hsrgb",{"2":{"122":1,"154":2,"160":1}}],["bm65iso",{"2":{"122":1}}],["bm60hsrgb",{"2":{"122":3,"328":3}}],["bm60rgb",{"2":{"102":4,"122":2}}],["bm60poker",{"2":{"102":2,"122":1}}],["bm43a",{"2":{"102":2}}],["bm40hsrgb",{"2":{"102":2,"226":2,"236":1}}],["bm16s",{"2":{"102":2}}],["bm16a",{"2":{"102":2,"199":1}}],["b",{"0":{"2085":1,"2087":1},"1":{"2086":1,"2088":1},"2":{"98":2,"199":1,"222":5,"249":1,"266":1,"328":1,"345":1,"348":1,"355":2,"369":1,"415":1,"416":1,"428":1,"457":2,"458":3,"559":3,"570":2,"587":2,"611":1,"615":1,"726":1,"729":1,"802":1,"805":1,"831":1,"834":1,"860":1,"863":1,"890":1,"893":1,"925":1,"928":1,"959":1,"962":1,"993":1,"996":1,"1027":1,"1030":1,"1061":1,"1064":1,"1095":1,"1098":1,"1129":1,"1132":1,"1163":1,"1166":1,"1216":1,"1219":1,"1285":2,"1591":1,"1596":3,"1597":1,"1598":2,"1599":1,"1611":2,"1616":1,"1619":1,"1651":3,"1659":4,"1660":3,"1663":1,"1664":2,"1778":2,"1779":2,"1780":2,"1919":13,"1976":2,"2052":2,"2072":1,"2074":1,"2086":1,"2088":1,"2159":2,"2174":1,"2191":10,"2221":1,"2270":2,"2271":1,"2289":2,"2294":2,"2310":1,"2436":1,"2471":2,"2503":3,"2520":13,"2525":1,"2535":3,"2556":1,"2605":2,"2633":3,"2858":2,"2907":1,"2908":10,"2909":29,"2910":17}}],["btn",{"2":{"2041":8}}],["btn8",{"2":{"1927":1,"2521":1}}],["btn7",{"2":{"1927":1,"2521":1}}],["btn6",{"2":{"1927":1,"2521":1}}],["btn5",{"2":{"1927":1,"2521":1}}],["btn4",{"2":{"1927":1,"2521":1}}],["btn3",{"2":{"1927":1,"2521":1}}],["btn2",{"2":{"1927":1,"2521":1}}],["btn1",{"2":{"1927":1,"1985":2,"2521":1}}],["bt",{"2":{"75":1,"134":1,"2370":9,"2509":9}}],["bfo",{"2":{"45":1}}],["bh",{"2":{"37":3,"144":6,"145":3}}],["baart",{"2":{"2636":1}}],["bay",{"2":{"2420":1}}],["ball",{"2":{"1974":1,"2912":1}}],["balance",{"2":{"222":1}}],["baud",{"0":{"1268":1},"1":{"1269":1},"2":{"1204":12,"1269":2,"2291":1}}],["baudrate",{"0":{"1204":1,"1297":1},"2":{"93":1,"1204":4,"1296":1,"1297":2}}],["baking",{"2":{"581":1}}],["bakingpy",{"2":{"572":1,"2411":1}}],["bakeneko",{"2":{"222":1}}],["bakeneko80",{"2":{"154":2}}],["bakeneko60",{"2":{"154":2}}],["bakeneko65",{"2":{"102":3,"114":1,"154":4}}],["baz",{"2":{"510":1}}],["bare",{"2":{"2418":1,"2687":1,"2721":2,"2732":1}}],["barring",{"2":{"2007":1}}],["barrel",{"0":{"1645":1,"1646":1},"2":{"1633":1,"1639":2,"1645":1,"1646":1}}],["bar",{"2":{"510":2,"516":1,"532":8,"533":2,"603":1,"627":2,"1782":1,"2286":1,"2294":12,"2324":1,"2921":1}}],["barleycorn",{"2":{"154":2}}],["bamfk",{"2":{"266":1}}],["bamfk1",{"2":{"210":1}}],["babyv",{"2":{"236":1}}],["badly",{"2":{"614":1}}],["bad",{"2":{"160":1,"294":1,"510":1,"515":1,"531":1,"533":1,"1434":1,"1529":1,"2420":2,"2427":1,"2456":1,"2721":1}}],["battery",{"0":{"738":1,"1571":1,"1576":1,"1579":1,"1581":1,"2851":1},"1":{"739":1,"740":1,"741":1,"742":1,"1572":1,"1573":1,"1574":1,"1575":1,"1576":1,"1577":2,"1578":1,"1579":1,"1580":1,"1581":1,"1582":1},"2":{"308":3,"317":1,"687":1,"738":1,"739":1,"740":1,"741":6,"742":2,"1571":1,"1573":2,"1574":1,"1576":1,"1577":1,"1579":1,"1580":1,"1581":1,"1582":1,"2271":1,"2851":3}}],["bat43",{"2":{"154":4}}],["batch",{"2":{"133":1,"402":1,"405":1,"406":1,"1907":2,"1910":2,"2151":2,"2154":2}}],["ban",{"2":{"2740":1}}],["bang",{"2":{"2322":3}}],["banging",{"2":{"1190":1,"1287":1}}],["banger",{"2":{"154":2,"160":1}}],["bandwidth",{"2":{"2685":1}}],["band",{"2":{"1843":10,"2063":20,"2887":6}}],["bandana",{"2":{"222":1}}],["bandominedoni",{"2":{"134":1}}],["bank",{"2":{"49":4,"176":1,"2678":8}}],["basing",{"2":{"2422":1}}],["basis",{"0":{"2412":1},"2":{"1330":1,"1840":1,"2060":1,"2620":1}}],["basics",{"0":{"1437":1},"1":{"1438":1},"2":{"2636":2,"2898":1,"2899":1}}],["basically",{"2":{"297":1,"643":1,"1956":1,"2283":1,"2723":1,"2915":1}}],["basic",{"0":{"701":1,"714":1,"723":1,"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1213":1,"1282":1,"1471":1,"1538":1,"1573":1,"1693":1,"1764":1,"1786":1,"1915":1,"1951":1,"2049":1,"2220":1,"2281":1,"2320":1,"2405":1,"2425":1,"2503":1,"2534":1},"1":{"724":1,"800":1,"829":1,"855":1,"856":1,"857":1,"858":1,"887":1,"888":1,"919":1,"920":1,"921":1,"922":1,"923":1,"954":1,"955":1,"956":1,"957":1,"988":1,"989":1,"990":1,"991":1,"1022":1,"1023":1,"1024":1,"1025":1,"1056":1,"1057":1,"1058":1,"1059":1,"1090":1,"1091":1,"1092":1,"1093":1,"1124":1,"1125":1,"1126":1,"1127":1,"1158":1,"1159":1,"1160":1,"1161":1,"1214":1,"1283":1,"1284":1,"1285":1,"1472":1,"1473":1,"1539":1,"1540":1,"1787":1,"1788":1,"1789":1,"1790":1,"1952":1,"1953":1,"2321":1,"2406":1,"2407":1,"2408":1,"2535":1,"2536":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1},"2":{"133":1,"134":1,"210":1,"222":1,"231":4,"248":1,"249":2,"362":1,"373":1,"435":1,"438":1,"448":1,"467":1,"597":1,"604":1,"617":1,"664":1,"678":1,"713":1,"717":1,"720":1,"758":1,"1353":1,"1417":1,"1438":1,"1471":2,"1474":1,"1526":1,"1527":1,"1621":1,"1659":1,"1759":1,"1768":1,"1770":1,"1771":2,"1782":1,"1828":2,"1913":2,"1915":2,"2047":1,"2218":1,"2221":1,"2290":1,"2302":1,"2311":1,"2322":1,"2404":1,"2416":1,"2425":1,"2462":1,"2503":1,"2534":1,"2558":1,"2566":1,"2568":1,"2579":1,"2585":1,"2612":1,"2637":1,"2721":2,"2739":1,"2744":2,"2746":1,"2758":1,"2766":1,"2813":1,"2849":1,"2899":1,"2921":1,"2926":2,"2941":1}}],["bashcompinit",{"2":{"507":3}}],["bashrc",{"2":{"507":1,"2621":2}}],["bash",{"2":{"505":1,"2621":2,"2669":1,"2671":1}}],["bastard",{"2":{"249":1}}],["bastardkb",{"2":{"114":1,"176":2,"266":1,"277":1,"311":50,"317":8,"2706":1}}],["base64",{"0":{"2245":1},"2":{"2792":2}}],["bases",{"2":{"617":2}}],["base",{"0":{"2556":1},"2":{"125":1,"163":1,"174":1,"185":1,"205":2,"209":1,"226":1,"270":2,"294":1,"311":1,"573":1,"589":1,"745":1,"746":4,"753":1,"1404":1,"1416":1,"1419":1,"1420":4,"1527":3,"1539":1,"1607":1,"1613":1,"1632":1,"1823":2,"1824":2,"1930":4,"2446":1,"2516":2,"2551":3,"2555":1,"2556":1,"2557":1,"2585":1,"2627":2,"2633":2,"2646":1,"2685":1,"2701":1,"2703":1,"2707":1,"2719":1,"2722":1}}],["based",{"0":{"25":1,"1468":1,"1470":1,"2735":1},"1":{"1469":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1},"2":{"25":1,"49":1,"50":1,"65":2,"74":1,"93":1,"113":1,"114":2,"123":1,"138":1,"145":1,"163":1,"164":1,"172":1,"191":1,"199":1,"221":1,"235":1,"236":1,"248":1,"263":2,"350":1,"405":1,"431":1,"442":1,"443":1,"448":1,"493":1,"565":1,"614":1,"637":6,"712":1,"713":1,"743":2,"751":1,"756":1,"1193":1,"1196":1,"1293":1,"1317":1,"1322":1,"1389":1,"1390":1,"1392":1,"1407":1,"1410":10,"1422":7,"1424":1,"1465":1,"1466":2,"1468":1,"1471":1,"1677":1,"1732":1,"1737":1,"1785":1,"1840":1,"1845":1,"1933":1,"1936":1,"1941":1,"1945":1,"1955":1,"1956":1,"1964":1,"1974":1,"1987":2,"2004":1,"2060":1,"2068":1,"2074":1,"2166":1,"2193":2,"2196":1,"2205":1,"2271":1,"2283":1,"2296":1,"2301":1,"2324":1,"2367":2,"2368":1,"2372":1,"2375":2,"2378":1,"2380":1,"2387":1,"2411":1,"2425":1,"2435":1,"2439":1,"2475":1,"2494":1,"2534":1,"2560":24,"2561":1,"2573":1,"2583":1,"2588":1,"2593":1,"2609":1,"2657":2,"2677":1,"2681":1,"2704":2,"2706":1,"2726":1,"2734":1,"2746":1,"2749":4,"2750":4,"2758":1,"2763":1,"2766":1,"2792":1,"2836":1,"2846":1,"2896":1,"2919":1}}],["backtick",{"2":{"1667":1,"1669":1}}],["backticks",{"2":{"348":1}}],["backlit",{"2":{"1535":1}}],["backlightx",{"2":{"2448":1}}],["backlighting",{"0":{"1535":1,"2508":1},"1":{"1536":1,"1537":1,"1538":1,"1539":1,"1540":1,"1541":1,"1542":1,"1543":1,"1544":1,"1545":1,"1546":1,"1547":1,"1548":1,"1549":1,"1550":1,"1551":1,"1552":1,"1553":1,"1554":1,"1555":1,"1556":1,"1557":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1},"2":{"1536":1,"1838":1,"2302":1,"2411":1,"2448":1,"2508":1,"2791":1}}],["backlights",{"2":{"646":1,"1658":1}}],["backlight|led",{"2":{"176":1}}],["backlight",{"0":{"7":1,"14":2,"16":1,"1540":1,"1554":1,"1555":1,"1556":1,"1557":1,"1558":1,"1559":1,"1560":1,"1562":1,"1564":1,"1566":1,"1567":1,"1568":1,"1569":1,"2798":1,"2850":1},"1":{"1561":1,"1563":1,"1565":1,"1570":1},"2":{"14":4,"16":4,"32":1,"49":1,"50":1,"63":1,"70":1,"73":1,"93":1,"94":1,"110":1,"111":1,"112":4,"114":1,"134":4,"145":1,"160":1,"188":1,"191":4,"198":1,"199":6,"210":4,"231":3,"236":2,"249":3,"266":3,"294":1,"559":7,"1308":2,"1389":1,"1390":1,"1537":14,"1538":21,"1539":4,"1540":10,"1541":1,"1542":1,"1544":1,"1545":5,"1547":1,"1548":1,"1550":4,"1551":1,"1552":3,"1554":1,"1555":1,"1556":1,"1557":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":2,"1564":1,"1565":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1838":1,"1841":1,"2061":1,"2411":3,"2412":3,"2448":3,"2508":14,"2692":1,"2721":2,"2750":11,"2798":1,"2850":9,"2900":1,"2933":1}}],["backslash",{"2":{"1346":1,"1686":2,"1782":1,"2503":2,"2519":3,"2537":2,"2548":3,"2921":1}}],["backspaced",{"2":{"2323":1}}],["backspaces",{"2":{"1528":2,"1529":3,"1532":1,"1533":1}}],["backspace",{"0":{"1378":1},"2":{"99":1,"137":1,"222":1,"255":1,"597":1,"603":1,"1346":1,"1378":2,"1532":3,"1587":1,"1599":1,"1686":1,"1761":1,"1768":1,"2159":1,"2164":4,"2221":1,"2372":1,"2503":2,"2519":6,"2537":2,"2548":6}}],["backgrounds",{"2":{"492":1}}],["background",{"2":{"492":5,"654":1,"2750":3}}],["backup",{"2":{"445":2}}],["backing",{"0":{"2629":1},"2":{"236":1,"750":1,"751":3,"752":3,"753":4,"2857":1}}],["backwards",{"2":{"114":1,"249":1,"262":1,"293":1,"305":1,"314":1,"316":1,"331":1,"1612":1,"2253":1,"2370":1,"2509":1}}],["backward",{"2":{"75":1,"285":1,"2159":2}}],["back",{"0":{"2465":1,"2472":1},"2":{"50":1,"55":13,"124":1,"134":1,"137":1,"387":1,"397":1,"487":1,"528":1,"586":1,"649":1,"678":1,"681":1,"1477":1,"1516":2,"1656":1,"1657":1,"1658":1,"1789":1,"1824":1,"1964":1,"2051":1,"2063":3,"2159":1,"2206":1,"2207":1,"2209":1,"2270":2,"2273":1,"2287":2,"2377":1,"2384":1,"2398":1,"2421":1,"2422":1,"2427":1,"2496":2,"2503":2,"2542":2,"2559":1,"2580":1,"2609":1,"2627":2,"2661":1,"2722":1,"2845":1,"2887":1,"2905":1,"2929":1}}],["backend",{"0":{"377":1},"2":{"49":1,"279":2,"2669":1,"2857":1}}],["backport",{"0":{"5":1},"2":{"74":1}}],["bidirectional",{"2":{"2047":1}}],["bilateral",{"2":{"294":1}}],["bioses",{"2":{"573":1}}],["bios",{"0":{"1373":1},"2":{"263":1,"1363":1,"1367":1,"1373":1}}],["bioi",{"2":{"222":4,"236":1}}],["biacco42",{"2":{"154":3,"160":2}}],["bigram",{"2":{"2161":5}}],["bigrams",{"2":{"2161":2}}],["bigseries",{"2":{"154":8}}],["bigswitch",{"2":{"43":2,"266":1}}],["big",{"2":{"94":2,"405":1,"527":1,"602":1,"785":1,"791":1,"2411":1,"2751":1}}],["bigger",{"2":{"46":1,"572":1,"2459":1,"2579":1,"2942":1}}],["bin|hex",{"2":{"428":1}}],["binding",{"2":{"2411":1}}],["bindings",{"2":{"1516":1,"2503":1,"2721":2}}],["bind",{"2":{"308":1,"1782":1,"2921":1}}],["binary",{"0":{"1531":1},"1":{"1532":1,"1533":1},"2":{"284":1,"285":1,"359":1,"372":1,"428":1,"579":2,"582":1,"584":2,"1378":1,"2410":1,"2451":1,"2499":1,"2501":1,"2721":1,"2726":1,"2727":1,"2728":1,"2729":1,"2732":1,"2734":2,"2737":2,"2739":1,"2742":1,"2743":1,"2847":1,"2942":1}}],["binaries",{"0":{"164":1},"2":{"93":1,"164":1,"176":1,"199":1,"576":1,"1323":1,"2388":1,"2458":2,"2676":1,"2688":1}}],["binepad",{"2":{"218":2,"222":1,"328":1}}],["bin",{"2":{"23":1,"94":2,"95":2,"133":1,"134":1,"388":1,"428":1,"444":1,"570":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2401":1,"2410":1,"2501":2,"2582":1,"2600":1,"2607":2,"2621":2,"2671":1,"2676":3,"2847":1}}],["bit|status",{"2":{"2551":1}}],["bitmap",{"2":{"1955":1}}],["bitmask",{"2":{"285":1,"1375":2,"1426":1,"1765":1,"1766":1,"1767":1,"1775":1,"1840":1,"2027":1,"2029":1,"2060":1,"2770":1}}],["bitfields",{"2":{"2864":1,"2871":1}}],["bitfield",{"2":{"1776":1,"1827":1,"2864":1,"2871":1}}],["bitwise",{"2":{"763":1,"1375":2,"1416":1,"1532":1,"1955":1}}],["bits",{"2":{"372":1,"763":1,"1375":1,"1407":2,"1417":4,"1422":6,"1532":3,"1533":1,"1734":1,"1736":1,"1841":4,"1983":2,"2061":4,"2288":4,"2291":2,"2293":2,"2459":1,"2496":2,"2550":2,"2551":1,"2566":3,"2761":6}}],["bitbanging",{"2":{"1193":1,"1196":1}}],["bitbang",{"0":{"1190":1,"1287":1},"1":{"1191":1,"1192":1},"2":{"249":1,"1189":1,"1190":3,"1191":1,"1192":3,"1193":1,"1204":1,"1286":1,"1287":1,"1292":2,"2172":1,"2873":2,"2876":3}}],["bit",{"0":{"11":1,"1391":1},"2":{"11":2,"63":1,"114":1,"130":1,"134":1,"166":1,"176":2,"199":2,"222":1,"285":1,"308":1,"687":1,"698":4,"716":2,"717":1,"763":4,"771":1,"774":1,"777":1,"780":1,"782":1,"783":1,"785":1,"786":1,"788":1,"789":1,"791":1,"792":1,"795":1,"800":1,"829":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1189":1,"1190":1,"1214":1,"1249":1,"1282":3,"1283":3,"1287":1,"1292":2,"1340":2,"1365":1,"1375":5,"1377":1,"1386":1,"1388":3,"1407":2,"1408":1,"1413":1,"1417":3,"1422":2,"1487":1,"1511":1,"1517":1,"1526":4,"1532":2,"1533":1,"1594":2,"1651":1,"1691":1,"1714":2,"1716":2,"1734":2,"1741":1,"1751":1,"1773":6,"1775":2,"1782":12,"1827":1,"1949":2,"1983":2,"1987":1,"2036":4,"2165":1,"2237":1,"2239":1,"2241":1,"2265":2,"2279":2,"2289":2,"2311":2,"2459":1,"2516":1,"2550":1,"2551":1,"2554":6,"2555":2,"2566":3,"2568":1,"2605":1,"2610":1,"2615":2,"2644":1,"2682":1,"2691":1,"2707":1,"2749":1,"2758":1,"2766":1,"2767":1,"2770":8,"2782":1,"2795":1,"2796":1,"2895":1,"2916":1,"2921":12,"2934":1,"2941":1}}],["bob",{"2":{"2934":1}}],["bout",{"2":{"2170":1}}],["bounce",{"0":{"1409":1},"1":{"1410":1,"1411":1,"1412":1,"1413":1,"1414":1},"2":{"1409":4,"2575":1}}],["bounce75",{"2":{"222":1}}],["bound",{"2":{"236":1,"1782":1,"2894":1,"2921":1}}],["boundary",{"2":{"191":1}}],["bounds",{"2":{"114":1,"145":1,"333":3,"1956":3,"2283":3,"2440":1}}],["bounded",{"2":{"31":1,"34":1}}],["bold",{"2":{"344":1,"602":1,"1210":1}}],["bolt",{"0":{"2288":1},"2":{"231":1,"2287":1,"2288":3,"2289":1,"2290":2,"2291":1,"2293":2,"2294":4}}],["bongopad",{"2":{"311":2}}],["bonsai",{"0":{"1393":1},"2":{"176":1,"189":1,"191":1,"1386":1,"1388":3,"1393":1,"2888":1}}],["boy",{"2":{"222":1}}],["bocc",{"2":{"222":1}}],["boston",{"2":{"134":1,"222":1}}],["bodges",{"2":{"199":1}}],["bodge",{"2":{"114":1,"134":1,"160":1,"266":1}}],["box",{"2":{"114":1,"288":1,"346":1,"594":1,"2272":1,"2273":1,"2420":1,"2561":1,"2563":1,"2607":1,"2929":1}}],["boilerplate",{"2":{"114":1,"622":1,"2409":2}}],["bottom",{"2":{"100":1,"160":1,"255":1,"559":1,"614":1,"1362":1,"1397":1,"1398":1,"1405":1,"1486":1,"1527":1,"1627":1,"1635":1,"1840":1,"1843":1,"2060":1,"2063":2,"2171":1,"2262":1,"2289":1,"2310":1,"2312":1,"2418":1,"2465":1,"2605":1,"2652":1,"2719":1,"2750":6,"2772":2,"2775":1,"2838":1}}],["both",{"0":{"2570":1},"2":{"35":1,"45":1,"58":1,"70":14,"98":1,"107":1,"114":1,"134":1,"137":1,"163":1,"173":1,"175":1,"190":1,"229":1,"232":1,"233":1,"236":1,"249":1,"283":3,"359":1,"405":1,"445":1,"489":1,"492":1,"503":2,"510":1,"540":1,"562":1,"563":1,"568":1,"590":1,"597":1,"607":1,"627":1,"667":1,"687":1,"743":1,"1190":1,"1340":2,"1375":2,"1378":1,"1393":1,"1410":1,"1422":2,"1430":1,"1433":1,"1449":1,"1464":1,"1472":1,"1512":1,"1527":1,"1535":1,"1587":2,"1588":3,"1589":3,"1598":1,"1659":1,"1660":1,"1674":1,"1775":1,"1831":1,"1931":1,"1947":1,"1967":1,"1971":1,"1976":3,"1980":1,"1983":1,"1995":1,"2050":1,"2182":2,"2251":1,"2254":1,"2255":1,"2260":1,"2267":2,"2269":2,"2270":1,"2271":1,"2287":1,"2294":2,"2313":1,"2318":1,"2323":1,"2324":1,"2367":1,"2370":1,"2421":3,"2427":2,"2443":2,"2446":2,"2489":1,"2501":1,"2503":1,"2519":6,"2548":6,"2561":1,"2592":1,"2605":2,"2612":1,"2625":1,"2627":1,"2630":1,"2643":1,"2685":1,"2702":1,"2704":1,"2729":2,"2749":1,"2750":1,"2765":1,"2784":4,"2835":1,"2854":2,"2858":1,"2882":1,"2887":1,"2901":1,"2912":1,"2915":1,"2916":2,"2917":1,"2919":1,"2942":1}}],["boardinit",{"2":{"2680":1,"2721":2}}],["board",{"0":{"172":1,"189":1,"2680":1,"2703":1},"2":{"50":5,"76":1,"77":2,"113":1,"114":3,"134":1,"145":3,"167":1,"176":3,"182":1,"189":3,"191":1,"199":1,"210":1,"222":2,"233":1,"236":2,"248":1,"266":2,"277":1,"283":1,"285":1,"306":1,"307":1,"308":6,"315":1,"317":12,"333":1,"391":2,"552":1,"559":2,"563":1,"586":1,"644":1,"646":2,"649":1,"682":1,"683":2,"684":1,"714":1,"715":1,"725":1,"753":1,"765":2,"801":1,"830":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1197":1,"1215":1,"1245":2,"1266":1,"1296":1,"1300":1,"1345":5,"1369":1,"1388":2,"1389":1,"1393":1,"1396":1,"1400":1,"1404":2,"1407":1,"1459":1,"1465":1,"1473":1,"1482":1,"1486":1,"1545":1,"1550":1,"1551":1,"1840":1,"1939":1,"1955":1,"1974":1,"1980":1,"2060":1,"2254":2,"2258":1,"2268":1,"2271":2,"2321":1,"2367":1,"2368":1,"2398":1,"2414":1,"2417":4,"2418":1,"2422":1,"2423":2,"2426":1,"2453":1,"2476":1,"2487":1,"2490":3,"2494":1,"2559":2,"2560":2,"2561":1,"2562":5,"2582":1,"2605":2,"2609":2,"2676":1,"2677":4,"2678":1,"2679":1,"2680":3,"2684":1,"2685":1,"2688":1,"2694":2,"2700":1,"2702":2,"2703":3,"2707":5,"2719":2,"2720":1,"2721":16,"2722":1,"2751":1,"2788":3,"2789":1,"2828":1,"2837":1,"2838":1,"2846":7,"2887":1,"2905":1,"2919":1}}],["boardsource",{"2":{"176":4,"249":1,"277":2,"308":1,"2702":1}}],["boards",{"0":{"43":1,"235":1,"1468":1,"1470":1,"1837":1,"2273":1,"2417":1,"2701":1},"1":{"1469":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"2702":1,"2703":1},"2":{"8":1,"10":1,"28":1,"45":1,"57":1,"72":1,"80":1,"93":1,"108":1,"114":7,"131":1,"134":3,"138":2,"145":3,"160":25,"163":1,"172":3,"185":1,"189":1,"191":4,"199":2,"209":1,"210":4,"222":8,"235":1,"249":1,"263":1,"266":1,"277":1,"279":2,"283":1,"308":4,"317":9,"333":1,"553":1,"562":1,"566":3,"572":1,"683":1,"712":2,"713":1,"714":1,"720":1,"1193":1,"1196":1,"1288":1,"1309":1,"1316":1,"1389":1,"1390":1,"1464":1,"1465":3,"1466":4,"1468":1,"1486":1,"1583":1,"1585":1,"1733":1,"1837":1,"2069":1,"2258":1,"2272":3,"2273":1,"2367":2,"2376":2,"2379":1,"2383":1,"2386":1,"2388":1,"2389":1,"2391":1,"2411":1,"2417":1,"2476":1,"2494":1,"2559":2,"2560":30,"2561":1,"2562":6,"2572":2,"2657":1,"2677":1,"2685":1,"2690":1,"2691":1,"2700":1,"2701":2,"2702":2,"2706":1,"2721":4,"2722":1,"2734":1,"2746":1,"2845":1,"2888":1}}],["books",{"2":{"2934":1}}],["boost",{"2":{"1672":1,"2722":1}}],["bootstrap",{"2":{"2707":1}}],["bootsel",{"2":{"2397":2}}],["boot1",{"2":{"2659":1}}],["booted",{"2":{"1937":1}}],["bootable",{"2":{"751":1}}],["booting",{"2":{"751":1,"1950":1,"2551":1}}],["boot\`",{"2":{"681":1}}],["bootlader",{"2":{"236":1}}],["bootloadhid",{"0":{"2383":1,"2493":1},"1":{"2384":1,"2385":1},"2":{"114":1,"191":1,"571":1,"686":1,"2383":6,"2410":1}}],["bootloader>",{"2":{"428":2,"2501":1}}],["bootloaders",{"0":{"686":1},"2":{"49":1,"145":1,"160":1,"199":1,"294":1,"428":3,"432":1,"683":1,"751":1,"1345":1,"2375":2,"2401":1,"2410":1,"2475":1,"2491":2,"2721":1}}],["bootloader",{"0":{"152":1,"682":1,"1314":1,"1315":1,"2375":1,"2490":1,"2495":1,"2498":1,"2605":1,"2664":1,"2705":1,"2790":1,"2800":1,"2869":1},"1":{"683":1,"684":1,"685":1,"686":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2491":1,"2492":1,"2493":1,"2494":1,"2496":1,"2499":1,"2500":1,"2501":1},"2":{"49":4,"50":1,"65":1,"70":1,"74":1,"93":2,"111":1,"112":1,"114":3,"152":3,"160":8,"176":8,"191":4,"199":6,"222":1,"230":2,"231":1,"236":1,"240":3,"428":4,"432":1,"546":1,"566":3,"571":1,"649":4,"650":4,"651":3,"652":2,"681":2,"682":3,"683":6,"684":2,"685":2,"686":9,"1313":1,"1315":2,"1345":2,"1362":1,"1368":1,"1466":7,"1583":3,"1585":2,"1619":4,"1675":2,"1950":5,"2266":10,"2375":1,"2376":6,"2377":8,"2379":5,"2381":6,"2382":5,"2383":5,"2384":15,"2386":5,"2387":1,"2388":6,"2389":4,"2390":3,"2391":5,"2392":1,"2393":7,"2395":7,"2397":7,"2475":6,"2483":1,"2489":1,"2490":1,"2492":4,"2493":1,"2494":2,"2495":2,"2496":2,"2497":3,"2498":5,"2499":1,"2501":2,"2504":4,"2605":1,"2609":6,"2660":2,"2664":1,"2665":3,"2678":9,"2684":2,"2700":5,"2705":2,"2721":2,"2735":1,"2745":4,"2790":2,"2837":1,"2845":1,"2846":2,"2869":3}}],["boot20",{"2":{"2501":1}}],["boot2",{"2":{"236":1}}],["bootmapper",{"2":{"235":1,"1288":1,"2493":1,"2605":1}}],["bootmagic",{"0":{"87":1,"103":1,"104":1,"126":1,"127":1,"245":2,"1583":1,"1585":1,"2801":1,"2853":1},"1":{"88":1,"104":1,"127":1,"1584":1,"1585":1,"1586":1},"2":{"70":1,"87":8,"88":8,"93":2,"94":1,"103":3,"104":8,"111":1,"114":2,"126":3,"127":8,"134":1,"176":3,"199":3,"210":1,"245":4,"249":2,"333":2,"572":3,"649":1,"681":1,"683":3,"1317":2,"1345":1,"1362":1,"1407":1,"1583":5,"1584":3,"1585":6,"1586":1,"1617":1,"2045":1,"2377":1,"2384":1,"2411":1,"2548":1,"2721":1,"2791":1,"2853":3,"2873":2,"2901":1}}],["boot",{"0":{"141":1,"167":1,"2700":1},"2":{"141":2,"160":1,"167":2,"176":1,"191":2,"199":1,"266":1,"277":1,"303":1,"369":1,"572":1,"573":2,"587":2,"683":3,"751":1,"1362":1,"1479":1,"1480":1,"1950":2,"2376":1,"2379":1,"2381":1,"2382":2,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":2,"2395":2,"2397":2,"2504":1,"2613":1,"2678":1,"2700":1,"2702":1,"2721":1,"2745":1,"2790":1}}],["boot0",{"2":{"49":4,"2386":3,"2388":3,"2391":3}}],["boolean",{"0":{"90":1,"105":1},"2":{"93":1,"114":1,"134":1,"214":1,"645":1,"1378":3,"1407":1,"1446":1,"1834":1,"2847":11,"2849":4,"2850":4,"2853":1,"2854":4,"2856":1,"2859":1,"2863":2,"2864":4,"2865":4,"2866":1,"2868":2,"2870":6,"2871":4,"2872":1,"2873":13,"2874":1,"2875":4,"2876":1}}],["bool",{"0":{"818":3,"820":1,"846":3,"848":1,"908":3,"910":1,"943":3,"945":1,"977":3,"979":1,"1011":3,"1013":1,"1045":3,"1047":1,"1234":3,"1236":1,"1248":2,"1278":1,"1564":1,"1569":1,"1698":2,"1702":2,"1717":1,"1719":1,"1721":1,"1796":1,"1801":1,"1802":1,"1805":1,"1806":1,"1807":1,"1810":1,"1813":1,"1816":1,"1819":1,"1857":1,"1900":1,"1902":1,"1904":1,"1906":1,"1909":1,"2022":1,"2083":1,"2144":1,"2146":1,"2148":1,"2150":1,"2153":1,"2353":1,"2357":1,"2360":1},"1":{"819":3,"821":1,"847":3,"849":1,"909":3,"911":1,"944":3,"946":1,"978":3,"980":1,"1012":3,"1014":1,"1046":3,"1048":1,"1235":3,"1237":1,"1249":2,"1250":2,"1279":1,"1565":1,"1570":1,"1699":2,"1703":2,"1718":1,"1720":1,"1722":1,"1723":1,"1797":1,"1798":1,"1803":1,"1804":1,"1808":1,"1809":1,"1811":1,"1812":1,"1814":1,"1815":1,"1817":1,"1818":1,"1820":1,"1821":1,"1858":1,"1901":1,"1903":1,"1905":1,"2023":1,"2024":1,"2084":1,"2145":1,"2147":1,"2149":1,"2354":1,"2358":1,"2359":1,"2361":1},"2":{"22":2,"46":2,"90":6,"105":8,"114":1,"125":2,"185":2,"230":1,"591":1,"622":2,"623":1,"630":3,"645":2,"650":1,"651":1,"652":4,"654":1,"698":1,"819":3,"821":1,"847":3,"849":1,"909":3,"911":1,"944":3,"946":1,"978":3,"980":1,"1012":3,"1014":1,"1046":3,"1048":1,"1235":3,"1237":1,"1249":1,"1378":2,"1407":3,"1425":1,"1440":2,"1441":1,"1456":1,"1466":2,"1485":1,"1511":2,"1526":1,"1529":1,"1595":2,"1599":1,"1606":6,"1607":1,"1611":2,"1612":3,"1639":4,"1651":2,"1662":2,"1683":1,"1699":2,"1703":2,"1706":1,"1720":1,"1722":1,"1737":2,"1741":1,"1773":2,"1775":3,"1791":1,"1828":1,"1831":2,"1832":1,"1833":1,"1844":3,"1918":1,"1942":1,"1947":1,"1948":1,"1950":4,"1956":26,"1982":1,"1986":2,"1987":2,"1989":1,"1998":2,"1999":1,"2001":5,"2002":3,"2006":4,"2007":1,"2066":3,"2160":1,"2162":1,"2168":1,"2170":2,"2196":1,"2217":6,"2270":2,"2283":16,"2309":1,"2310":1,"2312":1,"2374":2,"2449":2,"2722":1,"2749":1,"2750":5,"2760":1,"2905":1,"2933":34}}],["buflen",{"2":{"2270":2}}],["buff",{"2":{"1949":4,"2279":4}}],["buffered",{"2":{"285":1}}],["buffers",{"0":{"736":1,"822":1,"850":1,"880":1,"912":1,"947":1,"981":1,"1015":1,"1049":1,"1083":1,"1117":1,"1151":1,"1185":1,"1238":1},"1":{"737":1,"823":1,"881":1,"913":1,"948":1,"982":1,"1016":1,"1050":1,"1084":1,"1118":1,"1152":1,"1186":1,"1239":1},"2":{"93":1,"249":2,"285":1,"650":1,"651":1,"732":1,"810":1,"814":1,"838":1,"842":1,"868":1,"872":1,"900":1,"904":1,"935":1,"939":1,"969":1,"973":1,"1003":1,"1007":1,"1037":1,"1041":1,"1071":1,"1075":1,"1105":1,"1109":1,"1139":1,"1143":1,"1173":1,"1177":1,"1226":1,"1230":1,"1603":5,"2188":1,"2200":2,"2372":1}}],["buffer",{"0":{"717":1,"1298":1,"1603":1,"1949":1,"2279":1},"2":{"49":1,"93":1,"114":1,"176":1,"199":1,"222":1,"249":3,"698":3,"716":3,"717":8,"777":1,"780":1,"789":1,"792":1,"1260":1,"1273":2,"1277":1,"1278":1,"1296":2,"1298":3,"1482":1,"1519":4,"1526":1,"1527":6,"1603":2,"1615":1,"1656":3,"1785":1,"1790":2,"1799":1,"1802":2,"1804":1,"1805":1,"1807":1,"1809":1,"1810":1,"1812":1,"1813":1,"1815":1,"1816":1,"1818":1,"1819":1,"1821":1,"1949":7,"1954":3,"1955":2,"1956":16,"1979":1,"2050":1,"2051":1,"2052":1,"2055":1,"2057":1,"2199":1,"2270":10,"2279":7,"2282":1,"2283":17,"2355":1,"2356":1,"2357":1,"2360":1,"2747":1,"2749":10,"2750":2,"2941":1}}],["bundled",{"2":{"2390":1}}],["bundle",{"2":{"2252":1,"2594":3,"2613":1}}],["bunch",{"2":{"254":1,"1334":1,"1406":1,"1464":1,"1465":1,"1466":1,"2459":1,"2673":1,"2886":1,"2890":1,"2924":1}}],["buzz",{"2":{"1674":3,"1675":12,"1680":7,"2269":1}}],["buzzer",{"2":{"1469":1}}],["burst",{"2":{"1976":1}}],["burnout",{"2":{"2724":1}}],["burns",{"2":{"2418":1}}],["burn",{"2":{"1362":1,"1951":2,"2281":1}}],["burden",{"2":{"201":1,"2721":1}}],["buy",{"2":{"681":1,"1316":1}}],["bumblebee",{"2":{"277":1}}],["bump",{"2":{"76":1,"114":2,"145":1,"236":1,"285":1,"416":2,"1680":3}}],["buspirate",{"2":{"2487":1}}],["bus",{"0":{"2487":1},"1":{"2488":1},"2":{"191":2,"266":1,"277":1,"794":1,"2487":2,"2488":1,"2841":1}}],["busywait",{"0":{"2033":1},"2":{"2030":1,"2032":1,"2033":2,"2868":2}}],["busy",{"0":{"1717":1},"1":{"1718":1},"2":{"191":1,"765":1,"1544":1,"1718":1,"1723":1,"1724":1,"1726":1}}],["business",{"2":{"154":4}}],["bulk",{"2":{"182":1,"2303":1,"2380":1}}],["bullseye",{"2":{"114":1}}],["bugging",{"2":{"2579":1}}],["buggy",{"2":{"317":1,"1487":1}}],["bug17281",{"2":{"199":1}}],["bugfix",{"2":{"176":1,"210":1,"236":1,"266":1,"294":1,"333":1,"396":1,"406":3}}],["bugfixes",{"2":{"10":2,"196":1,"396":1,"400":2,"401":2,"2829":1}}],["bugs",{"0":{"606":1},"2":{"114":1,"134":1,"145":1,"160":1,"176":1,"191":2,"199":1,"210":1,"222":1,"236":2,"249":1,"266":1,"277":1,"285":1,"294":1,"308":1,"317":1,"328":1,"333":1,"538":1,"1771":3,"2728":1,"2740":1}}],["bug",{"0":{"1336":1},"2":{"62":1,"73":1,"145":2,"160":1,"236":1,"371":1,"392":1,"540":1,"602":1,"606":1,"611":1,"617":2,"2465":1,"2491":1,"2621":3,"2676":1,"2942":1}}],["builtin",{"2":{"645":1,"758":2,"1329":2,"1473":1,"2291":1}}],["built",{"0":{"1334":1,"2248":1},"1":{"2249":1,"2250":1,"2251":1,"2252":1,"2253":1},"2":{"33":1,"49":1,"191":1,"228":1,"393":1,"459":2,"489":1,"645":1,"686":1,"712":1,"1202":1,"1410":1,"1479":1,"1487":1,"1627":1,"1844":1,"1976":1,"2066":1,"2266":1,"2284":1,"2324":2,"2379":1,"2407":1,"2410":1,"2432":1,"2572":1,"2589":1,"2591":1,"2603":1,"2604":1,"2688":1,"2746":1,"2752":1,"2777":1}}],["buildable",{"2":{"2443":1,"2446":1}}],["builder",{"2":{"448":1,"2415":1,"2416":1,"2425":2}}],["builddefs",{"2":{"160":1,"285":1}}],["building",{"0":{"388":1,"1429":1,"2575":1,"2591":1,"2776":1},"1":{"1430":1,"2576":1,"2577":1,"2578":1,"2579":1,"2580":1,"2581":1,"2592":1,"2593":1,"2594":1,"2595":1,"2596":1,"2597":1,"2598":1,"2599":1,"2600":1,"2601":1,"2602":1,"2603":1},"2":{"114":2,"133":1,"134":1,"156":1,"199":1,"201":1,"224":1,"233":1,"360":1,"387":1,"419":1,"427":1,"570":1,"572":2,"593":1,"617":1,"1308":1,"1311":1,"1329":1,"1332":1,"2368":1,"2401":2,"2429":1,"2554":1,"2561":1,"2573":1,"2575":1,"2584":1,"2587":1,"2623":1,"2656":1,"2749":2}}],["builds",{"2":{"28":1,"49":1,"94":1,"114":3,"130":1,"134":4,"138":1,"145":3,"160":2,"176":1,"198":1,"220":1,"222":3,"241":1,"253":1,"270":1,"273":1,"281":1,"288":2,"450":3,"451":3,"453":1,"1340":1,"1466":1,"1620":1,"2410":2,"2589":1,"2590":1,"2626":1,"2628":1,"2656":1,"2676":1,"2696":1,"2722":2,"2777":1,"2837":1}}],["build",{"0":{"23":1,"55":1,"152":1,"382":1,"570":1,"1308":1,"1311":1,"1462":1,"1621":1,"2415":1,"2576":1,"2580":1,"2588":1,"2589":1,"2613":1,"2622":1,"2648":1,"2656":1,"2717":1},"1":{"1309":1,"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"2614":1,"2615":1,"2616":1,"2617":1,"2618":1,"2619":1,"2620":1},"2":{"23":1,"55":3,"65":1,"70":1,"73":1,"92":2,"112":3,"114":6,"118":1,"126":1,"132":1,"133":1,"134":3,"145":2,"160":7,"164":1,"170":1,"176":2,"189":2,"191":4,"199":6,"210":1,"212":2,"215":1,"217":1,"222":2,"228":1,"234":3,"236":1,"249":1,"262":1,"266":23,"277":2,"279":1,"293":5,"294":1,"304":1,"305":5,"314":5,"317":1,"348":1,"360":2,"382":1,"387":6,"388":1,"416":1,"421":1,"422":1,"423":1,"427":3,"431":1,"433":1,"444":1,"446":1,"447":1,"448":1,"450":4,"451":4,"452":2,"453":5,"553":1,"573":1,"595":1,"597":1,"671":3,"681":3,"717":1,"1310":1,"1311":1,"1362":2,"1363":1,"1373":1,"1385":1,"1387":1,"1429":1,"1430":1,"1457":1,"1458":1,"1462":1,"1621":2,"1624":2,"1625":1,"1626":1,"1627":2,"1675":1,"2319":1,"2390":2,"2399":3,"2401":9,"2409":1,"2410":3,"2418":1,"2425":1,"2429":2,"2446":1,"2447":1,"2448":1,"2456":1,"2494":1,"2557":2,"2561":1,"2572":1,"2573":1,"2575":1,"2576":1,"2577":1,"2580":3,"2583":4,"2584":1,"2588":2,"2589":2,"2590":2,"2591":3,"2592":1,"2598":1,"2599":1,"2600":6,"2601":1,"2602":4,"2603":2,"2609":1,"2611":2,"2622":6,"2625":1,"2646":1,"2648":1,"2656":2,"2666":1,"2667":1,"2676":4,"2707":1,"2721":1,"2775":1,"2776":2,"2847":1,"2898":1,"2937":1,"2939":1}}],["butterstick",{"2":{"154":2}}],["button",{"0":{"1745":2,"1747":2,"2009":1,"2013":1,"2014":1,"2016":1,"2018":1,"2020":1,"2022":1,"2025":1,"2026":1,"2028":1,"2041":1,"2529":1},"1":{"1746":2,"1748":2,"2010":1,"2011":1,"2012":1,"2013":1,"2014":1,"2015":2,"2016":1,"2017":2,"2018":1,"2019":2,"2020":1,"2021":2,"2022":1,"2023":2,"2024":2,"2025":1,"2026":1,"2027":2,"2028":1,"2029":2},"2":{"49":1,"63":1,"134":1,"188":1,"190":1,"191":3,"231":5,"388":1,"390":1,"598":2,"599":2,"624":2,"681":2,"683":2,"1310":1,"1345":1,"1362":1,"1440":3,"1466":1,"1487":1,"1583":1,"1655":1,"1734":2,"1738":64,"1741":2,"1745":1,"1746":2,"1747":1,"1748":2,"1927":16,"1935":2,"1965":6,"1981":2,"1983":4,"1987":1,"1992":1,"2009":1,"2010":1,"2011":64,"2013":1,"2014":1,"2015":1,"2016":1,"2017":1,"2018":1,"2019":1,"2020":1,"2021":1,"2022":1,"2023":1,"2024":1,"2025":1,"2026":1,"2027":1,"2028":1,"2029":1,"2041":5,"2266":1,"2291":2,"2376":1,"2379":1,"2381":1,"2382":3,"2384":1,"2386":3,"2388":3,"2389":1,"2390":1,"2391":3,"2393":2,"2395":2,"2397":4,"2398":3,"2425":1,"2426":3,"2513":64,"2521":16,"2529":65,"2572":2,"2605":1,"2608":1,"2652":2,"2661":1,"2671":1,"2676":2,"2682":1,"2776":1,"2845":1,"2933":1}}],["buttons",{"0":{"2042":1},"2":{"49":1,"74":1,"114":1,"134":4,"160":1,"190":1,"210":1,"1633":1,"1732":1,"1734":1,"1741":1,"1924":1,"1968":2,"1981":2,"1983":1,"1985":3,"1992":1,"2007":1,"2009":1,"2041":4,"2042":2}}],["but",{"0":{"1337":1,"1454":1},"2":{"11":1,"49":1,"50":1,"99":1,"100":1,"120":1,"124":1,"125":2,"138":1,"141":1,"145":1,"170":1,"174":1,"185":2,"194":1,"213":1,"233":1,"251":1,"262":1,"273":2,"279":1,"283":2,"320":1,"373":1,"390":1,"392":1,"397":1,"408":1,"411":1,"420":1,"427":1,"428":1,"434":1,"489":1,"503":1,"510":2,"515":1,"526":1,"528":1,"529":1,"530":1,"531":1,"536":1,"556":1,"570":1,"572":1,"573":1,"586":1,"587":1,"589":1,"594":1,"597":1,"613":1,"614":1,"617":1,"624":1,"631":1,"635":2,"680":1,"683":1,"698":1,"699":1,"746":1,"747":1,"749":1,"750":1,"751":1,"752":1,"802":1,"831":1,"858":1,"860":1,"890":1,"923":1,"925":1,"957":1,"959":1,"991":1,"993":1,"1025":1,"1027":1,"1059":1,"1061":1,"1093":1,"1095":1,"1127":1,"1129":1,"1161":1,"1163":1,"1196":1,"1205":1,"1216":1,"1263":1,"1293":1,"1295":1,"1308":4,"1319":1,"1324":2,"1335":1,"1340":1,"1346":1,"1351":1,"1358":2,"1373":1,"1375":3,"1407":1,"1409":1,"1410":1,"1416":2,"1417":1,"1421":1,"1422":2,"1428":1,"1442":2,"1444":1,"1450":1,"1451":1,"1461":1,"1464":2,"1465":2,"1474":1,"1477":2,"1481":1,"1484":3,"1490":1,"1493":4,"1497":1,"1499":1,"1520":1,"1521":1,"1527":1,"1529":1,"1531":2,"1536":1,"1543":1,"1604":1,"1608":1,"1609":1,"1636":1,"1650":1,"1655":1,"1661":1,"1733":1,"1756":1,"1771":1,"1778":1,"1787":1,"1789":2,"1822":1,"1824":1,"1840":1,"1902":1,"1904":1,"1906":1,"1909":1,"1928":1,"1937":1,"1945":1,"1956":1,"1958":1,"1975":1,"1977":1,"1983":1,"1992":1,"1993":1,"2009":1,"2037":1,"2060":1,"2146":1,"2148":1,"2150":1,"2153":1,"2184":2,"2187":1,"2203":1,"2213":1,"2221":2,"2252":1,"2254":1,"2258":1,"2272":1,"2283":1,"2285":1,"2286":1,"2290":1,"2293":3,"2303":3,"2310":2,"2312":1,"2313":1,"2322":1,"2324":1,"2367":1,"2368":1,"2375":1,"2378":1,"2380":2,"2387":1,"2389":1,"2392":1,"2394":1,"2396":1,"2404":1,"2410":1,"2411":2,"2414":1,"2416":2,"2420":1,"2421":1,"2422":3,"2424":1,"2425":1,"2455":1,"2457":1,"2459":2,"2462":1,"2469":1,"2489":1,"2492":1,"2494":1,"2496":1,"2499":1,"2503":2,"2542":1,"2545":1,"2552":1,"2556":1,"2557":1,"2560":4,"2561":2,"2565":1,"2566":1,"2568":1,"2583":2,"2610":1,"2619":2,"2628":1,"2630":1,"2631":1,"2632":2,"2645":1,"2646":1,"2660":2,"2661":1,"2662":1,"2669":3,"2676":2,"2683":1,"2684":1,"2685":1,"2687":1,"2694":1,"2700":1,"2705":1,"2713":1,"2721":3,"2723":1,"2725":1,"2738":2,"2744":1,"2750":1,"2784":1,"2789":1,"2792":1,"2798":1,"2814":1,"2828":1,"2862":2,"2880":1,"2882":3,"2883":1,"2884":1,"2900":1,"2902":1,"2905":1,"2906":2,"2911":1,"2913":1,"2922":1,"2923":1,"2924":1,"2926":1,"2927":2,"2929":1,"2930":1,"2932":1,"2933":1,"2934":1,"2936":1,"2941":1,"2942":2}}],["blurb",{"0":{"2457":1},"2":{"597":1}}],["bluesmirf",{"2":{"2367":1}}],["blue",{"0":{"704":1,"706":1,"732":1,"734":1,"810":1,"812":1,"818":1,"838":1,"840":1,"846":1,"868":1,"870":1,"876":1,"900":1,"902":1,"908":1,"935":1,"937":1,"943":1,"969":1,"971":1,"977":1,"1003":1,"1005":1,"1011":1,"1037":1,"1039":1,"1045":1,"1071":1,"1073":1,"1079":1,"1105":1,"1107":1,"1113":1,"1139":1,"1141":1,"1147":1,"1173":1,"1175":1,"1181":1,"1226":1,"1228":1,"1234":1,"1303":1,"1305":1},"1":{"705":1,"707":1,"733":1,"735":1,"811":1,"813":1,"819":1,"839":1,"841":1,"847":1,"869":1,"871":1,"877":1,"901":1,"903":1,"909":1,"936":1,"938":1,"944":1,"970":1,"972":1,"978":1,"1004":1,"1006":1,"1012":1,"1038":1,"1040":1,"1046":1,"1072":1,"1074":1,"1080":1,"1106":1,"1108":1,"1114":1,"1140":1,"1142":1,"1148":1,"1174":1,"1176":1,"1182":1,"1227":1,"1229":1,"1235":1,"1304":1,"1306":1},"2":{"490":1,"492":1,"705":2,"707":2,"726":1,"729":1,"733":2,"735":2,"802":1,"805":1,"811":2,"813":2,"819":2,"831":1,"834":1,"839":2,"841":2,"847":2,"860":1,"863":1,"869":2,"871":2,"877":2,"890":1,"893":1,"901":2,"903":2,"909":2,"925":1,"928":1,"936":2,"938":2,"944":2,"959":1,"962":1,"970":2,"972":2,"978":2,"993":1,"996":1,"1004":2,"1006":2,"1012":2,"1027":1,"1030":1,"1038":2,"1040":2,"1046":2,"1061":1,"1064":1,"1072":2,"1074":2,"1080":2,"1095":1,"1098":1,"1106":2,"1108":2,"1114":2,"1129":1,"1132":1,"1140":2,"1142":2,"1148":2,"1163":1,"1166":1,"1174":2,"1176":2,"1182":2,"1216":1,"1219":1,"1227":2,"1229":2,"1235":2,"1285":1,"1304":2,"1306":2,"1938":1,"2067":2,"2072":2,"2073":1,"2086":1,"2088":1,"2174":1,"2198":2,"2525":1,"2615":1}}],["bluefruit",{"2":{"209":1,"308":1,"572":1,"2367":4,"2368":6,"2369":1,"2852":1}}],["bluefruitle",{"0":{"153":1},"2":{"160":1,"209":1}}],["bluepill70",{"2":{"67":1}}],["bluepill",{"2":{"67":1,"72":1,"145":2,"191":1,"218":2,"546":1,"720":1,"2395":1,"2498":1,"2500":2,"2501":3}}],["bluetooth",{"0":{"1356":1,"2366":1,"2367":1,"2369":1,"2370":1,"2509":1,"2729":1,"2737":1,"2799":1,"2852":1},"1":{"2367":1,"2368":2,"2369":1,"2370":1},"2":{"50":2,"51":1,"70":1,"75":1,"111":1,"112":2,"133":1,"134":2,"153":1,"188":1,"191":4,"209":4,"210":1,"222":1,"285":1,"308":2,"572":1,"687":1,"2367":9,"2368":1,"2369":2,"2370":21,"2432":1,"2509":20,"2721":4,"2729":3,"2732":1,"2734":1,"2735":1,"2737":2,"2743":2,"2852":1}}],["blade",{"2":{"1843":1,"2063":2}}],["blank",{"2":{"262":1,"294":1,"519":2,"597":1,"2401":1,"2713":1}}],["black",{"2":{"492":2,"559":1,"1469":1,"1472":3,"1476":2,"1949":1,"2067":2,"2198":2,"2416":1,"2421":1,"2459":2,"2676":5,"2770":4,"2929":1}}],["blackio83",{"2":{"253":2,"266":1}}],["blackpills",{"2":{"2254":1,"2657":2}}],["blackpill",{"0":{"2657":1},"1":{"2658":1,"2659":1,"2660":1,"2661":1,"2662":1,"2663":1,"2664":1,"2665":1},"2":{"93":1,"114":1,"145":2,"176":1,"191":2,"218":2,"253":1,"546":2,"2254":1,"2266":1,"2393":1,"2657":2,"2658":1,"2665":1,"2846":1,"2888":1}}],["blackheart",{"2":{"37":3}}],["blowing",{"2":{"2421":1}}],["blow",{"2":{"2421":1}}],["blog",{"2":{"1374":1,"2565":1,"2636":2}}],["blob",{"2":{"1350":1,"2758":2,"2766":2,"2767":2,"2770":1,"2771":1,"2773":1}}],["blobs",{"2":{"276":2,"284":3,"285":1,"2742":1,"2743":1}}],["blooming",{"2":{"236":1,"2063":3,"2887":1}}],["blok",{"0":{"1391":1},"2":{"176":1,"222":1,"317":1,"1386":1,"1388":3,"2702":1,"2888":1}}],["bloat",{"2":{"114":1,"2411":1}}],["blocked",{"2":{"1484":1}}],["blocked65",{"2":{"144":2}}],["blocker",{"2":{"222":2,"308":1}}],["blocks",{"0":{"348":1,"675":1},"1":{"676":1,"677":1},"2":{"191":2,"222":1,"231":1,"308":1,"523":1,"675":1,"752":1,"1951":1,"1954":1,"1955":2,"1956":1,"2282":1,"2721":1,"2758":2,"2759":1,"2766":2,"2767":1}}],["block",{"0":{"2759":1,"2760":1,"2763":1,"2764":1,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1},"2":{"16":1,"31":3,"34":3,"134":1,"176":1,"188":1,"191":1,"346":1,"510":2,"591":1,"627":1,"630":1,"671":1,"751":1,"752":7,"756":2,"760":8,"1273":1,"1362":1,"1419":1,"1607":1,"1844":1,"1954":6,"1955":6,"2066":1,"2268":1,"2273":1,"2282":6,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2391":1,"2393":1,"2395":1,"2397":1,"2758":9,"2759":2,"2760":5,"2761":4,"2762":4,"2763":4,"2764":3,"2766":10,"2767":10,"2768":5,"2769":8,"2770":13,"2771":2,"2772":2,"2773":2,"2780":1,"2930":1}}],["bling",{"2":{"114":1}}],["blinks",{"2":{"2700":1}}],["blinked",{"2":{"2184":1}}],["blink",{"0":{"1698":1,"1702":1,"2184":1},"1":{"1699":1,"1703":1},"2":{"112":1,"563":2,"1658":1,"1699":2,"1703":2,"2184":9,"2302":1,"2661":1,"2870":1}}],["blinking",{"2":{"93":1,"145":1,"1656":1,"1695":1,"2184":3,"2870":1}}],["blindassassin111",{"2":{"37":2}}],["blend",{"2":{"308":1,"2323":1}}],["ble",{"0":{"2368":1},"2":{"50":1,"133":1,"134":2,"153":1,"2367":2,"2368":1,"2734":1}}],["bl",{"0":{"7":1},"2":{"7":1,"369":1,"428":3,"587":6,"1537":7,"2266":3,"2508":7,"2554":2,"2556":1,"2557":1}}],["brmu",{"2":{"2503":1,"2541":1}}],["brmd",{"2":{"2503":1,"2538":1}}],["brk",{"2":{"2503":1,"2541":1}}],["brtg",{"2":{"1537":1,"2508":1}}],["brushing",{"2":{"246":1}}],["brutal",{"2":{"222":2}}],["brazilian",{"2":{"2880":2}}],["brazil",{"2":{"2880":1}}],["brass",{"2":{"2418":1}}],["brackets",{"2":{"2671":1}}],["bracket",{"2":{"1686":2,"2503":2,"2527":2,"2537":2,"2547":2}}],["braces",{"2":{"510":2,"511":1,"2225":1,"2311":1,"2834":1}}],["brace",{"2":{"510":5,"2527":2,"2547":2}}],["braking",{"2":{"1678":1,"1679":1}}],["brakefactor",{"2":{"1678":1,"1679":1}}],["brands",{"2":{"2390":1}}],["branding",{"2":{"1339":1}}],["brand",{"0":{"1339":1},"2":{"559":1,"681":1}}],["branching",{"2":{"1532":5,"1533":1}}],["branch",{"0":{"405":1,"2628":1,"2629":1,"2630":1,"2632":1},"1":{"2629":1,"2630":1},"2":{"51":2,"73":1,"76":1,"92":1,"94":1,"114":2,"251":1,"294":1,"308":1,"393":2,"402":1,"405":5,"413":1,"416":1,"417":2,"457":4,"577":1,"584":1,"586":1,"592":1,"611":3,"1532":2,"2494":1,"2601":1,"2625":1,"2626":2,"2627":12,"2628":3,"2629":5,"2630":3,"2631":4,"2632":3,"2633":19,"2634":1,"2719":7,"2721":1,"2722":1,"2723":7,"2896":2}}],["branches",{"2":{"51":1,"199":1,"308":1,"403":1,"1532":1,"1533":1,"2631":1,"2632":1,"2723":3}}],["brauner",{"2":{"222":1}}],["brett",{"2":{"1374":1,"2565":1}}],["brew",{"2":{"143":1,"421":1,"2384":1,"2499":1,"2594":1,"2617":1}}],["breadth",{"2":{"2722":1}}],["breach",{"2":{"2561":1}}],["breath",{"2":{"559":1,"1538":1,"2411":1,"2421":1}}],["breathe",{"0":{"460":1},"2":{"460":2,"2174":1,"2178":2,"2525":1}}],["breathing",{"0":{"1566":1,"1567":1,"1568":1,"1569":1},"1":{"1570":1},"2":{"74":1,"93":1,"112":2,"134":1,"145":2,"199":1,"231":1,"285":2,"294":1,"460":1,"559":3,"639":2,"1537":2,"1538":5,"1544":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1843":3,"2063":7,"2174":1,"2176":2,"2177":2,"2178":2,"2180":2,"2203":2,"2508":2,"2525":1,"2850":6,"2864":1,"2870":1,"2871":1,"2887":3}}],["breakout",{"2":{"1974":1}}],["breaks",{"2":{"573":1,"711":1}}],["breakpoints",{"2":{"2676":2}}],["breakpoint",{"2":{"403":1,"405":2}}],["breakage",{"2":{"114":1}}],["break",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"105":2,"114":1,"236":1,"249":1,"333":1,"393":1,"523":1,"525":1,"1407":6,"1424":5,"1440":4,"1441":2,"1456":1,"1465":2,"1466":1,"1511":2,"1521":1,"1522":1,"1527":2,"1599":2,"1611":2,"1612":1,"1651":4,"1670":1,"1828":1,"1938":4,"1947":3,"1985":1,"1987":2,"1989":2,"2004":2,"2005":3,"2073":3,"2162":2,"2165":1,"2170":10,"2184":3,"2201":1,"2277":3,"2308":3,"2310":12,"2311":8,"2312":4,"2568":1,"2625":1,"2840":1,"2905":4,"2920":2}}],["breaking",{"0":{"0":1,"9":1,"19":1,"39":1,"52":1,"66":1,"78":1,"96":1,"115":1,"135":1,"146":1,"161":1,"177":1,"192":1,"200":1,"211":1,"223":1,"237":1,"250":1,"267":1,"278":1,"286":1,"295":1,"309":1,"318":1,"329":1,"393":1,"394":1,"395":1,"407":1,"408":1,"1594":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"10":1,"11":1,"12":1,"13":1,"14":1,"15":1,"16":1,"17":1,"18":1,"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"53":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"61":1,"62":1,"63":1,"64":1,"65":1,"67":1,"68":1,"69":1,"70":1,"71":1,"72":1,"73":1,"74":1,"75":1,"76":1,"77":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"116":1,"117":1,"118":1,"119":1,"120":1,"121":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"129":1,"130":1,"131":1,"132":1,"133":1,"134":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"147":1,"148":1,"149":1,"150":1,"151":1,"152":1,"153":1,"154":1,"155":1,"156":1,"157":1,"158":1,"159":1,"160":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"178":1,"179":1,"180":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"187":1,"188":1,"189":1,"190":1,"191":1,"193":1,"194":1,"195":1,"196":1,"197":1,"198":1,"199":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"224":1,"225":1,"226":1,"227":1,"228":1,"229":1,"230":1,"231":1,"232":1,"233":1,"234":1,"235":1,"236":1,"238":1,"239":1,"240":1,"241":1,"242":1,"243":1,"244":1,"245":1,"246":1,"247":1,"248":1,"249":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1,"279":1,"280":1,"281":1,"282":1,"283":1,"284":1,"285":1,"287":1,"288":1,"289":1,"290":1,"291":1,"292":1,"293":1,"294":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1,"319":1,"320":1,"321":1,"322":1,"323":1,"324":1,"325":1,"326":1,"327":1,"328":1,"330":1,"331":1,"332":1,"333":1,"394":1,"395":1,"396":2,"397":1,"398":1,"399":1,"400":1,"401":1,"402":1,"403":1,"404":1,"405":1,"406":1,"409":1,"410":1,"411":1,"412":1},"2":{"0":3,"9":2,"19":2,"23":1,"28":1,"39":2,"52":2,"103":1,"105":1,"107":1,"114":1,"116":1,"126":1,"131":1,"141":1,"163":1,"167":1,"172":1,"176":1,"182":1,"184":1,"187":1,"198":1,"201":2,"212":1,"217":1,"224":1,"238":1,"251":1,"254":1,"262":1,"265":2,"273":1,"275":1,"276":1,"284":1,"303":1,"307":2,"332":1,"393":3,"394":1,"395":1,"397":4,"398":1,"399":3,"400":3,"401":3,"402":1,"403":1,"405":3,"406":4,"407":1,"408":1,"409":1,"410":2,"538":1,"1591":1,"1592":1,"1594":2,"2722":1,"2896":2,"2897":1}}],["bridge",{"2":{"2386":2,"2388":2,"2391":2}}],["brid",{"2":{"1770":1,"1842":1,"2159":1,"2503":1,"2518":1,"2542":1}}],["briu",{"2":{"1770":1,"1842":1,"2159":1,"2503":1,"2518":1,"2542":1}}],["briefs",{"2":{"2284":1}}],["brief",{"2":{"1463":1,"1824":1,"1840":1,"2060":1,"2407":1}}],["briefly",{"2":{"681":1}}],["bricking",{"2":{"2560":1}}],["brick",{"2":{"199":1,"1362":1}}],["brightens",{"2":{"2178":1}}],["brighter",{"2":{"492":1}}],["bright",{"2":{"492":1}}],["brightness",{"0":{"709":2,"1770":1,"2186":1},"1":{"710":2},"2":{"111":1,"114":1,"145":1,"176":1,"191":2,"333":1,"563":1,"701":2,"709":1,"710":2,"814":1,"815":1,"816":1,"817":1,"842":1,"843":1,"844":1,"845":1,"872":1,"873":1,"874":1,"875":1,"904":1,"905":1,"906":1,"907":1,"939":1,"940":1,"941":1,"942":1,"973":1,"974":1,"975":1,"976":1,"1007":1,"1008":1,"1009":1,"1010":1,"1041":1,"1042":1,"1043":1,"1044":1,"1075":1,"1076":1,"1077":1,"1078":1,"1109":1,"1110":1,"1111":1,"1112":1,"1143":1,"1144":1,"1145":1,"1146":1,"1177":1,"1178":1,"1179":1,"1180":1,"1230":1,"1231":1,"1232":1,"1233":1,"1535":1,"1537":1,"1538":2,"1540":1,"1761":1,"1770":7,"1837":5,"1842":4,"1843":4,"1846":5,"1859":1,"1860":1,"1861":1,"1862":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1899":1,"1951":3,"1956":4,"2062":2,"2063":8,"2069":6,"2074":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2159":1,"2173":1,"2174":4,"2175":3,"2178":1,"2186":2,"2503":6,"2508":1,"2518":4,"2525":4,"2526":2,"2538":1,"2541":1,"2542":4,"2750":1,"2770":3,"2848":2,"2850":6,"2864":5,"2870":5,"2871":4}}],["brigthness",{"2":{"176":1}}],["bringing",{"2":{"663":1}}],["brings",{"2":{"251":1,"268":1,"279":1}}],["bring",{"2":{"114":1,"285":1,"347":1,"1782":1,"2671":1,"2921":1}}],["brownfox",{"2":{"2418":1,"2429":1}}],["brown",{"2":{"746":1}}],["browsed",{"2":{"2655":1}}],["browse",{"2":{"387":1,"2610":1,"2927":1}}],["browser",{"2":{"294":1,"458":4,"579":1,"615":1,"2159":1,"2503":7,"2542":7,"2553":1}}],["browsing",{"2":{"110":1,"458":1}}],["brought",{"2":{"108":1}}],["broken",{"2":{"73":1,"93":1,"114":2,"134":2,"160":1,"176":1,"191":1,"199":1,"236":1,"277":1,"285":1,"317":1,"371":1,"408":1,"538":1,"617":1,"1386":1,"2476":1}}],["br",{"2":{"5":1,"338":1,"2293":1,"2294":3}}],["bypasses",{"2":{"2211":1}}],["bypassed",{"2":{"4":1}}],["bytecode",{"2":{"536":1}}],["byte",{"0":{"1284":1,"2241":1},"1":{"2242":1},"2":{"191":1,"746":1,"747":1,"751":1,"753":1,"763":1,"794":1,"1249":1,"1251":1,"1252":1,"1254":1,"1255":1,"1270":1,"1271":1,"1272":1,"1273":1,"1282":3,"1284":5,"1375":1,"1531":1,"1532":8,"1533":5,"1603":1,"1696":1,"1714":2,"1716":2,"1719":1,"1720":2,"1721":1,"1723":1,"1726":1,"1727":1,"1949":4,"1955":3,"1956":2,"1961":1,"1968":1,"2051":1,"2052":2,"2279":4,"2283":2,"2288":7,"2289":1,"2496":1,"2555":2,"2744":1,"2749":3,"2813":1,"2833":1}}],["bytes",{"2":{"25":1,"131":1,"134":1,"203":1,"210":1,"236":1,"698":1,"745":1,"746":3,"747":3,"748":1,"751":2,"752":2,"753":4,"754":11,"756":5,"770":1,"771":1,"773":1,"774":1,"776":1,"777":1,"779":1,"780":2,"783":1,"786":1,"789":1,"792":1,"1256":1,"1257":1,"1259":1,"1260":1,"1274":1,"1275":1,"1276":1,"1277":1,"1284":1,"1406":1,"1532":2,"1533":1,"1714":1,"1716":1,"1949":3,"2050":1,"2052":2,"2055":1,"2057":1,"2268":1,"2270":1,"2279":3,"2288":1,"2289":2,"2372":1,"2375":1,"2398":1,"2489":1,"2495":4,"2496":1,"2501":2,"2580":1,"2608":4,"2622":1,"2750":2,"2760":1,"2761":1,"2767":1,"2768":1,"2770":1,"2772":1,"2773":1,"2857":2,"2882":1,"2942":1}}],["by",{"0":{"27":1,"43":1,"589":1,"593":1,"1614":1,"2264":1,"2265":1,"2266":1,"2267":1,"2466":1},"1":{"594":1,"595":1,"596":1,"597":1,"598":1,"599":1,"600":1,"2467":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1},"2":{"3":1,"7":1,"15":1,"21":1,"25":2,"28":1,"31":1,"34":1,"37":6,"38":2,"43":2,"45":1,"49":2,"50":2,"58":1,"74":1,"82":1,"94":1,"114":6,"118":2,"119":2,"120":1,"124":1,"125":1,"134":5,"139":2,"160":2,"164":1,"169":1,"173":1,"174":1,"175":1,"176":5,"179":1,"182":1,"184":1,"185":1,"191":4,"194":1,"195":3,"199":4,"203":1,"210":3,"212":1,"220":3,"222":1,"233":1,"248":1,"263":1,"273":1,"288":1,"289":1,"308":1,"312":2,"320":1,"328":2,"333":1,"334":1,"338":3,"341":1,"348":1,"373":2,"374":1,"377":1,"385":1,"387":1,"396":1,"397":3,"408":2,"427":1,"428":2,"431":3,"461":1,"464":1,"470":1,"472":1,"474":1,"480":1,"485":2,"487":4,"492":1,"498":1,"504":1,"511":1,"517":1,"518":1,"519":1,"527":1,"536":1,"538":1,"542":1,"550":1,"555":1,"559":3,"562":1,"567":1,"568":1,"569":1,"570":2,"573":3,"577":1,"578":1,"579":1,"580":1,"584":1,"586":4,"587":1,"590":1,"594":1,"598":1,"611":1,"615":1,"616":1,"617":3,"626":1,"628":1,"629":1,"637":2,"638":1,"641":1,"646":2,"654":1,"655":1,"656":1,"657":1,"658":1,"667":1,"669":1,"670":1,"671":2,"673":2,"681":1,"683":3,"684":1,"685":1,"693":2,"698":3,"700":1,"713":1,"714":1,"716":1,"717":1,"718":1,"719":1,"720":1,"721":1,"724":1,"726":1,"743":3,"746":2,"749":1,"750":2,"751":2,"752":3,"753":1,"754":1,"762":1,"763":1,"765":1,"794":1,"797":1,"802":1,"826":1,"831":1,"852":1,"856":1,"858":2,"860":1,"884":1,"890":1,"916":1,"920":1,"921":1,"923":2,"925":1,"951":1,"955":1,"957":2,"959":1,"985":1,"989":1,"991":2,"993":1,"1019":1,"1023":1,"1025":2,"1027":1,"1053":1,"1057":1,"1059":2,"1061":1,"1087":1,"1091":1,"1093":2,"1095":1,"1121":1,"1125":1,"1127":2,"1129":1,"1155":1,"1159":1,"1161":2,"1163":1,"1190":1,"1196":1,"1197":1,"1200":1,"1201":2,"1202":2,"1204":1,"1205":1,"1211":1,"1216":1,"1243":1,"1249":2,"1262":1,"1264":1,"1281":1,"1283":1,"1284":1,"1287":1,"1294":1,"1297":1,"1310":2,"1319":1,"1323":1,"1324":1,"1329":1,"1330":1,"1340":4,"1345":1,"1348":1,"1351":1,"1356":1,"1358":1,"1363":1,"1369":1,"1370":1,"1374":1,"1375":4,"1378":1,"1385":1,"1386":1,"1387":1,"1388":1,"1389":1,"1393":2,"1394":1,"1396":1,"1401":1,"1402":1,"1407":5,"1409":1,"1410":2,"1413":4,"1416":2,"1417":1,"1421":1,"1427":2,"1434":1,"1435":1,"1438":2,"1440":2,"1442":3,"1443":1,"1449":1,"1459":1,"1461":1,"1464":1,"1466":1,"1468":2,"1474":2,"1479":1,"1481":2,"1483":1,"1484":1,"1485":2,"1486":1,"1487":4,"1495":3,"1496":1,"1504":1,"1511":1,"1512":2,"1516":1,"1519":1,"1520":2,"1522":1,"1532":5,"1533":2,"1535":3,"1536":1,"1539":1,"1552":1,"1583":2,"1584":1,"1587":5,"1588":5,"1589":3,"1591":2,"1595":1,"1602":1,"1604":1,"1605":1,"1606":4,"1607":1,"1610":1,"1611":3,"1612":3,"1616":2,"1617":1,"1618":2,"1620":1,"1621":1,"1624":1,"1649":1,"1655":2,"1656":1,"1659":3,"1660":1,"1661":1,"1669":1,"1675":2,"1679":1,"1732":2,"1733":1,"1734":1,"1735":2,"1736":1,"1757":1,"1759":1,"1760":1,"1770":1,"1775":1,"1776":1,"1777":1,"1779":1,"1780":6,"1782":2,"1787":1,"1790":1,"1822":2,"1827":1,"1837":2,"1838":1,"1840":2,"1843":1,"1844":1,"1845":2,"1846":2,"1913":1,"1920":1,"1928":1,"1930":3,"1949":3,"1950":2,"1954":3,"1955":2,"1956":7,"1959":2,"1962":1,"1970":1,"1971":1,"1977":1,"1978":5,"1979":7,"1980":4,"1981":1,"1982":1,"1983":2,"1986":1,"1987":1,"1992":1,"1994":2,"1997":1,"2007":2,"2009":1,"2037":1,"2039":1,"2041":1,"2049":2,"2050":3,"2052":1,"2058":1,"2060":2,"2063":3,"2064":1,"2066":1,"2068":2,"2069":4,"2156":1,"2159":7,"2161":1,"2162":2,"2163":1,"2167":1,"2170":1,"2172":1,"2175":4,"2178":2,"2181":1,"2182":2,"2184":1,"2186":1,"2199":2,"2200":1,"2203":1,"2207":1,"2213":1,"2219":1,"2220":1,"2222":1,"2252":3,"2254":3,"2259":1,"2263":1,"2264":2,"2265":1,"2266":1,"2269":1,"2270":1,"2271":1,"2272":1,"2276":1,"2279":3,"2280":2,"2283":9,"2284":2,"2285":1,"2288":3,"2289":1,"2293":1,"2297":2,"2298":1,"2301":1,"2302":4,"2303":1,"2310":2,"2312":1,"2323":3,"2324":5,"2340":1,"2368":1,"2371":1,"2372":1,"2374":1,"2375":1,"2376":2,"2380":1,"2381":1,"2382":1,"2389":1,"2394":1,"2396":1,"2398":2,"2401":5,"2409":1,"2411":7,"2415":1,"2420":1,"2421":1,"2423":1,"2425":1,"2427":1,"2428":2,"2429":1,"2434":1,"2440":1,"2446":2,"2448":1,"2450":1,"2451":1,"2457":1,"2459":4,"2463":1,"2465":1,"2468":2,"2469":1,"2472":1,"2473":1,"2491":1,"2492":1,"2494":1,"2498":1,"2499":1,"2501":1,"2524":4,"2550":1,"2551":1,"2554":1,"2559":1,"2560":2,"2561":1,"2565":2,"2566":1,"2568":2,"2572":1,"2582":1,"2607":1,"2609":3,"2616":1,"2618":1,"2619":3,"2620":2,"2622":1,"2626":1,"2627":1,"2630":2,"2631":1,"2632":2,"2633":4,"2643":3,"2644":1,"2645":3,"2656":1,"2659":1,"2661":1,"2669":1,"2676":1,"2678":1,"2679":1,"2685":1,"2687":4,"2690":1,"2691":1,"2700":3,"2702":2,"2704":1,"2705":3,"2706":1,"2710":3,"2719":1,"2721":5,"2722":1,"2725":1,"2747":1,"2748":3,"2749":23,"2750":7,"2751":2,"2758":1,"2760":2,"2766":1,"2768":1,"2770":2,"2776":1,"2778":1,"2780":1,"2795":1,"2796":1,"2805":1,"2818":1,"2833":1,"2834":1,"2844":2,"2854":2,"2857":1,"2862":3,"2864":2,"2870":3,"2871":4,"2877":1,"2879":1,"2882":2,"2883":1,"2884":3,"2886":1,"2887":3,"2894":1,"2895":1,"2896":1,"2897":1,"2898":1,"2903":1,"2904":1,"2905":9,"2911":1,"2912":7,"2913":5,"2914":2,"2915":2,"2917":1,"2918":3,"2919":2,"2921":2,"2923":4,"2927":2,"2929":1,"2930":1,"2934":2,"2938":1,"2941":1,"2942":4}}],["bepo",{"2":{"2880":2}}],["beware",{"2":{"1675":1}}],["beat",{"2":{"2215":7}}],["beats",{"2":{"1481":1,"2215":2}}],["beacon",{"2":{"1843":3,"2063":6,"2887":2}}],["bear65",{"2":{"72":1}}],["bear",{"2":{"67":2,"277":2,"2416":1,"2423":1}}],["bespoke",{"2":{"2685":1}}],["besides",{"2":{"1454":1,"1474":1,"2166":1,"2410":1,"2901":1}}],["best",{"0":{"672":1,"2624":1},"1":{"2625":1},"2":{"233":1,"424":1,"510":1,"595":1,"603":1,"617":2,"619":1,"632":1,"672":1,"794":1,"1417":1,"1440":3,"1484":1,"1528":1,"1936":1,"2030":1,"2064":1,"2310":1,"2322":1,"2422":1,"2566":1,"2582":1,"2605":1,"2619":1,"2620":1,"2625":1,"2685":1,"2691":1,"2718":1,"2719":1,"2723":1,"2750":1,"2890":1}}],["beyond",{"0":{"1365":1},"2":{"752":1,"1365":1,"2168":1,"2574":1,"2726":1,"2728":1,"2920":1}}],["beiwagon",{"2":{"308":1}}],["being",{"2":{"6":1,"92":1,"114":1,"124":1,"176":1,"182":1,"234":1,"411":1,"617":1,"716":2,"717":1,"747":1,"756":1,"1294":1,"1328":1,"1378":1,"1413":1,"1427":1,"1432":1,"1444":1,"1446":1,"1457":2,"1465":1,"1493":1,"1518":1,"1523":1,"1540":1,"1552":1,"1588":1,"1603":1,"1655":1,"1658":3,"1760":1,"1780":3,"1939":1,"1941":1,"1963":1,"2167":2,"2171":1,"2174":1,"2177":1,"2293":2,"2302":2,"2310":3,"2411":2,"2416":2,"2427":1,"2459":14,"2511":1,"2556":1,"2562":2,"2563":1,"2580":1,"2605":1,"2609":1,"2631":1,"2632":1,"2643":2,"2649":1,"2665":1,"2687":1,"2723":1,"2729":1,"2749":3,"2778":1,"2888":1,"2897":1,"2901":1,"2918":1,"2922":1}}],["beneath",{"2":{"2424":1}}],["beneficial",{"2":{"752":1,"2757":1}}],["benefits",{"2":{"406":1,"1760":1,"2254":1}}],["benefit",{"2":{"203":1,"617":1,"1457":1,"2440":1}}],["bent",{"2":{"2421":2,"2422":1}}],["bends",{"2":{"2420":1}}],["bending",{"2":{"2418":1,"2420":1}}],["bend",{"2":{"231":1,"1919":4,"2420":1,"2520":4}}],["bebol",{"2":{"222":1}}],["beck",{"2":{"2934":1}}],["becom",{"2":{"2165":1}}],["become",{"2":{"293":1,"305":1,"371":1,"1616":1,"2393":2,"2395":2,"2397":2,"2421":1,"2459":1,"2566":2,"2740":1}}],["becomes",{"2":{"201":1,"231":1,"562":1,"1587":1,"2455":1,"2475":1,"2727":1,"2732":1}}],["because",{"2":{"28":1,"408":1,"511":1,"594":1,"692":3,"1202":1,"1280":1,"1284":1,"1294":1,"1347":1,"1377":1,"1410":2,"1416":1,"1417":1,"1419":1,"1464":1,"1523":1,"1526":1,"1532":1,"1587":3,"1780":1,"1917":1,"1955":2,"1985":1,"1994":1,"2050":1,"2074":1,"2075":1,"2171":1,"2184":1,"2266":1,"2268":1,"2272":1,"2286":1,"2293":2,"2302":2,"2303":1,"2312":1,"2318":1,"2372":1,"2473":1,"2475":1,"2496":1,"2546":1,"2561":1,"2562":1,"2566":2,"2568":1,"2569":1,"2627":1,"2659":1,"2662":1,"2723":1,"2749":1,"2750":1,"2757":1,"2786":1,"2905":1,"2906":1,"2912":1,"2923":1,"2928":1,"2940":1}}],["beekeeb",{"2":{"222":1}}],["beeps",{"2":{"1467":1}}],["beep",{"2":{"120":1,"1435":1,"1438":3,"1467":1,"2220":1,"2849":2,"2861":1}}],["been",{"0":{"394":1},"2":{"1":2,"3":1,"7":1,"8":2,"10":1,"14":2,"15":1,"16":1,"25":1,"36":1,"38":1,"49":2,"60":1,"67":2,"69":1,"70":3,"82":1,"84":1,"86":3,"90":1,"98":1,"114":2,"118":2,"123":1,"124":1,"125":1,"126":1,"128":1,"132":1,"139":1,"142":1,"148":1,"151":2,"153":1,"163":1,"164":1,"166":1,"167":1,"169":1,"175":2,"182":5,"183":1,"185":1,"194":2,"196":1,"198":2,"201":2,"203":1,"206":1,"207":1,"208":1,"209":1,"212":4,"213":1,"214":1,"217":1,"220":1,"224":1,"228":2,"230":1,"231":1,"233":2,"238":1,"243":1,"254":1,"262":3,"265":1,"271":1,"273":1,"279":1,"283":2,"284":2,"293":1,"302":1,"303":1,"304":1,"305":1,"312":2,"314":1,"315":1,"316":1,"323":1,"331":2,"405":1,"432":1,"457":1,"468":1,"567":1,"580":1,"594":1,"632":1,"635":2,"642":1,"644":4,"655":1,"657":1,"663":2,"683":1,"720":1,"1389":1,"1390":1,"1395":1,"1402":1,"1440":1,"1441":2,"1533":1,"1583":1,"1744":1,"1779":1,"1787":1,"1846":5,"1931":1,"1939":1,"2001":1,"2054":1,"2063":1,"2069":7,"2167":1,"2169":1,"2184":1,"2212":1,"2258":1,"2268":2,"2293":2,"2301":1,"2303":1,"2310":2,"2397":1,"2459":1,"2495":1,"2561":1,"2562":4,"2564":1,"2579":1,"2587":1,"2605":1,"2609":1,"2610":1,"2626":1,"2632":1,"2633":1,"2646":1,"2648":1,"2679":2,"2721":2,"2749":1,"2750":2,"2782":1,"2806":1,"2895":1,"2911":1,"2927":1,"2932":1}}],["belgian",{"2":{"2880":4}}],["belgium",{"2":{"2880":2}}],["bel",{"2":{"2220":1,"2849":1}}],["belong",{"2":{"1200":1,"1201":1,"1493":1,"2721":2}}],["below",{"2":{"43":1,"55":1,"182":1,"196":2,"215":1,"224":1,"489":1,"519":1,"625":1,"654":1,"655":1,"659":1,"667":2,"680":1,"685":1,"713":1,"740":1,"743":3,"755":1,"769":1,"1195":1,"1198":1,"1247":1,"1268":1,"1286":1,"1312":1,"1325":1,"1379":1,"1416":1,"1497":1,"1511":1,"1541":1,"1584":1,"1587":2,"1588":1,"1598":1,"1674":1,"1736":1,"1762":1,"1763":1,"1767":1,"1775":1,"1785":2,"1788":1,"1839":1,"1954":1,"1956":1,"1958":1,"1982":1,"1992":2,"2005":1,"2006":1,"2032":1,"2035":1,"2059":1,"2063":1,"2159":1,"2172":1,"2173":1,"2199":1,"2221":1,"2259":1,"2288":1,"2289":1,"2302":1,"2303":1,"2310":1,"2311":2,"2319":1,"2410":2,"2416":1,"2430":1,"2443":1,"2534":1,"2578":2,"2705":1,"2721":1,"2746":1,"2750":3,"2758":1,"2760":3,"2766":1,"2770":3,"2877":1,"2878":1,"2879":1,"2901":1,"2933":2,"2937":1}}],["believe",{"2":{"408":1}}],["belt",{"2":{"199":1}}],["bells",{"2":{"2721":1}}],["bella",{"2":{"222":1}}],["bell",{"2":{"114":1,"1438":1,"1480":1,"2220":2}}],["began",{"2":{"2372":1}}],["begins",{"2":{"1532":1,"1785":1,"1794":1,"2293":1,"2372":2,"2517":1,"2555":1,"2578":1}}],["beginner",{"2":{"1421":1}}],["beginners",{"0":{"1419":1}}],["beginning",{"0":{"2899":1},"2":{"214":1,"392":1,"510":1,"1456":1,"1532":3,"1657":1,"1930":1,"1956":2,"2283":2,"2288":1,"2289":1,"2303":1,"2312":1,"2320":3,"2422":1,"2627":1,"2775":1}}],["begin",{"2":{"94":1,"113":1,"114":1,"133":1,"134":1,"249":1,"1523":1,"1792":1,"1799":1,"1956":2,"2211":1,"2337":1,"2352":1,"2442":1,"2585":1,"2607":1,"2942":1}}],["begun",{"2":{"50":1}}],["bet",{"2":{"233":1,"1528":1,"2605":1}}],["beta",{"2":{"154":2,"222":1,"228":1,"311":1}}],["better",{"0":{"2782":1},"1":{"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"50":1,"98":1,"145":1,"160":1,"191":2,"263":1,"308":1,"328":1,"515":1,"524":1,"539":1,"646":1,"1962":1,"2030":1,"2434":1,"2466":1,"2558":1,"2645":1,"2651":2,"2669":1,"2672":1,"2757":1,"2843":1,"2895":1,"2907":1,"2912":1,"2913":1,"2942":1}}],["between",{"0":{"1340":1,"1457":1,"2031":1,"2270":1},"1":{"1458":1,"1459":1,"1460":1,"1461":1,"1462":1,"1463":1,"1464":1,"1465":1,"1466":1},"2":{"32":1,"45":1,"49":2,"64":1,"76":1,"107":1,"114":1,"222":2,"249":1,"257":1,"258":1,"259":2,"266":1,"271":1,"276":1,"397":1,"470":1,"472":1,"510":1,"519":1,"525":1,"531":1,"559":2,"562":2,"568":3,"620":1,"649":1,"687":1,"713":1,"717":3,"761":1,"1189":1,"1242":1,"1263":1,"1285":1,"1294":1,"1295":1,"1340":1,"1347":1,"1363":1,"1375":1,"1377":2,"1409":1,"1420":2,"1421":1,"1422":6,"1457":1,"1458":1,"1466":1,"1532":1,"1552":1,"1573":1,"1584":1,"1588":1,"1617":1,"1635":1,"1659":1,"1661":1,"1669":1,"1689":1,"1736":1,"1782":1,"1832":1,"1929":4,"1930":2,"1931":8,"1933":3,"1934":1,"1940":1,"1941":1,"1942":1,"1956":1,"1962":1,"1979":2,"1986":1,"2030":1,"2031":1,"2047":1,"2163":1,"2173":1,"2176":1,"2178":1,"2180":6,"2191":13,"2193":2,"2194":2,"2195":2,"2209":1,"2217":1,"2225":1,"2229":1,"2233":1,"2257":1,"2258":2,"2259":1,"2260":1,"2266":1,"2269":3,"2270":1,"2271":1,"2273":1,"2287":1,"2289":1,"2290":1,"2298":1,"2302":1,"2310":1,"2320":1,"2358":1,"2370":1,"2371":1,"2373":2,"2377":1,"2384":1,"2406":1,"2419":1,"2420":1,"2443":2,"2490":1,"2497":1,"2575":1,"2627":2,"2649":1,"2671":1,"2734":1,"2744":2,"2747":1,"2757":1,"2758":1,"2766":1,"2775":1,"2792":1,"2835":1,"2847":2,"2851":1,"2865":1,"2870":1,"2906":1,"2912":1,"2914":1,"2921":1,"2942":1}}],["behind",{"2":{"49":1,"198":1,"201":1,"212":1,"224":1,"238":1,"251":1,"574":1,"2303":1,"2729":1,"2895":2}}],["behave",{"2":{"303":1,"586":1,"1377":1,"1591":1,"1781":1,"1992":1,"2167":1,"2301":1,"2542":1,"2644":1,"2722":1,"2912":1}}],["behaves",{"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"393":1,"624":1,"2168":1,"2578":1}}],["behavioral",{"2":{"1346":1}}],["behaviors",{"0":{"562":1}}],["behavior",{"0":{"624":1,"628":1},"1":{"625":1,"629":1,"630":1},"2":{"4":1,"49":1,"64":1,"87":2,"88":1,"103":1,"104":1,"126":1,"127":1,"176":1,"194":2,"297":3,"320":1,"327":2,"387":1,"408":3,"429":1,"487":2,"492":1,"538":1,"541":1,"568":1,"619":1,"623":2,"626":1,"628":2,"629":1,"646":1,"1346":1,"1484":1,"1496":1,"1617":1,"1656":1,"1657":1,"1760":1,"1764":1,"1767":1,"1771":1,"1775":1,"1776":1,"1778":1,"1779":1,"1780":1,"1781":1,"1831":1,"1832":1,"1936":1,"1941":1,"1979":1,"1983":2,"2168":1,"2271":1,"2311":1,"2313":1,"2337":1,"2338":1,"2339":1,"2454":1,"2459":1,"2571":1,"2643":1,"2656":1,"2700":2,"2702":1,"2801":1,"2902":1,"2906":2,"2915":3,"2918":3,"2923":2}}],["behaviours",{"2":{"198":1}}],["behaviour",{"0":{"194":1,"217":1,"1993":1},"2":{"2":1,"113":1,"114":1,"134":1,"160":2,"191":2,"217":1,"222":2,"294":2,"328":1,"333":1,"644":1,"654":1,"1319":1,"1378":1,"1425":1,"1513":1,"1587":1,"1608":1,"1662":2,"1790":1,"1993":1,"2047":1,"2174":2,"2264":1,"2713":1}}],["be",{"0":{"25":1,"263":1,"397":1,"560":1,"561":1,"562":1,"589":1,"2660":1,"2896":1,"2897":1},"2":{"5":1,"10":2,"11":1,"16":1,"22":1,"23":1,"24":1,"25":1,"28":1,"45":1,"49":2,"50":2,"58":1,"60":1,"63":2,"64":1,"70":1,"74":4,"88":2,"93":1,"100":1,"103":2,"104":2,"107":1,"109":1,"110":1,"118":1,"124":2,"125":1,"126":1,"127":2,"131":1,"134":4,"138":2,"139":1,"141":1,"142":1,"145":1,"148":1,"149":1,"164":1,"176":1,"184":1,"185":2,"191":2,"194":3,"195":2,"201":2,"208":1,"209":1,"212":5,"214":1,"220":3,"221":1,"228":3,"230":2,"231":1,"236":1,"249":1,"254":1,"262":2,"263":1,"265":3,"266":1,"268":1,"271":1,"273":1,"275":2,"276":2,"283":1,"284":1,"285":2,"288":2,"289":1,"303":2,"306":2,"307":3,"308":1,"312":1,"315":1,"317":1,"327":1,"328":1,"332":1,"338":3,"347":1,"371":1,"372":1,"373":1,"380":1,"383":1,"387":3,"390":3,"391":1,"393":1,"396":1,"397":8,"399":2,"400":2,"401":3,"405":1,"406":10,"408":5,"413":2,"414":2,"417":1,"422":2,"427":3,"428":2,"431":6,"441":1,"442":1,"444":1,"453":3,"457":1,"458":1,"459":1,"467":3,"471":1,"472":1,"473":1,"474":1,"481":1,"487":2,"490":1,"491":1,"492":2,"498":3,"503":1,"504":1,"507":1,"509":1,"510":1,"512":1,"514":1,"517":1,"519":1,"522":1,"523":2,"529":1,"530":1,"531":3,"535":1,"536":2,"538":3,"539":2,"540":1,"541":1,"543":1,"554":1,"555":1,"558":2,"559":4,"561":1,"562":1,"563":3,"566":3,"567":2,"568":3,"569":1,"572":2,"573":4,"576":2,"582":1,"586":4,"587":2,"589":1,"590":1,"591":1,"592":1,"594":2,"595":1,"596":1,"599":1,"603":1,"607":1,"608":1,"611":2,"613":2,"617":5,"618":1,"623":2,"624":1,"625":4,"627":1,"628":2,"631":1,"632":1,"637":1,"638":1,"641":2,"643":2,"645":1,"646":2,"649":2,"654":4,"655":9,"656":1,"657":2,"658":1,"659":1,"670":1,"674":1,"678":3,"683":4,"684":3,"685":4,"686":2,"687":1,"692":5,"693":2,"695":1,"696":3,"698":2,"703":1,"716":1,"717":5,"718":2,"720":1,"726":1,"730":1,"740":1,"743":3,"745":1,"746":4,"747":1,"748":1,"750":1,"751":5,"752":5,"753":2,"755":1,"760":2,"763":1,"764":1,"765":1,"769":3,"794":1,"802":1,"806":1,"831":1,"835":1,"856":1,"860":1,"864":1,"890":1,"894":1,"920":2,"921":1,"925":1,"929":1,"955":1,"959":1,"963":1,"989":1,"993":1,"997":1,"1023":1,"1027":1,"1031":1,"1057":1,"1061":1,"1065":1,"1091":2,"1095":1,"1099":1,"1125":2,"1129":1,"1133":1,"1159":1,"1163":1,"1167":1,"1189":1,"1193":1,"1195":1,"1196":1,"1197":4,"1198":1,"1200":2,"1201":2,"1202":2,"1203":1,"1206":1,"1210":1,"1216":1,"1220":1,"1244":1,"1245":4,"1247":2,"1249":2,"1266":1,"1268":2,"1280":1,"1283":1,"1284":2,"1285":2,"1286":1,"1289":1,"1291":3,"1294":2,"1295":2,"1298":1,"1302":1,"1310":1,"1316":1,"1317":3,"1321":1,"1322":1,"1323":1,"1326":1,"1327":1,"1328":1,"1329":1,"1340":1,"1345":3,"1348":1,"1350":1,"1368":2,"1369":1,"1370":1,"1373":1,"1374":3,"1375":4,"1378":1,"1379":1,"1385":3,"1387":2,"1392":1,"1404":2,"1405":1,"1406":3,"1407":2,"1409":1,"1410":3,"1412":1,"1413":1,"1416":5,"1417":2,"1418":1,"1419":2,"1420":1,"1421":4,"1422":1,"1423":1,"1427":2,"1428":4,"1429":1,"1430":1,"1432":1,"1434":1,"1440":3,"1441":1,"1442":2,"1445":1,"1446":1,"1447":1,"1448":1,"1449":2,"1456":2,"1457":2,"1458":5,"1459":1,"1460":2,"1461":1,"1464":2,"1465":1,"1466":2,"1468":2,"1471":1,"1472":1,"1474":1,"1475":2,"1477":1,"1479":5,"1481":1,"1483":1,"1484":1,"1485":2,"1487":1,"1492":1,"1495":1,"1496":1,"1497":1,"1504":1,"1511":1,"1512":7,"1516":1,"1517":1,"1521":2,"1522":1,"1526":1,"1527":2,"1528":1,"1532":2,"1540":2,"1548":1,"1583":1,"1585":1,"1588":1,"1589":1,"1594":2,"1599":1,"1601":1,"1602":2,"1603":4,"1604":3,"1606":8,"1614":2,"1617":1,"1619":1,"1620":1,"1622":1,"1625":1,"1627":2,"1628":1,"1633":1,"1635":2,"1636":3,"1639":1,"1650":2,"1651":1,"1653":2,"1655":1,"1659":4,"1660":1,"1661":2,"1662":1,"1663":2,"1664":4,"1672":1,"1675":5,"1676":1,"1679":1,"1680":2,"1681":2,"1691":1,"1696":2,"1698":2,"1723":2,"1732":3,"1734":1,"1735":1,"1736":3,"1741":1,"1756":2,"1759":2,"1764":1,"1766":1,"1768":1,"1770":2,"1771":1,"1773":1,"1775":13,"1776":3,"1777":1,"1778":2,"1779":1,"1781":2,"1782":2,"1789":1,"1790":1,"1825":1,"1828":3,"1831":1,"1832":1,"1840":3,"1844":2,"1845":1,"1846":1,"1847":1,"1859":1,"1861":1,"1913":1,"1930":2,"1932":1,"1933":1,"1934":2,"1935":1,"1936":1,"1937":1,"1939":1,"1940":1,"1945":1,"1948":2,"1949":2,"1951":1,"1953":1,"1955":1,"1956":4,"1958":2,"1959":1,"1962":3,"1965":1,"1968":3,"1970":4,"1971":2,"1973":1,"1975":1,"1976":3,"1977":2,"1978":3,"1979":4,"1981":1,"1983":4,"1987":3,"1991":2,"1992":5,"1993":1,"1994":3,"1997":1,"1999":1,"2001":3,"2002":1,"2004":4,"2005":2,"2006":2,"2007":2,"2008":2,"2009":2,"2032":1,"2035":1,"2036":1,"2037":2,"2039":1,"2041":3,"2044":1,"2049":1,"2050":3,"2051":2,"2057":2,"2060":3,"2065":1,"2066":2,"2067":1,"2068":1,"2069":1,"2070":1,"2074":2,"2085":1,"2087":1,"2156":1,"2159":1,"2160":1,"2161":3,"2162":1,"2163":2,"2164":1,"2165":3,"2166":1,"2168":1,"2169":3,"2170":1,"2171":1,"2172":1,"2174":2,"2175":2,"2176":1,"2177":2,"2182":3,"2184":2,"2198":1,"2201":2,"2203":1,"2205":1,"2206":2,"2207":1,"2212":1,"2218":2,"2221":2,"2254":1,"2258":2,"2260":2,"2264":2,"2265":3,"2266":2,"2268":3,"2269":1,"2270":6,"2271":2,"2272":1,"2279":2,"2283":2,"2286":1,"2287":2,"2288":1,"2291":1,"2293":7,"2294":2,"2297":1,"2302":5,"2303":1,"2309":1,"2310":6,"2311":1,"2312":6,"2313":1,"2315":1,"2316":1,"2317":1,"2319":1,"2323":6,"2324":2,"2337":1,"2338":1,"2339":1,"2340":1,"2358":1,"2368":2,"2370":1,"2371":1,"2372":4,"2374":1,"2375":2,"2376":2,"2381":2,"2383":3,"2384":1,"2386":3,"2388":2,"2389":2,"2390":1,"2391":3,"2393":1,"2395":1,"2397":1,"2398":3,"2403":2,"2405":3,"2407":1,"2408":2,"2410":5,"2411":7,"2416":2,"2417":1,"2418":2,"2419":1,"2420":2,"2421":7,"2422":3,"2423":2,"2424":2,"2425":2,"2427":4,"2428":1,"2430":1,"2432":1,"2434":1,"2442":1,"2443":4,"2444":3,"2446":3,"2447":3,"2448":1,"2449":1,"2451":1,"2453":1,"2455":1,"2456":1,"2457":2,"2459":4,"2466":1,"2469":1,"2470":1,"2472":1,"2475":1,"2476":1,"2478":1,"2479":1,"2480":1,"2482":1,"2483":1,"2490":1,"2492":1,"2494":1,"2495":3,"2496":2,"2497":1,"2498":2,"2499":3,"2500":1,"2501":1,"2503":1,"2516":1,"2546":1,"2550":2,"2551":1,"2552":2,"2554":3,"2558":1,"2559":2,"2560":1,"2561":6,"2562":6,"2563":3,"2564":3,"2565":1,"2566":3,"2568":4,"2569":1,"2576":1,"2577":2,"2578":3,"2582":2,"2583":1,"2585":1,"2589":2,"2590":2,"2591":2,"2594":2,"2602":1,"2603":4,"2605":4,"2606":1,"2607":1,"2609":1,"2611":1,"2612":1,"2621":1,"2622":2,"2629":1,"2630":1,"2632":1,"2633":4,"2643":1,"2644":1,"2645":2,"2649":1,"2651":1,"2652":1,"2655":3,"2657":1,"2658":1,"2659":3,"2660":5,"2661":5,"2662":4,"2664":1,"2665":1,"2669":2,"2671":1,"2675":1,"2676":12,"2678":6,"2679":1,"2680":1,"2683":1,"2684":1,"2685":1,"2687":6,"2688":3,"2689":2,"2690":1,"2691":2,"2694":1,"2695":1,"2696":1,"2700":1,"2702":1,"2703":1,"2704":1,"2705":2,"2706":1,"2707":1,"2709":1,"2712":1,"2713":1,"2715":2,"2718":1,"2719":11,"2720":6,"2721":34,"2722":13,"2724":2,"2725":1,"2744":1,"2746":2,"2747":5,"2748":4,"2749":42,"2750":30,"2752":1,"2757":1,"2760":2,"2761":2,"2762":1,"2765":1,"2766":1,"2767":1,"2768":2,"2769":1,"2770":3,"2772":2,"2775":2,"2782":1,"2786":4,"2788":1,"2806":1,"2840":1,"2843":1,"2845":2,"2846":1,"2847":2,"2849":1,"2850":1,"2851":1,"2852":1,"2853":1,"2857":3,"2862":1,"2864":3,"2865":2,"2868":1,"2869":1,"2870":2,"2871":3,"2873":2,"2874":1,"2876":1,"2879":1,"2881":1,"2882":1,"2886":1,"2887":1,"2890":1,"2894":2,"2895":3,"2896":7,"2897":2,"2898":1,"2899":1,"2901":1,"2905":5,"2906":1,"2911":2,"2912":5,"2913":3,"2914":5,"2917":1,"2918":4,"2919":3,"2920":2,"2921":2,"2923":1,"2924":2,"2927":1,"2929":1,"2933":3,"2936":3,"2937":2,"2938":1,"2939":1,"2940":1,"2941":3,"2942":2}}],["beforehand",{"2":{"2605":1}}],["before",{"0":{"324":1,"399":1,"400":1,"401":1,"402":1},"2":{"1":1,"45":1,"49":1,"55":1,"73":1,"90":1,"105":1,"145":2,"176":1,"191":1,"199":1,"214":2,"222":1,"234":1,"240":1,"246":1,"259":1,"263":1,"289":1,"320":2,"356":1,"362":1,"397":1,"401":1,"403":1,"406":9,"453":1,"465":1,"467":1,"504":1,"535":1,"562":7,"572":3,"611":1,"613":2,"615":1,"617":4,"628":1,"631":1,"632":1,"635":1,"642":1,"644":1,"649":2,"655":2,"656":1,"657":1,"693":1,"760":2,"769":1,"1247":1,"1268":1,"1410":1,"1440":1,"1441":4,"1449":1,"1450":1,"1484":1,"1492":1,"1497":1,"1512":2,"1521":1,"1522":1,"1523":1,"1526":1,"1532":1,"1585":1,"1598":1,"1616":1,"1628":1,"1672":1,"1698":1,"1724":1,"1726":1,"1775":1,"1829":1,"1840":1,"1902":1,"1904":1,"1906":1,"1909":1,"1933":1,"1950":1,"1955":1,"1965":8,"1986":1,"1989":1,"1992":1,"1994":2,"2001":2,"2004":2,"2039":1,"2041":1,"2046":1,"2060":1,"2146":1,"2148":1,"2150":1,"2153":1,"2210":1,"2230":1,"2234":1,"2252":2,"2253":1,"2258":1,"2268":2,"2274":1,"2293":2,"2301":1,"2303":1,"2310":1,"2410":1,"2411":1,"2418":1,"2420":1,"2422":1,"2424":1,"2448":1,"2459":1,"2496":1,"2559":1,"2560":1,"2573":1,"2583":1,"2605":1,"2611":1,"2612":1,"2627":1,"2643":1,"2648":1,"2667":1,"2678":3,"2690":1,"2691":1,"2719":1,"2721":2,"2724":1,"2741":1,"2748":1,"2786":1,"2814":1,"2854":1,"2862":1,"2867":1,"2872":1,"2875":1,"2889":1,"2896":1,"2906":1,"2911":1,"2912":1,"2918":2,"2923":2}}],["m4",{"2":{"2682":1}}],["mrwd",{"2":{"2159":1,"2503":1,"2542":1}}],["mrelax",{"2":{"145":1}}],["mhz",{"2":{"1249":2}}],["mb85rs64v",{"2":{"747":2}}],["mb85rc256v",{"2":{"746":2}}],["mnt",{"2":{"2619":1}}],["mnemonic",{"2":{"2323":2,"2411":1}}],["mnxt",{"2":{"587":2,"1770":1,"2159":1,"2503":1,"2542":1}}],["mnk50",{"2":{"241":2}}],["mnk75",{"2":{"222":1,"241":2}}],["mnk1800s",{"2":{"222":1,"241":2}}],["mnk65",{"2":{"222":1}}],["mmd",{"2":{"2560":1}}],["mm",{"2":{"405":2,"1964":4,"1968":1,"2875":1}}],["mmcu=",{"2":{"348":1,"2381":1}}],["mmoskal",{"2":{"199":1}}],["m32u4",{"2":{"2495":1}}],["m3",{"2":{"328":1}}],["m3n3van",{"2":{"154":2}}],["m1",{"2":{"328":1}}],["m122",{"2":{"114":1,"218":8}}],["m12og",{"2":{"102":3}}],["m2s",{"2":{"2270":7}}],["m2",{"2":{"328":1}}],["m256ws",{"2":{"277":1}}],["m256wh",{"2":{"277":1}}],["m20add",{"2":{"114":1}}],["mj65",{"2":{"253":2}}],["mj6xy",{"2":{"222":1}}],["mfa",{"2":{"2669":1}}],["mffd",{"2":{"2159":1,"2503":1,"2542":1}}],["mf34",{"2":{"226":1,"236":1}}],["mf17",{"2":{"226":1,"236":1}}],["m60",{"2":{"199":1}}],["m65",{"2":{"114":1,"222":2}}],["mprv",{"2":{"1770":1,"2159":1,"2503":1,"2542":1}}],["mply",{"2":{"587":2,"1770":6,"2503":1,"2542":1}}],["mp",{"2":{"154":2}}],["mpaland",{"0":{"24":1},"2":{"176":1}}],["msel",{"2":{"2503":1,"2542":1}}],["msecs",{"2":{"1442":1}}],["mstp",{"2":{"2503":1,"2542":1}}],["msb",{"2":{"2289":2}}],["msbs",{"2":{"2288":1}}],["msg1967778",{"2":{"1373":2}}],["msg1884034",{"2":{"1372":2}}],["msg1127447",{"2":{"1364":2}}],["msg1492604",{"2":{"1350":2}}],["mschwingen",{"2":{"160":1,"218":2}}],["ms",{"0":{"1497":1},"2":{"145":1,"160":1,"210":2,"220":2,"231":2,"559":1,"562":1,"568":1,"645":2,"769":1,"1410":2,"1438":1,"1585":1,"1656":1,"1661":2,"1675":4,"1788":1,"1927":19,"1931":22,"1932":6,"1933":1,"1951":1,"1964":1,"1965":2,"1968":1,"1978":2,"1985":1,"1996":6,"2007":1,"2064":2,"2159":8,"2221":2,"2268":1,"2281":1,"2308":4,"2492":1,"2521":19,"2643":1,"2700":1,"2719":2,"2847":2,"2855":1,"2863":1,"2865":1,"2873":1,"2875":1,"2876":1,"2915":1}}],["msystem",{"2":{"2671":1}}],["msys2",{"0":{"2671":1},"2":{"143":1,"145":1,"682":1,"2495":1,"2499":1,"2594":1,"2613":1,"2614":1,"2615":1,"2671":2}}],["msys",{"2":{"143":1,"145":1,"240":1,"2390":1,"2495":1,"2594":1,"2598":1,"2613":1,"2614":1,"2615":3,"2621":1,"2671":2,"2676":4}}],["mctl",{"2":{"2503":1,"2542":1}}],["mcselec",{"2":{"1316":1}}],["mcmuffin",{"2":{"673":1}}],["mc",{"2":{"222":1}}],["mcp23018",{"2":{"159":1,"160":2,"191":2}}],["mcall",{"2":{"145":1}}],["mcu>",{"2":{"348":1,"2376":3,"2379":1,"2381":1,"2382":1,"2495":1}}],["mcuconf",{"2":{"50":2,"714":1,"715":1,"718":1,"765":3,"1200":3,"1201":3,"1245":3,"1266":2,"1296":1,"1300":1,"1402":2,"1550":1,"1551":1,"2697":1,"2698":1,"2699":1}}],["mcus",{"0":{"1207":1,"2676":1},"1":{"1208":1,"1209":1,"1210":1},"2":{"49":1,"76":1,"114":1,"160":1,"174":1,"191":1,"249":1,"378":1,"387":1,"390":1,"392":1,"543":1,"544":1,"687":1,"698":1,"711":1,"713":1,"750":1,"751":1,"761":1,"1195":3,"1197":4,"1198":4,"1200":2,"1201":2,"1242":1,"1263":1,"1297":1,"1369":1,"1471":1,"1734":2,"1955":1,"2266":1,"2386":1,"2391":1,"2494":1,"2678":5,"2688":1,"2689":3,"2692":1,"2722":1,"2749":1,"2795":1,"2796":1}}],["mcu",{"0":{"130":1,"156":1,"386":1,"571":1,"1653":1,"2685":1,"2686":1,"2689":1,"2691":1,"2823":1},"1":{"2686":1,"2687":2,"2688":2,"2689":1,"2690":1,"2691":1},"2":{"10":2,"73":1,"93":1,"114":1,"130":2,"134":1,"156":1,"160":1,"174":2,"176":5,"191":1,"199":4,"222":1,"236":1,"285":2,"341":1,"378":1,"379":1,"382":1,"387":5,"390":1,"391":1,"569":1,"571":1,"572":2,"620":1,"643":1,"644":1,"695":1,"696":1,"711":1,"713":2,"718":1,"720":1,"743":1,"749":1,"750":2,"751":9,"754":3,"764":2,"765":2,"1189":1,"1193":1,"1195":1,"1197":3,"1198":1,"1200":4,"1201":5,"1202":1,"1244":2,"1245":1,"1249":2,"1265":2,"1266":1,"1291":3,"1294":3,"1297":1,"1300":1,"1309":1,"1310":2,"1369":1,"1406":1,"1475":1,"1550":1,"1552":3,"1649":1,"1653":1,"1663":1,"1675":1,"1676":1,"1973":1,"2037":1,"2201":1,"2254":1,"2368":1,"2377":1,"2383":1,"2384":1,"2411":1,"2432":1,"2476":2,"2490":1,"2491":1,"2492":1,"2493":1,"2494":1,"2495":1,"2496":1,"2676":5,"2678":2,"2683":2,"2684":4,"2685":8,"2687":3,"2689":1,"2691":1,"2694":1,"2711":1,"2721":3,"2722":1,"2747":3,"2751":1,"2800":2,"2804":1,"2808":1,"2821":1,"2856":1}}],["m0",{"2":{"134":1}}],["m0lly",{"2":{"43":2,"222":1}}],["md5",{"2":{"2410":2,"2501":1}}],["mdbt40",{"2":{"2368":1}}],["mdash",{"2":{"2290":1,"2631":2,"2632":2,"2633":1,"2778":2}}],["mdloader",{"2":{"134":1}}],["md",{"0":{"680":1,"681":1,"1461":1,"2445":1,"2708":1},"2":{"114":1,"134":1,"176":2,"210":1,"397":1,"403":1,"405":1,"406":1,"616":2,"664":1,"678":2,"1350":1,"1427":3,"1457":1,"2407":1,"2408":1,"2441":1,"2444":1,"2445":1,"2451":2,"2708":2,"2721":1}}],["mün",{"2":{"114":1}}],["mymacro2",{"2":{"2941":2}}],["mymacro1",{"2":{"2941":2}}],["mycoolkeeb",{"2":{"2707":4}}],["mycm",{"2":{"2503":1,"2542":1}}],["myusername",{"2":{"2585":1}}],["mykeyclub",{"2":{"2560":1}}],["mykeyboard",{"2":{"169":2,"184":2}}],["mylayout",{"2":{"1459":3}}],["my",{"0":{"408":1,"499":1,"602":1,"603":1,"1317":1,"1345":1,"1346":1,"1361":1},"1":{"409":1,"410":1,"411":1,"412":1,"500":1,"501":1,"502":1,"503":1,"504":1},"2":{"114":1,"120":2,"272":4,"307":6,"369":1,"387":1,"391":1,"471":1,"520":1,"521":1,"522":1,"531":2,"614":4,"627":1,"654":3,"655":3,"656":2,"657":2,"673":2,"678":5,"763":2,"1349":1,"1421":1,"1435":2,"1440":4,"1444":4,"1458":2,"1479":3,"1517":3,"1614":4,"1627":1,"1844":10,"2066":10,"2167":4,"2168":5,"2182":10,"2311":2,"2312":14,"2398":2,"2409":2,"2429":1,"2503":2,"2542":2,"2583":5,"2588":1,"2609":2,"2633":1,"2710":1,"2748":10,"2749":5,"2750":29,"2878":2}}],["mx",{"2":{"2414":1,"2883":1}}],["mx25l4006e",{"2":{"756":1}}],["mxss",{"2":{"222":2,"236":1}}],["mx1062",{"2":{"108":1}}],["mx5160",{"2":{"57":2,"222":1}}],["m",{"2":{"93":1,"102":1,"114":1,"143":2,"191":1,"205":1,"210":1,"215":2,"218":14,"222":1,"249":1,"266":5,"369":1,"403":1,"405":1,"414":2,"415":1,"423":1,"428":2,"435":2,"460":1,"486":1,"587":2,"611":1,"1522":1,"1599":2,"1619":1,"2162":6,"2174":10,"2398":1,"2496":3,"2503":3,"2525":10,"2535":3,"2556":1,"2601":2,"2627":1,"2633":1,"2875":1}}],["mumbo",{"0":{"1955":1}}],["mu",{"2":{"1484":4,"1489":4,"2505":4}}],["muhenkan",{"2":{"1355":1,"2540":1}}],["mux",{"2":{"695":4,"696":2}}],["mutually",{"2":{"1420":1}}],["mutable",{"2":{"531":1}}],["mute",{"2":{"231":1,"255":1,"2503":5,"2541":2,"2542":3}}],["mutex",{"2":{"145":1}}],["murcielago",{"2":{"253":2}}],["musical",{"2":{"1479":1,"1487":2}}],["music",{"0":{"1484":1,"1485":1,"1486":1},"1":{"1485":1,"1486":1},"2":{"191":1,"222":1,"649":1,"1478":1,"1479":15,"1480":20,"1484":13,"1485":6,"1486":6,"1489":8,"1651":2,"2505":8,"2884":2,"2933":1}}],["must",{"2":{"88":2,"104":2,"127":2,"152":1,"184":1,"194":1,"268":1,"284":1,"387":1,"427":2,"456":1,"474":1,"522":1,"523":1,"531":1,"562":3,"565":1,"568":2,"572":1,"589":1,"592":1,"623":2,"625":1,"666":1,"681":1,"686":1,"693":1,"695":1,"726":1,"752":1,"769":1,"802":1,"831":1,"860":1,"890":1,"920":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1091":1,"1095":1,"1125":1,"1129":1,"1163":1,"1192":1,"1197":1,"1216":1,"1247":1,"1268":1,"1291":2,"1294":2,"1329":1,"1348":1,"1401":1,"1409":1,"1417":1,"1418":1,"1428":4,"1440":1,"1512":3,"1521":1,"1539":1,"1547":1,"1583":1,"1604":2,"1605":1,"1606":12,"1610":1,"1617":1,"1619":1,"1621":2,"1624":1,"1627":1,"1635":1,"1664":1,"1691":1,"1696":1,"1733":1,"1734":1,"1736":2,"1775":2,"1782":2,"1805":1,"1925":1,"1931":1,"1932":1,"1971":1,"1973":1,"1979":2,"1994":1,"2004":1,"2008":1,"2037":1,"2041":2,"2050":2,"2057":2,"2171":1,"2172":2,"2201":1,"2206":1,"2254":1,"2271":1,"2273":1,"2312":1,"2323":1,"2358":1,"2369":1,"2386":1,"2391":1,"2409":1,"2411":2,"2443":1,"2458":1,"2499":1,"2503":1,"2559":2,"2561":3,"2564":1,"2587":1,"2603":2,"2605":1,"2637":1,"2644":1,"2648":2,"2676":1,"2685":1,"2713":1,"2714":1,"2719":4,"2720":1,"2721":9,"2722":2,"2742":2,"2748":1,"2749":3,"2760":2,"2761":2,"2762":1,"2767":1,"2768":2,"2770":1,"2772":1,"2775":1,"2846":1,"2847":2,"2849":1,"2850":1,"2851":1,"2852":1,"2857":2,"2864":2,"2865":1,"2868":1,"2870":2,"2871":2,"2873":2,"2874":1,"2876":1,"2879":1,"2914":1,"2921":2}}],["multilingual",{"2":{"2880":3}}],["multilayer",{"2":{"285":1}}],["multitude",{"2":{"2677":1}}],["multiarch",{"2":{"2676":1}}],["multimeter",{"2":{"2427":1}}],["multisplash",{"2":{"1843":3,"2063":6,"2887":2}}],["multinexus",{"2":{"1843":3,"2063":3,"2887":1}}],["multicross",{"2":{"1843":3,"2063":3,"2887":1}}],["multiwide",{"2":{"1843":3,"2063":3,"2887":1}}],["multiprocessing",{"0":{"535":1}}],["multiplier",{"2":{"1953":1,"1974":1,"1979":7,"2040":3}}],["multiplicative",{"2":{"1487":1}}],["multiplication",{"2":{"191":1}}],["multiples",{"2":{"1928":1}}],["multiplexing",{"0":{"1478":1},"2":{"1478":4,"1480":2,"2695":1}}],["multiplexer",{"2":{"620":1}}],["multiple",{"0":{"479":1,"481":1,"1427":1,"1540":1,"1664":1},"1":{"1428":1,"1429":1,"1430":1,"1431":1,"1432":1,"1433":1},"2":{"75":1,"114":1,"145":3,"222":1,"234":2,"236":1,"249":1,"307":1,"308":1,"312":1,"369":1,"431":2,"453":1,"467":2,"472":2,"475":1,"481":1,"510":1,"525":1,"647":1,"674":1,"685":2,"696":1,"751":1,"752":1,"753":1,"759":1,"760":1,"765":1,"770":1,"773":1,"776":1,"779":1,"920":1,"1091":1,"1125":1,"1244":1,"1245":1,"1256":1,"1259":1,"1266":1,"1274":1,"1276":1,"1409":2,"1411":1,"1416":1,"1420":1,"1427":1,"1430":1,"1434":1,"1438":3,"1459":1,"1466":1,"1480":1,"1511":1,"1516":1,"1532":1,"1535":1,"1540":2,"1596":1,"1609":1,"1613":1,"1635":1,"1636":1,"1659":1,"1664":1,"1675":1,"1781":1,"1788":1,"1843":4,"1930":1,"1931":1,"1976":4,"1978":3,"2050":1,"2063":5,"2182":1,"2184":1,"2206":1,"2286":1,"2370":1,"2427":1,"2443":1,"2446":2,"2474":1,"2516":1,"2550":1,"2560":2,"2562":1,"2577":1,"2580":1,"2603":1,"2609":1,"2626":1,"2633":1,"2676":1,"2719":1,"2721":2,"2722":1,"2734":1,"2769":1,"2787":1,"2817":1,"2822":1,"2836":1,"2849":1,"2857":1,"2915":1,"2918":1,"2919":1}}],["multiply",{"2":{"25":1}}],["multi",{"0":{"920":1,"1091":1,"1125":1},"2":{"191":1,"222":1,"2918":1}}],["multibuild",{"2":{"160":1,"199":1}}],["mun",{"2":{"114":1}}],["much",{"0":{"2896":1},"2":{"98":1,"100":1,"123":1,"138":1,"163":1,"174":1,"175":1,"189":1,"244":1,"247":1,"248":1,"251":1,"263":1,"307":1,"411":1,"534":1,"586":1,"612":1,"754":1,"1339":1,"1415":1,"1464":1,"1487":1,"1504":1,"1519":1,"1552":1,"1760":1,"1781":1,"1932":1,"1933":1,"1968":1,"2035":1,"2063":2,"2323":1,"2372":1,"2383":1,"2399":1,"2421":1,"2422":1,"2459":1,"2584":1,"2669":1,"2671":1,"2672":1,"2679":1,"2695":1,"2704":1,"2720":1,"2877":1,"2941":1}}],["mv",{"2":{"70":1,"741":1}}],["med",{"2":{"1680":22}}],["medium",{"0":{"1210":1},"2":{"1678":1,"1679":1,"1680":5,"2501":2}}],["media",{"0":{"1770":1,"2542":1},"2":{"73":1,"176":1,"266":1,"559":1,"589":1,"1770":1,"2050":1,"2159":3,"2503":9,"2542":13,"2551":1,"2882":1}}],["meh",{"2":{"1374":1,"2522":2,"2523":1,"2528":1,"2565":3,"2644":1}}],["mentioning",{"2":{"2729":1}}],["mentioned",{"2":{"228":1,"276":1,"754":1,"1343":1,"1768":1,"1840":1,"2060":1,"2303":1,"2483":1,"2498":1}}],["menu",{"0":{"1347":1},"2":{"685":1,"1347":1,"1782":2,"2266":1,"2324":1,"2503":3,"2541":3,"2615":1,"2921":2,"2923":1}}],["messing",{"2":{"1362":1}}],["messages",{"0":{"1324":1,"1917":1},"2":{"82":1,"145":1,"191":2,"199":2,"210":1,"432":5,"490":1,"613":1,"1206":3,"1321":1,"1322":1,"1323":1,"1324":1,"1913":1,"1917":1,"1969":1,"1991":2,"2411":10,"2427":1,"2633":1,"2812":2,"2939":1}}],["message",{"0":{"1330":1},"2":{"49":1,"93":1,"160":1,"236":1,"399":1,"400":1,"401":1,"405":1,"450":1,"451":1,"452":1,"453":1,"458":1,"459":1,"467":1,"602":1,"611":2,"1329":2,"1589":1,"1950":1,"2605":1,"2621":1,"2627":1,"2633":1,"2719":1,"2748":3,"2750":1}}],["mesh",{"2":{"617":1}}],["meck",{"2":{"253":2}}],["mechanics",{"2":{"2303":1}}],["mechanical",{"0":{"1351":1,"2460":1},"1":{"2461":1,"2462":1,"2463":1,"2464":1,"2465":1},"2":{"559":1,"681":1,"1332":1,"1351":2,"1409":1,"2461":1,"2468":1,"2572":1}}],["mechanism",{"2":{"145":1,"620":1,"626":1,"1674":1,"2561":1,"2700":1,"2734":1}}],["mechanisms",{"2":{"137":1,"663":1,"2562":1,"2734":1}}],["mechmerlin",{"2":{"427":2}}],["mechmini",{"2":{"154":4}}],["mechwild",{"2":{"222":1,"236":1,"266":2}}],["mechkeys",{"0":{"256":1},"1":{"257":1,"258":1,"259":1,"260":1},"2":{"154":5,"160":2,"266":1}}],["mechloving",{"2":{"134":1}}],["mechlovin9",{"2":{"102":3,"114":1,"222":1}}],["mechlovin",{"2":{"102":3,"134":1,"191":1,"210":1,"222":9,"249":1,"266":2,"308":1}}],["meant",{"2":{"1445":1,"2660":1,"2786":1}}],["meantime",{"2":{"397":1}}],["mean",{"0":{"619":1},"2":{"263":1,"607":1,"1353":1,"2554":1,"2719":1,"2721":1}}],["means",{"2":{"251":1,"263":1,"380":1,"393":1,"408":1,"453":1,"467":1,"559":1,"611":1,"619":1,"627":1,"670":1,"716":1,"1365":1,"1375":1,"1395":1,"1441":2,"1479":1,"1485":1,"1539":1,"1588":1,"1656":1,"1775":1,"1790":1,"1928":1,"2009":1,"2164":1,"2258":1,"2287":1,"2288":1,"2303":1,"2310":4,"2318":1,"2403":1,"2410":2,"2419":1,"2420":1,"2459":1,"2473":2,"2609":1,"2621":1,"2695":1,"2724":1,"2727":1,"2740":1,"2754":1,"2786":1,"2839":1,"2844":1,"2879":1,"2907":1}}],["meaningful",{"2":{"2724":1}}],["meaning",{"2":{"245":1,"769":1,"794":1,"1294":1,"1377":1,"1409":1,"1417":1,"1519":1,"1635":1,"1913":1,"2009":1,"2160":1,"2420":1,"2459":1,"2566":1,"2748":1}}],["measure",{"2":{"687":1,"1968":1}}],["measured",{"2":{"202":1,"1410":1,"1481":1,"1780":1,"2302":1,"2750":1}}],["measurement",{"2":{"199":1,"2372":1,"2678":1,"2750":1}}],["merchantability",{"2":{"1461":1,"2725":1}}],["mercutio",{"2":{"222":1,"317":1}}],["merits",{"2":{"1340":1}}],["meridian",{"2":{"222":1}}],["merely",{"2":{"555":1,"2286":1}}],["merges",{"2":{"279":1,"393":1,"396":1,"400":2,"401":1,"402":1,"406":3}}],["merged",{"2":{"114":1,"134":1,"396":4,"397":2,"399":1,"400":1,"401":1,"405":2,"406":4,"408":1,"456":1,"611":1,"2560":2,"2719":1,"2721":2,"2722":1,"2724":1}}],["merge",{"0":{"399":1,"400":1,"401":1,"402":1,"403":1,"404":1,"2626":1},"1":{"405":1,"406":1,"2627":1},"2":{"0":1,"1":1,"75":1,"114":2,"143":1,"176":1,"191":1,"199":2,"210":2,"212":1,"222":1,"275":1,"276":1,"328":1,"338":3,"393":1,"396":1,"397":3,"401":1,"402":1,"403":2,"405":1,"406":17,"417":2,"535":1,"594":1,"1338":1,"1621":1,"1976":2,"2562":2,"2563":1,"2564":1,"2625":1,"2626":1,"2627":6,"2631":1,"2719":4,"2721":1,"2722":1,"2723":1,"2724":1,"2897":1}}],["merging",{"0":{"417":1},"2":{"0":1,"9":1,"19":1,"39":1,"52":1,"73":1,"191":1,"417":1,"2627":1,"2719":2}}],["metrics",{"2":{"2047":1,"2895":1}}],["met",{"2":{"1664":1}}],["metal",{"2":{"2420":1,"2732":1}}],["metaclasses",{"2":{"536":1}}],["metadata",{"0":{"578":1,"2845":1},"2":{"188":1,"191":1,"266":1,"360":2,"373":3,"553":1,"576":2,"578":1,"2652":1,"2844":1}}],["meticulously",{"2":{"212":1}}],["methods=",{"0":{"362":1,"363":1,"364":1,"365":1}}],["methods",{"2":{"151":1,"489":2,"1312":1,"1346":1,"1409":2,"1413":1,"1588":1,"1829":1,"1836":1,"1844":2,"2066":2,"2270":1,"2375":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":2,"2391":1,"2393":2,"2395":2,"2397":2,"2418":1,"2573":1,"2676":1,"2734":1}}],["method",{"0":{"1413":1},"2":{"49":1,"169":1,"184":1,"236":1,"285":1,"293":1,"305":1,"314":1,"364":1,"365":1,"517":1,"567":1,"1409":1,"1588":2,"1627":1,"1844":1,"2066":1,"2254":1,"2261":1,"2266":2,"2284":1,"2318":1,"2323":1,"2324":2,"2375":1,"2474":1,"2786":1,"2792":1,"2811":1}}],["me",{"0":{"619":1},"2":{"169":2,"184":2,"199":1,"559":1,"607":1,"1349":1,"1407":1,"2312":1,"2572":1,"2577":1,"2591":1}}],["meishi",{"2":{"154":2}}],["meishi2",{"2":{"154":2}}],["meira",{"2":{"154":2}}],["mem",{"2":{"2750":9}}],["memset",{"2":{"2052":2}}],["member",{"2":{"408":1,"1775":1,"1777":1,"1778":1,"2724":1}}],["members",{"0":{"729":1,"805":1,"834":1,"863":1,"893":1,"928":1,"962":1,"996":1,"1030":1,"1064":1,"1098":1,"1132":1,"1166":1,"1219":1,"1639":1,"1741":1,"1743":1},"2":{"312":1,"1775":2,"2461":1,"2560":1,"2635":1}}],["memory",{"0":{"323":1,"1444":1,"2179":1},"2":{"145":1,"236":1,"308":1,"328":1,"617":1,"746":2,"747":1,"749":1,"1345":1,"1362":1,"1407":1,"1413":1,"1422":2,"1484":1,"1519":1,"1520":1,"1603":2,"1613":1,"1656":1,"1845":1,"1942":1,"1954":3,"1955":5,"2068":1,"2290":1,"2376":1,"2475":1,"2495":2,"2496":1,"2501":1,"2504":1,"2608":3,"2705":3,"2727":2,"2734":1,"2745":1,"2749":1,"2750":2,"2942":3}}],["memcmp",{"2":{"114":1}}],["meletrix",{"2":{"2560":1}}],["melt",{"2":{"2420":1,"2422":1}}],["melting",{"2":{"2420":1}}],["melodies",{"2":{"210":1}}],["melody96",{"2":{"144":2,"145":1,"226":2,"236":1}}],["melgeek",{"2":{"134":1,"253":10}}],["meetup",{"2":{"134":1}}],["mtb60",{"2":{"222":1}}],["mtbkeys",{"2":{"222":1}}],["mt980",{"2":{"144":2}}],["mt84",{"2":{"144":2,"277":1}}],["mt64rgb",{"2":{"144":2,"222":1}}],["mt40",{"2":{"144":2}}],["mt",{"2":{"38":1,"144":6,"145":1,"277":1,"297":1,"562":2,"1684":1,"1828":2,"2311":1,"2523":1,"2565":2,"2566":1,"2568":2,"2915":1}}],["mkand",{"2":{"2937":1}}],["mkmakeifeq",{"2":{"2448":1}}],["mkmake",{"2":{"2448":1}}],["mkdir",{"2":{"1622":1,"2598":1}}],["mk64fx512",{"2":{"549":1}}],["mk66fx1m0",{"2":{"133":1,"134":1,"549":1}}],["mk66f18",{"2":{"81":1,"93":2,"133":1,"134":1}}],["mk20dx256",{"2":{"549":1}}],["mk20dx128",{"2":{"549":1}}],["mkl26z64",{"2":{"549":1}}],["mk0",{"2":{"199":1}}],["mkiirgb",{"2":{"205":1}}],["mkii",{"2":{"114":1}}],["mk",{"0":{"569":1,"1458":1,"1626":2,"1672":1,"2369":1,"2411":1,"2448":1,"2882":1},"1":{"570":1,"571":1,"572":1,"573":1,"1459":1},"2":{"32":1,"49":1,"50":1,"70":29,"74":1,"76":1,"87":1,"94":1,"103":1,"114":2,"118":2,"119":1,"133":5,"134":8,"152":1,"160":2,"172":1,"191":3,"199":1,"213":1,"222":5,"235":1,"262":1,"266":11,"293":1,"305":1,"308":3,"314":1,"338":1,"342":1,"431":1,"553":2,"556":1,"565":1,"621":1,"622":1,"623":1,"653":1,"663":3,"664":1,"665":1,"667":2,"670":2,"671":5,"688":1,"700":1,"722":1,"739":1,"740":1,"743":1,"750":1,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1192":1,"1195":2,"1198":2,"1212":1,"1243":1,"1264":1,"1281":1,"1286":1,"1319":1,"1327":1,"1366":1,"1388":1,"1396":1,"1413":1,"1414":2,"1427":1,"1428":2,"1457":2,"1458":7,"1459":1,"1465":2,"1466":2,"1467":1,"1471":1,"1474":1,"1475":1,"1477":1,"1494":2,"1520":1,"1536":1,"1541":1,"1572":1,"1583":1,"1588":1,"1589":1,"1596":1,"1616":1,"1617":1,"1627":1,"1634":1,"1649":1,"1650":1,"1655":1,"1659":1,"1661":1,"1672":1,"1692":1,"1733":1,"1757":1,"1762":1,"1784":1,"1823":1,"1839":1,"1844":2,"1913":1,"1926":1,"1930":1,"1931":22,"1932":2,"1937":1,"1942":1,"1946":1,"1958":1,"1960":1,"1961":1,"1962":1,"1963":1,"1967":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":2,"1977":1,"2010":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2048":1,"2059":1,"2066":2,"2157":1,"2172":2,"2203":1,"2208":1,"2213":1,"2219":1,"2251":1,"2261":1,"2277":1,"2286":1,"2287":1,"2288":1,"2289":1,"2290":1,"2291":1,"2295":1,"2302":1,"2305":1,"2313":1,"2319":1,"2322":2,"2323":1,"2367":1,"2369":2,"2371":1,"2375":1,"2376":1,"2379":1,"2381":1,"2382":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2391":1,"2393":2,"2395":2,"2397":2,"2407":2,"2408":1,"2410":1,"2412":4,"2444":1,"2448":22,"2490":1,"2598":1,"2601":1,"2676":1,"2684":1,"2702":1,"2703":1,"2717":1,"2719":2,"2721":4,"2746":2,"2749":11,"2750":2,"2752":1,"2844":1,"2882":1,"2884":1,"2901":1,"2905":2,"2933":1,"2937":6,"2939":1,"2941":1}}],["mib",{"2":{"2398":2}}],["mimic",{"2":{"2310":1,"2312":1}}],["mi",{"2":{"1913":2,"1919":174,"1920":2,"2411":2,"2520":174}}],["mikrocontroller",{"2":{"1364":1}}],["mike1808",{"2":{"114":1}}],["might",{"2":{"391":1,"397":1,"414":1,"427":1,"559":1,"683":2,"746":2,"763":1,"1362":2,"1409":2,"1410":6,"1416":2,"1421":1,"1440":1,"1457":1,"1523":1,"1584":1,"1589":1,"1609":1,"1613":1,"1917":1,"1962":1,"1968":1,"2287":1,"2302":1,"2406":1,"2408":1,"2427":1,"2446":1,"2655":1,"2688":1,"2936":1,"2942":1}}],["migrator",{"2":{"65":1}}],["migrations",{"2":{"77":1,"134":1,"199":1,"266":3}}],["migration",{"0":{"38":1,"69":1,"77":1,"265":1,"275":1},"2":{"70":1,"77":1,"113":1,"114":1,"134":2,"160":1,"188":1,"191":1,"199":3,"201":1,"212":1,"238":1,"265":1}}],["migrating",{"0":{"3":1,"7":1,"15":1,"30":1,"36":1},"1":{"31":1},"2":{"167":1,"232":1,"2721":1}}],["migrated",{"2":{"118":1,"126":1,"128":1,"151":1,"220":1,"262":1,"2715":1,"2721":2}}],["migrate",{"0":{"31":1,"34":1,"441":1},"2":{"75":1,"113":1,"114":4,"133":2,"134":6,"160":3,"176":1,"199":7,"222":1,"228":1,"236":9,"249":27,"266":66,"277":11,"294":4,"304":1,"307":1,"308":1,"317":4,"328":25,"332":1,"333":1,"441":1,"586":1}}],["mixture",{"2":{"2284":1}}],["mixing",{"2":{"2254":1}}],["mix",{"2":{"1285":1,"1407":1,"1417":1,"2566":1}}],["mixed",{"0":{"2739":1},"2":{"338":1,"413":1,"510":1,"617":1,"1493":1,"2743":1}}],["mixup",{"2":{"199":1}}],["mit",{"2":{"2741":1}}],["mitchsplit",{"0":{"260":1},"2":{"256":1}}],["mitigates",{"2":{"1349":1}}],["mitigated",{"2":{"263":1,"2566":1}}],["mitigate",{"0":{"312":1},"2":{"222":1,"317":1,"1409":2,"2896":1}}],["mitigation",{"2":{"191":1,"312":1}}],["miiiw",{"2":{"253":2,"266":1}}],["mice",{"2":{"2039":1,"2432":1,"2461":1}}],["michi",{"0":{"1391":1},"2":{"199":1,"1386":1,"1388":3,"2888":1}}],["micdrop",{"2":{"163":1}}],["microcontrol",{"2":{"2823":1}}],["microcontroller>",{"2":{"428":1}}],["microcontroller",{"0":{"2417":1},"2":{"81":1,"428":2,"431":1,"543":2,"552":1,"573":1,"698":1,"717":1,"757":1,"759":1,"765":1,"1542":1,"1552":1,"1732":1,"2266":1,"2414":1,"2423":3,"2426":1,"2459":1,"2475":2,"2487":1,"2495":1,"2496":1,"2707":1,"2721":1,"2732":1,"2846":2,"2894":1}}],["microcontrollers",{"0":{"543":1},"1":{"544":1,"545":1,"546":1,"547":1,"548":1,"549":1,"550":1,"551":1,"552":1},"2":{"69":1,"203":2,"263":1,"552":2,"1293":1,"1945":1,"2383":1,"2389":1,"2475":2,"2707":3,"2729":1,"2901":1}}],["microchip",{"2":{"746":3,"1280":1,"2171":1,"2491":1}}],["microsoft",{"2":{"1347":1,"2676":1}}],["micros",{"2":{"566":1,"682":1,"2259":1,"2260":1,"2479":1,"2700":1,"2706":1,"2828":1}}],["microseconds",{"2":{"559":1,"1282":1,"2865":1}}],["microdox",{"2":{"176":2}}],["micronucleus",{"2":{"160":1}}],["micro",{"0":{"271":1,"1388":1,"1391":1,"2477":1,"2479":1,"2702":1},"1":{"1389":1,"1390":1,"1391":1,"1392":1,"1393":1,"1394":1,"1395":1,"2478":1,"2480":1},"2":{"77":1,"86":2,"93":1,"163":1,"172":1,"176":1,"189":1,"271":2,"322":2,"544":1,"686":4,"1314":1,"1368":2,"1388":2,"1393":1,"1395":1,"1397":1,"1398":1,"1403":1,"1930":1,"2254":1,"2256":1,"2266":2,"2272":1,"2379":1,"2380":1,"2414":1,"2416":1,"2417":3,"2477":2,"2478":3,"2479":2,"2480":3,"2492":4,"2495":5,"2496":1,"2582":1,"2657":1,"2681":1,"2683":1,"2684":6,"2700":1,"2702":2,"2703":1,"2707":1,"2888":3}}],["mio",{"2":{"154":2}}],["mirrored",{"2":{"2295":1}}],["mirrors",{"2":{"568":1,"2269":1,"2312":3,"2583":1,"2721":1}}],["mirroring",{"2":{"114":1,"126":1,"2721":1}}],["mirror",{"2":{"76":1,"114":1,"160":1,"568":1,"1846":1,"2069":1,"2269":1,"2873":10}}],["mint",{"2":{"2619":1}}],["minted",{"2":{"2590":1}}],["minus",{"2":{"1686":1,"2503":2,"2537":1,"2543":1}}],["minuted",{"2":{"1941":1}}],["minute",{"0":{"2371":1},"1":{"2372":1,"2373":1,"2374":1},"2":{"1481":1,"2371":1,"2872":1}}],["minutes",{"2":{"1308":1,"2421":1}}],["mine",{"2":{"1464":1,"2398":1}}],["mind",{"2":{"510":1,"536":1,"608":1,"613":1,"617":1,"673":1,"1377":1,"1406":1,"1445":1,"1585":1,"1660":1,"1954":1,"2252":1,"2282":1,"2302":1,"2416":1,"2421":1,"2423":1,"2427":1,"2453":1,"2454":1,"2456":1,"2459":1,"2751":1,"2895":1}}],["mins",{"2":{"369":1,"587":2,"1587":2,"1594":1,"2503":1,"2537":1,"2556":1}}],["min",{"0":{"1906":1,"1909":1,"2150":1,"2153":1},"2":{"222":1,"308":1,"1285":1,"1487":2,"1521":1,"1627":1,"1675":3,"1734":3,"1743":1,"1844":4,"1849":1,"1907":1,"1910":1,"1962":2,"2066":4,"2072":1,"2073":6,"2074":3,"2151":1,"2154":1}}],["mino",{"2":{"210":1,"241":6}}],["minor",{"2":{"49":1,"51":1,"64":1,"86":1,"114":1,"160":1,"176":1,"191":1,"210":2,"294":1,"328":1,"333":1,"1487":1}}],["mingw64",{"2":{"2615":1,"2671":1,"2676":3}}],["mingw",{"2":{"143":1,"2499":2,"2615":2}}],["minizone",{"2":{"249":1}}],["miniaxe",{"2":{"241":2,"249":1}}],["minitkl",{"2":{"210":1}}],["minitomic",{"2":{"57":2}}],["mini36",{"2":{"191":1}}],["mini42",{"2":{"191":1}}],["minidox",{"2":{"154":2,"160":1,"205":1,"236":1,"277":1}}],["mini",{"2":{"134":1,"154":4,"160":1,"222":3,"1673":1,"2417":1}}],["minimize",{"2":{"613":1,"2713":1}}],["minimise",{"2":{"103":1,"308":1,"749":1,"751":1,"2748":1,"2894":1}}],["minim",{"2":{"154":2}}],["minimally",{"2":{"2270":1,"2721":1}}],["minimal",{"2":{"128":1,"145":1,"176":1,"203":1,"328":1,"2303":1,"2452":1,"2749":1,"2882":1,"2895":1,"2896":1}}],["minimum",{"2":{"70":1,"134":1,"210":1,"285":1,"716":2,"717":1,"745":1,"1624":1,"1627":1,"1736":1,"1743":1,"1965":5,"1969":2,"2172":1,"2194":6,"2372":1,"2561":1,"2687":1,"2721":2,"2768":1,"2937":1}}],["midpoint",{"2":{"1743":1}}],["midway",{"2":{"631":1}}],["midway60",{"2":{"222":1}}],["mid",{"2":{"562":1,"1743":1,"1751":1}}],["middle",{"2":{"50":1,"210":1,"387":1,"760":1,"1442":1,"1636":1,"2041":2,"2932":1}}],["mididevice",{"2":{"1918":1}}],["midi",{"0":{"1488":1,"1912":1,"1915":1,"1916":1,"1918":1,"1922":1,"2520":1},"1":{"1913":1,"1914":1,"1915":1,"1916":1,"1917":2,"1918":2,"1919":1,"1920":1,"1921":1,"1922":1,"1923":1},"2":{"50":1,"63":1,"70":1,"75":1,"111":1,"114":1,"188":1,"191":2,"199":3,"210":1,"231":3,"249":1,"266":1,"572":2,"573":1,"649":1,"1480":4,"1488":1,"1913":4,"1914":1,"1915":2,"1916":2,"1917":3,"1918":15,"1919":147,"1920":1,"1922":2,"1923":9,"2212":1,"2287":1,"2411":3,"2461":1,"2520":148,"2721":2,"2933":1}}],["millimeters",{"2":{"1964":2,"1968":1}}],["millivolts",{"2":{"741":1,"2851":1}}],["millisecond",{"2":{"654":1,"1410":1,"1788":1}}],["milliseconds",{"2":{"25":1,"119":1,"195":1,"559":2,"562":2,"563":1,"654":1,"655":2,"765":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"799":1,"828":1,"854":1,"886":1,"918":1,"953":1,"987":1,"1021":1,"1055":1,"1089":1,"1123":1,"1157":1,"1205":1,"1213":1,"1288":1,"1410":1,"1412":1,"1413":7,"1438":1,"1442":1,"1449":2,"1573":1,"1588":1,"1592":1,"1787":1,"1825":1,"1846":2,"1928":1,"1929":1,"1930":2,"1933":1,"1934":1,"1937":1,"1939":1,"1940":1,"1962":1,"1964":1,"1968":1,"1974":1,"2064":1,"2069":2,"2178":1,"2180":6,"2184":1,"2221":1,"2230":1,"2234":1,"2268":3,"2302":1,"2303":1,"2320":1,"2379":1,"2524":1,"2747":2,"2757":1,"2770":1,"2847":2,"2851":1,"2854":1,"2855":1,"2863":1,"2864":2,"2865":1,"2867":1,"2871":2,"2873":3,"2875":1,"2876":1,"2903":1,"2905":1,"2914":1,"2915":2}}],["mild",{"2":{"222":1}}],["milc",{"2":{"65":2,"95":1,"487":3,"488":1}}],["milk",{"2":{"37":2}}],["misfires",{"2":{"1602":1,"1604":1,"1608":1,"1609":1}}],["miso",{"2":{"1244":2,"1245":5,"2476":1,"2478":1,"2480":2,"2482":1,"2484":2,"2486":2,"2488":2,"2661":1,"2702":1}}],["misterknife",{"2":{"222":3}}],["mistaken",{"2":{"2258":1}}],["mistakenly",{"2":{"243":1,"331":1}}],["mistake",{"2":{"92":1}}],["mishandling",{"2":{"199":1}}],["mis",{"2":{"199":1,"222":1}}],["mismatch",{"2":{"191":1,"405":1}}],["mismatched",{"2":{"160":1}}],["miscellaneous",{"0":{"1360":1},"1":{"1361":1,"1362":1,"1363":1,"1364":1,"1365":1,"1366":1,"1367":1,"1368":1,"1369":1,"1370":1,"1371":1,"1372":1,"1373":1},"2":{"210":1,"222":1,"266":3,"308":1,"317":1}}],["misc",{"2":{"160":1,"249":2,"266":3,"277":1,"2159":1}}],["misconfigured",{"2":{"28":1}}],["miss",{"2":{"602":1,"2546":1,"2566":1}}],["mission",{"2":{"199":2,"2503":2,"2542":2}}],["missing",{"2":{"28":1,"73":1,"92":1,"93":1,"134":4,"145":1,"160":4,"176":2,"182":1,"191":3,"199":2,"212":1,"222":4,"236":2,"249":1,"294":1,"328":1,"333":1,"2441":1,"2578":1,"2719":1,"2757":1}}],["missed",{"2":{"145":1,"160":1,"236":1}}],["misplaced",{"2":{"134":1}}],["mocks",{"2":{"2935":1}}],["mock",{"0":{"2935":1},"2":{"2935":1}}],["mocking",{"2":{"542":1,"2937":2}}],["moff",{"2":{"2297":1,"2532":1}}],["mood",{"2":{"2176":1,"2177":2,"2180":1,"2203":1,"2870":1,"2887":1}}],["moon",{"2":{"317":1}}],["moonlander",{"2":{"191":1,"199":1,"241":2,"249":1,"277":2}}],["mounting",{"2":{"2423":1}}],["mount",{"2":{"2414":1,"2417":1}}],["mounted",{"2":{"2171":1,"2682":1}}],["mousing",{"2":{"1990":1}}],["mousereport",{"2":{"1983":6}}],["mouse=true",{"2":{"1319":1}}],["mousekey",{"2":{"63":1,"70":1,"75":1,"111":1,"114":1,"188":1,"191":2,"210":1,"220":1,"236":1,"564":5,"572":1,"573":2,"1362":1,"1929":16,"1930":12,"1933":13,"1934":7,"2203":1,"2411":1,"2882":1}}],["mousekeysaccel",{"2":{"1929":1}}],["mousekeys",{"0":{"2825":1},"2":{"48":1,"145":1,"176":1,"191":1,"562":1,"1958":1,"2825":1}}],["mouse",{"0":{"246":1,"316":1,"564":1,"1364":1,"1924":1,"1925":1,"1926":1,"1927":1,"1928":1,"1934":1,"1935":1,"1983":1,"1985":1,"1986":1,"1992":1,"1997":1,"1998":1,"1999":1,"2001":1,"2004":1,"2006":1,"2008":1,"2030":1,"2039":1,"2042":1,"2043":1,"2044":1,"2521":1,"2866":1},"1":{"1925":1,"1926":2,"1927":2,"1928":1,"1929":2,"1930":2,"1931":2,"1932":2,"1933":2,"1934":2,"1935":1,"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1,"1993":1,"1994":1,"1995":1,"1996":1,"1997":1,"1998":2,"1999":3,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1,"2031":1,"2032":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2038":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1},"2":{"48":1,"74":3,"100":1,"112":7,"114":5,"133":1,"134":1,"145":3,"160":1,"175":5,"176":4,"190":6,"191":7,"210":3,"222":2,"231":1,"236":2,"246":3,"249":1,"266":2,"277":3,"285":2,"291":2,"294":1,"308":1,"316":2,"317":2,"320":1,"328":2,"559":1,"562":1,"572":1,"573":4,"597":1,"1512":1,"1619":2,"1633":2,"1924":2,"1925":3,"1926":1,"1927":39,"1928":1,"1930":5,"1931":2,"1933":1,"1934":4,"1935":3,"1965":6,"1976":8,"1977":4,"1978":3,"1979":5,"1981":14,"1982":9,"1983":13,"1985":4,"1986":12,"1987":17,"1988":1,"1989":10,"1990":3,"1992":7,"1993":7,"1994":15,"1995":1,"1996":9,"1997":5,"1998":4,"1999":3,"2000":1,"2001":33,"2002":11,"2004":10,"2005":16,"2006":10,"2007":8,"2008":10,"2030":1,"2033":1,"2034":1,"2035":1,"2036":1,"2037":1,"2039":18,"2040":5,"2041":12,"2042":1,"2043":4,"2044":3,"2045":5,"2046":4,"2050":1,"2159":4,"2287":1,"2291":1,"2367":1,"2521":39,"2579":1,"2825":1,"2866":3,"2868":2,"2875":2,"2923":1,"2928":1}}],["motivations",{"2":{"2895":1}}],["motion",{"2":{"190":1,"191":1,"1933":1,"1962":1,"1976":3,"1978":7,"1979":1,"1992":1}}],["motions",{"2":{"175":1}}],["motors",{"2":{"1677":1,"1678":1}}],["motor",{"0":{"1677":1},"1":{"1678":1,"1679":1},"2":{"1673":1,"1677":1,"1678":2,"1679":2}}],["moky88",{"2":{"294":1}}],["moky",{"2":{"294":1}}],["momokai",{"2":{"266":1}}],["moment",{"2":{"222":2,"1780":5,"2643":1,"2646":1,"2776":1,"2918":1,"2932":1}}],["momentarily",{"2":{"73":1,"1416":4,"1932":1,"2314":2,"2516":2,"2905":1}}],["momentary",{"0":{"3":1,"2312":1},"2":{"199":1,"1350":1,"1416":1,"1606":5,"1684":2,"1760":1,"1773":3,"1822":2,"1824":1,"1931":8,"2297":4,"2313":1,"2532":4}}],["mojo75",{"2":{"253":2}}],["mojo68",{"2":{"253":2}}],["morgan65",{"2":{"222":2}}],["moreover",{"2":{"2254":1}}],["more",{"0":{"1761":1,"2410":1},"1":{"2411":1,"2412":1},"2":{"2":1,"6":2,"8":1,"10":2,"14":1,"16":1,"24":1,"46":1,"49":1,"76":1,"82":1,"93":1,"99":2,"107":1,"109":1,"111":1,"112":1,"114":6,"118":1,"133":2,"134":4,"137":1,"138":2,"145":1,"160":6,"166":1,"172":1,"174":1,"176":4,"179":1,"182":1,"190":3,"191":4,"194":2,"195":1,"196":1,"198":1,"199":6,"201":1,"210":2,"217":1,"222":6,"224":1,"228":2,"229":1,"231":1,"232":1,"236":3,"245":1,"247":1,"248":1,"249":1,"251":1,"265":1,"266":1,"288":2,"289":1,"294":1,"297":1,"298":1,"304":1,"306":1,"308":3,"315":1,"320":2,"331":1,"374":1,"390":1,"397":1,"411":2,"419":1,"422":1,"424":1,"428":1,"464":1,"465":1,"466":1,"475":1,"503":1,"510":1,"512":1,"519":1,"527":2,"536":1,"538":1,"539":1,"553":1,"559":2,"563":1,"568":2,"572":2,"573":1,"597":1,"611":1,"613":1,"623":1,"624":3,"669":1,"672":1,"681":2,"683":2,"685":1,"687":2,"695":1,"696":1,"717":1,"749":1,"752":1,"763":1,"857":1,"888":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1189":1,"1196":1,"1244":1,"1285":1,"1295":1,"1309":1,"1315":1,"1327":2,"1342":1,"1344":1,"1365":1,"1373":1,"1374":1,"1375":2,"1376":1,"1394":1,"1395":1,"1400":1,"1410":1,"1416":1,"1419":1,"1420":1,"1421":3,"1438":2,"1440":1,"1457":1,"1461":1,"1463":1,"1470":1,"1471":1,"1485":1,"1486":2,"1492":1,"1495":1,"1497":2,"1504":1,"1511":1,"1532":1,"1552":1,"1574":1,"1586":1,"1596":1,"1599":1,"1603":1,"1604":1,"1608":1,"1613":1,"1624":1,"1651":1,"1656":1,"1664":1,"1691":1,"1760":1,"1762":1,"1767":2,"1771":1,"1775":1,"1788":1,"1790":1,"1829":1,"1840":2,"1844":1,"1913":1,"1917":1,"1928":1,"1929":1,"1934":1,"1955":1,"1959":1,"1979":1,"1987":1,"1992":1,"2000":1,"2008":1,"2030":1,"2047":1,"2060":2,"2066":1,"2069":1,"2073":1,"2074":1,"2156":1,"2161":1,"2172":1,"2184":1,"2200":1,"2286":1,"2289":1,"2292":1,"2293":1,"2302":2,"2303":1,"2310":2,"2319":1,"2324":1,"2367":1,"2372":2,"2375":1,"2406":1,"2407":2,"2410":4,"2411":4,"2416":2,"2417":2,"2418":2,"2420":1,"2421":1,"2422":1,"2430":1,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1,"2445":1,"2447":1,"2448":1,"2459":2,"2462":1,"2467":1,"2483":1,"2492":1,"2495":1,"2496":1,"2502":1,"2534":1,"2555":2,"2557":3,"2558":1,"2565":2,"2603":1,"2605":1,"2609":1,"2610":1,"2615":1,"2631":1,"2633":1,"2635":1,"2643":1,"2649":1,"2673":1,"2676":1,"2690":1,"2691":1,"2704":1,"2707":4,"2716":1,"2720":2,"2722":1,"2723":1,"2724":1,"2725":1,"2747":3,"2750":2,"2751":1,"2775":1,"2776":2,"2793":1,"2834":1,"2837":1,"2844":3,"2877":1,"2887":1,"2900":1,"2903":2,"2905":1,"2912":1,"2913":2,"2914":1,"2921":1,"2922":1,"2923":1,"2938":1,"2942":1}}],["monsgeek",{"2":{"2390":1}}],["monstargear",{"2":{"222":1}}],["mon",{"2":{"2297":1,"2532":1}}],["monitor",{"2":{"1933":1}}],["monitors",{"2":{"1635":1}}],["month",{"2":{"393":1,"2724":1}}],["months",{"2":{"251":1,"538":1,"2896":1}}],["montex",{"2":{"154":2,"160":1}}],["mono1bpp",{"2":{"2749":1}}],["mono16",{"2":{"2748":4}}],["mono2",{"2":{"2748":3,"2749":2}}],["mono256",{"2":{"2748":3}}],["mono4",{"2":{"2748":4}}],["monochrome",{"2":{"2746":6,"2749":1,"2750":3}}],["monolithic",{"2":{"2727":2}}],["mono",{"2":{"249":2,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1}}],["monokei",{"2":{"241":3,"249":1}}],["monksoffunk",{"2":{"160":1}}],["mona",{"2":{"102":3,"197":6}}],["mobile",{"2":{"145":1,"160":1}}],["movable",{"2":{"1732":1}}],["movements",{"2":{"1434":1,"1928":1,"1929":4,"1930":15,"1931":4,"1932":1,"1933":3,"1934":1,"2411":1}}],["movement",{"0":{"2046":1},"2":{"48":1,"74":1,"175":2,"246":1,"249":1,"328":1,"1928":5,"1929":4,"1930":5,"1931":5,"1933":2,"1934":1,"1962":5,"1983":3,"1986":2,"1987":1,"1996":1,"2007":1,"2033":1,"2039":1,"2046":1}}],["moved",{"2":{"43":1,"50":1,"56":1,"57":1,"67":1,"72":1,"86":1,"102":1,"114":1,"122":1,"144":1,"154":1,"160":1,"168":1,"181":1,"197":1,"198":1,"210":1,"212":2,"215":1,"335":1,"659":1,"1379":1,"1395":1,"2046":1,"2430":1,"2641":1,"2642":1,"2721":1,"2881":1}}],["moves",{"0":{"37":1},"2":{"393":1,"1735":1,"1928":2,"1956":2,"2173":1,"2283":2,"2302":1,"2556":1,"2721":1}}],["move",{"0":{"323":1},"2":{"21":1,"36":1,"37":1,"50":1,"72":1,"75":1,"94":1,"100":2,"113":6,"114":14,"133":7,"134":9,"141":1,"145":11,"160":58,"167":1,"176":6,"188":1,"191":7,"199":11,"210":16,"222":38,"236":6,"241":1,"249":12,"253":1,"255":2,"266":2,"270":1,"277":3,"281":1,"285":1,"294":2,"308":1,"328":1,"333":1,"445":1,"1422":1,"1425":1,"1486":1,"1669":1,"1701":1,"1705":1,"1706":2,"1707":1,"1729":1,"1731":1,"1867":1,"1868":1,"1869":1,"1870":1,"1893":1,"1894":1,"1895":1,"1896":1,"1919":2,"1924":1,"1928":1,"1929":1,"1930":3,"1933":4,"1934":2,"2093":1,"2094":1,"2095":1,"2096":1,"2131":1,"2132":1,"2133":1,"2134":1,"2225":1,"2302":1,"2370":2,"2421":1,"2424":1,"2455":1,"2509":2,"2520":2,"2581":1,"2605":1,"2623":1,"2721":2,"2776":1}}],["moving",{"0":{"16":1},"2":{"36":1,"37":1,"43":1,"111":1,"113":1,"191":1,"275":1,"294":1,"359":1,"510":1,"1417":1,"1789":1,"1932":1,"1955":1,"1956":2,"1958":1,"1970":1,"1978":1,"1986":1,"2041":1,"2063":3,"2283":2,"2418":1,"2421":1,"2566":1,"2723":1,"2887":1}}],["mosy",{"2":{"2416":1}}],["mosi",{"2":{"1244":2,"1245":5,"1291":1,"1296":2,"2476":1,"2478":1,"2480":2,"2482":1,"2484":2,"2486":2,"2488":2,"2661":1,"2702":1,"2749":2}}],["most",{"0":{"2881":1},"1":{"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"70":1,"118":1,"124":1,"131":1,"143":1,"182":2,"194":1,"202":1,"203":2,"209":1,"233":1,"234":1,"249":2,"251":1,"263":2,"363":1,"392":1,"489":1,"490":1,"491":1,"497":1,"510":1,"511":1,"512":1,"545":1,"555":1,"556":1,"559":2,"586":1,"612":1,"617":1,"626":1,"631":3,"632":1,"649":1,"667":1,"670":1,"680":2,"700":1,"751":1,"762":1,"1243":1,"1264":1,"1281":1,"1284":1,"1315":1,"1316":1,"1340":1,"1347":1,"1351":1,"1353":1,"1415":2,"1418":1,"1419":1,"1421":1,"1427":1,"1440":1,"1441":1,"1456":1,"1471":1,"1478":1,"1522":2,"1526":1,"1536":1,"1539":1,"1540":1,"1666":1,"1675":1,"1679":1,"1734":1,"1789":1,"1790":1,"1928":1,"1933":1,"1961":1,"1968":2,"1979":1,"2004":1,"2040":1,"2187":1,"2254":1,"2258":1,"2274":1,"2284":1,"2285":1,"2289":1,"2290":2,"2322":2,"2323":1,"2398":1,"2410":2,"2411":1,"2420":1,"2432":1,"2463":1,"2475":1,"2476":1,"2498":1,"2549":1,"2550":1,"2560":1,"2573":1,"2576":2,"2621":4,"2687":2,"2707":1,"2721":1,"2749":1,"2791":1,"2799":1,"2802":1,"2810":1,"2819":1,"2841":1,"2879":1,"2882":2,"2884":1,"2888":1,"2894":1,"2906":1,"2927":2,"2934":1}}],["mostly",{"2":{"8":1,"199":1,"434":1,"1340":1,"2254":1,"2492":1,"2671":1}}],["mosfet",{"2":{"14":2,"1539":2,"1552":2,"1675":1}}],["modu",{"2":{"1919":1,"2520":1}}],["modulation",{"2":{"1535":1,"1913":1,"1919":6,"1920":1,"2520":6}}],["modular",{"2":{"16":1}}],["modules",{"0":{"288":1,"298":1,"1620":1},"1":{"1621":1,"1622":1,"1623":1,"1624":1,"1625":1,"1626":1,"1627":1,"1628":1,"1629":1,"1630":1,"1631":1,"1632":1},"2":{"93":1,"288":5,"294":1,"298":1,"308":4,"328":1,"333":1,"536":2,"746":1,"747":1,"1620":3,"1621":9,"1622":6,"1623":1,"1627":1,"1632":1,"1691":2,"1945":2,"2276":1,"2367":1,"2432":1}}],["module",{"0":{"1621":1,"1622":1,"1623":1,"1624":1,"1627":1,"1629":1,"1630":1},"1":{"1624":1,"1625":1,"1626":1,"1627":1,"1628":1,"1629":1,"1630":1,"1631":1,"1632":1},"2":{"6":1,"288":1,"298":1,"308":1,"485":1,"514":5,"517":1,"518":1,"527":2,"542":1,"625":12,"746":1,"747":1,"1356":1,"1621":3,"1622":8,"1623":1,"1624":11,"1627":2,"1629":1,"1630":1,"1631":2,"1632":22,"1691":1,"1974":2,"2030":3,"2031":1,"2276":1,"2748":1,"2749":1}}],["modd",{"2":{"1919":1,"2520":1}}],["modded",{"2":{"176":1,"1451":1,"2374":2}}],["modtaps",{"2":{"1375":1}}],["modifying",{"2":{"510":1,"538":2,"683":1,"1419":1,"1531":1,"2457":1,"2463":1,"2469":1}}],["modify",{"2":{"125":1,"185":1,"209":1,"222":1,"236":1,"538":1,"586":1,"765":2,"1245":2,"1266":1,"1375":1,"1441":1,"1461":1,"1481":1,"1636":1,"1835":1,"1981":2,"1982":2,"1986":1,"1987":1,"2172":1,"2180":1,"2182":1,"2293":1,"2469":1,"2583":1,"2721":1,"2725":1,"2728":1,"2734":1,"2824":1,"2902":1}}],["modifiable",{"2":{"1958":1}}],["modification",{"0":{"2201":1},"2":{"65":1,"536":1,"1353":1,"2063":1,"2171":1,"2942":2}}],["modifications",{"2":{"21":1,"338":3,"397":1,"512":1,"1346":1,"2405":1,"2676":2,"2689":1,"2719":1,"2722":1}}],["modifiers",{"0":{"1359":1,"1495":1,"1764":1,"1765":1,"1766":1,"1767":1,"1773":1,"1782":1,"2522":1,"2539":1},"1":{"1778":1,"1779":1,"1780":1},"2":{"99":1,"112":1,"145":1,"210":1,"560":1,"562":1,"680":1,"1359":3,"1375":15,"1378":2,"1416":2,"1417":5,"1445":1,"1447":1,"1467":1,"1495":3,"1511":1,"1512":1,"1596":1,"1611":3,"1759":1,"1760":4,"1764":3,"1766":1,"1770":1,"1775":7,"1776":4,"1778":5,"1779":1,"1781":1,"1843":1,"2074":1,"2164":1,"2252":1,"2546":1,"2565":1,"2566":2,"2568":1,"2643":2,"2873":1,"2918":1}}],["modifier",{"0":{"1349":1,"1350":1,"1374":1,"1375":1,"1604":1,"1783":1,"2824":1,"2827":1},"1":{"1376":1,"1377":1,"1378":1,"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1},"2":{"74":1,"99":1,"194":2,"222":1,"231":4,"289":1,"320":5,"568":1,"1350":3,"1359":5,"1374":3,"1375":15,"1377":1,"1378":4,"1416":1,"1417":1,"1441":2,"1442":2,"1445":1,"1511":1,"1512":1,"1523":1,"1526":2,"1604":1,"1657":1,"1684":2,"1737":1,"1759":1,"1760":3,"1764":1,"1771":1,"1773":1,"1775":7,"1776":2,"1778":3,"1779":2,"1780":2,"1781":2,"1782":4,"1828":1,"1841":2,"1846":1,"1992":1,"2061":2,"2069":1,"2074":1,"2163":2,"2166":1,"2252":8,"2253":7,"2269":2,"2522":1,"2565":2,"2566":1,"2644":1,"2645":2,"2827":1,"2873":1,"2905":1,"2918":1,"2921":3,"2923":7}}],["modified",{"2":{"2":1,"8":1,"74":1,"160":1,"209":2,"510":1,"531":1,"1211":1,"1332":1,"1422":1,"1780":1,"1932":1,"2165":1,"2311":1,"2386":1,"2391":1,"2491":1,"2621":1,"2719":1,"2721":1,"2723":1,"2740":1,"2905":1,"2912":1,"2942":1}}],["modifies",{"2":{"0":1,"9":1,"19":1,"30":1,"33":1,"39":1,"52":1,"297":1,"312":1,"393":1,"2063":2,"2915":1,"2942":1}}],["moderate",{"2":{"2427":1}}],["modern",{"2":{"1197":1,"1347":1,"1351":1,"1587":1,"2322":1,"2411":1,"2418":1,"2425":1,"2429":1}}],["modernize",{"2":{"210":1,"236":2}}],["modernise",{"2":{"210":2}}],["modemmanager",{"2":{"1313":4}}],["mode=guest",{"2":{"681":1}}],["modelled",{"2":{"2270":1}}],["models",{"2":{"1413":1}}],["modelh",{"2":{"205":2,"308":1}}],["modelm101",{"2":{"218":2}}],["modelm",{"0":{"215":1},"2":{"160":1,"218":3}}],["model",{"2":{"125":1,"154":2,"160":1,"185":1,"205":1,"210":2,"215":2,"218":12,"1964":1,"2721":1,"2940":1}}],["model01",{"2":{"37":2}}],["modes",{"0":{"124":1,"2324":1,"2906":1},"1":{"2907":1,"2908":1,"2909":1,"2910":1,"2911":1,"2912":1,"2913":1},"2":{"114":1,"124":2,"134":1,"186":2,"235":1,"1202":1,"1484":2,"1489":1,"1843":1,"1928":2,"1968":1,"2030":1,"2063":2,"2174":2,"2176":1,"2177":2,"2180":2,"2271":1,"2320":2,"2324":6,"2325":2,"2505":1,"2525":2,"2533":2,"2765":1,"2906":2,"2907":1}}],["mode",{"0":{"186":1,"486":1,"1248":1,"1314":1,"1484":1,"1682":1,"1863":2,"1865":2,"1871":1,"1929":1,"1930":1,"1931":1,"1932":1,"1933":1,"1969":1,"1970":1,"1971":1,"2089":2,"2091":2,"2097":1,"2192":1,"2193":1,"2327":1,"2329":2,"2331":1,"2332":1,"2333":2,"2335":2,"2605":1,"2911":1},"1":{"1249":1,"1250":1,"1485":1,"1486":1,"1864":2,"1866":2,"1872":1,"2090":2,"2092":2,"2098":1,"2328":1,"2330":2,"2334":2,"2336":2},"2":{"49":3,"93":1,"118":2,"134":1,"145":2,"175":1,"176":8,"183":4,"190":1,"191":2,"222":3,"230":1,"231":1,"240":2,"266":1,"317":1,"486":1,"639":3,"683":4,"684":1,"686":1,"695":1,"718":1,"723":2,"758":2,"765":4,"769":2,"1194":1,"1195":1,"1197":2,"1198":2,"1208":1,"1209":1,"1210":1,"1245":8,"1249":3,"1262":1,"1266":8,"1294":2,"1296":2,"1300":1,"1313":1,"1319":2,"1324":2,"1345":2,"1358":1,"1361":1,"1362":2,"1363":2,"1407":10,"1477":1,"1478":1,"1479":7,"1480":8,"1482":1,"1484":13,"1485":1,"1486":2,"1487":3,"1489":7,"1544":1,"1550":1,"1629":1,"1630":1,"1674":3,"1675":2,"1681":3,"1682":1,"1691":1,"1842":2,"1844":2,"1845":5,"1846":4,"1864":1,"1866":1,"1899":1,"1929":2,"1930":3,"1931":3,"1932":5,"1933":6,"1934":2,"1950":1,"1953":2,"1955":1,"1961":2,"1968":10,"1970":2,"1971":2,"1988":1,"1989":7,"2039":5,"2062":2,"2065":3,"2066":2,"2068":5,"2069":4,"2075":1,"2090":1,"2092":1,"2143":1,"2174":22,"2175":3,"2176":15,"2177":10,"2178":1,"2192":9,"2197":2,"2266":1,"2269":1,"2286":1,"2287":1,"2290":4,"2293":8,"2320":4,"2321":6,"2324":22,"2325":8,"2327":1,"2328":1,"2329":1,"2330":2,"2331":1,"2332":1,"2333":1,"2334":2,"2335":1,"2336":2,"2337":1,"2338":1,"2339":1,"2340":1,"2376":1,"2381":1,"2383":1,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2398":1,"2411":1,"2492":1,"2504":3,"2505":7,"2518":2,"2525":22,"2526":2,"2533":8,"2560":19,"2605":3,"2610":1,"2660":1,"2678":2,"2684":1,"2721":1,"2745":3,"2749":11,"2845":1,"2884":2,"2906":10,"2907":1,"2912":4,"2913":6}}],["mods",{"0":{"320":1,"1453":1,"1454":1,"1766":1,"1767":1,"2163":1,"2165":1,"2272":1},"1":{"2164":1,"2165":1,"2166":1,"2273":1},"2":{"38":5,"63":2,"160":1,"191":1,"199":2,"210":3,"266":1,"289":1,"294":1,"328":1,"373":1,"559":1,"562":1,"568":2,"1359":4,"1375":40,"1377":1,"1378":3,"1445":1,"1452":1,"1453":1,"1454":1,"1466":5,"1484":1,"1511":2,"1526":1,"1527":5,"1589":1,"1594":2,"1604":2,"1611":5,"1612":2,"1619":1,"1766":1,"1773":2,"1775":5,"1776":2,"1778":2,"1779":2,"1782":5,"1822":1,"1843":3,"2063":3,"2156":3,"2159":1,"2160":6,"2161":1,"2162":1,"2163":1,"2164":1,"2165":7,"2166":4,"2168":1,"2169":5,"2170":5,"2252":1,"2269":1,"2311":2,"2374":6,"2516":2,"2554":2,"2566":2,"2644":3,"2645":30,"2721":1,"2864":1,"2871":1,"2887":1,"2904":5,"2912":1,"2915":1,"2916":1,"2918":1,"2921":4,"2923":1,"2924":1}}],["mod",{"0":{"194":1,"217":1,"320":1,"1381":1,"1684":1,"1828":1,"2311":1,"2523":1,"2565":1,"2567":1},"1":{"2566":1,"2567":1,"2568":2,"2569":2,"2570":2,"2571":1},"2":{"22":2,"38":11,"98":1,"112":2,"134":1,"176":1,"191":1,"194":17,"199":3,"214":2,"217":2,"222":4,"289":1,"294":1,"297":1,"317":2,"320":2,"328":2,"373":1,"559":1,"562":5,"1375":29,"1377":1,"1378":7,"1381":1,"1416":5,"1417":8,"1442":1,"1445":1,"1451":1,"1466":6,"1511":1,"1512":1,"1513":1,"1526":1,"1527":10,"1588":3,"1589":1,"1591":1,"1594":2,"1597":1,"1606":5,"1611":2,"1612":2,"1619":1,"1684":4,"1737":2,"1759":1,"1768":1,"1770":9,"1771":2,"1773":7,"1775":4,"1776":3,"1782":18,"1790":1,"1822":2,"1828":2,"1919":1,"1992":6,"1993":1,"2159":11,"2160":2,"2165":2,"2166":1,"2252":13,"2253":2,"2273":1,"2311":2,"2374":5,"2516":4,"2520":1,"2523":3,"2528":2,"2546":1,"2554":1,"2565":17,"2566":1,"2568":1,"2571":1,"2643":1,"2644":7,"2645":9,"2721":1,"2827":2,"2863":1,"2883":1,"2904":22,"2905":2,"2907":1,"2911":1,"2912":2,"2915":3,"2916":2,"2918":2,"2921":19,"2923":4,"2941":1}}],["mo",{"0":{"3":1},"2":{"294":1,"369":5,"587":2,"589":2,"630":1,"1340":1,"1416":4,"1599":1,"1606":1,"1657":1,"1684":1,"1822":2,"1824":1,"1993":1,"2312":3,"2313":1,"2516":3,"2556":2,"2557":2,"2644":1,"2721":2}}],["mail",{"2":{"2503":2,"2542":2}}],["mainstream",{"2":{"1780":1,"2619":1}}],["mainly",{"2":{"198":1,"201":1,"212":1,"224":1,"238":2,"334":1,"1288":1,"1375":1}}],["maintains",{"2":{"308":1,"616":1,"666":1,"1340":1,"1519":1,"2377":1,"2384":1,"2461":1,"2594":1,"2613":1,"2742":1}}],["maintained",{"2":{"262":1,"293":1,"305":1,"314":1,"616":2,"667":1,"1340":2,"2710":1,"2845":1}}],["maintainers",{"0":{"376":1},"2":{"124":1,"173":1,"215":1,"265":1,"338":3,"374":1,"397":3,"586":1,"607":1,"1624":1,"1844":1,"2066":1,"2559":1,"2560":1,"2562":1,"2620":1,"2691":1,"2895":1}}],["maintainer",{"2":{"70":1,"111":1,"611":3,"616":1,"666":1,"681":1,"1400":1,"1404":1,"1624":2,"2707":2,"2710":1,"2721":1,"2776":1,"2844":1,"2845":2}}],["maintainability",{"2":{"262":1,"514":1,"525":1}}],["maintain",{"2":{"70":1,"114":1,"228":1,"424":1,"486":1,"519":1,"618":1,"663":1,"1466":1,"1479":1,"1833":1,"2411":2,"2583":2,"2685":1,"2895":1}}],["maintaining",{"2":{"70":1,"2063":1,"2440":1,"2901":1}}],["maintenance",{"2":{"24":1,"198":1,"201":1,"236":1,"238":1,"251":1,"268":1,"285":1,"663":2,"2685":1,"2721":1}}],["main",{"0":{"2928":1},"1":{"2929":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"22":1,"49":1,"50":1,"65":1,"112":1,"113":1,"114":1,"191":1,"199":1,"228":2,"236":1,"294":1,"361":1,"362":1,"379":1,"392":1,"485":1,"489":1,"553":1,"617":1,"631":1,"1293":1,"1368":2,"1378":1,"1487":1,"1545":1,"1956":1,"2052":1,"2269":2,"2283":1,"2303":1,"2400":1,"2455":2,"2470":1,"2494":1,"2553":1,"2555":1,"2573":1,"2583":1,"2587":2,"2601":2,"2605":1,"2721":1,"2873":1,"2895":1,"2915":1,"2927":6,"2928":2}}],["male",{"2":{"2423":1}}],["malicious",{"2":{"312":1}}],["ma",{"2":{"559":1,"2875":1}}],["magnet",{"2":{"1679":1,"2418":1}}],["magenta",{"2":{"492":1,"1407":1,"2067":2,"2198":2}}],["magically",{"2":{"2560":1}}],["magic+n",{"2":{"2411":1}}],["magic+d",{"2":{"1330":1,"2411":1}}],["magic",{"0":{"2453":1,"2519":1,"2548":1},"2":{"114":1,"160":1,"199":4,"226":2,"231":3,"236":2,"328":2,"534":1,"559":1,"562":2,"572":2,"683":1,"1330":1,"1346":1,"1363":1,"1480":4,"1586":4,"1616":2,"1617":2,"1619":31,"2411":4,"2453":1,"2519":36,"2548":37,"2676":5,"2721":1,"2760":1,"2768":1,"2882":3,"2933":1}}],["making",{"0":{"1431":1,"2633":1},"1":{"1432":1,"1433":1},"2":{"130":1,"194":2,"288":1,"328":1,"338":3,"397":1,"427":1,"613":1,"616":1,"1362":1,"1410":1,"1414":1,"1466":1,"1511":1,"1620":1,"2258":1,"2377":2,"2384":2,"2422":1,"2554":1,"2560":1,"2572":1,"2645":2,"2750":2,"2888":1,"2928":1,"2930":2}}],["makemusic",{"2":{"2884":1}}],["makemidi",{"2":{"1913":1}}],["makequantum",{"2":{"2746":1,"2749":11,"2752":1}}],["makeucis",{"2":{"2323":1}}],["makeunicodemap",{"2":{"2322":1}}],["makeunicode",{"2":{"2319":1,"2322":1}}],["makeuart",{"2":{"1264":1}}],["maketri",{"2":{"2313":1}}],["makeps2",{"2":{"2033":1,"2034":1,"2036":1}}],["makeprogrammable",{"2":{"2010":1}}],["makepointing",{"2":{"1958":1,"1960":1,"1961":1,"1962":1,"1963":1,"1967":2,"1972":1,"1973":1,"1974":1,"1975":1,"1976":2,"1977":1}}],["makepin",{"2":{"306":1,"315":1}}],["makeoled",{"2":{"1946":1,"1947":2}}],["makeos",{"2":{"1937":1}}],["makelto",{"2":{"2882":1}}],["makeled",{"2":{"1839":1}}],["makeleader",{"2":{"1784":1}}],["makelayer",{"2":{"1823":1}}],["makejoystick",{"2":{"1733":2}}],["makehd44780",{"2":{"1692":1}}],["makehaptic",{"2":{"1672":1}}],["makeencoder",{"2":{"1659":1,"1661":1}}],["makedip",{"2":{"1650":1}}],["makedigitizer",{"2":{"1634":1}}],["makeboard",{"2":{"2703":1}}],["makebootmagic",{"2":{"1583":1}}],["makebluetooth",{"2":{"2369":1}}],["makebacklight",{"2":{"1536":1,"1542":1,"1543":1,"1544":1,"1545":1}}],["makebattery",{"2":{"739":1,"741":1,"1572":1}}],["makeifdef",{"2":{"1458":1}}],["makeifeq",{"2":{"1458":1,"1465":1,"1466":1}}],["makei2c",{"2":{"762":1}}],["makews2812",{"2":{"1281":1,"1287":1,"1288":1,"1289":1,"1290":1,"1291":1}}],["makeconsole",{"2":{"1942":1,"2882":1}}],["makecommand",{"2":{"1589":1,"1617":1,"2251":1}}],["makecommon",{"2":{"722":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1}}],["makecaps",{"2":{"1588":1}}],["makecustom",{"2":{"622":1,"623":1}}],["makeavr",{"2":{"2882":1}}],["makeautocorrect",{"2":{"1520":1}}],["makeaudio",{"2":{"712":1}}],["makeapa102",{"2":{"700":1}}],["makeanalog",{"2":{"688":1}}],["makergblight",{"2":{"2172":2}}],["makergb",{"2":{"2059":1}}],["makeraw",{"2":{"2048":1}}],["makers",{"2":{"553":1,"2919":1}}],["makerepeat",{"2":{"213":1,"2157":1}}],["maker",{"0":{"1308":1},"1":{"1309":1},"2":{"114":1,"1308":2,"1309":1,"1310":2,"2443":1,"2445":1}}],["makefileaudio",{"2":{"1402":1}}],["makefileconvert",{"2":{"1387":1}}],["makefileifeq",{"2":{"348":1}}],["makefiles",{"2":{"210":2,"616":1}}],["makefile",{"0":{"2412":1},"2":{"49":1,"133":2,"134":2,"160":3,"198":1,"199":2,"333":1,"347":1,"387":1,"569":1,"1329":1,"1362":1,"1363":1,"1373":1,"1626":1,"2410":1,"2655":1,"2676":1}}],["makesteno",{"2":{"2287":1,"2288":1,"2289":1,"2290":1}}],["makest7565",{"2":{"2277":1}}],["makespace",{"2":{"2882":1}}],["makesplit",{"2":{"2261":2}}],["makespi",{"2":{"1243":1}}],["makesend",{"2":{"2219":1}}],["makesequencer",{"2":{"2213":1}}],["makesecure",{"2":{"2208":1}}],["makeserial",{"2":{"1192":1,"1195":2,"1198":2}}],["makesrc",{"2":{"621":1,"2750":2}}],["makes",{"2":{"17":1,"123":1,"320":1,"419":1,"510":1,"538":1,"553":1,"562":1,"570":1,"1340":1,"1377":1,"1513":1,"1587":1,"1604":1,"1929":2,"1930":1,"1933":1,"1936":1,"1962":1,"2001":1,"2004":1,"2069":1,"2159":1,"2163":1,"2268":1,"2371":1,"2399":1,"2448":1,"2459":1,"2557":1,"2560":1,"2573":1,"2671":1,"2673":1,"2720":1,"2750":1,"2837":1,"2912":2,"2913":1,"2923":1}}],["make",{"0":{"465":1,"611":1,"1344":1,"1764":1,"1765":1,"1766":1,"1767":1,"2378":1,"2380":1,"2385":1,"2387":1,"2392":1,"2394":1,"2396":1,"2410":1,"2463":1,"2782":1,"2820":1},"1":{"2411":1,"2412":1,"2783":1,"2784":1,"2785":1,"2786":1,"2787":1,"2788":1,"2789":1,"2790":1,"2791":1,"2792":1,"2793":1},"2":{"2":1,"10":1,"18":4,"21":1,"24":1,"31":1,"36":2,"49":2,"55":1,"65":2,"70":1,"76":1,"94":2,"107":1,"114":7,"119":1,"131":1,"133":2,"134":4,"145":1,"160":2,"175":1,"176":8,"189":1,"191":2,"199":3,"222":5,"236":2,"249":2,"265":1,"279":1,"294":1,"360":1,"378":1,"387":1,"390":1,"411":1,"416":2,"427":6,"453":2,"463":1,"467":3,"489":1,"492":3,"512":2,"523":1,"526":1,"527":1,"531":1,"535":1,"536":1,"561":1,"565":1,"569":1,"586":4,"587":1,"594":2,"605":1,"607":1,"611":2,"613":9,"617":3,"618":1,"638":1,"645":1,"663":1,"666":1,"673":1,"678":1,"681":5,"683":1,"684":1,"714":1,"715":1,"718":1,"1311":1,"1312":2,"1314":2,"1316":1,"1317":1,"1335":1,"1337":1,"1356":1,"1361":1,"1362":2,"1374":1,"1378":1,"1402":1,"1407":2,"1409":1,"1416":1,"1417":1,"1429":1,"1430":2,"1456":1,"1457":2,"1462":2,"1466":5,"1467":2,"1487":2,"1511":2,"1522":1,"1603":1,"1609":1,"1612":1,"1619":11,"1656":1,"1760":1,"1764":1,"1768":1,"1770":6,"1771":2,"1775":1,"1776":1,"1789":1,"1824":2,"1849":1,"1929":3,"1933":2,"1988":1,"1992":1,"2030":1,"2072":1,"2166":1,"2181":1,"2199":1,"2201":1,"2251":1,"2258":1,"2271":1,"2286":2,"2310":1,"2319":1,"2323":1,"2376":3,"2377":2,"2379":2,"2381":2,"2382":2,"2383":2,"2384":4,"2386":2,"2388":2,"2391":2,"2393":2,"2395":2,"2397":2,"2398":1,"2401":1,"2404":1,"2407":1,"2410":23,"2411":1,"2412":1,"2421":2,"2422":1,"2423":1,"2424":1,"2427":2,"2440":1,"2442":1,"2443":4,"2454":2,"2494":1,"2496":1,"2501":1,"2504":1,"2554":1,"2562":1,"2565":1,"2576":1,"2578":1,"2579":2,"2592":1,"2599":1,"2610":1,"2612":1,"2613":1,"2625":1,"2627":2,"2628":1,"2630":1,"2633":6,"2656":2,"2667":1,"2673":1,"2684":1,"2723":1,"2745":2,"2748":3,"2749":27,"2750":1,"2754":1,"2775":1,"2776":1,"2820":1,"2879":1,"2882":1,"2900":1,"2905":2,"2931":1,"2937":1,"2938":4,"2939":1,"2942":2}}],["majority",{"2":{"141":1,"166":1,"245":1,"248":1,"1200":1,"1333":1,"1583":1,"1585":1,"2903":1}}],["major",{"2":{"116":1,"199":1,"607":1,"1348":1,"1479":2,"1480":3,"1484":2,"2399":1,"2731":2,"2732":1}}],["macs",{"2":{"1941":1}}],["macca",{"2":{"673":1}}],["mac",{"0":{"1354":1,"1355":1,"1358":1,"1371":1},"1":{"1372":1},"2":{"266":1,"1356":1,"1358":1,"2320":1,"2321":1,"2325":1,"2337":1,"2338":1,"2339":1,"2533":1,"2880":18}}],["machines",{"2":{"1202":1,"1941":1,"2287":1}}],["machine",{"2":{"263":1,"378":1,"379":1,"611":1,"1289":1,"2212":1,"2285":1,"2287":1,"2291":2,"2324":1,"2398":1,"2401":1,"2403":1,"2584":1,"2585":1,"2587":1,"2804":1}}],["mach80",{"2":{"134":1}}],["macos",{"0":{"421":1,"1353":1,"1771":1,"2403":1},"2":{"114":1,"143":1,"160":1,"176":1,"199":1,"236":1,"266":1,"294":1,"562":2,"1323":1,"1348":2,"1449":1,"1669":1,"1670":1,"1771":3,"1778":1,"1937":1,"1938":1,"1941":1,"2009":1,"2050":1,"2320":1,"2321":1,"2324":3,"2325":2,"2337":1,"2338":1,"2339":1,"2393":1,"2395":1,"2397":1,"2401":1,"2403":1,"2495":1,"2499":1,"2503":3,"2533":2,"2538":1,"2541":1,"2542":1,"2592":1,"2606":1,"2607":1,"2612":1,"2620":1,"2675":2,"2676":2,"2710":1,"2880":11}}],["macro2",{"2":{"1465":1}}],["macro30",{"2":{"2009":1}}],["macro3",{"2":{"241":2,"249":1}}],["macro1",{"2":{"241":2,"1465":1}}],["macro0",{"2":{"199":1}}],["macropad",{"2":{"120":1,"176":3,"222":1,"236":1,"328":1,"1435":1,"2878":1}}],["macros=",{"2":{"2410":2}}],["macros",{"0":{"17":1,"120":1,"758":1,"1434":1,"1435":1,"1439":1,"1441":1,"1466":1,"1655":2,"2511":1,"2714":1},"1":{"1435":1,"1436":2,"1437":2,"1438":2,"1439":1,"1440":2,"1441":2,"1442":2,"1443":2,"1444":2,"1445":2,"1446":2,"1447":2,"1448":2,"1449":2,"1450":2,"1451":2,"1452":2,"1453":2,"1454":2,"1455":2,"1456":2,"1656":2,"1657":2,"1658":2},"2":{"16":1,"17":1,"38":1,"50":1,"89":1,"114":1,"120":5,"134":2,"151":1,"176":2,"191":3,"196":1,"212":1,"222":2,"236":2,"249":1,"266":3,"277":1,"328":1,"369":1,"445":1,"511":1,"624":1,"758":1,"1376":1,"1422":1,"1425":2,"1434":3,"1435":4,"1436":1,"1440":1,"1442":1,"1445":1,"1465":7,"1466":3,"1599":1,"1614":2,"1616":2,"1655":5,"1656":2,"1657":1,"1736":1,"1775":1,"1828":1,"2162":1,"2167":1,"2168":1,"2170":1,"2221":1,"2410":2,"2511":1,"2721":4,"2775":3,"2849":1,"2882":1,"2900":3,"2930":1}}],["macro",{"0":{"27":1,"151":1,"1437":1,"1445":1,"1657":1,"2262":1,"2806":1,"2822":1},"1":{"1438":1,"1446":1,"1447":1,"1448":1,"1449":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1},"2":{"3":1,"7":1,"15":1,"27":1,"50":1,"75":1,"89":1,"114":3,"120":8,"134":1,"145":2,"151":2,"160":2,"188":2,"191":4,"199":3,"210":3,"222":75,"231":3,"236":1,"249":1,"255":2,"257":1,"258":1,"259":1,"277":2,"294":1,"333":1,"369":2,"586":2,"587":1,"627":1,"758":1,"760":1,"1376":1,"1410":1,"1421":1,"1433":1,"1435":4,"1437":2,"1438":1,"1440":9,"1445":3,"1456":1,"1465":2,"1466":1,"1486":1,"1618":1,"1655":22,"1656":14,"1657":6,"1658":14,"1680":1,"1780":1,"1844":2,"1849":1,"2009":1,"2066":2,"2072":1,"2162":3,"2167":7,"2168":6,"2182":2,"2187":1,"2199":1,"2218":1,"2221":1,"2246":1,"2247":1,"2290":1,"2302":3,"2310":1,"2324":1,"2446":1,"2447":1,"2511":10,"2549":1,"2556":3,"2565":1,"2644":1,"2714":3,"2721":2,"2775":1,"2776":1,"2777":2,"2789":2,"2791":2,"2806":2,"2822":1,"2849":1,"2905":3,"2919":1,"2930":6,"2931":2,"2933":1}}],["max660",{"2":{"1691":1}}],["maxfitlerouput",{"2":{"1522":1}}],["maxing",{"2":{"562":1}}],["maximus",{"2":{"210":1}}],["maximum",{"2":{"28":1,"166":2,"427":2,"559":2,"563":1,"568":2,"658":1,"721":1,"797":1,"852":1,"884":1,"916":1,"923":1,"951":1,"957":1,"985":1,"991":1,"1019":1,"1025":1,"1053":1,"1059":1,"1087":1,"1093":1,"1121":1,"1127":1,"1155":1,"1161":1,"1211":1,"1362":1,"1410":1,"1538":3,"1544":1,"1588":1,"1734":1,"1736":1,"1743":1,"1840":2,"1846":3,"1928":3,"1929":4,"1930":2,"1932":2,"1933":2,"1956":2,"1962":1,"1965":5,"1969":2,"2060":2,"2069":4,"2175":1,"2178":1,"2182":1,"2194":6,"2268":2,"2270":1,"2271":2,"2283":2,"2302":1,"2311":1,"2747":3,"2749":11,"2750":1,"2760":1,"2767":1,"2768":1,"2850":1,"2864":1,"2870":2,"2871":1,"2875":1,"2914":1}}],["max",{"0":{"1906":1,"1909":1,"2150":1,"2153":1},"2":{"112":4,"134":1,"145":1,"166":1,"176":1,"191":1,"194":1,"222":2,"231":1,"308":1,"460":1,"559":1,"563":1,"564":2,"658":2,"716":4,"717":4,"723":2,"724":1,"1482":3,"1487":2,"1521":1,"1527":8,"1537":1,"1606":4,"1675":1,"1734":3,"1743":1,"1839":1,"1843":1,"1844":6,"1849":1,"1907":1,"1910":1,"1929":7,"1933":4,"1956":6,"1962":3,"1996":1,"2059":1,"2063":1,"2066":6,"2072":1,"2073":6,"2074":3,"2151":1,"2154":1,"2175":1,"2178":1,"2182":2,"2268":2,"2283":6,"2293":2,"2302":2,"2312":1,"2323":1,"2374":6,"2375":1,"2447":3,"2508":1,"2850":2,"2864":2,"2866":2,"2870":3,"2871":2,"2875":1,"2904":3,"2942":1}}],["maps",{"2":{"338":1,"664":1,"1354":1,"1484":1,"1486":1,"1954":1,"2877":1,"2930":1}}],["mapped",{"2":{"182":1,"220":2,"559":1,"681":1,"687":1,"726":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1389":2,"1393":2,"1404":1,"1405":1,"1516":3,"1540":1,"1669":1,"2221":1,"2470":1,"2473":1,"2750":3,"2771":3,"2816":1,"2911":2,"2912":2,"2913":1}}],["mappings",{"2":{"191":1,"222":1,"236":2,"667":2,"1936":1,"2721":1}}],["mapping",{"0":{"139":1,"247":1,"667":1,"726":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1,"1927":1,"2298":1},"1":{"668":1,"669":1,"2299":1},"2":{"49":1,"114":1,"139":1,"145":2,"160":1,"191":6,"220":1,"222":1,"231":1,"236":1,"247":2,"266":1,"307":1,"338":1,"664":1,"667":5,"669":1,"670":1,"1358":1,"1404":1,"1650":2,"1661":3,"1954":2,"2298":1,"2322":2,"2323":4,"2411":2,"2470":1,"2473":1,"2556":1,"2862":1,"2879":1,"2912":1,"2913":1}}],["maple",{"2":{"154":9,"160":1,"181":2,"270":2,"277":1,"317":1,"686":1,"2498":1}}],["map",{"0":{"1486":1,"1650":1,"1661":1,"2930":1},"2":{"76":1,"134":1,"145":1,"176":2,"191":1,"199":2,"206":1,"210":2,"212":3,"220":1,"222":6,"247":2,"249":1,"277":1,"307":5,"328":1,"1362":1,"1486":4,"1515":1,"1635":1,"1650":3,"1661":5,"1662":1,"1925":1,"1927":1,"1954":2,"1955":1,"1962":1,"2199":3,"2200":2,"2294":2,"2296":1,"2298":1,"2322":4,"2323":3,"2325":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2350":1,"2351":1,"2411":1,"2533":1,"2721":2,"2775":1,"2870":1,"2930":2,"2931":2,"2933":2}}],["manjaro",{"2":{"2594":1,"2619":1}}],["manipulating",{"0":{"1983":1},"1":{"1984":1,"1985":1,"1986":1,"1987":1,"1988":1,"1989":1,"1990":1},"2":{"1444":1,"2584":1}}],["manipulation",{"2":{"243":1,"331":1,"390":1,"637":1,"1202":1}}],["manipulations",{"2":{"64":1}}],["manipulate",{"2":{"1422":1,"1530":1,"1586":1,"1593":1,"1826":1,"1983":1,"1988":1,"2299":1}}],["man",{"2":{"1312":1,"2495":1}}],["manner",{"2":{"559":2,"568":1,"1616":1,"1845":1,"2068":1}}],["mango",{"2":{"226":1,"236":1}}],["mandatory",{"2":{"212":2,"2721":1}}],["management",{"0":{"1616":1},"2":{"1340":1,"1367":1,"1956":1,"2283":1}}],["managed",{"2":{"422":1,"1340":1}}],["manager",{"0":{"380":1},"2":{"380":1,"414":1,"684":1,"685":1,"686":2,"1367":1,"2050":1,"2495":1,"2499":1,"2575":1,"2605":1,"2619":1,"2669":1}}],["manageable",{"2":{"251":1,"538":1}}],["manage",{"2":{"182":1,"611":1,"653":1,"1378":1}}],["manual",{"0":{"2684":1},"2":{"145":1,"160":1,"234":1,"249":2,"1297":1,"1312":1}}],["manually",{"2":{"134":1,"234":1,"244":1,"390":1,"423":1,"511":1,"578":1,"653":1,"1315":1,"1529":1,"1621":1,"1763":1,"1835":1,"1954":1,"1956":2,"1959":1,"1983":1,"2266":1,"2283":2,"2401":2,"2568":1,"2587":1,"2614":1,"2619":1,"2627":1,"2652":1,"2721":1,"2746":1,"2750":2,"2904":1,"2912":1,"2942":1}}],["manufacture",{"2":{"2407":1}}],["manufacturers",{"2":{"746":1,"1200":1,"1201":1}}],["manufacturer",{"2":{"70":3,"76":1,"111":1,"169":2,"184":2,"191":4,"201":1,"383":1,"559":1,"594":1,"743":1,"2052":3,"2377":1,"2384":1,"2560":1,"2562":1,"2710":3,"2720":1,"2721":1,"2844":1,"2845":3}}],["manuform",{"2":{"114":3,"160":2,"205":2,"210":8,"222":1,"226":1,"236":1,"308":1,"2418":1}}],["manyboard",{"2":{"114":1}}],["many",{"2":{"30":1,"198":1,"265":1,"433":1,"487":1,"502":1,"536":1,"562":2,"635":1,"655":1,"659":1,"716":2,"1280":1,"1329":1,"1379":1,"1409":2,"1449":1,"1486":1,"1491":1,"1497":1,"1511":1,"1535":1,"1589":1,"1659":1,"1763":1,"1917":1,"1933":1,"1951":1,"1979":1,"2047":1,"2182":1,"2254":1,"2271":1,"2272":1,"2281":1,"2285":1,"2289":1,"2302":2,"2311":1,"2312":1,"2322":1,"2372":3,"2375":1,"2376":1,"2410":2,"2415":1,"2428":1,"2448":1,"2496":2,"2557":1,"2562":1,"2573":1,"2582":1,"2592":1,"2611":1,"2612":1,"2619":1,"2632":1,"2633":1,"2646":2,"2666":3,"2709":1,"2721":1,"2750":1,"2807":1,"2836":1,"2862":1,"2877":1,"2879":1,"2894":1,"2925":1,"2929":2,"2934":3,"2941":1,"2942":1}}],["maarten",{"0":{"57":1}}],["maartenwut",{"0":{"57":1},"2":{"57":23}}],["mario",{"2":{"1791":1}}],["mary",{"2":{"1667":2}}],["mar",{"2":{"55":1}}],["marketing",{"2":{"2560":4}}],["marked",{"2":{"713":1,"1210":1,"1547":1,"1640":1,"1744":1,"1843":1,"2492":1,"2627":1,"2845":1}}],["marker",{"2":{"346":1,"2497":1,"2765":8}}],["markers",{"2":{"266":22}}],["markdown",{"2":{"334":2,"397":1,"519":1,"678":1,"1427":1,"2673":2}}],["mark",{"2":{"48":1,"176":1,"191":1,"234":1,"236":1,"559":1,"2362":1,"2627":1,"2925":1}}],["marksard",{"2":{"154":3,"160":2}}],["marks",{"2":{"0":1,"2627":2}}],["matias",{"2":{"2414":1}}],["materials",{"2":{"2418":1,"2422":1}}],["material",{"2":{"2415":1,"2560":1}}],["mate",{"2":{"2367":1}}],["math",{"2":{"526":1,"1962":1}}],["matt",{"2":{"2937":1}}],["matte",{"2":{"2421":1}}],["matters",{"2":{"2182":1,"2557":1}}],["matter",{"2":{"194":1,"613":1,"1464":1,"1653":1,"2422":1,"2557":1,"2611":1,"2735":1,"2775":1}}],["matt3o",{"2":{"2418":2,"2429":1}}],["matthewdias",{"2":{"154":4,"160":2}}],["matrices",{"2":{"176":1,"1583":1,"1838":1,"2058":1,"2271":1,"2437":1,"2459":2}}],["matrix=true",{"2":{"1319":1}}],["matrix==true",{"2":{"431":1}}],["matrix",{"0":{"80":1,"84":1,"124":1,"202":1,"206":1,"327":1,"620":1,"635":1,"636":1,"637":1,"641":1,"642":1,"643":1,"1326":1,"1365":1,"1629":1,"1630":1,"1654":1,"1838":1,"1843":1,"1844":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1859":1,"1861":1,"1863":1,"1865":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1885":1,"1887":1,"1889":1,"1891":1,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1899":1,"1900":1,"1902":1,"1904":1,"1906":1,"1909":1,"2058":1,"2063":1,"2064":1,"2065":1,"2066":1,"2075":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2085":1,"2087":1,"2089":1,"2091":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2123":1,"2125":1,"2127":1,"2129":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2137":1,"2139":1,"2141":1,"2143":1,"2144":1,"2146":1,"2148":1,"2150":1,"2153":1,"2265":1,"2416":1,"2418":1,"2431":1,"2459":1,"2518":1,"2526":1,"2711":1,"2712":1,"2713":1,"2821":1,"2864":1,"2865":1,"2871":1,"2929":1,"2930":1},"1":{"621":1,"622":1,"623":1,"636":1,"637":1,"642":1,"643":1,"1839":1,"1840":1,"1841":1,"1842":1,"1843":1,"1844":1,"1845":1,"1846":1,"1847":1,"1848":1,"1849":1,"1850":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":2,"1859":1,"1860":2,"1861":1,"1862":2,"1863":1,"1864":2,"1865":1,"1866":2,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":2,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":2,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":2,"1885":1,"1886":2,"1887":1,"1888":2,"1889":1,"1890":2,"1891":1,"1892":2,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":2,"1899":1,"1900":1,"1901":2,"1902":1,"1903":2,"1904":1,"1905":2,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"2059":1,"2060":1,"2061":1,"2062":1,"2063":1,"2064":2,"2065":2,"2066":1,"2067":1,"2068":1,"2069":1,"2070":1,"2071":1,"2072":1,"2073":1,"2074":1,"2075":1,"2076":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":2,"2085":1,"2086":2,"2087":1,"2088":2,"2089":1,"2090":2,"2091":1,"2092":2,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":2,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":2,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":2,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":2,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":2,"2123":1,"2124":2,"2125":1,"2126":2,"2127":1,"2128":2,"2129":1,"2130":2,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":2,"2137":1,"2138":1,"2139":1,"2140":2,"2141":1,"2142":2,"2143":1,"2144":1,"2145":2,"2146":1,"2147":2,"2148":1,"2149":2,"2150":1,"2151":1,"2152":1,"2153":1,"2154":1,"2155":1,"2417":1,"2419":1,"2420":1,"2421":1,"2422":1,"2712":1,"2713":1,"2930":1,"2931":1,"2932":1,"2933":1},"2":{"17":1,"31":8,"49":3,"63":2,"64":1,"65":4,"70":1,"74":4,"76":1,"80":2,"84":1,"92":4,"93":14,"94":5,"102":3,"111":2,"112":7,"113":1,"114":36,"124":2,"133":1,"134":11,"145":4,"160":13,"176":4,"183":22,"185":9,"191":16,"196":1,"199":7,"202":1,"206":1,"209":6,"210":18,"212":1,"222":14,"236":12,"238":1,"249":33,"266":10,"277":11,"283":3,"285":6,"294":3,"298":1,"308":7,"312":3,"316":1,"317":6,"328":8,"333":4,"390":1,"431":1,"435":2,"559":18,"567":4,"568":9,"572":2,"587":2,"620":2,"621":4,"622":10,"623":19,"631":1,"632":1,"635":1,"636":2,"637":18,"641":1,"643":4,"644":2,"645":2,"650":3,"651":3,"666":1,"681":1,"700":1,"716":1,"717":1,"721":1,"722":1,"726":1,"798":2,"827":2,"852":1,"853":2,"884":1,"885":2,"916":1,"917":2,"951":1,"952":2,"985":1,"986":2,"1019":1,"1020":2,"1053":1,"1054":2,"1087":1,"1088":2,"1121":1,"1122":2,"1155":1,"1156":2,"1211":1,"1212":2,"1281":1,"1282":1,"1326":1,"1328":8,"1365":1,"1369":1,"1407":1,"1410":3,"1413":1,"1414":2,"1417":1,"1440":4,"1456":1,"1486":5,"1535":1,"1584":2,"1585":3,"1619":2,"1629":5,"1630":5,"1632":12,"1649":2,"1662":4,"1675":1,"1838":1,"1839":3,"1840":5,"1842":14,"1843":64,"1844":23,"1845":5,"1846":20,"1847":1,"1849":8,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1860":1,"1900":1,"1901":1,"1918":2,"1938":4,"1951":1,"1954":3,"1957":8,"2058":1,"2059":3,"2060":5,"2062":18,"2063":151,"2064":7,"2065":1,"2066":23,"2068":5,"2069":24,"2070":1,"2072":8,"2073":10,"2074":7,"2075":4,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":1,"2086":1,"2144":1,"2145":1,"2174":3,"2181":2,"2210":1,"2257":1,"2262":3,"2265":11,"2269":2,"2271":4,"2281":1,"2282":2,"2296":3,"2305":2,"2377":1,"2384":1,"2407":1,"2411":3,"2415":1,"2416":4,"2423":1,"2424":1,"2425":2,"2431":1,"2432":1,"2437":1,"2438":1,"2446":1,"2449":2,"2459":6,"2518":15,"2526":19,"2550":3,"2555":6,"2556":1,"2566":1,"2578":2,"2600":3,"2603":1,"2662":1,"2711":1,"2712":6,"2713":7,"2714":21,"2721":12,"2722":1,"2750":3,"2757":1,"2775":5,"2821":1,"2847":1,"2853":3,"2856":4,"2862":4,"2864":7,"2865":8,"2871":7,"2872":2,"2873":7,"2884":1,"2887":46,"2900":2,"2901":2,"2919":11,"2924":1,"2928":2,"2929":8,"2930":6,"2931":4,"2932":4,"2942":1}}],["matched",{"2":{"431":2,"1512":1,"1527":1,"1791":1}}],["matches",{"2":{"397":1,"405":1,"685":1,"1200":1,"1201":1,"1486":1,"1522":9,"1533":2,"1624":1,"1627":1,"1661":1,"1809":1,"1812":1,"1815":1,"1818":1,"1821":1,"1968":1,"2496":1,"2587":2,"2676":1,"2748":1,"2750":2,"2930":1}}],["matchstickworks",{"2":{"226":2,"236":1}}],["match",{"2":{"65":1,"77":1,"105":1,"134":1,"160":1,"182":1,"191":1,"195":1,"333":1,"405":1,"410":1,"431":11,"510":1,"597":1,"685":1,"765":1,"1245":1,"1266":1,"1353":1,"1375":2,"1407":1,"1417":1,"1428":2,"1432":1,"1436":1,"1519":1,"1526":1,"1614":1,"1954":1,"2298":1,"2362":1,"2471":1,"2496":1,"2566":1,"2694":2,"2707":1,"2748":1,"2757":1,"2760":1,"2775":1,"2776":1,"2931":1}}],["matchingsubstring",{"2":{"2938":2}}],["matching",{"2":{"50":1,"160":1,"243":1,"331":1,"431":1,"467":1,"764":1,"1200":1,"1201":1,"1244":1,"1289":1,"1375":1,"1422":6,"1522":2,"2471":1,"2500":1,"2564":1,"2703":1,"2721":1,"2877":1,"2938":1}}],["masquerade",{"2":{"2689":1}}],["masking",{"2":{"328":1}}],["masked",{"2":{"317":1,"1526":1,"2265":2,"2568":1,"2865":1}}],["mask",{"0":{"1485":1},"2":{"105":6,"114":1,"559":1,"1375":21,"1378":2,"1417":2,"1422":12,"1445":1,"1466":2,"1485":6,"1527":4,"1589":1,"1611":2,"1619":1,"1651":4,"1768":1,"1770":11,"1771":2,"1773":1,"1775":3,"1782":3,"1949":1,"2039":2,"2041":5,"2160":2,"2165":2,"2166":1,"2265":1,"2279":1,"2374":1,"2645":8,"2761":2,"2916":1,"2921":3}}],["masks",{"2":{"49":1,"1375":1,"1782":1,"1949":2,"2279":2,"2761":1,"2921":1}}],["massive",{"2":{"163":1}}],["massively",{"2":{"70":1}}],["mass",{"2":{"93":1,"199":1,"416":1,"1678":1,"2401":1,"2497":1,"2700":1}}],["massdrop",{"2":{"73":1,"114":1,"131":1,"134":1,"218":2,"279":2,"681":3}}],["masterzen",{"2":{"2429":1}}],["master",{"0":{"761":1,"1242":1,"2629":1,"2631":1,"2632":1},"1":{"762":1,"763":1,"764":1,"765":1,"766":1,"767":1,"768":1,"769":1,"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"777":1,"778":1,"779":1,"780":1,"781":1,"782":1,"783":1,"784":1,"785":1,"786":1,"787":1,"788":1,"789":1,"790":1,"791":1,"792":1,"793":1,"794":1,"795":1,"796":1,"1243":1,"1244":1,"1245":1,"1246":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1254":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"2632":1,"2633":1,"2634":1},"2":{"31":3,"34":1,"45":1,"51":1,"74":1,"114":1,"134":2,"160":1,"169":1,"176":4,"191":1,"234":4,"236":1,"277":1,"294":3,"373":2,"393":1,"396":4,"401":1,"402":3,"403":2,"405":8,"406":5,"417":4,"457":2,"566":4,"567":4,"568":7,"572":1,"577":1,"586":1,"587":2,"592":1,"746":3,"747":1,"756":1,"761":1,"762":2,"764":1,"920":3,"1091":3,"1125":3,"1197":2,"1198":1,"1242":1,"1243":2,"1350":1,"1950":3,"1970":1,"2007":1,"2191":4,"2267":3,"2268":4,"2269":3,"2270":18,"2271":6,"2272":1,"2280":3,"2371":1,"2398":3,"2519":2,"2548":2,"2625":1,"2626":1,"2627":8,"2628":4,"2629":6,"2630":4,"2631":2,"2632":7,"2633":1,"2719":3,"2721":2,"2722":1,"2723":4,"2749":3,"2897":1}}],["made",{"2":{"10":1,"73":1,"116":1,"124":1,"134":1,"172":1,"212":1,"243":1,"246":1,"263":1,"271":1,"272":1,"273":1,"312":1,"320":1,"331":1,"371":1,"383":1,"485":1,"510":1,"512":1,"576":1,"611":5,"663":1,"681":1,"794":1,"1402":1,"1484":1,"1616":1,"1622":1,"2272":1,"2445":1,"2457":1,"2558":1,"2561":1,"2609":1,"2626":2,"2627":3,"2629":1,"2638":1,"2676":1,"2895":1,"2905":1,"2923":1}}],["maybe",{"0":{"2474":1}}],["may",{"0":{"19":1,"78":1,"135":1,"211":1,"250":1,"295":1},"1":{"20":1,"21":1,"22":1,"23":1,"24":1,"25":1,"26":1,"27":1,"28":1,"29":1,"30":1,"31":1,"32":1,"33":1,"34":1,"35":1,"36":1,"37":1,"38":1,"79":1,"80":1,"81":1,"82":1,"83":1,"84":1,"85":1,"86":1,"87":1,"88":1,"89":1,"90":1,"91":1,"92":1,"93":1,"94":1,"95":1,"136":1,"137":1,"138":1,"139":1,"140":1,"141":1,"142":1,"143":1,"144":1,"145":1,"212":1,"213":1,"214":1,"215":1,"216":1,"217":1,"218":1,"219":1,"220":1,"221":1,"222":1,"251":1,"252":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"261":1,"262":1,"263":1,"264":1,"265":1,"266":1,"296":1,"297":1,"298":1,"299":1,"300":1,"301":1,"302":1,"303":1,"304":1,"305":1,"306":1,"307":1,"308":1},"2":{"10":1,"14":1,"24":1,"31":2,"34":1,"73":1,"88":1,"104":1,"124":2,"127":1,"142":1,"166":1,"182":1,"194":1,"240":1,"248":1,"251":1,"259":1,"284":1,"288":1,"289":1,"312":1,"338":3,"395":1,"396":7,"397":1,"399":1,"400":1,"401":1,"407":6,"408":7,"411":2,"412":1,"431":5,"437":1,"453":1,"467":2,"509":2,"518":1,"523":1,"537":1,"538":1,"543":3,"559":2,"561":1,"562":4,"568":1,"596":2,"608":1,"613":1,"631":1,"635":1,"646":1,"681":1,"683":3,"684":2,"685":1,"686":1,"692":1,"716":4,"720":1,"725":1,"749":1,"750":1,"751":2,"752":2,"801":1,"830":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1215":1,"1244":1,"1245":2,"1263":1,"1269":1,"1284":3,"1287":1,"1291":2,"1295":1,"1296":1,"1297":1,"1300":1,"1314":1,"1315":2,"1317":2,"1327":1,"1329":1,"1345":2,"1353":1,"1368":1,"1369":1,"1402":1,"1405":1,"1406":1,"1413":1,"1416":1,"1436":2,"1442":1,"1445":2,"1458":3,"1465":1,"1466":2,"1479":1,"1487":1,"1493":1,"1512":1,"1521":1,"1528":1,"1548":1,"1550":1,"1551":1,"1583":1,"1587":1,"1588":2,"1603":2,"1620":1,"1622":1,"1624":1,"1628":2,"1632":1,"1635":1,"1650":1,"1655":1,"1661":1,"1664":2,"1675":5,"1707":1,"1756":1,"1766":1,"1767":1,"1771":1,"1775":1,"1778":1,"1781":1,"1782":1,"1789":2,"1790":1,"1822":1,"1825":1,"1829":1,"1914":1,"1929":1,"1936":1,"1937":1,"1940":2,"1941":2,"1942":1,"1945":1,"1949":1,"1951":1,"1953":1,"1977":1,"1987":1,"1992":1,"2006":1,"2009":1,"2033":1,"2037":1,"2050":2,"2064":1,"2069":1,"2159":1,"2160":1,"2161":1,"2165":1,"2168":1,"2201":2,"2253":1,"2260":1,"2265":1,"2269":1,"2271":1,"2273":1,"2279":1,"2286":2,"2291":1,"2302":2,"2310":1,"2318":1,"2322":1,"2323":1,"2324":2,"2376":1,"2379":1,"2381":1,"2383":1,"2384":2,"2386":3,"2388":1,"2389":1,"2390":1,"2391":2,"2393":1,"2395":1,"2398":1,"2401":1,"2405":2,"2408":1,"2410":1,"2411":1,"2415":1,"2417":1,"2420":2,"2421":3,"2424":1,"2427":3,"2442":2,"2453":1,"2454":1,"2458":1,"2473":1,"2475":1,"2489":1,"2490":1,"2494":1,"2496":4,"2499":1,"2501":1,"2542":1,"2546":2,"2550":1,"2554":2,"2560":1,"2561":3,"2562":4,"2563":3,"2566":1,"2574":1,"2577":1,"2578":2,"2583":1,"2605":1,"2607":1,"2645":1,"2649":1,"2657":1,"2659":1,"2660":1,"2661":1,"2664":1,"2669":1,"2673":2,"2676":1,"2678":2,"2683":3,"2719":5,"2722":1,"2744":1,"2749":4,"2750":2,"2757":2,"2766":1,"2767":1,"2782":1,"2786":1,"2879":1,"2881":1,"2882":2,"2894":1,"2895":1,"2896":3,"2899":1,"2902":1,"2905":1,"2906":2,"2917":1,"2918":3,"2919":6,"2920":2,"2921":1,"2923":1,"2924":3,"2941":3}}],["aabb",{"0":{"2908":1}}],["aa",{"2":{"2748":1}}],["aaron",{"2":{"2165":2}}],["ajazz",{"2":{"2560":2}}],["ajisai74",{"2":{"154":2}}],["azerty",{"0":{"2797":1},"2":{"2880":2}}],["azure",{"2":{"2067":2,"2198":2}}],["azoteq",{"0":{"1963":1},"1":{"1964":1,"1965":1,"1966":1},"2":{"236":1,"249":1,"294":1,"1963":2,"1964":10,"1965":17,"1966":3}}],["ao",{"2":{"2294":1}}],["aoff",{"2":{"1919":1,"2520":1}}],["aozora",{"2":{"122":2}}],["a♯",{"2":{"1919":6,"2520":6}}],["a♭",{"2":{"1919":6,"2520":6}}],["a\`",{"2":{"1607":1}}],["a9",{"2":{"1266":1,"2035":2,"2660":1,"2684":1}}],["a8",{"2":{"713":2,"718":2,"1477":1,"2035":2,"2684":1}}],["a7²",{"2":{"692":1}}],["a7¹",{"2":{"692":1}}],["a7",{"2":{"690":1,"692":4,"2661":2,"2684":1}}],["a6²",{"2":{"692":1}}],["a6¹",{"2":{"692":1}}],["a6",{"2":{"690":1,"692":4,"2661":2,"2684":1}}],["a54",{"2":{"2684":1}}],["a5+dacd2",{"2":{"713":6}}],["a5²",{"2":{"692":1}}],["a5¹",{"2":{"692":1}}],["a5",{"2":{"690":1,"692":4,"713":1,"714":1,"1471":3,"1472":3,"1473":1,"1474":1,"1919":1,"2520":1,"2661":2,"2684":1}}],["a43",{"2":{"2684":1}}],["a4+a5",{"2":{"1473":1}}],["a4+dacd1",{"2":{"713":6}}],["a4²",{"2":{"692":1}}],["a4¹",{"2":{"692":1}}],["a4",{"2":{"690":1,"692":4,"713":1,"714":1,"1471":3,"1472":3,"1473":1,"1474":1,"1736":2,"1919":1,"2520":1,"2661":2,"2684":1}}],["a3²",{"2":{"692":2}}],["a3¹",{"2":{"692":2}}],["a3",{"2":{"690":1,"692":4,"1310":1,"1919":1,"2520":1}}],["a2²",{"2":{"692":2}}],["a2¹",{"2":{"692":2}}],["a2",{"2":{"690":1,"692":4,"1919":1,"2520":1,"2684":1,"2865":2}}],["a14",{"2":{"2684":1}}],["a145",{"2":{"2684":1}}],["a135",{"2":{"2684":1}}],["a13",{"2":{"1675":1,"2684":1}}],["a15",{"2":{"1649":1,"2684":1}}],["a12",{"2":{"1266":1,"2659":1}}],["a11",{"2":{"1266":1,"2659":1}}],["a10",{"2":{"1266":1,"1649":1,"2660":1,"2664":1,"2684":1}}],["a1²",{"2":{"692":2}}],["a1¹",{"2":{"692":2}}],["a1",{"2":{"690":1,"692":4,"1919":1,"2520":1,"2684":1,"2865":2,"2873":1}}],["a0²",{"2":{"692":2}}],["a0¹",{"2":{"692":2}}],["a0",{"2":{"690":1,"692":4,"696":1,"2281":2,"2383":1,"2661":1,"2662":1,"2684":1,"2865":2}}],["akko",{"2":{"2390":1}}],["akp846",{"2":{"294":1}}],["akc084",{"2":{"294":1}}],["akemipad",{"2":{"222":1}}],["akis",{"2":{"222":1}}],["akira",{"2":{"222":1}}],["akb",{"2":{"222":2}}],["aka",{"2":{"160":1,"194":1,"297":1,"308":1,"1482":1,"1483":1,"1587":2,"1782":1,"2259":1,"2260":1,"2293":1,"2921":1}}],["air",{"2":{"2273":1}}],["aim",{"2":{"2375":1}}],["aims",{"2":{"1958":1,"2205":1,"2625":1}}],["aiming",{"2":{"1917":1}}],["aimed",{"2":{"251":1,"662":1,"1849":1,"2072":1,"2635":1}}],["ain",{"2":{"511":1}}],["aids",{"2":{"2420":1}}],["aid",{"2":{"334":1,"525":1}}],["aide",{"2":{"249":1,"1969":1}}],["aidansmithdotdev",{"2":{"222":1}}],["ai03",{"2":{"160":1,"222":2,"445":1,"2415":1}}],["ae",{"2":{"2323":2}}],["aegis",{"2":{"222":1}}],["aero",{"2":{"222":1}}],["aeroboard",{"2":{"210":1}}],["aella",{"2":{"222":1}}],["aelith",{"2":{"197":2}}],["aeboards",{"0":{"60":1},"2":{"102":3,"114":1,"191":1,"222":3}}],["axis",{"0":{"1749":2,"1752":2},"1":{"1750":2,"1751":2,"1753":2},"2":{"183":2,"236":1,"1409":1,"1673":1,"1679":1,"1734":3,"1736":12,"1737":9,"1741":1,"1742":1,"1743":1,"1749":1,"1750":2,"1752":1,"1753":2,"1962":10,"1978":2,"1979":2,"1980":2,"1983":2,"2776":2,"2862":4,"2864":2,"2871":2}}],["axes",{"0":{"1736":1,"1737":1,"2043":1,"2044":1},"1":{"1737":1},"2":{"49":1,"183":2,"1732":3,"1734":1,"1736":4,"1737":2,"1741":1,"2007":1,"2043":2}}],["awkward",{"2":{"1824":1}}],["awinic",{"2":{"721":1}}],["awesome",{"2":{"196":1,"369":1,"520":1,"521":1,"522":1,"1338":1,"1456":1,"1463":1,"1785":1,"2710":1}}],["awake",{"2":{"1983":1}}],["awaiting",{"2":{"1950":1,"2564":1}}],["awaited",{"2":{"131":1}}],["aware",{"2":{"427":1,"428":1,"435":1,"438":1,"440":1,"443":1,"509":1,"1603":1,"2503":1}}],["away",{"2":{"3":1,"15":1,"134":3,"176":1,"266":1,"445":1,"1520":1,"1789":1,"1843":4,"1949":1,"2063":6,"2279":1,"2312":1,"2416":1,"2421":1,"2459":1,"2838":1}}],["aw20216s",{"0":{"721":1,"728":1,"730":1,"732":1,"734":1,"736":1},"1":{"722":1,"723":1,"724":1,"725":1,"726":1,"727":1,"728":1,"729":2,"730":1,"731":2,"732":1,"733":2,"734":1,"735":2,"736":1,"737":2},"2":{"236":1,"249":1,"721":1,"722":3,"723":7,"724":1,"726":3,"732":1,"733":1,"2059":1,"2871":1}}],["aw20216",{"2":{"114":3,"176":1,"209":2,"222":1,"236":1}}],["amtel",{"2":{"2266":1}}],["amt",{"2":{"1976":4}}],["among",{"2":{"1670":1,"2496":1,"2915":1}}],["amounts",{"2":{"1415":1,"2747":1,"2749":1,"2750":1}}],["amount",{"2":{"107":1,"750":1,"751":1,"1319":1,"1417":1,"1449":1,"1603":2,"1656":1,"1661":1,"1787":1,"1789":1,"1845":1,"1939":2,"1996":1,"2044":1,"2063":3,"2068":1,"2184":1,"2230":1,"2234":1,"2268":1,"2290":1,"2301":1,"2320":1,"2420":3,"2427":1,"2452":1,"2566":1,"2645":1,"2657":1,"2719":1,"2747":3,"2749":1,"2854":1,"2855":1,"2863":1,"2865":1,"2867":1,"2873":2,"2875":1,"2894":1}}],["amazing",{"2":{"1339":1}}],["amag23",{"2":{"222":1}}],["am",{"2":{"416":1,"1517":3,"2006":2,"2627":1}}],["america",{"2":{"1343":1,"2880":3}}],["amet",{"2":{"357":1}}],["amended",{"2":{"2719":1}}],["amending",{"2":{"229":1}}],["amend",{"2":{"210":2}}],["amendment",{"2":{"210":1}}],["ambiguous",{"2":{"514":1,"517":1,"2560":1}}],["ambiguity",{"2":{"273":1,"2560":3,"2562":1,"2719":1}}],["amber80",{"2":{"222":1}}],["amux",{"2":{"249":1}}],["amj84",{"2":{"210":1}}],["amj",{"2":{"145":1}}],["amjpad",{"2":{"144":2}}],["amj96",{"2":{"144":2}}],["amj60",{"2":{"144":2}}],["amjkeyboard",{"2":{"144":4,"145":1,"210":1}}],["amj40",{"2":{"144":2}}],["ampr",{"2":{"2527":1,"2547":1}}],["amptrics",{"2":{"308":1}}],["ampersand",{"2":{"277":1,"2527":1,"2547":1}}],["amp",{"0":{"25":1,"528":1,"1373":1,"1440":1,"1770":1,"1954":1,"2895":1},"1":{"1441":1,"1442":1,"1443":1,"1444":1,"1955":1,"2896":1,"2897":1},"2":{"63":1,"72":1,"93":1,"114":5,"134":1,"145":1,"160":1,"190":1,"191":1,"199":2,"222":2,"249":1,"266":1,"308":1,"317":3,"693":1,"1316":4,"1375":2,"1445":1,"1480":1,"1528":2,"1548":2,"1659":1,"1775":1,"1840":2,"1954":1,"2042":1,"2060":2,"2063":1,"2415":1,"2495":1,"2503":1,"2504":1,"2527":1,"2535":1,"2547":1,"2621":2,"2745":1,"2937":1}}],["ahead",{"2":{"76":1,"510":1,"512":1,"763":1,"2585":1,"2628":1}}],["apos",{"2":{"2560":1}}],["apt",{"2":{"511":1,"2594":1}}],["apm32",{"0":{"2386":1},"1":{"2387":1},"2":{"210":1,"222":1,"686":2,"2386":2}}],["apm32f103",{"2":{"134":1}}],["apart",{"2":{"2257":1,"2420":1,"2427":1}}],["apache",{"2":{"1624":1,"2741":1}}],["apa",{"2":{"210":1}}],["apa102",{"0":{"699":1,"703":1,"704":1,"706":1,"708":1,"709":1,"2848":1},"1":{"700":1,"701":1,"702":1,"703":1,"704":1,"705":2,"706":1,"707":2,"708":1,"709":1,"710":2},"2":{"75":1,"209":2,"212":2,"222":1,"234":2,"236":2,"249":2,"277":1,"294":1,"333":1,"699":1,"700":4,"701":3,"704":1,"705":1,"2059":1,"2171":1,"2172":7,"2848":2,"2870":1}}],["ap2",{"2":{"176":1}}],["aplyard",{"2":{"67":2,"72":1}}],["aplx6",{"2":{"67":3,"72":1}}],["apis",{"0":{"1632":1},"2":{"138":1,"236":1,"244":1,"700":1,"722":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1281":1,"1627":1,"1632":1,"2677":2,"2719":1,"2734":1,"2749":3,"2750":3}}],["api",{"0":{"208":1,"244":1,"361":1,"367":1,"374":1,"579":1,"702":1,"727":1,"768":1,"803":1,"832":1,"861":1,"891":1,"926":1,"960":1,"994":1,"1028":1,"1062":1,"1096":1,"1130":1,"1164":1,"1217":1,"1246":1,"1267":1,"1301":1,"1553":1,"1637":1,"1697":1,"1739":1,"1793":1,"1850":1,"1956":1,"2012":1,"2053":1,"2076":1,"2226":1,"2283":1,"2326":1,"2750":1,"2753":1},"1":{"362":1,"363":1,"364":1,"365":1,"368":1,"369":1,"370":1,"371":1,"372":1,"373":1,"375":1,"376":1,"377":1,"580":1,"581":1,"582":1,"703":1,"704":1,"705":1,"706":1,"707":1,"708":1,"709":1,"710":1,"728":1,"729":1,"730":1,"731":1,"732":1,"733":1,"734":1,"735":1,"736":1,"737":1,"769":1,"770":1,"771":1,"772":1,"773":1,"774":1,"775":1,"776":1,"777":1,"778":1,"779":1,"780":1,"781":1,"782":1,"783":1,"784":1,"785":1,"786":1,"787":1,"788":1,"789":1,"790":1,"791":1,"792":1,"793":1,"794":1,"795":1,"796":1,"804":1,"805":1,"806":1,"807":1,"808":1,"809":1,"810":1,"811":1,"812":1,"813":1,"814":1,"815":1,"816":1,"817":1,"818":1,"819":1,"820":1,"821":1,"822":1,"823":1,"824":1,"825":1,"833":1,"834":1,"835":1,"836":1,"837":1,"838":1,"839":1,"840":1,"841":1,"842":1,"843":1,"844":1,"845":1,"846":1,"847":1,"848":1,"849":1,"850":1,"851":1,"862":1,"863":1,"864":1,"865":1,"866":1,"867":1,"868":1,"869":1,"870":1,"871":1,"872":1,"873":1,"874":1,"875":1,"876":1,"877":1,"878":1,"879":1,"880":1,"881":1,"882":1,"883":1,"892":1,"893":1,"894":1,"895":1,"896":1,"897":1,"898":1,"899":1,"900":1,"901":1,"902":1,"903":1,"904":1,"905":1,"906":1,"907":1,"908":1,"909":1,"910":1,"911":1,"912":1,"913":1,"914":1,"915":1,"927":1,"928":1,"929":1,"930":1,"931":1,"932":1,"933":1,"934":1,"935":1,"936":1,"937":1,"938":1,"939":1,"940":1,"941":1,"942":1,"943":1,"944":1,"945":1,"946":1,"947":1,"948":1,"949":1,"950":1,"961":1,"962":1,"963":1,"964":1,"965":1,"966":1,"967":1,"968":1,"969":1,"970":1,"971":1,"972":1,"973":1,"974":1,"975":1,"976":1,"977":1,"978":1,"979":1,"980":1,"981":1,"982":1,"983":1,"984":1,"995":1,"996":1,"997":1,"998":1,"999":1,"1000":1,"1001":1,"1002":1,"1003":1,"1004":1,"1005":1,"1006":1,"1007":1,"1008":1,"1009":1,"1010":1,"1011":1,"1012":1,"1013":1,"1014":1,"1015":1,"1016":1,"1017":1,"1018":1,"1029":1,"1030":1,"1031":1,"1032":1,"1033":1,"1034":1,"1035":1,"1036":1,"1037":1,"1038":1,"1039":1,"1040":1,"1041":1,"1042":1,"1043":1,"1044":1,"1045":1,"1046":1,"1047":1,"1048":1,"1049":1,"1050":1,"1051":1,"1052":1,"1063":1,"1064":1,"1065":1,"1066":1,"1067":1,"1068":1,"1069":1,"1070":1,"1071":1,"1072":1,"1073":1,"1074":1,"1075":1,"1076":1,"1077":1,"1078":1,"1079":1,"1080":1,"1081":1,"1082":1,"1083":1,"1084":1,"1085":1,"1086":1,"1097":1,"1098":1,"1099":1,"1100":1,"1101":1,"1102":1,"1103":1,"1104":1,"1105":1,"1106":1,"1107":1,"1108":1,"1109":1,"1110":1,"1111":1,"1112":1,"1113":1,"1114":1,"1115":1,"1116":1,"1117":1,"1118":1,"1119":1,"1120":1,"1131":1,"1132":1,"1133":1,"1134":1,"1135":1,"1136":1,"1137":1,"1138":1,"1139":1,"1140":1,"1141":1,"1142":1,"1143":1,"1144":1,"1145":1,"1146":1,"1147":1,"1148":1,"1149":1,"1150":1,"1151":1,"1152":1,"1153":1,"1154":1,"1165":1,"1166":1,"1167":1,"1168":1,"1169":1,"1170":1,"1171":1,"1172":1,"1173":1,"1174":1,"1175":1,"1176":1,"1177":1,"1178":1,"1179":1,"1180":1,"1181":1,"1182":1,"1183":1,"1184":1,"1185":1,"1186":1,"1187":1,"1188":1,"1218":1,"1219":1,"1220":1,"1221":1,"1222":1,"1223":1,"1224":1,"1225":1,"1226":1,"1227":1,"1228":1,"1229":1,"1230":1,"1231":1,"1232":1,"1233":1,"1234":1,"1235":1,"1236":1,"1237":1,"1238":1,"1239":1,"1240":1,"1241":1,"1247":1,"1248":1,"1249":1,"1250":1,"1251":1,"1252":1,"1253":1,"1254":1,"1255":1,"1256":1,"1257":1,"1258":1,"1259":1,"1260":1,"1261":1,"1262":1,"1268":1,"1269":1,"1270":1,"1271":1,"1272":1,"1273":1,"1274":1,"1275":1,"1276":1,"1277":1,"1278":1,"1279":1,"1302":1,"1303":1,"1304":1,"1305":1,"1306":1,"1307":1,"1554":1,"1555":1,"1556":1,"1557":1,"1558":1,"1559":1,"1560":1,"1561":1,"1562":1,"1563":1,"1564":1,"1565":1,"1566":1,"1567":1,"1568":1,"1569":1,"1570":1,"1638":1,"1639":1,"1640":1,"1641":1,"1642":1,"1643":1,"1644":1,"1645":1,"1646":1,"1647":1,"1648":1,"1698":1,"1699":1,"1700":1,"1701":1,"1702":1,"1703":1,"1704":1,"1705":1,"1706":1,"1707":1,"1708":1,"1709":1,"1710":1,"1711":1,"1712":1,"1713":1,"1714":1,"1715":1,"1716":1,"1717":1,"1718":1,"1719":1,"1720":1,"1721":1,"1722":1,"1723":1,"1724":1,"1725":1,"1726":1,"1727":1,"1728":1,"1729":1,"1730":1,"1731":1,"1740":1,"1741":1,"1742":1,"1743":1,"1744":1,"1745":1,"1746":1,"1747":1,"1748":1,"1749":1,"1750":1,"1751":1,"1752":1,"1753":1,"1754":1,"1755":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"1851":1,"1852":1,"1853":1,"1854":1,"1855":1,"1856":1,"1857":1,"1858":1,"1859":1,"1860":1,"1861":1,"1862":1,"1863":1,"1864":1,"1865":1,"1866":1,"1867":1,"1868":1,"1869":1,"1870":1,"1871":1,"1872":1,"1873":1,"1874":1,"1875":1,"1876":1,"1877":1,"1878":1,"1879":1,"1880":1,"1881":1,"1882":1,"1883":1,"1884":1,"1885":1,"1886":1,"1887":1,"1888":1,"1889":1,"1890":1,"1891":1,"1892":1,"1893":1,"1894":1,"1895":1,"1896":1,"1897":1,"1898":1,"1899":1,"1900":1,"1901":1,"1902":1,"1903":1,"1904":1,"1905":1,"1906":1,"1907":1,"1908":1,"1909":1,"1910":1,"1911":1,"2013":1,"2014":1,"2015":1,"2016":1,"2017":1,"2018":1,"2019":1,"2020":1,"2021":1,"2022":1,"2023":1,"2024":1,"2025":1,"2026":1,"2027":1,"2028":1,"2029":1,"2054":1,"2055":1,"2056":1,"2057":1,"2077":1,"2078":1,"2079":1,"2080":1,"2081":1,"2082":1,"2083":1,"2084":1,"2085":1,"2086":1,"2087":1,"2088":1,"2089":1,"2090":1,"2091":1,"2092":1,"2093":1,"2094":1,"2095":1,"2096":1,"2097":1,"2098":1,"2099":1,"2100":1,"2101":1,"2102":1,"2103":1,"2104":1,"2105":1,"2106":1,"2107":1,"2108":1,"2109":1,"2110":1,"2111":1,"2112":1,"2113":1,"2114":1,"2115":1,"2116":1,"2117":1,"2118":1,"2119":1,"2120":1,"2121":1,"2122":1,"2123":1,"2124":1,"2125":1,"2126":1,"2127":1,"2128":1,"2129":1,"2130":1,"2131":1,"2132":1,"2133":1,"2134":1,"2135":1,"2136":1,"2137":1,"2138":1,"2139":1,"2140":1,"2141":1,"2142":1,"2143":1,"2144":1,"2145":1,"2146":1,"2147":1,"2148":1,"2149":1,"2150":1,"2151":1,"2152":1,"2153":1,"2154":1,"2155":1,"2227":1,"2228":1,"2229":1,"2230":1,"2231":1,"2232":1,"2233":1,"2234":1,"2235":1,"2236":1,"2237":1,"2238":1,"2239":1,"2240":1,"2241":1,"2242":1,"2243":1,"2244":1,"2245":1,"2246":1,"2247":1,"2327":1,"2328":1,"2329":1,"2330":1,"2331":1,"2332":1,"2333":1,"2334":1,"2335":1,"2336":1,"2337":1,"2338":1,"2339":1,"2340":1,"2341":1,"2342":1,"2343":1,"2344":1,"2345":1,"2346":1,"2347":1,"2348":1,"2349":1,"2350":1,"2351":1,"2352":1,"2353":1,"2354":1,"2355":1,"2356":1,"2357":1,"2358":1,"2359":1,"2360":1,"2361":1,"2362":1,"2363":1,"2364":1,"2365":1,"2754":1,"2755":1},"2":{"51":1,"95":2,"113":1,"114":3,"133":3,"134":4,"145":2,"160":2,"176":1,"182":1,"188":1,"191":5,"196":1,"199":3,"206":1,"210":2,"222":2,"230":1,"236":1,"244":2,"248":1,"249":2,"266":3,"277":2,"285":1,"294":2,"328":1,"359":4,"361":1,"362":2,"367":2,"368":2,"370":1,"371":1,"373":1,"374":2,"375":2,"376":1,"377":2,"576":1,"579":4,"583":1,"584":1,"586":1,"590":1,"655":1,"663":1,"693":1,"700":1,"762":1,"763":1,"1243":1,"1264":1,"1281":1,"1411":1,"1545":1,"1627":2,"1632":5,"1839":1,"1956":1,"1957":2,"2059":1,"2218":2,"2319":1,"2446":1,"2678":1,"2679":1,"2746":1,"2749":9,"2750":1,"2751":1,"2775":1,"2777":1,"2844":1,"2870":1,"2901":2}}],["apps",{"2":{"2324":2}}],["approvals",{"2":{"2724":1}}],["approximately",{"2":{"1933":1,"2372":1}}],["approaching",{"2":{"2690":1,"2691":1,"2881":1}}],["approaches",{"2":{"1340":1}}],["approach",{"2":{"717":1,"1378":1}}],["approachable",{"2":{"512":1,"536":1}}],["appropriately",{"2":{"619":1,"674":1,"746":1,"2001":1,"2004":1}}],["appropriate",{"2":{"36":2,"49":1,"191":1,"232":1,"387":1,"491":1,"534":1,"538":1,"611":1,"625":2,"664":1,"666":1,"678":1,"763":1,"1195":1,"1198":1,"1210":1,"1314":1,"1413":1,"1543":1,"1622":1,"1954":1,"2001":2,"2008":1,"2201":1,"2273":1,"2293":1,"2302":1,"2494":1,"2607":1,"2676":1,"2719":1,"2721":1,"2746":1,"2877":1,"2905":1}}],["appreciated",{"2":{"411":1}}],["app",{"0":{"362":1,"363":1,"364":1,"365":1,"375":1},"2":{"375":1,"1345":1,"1347":1,"2503":1,"2541":1,"2605":1,"2621":2}}],["apparently",{"2":{"349":2,"2367":1}}],["appearance",{"2":{"2418":1}}],["appear",{"2":{"373":1,"388":1,"682":1,"1508":1,"2560":1,"2776":1}}],["appears",{"2":{"50":1,"682":1,"683":1,"684":1,"686":1,"1348":1,"2492":1,"2495":1,"2675":2,"2683":1,"2710":1,"2721":1,"2735":1}}],["appended",{"2":{"1628":1,"2377":1,"2384":1}}],["appendix",{"0":{"1531":1},"1":{"1532":1,"1533":1}}],["appending",{"2":{"1385":1,"2457":1}}],["append",{"2":{"222":1,"2721":1,"2936":1}}],["apple",{"2":{"1353":3,"1354":2,"1358":2}}],["applies",{"2":{"320":1,"511":1,"562":1,"1513":1,"1633":1,"1775":1,"1780":1,"1928":2,"1968":1,"1976":2,"1981":1,"1982":1,"2039":1,"2643":1,"2657":1,"2691":1,"2720":1,"2734":1,"2743":1,"2826":1,"2923":2}}],["applied",{"2":{"233":1,"397":2,"654":1,"1378":1,"1451":1,"1512":1,"1594":1,"1660":1,"1679":1,"1934":1,"2420":1,"2627":1,"2749":2,"2750":1,"2781":1,"2905":1}}],["applicable",{"2":{"199":1,"685":1,"1414":1,"1782":1,"2445":1,"2721":3,"2846":2,"2912":1,"2921":1}}],["application",{"2":{"182":1,"361":1,"367":1,"370":1,"375":1,"471":1,"472":1,"474":1,"480":1,"481":1,"576":1,"888":1,"1347":1,"1621":1,"1928":1,"2376":1,"2377":1,"2381":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":1,"2395":1,"2397":1,"2475":1,"2499":1,"2503":2,"2541":2,"2607":1,"2649":1,"2731":2,"2732":2}}],["applications",{"2":{"182":1,"1377":2,"1782":1,"2459":1,"2676":1,"2921":1,"2923":1}}],["apply",{"0":{"1528":1,"1529":1,"2730":1},"1":{"1529":1,"2731":1,"2732":1},"2":{"92":1,"199":1,"210":1,"341":1,"387":2,"391":1,"555":1,"720":1,"741":1,"1288":1,"1292":1,"1296":1,"1299":1,"1300":1,"1377":1,"1410":2,"1417":1,"1427":1,"1493":1,"1512":1,"1528":1,"1529":3,"1545":1,"1548":1,"1550":1,"1551":1,"1594":1,"1606":1,"2169":2,"2186":1,"2252":1,"2253":2,"2420":2,"2566":1,"2679":1,"2721":1}}],["applying",{"2":{"21":1,"320":1,"2253":1,"2420":1,"2627":3,"2923":1}}],["adequate",{"2":{"2414":1}}],["adelie",{"2":{"222":1}}],["adelais",{"2":{"134":6,"191":1}}],["adj",{"2":{"1947":3,"2277":3}}],["adjusting",{"2":{"1487":1,"1732":1,"1930":1}}],["adjusts",{"2":{"1482":1,"1737":1,"2178":2,"2286":1}}],["adjusted",{"2":{"856":1,"921":1,"955":1,"989":1,"1023":1,"1057":1,"1159":1,"2778":1}}],["adjustments",{"2":{"2905":1}}],["adjustment",{"0":{"1283":1},"2":{"236":1,"1846":2,"2004":1,"2069":4,"2175":3,"2178":1,"2276":1}}],["adjustable",{"2":{"134":1}}],["adjust",{"2":{"105":4,"160":2,"191":3,"198":1,"222":1,"266":1,"507":1,"613":1,"724":1,"857":1,"858":1,"922":1,"956":1,"990":1,"1024":1,"1058":1,"1092":1,"1126":1,"1160":1,"1296":1,"1297":1,"1407":1,"1424":1,"1482":1,"1651":2,"1929":1,"1930":1,"1931":1,"1981":1,"1982":1,"1987":1,"2004":1,"2006":1,"2064":1,"2183":1,"2204":2,"2286":1,"2313":2,"2314":2,"2315":4,"2316":6,"2702":1,"2785":4,"2787":2,"2905":1}}],["adherence",{"2":{"2895":1}}],["adheres",{"2":{"2420":1}}],["adhere",{"2":{"1404":1,"2603":1}}],["adhlns",{"2":{"134":1}}],["ad",{"2":{"800":1,"855":1,"887":1}}],["administrator",{"2":{"685":1,"2324":1}}],["adm42",{"2":{"226":2,"236":1}}],["advice",{"2":{"2719":1}}],["advised",{"2":{"1193":1,"1196":1,"1479":1,"2651":1}}],["adventurous",{"2":{"1606":1}}],["advertised",{"2":{"594":1,"2562":1}}],["advantageous",{"2":{"2757":1}}],["advantages",{"2":{"1193":1,"1196":1,"2646":1,"2666":1,"2671":1}}],["advantage",{"2":{"93":1,"663":1,"1777":1,"2285":1,"2463":1}}],["advances",{"2":{"1956":8,"2283":8}}],["advanced",{"0":{"659":1,"759":1,"1203":1,"1379":1,"1399":1,"1421":1,"1441":1,"1445":1,"1455":1,"1585":1,"1597":1,"1601":1,"1772":1,"1777":1,"1906":1,"1909":1,"1916":1,"1987":1,"2000":1,"2003":1,"2150":1,"2153":1,"2311":1,"2901":1},"1":{"660":1,"661":1,"1204":1,"1205":1,"1380":1,"1381":1,"1382":1,"1383":1,"1384":1,"1400":1,"1401":1,"1402":1,"1403":1,"1404":1,"1405":1,"1446":1,"1447":1,"1448":1,"1449":1,"1450":1,"1451":1,"1452":1,"1453":1,"1454":1,"1456":1,"1602":1,"1603":1,"1604":1,"1605":1,"1606":1,"1607":1,"1608":1,"1609":1,"1610":1,"1611":1,"1612":1,"1613":1,"1614":1,"1773":1,"1778":1,"1779":1,"1780":1,"1917":1,"1918":1,"2001":1,"2002":1,"2003":1,"2004":2,"2005":2,"2006":1},"2":{"49":1,"63":1,"93":1,"160":1,"249":1,"285":1,"561":1,"562":1,"597":1,"604":1,"759":2,"1203":1,"1300":1,"1340":1,"1376":1,"1378":1,"1421":1,"1445":1,"1485":1,"1597":2,"1628":1,"1632":6,"1775":1,"1849":2,"1913":2,"1916":2,"1968":1,"1987":1,"2000":1,"2072":2,"2073":3,"2074":2,"2302":3,"2303":1,"2308":1,"2310":3,"2311":2,"2312":1,"2425":1,"2462":1,"2496":1,"2614":1,"2677":1,"2704":1,"2721":1,"2744":1,"2899":1,"2900":1,"2901":2,"2937":1}}],["advance",{"0":{"2896":1},"2":{"30":1,"33":1,"378":1,"390":1,"1956":3,"2283":3,"2896":1}}],["adopted",{"2":{"527":1}}],["adoption",{"2":{"128":1}}],["adkb96",{"2":{"253":2}}],["adpenrose",{"2":{"222":2}}],["ad65",{"2":{"222":1}}],["adns9800",{"0":{"273":1,"276":1,"284":1},"2":{"118":1,"160":1,"273":3,"276":1,"277":1,"1961":6}}],["adns",{"0":{"1960":1,"1961":1},"2":{"118":2,"1960":2,"1961":2}}],["adns5050",{"2":{"118":1,"285":1,"1960":4}}],["adcconfig",{"2":{"1968":5}}],["adc6",{"2":{"695":1}}],["adcrpenablets",{"2":{"693":1}}],["adcd1",{"2":{"693":2}}],["adc3",{"2":{"692":3}}],["adc2",{"2":{"692":2}}],["adc1",{"2":{"692":1,"696":1}}],["adcv3",{"2":{"692":1}}],["adcv1",{"2":{"692":1}}],["adcs",{"2":{"692":2,"696":2}}],["adc",{"0":{"687":1,"741":1},"1":{"688":1,"689":1,"690":1,"691":1,"692":1,"693":1,"694":1,"695":1,"696":1,"697":1,"698":1},"2":{"93":1,"191":2,"234":2,"249":1,"687":1,"690":2,"692":7,"693":3,"695":5,"696":11,"698":12,"740":1,"741":11,"1732":2,"1733":1,"1734":1,"1736":2,"1962":1,"1968":5,"2692":1,"2851":5}}],["adb",{"2":{"75":1,"1354":2}}],["adalyn",{"2":{"154":2}}],["adafruitble",{"0":{"153":1},"2":{"153":1,"160":1}}],["adafruit",{"0":{"1390":1,"2368":1},"2":{"50":2,"133":1,"134":2,"153":1,"163":1,"176":3,"544":1,"686":3,"746":1,"747":1,"1388":1,"1391":1,"1394":1,"1675":1,"2367":1,"2368":4,"2483":1,"2487":1,"2492":3,"2702":1,"2721":1,"2888":1}}],["adaptation",{"2":{"2561":1}}],["adapting",{"2":{"2457":1}}],["adapter",{"2":{"378":1,"2447":1}}],["adapted",{"2":{"179":1}}],["adapt",{"2":{"32":1,"191":1,"2919":1}}],["addenda",{"0":{"1586":1}}],["added",{"2":{"14":1,"49":8,"63":1,"67":1,"72":2,"74":1,"81":1,"82":1,"86":1,"93":1,"112":1,"114":2,"132":1,"134":1,"138":1,"139":1,"143":1,"145":1,"160":4,"173":1,"175":2,"176":8,"189":1,"191":2,"196":1,"210":2,"212":1,"213":1,"214":1,"222":1,"230":1,"231":1,"234":3,"236":3,"243":1,"249":2,"266":2,"277":1,"285":1,"317":1,"331":1,"397":1,"450":1,"492":1,"507":1,"570":1,"611":1,"678":1,"1201":1,"1313":1,"1428":1,"1442":1,"1457":1,"1458":3,"1460":1,"1479":1,"1512":1,"1527":1,"1536":1,"1625":1,"1627":2,"1650":1,"1656":1,"1661":1,"1779":2,"1790":2,"1796":1,"1797":1,"1804":1,"1954":1,"1977":1,"1997":1,"2175":1,"2274":1,"2359":1,"2418":1,"2432":1,"2563":1,"2589":2,"2632":1,"2671":1,"2719":1,"2722":2,"2843":1}}],["addr2",{"2":{"919":1,"954":1,"1090":1,"1124":1,"1158":1}}],["addr1",{"2":{"919":1,"954":1,"1090":1,"1124":1,"1158":1}}],["addr",{"2":{"236":1,"746":1,"988":1,"1022":1,"1056":1,"1214":1,"1968":1,"2501":8}}],["addressed",{"2":{"747":1,"756":1,"1979":1}}],["addresses",{"2":{"236":1,"249":1,"728":1,"763":1,"800":1,"804":1,"833":1,"855":1,"862":1,"887":1,"892":1,"919":1,"927":1,"954":1,"961":1,"988":1,"995":1,"1022":1,"1029":1,"1056":1,"1063":1,"1090":1,"1097":1,"1124":1,"1131":1,"1158":1,"1165":1,"1214":1,"1218":1,"2161":1,"2726":1}}],["addressable",{"2":{"699":1,"1280":2,"2171":2}}],["addressing",{"0":{"763":1,"800":1,"829":1,"855":1,"887":1,"919":1,"954":1,"988":1,"1022":1,"1056":1,"1090":1,"1124":1,"1158":1,"1214":1},"2":{"198":1,"201":1,"212":1,"224":1,"238":1,"611":1,"763":1,"1955":1,"2199":1,"2434":1}}],["address",{"0":{"770":1,"773":1,"776":1,"779":1,"794":2,"1728":2,"1730":2},"1":{"771":1,"772":1,"774":1,"775":1,"777":1,"778":1,"780":1,"781":1,"795":2,"796":2,"1729":2,"1731":2},"2":{"50":1,"73":1,"114":2,"191":1,"236":1,"577":1,"578":1,"579":1,"611":1,"668":2,"729":3,"746":9,"747":1,"750":1,"756":2,"763":6,"771":2,"773":1,"774":2,"777":2,"780":2,"782":1,"783":2,"785":1,"786":2,"788":1,"789":2,"791":1,"792":2,"794":2,"795":2,"799":8,"800":5,"805":4,"809":1,"829":2,"834":4,"837":1,"854":8,"855":5,"863":4,"867":1,"886":8,"887":5,"893":4,"897":1,"918":8,"919":17,"928":4,"932":1,"953":8,"954":17,"962":4,"966":1,"987":8,"988":5,"996":4,"1000":1,"1021":8,"1022":5,"1030":4,"1034":1,"1055":8,"1056":5,"1064":4,"1068":1,"1089":8,"1090":17,"1098":4,"1102":1,"1123":8,"1124":17,"1132":4,"1136":1,"1157":8,"1158":17,"1166":4,"1170":1,"1213":8,"1214":5,"1219":4,"1223":1,"1288":2,"1436":1,"1723":2,"1728":1,"1729":2,"1730":1,"1731":2,"1952":2,"1955":1,"1964":2,"1968":1,"1974":2,"2437":1,"2499":1,"2501":1,"2694":1,"2749":3,"2876":2}}],["additive",{"0":{"715":1,"1474":1},"2":{"210":3,"236":2,"249":1,"713":1,"717":2,"720":1,"1471":1,"1474":2,"1478":1,"2849":1}}],["addition",{"2":{"114":1,"176":1,"194":1,"222":34,"249":1,"328":1,"1375":1,"1422":1,"1441":1,"1615":1,"1771":1,"1837":1,"1849":1,"2072":1,"2200":1,"2252":1,"2287":1,"2302":1,"2424":1,"2544":1,"2897":1,"2906":2}}],["additionally",{"2":{"67":1,"86":1,"175":1,"220":1,"262":1,"586":1,"649":1,"714":1,"715":1,"1337":1,"1406":1,"1407":1,"1460":1,"1461":1,"1479":1,"1493":1,"1520":1,"1523":1,"1528":1,"1583":1,"1651":1,"1658":1,"1659":1,"1660":1,"1669":1,"1765":1,"1766":1,"1767":1,"1822":1,"1917":1,"1970":1,"1983":1,"1992":1,"2174":1,"2312":1,"2374":1,"2377":1,"2384":1,"2446":1,"2499":1,"2546":1,"2566":1,"2583":1,"2643":1,"2724":1,"2778":1}}],["additional",{"0":{"592":1,"1401":1,"1402":1,"1846":1,"1998":1,"2038":1,"2069":1,"2170":1,"2274":1,"2574":1,"2663":1,"2715":1},"1":{"1999":1,"2039":1,"2040":1,"2041":1,"2042":1,"2043":1,"2044":1,"2045":1,"2046":1,"2664":1,"2665":1,"2716":1,"2717":1},"2":{"50":1,"86":2,"94":1,"114":1,"134":1,"176":1,"189":1,"191":3,"198":1,"201":1,"212":1,"221":1,"222":1,"236":1,"308":1,"431":1,"486":1,"553":1,"621":1,"698":1,"1206":1,"1210":1,"1295":1,"1325":1,"1337":1,"1385":1,"1387":1,"1392":1,"1397":1,"1398":1,"1402":1,"1409":1,"1416":1,"1422":1,"1445":1,"1458":2,"1528":1,"1530":1,"1534":1,"1585":3,"1656":1,"1658":1,"1691":1,"1764":1,"1767":1,"1843":1,"1934":1,"1954":1,"1960":1,"1972":1,"1975":1,"1981":2,"1991":1,"1992":1,"1997":1,"2002":1,"2005":1,"2063":2,"2156":1,"2160":1,"2163":1,"2170":1,"2172":1,"2176":1,"2177":1,"2254":1,"2268":1,"2269":1,"2311":1,"2318":1,"2319":1,"2376":1,"2381":1,"2384":1,"2410":1,"2428":1,"2432":1,"2446":1,"2447":1,"2448":1,"2571":1,"2719":1,"2726":1,"2728":1,"2741":1,"2742":1,"2787":1,"2882":1,"2883":1,"2933":1,"2937":2,"2941":1}}],["additions",{"0":{"49":1,"63":1,"74":1,"93":1},"2":{"160":1,"210":1,"222":147,"236":1,"249":1,"285":1,"2405":1}}],["adding",{"0":{"14":1,"585":1,"665":1,"1621":1,"1622":1,"1925":1,"1997":1,"2587":1,"2588":1,"2689":1,"2690":1,"2691":1,"2707":1,"2937":1},"1":{"586":1,"587":1,"588":1,"589":1,"590":1,"591":1,"592":1,"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"1926":1,"1927":1,"1998":1,"1999":1,"2708":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":1,"2714":1,"2715":1,"2716":1,"2717":1},"2":{"74":1,"86":1,"99":1,"114":1,"173":1,"201":1,"212":1,"236":1,"249":1,"266":1,"277":1,"427":1,"498":1,"590":1,"594":1,"627":1,"665":1,"666":1,"670":1,"726":1,"750":1,"802":1,"831":1,"856":1,"860":1,"890":1,"921":1,"925":1,"955":1,"959":1,"989":1,"993":1,"1023":1,"1027":1,"1057":1,"1061":1,"1095":1,"1129":1,"1159":1,"1163":1,"1216":1,"1284":1,"1339":1,"1340":1,"1351":1,"1387":1,"1393":1,"1402":1,"1413":1,"1416":1,"1440":2,"1474":1,"1495":1,"1511":1,"1527":1,"1589":1,"1591":1,"1596":1,"1616":1,"1649":1,"1656":1,"1659":1,"1680":1,"1787":1,"1913":1,"1947":1,"1977":1,"1979":1,"1997":1,"1998":2,"2002":1,"2046":1,"2049":1,"2159":1,"2171":1,"2264":1,"2265":1,"2269":1,"2277":1,"2302":2,"2323":1,"2371":1,"2398":2,"2411":1,"2428":1,"2585":1,"2633":1,"2645":1,"2676":1,"2685":1,"2689":2,"2705":1,"2721":1,"2722":2,"2749":11,"2883":1,"2884":2,"2903":1,"2912":1,"2913":1,"2918":1,"2919":1,"2937":1,"2942":2}}],["add",{"0":{"35":1,"163":1,"173":1,"450":1,"666":1,"667":1,"670":1,"671":1,"1338":1,"1796":1,"1802":1,"1999":1,"2014":1,"2357":1,"2599":1,"2600":1},"1":{"36":1,"668":1,"669":1,"1339":1,"1797":1,"1798":1,"1803":1,"1804":1,"2015":1,"2358":1,"2359":1},"2":{"28":1,"31":1,"32":2,"34":2,"49":4,"63":5,"65":4,"70":1,"74":5,"76":2,"77":2,"92":1,"93":24,"110":2,"114":38,"119":1,"123":1,"130":2,"133":2,"134":26,"145":21,"160":21,"175":1,"176":33,"189":4,"190":1,"191":27,"199":25,"209":1,"210":18,"213":2,"222":25,"235":1,"236":30,"249":23,"266":15,"273":1,"277":7,"285":17,"294":8,"307":3,"308":15,"317":5,"328":15,"333":3,"338":6,"397":1,"405":1,"414":1,"415":1,"450":2,"493":1,"503":1,"507":1,"508":1,"510":1,"538":1,"570":2,"585":1,"587":1,"591":1,"594":1,"611":4,"621":2,"622":2,"623":2,"645":2,"664":6,"666":1,"667":1,"670":1,"671":1,"678":2,"688":1,"700":1,"701":1,"722":1,"723":1,"724":1,"739":1,"762":1,"798":1,"799":1,"827":1,"828":1,"853":1,"854":1,"857":1,"858":1,"885":1,"886":1,"888":1,"917":1,"918":1,"922":1,"923":1,"952":1,"953":1,"956":1,"957":1,"986":1,"987":1,"990":1,"991":1,"1020":1,"1021":1,"1024":1,"1025":1,"1054":1,"1055":1,"1058":1,"1059":1,"1088":1,"1089":1,"1092":1,"1093":1,"1122":1,"1123":1,"1126":1,"1127":1,"1156":1,"1157":1,"1160":1,"1161":1,"1200":3,"1201":3,"1206":1,"1210":1,"1212":1,"1213":1,"1243":1,"1264":1,"1281":1,"1282":1,"1285":1,"1294":1,"1297":1,"1298":1,"1308":1,"1319":1,"1326":1,"1327":1,"1328":1,"1353":1,"1359":1,"1369":1,"1375":3,"1389":1,"1400":1,"1404":1,"1407":4,"1414":1,"1425":1,"1440":1,"1456":1,"1458":4,"1459":1,"1460":1,"1464":3,"1465":2,"1466":7,"1467":1,"1471":1,"1472":1,"1478":1,"1479":1,"1484":2,"1486":2,"1487":1,"1494":1,"1497":3,"1504":1,"1511":1,"1512":1,"1516":1,"1520":1,"1528":1,"1538":1,"1539":1,"1540":1,"1572":1,"1573":1,"1583":1,"1584":1,"1585":1,"1588":3,"1594":2,"1596":1,"1599":1,"1616":1,"1621":1,"1622":2,"1634":1,"1650":1,"1655":1,"1657":1,"1658":1,"1661":2,"1692":1,"1693":1,"1695":1,"1733":1,"1735":1,"1762":1,"1784":2,"1788":1,"1789":1,"1790":1,"1802":1,"1803":1,"1823":1,"1839":1,"1844":2,"1915":1,"1916":1,"1926":1,"1937":1,"1942":2,"1946":1,"1958":1,"1960":1,"1961":1,"1962":1,"1963":1,"1967":1,"1972":1,"1973":1,"1974":1,"1975":1,"1976":2,"1991":1,"2002":1,"2010":1,"2045":1,"2048":1,"2059":1,"2065":1,"2066":2,"2067":1,"2157":1,"2159":1,"2160":1,"2172":1,"2174":1,"2177":1,"2185":1,"2186":1,"2198":1,"2208":1,"2213":1,"2219":1,"2220":1,"2224":1,"2261":2,"2264":1,"2265":2,"2266":1,"2267":2,"2269":1,"2270":1,"2271":1,"2273":1,"2277":1,"2286":2,"2287":1,"2288":1,"2289":1,"2290":1,"2305":3,"2310":3,"2311":2,"2312":1,"2313":1,"2315":1,"2319":1,"2320":1,"2321":1,"2322":4,"2323":1,"2324":3,"2357":1,"2358":1,"2369":1,"2377":1,"2384":1,"2398":3,"2410":2,"2424":1,"2457":1,"2496":1,"2569":1,"2578":1,"2579":1,"2588":4,"2600":1,"2601":2,"2627":2,"2630":2,"2632":3,"2633":5,"2671":1,"2700":1,"2703":1,"2721":1,"2746":1,"2747":1,"2750":4,"2752":1,"2757":1,"2782":1,"2787":2,"2789":1,"2878":1,"2879":1,"2882":1,"2883":2,"2887":1,"2903":2,"2905":1,"2912":2,"2913":2,"2914":3,"2921":3,"2923":1,"2937":2,"2939":1,"2941":3,"2942":7}}],["adds",{"2":{"13":1,"35":1,"49":2,"50":1,"74":1,"107":1,"114":1,"173":1,"210":1,"229":1,"249":1,"277":1,"297":1,"441":1,"450":1,"563":1,"1466":1,"1487":1,"1532":1,"1621":1,"2270":1,"2286":1,"2302":1,"2376":1,"2633":1,"2676":1,"2941":1}}],["agin",{"2":{"2503":1,"2541":1}}],["age",{"2":{"1409":1}}],["ag",{"2":{"1375":1,"1479":4,"1480":8,"2519":7,"2548":7}}],["agaim",{"2":{"649":1}}],["again",{"2":{"114":1,"134":1,"160":1,"396":1,"594":1,"684":2,"1317":1,"1416":2,"1456":1,"1477":1,"1492":1,"1520":1,"1533":1,"1612":1,"1613":1,"1636":1,"1655":2,"1756":2,"1758":1,"1770":1,"1776":1,"1779":1,"1780":1,"1822":1,"1824":1,"1993":1,"2164":1,"2167":2,"2184":1,"2268":1,"2302":1,"2303":1,"2380":1,"2409":1,"2459":1,"2501":1,"2503":4,"2514":1,"2541":4,"2620":1,"2643":1,"2721":1}}],["against",{"2":{"26":1,"49":1,"51":1,"134":1,"176":1,"251":1,"263":1,"265":2,"275":1,"399":1,"405":1,"406":1,"457":2,"492":1,"587":1,"746":1,"1522":1,"2407":1,"2420":1,"2495":1,"2560":1,"2627":1,"2718":1,"2723":1,"2840":1,"2895":1,"2932":1}}],["agreed",{"2":{"215":1,"2685":1}}],["agnostic",{"0":{"1431":1},"1":{"1432":1,"1433":1},"2":{"17":1,"114":1,"757":1,"1401":1,"1433":1}}],["abab",{"0":{"2910":1}}],["abba",{"0":{"2909":1}}],["abbreviate",{"2":{"517":1}}],["abbreviations",{"2":{"517":1,"1587":1}}],["abbreviation",{"2":{"517":1,"2694":1}}],["abuse",{"2":{"2559":1,"2721":1}}],["abuser",{"2":{"619":1}}],["ab5",{"2":{"1919":1,"2520":1}}],["ab4",{"2":{"1919":1,"2520":1}}],["ab3",{"2":{"1919":1,"2520":1}}],["ab375d3",{"2":{"74":1}}],["ab2",{"2":{"1919":1,"2520":1}}],["ab1",{"2":{"1919":1,"2520":1}}],["ab",{"2":{"1599":4,"1611":5,"1616":1,"1919":1,"2520":1,"2908":6,"2909":1,"2910":4}}],["abc",{"2":{"317":1}}],["abcd",{"2":{"266":1,"1329":2}}],["abcminiuser",{"2":{"12":1}}],["abort",{"2":{"2627":2}}],["aborted",{"2":{"765":1}}],["above",{"2":{"228":1,"233":1,"266":1,"276":1,"307":2,"333":1,"373":1,"405":1,"408":1,"423":1,"489":1,"511":1,"515":1,"587":1,"589":1,"617":1,"645":1,"654":1,"655":1,"670":1,"756":1,"760":2,"1283":1,"1327":1,"1330":1,"1346":1,"1362":1,"1404":1,"1407":5,"1416":1,"1419":1,"1444":1,"1466":1,"1497":2,"1532":4,"1545":1,"1606":1,"1624":2,"1675":1,"1823":1,"1828":1,"1830":1,"1920":1,"1964":1,"1969":1,"1977":1,"1980":1,"1982":1,"2004":1,"2006":1,"2159":1,"2168":1,"2183":1,"2184":1,"2191":1,"2253":2,"2268":1,"2273":1,"2296":1,"2302":1,"2311":1,"2312":4,"2322":1,"2324":1,"2376":1,"2409":1,"2416":2,"2447":1,"2498":1,"2501":1,"2552":1,"2560":1,"2563":1,"2564":1,"2576":1,"2601":1,"2605":1,"2619":1,"2622":1,"2664":1,"2676":2,"2687":1,"2707":1,"2714":1,"2721":1,"2722":1,"2749":2,"2750":4,"2761":1,"2762":1,"2905":1,"2911":3,"2912":3,"2913":1,"2915":1,"2916":1,"2920":1,"2923":1,"2930":1,"2931":1,"2932":1}}],["about",{"2":{"49":1,"50":1,"93":1,"110":1,"114":1,"145":1,"176":1,"240":1,"251":1,"371":1,"403":1,"408":1,"435":2,"538":2,"550":1,"568":6,"569":1,"576":1,"608":2,"611":2,"617":1,"618":1,"624":2,"630":1,"642":1,"663":1,"763":1,"1311":1,"1318":1,"1339":1,"1341":1,"1376":1,"1416":1,"1531":1,"1624":1,"1655":1,"1929":1,"1942":2,"1955":2,"1968":1,"2170":1,"2179":1,"2254":1,"2268":6,"2293":3,"2398":1,"2415":1,"2424":1,"2453":1,"2503":1,"2556":1,"2560":1,"2562":2,"2573":1,"2603":1,"2672":1,"2676":1,"2721":2,"2751":1,"2844":2,"2845":1,"2899":1,"2900":1,"2924":1,"2932":2}}],["abstracted",{"2":{"2677":1}}],["abstracting",{"2":{"2411":2}}],["abstraction",{"2":{"249":1,"277":1,"757":1,"759":1,"1571":1,"1839":1,"2059":1,"2685":1,"2719":1,"2817":1}}],["abstractions",{"2":{"244":1,"1401":1,"2719":2}}],["absence",{"2":{"714":1,"1190":1}}],["absent",{"2":{"431":2,"2864":1,"2870":1,"2871":1}}],["absinthe",{"2":{"144":2}}],["absolutely",{"2":{"2424":1,"2721":1}}],["absolute",{"0":{"1969":1,"1970":1},"2":{"100":1,"114":1,"461":1,"1633":1,"1647":1,"1968":4,"2215":1,"2495":1,"2862":4}}],["abelx",{"2":{"134":1}}],["ability",{"2":{"49":2,"65":1,"93":1,"100":1,"114":1,"131":1,"134":1,"138":1,"145":1,"164":1,"173":1,"174":1,"176":1,"199":1,"285":1,"563":1,"653":1,"765":1,"1198":1,"1377":2,"1415":1,"1656":1,"2171":1,"2270":1,"2271":1,"2676":1,"2728":1,"2894":1,"2895":1,"2914":3}}],["able",{"2":{"23":1,"50":1,"114":1,"138":2,"228":1,"308":1,"406":1,"498":1,"594":1,"599":1,"611":1,"617":1,"624":1,"627":1,"684":1,"1317":1,"1406":1,"1410":1,"1429":1,"1434":1,"1457":1,"1535":1,"1675":2,"1759":1,"1760":1,"1777":1,"1789":1,"1845":1,"1913":1,"1987":1,"2041":1,"2050":1,"2068":1,"2172":1,"2201":1,"2287":1,"2291":1,"2298":1,"2303":1,"2312":1,"2374":1,"2375":1,"2393":1,"2395":1,"2397":1,"2398":1,"2466":1,"2605":1,"2612":1,"2622":1,"2648":1,"2649":1,"2676":1,"2687":2,"2688":1,"2749":1,"2786":1,"2877":1,"2899":1,"2901":1,"2939":1}}],["abnt2",{"2":{"5":1,"2707":1,"2880":2}}],["acl2",{"2":{"1927":1,"1931":7,"1932":2,"2521":1}}],["acl1",{"2":{"1927":1,"1931":8,"1932":2,"2521":1}}],["acl0",{"2":{"1927":1,"1931":7,"1932":2,"2521":1}}],["acm=y",{"2":{"1314":1}}],["acm",{"2":{"1314":1}}],["acknowledge",{"2":{"563":1,"2184":1}}],["acknowledgment",{"2":{"312":1}}],["achievable",{"2":{"2894":1}}],["achieved",{"2":{"1828":1,"1955":1,"2750":1,"2877":1}}],["achieve",{"2":{"1771":1,"2204":1,"2310":1,"2416":1,"2418":1,"2749":1}}],["achordion",{"2":{"294":1}}],["acheron",{"2":{"222":2}}],["acquire",{"2":{"277":1,"2401":1}}],["ac",{"2":{"236":1,"1440":1,"1520":1,"1523":1,"1524":3,"2225":1,"2507":3,"2918":1}}],["acid",{"2":{"222":1}}],["acid3",{"2":{"154":13,"160":2,"308":1}}],["acr60",{"0":{"256":1},"1":{"257":1,"258":1,"259":1,"260":1},"2":{"154":2,"256":1,"266":1}}],["across",{"2":{"31":1,"34":1,"118":1,"128":1,"148":1,"149":1,"167":1,"246":1,"262":1,"283":1,"285":1,"757":1,"1532":1,"1696":1,"2318":1,"2912":1}}],["accident",{"2":{"2905":1}}],["accidental",{"2":{"246":1,"289":1,"1449":1,"1602":1,"1608":1,"2915":1,"2918":1}}],["accidentally",{"2":{"194":1,"198":1,"684":1,"2050":1}}],["accumulates",{"2":{"2184":1}}],["accumulate",{"2":{"1987":1}}],["accumulated",{"2":{"1987":13}}],["accuracy",{"2":{"1932":1,"2284":1}}],["accurately",{"2":{"1840":1,"2060":1,"2710":1}}],["accurate",{"2":{"10":1,"1193":1,"1196":1,"1285":1,"2372":1,"2459":1}}],["accompanying",{"2":{"2561":1,"2722":1}}],["accompanied",{"2":{"118":1,"1495":1,"2897":1}}],["accomplish",{"2":{"1385":1,"1417":1,"2303":1,"2566":1,"2573":1}}],["accomplished",{"2":{"597":1}}],["accommodate",{"2":{"160":1,"1480":1,"1603":1}}],["accounted",{"2":{"1283":1}}],["account",{"2":{"160":1,"210":1,"222":1,"302":1,"468":1,"611":2,"2398":2,"2454":1,"2499":1,"2585":1,"2592":2,"2595":1,"2625":2}}],["according",{"2":{"134":2,"695":1,"696":1,"2009":1,"2064":1,"2448":1,"2599":1,"2609":1,"2919":1,"2920":1}}],["accordingly",{"2":{"126":1,"208":1,"334":1,"920":1,"1091":1,"1125":1,"2312":1,"2447":1,"2689":1,"2702":1}}],["accented",{"2":{"2879":1}}],["accel",{"2":{"1931":3}}],["accelerating",{"2":{"1930":1}}],["acceleration",{"2":{"48":2,"1927":6,"1928":1,"1929":4,"1930":3,"1931":1,"1932":4,"1933":1,"1934":4,"2046":1,"2521":6}}],["accelerate",{"2":{"2421":1,"2933":1}}],["accelerates",{"2":{"1928":4,"1933":1}}],["accelerated",{"0":{"1929":1},"2":{"1928":1,"1929":1,"1930":5,"1932":2,"1933":1}}],["accel2",{"2":{"231":1}}],["accessor",{"2":{"2750":2}}],["accessible",{"2":{"1345":1,"2424":1}}],["accessing",{"2":{"323":1,"373":1,"1375":1,"2619":1,"2750":2}}],["accessed",{"2":{"558":1,"1375":1,"1822":1}}],["accesses",{"2":{"114":1,"1824":1}}],["access",{"2":{"210":1,"240":1,"308":1,"323":1,"384":1,"487":2,"490":1,"493":4,"498":1,"536":1,"654":1,"668":2,"690":1,"757":1,"1329":1,"1406":1,"1434":1,"1628":1,"1657":1,"1773":1,"1822":1,"1917":1,"2410":4,"2548":1,"2595":1,"2601":2,"2669":1,"2673":2,"2721":1,"2786":2,"2905":2}}],["acceptable",{"2":{"2719":1,"2721":1}}],["acceptance",{"2":{"397":1}}],["accepts",{"2":{"396":1,"431":1,"461":1,"579":1,"2748":1,"2750":2}}],["accepted",{"2":{"212":1,"265":1,"397":1,"607":1,"613":1,"1457":1,"2562":1,"2720":1,"2721":3}}],["accepting",{"2":{"199":1,"201":1,"224":1,"606":1,"1340":1,"2690":1,"2691":1}}],["accept",{"2":{"173":1,"510":1,"1416":1,"1717":1,"2221":1,"2398":1,"2411":1,"2451":1,"2455":1,"2495":1,"2721":1}}],["actor",{"2":{"2600":3}}],["acto",{"2":{"2273":1}}],["acts",{"2":{"1828":2,"2516":1,"2565":1,"2827":1,"2917":1}}],["act",{"2":{"283":3,"743":1,"1375":1,"1587":1,"2002":1,"2159":1,"2309":1,"2459":1,"2559":1,"2632":1}}],["actuators",{"2":{"1679":1}}],["actuated",{"2":{"1675":4,"2427":1}}],["actuation",{"2":{"236":1,"1675":1}}],["actual",{"2":{"360":1,"391":1,"628":1,"630":1,"649":1,"1368":1,"1377":1,"1835":1,"1941":1,"1949":1,"1968":1,"2050":1,"2200":1,"2279":1,"2293":1,"2469":1,"2471":1,"2475":1,"2489":1,"2875":1,"2929":1,"2935":1}}],["actually",{"2":{"13":1,"28":1,"51":1,"83":1,"182":1,"453":1,"541":1,"584":1,"613":1,"692":1,"747":1,"751":1,"1335":1,"1342":1,"1347":1,"1353":1,"1358":1,"1409":1,"1417":1,"1464":1,"1465":1,"1523":1,"1955":1,"1983":1,"2218":1,"2221":1,"2258":1,"2259":1,"2293":1,"2310":1,"2427":2,"2469":1,"2472":2,"2496":1,"2689":1,"2775":1,"2783":1,"2877":2,"2905":1,"2924":1,"2942":1}}],["activating",{"2":{"246":1,"328":1,"1416":1,"1776":3,"1824":1,"1992":1,"2046":1,"2696":1,"2914":1}}],["activation",{"0":{"246":1,"1607":1,"1778":1,"2007":1},"2":{"137":1,"246":1,"289":1,"328":1,"1377":1,"1378":1,"1449":1,"1588":1,"1612":1,"1675":2,"1773":1,"1775":1,"1776":3,"1778":1,"1996":2,"2001":2,"2007":6,"2008":1,"2217":2,"2918":1}}],["activates",{"2":{"1416":6,"1421":1,"1440":1,"1595":1,"1764":1,"1773":1,"1978":1,"2313":1,"2556":1,"2700":1}}],["activate",{"0":{"1993":1},"2":{"194":2,"222":1,"613":1,"1192":1,"1195":1,"1198":1,"1200":2,"1201":2,"1309":1,"1416":1,"1421":1,"1467":1,"1587":1,"1588":6,"1589":1,"1598":2,"1605":1,"1606":2,"1607":1,"1609":1,"1611":1,"1619":1,"1684":2,"1760":1,"1766":1,"1770":2,"1775":3,"1776":1,"1778":4,"1992":3,"2007":1,"2217":3,"2287":1,"2324":1,"2557":1,"2565":1,"2644":1,"2700":1,"2786":1,"2818":1,"2854":2,"2905":1,"2914":1}}],["activated",{"2":{"73":1,"236":1,"1416":4,"1421":1,"1440":1,"1479":1,"1480":2,"1540":1,"1589":1,"1603":1,"1610":1,"1611":1,"1675":1,"1775":3,"1778":1,"1931":1,"2007":1,"2186":1,"2459":1,"2700":1,"2702":1}}],["actively",{"2":{"2558":1,"2559":1}}],["active",{"0":{"1801":1,"2005":1,"2353":1},"1":{"2354":1},"2":{"105":8,"160":1,"191":1,"199":1,"249":1,"312":2,"320":1,"594":1,"1375":3,"1377":2,"1378":2,"1416":5,"1419":1,"1421":2,"1422":2,"1426":1,"1445":1,"1456":5,"1478":1,"1527":2,"1587":1,"1592":1,"1594":1,"1595":3,"1613":1,"1621":1,"1651":7,"1672":4,"1675":3,"1681":1,"1684":1,"1775":3,"1801":1,"1824":1,"1931":2,"1978":3,"1987":2,"1992":1,"1996":1,"1999":1,"2001":2,"2004":2,"2007":2,"2008":1,"2156":1,"2160":1,"2181":1,"2182":4,"2216":1,"2217":4,"2269":1,"2271":2,"2302":1,"2303":2,"2312":3,"2328":1,"2353":1,"2354":1,"2516":1,"2552":2,"2557":1,"2569":1,"2643":1,"2645":1,"2817":1,"2923":1}}],["activity",{"2":{"74":2,"222":2,"249":1,"645":5,"2207":1,"2211":2,"2269":3,"2661":1,"2864":1,"2871":1,"2873":2}}],["acting",{"2":{"14":1,"2791":1}}],["actioned",{"2":{"16":1}}],["actions",{"0":{"3":1,"7":1,"15":1,"1927":1,"2590":1},"2":{"3":2,"7":3,"15":2,"16":1,"38":1,"114":2,"134":2,"247":1,"320":1,"396":1,"403":1,"411":1,"572":1,"577":1,"578":1,"1350":1,"1407":1,"1409":1,"1438":1,"1545":1,"1596":1,"1599":1,"1760":2,"1775":2,"1782":1,"1925":1,"1927":1,"1938":1,"2206":1,"2302":3,"2305":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":3,"2467":1,"2551":1,"2583":1,"2584":1,"2588":1,"2590":1,"2592":1,"2600":3,"2602":1,"2603":1,"2656":1,"2744":1,"2906":1,"2921":1,"2923":3}}],["action",{"0":{"3":1,"7":1,"15":1,"40":1,"53":1,"67":1,"72":1,"85":1,"101":1,"121":1,"140":1,"150":1,"151":1,"165":1,"180":1,"193":1,"204":1,"216":1,"225":1,"239":1,"252":1,"269":1,"280":1,"290":1,"299":1,"310":1,"321":1,"2295":1,"2600":1},"1":{"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"54":1,"55":1,"56":1,"57":1,"58":1,"59":1,"60":1,"86":1,"87":1,"88":1,"89":1,"90":1,"102":1,"103":1,"104":1,"105":1,"122":1,"123":1,"124":1,"125":1,"126":1,"127":1,"128":1,"141":1,"142":1,"143":1,"144":1,"151":1,"152":1,"153":1,"154":1,"166":1,"167":1,"168":1,"169":1,"170":1,"181":1,"182":1,"183":1,"184":1,"185":1,"186":1,"194":1,"195":1,"196":1,"197":1,"205":1,"206":1,"207":1,"208":1,"209":1,"217":1,"218":1,"226":1,"240":1,"241":1,"253":1,"254":1,"255":1,"256":1,"257":1,"258":1,"259":1,"260":1,"270":1,"271":1,"272":1,"273":1,"281":1,"291":1,"300":1,"311":1,"312":1,"322":1,"323":1,"324":1,"325":1,"2296":1,"2297":1,"2298":1,"2299":1},"2":{"16":1,"38":9,"49":1,"75":2,"120":7,"151":1,"160":2,"199":6,"214":1,"222":1,"317":1,"323":3,"324":6,"325":4,"347":1,"408":3,"485":1,"560":3,"562":1,"563":1,"577":1,"586":1,"603":1,"684":1,"1421":1,"1435":7,"1438":9,"1466":1,"1512":2,"1527":3,"1596":1,"1599":3,"1616":2,"1759":1,"1773":1,"1775":2,"1781":1,"1782":2,"1846":2,"1928":1,"1929":1,"1931":4,"2069":4,"2156":1,"2159":1,"2161":1,"2175":3,"2184":1,"2295":2,"2302":12,"2303":2,"2305":2,"2307":2,"2308":4,"2309":7,"2310":6,"2311":2,"2312":4,"2550":5,"2555":1,"2591":1,"2671":1,"2824":1,"2882":2,"2883":2,"2885":1,"2906":6,"2912":7,"2913":5,"2921":2,"2933":1}}],["averages",{"2":{"2724":1}}],["average",{"2":{"2371":1,"2372":2,"2903":1}}],["avail",{"2":{"2605":1}}],["availability",{"2":{"681":1,"2721":1}}],["available",{"0":{"1278":1,"1405":1,"2433":1},"1":{"1279":1,"2434":1,"2435":1,"2436":1,"2437":1,"2438":1,"2439":1},"2":{"10":1,"73":1,"83":1,"124":2,"138":1,"145":1,"164":1,"186":1,"189":1,"201":1,"213":1,"221":1,"222":1,"232":2,"235":1,"283":1,"285":1,"288":2,"298":1,"363":1,"371":1,"373":1,"405":1,"428":1,"432":1,"442":1,"467":3,"486":1,"508":1,"554":1,"568":4,"573":1,"576":1,"583":1,"613":1,"663":1,"666":1,"681":1,"698":1,"711":1,"713":1,"746":1,"747":1,"751":2,"829":1,"1189":1,"1193":1,"1198":1,"1202":1,"1208":1,"1209":1,"1210":1,"1263":1,"1279":1,"1308":1,"1320":1,"1323":1,"1340":1,"1342":2,"1345":1,"1386":1,"1392":1,"1409":1,"1458":1,"1465":1,"1478":1,"1479":2,"1483":1,"1484":2,"1487":1,"1526":1,"1600":1,"1620":1,"1672":2,"1767":1,"1843":1,"1936":1,"1977":1,"1980":1,"1982":1,"2030":1,"2037":1,"2041":1,"2063":1,"2203":1,"2290":1,"2370":2,"2371":2,"2375":1,"2376":1,"2378":1,"2379":1,"2380":1,"2381":1,"2384":1,"2385":1,"2387":1,"2390":1,"2392":1,"2393":2,"2395":2,"2397":2,"2410":2,"2420":1,"2426":1,"2443":1,"2445":1,"2446":3,"2473":1,"2475":1,"2494":1,"2502":1,"2509":2,"2560":1,"2561":2,"2606":1,"2614":1,"2621":1,"2657":1,"2680":1,"2704":1,"2709":1,"2716":1,"2717":1,"2721":1,"2729":1,"2738":1,"2741":1,"2742":1,"2750":6,"2878":1,"2879":1}}],["avalon",{"2":{"222":1}}],["avoids",{"2":{"1425":1,"2591":1}}],["avoided",{"0":{"2660":1},"2":{"529":1,"530":1,"535":1,"674":1,"2562":1,"2660":3,"2664":1,"2750":1}}],["avoiding",{"0":{"1522":1},"2":{"338":3,"397":1,"1421":1}}],["avoid",{"0":{"518":1},"2":{"34":1,"114":2,"176":1,"191":1,"195":1,"271":1,"289":1,"308":1,"492":1,"514":1,"526":1,"534":1,"613":1,"663":1,"673":1,"1329":1,"1406":1,"1418":1,"1422":2,"1479":1,"1552":1,"1587":1,"1662":1,"1696":1,"1956":1,"1983":1,"2001":1,"2005":2,"2050":1,"2372":1,"2424":3,"2591":1,"2651":1,"2915":1,"2918":1,"2929":1}}],["avrisp",{"2":{"2477":1,"2481":1,"2495":1}}],["avr109",{"2":{"2379":3}}],["avr8",{"2":{"571":1}}],["avrdudess",{"2":{"2379":1,"2382":1}}],["avrdude",{"2":{"236":1,"566":2,"1466":1,"2266":3,"2379":3,"2380":6,"2382":2,"2410":1,"2477":2,"2479":2,"2481":2,"2483":3,"2485":2,"2487":2,"2489":2,"2495":19,"2496":2}}],["avrs",{"2":{"145":1,"2376":1,"2882":1}}],["avr",{"0":{"123":1,"544":1,"571":1,"690":1,"695":1,"712":1,"764":1,"1244":1,"1265":1,"1468":1,"1546":1,"2034":1,"2434":1,"2796":1,"2881":1},"1":{"1469":1,"1547":1,"1548":1,"2882":1,"2883":1,"2884":1,"2885":1,"2886":1,"2887":1},"2":{"2":1,"28":2,"74":1,"111":1,"113":1,"114":5,"123":2,"130":1,"134":3,"138":2,"145":4,"160":3,"166":1,"172":1,"176":5,"191":2,"199":1,"203":2,"210":2,"222":1,"266":2,"308":1,"543":3,"568":2,"609":1,"617":1,"687":2,"712":1,"743":2,"758":2,"759":2,"1189":1,"1245":1,"1287":2,"1365":1,"1389":1,"1390":1,"1734":1,"1945":4,"1955":1,"1956":2,"2254":2,"2255":1,"2266":3,"2268":1,"2367":1,"2368":1,"2375":1,"2382":1,"2383":1,"2411":1,"2434":1,"2458":1,"2475":1,"2483":1,"2489":1,"2495":2,"2496":3,"2646":1,"2650":1,"2655":1,"2700":1,"2746":1,"2796":1,"2811":1,"2828":1,"2837":1,"2881":2,"2894":1,"2900":1,"2927":2}}],["au",{"2":{"1479":3,"1483":2,"1489":5,"2505":5}}],["audience",{"2":{"527":1}}],["audio",{"0":{"28":1,"203":1,"711":1,"1366":1,"1467":1,"1480":1,"1482":1,"1487":1,"1489":1,"2321":1,"2505":1,"2849":1,"2884":1},"1":{"712":1,"713":1,"714":1,"715":1,"716":1,"717":1,"718":1,"719":1,"720":1,"1468":1,"1469":1,"1470":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"1478":1,"1479":1,"1480":1,"1481":1,"1482":1,"1483":1,"1484":1,"1485":1,"1486":1,"1487":1,"1488":1,"1489":1,"2323":1},"2":{"28":6,"70":1,"74":1,"75":1,"105":4,"111":1,"112":2,"114":1,"133":1,"134":1,"160":1,"188":1,"191":3,"203":1,"210":6,"231":4,"236":1,"249":2,"266":3,"294":1,"317":1,"333":1,"559":26,"572":3,"649":1,"711":2,"713":3,"714":4,"715":1,"716":12,"717":4,"718":5,"719":5,"1366":1,"1389":1,"1402":1,"1438":1,"1459":1,"1467":1,"1468":10,"1469":2,"1470":1,"1471":6,"1472":3,"1473":3,"1474":7,"1475":2,"1476":4,"1477":5,"1478":3,"1479":17,"1480":10,"1481":3,"1482":2,"1483":8,"1487":18,"1489":19,"1529":2,"1548":1,"1651":4,"1791":3,"1833":2,"2220":1,"2321":1,"2411":4,"2503":3,"2505":20,"2542":3,"2692":1,"2788":2,"2791":1,"2849":5,"2883":1,"2884":1,"2900":1,"2933":1}}],["austin",{"2":{"222":1}}],["aurora",{"2":{"191":2}}],["authentication",{"0":{"2595":1}}],["authenticated",{"2":{"584":1,"2595":1}}],["authenticate",{"2":{"312":1}}],["author",{"2":{"1622":1,"2457":1,"2560":3,"2719":1}}],["authored",{"2":{"38":1}}],["authorship",{"2":{"1461":1}}],["authors",{"2":{"32":1,"1622":1,"1623":1}}],["autoload",{"2":{"507":1}}],["auto+retro",{"2":{"236":1}}],["autocorrected",{"2":{"1523":1,"1529":1}}],["autocorrection",{"0":{"1520":1},"2":{"1520":1,"1522":1,"1523":1,"1528":1,"1529":3,"1531":1,"1532":1}}],["autocorrect",{"0":{"179":1,"1518":1,"1521":1,"1523":1,"1526":1,"1527":1,"1528":1,"1529":1,"1530":1,"2507":1},"1":{"1519":1,"1520":1,"1521":1,"1522":2,"1523":1,"1524":2,"1525":1,"1526":1,"1527":2,"1528":1,"1529":2,"1530":1,"1531":1,"1532":1,"1533":1,"1534":1},"2":{"179":2,"188":1,"191":2,"210":2,"222":1,"328":1,"1520":1,"1521":6,"1522":1,"1523":2,"1524":6,"1526":6,"1527":6,"1528":1,"1529":6,"1530":9,"1531":1,"1532":1,"2507":7}}],["automation",{"2":{"2646":1,"2666":1}}],["automatically",{"2":{"173":1,"212":1,"246":1,"403":1,"420":1,"427":1,"428":1,"433":1,"435":1,"438":1,"440":1,"443":1,"458":1,"492":1,"493":1,"502":2,"511":2,"615":1,"617":1,"654":1,"683":1,"700":1,"712":1,"722":1,"751":2,"762":1,"798":1,"827":1,"853":1,"885":1,"917":1,"952":1,"986":1,"1020":1,"1054":1,"1088":1,"1122":1,"1156":1,"1212":1,"1243":1,"1264":1,"1281":1,"1282":1,"1285":1,"1457":3,"1458":1,"1466":1,"1479":2,"1506":1,"1518":1,"1519":1,"1521":1,"1587":1,"1592":1,"1614":2,"1625":1,"1627":2,"1846":1,"1937":1,"1962":1,"1992":1,"2009":1,"2046":1,"2064":1,"2065":1,"2069":1,"2191":1,"2218":1,"2272":1,"2286":2,"2324":1,"2370":1,"2375":1,"2376":2,"2377":1,"2379":1,"2381":1,"2383":1,"2384":2,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2401":1,"2409":1,"2449":1,"2489":1,"2509":1,"2583":1,"2590":1,"2602":1,"2749":1,"2854":1}}],["automatic",{"0":{"246":1,"1992":1,"2207":1},"1":{"1993":1,"1994":1,"1995":1,"1996":1,"1997":1,"1998":1,"1999":1,"2000":1,"2001":1,"2002":1,"2003":1,"2004":1,"2005":1,"2006":1,"2007":1,"2008":1},"2":{"134":1,"190":2,"191":1,"246":1,"751":1,"1389":1,"1390":1,"1493":1,"2008":1}}],["automata02",{"2":{"210":1}}],["automate",{"2":{"199":1}}],["automated",{"2":{"10":1,"198":1,"663":1,"1385":1,"2840":1}}],["autoshifted",{"2":{"1504":1}}],["autoshift",{"2":{"93":1,"191":1,"1497":4,"1511":3}}],["auto",{"0":{"511":1,"1490":1,"1491":1,"1493":1,"1494":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":2,"1507":1,"1508":1,"1509":1,"1510":1,"1514":1,"2001":1,"2004":1,"2006":1,"2008":1,"2506":1},"1":{"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":2,"1498":2,"1499":2,"1500":2,"1501":2,"1502":2,"1503":2,"1504":2,"1505":2,"1506":2,"1507":2,"1508":2,"1509":2,"1510":2,"1511":1,"1512":1,"1513":1,"1514":1,"1515":2,"1516":2,"1517":2},"2":{"49":1,"63":1,"134":3,"176":1,"188":1,"191":1,"195":3,"210":2,"222":3,"246":1,"249":1,"266":1,"285":1,"751":1,"1491":1,"1492":14,"1493":2,"1494":2,"1495":4,"1496":3,"1497":7,"1498":1,"1499":2,"1500":1,"1501":1,"1502":1,"1503":1,"1504":15,"1506":1,"1510":1,"1511":4,"1512":3,"1514":1,"1515":12,"1516":4,"1517":1,"1529":1,"1962":2,"1987":3,"1992":1,"1993":2,"1994":10,"1995":1,"1996":7,"2000":1,"2001":33,"2002":7,"2004":10,"2005":11,"2006":10,"2007":3,"2008":5,"2370":2,"2506":13,"2509":2,"2627":1,"2676":1,"2914":5,"2922":2,"2933":1}}],["august",{"0":{"96":1,"161":1,"267":1},"1":{"97":1,"98":1,"99":1,"100":1,"101":1,"102":1,"103":1,"104":1,"105":1,"106":1,"107":1,"108":1,"109":1,"110":1,"111":1,"112":1,"113":1,"114":1,"162":1,"163":1,"164":1,"165":1,"166":1,"167":1,"168":1,"169":1,"170":1,"171":1,"172":1,"173":1,"174":1,"175":1,"176":1,"268":1,"269":1,"270":1,"271":1,"272":1,"273":1,"274":1,"275":1,"276":1,"277":1},"2":{"254":1,"268":1,"307":1,"2805":1}}],["aug",{"0":{"0":1,"39":1,"200":1,"309":1},"1":{"1":1,"2":1,"3":1,"4":1,"5":1,"6":1,"7":1,"8":1,"40":1,"41":1,"42":1,"43":1,"44":1,"45":1,"46":1,"47":1,"48":1,"49":1,"50":1,"51":1,"201":1,"202":1,"203":1,"204":1,"205":1,"206":1,"207":1,"208":1,"209":1,"210":1,"310":1,"311":1,"312":1,"313":1,"314":1,"315":1,"316":1,"317":1},"2":{"88":1,"104":1,"127":1,"170":1,"371":2,"394":1,"407":7}}],["afnor",{"2":{"2880":3}}],["af2",{"2":{"1550":1}}],["aforementioned",{"2":{"1417":1,"1780":1}}],["africa",{"2":{"1343":1}}],["afpp",{"2":{"1210":7}}],["afio",{"2":{"1210":1}}],["af4",{"2":{"1209":4}}],["af0",{"2":{"1209":4}}],["af1",{"2":{"1209":10}}],["af7",{"2":{"1208":22}}],["affecting",{"2":{"1375":4,"2173":1,"2427":1,"2453":1,"2722":1}}],["affect",{"2":{"209":1,"233":1,"492":2,"617":1,"2722":2,"2776":1,"2905":1,"2922":1}}],["affects",{"2":{"45":1,"49":1,"244":1,"279":1,"1317":1,"1410":1,"2302":1,"2747":1}}],["affected",{"2":{"3":1,"4":1,"10":1,"14":1,"15":1,"209":1,"254":1,"1660":1,"1675":1,"2270":1,"2683":1,"2912":2,"2913":1,"2918":1}}],["afterwards",{"2":{"213":1,"1345":1,"2421":1,"2621":1}}],["aftermath",{"2":{"176":1}}],["after",{"0":{"25":1,"325":1,"2307":1},"2":{"10":1,"11":1,"23":1,"24":1,"25":4,"49":1,"90":1,"105":1,"114":2,"134":4,"142":1,"160":1,"176":4,"191":3,"195":1,"199":5,"210":1,"222":2,"255":2,"259":1,"263":1,"294":1,"371":1,"380":1,"396":1,"397":1,"400":1,"401":1,"405":1,"406":3,"510":1,"542":1,"559":2,"562":2,"567":1,"570":2,"572":1,"611":1,"616":1,"627":1,"632":1,"635":1,"639":1,"645":2,"653":1,"656":1,"681":1,"704":1,"717":1,"732":1,"751":1,"760":1,"810":1,"814":1,"818":1,"820":1,"838":1,"842":1,"846":1,"848":1,"868":1,"872":1,"876":1,"878":1,"900":1,"904":1,"908":1,"910":1,"935":1,"939":1,"943":1,"945":1,"969":1,"973":1,"977":1,"979":1,"1003":1,"1007":1,"1011":1,"1013":1,"1037":1,"1041":1,"1045":1,"1047":1,"1071":1,"1075":1,"1079":1,"1081":1,"1105":1,"1109":1,"1113":1,"1115":1,"1139":1,"1143":1,"1147":1,"1149":1,"1173":1,"1177":1,"1181":1,"1183":1,"1226":1,"1230":1,"1234":1,"1236":1,"1303":1,"1317":1,"1324":1,"1340":1,"1351":1,"1362":1,"1373":1,"1378":3,"1406":1,"1407":2,"1414":1,"1427":1,"1441":4,"1458":1,"1484":1,"1492":1,"1521":1,"1522":1,"1532":3,"1611":1,"1621":1,"1628":1,"1680":1,"1770":1,"1776":1,"1780":2,"1788":1,"1789":2,"1825":1,"1844":1,"1902":1,"1904":1,"1906":1,"1909":1,"1928":1,"1931":1,"1933":2,"1937":1,"1941":1,"1951":2,"1978":1,"1992":1,"1996":2,"2037":1,"2039":1,"2041":1,"2066":1,"2146":1,"2148":1,"2150":1,"2153":1,"2156":1,"2171":1,"2182":1,"2184":1,"2207":1,"2268":2,"2281":1,"2291":1,"2293":1,"2302":3,"2303":2,"2310":1,"2380":1,"2398":1,"2410":1,"2418":1,"2421":3,"2424":1,"2425":1,"2459":1,"2501":1,"2548":1,"2551":1,"2555":1,"2587":1,"2632":1,"2633":1,"2643":2,"2645":1,"2653":1,"2678":1,"2679":1,"2680":1,"2687":1,"2710":1,"2719":1,"2722":1,"2723":1,"2747":1,"2750":1,"2754":1,"2761":1,"2762":1,"2765":1,"2776":1,"2783":1,"2788":2,"2822":1,"2875":2,"2879":1,"2899":1,"2905":1,"2911":1,"2914":1,"2918":1,"2933":2}}],["arng",{"2":{"2878":1}}],["arpeggiation",{"2":{"2285":1}}],["arbitrary",{"2":{"374":1,"431":1,"1442":1,"1450":1,"1531":1,"1771":1,"1828":1,"2270":1,"2632":1,"2678":1}}],["arises",{"2":{"2459":1}}],["arise",{"2":{"273":1,"2579":1}}],["arrive",{"2":{"2285":1}}],["arrangement",{"2":{"2714":2}}],["arranged",{"2":{"2459":2,"2775":1}}],["arrange",{"2":{"1419":1,"2713":1}}],["arrays",{"2":{"191":1,"431":2,"587":1,"1782":2,"1955":2,"2289":1,"2549":3,"2712":1,"2921":2}}],["array",{"0":{"27":1},"2":{"27":1,"176":1,"249":1,"266":1,"586":2,"669":5,"733":1,"811":1,"815":1,"819":1,"821":1,"839":1,"843":1,"847":1,"849":1,"869":1,"873":1,"877":1,"879":1,"901":1,"905":1,"909":1,"911":1,"936":1,"940":1,"944":1,"946":1,"970":1,"974":1,"978":1,"980":1,"1004":1,"1008":1,"1012":1,"1014":1,"1038":1,"1042":1,"1046":1,"1048":1,"1072":1,"1076":1,"1080":1,"1082":1,"1106":1,"1110":1,"1114":1,"1116":1,"1140":1,"1144":1,"1148":1,"1150":1,"1174":1,"1178":1,"1182":1,"1184":1,"1227":1,"1231":1,"1235":1,"1237":1,"1354":1,"1433":1,"1437":1,"1440":1,"1532":3,"1599":1,"1605":1,"1606":3,"1624":1,"1659":1,"1675":1,"1693":1,"1714":1,"1716":1,"1736":1,"1741":2,"1954":2,"1962":2,"2182":4,"2210":1,"2265":1,"2296":2,"2298":1,"2302":2,"2322":2,"2344":1,"2346":1,"2347":1,"2348":1,"2350":1,"2351":1,"2549":4,"2550":1,"2713":1,"2769":1,"2771":1,"2773":1,"2798":1,"2816":1,"2845":1,"2849":1,"2850":1,"2856":2,"2858":1,"2861":2,"2862":2,"2864":4,"2865":4,"2870":2,"2871":4,"2872":1,"2873":1,"2930":2}}],["arrowmechanics",{"2":{"266":1}}],["arrow",{"2":{"255":2,"259":2,"266":1,"683":2,"1688":4,"1824":1,"1999":1,"2156":1,"2159":5,"2164":2,"2225":1,"2503":8,"2541":4,"2543":4,"2778":1,"2781":2}}],["arg",{"2":{"498":3,"654":2,"655":1,"2165":1}}],["args",{"2":{"176":1,"498":3,"519":1,"522":1,"2160":1,"2671":1}}],["arguments",{"0":{"493":1,"498":1,"522":1,"705":1,"707":1,"710":1,"731":1,"733":1,"735":1,"737":1,"771":1,"774":1,"777":1,"780":1,"783":1,"786":1,"789":1,"792":1,"795":1,"807":1,"809":1,"811":1,"813":1,"815":1,"817":1,"819":1,"821":1,"823":1,"825":1,"837":1,"839":1,"841":1,"843":1,"845":1,"847":1,"849":1,"865":1,"867":1,"869":1,"871":1,"873":1,"875":1,"877":1,"879":1,"881":1,"883":1,"895":1,"897":1,"899":1,"901":1,"903":1,"905":1,"907":1,"909":1,"911":1,"913":1,"915":1,"930":1,"932":1,"934":1,"936":1,"938":1,"940":1,"942":1,"944":1,"946":1,"948":1,"950":1,"964":1,"966":1,"968":1,"970":1,"972":1,"974":1,"976":1,"978":1,"980":1,"982":1,"984":1,"998":1,"1000":1,"1002":1,"1004":1,"1006":1,"1008":1,"1010":1,"1012":1,"1014":1,"1016":1,"1018":1,"1032":1,"1034":1,"1036":1,"1038":1,"1040":1,"1042":1,"1044":1,"1046":1,"1048":1,"1050":1,"1052":1,"1066":1,"1068":1,"1070":1,"1072":1,"1074":1,"1076":1,"1078":1,"1080":1,"1082":1,"1084":1,"1086":1,"1100":1,"1102":1,"1104":1,"1106":1,"1108":1,"1110":1,"1112":1,"1114":1,"1116":1,"1118":1,"1120":1,"1134":1,"1136":1,"1138":1,"1140":1,"1142":1,"1144":1,"1146":1,"1148":1,"1150":1,"1152":1,"1154":1,"1168":1,"1170":1,"1172":1,"1174":1,"1176":1,"1178":1,"1180":1,"1182":1,"1184":1,"1186":1,"1188":1,"1221":1,"1223":1,"1225":1,"1227":1,"1229":1,"1231":1,"1233":1,"1235":1,"1237":1,"1239":1,"1241":1,"1249":1,"1252":1,"1257":1,"1260":1,"1269":1,"1271":1,"1275":1,"1277":1,"1304":1,"1306":1,"1561":1,"1580":1,"1582":1,"1648":1,"1699":1,"1703":1,"1706":1,"1708":1,"1710":1,"1712":1,"1714":1,"1716":1,"1720":1,"1722":1,"1725":1,"1727":1,"1729":1,"1731":1,"1746":1,"1748":1,"1750":1,"1753":1,"1755":1,"1797":1,"1803":1,"1808":1,"1811":1,"1814":1,"1817":1,"1820":1,"1860":1,"1862":1,"1864":1,"1866":1,"1884":1,"1886":1,"1890":1,"1892":1,"1907":1,"1910":1,"2015":1,"2017":1,"2019":1,"2021":1,"2023":1,"2029":1,"2055":1,"2057":1,"2086":1,"2088":1,"2090":1,"2092":1,"2122":1,"2124":1,"2128":1,"2130":1,"2138":1,"2140":1,"2151":1,"2154":1,"2228":1,"2230":1,"2232":1,"2234":1,"2236":1,"2238":1,"2240":1,"2242":1,"2244":1,"2330":1,"2334":1,"2336":1,"2341":1,"2343":1,"2345":1,"2348":1,"2351":1,"2358":1,"2365":1},"1":{"494":1,"495":1,"496":1,"497":1,"498":1,"1908":1,"1911":1,"2152":1,"2155":1},"2":{"114":1,"285":1,"294":1,"442":1,"450":1,"451":1,"457":1,"470":1,"471":1,"473":1,"489":2,"498":2,"519":1,"530":1,"1428":1,"2051":1,"2290":1,"2303":1,"2496":1,"2633":1,"2748":3,"2931":1}}],["argument",{"0":{"531":1},"2":{"46":1,"194":2,"199":1,"236":1,"266":1,"427":3,"428":1,"470":1,"472":2,"473":1,"487":6,"493":5,"498":3,"531":1,"630":2,"654":3,"655":1,"1245":1,"1375":1,"1388":1,"1396":1,"1417":4,"1430":1,"1827":1,"2293":2,"2495":1,"2565":1,"2566":1,"2633":1,"2645":1,"2748":7}}],["artifact",{"2":{"2600":1}}],["artifacts",{"2":{"114":1,"2602":1,"2754":1}}],["article",{"2":{"2375":1,"2459":2}}],["artery",{"0":{"548":1}}],["arterytek",{"2":{"285":1}}],["art",{"2":{"176":2}}],["architectural",{"0":{"2734":1}}],["architectures",{"2":{"2743":1}}],["architecture",{"0":{"574":1,"2727":1},"2":{"574":2,"759":1,"2734":1}}],["archive",{"2":{"2600":1}}],["arch",{"2":{"154":2,"176":1,"571":1,"2594":1,"2619":1}}],["arabica37",{"2":{"134":1}}],["arya",{"2":{"134":1}}],["arduinoisp",{"2":{"2479":1}}],["arduino",{"0":{"243":1,"1368":1,"2479":1},"1":{"2480":1},"2":{"113":1,"114":1,"133":1,"134":1,"243":2,"331":2,"609":2,"686":4,"1368":8,"2379":1,"2434":1,"2479":2,"2492":4}}],["armtoolchainpath",{"2":{"2676":3}}],["arm",{"0":{"378":1,"381":1,"545":1,"691":1,"696":1,"698":1,"713":1,"725":1,"765":1,"801":1,"830":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1215":1,"1245":1,"1266":1,"1292":1,"1317":1,"1470":1,"1482":1,"1549":1,"2035":1,"2676":1,"2677":1,"2685":1,"2795":1},"1":{"379":1,"380":1,"381":1,"382":1,"383":1,"384":1,"385":1,"386":1,"387":1,"388":1,"389":1,"390":1,"391":1,"392":1,"546":1,"547":1,"548":1,"549":1,"550":1,"692":1,"693":1,"714":1,"715":1,"716":1,"717":1,"718":1,"719":1,"720":1,"766":1,"767":1,"1293":1,"1294":1,"1295":1,"1296":1,"1297":1,"1298":1,"1299":1,"1300":1,"1471":1,"1472":1,"1473":1,"1474":1,"1475":1,"1476":1,"1477":1,"1550":1,"1551":1,"2678":1,"2679":1,"2680":1,"2686":1,"2687":1,"2688":1,"2689":1,"2690":1,"2691":1},"2":{"11":1,"24":1,"69":1,"75":1,"92":1,"93":3,"107":2,"114":3,"123":1,"130":1,"134":2,"138":1,"145":2,"174":1,"191":1,"203":2,"248":1,"263":3,"277":1,"279":2,"285":2,"294":3,"378":2,"381":2,"387":2,"390":1,"392":1,"543":2,"545":1,"565":1,"566":1,"568":2,"609":1,"613":1,"617":1,"687":3,"698":1,"713":1,"714":1,"743":1,"773":1,"1189":1,"1190":1,"1192":1,"1193":1,"1196":1,"1290":1,"1291":1,"1292":1,"1293":1,"1317":1,"1389":2,"1390":2,"1478":1,"1482":1,"1711":1,"1715":1,"1733":2,"1941":1,"1945":5,"1956":2,"2035":1,"2172":1,"2231":1,"2233":1,"2246":1,"2247":1,"2254":3,"2255":1,"2266":2,"2271":1,"2272":3,"2283":2,"2411":1,"2458":1,"2475":1,"2676":3,"2677":1,"2681":1,"2685":2,"2697":1,"2698":1,"2721":1,"2846":1,"2888":2}}],["around",{"2":{"8":1,"191":2,"198":1,"201":1,"210":1,"212":1,"224":1,"266":1,"293":1,"305":1,"314":1,"414":1,"675":1,"712":1,"1294":1,"1312":1,"1343":1,"1362":2,"1365":1,"1484":1,"1487":1,"1670":1,"1843":1,"1958":1,"2063":4,"2173":1,"2194":4,"2420":1,"2459":1,"2461":1,"2568":1,"2882":1,"2919":3,"2934":1,"2936":1,"2942":1}}],["aref",{"2":{"2424":1}}],["arep",{"2":{"213":1,"2157":1,"2158":1,"2530":1}}],["area",{"2":{"182":1,"642":1,"1956":1,"2064":1,"2633":2,"2749":2,"2750":1,"2800":1,"2895":1,"2915":1}}],["areas",{"2":{"113":1,"201":1,"397":1,"2722":2,"2895":2}}],["aren",{"0":{"1348":1},"2":{"173":1,"188":1,"222":1,"614":1,"617":1,"663":1,"1362":1,"1660":1,"1976":1,"2398":1,"2422":1,"2427":1,"2552":1,"2685":1,"2732":1,"2749":2}}],["are",{"0":{"90":1,"105":1,"603":1,"1337":1,"1340":1,"1343":1,"1346":1,"1359":1,"1493":1,"1594":1,"2466":1,"2925":1},"1":{"2467":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1},"2":{"3":1,"4":1,"11":1,"15":1,"16":2,"27":1,"31":3,"33":1,"34":2,"37":1,"55":1,"69":1,"70":1,"73":1,"75":1,"92":1,"94":1,"110":1,"111":1,"114":1,"119":1,"123":2,"124":1,"132":1,"137":1,"163":1,"176":1,"182":1,"187":1,"191":1,"194":1,"196":2,"203":2,"209":1,"210":1,"212":2,"214":1,"217":1,"220":1,"221":1,"231":1,"234":1,"241":1,"253":1,"254":1,"262":1,"263":2,"264":1,"268":1,"270":1,"274":1,"275":1,"281":1,"282":1,"288":2,"289":1,"292":1,"294":1,"301":1,"307":2,"313":1,"326":1,"338":6,"350":1,"360":1,"361":1,"367":1,"371":1,"373":4,"375":1,"377":1,"379":1,"380":1,"382":1,"387":2,"390":2,"393":2,"397":3,"405":2,"406":1,"408":2,"409":1,"410":2,"416":1,"420":1,"424":1,"427":1,"428":1,"430":1,"431":2,"435":1,"438":1,"440":1,"442":1,"443":1,"445":1,"456":2,"471":1,"473":3,"487":1,"489":1,"490":1,"491":1,"492":2,"505":1,"506":1,"510":2,"511":1,"514":1,"517":1,"522":1,"523":2,"524":2,"526":1,"527":1,"530":2,"537":1,"538":3,"539":1,"540":1,"541":1,"542":1,"545":1,"553":4,"555":1,"556":1,"559":2,"563":2,"566":1,"567":2,"568":1,"572":3,"573":3,"574":1,"577":1,"578":2,"579":2,"587":1,"594":1,"596":1,"605":1,"606":1,"608":1,"609":1,"611":2,"612":1,"613":2,"616":3,"617":7,"618":1,"619":3,"624":1,"625":1,"628":3,"631":2,"644":2,"646":1,"649":1,"655":1,"658":1,"663":3,"666":4,"667":1,"668":1,"670":2,"671":1,"680":1,"682":1,"683":2,"684":1,"685":1,"686":1,"687":1,"690":2,"692":5,"696":1,"698":1,"699":1,"700":1,"704":1,"712":1,"713":4,"715":1,"716":2,"718":2,"722":1,"732":1,"739":1,"740":1,"746":1,"747":1,"751":1,"756":1,"758":1,"760":3,"762":1,"763":1,"765":2,"798":1,"810":1,"814":1,"818":1,"820":1,"827":1,"838":1,"842":1,"846":1,"848":1,"853":1,"856":1,"857":2,"868":1,"872":1,"876":1,"878":1,"885":1,"900":1,"904":1,"908":1,"910":1,"917":1,"919":1,"921":1,"922":2,"935":1,"939":1,"943":1,"945":1,"952":1,"954":1,"955":1,"956":2,"969":1,"973":1,"977":1,"979":1,"986":1,"989":1,"990":2,"1003":1,"1007":1,"1011":1,"1013":1,"1020":1,"1023":1,"1024":2,"1037":1,"1041":1,"1045":1,"1047":1,"1054":1,"1057":1,"1058":2,"1071":1,"1075":1,"1079":1,"1081":1,"1088":1,"1090":1,"1092":2,"1105":1,"1109":1,"1113":1,"1115":1,"1122":1,"1124":1,"1126":2,"1139":1,"1143":1,"1147":1,"1149":1,"1156":1,"1158":1,"1159":1,"1160":2,"1173":1,"1177":1,"1181":1,"1183":1,"1189":2,"1193":1,"1194":1,"1196":1,"1197":4,"1202":1,"1203":1,"1210":1,"1212":1,"1226":1,"1230":1,"1234":1,"1236":1,"1243":1,"1250":1,"1264":1,"1269":2,"1280":1,"1281":1,"1284":1,"1286":1,"1293":1,"1294":1,"1297":1,"1300":1,"1303":1,"1308":1,"1310":1,"1312":1,"1315":1,"1317":1,"1320":1,"1323":1,"1327":1,"1340":2,"1342":1,"1343":2,"1348":2,"1354":1,"1355":1,"1359":2,"1362":2,"1363":1,"1375":3,"1378":2,"1386":2,"1388":1,"1389":1,"1390":1,"1392":1,"1393":1,"1395":1,"1396":1,"1404":2,"1406":3,"1407":1,"1409":5,"1410":4,"1413":2,"1416":2,"1417":2,"1419":2,"1420":1,"1422":5,"1425":1,"1427":1,"1432":1,"1437":1,"1438":2,"1440":2,"1445":2,"1449":1,"1457":1,"1464":1,"1466":1,"1475":1,"1477":1,"1478":1,"1479":2,"1481":2,"1482":1,"1485":3,"1487":2,"1492":2,"1493":2,"1497":3,"1504":1,"1508":1,"1511":1,"1512":2,"1516":3,"1517":1,"1518":2,"1519":1,"1521":2,"1522":1,"1523":1,"1526":2,"1527":5,"1528":1,"1532":4,"1538":1,"1539":1,"1541":1,"1545":1,"1547":1,"1550":2,"1552":2,"1583":1,"1584":1,"1585":1,"1587":1,"1588":1,"1591":2,"1592":1,"1594":1,"1596":1,"1597":1,"1599":1,"1600":1,"1602":1,"1605":2,"1606":6,"1609":1,"1610":1,"1611":1,"1613":2,"1615":1,"1620":2,"1621":1,"1622":1,"1623":1,"1628":1,"1629":1,"1630":1,"1635":1,"1649":1,"1655":2,"1656":1,"1658":1,"1659":2,"1660":1,"1662":1,"1664":1,"1666":1,"1668":1,"1670":1,"1672":2,"1675":2,"1696":1,"1734":1,"1736":2,"1760":2,"1764":2,"1768":1,"1770":1,"1775":2,"1778":6,"1779":3,"1780":2,"1781":3,"1782":4,"1785":1,"1789":1,"1790":1,"1829":1,"1830":1,"1832":1,"1840":2,"1843":2,"1846":1,"1849":2,"1913":1,"1917":2,"1920":2,"1928":2,"1930":2,"1931":1,"1932":1,"1933":4,"1940":1,"1945":1,"1946":1,"1948":1,"1950":1,"1951":1,"1954":4,"1955":5,"1956":2,"1958":1,"1959":2,"1962":2,"1964":2,"1967":2,"1968":2,"1971":1,"1976":1,"1977":1,"1979":1,"1980":2,"1982":1,"1983":2,"1991":1,"1992":3,"1995":1,"1997":1,"1999":1,"2000":1,"2004":2,"2007":1,"2009":3,"2030":1,"2032":1,"2036":1,"2037":1,"2041":1,"2047":1,"2049":1,"2050":3,"2052":2,"2060":2,"2063":2,"2064":1,"2067":2,"2069":1,"2072":2,"2156":1,"2159":1,"2160":1,"2163":3,"2165":1,"2167":1,"2171":1,"2172":2,"2174":1,"2177":2,"2178":3,"2180":1,"2182":1,"2184":1,"2185":1,"2191":11,"2192":2,"2194":2,"2198":2,"2199":1,"2203":2,"2218":2,"2221":3,"2222":1,"2251":1,"2253":1,"2254":2,"2255":1,"2256":1,"2258":3,"2262":1,"2263":1,"2267":1,"2268":4,"2270":1,"2271":4,"2277":1,"2278":1,"2280":1,"2282":1,"2283":1,"2284":1,"2285":1,"2287":1,"2288":2,"2290":1,"2291":2,"2293":1,"2296":3,"2298":1,"2302":6,"2303":1,"2306":1,"2310":4,"2312":1,"2313":4,"2316":1,"2318":1,"2319":1,"2322":1,"2323":2,"2324":1,"2375":1,"2377":2,"2384":2,"2401":3,"2404":2,"2408":2,"2409":1,"2410":3,"2411":5,"2415":3,"2416":1,"2417":2,"2419":1,"2420":4,"2421":3,"2422":1,"2423":1,"2424":4,"2428":1,"2432":1,"2434":1,"2442":2,"2443":1,"2444":1,"2446":3,"2447":2,"2448":1,"2449":1,"2453":1,"2454":1,"2457":1,"2458":2,"2459":4,"2463":1,"2465":1,"2469":1,"2473":2,"2475":1,"2476":1,"2490":1,"2491":2,"2492":1,"2494":1,"2495":1,"2496":1,"2501":1,"2502":1,"2504":1,"2512":1,"2534":1,"2542":3,"2544":1,"2545":2,"2546":1,"2548":1,"2549":1,"2550":2,"2553":1,"2554":3,"2555":1,"2556":2,"2558":1,"2559":2,"2560":2,"2561":1,"2565":1,"2566":2,"2569":1,"2572":4,"2573":3,"2574":1,"2575":2,"2579":2,"2580":2,"2587":2,"2592":1,"2593":1,"2602":1,"2607":2,"2609":1,"2610":1,"2612":2,"2619":2,"2623":1,"2626":1,"2627":2,"2628":1,"2630":2,"2633":2,"2635":1,"2643":3,"2644":1,"2645":3,"2652":1,"2653":1,"2656":1,"2658":2,"2659":1,"2661":2,"2662":2,"2670":1,"2671":1,"2672":1,"2673":1,"2676":1,"2678":2,"2679":1,"2684":1,"2687":2,"2688":2,"2689":1,"2693":1,"2694":1,"2695":1,"2704":3,"2706":1,"2709":1,"2710":1,"2711":1,"2712":1,"2713":2,"2714":1,"2715":1,"2718":1,"2719":1,"2720":1,"2721":10,"2722":2,"2723":2,"2724":4,"2726":1,"2731":3,"2732":1,"2744":4,"2745":1,"2747":2,"2749":8,"2750":6,"2758":4,"2760":1,"2765":1,"2766":2,"2769":2,"2775":2,"2777":2,"2778":1,"2782":4,"2783":1,"2784":3,"2786":2,"2788":1,"2791":1,"2813":2,"2816":1,"2826":1,"2828":1,"2833":1,"2844":2,"2862":3,"2864":1,"2865":1,"2870":1,"2871":1,"2877":3,"2878":1,"2879":1,"2880":4,"2881":1,"2882":6,"2883":2,"2885":2,"2888":2,"2889":1,"2890":1,"2896":1,"2897":1,"2902":2,"2905":1,"2906":2,"2912":1,"2915":1,"2917":1,"2918":7,"2919":3,"2921":4,"2925":1,"2929":3,"2934":2,"2938":2,"2939":1,"2940":3,"2941":1,"2942":1}}],["al",{"2":{"2912":2,"2913":1}}],["albeit",{"2":{"2322":1}}],["alpaca",{"2":{"2560":1}}],["alps",{"2":{"1351":1}}],["alphabet",{"2":{"2879":1}}],["alphabetical",{"2":{"1516":1}}],["alphanumeric",{"2":{"2073":1,"2780":1}}],["alphas",{"2":{"1843":3,"2063":3,"2864":1,"2871":1,"2887":1,"2915":1}}],["alpha",{"0":{"1502":1,"1507":1,"1685":1},"2":{"154":8,"1497":2,"1502":1,"1504":2,"1522":1,"1685":2}}],["alone",{"2":{"663":1,"1323":1}}],["alongside",{"2":{"113":1,"114":1}}],["along",{"2":{"69":1,"83":1,"113":1,"160":1,"166":1,"196":1,"230":1,"559":3,"1285":1,"1457":1,"1461":1,"1691":1,"1775":1,"1933":1,"1970":1,"2052":1,"2063":1,"2218":1,"2375":1,"2422":1,"2424":2,"2489":1,"2605":1,"2719":1,"2725":1}}],["alvicstep",{"2":{"222":1}}],["alf",{"2":{"222":2}}],["alcor",{"2":{"191":1}}],["alu84",{"2":{"154":2}}],["alef",{"2":{"294":1}}],["alexa",{"2":{"222":1}}],["aleblazer",{"2":{"210":1}}],["aleth42",{"2":{"154":2}}],["alerts",{"2":{"433":1,"454":1}}],["alert",{"2":{"28":1,"1680":2}}],["al1",{"2":{"145":1}}],["alice",{"2":{"222":1,"2930":1}}],["alicia",{"2":{"154":2,"222":1}}],["alisaie",{"2":{"210":1}}],["aligns",{"2":{"2418":1}}],["aligned",{"2":{"148":1,"2421":1,"2780":2}}],["alignment",{"2":{"114":1,"133":1,"134":1,"191":1,"266":1,"333":1,"2423":1,"2720":1,"2750":1}}],["align",{"2":{"113":1,"114":3,"133":1,"134":3,"160":4,"176":2,"188":3,"191":3,"199":4,"210":1,"249":4,"266":4,"277":1,"308":3,"317":1,"328":1}}],["aliasing",{"2":{"2748":1}}],["aliased",{"2":{"1621":1}}],["aliases",{"2":{"92":1,"111":1,"182":1,"188":1,"191":1,"210":4,"266":1,"294":6,"317":4,"1374":1,"1422":1,"1479":1,"1483":1,"1484":1,"1487":1,"1489":1,"1515":1,"1524":1,"1537":1,"1600":1,"1624":2,"1668":1,"1674":1,"1738":1,"1774":1,"1792":1,"1842":1,"1919":1,"1927":1,"2001":1,"2011":1,"2062":1,"2158":1,"2174":1,"2209":1,"2216":1,"2250":1,"2297":1,"2325":1,"2370":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2515":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2537":1,"2538":1,"2539":1,"2540":1,"2541":1,"2542":1,"2543":1,"2544":1,"2547":1,"2548":1,"2565":1,"2644":1,"2721":1,"2745":1,"2861":1,"2862":2,"2877":2,"2905":1}}],["alias",{"0":{"8":1},"2":{"8":2,"133":1,"134":1,"188":1,"191":2,"199":3,"222":1,"236":1,"249":1,"308":1,"333":1,"758":1,"773":1,"1588":1,"1655":1,"1711":1,"1715":1,"1823":1,"1956":1,"2157":2,"2231":1,"2233":1,"2314":1,"2552":2,"2568":1,"2633":1}}],["almost",{"2":{"77":1,"83":1,"163":1,"268":1,"276":1,"279":1,"383":1,"755":1,"756":1,"1781":1,"2324":1,"2375":1,"2388":1,"2619":1,"2719":1,"2722":1,"2749":1,"2775":1,"2894":1,"2936":1}}],["already",{"0":{"2686":1},"1":{"2687":1,"2688":1},"2":{"75":1,"105":2,"118":1,"125":1,"169":2,"182":3,"185":1,"199":1,"209":1,"228":1,"232":1,"233":1,"241":1,"253":1,"270":1,"281":1,"294":1,"347":1,"430":1,"461":2,"596":1,"609":1,"645":1,"682":1,"739":1,"1197":1,"1210":1,"1250":1,"1347":1,"1377":1,"1404":1,"1425":1,"1464":1,"1527":1,"1621":1,"1675":1,"1778":3,"1976":1,"2005":2,"2007":1,"2283":2,"2303":1,"2312":3,"2415":1,"2425":1,"2475":2,"2498":1,"2560":4,"2573":1,"2587":1,"2594":1,"2621":1,"2629":1,"2651":1,"2667":1,"2671":2,"2672":1,"2675":1,"2687":2,"2721":1,"2722":1,"2749":2,"2754":1,"2832":1,"2895":1,"2937":1}}],["algr",{"2":{"1374":1,"1442":1,"2503":1,"2522":1,"2523":1,"2539":1,"2565":1}}],["algorithm>",{"2":{"1413":1}}],["algorithms",{"0":{"1410":1,"1411":1},"1":{"1412":1,"1413":1,"1414":1},"2":{"114":1,"176":1,"210":1,"1409":1,"1410":6,"1411":1}}],["algorithm",{"2":{"74":1,"174":1,"176":1,"328":1,"749":1,"751":1,"752":3,"753":1,"1410":10,"1413":4,"1414":2,"1929":1,"2765":1,"2847":1,"2857":1}}],["algernon",{"2":{"37":1,"2301":2,"2410":2}}],["altlp",{"2":{"2311":6}}],["altrep",{"2":{"2170":1}}],["altrep3",{"2":{"2170":12}}],["altrep2",{"2":{"2170":12}}],["alttab",{"2":{"1612":6}}],["alt↯tab",{"0":{"1456":1}}],["altered",{"2":{"2270":1}}],["altering",{"2":{"1535":1,"1616":1}}],["alter",{"2":{"1440":1,"1608":1,"1611":1,"1662":1,"2293":1,"2503":1}}],["alternating",{"2":{"2176":2,"2177":2,"2887":1}}],["alternatives",{"2":{"2573":1,"2895":1}}],["alternative",{"0":{"1443":1},"2":{"279":2,"572":1,"1296":2,"1300":1,"1362":1,"1388":1,"1396":1,"1417":1,"1472":1,"1475":1,"1550":1,"1587":1,"1976":1,"2291":1,"2411":1,"2573":1,"2721":1,"2728":1,"2803":1,"2805":1}}],["alternatively",{"2":{"31":1,"511":1,"683":1,"746":1,"747":1,"1204":1,"1315":1,"1378":1,"1402":1,"1458":1,"1479":1,"1591":1,"1735":1,"1827":1,"2050":1,"2257":1,"2587":1,"2651":1,"2678":1,"2787":1,"2878":1,"2919":1,"2939":1}}],["alternate0",{"2":{"718":1}}],["alternate",{"0":{"1207":1,"2159":1,"2160":1,"2168":1,"2170":1,"2695":1},"1":{"1208":1,"1209":1,"1210":1,"2161":1,"2162":1},"2":{"36":1,"114":1,"213":2,"559":3,"568":1,"713":1,"718":5,"765":2,"769":2,"1190":1,"1195":2,"1197":2,"1198":2,"1205":1,"1210":2,"1245":3,"1266":4,"1477":1,"1616":1,"1619":3,"2158":1,"2159":7,"2160":6,"2161":2,"2162":1,"2163":1,"2167":2,"2168":10,"2169":2,"2170":1,"2503":2,"2530":1,"2541":2,"2700":1,"2721":2}}],["although",{"2":{"1417":1,"1733":1,"1780":1,"1968":1,"2286":1,"2291":1,"2551":1}}],["alt+tab",{"2":{"1612":1}}],["alt+escape",{"2":{"1377":1}}],["alt+shift+esc",{"2":{"1377":1}}],["alt+right",{"2":{"347":1,"1417":1}}],["altogether",{"2":{"717":1,"2268":1,"2885":1}}],["altgr+escape",{"2":{"1377":1}}],["altgr",{"2":{"145":1,"2165":1,"2503":1,"2539":1,"2565":1,"2904":1}}],["alt",{"0":{"1377":2},"2":{"73":1,"114":1,"131":2,"134":2,"145":1,"213":2,"231":1,"266":1,"279":1,"559":3,"680":1,"713":1,"719":2,"1344":2,"1346":1,"1374":14,"1375":8,"1377":5,"1451":1,"1456":10,"1468":3,"1469":1,"1471":2,"1472":2,"1473":2,"1476":2,"1480":2,"1523":1,"1612":1,"1619":3,"1670":2,"1684":1,"1761":1,"1770":7,"1773":1,"1782":6,"1954":2,"2157":1,"2158":1,"2159":3,"2160":3,"2161":2,"2162":3,"2168":3,"2169":1,"2248":1,"2249":4,"2250":4,"2310":1,"2311":3,"2320":2,"2324":2,"2337":1,"2338":1,"2339":1,"2503":4,"2519":10,"2522":16,"2523":15,"2528":14,"2530":1,"2531":4,"2539":4,"2548":10,"2565":19,"2644":14,"2645":4,"2824":1,"2882":1,"2921":6}}],["always",{"2":{"14":1,"50":1,"141":1,"176":1,"191":1,"212":1,"235":1,"249":1,"277":1,"283":1,"294":1,"474":1,"487":1,"489":1,"510":1,"517":1,"519":1,"521":1,"522":1,"524":1,"531":1,"532":1,"566":1,"579":1,"606":1,"617":1,"760":1,"1210":2,"1294":1,"1416":1,"1420":2,"1464":1,"1466":2,"1485":1,"1493":1,"1511":2,"1583":1,"1613":1,"1669":1,"1670":4,"1775":1,"1936":1,"1994":1,"2050":1,"2051":1,"2055":2,"2057":2,"2163":1,"2176":1,"2258":1,"2265":1,"2267":3,"2293":1,"2428":1,"2551":1,"2569":1,"2607":1,"2722":1,"2760":1,"2768":1,"2769":1,"2775":1,"2798":1,"2835":1,"2894":2,"2906":1,"2914":1,"2938":1}}],["also",{"0":{"1317":1},"2":{"10":1,"16":1,"28":1,"50":1,"67":1,"86":1,"98":1,"125":1,"130":1,"138":1,"139":1,"141":1,"145":1,"166":1,"167":1,"176":1,"185":1,"194":1,"195":1,"231":1,"244":1,"297":1,"328":1,"393":1,"397":1,"408":1,"420":1,"428":3,"431":1,"444":1,"459":1,"475":1,"487":2,"492":1,"494":1,"527":1,"545":1,"573":2,"611":1,"614":1,"616":1,"617":2,"623":1,"643":1,"663":1,"692":1,"714":1,"718":2,"719":1,"752":1,"1211":1,"1285":1,"1291":1,"1316":1,"1323":1,"1340":1,"1345":1,"1367":1,"1374":1,"1375":1,"1377":1,"1385":1,"1409":2,"1416":1,"1417":1,"1422":1,"1440":1,"1442":3,"1445":1,"1459":1,"1464":1,"1466":2,"1478":1,"1481":1,"1492":1,"1511":1,"1527":1,"1529":1,"1552":1,"1586":2,"1587":1,"1588":1,"1589":1,"1597":1,"1603":1,"1608":1,"1610":1,"1611":1,"1636":1,"1655":1,"1659":3,"1679":1,"1684":2,"1734":1,"1760":1,"1764":1,"1771":1,"1778":2,"1779":2,"1781":1,"1805":1,"1824":1,"1837":1,"1846":1,"1931":1,"1942":1,"1968":1,"1976":1,"1983":1,"1987":1,"2006":2,"2039":1,"2040":1,"2041":1,"2050":2,"2052":1,"2064":1,"2069":1,"2156":1,"2159":1,"2166":1,"2167":1,"2172":1,"2174":1,"2176":1,"2180":1,"2182":1,"2184":1,"2201":1,"2203":1,"2212":1,"2221":1,"2260":1,"2261":1,"2266":1,"2286":2,"2287":1,"2291":1,"2298":1,"2314":2,"2318":1,"2319":1,"2323":1,"2324":1,"2372":1,"2375":1,"2376":1,"2378":1,"2380":1,"2386":1,"2387":1,"2391":1,"2392":1,"2394":1,"2396":1,"2399":1,"2401":2,"2410":3,"2411":1,"2415":1,"2417":1,"2420":3,"2424":1,"2429":1,"2445":1,"2446":1,"2447":1,"2448":1,"2454":1,"2476":1,"2479":1,"2490":1,"2492":1,"2495":1,"2503":1,"2504":1,"2505":1,"2506":1,"2507":1,"2508":1,"2509":1,"2510":1,"2511":1,"2512":1,"2513":1,"2514":1,"2515":1,"2516":1,"2517":1,"2518":1,"2519":1,"2520":1,"2521":1,"2522":1,"2523":1,"2524":1,"2525":1,"2526":1,"2527":1,"2528":1,"2529":1,"2530":1,"2531":1,"2532":1,"2533":1,"2554":3,"2566":2,"2569":1,"2576":1,"2605":1,"2613":1,"2643":1,"2645":3,"2651":1,"2652":1,"2664":1,"2671":1,"2676":1,"2684":2,"2685":2,"2710":1,"2714":1,"2721":2,"2746":1,"2748":2,"2749":1,"2750":1,"2751":1,"2758":1,"2766":1,"2776":1,"2827":1,"2844":1,"2869":1,"2880":1,"2882":1,"2885":1,"2904":1,"2911":2,"2912":4,"2913":1,"2914":1,"2915":1,"2917":1,"2922":1,"2934":1,"2935":1,"2937":1,"2938":2,"2942":3}}],["alleviate",{"2":{"1491":1,"1616":1}}],["allocate",{"2":{"1954":1,"2282":1,"2749":1}}],["allocated",{"2":{"751":1,"2749":1}}],["allocation",{"2":{"328":1,"333":1,"2704":1}}],["allowing",{"2":{"64":1,"82":1,"98":1,"103":1,"107":1,"109":1,"125":1,"126":1,"185":1,"229":1,"234":1,"284":1,"553":1,"649":1,"663":1,"743":1,"1404":1,"1416":1,"1456":1,"1623":1,"1624":1,"1626":1,"1789":1,"1840":1,"1992":1,"2000":1,"2060":1,"2171":1,"2269":1,"2285":1,"2411":1,"2583":2,"2750":3,"2767":1,"2914":1}}],["allowed",{"2":{"28":1,"173":1,"189":1,"516":1,"716":1,"1775":1,"1778":1,"2268":1,"2302":1,"2769":1,"2914":1}}],["allows",{"2":{"24":1,"30":1,"33":1,"46":1,"49":3,"50":1,"99":1,"105":2,"107":2,"137":1,"138":1,"139":1,"164":1,"166":2,"172":1,"228":2,"230":2,"231":2,"246":1,"247":1,"262":1,"265":1,"288":1,"312":1,"364":1,"365":1,"384":1,"427":1,"431":1,"461":1,"470":1,"559":1,"562":1,"565":1,"568":1,"572":3,"576":1,"654":2,"668":1,"717":1,"751":1,"1285":1,"1404":1,"1406":1,"1407":1,"1415":1,"1445":1,"1458":1,"1466":1,"1486":1,"1504":1,"1528":1,"1535":1,"1538":1,"1540":1,"1586":2,"1620":1,"1624":1,"1658":1,"1665":1,"1675":1,"1683":1,"1767":1,"1775":1,"1783":1,"1838":1,"1913":1,"1924":1,"1930":2,"1933":1,"1940":1,"1955":1,"1962":1,"1976":1,"1978":2,"1986":1,"2047":1,"2058":1,"2074":1,"2218":1,"2270":1,"2271":3,"2295":1,"2303":1,"2370":1,"2372":1,"2374":1,"2387":2,"2411":8,"2437":1,"2459":1,"2475":1,"2497":1,"2503":1,"2592":1,"2612":1,"2643":1,"2646":1,"2673":1,"2677":1,"2695":1,"2714":1,"2721":1,"2748":1,"2750":2,"2800":1,"2801":1,"2818":1,"2845":1,"2914":1,"2920":1,"2937":1}}],["allow",{"0":{"164":1,"1607":1},"2":{"6":2,"10":1,"45":1,"49":1,"63":4,"65":2,"70":1,"74":5,"90":2,"93":2,"99":1,"110":1,"113":1,"114":7,"118":1,"125":3,"145":5,"153":1,"160":1,"172":1,"176":7,"185":3,"189":1,"191":6,"199":5,"201":1,"210":2,"213":1,"214":1,"222":2,"234":1,"236":6,"249":2,"277":1,"283":1,"285":3,"308":2,"317":1,"333":2,"390":1,"486":1,"488":2,"556":1,"562":1,"617":2,"624":1,"625":1,"663":1,"757":1,"761":1,"1197":1,"1242":1,"1263":1,"1344":1,"1346":1,"1362":1,"1367":1,"1374":1,"1400":1,"1416":2,"1421":1,"1434":1,"1437":1,"1451":1,"1466":1,"1526":1,"1529":1,"1540":1,"1607":2,"1628":1,"1633":1,"1651":1,"1656":1,"1662":1,"1760":1,"1763":1,"1776":3,"1831":2,"1833":1,"1981":2,"2000":1,"2286":1,"2310":1,"2311":1,"2372":1,"2374":1,"2399":1,"2453":1,"2459":1,"2546":1,"2548":1,"2552":1,"2566":1,"2644":1,"2645":1,"2719":1,"2722":1,"2742":1,"2744":1,"2750":2,"2817":1,"2821":1,"2834":1,"2915":1,"2919":1,"2920":1,"2930":1}}],["alls",{"2":{"222":2}}],["all|txbolt|geminipr",{"2":{"176":1}}],["allison",{"2":{"154":4,"222":1}}],["all",{"0":{"483":1,"706":1,"734":1,"812":1,"816":1,"840":1,"844":1,"870":1,"874":1,"902":1,"906":1,"937":1,"941":1,"971":1,"975":1,"1005":1,"1009":1,"1039":1,"1043":1,"1073":1,"1077":1,"1107":1,"1111":1,"1141":1,"1145":1,"1175":1,"1179":1,"1228":1,"1232":1,"1305":1,"1462":1,"1861":1,"2087":1,"2719":1},"1":{"707":1,"735":1,"813":1,"817":1,"841":1,"845":1,"871":1,"875":1,"903":1,"907":1,"938":1,"942":1,"972":1,"976":1,"1006":1,"1010":1,"1040":1,"1044":1,"1074":1,"1078":1,"1108":1,"1112":1,"1142":1,"1146":1,"1176":1,"1180":1,"1229":1,"1233":1,"1306":1,"1862":1,"2088":1},"2":{"1":1,"3":1,"4":1,"7":1,"8":1,"14":1,"15":1,"16":1,"22":1,"25":1,"26":1,"32":1,"36":1,"49":3,"57":1,"65":1,"69":1,"77":1,"83":1,"98":1,"111":2,"113":1,"114":4,"120":1,"124":1,"126":1,"134":1,"145":1,"160":1,"163":2,"176":2,"182":1,"191":2,"194":2,"199":2,"215":1,"222":14,"249":1,"255":1,"265":2,"266":1,"268":3,"277":1,"279":1,"307":3,"369":2,"373":1,"374":1,"378":1,"387":1,"392":2,"405":2,"407":1,"408":1,"415":1,"416":2,"427":3,"431":2,"432":2,"439":1,"440":1,"444":1,"453":1,"457":3,"486":1,"490":6,"492":1,"494":1,"508":1,"512":2,"519":1,"523":1,"539":1,"540":2,"553":2,"557":1,"562":1,"572":1,"587":4,"590":1,"595":1,"597":1,"603":1,"613":2,"614":1,"617":1,"629":2,"637":1,"644":1,"650":2,"651":2,"654":1,"669":1,"683":1,"684":2,"692":1,"706":1,"711":1,"718":1,"734":1,"750":1,"755":1,"756":2,"763":1,"802":1,"812":1,"816":1,"831":1,"840":1,"844":1,"860":1,"870":1,"874":1,"890":1,"902":1,"906":1,"925":1,"937":1,"941":1,"959":1,"971":1,"975":1,"993":1,"1005":1,"1009":1,"1027":1,"1039":1,"1043":1,"1061":1,"1073":1,"1077":1,"1095":1,"1107":1,"1111":1,"1129":1,"1141":1,"1145":1,"1163":1,"1175":1,"1179":1,"1196":1,"1216":1,"1228":1,"1232":1,"1283":1,"1291":1,"1305":1,"1315":1,"1330":1,"1340":2,"1345":1,"1346":1,"1348":1,"1374":1,"1375":2,"1395":1,"1407":2,"1409":1,"1410":3,"1413":1,"1416":1,"1417":1,"1419":1,"1422":5,"1427":3,"1435":1,"1438":1,"1440":2,"1452":1,"1453":1,"1454":1,"1457":1,"1458":1,"1462":3,"1464":1,"1466":5,"1475":1,"1479":3,"1484":1,"1485":1,"1486":1,"1491":1,"1497":1,"1512":1,"1513":1,"1532":2,"1540":1,"1552":1,"1585":1,"1587":1,"1598":1,"1606":4,"1610":1,"1613":1,"1614":2,"1619":1,"1662":1,"1672":1,"1674":1,"1675":1,"1756":1,"1764":1,"1768":1,"1770":2,"1775":2,"1776":1,"1777":1,"1778":2,"1779":1,"1791":2,"1837":2,"1840":2,"1841":3,"1846":2,"1861":1,"1917":2,"1919":2,"1932":1,"1938":4,"1954":1,"1956":3,"1957":2,"1968":1,"1983":1,"1985":1,"1992":1,"1997":1,"1999":1,"2007":1,"2050":1,"2060":2,"2061":3,"2063":4,"2069":2,"2073":1,"2087":1,"2163":1,"2177":1,"2181":1,"2184":3,"2203":1,"2206":1,"2216":4,"2217":7,"2218":1,"2221":1,"2252":2,"2253":1,"2268":1,"2272":1,"2282":1,"2286":1,"2289":1,"2290":3,"2296":1,"2303":4,"2306":2,"2308":1,"2312":1,"2318":1,"2322":1,"2323":1,"2324":4,"2370":1,"2375":1,"2376":1,"2381":1,"2386":1,"2391":1,"2398":1,"2401":2,"2408":1,"2410":13,"2411":4,"2418":1,"2420":1,"2421":1,"2423":1,"2424":1,"2427":2,"2428":1,"2442":2,"2443":1,"2445":1,"2446":4,"2453":1,"2456":1,"2459":3,"2461":1,"2473":1,"2474":1,"2492":1,"2495":1,"2501":2,"2503":1,"2509":1,"2516":1,"2520":2,"2550":1,"2554":1,"2560":1,"2562":3,"2564":1,"2566":1,"2575":1,"2579":1,"2589":2,"2590":1,"2594":1,"2601":1,"2605":1,"2613":1,"2619":1,"2621":5,"2627":1,"2630":1,"2631":1,"2633":1,"2653":1,"2656":3,"2657":1,"2664":1,"2667":1,"2669":1,"2680":1,"2683":1,"2684":1,"2685":1,"2687":2,"2695":1,"2702":1,"2703":1,"2707":1,"2719":2,"2721":7,"2722":1,"2723":1,"2727":2,"2740":1,"2742":1,"2743":1,"2744":1,"2747":1,"2749":12,"2750":5,"2758":2,"2759":1,"2766":2,"2767":1,"2820":1,"2829":1,"2844":1,"2862":1,"2874":2,"2878":1,"2883":1,"2885":2,"2887":1,"2888":1,"2898":1,"2900":1,"2903":1,"2904":2,"2905":1,"2912":3,"2913":3,"2924":1,"2928":1,"2931":1,"2933":1,"2936":1,"2938":3,"2939":1,"2941":1,"2942":2}}],["ast1109mltrq",{"2":{"2682":1}}],["astr",{"2":{"2527":1,"2547":1}}],["astro65",{"2":{"114":1}}],["asterisk",{"2":{"2503":1,"2527":1,"2543":1,"2547":1}}],["asian",{"2":{"2322":1}}],["aside",{"2":{"1375":1,"2473":1}}],["as5",{"2":{"1919":1,"2520":1}}],["as400",{"2":{"2503":1,"2543":1}}],["as4",{"2":{"1919":1,"2520":1}}],["as3",{"2":{"1919":1,"2520":1}}],["as2",{"2":{"1919":1,"2520":1}}],["as1",{"2":{"1919":1,"2520":1}}],["asd",{"2":{"1789":2}}],["asdf2",{"2":{"447":5}}],["asking",{"2":{"2560":1}}],["ask",{"0":{"412":1},"2":{"523":1,"608":3,"616":1,"617":1,"2398":1,"2401":1,"2440":1,"2573":1,"2605":1,"2675":1,"2723":1,"2929":1}}],["asked",{"0":{"1311":1,"1331":1},"1":{"1312":1,"1313":1,"1314":1,"1315":1,"1316":1,"1317":1,"1332":1,"1333":1,"1334":1,"1335":1,"1336":1,"1337":1,"1338":1,"1339":1,"1340":1},"2":{"265":1,"275":1,"307":1,"683":1,"2499":1,"2605":1,"2722":1}}],["aspects",{"2":{"279":1,"369":1,"1427":1,"1586":1}}],["asynchronously",{"2":{"390":1}}],["asynchronous",{"2":{"368":1,"374":1}}],["asyncusb",{"2":{"266":1}}],["async",{"0":{"263":1},"2":{"266":1,"277":1}}],["asymmetric",{"2":{"145":1,"1410":2}}],["asym",{"2":{"114":1,"1410":5,"1413":1,"2847":1}}],["ashpil",{"2":{"218":2}}],["ascii",{"0":{"1352":1,"2235":1,"2761":1},"1":{"2236":1},"2":{"176":2,"1440":1,"1532":1,"2052":2,"2218":1,"2220":1,"2221":1,"2222":1,"2227":1,"2229":1,"2231":1,"2233":1,"2235":1,"2236":1,"2748":8,"2758":2,"2760":3,"2761":6,"2762":3,"2763":2,"2845":2,"2849":1,"2879":3}}],["asst",{"2":{"2503":1,"2542":1}}],["associate",{"2":{"2312":1}}],["associated",{"2":{"175":1,"240":1,"373":1,"560":1,"561":1,"611":2,"625":1,"1532":1,"2288":1,"2289":1,"2312":3,"2459":1,"2696":1,"2714":1,"2722":1,"2765":3,"2773":1,"2864":1,"2871":1}}],["assistance",{"2":{"2605":1}}],["assistant",{"2":{"2503":2,"2542":2}}],["assist",{"2":{"1339":1,"2187":1}}],["assigns",{"2":{"2469":1,"2777":1}}],["assigned",{"2":{"686":1,"1614":1,"1981":1,"1982":1}}],["assigning",{"2":{"627":1,"2425":1,"2678":1}}],["assignment",{"0":{"2931":1},"2":{"133":1,"134":2,"312":1,"530":1,"2719":1,"2862":1}}],["assignments",{"2":{"17":1,"114":1,"1619":2,"2684":1,"2749":2}}],["assign",{"2":{"48":1,"235":1,"686":1,"1309":1,"1310":1,"1659":1,"1757":1,"1823":1,"1839":1,"1987":1,"2059":1,"2157":1,"2182":1,"2473":2,"2548":1,"2836":1,"2923":1}}],["assembled",{"2":{"1939":1,"1941":1}}],["assembler",{"2":{"134":1}}],["assertions",{"2":{"2728":1}}],["assertion",{"2":{"391":1}}],["assert",{"2":{"390":1,"1627":1,"1641":1,"1643":1,"1645":1,"2760":1,"2761":1,"2767":1,"2768":1,"2770":1,"2772":1}}],["assessment",{"2":{"312":1}}],["assuming",{"2":{"758":4,"2074":1,"2290":1,"2310":1,"2750":2}}],["assume",{"2":{"390":1,"624":1,"644":1,"2404":1,"2587":1,"2926":1}}],["assumes",{"2":{"378":1,"741":1,"1190":1,"1443":1,"1947":1,"1979":1,"2222":1,"2252":1,"2256":1,"2264":1,"2268":1,"2271":2,"2277":1,"2310":1,"2398":1,"2404":1,"2625":1,"2702":1,"2879":1,"2926":2}}],["assumed",{"2":{"14":1,"152":1,"212":1,"334":1,"473":1,"566":1,"1407":1,"1847":1,"2070":1,"2264":1,"2293":1,"2415":1,"2676":1,"2705":1}}],["assumption",{"2":{"303":1,"317":1}}],["assumptions",{"2":{"160":1,"191":1}}],["as",{"0":{"6":1,"341":1,"1773":1,"1918":1,"1998":1,"2456":1,"2477":1,"2479":1,"2481":1},"1":{"1778":1,"1779":1,"1780":1,"1999":1,"2478":1,"2480":1,"2482":1},"2":{"6":1,"8":1,"31":2,"37":1,"49":3,"50":5,"55":1,"56":1,"57":1,"65":1,"67":1,"69":1,"76":1,"86":1,"87":1,"90":1,"99":1,"103":2,"107":2,"114":2,"116":1,"118":1,"120":1,"123":1,"124":2,"125":1,"126":2,"131":1,"132":4,"137":2,"138":3,"141":2,"145":2,"160":1,"163":1,"166":1,"169":1,"170":1,"173":2,"175":1,"176":3,"179":1,"184":2,"185":1,"189":1,"191":2,"194":2,"198":5,"199":2,"201":4,"203":3,"212":3,"222":1,"224":5,"228":1,"229":3,"230":1,"231":1,"232":3,"233":1,"234":3,"235":1,"236":1,"238":1,"240":3,"243":3,"244":1,"246":1,"249":2,"254":1,"262":1,"263":7,"265":2,"266":1,"272":2,"273":1,"275":1,"276":3,"279":1,"283":2,"284":1,"289":1,"293":1,"297":1,"298":2,"302":2,"303":2,"305":1,"307":1,"308":1,"312":1,"314":1,"317":1,"320":1,"323":1,"328":1,"331":3,"334":1,"348":1,"358":1,"369":2,"373":1,"387":3,"390":1,"391":1,"397":1,"408":3,"419":1,"422":1,"428":1,"431":5,"442":1,"458":1,"459":1,"460":1,"468":2,"471":1,"487":2,"489":3,"502":2,"510":4,"511":1,"512":3,"514":1,"518":1,"519":1,"523":2,"525":1,"529":2,"530":1,"536":1,"540":2,"544":1,"562":4,"568":3,"569":2,"570":2,"572":1,"573":1,"580":1,"581":1,"586":5,"590":1,"591":1,"596":1,"608":2,"611":1,"614":1,"617":2,"619":1,"625":3,"628":1,"632":2,"633":2,"638":2,"641":1,"643":4,"644":4,"649":5,"655":1,"663":4,"664":1,"667":1,"669":2,"676":1,"677":1,"682":3,"683":2,"685":3,"686":4,"687":2,"692":3,"696":1,"698":1,"711":1,"713":3,"717":2,"719":1,"726":1,"740":1,"743":1,"746":5,"747":2,"751":1,"752":2,"753":2,"754":1,"756":6,"758":8,"762":1,"763":2,"765":2,"829":1,"860":1,"890":1,"920":4,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1091":4,"1095":1,"1125":4,"1129":1,"1163":1,"1189":1,"1190":2,"1191":2,"1194":4,"1195":1,"1197":3,"1198":1,"1202":1,"1211":1,"1216":1,"1243":1,"1245":4,"1266":2,"1284":1,"1285":1,"1286":2,"1293":1,"1294":1,"1295":1,"1308":1,"1310":1,"1314":1,"1316":1,"1327":2,"1329":1,"1333":1,"1340":1,"1358":1,"1362":2,"1369":2,"1373":1,"1375":2,"1377":1,"1378":2,"1395":1,"1402":2,"1406":1,"1407":4,"1416":5,"1417":2,"1419":3,"1420":1,"1421":2,"1422":1,"1424":1,"1425":1,"1426":1,"1427":1,"1428":1,"1435":1,"1440":3,"1442":1,"1445":1,"1447":1,"1449":1,"1457":1,"1458":2,"1459":2,"1460":2,"1461":2,"1466":3,"1468":1,"1472":2,"1473":1,"1476":1,"1477":2,"1479":1,"1480":2,"1484":1,"1486":2,"1492":1,"1493":1,"1495":2,"1497":1,"1508":1,"1511":1,"1512":3,"1513":1,"1515":6,"1516":6,"1517":3,"1521":2,"1522":2,"1526":2,"1527":1,"1528":2,"1532":8,"1534":2,"1535":2,"1540":2,"1543":1,"1584":1,"1586":2,"1587":4,"1588":3,"1591":1,"1597":1,"1599":2,"1600":1,"1603":1,"1605":1,"1606":4,"1610":1,"1614":1,"1616":3,"1617":1,"1622":2,"1623":1,"1624":3,"1625":1,"1626":1,"1629":1,"1630":1,"1632":1,"1640":1,"1653":1,"1654":1,"1655":1,"1662":1,"1664":2,"1675":3,"1679":1,"1681":1,"1683":1,"1684":1,"1696":1,"1732":2,"1733":1,"1736":1,"1737":1,"1741":1,"1744":1,"1756":1,"1759":2,"1771":2,"1773":1,"1775":5,"1780":2,"1781":1,"1782":1,"1788":1,"1790":1,"1822":1,"1828":2,"1829":1,"1831":2,"1834":1,"1835":1,"1837":2,"1838":1,"1840":3,"1843":1,"1844":1,"1845":1,"1849":1,"1914":2,"1917":1,"1919":1,"1928":2,"1929":2,"1931":1,"1933":3,"1936":1,"1948":1,"1949":1,"1954":1,"1955":1,"1956":1,"1968":2,"1976":3,"1979":4,"1981":2,"1982":1,"1992":6,"1993":7,"1994":1,"1996":1,"1997":1,"1999":1,"2001":1,"2002":1,"2004":2,"2005":1,"2006":1,"2007":2,"2008":1,"2030":1,"2032":2,"2036":1,"2041":1,"2044":1,"2047":2,"2058":1,"2060":3,"2064":4,"2066":1,"2068":1,"2072":2,"2142":1,"2160":3,"2161":1,"2162":1,"2166":2,"2167":2,"2168":4,"2174":1,"2181":1,"2182":2,"2186":1,"2199":1,"2200":1,"2203":2,"2216":1,"2217":1,"2218":1,"2221":1,"2248":4,"2252":1,"2253":2,"2254":3,"2258":1,"2262":1,"2265":1,"2266":1,"2268":4,"2269":1,"2270":1,"2271":3,"2273":2,"2274":1,"2279":1,"2283":1,"2285":3,"2287":3,"2288":1,"2289":1,"2290":3,"2291":4,"2293":2,"2294":1,"2296":1,"2298":2,"2302":1,"2303":1,"2309":3,"2310":2,"2311":4,"2312":4,"2322":2,"2323":3,"2324":4,"2362":1,"2368":1,"2373":1,"2374":1,"2375":2,"2376":1,"2377":4,"2378":1,"2380":2,"2381":1,"2382":1,"2383":1,"2384":4,"2386":1,"2387":1,"2388":1,"2392":1,"2393":1,"2395":1,"2397":1,"2399":1,"2401":4,"2403":1,"2410":5,"2411":5,"2415":4,"2416":2,"2417":1,"2418":1,"2420":1,"2421":1,"2422":1,"2423":2,"2424":6,"2425":1,"2427":1,"2428":1,"2440":1,"2442":2,"2444":1,"2445":1,"2446":2,"2447":3,"2448":1,"2451":2,"2453":1,"2454":2,"2456":1,"2459":6,"2461":1,"2471":1,"2472":1,"2477":1,"2479":1,"2481":1,"2489":1,"2492":1,"2495":1,"2496":3,"2497":1,"2498":1,"2501":1,"2503":2,"2506":6,"2516":1,"2519":6,"2520":1,"2543":1,"2545":1,"2548":7,"2550":2,"2551":1,"2554":1,"2555":2,"2557":2,"2559":3,"2560":4,"2561":4,"2562":9,"2564":1,"2565":1,"2576":1,"2582":1,"2583":1,"2584":1,"2585":1,"2587":3,"2590":2,"2613":2,"2615":1,"2619":4,"2621":1,"2627":1,"2630":2,"2632":2,"2636":1,"2643":2,"2644":1,"2645":1,"2646":3,"2655":2,"2657":1,"2662":2,"2666":3,"2669":3,"2671":1,"2674":1,"2676":1,"2677":2,"2678":2,"2679":1,"2680":1,"2685":5,"2687":2,"2688":1,"2689":3,"2691":1,"2694":1,"2703":1,"2704":1,"2705":1,"2707":2,"2708":1,"2710":1,"2719":2,"2721":14,"2722":4,"2723":1,"2724":2,"2725":1,"2734":1,"2735":3,"2744":2,"2746":6,"2747":1,"2748":6,"2749":1,"2750":10,"2757":1,"2758":1,"2762":1,"2766":1,"2775":3,"2776":2,"2777":2,"2780":2,"2781":3,"2782":1,"2788":1,"2789":1,"2795":1,"2801":1,"2827":2,"2833":1,"2839":1,"2844":1,"2845":2,"2850":2,"2862":3,"2875":2,"2877":1,"2878":1,"2879":4,"2881":2,"2887":1,"2894":2,"2895":2,"2896":1,"2905":6,"2911":2,"2912":9,"2913":3,"2914":3,"2915":2,"2918":7,"2919":2,"2920":2,"2921":1,"2923":2,"2925":1,"2927":2,"2929":2,"2933":1,"2936":1,"2941":4,"2942":2}}],["at25sf128a",{"2":{"2705":2}}],["ation",{"2":{"2170":1}}],["atm32u4dfu",{"2":{"686":1}}],["atm16u4",{"2":{"686":1}}],["atmel",{"0":{"544":1,"2376":1,"2491":1},"1":{"2377":1,"2378":1},"2":{"111":1,"240":3,"571":2,"686":7,"2376":2,"2491":1,"2496":1,"2605":1,"2608":2,"2795":1,"2796":1}}],["atmega16",{"2":{"690":1,"764":2,"1244":1,"1265":2,"1547":2,"1548":2}}],["atmega16u4",{"2":{"544":1,"2491":1}}],["atmega16u2",{"2":{"64":1,"92":1,"544":1,"686":1}}],["atmega32a",{"2":{"235":1,"544":1,"690":1,"764":1,"1244":1,"1265":1,"1547":1,"1548":1,"2493":1,"2494":2}}],["atmega32u4",{"0":{"2034":1},"2":{"70":1,"111":1,"442":1,"544":1,"571":1,"695":1,"712":1,"720":1,"1312":4,"1314":1,"1368":1,"1468":1,"1955":1,"2036":1,"2254":1,"2417":5,"2491":1,"2492":1,"2495":1,"2605":1,"2608":5,"2706":1,"2894":1,"2927":1}}],["atmega32u2",{"2":{"63":1,"64":1,"544":1,"686":1}}],["atmega328p",{"2":{"64":1,"544":1,"2382":1,"2494":2}}],["atmega328",{"2":{"64":1,"544":1,"690":2,"764":1,"1244":1,"1265":1,"1547":1,"1548":1}}],["at32",{"0":{"548":1,"2391":1},"1":{"2392":1},"2":{"317":1,"686":2,"2391":3,"2392":1}}],["at32f415",{"2":{"285":1,"294":1,"548":1}}],["atlas",{"2":{"222":1}}],["atsam",{"2":{"75":1,"114":4,"134":1,"145":1,"277":1,"279":2,"285":1}}],["atop",{"2":{"69":1}}],["atomically",{"2":{"760":1}}],["atomic",{"0":{"760":1},"2":{"64":1,"277":1,"760":5}}],["atom47",{"2":{"57":4,"114":1}}],["at90usb1286",{"2":{"2417":1}}],["at90usb128",{"2":{"544":1,"686":1,"2483":2,"2491":2}}],["at90usb162",{"2":{"74":1,"544":1,"1547":1,"1548":1}}],["at90usb64",{"2":{"544":1,"686":1,"690":1,"764":1,"1244":1,"1265":1,"1547":1,"1548":1,"2491":2}}],["at90usb",{"2":{"63":1}}],["attain",{"2":{"2560":1,"2562":1,"2721":1}}],["attacking",{"2":{"1487":1}}],["attack",{"2":{"312":1,"2560":1}}],["attach",{"0":{"2754":1},"2":{"2754":4}}],["attachment",{"2":{"1364":1,"2754":1}}],["attaching",{"2":{"82":1,"2754":1}}],["attached",{"2":{"49":1,"1543":1,"1635":1,"1678":2,"1679":1,"1976":1,"2171":1,"2265":1,"2416":3,"2459":1}}],["attribution",{"2":{"2707":2}}],["attribute",{"2":{"493":1,"495":1,"496":1,"623":4,"1464":2,"1466":1,"1683":1,"2374":1,"2760":1,"2761":1,"2762":2,"2767":1,"2768":1,"2769":1,"2770":1,"2771":1,"2772":1,"2773":1}}],["attributes",{"2":{"110":1,"492":1,"2676":2}}],["attractive",{"2":{"2418":1}}],["attrs",{"2":{"1329":2}}],["attiny85",{"2":{"1288":2}}],["attenuate",{"2":{"1968":5}}],["attenuation",{"2":{"176":1,"191":1,"1968":6}}],["attention",{"2":{"397":1,"675":1,"2265":1,"2503":1,"2541":1}}],["attempted",{"0":{"2733":1},"1":{"2734":1,"2735":1},"2":{"263":1,"1386":1,"1404":1,"2560":6,"2605":1}}],["attempts",{"0":{"2734":1},"2":{"87":1,"312":1,"358":1,"717":1,"2206":1,"2268":2,"2404":1,"2926":1}}],["attempting",{"2":{"51":1,"123":1,"240":1,"1326":1,"1828":1,"2270":1,"2501":1,"2608":1,"2678":1}}],["attempt",{"2":{"51":1,"123":1,"182":1,"794":2,"1466":1,"2268":3,"2362":1,"2380":1,"2418":1,"2560":1,"2609":1}}],["at101",{"2":{"37":2,"144":2,"145":1}}],["at",{"0":{"2308":1},"2":{"4":1,"11":1,"21":1,"25":1,"28":1,"65":2,"73":1,"75":1,"114":1,"124":1,"134":2,"137":1,"141":1,"142":1,"160":2,"191":2,"199":1,"210":1,"214":1,"222":1,"229":2,"231":1,"241":2,"249":3,"251":1,"265":3,"266":2,"277":1,"285":1,"371":2,"392":1,"397":1,"405":1,"406":1,"408":1,"471":1,"487":2,"490":1,"510":5,"519":2,"522":1,"527":1,"539":1,"540":2,"542":1,"553":2,"554":1,"565":1,"572":1,"574":2,"590":2,"591":2,"602":2,"606":1,"614":1,"624":1,"625":5,"631":1,"633":1,"641":1,"643":1,"644":2,"645":1,"654":1,"655":2,"662":1,"671":1,"681":1,"683":1,"684":2,"688":1,"692":1,"717":1,"725":1,"746":1,"751":3,"754":1,"760":1,"794":1,"801":1,"830":1,"859":1,"889":1,"924":1,"958":1,"992":1,"1026":1,"1060":1,"1094":1,"1128":1,"1162":1,"1189":1,"1195":1,"1198":1,"1215":1,"1249":2,"1269":1,"1293":1,"1296":1,"1300":1,"1315":1,"1316":1,"1324":1,"1328":1,"1345":1,"1375":1,"1386":1,"1413":2,"1416":1,"1417":2,"1461":1,"1464":1,"1466":1,"1471":1,"1475":1,"1478":3,"1479":1,"1481":1,"1486":1,"1497":2,"1521":1,"1522":1,"1527":1,"1532":2,"1533":2,"1540":2,"1550":1,"1551":1,"1552":1,"1587":2,"1589":1,"1596":1,"1602":1,"1610":1,"1619":1,"1624":1,"1627":1,"1633":1,"1635":2,"1650":1,"1655":1,"1657":1,"1661":1,"1664":2,"1679":1,"1683":1,"1691":1,"1722":1,"1723":1,"1734":1,"1780":1,"1781":1,"1805":1,"1847":1,"1849":1,"1924":1,"1925":1,"1928":2,"1929":1,"1930":6,"1931":1,"1932":1,"1933":3,"1936":1,"1941":1,"1948":1,"1949":1,"1955":1,"1956":12,"1959":1,"1961":1,"1968":1,"1976":3,"1978":1,"1979":4,"1992":1,"2036":1,"2050":1,"2063":7,"2070":1,"2072":1,"2074":1,"2172":1,"2176":1,"2180":1,"2184":1,"2191":5,"2194":12,"2198":1,"2215":1,"2251":1,"2252":1,"2257":2,"2260":2,"2265":4,"2270":1,"2279":1,"2283":11,"2286":1,"2287":1,"2291":2,"2292":1,"2293":2,"2302":2,"2303":1,"2310":2,"2312":1,"2322":1,"2325":2,"2372":3,"2389":1,"2393":1,"2395":1,"2397":1,"2398":1,"2410":1,"2411":3,"2418":1,"2420":1,"2421":3,"2422":1,"2427":1,"2443":1,"2455":1,"2457":1,"2459":4,"2465":1,"2470":1,"2474":1,"2497":1,"2501":9,"2527":1,"2533":2,"2547":1,"2550":1,"2553":1,"2554":1,"2560":2,"2561":1,"2566":2,"2572":1,"2577":1,"2578":1,"2585":1,"2589":1,"2595":1,"2601":1,"2605":1,"2609":1,"2620":1,"2621":1,"2627":4,"2630":1,"2633":1,"2635":1,"2643":1,"2651":1,"2652":3,"2664":1,"2676":5,"2677":1,"2678":2,"2679":1,"2680":1,"2683":1,"2708":1,"2710":1,"2719":1,"2721":7,"2722":1,"2725":1,"2727":1,"2746":1,"2747":3,"2748":1,"2749":2,"2750":8,"2751":1,"2760":2,"2768":2,"2809":1,"2826":1,"2835":1,"2844":2,"2875":1,"2878":1,"2885":1,"2896":3,"2905":2,"2907":1,"2920":1,"2927":1,"2929":1,"2930":2,"2931":1,"2932":2,"2933":3,"2937":1,"2940":1,"2941":1,"2942":1}}],["atreus",{"0":{"4":1},"2":{"176":1,"277":1,"328":1}}],["ancient",{"2":{"2688":1}}],["anchors",{"2":{"335":3}}],["anchor",{"2":{"210":1,"335":1}}],["analysis",{"2":{"2646":1}}],["analogue",{"2":{"2423":1}}],["analogreference",{"2":{"695":1}}],["analogreadpinadc",{"2":{"696":1}}],["analogreadpin",{"2":{"50":1,"695":1,"696":1}}],["analogread",{"2":{"50":1,"133":1,"134":1}}],["analog",{"0":{"1962":1},"2":{"49":1,"74":1,"118":2,"160":1,"191":1,"199":2,"234":6,"236":1,"249":1,"687":1,"688":1,"695":1,"1395":2,"1732":2,"1733":2,"1736":1,"1741":1,"1743":4,"1749":1,"1917":1,"1962":22}}],["anatomy",{"0":{"2553":1},"1":{"2554":1,"2555":1,"2556":1,"2557":1}}],["anodes",{"2":{"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1216":1}}],["another",{"2":{"95":1,"160":2,"194":1,"233":1,"251":1,"268":1,"289":1,"397":1,"507":1,"562":2,"680":1,"1393":1,"1421":1,"1440":2,"1456":1,"1472":1,"1474":1,"1477":1,"1492":1,"1512":1,"1527":1,"1532":1,"1589":1,"1603":1,"1607":1,"1613":2,"1656":1,"1675":1,"1776":1,"1779":1,"2156":1,"2157":1,"2160":1,"2258":1,"2285":2,"2291":1,"2293":2,"2303":1,"2310":1,"2318":1,"2381":1,"2393":1,"2395":1,"2397":1,"2457":1,"2475":1,"2496":1,"2553":1,"2561":1,"2627":1,"2651":1,"2652":1,"2671":1,"2721":2,"2749":2,"2824":1,"2827":1,"2906":3,"2912":4,"2913":4,"2918":1,"2921":3,"2935":1}}],["answer",{"2":{"522":1,"608":2,"2621":4}}],["ansi|iso",{"2":{"308":1}}],["ansi",{"0":{"35":1,"2527":1,"2545":1},"1":{"36":1,"2546":1,"2547":1},"2":{"35":1,"36":4,"99":1,"102":1,"114":1,"144":2,"160":1,"168":2,"176":1,"188":1,"191":1,"205":2,"218":1,"222":4,"226":6,"259":2,"260":1,"266":2,"277":1,"308":1,"322":1,"427":3,"442":1,"492":1,"1343":3,"1427":3,"1428":3,"1459":2,"2222":1,"2252":1,"2446":5,"2527":1,"2545":1,"2587":1,"2721":1,"2862":4,"2877":1,"2879":1,"2880":10}}],["anti",{"2":{"438":1,"2728":1,"2741":1,"2748":1,"2865":1}}],["anticipation",{"2":{"86":1}}],["anticipated",{"2":{"2":1,"1493":1}}],["annotation",{"2":{"537":1}}],["annotated",{"0":{"537":1}}],["announce",{"2":{"224":1,"401":1,"402":1,"405":1}}],["annepro2",{"2":{"191":1,"249":1,"266":2}}],["anim",{"2":{"2750":4}}],["animtion",{"2":{"191":1}}],["animate",{"2":{"2180":1,"2750":9}}],["animated",{"2":{"138":1,"2459":1,"2746":1,"2748":1,"2750":1}}],["animation",{"0":{"2177":1,"2178":1,"2180":1},"2":{"49":2,"145":1,"191":5,"210":1,"236":1,"249":1,"285":1,"308":1,"328":1,"460":1,"1842":2,"1843":1,"1846":4,"1859":1,"1861":1,"1902":1,"1904":1,"1906":1,"1909":1,"1951":2,"2062":2,"2063":3,"2069":4,"2085":1,"2087":1,"2146":1,"2148":1,"2150":1,"2153":1,"2174":10,"2176":1,"2177":11,"2178":10,"2180":6,"2192":4,"2195":4,"2518":2,"2525":10,"2526":2,"2750":6,"2757":1,"2769":1,"2864":4,"2870":2,"2871":4}}],["animations",{"0":{"2176":1,"2189":1},"1":{"2177":1,"2178":1,"2179":1,"2180":1,"2190":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1},"2":{"32":1,"124":5,"138":1,"176":1,"191":1,"199":1,"210":1,"222":1,"236":1,"1840":2,"1842":2,"1844":1,"2060":2,"2062":2,"2066":1,"2177":4,"2178":1,"2179":2,"2180":6,"2181":1,"2192":6,"2518":2,"2526":2,"2721":1,"2746":1,"2747":4,"2748":1,"2750":1,"2770":1,"2864":3,"2870":2,"2871":3,"2887":4}}],["angle65",{"2":{"222":1}}],["angle",{"2":{"176":2,"1735":1,"1976":2,"1979":1,"2527":2,"2547":2,"2862":1}}],["angel64",{"2":{"154":4}}],["angel17",{"2":{"154":2}}],["an",{"0":{"417":1,"665":1,"1335":1,"1517":1,"1654":1,"2628":1,"2685":1,"2686":1,"2689":1},"1":{"666":1,"667":1,"668":1,"669":1,"670":1,"671":1,"2629":1,"2630":1,"2686":1,"2687":2,"2688":2,"2689":1,"2690":1,"2691":1},"2":{"5":1,"6":1,"14":1,"49":1,"50":1,"73":2,"99":3,"103":1,"126":1,"132":1,"143":1,"160":1,"172":1,"176":1,"182":1,"194":2,"212":1,"214":2,"234":1,"248":1,"249":1,"268":1,"279":1,"288":1,"289":1,"294":1,"320":1,"333":1,"346":1,"359":1,"367":1,"368":1,"374":1,"375":1,"378":2,"383":2,"445":1,"461":1,"465":1,"466":1,"470":1,"471":1,"474":1,"475":1,"485":1,"487":2,"489":1,"493":1,"494":1,"510":1,"511":1,"518":1,"521":1,"522":3,"523":1,"536":1,"542":1,"557":1,"559":2,"563":1,"568":1,"572":1,"576":1,"580":1,"589":1,"597":2,"602":1,"610":1,"611":4,"616":1,"617":2,"618":2,"621":1,"625":1,"626":1,"627":1,"628":1,"642":2,"663":1,"666":2,"669":1,"670":1,"673":2,"680":2,"684":1,"685":1,"686":1,"693":1,"695":1,"696":1,"698":2,"711":1,"712":1,"714":1,"720":1,"726":1,"745":1,"746":1,"747":1,"749":1,"750":1,"751":2,"752":1,"758":4,"763":1,"765":3,"773":1,"782":1,"788":1,"802":1,"831":1,"860":1,"890":1,"925":1,"959":1,"993":1,"1027":1,"1061":1,"1095":1,"1129":1,"1163":1,"1194":1,"1196":1,"1200":1,"1201":1,"1202":2,"1205":1,"1216":1,"1245":1,"1248":1,"1249":2,"1266":1,"1285":1,"1288":1,"1293":1,"1308":1,"1312":1,"1317":1,"1329":1,"1333":1,"1336":1,"1339":1,"1342":1,"1353":1,"1362":1,"1375":1,"1396":1,"1407":2,"1409":2,"1424":1,"1432":1,"1437":1,"1438":1,"1440":3,"1446":1,"1472":1,"1474":1,"1475":1,"1486":1,"1487":1,"1492":1,"1493":1,"1511":2,"1512":1,"1521":1,"1522":2,"1539":1,"1543":1,"1552":1,"1587":2,"1595":1,"1599":1,"1606":1,"1611":1,"1628":1,"1632":2,"1649":1,"1659":1,"1660":1,"1661":1,"1663":1,"1667":1,"1675":1,"1691":1,"1693":1,"1711":1,"1714":1,"1715":1,"1720":1,"1732":3,"1741":1,"1771":1,"1773":2,"1775":1,"1778":1,"1779":2,"1782":1,"1788":1,"1789":1,"1827":2,"1828":1,"1829":1,"1833":1,"1839":2,"1844":1,"1845":1,"1846":2,"1849":1,"1859":1,"1861":1,"1919":2,"1930":2,"1942":1,"1955":1,"1960":1,"1961":1,"1962":2,"1972":1,"1974":1,"1975":1,"1978":1,"1979":1,"1980":1,"1992":1,"2037":1,"2047":1,"2052":1,"2056":1,"2059":2,"2066":1,"2068":1,"2069":2,"2072":1,"2085":1,"2087":1,"2142":1,"2160":1,"2161":1,"2168":1,"2181":2,"2182":2,"2201":2,"2211":2,"2220":1,"2221":1,"2231":1,"2233":1,"2235":1,"2237":1,"2248":1,"2253":2,"2254":1,"2260":1,"2265":1,"2269":2,"2271":1,"2273":1,"2284":2,"2286":1,"2287":1,"2291":1,"2293":1,"2298":2,"2302":1,"2310":4,"2322":2,"2323":1,"2324":1,"2346":1,"2368":2,"2372":1,"2377":1,"2381":1,"2383":1,"2384":1,"2387":3,"2392":1,"2398":1,"2411":1,"2416":1,"2422":2,"2428":1,"2434":1,"2439":1,"2442":1,"2443":1,"2446":3,"2451":1,"2459":2,"2461":1,"2471":1,"2476":1,"2477":1,"2479":2,"2481":1,"2495":1,"2497":1,"2498":1,"2499":1,"2501":1,"2520":2,"2549":1,"2552":1,"2553":1,"2556":1,"2557":1,"2558":1,"2561":1,"2562":2,"2572":1,"2582":2,"2587":1,"2591":3,"2621":1,"2625":1,"2633":2,"2645":1,"2646":3,"2651":1,"2656":1,"2660":1,"2661":2,"2666":1,"2678":1,"2681":1,"2683":1,"2684":1,"2685":2,"2687":1,"2688":1,"2689":4,"2691":1,"2700":1,"2705":2,"2706":1,"2708":2,"2718":1,"2719":3,"2721":8,"2722":2,"2731":1,"2746":1,"2748":3,"2749":2,"2750":5,"2751":2,"2754":1,"2758":1,"2760":2,"2766":1,"2768":1,"2769":1,"2770":1,"2771":1,"2773":1,"2776":2,"2781":1,"2791":2,"2793":1,"2798":1,"2803":1,"2805":1,"2807":1,"2811":1,"2812":1,"2814":1,"2815":1,"2816":1,"2817":1,"2843":1,"2858":1,"2862":1,"2864":2,"2869":1,"2871":2,"2879":1,"2888":1,"2892":1,"2894":1,"2912":1,"2913":1,"2915":1,"2918":5,"2921":1,"2930":1,"2932":1,"2941":1}}],["anding",{"2":{"1375":1}}],["andrebrait",{"2":{"114":2,"191":1}}],["andc",{"2":{"49":1}}],["and",{"0":{"22":1,"35":2,"49":1,"50":1,"51":1,"58":1,"63":1,"64":1,"65":1,"69":1,"70":1,"74":1,"75":1,"76":1,"77":1,"87":1,"93":1,"94":1,"95":1,"113":1,"133":1,"151":1,"190":1,"229":1,"233":1,"273":1,"276":1,"284":1,"316":1,"493":1,"499":2,"500":1,"525":1,"535":1,"606":1,"647":1,"779":1,"1316":1,"1317":1,"1337":1,"1340":1,"1357":1,"1359":1,"1372":1,"1391":1,"1394":1,"1416":1,"1442":1,"1451":1,"1513":1,"1603":1,"1606":1,"1655":1,"1766":1,"1767":1,"1935":1,"1976":1,"1981":1,"1982":1,"2001":1,"2031":1,"2043":1,"2163":1,"2176":1,"2177":1,"2178":1,"2183":1,"2189":1,"2272":1,"2311":1,"2312":1,"2323":1,"2375":1,"2431":1,"2453":1,"2466":1,"2535":1,"2550":1,"2552":1,"2555":1,"2570":1,"2625":1,"2640":1,"2650":1,"2651":1,"2696":1,"2738":1,"2740":1,"2778":1,"2935":1},"1":{"36":2,"88":1,"494":1,"495":1,"496":1,"497":1,"498":1,"500":2,"501":2,"502":2,"503":2,"504":2,"780":1,"781":1,"1317":1,"1417":1,"1656":1,"1657":1,"1658":1,"2164":1,"2165":1,"2166":1,"2177":1,"2178":1,"2179":1,"2180":1,"2190":1,"2191":1,"2192":1,"2193":1,"2194":1,"2195":1,"2196":1,"2197":1,"2273":1,"2376":1,"2377":1,"2378":1,"2379":1,"2380":1,"2381":1,"2382":1,"2383":1,"2384":1,"2385":1,"2386":1,"2387":1,"2388":1,"2389":1,"2390":1,"2391":1,"2392":1,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2467":1,"2468":1,"2469":1,"2470":1,"2471":1,"2472":1,"2473":1,"2474":1,"2551":1,"2552":1,"2556":1,"2557":1,"2641":1,"2642":1,"2651":1,"2652":1,"2653":1,"2697":1,"2698":1,"2699":1,"2779":1,"2780":1,"2781":1},"2":{"1":1,"2":2,"3":4,"4":1,"5":2,"6":1,"7":3,"8":1,"10":2,"11":1,"14":2,"15":4,"16":1,"17":1,"18":1,"21":2,"22":1,"24":2,"25":2,"28":2,"30":1,"31":3,"32":5,"33":2,"34":2,"35":1,"36":1,"37":1,"38":1,"43":1,"45":4,"49":12,"50":7,"57":1,"58":1,"63":1,"64":2,"65":3,"67":1,"69":1,"70":19,"72":1,"73":3,"74":2,"75":2,"76":1,"77":1,"84":1,"86":2,"87":2,"90":1,"92":1,"93":5,"94":3,"99":1,"103":1,"107":2,"108":1,"110":2,"113":4,"114":26,"116":1,"118":1,"119":1,"120":2,"124":3,"126":2,"128":1,"130":2,"132":2,"133":1,"134":9,"137":2,"138":6,"142":2,"145":6,"151":1,"160":10,"163":3,"169":1,"172":1,"173":2,"174":2,"175":5,"176":20,"179":1,"182":3,"185":1,"186":1,"187":1,"188":4,"189":1,"190":1,"191":23,"194":6,"195":2,"196":2,"198":6,"199":11,"201":3,"202":1,"206":1,"208":2,"209":1,"210":12,"212":2,"213":2,"214":2,"217":2,"221":2,"222":53,"224":1,"228":6,"229":2,"230":1,"231":3,"232":3,"233":3,"234":1,"235":3,"236":14,"240":2,"244":1,"245":2,"249":14,"251":2,"255":1,"256":1,"257":1,"258":1,"259":4,"262":1,"263":4,"265":2,"266":6,"268":1,"271":1,"273":2,"276":2,"277":6,"283":4,"284":1,"285":4,"288":4,"289":1,"293":1,"294":4,"297":1,"298":2,"304":1,"305":1,"307":2,"308":6,"312":5,"316":1,"317":3,"320":1,"328":3,"338":4,"340":1,"341":1,"344":1,"347":1,"359":5,"360":2,"362":1,"368":2,"369":1,"371":4,"372":1,"374":1,"378":3,"380":3,"384":1,"387":11,"388":1,"390":4,"391":3,"392":2,"396":1,"397":7,"405":1,"406":1,"408":2,"410":1,"411":3,"413":2,"419":4,"421":2,"422":2,"423":2,"424":1,"427":2,"428":3,"431":8,"432":2,"433":4,"435":2,"438":4,"440":1,"441":1,"442":1,"443":1,"445":1,"446":1,"447":1,"448":1,"450":1,"451":1,"452":1,"453":1,"454":1,"458":3,"459":3,"467":1,"470":3,"471":1,"481":2,"485":2,"486":1,"487":4,"488":4,"489":2,"492":2,"493":3,"498":1,"499":3,"503":2,"504":1,"505":1,"510":5,"511":4,"512":1,"514":5,"517":2,"518":1,"519":2,"522":1,"523":1,"525":1,"527":2,"528":1,"529":1,"531":1,"532":1,"536":5,"537":1,"538":5,"540":3,"541":3,"542":1,"543":1,"544":1,"552":3,"553":2,"555":2,"556":2,"558":2,"559":8,"560":1,"562":11,"563":1,"566":3,"567":2,"568":2,"569":1,"570":1,"572":5,"573":1,"576":2,"578":1,"579":3,"582":1,"584":2,"586":1,"590":1,"591":2,"594":2,"597":2,"603":1,"606":1,"607":5,"608":1,"609":3,"611":3,"613":3,"614":1,"616":2,"617":5,"618":1,"619":2,"620":2,"621":1,"622":1,"623":3,"624":2,"627":2,"628":2,"629":1,"633":1,"635":1,"637":4,"641":1,"644":1,"645":4,"646":2,"648":2,"649":5,"654":2,"655":1,"663":9,"664":1,"666":4,"667":4,"670":3,"671":1,"672":1,"673":4,"674":2,"678":4,"679":1,"680":1,"681":4,"682":4,"683":5,"684":3,"685":5,"686":5,"687":2,"690":1,"692":4,"693":1,"696":4,"698":1,"699":1,"700":1,"711":1,"713":4,"714":3,"716":3,"717":1,"718":3,"719":1,"720":3,"722":1,"725":1,"726":1,"742":1,"743":4,"746":1,"747":1,"748":1,"750":2,"751":8,"752":2,"753":2,"754":3,"758":1,"763":2,"764":2,"779":1,"798":1,"801":1,"802":3,"827":1,"830":1,"831":3,"853":1,"857":3,"859":1,"860":3,"885":1,"889":1,"890":3,"917":1,"919":1,"920":1,"922":3,"924":1,"925":3,"952":1,"954":1,"956":3,"958":1,"959":3,"986":1,"990":3,"992":1,"993":3,"1020":1,"1024":3,"1026":1,"1027":3,"1054":1,"1058":3,"1060":1,"1061":3,"1088":1,"1090":1,"1091":1,"1092":3,"1094":1,"1095":3,"1122":1,"1124":1,"1125":1,"1126":3,"1128":1,"1129":3,"1156":1,"1158":1,"1160":3,"1162":1,"1163":3,"1189":4,"1190":2,"1191":1,"1193":2,"1194":1,"1195":1,"1196":1,"1197":6,"1198":2,"1200":1,"1201":1,"1202":4,"1204":1,"1212":1,"1215":1,"1216":3,"1244":2,"1262":2,"1263":1,"1265":1,"1269":2,"1280":3,"1281":1,"1283":2,"1284":1,"1285":1,"1287":1,"1289":3,"1290":2,"1291":4,"1292":2,"1294":2,"1295":2,"1296":2,"1297":2,"1300":1,"1309":1,"1310":1,"1311":1,"1312":1,"1314":1,"1315":2,"1317":2,"1323":1,"1326":1,"1327":1,"1329":2,"1333":1,"1334":1,"1336":1,"1337":2,"1338":1,"1339":2,"1340":9,"1343":3,"1344":1,"1345":5,"1346":1,"1347":2,"1348":2,"1350":1,"1351":3,"1353":1,"1354":1,"1358":1,"1359":1,"1361":1,"1362":2,"1363":2,"1365":1,"1366":1,"1368":2,"1369":1,"1373":2,"1374":48,"1375":8,"1378":4,"1385":1,"1389":2,"1390":1,"1392":1,"1393":3,"1404":1,"1406":8,"1407":18,"1408":3,"1409":3,"1410":11,"1412":1,"1413":2,"1415":1,"1416":7,"1417":7,"1419":2,"1420":1,"1421":4,"1422":16,"1425":2,"1427":4,"1428":2,"1430":1,"1432":1,"1433":2,"1434":2,"1435":1,"1437":1,"1440":4,"1441":3,"1442":6,"1444":1,"1445":2,"1447":2,"1449":2,"1451":1,"1452":1,"1456":1,"1457":1,"1458":2,"1459":4,"1460":2,"1461":3,"1464":3,"1465":6,"1466":10,"1467":1,"1468":2,"1469":2,"1471":1,"1472":6,"1474":2,"1475":1,"1477":3,"1478":2,"1479":4,"1483":2,"1484":2,"1485":3,"1486":5,"1487":4,"1490":2,"1492":2,"1493":2,"1494":1,"1497":3,"1498":1,"1500":1,"1504":1,"1509":1,"1510":1,"1511":2,"1512":4,"1514":1,"1515":1,"1516":5,"1517":1,"1519":3,"1520":1,"1521":6,"1522":3,"1523":1,"1526":3,"1527":3,"1528":4,"1529":5,"1531":1,"1532":8,"1533":1,"1534":1,"1535":2,"1539":1,"1540":3,"1543":1,"1544":1,"1552":1,"1583":3,"1587":4,"1588":3,"1589":1,"1591":4,"1594":3,"1596":7,"1597":1,"1599":4,"1600":2,"1603":1,"1604":1,"1606":5,"1607":2,"1608":1,"1610":1,"1611":2,"1612":3,"1613":2,"1614":1,"1615":1,"1617":1,"1620":1,"1621":3,"1622":2,"1624":3,"1627":1,"1628":2,"1629":1,"1630":1,"1632":2,"1633":2,"1635":3,"1641":1,"1642":1,"1643":1,"1644":1,"1645":1,"1646":1,"1647":2,"1649":2,"1653":1,"1654":1,"1655":6,"1657":1,"1658":2,"1659":1,"1660":1,"1661":2,"1662":3,"1663":1,"1664":1,"1665":1,"1667":1,"1670":1,"1672":1,"1675":6,"1676":2,"1678":1,"1679":3,"1680":1,"1684":4,"1689":1,"1696":1,"1702":1,"1714":1,"1716":1,"1717":1,"1723":1,"1724":2,"1730":1,"1732":1,"1734":2,"1736":6,"1737":1,"1745":1,"1747":1,"1749":1,"1756":2,"1757":1,"1759":1,"1760":2,"1764":2,"1767":1,"1770":6,"1771":2,"1773":3,"1775":7,"1776":1,"1778":4,"1779":2,"1780":4,"1781":4,"1782":5,"1785":1,"1789":1,"1790":1,"1799":1,"1822":1,"1823":1,"1824":1,"1826":3,"1828":2,"1832":4,"1837":1,"1840":4,"1843":4,"1844":5,"1899":1,"1913":4,"1914":1,"1917":1,"1920":1,"1924":1,"1925":1,"1928":3,"1929":3,"1930":3,"1931":4,"1932":4,"1933":6,"1935":2,"1936":2,"1937":1,"1941":3,"1942":6,"1947":2,"1948":2,"1949":2,"1950":1,"1954":2,"1955":8,"1956":9,"1958":3,"1960":1,"1962":1,"1963":2,"1964":1,"1965":2,"1967":2,"1968":2,"1970":1,"1971":1,"1972":2,"1975":1,"1976":4,"1977":1,"1978":6,"1979":7,"1980":4,"1981":5,"1982":6,"1983":5,"1985":2,"1986":2,"1987":7,"1988":1,"1989":2,"1990":1,"1992":4,"1993":2,"1994":1,"1995":1,"1997":1,"1999":2,"2001":2,"2002":1,"2004":1,"2006":1,"2007":2,"2008":1,"2009":1,"2018":1,"2020":1,"2030":2,"2031":2,"2034":2,"2035":2,"2036":1,"2037":1,"2040":1,"2041":1,"2043":1,"2046":1,"2047":1,"2049":2,"2050":7,"2051":1,"2052":7,"2060":4,"2063":11,"2065":1,"2066":5,"2074":1,"2075":1,"2137":1,"2139":1,"2141":1,"2143":1,"2156":1,"2157":1,"2159":1,"2160":5,"2161":1,"2162":2,"2163":3,"2164":1,"2166":2,"2167":1,"2168":2,"2170":3,"2172":2,"2173":2,"2174":1,"2176":1,"2177":1,"2178":1,"2179":1,"2182":5,"2183":1,"2184":2,"2191":19,"2192":1,"2193":2,"2194":2,"2195":2,"2200":2,"2201":1,"2203":1,"2204":1,"2205":1,"2209":1,"2211":1,"2214":1,"2217":1,"2224":1,"2225":1,"2245":1,"2248":3,"2249":3,"2252":6,"2254":6,"2255":1,"2256":1,"2257":4,"2258":5,"2259":1,"2260":5,"2262":2,"2264":1,"2265":2,"2266":5,"2267":2,"2268":4,"2269":3,"2270":3,"2271":7,"2272":1,"2273":4,"2274":1,"2277":1,"2279":2,"2280":1,"2282":1,"2283":7,"2284":5,"2285":4,"2286":1,"2287":5,"2288":1,"2289":3,"2290":2,"2291":4,"2293":3,"2295":1,"2296":2,"2298":1,"2301":3,"2302":11,"2303":8,"2305":1,"2310":11,"2311":4,"2312":6,"2313":3,"2316":2,"2318":1,"2319":1,"2322":4,"2323":10,"2324":11,"2337":1,"2338":1,"2339":1,"2358":2,"2362":1,"2368":1,"2370":3,"2371":2,"2372":3,"2374":2,"2375":4,"2376":1,"2377":5,"2378":2,"2379":3,"2380":2,"2381":2,"2382":1,"2383":2,"2384":6,"2385":1,"2386":2,"2387":2,"2388":2,"2389":2,"2390":1,"2391":1,"2392":2,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":11,"2399":2,"2401":4,"2403":2,"2407":2,"2408":2,"2409":2,"2410":6,"2411":18,"2412":1,"2414":2,"2415":3,"2416":5,"2417":2,"2418":5,"2419":1,"2420":8,"2421":12,"2422":6,"2423":2,"2424":3,"2425":3,"2426":3,"2427":9,"2428":1,"2429":1,"2432":4,"2434":2,"2440":3,"2441":1,"2442":3,"2443":4,"2444":1,"2445":1,"2446":5,"2447":2,"2448":3,"2449":2,"2450":1,"2451":3,"2452":1,"2453":3,"2454":2,"2456":2,"2457":1,"2459":12,"2461":2,"2463":2,"2465":2,"2466":1,"2467":1,"2468":2,"2470":1,"2473":1,"2475":3,"2476":2,"2479":1,"2483":3,"2489":1,"2490":1,"2491":2,"2492":3,"2493":1,"2494":3,"2495":1,"2496":4,"2497":2,"2498":2,"2499":2,"2501":5,"2503":61,"2509":2,"2516":1,"2519":25,"2522":50,"2523":20,"2528":20,"2534":1,"2535":36,"2537":13,"2538":1,"2540":2,"2542":2,"2543":10,"2545":1,"2546":1,"2548":26,"2550":2,"2551":2,"2552":1,"2554":7,"2555":4,"2556":2,"2557":1,"2559":4,"2560":5,"2561":2,"2562":5,"2563":1,"2564":2,"2565":25,"2566":7,"2569":2,"2570":1,"2572":3,"2573":3,"2574":1,"2575":2,"2576":1,"2578":3,"2580":2,"2583":3,"2584":1,"2585":2,"2586":1,"2587":1,"2588":1,"2589":1,"2590":2,"2591":2,"2592":4,"2593":1,"2594":2,"2598":1,"2599":2,"2600":1,"2601":1,"2602":1,"2603":4,"2605":10,"2606":1,"2607":1,"2609":5,"2610":2,"2611":1,"2612":4,"2613":1,"2615":1,"2619":1,"2621":10,"2625":3,"2626":1,"2627":16,"2628":1,"2630":2,"2631":2,"2632":4,"2633":6,"2643":8,"2644":25,"2646":2,"2650":1,"2651":3,"2652":2,"2655":2,"2656":3,"2657":2,"2659":3,"2660":1,"2661":6,"2662":5,"2665":1,"2666":1,"2667":1,"2669":2,"2670":1,"2671":4,"2672":3,"2673":3,"2675":4,"2676":10,"2677":3,"2678":2,"2679":6,"2680":1,"2683":2,"2684":2,"2685":1,"2687":1,"2688":3,"2689":1,"2694":1,"2696":2,"2701":1,"2702":3,"2703":2,"2704":4,"2705":1,"2707":1,"2709":1,"2710":5,"2711":1,"2712":2,"2713":4,"2714":3,"2717":1,"2719":10,"2720":1,"2721":23,"2722":3,"2723":1,"2724":4,"2725":1,"2726":2,"2727":1,"2728":1,"2729":1,"2732":1,"2734":1,"2744":4,"2746":1,"2747":2,"2748":6,"2749":11,"2750":20,"2751":3,"2754":1,"2755":1,"2757":1,"2758":4,"2759":1,"2760":2,"2763":1,"2764":1,"2766":6,"2768":1,"2770":1,"2775":4,"2776":8,"2777":3,"2780":1,"2784":2,"2786":4,"2788":2,"2789":1,"2792":3,"2793":1,"2795":1,"2798":1,"2806":1,"2810":1,"2811":1,"2816":1,"2821":1,"2824":1,"2825":1,"2827":1,"2829":1,"2830":1,"2832":1,"2835":3,"2838":1,"2843":1,"2844":4,"2847":2,"2850":1,"2857":2,"2862":4,"2863":1,"2865":2,"2873":2,"2876":1,"2877":1,"2879":2,"2881":1,"2882":6,"2883":1,"2884":1,"2886":1,"2887":1,"2888":1,"2890":1,"2894":3,"2895":4,"2896":2,"2897":1,"2898":1,"2899":1,"2900":1,"2901":1,"2903":3,"2904":3,"2905":14,"2906":5,"2907":1,"2911":1,"2912":12,"2913":4,"2914":3,"2915":2,"2916":3,"2917":3,"2918":6,"2919":3,"2921":7,"2923":1,"2924":1,"2927":3,"2928":3,"2929":2,"2930":1,"2931":1,"2932":2,"2933":1,"2934":2,"2935":1,"2936":4,"2937":3,"2940":2,"2941":3,"2942":5}}],["anymore",{"2":{"1599":1}}],["anything",{"2":{"408":1,"631":1,"716":1,"717":1,"1335":1,"1417":1,"1434":1,"1464":1,"1485":1,"1981":1,"2160":1,"2286":1,"2411":1,"2470":1,"2496":1,"2554":1,"2566":1,"2633":1,"2659":1,"2664":1,"2676":1,"2680":1,"2722":1,"2840":1,"2914":1}}],["anywhere",{"2":{"212":1,"383":1,"2310":1,"2324":2,"2424":1}}],["anyways",{"2":{"1205":1}}],["anyway",{"2":{"203":1,"562":1,"2560":2,"2561":1}}],["anyone",{"2":{"123":1,"1434":1,"1531":1,"2399":1}}],["any",{"0":{"590":1,"628":1},"1":{"629":1,"630":1},"2":{"0":1,"5":1,"9":1,"19":1,"21":1,"22":1,"28":1,"36":1,"39":1,"43":1,"46":1,"49":1,"52":1,"70":1,"73":1,"99":1,"103":1,"124":1,"126":1,"131":1,"137":1,"153":1,"173":1,"175":1,"182":2,"194":1,"203":1,"245":2,"257":1,"258":1,"259":2,"265":2,"268":1,"275":3,"276":2,"307":1,"320":1,"327":1,"346":1,"367":1,"373":2,"374":1,"393":3,"406":1,"427":1,"433":1,"442":1,"444":1,"445":1,"452":1,"472":1,"510":1,"512":1,"518":1,"523":1,"537":1,"542":1,"543":1,"545":1,"572":1,"590":1,"598":1,"611":3,"613":3,"619":1,"624":1,"628":1,"645":1,"649":1,"666":1,"678":2,"680":1,"683":1,"685":1,"692":1,"713":2,"742":1,"769":1,"1202":1,"1210":1,"1245":1,"1247":1,"1268":1,"1289":1,"1310":1,"1314":1,"1316":2,"1317":1,"1339":1,"1367":1,"1375":4,"1404":2,"1407":3,"1410":2,"1413":5,"1419":1,"1424":1,"1428":1,"1440":2,"1460":1,"1461":2,"1464":1,"1466":4,"1475":1,"1479":1,"1482":1,"1495":1,"1511":1,"1512":1,"1516":1,"1521":2,"1527":1,"1538":1,"1540":1,"1547":1,"1548":1,"1583":1,"1587":1,"1588":1,"1604":1,"1606":1,"1614":1,"1665":1,"1675":1,"1698":1,"1736":1,"1759":1,"1764":1,"1776":1,"1778":2,"1781":1,"1828":1,"1841":2,"1844":1,"1940":1,"1942":1,"1978":1,"1992":2,"2001":1,"2002":1,"2004":2,"2007":2,"2034":2,"2035":1,"2037":1,"2061":2,"2066":1,"2156":1,"2160":2,"2181":1,"2182":1,"2203":1,"2204":1,"2219":1,"2249":1,"2253":1,"2254":1,"2257":1,"2270":2,"2271":1,"2284":1,"2285":2,"2286":1,"2293":1,"2302":1,"2310":2,"2311":1,"2312":2,"2317":1,"2324":1,"2374":1,"2376":1,"2379":2,"2381":1,"2382":1,"2383":2,"2384":1,"2386":1,"2388":1,"2389":1,"2390":1,"2391":1,"2393":3,"2395":3,"2397":3,"2399":1,"2401":1,"2409":1,"2410":1,"2412":1,"2422":1,"2424":1,"2451":1,"2455":1,"2459":1,"2495":1,"2546":1,"2548":1,"2554":1,"2559":1,"2561":5,"2562":1,"2563":3,"2573":1,"2578":1,"2579":1,"2584":1,"2590":1,"2596":1,"2615":1,"2619":1,"2627":1,"2630":1,"2631":1,"2632":1,"2633":2,"2645":4,"2660":1,"2673":1,"2702":1,"2703":1,"2704":1,"2705":1,"2718":1,"2721":4,"2722":2,"2723":1,"2724":1,"2725":2,"2726":1,"2727":1,"2734":1,"2740":1,"2741":1,"2742":1,"2747":2,"2748":5,"2750":8,"2763":1,"2786":1,"2826":1,"2839":1,"2887":1,"2889":1,"2896":1,"2911":1,"2919":1,"2923":1,"2927":2,"2933":1,"2934":1,"2936":2,"2938":1,"2939":1,"2942":1}}],["a",{"0":{"6":1,"21":1,"152":1,"370":1,"417":1,"608":1,"611":1,"625":1,"627":1,"656":1,"657":1,"667":1,"1199":1,"1328":1,"1336":1,"1338":1,"1357":1,"1427":1,"1428":1,"1429":1,"1462":1,"1490":1,"1607":1,"1621":1,"1622":1,"1623":1,"1761":1,"1783":1,"1828":1,"2005":1,"2164":1,"2167":1,"2168":1,"2300":1,"2308":1,"2412":1,"2419":1,"2431":1,"2459":1,"2468":1,"2497":1,"2553":1,"2577":1,"2587":1,"2596":1,"2599":1,"2600":1,"2689":1,"2690":1,"2691":1},"1":{"668":1,"669":1,"1200":1,"1201":1,"1202":1,"1339":1,"1428":1,"1429":1,"1430":2,"1431":1,"1432":1,"1433":1,"1491":1,"1492":1,"1493":1,"1494":1,"1495":1,"1496":1,"1497":1,"1498":1,"1499":1,"1500":1,"1501":1,"1502":1,"1503":1,"1504":1,"1505":1,"1506":1,"1507":1,"1508":1,"1509":1,"1510":1,"1511":1,"1512":1,"1513":1,"1514":1,"1515":1,"1516":1,"1517":1,"1624":1,"1625":1,"1626":1,"1627":1,"1628":1,"1629":1,"1630":1,"1631":1,"1632":1,"1784":1,"1785":1,"1786":1,"1787":1,"1788":1,"1789":1,"1790":1,"1791":1,"1792":1,"1793":1,"1794":1,"1795":1,"1796":1,"1797":1,"1798":1,"1799":1,"1800":1,"1801":1,"1802":1,"1803":1,"1804":1,"1805":1,"1806":1,"1807":1,"1808":1,"1809":1,"1810":1,"1811":1,"1812":1,"1813":1,"1814":1,"1815":1,"1816":1,"1817":1,"1818":1,"1819":1,"1820":1,"1821":1,"2301":1,"2302":1,"2303":1,"2304":1,"2305":1,"2306":1,"2307":1,"2308":1,"2309":1,"2310":1,"2311":1,"2312":1,"2554":1,"2555":1,"2556":1,"2557":1},"2":{"0":5,"1":1,"3":1,"6":2,"8":2,"9":4,"10":3,"11":1,"14":1,"15":1,"16":2,"18":2,"19":4,"21":1,"23":1,"24":1,"25":2,"28":3,"39":4,"49":11,"50":2,"52":4,"62":1,"65":3,"70":4,"73":1,"76":1,"80":1,"82":1,"83":1,"84":1,"86":1,"89":1,"90":1,"94":1,"95":1,"98":4,"99":1,"100":4,"107":1,"110":1,"112":2,"114":8,"116":1,"118":1,"120":1,"125":2,"130":2,"131":2,"132":3,"134":3,"137":2,"138":3,"139":1,"141":2,"142":1,"145":2,"149":3,"156":1,"160":9,"163":3,"164":2,"166":2,"169":2,"172":3,"173":4,"174":4,"175":1,"176":3,"179":2,"182":5,"183":1,"185":2,"187":1,"189":3,"190":1,"191":7,"194":10,"195":2,"196":3,"198":3,"199":1,"201":1,"206":1,"210":7,"212":1,"213":1,"214":1,"220":1,"222":11,"224":2,"228":3,"229":1,"230":1,"231":2,"233":1,"234":1,"236":1,"238":2,"246":2,"247":2,"248":1,"249":3,"251":1,"254":1,"255":1,"262":2,"263":2,"265":2,"266":6,"272":1,"273":2,"279":2,"285":1,"288":4,"289":1,"293":2,"294":4,"297":3,"303":1,"305":2,"306":1,"307":1,"312":6,"314":2,"315":1,"317":1,"323":2,"328":2,"332":1,"338":7,"345":1,"346":4,"347":1,"348":2,"355":2,"358":1,"359":1,"360":6,"361":2,"362":2,"366":1,"369":5,"370":2,"371":4,"372":4,"373":4,"377":1,"380":3,"387":2,"388":1,"390":1,"393":4,"396":1,"397":12,"403":1,"405":4,"408":9,"409":2,"410":2,"411":3,"413":1,"414":2,"415":1,"416":1,"419":1,"422":1,"424":4,"427":7,"428":3,"430":1,"431":4,"434":2,"435":6,"436":2,"437":2,"438":3,"440":2,"442":1,"443":3,"444":1,"445":3,"446":2,"447":2,"448":3,"450":6,"451":6,"453":1,"457":2,"458":1,"460":1,"461":1,"464":1,"465":1,"467":1,"470":4,"472":2,"475":1,"480":1,"481":1,"485":2,"487":5,"489":1,"490":3,"492":1,"493":2,"498":2,"502":1,"503":1,"504":2,"508":1,"509":1,"510":5,"511":2,"512":2,"513":1,"514":5,"516":1,"517":2,"519":3,"522":1,"523":4,"524":3,"525":5,"526":2,"527":1,"528":1,"530":1,"531":1,"535":1,"536":3,"538":4,"540":2,"541":1,"542":1,"550":1,"553":1,"554":1,"557":1,"558":1,"559":6,"561":1,"562":6,"563":3,"565":1,"566":2,"568":2,"569":1,"570":6,"572":4,"573":5,"574":1,"576":2,"577":2,"578":2,"579":1,"580":1,"583":2,"585":2,"586":4,"587":4,"589":2,"591":2,"594":3,"595":1,"597":4,"598":1,"602":1,"609":1,"611":11,"613":4,"614":1,"615":1,"616":7,"617":9,"618":2,"620":1,"621":1,"622":2,"623":1,"624":3,"625":4,"626":2,"627":3,"628":3,"629":3,"630":1,"641":1,"642":1,"643":2,"645":1,"646":2,"649":4,"653":2,"654":3,"655":6,"656":2,"657":2,"658":1,"659":2,"663":11,"664":3,"665":1,"666":3,"667":3,"668":1,"669":6,"670":2,"671":3,"672":1,"673":1,"677":2,"678":6,"680":2,"681":1,"682":4,"683":4,"684":2,"685":2,"686":2,"687":3,"692":1,"693":2,"695":2,"696":3,"698":3,"704":1,"711":1,"712":1,"714":1,"715":1,"716":4,"717":3,"718":2,"719":1,"721":1,"728":1,"732":1,"741":2,"742":1,"743":1,"746":2,"747":1,"750":2,"751":4,"752":7,"753":2,"756":1,"757":1,"761":1,"762":1,"763":4,"765":2,"769":1,"771":2,"774":2,"777":3,"780":4,"782":1,"783":2,"785":2,"786":2,"788":1,"789":3,"791":2,"792":3,"794":5,"795":1,"797":1,"804":1,"810":1,"814":1,"818":1,"820":1,"833":1,"838":1,"842":1,"846":1,"848":1,"852":1,"862":1,"868":1,"872":1,"876":1,"878":1,"884":1,"892":1,"900":1,"904":1,"908":1,"910":1,"916":1,"927":1,"935":1,"939":1,"943":1,"945":1,"951":1,"961":1,"969":1,"973":1,"977":1,"979":1,"985":1,"995":1,"1003":1,"1007":1,"1011":1,"1013":1,"1019":1,"1029":1,"1037":1,"1041":1,"1045":1,"1047":1,"1053":1,"1063":1,"1071":1,"1075":1,"1079":1,"1081":1,"1087":1,"1097":1,"1105":1,"1109":1,"1113":1,"1115":1,"1121":1,"1131":1,"1139":1,"1143":1,"1147":1,"1149":1,"1155":1,"1165":1,"1173":1,"1177":1,"1181":1,"1183":1,"1189":1,"1190":2,"1191":1,"1193":1,"1194":2,"1195":1,"1197":3,"1198":1,"1200":1,"1201":1,"1202":2,"1204":1,"1205":1,"1210":1,"1211":2,"1218":1,"1226":1,"1230":1,"1234":1,"1236":1,"1242":1,"1243":1,"1245":4,"1251":1,"1254":1,"1257":1,"1260":2,"1263":1,"1264":1,"1265":6,"1266":1,"1270":1,"1272":1,"1275":1,"1277":2,"1280":5,"1282":3,"1283":6,"1284":1,"1285":2,"1288":1,"1292":2,"1294":4,"1295":2,"1296":1,"1298":1,"1300":2,"1303":1,"1308":10,"1309":1,"1310":4,"1312":3,"1316":2,"1322":1,"1324":5,"1325":1,"1326":1,"1327":2,"1329":1,"1330":2,"1332":2,"1333":2,"1334":2,"1335":1,"1336":1,"1338":1,"1339":1,"1340":8,"1346":1,"1347":2,"1348":1,"1353":2,"1359":1,"1362":3,"1365":1,"1368":1,"1370":2,"1374":6,"1375":9,"1378":2,"1379":2,"1385":1,"1387":1,"1388":2,"1395":2,"1396":1,"1400":1,"1402":1,"1403":1,"1404":3,"1406":3,"1407":7,"1408":1,"1409":4,"1410":6,"1413":9,"1414":1,"1415":3,"1416":4,"1417":5,"1418":1,"1419":3,"1421":7,"1422":3,"1425":4,"1427":5,"1428":3,"1429":1,"1430":2,"1433":2,"1434":4,"1435":2,"1436":3,"1438":5,"1440":8,"1441":5,"1442":11,"1443":2,"1444":1,"1445":3,"1446":1,"1449":1,"1450":1,"1457":2,"1458":1,"1459":1,"1461":5,"1462":2,"1463":1,"1464":5,"1465":3,"1466":6,"1467":2,"1468":2,"1469":1,"1471":3,"1474":2,"1475":2,"1478":6,"1479":7,"1480":2,"1481":1,"1482":2,"1483":1,"1484":6,"1485":1,"1486":6,"1487":8,"1490":2,"1491":1,"1492":7,"1493":4,"1495":2,"1496":1,"1497":10,"1502":1,"1504":2,"1507":2,"1508":1,"1509":1,"1510":1,"1511":1,"1512":7,"1513":1,"1517":6,"1518":1,"1519":12,"1520":3,"1521":4,"1522":7,"1523":3,"1526":6,"1527":3,"1528":2,"1529":3,"1532":23,"1533":2,"1535":4,"1539":2,"1540":2,"1543":1,"1545":3,"1547":1,"1550":1,"1552":4,"1583":3,"1584":1,"1585":2,"1587":7,"1588":3,"1589":1,"1591":2,"1592":1,"1594":2,"1595":1,"1596":7,"1597":1,"1598":2,"1599":4,"1600":1,"1603":3,"1604":2,"1606":4,"1607":2,"1609":1,"1611":5,"1612":1,"1614":4,"1615":1,"1616":2,"1617":2,"1620":1,"1621":5,"1622":5,"1624":8,"1627":3,"1628":1,"1632":2,"1633":2,"1636":2,"1650":1,"1651":3,"1654":1,"1655":3,"1656":4,"1657":1,"1658":4,"1659":5,"1660":6,"1661":1,"1663":1,"1664":5,"1665":2,"1667":2,"1669":1,"1672":3,"1673":1,"1675":7,"1678":2,"1679":9,"1680":1,"1681":1,"1683":1,"1684":5,"1685":2,"1686":1,"1687":1,"1688":1,"1689":1,"1693":1,"1707":1,"1709":1,"1711":1,"1713":1,"1715":1,"1716":1,"1719":1,"1721":1,"1724":1,"1726":1,"1732":4,"1734":1,"1735":1,"1736":2,"1737":1,"1741":1,"1742":1,"1745":1,"1747":1,"1751":1,"1756":3,"1757":1,"1760":5,"1763":1,"1764":2,"1765":1,"1766":1,"1767":2,"1770":1,"1771":1,"1773":3,"1775":11,"1776":3,"1777":1,"1778":5,"1779":3,"1780":21,"1781":1,"1782":7,"1783":3,"1785":3,"1787":1,"1788":1,"1789":1,"1790":5,"1796":1,"1822":2,"1823":2,"1824":4,"1827":3,"1828":5,"1831":1,"1832":1,"1833":1,"1835":1,"1840":7,"1841":3,"1843":5,"1844":6,"1845":1,"1847":1,"1849":1,"1859":1,"1917":4,"1919":19,"1920":1,"1924":2,"1928":2,"1929":2,"1930":3,"1933":8,"1934":1,"1936":1,"1939":2,"1940":1,"1941":2,"1948":1,"1949":3,"1950":2,"1951":1,"1954":1,"1955":4,"1956":13,"1958":2,"1959":2,"1960":1,"1962":1,"1963":1,"1965":1,"1968":3,"1970":4,"1971":1,"1972":1,"1974":1,"1975":1,"1976":1,"1977":2,"1978":8,"1979":9,"1980":3,"1981":6,"1982":5,"1983":6,"1985":2,"1986":1,"1987":1,"1988":1,"1989":1,"1990":2,"1992":9,"1993":3,"1995":1,"2001":1,"2006":2,"2007":1,"2008":1,"2009":1,"2014":1,"2016":1,"2018":1,"2020":1,"2022":1,"2029":1,"2030":5,"2031":1,"2037":1,"2039":2,"2041":3,"2044":1,"2046":1,"2047":1,"2050":3,"2051":2,"2052":5,"2054":1,"2055":1,"2057":1,"2060":7,"2061":3,"2063":14,"2064":2,"2066":6,"2068":1,"2070":1,"2072":1,"2074":3,"2085":1,"2156":2,"2157":1,"2159":1,"2162":3,"2163":1,"2165":1,"2167":4,"2168":1,"2170":6,"2171":6,"2172":1,"2176":3,"2180":1,"2181":1,"2182":2,"2184":2,"2187":2,"2191":4,"2202":1,"2205":2,"2206":1,"2207":1,"2209":3,"2210":1,"2212":2,"2220":2,"2221":3,"2222":1,"2224":1,"2227":1,"2229":2,"2231":1,"2233":2,"2239":1,"2241":1,"2243":1,"2245":3,"2252":3,"2253":2,"2254":4,"2257":1,"2258":2,"2261":1,"2262":2,"2264":1,"2265":6,"2266":4,"2268":5,"2270":12,"2271":9,"2273":4,"2274":1,"2278":1,"2279":3,"2280":1,"2283":11,"2284":2,"2285":1,"2286":1,"2287":9,"2288":5,"2289":4,"2290":2,"2291":5,"2293":6,"2294":5,"2295":2,"2296":1,"2297":1,"2298":2,"2301":3,"2302":8,"2303":13,"2305":3,"2309":1,"2310":18,"2311":5,"2312":4,"2313":3,"2317":1,"2320":4,"2321":5,"2322":2,"2323":6,"2324":6,"2340":2,"2342":1,"2349":1,"2358":1,"2368":3,"2371":1,"2372":3,"2373":1,"2374":1,"2375":1,"2376":1,"2377":5,"2378":1,"2379":4,"2380":2,"2381":2,"2382":3,"2383":2,"2384":7,"2385":1,"2386":6,"2388":4,"2389":2,"2390":1,"2391":5,"2393":1,"2394":1,"2395":1,"2396":1,"2397":1,"2398":6,"2399":3,"2400":1,"2401":2,"2404":1,"2405":1,"2406":2,"2407":4,"2408":2,"2409":2,"2410":3,"2411":8,"2412":2,"2414":2,"2415":3,"2416":8,"2417":4,"2419":4,"2420":14,"2421":5,"2422":5,"2423":2,"2424":5,"2425":5,"2427":9,"2428":3,"2429":1,"2430":2,"2431":1,"2432":3,"2436":1,"2438":1,"2441":1,"2442":2,"2443":11,"2445":1,"2446":7,"2447":5,"2448":6,"2449":1,"2450":1,"2451":1,"2453":3,"2454":1,"2455":3,"2456":1,"2459":21,"2461":1,"2463":1,"2465":3,"2467":1,"2468":2,"2469":5,"2470":2,"2471":5,"2472":2,"2473":8,"2474":4,"2475":4,"2477":3,"2479":1,"2481":3,"2489":1,"2491":1,"2492":3,"2494":5,"2495":2,"2496":4,"2497":4,"2498":2,"2502":3,"2503":10,"2516":1,"2517":1,"2519":2,"2520":19,"2522":1,"2535":3,"2545":2,"2548":2,"2549":4,"2550":1,"2551":2,"2552":5,"2553":1,"2554":4,"2555":2,"2556":2,"2557":2,"2558":1,"2559":3,"2560":2,"2561":7,"2562":8,"2563":3,"2564":1,"2565":4,"2566":4,"2568":1,"2570":1,"2572":7,"2573":3,"2576":1,"2577":7,"2578":3,"2579":4,"2580":2,"2582":3,"2583":1,"2584":3,"2585":2,"2586":1,"2587":3,"2588":4,"2590":1,"2591":3,"2592":3,"2594":2,"2596":1,"2598":2,"2599":2,"2601":1,"2603":1,"2604":1,"2605":4,"2607":1,"2609":2,"2610":1,"2612":4,"2613":2,"2615":1,"2620":2,"2621":1,"2622":6,"2625":3,"2626":4,"2627":6,"2628":2,"2629":3,"2630":4,"2631":3,"2632":2,"2633":4,"2636":2,"2638":1,"2643":8,"2644":2,"2645":7,"2646":2,"2649":1,"2652":2,"2655":2,"2656":1,"2657":5,"2658":3,"2659":3,"2660":2,"2664":2,"2666":3,"2671":4,"2673":2,"2676":6,"2677":5,"2678":4,"2679":2,"2680":1,"2684":5,"2685":2,"2687":3,"2688":1,"2689":1,"2690":1,"2691":2,"2696":1,"2700":2,"2702":1,"2703":1,"2704":1,"2705":2,"2706":3,"2707":9,"2709":2,"2710":2,"2713":2,"2714":1,"2715":2,"2717":1,"2718":2,"2719":12,"2720":1,"2721":26,"2722":7,"2723":2,"2724":3,"2725":2,"2727":1,"2728":1,"2731":1,"2734":1,"2735":2,"2742":1,"2744":2,"2748":8,"2749":21,"2750":26,"2751":3,"2754":1,"2757":3,"2758":4,"2760":1,"2762":1,"2764":1,"2765":2,"2766":3,"2767":3,"2768":1,"2769":1,"2770":7,"2771":1,"2775":3,"2776":6,"2777":4,"2778":1,"2780":2,"2781":1,"2782":2,"2786":3,"2788":3,"2789":2,"2791":1,"2792":6,"2795":2,"2796":1,"2798":2,"2799":2,"2800":2,"2801":1,"2802":1,"2805":1,"2806":1,"2811":1,"2813":2,"2814":2,"2815":1,"2816":1,"2817":1,"2818":2,"2819":1,"2821":2,"2822":2,"2824":1,"2825":1,"2826":1,"2827":3,"2828":1,"2829":1,"2830":1,"2832":2,"2833":3,"2834":1,"2835":3,"2836":1,"2837":3,"2838":1,"2839":1,"2840":1,"2841":1,"2843":1,"2844":1,"2845":5,"2847":1,"2849":2,"2850":2,"2855":1,"2856":2,"2857":1,"2858":3,"2861":3,"2862":8,"2863":1,"2864":3,"2865":6,"2869":2,"2870":1,"2871":3,"2872":1,"2873":1,"2875":4,"2877":2,"2878":2,"2879":5,"2880":2,"2881":2,"2882":1,"2883":1,"2886":2,"2887":1,"2888":1,"2889":1,"2890":1,"2895":2,"2896":1,"2897":1,"2899":1,"2901":3,"2903":4,"2904":3,"2905":13,"2907":4,"2908":8,"2909":8,"2910":5,"2911":11,"2912":15,"2913":6,"2914":11,"2915":7,"2916":1,"2917":1,"2918":8,"2919":6,"2920":1,"2921":8,"2923":4,"2924":2,"2925":2,"2926":2,"2927":2,"2929":7,"2930":6,"2931":1,"2932":3,"2933":5,"2934":2,"2936":1,"2937":12,"2938":1,"2939":1,"2940":3,"2941":4,"2942":9}}]],"serializationVersion":2}`; +export { + _localSearchIndexroot as default +}; diff --git a/assets/chunks/VPLocalSearchBox.CJDVhk5n.js b/assets/chunks/VPLocalSearchBox.3R5oEP-S.js similarity index 99% rename from assets/chunks/VPLocalSearchBox.CJDVhk5n.js rename to assets/chunks/VPLocalSearchBox.3R5oEP-S.js index 84b7e6fbc6d..4820196f876 100644 --- a/assets/chunks/VPLocalSearchBox.CJDVhk5n.js +++ b/assets/chunks/VPLocalSearchBox.3R5oEP-S.js @@ -1,9 +1,9 @@ var __defProp = Object.defineProperty; var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value; var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value); -import { Y as __vitePreload, j as ref, x as watch, an as unrefElement, ao as tryOnScopeDispose, d as defineComponent, G as shallowRef, ap as computedAsync, h as computed, aq as useSessionStorage, ar as useLocalStorage, y as watchEffect, as as watchDebounced, k as onMounted, S as nextTick, R as onKeyStroke, a6 as useRouter, at as useEventListener, Z as useScrollLock, V as inBrowser, au as onBeforeUnmount, o as openBlock, b as createBlock, l as createBaseVNode, a2 as withModifiers, m as unref, av as withDirectives, aw as vModelText, ax as isRef, c as createElementBlock, n as normalizeClass, e as createCommentVNode, E as renderList, F as Fragment, a as createTextVNode, t as toDisplayString, ay as Teleport, p as pushScopeId, q as popScopeId, az as markRaw, aA as createApp, ac as dataSymbol, ai as pathToFile, aB as escapeRegExp, _ as _export_sfc } from "./framework.Cauyuiy8.js"; -import { u as useData, c as createSearchTranslate } from "./theme.UmtsjDQ8.js"; -const localSearchIndex = { "root": () => __vitePreload(() => import("./@localSearchIndexroot.AlnfQLB4.js"), true ? [] : void 0) }; +import { Y as __vitePreload, j as ref, x as watch, an as unrefElement, ao as tryOnScopeDispose, d as defineComponent, G as shallowRef, ap as computedAsync, h as computed, aq as useSessionStorage, ar as useLocalStorage, y as watchEffect, as as watchDebounced, k as onMounted, S as nextTick, R as onKeyStroke, a6 as useRouter, at as useEventListener, Z as useScrollLock, V as inBrowser, au as onBeforeUnmount, o as openBlock, b as createBlock, l as createBaseVNode, a2 as withModifiers, m as unref, av as withDirectives, aw as vModelText, ax as isRef, c as createElementBlock, n as normalizeClass, e as createCommentVNode, D as renderList, F as Fragment, a as createTextVNode, t as toDisplayString, ay as Teleport, p as pushScopeId, q as popScopeId, az as markRaw, aA as createApp, ac as dataSymbol, ah as pathToFile, aB as escapeRegExp, _ as _export_sfc } from "./framework.DUYk0S7v.js"; +import { u as useData, c as createSearchTranslate } from "./theme.DaTnCy1N.js"; +const localSearchIndex = { "root": () => __vitePreload(() => import("./@localSearchIndexroot.D34-pwHA.js"), true ? [] : void 0) }; /*! * tabbable 6.2.0 * @license MIT, https://github.com/focus-trap/tabbable/blob/master/LICENSE @@ -380,7 +380,7 @@ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== void 0) { - var res = prim.call(input, hint || "default"); + var res = prim.call(input, hint); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } diff --git a/assets/chunks/framework.Cauyuiy8.js b/assets/chunks/framework.DUYk0S7v.js similarity index 99% rename from assets/chunks/framework.Cauyuiy8.js rename to assets/chunks/framework.DUYk0S7v.js index 9caff6538d4..ba6ce176cfa 100644 --- a/assets/chunks/framework.Cauyuiy8.js +++ b/assets/chunks/framework.DUYk0S7v.js @@ -8412,7 +8412,7 @@ function useWindowSize(options = {}) { } return { width, height }; } -const __vite_import_meta_env__ = { "BASE_URL": "/", "DEV": false, "MODE": "production", "PROD": true, "SSR": false }; +const __vite_import_meta_env__ = {}; var define_process_env_default = {}; const EXTERNAL_URL_RE = /^(?:[a-z]+:|\/\/)/i; const APPEARANCE_KEY = "vitepress-theme-appearance"; @@ -9147,8 +9147,8 @@ export { watchPostEffect as A, onUpdated as B, getScrollOffset as C, - resolveComponent as D, - renderList as E, + renderList as D, + resolveComponent as E, Fragment as F, shallowRef as G, onContentUpdated as H, @@ -9190,9 +9190,9 @@ export { Content as ad, ClientOnly as ae, siteDataRef as af, - createSSRApp as ag, - createRouter as ah, - pathToFile as ai, + createRouter as ag, + pathToFile as ah, + createSSRApp as ai, usePrefetch as aj, useCopyCode as ak, useCodeGroups as al, diff --git a/assets/chunks/theme.UmtsjDQ8.js b/assets/chunks/theme.DaTnCy1N.js similarity index 99% rename from assets/chunks/theme.UmtsjDQ8.js rename to assets/chunks/theme.DaTnCy1N.js index 47ff8cb3b17..3dad9ab0d18 100644 --- a/assets/chunks/theme.UmtsjDQ8.js +++ b/assets/chunks/theme.DaTnCy1N.js @@ -1,5 +1,5 @@ -const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/chunks/VPLocalSearchBox.CJDVhk5n.js","assets/chunks/framework.Cauyuiy8.js"])))=>i.map(i=>d[i]); -import { d as defineComponent, o as openBlock, c as createElementBlock, r as renderSlot, n as normalizeClass, a as createTextVNode, t as toDisplayString, b as createBlock, w as withCtx, e as createCommentVNode, T as Transition, _ as _export_sfc, u as useData$1, i as isExternal, f as treatAsHtml, g as withBase, h as computed, j as ref, k as onMounted, l as createBaseVNode, m as unref, p as pushScopeId, q as popScopeId, s as isActive, v as useMediaQuery, x as watch, y as watchEffect, z as onUnmounted, A as watchPostEffect, B as onUpdated, C as getScrollOffset, D as resolveComponent, F as Fragment, E as renderList, G as shallowRef, H as onContentUpdated, I as createVNode, J as resolveDynamicComponent, K as EXTERNAL_URL_RE, L as useRoute, M as mergeProps, N as inject, O as useWindowSize, P as normalizeStyle, Q as onClickOutside, R as onKeyStroke, S as nextTick, U as useWindowScroll, V as inBrowser, W as readonly, X as defineAsyncComponent, Y as __vitePreload, Z as useScrollLock, $ as provide, a0 as toHandlers, a1 as withKeys, a2 as withModifiers, a3 as useSlots, a4 as reactive, a5 as toRef, a6 as useRouter, a7 as onBeforeMount } from "./framework.Cauyuiy8.js"; +const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/chunks/VPLocalSearchBox.3R5oEP-S.js","assets/chunks/framework.DUYk0S7v.js"])))=>i.map(i=>d[i]); +import { d as defineComponent, c as createElementBlock, r as renderSlot, n as normalizeClass, o as openBlock, a as createTextVNode, t as toDisplayString, b as createBlock, w as withCtx, T as Transition, e as createCommentVNode, _ as _export_sfc, u as useData$1, i as isExternal, f as treatAsHtml, g as withBase, h as computed, j as ref, k as onMounted, l as createBaseVNode, m as unref, p as pushScopeId, q as popScopeId, s as isActive, v as useMediaQuery, x as watch, y as watchEffect, z as onUnmounted, A as watchPostEffect, B as onUpdated, C as getScrollOffset, F as Fragment, D as renderList, E as resolveComponent, G as shallowRef, H as onContentUpdated, I as createVNode, J as resolveDynamicComponent, K as EXTERNAL_URL_RE, L as useRoute, M as mergeProps, N as inject, O as useWindowSize, P as normalizeStyle, Q as onClickOutside, R as onKeyStroke, S as nextTick, U as useWindowScroll, V as inBrowser, W as readonly, X as defineAsyncComponent, Y as __vitePreload, Z as useScrollLock, $ as provide, a0 as toHandlers, a1 as withKeys, a2 as withModifiers, a3 as useSlots, a4 as reactive, a5 as toRef, a6 as useRouter, a7 as onBeforeMount } from "./framework.DUYk0S7v.js"; const _sfc_main$Z = /* @__PURE__ */ defineComponent({ __name: "VPBadge", props: { @@ -2223,7 +2223,7 @@ const _hoisted_3$6 = { const _sfc_main$l = /* @__PURE__ */ defineComponent({ __name: "VPNavBarSearch", setup(__props) { - const VPLocalSearchBox = defineAsyncComponent(() => __vitePreload(() => import("./VPLocalSearchBox.CJDVhk5n.js"), true ? __vite__mapDeps([0,1]) : void 0)); + const VPLocalSearchBox = defineAsyncComponent(() => __vitePreload(() => import("./VPLocalSearchBox.3R5oEP-S.js"), true ? __vite__mapDeps([0,1]) : void 0)); const VPAlgoliaSearchBox = () => null; const { theme: theme2 } = useData(); const loaded = ref(false); diff --git a/assets/cli.md.CxsSVwqz.js b/assets/cli.md.DlRtyTGy.js similarity index 97% rename from assets/cli.md.CxsSVwqz.js rename to assets/cli.md.DlRtyTGy.js index 9f9a9eaade2..a00999a56e2 100644 --- a/assets/cli.md.CxsSVwqz.js +++ b/assets/cli.md.DlRtyTGy.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK CLI","description":"","frontmatter":{},"headers":[],"relativePath":"cli.md","filePath":"cli.md","lastUpdated":null}'); const _sfc_main = { name: "cli.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK CLI

Overview

The QMK CLI (command line interface) makes building and working with QMK keyboards easier. We have provided a number of commands to simplify and streamline tasks such as obtaining and compiling the QMK firmware, creating keymaps, and more.

Requirements

QMK requires Python 3.9 or greater. We try to keep the number of requirements small but you will also need to install the packages listed in requirements.txt. These are installed automatically when you install the QMK CLI.

Install Using Homebrew (macOS, some Linux)

If you have installed Homebrew you can tap and install QMK:

brew install qmk/qmk/qmk\nexport QMK_HOME='~/qmk_firmware' # Optional, set the location for `qmk_firmware`\nqmk setup  # This will clone `qmk/qmk_firmware` and optionally set up your build environment

Install Using uv

If you have installed uv, the QMK CLI can be installed and managed as a uv tool:

uv tool install qmk\nexport QMK_HOME='~/qmk_firmware' # Optional, set the location for `qmk_firmware`\nqmk setup  # This will clone `qmk/qmk_firmware` and optionally set up your build environment

This installation can be updated via uv tool upgrade qmk. See Upgrading tools for more information.

Install Using pip

If your system is not listed above you can install QMK manually. First ensure that you have Python 3.9 (or later) installed and have installed pip. Then install QMK with this command:

python3 -m pip install qmk\nexport QMK_HOME='~/qmk_firmware' # Optional, set the location for `qmk_firmware`\nqmk setup  # This will clone `qmk/qmk_firmware` and optionally set up your build environment

Packaging For Other Operating Systems

We are looking for people to create and maintain a qmk package for more operating systems. If you would like to create a package for your OS please follow these guidelines:

', 18); diff --git a/assets/cli.md.CxsSVwqz.lean.js b/assets/cli.md.DlRtyTGy.lean.js similarity index 81% rename from assets/cli.md.CxsSVwqz.lean.js rename to assets/cli.md.DlRtyTGy.lean.js index 6d12ba44a6a..a96453d42dd 100644 --- a/assets/cli.md.CxsSVwqz.lean.js +++ b/assets/cli.md.DlRtyTGy.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK CLI","description":"","frontmatter":{},"headers":[],"relativePath":"cli.md","filePath":"cli.md","lastUpdated":null}'); const _sfc_main = { name: "cli.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 18); diff --git a/assets/cli_commands.md.CRBCuoFZ.js b/assets/cli_commands.md.CycgrVp4.js similarity index 99% rename from assets/cli_commands.md.CRBCuoFZ.js rename to assets/cli_commands.md.CycgrVp4.js index 7d2cbab2cc4..ce128092bb2 100644 --- a/assets/cli_commands.md.CRBCuoFZ.js +++ b/assets/cli_commands.md.CycgrVp4.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK CLI Commands","description":"","frontmatter":{},"headers":[],"relativePath":"cli_commands.md","filePath":"cli_commands.md","lastUpdated":null}'); const _sfc_main = { name: "cli_commands.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK CLI Commands

User Commands

qmk compile

This command allows you to compile firmware from any directory. You can compile JSON exports from https://config.qmk.fm, compile keymaps in the repo, or compile the keyboard in the current working directory.

This command is directory aware. It will automatically fill in KEYBOARD and/or KEYMAP if you are in a keyboard or keymap directory.

Usage for Configurator Exports:

qmk compile [-c] <configuratorExport.json>

Usage for Keymaps:

qmk compile [-c] [-e <var>=<value>] [-j <num_jobs>] [--compiledb] -kb <keyboard> -km <keymap>

Usage in Keyboard Directory:

Must be in keyboard directory with a default keymap, or in keymap directory for keyboard, or supply one with --keymap <keymap>

qmk compile

Usage for building all keyboards that support a specific keymap:

qmk compile -kb all -km <keymap>

Example:

$ qmk config compile.keymap=default\n$ cd ~/qmk_firmware/keyboards/planck/rev6\n$ qmk compile\nΨ Compiling keymap with make planck/rev6:default\n...

or with optional keymap argument

$ cd ~/qmk_firmware/keyboards/clueboard/66/rev4\n$ qmk compile -km 66_iso\nΨ Compiling keymap with make clueboard/66/rev4:66_iso\n...

or in keymap directory

$ cd ~/qmk_firmware/keyboards/gh60/satan/keymaps/colemak\n$ qmk compile\nΨ Compiling keymap with make gh60/satan:colemak\n...

Usage in Layout Directory:

Must be under qmk_firmware/layouts/, and in a keymap folder.

qmk compile -kb <keyboard>

Example:

$ cd ~/qmk_firmware/layouts/community/60_ansi/mechmerlin-ansi\n$ qmk compile -kb dz60\nΨ Compiling keymap with make dz60:mechmerlin-ansi\n...

Parallel Compilation:

It is possible to speed up compilation by adding the -j/--parallel flag.

qmk compile -j <num_jobs> -kb <keyboard>

The num_jobs argument determines the maximum number of jobs that can be used. Setting it to zero will enable parallel compilation without limiting the maximum number of jobs.

qmk compile -j 0 -kb <keyboard>

Compilation Database:

Creates a compile_commands.json file.

Does your IDE/editor use a language server but doesn't quite find all the necessary include files? Do you hate red squigglies? Do you wish your editor could figure out #include QMK_KEYBOARD_H? You might need a compilation database! Compiling using this argument can create this for you.

Example:

$ cd ~/qmk_firmware/keyboards/gh60/satan/keymaps/colemak\n$ qmk compile --compiledb\nΨ Making clean\nΨ Gathering build instructions from make ........\nΨ Found 63 compile commands\nΨ Writing build database to /Users/you/src/qmk_firmware/compile_commands.json\nΨ Compiling keymap with make ........\n... build log continues ...

qmk flash

This command is similar to qmk compile, but can also target a bootloader. The bootloader is optional, and is set to :flash by default. To specify a different bootloader, use -bl <bootloader>. Visit the Flashing Firmware guide for more details of the available bootloaders.

This command is directory aware. It will automatically fill in KEYBOARD and/or KEYMAP if you are in a keyboard or keymap directory.

This command can also flash binary firmware files (hex or bin) such as the ones produced by Configurator.

Usage for Configurator Exports:

qmk flash [-bl <bootloader>] [-c] [-e <var>=<value>] [-j <num_jobs>] <configuratorExport.json>

Usage for Keymaps:

qmk flash -kb <keyboard> -km <keymap_name> [-bl <bootloader>] [-c] [-e <var>=<value>] [-j <num_jobs>]

Usage for pre-compiled firmwares:

Note: The microcontroller needs to be specified (-m argument) for keyboards with the following bootloaders:

ISP flashing is also supported with the following flashers and require the microcontroller to be specified:

qmk flash [-m <microcontroller>] <compiledFirmware.[bin|hex]>

Listing the Bootloaders

qmk flash -b

qmk config

This command lets you configure the behavior of QMK. For the full qmk config documentation see CLI Configuration.

Usage:

qmk config [-ro] [config_token1] [config_token2] [...] [config_tokenN]

qmk cd

This command opens a new shell in your qmk_firmware directory.

Note that if you are already somewhere within QMK_HOME (for example, the keyboards/ folder), nothing will happen.

To exit out into the parent shell, simply type exit.

Usage:

qmk cd

qmk find

This command allows for searching through keyboard/keymap targets, filtering by specific criteria. info.json and rules.mk files contribute to the search data, as well as keymap configurations, and the results can be filtered using "dotty" syntax matching the overall info.json file format.

For example, one could search for all keyboards powered by the STM32F411 microcontroller:

qmk find -f 'processor==STM32F411'

The list can be further constrained by passing additional filter expressions:

qmk find -f 'processor==STM32F411' -f 'features.rgb_matrix==true'

The following filter expressions are supported:

You can also list arbitrary values for each matched target with --print:

qmk find -f 'processor==STM32F411' -p 'keyboard_name' -p 'features.rgb_matrix'

Usage:

qmk find [-h] [-km KEYMAP] [-p PRINT] [-f FILTER]\n\noptions:\n  -km KEYMAP, --keymap KEYMAP\n                        The keymap name to build. Default is 'default'.\n  -p PRINT, --print PRINT\n                        For each matched target, print the value of the supplied info.json key. May be passed multiple times.\n  -f FILTER, --filter FILTER\n                        Filter the list of keyboards based on their info.json data. Accepts the formats key=value, function(key), or function(key,value), eg. 'features.rgblight=true'. Valid functions are 'absent', 'contains', 'exists' and 'length'. May be passed multiple times; all filters need to match. Value may include wildcards such as '*' and '?'.

qmk console

This command lets you connect to keyboard consoles to get debugging messages. It only works if your keyboard firmware has been compiled with CONSOLE_ENABLE=yes.

Usage:

qmk console [-d <pid>:<vid>[:<index>]] [-l] [-n] [-t] [-w <seconds>]

Examples:

Connect to all available keyboards and show their console messages:

qmk console

List all devices:

qmk console -l

Show only messages from clueboard/66/rev3 keyboards:

qmk console -d C1ED:2370

Show only messages from the second clueboard/66/rev3:

qmk console -d C1ED:2370:2

Show timestamps and VID:PID instead of names:

qmk console -n -t

Disable bootloader messages:

qmk console --no-bootloaders

qmk doctor

This command examines your environment and alerts you to potential build or flash problems. It can fix many of them if you want it to.

Usage:

qmk doctor [-y] [-n]

Examples:

Check your environment for problems and prompt to fix them:

qmk doctor

Check your environment and automatically fix any problems found:

qmk doctor -y

Check your environment and report problems only:

qmk doctor -n

qmk format-json

Formats a JSON file in a (mostly) human-friendly way. Will usually correctly detect the format of the JSON (info.json or keymap.json) but you can override this with --format if necessary.

Usage:

qmk format-json [-f FORMAT] <json_file>

qmk info

Displays information about keyboards and keymaps in QMK. You can use this to get information about a keyboard, show the layouts, display the underlying key matrix, or to pretty-print JSON keymaps.

Usage:

qmk info [-f FORMAT] [-m] [-l] [-km KEYMAP] [-kb KEYBOARD]

This command is directory aware. It will automatically fill in KEYBOARD and/or KEYMAP if you are in a keyboard or keymap directory.

Examples:

Show basic information for a keyboard:

qmk info -kb planck/rev5

Show the matrix for a keyboard:

qmk info -kb ergodox_ez -m

Show a JSON keymap for a keyboard:

qmk info -kb clueboard/california -km default

qmk json2c

Creates a keymap.c from a QMK Configurator export.

Usage:

qmk json2c [-o OUTPUT] filename

qmk c2json

Creates a keymap.json from a keymap.c.

Note: Parsing C source files is not easy, therefore this subcommand may not work with your keymap. In some cases not using the C pre-processor helps.

Usage:

qmk c2json -km KEYMAP -kb KEYBOARD [-q] [--no-cpp] [-o OUTPUT] filename

Examples:

qmk c2json -km default -kb handwired/dactyl_promicro

or with filename:

qmk c2json keyboards/handwired/dactyl_promicro/keymaps/default/keymap.c

qmk lint

Checks over a keyboard and/or keymap and highlights common errors, problems, and anti-patterns.

Usage:

qmk lint [-km KEYMAP] [-kb KEYBOARD] [--strict]

This command is directory aware. It will automatically fill in KEYBOARD and/or KEYMAP if you are in a keyboard or keymap directory.

Examples:

Do a basic lint check:

qmk lint -kb rominronin/katana60/rev2

qmk list-keyboards

This command lists all the keyboards currently defined in qmk_firmware

Usage:

qmk list-keyboards

qmk list-keymaps

This command lists all the keymaps for a specified keyboard (and revision).

This command is directory aware. It will automatically fill in KEYBOARD if you are in a keyboard directory.

Usage:

qmk list-keymaps -kb planck/ez

qmk migrate

This command searches for legacy code that can be converted to the new info.json format and adds it to the specified keyboard's info.json.

Usage:

qmk migrate [-h] -kb KEYBOARD [-f FILTER]

qmk new-keyboard

This command creates a new keyboard based on available templates.

Any arguments that are not provided will prompt for input. If -u is not passed and user.name is set in .gitconfig, it will be used as the default username in the prompt.

Usage:

qmk new-keyboard [-kb KEYBOARD] [-t {atmega32u4,STM32F303,etc}] [-l {60_ansi,75_iso,etc}] -u USERNAME

qmk new-keymap

This command creates a new keymap based on a keyboard's existing default keymap.

This command is directory aware. It will automatically fill in KEYBOARD and/or KEYMAP if you are in a keyboard or keymap directory.

Usage:

qmk new-keymap [-kb KEYBOARD] [-km KEYMAP]

qmk clean

This command cleans up the .build folder. If --all is passed, any .hex or .bin files present in the qmk_firmware directory will also be deleted.

Usage:

qmk clean [-a]

qmk via2json

This command an generate a keymap.json from a VIA keymap backup. Both the layers and the macros are converted, enabling users to easily move away from a VIA-enabled firmware without writing any code or reimplementing their keymaps in QMK Configurator.

Usage:

qmk via2json -kb KEYBOARD [-l LAYOUT] [-km KEYMAP] [-o OUTPUT] filename

Example:

$ qmk via2json -kb ai03/polaris -o polaris_keymap.json polaris_via_backup.json\nΨ Wrote keymap to /home/you/qmk_firmware/polaris_keymap.json

qmk import-keyboard

This command imports a data-driven info.json keyboard into the repo.

Usage:

usage: qmk import-keyboard [-h] filename

Example:

$ qmk import-keyboard ~/Downloads/forever60.json\nΨ Importing forever60.json.\n\nΨ Imported a new keyboard named forever60.\nΨ To start working on things, `cd` into keyboards/forever60,\nΨ or open the directory in your preferred text editor.\nΨ And build with qmk compile -kb forever60 -km default.

qmk import-keymap

This command imports a data-driven keymap.json keymap into the repo.

Usage:

usage: qmk import-keymap [-h] filename

Example:

qmk import-keymap ~/Downloads/asdf2.json\nΨ Importing asdf2.json.\n\nΨ Imported a new keymap named asdf2.\nΨ To start working on things, `cd` into keyboards/takashicompany/dogtag/keymaps/asdf2,\nΨ or open the directory in your preferred text editor.\nΨ And build with qmk compile -kb takashicompany/dogtag -km asdf2.

qmk import-kbfirmware

This command creates a new keyboard based on a Keyboard Firmware Builder export.

Usage:

usage: qmk import-kbfirmware [-h] filename

Example:

$ qmk import-kbfirmware ~/Downloads/gh62.json\nΨ Importing gh62.json.\n\n⚠ Support here is basic - Consider using 'qmk new-keyboard' instead\nΨ Imported a new keyboard named gh62.\nΨ To start working on things, `cd` into keyboards/gh62,\nΨ or open the directory in your preferred text editor.\nΨ And build with qmk compile -kb gh62 -km default.

External Userspace Commands

qmk userspace-add

This command adds a keyboard/keymap to the External Userspace build targets.

Usage:

qmk userspace-add [-h] [-km KEYMAP] [-kb KEYBOARD] [builds ...]\n\npositional arguments:\n  builds                List of builds in form <keyboard>:<keymap>, or path to a keymap JSON file.\n\noptions:\n  -h, --help            show this help message and exit\n  -km KEYMAP, --keymap KEYMAP\n                        The keymap to build a firmware for. Ignored when a configurator export is supplied.\n  -kb KEYBOARD, --keyboard KEYBOARD\n                        The keyboard to build a firmware for. Ignored when a configurator export is supplied.

Example:

$ qmk userspace-add -kb planck/rev6 -km default\nΨ Added planck/rev6:default to userspace build targets\nΨ Saved userspace file to /home/you/qmk_userspace/qmk.json

qmk userspace-remove

This command removes a keyboard/keymap from the External Userspace build targets.

Usage:

qmk userspace-remove [-h] [-km KEYMAP] [-kb KEYBOARD] [builds ...]\n\npositional arguments:\n  builds                List of builds in form <keyboard>:<keymap>, or path to a keymap JSON file.\n\noptions:\n  -h, --help            show this help message and exit\n  -km KEYMAP, --keymap KEYMAP\n                        The keymap to build a firmware for. Ignored when a configurator export is supplied.\n  -kb KEYBOARD, --keyboard KEYBOARD\n                        The keyboard to build a firmware for. Ignored when a configurator export is supplied.

Example:

$ qmk userspace-remove -kb planck/rev6 -km default\nΨ Removed planck/rev6:default from userspace build targets\nΨ Saved userspace file to /home/you/qmk_userspace/qmk.json

qmk userspace-list

This command lists the External Userspace build targets.

Usage:

qmk userspace-list [-h] [-e]\n\noptions:\n  -h, --help    show this help message and exit\n  -e, --expand  Expands any use of `all` for either keyboard or keymap.

Example:

$ qmk userspace-list\nΨ Current userspace build targets:\nΨ Keyboard: planck/rev6, keymap: you\nΨ Keyboard: clueboard/66/rev3, keymap: you

qmk userspace-compile

This command compiles all the External Userspace build targets.

Usage:

qmk userspace-compile [-h] [-e ENV] [-p] [-n] [-c] [-j PARALLEL] [-t]\n\noptions:\n  -h, --help            show this help message and exit\n  -e, --env ENV         Set a variable to be passed to make. May be passed multiple times.\n  -p, --print-failures  Print failed builds.\n  -n, --dry-run         Don't actually build, just show the commands to be run.\n  -c, --clean           Remove object files before compiling.\n  -j, --parallel PARALLEL\n                        Set the number of parallel make jobs; 0 means unlimited.\n  -t, --no-temp         Remove temporary files during build.

Example:

$ qmk userspace-compile\nΨ Preparing target list...\nBuild planck/rev6:you                                                  [OK]\nBuild clueboard/66/rev3:you                                            [OK]

qmk userspace-doctor

This command examines your environment and alerts you to potential problems related to External Userspace.

Example:

% qmk userspace-doctor\nΨ QMK home: /home/you/qmk_userspace/qmk_firmware\nΨ Testing userspace candidate: /home/you/qmk_userspace -- Valid `qmk.json`\nΨ QMK userspace: /home/you/qmk_userspace\nΨ Userspace enabled: True

Developer Commands

qmk format-text

This command formats text files to have proper line endings.

Every text file in the repository needs to have Unix (LF) line ending. If you are working on Windows, you must ensure that line endings are corrected in order to get your PRs merged.

qmk format-text

qmk format-c

This command formats C code using clang-format.

Run it with no arguments to format all core code that has been changed. Default checks origin/master with git diff, branch can be changed using -b <branch_name>

Run it with -a to format all core code, or pass filenames on the command line to run it on specific files.

Usage for specified files:

qmk format-c [file1] [file2] [...] [fileN]

Usage for all core files:

qmk format-c -a

Usage for only changed files against origin/master:

qmk format-c

Usage for only changed files against branch_name:

qmk format-c -b branch_name

qmk docs

This command starts a local HTTP server which you can use for browsing or improving the docs, and provides live reload capability whilst editing. Default port is 8936. Use the -b/--browser flag to automatically open the local webserver in your default browser.

Requires node and yarn to be installed as prerequisites.

Usage:

usage: qmk docs [-h] [-b] [-p PORT]\n\noptions:\n  -h, --help       show this help message and exit\n  -b, --browser    Open the docs in the default browser.\n  -p, --port PORT  Port number to use.

qmk generate-docs

This command generates QMK documentation for production. Use the -s/--serve flag to also serve the static site on port 4173 once built. Note that this does not provide live reloading; use qmk docs instead for development purposes.

This command requires node and yarn to be installed as prerequisites, and requires the operating system to support symlinks.

Usage:

usage: qmk generate-docs [-h] [-s]\n\noptions:\n  -h, --help   show this help message and exit\n  -s, --serve  Serves the generated docs once built.

qmk generate-rgb-breathe-table

This command generates a lookup table (LUT) header file for the RGB Lighting feature's breathing animation. Place this file in your keyboard or keymap directory as rgblight_breathe_table.h to override the default LUT in quantum/rgblight/.

Usage:

qmk generate-rgb-breathe-table [-q] [-o OUTPUT] [-m MAX] [-c CENTER]

qmk kle2json

This command allows you to convert from raw KLE data to QMK Configurator JSON. It accepts either an absolute file path, or a file name in the current directory. By default it will not overwrite info.json if it is already present. Use the -f or --force flag to overwrite.

Usage:

qmk kle2json [-f] <filename>

Examples:

$ qmk kle2json kle.txt\n☒ File info.json already exists, use -f or --force to overwrite.
$ qmk kle2json -f kle.txt -f\nΨ Wrote out to info.json

qmk format-python

This command formats python code in qmk_firmware.

Usage:

qmk format-python

qmk pytest

This command runs the python test suite. If you make changes to python code you should ensure this runs successfully.

Usage:

qmk pytest [-t TEST]

Examples:

Run entire test suite:

qmk pytest

Run test group:

qmk pytest -t qmk.tests.test_cli_commands

Run single test:

qmk pytest -t qmk.tests.test_cli_commands.test_c2json\nqmk pytest -t qmk.tests.test_qmk_path

qmk painter-convert-graphics

This command converts images to a format usable by QMK, i.e. the QGF File Format. See the Quantum Painter documentation for more information on this command.

qmk painter-make-font-image

This command converts a TTF font to an intermediate format for editing, before converting to the QFF File Format. See the Quantum Painter documentation for more information on this command.

qmk painter-convert-font-image

This command converts an intermediate font image to the QFF File Format. See the Quantum Painter documentation for more information on this command.

qmk test-c

This command runs the C unit test suite. If you make changes to C code you should ensure this runs successfully.

Usage:

qmk test-c [-h] [-t TEST] [-l] [-c] [-e ENV] [-j PARALLEL]\n\noptions:\n  -h, --help            show this help message and exit\n  -t TEST, --test TEST  Test to run from the available list. Supports wildcard globs. May be passed multiple times.\n  -l, --list            List available tests.\n  -c, --clean           Remove object files before compiling.\n  -e ENV, --env ENV     Set a variable to be passed to make. May be passed multiple times.\n  -j PARALLEL, --parallel PARALLEL\n                        Set the number of parallel make jobs; 0 means unlimited.

Examples:

Run entire test suite:

qmk test-c

List available tests:

qmk test-c --list

Run matching test:

qmk test-c --test unicode*

Run single test:

qmk test-c --test basic

qmk generate-compilation-database

Usage:

qmk generate-compilation-database [-kb KEYBOARD] [-km KEYMAP]

This command has been deprecated as it cannot take into account configurables such as converters or environment variables normally specified on the command line; please use the --compiledb flag with qmk compile instead.

', 296); diff --git a/assets/cli_commands.md.CRBCuoFZ.lean.js b/assets/cli_commands.md.CycgrVp4.lean.js similarity index 83% rename from assets/cli_commands.md.CRBCuoFZ.lean.js rename to assets/cli_commands.md.CycgrVp4.lean.js index 2af5dcf4ddd..0c374cac28e 100644 --- a/assets/cli_commands.md.CRBCuoFZ.lean.js +++ b/assets/cli_commands.md.CycgrVp4.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK CLI Commands","description":"","frontmatter":{},"headers":[],"relativePath":"cli_commands.md","filePath":"cli_commands.md","lastUpdated":null}'); const _sfc_main = { name: "cli_commands.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 296); diff --git a/assets/cli_configuration.md.XqO3NJ_D.js b/assets/cli_configuration.md.CWQYtKyU.js similarity index 98% rename from assets/cli_configuration.md.XqO3NJ_D.js rename to assets/cli_configuration.md.CWQYtKyU.js index f678dfe8660..07af66f58bb 100644 --- a/assets/cli_configuration.md.XqO3NJ_D.js +++ b/assets/cli_configuration.md.CWQYtKyU.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK CLI Configuration","description":"","frontmatter":{},"headers":[],"relativePath":"cli_configuration.md","filePath":"cli_configuration.md","lastUpdated":null}'); const _sfc_main = { name: "cli_configuration.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK CLI Configuration

This document explains how qmk config works.

Introduction

Configuration for the QMK CLI is a key/value system. Each key consists of a subcommand and an argument name separated by a period. This allows for a straightforward and direct translation between config keys and the arguments they set.

Simple Example

As an example let's look at the command qmk compile --keyboard clueboard/66/rev4 --keymap default.

There are two command line arguments that could be read from configuration instead:

Let's set these now:

$ qmk config compile.keyboard=clueboard/66/rev4 compile.keymap=default\ncompile.keyboard: None -> clueboard/66/rev4\ncompile.keymap: None -> default\nΨ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini'

Now I can run qmk compile without specifying my keyboard and keymap each time.

Setting User Defaults

Sometimes you want to share a setting between multiple commands. For example, multiple commands take the argument --keyboard. Rather than setting this value for every command you can set a user value which will be used by any command that takes that argument.

Example:

$ qmk config user.keyboard=clueboard/66/rev4 user.keymap=default\nuser.keyboard: None -> clueboard/66/rev4\nuser.keymap: None -> default\nΨ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini'

CLI Documentation (qmk config)

The qmk config command is used to interact with the underlying configuration. When run with no argument it shows the current configuration. When arguments are supplied they are assumed to be configuration tokens, which are strings containing no spaces with the following form:

<subcommand|general|default>[.<key>][=<value>]

Setting Configuration Values

You can set configuration values by putting an equal sign (=) into your config key. The key must always be the full <section>.<key> form.

Example:

$ qmk config default.keymap=default\ndefault.keymap: None -> default\nΨ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini'

Reading Configuration Values

You can read configuration values for the entire configuration, a single key, or for an entire section. You can also specify multiple keys to display more than one value.

Entire Configuration Example

qmk config

Whole Section Example

qmk config compile

Single Key Example

qmk config compile.keyboard

Multiple Keys Example

qmk config user compile.keyboard compile.keymap

Deleting Configuration Values

You can delete a configuration value by setting it to the special string None.

Example:

$ qmk config default.keymap=None\ndefault.keymap: default -> None\nΨ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini'

Multiple Operations

You can combine multiple read and write operations into a single command. They will be executed and displayed in order:

$ qmk config compile default.keymap=default compile.keymap=None\ncompile.keymap=skully\ncompile.keyboard=clueboard/66_hotswap/gen1\ndefault.keymap: None -> default\ncompile.keymap: skully -> None\nΨ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini'

User Configuration Options

KeyDefault ValueDescription
user.keyboardNoneThe keyboard path (Example: clueboard/66/rev4)
user.keymapNoneThe keymap name (Example: default)
user.nameNoneThe user's GitHub username.

All Configuration Options

KeyDefault ValueDescription
compile.keyboardNoneThe keyboard path (Example: clueboard/66/rev4)
compile.keymapNoneThe keymap name (Example: default)
hello.nameNoneThe name to greet when run.
new_keyboard.keyboardNoneThe keyboard path (Example: clueboard/66/rev4)
new_keyboard.keymapNoneThe keymap name (Example: default)
', 43); diff --git a/assets/cli_configuration.md.XqO3NJ_D.lean.js b/assets/cli_configuration.md.CWQYtKyU.lean.js similarity index 83% rename from assets/cli_configuration.md.XqO3NJ_D.lean.js rename to assets/cli_configuration.md.CWQYtKyU.lean.js index e4bbc36bff2..f889bafeb48 100644 --- a/assets/cli_configuration.md.XqO3NJ_D.lean.js +++ b/assets/cli_configuration.md.CWQYtKyU.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK CLI Configuration","description":"","frontmatter":{},"headers":[],"relativePath":"cli_configuration.md","filePath":"cli_configuration.md","lastUpdated":null}'); const _sfc_main = { name: "cli_configuration.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 43); diff --git a/assets/cli_development.md.DEROGtvC.js b/assets/cli_development.md.bdrJhiD-.js similarity index 99% rename from assets/cli_development.md.DEROGtvC.js rename to assets/cli_development.md.bdrJhiD-.js index 41e609f6485..cbf87ae820a 100644 --- a/assets/cli_development.md.DEROGtvC.js +++ b/assets/cli_development.md.bdrJhiD-.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK CLI Development","description":"","frontmatter":{},"headers":[],"relativePath":"cli_development.md","filePath":"cli_development.md","lastUpdated":null}'); const _sfc_main = { name: "cli_development.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK CLI Development

This document has useful information for developers wishing to write new qmk subcommands.

Overview

The QMK CLI operates using the subcommand pattern made famous by git. The main qmk script is simply there to setup the environment and pick the correct entrypoint to run. Each subcommand is a self-contained module with an entrypoint (decorated by @cli.subcommand()) that performs some action and returns a shell returncode, or None.

Developer mode:

If you intend to maintain keyboards and/or contribute to QMK, you can enable the CLI's "Developer" mode:

qmk config user.developer=True

This will allow you to see all available subcommands.
Note: You will have to install additional requirements:

python3 -m pip install -r requirements-dev.txt

Subcommands

MILC is the CLI framework qmk uses to handle argument parsing, configuration, logging, and many other features. It lets you focus on writing your tool without wasting your time writing glue code.

Subcommands in the local CLI are always found in qmk_firmware/lib/python/qmk/cli.

Let's start by looking at an example subcommand. This is lib/python/qmk/cli/hello.py:

python
"""QMK Python Hello World\n\nThis is an example QMK CLI script.\n"""\nfrom milc import cli\n\n\n@cli.argument('-n', '--name', default='World', help='Name to greet.')\n@cli.subcommand('QMK Hello World.')\ndef hello(cli):\n    """Log a friendly greeting.\n    """\n    cli.log.info('Hello, %s!', cli.config.hello.name)

First we import the cli object from milc. This is how we interact with the user and control the script's behavior. We use @cli.argument() to define a command line flag, --name. This also creates a configuration variable named hello.name (and the corresponding user.name) which the user can set so they don't have to specify the argument. The cli.subcommand() decorator designates this function as a subcommand. The name of the subcommand will be taken from the name of the function.

Once inside our function we find a typical "Hello, World!" program. We use cli.log to access the underlying Logger Object, whose behavior is user controllable. We also access the value for name supplied by the user as cli.config.hello.name. The value for cli.config.hello.name will be determined by looking at the --name argument supplied by the user, if not provided it will use the value in the qmk.ini config file, and if neither of those is provided it will fall back to the default supplied in the cli.argument() decorator.

User Interaction

MILC and the QMK CLI have several nice tools for interacting with the user. Using these standard tools will allow you to colorize your text for easier interactions, and allow the user to control when and how that information is displayed and stored.

Printing Text

There are two main methods for outputting text in a subcommand- cli.log and cli.echo(). They operate in similar ways but you should prefer to use cli.log.info() for most general purpose printing.

You can use special tokens to colorize your text, to make it easier to understand the output of your program. See Colorizing Text below.

Both of these methods support built-in string formatting using python's printf style string format operations. You can use tokens such as %s and %d within your text strings then pass the values as arguments. See our Hello, World program above for an example.

You should never use the format operator (%) directly, always pass values as arguments.

Logging (cli.log)

The cli.log object gives you access to a Logger Object. We have configured our log output to show the user a nice emoji for each log level (or the log level name if their terminal does not support unicode.) This way the user can tell at a glance which messages are most important when something goes wrong.

The default log level is INFO. If the user runs qmk -v <subcommand> the default log level will be set to DEBUG.

FunctionEmoji
cli.log.critical{bg_red}{fg_white}¬_¬{style_reset_all}
cli.log.error{fg_red}☒{style_reset_all}
cli.log.warning{fg_yellow}⚠{style_reset_all}
cli.log.info{fg_blue}Ψ{style_reset_all}
cli.log.debug{fg_cyan}☐{style_reset_all}
cli.log.notset{style_reset_all}¯\\\\_(o_o)_/¯

Printing (cli.echo)

Sometimes you simply need to print text outside of the log system. This is appropriate if you are outputting fixed data or writing out something that should never be logged. Most of the time you should prefer cli.log.info() over cli.echo.

Colorizing Text

You can colorize the output of your text by including color tokens within text. Use color to highlight, not to convey information. Remember that the user can disable color, and your subcommand should still be usable if they do.

You should generally avoid setting the background color, unless it's integral to what you are doing. Remember that users have a lot of preferences when it comes to their terminal color, so you should pick colors that work well against both black and white backgrounds.

Colors prefixed with 'fg' will affect the foreground (text) color. Colors prefixed with 'bg' will affect the background color.

', 33); diff --git a/assets/cli_development.md.DEROGtvC.lean.js b/assets/cli_development.md.bdrJhiD-.lean.js similarity index 98% rename from assets/cli_development.md.DEROGtvC.lean.js rename to assets/cli_development.md.bdrJhiD-.lean.js index 232dd2e3182..a78e2d374fb 100644 --- a/assets/cli_development.md.DEROGtvC.lean.js +++ b/assets/cli_development.md.bdrJhiD-.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK CLI Development","description":"","frontmatter":{},"headers":[],"relativePath":"cli_development.md","filePath":"cli_development.md","lastUpdated":null}'); const _sfc_main = { name: "cli_development.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 33); diff --git a/assets/cli_tab_complete.md.D1OMIPwp.js b/assets/cli_tab_complete.md.BMCs6AIK.js similarity index 96% rename from assets/cli_tab_complete.md.D1OMIPwp.js rename to assets/cli_tab_complete.md.BMCs6AIK.js index c8ec036adb3..ec9de9b5182 100644 --- a/assets/cli_tab_complete.md.D1OMIPwp.js +++ b/assets/cli_tab_complete.md.BMCs6AIK.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Tab Completion for QMK","description":"","frontmatter":{},"headers":[],"relativePath":"cli_tab_complete.md","filePath":"cli_tab_complete.md","lastUpdated":null}'); const _sfc_main = { name: "cli_tab_complete.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Tab Completion for QMK

If you are using Bash 4.2 or later, Zsh, or FiSH you can enable Tab Completion for the QMK CLI. This will let you tab complete the names of flags, keyboards, files, and other qmk options.

Setup

There are several ways you can setup tab completion.

For Your User Only

Add this to the end of your .profile or .bashrc:

source ~/qmk_firmware/util/qmk_tab_complete.sh

If you put qmk_firmware into another location you will need to adjust this path.

Zsh users will need to load bashcompinit. The following can be added to ~/.zshrc file:

autoload -Uz bashcompinit && bashcompinit

If you want the tab completion available to all users of the system you can add a symlink to the qmk_tab_complete.sh script:

ln -s ~/qmk_firmware/util/qmk_tab_complete.sh /etc/profile.d/qmk_tab_complete.sh

System Wide Copy

In some cases a symlink may not work. Instead you can copy the file directly into place. Be aware that updates to the tab complete script may happen from time to time, you will want to recopy the file periodically.

cp util/qmk_tab_complete.sh /etc/profile.d
', 16); diff --git a/assets/cli_tab_complete.md.D1OMIPwp.lean.js b/assets/cli_tab_complete.md.BMCs6AIK.lean.js similarity index 83% rename from assets/cli_tab_complete.md.D1OMIPwp.lean.js rename to assets/cli_tab_complete.md.BMCs6AIK.lean.js index ca911cbbfc0..8aa4422ee11 100644 --- a/assets/cli_tab_complete.md.D1OMIPwp.lean.js +++ b/assets/cli_tab_complete.md.BMCs6AIK.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Tab Completion for QMK","description":"","frontmatter":{},"headers":[],"relativePath":"cli_tab_complete.md","filePath":"cli_tab_complete.md","lastUpdated":null}'); const _sfc_main = { name: "cli_tab_complete.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 16); diff --git a/assets/coding_conventions_c.md.BozxIF_g.js b/assets/coding_conventions_c.md.CgLiZ0K-.js similarity index 98% rename from assets/coding_conventions_c.md.BozxIF_g.js rename to assets/coding_conventions_c.md.CgLiZ0K-.js index ecd5920852a..f399fdd3e4b 100644 --- a/assets/coding_conventions_c.md.BozxIF_g.js +++ b/assets/coding_conventions_c.md.CgLiZ0K-.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Coding Conventions (C)","description":"","frontmatter":{},"headers":[],"relativePath":"coding_conventions_c.md","filePath":"coding_conventions_c.md","lastUpdated":null}'); const _sfc_main = { name: "coding_conventions_c.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Coding Conventions (C)

Most of our style is pretty easy to pick up on, but right now it's not entirely consistent. You should match the style of the code surrounding your change, but if that code is inconsistent or unclear use the following guidelines:

Here is an example for easy reference:

c
/* Enums for foo */\nenum foo_state {\n    FOO_BAR,\n    FOO_BAZ,\n};\n\n/* Returns a value */\nint foo(void) {\n    if (some_condition) {\n        return FOO_BAR;\n    } else {\n        return -1;\n    }\n}

Auto-formatting with clang-format

Clang-format is part of LLVM and can automatically format your code for you, because ain't nobody got time to do it manually. We supply a configuration file for it that applies most of the coding conventions listed above. It will only change whitespace and newlines, so you will still have to remember to include optional braces yourself.

Use the full LLVM installer to get clang-format on Windows, or use sudo apt install clang-format on Ubuntu.

If you run it from the command-line, pass -style=file as an option and it will automatically find the .clang-format configuration file in the QMK root directory.

If you use VSCode, the standard C/C++ plugin supports clang-format, alternatively there is a separate extension for it.

Some things (like LAYOUT macros) are destroyed by clang-format, so either don't run it on those files, or wrap the sensitive code in // clang-format off and // clang-format on.

', 11); diff --git a/assets/coding_conventions_c.md.BozxIF_g.lean.js b/assets/coding_conventions_c.md.CgLiZ0K-.lean.js similarity index 83% rename from assets/coding_conventions_c.md.BozxIF_g.lean.js rename to assets/coding_conventions_c.md.CgLiZ0K-.lean.js index ae18a6379ed..1fe20b2fb15 100644 --- a/assets/coding_conventions_c.md.BozxIF_g.lean.js +++ b/assets/coding_conventions_c.md.CgLiZ0K-.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Coding Conventions (C)","description":"","frontmatter":{},"headers":[],"relativePath":"coding_conventions_c.md","filePath":"coding_conventions_c.md","lastUpdated":null}'); const _sfc_main = { name: "coding_conventions_c.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 11); diff --git a/assets/coding_conventions_python.md.DP_Zes00.js b/assets/coding_conventions_python.md.C-VrJiRu.js similarity index 99% rename from assets/coding_conventions_python.md.DP_Zes00.js rename to assets/coding_conventions_python.md.C-VrJiRu.js index 36b1ecf1527..b3c75a6df83 100644 --- a/assets/coding_conventions_python.md.DP_Zes00.js +++ b/assets/coding_conventions_python.md.C-VrJiRu.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Coding Conventions (Python)","description":"","frontmatter":{},"headers":[],"relativePath":"coding_conventions_python.md","filePath":"coding_conventions_python.md","lastUpdated":null}'); const _sfc_main = { name: "coding_conventions_python.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Coding Conventions (Python)

Most of our style follows PEP8 with some local modifications to make things less nit-picky.

YAPF

You can use yapf to style your code. We provide a config in setup.cfg.

Imports

We don't have a hard and fast rule for when to use import ... vs from ... import .... Understandability and maintainability is our ultimate goal.

Generally we prefer to import specific function and class names from a module to keep code shorter and easier to understand. Sometimes this results in a name that is ambiguous, and in such cases we prefer to import the module instead. You should avoid using the "as" keyword when importing, unless you are importing a compatibility module.

Imports should be one line per module. We group import statements together using the standard python rules- system, 3rd party, local.

Do not use from foo import *. Supply a list of objects you want to import instead, or import the whole module.

Import Examples

Good:

from qmk import effects\n\neffects.echo()

Bad:

from qmk.effects import echo\n\necho()  # It's unclear where echo comes from

Good:

from qmk.keymap import compile_firmware\n\ncompile_firmware()

OK, but the above is better:

import qmk.keymap\n\nqmk.keymap.compile_firmware()

Statements

One statement per line.

Even when allowed (EG if foo: bar) we do not combine 2 statements onto a single line.

Naming

module_name, package_name, ClassName, method_name, ExceptionName, function_name, GLOBAL_CONSTANT_NAME, global_var_name, instance_var_name, function_parameter_name, local_var_name.

Function names, variable names, and filenames should be descriptive; eschew abbreviation. In particular, do not use abbreviations that are ambiguous or unfamiliar to readers outside your project, and do not abbreviate by deleting letters within a word.

Always use a .py filename extension. Never use dashes.

Names to Avoid

Docstrings

To maintain consistency with our docstrings we've set out the following guidelines.

Simple docstring example

def my_awesome_function():\n    """Return the number of seconds since 1970 Jan 1 00:00 UTC.\n    """\n    return int(time.time())

Complex docstring example

def my_awesome_function():\n    """Return the number of seconds since 1970 Jan 1 00:00 UTC.\n\n    This function always returns an integer number of seconds.\n    """\n    return int(time.time())

Function arguments docstring example

def my_awesome_function(start=None, offset=0):\n    """Return the number of seconds since 1970 Jan 1 00:00 UTC.\n\n    This function always returns an integer number of seconds.\n\n\n    Args:\n        start\n            The time to start at instead of 1970 Jan 1 00:00 UTC\n\n        offset\n            Return an answer that has this number of seconds subtracted first\n\n    Returns:\n        An integer describing a number of seconds.\n\n    Raises:\n        ValueError\n            When `start` or `offset` are not positive numbers\n    """\n    if start < 0 or offset < 0:\n        raise ValueError('start and offset must be positive numbers.')\n\n    if not start:\n        start = time.time()\n\n    return int(start - offset)

Exceptions

Exceptions are used to handle exceptional situations. They should not be used for flow control. This is a break from the python norm of "ask for forgiveness." If you are catching an exception it should be to handle a situation that is unusual.

If you use a catch-all exception for any reason you must log the exception and stacktrace using cli.log.

Make your try/except blocks as short as possible. If you need a lot of try statements you may need to restructure your code.

Tuples

When defining one-item tuples always include a trailing comma so that it is obvious you are using a tuple. Do not rely on implicit one-item tuple unpacking. Better still use a list which is unambiguous.

This is particularly important when using the printf-style format strings that are commonly used.

Lists and Dictionaries

We have configured YAPF to differentiate between sequence styles with a trailing comma. When a trailing comma is omitted YAPF will format the sequence as a single line. When a trailing comma is included YAPF will format the sequence with one item per line.

You should generally prefer to keep short definition on a single line. Break out to multiple lines sooner rather than later to aid readability and maintainability.

Parentheses

Avoid excessive parentheses, but do use parentheses to make code easier to understand. Do not use them in return statements unless you are explicitly returning a tuple, or it is part of a math expression.

Format Strings

We generally prefer printf-style format strings. Example:

name = 'World'\nprint('Hello, %s!' % (name,))

This style is used by the logging module, which we make use of extensively, and we have adopted it in other places for consistency. It is also more familiar to C programmers, who are a big part of our casual audience.

Our included CLI module has support for using these without using the percent (%) operator. Look at cli.echo() and the various cli.log functions (EG, cli.log.info()) for more details.

Comprehensions & Generator Expressions

We encourage the liberal use of comprehensions and generators, but do not let them get too complex. If you need complexity fall back to a for loop that is easier to understand.

Lambdas

OK to use but probably should be avoided. With comprehensions and generators the need for lambdas is not as strong as it once was.

Conditional Expressions

OK in variable assignment, but otherwise should be avoided.

Conditional expressions are if statements that are in line with code. For example:

x = 1 if cond else 2

It's generally not a good idea to use these as function arguments, sequence items, etc. It's too easy to overlook.

Default Argument Values

Encouraged, but values must be immutable objects.

When specifying default values in argument lists always be careful to specify objects that can't be modified in place. If you use a mutable object the changes you make will persist between calls, which is usually not what you want. Even if that is what you intend to do it is confusing for others and will hinder understanding.

Bad:

def my_func(foo={}):\n    pass

Good:

def my_func(foo=None):\n    if not foo:\n        foo = {}

Properties

Always use properties instead of getter and setter functions.

class Foo(object):\n    def __init__(self):\n        self._bar = None\n\n    @property\n    def bar(self):\n        return self._bar\n\n    @bar.setter\n    def bar(self, bar):\n        self._bar = bar

True/False Evaluations

You should generally prefer the implicit True/False evaluation in if statements, rather than checking equivalency.

Bad:

if foo == True:\n    pass\n\nif bar == False:\n    pass

Good:

if foo:\n    pass\n\nif not bar:\n    pass

Decorators

Use when appropriate. Try to avoid too much magic unless it helps with understanding.

Threading and Multiprocessing

Should be avoided. If you need this you will have to make a strong case before we merge your code.

Power Features

Python is an extremely flexible language and gives you many fancy features such as custom metaclasses, access to bytecode, on-the-fly compilation, dynamic inheritance, object reparenting, import hacks, reflection, modification of system internals, etc.

Don't use these.

Performance is not a critical concern for us, and code understandability is. We want our codebase to be approachable by someone who only has a day or two to play with it. These features generally come with a cost to easy understanding, and we would prefer to have code that can be readily understood over faster or more compact code.

Note that some standard library modules use these techniques and it is ok to make use of those modules. But please keep readability and understandability in mind when using them.

Type Annotated Code

For now we are not using any type annotation system, and would prefer that code remain unannotated. We may revisit this in the future.

Function length

Prefer small and focused functions.

We recognize that long functions are sometimes appropriate, so no hard limit is placed on function length. If a function exceeds about 40 lines, think about whether it can be broken up without harming the structure of the program.

Even if your long function works perfectly now, someone modifying it in a few months may add new behavior. This could result in bugs that are hard to find. Keeping your functions short and simple makes it easier for other people to read and modify your code.

You could find long and complicated functions when working with some code. Do not be intimidated by modifying existing code: if working with such a function proves to be difficult, you find that errors are hard to debug, or you want to use a piece of it in several different contexts, consider breaking up the function into smaller and more manageable pieces.

FIXMEs

It is OK to leave FIXMEs in code. Why? Encouraging people to at least document parts of code that need to be thought out more (or that are confusing) is better than leaving this code undocumented.

All FIXMEs should be formatted like:

FIXME(username): Revisit this code when the frob feature is done.

...where username is your GitHub username.

Testing

We use a combination of Integration and Unit testing to ensure that the our code is as bug-free as possible. All the tests can be found in lib/python/qmk/tests/. You can run all the tests with qmk pytest.

At the time of this writing our tests are not very comprehensive. Looking at the current tests and writing new test cases for untested situations is a great way to both familiarize yourself with the codebase and contribute to QMK.

Integration Tests

Integration tests can be found in lib/python/qmk/tests/test_cli_commands.py. This is where CLI commands are actually run and their overall behavior is verified. We use subprocess to launch each CLI command and a combination of checking output and returncode to determine if the right thing happened.

Unit Tests

The other test_*.py files in lib/python/qmk/tests/ contain unit tests. You can write tests for individual functions inside lib/python/qmk/ here. Generally these files are named after the module, with dots replaced by underscores.

At the time of this writing we do not do any mocking for our tests. If you would like to help us change this please open an issue or join #cli on Discord and start a conversation there.

', 108); diff --git a/assets/coding_conventions_python.md.DP_Zes00.lean.js b/assets/coding_conventions_python.md.C-VrJiRu.lean.js similarity index 84% rename from assets/coding_conventions_python.md.DP_Zes00.lean.js rename to assets/coding_conventions_python.md.C-VrJiRu.lean.js index 8e339f8fcd6..5f3472c2389 100644 --- a/assets/coding_conventions_python.md.DP_Zes00.lean.js +++ b/assets/coding_conventions_python.md.C-VrJiRu.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Coding Conventions (Python)","description":"","frontmatter":{},"headers":[],"relativePath":"coding_conventions_python.md","filePath":"coding_conventions_python.md","lastUpdated":null}'); const _sfc_main = { name: "coding_conventions_python.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 108); diff --git a/assets/compatible_microcontrollers.md.DY4Poukh.js b/assets/compatible_microcontrollers.md.CZ7InUb5.js similarity index 98% rename from assets/compatible_microcontrollers.md.DY4Poukh.js rename to assets/compatible_microcontrollers.md.CZ7InUb5.js index e0646d2dd4c..152c093e943 100644 --- a/assets/compatible_microcontrollers.md.DY4Poukh.js +++ b/assets/compatible_microcontrollers.md.CZ7InUb5.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Compatible Microcontrollers","description":"","frontmatter":{},"headers":[],"relativePath":"compatible_microcontrollers.md","filePath":"compatible_microcontrollers.md","lastUpdated":null}'); const _sfc_main = { name: "compatible_microcontrollers.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Compatible Microcontrollers

QMK runs on any USB-capable AVR or ARM microcontroller with enough flash space - generally 32kB+ for AVR, and 64kB+ for ARM. With significant disabling of features, QMK may just squeeze into 16kB AVR MCUs.

Features within QMK may or may not be compatible with every microcontroller.

Atmel AVR

The following use LUFA as the USB stack:

Certain MCUs which do not have native USB will use V-USB instead:

ARM

You can also use any ARM chip with USB that ChibiOS supports. Most have plenty of flash. Known to work are:

STMicroelectronics (STM32)

WestBerryTech (WB32)

Artery (AT32)

NXP (Kinetis)

Raspberry Pi

For a detailed overview about the RP2040 support by QMK see the dedicated RP2040 page.

RISC-V

GigaDevice

ChibiOS-Contrib has support for the GigaDevice GD32VF103 series microcontrollers and provides configurations for the SiPeed Longan Nano development board that uses this microcontroller. It is largely pin and feature compatible with STM32F103 and STM32F303 microcontrollers.

', 24); diff --git a/assets/compatible_microcontrollers.md.DY4Poukh.lean.js b/assets/compatible_microcontrollers.md.CZ7InUb5.lean.js similarity index 84% rename from assets/compatible_microcontrollers.md.DY4Poukh.lean.js rename to assets/compatible_microcontrollers.md.CZ7InUb5.lean.js index a35e32fb1c0..6cef7ab580c 100644 --- a/assets/compatible_microcontrollers.md.DY4Poukh.lean.js +++ b/assets/compatible_microcontrollers.md.CZ7InUb5.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Compatible Microcontrollers","description":"","frontmatter":{},"headers":[],"relativePath":"compatible_microcontrollers.md","filePath":"compatible_microcontrollers.md","lastUpdated":null}'); const _sfc_main = { name: "compatible_microcontrollers.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 24); diff --git a/assets/config_options.md.01OxPzbg.js b/assets/config_options.md.DO-qGA0T.js similarity index 99% rename from assets/config_options.md.01OxPzbg.js rename to assets/config_options.md.DO-qGA0T.js index e53dc2569fe..5d9abd32a48 100644 --- a/assets/config_options.md.01OxPzbg.js +++ b/assets/config_options.md.DO-qGA0T.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Configuring QMK","description":"","frontmatter":{},"headers":[],"relativePath":"config_options.md","filePath":"config_options.md","lastUpdated":null}'); const _sfc_main = { name: "config_options.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Configuring QMK

QMK is nearly infinitely configurable. Wherever possible we err on the side of allowing users to customize their keyboard, even at the expense of code size. That level of flexibility makes for a daunting configuration experience, however.

There are three main types of configuration files in QMK:

This page will only discuss the first two types, config.h and rules.mk.

TIP

While not all settings have data-driven equivalents yet, keyboard makers are encouraged to utilize the info.json file to set the metadata for their boards when possible. See the info.json Format page for more details.

These files exist at various levels in QMK and all files of the same type are combined to build the final configuration. The levels, from lowest priority to highest priority, are:

QMK Default

Every available setting in QMK has a default. If that setting is not set at the Keyboard, Folder, or Keymap level this is the setting that will be used.

Keyboard

This level contains config options that should apply to the whole keyboard. Some settings won't change in revisions, or most keymaps. Other settings are merely defaults for this keyboard and can be overridden by folders and/or keymaps.

Folders

Some keyboards have folders and sub-folders to allow for different hardware configurations. Most keyboards only go 1 folder deep, but QMK supports structures up to 5 folders deep. Each folder can have its own config.h and rules.mk files that are incorporated into the final configuration.

Keymap

This level contains all of the options for that particular keymap. If you wish to override a previous declaration, you can use #undef <variable> to undefine it, where you can then redefine it without an error.

The config.h File

This is a C header file that is one of the first things included, and will persist over the whole project (if included). Lots of variables can be set here and accessed elsewhere. The config.h file shouldn't be including other config.h files.

Hardware Options

Features That Can Be Disabled

If you define these options you will disable the associated feature, which can save on code size.

Features That Can Be Enabled

If you define these options you will enable the associated feature, which may increase your code size.

Behaviors That Can Be Configured

RGB Light Configuration

Mouse Key Options

Split Keyboard Options

Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk

Setting Handedness

One thing to remember, the side that the USB port is plugged into is always the master half. The side not plugged into USB is the slave.

There are a few different ways to set handedness for split keyboards (listed in order of precedence):

  1. Set SPLIT_HAND_PIN: Reads a pin to determine handedness. If pin is high, it's the left side, if low, the half is determined to be the right side
  2. Set EE_HANDS and flash eeprom-lefthand.eep/eeprom-righthand.eep to each half
    • For boards with DFU bootloader you can use :dfu-split-left/:dfu-split-right to flash these EEPROM files
    • For boards with Caterina bootloader (like stock Pro Micros), use :avrdude-split-left/:avrdude-split-right
    • For boards with ARM DFU bootloader (like Proton C), use :dfu-util-split-left/:dfu-util-split-right
  3. Set MASTER_RIGHT: Half that is plugged into the USB port is determined to be the master and right half (inverse of the default)
  4. Default: The side that is plugged into the USB port is the master half and is assumed to be the left half. The slave side is the right half

Defines for handedness

Other Options

The rules.mk File

This is a make file that is included by the top-level Makefile. It is used to set some information about the MCU that we will be compiling for as well as enabling and disabling certain features.

Build Options

AVR MCU Options

Feature Options

Use these to enable or disable building certain features. The more you have enabled the bigger your firmware will be, and you run the risk of building a firmware too large for your MCU.

USB Endpoint Limitations

In order to provide services over USB, QMK has to use USB endpoints. These are a finite resource: each microcontroller has only a certain number. This limits what features can be enabled together. If the available endpoints are exceeded, a build error is thrown.

The following features can require separate endpoints:

In order to improve utilisation of the endpoints, the HID features can be combined to use a single endpoint. By default, MOUSEKEY, EXTRAKEY, and NKRO are combined into a single endpoint.

The base keyboard functionality can also be combined into the endpoint, by setting KEYBOARD_SHARED_EP = yes. This frees up one more endpoint, but it can prevent the keyboard working in some BIOSes, as they do not implement Boot Keyboard protocol switching.

Combining the mouse also breaks Boot Mouse compatibility. The mouse can be uncombined by setting MOUSE_SHARED_EP = no if this functionality is required.

', 59); diff --git a/assets/config_options.md.01OxPzbg.lean.js b/assets/config_options.md.DO-qGA0T.lean.js similarity index 83% rename from assets/config_options.md.01OxPzbg.lean.js rename to assets/config_options.md.DO-qGA0T.lean.js index 33ce65a6d11..3797aa617d7 100644 --- a/assets/config_options.md.01OxPzbg.lean.js +++ b/assets/config_options.md.DO-qGA0T.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Configuring QMK","description":"","frontmatter":{},"headers":[],"relativePath":"config_options.md","filePath":"config_options.md","lastUpdated":null}'); const _sfc_main = { name: "config_options.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 59); diff --git a/assets/configurator_architecture.md.BO2Oi8tR.js b/assets/configurator_architecture.md.DPq5rVLw.js similarity index 98% rename from assets/configurator_architecture.md.BO2Oi8tR.js rename to assets/configurator_architecture.md.DPq5rVLw.js index 54792d7c333..f9247798503 100644 --- a/assets/configurator_architecture.md.BO2Oi8tR.js +++ b/assets/configurator_architecture.md.DPq5rVLw.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/assets/configurator_diagram.DiMPUo4A.svg"; const __pageData = JSON.parse('{"title":"QMK Configurator Architecture","description":"","frontmatter":{},"headers":[],"relativePath":"configurator_architecture.md","filePath":"configurator_architecture.md","lastUpdated":null}'); const _sfc_main = { name: "configurator_architecture.md" }; diff --git a/assets/configurator_architecture.md.BO2Oi8tR.lean.js b/assets/configurator_architecture.md.DPq5rVLw.lean.js similarity index 85% rename from assets/configurator_architecture.md.BO2Oi8tR.lean.js rename to assets/configurator_architecture.md.DPq5rVLw.lean.js index 3133524952e..10742cf5470 100644 --- a/assets/configurator_architecture.md.BO2Oi8tR.lean.js +++ b/assets/configurator_architecture.md.DPq5rVLw.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/assets/configurator_diagram.DiMPUo4A.svg"; const __pageData = JSON.parse('{"title":"QMK Configurator Architecture","description":"","frontmatter":{},"headers":[],"relativePath":"configurator_architecture.md","filePath":"configurator_architecture.md","lastUpdated":null}'); const _sfc_main = { name: "configurator_architecture.md" }; diff --git a/assets/configurator_default_keymaps.md.Dhx_hNGq.js b/assets/configurator_default_keymaps.md.Cji5fckm.js similarity index 99% rename from assets/configurator_default_keymaps.md.Dhx_hNGq.js rename to assets/configurator_default_keymaps.md.Cji5fckm.js index 97b52e0a364..42b6ea2651a 100644 --- a/assets/configurator_default_keymaps.md.Dhx_hNGq.js +++ b/assets/configurator_default_keymaps.md.Cji5fckm.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Adding Default Keymaps to QMK Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"configurator_default_keymaps.md","filePath":"configurator_default_keymaps.md","lastUpdated":null}'); const _sfc_main = { name: "configurator_default_keymaps.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Adding Default Keymaps to QMK Configurator

This page covers how to add a default keymap for a keyboard to QMK Configurator.

Technical Information

QMK Configurator uses JSON as its native file format for keymaps. As much as possible, these should be kept such that they behave the same as running make <keyboard>:default from qmk_firmware.

Keymaps in this directory require four key-value pairs:

Additionally, most keymaps contain a commit key. This key is not consumed by the API that back-stops QMK Configurator, but is used by Configurator's maintainers to tell which version of a keymap was used to create the JSON keymap in this repository. The value is the SHA of the last commit to modify a board's default keymap.c in the qmk_firmware repository. The SHA is found by checking out the master branch of the qmk/qmk_firmware repository and running git log -1 --pretty=oneline -- keyboards/<keyboard>/keymaps/default/keymap.c (use keymap.json if the keyboard in question has this file instead), which should return something similar to:

f14629ed1cd7c7ec9089604d64f29a99981558e8 Remove/migrate action_get_macro()s from default keymaps (#5625)

In this example, f14629ed1cd7c7ec9089604d64f29a99981558e8 is the value that should be used for commit.

Example

If one wished to add a default keymap for the H87a by Hineybush, one would run the git log command above against the H87a's default keymap in qmk_firmware:

user ~/qmk_firmware (master)\n$ git log -1 --pretty=oneline master -- keyboards/hineybush/h87a/keymaps/default/keymap.c\nef8878fba5d3786e3f9c66436da63a560cd36ac9 Hineybush h87a lock indicators (#8237)

Now that we have the commit hash, we need the keymap (edited for readability):

c
...\n#include QMK_KEYBOARD_H\n\nconst uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n\n  [0] = LAYOUT_all(\n    KC_ESC,           KC_F1,   KC_F2,   KC_F3,   KC_F4,   KC_F5,   KC_F6,   KC_F7,   KC_F8,   KC_F9,   KC_F10,  KC_F11,  KC_F12,              KC_PSCR, KC_SCRL, KC_PAUS,\n    KC_GRV,  KC_1,    KC_2,    KC_3,    KC_4,    KC_5,    KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    KC_MINS, KC_EQL,  KC_BSPC, KC_BSPC,    KC_INS,  KC_HOME, KC_PGUP,\n    KC_TAB,  KC_Q,    KC_W,    KC_E,    KC_R,    KC_T,    KC_Y,    KC_U,    KC_I,    KC_O,    KC_P,    KC_LBRC, KC_RBRC, KC_BSLS,             KC_DEL,  KC_END,  KC_PGDN,\n    KC_CAPS, KC_A,    KC_S,    KC_D,    KC_F,    KC_G,    KC_H,    KC_J,    KC_K,    KC_L,    KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT,\n    KC_LSFT, KC_NUBS, KC_Z,    KC_X,    KC_C,    KC_V,    KC_B,    KC_N,    KC_M,    KC_COMM, KC_DOT,  KC_SLSH, KC_RSFT, KC_TRNS,                      KC_UP,\n    KC_LCTL, KC_LGUI, KC_LALT,                            KC_SPC,                             KC_RALT, MO(1),   KC_RGUI, KC_RCTL,             KC_LEFT, KC_DOWN, KC_RGHT),\n\n  [1] = LAYOUT_all(\n    KC_TRNS,          KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, UG_TOGG, UG_NEXT, UG_HUED, UG_HUEU,          UG_SATD, UG_SATU, UG_VALD, UG_VALU,    BL_TOGG, BL_DOWN, BL_UP, \n    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,    KC_TRNS, KC_TRNS, KC_VOLU,\n    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_MPLY, KC_MNXT, KC_VOLD,\n    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,\n    KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,                      KC_TRNS,\n    KC_TRNS, KC_TRNS, KC_TRNS,                            KC_TRNS,                            KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,             KC_TRNS, KC_TRNS, KC_TRNS),\n\n};

The default keymap uses the LAYOUT_all macro, so that will be the value of the layout key. Compiled to a QMK Configurator JSON keymap, our resulting file should be:

json
{\n  "keyboard": "hineybush/h87a",\n  "keymap": "default",\n  "commit": "ef8878fba5d3786e3f9c66436da63a560cd36ac9",\n  "layout": "LAYOUT_all",\n  "layers": [\n    [\n      "KC_ESC",             "KC_F1",   "KC_F2",   "KC_F3",   "KC_F4",   "KC_F5",   "KC_F6",   "KC_F7",   "KC_F8",   "KC_F9",   "KC_F10",  "KC_F11",  "KC_F12",                "KC_PSCR", "KC_SCRL", "KC_PAUS",\n      "KC_GRV",  "KC_1",    "KC_2",    "KC_3",    "KC_4",    "KC_5",    "KC_6",    "KC_7",    "KC_8",    "KC_9",    "KC_0",    "KC_MINS", "KC_EQL",  "KC_BSPC", "KC_BSPC",    "KC_INS",  "KC_HOME", "KC_PGUP",\n      "KC_TAB",  "KC_Q",    "KC_W",    "KC_E",    "KC_R",    "KC_T",    "KC_Y",    "KC_U",    "KC_I",    "KC_O",    "KC_P",    "KC_LBRC", "KC_RBRC", "KC_BSLS",               "KC_DEL",  "KC_END",  "KC_PGDN",\n      "KC_CAPS", "KC_A",    "KC_S",    "KC_D",    "KC_F",    "KC_G",    "KC_H",    "KC_J",    "KC_K",    "KC_L",    "KC_SCLN", "KC_QUOT", "KC_NUHS", "KC_ENT",\n      "KC_LSFT", "KC_NUBS", "KC_Z",    "KC_X",    "KC_C",    "KC_V",    "KC_B",    "KC_N",    "KC_M",    "KC_COMM", "KC_DOT",  "KC_SLSH", "KC_RSFT", "KC_TRNS",                          "KC_UP",\n      "KC_LCTL", "KC_LGUI", "KC_LALT",                                  "KC_SPC",                                   "KC_RALT", "MO(1)",   "KC_RGUI", "KC_RCTL",               "KC_LEFT", "KC_DOWN", "KC_RGHT"\n    ],\n    [\n      "KC_TRNS",            "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "UG_TOGG", "UG_NEXT", "UG_HUED", "UG_HUEU", "UG_SATD", "UG_SATU", "UG_VALD", "UG_VALU",               "BL_TOGG", "BL_DOWN", "BL_UP",\n      "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",    "KC_TRNS", "KC_TRNS", "KC_VOLU",\n      "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "QK_BOOT", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",               "KC_MPLY", "KC_MNXT", "KC_VOLD",\n      "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",\n      "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",                          "KC_TRNS",\n      "KC_TRNS", "KC_TRNS", "KC_TRNS",                                  "KC_TRNS",                                  "KC_TRNS", "KC_TRNS", "KC_TRNS", "KC_TRNS",               "KC_TRNS", "KC_TRNS", "KC_TRNS"\n    ]\n  ]\n}

The white space in the layers arrays have no effect on the functionality of the keymap, but are used to make these files easier for humans to read.

Caveats

Layers can only be referenced by number

A common QMK convention is to name layers using a series of #defines, or an enum statement:

c
enum layer_names {\n    _BASE,\n    _MEDIA,\n    _FN\n};

This works in C, but for Configurator, you must use the layer's numeric index – MO(_FN) would need to be MO(2) in the above example.

No support for custom code of any kind

Features that require adding functions to the keymap.c file, such as Tap Dance or Unicode, can not be compiled in Configurator at all. Even setting TAP_DANCE_ENABLE = yes in the qmk_firmware repository at the keyboard level will prevent Configurator from compiling any firmware for that keyboard. This is limited both by the API and the current spec of our JSON keymap format.

Limited Support for Custom keycodes

There is a way to support custom keycodes: if the logic for a custom keycode is implemented at the keyboard level instead of the keymap level in qmk_firmware, that keycode can be used in Configurator and it will compile and work. Instead of using the following in your keymap.c:

c
enum custom_keycodes {\n    CUSTOM_1 = SAFE_RANGE,\n    CUSTOM_2,\n    CUSTOM_3\n};\n...\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch(keycode) {\n        case CUSTOM_1:\n            if (record->event.pressed) {\n                SEND_STRING("This is custom keycode #1.");\n            }\n            return false;\n        case CUSTOM_2:\n            if (record->event.pressed) {\n                SEND_STRING("This is custom keycode #2.");\n            }\n            return false;\n        case CUSTOM_3:\n            if (record->event.pressed) {\n                SEND_STRING("This is custom keycode #3.");\n            }\n            return false;\n    }\n    return true;\n};

... add the keycode enum block to your keyboard's header file (<keyboard>.h) as follows (note that the enum is named keyboard_keycodes here):

c
enum keyboard_keycodes {\n    CUSTOM_1 = QK_KB_0,\n    CUSTOM_2,\n    CUSTOM_3,\n};

... then the logic to your <keyboard>.c through process_record_kb():

c
bool process_record_kb(uint16_t keycode, keyrecord_t *record) {\n    switch(keycode) {\n        case CUSTOM_1:\n            if (record->event.pressed) {\n                SEND_STRING("This is custom keycode #1.");\n            }\n            return false;\n        case CUSTOM_2:\n            if (record->event.pressed) {\n                SEND_STRING("This is custom keycode #2.");\n            }\n            return false;\n        case CUSTOM_3:\n            if (record->event.pressed) {\n                SEND_STRING("This is custom keycode #3.");\n            }\n            return false;\n    }\n    return process_record_user(keycode, record);\n};

Note the call to process_record_user() at the end.

Additional Reading

For QMK Configurator to support your keyboard, your keyboard must be present in the master branch of the qmk_firmware repository. For instructions on this, please see Supporting Your Keyboard in QMK Configurator.

', 34); diff --git a/assets/configurator_default_keymaps.md.Dhx_hNGq.lean.js b/assets/configurator_default_keymaps.md.Cji5fckm.lean.js similarity index 85% rename from assets/configurator_default_keymaps.md.Dhx_hNGq.lean.js rename to assets/configurator_default_keymaps.md.Cji5fckm.lean.js index 44c2de89ea2..59e00bd4ad8 100644 --- a/assets/configurator_default_keymaps.md.Dhx_hNGq.lean.js +++ b/assets/configurator_default_keymaps.md.Cji5fckm.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Adding Default Keymaps to QMK Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"configurator_default_keymaps.md","filePath":"configurator_default_keymaps.md","lastUpdated":null}'); const _sfc_main = { name: "configurator_default_keymaps.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 34); diff --git a/assets/configurator_step_by_step.md.CvypTcmq.js b/assets/configurator_step_by_step.md.DJIPsyh-.js similarity index 97% rename from assets/configurator_step_by_step.md.CvypTcmq.js rename to assets/configurator_step_by_step.md.DJIPsyh-.js index 14d855525dd..d8a7d9867fe 100644 --- a/assets/configurator_step_by_step.md.CvypTcmq.js +++ b/assets/configurator_step_by_step.md.DJIPsyh-.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Configurator: Step by Step","description":"","frontmatter":{},"headers":[],"relativePath":"configurator_step_by_step.md","filePath":"configurator_step_by_step.md","lastUpdated":null}'); const _sfc_main = { name: "configurator_step_by_step.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Configurator: Step by Step

This page describes the steps for building your firmware in QMK Configurator.

Step 1: Select Your Keyboard

Click the drop down box and select the keyboard you want to create a keymap for.

TIP

If your keyboard has several versions, make sure you select the correct one.

I'll say that again because it's important:

WARNING

MAKE SURE YOU SELECT THE RIGHT VERSION!

Unfortunately if your keyboard has been advertised to be powered by QMK but is not in the list, you will not be able to use Configurator to customize your keyboard.

Chances are a developer hasn't gotten round to adding support or we haven't had a chance to merge it in yet. If there is no active Pull Request, contact the manufacturer and encourage them to add support.

Step 2: Select Your Keyboard Layout

Choose the layout that best represents the keymap you want to create. Some keyboards do not have enough layouts or correct layouts defined yet. They will be supported in the future.

WARNING

Sometimes there isn't a layout that supports your exact build. In that case select LAYOUT_all.

Step 3: Name Your Keymap

Call this keymap what you want.

TIP

If you are running into issues when compiling, it may be worth changing this name, as it may already exist in the QMK Firmware repo.

Step 4: Define Your Keymap

Keycode Entry is accomplished in one of 3 ways:

  1. Drag and drop
  2. Clicking on an empty spot on the layout, then clicking the keycode you desire
  3. Clicking on an empty spot on the layout, then pressing the physical key on your keyboard

TIP

Hover your mouse over a key and a short blurb will tell you what that keycode does. For a more verbose description please see:

WARNING

If your selected layout doesn't match your physical build leave the unused keys blank. If you're not sure which key is in use, for example you have a one backspace key but LAYOUT_all has 2 keys, put the same keycode in both locations.

Step 5: Save Your Keymap for Future Changes

When you're satisfied with your keymap or just want to work on it later, press the Download this QMK Keymap JSON File button. It will save your keymap to your computer. You can then load this .json file in the future by pressing the Upload a QMK Keymap JSON File button.

WARNING

CAUTION: This is not the same type of .json file used for kbfirmware.com or any other tool. If you try to use this for those tools, or the .json from those tools with QMK Configurator, you will encounter problems.

Step 6: Compile Your Firmware File

Press the green Compile button.

When the compilation is done, you will be able to press the green Download Firmware button.

Next steps: Flashing Your Keyboard

Please refer to Flashing Firmware.

', 29); diff --git a/assets/configurator_step_by_step.md.CvypTcmq.lean.js b/assets/configurator_step_by_step.md.DJIPsyh-.lean.js similarity index 84% rename from assets/configurator_step_by_step.md.CvypTcmq.lean.js rename to assets/configurator_step_by_step.md.DJIPsyh-.lean.js index e26de4de837..86feacb9dcc 100644 --- a/assets/configurator_step_by_step.md.CvypTcmq.lean.js +++ b/assets/configurator_step_by_step.md.DJIPsyh-.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Configurator: Step by Step","description":"","frontmatter":{},"headers":[],"relativePath":"configurator_step_by_step.md","filePath":"configurator_step_by_step.md","lastUpdated":null}'); const _sfc_main = { name: "configurator_step_by_step.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 29); diff --git a/assets/configurator_troubleshooting.md.B-LxAPMk.js b/assets/configurator_troubleshooting.md.z2LZSYLm.js similarity index 95% rename from assets/configurator_troubleshooting.md.B-LxAPMk.js rename to assets/configurator_troubleshooting.md.z2LZSYLm.js index 4f423a5cd44..d2e1d840f9e 100644 --- a/assets/configurator_troubleshooting.md.B-LxAPMk.js +++ b/assets/configurator_troubleshooting.md.z2LZSYLm.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Configurator Troubleshooting","description":"","frontmatter":{},"headers":[],"relativePath":"configurator_troubleshooting.md","filePath":"configurator_troubleshooting.md","lastUpdated":null}'); const _sfc_main = { name: "configurator_troubleshooting.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Configurator Troubleshooting

My .json file is not working

If the .json file was generated with QMK Configurator, congratulations you have stumbled upon a bug. File an issue at qmk_configurator.

If not... how did you miss the big bold message at the top saying not to use other .json files?

There are extra spaces in my layout? What do I do?

If you're referring to having three spots for space bar, the best course of action is to just fill them all with Space. The same can be done for Backspace and Shift keys.

What is the keycode for...

Please see:

It won't compile

Please double check the other layers of your keymap to make sure there are no random keys present.

Problems and Bugs

We are always accepting customer requests and bug reports. Please file them at qmk_configurator.

', 13); diff --git a/assets/configurator_troubleshooting.md.B-LxAPMk.lean.js b/assets/configurator_troubleshooting.md.z2LZSYLm.lean.js similarity index 84% rename from assets/configurator_troubleshooting.md.B-LxAPMk.lean.js rename to assets/configurator_troubleshooting.md.z2LZSYLm.lean.js index d823a4ee3a9..6172d68c5e2 100644 --- a/assets/configurator_troubleshooting.md.B-LxAPMk.lean.js +++ b/assets/configurator_troubleshooting.md.z2LZSYLm.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Configurator Troubleshooting","description":"","frontmatter":{},"headers":[],"relativePath":"configurator_troubleshooting.md","filePath":"configurator_troubleshooting.md","lastUpdated":null}'); const _sfc_main = { name: "configurator_troubleshooting.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 13); diff --git a/assets/contributing.md.BdfsPqoi.js b/assets/contributing.md.Dcwvm7t6.js similarity index 99% rename from assets/contributing.md.BdfsPqoi.js rename to assets/contributing.md.Dcwvm7t6.js index c88646de690..a0937a04635 100644 --- a/assets/contributing.md.BdfsPqoi.js +++ b/assets/contributing.md.Dcwvm7t6.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"How to Contribute","description":"","frontmatter":{},"headers":[],"relativePath":"contributing.md","filePath":"contributing.md","lastUpdated":null}'); const _sfc_main = { name: "contributing.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

How to Contribute

👍🎉 First off, thanks for taking the time to read this and contribute! 🎉👍

Third-party contributions help us grow and improve QMK. We want to make the pull request and contribution process useful and easy for both contributors and maintainers. To this end we've put together some guidelines for contributors to help your pull request be accepted without major changes.

I Don't Want to Read This Whole Thing! I Just Have a Question!

If you'd like to ask questions about QMK you can do so on the OLKB Subreddit or on Discord.

Please keep these things in mind:

Project Overview

QMK is largely written in C, with specific features and parts written in C++. It targets embedded processors found in keyboards, particularly AVR (LUFA) and ARM (ChibiOS). If you are already well versed in Arduino programming you'll find a lot of the concepts and limitations familiar. Prior experience with Arduino is not required to successfully contribute to QMK.

Where Can I Go for Help?

If you need help you can open an issue or chat on Discord.

How Do I Make a Contribution?

Never made an open source contribution before? Wondering how contributions work in QMK? Here's a quick rundown!

  1. Sign up for a GitHub account.
  2. Find an issue you are interested in addressing, or a feature you would like to add.
  3. Fork the repository associated with the issue to your GitHub account. This means that you will have a copy of the repository under your-GitHub-username/qmk_firmware.
  4. Clone the repository to your local machine using git clone https://github.com/github-username/repository-name.git.
  5. If you're working on a new feature consider opening an issue to talk with us about the work you're about to undertake.
  6. Create a new branch for your fix using git checkout -b branch-name-here.
  7. Make the appropriate changes for the issue you are trying to address or the feature that you want to add.
  8. Use git add insert-paths-of-changed-files-here to add the file contents of the changed files to the "snapshot" git uses to manage the state of the project, also known as the index.
  9. Use git commit -m "Insert a short message of the changes made here" to store the contents of the index with a descriptive message.
  10. Push the changes to your repository on GitHub using git push origin branch-name-here.
  11. Submit a pull request to QMK Firmware.
  12. Title the pull request with a short description of the changes made and the issue or bug number associated with your change. For example, you can title an issue like so "Added more log outputting to resolve #4352".
  13. In the description of the pull request explain the changes that you made, any issues you think exist with the pull request you made, and any questions you have for the maintainer. It's OK if your pull request is not perfect (no pull request is), the reviewer will be able to help you fix any problems and improve it!
  14. Wait for the pull request to be reviewed by a maintainer.
  15. Make changes to the pull request if the reviewing maintainer recommends them.
  16. Celebrate your success after your pull request is merged!

Coding Conventions

Most of our style is pretty easy to pick up on. If you are familiar with either C or Python you should not have too much trouble with our local styles.

General Guidelines

We have a few different types of changes in QMK, each requiring a different level of rigor. We'd like you to keep the following guidelines in mind no matter what type of change you're making.

Adjust the fronzlebop for the kerpleplork\n\nThe kerpleplork was intermittently failing with error code 23. The root cause was the fronzlebop setting, which causes the kerpleplork to activate every N iterations.\n\nLimited experimentation on the devices I have available shows that 7 is high enough to avoid confusing the kerpleplork, but I'd like to get some feedback from people with ARM devices to be sure.

Documentation

Documentation is one of the easiest ways to get started contributing to QMK. Finding places where the documentation is wrong or incomplete and fixing those is easy! We also very badly need someone to edit our documentation, so if you have editing skills but aren't sure where or how to jump in please reach out for help!

You'll find all our documentation in the qmk_firmware/docs directory, or if you'd rather use a web based workflow you can click the "Edit this page" link at the bottom of each page on https://docs.qmk.fm/.

When providing code examples in your documentation, try to observe naming conventions used elsewhere in the docs. For example, standardizing enums as my_layers or my_keycodes for consistency:

c
enum my_layers {\n  _FIRST_LAYER,\n  _SECOND_LAYER\n};\n\nenum my_keycodes {\n  FIRST_LAYER = SAFE_RANGE,\n  SECOND_LAYER\n};

Previewing the Documentation

Before opening a pull request, you can preview your changes if you have set up the development environment by running this command from the qmk_firmware/ folder:

qmk docs -b

Which should automatically open your browser; otherwise, navigate to http://localhost:8936/.

Keyboards

Keyboards are the raison d'être for QMK. Some keyboards are community maintained, while others are maintained by the people responsible for making a particular keyboard. The readme.md should tell you who maintains a particular keyboard. If you have questions relating to a particular keyboard you can Open An Issue and tag the maintainer in your question.

We also ask that you follow these guidelines:

Quantum/TMK Core

Before you put a lot of work into building your new feature you should make sure you are implementing it in the best way. You can get a basic understanding of QMK by reading Understanding QMK, which will take you on a tour of the QMK program flow. From here you should talk to us to get a sense of the best way to implement your idea. There are two main ways to do this:

Feature and Bug Fix PRs affect all keyboards. We are also in the process of restructuring QMK. For this reason it is especially important for significant changes to be discussed before implementation has happened. If you open a PR without talking to us first please be prepared to do some significant rework if your choices do not mesh well with our planned direction.

Here are some things to keep in mind when working on your feature or bug fix.

We also ask that you follow these guidelines:

Refactoring

To maintain a clear vision of how things are laid out in QMK we try to plan out refactors in-depth and have a collaborator make the changes. If you have an idea for refactoring, or suggestions, open an issue, we'd love to talk about how QMK can be improved.

What Does the Code of Conduct Mean for Me?

Our Code of Conduct means that you are responsible for treating everyone on the project with respect and courtesy regardless of their identity. If you are the victim of any inappropriate behavior or comments as described in our Code of Conduct, we are here for you and will do the best to ensure that the abuser is reprimanded appropriately, per our code.

', 47); diff --git a/assets/contributing.md.BdfsPqoi.lean.js b/assets/contributing.md.Dcwvm7t6.lean.js similarity index 82% rename from assets/contributing.md.BdfsPqoi.lean.js rename to assets/contributing.md.Dcwvm7t6.lean.js index 0deb83d0c3e..7223a7be08a 100644 --- a/assets/contributing.md.BdfsPqoi.lean.js +++ b/assets/contributing.md.Dcwvm7t6.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"How to Contribute","description":"","frontmatter":{},"headers":[],"relativePath":"contributing.md","filePath":"contributing.md","lastUpdated":null}'); const _sfc_main = { name: "contributing.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 47); diff --git a/assets/custom_matrix.md.gXpTxUyG.js b/assets/custom_matrix.md.DzDeXqyP.js similarity index 99% rename from assets/custom_matrix.md.gXpTxUyG.js rename to assets/custom_matrix.md.DzDeXqyP.js index 7bb60379db8..1415e97af3b 100644 --- a/assets/custom_matrix.md.gXpTxUyG.js +++ b/assets/custom_matrix.md.DzDeXqyP.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Custom Matrix","description":"","frontmatter":{},"headers":[],"relativePath":"custom_matrix.md","filePath":"custom_matrix.md","lastUpdated":null}'); const _sfc_main = { name: "custom_matrix.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Custom Matrix

QMK provides a mechanism to supplement or replace the default matrix scanning routine with your own code.

The reasons to use this feature include:

Prerequisites

Implementing custom matrix usually involves compilation of an additional source file. It is recommended that for consistency, this file is called matrix.c.

Add a new file to your keyboard directory:

keyboards/<keyboard>/matrix.c

And to configure compilation for the new file, add this to your rules.mk:

make
SRC += matrix.c

'lite'

Provides a default implementation for various scanning functions, reducing the boilerplate code when implementing custom matrix. To configure it, add this to your rules.mk:

make
CUSTOM_MATRIX = lite

And implement the following functions in a matrix.c file in your keyboard folder:

c
void matrix_init_custom(void) {\n    // TODO: initialize hardware here\n}\n\nbool matrix_scan_custom(matrix_row_t current_matrix[]) {\n    bool matrix_has_changed = false;\n\n    // TODO: add matrix scanning routine here\n\n    return matrix_has_changed;\n}

Full Replacement

When more control over the scanning routine is required, you can choose to implement the full scanning routine. To configure it, add this to your rules.mk:

make
CUSTOM_MATRIX = yes

And implement the following functions in a matrix.c file in your keyboard folder:

c
matrix_row_t matrix_get_row(uint8_t row) {\n    // TODO: return the requested row data\n}\n\nvoid matrix_print(void) {\n    // TODO: use print() to dump the current matrix state to console\n}\n\nvoid matrix_init(void) {\n    // TODO: initialize hardware and global matrix state here\n\n    // Unless hardware debouncing - Init the configured debounce routine\n    debounce_init();\n\n    // This *must* be called for correct keyboard behavior\n    matrix_init_kb();\n}\n\nuint8_t matrix_scan(void) {\n    bool changed = false;\n\n    // TODO: add matrix scanning routine here\n\n    // Unless hardware debouncing - use the configured debounce routine\n    changed = debounce(raw_matrix, matrix, changed);\n\n    // This *must* be called for correct keyboard behavior\n    matrix_scan_kb();\n\n    return changed;\n}

And also provide defaults for the following callbacks:

c
__attribute__((weak)) void matrix_init_kb(void) { matrix_init_user(); }\n\n__attribute__((weak)) void matrix_scan_kb(void) { matrix_scan_user(); }\n\n__attribute__((weak)) void matrix_init_user(void) {}\n\n__attribute__((weak)) void matrix_scan_user(void) {}
', 22); diff --git a/assets/custom_matrix.md.gXpTxUyG.lean.js b/assets/custom_matrix.md.DzDeXqyP.lean.js similarity index 83% rename from assets/custom_matrix.md.gXpTxUyG.lean.js rename to assets/custom_matrix.md.DzDeXqyP.lean.js index 794e39c2314..e4ddf2567e6 100644 --- a/assets/custom_matrix.md.gXpTxUyG.lean.js +++ b/assets/custom_matrix.md.DzDeXqyP.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Custom Matrix","description":"","frontmatter":{},"headers":[],"relativePath":"custom_matrix.md","filePath":"custom_matrix.md","lastUpdated":null}'); const _sfc_main = { name: "custom_matrix.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 22); diff --git a/assets/custom_quantum_functions.md.BlAK1gkM.js b/assets/custom_quantum_functions.md.Btyj-xrD.js similarity index 99% rename from assets/custom_quantum_functions.md.BlAK1gkM.js rename to assets/custom_quantum_functions.md.Btyj-xrD.js index 739b2945a27..aac0e361aac 100644 --- a/assets/custom_quantum_functions.md.BlAK1gkM.js +++ b/assets/custom_quantum_functions.md.Btyj-xrD.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse(`{"title":"How to Customize Your Keyboard's Behavior","description":"","frontmatter":{},"headers":[],"relativePath":"custom_quantum_functions.md","filePath":"custom_quantum_functions.md","lastUpdated":null}`); const _sfc_main = { name: "custom_quantum_functions.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

How to Customize Your Keyboard's Behavior

For a lot of people a custom keyboard is about more than sending button presses to your computer. You want to be able to do things that are more complex than simple button presses and macros. QMK has hooks that allow you to inject code, override functionality, and otherwise customize how your keyboard behaves in different situations.

This page does not assume any special knowledge about QMK, but reading Understanding QMK will help you understand what is going on at a more fundamental level.

A Word on Core vs Keyboards vs Keymap

We have structured QMK as a hierarchy:

Each of the functions described below can be defined with a _kb() suffix or a _user() suffix. We intend for you to use the _kb() suffix at the Keyboard/Revision level, while the _user() suffix should be used at the Keymap level.

When defining functions at the Keyboard/Revision level it is important that your _kb() implementation call _user() at an appropriate location, otherwise the keymap level function will never be called.

Functions at the _<module>_xxx() level are intended to allow keyboards or keymaps to override or enhance the processing associated with a community module.

When defining module overrides such as process_record_<module>(), the same pattern should be used; the module must invoke process_record_<module>_kb() as appropriate.

Custom Keycodes

By far the most common task is to change the behavior of an existing keycode or to create a new keycode. From a code standpoint the mechanism for each is very similar.

Defining a New Keycode

The first step to creating your own custom keycode(s) is to enumerate them. This means both naming them and assigning a unique number to that keycode. Rather than limit custom keycodes to a fixed range of numbers QMK provides the SAFE_RANGE macro. You can use SAFE_RANGE when enumerating your custom keycodes to guarantee that you get a unique number.

Here is an example of enumerating 2 keycodes. After adding this block to your keymap.c you will be able to use FOO and BAR inside your keymap.

c
enum my_keycodes {\n  FOO = SAFE_RANGE,\n  BAR\n};

Programming the Behavior of Any Keycode

When you want to override the behavior of an existing key, or define the behavior for a new key, you should use the process_record_kb() and process_record_user() functions. These are called by QMK during key processing before the actual key event is handled. If these functions return true QMK will process the keycodes as usual. That can be handy for extending the functionality of a key rather than replacing it. If these functions return false QMK will skip the normal key handling, and it will be up to you to send any key up or down events that are required.

These function are called every time a key is pressed or released.

Example process_record_user() Implementation

This example does two things. It defines the behavior for a custom keycode called FOO, and it supplements our Enter key by playing a tone whenever it is pressed.

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) {\n    case FOO:\n      if (record->event.pressed) {\n        // Do something when pressed\n      } else {\n        // Do something else when release\n      }\n      return false; // Skip all further processing of this key\n    case KC_ENTER:\n      // Play a tone when enter is pressed\n      if (record->event.pressed) {\n        PLAY_SONG(tone_qwerty);\n      }\n      return true; // Let QMK send the enter press/release events\n    default:\n      return true; // Process all other keycodes normally\n  }\n}

process_record_* Function Documentation

The keycode argument is whatever is defined in your keymap, eg MO(1), KC_L, etc. You should use a switch...case block to handle these events.

The record argument contains information about the actual press:

c
keyrecord_t record {\n  keyevent_t event {\n    keypos_t key {\n      uint8_t col\n      uint8_t row\n    }\n    bool     pressed\n    uint16_t time\n  }\n}

Keyboard Initialization Code

There are several steps in the keyboard initialization process. Depending on what you want to do, it will influence which function you should use.

These are the three main initialization functions, listed in the order that they're called.

WARNING

For most people, the keyboard_post_init_user function is what you want to implement. For instance, this is where you want to set up things for RGB Underglow.

Keyboard Pre Initialization code

This runs very early during startup, even before the USB has been started.

Shortly after this, the matrix is initialized.

For most users, this shouldn't be used, as it's primarily for hardware oriented initialization.

However, if you have hardware stuff that you need initialized, this is the best place for it (such as initializing LED pins).

Example keyboard_pre_init_user() Implementation

This example, at the keyboard level, sets up B0, B1, B2, B3, and B4 as LED pins.

c
void keyboard_pre_init_user(void) {\n  // Call the keyboard pre init code.\n\n  // Set our LED pins as output\n  gpio_set_pin_output(B0);\n  gpio_set_pin_output(B1);\n  gpio_set_pin_output(B2);\n  gpio_set_pin_output(B3);\n  gpio_set_pin_output(B4);\n}

keyboard_pre_init_* Function Documentation

Matrix Initialization Code

This is called when the matrix is initialized, and after some of the hardware has been set up, but before many of the features have been initialized.

This is useful for setting up stuff that you may need elsewhere, but isn't hardware related nor is dependent on where it's started.

matrix_init_* Function Documentation

Low-level Matrix Overrides Function Documentation

Keyboard Post Initialization code

This is ran as the very last task in the keyboard initialization process. This is useful if you want to make changes to certain features, as they should be initialized by this point.

Example keyboard_post_init_user() Implementation

This example, running after everything else has initialized, sets up the rgb underglow configuration.

c
void keyboard_post_init_user(void) {\n  // Call the post init code.\n  rgblight_enable_noeeprom(); // enables Rgb, without saving settings\n  rgblight_sethsv_noeeprom(180, 255, 255); // sets the color to teal/cyan without saving\n  rgblight_mode_noeeprom(RGBLIGHT_MODE_BREATHING + 3); // sets mode to Fast breathing without saving\n}

keyboard_post_init_* Function Documentation

Matrix Scanning Code

Whenever possible you should customize your keyboard by using process_record_*() and hooking into events that way, to ensure that your code does not have a negative performance impact on your keyboard. However, in rare cases it is necessary to hook into the matrix scanning. Be extremely careful with the performance of code in these functions, as it will be called at least 10 times per second.

Example matrix_scan_* Implementation

This example has been deliberately omitted. You should understand enough about QMK internals to write this without an example before hooking into such a performance sensitive area. If you need help please open an issue or chat with us on Discord.

matrix_scan_* Function Documentation

This function gets called at every matrix scan, which is basically as often as the MCU can handle. Be careful what you put here, as it will get run a lot.

You should use this function if you need custom matrix scanning code. It can also be used for custom status output (such as LEDs or a display) or other functionality that you want to trigger regularly even when the user isn't typing.

Keyboard housekeeping

This function gets called at the end of all QMK processing, before starting the next iteration. You can safely assume that QMK has dealt with the last matrix scan at the time that these functions are invoked -- layer states have been updated, USB reports have been sent, LEDs have been updated, and displays have been drawn.

Similar to matrix_scan_*, these are called as often as the MCU can handle. To keep your board responsive, it's suggested to do as little as possible during these function calls, potentially throttling their behaviour if you do indeed require implementing something special.

Example void housekeeping_task_user(void) implementation

This example will show you how to use void housekeeping_task_user(void) to turn off RGB Light. For RGB Matrix, the builtin RGB_MATRIX_TIMEOUT should be used.

First, add the following lines to your keymap's config.h:

c
#define RGBLIGHT_SLEEP  // enable rgblight_suspend() and rgblight_wakeup() in keymap.c\n#define RGBLIGHT_TIMEOUT 900000  // ms to wait until rgblight time out, 900K ms is 15min.

Next, add the following code to your keymap.c:

c
static uint32_t key_timer;           // timer for last keyboard activity, use 32bit value and function to make longer idle time possible\nstatic void refresh_rgb(void);       // refreshes the activity timer and RGB, invoke whenever any activity happens\nstatic void check_rgb_timeout(void); // checks if enough time has passed for RGB to timeout\nbool is_rgb_timeout = false;         // store if RGB has timed out or not in a boolean\n\nvoid refresh_rgb(void) {\n    key_timer = timer_read32(); // store time of last refresh\n    if (is_rgb_timeout)\n    {\n        is_rgb_timeout = false;\n        rgblight_wakeup();\n    }\n}\nvoid check_rgb_timeout(void) {\n    if (!is_rgb_timeout && timer_elapsed32(key_timer) > RGBLIGHT_TIMEOUT) // check if RGB has already timeout and if enough time has passed\n    {\n        rgblight_suspend();\n        is_rgb_timeout = true;\n    }\n}\n/* Then, call the above functions from QMK's built in post processing functions like so */\n/* Runs at the end of each scan loop, check if RGB timeout has occurred or not */\nvoid housekeeping_task_user(void) {\n#ifdef RGBLIGHT_TIMEOUT\n    check_rgb_timeout();\n#endif\n}\n/* Runs after each key press, check if activity occurred */\nvoid post_process_record_user(uint16_t keycode, keyrecord_t *record) {\n#ifdef RGBLIGHT_TIMEOUT\n    if (record->event.pressed)\n        refresh_rgb();\n#endif\n}\n/* Runs after each encoder tick, check if activity occurred */\nvoid post_encoder_update_user(uint8_t index, bool clockwise) {\n#ifdef RGBLIGHT_TIMEOUT\n    refresh_rgb();\n#endif\n}

Keyboard Idling/Wake Code

If the board supports it, it can be "idled", by stopping a number of functions. A good example of this is RGB lights or backlights. This can save on power consumption, or may be better behavior for your keyboard.

This is controlled by two functions: suspend_power_down_* and suspend_wakeup_init_*, which are called when the system board is idled and when it wakes up, respectively.

Example suspend_power_down_user() and suspend_wakeup_init_user() Implementation

c
void suspend_power_down_user(void) {\n    // code will run multiple times while keyboard is suspended\n}\n\nvoid suspend_wakeup_init_user(void) {\n    // code will run on keyboard wakeup\n}

Keyboard suspend/wake Function Documentation

Keyboard Shutdown/Reboot Code

This function gets called whenever the firmware is reset, whether it's a soft reset or reset to the bootloader. This is the spot to use for any sort of cleanup, as this happens right before the actual reset. And it can be useful for turning off different systems (such as RGB, onboard screens, etc).

Additionally, it differentiates between the soft reset (eg, rebooting back into the firmware) or jumping to the bootloader.

Certain tasks are performed during shutdown too. The keyboard is cleared, music and midi is stopped (if enabled), the shutdown chime is triggered (if audio is enabled), and haptic is stopped.

If jump_to_bootloader is set to true, this indicates that the board will be entering the bootloader for a new firmware flash, whereas false indicates that this is happening for a soft reset and will load the firmware agaim immediately (such as when using QK_REBOOT or QK_CLEAR_EEPROM).

As there is a keyboard and user level function, returning false for the user function will disable the keyboard level function, allowing for customization.

TIP

Bootmagic does not trigger shutdown_*() as it happens before most of the initialization process.

Example shutdown_kb() Implementation

c
bool shutdown_kb(bool jump_to_bootloader) {\n    if (!shutdown_user(jump_to_bootloader)) {\n        return false;\n    }\n\n    if (jump_to_bootloader) {\n        // red for bootloader\n        rgb_matrix_set_color_all(RGB_OFF);\n    } else {\n        // off for soft reset\n        rgb_matrix_set_color_all(RGB_GREEN);\n    }\n    // force flushing -- otherwise will never happen\n    rgb_matrix_update_pwm_buffers();\n    return true;\n}

Example shutdown_user() Implementation

c
bool shutdown_user(bool jump_to_bootloader) {\n    if (jump_to_bootloader) {\n        // red for bootloader\n        rgb_matrix_set_color_all(RGB_RED);\n    } else {\n        // off for soft reset\n        rgb_matrix_set_color_all(RGB_OFF);\n    }\n    // force flushing -- otherwise will never happen\n    rgb_matrix_update_pwm_buffers();\n    // false to not process kb level\n    return false;\n}

Keyboard shutdown/reboot Function Documentation

Deferred Execution

QMK has the ability to execute a callback after a specified period of time, rather than having to manually manage timers. To enable this functionality, set DEFERRED_EXEC_ENABLE = yes in rules.mk.

Deferred executor callbacks

All deferred executor callbacks have a common function signature and look like:

c
uint32_t my_callback(uint32_t trigger_time, void *cb_arg) {\n    /* do something */\n    bool repeat = my_deferred_functionality();\n    return repeat ? 500 : 0;\n}

The first argument trigger_time is the intended time of execution. If other delays prevent executing at the exact trigger time, this allows for "catch-up" or even skipping intervals, depending on the required behaviour.

The second argument cb_arg is the same argument passed into defer_exec() below, and can be used to access state information from the original call context.

The return value is the number of milliseconds to use if the function should be repeated -- if the callback returns 0 then it's automatically unregistered. In the example above, a hypothetical my_deferred_functionality() is invoked to determine if the callback needs to be repeated -- if it does, it reschedules for a 500 millisecond delay, otherwise it informs the deferred execution background task that it's done, by returning 0.

TIP

Note that the returned delay will be applied to the intended trigger time, not the time of callback invocation. This allows for generally consistent timing even in the face of occasional late execution.

Deferred executor registration

Once a callback has been defined, it can be scheduled using the following API:

c
deferred_token my_token = defer_exec(1500, my_callback, NULL);

The first argument is the number of milliseconds to wait until executing my_callback -- in the case above, 1500 milliseconds, or 1.5 seconds.

The third parameter is the cb_arg that gets passed to the callback at the point of execution. This value needs to be valid at the time the callback is invoked -- a local function value will be destroyed before the callback is executed and should not be used. If this is not required, NULL should be used.

The return value is a deferred_token that can consequently be used to cancel the deferred executor callback before it's invoked. If a failure occurs, the returned value will be INVALID_DEFERRED_TOKEN. Usually this will be as a result of supplying 0 to the delay, or a NULL for the callback. The other failure case is if there are too many deferred executions "in flight" -- this can be increased by changing the limit, described below.

Extending a deferred execution

The deferred_token returned by defer_exec() can be used to extend a the duration a pending execution waits before it gets invoked:

c
// This will re-delay my_token's future execution such that it is invoked 800ms after the current time\nextend_deferred_exec(my_token, 800);

Cancelling a deferred execution

The deferred_token returned by defer_exec() can be used to cancel a pending execution before it gets invoked:

c
// This will cancel my_token's future execution\ncancel_deferred_exec(my_token);

Once a token has been canceled, it should be considered invalid. Reusing the same token is not supported.

Deferred callback limits

There are a maximum number of deferred callbacks that can be scheduled, controlled by the value of the define MAX_DEFERRED_EXECUTORS.

If registrations fail, then you can increase this value in your keyboard or keymap config.h file, for example to 16 instead of the default 8:

c
#define MAX_DEFERRED_EXECUTORS 16

Advanced topics

This page used to encompass a large set of features. We have moved many sections that used to be part of this page to their own pages. Everything below this point is simply a redirect so that people following old links on the web find what they're looking for.

Layer Change Code

Layer change code

Persistent Configuration (EEPROM)

Persistent Configuration (EEPROM)

', 126); diff --git a/assets/custom_quantum_functions.md.BlAK1gkM.lean.js b/assets/custom_quantum_functions.md.Btyj-xrD.lean.js similarity index 84% rename from assets/custom_quantum_functions.md.BlAK1gkM.lean.js rename to assets/custom_quantum_functions.md.Btyj-xrD.lean.js index 4b193e852f7..30a4887efc7 100644 --- a/assets/custom_quantum_functions.md.BlAK1gkM.lean.js +++ b/assets/custom_quantum_functions.md.Btyj-xrD.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse(`{"title":"How to Customize Your Keyboard's Behavior","description":"","frontmatter":{},"headers":[],"relativePath":"custom_quantum_functions.md","filePath":"custom_quantum_functions.md","lastUpdated":null}`); const _sfc_main = { name: "custom_quantum_functions.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 126); diff --git a/assets/data_driven_config.md.0b9lBAXA.js b/assets/data_driven_config.md.DYDbIdON.js similarity index 98% rename from assets/data_driven_config.md.0b9lBAXA.js rename to assets/data_driven_config.md.DYDbIdON.js index 360c753ed66..b966979627f 100644 --- a/assets/data_driven_config.md.0b9lBAXA.js +++ b/assets/data_driven_config.md.DYDbIdON.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Data Driven Configuration","description":"","frontmatter":{},"headers":[],"relativePath":"data_driven_config.md","filePath":"data_driven_config.md","lastUpdated":null}'); const _sfc_main = { name: "data_driven_config.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Data Driven Configuration

This page describes how QMK's data driven JSON configuration system works. It is aimed at developers who want to work on QMK itself.

History

Historically QMK has been configured through a combination of two mechanisms- rules.mk and config.h. While this worked well when QMK was only a handful of keyboards we've grown to encompass nearly 4000 supported keyboards. That extrapolates out to 6000 configuration files under keyboards/ alone! The freeform nature of these files and the unique patterns people have used to avoid duplication have made ongoing maintenance a challenge, and a large number of our keyboards follow patterns that are outdated and sometimes harder to understand.

We have also been working on bringing the power of QMK to people who aren't comfortable with a CLI, and other projects such as VIA are working to make using QMK as easy as installing a program. These tools need information about how a keyboard is laid out or what pins and features are available so that users can take full advantage of QMK. We introduced info.json as a first step towards this. The QMK API is an effort to combine these 3 sources of information- config.h, rules.mk, and info.json- into a single source of truth that end-user tools can use.

Now we have support for generating rules.mk and config.h values from info.json, allowing us to have a single source of truth. This will allow us to use automated tooling to maintain keyboards saving a lot of time and maintenance work.

Overview

On the C side of things nothing changes. When you need to create a new rule or define you follow the same process:

  1. Add it to docs/config_options.md
  2. Set a default in the appropriate core file
  3. Add your ifdef statements as needed

You will then need to add support for your new configuration to info.json. The basic process is:

  1. Add it to the schema in data/schemas/keyboards.jsonschema
  2. Add a mapping in data/maps
  3. (optional and discouraged) Add code to extract/generate it to:

Adding an option to info.json

This section describes adding support for a config.h/rules.mk value to info.json.

Add it to the schema

QMK maintains jsonschema files in data/schemas. The values that go into keyboard-specific info.json files are kept in keyboard.jsonschema. Any value you want to make available to end users to edit must go in here.

In some cases you can simply add a new top-level key. Some examples to follow are keyboard_name, maintainer, processor, and url. This is appropriate when your option is self-contained and not directly related to other options.

In other cases you should group like options together in an object. This is particularly true when adding support for a feature. Some examples to follow for this are indicators, matrix_pins, and rgblight. If you are not sure how to integrate your new option(s) open an issue or join #cli on Discord and start a conversation there.

Add a mapping

In most cases you can add a simple mapping. These are maintained as JSON files in data/mappings/info_config.hjson and data/mappings/info_rules.hjson, and control mapping for config.h and rules.mk, respectively. Each mapping is keyed by the config.h or rules.mk variable, and the value is a hash with the following keys:

Info Key

We use JSON dot notation to address variables within info.json. For example, to access info_json["rgblight"]["split_count"] I would specify rgblight.split_count. This allows you to address deeply nested keys with a simple string.

Under the hood we use Dotty Dict, you can refer to that documentation for how these strings are converted to object access.

Value Types

By default we treat all values as unquoted "raw" data. If your value is more complex you can use one of these types to intelligently parse the data:

Add code to extract it

Most use cases can be solved by the mapping files described above. If yours can't you can instead write code to extract your config values.

Whenever QMK generates a complete info.json it extracts information from config.h and rules.mk. You will need to add code for your new config value to lib/python/qmk/info.py. Typically this means adding a new _extract_<feature>() function and then calling your function in either _extract_config_h() or _extract_rules_mk().

If you are not sure how to edit this file or are not comfortable with Python open an issue or join #cli on Discord and someone can help you with this part.

Add code to generate it

The final piece of the puzzle is providing your new option to the build system. This is done by generating two files:

These two files are generated by the code here:

For config.h values you'll need to write a function for your rule(s) and call that function in generate_config_h().

If you have a new top-level info.json key for rules.mk you can simply add your keys to info_to_rules at the top of lib/python/qmk/cli/generate/rules_mk.py. Otherwise you'll need to create a new if block for your feature in generate_rules_mk().

', 38); diff --git a/assets/data_driven_config.md.0b9lBAXA.lean.js b/assets/data_driven_config.md.DYDbIdON.lean.js similarity index 83% rename from assets/data_driven_config.md.0b9lBAXA.lean.js rename to assets/data_driven_config.md.DYDbIdON.lean.js index adf3e524ace..3579861050e 100644 --- a/assets/data_driven_config.md.0b9lBAXA.lean.js +++ b/assets/data_driven_config.md.DYDbIdON.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Data Driven Configuration","description":"","frontmatter":{},"headers":[],"relativePath":"data_driven_config.md","filePath":"data_driven_config.md","lastUpdated":null}'); const _sfc_main = { name: "data_driven_config.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 38); diff --git a/assets/documentation_best_practices.md.DyKD6sih.js b/assets/documentation_best_practices.md.q-TuhoQ8.js similarity index 98% rename from assets/documentation_best_practices.md.DyKD6sih.js rename to assets/documentation_best_practices.md.q-TuhoQ8.js index 4d26a8e93ff..4dec6f4411e 100644 --- a/assets/documentation_best_practices.md.DyKD6sih.js +++ b/assets/documentation_best_practices.md.q-TuhoQ8.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Documentation Best Practices","description":"","frontmatter":{},"headers":[],"relativePath":"documentation_best_practices.md","filePath":"documentation_best_practices.md","lastUpdated":null}'); const _sfc_main = { name: "documentation_best_practices.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Documentation Best Practices

This page exists to document best practices when writing documentation for QMK. Following these guidelines will help to keep a consistent tone and style, which will in turn help other people more easily understand QMK.

Page Opening

Your documentation page should generally start with an H1 heading, followed by a 1 paragraph description of what the user will find on this page. Keep in mind that this heading and paragraph will sit next to the Table of Contents, so keep the heading short and avoid long strings with no whitespace.

Example:

# My Page Title\n\nThis page covers my super cool feature. You can use this feature to make coffee, squeeze fresh oj, and have an egg mcmuffin and hashbrowns delivered from your local macca's by drone.

Headings

Your page should generally have multiple "H1" headings. Only H1 and H2 headings will included in the Table of Contents, so plan them out appropriately. Excess width should be avoided in H1 and H2 headings to prevent the Table of Contents from getting too wide.

Styled Hint Blocks

You can have styled hint blocks drawn around text to draw attention to it.

Important

::: warning\nThis is important\n:::

Renders as:

WARNING

This is important

General Tips

::: tip\nThis is a helpful tip.\n:::

Renders as:

TIP

This is a helpful tip.

Documenting Features

If you create a new feature for QMK, create a documentation page for it. It doesn't have to be very long, a few sentences describing your feature and a table listing any relevant keycodes is enough. Here is a basic template:

markdown
# My Cool Feature\n\nThis page describes my cool feature. You can use my cool feature to make coffee and order cream and sugar to be delivered via drone.\n\n## My Cool Feature Keycodes\n\n|Long Name|Short Name|Description|\n|---------|----------|-----------|\n|KC_COFFEE||Make Coffee|\n|KC_CREAM||Order Cream|\n|KC_SUGAR||Order Sugar|

Place your documentation into docs/features/<my_cool_feature>.md, and add that file to the appropriate place in docs/_sidebar.json. If you have added any keycodes be sure to add them to docs/keycodes.md with a link back to your feature page.

', 22); diff --git a/assets/documentation_best_practices.md.DyKD6sih.lean.js b/assets/documentation_best_practices.md.q-TuhoQ8.lean.js similarity index 84% rename from assets/documentation_best_practices.md.DyKD6sih.lean.js rename to assets/documentation_best_practices.md.q-TuhoQ8.lean.js index 62f4d4014a9..f268b3d31c1 100644 --- a/assets/documentation_best_practices.md.DyKD6sih.lean.js +++ b/assets/documentation_best_practices.md.q-TuhoQ8.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Documentation Best Practices","description":"","frontmatter":{},"headers":[],"relativePath":"documentation_best_practices.md","filePath":"documentation_best_practices.md","lastUpdated":null}'); const _sfc_main = { name: "documentation_best_practices.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 22); diff --git a/assets/documentation_templates.md.Bd-mV5Hz.js b/assets/documentation_templates.md.K1ZkzXdN.js similarity index 97% rename from assets/documentation_templates.md.Bd-mV5Hz.js rename to assets/documentation_templates.md.K1ZkzXdN.js index 0eaca6c55e4..df2228cfc03 100644 --- a/assets/documentation_templates.md.Bd-mV5Hz.js +++ b/assets/documentation_templates.md.K1ZkzXdN.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Documentation Templates","description":"","frontmatter":{},"headers":[],"relativePath":"documentation_templates.md","filePath":"documentation_templates.md","lastUpdated":null}'); const _sfc_main = { name: "documentation_templates.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Documentation Templates

This page documents the templates you should use when submitting new Keymaps and Keyboards to QMK.

Keymap readme.md Template

Most keymaps have an image depicting the layout. You can use Keyboard Layout Editor to create an image. Upload it to Imgur or another hosting service, please do not include images in your Pull Request.

Below the image you should write a short description to help people understand your keymap.

![Clueboard Layout Image](https://i.imgur.com/7Capi8W.png)\n\n# Default Clueboard Layout\n\nThis is the default layout that comes flashed on every Clueboard. For the most\npart it's a straightforward and easy to follow layout. The only unusual key is\nthe key in the upper left, which sends Escape normally, but Grave when any of\nthe Ctrl, Alt, or GUI modifiers are held down.

Keyboard readme.md Template

# Planck\n\n![Planck](https://i.imgur.com/q2M3uEU.jpg)\n\nA compact 40% (12x4) ortholinear keyboard kit made and sold by OLKB and Massdrop. [More info on qmk.fm](https://qmk.fm/planck/)\n\n* Keyboard Maintainer: [Jack Humbert](https://github.com/jackhumbert)\n* Hardware Supported: Planck PCB rev1, rev2, rev3, rev4, Teensy 2.0\n* Hardware Availability: [OLKB.com](https://olkb.com), [Massdrop](https://www.massdrop.com/buy/planck-mechanical-keyboard?mode=guest_open)\n\nMake example for this keyboard (after setting up your build environment):\n\n    make planck/rev4:default\n\nFlashing example for this keyboard:\n\n    make planck/rev4:default:flash\n\nSee the [build environment setup](getting_started_build_tools) and the [make instructions](getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](newbs).\n\n## Bootloader\n\nEnter the bootloader in 3 ways:\n\n* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard\n* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead\n* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
', 8); diff --git a/assets/documentation_templates.md.Bd-mV5Hz.lean.js b/assets/documentation_templates.md.K1ZkzXdN.lean.js similarity index 84% rename from assets/documentation_templates.md.Bd-mV5Hz.lean.js rename to assets/documentation_templates.md.K1ZkzXdN.lean.js index 74b04acc323..4ee41c5a528 100644 --- a/assets/documentation_templates.md.Bd-mV5Hz.lean.js +++ b/assets/documentation_templates.md.K1ZkzXdN.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Documentation Templates","description":"","frontmatter":{},"headers":[],"relativePath":"documentation_templates.md","filePath":"documentation_templates.md","lastUpdated":null}'); const _sfc_main = { name: "documentation_templates.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 8); diff --git a/assets/driver_installation_zadig.md.3wWhrxYw.js b/assets/driver_installation_zadig.md.B4d-g925.js similarity index 98% rename from assets/driver_installation_zadig.md.3wWhrxYw.js rename to assets/driver_installation_zadig.md.B4d-g925.js index f6964bc1c2d..63be6f98ae1 100644 --- a/assets/driver_installation_zadig.md.3wWhrxYw.js +++ b/assets/driver_installation_zadig.md.B4d-g925.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/b8VgXzx.png"; const _imports_1 = "/Hx0E5kC.png"; const _imports_2 = "/o7WLvBl.png"; diff --git a/assets/driver_installation_zadig.md.3wWhrxYw.lean.js b/assets/driver_installation_zadig.md.B4d-g925.lean.js similarity index 87% rename from assets/driver_installation_zadig.md.3wWhrxYw.lean.js rename to assets/driver_installation_zadig.md.B4d-g925.lean.js index b4440d6cbe0..884fe98fb4e 100644 --- a/assets/driver_installation_zadig.md.3wWhrxYw.lean.js +++ b/assets/driver_installation_zadig.md.B4d-g925.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/b8VgXzx.png"; const _imports_1 = "/Hx0E5kC.png"; const _imports_2 = "/o7WLvBl.png"; diff --git a/assets/drivers_adc.md.CvhRMxs7.js b/assets/drivers_adc.md.ghm13up5.js similarity index 99% rename from assets/drivers_adc.md.CvhRMxs7.js rename to assets/drivers_adc.md.ghm13up5.js index de3d211960d..57b445d5c3f 100644 --- a/assets/drivers_adc.md.CvhRMxs7.js +++ b/assets/drivers_adc.md.ghm13up5.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ADC Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/adc.md","filePath":"drivers/adc.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/adc.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

ADC Driver

QMK can leverage the Analog-to-Digital Converter (ADC) on supported MCUs to measure voltages on certain pins. This can be useful for implementing things such as battery level indicators for Bluetooth keyboards, or volume controls using a potentiometer, as opposed to a rotary encoder.

This driver currently supports both AVR and a limited selection of ARM devices. The values returned are 10-bit integers (0-1023) mapped between 0V and VCC (usually 5V or 3.3V for AVR, 3.3V only for ARM), however on ARM there is more flexibility in control of operation through #defines if you need more precision.

Usage

To use this driver, add the following to your rules.mk:

make
ANALOG_DRIVER_REQUIRED = yes

Then place this include at the top of your code:

c
#include "analog.h"

Channels

AVR

ChannelAT90USB64/128ATmega16/32U4ATmega32AATmega328/P
0F0F0A0C0
1F1F1A1C1
2F2A2C2
3F3A3C3
4F4F4A4C4
5F5F5A5C5
6F6F6A6*
7F7F7A7*
8D4
9D6
10D7
11B4
12B5
13B6

* The ATmega328/P possesses two extra ADC channels; however, they are not present on the DIP pinout, and are not shared with GPIO pins. You can use adc_read() directly to gain access to these.

ARM

STM32

Note that some of these pins are doubled-up on ADCs with the same channel. This is because the pins can be used for either ADC.

Also note that the F0 and F3 use different numbering schemes. The F0 has a single ADC and the channels are 0-indexed, whereas the F3 has 4 ADCs and the channels are 1-indexed. This is because the F0 uses the ADCv1 implementation of the ADC, whereas the F3 uses the ADCv3 implementation.

ADCChannelSTM32F0xxSTM32F1xxSTM32F3xxSTM32F4xx
10A0A0A0
11A1A1A0A1
12A2A2A1A2
13A3A3A2A3
14A4A4A3A4
15A5A5F4A5
16A6A6C0A6
17A7A7C1A7
18B0B0C2B0
19B1B1C3B1
110C0C0F2C0
111C1C1C1
112C2C2C2
113C3C3C3
114C4C4C4
115C5C5C5
116
20A0¹A0²
21A1¹A4A1²
22A2¹A5A2²
23A3¹A6A3²
24A4¹A7A4²
25A5¹C4A5²
26A6¹C0A6²
27A7¹C1A7²
28B0¹C2B0²
29B1¹C3B1²
210C0¹F2C0²
211C1¹C5C1²
212C2¹B2C2²
213C3¹C3²
214C4¹C4²
215C5¹C5²
216
30A0¹A0²
31A1¹B1A1²
32A2¹E9A2²
33A3¹E13A3²
34F6¹F6²
35F7¹B13F7²
36F8¹E8F8²
37F9¹D10F9²
38F10¹D11F10²
39D12F3²
310C0¹D13C0²
311C1¹D14C1²
312C2¹B0C2²
313C3¹E7C3²
314E10F4²
315E11F5²
316E12
41E14
42E15
43B12
44B14
45B15
46E8
47D10
48D11
49D12
410D13
411D14
412D8
413D9
414
415
416

¹ As of ChibiOS 20.3.4, the ADC driver for STM32F1xx devices supports only ADC1, therefore any configurations involving ADC2 or ADC3 cannot actually be used. In particular, pins F6F10, which are present at least on some STM32F103x[C-G] devices, cannot be used as ADC inputs because of this driver limitation.

² Not all STM32F4xx devices have ADC2 and/or ADC3, therefore some configurations shown in this table may be unavailable; in particular, pins F4F10 cannot be used as ADC inputs on devices which do not have ADC3. Check the device datasheet to confirm which pin functions are supported.

RP2040

RP2040 has only a single ADC (ADCD1 in ChibiOS); in the QMK API the index for that ADC is 0.

ChannelPin
0GP26
1GP27
2GP28
3GP29
4Temperature sensor*

* The temperature sensor is disabled by default and needs to be enabled by the RP2040-specific function: adcRPEnableTS(&ADCD1). The ADC must be initialized before calling that function; an easy way to ensure that is to perform a dummy conversion.

Functions

AVR

FunctionDescription
analogReference(mode)Sets the analog voltage reference source. Must be one of ADC_REF_EXTERNAL, ADC_REF_POWER or ADC_REF_INTERNAL.
analogReadPin(pin)Reads the value from the specified pin, eg. F6 for ADC6 on the ATmega32U4.
pinToMux(pin)Translates a given pin to a mux value. If an unsupported pin is given, returns the mux value for "0V (GND)".
adc_read(mux)Reads the value from the ADC according to the specified mux. See your MCU's datasheet for more information.

ARM

FunctionDescription
analogReadPin(pin)Reads the value from the specified pin, eg. A0 for channel 0 on the STM32F0 and ADC1 channel 1 on the STM32F3. Note that if a pin can be used for multiple ADCs, it will pick the lower numbered ADC for this function. eg. C0 will be channel 6 of ADC 1 when it could be used for ADC 2 as well.
analogReadPinAdc(pin, adc)Reads the value from the specified pin and ADC, eg. C0, 1 will read from channel 6, ADC 2 instead of ADC 1. Note that the ADCs are 0-indexed for this function.
pinToMux(pin)Translates a given pin to a channel and ADC combination. If an unsupported pin is given, returns the mux value for "0V (GND)".
adc_read(mux)Reads the value from the ADC according to the specified pin and ADC combination. See your MCU's datasheet for more information.

Configuration

ARM

The ARM implementation of the ADC has a few additional options that you can override in your own keyboards and keymaps to change how it operates. Please consult the corresponding hal_adc_lld.h in ChibiOS for your specific microcontroller for further documentation on your available options.

#defineTypeDefaultDescription
ADC_CIRCULAR_BUFFERboolfalseIf true, then the implementation will use a circular buffer.
ADC_NUM_CHANNELSint1Sets the number of channels that will be scanned as part of an ADC operation. The current implementation only supports 1.
ADC_BUFFER_DEPTHint2Sets the depth of each result. Since we are only getting a 10-bit result by default, we set this to 2 bytes so we can contain our one value. This could be set to 1 if you opt for an 8-bit or lower result.
ADC_SAMPLING_RATEintADC_SMPR_SMP_1P5Sets the sampling rate of the ADC. By default, it is set to the fastest setting.
ADC_RESOLUTIONintADC_CFGR1_RES_10BIT or ADC_CFGR_RES_10BITSThe resolution of your result. We choose 10 bit by default, but you can opt for 12, 10, 8, or 6 bit. Different MCUs use slightly different names for the resolution constants.
', 32); diff --git a/assets/drivers_adc.md.CvhRMxs7.lean.js b/assets/drivers_adc.md.ghm13up5.lean.js similarity index 82% rename from assets/drivers_adc.md.CvhRMxs7.lean.js rename to assets/drivers_adc.md.ghm13up5.lean.js index 6dfcbf7c591..ec3efacce65 100644 --- a/assets/drivers_adc.md.CvhRMxs7.lean.js +++ b/assets/drivers_adc.md.ghm13up5.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ADC Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/adc.md","filePath":"drivers/adc.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/adc.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 32); diff --git a/assets/drivers_apa102.md.DBz660in.js b/assets/drivers_apa102.md.DB4qwSpp.js similarity index 97% rename from assets/drivers_apa102.md.DBz660in.js rename to assets/drivers_apa102.md.DB4qwSpp.js index 898c0fb7bd3..adec26fa139 100644 --- a/assets/drivers_apa102.md.DBz660in.js +++ b/assets/drivers_apa102.md.DB4qwSpp.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"APA102 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/apa102.md","filePath":"drivers/apa102.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/apa102.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

APA102 Driver

This driver provides support for APA102 addressable RGB LEDs. They are similar to the WS2812 LEDs, but have increased data and refresh rates.

Usage

In most cases, the APA102 driver code is automatically included if you are using either the RGBLight or RGB Matrix feature with the apa102 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add the following to your rules.mk:

make
APA102_DRIVER_REQUIRED = yes

You can then call the APA102 API by including apa102.h in your code.

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
APA102_DI_PINNot definedThe GPIO pin connected to the DI pin of the first LED in the chain
APA102_CI_PINNot definedThe GPIO pin connected to the CI pin of the first LED in the chain
APA102_DEFAULT_BRIGHTNESS31The default global brightness level of the LEDs, from 0 to 31

API

void apa102_init(void)

Initialize the LED driver. This function should be called first.


void apa102_set_color(uint16_t index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED. This function does not immediately update the LEDs; call apa102_flush() after you are finished.

Arguments


void apa102_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs.

Arguments


void apa102_flush(void)

Flush the PWM values to the LED chain.


void apa102_set_brightness(uint8_t brightness)

Set the global brightness.

Arguments

', 31); diff --git a/assets/drivers_apa102.md.DBz660in.lean.js b/assets/drivers_apa102.md.DB4qwSpp.lean.js similarity index 82% rename from assets/drivers_apa102.md.DBz660in.lean.js rename to assets/drivers_apa102.md.DB4qwSpp.lean.js index 1bbdbfd13b1..8e96a32b4e5 100644 --- a/assets/drivers_apa102.md.DBz660in.lean.js +++ b/assets/drivers_apa102.md.DB4qwSpp.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"APA102 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/apa102.md","filePath":"drivers/apa102.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/apa102.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 31); diff --git a/assets/drivers_audio.md.POIlGI3S.js b/assets/drivers_audio.md.CdpP_nV3.js similarity index 97% rename from assets/drivers_audio.md.POIlGI3S.js rename to assets/drivers_audio.md.CdpP_nV3.js index 9ab4858ba91..b16cc3ba4d6 100644 --- a/assets/drivers_audio.md.POIlGI3S.js +++ b/assets/drivers_audio.md.CdpP_nV3.js @@ -1,7 +1,7 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Audio Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/audio.md","filePath":"drivers/audio.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/audio.md" }; -const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Audio Driver

The Audio feature breaks the hardware specifics out into separate, exchangeable driver units, with a common interface to the audio-"core" - which itself handles playing songs and notes while tracking their progress in an internal state, initializing/starting/stopping the driver as needed.

Not all MCUs support every available driver, either the platform-support is not there (yet?) or the MCU simply does not have the required hardware peripheral.

AVR

Boards built around an Atmega32U4 can use two sets of PWM capable pins, each driving a separate speaker. The possible configurations are:

Timer3Timer1
one speakerC4,C5 or C6
one speakerB4, B5 or B7
two speakersC4,C5 or C6B4, B5 or B7

Currently there is only one/default driver for AVR based boards, which is automatically configured to:

make
AUDIO_DRIVER = pwm_hardware

ARM

For Arm based boards, QMK depends on ChibiOS - hence any MCU supported by the later is likely usable, as long as certain hardware peripherals are available.

Supported wiring configurations, with their ChibiOS/MCU peripheral requirement are listed below; piezo speakers are marked with 1️⃣ for the first/primary and 2️⃣ for the secondary.

driverGPTD6
Tim6
GPTD7
Tim7
GPTD8
Tim8
PWMD11
Tim1_Ch1
dac_basicA4+DACD1 = 1️⃣A5+DACD2 = 1️⃣state
A4+DACD1 = 1️⃣ + GndA5+DACD2 = 2️⃣ + Gndstate
A4+DACD1 = 2️⃣ + GndA5+DACD2 = 1️⃣ + Gndstate
A4+DACD1 = 1️⃣ + Gndstate
A5+DACD2 = 1️⃣ + Gndstate
dac_additiveA4+DACD1 = 1️⃣ + Gnd
A5+DACD2 = 1️⃣ + Gnd
A4+DACD1 + A5+DACD2 = 1️⃣ 2
pwm_softwarestate-updateany = 1️⃣
pwm hardwarestate-updateA8 = 1️⃣ 3

1: the routing and alternate functions for PWM differ sometimes between STM32 MCUs, if in doubt consult the data-sheet
2: one piezo connected to A4 and A5, with AUDIO_PIN_ALT_AS_NEGATIVE set
3: TIM1_CH1 = A8 on STM32F103C8, other combinations are possible, see Data-sheet. configured with: AUDIO_PWM_DRIVER and AUDIO_PWM_CHANNEL

DAC basic

The default driver for ARM boards, in absence of an overriding configuration. This driver needs one Timer per enabled/used DAC channel, to trigger conversion; and a third timer to trigger state updates with the audio-core.

Additionally, in the board config, you'll want to make changes to enable the DACs, GPT for Timers 6, 7 and 8:

c
#pragma once\n\n#define HAL_USE_DAC TRUE\n#define HAL_USE_GPT TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_DAC_USE_DAC1_CH1\n#define STM32_DAC_USE_DAC1_CH1 TRUE\n#undef STM32_DAC_USE_DAC1_CH2\n#define STM32_DAC_USE_DAC1_CH2 TRUE\n#undef STM32_GPT_USE_TIM6\n#define STM32_GPT_USE_TIM6 TRUE\n#undef STM32_GPT_USE_TIM7\n#define STM32_GPT_USE_TIM7 TRUE\n#undef STM32_GPT_USE_TIM8\n#define STM32_GPT_USE_TIM8 TRUE

TIP

Note: DAC1 (A4) uses TIM6, DAC2 (A5) uses TIM7, and the audio state timer uses TIM8 (configurable).

You can also change the timer used for the overall audio state by defining the driver. For instance:

c
#define AUDIO_STATE_TIMER GPTD9

DAC additive

only needs one timer (GPTD6, Tim6) to trigger the DAC unit to do a conversion; the audio state updates are in turn triggered during the DAC callback.

Additionally, in the board config, you'll want to make changes to enable the DACs, GPT for Timer 6:

c
#pragma once\n\n#define HAL_USE_DAC TRUE\n#define HAL_USE_GPT TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_DAC_USE_DAC1_CH1\n#define STM32_DAC_USE_DAC1_CH1 TRUE\n#undef STM32_DAC_USE_DAC1_CH2\n#define STM32_DAC_USE_DAC1_CH2 TRUE\n#undef STM32_GPT_USE_TIM6\n#define STM32_GPT_USE_TIM6 TRUE

DAC Config

DefineDefaultsDescription
AUDIO_DAC_SAMPLE_MAX4095UHighest value allowed. Lower value means lower volume. And 4095U is the upper limit, since this is limited to a 12 bit value. Only effects non-pregenerated samples.
AUDIO_DAC_OFF_VALUEAUDIO_DAC_SAMPLE_MAX / 2The value of the DAC when not playing anything. Some setups may require a high (AUDIO_DAC_SAMPLE_MAX) or low (0) value here.
AUDIO_MAX_SIMULTANEOUS_TONESsee next tableThe number of tones that can be played simultaneously. A value that is too high may freeze the controller or glitch out when too many tones are being played.
AUDIO_DAC_SAMPLE_RATEsee next tableEffective bit rate of the DAC (in hertz), higher limits simultaneous tones, and lower sacrifices quality.
AUDIO_DAC_BUFFER_SIZEsee next tableNumber of samples generated every refill. Too few may cause excessive CPU load; too many may cause freezes, RAM or flash exhaustion or lags during matrix scanning.

There are a number of predefined quality settings that you can use, with "sane minimum" being the default. You can use custom values by simply defining the sample rate, number of simultaneous tones and buffer size, instead of using one of the listed presets.

DefineSample RateSimultaneous tonesBuffer size
AUDIO_DAC_QUALITY_VERY_LOW11025U864U
AUDIO_DAC_QUALITY_LOW22050U4128U
AUDIO_DAC_QUALITY_HIGH44100U2256U
AUDIO_DAC_QUALITY_VERY_HIGH88200U1256U
AUDIO_DAC_QUALITY_SANE_MINIMUM16384U864U

Notes on buffer size

By default, the buffer size attempts to keep to these constraints:

You can lower the buffer size if you need a bit more space in your firmware, or raise it if your keyboard freezes up.

c
        /* zero crossing (or approach, whereas zero == DAC_OFF_VALUE, which can be configured to anything from 0 to DAC_SAMPLE_MAX)\n         * ============================*=*========================== AUDIO_DAC_SAMPLE_MAX\n         *                          *       *\n         *                        *           *\n         * ---------------------------------------------------------\n         *                     *                 *                  } AUDIO_DAC_SAMPLE_MAX/100\n         * --------------------------------------------------------- AUDIO_DAC_OFF_VALUE\n         *                  *                       *               } AUDIO_DAC_SAMPLE_MAX/100\n         * ---------------------------------------------------------\n         *               *\n         * *           *\n         *   *       *\n         * =====*=*================================================= 0x0\n         */

PWM hardware

This driver uses the ChibiOS-PWM system to produce a square-wave on specific output pins that are connected to the PWM hardware. The hardware directly toggles the pin via its alternate function. See your MCU's data-sheet for which pin can be driven by what timer - looking for TIMx_CHy and the corresponding alternate function.

A configuration example for the STM32F103C8 would be:

c
#pragma once\n\n#define HAL_USE_PWM TRUE\n#define HAL_USE_PAL TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_PWM_USE_TIM1\n#define STM32_PWM_USE_TIM1 TRUE

If we now target pin A8, looking through the data-sheet of the STM32F103C8, for the timers and alternate functions

with all this information, the configuration would contain these lines:

c
//config.h:\n#define AUDIO_PIN A8\n#define AUDIO_PWM_DRIVER PWMD1\n#define AUDIO_PWM_CHANNEL 1

ChibiOS uses GPIOv1 for the F103, which only knows of one alternate function. On 'larger' STM32s, GPIOv2 or GPIOv3 are used; with them it is also necessary to configure AUDIO_PWM_PAL_MODE to the correct alternate function for the selected pin, timer and timer-channel.

You can also use the Complementary output (TIMx_CHyN) for PWM on supported controllers. To enable this functionality, you will need to make the following changes:

c
// config.h:\n#define AUDIO_PWM_COMPLEMENTARY_OUTPUT

PWM software

This driver uses the PWM callbacks from PWMD1 with TIM1_CH1 to toggle the selected AUDIO_PIN in software. During the same callback, with AUDIO_PIN_ALT_AS_NEGATIVE set, the AUDIO_PIN_ALT is toggled inversely to AUDIO_PIN. This is useful for setups that drive a piezo from two pins (instead of one and Gnd).

You can also change the timer used for software PWM by defining the driver. For instance:

c
#define AUDIO_STATE_TIMER GPTD8

Testing Notes

While not an exhaustive list, the following table provides the scenarios that have been partially validated:

DAC basicDAC additivePWM hardwarePWM software
Atmega32U4✔️
RP2040✔️?
STM32F103C8 (bluepill)✔️✔️
STM32F303CCT6 (proton-c)✔️✔️?✔️
STM32F405VG✔️✔️✔️✔️
L0xx❌ (no Tim8)???

✔️ : works and was tested
⭕ : does not apply
❌ : not supported by MCU

Other supported ChibiOS boards and/or pins may function, it will be highly chip and configuration dependent.

', 53); +const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Audio Driver

The Audio feature breaks the hardware specifics out into separate, exchangeable driver units, with a common interface to the audio-"core" - which itself handles playing songs and notes while tracking their progress in an internal state, initializing/starting/stopping the driver as needed.

Not all MCUs support every available driver, either the platform-support is not there (yet?) or the MCU simply does not have the required hardware peripheral.

AVR

Boards built around an Atmega32U4 can use two sets of PWM capable pins, each driving a separate speaker. The possible configurations are:

Timer3Timer1
one speakerC4,C5 or C6
one speakerB4, B5 or B7
two speakersC4,C5 or C6B4, B5 or B7

Currently there is only one/default driver for AVR based boards, which is automatically configured to:

make
AUDIO_DRIVER = pwm_hardware

ARM

For Arm based boards, QMK depends on ChibiOS - hence any MCU supported by the later is likely usable, as long as certain hardware peripherals are available.

Supported wiring configurations, with their ChibiOS/MCU peripheral requirement are listed below; piezo speakers are marked with 1️⃣ for the first/primary and 2️⃣ for the secondary.

driverGPTD6
Tim6
GPTD7
Tim7
GPTD8
Tim8
PWMD11
Tim1_Ch1
dac_basicA4+DACD1 = 1️⃣A5+DACD2 = 1️⃣state
A4+DACD1 = 1️⃣ + GndA5+DACD2 = 2️⃣ + Gndstate
A4+DACD1 = 2️⃣ + GndA5+DACD2 = 1️⃣ + Gndstate
A4+DACD1 = 1️⃣ + Gndstate
A5+DACD2 = 1️⃣ + Gndstate
dac_additiveA4+DACD1 = 1️⃣ + Gnd
A5+DACD2 = 1️⃣ + Gnd
A4+DACD1 + A5+DACD2 = 1️⃣ 2
pwm_softwarestate-updateany = 1️⃣
pwm hardwarestate-updateA8 = 1️⃣ 3

1: the routing and alternate functions for PWM differ sometimes between STM32 MCUs, if in doubt consult the data-sheet
2: one piezo connected to A4 and A5, with AUDIO_PIN_ALT_AS_NEGATIVE set
3: TIM1_CH1 = A8 on STM32F103C8, other combinations are possible, see Data-sheet. configured with: AUDIO_PWM_DRIVER and AUDIO_PWM_CHANNEL

DAC basic

The default driver for ARM boards, in absence of an overriding configuration. This driver needs one Timer per enabled/used DAC channel, to trigger conversion; and a third timer to trigger state updates with the audio-core.

Additionally, in the board config, you'll want to make changes to enable the DACs, GPT for Timers 6, 7 and 8:

c
#pragma once\n\n#define HAL_USE_DAC TRUE\n#define HAL_USE_GPT TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_DAC_USE_DAC1_CH1\n#define STM32_DAC_USE_DAC1_CH1 TRUE\n#undef STM32_DAC_USE_DAC1_CH2\n#define STM32_DAC_USE_DAC1_CH2 TRUE\n#undef STM32_GPT_USE_TIM6\n#define STM32_GPT_USE_TIM6 TRUE\n#undef STM32_GPT_USE_TIM7\n#define STM32_GPT_USE_TIM7 TRUE\n#undef STM32_GPT_USE_TIM8\n#define STM32_GPT_USE_TIM8 TRUE

TIP

Note: DAC1 (A4) uses TIM6, DAC2 (A5) uses TIM7, and the audio state timer uses TIM8 (configurable).

You can also change the timer used for the overall audio state by defining the driver. For instance:

c
#define AUDIO_STATE_TIMER GPTD9

DAC additive

only needs one timer (GPTD6, Tim6) to trigger the DAC unit to do a conversion; the audio state updates are in turn triggered during the DAC callback.

Additionally, in the board config, you'll want to make changes to enable the DACs, GPT for Timer 6:

c
#pragma once\n\n#define HAL_USE_DAC TRUE\n#define HAL_USE_GPT TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_DAC_USE_DAC1_CH1\n#define STM32_DAC_USE_DAC1_CH1 TRUE\n#undef STM32_DAC_USE_DAC1_CH2\n#define STM32_DAC_USE_DAC1_CH2 TRUE\n#undef STM32_GPT_USE_TIM6\n#define STM32_GPT_USE_TIM6 TRUE

DAC Config

DefineDefaultsDescription
AUDIO_DAC_SAMPLE_MAX4095UHighest value allowed. Lower value means lower volume. And 4095U is the upper limit, since this is limited to a 12 bit value. Only effects non-pregenerated samples.
AUDIO_DAC_OFF_VALUEAUDIO_DAC_SAMPLE_MAX / 2The value of the DAC when not playing anything. Some setups may require a high (AUDIO_DAC_SAMPLE_MAX) or low (0) value here.
AUDIO_MAX_SIMULTANEOUS_TONESsee next tableThe number of tones that can be played simultaneously. A value that is too high may freeze the controller or glitch out when too many tones are being played.
AUDIO_DAC_SAMPLE_RATEsee next tableEffective bit rate of the DAC (in hertz), higher limits simultaneous tones, and lower sacrifices quality.
AUDIO_DAC_BUFFER_SIZEsee next tableNumber of samples generated every refill. Too few may cause excessive CPU load; too many may cause freezes, RAM or flash exhaustion or lags during matrix scanning.

There are a number of predefined quality settings that you can use, with "sane minimum" being the default. You can use custom values by simply defining the sample rate, number of simultaneous tones and buffer size, instead of using one of the listed presets.

DefineSample RateSimultaneous tonesBuffer size
AUDIO_DAC_QUALITY_VERY_LOW11025U864U
AUDIO_DAC_QUALITY_LOW22050U4128U
AUDIO_DAC_QUALITY_HIGH44100U2256U
AUDIO_DAC_QUALITY_VERY_HIGH88200U1256U
AUDIO_DAC_QUALITY_SANE_MINIMUM16384U864U

Notes on buffer size

By default, the buffer size attempts to keep to these constraints:

You can lower the buffer size if you need a bit more space in your firmware, or raise it if your keyboard freezes up.

c
        /* zero crossing (or approach, whereas zero == DAC_OFF_VALUE, which can be configured to anything from 0 to DAC_SAMPLE_MAX)\n         * ============================*=*========================== AUDIO_DAC_SAMPLE_MAX\n         *                          *       *\n         *                        *           *\n         * ---------------------------------------------------------\n         *                     *                 *                  } AUDIO_DAC_SAMPLE_MAX/100\n         * --------------------------------------------------------- AUDIO_DAC_OFF_VALUE\n         *                  *                       *               } AUDIO_DAC_SAMPLE_MAX/100\n         * ---------------------------------------------------------\n         *               *\n         * *           *\n         *   *       *\n         * =====*=*================================================= 0x0\n         */

PWM hardware

This driver uses the ChibiOS-PWM system to produce a square-wave on specific output pins that are connected to the PWM hardware. The hardware directly toggles the pin via its alternate function. See your MCU's data-sheet for which pin can be driven by what timer - looking for TIMx_CHy and the corresponding alternate function.

A configuration example for the STM32F103C8 would be:

c
#pragma once\n\n#define HAL_USE_PWM TRUE\n#define HAL_USE_PAL TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_PWM_USE_TIM1\n#define STM32_PWM_USE_TIM1 TRUE

If we now target pin A8, looking through the data-sheet of the STM32F103C8, for the timers and alternate functions

with all this information, the configuration would contain these lines:

c
//config.h:\n#define AUDIO_PIN A8\n#define AUDIO_PWM_DRIVER PWMD1\n#define AUDIO_PWM_CHANNEL 1

ChibiOS uses GPIOv1 for the F103, which only knows of one alternate function. On 'larger' STM32s, GPIOv2 or GPIOv3 are used; with them it is also necessary to configure AUDIO_PWM_PAL_MODE to the correct alternate function for the selected pin, timer and timer-channel.

You can also use the Complementary output (TIMx_CHyN) for PWM on supported controllers. To enable this functionality, you will need to make the following changes:

c
// config.h:\n#define AUDIO_PWM_COMPLEMENTARY_OUTPUT

PWM software

This driver uses the PWM callbacks from PWMD1 with TIM1_CH1 to toggle the selected AUDIO_PIN in software. During the same callback, with AUDIO_PIN_ALT_AS_NEGATIVE set, the AUDIO_PIN_ALT is toggled inversely to AUDIO_PIN. This is useful for setups that drive a piezo from two pins (instead of one and Gnd).

You can also change the timer used for software PWM by defining the driver. For instance:

c
#define AUDIO_STATE_TIMER GPTD8

Testing Notes

While not an exhaustive list, the following table provides the scenarios that have been partially validated:

DAC basicDAC additivePWM hardwarePWM software
Atmega32U4✔️
RP2040✔️?
STM32F103C8 (bluepill)✔️✔️
STM32F303CCT6 (proton-c)✔️✔️?✔️
STM32F405VG✔️✔️✔️✔️
L0xx❌ (no Tim8)???

✔️ : works and was tested
⭕ : does not apply
❌ : not supported by MCU

Other supported ChibiOS boards and/or pins may function, it will be highly chip and configuration dependent.

', 53); const _hoisted_54 = [ _hoisted_1 ]; diff --git a/assets/drivers_audio.md.POIlGI3S.lean.js b/assets/drivers_audio.md.CdpP_nV3.lean.js similarity index 82% rename from assets/drivers_audio.md.POIlGI3S.lean.js rename to assets/drivers_audio.md.CdpP_nV3.lean.js index b5f766c7d2f..a314e1d14b7 100644 --- a/assets/drivers_audio.md.POIlGI3S.lean.js +++ b/assets/drivers_audio.md.CdpP_nV3.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Audio Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/audio.md","filePath":"drivers/audio.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/audio.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 53); diff --git a/assets/drivers_aw20216s.md.BK5iOj2N.js b/assets/drivers_aw20216s.md.CpBh1Zxp.js similarity index 98% rename from assets/drivers_aw20216s.md.BK5iOj2N.js rename to assets/drivers_aw20216s.md.CpBh1Zxp.js index 84ef19e4f63..45d09f027ed 100644 --- a/assets/drivers_aw20216s.md.BK5iOj2N.js +++ b/assets/drivers_aw20216s.md.CpBh1Zxp.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"AW20216S Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/aw20216s.md","filePath":"drivers/aw20216s.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/aw20216s.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

AW20216S Driver

SPI 18x12 LED matrix driver by Awinic. Supports a maximum of four drivers, each controlling up to 216 single-color LEDs, or 72 RGB LEDs.

AW20216S Datasheet

Usage

The AW20216S driver code is automatically included if you are using the RGB Matrix feature with the aw20216s driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led\nSRC += aw20216s.c\nSPI_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
AW20216S_CS_PIN_1Not definedThe GPIO pin connected to the first driver's Chip Select pin
AW20216S_CS_PIN_2Not definedThe GPIO pin connected to the second driver's Chip Select pin
AW20216S_EN_PINNot definedThe GPIO pin connected to the drivers' Enable pins
AW20216S_SPI_MODE0The SPI mode to use
AW20216S_SPI_DIVISOR4The SPI divisor to use
AW20216S_SCALING_MAX150The scaling value
AW20216S_GLOBAL_CURRENT_MAX150The global current control value

Global Current Control

This setting controls the current sunk by the CSx pins, from 0 to 255. To adjust it, add the following to your config.h:

c
#define AW20216S_GLOBAL_CURRENT_MAX 150

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure SPI at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const aw20216s_led_t PROGMEM g_aw20216s_leds[AW20216S_LED_COUNT] = {\n/* Driver\n *   |  R          G          B */\n    {0, SW1_CS1,   SW1_CS2,   SW1_CS3},\n    // etc...\n};

In this example, the first LED index on driver 0 has its red channel on SW1_CS1, green on SW1_CS2 and blue on SW1_CS3.

These values correspond to the matrix locations as shown in the datasheet on page 16, figure 16.

API

struct aw20216s_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void aw20216s_init(pin_t cs_pin)

Initialize the LED driver. This function should be called first.

Arguments


void aw20216s_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED. This function does not immediately update the LEDs; call aw20216s_update_pwm_buffers() after you are finished.

Arguments


void aw20216s_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs.

Arguments


void aw20216s_update_pwm_buffers(pin_t cs_pin, uint8_t index)

Flush the PWM values to the LED driver.

Arguments

', 45); diff --git a/assets/drivers_aw20216s.md.BK5iOj2N.lean.js b/assets/drivers_aw20216s.md.CpBh1Zxp.lean.js similarity index 83% rename from assets/drivers_aw20216s.md.BK5iOj2N.lean.js rename to assets/drivers_aw20216s.md.CpBh1Zxp.lean.js index e2e86860a41..9c54c333227 100644 --- a/assets/drivers_aw20216s.md.BK5iOj2N.lean.js +++ b/assets/drivers_aw20216s.md.CpBh1Zxp.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"AW20216S Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/aw20216s.md","filePath":"drivers/aw20216s.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/aw20216s.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 45); diff --git a/assets/drivers_battery.md.DAwDiAI6.js b/assets/drivers_battery.md.BejgsgGx.js similarity index 97% rename from assets/drivers_battery.md.DAwDiAI6.js rename to assets/drivers_battery.md.BejgsgGx.js index cbc4e67fc30..8bfd2015165 100644 --- a/assets/drivers_battery.md.DAwDiAI6.js +++ b/assets/drivers_battery.md.BejgsgGx.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Battery Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/battery.md","filePath":"drivers/battery.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/battery.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Battery Driver

This driver provides support for directly sampling battery level.

Usage

To use this driver, add the following to your rules.mk:

make
BATTERY_DRIVER_REQUIRED = yes

Note

This is already configured for you if you are using the Battery feature.

Driver Configuration

Driver selection can be configured in rules.mk as BATTERY_DRIVER. Valid values are adc, vendor, or custom. See below for information on individual drivers.

ADC Driver

The default configuration assumes the battery is connected to a ADC capable pin through a voltage divider.

make
BATTERY_DRIVER = adc

The following #defines apply only to the adc driver:

DefineDefaultDescription
BATTERY_ADC_PINNot definedThe GPIO pin connected to the voltage divider.
BATTERY_ADC_REF_VOLTAGE_MV3300The ADC reverence voltage, in millivolts.
BATTERY_ADC_VOLTAGE_DIVIDER_R1100The voltage divider resistance, in kOhm. Set to 0 to disable.
BATTERY_ADC_VOLTAGE_DIVIDER_R2100The voltage divider resistance, in kOhm. Set to 0 to disable.
BATTERY_ADC_RESOLUTION10The ADC resolution configured for the ADC Driver.

Custom Driver

A custom driver is expected to implement the following interface:

c
void battery_driver_init(void) {\n    // Perform any initialisation here\n}\n\nuint8_t battery_driver_sample_percent(void) {\n    // Read and return current state here\n    return value;\n}
', 16); diff --git a/assets/drivers_battery.md.DAwDiAI6.lean.js b/assets/drivers_battery.md.BejgsgGx.lean.js similarity index 82% rename from assets/drivers_battery.md.DAwDiAI6.lean.js rename to assets/drivers_battery.md.BejgsgGx.lean.js index f2b76c529d9..7aeb0f326b4 100644 --- a/assets/drivers_battery.md.DAwDiAI6.lean.js +++ b/assets/drivers_battery.md.BejgsgGx.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Battery Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/battery.md","filePath":"drivers/battery.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/battery.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 16); diff --git a/assets/drivers_eeprom.md.DGh7YLy6.js b/assets/drivers_eeprom.md.Chttlkwg.js similarity index 99% rename from assets/drivers_eeprom.md.DGh7YLy6.js rename to assets/drivers_eeprom.md.Chttlkwg.js index 8957b184f79..f153e391b28 100644 --- a/assets/drivers_eeprom.md.DGh7YLy6.js +++ b/assets/drivers_eeprom.md.Chttlkwg.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"EEPROM Driver Configuration","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/eeprom.md","filePath":"drivers/eeprom.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/eeprom.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

EEPROM Driver Configuration

The EEPROM driver can be swapped out depending on the needs of the keyboard, or whether extra hardware is present.

Selecting the EEPROM driver is done in your keyboard's rules.mk:

DriverDescription
EEPROM_DRIVER = vendor (default)Uses the on-chip driver provided by the chip manufacturer. For AVR, this is provided by avr-libc. This is supported on ARM for a subset of chips -- STM32F3xx, STM32F1xx, and STM32F072xB will be emulated by writing to flash. STM32L0xx and STM32L1xx will use the onboard dedicated true EEPROM. Other chips will generally act as "transient" below.
EEPROM_DRIVER = i2cSupports writing to I2C-based 24xx EEPROM chips. See the driver section below.
EEPROM_DRIVER = spiSupports writing to SPI-based 25xx EEPROM chips. See the driver section below.
EEPROM_DRIVER = transientFake EEPROM driver -- supports reading/writing to RAM, and will be discarded when power is lost.
EEPROM_DRIVER = wear_levelingFrontend driver for the wear_leveling system, allowing for EEPROM emulation on top of flash -- both in-MCU and external SPI NOR flash.

Vendor Driver Configuration

STM32 L0/L1 Configuration

WARNING

Resetting EEPROM using an STM32L0/L1 device takes up to 1 second for every 1kB of internal EEPROM used.

config.h overrideDescriptionDefault Value
#define STM32_ONBOARD_EEPROM_SIZEThe size of the EEPROM to use, in bytes. Erase times can be high, so it's configurable here, if not using the default value.Minimum required to cover base eeconfig data, or 1024 if VIA is enabled.

I2C Driver Configuration

Currently QMK supports 24xx-series chips over I2C. As such, requires a working i2c_master driver configuration. You can override the driver configuration via your config.h:

config.h overrideDescriptionDefault Value
#define EXTERNAL_EEPROM_I2C_BASE_ADDRESSBase I2C address for the EEPROM -- shifted left by 1 as per i2c_master requirements0b10100000
#define EXTERNAL_EEPROM_I2C_ADDRESS(addr)Calculated I2C address for the EEPROM(EXTERNAL_EEPROM_I2C_BASE_ADDRESS)
#define EXTERNAL_EEPROM_BYTE_COUNTTotal size of the EEPROM in bytes8192
#define EXTERNAL_EEPROM_PAGE_SIZEPage size of the EEPROM in bytes, as specified in the datasheet32
#define EXTERNAL_EEPROM_ADDRESS_SIZEThe number of bytes to transmit for the memory location within the EEPROM2
#define EXTERNAL_EEPROM_WRITE_TIMEWrite cycle time of the EEPROM, as specified in the datasheet5
#define EXTERNAL_EEPROM_WP_PINIf defined the WP pin will be toggled appropriately when writing to the EEPROM.none

Some I2C EEPROM manufacturers explicitly recommend against hardcoding the WP pin to ground. This is in order to protect the eeprom memory content during power-up/power-down/brown-out conditions at low voltage where the eeprom is still operational, but the i2c master output might be unpredictable. If a WP pin is configured, then having an external pull-up on the WP pin is recommended.

Default values and extended descriptions can be found in drivers/eeprom/eeprom_i2c.h.

Alternatively, there are pre-defined hardware configurations for available chips/modules:

ModuleEquivalent #defineSource
CAT24C512 EEPROM#define EEPROM_I2C_CAT24C512https://www.sparkfun.com/products/14764
RM24C512C EEPROM#define EEPROM_I2C_RM24C512Chttps://www.sparkfun.com/products/14764
24LC32A EEPROM#define EEPROM_I2C_24LC32Ahttps://www.microchip.com/en-us/product/24LC32A
24LC64 EEPROM#define EEPROM_I2C_24LC64https://www.microchip.com/en-us/product/24LC64
24LC128 EEPROM#define EEPROM_I2C_24LC128https://www.microchip.com/en-us/product/24LC128
24LC256 EEPROM#define EEPROM_I2C_24LC256https://www.sparkfun.com/products/525
MB85RC256V FRAM#define EEPROM_I2C_MB85RC256Vhttps://www.adafruit.com/product/1895

TIP

If you find that the EEPROM is not cooperating, ensure you've correctly shifted up your EEPROM address by 1. For example, the datasheet might state the address as 0b01010000 -- the correct value of EXTERNAL_EEPROM_I2C_BASE_ADDRESS needs to be 0b10100000.

SPI Driver Configuration

Currently QMK supports 25xx-series chips over SPI. As such, requires a working spi_master driver configuration. You can override the driver configuration via your config.h:

config.h overrideDefault ValueDescription
#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PINnoneSPI Slave select pin in order to inform that the EEPROM is currently being addressed
#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR64Clock divisor used to divide the peripheral clock to derive the SPI frequency
#define EXTERNAL_EEPROM_BYTE_COUNT8192Total size of the EEPROM in bytes
#define EXTERNAL_EEPROM_PAGE_SIZE32Page size of the EEPROM in bytes, as specified in the datasheet
#define EXTERNAL_EEPROM_ADDRESS_SIZE2The number of bytes to transmit for the memory location within the EEPROM

Default values and extended descriptions can be found in drivers/eeprom/eeprom_spi.h.

Alternatively, there are pre-defined hardware configurations for available chips/modules:

ModuleEquivalent #defineSource
MB85RS64V FRAMdefine EEPROM_SPI_MB85RS64Vhttps://www.adafruit.com/product/1897

WARNING

There's no way to determine if there is an SPI EEPROM actually responding. Generally, this will result in reads of nothing but zero.

Transient Driver configuration

The only configurable item for the transient EEPROM driver is its size:

config.h overrideDescriptionDefault Value
#define TRANSIENT_EEPROM_SIZETotal size of the EEPROM storage in bytes64

Default values and extended descriptions can be found in drivers/eeprom/eeprom_transient.h.

Wear-leveling Driver Configuration

The wear-leveling driver uses an algorithm to minimise the number of erase cycles on the underlying MCU flash memory.

There is no specific configuration for this driver, but the wear-leveling system used by this driver may need configuration. See the wear-leveling configuration section for more information.

Wear-leveling Configuration

The wear-leveling driver has a few possible backing stores that may be used by adding to your keyboard's rules.mk file:

DriverDescription
WEAR_LEVELING_DRIVER = embedded_flashThis driver is used for emulating EEPROM by writing to embedded flash on the MCU.
WEAR_LEVELING_DRIVER = spi_flashThis driver is used to address external SPI NOR Flash peripherals.
WEAR_LEVELING_DRIVER = rp2040_flashThis driver is used to write to the same storage the RP2040 executes code from.
WEAR_LEVELING_DRIVER = legacyThis driver is the "legacy" emulated EEPROM provided in historical revisions of QMK. Currently used for STM32F0xx and STM32F4x1, but slated for deprecation and removal once embedded_flash support for those MCU families is complete.

WARNING

All wear-leveling drivers require an amount of RAM equivalent to the selected logical EEPROM size. Increasing the size to 32kB of EEPROM requires 32kB of RAM, which a significant number of MCUs simply do not have.

Wear-leveling Embedded Flash Driver Configuration

This driver performs writes to the embedded flash storage embedded in the MCU. In most circumstances, the last few of sectors of flash are used in order to minimise the likelihood of collision with program code.

Configurable options in your keyboard's config.h:

config.h overrideDefaultDescription
#define WEAR_LEVELING_EFL_FIRST_SECTORunsetThe first sector on the MCU to use. By default this is not defined and calculated at runtime based on the MCU. However, different flash sizes on MCUs may require custom configuration.
#define WEAR_LEVELING_EFL_FLASH_SIZEunsetAllows overriding the flash size available for use for wear-leveling. Under normal circumstances this is automatically calculated and should not need to be overridden. Specifying a size larger than the amount actually available in flash will usually prevent the MCU from booting.
#define WEAR_LEVELING_EFL_OMIT_LAST_SECTOR_COUNT0Number of sectors to omit at the end of the flash. These sectors will not be allocated to the driver and the usable flash block will be offset, but keeping the set flash size. Useful on devices with bootloaders requiring a check flag at the end of flash to be present in order to confirm a valid, bootable firmware.
#define WEAR_LEVELING_LOGICAL_SIZE(backing_size/2)Number of bytes "exposed" to the rest of QMK and denotes the size of the usable EEPROM.
#define WEAR_LEVELING_BACKING_SIZE2048Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size.
#define BACKING_STORE_WRITE_SIZEautomaticThe byte width of the underlying write used on the MCU, and is usually automatically determined from the selected MCU family. If an error occurs in the auto-detection, you'll need to consult the MCU's datasheet and determine this value, specifying it directly.

WARNING

If your MCU does not boot after swapping to the EFL wear-leveling driver, it's likely that the flash size is incorrectly detected, usually as an MCU with larger flash and may require overriding.

Wear-leveling SPI Flash Driver Configuration

This driver performs writes to an external SPI NOR Flash peripheral. It also requires a working configuration for the SPI NOR Flash peripheral -- see the flash driver documentation for more information.

Configurable options in your keyboard's config.h:

config.h overrideDefaultDescription
#define WEAR_LEVELING_EXTERNAL_FLASH_BLOCK_COUNT1Number of blocks in the external flash used by the wear-leveling algorithm.
#define WEAR_LEVELING_EXTERNAL_FLASH_BLOCK_OFFSET0The index first block in the external flash used by the wear-leveling algorithm.
#define WEAR_LEVELING_LOGICAL_SIZE((block_count*block_size)/2)Number of bytes "exposed" to the rest of QMK and denotes the size of the usable EEPROM. Result must be <= 64kB.
#define WEAR_LEVELING_BACKING_SIZE(block_count*block_size)Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size.
#define BACKING_STORE_WRITE_SIZE8The write width used whenever a write is performed on the external flash peripheral.

WARNING

There is currently a limit of 64kB for the EEPROM subsystem within QMK, so using a larger flash is not going to be beneficial as the logical size cannot be increased beyond 65536. The backing size may be increased to a larger value, but erase timing may suffer as a result.

Wear-leveling RP2040 Driver Configuration

This driver performs writes to the same underlying storage that the RP2040 executes its code.

Configurable options in your keyboard's config.h:

config.h overrideDefaultDescription
#define WEAR_LEVELING_RP2040_FLASH_SIZEPICO_FLASH_SIZE_BYTESNumber of bytes of flash on the board.
#define WEAR_LEVELING_RP2040_FLASH_BASE(flash_size-sector_size)The byte-wise location that the backing storage should be located.
#define WEAR_LEVELING_LOGICAL_SIZE(backing_size/2)Number of bytes "exposed" to the rest of QMK and denotes the size of the usable EEPROM.
#define WEAR_LEVELING_BACKING_SIZE8192Number of bytes used by the wear-leveling algorithm for its underlying storage, and needs to be a multiple of the logical size as well as the sector size.
#define BACKING_STORE_WRITE_SIZE2The write width used whenever a write is performed on the external flash peripheral.

Wear-leveling Legacy EEPROM Emulation Driver Configuration

This driver performs writes to the embedded flash storage embedded in the MCU much like the normal Embedded Flash Driver, and is only for use with STM32F0xx and STM32F4x1 devices. This flash implementation is still currently provided as the EFL driver is currently non-functional for the previously mentioned families.

By default, 1024 bytes of emulated EEPROM is provided:

MCUEEPROM ProvidedFlash Used
STM32F0421024 bytes2048 bytes
STM32F0701024 bytes2048 bytes
STM32F0721024 bytes2048 bytes
STM32F4011024 bytes16384 bytes
STM32F4111024 bytes16384 bytes

Under normal circumstances configuration of this driver requires intimate knowledge of the MCU's flash structure -- reconfiguration is at your own risk and will require referring to the code.

', 53); diff --git a/assets/drivers_eeprom.md.DGh7YLy6.lean.js b/assets/drivers_eeprom.md.Chttlkwg.lean.js similarity index 83% rename from assets/drivers_eeprom.md.DGh7YLy6.lean.js rename to assets/drivers_eeprom.md.Chttlkwg.lean.js index 2d9d070bba8..7947fd7643a 100644 --- a/assets/drivers_eeprom.md.DGh7YLy6.lean.js +++ b/assets/drivers_eeprom.md.Chttlkwg.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"EEPROM Driver Configuration","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/eeprom.md","filePath":"drivers/eeprom.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/eeprom.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 53); diff --git a/assets/drivers_flash.md.Xjr69qY1.js b/assets/drivers_flash.md.BZEprYOU.js similarity index 96% rename from assets/drivers_flash.md.Xjr69qY1.js rename to assets/drivers_flash.md.BZEprYOU.js index a16d8d3ae49..8443885a5c4 100644 --- a/assets/drivers_flash.md.Xjr69qY1.js +++ b/assets/drivers_flash.md.BZEprYOU.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"FLASH Driver Configuration","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/flash.md","filePath":"drivers/flash.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/flash.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

FLASH Driver Configuration

The FLASH driver can be swapped out depending on the needs of the keyboard, or whether extra hardware is present.

DriverDescription
FLASH_DRIVER = spiSupports writing to almost all NOR Flash chips. See the driver section below.

SPI FLASH Driver Configuration

Currently QMK supports almost all NOR Flash chips over SPI. As such, requires a working spi_master driver configuration. You can override the driver configuration via your config.h:

config.h overrideDescriptionDefault Value
#define EXTERNAL_FLASH_SPI_SLAVE_SELECT_PINSPI Slave select pin in order to inform that the FLASH is currently being addressednone
#define EXTERNAL_FLASH_SPI_CLOCK_DIVISORClock divisor used to divide the peripheral clock to derive the SPI frequency8
#define EXTERNAL_FLASH_PAGE_SIZEThe Page size of the FLASH in bytes, as specified in the datasheet256
#define EXTERNAL_FLASH_SECTOR_SIZEThe sector size of the FLASH in bytes, as specified in the datasheet(4 * 1024)
#define EXTERNAL_FLASH_BLOCK_SIZEThe block size of the FLASH in bytes, as specified in the datasheet(64 * 1024)
#define EXTERNAL_FLASH_SIZEThe total size of the FLASH in bytes, as specified in the datasheet(512 * 1024)
#define EXTERNAL_FLASH_ADDRESS_SIZEThe Flash address size in bytes, as specified in datasheet3

WARNING

All the above default configurations are based on MX25L4006E NOR Flash.

', 7); diff --git a/assets/drivers_flash.md.Xjr69qY1.lean.js b/assets/drivers_flash.md.BZEprYOU.lean.js similarity index 82% rename from assets/drivers_flash.md.Xjr69qY1.lean.js rename to assets/drivers_flash.md.BZEprYOU.lean.js index b357bc18629..f5e5b4316fa 100644 --- a/assets/drivers_flash.md.Xjr69qY1.lean.js +++ b/assets/drivers_flash.md.BZEprYOU.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"FLASH Driver Configuration","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/flash.md","filePath":"drivers/flash.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/flash.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 7); diff --git a/assets/drivers_gpio.md.DeLMdEEL.js b/assets/drivers_gpio.md.DAIVnFsw.js similarity index 97% rename from assets/drivers_gpio.md.DeLMdEEL.js rename to assets/drivers_gpio.md.DAIVnFsw.js index 82fb203df99..875c58ca9bd 100644 --- a/assets/drivers_gpio.md.DeLMdEEL.js +++ b/assets/drivers_gpio.md.DAIVnFsw.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"GPIO Control","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/gpio.md","filePath":"drivers/gpio.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/gpio.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

GPIO Control

QMK has a GPIO control abstraction layer which is microcontroller agnostic. This is done to allow easy access to pin control across different platforms.

Macros

The following macros provide basic control of GPIOs and are found in platforms/<platform>/gpio.h.

MacroDescription
gpio_set_pin_input(pin)Set pin as input with high impedance (High-Z)
gpio_set_pin_input_high(pin)Set pin as input with builtin pull-up resistor
gpio_set_pin_input_low(pin)Set pin as input with builtin pull-down resistor (unavailable on AVR)
gpio_set_pin_output(pin)Set pin as output (alias of gpio_set_pin_output_push_pull)
gpio_set_pin_output_push_pull(pin)Set pin as output, push/pull mode
gpio_set_pin_output_open_drain(pin)Set pin as output, open-drain mode (unavailable on AVR)
gpio_write_pin_high(pin)Set pin level as high, assuming it is an output
gpio_write_pin_low(pin)Set pin level as low, assuming it is an output
gpio_write_pin(pin, level)Set pin level, assuming it is an output
gpio_read_pin(pin)Returns the level of the pin
gpio_toggle_pin(pin)Invert pin level, assuming it is an output

Advanced Settings

Each microcontroller can have multiple advanced settings regarding its GPIO. This abstraction layer does not limit the use of architecture-specific functions. Advanced users should consult the datasheet of their desired device. For AVR, the standard avr/io.h library is used; for STM32, the ChibiOS PAL library is used.

Atomic Operation

The above functions are not always guaranteed to work atomically. Therefore, if you want to prevent interruptions in the middle of operations when using multiple combinations of the above functions, use the following ATOMIC_BLOCK_FORCEON macro.

eg.

c
void some_function(void) {\n     // some process\n     ATOMIC_BLOCK_FORCEON {\n        // Atomic Processing\n     }\n     // some process\n}

ATOMIC_BLOCK_FORCEON forces interrupts to be disabled before the block is executed, without regard to whether they are enabled or disabled. Then, after the block is executed, the interrupt is enabled.

Note that ATOMIC_BLOCK_FORCEON can therefore be used if you know that interrupts are enabled before the execution of the block, or if you know that it is OK to enable interrupts at the completion of the block.

', 13); diff --git a/assets/drivers_gpio.md.DeLMdEEL.lean.js b/assets/drivers_gpio.md.DAIVnFsw.lean.js similarity index 82% rename from assets/drivers_gpio.md.DeLMdEEL.lean.js rename to assets/drivers_gpio.md.DAIVnFsw.lean.js index 6de47dca01e..40b80899587 100644 --- a/assets/drivers_gpio.md.DeLMdEEL.lean.js +++ b/assets/drivers_gpio.md.DAIVnFsw.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"GPIO Control","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/gpio.md","filePath":"drivers/gpio.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/gpio.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 13); diff --git a/assets/drivers_i2c.md.Stz1viUq.js b/assets/drivers_i2c.md.Dl4XHbyO.js similarity index 98% rename from assets/drivers_i2c.md.Stz1viUq.js rename to assets/drivers_i2c.md.Dl4XHbyO.js index 7e4a8051804..0b9e33564b2 100644 --- a/assets/drivers_i2c.md.Stz1viUq.js +++ b/assets/drivers_i2c.md.Dl4XHbyO.js @@ -1,7 +1,7 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"I2C Master Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/i2c.md","filePath":"drivers/i2c.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/i2c.md" }; -const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

I2C Master Driver

The I2C Master drivers used in QMK have a set of common functions to allow portability between MCUs.

Usage

In most cases, the I2C Master driver code is automatically included if you are using a feature or driver which requires it, such as OLED.

However, if you need to use the driver standalone, add the following to your rules.mk:

make
I2C_DRIVER_REQUIRED = yes

You can then call the I2C API by including i2c_master.h in your code.

I2C Addressing

I2C addresses listed on datasheets and the internet are usually represented as a 7-bit value. The eighth bit (the least significant bit) controls whether the operation is a read or a write.

All of the address parameters expected by the driver API should therefore be pushed to the upper 7 bits of the address byte; the driver will take care of setting the read/write bit as appropriate.

This is easy to do via the bitwise left shift operator. For example, if your device has an address of 0x18 you might create a define for convenience:

c
#define MY_I2C_ADDRESS (0x18 << 1)

Or, you can shift the address ahead of time:

c
#define MY_I2C_ADDRESS 0x30

See https://www.robot-electronics.co.uk/i2c-tutorial for more information about I2C addressing and other technical details.

AVR Configuration

The following defines can be used to configure the I2C master driver:

config.h OverrideDescriptionDefault
F_SCLClock frequency in Hz400000

No further setup is required - just connect the SDA and SCL pins of your I2C devices to the matching pins on the MCU:

MCUSCLSDA
ATmega16/32U4D0D1
AT90USB64/128D0D1
ATmega32AC0C1
ATmega328/PC5C4

TIP

The ATmega16/32U2 does not possess I2C functionality, and so cannot use this driver.

ChibiOS/ARM Configuration

You'll need to determine which pins can be used for I2C -- as an example, STM32 parts generally have multiple I2C peripherals, labeled I2C1, I2C2, I2C3 etc.

To enable I2C, modify your board's halconf.h to enable I2C, then modify your board's mcuconf.h to enable the peripheral you've chosen:

c
#pragma once\n\n#define HAL_USE_I2C TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_I2C_USE_I2C2\n#define STM32_I2C_USE_I2C2 TRUE
mcuconf.h SettingDescriptionDefault
STM32_I2C_BUSY_TIMEOUTTime in milliseconds until the I2C command is aborted if no response is received50
STM32_I2C_XXX_IRQ_PRIORITYInterrupt priority for hardware driver XXX (THIS IS AN EXPERT SETTING)10
STM32_I2C_USE_DMAEnable/Disable the ability of the MCU to offload the data transfer to the DMA unitTRUE
STM32_I2C_XXX_DMA_PRIORITYPriority of DMA unit for hardware driver XXX (THIS IS AN EXPERT SETTING)1

Configuration-wise, you'll need to set up the peripheral as per your MCU's datasheet -- the defaults match the pins for a Proton-C, i.e. STM32F303.

config.h OverrideDescriptionDefault
I2C_DRIVERI2C peripheral to use - I2C1 -> I2CD1, I2C2 -> I2CD2 etc.I2CD1
I2C1_SCL_PINThe pin to use for SCLB6
I2C1_SCL_PAL_MODEThe alternate function mode for SCL4
I2C1_SDA_PINThe pin to use for SDAB7
I2C1_SDA_PAL_MODEThe alternate function mode for SDA4

TIP

Currently only a single I2C peripheral is supported, therefore the I2C1_* defines are used for configuration regardless of the selected peripheral.

The following configuration values are dependent on the ChibiOS I2C LLD, which is dictated by the microcontroller.

I2Cv1

See this page for the I2Cv1 configuration structure.

config.h OverrideDefault
I2C1_OPMODEOPMODE_I2C
I2C1_CLOCK_SPEED100000
I2C1_DUTY_CYCLESTD_DUTY_CYCLE

I2Cv2

See this page for the I2Cv2 configuration structure.

config.h OverrideDefault
I2C1_TIMINGR_PRESC0U
I2C1_TIMINGR_SCLDEL7U
I2C1_TIMINGR_SDADEL0U
I2C1_TIMINGR_SCLH38U
I2C1_TIMINGR_SCLL129U

API

void i2c_init(void)

Initialize the I2C driver. This function must be called only once, before any of the below functions can be called.

This function is weakly defined, meaning it can be overridden if necessary for your particular use case:

c
void i2c_init(void) {\n    gpio_set_pin_input(B6); // Try releasing special pins for a short time\n    gpio_set_pin_input(B7);\n    wait_ms(10); // Wait for the release to happen\n\n    palSetPadMode(GPIOB, 6, PAL_MODE_ALTERNATE(4) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUPDR_PULLUP); // Set B6 to I2C function\n    palSetPadMode(GPIOB, 7, PAL_MODE_ALTERNATE(4) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUPDR_PULLUP); // Set B7 to I2C function\n}

i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)

Send multiple bytes to the selected I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_transmit_P(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)

Send multiple bytes from PROGMEM to the selected I2C device.

On ARM devices, this function is simply an alias for i2c_transmit(address, data, length, timeout).

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)

Receive multiple bytes from the selected I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_transmit_and_receive(uint8_t address, const uint8_t* tx_data, uint16_t tx_length, uint8_t* rx_data, uint16_t rx_length, uint16_t timeout)

Send and receive multiple bytes from the selected I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)

Write to a register with an 8-bit address on the I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)

Write to a register with a 16-bit address (big endian) on the I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)

Read from a register with an 8-bit address on the I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)

Read from a register with a 16-bit address (big endian) on the I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)

Ping the I2C bus for a specific address.

On ChibiOS a "best effort" attempt is made by reading a single byte from register 0 at the given address. This should generally work except for I2C devices that do not not respond to a register 0 read request, which will result in a false negative result (unsuccessful response to ping attempt).

This function is weakly defined, meaning it can be overridden if necessary for your particular use case.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.

', 109); +const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

I2C Master Driver

The I2C Master drivers used in QMK have a set of common functions to allow portability between MCUs.

Usage

In most cases, the I2C Master driver code is automatically included if you are using a feature or driver which requires it, such as OLED.

However, if you need to use the driver standalone, add the following to your rules.mk:

make
I2C_DRIVER_REQUIRED = yes

You can then call the I2C API by including i2c_master.h in your code.

I2C Addressing

I2C addresses listed on datasheets and the internet are usually represented as a 7-bit value. The eighth bit (the least significant bit) controls whether the operation is a read or a write.

All of the address parameters expected by the driver API should therefore be pushed to the upper 7 bits of the address byte; the driver will take care of setting the read/write bit as appropriate.

This is easy to do via the bitwise left shift operator. For example, if your device has an address of 0x18 you might create a define for convenience:

c
#define MY_I2C_ADDRESS (0x18 << 1)

Or, you can shift the address ahead of time:

c
#define MY_I2C_ADDRESS 0x30

See https://www.robot-electronics.co.uk/i2c-tutorial for more information about I2C addressing and other technical details.

AVR Configuration

The following defines can be used to configure the I2C master driver:

config.h OverrideDescriptionDefault
F_SCLClock frequency in Hz400000

No further setup is required - just connect the SDA and SCL pins of your I2C devices to the matching pins on the MCU:

MCUSCLSDA
ATmega16/32U4D0D1
AT90USB64/128D0D1
ATmega32AC0C1
ATmega328/PC5C4

TIP

The ATmega16/32U2 does not possess I2C functionality, and so cannot use this driver.

ChibiOS/ARM Configuration

You'll need to determine which pins can be used for I2C -- as an example, STM32 parts generally have multiple I2C peripherals, labeled I2C1, I2C2, I2C3 etc.

To enable I2C, modify your board's halconf.h to enable I2C, then modify your board's mcuconf.h to enable the peripheral you've chosen:

c
#pragma once\n\n#define HAL_USE_I2C TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_I2C_USE_I2C2\n#define STM32_I2C_USE_I2C2 TRUE
mcuconf.h SettingDescriptionDefault
STM32_I2C_BUSY_TIMEOUTTime in milliseconds until the I2C command is aborted if no response is received50
STM32_I2C_XXX_IRQ_PRIORITYInterrupt priority for hardware driver XXX (THIS IS AN EXPERT SETTING)10
STM32_I2C_USE_DMAEnable/Disable the ability of the MCU to offload the data transfer to the DMA unitTRUE
STM32_I2C_XXX_DMA_PRIORITYPriority of DMA unit for hardware driver XXX (THIS IS AN EXPERT SETTING)1

Configuration-wise, you'll need to set up the peripheral as per your MCU's datasheet -- the defaults match the pins for a Proton-C, i.e. STM32F303.

config.h OverrideDescriptionDefault
I2C_DRIVERI2C peripheral to use - I2C1 -> I2CD1, I2C2 -> I2CD2 etc.I2CD1
I2C1_SCL_PINThe pin to use for SCLB6
I2C1_SCL_PAL_MODEThe alternate function mode for SCL4
I2C1_SDA_PINThe pin to use for SDAB7
I2C1_SDA_PAL_MODEThe alternate function mode for SDA4

TIP

Currently only a single I2C peripheral is supported, therefore the I2C1_* defines are used for configuration regardless of the selected peripheral.

The following configuration values are dependent on the ChibiOS I2C LLD, which is dictated by the microcontroller.

I2Cv1

See this page for the I2Cv1 configuration structure.

config.h OverrideDefault
I2C1_OPMODEOPMODE_I2C
I2C1_CLOCK_SPEED100000
I2C1_DUTY_CYCLESTD_DUTY_CYCLE

I2Cv2

See this page for the I2Cv2 configuration structure.

config.h OverrideDefault
I2C1_TIMINGR_PRESC0U
I2C1_TIMINGR_SCLDEL7U
I2C1_TIMINGR_SDADEL0U
I2C1_TIMINGR_SCLH38U
I2C1_TIMINGR_SCLL129U

API

void i2c_init(void)

Initialize the I2C driver. This function must be called only once, before any of the below functions can be called.

This function is weakly defined, meaning it can be overridden if necessary for your particular use case:

c
void i2c_init(void) {\n    gpio_set_pin_input(B6); // Try releasing special pins for a short time\n    gpio_set_pin_input(B7);\n    wait_ms(10); // Wait for the release to happen\n\n    palSetPadMode(GPIOB, 6, PAL_MODE_ALTERNATE(4) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUPDR_PULLUP); // Set B6 to I2C function\n    palSetPadMode(GPIOB, 7, PAL_MODE_ALTERNATE(4) | PAL_STM32_OTYPE_OPENDRAIN | PAL_STM32_PUPDR_PULLUP); // Set B7 to I2C function\n}

i2c_status_t i2c_transmit(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)

Send multiple bytes to the selected I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_transmit_P(uint8_t address, const uint8_t* data, uint16_t length, uint16_t timeout)

Send multiple bytes from PROGMEM to the selected I2C device.

On ARM devices, this function is simply an alias for i2c_transmit(address, data, length, timeout).

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)

Receive multiple bytes from the selected I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_transmit_and_receive(uint8_t address, const uint8_t* tx_data, uint16_t tx_length, uint8_t* rx_data, uint16_t rx_length, uint16_t timeout)

Send and receive multiple bytes from the selected I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_write_register(uint8_t devaddr, uint8_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)

Write to a register with an 8-bit address on the I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_write_register16(uint8_t devaddr, uint16_t regaddr, const uint8_t* data, uint16_t length, uint16_t timeout)

Write to a register with a 16-bit address (big endian) on the I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_read_register(uint8_t devaddr, uint8_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)

Read from a register with an 8-bit address on the I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_read_register16(uint8_t devaddr, uint16_t regaddr, uint8_t* data, uint16_t length, uint16_t timeout)

Read from a register with a 16-bit address (big endian) on the I2C device.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.


i2c_status_t i2c_ping_address(uint8_t address, uint16_t timeout)

Ping the I2C bus for a specific address.

On ChibiOS a "best effort" attempt is made by reading a single byte from register 0 at the given address. This should generally work except for I2C devices that do not not respond to a register 0 read request, which will result in a false negative result (unsuccessful response to ping attempt).

This function is weakly defined, meaning it can be overridden if necessary for your particular use case.

Arguments

Return Value

I2C_STATUS_TIMEOUT if the timeout period elapses, I2C_STATUS_ERROR if some other error occurs, otherwise I2C_STATUS_SUCCESS.

', 109); const _hoisted_110 = [ _hoisted_1 ]; diff --git a/assets/drivers_i2c.md.Stz1viUq.lean.js b/assets/drivers_i2c.md.Dl4XHbyO.lean.js similarity index 82% rename from assets/drivers_i2c.md.Stz1viUq.lean.js rename to assets/drivers_i2c.md.Dl4XHbyO.lean.js index 657aef892e9..d2a1841ba97 100644 --- a/assets/drivers_i2c.md.Stz1viUq.lean.js +++ b/assets/drivers_i2c.md.Dl4XHbyO.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"I2C Master Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/i2c.md","filePath":"drivers/i2c.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/i2c.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 109); diff --git a/assets/drivers_is31fl3218.md.CxNb3XH6.js b/assets/drivers_is31fl3218.md.B-CYetEe.js similarity index 99% rename from assets/drivers_is31fl3218.md.CxNb3XH6.js rename to assets/drivers_is31fl3218.md.B-CYetEe.js index 52139695ffc..0397d090f3c 100644 --- a/assets/drivers_is31fl3218.md.CxNb3XH6.js +++ b/assets/drivers_is31fl3218.md.B-CYetEe.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3218 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3218.md","filePath":"drivers/is31fl3218.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3218.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3218 Driver

I²C LED driver by Lumissil. Supports up to 18 single-color LEDs, or 6 RGB LEDs.

IS31FL3218 Datasheet

Usage

The IS31FL3218 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3218 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3218-mono.c # For single-color\nSRC += is31fl3218.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3218_SDB_PINNot definedThe GPIO pin connected to the driver's shutdown pin
IS31FL3218_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3218_I2C_PERSISTENCE0The number of times to retry I²C transmissions

I²C Addressing

The IS31FL3218's 7-bit I²C address is 0x54, available as IS31FL3218_I2C_ADDRESS.

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3218_led_t PROGMEM g_is31fl3218_leds[IS31FL3218_LED_COUNT] = {\n/*   R     G     B */\n    {OUT1, OUT2, OUT3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index all have their anodes connected to VCC, and their cathodes on the OUT1, OUT2 and OUT3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3218_led_t PROGMEM g_is31fl3218_leds[IS31FL3218_LED_COUNT] = {\n/*   V */\n    {OUT1},\n    // etc...\n};

API

struct is31fl3218_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3218_init(void)

Initialize the LED driver. This function should be called first.


void is31fl3218_write_register(uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3218_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3218_update_pwm_buffers() after you are finished.

Arguments


void is31fl3218_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3218_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3218_update_pwm_buffers() after you are finished.

Arguments


void is31fl3218_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3218_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3218_update_led_control_registers() after you are finished.

Arguments


void is31fl3218_set_led_control_register(uint8_t index, bool value)

Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3218_update_led_control_registers() after you are finished.

Arguments


void is31fl3218_update_pwm_buffers(void)

Flush the PWM values to the LED driver.


void is31fl3218_update_led_control_registers(void)

Flush the LED control register values to the LED driver.

', 69); diff --git a/assets/drivers_is31fl3218.md.CxNb3XH6.lean.js b/assets/drivers_is31fl3218.md.B-CYetEe.lean.js similarity index 83% rename from assets/drivers_is31fl3218.md.CxNb3XH6.lean.js rename to assets/drivers_is31fl3218.md.B-CYetEe.lean.js index 9c1aa7d0416..a07d13d6a46 100644 --- a/assets/drivers_is31fl3218.md.CxNb3XH6.lean.js +++ b/assets/drivers_is31fl3218.md.B-CYetEe.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3218 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3218.md","filePath":"drivers/is31fl3218.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3218.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 69); diff --git a/assets/drivers_is31fl3236.md.CtQ1lF3K.js b/assets/drivers_is31fl3236.md.oMXFaJQB.js similarity index 99% rename from assets/drivers_is31fl3236.md.CtQ1lF3K.js rename to assets/drivers_is31fl3236.md.oMXFaJQB.js index 0a72b7fd870..63fca8b9209 100644 --- a/assets/drivers_is31fl3236.md.CtQ1lF3K.js +++ b/assets/drivers_is31fl3236.md.oMXFaJQB.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3236 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3236.md","filePath":"drivers/is31fl3236.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3236.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3236 Driver

I²C LED driver by Lumissil. Supports a maximum of four drivers, each controlling up to 36 single-color LEDs, or 12 RGB LEDs.

IS31FL3236 Datasheet

Usage

The IS31FL3236 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3236 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3236-mono.c # For single-color\nSRC += is31fl3236.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3236_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3236_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3236_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3236_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3236_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3236_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3236_I2C_ADDRESS_4Not definedThe I²C address of driver 3

I²C Addressing

The IS31FL3236 has four possible 7-bit I²C addresses, depending on how the AD pin is connected.

To configure this, set the IS31FL3236_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3236_I2C_ADDRESS_GND0x3C
IS31FL3236_I2C_ADDRESS_SCL0x3D
IS31FL3236_I2C_ADDRESS_SDA0x3E
IS31FL3236_I2C_ADDRESS_VCC0x3F

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3236_led_t PROGMEM g_is31fl3236_leds[IS31FL3236_LED_COUNT] = {\n/* Driver\n     |  R     G     B */\n    {0, OUT1, OUT2, OUT3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their anodes connected to VCC, and their cathodes on the OUT1, OUT2 and OUT3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3236_led_t PROGMEM g_is31fl3236_leds[IS31FL3236_LED_COUNT] = {\n/* Driver\n     |  V */\n    {0, OUT1},\n    // etc...\n};

API

struct is31fl3236_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3236_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3236_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3236_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3236_update_pwm_buffers() after you are finished.

Arguments


void is31fl3236_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3236_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3236_update_pwm_buffers() after you are finished.

Arguments


void is31fl3236_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3236_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3236_update_led_control_registers() after you are finished.

Arguments


void is31fl3236_set_led_control_register(uint8_t index, bool value)

Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3236_update_led_control_registers() after you are finished.

Arguments


void is31fl3236_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3236_update_led_control_registers(uint8_t index)

Flush the LED control register values to the LED driver.

Arguments

', 77); diff --git a/assets/drivers_is31fl3236.md.CtQ1lF3K.lean.js b/assets/drivers_is31fl3236.md.oMXFaJQB.lean.js similarity index 83% rename from assets/drivers_is31fl3236.md.CtQ1lF3K.lean.js rename to assets/drivers_is31fl3236.md.oMXFaJQB.lean.js index 8c2f5e271a5..ba2fd1ddc9a 100644 --- a/assets/drivers_is31fl3236.md.CtQ1lF3K.lean.js +++ b/assets/drivers_is31fl3236.md.oMXFaJQB.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3236 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3236.md","filePath":"drivers/is31fl3236.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3236.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 77); diff --git a/assets/drivers_is31fl3729.md.DJCd-vON.js b/assets/drivers_is31fl3729.md.BPfwluBs.js similarity index 99% rename from assets/drivers_is31fl3729.md.DJCd-vON.js rename to assets/drivers_is31fl3729.md.BPfwluBs.js index 7071449cb41..627e5a5efb4 100644 --- a/assets/drivers_is31fl3729.md.DJCd-vON.js +++ b/assets/drivers_is31fl3729.md.BPfwluBs.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3729 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3729.md","filePath":"drivers/is31fl3729.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3729.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3729 Driver

I²C 16x8/15x9 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 135 single-color LEDs, or 45 RGB LEDs.

IS31FL3729 Datasheet

Usage

The IS31FL3729 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3729 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3729-mono.c # For single-color\nSRC += is31fl3729.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3729_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3729_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3729_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3729_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3729_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3729_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3729_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3729_PWM_FREQUENCYIS31FL3729_PWM_FREQUENCY_32K_HZThe PWM frequency of the LEDs
IS31FL3729_SW_PULLDOWNIS31FL3729_SW_PULLDOWN_2K_OHM_SW_OFFThe SWx pullup resistor value
IS31FL3729_CS_PULLUPIS31FL3729_CS_PULLUP_2K_OHM_CS_OFFThe CSx pulldown resistor value
IS31FL3729_GLOBAL_CURRENT0x40The global current control value

I²C Addressing

The IS31FL3729 has four possible 7-bit I²C addresses, depending on how the AD pin is connected.

To configure this, set the IS31FL3729_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3729_I2C_ADDRESS_GND0x34
IS31FL3729_I2C_ADDRESS_SCL0x35
IS31FL3729_I2C_ADDRESS_SDA0x36
IS31FL3729_I2C_ADDRESS_VCC0x37

PWM Frequency

The PWM frequency can be adjusted by adding the following to your config.h:

c
#define IS31FL3729_PWM_FREQUENCY IS31FL3729_PWM_FREQUENCY_32K_HZ

Valid values are:

DefineFrequency
IS31FL3729_PWM_FREQUENCY_55K_HZ55 kHz
IS31FL3729_PWM_FREQUENCY_32K_HZ32 kHz (default)
IS31FL3729_PWM_FREQUENCY_4K_HZ4 kHz
IS31FL3729_PWM_FREQUENCY_2K_HZ2 kHz
IS31FL3729_PWM_FREQUENCY_1K_HZ1 kHz
IS31FL3729_PWM_FREQUENCY_500_HZ500 Hz
IS31FL3729_PWM_FREQUENCY_250_HZ250 Hz
IS31FL3729_PWM_FREQUENCY_80K_HZ80 kHz

De-Ghosting

These settings control the pulldown and pullup resistor values on the SWy and CSx pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 18) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3729_SW_PULLDOWN IS31FL3729_SW_PULLDOWN_2K_OHM_SW_OFF\n#define IS31FL3729_CS_PULLUP IS31FL3729_CS_PULLUP_2K_OHM_CS_OFF

Valid values for IS31FL3729_SW_PULLDOWN are:

DefineResistance
IS31FL3729_SW_PULLDOWN_0_OHMNone
IS31FL3729_SW_PULLDOWN_0K5_OHM_SW_OFF0.5 kΩ in SWy off time
IS31FL3729_SW_PULLDOWN_1K_OHM_SW_OFF1 kΩ in SWy off time
IS31FL3729_SW_PULLDOWN_2K_OHM_SW_OFF2 kΩ in SWy off time (default)
IS31FL3729_SW_PULLDOWN_1K_OHM1 kΩ
IS31FL3729_SW_PULLDOWN_2K_OHM2 kΩ
IS31FL3729_SW_PULLDOWN_4K_OHM4 kΩ
IS31FL3729_SW_PULLDOWN_8K_OHM8 kΩ

Valid values for IS31FL3729_CS_PULLUP are:

DefineResistance
IS31FL3729_CS_PULLUP_0_OHMNone
IS31FL3729_CS_PULLUP_0K5_OHM_CS_OFF0.5 kΩ in CSx off time
IS31FL3729_CS_PULLUP_1K_OHM_CS_OFF1 kΩ in CSx off time
IS31FL3729_CS_PULLUP_2K_OHM_CS_OFF2 kΩ in CSx off time (default)
IS31FL3729_CS_PULLUP_1K_OHM1 kΩ
IS31FL3729_CS_PULLUP_2K_OHM2 kΩ
IS31FL3729_CS_PULLUP_4K_OHM4 kΩ
IS31FL3729_CS_PULLUP_8K_OHM8 kΩ

Global Current Control

This setting controls the current sunk by the CSx pins, from 0 to 255. By default, the value is 64, but if you need to adjust it, add the following to your config.h:

c
#define IS31FL3729_GLOBAL_CURRENT 0x40

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3729_led_t PROGMEM g_is31fl3729_leds[IS31FL3729_LED_COUNT] = {\n/* Driver\n *   |  R        G        B */\n    {0, SW1_CS1, SW1_CS2, SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their anodes connected to the SW1 pin, and their cathodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3729_led_t PROGMEM g_is31fl3729_leds[IS31FL3729_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 12, figure 9.

API

struct is31fl3729_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3729_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3729_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3729_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3729_update_pwm_buffers() after you are finished.

Arguments


void is31fl3729_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3729_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3729_update_pwm_buffers() after you are finished.

Arguments


void is31fl3729_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3729_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3729_update_scaling_registers() after you are finished.

Arguments


void is31fl3729_set_scaling_register(uint8_t index, uint8_t value)

Configure the scaling registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3729_update_scaling_registers() after you are finished.

Arguments


void is31fl3729_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3729_update_scaling_registers(uint8_t index)

Flush the scaling register values to the LED driver.

Arguments

', 94); diff --git a/assets/drivers_is31fl3729.md.DJCd-vON.lean.js b/assets/drivers_is31fl3729.md.BPfwluBs.lean.js similarity index 83% rename from assets/drivers_is31fl3729.md.DJCd-vON.lean.js rename to assets/drivers_is31fl3729.md.BPfwluBs.lean.js index b291378a118..9e823b8e094 100644 --- a/assets/drivers_is31fl3729.md.DJCd-vON.lean.js +++ b/assets/drivers_is31fl3729.md.BPfwluBs.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3729 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3729.md","filePath":"drivers/is31fl3729.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3729.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 94); diff --git a/assets/drivers_is31fl3731.md.Bv49dNf4.js b/assets/drivers_is31fl3731.md.CoRcGpoN.js similarity index 99% rename from assets/drivers_is31fl3731.md.Bv49dNf4.js rename to assets/drivers_is31fl3731.md.CoRcGpoN.js index 0a8a65bfded..19a699b1394 100644 --- a/assets/drivers_is31fl3731.md.Bv49dNf4.js +++ b/assets/drivers_is31fl3731.md.CoRcGpoN.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3731 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3731.md","filePath":"drivers/is31fl3731.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3731.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3731 Driver

I²C Charlieplexed 16x9 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 144 single-color LEDs, or 48 RGB LEDs.

IS31FL3731 Datasheet

Usage

The IS31FL3731 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3731 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3731-mono.c # For single-color\nSRC += is31fl3731.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3731_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3731_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3731_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3731_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3731_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3731_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3731_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3731_DEGHOSTNot definedEnable ghost image prevention

I²C Addressing

The IS31FL3731 has four possible 7-bit I²C addresses, depending on how the AD pin is connected.

To configure this, set the IS31FL3731_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3731_I2C_ADDRESS_GND0x74
IS31FL3731_I2C_ADDRESS_SCL0x75
IS31FL3731_I2C_ADDRESS_SDA0x76
IS31FL3731_I2C_ADDRESS_VCC0x77

De-Ghosting

This setting enables the de-ghosting feature on the IS31FL3731. See this Application Note (p. 15) for more information.

To enable, add the following to your config.h:

c
#define IS31FL3731_DEGHOST

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {\n/* Driver\n *   |  R     G     B */\n    {0, C1_1, C1_2, C1_3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their cathodes connected to the CA1 pin, and their anodes on the CA2, CA3 and CA4 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3731_led_t PROGMEM g_is31fl3731_leds[IS31FL3731_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, C1_1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 11, figure 8.

API

struct is31fl3731_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3731_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3731_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3731_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3731_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3731_update_pwm_buffers() after you are finished.

Arguments


void is31fl3731_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3731_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3731_update_pwm_buffers() after you are finished.

Arguments


void is31fl3731_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3731_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3731_update_led_control_registers() after you are finished.

Arguments


void is31fl3731_set_led_control_register(uint8_t index, bool value)

Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3731_update_led_control_registers() after you are finished.

Arguments


void is31fl3731_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3731_update_led_control_registers(uint8_t index)

Flush the LED control register values to the LED driver.

Arguments

', 87); diff --git a/assets/drivers_is31fl3731.md.Bv49dNf4.lean.js b/assets/drivers_is31fl3731.md.CoRcGpoN.lean.js similarity index 83% rename from assets/drivers_is31fl3731.md.Bv49dNf4.lean.js rename to assets/drivers_is31fl3731.md.CoRcGpoN.lean.js index 78fe9a52071..559771c40b9 100644 --- a/assets/drivers_is31fl3731.md.Bv49dNf4.lean.js +++ b/assets/drivers_is31fl3731.md.CoRcGpoN.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3731 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3731.md","filePath":"drivers/is31fl3731.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3731.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 87); diff --git a/assets/drivers_is31fl3733.md.4RLFART3.js b/assets/drivers_is31fl3733.md.D617uo2L.js similarity index 99% rename from assets/drivers_is31fl3733.md.4RLFART3.js rename to assets/drivers_is31fl3733.md.D617uo2L.js index 5a243ce45c6..b308be0e907 100644 --- a/assets/drivers_is31fl3733.md.4RLFART3.js +++ b/assets/drivers_is31fl3733.md.D617uo2L.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3733 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3733.md","filePath":"drivers/is31fl3733.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3733.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3733 Driver

I²C 12x16 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 192 single-color LEDs, or 64 RGB LEDs.

IS31FL3733 Datasheet

Usage

The IS31FL3733 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3733 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3733-mono.c # For single-color\nSRC += is31fl3733.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3733_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3733_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3733_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3733_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3733_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3733_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3733_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3733_SYNC_1IS31FL3733_SYNC_NONEThe sync configuration for driver 0
IS31FL3733_SYNC_2IS31FL3733_SYNC_NONEThe sync configuration for driver 1
IS31FL3733_SYNC_3IS31FL3733_SYNC_NONEThe sync configuration for driver 2
IS31FL3733_SYNC_4IS31FL3733_SYNC_NONEThe sync configuration for driver 3
IS31FL3733_PWM_FREQUENCYIS31FL3733_PWM_FREQUENCY_8K4_HZThe PWM frequency of the LEDs (IS31FL3733B only)
IS31FL3733_SW_PULLUPIS31FL3733_PUR_0_OHMThe SWx pullup resistor value
IS31FL3733_CS_PULLDOWNIS31FL3733_PDR_0_OHMThe CSx pulldown resistor value
IS31FL3733_GLOBAL_CURRENT0xFFThe global current control value

I²C Addressing

The IS31FL3733 has 16 possible 7-bit I²C addresses, depending on how the ADDR1 and ADDR2 pins are connected.

To configure this, set the IS31FL3733_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3733_I2C_ADDRESS_GND_GND0x50
IS31FL3733_I2C_ADDRESS_GND_SCL0x51
IS31FL3733_I2C_ADDRESS_GND_SDA0x52
IS31FL3733_I2C_ADDRESS_GND_VCC0x53
IS31FL3733_I2C_ADDRESS_SCL_GND0x54
IS31FL3733_I2C_ADDRESS_SCL_SCL0x55
IS31FL3733_I2C_ADDRESS_SCL_SDA0x56
IS31FL3733_I2C_ADDRESS_SCL_VCC0x57
IS31FL3733_I2C_ADDRESS_SDA_GND0x58
IS31FL3733_I2C_ADDRESS_SDA_SCL0x59
IS31FL3733_I2C_ADDRESS_SDA_SDA0x5A
IS31FL3733_I2C_ADDRESS_SDA_VCC0x5B
IS31FL3733_I2C_ADDRESS_VCC_GND0x5C
IS31FL3733_I2C_ADDRESS_VCC_SCL0x5D
IS31FL3733_I2C_ADDRESS_VCC_SDA0x5E
IS31FL3733_I2C_ADDRESS_VCC_VCC0x5F

Multi-Driver Synchronization

Multiple IS31FL3733 drivers can be synchronized by connecting the SYNC pins together. One driver must be designated as the "master", and the others configured as "slave".

To do this, set the IS31FL3733_SYNC_n defines accordingly in your config.h, where n denotes the driver index:

DefineValue
IS31FL3733_SYNC_NONENo synchronization
IS31FL3733_SYNC_MASTERDriver configured as master
IS31FL3733_SYNC_SLAVEDriver configured as slave

PWM Frequency

The PWM frequency can be adjusted (for IS31FL3733B only) by adding the following to your config.h:

c
#define IS31FL3733_PWM_FREQUENCY IS31FL3733_PWM_FREQUENCY_8K4_HZ

Valid values are:

DefineFrequency
IS31FL3733_PWM_FREQUENCY_8K4_HZ8.4 kHz (default)
IS31FL3733_PWM_FREQUENCY_4K2_HZ4.2 kHz
IS31FL3733_PWM_FREQUENCY_26K7_HZ26.7 kHz
IS31FL3733_PWM_FREQUENCY_2K1_HZ2.1 kHz
IS31FL3733_PWM_FREQUENCY_1K05_HZ1.05 kHz

De-Ghosting

These settings control the pullup and pulldown resistor values on the SWy and CSx pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 23) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3733_SW_PULLUP IS31FL3733_PUR_0_OHM\n#define IS31FL3733_CS_PULLDOWN IS31FL3733_PUR_0_OHM

Valid values for IS31FL3733_SW_PULLUP are:

DefineResistance
IS31FL3733_PUR_0_OHMNone (default)
IS31FL3733_PUR_0K5_OHM0.5 kΩ
IS31FL3733_PUR_1K_OHM1 kΩ
IS31FL3733_PUR_2K_OHM2 kΩ
IS31FL3733_PUR_4K_OHM4 kΩ
IS31FL3733_PUR_8K_OHM8 kΩ
IS31FL3733_PUR_16K_OHM16 kΩ
IS31FL3733_PUR_32K_OHM32 kΩ

Valid values for IS31FL3733_CS_PULLDOWN are:

DefineResistance
IS31FL3733_PDR_0_OHMNone (default)
IS31FL3733_PDR_0K5_OHM0.5 kΩ
IS31FL3733_PDR_1K_OHM1 kΩ
IS31FL3733_PDR_2K_OHM2 kΩ
IS31FL3733_PDR_4K_OHM4 kΩ
IS31FL3733_PDR_8K_OHM8 kΩ
IS31FL3733_PDR_16K_OHM16 kΩ
IS31FL3733_PDR_32K_OHM32 kΩ

Global Current Control

This setting controls the current sunk by the CSx pins, from 0 to 255. By default, the value is the maximum (255), but if you need to lower it, add the following to your config.h:

c
#define IS31FL3733_GLOBAL_CURRENT 0xFF

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, SW1_CS1,  SW1_CS2,  SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their cathodes connected to the SW1 pin, and their anodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3733_led_t PROGMEM g_is31fl3733_leds[IS31FL3733_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 15, figure 9.

API

struct is31fl3733_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3733_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3733_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3733_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3733_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3733_update_pwm_buffers() after you are finished.

Arguments


void is31fl3733_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3733_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3733_update_pwm_buffers() after you are finished.

Arguments


void is31fl3733_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3733_update_led_control_registers() after you are finished.

Arguments


void is31fl3733_set_led_control_register(uint8_t index, bool value)

Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3733_update_led_control_registers() after you are finished.

Arguments


void is31fl3733_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3733_update_led_control_registers(uint8_t index)

Flush the LED control register values to the LED driver.

Arguments

', 103); diff --git a/assets/drivers_is31fl3733.md.4RLFART3.lean.js b/assets/drivers_is31fl3733.md.D617uo2L.lean.js similarity index 83% rename from assets/drivers_is31fl3733.md.4RLFART3.lean.js rename to assets/drivers_is31fl3733.md.D617uo2L.lean.js index 112d0ce1faa..804c003cbac 100644 --- a/assets/drivers_is31fl3733.md.4RLFART3.lean.js +++ b/assets/drivers_is31fl3733.md.D617uo2L.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3733 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3733.md","filePath":"drivers/is31fl3733.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3733.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 103); diff --git a/assets/drivers_is31fl3736.md.DcvNnQ6u.js b/assets/drivers_is31fl3736.md.DATOjY36.js similarity index 99% rename from assets/drivers_is31fl3736.md.DcvNnQ6u.js rename to assets/drivers_is31fl3736.md.DATOjY36.js index 7a73c68fd3a..d6a08e52fc8 100644 --- a/assets/drivers_is31fl3736.md.DcvNnQ6u.js +++ b/assets/drivers_is31fl3736.md.DATOjY36.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3736 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3736.md","filePath":"drivers/is31fl3736.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3736.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3736 Driver

I²C 12x8 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 96 single-color LEDs, or 32 RGB LEDs.

IS31FL3736 Datasheet

Usage

The IS31FL3736 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3736 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3736-mono.c # For single-color\nSRC += is31fl3736.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3736_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3736_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3736_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3736_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3736_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3736_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3736_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3736_PWM_FREQUENCYIS31FL3736_PWM_FREQUENCY_8K4_HZThe PWM frequency of the LEDs (IS31FL3736B only)
IS31FL3736_SW_PULLUPIS31FL3736_PUR_0_OHMThe SWx pullup resistor value
IS31FL3736_CS_PULLDOWNIS31FL3736_PDR_0_OHMThe CSx pulldown resistor value
IS31FL3736_GLOBAL_CURRENT0xFFThe global current control value

I²C Addressing

The IS31FL3736 has 16 possible 7-bit I²C addresses, depending on how the ADDR1 and ADDR2 pins are connected.

To configure this, set the IS31FL3736_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3736_I2C_ADDRESS_GND_GND0x50
IS31FL3736_I2C_ADDRESS_GND_SCL0x51
IS31FL3736_I2C_ADDRESS_GND_SDA0x52
IS31FL3736_I2C_ADDRESS_GND_VCC0x53
IS31FL3736_I2C_ADDRESS_SCL_GND0x54
IS31FL3736_I2C_ADDRESS_SCL_SCL0x55
IS31FL3736_I2C_ADDRESS_SCL_SDA0x56
IS31FL3736_I2C_ADDRESS_SCL_VCC0x57
IS31FL3736_I2C_ADDRESS_SDA_GND0x58
IS31FL3736_I2C_ADDRESS_SDA_SCL0x59
IS31FL3736_I2C_ADDRESS_SDA_SDA0x5A
IS31FL3736_I2C_ADDRESS_SDA_VCC0x5B
IS31FL3736_I2C_ADDRESS_VCC_GND0x5C
IS31FL3736_I2C_ADDRESS_VCC_SCL0x5D
IS31FL3736_I2C_ADDRESS_VCC_SDA0x5E
IS31FL3736_I2C_ADDRESS_VCC_VCC0x5F

PWM Frequency

The PWM frequency can be adjusted (for IS31FL3736B only) by adding the following to your config.h:

c
#define IS31FL3736_PWM_FREQUENCY IS31FL3736_PWM_FREQUENCY_8K4_HZ

Valid values are:

DefineFrequency
IS31FL3736_PWM_FREQUENCY_8K4_HZ8.4 kHz (default)
IS31FL3736_PWM_FREQUENCY_4K2_HZ4.2 kHz
IS31FL3736_PWM_FREQUENCY_26K7_HZ26.7 kHz
IS31FL3736_PWM_FREQUENCY_2K1_HZ2.1 kHz
IS31FL3736_PWM_FREQUENCY_1K05_HZ1.05 kHz

De-Ghosting

These settings control the pullup and pulldown resistor values on the SWy and CSx pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 25) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3736_SW_PULLUP IS31FL3736_PUR_0_OHM\n#define IS31FL3736_CS_PULLDOWN IS31FL3736_PDR_0_OHM

Valid values for IS31FL3736_SW_PULLUP are:

DefineResistance
IS31FL3736_PUR_0_OHMNone (default)
IS31FL3736_PUR_0K5_OHM0.5 kΩ
IS31FL3736_PUR_1K_OHM1 kΩ
IS31FL3736_PUR_2K_OHM2 kΩ
IS31FL3736_PUR_4K_OHM4 kΩ
IS31FL3736_PUR_8K_OHM8 kΩ
IS31FL3736_PUR_16K_OHM16 kΩ
IS31FL3736_PUR_32K_OHM32 kΩ

Valid values for IS31FL3736_CS_PULLDOWN are:

DefineResistance
IS31FL3736_PDR_0_OHMNone (default)
IS31FL3736_PDR_0K5_OHM0.5 kΩ
IS31FL3736_PDR_1K_OHM1 kΩ
IS31FL3736_PDR_2K_OHM2 kΩ
IS31FL3736_PDR_4K_OHM4 kΩ
IS31FL3736_PDR_8K_OHM8 kΩ
IS31FL3736_PDR_16K_OHM16 kΩ
IS31FL3736_PDR_32K_OHM32 kΩ

Global Current Control

This setting controls the current sunk by the CSx pins, from 0 to 255. By default, the value is the maximum (255), but if you need to lower it, add the following to your config.h:

c
#define IS31FL3736_GLOBAL_CURRENT 0xFF

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3736_led_t PROGMEM g_is31fl3736_leds[IS31FL3736_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, SW1_CS1,  SW1_CS2,  SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their cathodes connected to the SW1 pin, and their anodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3736_led_t PROGMEM g_is31fl3736_leds[IS31FL3736_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 16, figure 9.

API

struct is31fl3736_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3736_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3736_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3736_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3736_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3736_update_pwm_buffers() after you are finished.

Arguments


void is31fl3736_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3736_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3736_update_pwm_buffers() after you are finished.

Arguments


void is31fl3736_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3736_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3736_update_led_control_registers() after you are finished.

Arguments


void is31fl3736_set_led_control_register(uint8_t index, bool value)

Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3736_update_led_control_registers() after you are finished.

Arguments


void is31fl3736_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3736_update_led_control_registers(uint8_t index)

Flush the LED control register values to the LED driver.

Arguments

', 99); diff --git a/assets/drivers_is31fl3736.md.DcvNnQ6u.lean.js b/assets/drivers_is31fl3736.md.DATOjY36.lean.js similarity index 83% rename from assets/drivers_is31fl3736.md.DcvNnQ6u.lean.js rename to assets/drivers_is31fl3736.md.DATOjY36.lean.js index 37da23a86f5..fa299536f11 100644 --- a/assets/drivers_is31fl3736.md.DcvNnQ6u.lean.js +++ b/assets/drivers_is31fl3736.md.DATOjY36.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3736 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3736.md","filePath":"drivers/is31fl3736.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3736.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 99); diff --git a/assets/drivers_is31fl3737.md.SB4-0r24.js b/assets/drivers_is31fl3737.md.Cs3UsMas.js similarity index 99% rename from assets/drivers_is31fl3737.md.SB4-0r24.js rename to assets/drivers_is31fl3737.md.Cs3UsMas.js index 24009ce7209..61dc33873c4 100644 --- a/assets/drivers_is31fl3737.md.SB4-0r24.js +++ b/assets/drivers_is31fl3737.md.Cs3UsMas.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3737 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3737.md","filePath":"drivers/is31fl3737.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3737.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3737 Driver

I²C 12x12 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 144 single-color LEDs, or 48 RGB LEDs.

IS31FL3737 Datasheet

Usage

The IS31FL3737 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3737 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3737-mono.c # For single-color\nSRC += is31fl3737.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3737_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3737_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3737_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3737_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3737_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3737_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3737_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3737_PWM_FREQUENCYIS31FL3737_PWM_FREQUENCY_8K4_HZThe PWM frequency of the LEDs (IS31FL3737B only)
IS31FL3737_SW_PULLUPIS31FL3737_PUR_0_OHMThe SWx pullup resistor value
IS31FL3737_CS_PULLDOWNIS31FL3737_PDR_0_OHMThe CSx pulldown resistor value
IS31FL3737_GLOBAL_CURRENT0xFFThe global current control value

I²C Addressing

The IS31FL3737 has four possible 7-bit I²C addresses, depending on how the ADDR pin is connected.

To configure this, set the IS31FL3737_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3737_I2C_ADDRESS_GND0x50
IS31FL3737_I2C_ADDRESS_SCL0x55
IS31FL3737_I2C_ADDRESS_SDA0x5A
IS31FL3737_I2C_ADDRESS_VCC0x5F

PWM Frequency

The PWM frequency can be adjusted (for IS31FL3737B only) by adding the following to your config.h:

c
#define IS31FL3737_PWM_FREQUENCY IS31FL3737_PWM_FREQUENCY_8K4_HZ

Valid values are:

DefineFrequency
IS31FL3737_PWM_FREQUENCY_8K4_HZ8.4 kHz (default)
IS31FL3737_PWM_FREQUENCY_4K2_HZ4.2 kHz
IS31FL3737_PWM_FREQUENCY_26K7_HZ26.7 kHz
IS31FL3737_PWM_FREQUENCY_2K1_HZ2.1 kHz
IS31FL3737_PWM_FREQUENCY_1K05_HZ1.05 kHz

De-Ghosting

These settings control the pullup and pulldown resistor values on the SWy and CSx pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 23) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3737_SW_PULLUP IS31FL3737_PUR_0_OHM\n#define IS31FL3737_CS_PULLDOWN IS31FL3737_PDR_0_OHM

Valid values for IS31FL3737_SW_PULLUP are:

DefineResistance
IS31FL3737_PUR_0_OHMNone (default)
IS31FL3737_PUR_0K5_OHM0.5 kΩ
IS31FL3737_PUR_1K_OHM1 kΩ
IS31FL3737_PUR_2K_OHM2 kΩ
IS31FL3737_PUR_4K_OHM4 kΩ
IS31FL3737_PUR_8K_OHM8 kΩ
IS31FL3737_PUR_16K_OHM16 kΩ
IS31FL3737_PUR_32K_OHM32 kΩ

Valid values for IS31FL3737_CS_PULLDOWN are:

DefineResistance
IS31FL3737_PDR_0_OHMNone (default)
IS31FL3737_PDR_0K5_OHM0.5 kΩ
IS31FL3737_PDR_1K_OHM1 kΩ
IS31FL3737_PDR_2K_OHM2 kΩ
IS31FL3737_PDR_4K_OHM4 kΩ
IS31FL3737_PDR_8K_OHM8 kΩ
IS31FL3737_PDR_16K_OHM16 kΩ
IS31FL3737_PDR_32K_OHM32 kΩ

Global Current Control

This setting controls the current sunk by the CSx pins, from 0 to 255. By default, the value is the maximum (255), but if you need to lower it, add the following to your config.h:

c
#define IS31FL3737_GLOBAL_CURRENT 0xFF

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3737_led_t PROGMEM g_is31fl3737_leds[IS31FL3737_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, SW1_CS1,  SW1_CS2,  SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their cathodes connected to the SW1 pin, and their anodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3737_led_t PROGMEM g_is31fl3737_leds[IS31FL3737_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 15, figure 9.

API

struct is31fl3737_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3737_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3737_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3737_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3737_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3737_update_pwm_buffers() after you are finished.

Arguments


void is31fl3737_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3737_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3737_update_pwm_buffers() after you are finished.

Arguments


void is31fl3737_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3737_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3737_update_led_control_registers() after you are finished.

Arguments


void is31fl3737_set_led_control_register(uint8_t index, bool value)

Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3737_update_led_control_registers() after you are finished.

Arguments


void is31fl3737_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3737_update_led_control_registers(uint8_t index)

Flush the LED control register values to the LED driver.

Arguments

', 99); diff --git a/assets/drivers_is31fl3737.md.SB4-0r24.lean.js b/assets/drivers_is31fl3737.md.Cs3UsMas.lean.js similarity index 83% rename from assets/drivers_is31fl3737.md.SB4-0r24.lean.js rename to assets/drivers_is31fl3737.md.Cs3UsMas.lean.js index 97b898321b7..836b9b1f246 100644 --- a/assets/drivers_is31fl3737.md.SB4-0r24.lean.js +++ b/assets/drivers_is31fl3737.md.Cs3UsMas.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3737 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3737.md","filePath":"drivers/is31fl3737.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3737.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 99); diff --git a/assets/drivers_is31fl3741.md.BnjAjZj1.js b/assets/drivers_is31fl3741.md.CuFeaQg_.js similarity index 99% rename from assets/drivers_is31fl3741.md.BnjAjZj1.js rename to assets/drivers_is31fl3741.md.CuFeaQg_.js index a8c1ba83ae4..01bb4c072f0 100644 --- a/assets/drivers_is31fl3741.md.BnjAjZj1.js +++ b/assets/drivers_is31fl3741.md.CuFeaQg_.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3741 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3741.md","filePath":"drivers/is31fl3741.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3741.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3741 Driver

I²C 39x9 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 351 single-color LEDs, or 117 RGB LEDs.

IS31FL3741A Datasheet

Usage

The IS31FL3741 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3741 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3741-mono.c # For single-color\nSRC += is31fl3741.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3741_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3741_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3741_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3741_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3741_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3741_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3741_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3741_CONFIGURATION1The value of the configuration register
IS31FL3741_PWM_FREQUENCYIS31FL3741_PWM_FREQUENCY_29K_HZThe PWM frequency of the LEDs (IS31FL3741A only)
IS31FL3741_SW_PULLUPIS31FL3741_PUR_32K_OHMThe SWx pullup resistor value
IS31FL3741_CS_PULLDOWNIS31FL3741_PDR_32K_OHMThe CSx pulldown resistor value
IS31FL3741_GLOBAL_CURRENT0xFFThe global current control value

I²C Addressing

The IS31FL3741 has four possible 7-bit I²C addresses, depending on how the ADDR pin is connected.

To configure this, set the IS31FL3741_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3741_I2C_ADDRESS_GND0x30
IS31FL3741_I2C_ADDRESS_SCL0x31
IS31FL3741_I2C_ADDRESS_SDA0x32
IS31FL3741_I2C_ADDRESS_VCC0x33

PWM Frequency

The PWM frequency can be adjusted (for IS31FL3741A only) by adding the following to your config.h:

c
#define IS31FL3741_PWM_FREQUENCY IS31FL3741_PWM_FREQUENCY_29K_HZ

Valid values are:

DefineFrequency
IS31FL3741_PWM_FREQUENCY_29K_HZ29 kHz (default)
IS31FL3741_PWM_FREQUENCY_3K6_HZ3.6 kHz
IS31FL3741_PWM_FREQUENCY_1K8_HZ1.8 kHz
IS31FL3741_PWM_FREQUENCY_900_HZ900 Hz

De-Ghosting

These settings control the pullup and pulldown resistor values on the CSx and SWy pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 18) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3741_SW_PULLUP IS31FL3741_PUR_32K_OHM\n#define IS31FL3741_CS_PULLDOWN IS31FL3741_PDR_32K_OHM

Valid values for IS31FL3741_SW_PULLUP are:

DefineResistance
IS31FL3741_PUR_0_OHMNone
IS31FL3741_PUR_0K5_OHM0.5 kΩ
IS31FL3741_PUR_1K_OHM1 kΩ
IS31FL3741_PUR_2K_OHM2 kΩ
IS31FL3741_PUR_4K_OHM4 kΩ
IS31FL3741_PUR_8K_OHM8 kΩ
IS31FL3741_PUR_16K_OHM16 kΩ
IS31FL3741_PUR_32K_OHM32 kΩ (default)

Valid values for IS31FL3741_CS_PULLDOWN are:

DefineResistance
IS31FL3741_PDR_0_OHMNone
IS31FL3741_PDR_0K5_OHM0.5 kΩ
IS31FL3741_PDR_1K_OHM1 kΩ
IS31FL3741_PDR_2K_OHM2 kΩ
IS31FL3741_PDR_4K_OHM4 kΩ
IS31FL3741_PDR_8K_OHM8 kΩ
IS31FL3741_PDR_16K_OHM16 kΩ
IS31FL3741_PDR_32K_OHM32 kΩ (default)

Global Current Control

This setting controls the current sunk by the CSx pins, from 0 to 255. By default, the value is the maximum (255), but if you need to lower it, add the following to your config.h:

c
#define IS31FL3741_GLOBAL_CURRENT 0xFF

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, SW1_CS1,  SW1_CS2,  SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their anodes connected to the SW1 pin, and their cathodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3741_led_t PROGMEM g_is31fl3741_leds[IS31FL3741_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 12, figure 8.

API

struct is31fl3741_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3741_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3741_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3741_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3741_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3741_update_pwm_buffers() after you are finished.

Arguments


void is31fl3741_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3741_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3741_update_pwm_buffers() after you are finished.

Arguments


void is31fl3741_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3741_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3741_update_led_control_registers() after you are finished.

Arguments


void is31fl3741_set_led_control_register(uint8_t index, bool value)

Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3741_update_led_control_registers() after you are finished.

Arguments


void is31fl3741_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3741_update_led_control_registers(uint8_t index)

Flush the LED control register values to the LED driver.

Arguments

', 99); diff --git a/assets/drivers_is31fl3741.md.BnjAjZj1.lean.js b/assets/drivers_is31fl3741.md.CuFeaQg_.lean.js similarity index 83% rename from assets/drivers_is31fl3741.md.BnjAjZj1.lean.js rename to assets/drivers_is31fl3741.md.CuFeaQg_.lean.js index 810ee97d4d9..761b3b60c50 100644 --- a/assets/drivers_is31fl3741.md.BnjAjZj1.lean.js +++ b/assets/drivers_is31fl3741.md.CuFeaQg_.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3741 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3741.md","filePath":"drivers/is31fl3741.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3741.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 99); diff --git a/assets/drivers_is31fl3742a.md.DVxwQ0u0.js b/assets/drivers_is31fl3742a.md.r_1D4OlQ.js similarity index 99% rename from assets/drivers_is31fl3742a.md.DVxwQ0u0.js rename to assets/drivers_is31fl3742a.md.r_1D4OlQ.js index ff7e7e2ec9f..6a5e381abb5 100644 --- a/assets/drivers_is31fl3742a.md.DVxwQ0u0.js +++ b/assets/drivers_is31fl3742a.md.r_1D4OlQ.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3742A Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3742a.md","filePath":"drivers/is31fl3742a.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3742a.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3742A Driver

I²C 30x6 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 180 single-color LEDs, or 60 RGB LEDs.

IS31FL3742A Datasheet

Usage

The IS31FL3742A driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3742a driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3742a-mono.c # For single-color\nSRC += is31fl3742a.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3742A_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3742A_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3742A_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3742A_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3742A_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3742A_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3742A_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3742A_CONFIGURATION0x31The value of the configuration register
IS31FL3742A_PWM_FREQUENCYIS31FL3742A_PWM_FREQUENCY_29K_HZThe PWM frequency of the LEDs
IS31FL3742A_SW_PULLDOWNIS31FL3742A_PDR_8K_OHMThe SWx pulldown resistor value
IS31FL3742A_CS_PULLUPIS31FL3742A_PUR_8K_OHMThe CSx pullup resistor value
IS31FL3742A_GLOBAL_CURRENT0xFFThe global current control value

I²C Addressing

The IS31FL3742A has four possible 7-bit I²C addresses, depending on how the ADDR pin is connected.

To configure this, set the IS31FL3742A_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3742A_I2C_ADDRESS_GND0x30
IS31FL3742A_I2C_ADDRESS_SCL0x31
IS31FL3742A_I2C_ADDRESS_SDA0x32
IS31FL3742A_I2C_ADDRESS_VCC0x33

PWM Frequency

The PWM frequency can be adjusted by adding the following to your config.h:

c
#define IS31FL3742A_PWM_FREQUENCY IS31FL3742A_PWM_FREQUENCY_29K_HZ

Valid values are:

DefineFrequency
IS31FL3742A_PWM_FREQUENCY_29K_HZ29 kHz (default)
IS31FL3742A_PWM_FREQUENCY_3K6_HZ3.6 kHz
IS31FL3742A_PWM_FREQUENCY_1K8_HZ1.8 kHz
IS31FL3742A_PWM_FREQUENCY_900_HZ900 Hz

De-Ghosting

These settings control the pulldown and pullup resistor values on the SWy and CSx pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 23) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3742A_SW_PULLDOWN IS31FL3742A_PDR_8K_OHM\n#define IS31FL3742A_CS_PULLUP IS31FL3742A_PUR_8K_OHM

Valid values for IS31FL3742A_SW_PULLDOWN are:

DefineResistance
IS31FL3742A_PDR_0_OHMNone
IS31FL3742A_PDR_0K5_OHM0.5 kΩ
IS31FL3742A_PDR_1K_OHM1 kΩ
IS31FL3742A_PDR_2K_OHM2 kΩ
IS31FL3742A_PDR_4K_OHM4 kΩ
IS31FL3742A_PDR_8K_OHM8 kΩ (default)
IS31FL3742A_PDR_16K_OHM16 kΩ
IS31FL3742A_PDR_32K_OHM32 kΩ

Valid values for IS31FL3742A_CS_PULLUP are:

DefineResistance
IS31FL3742A_PUR_0_OHMNone
IS31FL3742A_PUR_0K5_OHM0.5 kΩ
IS31FL3742A_PUR_1K_OHM1 kΩ
IS31FL3742A_PUR_2K_OHM2 kΩ
IS31FL3742A_PUR_4K_OHM4 kΩ
IS31FL3742A_PUR_8K_OHM8 kΩ (default)
IS31FL3742A_PUR_16K_OHM16 kΩ
IS31FL3742A_PUR_32K_OHM32 kΩ

Global Current Control

This setting controls the current sunk by the CSx pins, from 0 to 255. By default, the value is the maximum (255), but if you need to lower it, add the following to your config.h:

c
#define IS31FL3742A_GLOBAL_CURRENT 0xFF

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3742a_led_t PROGMEM g_is31fl3742a_leds[IS31FL3742A_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, SW1_CS1,  SW1_CS2,  SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their anodes connected to the SW1 pin, and their cathodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3742a_led_t PROGMEM g_is31fl3742a_leds[IS31FL3742A_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 12, figure 8.

API

struct is31fl3742a_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3742a_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3742a_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3742a_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3742a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3742a_update_pwm_buffers() after you are finished.

Arguments


void is31fl3742a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3742a_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3742a_update_pwm_buffers() after you are finished.

Arguments


void is31fl3742a_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3742a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3742a_update_scaling_registers() after you are finished.

Arguments


void is31fl3742a_set_scaling_register(uint8_t index, uint8_t value)

Configure the scaling register for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3742a_update_scaling_registers() after you are finished.

Arguments


void is31fl3742a_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3742a_update_scaling_registers(uint8_t index)

Flush the scaling register values to the LED driver.

Arguments

', 99); diff --git a/assets/drivers_is31fl3742a.md.DVxwQ0u0.lean.js b/assets/drivers_is31fl3742a.md.r_1D4OlQ.lean.js similarity index 83% rename from assets/drivers_is31fl3742a.md.DVxwQ0u0.lean.js rename to assets/drivers_is31fl3742a.md.r_1D4OlQ.lean.js index e60600dabff..04f7ed5e4b4 100644 --- a/assets/drivers_is31fl3742a.md.DVxwQ0u0.lean.js +++ b/assets/drivers_is31fl3742a.md.r_1D4OlQ.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3742A Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3742a.md","filePath":"drivers/is31fl3742a.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3742a.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 99); diff --git a/assets/drivers_is31fl3743a.md.Fzps0fLE.js b/assets/drivers_is31fl3743a.md.DJJn0Aca.js similarity index 99% rename from assets/drivers_is31fl3743a.md.Fzps0fLE.js rename to assets/drivers_is31fl3743a.md.DJJn0Aca.js index 950c411c3c0..d61975ef267 100644 --- a/assets/drivers_is31fl3743a.md.Fzps0fLE.js +++ b/assets/drivers_is31fl3743a.md.DJJn0Aca.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3743A Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3743a.md","filePath":"drivers/is31fl3743a.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3743a.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3743A Driver

I²C 18x11 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 198 single-color LEDs, or 66 RGB LEDs.

IS31FL3743A Datasheet

Usage

The IS31FL3743A driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3743a driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3743a-mono.c # For single-color\nSRC += is31fl3743a.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3743A_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3743A_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3743A_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3743A_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3743A_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3743A_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3743A_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3743A_SYNC_1IS31FL3743A_SYNC_NONEThe sync configuration for driver 0
IS31FL3743A_SYNC_2IS31FL3743A_SYNC_NONEThe sync configuration for driver 1
IS31FL3743A_SYNC_3IS31FL3743A_SYNC_NONEThe sync configuration for driver 2
IS31FL3743A_SYNC_4IS31FL3743A_SYNC_NONEThe sync configuration for driver 3
IS31FL3743A_CONFIGURATION0x01The value of the configuration register
IS31FL3743A_SW_PULLDOWNIS31FL3743A_PDR_2K_OHM_SW_OFFThe SWx pulldown resistor value
IS31FL3743A_CS_PULLUPIS31FL3743A_PUR_2K_OHM_CS_OFFThe CSx pullup resistor value
IS31FL3743A_GLOBAL_CURRENT0xFFThe global current control value

I²C Addressing

The IS31FL3743A has 16 possible 7-bit I²C addresses, depending on how the ADDR1 and ADDR2 pins are connected.

To configure this, set the IS31FL3743A_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3743A_I2C_ADDRESS_GND_GND0x20
IS31FL3743A_I2C_ADDRESS_GND_SCL0x21
IS31FL3743A_I2C_ADDRESS_GND_SDA0x22
IS31FL3743A_I2C_ADDRESS_GND_VCC0x23
IS31FL3743A_I2C_ADDRESS_SCL_GND0x24
IS31FL3743A_I2C_ADDRESS_SCL_SCL0x25
IS31FL3743A_I2C_ADDRESS_SCL_SDA0x26
IS31FL3743A_I2C_ADDRESS_SCL_VCC0x27
IS31FL3743A_I2C_ADDRESS_SDA_GND0x28
IS31FL3743A_I2C_ADDRESS_SDA_SCL0x29
IS31FL3743A_I2C_ADDRESS_SDA_SDA0x2A
IS31FL3743A_I2C_ADDRESS_SDA_VCC0x2B
IS31FL3743A_I2C_ADDRESS_VCC_GND0x2C
IS31FL3743A_I2C_ADDRESS_VCC_SCL0x2D
IS31FL3743A_I2C_ADDRESS_VCC_SDA0x2E
IS31FL3743A_I2C_ADDRESS_VCC_VCC0x2F

Multi-Driver Synchronization

Multiple IS31FL3743A drivers can be synchronized by connecting the SYNC pins together. One driver must be designated as the "master", and the others configured as "slave".

To do this, set the IS31FL3743A_SYNC_n defines accordingly in your config.h, where n denotes the driver index:

DefineValue
IS31FL3743A_SYNC_NONENo synchronization
IS31FL3743A_SYNC_MASTERDriver configured as master
IS31FL3743A_SYNC_SLAVEDriver configured as slave

De-Ghosting

These settings control the pulldown and pullup resistor values on the SWy and CSx pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 23) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3743A_SW_PULLDOWN IS31FL3743A_PDR_2K_OHM_SW_OFF\n#define IS31FL3743A_CS_PULLUP IS31FL3743A_PUR_2K_OHM_CS_OFF

Valid values for IS31FL3743A_SW_PULLDOWN are:

DefineResistance
IS31FL3743A_PDR_0_OHMNone (default)
IS31FL3743A_PDR_0K5_OHM_SW_OFF0.5 kΩ in SWx off time
IS31FL3743A_PDR_1K_OHM_SW_OFF1 kΩ in SWx off time
IS31FL3743A_PDR_2K_OHM_SW_OFF2 kΩ in SWx off time (default)
IS31FL3743A_PDR_1K_OHM1 kΩ
IS31FL3743A_PDR_2K_OHM2 kΩ
IS31FL3743A_PDR_4K_OHM4 kΩ
IS31FL3743A_PDR_8K_OHM8 kΩ

Valid values for IS31FL3743A_CS_PULLUP are:

DefineResistance
IS31FL3743A_PUR_0_OHMNone (default)
IS31FL3743A_PUR_0K5_OHM_CS_OFF0.5 kΩ in CSy off time
IS31FL3743A_PUR_1K_OHM_CS_OFF1 kΩ in CSy off time
IS31FL3743A_PUR_2K_OHM_CS_OFF2 kΩ in CSy off time (default)
IS31FL3743A_PUR_1K_OHM1 kΩ
IS31FL3743A_PUR_2K_OHM2 kΩ
IS31FL3743A_PUR_4K_OHM4 kΩ
IS31FL3743A_PUR_8K_OHM8 kΩ

Global Current Control

This setting controls the current sunk by the CSy pins, from 0 to 255. By default, the value is the maximum (255), but if you need to lower it, add the following to your config.h:

c
#define IS31FL3743A_GLOBAL_CURRENT 0xFF

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3743a_led_t PROGMEM g_is31fl3743a_leds[IS31FL3743A_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, SW1_CS1,  SW1_CS2,  SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their anodes connected to the SW1 pin, and their cathodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3743a_led_t PROGMEM g_is31fl3743a_leds[IS31FL3743A_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 12, figure 8.

API

struct is31fl3743a_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3743a_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3743a_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3743a_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3743a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3743a_update_pwm_buffers() after you are finished.

Arguments


void is31fl3743a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3743a_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3743a_update_pwm_buffers() after you are finished.

Arguments


void is31fl3743a_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3743a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3743a_update_scaling_registers() after you are finished.

Arguments


void is31fl3743a_set_scaling_register(uint8_t index, uint8_t value)

Configure the scaling register for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3743a_update_scaling_registers() after you are finished.

Arguments


void is31fl3743a_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3743a_update_scaling_registers(uint8_t index)

Flush the scaling register values to the LED driver.

Arguments

', 98); diff --git a/assets/drivers_is31fl3743a.md.Fzps0fLE.lean.js b/assets/drivers_is31fl3743a.md.DJJn0Aca.lean.js similarity index 83% rename from assets/drivers_is31fl3743a.md.Fzps0fLE.lean.js rename to assets/drivers_is31fl3743a.md.DJJn0Aca.lean.js index 331b4db1aa4..d595834e8dd 100644 --- a/assets/drivers_is31fl3743a.md.Fzps0fLE.lean.js +++ b/assets/drivers_is31fl3743a.md.DJJn0Aca.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3743A Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3743a.md","filePath":"drivers/is31fl3743a.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3743a.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 98); diff --git a/assets/drivers_is31fl3745.md.Bub6KcD5.js b/assets/drivers_is31fl3745.md.sA12j7Er.js similarity index 99% rename from assets/drivers_is31fl3745.md.Bub6KcD5.js rename to assets/drivers_is31fl3745.md.sA12j7Er.js index fd71bdab267..95ff4eb0e31 100644 --- a/assets/drivers_is31fl3745.md.Bub6KcD5.js +++ b/assets/drivers_is31fl3745.md.sA12j7Er.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3745 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3745.md","filePath":"drivers/is31fl3745.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3745.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3745 Driver

I²C 18x8 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 144 single-color LEDs, or 48 RGB LEDs.

IS31FL3745 Datasheet

Usage

The IS31FL3745 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3745 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3745-mono.c # For single-color\nSRC += is31fl3745.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3745_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3745_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3745_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3745_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3745_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3745_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3745_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3745_SYNC_1IS31FL3745_SYNC_NONEThe sync configuration for driver 0
IS31FL3745_SYNC_2IS31FL3745_SYNC_NONEThe sync configuration for driver 1
IS31FL3745_SYNC_3IS31FL3745_SYNC_NONEThe sync configuration for driver 2
IS31FL3745_SYNC_4IS31FL3745_SYNC_NONEThe sync configuration for driver 3
IS31FL3745_CONFIGURATION0x31The value of the configuration register
IS31FL3745_SW_PULLDOWNIS31FL3745_PDR_2K_OHM_SW_OFFThe SWx pulldown resistor value
IS31FL3745_CS_PULLUPIS31FL3745_PUR_2K_OHM_CS_OFFThe CSx pullup resistor value
IS31FL3745_GLOBAL_CURRENT0xFFThe global current control value

I²C Addressing

The IS31FL3745 has 16 possible 7-bit I²C addresses, depending on how the ADDR1 and ADDR2 pins are connected.

To configure this, set the IS31FL3745_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3745_I2C_ADDRESS_GND_GND0x20
IS31FL3745_I2C_ADDRESS_GND_SCL0x21
IS31FL3745_I2C_ADDRESS_GND_SDA0x22
IS31FL3745_I2C_ADDRESS_GND_VCC0x23
IS31FL3745_I2C_ADDRESS_SCL_GND0x24
IS31FL3745_I2C_ADDRESS_SCL_SCL0x25
IS31FL3745_I2C_ADDRESS_SCL_SDA0x26
IS31FL3745_I2C_ADDRESS_SCL_VCC0x27
IS31FL3745_I2C_ADDRESS_SDA_GND0x28
IS31FL3745_I2C_ADDRESS_SDA_SCL0x29
IS31FL3745_I2C_ADDRESS_SDA_SDA0x2A
IS31FL3745_I2C_ADDRESS_SDA_VCC0x2B
IS31FL3745_I2C_ADDRESS_VCC_GND0x2C
IS31FL3745_I2C_ADDRESS_VCC_SCL0x2D
IS31FL3745_I2C_ADDRESS_VCC_SDA0x2E
IS31FL3745_I2C_ADDRESS_VCC_VCC0x2F

Multi-Driver Synchronization

Multiple IS31FL3745 drivers can be synchronized by connecting the SYNC pins together. One driver must be designated as the "master", and the others configured as "slave".

To do this, set the IS31FL3745_SYNC_n defines accordingly in your config.h, where n denotes the driver index:

DefineValue
IS31FL3745_SYNC_NONENo synchronization
IS31FL3745_SYNC_MASTERDriver configured as master
IS31FL3745_SYNC_SLAVEDriver configured as slave

De-Ghosting

These settings control the pulldown and pullup resistor values on the SWy and CSx pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 23) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3745_SW_PULLDOWN IS31FL3745_PDR_2K_OHM_SW_OFF\n#define IS31FL3745_CS_PULLUP IS31FL3745_PUR_2K_OHM_CS_OFF

Valid values for IS31FL3745_SW_PULLDOWN are:

DefineResistance
IS31FL3745_PDR_0_OHMNone (default)
IS31FL3745_PDR_0K5_OHM_SW_OFF0.5 kΩ in SWx off time
IS31FL3745_PDR_1K_OHM_SW_OFF1 kΩ in SWx off time
IS31FL3745_PDR_2K_OHM_SW_OFF2 kΩ in SWx off time (default)
IS31FL3745_PDR_1K_OHM1 kΩ
IS31FL3745_PDR_2K_OHM2 kΩ
IS31FL3745_PDR_4K_OHM4 kΩ
IS31FL3745_PDR_8K_OHM8 kΩ

Valid values for IS31FL3745_CS_PULLUP are:

DefineResistance
IS31FL3745_PUR_0_OHMNone (default)
IS31FL3745_PUR_0K5_OHM_CS_OFF0.5 kΩ in CSy off time
IS31FL3745_PUR_1K_OHM_CS_OFF1 kΩ in CSy off time
IS31FL3745_PUR_2K_OHM_CS_OFF2 kΩ in CSy off time (default)
IS31FL3745_PUR_1K_OHM1 kΩ
IS31FL3745_PUR_2K_OHM2 kΩ
IS31FL3745_PUR_4K_OHM4 kΩ
IS31FL3745_PUR_8K_OHM8 kΩ

Global Current Control

This setting controls the current sunk by the CSy pins, from 0 to 255. By default, the value is the maximum (255), but if you need to lower it, add the following to your config.h:

c
#define IS31FL3745_GLOBAL_CURRENT 0xFF

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3745_led_t PROGMEM g_is31fl3745_leds[IS31FL3745_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, SW1_CS1,  SW1_CS2,  SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their anodes connected to the SW1 pin, and their cathodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3745_led_t PROGMEM g_is31fl3745_leds[IS31FL3745_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 12, figure 9.

API

struct is31fl3745_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3745_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3745_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3745_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3745_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3745_update_pwm_buffers() after you are finished.

Arguments


void is31fl3745_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3745_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3745_update_pwm_buffers() after you are finished.

Arguments


void is31fl3745_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3745_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3745_update_scaling_registers() after you are finished.

Arguments


void is31fl3745_set_scaling_register(uint8_t index, uint8_t value)

Configure the scaling register for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3745_update_scaling_registers() after you are finished.

Arguments


void is31fl3745_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3745_update_scaling_registers(uint8_t index)

Flush the scaling register values to the LED driver.

Arguments

', 98); diff --git a/assets/drivers_is31fl3745.md.Bub6KcD5.lean.js b/assets/drivers_is31fl3745.md.sA12j7Er.lean.js similarity index 83% rename from assets/drivers_is31fl3745.md.Bub6KcD5.lean.js rename to assets/drivers_is31fl3745.md.sA12j7Er.lean.js index e4577316599..abaf72f6055 100644 --- a/assets/drivers_is31fl3745.md.Bub6KcD5.lean.js +++ b/assets/drivers_is31fl3745.md.sA12j7Er.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3745 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3745.md","filePath":"drivers/is31fl3745.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3745.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 98); diff --git a/assets/drivers_is31fl3746a.md.CupewbNN.js b/assets/drivers_is31fl3746a.md.CCGFqsIg.js similarity index 99% rename from assets/drivers_is31fl3746a.md.CupewbNN.js rename to assets/drivers_is31fl3746a.md.CCGFqsIg.js index 6696d0b9a67..c7ae339ad77 100644 --- a/assets/drivers_is31fl3746a.md.CupewbNN.js +++ b/assets/drivers_is31fl3746a.md.CCGFqsIg.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3746A Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3746a.md","filePath":"drivers/is31fl3746a.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3746a.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

IS31FL3746A Driver

I²C 18x4 LED matrix driver by Lumissil. Supports a maximum of four drivers, each controlling up to 72 single-color LEDs, or 24 RGB LEDs.

IS31FL3746A Datasheet

Usage

The IS31FL3746A driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the is31fl3746a driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led/issi\nSRC += is31fl3746a-mono.c # For single-color\nSRC += is31fl3746a.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
IS31FL3746A_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
IS31FL3746A_I2C_TIMEOUT100The I²C timeout in milliseconds
IS31FL3746A_I2C_PERSISTENCE0The number of times to retry I²C transmissions
IS31FL3746A_I2C_ADDRESS_1Not definedThe I²C address of driver 0
IS31FL3746A_I2C_ADDRESS_2Not definedThe I²C address of driver 1
IS31FL3746A_I2C_ADDRESS_3Not definedThe I²C address of driver 2
IS31FL3746A_I2C_ADDRESS_4Not definedThe I²C address of driver 3
IS31FL3746A_CONFIGURATION0x01The value of the configuration register
IS31FL3746A_PWM_FREQUENCYIS31FL3746A_PWM_FREQUENCY_29K_HZThe PWM frequency of the LEDs
IS31FL3746A_SW_PULLDOWNIS31FL3746A_PDR_2K_OHM_SW_OFFThe SWx pulldown resistor value
IS31FL3746A_CS_PULLUPIS31FL3746A_PUR_2K_OHM_CS_OFFThe CSx pullup resistor value
IS31FL3746A_GLOBAL_CURRENT0xFFThe global current control value

I²C Addressing

The IS31FL3746A has 16 possible 7-bit I²C addresses, depending on how the ADDR1 and ADDR2 pins are connected.

To configure this, set the IS31FL3746A_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
IS31FL3746A_I2C_ADDRESS_GND_GND0x60
IS31FL3746A_I2C_ADDRESS_GND_SCL0x61
IS31FL3746A_I2C_ADDRESS_GND_SDA0x62
IS31FL3746A_I2C_ADDRESS_GND_VCC0x63
IS31FL3746A_I2C_ADDRESS_SCL_GND0x64
IS31FL3746A_I2C_ADDRESS_SCL_SCL0x65
IS31FL3746A_I2C_ADDRESS_SCL_SDA0x66
IS31FL3746A_I2C_ADDRESS_SCL_VCC0x67
IS31FL3746A_I2C_ADDRESS_SDA_GND0x68
IS31FL3746A_I2C_ADDRESS_SDA_SCL0x69
IS31FL3746A_I2C_ADDRESS_SDA_SDA0x6A
IS31FL3746A_I2C_ADDRESS_SDA_VCC0x6B
IS31FL3746A_I2C_ADDRESS_VCC_GND0x6C
IS31FL3746A_I2C_ADDRESS_VCC_SCL0x6D
IS31FL3746A_I2C_ADDRESS_VCC_SDA0x6E
IS31FL3746A_I2C_ADDRESS_VCC_VCC0x6F

PWM Frequency

The PWM frequency can be adjusted by adding the following to your config.h:

c
#define IS31FL3746A_PWM_FREQUENCY IS31FL3746A_PWM_FREQUENCY_29K_HZ

Valid values are:

DefineFrequency
IS31FL3746A_PWM_FREQUENCY_29K_HZ29 kHz (default)
IS31FL3746A_PWM_FREQUENCY_14K5_HZ14.5 kHz
IS31FL3746A_PWM_FREQUENCY_7K25_HZ7.25 kHz
IS31FL3746A_PWM_FREQUENCY_3K63_HZ3.63 kHz
IS31FL3746A_PWM_FREQUENCY_1K81_HZ1.81 kHz
IS31FL3746A_PWM_FREQUENCY_906_HZ906 Hz
IS31FL3746A_PWM_FREQUENCY_453_HZ453 Hz

De-Ghosting

These settings control the pulldown and pullup resistor values on the SWy and CSx pins respectively, for the purposes of eliminating ghosting. Refer to the datasheet (p. 23) for more information on how and why this occurs.

To adjust the resistor values, add the following to your config.h:

c
#define IS31FL3746A_SW_PULLDOWN IS31FL3746A_PDR_2K_OHM_SW_OFF\n#define IS31FL3746A_CS_PULLUP IS31FL3746A_PUR_2K_OHM_CS_OFF

Valid values for IS31FL3746A_SW_PULLDOWN are:

DefineResistance
IS31FL3746A_PDR_0_OHMNone
IS31FL3746A_PDR_0K5_OHM_SW_OFF0.5 kΩ in SWx off time
IS31FL3746A_PDR_1K_OHM_SW_OFF1 kΩ in SWx off time
IS31FL3746A_PDR_2K_OHM_SW_OFF2 kΩ in SWx off time (default)
IS31FL3746A_PDR_1K_OHM1 kΩ
IS31FL3746A_PDR_2K_OHM2 kΩ
IS31FL3746A_PDR_4K_OHM4 kΩ
IS31FL3746A_PDR_8K_OHM8 kΩ

Valid values for IS31FL3746A_CS_PULLUP are:

DefineResistance
IS31FL3746A_PUR_0_OHMNone (default)
IS31FL3746A_PUR_0K5_OHM_CS_OFF0.5 kΩ in CSy off time
IS31FL3746A_PUR_1K_OHM_CS_OFF1 kΩ in CSy off time
IS31FL3746A_PUR_2K_OHM_CS_OFF2 kΩ in CSy off time (default)
IS31FL3746A_PUR_1K_OHM1 kΩ
IS31FL3746A_PUR_2K_OHM2 kΩ
IS31FL3746A_PUR_4K_OHM4 kΩ
IS31FL3746A_PUR_8K_OHM8 kΩ

Global Current Control

This setting controls the current sunk by the CSy pins, from 0 to 255. By default, the value is the maximum (255), but if you need to lower it, add the following to your config.h:

c
#define IS31FL3746A_GLOBAL_CURRENT 0xFF

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const is31fl3746a_led_t PROGMEM g_is31fl3746a_leds[IS31FL3746A_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, SW1_CS1,  SW1_CS2,  SW1_CS3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their anodes connected to the SW1 pin, and their cathodes on the CS1, CS2 and CS3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const is31fl3746a_led_t PROGMEM g_is31fl3746a_leds[IS31FL3746A_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, SW1_CS1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 13, figure 8.

API

struct is31fl3746a_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void is31fl3746a_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void is31fl3746a_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void is31fl3746a_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void is31fl3746a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3746a_update_pwm_buffers() after you are finished.

Arguments


void is31fl3746a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void is31fl3746a_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3746a_update_pwm_buffers() after you are finished.

Arguments


void is31fl3746a_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void is31fl3746a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3746a_update_scaling_registers() after you are finished.

Arguments


void is31fl3746a_set_scaling_register(uint8_t index, uint8_t value)

Configure the scaling register for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3746a_update_scaling_registers() after you are finished.

Arguments


void is31fl3746a_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void is31fl3746a_update_scaling_registers(uint8_t index)

Flush the scaling register values to the LED driver.

Arguments

', 99); diff --git a/assets/drivers_is31fl3746a.md.CupewbNN.lean.js b/assets/drivers_is31fl3746a.md.CCGFqsIg.lean.js similarity index 83% rename from assets/drivers_is31fl3746a.md.CupewbNN.lean.js rename to assets/drivers_is31fl3746a.md.CCGFqsIg.lean.js index 37599b4bca4..0d8034b3132 100644 --- a/assets/drivers_is31fl3746a.md.CupewbNN.lean.js +++ b/assets/drivers_is31fl3746a.md.CCGFqsIg.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"IS31FL3746A Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/is31fl3746a.md","filePath":"drivers/is31fl3746a.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/is31fl3746a.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 99); diff --git a/assets/drivers_serial.md.BkUw6hN9.js b/assets/drivers_serial.md.C29ECQJq.js similarity index 99% rename from assets/drivers_serial.md.BkUw6hN9.js rename to assets/drivers_serial.md.C29ECQJq.js index 3fdfe181a52..78b1fc31fd7 100644 --- a/assets/drivers_serial.md.BkUw6hN9.js +++ b/assets/drivers_serial.md.C29ECQJq.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse(`{"title":"'serial' Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/serial.md","filePath":"drivers/serial.md","lastUpdated":null}`); const _sfc_main = { name: "drivers/serial.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

'serial' Driver

The Serial driver powers the Split Keyboard feature. Several implementations are available that cater to the platform and capabilities of MCU in use. Note that none of the drivers support split keyboards with more than two halves.

DriverAVRARMConnection between halves
Bitbang✔️✔️Single wire communication. One wire is used for reception and transmission.
USART Half-duplex✔️Efficient single wire communication. One wire is used for reception and transmission.
USART Full-duplex✔️Efficient two wire communication. Two distinct wires are used for reception and transmission.

TIP

Serial in this context should be read as sending information one bit at a time, rather than implementing UART/USART/RS485/RS232 standards.

Bitbang

This is the Default driver, absence of configuration assumes this driver. It works by bit banging a GPIO pin using the CPU. It is therefore not as efficient as a dedicated hardware peripheral, which the Half-duplex and Full-duplex drivers use.

WARNING

On ARM platforms the bitbang driver causes connection issues when using it together with the bitbang WS2812 driver. Choosing alternate drivers for both serial and WS2812 (instead of bitbang) is strongly recommended.

Pin configuration

  LEFT                      RIGHT\n+-------+      SERIAL     +-------+\n|   SSP |-----------------| SSP   |\n|       |       VDD       |       |\n|       |-----------------|       |\n|       |       GND       |       |\n|       |-----------------|       |\n+-------+                 +-------+

One GPIO pin is needed for the bitbang driver, as only one wire is used for receiving and transmitting data. This pin is referred to as the SOFT_SERIAL_PIN (SSP) in the configuration. A TRS or USB cable provides enough conductors for this driver to function.

Setup

To use the bitbang driver follow these steps to activate it.

  1. Change the SERIAL_DRIVER to bitbang in your keyboards rules.mk file:
make
SERIAL_DRIVER = bitbang
  1. Configure the GPIO pin of your keyboard via the config.h file:
c
#define SOFT_SERIAL_PIN D0  // or D1, D2, D3, E6
  1. On ARM platforms you must turn on ChibiOS PAL callbacks:
c
#pragma once\n\n#define PAL_USE_CALLBACKS TRUE\n\n#include_next <halconf.h>

USART Half-duplex

Targeting ARM boards based on ChibiOS, where communication is offloaded to a USART hardware device that supports Half-duplex operation. The advantages over bitbanging are fast, accurate timings and reduced CPU usage. Therefore it is advised to choose Half-duplex over Bitbang if MCU is capable of utilising Half-duplex, and Full-duplex can't be used instead (e.g. lack of available GPIO pins, or incompatible PCB design).

Pin configuration

  LEFT                      RIGHT\n+-------+  |           |  +-------+\n|       |  R           R  |       |\n|       |  |   SERIAL  |  |       |\n|    TX |-----------------| TX    |\n|       |       VDD       |       |\n|       |-----------------|       |\n|       |       GND       |       |\n|       |-----------------|       |\n+-------+                 +-------+

Only one GPIO pin is needed for the Half-duplex driver, as only one wire is used for receiving and transmitting data. This pin is referred to as the SERIAL_USART_TX_PIN in the configuration. Ensure that the pin chosen for split communication can operate as the TX pin of the contoller's USART peripheral. A TRS or USB cable provides enough conductors for this driver to function. As the split connection is configured to operate in open-drain mode, an external pull-up resistor is needed to keep the line high. Resistor values of 1.5kΩ to 8.2kΩ are known to work.

WARNING

Note: A pull-up resistor isn't required for RP2040 controllers configured with PIO subsystem.

Setup

To use the Half-duplex driver follow these steps to activate it. If you target the Raspberry Pi RP2040 PIO implementation, start at step 2.

  1. Change the SERIAL_DRIVER to usart in your keyboards rules.mk file:
make
SERIAL_DRIVER = usart

Skip to step 3.

  1. (RP2040 + PIO only!) Change the SERIAL_DRIVER to vendor in your keyboards rules.mk file:
make
SERIAL_DRIVER = vendor
  1. Configure the hardware of your keyboard via the config.h file:
c
#define SERIAL_USART_TX_PIN B6     // The GPIO pin that is used split communication.

For STM32 MCUs several GPIO configuration options can be changed as well. See the section "Alternate Functions for selected STM32 MCUs".

c
#define USART1_REMAP               // Remap USART TX and RX pins on STM32F103 MCUs, see table below.\n#define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
  1. Decide either for SERIAL, SIO, or PIO subsystem. See section "Choosing a driver subsystem".

USART Full-duplex

Targeting ARM boards based on ChibiOS where communication is offloaded to an USART hardware device. The advantages over bitbanging are fast, accurate timings and reduced CPU usage; therefore it is advised to choose this driver over all others where possible. Due to its internal design Full-duplex is slightly more efficient than the Half-duplex driver, but Full-duplex should be primarily chosen if Half-duplex operation is not supported by the controller's USART peripheral.

Pin configuration

  LEFT                      RIGHT\n+-------+                 +-------+\n|       |      SERIAL     |       |\n|    TX |-----------------| RX    |\n|       |      SERIAL     |       |\n|    RX |-----------------| TX    |\n|       |       VDD       |       |\n|       |-----------------|       |\n|       |       GND       |       |\n|       |-----------------|       |\n+-------+                 +-------+

Two GPIO pins are needed for the Full-duplex driver, as two distinct wires are used for receiving and transmitting data. The pin transmitting data is the TX pin and refereed to as the SERIAL_USART_TX_PIN, the pin receiving data is the RX pin and refereed to as the SERIAL_USART_RX_PIN in this configuration. Please note that TX pin of the master half has to be connected with the RX pin of the slave half and the RX pin of the master half has to be connected with the TX pin of the slave half! Usually this pin swap has to be done outside of the MCU e.g. with cables or on the PCB. Some MCUs like the STM32F303 used on the Proton-C allow this pin swap directly inside the MCU. A TRRS or USB cable provides enough conductors for this driver to function.

To use this driver the USART peripherals TX and RX pins must be configured with the correct Alternate-functions. If you are using a Proton-C development board everything is already setup, same is true for STM32F103 MCUs. For MCUs which are using a modern flexible GPIO configuration you have to specify these by setting SERIAL_USART_TX_PAL_MODE and SERIAL_USART_RX_PAL_MODE. Refer to the corresponding datasheets of your MCU or find those settings in the section "Alternate Functions for selected STM32 MCUs".

Setup

To use the Full-duplex driver follow these steps to activate it. If you target the Raspberry Pi RP2040 PIO implementation, start at step 2

  1. Change the SERIAL_DRIVER to usart in your keyboards rules.mk file:
make
SERIAL_DRIVER = usart

Skip to step 3

  1. (RP2040 + PIO only!) Change the SERIAL_DRIVER to vendor in your keyboards rules.mk file:
make
SERIAL_DRIVER = vendor
  1. Configure the hardware of your keyboard via the config.h file:
c
#define SERIAL_USART_FULL_DUPLEX   // Enable full duplex operation mode.\n#define SERIAL_USART_TX_PIN B6     // USART TX pin\n#define SERIAL_USART_RX_PIN B7     // USART RX pin

For STM32 MCUs several GPIO configuration options, including the ability for TX to RX pin swapping, can be changed as well. See the section "Alternate Functions for selected STM32 MCUs".

c
#define SERIAL_USART_PIN_SWAP      // Swap TX and RX pins if keyboard is master halve. (Only available on some MCUs)\n#define USART1_REMAP               // Remap USART TX and RX pins on STM32F103 MCUs, see table below.\n#define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7
  1. Decide either for SERIAL, SIO, or PIO subsystem. See section "Choosing a driver subsystem".

Choosing a driver subsystem

The SERIAL driver

The SERIAL Subsystem is supported for the majority of ChibiOS MCUs and should be used whenever supported. Follow these steps in order to activate it:

  1. Enable the SERIAL subsystem in the ChibiOS HAL.

    Add the following to your keyboard's halconf.h, creating it if necessary:

    c
    #pragma once\n\n#define HAL_USE_SERIAL TRUE\n\n#include_next <halconf.h>
  2. Activate the USART peripheral that is used on your MCU. The shown example is for an STM32 MCU, so this will not work on MCUs by other manufacturers. You can find the correct names in the mcuconf.h files of your MCU that ship with ChibiOS.

    Add the following to your keyboard's mcuconf.h, creating it if necessary:

    c
    #pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_SERIAL_USE_USARTn\n#define STM32_SERIAL_USE_USARTn TRUE

    Where n matches the peripheral number of your selected USART on the MCU.

  3. Override the default USART SERIAL driver if you use a USART peripheral that does not belong to the default selected SD1 driver. For instance, if you selected STM32_SERIAL_USE_USART3 the matching driver would be SD3.

    Add the following to your keyboard's config.h:

    c
    #define SERIAL_USART_DRIVER SD3

The SIO driver

The SIO Subsystem was added to ChibiOS with the 21.11 release and is only supported on selected MCUs. It should only be chosen when the SERIAL subsystem is not supported by your MCU.

Follow these steps in order to activate it:

  1. Enable the SIO subsystem in the ChibiOS HAL.

    Add the following to your keyboard's halconf.h, creating it if necessary:

    c
    #pragma once\n\n#define HAL_USE_SIO TRUE\n\n#include_next <halconf.h>
  2. Activate the USART peripheral that is used on your MCU. The shown example is for an STM32 MCU, so this will not work on MCUs by other manufacturers. You can find the correct names in the mcuconf.h files of your MCU that ship with ChibiOS.

    Add the following to your keyboard's mcuconf.h, creating it if necessary:

    c
    #pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_SIO_USE_USARTn\n#define STM32_SIO_USE_USARTn TRUE

    Where n matches the peripheral number of your selected USART on the MCU.

  3. Override the default USART SIO driver if you use a USART peripheral that does not belong to the default selected SIOD1 driver. For instance, if you selected STM32_SERIAL_USE_USART3 the matching driver would be SIOD3.

    Add the following to your keyboard's config.h:

    c
    #define SERIAL_USART_DRIVER SIOD3

The PIO driver

The PIO subsystem is a Raspberry Pi RP2040 specific implementation, using an integrated PIO peripheral and is therefore only available on this MCU. Because of the flexible nature of PIO peripherals, any GPIO pin can be used as a TX or RX pin. Half-duplex and Full-duplex operation modes are fully supported with this driver. Half-duplex uses the built-in pull-ups and GPIO manipulation of the RP2040 to drive the line high by default, thus an external pull-up resistor is not required.

Optionally, the PIO peripheral utilized for split communication can be changed with the following define in config.h:

c
#define SERIAL_PIO_USE_PIO1 // Force the usage of PIO1 peripheral, by default the Serial implementation uses the PIO0 peripheral

The Serial PIO program uses 2 state machines, 13 instructions and the complete interrupt handler of the PIO peripheral it is running on.

Advanced Configuration

There are several advanced configuration options that can be defined in your keyboards config.h file:

Baudrate

If you're having issues or need a higher baudrate with serial communication, you can change the baudrate which in turn controls the communication speed for serial. You want to lower the baudrate if you experience failed transactions.

c
#define SELECT_SOFT_SERIAL_SPEED n

Where n is one of:

SpeedBitbangHalf-duplex and Full-duplex
0189000 baud (experimental)460800 baud
1137000 baud (default)230400 baud (default)
275000 baud115200 baud
339000 baud57600 baud
426000 baud38400 baud
520000 baud19200 baud

Alternatively you can specify the baudrate directly by defining SERIAL_USART_SPEED.

Timeout

This is the default time window in milliseconds in which a successful communication has to complete. Usually you don't want to change this value. But you can do so anyways by defining an alternate one in your keyboards config.h file:

c
#define SERIAL_USART_TIMEOUT 20    // USART driver timeout. default 20

Troubleshooting

If you're having issues with serial communication, you can enable debug messages that will give you insights which part of the communication failed. The enable these messages add to your keyboards config.h file:

c
#define SERIAL_DEBUG

TIP

The messages will be printed out to the CONSOLE output. For additional information, refer to Debugging/Troubleshooting QMK.

Alternate Functions for selected STM32 MCUs

Pins for USART Peripherals with

STM32F303 / Proton-C Datasheet

Pin Swap available: ✔️

PinFunctionMode
USART1
PA9TXAF7
PA10RXAF7
PB6TXAF7
PB7RXAF7
PC4TXAF7
PC5RXAF7
PE0TXAF7
PE1RXAF7
USART2
PA2TXAF7
PA3RXAF7
PA14TXAF7
PA15RXAF7
PB3TXAF7
PB4RXAF7
PD5TXAF7
PD6RXAF7
USART3
PB10TXAF7
PB11RXAF7
PC10TXAF7
PC11RXAF7
PD8TXAF7
PD9RXAF7

STM32F072 Datasheet

Pin Swap available: ✔️

PinFunctionMode
USART1
PA9TXAF1
PA10RXAF1
PB6TXAF0
PB7RXAF0
USART2
PA2TXAF1
PA3RXAF1
PA14TXAF1
PA15RXAF1
USART3
PB10TXAF4
PB11RXAF4
PC4TXAF1
PC5RXAF1
PC10TXAF1
PC11RXAF1
PD8TXAF0
PD9RXAF0
USART4
PA0TXAF4
PA1RXAF4

STM32F103 Medium Density (C8-CB) Datasheet

Pin Swap available: N/A

TX Pin is always Alternate Function Push-Pull, RX Pin is always regular input pin for any USART peripheral. For STM32F103 no additional Alternate Function configuration is necessary. QMK is already configured.

Pin remapping:

The pins of USART Peripherals use default Pins that can be remapped to use other pins using the AFIO registers. Default pins are marked bold. Add the appropriate defines to your config.h file.

PinFunctionModeUSART_REMAP
USART1
PA9TXAFPP
PA10RXIN
PB6TXAFPPUSART1_REMAP
PB7RXINUSART1_REMAP
USART2
PA2TXAFPP
PA3RXIN
PD5TXAFPPUSART2_REMAP
PD6RXINUSART2_REMAP
USART3
PB10TXAFPP
PB11RXIN
PC10TXAFPPUSART3_PARTIALREMAP
PC11RXINUSART3_PARTIALREMAP
PD8TXAFPPUSART3_FULLREMAP
PD9RXINUSART3_FULLREMAP
', 96); diff --git a/assets/drivers_serial.md.BkUw6hN9.lean.js b/assets/drivers_serial.md.C29ECQJq.lean.js similarity index 82% rename from assets/drivers_serial.md.BkUw6hN9.lean.js rename to assets/drivers_serial.md.C29ECQJq.lean.js index 0cc293234f0..b70d0db2e60 100644 --- a/assets/drivers_serial.md.BkUw6hN9.lean.js +++ b/assets/drivers_serial.md.C29ECQJq.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse(`{"title":"'serial' Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/serial.md","filePath":"drivers/serial.md","lastUpdated":null}`); const _sfc_main = { name: "drivers/serial.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 96); diff --git a/assets/drivers_snled27351.md._Q-J-rIw.js b/assets/drivers_snled27351.md.YUDcBieB.js similarity index 99% rename from assets/drivers_snled27351.md._Q-J-rIw.js rename to assets/drivers_snled27351.md.YUDcBieB.js index bcb1dbb6ac3..7ae442a5733 100644 --- a/assets/drivers_snled27351.md._Q-J-rIw.js +++ b/assets/drivers_snled27351.md.YUDcBieB.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"SNLED27351 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/snled27351.md","filePath":"drivers/snled27351.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/snled27351.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

SNLED27351 Driver

I²C 16x12 LED matrix driver by Sonix. Supports a maximum of four drivers, each controlling up to 192 single-color LEDs, or 64 RGB LEDs.

A slightly modified version of this IC is also known as "CKLED2001".

SNLED27351 Datasheet

Usage

The SNLED27351 driver code is automatically included if you are using the LED Matrix or RGB Matrix feature with the snled27351 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add this to your rules.mk:

make
COMMON_VPATH += $(DRIVER_PATH)/led\nSRC += snled27351-mono.c # For single-color\nSRC += snled27351.c # For RGB\nI2C_DRIVER_REQUIRED = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
SNLED27351_SDB_PINNot definedThe GPIO pin connected to the drivers' shutdown pins
SNLED27351_I2C_TIMEOUT100The I²C timeout in milliseconds
SNLED27351_I2C_PERSISTENCE0The number of times to retry I²C transmissions
SNLED27351_I2C_ADDRESS_1Not definedThe I²C address of driver 0
SNLED27351_I2C_ADDRESS_2Not definedThe I²C address of driver 1
SNLED27351_I2C_ADDRESS_3Not definedThe I²C address of driver 2
SNLED27351_I2C_ADDRESS_4Not definedThe I²C address of driver 3

I²C Addressing

The SNLED27351 has four possible 7-bit I²C addresses, depending on how the ADDR pin is connected.

To configure this, set the SNLED27351_I2C_ADDRESS_n defines to one of the following in your config.h, where n denotes the driver index:

DefineValue
SNLED27351_I2C_ADDRESS_GND0x74
SNLED27351_I2C_ADDRESS_SCL0x75
SNLED27351_I2C_ADDRESS_SDA0x76
SNLED27351_I2C_ADDRESS_VDDIO0x77

ARM/ChibiOS Configuration

Depending on the ChibiOS board configuration, you may need to enable and configure I²C at the keyboard level.

LED Mapping

In order to use this driver, each output must be mapped to an LED index, by adding the following to your <keyboard>.c:

c
const snled27351_led_t PROGMEM g_snled27351_leds[SNLED27351_LED_COUNT] = {\n/* Driver\n *   |  R         G         B */\n    {0, CB1_CA1,  CB1_CA2,  CB1_CA3},\n    // etc...\n};

In this example, the red, green and blue channels for the first LED index on driver 0 all have their cathodes connected to the CB1 pin, and their anodes on the CA1, CA2 and CA3 pins respectively.

For the single-color driver, the principle is the same, but there is only one channel:

c
const snled27351_led_t PROGMEM g_snled27351_leds[SNLED27351_LED_COUNT] = {\n/* Driver\n *   |  V */\n    {0, CB1_CA1},\n    // etc...\n};

These values correspond to the register indices as shown in the datasheet on page 13.

API

struct snled27351_led_t

Contains the PWM register addresses for a single RGB LED.

Members


void snled27351_init(uint8_t index)

Initialize the LED driver. This function should be called first.

Arguments


void snled27351_write_register(uint8_t index, uint8_t reg, uint8_t data)

Set the value of the given register.

Arguments


void snled27351_select_page(uint8_t index, uint8_t page)

Change the current page for configuring the LED driver.

Arguments


void snled27351_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call snled27351_update_pwm_buffers() after you are finished.

Arguments


void snled27351_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs (RGB driver only).

Arguments


void snled27351_set_value(int index, uint8_t value)

Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call snled27351_update_pwm_buffers() after you are finished.

Arguments


void snled27351_set_value_all(uint8_t value)

Set the brightness of all LEDs (single-color driver only).

Arguments


void snled27351_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call snled27351_update_led_control_registers() after you are finished.

Arguments


void snled27351_set_led_control_register(uint8_t index, bool value)

Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call snled27351_update_led_control_registers() after you are finished.

Arguments


void snled27351_update_pwm_buffers(uint8_t index)

Flush the PWM values to the LED driver.

Arguments


void snled27351_update_led_control_registers(uint8_t index)

Flush the LED control register values to the LED driver.

Arguments

', 84); diff --git a/assets/drivers_snled27351.md._Q-J-rIw.lean.js b/assets/drivers_snled27351.md.YUDcBieB.lean.js similarity index 83% rename from assets/drivers_snled27351.md._Q-J-rIw.lean.js rename to assets/drivers_snled27351.md.YUDcBieB.lean.js index 7de37a4173e..df77b18383b 100644 --- a/assets/drivers_snled27351.md._Q-J-rIw.lean.js +++ b/assets/drivers_snled27351.md.YUDcBieB.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"SNLED27351 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/snled27351.md","filePath":"drivers/snled27351.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/snled27351.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 84); diff --git a/assets/drivers_spi.md.fBcFNYcc.js b/assets/drivers_spi.md.2nctHc0q.js similarity index 97% rename from assets/drivers_spi.md.fBcFNYcc.js rename to assets/drivers_spi.md.2nctHc0q.js index ca9b7550493..31c7b43492b 100644 --- a/assets/drivers_spi.md.fBcFNYcc.js +++ b/assets/drivers_spi.md.2nctHc0q.js @@ -1,7 +1,7 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"SPI Master Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/spi.md","filePath":"drivers/spi.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/spi.md" }; -const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

SPI Master Driver

The SPI Master drivers used in QMK have a set of common functions to allow portability between MCUs.

Usage

In most cases, the SPI Master driver code is automatically included if you are using a feature or driver which requires it, such as OLED.

However, if you need to use the driver standalone, add the following to your rules.mk:

make
SPI_DRIVER_REQUIRED = yes

You can then call the SPI API by including spi_master.h in your code.

AVR Configuration

No special setup is required - just connect the SS, SCK, MOSI and MISO pins of your SPI devices to the matching pins on the MCU:

MCUSSSCKMOSIMISO
ATmega16/32U2/4B0B1B2B3
AT90USB64/128/162B0B1B2B3
ATmega32AB4B7B5B6
ATmega328/PB2B5B3B4

You may use more than one slave select pin, not just the SS pin. This is useful when you have multiple devices connected and need to communicate with them individually. SPI_SS_PIN can be passed to spi_start() to refer to SS.

ChibiOS/ARM Configuration

You'll need to determine which pins can be used for SPI -- as an example, STM32 parts generally have multiple SPI peripherals, labeled SPI1, SPI2, SPI3 etc.

To enable SPI, modify your board's halconf.h to enable SPI, then modify your board's mcuconf.h to enable the peripheral you've chosen:

c
#pragma once\n\n#define HAL_USE_SPI TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_SPI_USE_SPI2\n#define STM32_SPI_USE_SPI2 TRUE

Configuration-wise, you'll need to set up the peripheral as per your MCU's datasheet -- the defaults match the pins for a Proton-C, i.e. STM32F303.

config.h OverrideDescriptionDefault
SPI_DRIVERSPI peripheral to use - SPI1 -> SPID1, SPI2 -> SPID2 etc.SPID2
SPI_SCK_PINThe pin to use for SCKB13
SPI_SCK_PAL_MODEThe alternate function mode for SCK5
SPI_MOSI_PINThe pin to use for MOSIB15
SPI_MOSI_PAL_MODEThe alternate function mode for MOSI5
SPI_MISO_PINThe pin to use for MISOB14
SPI_MISO_PAL_MODEThe alternate function mode for MISO5

As per the AVR configuration, you may choose any other standard GPIO as a slave select pin, which should be supplied to spi_start().

If a complete SPI interface is not required, then the following can be done to disable certain SPI pins, so they don't occupy a GPIO unnecessarily:

API

void spi_init(void)

Initialize the SPI driver. This function must be called only once, before any of the below functions can be called.


bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)

Start an SPI transaction.

Arguments

Return Value

true if the operation was successful, otherwise false if the supplied parameters are invalid or the SPI peripheral is already in use.


spi_status_t spi_write(uint8_t data)

Write a byte to the selected SPI device.

Arguments

Return Value

SPI_STATUS_TIMEOUT if the timeout period elapses, or SPI_STATUS_SUCCESS.


spi_status_t spi_read(void)

Read a byte from the selected SPI device.

Return Value

SPI_STATUS_TIMEOUT if the timeout period elapses, otherwise the byte read from the device.


spi_status_t spi_transmit(const uint8_t *data, uint16_t length)

Send multiple bytes to the selected SPI device.

Arguments

Return Value

SPI_STATUS_TIMEOUT if the timeout period elapses, SPI_STATUS_ERROR if some other error occurs, otherwise SPI_STATUS_SUCCESS.


spi_status_t spi_receive(uint8_t *data, uint16_t length)

Receive multiple bytes from the selected SPI device.

Arguments

Return Value

SPI_STATUS_TIMEOUT if the timeout period elapses, SPI_STATUS_ERROR if some other error occurs, otherwise SPI_STATUS_SUCCESS.


void spi_stop(void)

End the current SPI transaction. This will deassert the slave select pin and reset the endianness, mode and divisor configured by spi_start().

', 59); +const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

SPI Master Driver

The SPI Master drivers used in QMK have a set of common functions to allow portability between MCUs.

Usage

In most cases, the SPI Master driver code is automatically included if you are using a feature or driver which requires it, such as OLED.

However, if you need to use the driver standalone, add the following to your rules.mk:

make
SPI_DRIVER_REQUIRED = yes

You can then call the SPI API by including spi_master.h in your code.

AVR Configuration

No special setup is required - just connect the SS, SCK, MOSI and MISO pins of your SPI devices to the matching pins on the MCU:

MCUSSSCKMOSIMISO
ATmega16/32U2/4B0B1B2B3
AT90USB64/128/162B0B1B2B3
ATmega32AB4B7B5B6
ATmega328/PB2B5B3B4

You may use more than one slave select pin, not just the SS pin. This is useful when you have multiple devices connected and need to communicate with them individually. SPI_SS_PIN can be passed to spi_start() to refer to SS.

ChibiOS/ARM Configuration

You'll need to determine which pins can be used for SPI -- as an example, STM32 parts generally have multiple SPI peripherals, labeled SPI1, SPI2, SPI3 etc.

To enable SPI, modify your board's halconf.h to enable SPI, then modify your board's mcuconf.h to enable the peripheral you've chosen:

c
#pragma once\n\n#define HAL_USE_SPI TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_SPI_USE_SPI2\n#define STM32_SPI_USE_SPI2 TRUE

Configuration-wise, you'll need to set up the peripheral as per your MCU's datasheet -- the defaults match the pins for a Proton-C, i.e. STM32F303.

config.h OverrideDescriptionDefault
SPI_DRIVERSPI peripheral to use - SPI1 -> SPID1, SPI2 -> SPID2 etc.SPID2
SPI_SCK_PINThe pin to use for SCKB13
SPI_SCK_PAL_MODEThe alternate function mode for SCK5
SPI_MOSI_PINThe pin to use for MOSIB15
SPI_MOSI_PAL_MODEThe alternate function mode for MOSI5
SPI_MISO_PINThe pin to use for MISOB14
SPI_MISO_PAL_MODEThe alternate function mode for MISO5

As per the AVR configuration, you may choose any other standard GPIO as a slave select pin, which should be supplied to spi_start().

If a complete SPI interface is not required, then the following can be done to disable certain SPI pins, so they don't occupy a GPIO unnecessarily:

API

void spi_init(void)

Initialize the SPI driver. This function must be called only once, before any of the below functions can be called.


bool spi_start(pin_t slavePin, bool lsbFirst, uint8_t mode, uint16_t divisor)

Start an SPI transaction.

Arguments

Return Value

true if the operation was successful, otherwise false if the supplied parameters are invalid or the SPI peripheral is already in use.


spi_status_t spi_write(uint8_t data)

Write a byte to the selected SPI device.

Arguments

Return Value

SPI_STATUS_TIMEOUT if the timeout period elapses, or SPI_STATUS_SUCCESS.


spi_status_t spi_read(void)

Read a byte from the selected SPI device.

Return Value

SPI_STATUS_TIMEOUT if the timeout period elapses, otherwise the byte read from the device.


spi_status_t spi_transmit(const uint8_t *data, uint16_t length)

Send multiple bytes to the selected SPI device.

Arguments

Return Value

SPI_STATUS_TIMEOUT if the timeout period elapses, SPI_STATUS_ERROR if some other error occurs, otherwise SPI_STATUS_SUCCESS.


spi_status_t spi_receive(uint8_t *data, uint16_t length)

Receive multiple bytes from the selected SPI device.

Arguments

Return Value

SPI_STATUS_TIMEOUT if the timeout period elapses, SPI_STATUS_ERROR if some other error occurs, otherwise SPI_STATUS_SUCCESS.


void spi_stop(void)

End the current SPI transaction. This will deassert the slave select pin and reset the endianness, mode and divisor configured by spi_start().

', 59); const _hoisted_60 = [ _hoisted_1 ]; diff --git a/assets/drivers_spi.md.fBcFNYcc.lean.js b/assets/drivers_spi.md.2nctHc0q.lean.js similarity index 82% rename from assets/drivers_spi.md.fBcFNYcc.lean.js rename to assets/drivers_spi.md.2nctHc0q.lean.js index 3e3afd7d922..ec9ca4a29c9 100644 --- a/assets/drivers_spi.md.fBcFNYcc.lean.js +++ b/assets/drivers_spi.md.2nctHc0q.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"SPI Master Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/spi.md","filePath":"drivers/spi.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/spi.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 59); diff --git a/assets/drivers_uart.md.BVpiWrhw.js b/assets/drivers_uart.md.C-DQ6QZa.js similarity index 98% rename from assets/drivers_uart.md.BVpiWrhw.js rename to assets/drivers_uart.md.C-DQ6QZa.js index d34873ff57b..3c24965283d 100644 --- a/assets/drivers_uart.md.BVpiWrhw.js +++ b/assets/drivers_uart.md.C-DQ6QZa.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"UART Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/uart.md","filePath":"drivers/uart.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/uart.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

UART Driver

The UART drivers used in QMK have a set of common functions to allow portability between MCUs.

Currently, this driver does not support enabling hardware flow control (the RTS and CTS pins) if available, but may do so in future.

Usage

In most cases, the UART driver code is automatically included if you are using a feature or driver which requires it.

However, if you need to use the driver standalone, add the following to your rules.mk:

make
UART_DRIVER_REQUIRED = yes

You can then call the UART API by including uart.h in your code.

AVR Configuration

No special setup is required - just connect the RX and TX pins of your UART device to the opposite pins on the MCU:

MCUTXRXCTSRTS
ATmega16/32U2D3D2D7D6
ATmega16/32U4D3D2D5B7
AT90USB64/128D3D2n/an/a
ATmega32AD1D0n/an/a
ATmega328/PD1D0n/an/a

ChibiOS/ARM Configuration

You'll need to determine which pins can be used for UART -- as an example, STM32 parts generally have multiple UART peripherals, labeled USART1, USART2, USART3 etc.

To enable UART, modify your board's mcuconf.h to enable the peripheral you've chosen, for example:

c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_SERIAL_USE_USART2\n#define STM32_SERIAL_USE_USART2 TRUE

Configuration-wise, you'll need to set up the peripheral as per your MCU's datasheet -- the defaults match the pins for a Proton-C, i.e. STM32F303.

config.h OverrideDescriptionDefault
UART_DRIVERUSART peripheral to use - USART1 -> SD1, USART2 -> SD2 etc.SD1
UART_TX_PINThe pin to use for TXA9
UART_TX_PAL_MODEThe alternate function mode for TX7
UART_RX_PINThe pin to use for RXA10
UART_RX_PAL_MODEThe alternate function mode for RX7
UART_CTS_PINThe pin to use for CTSA11
UART_CTS_PAL_MODEThe alternate function mode for CTS7
UART_RTS_PINThe pin to use for RTSA12
UART_RTS_PAL_MODEThe alternate function mode for RTS7

API

void uart_init(uint32_t baud)

Initialize the UART driver. This function must be called only once, before any of the below functions can be called.

Arguments


void uart_write(uint8_t data)

Transmit a single byte.

Arguments


uint8_t uart_read(void)

Receive a single byte.

Return Value

The byte read from the receive buffer. This function will block if the buffer is empty (ie. no data to read).


void uart_transmit(const uint8_t *data, uint16_t length)

Transmit multiple bytes.

Arguments


void uart_receive(char *data, uint16_t length)

Receive multiple bytes.

Arguments


bool uart_available(void)

Return whether the receive buffer contains data. Call this function to determine if uart_read() will return data immediately.

Return Value

true if there is data available to read.

', 47); diff --git a/assets/drivers_uart.md.BVpiWrhw.lean.js b/assets/drivers_uart.md.C-DQ6QZa.lean.js similarity index 82% rename from assets/drivers_uart.md.BVpiWrhw.lean.js rename to assets/drivers_uart.md.C-DQ6QZa.lean.js index 8d1b6877beb..257c4e72d7d 100644 --- a/assets/drivers_uart.md.BVpiWrhw.lean.js +++ b/assets/drivers_uart.md.C-DQ6QZa.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"UART Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/uart.md","filePath":"drivers/uart.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/uart.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 47); diff --git a/assets/drivers_ws2812.md.D506ofII.js b/assets/drivers_ws2812.md.3iqmoMnj.js similarity index 97% rename from assets/drivers_ws2812.md.D506ofII.js rename to assets/drivers_ws2812.md.3iqmoMnj.js index d07db8a4e81..b17f4345b30 100644 --- a/assets/drivers_ws2812.md.D506ofII.js +++ b/assets/drivers_ws2812.md.3iqmoMnj.js @@ -1,7 +1,7 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"WS2812 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/ws2812.md","filePath":"drivers/ws2812.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/ws2812.md" }; -const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

WS2812 Driver

This driver provides support for WorldSemi addressable RGB(W) LEDs, and compatible equivalents:

These LEDs are often called "addressable" because instead of using a wire per color (and per LED), each LED contains a small microchip that understands a special protocol sent over a single wire. The LEDs can be chained together, and the remaining data is passed on to the next. In this way, you can easily control the color of many LEDs using a single GPIO.

Usage

In most cases, the WS2812 driver code is automatically included if you are using either the RGBLight or RGB Matrix feature with the ws2812 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add the following to your rules.mk:

make
WS2812_DRIVER_REQUIRED = yes

You can then call the WS2812 API by including ws2812.h in your code.

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
WS2812_DI_PINNot definedThe GPIO pin connected to the DI pin of the first LED in the chain
WS2812_LED_COUNTNot definedNumber of LEDs in the WS2812 chain - automatically set when RGBLight or RGB Matrix is configured
WS2812_TIMING1250The total length of a bit (TH+TL) in nanoseconds
WS2812_T1H900The length of a "1" bit's high phase in nanoseconds
WS2812_T0H350The length of a "0" bit's high phase in nanoseconds
WS2812_TRST_US280The length of the reset phase in microseconds
WS2812_BYTE_ORDERWS2812_BYTE_ORDER_GRBThe byte order of the RGB data
WS2812_RGBWNot definedEnables RGBW support (except i2c driver)

Timing Adjustment

The WS2812 LED communication protocol works by encoding a "1" bit with a long high pulse (T1H), and a "0" bit with a shorter pulse (T0H). The total cycle length of a bit is the same. The "reset" pulse (TRST) latches the sent RGB data to all of the LEDs and denotes a completed "frame".

Some WS2812 variants have slightly different timing parameter requirements, which can be accounted for if necessary using the above #defines in your config.h.

Byte Order

Some WS2812 variants may have their color components in a different physical or logical order. For example, the WS2812B-2020 has physically swapped red and green LEDs, which causes the wrong color to be displayed, because the default order of the bytes sent over the wire is defined as GRB. If you find your LED colors are consistently swapped, you may need to change the byte order by adding the following to your config.h:

c
#define WS2812_BYTE_ORDER WS2812_BYTE_ORDER_GRB

Where the byte order may be one of:

Byte OrderKnown Devices
GRBMost WS2812s, SK6812, SK6805
RGBWS2812B-2020
BGRTM1812

RGBW Support

Rendering the color white with RGB LEDs is typically inconsistent due to inherent variations between each individual LED die. However, some WS2812 variants (such as SK6812RGBW) also possess a white LED along with the red, green, and blue channels, which allows for a more accurate white to be displayed.

QMK can automatically convert the RGB data to be sent to the LEDs to mix in the white channel:

w = min(r, g, b)\nr -= w\ng -= w\nb -= w

Thus, an RGB triplet of 255,255,255 will simply turn on the white LED fully (0,0,0,255).

To enable RGBW conversion, add the following to your config.h:

c
#define WS2812_RGBW

Driver Configuration

Driver selection can be configured in rules.mk as WS2812_DRIVER, or in info.json as ws2812.driver. Valid values are bitbang (default), i2c, spi, pwm, vendor, or custom. See below for information on individual drivers.

Bitbang Driver

This is the default WS2812 driver. It operates by "bit-banging" ie. directly toggling the GPIO.

Please note that on AVR devices, due to the tight timing requirements longer chains and/or heavy CPU loads may cause visible lag. Unfortunately this driver is usually the only option for AVR.

make
WS2812_DRIVER = bitbang

I2C Driver

A specialized driver mainly used for PS2AVRGB (Bootmapper Client) boards, which possess an ATtiny85 that handles the WS2812 LEDs.

make
WS2812_DRIVER = i2c

The following #defines apply only to the i2c driver:

DefineDefaultDescription
WS2812_I2C_ADDRESS0xB0The I2C address of the ATtiny85.
WS2812_I2C_TIMEOUT100The I2C timeout, in milliseconds.

PIO Driver

This driver is RP2040-only, and leverages the onboard PIO (programmable I/O) system and DMA to offload processing from the CPU.

The WS2812 PIO program uses one state machine, six instructions and one DMA interrupt handler callback. Due to the implementation the time resolution for this driver is 50 ns - any value not specified in this interval will be rounded to the next matching interval.

make
WS2812_DRIVER = vendor

PWM Driver

This driver is ARM-only, and leverages the onboard PWM peripheral and DMA to offload processing from the CPU.

make
WS2812_DRIVER = pwm

SPI Driver

This driver is ARM-only, and leverages the onboard SPI peripheral and DMA to offload processing from the CPU. The DI pin must be connected to the MOSI pin on the MCU, and all other SPI pins must be left unused. This is also very dependent on your MCU's SPI peripheral clock speed, and may or may not be possible depending on the MCU selected.

make
WS2812_DRIVER = spi

ChibiOS/ARM Configuration

The following defines apply only to ARM devices:

DefineDefaultDescription
WS2812_T1L(WS2812_TIMING - WS2812_T1H)The length of a "1" bit's low phase in nanoseconds (bitbang and PIO drivers only)
WS2812_T0L(WS2812_TIMING - WS2812_T0H)The length of a "0" bit's low phase in nanoseconds (bitbang and PIO drivers only)

Logic Levels

WS2812 LEDs usually operate at 5V, but some microcontrollers, particularly ARM-based ones, run on 3.3V. This can pose an issue when driving the LED chain as the logic level voltage is lower than the power supply voltage, leading to unreliable data transmission. There are two main workarounds:

1. Open Drain Circuit

By default, WS2812_DI_PIN is configured as a push-pull output, meaning the pin is effectively always driven either to VCC or to ground; however, it can be configured in open drain mode instead.

In this mode, the MCU will only pull the GPIO low, and leaves it floating otherwise. A pullup resistor (typically around 10kΩ) between DI and 5V is then responsible for pulling the line high when the MCU is not driving the GPIO.

To use the DI pin in open drain configuration, add the following to your config.h:

c
#define WS2812_EXTERNAL_PULLUP

WARNING

Because the GPIO is being pulled to 5V in this situation rather than VCC (3.3V), it must be a 5V tolerant pin. Consult your MCU's datasheet first – if there are no eligible pins, you must use a level shifter instead.

2. Level Shifter

A level shifter IC, such as the SN74LV1T34, can be placed between the GPIO and the first LED's DI pin to convert the 3.3V logic to 5V. This requires no additional configuration in the firmware, nor a 5V tolerant GPIO, but may be more expensive and is generally less handwire-friendly.

SPI Driver

Depending on the ChibiOS board configuration, you may need to enable SPI at the keyboard level. For STM32, this would look like:

c
#pragma once\n\n#define HAL_USE_SPI TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_SPI_USE_SPI1\n#define STM32_SPI_USE_SPI1 TRUE

The following defines apply only to the spi driver:

DefineDefaultDescription
WS2812_SPI_DRIVERSPID1The SPI driver to use
WS2812_SPI_MOSI_PAL_MODE5The MOSI pin alternative function to use
WS2812_SPI_SCK_PINNot definedThe SCK pin - required for F072 and possibly others
WS2812_SPI_SCK_PAL_MODE5The SCK pin alternative function to use - required for F072 and possibly others
WS2812_SPI_DIVISOR16The divisor used to adjust the baudrate
WS2812_SPI_USE_CIRCULAR_BUFFERNot definedEnable a circular buffer for improved rendering

Setting the Baudrate

To adjust the SPI baudrate, you will need to derive the target baudrate from the clock tree provided by STM32CubeMX, and add the following to your config.h:

c
#define WS2812_SPI_DIVISOR 16

Only divisors of 2, 4, 8, 16, 32, 64, 128 and 256 are supported on STM32 devices. Other MCUs may have similar constraints -- check the reference manual for your respective MCU for specifics.

Circular Buffer

A circular buffer can be enabled if you experience flickering.

To enable the circular buffer, add the following to your config.h:

c
#define WS2812_SPI_USE_CIRCULAR_BUFFER

PIO Driver

The following #defines apply only to the PIO driver:

DefineDefaultDescription
WS2812_PIO_USE_PIO1Not definedUse the PIO1 peripheral instead of PIO0

PWM Driver

Depending on the ChibiOS board configuration, you may need to enable PWM at the keyboard level. For STM32, this would look like:

c
#pragma once\n\n#define HAL_USE_PWM TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_PWM_USE_TIM2\n#define STM32_PWM_USE_TIM2 TRUE

The following #defines apply only to the pwm driver:

DefineDefaultDescription
WS2812_PWM_DRIVERPWMD2The PWM driver to use
WS2812_PWM_CHANNEL2The PWM channel to use
WS2812_PWM_PAL_MODE2The pin alternative function to use
WS2812_PWM_DMA_STREAMSTM32_DMA1_STREAM2The DMA Stream for TIMx_UP
WS2812_PWM_DMA_CHANNEL2The DMA Channel for TIMx_UP
WS2812_PWM_DMAMUX_IDNot definedThe DMAMUX configuration for TIMx_UP - only required if your MCU has a DMAMUX peripheral
WS2812_PWM_COMPLEMENTARY_OUTPUTNot definedWhether the PWM output is complementary (TIMx_CHyN)

TIP

Using a complementary timer output (TIMx_CHyN) is possible only for advanced-control timers (1, 8 and 20 on STM32). Complementary outputs of general-purpose timers are not supported due to ChibiOS limitations.

API

void ws2812_init(void)

Initialize the LED driver. This function should be called first.


void ws2812_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED. This function does not immediately update the LEDs; call ws2812_flush() after you are finished.

Arguments


void ws2812_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs.

Arguments


void ws2812_flush(void)

Flush the PWM values to the LED chain.

', 99); +const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

WS2812 Driver

This driver provides support for WorldSemi addressable RGB(W) LEDs, and compatible equivalents:

These LEDs are often called "addressable" because instead of using a wire per color (and per LED), each LED contains a small microchip that understands a special protocol sent over a single wire. The LEDs can be chained together, and the remaining data is passed on to the next. In this way, you can easily control the color of many LEDs using a single GPIO.

Usage

In most cases, the WS2812 driver code is automatically included if you are using either the RGBLight or RGB Matrix feature with the ws2812 driver set, and you would use those APIs instead.

However, if you need to use the driver standalone, add the following to your rules.mk:

make
WS2812_DRIVER_REQUIRED = yes

You can then call the WS2812 API by including ws2812.h in your code.

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
WS2812_DI_PINNot definedThe GPIO pin connected to the DI pin of the first LED in the chain
WS2812_LED_COUNTNot definedNumber of LEDs in the WS2812 chain - automatically set when RGBLight or RGB Matrix is configured
WS2812_TIMING1250The total length of a bit (TH+TL) in nanoseconds
WS2812_T1H900The length of a "1" bit's high phase in nanoseconds
WS2812_T0H350The length of a "0" bit's high phase in nanoseconds
WS2812_TRST_US280The length of the reset phase in microseconds
WS2812_BYTE_ORDERWS2812_BYTE_ORDER_GRBThe byte order of the RGB data
WS2812_RGBWNot definedEnables RGBW support (except i2c driver)

Timing Adjustment

The WS2812 LED communication protocol works by encoding a "1" bit with a long high pulse (T1H), and a "0" bit with a shorter pulse (T0H). The total cycle length of a bit is the same. The "reset" pulse (TRST) latches the sent RGB data to all of the LEDs and denotes a completed "frame".

Some WS2812 variants have slightly different timing parameter requirements, which can be accounted for if necessary using the above #defines in your config.h.

Byte Order

Some WS2812 variants may have their color components in a different physical or logical order. For example, the WS2812B-2020 has physically swapped red and green LEDs, which causes the wrong color to be displayed, because the default order of the bytes sent over the wire is defined as GRB. If you find your LED colors are consistently swapped, you may need to change the byte order by adding the following to your config.h:

c
#define WS2812_BYTE_ORDER WS2812_BYTE_ORDER_GRB

Where the byte order may be one of:

Byte OrderKnown Devices
GRBMost WS2812s, SK6812, SK6805
RGBWS2812B-2020
BGRTM1812

RGBW Support

Rendering the color white with RGB LEDs is typically inconsistent due to inherent variations between each individual LED die. However, some WS2812 variants (such as SK6812RGBW) also possess a white LED along with the red, green, and blue channels, which allows for a more accurate white to be displayed.

QMK can automatically convert the RGB data to be sent to the LEDs to mix in the white channel:

w = min(r, g, b)\nr -= w\ng -= w\nb -= w

Thus, an RGB triplet of 255,255,255 will simply turn on the white LED fully (0,0,0,255).

To enable RGBW conversion, add the following to your config.h:

c
#define WS2812_RGBW

Driver Configuration

Driver selection can be configured in rules.mk as WS2812_DRIVER, or in info.json as ws2812.driver. Valid values are bitbang (default), i2c, spi, pwm, vendor, or custom. See below for information on individual drivers.

Bitbang Driver

This is the default WS2812 driver. It operates by "bit-banging" ie. directly toggling the GPIO.

Please note that on AVR devices, due to the tight timing requirements longer chains and/or heavy CPU loads may cause visible lag. Unfortunately this driver is usually the only option for AVR.

make
WS2812_DRIVER = bitbang

I2C Driver

A specialized driver mainly used for PS2AVRGB (Bootmapper Client) boards, which possess an ATtiny85 that handles the WS2812 LEDs.

make
WS2812_DRIVER = i2c

The following #defines apply only to the i2c driver:

DefineDefaultDescription
WS2812_I2C_ADDRESS0xB0The I2C address of the ATtiny85.
WS2812_I2C_TIMEOUT100The I2C timeout, in milliseconds.

PIO Driver

This driver is RP2040-only, and leverages the onboard PIO (programmable I/O) system and DMA to offload processing from the CPU.

The WS2812 PIO program uses one state machine, six instructions and one DMA interrupt handler callback. Due to the implementation the time resolution for this driver is 50 ns - any value not specified in this interval will be rounded to the next matching interval.

make
WS2812_DRIVER = vendor

PWM Driver

This driver is ARM-only, and leverages the onboard PWM peripheral and DMA to offload processing from the CPU.

make
WS2812_DRIVER = pwm

SPI Driver

This driver is ARM-only, and leverages the onboard SPI peripheral and DMA to offload processing from the CPU. The DI pin must be connected to the MOSI pin on the MCU, and all other SPI pins must be left unused. This is also very dependent on your MCU's SPI peripheral clock speed, and may or may not be possible depending on the MCU selected.

make
WS2812_DRIVER = spi

ChibiOS/ARM Configuration

The following defines apply only to ARM devices:

DefineDefaultDescription
WS2812_T1L(WS2812_TIMING - WS2812_T1H)The length of a "1" bit's low phase in nanoseconds (bitbang and PIO drivers only)
WS2812_T0L(WS2812_TIMING - WS2812_T0H)The length of a "0" bit's low phase in nanoseconds (bitbang and PIO drivers only)

Logic Levels

WS2812 LEDs usually operate at 5V, but some microcontrollers, particularly ARM-based ones, run on 3.3V. This can pose an issue when driving the LED chain as the logic level voltage is lower than the power supply voltage, leading to unreliable data transmission. There are two main workarounds:

1. Open Drain Circuit

By default, WS2812_DI_PIN is configured as a push-pull output, meaning the pin is effectively always driven either to VCC or to ground; however, it can be configured in open drain mode instead.

In this mode, the MCU will only pull the GPIO low, and leaves it floating otherwise. A pullup resistor (typically around 10kΩ) between DI and 5V is then responsible for pulling the line high when the MCU is not driving the GPIO.

To use the DI pin in open drain configuration, add the following to your config.h:

c
#define WS2812_EXTERNAL_PULLUP

WARNING

Because the GPIO is being pulled to 5V in this situation rather than VCC (3.3V), it must be a 5V tolerant pin. Consult your MCU's datasheet first – if there are no eligible pins, you must use a level shifter instead.

2. Level Shifter

A level shifter IC, such as the SN74LV1T34, can be placed between the GPIO and the first LED's DI pin to convert the 3.3V logic to 5V. This requires no additional configuration in the firmware, nor a 5V tolerant GPIO, but may be more expensive and is generally less handwire-friendly.

SPI Driver

Depending on the ChibiOS board configuration, you may need to enable SPI at the keyboard level. For STM32, this would look like:

c
#pragma once\n\n#define HAL_USE_SPI TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_SPI_USE_SPI1\n#define STM32_SPI_USE_SPI1 TRUE

The following defines apply only to the spi driver:

DefineDefaultDescription
WS2812_SPI_DRIVERSPID1The SPI driver to use
WS2812_SPI_MOSI_PAL_MODE5The MOSI pin alternative function to use
WS2812_SPI_SCK_PINNot definedThe SCK pin - required for F072 and possibly others
WS2812_SPI_SCK_PAL_MODE5The SCK pin alternative function to use - required for F072 and possibly others
WS2812_SPI_DIVISOR16The divisor used to adjust the baudrate
WS2812_SPI_USE_CIRCULAR_BUFFERNot definedEnable a circular buffer for improved rendering

Setting the Baudrate

To adjust the SPI baudrate, you will need to derive the target baudrate from the clock tree provided by STM32CubeMX, and add the following to your config.h:

c
#define WS2812_SPI_DIVISOR 16

Only divisors of 2, 4, 8, 16, 32, 64, 128 and 256 are supported on STM32 devices. Other MCUs may have similar constraints -- check the reference manual for your respective MCU for specifics.

Circular Buffer

A circular buffer can be enabled if you experience flickering.

To enable the circular buffer, add the following to your config.h:

c
#define WS2812_SPI_USE_CIRCULAR_BUFFER

PIO Driver

The following #defines apply only to the PIO driver:

DefineDefaultDescription
WS2812_PIO_USE_PIO1Not definedUse the PIO1 peripheral instead of PIO0

PWM Driver

Depending on the ChibiOS board configuration, you may need to enable PWM at the keyboard level. For STM32, this would look like:

c
#pragma once\n\n#define HAL_USE_PWM TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_PWM_USE_TIM2\n#define STM32_PWM_USE_TIM2 TRUE

The following #defines apply only to the pwm driver:

DefineDefaultDescription
WS2812_PWM_DRIVERPWMD2The PWM driver to use
WS2812_PWM_CHANNEL2The PWM channel to use
WS2812_PWM_PAL_MODE2The pin alternative function to use
WS2812_PWM_DMA_STREAMSTM32_DMA1_STREAM2The DMA Stream for TIMx_UP
WS2812_PWM_DMA_CHANNEL2The DMA Channel for TIMx_UP
WS2812_PWM_DMAMUX_IDNot definedThe DMAMUX configuration for TIMx_UP - only required if your MCU has a DMAMUX peripheral
WS2812_PWM_COMPLEMENTARY_OUTPUTNot definedWhether the PWM output is complementary (TIMx_CHyN)

TIP

Using a complementary timer output (TIMx_CHyN) is possible only for advanced-control timers (1, 8 and 20 on STM32). Complementary outputs of general-purpose timers are not supported due to ChibiOS limitations.

API

void ws2812_init(void)

Initialize the LED driver. This function should be called first.


void ws2812_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

Set the color of a single LED. This function does not immediately update the LEDs; call ws2812_flush() after you are finished.

Arguments


void ws2812_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

Set the color of all LEDs.

Arguments


void ws2812_flush(void)

Flush the PWM values to the LED chain.

', 99); const _hoisted_100 = [ _hoisted_1 ]; diff --git a/assets/drivers_ws2812.md.D506ofII.lean.js b/assets/drivers_ws2812.md.3iqmoMnj.lean.js similarity index 82% rename from assets/drivers_ws2812.md.D506ofII.lean.js rename to assets/drivers_ws2812.md.3iqmoMnj.lean.js index 554a71789f1..3c5b3da8db8 100644 --- a/assets/drivers_ws2812.md.D506ofII.lean.js +++ b/assets/drivers_ws2812.md.3iqmoMnj.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"WS2812 Driver","description":"","frontmatter":{},"headers":[],"relativePath":"drivers/ws2812.md","filePath":"drivers/ws2812.md","lastUpdated":null}'); const _sfc_main = { name: "drivers/ws2812.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 99); diff --git a/assets/easy_maker.md.CWKgP0PT.js b/assets/easy_maker.md.CyCtS9iR.js similarity index 96% rename from assets/easy_maker.md.CWKgP0PT.js rename to assets/easy_maker.md.CyCtS9iR.js index cb1262ad9b7..1ec50b8f21c 100644 --- a/assets/easy_maker.md.CWKgP0PT.js +++ b/assets/easy_maker.md.CyCtS9iR.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/JcDhZll.png"; const __pageData = JSON.parse('{"title":"Easy Maker - Build One-Off Projects In Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"easy_maker.md","filePath":"easy_maker.md","lastUpdated":null}'); const _sfc_main = { name: "easy_maker.md" }; diff --git a/assets/easy_maker.md.CWKgP0PT.lean.js b/assets/easy_maker.md.CyCtS9iR.lean.js similarity index 84% rename from assets/easy_maker.md.CWKgP0PT.lean.js rename to assets/easy_maker.md.CyCtS9iR.lean.js index 855734b6a90..7979abf1e99 100644 --- a/assets/easy_maker.md.CWKgP0PT.lean.js +++ b/assets/easy_maker.md.CyCtS9iR.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/JcDhZll.png"; const __pageData = JSON.parse('{"title":"Easy Maker - Build One-Off Projects In Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"easy_maker.md","filePath":"easy_maker.md","lastUpdated":null}'); const _sfc_main = { name: "easy_maker.md" }; diff --git a/assets/faq_build.md.DRUGJDZw.js b/assets/faq_build.md.DUKI8CAq.js similarity index 98% rename from assets/faq_build.md.DRUGJDZw.js rename to assets/faq_build.md.DUKI8CAq.js index 5d068743472..3af295af4ab 100644 --- a/assets/faq_build.md.DRUGJDZw.js +++ b/assets/faq_build.md.DUKI8CAq.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Frequently Asked Build Questions","description":"","frontmatter":{},"headers":[],"relativePath":"faq_build.md","filePath":"faq_build.md","lastUpdated":null}'); const _sfc_main = { name: "faq_build.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Frequently Asked Build Questions

This page covers questions about building QMK. If you haven't yet done so, you should read the Build Environment Setup and Make Instructions guides.

Can't Program on Linux

You will need proper permissions to operate a device. For Linux users, see the instructions regarding udev rules, below. If you have issues with udev, a work-around is to use the sudo command. If you are not familiar with this command, check its manual with man sudo or see this webpage.

An example of using sudo, when your controller is ATMega32u4:

$ sudo dfu-programmer atmega32u4 erase --force\n$ sudo dfu-programmer atmega32u4 flash your.hex\n$ sudo dfu-programmer atmega32u4 reset\n

or just:

$ sudo make <keyboard>:<keymap>:flash\n

Note that running make with sudo is generally not a good idea, and you should use one of the former methods, if possible.

Linux udev Rules

On Linux, you'll need proper privileges to communicate with the bootloader device. You can either use sudo when flashing firmware (not recommended), or place this file into /etc/udev/rules.d/.

Once added, run the following:

sudo udevadm control --reload-rules\nsudo udevadm trigger

Note: With older versions of ModemManager (< 1.12), filtering only works when not in strict mode. The following commands can update that setting:

printf '[Service]\\nExecStart=\\nExecStart=/usr/sbin/ModemManager --filter-policy=default' | sudo tee /etc/systemd/system/ModemManager.service.d/policy.conf\nsudo systemctl daemon-reload\nsudo systemctl restart ModemManager

Serial device is not detected in bootloader mode on Linux

Make sure your kernel has appropriate support for your device. If your device uses USB ACM, such as Pro Micro (Atmega32u4), make sure to include CONFIG_USB_ACM=y. Other devices may require USB_SERIAL and any of its sub options.

Unknown Device for DFU Bootloader

Issues encountered when flashing keyboards on Windows are most often due to having the wrong drivers installed for the bootloader, or none at all.

Re-running the QMK installation script (curl -fsSL https://install.qmk.fm | sh) or reinstalling the QMK Toolbox may fix the issue. Alternatively, you can download and run the qmk_driver_installer package manually.

If that doesn't work, then you may need to download and run Zadig. See Bootloader Driver Installation with Zadig for more detailed information.

USB VID and PID

You can use any ID you want with editing config.h. Using any presumably unused ID will be no problem in fact except for very low chance of collision with other product.

Most boards in QMK use 0xFEED as the vendor ID. You should look through other keyboards to make sure you pick a unique Product ID.

Also see this. https://github.com/tmk/tmk_keyboard/issues/150

You can buy a really unique VID:PID here. I don't think you need this for personal use.

I just flashed my keyboard and it does nothing/keypresses don't register - it's also ARM (rev6 planck, clueboard 60, hs60v2, etc...) (Feb 2019)

Due to how EEPROM works on ARM based chips, saved settings may no longer be valid. This affects the default layers, and may, under certain circumstances we are still figuring out, make the keyboard unusable. Resetting the EEPROM will correct this.

Planck rev6 reset EEPROM can be used to force an eeprom reset. After flashing this image, flash your normal firmware again which should restore your keyboard to normal working order. Preonic rev3 reset EEPROM

If bootmagic is enabled in any form, you should be able to do this too (see Bootmagic docs and keyboard info for specifics on how to do this).

', 31); diff --git a/assets/faq_build.md.DRUGJDZw.lean.js b/assets/faq_build.md.DUKI8CAq.lean.js similarity index 82% rename from assets/faq_build.md.DRUGJDZw.lean.js rename to assets/faq_build.md.DUKI8CAq.lean.js index a3a62f2d8ca..0e3cd783056 100644 --- a/assets/faq_build.md.DRUGJDZw.lean.js +++ b/assets/faq_build.md.DUKI8CAq.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Frequently Asked Build Questions","description":"","frontmatter":{},"headers":[],"relativePath":"faq_build.md","filePath":"faq_build.md","lastUpdated":null}'); const _sfc_main = { name: "faq_build.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 31); diff --git a/assets/faq_debug.md.DPA-3BUa.js b/assets/faq_debug.md.DfevHt05.js similarity index 99% rename from assets/faq_debug.md.DPA-3BUa.js rename to assets/faq_debug.md.DfevHt05.js index 1d797876ef2..eb6632616f8 100644 --- a/assets/faq_debug.md.DPA-3BUa.js +++ b/assets/faq_debug.md.DfevHt05.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Debugging FAQ","description":"","frontmatter":{},"headers":[],"relativePath":"faq_debug.md","filePath":"faq_debug.md","lastUpdated":null}'); const _sfc_main = { name: "faq_debug.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Debugging FAQ

This page details various common questions people have about troubleshooting their keyboards.

Debugging

Your keyboard will output debug information if you have CONSOLE_ENABLE = yes in your rules.mk. By default the output is very limited, but you can turn on debug mode to increase the amount of debug output. Use the DB_TOGG keycode in your keymap, use the Command feature to enable debug mode, or add the following code to your keymap.

c
void keyboard_post_init_user(void) {\n  // Customise these values to desired behaviour\n  debug_enable=true;\n  debug_matrix=true;\n  //debug_keyboard=true;\n  //debug_mouse=true;\n}

Debugging Tools

Various tools are available to debug your keyboard.

Debugging With QMK Toolbox

For compatible platforms, QMK Toolbox can be used to display debug messages from your keyboard.

Debugging with QMK CLI

Prefer a terminal based solution? The QMK CLI console command can be used to display debug messages from your keyboard.

Debugging With hid_listen

Something stand-alone? hid_listen, provided by PJRC, can also be used to display debug messages. Prebuilt binaries for Windows,Linux,and MacOS are available.

Sending Your Own Debug Messages

Sometimes it's useful to print debug messages from within your custom code. Doing so is pretty simple. Start by including print.h at the top of your file:

c
#include "print.h"

After that you can use a few different print functions:

Debug Examples

Below is a collection of real world debugging examples. For additional information, refer to Debugging/Troubleshooting QMK.

Which matrix position is this keypress?

When porting, or when attempting to diagnose pcb issues, it can be useful to know if a keypress is scanned correctly. To enable logging for this scenario, add the following code to your keymaps keymap.c

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  // If console is enabled, it will print the matrix position and status of each key pressed\n#ifdef CONSOLE_ENABLE\n    uprintf("KL: kc: 0x%04X, col: %2u, row: %2u, pressed: %u, time: %5u, int: %u, count: %u\\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count);\n#endif \n  return true;\n}

Example output

Waiting for device:.......\nListening:\nKL: kc: 169, col: 0, row: 0, pressed: 1, time: 15505, int: 0, count: 0\nKL: kc: 169, col: 0, row: 0, pressed: 0, time: 15510, int: 0, count: 0\nKL: kc: 174, col: 1, row: 0, pressed: 1, time: 15703, int: 0, count: 0\nKL: kc: 174, col: 1, row: 0, pressed: 0, time: 15843, int: 0, count: 0\nKL: kc: 172, col: 2, row: 0, pressed: 1, time: 16303, int: 0, count: 0\nKL: kc: 172, col: 2, row: 0, pressed: 0, time: 16411, int: 0, count: 0

Which keycode is this keypress?

Keycodes are logged in the example above as numerical codes, which may be difficult to interpret. For more readable logging, add KEYCODE_STRING_ENABLE = yes in your rules.mk and use get_keycode_string(kc). For example:

c
uprintf("kc: %s\\n", get_keycode_string(keycode));

This logs the keycode as a human-readable string like "LT(2,KC_D)" rather than a numerical code like "0x4207." See the Keycode String section of the Unit Testing page for more information.

How long did it take to scan for a keypress?

When testing performance issues, it can be useful to know the frequency at which the switch matrix is being scanned. To enable logging for this scenario, add the following code to your keymaps config.h

c
#define DEBUG_MATRIX_SCAN_RATE

Example output

  > matrix scan frequency: 315\n  > matrix scan frequency: 313\n  > matrix scan frequency: 316\n  > matrix scan frequency: 316\n  > matrix scan frequency: 316\n  > matrix scan frequency: 316

hid_listen Can't Recognize Device

When debug console of your device is not ready you will see like this:

Waiting for device:.........

Once the device is plugged in then hid_listen finds it you will get this message:

Waiting for new device:.........................\nListening:

If you can't get this 'Listening:' message try building with CONSOLE_ENABLE=yes in [Makefile]

You may need privileges to access the device an OS like Linux. Try sudo hid_listen.

On many Linux distros you can avoid having to run hid_listen as root by creating a file called /etc/udev/rules.d/70-hid-listen.rules with the following content:

SUBSYSTEM=="hidraw", ATTRS{idVendor}=="abcd", ATTRS{idProduct}=="def1", TAG+="uaccess", RUN{builtin}+="uaccess"

Replace abcd and def1 with your keyboard's vendor and product id, letters must be lowercase. The RUN{builtin}+="uaccess" part is only needed for older distros.

Can't Get Message on Console

Check:

', 47); diff --git a/assets/faq_debug.md.DPA-3BUa.lean.js b/assets/faq_debug.md.DfevHt05.lean.js similarity index 82% rename from assets/faq_debug.md.DPA-3BUa.lean.js rename to assets/faq_debug.md.DfevHt05.lean.js index eac6babeeb4..768d9693060 100644 --- a/assets/faq_debug.md.DPA-3BUa.lean.js +++ b/assets/faq_debug.md.DfevHt05.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Debugging FAQ","description":"","frontmatter":{},"headers":[],"relativePath":"faq_debug.md","filePath":"faq_debug.md","lastUpdated":null}'); const _sfc_main = { name: "faq_debug.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 47); diff --git a/assets/faq_general.md.D6klmZef.js b/assets/faq_general.md.CSwG14K9.js similarity index 98% rename from assets/faq_general.md.D6klmZef.js rename to assets/faq_general.md.CSwG14K9.js index 559f6030a15..252080e0a28 100644 --- a/assets/faq_general.md.D6klmZef.js +++ b/assets/faq_general.md.CSwG14K9.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"faq_general.md","filePath":"faq_general.md","lastUpdated":null}'); const _sfc_main = { name: "faq_general.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Frequently Asked Questions

What is QMK?

QMK, short for Quantum Mechanical Keyboard, is a group of people building tools for custom keyboards. We started with the QMK firmware, a heavily modified fork of TMK.

I don't know where to start!

If this is the case, then you should start with our Newbs Guide. There is a lot of great info there, and that should cover everything you need to get started.

If that's an issue, hop onto the QMK Configurator, as that will handle a majority of what you need there.

How can I flash the firmware I built?

First, head to the Compiling/Flashing FAQ Page. There is a good deal of info there, and you'll find a bunch of solutions to common issues there.

What if I have an issue that isn't covered here?

Okay, that's fine. Then please check the open issues in our GitHub to see if somebody is experiencing the same thing (make sure it's not just similar, but actually the same).

If you can't find anything, then please open a new issue!

What if I found a bug?

Then please open an issue, and if you know how to fix it, open up a Pull Request on GitHub with the fix.

But git and GitHub are intimidating!

Don't worry, we have some pretty nice Guidelines on how to start using git and GitHub to make things easier to develop.

Additionally, you can find additional git and GitHub related links here.

I have a Keyboard that I want to add support for

Awesome! Open up a Pull Request for it. We'll review the code, and merge it!

What if I want to brand it with QMK?

That's amazing! We would love to assist you with that!

In fact, we have a whole page dedicated to adding QMK Branding to your page and keyboard. This covers pretty much everything you need (knowledge and images) to officially support QMK.

If you have any questions about this, open an issue or head to Discord.

What Differences Are There Between QMK and TMK?

TMK was originally designed and implemented by Jun Wako. QMK started as Jack Humbert's fork of TMK for the Planck. After a while Jack's fork had diverged quite a bit from TMK, and in 2015 Jack decided to rename his fork to QMK.

From a technical standpoint QMK builds upon TMK by adding several new features. Most notably QMK has expanded the number of available keycodes and uses these to implement advanced features like S(), LCTL(), and MO(). You can see a complete list of these keycodes in Keycodes.

From a project and community management standpoint TMK maintains all the officially supported keyboards by himself, with a bit of community support. Separate community maintained forks exist or can be created for other keyboards. Only a few keymaps are provided by default, so users typically don't share keymaps with each other. QMK encourages sharing of both keyboards and keymaps through a centrally managed repository, accepting all pull requests that follow the quality standards. These are mostly community maintained, but the QMK team also helps when necessary.

Both approaches have their merits and their drawbacks, and code flows freely between TMK and QMK when it makes sense.

', 27); diff --git a/assets/faq_general.md.D6klmZef.lean.js b/assets/faq_general.md.CSwG14K9.lean.js similarity index 83% rename from assets/faq_general.md.D6klmZef.lean.js rename to assets/faq_general.md.CSwG14K9.lean.js index 703b066eeb0..f004944fcc0 100644 --- a/assets/faq_general.md.D6klmZef.lean.js +++ b/assets/faq_general.md.CSwG14K9.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Frequently Asked Questions","description":"","frontmatter":{},"headers":[],"relativePath":"faq_general.md","filePath":"faq_general.md","lastUpdated":null}'); const _sfc_main = { name: "faq_general.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 27); diff --git a/assets/faq_keymap.md.UjocxZux.js b/assets/faq_keymap.md.B-f4GotG.js similarity index 99% rename from assets/faq_keymap.md.UjocxZux.js rename to assets/faq_keymap.md.B-f4GotG.js index 8d4a3c44a88..ad6b5a3d99d 100644 --- a/assets/faq_keymap.md.UjocxZux.js +++ b/assets/faq_keymap.md.B-f4GotG.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/5wsh5wM.png"; const __pageData = JSON.parse('{"title":"Keymap FAQ","description":"","frontmatter":{},"headers":[],"relativePath":"faq_keymap.md","filePath":"faq_keymap.md","lastUpdated":null}'); const _sfc_main = { name: "faq_keymap.md" }; diff --git a/assets/faq_keymap.md.UjocxZux.lean.js b/assets/faq_keymap.md.B-f4GotG.lean.js similarity index 83% rename from assets/faq_keymap.md.UjocxZux.lean.js rename to assets/faq_keymap.md.B-f4GotG.lean.js index 7aaa88cbd81..9705d29b658 100644 --- a/assets/faq_keymap.md.UjocxZux.lean.js +++ b/assets/faq_keymap.md.B-f4GotG.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/5wsh5wM.png"; const __pageData = JSON.parse('{"title":"Keymap FAQ","description":"","frontmatter":{},"headers":[],"relativePath":"faq_keymap.md","filePath":"faq_keymap.md","lastUpdated":null}'); const _sfc_main = { name: "faq_keymap.md" }; diff --git a/assets/faq_misc.md.BPIgMHQW.js b/assets/faq_misc.md.CQG0a42D.js similarity index 98% rename from assets/faq_misc.md.BPIgMHQW.js rename to assets/faq_misc.md.CQG0a42D.js index a65896407bd..052d4ea071c 100644 --- a/assets/faq_misc.md.BPIgMHQW.js +++ b/assets/faq_misc.md.CQG0a42D.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Miscellaneous FAQ","description":"","frontmatter":{},"headers":[],"relativePath":"faq_misc.md","filePath":"faq_misc.md","lastUpdated":null}'); const _sfc_main = { name: "faq_misc.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Miscellaneous FAQ

How do I test my keyboard?

Testing your keyboard is usually pretty straightforward. Press every single key and make sure it sends the keys you expect. You can use QMK Configurator's test mode to check your keyboard, even if it doesn't run QMK.

Safety Considerations

You probably don't want to "brick" your keyboard, making it impossible to rewrite firmware onto it. Here are some of the parameters to show what things are (and likely aren't) too risky.

Linking: .build/planck_rev4_cbbrowne.elf                                                            [OK]\nCreating load file for Flash: .build/planck_rev4_cbbrowne.hex                                       [OK]\n\nSize after:\n   text    data     bss     dec     hex filename\n      0   22396       0   22396    577c planck_rev4_cbbrowne.hex

NKRO Doesn't work

First you have to compile firmware with the build option NKRO_ENABLE in Makefile.

Try Magic N command(LShift+RShift+N by default) when NKRO still doesn't work. You can use this command to toggle between NKRO and 6KRO mode temporarily. In some situations NKRO doesn't work and you will need to switch to 6KRO mode, in particular when you are in BIOS.

TrackPoint Needs Reset Circuit (PS/2 Mouse Support)

Without reset circuit you will have inconsistent result due to improper initialization of the hardware. See circuit schematic of TPM754:

Can't Read Column of Matrix Beyond 16

Use 1UL<<16 instead of 1<<16 in read_cols() in [matrix.h] when your columns goes beyond 16.

In C 1 means one of [int] type which is [16 bit] in case of AVR, so you can't shift left more than 15. Thus, calculating 1<<16 will unexpectedly equal zero. To work around this, you have to use [unsigned long] type with 1UL.

https://deskthority.net/workshop-f7/rebuilding-and-redesigning-a-classic-thinkpad-keyboard-t6181-60.html#p146279

Special Extra Key Doesn't Work (System, Audio Control Keys)

You need to define EXTRAKEY_ENABLE in rules.mk to use them in QMK.

EXTRAKEY_ENABLE = yes          # Audio control and System control

Wake from Sleep Doesn't Work

In Windows check Allow this device to wake the computer setting in Power Management property tab of Device Manager. Also check your BIOS settings. Pressing any key during sleep should wake host.

Using Arduino?

Note that Arduino pin naming is different from actual chip. For example, Arduino pin D0 is not PD0. Check circuit with its schematics yourself.

Arduino Leonardo and micro have ATMega32U4 and can be used for TMK, though Arduino bootloader may be a problem.

Enabling JTAG

By default, the JTAG debugging interface is disabled as soon as the keyboard starts up. JTAG-capable MCUs come from the factory with the JTAGEN fuse set, and it takes over certain pins of the MCU that the board may be using for the switch matrix, LEDs, etc.

If you would like to keep JTAG enabled, just add the following to your config.h:

c
#define NO_JTAG_DISABLE

USB 3 Compatibility

Some problems can be fixed by switching from a USB 3.x port to a USB 2.0 port.

Mac Compatibility

OS X 10.11 and Hub

See here: https://geekhack.org/index.php?topic=14290.msg1884034#msg1884034

Problem in BIOS (UEFI) Setup/Resume (Sleep & Wake)/Power Cycles

Some people reported their keyboard stops working in BIOS and/or after resume(power cycles).

As of now the root cause is not clear, but some build options seem to be related. In Makefile, try to disable options like CONSOLE_ENABLE, NKRO_ENABLE, SLEEP_LED_ENABLE and/or others.

More info:

', 41); diff --git a/assets/faq_misc.md.BPIgMHQW.lean.js b/assets/faq_misc.md.CQG0a42D.lean.js similarity index 82% rename from assets/faq_misc.md.BPIgMHQW.lean.js rename to assets/faq_misc.md.CQG0a42D.lean.js index 9a048e61cc9..40aba018ac0 100644 --- a/assets/faq_misc.md.BPIgMHQW.lean.js +++ b/assets/faq_misc.md.CQG0a42D.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Miscellaneous FAQ","description":"","frontmatter":{},"headers":[],"relativePath":"faq_misc.md","filePath":"faq_misc.md","lastUpdated":null}'); const _sfc_main = { name: "faq_misc.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 41); diff --git a/assets/feature_advanced_keycodes.md.DgDykEfT.js b/assets/feature_advanced_keycodes.md.B__eRJaD.js similarity index 99% rename from assets/feature_advanced_keycodes.md.DgDykEfT.js rename to assets/feature_advanced_keycodes.md.B__eRJaD.js index 4cda8f960d8..fddf91dd89e 100644 --- a/assets/feature_advanced_keycodes.md.DgDykEfT.js +++ b/assets/feature_advanced_keycodes.md.B__eRJaD.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Modifier Keys","description":"","frontmatter":{},"headers":[],"relativePath":"feature_advanced_keycodes.md","filePath":"feature_advanced_keycodes.md","lastUpdated":null}'); const _sfc_main = { name: "feature_advanced_keycodes.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Modifier Keys

These allow you to combine a modifier with a keycode. When pressed, the keydown event for the modifier, then kc will be sent. On release, the keyup event for kc, then the modifier will be sent.

KeyAliasesDescription
LCTL(kc)C(kc)Hold Left Control and press kc
LSFT(kc)S(kc)Hold Left Shift and press kc
LALT(kc)A(kc), LOPT(kc)Hold Left Alt and press kc
LGUI(kc)G(kc), LCMD(kc), LWIN(kc)Hold Left GUI and press kc
LCS(kc)Hold Left Control and Left Shift and press kc
LCA(kc)Hold Left Control and Left Alt and press kc
LCG(kc)Hold Left Control and Left GUI and press kc
LSA(kc)Hold Left Shift and Left Alt and press kc
LSG(kc)Hold Left Shift and Left GUI and press kc
LAG(kc)Hold Left Alt and Left GUI and press kc
LCSG(kc)Hold Left Control, Left Shift and Left GUI and press kc
LCAG(kc)Hold Left Control, Left Alt and Left GUI and press kc
LSAG(kc)Hold Left Shift, Left Alt and Left GUI and press kc
RCTL(kc)Hold Right Control and press kc
RSFT(kc)Hold Right Shift and press kc
RALT(kc)ROPT(kc), ALGR(kc)Hold Right Alt and press kc
RGUI(kc)RCMD(kc), RWIN(kc)Hold Right GUI and press kc
RCA(kc)Hold Right Control and Right Alt and press kc
RCS(kc)Hold Right Control and Right Shift and press kc
RCG(kc)Hold Right Control and Right GUI and press kc
RSA(kc)Hold Right Shift and Right Alt and press kc
RSG(kc)Hold Right Shift and Right GUI and press kc
RAG(kc)Hold Right Alt and Right GUI and press kc
RCSG(kc)Hold Right Control, Right Shift and Right GUI and press kc
RCAG(kc)Hold Right Control, Right Alt and Right GUI and press kc
RSAG(kc)Hold Right Shift, Right Alt and Right GUI and press kc
MEH(kc)Hold Left Control, Left Shift and Left Alt and press kc
HYPR(kc)Hold Left Control, Left Shift, Left Alt and Left GUI and press kc1

1. More information on the Hyper key can be found on this blog post by Brett Terpstra.

You can also chain them, for example LCTL(LALT(KC_DEL)), C(A(KC_DEL)), or LCA(KC_DEL) all make a key that sends Control+Alt+Delete with a single keypress.

Checking Modifier State

The current modifier state can mainly be accessed with two functions: get_mods() for normal modifiers and modtaps and get_oneshot_mods() for one-shot modifiers (unless they're held, in which case they act like normal modifier keys).

The presence of one or more specific modifiers in the current modifier state can be detected by ANDing the modifier state with a mod mask corresponding to the set of modifiers you want to match for. The reason why bitwise operators are used is that the modifier state is stored as a single byte in the format (GASC)R(GASC)L.

Thus, to give an example, 01000010 would be the internal representation of LShift+RAlt. For more information on bitwise operators in C, click here to open the Wikipedia page on the topic.

In practice, this means that you can check whether a given modifier is active with get_mods() & MOD_BIT(KC_<modifier>) (see the list of modifier keycodes) or with get_mods() & MOD_MASK_<modifier> if the difference between left and right hand modifiers is not important and you want to match both. Same thing can be done for one-shot modifiers if you replace get_mods() with get_oneshot_mods().

To check that only a specific set of mods is active at a time, use a simple equality operator: get_mods() == <mod mask>.

For example, let's say you want to trigger a piece of custom code if one-shot left control and one-shot left shift are on but every other one-shot mods are off. To do so, you can compose the desired mod mask by combining the mod bits for left control and shift with (MOD_BIT(KC_LCTL) | MOD_BIT(KC_LSFT)) and then plug it in: get_oneshot_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_LSFT)). Using MOD_MASK_CS instead for the mod bitmask would have forced you to press four modifier keys (both versions of control and shift) to fulfill the condition.

The full list of mod masks is as follows:

Mod Mask NameMatching Modifiers
MOD_MASK_CTRLLCTRL , RCTRL
MOD_MASK_SHIFTLSHIFT , RSHIFT
MOD_MASK_ALTLALT , RALT
MOD_MASK_GUILGUI , RGUI
MOD_MASK_CSCTRL , SHIFT
MOD_MASK_CA(L/R)CTRL , (L/R)ALT
MOD_MASK_CG(L/R)CTRL , (L/R)GUI
MOD_MASK_SA(L/R)SHIFT , (L/R)ALT
MOD_MASK_SG(L/R)SHIFT , (L/R)GUI
MOD_MASK_AG(L/R)ALT , (L/R)GUI
MOD_MASK_CSA(L/R)CTRL , (L/R)SHIFT , (L/R)ALT
MOD_MASK_CSG(L/R)CTRL , (L/R)SHIFT , (L/R)GUI
MOD_MASK_CAG(L/R)CTRL , (L/R)ALT , (L/R)GUI
MOD_MASK_SAG(L/R)SHIFT , (L/R)ALT , (L/R)GUI
MOD_MASK_CSAG(L/R)CTRL , (L/R)SHIFT , (L/R)ALT , (L/R)GUI

Aside from accessing the currently active modifiers using get_mods(), there exists some other functions you can use to modify the modifier state, where the mods argument refers to the modifiers bitmask.

Similarly, in addition to get_oneshot_mods(), there also exists these functions for one-shot mods:

Examples

The following examples use advanced macro functions which you can read more about in the documentation page on macros.

Alt + Escape for Alt + Tab

Simple example where chording Left Alt with KC_ESC makes it behave like KC_TAB for alt-tabbing between applications. This example strictly checks if only Left Alt is active, meaning you can't do Alt+Shift+Esc to switch between applications in reverse order. Also keep in mind that this removes the ability to trigger the actual Alt+Escape keyboard shortcut, though it keeps the ability to do AltGr+Escape.

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n\n    case KC_ESC:\n        // Detect the activation of only Left Alt\n        if (get_mods() == MOD_BIT(KC_LALT)) {\n            if (record->event.pressed) {\n                // No need to register KC_LALT because it's already active.\n                // The Alt modifier will apply on this KC_TAB.\n                register_code(KC_TAB);\n            } else {\n                unregister_code(KC_TAB);\n            }\n            // Do not let QMK process the keycode further\n            return false;\n        }\n        // Else, let QMK process the KC_ESC keycode as usual\n        return true;\n\n    }\n    return true;\n};

Shift + Backspace for Delete

Advanced example where the original behaviour of shift is cancelled when chorded with KC_BSPC and is instead fully replaced by KC_DEL. Two main variables are created to make this work well: mod_state and delkey_registered. The first one stores the modifier state and is used to restore it after registering KC_DEL. The second variable is a boolean variable (true or false) which keeps track of the status of KC_DEL to manage the release of the whole Backspace/Delete key correctly.

As opposed to the previous example, this doesn't use strict modifier checking. Pressing KC_BSPC while one or two shifts are active is enough to trigger this custom code, regardless of the state of other modifiers. That approach offers some perks: Ctrl+Shift+Backspace lets us delete the next word (Ctrl+Delete) and Ctrl+Alt+Shift+Backspace lets us execute the Ctrl+Alt+Del keyboard shortcut.

c
// Initialize variable holding the binary\n// representation of active modifiers.\nuint8_t mod_state;\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    // Store the current modifier state in the variable for later reference\n    mod_state = get_mods();\n    switch (keycode) {\n\n    case KC_BSPC:\n        {\n        // Initialize a boolean variable that keeps track\n        // of the delete key status: registered or not?\n        static bool delkey_registered;\n        if (record->event.pressed) {\n            // Detect the activation of either shift keys\n            if (mod_state & MOD_MASK_SHIFT) {\n                // First temporarily canceling both shifts so that\n                // shift isn't applied to the KC_DEL keycode\n                del_mods(MOD_MASK_SHIFT);\n                register_code(KC_DEL);\n                // Update the boolean variable to reflect the status of KC_DEL\n                delkey_registered = true;\n                // Reapplying modifier state so that the held shift key(s)\n                // still work even after having tapped the Backspace/Delete key.\n                set_mods(mod_state);\n                return false;\n            }\n        } else { // on release of KC_BSPC\n            // In case KC_DEL is still being sent even after the release of KC_BSPC\n            if (delkey_registered) {\n                unregister_code(KC_DEL);\n                delkey_registered = false;\n                return false;\n            }\n        }\n        // Let QMK process the KC_BSPC keycode as usual outside of shift\n        return true;\n    }\n\n    }\n    return true;\n};

Alternatively, this can be done with Key Overrides.

Advanced topics

This page used to encompass a large set of features. We have moved many sections that used to be part of this page to their own pages. Everything below this point is simply a redirect so that people following old links on the web find what they're looking for.

Layers

Mod-Tap

One Shot Keys

Tap-Hold Configuration Options

Key Overrides

', 40); diff --git a/assets/feature_advanced_keycodes.md.DgDykEfT.lean.js b/assets/feature_advanced_keycodes.md.B__eRJaD.lean.js similarity index 84% rename from assets/feature_advanced_keycodes.md.DgDykEfT.lean.js rename to assets/feature_advanced_keycodes.md.B__eRJaD.lean.js index 00df9ec3a2b..9bee0e145c4 100644 --- a/assets/feature_advanced_keycodes.md.DgDykEfT.lean.js +++ b/assets/feature_advanced_keycodes.md.B__eRJaD.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Modifier Keys","description":"","frontmatter":{},"headers":[],"relativePath":"feature_advanced_keycodes.md","filePath":"feature_advanced_keycodes.md","lastUpdated":null}'); const _sfc_main = { name: "feature_advanced_keycodes.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 40); diff --git a/assets/feature_converters.md.BcivaQ2Y.js b/assets/feature_converters.md.BvZ97-f7.js similarity index 99% rename from assets/feature_converters.md.BcivaQ2Y.js rename to assets/feature_converters.md.BvZ97-f7.js index 58a54c00eb3..608b35f5444 100644 --- a/assets/feature_converters.md.BcivaQ2Y.js +++ b/assets/feature_converters.md.BvZ97-f7.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/pin_compatible_promicro.svg"; const _imports_1 = "/pin_compatible_elite_c.svg"; const __pageData = JSON.parse('{"title":"Converters","description":"","frontmatter":{},"headers":[],"relativePath":"feature_converters.md","filePath":"feature_converters.md","lastUpdated":null}'); diff --git a/assets/feature_converters.md.BcivaQ2Y.lean.js b/assets/feature_converters.md.BvZ97-f7.lean.js similarity index 98% rename from assets/feature_converters.md.BcivaQ2Y.lean.js rename to assets/feature_converters.md.BvZ97-f7.lean.js index 039adefebb8..22ddd7357ad 100644 --- a/assets/feature_converters.md.BcivaQ2Y.lean.js +++ b/assets/feature_converters.md.BvZ97-f7.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/pin_compatible_promicro.svg"; const _imports_1 = "/pin_compatible_elite_c.svg"; const __pageData = JSON.parse('{"title":"Converters","description":"","frontmatter":{},"headers":[],"relativePath":"feature_converters.md","filePath":"feature_converters.md","lastUpdated":null}'); diff --git a/assets/feature_debounce_type.md.DT3D46BO.js b/assets/feature_debounce_type.md.DmGHbcl5.js similarity index 98% rename from assets/feature_debounce_type.md.DT3D46BO.js rename to assets/feature_debounce_type.md.DmGHbcl5.js index ae5d221fe56..3d24e738612 100644 --- a/assets/feature_debounce_type.md.DT3D46BO.js +++ b/assets/feature_debounce_type.md.DmGHbcl5.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Contact bounce / contact chatter","description":"","frontmatter":{},"headers":[],"relativePath":"feature_debounce_type.md","filePath":"feature_debounce_type.md","lastUpdated":null}'); const _sfc_main = { name: "feature_debounce_type.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Contact bounce / contact chatter

Mechanical switches often don't have a clean single transition between pressed and unpressed states.

In an ideal world, when you press a switch, you would expect the digital pin to see something like this: (X axis showing time

voltage                   +----------------------\n ^                        |\n |                        |\n |      ------------------+\n          ----> time

However in the real world you will actually see contact bounce, which will look like multiple 1->0 and 0->1 transitions, until the value finally settles.

                  +-+ +--+ +-------------\n                  | | |  | |\n                  | | |  | |\n+-----------------+ +-+  +-+

The time it takes for the switch to settle might vary with switch type, age, and even pressing technique.

If the device chooses not to mitigate contact bounce, then often actions that happen when the switch is pressed are repeated multiple times.

There are many ways to handle contact bounce ("Debouncing"). Some include employing additional hardware, for example an RC filter, while there are various ways to do debouncing in software too, often called debounce algorithms. This page discusses software debouncing methods available in QMK.

While technically not considered contact bounce/contact chatter, some switch technologies are susceptible to noise, meaning, while the key is not changing state, sometimes short random 0->1 or 1->0 transitions might be read by the digital circuit, for example:

                  +-+\n                  | |\n                  | |\n+-----------------+ +--------------------

Many debounce methods (but not all) will also make the device resistant to noise. If you are working with a technology that is susceptible to noise, you must choose a debounce method that will also mitigate noise for you.

Types of debounce algorithms

  1. Unit of time: Timestamp (milliseconds) vs Cycles (scans)

    • Debounce algorithms often have a 'debounce time' parameter, that specifies the maximum settling time of the switch contacts. This time might be measured in various units:
      • Cycles-based debouncing waits n cycles (scans), decreasing count by one each matrix_scan
      • Timestamp-based debouncing stores the millisecond timestamp a change occurred, and does subtraction to figure out time elapsed.
    • Timestamp-based debouncing is usually superior, especially in the case of noise-resistant devices because settling times of physical switches is specified in units of time, and should not depend on the matrix scan-rate of the keyboard.
    • Cycles-based debouncing is sometimes considered inferior, because the settling time that it is able to compensate for depends on the performance of the matrix scanning code. If you use cycles-based debouncing, and you significantly improve the performance of your scanning code, you might end up with less effective debouncing. A situation in which cycles-based debouncing might be preferable is when noise is present, and the scanning algorithm is slow, or variable speed. Even if your debounce algorithm is fundamentally noise-resistant, if the scanning is slow, and you are using a timestamp-based algorithm, you might end up making a debouncing decision based on only two sampled values, which will limit the noise-resistance of the algorithm.
    • Currently all built-in debounce algorithms support timestamp-based debouncing only. In the future we might implement cycles-based debouncing, and it will be selectable via a config.h macro.
  2. Symmetric vs Asymmetric

    • Symmetric - apply the same debouncing algorithm, to both key-up and key-down events.
      • Recommended naming convention: sym_*
    • Asymmetric - apply different debouncing algorithms to key-down and key-up events. E.g. Eager key-down, Defer key-up.
      • Recommended naming convention: asym_* followed by details of the type of algorithm in use, in order, for key-down and then key-up
  3. Eager vs Defer

    • Eager - any key change is reported immediately. All further inputs for DEBOUNCE ms are ignored.
      • Eager algorithms are not noise-resistant.
      • Recommended naming conventions:
        • sym_eager_*
        • asym_eager_*_*: key-down is using eager algorithm
        • asym_*_eager_*: key-up is using eager algorithm
    • Defer - wait for no changes for DEBOUNCE ms before reporting change.
      • Defer algorithms are noise-resistant
      • Recommended naming conventions:
        • sym_defer_*
        • asym_defer_*_*: key-down is using defer algorithm
        • asym_*_defer_*: key-up is using defer algorithm
  4. Global vs Per-Key vs Per-Row

    • Global - one timer for all keys. Any key change state affects global timer
      • Recommended naming convention: *_g
    • Per-key - one timer per key
      • Recommended naming convention: *_pk
    • Per-row - one timer per row
      • Recommended naming convention: *_pr
    • Per-key and per-row algorithms consume more resources (in terms of performance, and ram usage), but fast typists might prefer them over global.

Supported Debounce Algorithms

QMK supports multiple algorithms through its debounce API.

Debounce Time

Default debounce time is 5 milliseconds and it can be changed with the following line in config.h:

#define DEBOUNCE 10

TIP

Setting DEBOUNCE to 0 will disable this feature.

Debounce Method

Keyboards may select one of the core debounce methods by adding the following line into rules.mk:

DEBOUNCE_TYPE = <name of algorithm>

Name of algorithm is one of:

AlgorithmDescription
sym_defer_gDebouncing per keyboard. On any state change, a global timer is set. When DEBOUNCE milliseconds of no changes has occurred, all input changes are pushed. This is the highest performance algorithm with lowest memory usage and is noise-resistant.
sym_defer_prDebouncing per row. On any state change, a per-row timer is set. When DEBOUNCE milliseconds of no changes have occurred on that row, the entire row is pushed. This can improve responsiveness over sym_defer_g while being less susceptible to noise than per-key algorithm.
sym_defer_pkDebouncing per key. On any state change, a per-key timer is set. When DEBOUNCE milliseconds of no changes have occurred on that key, the key status change is pushed.
sym_eager_prDebouncing per row. On any state change, response is immediate, followed by DEBOUNCE milliseconds of no further input for that row.
sym_eager_pkDebouncing per key. On any state change, response is immediate, followed by DEBOUNCE milliseconds of no further input for that key.
asym_eager_defer_pkDebouncing per key. On a key-down state change, response is immediate, followed by DEBOUNCE milliseconds of no further input for that key. On a key-up state change, a per-key timer is set. When DEBOUNCE milliseconds of no changes have occurred on that key, the key-up status change is pushed.

TIP

sym_defer_g is the default if DEBOUNCE_TYPE is undefined.

TIP

sym_eager_pr is suitable for use in keyboards where refreshing NUM_KEYS 8-bit counters is computationally expensive or has low scan rate while fingers usually hit one row at a time. This could be appropriate for the ErgoDox models where the matrix is rotated 90°. Hence its "rows" are really columns and each finger only hits a single "row" at a time with normal usage.

Implementing your own debouncing code

You have the option to implement you own debouncing algorithm with the following steps:

', 30); diff --git a/assets/feature_debounce_type.md.DT3D46BO.lean.js b/assets/feature_debounce_type.md.DmGHbcl5.lean.js similarity index 84% rename from assets/feature_debounce_type.md.DT3D46BO.lean.js rename to assets/feature_debounce_type.md.DmGHbcl5.lean.js index 80c8a37fb71..5c612da8863 100644 --- a/assets/feature_debounce_type.md.DT3D46BO.lean.js +++ b/assets/feature_debounce_type.md.DmGHbcl5.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Contact bounce / contact chatter","description":"","frontmatter":{},"headers":[],"relativePath":"feature_debounce_type.md","filePath":"feature_debounce_type.md","lastUpdated":null}'); const _sfc_main = { name: "feature_debounce_type.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 30); diff --git a/assets/feature_eeprom.md.C4jGd07n.js b/assets/feature_eeprom.md.MCCoTyKB.js similarity index 99% rename from assets/feature_eeprom.md.C4jGd07n.js rename to assets/feature_eeprom.md.MCCoTyKB.js index a706877045c..519f914a9aa 100644 --- a/assets/feature_eeprom.md.C4jGd07n.js +++ b/assets/feature_eeprom.md.MCCoTyKB.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Persistent Configuration (EEPROM)","description":"","frontmatter":{},"headers":[],"relativePath":"feature_eeprom.md","filePath":"feature_eeprom.md","lastUpdated":null}'); const _sfc_main = { name: "feature_eeprom.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Persistent Configuration (EEPROM)

This allows you to configure persistent settings for your keyboard. These settings are stored in the EEPROM of your controller, and are retained even after power loss. The settings can be read with eeconfig_read_kb and eeconfig_read_user, and can be written to using eeconfig_update_kb and eeconfig_update_user. This is useful for features that you want to be able to toggle (like toggling rgb layer indication). Additionally, you can use eeconfig_init_kb and eeconfig_init_user to set the default values for the EEPROM.

The complicated part here, is that there are a bunch of ways that you can store and access data via EEPROM, and there is no "correct" way to do this. However, you only have a DWORD (4 bytes) for each function.

Keep in mind that EEPROM has a limited number of writes. While this is very high, it's not the only thing writing to the EEPROM, and if you write too often, you can potentially drastically shorten the life of your MCU.

Example Implementation

This is an example of how to add settings, and read and write it. We're using the user keymap for the example here. This is a complex function, and has a lot going on. In fact, it uses a lot of the above functions to work!

In your keymap.c file, add this to the top:

c
typedef union {\n  uint32_t raw;\n  struct {\n    bool     rgb_layer_change :1;\n  };\n} user_config_t;\n\nuser_config_t user_config;

This sets up a 32 bit structure that we can store settings with in memory, and write to the EEPROM. Using this removes the need to define variables, since they're defined in this structure. Remember that bool (boolean) values use 1 bit, uint8_t uses 8 bits, uint16_t uses up 16 bits. You can mix and match, but changing the order can cause issues, as it will change the values that are read and written.

We're using rgb_layer_change, for the layer_state_set_* function, and use keyboard_post_init_user and process_record_user to configure everything.

Now, using the keyboard_post_init_user code above, you want to add eeconfig_read_user() to it, to populate the structure you've just created. And you can then immediately use this structure to control functionality in your keymap. And It should look like:

c
void keyboard_post_init_user(void) {\n  // Call the keymap level matrix init.\n\n  // Read the user config from EEPROM\n  user_config.raw = eeconfig_read_user();\n\n  // Set default layer, if enabled\n  if (user_config.rgb_layer_change) {\n    rgblight_enable_noeeprom();\n    rgblight_sethsv_noeeprom(HSV_CYAN);\n    rgblight_mode_noeeprom(1);\n  }\n}

The above function will use the EEPROM config immediately after reading it, to set the default layer's RGB color. The "raw" value of it is converted in a usable structure based on the "union" that you created above.

c
layer_state_t layer_state_set_user(layer_state_t state) {\n    switch (get_highest_layer(state)) {\n    case _RAISE:\n        if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom(HSV_MAGENTA); rgblight_mode_noeeprom(1); }\n        break;\n    case _LOWER:\n        if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom(HSV_RED); rgblight_mode_noeeprom(1); }\n        break;\n    case _PLOVER:\n        if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom(HSV_GREEN); rgblight_mode_noeeprom(1); }\n        break;\n    case _ADJUST:\n        if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom(HSV_WHITE); rgblight_mode_noeeprom(1); }\n        break;\n    default: //  for any other layers, or the default layer\n        if (user_config.rgb_layer_change) { rgblight_sethsv_noeeprom(HSV_CYAN); rgblight_mode_noeeprom(1); }\n        break;\n    }\n  return state;\n}

This will cause the RGB underglow to be changed ONLY if the value was enabled. Now to configure this value, create a new keycode for process_record_user called RGB_LYR. Additionally, we want to make sure that if you use the normal RGB codes, that it turns off Using the example above, make it look this:

c
\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) {\n    case FOO:\n      if (record->event.pressed) {\n        // Do something when pressed\n      } else {\n        // Do something else when release\n      }\n      return false; // Skip all further processing of this key\n    case KC_ENTER:\n        // Play a tone when enter is pressed\n        if (record->event.pressed) {\n            PLAY_SONG(tone_qwerty);\n        }\n        return true; // Let QMK send the enter press/release events\n    case RGB_LYR:  // This allows me to use underglow as layer indication, or as normal\n        if (record->event.pressed) {\n            user_config.rgb_layer_change ^= 1; // Toggles the status\n            eeconfig_update_user(user_config.raw); // Writes the new status to EEPROM\n            if (user_config.rgb_layer_change) { // if layer state indication is enabled,\n                layer_state_set(layer_state);   // then immediately update the layer color\n            }\n        }\n        return false;\n    case RGB_MODE_FORWARD ... RGB_MODE_GRADIENT: // For any of the RGB codes (see quantum_keycodes.h, L400 for reference)\n        if (record->event.pressed) { //This disables layer indication, as it's assumed that if you're changing this ... you want that disabled\n            if (user_config.rgb_layer_change) {        // only if this is enabled\n                user_config.rgb_layer_change = false;  // disable it, and\n                eeconfig_update_user(user_config.raw); // write the settings to EEPROM\n            }\n        }\n        return true; break;\n    default:\n      return true; // Process all other keycodes normally\n  }\n}

And lastly, you want to add the eeconfig_init_user function, so that when the EEPROM is reset, you can specify default values, and even custom actions. To force an EEPROM reset, use the EE_CLR keycode or Bootmagic functionality. For example, if you want to set rgb layer indication by default, and save the default valued.

c
void eeconfig_init_user(void) {  // EEPROM is getting reset!\n  user_config.raw = 0;\n  user_config.rgb_layer_change = true; // We want this enabled by default\n  eeconfig_update_user(user_config.raw); // Write default value to EEPROM now\n\n  // use the non noeeprom versions, to write these values to EEPROM too\n  rgblight_enable(); // Enable RGB by default\n  rgblight_sethsv(HSV_CYAN);  // Set it to CYAN by default\n  rgblight_mode(1); // set to solid by default\n}

And you're done. The RGB layer indication will only work if you want it to. And it will be saved, even after unplugging the board. And if you use any of the RGB codes, it will disable the layer indication, so that it stays on the mode and color that you set it to.

'EECONFIG' Function Documentation

The val is the value of the data that you want to write to EEPROM. And the eeconfig_read_* function return a 32 bit (DWORD) value from the EEPROM.

', 23); diff --git a/assets/feature_eeprom.md.C4jGd07n.lean.js b/assets/feature_eeprom.md.MCCoTyKB.lean.js similarity index 83% rename from assets/feature_eeprom.md.C4jGd07n.lean.js rename to assets/feature_eeprom.md.MCCoTyKB.lean.js index b7938071a45..8cc8dd48229 100644 --- a/assets/feature_eeprom.md.C4jGd07n.lean.js +++ b/assets/feature_eeprom.md.MCCoTyKB.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Persistent Configuration (EEPROM)","description":"","frontmatter":{},"headers":[],"relativePath":"feature_eeprom.md","filePath":"feature_eeprom.md","lastUpdated":null}'); const _sfc_main = { name: "feature_eeprom.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 23); diff --git a/assets/feature_layers.md.BRPaBran.js b/assets/feature_layers.md.BpRyCtyl.js similarity index 99% rename from assets/feature_layers.md.BRPaBran.js rename to assets/feature_layers.md.BpRyCtyl.js index 5d4792d952c..e9362c4b2a9 100644 --- a/assets/feature_layers.md.BRPaBran.js +++ b/assets/feature_layers.md.BpRyCtyl.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Layers","description":"","frontmatter":{},"headers":[],"relativePath":"feature_layers.md","filePath":"feature_layers.md","lastUpdated":null}'); const _sfc_main = { name: "feature_layers.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Layers

One of the most powerful and well used features of QMK Firmware is the ability to use layers. For most people, this amounts to a function key that allows for different keys, much like what you would see on a laptop or tablet keyboard.

For a detailed explanation of how the layer stack works, checkout Keymap Overview.

Switching and Toggling Layers

These functions allow you to activate layers in various ways. Note that layers are not generally independent layouts -- multiple layers can be activated at once, and it's typical for layers to use KC_TRNS to allow keypresses to pass through to lower layers. When using momentary layer switching with MO(), LM(), TT(), or LT(), make sure to leave the key on the above layers transparent or it may not work as intended.

See also the Layer Lock key, which locks the highest active layer until pressed again.

Caveats

Currently, the layer argument of LT() is limited to layers 0-15, and the kc argument to the Basic Keycode set, meaning you can't use keycodes like LCTL(), KC_TILD, or anything greater than 0xFF. This is because QMK uses 16-bit keycodes, of which 4 bits are used for the function identifier and 4 bits for the layer, leaving only 8 bits for the keycode.

For a similar reason, the layer argument of LM() is also limited to layers 0-15 and the mod argument must fit within 5 bits. As a consequence, although left and right modifiers are supported by LM(), it is impossible to mix and match left and right modifiers. Specifying at least one right-hand modifier in a combination such as MOD_RALT|MOD_LSFT will convert all the listed modifiers to their right-hand counterpart. So, using the aforementioned mod-mask will actually send Right Alt+Right Shift. Make sure to use the MOD_xxx constants over alternative ways of specifying modifiers when defining your layer-mod key.

LM(1,KC_LSFT)LM(1,MOD_MASK_SHIFT)LM(1,MOD_BIT(KC_LSFT))LM(1,MOD_LSFT)

Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, Tap Dance can be used to accomplish this.

Working with Layers

Care must be taken when switching layers, it's possible to lock yourself into a layer with no way to deactivate that layer (without unplugging your keyboard.) We've created some guidelines to help users avoid the most common problems.

Beginners

If you are just getting started with QMK you will want to keep everything simple. Follow these guidelines when setting up your layers:

Intermediate Users

Sometimes you need more than one base layer. For example, if you want to switch between QWERTY and Dvorak, switch between layouts for different countries, or switch your layout for different videogames. Your base layers should always be the lowest numbered layers. When you have multiple base layers you should always treat them as mutually exclusive. When one base layer is on the others are off.

Advanced Users

Once you have a good feel for how layers work and what you can do, you can get more creative. The rules listed in the beginner section will help you be successful by avoiding some of the tricker details but they can be constraining, especially for ultra-compact keyboard users. Understanding how layers work will allow you to use them in more advanced ways.

Layers stack on top of each other in numerical order. When determining what a keypress does, QMK scans the layers from the top down, stopping when it reaches the first active layer that is not set to KC_TRNS. As a result if you activate a layer that is numerically lower than your current layer, and your current layer (or another layer that is active and higher than your target layer) has something other than KC_TRNS, that is the key that will be sent, not the key on the layer you just activated. This is the cause of most people's "why doesn't my layer get switched" problem.

Sometimes, you might want to switch between layers in a macro or as part of a tap dance routine. layer_on activates a layer, and layer_off deactivates it. More layer-related functions can be found in action_layer.h.

Functions

There are a number of functions (and variables) related to how you can use or manipulate the layers.

FunctionDescription
layer_state_set(layer_mask)Directly sets the layer state (avoid unless you know what you are doing).
layer_clear()Clears all layers (turns them all off).
layer_move(layer)Turns specified layer on, and all other layers off.
layer_on(layer)Turns specified layer on, leaves all other layers in existing state.
layer_off(layer)Turns specified layer off, leaves all other layers in existing state.
layer_invert(layer)Inverts/toggles the state of the specified layer
layer_or(layer_mask)Turns on layers based on matching bits between specified layer and existing layer state.
layer_and(layer_mask)Turns on layers based on matching enabled bits between specified layer and existing layer state.
layer_xor(layer_mask)Turns on layers based on non-matching bits between specified layer and existing layer state.
layer_debug(layer_mask)Prints out the current bit mask and highest active layer to debugger console.
default_layer_set(layer_mask)Directly sets the default layer state (avoid unless you know what you are doing).
default_layer_or(layer_mask)Turns on layers based on matching bits between specified layer and existing default layer state.
default_layer_and(layer_mask)Turns on layers based on matching enabled bits between specified layer and existing default layer state.
default_layer_xor(layer_mask)Turns on layers based on non-matching bits between specified layer and existing default layer state.
default_layer_debug(layer_mask)Prints out the current bit mask and highest active default layer to debugger console.
set_single_default_layer(layer)Sets the default layer, but does not write it to persistent memory (EEPROM).
set_single_persistent_default_layer(layer)Sets the default layer and writes it to persistent memory (EEPROM).
update_tri_layer(x, y, z)Checks if layers x and y are both on, and sets z based on that (on if both on, otherwise off).
update_tri_layer_state(state, x, y, z)Does the same as update_tri_layer(x, y, z), but from layer_state_set_* functions.

In addition to the functions that you can call, there are a number of callback functions that get called every time the layer changes. This passes the layer state to the function, where it can be read or modified.

CallbackDescription
layer_state_set_kb(layer_state_t state)Callback for layer functions, for keyboard.
layer_state_set_user(layer_state_t state)Callback for layer functions, for users.
default_layer_state_set_kb(layer_state_t state)Callback for default layer functions, for keyboard. Called on keyboard initialization.
default_layer_state_set_user(layer_state_t state)Callback for default layer functions, for users. Called on keyboard initialization.

TIP

For additional details on how you can use these callbacks, check out the Layer Change Code document.

It is also possible to check the state of a particular layer using the following functions and macros.

FunctionDescriptionAliases
layer_state_is(layer)Checks if the specified layer is enabled globally.IS_LAYER_ON(layer), IS_LAYER_OFF(layer)
layer_state_cmp(state, layer)Checks state to see if the specified layer is enabled. Intended for use in layer callbacks.IS_LAYER_ON_STATE(state, layer), IS_LAYER_OFF_STATE(state, layer)

Layer Change Code

This runs code every time that the layers get changed. This can be useful for layer indication, or custom layer handling.

Example layer_state_set_* Implementation

This example shows how to set the RGB Underglow lights based on the layer, using the Planck as an example.

c
layer_state_t layer_state_set_user(layer_state_t state) {\n    switch (get_highest_layer(state)) {\n    case _RAISE:\n        rgblight_setrgb (0x00,  0x00, 0xFF);\n        break;\n    case _LOWER:\n        rgblight_setrgb (0xFF,  0x00, 0x00);\n        break;\n    case _PLOVER:\n        rgblight_setrgb (0x00,  0xFF, 0x00);\n        break;\n    case _ADJUST:\n        rgblight_setrgb (0x7A,  0x00, 0xFF);\n        break;\n    default: //  for any other layers, or the default layer\n        rgblight_setrgb (0x00,  0xFF, 0xFF);\n        break;\n    }\n  return state;\n}

Example: Keycode to cycle through layers

This example shows how to implement a custom keycode to cycle through a range of layers.

c
// Define the keycode, `QK_USER` avoids collisions with existing keycodes\nenum keycodes {\n  KC_CYCLE_LAYERS = QK_USER,\n};\n\n// 1st layer on the cycle\n#define LAYER_CYCLE_START 0\n// Last layer on the cycle\n#define LAYER_CYCLE_END   4\n\n// Add the behaviour of this new keycode\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) {\n    case KC_CYCLE_LAYERS:\n      // Our logic will happen on presses, nothing is done on releases\n      if (!record->event.pressed) {\n        // We've already handled the keycode (doing nothing), let QMK know so no further code is run unnecessarily\n        return false;\n      }\n\n      uint8_t current_layer = get_highest_layer(layer_state);\n\n      // Check if we are within the range, if not quit\n      if (current_layer > LAYER_CYCLE_END || current_layer < LAYER_CYCLE_START) {\n        return false;\n      }\n\n      uint8_t next_layer = current_layer + 1;\n      if (next_layer > LAYER_CYCLE_END) {\n          next_layer = LAYER_CYCLE_START;\n      }\n      layer_move(next_layer);\n      return false;\n\n    // Process other keycodes normally\n    default:\n      return true;\n  }\n}\n\n// Place `KC_CYCLE_LAYERS` as a keycode in your keymap

Use the IS_LAYER_ON_STATE(state, layer) and IS_LAYER_OFF_STATE(state, layer) macros to check the status of a particular layer.

Outside of layer_state_set_* functions, you can use the IS_LAYER_ON(layer) and IS_LAYER_OFF(layer) macros to check global layer state.

layer_state_set_* Function Documentation

The state is the bitmask of the active layers, as explained in the Keymap Overview

', 44); diff --git a/assets/feature_layers.md.BRPaBran.lean.js b/assets/feature_layers.md.BpRyCtyl.lean.js similarity index 82% rename from assets/feature_layers.md.BRPaBran.lean.js rename to assets/feature_layers.md.BpRyCtyl.lean.js index 08f7a0a425d..cbf6112e29d 100644 --- a/assets/feature_layers.md.BRPaBran.lean.js +++ b/assets/feature_layers.md.BpRyCtyl.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Layers","description":"","frontmatter":{},"headers":[],"relativePath":"feature_layers.md","filePath":"feature_layers.md","lastUpdated":null}'); const _sfc_main = { name: "feature_layers.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 44); diff --git a/assets/feature_layouts.md.DKb-OgxY.js b/assets/feature_layouts.md.D2KZVUWv.js similarity index 98% rename from assets/feature_layouts.md.DKb-OgxY.js rename to assets/feature_layouts.md.D2KZVUWv.js index f205d82a176..1db8f0c9b9e 100644 --- a/assets/feature_layouts.md.DKb-OgxY.js +++ b/assets/feature_layouts.md.D2KZVUWv.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Layouts: Using a Keymap with Multiple Keyboards","description":"","frontmatter":{},"headers":[],"relativePath":"feature_layouts.md","filePath":"feature_layouts.md","lastUpdated":null}'); const _sfc_main = { name: "feature_layouts.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Layouts: Using a Keymap with Multiple Keyboards

The layouts/ folder contains different physical key layouts that can apply to different keyboards.

layouts/\n+ default/\n| + 60_ansi/\n| | + readme.md\n| | + layout.json\n| | + a_good_keymap/\n| | | + keymap.c\n| | | + readme.md\n| | | + config.h\n| | | + rules.mk\n| | + <keymap folder>/\n| | + ...\n| + <layout folder>/\n+ community/\n| + <layout folder>/\n| + ...

The layouts/default/ and layouts/community/ are two examples of layout "repositories" - currently default will contain all of the information concerning the layout, and one default keymap named default_<layout>, for users to use as a reference. community contains all of the community keymaps, with the eventual goal of being split-off into a separate repo for users to clone into layouts/. QMK searches through all folders in layouts/, so it's possible to have multiple repositories here.

Each layout folder is named ([a-z0-9_]) after the physical aspects of the layout, in the most generic way possible, and contains a readme.md with the layout to be defined by the keyboard:

markdown
# 60_ansi\n\n   LAYOUT_60_ansi

New names should try to stick to the standards set by existing layouts, and can be discussed in the PR/Issue.

Supporting a Layout

For a keyboard to support a layout, the variable must be defined in it's <keyboard>.h, and match the number of arguments/keys (and preferably the physical layout):

c
#define LAYOUT_60_ansi KEYMAP_ANSI

The name of the layout must match this regex: [a-z0-9_]+

The folder name must be added to the keyboard's rules.mk:

LAYOUTS = 60_ansi

LAYOUTS can be set in any keyboard folder level's rules.mk:

LAYOUTS = 60_iso

but the LAYOUT_<layout> variable must be defined in <folder>.h as well.

Building a Keymap

You should be able to build the keyboard keymap with a command in this format:

make <keyboard>:<layout>

Conflicting layouts

When a keyboard supports multiple layout options,

LAYOUTS = ortho_4x4 ortho_4x12

And a layout exists for both options,

layouts/\n+ community/\n| + ortho_4x4/\n| | + <layout>/\n| | | + ...\n| + ortho_4x12/\n| | + <layout>/\n| | | + ...\n| + ...

The FORCE_LAYOUT argument can be used to specify which layout to build

make <keyboard>:<layout> FORCE_LAYOUT=ortho_4x4\nmake <keyboard>:<layout> FORCE_LAYOUT=ortho_4x12

Tips for Making Layouts Keyboard-Agnostic

Includes

Instead of using #include "planck.h", you can use this line to include whatever <keyboard>.h (<folder>.h should not be included here) file that is being compiled:

c
#include QMK_KEYBOARD_H

If you want to keep some keyboard-specific code, you can use these variables to escape it with an #ifdef statement:

For example:

c
#ifdef KEYBOARD_planck\n    #ifdef KEYBOARD_planck_rev4\n        planck_rev4_function();\n    #endif\n#endif

Note that the names are lowercase and match the folder/file names for the keyboard/revision exactly.

Keymaps

In order to support both split and non-split keyboards with the same layout, you need to use the keyboard agnostic LAYOUT_<layout name> macro in your keymap. For instance, in order for a Let's Split and Planck to share the same layout file, you need to use LAYOUT_ortho_4x12 instead of LAYOUT_planck_grid or just {} for a C array.

', 37); diff --git a/assets/feature_layouts.md.DKb-OgxY.lean.js b/assets/feature_layouts.md.D2KZVUWv.lean.js similarity index 83% rename from assets/feature_layouts.md.DKb-OgxY.lean.js rename to assets/feature_layouts.md.D2KZVUWv.lean.js index 50d8c179886..bdab83a4e7a 100644 --- a/assets/feature_layouts.md.DKb-OgxY.lean.js +++ b/assets/feature_layouts.md.D2KZVUWv.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Layouts: Using a Keymap with Multiple Keyboards","description":"","frontmatter":{},"headers":[],"relativePath":"feature_layouts.md","filePath":"feature_layouts.md","lastUpdated":null}'); const _sfc_main = { name: "feature_layouts.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 37); diff --git a/assets/feature_macros.md.BCymatkF.js b/assets/feature_macros.md.CSlh6M_r.js similarity index 99% rename from assets/feature_macros.md.BCymatkF.js rename to assets/feature_macros.md.CSlh6M_r.js index 9c3f4d829cf..1fb268ca1ea 100644 --- a/assets/feature_macros.md.BCymatkF.js +++ b/assets/feature_macros.md.CSlh6M_r.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Macros","description":"","frontmatter":{},"headers":[],"relativePath":"feature_macros.md","filePath":"feature_macros.md","lastUpdated":null}'); const _sfc_main = { name: "feature_macros.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Macros

Macros allow you to send multiple keystrokes when pressing just one key. QMK has a number of ways to define and use macros. These can do anything you want: type common phrases for you, copypasta, repetitive game movements, or even help you code.

WARNING

Security Note: While it is possible to use macros to send passwords, credit card numbers, and other sensitive information it is a supremely bad idea to do so. Anyone who gets a hold of your keyboard will be able to access that information by opening a text editor.

Using Macros In JSON Keymaps

You can define up to 32 macros in a keymap.json file, as used by Configurator, and qmk compile. You can define these macros in a list under the macros keyword, like this:

json
{\n    "keyboard": "handwired/my_macropad",\n    "keymap": "my_keymap",\n    "macros": [\n        [\n            {"action":"down", "keycodes": ["LSFT"]},\n            "hello world1",\n            {"action": "up","keycodes": ["LSFT"]}\n        ],\n        [\n            {"action":"tap", "keycodes": ["LCTL", "LALT", "DEL"]}\n        ],\n        [\n            "ding!",\n            {"action":"beep"}\n        ],\n        [\n            {"action":"tap", "keycodes": ["F1"]},\n            {"action":"delay", "duration": 1000},\n            {"action":"tap", "keycodes": ["PGDN"]}\n        ]\n    ],\n    "layout": "LAYOUT_all",\n    "layers": [\n        ["QK_MACRO_0", "QK_MACRO_1", "QK_MACRO_2", "QK_MACRO_3"]\n    ]\n}

Selecting Your Host Keyboard Layout

If you type in a language other than English, or use a non-QWERTY layout like Colemak, Dvorak, or Workman, you may have set your computer's input language to match this layout. This presents a challenge when creating macros — you may need to type different keys to get the same letters! To address this you can use language-specific keycodes.

Macro Basics

Each macro is an array consisting of strings and objects (dictionaries). Strings are typed to your computer while objects allow you to control how your macro is typed out.

Object Format

All objects have one required key: action. This tells QMK what the object does. There are currently 5 actions: beep, delay, down, tap, up

Only basic keycodes (prefixed by KC_) are supported. Do not include the KC_ prefix when listing keycodes.

Using Macros in C Keymaps

SEND_STRING() & process_record_user

See also: Send String

Sometimes you want a key to type out words or phrases. For the most common situations, we've provided SEND_STRING(), which will type out a string (i.e. a sequence of characters) for you. All ASCII characters that are easily translatable to a keycode are supported (e.g. qmk 123\\n\\t).

Here is an example keymap.c for a two-key keyboard:

c
enum custom_keycodes {\n    QMKBEST = SAFE_RANGE,\n};\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n    case QMKBEST:\n        if (record->event.pressed) {\n            // when keycode QMKBEST is pressed\n            SEND_STRING("QMK is the best thing ever!");\n        } else {\n            // when keycode QMKBEST is released\n        }\n        break;\n    }\n    return true;\n};\n\nconst uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n    [0] = {\n        {QMKBEST, KC_ESC},\n        // ...\n    },\n};

What happens here is this: We first define a new custom keycode in the range not occupied by any other keycodes. Then we use the process_record_user function, which is called whenever a key is pressed or released, to check if our custom keycode has been activated. If yes, we send the string "QMK is the best thing ever!" to the computer via the SEND_STRING macro (this is a C preprocessor macro, not to be confused with QMK macros). We return true to indicate to the caller that the key press we just processed should continue to be processed as normal (as we didn't replace or alter the functionality). Finally, we define the keymap so that the first button activates our macro and the second button is just an escape button.

TIP

It is recommended to use the SAFE_RANGE macro as per Customizing Functionality.

You might want to add more than one macro. You can do that by adding another keycode and adding another case to the switch statement, like so:

c
enum custom_keycodes {\n    QMKBEST = SAFE_RANGE,\n    QMKURL,\n    MY_OTHER_MACRO,\n};\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n    case QMKBEST:\n        if (record->event.pressed) {\n            // when keycode QMKBEST is pressed\n            SEND_STRING("QMK is the best thing ever!");\n        } else {\n            // when keycode QMKBEST is released\n        }\n        break;\n\n    case QMKURL:\n        if (record->event.pressed) {\n            // when keycode QMKURL is pressed\n            SEND_STRING("https://qmk.fm/\\n");\n        } else {\n            // when keycode QMKURL is released\n        }\n        break;\n\n    case MY_OTHER_MACRO:\n        if (record->event.pressed) {\n           SEND_STRING(SS_LCTL("ac")); // selects all and copies\n        }\n        break;\n    }\n    return true;\n};\n\nconst uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n    [0] = {\n        {MY_CUSTOM_MACRO, MY_OTHER_MACRO},\n        // ...\n    },\n};

TIP

An enumerated list of custom keycodes (enum custom_keycodes) must be declared before keymaps[] array, process_record_user() and any other function that use the list for the compiler to recognise it.

Advanced Macros

In addition to the process_record_user() function, is the post_process_record_user() function. This runs after process_record and can be used to do things after a keystroke has been sent. This is useful if you want to have a key pressed before and released after a normal key, for instance.

In this example, we modify most normal keypresses so that F22 is pressed before the keystroke is normally sent, and release it only after it's been released.

c
static uint8_t f22_tracker;\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) {\n    case KC_A ... KC_F21: //notice how it skips over F22\n    case KC_F23 ... KC_EXSEL: //exsel is the last one before the modifier keys\n      if (record->event.pressed) {\n        register_code(KC_F22); //this means to send F22 down\n        f22_tracker++;\n        register_code(keycode);\n        return false;\n      }\n      break;\n  }\n  return true;\n}\n\nvoid post_process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) {\n    case KC_A ... KC_F21: //notice how it skips over F22\n    case KC_F23 ... KC_EXSL: //exsel is the last one before the modifier keys\n      if (!record->event.pressed) {\n        f22_tracker--;\n        if (!f22_tracker) {\n            unregister_code(KC_F22); //this means to send F22 up\n        }\n      }\n      break;\n  }\n}

TAP, DOWN and UP

You may want to use keys in your macros that you can't write down, such as Ctrl or Home. You can send arbitrary keycodes by wrapping them in:

For example:

c
SEND_STRING(SS_TAP(X_HOME));

Would tap KC_HOME - note how the prefix is now X_, and not KC_. You can also combine this with other strings, like this:

c
SEND_STRING("VE"SS_TAP(X_HOME)"LO");

Which would send "VE" followed by a KC_HOME tap, and "LO" (spelling "LOVE" if on a newline).

Delays can be also added to the string:

For example:

c
SEND_STRING("VE" SS_DELAY(1000) SS_TAP(X_HOME) "LO");

Which would send "VE" followed by a 1-second delay, then a KC_HOME tap, and "LO" (spelling "LOVE" if on a newline, but delayed in the middle).

There's also a couple of mod shortcuts you can use:

These press the respective modifier, send the supplied string and then release the modifier. They can be used like this:

c
SEND_STRING(SS_LCTL("a"));

Which would send Left Control+a (Left Control down, a, Left Control up) - notice that they take strings (eg "k"), and not the X_K keycodes.

Alternative Keymaps

By default, it assumes a US keymap with a QWERTY layout; if you want to change that (e.g. if your OS uses software Colemak), include this somewhere in your keymap:

c
#include "sendstring_colemak.h"

Strings in Memory

If for some reason you're manipulating strings and need to print out something you just generated (instead of being a literal, constant string), you can use send_string(), like this:

c
char my_str[4] = "ok.";\nsend_string(my_str);

The shortcuts defined above won't work with send_string(), but you can separate things out to different lines if needed:

c
char my_str[4] = "ok.";\nSEND_STRING("I said: ");\nsend_string(my_str);\nSEND_STRING(".."SS_TAP(X_END));

Advanced Macro Functions

There are some functions you may find useful in macro-writing. Keep in mind that while you can write some fairly advanced code within a macro, if your functionality gets too complex you may want to define a custom keycode instead. Macros are meant to be simple.

TIP

You can also use the functions described in Useful function and Checking modifier state for additional functionality. For example, reset_keyboard() allows you to reset the keyboard as part of a macro and get_mods() & MOD_MASK_SHIFT lets you check for the existence of active shift modifiers.

record->event.pressed

This is a boolean value that can be tested to see if the switch is being pressed or released. An example of this is

c
    if (record->event.pressed) {\n        // on keydown\n    } else {\n        // on keyup\n    }

register_code(<kc>);

This sends the <kc> keydown event to the computer. Some examples would be KC_ESC, KC_C, KC_4, and even modifiers such as KC_LSFT and KC_LGUI.

unregister_code(<kc>);

Parallel to register_code function, this sends the <kc> keyup event to the computer. If you don't use this, the key will be held down until it's sent.

tap_code(<kc>);

Sends register_code(<kc>) and then unregister_code(<kc>). This is useful if you want to send both the press and release events ("tap" the key, rather than hold it).

If TAP_CODE_DELAY is defined (default 0), this function waits that many milliseconds before calling unregister_code(<kc>). This can be useful when you are having issues with taps (un)registering.

If the keycode is KC_CAPS, it waits TAP_HOLD_CAPS_DELAY milliseconds instead (default 80), as macOS prevents accidental Caps Lock activation by waiting for the key to be held for a certain amount of time.

tap_code_delay(<kc>, <delay>);

Like tap_code(<kc>), but with a delay parameter for specifying arbitrary intervals before sending the unregister event.

register_code16(<kc>);, unregister_code16(<kc>);, tap_code16(<kc>); and tap_code16_delay(<kc>, <delay>);

These functions work similar to their regular counterparts, but allow you to use modded keycodes (with Shift, Alt, Control, and/or GUI applied to them).

Eg, you could use register_code16(S(KC_5)); instead of registering the mod, then registering the keycode.

clear_keyboard();

This will clear all mods and keys currently pressed.

clear_mods();

This will clear all mods currently pressed.

clear_keyboard_but_mods();

This will clear all keys besides the mods currently pressed.

Advanced Example:

Super ALT↯TAB

This macro will register KC_LALT and tap KC_TAB, then wait for 1000ms. If the key is tapped again, it will send another KC_TAB; if there is no tap, KC_LALT will be unregistered, thus allowing you to cycle through windows.

c
bool is_alt_tab_active = false; // ADD this near the beginning of keymap.c\nuint16_t alt_tab_timer = 0;     // we will be using them soon.\n\nenum custom_keycodes {          // Make sure have the awesome keycode ready\n  ALT_TAB = SAFE_RANGE,\n};\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) { // This will do most of the grunt work with the keycodes.\n    case ALT_TAB:\n      if (record->event.pressed) {\n        if (!is_alt_tab_active) {\n          is_alt_tab_active = true;\n          register_code(KC_LALT);\n        }\n        alt_tab_timer = timer_read();\n        register_code(KC_TAB);\n      } else {\n        unregister_code(KC_TAB);\n      }\n      break;\n  }\n  return true;\n}\n\nvoid matrix_scan_user(void) { // The very important timer.\n  if (is_alt_tab_active) {\n    if (timer_elapsed(alt_tab_timer) > 1000) {\n      unregister_code(KC_LALT);\n      is_alt_tab_active = false;\n    }\n  }\n}
', 84); diff --git a/assets/feature_macros.md.BCymatkF.lean.js b/assets/feature_macros.md.CSlh6M_r.lean.js similarity index 82% rename from assets/feature_macros.md.BCymatkF.lean.js rename to assets/feature_macros.md.CSlh6M_r.lean.js index 4153697fa8a..8b6befb5719 100644 --- a/assets/feature_macros.md.BCymatkF.lean.js +++ b/assets/feature_macros.md.CSlh6M_r.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Macros","description":"","frontmatter":{},"headers":[],"relativePath":"feature_macros.md","filePath":"feature_macros.md","lastUpdated":null}'); const _sfc_main = { name: "feature_macros.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 84); diff --git a/assets/feature_userspace.md.BWDqRxjZ.js b/assets/feature_userspace.md.BAzTeriV.js similarity index 99% rename from assets/feature_userspace.md.BWDqRxjZ.js rename to assets/feature_userspace.md.BAzTeriV.js index 282c4f45bfd..849c1dd8aaf 100644 --- a/assets/feature_userspace.md.BWDqRxjZ.js +++ b/assets/feature_userspace.md.BAzTeriV.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Userspace: Sharing Code Between Keymaps","description":"","frontmatter":{},"headers":[],"relativePath":"feature_userspace.md","filePath":"feature_userspace.md","lastUpdated":null}'); const _sfc_main = { name: "feature_userspace.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Userspace: Sharing Code Between Keymaps

WARNING

Please note, userspace submissions to the upstream qmk/qmk_firmware repository are no longer being accepted. The userspace feature itself remains functional and can be configured locally.

If you use more than one keyboard with a similar keymap, you might see the benefit in being able to share code between them. Create your own folder in users/ named the same as your keymap (ideally your GitHub username, <name>) with the following structure:

All this only happens when you build a keymap named <name>, like this:

make planck:<name>\n

For example,

make planck:jack\n

Will include the /users/jack/ folder in the path, along with /users/jack/rules.mk.

WARNING

This name can be overridden, if needed.

Rules.mk

The rules.mk is one of the two files that gets processed automatically. This is how you add additional source files (such as <name>.c) will be added when compiling.

It's highly recommended that you use <name>.c as the default source file to be added. And to add it, you need to add it the SRC in rules.mk like this:

SRC += <name>.c\n

Additional files may be added in the same way - it's recommended you have one named <name>.c/.h to start off with, though.

The /users/<name>/rules.mk file will be included in the build after the rules.mk from your keymap. This allows you to have features in your userspace rules.mk that depend on individual QMK features that may or may not be available on a specific keyboard.

For example, if you have RGB control features shared between all your keyboards that support RGB lighting, you can add support for that if the RGBLIGHT feature is enabled:

make
ifeq ($(strip $(RGBLIGHT_ENABLE)), yes)\n  # Include my fancy rgb functions source here\n  SRC += cool_rgb_stuff.c\nendif

Alternatively, you can define RGB_ENABLE in your keymap's rules.mk and then check for the variable in your userspace's rules.mk like this:

make
ifdef RGB_ENABLE\n  # Include my fancy rgb functions source here\n  SRC += cool_rgb_stuff.c\nendif

Override default userspace

By default the userspace used will be the same as the keymap name. In some situations this isn't desirable. For instance, if you use the layout feature you can't use the same name for different keymaps (e.g. ANSI and ISO). You can name your layouts mylayout-ansi and mylayout-iso and add the following line to your layout's rules.mk:

USER_NAME := mylayout

This is also useful if you have multiple different keyboards with different features physically present on the board (such as one with RGB Lights, and one with Audio, or different number of LEDs, or connected to a different PIN on the controller).

Configuration Options (config.h)

Additionally, config.h here will be processed like the same file in your keymap folder. This is handled separately from the <name>.h file.

The reason for this, is that <name>.h won't be added in time to add settings (such as #define TAPPING_TERM 100), and including the <name.h> file in any config.h files will result in compile issues.

WARNING

You should use the config.h for configuration options, and the <name>.h file for user or keymap specific settings (such as the enum for layer or keycodes)

Readme (readme.md)

Please include authorship (your name, GitHub username, email), and optionally a license that's GPL compatible.

You can use this as a template:

Copyright <year> <name> <email> @<github_username>\n\nThis program is free software: you can redistribute it and/or modify\nit under the terms of the GNU General Public License as published by\nthe Free Software Foundation, either version 2 of the License, or\n(at your option) any later version.\n\nThis program is distributed in the hope that it will be useful,\nbut WITHOUT ANY WARRANTY; without even the implied warranty of\nMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\nGNU General Public License for more details.\n\nYou should have received a copy of the GNU General Public License\nalong with this program.  If not, see <http://www.gnu.org/licenses/>.

You'd want to replace the year, name, email and GitHub username with your info.

Additionally, this is a good place to document your code, if you wish to share it with others.

Build All Keyboards That Support a Specific Keymap

Want to check all your keymaps build in a single command? You can run:

make all:<name>\n

For example,

make all:jack\n

This is ideal for when you want ensure everything compiles successfully when preparing a Pull request.

Examples

For a brief example, checkout /users/_example/.

For more complicated examples, checkout the awesome-qmk collection.

Customized Functions

QMK has a bunch of functions that have _quantum, _kb, and _user versions that you can use. You will pretty much always want to use the user version of these functions. But the problem is that if you use them in your userspace, then you don't have a version that you can use in your keymap.

However, you can actually add support for keymap version, so that you can use it in both your userspace and your keymap!

For instance, let's look at the layer_state_set_user() function. You can enable the Tri Layer State functionality on all of your boards, while also retaining the Tri Layer functionality in your keymap.c files.

In your <name.c> file, you'd want to add this:

c
__attribute__ ((weak))\nlayer_state_t layer_state_set_keymap (layer_state_t state) {\n  return state;\n}\n\nlayer_state_t layer_state_set_user (layer_state_t state) {\n  state = update_tri_layer_state(state, 2, 3, 5);\n  return layer_state_set_keymap (state);\n}

The __attribute__ ((weak)) part tells the compiler that this is a placeholder function that can then be replaced by a version in your keymap.c. That way, you don't need to add it to your keymap.c, but if you do, you won't get any conflicts because the function is the same name.

The _keymap part here doesn't matter, it just needs to be something other than _quantum, _kb, or _user, since those are already in use. So you could use layer_state_set_mine, layer_state_set_fn, or anything else.

You can see a list of this and other common functions in template.c in users/drashna.

Custom Features

Since the Userspace feature can support a staggering number of boards, you may have boards that you want to enable certain functionality for, but not for others. And you can actually create "features" that you can enable or disable in your own userspace.

For instance, if you wanted to have a bunch of macros available, but only on certain boards (to save space), you could "hide" them being a #ifdef MACROS_ENABLED, and then enable it per board. To do this, add this to your rules.mk

make
ifeq ($(strip $(MACROS_ENABLED)), yes)\n    OPT_DEFS += -DMACROS_ENABLED\nendif

The OPT_DEFS setting causes MACROS_ENABLED to be defined for your keyboards (note the -D in front of the name), and you could use #ifdef MACROS_ENABLED to check the status in your c/h files, and handle that code based on that.

Then you add MACROS_ENABLED = yes to the rules.mk for you keymap to enable this feature and the code in your userspace.

And in your process_record_user function, you'd do something like this:

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) {\n#ifdef MACROS_ENABLED\n  case MACRO1:\n    if (!record->event.pressed) {\n      SEND_STRING("This is macro 1!");\n    }\n    break;\n  case MACRO2:\n    if (!record->event.pressed) {\n      SEND_STRING("This is macro 2!");\n    }\n    break;\n#endif\n  }\n  return true;\n}

Consolidated Macros

If you wanted to consolidate macros and other functions into your userspace for all of your keymaps, you can do that. This builds upon the Customized Functions example above. This lets you maintain a bunch of macros that are shared between the different keyboards, and allow for keyboard specific macros, too.

First, you'd want to go through all of your keymap.c files and replace process_record_user with process_record_keymap instead. This way, you can still use keyboard specific codes on those boards, and use your custom "global" keycodes as well. You'll also want to replace SAFE_RANGE with NEW_SAFE_RANGE so that you won't have any overlapping keycodes

Then add #include "<name>.h" to all of your keymap.c files. This allows you to use these new keycodes without having to redefine them in each keymap.

Once you've done that, you'll want to set the keycode definitions that you need to the <name>.h file. For instance:

c
#pragma once\n\n#include "quantum.h"\n#include "action.h"\n#include "version.h"\n\n// Define all of\nenum custom_keycodes {\n  KC_MAKE = SAFE_RANGE,\n  NEW_SAFE_RANGE  //use "NEW_SAFE_RANGE" for keymap specific codes\n};

Now you want to create the <name>.c file, and add this content to it:

c
#include "<name>.h"\n\n__attribute__ ((weak))\nbool process_record_keymap(uint16_t keycode, keyrecord_t *record) {\n  return true;\n}\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) {\n    case KC_MAKE:  // Compiles the firmware, and adds the flash command based on keyboard bootloader\n            if (!record->event.pressed) {\n            uint8_t temp_mod = get_mods();\n            uint8_t temp_osm = get_oneshot_mods();\n            clear_mods(); clear_oneshot_mods();\n            SEND_STRING("make " QMK_KEYBOARD ":" QMK_KEYMAP);\n    #ifndef FLASH_BOOTLOADER\n            if ((temp_mod | temp_osm) & MOD_MASK_SHIFT)\n    #endif\n            {\n                SEND_STRING(":flash");\n            }\n            if ((temp_mod | temp_osm) & MOD_MASK_CTRL) {\n                SEND_STRING(" -j8 --output-sync");\n            }\n            tap_code(KC_ENT);\n            set_mods(temp_mod);\n        }\n        break;\n\n  }\n  return process_record_keymap(keycode, record);\n}

For boards that may not have a shift button (such as on a macro pad), we need a way to always include the bootloader option. To do that, add the following to the rules.mk in your userspace folder:

make
ifeq ($(strip $(FLASH_BOOTLOADER)), yes)\n    OPT_DEFS += -DFLASH_BOOTLOADER\nendif

This will add a new KC_MAKE keycode that can be used in any of your keymaps. And this keycode will output make <keyboard>:<keymap>, making frequent compiling easier. And this will work with any keyboard and any keymap as it will output the current boards info, so that you don't have to type this out every time.

Also, holding Shift will add the flash target (:flash) to the command. Holding Control will add some commands that will speed up compiling time by processing multiple files at once.

And for the boards that lack a shift key, or that you want to always attempt the flashing part, you can add FLASH_BOOTLOADER = yes to the rules.mk of that keymap.

TIP

This should flash the newly compiled firmware automatically, using the correct utility, based on the bootloader settings (or default to just generating the HEX file). However, it should be noted that this may not work on all systems. AVRDUDE doesn't work on WSL, namely.

', 74); diff --git a/assets/feature_userspace.md.BWDqRxjZ.lean.js b/assets/feature_userspace.md.BAzTeriV.lean.js similarity index 83% rename from assets/feature_userspace.md.BWDqRxjZ.lean.js rename to assets/feature_userspace.md.BAzTeriV.lean.js index 273ba02788e..3ccb3005fd3 100644 --- a/assets/feature_userspace.md.BWDqRxjZ.lean.js +++ b/assets/feature_userspace.md.BAzTeriV.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Userspace: Sharing Code Between Keymaps","description":"","frontmatter":{},"headers":[],"relativePath":"feature_userspace.md","filePath":"feature_userspace.md","lastUpdated":null}'); const _sfc_main = { name: "feature_userspace.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 74); diff --git a/assets/features_audio.md.C3CBdMc3.js b/assets/features_audio.md.Cr9YonZR.js similarity index 99% rename from assets/features_audio.md.C3CBdMc3.js rename to assets/features_audio.md.Cr9YonZR.js index 0ab646b1268..9d50d97424a 100644 --- a/assets/features_audio.md.C3CBdMc3.js +++ b/assets/features_audio.md.Cr9YonZR.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Audio","description":"","frontmatter":{},"headers":[],"relativePath":"features/audio.md","filePath":"features/audio.md","lastUpdated":null}'); const _sfc_main = { name: "features/audio.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Audio

Your keyboard can make sounds! If you've got a spare pin you can hook up a simple speaker and make it beep. You can use those beeps to indicate layer transitions, modifiers, special keys, or just to play some funky 8bit tunes.

To activate this feature, add AUDIO_ENABLE = yes to your rules.mk.

AVR based boards

On Atmega32U4 based boards, up to two simultaneous tones can be rendered. With one speaker connected to a PWM capable pin on PORTC driven by timer 3 and the other on one of the PWM pins on PORTB driven by timer 1.

The following pins can be configured as audio outputs in config.h - for one speaker set either one out of:

and optionally, for a second speaker, one of:

Wiring

per speaker is - for example with a piezo buzzer - the black lead to Ground, and the red lead connected to the selected AUDIO_PIN for the primary; and similarly with AUDIO_PIN_ALT for the secondary.

ARM based boards

for more technical details, see the notes on Audio driver.

DAC (basic)

Most STM32 MCUs have DAC peripherals, with a notable exception of the STM32F1xx series. Generally, the DAC peripheral drives pins A4 or A5. To enable DAC-based audio output on STM32 devices, add AUDIO_DRIVER = dac_basic to rules.mk and set in config.h either:

#define AUDIO_PIN A4 or #define AUDIO_PIN A5

the other DAC channel can optionally be used with a secondary speaker, just set:

#define AUDIO_PIN_ALT A4 or #define AUDIO_PIN_ALT A5

Do note though that the dac_basic driver is only capable of reproducing one tone per speaker/channel at a time, for more tones simultaneously, try the dac_additive driver.

Wiring:

for two piezos, for example configured as AUDIO_PIN A4 and AUDIO_PIN_ALT A5 would be: red lead to A4 and black to Ground, and similarly with the second one: A5 = red, and Ground = black

another alternative is to drive one piezo with both DAC pins - for an extra "push". wiring red to A4 and black to A5 (or the other way round) and add #define AUDIO_PIN_ALT_AS_NEGATIVE to config.h

Proton-C Example:

The Proton-C comes (optionally) with one 'builtin' piezo, which is wired to A4+A5. For this board config.h would include these defines:

c
#define AUDIO_PIN A5\n#define AUDIO_PIN_ALT A4\n#define AUDIO_PIN_ALT_AS_NEGATIVE

DAC (additive)

Another option, besides dac_basic (which produces sound through a square-wave), is to use the DAC to do additive wave synthesis. With a number of predefined wave-forms or by providing your own implementation to generate samples on the fly. To use this feature set AUDIO_DRIVER = dac_additive in your rules.mk, and select in config.h EITHER #define AUDIO_PIN A4 or #define AUDIO_PIN A5.

The used waveform defaults to sine, but others can be selected by adding one of the following defines to config.h:

Should you rather choose to generate and use your own sample-table with the DAC unit, implement uint16_t dac_value_generate(void) with your keyboard - for an example implementation see keyboards/planck/keymaps/synth_sample or keyboards/planck/keymaps/synth_wavetable

PWM (software)

If the DAC pins are unavailable (or the MCU has no usable DAC at all, like STM32F1xx); PWM can be an alternative. Note that there is currently only one speaker/pin supported.

To use this feature, set AUDIO_DRIVER = pwm_software in rules.mk and set #define AUDIO_PIN C13 (can be any pin) in config.h to have the selected pin output a pwm signal, generated from a timer callback which toggles the pin in software.

Wiring

The usual piezo wiring: red goes to the selected AUDIO_PIN, black goes to ground.

OR if you can chose to drive one piezo with two pins, for example #define AUDIO_PIN B1, #define AUDIO_PIN_ALT B2 in config.h, with #define AUDIO_PIN_ALT_AS_NEGATIVE - then the red lead could go to B1, the black to B2.

PWM (hardware)

STM32F1xx have to fall back to using PWM, but can do so in hardware; but again on currently only one speaker/pin.

AUDIO_DRIVER = pwm_hardware in rules.mk, and in config.h: #define AUDIO_PIN A8#define AUDIO_PWM_DRIVER PWMD1#define AUDIO_PWM_CHANNEL 1 (as well as #define AUDIO_PWM_PAL_MODE 42 if you are on STM32F2 or larger) which will use Timer 1 to directly drive pin PA8 through the PWM hardware (TIM1_CH1 = PA8). Should you want to use the pwm-hardware on another pin and timer - be ready to dig into the STM32 data-sheet to pick the right TIMx_CHy and pin-alternate function.

Tone Multiplexing

Since most drivers can only render one tone per speaker at a time (with the one exception: arm dac-additive) there also exists a "workaround-feature" that does time-slicing/multiplexing - which does what the name implies: cycle through a set of active tones (e.g. when playing chords in Music Mode) at a given rate, and put one tone at a time out through the one/few speakers that are available.

To enable this feature, and configure a starting-rate, add the following defines to config.h:

c
#define AUDIO_ENABLE_TONE_MULTIPLEXING\n#define AUDIO_TONE_MULTIPLEXING_RATE_DEFAULT 10

The audio core offers interface functions to get/set/change the tone multiplexing rate from within keymap.c.

Songs

There's a couple of different sounds that will automatically be enabled without any other configuration:

STARTUP_SONG // plays when the keyboard starts up (audio.c)\nGOODBYE_SONG // plays when you press the QK_BOOT key (quantum.c)\nAG_NORM_SONG // plays when you press AG_NORM (quantum.c)\nAG_SWAP_SONG // plays when you press AG_SWAP (quantum.c)\nCG_NORM_SONG // plays when you press CG_NORM (quantum.c)\nCG_SWAP_SONG // plays when you press CG_SWAP (quantum.c)\nMUSIC_ON_SONG // plays when music mode is activated (process_music.c)\nMUSIC_OFF_SONG // plays when music mode is deactivated (process_music.c)\nCHROMATIC_SONG // plays when the chromatic music mode is selected (process_music.c)\nGUITAR_SONG // plays when the guitar music mode is selected (process_music.c)\nVIOLIN_SONG // plays when the violin music mode is selected (process_music.c)\nMAJOR_SONG // plays when the major music mode is selected (process_music.c)

You can override the default songs by doing something like this in your config.h:

c
#ifdef AUDIO_ENABLE\n# define STARTUP_SONG SONG(STARTUP_SOUND)\n#endif

A full list of sounds can be found in quantum/audio/song_list.h - feel free to add your own to this list! All available notes can be seen in quantum/audio/musical_notes.h.

Additionally, if you with to maintain your own list of songs (such as ones that may be copyrighted) and not have them added to the repo, you can create a user_song_list.h file and place it in your keymap (or userspace) folder. This file will be automatically included, it just needs to exist.

To play a custom sound at a particular time, you can define a song like this (near the top of the file):

c
float my_song[][2] = SONG(QWERTY_SOUND);

And then play your song like this:

c
PLAY_SONG(my_song);

Alternatively, you can play it in a loop like this:

c
PLAY_LOOP(my_song);

It's advised that you wrap all audio features in #ifdef AUDIO_ENABLE / #endif to avoid causing problems when audio isn't built into the keyboard.

The available keycodes for audio are:

KeyAliasesDescription
QK_AUDIO_ONAU_ONTurns on Audio Feature
QK_AUDIO_OFFAU_OFFTurns off Audio Feature
QK_AUDIO_TOGGLEAU_TOGGToggles Audio state

WARNING

These keycodes turn all of the audio functionality on and off. Turning it off means that audio feedback, audio clicky, music mode, etc. are disabled, completely.

Audio Config

SettingsDefaultDescription
AUDIO_PINNot definedConfigures the pin that the speaker is connected to.
AUDIO_PIN_ALTNot definedConfigures the pin for a second speaker or second pin connected to one speaker.
AUDIO_PIN_ALT_AS_NEGATIVENot definedEnables support for one speaker connected to two pins.
AUDIO_INIT_DELAYNot definedEnables delay during startup song to accommodate for USB startup issues.
AUDIO_ENABLE_TONE_MULTIPLEXINGNot definedEnables time splicing/multiplexing to create multiple tones simultaneously.
AUDIO_POWER_CONTROL_PINNot definedEnables power control code to enable or cut off power to speaker (such as with PAM8302 amp).
AUDIO_POWER_CONTROL_PIN_ON_STATE1The state of the audio power control pin when audio is "on" - 1 for high, 0 for low.
STARTUP_SONGSTARTUP_SOUNDPlays when the keyboard starts up (audio.c)
GOODBYE_SONGGOODBYE_SOUNDPlays when you press the QK_BOOT key (quantum.c)
AG_NORM_SONGAG_NORM_SOUNDPlays when you press AG_NORM (process_magic.c)
AG_SWAP_SONGAG_SWAP_SOUNDPlays when you press AG_SWAP (process_magic.c)
CG_NORM_SONGAG_NORM_SOUNDPlays when you press CG_NORM (process_magic.c)
CG_SWAP_SONGAG_SWAP_SOUNDPlays when you press CG_SWAP (process_magic.c)
MUSIC_ON_SONGMUSIC_ON_SOUNDPlays when music mode is activated (process_music.c)
MUSIC_OFF_SONGMUSIC_OFF_SOUNDPlays when music mode is deactivated (process_music.c)
MIDI_ON_SONGMUSIC_ON_SOUNDPlays when midi mode is activated (process_music.c)
MIDI_OFF_SONGMUSIC_OFF_SOUNDPlays when midi mode is deactivated (process_music.c)
CHROMATIC_SONGCHROMATIC_SOUNDPlays when the chromatic music mode is selected (process_music.c)
GUITAR_SONGGUITAR_SOUNDPlays when the guitar music mode is selected (process_music.c)
VIOLIN_SONGVIOLIN_SOUNDPlays when the violin music mode is selected (process_music.c)
MAJOR_SONGMAJOR_SOUNDPlays when the major music mode is selected (process_music.c)
DEFAULT_LAYER_SONGSNot definedPlays song when switched default layers with set_single_persistent_default_layer(layer)(quantum.c).
SENDSTRING_BELLNot definedPlays chime when the "enter" ("\\a") character is sent (send_string.c)

Tempo

the 'speed' at which SONGs are played is dictated by the set Tempo, which is measured in beats-per-minute. Note lengths are defined relative to that. The initial/default tempo is set to 120 bpm, but can be configured by setting TEMPO_DEFAULT in config.c. There is also a set of functions to modify the tempo from within the user/keymap code:

c
void audio_set_tempo(uint8_t tempo);\nvoid audio_increase_tempo(uint8_t tempo_change);\nvoid audio_decrease_tempo(uint8_t tempo_change);

ARM Audio Volume

For ARM devices, you can adjust the DAC sample values. If your board is too loud for you or your coworkers, you can set the max using AUDIO_DAC_SAMPLE_MAX in your config.h:

c
#define AUDIO_DAC_SAMPLE_MAX 4095U

the DAC usually runs in 12Bit mode, hence a volume of 100% = 4095U

Note: this only adjusts the volume aka 'works' if you stick to WAVEFORM_SQUARE, since its samples are generated on the fly - any other waveform uses a hardcoded/precomputed sample-buffer.

Voices

Aka "audio effects", different ones can be enabled by setting in config.h these defines: #define AUDIO_VOICES to enable the feature, and #define AUDIO_VOICE_DEFAULT something to select a specific effect for details see quantum/audio/voices.h and .c

Keycodes available:

KeyAliasesDescription
QK_AUDIO_VOICE_NEXTAU_NEXTCycles through the audio voices
QK_AUDIO_VOICE_PREVIOUSAU_PREVCycles through the audio voices in reverse

Music Mode

The music mode maps your columns to a chromatic scale, and your rows to octaves. This works best with ortholinear keyboards, but can be made to work with others. All keycodes less than 0xFF get blocked, so you won't type while playing notes - if you have special keys/mods, those will still work. A work-around for this is to jump to a different layer with KC_NOs before (or after) enabling music mode.

Recording is experimental due to some memory issues - if you experience some weird behavior, unplugging/replugging your keyboard will fix things.

Keycodes available:

KeyAliasesDescription
QK_MUSIC_ONMU_ONTurns on Music Mode
QK_MUSIC_OFFMU_OFFTurns off Music Mode
QK_MUSIC_TOGGLEMU_TOGGToggles Music Mode
QK_MUSIC_MODE_NEXTMU_NEXTCycles through the music modes

Available Modes:

In music mode, the following keycodes work differently, and don't pass through:

The pitch standard (PITCH_STANDARD_A) is 440.0f by default - to change this, add something like this to your config.h:

c
#define PITCH_STANDARD_A 432.0f

You can completely disable Music Mode as well. This is useful, if you're pressed for space on your controller. To disable it, add this to your config.h:

c
#define NO_MUSIC_MODE

Music Mask

By default, MUSIC_MASK is set to keycode < 0xFF which means keycodes less than 0xFF are turned into notes, and don't output anything. You can change this by defining this in your config.h like this:

c
#define MUSIC_MASK keycode != KC_NO

Which will capture all keycodes - be careful, this will get you stuck in music mode until you restart your keyboard!

For a more advanced way to control which keycodes should still be processed, you can use music_mask_kb(keycode) in <keyboard>.c and music_mask_user(keycode) in your keymap.c:

c
  bool music_mask_user(uint16_t keycode) {\n    switch (keycode) {\n      case RAISE:\n      case LOWER:\n        return false;\n      default:\n        return true;\n    }\n  }

Things that return false are not part of the mask, and are always processed.

Music Map

By default, the Music Mode uses the columns and row to determine the scale for the keys. For a board that uses a rectangular matrix that matches the keyboard layout, this is just fine. However, for boards that use a more complicated matrix (such as the Planck Rev6, or many split keyboards) this would result in a very skewed experience.

However, the Music Map option allows you to remap the scaling for the music mode, so it fits the layout, and is more natural.

To enable this feature, add #define MUSIC_MAP to your config.h file, and then you will want to add a uint8_t music_map to your keyboard's c file, or your keymap.c.

c
const uint8_t music_map[MATRIX_ROWS][MATRIX_COLS] = LAYOUT_ortho_4x12(\n	36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47,\n	24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35,\n	12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23,\n	 0,  1,  2,  3,  4,  5,  6,  7,  8,  9, 10, 11\n);

You will want to use whichever LAYOUT macro that your keyboard uses here. This maps it to the correct key location. Start in the bottom left of the keyboard layout, and move to the right, and then upwards. Fill in all the entries until you have a complete matrix.

You can look at the Planck Keyboard as an example of how to implement this.

Audio Click

This adds a click sound each time you hit a button, to simulate click sounds from the keyboard. And the sounds are slightly different for each keypress, so it doesn't sound like a single long note, if you type rapidly.

Keycodes available:

KeyAliasesDescription
QK_AUDIO_CLICKY_TOGGLECK_TOGGToggles Audio clicky mode
QK_AUDIO_CLICKY_ONCK_ONTurns on Audio clicky mode
QK_AUDIO_CLICKY_OFFCK_OFFTurns on Audio clicky mode
QK_AUDIO_CLICKY_UPCK_UPIncreases frequency of the clicks
QK_AUDIO_CLICKY_DOWNCK_DOWNDecreases frequency of the clicks
QK_AUDIO_CLICKY_RESETCK_RSTResets frequency to default

The feature is disabled by default, to save space. To enable it, add this to your config.h:

c
#define AUDIO_CLICKY

You can configure the default, min and max frequencies, the stepping and built in randomness by defining these values:

OptionDefault ValueDescription
AUDIO_CLICKY_FREQ_DEFAULT440.0fSets the default/starting audio frequency for the clicky sounds.
AUDIO_CLICKY_FREQ_MIN65.0fSets the lowest frequency (under 60f are a bit buggy).
AUDIO_CLICKY_FREQ_MAX1500.0fSets the highest frequency. Too high may result in coworkers attacking you.
AUDIO_CLICKY_FREQ_FACTOR1.18921fSets the stepping of UP/DOWN key codes. This is a multiplicative factor. The default steps the frequency up/down by a musical minor third.
AUDIO_CLICKY_FREQ_RANDOMNESS0.05fSets a factor of randomness for the clicks, Setting this to 0f will make each click identical, and 1.0f will make this sound much like the 90's computer screen scrolling/typing effect.
AUDIO_CLICKY_DELAY_DURATION1An integer note duration where 1 is 1/16th of the tempo, or a sixty-fourth note (see quantum/audio/musical_notes.h for implementation details). The main clicky effect will be delayed by this duration. Adjusting this to values around 6-12 will help compensate for loud switches.

MIDI Functionality

See MIDI

Audio Keycodes

KeyAliasesDescription
QK_AUDIO_ONAU_ONTurns on Audio Feature
QK_AUDIO_OFFAU_OFFTurns off Audio Feature
QK_AUDIO_TOGGLEAU_TOGGToggles Audio state
QK_AUDIO_CLICKY_TOGGLECK_TOGGToggles Audio clicky mode
QK_AUDIO_CLICKY_ONCK_ONTurns on Audio clicky mode
QK_AUDIO_CLICKY_OFFCK_OFFTurns on Audio clicky mode
QK_AUDIO_CLICKY_UPCK_UPIncreases frequency of the clicks
QK_AUDIO_CLICKY_DOWNCK_DOWNDecreases frequency of the clicks
QK_AUDIO_CLICKY_RESETCK_RSTResets frequency to default
QK_MUSIC_ONMU_ONTurns on Music Mode
QK_MUSIC_OFFMU_OFFTurns off Music Mode
QK_MUSIC_TOGGLEMU_TOGGToggles Music Mode
QK_MUSIC_MODE_NEXTMU_NEXTCycles through the music modes
QK_AUDIO_VOICE_NEXTAU_NEXTCycles through the audio voices
QK_AUDIO_VOICE_PREVIOUSAU_PREVCycles through the audio voices in reverse
', 114); diff --git a/assets/features_audio.md.C3CBdMc3.lean.js b/assets/features_audio.md.Cr9YonZR.lean.js similarity index 82% rename from assets/features_audio.md.C3CBdMc3.lean.js rename to assets/features_audio.md.Cr9YonZR.lean.js index 91e583a653e..81e02890b26 100644 --- a/assets/features_audio.md.C3CBdMc3.lean.js +++ b/assets/features_audio.md.Cr9YonZR.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Audio","description":"","frontmatter":{},"headers":[],"relativePath":"features/audio.md","filePath":"features/audio.md","lastUpdated":null}'); const _sfc_main = { name: "features/audio.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 114); diff --git a/assets/features_auto_shift.md.BFuiQ7EE.js b/assets/features_auto_shift.md.BUK-Vjbn.js similarity index 99% rename from assets/features_auto_shift.md.BFuiQ7EE.js rename to assets/features_auto_shift.md.BUK-Vjbn.js index 7a0bdf4c1d1..0c1b77138b1 100644 --- a/assets/features_auto_shift.md.BFuiQ7EE.js +++ b/assets/features_auto_shift.md.BUK-Vjbn.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Auto Shift: Why Do We Need a Shift Key?","description":"","frontmatter":{},"headers":[],"relativePath":"features/auto_shift.md","filePath":"features/auto_shift.md","lastUpdated":null}'); const _sfc_main = { name: "features/auto_shift.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Auto Shift: Why Do We Need a Shift Key?

Tap a key and you get its character. Tap a key, but hold it slightly longer and you get its shifted state. Voilà! No shift key needed!

Why Auto Shift?

Many people suffer from various forms of RSI. A common cause is stretching your fingers repetitively long distances. For us on the keyboard, the pinky does that all too often when reaching for the shift key. Auto Shift looks to alleviate that problem.

How Does It Work?

When you tap a key, it stays depressed for a short period of time before it is then released. This depressed time is a different length for everyone. Auto Shift defines a constant AUTO_SHIFT_TIMEOUT which is typically set to twice your normal pressed state time. When you press a key, a timer starts, and if you have not released the key after the AUTO_SHIFT_TIMEOUT period, then a shifted version of the key is emitted. If the time is less than the AUTO_SHIFT_TIMEOUT time, or you press another key, then the normal state is emitted.

If AUTO_SHIFT_REPEAT is defined, there is keyrepeat support. Holding the key down will repeat the shifted key, though this can be disabled with AUTO_SHIFT_NO_AUTO_REPEAT. If you want to repeat the normal key, then tap it once then immediately (within TAPPING_TERM) hold it down again (this works with the shifted value as well if auto-repeat is disabled).

There are also the get_auto_shift_repeat and get_auto_shift_no_auto_repeat functions for more granular control. Neither will have an effect unless AUTO_SHIFT_REPEAT_PER_KEY or AUTO_SHIFT_NO_AUTO_REPEAT_PER_KEY respectively are defined.

Are There Limitations to Auto Shift?

Yes, unfortunately.

  1. You will have characters that are shifted when you did not intend on shifting, and other characters you wanted shifted, but were not. This simply comes down to practice. As we get in a hurry, we think we have hit the key long enough for a shifted version, but we did not. On the other hand, we may think we are tapping the keys, but really we have held it for a little longer than anticipated.
  2. Additionally, with keyrepeat the desired shift state can get mixed up. It will always 'belong' to the last key pressed. For example, keyrepeating a capital and then tapping something lowercase (whether or not it's an Auto Shift key) will result in the capital's key still being held, but shift not.
  3. Auto Shift does not apply to Tap Hold keys. For automatic shifting of Tap Hold keys see Retro Shift.

How Do I Enable Auto Shift?

Add to your rules.mk in the keymap folder:

AUTO_SHIFT_ENABLE = yes

If no rules.mk exists, you can create one.

Then compile and install your new firmware with Auto Key enabled! That's it!

Modifiers

By default, Auto Shift is disabled for any key press that is accompanied by one or more modifiers. Thus, Ctrl+A that you hold for a really long time is not the same as Ctrl+Shift+A.

You can re-enable Auto Shift for modifiers by adding a define to your config.h

c
#define AUTO_SHIFT_MODIFIERS

In which case, Ctrl+A held past the AUTO_SHIFT_TIMEOUT will be sent as Ctrl+Shift+A

Configuring Auto Shift

If desired, there is some configuration that can be done to change the behavior of Auto Shift. This is done by setting various variables the config.h file located in your keymap folder. If no config.h file exists, you can create one.

A sample is

c
#pragma once\n\n#define AUTO_SHIFT_TIMEOUT 150\n#define NO_AUTO_SHIFT_SPECIAL

AUTO_SHIFT_TIMEOUT (Value in ms)

This controls how long you have to hold a key before you get the shifted state. Obviously, this is different for everyone. For the common person, a setting of 135 to 150 works great. However, one should start with a value of at least 175, which is the default value. Then work down from there. The idea is to have the shortest time required to get the shifted state without having false positives.

Play with this value until things are perfect. Many find that all will work well at a given value, but one or two keys will still emit the shifted state on occasion. This is simply due to habit and holding some keys a little longer than others. Once you find this value, work on tapping your problem keys a little quicker than normal and you will be set.

TIP

Auto Shift has three special keys that can help you get this value right very quick. See "Auto Shift Setup" for more details!

For more granular control of this feature, you can add the following to your config.h:

c
#define AUTO_SHIFT_TIMEOUT_PER_KEY

You can then add the following function to your keymap:

c
uint16_t get_autoshift_timeout(uint16_t keycode, keyrecord_t *record) {\n    switch(keycode) {\n        case AUTO_SHIFT_NUMERIC:\n            return 2 * get_generic_autoshift_timeout();\n        case AUTO_SHIFT_SPECIAL:\n            return get_generic_autoshift_timeout() + 50;\n        case AUTO_SHIFT_ALPHA:\n        default:\n            return get_generic_autoshift_timeout();\n    }\n}

Note that you cannot override individual keys that are in one of those groups if you are using them; trying to add a case for KC_A in the above example will not compile as AUTO_SHIFT_ALPHA is there. A possible solution is a second switch above to handle individual keys with no default case and only referencing the groups in the below fallback switch.

NO_AUTO_SHIFT_SPECIAL (simple define)

Do not Auto Shift special keys, which include -_, =+, [{, ]}, ;:, '", ,<, .>, /?, and the KC_TAB.

NO_AUTO_SHIFT_TAB (simple define)

Do not Auto Shift KC_TAB but leave Auto Shift enabled for the other special characters.

NO_AUTO_SHIFT_SYMBOLS (simple define)

Do not Auto Shift symbol keys, which include -_, =+, [{, ]}, ;:, '", ,<, .>, and /?.

NO_AUTO_SHIFT_NUMERIC (simple define)

Do not Auto Shift numeric keys, zero through nine.

NO_AUTO_SHIFT_ALPHA (simple define)

Do not Auto Shift alpha characters, which include A through Z.

AUTO_SHIFT_ENTER (simple define)

Auto Shift the enter key.

Auto Shift Per Key

There are functions that allows you to determine which keys should be autoshifted, much like the tap-hold keys.

The first of these, used to simply add a key to Auto Shift, is get_custom_auto_shifted_key:

c
bool get_custom_auto_shifted_key(uint16_t keycode, keyrecord_t *record) {\n    switch(keycode) {\n        case KC_DOT:\n            return true;\n        default:\n            return false;\n    }\n}

For more granular control, there is get_auto_shifted_key. The default function looks like this:

c
bool get_auto_shifted_key(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n# ifndef NO_AUTO_SHIFT_ALPHA\n        case AUTO_SHIFT_ALPHA:\n# endif\n# ifndef NO_AUTO_SHIFT_NUMERIC\n        case AUTO_SHIFT_NUMERIC:\n# endif\n# ifndef NO_AUTO_SHIFT_SPECIAL\n# ifndef NO_AUTO_SHIFT_TAB\n        case KC_TAB:\n#        endif\n# ifndef NO_AUTO_SHIFT_SYMBOLS\n        case AUTO_SHIFT_SYMBOLS:\n#        endif\n# endif\n# ifdef AUTO_SHIFT_ENTER\n        case KC_ENT:\n# endif\n            return true;\n    }\n    return get_custom_auto_shifted_key(keycode, record);\n}

This functionality is enabled by default, and does not need a define.

AUTO_SHIFT_REPEAT (simple define)

Enables keyrepeat.

AUTO_SHIFT_NO_AUTO_REPEAT (simple define)

Disables automatically keyrepeating when AUTO_SHIFT_TIMEOUT is exceeded.

AUTO_SHIFT_ALPHA (predefined key group)

A predefined group of keys representing A through Z.

AUTO_SHIFT_NUMERIC (predefined key group)

A predefined group of keys representing 0 through 9. Note, these are defined as 1 through 0 since that is the order they normally appear in.

AUTO_SHIFT_SYMBOLS (predefined key group)

A predefined group of keys representing symbolic characters which include -_, =+, [{, ]}, ;:, '", ,<, .>, and /?.

AUTO_SHIFT_SPECIAL (predefined key group)

A predefined group of keys that combines AUTO_SHIFT_SYMBOLS and KC_TAB.

Custom Shifted Values

Especially on small keyboards, the default shifted value for many keys is not optimal. To provide more customizability, there are two user-definable functions, autoshift_press/release_user. These register or unregister the correct value for the passed key. Below is an example adding period to Auto Shift and making its shifted value exclamation point. Make sure to use weak mods - setting real would make any keys following it use their shifted values as if you were holding the key. Clearing of modifiers is handled by Auto Shift, and the OS-sent shift value if keyrepeating multiple keys is always that of the last key pressed (whether or not it's an Auto Shift key).

You can also have non-shifted keys for the shifted values (or even no shifted value), just don't set a shift modifier!

c
bool get_custom_auto_shifted_key(uint16_t keycode, keyrecord_t *record) {\n    switch(keycode) {\n        case KC_DOT:\n            return true;\n        default:\n            return false;\n    }\n}\n\nvoid autoshift_press_user(uint16_t keycode, bool shifted, keyrecord_t *record) {\n    switch(keycode) {\n        case KC_DOT:\n            register_code16((!shifted) ? KC_DOT : KC_EXLM);\n            break;\n        default:\n            if (shifted) {\n                add_weak_mods(MOD_BIT(KC_LSFT));\n            }\n            // & 0xFF gets the Tap key for Tap Holds, required when using Retro Shift\n            register_code16((IS_RETRO(keycode)) ? keycode & 0xFF : keycode);\n    }\n}\n\nvoid autoshift_release_user(uint16_t keycode, bool shifted, keyrecord_t *record) {\n    switch(keycode) {\n        case KC_DOT:\n            unregister_code16((!shifted) ? KC_DOT : KC_EXLM);\n            break;\n        default:\n            // & 0xFF gets the Tap key for Tap Holds, required when using Retro Shift\n            // The IS_RETRO check isn't really necessary here, always using\n            // keycode & 0xFF would be fine.\n            unregister_code16((IS_RETRO(keycode)) ? keycode & 0xFF : keycode);\n    }\n}

Retro Shift

Holding and releasing a Tap Hold key without pressing another key will ordinarily result in only the hold. With retro shift enabled this action will instead produce a shifted version of the tap keycode on release.

It does not require Retro Tapping to be enabled, and if both are enabled the state of retro tapping will only apply if the tap keycode is not matched by Auto Shift. RETRO_TAPPING_PER_KEY and its corresponding function, however, are checked before retro shift is applied.

To enable retro shift, add the following to your config.h:

c
#define RETRO_SHIFT

If RETRO_SHIFT is defined to a value, hold times greater than that value will not produce a tap on release for Mod Taps, and instead triggers the hold action. This enables modifiers to be held for combining with mouse clicks without generating taps on release. For example:

c
#define RETRO_SHIFT 500

Without a value set, holds of any length without an interrupting key will produce the shifted value.

This value (if set) must be greater than one's TAPPING_TERM, as the key press must be designated as a 'hold' by process_tapping before we send the modifier. Per-key tapping terms can be used as a workaround. There is no such limitation in regards to AUTO_SHIFT_TIMEOUT for normal keys.

Note: Tap Holds must be added to Auto Shift, see here.IS_RETRO may be helpful if one wants all Tap Holds retro shifted.

Retro Shift and Tap Hold Configurations

Tap Hold Configurations work a little differently when using Retro Shift. Referencing TAPPING_TERM makes little sense, as holding longer would result in shifting one of the keys.

RETRO_SHIFT enables PERMISSIVE_HOLD-like behaviour (even if not explicitly enabled) on all mod-taps for which RETRO_SHIFT applies.

Using Auto Shift Setup

This will enable you to define three keys temporarily to increase, decrease and report your AUTO_SHIFT_TIMEOUT.

Setup

Map three keys temporarily in your keymap:

KeycodeAliasesDescription
QK_AUTO_SHIFT_DOWNAS_DOWNLower the Auto Shift timeout variable (down)
QK_AUTO_SHIFT_UPAS_UPRaise the Auto Shift timeout variable (up)
QK_AUTO_SHIFT_REPORTAS_RPTReport your current Auto Shift timeout value
QK_AUTO_SHIFT_ONAS_ONTurns on the Auto Shift Function
QK_AUTO_SHIFT_OFFAS_OFFTurns off the Auto Shift Function
QK_AUTO_SHIFT_TOGGLEAS_TOGGToggles the state of the Auto Shift feature

Compile and upload your new firmware.

Use

It is important to note that during these tests, you should be typing completely normal and with no intention of shifted keys.

  1. Type multiple sentences of alphabetical letters.
  2. Observe any upper case letters.
  3. If there are none, press the key you have mapped to AS_DOWN to decrease time Auto Shift timeout value and go back to step 1.
  4. If there are some upper case letters, decide if you need to work on tapping those keys with less down time, or if you need to increase the timeout.
  5. If you decide to increase the timeout, press the key you have mapped to AS_UP and go back to step 1.
  6. Once you are happy with your results, press the key you have mapped to AS_RPT. The keyboard will type by itself the value of your AUTO_SHIFT_TIMEOUT.
  7. Update AUTO_SHIFT_TIMEOUT in your config.h with the value reported.
  8. Add AUTO_SHIFT_NO_SETUP to your config.h.
  9. Remove the key bindings AS_DOWN, AS_UP and AS_RPT.
  10. Compile and upload your new firmware.

An Example Run

hello world. my name is john doe. i am a computer programmer playing with\nkeyboards right now.\n\n[PRESS AS_DOWN quite a few times]\n\nheLLo woRLd. mY nAMe is JOHn dOE. i AM A compUTeR proGRaMMER PlAYiNG witH\nKEYboArDS RiGHT NOw.\n\n[PRESS AS_UP a few times]\n\nhello world. my name is john Doe. i am a computer programmer playing with\nkeyboarDs right now.\n\n[PRESS AS_RPT]\n\n115

The keyboard typed 115 which represents your current AUTO_SHIFT_TIMEOUT value. You are now set! Practice on the D key a little bit that showed up in the testing and you'll be golden.

', 94); diff --git a/assets/features_auto_shift.md.BFuiQ7EE.lean.js b/assets/features_auto_shift.md.BUK-Vjbn.lean.js similarity index 83% rename from assets/features_auto_shift.md.BFuiQ7EE.lean.js rename to assets/features_auto_shift.md.BUK-Vjbn.lean.js index 81906e5b130..ae2207d7586 100644 --- a/assets/features_auto_shift.md.BFuiQ7EE.lean.js +++ b/assets/features_auto_shift.md.BUK-Vjbn.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Auto Shift: Why Do We Need a Shift Key?","description":"","frontmatter":{},"headers":[],"relativePath":"features/auto_shift.md","filePath":"features/auto_shift.md","lastUpdated":null}'); const _sfc_main = { name: "features/auto_shift.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 94); diff --git a/assets/features_autocorrect.md.CwLnMkQ6.js b/assets/features_autocorrect.md.Di2YY-lX.js similarity index 99% rename from assets/features_autocorrect.md.CwLnMkQ6.js rename to assets/features_autocorrect.md.Di2YY-lX.js index e37ce3bf7fa..307a1cc90d5 100644 --- a/assets/features_autocorrect.md.CwLnMkQ6.js +++ b/assets/features_autocorrect.md.Di2YY-lX.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/HL5DP8H.png"; const __pageData = JSON.parse('{"title":"Autocorrect","description":"","frontmatter":{},"headers":[],"relativePath":"features/autocorrect.md","filePath":"features/autocorrect.md","lastUpdated":null}'); const _sfc_main = { name: "features/autocorrect.md" }; diff --git a/assets/features_autocorrect.md.CwLnMkQ6.lean.js b/assets/features_autocorrect.md.Di2YY-lX.lean.js similarity index 84% rename from assets/features_autocorrect.md.CwLnMkQ6.lean.js rename to assets/features_autocorrect.md.Di2YY-lX.lean.js index 57330c98b5b..e62ecc85f65 100644 --- a/assets/features_autocorrect.md.CwLnMkQ6.lean.js +++ b/assets/features_autocorrect.md.Di2YY-lX.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/HL5DP8H.png"; const __pageData = JSON.parse('{"title":"Autocorrect","description":"","frontmatter":{},"headers":[],"relativePath":"features/autocorrect.md","filePath":"features/autocorrect.md","lastUpdated":null}'); const _sfc_main = { name: "features/autocorrect.md" }; diff --git a/assets/features_backlight.md.4TGdbRi8.js b/assets/features_backlight.md.CCkIa8h-.js similarity index 98% rename from assets/features_backlight.md.4TGdbRi8.js rename to assets/features_backlight.md.CCkIa8h-.js index aaca864c610..1b00d9018f2 100644 --- a/assets/features_backlight.md.4TGdbRi8.js +++ b/assets/features_backlight.md.CCkIa8h-.js @@ -1,8 +1,8 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/BmAvoUC.png"; const __pageData = JSON.parse('{"title":"Backlighting","description":"","frontmatter":{},"headers":[],"relativePath":"features/backlight.md","filePath":"features/backlight.md","lastUpdated":null}'); const _sfc_main = { name: "features/backlight.md" }; -const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Backlighting

Many keyboards support backlit keys by way of individual LEDs placed through or underneath the keyswitches. This feature is distinct from both the RGB Underglow and RGB Matrix features as it usually allows for only a single colour per switch, though you can obviously install multiple different single coloured LEDs on a keyboard.

QMK is able to control the brightness of these LEDs by switching them on and off rapidly in a certain ratio, a technique known as Pulse Width Modulation, or PWM. By altering the duty cycle of the PWM signal, it creates the illusion of dimming.

Usage

Most keyboards have backlighting enabled by default if they support it, but if it is not working for you (or you have added support), check that your rules.mk includes the following:

make
BACKLIGHT_ENABLE = yes

Keycodes

KeyAliasesDescription
QK_BACKLIGHT_TOGGLEBL_TOGGTurn the backlight on or off
QK_BACKLIGHT_STEPBL_STEPCycle through backlight levels
QK_BACKLIGHT_ONBL_ONSet the backlight to max brightness
QK_BACKLIGHT_OFFBL_OFFTurn the backlight off
QK_BACKLIGHT_UPBL_UPIncrease the backlight level
QK_BACKLIGHT_DOWNBL_DOWNDecrease the backlight level
QK_BACKLIGHT_TOGGLE_BREATHINGBL_BRTGToggle backlight breathing

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
BACKLIGHT_PINNot definedThe pin that controls the LEDs
BACKLIGHT_LEVELS3The number of brightness levels (maximum 31 excluding off)
BACKLIGHT_CAPS_LOCKNot definedEnable Caps Lock indicator using backlight (for keyboards without dedicated LED)
BACKLIGHT_BREATHINGNot definedEnable backlight breathing, if supported
BREATHING_PERIOD6The length of one backlight "breath" in seconds
BACKLIGHT_ON_STATE1The state of the backlight pin when the backlight is "on" - 1 for high, 0 for low
BACKLIGHT_LIMIT_VAL255The maximum duty cycle of the backlight -- 255 allows for full brightness, any lower will decrease the maximum.
BACKLIGHT_DEFAULT_ONtrueEnable backlight upon clearing the EEPROM
BACKLIGHT_DEFAULT_BREATHINGfalseWhether to enable backlight breathing upon clearing the EEPROM
BACKLIGHT_DEFAULT_LEVELBACKLIGHT_LEVELSThe default backlight level to use upon clearing the EEPROM

Unless you are designing your own keyboard, you generally should not need to change the BACKLIGHT_PIN or BACKLIGHT_ON_STATE.

"On" State

Most backlight circuits are driven by an N-channel MOSFET or NPN transistor. This means that to turn the transistor on and light the LEDs, you must drive the backlight pin, connected to the gate or base, high. Sometimes, however, a P-channel MOSFET, or a PNP transistor is used. In this case, when the transistor is on, the pin is driven low instead.

To configure the "on" state of the backlight circuit, add the following to your config.h:

c
#define BACKLIGHT_ON_STATE 0

Multiple Backlight Pins

Most keyboards have only one backlight pin which controls all backlight LEDs (especially if the backlight is connected to a hardware PWM pin). The timer and software drivers allow you to define multiple backlight pins, which will be turned on and off at the same time during the PWM duty cycle.

This feature allows to set, for instance, the Caps Lock LED's (or any other controllable LED) brightness at the same level as the other LEDs of the backlight. This is useful if you have mapped Control in place of Caps Lock and you need the Caps Lock LED to be part of the backlight instead of being activated when Caps Lock is on, as it is usually wired to a separate pin from the backlight.

To configure multiple backlight pins, add something like this to your config.h, instead of BACKLIGHT_PIN:

c
#define BACKLIGHT_PINS { F5, B2 }

Driver Configuration

Backlight driver selection is configured in rules.mk. Valid drivers are pwm (default), timer, software, or custom. See below for information on individual drivers.

PWM Driver

This is the default backlight driver, which leverages the hardware PWM output capability of the microcontroller.

make
BACKLIGHT_DRIVER = pwm

Timer Driver

This driver is similar to the PWM driver, but instead of directly configuring the pin to output a PWM signal, an interrupt handler is attached to the timer to turn the pin on and off as appropriate.

make
BACKLIGHT_DRIVER = timer

Software Driver

In this mode, PWM is "emulated" while running other keyboard tasks. It offers maximum hardware compatibility without extra platform configuration. However, breathing is not supported, and the backlight can flicker when the keyboard is busy.

make
BACKLIGHT_DRIVER = software

Custom Driver

If none of the above drivers apply to your board (for example, you are using a separate IC to control the backlight), you can implement a custom backlight driver using a simple API.

make
BACKLIGHT_DRIVER = custom
c
void backlight_init_ports(void) {\n    // Optional - runs on startup\n    //   Usually you want to configure pins here\n}\nvoid backlight_set(uint8_t level) {\n    // Optional - runs on level change\n    //   Usually you want to respond to the new value\n}\n\nvoid backlight_task(void) {\n    // Optional - runs periodically\n    //   Note that this is called in the main keyboard loop,\n    //   so long running actions here can cause performance issues\n}

AVR Configuration

PWM Driver

The following table describes the supported pins for the PWM driver. Only cells marked with a timer number are capable of hardware PWM output; any others must use the timer driver.

Backlight PinAT90USB64/128AT90USB162ATmega16/32U4ATmega16/32U2ATmega32AATmega328/P
B1Timer 1
B2Timer 1
B5Timer 1Timer 1
B6Timer 1Timer 1
B7Timer 1Timer 1Timer 1Timer 1
C4Timer 3
C5Timer 3Timer 1Timer 1
C6Timer 3Timer 1Timer 3Timer 1
D4Timer 1
D5Timer 1

Timer Driver

Any GPIO pin can be used with this driver. The following table describes the supported timers:

AT90USB64/128AT90USB162ATmega16/32U4ATmega16/32U2ATmega32AATmega328/P
Timers 1 & 3Timer 1Timers 1 & 3Timer 1Timer 1Timer 1

The following #defines apply only to the timer driver:

DefineDefaultDescription
BACKLIGHT_PWM_TIMER1The timer to use

Note that the choice of timer may conflict with the Audio feature.

ChibiOS/ARM Configuration

PWM Driver

Depending on the ChibiOS board configuration, you may need to enable PWM at the keyboard level. For STM32, this would look like:

c
#pragma once\n\n#define HAL_USE_PWM TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_PWM_USE_TIM4\n#define STM32_PWM_USE_TIM4 TRUE

The following #defines apply only to the pwm driver:

DefineDefaultDescription
BACKLIGHT_PWM_DRIVERPWMD4The PWM driver to use
BACKLIGHT_PWM_CHANNEL3The PWM channel to use
BACKLIGHT_PAL_MODE2The pin alternative function to use
BACKLIGHT_PWM_PERIODNot definedThe PWM period in counter ticks - Default is platform dependent

Refer to the ST datasheet for your particular MCU to determine these values. For example, these defaults are set up for pin B8 on a Proton-C (STM32F303) using TIM4_CH3 on AF2. Unless you are designing your own keyboard, you generally should not need to change them.

Timer Driver

Depending on the ChibiOS board configuration, you may need to enable general-purpose timers at the keyboard level. For STM32, this would look like:

c
#pragma once\n\n#define HAL_USE_GPT TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_GPT_USE_TIM15\n#define STM32_GPT_USE_TIM15 TRUE

The following #defines apply only to the timer driver:

DefineDefaultDescription
BACKLIGHT_GPT_DRIVERGPTD15The timer to use

Example Schematic

Since the MCU can only supply so much current to its GPIO pins, instead of powering the backlight directly from the MCU, the backlight pin is connected to a transistor or MOSFET that switches the power to the LEDs.

In this typical example, the backlight LEDs are all connected in parallel towards an N-channel MOSFET. Its gate pin is wired to one of the microcontroller's GPIO pins through a 470Ω resistor to avoid ringing. A pulldown resistor is also placed between the gate pin and ground to keep it at a defined state when it is not otherwise being driven by the MCU. The values of these resistors are not critical - see this Electronics StackExchange question for more information.

Backlight example circuit

API

void backlight_toggle(void)

Toggle the backlight on or off.


void backlight_enable(void)

Turn the backlight on.


void backlight_disable(void)

Turn the backlight off.


void backlight_step(void)

Cycle through backlight levels.


void backlight_increase(void)

Increase the backlight level.


void backlight_decrease(void)

Decrease the backlight level.


void backlight_level(uint8_t level)

Set the backlight level.

Arguments


uint8_t get_backlight_level(void)

Get the current backlight level.

Return Value

The current backlight level, from 0 to BACKLIGHT_LEVELS.


bool is_backlight_enabled(void)

Get the current backlight state.

Return Value

true if the backlight is enabled.


void backlight_toggle_breathing(void)

Toggle backlight breathing on or off.


void backlight_enable_breathing(void)

Turn backlight breathing on.


void backlight_disable_breathing(void)

Turn backlight breathing off.


bool is_backlight_breathing(void)

Get the current backlight breathing state.

Return Value

true if backlight breathing is enabled.

', 109); +const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Backlighting

Many keyboards support backlit keys by way of individual LEDs placed through or underneath the keyswitches. This feature is distinct from both the RGB Underglow and RGB Matrix features as it usually allows for only a single colour per switch, though you can obviously install multiple different single coloured LEDs on a keyboard.

QMK is able to control the brightness of these LEDs by switching them on and off rapidly in a certain ratio, a technique known as Pulse Width Modulation, or PWM. By altering the duty cycle of the PWM signal, it creates the illusion of dimming.

Usage

Most keyboards have backlighting enabled by default if they support it, but if it is not working for you (or you have added support), check that your rules.mk includes the following:

make
BACKLIGHT_ENABLE = yes

Keycodes

KeyAliasesDescription
QK_BACKLIGHT_TOGGLEBL_TOGGTurn the backlight on or off
QK_BACKLIGHT_STEPBL_STEPCycle through backlight levels
QK_BACKLIGHT_ONBL_ONSet the backlight to max brightness
QK_BACKLIGHT_OFFBL_OFFTurn the backlight off
QK_BACKLIGHT_UPBL_UPIncrease the backlight level
QK_BACKLIGHT_DOWNBL_DOWNDecrease the backlight level
QK_BACKLIGHT_TOGGLE_BREATHINGBL_BRTGToggle backlight breathing

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
BACKLIGHT_PINNot definedThe pin that controls the LEDs
BACKLIGHT_LEVELS3The number of brightness levels (maximum 31 excluding off)
BACKLIGHT_CAPS_LOCKNot definedEnable Caps Lock indicator using backlight (for keyboards without dedicated LED)
BACKLIGHT_BREATHINGNot definedEnable backlight breathing, if supported
BREATHING_PERIOD6The length of one backlight "breath" in seconds
BACKLIGHT_ON_STATE1The state of the backlight pin when the backlight is "on" - 1 for high, 0 for low
BACKLIGHT_LIMIT_VAL255The maximum duty cycle of the backlight -- 255 allows for full brightness, any lower will decrease the maximum.
BACKLIGHT_DEFAULT_ONtrueEnable backlight upon clearing the EEPROM
BACKLIGHT_DEFAULT_BREATHINGfalseWhether to enable backlight breathing upon clearing the EEPROM
BACKLIGHT_DEFAULT_LEVELBACKLIGHT_LEVELSThe default backlight level to use upon clearing the EEPROM

Unless you are designing your own keyboard, you generally should not need to change the BACKLIGHT_PIN or BACKLIGHT_ON_STATE.

"On" State

Most backlight circuits are driven by an N-channel MOSFET or NPN transistor. This means that to turn the transistor on and light the LEDs, you must drive the backlight pin, connected to the gate or base, high. Sometimes, however, a P-channel MOSFET, or a PNP transistor is used. In this case, when the transistor is on, the pin is driven low instead.

To configure the "on" state of the backlight circuit, add the following to your config.h:

c
#define BACKLIGHT_ON_STATE 0

Multiple Backlight Pins

Most keyboards have only one backlight pin which controls all backlight LEDs (especially if the backlight is connected to a hardware PWM pin). The timer and software drivers allow you to define multiple backlight pins, which will be turned on and off at the same time during the PWM duty cycle.

This feature allows to set, for instance, the Caps Lock LED's (or any other controllable LED) brightness at the same level as the other LEDs of the backlight. This is useful if you have mapped Control in place of Caps Lock and you need the Caps Lock LED to be part of the backlight instead of being activated when Caps Lock is on, as it is usually wired to a separate pin from the backlight.

To configure multiple backlight pins, add something like this to your config.h, instead of BACKLIGHT_PIN:

c
#define BACKLIGHT_PINS { F5, B2 }

Driver Configuration

Backlight driver selection is configured in rules.mk. Valid drivers are pwm (default), timer, software, or custom. See below for information on individual drivers.

PWM Driver

This is the default backlight driver, which leverages the hardware PWM output capability of the microcontroller.

make
BACKLIGHT_DRIVER = pwm

Timer Driver

This driver is similar to the PWM driver, but instead of directly configuring the pin to output a PWM signal, an interrupt handler is attached to the timer to turn the pin on and off as appropriate.

make
BACKLIGHT_DRIVER = timer

Software Driver

In this mode, PWM is "emulated" while running other keyboard tasks. It offers maximum hardware compatibility without extra platform configuration. However, breathing is not supported, and the backlight can flicker when the keyboard is busy.

make
BACKLIGHT_DRIVER = software

Custom Driver

If none of the above drivers apply to your board (for example, you are using a separate IC to control the backlight), you can implement a custom backlight driver using a simple API.

make
BACKLIGHT_DRIVER = custom
c
void backlight_init_ports(void) {\n    // Optional - runs on startup\n    //   Usually you want to configure pins here\n}\nvoid backlight_set(uint8_t level) {\n    // Optional - runs on level change\n    //   Usually you want to respond to the new value\n}\n\nvoid backlight_task(void) {\n    // Optional - runs periodically\n    //   Note that this is called in the main keyboard loop,\n    //   so long running actions here can cause performance issues\n}

AVR Configuration

PWM Driver

The following table describes the supported pins for the PWM driver. Only cells marked with a timer number are capable of hardware PWM output; any others must use the timer driver.

Backlight PinAT90USB64/128AT90USB162ATmega16/32U4ATmega16/32U2ATmega32AATmega328/P
B1Timer 1
B2Timer 1
B5Timer 1Timer 1
B6Timer 1Timer 1
B7Timer 1Timer 1Timer 1Timer 1
C4Timer 3
C5Timer 3Timer 1Timer 1
C6Timer 3Timer 1Timer 3Timer 1
D4Timer 1
D5Timer 1

Timer Driver

Any GPIO pin can be used with this driver. The following table describes the supported timers:

AT90USB64/128AT90USB162ATmega16/32U4ATmega16/32U2ATmega32AATmega328/P
Timers 1 & 3Timer 1Timers 1 & 3Timer 1Timer 1Timer 1

The following #defines apply only to the timer driver:

DefineDefaultDescription
BACKLIGHT_PWM_TIMER1The timer to use

Note that the choice of timer may conflict with the Audio feature.

ChibiOS/ARM Configuration

PWM Driver

Depending on the ChibiOS board configuration, you may need to enable PWM at the keyboard level. For STM32, this would look like:

c
#pragma once\n\n#define HAL_USE_PWM TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_PWM_USE_TIM4\n#define STM32_PWM_USE_TIM4 TRUE

The following #defines apply only to the pwm driver:

DefineDefaultDescription
BACKLIGHT_PWM_DRIVERPWMD4The PWM driver to use
BACKLIGHT_PWM_CHANNEL3The PWM channel to use
BACKLIGHT_PAL_MODE2The pin alternative function to use
BACKLIGHT_PWM_PERIODNot definedThe PWM period in counter ticks - Default is platform dependent

Refer to the ST datasheet for your particular MCU to determine these values. For example, these defaults are set up for pin B8 on a Proton-C (STM32F303) using TIM4_CH3 on AF2. Unless you are designing your own keyboard, you generally should not need to change them.

Timer Driver

Depending on the ChibiOS board configuration, you may need to enable general-purpose timers at the keyboard level. For STM32, this would look like:

c
#pragma once\n\n#define HAL_USE_GPT TRUE\n\n#include_next <halconf.h>
c
#pragma once\n\n#include_next <mcuconf.h>\n\n#undef STM32_GPT_USE_TIM15\n#define STM32_GPT_USE_TIM15 TRUE

The following #defines apply only to the timer driver:

DefineDefaultDescription
BACKLIGHT_GPT_DRIVERGPTD15The timer to use

Example Schematic

Since the MCU can only supply so much current to its GPIO pins, instead of powering the backlight directly from the MCU, the backlight pin is connected to a transistor or MOSFET that switches the power to the LEDs.

In this typical example, the backlight LEDs are all connected in parallel towards an N-channel MOSFET. Its gate pin is wired to one of the microcontroller's GPIO pins through a 470Ω resistor to avoid ringing. A pulldown resistor is also placed between the gate pin and ground to keep it at a defined state when it is not otherwise being driven by the MCU. The values of these resistors are not critical - see this Electronics StackExchange question for more information.

Backlight example circuit

API

void backlight_toggle(void)

Toggle the backlight on or off.


void backlight_enable(void)

Turn the backlight on.


void backlight_disable(void)

Turn the backlight off.


void backlight_step(void)

Cycle through backlight levels.


void backlight_increase(void)

Increase the backlight level.


void backlight_decrease(void)

Decrease the backlight level.


void backlight_level(uint8_t level)

Set the backlight level.

Arguments


uint8_t get_backlight_level(void)

Get the current backlight level.

Return Value

The current backlight level, from 0 to BACKLIGHT_LEVELS.


bool is_backlight_enabled(void)

Get the current backlight state.

Return Value

true if the backlight is enabled.


void backlight_toggle_breathing(void)

Toggle backlight breathing on or off.


void backlight_enable_breathing(void)

Turn backlight breathing on.


void backlight_disable_breathing(void)

Turn backlight breathing off.


bool is_backlight_breathing(void)

Get the current backlight breathing state.

Return Value

true if backlight breathing is enabled.

', 109); const _hoisted_110 = [ _hoisted_1 ]; diff --git a/assets/features_backlight.md.4TGdbRi8.lean.js b/assets/features_backlight.md.CCkIa8h-.lean.js similarity index 83% rename from assets/features_backlight.md.4TGdbRi8.lean.js rename to assets/features_backlight.md.CCkIa8h-.lean.js index ba0863b3f02..31ac284ed49 100644 --- a/assets/features_backlight.md.4TGdbRi8.lean.js +++ b/assets/features_backlight.md.CCkIa8h-.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/BmAvoUC.png"; const __pageData = JSON.parse('{"title":"Backlighting","description":"","frontmatter":{},"headers":[],"relativePath":"features/backlight.md","filePath":"features/backlight.md","lastUpdated":null}'); const _sfc_main = { name: "features/backlight.md" }; diff --git a/assets/features_battery.md.CgVRBqOv.js b/assets/features_battery.md.DaU78lT0.js similarity index 97% rename from assets/features_battery.md.CgVRBqOv.js rename to assets/features_battery.md.DaU78lT0.js index cfc791e3fe6..fddddf24a60 100644 --- a/assets/features_battery.md.CgVRBqOv.js +++ b/assets/features_battery.md.DaU78lT0.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Battery","description":"","frontmatter":{},"headers":[],"relativePath":"features/battery.md","filePath":"features/battery.md","lastUpdated":null}'); const _sfc_main = { name: "features/battery.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Battery

This feature provides the high level abstraction for sampling battery level.

Usage

To use this driver, add the following to your rules.mk:

make
BATTERY_ENABLE = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
BATTERY_SAMPLE_INTERVAL30000The time between battery samples in milliseconds.

Driver Configuration

See the Battery Driver documentation for more information.

Functions

uint8_t battery_get_percent(void)

Sample battery level.

Return Value

The battery percentage, in the range 0-100.

Callbacks

void battery_percent_changed_user(uint8_t level)

User hook called when battery level changed.

Arguments


void battery_percent_changed_kb(uint8_t level)

Keyboard hook called when battery level changed.

Arguments

', 25); diff --git a/assets/features_battery.md.CgVRBqOv.lean.js b/assets/features_battery.md.DaU78lT0.lean.js similarity index 82% rename from assets/features_battery.md.CgVRBqOv.lean.js rename to assets/features_battery.md.DaU78lT0.lean.js index 8c3a7af2af3..d5077f6c413 100644 --- a/assets/features_battery.md.CgVRBqOv.lean.js +++ b/assets/features_battery.md.DaU78lT0.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Battery","description":"","frontmatter":{},"headers":[],"relativePath":"features/battery.md","filePath":"features/battery.md","lastUpdated":null}'); const _sfc_main = { name: "features/battery.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 25); diff --git a/assets/features_bootmagic.md.CBkhKU8p.js b/assets/features_bootmagic.md.D5-HY3Hf.js similarity index 98% rename from assets/features_bootmagic.md.CBkhKU8p.js rename to assets/features_bootmagic.md.D5-HY3Hf.js index 77ed4d810da..8041b0361e4 100644 --- a/assets/features_bootmagic.md.CBkhKU8p.js +++ b/assets/features_bootmagic.md.D5-HY3Hf.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Bootmagic","description":"","frontmatter":{},"headers":[],"relativePath":"features/bootmagic.md","filePath":"features/bootmagic.md","lastUpdated":null}'); const _sfc_main = { name: "features/bootmagic.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Bootmagic

The Bootmagic feature that only handles jumping into the bootloader. This is great for boards that don't have a physical reset button, giving you a way to jump into the bootloader

On some keyboards Bootmagic is disabled by default. If this is the case, it must be explicitly enabled in your rules.mk with:

make
BOOTMAGIC_ENABLE = yes

Additionally, you may want to specify which key to use. This is especially useful for keyboards that have unusual matrices. To do so, you need to specify the row and column of the key that you want to use. Add these entries to your config.h file:

c
#define BOOTMAGIC_ROW 0\n#define BOOTMAGIC_COLUMN 1

By default, these are set to 0 and 0, which is usually the "ESC" key on a majority of keyboards.

And to trigger the bootloader, you hold this key down when plugging the keyboard in. Just the single key.

WARNING

Using Bootmagic will always reset the EEPROM, so you will lose any settings that have been saved.

Split Keyboards

When handedness is predetermined via options like SPLIT_HAND_PIN or EE_HANDS, you might need to configure a different key between halves. To identify the correct key for the right half, examine the split key matrix defined in the <keyboard>.h file, e.g.:

c
#define LAYOUT_split_3x5_2( \\\n        L01, L02, L03, L04, L05,   R01, R02, R03, R04, R05, \\\n        L06, L07, L08, L09, L10,   R06, R07, R08, R09, R10, \\\n        L11, L12, L13, L14, L15,   R11, R12, R13, R14, R15, \\\n                       L16, L17,   R16, R17                 \\\n    ) \\\n    { \\\n        { L01, L02, L03, L04, L05 }, \\\n        { L06, L07, L08, L09, L10 }, \\\n        { L11, L12, L13, L14, L15 }, \\\n        { L16, L17, KC_NO, KC_NO, KC_NO }, \\\n        { R01, R02, R03, R04, R05 }, \\\n        { R06, R07, R08, R09, R10 }, \\\n        { R11, R12, R13, R14, R15 }, \\\n        { R16, R17, KC_NO, KC_NO, KC_NO }  \\\n    }

If you pick the top right key for the right half, it is R05 on the top layout. Within the key matrix below, R05 is located on row 4 column 4. To use that key as the right half's Bootmagic trigger, add these entries to your config.h file:

c
#define BOOTMAGIC_ROW_RIGHT 4\n#define BOOTMAGIC_COLUMN_RIGHT 4

TIP

These values are not set by default.

Advanced Bootmagic

The bootmagic_scan function is defined weakly, so that you can replace this in your code, if you need. A great example of this is the Zeal60 boards that have some additional handling needed.

To replace the function, all you need to do is add something like this to your code:

c
void bootmagic_scan(void) {\n    matrix_scan();\n    wait_ms(DEBOUNCE * 2);\n    matrix_scan();\n\n    if (matrix_get_row(BOOTMAGIC_ROW) & (1 << BOOTMAGIC_COLUMN)) {\n      // Jump to bootloader.\n      bootloader_jump();\n    }\n}

You can define additional logic here. For instance, resetting the EEPROM or requiring additional keys to be pressed to trigger Bootmagic. Keep in mind that bootmagic_scan is called before a majority of features are initialized in the firmware.

Addenda

To manipulate settings that were formerly configured through the now-deprecated full Bootmagic feature, see Magic Keycodes.

The Command feature, formerly known as Magic, also allows you to control different aspects of your keyboard. While it shares some functionality with Magic Keycodes, it also allows you to do things that Magic Keycodes cannot, such as printing version information to the console. For more information, see Command.

', 23); diff --git a/assets/features_bootmagic.md.CBkhKU8p.lean.js b/assets/features_bootmagic.md.D5-HY3Hf.lean.js similarity index 83% rename from assets/features_bootmagic.md.CBkhKU8p.lean.js rename to assets/features_bootmagic.md.D5-HY3Hf.lean.js index cab19dbae3e..ebfe034f1ed 100644 --- a/assets/features_bootmagic.md.CBkhKU8p.lean.js +++ b/assets/features_bootmagic.md.D5-HY3Hf.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Bootmagic","description":"","frontmatter":{},"headers":[],"relativePath":"features/bootmagic.md","filePath":"features/bootmagic.md","lastUpdated":null}'); const _sfc_main = { name: "features/bootmagic.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 23); diff --git a/assets/features_caps_word.md.BwuF_Vhc.js b/assets/features_caps_word.md.Cqa7whRF.js similarity index 99% rename from assets/features_caps_word.md.BwuF_Vhc.js rename to assets/features_caps_word.md.Cqa7whRF.js index dd7fe0bab46..c875fddb6fb 100644 --- a/assets/features_caps_word.md.BwuF_Vhc.js +++ b/assets/features_caps_word.md.Cqa7whRF.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Caps Word","description":"","frontmatter":{},"headers":[],"relativePath":"features/caps_word.md","filePath":"features/caps_word.md","lastUpdated":null}'); const _sfc_main = { name: "features/caps_word.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Caps Word

It is often useful to type a single word in all capitals, for instance abbreviations like "QMK", or in code, identifiers like KC_SPC. "Caps Word" is a modern alternative to Caps Lock:

How do I enable Caps Word

In your rules.mk, add:

make
CAPS_WORD_ENABLE = yes

Next, use one the following methods to activate Caps Word:

Troubleshooting: Command

When using BOTH_SHIFTS_TURNS_ON_CAPS_WORD, you might see a compile message "BOTH_SHIFTS_TURNS_ON_CAPS_WORD and Command should not be enabled at the same time, since both use the Left Shift + Right Shift key combination."

Many keyboards enable the Command feature, which by default is also activated using the Left Shift + Right Shift key combination. To fix this conflict, please disable Command by adding in rules.mk:

make
COMMAND_ENABLE = no

Or configure Command to use another key combination like Left Ctrl + Right Ctrl by defining IS_COMMAND() in config.h:

c
// Activate Command with Left Ctrl + Right Ctrl.\n#define IS_COMMAND() (get_mods() == MOD_MASK_CTRL)

Customizing Caps Word

Invert on shift

By default, Caps Word turns off when Shift keys are pressed, considering them as word-breaking. Alternatively with the CAPS_WORD_INVERT_ON_SHIFT option, pressing the Shift key continues Caps Word and inverts the shift state. This is convenient for uncapitalizing one or a few letters within a word, for example with Caps Word on, typing "D, B, Shift+A, Shift+A, S" produces "DBaaS", or typing "P, D, F, Shift+S" produces "PDFs".

Enable it by adding in config.h

c
#define CAPS_WORD_INVERT_ON_SHIFT

This option works with regular Shift keys KC_LSFT and KC_RSFT, mod-tap Shift keys, and one-shot Shift keys. Note that while Caps Word is on, one-shot Shift keys behave like regular Shift keys, and have effect only while they are held.

Idle timeout

Caps Word turns off automatically if no keys are pressed for CAPS_WORD_IDLE_TIMEOUT milliseconds. The default is 5000 (5 seconds). Configure the timeout duration in config.h, for instance

c
#define CAPS_WORD_IDLE_TIMEOUT 3000  // 3 seconds.

Setting CAPS_WORD_IDLE_TIMEOUT to 0 configures Caps Word to never time out. Caps Word then remains active indefinitely until a word breaking key is pressed.

Functions

Functions to manipulate Caps Word:

FunctionDescription
caps_word_on()Turns Caps Word on.
caps_word_off()Turns Caps Word off.
caps_word_toggle()Toggles Caps Word.
is_caps_word_on()Returns true if Caps Word is currently on.

Configure which keys are "word breaking"

You can define the caps_word_press_user(uint16_t keycode) callback to configure which keys should be shifted and which keys are considered "word breaking" and stop Caps Word.

The callback is called on every key press while Caps Word is active. When the key should be shifted (that is, a letter key), the callback should call add_weak_mods(MOD_BIT(KC_LSFT)) to shift the key. Returning true continues the current "word," while returning false is "word breaking" and deactivates Caps Word. The default callback is

c
bool caps_word_press_user(uint16_t keycode) {\n    switch (keycode) {\n        // Keycodes that continue Caps Word, with shift applied.\n        case KC_A ... KC_Z:\n        case KC_MINS:\n            add_weak_mods(MOD_BIT(KC_LSFT));  // Apply shift to next key.\n            return true;\n\n        // Keycodes that continue Caps Word, without shifting.\n        case KC_1 ... KC_0:\n        case KC_BSPC:\n        case KC_DEL:\n        case KC_UNDS:\n            return true;\n\n        default:\n            return false;  // Deactivate Caps Word.\n    }\n}

Representing Caps Word state

Define caps_word_set_user(bool active) to get callbacks when Caps Word turns on or off. This is useful to represent the current Caps Word state, e.g. by setting an LED or playing a sound. In your keymap, define

c
void caps_word_set_user(bool active) {\n    if (active) {\n        // Do something when Caps Word activates.\n    } else {\n        // Do something when Caps Word deactivates.\n    }\n}
', 34); diff --git a/assets/features_caps_word.md.BwuF_Vhc.lean.js b/assets/features_caps_word.md.Cqa7whRF.lean.js similarity index 83% rename from assets/features_caps_word.md.BwuF_Vhc.lean.js rename to assets/features_caps_word.md.Cqa7whRF.lean.js index e9f6881005d..cd43fdffe51 100644 --- a/assets/features_caps_word.md.BwuF_Vhc.lean.js +++ b/assets/features_caps_word.md.Cqa7whRF.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Caps Word","description":"","frontmatter":{},"headers":[],"relativePath":"features/caps_word.md","filePath":"features/caps_word.md","lastUpdated":null}'); const _sfc_main = { name: "features/caps_word.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 34); diff --git a/assets/features_combo.md.ssaGsA-P.js b/assets/features_combo.md.DUXuMBvZ.js similarity index 99% rename from assets/features_combo.md.ssaGsA-P.js rename to assets/features_combo.md.DUXuMBvZ.js index bd04a84731e..88d244a5687 100644 --- a/assets/features_combo.md.ssaGsA-P.js +++ b/assets/features_combo.md.DUXuMBvZ.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Combos","description":"","frontmatter":{},"headers":[],"relativePath":"features/combo.md","filePath":"features/combo.md","lastUpdated":null}'); const _sfc_main = { name: "features/combo.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Combos

The Combo feature is a chording type solution for adding custom actions. It lets you hit multiple keys at once and produce a different effect. For instance, hitting A and B within the combo term would hit ESC instead, or have it perform even more complex tasks.

To enable this feature, you need to add COMBO_ENABLE = yes to your rules.mk.

Then, in your keymap.c file, you'll need to define a sequence of keys, terminated with COMBO_END, and a structure to list the combination of keys, and its resulting action.

c
const uint16_t PROGMEM test_combo1[] = {KC_A, KC_B, COMBO_END};\nconst uint16_t PROGMEM test_combo2[] = {KC_C, KC_D, COMBO_END};\ncombo_t key_combos[] = {\n    COMBO(test_combo1, KC_ESC),\n    COMBO(test_combo2, LCTL(KC_Z)), // keycodes with modifiers are possible too!\n};

This will send "Escape" if you hit the A and B keys, and Ctrl+Z when you hit the C and D keys.

Advanced Keycodes Support

Advanced keycodes, such as Mod-Tap and Tap Dance are also supported together with combos. If you use these advanced keycodes in your keymap, you will need to place the full keycode in the combo definition, e.g.:

c
const uint16_t PROGMEM test_combo1[] = {LSFT_T(KC_A), LT(1, KC_B), COMBO_END};\nconst uint16_t PROGMEM test_combo2[] = {TD(TD_ESC_CAPS), KC_F1, COMBO_END};

Overlapping Combos

It is possible to overlap combos. Before, with the example below both combos would activate when all three keys were pressed. Now only the three key combo will activate.

c
const uint16_t PROGMEM test_combo1[] = {LSFT_T(KC_A), LT(1, KC_B), COMBO_END};\nconst uint16_t PROGMEM test_combo2[] = {LSFT_T(KC_A), LT(1, KC_B), KC_C, COMBO_END};\ncombo_t key_combos[] = {\n    COMBO(test_combo1, KC_ESC)\n    COMBO(test_combo2, KC_TAB)\n};

Examples

A long list of combos can be defined in an enum list:

c
enum combos {\n  AB_ESC,\n  JK_TAB,\n  QW_SFT,\n  SD_LAYER\n};\n\nconst uint16_t PROGMEM ab_combo[] = {KC_A, KC_B, COMBO_END};\nconst uint16_t PROGMEM jk_combo[] = {KC_J, KC_K, COMBO_END};\nconst uint16_t PROGMEM qw_combo[] = {KC_Q, KC_W, COMBO_END};\nconst uint16_t PROGMEM sd_combo[] = {KC_S, KC_D, COMBO_END};\n\ncombo_t key_combos[] = {\n  [AB_ESC] = COMBO(ab_combo, KC_ESC),\n  [JK_TAB] = COMBO(jk_combo, KC_TAB),\n  [QW_SFT] = COMBO(qw_combo, KC_LSFT),\n  [SD_LAYER] = COMBO(sd_combo, MO(_LAYER)),\n};

For a more complicated implementation, you can use the process_combo_event function to add custom handling.

c
enum combo_events {\n  EM_EMAIL,\n  BSPC_LSFT_CLEAR,\n};\n\nconst uint16_t PROGMEM email_combo[] = {KC_E, KC_M, COMBO_END};\nconst uint16_t PROGMEM clear_line_combo[] = {KC_BSPC, KC_LSFT, COMBO_END};\n\ncombo_t key_combos[] = {\n  [EM_EMAIL] = COMBO_ACTION(email_combo),\n  [BSPC_LSFT_CLEAR] = COMBO_ACTION(clear_line_combo),\n};\n/* COMBO_ACTION(x) is same as COMBO(x, KC_NO) */\n\nvoid process_combo_event(uint16_t combo_index, bool pressed) {\n  switch(combo_index) {\n    case EM_EMAIL:\n      if (pressed) {\n        SEND_STRING("john.doe@example.com");\n      }\n      break;\n    case BSPC_LSFT_CLEAR:\n      if (pressed) {\n        tap_code16(KC_END);\n        tap_code16(S(KC_HOME));\n        tap_code16(KC_BSPC);\n      }\n      break;\n  }\n}

This will send "john.doe@example.com" if you chord E and M together, and clear the current line with Backspace and Left-Shift. You could change this to do stuff like play sounds or change settings.

It is worth noting that COMBO_ACTIONs are not needed anymore. As of PR#8591, it is possible to run your own custom keycodes from combos. Just define the custom keycode, program its functionality in process_record_user, and define a combo with COMBO(<key_array>, <your_custom_keycode>). See the first example in Macros.

Keycodes

You can enable, disable and toggle the Combo feature on the fly. This is useful if you need to disable them temporarily, such as for a game. The following keycodes are available for use in your keymap.c

KeycodeAliasesDescription
QK_COMBO_ONCM_ONTurns on Combo feature
QK_COMBO_OFFCM_OFFTurns off Combo feature
QK_COMBO_TOGGLECM_TOGGToggles Combo feature on and off

Advanced Configuration

These configuration settings can be set in your config.h file.

Combo Term

By default, the timeout for the Combos to be recognized is set to 50ms. This can be changed if accidental combo misfires are happening or if you're having difficulties pressing keys at the same time. For instance, #define COMBO_TERM 40 would set the timeout period for combos to 40ms.

Buffer and state sizes

If you're using long combos, or you have a lot of overlapping combos, you may run into issues with this, as the buffers may not be large enough to accommodate what you're doing. In this case, you can configure the sizes of the buffers used. Be aware, larger combo sizes and larger buffers will increase memory usage!

To configure the amount of keys a combo can be composed of, change the following:

KeysDefine to be set
6#define EXTRA_SHORT_COMBOS
8QMK Default
16#define EXTRA_LONG_COMBOS
32#define EXTRA_EXTRA_LONG_COMBOS

Defining EXTRA_SHORT_COMBOS combines a combo's internal state into just one byte. This can, in some cases, save some memory. If it doesn't, no point using it. If you do, you also have to make sure you don't define combos with more than 6 keys.

Processing combos has two buffers, one for the key presses, another for the combos being activated. Use the following options to configure the sizes of these buffers:

DefineDefault
#define COMBO_KEY_BUFFER_LENGTH 88 (the key amount (EXTRA_)EXTRA_LONG_COMBOS gives)
#define COMBO_BUFFER_LENGTH 44

Modifier Combos

If a combo resolves to a Modifier, the window for processing the combo can be extended independently from normal combos. By default, this is disabled but can be enabled with #define COMBO_MUST_HOLD_MODS, and the time window can be configured with #define COMBO_HOLD_TERM 150 (default: TAPPING_TERM). With COMBO_MUST_HOLD_MODS, you cannot tap the combo any more which makes the combo less prone to misfires.

Strict key press order

By defining COMBO_MUST_PRESS_IN_ORDER combos only activate when the keys are pressed in the same order as they are defined in the key array.

Per Combo Timing, Holding, Tapping and Key Press Order

For each combo, it is possible to configure the time window it has to pressed in, if it needs to be held down, if it needs to be tapped, or if its keys need to be pressed in order.

For example, tap-only combos are useful if any (or all) of the underlying keys are mod-tap or layer-tap keys. When you tap the combo, you get the combo result. When you press the combo and hold it down, the combo doesn't activate. Instead the keys are processed separately as if the combo wasn't even there.

In order to use these features, the following configuration options and functions need to be defined. Coming up with useful timings and configuration is left as an exercise for the reader.

Config FlagFunctionDescription
COMBO_TERM_PER_COMBOuint16_t get_combo_term(uint16_t combo_index, combo_t *combo)Optional per-combo timeout window. (default: COMBO_TERM)
COMBO_MUST_HOLD_PER_COMBObool get_combo_must_hold(uint16_t combo_index, combo_t *combo)Controls if a given combo should fire immediately on tap or if it needs to be held. (default: false)
COMBO_MUST_TAP_PER_COMBObool get_combo_must_tap(uint16_t combo_index, combo_t *combo)Controls if a given combo should fire only if tapped within COMBO_HOLD_TERM. (default: false)
COMBO_MUST_PRESS_IN_ORDER_PER_COMBObool get_combo_must_press_in_order(uint16_t combo_index, combo_t *combo)Controls if a given combo should fire only if its keys are pressed in order. (default: true)

Examples:

c
#ifdef COMBO_TERM_PER_COMBO\nuint16_t get_combo_term(uint16_t combo_index, combo_t *combo) {\n    // decide by combo->keycode\n    switch (combo->keycode) {\n        case KC_X:\n            return 50;\n    }\n\n    // or with combo index, i.e. its name from enum.\n    switch (combo_index) {\n        case COMBO_NAME_HERE:\n            return 9001;\n    }\n\n    // And if you're feeling adventurous, you can even decide by the keys in the chord,\n    // i.e. the exact array of keys you defined for the combo.\n    // This can be useful if your combos have a common key and you want to apply the\n    // same combo term for all of them.\n    if (combo->keys[0] == KC_ENT) { // if first key in the array is Enter\n        return 150;\n    }\n\n    return COMBO_TERM;\n}\n#endif\n\n#ifdef COMBO_MUST_HOLD_PER_COMBO\nbool get_combo_must_hold(uint16_t combo_index, combo_t *combo) {\n    // Same as above, decide by keycode, the combo index, or by the keys in the chord.\n\n    if (KEYCODE_IS_MOD(combo->keycode) || \n        (combo->keycode >= QK_MOMENTARY && combo->keycode <= QK_MOMENTARY_MAX) // MO(kc) keycodes\n        ) {\n        return true;\n    }\n\n    switch (combo_index) {\n        case COMBO_NAME_HERE:\n            return true;\n    }\n\n    return false;\n}\n#endif\n\n#ifdef COMBO_MUST_TAP_PER_COMBO\nbool get_combo_must_tap(uint16_t combo_index, combo_t *combo) {\n    // If you want all combos to be tap-only, just uncomment the next line\n    // return true\n\n    // If you want *all* combos, that have Mod-Tap/Layer-Tap/Momentary keys in its chord, to be tap-only, this is for you:\n    uint16_t key;\n    uint8_t idx = 0;\n    while ((key = pgm_read_word(&combo->keys[idx])) != COMBO_END) {\n        switch (key) {\n            case QK_MOD_TAP...QK_MOD_TAP_MAX:\n            case QK_LAYER_TAP...QK_LAYER_TAP_MAX:\n            case QK_MOMENTARY...QK_MOMENTARY_MAX:\n                return true;\n        }\n        idx += 1;\n    }\n    return false;\n\n}\n#endif\n\n#ifdef COMBO_MUST_PRESS_IN_ORDER_PER_COMBO\nbool get_combo_must_press_in_order(uint16_t combo_index, combo_t *combo) {\n    switch (combo_index) {\n        /* List combos here that you want to only activate if their keys\n         * are pressed in the same order as they are defined in the combo's key\n         * array. */\n        case COMBO_NAME_HERE:\n            return true;\n        default:\n            return false;\n    }\n}\n#endif

Generic hook to (dis)allow a combo activation

By defining COMBO_SHOULD_TRIGGER and its companying function bool combo_should_trigger(uint16_t combo_index, combo_t *combo, uint16_t keycode, keyrecord_t *record) you can block or allow combos to activate on the conditions of your choice. For example, you could disallow some combos on the base layer and allow them on another. Or disable combos on the home row when a timer is running.

Examples:

c
bool combo_should_trigger(uint16_t combo_index, combo_t *combo, uint16_t keycode, keyrecord_t *record) {\n    /* Disable combo `SOME_COMBO` on layer `_LAYER_A` */\n    switch (combo_index) {\n        case SOME_COMBO:\n            if (layer_state_is(_LAYER_A)) {\n                return false;\n            }\n    }\n\n    return true;\n}

Combo timer

Normally, the timer is started on the first key press and then reset on every subsequent key press within the COMBO_TERM. Inputting combos is relaxed like this, but also slightly more prone to accidental misfires.

The next two options alter the behaviour of the timer.

#define COMBO_STRICT_TIMER

With COMBO_STRICT_TIMER, the timer is started only on the first key press. Inputting combos is now less relaxed; you need to make sure the full chord is pressed within the COMBO_TERM. Misfires are less common but if you type multiple combos fast, there is a chance that the latter ones might not activate properly.

#define COMBO_NO_TIMER

By defining COMBO_NO_TIMER, the timer is disabled completely and combos are activated on the first key release. This also disables the "must hold" functionalities as they just wouldn't work at all.

Customizable key releases

By defining COMBO_PROCESS_KEY_RELEASE and implementing the function bool process_combo_key_release(uint16_t combo_index, combo_t *combo, uint8_t key_index, uint16_t keycode), you can run your custom code on each key release after a combo was activated. For example you could change the RGB colors, activate haptics, or alter the modifiers.

You can also release a combo early by returning true from the function.

Here's an example where a combo resolves to two modifiers, and on key releases the modifiers are unregistered one by one, depending on which key was released.

c
enum combos {\n  AB_MODS\n};\n\nconst uint16_t PROGMEM ab_combo[] = {KC_A, KC_B, COMBO_END};\n\ncombo_t key_combos[] = {\n  [AB_MODS] = COMBO(ab_combo, LCTL(KC_LSFT)),\n};\n\nbool process_combo_key_release(uint16_t combo_index, combo_t *combo, uint8_t key_index, uint16_t keycode) {\n    switch (combo_index) {\n        case AB_MODS:\n            switch(keycode) {\n                case KC_A:\n                    unregister_mods(MOD_MASK_CTRL);\n                    break;\n                case KC_B:\n                    unregister_mods(MOD_MASK_SHIFT);\n                    break;\n            }\n            return false; // do not release combo\n    }\n    return false;\n}

Customizable key repress

By defining COMBO_PROCESS_KEY_REPRESS and implementing bool process_combo_key_repress(uint16_t combo_index, combo_t *combo, uint8_t key_index, uint16_t keycode) you can run your custom code when you repress just released key of a combo. By combining it with custom process_combo_event we can for example make special handling for Alt+Tab to switch windows, which, on combo F+G activation, registers Alt and presses Tab - then we can switch windows forward by releasing G and pressing it again, or backwards with F key. Here's the full example:

c
enum combos {\n    CMB_ALTTAB\n};\n\nconst uint16_t PROGMEM combo_alttab[] = {KC_F, KC_G, COMBO_END};\n\ncombo_t key_combos[COMBO_LENGTH] = {\n    [CMB_ALTTAB] = COMBO(combo_alttab, KC_NO), // KC_NO to leave processing for process_combo_event\n};\n\nvoid process_combo_event(uint16_t combo_index, bool pressed) {\n    switch (combo_index) {\n        case CMB_ALTTAB:\n            if (pressed) {\n                register_mods(MOD_LALT);\n                tap_code(KC_TAB);\n            } else {\n                unregister_mods(MOD_LALT);\n            }\n            break;\n    }\n}\n\nbool process_combo_key_repress(uint16_t combo_index, combo_t *combo, uint8_t key_index, uint16_t keycode) {\n    switch (combo_index) {\n        case CMB_ALTTAB:\n            switch (keycode) {\n                case KC_F:\n                    tap_code16(S(KC_TAB));\n                    return true;\n                case KC_G:\n                    tap_code(KC_TAB);\n                    return true;\n            }\n    }\n    return false;\n}

Layer independent combos

If you, for example, use multiple base layers for different key layouts, one for QWERTY, and another one for Colemak, you might want your combos to work from the same key positions on all layers. Defining the same combos again for another layout is redundant and takes more memory. The solution is to just check the keycodes from one layer.

With #define COMBO_ONLY_FROM_LAYER 0 in config.h, the combos' keys are always checked from layer 0, even if other layers are active.

Combo reference layers by layer.

If not using COMBO_ONLY_FROM_LAYER it is possible to specify a combo reference layer for any layer using the combo_ref_from_layer hook. The combo macros automatically create this function from the COMBO_REF_LAYER() entries given.

This function returns the assigned reference layer for the current layer. if there is no match, it returns the default reference layer if set, or the current layer otherwise. A default layer can be set with DEFAULT_REF_LAYER(_MY_COMBO_REF_LAYER)

If not set, the default reference layer selection from the automatically generated combo-ref-from-layer() will be the current layer.

The following combo_ref_from_layer function will give a reference layer of _QWERTY for the _DVORAK layer and will give the _NAV layer as a reference to it's self. All other layers will have the default for their combo reference layer. If the default is not set, all other layers will reference themselves.

c
#define COMBO_REF_DEFAULT _MY_COMBO_LAYER\n\nuint8_t combo_ref_from_layer(uint8_t layer){\n    switch (get_highest_layer(layer_state)){\n        case _DVORAK: return _QWERTY;\n        case _NAV: return _NAV;\n        default: return _MY_COMBO_LAYER;\n    }\n    return layer;  // important if default is not in case.\n}

The equivalent definition using the combo macros is this:

c
COMBO_REF_LAYER(_DVORAK, _QWERTY)\nCOMBO_REF_LAYER(_NAV, _NAV)\nDEFAULT_REF_LAYER(_MY_COMBO_LAYER).

User callbacks

In addition to the keycodes, there are a few functions that you can use to set the status, or check it:

FunctionDescription
combo_enable()Enables the combo feature
combo_disable()Disables the combo feature, and clears the combo buffer
combo_toggle()Toggles the state of the combo feature
is_combo_enabled()Returns the status of the combo feature state (true or false)

Dictionary Management

Having 3 places to update when adding new combos or altering old ones does become cumbersome when you have a lot of combos. We can alleviate this with some magic! ... If you consider C macros magic. First, you need to add VPATH += keyboards/gboards to your rules.mk. Next, include the file g/keymap_combo.h in your keymap.c.

WARNING

This functionality uses the same process_combo_event function as COMBO_ACTION macros do, so you cannot use the function yourself in your keymap. Instead, you have to define the cases of the switch statement by themselves within inject.h, which g/keymap_combo.h will then include into the function.

Then, write your combos in combos.def file in the following manner:

c
// Alternate reference layers by layer\n//               Layer     Reference layer\nCOMBO_REF_LAYER(_DVORAK, _QWERTY)  // reference the qwerty layer for dvorak.\nCOMBO_REF_LAYER(_NAV, _NAV) // explicit reference to self instead of the default.\n\n//   name     result    chord keys\nCOMB(AB_ESC,   KC_ESC,   KC_A, KC_B)\nCOMB(JK_TAB,   KC_TAB,   KC_J, KC_K)\nCOMB(JKL_SPC,  KC_SPC,   KC_J, KC_K, KC_L)\nCOMB(BSSL_CLR, KC_NO,    KC_BSPC, KC_LSFT) // using KC_NO as the resulting keycode is the same as COMBO_ACTION before.\nCOMB(QW_UNDO,  C(KC_Z),  KC_Q, KC_W)\nSUBS(TH_THE,   "the",    KC_T, KC_H) // SUBS uses SEND_STRING to output the given string.\n...

For small to huge ready made dictionaries of combos, you can check out http://combos.gboards.ca/.

', 83); diff --git a/assets/features_combo.md.ssaGsA-P.lean.js b/assets/features_combo.md.DUXuMBvZ.lean.js similarity index 82% rename from assets/features_combo.md.ssaGsA-P.lean.js rename to assets/features_combo.md.DUXuMBvZ.lean.js index 7eb4c4cee0f..51f43d68777 100644 --- a/assets/features_combo.md.ssaGsA-P.lean.js +++ b/assets/features_combo.md.DUXuMBvZ.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Combos","description":"","frontmatter":{},"headers":[],"relativePath":"features/combo.md","filePath":"features/combo.md","lastUpdated":null}'); const _sfc_main = { name: "features/combo.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 83); diff --git a/assets/features_command.md.ya5i-XFt.js b/assets/features_command.md.ClQenxyT.js similarity index 97% rename from assets/features_command.md.ya5i-XFt.js rename to assets/features_command.md.ClQenxyT.js index c07d5d7f904..ab6195243ec 100644 --- a/assets/features_command.md.ya5i-XFt.js +++ b/assets/features_command.md.ClQenxyT.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Command","description":"","frontmatter":{},"headers":[],"relativePath":"features/command.md","filePath":"features/command.md","lastUpdated":null}'); const _sfc_main = { name: "features/command.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Command

Command, formerly known as Magic, is a way to change your keyboard's behavior without having to flash or unplug it to use Bootmagic. There is a lot of overlap between this functionality and the Magic Keycodes. Wherever possible we encourage you to use that feature instead of Command.

On some keyboards Command is disabled by default. If this is the case, it must be explicitly enabled in your rules.mk:

make
COMMAND_ENABLE = yes

Usage

To use Command, hold down the key combination defined by the IS_COMMAND() macro. By default this is Left Shift+Right Shift. Then, press the key corresponding to the command you want. For example, to output the current QMK version to the QMK Toolbox console, press Left Shift+Right Shift+V.

Configuration

If you would like to change the key assignments for Command, #define these in your config.h at either the keyboard or keymap level. All keycode assignments here must omit the KC_ prefix.

DefineDefaultDescription
IS_COMMAND()(get_mods() == MOD_MASK_SHIFT)The key combination to activate Command
MAGIC_KEY_SWITCH_LAYER_WITH_FKEYStrueSet default layer with the Function row
MAGIC_KEY_SWITCH_LAYER_WITH_NKEYStrueSet default layer with the number keys
MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOMfalseSet default layer with MAGIC_KEY_LAYER0..9
MAGIC_KEY_DEBUGDToggle debugging over serial
MAGIC_KEY_DEBUG_MATRIXXToggle key matrix debugging
MAGIC_KEY_DEBUG_KBDKToggle keyboard debugging
MAGIC_KEY_DEBUG_MOUSEMToggle mouse debugging
MAGIC_KEY_CONSOLECEnable the Command console
MAGIC_KEY_VERSIONVPrint the running QMK version to the console
MAGIC_KEY_STATUSSPrint the current keyboard status to the console
MAGIC_KEY_HELPHPrint Command help to the console
MAGIC_KEY_HELP_ALTSLASHPrint Command help to the console (alternate)
MAGIC_KEY_LAYER00Make layer 0 the default layer
MAGIC_KEY_LAYER0_ALTGRAVEMake layer 0 the default layer (alternate)
MAGIC_KEY_LAYER11Make layer 1 the default layer
MAGIC_KEY_LAYER22Make layer 2 the default layer
MAGIC_KEY_LAYER33Make layer 3 the default layer
MAGIC_KEY_LAYER44Make layer 4 the default layer
MAGIC_KEY_LAYER55Make layer 5 the default layer
MAGIC_KEY_LAYER66Make layer 6 the default layer
MAGIC_KEY_LAYER77Make layer 7 the default layer
MAGIC_KEY_LAYER88Make layer 8 the default layer
MAGIC_KEY_LAYER99Make layer 9 the default layer
MAGIC_KEY_BOOTLOADERBJump to bootloader
MAGIC_KEY_BOOTLOADER_ALTESCJump to bootloader (alternate)
MAGIC_KEY_LOCKCAPSLock the keyboard so nothing can be typed
MAGIC_KEY_EEPROMEPrint stored EEPROM config to the console
MAGIC_KEY_EEPROM_CLEARBSPACEClear the EEPROM
MAGIC_KEY_NKRONToggle N-Key Rollover (NKRO)
MAGIC_KEY_SLEEP_LEDZToggle LED when computer is sleeping
', 9); diff --git a/assets/features_command.md.ya5i-XFt.lean.js b/assets/features_command.md.ClQenxyT.lean.js similarity index 82% rename from assets/features_command.md.ya5i-XFt.lean.js rename to assets/features_command.md.ClQenxyT.lean.js index 6dce1b2a9ef..16a8147fafd 100644 --- a/assets/features_command.md.ya5i-XFt.lean.js +++ b/assets/features_command.md.ClQenxyT.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Command","description":"","frontmatter":{},"headers":[],"relativePath":"features/command.md","filePath":"features/command.md","lastUpdated":null}'); const _sfc_main = { name: "features/command.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 9); diff --git a/assets/features_community_modules.md.B2PC3enG.js b/assets/features_community_modules.md.BEe_oI6M.js similarity index 99% rename from assets/features_community_modules.md.B2PC3enG.js rename to assets/features_community_modules.md.BEe_oI6M.js index 5bf9dcc1912..db8cd0e4cf9 100644 --- a/assets/features_community_modules.md.B2PC3enG.js +++ b/assets/features_community_modules.md.BEe_oI6M.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Community Modules","description":"","frontmatter":{},"headers":[],"relativePath":"features/community_modules.md","filePath":"features/community_modules.md","lastUpdated":null}'); const _sfc_main = { name: "features/community_modules.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Community Modules

Community Modules are a feature within QMK which allows code to be implemented by third parties, making it available for other people to import into their own builds.

These modules can provide implementations which override or enhance normal QMK processing; initialization, key processing, suspend, and shutdown are some of the provided hooks which modules may implement.

Adding a Community Module to your build

Community Modules have first-class support for External Userspace, and QMK strongly recommends using External Userspace for hosting keymaps and Community Modules together.

Modules must live in either of two locations:

A basic module is provided within QMK itself -- qmk/hello_world -- which prints out a notification over HID console after 10 seconds, and adds a new keycode, COMMUNITY_MODULE_HELLO (aliased to CM_HELO) which types Hello there. to the active application when the corresponding key is pressed.

To add this module to your build, in your keymap's directory create a keymap.json with the following content:

json
{\n    "modules": [\n        "qmk/hello_world"\n    ]\n}

If you already have a keymap.json, you'll need to manually merge the modules section into your keymap.

WARNING

Community Modules are not supported by QMK Configurator. If you wish to use Community Modules, you must build your own firmware.

Adding a Community Module to your External Userspace

Module authors are encouraged to provide a git repository on GitHub which may be imported into a user's external userspace. If a user wishes to import a module repository, they can do the following:

sh
cd /path/to/your/external/userspace\nmkdir -p modules\n# Replace the following {user} and {repo} with the author's community module repository\ngit submodule add https://github.com/{user}/{repo}.git modules/{user}\ngit submodule update --init --recursive

This will ensure the copy of the module is made in your userspace.

Add a new entry into your keymap.json with the desired modules, replacing {user} and {module_name} as appropriate:

json
{\n    "modules": [\n        "qmk/hello_world",\n        "{user}/{module_name}"\n    ]\n}

INFO

The module listed in keymap.json is the relative path within the modules/ directory. So long as the module is present somewhere under modules/, then the keymap.json can refer to that path.

Writing a QMK Community Module

As stated earlier, Community Module authors are strongly encouraged to provide their modules through git, allowing users to leverage submodules to import functionality.

qmk_module.json

A Community Module is denoted by a qmk_module.json file such as the following:

json
{\n    "module_name": "Hello World",\n    "maintainer": "QMK Maintainers",\n    "license": "GPL-2.0-or-later",\n    "features": {\n        "deferred_exec": true\n    },\n    "keycodes": [\n        {\n            "key": "COMMUNITY_MODULE_HELLO",\n            "aliases": ["CM_HELO"]\n        }\n    ]\n}

At minimum, the module must provide the module_name and maintainer fields.

The license field is encouraged to indicate the terms for using and sharing the module. It is recommended to use a SPDX license identifier like "Apache-2.0" or "GPL-2.0-or-later" if possible.

The url field may specify a URL to more information about the module.

The use of features matches the definition normally provided within keyboard.json and info.json, allowing a module to signal to the build system that it has its own dependencies. In the example above, it enables the deferred executor feature whenever the above module is used in a build.

The keycodes array allows a module to provide new keycodes (as well as corresponding aliases) to a keymap.

config.h

This file will be automatically added to the build as if it were present in the keyboard or keymap.

rules.mk / post_rules.mk

These two files follows standard QMK build system logic, allowing for Makefile-style customisation as if it were present in the keyboard or keymap.

<module>.c

This file will be automatically added to the build if the filename matches the directory name. For example, the qmk/hello_world module contains a hello_world.c file, which is automatically added to the build.

INFO

Other files intended to be included must use the normal method of SRC += my_file.c inside rules.mk.

TIP

This file should use ASSERT_COMMUNITY_MODULES_MIN_API_VERSION(1,0,0); to enforce a minimum version of the API that it requires, ensuring the Community Module is built with a compatible version of QMK. The list of APIs and corresponding version is given at the bottom of this document. Note the use of commas instead of periods.

introspection.c / introspection.h

These two files hook into the keymap introspection logic -- the header is prepended before the user keymap, and the C source file is appended after the user keymap.

The header may provide definitions which are useful to the user's keymap.c.

The source file may provide functions which allow access to information specified in the user's keymap.c.

WARNING

Introspection is a relatively advanced topic within QMK, and existing patterns should be followed. If you need help please open an issue or chat with us on Discord.

led_matrix_module.inc

This file defines LED matrix effects in the same form as used with led_matrix_kb.inc and led_matrix_user.inc (see Custom LED Matrix Effects). Effect mode names are prepended with LED_MATRIX_COMMUNITY_MODULE_.

rgb_matrix_module.inc

This file defines RGB matrix effects in the same form as used with rgb_matrix_kb.inc and rgb_matrix_user.inc (see Custom RGB Matrix Effects). Effect mode names are prepended with RGB_MATRIX_COMMUNITY_MODULE_.

Custom split keyboard data sync

Defines follow the convention, SPLIT_TRANSACTION_IDS_MODULE_<MODULE> (see Custom data sync).

Compatible APIs

Community Modules may provide specializations for the following APIs:

Base APIAPI FormatExample (hello_world module)API Version
keyboard_pre_initkeyboard_pre_init_<module>keyboard_pre_init_hello_world0.1.0
keyboard_post_initkeyboard_post_init_<module>keyboard_post_init_hello_world0.1.0
pre_process_recordpre_process_record_<module>pre_process_record_hello_world0.1.0
process_recordprocess_record_<module>process_record_hello_world0.1.0
post_process_recordpost_process_record_<module>post_process_record_hello_world0.1.0
housekeeping_taskhousekeeping_task_<module>housekeeping_task_hello_world1.0.0
suspend_power_downsuspend_power_down_<module>suspend_power_down_hello_world1.0.0
suspend_wakeup_initsuspend_wakeup_init_<module>suspend_wakeup_init_hello_world1.0.0
shutdownshutdown_<module>shutdown_hello_world1.0.0
process_detected_host_osprocess_detected_host_os_<module>process_detected_host_os_hello_world1.0.0
default_layer_state_setdefault_layer_state_set_<module>default_layer_state_set_hello_world1.1.0
layer_state_setlayer_state_set_<module>layer_state_set_hello_world1.1.0
led_matrix_indicatorsled_matrix_indicators_<module>led_matrix_indicators_hello_world1.1.0
led_matrix_indicators_advancedled_matrix_indicators_advanced_<module>led_matrix_indicators_advanced_hello_world1.1.0
rgb_matrix_indicatorsrgb_matrix_indicators_<module>rgb_matrix_indicators_hello_world1.1.0
rgb_matrix_indicators_advancedrgb_matrix_indicators_advanced_<module>rgb_matrix_indicators_advanced_hello_world1.1.0
pointing_device_initpointing_device_init_<module>pointing_device_init_hello_world1.1.0
pointing_device_taskpointing_device_task_<module>pointing_device_task_hello_world1.1.0

INFO

An unspecified API is disregarded if a Community Module does not provide a specialization for it.

Each API has an equivalent _<module>_kb() and _<module>_user() hook, as per the normal QMK _quantum, _kb, and _user functions.

', 53); diff --git a/assets/features_community_modules.md.B2PC3enG.lean.js b/assets/features_community_modules.md.BEe_oI6M.lean.js similarity index 84% rename from assets/features_community_modules.md.B2PC3enG.lean.js rename to assets/features_community_modules.md.BEe_oI6M.lean.js index 3ff62f3410c..4283984cb28 100644 --- a/assets/features_community_modules.md.B2PC3enG.lean.js +++ b/assets/features_community_modules.md.BEe_oI6M.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Community Modules","description":"","frontmatter":{},"headers":[],"relativePath":"features/community_modules.md","filePath":"features/community_modules.md","lastUpdated":null}'); const _sfc_main = { name: "features/community_modules.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 53); diff --git a/assets/features_digitizer.md.CODT9WkJ.js b/assets/features_digitizer.md.Bd-vzJLw.js similarity index 98% rename from assets/features_digitizer.md.CODT9WkJ.js rename to assets/features_digitizer.md.Bd-vzJLw.js index 780d7c03fb1..30c3af8c62f 100644 --- a/assets/features_digitizer.md.CODT9WkJ.js +++ b/assets/features_digitizer.md.Bd-vzJLw.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Digitizer","description":"","frontmatter":{},"headers":[],"relativePath":"features/digitizer.md","filePath":"features/digitizer.md","lastUpdated":null}'); const _sfc_main = { name: "features/digitizer.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Digitizer

Digitizers allow the mouse cursor to be placed at absolute coordinates, unlike the Pointing Device feature which applies relative displacements.

This feature implements a stylus device with a tip switch and barrel switch (generally equivalent to the primary and secondary mouse buttons respectively). Tip pressure is not currently implemented.

Usage

Add the following to your rules.mk:

make
DIGITIZER_ENABLE = yes

Positioning

The X and Y coordinates are normalized, meaning their value must be set between 0 and 1. For the X component, the value 0 is the leftmost position, whereas the value 1 is the rightmost position. Similarly for the Y component, 0 is at the top and 1 at the bottom.

TIP

Since there is no display attached, the OS will likely map these coordinates to the virtual desktop. This may be important to know if you have multiple monitors.

Examples

This example simply places the cursor in the middle of the screen:

c
digitizer_in_range_on();\ndigitizer_set_position(0.5, 0.5);

The "in range" indicator is required to be on for the change in coordinates to be taken. It can then be turned off again to signal the end of the digitizer interaction, but it is not strictly required.

You can also modify the digitizer state directly, if you need to change multiple fields in a single report:

c
digitizer_state.in_range = true;\ndigitizer_state.dirty = true;\ndigitizer_flush();

digitizer_state is a struct of type digitizer_t.

API

struct digitizer_t

Contains the state of the digitizer.

Members


void digitizer_flush(void)

Send the digitizer report to the host if it is marked as dirty.


void digitizer_in_range_on(void)

Assert the "in range" indicator, and flush the report.


void digitizer_in_range_off(void)

Deassert the "in range" indicator, and flush the report.


void digitizer_tip_switch_on(void)

Assert the tip switch, and flush the report.


void digitizer_tip_switch_off(void)

Deassert the tip switch, and flush the report.


void digitizer_barrel_switch_on(void)

Assert the barrel switch, and flush the report.


void digitizer_barrel_switch_off(void)

Deassert the barrel switch, and flush the report.


void digitizer_set_position(float x, float y)

Set the absolute X and Y position of the digitizer contact, and flush the report.

Arguments

', 47); diff --git a/assets/features_digitizer.md.CODT9WkJ.lean.js b/assets/features_digitizer.md.Bd-vzJLw.lean.js similarity index 83% rename from assets/features_digitizer.md.CODT9WkJ.lean.js rename to assets/features_digitizer.md.Bd-vzJLw.lean.js index ecf2b9fe657..a79fd03f13c 100644 --- a/assets/features_digitizer.md.CODT9WkJ.lean.js +++ b/assets/features_digitizer.md.Bd-vzJLw.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Digitizer","description":"","frontmatter":{},"headers":[],"relativePath":"features/digitizer.md","filePath":"features/digitizer.md","lastUpdated":null}'); const _sfc_main = { name: "features/digitizer.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 47); diff --git a/assets/features_dip_switch.md.Ba4GL97m.js b/assets/features_dip_switch.md.DE2RP9Fo.js similarity index 99% rename from assets/features_dip_switch.md.Ba4GL97m.js rename to assets/features_dip_switch.md.DE2RP9Fo.js index 478ab8859a2..33b1994924c 100644 --- a/assets/features_dip_switch.md.Ba4GL97m.js +++ b/assets/features_dip_switch.md.DE2RP9Fo.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"DIP Switches","description":"","frontmatter":{},"headers":[],"relativePath":"features/dip_switch.md","filePath":"features/dip_switch.md","lastUpdated":null}'); const _sfc_main = { name: "features/dip_switch.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

DIP Switches

DIP switches are supported by adding this to your rules.mk:

DIP_SWITCH_ENABLE = yes\n

and this to your config.h:

c
// Connects each switch in the dip switch to the GPIO pin of the MCU\n#define DIP_SWITCH_PINS { B14, A15, A10, B9 }\n// For split keyboards, you can separately define the right side pins\n#define DIP_SWITCH_PINS_RIGHT { ... }

or

c
// Connect each switch in the DIP switch to an unused intersections in the key matrix.\n#define DIP_SWITCH_MATRIX_GRID { {0,6}, {1,6}, {2,6} } // List of row and col pairs

DIP Switch map

DIP Switch mapping may be added to your keymap.c, which replicates the normal keyswitch functionality, but with dip switches. Add this to your keymap's rules.mk:

make
DIP_SWITCH_MAP_ENABLE = yes

Your keymap.c will then need a dip switch mapping defined (for two dip switches):

c
#if defined(DIP_SWITCH_MAP_ENABLE)\nconst uint16_t PROGMEM dip_switch_map[NUM_DIP_SWITCHES][NUM_DIP_STATES] = {\n    DIP_SWITCH_OFF_ON(DF(0), DF(1)),\n    DIP_SWITCH_OFF_ON(EC_NORM, EC_SWAP)\n};\n#endif

TIP

This should only be enabled at the keymap level.

Callbacks

The callback functions can be inserted into your <keyboard>.c:

c
bool dip_switch_update_kb(uint8_t index, bool active) { \n    if (!dip_switch_update_user(index, active)) { return false; }\n    return true;\n}

or keymap.c:

c
bool dip_switch_update_user(uint8_t index, bool active) { \n    switch (index) {\n        case 0:\n            if(active) { audio_on(); } else { audio_off(); }\n            break;\n        case 1:\n            if(active) { clicky_on(); } else { clicky_off(); }\n            break;\n        case 2:\n            if(active) { music_on(); } else { music_off(); }\n            break;\n        case 3:\n            if (active) {\n                #ifdef AUDIO_ENABLE\n                    PLAY_SONG(plover_song);\n                #endif\n                layer_on(_PLOVER);\n            } else {\n                #ifdef AUDIO_ENABLE\n                    PLAY_SONG(plover_gb_song);\n                #endif\n                layer_off(_PLOVER);\n            }\n            break;\n    }\n    return true;\n}

Additionally, we support bit mask functions which allow for more complex handling.

c
bool dip_switch_update_mask_kb(uint32_t state) { \n    if (!dip_switch_update_mask_user(state)) { return false; }\n    return true;\n}

or keymap.c:

c
bool dip_switch_update_mask_user(uint32_t state) { \n    if (state & (1UL<<0) && state & (1UL<<1)) {\n        layer_on(_ADJUST); // C on esc\n    } else {\n        layer_off(_ADJUST);\n    }\n    if (state & (1UL<<0)) {\n        layer_on(_TEST_A); // A on ESC\n    } else {\n        layer_off(_TEST_A);\n    }\n    if (state & (1UL<<1)) {\n        layer_on(_TEST_B); // B on esc\n    } else {\n        layer_off(_TEST_B);\n    }\n    return true;\n}

Hardware

Connects each switch in the dip switch to the GPIO pin of the MCU

One side of the DIP switch should be wired directly to the pin on the MCU, and the other side to ground. It should not matter which side is connected to which, as it should be functionally the same.

Connect each switch in the DIP switch to an unused intersections in the key matrix.

As with the keyswitch, a diode and DIP switch connect the ROW line to the COL line.

', 27); diff --git a/assets/features_dip_switch.md.Ba4GL97m.lean.js b/assets/features_dip_switch.md.DE2RP9Fo.lean.js similarity index 83% rename from assets/features_dip_switch.md.Ba4GL97m.lean.js rename to assets/features_dip_switch.md.DE2RP9Fo.lean.js index 70e8591a622..b8ff61745f2 100644 --- a/assets/features_dip_switch.md.Ba4GL97m.lean.js +++ b/assets/features_dip_switch.md.DE2RP9Fo.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"DIP Switches","description":"","frontmatter":{},"headers":[],"relativePath":"features/dip_switch.md","filePath":"features/dip_switch.md","lastUpdated":null}'); const _sfc_main = { name: "features/dip_switch.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 27); diff --git a/assets/features_dynamic_macros.md.alLvGcWr.js b/assets/features_dynamic_macros.md.DGGasmlF.js similarity index 98% rename from assets/features_dynamic_macros.md.alLvGcWr.js rename to assets/features_dynamic_macros.md.DGGasmlF.js index 9f88efd4d5f..d3bec152444 100644 --- a/assets/features_dynamic_macros.md.alLvGcWr.js +++ b/assets/features_dynamic_macros.md.DGGasmlF.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Dynamic Macros: Record and Replay Macros in Runtime","description":"","frontmatter":{},"headers":[],"relativePath":"features/dynamic_macros.md","filePath":"features/dynamic_macros.md","lastUpdated":null}'); const _sfc_main = { name: "features/dynamic_macros.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Dynamic Macros: Record and Replay Macros in Runtime

QMK supports temporary macros created on the fly. We call these Dynamic Macros. They are defined by the user from the keyboard and are lost when the keyboard is unplugged or otherwise rebooted.

You can store one or two macros and they may have a combined total of 128 keypresses. You can increase this size at the cost of RAM.

To enable them, first include DYNAMIC_MACRO_ENABLE = yes in your rules.mk. Then, add the following keys to your keymap:

KeyAliasDescription
QK_DYNAMIC_MACRO_RECORD_START_1DM_REC1Start recording Macro 1
QK_DYNAMIC_MACRO_RECORD_START_2DM_REC2Start recording Macro 2
QK_DYNAMIC_MACRO_PLAY_1DM_PLY1Replay Macro 1
QK_DYNAMIC_MACRO_PLAY_2DM_PLY2Replay Macro 2
QK_DYNAMIC_MACRO_RECORD_STOPDM_RSTPFinish the macro that is currently being recorded.

That should be everything necessary.

To start recording the macro, press either DM_REC1 or DM_REC2.

To finish the recording, press the DM_RSTP layer button. You can also press DM_REC1 or DM_REC2 again to stop the recording.

To replay the macro, press either DM_PLY1 or DM_PLY2.

It is possible to replay a macro as part of a macro. It's ok to replay macro 2 while recording macro 1 and vice versa but never create recursive macros i.e. macro 1 that replays macro 1. If you do so and the keyboard will get unresponsive, unplug the keyboard and plug it again. You can disable this completely by defining DYNAMIC_MACRO_NO_NESTING in your config.h file.

TIP

For the details about the internals of the dynamic macros, please read the comments in the process_dynamic_macro.h and process_dynamic_macro.c files.

Customization

There are a number of options added that should allow some additional degree of customization

DefineDefaultDescription
DYNAMIC_MACRO_SIZE128Sets the amount of memory that Dynamic Macros can use. This is a limited resource, dependent on the controller.
DYNAMIC_MACRO_USER_CALLNot definedDefining this falls back to using the user keymap.c file to trigger the macro behavior.
DYNAMIC_MACRO_NO_NESTINGNot DefinedDefining this disables the ability to call a macro from another macro (nested macros).
DYNAMIC_MACRO_DELAYNot DefinedSets the waiting time (ms unit) when sending each key.
DYNAMIC_MACRO_KEEP_ORIGINAL_LAYER_STATENot DefinedDefining this keeps the layer state when starting to record a macro

If the LEDs start blinking during the recording with each keypress, it means there is no more space for the macro in the macro buffer. To fit the macro in, either make the other macro shorter (they share the same buffer) or increase the buffer size by adding the DYNAMIC_MACRO_SIZE define in your config.h (default value: 128; please read the comments for it in the header).

DYNAMIC_MACRO_USER_CALL

For users of the earlier versions of dynamic macros: It is still possible to finish the macro recording using just the layer modifier used to access the dynamic macro keys, without a dedicated DM_RSTP key. If you want this behavior back, add #define DYNAMIC_MACRO_USER_CALL to your config.h and insert the following snippet at the beginning of your process_record_user() function:

c
	uint16_t macro_kc = (keycode == MO(_DYN) ? DM_RSTP : keycode);\n\n	if (!process_record_dynamic_macro(macro_kc, record)) {\n		return false;\n	}

User Hooks

There are a number of hooks that you can use to add custom functionality and feedback options to Dynamic Macro feature. This allows for some additional degree of customization.

Note, that direction indicates which macro it is, with 1 being Macro 1, -1 being Macro 2, and 0 being no macro.

Additionally, you can call dynamic_macro_led_blink() to flash the backlights if that feature is enabled.

', 23); diff --git a/assets/features_dynamic_macros.md.alLvGcWr.lean.js b/assets/features_dynamic_macros.md.DGGasmlF.lean.js similarity index 84% rename from assets/features_dynamic_macros.md.alLvGcWr.lean.js rename to assets/features_dynamic_macros.md.DGGasmlF.lean.js index 2156bc340a4..5d4f549117a 100644 --- a/assets/features_dynamic_macros.md.alLvGcWr.lean.js +++ b/assets/features_dynamic_macros.md.DGGasmlF.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Dynamic Macros: Record and Replay Macros in Runtime","description":"","frontmatter":{},"headers":[],"relativePath":"features/dynamic_macros.md","filePath":"features/dynamic_macros.md","lastUpdated":null}'); const _sfc_main = { name: "features/dynamic_macros.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 23); diff --git a/assets/features_encoders.md.Bd7cXZB3.js b/assets/features_encoders.md.Ccf2BS3A.js similarity index 99% rename from assets/features_encoders.md.Bd7cXZB3.js rename to assets/features_encoders.md.Ccf2BS3A.js index 1d594fdc672..ee9248e21b5 100644 --- a/assets/features_encoders.md.Bd7cXZB3.js +++ b/assets/features_encoders.md.Ccf2BS3A.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Encoders","description":"","frontmatter":{},"headers":[],"relativePath":"features/encoders.md","filePath":"features/encoders.md","lastUpdated":null}'); const _sfc_main = { name: "features/encoders.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Encoders

Basic (EC11 compatible) encoders are supported by adding this to your rules.mk:

make
ENCODER_ENABLE = yes

and this to your config.h:

c
#define ENCODER_A_PINS { B12 }\n#define ENCODER_B_PINS { B13 }

Each PAD_A/B variable defines an array so multiple encoders can be defined, e.g.:

c
#define ENCODER_A_PINS { encoder1a, encoder2a }\n#define ENCODER_B_PINS { encoder1b, encoder2b }

If your encoder's clockwise directions are incorrect, you can swap the A & B pad definitions. They can also be flipped with a define:

c
#define ENCODER_DIRECTION_FLIP

Additionally, the resolution, which defines how many pulses the encoder registers between each detent, can be defined with:

c
#define ENCODER_RESOLUTION 4

It can also be defined per-encoder, by instead defining:

c
#define ENCODER_RESOLUTIONS { 4, 2 }

For 4× encoders you also can assign default position if encoder skips pulses when it changes direction. For example, if your encoder send high level on both pins by default, define this:

c
#define ENCODER_DEFAULT_POS 0x3

Split Keyboards

If you are using different pinouts for the encoders on each half of a split keyboard, you can define the pinout (and optionally, resolutions) for the right half like this:

c
#define ENCODER_A_PINS_RIGHT { encoder1a, encoder2a }\n#define ENCODER_B_PINS_RIGHT { encoder1b, encoder2b }\n#define ENCODER_RESOLUTIONS_RIGHT { 2, 4 }

If the _RIGHT definitions aren't specified in your config.h, then the non-_RIGHT versions will be applied to both sides of the split.

Additionally, if one side does not have an encoder, you can specify {} for the pins/resolution -- for example, a split keyboard with only a right-side encoder:

c
#define ENCODER_A_PINS { }\n#define ENCODER_B_PINS { }\n#define ENCODER_RESOLUTIONS { }\n#define ENCODER_A_PINS_RIGHT { B12 }\n#define ENCODER_B_PINS_RIGHT { B13 }\n#define ENCODER_RESOLUTIONS_RIGHT { 4 }

WARNING

Keep in mind that whenever you change the encoder resolution, you will need to reflash the half that has the encoder affected by the change.

Encoder map

Encoder mapping may be added to your keymap.c, which replicates the normal keyswitch layer handling functionality, but with encoders. Add this to your keymap's rules.mk:

make
ENCODER_MAP_ENABLE = yes

Your keymap.c will then need an encoder mapping defined (for four layers and two encoders):

c
#if defined(ENCODER_MAP_ENABLE)\nconst uint16_t PROGMEM encoder_map[][NUM_ENCODERS][NUM_DIRECTIONS] = {\n    [0] = { ENCODER_CCW_CW(MS_WHLU, MS_WHLD),  ENCODER_CCW_CW(KC_VOLD, KC_VOLU)  },\n    [1] = { ENCODER_CCW_CW(UG_HUED, UG_HUEU),  ENCODER_CCW_CW(UG_SATD, UG_SATU)  },\n    [2] = { ENCODER_CCW_CW(UG_VALD, UG_VALU),  ENCODER_CCW_CW(UG_SPDD, UG_SPDU)  },\n    [3] = { ENCODER_CCW_CW(UG_PREV, UG_NEXT),  ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) },\n};\n#endif

TIP

This should only be enabled at the keymap level.

Using encoder mapping pumps events through the normal QMK keycode processing pipeline, resulting in a keydown/keyup combination pushed through process_record_xxxxx(). To configure the amount of time between the encoder "keyup" and "keydown", you can add the following to your config.h:

c
#define ENCODER_MAP_KEY_DELAY 10

TIP

By default, the encoder map delay matches the value of TAP_CODE_DELAY.

Callbacks

TIP

Default Behaviour: all encoders installed will function as volume up (KC_VOLU) on clockwise rotation and volume down (KC_VOLD) on counter-clockwise rotation. If you do not wish to override this, no further configuration is necessary.

If you would like the alter the default behaviour, and are not using ENCODER_MAP_ENABLE = yes, the callback functions can be inserted into your <keyboard>.c:

c
bool encoder_update_kb(uint8_t index, bool clockwise) {\n    if (!encoder_update_user(index, clockwise)) {\n      return false; /* Don't process further events if user function exists and returns false */\n    }\n    if (index == 0) { /* First encoder */\n        if (clockwise) {\n            tap_code(KC_PGDN);\n        } else {\n            tap_code(KC_PGUP);\n        }\n    } else if (index == 1) { /* Second encoder */\n        if (clockwise) {\n            rgb_matrix_increase_hue();\n        } else {\n            rgb_matrix_decrease_hue();\n        }\n    }\n    return true;\n}

or keymap.c:

c
bool encoder_update_user(uint8_t index, bool clockwise) {\n    if (index == 0) { /* First encoder */\n        if (clockwise) {\n            tap_code(KC_PGDN);\n        } else {\n            tap_code(KC_PGUP);\n        }\n    } else if (index == 1) { /* Second encoder */\n        if (clockwise) {\n            rgb_matrix_increase_hue();\n        } else {\n            rgb_matrix_decrease_hue();\n        }\n    }\n    return false;\n}

WARNING

If you return true in the keymap level _user function, it will allow the keyboard/core level encoder code to run on top of your own. Returning false will override the keyboard level function, if setup correctly. This is generally the safest option to avoid confusion.

Hardware

The A an B lines of the encoders should be wired directly to the MCU, and the C/common lines should be wired to ground.

Multiple Encoders

Multiple encoders may share pins so long as each encoder has a distinct pair of pins when the following conditions are met:

For example you can support two encoders using only 3 pins like this

#define ENCODER_A_PINS { B1, B1 }\n#define ENCODER_B_PINS { B2, B3 }

You could even support three encoders using only three pins (one per encoder) however in this configuration, rotating two encoders which share pins simultaneously will often generate incorrect output. For example:

#define ENCODER_A_PINS { B1, B1, B2 }\n#define ENCODER_B_PINS { B2, B3, B3 }

Here rotating Encoder 0 B1 B2 and Encoder 1 B1 B3 could be interpreted as rotating Encoder 2 B2 B3 or B3 B2 depending on the timing. This may still be a useful configuration depending on your use case

', 48); diff --git a/assets/features_encoders.md.Bd7cXZB3.lean.js b/assets/features_encoders.md.Ccf2BS3A.lean.js similarity index 82% rename from assets/features_encoders.md.Bd7cXZB3.lean.js rename to assets/features_encoders.md.Ccf2BS3A.lean.js index 7846ab579da..906259dd407 100644 --- a/assets/features_encoders.md.Bd7cXZB3.lean.js +++ b/assets/features_encoders.md.Ccf2BS3A.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Encoders","description":"","frontmatter":{},"headers":[],"relativePath":"features/encoders.md","filePath":"features/encoders.md","lastUpdated":null}'); const _sfc_main = { name: "features/encoders.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 48); diff --git a/assets/features_grave_esc.md.BQRa2ZXb.js b/assets/features_grave_esc.md.ByGZcODM.js similarity index 96% rename from assets/features_grave_esc.md.BQRa2ZXb.js rename to assets/features_grave_esc.md.ByGZcODM.js index 7268eba18d7..f4a9183db0a 100644 --- a/assets/features_grave_esc.md.BQRa2ZXb.js +++ b/assets/features_grave_esc.md.ByGZcODM.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Grave Escape","description":"","frontmatter":{},"headers":[],"relativePath":"features/grave_esc.md","filePath":"features/grave_esc.md","lastUpdated":null}'); const _sfc_main = { name: "features/grave_esc.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Grave Escape

If you're using a 60% keyboard, or any other layout with no F-row, you will have noticed that there is no dedicated Escape key. Grave Escape is a feature that allows you to share the grave key (` and ~) with Escape.

Usage

Replace the KC_GRV key in your keymap (usually to the left of the 1 key) with QK_GESC. Most of the time this key will output KC_ESC when pressed. However, when Shift or GUI are held down it will output KC_GRV instead.

What Your OS Sees

If Mary presses QK_GESC on her keyboard, the OS will see an KC_ESC character. Now if Mary holds Shift down and presses QK_GESC it will output ~, or a shifted backtick. Now if she holds GUI/CMD/WIN, it will output a simple ` character.

Keycodes

KeyAliasesDescription
QK_GRAVE_ESCAPEQK_GESCEscape when pressed, ` when Shift or GUI are held

Caveats

On macOS, Command+` is by default mapped to "Move focus to next window" so it will not output a backtick. Additionally, Terminal always recognises this shortcut to cycle between windows, even if the shortcut is changed in the Keyboard preferences.

Configuration

There are several possible key combinations this will break, among them Control+Shift+Escape on Windows and Command+Option+Escape on macOS. To work around this, you can #define these options in your config.h:

DefineDescription
GRAVE_ESC_ALT_OVERRIDEAlways send Escape if Alt is pressed
GRAVE_ESC_CTRL_OVERRIDEAlways send Escape if Control is pressed
GRAVE_ESC_GUI_OVERRIDEAlways send Escape if GUI is pressed
GRAVE_ESC_SHIFT_OVERRIDEAlways send Escape if Shift is pressed
', 13); diff --git a/assets/features_grave_esc.md.BQRa2ZXb.lean.js b/assets/features_grave_esc.md.ByGZcODM.lean.js similarity index 83% rename from assets/features_grave_esc.md.BQRa2ZXb.lean.js rename to assets/features_grave_esc.md.ByGZcODM.lean.js index 0d02865ac53..b899983ea74 100644 --- a/assets/features_grave_esc.md.BQRa2ZXb.lean.js +++ b/assets/features_grave_esc.md.ByGZcODM.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Grave Escape","description":"","frontmatter":{},"headers":[],"relativePath":"features/grave_esc.md","filePath":"features/grave_esc.md","lastUpdated":null}'); const _sfc_main = { name: "features/grave_esc.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 13); diff --git a/assets/features_haptic_feedback.md.DuXv7T7P.js b/assets/features_haptic_feedback.md.0sqCrtd3.js similarity index 99% rename from assets/features_haptic_feedback.md.DuXv7T7P.js rename to assets/features_haptic_feedback.md.0sqCrtd3.js index f66d09c2afa..dc780faac34 100644 --- a/assets/features_haptic_feedback.md.DuXv7T7P.js +++ b/assets/features_haptic_feedback.md.0sqCrtd3.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Haptic Feedback","description":"","frontmatter":{},"headers":[],"relativePath":"features/haptic_feedback.md","filePath":"features/haptic_feedback.md","lastUpdated":null}'); const _sfc_main = { name: "features/haptic_feedback.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Haptic Feedback

Haptic feedback rules.mk options

The following options are currently available for haptic feedback in rules.mk:

make
HAPTIC_ENABLE = yes\n\nHAPTIC_DRIVER = drv2605l\n# or\nHAPTIC_DRIVER = solenoid

The following config.h settings are available for all types of haptic feedback:

SettingsDefaultDescription
HAPTIC_ENABLE_PINNot definedConfigures a pin to enable a boost converter for some haptic solution, often used with solenoid drivers.
HAPTIC_ENABLE_PIN_ACTIVE_LOWNot definedIf defined then the haptic enable pin is active-low.
HAPTIC_ENABLE_STATUS_LEDNot definedConfigures a pin to reflect the current enabled/disabled status of haptic feedback.
HAPTIC_ENABLE_STATUS_LED_ACTIVE_LOWNot definedIf defined then the haptic status led will be active-low.
HAPTIC_OFF_IN_LOW_POWER0If set to 1, haptic feedback is disabled before the device is configured, and while the device is suspended.

Known Supported Hardware

NameDescription
LV061228B-L65-Az-axis 2v LRA
Mini Motor Discsmall 2-5v ERM

Haptic Keycodes

Not all keycodes below will work depending on which haptic mechanism you have chosen.

KeyAliasesDescription
QK_HAPTIC_ONHF_ONTurn haptic feedback on
QK_HAPTIC_OFFHF_OFFTurn haptic feedback off
QK_HAPTIC_TOGGLEHF_TOGGToggle haptic feedback on/off
QK_HAPTIC_RESETHF_RSTReset haptic feedback config to default
QK_HAPTIC_FEEDBACK_TOGGLEHF_FDBKToggle feedback to occur on keypress, release or both
QK_HAPTIC_BUZZ_TOGGLEHF_BUZZToggle solenoid buzz on/off
QK_HAPTIC_MODE_NEXTHF_NEXTGo to next DRV2605L waveform
QK_HAPTIC_MODE_PREVIOUSHF_PREVGo to previous DRV2605L waveform
QK_HAPTIC_CONTINUOUS_TOGGLEHF_CONTToggle continuous haptic mode on/off
QK_HAPTIC_CONTINUOUS_UPHF_CONUIncrease DRV2605L continuous haptic strength
QK_HAPTIC_CONTINUOUS_DOWNHF_CONDDecrease DRV2605L continuous haptic strength
QK_HAPTIC_DWELL_UPHF_DWLUIncrease Solenoid dwell time
QK_HAPTIC_DWELL_DOWNHF_DWLDDecrease Solenoid dwell time

Solenoids

The solenoid code supports relay switches, and similar hardware, as well as solenoids.

For a regular solenoid, you will need a build a circuit to drive the solenoid through a mosfet as most MCU will not be able to provide the current needed to drive the coil in the solenoid.

Wiring diagram provided by Adafruit

For relay switches, the hardware may already contain all of that ciruitry, and just require VCC, GND and a data pin.

SettingsDefaultDescription
SOLENOID_PINNot definedConfigures the pin that the switch is connected to.
SOLENOID_PIN_ACTIVE_LOWNot definedIf defined then the switch trigger pin is active low.
SOLENOID_PINSNot definedConfigures an array of pins to be used for switch activation.
SOLENOID_PINS_ACTIVE_LOWNot definedAllows you to specify how each pin is pulled for activation.
SOLENOID_RANDOM_FIRENot definedWhen there are multiple solenoids, will select a random one to fire.
SOLENOID_DEFAULT_DWELL12 msConfigures the default dwell time for the switch.
SOLENOID_MIN_DWELL4 msSets the lower limit for the dwell.
SOLENOID_MAX_DWELL100 msSets the upper limit for the dwell.
SOLENOID_DWELL_STEP_SIZE1 msThe step size to use when HF_DWL* keycodes are sent.
SOLENOID_DEFAULT_BUZZ0 (disabled)On HF_RST buzz is set "on" if this is "1"
SOLENOID_BUZZ_ACTUATEDSOLENOID_MIN_DWELLActuated-time when the switch is in buzz mode.
SOLENOID_BUZZ_NONACTUATEDSOLENOID_MIN_DWELLNon-Actuated-time when the switch is in buzz mode.

Beware that some pins may be powered during bootloader (ie. A13 on the STM32F303 chip) and will result in the solenoid kept in the on state through the whole flashing process. This may overheat and damage the solenoid. If you find that the pin the solenoid is connected to is triggering the solenoid during bootloader/DFU, select another pin.

DRV2605L

DRV2605L is controlled over i2c protocol, and has to be connected to the SDA and SCL pins, these varies depending on the MCU in use.

Feedback motor setup

This driver supports 2 different feedback motors. Set the following in your config.h based on which motor you have selected.

ERM

Eccentric Rotating Mass vibration motors (ERM) is motor with a off-set weight attached so when drive signal is attached, the off-set weight spins and causes a sinusoidal wave that translate into vibrations.

c
#define DRV2605L_FB_ERM_LRA 0\n#define DRV2605L_FB_BRAKEFACTOR 3 /* For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 */\n#define DRV2605L_FB_LOOPGAIN 1 /* For  Low:0, Medium:1, High:2, Very High:3 */\n\n/* Please refer to your datasheet for the optimal setting for your specific motor. */\n#define DRV2605L_RATED_VOLTAGE 3\n#define DRV2605L_V_PEAK 5
LRA

Linear resonant actuators (LRA, also know as a linear vibrator) works different from a ERM. A LRA has a weight and magnet suspended by springs and a voice coil. When the drive signal is applied, the weight would be vibrate on a single axis (side to side or up and down). Since the weight is attached to a spring, there is a resonance effect at a specific frequency. This frequency is where the LRA will operate the most efficiently. Refer to the motor's datasheet for the recommended range for this frequency.

c
#define DRV2605L_FB_ERM_LRA 1\n#define DRV2605L_FB_BRAKEFACTOR 3 /* For 1x:0, 2x:1, 3x:2, 4x:3, 6x:4, 8x:5, 16x:6, Disable Braking:7 */\n#define DRV2605L_FB_LOOPGAIN 1 /* For  Low:0, Medium:1, High:2, Very High:3 */\n\n/* Please refer to your datasheet for the optimal setting for your specific motor. */\n#define DRV2605L_RATED_VOLTAGE 2\n#define DRV2605L_V_PEAK 2.8\n#define DRV2605L_V_RMS 2.0\n#define DRV2605L_V_PEAK 2.1\n#define DRV2605L_F_LRA 205 /* resonance freq */

DRV2605L waveform library

DRV2605L comes with preloaded library of various waveform sequences that can be called and played. If writing a macro, these waveforms can be played using drv2605l_pulse(*sequence name or number*) after adding #include "drv2605l.h".

List of waveform sequences from the datasheet:

seq#Sequence nameseq#Sequence nameseq#Sequence name
1strong_click43lg_dblclick_med_6085transition_rampup_med_smooth2
2strong_click_6044lg_dblsharp_tick86transition_rampup_short_smooth1
3strong_click_3045lg_dblsharp_tick_8087transition_rampup_short_smooth2
4sharp_click46lg_dblsharp_tick_6088transition_rampup_long_sharp1
5sharp_click_6047buzz89transition_rampup_long_sharp2
6sharp_click_3048buzz_8090transition_rampup_med_sharp1
7soft_bump49buzz_6091transition_rampup_med_sharp2
8soft_bump_6050buzz_4092transition_rampup_short_sharp1
9soft_bump_3051buzz_2093transition_rampup_short_sharp2
10dbl_click52pulsing_strong94transition_rampdown_long_smooth1_50
11dbl_click_6053pulsing_strong_8095transition_rampdown_long_smooth2_50
12trp_click54pulsing_medium96transition_rampdown_med_smooth1_50
13soft_fuzz55pulsing_medium_8097transition_rampdown_med_smooth2_50
14strong_buzz56pulsing_sharp98transition_rampdown_short_smooth1_50
15alert_750ms57pulsing_sharp_8099transition_rampdown_short_smooth2_50
16alert_1000ms58transition_click100transition_rampdown_long_sharp1_50
17strong_click159transition_click_80101transition_rampdown_long_sharp2_50
18strong_click2_8060transition_click_60102transition_rampdown_med_sharp1_50
19strong_click3_6061transition_click_40103transition_rampdown_med_sharp2_50
20strong_click4_3062transition_click_20104transition_rampdown_short_sharp1_50
21medium_click163transition_click_10105transition_rampdown_short_sharp2_50
22medium_click2_8064transition_hum106transition_rampup_long_smooth1_50
23medium_click3_6065transition_hum_80107transition_rampup_long_smooth2_50
24sharp_tick166transition_hum_60108transition_rampup_med_smooth1_50
25sharp_tick2_8067transition_hum_40109transition_rampup_med_smooth2_50
26sharp_tick3_6068transition_hum_20110transition_rampup_short_smooth1_50
27sh_dblclick_str69transition_hum_10111transition_rampup_short_smooth2_50
28sh_dblclick_str_8070transition_rampdown_long_smooth1112transition_rampup_long_sharp1_50
29sh_dblclick_str_6071transition_rampdown_long_smooth2113transition_rampup_long_sharp2_50
30sh_dblclick_str_3072transition_rampdown_med_smooth1114transition_rampup_med_sharp1_50
31sh_dblclick_med73transition_rampdown_med_smooth2115transition_rampup_med_sharp2_50
32sh_dblclick_med_8074transition_rampdown_short_smooth1116transition_rampup_short_sharp1_50
33sh_dblclick_med_6075transition_rampdown_short_smooth2117transition_rampup_short_sharp2_50
34sh_dblsharp_tick76transition_rampdown_long_sharp1118long_buzz_for_programmatic_stopping
35sh_dblsharp_tick_8077transition_rampdown_long_sharp2119smooth_hum1_50
36sh_dblsharp_tick_6078transition_rampdown_med_sharp1120smooth_hum2_40
37lg_dblclick_str79transition_rampdown_med_sharp2121smooth_hum3_30
38lg_dblclick_str_8080transition_rampdown_short_sharp1122smooth_hum4_20
39lg_dblclick_str_6081transition_rampdown_short_sharp2123smooth_hum5_10
40lg_dblclick_str_3082transition_rampup_long_smooth1
41lg_dblclick_med83transition_rampup_long_smooth2
42lg_dblclick_med_8084transition_rampup_med_smooth1

Optional DRV2605L defines

c
#define DRV2605L_GREETING *sequence name or number*

If haptic feedback is enabled, the keyboard will vibrate to a specific sequence during startup. That can be selected using the following define:

c
#define DRV2605L_DEFAULT_MODE *sequence name or number*

This will set what sequence HF_RST will set as the active mode. If not defined, mode will be set to 1 when HF_RST is pressed.

DRV2605L Continuous Haptic Mode

This mode sets continuous haptic feedback with the option to increase or decrease strength.

Haptic Key Exclusion

The Haptic Exclusion is implemented as __attribute__((weak)) bool get_haptic_enabled_key(uint16_t keycode, keyrecord_t *record) in haptic.c. This allows a re-definition at the required level with the specific requirement / exclusion.

NO_HAPTIC_MOD

With the entry of #define NO_HAPTIC_MOD in config.h, the following keys will not trigger feedback:

NO_HAPTIC_ALPHA

With the entry of #define NO_HAPTIC_ALPHA in config.h, none of the alpha keys (A ... Z) will trigger a feedback.

NO_HAPTIC_PUNCTUATION

With the entry of #define NO_HAPTIC_PUNCTUATION in config.h, none of the following keys will trigger a feedback: Enter, ESC, Backspace, Space, Minus, Equal, Left Bracket, Right Bracket, Backslash, Non-US Hash, Semicolon, Quote, Grave, Comma, Slash, Dot, Non-US Backslash.

NO_HAPTIC_LOCKKEYS

With the entry of #define NO_HAPTIC_LOCKKEYS in config.h, none of the following keys will trigger a feedback: Caps Lock, Scroll Lock, Num Lock.

NO_HAPTIC_NAV

With the entry of #define NO_HAPTIC_NAV in config.h, none of the following keys will trigger a feedback: Print Screen, Pause, Insert, Delete, Page Down, Page Up, Left Arrow, Up Arrow, Right Arrow, Down Arrow, End, Home.

NO_HAPTIC_NUMERIC

With the entry of #define NO_HAPTIC_NUMERIC in config.h, none of the following keys between 0 and 9 (KC_1 ... KC_0) will trigger a feedback.

', 55); diff --git a/assets/features_haptic_feedback.md.DuXv7T7P.lean.js b/assets/features_haptic_feedback.md.0sqCrtd3.lean.js similarity index 83% rename from assets/features_haptic_feedback.md.DuXv7T7P.lean.js rename to assets/features_haptic_feedback.md.0sqCrtd3.lean.js index b381122df95..30df8b9cd5f 100644 --- a/assets/features_haptic_feedback.md.DuXv7T7P.lean.js +++ b/assets/features_haptic_feedback.md.0sqCrtd3.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Haptic Feedback","description":"","frontmatter":{},"headers":[],"relativePath":"features/haptic_feedback.md","filePath":"features/haptic_feedback.md","lastUpdated":null}'); const _sfc_main = { name: "features/haptic_feedback.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 55); diff --git a/assets/features_hd44780.md.JqbI6dcV.js b/assets/features_hd44780.md.wMye5bL5.js similarity index 99% rename from assets/features_hd44780.md.JqbI6dcV.js rename to assets/features_hd44780.md.wMye5bL5.js index 366af754a82..8125aa983f5 100644 --- a/assets/features_hd44780.md.JqbI6dcV.js +++ b/assets/features_hd44780.md.wMye5bL5.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"HD44780 LCD Driver","description":"","frontmatter":{},"headers":[],"relativePath":"features/hd44780.md","filePath":"features/hd44780.md","lastUpdated":null}'); const _sfc_main = { name: "features/hd44780.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

HD44780 LCD Driver

Supported Hardware

LCD modules using HD44780U IC or equivalent, communicating in 4-bit mode.

ModuleSizeNotes
1602A16x2, 5x8 dots
2004A20x4, 5x8 dotsUntested, not currently supported

To run these modules at 3.3V, an additional MAX660 voltage converter IC must be soldered on, along with two 10µF capacitors. See this page for more details.

Usage

Add the following to your rules.mk:

make
HD44780_ENABLE = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
HD44780_DATA_PINSNot defined(Required) An array of four GPIO pins connected to the display's D4-D7 pins, eg. { B1, B3, B2, B6 }
HD44780_RS_PINNot defined(Required) The GPIO connected to the display's RS pin
HD44780_RW_PINNot defined(Required) The GPIO connected to the display's RW pin
HD44780_E_PINNot defined(Required) The GPIO connected to the display's E pin
HD44780_DISPLAY_COLS16The number of visible characters on a single line of the display
HD44780_DISPLAY_LINES2The number of visible lines on the display
HD44780_WRAP_LINESNot definedIf defined, input characters will wrap to the next line

Examples

Hello World

Add the following to your keymap.c:

c
void keyboard_post_init_user(void) {\n    hd44780_init(true, true); // Show blinking cursor\n    hd44780_puts_P(PSTR("Hello, world!\\n"));\n}

Custom Character Definition

Up to eight custom characters can be defined. This data is stored in the Character Generator RAM (CGRAM), and is not persistent across power cycles.

This example defines the QMK Psi as the first custom character. The first 16 positions in the character set are reserved for the eight custom characters duplicated.

Byte |      16 8 4 2 1\n   1 | x x x ■ □ ■ □ ■\n   2 | x x x ■ □ ■ □ ■\n   3 | x x x ■ □ ■ □ ■\n   4 | x x x □ ■ ■ ■ □\n   5 | x x x □ □ ■ □ □\n   6 | x x x □ □ ■ □ □\n   7 | x x x □ □ ■ □ □\n   8 | x x x □ □ □ □ □
c
const uint8_t PROGMEM psi[8] = { 0x15, 0x15, 0x15, 0x0E, 0x04, 0x04, 0x04, 0x00 };\n\nvoid keyboard_post_init_user(void) {\n    hd44780_init(false, false);\n    hd44780_define_char_P(0, psi);\n    // Cursor is incremented while defining characters so must be reset\n    hd44780_home();\n    // 0x08 to avoid null terminator\n    hd44780_puts_P(PSTR("\\x08 QMK Firmware"));\n}

API

void hd44780_init(bool cursor, bool blink)

Initialize the display.

This function should be called only once, before any of the other functions can be called.

Arguments


void hd44780_clear(void)

Clear the display.

This function is called on init.


void hd44780_home(void)

Move the cursor to the home position.

This function is called on init.


void hd44780_on(bool cursor, bool blink)

Turn the display on, and/or set the cursor properties.

This function is called on init.

Arguments


void hd44780_off(void)

Turn the display off.


void hd44780_set_cursor(uint8_t col, uint8_t line)

Move the cursor to the specified position on the display.

Arguments


void hd44780_putc(char c)

Print a character to the display. The newline character \\n will move the cursor to the start of the next line.

The exact character shown may depend on the ROM code of your particular display - refer to the datasheet for the full character set.

Arguments


void hd44780_puts(const char *s)

Print a string of characters to the display.

Arguments


void hd44780_puts_P(const char *s)

Print a string of characters from PROGMEM to the display.

On ARM devices, this function is simply an alias of hd44780_puts().

Arguments


void hd44780_define_char(uint8_t index, uint8_t *data)

Define a custom character.

Arguments


void hd44780_define_char_P(uint8_t index, const uint8_t *data)

Define a custom character from PROGMEM.

On ARM devices, this function is simply an alias of hd44780_define_char().

Arguments


bool hd44780_busy(void)

Indicates whether the display is currently processing, and cannot accept instructions.

Return Value

true if the display is busy.


void hd44780_write(uint8_t data, bool isData)

Write a byte to the display.

Arguments


uint8_t hd44780_read(bool isData)

Read a byte from the display.

Arguments

Return Value

If isData is true, the returned byte will be the character at the current DDRAM address. Otherwise, it will be the current DDRAM address and the busy flag.


void hd44780_command(uint8_t command)

Send a command to the display. Refer to the datasheet and hd44780.h for the valid commands and defines.

This function waits for the display to clear the busy flag before sending the command.

Arguments


void hd44780_data(uint8_t data)

Send a byte of data to the display.

This function waits for the display to clear the busy flag before sending the data.

Arguments


void hd44780_set_cgram_address(uint8_t address)

Set the CGRAM address.

This function is used when defining custom characters.

Arguments


void hd44780_set_ddram_address(uint8_t address)

Set the DDRAM address.

This function is used when printing characters to the display, and setting the cursor.

Arguments

', 117); diff --git a/assets/features_hd44780.md.JqbI6dcV.lean.js b/assets/features_hd44780.md.wMye5bL5.lean.js similarity index 83% rename from assets/features_hd44780.md.JqbI6dcV.lean.js rename to assets/features_hd44780.md.wMye5bL5.lean.js index 1f2dc1147f5..0c06fbc758d 100644 --- a/assets/features_hd44780.md.JqbI6dcV.lean.js +++ b/assets/features_hd44780.md.wMye5bL5.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"HD44780 LCD Driver","description":"","frontmatter":{},"headers":[],"relativePath":"features/hd44780.md","filePath":"features/hd44780.md","lastUpdated":null}'); const _sfc_main = { name: "features/hd44780.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 117); diff --git a/assets/features_joystick.md.DG_RF0SA.js b/assets/features_joystick.md.CBVsW76F.js similarity index 99% rename from assets/features_joystick.md.DG_RF0SA.js rename to assets/features_joystick.md.CBVsW76F.js index 1acf55a0fcd..167227dd057 100644 --- a/assets/features_joystick.md.DG_RF0SA.js +++ b/assets/features_joystick.md.CBVsW76F.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Joystick","description":"","frontmatter":{},"headers":[],"relativePath":"features/joystick.md","filePath":"features/joystick.md","lastUpdated":null}'); const _sfc_main = { name: "features/joystick.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Joystick

This feature provides game controller input as a joystick device supporting up to 6 axes, 32 buttons and a hat switch. Axes can be read either from an ADC-capable input pin, or can be virtual, so that its value is provided by your code.

An analog device such as a potentiometer found on an analog joystick's axes is based on a voltage divider, where adjusting the movable wiper controls the output voltage which can then be read by the microcontroller's ADC.

Usage

Add the following to your rules.mk:

make
JOYSTICK_ENABLE = yes

By default the joystick driver is analog, but you can change this with:

make
JOYSTICK_DRIVER = digital

When using analog with ARM, you must use 3.3v with your Joystick. Although ARM boards such as the Helios have 5v pin output, the ADC driver does not support it.

Configuration

By default, two axes and eight buttons are defined, with a reported resolution of 8 bits (-127 to +127). This can be changed in your config.h:

c
// Min 0, max 32\n#define JOYSTICK_BUTTON_COUNT 16\n// Min 0, max 6: X, Y, Z, Rx, Ry, Rz\n#define JOYSTICK_AXIS_COUNT 3\n// Min 8, max 16\n#define JOYSTICK_AXIS_RESOLUTION 10

TIP

You must define at least one button or axis. Also note that the maximum ADC resolution of the supported AVR MCUs is 10-bit, and 12-bit for most STM32 MCUs.

Hat Switch

To enable the 8-way hat switch, add the following to your config.h:

c
#define JOYSTICK_HAS_HAT

The position can be set by calling joystick_set_hat(value). The range of values moves clockwise from the top (ie. north), with the default "center" position represented by a value of -1:

         0\n 7       N       1\n   NW .--'--. NE\n     /       \\\n6 W |   -1    | E 2\n     \\       /\n   SW '--.--' SE\n 5       S       3\n         4

Alternatively you can use these predefined names:

DefineValueAngle
JOYSTICK_HAT_CENTER-1
JOYSTICK_HAT_NORTH0
JOYSTICK_HAT_NORTHEAST145°
JOYSTICK_HAT_EAST290°
JOYSTICK_HAT_SOUTHEAST3135°
JOYSTICK_HAT_SOUTH4180°
JOYSTICK_HAT_SOUTHWEST5225°
JOYSTICK_HAT_WEST6270°
JOYSTICK_HAT_NORTHWEST7315°

Axes

When defining axes for your joystick, you must provide a definition array typically in your keymap.c.

For instance, the below example configures two axes. The X axis is read from the A4 pin. With the default axis resolution of 8 bits, the range of values between 900 and 575 are scaled to -127 through 0, and values 575 to 285 are scaled to 0 through 127. The Y axis is configured as a virtual axis, and its value is not read from any pin. Instead, the user must update the axis value programmatically.

c
joystick_config_t joystick_axes[JOYSTICK_AXIS_COUNT] = {\n    JOYSTICK_AXIS_IN(A4, 900, 575, 285),\n    JOYSTICK_AXIS_VIRTUAL\n};

Axes can be configured using one of the following macros:

The low and high values can be swapped to effectively invert the axis.

Virtual Axes

The following example adjusts two virtual axes (X and Y) based on keypad presses, with KC_P0 as a precision modifier:

c
joystick_config_t joystick_axes[JOYSTICK_AXIS_COUNT] = {\n    JOYSTICK_AXIS_VIRTUAL, // x\n    JOYSTICK_AXIS_VIRTUAL  // y\n};\n\nstatic bool precision = false;\nstatic uint16_t precision_mod = 64;\nstatic uint16_t axis_val = 127;\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    int16_t precision_val = axis_val;\n    if (precision) {\n        precision_val -= precision_mod;\n    }\n\n    switch (keycode) {\n        case KC_P8:\n            joystick_set_axis(1, record->event.pressed ? -precision_val : 0);\n            return false;\n        case KC_P2:\n            joystick_set_axis(1, record->event.pressed ? precision_val : 0);\n            return false;\n        case KC_P4:\n            joystick_set_axis(0, record->event.pressed ? -precision_val : 0);\n            return false;\n        case KC_P6:\n            joystick_set_axis(0, record->event.pressed ? precision_val : 0);\n            return false;\n        case KC_P0:\n            precision = record->event.pressed;\n            return false;\n    }\n    return true;\n}

Keycodes

KeyAliasesDescription
QK_JOYSTICK_BUTTON_0JS_0Button 0
QK_JOYSTICK_BUTTON_1JS_1Button 1
QK_JOYSTICK_BUTTON_2JS_2Button 2
QK_JOYSTICK_BUTTON_3JS_3Button 3
QK_JOYSTICK_BUTTON_4JS_4Button 4
QK_JOYSTICK_BUTTON_5JS_5Button 5
QK_JOYSTICK_BUTTON_6JS_6Button 6
QK_JOYSTICK_BUTTON_7JS_7Button 7
QK_JOYSTICK_BUTTON_8JS_8Button 8
QK_JOYSTICK_BUTTON_9JS_9Button 9
QK_JOYSTICK_BUTTON_10JS_10Button 10
QK_JOYSTICK_BUTTON_11JS_11Button 11
QK_JOYSTICK_BUTTON_12JS_12Button 12
QK_JOYSTICK_BUTTON_13JS_13Button 13
QK_JOYSTICK_BUTTON_14JS_14Button 14
QK_JOYSTICK_BUTTON_15JS_15Button 15
QK_JOYSTICK_BUTTON_16JS_16Button 16
QK_JOYSTICK_BUTTON_17JS_17Button 17
QK_JOYSTICK_BUTTON_18JS_18Button 18
QK_JOYSTICK_BUTTON_19JS_19Button 19
QK_JOYSTICK_BUTTON_20JS_20Button 20
QK_JOYSTICK_BUTTON_21JS_21Button 21
QK_JOYSTICK_BUTTON_22JS_22Button 22
QK_JOYSTICK_BUTTON_23JS_23Button 23
QK_JOYSTICK_BUTTON_24JS_24Button 24
QK_JOYSTICK_BUTTON_25JS_25Button 25
QK_JOYSTICK_BUTTON_26JS_26Button 26
QK_JOYSTICK_BUTTON_27JS_27Button 27
QK_JOYSTICK_BUTTON_28JS_28Button 28
QK_JOYSTICK_BUTTON_29JS_29Button 29
QK_JOYSTICK_BUTTON_30JS_30Button 30
QK_JOYSTICK_BUTTON_31JS_31Button 31

API

struct joystick_t

Contains the state of the joystick.

Members


struct joystick_config_t

Describes a single axis.

Members


void joystick_flush(void)

Send the joystick report to the host, if it has been marked as dirty.


void register_joystick_button(uint8_t button)

Set the state of a button, and flush the report.

Arguments


void unregister_joystick_button(uint8_t button)

Reset the state of a button, and flush the report.

Arguments


int16_t joystick_read_axis(uint8_t axis)

Sample and process the analog value of the given axis.

Arguments

Return Value

A signed 16-bit integer, where 0 is the resting or mid point.

void joystick_set_axis(uint8_t axis, int16_t value)

Set the value of the given axis.

Arguments


void joystick_set_hat(int8_t value)

Set the position of the hat switch.

Arguments

', 71); diff --git a/assets/features_joystick.md.DG_RF0SA.lean.js b/assets/features_joystick.md.CBVsW76F.lean.js similarity index 82% rename from assets/features_joystick.md.DG_RF0SA.lean.js rename to assets/features_joystick.md.CBVsW76F.lean.js index 1c61c62de54..7fef28c22af 100644 --- a/assets/features_joystick.md.DG_RF0SA.lean.js +++ b/assets/features_joystick.md.CBVsW76F.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Joystick","description":"","frontmatter":{},"headers":[],"relativePath":"features/joystick.md","filePath":"features/joystick.md","lastUpdated":null}'); const _sfc_main = { name: "features/joystick.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 71); diff --git a/assets/features_key_lock.md.1Aqyr8wY.js b/assets/features_key_lock.md.CPB03zm8.js similarity index 95% rename from assets/features_key_lock.md.1Aqyr8wY.js rename to assets/features_key_lock.md.CPB03zm8.js index f5d1318e60d..f606e1d159e 100644 --- a/assets/features_key_lock.md.1Aqyr8wY.js +++ b/assets/features_key_lock.md.CPB03zm8.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Key Lock","description":"","frontmatter":{},"headers":[],"relativePath":"features/key_lock.md","filePath":"features/key_lock.md","lastUpdated":null}'); const _sfc_main = { name: "features/key_lock.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Key Lock

Sometimes you may find yourself needing to hold down a specific key for a long period of time. Key Lock holds down the next key you press for you. Press it again, and it will be released.

Let's say you need to type in ALL CAPS for a few sentences. Hit QK_LOCK, and then Shift. Now, Shift will be considered held until you tap it again. You can think of Key Lock as Caps Lock, but supercharged.

Usage

First, enable Key Lock by setting KEY_LOCK_ENABLE = yes in your rules.mk. Then pick a key in your keymap and assign it the keycode QK_LOCK.

Keycodes

KeycodeDescription
QK_LOCKHold down the next key pressed, until the key is pressed again

Caveats

Key Lock is only able to hold standard action keys and One Shot modifier keys (for example, if you have your Shift defined as OSM(MOD_LSFT)). This does not include any of the QMK special functions (except One Shot modifiers), or shifted versions of keys such as KC_LPRN. If it's in the Basic Keycodes list, it can be held.

Switching layers will not cancel the Key Lock. The Key Lock can be cancelled by calling the cancel_key_lock() function.

', 10); diff --git a/assets/features_key_lock.md.1Aqyr8wY.lean.js b/assets/features_key_lock.md.CPB03zm8.lean.js similarity index 82% rename from assets/features_key_lock.md.1Aqyr8wY.lean.js rename to assets/features_key_lock.md.CPB03zm8.lean.js index fd3086c25fc..e31e4907828 100644 --- a/assets/features_key_lock.md.1Aqyr8wY.lean.js +++ b/assets/features_key_lock.md.CPB03zm8.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Key Lock","description":"","frontmatter":{},"headers":[],"relativePath":"features/key_lock.md","filePath":"features/key_lock.md","lastUpdated":null}'); const _sfc_main = { name: "features/key_lock.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 10); diff --git a/assets/features_key_overrides.md.DN2Su4eb.js b/assets/features_key_overrides.md.DHmulGw8.js similarity index 99% rename from assets/features_key_overrides.md.DN2Su4eb.js rename to assets/features_key_overrides.md.DHmulGw8.js index 18bb31c9dc8..6a4fb13016d 100644 --- a/assets/features_key_overrides.md.DN2Su4eb.js +++ b/assets/features_key_overrides.md.DHmulGw8.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Key Overrides","description":"","frontmatter":{},"headers":[],"relativePath":"features/key_overrides.md","filePath":"features/key_overrides.md","lastUpdated":null}'); const _sfc_main = { name: "features/key_overrides.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Key Overrides

Key overrides allow you to override modifier-key combinations to send a different modifier-key combination or perform completely custom actions. Don't want shift + 1 to type ! on your computer? Use a key override to make your keyboard type something different when you press shift + 1. The general behavior is like this: If modifiers w + key x are pressed, replace these keys with modifiers y + key z in the keyboard report.

You can use key overrides in a similar way to momentary layer/fn keys to activate custom keycodes/shortcuts, with a number of benefits: You completely keep the original use of the modifier keys, while being able to save space by removing fn keys from your keyboard. You can also easily configure combinations of modifiers to trigger different actions than individual modifiers, and much more. The possibilities are quite vast and this documentation contains a few examples for inspiration throughout.

A few more examples to get started: You could use key overrides to...

Setup

To enable this feature, you need to add KEY_OVERRIDE_ENABLE = yes to your rules.mk.

Then, in your keymap.c file, you'll need to define the key_overrides config. See below for more details.

Creating Key Overrides

The key_override_t struct has many options that allow you to precisely tune your overrides. The full reference is shown below. Instead of manually creating a key_override_t value, it is recommended to use these dedicated initializers:

ko_make_basic(modifiers, key, replacement)

Returns a key_override_t, which sends replacement (can be a key-modifier combination), when key and modifiers are all pressed down. This override still activates if any additional modifiers not specified in modifiers are also pressed down. See ko_make_with_layers_and_negmods to customize this behavior.

ko_make_with_layers(modifiers, key, replacement, layers)

Additionally takes a bitmask layers that defines on which layers the override is used.

ko_make_with_layers_and_negmods(modifiers, key, replacement, layers, negative_mods)

Additionally takes a bitmask negative_mods that defines which modifiers may not be pressed for this override to activate.

ko_make_with_layers_negmods_and_options(modifiers, key, replacement, layers, negative_mods, options)

Additionally takes a bitmask options that specifies additional options. See ko_option_t for available options.

For more customization possibilities, you may directly create a key_override_t, which allows you to customize even more behavior. Read further below for details and examples.

Simple Example

This shows how the mentioned example of sending delete when shift + backspace are pressed is realized:

c
const key_override_t delete_key_override = ko_make_basic(MOD_MASK_SHIFT, KC_BSPC, KC_DEL);\n\n// This globally defines all key overrides to be used\nconst key_override_t *key_overrides[] = {\n	&delete_key_override\n};

Intermediate Difficulty Examples

Media Controls & Screen Brightness

In this example a single key is configured to control media, volume and screen brightness by using key overrides.

The following key overrides will be configured:

c
const key_override_t next_track_override = \n	ko_make_with_layers_negmods_and_options(\n   		MOD_MASK_CTRL,       // Trigger modifiers: ctrl\n    	KC_MPLY,             // Trigger key: play/pause\n    	KC_MNXT,             // Replacement key\n    	~0,                  // Activate on all layers\n    	MOD_MASK_SA,         // Do not activate when shift or alt are pressed\n    	ko_option_no_reregister_trigger); // Specifies that the play key is not registered again after lifting ctrl\n    \nconst key_override_t prev_track_override = ko_make_with_layers_negmods_and_options(MOD_MASK_CS, KC_MPLY,\n											KC_MPRV, ~0, MOD_MASK_ALT, ko_option_no_reregister_trigger);\n\nconst key_override_t vol_up_override = ko_make_with_layers_negmods_and_options(MOD_MASK_ALT, KC_MPLY,\n											KC_VOLU, ~0, MOD_MASK_CS, ko_option_no_reregister_trigger);\n\nconst key_override_t vol_down_override = ko_make_with_layers_negmods_and_options(MOD_MASK_SA, KC_MPLY,\n											KC_VOLD, ~0, MOD_MASK_CTRL, ko_option_no_reregister_trigger);\n\nconst key_override_t brightness_up_override = ko_make_with_layers_negmods_and_options(MOD_MASK_CA, KC_MPLY,\n											KC_BRIU, ~0, MOD_MASK_SHIFT, ko_option_no_reregister_trigger);\n\nconst key_override_t brightness_down_override = ko_make_basic(MOD_MASK_CSA, KC_MPLY, KC_BRID);\n\n// This globally defines all key overrides to be used\nconst key_override_t *key_overrides[] = {\n	&next_track_override,\n	&prev_track_override,\n	&vol_up_override,\n	&vol_down_override,\n	&brightness_up_override,\n	&brightness_down_override\n};

Flexible macOS-friendly Grave Escape

The Grave Escape feature is limited in its configurability and has bugs when used on macOS. Key overrides can be used to achieve a similar functionality as Grave Escape, but with more customization and without bugs on macOS.

c
// Shift + esc = ~\nconst key_override_t tilde_esc_override = ko_make_basic(MOD_MASK_SHIFT, KC_ESC, S(KC_GRV));\n\n// GUI + esc = `\nconst key_override_t grave_esc_override = ko_make_basic(MOD_MASK_GUI, KC_ESC, KC_GRV);\n\nconst key_override_t *key_overrides[] = {\n	&tilde_esc_override,\n	&grave_esc_override\n};

In addition to not encountering unexpected bugs on macOS, you can also change the behavior as you wish. Instead setting GUI + ESC = ` you may change it to an arbitrary other modifier, for example Ctrl + ESC = `.

Advanced Examples

Modifiers as Layer Keys

Do you really need a dedicated key to toggle your fn layer? With key overrides, perhaps not. This example shows how you can configure to use rGUI + rAlt (right GUI and right alt) to access a momentary layer like an fn layer. With this you completely eliminate the need to use a dedicated layer key. Of course the choice of modifier keys can be changed as needed, rGUI + rAlt is just an example here.

c
// This is called when the override activates and deactivates. Enable the fn layer on activation and disable on deactivation\nbool momentary_layer(bool key_down, void *layer) {\n    if (key_down) {\n        layer_on((uint8_t)(uintptr_t)layer);\n    } else {\n        layer_off((uint8_t)(uintptr_t)layer);\n    }\n\n    return false;\n}\n\nconst key_override_t fn_override = {.trigger_mods          = MOD_BIT(KC_RGUI) | MOD_BIT(KC_RALT),                       //\n                                   .layers                 = ~(1 << LAYER_FN),                                          //\n                                   .suppressed_mods        = MOD_BIT(KC_RGUI) | MOD_BIT(KC_RALT),                       //\n                                   .options                = ko_option_no_unregister_on_other_key_down,                 //\n                                   .negative_mod_mask      = (uint8_t) ~(MOD_BIT(KC_RGUI) | MOD_BIT(KC_RALT)),          //\n                                   .custom_action          = momentary_layer,                                           //\n                                   .context                = (void *)LAYER_FN,                                          //\n                                   .trigger                = KC_NO,                                                     //\n                                   .replacement            = KC_NO,                                                     //\n                                   .enabled                = NULL};

Keycodes

KeycodeAliasesDescription
QK_KEY_OVERRIDE_TOGGLEKO_TOGGToggle key overrides
QK_KEY_OVERRIDE_ONKO_ONTurn on key overrides
QK_KEY_OVERRIDE_OFFKO_OFFTurn off key overrides

Reference for key_override_t

Advanced users may need more customization than what is offered by the simple ko_make initializers. For this, directly create a key_override_t value and set all members. Below is a reference for all members of key_override_t.

MemberDescription
uint16_t triggerThe non-modifier keycode that triggers the override. This keycode, and the necessary modifiers (trigger_mods) must be pressed to activate this override. Set this to the keycode of the key that should activate the override. Set to KC_NO to require only the necessary modifiers to be pressed and no non-modifier.
uint8_t trigger_modsWhich mods need to be down for activation. If both sides of a modifier are set (e.g. left ctrl and right ctrl) then only one is required to be pressed (e.g. left ctrl suffices). Use the MOD_MASK_XXX and MOD_BIT() macros for this.
layer_state_t layersThis is a BITMASK (!), defining which layers this override applies to. To use this override on layer i set the ith bit (1 << i).
uint8_t negative_mod_maskWhich modifiers cannot be down. It must hold that (active_modifiers & negative_mod_mask) == 0, otherwise the key override will not be activated. An active override will be deactivated once this is no longer true.
uint8_t suppressed_modsModifiers to 'suppress' while the override is active. To suppress a modifier means that even though the modifier key is held down, the host OS sees the modifier as not pressed. Can be used to suppress the trigger modifiers, as a trivial example.
uint16_t replacementThe complex keycode to send as replacement when this override is triggered. This can be a simple keycode, a key-modifier combination (e.g. C(KC_A)), or KC_NO (to register no replacement keycode). Use in combination with suppressed_mods to get the correct modifiers to be sent.
ko_option_t optionsOptions controlling the behavior of the override, such as what actions are allowed to activate the override.
bool (*custom_action)(bool activated, void *context)If not NULL, this function will be called right before the replacement key is registered, along with the provided context and a flag indicating whether the override was activated or deactivated. This function allows you to run some custom actions for specific key overrides. If you return false, the replacement key is not registered/unregistered as it would normally. Return true to register and unregister the override normally.
void *contextA context that will be passed to the custom action function.
bool *enabledIf this points to false this override will not be used. Set to NULL to always have this override enabled.

Reference for ko_option_t

Bitfield with various options controlling the behavior of a key override.

ValueDescription
ko_option_activation_trigger_downAllow activating when the trigger key is pressed down.
ko_option_activation_required_mod_downAllow activating when a necessary modifier is pressed down.
ko_option_activation_negative_mod_upAllow activating when a negative modifier is released.
ko_option_one_modIf set, any of the modifiers in trigger_mods will be enough to activate the override (logical OR of modifiers). If not set, all the modifiers in trigger_mods have to be pressed (logical AND of modifiers).
ko_option_no_unregister_on_other_key_downIf set, the override will not deactivate when another key is pressed down. Use only if you really know you need this.
ko_option_no_reregister_triggerIf set, the trigger key will never be registered again after the override is deactivated.
ko_options_defaultThe default options used by the ko_make_xxx functions

For Advanced Users: Inner Workings

This section explains how a key override works in detail, explaining where each member of key_override_t comes into play. Understanding this is essential to be able to take full advantage of all the options offered by key overrides.

Activation

When the necessary keys are pressed (trigger_mods + trigger), the override is 'activated' and the replacement key is registered in the keyboard report (replacement), while the trigger key is removed from the keyboard report. The trigger modifiers may also be removed from the keyboard report upon activation of an override (suppressed_mods). The override will not activate if any of the negative_modifiers are pressed.

Overrides can activate in three different cases:

  1. The trigger key is pressed down and necessary modifiers are already down.
  2. A necessary modifier is pressed down, while the trigger key and other necessary modifiers are already down.
  3. A negative modifier is released, while all necessary modifiers and the trigger key are already down.

Use the option member to customize which of these events are allowed to activate your overrides (default: all three).

In any case, a key override can only activate if the trigger key is the last non-modifier key that was pressed down. This emulates the behavior of how standard OSes (macOS, Windows, Linux) handle normal key input (to understand: Hold down a, then also hold down b, then hold down shift; B will be typed but not A).

Deactivation

An override is 'deactivated' when one of the trigger keys (trigger_mods, trigger) is lifted, another non-modifier key is pressed down, or one of the negative_modifiers is pressed down. When an override deactivates, the replacement key is removed from the keyboard report, while the suppressed_mods that are still held down are re-added to the keyboard report. By default, the trigger key is re-added to the keyboard report if it is still held down and no other non-modifier key has been pressed since. This again emulates the behavior of how standard OSes handle normal key input (To understand: hold down a, then also hold down b, then also shift, then release b; A will not be typed even though you are holding the a and shift keys). Use the option field ko_option_no_reregister_trigger to prevent re-registering the trigger key in all cases.

Key Repeat Delay

A third way in which standard OS-handling of modifier-key input is emulated in key overrides is with a 'key repeat delay'. To explain what this is, let's look at how normal keyboard input is handled by mainstream OSes again: If you hold down a, followed by shift, you will see the letter a is first typed, then for a short moment nothing is typed and then repeating As are typed. Take note that, although shift is pressed down just after a is pressed, it takes a moment until A is typed. This is caused by the aforementioned key repeat delay, and it is a feature that prevents unwanted repeated characters from being typed.

This applies equally to releasing a modifier: When you hold shift, then press a, the letter A is typed. Now if you release shift first, followed by a shortly after, you will not see the letter a being typed, even though for a short moment of time you were just holding down the key a. This is because no modified characters are typed until the key repeat delay has passed.

This exact behavior is implemented in key overrides as well: If a key override for shift + a = b exists, and a is pressed and held, followed by shift, you will not immediately see the letter b being typed. Instead, this event is deferred for a short moment, until the key repeat delay has passed, measured from the moment when the trigger key (a) was pressed down.

The duration of the key repeat delay is controlled with the KEY_OVERRIDE_REPEAT_DELAY macro. Define this value in your config.h file to change it. It is 500ms by default.

Difference to Combos

Note that key overrides are very different from combos. Combos require that you press down several keys almost at the same time and can work with any combination of non-modifier keys. Key overrides work like keyboard shortcuts (e.g. ctrl + z): They take combinations of multiple modifiers and one non-modifier key to then perform some custom action. Key overrides are implemented with much care to behave just like normal keyboard shortcuts would in regards to the order of pressed keys, timing, and interaction with other pressed keys. There are a number of optional settings that can be used to really fine-tune the behavior of each key override as well. Using key overrides also does not delay key input for regular key presses, which inherently happens in combos and may be undesirable.

Solution to the problem of flashing modifiers

If the programs you use bind an action to taps of modifier keys (e.g. tapping left GUI to bring up the applications menu or tapping left Alt to focus the menu bar), you may find that using key overrides with suppressed mods falsely triggers those actions. To counteract this, you can define a DUMMY_MOD_NEUTRALIZER_KEYCODE in config.h that will get sent in between the register and unregister events of a suppressed modifier. That way, the programs on your computer will no longer interpret the mod suppression induced by key overrides as a lone tap of a modifier key and will thus not falsely trigger the undesired action.

Naturally, for this technique to be effective, you must choose a DUMMY_MOD_NEUTRALIZER_KEYCODE for which no keyboard shortcuts are bound to. Recommended values are: KC_RIGHT_CTRL or KC_F18. Please note that DUMMY_MOD_NEUTRALIZER_KEYCODE must be a basic, unmodified, HID keycode so values like KC_NO, KC_TRANSPARENT or KC_PIPE aka S(KC_BACKSLASH) are not permitted.

By default, only left Alt and left GUI are neutralized. If you want to change the list of applicable modifier masks, use the following in your config.h:

c
#define MODS_TO_NEUTRALIZE { <mod_mask_1>, <mod_mask_2>, ... }

Examples:

c
#define DUMMY_MOD_NEUTRALIZER_KEYCODE KC_RIGHT_CTRL\n\n// Neutralize left alt and left GUI (Default value)\n#define MODS_TO_NEUTRALIZE { MOD_BIT(KC_LEFT_ALT), MOD_BIT(KC_LEFT_GUI) }\n\n// Neutralize left alt, left GUI, right GUI and left Control+Shift\n#define MODS_TO_NEUTRALIZE { MOD_BIT(KC_LEFT_ALT), MOD_BIT(KC_LEFT_GUI), MOD_BIT(KC_RIGHT_GUI), MOD_BIT(KC_LEFT_CTRL)|MOD_BIT(KC_LEFT_SHIFT) }

WARNING

Do not use MOD_xxx constants like MOD_LSFT or MOD_RALT, since they're 5-bit packed bit-arrays while MODS_TO_NEUTRALIZE expects a list of 8-bit packed bit-arrays. Use MOD_BIT(<kc>) or MOD_MASK_xxx instead.

', 70); diff --git a/assets/features_key_overrides.md.DN2Su4eb.lean.js b/assets/features_key_overrides.md.DHmulGw8.lean.js similarity index 83% rename from assets/features_key_overrides.md.DN2Su4eb.lean.js rename to assets/features_key_overrides.md.DHmulGw8.lean.js index ed11733fa0f..e320bb1447c 100644 --- a/assets/features_key_overrides.md.DN2Su4eb.lean.js +++ b/assets/features_key_overrides.md.DHmulGw8.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Key Overrides","description":"","frontmatter":{},"headers":[],"relativePath":"features/key_overrides.md","filePath":"features/key_overrides.md","lastUpdated":null}'); const _sfc_main = { name: "features/key_overrides.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 70); diff --git a/assets/features_layer_lock.md.BNs4p6DJ.js b/assets/features_layer_lock.md.BFyJEied.js similarity index 98% rename from assets/features_layer_lock.md.BNs4p6DJ.js rename to assets/features_layer_lock.md.BFyJEied.js index 90cb34a1989..81cdaf7d171 100644 --- a/assets/features_layer_lock.md.BNs4p6DJ.js +++ b/assets/features_layer_lock.md.BFyJEied.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/DkEhj9x.png"; const _imports_1 = "/2wUZNWk.png"; const __pageData = JSON.parse('{"title":"Layer Lock","description":"","frontmatter":{},"headers":[],"relativePath":"features/layer_lock.md","filePath":"features/layer_lock.md","lastUpdated":null}'); diff --git a/assets/features_layer_lock.md.BNs4p6DJ.lean.js b/assets/features_layer_lock.md.BFyJEied.lean.js similarity index 84% rename from assets/features_layer_lock.md.BNs4p6DJ.lean.js rename to assets/features_layer_lock.md.BFyJEied.lean.js index aa09ff70b5b..9328985fba0 100644 --- a/assets/features_layer_lock.md.BNs4p6DJ.lean.js +++ b/assets/features_layer_lock.md.BFyJEied.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/DkEhj9x.png"; const _imports_1 = "/2wUZNWk.png"; const __pageData = JSON.parse('{"title":"Layer Lock","description":"","frontmatter":{},"headers":[],"relativePath":"features/layer_lock.md","filePath":"features/layer_lock.md","lastUpdated":null}'); diff --git a/assets/features_leader_key.md.B1k0F6xl.js b/assets/features_leader_key.md.BXjau7jR.js similarity index 99% rename from assets/features_leader_key.md.B1k0F6xl.js rename to assets/features_leader_key.md.BXjau7jR.js index e7afe783d90..7024cd91337 100644 --- a/assets/features_leader_key.md.B1k0F6xl.js +++ b/assets/features_leader_key.md.BXjau7jR.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"The Leader Key: A New Kind of Modifier","description":"","frontmatter":{},"headers":[],"relativePath":"features/leader_key.md","filePath":"features/leader_key.md","lastUpdated":null}'); const _sfc_main = { name: "features/leader_key.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

The Leader Key: A New Kind of Modifier

If you're a Vim user, you probably know what a Leader key is. In contrast to Combos, the Leader key allows you to hit a sequence of up to five keys instead, which triggers some custom functionality once complete.

Usage

Add the following to your rules.mk:

make
LEADER_ENABLE = yes

Then add the QK_LEAD keycode to your keymap.

Callbacks

These callbacks are invoked when the leader sequence begins and ends. In the latter you can implement your custom functionality based on the contents of the sequence buffer.

c
void leader_start_user(void) {\n    // Do something when the leader key is pressed\n}\n\nvoid leader_end_user(void) {\n    if (leader_sequence_one_key(KC_F)) {\n        // Leader, f => Types the below string\n        SEND_STRING("QMK is awesome.");\n    } else if (leader_sequence_two_keys(KC_D, KC_D)) {\n        // Leader, d, d => Ctrl+A, Ctrl+C\n        SEND_STRING(SS_LCTL("a") SS_LCTL("c"));\n    } else if (leader_sequence_three_keys(KC_D, KC_D, KC_S)) {\n        // Leader, d, d, s => Types the below string\n        SEND_STRING("https://start.duckduckgo.com\\n");\n    } else if (leader_sequence_two_keys(KC_A, KC_S)) {\n        // Leader, a, s => GUI+S\n        tap_code16(LGUI(KC_S));\n    }\n}

Basic Configuration

Timeout

This is the amount of time you have to complete a sequence once the leader key has been pressed. The default value is 300 milliseconds, but you can change this by adding the following to your config.h:

c
#define LEADER_TIMEOUT 350

Per-Key Timeout

Rather than relying on an incredibly high timeout for long leader key strings or those of us without 200 wpm typing skills, you can enable per-key timing to ensure that each key pressed provides you with more time to finish the sequence. This is incredibly helpful with leader key emulation of tap dance (such as multiple taps of the same key like C, C, C).

To enable this, add the following to your config.h:

c
#define LEADER_PER_KEY_TIMING

After this, it's recommended that you lower your timeout below 300 ms:

c
#define LEADER_TIMEOUT 250

Now, something like this won't seem impossible to do without a 1000 millisecond timeout:

c
if (leader_sequence_three_keys(KC_C, KC_C, KC_C)) {\n    SEND_STRING("Per key timing is great!!!");\n}

Disabling Initial Timeout

Sometimes your leader key may be too far away from the rest of the keys in the sequence. Imagine that your leader key is one of your outer top right keys - you may need to reposition your hand just to reach your leader key. This can make typing the entire sequence on time hard difficult if you are able to type most of the sequence fast. For example, if your sequence is Leader + asd, typing asd fast is very easy once you have your hands in your home row, but starting the sequence in time after moving your hand out of the home row to reach the leader key and back is not.

To remove the stress this situation produces to your hands, you can disable the timeout just for the leader key. Add the following to your config.h:

c
#define LEADER_NO_TIMEOUT

Now, after you hit the leader key, you will have an infinite amount of time to start the rest of the sequence, allowing you to properly position your hands to type the rest of the sequence comfortably. This way you can configure a very short LEADER_TIMEOUT, but still have plenty of time to position your hands.

Strict Key Processing

By default, only the "tap keycode" portions of Mod-Taps and Layer Taps are added to the sequence buffer. This means if you press eg. LT(3, KC_A) as part of a sequence, KC_A will be added to the buffer, rather than the entire LT(3, KC_A) keycode.

This gives a more expected behaviour for most users, however you may want to change this.

To enable this, add the following to your config.h:

c
#define LEADER_KEY_STRICT_KEY_PROCESSING

Example

This example will play the Mario "One Up" sound when you hit QK_LEAD to start the leader sequence. When the sequence ends, it will play "All Star" if it completes successfully or "Rick Roll" you if it fails (in other words, no sequence matched).

c
#ifdef AUDIO_ENABLE\nfloat leader_start_song[][2] = SONG(ONE_UP_SOUND);\nfloat leader_succeed_song[][2] = SONG(ALL_STAR);\nfloat leader_fail_song[][2] = SONG(RICK_ROLL);\n#endif\n\nvoid leader_start_user(void) {\n#ifdef AUDIO_ENABLE\n    PLAY_SONG(leader_start_song);\n#endif\n}\n\nvoid leader_end_user(void) {\n    bool did_leader_succeed = false;\n\n    if (leader_sequence_one_key(KC_E)) {\n        SEND_STRING(SS_LCTL(SS_LSFT("t")));\n        did_leader_succeed = true;\n    } else if (leader_sequence_two_keys(KC_E, KC_D)) {\n        SEND_STRING(SS_LGUI("r") "cmd\\n" SS_LCTL("c"));\n        did_leader_succeed = true;\n    }\n\n#ifdef AUDIO_ENABLE\n    if (did_leader_succeed) {\n        PLAY_SONG(leader_succeed_song);\n    } else {\n        PLAY_SONG(leader_fail_song);\n    }\n#endif\n}

Keycodes

KeyAliasesDescription
QK_LEADERQK_LEADBegin the leader sequence

API

void leader_start_user(void)

User callback, invoked when the leader sequence begins.


void leader_end_user(void)

User callback, invoked when the leader sequence ends.


bool leader_add_user(uint16_t keycode)

User callback, invoked when a keycode is added to the leader sequence.

Arguments

Return Value

true to finish the key sequence, false to continue.


void leader_start(void)

Begin the leader sequence, resetting the buffer and timer.


void leader_end(void)

End the leader sequence.


bool leader_sequence_active(void)

Whether the leader sequence is active.


bool leader_sequence_add(uint16_t keycode)

Add the given keycode to the sequence buffer.

If LEADER_NO_TIMEOUT is defined, the timer is reset if the buffer is empty.

Arguments

Return Value

true if the keycode was added, false if the buffer is full.


bool leader_sequence_timed_out(void)

Whether the leader sequence has reached the timeout.

If LEADER_NO_TIMEOUT is defined, the buffer must also contain at least one key.


bool leader_reset_timer(void)

Reset the leader sequence timer.


bool leader_sequence_one_key(uint16_t kc)

Check the sequence buffer for the given keycode.

Arguments

Return Value

true if the sequence buffer matches.


bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)

Check the sequence buffer for the given keycodes.

Arguments

Return Value

true if the sequence buffer matches.


bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)

Check the sequence buffer for the given keycodes.

Arguments

Return Value

true if the sequence buffer matches.


bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)

Check the sequence buffer for the given keycodes.

Arguments

Return Value

true if the sequence buffer matches.


bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)

Check the sequence buffer for the given keycodes.

Arguments

Return Value

true if the sequence buffer matches.

', 108); diff --git a/assets/features_leader_key.md.B1k0F6xl.lean.js b/assets/features_leader_key.md.BXjau7jR.lean.js similarity index 83% rename from assets/features_leader_key.md.B1k0F6xl.lean.js rename to assets/features_leader_key.md.BXjau7jR.lean.js index acec2784f73..cda2b6b0ccc 100644 --- a/assets/features_leader_key.md.B1k0F6xl.lean.js +++ b/assets/features_leader_key.md.BXjau7jR.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"The Leader Key: A New Kind of Modifier","description":"","frontmatter":{},"headers":[],"relativePath":"features/leader_key.md","filePath":"features/leader_key.md","lastUpdated":null}'); const _sfc_main = { name: "features/leader_key.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 108); diff --git a/assets/features_led_indicators.md.AIQa_hfc.js b/assets/features_led_indicators.md.CGYyrucF.js similarity index 99% rename from assets/features_led_indicators.md.AIQa_hfc.js rename to assets/features_led_indicators.md.CGYyrucF.js index 48d78454f18..bd142266d48 100644 --- a/assets/features_led_indicators.md.AIQa_hfc.js +++ b/assets/features_led_indicators.md.CGYyrucF.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"LED Indicators","description":"","frontmatter":{},"headers":[],"relativePath":"features/led_indicators.md","filePath":"features/led_indicators.md","lastUpdated":null}'); const _sfc_main = { name: "features/led_indicators.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

LED Indicators

TIP

LED indicators on split keyboards will require state information synced to the slave half (e.g. #define SPLIT_LED_STATE_ENABLE). See data sync options for more details.

QMK provides methods to read 5 of the LEDs defined in the HID spec:

There are three ways to get the lock LED state:

WARNING

The host_keyboard_led_state() may reflect an updated state before led_update_user() is called.

Deprecated functions that provide the LED state as uint8_t:

Configuration Options

To configure the indicators, #define these in your config.h:

DefineDefaultDescription
LED_NUM_LOCK_PINNot definedThe pin that controls the Num Lock LED
LED_CAPS_LOCK_PINNot definedThe pin that controls the Caps Lock LED
LED_SCROLL_LOCK_PINNot definedThe pin that controls the Scroll Lock LED
LED_COMPOSE_PINNot definedThe pin that controls the Compose LED
LED_KANA_PINNot definedThe pin that controls the Kana LED
LED_PIN_ON_STATE1The state of the indicator pins when the LED is "on" - 1 for high, 0 for low

Unless you are designing your own keyboard, you generally should not need to change the above config options.

LED update function

When the configuration options do not provide enough flexibility, the following callbacks allow custom control of the LED behavior. These functions will be called when one of those 5 LEDs changes state:

Both receives LED state as a struct parameter. Returning true in led_update_user() will allow the keyboard level code in led_update_kb() to run as well. Returning false will override the keyboard level code, depending on how the keyboard level function is set up.

Example of keyboard LED update implementation

This is a template indicator function that can be implemented on keyboard level code:

c
bool led_update_kb(led_t led_state) {\n    bool res = led_update_user(led_state);\n    if(res) {\n        // gpio_write_pin sets the pin high for 1 and low for 0.\n        // In this example the pins are inverted, setting\n        // it low/0 turns it on, and high/1 turns the LED off.\n        // This behavior depends on whether the LED is between the pin\n        // and VCC or the pin and GND.\n        gpio_write_pin(B0, !led_state.num_lock);\n        gpio_write_pin(B1, !led_state.caps_lock);\n        gpio_write_pin(B2, !led_state.scroll_lock);\n        gpio_write_pin(B3, !led_state.compose);\n        gpio_write_pin(B4, !led_state.kana);\n    }\n    return res;\n}

Example of user LED update implementation

This is an incomplete example will play a sound if Caps Lock is turned on or off. It returns true to allow keyboard LED function to maintain their state.

c
#ifdef AUDIO_ENABLE\n  float caps_on[][2] = SONG(CAPS_LOCK_ON_SOUND);\n  float caps_off[][2] = SONG(CAPS_LOCK_OFF_SOUND);\n#endif\n\nbool led_update_user(led_t led_state) {\n    #ifdef AUDIO_ENABLE\n    static uint8_t caps_state = 0;\n    if (caps_state != led_state.caps_lock) {\n        led_state.caps_lock ? PLAY_SONG(caps_on) : PLAY_SONG(caps_off);\n        caps_state = led_state.caps_lock;\n    }\n    #endif\n    return true;\n}

Host keyboard LED state

The host_keyboard_led_state() function will report the LED state returned from the host computer as led_t. This is useful for reading the LED state outside led_update_*. For example, you can get the boolean state of Caps Lock from the host with:

c
bool caps = host_keyboard_led_state().caps_lock;

led_update_ports()

This function writes the LED state to the actual hardware. Call it manually from your led_update_*() callbacks to modify the handling of the standard keyboard LEDs. For example when repurposing a standard LED indicator as layer indicator.

Setting Physical LED State

Some keyboard implementations provide convenient methods for setting the state of the physical LEDs.

Ergodox Boards

The Ergodox implementations provide ergodox_right_led_1/2/3_on/off() to turn individual LEDs on or off, as well as ergodox_right_led_on/off(uint8_t led) to turn them on or off by their index.

In addition, it is possible to specify the brightness level of all LEDs with ergodox_led_all_set(uint8_t n); of individual LEDs with ergodox_right_led_1/2/3_set(uint8_t n); or by index with ergodox_right_led_set(uint8_t led, uint8_t n).

Ergodox boards also define LED_BRIGHTNESS_LO for the lowest brightness and LED_BRIGHTNESS_HI for the highest brightness (which is the default).

', 34); diff --git a/assets/features_led_indicators.md.AIQa_hfc.lean.js b/assets/features_led_indicators.md.CGYyrucF.lean.js similarity index 83% rename from assets/features_led_indicators.md.AIQa_hfc.lean.js rename to assets/features_led_indicators.md.CGYyrucF.lean.js index f70d717f9ee..64cf6eafaee 100644 --- a/assets/features_led_indicators.md.AIQa_hfc.lean.js +++ b/assets/features_led_indicators.md.CGYyrucF.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"LED Indicators","description":"","frontmatter":{},"headers":[],"relativePath":"features/led_indicators.md","filePath":"features/led_indicators.md","lastUpdated":null}'); const _sfc_main = { name: "features/led_indicators.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 34); diff --git a/assets/features_led_matrix.md.Cm0moFB5.js b/assets/features_led_matrix.md.DuGjDaz2.js similarity index 99% rename from assets/features_led_matrix.md.Cm0moFB5.js rename to assets/features_led_matrix.md.DuGjDaz2.js index 18d5c2a4af1..09c45782d58 100644 --- a/assets/features_led_matrix.md.Cm0moFB5.js +++ b/assets/features_led_matrix.md.DuGjDaz2.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"LED Matrix Lighting","description":"","frontmatter":{},"headers":[],"relativePath":"features/led_matrix.md","filePath":"features/led_matrix.md","lastUpdated":null}'); const _sfc_main = { name: "features/led_matrix.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

LED Matrix Lighting

This feature allows you to use LED matrices driven by external drivers. It hooks into the backlight system so you can use the same keycodes as backlighting to control it.

If you want to use RGB LED's you should use the RGB Matrix Subsystem instead.

Driver Configuration

LED Matrix is an abstraction layer on top of an underlying LED driver API. The list of supported LED drivers is below; see the respective documentation for information on how to configure the driver.

DriverMax LEDs
IS31FL321818
IS31FL323636
IS31FL3729135
IS31FL3731144
IS31FL3733192
IS31FL373696
IS31FL3737144
IS31FL3741351
IS31FL3742A180
IS31FL3743A198
IS31FL3745144
IS31FL3746A72
SNLED27351192

To assign the LED Matrix driver, add the following to your rules.mk, for example:

make
LED_MATRIX_DRIVER = is31fl3218

Common Configuration

From this point forward the configuration is the same for all the drivers. The led_config_t struct provides a key electrical matrix to led index lookup table, what the physical position of each LED is on the board, and what type of key or usage the LED if the LED represents. Here is a brief example:

c
led_config_t g_led_config = { {\n  // Key Matrix to LED Index\n  {   5, NO_LED, NO_LED,   0 },\n  { NO_LED, NO_LED, NO_LED, NO_LED },\n  {   4, NO_LED, NO_LED,   1 },\n  {   3, NO_LED, NO_LED,   2 }\n}, {\n  // LED Index to Physical Position\n  { 188,  16 }, { 187,  48 }, { 149,  64 }, { 112,  64 }, {  37,  48 }, {  38,  16 }\n}, {\n  // LED Index to Flag\n  1, 4, 4, 4, 4, 1\n} };

The first part, // Key Matrix to LED Index, tells the system what key this LED represents by using the key's electrical matrix row & col. The second part, // LED Index to Physical Position represents the LED's physical { x, y } position on the keyboard. The default expected range of values for { x, y } is the inclusive range { 0..224, 0..64 }. This default expected range is due to effects that calculate the center of the keyboard for their animations. The easiest way to calculate these positions is imagine your keyboard is a grid, and the top left of the keyboard represents { x, y } coordinate { 0, 0 } and the bottom right of your keyboard represents { 224, 64 }. Using this as a basis, you can use the following formula to calculate the physical position:

c
x = 224 / (NUMBER_OF_COLS - 1) * COL_POSITION\ny =  64 / (NUMBER_OF_ROWS - 1) * ROW_POSITION

Where NUMBER_OF_COLS, NUMBER_OF_ROWS, COL_POSITION, & ROW_POSITION are all based on the physical layout of your keyboard, not the electrical layout.

As mentioned earlier, the center of the keyboard by default is expected to be { 112, 32 }, but this can be changed if you want to more accurately calculate the LED's physical { x, y } positions. Keyboard designers can implement #define LED_MATRIX_CENTER { 112, 32 } in their config.h file with the new center point of the keyboard, or where they want it to be allowing more possibilities for the { x, y } values. Do note that the maximum value for x or y is 255, and the recommended maximum is 224 as this gives animations runoff room before they reset.

// LED Index to Flag is a bitmask, whether or not a certain LEDs is of a certain type. It is recommended that LEDs are set to only 1 type.

Flags

DefineValueDescription
HAS_FLAGS(bits, flags)n/aEvaluates to true if bits has all flags set
HAS_ANY_FLAGS(bits, flags)n/aEvaluates to true if bits has any flags set
LED_FLAG_NONE0x00If this LED has no flags
LED_FLAG_ALL0xFFIf this LED has all flags
LED_FLAG_MODIFIER0x01If the LED is on a modifier key
LED_FLAG_KEYLIGHT0x04If the LED is for key backlight
LED_FLAG_INDICATOR0x08If the LED is for keyboard state indication

Keycodes

KeyAliasesDescription
QK_LED_MATRIX_ONLM_ONTurn on LED Matrix
QK_LED_MATRIX_OFFLM_OFFTurn off LED Matrix
QK_LED_MATRIX_TOGGLELM_TOGGToggle LED Matrix on or off
QK_LED_MATRIX_MODE_NEXTLM_NEXTCycle through animations
QK_LED_MATRIX_MODE_PREVIOUSLM_PREVCycle through animations in reverse
QK_LED_MATRIX_BRIGHTNESS_UPLM_BRIUIncrease the brightness level
QK_LED_MATRIX_BRIGHTNESS_DOWNLM_BRIDDecrease the brightness level
QK_LED_MATRIX_SPEED_UPLM_SPDUIncrease the animation speed
QK_LED_MATRIX_SPEED_DOWNLM_SPDDDecrease the animation speed
QK_LED_MATRIX_FLAG_NEXTLM_FLGNCycle through flags
QK_LED_MATRIX_FLAG_PREVIOUSLM_FLGPCycle through flags in reverse

LED Matrix Effects

These are the effects that are currently available:

c
enum led_matrix_effects {\n    LED_MATRIX_NONE = 0,\n    LED_MATRIX_SOLID = 1,           // Static single val, no speed support\n    LED_MATRIX_ALPHAS_MODS,         // Static dual val, speed is val for LEDs marked as modifiers\n    LED_MATRIX_BREATHING,           // Cycling brightness animation\n    LED_MATRIX_BAND,                // Band fading brightness scrolling left to right\n    LED_MATRIX_BAND_PINWHEEL,       // 3 blade spinning pinwheel fades brightness\n    LED_MATRIX_BAND_SPIRAL,         // Spinning spiral fades brightness\n    LED_MATRIX_CYCLE_LEFT_RIGHT,    // Full gradient scrolling left to right\n    LED_MATRIX_CYCLE_UP_DOWN,       // Full gradient scrolling top to bottom\n    LED_MATRIX_CYCLE_OUT_IN,        // Full gradient scrolling out to in\n    LED_MATRIX_DUAL_BEACON,         // Full gradient spinning around center of keyboard\n    LED_MATRIX_SOLID_REACTIVE_SIMPLE,   // Pulses keys hit then fades out\n    LED_MATRIX_SOLID_REACTIVE_WIDE,       // Value pulses near a single key hit then fades out\n    LED_MATRIX_SOLID_REACTIVE_MULTIWIDE,  // Value pulses near multiple key hits then fades out\n    LED_MATRIX_SOLID_REACTIVE_CROSS,      // Value pulses the same column and row of a single key hit then fades out\n    LED_MATRIX_SOLID_REACTIVE_MULTICROSS, // Value pulses the same column and row of multiple key hits then fades out\n    LED_MATRIX_SOLID_REACTIVE_NEXUS,      // Value pulses away on the same column and row of a single key hit then fades out\n    LED_MATRIX_SOLID_REACTIVE_MULTINEXUS, // Value pulses away on the same column and row of multiple key hits then fades out\n    LED_MATRIX_SOLID_SPLASH,             // Value pulses away from a single key hit then fades out\n    LED_MATRIX_SOLID_MULTISPLASH,        // Value pulses away from multiple key hits then fades out\n    LED_MATRIX_WAVE_LEFT_RIGHT,           // Sine wave scrolling from left to right\n    LED_MATRIX_WAVE_UP_DOWN,              // Sine wave scrolling from up to down\n    LED_MATRIX_EFFECT_MAX\n};

You can enable a single effect by defining ENABLE_[EFFECT_NAME] in your config.h:

DefineDescription
#define ENABLE_LED_MATRIX_ALPHAS_MODSEnables LED_MATRIX_ALPHAS_MODS
#define ENABLE_LED_MATRIX_BREATHINGEnables LED_MATRIX_BREATHING
#define ENABLE_LED_MATRIX_BANDEnables LED_MATRIX_BAND
#define ENABLE_LED_MATRIX_BAND_PINWHEELEnables LED_MATRIX_BAND_PINWHEEL
#define ENABLE_LED_MATRIX_BAND_SPIRALEnables LED_MATRIX_BAND_SPIRAL
#define ENABLE_LED_MATRIX_CYCLE_LEFT_RIGHTEnables LED_MATRIX_CYCLE_LEFT_RIGHT
#define ENABLE_LED_MATRIX_CYCLE_UP_DOWNEnables LED_MATRIX_CYCLE_UP_DOWN
#define ENABLE_LED_MATRIX_CYCLE_OUT_INEnables LED_MATRIX_CYCLE_OUT_IN
#define ENABLE_LED_MATRIX_DUAL_BEACONEnables LED_MATRIX_DUAL_BEACON
#define ENABLE_LED_MATRIX_WAVE_LEFT_RIGHTEnables LED_MATRIX_WAVE_LEFT_RIGHT
#define ENABLE_LED_MATRIX_WAVE_UP_DOWNEnables LED_MATRIX_WAVE_UP_DOWN
Reactive DefinesDescription
#define ENABLE_LED_MATRIX_SOLID_REACTIVE_SIMPLEEnables LED_MATRIX_SOLID_REACTIVE_SIMPLE
#define ENABLE_LED_MATRIX_SOLID_REACTIVE_WIDEEnables LED_MATRIX_SOLID_REACTIVE_WIDE
#define ENABLE_LED_MATRIX_SOLID_REACTIVE_MULTIWIDEEnables LED_MATRIX_SOLID_REACTIVE_MULTIWIDE
#define ENABLE_LED_MATRIX_SOLID_REACTIVE_CROSSEnables LED_MATRIX_SOLID_REACTIVE_CROSS
#define ENABLE_LED_MATRIX_SOLID_REACTIVE_MULTICROSSEnables LED_MATRIX_SOLID_REACTIVE_MULTICROSS
#define ENABLE_LED_MATRIX_SOLID_REACTIVE_NEXUSEnables LED_MATRIX_SOLID_REACTIVE_NEXUS
#define ENABLE_LED_MATRIX_SOLID_REACTIVE_MULTINEXUSEnables LED_MATRIX_SOLID_REACTIVE_MULTINEXUS
#define ENABLE_LED_MATRIX_SOLID_SPLASHEnables LED_MATRIX_SOLID_SPLASH
#define ENABLE_LED_MATRIX_SOLID_MULTISPLASHEnables LED_MATRIX_SOLID_MULTISPLASH

TIP

These modes introduce additional logic that can increase firmware size.

Custom LED Matrix Effects

By setting LED_MATRIX_CUSTOM_USER = yes in rules.mk, new effects can be defined directly from your keymap or userspace, without having to edit any QMK core files. To declare new effects, create a led_matrix_user.inc file in the user keymap directory or userspace folder.

TIP

Hardware maintainers who want to limit custom effects to a specific keyboard can create a led_matrix_kb.inc file in the root of the keyboard directory, and add LED_MATRIX_CUSTOM_KB = yes to the keyboard level rules.mk.

c
// !!! DO NOT ADD #pragma once !!! //\n\n// Step 1.\n// Declare custom effects using the LED_MATRIX_EFFECT macro\n// (note the lack of semicolon after the macro!)\nLED_MATRIX_EFFECT(my_cool_effect)\nLED_MATRIX_EFFECT(my_cool_effect2)\n\n// Step 2.\n// Define effects inside the `LED_MATRIX_CUSTOM_EFFECT_IMPLS` ifdef block\n#ifdef LED_MATRIX_CUSTOM_EFFECT_IMPLS\n\n// e.g: A simple effect, self-contained within a single method\nstatic bool my_cool_effect(effect_params_t* params) {\n  LED_MATRIX_USE_LIMITS(led_min, led_max);\n  for (uint8_t i = led_min; i < led_max; i++) {\n    led_matrix_set_value(i, 0xFF);\n  }\n  return led_matrix_check_finished_leds(led_max);\n}\n\n// e.g: A more complex effect, relying on external methods and state, with\n// dedicated init and run methods\nstatic uint8_t some_global_state;\nstatic void my_cool_effect2_complex_init(effect_params_t* params) {\n  some_global_state = 1;\n}\nstatic bool my_cool_effect2_complex_run(effect_params_t* params) {\n  LED_MATRIX_USE_LIMITS(led_min, led_max);\n  for (uint8_t i = led_min; i < led_max; i++) {\n    led_matrix_set_value(i, some_global_state++);\n  }\n  return led_matrix_check_finished_leds(led_max);\n}\nstatic bool my_cool_effect2(effect_params_t* params) {\n  if (params->init) my_cool_effect2_complex_init(params);\n  return my_cool_effect2_complex_run(params);\n}\n\n#endif // LED_MATRIX_CUSTOM_EFFECT_IMPLS

To switch to your custom effect programmatically, simply call led_matrix_mode() and prepend LED_MATRIX_CUSTOM_ to the effect name your specified in LED_MATRIX_EFFECT(). For example, an effect declared as LED_MATRIX_EFFECT(my_cool_effect) would be referenced with:

c
led_matrix_mode(LED_MATRIX_CUSTOM_my_cool_effect);

For inspiration and examples, check out the built-in effects under quantum/led_matrix/animations/.

Naming

If you wish to be able to use the name of an effect in your code -- say for a display indicator -- then you can enable the function led_matrix_get_mode_name in the following manner:

In your keymap's config.h:

c
#define LED_MATRIX_MODE_NAME_ENABLE

In your keymap.c

c
const char* effect_name = led_matrix_get_mode_name(led_matrix_get_mode());\n// do something with `effect_name`, like `oled_write_ln(effect_name, false);`

INFO

led_matrix_get_mode_name() is not enabled by default as it increases the amount of flash memory used by the firmware based on the number of effects enabled.

Additional config.h Options

c
#define LED_MATRIX_MODE_NAME_ENABLE // enables led_matrix_get_mode_name()\n#define LED_MATRIX_KEYRELEASES // reactive effects respond to keyreleases (instead of keypresses)\n#define LED_MATRIX_TIMEOUT 0 // number of milliseconds to wait until led automatically turns off\n#define LED_MATRIX_SLEEP // turn off effects when suspended\n#define LED_MATRIX_LED_PROCESS_LIMIT (LED_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)\n#define LED_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)\n#define LED_MATRIX_MAXIMUM_BRIGHTNESS 255 // limits maximum brightness of LEDs\n#define LED_MATRIX_DEFAULT_ON true // Sets the default enabled state, if none has been set\n#define LED_MATRIX_DEFAULT_MODE LED_MATRIX_SOLID // Sets the default mode, if none has been set\n#define LED_MATRIX_DEFAULT_VAL LED_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set\n#define LED_MATRIX_DEFAULT_SPD 127 // Sets the default animation speed, if none has been set\n#define LED_MATRIX_VAL_STEP 8 // The value by which to increment the brightness per adjustment action\n#define LED_MATRIX_SPD_STEP 16 // The value by which to increment the animation speed per adjustment action\n#define LED_MATRIX_DEFAULT_FLAGS LED_FLAG_ALL // Sets the default LED flags, if none has been set\n#define LED_MATRIX_SPLIT { X, Y }   // (Optional) For split keyboards, the number of LEDs connected on each half. X = left, Y = Right.\n                                    // If reactive effects are enabled, you also will want to enable SPLIT_TRANSPORT_MIRROR\n#define LED_MATRIX_FLAG_STEPS { LED_FLAG_ALL, LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER, LED_FLAG_NONE } // Sets the flags which can be cycled through.

EEPROM storage

The EEPROM for it is currently shared with the RGB Matrix system (it's generally assumed only one feature would be used at a time).

Callbacks

Indicators

If you want to set custom indicators, such as an LED for Caps Lock, or layer indication, then you can use the led_matrix_indicators_kb function on the keyboard level source file, or led_matrix_indicators_user function in the user keymap.c.

c
bool led_matrix_indicators_kb(void) {\n    if (!led_matrix_indicators_user()) {\n        return false;\n    }\n    led_matrix_set_value(index, value);\n    return true;\n}

In addition, there are the advanced indicator functions. These are aimed at those with heavily customized displays, where rendering every LED per cycle is expensive. This includes a special macro to help make this easier to use: LED_MATRIX_INDICATOR_SET_VALUE(i, v).

c
void led_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {\n    LED_MATRIX_INDICATOR_SET_VALUE(index, value);\n    return false;\n}

API

void led_matrix_toggle(void)

Toggle LED Matrix on or off.


void led_matrix_toggle_noeeprom(void)

Toggle LED Matrix on or off. New state is not written to EEPROM.


void led_matrix_enable(void)

Turn LED Matrix on.


void led_matrix_enable_noeeprom(void)

Turn LED Matrix on. New state is not written to EEPROM.


void led_matrix_disable(void)

Turn LED Matrix off.


void led_matrix_disable_noeeprom(void)

Turn LED Matrix off. New state is not written to EEPROM.


bool led_matrix_is_enabled(void)

Get the current enabled state of LED Matrix.

Return Value

true if LED Matrix is enabled.


void led_matrix_set_value(uint8_t index, uint8_t v)

Set the brightness of a single LED.

This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame.

Arguments


void led_matrix_set_value_all(uint8_t v)

Set the brightness of all LEDs.

This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame.

Arguments


void led_matrix_mode(uint8_t mode)

Set the currently running effect.

Arguments


void led_matrix_mode_noeeprom(uint8_t mode)

Set the currently running effect. New state is not written to EEPROM.

Arguments


void led_matrix_step(void)

Move to the next enabled effect.


void led_matrix_step_noeeprom(void)

Move to the next enabled effect. New state is not written to EEPROM.


void led_matrix_step_reverse(void)

Move to the previous enabled effect.


void led_matrix_step_reverse_noeeprom(void)

Move to the previous enabled effect. New state is not written to EEPROM.


uint8_t led_matrix_get_mode(void)

Get the currently running effect.

Return Value

The index of the currently running effect.


void val_matrix_increase_val(void)

Increase the global effect brightness.


void led_matrix_increase_val_noeeprom(void)

Increase the global effect brightness. New state is not written to EEPROM.


void led_matrix_decrease_val(void)

Decrease the global effect brightness.


void led_matrix_decrease_val_noeeprom(void)

Decrease the global effect brightness. New state is not written to EEPROM.


uint8_t led_matrix_get_val(void)

Get the current global effect brightness.

Return Value

The current brightness value, from 0 to 255.


void led_matrix_increase_speed(void)

Increase the effect speed.


void led_matrix_increase_speed_noeeprom(void)

Increase the effect speed. New state is not written to EEPROM.


void led_matrix_decrease_speed(void)

Decrease the effect speed.


void led_matrix_decrease_speed_noeeprom(void)

Decrease the effect speed. New state is not written to EEPROM.


void led_matrix_set_speed(uint8_t speed)

Set the effect speed.

Arguments


void led_matrix_set_speed_noeeprom(uint8_t speed)

Set the effect speed. New state is not written to EEPROM.

Arguments


uint8_t led_matrix_get_speed(void)

Get the current effect speed.

Return Value

The current effect speed, from 0 to 255.


void led_matrix_set_flags(led_flags_t flags)

Set the global effect flags.

Arguments


void led_matrix_set_flags_noeeprom(led_flags_t flags)

Set the global effect flags. New state is not written to EEPROM.

Arguments


void led_matrix_flags_step(void)

Move to the next flag combination.


void led_matrix_flags_step_noeeprom(void)

Move to the next flag combination. New state is not written to EEPROM.


void led_matrix_flags_step_reverse(void)

Move to the previous flag combination.


void led_matrix_flags_step_reverse_noeeprom(void)

Move to the previous flag combination. New state is not written to EEPROM.


uint8_t led_matrix_get_flags(void)

Get the current global effect flags.

Return Value

The current effect flags.


void led_matrix_reload_from_eeprom(void)

Reload the effect configuration (enabled, mode and brightness) from EEPROM.


bool led_matrix_get_suspend_state(void)

Get the current suspend state of LED Matrix.

Return Value

true if LED Matrix is currently in the suspended state.


bool led_matrix_indicators_kb(void)

Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

Return Value

Currently unused.


bool led_matrix_indicators_user(void)

Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

Return Value

true to continue running the keyboard-level callback.


bool led_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)

Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

Arguments

Return Value

Currently unused.


bool led_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)

Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

Arguments

Return Value

true to continue running the keyboard-level callback.

', 216); diff --git a/assets/features_led_matrix.md.Cm0moFB5.lean.js b/assets/features_led_matrix.md.DuGjDaz2.lean.js similarity index 83% rename from assets/features_led_matrix.md.Cm0moFB5.lean.js rename to assets/features_led_matrix.md.DuGjDaz2.lean.js index b57c1382fcf..1e5532b37db 100644 --- a/assets/features_led_matrix.md.Cm0moFB5.lean.js +++ b/assets/features_led_matrix.md.DuGjDaz2.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"LED Matrix Lighting","description":"","frontmatter":{},"headers":[],"relativePath":"features/led_matrix.md","filePath":"features/led_matrix.md","lastUpdated":null}'); const _sfc_main = { name: "features/led_matrix.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 216); diff --git a/assets/features_midi.md.v37bH2vU.js b/assets/features_midi.md.Bbhyxj9Y.js similarity index 99% rename from assets/features_midi.md.v37bH2vU.js rename to assets/features_midi.md.Bbhyxj9Y.js index 21caacb2426..c338eae47c9 100644 --- a/assets/features_midi.md.v37bH2vU.js +++ b/assets/features_midi.md.Bbhyxj9Y.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"MIDI","description":"","frontmatter":{},"headers":[],"relativePath":"features/midi.md","filePath":"features/midi.md","lastUpdated":null}'); const _sfc_main = { name: "features/midi.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

MIDI

Usage

First, enable MIDI by adding the following to your rules.mk:

make
MIDI_ENABLE = yes

There are two MIDI systems in QMK: basic and advanced. With basic MIDI you will only be able to send Note On and Note Off messages using the note keycodes, meaning that keycodes like MI_OCTU and MI_OCTD will not work. Advanced MIDI allows you to do things like octave shifts, channel changes, velocity changes, modulation, and more.

Caveats

MIDI requires 2 USB endpoints and as such may not work on some hardware such as V-USB controllers.

Basic MIDI

To enable basic MIDI, add the following to your config.h:

c
#define MIDI_BASIC

Advanced MIDI

To enable advanced MIDI, add the following to your config.h:

c
#define MIDI_ADVANCED

Sending Control Change (CC) Messages

If you're aiming to emulate the features of something like a Launchpad or other MIDI controller you'll need to access the internal MIDI device directly.

Because there are so many possible CC messages, not all of them are implemented as keycodes. Additionally, you might need to provide more than just two values that you would get from a keycode (pressed and released) - for example, the analog values from a fader or a potentiometer. So, you will need to implement custom keycodes if you want to use them in your keymap directly using process_record_user().

For reference of all the possible control code numbers see MIDI Specification

Example code for using Generic On Off Switches as per MIDI Specification.

c
#include QMK_KEYBOARD_H\n\nextern MidiDevice midi_device;\n\n// MIDI CC codes for generic on/off switches (80, 81, 82, 83)\n// Off: 0-63\n// On:  64-127\n\n#define MIDI_CC_OFF 0\n#define MIDI_CC_ON  127\n\nenum custom_keycodes {\n    MIDI_CC80 = SAFE_RANGE,\n};\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case MIDI_CC80:\n            if (record->event.pressed) {\n                midi_send_cc(&midi_device, midi_config.channel, 80, MIDI_CC_ON);\n            } else {\n                midi_send_cc(&midi_device, midi_config.channel, 80, MIDI_CC_OFF);\n            }\n            return true;\n    }\n    return true;\n};\n\nconst uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n    LAYOUT(\n        // ...\n        MIDI_CC80,\n        // ...\n    )\n};

Keycodes

KeycodeAliasesDescription
QK_MIDI_ONMI_ONTurn MIDI on
QK_MIDI_OFFMI_OFFTurn MIDI off
QK_MIDI_TOGGLEMI_TOGGToggle MIDI enabled
QK_MIDI_NOTE_C_0MI_CC octave 0
QK_MIDI_NOTE_C_SHARP_0MI_Cs, MI_DbC♯/D♭ octave 0
QK_MIDI_NOTE_D_0MI_DD octave 0
QK_MIDI_NOTE_D_SHARP_0MI_Ds, MI_EbD♯/E♭ octave 0
QK_MIDI_NOTE_E_0MI_EE octave 0
QK_MIDI_NOTE_F_0MI_FF octave 0
QK_MIDI_NOTE_F_SHARP_0MI_Fs, MI_GbF♯/G♭ octave 0
QK_MIDI_NOTE_G_0MI_GG octave 0
QK_MIDI_NOTE_G_SHARP_0MI_Gs, MI_AbG♯/A♭ octave 0
QK_MIDI_NOTE_A_0MI_AA octave 0
QK_MIDI_NOTE_A_SHARP_0MI_As, MI_BbA♯/B♭ octave 0
QK_MIDI_NOTE_B_0MI_BB octave 0
QK_MIDI_NOTE_C_1MI_C1C octave 1
QK_MIDI_NOTE_C_SHARP_1MI_Cs1, MI_Db1C♯/D♭ octave 1
QK_MIDI_NOTE_D_1MI_D1D octave 1
QK_MIDI_NOTE_D_SHARP_1MI_Ds1, MI_Eb1D♯/E♭ octave 1
QK_MIDI_NOTE_E_1MI_E1E octave 1
QK_MIDI_NOTE_F_1MI_F1F octave 1
QK_MIDI_NOTE_F_SHARP_1MI_Fs1, MI_Gb1F♯/G♭ octave 1
QK_MIDI_NOTE_G_1MI_G1G octave 1
QK_MIDI_NOTE_G_SHARP_1MI_Gs1, MI_Ab1G♯/A♭ octave 1
QK_MIDI_NOTE_A_1MI_A1A octave 1
QK_MIDI_NOTE_A_SHARP_1MI_As1, MI_Bb1A♯/B♭ octave 1
QK_MIDI_NOTE_B_1MI_B1B octave 1
QK_MIDI_NOTE_C_2MI_C2C octave 2
QK_MIDI_NOTE_C_SHARP_2MI_Cs2, MI_Db2C♯/D♭ octave 2
QK_MIDI_NOTE_D_2MI_D2D octave 2
QK_MIDI_NOTE_D_SHARP_2MI_Ds2, MI_Eb2D♯/E♭ octave 2
QK_MIDI_NOTE_E_2MI_E2E octave 2
QK_MIDI_NOTE_F_2MI_F2F octave 2
QK_MIDI_NOTE_F_SHARP_2MI_Fs2, MI_Gb2F♯/G♭ octave 2
QK_MIDI_NOTE_G_2MI_G2G octave 2
QK_MIDI_NOTE_G_SHARP_2MI_Gs2, MI_Ab2G♯/A♭ octave 2
QK_MIDI_NOTE_A_2MI_A2A octave 2
QK_MIDI_NOTE_A_SHARP_2MI_As2, MI_Bb2A♯/B♭ octave 2
QK_MIDI_NOTE_B_2MI_B2B octave 2
QK_MIDI_NOTE_C_3MI_C3C octave 3
QK_MIDI_NOTE_C_SHARP_3MI_Cs3, MI_Db3C♯/D♭ octave 3
QK_MIDI_NOTE_D_3MI_D3D octave 3
QK_MIDI_NOTE_D_SHARP_3MI_Ds3, MI_Eb3D♯/E♭ octave 3
QK_MIDI_NOTE_E_3MI_E3E octave 3
QK_MIDI_NOTE_F_3MI_F3F octave 3
QK_MIDI_NOTE_F_SHARP_3MI_Fs3, MI_Gb3F♯/G♭ octave 3
QK_MIDI_NOTE_G_3MI_G3G octave 3
QK_MIDI_NOTE_G_SHARP_3MI_Gs3, MI_Ab3G♯/A♭ octave 3
QK_MIDI_NOTE_A_3MI_A3A octave 3
QK_MIDI_NOTE_A_SHARP_3MI_As3, MI_Bb3A♯/B♭ octave 3
QK_MIDI_NOTE_B_3MI_B3B octave 3
QK_MIDI_NOTE_C_4MI_C4C octave 4
QK_MIDI_NOTE_C_SHARP_4MI_Cs4, MI_Db4C♯/D♭ octave 4
QK_MIDI_NOTE_D_4MI_D4D octave 4
QK_MIDI_NOTE_D_SHARP_4MI_Ds4, MI_Eb4D♯/E♭ octave 4
QK_MIDI_NOTE_E_4MI_E4E octave 4
QK_MIDI_NOTE_F_4MI_F4F octave 4
QK_MIDI_NOTE_F_SHARP_4MI_Fs4, MI_Gb4F♯/G♭ octave 4
QK_MIDI_NOTE_G_4MI_G4G octave 4
QK_MIDI_NOTE_G_SHARP_4MI_Gs4, MI_Ab4G♯/A♭ octave 4
QK_MIDI_NOTE_A_4MI_A4A octave 4
QK_MIDI_NOTE_A_SHARP_4MI_As4, MI_Bb4A♯/B♭ octave 4
QK_MIDI_NOTE_B_4MI_B4B octave 4
QK_MIDI_NOTE_C_5MI_C5C octave 5
QK_MIDI_NOTE_C_SHARP_5MI_Cs5, MI_Db5C♯/D♭ octave 5
QK_MIDI_NOTE_D_5MI_D5D octave 5
QK_MIDI_NOTE_D_SHARP_5MI_Ds5, MI_Eb5D♯/E♭ octave 5
QK_MIDI_NOTE_E_5MI_E5E octave 5
QK_MIDI_NOTE_F_5MI_F5F octave 5
QK_MIDI_NOTE_F_SHARP_5MI_Fs5, MI_Gb5F♯/G♭ octave 5
QK_MIDI_NOTE_G_5MI_G5G octave 5
QK_MIDI_NOTE_G_SHARP_5MI_Gs5, MI_Ab5G♯/A♭ octave 5
QK_MIDI_NOTE_A_5MI_A5A octave 5
QK_MIDI_NOTE_A_SHARP_5MI_As5, MI_Bb5A♯/B♭ octave 5
QK_MIDI_NOTE_B_5MI_B5B octave 5
QK_MIDI_OCTAVE_N2MI_OCN2Set octave to -2
QK_MIDI_OCTAVE_N1MI_OCN1Set octave to -1
QK_MIDI_OCTAVE_0MI_OC0Set octave to 0
QK_MIDI_OCTAVE_1MI_OC1Set octave to 1
QK_MIDI_OCTAVE_2MI_OC2Set octave to 2
QK_MIDI_OCTAVE_3MI_OC3Set octave to 3
QK_MIDI_OCTAVE_4MI_OC4Set octave to 4
QK_MIDI_OCTAVE_5MI_OC5Set octave to 5
QK_MIDI_OCTAVE_6MI_OC6Set octave to 6
QK_MIDI_OCTAVE_7MI_OC7Set octave to 7
QK_MIDI_OCTAVE_DOWNMI_OCTDMove down an octave
QK_MIDI_OCTAVE_UPMI_OCTUMove up an octave
QK_MIDI_TRANSPOSE_N6MI_TRN6Set transposition to -6 semitones
QK_MIDI_TRANSPOSE_N5MI_TRN5Set transposition to -5 semitones
QK_MIDI_TRANSPOSE_N4MI_TRN4Set transposition to -4 semitones
QK_MIDI_TRANSPOSE_N3MI_TRN3Set transposition to -3 semitones
QK_MIDI_TRANSPOSE_N2MI_TRN2Set transposition to -2 semitones
QK_MIDI_TRANSPOSE_N1MI_TRN1Set transposition to -1 semitone
QK_MIDI_TRANSPOSE_0MI_TR0No transposition
QK_MIDI_TRANSPOSE_1MI_TR1Set transposition to +1 semitone
QK_MIDI_TRANSPOSE_2MI_TR2Set transposition to +2 semitones
QK_MIDI_TRANSPOSE_3MI_TR3Set transposition to +3 semitones
QK_MIDI_TRANSPOSE_4MI_TR4Set transposition to +4 semitones
QK_MIDI_TRANSPOSE_5MI_TR5Set transposition to +5 semitones
QK_MIDI_TRANSPOSE_6MI_TR6Set transposition to +6 semitones
QK_MIDI_TRANSPOSE_DOWNMI_TRSDDecrease transposition
QK_MIDI_TRANSPOSE_UPMI_TRSUIncrease transposition
QK_MIDI_VELOCITY_0MI_VL0Set velocity to 0
QK_MIDI_VELOCITY_1MI_VL1Set velocity to 12
QK_MIDI_VELOCITY_2MI_VL2Set velocity to 25
QK_MIDI_VELOCITY_3MI_VL3Set velocity to 38
QK_MIDI_VELOCITY_4MI_VL4Set velocity to 51
QK_MIDI_VELOCITY_5MI_VL5Set velocity to 64
QK_MIDI_VELOCITY_6MI_VL6Set velocity to 76
QK_MIDI_VELOCITY_7MI_VL7Set velocity to 89
QK_MIDI_VELOCITY_8MI_VL8Set velocity to 102
QK_MIDI_VELOCITY_9MI_VL9Set velocity to 114
QK_MIDI_VELOCITY_10MI_VL10Set velocity to 127
QK_MIDI_VELOCITY_DOWNMI_VELDDecrease velocity
QK_MIDI_VELOCITY_UPMI_VELUIncrease velocity
QK_MIDI_CHANNEL_1MI_CH1Set channel to 1
QK_MIDI_CHANNEL_2MI_CH2Set channel to 2
QK_MIDI_CHANNEL_3MI_CH3Set channel to 3
QK_MIDI_CHANNEL_4MI_CH4Set channel to 4
QK_MIDI_CHANNEL_5MI_CH5Set channel to 5
QK_MIDI_CHANNEL_6MI_CH6Set channel to 6
QK_MIDI_CHANNEL_7MI_CH7Set channel to 7
QK_MIDI_CHANNEL_8MI_CH8Set channel to 8
QK_MIDI_CHANNEL_9MI_CH9Set channel to 9
QK_MIDI_CHANNEL_10MI_CH10Set channel to 10
QK_MIDI_CHANNEL_11MI_CH11Set channel to 11
QK_MIDI_CHANNEL_12MI_CH12Set channel to 12
QK_MIDI_CHANNEL_13MI_CH13Set channel to 13
QK_MIDI_CHANNEL_14MI_CH14Set channel to 14
QK_MIDI_CHANNEL_15MI_CH15Set channel to 15
QK_MIDI_CHANNEL_16MI_CH16Set channel to 16
QK_MIDI_CHANNEL_DOWNMI_CHNDDecrease channel
QK_MIDI_CHANNEL_UPMI_CHNUIncrease channel
QK_MIDI_ALL_NOTES_OFFMI_AOFFStop all notes
QK_MIDI_SUSTAINMI_SUSTSustain
QK_MIDI_PORTAMENTOMI_PORTPortmento
QK_MIDI_SOSTENUTOMI_SOSTSostenuto
QK_MIDI_SOFTMI_SOFTSoft Pedal
QK_MIDI_LEGATOMI_LEGLegato
QK_MIDI_MODULATIONMI_MODModulation
QK_MIDI_MODULATION_SPEED_DOWNMI_MODDDecrease modulation speed
QK_MIDI_MODULATION_SPEED_UPMI_MODUIncrease modulation speed
QK_MIDI_PITCH_BEND_DOWNMI_BNDDBend pitch down
QK_MIDI_PITCH_BEND_UPMI_BNDUBend pitch up

Configuration

Certain values are stored in the midi_config struct. This configuration is not persisted to EEPROM. By default, these values are:

ConfigurationValueComments
Octave4Corresponds to MI_OC2
Transposition0
Velocity127
Channel0
Modulation Interval8

For the above, the MI_C keycode will produce a C3 (note number 48), and so on.

References

MIDI Specification

QMK C Files

', 30); diff --git a/assets/features_midi.md.v37bH2vU.lean.js b/assets/features_midi.md.Bbhyxj9Y.lean.js similarity index 82% rename from assets/features_midi.md.v37bH2vU.lean.js rename to assets/features_midi.md.Bbhyxj9Y.lean.js index dc48f242577..b223a21fa5f 100644 --- a/assets/features_midi.md.v37bH2vU.lean.js +++ b/assets/features_midi.md.Bbhyxj9Y.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"MIDI","description":"","frontmatter":{},"headers":[],"relativePath":"features/midi.md","filePath":"features/midi.md","lastUpdated":null}'); const _sfc_main = { name: "features/midi.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 30); diff --git a/assets/features_mouse_keys.md.D1QdpHqq.js b/assets/features_mouse_keys.md.BO1Asbyn.js similarity index 99% rename from assets/features_mouse_keys.md.D1QdpHqq.js rename to assets/features_mouse_keys.md.BO1Asbyn.js index 48e90c52a52..0691c91446c 100644 --- a/assets/features_mouse_keys.md.D1QdpHqq.js +++ b/assets/features_mouse_keys.md.BO1Asbyn.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Mouse keys","description":"","frontmatter":{},"headers":[],"relativePath":"features/mouse_keys.md","filePath":"features/mouse_keys.md","lastUpdated":null}'); const _sfc_main = { name: "features/mouse_keys.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Mouse keys

Mouse keys is a feature that allows you to emulate a mouse using your keyboard. You can move the pointer at different speeds, press 5 buttons and scroll in 8 directions.

Adding mouse keys to your keyboard

To use mouse keys, you must at least enable mouse keys support and map mouse actions to keys on your keyboard.

Enabling mouse keys

To enable mouse keys, add the following line to your keymap’s rules.mk:

c
MOUSEKEY_ENABLE = yes

Mapping mouse actions

In your keymap you can use the following keycodes to map key presses to mouse actions:

KeyAliasesDescription
QK_MOUSE_CURSOR_UPMS_UPMouse cursor up
QK_MOUSE_CURSOR_DOWNMS_DOWNMouse cursor down
QK_MOUSE_CURSOR_LEFTMS_LEFTMouse cursor left
QK_MOUSE_CURSOR_RIGHTMS_RGHTMouse cursor right
QK_MOUSE_BUTTON_1MS_BTN1Mouse button 1
QK_MOUSE_BUTTON_2MS_BTN2Mouse button 2
QK_MOUSE_BUTTON_3MS_BTN3Mouse button 3
QK_MOUSE_BUTTON_4MS_BTN4Mouse button 4
QK_MOUSE_BUTTON_5MS_BTN5Mouse button 5
QK_MOUSE_BUTTON_6MS_BTN6Mouse button 6
QK_MOUSE_BUTTON_7MS_BTN7Mouse button 7
QK_MOUSE_BUTTON_8MS_BTN8Mouse button 8
QK_MOUSE_WHEEL_UPMS_WHLUMouse wheel up
QK_MOUSE_WHEEL_DOWNMS_WHLDMouse wheel down
QK_MOUSE_WHEEL_LEFTMS_WHLLMouse wheel left
QK_MOUSE_WHEEL_RIGHTMS_WHLRMouse wheel right
QK_MOUSE_ACCELERATION_0MS_ACL0Set mouse acceleration to 0
QK_MOUSE_ACCELERATION_1MS_ACL1Set mouse acceleration to 1
QK_MOUSE_ACCELERATION_2MS_ACL2Set mouse acceleration to 2

Configuring mouse keys

Mouse keys supports three different modes to move the cursor:

The same principle applies to scrolling, in most modes.

Configuration options that are times, intervals or delays are given in milliseconds. Scroll speed is given as multiples of the default scroll step. For example, a scroll speed of 8 means that each scroll action covers 8 times the length of the default scroll step as defined by your operating system or application.

Accelerated mode

This is the default mode. You can adjust the cursor and scrolling acceleration using the following settings in your keymap’s config.h file:

DefineDefaultDescription
MOUSEKEY_DELAY10Delay between pressing a movement key and cursor movement
MOUSEKEY_INTERVAL20Time between cursor movements in milliseconds
MOUSEKEY_MOVE_DELTA8Step size
MOUSEKEY_MAX_SPEED10Maximum cursor speed at which acceleration stops
MOUSEKEY_TIME_TO_MAX30Time until maximum cursor speed is reached
MOUSEKEY_WHEEL_DELAY10Delay between pressing a wheel key and wheel movement
MOUSEKEY_WHEEL_INTERVAL80Time between wheel movements
MOUSEKEY_WHEEL_DELTA1Wheel movement step size
MOUSEKEY_WHEEL_MAX_SPEED8Maximum number of scroll steps per scroll action
MOUSEKEY_WHEEL_TIME_TO_MAX40Time until maximum scroll speed is reached

Tips:

Cursor acceleration uses the same algorithm as the X Window System MouseKeysAccel feature. You can read more about it on Wikipedia.

Kinetic Mode

This is an extension of the accelerated mode. The kinetic mode uses a quadratic curve on the cursor speed which allows precise movements at the beginning and allows to cover large distances by increasing cursor speed quickly thereafter. You can adjust the cursor and scrolling acceleration using the following settings in your keymap’s config.h file:

DefineDefaultDescription
MK_KINETIC_SPEEDundefinedEnable kinetic mode
MOUSEKEY_DELAY5Delay between pressing a movement key and cursor movement
MOUSEKEY_INTERVAL10Time between cursor movements in milliseconds
MOUSEKEY_MOVE_DELTA16Step size for accelerating from initial to base speed
MOUSEKEY_INITIAL_SPEED100Initial speed of the cursor in pixel per second
MOUSEKEY_BASE_SPEED5000Maximum cursor speed at which acceleration stops
MOUSEKEY_DECELERATED_SPEED400Decelerated cursor speed
MOUSEKEY_ACCELERATED_SPEED3000Accelerated cursor speed
MOUSEKEY_WHEEL_INITIAL_MOVEMENTS16Initial number of movements of the mouse wheel
MOUSEKEY_WHEEL_BASE_MOVEMENTS32Maximum number of movements at which acceleration stops
MOUSEKEY_WHEEL_ACCELERATED_MOVEMENTS48Accelerated wheel movements
MOUSEKEY_WHEEL_DECELERATED_MOVEMENTS8Decelerated wheel movements

Tips:

Constant mode

In this mode you can define multiple different speeds for both the cursor and the mouse wheel. There is no acceleration. MS_ACL0, MS_ACL1 and MS_ACL2 change the cursor and scroll speed to their respective setting.

You can choose whether speed selection is momentary or tap-to-select:

The default speeds from slowest to fastest are as follows:

To use constant speed mode, you must at least define MK_3_SPEED in your keymap’s config.h file:

c
#define MK_3_SPEED

To enable momentary mode, also define MK_MOMENTARY_ACCEL:

c
#define MK_MOMENTARY_ACCEL

Use the following settings if you want to adjust cursor movement or scrolling:

DefineDefaultDescription
MK_3_SPEEDNot definedEnable constant cursor speeds
MK_MOMENTARY_ACCELNot definedEnable momentary speed selection
MK_C_OFFSET_UNMOD16Cursor offset per movement (unmodified)
MK_C_INTERVAL_UNMOD16Time between cursor movements (unmodified)
MK_C_OFFSET_01Cursor offset per movement (MS_ACL0)
MK_C_INTERVAL_032Time between cursor movements (MS_ACL0)
MK_C_OFFSET_14Cursor offset per movement (MS_ACL1)
MK_C_INTERVAL_116Time between cursor movements (MS_ACL1)
MK_C_OFFSET_232Cursor offset per movement (MS_ACL2)
MK_C_INTERVAL_216Time between cursor movements (MS_ACL2)
MK_W_OFFSET_UNMOD1Scroll steps per scroll action (unmodified)
MK_W_INTERVAL_UNMOD40Time between scroll steps (unmodified)
MK_W_OFFSET_01Scroll steps per scroll action (MS_ACL0)
MK_W_INTERVAL_0360Time between scroll steps (MS_ACL0)
MK_W_OFFSET_11Scroll steps per scroll action (MS_ACL1)
MK_W_INTERVAL_1120Time between scroll steps (MS_ACL1)
MK_W_OFFSET_21Scroll steps per scroll action (MS_ACL2)
MK_W_INTERVAL_220Time between scroll steps (MS_ACL2)

Combined mode

This mode functions like Accelerated mode, however, you can hold MS_ACL0, MS_ACL1 and MS_ACL2 to momentarily (while held) set the cursor and scroll speeds to constant speeds. When no acceleration keys are held, this mode is identical to Accelerated mode, and can be modified using all of the relevant settings.

To use combined speed mode, you must at least define MK_COMBINED in your keymap’s config.h file:

c
#define MK_COMBINED

Inertia mode

This mode provides smooth motion, like sliding on ice. The cursor accelerates along a quadratic curve while a key is held, then glides to a stop after the key is released. Vertical and horizontal movements are tracked independently, so the cursor can move in many directions and make curves.

Cannot be used at the same time as Kinetic mode, Constant mode, or Combined mode.

Recommended settings in your keymap’s config.h file:

DefineDefaultDescription
MOUSEKEY_INERTIAundefinedEnable Inertia mode
MOUSEKEY_DELAY150Delay between pressing a movement key and cursor movement
MOUSEKEY_INTERVAL16Time between cursor movements in milliseconds (16 = 60fps)
MOUSEKEY_MAX_SPEED32Maximum cursor speed at which acceleration stops
MOUSEKEY_TIME_TO_MAX32Number of frames until maximum cursor speed is reached
MOUSEKEY_FRICTION24How quickly the cursor stops after releasing a key
MOUSEKEY_MOVE_DELTA1How much to move on first frame (1 strongly recommended)

Tips:

Overlapping mouse key control

When additional overlapping mouse key is pressed, the mouse cursor will continue in a new direction with the same acceleration. The following settings can be used to reset the acceleration with new overlapping keys for more precise control if desired:

DefineDefaultDescription
MOUSEKEY_OVERLAP_RESETundefinedEnables overlapping mouse key control
MOUSEKEY_OVERLAP_MOVE_DELTAMOUSEKEY_MOVE_DELTAStep size of reset movement acceleration
MOUSEKEY_OVERLAP_WHEEL_DELTAMOUSEKEY_WHEEL_DELTAStep size of reset mouse wheel acceleration
MOUSEKEY_OVERLAP_INTERVALMOUSEKEY_INTERVALReset time between cursor movements in milliseconds (Kinetic mode only)

TIP

This feature will not be applied on Inertial mode

Use with PS/2 Mouse and Pointing Device

Mouse keys button state is shared with PS/2 mouse and pointing device so mouse keys button presses can be used for clicks and drags.

', 56); diff --git a/assets/features_mouse_keys.md.D1QdpHqq.lean.js b/assets/features_mouse_keys.md.BO1Asbyn.lean.js similarity index 83% rename from assets/features_mouse_keys.md.D1QdpHqq.lean.js rename to assets/features_mouse_keys.md.BO1Asbyn.lean.js index b5f0d68e520..b8168706526 100644 --- a/assets/features_mouse_keys.md.D1QdpHqq.lean.js +++ b/assets/features_mouse_keys.md.BO1Asbyn.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Mouse keys","description":"","frontmatter":{},"headers":[],"relativePath":"features/mouse_keys.md","filePath":"features/mouse_keys.md","lastUpdated":null}'); const _sfc_main = { name: "features/mouse_keys.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 56); diff --git a/assets/features_oled_driver.md.CR0dEKlX.js b/assets/features_oled_driver.md.Dv1hbhxI.js similarity index 99% rename from assets/features_oled_driver.md.CR0dEKlX.js rename to assets/features_oled_driver.md.Dv1hbhxI.js index 3bf8c2ce0de..2b5fac5d6f3 100644 --- a/assets/features_oled_driver.md.CR0dEKlX.js +++ b/assets/features_oled_driver.md.Dv1hbhxI.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"OLED Driver","description":"","frontmatter":{},"headers":[],"relativePath":"features/oled_driver.md","filePath":"features/oled_driver.md","lastUpdated":null}'); const _sfc_main = { name: "features/oled_driver.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

OLED Driver

Supported Hardware

OLED modules using SSD1306, SH1106 or SH1107 driver ICs, communicating over I2C or SPI. Tested combinations:

ICSizePlatformNotes
SSD1306128x32AVRPrimary support
SSD1306128x64AVRVerified working
SSD1306128x32Arm
SSD1306128x64ArmVerified working
SH1106128x64AVRNo scrolling
SH110764x128AVRNo scrolling
SH110764x128ArmNo scrolling
SH1107128x128ArmNo scrolling

Hardware configurations using Arm-based microcontrollers or different sizes of OLED modules may be compatible, but are untested.

Usage

To enable the OLED feature, there are two steps. First, when compiling your keyboard, you'll need to add the following to your rules.mk:

make
OLED_ENABLE = yes

OLED type

OLED DriverSupported Device
ssd1306 (default)For both SSD1306, SH1106, and SH1107

e.g.

make
OLED_DRIVER = ssd1306
OLED Transport
i2c (default)Uses I2C for communication with the OLED panel
spiUses SPI for communication with the OLED panel

e.g.

make
OLED_TRANSPORT = i2c

Then in your keymap.c file, implement the OLED task call. This example assumes your keymap has three layers named _QWERTY, _FN and _ADJ:

c
#ifdef OLED_ENABLE\nbool oled_task_user(void) {\n    // Host Keyboard Layer Status\n    oled_write_P(PSTR("Layer: "), false);\n\n    switch (get_highest_layer(layer_state)) {\n        case _QWERTY:\n            oled_write_P(PSTR("Default\\n"), false);\n            break;\n        case _FN:\n            oled_write_P(PSTR("FN\\n"), false);\n            break;\n        case _ADJ:\n            oled_write_P(PSTR("ADJ\\n"), false);\n            break;\n        default:\n            // Or use the write_ln shortcut over adding '\\n' to the end of your string\n            oled_write_ln_P(PSTR("Undefined"), false);\n    }\n\n    // Host Keyboard LED Status\n    led_t led_state = host_keyboard_led_state();\n    oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR("    "), false);\n    oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR("    "), false);\n    oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR("    "), false);\n    \n    return false;\n}\n#endif

Logo Example

In the default font, certain ranges of characters are reserved for a QMK logo. To render this logo to the OLED screen, use the following code example:

c
static void render_logo(void) {\n    static const char PROGMEM qmk_logo[] = {\n        0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94,\n        0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4,\n        0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00\n    };\n\n    oled_write_P(qmk_logo, false);\n}\n\nbool oled_task_user(void) {\n    render_logo();\n    return false;\n}

TIP

The default font file is located at drivers/oled/glcdfont.c and its location can be overwritten with the OLED_FONT_H configuration option. Font file content can be edited with external tools such as Helix Font Editor and Logo Editor.

Buffer Read Example

For some purposes, you may need to read the current state of the OLED display buffer. The oled_read_raw function can be used to safely read bytes from the buffer.

In this example, calling fade_display in the oled_task_user function will slowly fade away whatever is on the screen by turning random pixels black over time.

c
//Setup some mask which can be or'd with bytes to turn off pixels\nconst uint8_t single_bit_masks[8] = {127, 191, 223, 239, 247, 251, 253, 254};\n\nstatic void fade_display(void) {\n    //Define the reader structure\n    oled_buffer_reader_t reader;\n    uint8_t buff_char;\n    if (random() % 30 == 0) {\n        srand(timer_read());\n        // Fetch a pointer for the buffer byte at index 0. The return structure\n        // will have the pointer and the number of bytes remaining from this\n        // index position if we want to perform a sequential read by\n        // incrementing the buffer pointer\n        reader = oled_read_raw(0);\n        //Loop over the remaining buffer and erase pixels as we go\n        for (uint16_t i = 0; i < reader.remaining_element_count; i++) {\n            //Get the actual byte in the buffer by dereferencing the pointer\n            buff_char = *reader.current_element;\n            if (buff_char != 0) {\n                oled_write_raw_byte(buff_char & single_bit_masks[rand() % 8], i);\n            }\n            //increment the pointer to fetch a new byte during the next loop\n            reader.current_element++;\n        }\n    }\n}

Other Examples

In split keyboards, it is very common to have two OLED displays that each render different content and are oriented or flipped differently. You can do this by switching which content to render by using the return value from is_keyboard_master() or is_keyboard_left() found in split_util.h, e.g:

c
#ifdef OLED_ENABLE\noled_rotation_t oled_init_user(oled_rotation_t rotation) {\n    if (!is_keyboard_master()) {\n        return OLED_ROTATION_180;  // flips the display 180 degrees if offhand\n    }\n\n    return rotation;\n}\n\nbool oled_task_user(void) {\n    if (is_keyboard_master()) {\n        render_status();  // Renders the current keyboard state (layer, lock, caps, scroll, etc)\n    } else {\n        render_logo();  // Renders a static logo\n        oled_scroll_left();  // Turns on scrolling\n    }\n    return false;\n}\n#endif

Render a message before booting into bootloader mode.

c
void oled_render_boot(bool bootloader) {\n    oled_clear();\n    for (int i = 0; i < 16; i++) {\n        oled_set_cursor(0, i);\n        if (bootloader) {\n            oled_write_P(PSTR("Awaiting New Firmware "), false);\n        } else {\n            oled_write_P(PSTR("Rebooting "), false);\n        }\n    }\n\n    oled_render_dirty(true);\n}\n\nbool shutdown_user(bool jump_to_bootloader) {\n    oled_render_boot(jump_to_bootloader);\n}

Basic Configuration

These configuration options should be placed in config.h. Example:

c
#define OLED_BRIGHTNESS 128
DefineDefaultDescription
OLED_BRIGHTNESS255The default brightness level of the OLED, from 0 to 255.
OLED_COLUMN_OFFSET0Shift output to the right this many pixels.
Useful for 128x64 displays centered on a 132x64 SH1106 IC.
OLED_DISPLAY_CLOCK0x80Set the display clock divide ratio/oscillator frequency.
OLED_FONT_H"glcdfont.c"The font code file to use for custom fonts
OLED_FONT_START0The starting character index for custom fonts
OLED_FONT_END223The ending character index for custom fonts
OLED_FONT_WIDTH6The font width
OLED_FONT_HEIGHT8The font height (untested)
OLED_ICOLED_IC_SSD1306Set to OLED_IC_SH1106 or OLED_IC_SH1107 if the corresponding controller chip is used.
OLED_FADE_OUTNot definedEnables fade out animation. Use together with OLED_TIMEOUT.
OLED_FADE_OUT_INTERVAL0The speed of fade out animation, from 0 to 15. Larger values are slower.
OLED_SCROLL_TIMEOUT0Scrolls the OLED screen after 0ms of OLED inactivity. Helps reduce OLED Burn-in. Set to 0 to disable.
OLED_SCROLL_TIMEOUT_RIGHTNot definedScroll timeout direction is right when defined, left when undefined.
OLED_TIMEOUT60000Turns off the OLED screen after 60000ms of screen update inactivity. Helps reduce OLED Burn-in. Set to 0 to disable.
OLED_UPDATE_INTERVAL0 (50 for split keyboards)Set the time interval for updating the OLED display in ms. This will improve the matrix scan rate.
OLED_UPDATE_PROCESS_LIMIT1Set the number of dirty blocks to render per loop. Increasing may degrade performance.

I2C Configuration

DefineDefaultDescription
OLED_DISPLAY_ADDRESS0x3CThe i2c address of the OLED Display

SPI Configuration

DefineDefaultDescription
OLED_DC_PINRequiredThe pin used for the DC connection of the OLED Display.
OLED_CS_PINRequiredThe pin used for the CS connection of the OLED Display.
OLED_RST_PINNot definedThe pin used for the RST connection of the OLED Display (may be left undefined if the RST pin is not connected).
OLED_SPI_MODE3 (default)The SPI Mode for the OLED Display (not typically changed).
OLED_SPI_DIVISOR2 (default)The SPI Multiplier to use for the OLED Display.

128x64 & Custom sized OLED Displays

The default display size for this feature is 128x32, and the defaults are set with that in mind. However, there are a number of additional presets for common sizes that we have added. You can define one of these values to use the presets. If your display doesn't match one of these presets, you can define OLED_DISPLAY_CUSTOM to manually specify all of the values.

DefineDefaultDescription
OLED_DISPLAY_128X64Not definedChanges the display defines for use with 128x64 displays.
OLED_DISPLAY_64X32Not definedChanges the display defines for use with 64x32 displays.
OLED_DISPLAY_64X48Not definedChanges the display defines for use with 64x48 displays.
OLED_DISPLAY_64X128Not definedChanges the display defines for use with 64x128 displays.
OLED_DISPLAY_128X128Not definedChanges the display defines for use with 128x128 displays.
OLED_DISPLAY_CUSTOMNot definedChanges the display defines for use with custom displays.
Requires user to implement the below defines.

WARNING

64x128 and 128x128 displays default to the SH1107 IC type, as these heights are not supported by the other IC types.

DefineDefaultDescription
OLED_DISPLAY_WIDTH128The width of the OLED display.
OLED_DISPLAY_HEIGHT32The height of the OLED display.
OLED_MATRIX_SIZE512The local buffer size to allocate.
(OLED_DISPLAY_HEIGHT / 8 * OLED_DISPLAY_WIDTH).
OLED_BLOCK_TYPEuint16_tThe unsigned integer type to use for dirty rendering.
OLED_BLOCK_COUNT16The number of blocks the display is divided into for dirty rendering.
(sizeof(OLED_BLOCK_TYPE) * 8).
OLED_BLOCK_SIZE32The size of each block for dirty rendering
(OLED_MATRIX_SIZE / OLED_BLOCK_COUNT).
OLED_COM_PINSCOM_PINS_SEQHow the SSD1306 chip maps it's memory to display.
Options are COM_PINS_SEQ, COM_PINS_ALT, COM_PINS_SEQ_LR, & COM_PINS_ALT_LR.
OLED_COM_PIN_COUNTNot definedNumber of COM pins supported by the controller.
If not defined, the value appropriate for the defined OLED_IC is used.
OLED_COM_PIN_OFFSET0Number of the first COM pin used by the OLED matrix.
OLED_SOURCE_MAP{ 0, ... N }Precalculated source array to use for mapping source buffer to target OLED memory in 90 degree rendering.
OLED_TARGET_MAP{ 24, ... N }Precalculated target array to use for mapping source buffer to target OLED memory in 90 degree rendering.

90 Degree Rotation - Technical Mumbo Jumbo

c
// OLED Rotation enum values are flags\ntypedef enum {\n    OLED_ROTATION_0   = 0,\n    OLED_ROTATION_90  = 1,\n    OLED_ROTATION_180 = 2,\n    OLED_ROTATION_270 = 3, // OLED_ROTATION_90 | OLED_ROTATION_180\n} oled_rotation_t;

OLED displays driven by SSD1306, SH1106 or SH1107 drivers only natively support in hardware 0 degree and 180 degree rendering. This feature is done in software and not free. Using this feature will increase the time to calculate what data to send over i2c to the OLED. If you are strapped for cycles, this can cause keycodes to not register. In testing however, the rendering time on an ATmega32U4 board only went from 2ms to 5ms and keycodes not registering was only noticed once we hit 15ms.

90 degree rotation is achieved by using bitwise operations to rotate each 8 block of memory and uses two precalculated arrays to remap buffer memory to OLED memory. The memory map defines are precalculated for remap performance and are calculated based on the display height, width, and block size. For example, in the 128x32 implementation with a uint8_t block type, we have a 64 byte block size. This gives us eight 8 byte blocks that need to be rotated and rendered. The OLED renders horizontally two 8 byte blocks before moving down a page, e.g:

01
23
45
67

However the local buffer is stored as if it was Height x Width display instead of Width x Height, e.g:

37
26
15
04

So those precalculated arrays just index the memory offsets in the order in which each one iterates its data.

Rotation on SH1106 and SH1107 is noticeably less efficient than on SSD1306, because these controllers do not support the “horizontal addressing mode”, which allows transferring the data for the whole rotated block at once; instead, separate address setup commands for every page in the block are required. The screen refresh time for SH1107 is therefore about 45% higher than for a same size screen with SSD1306 when using STM32 MCUs (on AVR the slowdown is about 20%, because the code which actually rotates the bitmap consumes more time).

OLED API

c
// OLED Rotation enum values are flags\ntypedef enum {\n    OLED_ROTATION_0   = 0,\n    OLED_ROTATION_90  = 1,\n    OLED_ROTATION_180 = 2,\n    OLED_ROTATION_270 = 3, // OLED_ROTATION_90 | OLED_ROTATION_180\n} oled_rotation_t;\n\n// Initialize the oled display, rotating the rendered output based on the define passed in.\n// Returns true if the OLED was initialized successfully\nbool oled_init(oled_rotation_t rotation);\n\n// Called at the start of oled_init, weak function overridable by the user\n// rotation - the value passed into oled_init\n// Return new oled_rotation_t if you want to override default rotation\noled_rotation_t oled_init_kb(oled_rotation_t rotation);\noled_rotation_t oled_init_user(oled_rotation_t rotation);\n\n// Send commands/data to screen\nbool oled_send_cmd(const uint8_t *data, uint16_t size);\nbool oled_send_cmd_P(const uint8_t *data, uint16_t size);\nbool oled_send_data(const uint8_t *data, uint16_t size);\n\n// Clears the display buffer, resets cursor position to 0, and sets the buffer to dirty for rendering\nvoid oled_clear(void);\n\n// Alias to oled_render_dirty to avoid a change in api.\n#define oled_render() oled_render_dirty(false)\n\n// Renders all dirty blocks to the display at one time or a subset depending on the value of\n// all.\nvoid oled_render_dirty(bool all);\n\n// Moves cursor to character position indicated by column and line, wraps if out of bounds\n// Max column denoted by 'oled_max_chars()' and max lines by 'oled_max_lines()' functions\nvoid oled_set_cursor(uint8_t col, uint8_t line);\n\n// Advances the cursor to the next page, writing ' ' if true\n// Wraps to the beginning when out of bounds\nvoid oled_advance_page(bool clearPageRemainder);\n\n// Moves the cursor forward 1 character length\n// Advance page if there is not enough room for the next character\n// Wraps to the beginning when out of bounds\nvoid oled_advance_char(void);\n\n// Writes a single character to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\n// Main handler that writes character data to the display buffer\nvoid oled_write_char(const char data, bool invert);\n\n// Writes a string to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\nvoid oled_write(const char *data, bool invert);\n\n// Writes a string to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\n// Advances the cursor to the next page, wiring ' ' to the remainder of the current page\nvoid oled_write_ln(const char *data, bool invert);\n\n// Pans the buffer to the right (or left by passing true) by moving contents of the buffer\n// Useful for moving the screen in preparation for new drawing\nvoid oled_pan(bool left);\n\n// Returns a pointer to the requested start index in the buffer plus remaining\n// buffer length as struct\noled_buffer_reader_t oled_read_raw(uint16_t start_index);\n\n// Writes a string to the buffer at current cursor position\nvoid oled_write_raw(const char *data, uint16_t size);\n\n// Writes a single byte into the buffer at the specified index\nvoid oled_write_raw_byte(const char data, uint16_t index);\n\n// Sets a specific pixel on or off\n// Coordinates start at top-left and go right and down for positive x and y\nvoid oled_write_pixel(uint8_t x, uint8_t y, bool on);\n\n#if defined(__AVR__)\n// Writes a PROGMEM string to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\n// Remapped to call 'void oled_write(const char *data, bool invert);' on ARM\nvoid oled_write_P(const char *data, bool invert);\n\n// Writes a PROGMEM string to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\n// Advances the cursor to the next page, wiring ' ' to the remainder of the current page\n// Remapped to call 'void oled_write_ln(const char *data, bool invert);' on ARM\nvoid oled_write_ln_P(const char *data, bool invert);\n\n// Writes a PROGMEM string to the buffer at current cursor position\nvoid oled_write_raw_P(const char *data, uint16_t size);\n#else\n# define oled_write_P(data, invert) oled_write(data, invert)\n# define oled_write_ln_P(data, invert) oled_write_ln(data, invert)\n# define oled_write_raw_P(data, size) oled_write_raw(data, size)\n#endif // defined(__AVR__)\n\n// Can be used to manually turn on the screen if it is off\n// Returns true if the screen was on or turns on\nbool oled_on(void);\n\n// Can be used to manually turn off the screen if it is on\n// Returns true if the screen was off or turns off\nbool oled_off(void);\n\n// Returns true if the oled is currently on, false if it is\n// not\nbool is_oled_on(void);\n\n// Sets the brightness level of the display\nuint8_t oled_set_brightness(uint8_t level);\n\n// Gets the current brightness level of the display\nuint8_t oled_get_brightness(void);\n\n// Basically it's oled_render, but with timeout management and oled_task_user calling!\nvoid oled_task(void);\n\n// Called at the start of oled_task, weak function overridable by the user\nbool oled_task_kb(void);\nbool oled_task_user(void);\n\n// Set the specific 8 lines rows of the screen to scroll.\n// 0 is the default for start, and 7 for end, which is the entire\n// height of the screen.  For 128x32 screens, rows 4-7 are not used.\nvoid oled_scroll_set_area(uint8_t start_line, uint8_t end_line);\n\n// Sets scroll speed, 0-7, fastest to slowest. Default is three.\n// Does not take effect until scrolling is either started or restarted\n// the ssd1306 supports 8 speeds with the delay\n// listed below between each frame of the scrolling effect\n// 0=2, 1=3, 2=4, 3=5, 4=25, 5=64, 6=128, 7=256\nvoid oled_scroll_set_speed(uint8_t speed);\n\n// Begin scrolling the entire display right\n// Returns true if the screen was scrolling or starts scrolling\n// NOTE: display contents cannot be changed while scrolling\nbool oled_scroll_right(void);\n\n// Begin scrolling the entire display left\n// Returns true if the screen was scrolling or starts scrolling\n// NOTE: display contents cannot be changed while scrolling\nbool oled_scroll_left(void);\n\n// Turns off display scrolling\n// Returns true if the screen was not scrolling or stops scrolling\nbool oled_scroll_off(void);\n\n// Returns true if the oled is currently scrolling, false if it is\n// not\nbool is_oled_scrolling(void);\n\n// Inverts the display\n// Returns true if the screen was or is inverted\nbool oled_invert(bool invert);\n\n// Returns the maximum number of characters that will fit on a line\nuint8_t oled_max_chars(void);\n\n// Returns the maximum number of lines that will fit on the OLED\nuint8_t oled_max_lines(void);

WARNING

Scrolling is unsupported on the SH1106 and SH1107.

WARNING

Scrolling does not work properly on the SSD1306 if the display width is smaller than 128.

SSD1306.h Driver Conversion Guide

Old APIRecommended New API
struct CharacterMatrixremoved - delete all references
iota_gfx_initoled_init
iota_gfx_onoled_on
iota_gfx_offoled_off
iota_gfx_flusholed_render
iota_gfx_write_charoled_write_char
iota_gfx_writeoled_write
iota_gfx_write_Poled_write_P
iota_gfx_clear_screenoled_clear
matrix_clearremoved - delete all references
matrix_write_char_inneroled_write_char
matrix_write_charoled_write_char
matrix_writeoled_write
matrix_write_lnoled_write_ln
matrix_write_Poled_write_P
matrix_write_ln_Poled_write_ln_P
matrix_renderoled_render
iota_gfx_taskoled_task
iota_gfx_task_useroled_task_user
', 58); diff --git a/assets/features_oled_driver.md.CR0dEKlX.lean.js b/assets/features_oled_driver.md.Dv1hbhxI.lean.js similarity index 83% rename from assets/features_oled_driver.md.CR0dEKlX.lean.js rename to assets/features_oled_driver.md.Dv1hbhxI.lean.js index 95363369862..a5f9c7c1266 100644 --- a/assets/features_oled_driver.md.CR0dEKlX.lean.js +++ b/assets/features_oled_driver.md.Dv1hbhxI.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"OLED Driver","description":"","frontmatter":{},"headers":[],"relativePath":"features/oled_driver.md","filePath":"features/oled_driver.md","lastUpdated":null}'); const _sfc_main = { name: "features/oled_driver.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 58); diff --git a/assets/features_os_detection.md.D95X8bah.js b/assets/features_os_detection.md.jSTpkLgf.js similarity index 99% rename from assets/features_os_detection.md.D95X8bah.js rename to assets/features_os_detection.md.jSTpkLgf.js index 50f394581a3..9e3f0688af0 100644 --- a/assets/features_os_detection.md.D95X8bah.js +++ b/assets/features_os_detection.md.jSTpkLgf.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"OS Detection","description":"","frontmatter":{},"headers":[],"relativePath":"features/os_detection.md","filePath":"features/os_detection.md","lastUpdated":null}'); const _sfc_main = { name: "features/os_detection.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

OS Detection

This feature makes a best guess at the host OS based on OS specific behavior during USB setup. It may not always get the correct OS, and shouldn't be relied on as for critical functionality.

Using it you can have OS specific key mappings or combos which work differently on different devices.

It is available for keyboards which use ChibiOS, LUFA and V-USB.

Usage

In your rules.mk add:

make
OS_DETECTION_ENABLE = yes

It will automatically include the required headers file. It declares os_variant_t detected_host_os(void); which you can call to get detected OS.

It returns one of the following values:

c
enum {\n    OS_UNSURE,\n    OS_LINUX,\n    OS_WINDOWS,\n    OS_MACOS,\n    OS_IOS,\n} os_variant_t;

TIP

Note that it takes some time after firmware is booted to detect the OS.

This time is quite short, probably hundreds of milliseconds, but this data may be not ready in keyboard and layout setup functions which run very early during firmware startup.

Callbacks

If you want to perform custom actions when the OS is detected, then you can use the process_detected_host_os_kb function on the keyboard level source file, or process_detected_host_os_user function in the user keymap.c.

c
bool process_detected_host_os_kb(os_variant_t detected_os) {\n    if (!process_detected_host_os_user(detected_os)) {\n        return false;\n    }\n    switch (detected_os) {\n        case OS_MACOS:\n        case OS_IOS:\n            rgb_matrix_set_color_all(RGB_WHITE);\n            break;\n        case OS_WINDOWS:\n            rgb_matrix_set_color_all(RGB_BLUE);\n            break;\n        case OS_LINUX:\n            rgb_matrix_set_color_all(RGB_ORANGE);\n            break;\n        case OS_UNSURE:\n            rgb_matrix_set_color_all(RGB_RED);\n            break;\n    }\n    \n    return true;\n}

OS detection stability

The OS detection is currently handled while the USB device descriptor is being assembled. The process is done in steps, generating a number of intermediate results until it stabilizes. We therefore resort to debouncing the result until it has been stable for a given amount of milliseconds. This amount can be configured, in case your board is not stable within the default debouncing time of 200ms.

Configuration Options

Troubleshooting

Some KVMs and USB switches may cause issues when the OS detection is turned on. Here is a list of common issues and how to fix them:

Debug

If OS is guessed incorrectly, you may want to collect data about USB setup packets to refine the detection logic.

To do so in your config.h add:

c
#define OS_DETECTION_DEBUG_ENABLE

And in your rules.mk add:

make
CONSOLE_ENABLE = yes

And also include "os_detection.h" in your keymap.c.

Then you can define custom keycodes to store data about USB setup packets in EEPROM (persistent memory) and to print it later on host where you can run qmk console:

c
enum custom_keycodes {\n    STORE_SETUPS = SAFE_RANGE,\n    PRINT_SETUPS,\n};\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case STORE_SETUPS:\n            if (record->event.pressed) {\n                store_setups_in_eeprom();\n            }\n            return false;\n        case PRINT_SETUPS:\n            if (record->event.pressed) {\n                print_stored_setups();\n            }\n            return false;\n    }\n}

Then please open an issue on Github with this information and tell what OS was not detected correctly and if you have any intermediate devices between keyboard and your computer.

Credits

Original idea is coming from FingerprintUSBHost project.

', 34); diff --git a/assets/features_os_detection.md.D95X8bah.lean.js b/assets/features_os_detection.md.jSTpkLgf.lean.js similarity index 83% rename from assets/features_os_detection.md.D95X8bah.lean.js rename to assets/features_os_detection.md.jSTpkLgf.lean.js index eb9e54cf016..5b43ea32af8 100644 --- a/assets/features_os_detection.md.D95X8bah.lean.js +++ b/assets/features_os_detection.md.jSTpkLgf.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"OS Detection","description":"","frontmatter":{},"headers":[],"relativePath":"features/os_detection.md","filePath":"features/os_detection.md","lastUpdated":null}'); const _sfc_main = { name: "features/os_detection.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 34); diff --git a/assets/features_pointing_device.md.DXePd09M.js b/assets/features_pointing_device.md.Ca3kOf-A.js similarity index 99% rename from assets/features_pointing_device.md.DXePd09M.js rename to assets/features_pointing_device.md.Ca3kOf-A.js index c8f1c68d7ac..0fabde795b7 100644 --- a/assets/features_pointing_device.md.DXePd09M.js +++ b/assets/features_pointing_device.md.Ca3kOf-A.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Pointing Device","description":"","frontmatter":{},"headers":[],"relativePath":"features/pointing_device.md","filePath":"features/pointing_device.md","lastUpdated":null}'); const _sfc_main = { name: "features/pointing_device.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Pointing Device

Pointing Device is a generic name for a feature intended to be generic: moving the system pointer around. There are certainly other options for it - like mousekeys - but this aims to be easily modifiable and hardware driven. You can implement custom keys to control functionality, or you can gather information from other peripherals and insert it directly here - let QMK handle the processing for you.

To enable Pointing Device, add the following line in your rules.mk and specify one of the driver options below.

make
POINTING_DEVICE_ENABLE = yes

Sensor Drivers

There are a number of sensors that are supported by default. Note that only one sensor can be enabled by POINTING_DEVICE_DRIVER at a time. If you need to enable more than one sensor, then you need to implement it manually, using the custom driver.

ADNS 5050 Sensor

To use the ADNS 5050 sensor, add this to your rules.mk

make
POINTING_DEVICE_DRIVER = adns5050

The ADNS 5050 sensor uses a serial type protocol for communication, and requires an additional light source.

Setting (config.h)DescriptionDefault
ADNS5050_SCLK_PIN(Required) The pin connected to the clock pin of the sensor.POINTING_DEVICE_SCLK_PIN
ADNS5050_SDIO_PIN(Required) The pin connected to the data pin of the sensor.POINTING_DEVICE_SDIO_PIN
ADNS5050_CS_PIN(Required) The pin connected to the Chip Select pin of the sensor.POINTING_DEVICE_CS_PIN

The CPI range is 125-1375, in increments of 125. Defaults to 500 CPI.

ADNS 9800 Sensor

To use the ADNS 9800 sensor, add this to your rules.mk

make
POINTING_DEVICE_DRIVER = adns9800

The ADNS 9800 is an SPI driven optical sensor, that uses laser output for surface tracking.

Setting (config.h)DescriptionDefault
ADNS9800_CLOCK_SPEED(Optional) Sets the clock speed that the sensor runs at.2000000
ADNS9800_SPI_LSBFIRST(Optional) Sets the Least/Most Significant Byte First setting for SPI.false
ADNS9800_SPI_MODE(Optional) Sets the SPI Mode for the sensor.3
ADNS9800_SPI_DIVISOR(Optional) Sets the SPI Divisor used for SPI communication.varies
ADNS9800_CS_PIN(Required) Sets the Chip Select pin connected to the sensor.POINTING_DEVICE_CS_PIN

The CPI range is 800-8200, in increments of 200. Defaults to 1800 CPI.

Analog Joystick

To use an analog joystick to control the pointer, add this to your rules.mk

make
POINTING_DEVICE_DRIVER = analog_joystick

The Analog Joystick is an analog (ADC) driven sensor. There are a variety of joysticks that you can use for this.

Setting (config.h)DescriptionDefault
ANALOG_JOYSTICK_X_AXIS_PIN(Required) The pin used for the vertical/X axis.not defined
ANALOG_JOYSTICK_Y_AXIS_PIN(Required) The pin used for the horizontal/Y axis.not defined
ANALOG_JOYSTICK_AXIS_MIN(Optional) Sets the lower range to be considered movement.0
ANALOG_JOYSTICK_AXIS_MAX(Optional) Sets the upper range to be considered movement.1023
ANALOG_JOYSTICK_AUTO_AXIS(Optional) Sets ranges to be considered movement automatically.not defined
ANALOG_JOYSTICK_SPEED_REGULATOR(Optional) The divisor used to slow down movement. (lower makes it faster)20
ANALOG_JOYSTICK_READ_INTERVAL(Optional) The interval in milliseconds between reads.10
ANALOG_JOYSTICK_SPEED_MAX(Optional) The maximum value used for motion.2
ANALOG_JOYSTICK_CLICK_PIN(Optional) The pin wired up to the press switch of the analog stick.not defined
ANALOG_JOYSTICK_WEIGHTS(Optional) Use custom weights for lever positions.not defined
ANALOG_JOYSTICK_CUTOFF(Optional) Cut off movement when joystick returns to start position.not defined

If ANALOG_JOYSTICK_AUTO_AXIS is used, then ANALOG_JOYSTICK_AXIS_MIN and ANALOG_JOYSTICK_AXIS_MAX are ignored.

By default analog joystick implementation uses x^2 weighting for lever positions. ANALOG_JOYSTICK_WEIGHTS allows to experiment with different configurations that might feel better.

E.g. This is weights for ((x-0.4)^3+0.064)/0.282:

c
#define ANALOG_JOYSTICK_WEIGHTS {0,2,4,5,7,8,9,10,12,13,14,15,15,16,17,18,18,19,19,20,20,21,21,21,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,25,25,25,26,26,26,27,28,28,29,29,30,31,32,33,34,35,36,37,38,40,41,43,44,46,48,49,51,53,56,58,60,62,65,68,70,73,76,79,82,85,89,92,96,100}

You can use following JS code to generate weights for different formulas:

js
JSON.stringify(Array.from(Array(101).keys()).map(x => Math.ceil((((x/100-0.4)**3+0.064)/0.282*100))))

Azoteq IQS5XX Trackpad

To use a Azoteq IQS5XX trackpad, add this to your rules.mk:

make
POINTING_DEVICE_DRIVER = azoteq_iqs5xx

This supports the IQS525, IQS550 and IQS572 controllers, with the latter two being used in the TPS43 and TPS65 trackpads.

Device settings

Specific device profiles are provided which set the required values for dimensions and resolution.

SettingDescription
AZOTEQ_IQS5XX_TPS43(Pick One) Sets resolution/mm to TPS43 specifications.
AZOTEQ_IQS5XX_TPS65(Pick One) Sets resolution/mm to TPS65 specifications.

TIP

If using one of the above defines you can skip to gesture settings.

SettingDescriptionDefault
AZOTEQ_IQS5XX_WIDTH_MM(Required) Width of the trackpad sensor in millimeters.not defined
AZOTEQ_IQS5XX_HEIGHT_MM(Required) Height of the trackpad sensor in millimeters.not defined
AZOTEQ_IQS5XX_RESOLUTION_X(Optional) Specify X resolution for CPI calculation.not defined
AZOTEQ_IQS5XX_RESOLUTION_Y(Optional) Specify Y resolution for CPI calculation.not defined

AZOTEQ_IQS5XX_RESOLUTION_X/Y fall back resolutions are provided within the driver based on controller model.

I2C SettingDescriptionDefault
AZOTEQ_IQS5XX_ADDRESS(Optional) Sets the I2C Address for the Azoteq trackpad0xE8
AZOTEQ_IQS5XX_TIMEOUT_MS(Optional) The timeout for i2c communication with in milliseconds.10

Gesture settings

SettingDescriptionDefault
AZOTEQ_IQS5XX_TAP_ENABLE(Optional) Enable single finger tap. (Left click)true
AZOTEQ_IQS5XX_TWO_FINGER_TAP_ENABLE(Optional) Enable two finger tap. (Right click)true
AZOTEQ_IQS5XX_PRESS_AND_HOLD_ENABLE(Optional) Emulates holding left click to select text.false
AZOTEQ_IQS5XX_SWIPE_X_ENABLE(Optional) Enable swipe gestures X+ (Mouse Button 5) / X- (Mouse Button 4)false
AZOTEQ_IQS5XX_SWIPE_Y_ENABLE(Optional) Enable swipe gestures Y+ (Mouse Button 3) / Y- (Mouse Button 6)false
AZOTEQ_IQS5XX_ZOOM_ENABLE(Optional) Enable zoom gestures Zoom Out (Mouse Button 7) / Zoom In (Mouse Button 8)false
AZOTEQ_IQS5XX_SCROLL_ENABLE(Optional) Enable scrolling using two fingers.true
AZOTEQ_IQS5XX_TAP_TIME(Optional) Maximum time in ms for tap to be registered.150
AZOTEQ_IQS5XX_TAP_DISTANCE(Optional) Maximum deviation in pixels before single tap is no longer valid.25
AZOTEQ_IQS5XX_HOLD_TIME(Optional) Minimum time in ms for press and hold.300
AZOTEQ_IQS5XX_SWIPE_INITIAL_TIME(Optional) Maximum time to travel initial distance before swipe is registered.150
AZOTEQ_IQS5XX_SWIPE_INITIAL_DISTANCE(Optional) Minimum travel in pixels before swipe is registered.300
AZOTEQ_IQS5XX_SWIPE_CONSECUTIVE_TIME(Optional) Maximum time to travel consecutive distance before swipe is registered.0
AZOTEQ_IQS5XX_SWIPE_CONSECUTIVE_DISTANCE(Optional) Minimum travel in pixels before a consecutive swipe is registered.2000
AZOTEQ_IQS5XX_SCROLL_INITIAL_DISTANCE(Optional) Minimum travel in pixels before scroll is registered.50
AZOTEQ_IQS5XX_ZOOM_INITIAL_DISTANCE(Optional) Minimum travel in pixels before zoom is registered.50
AZOTEQ_IQS5XX_ZOOM_CONSECUTIVE_DISTANCE(Optional) Maximum time to travel zoom distance before zoom is registered.25

Rotation settings

SettingDescriptionDefault
AZOTEQ_IQS5XX_ROTATION_90(Optional) Configures hardware for 90 degree rotation.not defined
AZOTEQ_IQS5XX_ROTATION_180(Optional) Configures hardware for 180 degree rotation.not defined
AZOTEQ_IQS5XX_ROTATION_270(Optional) Configures hardware for 270 degree rotation.not defined

Cirque Trackpad

To use the Cirque Trackpad sensor, add this to your rules.mk:

make
POINTING_DEVICE_DRIVER = cirque_pinnacle_i2c

or

make
POINTING_DEVICE_DRIVER = cirque_pinnacle_spi

This supports the Cirque Pinnacle 1CA027 Touch Controller, which is used in the TM040040, TM035035 and the TM023023 trackpads. These are I2C or SPI compatible, and both configurations are supported.

Common settings

SettingDescriptionDefault
CIRQUE_PINNACLE_DIAMETER_MM(Optional) Diameter of the trackpad sensor in millimeters.40
CIRQUE_PINNACLE_ATTENUATION(Optional) Sets the attenuation of the sensor data.EXTREG__TRACK_ADCCONFIG__ADC_ATTENUATE_4X
CIRQUE_PINNACLE_CURVED_OVERLAY(Optional) Applies settings tuned for curved overlay.not defined
CIRQUE_PINNACLE_POSITION_MODE(Optional) Mode of operation.not defined
CIRQUE_PINNACLE_SKIP_SENSOR_CHECK(Optional) Skips sensor presence checknot defined

CIRQUE_PINNACLE_ATTENUATION is a measure of how much data is suppressed in regards to sensitivity. The higher the attenuation, the less sensitive the touchpad will be.

Default attenuation is set to 4X, although if you are using a thicker overlay (such as the curved overlay) you will want a lower attenuation such as 2X. The possible values are:

CIRQUE_PINNACLE_POSITION_MODE can be CIRQUE_PINNACLE_ABSOLUTE_MODE or CIRQUE_PINNACLE_RELATIVE_MODE. Modes differ in supported features/gestures.

I2C SettingDescriptionDefault
CIRQUE_PINNACLE_ADDR(Required) Sets the I2C Address for the Cirque Trackpad0x2A
CIRQUE_PINNACLE_TIMEOUT(Optional) The timeout for i2c communication with the trackpad in milliseconds.20
SPI SettingDescriptionDefault
CIRQUE_PINNACLE_CLOCK_SPEED(Optional) Sets the clock speed that the sensor runs at.1000000
CIRQUE_PINNACLE_SPI_LSBFIRST(Optional) Sets the Least/Most Significant Byte First setting for SPI.false
CIRQUE_PINNACLE_SPI_MODE(Optional) Sets the SPI Mode for the sensor.1
CIRQUE_PINNACLE_SPI_DIVISOR(Optional) Sets the SPI Divisor used for SPI communication.varies
CIRQUE_PINNACLE_SPI_CS_PIN(Required) Sets the Chip Select pin connected to the sensor.POINTING_DEVICE_CS_PIN

Default Scaling is 1024. Actual CPI depends on trackpad diameter.

Also see the POINTING_DEVICE_TASK_THROTTLE_MS, which defaults to 10ms when using Cirque Pinnacle, which matches the internal update rate of the position registers (in standard configuration). Advanced configuration for pen/stylus usage might require lower values.

Absolute mode settings

SettingDescriptionDefault
CIRQUE_PINNACLE_X_LOWER(Optional) The minimum reachable X value on the sensor.127
CIRQUE_PINNACLE_X_UPPER(Optional) The maximum reachable X value on the sensor.1919
CIRQUE_PINNACLE_Y_LOWER(Optional) The minimum reachable Y value on the sensor.63
CIRQUE_PINNACLE_Y_UPPER(Optional) The maximum reachable Y value on the sensor.1471
CIRQUE_PINNACLE_REACHABLE_CALIBRATION(Optional) Enable console messages to aide in calibrating above values.not defined

Absolute mode gestures

Gesture SettingDescriptionDefault
CIRQUE_PINNACLE_TAP_ENABLE(Optional) Enable tap to click. This currently only works on the master side.not defined
CIRQUE_PINNACLE_TAPPING_TERM(Optional) Length of time that a touch can be to be considered a tap.TAPPING_TERM/200
CIRQUE_PINNACLE_TOUCH_DEBOUNCE(Optional) Length of time that a touch can be to be considered a tap.TAPPING_TERM/200

POINTING_DEVICE_GESTURES_SCROLL_ENABLE in this mode enables circular scroll. Touch originating in outer ring can trigger scroll by moving along the perimeter. Near side triggers vertical scroll and far side triggers horizontal scroll.

Additionally, POINTING_DEVICE_GESTURES_CURSOR_GLIDE_ENABLE is supported in this mode.

Relative mode gestures

Gesture Setting (config.h)DescriptionDefault
CIRQUE_PINNACLE_TAP_ENABLE(Optional) Enable tap to "left click". Works on both sides of a split keyboard.not defined
CIRQUE_PINNACLE_SECONDARY_TAP_ENABLE(Optional) Tap in upper right corner (half of the finger needs to be outside of the trackpad) of the trackpad will result in "right click". CIRQUE_PINNACLE_TAP_ENABLE must be enabled.not defined

Tapping term and debounce are not configurable in this mode since it's handled by trackpad internally.

POINTING_DEVICE_GESTURES_SCROLL_ENABLE in this mode enables side scroll. Touch originating on the right side can trigger vertical scroll (IntelliSense trackpad style).

PAW 3204 Sensor

To use the paw 3204 sensor, add this to your rules.mk

make
POINTING_DEVICE_DRIVER = paw3204

The paw 3204 sensor uses a serial type protocol for communication, and requires an additional light source.

Setting (config.h)DescriptionDefault
PAW3204_SCLK_PIN(Required) The pin connected to the clock pin of the sensor.POINTING_DEVICE_SCLK_PIN
PAW3204_SDIO_PIN(Required) The pin connected to the data pin of the sensor.POINTING_DEVICE_SDIO_PIN

The CPI range is 400-1600, with supported values of (400, 500, 600, 800, 1000, 1200 and 1600). Defaults to 1000 CPI.

PAW-3222 Sensor

To use the PAW-3222 sensor, add this to your rules.mk:

make
POINTING_DEVICE_DRIVER = paw3222

The following pins must be defined in config.h:

Setting (config.h)DescriptionDefault
PAW3222_CS_PIN(Required) The pin connected to the chip select pin of the sensor.POINTING_DEVICE_CS_PIN
PAW3222_SPI_DIVISOR(Required) The SPI clock divisor. This is dependent on your MCU.not defined

The CPI range is up to 4,000. Defaults to 1,000 CPI.

Pimoroni Trackball

To use the Pimoroni Trackball module, add this to your rules.mk:

make
POINTING_DEVICE_DRIVER = pimoroni_trackball

The Pimoroni Trackball module is a I2C based breakout board with an RGB enable trackball.

Setting (config.h)DescriptionDefault
PIMORONI_TRACKBALL_ADDRESS(Required) Sets the I2C Address for the Pimoroni Trackball.0x0A
PIMORONI_TRACKBALL_TIMEOUT(Optional) The timeout for i2c communication with the trackball in milliseconds.100
PIMORONI_TRACKBALL_SCALE(Optional) The multiplier used to generate reports from the sensor.5
PIMORONI_TRACKBALL_DEBOUNCE_CYCLES(Optional) The number of scan cycles used for debouncing on the ball press.20
PIMORONI_TRACKBALL_ERROR_COUNT(Optional) Specifies the number of read/write errors until the sensor is disabled.10

PMW3320 Sensor

To use the PMW3320 sensor, add this to your rules.mk

make
POINTING_DEVICE_DRIVER = pmw3320

The PMW3320 sensor uses a serial type protocol for communication, and requires an additional light source (it could work without one, but expect it to be out of service early).

SettingDescriptionDefault
PMW3320_SCLK_PIN(Required) The pin connected to the clock pin of the sensor.POINTING_DEVICE_SCLK_PIN
PMW3320_SDIO_PIN(Required) The pin connected to the data pin of the sensor.POINTING_DEVICE_SDIO_PIN
PMW3320_CS_PIN(Required) The pin connected to the cable select pin of the sensor.POINTING_DEVICE_CS_PIN

The CPI range is 500-3500, in increments of 250. Defaults to 1000 CPI.

PMW 3360 and PMW 3389 Sensor

This drivers supports both the PMW 3360 and PMW 3389 sensor as well as multiple sensors of the same type per controller, so 2 can be attached at the same side for split keyboards (or unsplit keyboards).

To use the PMW 3360 sensor, add this to your rules.mk

make
POINTING_DEVICE_DRIVER = pmw3360

The CPI range is 100-12000, in increments of 100. Defaults to 1600 CPI.

To use the PMW 3389 sensor, add this to your rules.mk

make
POINTING_DEVICE_DRIVER = pmw3389

The CPI range is 50-16000, in increments of 50. Defaults to 2000 CPI.

Both PMW 3360 and PMW 3389 are SPI driven optical sensors, that use a built in IR LED for surface tracking. If you have different CS wiring on each half you can use PMW33XX_CS_PIN_RIGHT or PMW33XX_CS_PINS_RIGHT in combination with PMW33XX_CS_PIN or PMW33XX_CS_PINS to configure both sides independently. If _RIGHT values aren't provided, they default to be the same as the left ones.

Setting (config.h)DescriptionDefault
PMW33XX_CS_PIN(Required) Sets the Chip Select pin connected to the sensor.POINTING_DEVICE_CS_PIN
PMW33XX_CS_PINS(Alternative) Sets the Chip Select pins connected to multiple sensors.{PMW33XX_CS_PIN}
PMW33XX_CS_PIN_RIGHT(Optional) Sets the Chip Select pin connected to the sensor on the right half.PMW33XX_CS_PIN
PMW33XX_CS_PINS_RIGHT(Optional) Sets the Chip Select pins connected to multiple sensors on the right half.{PMW33XX_CS_PIN_RIGHT}
PMW33XX_CPI(Optional) Sets counts per inch sensitivity of the sensor.varies
PMW33XX_CLOCK_SPEED(Optional) Sets the clock speed that the sensor runs at.2000000
PMW33XX_SPI_DIVISOR(Optional) Sets the SPI Divisor used for SPI communication.varies
PMW33XX_LIFTOFF_DISTANCE(Optional) Sets the lift off distance at run time0x02
ROTATIONAL_TRANSFORM_ANGLE(Optional) Allows for the sensor data to be rotated +/- 127 degrees directly in the sensor.0

To use multiple sensors, instead of setting PMW33XX_CS_PIN you need to set PMW33XX_CS_PINS and also handle and merge the read from this sensor in user code. Note that different (per sensor) values of CPI, speed liftoff, rotational angle or flipping of X/Y is not currently supported.

c
// in config.h:\n#define PMW33XX_CS_PINS { B5, B6 }\n// in keyboard.c:\n#ifdef POINTING_DEVICE_ENABLE\nvoid pointing_device_init_kb(void) {\n    pmw33xx_init(1);         // index 1 is the second device.\n    pmw33xx_set_cpi(0, 800); // applies to first sensor\n    pmw33xx_set_cpi(1, 800); // applies to second sensor\n    pointing_device_init_user();\n}\n\n// Contains report from sensor #0 already, need to merge in from sensor #1\nreport_mouse_t pointing_device_task_kb(report_mouse_t mouse_report) {\n    pmw33xx_report_t report = pmw33xx_read_burst(1);\n    if (!report.motion.b.is_lifted && report.motion.b.is_motion) {\n// From quantum/pointing_device_drivers.c\n#define constrain_hid(amt) ((amt) < -127 ? -127 : ((amt) > 127 ? 127 : (amt)))\n        mouse_report.x = constrain_hid(mouse_report.x + report.delta_x);\n        mouse_report.y = constrain_hid(mouse_report.y + report.delta_y);\n    }\n    return pointing_device_task_user(mouse_report);\n}\n#endif

Custom Driver

If you have a sensor type that isn't supported above, a custom option is available by adding the following to your rules.mk

make
POINTING_DEVICE_DRIVER = custom

Using the custom driver will require implementing the following functions:

c
bool           pointing_device_driver_init(void) { return true; }\nreport_mouse_t pointing_device_driver_get_report(report_mouse_t mouse_report) { return mouse_report; }\nuint16_t       pointing_device_driver_get_cpi(void) { return 0; }\nvoid           pointing_device_driver_set_cpi(uint16_t cpi) {}

WARNING

Ideally, new sensor hardware should be added to drivers/sensors/ and quantum/pointing_device_drivers.c, but there may be cases where it's very specific to the hardware. So these functions are provided, just in case.

Common Configuration

SettingDescriptionDefault
MOUSE_EXTENDED_REPORT(Optional) Enables support for extended mouse reports. (-32767 to 32767, instead of just -127 to 127).not defined
WHEEL_EXTENDED_REPORT(Optional) Enables support for extended wheel reports. (-32767 to 32767, instead of just -127 to 127).not defined
POINTING_DEVICE_ROTATION_90(Optional) Rotates the X and Y data by 90 degrees.not defined
POINTING_DEVICE_ROTATION_180(Optional) Rotates the X and Y data by 180 degrees.not defined
POINTING_DEVICE_ROTATION_270(Optional) Rotates the X and Y data by 270 degrees.not defined
POINTING_DEVICE_INVERT_X(Optional) Inverts the X axis report.not defined
POINTING_DEVICE_INVERT_Y(Optional) Inverts the Y axis report.not defined
POINTING_DEVICE_MOTION_PIN(Optional) If supported, will only read from sensor if pin is active.not defined
POINTING_DEVICE_MOTION_PIN_ACTIVE_LOW(Optional) If defined then the motion pin is active-low.varies
POINTING_DEVICE_TASK_THROTTLE_MS(Optional) Limits the frequency that the sensor is polled for motion.not defined
POINTING_DEVICE_GESTURES_CURSOR_GLIDE_ENABLE(Optional) Enable inertial cursor. Cursor continues moving after a flick gesture and slows down by kinetic friction.not defined
POINTING_DEVICE_GESTURES_SCROLL_ENABLE(Optional) Enable scroll gesture. The gesture that activates the scroll is device dependent.not defined
POINTING_DEVICE_CS_PIN(Optional) Provides a default CS pin, useful for supporting multiple sensor configs.not defined
POINTING_DEVICE_SDIO_PIN(Optional) Provides a default SDIO pin, useful for supporting multiple sensor configs.not defined
POINTING_DEVICE_SCLK_PIN(Optional) Provides a default SCLK pin, useful for supporting multiple sensor configs.not defined

WARNING

When using SPLIT_POINTING_ENABLE the POINTING_DEVICE_MOTION_PIN functionality is not supported and POINTING_DEVICE_TASK_THROTTLE_MS will default to 1. Increasing this value will increase transport performance at the cost of possible mouse responsiveness.

The POINTING_DEVICE_CS_PIN, POINTING_DEVICE_SDIO_PIN, and POINTING_DEVICE_SCLK_PIN provide a convenient way to define a single pin that can be used for an interchangeable sensor config. This allows you to have a single config, without defining each device. Each sensor allows for this to be overridden with their own defines.

WARNING

Any pointing device with a lift/contact status can integrate inertial cursor feature into its driver, controlled by POINTING_DEVICE_GESTURES_CURSOR_GLIDE_ENABLE. e.g. PMW3360 can use Lift_Stat from Motion register. Note that POINTING_DEVICE_MOTION_PIN cannot be used with this feature; continuous polling of get_report() is needed to generate glide reports.

High Resolution Scrolling

SettingDescriptionDefault
POINTING_DEVICE_HIRES_SCROLL_ENABLE(Optional) Enables high resolution scrolling.not defined
POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER(Optional) Resolution multiplier value used by high resolution scrolling. Must be between 1 and 127, inclusive.120
POINTING_DEVICE_HIRES_SCROLL_EXPONENT(Optional) Resolution exponent value used by high resolution scrolling. Must be between 0 and 127, inclusive.0

The POINTING_DEVICE_HIRES_SCROLL_ENABLE setting enables smooth and continuous scrolling when using trackballs or high-end encoders as mouse wheels (as opposed to the typical stepped behavior of most mouse wheels). This works by adding a resolution multiplier to the HID descriptor for mouse wheel reports, causing the host computer to interpret each wheel tick sent by the keyboard as a fraction of a normal wheel tick. The resolution multiplier is set to 1 / (POINTING_DEVICE_HIRES_SCROLL_MULTIPLIER * (10 ^ POINTING_DEVICE_HIRES_SCROLL_EXPONENT)), which is 1 / 120 by default. If even smoother scrolling than provided by this default value is desired, first try using #define POINTING_DEVICE_HIRES_SCROLL_EXPONENT 1 which will result in a multiplier of 1 / 1200.

The function pointing_device_get_hires_scroll_resolution() can be called to get the pre-computed resolution multiplier value as a uint16_t.

WARNING

High resolution scrolling usually results in larger and/or more frequent mouse reports. This can result in overflow errors and overloading of the host computer's input buffer. To deal with these issues, define WHEEL_EXTENDED_REPORT and throttle the rate at which mouse reports are sent.

WARNING

Many programs, especially those that implement their own smoothing for scrolling, don't work well when they receive simultaneous vertical and horizontal wheel inputs (e.g. from high resolution drag-scroll using a trackball). These programs typically implement their smoothing in a way that assumes the user will only scroll in one axis at a time, resulting in slow or jittery motion when trying to scroll at an angle. This can be addressed by snapping scrolling to one axis at a time.

Split Keyboard Configuration

The following configuration options are only available when using SPLIT_POINTING_ENABLE see data sync options. The rotation and invert *_RIGHT options are only used with POINTING_DEVICE_COMBINED. If using POINTING_DEVICE_LEFT or POINTING_DEVICE_RIGHT use the common configuration above to configure your pointing device.

SettingDescriptionDefault
POINTING_DEVICE_LEFTPointing device on the left side (Required - pick one only)not defined
POINTING_DEVICE_RIGHTPointing device on the right side (Required - pick one only)not defined
POINTING_DEVICE_COMBINEDPointing device on both sides (Required - pick one only)not defined
POINTING_DEVICE_ROTATION_90_RIGHT(Optional) Rotates the X and Y data by 90 degrees.not defined
POINTING_DEVICE_ROTATION_180_RIGHT(Optional) Rotates the X and Y data by 180 degrees.not defined
POINTING_DEVICE_ROTATION_270_RIGHT(Optional) Rotates the X and Y data by 270 degrees.not defined
POINTING_DEVICE_INVERT_X_RIGHT(Optional) Inverts the X axis report.not defined
POINTING_DEVICE_INVERT_Y_RIGHT(Optional) Inverts the Y axis report.not defined

WARNING

If there is a _RIGHT configuration option or callback, the common configuration option will work for the left. For correct left/right detection you should setup a handedness option, EE_HANDS is usually a good option for an existing board that doesn't do handedness by hardware.

Callbacks and Functions

FunctionDescription
pointing_device_init_kb(void)Callback to allow for keyboard level initialization. Useful for additional hardware sensors.
pointing_device_init_user(void)Callback to allow for user level initialization. Useful for additional hardware sensors.
pointing_device_task_kb(mouse_report)Callback that sends sensor data, so keyboard code can intercept and modify the data. Returns a mouse report.
pointing_device_task_user(mouse_report)Callback that sends sensor data, so user code can intercept and modify the data. Returns a mouse report.
pointing_device_handle_buttons(buttons, pressed, button)Callback to handle hardware button presses. Returns a uint8_t.
pointing_device_get_cpi(void)Gets the current CPI/DPI setting from the sensor, if supported.
pointing_device_set_cpi(uint16_t)Sets the CPI/DPI, if supported.
pointing_device_get_report(void)Returns the current mouse report (as a report_mouse_t data structure).
pointing_device_set_report(mouse_report)Sets the mouse report to the assigned report_mouse_t data structured passed to the function.
pointing_device_send(void)Sends the current mouse report to the host system. Function can be replaced.
has_mouse_report_changed(new_report, old_report)Compares the old and new report_mouse_t data and returns true only if it has changed.
pointing_device_adjust_by_defines(mouse_report)Applies rotations and invert configurations to a raw mouse report.
pointing_device_get_status(void)Returns device status as pointing_device_status_t a good return is POINTING_DEVICE_STATUS_SUCCESS.
pointing_device_set_status(pointing_device_status_t status)Sets device status, anything other than POINTING_DEVICE_STATUS_SUCCESS will disable reports from the device.

Split Keyboard Callbacks and Functions

The combined functions below are only available when using SPLIT_POINTING_ENABLE and POINTING_DEVICE_COMBINED. The 2 callbacks pointing_device_task_combined_* replace the single sided equivalents above. See the combined pointing devices example

FunctionDescription
pointing_device_set_shared_report(mouse_report)Sets the shared mouse report to the assigned report_mouse_t data structured passed to the function.
pointing_device_set_cpi_on_side(bool, uint16_t)Sets the CPI/DPI of one side, if supported. Passing true will set the left and false the right
pointing_device_combine_reports(left_report, right_report)Returns a combined mouse_report of left_report and right_report (as a report_mouse_t data structure)
pointing_device_task_combined_kb(left_report, right_report)Callback, so keyboard code can intercept and modify the data. Returns a combined mouse report.
pointing_device_task_combined_user(left_report, right_report)Callback, so user code can intercept and modify. Returns a combined mouse report using pointing_device_combine_reports
pointing_device_adjust_by_defines_right(mouse_report)Applies right side rotations and invert configurations to a raw mouse report.

Manipulating Mouse Reports

The report_mouse_t (here "mouseReport") has the following properties:

To manually manipulate the mouse reports outside of the pointing_device_task_* functions, you can use:

When the mouse report is sent, the x, y, v, and h values are set to 0 (this is done in pointing_device_send(), which can be overridden to avoid this behavior). This way, button states persist, but movement will only occur once. For further customization, both pointing_device_init and pointing_device_task can be overridden.

Additionally, by default, pointing_device_send() will only send a report when the report has actually changed. This prevents it from continuously sending mouse reports, which will keep the host system awake. This behavior can be changed by creating your own pointing_device_send() function.

Also, you use the has_mouse_report_changed(new_report, old_report) function to check to see if the report has changed.

Examples

Custom Mouse Keycode

In this example, a custom key is used to click the mouse and scroll 127 units vertically and horizontally, then undo all of that when released - because that's a totally useful function.

c
case MS_SPECIAL:\n    report_mouse_t currentReport = pointing_device_get_report();\n    if (record->event.pressed) {\n        currentReport.v = 127;\n        currentReport.h = 127;\n        currentReport.buttons |= MOUSE_BTN1;  // this is defined in report.h\n    } else {\n        currentReport.v = -127;\n        currentReport.h = -127;\n        currentReport.buttons &= ~MOUSE_BTN1;\n    }\n    pointing_device_set_report(currentReport);\n    pointing_device_send();\n    break;

Recall that the mouse report is set to zero (except the buttons) whenever it is sent, so the scrolling would only occur once in each case.

Drag Scroll or Mouse Scroll

A very common implementation is to use the mouse movement to scroll instead of moving the cursor on the system. This uses the pointing_device_task_user callback to intercept and modify the mouse report before it's sent to the host system.

c
enum custom_keycodes {\n    DRAG_SCROLL = SAFE_RANGE,\n};\n\nbool set_scrolling = false;\n\nreport_mouse_t pointing_device_task_user(report_mouse_t mouse_report) {\n    if (set_scrolling) {\n        mouse_report.h = mouse_report.x;\n        mouse_report.v = mouse_report.y;\n        mouse_report.x = 0;\n        mouse_report.y = 0;\n    }\n    return mouse_report;\n}\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    if (keycode == DRAG_SCROLL && record->event.pressed) {\n        set_scrolling = !set_scrolling;\n    }\n    return true;\n}

This allows you to toggle between scrolling and cursor movement by pressing the DRAG_SCROLL key.

Advanced Drag Scroll

Sometimes, like with the Cirque trackpad, you will run into issues where the scrolling may be too fast.

Here is a slightly more advanced example of drag scrolling. You will be able to change the scroll speed based on the values in set in SCROLL_DIVISOR_H and SCROLL_DIVISOR_V. This bit of code is also set up so that instead of toggling the scrolling state with set_scrolling = !set_scrolling, the set_scrolling variable is set directly to record->event.pressed. This way, the drag scrolling will only be active while the DRAG_SCROLL button is held down.

c
enum custom_keycodes {\n    DRAG_SCROLL = SAFE_RANGE,\n};\n\nbool set_scrolling = false;\n\n// Modify these values to adjust the scrolling speed\n#define SCROLL_DIVISOR_H 8.0\n#define SCROLL_DIVISOR_V 8.0\n\n// Variables to store accumulated scroll values\nfloat scroll_accumulated_h = 0;\nfloat scroll_accumulated_v = 0;\n\n// Function to handle mouse reports and perform drag scrolling\nreport_mouse_t pointing_device_task_user(report_mouse_t mouse_report) {\n    // Check if drag scrolling is active\n    if (set_scrolling) {\n        // Calculate and accumulate scroll values based on mouse movement and divisors\n        scroll_accumulated_h += (float)mouse_report.x / SCROLL_DIVISOR_H;\n        scroll_accumulated_v += (float)mouse_report.y / SCROLL_DIVISOR_V;\n\n        // Assign integer parts of accumulated scroll values to the mouse report\n        mouse_report.h = (int8_t)scroll_accumulated_h;\n        mouse_report.v = (int8_t)scroll_accumulated_v;\n\n        // Update accumulated scroll values by subtracting the integer parts\n        scroll_accumulated_h -= (int8_t)scroll_accumulated_h;\n        scroll_accumulated_v -= (int8_t)scroll_accumulated_v;\n\n        // Clear the X and Y values of the mouse report\n        mouse_report.x = 0;\n        mouse_report.y = 0;\n    }\n    return mouse_report;\n}\n\n// Function to handle key events and enable/disable drag scrolling\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case DRAG_SCROLL:\n            // Toggle set_scrolling when DRAG_SCROLL key is pressed or released\n            set_scrolling = record->event.pressed;\n            break;\n        default:\n            break;\n    }\n    return true;\n}\n\n// Function to handle layer changes and disable drag scrolling when not in AUTO_MOUSE_DEFAULT_LAYER\nlayer_state_t layer_state_set_user(layer_state_t state) {\n    // Disable set_scrolling if the current layer is not the AUTO_MOUSE_DEFAULT_LAYER\n    if (get_highest_layer(state) != AUTO_MOUSE_DEFAULT_LAYER) {\n        set_scrolling = false;\n    }\n    return state;\n}

Split Examples

The following examples make use the SPLIT_POINTING_ENABLE functionality and show how to manipulate the mouse report for a scrolling mode.

Single Pointing Device

The following example will work with either POINTING_DEVICE_LEFT or POINTING_DEVICE_RIGHT and enables scrolling mode while on a particular layer.

c
\nstatic bool scrolling_mode = false;\n\nlayer_state_t layer_state_set_user(layer_state_t state) {\n    switch (get_highest_layer(state)) {\n        case _RAISE:  // If we're on the _RAISE layer enable scrolling mode\n            scrolling_mode = true;\n            pointing_device_set_cpi(2000);\n            break;\n        default:\n            if (scrolling_mode) {  // check if we were scrolling before and set disable if so\n                scrolling_mode = false;\n                pointing_device_set_cpi(8000);\n            }\n            break;\n    }\n    return state;\n}\n\nreport_mouse_t pointing_device_task_user(report_mouse_t mouse_report) {\n    if (scrolling_mode) {\n        mouse_report.h = mouse_report.x;\n        mouse_report.v = mouse_report.y;\n        mouse_report.x = 0;\n        mouse_report.y = 0;\n    }\n    return mouse_report;\n}

Combined Pointing Devices

The following example requires POINTING_DEVICE_COMBINED and sets the left side pointing device to scroll only.

c
void keyboard_post_init_user(void) {\n    pointing_device_set_cpi_on_side(true, 1000); //Set cpi on left side to a low value for slower scrolling.\n    pointing_device_set_cpi_on_side(false, 8000); //Set cpi on right side to a reasonable value for mousing.\n}\n\nreport_mouse_t pointing_device_task_combined_user(report_mouse_t left_report, report_mouse_t right_report) {\n    left_report.h = left_report.x;\n    left_report.v = left_report.y;\n    left_report.x = 0;\n    left_report.y = 0;\n    return pointing_device_combine_reports(left_report, right_report);\n}

Troubleshooting

If you are having issues with pointing device drivers debug messages can be enabled that will give you insights in the inner workings. To enable these add to your keyboards config.h file:

c
#define POINTING_DEVICE_DEBUG

TIP

The messages will be printed out to the CONSOLE output. For additional information, refer to Debugging/Troubleshooting QMK.


Automatic Mouse Layer

When using a pointing device combined with a keyboard the mouse buttons are often kept on a separate layer from the default keyboard layer, which requires pressing or holding a key to change layers before using the mouse. To make this easier and more efficient an additional pointing device feature may be enabled that will automatically activate a target layer as soon as the pointing device is active (in motion, mouse button pressed etc.) and deactivate the target layer after a set time.

Additionally if any key that is defined as a mouse key is pressed then the layer will be held as long as the key is pressed and the timer will be reset on key release. When a non-mouse key is pressed then the layer is deactivated early (with some exceptions see below). Mod, mod tap, and one shot mod keys are ignored (i.e. don't hold or activate layer but do not deactivate the layer either) when sending a modifier keycode (e.g. hold for mod tap) allowing for mod keys to be used with the mouse without activating the target layer when typing.

All of the standard layer keys (tap toggling, toggle, toggle on, one_shot, layer tap, layer mod) that activate the current target layer are uniquely handled to ensure they behave as expected (see layer key table below). The target layer that can be changed at any point during by calling the set_auto_mouse_layer(<new_target_layer>); function.

Behaviour of Layer keys that activate the target layer

Layer key as in keymap.cAuto Mouse specific behaviour
MO(<target_layer>)Treated as a mouse key holding the layer while pressed
LT(<target_layer>)When tapped will be treated as non mouse key and mouse key when held
LM(<target_layer>)Treated as a mouse key
TG(<target_layer>)Will set flag preventing target layer deactivation or removal until pressed again
TO(<target_layer>)Same as TG(<target_layer>)
TT(<target_layer>)Treated as a mouse key when tap.count < TAPPING_TOGGLE and as TG when tap.count == TAPPING_TOGGLE
DF(<target_layer>)Skips auto mouse key processing similar to mod keys
OSL(<target_layer>)Skips, but if current one shot layer is the target layer then it will prevent target layer deactivation or removal

How to enable:

c
// in config.h:\n#define POINTING_DEVICE_AUTO_MOUSE_ENABLE\n// only required if not setting mouse layer elsewhere\n#define AUTO_MOUSE_DEFAULT_LAYER <index of your mouse layer>\n\n// in keymap.c:\nvoid pointing_device_init_user(void) {\n    set_auto_mouse_layer(<mouse_layer>); // only required if AUTO_MOUSE_DEFAULT_LAYER is not set to index of <mouse_layer>\n    set_auto_mouse_enable(true);         // always required before the auto mouse feature will work\n}

Because the auto mouse feature can be disabled/enabled during runtime and starts as disabled by default it must be enabled by calling set_auto_mouse_enable(true); somewhere in firmware before the feature will work.

Note: for setting the target layer during initialization either setting AUTO_MOUSE_DEFAULT_LAYER in config.h or calling set_auto_mouse_layer(<mouse_layer>) can be used.

How to Customize:

There are a few ways to control the auto mouse feature with both config.h options and functions for controlling it during runtime.

config.h Options:

DefineDescriptionRangeUnitsDefault
POINTING_DEVICE_AUTO_MOUSE_ENABLE(Required) Enables auto mouse layer featureNoneNot defined
AUTO_MOUSE_DEFAULT_LAYER(Optional) Index of layer to use as default target layer0 - LAYER_MAXuint8_t1
AUTO_MOUSE_TIME(Optional) Time layer remains active after activationideally (250-1000)ms650 ms
AUTO_MOUSE_DELAY(Optional) Lockout time after non-mouse key is pressedideally (100-1000)msTAPPING_TERM or 200 ms
AUTO_MOUSE_DEBOUNCE(Optional) Time delay from last activation to next updateideally (10 - 100)ms25 ms
AUTO_MOUSE_THRESHOLD(Optional) Amount of mouse movement required to switch layers0 -units10 units

Adding mouse keys

While all default mouse keys and layer keys(for current mouse layer) are treated as mouse keys, additional Keyrecords can be added to mouse keys by adding them to the is_mouse_record_* stack.

Callbacks for setting up additional key codes as mouse keys:

CallbackDescription
bool is_mouse_record_kb(uint16_t keycode, keyrecord_t* record)keyboard level callback for adding mouse keys
bool is_mouse_record_user(uint16_t keycode, keyrecord_t* record)user/keymap level callback for adding mouse keys
To use the callback function to add mouse keys:

The following code will cause the enter key and all of the arrow keys to be treated as mouse keys (hold target layer while they are pressed and reset active layer timer).

c
\n// in <keyboard>.c:\nbool is_mouse_record_kb(uint16_t keycode, keyrecord_t* record) {\n    switch(keycode) {\n        case KC_ENT:\n            return true;\n        case KC_RIGHT ... KC_UP:\n            return true;\n        default:\n            return false;\n    }\n    return  is_mouse_record_user(keycode, record);\n}

Advanced control

There are several functions that allow for more advanced interaction with the auto mouse feature allowing for greater control.

Functions to control auto mouse enable and target layer:

FunctionDescriptionAliasesReturn type
set_auto_mouse_enable(bool enable)Enable or disable auto mouse (true:enable, false:disable)void(None)
get_auto_mouse_enable(void)Return auto mouse enable state (true:enabled, false:disabled)AUTO_MOUSE_ENABLEDbool
set_auto_mouse_layer(uint8_t LAYER)Change/set the target layer for auto mousevoid(None)
get_auto_mouse_layer(void)Return auto mouse target layer indexAUTO_MOUSE_TARGET_LAYERuint8_t
remove_auto_mouse_layer(layer_state_t state, bool force)Return state with target layer removed if appropriate (ignore criteria if force)layer_state_t
auto_mouse_layer_off(void)Disable target layer if appropriate will call (makes call to layer_state_set)void(None)
auto_mouse_toggle(void)Toggle on/off target toggle state (disables layer deactivation when true)void(None)
get_auto_mouse_toggle(void)Return value of toggling state variablebool
set_auto_mouse_timeout(uint16_t timeout)Change/set the timeout for turing off the layervoid(None)
get_auto_mouse_timeout(void)Return the current timeout for turing off the layeruint16_t
set_auto_mouse_debounce(uint16_t timeout)Change/set the debounce for preventing layer activationvoid(None)
get_auto_mouse_debounce(void)Return the current debounce for preventing layer activationuint8_t
is_auto_mouse_active(void)Returns the active state of the auto mouse layer (eg if the layer has been triggered)bool
get_auto_mouse_key_tracker(void)Gets the current count for the auto mouse key tracker.int8_t
set_auto_mouse_key_tracker(int8_t key_tracker)Sets/Overrides the current count for the auto mouse key tracker.void(None)

NOTES:

Functions for handling custom key events:

FunctionDescriptionReturn type
auto_mouse_keyevent(bool pressed)Auto mouse mouse key event (true: key down, false: key up)void(None)
auto_mouse_trigger_reset(bool pressed)Reset auto mouse status on key down and start delay timer (non-mouse key event)void(None)
auto_mouse_toggle(void)Toggle on/off target toggle state (disables layer deactivation when true)void(None)
get_auto_mouse_toggle(void)Return value of toggling state variablebool

NOTE: Generally it would be preferable to use the is_mouse_record_* functions to add any additional keys that should act as mouse keys rather than adding auto_mouse_keyevent(record.event->pressed) to process_records_*

Advanced control examples

Disable auto mouse on certain layers:

The auto mouse feature can be disabled any time and this can be helpful if you want to disable the auto mouse feature under certain circumstances such as when particular layers are active. One issue however is the handling of the target layer, it needs to be removed appropriately before disabling auto mouse (see notes under control functions above). The following function would disable the auto_mouse feature whenever the layers _LAYER5 through _LAYER7 are active as the top most layer (ignoring target layer).

c
// in keymap.c:\nlayer_state_t layer_state_set_user(layer_state_t state) {\n    // checks highest layer other than target layer\n    switch(get_highest_layer(remove_auto_mouse_layer(state, true))) {\n        case _LAYER5 ... _LAYER7:\n            // remove_auto_mouse_target must be called to adjust state *before* setting enable\n            state = remove_auto_mouse_layer(state, false);\n            set_auto_mouse_enable(false);\n            break;\n        default:\n            set_auto_mouse_enable(true);\n            break;\n    }\n    // recommend that any code that makes adjustment based on auto mouse layer state would go here\n    return state;\n}

Set different target layer when a particular layer is active:

The below code will change the auto mouse layer target to _MOUSE_LAYER_2 when _DEFAULT_LAYER_2 is highest default layer state.

NOTE: that auto_mouse_layer_off is used here instead of remove_auto_mouse_layer as default_layer_state_set_* stack is separate from the layer_state_set_* stack, if something similar was to be done in layer_state_set_user, state = remove_auto_mouse_layer(state, false) should be used instead.

ADDITIONAL NOTE: AUTO_MOUSE_TARGET_LAYER is checked if already set to avoid deactivating the target layer unless needed.

c
// in keymap.c\nlayer_state_t default_layer_state_set_user(layer_state_t state) {\n    // switch on change in default layer need to check if target layer already set to avoid turning off layer needlessly\n    switch(get_highest_layer(state)) {\n        case _DEFAULT_LAYER_2:\n            if ((AUTO_MOUSE_TARGET_LAYER) == _MOUSE_LAYER_2) break;\n            auto_mouse_layer_off();\n            set_auto_mouse_layer(_MOUSE_LAYER_2);\n            break;\n\n        default:\n            if((AUTO_MOUSE_TARGET_LAYER) == _MOUSE_LAYER_1) break;\n            auto_mouse_layer_off();\n            set_auto_mouse_layer(_MOUSE_LAYER_1);\n    }\n    return state;\n}

Use custom keys to control auto mouse:

Custom key records could also be created that control the auto mouse feature.

The code example below would create a custom key that would toggle the auto mouse feature on and off when pressed while also setting a bool that could be used to disable other code that may turn it on such as the layer code above.

c
// in config.h:\nenum user_custom_keycodes {\n    AM_Toggle = SAFE_RANGE\n};\n\n// in keymap.c:\n// set up global bool to adjust other user code\nbool auto_mouse_tg_off = !AUTO_MOUSE_ENABLED;\n\nbool process_record_user(uint16_t keycode, keyrecord_t* record) {\n    switch (keycode) {\n        // toggle auto mouse enable key\n        case AM_Toggle:\n            if(record->event.pressed) { // key down\n                auto_mouse_layer_off(); // disable target layer if needed\n                set_auto_mouse_enabled((AUTO_MOUSE_ENABLED) ^ 1);\n                auto_mouse_tg_off = !get_auto_mouse_enabled();\n            } // do nothing on key up\n            return false; // prevent further processing of keycode\n    }\n}

Customize Target Layer Activation

Layer activation can be customized by overwriting the auto_mouse_activation function. This function is checked every time pointing_device_task is called when inactive and every AUTO_MOUSE_DEBOUNCE ms when active, and will evaluate pointing device level conditions that trigger target layer activation. When it returns true, the target layer will be activated barring the usual exceptions (e.g. delay time has not expired).

By default it will return true if any of the mouse_report axes x,y,h,v are non zero, or if there is any mouse buttons active in mouse_report. Note: The Cirque pinnacle track pad already implements a custom activation function that will activate on touchdown as well as movement all of the default conditions, currently this only works for the master side of split keyboards.

FunctionDescriptionReturn type
auto_mouse_activation(report_mouse_t mouse_report)Overwritable function that controls target layer activation (when true)bool

Auto Mouse for Custom Pointing Device Task

When using a custom pointing device (overwriting pointing_device_task) the following code should be somewhere in the pointing_device_task_* stack:

c
bool pointing_device_task(void) {\n    //...Custom pointing device task code\n\n    // handle automatic mouse layer (needs report_mouse_t as input)\n    pointing_device_task_auto_mouse(local_mouse_report);\n\n    //...More custom pointing device task code\n\n    return pointing_device_send();\n}

In general the following two functions must be implemented in appropriate locations for auto mouse to function:

FunctionDescriptionSuggested location
pointing_device_task_auto_mouse(report_mouse_t mouse_report)handles target layer activation and is_active status updatespointing_device_task stack
process_auto_mouse(uint16_t keycode, keyrecord_t* record)Keycode processing for auto mouseprocess_record stack
', 218); diff --git a/assets/features_pointing_device.md.DXePd09M.lean.js b/assets/features_pointing_device.md.Ca3kOf-A.lean.js similarity index 83% rename from assets/features_pointing_device.md.DXePd09M.lean.js rename to assets/features_pointing_device.md.Ca3kOf-A.lean.js index 7bfaa5471ba..dde260264b2 100644 --- a/assets/features_pointing_device.md.DXePd09M.lean.js +++ b/assets/features_pointing_device.md.Ca3kOf-A.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Pointing Device","description":"","frontmatter":{},"headers":[],"relativePath":"features/pointing_device.md","filePath":"features/pointing_device.md","lastUpdated":null}'); const _sfc_main = { name: "features/pointing_device.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 218); diff --git a/assets/features_programmable_button.md.Bl52c_Yl.js b/assets/features_programmable_button.md.C_86Sd8h.js similarity index 98% rename from assets/features_programmable_button.md.Bl52c_Yl.js rename to assets/features_programmable_button.md.C_86Sd8h.js index 77fb4b3e3f5..4898445b2a6 100644 --- a/assets/features_programmable_button.md.Bl52c_Yl.js +++ b/assets/features_programmable_button.md.C_86Sd8h.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Programmable Button","description":"","frontmatter":{},"headers":[],"relativePath":"features/programmable_button.md","filePath":"features/programmable_button.md","lastUpdated":null}'); const _sfc_main = { name: "features/programmable_button.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Programmable Button

Programmable Buttons are keys that have no predefined meaning. This means they can be processed on the host side by custom software without the operating system trying to interpret them.

The keycodes are emitted according to the HID Telephony Device page (0x0B), Programmable Button usage (0x09). On Linux (> 5.14) they are handled automatically and translated to KEY_MACRO# keycodes (up to KEY_MACRO30).

TIP

Currently there is no known support in Windows or macOS. It may be possible to write a custom HID driver to receive these usages, but this is out of the scope of the QMK documentation.

Usage

Add the following to your rules.mk:

make
PROGRAMMABLE_BUTTON_ENABLE = yes

Keycodes

KeyAliasesDescription
QK_PROGRAMMABLE_BUTTON_1PB_1Programmable button 1
QK_PROGRAMMABLE_BUTTON_2PB_2Programmable button 2
QK_PROGRAMMABLE_BUTTON_3PB_3Programmable button 3
QK_PROGRAMMABLE_BUTTON_4PB_4Programmable button 4
QK_PROGRAMMABLE_BUTTON_5PB_5Programmable button 5
QK_PROGRAMMABLE_BUTTON_6PB_6Programmable button 6
QK_PROGRAMMABLE_BUTTON_7PB_7Programmable button 7
QK_PROGRAMMABLE_BUTTON_8PB_8Programmable button 8
QK_PROGRAMMABLE_BUTTON_9PB_9Programmable button 9
QK_PROGRAMMABLE_BUTTON_10PB_10Programmable button 10
QK_PROGRAMMABLE_BUTTON_11PB_11Programmable button 11
QK_PROGRAMMABLE_BUTTON_12PB_12Programmable button 12
QK_PROGRAMMABLE_BUTTON_13PB_13Programmable button 13
QK_PROGRAMMABLE_BUTTON_14PB_14Programmable button 14
QK_PROGRAMMABLE_BUTTON_15PB_15Programmable button 15
QK_PROGRAMMABLE_BUTTON_16PB_16Programmable button 16
QK_PROGRAMMABLE_BUTTON_17PB_17Programmable button 17
QK_PROGRAMMABLE_BUTTON_18PB_18Programmable button 18
QK_PROGRAMMABLE_BUTTON_19PB_19Programmable button 19
QK_PROGRAMMABLE_BUTTON_20PB_20Programmable button 20
QK_PROGRAMMABLE_BUTTON_21PB_21Programmable button 21
QK_PROGRAMMABLE_BUTTON_22PB_22Programmable button 22
QK_PROGRAMMABLE_BUTTON_23PB_23Programmable button 23
QK_PROGRAMMABLE_BUTTON_24PB_24Programmable button 24
QK_PROGRAMMABLE_BUTTON_25PB_25Programmable button 25
QK_PROGRAMMABLE_BUTTON_26PB_26Programmable button 26
QK_PROGRAMMABLE_BUTTON_27PB_27Programmable button 27
QK_PROGRAMMABLE_BUTTON_28PB_28Programmable button 28
QK_PROGRAMMABLE_BUTTON_29PB_29Programmable button 29
QK_PROGRAMMABLE_BUTTON_30PB_30Programmable button 30
QK_PROGRAMMABLE_BUTTON_31PB_31Programmable button 31
QK_PROGRAMMABLE_BUTTON_32PB_32Programmable button 32

API

void programmable_button_clear(void)

Clear the programmable button report.


void programmable_button_add(uint8_t index)

Set the state of a button.

Arguments


void programmable_button_remove(uint8_t index)

Reset the state of a button.

Arguments


void programmable_button_register(uint8_t index)

Set the state of a button, and flush the report.

Arguments


void programmable_button_unregister(uint8_t index)

Reset the state of a button, and flush the report.

Arguments


bool programmable_button_is_on(uint8_t index)

Get the state of a button.

Arguments

Return Value

true if the button is pressed.


void programmable_button_flush(void)

Send the programmable button report to the host.


uint32_t programmable_button_get_report(void)

Get the programmable button report.

Return Value

The bitmask of programmable button states.


void programmable_button_set_report(uint32_t report)

Set the programmable button report.

Arguments

', 52); diff --git a/assets/features_programmable_button.md.Bl52c_Yl.lean.js b/assets/features_programmable_button.md.C_86Sd8h.lean.js similarity index 84% rename from assets/features_programmable_button.md.Bl52c_Yl.lean.js rename to assets/features_programmable_button.md.C_86Sd8h.lean.js index 27082c5b108..bad7245b203 100644 --- a/assets/features_programmable_button.md.Bl52c_Yl.lean.js +++ b/assets/features_programmable_button.md.C_86Sd8h.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Programmable Button","description":"","frontmatter":{},"headers":[],"relativePath":"features/programmable_button.md","filePath":"features/programmable_button.md","lastUpdated":null}'); const _sfc_main = { name: "features/programmable_button.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 52); diff --git a/assets/features_ps2_mouse.md.qDR2aVVH.js b/assets/features_ps2_mouse.md.CN8mIpft.js similarity index 99% rename from assets/features_ps2_mouse.md.qDR2aVVH.js rename to assets/features_ps2_mouse.md.CN8mIpft.js index 3f70d9acccb..0a7d269ed37 100644 --- a/assets/features_ps2_mouse.md.qDR2aVVH.js +++ b/assets/features_ps2_mouse.md.CN8mIpft.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"PS/2 Mouse Support","description":"","frontmatter":{},"headers":[],"relativePath":"features/ps2_mouse.md","filePath":"features/ps2_mouse.md","lastUpdated":null}'); const _sfc_main = { name: "features/ps2_mouse.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

PS/2 Mouse Support

Its possible to hook up a PS/2 mouse (for example touchpads or trackpoints) to your keyboard as a composite device.

To hook up a Trackpoint, you need to obtain a Trackpoint module (i.e. harvest from a Thinkpad keyboard), identify the function of each pin of the module, and make the necessary circuitry between controller and Trackpoint module. For more information, please refer to Trackpoint Hardware page on Deskthority Wiki.

There are three available modes for hooking up PS/2 devices: USART (best), interrupts (better) or busywait (not recommended).

The Circuitry between Trackpoint and Controller

To get the things working, a 4.7K drag is needed between the two lines DATA and CLK and the line 5+.

\n          DATA ----------+--------- PIN\n                         |\n                        4.7K\n                         |\nMODULE    5+  --------+--+--------- PWR   CONTROLLER\n                      |\n                     4.7K\n                      |    \n          CLK   ------+------------ PIN

Driver Configuration

Driver selection can be configured in rules.mk as PS2_DRIVER, or in info.json as ps2.driver. Valid values are busywait (default), interrupt, usart, or vendor. See below for information on individual drivers.

Busywait Driver

Note: This is not recommended, you may encounter jerky movement or unsent inputs. Please use interrupt or USART version if possible.

In rules.mk:

make
PS2_MOUSE_ENABLE = yes\nPS2_ENABLE = yes\nPS2_DRIVER = busywait

In your keyboard config.h:

c
#ifdef PS2_DRIVER_BUSYWAIT\n# define PS2_CLOCK_PIN   D1\n# define PS2_DATA_PIN    D2\n#endif

Interrupt Driver (AVR/ATMega32u4)

The following example uses D2 for clock and D5 for data. You can use any INT or PCINT pin for clock, and any pin for data.

In rules.mk:

make
PS2_MOUSE_ENABLE = yes\nPS2_ENABLE = yes\nPS2_DRIVER = interrupt

In your keyboard config.h:

c
#ifdef PS2_DRIVER_INTERRUPT\n#define PS2_CLOCK_PIN   D2\n#define PS2_DATA_PIN    D5\n\n#define PS2_INT_INIT()  do {    \\\n    EICRA |= ((1<<ISC21) |      \\\n              (0<<ISC20));      \\\n} while (0)\n#define PS2_INT_ON()  do {      \\\n    EIMSK |= (1<<INT2);         \\\n} while (0)\n#define PS2_INT_OFF() do {      \\\n    EIMSK &= ~(1<<INT2);        \\\n} while (0)\n#define PS2_INT_VECT   INT2_vect\n#endif

Interrupt Driver (ARM chibios)

Pretty much any two pins can be used for the (software) interrupt variant on ARM cores. The example below uses A8 for clock, and A9 for data.

In rules.mk:

PS2_MOUSE_ENABLE = yes\nPS2_ENABLE = yes\nPS2_DRIVER = interrupt

In your keyboard config.h:

c
#define PS2_CLOCK_PIN A8\n#define PS2_DATA_PIN  A9

And in the ChibiOS specific halconf.h:

c
#pragma once\n\n#define PAL_USE_CALLBACKS TRUE\n\n#include_next <halconf.h>

USART Driver

To use USART on the ATMega32u4, you have to use PD5 for clock and PD2 for data. If one of those are unavailable, you need to use interrupt version.

In rules.mk:

make
PS2_MOUSE_ENABLE = yes\nPS2_ENABLE = yes\nPS2_DRIVER = usart

In your keyboard config.h:

c
#ifdef PS2_DRIVER_USART\n#define PS2_CLOCK_PIN   D5\n#define PS2_DATA_PIN    D2\n\n/* synchronous, odd parity, 1-bit stop, 8-bit data, sample at falling edge */\n/* set DDR of CLOCK as input to be slave */\n#define PS2_USART_INIT() do {   \\\n    PS2_CLOCK_DDR &= ~(1<<PS2_CLOCK_BIT);   \\\n    PS2_DATA_DDR &= ~(1<<PS2_DATA_BIT);     \\\n    UCSR1C = ((1 << UMSEL10) |  \\\n              (3 << UPM10)   |  \\\n              (0 << USBS1)   |  \\\n              (3 << UCSZ10)  |  \\\n              (0 << UCPOL1));   \\\n    UCSR1A = 0;                 \\\n    UBRR1H = 0;                 \\\n    UBRR1L = 0;                 \\\n} while (0)\n#define PS2_USART_RX_INT_ON() do {  \\\n    UCSR1B = ((1 << RXCIE1) |       \\\n              (1 << RXEN1));        \\\n} while (0)\n#define PS2_USART_RX_POLL_ON() do { \\\n    UCSR1B = (1 << RXEN1);          \\\n} while (0)\n#define PS2_USART_OFF() do {    \\\n    UCSR1C = 0;                 \\\n    UCSR1B &= ~((1 << RXEN1) |  \\\n                (1 << TXEN1));  \\\n} while (0)\n#define PS2_USART_RX_READY      (UCSR1A & (1<<RXC1))\n#define PS2_USART_RX_DATA       UDR1\n#define PS2_USART_ERROR         (UCSR1A & ((1<<FE1) | (1<<DOR1) | (1<<UPE1)))\n#define PS2_USART_RX_VECT       USART1_RX_vect\n#endif

RP2040 PIO Driver

The PIO subsystem is a Raspberry Pi RP2040 specific implementation, using the integrated PIO peripheral and is therefore only available on this MCU.

There are strict requirements for pin ordering but any pair of GPIO pins can be used. The GPIO used for clock must be directly after data, see the included info.json snippet for an example of correct order.

You may optionally switch the PIO peripheral used with the following define in config.h:

c
#define PS2_PIO_USE_PIO1 // Force the usage of PIO1 peripheral, by default the PS2 implementation uses the PIO0 peripheral

Example info.json content:

json
    "ps2": {\n        "clock_pin": "GP1",\n        "data_pin": "GP0",\n        "driver": "vendor",\n        "enabled": true,\n        "mouse_enabled": true\n    }

Additional Settings

PS/2 Mouse Features

These enable settings supported by the PS/2 mouse protocol.

c
/* Use remote mode instead of the default stream mode (see link) */\n#define PS2_MOUSE_USE_REMOTE_MODE\n\n/* Enable the scrollwheel or scroll gesture on your mouse or touchpad */\n#define PS2_MOUSE_ENABLE_SCROLLING\n\n/* Some mice will need a scroll mask to be configured. The default is 0xFF. */\n#define PS2_MOUSE_SCROLL_MASK 0x0F\n\n/* Applies a transformation to the movement before sending to the host (see link) */\n#define PS2_MOUSE_USE_2_1_SCALING\n\n/* The time to wait after initializing the ps2 host */\n#define PS2_MOUSE_INIT_DELAY 1000 /* Default */

You can also call the following functions from ps2_mouse.h

c
void ps2_mouse_disable_data_reporting(void);\n\nvoid ps2_mouse_enable_data_reporting(void);\n\nvoid ps2_mouse_set_remote_mode(void);\n\nvoid ps2_mouse_set_stream_mode(void);\n\nvoid ps2_mouse_set_scaling_2_1(void);\n\nvoid ps2_mouse_set_scaling_1_1(void);\n\nvoid ps2_mouse_set_resolution(ps2_mouse_resolution_t resolution);\n\nvoid ps2_mouse_set_sample_rate(ps2_mouse_sample_rate_t sample_rate);

Fine Control

Use the following defines to change the sensitivity and speed of the mouse. Note: you can also use ps2_mouse_set_resolution for the same effect (not supported on most touchpads).

c
#define PS2_MOUSE_X_MULTIPLIER 3\n#define PS2_MOUSE_Y_MULTIPLIER 3\n#define PS2_MOUSE_V_MULTIPLIER 1

Scroll Button

If you're using a trackpoint, you will likely want to be able to use it for scrolling. It's possible to enable a "scroll button/s" that when pressed will cause the mouse to scroll instead of moving. To enable the feature, you must set a scroll button mask as follows:

c
#define PS2_MOUSE_SCROLL_BTN_MASK (1<<PS2_MOUSE_BTN_MIDDLE) /* Default */

To disable the scroll button feature:

c
#define PS2_MOUSE_SCROLL_BTN_MASK 0

The available buttons are:

c
#define PS2_MOUSE_BTN_LEFT      0\n#define PS2_MOUSE_BTN_RIGHT     1\n#define PS2_MOUSE_BTN_MIDDLE    2

You can also combine buttons in the mask by |ing them together.

Once you've configured your scroll button mask, you must configure the scroll button send interval. This is the interval before which if the scroll buttons were released they would be sent to the host. After this interval, they will cause the mouse to scroll and will not be sent.

c
#define PS2_MOUSE_SCROLL_BTN_SEND 300 /* Default */

To disable sending the scroll buttons:

c
#define PS2_MOUSE_SCROLL_BTN_SEND 0

Fine control over the scrolling is supported with the following defines:

c
#define PS2_MOUSE_SCROLL_DIVISOR_H 2\n#define PS2_MOUSE_SCROLL_DIVISOR_V 2

Invert Mouse buttons

To invert the left & right buttons you can put:

c
#define PS2_MOUSE_INVERT_BUTTONS

into config.h.

Invert Mouse and Scroll Axes

To invert the X and Y axes you can put:

c
#define PS2_MOUSE_INVERT_X\n#define PS2_MOUSE_INVERT_Y

into config.h.

To reverse the scroll axes you can put:

c
#define PS2_MOUSE_INVERT_H\n#define PS2_MOUSE_INVERT_V

into config.h.

Rotate Mouse Axes

Transform the output of the device with a clockwise rotation of 90, 180, or 270 degrees.

When compensating for device orientation, rotate the output the same amount in the opposite direction. E.g. if the normal device orientation is considered to be North-facing, compensate as follows:

c
#define PS2_MOUSE_ROTATE 270 /* Compensate for East-facing device orientation. */
c
#define PS2_MOUSE_ROTATE 180 /* Compensate for South-facing device orientation. */
c
#define PS2_MOUSE_ROTATE 90 /* Compensate for West-facing device orientation. */

Debug Settings

To debug the mouse, add debug_mouse = true or enable via bootmagic.

c
/* To debug the mouse reports */\n#define PS2_MOUSE_DEBUG_HID\n#define PS2_MOUSE_DEBUG_RAW

Movement Hook

Process mouse movement in the keymap before it is sent to the host. Example uses include filtering noise, adding acceleration, and automatically activating a layer. To use, define the following function in your keymap:

c
void ps2_mouse_moved_user(report_mouse_t *mouse_report);
', 88); diff --git a/assets/features_ps2_mouse.md.qDR2aVVH.lean.js b/assets/features_ps2_mouse.md.CN8mIpft.lean.js similarity index 83% rename from assets/features_ps2_mouse.md.qDR2aVVH.lean.js rename to assets/features_ps2_mouse.md.CN8mIpft.lean.js index f28c4a366d6..530d9ae910c 100644 --- a/assets/features_ps2_mouse.md.qDR2aVVH.lean.js +++ b/assets/features_ps2_mouse.md.CN8mIpft.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"PS/2 Mouse Support","description":"","frontmatter":{},"headers":[],"relativePath":"features/ps2_mouse.md","filePath":"features/ps2_mouse.md","lastUpdated":null}'); const _sfc_main = { name: "features/ps2_mouse.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 88); diff --git a/assets/features_rawhid.md.CFU7cft3.js b/assets/features_rawhid.md.DB4DvYln.js similarity index 99% rename from assets/features_rawhid.md.CFU7cft3.js rename to assets/features_rawhid.md.DB4DvYln.js index 0afb44662fb..59a125d903e 100644 --- a/assets/features_rawhid.md.CFU7cft3.js +++ b/assets/features_rawhid.md.DB4DvYln.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Raw HID","description":"","frontmatter":{},"headers":[],"relativePath":"features/rawhid.md","filePath":"features/rawhid.md","lastUpdated":null}'); const _sfc_main = { name: "features/rawhid.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Raw HID

The Raw HID feature allows for bidirectional communication between QMK and the host computer over an HID interface. This has many potential use cases, such as switching keymaps on the fly or sending useful metrics like CPU/RAM usage.

In order to communicate with the keyboard using this feature, you will need to write a program that runs on the host. As such, some basic programming skills are required - more if you intend to implement complex behaviour.

Usage

Add the following to your rules.mk:

make
RAW_ENABLE = yes

Basic Configuration

By default, the HID Usage Page and Usage ID for the Raw HID interface are 0xFF60 and 0x61. However, they can be changed if necessary by adding the following to your config.h:

DefineDefaultDescription
RAW_USAGE_PAGE0xFF60The usage page of the Raw HID interface
RAW_USAGE_ID0x61The usage ID of the Raw HID interface

Sending Data to the Keyboard

To send data to the keyboard, you must first find a library for communicating with HID devices in the programming language of your choice. Here are some examples:

Please refer to these libraries' own documentation for instructions on usage. Remember to close the device once you are finished with it!

Next, you will need to know the USB Vendor and Product IDs of the device. These can easily be found by looking at your keyboard's info.json, under the usb object (alternatively, you can also use Device Manager on Windows, System Information on macOS, or lsusb on Linux). For example, the Vendor ID for the Planck Rev 6 is 0x03A8, and the Product ID is 0xA4F9.

It's also a good idea to narrow down the list of potential HID devices the library may give you by filtering on the usage page and usage ID, to avoid accidentally opening the interface on the same device for the keyboard, or mouse, or media keys, etc.

Once you are able to open the HID device and send reports to it, it's time to handle them on the keyboard side. Implement the following function in your keymap.c and start coding:

c
void raw_hid_receive(uint8_t *data, uint8_t length) {\n    // Your code goes here\n    // `data` is a pointer to the buffer containing the received HID report\n    // `length` is the length of the report - always `RAW_EPSIZE`\n}

WARNING

Because the HID specification does not support variable length reports, all reports in both directions must be exactly RAW_EPSIZE (currently 32) bytes long, regardless of actual payload length. However, variable length payloads can potentially be implemented on top of this by creating your own data structure that may span multiple reports.

Receiving Data from the Keyboard

If you need the keyboard to send data back to the host, simply call the raw_hid_send() function. It requires two arguments - a pointer to a 32-byte buffer containing the data you wish to send, and the length (which should always be RAW_EPSIZE).

The received report can then be handled in whichever way your HID library provides.

Simple Example

The following example reads the first byte of the received report from the host, and if it is an ASCII "A", responds with "B". memset() is used to fill the response buffer (which could still contain the previous response) with null bytes.

c
void raw_hid_receive(uint8_t *data, uint8_t length) {\n    uint8_t response[length];\n    memset(response, 0, length);\n    response[0] = 'B';\n\n    if(data[0] == 'A') {\n        raw_hid_send(response, length);\n    }\n}

On the host side (here we are using Python and the pyhidapi library), the HID device is opened by enumerating the interfaces on the USB device, then filtering on the usage page and usage ID. Then, a report containing a single ASCII "A" (hex 0x41) is constructed and sent.

For demonstration purposes, the manufacturer and product strings of the device, along with the request and response, are also printed.

python
import sys\nimport hid\n\nvendor_id     = 0x4335\nproduct_id    = 0x0002\n\nusage_page    = 0xFF60\nusage         = 0x61\nreport_length = 32\n\ndef get_raw_hid_interface():\n    device_interfaces = hid.enumerate(vendor_id, product_id)\n    raw_hid_interfaces = [i for i in device_interfaces if i['usage_page'] == usage_page and i['usage'] == usage]\n\n    if len(raw_hid_interfaces) == 0:\n        return None\n\n    interface = hid.Device(path=raw_hid_interfaces[0]['path'])\n\n    print(f"Manufacturer: {interface.manufacturer}")\n    print(f"Product: {interface.product}")\n\n    return interface\n\ndef send_raw_report(data):\n    interface = get_raw_hid_interface()\n\n    if interface is None:\n        print("No device found")\n        sys.exit(1)\n\n    request_data = [0x00] * (report_length + 1) # First byte is Report ID\n    request_data[1:len(data) + 1] = data\n    request_report = bytes(request_data)\n\n    print("Request:")\n    print(request_report)\n\n    try:\n        interface.write(request_report)\n\n        response_report = interface.read(report_length, timeout=1000)\n\n        print("Response:")\n        print(response_report)\n    finally:\n        interface.close()\n\nif __name__ == '__main__':\n    send_raw_report([\n        0x41\n    ])

API

void raw_hid_receive(uint8_t *data, uint8_t length)

Callback, invoked when a raw HID report has been received from the host.

Arguments


void raw_hid_send(uint8_t *data, uint8_t length)

Send an HID report.

Arguments

', 37); diff --git a/assets/features_rawhid.md.CFU7cft3.lean.js b/assets/features_rawhid.md.DB4DvYln.lean.js similarity index 82% rename from assets/features_rawhid.md.CFU7cft3.lean.js rename to assets/features_rawhid.md.DB4DvYln.lean.js index 541b2ef8ef8..c8a2558ac26 100644 --- a/assets/features_rawhid.md.CFU7cft3.lean.js +++ b/assets/features_rawhid.md.DB4DvYln.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Raw HID","description":"","frontmatter":{},"headers":[],"relativePath":"features/rawhid.md","filePath":"features/rawhid.md","lastUpdated":null}'); const _sfc_main = { name: "features/rawhid.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 37); diff --git a/assets/features_repeat_key.md.BWrZx7Ty.js b/assets/features_repeat_key.md.CSo9ygph.js similarity index 99% rename from assets/features_repeat_key.md.BWrZx7Ty.js rename to assets/features_repeat_key.md.CSo9ygph.js index 3b0e08ddbd3..bcaac3e024d 100644 --- a/assets/features_repeat_key.md.BWrZx7Ty.js +++ b/assets/features_repeat_key.md.CSo9ygph.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Repeat Key","description":"","frontmatter":{},"headers":[],"relativePath":"features/repeat_key.md","filePath":"features/repeat_key.md","lastUpdated":null}'); const _sfc_main = { name: "features/repeat_key.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Repeat Key

The Repeat Key performs the action of the last pressed key. Tapping the Repeat Key after tapping the Z key types another "z." This is useful for typing doubled letters, like the z in "dazzle": a double tap on Z can instead be a roll from Z to Repeat, which is potentially faster and more comfortable. The Repeat Key is also useful for hotkeys, like repeating Ctrl + Shift + Right Arrow to select by word.

Repeat Key remembers mods that were active with the last key press. These mods are combined with any additional mods while pressing the Repeat Key. If the last press key was Ctrl + Z, then Shift + Repeat performs Ctrl + Shift + Z.

How do I enable Repeat Key

In your rules.mk, add:

make
REPEAT_KEY_ENABLE = yes

Then pick a key in your keymap and assign it the keycode QK_REPEAT_KEY (short alias QK_REP). Optionally, use the keycode QK_ALT_REPEAT_KEY (short alias QK_AREP) on another key.

Keycodes

KeycodeAliasesDescription
QK_REPEAT_KEYQK_REPRepeat the last pressed key
QK_ALT_REPEAT_KEYQK_AREPPerform alternate of the last key

Alternate Repeating

The Alternate Repeat Key performs the "alternate" action of the last pressed key if it is defined. By default, Alternate Repeat is defined for navigation keys to act in the reverse direction. When the last key is the common "select by word" hotkey Ctrl + Shift + Right Arrow, the Alternate Repeat Key performs Ctrl + Shift + Left Arrow, which together with the Repeat Key enables convenient selection by words in either direction.

Alternate Repeat is enabled with the Repeat Key by default. Optionally, to reduce firmware size, Alternate Repeat may be disabled by adding in config.h:

c
#define NO_ALT_REPEAT_KEY

The following alternate keys are defined by default. See get_alt_repeat_key_keycode_user() below for how to change or add to these definitions. Where it makes sense, these definitions also include combinations with mods, like Ctrl + Left ↔ Ctrl + Right Arrow.

Navigation

KeycodesDescription
KC_LEFTKC_RGHTLeft ↔ Right Arrow
KC_UPKC_DOWNUp ↔ Down Arrow
KC_HOMEKC_ENDHome ↔ End
KC_PGUPKC_PGDNPage Up ↔ Page Down
MS_LEFTMS_RGHTMouse Cursor Left ↔ Right
MS_UPMS_DOWNMouse Cursor Up ↔ Down
MS_WHLLMS_WHLRMouse Wheel Left ↔ Right
MS_WHLUMS_WHLDMouse Wheel Up ↔ Down

Misc

KeycodesDescription
KC_BSPCKC_DELBackspace ↔ Delete
KC_LBRCKC_RBRC[]
KC_LCBRKC_RCBR{}

Media

KeycodesDescription
KC_WBAKKC_WFWDBrowser Back ↔ Forward
KC_MNXTKC_MPRVNext ↔ Previous Media Track
KC_MFFDKC_MRWDFast Forward ↔ Rewind Media
KC_VOLUKC_VOLDVolume Up ↔ Down
KC_BRIUKC_BRIDBrightness Up ↔ Down

Hotkeys in Vim, Emacs, and other programs

KeycodesDescription
mod + KC_F ↔ mod + KC_BForward ↔ Backward
mod + KC_D ↔ mod + KC_UDown ↔ Up
mod + KC_N ↔ mod + KC_PNext ↔ Previous
mod + KC_A ↔ mod + KC_EHome ↔ End
mod + KC_O ↔ mod + KC_IVim jump list Older ↔ Newer
KC_JKC_KDown ↔ Up
KC_HKC_LLeft ↔ Right
KC_WKC_BForward ↔ Backward by Word

(where above, "mod" is Ctrl, Alt, or GUI)

Defining alternate keys

Use the get_alt_repeat_key_keycode_user() callback to define the "alternate" for additional keys or override the default definitions. For example, to define Ctrl + Y as the alternate of Ctrl + Z, and vice versa, add the following in keymap.c:

c
uint16_t get_alt_repeat_key_keycode_user(uint16_t keycode, uint8_t mods) {\n    if ((mods & MOD_MASK_CTRL)) {  // Was Ctrl held?\n        switch (keycode) {\n            case KC_Y: return C(KC_Z);  // Ctrl + Y reverses to Ctrl + Z.\n            case KC_Z: return C(KC_Y);  // Ctrl + Z reverses to Ctrl + Y.\n        }\n    }\n\n    return KC_TRNS;  // Defer to default definitions.\n}

The keycode and mods args are the keycode and mods that were active with the last pressed key. The meaning of the return value from this function is:

Another example, defining Shift + Tab as the alternate of Tab, and vice versa:

c
uint16_t get_alt_repeat_key_keycode_user(uint16_t keycode, uint8_t mods) {\n    bool shifted = (mods & MOD_MASK_SHIFT);  // Was Shift held?\n    switch (keycode) {\n        case KC_TAB:\n            if (shifted) {        // If the last key was Shift + Tab,\n                return KC_TAB;    // ... the reverse is Tab.\n            } else {              // Otherwise, the last key was Tab,\n                return S(KC_TAB); // ... and the reverse is Shift + Tab.\n            }\n    }\n\n    return KC_TRNS;\n}

Eliminating SFBs

Alternate Repeat can be configured more generally to perform an action that "complements" the last key. Alternate Repeat is not limited to reverse repeating, and it need not be symmetric. You can use it to eliminate cases of same-finger bigrams in your layout, that is, pairs of letters typed by the same finger. The following addresses the top 5 same-finger bigrams in English on QWERTY, so that for instance "ed" may be typed as E, Alt Repeat.

c
uint16_t get_alt_repeat_key_keycode_user(uint16_t keycode, uint8_t mods) {\n    switch (keycode) {\n        case KC_E: return KC_D;  // For "ED" bigram.\n        case KC_D: return KC_E;  // For "DE" bigram.\n        case KC_C: return KC_E;  // For "CE" bigram.\n        case KC_L: return KC_O;  // For "LO" bigram.\n        case KC_U: return KC_N;  // For "UN" bigram.\n    }\n\n    return KC_TRNS;\n}

Typing shortcuts

A useful possibility is having Alternate Repeat press a macro. This way macros can be used without having to dedicate keys to them. The following defines a couple shortcuts.

c
enum custom_keycodes {\n    M_KEYBOARD = SAFE_RANGE,\n    M_UPDIR,\n    // Other custom keys...\n};\n\nuint16_t get_alt_repeat_key_keycode_user(uint16_t keycode, uint8_t mods) {\n    switch (keycode) {\n        case KC_K: return M_KEYBOARD;\n        case KC_DOT: return M_UPDIR;\n    }\n\n    return KC_TRNS;\n}\n\nbool process_record_user(uint16_t keycode, keyrecord_t* record) {\n    switch (keycode) {\n        case M_KEYBOARD: SEND_STRING(/*k*/"eyboard"); break;\n        case M_UPDIR: SEND_STRING(/*.*/"./"); break;\n    }\n    return true;\n}

Ignoring certain keys and mods

In tracking what is "the last key" to be repeated or alternate repeated, modifier and layer switch keys are always ignored. This makes it possible to set some mods and change layers between pressing a key and repeating it. By default, all other (non-modifier, non-layer switch) keys are remembered so that they are eligible for repeating. To configure additional keys to be ignored, define remember_last_key_user() in your keymap.c.

Ignoring a key

The following ignores the Backspace key:

c
bool remember_last_key_user(uint16_t keycode, keyrecord_t* record,\n                            uint8_t* remembered_mods) {\n    switch (keycode) {\n        case KC_BSPC:\n            return false;  // Ignore backspace.\n    }\n\n    return true;  // Other keys can be repeated.\n}

Then for instance, the Repeat key in Left Arrow, Backspace, Repeat sends Left Arrow again instead of repeating Backspace.

The remember_last_key_user() callback is called on every key press excluding modifiers and layer switches. Returning true indicates the key is remembered, while false means it is ignored.

Filtering remembered mods

The remembered_mods arg represents the mods that will be remembered with this key. It can be modified to forget certain mods. This may be useful to forget capitalization when repeating shifted letters, so that "Aaron" does not becom "AAron":

c
bool remember_last_key_user(uint16_t keycode, keyrecord_t* record,\n                            uint8_t* remembered_mods) {\n    // Forget Shift on letter keys when Shift or AltGr are the only mods.\n    switch (keycode) {\n        case KC_A ... KC_Z:\n            if ((*remembered_mods & ~(MOD_MASK_SHIFT | MOD_BIT(KC_RALT))) == 0) {\n                *remembered_mods &= ~MOD_MASK_SHIFT;\n            }\n            break;\n    }\n\n    return true;\n}

Further conditions

Besides checking the keycode, this callback could also make conditions based on the current layer state (with IS_LAYER_ON(layer)) or mods (get_mods()). For example, the following ignores keys on layer 2 as well as key combinations involving GUI:

c
bool remember_last_key_user(uint16_t keycode, keyrecord_t* record,\n                            uint8_t* remembered_mods) {\n    if (IS_LAYER_ON(2) || (get_mods() & MOD_MASK_GUI)) {\n        return false;  // Ignore layer 2 keys and GUI chords.\n    }\n\n    return true;  // Other keys can be repeated.\n}

TIP

See Layer Functions and Checking Modifier State for further details.

Handle how a key is repeated

By default, pressing the Repeat Key will simply behave as if the last key were pressed again. This also works with macro keys with custom handlers, invoking the macro again. In case fine-tuning is needed for sensible repetition, you can handle how a key is repeated with get_repeat_key_count() within process_record_user().

The get_repeat_key_count() function returns a signed count of times the key has been repeated or alternate repeated. When a key is pressed as usual, get_repeat_key_count() is 0. On the first repeat, it is 1, then the second repeat, 2, and so on. Negative counts are used similarly for alternate repeating. For instance supposing MY_MACRO is a custom keycode used in the layout:

c
bool process_record_user(uint16_t keycode, keyrecord_t* record) {\n    switch (keycode) {\n        case MY_MACRO:\n            if (get_repeat_key_count() > 0) {\n                // MY_MACRO is being repeated!\n                if (record->event.pressed) {\n                    SEND_STRING("repeat!");\n                }\n            } else {\n                // MY_MACRO is being used normally.\n                if (record->event.pressed) {\n                    SEND_STRING("macro");\n                }\n            }\n            return false;\n\n        // Other macros...\n    }\n    return true;\n}

Handle how a key is alternate repeated

Pressing the Alternate Repeat Key behaves as if the "alternate" of the last pressed key were pressed, if an alternate is defined. To define how a particular key is alternate repeated, use the get_alt_repeat_key_keycode_user() callback as described above to define which keycode to use as its alternate. Beyond this, get_repeat_key_count() may be used in custom handlers to fine-tune behavior when alternate repeating.

The following example defines MY_MACRO as its own alternate, and specially handles repeating and alternate repeating:

c
uint16_t get_alt_repeat_key_keycode_user(uint16_t keycode, uint8_t mods) {\n    switch (keycode) {\n        case MY_MACRO: return MY_MACRO;  // MY_MACRO is its own alternate.\n    }\n    return KC_TRNS;\n}\n\nbool process_record_user(uint16_t keycode, keyrecord_t* record) {\n    switch (keycode) {\n        case MY_MACRO:\n            if (get_repeat_key_count() > 0) {        // Repeating.\n                if (record->event.pressed) {\n                    SEND_STRING("repeat!");\n                }\n            } else if (get_repeat_key_count() < 0) { // Alternate repeating.\n                if (record->event.pressed) {\n                    SEND_STRING("alt repeat!");\n                }\n            } else {                                 // Used normally.\n                if (record->event.pressed) {\n                    SEND_STRING("macro");\n                }\n            }\n            return false;\n\n        // Other macros...\n    }\n    return true;\n}

Functions

FunctionDescription
get_last_keycode()The last key's keycode, the key to be repeated.
get_last_mods()Mods to apply when repeating.
set_last_keycode(kc)Set the keycode to be repeated.
set_last_mods(mods)Set the mods to apply when repeating.
get_repeat_key_count()Signed count of times the key has been repeated or alternate repeated.
get_alt_repeat_key_keycode()Keycode to be used for alternate repeating.

Additional "Alternate" keys

By leveraging get_last_keycode() in macros, it is possible to define additional, distinct "Alternate Repeat"-like keys. The following defines two keys ALTREP2 and ALTREP3 and implements ten shortcuts with them for common English 5-gram letter patterns, taking inspiration from Stenotype:

TypingProducesTypingProduces
A, ALTREP2ationA, ALTREP3about
I, ALTREP2itionI, ALTREP3inter
S, ALTREP2ssionS, ALTREP3state
T, ALTREP2theirT, ALTREP3there
W, ALTREP2whichW, ALTREP3would
c
enum custom_keycodes {\n    ALTREP2 = SAFE_RANGE,\n    ALTREP3,\n};\n\n// Use ALTREP2 and ALTREP3 in your layout...\n\nbool remember_last_key_user(uint16_t keycode, keyrecord_t* record,\n                            uint8_t* remembered_mods) {\n    switch (keycode) {\n        case ALTREP2:\n        case ALTREP3:\n            return false;  // Ignore ALTREP keys.\n    }\n\n    return true;  // Other keys can be repeated.\n}\n\nstatic void process_altrep2(uint16_t keycode, uint8_t mods) {\n    switch (keycode) {\n        case KC_A: SEND_STRING(/*a*/"tion"); break;\n        case KC_I: SEND_STRING(/*i*/"tion"); break;\n        case KC_S: SEND_STRING(/*s*/"sion"); break;\n        case KC_T: SEND_STRING(/*t*/"heir"); break;\n        case KC_W: SEND_STRING(/*w*/"hich"); break;\n    }\n}\n\nstatic void process_altrep3(uint16_t keycode, uint8_t mods) {\n    switch (keycode) {\n        case KC_A: SEND_STRING(/*a*/"bout"); break;\n        case KC_I: SEND_STRING(/*i*/"nter"); break;\n        case KC_S: SEND_STRING(/*s*/"tate"); break;\n        case KC_T: SEND_STRING(/*t*/"here"); break;\n        case KC_W: SEND_STRING(/*w*/"ould"); break;\n    }\n}\n\nbool process_record_user(uint16_t keycode, keyrecord_t* record) {\n    switch (keycode) {\n        case ALTREP2:\n            if (record->event.pressed) {\n                process_altrep2(get_last_keycode(), get_last_mods());\n            }\n            return false;\n\n        case ALTREP3:\n            if (record->event.pressed) {\n                process_altrep3(get_last_keycode(), get_last_mods());\n            }\n            return false;\n    }\n\n    return true;\n}
', 65); diff --git a/assets/features_repeat_key.md.BWrZx7Ty.lean.js b/assets/features_repeat_key.md.CSo9ygph.lean.js similarity index 83% rename from assets/features_repeat_key.md.BWrZx7Ty.lean.js rename to assets/features_repeat_key.md.CSo9ygph.lean.js index 3ce410103e4..6609e905497 100644 --- a/assets/features_repeat_key.md.BWrZx7Ty.lean.js +++ b/assets/features_repeat_key.md.CSo9ygph.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Repeat Key","description":"","frontmatter":{},"headers":[],"relativePath":"features/repeat_key.md","filePath":"features/repeat_key.md","lastUpdated":null}'); const _sfc_main = { name: "features/repeat_key.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 65); diff --git a/assets/features_rgb_matrix.md.CooKQZqS.js b/assets/features_rgb_matrix.md.YAdnF1BU.js similarity index 99% rename from assets/features_rgb_matrix.md.CooKQZqS.js rename to assets/features_rgb_matrix.md.YAdnF1BU.js index 4a8d36cf937..cfab2b9c487 100644 --- a/assets/features_rgb_matrix.md.CooKQZqS.js +++ b/assets/features_rgb_matrix.md.YAdnF1BU.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"RGB Matrix Lighting","description":"","frontmatter":{},"headers":[],"relativePath":"features/rgb_matrix.md","filePath":"features/rgb_matrix.md","lastUpdated":null}'); const _sfc_main = { name: "features/rgb_matrix.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

RGB Matrix Lighting

This feature allows you to use RGB LED matrices driven by external drivers. It hooks into the RGBLIGHT system so you can use the same keycodes as RGBLIGHT to control it.

If you want to use single color LED's you should use the LED Matrix Subsystem instead.

Driver Configuration

RGB Matrix is an abstraction layer on top of an underlying LED driver API. The list of supported LED drivers is below; see the respective documentation for information on how to configure the driver.

DriverMax LEDs
APA102?
AW20216S72
IS31FL32186
IS31FL323612
IS31FL372945
IS31FL373148
IS31FL373364
IS31FL373632
IS31FL373748
IS31FL3741117
IS31FL3742A60
IS31FL3743A66
IS31FL374548
IS31FL3746A24
SNLED2735164
WS2812?

To assign the RGB Matrix driver, add the following to your rules.mk, for example:

make
RGB_MATRIX_DRIVER = is31fl3218

Common Configuration

From this point forward the configuration is the same for all the drivers. The led_config_t struct provides a key electrical matrix to led index lookup table, what the physical position of each LED is on the board, and what type of key or usage the LED if the LED represents. Here is a brief example:

c
led_config_t g_led_config = { {\n  // Key Matrix to LED Index\n  {   5, NO_LED, NO_LED,   0 },\n  { NO_LED, NO_LED, NO_LED, NO_LED },\n  {   4, NO_LED, NO_LED,   1 },\n  {   3, NO_LED, NO_LED,   2 }\n}, {\n  // LED Index to Physical Position\n  { 188,  16 }, { 187,  48 }, { 149,  64 }, { 112,  64 }, {  37,  48 }, {  38,  16 }\n}, {\n  // LED Index to Flag\n  1, 4, 4, 4, 4, 1\n} };

The first part, // Key Matrix to LED Index, tells the system what key this LED represents by using the key's electrical matrix row & col. The second part, // LED Index to Physical Position represents the LED's physical { x, y } position on the keyboard. The default expected range of values for { x, y } is the inclusive range { 0..224, 0..64 }. This default expected range is due to effects that calculate the center of the keyboard for their animations. The easiest way to calculate these positions is imagine your keyboard is a grid, and the top left of the keyboard represents { x, y } coordinate { 0, 0 } and the bottom right of your keyboard represents { 224, 64 }. Using this as a basis, you can use the following formula to calculate the physical position:

c
x = 224 / (NUMBER_OF_COLS - 1) * COL_POSITION\ny =  64 / (NUMBER_OF_ROWS - 1) * ROW_POSITION

Where NUMBER_OF_COLS, NUMBER_OF_ROWS, COL_POSITION, & ROW_POSITION are all based on the physical layout of your keyboard, not the electrical layout.

As mentioned earlier, the center of the keyboard by default is expected to be { 112, 32 }, but this can be changed if you want to more accurately calculate the LED's physical { x, y } positions. Keyboard designers can implement #define RGB_MATRIX_CENTER { 112, 32 } in their config.h file with the new center point of the keyboard, or where they want it to be allowing more possibilities for the { x, y } values. Do note that the maximum value for x or y is 255, and the recommended maximum is 224 as this gives animations runoff room before they reset.

// LED Index to Flag is a bitmask, whether or not a certain LEDs is of a certain type. It is recommended that LEDs are set to only 1 type.

Flags

DefineValueDescription
HAS_FLAGS(bits, flags)n/aEvaluates to true if bits has all flags set
HAS_ANY_FLAGS(bits, flags)n/aEvaluates to true if bits has any flags set
LED_FLAG_NONE0x00If this LED has no flags
LED_FLAG_ALL0xFFIf this LED has all flags
LED_FLAG_MODIFIER0x01If the LED is on a modifier key
LED_FLAG_UNDERGLOW0x02If the LED is for underglow
LED_FLAG_KEYLIGHT0x04If the LED is for key backlight
LED_FLAG_INDICATOR0x08If the LED is for keyboard state indication

Keycodes

KeyAliasesDescription
QK_RGB_MATRIX_ONRM_ONTurn on RGB Matrix
QK_RGB_MATRIX_OFFRM_OFFTurn off RGB Matrix
QK_RGB_MATRIX_TOGGLERM_TOGGToggle RGB Matrix on or off
QK_RGB_MATRIX_MODE_NEXTRM_NEXTCycle through animations
QK_RGB_MATRIX_MODE_PREVIOUSRM_PREVCycle through animations in reverse
QK_RGB_MATRIX_HUE_UPRM_HUEUCycle through hue
QK_RGB_MATRIX_HUE_DOWNRM_HUEDCycle through hue in reverse
QK_RGB_MATRIX_SATURATION_UPRM_SATUIncrease the saturation
QK_RGB_MATRIX_SATURATION_DOWNRM_SATDDecrease the saturation
QK_RGB_MATRIX_VALUE_UPRM_VALUIncrease the brightness level
QK_RGB_MATRIX_VALUE_DOWNRM_VALDDecrease the brightness level
QK_RGB_MATRIX_SPEED_UPRM_SPDUIncrease the animation speed
QK_RGB_MATRIX_SPEED_DOWNRM_SPDDDecrease the animation speed
QK_RGB_MATRIX_FLAG_NEXTRM_FLGNCycle through flags
QK_RGB_MATRIX_FLAG_PREVIOUSRM_FLGPCycle through flags in reverse

RGB Matrix Effects

All effects have been configured to support current configuration values (Hue, Saturation, Value, & Speed) unless otherwise noted below. These are the effects that are currently available:

c
enum rgb_matrix_effects {\n    RGB_MATRIX_NONE = 0,\n    RGB_MATRIX_SOLID_COLOR = 1,     // Static single hue, no speed support\n    RGB_MATRIX_ALPHAS_MODS,         // Static dual hue, speed is hue for secondary hue\n    RGB_MATRIX_GRADIENT_UP_DOWN,    // Static gradient top to bottom, speed controls how much gradient changes\n    RGB_MATRIX_GRADIENT_LEFT_RIGHT,    // Static gradient left to right, speed controls how much gradient changes\n    RGB_MATRIX_BREATHING,           // Single hue brightness cycling animation\n    RGB_MATRIX_BAND_SAT,        // Single hue band fading saturation scrolling left to right\n    RGB_MATRIX_BAND_VAL,        // Single hue band fading brightness scrolling left to right\n    RGB_MATRIX_BAND_PINWHEEL_SAT,   // Single hue 3 blade spinning pinwheel fades saturation\n    RGB_MATRIX_BAND_PINWHEEL_VAL,   // Single hue 3 blade spinning pinwheel fades brightness\n    RGB_MATRIX_BAND_SPIRAL_SAT,     // Single hue spinning spiral fades saturation\n    RGB_MATRIX_BAND_SPIRAL_VAL,     // Single hue spinning spiral fades brightness\n    RGB_MATRIX_CYCLE_ALL,           // Full keyboard solid hue cycling through full gradient\n    RGB_MATRIX_CYCLE_LEFT_RIGHT,    // Full gradient scrolling left to right\n    RGB_MATRIX_CYCLE_UP_DOWN,       // Full gradient scrolling top to bottom\n    RGB_MATRIX_CYCLE_OUT_IN,        // Full gradient scrolling out to in\n    RGB_MATRIX_CYCLE_OUT_IN_DUAL,   // Full dual gradients scrolling out to in\n    RGB_MATRIX_RAINBOW_MOVING_CHEVRON,  // Full gradient Chevron shapped scrolling left to right\n    RGB_MATRIX_CYCLE_PINWHEEL,      // Full gradient spinning pinwheel around center of keyboard\n    RGB_MATRIX_CYCLE_SPIRAL,        // Full gradient spinning spiral around center of keyboard\n    RGB_MATRIX_DUAL_BEACON,         // Full gradient spinning around center of keyboard\n    RGB_MATRIX_RAINBOW_BEACON,      // Full tighter gradient spinning around center of keyboard\n    RGB_MATRIX_RAINBOW_PINWHEELS,   // Full dual gradients spinning two halves of keyboard\n    RGB_MATRIX_FLOWER_BLOOMING,     // Full tighter gradient of first half scrolling left to right and second half scrolling right to left\n    RGB_MATRIX_RAINDROPS,           // Randomly changes a single key's hue\n    RGB_MATRIX_JELLYBEAN_RAINDROPS, // Randomly changes a single key's hue and saturation\n    RGB_MATRIX_HUE_BREATHING,       // Hue shifts up a slight amount at the same time, then shifts back\n    RGB_MATRIX_HUE_PENDULUM,        // Hue shifts up a slight amount in a wave to the right, then back to the left\n    RGB_MATRIX_HUE_WAVE,            // Hue shifts up a slight amount and then back down in a wave to the right\n    RGB_MATRIX_PIXEL_FRACTAL,       // Single hue fractal filled keys pulsing horizontally out to edges\n    RGB_MATRIX_PIXEL_FLOW,          // Pulsing RGB flow along LED wiring with random hues\n    RGB_MATRIX_PIXEL_RAIN,          // Randomly light keys with random hues\n    RGB_MATRIX_TYPING_HEATMAP,      // How hot is your WPM!\n    RGB_MATRIX_DIGITAL_RAIN,        // That famous computer simulation\n    RGB_MATRIX_SOLID_REACTIVE_SIMPLE,   // Pulses keys hit to hue & value then fades value out\n    RGB_MATRIX_SOLID_REACTIVE,      // Static single hue, pulses keys hit to shifted hue then fades to current hue\n    RGB_MATRIX_SOLID_REACTIVE_WIDE,       // Hue & value pulse near a single key hit then fades value out\n    RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE,  // Hue & value pulse near multiple key hits then fades value out\n    RGB_MATRIX_SOLID_REACTIVE_CROSS,      // Hue & value pulse the same column and row of a single key hit then fades value out\n    RGB_MATRIX_SOLID_REACTIVE_MULTICROSS, // Hue & value pulse the same column and row of multiple key hits then fades value out\n    RGB_MATRIX_SOLID_REACTIVE_NEXUS,      // Hue & value pulse away on the same column and row of a single key hit then fades value out\n    RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS, // Hue & value pulse away on the same column and row of multiple key hits then fades value out\n    RGB_MATRIX_SPLASH,              // Full gradient & value pulse away from a single key hit then fades value out\n    RGB_MATRIX_MULTISPLASH,         // Full gradient & value pulse away from multiple key hits then fades value out\n    RGB_MATRIX_SOLID_SPLASH,        // Hue & value pulse away from a single key hit then fades value out\n    RGB_MATRIX_SOLID_MULTISPLASH,   // Hue & value pulse away from multiple key hits then fades value out\n    RGB_MATRIX_STARLIGHT,           // LEDs turn on and off at random at varying brightness, maintaining user set color\n    RGB_MATRIX_STARLIGHT_SMOOTH,    // LEDs slowly increase and decrease in brightness randomly\n    RGB_MATRIX_STARLIGHT_DUAL_HUE,  // LEDs turn on and off at random at varying brightness, modifies user set hue by +- 30\n    RGB_MATRIX_STARLIGHT_DUAL_SAT,  // LEDs turn on and off at random at varying brightness, modifies user set saturation by +- 30\n    RGB_MATRIX_RIVERFLOW,           // Modification to breathing animation, offset's animation depending on key location to simulate a river flowing\n    RGB_MATRIX_EFFECT_MAX\n};

You can enable a single effect by defining ENABLE_[EFFECT_NAME] in your config.h:

DefineDescription
#define ENABLE_RGB_MATRIX_ALPHAS_MODSEnables RGB_MATRIX_ALPHAS_MODS
#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWNEnables RGB_MATRIX_GRADIENT_UP_DOWN
#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHTEnables RGB_MATRIX_GRADIENT_LEFT_RIGHT
#define ENABLE_RGB_MATRIX_BREATHINGEnables RGB_MATRIX_BREATHING
#define ENABLE_RGB_MATRIX_BAND_SATEnables RGB_MATRIX_BAND_SAT
#define ENABLE_RGB_MATRIX_BAND_VALEnables RGB_MATRIX_BAND_VAL
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SATEnables RGB_MATRIX_BAND_PINWHEEL_SAT
#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VALEnables RGB_MATRIX_BAND_PINWHEEL_VAL
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SATEnables RGB_MATRIX_BAND_SPIRAL_SAT
#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VALEnables RGB_MATRIX_BAND_SPIRAL_VAL
#define ENABLE_RGB_MATRIX_CYCLE_ALLEnables RGB_MATRIX_CYCLE_ALL
#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHTEnables RGB_MATRIX_CYCLE_LEFT_RIGHT
#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWNEnables RGB_MATRIX_CYCLE_UP_DOWN
#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRONEnables RGB_MATRIX_RAINBOW_MOVING_CHEVRON
#define ENABLE_RGB_MATRIX_CYCLE_OUT_INEnables RGB_MATRIX_CYCLE_OUT_IN
#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUALEnables RGB_MATRIX_CYCLE_OUT_IN_DUAL
#define ENABLE_RGB_MATRIX_CYCLE_PINWHEELEnables RGB_MATRIX_CYCLE_PINWHEEL
#define ENABLE_RGB_MATRIX_CYCLE_SPIRALEnables RGB_MATRIX_CYCLE_SPIRAL
#define ENABLE_RGB_MATRIX_DUAL_BEACONEnables RGB_MATRIX_DUAL_BEACON
#define ENABLE_RGB_MATRIX_RAINBOW_BEACONEnables RGB_MATRIX_RAINBOW_BEACON
#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELSEnables RGB_MATRIX_RAINBOW_PINWHEELS
#define ENABLE_RGB_MATRIX_FLOWER_BLOOMINGEnables RGB_MATRIX_FLOWER_BLOOMING
#define ENABLE_RGB_MATRIX_RAINDROPSEnables RGB_MATRIX_RAINDROPS
#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPSEnables RGB_MATRIX_JELLYBEAN_RAINDROPS
#define ENABLE_RGB_MATRIX_HUE_BREATHINGEnables RGB_MATRIX_HUE_BREATHING
#define ENABLE_RGB_MATRIX_HUE_PENDULUMEnables RGB_MATRIX_HUE_PENDULUM
#define ENABLE_RGB_MATRIX_HUE_WAVEEnables RGB_MATRIX_HUE_WAVE
#define ENABLE_RGB_MATRIX_PIXEL_FRACTALEnables RGB_MATRIX_PIXEL_FRACTAL
#define ENABLE_RGB_MATRIX_PIXEL_FLOWEnables RGB_MATRIX_PIXEL_FLOW
#define ENABLE_RGB_MATRIX_PIXEL_RAINEnables RGB_MATRIX_PIXEL_RAIN
#define ENABLE_RGB_MATRIX_STARLIGHTEnables RGB_MATRIX_STARLIGHT
#define ENABLE_RGB_MATRIX_STARLIGHT_SMOOTHEnables RGB_MATRIX_STARLIGHT_SMOOTH
#define ENABLE_RGB_MATRIX_STARLIGHT_DUAL_HUEEnables RGB_MATRIX_STARLIGHT_DUAL_HUE
#define ENABLE_RGB_MATRIX_STARLIGHT_DUAL_SATEnables RGB_MATRIX_STARLIGHT_DUAL_SAT
#define ENABLE_RGB_MATRIX_RIVERFLOWEnables RGB_MATRIX_RIVERFLOW
Framebuffer DefinesDescription
#define ENABLE_RGB_MATRIX_TYPING_HEATMAPEnables RGB_MATRIX_TYPING_HEATMAP
#define ENABLE_RGB_MATRIX_DIGITAL_RAINEnables RGB_MATRIX_DIGITAL_RAIN

TIP

These modes introduce additional logic that can increase firmware size.

Reactive DefinesDescription
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLEEnables RGB_MATRIX_SOLID_REACTIVE_SIMPLE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVEEnables RGB_MATRIX_SOLID_REACTIVE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDEEnables RGB_MATRIX_SOLID_REACTIVE_WIDE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDEEnables RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSSEnables RGB_MATRIX_SOLID_REACTIVE_CROSS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSSEnables RGB_MATRIX_SOLID_REACTIVE_MULTICROSS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUSEnables RGB_MATRIX_SOLID_REACTIVE_NEXUS
#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUSEnables RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS
#define ENABLE_RGB_MATRIX_SPLASHEnables RGB_MATRIX_SPLASH
#define ENABLE_RGB_MATRIX_MULTISPLASHEnables RGB_MATRIX_MULTISPLASH
#define ENABLE_RGB_MATRIX_SOLID_SPLASHEnables RGB_MATRIX_SOLID_SPLASH
#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASHEnables RGB_MATRIX_SOLID_MULTISPLASH

TIP

These modes introduce additional logic that can increase firmware size.

RGB Matrix Effect Typing Heatmap

This effect will color the RGB matrix according to a heatmap of recently pressed keys. Whenever a key is pressed its "temperature" increases as well as that of its neighboring keys. The temperature of each key is then decreased automatically every 25 milliseconds by default.

In order to change the delay of temperature decrease define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS:

c
#define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS 50

As heatmap uses the physical position of the leds set in the g_led_config, you may need to tweak the following options to get the best effect for your keyboard. Note the size of this grid is 224x64.

Limit the distance the effect spreads to surrounding keys.

c
#define RGB_MATRIX_TYPING_HEATMAP_SPREAD 40

Limit how hot surrounding keys get from each press.

c
#define RGB_MATRIX_TYPING_HEATMAP_AREA_LIMIT 16

Remove the spread effect entirely.

c
#define RGB_MATRIX_TYPING_HEATMAP_SLIM

It's also possible to adjust the tempo of heating up. It's defined as the number of shades that are increased on the HSV scale. Decreasing this value increases the number of keystrokes needed to fully heat up the key.

c
#define RGB_MATRIX_TYPING_HEATMAP_INCREASE_STEP 32

RGB Matrix Effect Solid Reactive

Solid reactive effects will pulse RGB light on key presses with user configurable hues. To enable gradient mode that will automatically change reactive color, add the following define:

c
#define RGB_MATRIX_SOLID_REACTIVE_GRADIENT_MODE

Gradient mode will loop through the color wheel hues over time and its duration can be controlled with the effect speed keycodes (RM_SPDU/RM_SPDD).

Custom RGB Matrix Effects

By setting RGB_MATRIX_CUSTOM_USER = yes in rules.mk, new effects can be defined directly from your keymap or userspace, without having to edit any QMK core files. To declare new effects, create a rgb_matrix_user.inc file in the user keymap directory or userspace folder.

TIP

Hardware maintainers who want to limit custom effects to a specific keyboard can create a rgb_matrix_kb.inc file in the root of the keyboard directory, and add RGB_MATRIX_CUSTOM_KB = yes to the keyboard level rules.mk.

c
// !!! DO NOT ADD #pragma once !!! //\n\n// Step 1.\n// Declare custom effects using the RGB_MATRIX_EFFECT macro\n// (note the lack of semicolon after the macro!)\nRGB_MATRIX_EFFECT(my_cool_effect)\nRGB_MATRIX_EFFECT(my_cool_effect2)\n\n// Step 2.\n// Define effects inside the `RGB_MATRIX_CUSTOM_EFFECT_IMPLS` ifdef block\n#ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS\n\n// e.g: A simple effect, self-contained within a single method\nstatic bool my_cool_effect(effect_params_t* params) {\n  RGB_MATRIX_USE_LIMITS(led_min, led_max);\n  for (uint8_t i = led_min; i < led_max; i++) {\n    rgb_matrix_set_color(i, 0xff, 0xff, 0x00);\n  }\n  return rgb_matrix_check_finished_leds(led_max);\n}\n\n// e.g: A more complex effect, relying on external methods and state, with\n// dedicated init and run methods\nstatic uint8_t some_global_state;\nstatic void my_cool_effect2_complex_init(effect_params_t* params) {\n  some_global_state = 1;\n}\nstatic bool my_cool_effect2_complex_run(effect_params_t* params) {\n  RGB_MATRIX_USE_LIMITS(led_min, led_max);\n  for (uint8_t i = led_min; i < led_max; i++) {\n    rgb_matrix_set_color(i, 0xff, some_global_state++, 0xff);\n  }\n  return rgb_matrix_check_finished_leds(led_max);\n}\nstatic bool my_cool_effect2(effect_params_t* params) {\n  if (params->init) my_cool_effect2_complex_init(params);\n  return my_cool_effect2_complex_run(params);\n}\n\n#endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS

To switch to your custom effect programmatically, simply call rgb_matrix_mode() and prepend RGB_MATRIX_CUSTOM_ to the effect name you specified in RGB_MATRIX_EFFECT(). For example, an effect declared as RGB_MATRIX_EFFECT(my_cool_effect) would be referenced with:

c
rgb_matrix_mode(RGB_MATRIX_CUSTOM_my_cool_effect);

For inspiration and examples, check out the built-in effects under quantum/rgb_matrix/animations/.

Colors

These are shorthands to popular colors. The RGB ones can be passed to the setrgb functions, while the HSV ones to the sethsv functions.

RGBHSV
RGB_AZUREHSV_AZURE
RGB_BLACK/RGB_OFFHSV_BLACK/HSV_OFF
RGB_BLUEHSV_BLUE
RGB_CHARTREUSEHSV_CHARTREUSE
RGB_CORALHSV_CORAL
RGB_CYANHSV_CYAN
RGB_GOLDHSV_GOLD
RGB_GOLDENRODHSV_GOLDENROD
RGB_GREENHSV_GREEN
RGB_MAGENTAHSV_MAGENTA
RGB_ORANGEHSV_ORANGE
RGB_PINKHSV_PINK
RGB_PURPLEHSV_PURPLE
RGB_REDHSV_RED
RGB_SPRINGGREENHSV_SPRINGGREEN
RGB_TEALHSV_TEAL
RGB_TURQUOISEHSV_TURQUOISE
RGB_WHITEHSV_WHITE
RGB_YELLOWHSV_YELLOW

These are defined in color.h. Feel free to add to this list!

Naming

If you wish to be able to use the name of an effect in your code -- say for a display indicator -- then you can enable the function rgb_matrix_get_mode_name in the following manner:

In your keymap's config.h:

c
#define RGB_MATRIX_MODE_NAME_ENABLE

In your keymap.c

c
const char* effect_name = rgb_matrix_get_mode_name(rgb_matrix_get_mode());\n// do something with `effect_name`, like `oled_write_ln(effect_name, false);`

INFO

rgb_matrix_get_mode_name() is not enabled by default as it increases the amount of flash memory used by the firmware based on the number of effects enabled.

Additional config.h Options

c
#define RGB_MATRIX_MODE_NAME_ENABLE // enables rgb_matrix_get_mode_name()\n#define RGB_MATRIX_KEYRELEASES // reactive effects respond to keyreleases (instead of keypresses)\n#define RGB_MATRIX_TIMEOUT 0 // number of milliseconds to wait until rgb automatically turns off\n#define RGB_MATRIX_SLEEP // turn off effects when suspended\n#define RGB_MATRIX_LED_PROCESS_LIMIT (RGB_MATRIX_LED_COUNT + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness)\n#define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness)\n#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255\n#define RGB_MATRIX_DEFAULT_ON true // Sets the default enabled state, if none has been set\n#define RGB_MATRIX_DEFAULT_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT // Sets the default mode, if none has been set\n#define RGB_MATRIX_DEFAULT_HUE 0 // Sets the default hue value, if none has been set\n#define RGB_MATRIX_DEFAULT_SAT 255 // Sets the default saturation value, if none has been set\n#define RGB_MATRIX_DEFAULT_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS // Sets the default brightness value, if none has been set\n#define RGB_MATRIX_DEFAULT_SPD 127 // Sets the default animation speed, if none has been set\n#define RGB_MATRIX_HUE_STEP 8 // The value by which to increment the hue per adjustment action\n#define RGB_MATRIX_SAT_STEP 16 // The value by which to increment the saturation per adjustment action\n#define RGB_MATRIX_VAL_STEP 16 // The value by which to increment the brightness per adjustment action\n#define RGB_MATRIX_SPD_STEP 16 // The value by which to increment the animation speed per adjustment action\n#define RGB_MATRIX_DEFAULT_FLAGS LED_FLAG_ALL // Sets the default LED flags, if none has been set\n#define RGB_MATRIX_SPLIT { X, Y } // (Optional) For split keyboards, the number of LEDs connected on each half. X = left, Y = Right.\n                                  // If reactive effects are enabled, you also will want to enable SPLIT_TRANSPORT_MIRROR\n#define RGB_TRIGGER_ON_KEYDOWN      // Triggers RGB keypress events on key down. This makes RGB control feel more responsive. This may cause RGB to not function properly on some boards\n#define RGB_MATRIX_FLAG_STEPS { LED_FLAG_ALL, LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER, LED_FLAG_UNDERGLOW, LED_FLAG_NONE } // Sets the flags which can be cycled through.

EEPROM storage

The EEPROM for it is currently shared with the LED Matrix system (it's generally assumed only one feature would be used at a time).

Callbacks

Indicators

If you want to set custom indicators, such as an LED for Caps Lock, or layer indication, then you can use the rgb_matrix_indicators_kb function on the keyboard level source file, or rgb_matrix_indicators_user function in the user keymap.c.

c
bool rgb_matrix_indicators_kb(void) {\n    if (!rgb_matrix_indicators_user()) {\n        return false;\n    }\n    rgb_matrix_set_color(index, red, green, blue);\n    return true;\n}

In addition, there are the advanced indicator functions. These are aimed at those with heavily customized displays, where rendering every LED per cycle is expensive. Such as some of the "drashna" layouts. This includes a special macro to help make this easier to use: RGB_MATRIX_INDICATOR_SET_COLOR(i, r, g, b).

c
bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {\n    RGB_MATRIX_INDICATOR_SET_COLOR(index, red, green, blue);\n    return false;\n}

Indicator Examples

Caps Lock indicator on alphanumeric flagged keys:

c
bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {\n    if (host_keyboard_led_state().caps_lock) {\n        for (uint8_t i = led_min; i < led_max; i++) {\n            if (g_led_config.flags[i] & LED_FLAG_KEYLIGHT) {\n                rgb_matrix_set_color(i, RGB_RED);\n            }\n        }\n    }\n    return false;\n}

Layer indicator on all keys:

c
bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {\n    for (uint8_t i = led_min; i < led_max; i++) {\n        switch(get_highest_layer(layer_state|default_layer_state)) {\n            case 2:\n                rgb_matrix_set_color(i, RGB_BLUE);\n                break;\n            case 1:\n                rgb_matrix_set_color(i, RGB_YELLOW);\n                break;\n            default:\n                break;\n        }\n    }\n    return false;\n}

Layer indicator only on keys with configured keycodes:

c
bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {\n    if (get_highest_layer(layer_state) > 0) {\n        uint8_t layer = get_highest_layer(layer_state);\n\n        for (uint8_t row = 0; row < MATRIX_ROWS; ++row) {\n            for (uint8_t col = 0; col < MATRIX_COLS; ++col) {\n                uint8_t index = g_led_config.matrix_co[row][col];\n\n                if (index >= led_min && index < led_max && index != NO_LED &&\n                keymap_key_to_keycode(layer, (keypos_t){col,row}) > KC_TRNS) {\n                    rgb_matrix_set_color(index, RGB_GREEN);\n                }\n            }\n        }\n    }\n    return false;\n}

TIP

Split keyboards will require layer state data syncing with #define SPLIT_LAYER_STATE_ENABLE. See Data Sync Options for more details.

Examples

This example sets the modifiers to be a specific color based on the layer state. You can use a switch case here, instead, if you would like. This uses HSV and then converts to RGB, because this allows the brightness to be limited (important when using the WS2812 driver).

c
bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {\n    hsv_t hsv = {0, 255, 255};\n\n    if (get_highest_layer(layer_state|default_layer_state) == 2) {\n        hsv = (hsv_t){130, 255, 255};\n    } else {\n        hsv = (hsv_t){30, 255, 255};\n    }\n\n    if (hsv.v > rgb_matrix_get_val()) {\n        hsv.v = rgb_matrix_get_val();\n    }\n    rgb_t rgb = hsv_to_rgb(hsv);\n\n    for (uint8_t i = led_min; i < led_max; i++) {\n        if (HAS_FLAGS(g_led_config.flags[i], 0x01)) { // 0x01 == LED_FLAG_MODIFIER\n            rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b);\n        }\n    }\n    return false;\n}

If you want to indicate a Host LED status (caps lock, num lock, etc), you can use something like this to light up the caps lock key:

c
bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) {\n    if (host_keyboard_led_state().caps_lock) {\n        RGB_MATRIX_INDICATOR_SET_COLOR(5, 255, 255, 255); // assuming caps lock is at led #5\n    } else {\n        RGB_MATRIX_INDICATOR_SET_COLOR(5, 0, 0, 0);\n    }\n    return false;\n}

TIP

RGB indicators on split keyboards will require state information synced to the slave half (e.g. #define SPLIT_LAYER_STATE_ENABLE). See data sync options for more details.

Indicators without RGB Matrix Effect

If you want to just use RGB indicators without RGB matrix effect, it is not possible to disable the latter because toggling RGB off will disable everything. You can workaround it with solid effect and colors off using this init function:

c
void keyboard_post_init_user(void) {\n    rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_COLOR);\n    rgb_matrix_sethsv_noeeprom(HSV_OFF);\n}

API

void rgb_matrix_toggle(void)

Toggle RGB Matrix on or off.


void rgb_matrix_toggle_noeeprom(void)

Toggle RGB Matrix on or off. New state is not written to EEPROM.


void rgb_matrix_enable(void)

Turn RGB Matrix on.


void rgb_matrix_enable_noeeprom(void)

Turn RGB Matrix on. New state is not written to EEPROM.


void rgb_matrix_disable(void)

Turn RGB Matrix off.


void rgb_matrix_disable_noeeprom(void)

Turn RGB Matrix off. New state is not written to EEPROM.


bool rgb_matrix_is_enabled(void)

Get the current enabled state of RGB Matrix.

Return Value

true if RGB Matrix is enabled.


void rgb_matrix_set_color(uint8_t index, uint8_t r, uint8_t g, uint8_t b)

Set the color of a single LED.

This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame.

Arguments


void rgb_matrix_set_color_all(uint8_t r, uint8_t g, uint8_t b)

Set the color of all LEDs.

This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame.

Arguments


void rgb_matrix_mode(uint8_t mode)

Set the currently running effect.

Arguments


void rgb_matrix_mode_noeeprom(uint8_t mode)

Set the currently running effect. New state is not written to EEPROM.

Arguments


void rgb_matrix_step(void)

Move to the next enabled effect.


void rgb_matrix_step_noeeprom(void)

Move to the next enabled effect. New state is not written to EEPROM.


void rgb_matrix_step_reverse(void)

Move to the previous enabled effect.


void rgb_matrix_step_reverse_noeeprom(void)

Move to the previous enabled effect. New state is not written to EEPROM.


uint8_t rgb_matrix_get_mode(void)

Get the currently running effect.

Return Value

The index of the currently running effect.


void rgb_matrix_increase_hue(void)

Increase the global effect hue.


void rgb_matrix_increase_hue_noeeprom(void)

Increase the global effect hue. New state is not written to EEPROM.


void rgb_matrix_decrease_hue(void)

Decrease the global effect hue.


void rgb_matrix_decrease_hue_noeeprom(void)

Decrease the global effect hue. New state is not written to EEPROM.


uint8_t rgb_matrix_get_hue(void)

Get the current global effect hue.

Return Value

The current hue value, from 0 to 255.


void rgb_matrix_increase_sat(void)

Increase the global effect saturation.


void rgb_matrix_increase_sat_noeeprom(void)

Increase the global effect saturation. New state is not written to EEPROM.


void rgb_matrix_decrease_sat(void)

Decrease the global effect saturation.


void rgb_matrix_decrease_sat_noeeprom(void)

Decrease the global effect saturation. New state is not written to EEPROM.


uint8_t rgb_matrix_get_sat(void)

Get the current global effect saturation.

Return Value

The current saturation value, from 0 to 255.


void rgb_matrix_increase_val(void)

Increase the global effect value (brightness).


void rgb_matrix_increase_val_noeeprom(void)

Increase the global effect value (brightness). New state is not written to EEPROM.


void rgb_matrix_decrease_val(void)

Decrease the global effect value (brightness).


void rgb_matrix_decrease_val_noeeprom(void)

Decrease the global effect value (brightness). New state is not written to EEPROM.


uint8_t rgb_matrix_get_val(void)

Get the current global effect value (brightness).

Return Value

The current brightness value, from 0 to 255.


void rgb_matrix_increase_speed(void)

Increase the effect speed.


void rgb_matrix_increase_speed_noeeprom(void)

Increase the effect speed. New state is not written to EEPROM.


void rgb_matrix_decrease_speed(void)

Decrease the effect speed.


void rgb_matrix_decrease_speed_noeeprom(void)

Decrease the effect speed. New state is not written to EEPROM.


void rgb_matrix_set_speed(uint8_t speed)

Set the effect speed.

Arguments


void rgb_matrix_set_speed_noeeprom(uint8_t speed)

Set the effect speed. New state is not written to EEPROM.

Arguments


uint8_t rgb_matrix_get_speed(void)

Get the current effect speed.

Return Value

The current effect speed, from 0 to 255.


void rgb_matrix_set_flags(led_flags_t flags)

Set the global effect flags.

Arguments


void rgb_matrix_set_flags_noeeprom(led_flags_t flags)

Set the global effect flags. New state is not written to EEPROM.

Arguments


void rgb_matrix_flags_step(void)

Move to the next flag combination.


void rgb_matrix_flags_step_noeeprom(void)

Move to the next flag combination. New state is not written to EEPROM.


void rgb_matrix_flags_step_reverse(void)

Move to the previous flag combination.


void rgb_matrix_flags_step_reverse_noeeprom(void)

Move to the previous flag combination. New state is not written to EEPROM.


uint8_t rgb_matrix_get_flags(void)

Get the current global effect flags.

Return Value

The current effect flags.


void rgb_matrix_sethsv(uint8_t h, uint8_t s, uint8_t v)

Set the global effect hue, saturation, and value (brightness).

Arguments


void rgb_matrix_sethsv_noeeprom(uint8_t h, uint8_t s, uint8_t v)

Set the global effect hue, saturation, and value (brightness). New state is not written to EEPROM.

Arguments


hsv_t rgb_matrix_get_hsv(void)

Get the current global effect hue, saturation, and value (brightness).

Return Value

The current effect HSV as an hsv_t struct.


void rgb_matrix_reload_from_eeprom(void)

Reload the effect configuration (enabled, mode and color) from EEPROM.


bool rgb_matrix_get_suspend_state(void)

Get the current suspend state of RGB Matrix.

Return Value

true if RGB Matrix is currently in the suspended state.


bool rgb_matrix_indicators_kb(void)

Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

Return Value

Currently unused.


bool rgb_matrix_indicators_user(void)

Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

Return Value

true to continue running the keyboard-level callback.


bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)

Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

Arguments

Return Value

Currently unused.


bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)

Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

Arguments

Return Value

true to continue running the keyboard-level callback.

', 305); diff --git a/assets/features_rgb_matrix.md.CooKQZqS.lean.js b/assets/features_rgb_matrix.md.YAdnF1BU.lean.js similarity index 83% rename from assets/features_rgb_matrix.md.CooKQZqS.lean.js rename to assets/features_rgb_matrix.md.YAdnF1BU.lean.js index 42c88936421..993fa8a6ccc 100644 --- a/assets/features_rgb_matrix.md.CooKQZqS.lean.js +++ b/assets/features_rgb_matrix.md.YAdnF1BU.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"RGB Matrix Lighting","description":"","frontmatter":{},"headers":[],"relativePath":"features/rgb_matrix.md","filePath":"features/rgb_matrix.md","lastUpdated":null}'); const _sfc_main = { name: "features/rgb_matrix.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 305); diff --git a/assets/features_rgblight.md.D-DgK2YJ.js b/assets/features_rgblight.md.Cld469wm.js similarity index 99% rename from assets/features_rgblight.md.D-DgK2YJ.js rename to assets/features_rgblight.md.Cld469wm.js index ad1a6e8c5c4..947db20560a 100644 --- a/assets/features_rgblight.md.D-DgK2YJ.js +++ b/assets/features_rgblight.md.Cld469wm.js @@ -1,5 +1,5 @@ import { _ as _imports_0 } from "./chunks/color-wheel.DIUCmfNZ.js"; -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_1 = "/vkYVo66.jpg"; const __pageData = JSON.parse('{"title":"RGB Lighting","description":"","frontmatter":{},"headers":[],"relativePath":"features/rgblight.md","filePath":"features/rgblight.md","lastUpdated":null}'); const _sfc_main = { name: "features/rgblight.md" }; diff --git a/assets/features_rgblight.md.D-DgK2YJ.lean.js b/assets/features_rgblight.md.Cld469wm.lean.js similarity index 85% rename from assets/features_rgblight.md.D-DgK2YJ.lean.js rename to assets/features_rgblight.md.Cld469wm.lean.js index 355618fef47..72a5f123f28 100644 --- a/assets/features_rgblight.md.D-DgK2YJ.lean.js +++ b/assets/features_rgblight.md.Cld469wm.lean.js @@ -1,5 +1,5 @@ import { _ as _imports_0 } from "./chunks/color-wheel.DIUCmfNZ.js"; -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_1 = "/vkYVo66.jpg"; const __pageData = JSON.parse('{"title":"RGB Lighting","description":"","frontmatter":{},"headers":[],"relativePath":"features/rgblight.md","filePath":"features/rgblight.md","lastUpdated":null}'); const _sfc_main = { name: "features/rgblight.md" }; diff --git a/assets/features_secure.md.BAyr6J6B.js b/assets/features_secure.md.DjnR-TYY.js similarity index 97% rename from assets/features_secure.md.BAyr6J6B.js rename to assets/features_secure.md.DjnR-TYY.js index 010600fd34c..855b7717fde 100644 --- a/assets/features_secure.md.BAyr6J6B.js +++ b/assets/features_secure.md.DjnR-TYY.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Secure","description":"","frontmatter":{},"headers":[],"relativePath":"features/secure.md","filePath":"features/secure.md","lastUpdated":null}'); const _sfc_main = { name: "features/secure.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Secure

The secure feature aims to prevent unwanted interaction without user intervention.

TIP

Secure does not currently implement encryption/decryption/etc and should not be a replacement where a strong hardware/software based solution is required.

Unlock sequence

To unlock, the user must perform a set of actions. This can optionally be configured to be multiple keys.

Automatic Locking

Once unlocked, the keyboard will revert back to a locked state after the configured timeout. The timeout can be refreshed by using the secure_activity_event function, for example from one of the various hooks.

Usage

Add the following to your rules.mk:

make
SECURE_ENABLE = yes

Keycodes

KeyAliasesDescription
QK_SECURE_LOCKSE_LOCKRevert back to a locked state
QK_SECURE_UNLOCKSE_UNLKForces unlock without performing a unlock sequence
QK_SECURE_TOGGLESE_TOGGToggle directly between locked and unlock without performing a unlock sequence
QK_SECURE_REQUESTSE_REQRequest that user perform the unlock sequence

Configuration

DefineDefaultDescription
SECURE_UNLOCK_TIMEOUT5000Timeout for the user to perform the configured unlock sequence - 0 to disable
SECURE_IDLE_TIMEOUT60000Timeout while unlocked before returning to locked - 0 to disable
SECURE_UNLOCK_SEQUENCE{ { 0, 0 } }Array of matrix locations describing a sequential sequence of keypresses

Functions

FunctionDescription
secure_is_locked()Check if the device is currently locked
secure_is_unlocking()Check if an unlock sequence is currently in progress
secure_is_unlocked()Check if the device is currently unlocked
secure_lock()Lock down the device
secure_unlock()Force unlock the device - bypasses user unlock sequence
secure_request_unlock()Begin listening for an unlock sequence
secure_activity_event()Flag that user activity has happened and the device should remain unlocked
', 17); diff --git a/assets/features_secure.md.BAyr6J6B.lean.js b/assets/features_secure.md.DjnR-TYY.lean.js similarity index 82% rename from assets/features_secure.md.BAyr6J6B.lean.js rename to assets/features_secure.md.DjnR-TYY.lean.js index cd42a7eb779..fed5005abff 100644 --- a/assets/features_secure.md.BAyr6J6B.lean.js +++ b/assets/features_secure.md.DjnR-TYY.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Secure","description":"","frontmatter":{},"headers":[],"relativePath":"features/secure.md","filePath":"features/secure.md","lastUpdated":null}'); const _sfc_main = { name: "features/secure.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 17); diff --git a/assets/features_send_string.md.Cze7R7D6.js b/assets/features_send_string.md.DAZ-KvOk.js similarity index 99% rename from assets/features_send_string.md.Cze7R7D6.js rename to assets/features_send_string.md.DAZ-KvOk.js index 1e7fd96f9c8..5ba6fb8a126 100644 --- a/assets/features_send_string.md.Cze7R7D6.js +++ b/assets/features_send_string.md.DAZ-KvOk.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Send String","description":"","frontmatter":{},"headers":[],"relativePath":"features/send_string.md","filePath":"features/send_string.md","lastUpdated":null}'); const _sfc_main = { name: "features/send_string.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Send String

The Send String API is part of QMK's macro system. It allows for sequences of keystrokes to be sent automatically.

The full ASCII character set is supported, along with all of the keycodes in the Basic Keycode range (as these are the only ones that will actually be sent to the host).

TIP

Unicode characters are not supported with this API -- see the Unicode feature instead.

Usage

Send String is enabled by default, so there is usually no need for any special setup. However, if it is disabled, add the following to your rules.mk:

make
SEND_STRING_ENABLE = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
SENDSTRING_BELLNot definedIf the Audio feature is enabled, the \\a character (ASCII BEL) will beep the speaker.
BELL_SOUNDTERMINAL_SOUNDThe song to play when the \\a character is encountered. By default, this is an eighth note of C5.

Keycodes

The Send String functions accept C string literals, but specific keycodes can be injected with the below macros. All of the keycodes in the Basic Keycode range are supported (as these are the only ones that will actually be sent to the host), but with an X_ prefix instead of KC_.

MacroDescription
SS_TAP(x)Send a keydown, then keyup, event for the given Send String keycode
SS_DOWN(x)Send a keydown event for the given Send String keycode
SS_UP(x)Send a keyup event for the given Send String keycode
SS_DELAY(ms)Wait for ms milliseconds

The following characters are also mapped to their respective keycodes for convenience:

CharacterHexASCIIKeycode
\\b\\x08BSKC_BACKSPACE
\\e\\x09ESCKC_ESCAPE
\\n\\x0ALFKC_ENTER
\\t\\x1BTABKC_TAB
\\x7FDELKC_DELETE

Language Support

By default, Send String assumes your OS keyboard layout is set to US ANSI. If you are using a different keyboard layout, you can override the lookup tables used to convert ASCII characters to keystrokes.

Examples

Hello World

A simple custom keycode which types out "Hello, world!" and the Enter key when pressed.

Add the following to your keymap.c:

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case SS_HELLO:\n            if (record->event.pressed) {\n                SEND_STRING("Hello, world!\\n");\n            }\n            return false;\n    }\n\n    return true;\n}

Keycode Injection

This example types out opening and closing curly braces, then taps the left arrow key to move the cursor between the two.

c
SEND_STRING("{}" SS_TAP(X_LEFT));

This example types Ctrl+A, then Ctrl+C, without releasing Ctrl.

c
SEND_STRING(SS_LCTL("ac"));

API

void send_string(const char *string)

Type out a string of ASCII characters.

This function simply calls send_string_with_delay(string, 0).

Arguments


void send_string_with_delay(const char *string, uint8_t interval)

Type out a string of ASCII characters, with a delay between each character.

Arguments


void send_string_P(const char *string)

Type out a PROGMEM string of ASCII characters.

On ARM devices, this function is simply an alias for send_string_with_delay(string, 0).

Arguments


void send_string_with_delay_P(const char *string, uint8_t interval)

Type out a PROGMEM string of ASCII characters, with a delay between each character.

On ARM devices, this function is simply an alias for send_string_with_delay(string, interval).

Arguments


void send_char(char ascii_code)

Type out an ASCII character.

Arguments


void send_dword(uint32_t number)

Type out an eight digit (unsigned 32-bit) hexadecimal value.

The format is [0-9a-f]{8}, eg. 00000000 through ffffffff.

Arguments


void send_word(uint16_t number)

Type out a four digit (unsigned 16-bit) hexadecimal value.

The format is [0-9a-f]{4}, eg. 0000 through ffff.

Arguments


void send_byte(uint8_t number)

Type out a two digit (8-bit) hexadecimal value.

The format is [0-9a-f]{2}, eg. 00 through ff.

Arguments


void send_nibble(uint8_t number)

Type out a single hexadecimal digit.

The format is [0-9a-f]{1}, eg. 0 through f.

Arguments


void tap_random_base64(void)

Type a pseudorandom character from the set A-Z, a-z, 0-9, + and /.


SEND_STRING(string)

Shortcut macro for send_string_with_delay_P(PSTR(string), 0).

On ARM devices, this define evaluates to send_string_with_delay(string, 0).


SEND_STRING_DELAY(string, interval)

Shortcut macro for send_string_with_delay_P(PSTR(string), interval).

On ARM devices, this define evaluates to send_string_with_delay(string, interval).

', 90); diff --git a/assets/features_send_string.md.Cze7R7D6.lean.js b/assets/features_send_string.md.DAZ-KvOk.lean.js similarity index 83% rename from assets/features_send_string.md.Cze7R7D6.lean.js rename to assets/features_send_string.md.DAZ-KvOk.lean.js index 1badfeea19d..baa4e4fb3f8 100644 --- a/assets/features_send_string.md.Cze7R7D6.lean.js +++ b/assets/features_send_string.md.DAZ-KvOk.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Send String","description":"","frontmatter":{},"headers":[],"relativePath":"features/send_string.md","filePath":"features/send_string.md","lastUpdated":null}'); const _sfc_main = { name: "features/send_string.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 90); diff --git a/assets/features_sequencer.md.g91MRf6I.js b/assets/features_sequencer.md.DlMJ9iBQ.js similarity index 98% rename from assets/features_sequencer.md.g91MRf6I.js rename to assets/features_sequencer.md.DlMJ9iBQ.js index fdb8489f393..254cfe2b0dd 100644 --- a/assets/features_sequencer.md.g91MRf6I.js +++ b/assets/features_sequencer.md.DlMJ9iBQ.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Sequencer","description":"","frontmatter":{},"headers":[],"relativePath":"features/sequencer.md","filePath":"features/sequencer.md","lastUpdated":null}'); const _sfc_main = { name: "features/sequencer.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Sequencer

Since QMK has experimental support for MIDI, you can now turn your keyboard into a step sequencer!

WARNING

This feature is highly experimental, it has only been tested on a Planck EZ so far. Also, the scope will be limited to support the drum machine use-case to start with.

Enable the step sequencer

Add the following line to your rules.mk:

make
SEQUENCER_ENABLE = yes

By default the sequencer has 16 steps, but you can override this setting in your config.h:

c
#define SEQUENCER_STEPS 32

Tracks

You can program up to 8 independent tracks with the step sequencer. Select the tracks you want to edit, enable or disable some steps, and start the sequence!

Resolutions

While the tempo defines the absolute speed at which the sequencer goes through the steps, the resolution defines the granularity of these steps (from coarser to finer).

ResolutionDescription
SQ_RES_2Every other beat
SQ_RES_2TEvery 1.5 beats
SQ_RES_4Every beat
SQ_RES_4TThree times per 2 beats
SQ_RES_8Twice per beat
SQ_RES_8TThree times per beat
SQ_RES_16Four times per beat
SQ_RES_16TSix times per beat
SQ_RES_32Eight times per beat

Keycodes

KeyAliasesDescription
QK_SEQUENCER_ONSQ_ONStart the step sequencer
QK_SEQUENCER_OFFSQ_OFFStop the step sequencer
QK_SEQUENCER_TOGGLESQ_TOGGToggle the step sequencer playback
QK_SEQUENCER_STEPS_ALLSQ_SALLEnable all the steps
QK_SEQUENCER_STEPS_CLEARSQ_SCLRDisable all the steps
QK_SEQUENCER_TEMPO_DOWNSQ_TMPDDecrease the tempo
QK_SEQUENCER_TEMPO_UPSQ_TMPUIncrease the tempo
QK_SEQUENCER_RESOLUTION_DOWNSQ_RESDChange to the slower resolution
QK_SEQUENCER_RESOLUTION_UPSQ_RESUChange to the faster resolution
SQ_S(n)Toggle the step n
SQ_R(n)Set the resolution to n
SQ_T(n)Set n as the only active track or deactivate all

Functions

FunctionDescription
bool is_sequencer_on(void);Return whether the sequencer is playing
void sequencer_toggle(void);Toggle the step sequencer playback
void sequencer_on(void);Start the step sequencer
void sequencer_off(void);Stop the step sequencer
bool is_sequencer_step_on(uint8_t step);Return whether the step is currently enabled
void sequencer_set_step(uint8_t step, bool value);Enable or disable the step
void sequencer_set_step_on();Enable the step
void sequencer_set_step_off();Disable the step
void sequencer_toggle_step(uint8_t step);Toggle the step
void sequencer_set_all_steps(bool value);Enable or disable all the steps
void sequencer_set_all_steps_on();Enable all the steps
void sequencer_set_all_steps_off();Disable all the steps
uint8_t sequencer_get_tempo(void);Return the current tempo
void sequencer_set_tempo(uint8_t tempo);Set the tempo to tempo (between 1 and 255)
void sequencer_increase_tempo(void);Increase the tempo
void sequencer_decrease_tempo(void);Decrease the tempo
sequencer_resolution_t sequencer_get_resolution(void);Return the current resolution
void sequencer_set_resolution(sequencer_resolution_t resolution);Set the resolution to resolution
void sequencer_increase_resolution(void);Change to the faster resolution
void sequencer_decrease_resolution(void);Change to the slower resolution
bool is_sequencer_track_active(uint8_t track);Return whether the track is active
void sequencer_set_track_activation(uint8_t track, bool value);Activate or deactivate the track
void sequencer_toggle_track_activation(uint8_t track);Toggle the track
void sequencer_activate_track(uint8_t track);Activate the track
void sequencer_deactivate_track(uint8_t track);Deactivate the track
void sequencer_toggle_single_active_track(uint8_t track);Set track as the only active track or deactivate all
', 17); diff --git a/assets/features_sequencer.md.g91MRf6I.lean.js b/assets/features_sequencer.md.DlMJ9iBQ.lean.js similarity index 83% rename from assets/features_sequencer.md.g91MRf6I.lean.js rename to assets/features_sequencer.md.DlMJ9iBQ.lean.js index cbbab9199bd..a9e0f5d144d 100644 --- a/assets/features_sequencer.md.g91MRf6I.lean.js +++ b/assets/features_sequencer.md.DlMJ9iBQ.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Sequencer","description":"","frontmatter":{},"headers":[],"relativePath":"features/sequencer.md","filePath":"features/sequencer.md","lastUpdated":null}'); const _sfc_main = { name: "features/sequencer.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 17); diff --git a/assets/features_space_cadet.md.Rc5mzUFA.js b/assets/features_space_cadet.md.BqY09XmY.js similarity index 98% rename from assets/features_space_cadet.md.Rc5mzUFA.js rename to assets/features_space_cadet.md.BqY09XmY.js index 239cf4be12f..4a6119c4086 100644 --- a/assets/features_space_cadet.md.Rc5mzUFA.js +++ b/assets/features_space_cadet.md.BqY09XmY.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Space Cadet: The Future, Built In","description":"","frontmatter":{},"headers":[],"relativePath":"features/space_cadet.md","filePath":"features/space_cadet.md","lastUpdated":null}'); const _sfc_main = { name: "features/space_cadet.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Space Cadet: The Future, Built In

Steve Losh described the Space Cadet Shift quite well. Essentially, when you tap Left Shift on its own, you get an opening parenthesis; tap Right Shift on its own and you get the closing one. When held, the Shift keys function as normal. Yes, it's as cool as it sounds, and now even cooler supporting Control and Alt as well!

Usage

Firstly, in your keymap, do one of the following:

Keycodes

KeycodeAliasesDescription
QK_SPACE_CADET_LEFT_CTRL_PARENTHESIS_OPENSC_LCPOLeft Control when held, ( when tapped
QK_SPACE_CADET_RIGHT_CTRL_PARENTHESIS_CLOSESC_RCPCRight Control when held, ) when tapped
QK_SPACE_CADET_LEFT_SHIFT_PARENTHESIS_OPENSC_LSPOLeft Shift when held, ( when tapped
QK_SPACE_CADET_RIGHT_SHIFT_PARENTHESIS_CLOSESC_RSPCRight Shift when held, ) when tapped
QK_SPACE_CADET_LEFT_ALT_PARENTHESIS_OPENSC_LAPOLeft Alt when held, ( when tapped
QK_SPACE_CADET_RIGHT_ALT_PARENTHESIS_CLOSESC_RAPCRight Alt when held, ) when tapped
QK_SPACE_CADET_RIGHT_SHIFT_ENTERSC_SENTRight Shift when held, Enter when tapped

Caveats

Space Cadet's functionality can conflict with the default Command functionality when both Shift keys are held at the same time. See the Command feature for info on how to change it, or make sure that Command is disabled in your rules.mk with:

make
COMMAND_ENABLE = no

Configuration

By default Space Cadet assumes a US ANSI layout, but if your layout uses different keys for parentheses, you can redefine them in your config.h. In addition, you can redefine the modifier to send on tap, or even send no modifier at all. The new configuration defines bundle all options up into a single define of 3 key codes in this order: the Modifier when held or when used with other keys, the Tap Modifier sent when tapped (no modifier if KC_TRNS), finally the Keycode sent when tapped. Now keep in mind, mods from other keys will still apply to the Keycode if say KC_RSFT is held while tapping SC_LSPO key with KC_TRNS as the Tap Modifier.

DefineDefaultDescription
LSPO_KEYSKC_LSFT, LSPO_MOD, LSPO_KEYSend KC_LSFT when held, the mod and key defined by LSPO_MOD and LSPO_KEY.
RSPC_KEYSKC_RSFT, RSPC_MOD, RSPC_KEYSend KC_RSFT when held, the mod and key defined by RSPC_MOD and RSPC_KEY.
LCPO_KEYSKC_LCTL, KC_LSFT, KC_9Send KC_LCTL when held, the mod KC_LSFT with the key KC_9 when tapped.
RCPC_KEYSKC_RCTL, KC_RSFT, KC_0Send KC_RCTL when held, the mod KC_RSFT with the key KC_0 when tapped.
LAPO_KEYSKC_LALT, KC_LSFT, KC_9Send KC_LALT when held, the mod KC_LSFT with the key KC_9 when tapped.
RAPC_KEYSKC_RALT, KC_RSFT, KC_0Send KC_RALT when held, the mod KC_RSFT with the key KC_0 when tapped.
SFTENT_KEYSKC_RSFT, KC_TRNS, SFTENT_KEYSend KC_RSFT when held, no mod with the key SFTENT_KEY when tapped.
SPACE_CADET_MODIFIER_CARRYOVERNot definedStore current modifiers before the hold mod is pressed and use them with the tap mod and keycode. Useful for when you frequently release a modifier before triggering Space Cadet.

Obsolete Configuration

These defines are used in the above defines internally to support backwards compatibility, so you may continue to use them, however the above defines open up a larger range of flexibility than before. As an example, say you want to not send any modifier when you tap just SC_LSPO, with the old defines you had an all or nothing choice of using the DISABLE_SPACE_CADET_MODIFIER define. Now you can define that key as: #define LSPO_KEYS KC_LSFT, KC_TRNS, KC_9. This tells the system to set Left Shift if held or used with other keys, then on tap send no modifier (transparent) with the KC_9.

DefineDefaultDescription
LSPO_KEYKC_9The keycode to send when Left Shift is tapped
RSPC_KEYKC_0The keycode to send when Right Shift is tapped
LSPO_MODKC_LSFTThe modifier to apply to LSPO_KEY
RSPC_MODKC_RSFTThe modifier to apply to RSPC_KEY
SFTENT_KEYKC_ENTThe keycode to send when the Shift key is tapped
DISABLE_SPACE_CADET_MODIFIERNot definedIf defined, prevent the Space Cadet from applying a modifier
', 16); diff --git a/assets/features_space_cadet.md.Rc5mzUFA.lean.js b/assets/features_space_cadet.md.BqY09XmY.lean.js similarity index 83% rename from assets/features_space_cadet.md.Rc5mzUFA.lean.js rename to assets/features_space_cadet.md.BqY09XmY.lean.js index 6491da67572..9d8f1fce2ee 100644 --- a/assets/features_space_cadet.md.Rc5mzUFA.lean.js +++ b/assets/features_space_cadet.md.BqY09XmY.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Space Cadet: The Future, Built In","description":"","frontmatter":{},"headers":[],"relativePath":"features/space_cadet.md","filePath":"features/space_cadet.md","lastUpdated":null}'); const _sfc_main = { name: "features/space_cadet.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 16); diff --git a/assets/features_split_keyboard.md.zh-H1dzG.js b/assets/features_split_keyboard.md.CP5P3ND7.js similarity index 99% rename from assets/features_split_keyboard.md.zh-H1dzG.js rename to assets/features_split_keyboard.md.CP5P3ND7.js index 22c975118cd..47647191681 100644 --- a/assets/features_split_keyboard.md.zh-H1dzG.js +++ b/assets/features_split_keyboard.md.CP5P3ND7.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/QeY6kMQ.png"; const _imports_1 = "/4wjJzBU.png"; const _imports_2 = "/BPEC5n5.jpg"; diff --git a/assets/features_split_keyboard.md.zh-H1dzG.lean.js b/assets/features_split_keyboard.md.CP5P3ND7.lean.js similarity index 85% rename from assets/features_split_keyboard.md.zh-H1dzG.lean.js rename to assets/features_split_keyboard.md.CP5P3ND7.lean.js index f73897e43f6..1c83e544075 100644 --- a/assets/features_split_keyboard.md.zh-H1dzG.lean.js +++ b/assets/features_split_keyboard.md.CP5P3ND7.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/QeY6kMQ.png"; const _imports_1 = "/4wjJzBU.png"; const _imports_2 = "/BPEC5n5.jpg"; diff --git a/assets/features_st7565.md.WvdJUI9P.js b/assets/features_st7565.md.Dwu6paR4.js similarity index 99% rename from assets/features_st7565.md.WvdJUI9P.js rename to assets/features_st7565.md.Dwu6paR4.js index 54bcf90a1d3..8bef01dc0d8 100644 --- a/assets/features_st7565.md.WvdJUI9P.js +++ b/assets/features_st7565.md.Dwu6paR4.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ST7565 LCD Driver","description":"","frontmatter":{},"headers":[],"relativePath":"features/st7565.md","filePath":"features/st7565.md","lastUpdated":null}'); const _sfc_main = { name: "features/st7565.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

ST7565 LCD Driver

Supported Hardware

LCD modules using ST7565 driver IC, communicating over SPI.

ModuleICSizeNotes
Newhaven Display NHD-C12832A1ZST7565R128x32Used by Ergodox Infinity; primary consumer of this feature
Zolentech ZLE12864BST7565P128x64Requires contrast adjustment

Usage

To enable the feature, there are three steps. First, when compiling your keyboard, you'll need to add the following to your rules.mk:

make
ST7565_ENABLE = yes

Then in your keymap.c file, implement the ST7565 task call. This example assumes your keymap has three layers named _QWERTY, _FN and _ADJ:

c
#ifdef ST7565_ENABLE\nvoid st7565_task_user(void) {\n    // Host Keyboard Layer Status\n    st7565_write_P(PSTR("Layer: "), false);\n\n    switch (get_highest_layer(layer_state)) {\n        case _QWERTY:\n            st7565_write_P(PSTR("Default\\n"), false);\n            break;\n        case _FN:\n            st7565_write_P(PSTR("FN\\n"), false);\n            break;\n        case _ADJ:\n            st7565_write_P(PSTR("ADJ\\n"), false);\n            break;\n        default:\n            // Or use the write_ln shortcut over adding '\\n' to the end of your string\n            st7565_write_ln_P(PSTR("Undefined"), false);\n    }\n\n    // Host Keyboard LED Status\n    led_t led_state = host_keyboard_led_state();\n    st7565_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR("    "), false);\n    st7565_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR("    "), false);\n    st7565_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR("    "), false);\n}\n#endif

Logo Example

In the default font, certain ranges of characters are reserved for a QMK logo. To render this logo to the screen, use the following code example:

c
static void render_logo(void) {\n    static const char PROGMEM qmk_logo[] = {\n        0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94,\n        0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4,\n        0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00\n    };\n\n    st7565_write_P(qmk_logo, false);\n}

Buffer Read Example

For some purposes, you may need to read the current state of the display buffer. The st7565_read_raw function can be used to safely read bytes from the buffer.

In this example, calling fade_display in the st7565_task_user function will slowly fade away whatever is on the screen by turning random pixels off over time.

c
//Setup some mask which can be or'd with bytes to turn off pixels\nconst uint8_t single_bit_masks[8] = {127, 191, 223, 239, 247, 251, 253, 254};\n\nstatic void fade_display(void) {\n    //Define the reader structure\n    display_buffer_reader_t reader;\n    uint8_t buff_char;\n    if (random() % 30 == 0) {\n        srand(timer_read());\n        // Fetch a pointer for the buffer byte at index 0. The return structure\n        // will have the pointer and the number of bytes remaining from this\n        // index position if we want to perform a sequential read by\n        // incrementing the buffer pointer\n        reader = st7565_read_raw(0);\n        //Loop over the remaining buffer and erase pixels as we go\n        for (uint16_t i = 0; i < reader.remaining_element_count; i++) {\n            //Get the actual byte in the buffer by dereferencing the pointer\n            buff_char = *reader.current_element;\n            if (buff_char != 0) {\n                st7565_write_raw_byte(buff_char & single_bit_masks[rand() % 8], i);\n            }\n            //increment the pointer to fetch a new byte during the next loop\n            reader.current_element++;\n        }\n    }\n}

Other Examples

In split keyboards, it is very common to have two displays that each render different content and are oriented or flipped differently. You can do this by switching which content to render by using the return value from is_keyboard_master() or is_keyboard_left() found in split_util.h, e.g:

c
#ifdef ST7565_ENABLE\ndisplay_rotation_t st7565_init_user(display_rotation_t rotation) {\n    if (!is_keyboard_master()) {\n        return DISPLAY_ROTATION_180;  // flips the display 180 degrees if offhand\n    }\n\n    return rotation;\n}\n\nvoid st7565_task_user(void) {\n    if (is_keyboard_master()) {\n        render_status();  // Renders the current keyboard state (layer, lock, caps, scroll, etc)\n    } else {\n        render_logo();  // Renders a static logo\n    }\n}\n#endif

Basic Configuration

DefineDefaultDescription
ST7565_A0_PINNot defined(Required) The GPIO connected to the display's A0 (data/command) pin
ST7565_RST_PINNot defined(Required) The GPIO connected to the display's reset pin
ST7565_SS_PINNot defined(Required) The GPIO connected to the display's slave select pin
ST7565_SPI_CLK_DIVISOR4The SPI clock divisor to use
ST7565_FONT_H"glcdfont.c"The font code file to use for custom fonts
ST7565_FONT_START0The starting character index for custom fonts
ST7565_FONT_END223The ending character index for custom fonts
ST7565_FONT_WIDTH6The font width
ST7565_FONT_HEIGHT8The font height (untested)
ST7565_TIMEOUT60000Turns off the screen after 60000ms of keyboard inactivity. Helps reduce burn-in. Set to 0 to disable.
ST7565_COLUMN_OFFSET0Shift output to the right this many pixels.
ST7565_CONTRAST32The default contrast level of the display, from 0 to 255.
ST7565_UPDATE_INTERVAL0Set the time interval for updating the display in ms. This will improve the matrix scan rate.

Custom sized displays

The default display size for this feature is 128x32 and all necessary defines are precalculated with that in mind.

DefineDefaultDescription
ST7565_DISPLAY_WIDTH128The width of the display.
ST7565_DISPLAY_HEIGHT32The height of the display.
ST7565_MATRIX_SIZE512The local buffer size to allocate.
(ST7565_DISPLAY_HEIGHT / 8 * ST7565_DISPLAY_WIDTH).
ST7565_BLOCK_TYPEuint16_tThe unsigned integer type to use for dirty rendering.
ST7565_BLOCK_COUNT16The number of blocks the display is divided into for dirty rendering.
(sizeof(ST7565_BLOCK_TYPE) * 8).
ST7565_BLOCK_SIZE32The size of each block for dirty rendering
(ST7565_MATRIX_SIZE / ST7565_BLOCK_COUNT).

API

c
// Rotation enum values are flags\ntypedef enum {\n    DISPLAY_ROTATION_0,\n    DISPLAY_ROTATION_180\n} display_rotation_t;\n\n// Initialize the display, rotating the rendered output based on the define passed in.\n// Returns true if the was initialized successfully\nbool st7565_init(display_rotation_t rotation);\n\n// Called at the start of st7565_init, weak function overridable by the user\n// rotation - the value passed into st7565_init\n// Return new display_rotation_t if you want to override default rotation\ndisplay_rotation_t st7565_init_user(display_rotation_t rotation);\n\n// Clears the display buffer, resets cursor position to 0, and sets the buffer to dirty for rendering\nvoid st7565_clear(void);\n\n// Renders the dirty chunks of the buffer to display\nvoid st7565_render(void);\n\n// Moves cursor to character position indicated by column and line, wraps if out of bounds\n// Max column denoted by 'st7565_max_chars()' and max lines by 'st7565_max_lines()' functions\nvoid st7565_set_cursor(uint8_t col, uint8_t line);\n\n// Advances the cursor to the next page, writing ' ' if true\n// Wraps to the beginning when out of bounds\nvoid st7565_advance_page(bool clearPageRemainder);\n\n// Moves the cursor forward 1 character length\n// Advance page if there is not enough room for the next character\n// Wraps to the beginning when out of bounds\nvoid st7565_advance_char(void);\n\n// Writes a single character to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\n// Main handler that writes character data to the display buffer\nvoid st7565_write_char(const char data, bool invert);\n\n// Writes a string to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\nvoid st7565_write(const char *data, bool invert);\n\n// Writes a string to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\n// Advances the cursor to the next page, wiring ' ' to the remainder of the current page\nvoid st7565_write_ln(const char *data, bool invert);\n\n// Pans the buffer to the right (or left by passing true) by moving contents of the buffer\n// Useful for moving the screen in preparation for new drawing\nvoid st7565_pan(bool left);\n\n// Returns a pointer to the requested start index in the buffer plus remaining\n// buffer length as struct\ndisplay_buffer_reader_t st7565_read_raw(uint16_t start_index);\n\n// Writes a string to the buffer at current cursor position\nvoid st7565_write_raw(const char *data, uint16_t size);\n\n// Writes a single byte into the buffer at the specified index\nvoid st7565_write_raw_byte(const char data, uint16_t index);\n\n// Sets a specific pixel on or off\n// Coordinates start at top-left and go right and down for positive x and y\nvoid st7565_write_pixel(uint8_t x, uint8_t y, bool on);\n\n// Writes a PROGMEM string to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\n// Remapped to call 'void st7565_write(const char *data, bool invert);' on ARM\nvoid st7565_write_P(const char *data, bool invert);\n\n// Writes a PROGMEM string to the buffer at current cursor position\n// Advances the cursor while writing, inverts the pixels if true\n// Advances the cursor to the next page, wiring ' ' to the remainder of the current page\n// Remapped to call 'void st7565_write_ln(const char *data, bool invert);' on ARM\nvoid st7565_write_ln_P(const char *data, bool invert);\n\n// Writes a PROGMEM string to the buffer at current cursor position\nvoid st7565_write_raw_P(const char *data, uint16_t size);\n\n// Can be used to manually turn on the screen if it is off\n// Returns true if the screen was on or turns on\nbool st7565_on(void);\n\n// Called when st7565_on() turns on the screen, weak function overridable by the user\n// Not called if the screen is already on\nvoid st7565_on_user(void);\n\n// Can be used to manually turn off the screen if it is on\n// Returns true if the screen was off or turns off\nbool st7565_off(void);\n\n// Called when st7565_off() turns off the screen, weak function overridable by the user\n// Not called if the screen is already off\nvoid st7565_off_user(void);\n\n// Returns true if the screen is currently on, false if it is\n// not\nbool st7565_is_on(void);\n\n// Basically it's st7565_render, but with timeout management and st7565_task_user calling!\nvoid st7565_task(void);\n\n// Called at the start of st7565_task, weak function overridable by the user\nvoid st7565_task_user(void);\n\n// Inverts the display\n// Returns true if the screen was or is inverted\nbool st7565_invert(bool invert);\n\n// Returns the maximum number of characters that will fit on a line\nuint8_t st7565_max_chars(void);\n\n// Returns the maximum number of lines that will fit on the display\nuint8_t st7565_max_lines(void);
', 26); diff --git a/assets/features_st7565.md.WvdJUI9P.lean.js b/assets/features_st7565.md.Dwu6paR4.lean.js similarity index 82% rename from assets/features_st7565.md.WvdJUI9P.lean.js rename to assets/features_st7565.md.Dwu6paR4.lean.js index 82fcfec63b4..61133f89009 100644 --- a/assets/features_st7565.md.WvdJUI9P.lean.js +++ b/assets/features_st7565.md.Dwu6paR4.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ST7565 LCD Driver","description":"","frontmatter":{},"headers":[],"relativePath":"features/st7565.md","filePath":"features/st7565.md","lastUpdated":null}'); const _sfc_main = { name: "features/st7565.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 26); diff --git a/assets/features_stenography.md.2liY1-LM.js b/assets/features_stenography.md.rMm9phsG.js similarity index 99% rename from assets/features_stenography.md.2liY1-LM.js rename to assets/features_stenography.md.rMm9phsG.js index 9f655ac6beb..bcb23f8d92f 100644 --- a/assets/features_stenography.md.2liY1-LM.js +++ b/assets/features_stenography.md.rMm9phsG.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Stenography in QMK","description":"","frontmatter":{},"headers":[],"relativePath":"features/stenography.md","filePath":"features/stenography.md","lastUpdated":null}'); const _sfc_main = { name: "features/stenography.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Stenography in QMK

Stenography is a method of writing most often used by court reports, closed-captioning, and real-time transcription for the deaf. In stenography words are chorded syllable by syllable with a mixture of spelling, phonetic, and shortcut (briefs) strokes. Professional stenographers can reach 200-300 WPM without any of the strain usually found in standard typing and with far fewer errors (>99.9% accuracy).

The Open Steno Project has built an open-source program called Plover that provides real-time translation of steno strokes into words and commands. It has an established dictionary and supports

Steno Support in QMK

There are three ways that QMK keyboards can support steno, with varying degrees of configuration required:

  1. Plover with Arpeggiation requires no changes to any keyboard and is supported by QMK as well as any other QWERTY keyboard.
  2. Plover with NKRO. If your keyboard supports NKRO in hardware and you have NKRO enabled as a USB endpoint, you can chord with the keyboard. Many devices will arrive stock like this and will require no changes.
  3. Steno Machine Protocols. This requires the most configuration, but this has the advantage of allowing you to use your keyboard keys normally (either on another layer or another piece of hardware) without enabling and disabling your steno software.

Plover with QWERTY Keyboard

Plover can work with any standard QWERTY keyboard, although it is more efficient if the keyboard supports NKRO (n-key rollover) to allow Plover to see all the pressed keys at once. An example keymap for Plover can be found in planck/keymaps/default. Switching to the PLOVER layer adjusts the position of the keyboard to support the number bar.

To enable NKRO, add NKRO_ENABLE = yes in your rules.mk and make sure to press NK_ON to turn it on because NKRO_ENABLE = yes merely adds the possibility of switching to NKRO mode but it doesn't automatically switch to it. If you want to automatically switch, add #define NKRO_DEFAULT_ON true in your config.h.

You may also need to adjust your layout, either in QMK or in Plover, if you have anything other than a standard layout. You may also want to purchase some steno-friendly keycaps to make it easier to hit multiple keys.

Plover with Steno Protocol

Plover also understands the language of several steno machines. QMK can speak a couple of these languages: TX Bolt and GeminiPR. An example layout can be found in splitography/keymaps/default.

When QMK speaks to Plover over a steno protocol, Plover will not use the keyboard as input. This means that you can switch back and forth between a standard keyboard and your steno keyboard, or even switch layers from Plover to standard and back without needing to activate/deactivate Plover.

In this mode, Plover expects to speak with a steno machine over a serial port so QMK will present itself to the operating system as a virtual serial port in addition to a keyboard.

INFO

Due to hardware limitations, you might not be able to run both a virtual serial port and other features (mouse keys, NKRO, or MIDI support) at the same time. You will likely encounter a compile time error if this is the case. Disable those other features as necessary.

WARNING

Serial stenography protocols are not supported on V-USB keyboards.

To enable stenography protocols, add the following lines to your rules.mk:

make
STENO_ENABLE = yes

TX Bolt

TX Bolt communicates the status of 24 keys over a simple protocol in variable-sized (1–4 bytes) packets.

To select TX Bolt, add the following lines to your rules.mk:

make
STENO_ENABLE = yes\nSTENO_PROTOCOL = txbolt

Each byte of the packet represents a different group of steno keys. Determining the group of a certain byte of the packet is done by checking the first two bits, the remaining bits are set if the corresponding steno key was pressed for the stroke. The last set of keys (as indicated by leading 11) needs to keep track of less keys than there are bits so one of the bits is constantly 0.

The start of a new packet can be detected by comparing the group “ID” (the two MSBs) of the current byte to that of the previously received byte. If the group “ID” of the current byte is smaller or equal to that of the previous byte, it means that the current byte is the beginning of a new packet.

The format of TX Bolt packets is shown below.

00HWPKTS 01UE*OAR 10GLBPRF 110#ZDST

Examples of steno strokes and the associated packet:

GeminiPR

GeminiPR encodes 42 keys into a 6-byte packet. While TX Bolt contains everything that is necessary for standard stenography, GeminiPR opens up many more options, including differentiating between top and bottom S-, and supporting non-English theories.

To select GeminiPR, add the following lines to your rules.mk:

make
STENO_ENABLE = yes\nSTENO_PROTOCOL = geminipr

All packets in the GeminiPR protocol consist of exactly six bytes, used as bit-arrays for different groups of keys. The beginning of a packet is indicated by setting the most significant bit (MSB) to 1 while setting the MSB of the remaining five bytes to 0.

The format of GeminiPR packets is shown below.

1 Fn  #1  #2 #3 #4 #5   #6\n0 S1- S2- T- K- P- W-   H-\n0 R-  A-  O- *1 *2 res1 res2\n0 pwr *3  *4 -E -U -F   -R\n0 -P  -B  -L -G -T -S   -D\n0 #7  #8  #9 #A #B #C   -Z

Examples of steno strokes and the associated packet:

Switching protocols on the fly

If you wish to switch the serial protocol used to transfer the steno chords without having to recompile your keyboard firmware every time, you can press the QK_STENO_BOLT and QK_STENO_GEMINI keycodes in order to switch protocols on the fly.

To enable these special keycodes, add the following lines to your rules.mk:

make
STENO_ENABLE = yes\nSTENO_PROTOCOL = all

If you want to switch protocols programmatically, as part of a custom macro for example, don't use tap_code(QK_STENO_*), as tap_code only supports basic keycodes. Instead, you should use steno_set_mode(STENO_MODE_*), whose valid arguments are STENO_MODE_BOLT and STENO_MODE_GEMINI.

The default protocol is Gemini PR but the last protocol used is stored in non-volatile memory so QMK will remember your choice between reboots of your keyboard — assuming that your keyboard features (emulated) EEPROM.

Naturally, this option takes the most amount of firmware space as it needs to compile the code for all the available stenography protocols. In most cases, compiling a single stenography protocol is sufficient.

The default value for STENO_PROTOCOL is all.

Configuring QMK for Steno

After enabling stenography and optionally selecting a protocol, you may also need disable mouse keys, extra keys, or another USB endpoint to prevent conflicts. The builtin USB stack for some processors only supports a certain number of USB endpoints and the virtual serial port needed for steno fills 3 of them.

WARNING

If you had explicitly set VIRSTER_ENABLE = no, none of the serial stenography protocols (GeminiPR, TX Bolt) will work properly. You are expected to either set it to yes, remove the line from your rules.mk or send the steno chords yourself in an alternative way using the provided interceptable hooks.

In your keymap, create a new layer for Plover, that you can fill in with the steno keycodes. Remember to create a key to switch to the layer as well as a key for exiting the layer.

Once you have your keyboard flashed, launch Plover. Click the 'Configure...' button. In the 'Machine' tab, select the Stenotype Machine that corresponds to your desired protocol. Click the 'Configure...' button on this tab and enter the serial port or click 'Scan'. Baud rate is fine at 9600 (although you should be able to set as high as 115200 with no issues). Use the default settings for everything else (Data Bits: 8, Stop Bits: 1, Parity: N, no flow control).

To test your keymap, you can chord keys on your keyboard and either look at the output of the 'paper tape' (Tools > Paper Tape) or that of the 'layout display' (Tools > Layout Display). If your strokes correctly show up, you are now ready to steno!

Learning Stenography

Interfacing with the code

The steno code has three interceptable hooks. If you define these functions, they will be called at certain points in processing; if they return true, processing continues, otherwise it's assumed you handled things.

c
bool send_steno_chord_user(steno_mode_t mode, uint8_t chord[MAX_STROKE_SIZE]);

This function is called when a chord is about to be sent. Mode will be one of STENO_MODE_BOLT or STENO_MODE_GEMINI. This represents the actual chord that would be sent via whichever protocol. You can modify the chord provided to alter what gets sent. Remember to return true if you want the regular sending process to happen.

c
bool process_steno_user(uint16_t keycode, keyrecord_t *record) { return true; }

This function is called when a keypress has come in, before it is processed. The keycode should be one of QK_STENO_BOLT, QK_STENO_GEMINI, or one of the STN_* key values.

c
bool post_process_steno_user(uint16_t keycode, keyrecord_t *record, steno_mode_t mode, uint8_t chord[MAX_STROKE_SIZE], int8_t n_pressed_keys);

This function is called after a key has been processed, but before any decision about whether or not to send a chord. This is where to put hooks for things like, say, live displays of steno chords or keys.

If record->event.pressed is false, and n_pressed_keys is 0 or 1, the chord will be sent shortly, but has not yet been sent. This relieves you of the need of keeping track of where a packet ends and another begins.

The chord argument contains the packet of the current chord as specified by the protocol in use. This is NOT simply a list of chorded steno keys of the form [STN_E, STN_U, STN_BR, STN_GR]. Refer to the appropriate protocol section of this document to learn more about the format of the packets in your steno protocol/mode of choice.

The n_pressed_keys argument is the number of physical keys actually being held down. This is not always equal to the number of bits set to 1 (aka the Hamming weight) in chord because it is possible to simultaneously press down four keys, then release three of those four keys and then press yet another key while the fourth finger is still holding down its key. At the end of this scenario given as an example, chord would have five bits set to 1 but n_pressed_keys would be set to 2 because there are only two keys currently being pressed down.

Keycode Reference

INFO

TX Bolt does not support the full set of keys. The TX Bolt implementation in QMK will map the GeminiPR keys to the nearest TX Bolt key so that one key map will work for both.

GeminiPRTX BoltSteno Key
STN_N1STN_NUMNumber bar #1
STN_N2STN_NUMNumber bar #2
STN_N3STN_NUMNumber bar #3
STN_N4STN_NUMNumber bar #4
STN_N5STN_NUMNumber bar #5
STN_N6STN_NUMNumber bar #6
STN_N7STN_NUMNumber bar #7
STN_N8STN_NUMNumber bar #8
STN_N9STN_NUMNumber bar #9
STN_NASTN_NUMNumber bar #A
STN_NBSTN_NUMNumber bar #B
STN_NCSTN_NUMNumber bar #C
STN_S1STN_SLS- upper
STN_S2STN_SLS- lower
STN_TLSTN_TLT-
STN_KLSTN_KLK-
STN_PLSTN_PLP-
STN_WLSTN_WLW-
STN_HLSTN_HLH-
STN_RLSTN_RLR-
STN_ASTN_AA vowel
STN_OSTN_OO vowel
STN_ST1STN_STR* upper-left
STN_ST2STN_STR* lower-left
STN_ST3STN_STR* upper-right
STN_ST4STN_STR* lower-right
STN_ESTN_EE vowel
STN_USTN_UU vowel
STN_FRSTN_FR-F
STN_RRSTN_RR-R
STN_PRSTN_PR-P
STN_BRSTN_BR-B
STN_LRSTN_LR-L
STN_GRSTN_GR-G
STN_TRSTN_TR-T
STN_SRSTN_SR-S
STN_DRSTN_DR-D
STN_ZRSTN_ZR-Z
STN_FN(Function)
STN_RES1(Reset 1)
STN_RES2(Reset 2)
STN_PWR(Power)

If you do not want to hit two keys with one finger combined keycodes can be used. These cause both keys to be reported as pressed or released. To use these keycodes define STENO_COMBINEDMAP in your config.h file.

Combined keyKey1Key 2
STN_S3STN_S1STN_S2
STN_TKLSTN_TLSTN_KL
STN_PWLSTN_PLSTN_WL
STN_HRLSTN_HLSTN_RL
STN_FRRSTN_FRSTN_RR
STN_PBRSTN_PRSTN_BR
STN_LGRSTN_LRSTN_GR
STN_TSRSTN_TRSTN_SR
STN_DZRSTN_DRSTN_ZR
STN_AOSTN_ASTN_O
STN_EUSTN_ESTN_U
', 69); diff --git a/assets/features_stenography.md.2liY1-LM.lean.js b/assets/features_stenography.md.rMm9phsG.lean.js similarity index 83% rename from assets/features_stenography.md.2liY1-LM.lean.js rename to assets/features_stenography.md.rMm9phsG.lean.js index 0e30ffa2eb7..c3549984ce1 100644 --- a/assets/features_stenography.md.2liY1-LM.lean.js +++ b/assets/features_stenography.md.rMm9phsG.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Stenography in QMK","description":"","frontmatter":{},"headers":[],"relativePath":"features/stenography.md","filePath":"features/stenography.md","lastUpdated":null}'); const _sfc_main = { name: "features/stenography.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 69); diff --git a/assets/features_swap_hands.md.CpjspRMM.js b/assets/features_swap_hands.md.nW-D0yHh.js similarity index 99% rename from assets/features_swap_hands.md.CpjspRMM.js rename to assets/features_swap_hands.md.nW-D0yHh.js index e6646c8bea5..af54b5c2221 100644 --- a/assets/features_swap_hands.md.CpjspRMM.js +++ b/assets/features_swap_hands.md.nW-D0yHh.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Swap-Hands Action","description":"","frontmatter":{},"headers":[],"relativePath":"features/swap_hands.md","filePath":"features/swap_hands.md","lastUpdated":null}'); const _sfc_main = { name: "features/swap_hands.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Swap-Hands Action

The swap-hands action allows support for one-handed typing without requiring a separate layer. Set SWAP_HANDS_ENABLE = yes in your keymap's rules.mk (creating it if needed), and define a hand_swap_config entry in your keymap. Now whenever the ACTION_SWAP_HANDS command key is pressed the keyboard is mirrored. For instance, to type "Hello, World" on QWERTY you would type ^Ge^s^s^w^c W^wr^sd

Configuration

The configuration table is a simple 2-dimensional array to map from column/row to new column/row. Example hand_swap_config for Planck:

c
const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS] = {\n  {{11, 0}, {10, 0}, {9, 0}, {8, 0}, {7, 0}, {6, 0}, {5, 0}, {4, 0}, {3, 0}, {2, 0}, {1, 0}, {0, 0}},\n  {{11, 1}, {10, 1}, {9, 1}, {8, 1}, {7, 1}, {6, 1}, {5, 1}, {4, 1}, {3, 1}, {2, 1}, {1, 1}, {0, 1}},\n  {{11, 2}, {10, 2}, {9, 2}, {8, 2}, {7, 2}, {6, 2}, {5, 2}, {4, 2}, {3, 2}, {2, 2}, {1, 2}, {0, 2}},\n  {{11, 3}, {10, 3}, {9, 3}, {8, 3}, {7, 3}, {6, 3}, {5, 3}, {4, 3}, {3, 3}, {2, 3}, {1, 3}, {0, 3}},\n};

Note that the array indices are reversed same as the matrix and the values are of type keypos_t which is {col, row} and all values are zero-based. In the example above, hand_swap_config[2][4] (third row, fifth column) would return {7, 2} (third row, eighth column). Yes, this is confusing.

Swap Keycodes

KeyAliasesDescription
SH_T(kc)Momentary swap when held, kc when tapped
QK_SWAP_HANDS_ONSH_ONTurn on hand swap
QK_SWAP_HANDS_OFFSH_OFFTurn off hand swap
QK_SWAP_HANDS_MOMENTARY_ONSH_MONTurn on hand swap while held
QK_SWAP_HANDS_MOMENTARY_OFFSH_MOFFTurn off hand swap while held
QK_SWAP_HANDS_TOGGLESH_TOGGToggle hand swap
QK_SWAP_HANDS_TAP_TOGGLESH_TTMomentary swap when held, toggle when tapped
QK_SWAP_HANDS_ONE_SHOTSH_OSTurn on hand swap while held or until next key press

SH_TT swap-hands tap-toggle key is similar to layer tap-toggle. Tapping repeatedly (5 taps by default) will toggle swap-hands on or off, like SH_TOGG. Tap-toggle count can be changed by defining a value for TAPPING_TOGGLE.

Encoder Mapping

When using an encoder mapping, it's also able to handle swapping encoders between sides, too.

Encoder indexes are defined as left-to-right, and the extent of the array needs to match the number of encoders on the keyboard.

As an example, if a split keyboard has a single encoder per side, you can swap the order by using the following code in your keymap:

c
#if defined(SWAP_HANDS_ENABLE) && defined(ENCODER_MAP_ENABLE)\nconst uint8_t PROGMEM encoder_hand_swap_config[NUM_ENCODERS] = { 1, 0 };\n#endif

Functions

User callback functions to manipulate Swap-Hands:

FunctionDescription
swap_hands_on()Turns Swap-Hands on.
swap_hands_off()Turns Swap-Hands off.
swap_hands_toggle()Toggles Swap-Hands.
is_swap_hands_on()Returns true if Swap-Hands is currently on.
', 17); diff --git a/assets/features_swap_hands.md.CpjspRMM.lean.js b/assets/features_swap_hands.md.nW-D0yHh.lean.js similarity index 83% rename from assets/features_swap_hands.md.CpjspRMM.lean.js rename to assets/features_swap_hands.md.nW-D0yHh.lean.js index 9c06be8290f..1514f90064e 100644 --- a/assets/features_swap_hands.md.CpjspRMM.lean.js +++ b/assets/features_swap_hands.md.nW-D0yHh.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Swap-Hands Action","description":"","frontmatter":{},"headers":[],"relativePath":"features/swap_hands.md","filePath":"features/swap_hands.md","lastUpdated":null}'); const _sfc_main = { name: "features/swap_hands.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 17); diff --git a/assets/features_tap_dance.md.DXcB5Veb.js b/assets/features_tap_dance.md.DYKVHW8v.js similarity index 99% rename from assets/features_tap_dance.md.DXcB5Veb.js rename to assets/features_tap_dance.md.DYKVHW8v.js index 40a52d07df4..bb35c0c5201 100644 --- a/assets/features_tap_dance.md.DXcB5Veb.js +++ b/assets/features_tap_dance.md.DYKVHW8v.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","description":"","frontmatter":{},"headers":[],"relativePath":"features/tap_dance.md","filePath":"features/tap_dance.md","lastUpdated":null}'); const _sfc_main = { name: "features/tap_dance.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things

Introduction

Hit the semicolon key once, send a semicolon. Hit it twice, rapidly -- send a colon. Hit it three times, and your keyboard's LEDs do a wild dance. That's just one example of what Tap Dance can do. It's one of the nicest community-contributed features in the firmware, conceived and created by algernon in #451. Here's how algernon describes the feature:

With this feature one can specify keys that behave differently, based on the amount of times they have been tapped, and when interrupted, they get handled before the interrupter.

How to Use Tap Dance

First, you will need TAP_DANCE_ENABLE = yes in your rules.mk, because the feature is disabled by default. This adds a little less than 1k to the firmware size.

Optionally, you might want to set a custom TAPPING_TERM time by adding something like this in your config.h file:

c
#define TAPPING_TERM 175\n#define TAPPING_TERM_PER_KEY

The TAPPING_TERM time is the maximum time allowed between taps of your Tap Dance key, and is measured in milliseconds. For example, if you used the above #define statement and set up a Tap Dance key that sends Space on single-tap and Enter on double-tap, then this key will send ENT only if you tap this key twice in less than 175ms. If you tap the key, wait more than 175ms, and tap the key again you'll end up sending SPC SPC instead. The TAPPING_TERM_PER_KEY definition is only needed if you control the tapping term through a custom get_tapping_term function, which may be needed because TAPPING_TERM affects not just tap-dance keys.

Next, you will want to define some tap-dance keys, which is easiest to do with the TD() macro. That macro takes a number which will later be used as an index into the tap_dance_actions array and turns it into a tap-dance keycode.

After this, you'll want to use the tap_dance_actions array to specify what actions shall be taken when a tap-dance key is in action. Currently, there are five possible options:

The first option is enough for a lot of cases, that just want dual roles. For example, ACTION_TAP_DANCE_DOUBLE(KC_SPC, KC_ENT) will result in Space being sent on single-tap, Enter otherwise.

WARNING

Keep in mind that only basic keycodes are supported here. Custom keycodes are not supported.

Similar to the first option, the second and third option are good for simple layer-switching cases.

For more complicated cases, like blink the LEDs, fiddle with the backlighting, and so on, use the fourth or fifth option. Examples of each are listed below.

TIP

If too many tap dances are active at the same time, later ones won't have any effect. You need to increase TAP_DANCE_MAX_SIMULTANEOUS by adding #define TAP_DANCE_MAX_SIMULTANEOUS 5 (or higher) to your keymap's config.h file if you expect that users may hold down many tap dance keys simultaneously. By default, only 3 tap dance keys can be used together at the same time.

Implementation Details

Well, that's the bulk of it! You should now be able to work through the examples below, and to develop your own Tap Dance functionality. But if you want a deeper understanding of what's going on behind the scenes, then read on for the explanation of how it all works!

Let's go over the three functions mentioned in ACTION_TAP_DANCE_FN_ADVANCED in a little more detail. They all receive the same two arguments: a pointer to a structure that holds all dance related state information, and a pointer to a use case specific state variable. The three functions differ in when they are called. The first, on_each_tap_fn(), is called every time the tap dance key is pressed. Before it is called, the counter is incremented and the timer is reset. The second function, on_dance_finished_fn(), is called when the tap dance is interrupted or ends because TAPPING_TERM milliseconds have passed since the last tap. When the finished field of the dance state structure is set to true, the on_dance_finished_fn() is skipped. After on_dance_finished_fn() was called or would have been called, but no sooner than when the tap dance key is released, on_dance_reset_fn() is called. It is possible to end a tap dance immediately, skipping on_dance_finished_fn(), but not on_dance_reset_fn, by calling reset_tap_dance(state).

To accomplish this logic, the tap dance mechanics use three entry points. The main entry point is process_tap_dance(), called from process_record_quantum() after process_record_kb() and process_record_user(). This function is responsible for calling on_each_tap_fn() and on_dance_reset_fn(). In order to handle interruptions of a tap dance, another entry point, preprocess_tap_dance() is run right at the beginning of process_record_quantum(). This function checks whether the key pressed is a tap-dance key. If it is not, and a tap-dance was in action, we handle that first, and enqueue the newly pressed key. If it is a tap-dance key, then we check if it is the same as the already active one (if there's one active, that is). If it is not, we fire off the old one first, then register the new one. Finally, tap_dance_task() periodically checks whether TAPPING_TERM has passed since the last key press and finishes a tap dance if that is the case.

This means that you have TAPPING_TERM time to tap the key again; you do not have to input all the taps within a single TAPPING_TERM timeframe. This allows for longer tap counts, with minimal impact on responsiveness.

Examples

Simple Example: Send ESC on Single Tap, CAPS_LOCK on Double Tap

Here's a simple example for a single definition:

  1. In your rules.mk, add TAP_DANCE_ENABLE = yes
  2. In your keymap.c file, define the variables and definitions, then add to your keymap:
c
// Tap Dance declarations\nenum {\n    TD_ESC_CAPS,\n};\n\n// Tap Dance definitions\ntap_dance_action_t tap_dance_actions[] = {\n    // Tap once for Escape, twice for Caps Lock\n    [TD_ESC_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_CAPS),\n};\n\n// Add tap dance item to your keymap in place of a keycode\nconst uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n    // ...\n    TD(TD_ESC_CAPS)\n    // ...\n};

Complex Examples

This section details several complex tap dance examples. All the enums used in the examples are declared like this:

c
// Enums defined for all examples:\nenum {\n    TD_ESC_CAPS,\n    CT_EGG,\n    CT_FLSH,\n    CT_CLN,\n    X_CTL,\n};

Example 1: Send "Safety Dance!" After 100 Taps

c
void dance_egg(tap_dance_state_t *state, void *user_data) {\n    if (state->count >= 100) {\n        SEND_STRING("Safety dance!");\n        reset_tap_dance(state);\n    }\n}\n\ntap_dance_action_t tap_dance_actions[] = {\n    [CT_EGG] = ACTION_TAP_DANCE_FN(dance_egg),\n};

Example 2: Turn LED Lights On Then Off, One at a Time

c
// On each tap, light up one LED, from right to left\n// On the fourth tap, turn them off from right to left\nvoid dance_flsh_each(tap_dance_state_t *state, void *user_data) {\n    switch (state->count) {\n        case 1:\n            ergodox_right_led_3_on();\n            break;\n        case 2:\n            ergodox_right_led_2_on();\n            break;\n        case 3:\n            ergodox_right_led_1_on();\n            break;\n        case 4:\n            ergodox_right_led_3_off();\n            wait_ms(50);\n            ergodox_right_led_2_off();\n            wait_ms(50);\n            ergodox_right_led_1_off();\n    }\n}\n\n// On the fourth tap, set the keyboard on flash state\nvoid dance_flsh_finished(tap_dance_state_t *state, void *user_data) {\n    if (state->count >= 4) {\n        reset_keyboard();\n    }\n}\n\n// If the flash state didn't happen, then turn off LEDs, left to right\nvoid dance_flsh_reset(tap_dance_state_t *state, void *user_data) {\n    ergodox_right_led_1_off();\n    wait_ms(50);\n    ergodox_right_led_2_off();\n    wait_ms(50);\n    ergodox_right_led_3_off();\n}\n\n// All tap dances now put together. Example 2 is "CT_FLSH"\ntap_dance_action_t tap_dance_actions[] = {\n    [TD_ESC_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_CAPS),\n    [CT_EGG] = ACTION_TAP_DANCE_FN(dance_egg),\n    [CT_FLSH] = ACTION_TAP_DANCE_FN_ADVANCED(dance_flsh_each, dance_flsh_finished, dance_flsh_reset)\n};

Example 3: Send : on Tap, ; on Hold

With a little effort, powerful tap-hold configurations can be implemented as tap dances. To emit taps as early as possible, we need to act on releases of the tap dance key. There is no callback for this in the tap dance framework, so we use process_record_user().

c
typedef struct {\n    uint16_t tap;\n    uint16_t hold;\n    uint16_t held;\n} tap_dance_tap_hold_t;\n\nvoid tap_dance_tap_hold_finished(tap_dance_state_t *state, void *user_data) {\n    tap_dance_tap_hold_t *tap_hold = (tap_dance_tap_hold_t *)user_data;\n\n    if (state->pressed) {\n        if (state->count == 1\n#ifndef PERMISSIVE_HOLD\n            && !state->interrupted\n#endif\n        ) {\n            register_code16(tap_hold->hold);\n            tap_hold->held = tap_hold->hold;\n        } else {\n            register_code16(tap_hold->tap);\n            tap_hold->held = tap_hold->tap;\n        }\n    }\n}\n\nvoid tap_dance_tap_hold_reset(tap_dance_state_t *state, void *user_data) {\n    tap_dance_tap_hold_t *tap_hold = (tap_dance_tap_hold_t *)user_data;\n\n    if (tap_hold->held) {\n        unregister_code16(tap_hold->held);\n        tap_hold->held = 0;\n    }\n}\n\n#define ACTION_TAP_DANCE_TAP_HOLD(tap, hold)                                        \\\n    {                                                                               \\\n        .fn        = {NULL, tap_dance_tap_hold_finished, tap_dance_tap_hold_reset}, \\\n        .user_data = (void *)&((tap_dance_tap_hold_t){tap, hold, 0}),               \\\n    }\n\ntap_dance_action_t tap_dance_actions[] = {\n    [CT_CLN] = ACTION_TAP_DANCE_TAP_HOLD(KC_COLN, KC_SCLN),\n};\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    tap_dance_action_t *action;\n    tap_dance_state_t* state;\n\n    switch (keycode) {\n        case TD(CT_CLN):\n            action = tap_dance_get(QK_TAP_DANCE_GET_INDEX(keycode));\n            state = tap_dance_get_state(QK_TAP_DANCE_GET_INDEX(keycode));\n            if (!record->event.pressed && state != NULL && state->count && !state->finished) {\n                tap_dance_tap_hold_t *tap_hold = (tap_dance_tap_hold_t *)action->user_data;\n                tap_code16(tap_hold->tap);\n            }\n    }\n    return true;\n}

Example 4: 'Quad Function Tap-Dance'

By DanielGGordon

Allow one key to have 4 (or more) functions, depending on number of presses, and if the key is held or tapped. Below is a specific example:

You will need a few things that can be used for 'Quad Function Tap-Dance'.

You'll need to add these to the top of your keymap.c file, before your keymap.

c
typedef enum {\n    TD_NONE,\n    TD_UNKNOWN,\n    TD_SINGLE_TAP,\n    TD_SINGLE_HOLD,\n    TD_DOUBLE_TAP,\n    TD_DOUBLE_HOLD,\n    TD_DOUBLE_SINGLE_TAP, // Send two single taps\n    TD_TRIPLE_TAP,\n    TD_TRIPLE_HOLD\n} td_state_t;\n\ntypedef struct {\n    bool is_press_action;\n    td_state_t state;\n} td_tap_t;\n\n// Tap dance enums\nenum {\n    X_CTL,\n    SOME_OTHER_DANCE\n};\n\ntd_state_t cur_dance(tap_dance_state_t *state);\n\n// For the x tap dance. Put it here so it can be used in any keymap\nvoid x_finished(tap_dance_state_t *state, void *user_data);\nvoid x_reset(tap_dance_state_t *state, void *user_data);

Now, at the bottom of your keymap.c file, you'll need to add the following:

c
/* Return an integer that corresponds to what kind of tap dance should be executed.\n *\n * How to figure out tap dance state: interrupted and pressed.\n *\n * Interrupted: If the state of a dance is "interrupted", that means that another key has been hit\n *  under the tapping term. This is typically indicative that you are trying to "tap" the key.\n *\n * Pressed: Whether or not the key is still being pressed. If this value is true, that means the tapping term\n *  has ended, but the key is still being pressed down. This generally means the key is being "held".\n *\n * One thing that is currently not possible with qmk software in regards to tap dance is to mimic the "permissive hold"\n *  feature. In general, advanced tap dances do not work well if they are used with commonly typed letters.\n *  For example "A". Tap dances are best used on non-letter keys that are not hit while typing letters.\n *\n * Good places to put an advanced tap dance:\n *  z,q,x,j,k,v,b, any function key, home/end, comma, semi-colon\n *\n * Criteria for "good placement" of a tap dance key:\n *  Not a key that is hit frequently in a sentence\n *  Not a key that is used frequently to double tap, for example 'tab' is often double tapped in a terminal, or\n *    in a web form. So 'tab' would be a poor choice for a tap dance.\n *  Letters used in common words as a double. For example 'p' in 'pepper'. If a tap dance function existed on the\n *    letter 'p', the word 'pepper' would be quite frustrating to type.\n *\n * For the third point, there does exist the 'TD_DOUBLE_SINGLE_TAP', however this is not fully tested\n *\n */\ntd_state_t cur_dance(tap_dance_state_t *state) {\n    if (state->count == 1) {\n        if (state->interrupted || !state->pressed) return TD_SINGLE_TAP;\n        // Key has not been interrupted, but the key is still held. Means you want to send a 'HOLD'.\n        else return TD_SINGLE_HOLD;\n    } else if (state->count == 2) {\n        // TD_DOUBLE_SINGLE_TAP is to distinguish between typing "pepper", and actually wanting a double tap\n        // action when hitting 'pp'. Suggested use case for this return value is when you want to send two\n        // keystrokes of the key, and not the 'double tap' action/macro.\n        if (state->interrupted) return TD_DOUBLE_SINGLE_TAP;\n        else if (state->pressed) return TD_DOUBLE_HOLD;\n        else return TD_DOUBLE_TAP;\n    }\n\n    // Assumes no one is trying to type the same letter three times (at least not quickly).\n    // If your tap dance key is 'KC_W', and you want to type "www." quickly - then you will need to add\n    // an exception here to return a 'TD_TRIPLE_SINGLE_TAP', and define that enum just like 'TD_DOUBLE_SINGLE_TAP'\n    if (state->count == 3) {\n        if (state->interrupted || !state->pressed) return TD_TRIPLE_TAP;\n        else return TD_TRIPLE_HOLD;\n    } else return TD_UNKNOWN;\n}\n\n// Create an instance of 'td_tap_t' for the 'x' tap dance.\nstatic td_tap_t xtap_state = {\n    .is_press_action = true,\n    .state = TD_NONE\n};\n\nvoid x_finished(tap_dance_state_t *state, void *user_data) {\n    xtap_state.state = cur_dance(state);\n    switch (xtap_state.state) {\n        case TD_SINGLE_TAP: register_code(KC_X); break;\n        case TD_SINGLE_HOLD: register_code(KC_LCTL); break;\n        case TD_DOUBLE_TAP: register_code(KC_ESC); break;\n        case TD_DOUBLE_HOLD: register_code(KC_LALT); break;\n        // Last case is for fast typing. Assuming your key is `f`:\n        // For example, when typing the word `buffer`, and you want to make sure that you send `ff` and not `Esc`.\n        // In order to type `ff` when typing fast, the next character will have to be hit within the `TAPPING_TERM`, which by default is 200ms.\n        case TD_DOUBLE_SINGLE_TAP: tap_code(KC_X); register_code(KC_X); break;\n        default: break;\n    }\n}\n\nvoid x_reset(tap_dance_state_t *state, void *user_data) {\n    switch (xtap_state.state) {\n        case TD_SINGLE_TAP: unregister_code(KC_X); break;\n        case TD_SINGLE_HOLD: unregister_code(KC_LCTL); break;\n        case TD_DOUBLE_TAP: unregister_code(KC_ESC); break;\n        case TD_DOUBLE_HOLD: unregister_code(KC_LALT); break;\n        case TD_DOUBLE_SINGLE_TAP: unregister_code(KC_X); break;\n        default: break;\n    }\n    xtap_state.state = TD_NONE;\n}\n\ntap_dance_action_t tap_dance_actions[] = {\n    [X_CTL] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, x_finished, x_reset)\n};

And then simply use TD(X_CTL) anywhere in your keymap.

INFO

In this configuration "hold" takes place after tap dance timeout. To achieve instant hold, remove state->interrupted checks in conditions. As a result you may use comfortable longer tapping periods to have more time for taps and not to wait too long for holds (try starting with doubled TAPPING_TERM).

Example 5: Using tap dance for advanced mod-tap and layer-tap keys

Tap dance can be used to emulate MT() and LT() behavior when the tapped code is not a basic keycode. This is useful to send tapped keycodes that normally require Shift, such as parentheses or curly braces—or other modified keycodes, such as Control + X.

Below your layers and custom keycodes, add the following:

c
// Tap Dance keycodes\nenum td_keycodes {\n    ALT_LP // Our example key: `LALT` when held, `(` when tapped. Add additional keycodes for each tapdance.\n};\n\n// Define a type containing as many tapdance states as you need\ntypedef enum {\n    TD_NONE,\n    TD_UNKNOWN,\n    TD_SINGLE_TAP,\n    TD_SINGLE_HOLD,\n    TD_DOUBLE_SINGLE_TAP\n} td_state_t;\n\n// Create a global instance of the tapdance state type\nstatic td_state_t td_state;\n\n// Declare your tapdance functions:\n\n// Function to determine the current tapdance state\ntd_state_t cur_dance(tap_dance_state_t *state);\n\n// `finished` and `reset` functions for each tapdance keycode\nvoid altlp_finished(tap_dance_state_t *state, void *user_data);\nvoid altlp_reset(tap_dance_state_t *state, void *user_data);

Below your LAYOUT, define each of the tapdance functions:

c
// Determine the tapdance state to return\ntd_state_t cur_dance(tap_dance_state_t *state) {\n    if (state->count == 1) {\n        if (state->interrupted || !state->pressed) return TD_SINGLE_TAP;\n        else return TD_SINGLE_HOLD;\n    }\n\n    if (state->count == 2) return TD_DOUBLE_SINGLE_TAP;\n    else return TD_UNKNOWN; // Any number higher than the maximum state value you return above\n}\n\n// Handle the possible states for each tapdance keycode you define:\n\nvoid altlp_finished(tap_dance_state_t *state, void *user_data) {\n    td_state = cur_dance(state);\n    switch (td_state) {\n        case TD_SINGLE_TAP:\n            register_code16(KC_LPRN);\n            break;\n        case TD_SINGLE_HOLD:\n            register_mods(MOD_BIT(KC_LALT)); // For a layer-tap key, use `layer_on(_MY_LAYER)` here\n            break;\n        case TD_DOUBLE_SINGLE_TAP: // Allow nesting of 2 parens `((` within tapping term\n            tap_code16(KC_LPRN);\n            register_code16(KC_LPRN);\n            break;\n        default:\n            break;\n    }\n}\n\nvoid altlp_reset(tap_dance_state_t *state, void *user_data) {\n    switch (td_state) {\n        case TD_SINGLE_TAP:\n            unregister_code16(KC_LPRN);\n            break;\n        case TD_SINGLE_HOLD:\n            unregister_mods(MOD_BIT(KC_LALT)); // For a layer-tap key, use `layer_off(_MY_LAYER)` here\n            break;\n        case TD_DOUBLE_SINGLE_TAP:\n            unregister_code16(KC_LPRN);\n            break;\n        default:\n            break;\n    }\n}\n\n// Define `ACTION_TAP_DANCE_FN_ADVANCED()` for each tapdance keycode, passing in `finished` and `reset` functions\ntap_dance_action_t tap_dance_actions[] = {\n    [ALT_LP] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, altlp_finished, altlp_reset)\n};

Wrap each tapdance keycode in TD() when including it in your keymap, e.g. TD(ALT_LP).

Example 6: Using tap dance for momentary-layer-switch and layer-toggle keys

Tap Dance can be used to mimic MO(layer) and TG(layer) functionality. For this example, we will set up a key to function as KC_QUOT on single-tap, as MO(_MY_LAYER) on single-hold, and TG(_MY_LAYER) on double-tap.

The first step is to include the following code towards the beginning of your keymap.c:

c
// Define a type for as many tap dance states as you need\ntypedef enum {\n    TD_NONE,\n    TD_UNKNOWN,\n    TD_SINGLE_TAP,\n    TD_SINGLE_HOLD,\n    TD_DOUBLE_TAP\n} td_state_t;\n\ntypedef struct {\n    bool is_press_action;\n    td_state_t state;\n} td_tap_t;\n\nenum {\n    QUOT_LAYR, // Our custom tap dance key; add any other tap dance keys to this enum \n};\n\n// Declare the functions to be used with your tap dance key(s)\n\n// Function associated with all tap dances\ntd_state_t cur_dance(tap_dance_state_t *state);\n\n// Functions associated with individual tap dances\nvoid ql_finished(tap_dance_state_t *state, void *user_data);\nvoid ql_reset(tap_dance_state_t *state, void *user_data);

Towards the bottom of your keymap.c, include the following code:

c
// Determine the current tap dance state\ntd_state_t cur_dance(tap_dance_state_t *state) {\n    if (state->count == 1) {\n        if (!state->pressed) return TD_SINGLE_TAP;\n        else return TD_SINGLE_HOLD;\n    } else if (state->count == 2) return TD_DOUBLE_TAP;\n    else return TD_UNKNOWN;\n}\n\n// Initialize tap structure associated with example tap dance key\nstatic td_tap_t ql_tap_state = {\n    .is_press_action = true,\n    .state = TD_NONE\n};\n\n// Functions that control what our tap dance key does\nvoid ql_finished(tap_dance_state_t *state, void *user_data) {\n    ql_tap_state.state = cur_dance(state);\n    switch (ql_tap_state.state) {\n        case TD_SINGLE_TAP:\n            tap_code(KC_QUOT);\n            break;\n        case TD_SINGLE_HOLD:\n            layer_on(_MY_LAYER);\n            break;\n        case TD_DOUBLE_TAP:\n            // Check to see if the layer is already set\n            if (layer_state_is(_MY_LAYER)) {\n                // If already set, then switch it off\n                layer_off(_MY_LAYER);\n            } else {\n                // If not already set, then switch the layer on\n                layer_on(_MY_LAYER);\n            }\n            break;\n        default:\n            break;\n    }\n}\n\nvoid ql_reset(tap_dance_state_t *state, void *user_data) {\n    // If the key was held down and now is released then switch off the layer\n    if (ql_tap_state.state == TD_SINGLE_HOLD) {\n        layer_off(_MY_LAYER);\n    }\n    ql_tap_state.state = TD_NONE;\n}\n\n// Associate our tap dance key with its functionality\ntap_dance_action_t tap_dance_actions[] = {\n    [QUOT_LAYR] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, ql_finished, ql_reset)\n};\n\n// Set a long-ish tapping term for tap-dance keys\nuint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case QK_TAP_DANCE ... QK_TAP_DANCE_MAX:\n            return 275;\n        default:\n            return TAPPING_TERM;\n    }\n}

The above code is similar to that used in previous examples. The one point to note is that we need to be able to check which layers are active at any time so we can toggle them if needed. To do this we use the layer_state_is(layer) function which returns true if the given layer is active.

The use of cur_dance() and ql_tap_state mirrors the above examples.

The case: TD_SINGLE_TAP in ql_finished is similar to the above examples. The TD_SINGLE_HOLD case works in conjunction with ql_reset() to switch to _MY_LAYER while the tap dance key is held, and to switch away from _MY_LAYER when the key is released. This mirrors the use of MO(_MY_LAYER). The TD_DOUBLE_TAP case works by checking whether _MY_LAYER is the active layer, and toggling it on or off accordingly. This mirrors the use of TG(_MY_LAYER).

tap_dance_actions[] works similar to the above examples. Note that, additionally, I set a longer tapping term for the tap dance keys. This is because I like my TAPPING_TERM to be short (~175ms) for my non-tap-dance keys but find that this is too quick for me to reliably complete tap dance actions - thus the increased time of 275ms here. In order for the per-key tapping terms to take effect, TAPPING_TERM_PER_KEY must be defined in your config.h.

Finally, to get this tap dance key working, be sure to include TD(QUOT_LAYR) in your keymaps[].

', 66); diff --git a/assets/features_tap_dance.md.DXcB5Veb.lean.js b/assets/features_tap_dance.md.DYKVHW8v.lean.js similarity index 84% rename from assets/features_tap_dance.md.DXcB5Veb.lean.js rename to assets/features_tap_dance.md.DYKVHW8v.lean.js index cafada6d22d..fcaf4347944 100644 --- a/assets/features_tap_dance.md.DXcB5Veb.lean.js +++ b/assets/features_tap_dance.md.DYKVHW8v.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Tap Dance: A Single Key Can Do 3, 5, or 100 Different Things","description":"","frontmatter":{},"headers":[],"relativePath":"features/tap_dance.md","filePath":"features/tap_dance.md","lastUpdated":null}'); const _sfc_main = { name: "features/tap_dance.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 66); diff --git a/assets/features_tri_layer.md.DkFd4pCh.js b/assets/features_tri_layer.md.CP4tVyWE.js similarity index 97% rename from assets/features_tri_layer.md.DkFd4pCh.js rename to assets/features_tri_layer.md.CP4tVyWE.js index a0f7497416b..1c02cd104ad 100644 --- a/assets/features_tri_layer.md.DkFd4pCh.js +++ b/assets/features_tri_layer.md.CP4tVyWE.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Tri Layers","description":"","frontmatter":{},"headers":[],"relativePath":"features/tri_layer.md","filePath":"features/tri_layer.md","lastUpdated":null}'); const _sfc_main = { name: "features/tri_layer.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Tri Layers

This enables support for the OLKB style "Tri Layer" keycodes. These function similar to the MO (momentary) function key, but if both the "Lower" and "Upper" keys are pressed, it activates a third "Adjust" layer. To enable this functionality, add this line to your rules.mk:

make
TRI_LAYER_ENABLE = yes

Note that the "upper", "lower" and "adjust" names don't have a particular significance, they are just used to identify and clarify the behavior. Layers are processed from highest numeric value to lowest, however the values are not required to be consecutive.

For a detailed explanation of how the layer stack works, check out Keymap Overview.

Keycodes

KeycodeAliasDescription
QK_TRI_LAYER_LOWERTL_LOWRMomentarily enables the "lower" layer. Enables the "adjust" layer if the "upper" layer is also enabled.
QK_TRI_LAYER_UPPERTL_UPPRMomentarily enables the "upper" layer. Enables the "adjust" layer if the "lower" layer is also enabled.

Configuration

To change the default values for the layers, you can change these defines, in your config.h

Config nameDefaultDescription
TRI_LAYER_LOWER_LAYER1Sets the default for the "lower" layer.
TRI_LAYER_UPPER_LAYER2Sets the default for the "upper" layer.
TRI_LAYER_ADJUST_LAYER3Sets the default for the "adjust" layer.

Eg, if you wanted to set the "Adjust" layer to be layer 5, you'd add this to your config.h:

c
#define TRI_LAYER_ADJUST_LAYER 5

Functions

Function nameDescription
set_tri_layer_lower_layer(layer)Changes the "lower" layer*.
set_tri_layer_upper_layer(layer)Changes the "upper" layer*.
set_tri_layer_adjust_layer(layer)Changes the "adjust" layer*.
set_tri_layer_layers(lower, upper, adjust)Sets the "lower", "upper" and "adjust" layers*.
get_tri_layer_lower_layer()Gets the current "lower" layer.
get_tri_layer_upper_layer()Gets the current "upper" layer.
get_tri_layer_adjust_layer()Gets the current "adjust" layer.

WARNING

Note: these settings are not persistent, and will be reset to the default on power loss or power cycling of the controller.

', 15); diff --git a/assets/features_tri_layer.md.DkFd4pCh.lean.js b/assets/features_tri_layer.md.CP4tVyWE.lean.js similarity index 83% rename from assets/features_tri_layer.md.DkFd4pCh.lean.js rename to assets/features_tri_layer.md.CP4tVyWE.lean.js index fdbd5f91cf7..95183031c4a 100644 --- a/assets/features_tri_layer.md.DkFd4pCh.lean.js +++ b/assets/features_tri_layer.md.CP4tVyWE.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Tri Layers","description":"","frontmatter":{},"headers":[],"relativePath":"features/tri_layer.md","filePath":"features/tri_layer.md","lastUpdated":null}'); const _sfc_main = { name: "features/tri_layer.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 15); diff --git a/assets/features_unicode.md.qsSquqNa.js b/assets/features_unicode.md.B_tQVqk9.js similarity index 99% rename from assets/features_unicode.md.qsSquqNa.js rename to assets/features_unicode.md.B_tQVqk9.js index e7306a5f568..1d57cda41e7 100644 --- a/assets/features_unicode.md.qsSquqNa.js +++ b/assets/features_unicode.md.B_tQVqk9.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Unicode","description":"","frontmatter":{},"headers":[],"relativePath":"features/unicode.md","filePath":"features/unicode.md","lastUpdated":null}'); const _sfc_main = { name: "features/unicode.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Unicode

With a little help from your OS, practically any Unicode character can be input using your keyboard.

Caveats

There are some limitations to this feature. Because there is no "standard" method of Unicode input across all operating systems, each of them require their own setup process on both the host and in the firmware, which may involve installation of additional software. This also means Unicode input will not "just work" when the keyboard is plugged into another device.

Usage

The core Unicode API can be used purely programmatically. However, there are also additional subsystems which build on top of it and come with keycodes to make things easier. See below for more details.

Add the following to your keymap's rules.mk:

make
UNICODE_COMMON = yes

Basic Configuration

Add the following to your config.h:

DefineDefaultDescription
UNICODE_KEY_MACKC_LEFT_ALTThe key to hold when beginning a Unicode sequence with the macOS input mode
UNICODE_KEY_LNXLCTL(LSFT(KC_U))The key to tap when beginning a Unicode sequence with the Linux input mode
UNICODE_KEY_WINCKC_RIGHT_ALTThe key to hold when beginning a Unicode sequence with the WinCompose input mode
UNICODE_SELECTED_MODES-1A comma separated list of input modes for cycling through
UNICODE_CYCLE_PERSISTtrueWhether to persist the current Unicode input mode to EEPROM
UNICODE_TYPE_DELAY10The amount of time to wait, in milliseconds, between Unicode sequence keystrokes

Audio Feedback

If you have the Audio feature enabled on your board, you can configure it to play sounds when the input mode is changed.

Add the following to your config.h:

DefineDefaultDescription
UNICODE_SONG_MACn/aThe song to play when the macOS input mode is selected
UNICODE_SONG_LNXn/aThe song to play when the Linux input mode is selected
UNICODE_SONG_BSDn/aThe song to play when the BSD input mode is selected
UNICODE_SONG_WINn/aThe song to play when the Windows input mode is selected
UNICODE_SONG_WINCn/aThe song to play when the WinCompose input mode is selected

Input Subsystems

Each of these subsystems have their own pros and cons in terms of flexibility and ease of use. Choose the one that best fits your needs.

', 17); diff --git a/assets/features_unicode.md.qsSquqNa.lean.js b/assets/features_unicode.md.B_tQVqk9.lean.js similarity index 99% rename from assets/features_unicode.md.qsSquqNa.lean.js rename to assets/features_unicode.md.B_tQVqk9.lean.js index f9361d8b14c..7b7ecbb9005 100644 --- a/assets/features_unicode.md.qsSquqNa.lean.js +++ b/assets/features_unicode.md.B_tQVqk9.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Unicode","description":"","frontmatter":{},"headers":[],"relativePath":"features/unicode.md","filePath":"features/unicode.md","lastUpdated":null}'); const _sfc_main = { name: "features/unicode.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 17); diff --git a/assets/features_wireless.md.Bk4hYnZX.js b/assets/features_wireless.md.2T8KVBJs.js similarity index 98% rename from assets/features_wireless.md.Bk4hYnZX.js rename to assets/features_wireless.md.2T8KVBJs.js index d5a791420e1..fbffdbdafe3 100644 --- a/assets/features_wireless.md.Bk4hYnZX.js +++ b/assets/features_wireless.md.2T8KVBJs.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Wireless / Bluetooth","description":"","frontmatter":{},"headers":[],"relativePath":"features/wireless.md","filePath":"features/wireless.md","lastUpdated":null}'); const _sfc_main = { name: "features/wireless.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Wireless / Bluetooth

Bluetooth Known Supported Hardware

Currently Bluetooth support is limited to AVR based chips. For Bluetooth 2.1, QMK has support for RN-42 modules. For more recent BLE protocols, currently only the Adafruit Bluefruit SPI Friend is directly supported. BLE is needed to connect to iOS devices. Note iOS does not support mouse input.

BoardBluetooth ProtocolConnection Typerules.mkBluetooth Chip
Roving Networks RN-42 (Sparkfun Bluesmirf)Bluetooth ClassicUARTBLUETOOTH_DRIVER = rn42RN-42
Bluefruit LE SPI FriendBluetooth Low EnergySPIBLUETOOTH_DRIVER = bluefruit_lenRF51822

Not Supported Yet but possible:

Adafruit BLE SPI Friend

Currently The only bluetooth chipset supported by QMK is the Adafruit Bluefruit SPI Friend. It's a Nordic nRF51822 based chip running Adafruit's custom firmware. Data is transmitted via Adafruit's SDEP over Hardware SPI. The Feather 32u4 Bluefruit LE is supported as it's an AVR mcu connected via SPI to the Nordic BLE chip with Adafruit firmware. If Building a custom board with the SPI friend it would be easiest to just use the pin selection that the 32u4 feather uses but you can change the pins in the config.h options with the following defines:

A Bluefruit UART friend can be converted to an SPI friend, however this requires some reflashing and soldering directly to the MDBT40 chip.

Bluetooth Rules.mk Options

The currently supported Bluetooth chipsets do not support N-Key Rollover (NKRO), so rules.mk must contain NKRO_ENABLE = no.

Add the following to your rules.mk:

make
BLUETOOTH_ENABLE = yes\nBLUETOOTH_DRIVER = bluefruit_le # or rn42

Bluetooth Keycodes

This is used when multiple keyboard outputs can be selected. Currently this only allows for switching between USB and Bluetooth on keyboards that support both.

KeyAliasesDescription
QK_OUTPUT_AUTOOU_AUTOAutomatically switch to USB when plugged in, otherwise use wireless
QK_OUTPUT_NEXTOU_NEXTCycle forwards through USB, Bluetooth, and 2.4GHz (when available) (not yet implemented)
QK_OUTPUT_PREVOU_PREVCycle backwards through USB, Bluetooth, and 2.4GHz (when available) (not yet implemented)
QK_OUTPUT_NONEOU_NONEDisable all output (not yet implemented)
QK_OUTPUT_USBOU_USBOutput to USB only
QK_OUTPUT_2P4GHZOU_2P4GOutput to 2.4GHz only (not yet implemented)
QK_OUTPUT_BLUETOOTHOU_BTOutput to Bluetooth only
QK_BLUETOOTH_PROFILE_NEXTBT_NEXTMove to the next Bluetooth profile (not yet implemented)
QK_BLUETOOTH_PROFILE_PREVBT_PREVMove to the previous Bluetooth profile (not yet implemented)
QK_BLUETOOTH_UNPAIRBT_UNPRUn-pair the current Bluetooth profile (not yet implemented)
QK_BLUETOOTH_PROFILE1BT_PRF1Swap to Bluetooth profile #1 (not yet implemented)
QK_BLUETOOTH_PROFILE2BT_PRF2Swap to Bluetooth profile #2 (not yet implemented)
QK_BLUETOOTH_PROFILE3BT_PRF3Swap to Bluetooth profile #3 (not yet implemented)
QK_BLUETOOTH_PROFILE4BT_PRF4Swap to Bluetooth profile #4 (not yet implemented)
QK_BLUETOOTH_PROFILE5BT_PRF5Swap to Bluetooth profile #5 (not yet implemented)
', 17); diff --git a/assets/features_wireless.md.Bk4hYnZX.lean.js b/assets/features_wireless.md.2T8KVBJs.lean.js similarity index 83% rename from assets/features_wireless.md.Bk4hYnZX.lean.js rename to assets/features_wireless.md.2T8KVBJs.lean.js index efa6ee6bf21..e8a4a06b828 100644 --- a/assets/features_wireless.md.Bk4hYnZX.lean.js +++ b/assets/features_wireless.md.2T8KVBJs.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Wireless / Bluetooth","description":"","frontmatter":{},"headers":[],"relativePath":"features/wireless.md","filePath":"features/wireless.md","lastUpdated":null}'); const _sfc_main = { name: "features/wireless.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 17); diff --git a/assets/features_wpm.md.Baq4jIoq.js b/assets/features_wpm.md.CLlB7DNG.js similarity index 99% rename from assets/features_wpm.md.Baq4jIoq.js rename to assets/features_wpm.md.CLlB7DNG.js index 78a211adc7f..d4628305ddb 100644 --- a/assets/features_wpm.md.Baq4jIoq.js +++ b/assets/features_wpm.md.CLlB7DNG.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Word Per Minute (WPM) Calculation","description":"","frontmatter":{},"headers":[],"relativePath":"features/wpm.md","filePath":"features/wpm.md","lastUpdated":null}'); const _sfc_main = { name: "features/wpm.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Word Per Minute (WPM) Calculation

The WPM feature uses time between keystrokes to compute a rolling average words per minute rate and makes this available for various uses.

Enable the WPM system by adding this to your rules.mk:

WPM_ENABLE = yes\n

For split keyboards using soft serial, the computed WPM score will be available on the master AND slave half.

Configuration

DefineDefaultDescription
WPM_ESTIMATED_WORD_SIZE5This is the value used when estimating average word size (for regression and normal use)
WPM_ALLOW_COUNT_REGRESSIONNot definedIf defined allows the WPM to be decreased when hitting Delete or Backspace
WPM_UNFILTEREDNot definedIf undefined (the default), WPM values will be smoothed to avoid sudden changes in value
WPM_SAMPLE_SECONDS5This defines how many seconds of typing to average, when calculating WPM
WPM_SAMPLE_PERIODS25This defines how many sampling periods to use when calculating WPM
WPM_LAUNCH_CONTROLNot definedIf defined, WPM values will be calculated using partial buffers when typing begins

'WPM_UNFILTERED' is potentially useful if you're filtering data in some other way (and also because it reduces the code required for the WPM feature), or if reducing measurement latency to a minimum is important for you.

Increasing 'WPM_SAMPLE_SECONDS' will give more smoothly changing WPM values at the expense of slightly more latency to the WPM calculation.

Increasing 'WPM_SAMPLE_PERIODS' will improve the smoothness at which WPM decays once typing stops, at a cost of approximately this many bytes of firmware space.

If 'WPM_LAUNCH_CONTROL' is defined, whenever WPM drops to zero, the next time typing begins WPM will be calculated based only on the time since that typing began, instead of the whole period of time specified by WPM_SAMPLE_SECONDS. This results in reaching an accurate WPM value much faster, even when filtering is enabled and a large WPM_SAMPLE_SECONDS value is specified.

Public Functions

FunctionDescription
get_current_wpm(void)Returns the current WPM as a value between 0-255
set_current_wpm(x)Sets the current WPM to x (between 0-255)

Callbacks

By default, the WPM score only includes letters, numbers, space and some punctuation. If you want to change the set of characters considered as part of the WPM calculation, you can implement your own bool wpm_keycode_user(uint16_t keycode) and return true for any characters you would like included in the calculation, or false to not count that particular keycode.

For instance, the default is:

c
bool wpm_keycode_user(uint16_t keycode) {\n    if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX) || (keycode >= QK_MODS && keycode <= QK_MODS_MAX)) {\n        keycode = keycode & 0xFF;\n    } else if (keycode > 0xFF) {\n        keycode = 0;\n    }\n    if ((keycode >= KC_A && keycode <= KC_0) || (keycode >= KC_TAB && keycode <= KC_SLSH)) {\n        return true;\n    }\n\n    return false;\n}

Additionally, if WPM_ALLOW_COUNT_REGRESSION is defined, there is the uint8_t wpm_regress_count(uint16_t keycode) function that allows you to decrease the WPM. This is useful if you want to be able to penalize certain keycodes (or even combinations).

c
__attribute__((weak)) uint8_t wpm_regress_count(uint16_t keycode) {\n    bool weak_modded = (keycode >= QK_LCTL && keycode < QK_LSFT) || (keycode >= QK_RCTL && keycode < QK_RSFT);\n    \n    if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX) || (keycode >= QK_MODS && keycode <= QK_MODS_MAX)) {\n        keycode = keycode & 0xFF;\n    } else if (keycode > 0xFF) {\n        keycode = 0;\n    }\n    if (((get_mods() | get_oneshot_mods()) & MOD_MASK_CTRL} || weak_modded) && (keycode == KC_DEL || keycode == KC_BSPC)) {\n        return WPM_ESTIMATED_WORD_SIZE;\n    }\n    if (keycode == KC_DEL || keycode == KC_BSPC) {\n        return 1;\n    }\n}
', 19); diff --git a/assets/features_wpm.md.Baq4jIoq.lean.js b/assets/features_wpm.md.CLlB7DNG.lean.js similarity index 82% rename from assets/features_wpm.md.Baq4jIoq.lean.js rename to assets/features_wpm.md.CLlB7DNG.lean.js index c6946d4d98a..88c186c57a0 100644 --- a/assets/features_wpm.md.Baq4jIoq.lean.js +++ b/assets/features_wpm.md.CLlB7DNG.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Word Per Minute (WPM) Calculation","description":"","frontmatter":{},"headers":[],"relativePath":"features/wpm.md","filePath":"features/wpm.md","lastUpdated":null}'); const _sfc_main = { name: "features/wpm.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 19); diff --git a/assets/flashing.md.DMoR8VBF.js b/assets/flashing.md.D33WW-Hb.js similarity index 99% rename from assets/flashing.md.DMoR8VBF.js rename to assets/flashing.md.D33WW-Hb.js index 4ff8e2d96b4..58bf359ba0a 100644 --- a/assets/flashing.md.DMoR8VBF.js +++ b/assets/flashing.md.D33WW-Hb.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Flashing Instructions and Bootloader Information","description":"","frontmatter":{},"headers":[],"relativePath":"flashing.md","filePath":"flashing.md","lastUpdated":null}'); const _sfc_main = { name: "flashing.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Flashing Instructions and Bootloader Information

There are quite a few different types of bootloaders that keyboards use, and almost all of them use their own flashing method and tools. Luckily, projects like the QMK Toolbox aim to support as many of them as possible, but this article will describe the different types of bootloaders, and available methods for flashing them.

For AVR-based keyboards, QMK will automatically calculate if your .hex file is the right size to be flashed to the device based on the BOOTLOADER value set in rules.mk, and output the total size in bytes (along with the max).

You will also be able to use the CLI to flash your keyboard, by running:

$ qmk flash -kb <keyboard> -km <keymap>

See the qmk flash documentation for more information.

Atmel DFU

Atmel's DFU bootloader comes on all USB AVRs by default (except for 16/32U4RC), and is used by many keyboards that have their own ICs on their PCBs (older OLKB boards, Clueboards). Some keyboards may also use LUFA's DFU bootloader, or QMK's fork of it (newer OLKB boards), that adds in additional features specific to that hardware.

To ensure compatibility with the DFU bootloader, make sure this block is present in your rules.mk (optionally with lufa-dfu or qmk-dfu instead):

make
# Bootloader selection\nBOOTLOADER = atmel-dfu

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Press the QK_BOOT keycode
    • Press the RESET button on the PCB if available
    • Short RST to GND quickly
  2. Wait for the OS to detect the device
  3. Erase the flash memory (will be done automatically if using the Toolbox or CLI/make command)
  4. Flash a .hex file
  5. Reset the device into application mode (will be done automatically as above)

QMK DFU

QMK maintains a fork of the LUFA DFU bootloader that additionally performs a simple matrix scan for exiting the bootloader and returning to the application, as well as flashing an LED/making a ticking noise with a speaker when things are happening. To enable these features, add the following defines to your config.h:

c
#define QMK_ESC_OUTPUT F1  // COL pin if COL2ROW\n#define QMK_ESC_INPUT  D5  // ROW pin if COL2ROW\n// Optional:\n//#define QMK_LED E6\n//#define QMK_SPEAKER C6

Currently we do not recommend making QMK_ESC the same key as the one designated for Bootmagic, as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader.

The manufacturer and product strings are automatically pulled from config.h, with " Bootloader" appended to the product string.

To generate this bootloader, use the bootloader target, eg. make planck/rev4:default:bootloader. To generate a production-ready .hex file (combining QMK and the bootloader), use the production target, eg. make planck/rev4:default:production.

make Targets

Caterina

Arduino boards and their clones use the Caterina bootloader or a variant of it (any keyboard built with a Pro Micro or clone, and the Pololu A-Star), and uses the AVR109 protocol to communicate through virtual serial.

To ensure compatibility with the Caterina bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = caterina

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods (you only have 7 seconds to flash once it enters; some variants may require you to reset twice within 750 milliseconds):
    • Press the QK_BOOT keycode
    • Press the RESET button on the PCB if available
    • Short RST to GND quickly
  2. Wait for the OS to detect the device
  3. Flash a .hex file
  4. Wait for the device to reset automatically

make Targets

HalfKay

HalfKay is a super-slim bootloader developed by PJRC that presents itself as an HID device (which requires no additional driver), and comes preflashed on all Teensys, namely the 2.0. It is currently closed-source, and thus once overwritten (eg. via ISP flashing another bootloader), cannot be restored.

To ensure compatibility with the Halfkay bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = halfkay

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods (you only have 7 seconds to flash once it enters):
    • Press the QK_BOOT keycode
    • Press the RESET button on the Teensy or PCB if available
    • short RST to GND quickly
  2. Wait for the OS to detect the device
  3. Flash a .hex file
  4. Reset the device into application mode (may be done automatically)

USBasploader

USBasploader is a bootloader originally by Objective Development. It emulates a USBasp ISP programmer and is used in some non-USB AVR chips such as the ATmega328P, which run V-USB.

To ensure compatibility with the USBasploader bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = usbasploader

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Press the QK_BOOT keycode
    • Keep the BOOT button held while quickly tapping the RESET button on the PCB
  2. Wait for the OS to detect the device
  3. Flash a .hex file
  4. Press the RESET button on the PCB or short RST to GND

BootloadHID

BootloadHID is a USB bootloader for AVR microcontrollers. It presents itself as an HID input device, much like HalfKay, and can therefore be run without installing any driver on Windows.

To ensure compatibility with the bootloadHID bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = bootloadhid

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Hold the salt key while plugging the keyboard in - for PS2AVRGB boards, this is usually the key connected to MCU pins A0 and B0, otherwise it will be documented in your keyboard's readme
  2. Wait for the OS to detect the device
  3. Flash a .hex file
  4. Reset the device into application mode (may be done automatically)

QMK HID

QMK maintains a fork of the LUFA HID bootloader, which uses a USB HID Endpoint for flashing in the way that the PJRC's Teensy Loader flasher and HalfKay bootloader work. Additionally, it performs a simple matrix scan for exiting the bootloader and returning to the application, as well as flashing an LED/making a ticking noise with a speaker when things are happening.

To ensure compatibility with the QMK HID bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = qmk-hid

To enable the additional features, add the following defines to your config.h:

c
#define QMK_ESC_OUTPUT F1  // COL pin if COL2ROW\n#define QMK_ESC_INPUT  D5  // ROW pin if COL2ROW\n// Optional:\n//#define QMK_LED E6\n//#define QMK_SPEAKER C6

Currently we do not recommend making QMK_ESC the same key as the one designated for Bootmagic, as holding it down will cause the MCU to loop back and forth between entering and exiting the bootloader.

The manufacturer and product strings are automatically pulled from config.h, with " Bootloader" appended to the product string.

To generate this bootloader, use the bootloader target, eg. make planck/rev4:default:bootloader. To generate a production-ready .hex file (combining QMK and the bootloader), use the production target, eg. make planck/rev4:default:production.

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Press the QK_BOOT keycode
    • Press the RESET button on the PCB if available
    • short RST to GND quickly
  2. Wait for the OS to detect the device
  3. Flash a .hex file
  4. Reset the device into application mode (may be done automatically)

make Targets

STM32/APM32 DFU

All USB-capable STM32 and APM32 MCUs, except for a small handful (such as STM32F103 -- see the STM32duino section) come preloaded with a factory bootloader that cannot be modified nor deleted.

To ensure compatibility with the STM32-DFU bootloader, make sure this block is present in your rules.mk (optionally with apm32-dfu instead):

make
# Bootloader selection\nBOOTLOADER = stm32-dfu

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode (may not work on STM32F042 devices)
    • If a reset circuit is present, tap the RESET button on the PCB; some boards may also have a toggle switch that must be flipped
    • Otherwise, you need to bridge BOOT0 to VCC (via BOOT0 button or jumper), short RESET to GND (via RESET button or jumper), and then let go of the BOOT0 bridge
  2. Wait for the OS to detect the device
  3. Flash a .bin file
  4. Reset the device into application mode (may be done automatically)

make Targets

STM32duino

This bootloader is used almost exclusively for STM32F103 boards, as they do not come with a USB DFU bootloader. The source code and prebuilt binaries can be found here.

To ensure compatibility with the STM32duino bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = stm32duino

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • If a reset circuit is present, tap the RESET button on the PCB
    • Otherwise, you need to bridge BOOT0 to VCC (via BOOT0 button or jumper), short RESET to GND (via RESET button or jumper), and then let go of the BOOT0 bridge
  2. Wait for the OS to detect the device
  3. Flash a .bin file
  4. Reset the device into application mode (may be done automatically)

Kiibohd DFU

Keyboards produced by Input Club use NXP Kinetis microcontrollers rather than STM32, and come with their own custom bootloader, however the process and protocol is largely the same.

The rules.mk setting for this bootloader is kiibohd, but since this bootloader is limited to Input Club boards, it should not be necessary to set at keymap or user level.

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Press the RESET button on the PCB
  2. Wait for the OS to detect the device
  3. Flash a .bin file
  4. Reset the device into application mode (may be done automatically)

WB32 DFU

Some keyboards produced for several commercial brands (GMMK, Akko, MonsGeek, Inland) use this bootloader. The wb32-dfu-updater utility is bundled with QMK MSYS and Glorious's build of QMK Toolbox. If neither of these flashing methods is available for your OS, you will likely need to compile the CLI version from source.

The info.json setting for this bootloader is wb32-dfu.

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Press the RESET button on the PCB
  2. Wait for the OS to detect the device
  3. Flash a .bin file
  4. Reset the device into application mode (may be done automatically)

AT32 DFU

All AT32 MCUs come preloaded with a factory bootloader that cannot be modified nor deleted.

To ensure compatibility with the AT32-DFU bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = at32-dfu

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • If a reset circuit is present, tap the RESET button on the PCB; some boards may also have a toggle switch that must be flipped
    • Otherwise, you need to bridge BOOT0 to VCC (via BOOT0 button or jumper), short RESET to GND (via RESET button or jumper), and then let go of the BOOT0 bridge
  2. Wait for the OS to detect the device
  3. Flash a .bin file
  4. Reset the device into application mode (may be done automatically)

make Targets

tinyuf2

Keyboards may opt into supporting the tinyuf2 bootloader. This is currently only supported on F303/F401/F411.

The rules.mk setting for this bootloader is tinyuf2, and can be specified at the keymap or user level.

To ensure compatibility with the tinyuf2 bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = tinyuf2

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Double-tap the nRST button on the PCB.
  2. Wait for the OS to detect the device
  3. Copy the .uf2 file to the new USB disk
  4. Wait for the keyboard to become available

or

CLI Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Double-tap the nRST button on the PCB.
  2. Wait for the OS to detect the device
  3. Flash via QMK CLI eg. qmk flash --keyboard handwired/onekey/blackpill_f411_tinyuf2 --keymap default
  4. Wait for the keyboard to become available

make Targets

uf2boot

Keyboards may opt into supporting the uf2boot bootloader. This is currently only supported on F103.

The rules.mk setting for this bootloader is uf2boot, and can be specified at the keymap or user level.

To ensure compatibility with the uf2boot bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = uf2boot

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Double-tap the nRST button on the PCB.
  2. Wait for the OS to detect the device
  3. Copy the .uf2 file to the new USB disk
  4. Wait for the keyboard to become available

or

CLI Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Double-tap the nRST button on the PCB.
  2. Wait for the OS to detect the device
  3. Flash via QMK CLI eg. qmk flash --keyboard handwired/onekey/bluepill_uf2boot --keymap default
  4. Wait for the keyboard to become available

make Targets

Raspberry Pi RP2040 UF2

The rules.mk setting for this bootloader is rp2040, and can be specified at the keymap or user level.

To ensure compatibility with the rp2040 bootloader, make sure this block is present in your rules.mk:

make
# Bootloader selection\nBOOTLOADER = rp2040

Compatible flashers:

Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Hold the BOOTSEL button on the PCB while plugin in the usb cable.
    • Double-tap the RESET button on the PCB1.
  2. Wait for the OS to detect the device
  3. Copy the .uf2 file to the new USB disk
  4. Wait for the keyboard to become available

or

CLI Flashing sequence:

  1. Enter the bootloader using any of the following methods:
    • Tap the QK_BOOT keycode
    • Hold the BOOTSEL button on the PCB while plugin in the usb cable.
    • Double-tap the RESET button on the PCB1.
  2. Wait for the OS to detect the device
  3. Flash via QMK CLI eg. qmk flash --keyboard handwired/onekey/rpi_pico --keymap default
  4. Wait for the keyboard to become available

1: This works only if the controller has been flashed with QMK Firmware with RP2040_BOOTLOADER_DOUBLE_TAP_RESET defined.

', 153); diff --git a/assets/flashing.md.DMoR8VBF.lean.js b/assets/flashing.md.D33WW-Hb.lean.js similarity index 83% rename from assets/flashing.md.DMoR8VBF.lean.js rename to assets/flashing.md.D33WW-Hb.lean.js index d0955d57854..ef5b0dba8ed 100644 --- a/assets/flashing.md.DMoR8VBF.lean.js +++ b/assets/flashing.md.D33WW-Hb.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Flashing Instructions and Bootloader Information","description":"","frontmatter":{},"headers":[],"relativePath":"flashing.md","filePath":"flashing.md","lastUpdated":null}'); const _sfc_main = { name: "flashing.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 153); diff --git a/assets/getting_started_docker.md.AEG4WH1N.js b/assets/getting_started_docker.md.CnQDT8XT.js similarity index 98% rename from assets/getting_started_docker.md.AEG4WH1N.js rename to assets/getting_started_docker.md.CnQDT8XT.js index e2dad17de74..119cb294523 100644 --- a/assets/getting_started_docker.md.AEG4WH1N.js +++ b/assets/getting_started_docker.md.CnQDT8XT.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Docker Quick Start","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started_docker.md","filePath":"getting_started_docker.md","lastUpdated":null}'); const _sfc_main = { name: "getting_started_docker.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Docker Quick Start

This project includes a Docker workflow that will allow you to build a new firmware for your keyboard very easily without major changes to your primary operating system. This also ensures that when you clone the project and perform a build, you have the exact same environment as anyone else and the QMK build infrastructure. This makes it much easier for people to help you troubleshoot any issues you encounter.

Requirements

The main prerequisite is a working docker or podman install.

Usage

Acquire a local copy of the QMK's repository (including submodules):

git clone --recurse-submodules https://github.com/qmk/qmk_firmware.git\ncd qmk_firmware

Run the following command to build a keymap:

util/docker_build.sh <keyboard>:<keymap>\n# For example: util/docker_build.sh planck/rev6:default

This will compile the desired keyboard/keymap and leave the resulting .hex or .bin file in the QMK directory for you to flash. If :keymap is omitted, all keymaps are used. Note that the parameter format is the same as when building with make.

There is also support for building and flashing the keyboard straight from Docker by specifying the target as well:

util/docker_build.sh keyboard:keymap:target\n# For example: util/docker_build.sh planck/rev6:default:flash

Note that mass storage bootloaders are not supported by the flash target. In this case you will have to manually copy the firmware file to the keyboard.

You can also start the script without any parameters, in which case it will ask you to input the build parameters one by one, which you may find easier to use:

util/docker_build.sh\n# Reads parameters as input (leave blank for all keyboards/keymaps)

You can manually set which container runtime you want to use by setting the RUNTIME environment variable to it's name or path. By default docker or podman are automatically detected and docker is preferred over podman.

RUNTIME="podman" util/docker_build.sh keyboard:keymap:target

If flashing is not required, it's possible to run the container as unprivileged (on Linux), and without docker-machine (on Windows/macOS):

SKIP_FLASHING_SUPPORT=1 util/docker_build.sh keyboard:keymap:target

FAQ

Why can't I flash on Windows/macOS

On Windows and macOS, it requires Docker Machine to be running. This is tedious to set up, so it's not recommended; use QMK Toolbox instead.

WARNING

Docker for Windows requires Hyper-V to be enabled. This means that it cannot work on versions of Windows which don't have Hyper-V, such as Windows 7, Windows 8 and Windows 10 Home.

', 24); diff --git a/assets/getting_started_docker.md.AEG4WH1N.lean.js b/assets/getting_started_docker.md.CnQDT8XT.lean.js similarity index 84% rename from assets/getting_started_docker.md.AEG4WH1N.lean.js rename to assets/getting_started_docker.md.CnQDT8XT.lean.js index d09a107906e..6794e8861e5 100644 --- a/assets/getting_started_docker.md.AEG4WH1N.lean.js +++ b/assets/getting_started_docker.md.CnQDT8XT.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Docker Quick Start","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started_docker.md","filePath":"getting_started_docker.md","lastUpdated":null}'); const _sfc_main = { name: "getting_started_docker.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 24); diff --git a/assets/getting_started_github.md.B9wd068y.js b/assets/getting_started_github.md.CE8RxkZj.js similarity index 97% rename from assets/getting_started_github.md.B9wd068y.js rename to assets/getting_started_github.md.CE8RxkZj.js index a7e8b9dd4fe..e798da1a87c 100644 --- a/assets/getting_started_github.md.B9wd068y.js +++ b/assets/getting_started_github.md.CE8RxkZj.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/8Toomz4.jpg"; const _imports_1 = "/N1NYcSz.jpg"; const _imports_2 = "/eGO0ohO.jpg"; diff --git a/assets/getting_started_github.md.B9wd068y.lean.js b/assets/getting_started_github.md.CE8RxkZj.lean.js similarity index 87% rename from assets/getting_started_github.md.B9wd068y.lean.js rename to assets/getting_started_github.md.CE8RxkZj.lean.js index b6467ca090a..256f6620c7d 100644 --- a/assets/getting_started_github.md.B9wd068y.lean.js +++ b/assets/getting_started_github.md.CE8RxkZj.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/8Toomz4.jpg"; const _imports_1 = "/N1NYcSz.jpg"; const _imports_2 = "/eGO0ohO.jpg"; diff --git a/assets/getting_started_introduction.md.Dzi5ljBy.js b/assets/getting_started_introduction.md.C8lMDcxb.js similarity index 97% rename from assets/getting_started_introduction.md.Dzi5ljBy.js rename to assets/getting_started_introduction.md.C8lMDcxb.js index 989247b2749..ce5777db408 100644 --- a/assets/getting_started_introduction.md.Dzi5ljBy.js +++ b/assets/getting_started_introduction.md.C8lMDcxb.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started_introduction.md","filePath":"getting_started_introduction.md","lastUpdated":null}'); const _sfc_main = { name: "getting_started_introduction.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Introduction

This page attempts to explain the basic information you need to know to work with the QMK project. It assumes that you are familiar with navigating a Unix shell, but does not assume you are familiar with C or with compiling using make.

Basic QMK Structure

QMK is a fork of Jun Wako's tmk_keyboard project. The original TMK code, with modifications, can be found in the tmk_core folder. The QMK additions to the project may be found in the quantum folder. Keyboard projects may be found in the keyboards folder.

Userspace Structure

Within the folder users is a directory for each user. This is a place for users to put code that they might use between keyboards. See the docs for Userspace feature for more information.

Keyboard Project Structure

Within the folder keyboards, its subfolder handwired and its vendor and manufacture subdirectories e.g. clueboard is a directory for each keyboard project, for example qmk_firmware/keyboards/clueboard/2x1800. Within it, you'll find the following structure:

For more information on project structure, see QMK Keyboard Guidelines.

Keymap Structure

In every keymap folder, the following files may be found. Only keymap.c is required, and if the rest of the files are not found the default options will be chosen.

The config.h File

There are 3 possible config.h locations:

The build system automatically picks up the config files in the above order. If you wish to override any setting set by a previous config.h you will need to first include some boilerplate code for the settings you wish to change.

#pragma once

Then to override a setting from the previous config.h file you must #undef and then #define the setting again.

The boilerplate code and setting look like this together:

#pragma once\n\n// overrides go here!\n#undef MY_SETTING\n#define MY_SETTING 4
', 21); diff --git a/assets/getting_started_introduction.md.Dzi5ljBy.lean.js b/assets/getting_started_introduction.md.C8lMDcxb.lean.js similarity index 84% rename from assets/getting_started_introduction.md.Dzi5ljBy.lean.js rename to assets/getting_started_introduction.md.C8lMDcxb.lean.js index ab8f34e5700..74ba55800d3 100644 --- a/assets/getting_started_introduction.md.Dzi5ljBy.lean.js +++ b/assets/getting_started_introduction.md.C8lMDcxb.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Introduction","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started_introduction.md","filePath":"getting_started_introduction.md","lastUpdated":null}'); const _sfc_main = { name: "getting_started_introduction.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 21); diff --git a/assets/getting_started_make_guide.md.CeLtdD_X.js b/assets/getting_started_make_guide.md.CaRp2eyv.js similarity index 99% rename from assets/getting_started_make_guide.md.CeLtdD_X.js rename to assets/getting_started_make_guide.md.CaRp2eyv.js index dbe359ecc01..45122a23a42 100644 --- a/assets/getting_started_make_guide.md.CeLtdD_X.js +++ b/assets/getting_started_make_guide.md.CaRp2eyv.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"More Detailed make Instructions","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started_make_guide.md","filePath":"getting_started_make_guide.md","lastUpdated":null}'); const _sfc_main = { name: "getting_started_make_guide.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

More Detailed make Instructions

The full syntax of the make command is <keyboard>:<keymap>:<target>, where:

The <target> means the following

The following targets are for developers:

You can also add extra options at the end of the make command line, after the target

The make command itself also has some additional options, type make --help for more information. The most useful is probably -jx, which specifies that you want to compile using more than one CPU, the x represents the number of CPUs that you want to use. Setting that can greatly reduce the compile times, especially if you are compiling many keyboards/keymaps. I usually set it to one less than the number of CPUs that I have, so that I have some left for doing other things while it's compiling. Note that not all operating systems and make versions supports that option.

Here are some examples commands

rules.mk Options

Set these variables to no to disable them, and yes to enable them.

BOOTMAGIC_ENABLE

This allows you to hold a key (usually Escape by default) to reset the EEPROM settings that persist over power loss and ready your keyboard to accept new firmware.

MOUSEKEY_ENABLE

This gives you control over cursor movements and clicks via keycodes/custom functions.

EXTRAKEY_ENABLE

This allows you to use the system and audio control key codes.

CONSOLE_ENABLE

This allows you to print messages that can be read using hid_listen.

By default, all debug (dprint) print (print, xprintf), and user print (uprint) messages will be enabled. This will eat up a significant portion of the flash and may make the keyboard .hex file too big to program.

To disable debug messages (dprint) and reduce the .hex file size, include #define NO_DEBUG in your config.h file.

To disable print messages (print, xprintf) and user print messages (uprint) and reduce the .hex file size, include #define NO_PRINT in your config.h file.

To disable print messages (print, xprintf) and KEEP user print messages (uprint), include #define USER_PRINT in your config.h file (do not also include #define NO_PRINT in this case).

To see the text, open hid_listen and enjoy looking at your printed messages.

NOTE: Do not include uprint messages in anything other than your keymap code. It must not be used within the QMK system framework. Otherwise, you will bloat other people's .hex files.

COMMAND_ENABLE

This enables magic commands, typically fired with the default magic key combo LSHIFT+RSHIFT+KEY. Magic commands include turning on debugging messages (MAGIC+D) or temporarily toggling NKRO (MAGIC+N).

SLEEP_LED_ENABLE

Enables your LED to breath while your computer is sleeping. Timer1 is being used here. This feature is largely unused and untested, and needs updating/abstracting.

NKRO_ENABLE

This allows the keyboard to tell the host OS that up to 248 keys are held down at once (default without NKRO is 6). NKRO is off by default, even if NKRO_ENABLE is set. NKRO can be forced by adding #define FORCE_NKRO to your config.h or by binding MAGIC_TOGGLE_NKRO to a key and then hitting the key.

BACKLIGHT_ENABLE

This enables the in-switch LED backlighting. You can specify the backlight pin by putting this in your config.h:

#define BACKLIGHT_PIN B7\n

MIDI_ENABLE

This enables MIDI sending and receiving with your keyboard. To enter MIDI send mode, you can use the keycode MI_ON, and MI_OFF to turn it off. This is a largely untested feature, but more information can be found in the quantum/quantum.c file.

UNICODE_ENABLE

This allows you to send Unicode characters using UC(<code point>) in your keymap. Code points up to 0x7FFF are supported. This covers characters for most modern languages, as well as symbols, but it doesn't cover emoji.

UNICODEMAP_ENABLE

This allows you to send Unicode characters using UM(<map index>) in your keymap. You will need to maintain a mapping table in your keymap file. All possible code points (up to 0x10FFFF) are supported.

UCIS_ENABLE

This allows you to send Unicode characters by inputting a mnemonic corresponding to the character you want to send. You will need to maintain a mapping table in your keymap file. All possible code points (up to 0x10FFFF) are supported.

For further details, as well as limitations, see the Unicode page.

AUDIO_ENABLE

This allows you output audio on the C6 pin (needs abstracting). See the audio page for more information.

VARIABLE_TRACE

Use this to debug changes to variable values, see the tracing variables section of the Unit Testing page for more information.

KEY_LOCK_ENABLE

This enables key lock.

SPLIT_KEYBOARD

This enables split keyboard support (dual MCU like the let's split and bakingpy's boards) and includes all necessary files located at quantum/split_common

SPLIT_TRANSPORT

As there is no standard split communication driver for ARM-based split keyboards yet, SPLIT_TRANSPORT = custom must be used for these. It will prevent the standard split keyboard communication code (which is AVR-specific) from being included, allowing a custom implementation to be used.

CUSTOM_MATRIX

Lets you replace the default matrix scanning routine with your own code. For further details, see the Custom Matrix page.

DEBOUNCE_TYPE

Lets you replace the default key debouncing routine with an alternative one. If custom you will need to provide your own implementation.

DEFERRED_EXEC_ENABLE

Enables deferred executor support -- timed delays before callbacks are invoked. See deferred execution for more information.

Customizing Makefile Options on a Per-Keymap Basis

If your keymap directory has a file called rules.mk any options you set in that file will take precedence over other rules.mk options for your particular keyboard.

So let's say your keyboard's rules.mk has BACKLIGHT_ENABLE = yes. You want your particular keyboard to not have the backlight, so you make a file called rules.mk and specify BACKLIGHT_ENABLE = no.

', 65); diff --git a/assets/getting_started_make_guide.md.CeLtdD_X.lean.js b/assets/getting_started_make_guide.md.CaRp2eyv.lean.js similarity index 84% rename from assets/getting_started_make_guide.md.CeLtdD_X.lean.js rename to assets/getting_started_make_guide.md.CaRp2eyv.lean.js index 58906af746c..1abde3dabf7 100644 --- a/assets/getting_started_make_guide.md.CeLtdD_X.lean.js +++ b/assets/getting_started_make_guide.md.CaRp2eyv.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"More Detailed make Instructions","description":"","frontmatter":{},"headers":[],"relativePath":"getting_started_make_guide.md","filePath":"getting_started_make_guide.md","lastUpdated":null}'); const _sfc_main = { name: "getting_started_make_guide.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 65); diff --git a/assets/hand_wire.md.CVVk-a8R.js b/assets/hand_wire.md.CVFAzcE5.js similarity index 99% rename from assets/hand_wire.md.CVVk-a8R.js rename to assets/hand_wire.md.CVFAzcE5.js index 0635a6290cc..7488d974bdf 100644 --- a/assets/hand_wire.md.CVVk-a8R.js +++ b/assets/hand_wire.md.CVFAzcE5.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/FRShcLD.png"; const _imports_1 = "/UlJ4ZDP.png"; const _imports_2 = "/QiA3ta6.jpg"; diff --git a/assets/hand_wire.md.CVVk-a8R.lean.js b/assets/hand_wire.md.CVFAzcE5.lean.js similarity index 89% rename from assets/hand_wire.md.CVVk-a8R.lean.js rename to assets/hand_wire.md.CVFAzcE5.lean.js index ffb497bd244..f400055238a 100644 --- a/assets/hand_wire.md.CVVk-a8R.lean.js +++ b/assets/hand_wire.md.CVFAzcE5.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/FRShcLD.png"; const _imports_1 = "/UlJ4ZDP.png"; const _imports_2 = "/QiA3ta6.jpg"; diff --git a/assets/hardware_drivers.md.DLYEz5_y.js b/assets/hardware_drivers.md.vWSu8yLz.js similarity index 96% rename from assets/hardware_drivers.md.DLYEz5_y.js rename to assets/hardware_drivers.md.vWSu8yLz.js index 25ccfd25577..1ef026cad28 100644 --- a/assets/hardware_drivers.md.DLYEz5_y.js +++ b/assets/hardware_drivers.md.vWSu8yLz.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Hardware Drivers","description":"","frontmatter":{},"headers":[],"relativePath":"hardware_drivers.md","filePath":"hardware_drivers.md","lastUpdated":null}'); const _sfc_main = { name: "hardware_drivers.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Hardware Drivers

QMK is used on a lot of different hardware. While support for the most common MCU's and matrix configurations is built-in there are a number of drivers that can be added to a keyboard to support additional hardware. Examples include mice and other pointing devices, i/o expanders for split keyboards, bluetooth modules, and LCD, OLED, and TFT screens.

Available Drivers

ProMicro (AVR Only)

Support for addressing pins on the ProMicro by their Arduino name rather than their AVR name. This needs to be better documented, if you are trying to do this and reading the code doesn't help please open an issue and we can help you through the process.

SSD1306 OLED Driver

Support for SSD1306 based OLED displays. For more information see the OLED Driver Feature page.

WS2812

Support for WS2811/WS2812{a,b,c} LED's. For more information see the RGB Light page.

IS31FL3731

Support for up to 2 drivers. Each driver implements 2 charlieplex matrices to individually address LEDs using I2C. This allows up to 144 same color LEDs or 32 RGB LEDs. For more information on how to setup the driver see the RGB Matrix page.

IS31FL3733

Support for up to a single driver with room for expansion. Each driver can control 192 individual LEDs or 64 RGB LEDs. For more information on how to setup the driver see the RGB Matrix page.

24xx series external I2C EEPROM

Support for an external I2C-based EEPROM instead of using the on-chip EEPROM. For more information on how to setup the driver see the EEPROM Driver page.

', 15); diff --git a/assets/hardware_drivers.md.DLYEz5_y.lean.js b/assets/hardware_drivers.md.vWSu8yLz.lean.js similarity index 83% rename from assets/hardware_drivers.md.DLYEz5_y.lean.js rename to assets/hardware_drivers.md.vWSu8yLz.lean.js index e1f672ec08e..c2974561873 100644 --- a/assets/hardware_drivers.md.DLYEz5_y.lean.js +++ b/assets/hardware_drivers.md.vWSu8yLz.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Hardware Drivers","description":"","frontmatter":{},"headers":[],"relativePath":"hardware_drivers.md","filePath":"hardware_drivers.md","lastUpdated":null}'); const _sfc_main = { name: "hardware_drivers.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 15); diff --git a/assets/hardware_keyboard_guidelines.md.CuYXnNDX.js b/assets/hardware_keyboard_guidelines.md.Dtq2deva.js similarity index 99% rename from assets/hardware_keyboard_guidelines.md.CuYXnNDX.js rename to assets/hardware_keyboard_guidelines.md.Dtq2deva.js index 68954f9c50f..211f5b70ae1 100644 --- a/assets/hardware_keyboard_guidelines.md.CuYXnNDX.js +++ b/assets/hardware_keyboard_guidelines.md.Dtq2deva.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Keyboard Guidelines","description":"","frontmatter":{},"headers":[],"relativePath":"hardware_keyboard_guidelines.md","filePath":"hardware_keyboard_guidelines.md","lastUpdated":null}'); const _sfc_main = { name: "hardware_keyboard_guidelines.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Keyboard Guidelines

Since starting, QMK has grown by leaps and bounds thanks to people like you who contribute to creating and maintaining our community keyboards. As we've grown we've discovered some patterns that work well, and ask that you conform to them to make it easier for other people to benefit from your hard work.

Use QMK Lint

We have provided a tool, qmk lint, which will let you check over your keyboard for problems. We suggest using it frequently while working on your keyboard and keymap.

Example passing check:

$ qmk lint -kb rominronin/katana60/rev2\nΨ Lint check passed!

Example failing check:

$ qmk lint -kb clueboard/66/rev3\n☒ Missing keyboards/clueboard/66/rev3/readme.md\n☒ Lint check failed!

Naming Your Keyboard/Project

All keyboard names are in lower case, consisting only of letters, numbers, and underscore (_). Names may not begin with an underscore. Forward slash (/) is used as a sub-folder separation character.

The names test, keyboard, and all are reserved for make commands and may not be used as a keyboard or subfolder name.

Valid Examples:

Sub-folders

QMK uses sub-folders both for organization and to share code between revisions of the same keyboard. You can nest folders up to 4 levels deep:

qmk_firmware/keyboards/top_folder/sub_1/sub_2/sub_3/sub_4

If a sub-folder has a keyboard.json file it will be considered a compilable keyboard. It will be available in QMK Configurator and tested with make all. If you are using a folder to organize several keyboards from the same maker you should not have a keyboard.json file.

TIP

When configuring a keyboard with multiple revisions (like the clueboard/66 example below), an info.json file at the top keyboard level (eg. clueboard/66) should be used for configuration shared between revisions. Then keyboard.json in each revision directory containing revision-specific configuration, and indicating a buildable keyboard.

Example:

Clueboard uses sub-folders for both purposes, organization and keyboard revisions.

Keyboard Folder Structure

Your keyboard should be located in qmk_firmware/keyboards/ and the folder name should be your keyboard's name as described in the previous section. Inside this folder should be several files, some of which are optional:

readme.md

All projects need to have a readme.md file that explains what the keyboard is, who made it and where it's available. If applicable, it should also contain links to more information, such as the maker's website. Please follow the published template.

keyboard.json/info.json

The keyboard.json file is necessary for your keyboard (or keyboard revision) to be considered a buildable keyboard. The same content is valid in both info.json and keyboard.json. For the available configuration options of this file, see the reference page. This file is also used by the QMK API, and by the QMK Configurator to display a representation of the available layouts of your keyboard.

Additionally, this is where layouts available on your keyboard are defined. If you only have a single layout, it should be named LAYOUT. When defining multiple layouts, you should have a base layout, named LAYOUT_all, that supports all possible switch positions in your matrix, even if that layout is impossible to build physically. This is the layout that should be used in the default keymap. You should then have additional keymaps named default_<layout> that configure keymaps for the other layouts. Layout macro names are entirely lowercase, except for the prefix of LAYOUT.

As an example, if you have a 60% PCB that supports ANSI and ISO, you might define the following layouts and keymaps:

Layout NameKeymap NameDescription
LAYOUT_alldefaultA layout that supports both ISO and ANSI
LAYOUT_ansidefault_ansiAn ANSI layout
LAYOUT_isodefault_isoAn ISO layout

TIP

Providing only LAYOUT_all is invalid, as is providing a LAYOUT when multiple layouts are present.

config.h

Some projects will need to have a config.h that configures parameters that are not possible to be set in keyboard.json. This is not a required file.

The config.h files can also be placed in sub-folders, and the order in which they are read is as follows:

The post_config.h file can be used for additional post-processing, depending on what is specified in the config.h file. For example, if you define the IOS_DEVICE_ENABLE macro in your keymap-level config.h file as follows, you can configure more detailed settings accordingly in the post_config.h file:

TIP

If you define options using post_config.h as in the above example, you should not define the same options in the keyboard- or user-level config.h.

rules.mk

This file is typically used to configure hardware drivers (eg. pointing device), or to include additional C files in compilation. This is not a required file.

The rules.mk file can also be placed in a sub-folder, and its reading order is as follows:

Many of the settings written in the rules.mk file are interpreted by common_features.mk, which sets the necessary source files and compiler options.

The post_rules.mk file can interpret features of a keyboard-level before common_features.mk. For example, when your designed keyboard has the option to implement backlighting or underglow using rgblight.c, writing the following in the post_rules.mk makes it easier for the user to configure the rules.mk.

TIP

See build_keyboard.mk and common_features.mk for more details.

<keyboard>.c

This file should contain C code required for the functionality of your keyboard, for example hardware initialisation code, OLED display code, and so on. This file should only contain code necessary for the keyboard to work, and not things that should be left to the end user to configure in their keymap. This file is automatically included in compilation if it exists. This is not a required file.

The following functions are typically defined in this file:

<keyboard>.h

This file can contain function prototypes for custom functions and other header file code utilised by <keyboard>.c. The <keyboard>.c file should include this file. This is not a required file.

Image/Hardware Files

In an effort to keep the repo size down we do not accept binary files of any format, with few exceptions. Hosting them elsewhere (such as https://imgur.com) and linking them in the readme.md is preferred. Hardware files such as plates, cases, and PCBs can be published in a personal repository or elsewhere, and linked to by your keyboard's readme.md file.

Keyboard Defaults

Given the amount of functionality that QMK exposes it's very easy to confuse new users. When putting together the default firmware for your keyboard we recommend limiting your enabled features and options to the minimal set needed to support your hardware. Recommendations for specific features follow.

Magic Keycodes and Command

Magic Keycodes and Command are two related features that allow a user to control their keyboard in non-obvious ways. We recommend you think long and hard about if you're going to enable either feature, and how you will expose this functionality. Keep in mind that users who want this functionality can enable it in their personal keymaps without affecting all the novice users who may be using your keyboard as their first programmable board.

If your keyboard does not have 2 shift keys you should provide a working default for IS_COMMAND, even when you have set COMMAND_ENABLE = no. This will give your users a default to conform to if they do enable Command.

Custom Keyboard Programming

As documented on Customizing Functionality you can define custom functions for your keyboard. Please keep in mind that your users may want to customize that behavior as well, and make it possible for them to do that. If you are providing a custom function, for example process_record_kb(), make sure that your function calls the _user() version of the call too. You should also take into account the return value of the _user() version, and only run your custom code if the user returns true.

Non-Production/Handwired Projects

We're happy to accept any project that uses QMK, including handwired ones, but we have a separate /keyboards/handwired/ folder for them, so the main /keyboards/ folder doesn't get overcrowded. If a prototype project becomes a production project at some point in the future, we'd be happy to move it to the main /keyboards/ folder!

Warnings as Errors

When developing your keyboard, keep in mind that all warnings will be treated as errors - these small warnings can build-up and cause larger errors down the road (and keeping them is generally a bad practice).

If you're adapting your keyboard's setup from another project, but not using the same code, be sure to update the copyright header at the top of the files to show your name, in this format:

c
Copyright 2017 Your Name <your@email.com>

If you are modifying someone else's code and have made only trivial changes you should leave their name in the copyright statement. If you have done significant work on the file you should add your name to theirs, like so:

c
Copyright 2017 Their Name <original_author@example.com> Your Name <you@example.com>

The year should be the first year the file is created. If work was done to that file in later years you can reflect that by appending the second year to the first, like so:

c
Copyright 2015-2017 Your Name <you@example.com>

License

The core of QMK is licensed under the GNU General Public License. If you are shipping binaries for AVR processors you may choose either GPLv2 or GPLv3. If you are shipping binaries for ARM processors you must choose GPL Version 3 to comply with the ChibiOS GPLv3 license.

', 75); diff --git a/assets/hardware_keyboard_guidelines.md.CuYXnNDX.lean.js b/assets/hardware_keyboard_guidelines.md.Dtq2deva.lean.js similarity index 84% rename from assets/hardware_keyboard_guidelines.md.CuYXnNDX.lean.js rename to assets/hardware_keyboard_guidelines.md.Dtq2deva.lean.js index 21bbbf442da..4bab595b16c 100644 --- a/assets/hardware_keyboard_guidelines.md.CuYXnNDX.lean.js +++ b/assets/hardware_keyboard_guidelines.md.Dtq2deva.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Keyboard Guidelines","description":"","frontmatter":{},"headers":[],"relativePath":"hardware_keyboard_guidelines.md","filePath":"hardware_keyboard_guidelines.md","lastUpdated":null}'); const _sfc_main = { name: "hardware_keyboard_guidelines.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 75); diff --git a/assets/how_a_matrix_works.md.DMsJT4Dz.js b/assets/how_a_matrix_works.md.C56BVOKq.js similarity index 98% rename from assets/how_a_matrix_works.md.DMsJT4Dz.js rename to assets/how_a_matrix_works.md.C56BVOKq.js index db145a3e1c3..94013b7dc46 100644 --- a/assets/how_a_matrix_works.md.DMsJT4Dz.js +++ b/assets/how_a_matrix_works.md.C56BVOKq.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"How a Keyboard Matrix Works","description":"","frontmatter":{},"headers":[],"relativePath":"how_a_matrix_works.md","filePath":"how_a_matrix_works.md","lastUpdated":null}'); const _sfc_main = { name: "how_a_matrix_works.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

How a Keyboard Matrix Works

Keyboard switch matrices are arranged in rows and columns. Without a matrix circuit, each switch would require its own wire directly to the controller.

When the circuit is arranged in rows and columns, if a key is pressed, a column wire makes contact with a row wire and completes a circuit. The keyboard controller detects this closed circuit and registers it as a key press.

The microcontroller will be set up via the firmware to send a logical 1 to the columns, one at a time, and read from the rows, all at once - this process is called matrix scanning. The matrix is a bunch of open switches that, by default, don't allow any current to pass through - the firmware will read this as no keys being pressed. As soon as you press one key down, the logical 1 that was coming from the column the keyswitch is attached to gets passed through the switch and to the corresponding row - check out the following 2x2 example:

        Column 0 being scanned     Column 1 being scanned\n                  x                                   x\n                 col0     col1              col0     col1\n                  |        |                 |        |\n        row0 ---(key0)---(key1)    row0 ---(key0)---(key1)\n                  |        |                 |        |\n        row1 ---(key2)---(key3)    row1 ---(key2)---(key3)

The x represents that the column/row associated has a value of 1, or is HIGH. Here, we see that no keys are being pressed, so no rows get an x. For one keyswitch, keep in mind that one side of the contacts is connected to its row, and the other, its column.

When we press key0, col0 gets connected to row0, so the values that the firmware receives for that row is 0b01 (the 0b here means that this is a bit value, meaning all of the following digits are bits - 0 or 1 - and represent the keys in that column). We'll use this notation to show when a keyswitch has been pressed, to show that the column and row are being connected:

        Column 0 being scanned     Column 1 being scanned\n                  x                                   x\n                 col0     col1              col0     col1\n                  |        |                 |        |\n      x row0 ---(-+-0)---(key1)    row0 ---(-+-0)---(key1)\n                  |        |                 |        |\n        row1 ---(key2)---(key3)    row1 ---(key2)---(key3)

We can now see that row0 has an x, so has the value of 1. As a whole, the data the firmware receives when key0 is pressed is:

col0: 0b01\ncol1: 0b00\n        │└row0\n        └row1

A problem arises when you start pressing more than one key at a time. Looking at our matrix again, it should become pretty obvious:

        Column 0 being scanned     Column 1 being scanned\n                  x                                   x\n                 col0     col1              col0     col1\n                  |        |                 |        |\n      x row0 ---(-+-0)---(-+-1)  x row0 ---(-+-0)---(-+-1)\n                  |        |                 |        |\n      x row1 ---(key2)---(-+-3)  x row1 ---(key2)---(-+-3)\n\n      Remember that this ^ is still connected to row1

The data we get from that is:

col0: 0b11\ncol1: 0b11\n        │└row0\n        └row1

Which isn't accurate, since we only have 3 keys pressed down, not all 4. This behavior is called ghosting, and only happens in odd scenarios like this, but can be much more common on a bigger keyboard. The way we can get around this is by placing a diode after the keyswitch, but before it connects to its row. A diode only allows current to pass through one way, which will protect our other columns/rows from being activated in the previous example. We'll represent a dioded matrix like this;

        Column 0 being scanned     Column 1 being scanned\n                    x                                   x\n                  col0      col1              col0     col1\n                    │        │                 |        │\n                 (key0)   (key1)            (key0)   (key1)\n                  ! │      ! │               ! |      ! │\n        row0 ─────┴────────┘ │     row0 ─────┴────────┘ │\n                    │        │                 |        │\n                 (key2)   (key3)            (key2)   (key3)\n                  !        !                 !        !\n        row1 ─────┴────────┘       row1 ─────┴────────┘

In practical applications, the black line of the diode will be placed facing the row, and away from the keyswitch - the ! in this case is the diode, where the gap represents the black line. A good way to remember this is to think of this symbol: >|

Now when we press the three keys, invoking what would be a ghosting scenario:

        Column 0 being scanned     Column 1 being scanned\n                    x                                   x\n                  col0      col1              col0     col1\n                    │        │                 │        │\n                 (┌─┤0)   (┌─┤1)            (┌─┤0)   (┌─┤1)\n                  ! │      ! │               ! │      ! │\n      x row0 ─────┴────────┘ │   x row0 ─────┴────────┘ │\n                    │        │                 │        │\n                 (key2)   (┌─┘3)            (key2)   (┌─┘3)\n                  !        !                 !        !\n        row1 ─────┴────────┘     x row1 ─────┴────────┘

Things act as they should! Which will get us the following data:

col0: 0b01\ncol1: 0b11\n        │└row0\n        └row1

The firmware can then use this correct data to detect what it should do, and eventually, what signals it needs to send to the OS.

Further reading:

', 24); diff --git a/assets/how_a_matrix_works.md.DMsJT4Dz.lean.js b/assets/how_a_matrix_works.md.C56BVOKq.lean.js similarity index 83% rename from assets/how_a_matrix_works.md.DMsJT4Dz.lean.js rename to assets/how_a_matrix_works.md.C56BVOKq.lean.js index 46f5482165b..7b736b15b03 100644 --- a/assets/how_a_matrix_works.md.DMsJT4Dz.lean.js +++ b/assets/how_a_matrix_works.md.C56BVOKq.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"How a Keyboard Matrix Works","description":"","frontmatter":{},"headers":[],"relativePath":"how_a_matrix_works.md","filePath":"how_a_matrix_works.md","lastUpdated":null}'); const _sfc_main = { name: "how_a_matrix_works.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 24); diff --git a/assets/how_keyboards_work.md.B2Be3BPq.js b/assets/how_keyboards_work.md.B1-KACsB.js similarity index 98% rename from assets/how_keyboards_work.md.B2Be3BPq.js rename to assets/how_keyboards_work.md.B1-KACsB.js index 7f53a2cf369..27d95dd36ad 100644 --- a/assets/how_keyboards_work.md.B2Be3BPq.js +++ b/assets/how_keyboards_work.md.B1-KACsB.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"How Keys Are Registered, and Interpreted by Computers","description":"","frontmatter":{},"headers":[],"relativePath":"how_keyboards_work.md","filePath":"how_keyboards_work.md","lastUpdated":null}'); const _sfc_main = { name: "how_keyboards_work.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

How Keys Are Registered, and Interpreted by Computers

In this file, you can will learn the concepts of how keyboards work over USB, and you'll be able to better understand what you can expect from changing your firmware directly.

Schematic View

Whenever you type on 1 particular key, here is the chain of actions taking place:

+------+         +-----+       +----------+      +----------+     +----+\n| User |-------->| Key |------>| Firmware |----->| USB wire |---->| OS |\n+------+         +-----+       +----------+      +----------+     +----+

This scheme is a very simple view of what's going on, and more details follow in the next sections.

1. You Press a Key

Whenever you press a key, the firmware of your keyboard can register this event. It can register when the key is pressed, held and released.

This usually happens with a periodic scan of key presses. This speed often is limited by the mechanical key response time, the protocol to transfer those key presses (here USB HID), and by the software it is used in.

2. What the Firmware Sends

The HID specification tells what a keyboard can actually send through USB to have a chance to be properly recognised. This includes a pre-defined list of scancodes which are simple numbers from 0x00 to 0xE7. The firmware assigns a scancode to each key of the keyboard.

The firmware does not send actual letters or characters, but only scancodes. Thus, by modifying the firmware, you can only modify what scancode is sent over USB for a given key.

3. What the Event Input/Kernel Does

The scancode is mapped to a keycode dependent on the keyboard 60-keyboard.hwdb at Main. Without this mapping, the operating system will not receive a valid keycode and will be unable to do anything useful with that key press.

4. What the Operating System Does

Once the keycode reaches the operating system, a piece of software has to have it match an actual character thanks to a keyboard layout. For example, if your layout is set to QWERTY, a sample of the matching table is as follows:

keycodecharacter
0x04a/A
0x05b/B
0x06c/C
......
0x1Cy/Y
0x1Dz/Z
......

Back to the Firmware

As the layout is generally fixed (unless you create your own), the firmware can actually call a keycode by its layout name directly to ease things for you. This is exactly what is done here with KC_A actually representing 0x04 in QWERTY. The full list can be found in keycodes.

List of Characters You Can Send

Putting aside shortcuts, having a limited set of keycodes mapped to a limited layout means that the list of characters you can assign to a given key are only the ones present in the layout.

For example, this means that if you have a QWERTY US layout, and you want to assign one key to produce (euro currency symbol), you are unable to do so, because the QWERTY US layout does not have such mapping. You could fix that by using a QWERTY UK layout, or a QWERTY US International.

You may wonder why a keyboard layout containing all of Unicode is not devised then? The limited number of keycodes available through USB simply disallows such a thing.

How to (Maybe) Enter Unicode Characters

You can have the firmware send sequences of keys to use the software Unicode Input Method of the target operating system, thus effectively entering characters independently of the layout defined in the OS.

Yet, it does come with multiple disadvantages:

', 27); diff --git a/assets/how_keyboards_work.md.B2Be3BPq.lean.js b/assets/how_keyboards_work.md.B1-KACsB.lean.js similarity index 84% rename from assets/how_keyboards_work.md.B2Be3BPq.lean.js rename to assets/how_keyboards_work.md.B1-KACsB.lean.js index 352d3b360d5..5e54cbeed03 100644 --- a/assets/how_keyboards_work.md.B2Be3BPq.lean.js +++ b/assets/how_keyboards_work.md.B1-KACsB.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"How Keys Are Registered, and Interpreted by Computers","description":"","frontmatter":{},"headers":[],"relativePath":"how_keyboards_work.md","filePath":"how_keyboards_work.md","lastUpdated":null}'); const _sfc_main = { name: "how_keyboards_work.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 27); diff --git a/assets/index.md.BsBb4ZNh.js b/assets/index.md.BIeL4qUm.js similarity index 96% rename from assets/index.md.BsBb4ZNh.js rename to assets/index.md.BIeL4qUm.js index 9905dfcae2e..c50199e417e 100644 --- a/assets/index.md.BsBb4ZNh.js +++ b/assets/index.md.BIeL4qUm.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Quantum Mechanical Keyboard Firmware","description":"","frontmatter":{},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":null}'); const _sfc_main = { name: "index.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Quantum Mechanical Keyboard Firmware

What is QMK Firmware?

QMK (Quantum Mechanical Keyboard) is an open source community centered around developing computer input devices. The community encompasses all sorts of input devices, such as keyboards, mice, and MIDI devices. A core group of collaborators maintains QMK Firmware, QMK Configurator, QMK Toolbox, qmk.fm, and this documentation with the help of community members like you.

Get Started

Basic

QMK Configurator

User friendly graphical interfaces, no programming knowledge required.

Advanced

Use The Source

More powerful, but harder to use.

Make It Yours

QMK has lots of features to explore, and a good deal of reference documentation to dig through. Most features are taken advantage of by modifying your keymap, and changing the keycodes.

Need help?

Check out the support page to see how you can get help using QMK.

Give Back

There are a lot of ways you can contribute to the QMK Community. The easiest way to get started is to use it and spread the word to your friends.

', 13); diff --git a/assets/index.md.BsBb4ZNh.lean.js b/assets/index.md.BIeL4qUm.lean.js similarity index 82% rename from assets/index.md.BsBb4ZNh.lean.js rename to assets/index.md.BIeL4qUm.lean.js index 9d1eaebc9b9..37e7b0edc7e 100644 --- a/assets/index.md.BsBb4ZNh.lean.js +++ b/assets/index.md.BIeL4qUm.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Quantum Mechanical Keyboard Firmware","description":"","frontmatter":{},"headers":[],"relativePath":"index.md","filePath":"index.md","lastUpdated":null}'); const _sfc_main = { name: "index.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 13); diff --git a/assets/isp_flashing_guide.md.DZYuC4dB.js b/assets/isp_flashing_guide.md.CMIX0i8g.js similarity index 99% rename from assets/isp_flashing_guide.md.DZYuC4dB.js rename to assets/isp_flashing_guide.md.CMIX0i8g.js index 13a2bb081a4..924a087875f 100644 --- a/assets/isp_flashing_guide.md.DZYuC4dB.js +++ b/assets/isp_flashing_guide.md.CMIX0i8g.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ISP Flashing Guide","description":"","frontmatter":{},"headers":[],"relativePath":"isp_flashing_guide.md","filePath":"isp_flashing_guide.md","lastUpdated":null}'); const _sfc_main = { name: "isp_flashing_guide.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

ISP Flashing Guide

In order to flash a microcontroller over USB, it needs something called a bootloader. This bootloader lives in a specific section of the flash memory, and allows you to load the actual application firmware (in this case, QMK) into the rest of the flash.

However, it can sometimes happen that the bootloader becomes corrupted and needs reflashing, or you may want to change the bootloader to another one. It's not possible to do this with the existing bootloader, because, of course, it is already running, and cannot overwrite itself. Instead, you will need to ISP flash the microcontroller.

There are several different kinds of bootloaders available for AVR microcontrollers. Most STM32 ARM-based microcontrollers already have a USB-capable bootloader in ROM, so generally do not need to be ISP flashed. The one current exception is the STM32F103.

Hardware

One of the following devices is required to perform the ISP flashing. The product links are to the official versions, however you can certainly source them elsewhere.

You'll also need some jumper wires to connect the ISP flasher and the target board. Some boards have an ISP header with the necessary pins broken out. If not, then you will need to temporarily solder the wires to the PCB -- usually to switch pins or directly to the MCU. The wiring is fairly straightforward; for the most part, you'll be connecting like to like. Refer to the target MCU's datasheet for the exact RESET, SCLK, MOSI and MISO pins.

Pro Micro as ISP

SparkFun Pro Micro

To use a 5V/16MHz Pro Micro as an ISP flashing tool, you will first need to load a special firmware onto it that emulates a hardware ISP flasher.

AVRDUDE Programmer: avrisp
AVRDUDE Port: Serial

Wiring

Pro MicroKeyboard
VCCVCC
GNDGND
10 (B6)RESET
15 (B1)SCLK
16 (B2)MOSI
14 (B3)MISO

WARNING

Note that the 10 pin on the Pro Micro should be wired to the RESET pin on the keyboard's controller. DO NOT connect the RESET pin on the Pro Micro to the RESET on the keyboard.

Arduino Uno / Micro as ISP

Arduino UnoArduino Micro

A standard Uno or Micro can be used as an ISP flashing tool using the example "ArduinoISP" sketch to emulate an STK500 ISP. Also works with Sparkfun Pro Micros and clones.

AVRDUDE Programmer: stk500v1
AVRDUDE Port: Serial

Wiring

UnoKeyboard
5VVCC
GNDGND
10 (B2)RESET
13 (B5)SCLK
11 (B3)MOSI
12 (B4)MISO
MicroKeyboard
5VVCC
GNDGND
10 (B6)RESET
15 (B1)SCLK
16 (B2)MOSI
14 (B3)MISO

WARNING

Note that the 10 pin on the Uno/Micro should be wired to the RESET pin on the keyboard's controller. DO NOT connect the RESET pin on the Uno/Micro to the RESET on the keyboard.

Teensy 2.0 as ISP

PJRC Teensy 2.0

To use a Teensy 2.0 as an ISP flashing tool, you will first need to load a special firmware onto it that emulates a hardware ISP flasher.

AVRDUDE Programmer: avrisp
AVRDUDE Port: Serial

Wiring

TeensyKeyboard
VCCVCC
GNDGND
B0RESET
B1SCLK
B2MOSI
B3MISO

WARNING

Note that the B0 pin on the Teensy should be wired to the RESET pin on the keyboard's controller. DO NOT connect the RESET pin on the Teensy to the RESET on the keyboard.

SparkFun PocketAVR / USBtinyISP

SparkFun PocketAVR
Adafruit USBtinyISP

WARNING

SparkFun PocketAVR and USBtinyISP DO NOT support AVR chips with more than 64 KiB of flash (e.g., the AT90USB128 series). This limitation is mentioned on the shop page for SparkFun PocketAVR and in the FAQ for USBtinyISP. If you try to use one of these programmers with AT90USB128 chips, you will get verification errors from avrdude, and the bootloader won't be flashed properly (e.g., see the issue #3286).

AVRDUDE Programmer: usbtiny
AVRDUDE Port: usb

Wiring

ISPKeyboard
VCCVCC
GNDGND
RSTRESET
SCLKSCLK
MOSIMOSI
MISOMISO

USBasp

Thomas Fischl's USBasp

AVRDUDE Programmer: usbasp
AVRDUDE Port: usb

Wiring

ISPKeyboard
VCCVCC
GNDGND
RSTRESET
SCLKSCLK
MOSIMOSI
MISOMISO

Bus Pirate

Adafruit Bus Pirate

WARNING

The 5-pin "ICSP" header is for ISP flashing the PIC microcontroller of the Bus Pirate. Connect your target board to the 10-pin header opposite the USB connector instead.

AVRDUDE Programmer: buspirate
AVRDUDE Port: Serial

Wiring

Bus PirateKeyboard
+5VVCC
GNDGND
RSTRESET
CLKSCLK
MOSIMOSI
MISOMISO

Software

QMK Toolbox supports flashing both the ISP firmware and bootloader, but note that it cannot (currently) set the AVR fuse bytes for the actual ISP flashing step, so you may want to work with avrdude directly instead.

Setting up the QMK environment is highly recommended, as it automatically installs avrdude along with a host of other tools.

Bootloader Firmware

One of these files is what you will be ISP flashing onto the board. The default fuses are also listed.

If you're not sure what your board uses, look in the rules.mk file for the keyboard in QMK. The MCU and BOOTLOADER lines will have the values you need. It may differ between different versions of the board.

Atmel DFU

These are the factory default bootloaders shipped by Atmel (now Microchip). Note that the AT90USB64 and AT90USB128 bootloaders are slightly modified, due to a bug causing them to not enumerate properly in Windows 8 and later.

MCULowHighExtendedUSB ID
ATmega16U40x5E0x99 / 0xD9 (JTAG disabled)0xF303EB:2FF3
ATmega32U40x5E0x99 / 0xD9 (JTAG disabled)0xF303EB:2FF4
AT90USB640x5E0x9B / 0xDB (JTAG disabled)0xF303EB:2FF9
AT90USB1280x5E0x99 / 0xD9 (JTAG disabled)0xF303EB:2FFB

Caterina

This is the default Arduino-style bootloader derived from the LUFA CDC bootloader, and is only for the ATmega32U4.

There are several variants depending on the vendor, but they all mostly work the same way. The SparkFun variants, for example, require the RESET pin to be grounded twice quickly in order to stay in bootloader mode for more than 750 ms.

MCULowHighExtendedUSB ID
SparkFun Pro Micro (3V3/8MHz)0xFF0xD80xFE1B4F:9203
SparkFun Pro Micro (5V/16MHz)0xFF0xD80xFB1B4F:9205
SparkFun LilyPadUSB (and some Pro Micro clones)0xFF0xD80xFE1B4F:9207
Pololu A-Star 32U4*0xFF0xD00xF81FFB:0101
Adafruit Feather 32U40xFF0xD80xFB239A:000C
Adafruit ItsyBitsy 32U4 (3V3/8MHz)*0xFF0xD80xFB239A:000D
Adafruit ItsyBitsy 32U4 (5V/16MHz)0xFF0xD80xFB239A:000E
Arduino Leonardo*0xFF0xD80xFB2341:0036
Arduino Micro*0xFF0xD80xFB2341:0037

TIP

Files marked with a * have combined Arduino sketches, which runs by default and also appears as a serial port. However, this is not the bootloader device.

BootloadHID (PS2AVRGB)

This bootloader is primarily for keyboards originally designed for the PS2AVRGB firmware and Bootmapper Client. It is not recommended for use in new designs.

MCULowHighUSB ID
ATmega32A0x0F0xD016C0:05DF

USBaspLoader

USBaspLoader is a bootloader based on V-USB that emulates a hardware USBasp device. It runs on ATmega32A and ATmega328P MCUs.

Precompiled .hex files are generally not available, but you can compile it yourself by setting up the QMK environment and cloning the appropriate branch of Coseyfannitutti's USBaspLoader fork:

MCULowHighExtendedUSB ID
ATmega32A0x1F0xC0n/a16C0:05DC
ATmega328P0xD70xD00x0416C0:05DC

From there, simply cd to the firmware/ directory and run make, which should produce a file called main.hex.

TIP

Some boards may have their own specialized build of this bootloader in a separate repository. This will usually be linked to in the board's readme.

Flashing the Bootloader

Open a new Terminal window - if you are on Windows, use MSYS2 or QMK MSYS, not the Command Prompt. Navigate to the directory your bootloader .hex is in. Now it's time to run the avrdude command.

The syntax of avrdude is:

avrdude -c <programmer> -P <port> -p <mcu> -U flash:w:<filename>:i

You can also run man avrdude for more information.

If all goes well, you should get output similar to the following:

avrdude: AVR device initialized and ready to accept instructions\n\nReading | ################################################## | 100% 0.00s\n\navrdude: Device signature = 0x1e9587 (probably m32u4)\navrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed\n         To disable this feature, specify the -D option.\navrdude: erasing chip\navrdude: reading input file "Caterina-Micro.hex"\navrdude: writing flash (32730 bytes):\n\nWriting | ################################################## | 100% 11.58s\n\navrdude: 32730 bytes of flash written\navrdude: verifying flash memory against Caterina-Micro.hex:\navrdude: load data flash data from input file Caterina-Micro.hex:\navrdude: input file Caterina-Micro.hex contains 32730 bytes\navrdude: reading on-chip flash data:\n\nReading | ################################################## | 100% 10.33s\n\navrdude: verifying ...\navrdude: 32730 bytes of flash verified\n\navrdude: safemode: Fuses OK (E:CB, H:D8, L:FF)\n\navrdude done.  Thank you.

Setting the Fuses

This is a slightly more advanced topic, but may be necessary if you are switching from one bootloader to another (for example, Caterina to Atmel/QMK DFU on a Pro Micro). Fuses control some of the low-level functionality of the AVR microcontroller, such as clock speed, whether JTAG is enabled, and the size of the section of flash memory reserved for the bootloader, among other things. You can find a fuse calculator for many AVR parts here.

WARNING

Setting incorrect fuse values, in particular the clock-related bits, may render the MCU practically unrecoverable without high voltage programming (not covered here)! Make sure to double check the commands you enter before you execute them.

To set the fuses, add the following to the avrdude command:

-U lfuse:w:0xXX:m -U hfuse:w:0xXX:m -U efuse:w:0xXX:m

where the lfuse, hfuse and efuse arguments represent the low, high and extended fuse bytes as listed in the Hardware section.

TIP

You may get a warning from avrdude that the extended fuse byte does not match what you provided when reading it back. If the second hex digit matches, this can usually be safely ignored, because the top four bits of this fuse do not actually exist on many AVR parts, and may read back as anything.

Creating a "Production" Firmware

For mass production purposes, it is possible to join the bootloader and QMK firmware together into a single file, due to the way the Intel Hex format works:

  1. Open the QMK firmware and bootloader .hex files in a text editor.
  2. Remove the last line of the QMK firmware (which should be :00000001FF - this is just an "end of file" marker).
  3. Paste the contents of the bootloader .hex file onto a new line at the end of the QMK firmware file, with no empty lines between.
  4. Save it as a new file, for example <keyboard>_<keymap>_production.hex.

You can then ISP flash this combined firmware instead, which allows you to skip the extra step of flashing the QMK firmware over USB.

Flashing STM32Duino Bootloader

As mentioned above, most supported STM32 devices already possess a USB DFU bootloader which cannot be overwritten, however the ROM bootloader in the STM32F103 used on the Bluepill is not USB capable. In this case an ST-Link V2 dongle is required to upload the STM32Duino bootloader to the device. These can be readily purchased for relatively cheap on eBay and other places.

This bootloader is a descendant of the Maple bootloader by Leaflabs, and is compatible with dfu-util.

Software

To communicate with the ST-Link, you must install the following packages:

Additionally, you may need to update the ST-Link's firmware with the STSW-LINK007 application. Note you will be asked to provide your name and email address if you do not have an ST.com account (this does not create one).

Finally, the bootloader binary itself can be downloaded from here.

Wiring

Connect the four-pin header on the end of the Bluepill to the matching pins on the ST-Link (the pinout will usually be printed on the side):

ST-LinkBluepill
GND (6)GND
SWCLK (2)DCLK
SWDIO (4)DIO
3.3V (8)3.3

Flashing

Firstly, make sure both jumpers on the Bluepill are set to 0.

Check that the ST-Link can talk to the Bluepill by running st-info --probe:

Found 1 stlink programmers\n  version:    V2J37S7\n  serial:     2C1219002B135937334D4E00\n  flash:      65536 (pagesize: 1024)\n  sram:       20480\n  chipid:     0x0410\n  descr:      F1xx Medium-density

If the reported chipid is 0x0410, everything is working. If it is 0x0000, check your wiring, and try swapping the SWDIO and SWCLK pins, as some ST-Link dongles may have incorrect pinouts.

Next, run the following command:

st-flash --reset --format binary write <path-to-bootloader> 0x08000000

where <path-to-bootloader> is the path to the bootloader .bin file above. You can run this command from the directory you downloaded it to, so that you can simply pass in the filename.

If all goes well, you should get output similar to the following:

st-flash 1.7.0\n2022-03-08T12:16:30 INFO common.c: F1xx Medium-density: 20 KiB SRAM, 64 KiB flash in at least 1 KiB pages.\nfile generic_boot20_pc13.bin md5 checksum: 333c30605e739ce9bedee5999fdaf81b, stlink checksum: 0x0008e534\n2022-03-08T12:16:30 INFO common.c: Attempting to write 7172 (0x1c04) bytes to stm32 address: 134217728 (0x8000000)\n2022-03-08T12:16:30 INFO common.c: Flash page at addr: 0x08000000 erased\n2022-03-08T12:16:30 INFO common.c: Flash page at addr: 0x08000400 erased\n2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08000800 erased\n2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08000c00 erased\n2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08001000 erased\n2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08001400 erased\n2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08001800 erased\n2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08001c00 erased\n2022-03-08T12:16:31 INFO common.c: Finished erasing 8 pages of 1024 (0x400) bytes\n2022-03-08T12:16:31 INFO common.c: Starting Flash write for VL/F0/F3/F1_XL\n2022-03-08T12:16:31 INFO flash_loader.c: Successfully loaded flash loader in sram\n2022-03-08T12:16:31 INFO flash_loader.c: Clear DFSR\n  8/  8 pages written\n2022-03-08T12:16:31 INFO common.c: Starting verification of write complete\n2022-03-08T12:16:31 INFO common.c: Flash written and verified! jolly good!\n2022-03-08T12:16:31 WARN common.c: NRST is not connected

Otherwise, if you receive an Unknown memory region error, run the following command to unlock the STM32F103:

openocd -f interface/stlink.cfg -f target/stm32f1x.cfg -c "init; reset halt; stm32f1x unlock 0; reset halt; exit"

Then re-plug the ST-Link and try again.

After all of this, unplug the Bluepill from the ST-Link and connect it to USB. It should now be ready to flash using dfu-util, the QMK CLI or Toolbox.

', 113); diff --git a/assets/isp_flashing_guide.md.DZYuC4dB.lean.js b/assets/isp_flashing_guide.md.CMIX0i8g.lean.js similarity index 83% rename from assets/isp_flashing_guide.md.DZYuC4dB.lean.js rename to assets/isp_flashing_guide.md.CMIX0i8g.lean.js index c3a522a8887..1e6a3cf8c4d 100644 --- a/assets/isp_flashing_guide.md.DZYuC4dB.lean.js +++ b/assets/isp_flashing_guide.md.CMIX0i8g.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"ISP Flashing Guide","description":"","frontmatter":{},"headers":[],"relativePath":"isp_flashing_guide.md","filePath":"isp_flashing_guide.md","lastUpdated":null}'); const _sfc_main = { name: "isp_flashing_guide.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 113); diff --git a/assets/keycodes.md.BFmA0AVu.js b/assets/keycodes.md.TseVv0Om.js similarity index 99% rename from assets/keycodes.md.BFmA0AVu.js rename to assets/keycodes.md.TseVv0Om.js index 4e25ecbf34f..eea538e6b71 100644 --- a/assets/keycodes.md.BFmA0AVu.js +++ b/assets/keycodes.md.TseVv0Om.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Keycodes Overview","description":"","frontmatter":{},"headers":[],"relativePath":"keycodes.md","filePath":"keycodes.md","lastUpdated":null}'); const _sfc_main = { name: "keycodes.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Keycodes Overview

When defining a keymap each key needs a valid key definition. This page documents the symbols that correspond to keycodes that are available to you in QMK.

This is a reference only. Each group of keys links to the page documenting their functionality in more detail.

Basic Keycodes

See also: Basic Keycodes

KeyAliasesDescriptionWindowsmacOSLinux1
KC_NOXXXXXXXIgnore this key (NOOP)N/AN/AN/A
KC_TRANSPARENTKC_TRNS, _______Use the next lowest non-transparent keyN/AN/AN/A
KC_Aa and A
KC_Bb and B
KC_Cc and C
KC_Dd and D
KC_Ee and E
KC_Ff and F
KC_Gg and G
KC_Hh and H
KC_Ii and I
KC_Jj and J
KC_Kk and K
KC_Ll and L
KC_Mm and M
KC_Nn and N
KC_Oo and O
KC_Pp and P
KC_Qq and Q
KC_Rr and R
KC_Ss and S
KC_Tt and T
KC_Uu and U
KC_Vv and V
KC_Ww and W
KC_Xx and X
KC_Yy and Y
KC_Zz and Z
KC_11 and !
KC_22 and @
KC_33 and #
KC_44 and $
KC_55 and %
KC_66 and ^
KC_77 and &
KC_88 and *
KC_99 and (
KC_00 and )
KC_ENTERKC_ENTReturn (Enter)
KC_ESCAPEKC_ESCEscape
KC_BACKSPACEKC_BSPCDelete (Backspace)
KC_TABTab
KC_SPACEKC_SPCSpacebar
KC_MINUSKC_MINS- and _
KC_EQUALKC_EQL= and +
KC_LEFT_BRACKETKC_LBRC[ and {
KC_RIGHT_BRACKETKC_RBRC] and }
KC_BACKSLASHKC_BSLS\\ and |
KC_NONUS_HASHKC_NUHSNon-US # and ~
KC_SEMICOLONKC_SCLN; and :
KC_QUOTEKC_QUOT' and "
KC_GRAVEKC_GRV` and ~
KC_COMMAKC_COMM, and <
KC_DOT. and >
KC_SLASHKC_SLSH/ and ?
KC_CAPS_LOCKKC_CAPSCaps Lock
KC_F1F1
KC_F2F2
KC_F3F3
KC_F4F4
KC_F5F5
KC_F6F6
KC_F7F7
KC_F8F8
KC_F9F9
KC_F10F10
KC_F11F11
KC_F12F12
KC_PRINT_SCREENKC_PSCRPrint Screen2
KC_SCROLL_LOCKKC_SCRL, KC_BRMDScroll Lock, Brightness Down (macOS)2
KC_PAUSEKC_PAUS, KC_BRK, KC_BRMUPause, Brightness Up (macOS)2
KC_INSERTKC_INSInsert
KC_HOMEHome
KC_PAGE_UPKC_PGUPPage Up
KC_DELETEKC_DELForward Delete
KC_ENDEnd
KC_PAGE_DOWNKC_PGDNPage Down
KC_RIGHTKC_RGHTRight Arrow
KC_LEFTLeft Arrow
KC_DOWNDown Arrow
KC_UPUp Arrow
KC_NUM_LOCKKC_NUMKeypad Num Lock and Clear
KC_KP_SLASHKC_PSLSKeypad /
KC_KP_ASTERISKKC_PASTKeypad *
KC_KP_MINUSKC_PMNSKeypad -
KC_KP_PLUSKC_PPLSKeypad +
KC_KP_ENTERKC_PENTKeypad Enter
KC_KP_1KC_P1Keypad 1 and End
KC_KP_2KC_P2Keypad 2 and Down Arrow
KC_KP_3KC_P3Keypad 3 and Page Down
KC_KP_4KC_P4Keypad 4 and Left Arrow
KC_KP_5KC_P5Keypad 5
KC_KP_6KC_P6Keypad 6 and Right Arrow
KC_KP_7KC_P7Keypad 7 and Home
KC_KP_8KC_P8Keypad 8 and Up Arrow
KC_KP_9KC_P9Keypad 9 and Page Up
KC_KP_0KC_P0Keypad 0 and Insert
KC_KP_DOTKC_PDOTKeypad . and Delete
KC_NONUS_BACKSLASHKC_NUBSNon-US \\ and |
KC_APPLICATIONKC_APPApplication (Windows Context Menu Key)
KC_KB_POWERSystem Power3
KC_KP_EQUALKC_PEQLKeypad =
KC_F13F13
KC_F14F14
KC_F15F15
KC_F16F16
KC_F17F17
KC_F18F18
KC_F19F19
KC_F20F20
KC_F21F21
KC_F22F22
KC_F23F23
KC_F24F24
KC_EXECUTEKC_EXECExecute
KC_HELPHelp
KC_MENUMenu
KC_SELECTKC_SLCTSelect
KC_STOPStop
KC_AGAINKC_AGINAgain
KC_UNDOUndo
KC_CUTCut
KC_COPYCopy
KC_PASTEKC_PSTEPaste
KC_FINDFind
KC_KB_MUTEMute
KC_KB_VOLUME_UPVolume Up
KC_KB_VOLUME_DOWNVolume Down
KC_LOCKING_CAPS_LOCKKC_LCAPLocking Caps Lock
KC_LOCKING_NUM_LOCKKC_LNUMLocking Num Lock
KC_LOCKING_SCROLL_LOCKKC_LSCRLocking Scroll Lock
KC_KP_COMMAKC_PCMMKeypad ,
KC_KP_EQUAL_AS400Keypad = on AS/400 keyboards
KC_INTERNATIONAL_1KC_INT1International 1
KC_INTERNATIONAL_2KC_INT2International 2
KC_INTERNATIONAL_3KC_INT3International 3
KC_INTERNATIONAL_4KC_INT4International 4
KC_INTERNATIONAL_5KC_INT5International 5
KC_INTERNATIONAL_6KC_INT6International 6
KC_INTERNATIONAL_7KC_INT7International 7
KC_INTERNATIONAL_8KC_INT8International 8
KC_INTERNATIONAL_9KC_INT9International 9
KC_LANGUAGE_1KC_LNG1Language 1
KC_LANGUAGE_2KC_LNG2Language 2
KC_LANGUAGE_3KC_LNG3Language 3
KC_LANGUAGE_4KC_LNG4Language 4
KC_LANGUAGE_5KC_LNG5Language 5
KC_LANGUAGE_6KC_LNG6Language 6
KC_LANGUAGE_7KC_LNG7Language 7
KC_LANGUAGE_8KC_LNG8Language 8
KC_LANGUAGE_9KC_LNG9Language 9
KC_ALTERNATE_ERASEKC_ERASAlternate Erase
KC_SYSTEM_REQUESTKC_SYRQSysReq/Attention
KC_CANCELKC_CNCLCancel
KC_CLEARKC_CLRClear
KC_PRIORKC_PRIRPrior
KC_RETURNKC_RETNReturn
KC_SEPARATORKC_SEPRSeparator
KC_OUTOut
KC_OPEROper
KC_CLEAR_AGAINKC_CLAGClear/Again
KC_CRSELKC_CRSLCrSel/Props
KC_EXSELKC_EXSLExSel
KC_LEFT_CTRLKC_LCTLLeft Control
KC_LEFT_SHIFTKC_LSFTLeft Shift
KC_LEFT_ALTKC_LALT, KC_LOPTLeft Alt (Option)
KC_LEFT_GUIKC_LGUI, KC_LCMD, KC_LWINLeft GUI (Windows/Command/Super key)
KC_RIGHT_CTRLKC_RCTLRight Control
KC_RIGHT_SHIFTKC_RSFTRight Shift
KC_RIGHT_ALTKC_RALT, KC_ROPT, KC_ALGRRight Alt (Option/AltGr)
KC_RIGHT_GUIKC_RGUI, KC_RCMD, KC_RWINRight GUI (Windows/Command/Super key)
KC_SYSTEM_POWERKC_PWRSystem Power Down3
KC_SYSTEM_SLEEPKC_SLEPSystem Sleep3
KC_SYSTEM_WAKEKC_WAKESystem Wake3
KC_AUDIO_MUTEKC_MUTEMute
KC_AUDIO_VOL_UPKC_VOLUVolume Up4
KC_AUDIO_VOL_DOWNKC_VOLDVolume Down4
KC_MEDIA_NEXT_TRACKKC_MNXTNext Track5
KC_MEDIA_PREV_TRACKKC_MPRVPrevious Track5
KC_MEDIA_STOPKC_MSTPStop Track
KC_MEDIA_PLAY_PAUSEKC_MPLYPlay/Pause Track
KC_MEDIA_SELECTKC_MSELLaunch Media Player
KC_MEDIA_EJECTKC_EJCTEject
KC_MAILLaunch Mail
KC_CALCULATORKC_CALCLaunch Calculator
KC_MY_COMPUTERKC_MYCMLaunch My Computer
KC_WWW_SEARCHKC_WSCHBrowser Search
KC_WWW_HOMEKC_WHOMBrowser Home
KC_WWW_BACKKC_WBAKBrowser Back
KC_WWW_FORWARDKC_WFWDBrowser Forward
KC_WWW_STOPKC_WSTPBrowser Stop
KC_WWW_REFRESHKC_WREFBrowser Refresh
KC_WWW_FAVORITESKC_WFAVBrowser Favorites
KC_MEDIA_FAST_FORWARDKC_MFFDFast Forward5
KC_MEDIA_REWINDKC_MRWDRewind65
KC_BRIGHTNESS_UPKC_BRIUBrightness Up
KC_BRIGHTNESS_DOWNKC_BRIDBrightness Down
KC_CONTROL_PANELKC_CPNLOpen Control Panel
KC_ASSISTANTKC_ASSTLaunch Context-Aware Assistant
KC_MISSION_CONTROLKC_MCTLOpen Mission Control
KC_LAUNCHPADKC_LPADOpen Launchpad

1. The Linux kernel HID driver recognizes nearly all keycodes, but the default bindings depend on the DE/WM.
2. Treated as F13-F15.
3. Must be held for about three seconds, and will display a prompt instead.
4. Holding Shift+Option allows for finer control of volume level.
5. Skips the entire track in iTunes when tapped, seeks within the current track when held.
6. WMP does not recognize the Rewind key, but both alter playback speed in VLC.

Quantum Keycodes

See also: Quantum Keycodes

KeyAliasesDescription
QK_BOOTLOADERQK_BOOTPut the keyboard into bootloader mode for flashing
QK_DEBUG_TOGGLEDB_TOGGToggle debug mode
QK_CLEAR_EEPROMEE_CLRReinitializes the keyboard's EEPROM (persistent memory)
QK_MAKESends qmk compile -kb (keyboard) -km (keymap), or qmk flash if shift is held. Puts keyboard into bootloader mode if shift & control are held
QK_REBOOTQK_RBTResets the keyboard. Does not load the bootloader

Audio Keys

See also: Audio

KeyAliasesDescription
QK_AUDIO_ONAU_ONTurns on Audio Feature
QK_AUDIO_OFFAU_OFFTurns off Audio Feature
QK_AUDIO_TOGGLEAU_TOGGToggles Audio state
QK_AUDIO_CLICKY_TOGGLECK_TOGGToggles Audio clicky mode
QK_AUDIO_CLICKY_ONCK_ONTurns on Audio clicky mode
QK_AUDIO_CLICKY_OFFCK_OFFTurns on Audio clicky mode
QK_AUDIO_CLICKY_UPCK_UPIncreases frequency of the clicks
QK_AUDIO_CLICKY_DOWNCK_DOWNDecreases frequency of the clicks
QK_AUDIO_CLICKY_RESETCK_RSTResets frequency to default
QK_MUSIC_ONMU_ONTurns on Music Mode
QK_MUSIC_OFFMU_OFFTurns off Music Mode
QK_MUSIC_TOGGLEMU_TOGGToggles Music Mode
QK_MUSIC_MODE_NEXTMU_NEXTCycles through the music modes
QK_AUDIO_VOICE_NEXTAU_NEXTCycles through the audio voices
QK_AUDIO_VOICE_PREVIOUSAU_PREVCycles through the audio voices in reverse

Auto Shift

See also: Auto Shift

KeyAliasesDescription
QK_AUTO_SHIFT_DOWNAS_DOWNLower the Auto Shift timeout variable (down)
QK_AUTO_SHIFT_UPAS_UPRaise the Auto Shift timeout variable (up)
QK_AUTO_SHIFT_REPORTAS_RPTReport your current Auto Shift timeout value
QK_AUTO_SHIFT_ONAS_ONTurns on the Auto Shift Function
QK_AUTO_SHIFT_OFFAS_OFFTurns off the Auto Shift Function
QK_AUTO_SHIFT_TOGGLEAS_TOGGToggles the state of the Auto Shift feature

Autocorrect

See also: Autocorrect

KeyAliasesDescription
QK_AUTOCORRECT_ONAC_ONTurns on the Autocorrect feature.
QK_AUTOCORRECT_OFFAC_OFFTurns off the Autocorrect feature.
QK_AUTOCORRECT_TOGGLEAC_TOGGToggles the status of the Autocorrect feature.

Backlighting

See also: Backlighting

KeyAliasesDescription
QK_BACKLIGHT_TOGGLEBL_TOGGTurn the backlight on or off
QK_BACKLIGHT_STEPBL_STEPCycle through backlight levels
QK_BACKLIGHT_ONBL_ONSet the backlight to max brightness
QK_BACKLIGHT_OFFBL_OFFTurn the backlight off
QK_BACKLIGHT_UPBL_UPIncrease the backlight level
QK_BACKLIGHT_DOWNBL_DOWNDecrease the backlight level
QK_BACKLIGHT_TOGGLE_BREATHINGBL_BRTGToggle backlight breathing

Wireless/Bluetooth

See also: Wireless

KeyAliasesDescription
QK_OUTPUT_AUTOOU_AUTOAutomatically switch to USB when plugged in, otherwise use wireless
QK_OUTPUT_NEXTOU_NEXTCycle forwards through USB, Bluetooth, and 2.4GHz (when available) (not yet implemented)
QK_OUTPUT_PREVOU_PREVCycle backwards through USB, Bluetooth, and 2.4GHz (when available) (not yet implemented)
QK_OUTPUT_NONEOU_NONEDisable all output (not yet implemented)
QK_OUTPUT_USBOU_USBOutput to USB only
QK_OUTPUT_2P4GHZOU_2P4GOutput to 2.4GHz only (not yet implemented)
QK_OUTPUT_BLUETOOTHOU_BTOutput to Bluetooth only
QK_BLUETOOTH_PROFILE_NEXTBT_NEXTMove to the next Bluetooth profile (not yet implemented)
QK_BLUETOOTH_PROFILE_PREVBT_PREVMove to the previous Bluetooth profile (not yet implemented)
QK_BLUETOOTH_UNPAIRBT_UNPRUn-pair the current Bluetooth profile (not yet implemented)
QK_BLUETOOTH_PROFILE1BT_PRF1Swap to Bluetooth profile #1 (not yet implemented)
QK_BLUETOOTH_PROFILE2BT_PRF2Swap to Bluetooth profile #2 (not yet implemented)
QK_BLUETOOTH_PROFILE3BT_PRF3Swap to Bluetooth profile #3 (not yet implemented)
QK_BLUETOOTH_PROFILE4BT_PRF4Swap to Bluetooth profile #4 (not yet implemented)
QK_BLUETOOTH_PROFILE5BT_PRF5Swap to Bluetooth profile #5 (not yet implemented)

Caps Word

See also: Caps Word

KeyAliasesDescription
QK_CAPS_WORD_TOGGLECW_TOGGToggles Caps Word

Dynamic Macros

See also: Dynamic Macros

KeyAliasesDescription
QK_DYNAMIC_MACRO_RECORD_START_1DM_REC1Start recording Macro 1
QK_DYNAMIC_MACRO_RECORD_START_2DM_REC2Start recording Macro 2
QK_DYNAMIC_MACRO_PLAY_1DM_PLY1Replay Macro 1
QK_DYNAMIC_MACRO_PLAY_2DM_PLY2Replay Macro 2
QK_DYNAMIC_MACRO_RECORD_STOPDM_RSTPFinish the macro that is currently being recorded.

Grave Escape

See also: Grave Escape

KeyAliasesDescription
QK_GRAVE_ESCAPEQK_GESCEscape when pressed, ` when Shift or GUI are held

Joystick

See also: Joystick

KeyAliasesDescription
QK_JOYSTICK_BUTTON_0JS_0Button 0
QK_JOYSTICK_BUTTON_1JS_1Button 1
QK_JOYSTICK_BUTTON_2JS_2Button 2
QK_JOYSTICK_BUTTON_3JS_3Button 3
QK_JOYSTICK_BUTTON_4JS_4Button 4
QK_JOYSTICK_BUTTON_5JS_5Button 5
QK_JOYSTICK_BUTTON_6JS_6Button 6
QK_JOYSTICK_BUTTON_7JS_7Button 7
QK_JOYSTICK_BUTTON_8JS_8Button 8
QK_JOYSTICK_BUTTON_9JS_9Button 9
QK_JOYSTICK_BUTTON_10JS_10Button 10
QK_JOYSTICK_BUTTON_11JS_11Button 11
QK_JOYSTICK_BUTTON_12JS_12Button 12
QK_JOYSTICK_BUTTON_13JS_13Button 13
QK_JOYSTICK_BUTTON_14JS_14Button 14
QK_JOYSTICK_BUTTON_15JS_15Button 15
QK_JOYSTICK_BUTTON_16JS_16Button 16
QK_JOYSTICK_BUTTON_17JS_17Button 17
QK_JOYSTICK_BUTTON_18JS_18Button 18
QK_JOYSTICK_BUTTON_19JS_19Button 19
QK_JOYSTICK_BUTTON_20JS_20Button 20
QK_JOYSTICK_BUTTON_21JS_21Button 21
QK_JOYSTICK_BUTTON_22JS_22Button 22
QK_JOYSTICK_BUTTON_23JS_23Button 23
QK_JOYSTICK_BUTTON_24JS_24Button 24
QK_JOYSTICK_BUTTON_25JS_25Button 25
QK_JOYSTICK_BUTTON_26JS_26Button 26
QK_JOYSTICK_BUTTON_27JS_27Button 27
QK_JOYSTICK_BUTTON_28JS_28Button 28
QK_JOYSTICK_BUTTON_29JS_29Button 29
QK_JOYSTICK_BUTTON_30JS_30Button 30
QK_JOYSTICK_BUTTON_31JS_31Button 31

Key Lock

See also: Key Lock

KeyDescription
QK_LOCKHold down the next key pressed, until the key is pressed again

Layer Lock

See also: Layer Lock

KeyAliasesDescription
QK_LAYER_LOCKQK_LLCKLocks or unlocks the highest layer

Layer Switching

See also: Layer Switching

KeyDescription
DF(layer)Set the base (default) layer until the keyboard loses power
PDF(layer)Set the base (default) layer in EEPROM
MO(layer)Momentarily turn on layer when pressed (requires KC_TRNS on destination layer)
LM(layer, mod)Momentarily turn on layer (like MO) with mod active as well. Where mod is a mods_bit. Mods can be viewed here. Example Implementation: LM(LAYER_1, MOD_LALT)
LT(layer, kc)Turn on layer when held, kc when tapped
TG(layer)Toggle layer on or off
TO(layer)Turns on layer and turns off all other layers, except the default layer
TT(layer)Normally acts like MO unless it's tapped multiple times, which toggles layer on

Leader Key

See also: Leader Key

KeyDescription
QK_LEADBegins a leader sequence

LED Matrix

See also: LED Matrix

KeyAliasesDescription
QK_LED_MATRIX_ONLM_ONTurn on LED Matrix
QK_LED_MATRIX_OFFLM_OFFTurn off LED Matrix
QK_LED_MATRIX_TOGGLELM_TOGGToggle LED Matrix on or off
QK_LED_MATRIX_MODE_NEXTLM_NEXTCycle through animations
QK_LED_MATRIX_MODE_PREVIOUSLM_PREVCycle through animations in reverse
QK_LED_MATRIX_BRIGHTNESS_UPLM_BRIUIncrease the brightness level
QK_LED_MATRIX_BRIGHTNESS_DOWNLM_BRIDDecrease the brightness level
QK_LED_MATRIX_SPEED_UPLM_SPDUIncrease the animation speed
QK_LED_MATRIX_SPEED_DOWNLM_SPDDDecrease the animation speed
QK_LED_MATRIX_FLAG_NEXTLM_FLGNCycle through flags
QK_LED_MATRIX_FLAG_PREVIOUSLM_FLGPCycle through flags in reverse

Magic Keycodes

See also: Magic Keycodes

KeyAliasesDescription
QK_MAGIC_SWAP_CONTROL_CAPS_LOCKCL_SWAPSwap Caps Lock and Left Control
QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCKCL_NORMUnswap Caps Lock and Left Control
QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCKCL_TOGGToggle Caps Lock and Left Control swap
QK_MAGIC_CAPS_LOCK_AS_CONTROL_ONCL_CTRLTreat Caps Lock as Control
QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFFCL_CAPSStop treating Caps Lock as Control
QK_MAGIC_SWAP_ESCAPE_CAPS_LOCKEC_SWAPSwap Caps Lock and Escape
QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCKEC_NORMUnswap Caps Lock and Escape
QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCKEC_TOGGToggle Caps Lock and Escape swap
QK_MAGIC_SWAP_LCTL_LGUICG_LSWPSwap Left Control and GUI
QK_MAGIC_UNSWAP_LCTL_LGUICG_LNRMUnswap Left Control and GUI
QK_MAGIC_SWAP_RCTL_RGUICG_RSWPSwap Right Control and GUI
QK_MAGIC_UNSWAP_RCTL_RGUICG_RNRMUnswap Right Control and GUI
QK_MAGIC_SWAP_CTL_GUICG_SWAPSwap Control and GUI on both sides
QK_MAGIC_UNSWAP_CTL_GUICG_NORMUnswap Control and GUI on both sides
QK_MAGIC_TOGGLE_CTL_GUICG_TOGGToggle Control and GUI swap on both sides
QK_MAGIC_SWAP_LALT_LGUIAG_LSWPSwap Left Alt and GUI
QK_MAGIC_UNSWAP_LALT_LGUIAG_LNRMUnswap Left Alt and GUI
QK_MAGIC_SWAP_RALT_RGUIAG_RSWPSwap Right Alt and GUI
QK_MAGIC_UNSWAP_RALT_RGUIAG_RNRMUnswap Right Alt and GUI
QK_MAGIC_SWAP_ALT_GUIAG_SWAPSwap Alt and GUI on both sides
QK_MAGIC_UNSWAP_ALT_GUIAG_NORMUnswap Alt and GUI on both sides
QK_MAGIC_TOGGLE_ALT_GUIAG_TOGGToggle Alt and GUI swap on both sides
QK_MAGIC_GUI_OFFGU_OFFDisable the GUI keys
QK_MAGIC_GUI_ONGU_ONEnable the GUI keys
QK_MAGIC_TOGGLE_GUIGU_TOGGToggles the status of the GUI keys
QK_MAGIC_SWAP_GRAVE_ESCGE_SWAPSwap ` and Escape
QK_MAGIC_UNSWAP_GRAVE_ESCGE_NORMUnswap ` and Escape
QK_MAGIC_SWAP_BACKSLASH_BACKSPACEBS_SWAPSwap \\ and Backspace
QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACEBS_NORMUnswap \\ and Backspace
QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACEBS_TOGGToggle \\ and Backspace swap state
QK_MAGIC_NKRO_ONNK_ONEnable N-key rollover
QK_MAGIC_NKRO_OFFNK_OFFDisable N-key rollover
QK_MAGIC_TOGGLE_NKRONK_TOGGToggle N-key rollover
QK_MAGIC_EE_HANDS_LEFTEH_LEFTSet the master half of a split keyboard as the left hand (for EE_HANDS)
QK_MAGIC_EE_HANDS_RIGHTEH_RGHTSet the master half of a split keyboard as the right hand (for EE_HANDS)

MIDI

See also: MIDI

KeyAliasesDescription
QK_MIDI_ONMI_ONTurn MIDI on
QK_MIDI_OFFMI_OFFTurn MIDI off
QK_MIDI_TOGGLEMI_TOGGToggle MIDI enabled
QK_MIDI_NOTE_C_0MI_CC octave 0
QK_MIDI_NOTE_C_SHARP_0MI_Cs, MI_DbC♯/D♭ octave 0
QK_MIDI_NOTE_D_0MI_DD octave 0
QK_MIDI_NOTE_D_SHARP_0MI_Ds, MI_EbD♯/E♭ octave 0
QK_MIDI_NOTE_E_0MI_EE octave 0
QK_MIDI_NOTE_F_0MI_FF octave 0
QK_MIDI_NOTE_F_SHARP_0MI_Fs, MI_GbF♯/G♭ octave 0
QK_MIDI_NOTE_G_0MI_GG octave 0
QK_MIDI_NOTE_G_SHARP_0MI_Gs, MI_AbG♯/A♭ octave 0
QK_MIDI_NOTE_A_0MI_AA octave 0
QK_MIDI_NOTE_A_SHARP_0MI_As, MI_BbA♯/B♭ octave 0
QK_MIDI_NOTE_B_0MI_BB octave 0
QK_MIDI_NOTE_C_1MI_C1C octave 1
QK_MIDI_NOTE_C_SHARP_1MI_Cs1, MI_Db1C♯/D♭ octave 1
QK_MIDI_NOTE_D_1MI_D1D octave 1
QK_MIDI_NOTE_D_SHARP_1MI_Ds1, MI_Eb1D♯/E♭ octave 1
QK_MIDI_NOTE_E_1MI_E1E octave 1
QK_MIDI_NOTE_F_1MI_F1F octave 1
QK_MIDI_NOTE_F_SHARP_1MI_Fs1, MI_Gb1F♯/G♭ octave 1
QK_MIDI_NOTE_G_1MI_G1G octave 1
QK_MIDI_NOTE_G_SHARP_1MI_Gs1, MI_Ab1G♯/A♭ octave 1
QK_MIDI_NOTE_A_1MI_A1A octave 1
QK_MIDI_NOTE_A_SHARP_1MI_As1, MI_Bb1A♯/B♭ octave 1
QK_MIDI_NOTE_B_1MI_B1B octave 1
QK_MIDI_NOTE_C_2MI_C2C octave 2
QK_MIDI_NOTE_C_SHARP_2MI_Cs2, MI_Db2C♯/D♭ octave 2
QK_MIDI_NOTE_D_2MI_D2D octave 2
QK_MIDI_NOTE_D_SHARP_2MI_Ds2, MI_Eb2D♯/E♭ octave 2
QK_MIDI_NOTE_E_2MI_E2E octave 2
QK_MIDI_NOTE_F_2MI_F2F octave 2
QK_MIDI_NOTE_F_SHARP_2MI_Fs2, MI_Gb2F♯/G♭ octave 2
QK_MIDI_NOTE_G_2MI_G2G octave 2
QK_MIDI_NOTE_G_SHARP_2MI_Gs2, MI_Ab2G♯/A♭ octave 2
QK_MIDI_NOTE_A_2MI_A2A octave 2
QK_MIDI_NOTE_A_SHARP_2MI_As2, MI_Bb2A♯/B♭ octave 2
QK_MIDI_NOTE_B_2MI_B2B octave 2
QK_MIDI_NOTE_C_3MI_C3C octave 3
QK_MIDI_NOTE_C_SHARP_3MI_Cs3, MI_Db3C♯/D♭ octave 3
QK_MIDI_NOTE_D_3MI_D3D octave 3
QK_MIDI_NOTE_D_SHARP_3MI_Ds3, MI_Eb3D♯/E♭ octave 3
QK_MIDI_NOTE_E_3MI_E3E octave 3
QK_MIDI_NOTE_F_3MI_F3F octave 3
QK_MIDI_NOTE_F_SHARP_3MI_Fs3, MI_Gb3F♯/G♭ octave 3
QK_MIDI_NOTE_G_3MI_G3G octave 3
QK_MIDI_NOTE_G_SHARP_3MI_Gs3, MI_Ab3G♯/A♭ octave 3
QK_MIDI_NOTE_A_3MI_A3A octave 3
QK_MIDI_NOTE_A_SHARP_3MI_As3, MI_Bb3A♯/B♭ octave 3
QK_MIDI_NOTE_B_3MI_B3B octave 3
QK_MIDI_NOTE_C_4MI_C4C octave 4
QK_MIDI_NOTE_C_SHARP_4MI_Cs4, MI_Db4C♯/D♭ octave 4
QK_MIDI_NOTE_D_4MI_D4D octave 4
QK_MIDI_NOTE_D_SHARP_4MI_Ds4, MI_Eb4D♯/E♭ octave 4
QK_MIDI_NOTE_E_4MI_E4E octave 4
QK_MIDI_NOTE_F_4MI_F4F octave 4
QK_MIDI_NOTE_F_SHARP_4MI_Fs4, MI_Gb4F♯/G♭ octave 4
QK_MIDI_NOTE_G_4MI_G4G octave 4
QK_MIDI_NOTE_G_SHARP_4MI_Gs4, MI_Ab4G♯/A♭ octave 4
QK_MIDI_NOTE_A_4MI_A4A octave 4
QK_MIDI_NOTE_A_SHARP_4MI_As4, MI_Bb4A♯/B♭ octave 4
QK_MIDI_NOTE_B_4MI_B4B octave 4
QK_MIDI_NOTE_C_5MI_C5C octave 5
QK_MIDI_NOTE_C_SHARP_5MI_Cs5, MI_Db5C♯/D♭ octave 5
QK_MIDI_NOTE_D_5MI_D5D octave 5
QK_MIDI_NOTE_D_SHARP_5MI_Ds5, MI_Eb5D♯/E♭ octave 5
QK_MIDI_NOTE_E_5MI_E5E octave 5
QK_MIDI_NOTE_F_5MI_F5F octave 5
QK_MIDI_NOTE_F_SHARP_5MI_Fs5, MI_Gb5F♯/G♭ octave 5
QK_MIDI_NOTE_G_5MI_G5G octave 5
QK_MIDI_NOTE_G_SHARP_5MI_Gs5, MI_Ab5G♯/A♭ octave 5
QK_MIDI_NOTE_A_5MI_A5A octave 5
QK_MIDI_NOTE_A_SHARP_5MI_As5, MI_Bb5A♯/B♭ octave 5
QK_MIDI_NOTE_B_5MI_B5B octave 5
QK_MIDI_OCTAVE_N2MI_OCN2Set octave to -2
QK_MIDI_OCTAVE_N1MI_OCN1Set octave to -1
QK_MIDI_OCTAVE_0MI_OC0Set octave to 0
QK_MIDI_OCTAVE_1MI_OC1Set octave to 1
QK_MIDI_OCTAVE_2MI_OC2Set octave to 2
QK_MIDI_OCTAVE_3MI_OC3Set octave to 3
QK_MIDI_OCTAVE_4MI_OC4Set octave to 4
QK_MIDI_OCTAVE_5MI_OC5Set octave to 5
QK_MIDI_OCTAVE_6MI_OC6Set octave to 6
QK_MIDI_OCTAVE_7MI_OC7Set octave to 7
QK_MIDI_OCTAVE_DOWNMI_OCTDMove down an octave
QK_MIDI_OCTAVE_UPMI_OCTUMove up an octave
QK_MIDI_TRANSPOSE_N6MI_TRN6Set transposition to -6 semitones
QK_MIDI_TRANSPOSE_N5MI_TRN5Set transposition to -5 semitones
QK_MIDI_TRANSPOSE_N4MI_TRN4Set transposition to -4 semitones
QK_MIDI_TRANSPOSE_N3MI_TRN3Set transposition to -3 semitones
QK_MIDI_TRANSPOSE_N2MI_TRN2Set transposition to -2 semitones
QK_MIDI_TRANSPOSE_N1MI_TRN1Set transposition to -1 semitone
QK_MIDI_TRANSPOSE_0MI_TR0No transposition
QK_MIDI_TRANSPOSE_1MI_TR1Set transposition to +1 semitone
QK_MIDI_TRANSPOSE_2MI_TR2Set transposition to +2 semitones
QK_MIDI_TRANSPOSE_3MI_TR3Set transposition to +3 semitones
QK_MIDI_TRANSPOSE_4MI_TR4Set transposition to +4 semitones
QK_MIDI_TRANSPOSE_5MI_TR5Set transposition to +5 semitones
QK_MIDI_TRANSPOSE_6MI_TR6Set transposition to +6 semitones
QK_MIDI_TRANSPOSE_DOWNMI_TRSDDecrease transposition
QK_MIDI_TRANSPOSE_UPMI_TRSUIncrease transposition
QK_MIDI_VELOCITY_0MI_VL0Set velocity to 0
QK_MIDI_VELOCITY_1MI_VL1Set velocity to 12
QK_MIDI_VELOCITY_2MI_VL2Set velocity to 25
QK_MIDI_VELOCITY_3MI_VL3Set velocity to 38
QK_MIDI_VELOCITY_4MI_VL4Set velocity to 51
QK_MIDI_VELOCITY_5MI_VL5Set velocity to 64
QK_MIDI_VELOCITY_6MI_VL6Set velocity to 76
QK_MIDI_VELOCITY_7MI_VL7Set velocity to 89
QK_MIDI_VELOCITY_8MI_VL8Set velocity to 102
QK_MIDI_VELOCITY_9MI_VL9Set velocity to 114
QK_MIDI_VELOCITY_10MI_VL10Set velocity to 127
QK_MIDI_VELOCITY_DOWNMI_VELDDecrease velocity
QK_MIDI_VELOCITY_UPMI_VELUIncrease velocity
QK_MIDI_CHANNEL_1MI_CH1Set channel to 1
QK_MIDI_CHANNEL_2MI_CH2Set channel to 2
QK_MIDI_CHANNEL_3MI_CH3Set channel to 3
QK_MIDI_CHANNEL_4MI_CH4Set channel to 4
QK_MIDI_CHANNEL_5MI_CH5Set channel to 5
QK_MIDI_CHANNEL_6MI_CH6Set channel to 6
QK_MIDI_CHANNEL_7MI_CH7Set channel to 7
QK_MIDI_CHANNEL_8MI_CH8Set channel to 8
QK_MIDI_CHANNEL_9MI_CH9Set channel to 9
QK_MIDI_CHANNEL_10MI_CH10Set channel to 10
QK_MIDI_CHANNEL_11MI_CH11Set channel to 11
QK_MIDI_CHANNEL_12MI_CH12Set channel to 12
QK_MIDI_CHANNEL_13MI_CH13Set channel to 13
QK_MIDI_CHANNEL_14MI_CH14Set channel to 14
QK_MIDI_CHANNEL_15MI_CH15Set channel to 15
QK_MIDI_CHANNEL_16MI_CH16Set channel to 16
QK_MIDI_CHANNEL_DOWNMI_CHNDDecrease channel
QK_MIDI_CHANNEL_UPMI_CHNUIncrease channel
QK_MIDI_ALL_NOTES_OFFMI_AOFFStop all notes
QK_MIDI_SUSTAINMI_SUSTSustain
QK_MIDI_PORTAMENTOMI_PORTPortmento
QK_MIDI_SOSTENUTOMI_SOSTSostenuto
QK_MIDI_SOFTMI_SOFTSoft Pedal
QK_MIDI_LEGATOMI_LEGLegato
QK_MIDI_MODULATIONMI_MODModulation
QK_MIDI_MODULATION_SPEED_DOWNMI_MODDDecrease modulation speed
QK_MIDI_MODULATION_SPEED_UPMI_MODUIncrease modulation speed
QK_MIDI_PITCH_BEND_DOWNMI_BNDDBend pitch down
QK_MIDI_PITCH_BEND_UPMI_BNDUBend pitch up

Mouse Keys

See also: Mouse Keys

KeyAliasesDescription
QK_MOUSE_CURSOR_UPMS_UPMouse cursor up
QK_MOUSE_CURSOR_DOWNMS_DOWNMouse cursor down
QK_MOUSE_CURSOR_LEFTMS_LEFTMouse cursor left
QK_MOUSE_CURSOR_RIGHTMS_RGHTMouse cursor right
QK_MOUSE_BUTTON_1MS_BTN1Mouse button 1
QK_MOUSE_BUTTON_2MS_BTN2Mouse button 2
QK_MOUSE_BUTTON_3MS_BTN3Mouse button 3
QK_MOUSE_BUTTON_4MS_BTN4Mouse button 4
QK_MOUSE_BUTTON_5MS_BTN5Mouse button 5
QK_MOUSE_BUTTON_6MS_BTN6Mouse button 6
QK_MOUSE_BUTTON_7MS_BTN7Mouse button 7
QK_MOUSE_BUTTON_8MS_BTN8Mouse button 8
QK_MOUSE_WHEEL_UPMS_WHLUMouse wheel up
QK_MOUSE_WHEEL_DOWNMS_WHLDMouse wheel down
QK_MOUSE_WHEEL_LEFTMS_WHLLMouse wheel left
QK_MOUSE_WHEEL_RIGHTMS_WHLRMouse wheel right
QK_MOUSE_ACCELERATION_0MS_ACL0Set mouse acceleration to 0
QK_MOUSE_ACCELERATION_1MS_ACL1Set mouse acceleration to 1
QK_MOUSE_ACCELERATION_2MS_ACL2Set mouse acceleration to 2

Modifiers

See also: Modifier Keys

KeyAliasesDescription
LCTL(kc)C(kc)Hold Left Control and press kc
LSFT(kc)S(kc)Hold Left Shift and press kc
LALT(kc)A(kc), LOPT(kc)Hold Left Alt and press kc
LGUI(kc)G(kc), LCMD(kc), LWIN(kc)Hold Left GUI and press kc
LCS(kc)Hold Left Control and Left Shift and press kc
LCA(kc)Hold Left Control and Left Alt and press kc
LCG(kc)Hold Left Control and Left GUI and press kc
LSA(kc)Hold Left Shift and Left Alt and press kc
LSG(kc)Hold Left Shift and Left GUI and press kc
LAG(kc)Hold Left Alt and Left GUI and press kc
LCSG(kc)Hold Left Control, Left Shift and Left GUI and press kc
LCAG(kc)Hold Left Control, Left Alt and Left GUI and press kc
LSAG(kc)Hold Left Shift, Left Alt and Left GUI and press kc
RCTL(kc)Hold Right Control and press kc
RSFT(kc)Hold Right Shift and press kc
RALT(kc)ROPT(kc), ALGR(kc)Hold Right Alt and press kc
RGUI(kc)RCMD(kc), RWIN(kc)Hold Right GUI and press kc
RCS(kc)Hold Right Control and Right Shift and press kc
RCA(kc)Hold Right Control and Right Alt and press kc
RCG(kc)Hold Right Control and Right GUI and press kc
RSA(kc)Hold Right Shift and Right Alt and press kc
RSG(kc)Hold Right Shift and Right GUI and press kc
RAG(kc)Hold Right Alt and Right GUI and press kc
RCSG(kc)Hold Right Control, Right Shift and Right GUI and press kc
RCAG(kc)Hold Right Control, Right Alt and Right GUI and press kc
RSAG(kc)Hold Right Shift, Right Alt and Right GUI and press kc
MEH(kc)Hold Left Control, Left Shift and Left Alt and press kc
HYPR(kc)Hold Left Control, Left Shift, Left Alt and Left GUI and press kc
KC_MEHLeft Control, Left Shift and Left Alt
KC_HYPRLeft Control, Left Shift, Left Alt and Left GUI

Mod-Tap Keys

See also: Mod-Tap

KeyAliasesDescription
MT(mod, kc)mod when held, kc when tapped
LCTL_T(kc)CTL_T(kc)Left Control when held, kc when tapped
LSFT_T(kc)SFT_T(kc)Left Shift when held, kc when tapped
LALT_T(kc)ALT_T(kc), LOPT_T(kc), OPT_T(kc)Left Alt when held, kc when tapped
LGUI_T(kc)GUI_T(kc), LCMD_T(kc), LWIN_T(kc), CMD_T(kc), WIN_T(kc)Left GUI when held, kc when tapped
LCS_T(kc)Left Control and Left Shift when held, kc when tapped
LCA_T(kc)Left Control and Left Alt when held, kc when tapped
LCG_T(kc)Left Control and Left GUI when held, kc when tapped
LSA_T(kc)Left Shift and Left Alt when held, kc when tapped
LSG_T(kc)Left Shift and Left GUI when held, kc when tapped
LAG_T(kc)Left Alt and Left GUI when held, kc when tapped
LCSG_T(kc)Left Control, Left Shift and Left GUI when held, kc when tapped
LCAG_T(kc)Left Control, Left Alt and Left GUI when held, kc when tapped
LSAG_T(kc)Left Shift, Left Alt and Left GUI when held, kc when tapped
RCTL_T(kc)Right Control when held, kc when tapped
RSFT_T(kc)Right Shift when held, kc when tapped
RALT_T(kc)ROPT_T(kc), ALGR_T(kc)Right Alt when held, kc when tapped
RGUI_T(kc)RCMD_T(kc), RWIN_T(kc)Right GUI when held, kc when tapped
RCS_T(kc)Right Control and Right Shift when held, kc when tapped
RCA_T(kc)Right Control and Right Alt when held, kc when tapped
RCG_T(kc)Right Control and Right GUI when held, kc when tapped
RSA_T(kc)Right Shift and Right Alt when held, kc when tapped
RSG_T(kc)Right Shift and Right GUI when held, kc when tapped
RAG_T(kc)Right Alt and Right GUI when held, kc when tapped
RCSG_T(kc)Right Control, Right Shift and Right GUI when held, kc when tapped
RCAG_T(kc)Right Control, Right Alt and Right GUI when held, kc when tapped
RSAG_T(kc)Right Shift, Right Alt and Right GUI when held, kc when tapped
MEH_T(kc)Left Control, Left Shift and Left Alt when held, kc when tapped
HYPR_T(kc)Left Control, Left Shift, Left Alt and Left GUI when held, kc when tapped

Tapping Term Keys

See also: Dynamic Tapping Term

KeyAliasesDescription
QK_DYNAMIC_TAPPING_TERM_PRINTDT_PRNTTypes the current tapping term, in milliseconds
QK_DYNAMIC_TAPPING_TERM_UPDT_UPIncreases the current tapping term by DYNAMIC_TAPPING_TERM_INCREMENTms (5ms by default)
QK_DYNAMIC_TAPPING_TERM_DOWNDT_DOWNDecreases the current tapping term by DYNAMIC_TAPPING_TERM_INCREMENTms (5ms by default)

RGB Lighting

See also: RGB Lighting

KeyAliasesDescription
QK_UNDERGLOW_TOGGLEUG_TOGGToggle RGB lighting on or off
QK_UNDERGLOW_MODE_NEXTUG_NEXTCycle through modes, reverse direction when Shift is held
QK_UNDERGLOW_MODE_PREVIOUSUG_PREVCycle through modes in reverse, forward direction when Shift is held
QK_UNDERGLOW_HUE_UPUG_HUEUIncrease hue, decrease hue when Shift is held
QK_UNDERGLOW_HUE_DOWNUG_HUEDDecrease hue, increase hue when Shift is held
QK_UNDERGLOW_SATURATION_UPUG_SATUIncrease saturation, decrease saturation when Shift is held
QK_UNDERGLOW_SATURATION_DOWNUG_SATDDecrease saturation, increase saturation when Shift is held
QK_UNDERGLOW_VALUE_UPUG_VALUIncrease value (brightness), decrease value when Shift is held
QK_UNDERGLOW_VALUE_DOWNUG_VALDDecrease value (brightness), increase value when Shift is held
QK_UNDERGLOW_SPEED_UPUG_SPDUIncrease effect speed (brightness), decrease speed when Shift is held
QK_UNDERGLOW_SPEED_DOWNUG_SPDDDecrease effect speed (brightness), increase speed when Shift is held
RGB_MODE_PLAINRGB_M_P Static (no animation) mode (deprecated)
RGB_MODE_BREATHERGB_M_BBreathing animation mode (deprecated)
RGB_MODE_RAINBOWRGB_M_RRainbow animation mode (deprecated)
RGB_MODE_SWIRLRGB_M_SWSwirl animation mode (deprecated)
RGB_MODE_SNAKERGB_M_SNSnake animation mode (deprecated)
RGB_MODE_KNIGHTRGB_M_K"Knight Rider" animation mode (deprecated)
RGB_MODE_XMASRGB_M_XChristmas animation mode (deprecated)
RGB_MODE_GRADIENTRGB_M_GStatic gradient animation mode (deprecated)
RGB_MODE_RGBTESTRGB_M_TRed, Green, Blue test animation mode (deprecated)
RGB_MODE_TWINKLERGB_M_TWTwinkle animation mode (deprecated)

RGB Matrix

See also: RGB Matrix

KeyAliasesDescription
QK_RGB_MATRIX_ONRM_ONTurn on RGB Matrix
QK_RGB_MATRIX_OFFRM_OFFTurn off RGB Matrix
QK_RGB_MATRIX_TOGGLERM_TOGGToggle RGB Matrix on or off
QK_RGB_MATRIX_MODE_NEXTRM_NEXTCycle through animations
QK_RGB_MATRIX_MODE_PREVIOUSRM_PREVCycle through animations in reverse
QK_RGB_MATRIX_HUE_UPRM_HUEUCycle through hue
QK_RGB_MATRIX_HUE_DOWNRM_HUEDCycle through hue in reverse
QK_RGB_MATRIX_SATURATION_UPRM_SATUIncrease the saturation
QK_RGB_MATRIX_SATURATION_DOWNRM_SATDDecrease the saturation
QK_RGB_MATRIX_VALUE_UPRM_VALUIncrease the brightness level
QK_RGB_MATRIX_VALUE_DOWNRM_VALDDecrease the brightness level
QK_RGB_MATRIX_SPEED_UPRM_SPDUIncrease the animation speed
QK_RGB_MATRIX_SPEED_DOWNRM_SPDDDecrease the animation speed
QK_RGB_MATRIX_FLAG_NEXTRM_FLGNCycle through flags
QK_RGB_MATRIX_FLAG_PREVIOUSRM_FLGPCycle through flags in reverse

US ANSI Shifted Symbols

See also: US ANSI Shifted Symbols

KeyAliasesDescription
KC_TILDEKC_TILD~
KC_EXCLAIMKC_EXLM!
KC_AT@
KC_HASH#
KC_DOLLARKC_DLR$
KC_PERCENTKC_PERC%
KC_CIRCUMFLEXKC_CIRC^
KC_AMPERSANDKC_AMPR&
KC_ASTERISKKC_ASTR*
KC_LEFT_PARENKC_LPRN(
KC_RIGHT_PARENKC_RPRN)
KC_UNDERSCOREKC_UNDS_
KC_PLUS+
KC_LEFT_CURLY_BRACEKC_LCBR{
KC_RIGHT_CURLY_BRACEKC_RCBR}
KC_PIPE|
KC_COLONKC_COLN:
KC_DOUBLE_QUOTEKC_DQUO, KC_DQT"
KC_LEFT_ANGLE_BRACKETKC_LABK, KC_LT<
KC_RIGHT_ANGLE_BRACKETKC_RABK, KC_GT>
KC_QUESTIONKC_QUES?

One Shot Keys

See also: One Shot Keys

KeyAliasesDescription
QK_ONE_SHOT_TOGGLEOS_TOGGToggles One Shot keys status
QK_ONE_SHOT_ONOS_ONTurns One Shot keys on
QK_ONE_SHOT_OFFOS_OFFTurns One Shot keys off
OSL(layer)Switch to layer for one keypress
OSM(mod)Hold mod for one keypress
OS_LCTLHold Left Control for one keypress
OS_LSFTHold Left Shift for one keypress
OS_LALTHold Left Alt for one keypress
OS_LGUIHold Left GUI for one keypress
OS_LCSHold Left Control and Left Shift for one keypress
OS_LCAHold Left Control and left Alt for one keypress
OS_LCGHold Left Control and Left GUI for one keypress
OS_LSAHold Left Shift and Left Alt for one keypress
OS_LSGHold Left Shift and Left GUI for one keypress
OS_LAGHold Left Alt and Left GUI for one keypress
OS_LCSGHold Left Control, Left Shift and Left GUI for one keypress
OS_LCAGHold Left Control, Left Alt and Left GUI for one keypress
OS_LSAGHold Left Shift, Left Alt and Left GUI for one keypress
OS_RCTLHold Right Control for one keypress
OS_RSFTHold Right Shift for one keypress
OS_RALTHold Right Alt for one keypress
OS_RGUIHold Right GUI for one keypress
OS_RCSHold Right Control and Right Shift for one keypress
OS_RCAHold Right Control and Right Alt for one keypress
OS_RCGHold Right Control and Right GUI for one keypress
OS_RSAHold Right Shift and Right Alt for one keypress
OS_RSGHold Right Shift and Right GUI for one keypress
OS_RAGHold Right Alt and Right GUI for one keypress
OS_RCSGHold Right Control, Right Shift and Right GUI for one keypress
OS_RCAGHold Right Control, Right Alt and Right GUI for one keypress
OS_RSAGHold Right Shift, Right Alt and Right GUI for one keypress
OS_MEHHold Left Control, Left Shift and Left Alt for one keypress
OS_HYPRHold Left Control, Left Shift, Left Alt and Left GUI for one keypress

Programmable Button Support

See also: Programmable Button

KeyAliasesDescription
QK_PROGRAMMABLE_BUTTON_1PB_1Programmable button 1
QK_PROGRAMMABLE_BUTTON_2PB_2Programmable button 2
QK_PROGRAMMABLE_BUTTON_3PB_3Programmable button 3
QK_PROGRAMMABLE_BUTTON_4PB_4Programmable button 4
QK_PROGRAMMABLE_BUTTON_5PB_5Programmable button 5
QK_PROGRAMMABLE_BUTTON_6PB_6Programmable button 6
QK_PROGRAMMABLE_BUTTON_7PB_7Programmable button 7
QK_PROGRAMMABLE_BUTTON_8PB_8Programmable button 8
QK_PROGRAMMABLE_BUTTON_9PB_9Programmable button 9
QK_PROGRAMMABLE_BUTTON_10PB_10Programmable button 10
QK_PROGRAMMABLE_BUTTON_11PB_11Programmable button 11
QK_PROGRAMMABLE_BUTTON_12PB_12Programmable button 12
QK_PROGRAMMABLE_BUTTON_13PB_13Programmable button 13
QK_PROGRAMMABLE_BUTTON_14PB_14Programmable button 14
QK_PROGRAMMABLE_BUTTON_15PB_15Programmable button 15
QK_PROGRAMMABLE_BUTTON_16PB_16Programmable button 16
QK_PROGRAMMABLE_BUTTON_17PB_17Programmable button 17
QK_PROGRAMMABLE_BUTTON_18PB_18Programmable button 18
QK_PROGRAMMABLE_BUTTON_19PB_19Programmable button 19
QK_PROGRAMMABLE_BUTTON_20PB_20Programmable button 20
QK_PROGRAMMABLE_BUTTON_21PB_21Programmable button 21
QK_PROGRAMMABLE_BUTTON_22PB_22Programmable button 22
QK_PROGRAMMABLE_BUTTON_23PB_23Programmable button 23
QK_PROGRAMMABLE_BUTTON_24PB_24Programmable button 24
QK_PROGRAMMABLE_BUTTON_25PB_25Programmable button 25
QK_PROGRAMMABLE_BUTTON_26PB_26Programmable button 26
QK_PROGRAMMABLE_BUTTON_27PB_27Programmable button 27
QK_PROGRAMMABLE_BUTTON_28PB_28Programmable button 28
QK_PROGRAMMABLE_BUTTON_29PB_29Programmable button 29
QK_PROGRAMMABLE_BUTTON_30PB_30Programmable button 30
QK_PROGRAMMABLE_BUTTON_31PB_31Programmable button 31
QK_PROGRAMMABLE_BUTTON_32PB_32Programmable button 32

Repeat Key

See also: Repeat Key

KeycodeAliasesDescription
QK_REPEAT_KEYQK_REPRepeat the last pressed key
QK_ALT_REPEAT_KEYQK_AREPPerform alternate of the last key

Space Cadet

See also: Space Cadet

KeyAliasesDescription
QK_SPACE_CADET_LEFT_CTRL_PARENTHESIS_OPENSC_LCPOLeft Control when held, ( when tapped
QK_SPACE_CADET_RIGHT_CTRL_PARENTHESIS_CLOSESC_RCPCRight Control when held, ) when tapped
QK_SPACE_CADET_LEFT_SHIFT_PARENTHESIS_OPENSC_LSPOLeft Shift when held, ( when tapped
QK_SPACE_CADET_RIGHT_SHIFT_PARENTHESIS_CLOSESC_RSPCRight Shift when held, ) when tapped
QK_SPACE_CADET_LEFT_ALT_PARENTHESIS_OPENSC_LAPOLeft Alt when held, ( when tapped
QK_SPACE_CADET_RIGHT_ALT_PARENTHESIS_CLOSESC_RAPCRight Alt when held, ) when tapped
QK_SPACE_CADET_RIGHT_SHIFT_ENTERSC_SENTRight Shift when held, Enter when tapped

Swap Hands

See also: Swap Hands

KeyAliasesDescription
SH_T(kc)Momentary swap when held, kc when tapped
QK_SWAP_HANDS_ONSH_ONTurn on hand swap
QK_SWAP_HANDS_OFFSH_OFFTurn off hand swap
QK_SWAP_HANDS_MOMENTARY_ONSH_MONTurn on hand swap while held
QK_SWAP_HANDS_MOMENTARY_OFFSH_MOFFTurn off hand swap while held
QK_SWAP_HANDS_TOGGLESH_TOGGToggle hand swap
QK_SWAP_HANDS_TAP_TOGGLESH_TTMomentary swap when held, toggle when tapped
QK_SWAP_HANDS_ONE_SHOTSH_OSTurn on hand swap while held or until next key press

Unicode Support

See also: Unicode Support

KeyAliasesDescription
UC(c)Send Unicode code point c, up to 0x7FFF
UM(i)Send Unicode code point at index i in unicode_map
UP(i, j)Send Unicode code point at index i, or j if Shift/Caps is on
QK_UNICODE_MODE_NEXTUC_NEXTCycle through selected input modes
QK_UNICODE_MODE_PREVIOUSUC_PREVCycle through selected input modes in reverse
QK_UNICODE_MODE_MACOSUC_MACSwitch to macOS input
QK_UNICODE_MODE_LINUXUC_LINXSwitch to Linux input
QK_UNICODE_MODE_WINDOWSUC_WINSwitch to Windows input
QK_UNICODE_MODE_BSDUC_BSDSwitch to BSD input (not implemented)
QK_UNICODE_MODE_WINCOMPOSEUC_WINCSwitch to Windows input using WinCompose
QK_UNICODE_MODE_EMACSUC_EMACSwitch to emacs (C-x-8 RET)
', 97); diff --git a/assets/keycodes.md.BFmA0AVu.lean.js b/assets/keycodes.md.TseVv0Om.lean.js similarity index 82% rename from assets/keycodes.md.BFmA0AVu.lean.js rename to assets/keycodes.md.TseVv0Om.lean.js index d7358facebf..01bdc810adc 100644 --- a/assets/keycodes.md.BFmA0AVu.lean.js +++ b/assets/keycodes.md.TseVv0Om.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Keycodes Overview","description":"","frontmatter":{},"headers":[],"relativePath":"keycodes.md","filePath":"keycodes.md","lastUpdated":null}'); const _sfc_main = { name: "keycodes.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 97); diff --git a/assets/keycodes_basic.md.1acV3SW6.js b/assets/keycodes_basic.md.DFS_uCTY.js similarity index 99% rename from assets/keycodes_basic.md.1acV3SW6.js rename to assets/keycodes_basic.md.DFS_uCTY.js index 3b085791d40..0e8cd4040ec 100644 --- a/assets/keycodes_basic.md.1acV3SW6.js +++ b/assets/keycodes_basic.md.DFS_uCTY.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Basic Keycodes","description":"","frontmatter":{},"headers":[],"relativePath":"keycodes_basic.md","filePath":"keycodes_basic.md","lastUpdated":null}'); const _sfc_main = { name: "keycodes_basic.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Basic Keycodes

The basic set of keycodes are based on the HID Keyboard/Keypad Usage Page (0x07) with the exception of KC_NO, KC_TRNS and keycodes in the 0xA5-DF range. See below for more details.

Letters and Numbers

KeyDescription
KC_Aa and A
KC_Bb and B
KC_Cc and C
KC_Dd and D
KC_Ee and E
KC_Ff and F
KC_Gg and G
KC_Hh and H
KC_Ii and I
KC_Jj and J
KC_Kk and K
KC_Ll and L
KC_Mm and M
KC_Nn and N
KC_Oo and O
KC_Pp and P
KC_Qq and Q
KC_Rr and R
KC_Ss and S
KC_Tt and T
KC_Uu and U
KC_Vv and V
KC_Ww and W
KC_Xx and X
KC_Yy and Y
KC_Zz and Z
KC_11 and !
KC_22 and @
KC_33 and #
KC_44 and $
KC_55 and %
KC_66 and ^
KC_77 and &
KC_88 and *
KC_99 and (
KC_00 and )

F Keys

KeyDescription
KC_F1F1
KC_F2F2
KC_F3F3
KC_F4F4
KC_F5F5
KC_F6F6
KC_F7F7
KC_F8F8
KC_F9F9
KC_F10F10
KC_F11F11
KC_F12F12
KC_F13F13
KC_F14F14
KC_F15F15
KC_F16F16
KC_F17F17
KC_F18F18
KC_F19F19
KC_F20F20
KC_F21F21
KC_F22F22
KC_F23F23
KC_F24F24

Punctuation

KeyAliasesDescription
KC_ENTERKC_ENTReturn (Enter)
KC_ESCAPEKC_ESCEscape
KC_BACKSPACEKC_BSPCDelete (Backspace)
KC_TABTab
KC_SPACEKC_SPCSpacebar
KC_MINUSKC_MINS- and _
KC_EQUALKC_EQL= and +
KC_LEFT_BRACKETKC_LBRC[ and {
KC_RIGHT_BRACKETKC_RBRC] and }
KC_BACKSLASHKC_BSLS\\ and |
KC_NONUS_HASHKC_NUHSNon-US # and ~
KC_SEMICOLONKC_SCLN; and :
KC_QUOTEKC_QUOT' and "
KC_GRAVEKC_GRV` and ~
KC_COMMAKC_COMM, and <
KC_DOT. and >
KC_SLASHKC_SLSH/ and ?
KC_NONUS_BACKSLASHKC_NUBSNon-US \\ and |

Lock Keys

KeyAliasesDescription
KC_CAPS_LOCKKC_CAPSCaps Lock
KC_SCROLL_LOCKKC_SCRL, KC_BRMDScroll Lock, Brightness Down (macOS)
KC_NUM_LOCKKC_NUMKeypad Num Lock and Clear
KC_LOCKING_CAPS_LOCKKC_LCAPLocking Caps Lock
KC_LOCKING_NUM_LOCKKC_LNUMLocking Num Lock
KC_LOCKING_SCROLL_LOCKKC_LSCRLocking Scroll Lock

Modifiers

KeyAliasesDescription
KC_LEFT_CTRLKC_LCTLLeft Control
KC_LEFT_SHIFTKC_LSFTLeft Shift
KC_LEFT_ALTKC_LALT, KC_LOPTLeft Alt (Option)
KC_LEFT_GUIKC_LGUI, KC_LCMD, KC_LWINLeft GUI (Windows/Command/Super key)
KC_RIGHT_CTRLKC_RCTLRight Control
KC_RIGHT_SHIFTKC_RSFTRight Shift
KC_RIGHT_ALTKC_RALT, KC_ROPT, KC_ALGRRight Alt (Option/AltGr)
KC_RIGHT_GUIKC_RGUI, KC_RCMD, KC_RWINRight GUI (Windows/Command/Super key)

International

KeyAliasesDescription
KC_INTERNATIONAL_1KC_INT1JIS \\ and _
KC_INTERNATIONAL_2KC_INT2JIS Katakana/Hiragana
KC_INTERNATIONAL_3KC_INT3JIS ¥ and |
KC_INTERNATIONAL_4KC_INT4JIS Henkan
KC_INTERNATIONAL_5KC_INT5JIS Muhenkan
KC_INTERNATIONAL_6KC_INT6JIS Numpad ,
KC_INTERNATIONAL_7KC_INT7International 7
KC_INTERNATIONAL_8KC_INT8International 8
KC_INTERNATIONAL_9KC_INT9International 9
KC_LANGUAGE_1KC_LNG1Hangul/English
KC_LANGUAGE_2KC_LNG2Hanja
KC_LANGUAGE_3KC_LNG3JIS Katakana
KC_LANGUAGE_4KC_LNG4JIS Hiragana
KC_LANGUAGE_5KC_LNG5JIS Zenkaku/Hankaku
KC_LANGUAGE_6KC_LNG6Language 6
KC_LANGUAGE_7KC_LNG7Language 7
KC_LANGUAGE_8KC_LNG8Language 8
KC_LANGUAGE_9KC_LNG9Language 9

Commands

KeyAliasesDescription
KC_PRINT_SCREENKC_PSCRPrint Screen
KC_PAUSEKC_PAUS, KC_BRK, KC_BRMUPause, Brightness Up (macOS)
KC_INSERTKC_INSInsert
KC_HOMEHome
KC_PAGE_UPKC_PGUPPage Up
KC_DELETEKC_DELForward Delete
KC_ENDEnd
KC_PAGE_DOWNKC_PGDNPage Down
KC_RIGHTKC_RGHTRight Arrow
KC_LEFTLeft Arrow
KC_DOWNDown Arrow
KC_UPUp Arrow
KC_APPLICATIONKC_APPApplication (Windows Context Menu Key)
KC_KB_POWERSystem Power
KC_EXECUTEKC_EXECExecute
KC_HELPHelp
KC_MENUMenu
KC_SELECTKC_SLCTSelect
KC_STOPStop
KC_AGAINKC_AGINAgain
KC_UNDOUndo
KC_CUTCut
KC_COPYCopy
KC_PASTEKC_PSTEPaste
KC_FINDFind
KC_KB_MUTEMute
KC_KB_VOLUME_UPVolume Up
KC_KB_VOLUME_DOWNVolume Down
KC_ALTERNATE_ERASEKC_ERASAlternate Erase
KC_SYSTEM_REQUESTKC_SYRQSysReq/Attention
KC_CANCELKC_CNCLCancel
KC_CLEARKC_CLRClear
KC_PRIORKC_PRIRPrior
KC_RETURNKC_RETNReturn
KC_SEPARATORKC_SEPRSeparator
KC_OUTOut
KC_OPEROper
KC_CLEAR_AGAINKC_CLAGClear/Again
KC_CRSELKC_CRSLCrSel/Props
KC_EXSELKC_EXSLExSel

Media Keys

These keycodes are not part of the Keyboard/Keypad usage page. The SYSTEM_ keycodes are found in the Generic Desktop page, and the rest are located in the Consumer page.

TIP

Some of these keycodes may behave differently depending on the OS. For example, on macOS, the keycodes KC_MEDIA_FAST_FORWARD, KC_MEDIA_REWIND, KC_MEDIA_NEXT_TRACK and KC_MEDIA_PREV_TRACK skip within the current track when held, but skip the entire track when tapped.

KeyAliasesDescription
KC_SYSTEM_POWERKC_PWRSystem Power Down
KC_SYSTEM_SLEEPKC_SLEPSystem Sleep
KC_SYSTEM_WAKEKC_WAKESystem Wake
KC_AUDIO_MUTEKC_MUTEMute
KC_AUDIO_VOL_UPKC_VOLUVolume Up
KC_AUDIO_VOL_DOWNKC_VOLDVolume Down
KC_MEDIA_NEXT_TRACKKC_MNXTNext Track
KC_MEDIA_PREV_TRACKKC_MPRVPrevious Track
KC_MEDIA_STOPKC_MSTPStop Track
KC_MEDIA_PLAY_PAUSEKC_MPLYPlay/Pause Track
KC_MEDIA_SELECTKC_MSELLaunch Media Player
KC_MEDIA_EJECTKC_EJCTEject
KC_MAILLaunch Mail
KC_CALCULATORKC_CALCLaunch Calculator
KC_MY_COMPUTERKC_MYCMLaunch My Computer
KC_WWW_SEARCHKC_WSCHBrowser Search
KC_WWW_HOMEKC_WHOMBrowser Home
KC_WWW_BACKKC_WBAKBrowser Back
KC_WWW_FORWARDKC_WFWDBrowser Forward
KC_WWW_STOPKC_WSTPBrowser Stop
KC_WWW_REFRESHKC_WREFBrowser Refresh
KC_WWW_FAVORITESKC_WFAVBrowser Favorites
KC_MEDIA_FAST_FORWARDKC_MFFDFast Forward
KC_MEDIA_REWINDKC_MRWDRewind
KC_BRIGHTNESS_UPKC_BRIUBrightness Up
KC_BRIGHTNESS_DOWNKC_BRIDBrightness Down
KC_CONTROL_PANELKC_CPNLOpen Control Panel
KC_ASSISTANTKC_ASSTLaunch Assistant
KC_MISSION_CONTROLKC_MCTLOpen Mission Control
KC_LAUNCHPADKC_LPADOpen Launchpad

Number Pad

KeyAliasesDescription
KC_KP_SLASHKC_PSLSKeypad /
KC_KP_ASTERISKKC_PASTKeypad *
KC_KP_MINUSKC_PMNSKeypad -
KC_KP_PLUSKC_PPLSKeypad +
KC_KP_ENTERKC_PENTKeypad Enter
KC_KP_1KC_P1Keypad 1 and End
KC_KP_2KC_P2Keypad 2 and Down Arrow
KC_KP_3KC_P3Keypad 3 and Page Down
KC_KP_4KC_P4Keypad 4 and Left Arrow
KC_KP_5KC_P5Keypad 5
KC_KP_6KC_P6Keypad 6 and Right Arrow
KC_KP_7KC_P7Keypad 7 and Home
KC_KP_8KC_P8Keypad 8 and Up Arrow
KC_KP_9KC_P9Keypad 9 and Page Up
KC_KP_0KC_P0Keypad 0 and Insert
KC_KP_DOTKC_PDOTKeypad . and Delete
KC_KP_EQUALKC_PEQLKeypad =
KC_KP_COMMAKC_PCMMKeypad ,
KC_KP_EQUAL_AS400Keypad = on AS/400 keyboards

Special Keys

In addition to these, keycodes in the range of 0xA5-DF are reserved for internal use.

KeyAliasesDescription
KC_NOXXXXXXXIgnore this key (NOOP)
KC_TRANSPARENTKC_TRNS, _______Use the next lowest non-transparent key
', 25); diff --git a/assets/keycodes_basic.md.1acV3SW6.lean.js b/assets/keycodes_basic.md.DFS_uCTY.lean.js similarity index 83% rename from assets/keycodes_basic.md.1acV3SW6.lean.js rename to assets/keycodes_basic.md.DFS_uCTY.lean.js index ff00c4309b7..be73279732e 100644 --- a/assets/keycodes_basic.md.1acV3SW6.lean.js +++ b/assets/keycodes_basic.md.DFS_uCTY.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Basic Keycodes","description":"","frontmatter":{},"headers":[],"relativePath":"keycodes_basic.md","filePath":"keycodes_basic.md","lastUpdated":null}'); const _sfc_main = { name: "keycodes_basic.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 25); diff --git a/assets/keycodes_magic.md.DGcxCwmE.js b/assets/keycodes_magic.md.BpmQ6-VM.js similarity index 97% rename from assets/keycodes_magic.md.DGcxCwmE.js rename to assets/keycodes_magic.md.BpmQ6-VM.js index d8318b76eb3..e37c944b40d 100644 --- a/assets/keycodes_magic.md.DGcxCwmE.js +++ b/assets/keycodes_magic.md.BpmQ6-VM.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Magic Keycodes","description":"","frontmatter":{},"headers":[],"relativePath":"keycodes_magic.md","filePath":"keycodes_magic.md","lastUpdated":null}'); const _sfc_main = { name: "keycodes_magic.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Magic Keycodes

Magic Keycodes are prefixed with MAGIC_, and allow you to access the functionality of the deprecated Bootmagic feature after your keyboard has initialized. To use the keycodes, assign them to your keymap as you would any other keycode.

KeyAliasesDescription
QK_MAGIC_SWAP_CONTROL_CAPS_LOCKCL_SWAPSwap Caps Lock and Left Control
QK_MAGIC_UNSWAP_CONTROL_CAPS_LOCKCL_NORMUnswap Caps Lock and Left Control
QK_MAGIC_TOGGLE_CONTROL_CAPS_LOCKCL_TOGGToggle Caps Lock and Left Control swap
QK_MAGIC_CAPS_LOCK_AS_CONTROL_ONCL_CTRLTreat Caps Lock as Control
QK_MAGIC_CAPS_LOCK_AS_CONTROL_OFFCL_CAPSStop treating Caps Lock as Control
QK_MAGIC_SWAP_ESCAPE_CAPS_LOCKEC_SWAPSwap Caps Lock and Escape
QK_MAGIC_UNSWAP_ESCAPE_CAPS_LOCKEC_NORMUnswap Caps Lock and Escape
QK_MAGIC_TOGGLE_ESCAPE_CAPS_LOCKEC_TOGGToggle Caps Lock and Escape swap
QK_MAGIC_SWAP_LCTL_LGUICG_LSWPSwap Left Control and GUI
QK_MAGIC_UNSWAP_LCTL_LGUICG_LNRMUnswap Left Control and GUI
QK_MAGIC_SWAP_RCTL_RGUICG_RSWPSwap Right Control and GUI
QK_MAGIC_UNSWAP_RCTL_RGUICG_RNRMUnswap Right Control and GUI
QK_MAGIC_SWAP_CTL_GUICG_SWAPSwap Control and GUI on both sides
QK_MAGIC_UNSWAP_CTL_GUICG_NORMUnswap Control and GUI on both sides
QK_MAGIC_TOGGLE_CTL_GUICG_TOGGToggle Control and GUI swap on both sides
QK_MAGIC_SWAP_LALT_LGUIAG_LSWPSwap Left Alt and GUI
QK_MAGIC_UNSWAP_LALT_LGUIAG_LNRMUnswap Left Alt and GUI
QK_MAGIC_SWAP_RALT_RGUIAG_RSWPSwap Right Alt and GUI
QK_MAGIC_UNSWAP_RALT_RGUIAG_RNRMUnswap Right Alt and GUI
QK_MAGIC_SWAP_ALT_GUIAG_SWAPSwap Alt and GUI on both sides
QK_MAGIC_UNSWAP_ALT_GUIAG_NORMUnswap Alt and GUI on both sides
QK_MAGIC_TOGGLE_ALT_GUIAG_TOGGToggle Alt and GUI swap on both sides
QK_MAGIC_GUI_OFFGU_OFFDisable the GUI keys
QK_MAGIC_GUI_ONGU_ONEnable the GUI keys
QK_MAGIC_TOGGLE_GUIGU_TOGGToggles the status of the GUI keys
QK_MAGIC_SWAP_GRAVE_ESCGE_SWAPSwap ` and Escape
QK_MAGIC_UNSWAP_GRAVE_ESCGE_NORMUnswap ` and Escape
QK_MAGIC_SWAP_BACKSLASH_BACKSPACEBS_SWAPSwap \\ and Backspace
QK_MAGIC_UNSWAP_BACKSLASH_BACKSPACEBS_NORMUnswap \\ and Backspace
QK_MAGIC_TOGGLE_BACKSLASH_BACKSPACEBS_TOGGToggle \\ and Backspace swap state
QK_MAGIC_NKRO_ONNK_ONEnable N-key rollover
QK_MAGIC_NKRO_OFFNK_OFFDisable N-key rollover
QK_MAGIC_TOGGLE_NKRONK_TOGGToggle N-key rollover
QK_MAGIC_EE_HANDS_LEFTEH_LEFTSet the master half of a split keyboard as the left hand (for EE_HANDS)
QK_MAGIC_EE_HANDS_RIGHTEH_RGHTSet the master half of a split keyboard as the right hand (for EE_HANDS)
', 3); diff --git a/assets/keycodes_magic.md.DGcxCwmE.lean.js b/assets/keycodes_magic.md.BpmQ6-VM.lean.js similarity index 83% rename from assets/keycodes_magic.md.DGcxCwmE.lean.js rename to assets/keycodes_magic.md.BpmQ6-VM.lean.js index 6a594a32788..1e1b2e50032 100644 --- a/assets/keycodes_magic.md.DGcxCwmE.lean.js +++ b/assets/keycodes_magic.md.BpmQ6-VM.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Magic Keycodes","description":"","frontmatter":{},"headers":[],"relativePath":"keycodes_magic.md","filePath":"keycodes_magic.md","lastUpdated":null}'); const _sfc_main = { name: "keycodes_magic.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 3); diff --git a/assets/keycodes_us_ansi_shifted.md.ni3swFhe.js b/assets/keycodes_us_ansi_shifted.md.B710-iU2.js similarity index 96% rename from assets/keycodes_us_ansi_shifted.md.ni3swFhe.js rename to assets/keycodes_us_ansi_shifted.md.B710-iU2.js index 4b811e9943d..9d3fe2ffabe 100644 --- a/assets/keycodes_us_ansi_shifted.md.ni3swFhe.js +++ b/assets/keycodes_us_ansi_shifted.md.B710-iU2.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"US ANSI Shifted Symbols","description":"","frontmatter":{},"headers":[],"relativePath":"keycodes_us_ansi_shifted.md","filePath":"keycodes_us_ansi_shifted.md","lastUpdated":null}'); const _sfc_main = { name: "keycodes_us_ansi_shifted.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

US ANSI Shifted Symbols

These keycodes correspond to characters that are "shifted" on a standard US ANSI keyboard. They do not have keycodes of their own but are simply shortcuts for LSFT(kc), and as such send a Left Shift with the unshifted keycode, not the symbol itself.

Caveats

Unfortunately, these keycodes cannot be used in Mod-Taps or Layer-Taps, since any modifiers specified in the keycode are ignored.

Additionally, you may run into issues when using Remote Desktop Connection on Windows. Because these codes send shift very fast, Remote Desktop may miss the codes.

To fix this, open Remote Desktop Connection, click on "Show Options", open the "Local Resources" tab. In the keyboard section, change the drop down to "On this Computer". This will fix the issue, and allow the characters to work correctly.

Keycodes

KeyAliasesDescription
KC_TILDEKC_TILD~
KC_EXCLAIMKC_EXLM!
KC_AT@
KC_HASH#
KC_DOLLARKC_DLR$
KC_PERCENTKC_PERC%
KC_CIRCUMFLEXKC_CIRC^
KC_AMPERSANDKC_AMPR&
KC_ASTERISKKC_ASTR*
KC_LEFT_PARENKC_LPRN(
KC_RIGHT_PARENKC_RPRN)
KC_UNDERSCOREKC_UNDS_
KC_PLUS+
KC_LEFT_CURLY_BRACEKC_LCBR{
KC_RIGHT_CURLY_BRACEKC_RCBR}
KC_PIPE|
KC_COLONKC_COLN:
KC_DOUBLE_QUOTEKC_DQUO, KC_DQT"
KC_LEFT_ANGLE_BRACKETKC_LABK, KC_LT<
KC_RIGHT_ANGLE_BRACKETKC_RABK, KC_GT>
KC_QUESTIONKC_QUES?
', 8); diff --git a/assets/keycodes_us_ansi_shifted.md.ni3swFhe.lean.js b/assets/keycodes_us_ansi_shifted.md.B710-iU2.lean.js similarity index 84% rename from assets/keycodes_us_ansi_shifted.md.ni3swFhe.lean.js rename to assets/keycodes_us_ansi_shifted.md.B710-iU2.lean.js index a5cb350cc2e..261ad8c8c33 100644 --- a/assets/keycodes_us_ansi_shifted.md.ni3swFhe.lean.js +++ b/assets/keycodes_us_ansi_shifted.md.B710-iU2.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"US ANSI Shifted Symbols","description":"","frontmatter":{},"headers":[],"relativePath":"keycodes_us_ansi_shifted.md","filePath":"keycodes_us_ansi_shifted.md","lastUpdated":null}'); const _sfc_main = { name: "keycodes_us_ansi_shifted.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 8); diff --git a/assets/keymap.md.DEREEx67.js b/assets/keymap.md.DXVjPGjn.js similarity index 99% rename from assets/keymap.md.DEREEx67.js rename to assets/keymap.md.DXVjPGjn.js index 573499ceb1d..aa695739e2c 100644 --- a/assets/keymap.md.DEREEx67.js +++ b/assets/keymap.md.DXVjPGjn.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Keymap Overview","description":"","frontmatter":{},"headers":[],"relativePath":"keymap.md","filePath":"keymap.md","lastUpdated":null}'); const _sfc_main = { name: "keymap.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Keymap Overview

QMK keymaps are defined inside a C source file. The data structure is an array of arrays. The outer array is a list of layer arrays while the inner layer array is a list of keys. Most keyboards define a LAYOUT() macro to help you create this array of arrays.

Keymap and Layers

In QMK, const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] holds multiple layers of keymap information in 16 bit data holding the action code. You can define 32 layers at most.

For trivial key definitions, the higher 8 bits of the action code are all 0 and the lower 8 bits holds the USB HID usage code generated by the key as keycode.

Respective layers can be validated simultaneously. Layers are indexed with 0 to 31 and higher layer has precedence.

Keymap: 32 Layers                   Layer: action code matrix\n-----------------                   ---------------------\nstack of layers                     array_of_action_code[row][column]\n       ____________ precedence               _______________________\n      /           / | high                  / ESC / F1  / F2  / F3   ....\n  31 /___________// |                      /-----/-----/-----/-----\n  30 /___________// |                     / TAB /  Q  /  W  /  E   ....\n  29 /___________/  |                    /-----/-----/-----/-----\n   :   _:_:_:_:_:__ |               :   /LCtrl/  A  /  S  /  D   ....\n   :  / : : : : : / |               :  /  :     :     :     :\n   2 /___________// |               2 `--------------------------\n   1 /___________// |               1 `--------------------------\n   0 /___________/  V low           0 `--------------------------

Sometimes, the action code stored in keymap may be referred as keycode in some documents due to the TMK history.

Keymap Layer Status

The state of the Keymap layer is determined by two 32 bit parameters:

Keymap layer '0' is usually the default_layer, with other layers initially off after booting up the firmware, although this can configured differently in config.h. It is useful to change default_layer when you completely switch a key layout, for example, if you want to switch to Colemak instead of Qwerty.

Initial state of Keymap          Change base layout\n-----------------------          ------------------\n\n  31                               31\n  30                               30\n  29                               29\n   :                                :\n   :                                :   ____________\n   2   ____________                 2  /           /\n   1  /           /              ,->1 /___________/\n,->0 /___________/               |  0\n|                                |\n`--- default_layer = 0           `--- default_layer = 1\n     layer_state   = 0x00000001       layer_state   = 0x00000002

On the other hand, you can change layer_state to overlay the base layer with other layers for features such as navigation keys, function keys (F1-F12), media keys, and/or special actions.

Overlay feature layer\n---------------------      bit|status\n       ____________        ---+------\n  31  /           /        31 |   0\n  30 /___________// -----> 30 |   1\n  29 /___________/  -----> 29 |   1\n   :                        : |   :\n   :   ____________         : |   :\n   2  /           /         2 |   0\n,->1 /___________/  ----->  1 |   1\n|  0                        0 |   0\n|                                 +\n`--- default_layer = 1            |\n     layer_state   = 0x60000002 <-'

Layer Precedence and Transparency

Note that higher layers have higher priority within the stack of layers. The firmware works its way down from the highest active layers to look up keycodes. Once the firmware locates a keycode other than KC_TRNS (transparent) on an active layer, it stops searching, and lower layers aren't referenced.

   ____________\n  /           /  <--- Higher layer\n /  KC_TRNS  //\n/___________//   <--- Lower layer (KC_A)\n/___________/

In the above scenario, the non-transparent keys on the higher layer would be usable, but whenever KC_TRNS (or equivalent) is defined, the keycode (KC_A) on the lower level would be used.

Note: Valid ways to denote transparency on a given layer:

These keycodes allow the processing to fall through to lower layers in search of a non-transparent keycode to process.

Anatomy of a keymap.c

For this example we will walk through an older version of the default Clueboard 66% keymap. You'll find it helpful to open that file in another browser window so you can look at everything in context.

There are 2 main sections of a keymap.c file you'll want to concern yourself with:

Definitions

At the top of the file you'll find this:

c
#include QMK_KEYBOARD_H\n\n// Helpful defines\n#define GRAVE_MODS  (MOD_BIT(KC_LSFT)|MOD_BIT(KC_RSFT)|MOD_BIT(KC_LGUI)|MOD_BIT(KC_RGUI)|MOD_BIT(KC_LALT)|MOD_BIT(KC_RALT))\n\n/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * \n    *  You can use _______ in place for KC_TRNS (transparent)   *\n    *  Or you can use XXXXXXX for KC_NO (NOOP)                  *\n    * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */\n\n// Each layer gets a name for readability.\n// The underscores don't mean anything - you can\n// have a layer called STUFF or any other name.\n// Layer names don't all need to be of the same\n// length, and you can also skip them entirely\n// and just use numbers.\nenum layer_names {\n    _BL,\n    _FL,\n    _CL,\n};

These are some handy definitions we can use when building our keymap and our custom function. The GRAVE_MODS definition will be used later in our custom function, and the following _BL, _FL, and _CL defines make it easier to refer to each of our layers.

Note: You may also find some older keymap files may also have a define(s) for _______ and/or XXXXXXX. These can be used in place for KC_TRNS and KC_NO respectively, making it easier to see what keys a layer is overriding. These definitions are now unnecessary, as they are included by default.

Layers and Keymaps

The main part of this file is the keymaps[] definition. This is where you list your layers and the contents of those layers. This part of the file begins with this definition:

c
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

After this you'll find the layer definitions. Typically you'll have one or more "base layers" (such as QWERTY, Dvorak, or Colemak) and then you'll layer on top of that one or more "function" layers. Due to the way layers are processed you can't overlay a "lower" layer on top of a "higher" layer.

keymaps[][MATRIX_ROWS][MATRIX_COLS] in QMK holds the 16 bit action code (sometimes referred as the quantum keycode) in it. For the keycode representing typical keys, its high byte is 0 and its low byte is the USB HID usage ID for keyboard.

INFO

TMK from which QMK was forked uses const uint8_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] instead and holds the 8 bit keycode.

Base Layer

Here is an example of the Clueboard's base layer:

c
[_BL] = LAYOUT(\n    F(0),    KC_1,    KC_2,   KC_3,   KC_4,   KC_5,   KC_6,   KC_7,   KC_8,   KC_9,    KC_0,     KC_MINS,  KC_EQL,   KC_GRV,  KC_BSPC,          KC_PGUP,\n    KC_TAB,  KC_Q,    KC_W,   KC_E,   KC_R,   KC_T,   KC_Y,   KC_U,   KC_I,   KC_O,    KC_P,     KC_LBRC,  KC_RBRC,  KC_BSLS,                   KC_PGDN,\n    KC_CAPS, KC_A,    KC_S,   KC_D,   KC_F,   KC_G,   KC_H,   KC_J,   KC_K,   KC_L,    KC_SCLN,  KC_QUOT,  KC_NUHS,  KC_ENT,\n    KC_LSFT, KC_NUBS, KC_Z,   KC_X,   KC_C,   KC_V,   KC_B,   KC_N,   KC_M,   KC_COMM, KC_DOT,   KC_SLSH,  KC_INT1,  KC_RSFT,          KC_UP,\n    KC_LCTL, KC_LGUI, KC_LALT, KC_INT5,          KC_SPC,KC_SPC,                        KC_INT4,  KC_RALT,  KC_RCTL,  MO(_FL), KC_LEFT, KC_DOWN, KC_RGHT\n),

Some interesting things to note about this:

Function Overlay Layer

Our function layer is, from a code point of view, no different from the base layer. Conceptually, however, you will build that layer as an overlay, not a replacement. For many people this distinction does not matter, but as you build more complicated layering setups it matters more and more.

c
[_FL] = LAYOUT(\n    KC_GRV,  KC_F1,   KC_F2,  KC_F3,  KC_F4,  KC_F5,  KC_F6,  KC_F7,  KC_F8,  KC_F9,   KC_F10,   KC_F11,   KC_F12,   _______, KC_DEL,           BL_STEP,\n    _______, _______, _______,_______,_______,_______,_______,_______,KC_PSCR,KC_SCRL, KC_PAUS,  _______,  _______,  _______,                   _______,\n    _______, _______, MO(_CL),_______,_______,_______,_______,_______,_______,_______, _______,  _______,  _______,  _______,\n    _______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______,  _______,  _______,  _______,          KC_PGUP,\n    _______, _______, _______, _______,        _______,_______,                        _______,  _______,  _______,  MO(_FL), KC_HOME, KC_PGDN, KC_END\n),

Some interesting things to note:

Nitty Gritty Details

This should have given you a basic overview for creating your own keymap. For more details see the following resources:

We are actively working to improve these docs. If you have suggestions for how they could be made better please file an issue!

', 51); diff --git a/assets/keymap.md.DEREEx67.lean.js b/assets/keymap.md.DXVjPGjn.lean.js similarity index 82% rename from assets/keymap.md.DEREEx67.lean.js rename to assets/keymap.md.DXVjPGjn.lean.js index 11acb77b1a6..3ea616080ca 100644 --- a/assets/keymap.md.DEREEx67.lean.js +++ b/assets/keymap.md.DXVjPGjn.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Keymap Overview","description":"","frontmatter":{},"headers":[],"relativePath":"keymap.md","filePath":"keymap.md","lastUpdated":null}'); const _sfc_main = { name: "keymap.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 51); diff --git a/assets/license_violations.md.B1UpSQTq.js b/assets/license_violations.md.BVZNOCP8.js similarity index 99% rename from assets/license_violations.md.B1UpSQTq.js rename to assets/license_violations.md.BVZNOCP8.js index 0cffc6d97c5..626664f937d 100644 --- a/assets/license_violations.md.B1UpSQTq.js +++ b/assets/license_violations.md.BVZNOCP8.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"License Violations","description":"","frontmatter":{},"headers":[],"relativePath":"license_violations.md","filePath":"license_violations.md","lastUpdated":null}'); const _sfc_main = { name: "license_violations.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

License Violations

QMK Firmware has seen its fair share of license violations, which hurts the community and frustrates the QMK maintainers.

Typical non-compliance includes:

Boards from vendors who don't provide source code are proving to be a significant time sink as the QMK team and other support helpers volunteer their time trying to determine which board someone has before they can help -- and in these cases they can't help. Occasionally this is followed by abuse; something that QMK and its volunteers should not be subjected to, rather redirected to the vendor in question.

The QMK team now actively directs support requests back to each vendor - vendors must provide their own product support for their boards. The QMK team are volunteers, the vendor must not expect the team to act as their support staff.

Offending Vendors

The QMK team cannot tell you which boards you should or should not purchase, but please consider the lack of license compliance from the following vendors before making your decision. If you wish to look at the boards upstream QMK Firmware currently supports, you can search here.

If you own a board from one of the following vendors already, consider asking them for the equivalent QMK source code if it's not already available. With enough customers demanding corresponding source code, vendors may start to change their policies.

VendorReason
AjazzSelling tri-mode boards based on QMK without sources.
Alpaca / AposSelling wireless boards with "open" source code, but linking against closed-source wireless libraries. Crippled source code already unknowingly merged to QMK.
Attack SharkSelling tri-mode boards based on QMK without sources. (Clones of Ajazz?)
BBB KeyboardSelling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless.
ChosfoxSelling L75 wired/wireless boards based on QMK without sources, just via.json provided. Raised on discord over multiple weeks without response.
CIDOOSelling wired boards based on QMK without sources, just via.json provided.
ColorRecoSelling tri-mode boards based on QMK without sources.
CrossDIYSelling wired boards based on QMK without sources.
DarmosharkSelling wired boards based on QMK without sources, just via.json provided.
EpomakerLots of historical keyboards with via.json but no corresponding sources. Wireless code for a small handful provided, pending core cleanup for QMK upstreaming. Most other boards have source nowhere to be seen.
Ergokbd (IFKB)At least their crkbd clone ships with QMK+Vial, seemingly refuses to disclose sources despite multiple customers requesting them.
iLovBeeOfficial 30-day copyright source code request issued Sep 11 2024 due to deception on PR, no response received. Ambiguity on PRs -- marketing says wireless, PR author said wired-only, then included wireless code anyway. Seemingly intentionally deceptive.
KiiBOOMSeems to use the same OEM as Epomaker, same problems.
kprepublicMakes no attempt to release source code, all boards in QMK are reverse-engineered, created, and supported by the community. New board variants magically appear without telling customers they're incompatible with existing QMK versions, in some cases bricking boards or requiring ISP flashing.
LuminkeySelling tri-mode boards based on QMK without sources, just via.json provided.
MeletrixSelling tri-mode boards based on QMK without sources, just via.json provided.
mmd / Smartmmd / i-game.techAmbiguity on PRs -- marketing says wireless, PR author said wired-only, then included wireless code anyway. Seemingly intentionally deceptive.
MyKeyClubCommunity-supported JRIS75, vendor was contacted by community members and refused to cooperate.
owlabSelling wired based on QMK without sources, just via.json provided. Ambiguous as to whether or not wireless firmware is based on QMK, given that their configuration tool looks very similar to VIA.
pressplayidSelling wired and tri-mode boards based on QMK without sources, just via.json provided
qwertykeysSelling wired and tri-mode boards based on QMK without sources, just via.json provided.
RedragonSelling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless.
RiccksSelling tri-mode boards based on QMK without sources.
Royal KludgePRs for fake boards in order to attain VIA compatibility identified. Lots of other keyboards with via.json but no corresponding sources, attempted upstreaming crippled firmware without wireless. Wireless code for some provided, pending core cleanup for QMK upstreaming. PRs including different manufacturer names as well.
Shenzhen HangshengPR submissions with crippled firmware, debating with maintainers about wireless despite marketing material clearly stating tri-mode.
TacworksSelling tri-mode boards based on QMK, crippled firmware already merged into QMK without wireless without QMK team realising.
TKD / VertexSelling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless.
WOBKEYSelling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless.
WeikavSelling tri-mode boards based on QMK without sources, just via.json provided.
WomierSelling tri-mode boards based on QMK without sources, attempted upstreaming crippled firmware without wireless.
Wuque StudioSelling wired and tri-mode boards based on QMK without sources, just via.json provided.
XVXAmbiguity on PRs -- marketing says wireless, PR author said wired-only. Seemingly intentionally deceptive.
YunziiSelling tri-mode boards based on QMK without sources, just via.json provided. Refuses to release sources due to proprietary wireless driver, in direct violation of the GPL.
ZuoyaSelling tri-mode boards based on QMK without sources, just via.json provided.

Violations

Links are not provided above as the QMK team does not wish to inadvertently promote purchases of boards in violation of QMK's license.

Licensing

QMK Firmware's license requires full disclosure of source code for any firmware which is based on QMK. This includes any of the following scenarios:

As per the GPL license requirements, vendors must provide entire source code for the as-shipped firmware.

QMK has traditionally been lenient with this clause -- providing source code to the QMK community is necessary but reproducing the exact build may not be possible. QMK has required functionally-equivalent source code to be made available. In rare cases exact code may be requested; vendors must keep copies regardless.

At minimum, vendors must provide the source code through some distribution mechanism. This could potentially be an clearly available downloadable copy of the code online, a fork of QMK Firmware, or even a DVD accompanying the product in the box.

If sources are unable to be provided in a timely fashion, QMK may revoke the vendor's license, effectively rendering them unable to leverage QMK.

Vendors choosing to keep things closed-source because of a desire to have a "competitive edge" compared to other vendors is unacceptable to both QMK and the community, and is a breach of the QMK license. There's no reason to do so; any new or interesting vendor-specific feature will be quickly replicated by other vendors or the community anyway.

QMK PR Considerations

Vendors who submit PRs to QMK Firmware whilst not providing full sources for all of their license-violating boards will be put on hold until source code for all violating boards is provided. Intentional deception may result in boards being removed from QMK and all future PRs for that manufacturer being denied outright.

Submitting crippled source code in order to attain a merge into QMK Firmware to pave the way for VIA support is unacceptable. This includes submitting a wired-only firmware for a wireless-capable board, or any other PR which does not include key features as-advertised.

Reusing the VID and PID for multiple boards (such as for two variants, wired and wireless) is an unacceptable scenario as this creates confusion for support. Many customers have flashed boards with the wrong firmware, which could have been avoided if vendors were obvious about their board identification mechanisms.

If there is sufficient ambiguity about a board, supporting evidence will need to be presented to the QMK team. This may include impartial third parties who can demonstrate a board's existence and can confirm its feature set, such as well-known content producers; popular review sites or notable video creators may be leveraged. If such evidence is unavailable, as a last resort the vendor may be required to ship a fully functional board in full retail packaging to QMK maintainers for verification. Engineering samples will not be accepted, as one-off boards have been deceptively used in the past.

PRs submitted to upstream QMK should not expect an instant merge just because source code has been provided -- code from OEMs has historically been of a quality lower than QMK standards, so as per the PR checklist submitters should make the changes as small as possible and be prepared to change their implementation.

Detection

If the QMK team identifies or is informed of a license violation from a vendor:

Repeated violations may result in that vendor being disallowed from contributing the QMK in its entirety. In the worst case, the QMK team may choose to revoke a vendor's license to use QMK Firmware outright.

Remediation

Vendors must provide fully-featured source code for each of their identified violations, matching the feature capabilities of their as-shipped products. This will usually be in their own fork of QMK Firmware while awaiting a merge into upstream.

Once all identified violations have been remediated, current and future PRs will no longer be on hold and the vendor will be removed from the offending vendors list above.

', 32); diff --git a/assets/license_violations.md.B1UpSQTq.lean.js b/assets/license_violations.md.BVZNOCP8.lean.js similarity index 83% rename from assets/license_violations.md.B1UpSQTq.lean.js rename to assets/license_violations.md.BVZNOCP8.lean.js index e1919782cf0..c186b1a9532 100644 --- a/assets/license_violations.md.B1UpSQTq.lean.js +++ b/assets/license_violations.md.BVZNOCP8.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"License Violations","description":"","frontmatter":{},"headers":[],"relativePath":"license_violations.md","filePath":"license_violations.md","lastUpdated":null}'); const _sfc_main = { name: "license_violations.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 32); diff --git a/assets/mod_tap.md.DeAaHd-D.js b/assets/mod_tap.md.uROXO4zr.js similarity index 99% rename from assets/mod_tap.md.DeAaHd-D.js rename to assets/mod_tap.md.uROXO4zr.js index 7ec6fd69599..df1a0d73f2c 100644 --- a/assets/mod_tap.md.DeAaHd-D.js +++ b/assets/mod_tap.md.uROXO4zr.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Mod-Tap","description":"","frontmatter":{},"headers":[],"relativePath":"mod_tap.md","filePath":"mod_tap.md","lastUpdated":null}'); const _sfc_main = { name: "mod_tap.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Mod-Tap

The Mod-Tap key MT(mod, kc) acts like a modifier when held, and a regular keycode when tapped. In other words, you can have a key that sends Escape when you tap it, but functions as a Control or Shift key when you hold it down.

The modifiers (mod) argument to the MT() macro are prefixed with MOD_, not KC_:

ModifierDescription
MOD_LCTLLeft Control
MOD_LSFTLeft Shift
MOD_LALTLeft Alt
MOD_LGUILeft GUI (Windows/Command/Super key)
MOD_RCTLRight Control
MOD_RSFTRight Shift
MOD_RALTRight Alt (AltGr)
MOD_RGUIRight GUI (Windows/Command/Super key)
MOD_HYPRHyper (Left Control, Shift, Alt and GUI)
MOD_MEHMeh (Left Control, Shift, and Alt)

You can combine these by ORing them together like so:

c
MT(MOD_LCTL | MOD_LSFT, KC_ESC)

This key would activate Left Control and Left Shift when held, and send Escape when tapped.

For convenience, QMK includes some Mod-Tap shortcuts to make common combinations more compact in your keymap:

KeyAliasesDescription
LCTL_T(kc)CTL_T(kc)Left Control when held, kc when tapped
LSFT_T(kc)SFT_T(kc)Left Shift when held, kc when tapped
LALT_T(kc)ALT_T(kc), LOPT_T(kc), OPT_T(kc)Left Alt when held, kc when tapped
LGUI_T(kc)GUI_T(kc), LCMD_T(kc), LWIN_T(kc), CMD_T(kc), WIN_T(kc)Left GUI when held, kc when tapped
LCS_T(kc)Left Control and Left Shift when held, kc when tapped
LCA_T(kc)Left Control and Left Alt when held, kc when tapped
LCG_T(kc)Left Control and Left GUI when held, kc when tapped
LSA_T(kc)Left Shift and Left Alt when held, kc when tapped
LSG_T(kc)Left Shift and Left GUI when held, kc when tapped
LAG_T(kc)Left Alt and Left GUI when held, kc when tapped
LCSG_T(kc)Left Control, Left Shift and Left GUI when held, kc when tapped
LCAG_T(kc)Left Control, Left Alt and Left GUI when held, kc when tapped
LSAG_T(kc)Left Shift, Left Alt and Left GUI when held, kc when tapped
RCTL_T(kc)Right Control when held, kc when tapped
RSFT_T(kc)Right Shift when held, kc when tapped
RALT_T(kc)ROPT_T(kc), ALGR_T(kc)Right Alt when held, kc when tapped
RGUI_T(kc)RCMD_T(kc), RWIN_T(kc)Right GUI when held, kc when tapped
RCS_T(kc)Right Control and Right Shift when held, kc when tapped
RCA_T(kc)Right Control and Right Alt when held, kc when tapped
RCG_T(kc)Right Control and Right GUI when held, kc when tapped
RSA_T(kc)Right Shift and Right Alt when held, kc when tapped
RSG_T(kc)Right Shift and Right GUI when held, kc when tapped
RAG_T(kc)Right Alt and Right GUI when held, kc when tapped
RCSG_T(kc)Right Control, Right Shift and Right GUI when held, kc when tapped
RCAG_T(kc)Right Control, Right Alt and Right GUI when held, kc when tapped
RSAG_T(kc)Right Shift, Right Alt and Right GUI when held, kc when tapped
MEH_T(kc)Left Control, Left Shift and Left Alt when held, kc when tapped
HYPR_T(kc)Left Control, Left Shift, Left Alt and Left GUI when held, kc when tapped1

1. More information on the Hyper key can be found on this blog post by Brett Terpstra.

Caveats

Currently, the kc argument of MT() is limited to the Basic Keycode set, meaning you can't use keycodes like LCTL(), KC_TILD, or anything greater than 0xFF. This is because QMK uses 16-bit keycodes, of which 3 bits are used for the function identifier, 1 bit for selecting right or left mods, and 4 bits to tell which mods are used, leaving only 8 bits for the keycode. Additionally, if at least one right-handed modifier is specified in a Mod-Tap, it will cause all modifiers specified to become right-handed, so it is not possible to mix and match the two - for example, Left Control and Right Shift would become Right Control and Right Shift.

Expanding this would be complicated, at best. Moving to a 32-bit keycode would solve a lot of this, but would double the amount of space that the keymap matrix uses. And it could potentially cause issues, too. If you need to apply modifiers to your tapped keycode, Tap Dance can be used to accomplish this.

You may also run into issues when using Remote Desktop Connection on Windows. Because these keycodes send key events faster than a human, Remote Desktop could miss them. To fix this, open Remote Desktop Connection, click on "Show Options", open the "Local Resources" tab, and in the keyboard section, change the drop down to "On this Computer". This will fix the issue, and allow the characters to work correctly. It can also be mitigated by increasing TAP_CODE_DELAY.

Intercepting Mod-Taps

Changing tap function

The basic keycode limitation with Mod-Tap can be worked around by intercepting it in process_record_user. For example, shifted keycode KC_DQUO cannot be used with MT() because it is a 16-bit keycode alias of LSFT(KC_QUOT). Modifiers on KC_DQUO will be masked by MT(). But the following custom code can be used to intercept the "tap" function to manually send KC_DQUO:

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case LCTL_T(KC_DQUO):\n            if (record->tap.count && record->event.pressed) {\n                tap_code16(KC_DQUO); // Send KC_DQUO on tap\n                return false;        // Return false to ignore further processing of key\n            }\n            break;\n    }\n    return true;\n}

Changing hold function

Likewise, similar custom code can also be used to intercept the hold function to send custom user key code. The following example uses LT(0, kc) (layer-tap key with no practical use because layer 0 is always active) to add cut, copy and paste function to X,C and V keys when they are held down:

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case LT(0,KC_X):\n            if (!record->tap.count && record->event.pressed) {\n                tap_code16(C(KC_X)); // Intercept hold function to send Ctrl-X\n                return false;\n            }\n            return true;             // Return true for normal processing of tap keycode\n        case LT(0,KC_C):\n            if (!record->tap.count && record->event.pressed) {\n                tap_code16(C(KC_C)); // Intercept hold function to send Ctrl-C\n                return false;\n            }\n            return true;             // Return true for normal processing of tap keycode\n        case LT(0,KC_V):\n            if (!record->tap.count && record->event.pressed) {\n                tap_code16(C(KC_V)); // Intercept hold function to send Ctrl-V\n                return false;\n            }\n            return true;             // Return true for normal processing of tap keycode\n    }\n    return true;\n}

Changing both tap and hold

This last example implements custom tap and hold function with LT(0,KC_NO) to create a single copy-on-tap, paste-on-hold key:

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case LT(0,KC_NO):\n            if (record->tap.count && record->event.pressed) {\n                tap_code16(C(KC_C)); // Intercept tap function to send Ctrl-C\n            } else if (record->event.pressed) {\n                tap_code16(C(KC_V)); // Intercept hold function to send Ctrl-V\n            }\n            return false;\n    }\n    return true;\n}

Other Resources

See the Tap-Hold Configuration Options for additional flags that tweak Mod-Tap behavior.

', 26); diff --git a/assets/mod_tap.md.DeAaHd-D.lean.js b/assets/mod_tap.md.uROXO4zr.lean.js similarity index 82% rename from assets/mod_tap.md.DeAaHd-D.lean.js rename to assets/mod_tap.md.uROXO4zr.lean.js index a75d449324d..b267c6694a9 100644 --- a/assets/mod_tap.md.DeAaHd-D.lean.js +++ b/assets/mod_tap.md.uROXO4zr.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Mod-Tap","description":"","frontmatter":{},"headers":[],"relativePath":"mod_tap.md","filePath":"mod_tap.md","lastUpdated":null}'); const _sfc_main = { name: "mod_tap.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 26); diff --git a/assets/newbs.md.BJFQUUuO.js b/assets/newbs.md.BdYxTpzb.js similarity index 96% rename from assets/newbs.md.BJFQUUuO.js rename to assets/newbs.md.BdYxTpzb.js index 836188e3d20..dd740646a18 100644 --- a/assets/newbs.md.BJFQUUuO.js +++ b/assets/newbs.md.BdYxTpzb.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"The QMK Tutorial","description":"","frontmatter":{},"headers":[],"relativePath":"newbs.md","filePath":"newbs.md","lastUpdated":null}'); const _sfc_main = { name: "newbs.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

The QMK Tutorial

Your computer keyboard has a processor inside of it, similar to the one inside your computer. This processor runs software that is responsible for detecting button presses and informing the computer when keys are pressed. QMK Firmware fills the role of that software, detecting button presses and passing that information on to the host computer. When you build your custom keymap, you are creating an executable program for your keyboard.

QMK tries to put a lot of power into your hands by making easy things easy, and hard things possible. You don't have to know how to program to create powerful keymaps — you only have to follow a few simple syntax rules.

Not sure if your keyboard can run QMK? If it's a mechanical keyboard you built yourself chances are good it can. We support a large number of hobbyist boards. If your current keyboard can't run QMK there are a lot of choices out there for boards that do.

Is This Guide For Me?

If the thought of programming intimidates you, please take a look at our online GUI instead.

Overview

This guide is suitable for everyone who wants to build a keyboard firmware using the source code. If you are already a programmer you will find the process very familiar and easier to follow. There are 3 main sections to this guide:

  1. Setup Your Environment
  2. Building Your First Firmware
  3. Flashing Firmware

This guide is focused on helping someone who has never compiled software before. It makes choices and recommendations based on that viewpoint. There are alternative methods for many of these procedures, and we support most of those alternatives. If you have any doubt about how to accomplish a task you can ask us for guidance.

Additional Resources

Beyond this guide there are several resources you may find helpful while you learn QMK. We've collected them on the Syllabus and Learning Resources pages.

', 11); diff --git a/assets/newbs.md.BJFQUUuO.lean.js b/assets/newbs.md.BdYxTpzb.lean.js similarity index 82% rename from assets/newbs.md.BJFQUUuO.lean.js rename to assets/newbs.md.BdYxTpzb.lean.js index 7d107f5834f..f31cc8254e0 100644 --- a/assets/newbs.md.BJFQUUuO.lean.js +++ b/assets/newbs.md.BdYxTpzb.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"The QMK Tutorial","description":"","frontmatter":{},"headers":[],"relativePath":"newbs.md","filePath":"newbs.md","lastUpdated":null}'); const _sfc_main = { name: "newbs.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 11); diff --git a/assets/newbs_building_firmware.md.9ta3a_sX.js b/assets/newbs_building_firmware.md.CnTqPUAX.js similarity index 98% rename from assets/newbs_building_firmware.md.9ta3a_sX.js rename to assets/newbs_building_firmware.md.CnTqPUAX.js index cddd4fe21a0..3c5d0c2c75f 100644 --- a/assets/newbs_building_firmware.md.9ta3a_sX.js +++ b/assets/newbs_building_firmware.md.CnTqPUAX.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Building Your First Firmware","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_building_firmware.md","filePath":"newbs_building_firmware.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_building_firmware.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Building Your First Firmware

Now that you have set up your build environment you are ready to start building custom firmware. For this section of the guide we will bounce between 3 programs- your file manager, your text editor, and your terminal window. Keep all 3 open until you are done and happy with your keyboard firmware.

Configure Your Build Environment Defaults (Optional)

You can configure your build environment to set the defaults and make working with QMK less tedious. Let's do that now!

Most people new to QMK only have 1 keyboard. You can set this keyboard as your default with the qmk config command. For example, to set your default keyboard to clueboard/66/rev4:

sh
qmk config user.keyboard=clueboard/66/rev4

TIP

The keyboard option is the path relative to the keyboard directory, the above example would be found in qmk_firmware/keyboards/clueboard/66/rev4. If you're unsure you can view a full list of supported keyboards with qmk list-keyboards.

You can also set your default keymap name. Most people use their GitHub username like the keymap name from the previous steps:

sh
qmk config user.keymap=<github_username>

Create a New Keymap

To create your own keymap you'll want to create a copy of the default keymap. If you configured your build environment in the last step you can do that easily with the QMK CLI:

sh
qmk new-keymap

If you did not configure your environment, or you have multiple keyboards, you can specify a keyboard name:

sh
qmk new-keymap -kb <keyboard>

Look at the output from that command, you should see something like this:

Ψ Created a new keymap called <github_username> in: /home/me/qmk_firmware/keyboards/clueboard/66/rev3/keymaps/<github_username>.

This is the location of your new keymap file. Your keyboards default keymap file may be a .json file or a .c file. If your keymap is a .json file it can be converted to a .c file using QMK's json2c utility.

Open keymap.c In Your Favorite Text Editor

Open your keymap.c file in your text editor. Inside this file you'll find the structure that controls how your keyboard behaves. At the top of keymap.c there may be some defines and enums that make the keymap easier to read. Farther down you'll find a line that looks like this:

c
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {

This line indicates where the list of Layers begins. Below that you'll find lines containing LAYOUT, and these lines indicate the start of a layer. Below that line is the list of keys that comprise a particular layer.

WARNING

When editing your keymap file be careful not to add or remove any commas. If you do, you will prevent your firmware from compiling and it may not be easy to figure out where the extra, or missing, comma is.

Customize The Layout To Your Liking

How to complete this step is entirely up to you. Make the one change that's been bugging you, or completely rework everything. You can remove layers if you don't need all of them, or add layers up to a total of 32. There are a lot of features in QMK, explore the sidebar to the left under "Using QMK" to see the full list. To get you started here are a few of the easier to use features:

TIP

While you get a feel for how keymaps work, keep each change small. Bigger changes make it harder to debug any problems that arise.

Build Your Firmware

When your changes to the keymap are complete you will need to build the firmware. To do so go back to your terminal window and run the compile command:

sh
qmk compile

If you did not configure defaults for your environment, or you have multiple keyboards, you can specify a keyboard and/or keymap:

sh
qmk compile -kb <keyboard> -km <keymap>

While this compiles you will have a lot of output going to the screen informing you of what files are being compiled. It should end with output that looks similar to this:

Linking: .build/planck_rev5_default.elf                                                             [OK]\nCreating load file for flashing: .build/planck_rev5_default.hex                                     [OK]\nCopying planck_rev5_default.hex to qmk_firmware folder                                              [OK]\nChecking file size of planck_rev5_default.hex                                                       [OK]\n * The firmware size is fine - 27312/28672 (95%, 1360 bytes free)

Flash Your Firmware

Move on to Flashing Firmware to learn how to write your new firmware to your keyboard.

', 35); diff --git a/assets/newbs_building_firmware.md.9ta3a_sX.lean.js b/assets/newbs_building_firmware.md.CnTqPUAX.lean.js similarity index 84% rename from assets/newbs_building_firmware.md.9ta3a_sX.lean.js rename to assets/newbs_building_firmware.md.CnTqPUAX.lean.js index 72b4e169cda..0d816b4e1d3 100644 --- a/assets/newbs_building_firmware.md.9ta3a_sX.lean.js +++ b/assets/newbs_building_firmware.md.CnTqPUAX.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Building Your First Firmware","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_building_firmware.md","filePath":"newbs_building_firmware.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_building_firmware.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 35); diff --git a/assets/newbs_building_firmware_configurator.md.D3v81Bes.js b/assets/newbs_building_firmware_configurator.md.B9r4a1PW.js similarity index 94% rename from assets/newbs_building_firmware_configurator.md.D3v81Bes.js rename to assets/newbs_building_firmware_configurator.md.B9r4a1PW.js index 153bfaa603a..0ab549216c6 100644 --- a/assets/newbs_building_firmware_configurator.md.D3v81Bes.js +++ b/assets/newbs_building_firmware_configurator.md.B9r4a1PW.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/anw9cOL.png"; const __pageData = JSON.parse('{"title":"QMK Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_building_firmware_configurator.md","filePath":"newbs_building_firmware_configurator.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_building_firmware_configurator.md" }; diff --git a/assets/newbs_building_firmware_configurator.md.D3v81Bes.lean.js b/assets/newbs_building_firmware_configurator.md.B9r4a1PW.lean.js similarity index 85% rename from assets/newbs_building_firmware_configurator.md.D3v81Bes.lean.js rename to assets/newbs_building_firmware_configurator.md.B9r4a1PW.lean.js index 5edafa56ac8..7844970d946 100644 --- a/assets/newbs_building_firmware_configurator.md.D3v81Bes.lean.js +++ b/assets/newbs_building_firmware_configurator.md.B9r4a1PW.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/anw9cOL.png"; const __pageData = JSON.parse('{"title":"QMK Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_building_firmware_configurator.md","filePath":"newbs_building_firmware_configurator.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_building_firmware_configurator.md" }; diff --git a/assets/newbs_building_firmware_workflow.md.DGvCwy2t.js b/assets/newbs_building_firmware_workflow.md.DqJTVU7C.js similarity index 99% rename from assets/newbs_building_firmware_workflow.md.DGvCwy2t.js rename to assets/newbs_building_firmware_workflow.md.DqJTVU7C.js index 34ce7bdf53c..bfe3f5d9185 100644 --- a/assets/newbs_building_firmware_workflow.md.DGvCwy2t.js +++ b/assets/newbs_building_firmware_workflow.md.DqJTVU7C.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Building QMK with GitHub Userspace","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_building_firmware_workflow.md","filePath":"newbs_building_firmware_workflow.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_building_firmware_workflow.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Building QMK with GitHub Userspace

This is an intermediate QMK tutorial to setup an out-of-tree build environment with a personal GitHub repository. It avoids using a fork of the QMK firmware to store and build your keymap within its source tree. Keymap files will instead be stored in your own personal GitHub repository, in Userspace format, and built with an action workflow. Unlike the default tutorial, this guide requires some familiarity with using Git.

Is This Guide For Me?

This is a lean setup to avoid space-consuming local build environment in your computer. Troubleshooting compile-time errors will be slower with commit uploads to GitHub for the compiler workflow.

Prerequisites

The following are required to get started:

Environment Setup

TIP

If you are familiar with using github.dev, you can skip to step 2 and commit the code files that follows directly on GitHub using the web-based VSCode editor.

1. Install Git

A working Git client is required for your local operating system to commit and push changes to GitHub.

', 10); diff --git a/assets/newbs_building_firmware_workflow.md.DGvCwy2t.lean.js b/assets/newbs_building_firmware_workflow.md.DqJTVU7C.lean.js similarity index 94% rename from assets/newbs_building_firmware_workflow.md.DGvCwy2t.lean.js rename to assets/newbs_building_firmware_workflow.md.DqJTVU7C.lean.js index 14c495adfca..69b679f554c 100644 --- a/assets/newbs_building_firmware_workflow.md.DGvCwy2t.lean.js +++ b/assets/newbs_building_firmware_workflow.md.DqJTVU7C.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Building QMK with GitHub Userspace","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_building_firmware_workflow.md","filePath":"newbs_building_firmware_workflow.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_building_firmware_workflow.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 10); diff --git a/assets/newbs_external_userspace.md.BMvW5z9_.js b/assets/newbs_external_userspace.md.Cb3-L9ql.js similarity index 99% rename from assets/newbs_external_userspace.md.BMvW5z9_.js rename to assets/newbs_external_userspace.md.Cb3-L9ql.js index 0af0b650483..f67514ab700 100644 --- a/assets/newbs_external_userspace.md.BMvW5z9_.js +++ b/assets/newbs_external_userspace.md.Cb3-L9ql.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/hcegguh.png"; const _imports_1 = "/CWYmsk8.png"; const _imports_2 = "/EVkxOt1.png"; diff --git a/assets/newbs_external_userspace.md.BMvW5z9_.lean.js b/assets/newbs_external_userspace.md.Cb3-L9ql.lean.js similarity index 86% rename from assets/newbs_external_userspace.md.BMvW5z9_.lean.js rename to assets/newbs_external_userspace.md.Cb3-L9ql.lean.js index bab1a2c268b..4039b54d8ec 100644 --- a/assets/newbs_external_userspace.md.BMvW5z9_.lean.js +++ b/assets/newbs_external_userspace.md.Cb3-L9ql.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/hcegguh.png"; const _imports_1 = "/CWYmsk8.png"; const _imports_2 = "/EVkxOt1.png"; diff --git a/assets/newbs_flashing.md.CNt3RwGF.js b/assets/newbs_flashing.md.DuAdv3f4.js similarity index 98% rename from assets/newbs_flashing.md.CNt3RwGF.js rename to assets/newbs_flashing.md.DuAdv3f4.js index 1ed463f2ce7..5e1231e5f4c 100644 --- a/assets/newbs_flashing.md.CNt3RwGF.js +++ b/assets/newbs_flashing.md.DuAdv3f4.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Flashing Your Keyboard","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_flashing.md","filePath":"newbs_flashing.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_flashing.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Flashing Your Keyboard

Now that you've built a custom firmware file you'll want to flash your keyboard.

Put Your Keyboard into DFU (Bootloader) Mode

In order to flash your custom firmware you must first put your keyboard into a special flashing mode. While it is in this mode you will not be able to type or otherwise use your keyboard. It is very important that you do not unplug the keyboard or otherwise interrupt the flashing process while the firmware is being written.

Different keyboards have different ways to enter this special mode. If your PCB currently runs QMK, TMK, or PS2AVRGB (Bootmapper Client) and you have not been given specific instructions, try the following, in order:

If you've attempted all of the above to no avail, and the main chip on the board says STM32 or RP2-B1 on it, this may be a bit more complicated. Generally your best bet is to ask on Discord for assistance. It's likely some photos of the board will be asked for -- if you can get them ready beforehand it'll help move things along!

Otherwise, you should see a message in yellow, similar to this in QMK Toolbox:

*** DFU device connected: Atmel Corp. ATmega32U4 (03EB:2FF4:0000)

and this bootloader device will also be present in Device Manager, System Information.app, or lsusb.

Flashing Your Keyboard with QMK Toolbox

The simplest way to flash your keyboard will be with the QMK Toolbox.

However, the Toolbox is currently only available for Windows and macOS. If you're using Linux (or just wish to flash the firmware from the command line), skip to the Flash your Keyboard from the Command Line section.

TIP

QMK Toolbox is not necessary for flashing RP2040 devices.

Load the File into QMK Toolbox

Begin by opening the QMK Toolbox application. You'll want to locate the firmware file in Finder or Explorer. Your keyboard firmware may be in one of two formats- .hex or .bin. QMK tries to copy the appropriate one for your keyboard into the root qmk_firmware directory.

If you are on Windows or macOS, there are commands you can use to easily open the current folder in Explorer or Finder.

', 17); diff --git a/assets/newbs_flashing.md.CNt3RwGF.lean.js b/assets/newbs_flashing.md.DuAdv3f4.lean.js similarity index 92% rename from assets/newbs_flashing.md.CNt3RwGF.lean.js rename to assets/newbs_flashing.md.DuAdv3f4.lean.js index bc0bfa48b8a..ba86846980d 100644 --- a/assets/newbs_flashing.md.CNt3RwGF.lean.js +++ b/assets/newbs_flashing.md.DuAdv3f4.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock, l as createBaseVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Flashing Your Keyboard","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_flashing.md","filePath":"newbs_flashing.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_flashing.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 17); diff --git a/assets/newbs_getting_started.md.C2FE2YNu.js b/assets/newbs_getting_started.md.C_v7nD1l.js similarity index 99% rename from assets/newbs_getting_started.md.C2FE2YNu.js rename to assets/newbs_getting_started.md.C_v7nD1l.js index 6e7e089162e..1bfff8e6142 100644 --- a/assets/newbs_getting_started.md.C2FE2YNu.js +++ b/assets/newbs_getting_started.md.C_v7nD1l.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode, D as resolveComponent, o as openBlock } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Setting Up Your QMK Environment","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_getting_started.md","filePath":"newbs_getting_started.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_getting_started.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Setting Up Your QMK Environment

Before you can build keymaps, you need to install some software and set up your build environment. This only has to be done once no matter how many keyboards you plan to compile firmware for.

1. Prerequisites

There are a few pieces of software you'll need to get started.

TIP

If you haven't worked with the Linux/Unix command line before, there are a few basic concepts and commands you should learn. These resources will teach you enough to be able to work with QMK.

2. Prepare Your Build Environment

We've tried to make QMK as easy to set up as possible. You only have to prepare your Linux or Unix environment, then let QMK install the rest.

', 8); diff --git a/assets/newbs_getting_started.md.C2FE2YNu.lean.js b/assets/newbs_getting_started.md.C_v7nD1l.lean.js similarity index 98% rename from assets/newbs_getting_started.md.C2FE2YNu.lean.js rename to assets/newbs_getting_started.md.C_v7nD1l.lean.js index 1a4a208e3ce..97b43de98c4 100644 --- a/assets/newbs_getting_started.md.C2FE2YNu.lean.js +++ b/assets/newbs_getting_started.md.C_v7nD1l.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode, D as resolveComponent, o as openBlock } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Setting Up Your QMK Environment","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_getting_started.md","filePath":"newbs_getting_started.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_getting_started.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 8); diff --git a/assets/newbs_git_best_practices.md.C0QiIl7V.js b/assets/newbs_git_best_practices.md.CD2B0i-4.js similarity index 94% rename from assets/newbs_git_best_practices.md.C0QiIl7V.js rename to assets/newbs_git_best_practices.md.CD2B0i-4.js index bfe9034d5ee..cee73017bd3 100644 --- a/assets/newbs_git_best_practices.md.C0QiIl7V.js +++ b/assets/newbs_git_best_practices.md.CD2B0i-4.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Best Git Practices for Working with QMK","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_git_best_practices.md","filePath":"newbs_git_best_practices.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_git_best_practices.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Best Git Practices for Working with QMK

Or, "How I Learned to Stop Worrying and Love Git."

This section aims to instruct novices in the best ways to have a smooth experience in contributing to QMK. We will walk through the process of contributing to QMK, detailing some ways to make this task easier, and then later we'll break some things in order to teach you how to fix them.

This section assumes a few things:

  1. You have a GitHub account, and have forked the qmk_firmware repository to your account.
  2. You've set up both your build environment and QMK.

', 7); diff --git a/assets/newbs_git_best_practices.md.C0QiIl7V.lean.js b/assets/newbs_git_best_practices.md.CD2B0i-4.lean.js similarity index 84% rename from assets/newbs_git_best_practices.md.C0QiIl7V.lean.js rename to assets/newbs_git_best_practices.md.CD2B0i-4.lean.js index 0da0adc200b..7434af82f55 100644 --- a/assets/newbs_git_best_practices.md.C0QiIl7V.lean.js +++ b/assets/newbs_git_best_practices.md.CD2B0i-4.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Best Git Practices for Working with QMK","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_git_best_practices.md","filePath":"newbs_git_best_practices.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_git_best_practices.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 7); diff --git a/assets/newbs_git_resolving_merge_conflicts.md.CXCvlz0T.js b/assets/newbs_git_resolving_merge_conflicts.md.Bv9iycWi.js similarity index 98% rename from assets/newbs_git_resolving_merge_conflicts.md.CXCvlz0T.js rename to assets/newbs_git_resolving_merge_conflicts.md.Bv9iycWi.js index b56014fc01b..9fc6322c3a4 100644 --- a/assets/newbs_git_resolving_merge_conflicts.md.CXCvlz0T.js +++ b/assets/newbs_git_resolving_merge_conflicts.md.Bv9iycWi.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Resolving Merge Conflicts","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_git_resolving_merge_conflicts.md","filePath":"newbs_git_resolving_merge_conflicts.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_git_resolving_merge_conflicts.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Resolving Merge Conflicts

Sometimes when your work in a branch takes a long time to complete, changes that have been made by others conflict with changes you have made to your branch when you open a pull request. This is called a merge conflict, and is what happens when multiple people edit the same parts of the same files.

TIP

This document builds upon the concepts detailed in Your Fork's Master: Update Often, Commit Never. If you are not familiar with that document, please read it first, then return here.

Rebasing Your Changes

A rebase is Git's way of taking changes that were applied at one point in the commit history, reversing them, and then applying the same changes at another point. In the case of a merge conflict, you can rebase your branch to grab the changes that were made between when you created your branch and the present time.

To start, run the following:

git fetch upstream\ngit rev-list --left-right --count HEAD...upstream/master

The git rev-list command entered here returns the number of commits that differ between the current branch and QMK's master branch. We run git fetch first to make sure we have the refs that represent the current state of the upstream repo. The output of the git rev-list command entered returns two numbers:

$ git rev-list --left-right --count HEAD...upstream/master\n7       35

The first number represents the number of commits on the current branch since it was created, and the second number is the number of commits made to upstream/master since the current branch was created, and thus, the changes that are not recorded in the current branch.

Now that the current states of both the current branch and the upstream repo are known, we can start a rebase operation:

git rebase upstream/master

This tells Git to undo the commits on the current branch, and then reapply them against QMK's master branch.

$ git rebase upstream/master\nFirst, rewinding head to replay your work on top of it...\nApplying: Commit #1\nUsing index info to reconstruct a base tree...\nM       conflicting_file_1.txt\nFalling back to patching base and 3-way merge...\nAuto-merging conflicting_file_1.txt\nCONFLICT (content): Merge conflict in conflicting_file_1.txt\nerror: Failed to merge in the changes.\nhint: Use 'git am --show-current-patch' to see the failed patch\nPatch failed at 0001 Commit #1\n\nResolve all conflicts manually, mark them as resolved with\n"git add/rm <conflicted_files>", then run "git rebase --continue".\nYou can instead skip this commit: run "git rebase --skip".\nTo abort and get back to the state before "git rebase", run "git rebase --abort".

This tells us that we have a merge conflict, and gives the name of the file with the conflict. Open the conflicting file in your text editor, and somewhere in the file, you'll find something like this:

<<<<<<< HEAD\n<p>For help with any issues, email us at support@webhost.us.</p>\n=======\n<p>Need help? Email support@webhost.us.</p>\n>>>>>>> Commit #1

The line <<<<<<< HEAD marks the beginning of a merge conflict, and the >>>>>>> Commit #1 line marks the end, with the conflicting sections separated by =======. The part on the HEAD side is from the QMK master version of the file, and the part marked with the commit message is from the current branch and commit.

Because Git tracks changes to files rather than the contents of the files directly, if Git can't find the text that was in the file previous to the commit that was made, it won't know how to edit the file. Re-editing the file will solve the conflict. Make your changes, and then save the file.

<p>Need help? Email support@webhost.us.</p>

Now run:

git add conflicting_file_1.txt\ngit rebase --continue

Git logs the changes to the conflicting file, and continues applying the commits from our branch until it reaches the end.

', 22); diff --git a/assets/newbs_git_resolving_merge_conflicts.md.CXCvlz0T.lean.js b/assets/newbs_git_resolving_merge_conflicts.md.Bv9iycWi.lean.js similarity index 85% rename from assets/newbs_git_resolving_merge_conflicts.md.CXCvlz0T.lean.js rename to assets/newbs_git_resolving_merge_conflicts.md.Bv9iycWi.lean.js index 5a51cdbfae1..4fd65c33b23 100644 --- a/assets/newbs_git_resolving_merge_conflicts.md.CXCvlz0T.lean.js +++ b/assets/newbs_git_resolving_merge_conflicts.md.Bv9iycWi.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Resolving Merge Conflicts","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_git_resolving_merge_conflicts.md","filePath":"newbs_git_resolving_merge_conflicts.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_git_resolving_merge_conflicts.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 22); diff --git a/assets/newbs_git_resynchronize_a_branch.md.zadFIEsX.js b/assets/newbs_git_resynchronize_a_branch.md.CTRR0z_u.js similarity index 98% rename from assets/newbs_git_resynchronize_a_branch.md.zadFIEsX.js rename to assets/newbs_git_resynchronize_a_branch.md.CTRR0z_u.js index 5f4c1eed794..3aed6e3ed5c 100644 --- a/assets/newbs_git_resynchronize_a_branch.md.zadFIEsX.js +++ b/assets/newbs_git_resynchronize_a_branch.md.CTRR0z_u.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Resynchronizing an Out-of-Sync Git Branch","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_git_resynchronize_a_branch.md","filePath":"newbs_git_resynchronize_a_branch.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_git_resynchronize_a_branch.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Resynchronizing an Out-of-Sync Git Branch

Suppose you have committed to your master branch, and now need to update your QMK repository. You could git pull QMK's master branch into your own, but GitHub will tell you that your branch is a number of commits ahead of qmk:master, which can create issues if you want to make a pull request to QMK.

TIP

This document builds upon the concepts detailed in Your Fork's Master: Update Often, Commit Never. If you are not familiar with that document, please read it first, then return here.

Backing Up the Changes on Your Own Master Branch (Optional)

No one wants to lose work if it can be helped. If you want to save the changes you've already made to your master branch, the simplest way to do so is to simply create a duplicate of your "dirty" master branch:

git branch old_master master

Now you have a branch named old_master that is a duplicate of your master branch.

Resynchronizing Your Branch

Now it's time to resynchronize your master branch. For this step, you'll want to have QMK's repository configured as a remote in Git. To check your configured remotes, run git remote -v, which should return something similar to:

QMKuser ~/qmk_firmware (master)\n$ git remote -v\norigin  https://github.com/<your_username>/qmk_firmware.git (fetch)\norigin  https://github.com/<your_username>/qmk_firmware.git (push)\nupstream        https://github.com/qmk/qmk_firmware.git (fetch)\nupstream        https://github.com/qmk/qmk_firmware.git (push)

If you only see one fork referenced:

QMKuser ~/qmk_firmware (master)\n$ git remote -v\norigin  https://github.com/qmk/qmk_firmware.git (fetch)\norigin  https://github.com/qmk/qmk_firmware.git (push)

add a new remote with:

git remote add upstream https://github.com/qmk/qmk_firmware.git

Then, redirect the origin remote to your own fork with:

git remote set-url origin https://github.com/<your_username>/qmk_firmware.git

Now that you have both remotes configured, you need to update the references for the upstream repository, which is QMK's, by running:

git fetch --recurse-submodules upstream

At this point, resynchronize your branch to QMK's by running:

git reset --recurse-submodules --hard upstream/master

These steps will update the repository on your computer, but your GitHub fork will still be out of sync. To resynchronize your fork on GitHub, you need to push to your fork, instructing Git to override any remote changes that are not reflected in your local repository. To do this, run:

git push --recurse-submodules=on-demand --force-with-lease

WARNING

DO NOT run git push --recurse-submodules=on-demand --force-with-lease on a fork to which other users post commits. This will erase their commits.

Now your GitHub fork, your local files, and QMK's repository are all the same. From here you can make further needed changes (use a branch!) and post them as normal.

', 24); diff --git a/assets/newbs_git_resynchronize_a_branch.md.zadFIEsX.lean.js b/assets/newbs_git_resynchronize_a_branch.md.CTRR0z_u.lean.js similarity index 85% rename from assets/newbs_git_resynchronize_a_branch.md.zadFIEsX.lean.js rename to assets/newbs_git_resynchronize_a_branch.md.CTRR0z_u.lean.js index ad6f5ba225b..e31e9cb36d8 100644 --- a/assets/newbs_git_resynchronize_a_branch.md.zadFIEsX.lean.js +++ b/assets/newbs_git_resynchronize_a_branch.md.CTRR0z_u.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Resynchronizing an Out-of-Sync Git Branch","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_git_resynchronize_a_branch.md","filePath":"newbs_git_resynchronize_a_branch.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_git_resynchronize_a_branch.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 24); diff --git a/assets/newbs_git_using_your_master_branch.md.DRDsA_pU.js b/assets/newbs_git_using_your_master_branch.md.DmucP9Dp.js similarity index 98% rename from assets/newbs_git_using_your_master_branch.md.DRDsA_pU.js rename to assets/newbs_git_using_your_master_branch.md.DmucP9Dp.js index b5206a0e332..ec9f2cb64e5 100644 --- a/assets/newbs_git_using_your_master_branch.md.DRDsA_pU.js +++ b/assets/newbs_git_using_your_master_branch.md.DmucP9Dp.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse(`{"title":"Your Fork's Master: Update Often, Commit Never","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_git_using_your_master_branch.md","filePath":"newbs_git_using_your_master_branch.md","lastUpdated":null}`); const _sfc_main = { name: "newbs_git_using_your_master_branch.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Your Fork's Master: Update Often, Commit Never

It is highly recommended for QMK development, regardless of what is being done or where, to keep your master branch updated, but never commit to it. Instead, do all your changes in a development branch and issue pull requests from your branches when you're developing.

To reduce the chances of merge conflicts — instances where two or more users have edited the same part of a file concurrently — keep your master branch relatively up-to-date, and start any new developments by creating a new branch.

Updating your master branch

To keep your master branch updated, it is recommended to add the QMK Firmware repository ("repo") as a remote repository in git. To do this, open your Git command line interface and enter:

git remote add upstream https://github.com/qmk/qmk_firmware.git

TIP

The name upstream is arbitrary, but a common convention; you can give the QMK remote any name that suits you. Git's remote command uses the syntax git remote add <name> <url>, <name> being shorthand for the remote repo. This name can be used with many Git commands, including but not limited to fetch, pull and push, to specify the remote repo on which to act.

To verify that the repository has been added, run git remote -v, which should return the following:

$ git remote -v\norigin  https://github.com/<your_username>/qmk_firmware.git (fetch)\norigin  https://github.com/<your_username>/qmk_firmware.git (push)\nupstream        https://github.com/qmk/qmk_firmware.git (fetch)\nupstream        https://github.com/qmk/qmk_firmware.git (push)

Now that this is done, you can check for updates to the repo by running git fetch upstream. This retrieves the branches and tags — collectively referred to as "refs" — from the QMK repo, which now has the nickname upstream. We can now compare the data on our fork origin to that held by QMK.

To update your fork's master, run the following, hitting the Enter key after each line:

git checkout master\ngit fetch upstream\ngit pull upstream master\ngit push origin master

This switches you to your master branch, retrieves the refs from the QMK repo, downloads the current QMK master branch to your computer, and then uploads it to your fork.

Making Changes

To make changes, create a new branch by entering:

git checkout -b dev_branch\ngit push --set-upstream origin dev_branch

This creates a new branch named dev_branch, checks it out, and then saves the new branch to your fork. The --set-upstream argument tells git to use your fork and the dev_branch branch every time you use git push or git pull from this branch. It only needs to be used on the first push; after that, you can safely use git push or git pull, without the rest of the arguments.

TIP

With git push, you can use -u in place of --set-upstream-u is an alias for --set-upstream.

You can name your branch nearly anything you want, though it is recommended to name it something related to the changes you are going to make.

By default git checkout -b will base your new branch on the branch that is currently checked out. You can base your new branch on an existing branch that is not checked out by adding the name of the existing branch to the command:

git checkout -b dev_branch master

Now that you have a development branch, open your text editor and make whatever changes you need to make. It is recommended to make many small commits to your branch; that way, any change that causes issues can be more easily traced and undone if needed. To make your changes, edit and save any files that need to be updated, add them to Git's staging area, and then commit them to your branch:

git add path/to/updated_file\ngit commit -m "My commit message."

git add adds files that have been changed to Git's staging area, which is Git's "loading zone." This contains the changes that are going to be committed by git commit, which saves the changes to the repo. Use descriptive commit messages so you can know what was changed at a glance.

TIP

If you've changed multiple files, you can use git add -- path/to/file1 path/to/file2 ... to add all your desired files.

Publishing Your Changes

The last step is to push your changes to your fork. To do this, enter git push. Git will then publish the current state of dev_branch to your fork.

', 27); diff --git a/assets/newbs_git_using_your_master_branch.md.DRDsA_pU.lean.js b/assets/newbs_git_using_your_master_branch.md.DmucP9Dp.lean.js similarity index 85% rename from assets/newbs_git_using_your_master_branch.md.DRDsA_pU.lean.js rename to assets/newbs_git_using_your_master_branch.md.DmucP9Dp.lean.js index 8b65eb504e9..11e886437ea 100644 --- a/assets/newbs_git_using_your_master_branch.md.DRDsA_pU.lean.js +++ b/assets/newbs_git_using_your_master_branch.md.DmucP9Dp.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse(`{"title":"Your Fork's Master: Update Often, Commit Never","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_git_using_your_master_branch.md","filePath":"newbs_git_using_your_master_branch.md","lastUpdated":null}`); const _sfc_main = { name: "newbs_git_using_your_master_branch.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 27); diff --git a/assets/newbs_learn_more_resources.md.DRV8PTJE.js b/assets/newbs_learn_more_resources.md.DyOwWVHH.js similarity index 96% rename from assets/newbs_learn_more_resources.md.DRV8PTJE.js rename to assets/newbs_learn_more_resources.md.DyOwWVHH.js index bd0d7c88cd8..06317eeecb0 100644 --- a/assets/newbs_learn_more_resources.md.DRV8PTJE.js +++ b/assets/newbs_learn_more_resources.md.DyOwWVHH.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Learning Resources","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_learn_more_resources.md","filePath":"newbs_learn_more_resources.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_learn_more_resources.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Learning Resources

These resources are aimed at giving new members in the QMK community more understanding to the information provided in the Newbs docs.

QMK resources

Command Line resources

Text Editor resources

Not sure which text editor to use?

Editors specifically made for code:

Git resources

', 13); diff --git a/assets/newbs_learn_more_resources.md.DRV8PTJE.lean.js b/assets/newbs_learn_more_resources.md.DyOwWVHH.lean.js similarity index 84% rename from assets/newbs_learn_more_resources.md.DRV8PTJE.lean.js rename to assets/newbs_learn_more_resources.md.DyOwWVHH.lean.js index 76c4b71857a..51b2bf5c499 100644 --- a/assets/newbs_learn_more_resources.md.DRV8PTJE.lean.js +++ b/assets/newbs_learn_more_resources.md.DyOwWVHH.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Learning Resources","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_learn_more_resources.md","filePath":"newbs_learn_more_resources.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_learn_more_resources.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 13); diff --git a/assets/newbs_testing_debugging.md.W9JGDFfp.js b/assets/newbs_testing_debugging.md.CSBTkz5Y.js similarity index 90% rename from assets/newbs_testing_debugging.md.W9JGDFfp.js rename to assets/newbs_testing_debugging.md.CSBTkz5Y.js index acab3f61122..212c30e499a 100644 --- a/assets/newbs_testing_debugging.md.W9JGDFfp.js +++ b/assets/newbs_testing_debugging.md.CSBTkz5Y.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Testing and Debugging","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_testing_debugging.md","filePath":"newbs_testing_debugging.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_testing_debugging.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Testing and Debugging

Testing

Moved here

Debugging

Moved here

', 5); diff --git a/assets/newbs_testing_debugging.md.W9JGDFfp.lean.js b/assets/newbs_testing_debugging.md.CSBTkz5Y.lean.js similarity index 84% rename from assets/newbs_testing_debugging.md.W9JGDFfp.lean.js rename to assets/newbs_testing_debugging.md.CSBTkz5Y.lean.js index c8f1d7bd3fa..01e045f6103 100644 --- a/assets/newbs_testing_debugging.md.W9JGDFfp.lean.js +++ b/assets/newbs_testing_debugging.md.CSBTkz5Y.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Testing and Debugging","description":"","frontmatter":{},"headers":[],"relativePath":"newbs_testing_debugging.md","filePath":"newbs_testing_debugging.md","lastUpdated":null}'); const _sfc_main = { name: "newbs_testing_debugging.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 5); diff --git a/assets/one_shot_keys.md.CoZULJTw.js b/assets/one_shot_keys.md.DVKbOw_R.js similarity index 99% rename from assets/one_shot_keys.md.CoZULJTw.js rename to assets/one_shot_keys.md.DVKbOw_R.js index 81a1c1e766a..af6c45ca600 100644 --- a/assets/one_shot_keys.md.CoZULJTw.js +++ b/assets/one_shot_keys.md.DVKbOw_R.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"One Shot Keys","description":"","frontmatter":{},"headers":[],"relativePath":"one_shot_keys.md","filePath":"one_shot_keys.md","lastUpdated":null}'); const _sfc_main = { name: "one_shot_keys.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

One Shot Keys

One shot keys are keys that remain active until the next key is pressed, and then are released. This allows you to type keyboard combinations without pressing more than one key at a time. These keys are usually called "Sticky keys" or "Dead keys".

For example, if you define a key as OSM(MOD_LSFT), you can type a capital A character by first pressing and releasing shift, and then pressing and releasing A. Your computer will see the shift key being held the moment shift is pressed, and it will see the shift key being released immediately after A is released.

One shot keys also work as normal modifiers. If you hold down a one shot key and type other keys, your one shot will be released immediately after you let go of the key.

Additionally, hitting keys five times in a short period will lock that key. This applies for both One Shot Modifiers and One Shot Layers, and is controlled by the ONESHOT_TAP_TOGGLE define.

You can control the behavior of one shot keys by defining these in config.h:

c
#define ONESHOT_TAP_TOGGLE 5  /* Tapping this number of times holds the key until tapped once again. */\n#define ONESHOT_TIMEOUT 5000  /* Time (in ms) before the one shot key is released */

Keycodes

KeyAliasesDescription
QK_ONE_SHOT_TOGGLEOS_TOGGToggles One Shot keys status
QK_ONE_SHOT_ONOS_ONTurns One Shot keys on
QK_ONE_SHOT_OFFOS_OFFTurns One Shot keys off
OSL(layer)Switch to layer for one keypress
OSM(mod)Hold mod for one keypress
OS_LCTLHold Left Control for one keypress
OS_LSFTHold Left Shift for one keypress
OS_LALTHold Left Alt for one keypress
OS_LGUIHold Left GUI for one keypress
OS_LCSHold Left Control and Left Shift for one keypress
OS_LCAHold Left Control and left Alt for one keypress
OS_LCGHold Left Control and Left GUI for one keypress
OS_LSAHold Left Shift and Left Alt for one keypress
OS_LSGHold Left Shift and Left GUI for one keypress
OS_LAGHold Left Alt and Left GUI for one keypress
OS_LCSGHold Left Control, Left Shift and Left GUI for one keypress
OS_LCAGHold Left Control, Left Alt and Left GUI for one keypress
OS_LSAGHold Left Shift, Left Alt and Left GUI for one keypress
OS_RCTLHold Right Control for one keypress
OS_RSFTHold Right Shift for one keypress
OS_RALTHold Right Alt for one keypress
OS_RGUIHold Right GUI for one keypress
OS_RCSHold Right Control and Right Shift for one keypress
OS_RCAHold Right Control and Right Alt for one keypress
OS_RCGHold Right Control and Right GUI for one keypress
OS_RSAHold Right Shift and Right Alt for one keypress
OS_RSGHold Right Shift and Right GUI for one keypress
OS_RAGHold Right Alt and Right GUI for one keypress
OS_RCSGHold Right Control, Right Shift and Right GUI for one keypress
OS_RCAGHold Right Control, Right Alt and Right GUI for one keypress
OS_RSAGHold Right Shift, Right Alt and Right GUI for one keypress
OS_MEHHold Left Control, Left Shift and Left Alt for one keypress
OS_HYPRHold Left Control, Left Shift, Left Alt and Left GUI for one keypress

When One Shot keys are turned off, OSM() and OSL() will behave like normal modifier keys and MO(), respectively.

INFO

The mod parameter to the OSM() keycode must use the MOD_* prefix, rather than KC_*, eg. OSM(MOD_LCTL | MOD_LSFT).

Sometimes, you want to activate a one-shot key as part of a macro or tap dance routine.

For one shot layers, you need to call set_oneshot_layer(LAYER, ONESHOT_START) on key down, and clear_oneshot_layer_state(ONESHOT_PRESSED) on key up. If you want to cancel the oneshot, call reset_oneshot_layer().

For one shot mods, you need to call set_oneshot_mods(MOD_BIT(KC_*)) to set it, or clear_oneshot_mods() to cancel it.

WARNING

If you're having issues with OSM translating over Remote Desktop Connection, this can be fixed by opening the settings, going to the "Local Resources" tab, and in the keyboard section, change the drop down to "On this Computer". This will fix the issue and allow OSM to function properly over Remote Desktop.

Callbacks

When you'd like to perform custom logic when pressing a one shot key, there are several callbacks you can choose to implement. You could indicate changes in one shot keys by flashing an LED or making a sound, for example.

There is a callback for OSM(mod). It is called whenever the state of any one shot modifier key is changed: when it toggles on, but also when it is toggled off. You can use it like this:

c
void oneshot_mods_changed_user(uint8_t mods) {\n  if (mods & MOD_MASK_SHIFT) {\n    println("Oneshot mods SHIFT");\n  }\n  if (mods & MOD_MASK_CTRL) {\n    println("Oneshot mods CTRL");\n  }\n  if (mods & MOD_MASK_ALT) {\n    println("Oneshot mods ALT");\n  }\n  if (mods & MOD_MASK_GUI) {\n    println("Oneshot mods GUI");\n  }\n  if (!mods) {\n    println("Oneshot mods off");\n  }\n}

The mods argument contains the active mods after the change, so it reflects the current state.

When you use One Shot Tap Toggle (by adding #define ONESHOT_TAP_TOGGLE 2 in your config.h file), you may lock a modifier key by pressing it the specified amount of times. There's a callback for that, too:

c
void oneshot_locked_mods_changed_user(uint8_t mods) {\n  if (mods & MOD_MASK_SHIFT) {\n    println("Oneshot locked mods SHIFT");\n  }\n  if (mods & MOD_MASK_CTRL) {\n    println("Oneshot locked mods CTRL");\n  }\n  if (mods & MOD_MASK_ALT) {\n    println("Oneshot locked mods ALT");\n  }\n  if (mods & MOD_MASK_GUI) {\n    println("Oneshot locked mods GUI");\n  }\n  if (!mods) {\n    println("Oneshot locked mods off");\n  }\n}

Last, there is also a callback for the OSL(layer) one shot key:

c
void oneshot_layer_changed_user(uint8_t layer) {\n  if (layer == 1) {\n    println("Oneshot layer 1 on");\n  }\n  if (!layer) {\n    println("Oneshot layer off");\n  }\n}

If any one shot layer is switched off, layer will be zero. When you're looking to do something on any layer change instead of one shot layer changes, layer_state_set_user is a better callback to use.

If you are making your own keyboard, there are also _kb equivalent functions:

c
void oneshot_locked_mods_changed_kb(uint8_t mods);\nvoid oneshot_mods_changed_kb(uint8_t mods);\nvoid oneshot_layer_changed_kb(uint8_t layer);

As with any callback, be sure to call the _user variant to allow for further customizability.

', 28); diff --git a/assets/one_shot_keys.md.CoZULJTw.lean.js b/assets/one_shot_keys.md.DVKbOw_R.lean.js similarity index 83% rename from assets/one_shot_keys.md.CoZULJTw.lean.js rename to assets/one_shot_keys.md.DVKbOw_R.lean.js index 4443117e924..bceef47207d 100644 --- a/assets/one_shot_keys.md.CoZULJTw.lean.js +++ b/assets/one_shot_keys.md.DVKbOw_R.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"One Shot Keys","description":"","frontmatter":{},"headers":[],"relativePath":"one_shot_keys.md","filePath":"one_shot_keys.md","lastUpdated":null}'); const _sfc_main = { name: "one_shot_keys.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 28); diff --git a/assets/other_eclipse.md.DNM4I_uU.js b/assets/other_eclipse.md.D2LFIFIo.js similarity index 98% rename from assets/other_eclipse.md.DNM4I_uU.js rename to assets/other_eclipse.md.D2LFIFIo.js index e925c84f32e..2a0a58d1430 100644 --- a/assets/other_eclipse.md.DNM4I_uU.js +++ b/assets/other_eclipse.md.D2LFIFIo.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/oHYR1yW.png"; const __pageData = JSON.parse('{"title":"Setting up Eclipse for QMK Development","description":"","frontmatter":{},"headers":[],"relativePath":"other_eclipse.md","filePath":"other_eclipse.md","lastUpdated":null}'); const _sfc_main = { name: "other_eclipse.md" }; diff --git a/assets/other_eclipse.md.DNM4I_uU.lean.js b/assets/other_eclipse.md.D2LFIFIo.lean.js similarity index 84% rename from assets/other_eclipse.md.DNM4I_uU.lean.js rename to assets/other_eclipse.md.D2LFIFIo.lean.js index bf86f9a6139..25b521896b7 100644 --- a/assets/other_eclipse.md.DNM4I_uU.lean.js +++ b/assets/other_eclipse.md.D2LFIFIo.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/oHYR1yW.png"; const __pageData = JSON.parse('{"title":"Setting up Eclipse for QMK Development","description":"","frontmatter":{},"headers":[],"relativePath":"other_eclipse.md","filePath":"other_eclipse.md","lastUpdated":null}'); const _sfc_main = { name: "other_eclipse.md" }; diff --git a/assets/other_vscode.md.Cd14jo_M.js b/assets/other_vscode.md.CJpFKC3I.js similarity index 99% rename from assets/other_vscode.md.Cd14jo_M.js rename to assets/other_vscode.md.CJpFKC3I.js index af844c4fe64..54f4f714100 100644 --- a/assets/other_vscode.md.Cd14jo_M.js +++ b/assets/other_vscode.md.CJpFKC3I.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/EGrPM1L.png"; const __pageData = JSON.parse('{"title":"Setting up Visual Studio Code for QMK Development","description":"","frontmatter":{},"headers":[],"relativePath":"other_vscode.md","filePath":"other_vscode.md","lastUpdated":null}'); const _sfc_main = { name: "other_vscode.md" }; diff --git a/assets/other_vscode.md.Cd14jo_M.lean.js b/assets/other_vscode.md.CJpFKC3I.lean.js similarity index 84% rename from assets/other_vscode.md.Cd14jo_M.lean.js rename to assets/other_vscode.md.CJpFKC3I.lean.js index 08c5f5754a3..533f0d11e0e 100644 --- a/assets/other_vscode.md.Cd14jo_M.lean.js +++ b/assets/other_vscode.md.CJpFKC3I.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/EGrPM1L.png"; const __pageData = JSON.parse('{"title":"Setting up Visual Studio Code for QMK Development","description":"","frontmatter":{},"headers":[],"relativePath":"other_vscode.md","filePath":"other_vscode.md","lastUpdated":null}'); const _sfc_main = { name: "other_vscode.md" }; diff --git a/assets/platformdev_blackpill_f4x1.md.BOTrYdi3.js b/assets/platformdev_blackpill_f4x1.md.CRzpfIX6.js similarity index 98% rename from assets/platformdev_blackpill_f4x1.md.BOTrYdi3.js rename to assets/platformdev_blackpill_f4x1.md.CRzpfIX6.js index ae5ed709c8e..ea79be1cc3a 100644 --- a/assets/platformdev_blackpill_f4x1.md.BOTrYdi3.js +++ b/assets/platformdev_blackpill_f4x1.md.CRzpfIX6.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/nCgeolTh.png"; const __pageData = JSON.parse('{"title":"WeAct Blackpill (STM32F4x1)","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_blackpill_f4x1.md","filePath":"platformdev_blackpill_f4x1.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_blackpill_f4x1.md" }; diff --git a/assets/platformdev_blackpill_f4x1.md.BOTrYdi3.lean.js b/assets/platformdev_blackpill_f4x1.md.CRzpfIX6.lean.js similarity index 85% rename from assets/platformdev_blackpill_f4x1.md.BOTrYdi3.lean.js rename to assets/platformdev_blackpill_f4x1.md.CRzpfIX6.lean.js index ae882a4d18a..d5e2c37d369 100644 --- a/assets/platformdev_blackpill_f4x1.md.BOTrYdi3.lean.js +++ b/assets/platformdev_blackpill_f4x1.md.CRzpfIX6.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/nCgeolTh.png"; const __pageData = JSON.parse('{"title":"WeAct Blackpill (STM32F4x1)","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_blackpill_f4x1.md","filePath":"platformdev_blackpill_f4x1.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_blackpill_f4x1.md" }; diff --git a/assets/platformdev_chibios_earlyinit.md.CYdrnyB1.js b/assets/platformdev_chibios_earlyinit.md.C69mum-M.js similarity index 98% rename from assets/platformdev_chibios_earlyinit.md.CYdrnyB1.js rename to assets/platformdev_chibios_earlyinit.md.C69mum-M.js index 278e4cb30de..1d291aa8aef 100644 --- a/assets/platformdev_chibios_earlyinit.md.CYdrnyB1.js +++ b/assets/platformdev_chibios_earlyinit.md.C69mum-M.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Arm/ChibiOS Early Initialization","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_chibios_earlyinit.md","filePath":"platformdev_chibios_earlyinit.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_chibios_earlyinit.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Arm/ChibiOS Early Initialization

This page describes a part of QMK that is a somewhat advanced concept, and is only relevant to keyboard designers.

QMK uses ChibiOS as the underlying layer to support a multitude of Arm-based devices. Each ChibiOS-supported keyboard has a low-level board definition which is responsible for initializing hardware peripherals such as the clocks, and GPIOs.

Older QMK revisions required duplication of these board definitions inside your keyboard's directory in order to override such early initialization points; this is now abstracted into the following APIs, and allows usage of the board definitions supplied with ChibiOS itself. Check <qmk_firmware>/lib/chibios/os/hal/boards for the list of official definitions. If your keyboard needs extra initialization at a very early stage, consider providing keyboard-level overrides of the following APIs instead of duplicating the board definitions:

early_hardware_init_pre()

The function early_hardware_init_pre is the earliest possible code that can be executed by a keyboard firmware. This is intended as a replacement for the ChibiOS board definition's __early_init function, and is the equivalent of executing at the start of the function.

This is executed before RAM gets cleared, and before clocks or GPIOs are configured; for example, ChibiOS delays are not likely to work at this point. After executing this function, RAM on the MCU may be zero'ed. Assigning values to variables during execution of this function may be overwritten.

As such, if you wish to override this API consider limiting use to writing to low-level registers. The default implementation of this function can be configured to jump to bootloader if a QK_BOOT key was pressed:

config.h overrideDescriptionDefault
#define EARLY_INIT_PERFORM_BOOTLOADER_JUMPWhether or not bootloader is to be executed during the early initialisation code of QMK.FALSE
#define STM32_BOOTLOADER_DUAL_BANKRelevant for dual-bank STM32 MCUs, signifies that a GPIO is to be toggled in order to enter bootloader mode.FALSE
#define STM32_BOOTLOADER_DUAL_BANK_GPIORelevant for dual-bank STM32 MCUs, the pin to toggle when attempting to enter bootloader mode, e.g. B8<none>
#define STM32_BOOTLOADER_DUAL_BANK_POLARITYRelevant for dual-bank STM32 MCUs, the value to set the pin to in order to trigger charging of the RC circuit. e.g. 0 or 1.0
#define STM32_BOOTLOADER_DUAL_BANK_DELAYRelevant for dual-bank STM32 MCUs, an arbitrary measurement of time to delay before resetting the MCU. Increasing number increases the delay.100

Kinetis MCUs have no configurable options.

Alternatively, to implement your own version of this function, in your keyboard's source files:

c
void early_hardware_init_pre(void) {\n    // do things with registers\n}

early_hardware_init_post()

The function early_hardware_init_post is the next earliest possible code that can be executed by a keyboard firmware. This is executed after RAM has been cleared, and clocks and GPIOs are configured. This is intended as a replacement for the ChibiOS board definition's __early_init function, and is the equivalent of executing at the end of the function.

Much like early_hardware_init_pre, ChibiOS has not yet been initialized either, so the same restrictions on delays and timing apply.

If you wish to override this API, consider limiting functionality to register writes, variable initialization, and GPIO toggling. The default implementation of this function is to do nothing.

To implement your own version of this function, in your keyboard's source files:

c
void early_hardware_init_post(void) {\n    // toggle GPIO pins and write to variables\n}

board_init()

The function board_init is executed directly after the ChibiOS initialization routines have completed. At this stage, all normal low-level functionality should be available for use (including timers and delays), with the restriction that USB is not yet connected. This is intended as a replacement for the ChibiOS board definition's boardInit function.

The default implementation of this function is to do nothing.

To implement your own version of this function, in your keyboard's source files:

c
void board_init(void) {\n    // initialize anything that requires ChibiOS\n}
', 23); diff --git a/assets/platformdev_chibios_earlyinit.md.CYdrnyB1.lean.js b/assets/platformdev_chibios_earlyinit.md.C69mum-M.lean.js similarity index 84% rename from assets/platformdev_chibios_earlyinit.md.CYdrnyB1.lean.js rename to assets/platformdev_chibios_earlyinit.md.C69mum-M.lean.js index c21ccce858e..5095a0ac8c0 100644 --- a/assets/platformdev_chibios_earlyinit.md.CYdrnyB1.lean.js +++ b/assets/platformdev_chibios_earlyinit.md.C69mum-M.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Arm/ChibiOS Early Initialization","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_chibios_earlyinit.md","filePath":"platformdev_chibios_earlyinit.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_chibios_earlyinit.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 23); diff --git a/assets/platformdev_proton_c.md.DdB4Ux-O.js b/assets/platformdev_proton_c.md.Q5yuqv-5.js similarity index 97% rename from assets/platformdev_proton_c.md.DdB4Ux-O.js rename to assets/platformdev_proton_c.md.Q5yuqv-5.js index 5ca914c4925..39c3ba0a8e9 100644 --- a/assets/platformdev_proton_c.md.DdB4Ux-O.js +++ b/assets/platformdev_proton_c.md.Q5yuqv-5.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Proton C","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_proton_c.md","filePath":"platformdev_proton_c.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_proton_c.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Proton C

The Proton C is an Arm STM32F303xC based drop-in replacement for the Pro Micro.

Proton C

Features

Warnings

Some of the PCBs compatible with Pro Micro have VCC (3.3V) and RAW (5V) pins connected (shorted) on the pcb. Using the Proton C will short 5V power from USB and regulated 3.3V which is connected directly to the MCU. Shorting those pins may damage the MCU on the Proton C.

So far, it appears that this is only an issue on the Gherkin PCBs, but other PCBs may be affected in this way.

In this case, you may want to not hook up the RAW pin at all.

Manual Conversion

To use the Proton C natively, without having to specify CONVERT_TO=proton_c, you need to change the MCU line in rules.mk:

MCU = STM32F303\nBOARD = QMK_PROTON_C

Remove these variables if they exist:

Finally convert all pin assignments in config.h to the stm32 equivalents.

Pro Micro LeftProton C LeftProton C RightPro Micro Right
D3A95vRAW (5v)
D2A10GNDGND
GNDGNDFLASHRESET
GNDGND3.3vVCC 1
D1B7A2F4
D0B6A1F5
D4B5A0F6
C6B4B8F7
D7B3B13B1
E6B2B14B3
B4B1B15B2
B5B0B9B6
B0 (RX LED)C13 2C13 2D5 (TX LED)

You can also make use of several new pins on the extended portion of the Proton C:

LeftRight
A43B10
A54B11
A6B12
A7A145 (SWCLK)
A8A135 (SWDIO)
A15RESET6

Notes:

  1. On a Pro Micro VCC can be 3.3v or 5v.
  2. A Proton C only has one onboard LED, not two like a Pro Micro. The Pro Micro has an RX LED on D5 and a TX LED on B0.
  3. A4 is shared with the speaker.
  4. A5 is shared with the speaker.
  5. A13 and A14 are used for hardware debugging (SWD). You can also use them for GPIO, but should use them last.
  6. Short RESET to 3.3v (pull high) to reboot the MCU. This does not enter bootloader mode like a Pro Micro, it only resets the MCU.
', 20); diff --git a/assets/platformdev_proton_c.md.DdB4Ux-O.lean.js b/assets/platformdev_proton_c.md.Q5yuqv-5.lean.js similarity index 83% rename from assets/platformdev_proton_c.md.DdB4Ux-O.lean.js rename to assets/platformdev_proton_c.md.Q5yuqv-5.lean.js index 1491e38b309..ad3823a0ddb 100644 --- a/assets/platformdev_proton_c.md.DdB4Ux-O.lean.js +++ b/assets/platformdev_proton_c.md.Q5yuqv-5.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Proton C","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_proton_c.md","filePath":"platformdev_proton_c.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_proton_c.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 20); diff --git a/assets/platformdev_rp2040.md.9TIkRKBb.js b/assets/platformdev_rp2040.md.CVsbhmnD.js similarity index 99% rename from assets/platformdev_rp2040.md.9TIkRKBb.js rename to assets/platformdev_rp2040.md.CVsbhmnD.js index eb2e8031871..55220454982 100644 --- a/assets/platformdev_rp2040.md.9TIkRKBb.js +++ b/assets/platformdev_rp2040.md.CVsbhmnD.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/nLaiYDE.jpg"; const _imports_1 = "/1TPAhrs.jpg"; const __pageData = JSON.parse('{"title":"Raspberry Pi RP2040","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_rp2040.md","filePath":"platformdev_rp2040.md","lastUpdated":null}'); diff --git a/assets/platformdev_rp2040.md.9TIkRKBb.lean.js b/assets/platformdev_rp2040.md.CVsbhmnD.lean.js similarity index 85% rename from assets/platformdev_rp2040.md.9TIkRKBb.lean.js rename to assets/platformdev_rp2040.md.CVsbhmnD.lean.js index 5de346ac05b..c9008fd58dd 100644 --- a/assets/platformdev_rp2040.md.9TIkRKBb.lean.js +++ b/assets/platformdev_rp2040.md.CVsbhmnD.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/nLaiYDE.jpg"; const _imports_1 = "/1TPAhrs.jpg"; const __pageData = JSON.parse('{"title":"Raspberry Pi RP2040","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_rp2040.md","filePath":"platformdev_rp2040.md","lastUpdated":null}'); diff --git a/assets/platformdev_selecting_arm_mcu.md.C2dtAlyC.js b/assets/platformdev_selecting_arm_mcu.md.BRIdTMNn.js similarity index 98% rename from assets/platformdev_selecting_arm_mcu.md.C2dtAlyC.js rename to assets/platformdev_selecting_arm_mcu.md.BRIdTMNn.js index 19d7ed354c3..78448602b14 100644 --- a/assets/platformdev_selecting_arm_mcu.md.C2dtAlyC.js +++ b/assets/platformdev_selecting_arm_mcu.md.BRIdTMNn.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Choosing an Arm MCU","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_selecting_arm_mcu.md","filePath":"platformdev_selecting_arm_mcu.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_selecting_arm_mcu.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Choosing an Arm MCU

This page outlines the selection criteria to ensure compatibility with Arm/ChibiOS.

QMK uses the Hardware Abstraction Layer of ChibiOS in order to run on Arm devices. ChibiOS in general is best supported on STM32 devices, both in the perspective of base MCU support, as well as on-MCU peripheral support. As an extension to the core ChibiOS MCU support, QMK also utilises ChibiOS-Contrib (which includes the Kinetis MCU support layer, as an example), but it does not provide as great a level of peripheral support or general testing for supported devices.

Adding support for new MCU families must go through ChibiOS or ChibiOS-Contrib -- QMK does not have the bandwidth, resources, nor the inclination to maintain long-term MCU support for your board of choice.

To be clear: this also includes commercial boards -- unless agreed upon by all parties, QMK will not take over maintenance of a bespoke MCU support package. Even if MCU support is upstreamed into ChibiOS/ChibiOS-Contrib, QMK reserves the right to deprecate and/or remove keyboards utilising support packages that aren't kept up to date with upstream ChibiOS itself.

Selecting an already-supported MCU

STM32 families

As outlined earlier, STM32 is the preferred option to ensure greatest compatibility with the subsystems already implemented in QMK. Not all subsystems are compatible yet, but for the most widely-used support is already present.

The simplest solution to determine if an STM32 MCU is compatible is to navigate to the list of supported STM32 ports in QMK's ChibiOS fork. Inside this directory, each of the supported STM32 families will be listed, and inside each family a file called stm32_registry.h will be present. Scanning through these files will show #defines such as the following, which can be used to determine if ChibiOS supports a particular MCU:

c
#if defined(STM32F303xC) || defined(__DOXYGEN__)

The example shows that STM32F303xC devices are supported by ChibiOS.

The next step is to ensure that USB is supported on those devices by ChibiOS -- you can confirm this by checking inside the same section guarded by the #define above, specifically for the following to be TRUE:

c
#define STM32_HAS_USB                       TRUE

or one of the following being TRUE:

c
#define STM32_HAS_OTG1                      TRUE\n#define STM32_HAS_OTG2                      TRUE

For the most part, this is the bare minimum to be able to have a high confidence that QMK will be able to run on your MCU. After that, it's all up to configuration.

Non-STM32 families

ChibiOS does have support for a handful of non-STM32 devices, and the list can be found in QMK's ChibiOS fork and ChibiOS-Contrib fork. Non-STM32 support is likely out of date, and only supports ancient MCUs -- whilst it might be possible to use these, it's not recommended.

Do note that there are sometimes licensing restrictions with respect to redistribution. As an example, binaries built for nRF5 are not able to be redistributed via QMK Configurator, due to the licensing of their board support package.

Adding support for a new STM32 MCU (for an existing family)

Usually, one can "masquerade" as an existing MCU of the same family, especially if the only difference is RAM or Flash size. As an example, some MCUs within the same family are virtually identical, with the exception of adding a cryptographic peripheral -- STM32L072 vs. STM32L082 for instance. Given the unlikely use of the cryptographic peripheral, L082 chips can actually run as if they're an L072, and can be targeted accordingly.

Adding proper support for new MCUs within an existing STM32 family should ideally be upstreamed to ChibiOS. In general, this will require modifications of the stm32_registry.h file, providing correct responses for the same #defines provided for the other MCUs in that family.

Adding support for a new STM32 Family

If this is a requirement, this needs to go through upstream ChibiOS before QMK would consider accepting boards targeting the new family. More information for porting should be sought by approaching ChibiOS directly, rather than through QMK.

Adding support for a new MCU Family

As stated earlier, in order for a new MCU family to be supported by QMK, it needs to be upstreamed into ChibiOS-Contrib before QMK will consider accepting boards using it. The same principle applies for development -- you're best approaching the ChibiOS-Contrib maintainers to get a bit more of an idea on what's involved with upstreaming your contribution.

', 26); diff --git a/assets/platformdev_selecting_arm_mcu.md.C2dtAlyC.lean.js b/assets/platformdev_selecting_arm_mcu.md.BRIdTMNn.lean.js similarity index 84% rename from assets/platformdev_selecting_arm_mcu.md.C2dtAlyC.lean.js rename to assets/platformdev_selecting_arm_mcu.md.BRIdTMNn.lean.js index af28931ea31..7d07c1f49ff 100644 --- a/assets/platformdev_selecting_arm_mcu.md.C2dtAlyC.lean.js +++ b/assets/platformdev_selecting_arm_mcu.md.BRIdTMNn.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Choosing an Arm MCU","description":"","frontmatter":{},"headers":[],"relativePath":"platformdev_selecting_arm_mcu.md","filePath":"platformdev_selecting_arm_mcu.md","lastUpdated":null}'); const _sfc_main = { name: "platformdev_selecting_arm_mcu.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 26); diff --git a/assets/porting_your_keyboard_to_qmk.md.Dz_V3KoY.js b/assets/porting_your_keyboard_to_qmk.md.CtsmkkQs.js similarity index 99% rename from assets/porting_your_keyboard_to_qmk.md.Dz_V3KoY.js rename to assets/porting_your_keyboard_to_qmk.md.CtsmkkQs.js index 48b7a17fa3e..7a6691f504f 100644 --- a/assets/porting_your_keyboard_to_qmk.md.Dz_V3KoY.js +++ b/assets/porting_your_keyboard_to_qmk.md.CtsmkkQs.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Adding Your Keyboard to QMK","description":"","frontmatter":{},"headers":[],"relativePath":"porting_your_keyboard_to_qmk.md","filePath":"porting_your_keyboard_to_qmk.md","lastUpdated":null}'); const _sfc_main = { name: "porting_your_keyboard_to_qmk.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Adding Your Keyboard to QMK

This page describes the support for Compatible Microcontrollers in QMK.

If you have not yet you should read the Keyboard Guidelines to get a sense of how keyboards fit into QMK.

QMK has a number of features to simplify working with keyboards. For most, you don't have to write a single line of code. To get started, run qmk new-keyboard:

$ qmk new-keyboard\nΨ Generating a new QMK keyboard directory\n\nΨ Name Your Keyboard Project\nΨ For more information, see:\nhttps://docs.qmk.fm/hardware_keyboard_guidelines#naming-your-keyboard-project\nKeyboard Name? mycoolkeeb\nΨ Attribution\nΨ Used for maintainer, copyright, etc.\nYour GitHub Username? [jsmith] \nΨ More Attribution\nΨ Used for maintainer, copyright, etc.\nYour Real Name? [John Smith] \nΨ Pick Base Layout\nΨ As a starting point, one of the common layouts can be used to\nbootstrap the process\nDefault Layout?\n    1. 60_abnt2\n    ...\n    65. none of the above\nPlease enter your choice: [65] \nΨ What Powers Your Project\nΨ Is your board using a separate development board, such as a Pro Micro,\nor is the microcontroller integrated onto the PCB?\n\nFor more information, see:\nhttps://docs.qmk.fm/compatible_microcontrollers\nUsing a Development Board? [y/n] y\nΨ Select Development Board\nΨ For more information, see:\nhttps://docs.qmk.fm/compatible_microcontrollers\nDevelopment Board?\n    1. bit_c_pro\n    ...\n    14. promicro\n    ...\n    18. svlinky\nPlease enter your choice: [14] \nΨ Created a new keyboard called mycoolkeeb.\nΨ Build Command: qmk compile -kb mycoolkeeb -km default.\nΨ Project Location: /Users/jsmith/qmk_firmware/keyboards/mycoolkeeb.\nΨ Now update the config files to match the hardware!

This will create all the files needed to support your new keyboard, and populate the settings with default values. Now you just need to customize it for your keyboard.

readme.md

This is where you'll describe your keyboard. Please follow the Keyboard Readme Template when writing your readme.md. You're encouraged to place an image at the top of your readme.md, please use an external service such as Imgur to host the images.

keyboard.json

The keyboard.json file is where you configure the hardware and feature set for your keyboard. There are a lot of options that can be placed in that file, too many to list here. For a complete overview of available options see the Data Driven Configuration Options page.

Hardware Configuration

At the top of the keyboard.json you'll find USB related settings. These control how your keyboard appears to the Operating System. If you don't have a good reason to change you should leave the usb.vid as 0xFEED. For the usb.pid you should pick a number that is not yet in use.

Do change the manufacturer and keyboard_name lines to accurately reflect your keyboard.

json
    "keyboard_name": "my_awesome_keyboard",\n    "maintainer": "You",\n    "usb": {\n        "vid": "0xFEED",\n        "pid": "0x0000",\n        "device_version": "1.0.0"\n    },

TIP

Windows and macOS will display the manufacturer and keyboard_name in the list of USB devices. lsusb on Linux instead prefers the values in the list maintained by the USB ID Repository. By default, it will only use manufacturer and keyboard_name if the list does not contain that usb.vid / usb.pid. sudo lsusb -v will show the values reported by the device, and they are also present in kernel logs after plugging it in.

Matrix Configuration

The next section of the keyboard.json deals with your keyboard's matrix. The first thing you should define is which pins on your MCU are connected to rows and columns. To do so simply specify the names of those pins:

Diode Matrix

json
    "matrix_pins": {\n        "cols": ["C1", "C2", "C3", "C4"],\n        "rows": ["D1", "D2", "D3", "D4"]\n    },

The matrix dimensions are inferred from the length of the matrix_pins.cols and matrix_pins.rows arrays (previously specified explicitly in config.h with MATRIX_ROWS and MATRIX_COLS).

Finally, you can specify the direction your diodes point. This can be COL2ROW or ROW2COL.

json
    "diode_direction": "ROW2COL",

Direct Pin Matrix

To configure a keyboard where each switch is connected to a separate pin and ground instead of sharing row and column pins, use matrix_pins.direct. This overrides the behaviour of diode_direction, matrix_pins.cols and matrix_pins.rows, and they should not be specified together.

json
    "matrix_pins": {\n        "direct": [\n            ["F1", "E6", "B0", "B2", "B3"],\n            ["F5", "F0", "B1", "B7", "D2"],\n            ["F6", "F7", "C7", "D5", "D3"],\n            ["B5", "C6", "B6", null, null]\n        ]\n    },

Here, the matrix dimensions are inferred directly from the dimensions of the matrix_pins.direct array. Since there are no row or column pins to prescribe the matrix dimensions, you can arrange it however you like. Each "row" must contain the same number of "column"s; use null to fill in blank spaces, but try to minimize them.

Layout Macros

Next is configuring layout macro(s). These define the physical arrangement of keys, and their position within the matrix that switches are connected to. This allows you to have a physical arrangement of keys that differs from the wiring matrix.

json
    "layouts": {\n        "LAYOUT_ortho_4x4": {\n            "layout": [\n                {"matrix": [0, 0], "x": 0, "y": 0},\n                {"matrix": [0, 1], "x": 1, "y": 0},\n                {"matrix": [0, 2], "x": 2, "y": 0},\n                {"matrix": [0, 3], "x": 3, "y": 0},\n                {"matrix": [1, 0], "x": 0, "y": 1},\n                {"matrix": [1, 1], "x": 1, "y": 1},\n                {"matrix": [1, 2], "x": 2, "y": 1},\n                {"matrix": [1, 3], "x": 3, "y": 1},\n                {"matrix": [2, 0], "x": 0, "y": 2},\n                {"matrix": [2, 1], "x": 1, "y": 2},\n                {"matrix": [2, 2], "x": 2, "y": 2},\n                {"matrix": [2, 3], "x": 3, "y": 2},\n                {"matrix": [3, 0], "x": 0, "y": 3},\n                {"matrix": [3, 1], "x": 1, "y": 3},\n                {"matrix": [3, 2], "x": 2, "y": 3},\n                {"matrix": [3, 3], "x": 3, "y": 3}\n            ]\n        }\n    }

In the above example,

TIP

See also: Split Keyboard Layout Macro and Matrix to Physical Layout.

Additional Configuration

There are a lot of features that can be turned on or off, configured or tuned. Some of these have yet to be migrated over to Data Driven Configuration. The following sections cover the process for when a data-driven option is unavailable.

Configuration Options

For available options for config.h, you should see the Config Options page for more details.

Build Options

For available options for rules.mk, see the Config Options page for a detailed list and description.

', 38); diff --git a/assets/porting_your_keyboard_to_qmk.md.Dz_V3KoY.lean.js b/assets/porting_your_keyboard_to_qmk.md.CtsmkkQs.lean.js similarity index 84% rename from assets/porting_your_keyboard_to_qmk.md.Dz_V3KoY.lean.js rename to assets/porting_your_keyboard_to_qmk.md.CtsmkkQs.lean.js index ebfb8a21f9a..170015547b7 100644 --- a/assets/porting_your_keyboard_to_qmk.md.Dz_V3KoY.lean.js +++ b/assets/porting_your_keyboard_to_qmk.md.CtsmkkQs.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Adding Your Keyboard to QMK","description":"","frontmatter":{},"headers":[],"relativePath":"porting_your_keyboard_to_qmk.md","filePath":"porting_your_keyboard_to_qmk.md","lastUpdated":null}'); const _sfc_main = { name: "porting_your_keyboard_to_qmk.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 38); diff --git a/assets/pr_checklist.md.Co-UPRQ0.js b/assets/pr_checklist.md.B3iXNAC8.js similarity index 99% rename from assets/pr_checklist.md.Co-UPRQ0.js rename to assets/pr_checklist.md.B3iXNAC8.js index 24d1e7f3840..af8661071f0 100644 --- a/assets/pr_checklist.md.Co-UPRQ0.js +++ b/assets/pr_checklist.md.B3iXNAC8.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"PR checklists","description":"","frontmatter":{},"headers":[],"relativePath":"pr_checklist.md","filePath":"pr_checklist.md","lastUpdated":null}'); const _sfc_main = { name: "pr_checklist.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

PR checklists

This is a non-exhaustive checklist of what the QMK Collaborators will be checking when reviewing submitted PRs.

If there are any inconsistencies with these recommendations, you're best off creating an issue against this document, or getting in touch with a QMK Collaborator on Discord.

Requirements for all PRs

Keymap PRs

WARNING

Note that personal keymap submissions will no longer be accepted. This section applies to manufacturer-supported keymaps. Please see this issue for more information.

Keyboard PRs

Closed PRs (for inspiration, previous sets of review comments will help you eliminate ping-pong of your own reviews): https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard

Wireless-capable boards:

Also, specific to ChibiOS:

Core PRs


Notes

For when people use their own master branch, post this after merge:

For future reference, we recommend against committing to your `master` branch as you've done here, because pull requests from modified `master` branches can make it more difficult to keep your QMK fork updated. It is highly recommended for QMK development – regardless of what is being done or where – to keep your master updated, but **NEVER** commit to it. Instead, do all your changes in a branch (branches are basically free in Git) and issue PRs from your branches when you're developing.\n\nThere are instructions on how to keep your fork updated here:\n\n[**Best Practices: Your Fork's Master: Update Often, Commit Never**](newbs_git_using_your_master_branch)\n\n[Fixing Your Branch](newbs_git_resynchronize_a_branch) will walk you through fixing up your `master` branch moving forward. If you need any help with this just ask.\n\nThanks for contributing!

Review Process

In general, we want to see two (or more) approvals that are meaningful (e.g. that have inspected code) before a PR will be considered for merge. These reviews are not limited to collaborators -- any community member willing to put in the time is welcomed (and encouraged). The only difference is that your checkmark won't be green, and that's fine!

Additionally, PR reviews are something that is done in our free time. We are not paid nor compensated for the time we spend reviewing, as it is a labor of love. As such, this means that it can take time for us to get to your Pull Request. Things like family, or life can get in the way of us getting to PRs, and burnout is a serious concern. The QMK firmware repository averages 200 PRs opened and 200 PRs merged every month, so please have patience.

Example GPLv2 Header

/* Copyright 2024 Your Name (@yourgithub)\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU General Public License as published by\n * the Free Software Foundation, either version 2 of the License, or\n * (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\n * GNU General Public License for more details.\n *\n * You should have received a copy of the GNU General Public License\n * along with this program.  If not, see <http://www.gnu.org/licenses/>.\n */

Or, optionally, using SPDX identifier instead:

// Copyright 2024 Your Name (@yourgithub)\n// SPDX-License-Identifier: GPL-2.0-or-later
', 28); diff --git a/assets/pr_checklist.md.Co-UPRQ0.lean.js b/assets/pr_checklist.md.B3iXNAC8.lean.js similarity index 82% rename from assets/pr_checklist.md.Co-UPRQ0.lean.js rename to assets/pr_checklist.md.B3iXNAC8.lean.js index 6efca82058e..2a45adc42d0 100644 --- a/assets/pr_checklist.md.Co-UPRQ0.lean.js +++ b/assets/pr_checklist.md.B3iXNAC8.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"PR checklists","description":"","frontmatter":{},"headers":[],"relativePath":"pr_checklist.md","filePath":"pr_checklist.md","lastUpdated":null}'); const _sfc_main = { name: "pr_checklist.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 28); diff --git a/assets/proprietary_libs.md.BfGoY2pl.js b/assets/proprietary_libs.md.CmRjTSHi.js similarity index 98% rename from assets/proprietary_libs.md.BfGoY2pl.js rename to assets/proprietary_libs.md.CmRjTSHi.js index 138bb91bc14..2a16da077ff 100644 --- a/assets/proprietary_libs.md.BfGoY2pl.js +++ b/assets/proprietary_libs.md.CmRjTSHi.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Proprietary Vendor Libraries","description":"","frontmatter":{},"headers":[],"relativePath":"proprietary_libs.md","filePath":"proprietary_libs.md","lastUpdated":null}'); const _sfc_main = { name: "proprietary_libs.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Proprietary Vendor Libraries

QMK Firmware cannot include support for any proprietary vendor libraries that impose additional restrictions beyond those in the GPL. This includes binary-only distributions, hardware-locked libraries, and code with redistribution limitations. This document explains why such libraries are incompatible with the GPL-based QMK Firmware and addresses commonly proposed workarounds.

Architecture Constraints

Firmware presents unique licensing challenges:

This monolithic nature means any proprietary code becomes inseparable from GPL code, creating immediate license violations.

Common Vendor Library Restrictions

Proprietary vendor libraries typically impose restrictions incompatible with GPL freedoms:

Hardware Lock-in:

No Source Distribution:

Redistribution Limitations:

Additional Legal Terms:

Bluetooth Stack Licensing Examples

Both Nordic and ST provide Bluetooth stacks under restrictive licenses:

Nordic SoftDevice (under Nordic 5-clause license):

ST's Bluetooth Stack (under SLA0044 license):

Both represent the same fundamental problem: critical wireless functionality locked behind proprietary licenses.

Why the System Library Exception Doesn't Apply

The GPL's System Library exception cannot rescue proprietary vendor libraries.

System Library Requirements

The exception only covers libraries that:

  1. Are part of the "normal form of packaging a Major Component"
  2. The Major Component is an OS kernel, compiler, or similar system software
  3. Are not distributed with the application
  4. Are not part of the application itself

Why Vendor Libraries Fail These Requirements

  1. No operating system: Bare-metal firmware has no OS to provide system libraries
  2. Not Major Components: Hardware drivers and HALs aren't kernels or compilers
  3. Distributed together: Vendor code becomes part of the firmware binary
  4. Application-level code: Peripheral drivers are application functionality

The exception covers things like Windows system DLLs or Linux glibc, not microcontroller vendor libraries or Bluetooth stacks.

Attempted Workarounds

Architectural Separation Attempts

Supervisor Call (SVC) Interfaces:

Nordic's SoftDevice uses supervisor call based APIs instead of direct linking:

Why this fails: The GPL considers functional integration, not just linking methods. In Bluetooth-capable boards, these would require the proprietary component to function, thus they form a single work regardless of the communication mechanism. This applies equally to Nordic's SoftDevice and any similar architecture ST provides.

Binary-Only Distributions:

Multiple vendors provide precompiled libraries:

Why this fails: This is classic static linking of proprietary code into GPL code. The inability to modify these libraries violates GPL's fundamental requirements.

Loader-Based Separation

Problems:

Real-World Examples

Bluetooth/Wireless Stacks

HAL and Driver Libraries

Mixed Proprietary/Open

Including any proprietary vendor library means:

  1. License Violation: Immediate GPL non-compliance
  2. Distribution Ban: Users cannot legally share modified firmware
  3. Commercial Risk: Products using the firmware face legal liability
  4. Contributor Tainting: All GPL contributions become legally problematic
  5. Update Restrictions: Cannot fix bugs in proprietary components

Evaluation Criteria for Libraries

Before including any library, QMK needs to verify:

Policy Implementation

QMK Firmware maintains a strict policy:

  1. No proprietary libraries: Regardless of technical workarounds
  2. No binary blobs: All code must have source available
  3. No platform restrictions: Must allow porting to any hardware
  4. No additional terms: Only GPL restrictions permitted

Summary

There is no legally safe way to include proprietary vendor libraries in GPL firmware. This applies whether they're:

Technical architectures cannot overcome license obligations.

QMK chooses GPL compliance, ensuring users receive all freedoms the GPL promises.

', 66); diff --git a/assets/proprietary_libs.md.BfGoY2pl.lean.js b/assets/proprietary_libs.md.CmRjTSHi.lean.js similarity index 83% rename from assets/proprietary_libs.md.BfGoY2pl.lean.js rename to assets/proprietary_libs.md.CmRjTSHi.lean.js index 76d3eb812c4..d0f6500ce4e 100644 --- a/assets/proprietary_libs.md.BfGoY2pl.lean.js +++ b/assets/proprietary_libs.md.CmRjTSHi.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Proprietary Vendor Libraries","description":"","frontmatter":{},"headers":[],"relativePath":"proprietary_libs.md","filePath":"proprietary_libs.md","lastUpdated":null}'); const _sfc_main = { name: "proprietary_libs.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 66); diff --git a/assets/quantum_keycodes.md._Et7xRtm.js b/assets/quantum_keycodes.md.CMhHYpXW.js similarity index 95% rename from assets/quantum_keycodes.md._Et7xRtm.js rename to assets/quantum_keycodes.md.CMhHYpXW.js index 9a5da8f8e2f..fe85c1e531f 100644 --- a/assets/quantum_keycodes.md._Et7xRtm.js +++ b/assets/quantum_keycodes.md.CMhHYpXW.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Quantum Keycodes","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_keycodes.md","filePath":"quantum_keycodes.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_keycodes.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Quantum Keycodes

Quantum keycodes allow for easier customization of your keymap than the basic ones provide, without having to define custom actions.

All keycodes within quantum are numbers between 0x0000 and 0xFFFF. Within your keymap.c it may look like you have functions and other special cases, but ultimately the C preprocessor will translate those into a single 4 byte integer. QMK has reserved 0x0000 through 0x00FF for standard keycodes. These are keycodes such as KC_A, KC_1, and KC_LCTL, which are basic keys defined in the USB HID specification.

On this page we have documented keycodes between 0x00FF and 0xFFFF which are used to implement advanced quantum features. If you define your own custom keycodes they will be put into this range as well.

QMK Keycodes

KeyAliasesDescription
QK_BOOTLOADERQK_BOOTPut the keyboard into bootloader mode for flashing
QK_DEBUG_TOGGLEDB_TOGGToggle debug mode
QK_CLEAR_EEPROMEE_CLRReinitializes the keyboard's EEPROM (persistent memory)
QK_MAKESends qmk compile -kb (keyboard) -km (keymap), or qmk flash if shift is held. Puts keyboard into bootloader mode if shift & control are held
QK_REBOOTQK_RBTResets the keyboard. Does not load the bootloader

WARNING

Note: QK_MAKE requires #define ENABLE_COMPILE_KEYCODE in your config.h to function.

', 7); diff --git a/assets/quantum_keycodes.md._Et7xRtm.lean.js b/assets/quantum_keycodes.md.CMhHYpXW.lean.js similarity index 83% rename from assets/quantum_keycodes.md._Et7xRtm.lean.js rename to assets/quantum_keycodes.md.CMhHYpXW.lean.js index a3b6751412a..b7005fbe41a 100644 --- a/assets/quantum_keycodes.md._Et7xRtm.lean.js +++ b/assets/quantum_keycodes.md.CMhHYpXW.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Quantum Keycodes","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_keycodes.md","filePath":"quantum_keycodes.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_keycodes.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 7); diff --git a/assets/quantum_painter.md.wsWy8meV.js b/assets/quantum_painter.md.w-wr8zVt.js similarity index 99% rename from assets/quantum_painter.md.wsWy8meV.js rename to assets/quantum_painter.md.w-wr8zVt.js index 39470402a4e..7f53513fc4a 100644 --- a/assets/quantum_painter.md.wsWy8meV.js +++ b/assets/quantum_painter.md.w-wr8zVt.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode, D as resolveComponent, o as openBlock } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Quantum Painter","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter.md","filePath":"quantum_painter.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Quantum Painter

Quantum Painter is the standardised API for graphical displays. It currently includes support for basic drawing primitives, as well as custom images, animations, and fonts.

Due to the complexity, there is no support for Quantum Painter on AVR-based boards.

To enable overall Quantum Painter to be built into your firmware, add the following to rules.mk:

make
QUANTUM_PAINTER_ENABLE = yes\nQUANTUM_PAINTER_DRIVERS += ......

You will also likely need to select an appropriate driver in rules.mk, which is listed below.

WARNING

Quantum Painter is not currently integrated with system-level operations such as when the keyboard goes into suspend. Users will need to handle this manually at the current time.

The QMK CLI can be used to convert from normal images such as PNG files or animated GIFs, as well as fonts from TTF files.

Supported devices:

Display PanelPanel TypeSizeComms TransportDriver
GC9A01RGB LCD (circular)240x240SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += gc9a01_spi
ILI9163RGB LCD128x128SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += ili9163_spi
ILI9341RGB LCD240x320SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += ili9341_spi
ILI9486RGB LCD320x480SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += ili9486_spi
ILI9488RGB LCD320x480SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += ili9488_spi
LD7032 (SPI)Monochrome OLED128x40SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += ld7032_spi
LD7032 (I2C)Monochrome OLED128x40I2CQUANTUM_PAINTER_DRIVERS += ld7032_i2c
SSD1351RGB OLED128x128SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += ssd1351_spi
ST7735RGB LCD132x162, 80x160SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += st7735_spi
ST7789RGB LCD240x320, 240x240SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += st7789_spi
SH1106 (SPI)Monochrome OLED128x64SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += sh1106_spi
SH1106 (I2C)Monochrome OLED128x64I2CQUANTUM_PAINTER_DRIVERS += sh1106_i2c
SSD1306 (SPI)Monochrome OLED128x64SPI + D/C + RSTQUANTUM_PAINTER_DRIVERS += sh1106_spi
SSD1306 (I2C)Monochrome OLED128x32I2CQUANTUM_PAINTER_DRIVERS += sh1106_i2c
SurfaceVirtualUser-definedNoneQUANTUM_PAINTER_DRIVERS += surface

Quantum Painter Configuration

OptionDefaultPurpose
QUANTUM_PAINTER_DISPLAY_TIMEOUT30000This controls the amount of time (in milliseconds) that all displays will remain on after the last user input. If set to 0, the display will remain on indefinitely.
QUANTUM_PAINTER_TASK_THROTTLE1This controls the amount of time (in milliseconds) that the Quantum Painter internal task will wait between each execution. Affects animations, display timeout, and LVGL timing if enabled.
QUANTUM_PAINTER_NUM_IMAGES8The maximum number of images/animations that can be loaded at any one time.
QUANTUM_PAINTER_NUM_FONTS4The maximum number of fonts that can be loaded at any one time.
QUANTUM_PAINTER_CONCURRENT_ANIMATIONS4The maximum number of animations that can be executed at the same time.
QUANTUM_PAINTER_LOAD_FONTS_TO_RAMFALSEWhether or not fonts should be loaded to RAM. Relevant for fonts stored in off-chip persistent storage, such as external flash.
QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE1024The limit of the amount of pixel data that can be transmitted in one transaction to the display. Higher values require more RAM on the MCU.
QUANTUM_PAINTER_SUPPORTS_256_PALETTEFALSEIf 256-color palettes are supported. Requires significantly more RAM on the MCU.
QUANTUM_PAINTER_SUPPORTS_NATIVE_COLORSFALSEIf native color range is supported. Requires significantly more RAM on the MCU.
QUANTUM_PAINTER_DEBUGunsetPrints out significant amounts of debugging information to CONSOLE output. Significant performance degradation, use only for debugging.
QUANTUM_PAINTER_DEBUG_ENABLE_FLUSH_TASK_OUTPUTunsetBy default, debug output is disabled while the internal task is flushing the display(s). If you want to keep it enabled, add this to your config.h. Note: Console will get clogged.

Drivers have their own set of configurable options, and are described in their respective sections.

Quantum Painter CLI Commands

', 14); diff --git a/assets/quantum_painter.md.wsWy8meV.lean.js b/assets/quantum_painter.md.w-wr8zVt.lean.js similarity index 99% rename from assets/quantum_painter.md.wsWy8meV.lean.js rename to assets/quantum_painter.md.w-wr8zVt.lean.js index 5ae45ef2d4c..679c0edde12 100644 --- a/assets/quantum_painter.md.wsWy8meV.lean.js +++ b/assets/quantum_painter.md.w-wr8zVt.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode, D as resolveComponent, o as openBlock } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, I as createVNode, w as withCtx, a8 as createStaticVNode, l as createBaseVNode, a as createTextVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Quantum Painter","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter.md","filePath":"quantum_painter.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 14); diff --git a/assets/quantum_painter_lvgl.md.BICCW0fh.js b/assets/quantum_painter_lvgl.md.Cl4cN6D6.js similarity index 98% rename from assets/quantum_painter_lvgl.md.BICCW0fh.js rename to assets/quantum_painter_lvgl.md.Cl4cN6D6.js index 73965aa7081..1e02e48a372 100644 --- a/assets/quantum_painter_lvgl.md.BICCW0fh.js +++ b/assets/quantum_painter_lvgl.md.Cl4cN6D6.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Quantum Painter LVGL Integration","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter_lvgl.md","filePath":"quantum_painter_lvgl.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter_lvgl.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Quantum Painter LVGL Integration

LVGL (Light and Versatile Graphics Library) is an open-source graphics library providing everything you need to create an embedded GUI for your board with easy-to-use graphical elements.

LVGL integrates with Quantum Painter's API and drivers to render to the display, the hardware supported by Quantum Painter is also supported by LVGL.

TIP

Keep in mind that enabling the LVGL integration has a big impact in firmware size, it is recommended to use a supported MCU with >256 kB of flash space.

To learn more about LVGL and how to use it please take a look at their official documentation

Enabling LVGL

To enable LVGL to be built into your firmware, add the following to rules.mk:

make
QUANTUM_PAINTER_ENABLE = yes\nQUANTUM_PAINTER_DRIVERS = ......\nQUANTUM_PAINTER_LVGL_INTEGRATION = yes

To configure the Quantum Painter Display Drivers please read the Quantum Painter Display Drivers section.

Quantum Painter LVGL API

Quantum Painter LVGL Attach

c
bool qp_lvgl_attach(painter_device_t device);

The qp_lvgl_attach function is used to set up LVGL with the supplied display, and requires an already configured display.

c
static painter_device_t display;\nvoid keyboard_post_init_kb(void) {\n    display = qp_make_.......;         // Create the display\n    qp_init(display, QP_ROTATION_0);   // Initialise the display\n\n    if (qp_lvgl_attach(display)) {     // Attach LVGL to the display\n        ...Your code to draw           // Run LVGL specific code to draw\n    }\n}

To init. the display please read the Display Initialisation section.

WARNING

Attaching LVGL to a display means LVGL subsequently "owns" the display. Using standard Quantum Painter drawing operations with the display after LVGL attachment will likely result in display artifacts.

Quantum Painter LVGL Detach

c
void qp_lvgl_detach(void)

The qp_lvgl_detach function stops the internal LVGL ticks and releases resources related to it.

Enabling/Disabling LVGL features

You can overwrite LVGL specific features in your lv_conf.h file.

Changing the LVGL task frequency

When LVGL is running, your keyboard's responsiveness may decrease, causing missing keystrokes or encoder rotations, especially during the animation of dynamically-generated content. This occurs because LVGL operates as a scheduled task with a default task rate of five milliseconds. While a fast task rate is advantageous when LVGL is responsible for detecting and processing inputs, it can lead to excessive recalculations of displayed content, which may slow down QMK's matrix scanning. If you rely on QMK instead of LVGL for processing inputs, it can be beneficial to increase the time between calls to the LVGL task handler to better match your preferred display update rate. To do this, add this to your config.h:

c
#define QP_LVGL_TASK_PERIOD 40
', 24); diff --git a/assets/quantum_painter_lvgl.md.BICCW0fh.lean.js b/assets/quantum_painter_lvgl.md.Cl4cN6D6.lean.js similarity index 84% rename from assets/quantum_painter_lvgl.md.BICCW0fh.lean.js rename to assets/quantum_painter_lvgl.md.Cl4cN6D6.lean.js index 35b7745ec89..626bf93ecbc 100644 --- a/assets/quantum_painter_lvgl.md.BICCW0fh.lean.js +++ b/assets/quantum_painter_lvgl.md.Cl4cN6D6.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Quantum Painter LVGL Integration","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter_lvgl.md","filePath":"quantum_painter_lvgl.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter_lvgl.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 24); diff --git a/assets/quantum_painter_qff.md.CXDvkMIQ.js b/assets/quantum_painter_qff.md.DRgeq25U.js similarity index 99% rename from assets/quantum_painter_qff.md.CXDvkMIQ.js rename to assets/quantum_painter_qff.md.DRgeq25U.js index a76f9953044..807e45ba10f 100644 --- a/assets/quantum_painter_qff.md.CXDvkMIQ.js +++ b/assets/quantum_painter_qff.md.DRgeq25U.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Font Format","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter_qff.md","filePath":"quantum_painter_qff.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter_qff.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Font Format

QMK uses a font format ("Quantum Font Format" - QFF) specifically for resource-constrained systems.

This format is capable of encoding 1-, 2-, 4-, and 8-bit-per-pixel greyscale- and palette-based images into a font. It also includes RLE for pixel data for some basic compression.

All integer values are in little-endian format.

The QFF is defined in terms of blocks -- each block contains a header and an optional blob of data. The header contains the block's typeid, and the length of the blob that follows. Each block type is denoted by a different typeid has its own block definition below. All blocks are defined as packed structs, containing zero padding between fields.

The general structure of the file is:

Block Header

The block header is identical to QGF's block header, and is present for all blocks, including the font descriptor.

Font descriptor block

This block must be located at the start of the file contents, and can exist a maximum of once in an entire QGF file. It is always followed by either the ASCII glyph table or the Unicode glyph table, depending on which glyphs are included in the font.

Block format:

c
typedef struct __attribute__((packed)) qff_font_descriptor_v1_t {\n    qgf_block_header_v1_t header;               // = { .type_id = 0x00, .neg_type_id = (~0x00), .length = 20 }\n    uint24_t              magic;                // constant, equal to 0x464651 ("QFF")\n    uint8_t               qff_version;          // constant, equal to 0x01\n    uint32_t              total_file_size;      // total size of the entire file, starting at offset zero\n    uint32_t              neg_total_file_size;  // negated value of total_file_size, used for detecting parsing errors\n    uint8_t               line_height;          // glyph height in pixels\n    bool                  has_ascii_table;      // whether the font has an ascii table of glyphs (0x20...0x7E)\n    uint16_t              num_unicode_glyphs;   // the number of glyphs in the unicode table -- no table specified if zero\n    uint8_t               format;               // frame format, see below.\n    uint8_t               flags;                // frame flags, see below.\n    uint8_t               compression_scheme;   // compression scheme, see below.\n    uint8_t               transparency_index;   // palette index used for transparent pixels (not yet implemented)\n} qff_font_descriptor_v1_t;\n// STATIC_ASSERT(sizeof(qff_font_descriptor_v1_t) == (sizeof(qgf_block_header_v1_t) + 20), "qff_font_descriptor_v1_t must be 25 bytes in v1 of QFF");

The values for format, flags, compression_scheme, and transparency_index match QGF's frame descriptor block, with the exception that the delta flag is ignored by QFF.

ASCII glyph table

If the font contains ascii characters, the ASCII glyph block must be located directly after the font descriptor block.

c
#define QFF_GLYPH_WIDTH_BITS 6\n#define QFF_GLYPH_WIDTH_MASK ((1<<QFF_GLYPH_WIDTH_BITS)-1)\n#define QFF_GLYPH_OFFSET_BITS 18\n#define QFF_GLYPH_OFFSET_MASK (((1<<QFF_GLYPH_OFFSET_BITS)-1) << QFF_GLYPH_WIDTH_BITS)\n\ntypedef struct __attribute__((packed)) qff_ascii_glyph_table_v1_t {\n    qgf_block_header_v1_t header;  // = { .type_id = 0x01, .neg_type_id = (~0x01), .length = 285 }\n    uint24_t glyph[95];            // 95 glyphs, 0x20..0x7E, see bits/masks above for values\n} qff_ascii_glyph_table_v1_t;\n// STATIC_ASSERT(sizeof(qff_ascii_glyph_table_v1_t) == (sizeof(qgf_block_header_v1_t) + 285), "qff_ascii_glyph_table_v1_t must be 290 bytes in v1 of QFF");

Unicode glyph table

If this font contains unicode characters, the unicode glyph block must be located directly after the ASCII glyph table block, or the font descriptor block if the font does not contain ASCII characters.

c
typedef struct __attribute__((packed)) qff_unicode_glyph_table_v1_t {\n    qgf_block_header_v1_t header;     // = { .type_id = 0x02, .neg_type_id = (~0x02), .length = (N * 6) }\n    struct __attribute__((packed)) {  // container for a single unicode glyph\n        uint24_t code_point;          // the unicode code point\n        uint24_t glyph;               // the glyph information, as per ASCII glyphs above\n    } glyph[N];                       // N glyphs worth of data\n} qff_unicode_glyph_table_v1_t;

Font palette block

The font palette block is identical to QGF's frame palette block, retaining the same typeid of 0x03.

It is only specified in the QFF if the font is palette-based, and follows the unicode glyph block if the font contains any Unicode glyphs, or the ASCII glyph block if the font contains only ASCII glyphs.

Font data block

The font data block is the last block in the file and is identical to QGF's frame data block, however has a different typeid of 0x04 in QFF.

', 30); diff --git a/assets/quantum_painter_qff.md.CXDvkMIQ.lean.js b/assets/quantum_painter_qff.md.DRgeq25U.lean.js similarity index 83% rename from assets/quantum_painter_qff.md.CXDvkMIQ.lean.js rename to assets/quantum_painter_qff.md.DRgeq25U.lean.js index 9c0306041ce..142e86ec510 100644 --- a/assets/quantum_painter_qff.md.CXDvkMIQ.lean.js +++ b/assets/quantum_painter_qff.md.DRgeq25U.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Font Format","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter_qff.md","filePath":"quantum_painter_qff.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter_qff.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 30); diff --git a/assets/quantum_painter_qgf.md.dCZ307fz.js b/assets/quantum_painter_qgf.md.BAMuGJMk.js similarity index 99% rename from assets/quantum_painter_qgf.md.dCZ307fz.js rename to assets/quantum_painter_qgf.md.BAMuGJMk.js index a4524021501..e1b93523b51 100644 --- a/assets/quantum_painter_qgf.md.dCZ307fz.js +++ b/assets/quantum_painter_qgf.md.BAMuGJMk.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Graphics Format","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter_qgf.md","filePath":"quantum_painter_qgf.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter_qgf.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Graphics Format

QMK uses a graphics format ("Quantum Graphics Format" - QGF) specifically for resource-constrained systems.

This format is capable of encoding 1-, 2-, 4-, and 8-bit-per-pixel greyscale- and palette-based images. It also includes RLE for pixel data for some basic compression.

All integer values are in little-endian format.

The QGF is defined in terms of blocks -- each block contains a header and an optional blob of data. The header contains the block's typeid, and the length of the blob that follows. Each block type is denoted by a different typeid has its own block definition below. All blocks are defined as packed structs, containing zero padding between fields.

The general structure of the file is:

Different frames within the file should be considered "isolated" and may have their own image format and/or palette.

Block Header

This block header is present for all blocks, including the graphics descriptor.

Block header format:

c
typedef struct __attribute__((packed)) qgf_block_header_v1_t {\n    uint8_t type_id;      // See each respective block type\n    uint8_t neg_type_id;  // Negated type ID, used for detecting parsing errors\n    uint24_t length;      // 24-bit blob length, allowing for block sizes of a maximum of 16MB\n} qgf_block_header_v1_t;\n// STATIC_ASSERT(sizeof(qgf_block_header_v1_t) == 5, "qgf_block_header_v1_t must be 5 bytes in v1 of QGF");

The length describes the number of octets in the data following the block header -- a block header may specify a length of 0 if no blob is specified.

Graphics descriptor block

This block must be located at the start of the file contents, and can exist a maximum of once in an entire QGF file. It is always followed by the frame offset block.

Block format:

c
typedef struct __attribute__((packed)) qgf_graphics_descriptor_v1_t {\n    qgf_block_header_v1_t header;               // = { .type_id = 0x00, .neg_type_id = (~0x00), .length = 18 }\n    uint24_t              magic;                // constant, equal to 0x464751 ("QGF")\n    uint8_t               qgf_version;          // constant, equal to 0x01\n    uint32_t              total_file_size;      // total size of the entire file, starting at offset zero\n    uint32_t              neg_total_file_size;  // negated value of total_file_size, used for detecting parsing errors\n    uint16_t              image_width;          // in pixels\n    uint16_t              image_height;         // in pixels\n    uint16_t              frame_count;          // minimum of 1\n} qgf_graphics_descriptor_v1_t;\n// STATIC_ASSERT(sizeof(qgf_graphics_descriptor_v1_t) == (sizeof(qgf_block_header_v1_t) + 18), "qgf_graphics_descriptor_v1_t must be 23 bytes in v1 of QGF");

Frame offset block

This block denotes the offsets within the file to each frame's frame descriptor block, relative to the start of the file. The frame offset block always immediately follows the graphics descriptor block. The contents of this block are an array of U32's, with one entry for each frame.

Duplicate frame offsets in this block are allowed, if a certain frame is to be shown multiple times during animation.

Block format:

c
typedef struct __attribute__((packed)) qgf_frame_offsets_v1_t {\n    qgf_block_header_v1_t header;    // = { .type_id = 0x01, .neg_type_id = (~0x01), .length = (N * sizeof(uint32_t)) }\n    uint32_t              offset[N]; // where 'N' is the number of frames in the file\n} qgf_frame_offsets_v1_t;

Frame descriptor block

This block denotes the start of a frame.

Block format:

c
typedef struct __attribute__((packed)) qgf_frame_v1_t {\n    qgf_block_header_v1_t header;              // = { .type_id = 0x02, .neg_type_id = (~0x02), .length = 5 }\n    uint8_t               format;              // Frame format, see below.\n    uint8_t               flags;               // Frame flags, see below.\n    uint8_t               compression_scheme;  // Compression scheme, see below.\n    uint8_t               transparency_index;  // palette index used for transparent pixels (not yet implemented)\n    uint16_t              delay;               // frame delay time for animations (in units of milliseconds)\n} qgf_frame_v1_t;\n// STATIC_ASSERT(sizeof(qgf_frame_v1_t) == (sizeof(qgf_block_header_v1_t) + 6), "qgf_frame_v1_t must be 11 bytes in v1 of QGF");

If this frame is grayscale, the frame descriptor block (or frame delta block if flags denote a delta frame) is immediately followed by this frame's corresponding frame data block.

If the frame uses an indexed palette, the frame descriptor block (or frame delta block if flags denote a delta frame) is immediately followed by this frame's corresponding frame palette block.

Frame format possible values:

Frame flags is a bitmask with the following format:

bit 7bit 6bit 5bit 4bit 3bit 2bit 1bit 0
------DeltaTransparency

Compression scheme possible values:

Frame palette block

This block describes the palette used for the frame. The blob contains an array of palette entries -- one palette entry is present for each color used -- each palette entry is in QMK HSV888 format:

c
typedef struct __attribute__((packed)) qgf_palette_v1_t {\n    qgf_block_header_v1_t header;     // = { .type_id = 0x03, .neg_type_id = (~0x03), .length = (N * 3 * sizeof(uint8_t)) }\n    struct {  // container for a single HSV palette entry\n        uint8_t h;                    // hue component: `[0,360)` degrees is mapped to `[0,255]` uint8_t.\n        uint8_t s;                    // saturation component: `[0,1]` is mapped to `[0,255]` uint8_t.\n        uint8_t v;                    // value component: `[0,1]` is mapped to `[0,255]` uint8_t.\n    } hsv[N];                         // N * hsv, where N is the number of palette entries depending on the frame format in the descriptor\n} qgf_palette_v1_t;

Frame delta block

This block describes where the delta frame should be drawn, with respect to the top left location of the image.

c
typedef struct __attribute__((packed)) qgf_delta_v1_t {\n    qgf_block_header_v1_t header;  // = { .type_id = 0x04, .neg_type_id = (~0x04), .length = 8 }\n    uint16_t left;                 // The left pixel location to draw the delta image\n    uint16_t top;                  // The top pixel location to draw the delta image\n    uint16_t right;                // The right pixel location to to draw the delta image\n    uint16_t bottom;               // The bottom pixel location to to draw the delta image\n} qgf_delta_v1_t;\n// STATIC_ASSERT(sizeof(qgf_delta_v1_t) == 13, "qgf_delta_v1_t must be 13 bytes in v1 of QGF");

Frame data block

This block describes the data associated with the frame. The blob contains an array of bytes containing the data corresponding to the frame's image format:

c
typedef struct __attribute__((packed)) qgf_data_v1_t {\n    qgf_block_header_v1_t header;   // = { .type_id = 0x05, .neg_type_id = (~0x05), .length = N }\n    uint8_t               data[N];  // N data octets\n} qgf_data_v1_t;
', 50); diff --git a/assets/quantum_painter_qgf.md.dCZ307fz.lean.js b/assets/quantum_painter_qgf.md.BAMuGJMk.lean.js similarity index 83% rename from assets/quantum_painter_qgf.md.dCZ307fz.lean.js rename to assets/quantum_painter_qgf.md.BAMuGJMk.lean.js index 3addc4d27e1..6829ebde1d7 100644 --- a/assets/quantum_painter_qgf.md.dCZ307fz.lean.js +++ b/assets/quantum_painter_qgf.md.BAMuGJMk.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Graphics Format","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter_qgf.md","filePath":"quantum_painter_qgf.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter_qgf.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 50); diff --git a/assets/quantum_painter_rle.md.DdkKl5uO.js b/assets/quantum_painter_rle.md.CgkQ1vsZ.js similarity index 95% rename from assets/quantum_painter_rle.md.DdkKl5uO.js rename to assets/quantum_painter_rle.md.CgkQ1vsZ.js index e717633eef9..814e2f84a41 100644 --- a/assets/quantum_painter_rle.md.DdkKl5uO.js +++ b/assets/quantum_painter_rle.md.CgkQ1vsZ.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK QGF/QFF RLE data schema","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter_rle.md","filePath":"quantum_painter_rle.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter_rle.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK QGF/QFF RLE data schema

There are two "modes" to the RLE algorithm used in both QGF/QFF:

Decoder pseudocode:

while !EOF\n    marker = READ_OCTET()\n\n    if marker >= 128\n        length = marker - 128\n        for i = 0 ... length-1\n            c = READ_OCTET()\n            WRITE_OCTET(c)\n\n    else\n        length = marker\n        c = READ_OCTET()\n        for i = 0 ... length-1\n            WRITE_OCTET(c)
', 5); diff --git a/assets/quantum_painter_rle.md.DdkKl5uO.lean.js b/assets/quantum_painter_rle.md.CgkQ1vsZ.lean.js similarity index 83% rename from assets/quantum_painter_rle.md.DdkKl5uO.lean.js rename to assets/quantum_painter_rle.md.CgkQ1vsZ.lean.js index 764fe8d51d1..34d8c8a8403 100644 --- a/assets/quantum_painter_rle.md.DdkKl5uO.lean.js +++ b/assets/quantum_painter_rle.md.CgkQ1vsZ.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK QGF/QFF RLE data schema","description":"","frontmatter":{},"headers":[],"relativePath":"quantum_painter_rle.md","filePath":"quantum_painter_rle.md","lastUpdated":null}'); const _sfc_main = { name: "quantum_painter_rle.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 5); diff --git a/assets/ref_functions.md.z3oNszvF.js b/assets/ref_functions.md.CYB23zzB.js similarity index 99% rename from assets/ref_functions.md.z3oNszvF.js rename to assets/ref_functions.md.CYB23zzB.js index 058c5e1ed5a..82610b25dae 100644 --- a/assets/ref_functions.md.z3oNszvF.js +++ b/assets/ref_functions.md.CYB23zzB.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"List of Useful Core Functions To Make Your Keyboard Better","description":"","frontmatter":{},"headers":[],"relativePath":"ref_functions.md","filePath":"ref_functions.md","lastUpdated":null}'); const _sfc_main = { name: "ref_functions.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

List of Useful Core Functions To Make Your Keyboard Better

There are a lot of hidden functions in QMK that are incredibly useful, or may add a bit of functionality that you've been wanting. Functions that are specific to certain features are not included here, as those will be on their respective feature page.

(OLKB) Tri Layers

There are actually separate functions that you can use there, depending on what you're after.

update_tri_layer(x, y, z)

The first is the update_tri_layer(x, y, z) function. This function check to see if layers x and y are both on. If they are both on, then it turns on layer z. Otherwise, if both x and y are not both on (either only one is, or neither is), then it turns off layer z.

This function is useful if you want to create specific keys that have this functionality, but other layer keycodes won't do this.

Example

c
bool process_record_user(uint16_t keycode, keyrecord_t *record) {\n  switch (keycode) {\n    case LOWER:\n      if (record->event.pressed) {\n        layer_on(_LOWER);\n        update_tri_layer(_LOWER, _RAISE, _ADJUST);\n      } else {\n        layer_off(_LOWER);\n        update_tri_layer(_LOWER, _RAISE, _ADJUST);\n      }\n      return false;\n    case RAISE:\n      if (record->event.pressed) {\n        layer_on(_RAISE);\n        update_tri_layer(_LOWER, _RAISE, _ADJUST);\n      } else {\n        layer_off(_RAISE);\n        update_tri_layer(_LOWER, _RAISE, _ADJUST);\n      }\n      return false;\n    }\n  return true;\n}

update_tri_layer_state(state, x, y, z)

The other function is update_tri_layer_state(state, x, y, z). This function is meant to be called from the layer_state_set_* functions. This means that any time that you use a keycode to change the layer, this will be checked. So you could use LT(layer, kc) to change the layer and it will trigger the same layer check.

There are a couple of caveats to this method:

  1. You cannot access the z layer without having x and y layers on, since if you try to activate just layer z, it will run this code and turn off layer z before you could use it.
  2. Because layers are processed from the highest number z should be a higher layer than x and y or you may not be able to access it.

Example

c
layer_state_t layer_state_set_user(layer_state_t state) {\n  return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);\n}

Alternatively, you don't have to immediately "return" the value. This is useful if you want to add multiple tri layers, or if you want to add additional effects.

c
layer_state_t layer_state_set_user(layer_state_t state) {\n  state = update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST);\n  state = update_tri_layer_state(state, _RAISE, _SYMB, _SPECIAL);\n  return state;\n}

Setting the Persistent Default Layer

Do you want to set the default layer, so that it's retained even after you unplug the board? If so, this is the function for you.

To do this, you would use set_single_persistent_default_layer(layer). If you have a name defined for your layer, you can use that instead (such as _QWERTY, _DVORAK or _COLEMAK).

This will set the default layer, update the persistent settings, and play a tune if you have Audio enabled on your board, and the default layer sounds set.

To configure the default layer sounds, you would want to define this in your config.h file, like this:

c
#define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \\\n                              SONG(COLEMAK_SOUND), \\\n                              SONG(DVORAK_SOUND) \\\n                            }

If you do not require it to be retained after you unplug the board, use set_single_default_layer(layer) instead.

TIP

There are a large number of predefined songs in quantum/audio/song_list.h that you can use.

Resetting the keyboard

There is the QK_REBOOT or QK_RBT quantum keycode that you can use. But if you want to reset the board as part of a macro, rather than hitting a key separately, you can do that.

And to do so, add soft_reset_keyboard() to your function or macro.

Reset to bootloader

To reset to the bootloader use QK_BOOTLOADER or QK_BOOT keycode or reset_keyboard() function.

Wiping the EEPROM (Persistent Storage)

If you're having issues with Audio, RGB Underglow, backlighting or keys acting weird, then you can reset the EEPROM (persistent setting storage). To force an EEPROM reset, use the EE_CLR keycode or Bootmagic functionality. If neither of those are an option, then you can use a custom macro to do so.

To wipe the EEPROM, run eeconfig_init() from your function or macro to reset most of the settings to default.

Tap random key

If you want to send a random character to the host computer, you can use the tap_random_base64() function. This pseudorandomly selects a number between 0 and 63, and then sends a key press based on that selection. (0–25 is AZ, 26–51 is az, 52–61 is 09, 62 is + and 63 is /).

TIP

Needless to say, but this is not a cryptographically secure method of generating random Base64 keys or passwords.

Software Timers

It's possible to start timers and read values for time-specific events. Here's an example:

c
static uint16_t key_timer;\nkey_timer = timer_read();\n\nif (timer_elapsed(key_timer) < 100) {\n  // do something if less than 100ms have passed\n} else {\n  // do something if 100ms or more have passed\n}
', 39); diff --git a/assets/ref_functions.md.z3oNszvF.lean.js b/assets/ref_functions.md.CYB23zzB.lean.js similarity index 83% rename from assets/ref_functions.md.z3oNszvF.lean.js rename to assets/ref_functions.md.CYB23zzB.lean.js index 2f3bf781aa7..67d8ee08431 100644 --- a/assets/ref_functions.md.z3oNszvF.lean.js +++ b/assets/ref_functions.md.CYB23zzB.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"List of Useful Core Functions To Make Your Keyboard Better","description":"","frontmatter":{},"headers":[],"relativePath":"ref_functions.md","filePath":"ref_functions.md","lastUpdated":null}'); const _sfc_main = { name: "ref_functions.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 39); diff --git a/assets/reference_configurator_support.md.CMO4zI2z.js b/assets/reference_configurator_support.md.DofEycBd.js similarity index 99% rename from assets/reference_configurator_support.md.CMO4zI2z.js rename to assets/reference_configurator_support.md.DofEycBd.js index a94c92e1e78..c8b5138c3d9 100644 --- a/assets/reference_configurator_support.md.CMO4zI2z.js +++ b/assets/reference_configurator_support.md.DofEycBd.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/JKngtTw.png"; const _imports_1 = "/fmDvDzR.png"; const __pageData = JSON.parse('{"title":"Supporting Your Keyboard in QMK Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"reference_configurator_support.md","filePath":"reference_configurator_support.md","lastUpdated":null}'); diff --git a/assets/reference_configurator_support.md.CMO4zI2z.lean.js b/assets/reference_configurator_support.md.DofEycBd.lean.js similarity index 86% rename from assets/reference_configurator_support.md.CMO4zI2z.lean.js rename to assets/reference_configurator_support.md.DofEycBd.lean.js index 004f87e22f3..f06f9294774 100644 --- a/assets/reference_configurator_support.md.CMO4zI2z.lean.js +++ b/assets/reference_configurator_support.md.DofEycBd.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const _imports_0 = "/JKngtTw.png"; const _imports_1 = "/fmDvDzR.png"; const __pageData = JSON.parse('{"title":"Supporting Your Keyboard in QMK Configurator","description":"","frontmatter":{},"headers":[],"relativePath":"reference_configurator_support.md","filePath":"reference_configurator_support.md","lastUpdated":null}'); diff --git a/assets/reference_glossary.md.CLUEcDDm.js b/assets/reference_glossary.md.BUGMb41c.js similarity index 99% rename from assets/reference_glossary.md.CLUEcDDm.js rename to assets/reference_glossary.md.BUGMb41c.js index dcfb1db05c0..26730413cff 100644 --- a/assets/reference_glossary.md.CLUEcDDm.js +++ b/assets/reference_glossary.md.BUGMb41c.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Glossary of QMK Terms","description":"","frontmatter":{},"headers":[],"relativePath":"reference_glossary.md","filePath":"reference_glossary.md","lastUpdated":null}'); const _sfc_main = { name: "reference_glossary.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Glossary of QMK Terms

ARM

A line of 32-bit MCUs produced by a number of companies, such as Atmel, Cypress, Kinetis, NXP, ST, and TI.

AVR

A line of 8-bit MCUs produced by Atmel. AVR was the original platform that TMK supported.

AZERTY

The standard Français (French) keyboard layout. Named for the first 6 keys on the keyboard.

Backlight

A generic term for lighting on a keyboard. The backlight is typically, but not always, an array of LEDs that shine through keycaps and/or switches.

Bluetooth

A short range peer to peer wireless protocol. Most common wireless protocol for a keyboard.

Bootloader

A special program that is written to a protected area of your MCU that allows the MCU to upgrade its own firmware, typically over USB.

Bootmagic

A feature that allows for various keyboard behavior changes to happen on the fly, such as swapping or disabling common keys.

C

A low-level programming language suitable for system code. Most QMK code is written in C.

Colemak

An alternative keyboard layout that is gaining in popularity.

Compile

The process of turning human readable code into machine code your MCU can run.

Dvorak

An alternative keyboard layout developed by Dr. August Dvorak in the 1930's. A shortened form of the Dvorak Simplified Keyboard.

Dynamic Macro

A macro which has been recorded on the keyboard and which will be lost when the keyboard is unplugged or the computer rebooted.

Eclipse

An IDE that is popular with many C developers.

Firmware

The software that controls your MCU.

git

Versioning software used at the command line

GitHub

The website that hosts most of the QMK project. It provides integration with git, issue tracking, and other features that help us run QMK.

ISP

In-system programming, a method of programming an AVR chip using external hardware and the JTAG pins.

hid_listen

An interface for receiving debugging messages from your keyboard. You can view these messages using QMK Flasher or PJRC's hid_listen

Keycode

A 2-byte number that represents a particular key. 0x00-0xFF are used for Basic Keycodes while 0x100-0xFFFF are used for Quantum Keycodes.

Key Down

An event that happens when a key is pressed down, but is completed before a key is released.

Key Up

An event that happens when a key is released.

Keymap

An array of keycodes mapped to a physical keyboard layout, which are processed on key presses and releases

Layer

An abstraction used to allow a key to serve multiple purposes. The highest active layer takes precedence.

Leader Key

A feature that allows you to tap the leader key followed by a sequence of 1, 2, or 3 keys to activate key presses or other quantum features.

LED

Light Emitting Diode, the most common device used for indicators on a keyboard.

Make

Software package that is used to compile all the source files. You run make with various options to compile your keyboard firmware.

Matrix

A wiring pattern of columns and rows that enables the MCU to detect keypresses with a fewer number of pins. The matrix often incorporates diodes to allow for NKRO.

Macro

A feature that lets you send multiple keypress events (hid reports) after having pressed only a single key.

MCU

Microcontrol Unit, the processor that powers your keyboard.

Modifier

A key that is held down while typing another key to modify the action of that key. Examples include Ctrl, Alt, and Shift.

Mousekeys

A feature that lets you control your mouse cursor and click from your keyboard.

N-Key Rollover (NKRO)

A term that applies to keyboards that are capable of reporting any number of key-presses at once.

Oneshot Modifier

A modifier that acts as if it is held down until another key is released, so you can press the mod and then press the key, rather than holding the mod while pressing the key. Also known as a Sticky key or a Dead key.

ProMicro

A low cost AVR development board. Clones of this device are often found on ebay very inexpensively (under $5) but people often struggle with flashing their pro micros.

Pull Request

A request to submit code to QMK. We encourage all users to submit Pull Requests for bugfixes and new features.

QWERTY

The standard English keyboard layout, and often a shortcut for other language's standard layouts. Named for the first 6 letters on the keyboard.

QWERTZ

The standard Deutsche (German) keyboard layout. Named for the first 6 letters on the keyboard.

Rollover

The term for pressing a key while a key is already held down. Variants include 2KRO, 6KRO, and NKRO.

Scancode

A 1 byte number that is sent as part of a HID report over USB that represents a single key. These numbers are documented in the HID Usage Tables published by the USB-IF.

Space Cadet Shift

A special set of shift keys which allow you to type various types of braces by tapping the left or right shift one or more times.

Tap

Pressing and releasing a key. In some situations you will need to distinguish between a key down and a key up event, and Tap always refers to both at once.

Tap Dance

A feature that lets you assign multiple keycodes to the same key based on how many times you press it.

Teensy

A low-cost AVR development board that is commonly used for hand-wired builds. A teensy is often chosen despite costing a few dollars more due to its halfkay bootloader, which makes flashing very simple.

Underlight

A generic term for LEDs that light the underside of the board. These LEDs typically shine away from the bottom of the PCB and towards the surface the keyboard rests on.

Unicode

In the larger computer world Unicode is a set of encoding schemes for representing characters in any language. As it relates to QMK it means using various OS schemes to send unicode codepoints instead of scancodes.

Unit Testing

A framework for running automated tests against QMK. Unit testing helps us be confident that our changes do not break anything.

USB

Universal Serial Bus, the most common wired interface for a keyboard.

USB Host (or simply Host)

The USB Host is your computer, or whatever device your keyboard is plugged into.

Couldn't Find the Term You're Looking For?

Open an issue with your question and the term in question could be added here. Better still, open a pull request with the definition. 😃

', 108); diff --git a/assets/reference_glossary.md.CLUEcDDm.lean.js b/assets/reference_glossary.md.BUGMb41c.lean.js similarity index 83% rename from assets/reference_glossary.md.CLUEcDDm.lean.js rename to assets/reference_glossary.md.BUGMb41c.lean.js index 4fc9bac85c5..836cbb1f0ba 100644 --- a/assets/reference_glossary.md.CLUEcDDm.lean.js +++ b/assets/reference_glossary.md.BUGMb41c.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Glossary of QMK Terms","description":"","frontmatter":{},"headers":[],"relativePath":"reference_glossary.md","filePath":"reference_glossary.md","lastUpdated":null}'); const _sfc_main = { name: "reference_glossary.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 108); diff --git a/assets/reference_info_json.md.ePkZR-z-.js b/assets/reference_info_json.md.CYTzLhJO.js similarity index 99% rename from assets/reference_info_json.md.ePkZR-z-.js rename to assets/reference_info_json.md.CYTzLhJO.js index a96e8057cb1..0ed38b4db01 100644 --- a/assets/reference_info_json.md.ePkZR-z-.js +++ b/assets/reference_info_json.md.CYTzLhJO.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, l as createBaseVNode, a as createTextVNode, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, l as createBaseVNode, a as createTextVNode, I as createVNode, w as withCtx, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"info.json Reference","description":"","frontmatter":{},"headers":[],"relativePath":"reference_info_json.md","filePath":"reference_info_json.md","lastUpdated":null}'); const _sfc_main = { name: "reference_info_json.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

info.json Reference

The information contained in info.json is combined with the config.h and rules.mk files, dynamically generating the necessary configuration for your keyboard at compile time. It is also used by the QMK API, and contains the information QMK Configurator needs to display a representation of your keyboard. Its key/value pairs are ruled by the data/schemas/keyboard.jsonschema file. To learn more about the why and how of the schema file see the Data Driven Configuration page.

You can create info.json files at every level under qmk_firmware/keyboards/<keyboard>. These files are combined, with more specific files overriding keys in less specific files. This means you do not need to duplicate your metadata information. For example, qmk_firmware/keyboards/clueboard/info.json specifies information common to all Clueboard products, such as manufacturer and maintainer, while qmk_firmware/keyboards/clueboard/66/info.json contains more specific information about Clueboard 66%.

General Metadata

', 4); diff --git a/assets/reference_info_json.md.ePkZR-z-.lean.js b/assets/reference_info_json.md.CYTzLhJO.lean.js similarity index 99% rename from assets/reference_info_json.md.ePkZR-z-.lean.js rename to assets/reference_info_json.md.CYTzLhJO.lean.js index 55e7d78639e..2b138a47594 100644 --- a/assets/reference_info_json.md.ePkZR-z-.lean.js +++ b/assets/reference_info_json.md.CYTzLhJO.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, l as createBaseVNode, a as createTextVNode, I as createVNode, w as withCtx, a8 as createStaticVNode, D as resolveComponent, o as openBlock } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, E as resolveComponent, o as openBlock, c as createElementBlock, l as createBaseVNode, a as createTextVNode, I as createVNode, w as withCtx, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"info.json Reference","description":"","frontmatter":{},"headers":[],"relativePath":"reference_info_json.md","filePath":"reference_info_json.md","lastUpdated":null}'); const _sfc_main = { name: "reference_info_json.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 4); diff --git a/assets/reference_keymap_extras.md.B2sSpD5d.js b/assets/reference_keymap_extras.md.BAQkmhul.js similarity index 99% rename from assets/reference_keymap_extras.md.B2sSpD5d.js rename to assets/reference_keymap_extras.md.BAQkmhul.js index 81c48d14d80..934215425ed 100644 --- a/assets/reference_keymap_extras.md.B2sSpD5d.js +++ b/assets/reference_keymap_extras.md.BAQkmhul.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Language-specific Keycodes","description":"","frontmatter":{},"headers":[],"relativePath":"reference_keymap_extras.md","filePath":"reference_keymap_extras.md","lastUpdated":null}'); const _sfc_main = { name: "reference_keymap_extras.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Language-specific Keycodes

Keyboards are able to support a wide range of languages. However, this support is not actually achieved within the keyboard itself - instead, it sends numerical codes, which the operating system maps to the appropriate characters depending on the user's configured keyboard layout. By default (and per the HID spec), this is the US ANSI layout. For example, when a Swedish person presses the key with the å character printed on it, the keyboard is actually sending the keycode for [.

Obviously, this can get confusing, so QMK provides language-specific keycode aliases for many keyboard layouts. These are used in place of the KC_ prefixed ones. They won't do much on their own - you still have to set the matching keyboard layout in your OS settings. Think of them more as keycap labels for your keymap. The language-specific keycode aliases are defined in the files listed in the Keycodes Header column below.

Selecting Your Host Keyboard Layout

To select a host keyboard layout, simply #include one of the keycode headers below at the top of your keymap.c. Example:

c
#include QMK_KEYBOARD_H\n\n#include "keymap_japanese.h"

Alternatively, if using keymap.json, add the host_language key as shown in the following example. The available languages are those with a Sendstring LUT Header entry in one of the Header Files tables.

json
{\n    "keyboard": "handwired/my_macropad",\n    "keymap": "my_keymap",\n    "host_language": "swedish", \n    "layout": "LAYOUT_all",\n    "layers": [\n        ["SE_ARNG"]\n    ]\n}

Sendstring Support

By default, SEND_STRING() assumes a US ANSI keyboard layout is set. If you are using a different layout, you can include one of the Sendstring LUT headers below in your keymap.c to override the lookup tables used for mapping ASCII characters to keycodes. You do not need to include the corresponding keymap_*.h header, as it is implicit when including the Sendstring header.

An important thing to note here is that SEND_STRING() only operates on ASCII text. This means that you cannot pass it a string containing Unicode characters - this unfortunately includes accented characters that may be present in your desired layout.
Many layouts make certain characters, such as Grave or Tilde, available only as dead keys, so you must add a space immediately after it in the string you want to send, to prevent it from potentially combining with the next character.
Certain other layouts have no Sendstring header as they do not use a Latin-derived alphabet (for example Greek and Russian), and thus there is no way to input most of the ASCII character set.

Header Files

These headers are located in quantum/keymap_extras/.

LayoutKeycodes HeaderSendstring LUT Header
Canadian Multilingual (CSA)keymap_canadian_multilingual.hsendstring_canadian_multilingual.h
Croatiankeymap_croatian.hsendstring_croatian.h
Czechkeymap_czech.hsendstring_czech.h
Czech (macOS, ANSI)keymap_czech_mac_ansi.hsendstring_czech_mac_ansi.h
Czech (macOS, ISO)keymap_czech_mac_iso.hsendstring_czech_mac_iso.h
Danishkeymap_danish.hsendstring_danish.h
Dutch (Belgium)keymap_belgian.hsendstring_belgian.h
English (Ireland)keymap_irish.h
English (UK)keymap_uk.hsendstring_uk.h
English (US Extended)keymap_us_extended.h
English (US International)keymap_us_international.hsendstring_us_international.h
English (US International, Linux)keymap_us_international_linux.h
Estoniankeymap_estonian.hsendstring_estonian.h
EurKEYkeymap_eurkey.h
Farsikeymap_farsi.h
Finnishkeymap_finnish.hsendstring_finnish.h
Frenchkeymap_french.hsendstring_french.h
French (AFNOR)keymap_french_afnor.hsendstring_french_afnor.h
French (BÉPO)keymap_bepo.hsendstring_bepo.h
French (Belgium)keymap_belgian.hsendstring_belgian.h
French (Canada)keymap_canadian_french.hsendstring_canadian_french.h
French (Switzerland)keymap_swiss_fr.hsendstring_swiss_fr.h
French (macOS, ISO)keymap_french_mac_iso.hsendstring_french_mac_iso.h
Germankeymap_german.hsendstring_german.h
German (Switzerland)keymap_swiss_de.hsendstring_swiss_de.h
German (macOS)keymap_german_mac_iso.hsendstring_german_mac_iso.h
German (Neo2)keymap_neo2.h
Greekkeymap_greek.h
Hebrewkeymap_hebrew.h
Hungariankeymap_hungarian.hsendstring_hungarian.h
Icelandickeymap_icelandic.hsendstring_icelandic.h
Italiankeymap_italian.hsendstring_italian.h
Italian (macOS, ANSI)keymap_italian_mac_ansi.hsendstring_italian_mac_ansi.h
Italian (macOS, ISO)keymap_italian_mac_iso.hsendstring_italian_mac_iso.h
Japanesekeymap_japanese.hsendstring_japanese.h
Koreankeymap_korean.h
Latviankeymap_latvian.hsendstring_latvian.h
Lithuanian (ĄŽERTY)keymap_lithuanian_azerty.hsendstring_lithuanian_azerty.h
Lithuanian (QWERTY)keymap_lithuanian_qwerty.hsendstring_lithuanian_qwerty.h
Norwegiankeymap_norwegian.hsendstring_norwegian.h
Polishkeymap_polish.h
Portuguesekeymap_portuguese.hsendstring_portuguese.h
Portuguese (macOS, ISO)keymap_portuguese_mac_iso.hsendstring_portuguese_mac_iso.h
Portuguese (Brazil)keymap_brazilian_abnt2.hsendstring_brazilian_abnt2.h
Romaniankeymap_romanian.hsendstring_romanian.h
Russiankeymap_russian.h
Serbiankeymap_serbian.h
Serbian (Latin)keymap_serbian_latin.hsendstring_serbian_latin.h
Slovakkeymap_slovak.hsendstring_slovak.h
Sloveniankeymap_slovenian.hsendstring_slovenian.h
Spanishkeymap_spanish.hsendstring_spanish.h
Spanish (Dvorak)keymap_spanish_dvorak.hsendstring_spanish_dvorak.h
Spanish (Latin America)keymap_spanish_latin_america.hsendstring_spanish_latin_america.h
Swedishkeymap_swedish.hsendstring_swedish.h
Swedish (macOS, ANSI)keymap_swedish_mac_ansi.h
Swedish (macOS, ISO)keymap_swedish_mac_iso.h
Swedish Pro (macOS, ANSI)keymap_swedish_pro_mac_ansi.h
Swedish Pro (macOS, ISO)keymap_swedish_pro_mac_iso.h
Turkish (F)keymap_turkish_f.hsendstring_turkish_f.h
Turkish (Q)keymap_turkish_q.hsendstring_turkish_q.h
Ukrainiankeymap_ukrainian.h

There are also a few which are not quite language-specific, but useful if you are not using a QWERTY layout:

LayoutKeycodes HeaderSendstring LUT Header
Colemakkeymap_colemak.hsendstring_colemak.h
Dvorakkeymap_dvorak.hsendstring_dvorak.h
Dvorak (French)keymap_dvorak_fr.hsendstring_dvorak_fr.h
Dvorak (Programmer)keymap_dvorak_programmer.hsendstring_dvorak_programmer.h
Normankeymap_norman.hsendstring_norman.h
Ploverkeymap_plover.h
Plover (Dvorak)keymap_plover_dvorak.h
Workmankeymap_workman.hsendstring_workman.h
Workman (ZXCVM)keymap_workman_zxcvm.hsendstring_workman_zxcvm.h
', 16); diff --git a/assets/reference_keymap_extras.md.B2sSpD5d.lean.js b/assets/reference_keymap_extras.md.BAQkmhul.lean.js similarity index 84% rename from assets/reference_keymap_extras.md.B2sSpD5d.lean.js rename to assets/reference_keymap_extras.md.BAQkmhul.lean.js index 6e7bfe49a23..e7248419345 100644 --- a/assets/reference_keymap_extras.md.B2sSpD5d.lean.js +++ b/assets/reference_keymap_extras.md.BAQkmhul.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Language-specific Keycodes","description":"","frontmatter":{},"headers":[],"relativePath":"reference_keymap_extras.md","filePath":"reference_keymap_extras.md","lastUpdated":null}'); const _sfc_main = { name: "reference_keymap_extras.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 16); diff --git a/assets/squeezing_avr.md.yj9YaYxW.js b/assets/squeezing_avr.md.nn7YA62K.js similarity index 99% rename from assets/squeezing_avr.md.yj9YaYxW.js rename to assets/squeezing_avr.md.nn7YA62K.js index 8f1bbabc4b4..c8e2190f8a3 100644 --- a/assets/squeezing_avr.md.yj9YaYxW.js +++ b/assets/squeezing_avr.md.nn7YA62K.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Squeezing the most out of AVR","description":"","frontmatter":{},"headers":[],"relativePath":"squeezing_avr.md","filePath":"squeezing_avr.md","lastUpdated":null}'); const _sfc_main = { name: "squeezing_avr.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Squeezing the most out of AVR

AVR is severely resource-constrained, and as QMK continues to grow, it is approaching a point where support for AVR may need to be moved to legacy status as newer development is unable to fit into those constraints.

However, if you need to reduce the compiled size of your firmware to fit the controller's limited flash size, there are a number of options to do so.

rules.mk Settings

First and foremost is enabling link time optimization. To do so, add this to your rules.mk:

make
LTO_ENABLE = yes

This will cause the final step to take longer, but should get you a smaller compiled size. This also disables Action Functions, and Action Macros, both of which are deprecated. This will get you the most savings, in most situations.

From there, disabling extraneous systems will help -- e.g.:

make
CONSOLE_ENABLE = no\nCOMMAND_ENABLE = no\nMOUSEKEY_ENABLE = no\nEXTRAKEY_ENABLE = no

This disables some of the functionality that you may not need. But note that extrakeys disables stuff like the media keys and system volume control.

If that isn't enough to get your firmware down to size, then there are some additional features that you can disable:

make
SPACE_CADET_ENABLE = no\nGRAVE_ESC_ENABLE = no\nMAGIC_ENABLE = no

These features are enabled by default, but they may not be needed. Double check to make sure. The Magic Keycodes are the largest and control things like NKRO toggling, GUI and ALT/CTRL swapping, etc. Disabling them will disable those functions. See Magic Functions for disabling related functions.

If you use sprintf or snprintf functions you can save around ~400 Bytes by enabling this option.

make
AVR_USE_MINIMAL_PRINTF = yes

This will include smaller implementations from AVRs libc into your Firmware. They are not fully featured, for instance zero padding and field width specifiers are not supported. So if you use sprintf or snprintf like this:

c
sprintf(wpm_str, "%03d", get_current_wpm());\nsnprintf(keylog_str, sizeof(keylog_str), "%dx%d, k%2d : %c");

you will still need the standard implementation.

config.h Settings

If you've done all of that, and you don't want to disable features like RGB, Audio, OLEDs, etc, there are some additional options that you can add to your config.h that can help.

Starting with Lock Key support. If you have a Cherry MX Lock switch (lucky you!), you don't want to do this. But chances are, you don't. In that case, add this to your config.h:

c
#undef LOCKING_SUPPORT_ENABLE\n#undef LOCKING_RESYNC_ENABLE

Oneshots. If you're not using these, you can disable the feature by adding this to your config.h:

c
#define NO_ACTION_ONESHOT

The same with tapping keys (mod tap, layer tap, etc)

c
#define NO_ACTION_TAPPING

Audio Settings

If you're using the Audio feature, by default that includes the music mode feature. This translates matrix positions into notes. It's neat for sure, but most likely, you're not using it. You can disable it by adding this to your config.h:

c
#define NO_MUSIC_MODE

And by adding this to your rules.mk

make
MUSIC_ENABLE = no

Layers

There are also some options for layers, that can reduce the firmware size. All of these settings are for your config.h.

You can limit the number of layers that the firmware uses -- if you're using up to 8 layers in total:

c
#define LAYER_STATE_8BIT

or if you require up to 16 layers instead:

c
#define LAYER_STATE_16BIT

Or if you're not using layers at all, you can outright remove the functionality altogether:

c
#define NO_ACTION_LAYER

OLED tweaks

One place you can save a bunch of space here is by not using sprintf or snprintf. This function call takes up ~1.5kB of firmware space, and can be rewritten. For instance, WPM uses this a lot.

You can convert this:

c
    // OLD CODE\n    char wpm_str[4] = {0};\n    sprintf(wpm_str, "WPM: %03d", get_current_wpm());\n    oled_write(wpm_str, ' '), false);

into this:

c
    // NEW CODE\n    oled_write_P(PSTR("WPM: "), false);\n    oled_write(get_u8_str(get_current_wpm(), ' '), false);

which outputs WPM: 5. Or this:

c
    // NEW CODE\n    oled_write_P(PSTR("WPM: "), false);\n    oled_write(get_u8_str(get_current_wpm(), '0'), false);

which outputs WPM: 005.

RGB Settings

If you're using RGB on your board, both RGB Light (Underglow) and RGB Matrix (per key RGB) now require defines to enable different animations -- some keyboards enable a lot of animations by default, so you can generally gain back some space by disabling specific animations if you don't use them. For RGB Light you can disable these in your keymap's config.h:

c
#undef RGBLIGHT_ANIMATIONS\n#undef RGBLIGHT_EFFECT_BREATHING\n#undef RGBLIGHT_EFFECT_RAINBOW_MOOD\n#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL\n#undef RGBLIGHT_EFFECT_SNAKE\n#undef RGBLIGHT_EFFECT_KNIGHT\n#undef RGBLIGHT_EFFECT_CHRISTMAS\n#undef RGBLIGHT_EFFECT_STATIC_GRADIENT\n#undef RGBLIGHT_EFFECT_RGB_TEST\n#undef RGBLIGHT_EFFECT_ALTERNATING\n#undef RGBLIGHT_EFFECT_TWINKLE

For RGB Matrix, these need to be explicitly enabled as well. To disable any that were enabled by the keyboard, add one or more of these to your keymap's config.h:

c
#undef ENABLE_RGB_MATRIX_ALPHAS_MODS\n#undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN\n#undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT\n#undef ENABLE_RGB_MATRIX_BREATHING\n#undef ENABLE_RGB_MATRIX_BAND_SAT\n#undef ENABLE_RGB_MATRIX_BAND_VAL\n#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT\n#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL\n#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT\n#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL\n#undef ENABLE_RGB_MATRIX_CYCLE_ALL\n#undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT\n#undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN\n#undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON\n#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN\n#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL\n#undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL\n#undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL\n#undef ENABLE_RGB_MATRIX_DUAL_BEACON\n#undef ENABLE_RGB_MATRIX_RAINBOW_BEACON\n#undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS\n#undef ENABLE_RGB_MATRIX_FLOWER_BLOOMING\n#undef ENABLE_RGB_MATRIX_RAINDROPS\n#undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS\n#undef ENABLE_RGB_MATRIX_HUE_BREATHING\n#undef ENABLE_RGB_MATRIX_HUE_PENDULUM\n#undef ENABLE_RGB_MATRIX_HUE_WAVE\n#undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL\n#undef ENABLE_RGB_MATRIX_PIXEL_FLOW\n#undef ENABLE_RGB_MATRIX_PIXEL_RAIN\n\n#undef ENABLE_RGB_MATRIX_TYPING_HEATMAP\n#undef ENABLE_RGB_MATRIX_DIGITAL_RAIN\n\n#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE\n#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE\n#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE\n#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE\n#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS\n#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS\n#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS\n#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS\n#undef ENABLE_RGB_MATRIX_SPLASH\n#undef ENABLE_RGB_MATRIX_MULTISPLASH\n#undef ENABLE_RGB_MATRIX_SOLID_SPLASH\n#undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH

Final Thoughts

If you've done all of this, and your firmware is still too large, then it is time to consider making the switch to ARM. There are a number of Pro Micro replacements with an ARM controller:

There are other, non-Pro Micro compatible boards out there. The most popular being:

', 58); diff --git a/assets/squeezing_avr.md.yj9YaYxW.lean.js b/assets/squeezing_avr.md.nn7YA62K.lean.js similarity index 83% rename from assets/squeezing_avr.md.yj9YaYxW.lean.js rename to assets/squeezing_avr.md.nn7YA62K.lean.js index c07f83d56d4..a2f28b7db4b 100644 --- a/assets/squeezing_avr.md.yj9YaYxW.lean.js +++ b/assets/squeezing_avr.md.nn7YA62K.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Squeezing the most out of AVR","description":"","frontmatter":{},"headers":[],"relativePath":"squeezing_avr.md","filePath":"squeezing_avr.md","lastUpdated":null}'); const _sfc_main = { name: "squeezing_avr.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 58); diff --git a/assets/support.md.Dth_xzLo.js b/assets/support.md.DVvDsq4u.js similarity index 94% rename from assets/support.md.Dth_xzLo.js rename to assets/support.md.DVvDsq4u.js index 28cd588cfe4..fc33642db82 100644 --- a/assets/support.md.Dth_xzLo.js +++ b/assets/support.md.DVvDsq4u.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Getting Help","description":"","frontmatter":{},"headers":[],"relativePath":"support.md","filePath":"support.md","lastUpdated":null}'); const _sfc_main = { name: "support.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Getting Help

There are a lot of resources for getting help with QMK.

Please read our Code of Conduct before participating in any of our community spaces.

Realtime Chat

If you need help with something, the best place to get quick support is going to be on our Discord Server. There is usually somebody online, and there are a bunch of very helpful people there.

OLKB Subreddit

The official QMK forum is /r/olkb on reddit.com.

GitHub Issues

You can open an issue on GitHub. This is especially handy when your issue will require long-term discussion or debugging.

', 9); diff --git a/assets/support.md.Dth_xzLo.lean.js b/assets/support.md.DVvDsq4u.lean.js similarity index 82% rename from assets/support.md.Dth_xzLo.lean.js rename to assets/support.md.DVvDsq4u.lean.js index af641da0356..7bab651636a 100644 --- a/assets/support.md.Dth_xzLo.lean.js +++ b/assets/support.md.DVvDsq4u.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Getting Help","description":"","frontmatter":{},"headers":[],"relativePath":"support.md","filePath":"support.md","lastUpdated":null}'); const _sfc_main = { name: "support.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 9); diff --git a/assets/support_deprecation_policy.md.BOgUGGHv.js b/assets/support_deprecation_policy.md.5PMvF63c.js similarity index 97% rename from assets/support_deprecation_policy.md.BOgUGGHv.js rename to assets/support_deprecation_policy.md.5PMvF63c.js index fd8daa49025..ec91e2c5d9a 100644 --- a/assets/support_deprecation_policy.md.BOgUGGHv.js +++ b/assets/support_deprecation_policy.md.5PMvF63c.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Feature support policies","description":"","frontmatter":{},"headers":[],"relativePath":"support_deprecation_policy.md","filePath":"support_deprecation_policy.md","lastUpdated":null}'); const _sfc_main = { name: "support_deprecation_policy.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Feature support policies

System Constraints

In general, feature development is encouraged to support as many hardware configurations as possible. Depending on system constraints this may not always be achievable, and is usually bound by microcontroller flash and RAM capabilities.

The most frequently-hit constraint is the amount of code that can be flashed onto an ATmega32U4 -- users almost always need to pick and choose included functionality due to the size constraints.

WARNING

Squeezing AVR has some steps that users can take in order to minimise the overall firmware size, which in some cases enables the ability for users to include other desired features.

Deprecation & Removal Policy

QMK Firmware strives for innovation wherever possible. With ongoing feature development and other improvements made to the codebase, sometimes the retirement of outdated, under-utilised, or limited-value functionality is selected for deprecation and subsequent removal.

The intent behind feature deprecation is to maintain and/or improve quality. As a result, perpetually supporting under-utilised features would negatively impact the QMK team's ability to improve other areas of QMK Firmware.

There may be several motivations behind the deprecation or removal of functionality (keeping in mind that this list is not exhaustive):

When a feature is selected for deprecation, future changes to that area will cease to be developed by the QMK team, and Pull Requests submitted against those areas will be declined.

TIP

As QMK does not gather metrics from its users, the only way the QMK team can gauge the level of usage is to refer to the main QMK Firmware repository -- searching through forks is not practical due to the sheer number of them.

How much advance notice will be given?

Disregarding emergencies or other high-risk concerns, deprecation of large features or entire subsystems within QMK will be communicated on the develop branch at least one breaking changes cycle (3 months) before removal. Advance notice may be extended for higher impact features, and is at the discretion of the QMK team.

Smaller features may be removed within a breaking changes cycle, and will generally be based on the level of use within the repository. Features with minimal use may be selected for removal at any time on the develop branch.

Third-party software libraries leveraged by QMK are generally forked to mitigate disappearance upstream. If the upstream repository is removed, it will generally be replaced when practical, or dependent features will be removed as per the normal deprecation policy.

How will deprecation be communicated?

Every breaking changes merge from develop into master is accompanied by a changelog document -- intended and completed deprecations will be communicated here.

In addition, wherever possible warnings will be issued during firmware compilation when deprecated features are still being used.

', 19); diff --git a/assets/support_deprecation_policy.md.BOgUGGHv.lean.js b/assets/support_deprecation_policy.md.5PMvF63c.lean.js similarity index 84% rename from assets/support_deprecation_policy.md.BOgUGGHv.lean.js rename to assets/support_deprecation_policy.md.5PMvF63c.lean.js index 43f6c2a3ddb..af30ca55ee7 100644 --- a/assets/support_deprecation_policy.md.BOgUGGHv.lean.js +++ b/assets/support_deprecation_policy.md.5PMvF63c.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Feature support policies","description":"","frontmatter":{},"headers":[],"relativePath":"support_deprecation_policy.md","filePath":"support_deprecation_policy.md","lastUpdated":null}'); const _sfc_main = { name: "support_deprecation_policy.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 19); diff --git a/assets/syllabus.md.CrGVLX_v.js b/assets/syllabus.md.B5r3P0XB.js similarity index 97% rename from assets/syllabus.md.CrGVLX_v.js rename to assets/syllabus.md.B5r3P0XB.js index 0189a6e0e09..291a5143e06 100644 --- a/assets/syllabus.md.CrGVLX_v.js +++ b/assets/syllabus.md.B5r3P0XB.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Syllabus","description":"","frontmatter":{},"headers":[],"relativePath":"syllabus.md","filePath":"syllabus.md","lastUpdated":null}'); const _sfc_main = { name: "syllabus.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

QMK Syllabus

This page helps you build up your QMK knowledge by introducing the basics first and guiding you to understanding all the concepts you need to know to be proficient with QMK.

Beginning Topics

If you read nothing else you should read the documents in this section. After reading the Tutorial you should be able to create a basic keymap, compile it, and flash it to your keyboard. The remaining documents will flesh out your knowledge of these basics.

Intermediate Topics

These topics start to dig into some of the features that QMK supports. You don't have to read all of these documents, but some of the documents in the Advanced Topics section won't make sense if you skip over some of these.

Advanced Topics

Everything below here requires a lot of foundational knowledge. Besides being able to create keymaps using advanced features you should be familiar with using both config.h and rules.mk to configure options for your keyboard.

', 11); diff --git a/assets/syllabus.md.CrGVLX_v.lean.js b/assets/syllabus.md.B5r3P0XB.lean.js similarity index 82% rename from assets/syllabus.md.CrGVLX_v.lean.js rename to assets/syllabus.md.B5r3P0XB.lean.js index 4e62adde996..f1b2fbacd3b 100644 --- a/assets/syllabus.md.CrGVLX_v.lean.js +++ b/assets/syllabus.md.B5r3P0XB.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"QMK Syllabus","description":"","frontmatter":{},"headers":[],"relativePath":"syllabus.md","filePath":"syllabus.md","lastUpdated":null}'); const _sfc_main = { name: "syllabus.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 11); diff --git a/assets/tap_hold.md.B6KKqQy2.js b/assets/tap_hold.md.DlgWmM-h.js similarity index 99% rename from assets/tap_hold.md.B6KKqQy2.js rename to assets/tap_hold.md.DlgWmM-h.js index 3d937f28bd7..57cbed73ce0 100644 --- a/assets/tap_hold.md.B6KKqQy2.js +++ b/assets/tap_hold.md.DlgWmM-h.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Tap-Hold Configuration Options","description":"","frontmatter":{},"headers":[],"relativePath":"tap_hold.md","filePath":"tap_hold.md","lastUpdated":null}'); const _sfc_main = { name: "tap_hold.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Tap-Hold Configuration Options

While Tap-Hold options are fantastic, they are not without their issues. We have tried to configure them with reasonable defaults, but that may still cause issues for some people.

These options let you modify the behavior of the tap-hold keys.

Tapping Term

The crux of all of the following features is the tapping term setting. This determines what is a tap and what is a hold. The exact timing for this to feel natural can vary from keyboard to keyboard, from switch to switch, and from key to key.

TIP

DYNAMIC_TAPPING_TERM_ENABLE enables three special keys that can help you quickly find a comfortable tapping term for you. See Dynamic Tapping Term for more details.

You can set the global time for this by adding the following setting to your config.h:

c
#define TAPPING_TERM 200

This setting is defined in milliseconds and defaults to 200ms. This is a good average for the majority of people.

For more granular control of this feature, you can add the following to your config.h:

c
#define TAPPING_TERM_PER_KEY

You can then add the following function to your keymap.c to customise the tapping term for each key:

c
uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case SFT_T(KC_SPC):\n            return TAPPING_TERM + 1250;\n        case LT(1, KC_GRV):\n            return 130;\n        default:\n            return TAPPING_TERM;\n    }\n}

Example

You can compare keycodes to QK_MOD_TAP/QK_MOD_TAP_MAX and QK_LAYER_TAP/QK_LAYER_TAP_MAX to filter out Mod-Tap/Layer-Tap keys, rather than checking such keys manually in a switch-case. For instance, this example sets all Mod-Tap keys to have a higher tapping term, while leaving all other tap-hold keys unchanged:

c
uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case QK_MOD_TAP ... QK_MOD_TAP_MAX:\n            return TAPPING_TERM + 100;\n        default:\n            return TAPPING_TERM;\n    }\n}

You can also use functions like QK_MOD_TAP_GET_MODS, QK_LAYER_MOD_GET_MODS, and QK_ONE_SHOT_MOD_GET_MODS to filter Mod-Tap/Layer-Mod/One Shot keys by their mods.

For instance, this example sets a higher tapping term for AltGr Mod-Taps and lower tapping terms for Shift Mod-Taps:

c
uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {\n    uint8_t mod = mod_config(QK_MOD_TAP_GET_MODS(keycode));\n    if (mod & MOD_LSFT != 0 || mod & MOD_RSFT != 0) {\n        return 100;\n    }\n    if (mod & MOD_RALT != 0) {\n        return TAPPING_TERM + 50;\n    }\n    return TAPPING_TERM;\n}

Dynamic Tapping Term

DYNAMIC_TAPPING_TERM_ENABLE is a feature you can enable in rules.mk that lets you use three special keys in your keymap to configure the tapping term on the fly:

KeyAliasesDescription
QK_DYNAMIC_TAPPING_TERM_PRINTDT_PRNTTypes the current tapping term, in milliseconds
QK_DYNAMIC_TAPPING_TERM_UPDT_UPIncreases the current tapping term by DYNAMIC_TAPPING_TERM_INCREMENTms (5ms by default)
QK_DYNAMIC_TAPPING_TERM_DOWNDT_DOWNDecreases the current tapping term by DYNAMIC_TAPPING_TERM_INCREMENTms (5ms by default)

Set the tapping term as usual with #define TAPPING_TERM <value> in config.h and add DYNAMIC_TAPPING_TERM_ENABLE = yes in rules.mk. Then, place the above three keys somewhere in your keymap and flash the new firmware onto your board.

Now, you can try using your dual-role keys such as Layer-Taps and Mod-Taps and use DT_DOWN and DT_UP to adjust the tapping term immediately. If you find that you frequently trigger the modifier of your Mod-Tap(s) by accident, for example, that's a sign that your tapping term may be too low, so tap DT_UP a few times to increase the tapping term until that no longer happens. Conversely, if you get superfluous characters when you actually intended to momentarily activate a layer, tap DT_DOWN to lower the tapping term. Do note that these keys affect the global tapping term, you cannot change the tapping term of a specific key on the fly.

Once you're satisfied with the current tapping term value, you can tap the DT_PRNT key to see your new tapping term, and you can replace the tapping term in config.h with this new value.

It's important to update TAPPING_TERM with the new value because the adjustments made using DT_UP and DT_DOWN are not persistent.

The value by which the tapping term increases or decreases when you tap DT_UP and DT_DOWN can be configured in config.h with #define DYNAMIC_TAPPING_TERM_INCREMENT <new value>. Note that the tapping term is not modified when holding down the tap term keys, so if you need to, for example, decrease the current tapping term by 50ms, you cannot just press down and hold DT_DOWN; you will have to tap it 10 times in a row with the default increment of 5ms.

If you need more flexibility, nothing prevents you from defining your own custom keys to dynamically change the tapping term.

c
enum custom_dynamic_tapping_term_keys = {\n    DT_UP_50 = SAFE_RANGE,\n    DT_DOWN_50,\n    DT_UP_X2,\n    DT_DOWN_X2,\n}\n\nbool process_record_user(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n    case DT_UP_50:\n        if (record->event.pressed) {\n            g_tapping_term += 50;\n        }\n        break;\n    case DT_DOWN_50:\n        if (record->event.pressed) {\n            g_tapping_term -= 50;\n        }\n        break;\n    case DT_UP_X2:\n        if (record->event.pressed) {\n            g_tapping_term *= 2;\n        }\n        break;\n    case DT_DOWN_X2:\n        if (record->event.pressed) {\n            g_tapping_term /= 2;\n        }\n        break;\n    }\n    return true;\n};

In order for this feature to be effective, if you use per-key tapping terms, then you need to make a few changes to the syntax of the get_tapping_term function. All you need to do is replace every occurrence of TAPPING_TERM in the get_tapping_term function by lowercase g_tapping_term. If you don't do this, you will still see the value typed by DT_PRNT go up and down as you configure the tapping term on the fly, but you won't feel those changes as they don't get applied. If you can go as low as 10ms and still easily trigger the tap function of a dual-role key, that's a sign that you forgot to make the necessary changes to your get_tapping_term function.

For instance, here's how the example get_tapping_term shown earlier should look after the transformation:

c
uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case SFT_T(KC_SPC):\n           return g_tapping_term + 1250;\n        case LT(1, KC_GRV):\n            return 130;\n        default:\n            return g_tapping_term;\n    }\n}

The reason is that TAPPING_TERM is a macro that expands to a constant integer and thus cannot be changed at runtime, whereas g_tapping_term is a variable whose value can be changed at runtime. If you want, you can temporarily enable DYNAMIC_TAPPING_TERM_ENABLE to find a suitable tapping term value and then disable that feature and revert back to using the classic syntax for per-key tapping term settings. In case you need to access the tapping term from elsewhere in your code, you can use the GET_TAPPING_TERM(keycode, record) macro. This macro will expand to whatever is the appropriate access pattern given the current configuration.

Tap-Or-Hold Decision Modes

The code which decides between the tap and hold actions of dual-role keys supports three different modes, in increasing order of preference for the hold action:

  1. The default mode selects the hold action only if the dual-role key is held down longer than the tapping term. In this mode, pressing other keys while the dual-role key is held down does not influence the tap-or-hold decision. In other words, this mode ignores interrupts.

  2. The "permissive hold" mode, in addition to the default behavior, immediately selects the hold action when another key is tapped (pressed and then released) while the dual-role key is held down, even if this happens earlier than the tapping term. If another key is just pressed, but then the dual-role key is released before that other key (and earlier than the tapping term), this mode will still select the tap action. That is, this mode converts "nested" sequences, but not "rolls".

  3. The "hold on other key press" mode, in addition to the default behavior, immediately selects the hold action when another key is pressed while the dual-role key is held down, even if this happens earlier than the tapping term.

Note that until the tap-or-hold decision completes (which happens when either the dual-role key is released, or the tapping term has expired, or the extra condition for the selected decision mode is satisfied), key events are delayed and not transmitted to the host immediately. The default mode gives the most delay (if the dual-role key is held down, this mode always waits for the whole tapping term), and the other modes may give less delay when other keys are pressed, because the hold action may be selected earlier.

Comparison

To better illustrate the tap-or-hold decision modes, let us compare the expected output of each decision mode in a handful of tapping scenarios involving a Mod-Tap key (LSFT_T(KC_A)) and a regular key (KC_B) with the TAPPING_TERM set to 200ms.

Note: "kc held" in the "Physical key event" column means that the key wasn't physically released yet at this point in time.

Distinct taps (AABB)

TimePhysical key eventDefaultPERMISSIVE_HOLDHOLD_ON_OTHER_KEY_PRESS
0LSFT_T(KC_A) down
199LSFT_T(KC_A) upaaa
210KC_B downababab
220KC_B upababab
TimePhysical key eventDefaultPERMISSIVE_HOLDHOLD_ON_OTHER_KEY_PRESS
0LSFT_T(KC_A) down
200LSFT_T(KC_A) heldShiftShiftShift
201LSFT_T(KC_A) upShiftShiftShift
205KC_B downbbb
210KC_B upbbb

Nested tap (ABBA)

TimePhysical key eventDefaultPERMISSIVE_HOLDHOLD_ON_OTHER_KEY_PRESS
0LSFT_T(KC_A) down
110KC_B downB
120KC_B upBB
199LSFT_T(KC_A) upabBB
TimePhysical key eventDefaultPERMISSIVE_HOLDHOLD_ON_OTHER_KEY_PRESS
0LSFT_T(KC_A) down
110KC_B downB
120KC_B upBB
200LSFT_T(KC_A) heldBBB
210LSFT_T(KC_A) upBBB
TimePhysical key eventDefaultPERMISSIVE_HOLDHOLD_ON_OTHER_KEY_PRESS
0LSFT_T(KC_A) down
200LSFT_T(KC_A) heldShiftShiftShift
205KC_B downBBB
210KC_B upBBB
220LSFT_T(KC_A) upBBB

Rolling keys (ABAB)

TimePhysical key eventDefaultPERMISSIVE_HOLDHOLD_ON_OTHER_KEY_PRESS
0LSFT_T(KC_A) down
110KC_B downB
130LSFT_T(KC_A) upababB
140KC_B upababB
TimePhysical key eventDefaultPERMISSIVE_HOLDHOLD_ON_OTHER_KEY_PRESS
0LSFT_T(KC_A) down
110KC_B downB
200LSFT_T(KC_A) heldBBB
205LSFT_T(KC_A) upBBB
210KC_B upBBB

Default Mode

Example sequence 1 (the L key is also mapped to KC_RGHT on layer 2):

             TAPPING_TERM\n  +---------------|--------------------+\n  | +-------------|-------+            |\n  | | LT(2, KC_A) |       |            |\n  | +-------------|-------+            |\n  |               | +--------------+   |\n  |               | | KC_L         |   |\n  |               | +--------------+   |\n  +---------------|--------------------+

The above sequence would send a KC_RGHT, since LT(2, KC_A) is held longer than the TAPPING_TERM.


Example sequence 2 (the L key is also mapped to KC_RGHT on layer 2):

                           TAPPING_TERM\n  +-----------------------------|------+\n  | +---------------+           |      |\n  | | LT(2, KC_A)   |           |      |\n  | +---------------+           |      |\n  |            +--------------+ |      |\n  |            | KC_L         | |      |\n  |            +--------------+ |      |\n  +-----------------------------|------+

The above sequence will not send KC_RGHT but KC_A KC_L instead, since LT(2, KC_A) is not held longer than the TAPPING_TERM.


Example sequence 3 (Mod-Tap):

                         TAPPING_TERM\n  +---------------------------|--------+\n  | +-------------+           |        |\n  | | SFT_T(KC_A) |           |        |\n  | +-------------+           |        |\n  |       +--------------+    |        |\n  |       | KC_X         |    |        |\n  |       +--------------+    |        |\n  +---------------------------|--------+

In the above sequence, SFT_T(KC_A) has been released before the end of its TAPPING_TERM and as such will be interpreted as KC_A, followed by any key event that happened after the initial press of SFT_T(KC_A). In this instance, the output would be KC_A KC_X.

Permissive Hold

The "permissive hold" mode can be enabled for all dual-role keys by adding the corresponding option to config.h:

c
#define PERMISSIVE_HOLD

This makes tap and hold keys (like Layer-Tap) work better for fast typists, or for high TAPPING_TERM settings.

If you press a dual-role key, tap another key (press and release) and then release the dual-role key, all within the tapping term, by default the dual-role key will perform its tap action. If the PERMISSIVE_HOLD option is enabled, the dual-role key will perform its hold action instead.

An example of a sequence that is affected by the "permissive hold" mode:

                         TAPPING_TERM   \n  +---------------------------|--------+\n  | +----------------------+  |        |\n  | | LT(2, KC_A)          |  |        |\n  | +----------------------+  |        |\n  |    +--------------+       |        |\n  |    | KC_L         |       |        |\n  |    +--------------+       |        |\n  +---------------------------|--------+

Normally, if you do all this within the TAPPING_TERM (default: 200ms), this will be registered as al by the firmware and host system. With the PERMISSIVE_HOLD option enabled, the Layer-Tap key is considered as a layer switch if another key is tapped, and the above sequence would be registered as KC_RGHT (the mapping of L on layer 2). We could describe this sequence as a "nested tap" (the modified key's key down and key up events are "nested" between the dual-role key's key down and key up events).

However, this slightly different sequence will not be affected by the "permissive hold" mode:

                         TAPPING_TERM   \n  +---------------------------|--------+\n  | +-------------+           |        |\n  | | LT(2, KC_A) |           |        |\n  | +-------------+           |        |\n  |       +--------------+    |        |\n  |       | KC_L         |    |        |\n  |       +--------------+    |        |\n  +---------------------------|--------+

In the sequence above the dual-role key is released before the other key is released, and if that happens within the tapping term, the "permissive hold" mode will still choose the tap action for the dual-role key, and the sequence will be registered as al by the host. We could describe this as a "rolling press" (the two keys' key down and key up events behave as if you were rolling a ball across the two keys, first pressing each key down in sequence and then releasing them in the same order).

TIP

The PERMISSIVE_HOLD option is not noticeable if you also enable HOLD_ON_OTHER_KEY_PRESS because the latter option considers both the "nested tap" and "rolling press" sequences like shown above as a hold action, not the tap action. HOLD_ON_OTHER_KEY_PRESS makes the tap-or-hold decision earlier in the chain of key events, thus taking a precedence over PERMISSIVE_HOLD.

For more granular control of this feature, you can add the following to your config.h:

c
#define PERMISSIVE_HOLD_PER_KEY

You can then add the following function to your keymap:

c
bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case LT(1, KC_BSPC):\n            // Immediately select the hold action when another key is tapped.\n            return true;\n        default:\n            // Do not select the hold action when another key is tapped.\n            return false;\n    }\n}

As in the earlier example, you can filter Mod-Tap/Layer-Mod/One Shot keys by their mods rather than checking such keys manually in a switch-case. (Also applicable to the other following PER_KEY functions.)

Hold On Other Key Press

The "hold on other key press" mode can be enabled for all dual-role keys by adding the corresponding option to config.h:

c
#define HOLD_ON_OTHER_KEY_PRESS

This mode makes tap and hold keys (like Layer-Tap) work better for fast typists, or for high TAPPING_TERM settings. Compared to the "permissive hold" mode, this mode selects the hold action in more cases.

If you press a dual-role key, press another key, and then release the dual-role key, all within the tapping term, by default the dual-role key will perform its tap action. If the HOLD_ON_OTHER_KEY_PRESS option is enabled, the dual-role key will perform its hold action instead.

An example of a sequence that is affected by the "hold on other key press" mode, but not by the "permissive hold" mode:

                         TAPPING_TERM\n  +---------------------------|--------+\n  | +-------------+           |        |\n  | | LT(2, KC_A) |           |        |\n  | +-------------+           |        |\n  |       +--------------+    |        |\n  |       | KC_L         |    |        |\n  |       +--------------+    |        |\n  +---------------------------|--------+

Normally, if you do all this within the TAPPING_TERM (default: 200ms), this will be registered as al by the firmware and host system. With the HOLD_ON_OTHER_KEY_PRESS option enabled, the Layer-Tap key is considered as a layer switch if another key is pressed, and the above sequence would be registered as KC_RGHT (the mapping of L on layer 2).

For more granular control of this feature, you can add the following to your config.h:

c
#define HOLD_ON_OTHER_KEY_PRESS_PER_KEY

You can then add the following function to your keymap:

c
bool get_hold_on_other_key_press(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case LT(1, KC_BSPC):\n            // Immediately select the hold action when another key is pressed.\n            return true;\n        default:\n            // Do not select the hold action when another key is pressed.\n            return false;\n    }\n}

Quick Tap Term

When the user holds a key after tapping it, the tapping function is repeated by default, rather than activating the hold function. This allows keeping the ability to auto-repeat the tapping function of a dual-role key. QUICK_TAP_TERM enables fine tuning of that ability. If set to 0, it will remove the auto-repeat ability and activate the hold function instead.

QUICK_TAP_TERM is set to TAPPING_TERM by default, which is the maximum allowed value for QUICK_TAP_TERM. To override its value (in milliseconds) add the following to your config.h:

c
#define QUICK_TAP_TERM 120

Example:

With default settings, a will be sent on the first release, then a will be sent on the second press, allowing the computer to trigger its auto repeat function until the key is released.

With QUICK_TAP_TERM configured, the timing between SFT_T(KC_A) up and SFT_T(KC_A) down must be within QUICK_TAP_TERM to trigger auto-repeat. Otherwise, the second press will be sent as a Shift. If QUICK_TAP_TERM is set to 0, the second press will always be sent as a Shift, effectively disabling auto-repeat.

WARNING

QUICK_TAP_TERM timing will also impact anything that uses tapping toggles (Such as the TT layer keycode, and the One Shot Tap Toggle).

For more granular control of this feature, you can add the following to your config.h:

c
#define QUICK_TAP_TERM_PER_KEY

You can then add the following function to your keymap:

c
uint16_t get_quick_tap_term(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case SFT_T(KC_SPC):\n            return QUICK_TAP_TERM - 20;\n        default:\n            return QUICK_TAP_TERM;\n    }\n}

TIP

If QUICK_TAP_TERM is set higher than TAPPING_TERM, it will default to TAPPING_TERM.

Flow Tap

Flow Tap modifies mod-tap MT and layer-tap LT keys such that when pressed within a short timeout of the preceding key, the tapping behavior is triggered. This is particularly useful for home row mods to avoid accidental mod triggers. It basically disables the hold behavior during fast typing, creating a "flow of taps." This also helps to reduce the input lag of tap-hold keys during fast typing, since the tapped behavior is sent immediately.

Flow Tap is enabled by defining FLOW_TAP_TERM in your config.h with the desired timeout in milliseconds. A timeout of 150 ms is recommended as a starting point:

c
#define FLOW_TAP_TERM 150

By default, Flow Tap is enabled when:

As an exception to the above, Flow Tap is temporarily disabled while a tap-hold key is undecided. This is to allow chording multiple mod-tap keys without having to wait out the Flow Tap term.

is_flow_tap_key()

Optionally, define the is_flow_tap_key() callback to specify where Flow Tap is enabled. The callback is called for both the tap-hold key and the key press immediately preceding it, and if the callback returns true for both keycodes, Flow Tap is enabled.

The default implementation of this callback is:

c
bool is_flow_tap_key(uint16_t keycode) {\n    if ((get_mods() & (MOD_MASK_CG | MOD_BIT_LALT)) != 0) {\n        return false; // Disable Flow Tap on hotkeys.\n    }\n    switch (get_tap_keycode(keycode)) {\n        case KC_SPC:\n        case KC_A ... KC_Z:\n        case KC_DOT:\n        case KC_COMM:\n        case KC_SCLN:\n        case KC_SLSH:\n            return true;\n    }\n    return false;\n}

Copy the above to your keymap.c and edit to customize. For instance, remove the case KC_SPC line to disable Flow Tap for the Space key.

get_flow_tap_term()

Optionally, for further flexibility, define the get_flow_tap_term() callback. Flow Tap acts only when key events are closer together than the time returned by the callback. Return a time of 0 to disable filtering. In this way, Flow Tap may be disabled for certain tap-hold keys, or when following certain previous keys.

The default implementation of this callback is

c
uint16_t get_flow_tap_term(uint16_t keycode, keyrecord_t* record,\n                           uint16_t prev_keycode) {\n    if (is_flow_tap_key(keycode) && is_flow_tap_key(prev_keycode)) {\n        return FLOW_TAP_TERM;\n    }\n    return 0;\n}

In this callback, keycode and record correspond to the current tap-hold key, and prev_keycode is the keycode of the previous key. Return the timeout to use. Returning 0 disables Flow Tap. This callback enables setting per-key timeouts. It is also possible to enable or disable Flow Tap for certain tap-hold keys or when following certain previous keys. Example:

c
uint16_t get_flow_tap_term(uint16_t keycode, keyrecord_t* record, \n                           uint16_t prev_keycode) {\n    if (is_flow_tap_key(keycode) && is_flow_tap_key(prev_keycode)) {\n        switch (keycode) {\n            case LCTL_T(KC_F):\n            case RCTL_T(KC_H):\n              return FLOW_TAP_TERM - 25;  // Short timeout on these keys.\n\n            default:\n              return FLOW_TAP_TERM;  // Longer timeout otherwise.\n        }\n    }\n    return 0;  // Disable Flow Tap.\n}

If you define both is_flow_tap_key() and get_flow_tap_term(), then the latter takes precedence.

Chordal Hold

Chordal Hold is intended to be used together with either Permissive Hold or Hold On Other Key Press. Chordal Hold is enabled by adding to your config.h:

c
#define CHORDAL_HOLD

Chordal Hold implements, by default, an "opposite hands" rule. Suppose a tap-hold key is pressed and then, before the tapping term, another key is pressed. With Chordal Hold, the tap-hold key is settled as tapped if the two keys are on the same hand.

Otherwise, if the keys are on opposite hands, Chordal Hold introduces no new behavior. Hold On Other Key Press or Permissive Hold may be used together with Chordal Hold to configure the behavior in the opposite hands case. With Hold On Other Key Press, an opposite hands chord is settled immediately as held. Or with Permissive Hold, an opposite hands chord is settled as held provided the other key is pressed and released (nested press) before releasing the tap-hold key.

Chordal Hold may be useful to avoid accidental modifier activation with mod-taps, particularly in rolled keypresses when using home row mods.

Notes:

An example of a sequence that is affected by “chordal hold”:

                         TAPPING_TERM   \n  +---------------------------|--------+\n  | +----------------------+  |        |\n  | | SFT_T(KC_A)          |  |        |\n  | +----------------------+  |        |\n  |    +--------------+       |        |\n  |    | KC_C         |       |        |\n  |    +--------------+       |        |\n  +---------------------------|--------+

If the two keys are on the same hand, then this will produce ac with SFT_T(KC_A) settled as tapped the moment that KC_C is pressed.

If the two keys are on opposite hands and the HOLD_ON_OTHER_KEY_PRESS option enabled, this will produce C with SFT_T(KC_A) settled as held when KC_C is pressed.

Or if the two keys are on opposite hands and the PERMISSIVE_HOLD option is enabled, this will produce C with SFT_T(KC_A) settled as held when that KC_C is released.

As an exception to the opposite hands rule, Chordal Hold supports combining multiple same-side modifiers within the tapping term. This is useful for multi-mod hotkeys like Ctrl + Shift + V. For instance with Chordal Hold together with either Permissive Hold or Hold On Other Key Press, the following input results in Ctrl + Shift + V being sent, supposing J and K are on the right hand side and V is on the left hand side:

Chordal Hold Handedness

Determining whether keys are on the same or opposite hands involves defining the "handedness" of each key position. By default, if nothing is specified, handedness is guessed based on keyboard geometry.

Handedness may be specified with chordal_hold_layout. In keymap.c, define chordal_hold_layout in the following form:

c
const char chordal_hold_layout[MATRIX_ROWS][MATRIX_COLS] PROGMEM =\n    LAYOUT(\n        'L', 'L', 'L', 'L', 'L', 'L',  'R', 'R', 'R', 'R', 'R', 'R', \n        'L', 'L', 'L', 'L', 'L', 'L',  'R', 'R', 'R', 'R', 'R', 'R', \n        'L', 'L', 'L', 'L', 'L', 'L',  'R', 'R', 'R', 'R', 'R', 'R', \n                       'L', 'L', 'L',  'R', 'R', 'R'\n    );

Use the same LAYOUT macro as used to define your keymap layers. Each entry is a character indicating the handedness of one key, either 'L' for left, 'R' for right, or '*' to exempt keys from the "opposite hands rule." A key with '*' handedness may settle as held in chords with any other key. This could be used perhaps on thumb keys or other places where you want to allow same-hand chords.

Keyboard makers may specify handedness in keyboard.json. Under "layouts", specify the handedness of a key by adding a "hand" field with a value of either "L", "R", or "*". Note that if "layouts" contains multiple layouts, only the first one is read. For example:

json
{"matrix": [5, 6], "x": 0, "y": 5.5, "w": 1.25, "hand": "*"},

Alternatively, handedness may be defined functionally with chordal_hold_handedness(). For example, in keymap.c define:

c
char chordal_hold_handedness(keypos_t key) {\n    if (key.col == 0 || key.col == MATRIX_COLS - 1) {\n        return '*';  // Exempt the outer columns.\n    }\n    // On split keyboards, typically, the first half of the rows are on the\n    // left, and the other half are on the right.\n    return key.row < MATRIX_ROWS / 2 ? 'L' : 'R';\n}

Given the matrix position of a key, the function should return 'L', 'R', or '*'. Adapt the logic in this function according to the keyboard's matrix.

WARNING

Note the matrix may have irregularities around larger keys, around the edges of the board, and around thumb clusters. You may find it helpful to use this debugging example to correspond physical keys to matrix positions.

If you define both chordal_hold_layout[MATRIX_ROWS][MATRIX_COLS] and

chordal_hold_handedness(keypos_t key) for handedness, the latter takes precedence.

Per-chord customization

Beyond the per-key configuration possible through handedness, Chordal Hold may be configured at a per-chord granularity for detailed tuning. In keymap.c, define get_chordal_hold(). Returning true allows the chord to be held, while returning false settles as tapped.

For example:

c
bool get_chordal_hold(uint16_t tap_hold_keycode, keyrecord_t* tap_hold_record,\n                      uint16_t other_keycode, keyrecord_t* other_record) {\n    // Exceptionally allow some one-handed chords for hotkeys.\n    switch (tap_hold_keycode) {\n        case LCTL_T(KC_Z):\n            if (other_keycode == KC_C || other_keycode == KC_V) {\n                return true;\n            }\n            break;\n\n        case RCTL_T(KC_SLSH):\n            if (other_keycode == KC_N) {\n                return true;\n            }\n            break;\n    }\n    // Otherwise defer to the opposite hands rule.\n    return get_chordal_hold_default(tap_hold_record, other_record);\n}

As shown in the last line above, you may use get_chordal_hold_default(tap_hold_record, other_record) to get the default tap vs. hold decision according to the opposite hands rule.

Retro Tapping

To enable retro tapping, add the following to your config.h:

c
#define RETRO_TAPPING

Holding and releasing a dual-function key without pressing another key will result in nothing happening. With retro tapping enabled, releasing the key without pressing another will send the original keycode even if it is outside the tapping term.

For instance, holding and releasing LT(2, KC_SPC) without hitting another key will result in nothing happening. With this enabled, it will send KC_SPC instead.

               TAPPING_TERM\n  +-----------------|------------------+\n  | +---------------|-------+          |\n  | | LT(2, KC_SPC) |       |          |\n  | +---------------|-------+          |\n  |                 |                  |\n  |                 |                  |\n  |                 |                  |\n  +-----------------|------------------+

For more granular control of this feature, you can add the following to your config.h:

c
#define RETRO_TAPPING_PER_KEY

You can then add the following function to your keymap:

c
bool get_retro_tapping(uint16_t keycode, keyrecord_t *record) {\n    switch (keycode) {\n        case LT(2, KC_SPC):\n            return true;\n        default:\n            return false;\n    }\n}

If the programs you use bind an action to taps of modifier keys (e.g. tapping left GUI to bring up the applications menu or tapping left Alt to focus the menu bar), you may find that using retro-tapping falsely triggers those actions. To counteract this, you can define a DUMMY_MOD_NEUTRALIZER_KEYCODE in config.h that will get sent in between the register and unregister events of a held Mod-Tap key. That way, the programs on your computer will no longer interpret the mod suppression induced by retro-tapping as a lone tap of a modifier key and will thus not falsely trigger the undesired action.

Naturally, for this technique to be effective, you must choose a DUMMY_MOD_NEUTRALIZER_KEYCODE for which no keyboard shortcuts are bound to. Recommended values are: KC_RIGHT_CTRL or KC_F18. Please note that DUMMY_MOD_NEUTRALIZER_KEYCODE must be a basic, unmodified, HID keycode, so values like KC_NO, KC_TRANSPARENT, or KC_PIPE (aka S(KC_BACKSLASH)) are not permitted.

By default, only left Alt and left GUI are neutralized. If you want to change the list of applicable modifier masks, use the following in your config.h:

c
#define MODS_TO_NEUTRALIZE { <mod_mask_1>, <mod_mask_2>, ... }

Examples:

c
#define DUMMY_MOD_NEUTRALIZER_KEYCODE KC_RIGHT_CTRL\n\n// Neutralize left alt and left GUI (Default value)\n#define MODS_TO_NEUTRALIZE { MOD_BIT(KC_LEFT_ALT), MOD_BIT(KC_LEFT_GUI) }\n\n// Neutralize left alt, left GUI, right GUI and left Control+Shift\n#define MODS_TO_NEUTRALIZE { MOD_BIT(KC_LEFT_ALT), MOD_BIT(KC_LEFT_GUI), MOD_BIT(KC_RIGHT_GUI), MOD_BIT(KC_LEFT_CTRL)|MOD_BIT(KC_LEFT_SHIFT) }

WARNING

Do not use MOD_xxx constants like MOD_LSFT or MOD_RALT, since they're 5-bit packed bit-arrays while MODS_TO_NEUTRALIZE expects a list of 8-bit packed bit-arrays. Use MOD_BIT(<kc>) or MOD_MASK_xxx instead.

Retro Shift

Auto Shift has its own version of retro tapping called retro shift. It is extremely similar to retro tapping, but holding the key past AUTO_SHIFT_TIMEOUT results in the value it sends being shifted. Other configurations also affect it differently; see here for more information.

Speculative Hold

Speculative Hold makes mod-tap keys more responsive by applying the modifier instantly on keydown, before the tap-hold decision is made. This is especially useful for actions like Shift+Click with a mouse, which can feel laggy with standard mod-taps.

The firmware holds the modifier speculatively. Once the key's behavior is settled:

Speculative Hold applies the modifier early but does not change the underlying tap-hold decision logic. Speculative Hold is compatible to use in combination with any other tap-hold options.

To enable Speculative Hold, add the following to your config.h:

c
#define SPECULATIVE_HOLD

By default, Speculative Hold applies to mod-taps using Shift, Ctrl, or Shift + Ctrl. You can override this behavior by defining the get_speculative_hold() callback in your keymap, for instance:

c
bool get_speculative_hold(uint16_t keycode, keyrecord_t* record) {\n    switch (keycode) { // These keys may be speculatively held.\n        case LCTL_T(KC_ESC):\n        case LSFT_T(KC_Z):\n        case RSFT_T(KC_SLSH):\n            return true;\n    }\n    return false; // Disable otherwise.\n}

Some operating systems or applications assign actions to tapping a modifier key by itself, e.g., tapping GUI to open a start menu. Because Speculative Hold sends a lone modifier key press in some cases, it can falsely trigger these actions. To prevent this, set DUMMY_MOD_NEUTRALIZER_KEYCODE (and optionally MODS_TO_NEUTRALIZE) in your config.h in the same way as described above for Retro Tapping.

Why do we include the key record for the per key functions?

One thing that you may notice is that we include the key record for all of the "per key" functions, and may be wondering why we do that.

Well, it's simple really: customization. But specifically, it depends on how your keyboard is wired up. For instance, if each row is actually using a row in the keyboard's matrix, then it may be simpler to use if (record->event.key.row == 3) instead of checking a whole bunch of keycodes, which is especially good for those people using the tap-hold keys on the home row (see about home row mods here). So, you could fine-tune those to not interfere with your normal typing.

Why are there no *_kb or *_user functions?!

Unlike many of the other functions here, there isn't a need (or even reason) to have a quantum- or keyboard-level function. Only user-level functions are useful here, so there is no need to mark them as such.

', 194); diff --git a/assets/tap_hold.md.B6KKqQy2.lean.js b/assets/tap_hold.md.DlgWmM-h.lean.js similarity index 82% rename from assets/tap_hold.md.B6KKqQy2.lean.js rename to assets/tap_hold.md.DlgWmM-h.lean.js index 0fd9978e0e9..7eba7478910 100644 --- a/assets/tap_hold.md.B6KKqQy2.lean.js +++ b/assets/tap_hold.md.DlgWmM-h.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Tap-Hold Configuration Options","description":"","frontmatter":{},"headers":[],"relativePath":"tap_hold.md","filePath":"tap_hold.md","lastUpdated":null}'); const _sfc_main = { name: "tap_hold.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 194); diff --git a/assets/understanding_qmk.md.BJ2PgDpX.js b/assets/understanding_qmk.md.4IwRrIYL.js similarity index 99% rename from assets/understanding_qmk.md.BJ2PgDpX.js rename to assets/understanding_qmk.md.4IwRrIYL.js index 579a1f0f6bb..8aeec0e5f16 100644 --- a/assets/understanding_qmk.md.BJ2PgDpX.js +++ b/assets/understanding_qmk.md.4IwRrIYL.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse(`{"title":"Understanding QMK's Code","description":"","frontmatter":{},"headers":[],"relativePath":"understanding_qmk.md","filePath":"understanding_qmk.md","lastUpdated":null}`); const _sfc_main = { name: "understanding_qmk.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Understanding QMK's Code

This document attempts to explain how the QMK firmware works from a very high level. It assumes you understand basic programming concepts but does not (except where needed to demonstrate) assume familiarity with C. It assumes that you have a basic understanding of the following documents:

Startup

You can think of QMK as no different from any other computer program. It is started and performs its tasks, but this program never finishes. Like other C programs, the entry point is the main() function. For QMK, the main() function is found in quantum/main.c.

If you browse through the main() function you'll find that it starts by initializing any hardware that has been configured (including USB to the host). The most common platform for QMK is lufa, which runs on AVR processors such as the atmega32u4. When compiled for that platform, it will invoke for example platform_setup() in platforms/avr/platform.c and protocol_setup() in tmk_core/protocol/lufa/lufa.c. It will use other implementations when compiled for other platforms like chibios and vusb. At first glance, it can look like a lot of functionality but most of the time the code will be disabled by #defines.

The main() function will then start the core part of the program with a while (true). This is The Main Loop.

The Main Loop

This section of code is called "The Main Loop" because it's responsible for looping over the same set of instructions forever, without ever reaching the end. This is where QMK dispatches out to the functions responsible for making the keyboard do everything it is supposed to do.

The main loop will call protocol_task(), which in turn will call keyboard_task() in quantum/keyboard.c. This is where all the keyboard specific functionality is dispatched, and it is responsible for detecting changes in the matrix and turning status LEDs on and off.

Within keyboard_task() you'll find code to handle:

Matrix Scanning

Matrix scanning is the core function of a keyboard firmware. It is the process of detecting which keys are currently pressed, and your keyboard runs this function many times a second. It's no exaggeration to say that 99% of your firmware's CPU time is spent on matrix scanning.

While there are different strategies for doing the actual matrix detection, they are out of scope for this document. It is sufficient to treat matrix scanning as a black box, you ask for the matrix's current state and get back a datastructure that looks like this:

{\n    {0,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0}\n}

That datastructure is a direct representation of the matrix for a 5 row by 4 column numpad. When a key is pressed that key's position within the matrix will be returned as 1 instead of 0.

Matrix Scanning runs many times per second. The exact rate varies but typically it runs at least 10 times per second to avoid perceptible lag.

Matrix to Physical Layout Map

Once we know the state of every switch on our keyboard we have to map that to a keycode. In QMK this is done by making use of C macros to allow us to separate the definition of the physical layout from the definition of keycodes.

At the keyboard level, QMK will generate a macro (typically named LAYOUT()) from our configuration file info.json, which then maps our keyboard's matrix to physical keys. Sometimes the matrix does not have a switch in every location, and QMK will use this macro to pre-populate those with KC_NO, making the keymap definition easier to work with. Here's an example LAYOUT() macro for a numpad:

c
#define LAYOUT( \\\n    k00, k01, k02, k03, \\\n    k10, k11, k12, k13, \\\n    k20, k21, k22, \\\n    k30, k31, k32, k33, \\\n    k40,      k42 \\\n) { \\\n    { k00, k01,   k02, k03   }, \\\n    { k10, k11,   k12, k13   }, \\\n    { k20, k21,   k22, KC_NO }, \\\n    { k30, k31,   k32, k33   }, \\\n    { k40, KC_NO, k42, KC_NO } \\\n}

Notice how the second block of our LAYOUT() macro matches the Matrix Scanning array above? This macro is what will map the matrix scanning array to keycodes. However, if you look at a 17 key numpad you'll notice that it has 3 places where the matrix could have a switch but doesn't, due to larger keys. We have populated those spaces with KC_NO so that our keymap definition doesn't have to.

This macro can handle unusual matrix layouts, for example the Alice. Explaining that is outside the scope of this document.

Keycode Assignment

At the keymap level we make use of our LAYOUT() macro above to map keycodes to physical locations to matrix locations. It looks like this:

c
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {\n    [0] = LAYOUT(\n        KC_NUM,  KC_PSLS, KC_PAST, KC_PMNS,\n        KC_P7,   KC_P8,   KC_P9,   KC_PPLS,\n        KC_P4,   KC_P5,   KC_P6,\n        KC_P1,   KC_P2,   KC_P3,   KC_PENT,\n        KC_P0,            KC_PDOT\n    )\n}

Notice how all of these arguments match up with the first half of the LAYOUT() macro from the last section? This is how we take a keycode and map it to our Matrix Scan from earlier.

State Change Detection

The matrix scanning described above tells us the state of the matrix at a given moment, but your computer only wants to know about changes, it doesn't care about the current state. QMK stores the results from the last matrix scan and compares the results from this matrix to determine when a key has been pressed or released.

Let's look at an example. We'll hop into the middle of a keyboard scanning loop to find that our previous scan looks like this:

{\n    {0,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0}\n}

And when our current scan completes it will look like this:

{\n    {1,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0},\n    {0,0,0,0}\n}

Comparing against our keymap we can see that the pressed key is KC_NUM. From here we dispatch to the process_record set of functions.

Process Record

The process_record() function itself is deceptively simple, but hidden within is a gateway to overriding functionality at various levels of QMK. The chain of events is listed below, using cluecard whenever we need to look at the keyboard/keymap level functions. Depending on options set in rules.mk or elsewhere, only a subset of the functions below will be included in final firmware.

At any step during this chain of events a function (such as process_record_kb()) can return false to halt all further processing.

After this is called, post_process_record() is called, which can be used to handle additional cleanup that needs to be run after the keycode is normally handled.

', 41); diff --git a/assets/understanding_qmk.md.BJ2PgDpX.lean.js b/assets/understanding_qmk.md.4IwRrIYL.lean.js similarity index 83% rename from assets/understanding_qmk.md.BJ2PgDpX.lean.js rename to assets/understanding_qmk.md.4IwRrIYL.lean.js index 397bd6d9638..181351dbc57 100644 --- a/assets/understanding_qmk.md.BJ2PgDpX.lean.js +++ b/assets/understanding_qmk.md.4IwRrIYL.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse(`{"title":"Understanding QMK's Code","description":"","frontmatter":{},"headers":[],"relativePath":"understanding_qmk.md","filePath":"understanding_qmk.md","lastUpdated":null}`); const _sfc_main = { name: "understanding_qmk.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 41); diff --git a/assets/unit_testing.md.82MAVMY0.js b/assets/unit_testing.md.DA7uUPw_.js similarity index 99% rename from assets/unit_testing.md.82MAVMY0.js rename to assets/unit_testing.md.DA7uUPw_.js index 6cc850eb6b2..276157fda57 100644 --- a/assets/unit_testing.md.82MAVMY0.js +++ b/assets/unit_testing.md.DA7uUPw_.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Unit Testing","description":"","frontmatter":{},"headers":[],"relativePath":"unit_testing.md","filePath":"unit_testing.md","lastUpdated":null}'); const _sfc_main = { name: "unit_testing.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode('

Unit Testing

If you are new to unit testing, then you can find many good resources on internet. However most of it is scattered around in small pieces here and there, and there's also many different opinions, so I won't give any recommendations.

Instead I recommend these two books, explaining two different styles of Unit Testing in detail.

If you prefer videos there are Uncle Bob's Clean Coders Videos, which unfortunately cost quite a bit, especially if you want to watch many of them. But James Shore has a free Let's Play video series.

Google Test and Google Mock

It's possible to Unit Test your code using Google Test. The Google Test framework also includes another component for writing testing mocks and stubs, called "Google Mock". For information how to write the actual tests, please refer to the documentation on that site.

Use of C++

Note that Google Test and therefore any test has to be written in C++, even if the rest of the QMK codebases is written in C. This should hopefully not be a problem even if you don't know any C++, since there's quite clear documentation and examples of the required C++ features, and you can write the rest of the test code almost as you would write normal C. Note that some compiler errors which you might get can look quite scary, but just read carefully what it says, and you should be ok.

One thing to remember, is that you have to append extern "C" around all of your C file includes.

Adding Tests for New or Existing Features

If you want to unit test a feature, take a look at some of the existing tests, for example those in the quantum/sequencer/tests folder. Then follow the steps below to create a similar structure.

  1. If it doesn't already exist, add a test subfolder to the folder containing the feature.
  2. Create a testlist.mk and a rules.mk file in that folder.
  3. Include those files from the root folder testlist.mkand build_test.mk respectively.
  4. Add a new name for your testgroup to the testlist.mk file. Each group defined there will be a separate executable. And that's how you can support mocking out different parts. Note that it's worth adding some common prefix, just like it's done for the existing tests. The reason for that is that the make command allows substring filtering, so this way you can easily run a subset of the tests.
  5. Define the source files and required options in the rules.mk file.
    • _SRC for source files
    • _DEFS for additional defines
    • _INC for additional include folders
  6. Write the tests in a new cpp file inside the test folder you created. That file has to be one of the files included from the rules.mk file.

Note how there's several different tests, each mocking out a separate part. Also note that each of them only compiles the very minimum that's needed for the tests. It's recommend that you try to do the same. For a relevant video check out Matt Hargett "Advanced Unit Testing in C & C++

Running the Tests

To run all the tests in the codebase, type make test:all. You can also run test matching a substring by typing make test:matchingsubstring. matchingsubstring can contain colons to be more specific; make test:tap_hold_configurations will run the tap_hold_configurations tests for all features while make test:retro_shift:tap_hold_configurations will run the tap_hold_configurations tests for only the Retro Shift feature.

Note that the tests are always compiled with the native compiler of your platform, so they are also run like any other program on your computer.

Debugging the Tests

If there are problems with the tests, you can find the executable in the ./build/test folder. You should be able to run those with GDB or a similar debugger.

To forward any debug messages to stderr, the tests can run with DEBUG=1. For example

make test:all DEBUG=1

Alternatively, add CONSOLE_ENABLE=yes to the tests rules.mk.

Full Integration Tests

It's not yet possible to do a full integration test, where you would compile the whole firmware and define a keymap that you are going to test. However there are plans for doing that, because writing tests that way would probably be easier, at least for people that are not used to unit testing.

In that model you would emulate the input, and expect a certain output from the emulated keyboard.

Keycode String

It's much nicer to read keycodes as names like "LT(2,KC_D)" than numerical codes like "0x4207." To convert keycodes to human-readable strings, add KEYCODE_STRING_ENABLE = yes to the rules.mk file, then use the get_keycode_string(kc) function to convert a given 16-bit keycode to a string.

c
const char *key_name = get_keycode_string(keycode);\ndprintf("kc: %s\\n", key_name);

The stringified keycode may then be logged to console output with dprintf() or elsewhere.

WARNING

Use the result of get_keycode_string() immediately. Subsequent invocations reuse the same static buffer and overwrite the previous contents.

Many common QMK keycodes are recognized by get_keycode_string(), but not all. These include some common basic keycodes, layer switch keycodes, mod-taps, one-shot keycodes, tap dance keycodes, and Unicode keycodes. As a fallback, an unrecognized keycode is written as a hex number.

Optionally, KEYCODE_STRING_NAMES_USER may be defined to add names for additional keycodes. For example, supposing keymap.c defines MYMACRO1 and MYMACRO2 as custom keycodes, the following adds their names:

c
KEYCODE_STRING_NAMES_USER(\n    KEYCODE_STRING_NAME(MYMACRO1),\n    KEYCODE_STRING_NAME(MYMACRO2),\n);

Similarly, KEYCODE_STRING_NAMES_KB may be defined to add names at the keyboard level.

Tracing Variables

Sometimes you might wonder why a variable gets changed and where, and this can be quite tricky to track down without having a debugger. It's of course possible to manually add print statements to track it, but you can also enable the variable trace feature. This works for both variables that are changed by the code, and when the variable is changed by some memory corruption.

To take the feature into use add VARIABLE_TRACE=x to the end of you make command. x represents the number of variables you want to trace, which is usually 1.

Then at a suitable place in the code, call ADD_TRACED_VARIABLE, to begin the tracing. For example to trace all the layer changes, you can do this

c
void matrix_init_user(void) {\n  ADD_TRACED_VARIABLE("layer", &layer_state, sizeof(layer_state));\n}

This will add a traced variable named "layer" (the name is just for your information), which tracks the memory location of layer_state. It tracks 4 bytes (the size of layer_state), so any modification to the variable will be reported. By default you can not specify a size bigger than 4, but you can change it by adding MAX_VARIABLE_TRACE_SIZE=x to the end of the make command line.

In order to actually detect changes to the variables you should call VERIFY_TRACED_VARIABLES around the code that you think that modifies the variable. If a variable is modified it will tell you between which two VERIFY_TRACED_VARIABLES calls the modification happened. You can then add more calls to track it down further. I don't recommend spamming the codebase with calls. It's better to start with a few, and then keep adding them in a binary search fashion. You can also delete the ones you don't need, as each call need to store the file name and line number in the ROM, so you can run out of memory if you add too many calls.

Also remember to delete all the tracing code once you have found the bug, as you wouldn't want to create a pull request with tracing code.

', 42); diff --git a/assets/unit_testing.md.82MAVMY0.lean.js b/assets/unit_testing.md.DA7uUPw_.lean.js similarity index 82% rename from assets/unit_testing.md.82MAVMY0.lean.js rename to assets/unit_testing.md.DA7uUPw_.lean.js index a49808fd341..592e2339c3c 100644 --- a/assets/unit_testing.md.82MAVMY0.lean.js +++ b/assets/unit_testing.md.DA7uUPw_.lean.js @@ -1,4 +1,4 @@ -import { _ as _export_sfc, c as createElementBlock, o as openBlock, a8 as createStaticVNode } from "./chunks/framework.Cauyuiy8.js"; +import { _ as _export_sfc, o as openBlock, c as createElementBlock, a8 as createStaticVNode } from "./chunks/framework.DUYk0S7v.js"; const __pageData = JSON.parse('{"title":"Unit Testing","description":"","frontmatter":{},"headers":[],"relativePath":"unit_testing.md","filePath":"unit_testing.md","lastUpdated":null}'); const _sfc_main = { name: "unit_testing.md" }; const _hoisted_1 = /* @__PURE__ */ createStaticVNode("", 42); diff --git a/breaking_changes.html b/breaking_changes.html index 16a19ae408a..78dc7b3172c 100644 --- a/breaking_changes.html +++ b/breaking_changes.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/breaking_changes_history.html b/breaking_changes_history.html index 17b69cf0ada..3bce9c61f1c 100644 --- a/breaking_changes_history.html +++ b/breaking_changes_history.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/breaking_changes_instructions.html b/breaking_changes_instructions.html index 09d33e8b0cc..1dca7d471b4 100644 --- a/breaking_changes_instructions.html +++ b/breaking_changes_instructions.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/chibios_upgrade_instructions.html b/chibios_upgrade_instructions.html index 33a27485689..7eec5c8c1b1 100644 --- a/chibios_upgrade_instructions.html +++ b/chibios_upgrade_instructions.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/cli.html b/cli.html index 8832918781a..1c3ba1ecda4 100644 --- a/cli.html +++ b/cli.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -24,7 +24,7 @@ qmk setup # This will clone `qmk/qmk_firmware` and optionally set up your build environment

This installation can be updated via uv tool upgrade qmk. See Upgrading tools for more information.

Install Using pip

If your system is not listed above you can install QMK manually. First ensure that you have Python 3.9 (or later) installed and have installed pip. Then install QMK with this command:

python3 -m pip install qmk
 export QMK_HOME='~/qmk_firmware' # Optional, set the location for `qmk_firmware`
 qmk setup  # This will clone `qmk/qmk_firmware` and optionally set up your build environment

Packaging For Other Operating Systems

We are looking for people to create and maintain a qmk package for more operating systems. If you would like to create a package for your OS please follow these guidelines:

- + \ No newline at end of file diff --git a/cli_commands.html b/cli_commands.html index 0060a185676..89ab105054a 100644 --- a/cli_commands.html +++ b/cli_commands.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -135,7 +135,7 @@ -e ENV, --env ENV Set a variable to be passed to make. May be passed multiple times. -j PARALLEL, --parallel PARALLEL Set the number of parallel make jobs; 0 means unlimited.

Examples:

Run entire test suite:

qmk test-c

List available tests:

qmk test-c --list

Run matching test:

qmk test-c --test unicode*

Run single test:

qmk test-c --test basic

qmk generate-compilation-database

Usage:

qmk generate-compilation-database [-kb KEYBOARD] [-km KEYMAP]

This command has been deprecated as it cannot take into account configurables such as converters or environment variables normally specified on the command line; please use the --compiledb flag with qmk compile instead.

- + \ No newline at end of file diff --git a/cli_configuration.html b/cli_configuration.html index 88ffe346047..2db1fa89b4c 100644 --- a/cli_configuration.html +++ b/cli_configuration.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -33,7 +33,7 @@ default.keymap: None -> default compile.keymap: skully -> None Ψ Wrote configuration to '/Users/example/Library/Application Support/qmk/qmk.ini'

User Configuration Options

KeyDefault ValueDescription
user.keyboardNoneThe keyboard path (Example: clueboard/66/rev4)
user.keymapNoneThe keymap name (Example: default)
user.nameNoneThe user's GitHub username.

All Configuration Options

KeyDefault ValueDescription
compile.keyboardNoneThe keyboard path (Example: clueboard/66/rev4)
compile.keymapNoneThe keymap name (Example: default)
hello.nameNoneThe name to greet when run.
new_keyboard.keyboardNoneThe keyboard path (Example: clueboard/66/rev4)
new_keyboard.keymapNoneThe keymap name (Example: default)
- + \ No newline at end of file diff --git a/cli_development.html b/cli_development.html index 8b682931a34..f084246d0b1 100644 --- a/cli_development.html +++ b/cli_development.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -36,7 +36,7 @@ @cli.subcommand('Create a keymap.c from a QMK Configurator export.') def json_keymap(cli): pass

You will only be able to access these arguments using cli.args. For example:

cli.log.info('Reading from %s and writing to %s', cli.args.filename, cli.args.output)

Testing, and Linting, and Formatting (oh my!)

We use nose2, flake8, and yapf to test, lint, and format code. You can use the pytest and format-python subcommands to run these tests:

Testing and Linting

qmk pytest

Formatting

qmk format-python

Formatting Details

We use yapf to automatically format code. Our configuration is in the [yapf] section of setup.cfg.

TIP

Many editors can use yapf as a plugin to automatically format code as you type.

Testing Details

Our tests can be found in lib/python/qmk/tests/. You will find both unit and integration tests in this directory. We hope you will write both unit and integration tests for your code, but if you do not please favor integration tests.

If your PR does not include a comprehensive set of tests please add comments like this to your code so that other people know where they can help:

python
# TODO(unassigned/<your_github_username>): Write <unit|integration> tests

We use nose2 to run our tests. You can refer to the nose2 documentation for more details on what you can do in your test functions.

Linting Details

We use flake8 to lint our code. Your code should pass flake8 before you open a PR. This will be checked when you run qmk pytest and by CI when you submit a PR.

- + \ No newline at end of file diff --git a/cli_tab_complete.html b/cli_tab_complete.html index 1dcd02ce328..76832397072 100644 --- a/cli_tab_complete.html +++ b/cli_tab_complete.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/coding_conventions_c.html b/coding_conventions_c.html index 20415e00414..70886d06286 100644 --- a/coding_conventions_c.html +++ b/coding_conventions_c.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -31,7 +31,7 @@ return -1; } }

Auto-formatting with clang-format

Clang-format is part of LLVM and can automatically format your code for you, because ain't nobody got time to do it manually. We supply a configuration file for it that applies most of the coding conventions listed above. It will only change whitespace and newlines, so you will still have to remember to include optional braces yourself.

Use the full LLVM installer to get clang-format on Windows, or use sudo apt install clang-format on Ubuntu.

If you run it from the command-line, pass -style=file as an option and it will automatically find the .clang-format configuration file in the QMK root directory.

If you use VSCode, the standard C/C++ plugin supports clang-format, alternatively there is a separate extension for it.

Some things (like LAYOUT macros) are destroyed by clang-format, so either don't run it on those files, or wrap the sensitive code in // clang-format off and // clang-format on.

- + \ No newline at end of file diff --git a/coding_conventions_python.html b/coding_conventions_python.html index 0681ea5a96c..169439e2375 100644 --- a/coding_conventions_python.html +++ b/coding_conventions_python.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -82,7 +82,7 @@ if not bar: pass

Decorators

Use when appropriate. Try to avoid too much magic unless it helps with understanding.

Threading and Multiprocessing

Should be avoided. If you need this you will have to make a strong case before we merge your code.

Power Features

Python is an extremely flexible language and gives you many fancy features such as custom metaclasses, access to bytecode, on-the-fly compilation, dynamic inheritance, object reparenting, import hacks, reflection, modification of system internals, etc.

Don't use these.

Performance is not a critical concern for us, and code understandability is. We want our codebase to be approachable by someone who only has a day or two to play with it. These features generally come with a cost to easy understanding, and we would prefer to have code that can be readily understood over faster or more compact code.

Note that some standard library modules use these techniques and it is ok to make use of those modules. But please keep readability and understandability in mind when using them.

Type Annotated Code

For now we are not using any type annotation system, and would prefer that code remain unannotated. We may revisit this in the future.

Function length

Prefer small and focused functions.

We recognize that long functions are sometimes appropriate, so no hard limit is placed on function length. If a function exceeds about 40 lines, think about whether it can be broken up without harming the structure of the program.

Even if your long function works perfectly now, someone modifying it in a few months may add new behavior. This could result in bugs that are hard to find. Keeping your functions short and simple makes it easier for other people to read and modify your code.

You could find long and complicated functions when working with some code. Do not be intimidated by modifying existing code: if working with such a function proves to be difficult, you find that errors are hard to debug, or you want to use a piece of it in several different contexts, consider breaking up the function into smaller and more manageable pieces.

FIXMEs

It is OK to leave FIXMEs in code. Why? Encouraging people to at least document parts of code that need to be thought out more (or that are confusing) is better than leaving this code undocumented.

All FIXMEs should be formatted like:

FIXME(username): Revisit this code when the frob feature is done.

...where username is your GitHub username.

Testing

We use a combination of Integration and Unit testing to ensure that the our code is as bug-free as possible. All the tests can be found in lib/python/qmk/tests/. You can run all the tests with qmk pytest.

At the time of this writing our tests are not very comprehensive. Looking at the current tests and writing new test cases for untested situations is a great way to both familiarize yourself with the codebase and contribute to QMK.

Integration Tests

Integration tests can be found in lib/python/qmk/tests/test_cli_commands.py. This is where CLI commands are actually run and their overall behavior is verified. We use subprocess to launch each CLI command and a combination of checking output and returncode to determine if the right thing happened.

Unit Tests

The other test_*.py files in lib/python/qmk/tests/ contain unit tests. You can write tests for individual functions inside lib/python/qmk/ here. Generally these files are named after the module, with dots replaced by underscores.

At the time of this writing we do not do any mocking for our tests. If you would like to help us change this please open an issue or join #cli on Discord and start a conversation there.

- + \ No newline at end of file diff --git a/compatible_microcontrollers.html b/compatible_microcontrollers.html index 86c640f2fb6..764251fda91 100644 --- a/compatible_microcontrollers.html +++ b/compatible_microcontrollers.html @@ -8,17 +8,17 @@ - + - - - + + +
Skip to content
- + \ No newline at end of file diff --git a/config_options.html b/config_options.html index 284ce1f0f5f..2901a43eb5b 100644 --- a/config_options.html +++ b/config_options.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -21,7 +21,7 @@ LIB_SRC += lib_b.c SRC += c.c LIB_SRC += lib_d.cThe link order is as follows.
 ...  a.o c.o  ...  lib_b.a lib_d.a  ...
  • LAYOUTS
  • LTO_ENABLE
  • AVR MCU Options

    Feature Options

    Use these to enable or disable building certain features. The more you have enabled the bigger your firmware will be, and you run the risk of building a firmware too large for your MCU.

    USB Endpoint Limitations

    In order to provide services over USB, QMK has to use USB endpoints. These are a finite resource: each microcontroller has only a certain number. This limits what features can be enabled together. If the available endpoints are exceeded, a build error is thrown.

    The following features can require separate endpoints:

    In order to improve utilisation of the endpoints, the HID features can be combined to use a single endpoint. By default, MOUSEKEY, EXTRAKEY, and NKRO are combined into a single endpoint.

    The base keyboard functionality can also be combined into the endpoint, by setting KEYBOARD_SHARED_EP = yes. This frees up one more endpoint, but it can prevent the keyboard working in some BIOSes, as they do not implement Boot Keyboard protocol switching.

    Combining the mouse also breaks Boot Mouse compatibility. The mouse can be uncombined by setting MOUSE_SHARED_EP = no if this functionality is required.

    - + \ No newline at end of file diff --git a/configurator_architecture.html b/configurator_architecture.html index babf0de9851..8d1f8dc8591 100644 --- a/configurator_architecture.html +++ b/configurator_architecture.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/configurator_default_keymaps.html b/configurator_default_keymaps.html index 589c233d02f..17fb23ffa1d 100644 --- a/configurator_default_keymaps.html +++ b/configurator_default_keymaps.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -116,7 +116,7 @@ } return process_record_user(keycode, record); };

    Note the call to process_record_user() at the end.

    Additional Reading

    For QMK Configurator to support your keyboard, your keyboard must be present in the master branch of the qmk_firmware repository. For instructions on this, please see Supporting Your Keyboard in QMK Configurator.

    - + \ No newline at end of file diff --git a/configurator_step_by_step.html b/configurator_step_by_step.html index 73f718f34de..966ee0cda9d 100644 --- a/configurator_step_by_step.html +++ b/configurator_step_by_step.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/configurator_troubleshooting.html b/configurator_troubleshooting.html index 0a6e6d48912..0ec51257f58 100644 --- a/configurator_troubleshooting.html +++ b/configurator_troubleshooting.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/contributing.html b/contributing.html index 1748b9aa410..f7deb4c6a4e 100644 --- a/contributing.html +++ b/contributing.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -30,7 +30,7 @@ FIRST_LAYER = SAFE_RANGE, SECOND_LAYER };

    Previewing the Documentation

    Before opening a pull request, you can preview your changes if you have set up the development environment by running this command from the qmk_firmware/ folder:

    qmk docs -b

    Which should automatically open your browser; otherwise, navigate to http://localhost:8936/.

    Keyboards

    Keyboards are the raison d'être for QMK. Some keyboards are community maintained, while others are maintained by the people responsible for making a particular keyboard. The readme.md should tell you who maintains a particular keyboard. If you have questions relating to a particular keyboard you can Open An Issue and tag the maintainer in your question.

    We also ask that you follow these guidelines:

    Quantum/TMK Core

    Before you put a lot of work into building your new feature you should make sure you are implementing it in the best way. You can get a basic understanding of QMK by reading Understanding QMK, which will take you on a tour of the QMK program flow. From here you should talk to us to get a sense of the best way to implement your idea. There are two main ways to do this:

    Feature and Bug Fix PRs affect all keyboards. We are also in the process of restructuring QMK. For this reason it is especially important for significant changes to be discussed before implementation has happened. If you open a PR without talking to us first please be prepared to do some significant rework if your choices do not mesh well with our planned direction.

    Here are some things to keep in mind when working on your feature or bug fix.

    We also ask that you follow these guidelines:

    Refactoring

    To maintain a clear vision of how things are laid out in QMK we try to plan out refactors in-depth and have a collaborator make the changes. If you have an idea for refactoring, or suggestions, open an issue, we'd love to talk about how QMK can be improved.

    What Does the Code of Conduct Mean for Me?

    Our Code of Conduct means that you are responsible for treating everyone on the project with respect and courtesy regardless of their identity. If you are the victim of any inappropriate behavior or comments as described in our Code of Conduct, we are here for you and will do the best to ensure that the abuser is reprimanded appropriately, per our code.

    - + \ No newline at end of file diff --git a/custom_matrix.html b/custom_matrix.html index 9fe99066011..75ab923d0a4 100644 --- a/custom_matrix.html +++ b/custom_matrix.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -64,7 +64,7 @@ __attribute__((weak)) void matrix_init_user(void) {} __attribute__((weak)) void matrix_scan_user(void) {} - + \ No newline at end of file diff --git a/custom_quantum_functions.html b/custom_quantum_functions.html index 995066784f0..12af4cb205f 100644 --- a/custom_quantum_functions.html +++ b/custom_quantum_functions.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -141,7 +141,7 @@ }

    The first argument trigger_time is the intended time of execution. If other delays prevent executing at the exact trigger time, this allows for "catch-up" or even skipping intervals, depending on the required behaviour.

    The second argument cb_arg is the same argument passed into defer_exec() below, and can be used to access state information from the original call context.

    The return value is the number of milliseconds to use if the function should be repeated -- if the callback returns 0 then it's automatically unregistered. In the example above, a hypothetical my_deferred_functionality() is invoked to determine if the callback needs to be repeated -- if it does, it reschedules for a 500 millisecond delay, otherwise it informs the deferred execution background task that it's done, by returning 0.

    TIP

    Note that the returned delay will be applied to the intended trigger time, not the time of callback invocation. This allows for generally consistent timing even in the face of occasional late execution.

    Deferred executor registration

    Once a callback has been defined, it can be scheduled using the following API:

    c
    deferred_token my_token = defer_exec(1500, my_callback, NULL);

    The first argument is the number of milliseconds to wait until executing my_callback -- in the case above, 1500 milliseconds, or 1.5 seconds.

    The third parameter is the cb_arg that gets passed to the callback at the point of execution. This value needs to be valid at the time the callback is invoked -- a local function value will be destroyed before the callback is executed and should not be used. If this is not required, NULL should be used.

    The return value is a deferred_token that can consequently be used to cancel the deferred executor callback before it's invoked. If a failure occurs, the returned value will be INVALID_DEFERRED_TOKEN. Usually this will be as a result of supplying 0 to the delay, or a NULL for the callback. The other failure case is if there are too many deferred executions "in flight" -- this can be increased by changing the limit, described below.

    Extending a deferred execution

    The deferred_token returned by defer_exec() can be used to extend a the duration a pending execution waits before it gets invoked:

    c
    // This will re-delay my_token's future execution such that it is invoked 800ms after the current time
     extend_deferred_exec(my_token, 800);

    Cancelling a deferred execution

    The deferred_token returned by defer_exec() can be used to cancel a pending execution before it gets invoked:

    c
    // This will cancel my_token's future execution
     cancel_deferred_exec(my_token);

    Once a token has been canceled, it should be considered invalid. Reusing the same token is not supported.

    Deferred callback limits

    There are a maximum number of deferred callbacks that can be scheduled, controlled by the value of the define MAX_DEFERRED_EXECUTORS.

    If registrations fail, then you can increase this value in your keyboard or keymap config.h file, for example to 16 instead of the default 8:

    c
    #define MAX_DEFERRED_EXECUTORS 16

    Advanced topics

    This page used to encompass a large set of features. We have moved many sections that used to be part of this page to their own pages. Everything below this point is simply a redirect so that people following old links on the web find what they're looking for.

    Layer Change Code

    Layer change code

    Persistent Configuration (EEPROM)

    Persistent Configuration (EEPROM)

    - + \ No newline at end of file diff --git a/data_driven_config.html b/data_driven_config.html index 6c96de13588..d73d3cf5d12 100644 --- a/data_driven_config.html +++ b/data_driven_config.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/documentation_best_practices.html b/documentation_best_practices.html index 15bdab13112..675584e7526 100644 --- a/documentation_best_practices.html +++ b/documentation_best_practices.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -34,7 +34,7 @@ |KC_COFFEE||Make Coffee| |KC_CREAM||Order Cream| |KC_SUGAR||Order Sugar|

    Place your documentation into docs/features/<my_cool_feature>.md, and add that file to the appropriate place in docs/_sidebar.json. If you have added any keycodes be sure to add them to docs/keycodes.md with a link back to your feature page.

    - + \ No newline at end of file diff --git a/documentation_templates.html b/documentation_templates.html index a034429008a..46b32cebba2 100644 --- a/documentation_templates.html +++ b/documentation_templates.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -51,7 +51,7 @@ * **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard * **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead * **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available - + \ No newline at end of file diff --git a/driver_installation_zadig.html b/driver_installation_zadig.html index a75db25eebe..35df206cf38 100644 --- a/driver_installation_zadig.html +++ b/driver_installation_zadig.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/drivers/adc.html b/drivers/adc.html index c9c0a9664a1..babf43e769b 100644 --- a/drivers/adc.html +++ b/drivers/adc.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/drivers/apa102.html b/drivers/apa102.html index 3010776b7e9..39c10aa96bb 100644 --- a/drivers/apa102.html +++ b/drivers/apa102.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/drivers/audio.html b/drivers/audio.html index 55397a6b083..601e863d7f7 100644 --- a/drivers/audio.html +++ b/drivers/audio.html @@ -8,16 +8,16 @@ - + - - - + + + -
    Skip to content
    - + \ No newline at end of file diff --git a/drivers/battery.html b/drivers/battery.html index 7b5b36f7268..17ddac05fbc 100644 --- a/drivers/battery.html +++ b/drivers/battery.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -25,7 +25,7 @@ // Read and return current state here return value; } - + \ No newline at end of file diff --git a/drivers/eeprom.html b/drivers/eeprom.html index a6d86b36880..16ad6ed8f93 100644 --- a/drivers/eeprom.html +++ b/drivers/eeprom.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/drivers/flash.html b/drivers/flash.html index 374aae758f7..1e4661f452c 100644 --- a/drivers/flash.html +++ b/drivers/flash.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/drivers/gpio.html b/drivers/gpio.html index 47ebe4e4c71..c0c8bffbda0 100644 --- a/drivers/gpio.html +++ b/drivers/gpio.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -24,7 +24,7 @@ } // some process }

    ATOMIC_BLOCK_FORCEON forces interrupts to be disabled before the block is executed, without regard to whether they are enabled or disabled. Then, after the block is executed, the interrupt is enabled.

    Note that ATOMIC_BLOCK_FORCEON can therefore be used if you know that interrupts are enabled before the execution of the block, or if you know that it is OK to enable interrupts at the completion of the block.

    - + \ No newline at end of file diff --git a/drivers/i2c.html b/drivers/i2c.html index ca50a5f5804..6a3065d41ba 100644 --- a/drivers/i2c.html +++ b/drivers/i2c.html @@ -8,16 +8,16 @@ - + - - - + + + -
    Skip to content
    - + \ No newline at end of file diff --git a/drivers/is31fl3236.html b/drivers/is31fl3236.html index eaf3eabf0b8..c5ebb42f4c6 100644 --- a/drivers/is31fl3236.html +++ b/drivers/is31fl3236.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -31,7 +31,7 @@ {0, OUT1}, // etc... };

    API

    struct is31fl3236_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3236_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3236_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3236_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3236_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3236_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3236_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3236_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3236_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3236_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

    Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3236_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3236_set_led_control_register(uint8_t index, bool value)

    Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3236_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3236_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3236_update_led_control_registers(uint8_t index)

    Flush the LED control register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3729.html b/drivers/is31fl3729.html index daf6260ab54..5be2e68ac09 100644 --- a/drivers/is31fl3729.html +++ b/drivers/is31fl3729.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 12, figure 9.

    API

    struct is31fl3729_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3729_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3729_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3729_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3729_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3729_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3729_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3729_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3729_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3729_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

    Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3729_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3729_set_scaling_register(uint8_t index, uint8_t value)

    Configure the scaling registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3729_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3729_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3729_update_scaling_registers(uint8_t index)

    Flush the scaling register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3731.html b/drivers/is31fl3731.html index e28440d419f..5e20c5e47e3 100644 --- a/drivers/is31fl3731.html +++ b/drivers/is31fl3731.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -31,7 +31,7 @@ {0, C1_1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 11, figure 8.

    API

    struct is31fl3731_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3731_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3731_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3731_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3731_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3731_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3731_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3731_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3731_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3731_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3731_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

    Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3731_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3731_set_led_control_register(uint8_t index, bool value)

    Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3731_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3731_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3731_update_led_control_registers(uint8_t index)

    Flush the LED control register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3733.html b/drivers/is31fl3733.html index e2bd6960fdb..e3b87a072c7 100644 --- a/drivers/is31fl3733.html +++ b/drivers/is31fl3733.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 15, figure 9.

    API

    struct is31fl3733_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3733_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3733_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3733_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3733_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3733_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3733_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3733_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3733_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3733_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3733_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

    Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3733_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3733_set_led_control_register(uint8_t index, bool value)

    Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3733_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3733_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3733_update_led_control_registers(uint8_t index)

    Flush the LED control register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3736.html b/drivers/is31fl3736.html index 05e40a41a28..e2e75c376e7 100644 --- a/drivers/is31fl3736.html +++ b/drivers/is31fl3736.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 16, figure 9.

    API

    struct is31fl3736_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3736_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3736_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3736_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3736_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3736_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3736_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3736_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3736_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3736_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3736_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

    Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3736_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3736_set_led_control_register(uint8_t index, bool value)

    Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3736_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3736_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3736_update_led_control_registers(uint8_t index)

    Flush the LED control register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3737.html b/drivers/is31fl3737.html index 1eff1e743ce..c98d12e177d 100644 --- a/drivers/is31fl3737.html +++ b/drivers/is31fl3737.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 15, figure 9.

    API

    struct is31fl3737_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3737_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3737_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3737_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3737_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3737_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3737_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3737_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3737_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3737_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3737_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

    Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3737_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3737_set_led_control_register(uint8_t index, bool value)

    Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3737_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3737_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3737_update_led_control_registers(uint8_t index)

    Flush the LED control register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3741.html b/drivers/is31fl3741.html index 81917d2accb..308f266db05 100644 --- a/drivers/is31fl3741.html +++ b/drivers/is31fl3741.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 12, figure 8.

    API

    struct is31fl3741_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3741_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3741_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3741_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3741_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3741_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3741_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3741_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3741_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3741_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3741_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

    Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3741_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3741_set_led_control_register(uint8_t index, bool value)

    Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3741_update_led_control_registers() after you are finished.

    Arguments


    void is31fl3741_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3741_update_led_control_registers(uint8_t index)

    Flush the LED control register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3742a.html b/drivers/is31fl3742a.html index fb86a4a45a7..c4255821303 100644 --- a/drivers/is31fl3742a.html +++ b/drivers/is31fl3742a.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 12, figure 8.

    API

    struct is31fl3742a_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3742a_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3742a_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3742a_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3742a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3742a_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3742a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3742a_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3742a_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3742a_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3742a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

    Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3742a_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3742a_set_scaling_register(uint8_t index, uint8_t value)

    Configure the scaling register for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3742a_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3742a_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3742a_update_scaling_registers(uint8_t index)

    Flush the scaling register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3743a.html b/drivers/is31fl3743a.html index fd7240bb6c1..c6164b4d2be 100644 --- a/drivers/is31fl3743a.html +++ b/drivers/is31fl3743a.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 12, figure 8.

    API

    struct is31fl3743a_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3743a_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3743a_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3743a_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3743a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3743a_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3743a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3743a_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3743a_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3743a_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3743a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

    Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3743a_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3743a_set_scaling_register(uint8_t index, uint8_t value)

    Configure the scaling register for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3743a_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3743a_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3743a_update_scaling_registers(uint8_t index)

    Flush the scaling register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3745.html b/drivers/is31fl3745.html index 013710e8286..5e0f0496446 100644 --- a/drivers/is31fl3745.html +++ b/drivers/is31fl3745.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 12, figure 9.

    API

    struct is31fl3745_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3745_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3745_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3745_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3745_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3745_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3745_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3745_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3745_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3745_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3745_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

    Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3745_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3745_set_scaling_register(uint8_t index, uint8_t value)

    Configure the scaling register for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3745_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3745_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3745_update_scaling_registers(uint8_t index)

    Flush the scaling register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/is31fl3746a.html b/drivers/is31fl3746a.html index 7da1f60d5cb..609efd3c58f 100644 --- a/drivers/is31fl3746a.html +++ b/drivers/is31fl3746a.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -32,7 +32,7 @@ {0, SW1_CS1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 13, figure 8.

    API

    struct is31fl3746a_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void is31fl3746a_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void is31fl3746a_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void is31fl3746a_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void is31fl3746a_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3746a_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3746a_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void is31fl3746a_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3746a_update_pwm_buffers() after you are finished.

    Arguments


    void is31fl3746a_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void is31fl3746a_set_scaling_register(uint8_t index, uint8_t red, uint8_t green, uint8_t blue)

    Configure the scaling registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call is31fl3746a_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3746a_set_scaling_register(uint8_t index, uint8_t value)

    Configure the scaling register for a single LED (single-color driver only). This function does not immediately update the LEDs; call is31fl3746a_update_scaling_registers() after you are finished.

    Arguments


    void is31fl3746a_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void is31fl3746a_update_scaling_registers(uint8_t index)

    Flush the scaling register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/serial.html b/drivers/serial.html index f01f3a151a1..35a6103a9f8 100644 --- a/drivers/serial.html +++ b/drivers/serial.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -71,7 +71,7 @@ #undef STM32_SIO_USE_USARTn #define STM32_SIO_USE_USARTn TRUE

    Where n matches the peripheral number of your selected USART on the MCU.

  • Override the default USART SIO driver if you use a USART peripheral that does not belong to the default selected SIOD1 driver. For instance, if you selected STM32_SERIAL_USE_USART3 the matching driver would be SIOD3.

    Add the following to your keyboard's config.h:

    c
    #define SERIAL_USART_DRIVER SIOD3
  • The PIO driver

    The PIO subsystem is a Raspberry Pi RP2040 specific implementation, using an integrated PIO peripheral and is therefore only available on this MCU. Because of the flexible nature of PIO peripherals, any GPIO pin can be used as a TX or RX pin. Half-duplex and Full-duplex operation modes are fully supported with this driver. Half-duplex uses the built-in pull-ups and GPIO manipulation of the RP2040 to drive the line high by default, thus an external pull-up resistor is not required.

    Optionally, the PIO peripheral utilized for split communication can be changed with the following define in config.h:

    c
    #define SERIAL_PIO_USE_PIO1 // Force the usage of PIO1 peripheral, by default the Serial implementation uses the PIO0 peripheral

    The Serial PIO program uses 2 state machines, 13 instructions and the complete interrupt handler of the PIO peripheral it is running on.

    Advanced Configuration

    There are several advanced configuration options that can be defined in your keyboards config.h file:

    Baudrate

    If you're having issues or need a higher baudrate with serial communication, you can change the baudrate which in turn controls the communication speed for serial. You want to lower the baudrate if you experience failed transactions.

    c
    #define SELECT_SOFT_SERIAL_SPEED n

    Where n is one of:

    SpeedBitbangHalf-duplex and Full-duplex
    0189000 baud (experimental)460800 baud
    1137000 baud (default)230400 baud (default)
    275000 baud115200 baud
    339000 baud57600 baud
    426000 baud38400 baud
    520000 baud19200 baud

    Alternatively you can specify the baudrate directly by defining SERIAL_USART_SPEED.

    Timeout

    This is the default time window in milliseconds in which a successful communication has to complete. Usually you don't want to change this value. But you can do so anyways by defining an alternate one in your keyboards config.h file:

    c
    #define SERIAL_USART_TIMEOUT 20    // USART driver timeout. default 20

    Troubleshooting

    If you're having issues with serial communication, you can enable debug messages that will give you insights which part of the communication failed. The enable these messages add to your keyboards config.h file:

    c
    #define SERIAL_DEBUG

    TIP

    The messages will be printed out to the CONSOLE output. For additional information, refer to Debugging/Troubleshooting QMK.

    Alternate Functions for selected STM32 MCUs

    Pins for USART Peripherals with

    STM32F303 / Proton-C Datasheet

    Pin Swap available: ✔️

    PinFunctionMode
    USART1
    PA9TXAF7
    PA10RXAF7
    PB6TXAF7
    PB7RXAF7
    PC4TXAF7
    PC5RXAF7
    PE0TXAF7
    PE1RXAF7
    USART2
    PA2TXAF7
    PA3RXAF7
    PA14TXAF7
    PA15RXAF7
    PB3TXAF7
    PB4RXAF7
    PD5TXAF7
    PD6RXAF7
    USART3
    PB10TXAF7
    PB11RXAF7
    PC10TXAF7
    PC11RXAF7
    PD8TXAF7
    PD9RXAF7

    STM32F072 Datasheet

    Pin Swap available: ✔️

    PinFunctionMode
    USART1
    PA9TXAF1
    PA10RXAF1
    PB6TXAF0
    PB7RXAF0
    USART2
    PA2TXAF1
    PA3RXAF1
    PA14TXAF1
    PA15RXAF1
    USART3
    PB10TXAF4
    PB11RXAF4
    PC4TXAF1
    PC5RXAF1
    PC10TXAF1
    PC11RXAF1
    PD8TXAF0
    PD9RXAF0
    USART4
    PA0TXAF4
    PA1RXAF4

    STM32F103 Medium Density (C8-CB) Datasheet

    Pin Swap available: N/A

    TX Pin is always Alternate Function Push-Pull, RX Pin is always regular input pin for any USART peripheral. For STM32F103 no additional Alternate Function configuration is necessary. QMK is already configured.

    Pin remapping:

    The pins of USART Peripherals use default Pins that can be remapped to use other pins using the AFIO registers. Default pins are marked bold. Add the appropriate defines to your config.h file.

    PinFunctionModeUSART_REMAP
    USART1
    PA9TXAFPP
    PA10RXIN
    PB6TXAFPPUSART1_REMAP
    PB7RXINUSART1_REMAP
    USART2
    PA2TXAFPP
    PA3RXIN
    PD5TXAFPPUSART2_REMAP
    PD6RXINUSART2_REMAP
    USART3
    PB10TXAFPP
    PB11RXIN
    PC10TXAFPPUSART3_PARTIALREMAP
    PC11RXINUSART3_PARTIALREMAP
    PD8TXAFPPUSART3_FULLREMAP
    PD9RXINUSART3_FULLREMAP
    - + \ No newline at end of file diff --git a/drivers/snled27351.html b/drivers/snled27351.html index 7679ce79f31..43a18f6cc14 100644 --- a/drivers/snled27351.html +++ b/drivers/snled27351.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -31,7 +31,7 @@ {0, CB1_CA1}, // etc... };

    These values correspond to the register indices as shown in the datasheet on page 13.

    API

    struct snled27351_led_t

    Contains the PWM register addresses for a single RGB LED.

    Members


    void snled27351_init(uint8_t index)

    Initialize the LED driver. This function should be called first.

    Arguments


    void snled27351_write_register(uint8_t index, uint8_t reg, uint8_t data)

    Set the value of the given register.

    Arguments


    void snled27351_select_page(uint8_t index, uint8_t page)

    Change the current page for configuring the LED driver.

    Arguments


    void snled27351_set_color(int index, uint8_t red, uint8_t green, uint8_t blue)

    Set the color of a single LED (RGB driver only). This function does not immediately update the LEDs; call snled27351_update_pwm_buffers() after you are finished.

    Arguments


    void snled27351_set_color_all(uint8_t red, uint8_t green, uint8_t blue)

    Set the color of all LEDs (RGB driver only).

    Arguments


    void snled27351_set_value(int index, uint8_t value)

    Set the brightness of a single LED (single-color driver only). This function does not immediately update the LEDs; call snled27351_update_pwm_buffers() after you are finished.

    Arguments


    void snled27351_set_value_all(uint8_t value)

    Set the brightness of all LEDs (single-color driver only).

    Arguments


    void snled27351_set_led_control_register(uint8_t index, bool red, bool green, bool blue)

    Configure the LED control registers for a single LED (RGB driver only). This function does not immediately update the LEDs; call snled27351_update_led_control_registers() after you are finished.

    Arguments


    void snled27351_set_led_control_register(uint8_t index, bool value)

    Configure the LED control registers for a single LED (single-color driver only). This function does not immediately update the LEDs; call snled27351_update_led_control_registers() after you are finished.

    Arguments


    void snled27351_update_pwm_buffers(uint8_t index)

    Flush the PWM values to the LED driver.

    Arguments


    void snled27351_update_led_control_registers(uint8_t index)

    Flush the LED control register values to the LED driver.

    Arguments

    - + \ No newline at end of file diff --git a/drivers/spi.html b/drivers/spi.html index 4ea51d4a021..169f92e7dce 100644 --- a/drivers/spi.html +++ b/drivers/spi.html @@ -8,16 +8,16 @@ - + - - - + + + -
    Skip to content
    - + \ No newline at end of file diff --git a/drivers/ws2812.html b/drivers/ws2812.html index f50c326b385..228b297b832 100644 --- a/drivers/ws2812.html +++ b/drivers/ws2812.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -20,7 +20,7 @@
    Skip to content
    - + \ No newline at end of file diff --git a/easy_maker.html b/easy_maker.html index 3d36d8e1990..9a46e03f60d 100644 --- a/easy_maker.html +++ b/easy_maker.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/faq_build.html b/faq_build.html index e5fc946915d..37042ea94ff 100644 --- a/faq_build.html +++ b/faq_build.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -25,7 +25,7 @@ $ sudo dfu-programmer atmega32u4 reset sudo udevadm trigger

    Note: With older versions of ModemManager (< 1.12), filtering only works when not in strict mode. The following commands can update that setting:

    printf '[Service]\nExecStart=\nExecStart=/usr/sbin/ModemManager --filter-policy=default' | sudo tee /etc/systemd/system/ModemManager.service.d/policy.conf
     sudo systemctl daemon-reload
     sudo systemctl restart ModemManager

    Serial device is not detected in bootloader mode on Linux

    Make sure your kernel has appropriate support for your device. If your device uses USB ACM, such as Pro Micro (Atmega32u4), make sure to include CONFIG_USB_ACM=y. Other devices may require USB_SERIAL and any of its sub options.

    Unknown Device for DFU Bootloader

    Issues encountered when flashing keyboards on Windows are most often due to having the wrong drivers installed for the bootloader, or none at all.

    Re-running the QMK installation script (curl -fsSL https://install.qmk.fm | sh) or reinstalling the QMK Toolbox may fix the issue. Alternatively, you can download and run the qmk_driver_installer package manually.

    If that doesn't work, then you may need to download and run Zadig. See Bootloader Driver Installation with Zadig for more detailed information.

    USB VID and PID

    You can use any ID you want with editing config.h. Using any presumably unused ID will be no problem in fact except for very low chance of collision with other product.

    Most boards in QMK use 0xFEED as the vendor ID. You should look through other keyboards to make sure you pick a unique Product ID.

    Also see this. https://github.com/tmk/tmk_keyboard/issues/150

    You can buy a really unique VID:PID here. I don't think you need this for personal use.

    I just flashed my keyboard and it does nothing/keypresses don't register - it's also ARM (rev6 planck, clueboard 60, hs60v2, etc...) (Feb 2019)

    Due to how EEPROM works on ARM based chips, saved settings may no longer be valid. This affects the default layers, and may, under certain circumstances we are still figuring out, make the keyboard unusable. Resetting the EEPROM will correct this.

    Planck rev6 reset EEPROM can be used to force an eeprom reset. After flashing this image, flash your normal firmware again which should restore your keyboard to normal working order. Preonic rev3 reset EEPROM

    If bootmagic is enabled in any form, you should be able to do this too (see Bootmagic docs and keyboard info for specifics on how to do this).

    - + \ No newline at end of file diff --git a/faq_debug.html b/faq_debug.html index 90442a74142..21d040a5fd0 100644 --- a/faq_debug.html +++ b/faq_debug.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -43,7 +43,7 @@ > matrix scan frequency: 316 > matrix scan frequency: 316

    hid_listen Can't Recognize Device

    When debug console of your device is not ready you will see like this:

    Waiting for device:.........

    Once the device is plugged in then hid_listen finds it you will get this message:

    Waiting for new device:.........................
     Listening:

    If you can't get this 'Listening:' message try building with CONSOLE_ENABLE=yes in [Makefile]

    You may need privileges to access the device an OS like Linux. Try sudo hid_listen.

    On many Linux distros you can avoid having to run hid_listen as root by creating a file called /etc/udev/rules.d/70-hid-listen.rules with the following content:

    SUBSYSTEM=="hidraw", ATTRS{idVendor}=="abcd", ATTRS{idProduct}=="def1", TAG+="uaccess", RUN{builtin}+="uaccess"

    Replace abcd and def1 with your keyboard's vendor and product id, letters must be lowercase. The RUN{builtin}+="uaccess" part is only needed for older distros.

    Can't Get Message on Console

    Check:

    - + \ No newline at end of file diff --git a/faq_general.html b/faq_general.html index caa2157bea3..792aafff291 100644 --- a/faq_general.html +++ b/faq_general.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/faq_keymap.html b/faq_keymap.html index 707d9d8003b..32c6622f72a 100644 --- a/faq_keymap.html +++ b/faq_keymap.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -20,7 +20,7 @@
    Skip to content
    - + \ No newline at end of file diff --git a/faq_misc.html b/faq_misc.html index 9a3f2130e10..421ba9e2b51 100644 --- a/faq_misc.html +++ b/faq_misc.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -23,7 +23,7 @@ Size after: text data bss dec hex filename 0 22396 0 22396 577c planck_rev4_cbbrowne.hex

    NKRO Doesn't work

    First you have to compile firmware with the build option NKRO_ENABLE in Makefile.

    Try Magic N command(LShift+RShift+N by default) when NKRO still doesn't work. You can use this command to toggle between NKRO and 6KRO mode temporarily. In some situations NKRO doesn't work and you will need to switch to 6KRO mode, in particular when you are in BIOS.

    TrackPoint Needs Reset Circuit (PS/2 Mouse Support)

    Without reset circuit you will have inconsistent result due to improper initialization of the hardware. See circuit schematic of TPM754:

    Can't Read Column of Matrix Beyond 16

    Use 1UL<<16 instead of 1<<16 in read_cols() in [matrix.h] when your columns goes beyond 16.

    In C 1 means one of [int] type which is [16 bit] in case of AVR, so you can't shift left more than 15. Thus, calculating 1<<16 will unexpectedly equal zero. To work around this, you have to use [unsigned long] type with 1UL.

    https://deskthority.net/workshop-f7/rebuilding-and-redesigning-a-classic-thinkpad-keyboard-t6181-60.html#p146279

    Special Extra Key Doesn't Work (System, Audio Control Keys)

    You need to define EXTRAKEY_ENABLE in rules.mk to use them in QMK.

    EXTRAKEY_ENABLE = yes          # Audio control and System control

    Wake from Sleep Doesn't Work

    In Windows check Allow this device to wake the computer setting in Power Management property tab of Device Manager. Also check your BIOS settings. Pressing any key during sleep should wake host.

    Using Arduino?

    Note that Arduino pin naming is different from actual chip. For example, Arduino pin D0 is not PD0. Check circuit with its schematics yourself.

    Arduino Leonardo and micro have ATMega32U4 and can be used for TMK, though Arduino bootloader may be a problem.

    Enabling JTAG

    By default, the JTAG debugging interface is disabled as soon as the keyboard starts up. JTAG-capable MCUs come from the factory with the JTAGEN fuse set, and it takes over certain pins of the MCU that the board may be using for the switch matrix, LEDs, etc.

    If you would like to keep JTAG enabled, just add the following to your config.h:

    c
    #define NO_JTAG_DISABLE

    USB 3 Compatibility

    Some problems can be fixed by switching from a USB 3.x port to a USB 2.0 port.

    Mac Compatibility

    OS X 10.11 and Hub

    See here: https://geekhack.org/index.php?topic=14290.msg1884034#msg1884034

    Problem in BIOS (UEFI) Setup/Resume (Sleep & Wake)/Power Cycles

    Some people reported their keyboard stops working in BIOS and/or after resume(power cycles).

    As of now the root cause is not clear, but some build options seem to be related. In Makefile, try to disable options like CONSOLE_ENABLE, NKRO_ENABLE, SLEEP_LED_ENABLE and/or others.

    More info:

    - + \ No newline at end of file diff --git a/feature_advanced_keycodes.html b/feature_advanced_keycodes.html index 103e44f6147..4055d33de69 100644 --- a/feature_advanced_keycodes.html +++ b/feature_advanced_keycodes.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -80,7 +80,7 @@ } return true; };

    Alternatively, this can be done with Key Overrides.

    Advanced topics

    This page used to encompass a large set of features. We have moved many sections that used to be part of this page to their own pages. Everything below this point is simply a redirect so that people following old links on the web find what they're looking for.

    Layers

    Mod-Tap

    One Shot Keys

    Tap-Hold Configuration Options

    Key Overrides

    - + \ No newline at end of file diff --git a/feature_converters.html b/feature_converters.html index 3d6d72c53ac..1205c22a0c5 100644 --- a/feature_converters.html +++ b/feature_converters.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -55,7 +55,7 @@ "pin_compatible": "elite_c", "diode_direction": "COL2ROW", }

    The above example, configures a keyboard for a default of elite_c while allowing any of the elite_c converter targets.

    The framework then allows mapping of pins from <PIN_COMPATIBLE> to converter <target>.

    WARNING

    Mapped pins should adhere strictly to the defined interface, any extras present on the hardware should be ignored.

    Available Pin Compatibility

    promicro

    Notes:

    Includes LEDs - these may be mapped to unused/unavailable pins when not present.

    - + \ No newline at end of file diff --git a/feature_debounce_type.html b/feature_debounce_type.html index 9c8da25dd6d..6cb6763d0d6 100644 --- a/feature_debounce_type.html +++ b/feature_debounce_type.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -28,7 +28,7 @@ | | | | +-----------------+ +--------------------

    Many debounce methods (but not all) will also make the device resistant to noise. If you are working with a technology that is susceptible to noise, you must choose a debounce method that will also mitigate noise for you.

    Types of debounce algorithms

    1. Unit of time: Timestamp (milliseconds) vs Cycles (scans)

      • Debounce algorithms often have a 'debounce time' parameter, that specifies the maximum settling time of the switch contacts. This time might be measured in various units:
        • Cycles-based debouncing waits n cycles (scans), decreasing count by one each matrix_scan
        • Timestamp-based debouncing stores the millisecond timestamp a change occurred, and does subtraction to figure out time elapsed.
      • Timestamp-based debouncing is usually superior, especially in the case of noise-resistant devices because settling times of physical switches is specified in units of time, and should not depend on the matrix scan-rate of the keyboard.
      • Cycles-based debouncing is sometimes considered inferior, because the settling time that it is able to compensate for depends on the performance of the matrix scanning code. If you use cycles-based debouncing, and you significantly improve the performance of your scanning code, you might end up with less effective debouncing. A situation in which cycles-based debouncing might be preferable is when noise is present, and the scanning algorithm is slow, or variable speed. Even if your debounce algorithm is fundamentally noise-resistant, if the scanning is slow, and you are using a timestamp-based algorithm, you might end up making a debouncing decision based on only two sampled values, which will limit the noise-resistance of the algorithm.
      • Currently all built-in debounce algorithms support timestamp-based debouncing only. In the future we might implement cycles-based debouncing, and it will be selectable via a config.h macro.
    2. Symmetric vs Asymmetric

      • Symmetric - apply the same debouncing algorithm, to both key-up and key-down events.
        • Recommended naming convention: sym_*
      • Asymmetric - apply different debouncing algorithms to key-down and key-up events. E.g. Eager key-down, Defer key-up.
        • Recommended naming convention: asym_* followed by details of the type of algorithm in use, in order, for key-down and then key-up
    3. Eager vs Defer

      • Eager - any key change is reported immediately. All further inputs for DEBOUNCE ms are ignored.
        • Eager algorithms are not noise-resistant.
        • Recommended naming conventions:
          • sym_eager_*
          • asym_eager_*_*: key-down is using eager algorithm
          • asym_*_eager_*: key-up is using eager algorithm
      • Defer - wait for no changes for DEBOUNCE ms before reporting change.
        • Defer algorithms are noise-resistant
        • Recommended naming conventions:
          • sym_defer_*
          • asym_defer_*_*: key-down is using defer algorithm
          • asym_*_defer_*: key-up is using defer algorithm
    4. Global vs Per-Key vs Per-Row

      • Global - one timer for all keys. Any key change state affects global timer
        • Recommended naming convention: *_g
      • Per-key - one timer per key
        • Recommended naming convention: *_pk
      • Per-row - one timer per row
        • Recommended naming convention: *_pr
      • Per-key and per-row algorithms consume more resources (in terms of performance, and ram usage), but fast typists might prefer them over global.

    Supported Debounce Algorithms

    QMK supports multiple algorithms through its debounce API.

    Debounce Time

    Default debounce time is 5 milliseconds and it can be changed with the following line in config.h:

    #define DEBOUNCE 10

    TIP

    Setting DEBOUNCE to 0 will disable this feature.

    Debounce Method

    Keyboards may select one of the core debounce methods by adding the following line into rules.mk:

    DEBOUNCE_TYPE = <name of algorithm>

    Name of algorithm is one of:

    AlgorithmDescription
    sym_defer_gDebouncing per keyboard. On any state change, a global timer is set. When DEBOUNCE milliseconds of no changes has occurred, all input changes are pushed. This is the highest performance algorithm with lowest memory usage and is noise-resistant.
    sym_defer_prDebouncing per row. On any state change, a per-row timer is set. When DEBOUNCE milliseconds of no changes have occurred on that row, the entire row is pushed. This can improve responsiveness over sym_defer_g while being less susceptible to noise than per-key algorithm.
    sym_defer_pkDebouncing per key. On any state change, a per-key timer is set. When DEBOUNCE milliseconds of no changes have occurred on that key, the key status change is pushed.
    sym_eager_prDebouncing per row. On any state change, response is immediate, followed by DEBOUNCE milliseconds of no further input for that row.
    sym_eager_pkDebouncing per key. On any state change, response is immediate, followed by DEBOUNCE milliseconds of no further input for that key.
    asym_eager_defer_pkDebouncing per key. On a key-down state change, response is immediate, followed by DEBOUNCE milliseconds of no further input for that key. On a key-up state change, a per-key timer is set. When DEBOUNCE milliseconds of no changes have occurred on that key, the key-up status change is pushed.

    TIP

    sym_defer_g is the default if DEBOUNCE_TYPE is undefined.

    TIP

    sym_eager_pr is suitable for use in keyboards where refreshing NUM_KEYS 8-bit counters is computationally expensive or has low scan rate while fingers usually hit one row at a time. This could be appropriate for the ErgoDox models where the matrix is rotated 90°. Hence its "rows" are really columns and each finger only hits a single "row" at a time with normal usage.

    Implementing your own debouncing code

    You have the option to implement you own debouncing algorithm with the following steps:

    - + \ No newline at end of file diff --git a/feature_eeprom.html b/feature_eeprom.html index e16d20d40a6..1499a0df940 100644 --- a/feature_eeprom.html +++ b/feature_eeprom.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -101,7 +101,7 @@ rgblight_sethsv(HSV_CYAN); // Set it to CYAN by default rgblight_mode(1); // set to solid by default }

    And you're done. The RGB layer indication will only work if you want it to. And it will be saved, even after unplugging the board. And if you use any of the RGB codes, it will disable the layer indication, so that it stays on the mode and color that you set it to.

    'EECONFIG' Function Documentation

    The val is the value of the data that you want to write to EEPROM. And the eeconfig_read_* function return a 32 bit (DWORD) value from the EEPROM.

    - + \ No newline at end of file diff --git a/feature_layers.html b/feature_layers.html index 76332f0aba5..6a4cfc821b3 100644 --- a/feature_layers.html +++ b/feature_layers.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -77,7 +77,7 @@ } // Place `KC_CYCLE_LAYERS` as a keycode in your keymap

    Use the IS_LAYER_ON_STATE(state, layer) and IS_LAYER_OFF_STATE(state, layer) macros to check the status of a particular layer.

    Outside of layer_state_set_* functions, you can use the IS_LAYER_ON(layer) and IS_LAYER_OFF(layer) macros to check global layer state.

    layer_state_set_* Function Documentation

    The state is the bitmask of the active layers, as explained in the Keymap Overview

    - + \ No newline at end of file diff --git a/feature_layouts.html b/feature_layouts.html index 637f7211bbf..6566edf2291 100644 --- a/feature_layouts.html +++ b/feature_layouts.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -48,7 +48,7 @@ planck_rev4_function(); #endif #endif

    Note that the names are lowercase and match the folder/file names for the keyboard/revision exactly.

    Keymaps

    In order to support both split and non-split keyboards with the same layout, you need to use the keyboard agnostic LAYOUT_<layout name> macro in your keymap. For instance, in order for a Let's Split and Planck to share the same layout file, you need to use LAYOUT_ortho_4x12 instead of LAYOUT_planck_grid or just {} for a C array.

    - + \ No newline at end of file diff --git a/feature_macros.html b/feature_macros.html index ab72f4e5113..41348609bf4 100644 --- a/feature_macros.html +++ b/feature_macros.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -176,7 +176,7 @@ } } } - + \ No newline at end of file diff --git a/feature_userspace.html b/feature_userspace.html index 1682b012643..23120ad48cb 100644 --- a/feature_userspace.html +++ b/feature_userspace.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -111,7 +111,7 @@ }

    For boards that may not have a shift button (such as on a macro pad), we need a way to always include the bootloader option. To do that, add the following to the rules.mk in your userspace folder:

    make
    ifeq ($(strip $(FLASH_BOOTLOADER)), yes)
         OPT_DEFS += -DFLASH_BOOTLOADER
     endif

    This will add a new KC_MAKE keycode that can be used in any of your keymaps. And this keycode will output make <keyboard>:<keymap>, making frequent compiling easier. And this will work with any keyboard and any keymap as it will output the current boards info, so that you don't have to type this out every time.

    Also, holding Shift will add the flash target (:flash) to the command. Holding Control will add some commands that will speed up compiling time by processing multiple files at once.

    And for the boards that lack a shift key, or that you want to always attempt the flashing part, you can add FLASH_BOOTLOADER = yes to the rules.mk of that keymap.

    TIP

    This should flash the newly compiled firmware automatically, using the correct utility, based on the bootloader settings (or default to just generating the HEX file). However, it should be noted that this may not work on all systems. AVRDUDE doesn't work on WSL, namely.

    - + \ No newline at end of file diff --git a/features/audio.html b/features/audio.html index 2ccaf2369be..c7282b23e96 100644 --- a/features/audio.html +++ b/features/audio.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -49,7 +49,7 @@ 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11 );

    You will want to use whichever LAYOUT macro that your keyboard uses here. This maps it to the correct key location. Start in the bottom left of the keyboard layout, and move to the right, and then upwards. Fill in all the entries until you have a complete matrix.

    You can look at the Planck Keyboard as an example of how to implement this.

    Audio Click

    This adds a click sound each time you hit a button, to simulate click sounds from the keyboard. And the sounds are slightly different for each keypress, so it doesn't sound like a single long note, if you type rapidly.

    Keycodes available:

    KeyAliasesDescription
    QK_AUDIO_CLICKY_TOGGLECK_TOGGToggles Audio clicky mode
    QK_AUDIO_CLICKY_ONCK_ONTurns on Audio clicky mode
    QK_AUDIO_CLICKY_OFFCK_OFFTurns on Audio clicky mode
    QK_AUDIO_CLICKY_UPCK_UPIncreases frequency of the clicks
    QK_AUDIO_CLICKY_DOWNCK_DOWNDecreases frequency of the clicks
    QK_AUDIO_CLICKY_RESETCK_RSTResets frequency to default

    The feature is disabled by default, to save space. To enable it, add this to your config.h:

    c
    #define AUDIO_CLICKY

    You can configure the default, min and max frequencies, the stepping and built in randomness by defining these values:

    OptionDefault ValueDescription
    AUDIO_CLICKY_FREQ_DEFAULT440.0fSets the default/starting audio frequency for the clicky sounds.
    AUDIO_CLICKY_FREQ_MIN65.0fSets the lowest frequency (under 60f are a bit buggy).
    AUDIO_CLICKY_FREQ_MAX1500.0fSets the highest frequency. Too high may result in coworkers attacking you.
    AUDIO_CLICKY_FREQ_FACTOR1.18921fSets the stepping of UP/DOWN key codes. This is a multiplicative factor. The default steps the frequency up/down by a musical minor third.
    AUDIO_CLICKY_FREQ_RANDOMNESS0.05fSets a factor of randomness for the clicks, Setting this to 0f will make each click identical, and 1.0f will make this sound much like the 90's computer screen scrolling/typing effect.
    AUDIO_CLICKY_DELAY_DURATION1An integer note duration where 1 is 1/16th of the tempo, or a sixty-fourth note (see quantum/audio/musical_notes.h for implementation details). The main clicky effect will be delayed by this duration. Adjusting this to values around 6-12 will help compensate for loud switches.

    MIDI Functionality

    See MIDI

    Audio Keycodes

    KeyAliasesDescription
    QK_AUDIO_ONAU_ONTurns on Audio Feature
    QK_AUDIO_OFFAU_OFFTurns off Audio Feature
    QK_AUDIO_TOGGLEAU_TOGGToggles Audio state
    QK_AUDIO_CLICKY_TOGGLECK_TOGGToggles Audio clicky mode
    QK_AUDIO_CLICKY_ONCK_ONTurns on Audio clicky mode
    QK_AUDIO_CLICKY_OFFCK_OFFTurns on Audio clicky mode
    QK_AUDIO_CLICKY_UPCK_UPIncreases frequency of the clicks
    QK_AUDIO_CLICKY_DOWNCK_DOWNDecreases frequency of the clicks
    QK_AUDIO_CLICKY_RESETCK_RSTResets frequency to default
    QK_MUSIC_ONMU_ONTurns on Music Mode
    QK_MUSIC_OFFMU_OFFTurns off Music Mode
    QK_MUSIC_TOGGLEMU_TOGGToggles Music Mode
    QK_MUSIC_MODE_NEXTMU_NEXTCycles through the music modes
    QK_AUDIO_VOICE_NEXTAU_NEXTCycles through the audio voices
    QK_AUDIO_VOICE_PREVIOUSAU_PREVCycles through the audio voices in reverse
    - + \ No newline at end of file diff --git a/features/auto_shift.html b/features/auto_shift.html index 47776960411..0946cee7fb9 100644 --- a/features/auto_shift.html +++ b/features/auto_shift.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -109,7 +109,7 @@ [PRESS AS_RPT] 115

    The keyboard typed 115 which represents your current AUTO_SHIFT_TIMEOUT value. You are now set! Practice on the D key a little bit that showed up in the testing and you'll be golden.

    - + \ No newline at end of file diff --git a/features/autocorrect.html b/features/autocorrect.html index 3642e90f2c2..6e7aca6f87f 100644 --- a/features/autocorrect.html +++ b/features/autocorrect.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -135,7 +135,7 @@ +-------+-------+-------+-------+-------+

    If we were to encode this chain using the same format used for branching nodes, we would encode a 16-bit node link with every node, costing 8 more bytes in this example. Across the whole trie, this adds up. Conveniently, we can point to intermediate points in the chain and interpret the bytes in the same way as before. E.g. starting at the i instead of the l, and the subchain has the same format.

    Leaf node. A leaf node corresponds to a particular typo and stores data to correct the typo. The leaf begins with a byte for the number of backspaces to type, and is followed by a null-terminated ASCII string of the replacement text. The idea is, after tapping backspace the indicated number of times, we can simply pass this string to the send_string_P function. For fitler, we need to tap backspace 3 times (not 4, because we catch the typo as the final ‘r’ is pressed) and replace it with lter. To identify the node as a leaf, the two high bits are set to 10 by ORing the backspace count with 128:

    +-------+-------+-------+-------+-------+-------+
     | 3|128 |  'l'  |  't'  |  'e'  |  'r'  |   0   |
     +-------+-------+-------+-------+-------+-------+

    Decoding

    This format is by design decodable with fairly simple logic. A 16-bit variable state represents our current position in the trie, initialized with 0 to start at the root node. Then, for each keycode, test the highest two bits in the byte at state to identify the kind of node.

    Credits

    Credit goes to getreuer for originally implementing this here. As well as to filterpaper for converting the code to use PROGMEM, and additional improvements.

    - + \ No newline at end of file diff --git a/features/backlight.html b/features/backlight.html index 2d46b5bb7af..ef34707e2a9 100644 --- a/features/backlight.html +++ b/features/backlight.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -30,7 +30,7 @@ // Optional - runs periodically // Note that this is called in the main keyboard loop, // so long running actions here can cause performance issues -}

    AVR Configuration

    PWM Driver

    The following table describes the supported pins for the PWM driver. Only cells marked with a timer number are capable of hardware PWM output; any others must use the timer driver.

    Backlight PinAT90USB64/128AT90USB162ATmega16/32U4ATmega16/32U2ATmega32AATmega328/P
    B1Timer 1
    B2Timer 1
    B5Timer 1Timer 1
    B6Timer 1Timer 1
    B7Timer 1Timer 1Timer 1Timer 1
    C4Timer 3
    C5Timer 3Timer 1Timer 1
    C6Timer 3Timer 1Timer 3Timer 1
    D4Timer 1
    D5Timer 1

    Timer Driver

    Any GPIO pin can be used with this driver. The following table describes the supported timers:

    AT90USB64/128AT90USB162ATmega16/32U4ATmega16/32U2ATmega32AATmega328/P
    Timers 1 & 3Timer 1Timers 1 & 3Timer 1Timer 1Timer 1

    The following #defines apply only to the timer driver:

    DefineDefaultDescription
    BACKLIGHT_PWM_TIMER1The timer to use

    Note that the choice of timer may conflict with the Audio feature.

    ChibiOS/ARM Configuration

    PWM Driver

    Depending on the ChibiOS board configuration, you may need to enable PWM at the keyboard level. For STM32, this would look like:

    c
    #pragma once
    +}

    AVR Configuration

    PWM Driver

    The following table describes the supported pins for the PWM driver. Only cells marked with a timer number are capable of hardware PWM output; any others must use the timer driver.

    Backlight PinAT90USB64/128AT90USB162ATmega16/32U4ATmega16/32U2ATmega32AATmega328/P
    B1Timer 1
    B2Timer 1
    B5Timer 1Timer 1
    B6Timer 1Timer 1
    B7Timer 1Timer 1Timer 1Timer 1
    C4Timer 3
    C5Timer 3Timer 1Timer 1
    C6Timer 3Timer 1Timer 3Timer 1
    D4Timer 1
    D5Timer 1

    Timer Driver

    Any GPIO pin can be used with this driver. The following table describes the supported timers:

    AT90USB64/128AT90USB162ATmega16/32U4ATmega16/32U2ATmega32AATmega328/P
    Timers 1 & 3Timer 1Timers 1 & 3Timer 1Timer 1Timer 1

    The following #defines apply only to the timer driver:

    DefineDefaultDescription
    BACKLIGHT_PWM_TIMER1The timer to use

    Note that the choice of timer may conflict with the Audio feature.

    ChibiOS/ARM Configuration

    PWM Driver

    Depending on the ChibiOS board configuration, you may need to enable PWM at the keyboard level. For STM32, this would look like:

    c
    #pragma once
     
     #define HAL_USE_PWM TRUE
     
    @@ -39,7 +39,7 @@
     #include_next <mcuconf.h>
     
     #undef STM32_PWM_USE_TIM4
    -#define STM32_PWM_USE_TIM4 TRUE

    The following #defines apply only to the pwm driver:

    DefineDefaultDescription
    BACKLIGHT_PWM_DRIVERPWMD4The PWM driver to use
    BACKLIGHT_PWM_CHANNEL3The PWM channel to use
    BACKLIGHT_PAL_MODE2The pin alternative function to use
    BACKLIGHT_PWM_PERIODNot definedThe PWM period in counter ticks - Default is platform dependent

    Refer to the ST datasheet for your particular MCU to determine these values. For example, these defaults are set up for pin B8 on a Proton-C (STM32F303) using TIM4_CH3 on AF2. Unless you are designing your own keyboard, you generally should not need to change them.

    Timer Driver

    Depending on the ChibiOS board configuration, you may need to enable general-purpose timers at the keyboard level. For STM32, this would look like:

    c
    #pragma once
    +#define STM32_PWM_USE_TIM4 TRUE

    The following #defines apply only to the pwm driver:

    DefineDefaultDescription
    BACKLIGHT_PWM_DRIVERPWMD4The PWM driver to use
    BACKLIGHT_PWM_CHANNEL3The PWM channel to use
    BACKLIGHT_PAL_MODE2The pin alternative function to use
    BACKLIGHT_PWM_PERIODNot definedThe PWM period in counter ticks - Default is platform dependent

    Refer to the ST datasheet for your particular MCU to determine these values. For example, these defaults are set up for pin B8 on a Proton-C (STM32F303) using TIM4_CH3 on AF2. Unless you are designing your own keyboard, you generally should not need to change them.

    Timer Driver

    Depending on the ChibiOS board configuration, you may need to enable general-purpose timers at the keyboard level. For STM32, this would look like:

    c
    #pragma once
     
     #define HAL_USE_GPT TRUE
     
    @@ -49,7 +49,7 @@
     
     #undef STM32_GPT_USE_TIM15
     #define STM32_GPT_USE_TIM15 TRUE

    The following #defines apply only to the timer driver:

    DefineDefaultDescription
    BACKLIGHT_GPT_DRIVERGPTD15The timer to use

    Example Schematic

    Since the MCU can only supply so much current to its GPIO pins, instead of powering the backlight directly from the MCU, the backlight pin is connected to a transistor or MOSFET that switches the power to the LEDs.

    In this typical example, the backlight LEDs are all connected in parallel towards an N-channel MOSFET. Its gate pin is wired to one of the microcontroller's GPIO pins through a 470Ω resistor to avoid ringing. A pulldown resistor is also placed between the gate pin and ground to keep it at a defined state when it is not otherwise being driven by the MCU. The values of these resistors are not critical - see this Electronics StackExchange question for more information.

    Backlight example circuit

    API

    void backlight_toggle(void)

    Toggle the backlight on or off.


    void backlight_enable(void)

    Turn the backlight on.


    void backlight_disable(void)

    Turn the backlight off.


    void backlight_step(void)

    Cycle through backlight levels.


    void backlight_increase(void)

    Increase the backlight level.


    void backlight_decrease(void)

    Decrease the backlight level.


    void backlight_level(uint8_t level)

    Set the backlight level.

    Arguments

    • uint8_t level
      The level to set, from 0 to BACKLIGHT_LEVELS.

    uint8_t get_backlight_level(void)

    Get the current backlight level.

    Return Value

    The current backlight level, from 0 to BACKLIGHT_LEVELS.


    bool is_backlight_enabled(void)

    Get the current backlight state.

    Return Value

    true if the backlight is enabled.


    void backlight_toggle_breathing(void)

    Toggle backlight breathing on or off.


    void backlight_enable_breathing(void)

    Turn backlight breathing on.


    void backlight_disable_breathing(void)

    Turn backlight breathing off.


    bool is_backlight_breathing(void)

    Get the current backlight breathing state.

    Return Value

    true if backlight breathing is enabled.

    - + \ No newline at end of file diff --git a/features/battery.html b/features/battery.html index 9618ef33cda..f63b982c6df 100644 --- a/features/battery.html +++ b/features/battery.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/bootmagic.html b/features/bootmagic.html index 92f4545199c..fa68bbefbc9 100644 --- a/features/bootmagic.html +++ b/features/bootmagic.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -44,7 +44,7 @@ bootloader_jump(); } }

    You can define additional logic here. For instance, resetting the EEPROM or requiring additional keys to be pressed to trigger Bootmagic. Keep in mind that bootmagic_scan is called before a majority of features are initialized in the firmware.

    Addenda

    To manipulate settings that were formerly configured through the now-deprecated full Bootmagic feature, see Magic Keycodes.

    The Command feature, formerly known as Magic, also allows you to control different aspects of your keyboard. While it shares some functionality with Magic Keycodes, it also allows you to do things that Magic Keycodes cannot, such as printing version information to the console. For more information, see Command.

    - + \ No newline at end of file diff --git a/features/caps_word.html b/features/caps_word.html index c31188b58dc..0b577df0f21 100644 --- a/features/caps_word.html +++ b/features/caps_word.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -43,7 +43,7 @@ // Do something when Caps Word deactivates. } } - + \ No newline at end of file diff --git a/features/combo.html b/features/combo.html index 27d5ae8f176..90191e4a7c5 100644 --- a/features/combo.html +++ b/features/combo.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -247,7 +247,7 @@ COMB(QW_UNDO, C(KC_Z), KC_Q, KC_W) SUBS(TH_THE, "the", KC_T, KC_H) // SUBS uses SEND_STRING to output the given string. ...

    For small to huge ready made dictionaries of combos, you can check out http://combos.gboards.ca/.

    - + \ No newline at end of file diff --git a/features/command.html b/features/command.html index 5525ada9695..cdd3de72ba6 100644 --- a/features/command.html +++ b/features/command.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/community_modules.html b/features/community_modules.html index 326b8dca293..86374cf7b5d 100644 --- a/features/community_modules.html +++ b/features/community_modules.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -44,7 +44,7 @@ } ] }

    At minimum, the module must provide the module_name and maintainer fields.

    The license field is encouraged to indicate the terms for using and sharing the module. It is recommended to use a SPDX license identifier like "Apache-2.0" or "GPL-2.0-or-later" if possible.

    The url field may specify a URL to more information about the module.

    The use of features matches the definition normally provided within keyboard.json and info.json, allowing a module to signal to the build system that it has its own dependencies. In the example above, it enables the deferred executor feature whenever the above module is used in a build.

    The keycodes array allows a module to provide new keycodes (as well as corresponding aliases) to a keymap.

    config.h

    This file will be automatically added to the build as if it were present in the keyboard or keymap.

    rules.mk / post_rules.mk

    These two files follows standard QMK build system logic, allowing for Makefile-style customisation as if it were present in the keyboard or keymap.

    <module>.c

    This file will be automatically added to the build if the filename matches the directory name. For example, the qmk/hello_world module contains a hello_world.c file, which is automatically added to the build.

    INFO

    Other files intended to be included must use the normal method of SRC += my_file.c inside rules.mk.

    TIP

    This file should use ASSERT_COMMUNITY_MODULES_MIN_API_VERSION(1,0,0); to enforce a minimum version of the API that it requires, ensuring the Community Module is built with a compatible version of QMK. The list of APIs and corresponding version is given at the bottom of this document. Note the use of commas instead of periods.

    introspection.c / introspection.h

    These two files hook into the keymap introspection logic -- the header is prepended before the user keymap, and the C source file is appended after the user keymap.

    The header may provide definitions which are useful to the user's keymap.c.

    The source file may provide functions which allow access to information specified in the user's keymap.c.

    WARNING

    Introspection is a relatively advanced topic within QMK, and existing patterns should be followed. If you need help please open an issue or chat with us on Discord.

    led_matrix_module.inc

    This file defines LED matrix effects in the same form as used with led_matrix_kb.inc and led_matrix_user.inc (see Custom LED Matrix Effects). Effect mode names are prepended with LED_MATRIX_COMMUNITY_MODULE_.

    rgb_matrix_module.inc

    This file defines RGB matrix effects in the same form as used with rgb_matrix_kb.inc and rgb_matrix_user.inc (see Custom RGB Matrix Effects). Effect mode names are prepended with RGB_MATRIX_COMMUNITY_MODULE_.

    Custom split keyboard data sync

    Defines follow the convention, SPLIT_TRANSACTION_IDS_MODULE_<MODULE> (see Custom data sync).

    Compatible APIs

    Community Modules may provide specializations for the following APIs:

    Base APIAPI FormatExample (hello_world module)API Version
    keyboard_pre_initkeyboard_pre_init_<module>keyboard_pre_init_hello_world0.1.0
    keyboard_post_initkeyboard_post_init_<module>keyboard_post_init_hello_world0.1.0
    pre_process_recordpre_process_record_<module>pre_process_record_hello_world0.1.0
    process_recordprocess_record_<module>process_record_hello_world0.1.0
    post_process_recordpost_process_record_<module>post_process_record_hello_world0.1.0
    housekeeping_taskhousekeeping_task_<module>housekeeping_task_hello_world1.0.0
    suspend_power_downsuspend_power_down_<module>suspend_power_down_hello_world1.0.0
    suspend_wakeup_initsuspend_wakeup_init_<module>suspend_wakeup_init_hello_world1.0.0
    shutdownshutdown_<module>shutdown_hello_world1.0.0
    process_detected_host_osprocess_detected_host_os_<module>process_detected_host_os_hello_world1.0.0
    default_layer_state_setdefault_layer_state_set_<module>default_layer_state_set_hello_world1.1.0
    layer_state_setlayer_state_set_<module>layer_state_set_hello_world1.1.0
    led_matrix_indicatorsled_matrix_indicators_<module>led_matrix_indicators_hello_world1.1.0
    led_matrix_indicators_advancedled_matrix_indicators_advanced_<module>led_matrix_indicators_advanced_hello_world1.1.0
    rgb_matrix_indicatorsrgb_matrix_indicators_<module>rgb_matrix_indicators_hello_world1.1.0
    rgb_matrix_indicators_advancedrgb_matrix_indicators_advanced_<module>rgb_matrix_indicators_advanced_hello_world1.1.0
    pointing_device_initpointing_device_init_<module>pointing_device_init_hello_world1.1.0
    pointing_device_taskpointing_device_task_<module>pointing_device_task_hello_world1.1.0

    INFO

    An unspecified API is disregarded if a Community Module does not provide a specialization for it.

    Each API has an equivalent _<module>_kb() and _<module>_user() hook, as per the normal QMK _quantum, _kb, and _user functions.

    - + \ No newline at end of file diff --git a/features/digitizer.html b/features/digitizer.html index c98df8433c5..4e1082a6ed0 100644 --- a/features/digitizer.html +++ b/features/digitizer.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -21,7 +21,7 @@ digitizer_set_position(0.5, 0.5);

    The "in range" indicator is required to be on for the change in coordinates to be taken. It can then be turned off again to signal the end of the digitizer interaction, but it is not strictly required.

    You can also modify the digitizer state directly, if you need to change multiple fields in a single report:

    c
    digitizer_state.in_range = true;
     digitizer_state.dirty = true;
     digitizer_flush();

    digitizer_state is a struct of type digitizer_t.

    API

    struct digitizer_t

    Contains the state of the digitizer.

    Members


    void digitizer_flush(void)

    Send the digitizer report to the host if it is marked as dirty.


    void digitizer_in_range_on(void)

    Assert the "in range" indicator, and flush the report.


    void digitizer_in_range_off(void)

    Deassert the "in range" indicator, and flush the report.


    void digitizer_tip_switch_on(void)

    Assert the tip switch, and flush the report.


    void digitizer_tip_switch_off(void)

    Deassert the tip switch, and flush the report.


    void digitizer_barrel_switch_on(void)

    Assert the barrel switch, and flush the report.


    void digitizer_barrel_switch_off(void)

    Deassert the barrel switch, and flush the report.


    void digitizer_set_position(float x, float y)

    Set the absolute X and Y position of the digitizer contact, and flush the report.

    Arguments

    - + \ No newline at end of file diff --git a/features/dip_switch.html b/features/dip_switch.html index fd031e7965c..63e8c9c4592 100644 --- a/features/dip_switch.html +++ b/features/dip_switch.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -77,7 +77,7 @@ } return true; }

    Hardware

    Connects each switch in the dip switch to the GPIO pin of the MCU

    One side of the DIP switch should be wired directly to the pin on the MCU, and the other side to ground. It should not matter which side is connected to which, as it should be functionally the same.

    Connect each switch in the DIP switch to an unused intersections in the key matrix.

    As with the keyswitch, a diode and DIP switch connect the ROW line to the COL line.

    - + \ No newline at end of file diff --git a/features/dynamic_macros.html b/features/dynamic_macros.html index 6cd3d0e6245..aeeb009487d 100644 --- a/features/dynamic_macros.html +++ b/features/dynamic_macros.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -22,7 +22,7 @@ if (!process_record_dynamic_macro(macro_kc, record)) { return false; }

    User Hooks

    There are a number of hooks that you can use to add custom functionality and feedback options to Dynamic Macro feature. This allows for some additional degree of customization.

    Note, that direction indicates which macro it is, with 1 being Macro 1, -1 being Macro 2, and 0 being no macro.

    Additionally, you can call dynamic_macro_led_blink() to flash the backlights if that feature is enabled.

    - + \ No newline at end of file diff --git a/features/encoders.html b/features/encoders.html index a5e0a95b257..688599f613a 100644 --- a/features/encoders.html +++ b/features/encoders.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -69,7 +69,7 @@ }

    WARNING

    If you return true in the keymap level _user function, it will allow the keyboard/core level encoder code to run on top of your own. Returning false will override the keyboard level function, if setup correctly. This is generally the safest option to avoid confusion.

    Hardware

    The A an B lines of the encoders should be wired directly to the MCU, and the C/common lines should be wired to ground.

    Multiple Encoders

    Multiple encoders may share pins so long as each encoder has a distinct pair of pins when the following conditions are met:

    For example you can support two encoders using only 3 pins like this

    #define ENCODER_A_PINS { B1, B1 }
     #define ENCODER_B_PINS { B2, B3 }

    You could even support three encoders using only three pins (one per encoder) however in this configuration, rotating two encoders which share pins simultaneously will often generate incorrect output. For example:

    #define ENCODER_A_PINS { B1, B1, B2 }
     #define ENCODER_B_PINS { B2, B3, B3 }

    Here rotating Encoder 0 B1 B2 and Encoder 1 B1 B3 could be interpreted as rotating Encoder 2 B2 B3 or B3 B2 depending on the timing. This may still be a useful configuration depending on your use case

    - + \ No newline at end of file diff --git a/features/grave_esc.html b/features/grave_esc.html index be1fbbb0342..d2a76dd2fdb 100644 --- a/features/grave_esc.html +++ b/features/grave_esc.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/haptic_feedback.html b/features/haptic_feedback.html index 672d143c626..c5e81cd6c5c 100644 --- a/features/haptic_feedback.html +++ b/features/haptic_feedback.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -37,7 +37,7 @@ #define DRV2605L_V_RMS 2.0 #define DRV2605L_V_PEAK 2.1 #define DRV2605L_F_LRA 205 /* resonance freq */

    DRV2605L waveform library

    DRV2605L comes with preloaded library of various waveform sequences that can be called and played. If writing a macro, these waveforms can be played using drv2605l_pulse(*sequence name or number*) after adding #include "drv2605l.h".

    List of waveform sequences from the datasheet:

    seq#Sequence nameseq#Sequence nameseq#Sequence name
    1strong_click43lg_dblclick_med_6085transition_rampup_med_smooth2
    2strong_click_6044lg_dblsharp_tick86transition_rampup_short_smooth1
    3strong_click_3045lg_dblsharp_tick_8087transition_rampup_short_smooth2
    4sharp_click46lg_dblsharp_tick_6088transition_rampup_long_sharp1
    5sharp_click_6047buzz89transition_rampup_long_sharp2
    6sharp_click_3048buzz_8090transition_rampup_med_sharp1
    7soft_bump49buzz_6091transition_rampup_med_sharp2
    8soft_bump_6050buzz_4092transition_rampup_short_sharp1
    9soft_bump_3051buzz_2093transition_rampup_short_sharp2
    10dbl_click52pulsing_strong94transition_rampdown_long_smooth1_50
    11dbl_click_6053pulsing_strong_8095transition_rampdown_long_smooth2_50
    12trp_click54pulsing_medium96transition_rampdown_med_smooth1_50
    13soft_fuzz55pulsing_medium_8097transition_rampdown_med_smooth2_50
    14strong_buzz56pulsing_sharp98transition_rampdown_short_smooth1_50
    15alert_750ms57pulsing_sharp_8099transition_rampdown_short_smooth2_50
    16alert_1000ms58transition_click100transition_rampdown_long_sharp1_50
    17strong_click159transition_click_80101transition_rampdown_long_sharp2_50
    18strong_click2_8060transition_click_60102transition_rampdown_med_sharp1_50
    19strong_click3_6061transition_click_40103transition_rampdown_med_sharp2_50
    20strong_click4_3062transition_click_20104transition_rampdown_short_sharp1_50
    21medium_click163transition_click_10105transition_rampdown_short_sharp2_50
    22medium_click2_8064transition_hum106transition_rampup_long_smooth1_50
    23medium_click3_6065transition_hum_80107transition_rampup_long_smooth2_50
    24sharp_tick166transition_hum_60108transition_rampup_med_smooth1_50
    25sharp_tick2_8067transition_hum_40109transition_rampup_med_smooth2_50
    26sharp_tick3_6068transition_hum_20110transition_rampup_short_smooth1_50
    27sh_dblclick_str69transition_hum_10111transition_rampup_short_smooth2_50
    28sh_dblclick_str_8070transition_rampdown_long_smooth1112transition_rampup_long_sharp1_50
    29sh_dblclick_str_6071transition_rampdown_long_smooth2113transition_rampup_long_sharp2_50
    30sh_dblclick_str_3072transition_rampdown_med_smooth1114transition_rampup_med_sharp1_50
    31sh_dblclick_med73transition_rampdown_med_smooth2115transition_rampup_med_sharp2_50
    32sh_dblclick_med_8074transition_rampdown_short_smooth1116transition_rampup_short_sharp1_50
    33sh_dblclick_med_6075transition_rampdown_short_smooth2117transition_rampup_short_sharp2_50
    34sh_dblsharp_tick76transition_rampdown_long_sharp1118long_buzz_for_programmatic_stopping
    35sh_dblsharp_tick_8077transition_rampdown_long_sharp2119smooth_hum1_50
    36sh_dblsharp_tick_6078transition_rampdown_med_sharp1120smooth_hum2_40
    37lg_dblclick_str79transition_rampdown_med_sharp2121smooth_hum3_30
    38lg_dblclick_str_8080transition_rampdown_short_sharp1122smooth_hum4_20
    39lg_dblclick_str_6081transition_rampdown_short_sharp2123smooth_hum5_10
    40lg_dblclick_str_3082transition_rampup_long_smooth1
    41lg_dblclick_med83transition_rampup_long_smooth2
    42lg_dblclick_med_8084transition_rampup_med_smooth1

    Optional DRV2605L defines

    c
    #define DRV2605L_GREETING *sequence name or number*

    If haptic feedback is enabled, the keyboard will vibrate to a specific sequence during startup. That can be selected using the following define:

    c
    #define DRV2605L_DEFAULT_MODE *sequence name or number*

    This will set what sequence HF_RST will set as the active mode. If not defined, mode will be set to 1 when HF_RST is pressed.

    DRV2605L Continuous Haptic Mode

    This mode sets continuous haptic feedback with the option to increase or decrease strength.

    Haptic Key Exclusion

    The Haptic Exclusion is implemented as __attribute__((weak)) bool get_haptic_enabled_key(uint16_t keycode, keyrecord_t *record) in haptic.c. This allows a re-definition at the required level with the specific requirement / exclusion.

    NO_HAPTIC_MOD

    With the entry of #define NO_HAPTIC_MOD in config.h, the following keys will not trigger feedback:

    NO_HAPTIC_ALPHA

    With the entry of #define NO_HAPTIC_ALPHA in config.h, none of the alpha keys (A ... Z) will trigger a feedback.

    NO_HAPTIC_PUNCTUATION

    With the entry of #define NO_HAPTIC_PUNCTUATION in config.h, none of the following keys will trigger a feedback: Enter, ESC, Backspace, Space, Minus, Equal, Left Bracket, Right Bracket, Backslash, Non-US Hash, Semicolon, Quote, Grave, Comma, Slash, Dot, Non-US Backslash.

    NO_HAPTIC_LOCKKEYS

    With the entry of #define NO_HAPTIC_LOCKKEYS in config.h, none of the following keys will trigger a feedback: Caps Lock, Scroll Lock, Num Lock.

    NO_HAPTIC_NAV

    With the entry of #define NO_HAPTIC_NAV in config.h, none of the following keys will trigger a feedback: Print Screen, Pause, Insert, Delete, Page Down, Page Up, Left Arrow, Up Arrow, Right Arrow, Down Arrow, End, Home.

    NO_HAPTIC_NUMERIC

    With the entry of #define NO_HAPTIC_NUMERIC in config.h, none of the following keys between 0 and 9 (KC_1 ... KC_0) will trigger a feedback.

    - + \ No newline at end of file diff --git a/features/hd44780.html b/features/hd44780.html index 4e7a9cbe6a2..12c99a56e76 100644 --- a/features/hd44780.html +++ b/features/hd44780.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -38,7 +38,7 @@ // 0x08 to avoid null terminator hd44780_puts_P(PSTR("\x08 QMK Firmware")); }

    API

    void hd44780_init(bool cursor, bool blink)

    Initialize the display.

    This function should be called only once, before any of the other functions can be called.

    Arguments


    void hd44780_clear(void)

    Clear the display.

    This function is called on init.


    void hd44780_home(void)

    Move the cursor to the home position.

    This function is called on init.


    void hd44780_on(bool cursor, bool blink)

    Turn the display on, and/or set the cursor properties.

    This function is called on init.

    Arguments


    void hd44780_off(void)

    Turn the display off.


    void hd44780_set_cursor(uint8_t col, uint8_t line)

    Move the cursor to the specified position on the display.

    Arguments


    void hd44780_putc(char c)

    Print a character to the display. The newline character \n will move the cursor to the start of the next line.

    The exact character shown may depend on the ROM code of your particular display - refer to the datasheet for the full character set.

    Arguments


    void hd44780_puts(const char *s)

    Print a string of characters to the display.

    Arguments


    void hd44780_puts_P(const char *s)

    Print a string of characters from PROGMEM to the display.

    On ARM devices, this function is simply an alias of hd44780_puts().

    Arguments


    void hd44780_define_char(uint8_t index, uint8_t *data)

    Define a custom character.

    Arguments


    void hd44780_define_char_P(uint8_t index, const uint8_t *data)

    Define a custom character from PROGMEM.

    On ARM devices, this function is simply an alias of hd44780_define_char().

    Arguments


    bool hd44780_busy(void)

    Indicates whether the display is currently processing, and cannot accept instructions.

    Return Value

    true if the display is busy.


    void hd44780_write(uint8_t data, bool isData)

    Write a byte to the display.

    Arguments


    uint8_t hd44780_read(bool isData)

    Read a byte from the display.

    Arguments

    Return Value

    If isData is true, the returned byte will be the character at the current DDRAM address. Otherwise, it will be the current DDRAM address and the busy flag.


    void hd44780_command(uint8_t command)

    Send a command to the display. Refer to the datasheet and hd44780.h for the valid commands and defines.

    This function waits for the display to clear the busy flag before sending the command.

    Arguments


    void hd44780_data(uint8_t data)

    Send a byte of data to the display.

    This function waits for the display to clear the busy flag before sending the data.

    Arguments


    void hd44780_set_cgram_address(uint8_t address)

    Set the CGRAM address.

    This function is used when defining custom characters.

    Arguments


    void hd44780_set_ddram_address(uint8_t address)

    Set the DDRAM address.

    This function is used when printing characters to the display, and setting the cursor.

    Arguments

    - + \ No newline at end of file diff --git a/features/joystick.html b/features/joystick.html index c8a250c8712..1911070182d 100644 --- a/features/joystick.html +++ b/features/joystick.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -67,7 +67,7 @@ } return true; }

    Keycodes

    KeyAliasesDescription
    QK_JOYSTICK_BUTTON_0JS_0Button 0
    QK_JOYSTICK_BUTTON_1JS_1Button 1
    QK_JOYSTICK_BUTTON_2JS_2Button 2
    QK_JOYSTICK_BUTTON_3JS_3Button 3
    QK_JOYSTICK_BUTTON_4JS_4Button 4
    QK_JOYSTICK_BUTTON_5JS_5Button 5
    QK_JOYSTICK_BUTTON_6JS_6Button 6
    QK_JOYSTICK_BUTTON_7JS_7Button 7
    QK_JOYSTICK_BUTTON_8JS_8Button 8
    QK_JOYSTICK_BUTTON_9JS_9Button 9
    QK_JOYSTICK_BUTTON_10JS_10Button 10
    QK_JOYSTICK_BUTTON_11JS_11Button 11
    QK_JOYSTICK_BUTTON_12JS_12Button 12
    QK_JOYSTICK_BUTTON_13JS_13Button 13
    QK_JOYSTICK_BUTTON_14JS_14Button 14
    QK_JOYSTICK_BUTTON_15JS_15Button 15
    QK_JOYSTICK_BUTTON_16JS_16Button 16
    QK_JOYSTICK_BUTTON_17JS_17Button 17
    QK_JOYSTICK_BUTTON_18JS_18Button 18
    QK_JOYSTICK_BUTTON_19JS_19Button 19
    QK_JOYSTICK_BUTTON_20JS_20Button 20
    QK_JOYSTICK_BUTTON_21JS_21Button 21
    QK_JOYSTICK_BUTTON_22JS_22Button 22
    QK_JOYSTICK_BUTTON_23JS_23Button 23
    QK_JOYSTICK_BUTTON_24JS_24Button 24
    QK_JOYSTICK_BUTTON_25JS_25Button 25
    QK_JOYSTICK_BUTTON_26JS_26Button 26
    QK_JOYSTICK_BUTTON_27JS_27Button 27
    QK_JOYSTICK_BUTTON_28JS_28Button 28
    QK_JOYSTICK_BUTTON_29JS_29Button 29
    QK_JOYSTICK_BUTTON_30JS_30Button 30
    QK_JOYSTICK_BUTTON_31JS_31Button 31

    API

    struct joystick_t

    Contains the state of the joystick.

    Members


    struct joystick_config_t

    Describes a single axis.

    Members


    void joystick_flush(void)

    Send the joystick report to the host, if it has been marked as dirty.


    void register_joystick_button(uint8_t button)

    Set the state of a button, and flush the report.

    Arguments


    void unregister_joystick_button(uint8_t button)

    Reset the state of a button, and flush the report.

    Arguments


    int16_t joystick_read_axis(uint8_t axis)

    Sample and process the analog value of the given axis.

    Arguments

    Return Value

    A signed 16-bit integer, where 0 is the resting or mid point.

    void joystick_set_axis(uint8_t axis, int16_t value)

    Set the value of the given axis.

    Arguments


    void joystick_set_hat(int8_t value)

    Set the position of the hat switch.

    Arguments

    - + \ No newline at end of file diff --git a/features/key_lock.html b/features/key_lock.html index 00cd471544d..581a398f948 100644 --- a/features/key_lock.html +++ b/features/key_lock.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/key_overrides.html b/features/key_overrides.html index 42c513abad3..2392b07d5dc 100644 --- a/features/key_overrides.html +++ b/features/key_overrides.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -89,7 +89,7 @@ // Neutralize left alt, left GUI, right GUI and left Control+Shift #define MODS_TO_NEUTRALIZE { MOD_BIT(KC_LEFT_ALT), MOD_BIT(KC_LEFT_GUI), MOD_BIT(KC_RIGHT_GUI), MOD_BIT(KC_LEFT_CTRL)|MOD_BIT(KC_LEFT_SHIFT) }

    WARNING

    Do not use MOD_xxx constants like MOD_LSFT or MOD_RALT, since they're 5-bit packed bit-arrays while MODS_TO_NEUTRALIZE expects a list of 8-bit packed bit-arrays. Use MOD_BIT(<kc>) or MOD_MASK_xxx instead.

    - + \ No newline at end of file diff --git a/features/layer_lock.html b/features/layer_lock.html index cadf2ca4db7..7b6fad8a474 100644 --- a/features/layer_lock.html +++ b/features/layer_lock.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -40,7 +40,7 @@ } return true; }

    In the above, KC_0 is an arbitrary placeholder for the tapping keycode. This keycode will never be sent, so any basic keycode will do. In process_record_user(), the tap press event is changed to toggle the lock on the highest layer. Layer Lock can be combined with a layer-tap LT key similarly.

    - + \ No newline at end of file diff --git a/features/leader_key.html b/features/leader_key.html index 838128b6fe0..4b2c24f93f5 100644 --- a/features/leader_key.html +++ b/features/leader_key.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -68,7 +68,7 @@ } #endif }

    Keycodes

    KeyAliasesDescription
    QK_LEADERQK_LEADBegin the leader sequence

    API

    void leader_start_user(void)

    User callback, invoked when the leader sequence begins.


    void leader_end_user(void)

    User callback, invoked when the leader sequence ends.


    bool leader_add_user(uint16_t keycode)

    User callback, invoked when a keycode is added to the leader sequence.

    Arguments

    Return Value

    true to finish the key sequence, false to continue.


    void leader_start(void)

    Begin the leader sequence, resetting the buffer and timer.


    void leader_end(void)

    End the leader sequence.


    bool leader_sequence_active(void)

    Whether the leader sequence is active.


    bool leader_sequence_add(uint16_t keycode)

    Add the given keycode to the sequence buffer.

    If LEADER_NO_TIMEOUT is defined, the timer is reset if the buffer is empty.

    Arguments

    Return Value

    true if the keycode was added, false if the buffer is full.


    bool leader_sequence_timed_out(void)

    Whether the leader sequence has reached the timeout.

    If LEADER_NO_TIMEOUT is defined, the buffer must also contain at least one key.


    bool leader_reset_timer(void)

    Reset the leader sequence timer.


    bool leader_sequence_one_key(uint16_t kc)

    Check the sequence buffer for the given keycode.

    Arguments

    Return Value

    true if the sequence buffer matches.


    bool leader_sequence_two_keys(uint16_t kc1, uint16_t kc2)

    Check the sequence buffer for the given keycodes.

    Arguments

    Return Value

    true if the sequence buffer matches.


    bool leader_sequence_three_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3)

    Check the sequence buffer for the given keycodes.

    Arguments

    Return Value

    true if the sequence buffer matches.


    bool leader_sequence_four_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4)

    Check the sequence buffer for the given keycodes.

    Arguments

    Return Value

    true if the sequence buffer matches.


    bool leader_sequence_five_keys(uint16_t kc1, uint16_t kc2, uint16_t kc3, uint16_t kc4, uint16_t kc5)

    Check the sequence buffer for the given keycodes.

    Arguments

    Return Value

    true if the sequence buffer matches.

    - + \ No newline at end of file diff --git a/features/led_indicators.html b/features/led_indicators.html index 9501773a319..67ac7642e47 100644 --- a/features/led_indicators.html +++ b/features/led_indicators.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -47,7 +47,7 @@ #endif return true; }

    Host keyboard LED state

    The host_keyboard_led_state() function will report the LED state returned from the host computer as led_t. This is useful for reading the LED state outside led_update_*. For example, you can get the boolean state of Caps Lock from the host with:

    c
    bool caps = host_keyboard_led_state().caps_lock;

    led_update_ports()

    This function writes the LED state to the actual hardware. Call it manually from your led_update_*() callbacks to modify the handling of the standard keyboard LEDs. For example when repurposing a standard LED indicator as layer indicator.

    Setting Physical LED State

    Some keyboard implementations provide convenient methods for setting the state of the physical LEDs.

    Ergodox Boards

    The Ergodox implementations provide ergodox_right_led_1/2/3_on/off() to turn individual LEDs on or off, as well as ergodox_right_led_on/off(uint8_t led) to turn them on or off by their index.

    In addition, it is possible to specify the brightness level of all LEDs with ergodox_led_all_set(uint8_t n); of individual LEDs with ergodox_right_led_1/2/3_set(uint8_t n); or by index with ergodox_right_led_set(uint8_t led, uint8_t n).

    Ergodox boards also define LED_BRIGHTNESS_LO for the lowest brightness and LED_BRIGHTNESS_HI for the highest brightness (which is the default).

    - + \ No newline at end of file diff --git a/features/led_matrix.html b/features/led_matrix.html index e6d62e307be..027a193567b 100644 --- a/features/led_matrix.html +++ b/features/led_matrix.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -120,7 +120,7 @@ LED_MATRIX_INDICATOR_SET_VALUE(index, value); return false; }

    API

    void led_matrix_toggle(void)

    Toggle LED Matrix on or off.


    void led_matrix_toggle_noeeprom(void)

    Toggle LED Matrix on or off. New state is not written to EEPROM.


    void led_matrix_enable(void)

    Turn LED Matrix on.


    void led_matrix_enable_noeeprom(void)

    Turn LED Matrix on. New state is not written to EEPROM.


    void led_matrix_disable(void)

    Turn LED Matrix off.


    void led_matrix_disable_noeeprom(void)

    Turn LED Matrix off. New state is not written to EEPROM.


    bool led_matrix_is_enabled(void)

    Get the current enabled state of LED Matrix.

    Return Value

    true if LED Matrix is enabled.


    void led_matrix_set_value(uint8_t index, uint8_t v)

    Set the brightness of a single LED.

    This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame.

    Arguments


    void led_matrix_set_value_all(uint8_t v)

    Set the brightness of all LEDs.

    This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame.

    Arguments


    void led_matrix_mode(uint8_t mode)

    Set the currently running effect.

    Arguments


    void led_matrix_mode_noeeprom(uint8_t mode)

    Set the currently running effect. New state is not written to EEPROM.

    Arguments


    void led_matrix_step(void)

    Move to the next enabled effect.


    void led_matrix_step_noeeprom(void)

    Move to the next enabled effect. New state is not written to EEPROM.


    void led_matrix_step_reverse(void)

    Move to the previous enabled effect.


    void led_matrix_step_reverse_noeeprom(void)

    Move to the previous enabled effect. New state is not written to EEPROM.


    uint8_t led_matrix_get_mode(void)

    Get the currently running effect.

    Return Value

    The index of the currently running effect.


    void val_matrix_increase_val(void)

    Increase the global effect brightness.


    void led_matrix_increase_val_noeeprom(void)

    Increase the global effect brightness. New state is not written to EEPROM.


    void led_matrix_decrease_val(void)

    Decrease the global effect brightness.


    void led_matrix_decrease_val_noeeprom(void)

    Decrease the global effect brightness. New state is not written to EEPROM.


    uint8_t led_matrix_get_val(void)

    Get the current global effect brightness.

    Return Value

    The current brightness value, from 0 to 255.


    void led_matrix_increase_speed(void)

    Increase the effect speed.


    void led_matrix_increase_speed_noeeprom(void)

    Increase the effect speed. New state is not written to EEPROM.


    void led_matrix_decrease_speed(void)

    Decrease the effect speed.


    void led_matrix_decrease_speed_noeeprom(void)

    Decrease the effect speed. New state is not written to EEPROM.


    void led_matrix_set_speed(uint8_t speed)

    Set the effect speed.

    Arguments


    void led_matrix_set_speed_noeeprom(uint8_t speed)

    Set the effect speed. New state is not written to EEPROM.

    Arguments


    uint8_t led_matrix_get_speed(void)

    Get the current effect speed.

    Return Value

    The current effect speed, from 0 to 255.


    void led_matrix_set_flags(led_flags_t flags)

    Set the global effect flags.

    Arguments


    void led_matrix_set_flags_noeeprom(led_flags_t flags)

    Set the global effect flags. New state is not written to EEPROM.

    Arguments


    void led_matrix_flags_step(void)

    Move to the next flag combination.


    void led_matrix_flags_step_noeeprom(void)

    Move to the next flag combination. New state is not written to EEPROM.


    void led_matrix_flags_step_reverse(void)

    Move to the previous flag combination.


    void led_matrix_flags_step_reverse_noeeprom(void)

    Move to the previous flag combination. New state is not written to EEPROM.


    uint8_t led_matrix_get_flags(void)

    Get the current global effect flags.

    Return Value

    The current effect flags.


    void led_matrix_reload_from_eeprom(void)

    Reload the effect configuration (enabled, mode and brightness) from EEPROM.


    bool led_matrix_get_suspend_state(void)

    Get the current suspend state of LED Matrix.

    Return Value

    true if LED Matrix is currently in the suspended state.


    bool led_matrix_indicators_kb(void)

    Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

    Return Value

    Currently unused.


    bool led_matrix_indicators_user(void)

    Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

    Return Value

    true to continue running the keyboard-level callback.


    bool led_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)

    Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

    Arguments

    Return Value

    Currently unused.


    bool led_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)

    Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

    Arguments

    Return Value

    true to continue running the keyboard-level callback.

    - + \ No newline at end of file diff --git a/features/midi.html b/features/midi.html index c6a218c847d..e0f491e8426 100644 --- a/features/midi.html +++ b/features/midi.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -52,7 +52,7 @@ // ... ) };

    Keycodes

    KeycodeAliasesDescription
    QK_MIDI_ONMI_ONTurn MIDI on
    QK_MIDI_OFFMI_OFFTurn MIDI off
    QK_MIDI_TOGGLEMI_TOGGToggle MIDI enabled
    QK_MIDI_NOTE_C_0MI_CC octave 0
    QK_MIDI_NOTE_C_SHARP_0MI_Cs, MI_DbC♯/D♭ octave 0
    QK_MIDI_NOTE_D_0MI_DD octave 0
    QK_MIDI_NOTE_D_SHARP_0MI_Ds, MI_EbD♯/E♭ octave 0
    QK_MIDI_NOTE_E_0MI_EE octave 0
    QK_MIDI_NOTE_F_0MI_FF octave 0
    QK_MIDI_NOTE_F_SHARP_0MI_Fs, MI_GbF♯/G♭ octave 0
    QK_MIDI_NOTE_G_0MI_GG octave 0
    QK_MIDI_NOTE_G_SHARP_0MI_Gs, MI_AbG♯/A♭ octave 0
    QK_MIDI_NOTE_A_0MI_AA octave 0
    QK_MIDI_NOTE_A_SHARP_0MI_As, MI_BbA♯/B♭ octave 0
    QK_MIDI_NOTE_B_0MI_BB octave 0
    QK_MIDI_NOTE_C_1MI_C1C octave 1
    QK_MIDI_NOTE_C_SHARP_1MI_Cs1, MI_Db1C♯/D♭ octave 1
    QK_MIDI_NOTE_D_1MI_D1D octave 1
    QK_MIDI_NOTE_D_SHARP_1MI_Ds1, MI_Eb1D♯/E♭ octave 1
    QK_MIDI_NOTE_E_1MI_E1E octave 1
    QK_MIDI_NOTE_F_1MI_F1F octave 1
    QK_MIDI_NOTE_F_SHARP_1MI_Fs1, MI_Gb1F♯/G♭ octave 1
    QK_MIDI_NOTE_G_1MI_G1G octave 1
    QK_MIDI_NOTE_G_SHARP_1MI_Gs1, MI_Ab1G♯/A♭ octave 1
    QK_MIDI_NOTE_A_1MI_A1A octave 1
    QK_MIDI_NOTE_A_SHARP_1MI_As1, MI_Bb1A♯/B♭ octave 1
    QK_MIDI_NOTE_B_1MI_B1B octave 1
    QK_MIDI_NOTE_C_2MI_C2C octave 2
    QK_MIDI_NOTE_C_SHARP_2MI_Cs2, MI_Db2C♯/D♭ octave 2
    QK_MIDI_NOTE_D_2MI_D2D octave 2
    QK_MIDI_NOTE_D_SHARP_2MI_Ds2, MI_Eb2D♯/E♭ octave 2
    QK_MIDI_NOTE_E_2MI_E2E octave 2
    QK_MIDI_NOTE_F_2MI_F2F octave 2
    QK_MIDI_NOTE_F_SHARP_2MI_Fs2, MI_Gb2F♯/G♭ octave 2
    QK_MIDI_NOTE_G_2MI_G2G octave 2
    QK_MIDI_NOTE_G_SHARP_2MI_Gs2, MI_Ab2G♯/A♭ octave 2
    QK_MIDI_NOTE_A_2MI_A2A octave 2
    QK_MIDI_NOTE_A_SHARP_2MI_As2, MI_Bb2A♯/B♭ octave 2
    QK_MIDI_NOTE_B_2MI_B2B octave 2
    QK_MIDI_NOTE_C_3MI_C3C octave 3
    QK_MIDI_NOTE_C_SHARP_3MI_Cs3, MI_Db3C♯/D♭ octave 3
    QK_MIDI_NOTE_D_3MI_D3D octave 3
    QK_MIDI_NOTE_D_SHARP_3MI_Ds3, MI_Eb3D♯/E♭ octave 3
    QK_MIDI_NOTE_E_3MI_E3E octave 3
    QK_MIDI_NOTE_F_3MI_F3F octave 3
    QK_MIDI_NOTE_F_SHARP_3MI_Fs3, MI_Gb3F♯/G♭ octave 3
    QK_MIDI_NOTE_G_3MI_G3G octave 3
    QK_MIDI_NOTE_G_SHARP_3MI_Gs3, MI_Ab3G♯/A♭ octave 3
    QK_MIDI_NOTE_A_3MI_A3A octave 3
    QK_MIDI_NOTE_A_SHARP_3MI_As3, MI_Bb3A♯/B♭ octave 3
    QK_MIDI_NOTE_B_3MI_B3B octave 3
    QK_MIDI_NOTE_C_4MI_C4C octave 4
    QK_MIDI_NOTE_C_SHARP_4MI_Cs4, MI_Db4C♯/D♭ octave 4
    QK_MIDI_NOTE_D_4MI_D4D octave 4
    QK_MIDI_NOTE_D_SHARP_4MI_Ds4, MI_Eb4D♯/E♭ octave 4
    QK_MIDI_NOTE_E_4MI_E4E octave 4
    QK_MIDI_NOTE_F_4MI_F4F octave 4
    QK_MIDI_NOTE_F_SHARP_4MI_Fs4, MI_Gb4F♯/G♭ octave 4
    QK_MIDI_NOTE_G_4MI_G4G octave 4
    QK_MIDI_NOTE_G_SHARP_4MI_Gs4, MI_Ab4G♯/A♭ octave 4
    QK_MIDI_NOTE_A_4MI_A4A octave 4
    QK_MIDI_NOTE_A_SHARP_4MI_As4, MI_Bb4A♯/B♭ octave 4
    QK_MIDI_NOTE_B_4MI_B4B octave 4
    QK_MIDI_NOTE_C_5MI_C5C octave 5
    QK_MIDI_NOTE_C_SHARP_5MI_Cs5, MI_Db5C♯/D♭ octave 5
    QK_MIDI_NOTE_D_5MI_D5D octave 5
    QK_MIDI_NOTE_D_SHARP_5MI_Ds5, MI_Eb5D♯/E♭ octave 5
    QK_MIDI_NOTE_E_5MI_E5E octave 5
    QK_MIDI_NOTE_F_5MI_F5F octave 5
    QK_MIDI_NOTE_F_SHARP_5MI_Fs5, MI_Gb5F♯/G♭ octave 5
    QK_MIDI_NOTE_G_5MI_G5G octave 5
    QK_MIDI_NOTE_G_SHARP_5MI_Gs5, MI_Ab5G♯/A♭ octave 5
    QK_MIDI_NOTE_A_5MI_A5A octave 5
    QK_MIDI_NOTE_A_SHARP_5MI_As5, MI_Bb5A♯/B♭ octave 5
    QK_MIDI_NOTE_B_5MI_B5B octave 5
    QK_MIDI_OCTAVE_N2MI_OCN2Set octave to -2
    QK_MIDI_OCTAVE_N1MI_OCN1Set octave to -1
    QK_MIDI_OCTAVE_0MI_OC0Set octave to 0
    QK_MIDI_OCTAVE_1MI_OC1Set octave to 1
    QK_MIDI_OCTAVE_2MI_OC2Set octave to 2
    QK_MIDI_OCTAVE_3MI_OC3Set octave to 3
    QK_MIDI_OCTAVE_4MI_OC4Set octave to 4
    QK_MIDI_OCTAVE_5MI_OC5Set octave to 5
    QK_MIDI_OCTAVE_6MI_OC6Set octave to 6
    QK_MIDI_OCTAVE_7MI_OC7Set octave to 7
    QK_MIDI_OCTAVE_DOWNMI_OCTDMove down an octave
    QK_MIDI_OCTAVE_UPMI_OCTUMove up an octave
    QK_MIDI_TRANSPOSE_N6MI_TRN6Set transposition to -6 semitones
    QK_MIDI_TRANSPOSE_N5MI_TRN5Set transposition to -5 semitones
    QK_MIDI_TRANSPOSE_N4MI_TRN4Set transposition to -4 semitones
    QK_MIDI_TRANSPOSE_N3MI_TRN3Set transposition to -3 semitones
    QK_MIDI_TRANSPOSE_N2MI_TRN2Set transposition to -2 semitones
    QK_MIDI_TRANSPOSE_N1MI_TRN1Set transposition to -1 semitone
    QK_MIDI_TRANSPOSE_0MI_TR0No transposition
    QK_MIDI_TRANSPOSE_1MI_TR1Set transposition to +1 semitone
    QK_MIDI_TRANSPOSE_2MI_TR2Set transposition to +2 semitones
    QK_MIDI_TRANSPOSE_3MI_TR3Set transposition to +3 semitones
    QK_MIDI_TRANSPOSE_4MI_TR4Set transposition to +4 semitones
    QK_MIDI_TRANSPOSE_5MI_TR5Set transposition to +5 semitones
    QK_MIDI_TRANSPOSE_6MI_TR6Set transposition to +6 semitones
    QK_MIDI_TRANSPOSE_DOWNMI_TRSDDecrease transposition
    QK_MIDI_TRANSPOSE_UPMI_TRSUIncrease transposition
    QK_MIDI_VELOCITY_0MI_VL0Set velocity to 0
    QK_MIDI_VELOCITY_1MI_VL1Set velocity to 12
    QK_MIDI_VELOCITY_2MI_VL2Set velocity to 25
    QK_MIDI_VELOCITY_3MI_VL3Set velocity to 38
    QK_MIDI_VELOCITY_4MI_VL4Set velocity to 51
    QK_MIDI_VELOCITY_5MI_VL5Set velocity to 64
    QK_MIDI_VELOCITY_6MI_VL6Set velocity to 76
    QK_MIDI_VELOCITY_7MI_VL7Set velocity to 89
    QK_MIDI_VELOCITY_8MI_VL8Set velocity to 102
    QK_MIDI_VELOCITY_9MI_VL9Set velocity to 114
    QK_MIDI_VELOCITY_10MI_VL10Set velocity to 127
    QK_MIDI_VELOCITY_DOWNMI_VELDDecrease velocity
    QK_MIDI_VELOCITY_UPMI_VELUIncrease velocity
    QK_MIDI_CHANNEL_1MI_CH1Set channel to 1
    QK_MIDI_CHANNEL_2MI_CH2Set channel to 2
    QK_MIDI_CHANNEL_3MI_CH3Set channel to 3
    QK_MIDI_CHANNEL_4MI_CH4Set channel to 4
    QK_MIDI_CHANNEL_5MI_CH5Set channel to 5
    QK_MIDI_CHANNEL_6MI_CH6Set channel to 6
    QK_MIDI_CHANNEL_7MI_CH7Set channel to 7
    QK_MIDI_CHANNEL_8MI_CH8Set channel to 8
    QK_MIDI_CHANNEL_9MI_CH9Set channel to 9
    QK_MIDI_CHANNEL_10MI_CH10Set channel to 10
    QK_MIDI_CHANNEL_11MI_CH11Set channel to 11
    QK_MIDI_CHANNEL_12MI_CH12Set channel to 12
    QK_MIDI_CHANNEL_13MI_CH13Set channel to 13
    QK_MIDI_CHANNEL_14MI_CH14Set channel to 14
    QK_MIDI_CHANNEL_15MI_CH15Set channel to 15
    QK_MIDI_CHANNEL_16MI_CH16Set channel to 16
    QK_MIDI_CHANNEL_DOWNMI_CHNDDecrease channel
    QK_MIDI_CHANNEL_UPMI_CHNUIncrease channel
    QK_MIDI_ALL_NOTES_OFFMI_AOFFStop all notes
    QK_MIDI_SUSTAINMI_SUSTSustain
    QK_MIDI_PORTAMENTOMI_PORTPortmento
    QK_MIDI_SOSTENUTOMI_SOSTSostenuto
    QK_MIDI_SOFTMI_SOFTSoft Pedal
    QK_MIDI_LEGATOMI_LEGLegato
    QK_MIDI_MODULATIONMI_MODModulation
    QK_MIDI_MODULATION_SPEED_DOWNMI_MODDDecrease modulation speed
    QK_MIDI_MODULATION_SPEED_UPMI_MODUIncrease modulation speed
    QK_MIDI_PITCH_BEND_DOWNMI_BNDDBend pitch down
    QK_MIDI_PITCH_BEND_UPMI_BNDUBend pitch up

    Configuration

    Certain values are stored in the midi_config struct. This configuration is not persisted to EEPROM. By default, these values are:

    ConfigurationValueComments
    Octave4Corresponds to MI_OC2
    Transposition0
    Velocity127
    Channel0
    Modulation Interval8

    For the above, the MI_C keycode will produce a C3 (note number 48), and so on.

    References

    MIDI Specification

    QMK C Files

    - + \ No newline at end of file diff --git a/features/mouse_keys.html b/features/mouse_keys.html index 752b5c63a6e..1968c6c0857 100644 --- a/features/mouse_keys.html +++ b/features/mouse_keys.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/oled_driver.html b/features/oled_driver.html index 89fa51fdc59..e4092e6d025 100644 --- a/features/oled_driver.html +++ b/features/oled_driver.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -285,7 +285,7 @@ // Returns the maximum number of lines that will fit on the OLED uint8_t oled_max_lines(void);

    WARNING

    Scrolling is unsupported on the SH1106 and SH1107.

    WARNING

    Scrolling does not work properly on the SSD1306 if the display width is smaller than 128.

    SSD1306.h Driver Conversion Guide

    Old APIRecommended New API
    struct CharacterMatrixremoved - delete all references
    iota_gfx_initoled_init
    iota_gfx_onoled_on
    iota_gfx_offoled_off
    iota_gfx_flusholed_render
    iota_gfx_write_charoled_write_char
    iota_gfx_writeoled_write
    iota_gfx_write_Poled_write_P
    iota_gfx_clear_screenoled_clear
    matrix_clearremoved - delete all references
    matrix_write_char_inneroled_write_char
    matrix_write_charoled_write_char
    matrix_writeoled_write
    matrix_write_lnoled_write_ln
    matrix_write_Poled_write_P
    matrix_write_ln_Poled_write_ln_P
    matrix_renderoled_render
    iota_gfx_taskoled_task
    iota_gfx_task_useroled_task_user
    - + \ No newline at end of file diff --git a/features/os_detection.html b/features/os_detection.html index 1bd3fe63a6f..71d3049d861 100644 --- a/features/os_detection.html +++ b/features/os_detection.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -63,7 +63,7 @@ return false; } }

    Then please open an issue on Github with this information and tell what OS was not detected correctly and if you have any intermediate devices between keyboard and your computer.

    Credits

    Original idea is coming from FingerprintUSBHost project.

    - + \ No newline at end of file diff --git a/features/pointing_device.html b/features/pointing_device.html index 007fe2bf85f..09d3dc9bafe 100644 --- a/features/pointing_device.html +++ b/features/pointing_device.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -253,7 +253,7 @@ return pointing_device_send(); }

    In general the following two functions must be implemented in appropriate locations for auto mouse to function:

    FunctionDescriptionSuggested location
    pointing_device_task_auto_mouse(report_mouse_t mouse_report)handles target layer activation and is_active status updatespointing_device_task stack
    process_auto_mouse(uint16_t keycode, keyrecord_t* record)Keycode processing for auto mouseprocess_record stack
    - + \ No newline at end of file diff --git a/features/programmable_button.html b/features/programmable_button.html index ace61bb65af..8413d971f66 100644 --- a/features/programmable_button.html +++ b/features/programmable_button.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/ps2_mouse.html b/features/ps2_mouse.html index a2bd056c847..0d64614f07b 100644 --- a/features/ps2_mouse.html +++ b/features/ps2_mouse.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -134,7 +134,7 @@ #define PS2_MOUSE_INVERT_V

    into config.h.

    Rotate Mouse Axes

    Transform the output of the device with a clockwise rotation of 90, 180, or 270 degrees.

    When compensating for device orientation, rotate the output the same amount in the opposite direction. E.g. if the normal device orientation is considered to be North-facing, compensate as follows:

    c
    #define PS2_MOUSE_ROTATE 270 /* Compensate for East-facing device orientation. */
    c
    #define PS2_MOUSE_ROTATE 180 /* Compensate for South-facing device orientation. */
    c
    #define PS2_MOUSE_ROTATE 90 /* Compensate for West-facing device orientation. */

    Debug Settings

    To debug the mouse, add debug_mouse = true or enable via bootmagic.

    c
    /* To debug the mouse reports */
     #define PS2_MOUSE_DEBUG_HID
     #define PS2_MOUSE_DEBUG_RAW

    Movement Hook

    Process mouse movement in the keymap before it is sent to the host. Example uses include filtering noise, adding acceleration, and automatically activating a layer. To use, define the following function in your keymap:

    c
    void ps2_mouse_moved_user(report_mouse_t *mouse_report);
    - + \ No newline at end of file diff --git a/features/rawhid.html b/features/rawhid.html index 43be1c22579..9de0e7e4e66 100644 --- a/features/rawhid.html +++ b/features/rawhid.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -81,7 +81,7 @@ send_raw_report([ 0x41 ])

    API

    void raw_hid_receive(uint8_t *data, uint8_t length)

    Callback, invoked when a raw HID report has been received from the host.

    Arguments


    void raw_hid_send(uint8_t *data, uint8_t length)

    Send an HID report.

    Arguments

    - + \ No newline at end of file diff --git a/features/repeat_key.html b/features/repeat_key.html index 312f57d66ea..b0c86296828 100644 --- a/features/repeat_key.html +++ b/features/repeat_key.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -198,7 +198,7 @@ return true; } - + \ No newline at end of file diff --git a/features/rgb_matrix.html b/features/rgb_matrix.html index e5ce766a24b..34880b5d458 100644 --- a/features/rgb_matrix.html +++ b/features/rgb_matrix.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -223,7 +223,7 @@ rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_COLOR); rgb_matrix_sethsv_noeeprom(HSV_OFF); }

    API

    void rgb_matrix_toggle(void)

    Toggle RGB Matrix on or off.


    void rgb_matrix_toggle_noeeprom(void)

    Toggle RGB Matrix on or off. New state is not written to EEPROM.


    void rgb_matrix_enable(void)

    Turn RGB Matrix on.


    void rgb_matrix_enable_noeeprom(void)

    Turn RGB Matrix on. New state is not written to EEPROM.


    void rgb_matrix_disable(void)

    Turn RGB Matrix off.


    void rgb_matrix_disable_noeeprom(void)

    Turn RGB Matrix off. New state is not written to EEPROM.


    bool rgb_matrix_is_enabled(void)

    Get the current enabled state of RGB Matrix.

    Return Value

    true if RGB Matrix is enabled.


    void rgb_matrix_set_color(uint8_t index, uint8_t r, uint8_t g, uint8_t b)

    Set the color of a single LED.

    This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame.

    Arguments


    void rgb_matrix_set_color_all(uint8_t r, uint8_t g, uint8_t b)

    Set the color of all LEDs.

    This function can only be run from within an effect or indicator callback, otherwise the currently running animation will simply overwrite it on the next frame.

    Arguments


    void rgb_matrix_mode(uint8_t mode)

    Set the currently running effect.

    Arguments


    void rgb_matrix_mode_noeeprom(uint8_t mode)

    Set the currently running effect. New state is not written to EEPROM.

    Arguments


    void rgb_matrix_step(void)

    Move to the next enabled effect.


    void rgb_matrix_step_noeeprom(void)

    Move to the next enabled effect. New state is not written to EEPROM.


    void rgb_matrix_step_reverse(void)

    Move to the previous enabled effect.


    void rgb_matrix_step_reverse_noeeprom(void)

    Move to the previous enabled effect. New state is not written to EEPROM.


    uint8_t rgb_matrix_get_mode(void)

    Get the currently running effect.

    Return Value

    The index of the currently running effect.


    void rgb_matrix_increase_hue(void)

    Increase the global effect hue.


    void rgb_matrix_increase_hue_noeeprom(void)

    Increase the global effect hue. New state is not written to EEPROM.


    void rgb_matrix_decrease_hue(void)

    Decrease the global effect hue.


    void rgb_matrix_decrease_hue_noeeprom(void)

    Decrease the global effect hue. New state is not written to EEPROM.


    uint8_t rgb_matrix_get_hue(void)

    Get the current global effect hue.

    Return Value

    The current hue value, from 0 to 255.


    void rgb_matrix_increase_sat(void)

    Increase the global effect saturation.


    void rgb_matrix_increase_sat_noeeprom(void)

    Increase the global effect saturation. New state is not written to EEPROM.


    void rgb_matrix_decrease_sat(void)

    Decrease the global effect saturation.


    void rgb_matrix_decrease_sat_noeeprom(void)

    Decrease the global effect saturation. New state is not written to EEPROM.


    uint8_t rgb_matrix_get_sat(void)

    Get the current global effect saturation.

    Return Value

    The current saturation value, from 0 to 255.


    void rgb_matrix_increase_val(void)

    Increase the global effect value (brightness).


    void rgb_matrix_increase_val_noeeprom(void)

    Increase the global effect value (brightness). New state is not written to EEPROM.


    void rgb_matrix_decrease_val(void)

    Decrease the global effect value (brightness).


    void rgb_matrix_decrease_val_noeeprom(void)

    Decrease the global effect value (brightness). New state is not written to EEPROM.


    uint8_t rgb_matrix_get_val(void)

    Get the current global effect value (brightness).

    Return Value

    The current brightness value, from 0 to 255.


    void rgb_matrix_increase_speed(void)

    Increase the effect speed.


    void rgb_matrix_increase_speed_noeeprom(void)

    Increase the effect speed. New state is not written to EEPROM.


    void rgb_matrix_decrease_speed(void)

    Decrease the effect speed.


    void rgb_matrix_decrease_speed_noeeprom(void)

    Decrease the effect speed. New state is not written to EEPROM.


    void rgb_matrix_set_speed(uint8_t speed)

    Set the effect speed.

    Arguments


    void rgb_matrix_set_speed_noeeprom(uint8_t speed)

    Set the effect speed. New state is not written to EEPROM.

    Arguments


    uint8_t rgb_matrix_get_speed(void)

    Get the current effect speed.

    Return Value

    The current effect speed, from 0 to 255.


    void rgb_matrix_set_flags(led_flags_t flags)

    Set the global effect flags.

    Arguments


    void rgb_matrix_set_flags_noeeprom(led_flags_t flags)

    Set the global effect flags. New state is not written to EEPROM.

    Arguments


    void rgb_matrix_flags_step(void)

    Move to the next flag combination.


    void rgb_matrix_flags_step_noeeprom(void)

    Move to the next flag combination. New state is not written to EEPROM.


    void rgb_matrix_flags_step_reverse(void)

    Move to the previous flag combination.


    void rgb_matrix_flags_step_reverse_noeeprom(void)

    Move to the previous flag combination. New state is not written to EEPROM.


    uint8_t rgb_matrix_get_flags(void)

    Get the current global effect flags.

    Return Value

    The current effect flags.


    void rgb_matrix_sethsv(uint8_t h, uint8_t s, uint8_t v)

    Set the global effect hue, saturation, and value (brightness).

    Arguments


    void rgb_matrix_sethsv_noeeprom(uint8_t h, uint8_t s, uint8_t v)

    Set the global effect hue, saturation, and value (brightness). New state is not written to EEPROM.

    Arguments


    hsv_t rgb_matrix_get_hsv(void)

    Get the current global effect hue, saturation, and value (brightness).

    Return Value

    The current effect HSV as an hsv_t struct.


    void rgb_matrix_reload_from_eeprom(void)

    Reload the effect configuration (enabled, mode and color) from EEPROM.


    bool rgb_matrix_get_suspend_state(void)

    Get the current suspend state of RGB Matrix.

    Return Value

    true if RGB Matrix is currently in the suspended state.


    bool rgb_matrix_indicators_kb(void)

    Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

    Return Value

    Currently unused.


    bool rgb_matrix_indicators_user(void)

    Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

    Return Value

    true to continue running the keyboard-level callback.


    bool rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max)

    Keyboard-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

    Arguments

    Return Value

    Currently unused.


    bool rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max)

    Keymap-level callback, invoked after current animation frame is rendered but before it is flushed to the LEDs.

    Arguments

    Return Value

    true to continue running the keyboard-level callback.

    - + \ No newline at end of file diff --git a/features/rgblight.html b/features/rgblight.html index 47ee5d372e4..b530a98755c 100644 --- a/features/rgblight.html +++ b/features/rgblight.html @@ -8,12 +8,12 @@ - + - - + + - + @@ -137,7 +137,7 @@ STENO_ENABLE = no EXTRAKEY_ENABLE = yes VELOCIKEY_ENABLE = yes

    Then, while using your keyboard, you need to also turn it on with the VK_TOGG keycode, which toggles the feature on and off.

    The following light effects will all be controlled by Velocikey when it is enabled:

    Support for LED breathing effects is planned but not available yet.

    As long as Velocikey is enabled, it will control the speed regardless of any other speed setting that your RGB lights are currently on.

    Configuration

    Velocikey doesn't currently support any configuration via keyboard settings. If you want to adjust something like the speed increase or decay rate, you would need to edit velocikey.c and adjust the values there to achieve the kinds of speeds that you like.

    - + \ No newline at end of file diff --git a/features/secure.html b/features/secure.html index f50944de954..c90e894e6cc 100644 --- a/features/secure.html +++ b/features/secure.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/send_string.html b/features/send_string.html index 289e9cf87e2..b04b6d17968 100644 --- a/features/send_string.html +++ b/features/send_string.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -28,7 +28,7 @@ return true; }

    Keycode Injection

    This example types out opening and closing curly braces, then taps the left arrow key to move the cursor between the two.

    c
    SEND_STRING("{}" SS_TAP(X_LEFT));

    This example types Ctrl+A, then Ctrl+C, without releasing Ctrl.

    c
    SEND_STRING(SS_LCTL("ac"));

    API

    void send_string(const char *string)

    Type out a string of ASCII characters.

    This function simply calls send_string_with_delay(string, 0).

    Arguments


    void send_string_with_delay(const char *string, uint8_t interval)

    Type out a string of ASCII characters, with a delay between each character.

    Arguments


    void send_string_P(const char *string)

    Type out a PROGMEM string of ASCII characters.

    On ARM devices, this function is simply an alias for send_string_with_delay(string, 0).

    Arguments


    void send_string_with_delay_P(const char *string, uint8_t interval)

    Type out a PROGMEM string of ASCII characters, with a delay between each character.

    On ARM devices, this function is simply an alias for send_string_with_delay(string, interval).

    Arguments


    void send_char(char ascii_code)

    Type out an ASCII character.

    Arguments


    void send_dword(uint32_t number)

    Type out an eight digit (unsigned 32-bit) hexadecimal value.

    The format is [0-9a-f]{8}, eg. 00000000 through ffffffff.

    Arguments


    void send_word(uint16_t number)

    Type out a four digit (unsigned 16-bit) hexadecimal value.

    The format is [0-9a-f]{4}, eg. 0000 through ffff.

    Arguments


    void send_byte(uint8_t number)

    Type out a two digit (8-bit) hexadecimal value.

    The format is [0-9a-f]{2}, eg. 00 through ff.

    Arguments


    void send_nibble(uint8_t number)

    Type out a single hexadecimal digit.

    The format is [0-9a-f]{1}, eg. 0 through f.

    Arguments


    void tap_random_base64(void)

    Type a pseudorandom character from the set A-Z, a-z, 0-9, + and /.


    SEND_STRING(string)

    Shortcut macro for send_string_with_delay_P(PSTR(string), 0).

    On ARM devices, this define evaluates to send_string_with_delay(string, 0).


    SEND_STRING_DELAY(string, interval)

    Shortcut macro for send_string_with_delay_P(PSTR(string), interval).

    On ARM devices, this define evaluates to send_string_with_delay(string, interval).

    - + \ No newline at end of file diff --git a/features/sequencer.html b/features/sequencer.html index 297224fcd19..fd4b164cb60 100644 --- a/features/sequencer.html +++ b/features/sequencer.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/space_cadet.html b/features/space_cadet.html index 76aa50d6739..efcdf0a6b3e 100644 --- a/features/space_cadet.html +++ b/features/space_cadet.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/split_keyboard.html b/features/split_keyboard.html index 81d7565869e..00b8bd2bc27 100644 --- a/features/split_keyboard.html +++ b/features/split_keyboard.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -59,7 +59,7 @@ #define RPC_S2M_BUFFER_SIZE 48

    Hardware Configuration Options

    There are some settings that you may need to configure, based on how the hardware is set up.

    c
    #define MATRIX_ROW_PINS_RIGHT { <row pins> }
     #define MATRIX_COL_PINS_RIGHT { <col pins> }

    This allows you to specify a different set of pins for the matrix on the right side. This is useful if you have a board with differently-shaped halves that requires a different configuration (such as Keebio's Quefrency). The number of pins in the right and left matrices must be the same, if you have a board with a different number of rows or columns on one side, pad out the extra spaces with NO_PIN and make sure you add the unused rows or columns to your matrix.

    c
    #define DIRECT_PINS_RIGHT { { F1, F0, B0, C7 }, { F4, F5, F6, F7 } }

    This allows you to specify a different set of direct pins for the right side.

    c
    #define ENCODER_A_PINS_RIGHT { encoder1a, encoder2a }
     #define ENCODER_B_PINS_RIGHT { encoder1b, encoder2b }

    This allows you to specify a different set of encoder pins for the right side.

    c
    #define RGBLIGHT_SPLIT

    This option enables synchronization of the RGB Light modes between the controllers of the split keyboard. This is for keyboards that have RGB LEDs that are directly wired to the controller (that is, they are not using the "extra data" option on the TRRS cable).

    c
    #define RGBLED_SPLIT { 6, 6 }

    This sets how many LEDs are directly connected to each controller. The first number is the left side, and the second number is the right side.

    TIP

    This setting implies that RGBLIGHT_SPLIT is enabled, and will forcibly enable it, if it's not.

    c
    #define SPLIT_USB_DETECT

    Enabling this option changes the startup behavior to listen for an active USB communication to delegate which part is master and which is slave. With this option enabled and active USB communication, then that half assumes it is the master, otherwise it assumes it is the slave.

    Without this option, the master is the half that can detect voltage on the physical USB connection (VBUS detection).

    Enabled by default on ChibiOS/ARM.

    TIP

    This setting will stop the ability to demo using battery packs.

    c
    #define SPLIT_USB_TIMEOUT 2000

    This sets the maximum timeout when detecting master/slave when using SPLIT_USB_DETECT.

    c
    #define SPLIT_USB_TIMEOUT_POLL 10

    This sets the poll frequency when detecting master/slave when using SPLIT_USB_DETECT

    c
    #define SPLIT_WATCHDOG_ENABLE

    This will enable a software watchdog on any side delegated as slave and will reboot the keyboard if no successful communication occurs within SPLIT_WATCHDOG_TIMEOUT. This can be particularly helpful when SPLIT_USB_DETECT delegates both sides as slave in some circumstances.

    c
    #define SPLIT_WATCHDOG_TIMEOUT 3000

    This set the maximum slave timeout when waiting for communication from master when using SPLIT_WATCHDOG_ENABLE

    Hardware Considerations and Mods

    Master/slave delegation is made either by detecting voltage on VBUS connection or waiting for USB communication (SPLIT_USB_DETECT). Pro Micro boards can use VBUS detection out of the box and be used with or without SPLIT_USB_DETECT.

    Many ARM boards, but not all, do not support VBUS detection. Because it is common that ARM boards lack VBUS detection, SPLIT_USB_DETECT is automatically defined on ARM targets (technically when ChibiOS is targeted).

    Teensy boards

    Teensy boards lack VBUS detection out of the box and must have SPLIT_USB_DETECT defined. With the Teensy 2.0 and Teensy++ 2.0, there is a simple hardware mod that you can perform to add VBUS detection, so you don't need the SPLIT_USB_DETECT option.

    You'll only need a few things:

    You'll need to cut the small trace between the 5V and center pads on the back of the Teensy.

    Once you have done that, you will want to solder the diode from the 5V pad to the center pad.

    You may need to use the 5V pad from the regulator block above as the pads were too small and placed too closely together to place the Schottky diode properly.

    Teensy++ 2.0

    Additional Resources

    Nicinabox has a very nice and detailed guide for the Let's Split keyboard, that covers most everything you need to know, including troubleshooting information.

    However, the RGB Light section is out of date, as it was written long before the RGB Split code was added to QMK Firmware. Instead, wire each strip up directly to the controller.

    - + \ No newline at end of file diff --git a/features/st7565.html b/features/st7565.html index 2eca20acc24..67cd0984f51 100644 --- a/features/st7565.html +++ b/features/st7565.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -207,7 +207,7 @@ // Returns the maximum number of lines that will fit on the display uint8_t st7565_max_lines(void); - + \ No newline at end of file diff --git a/features/stenography.html b/features/stenography.html index 1664f892ed3..927dc6b6828 100644 --- a/features/stenography.html +++ b/features/stenography.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -26,7 +26,7 @@ 0 -P -B -L -G -T -S -D 0 #7 #8 #9 #A #B #C -Z

    Examples of steno strokes and the associated packet:

    Switching protocols on the fly

    If you wish to switch the serial protocol used to transfer the steno chords without having to recompile your keyboard firmware every time, you can press the QK_STENO_BOLT and QK_STENO_GEMINI keycodes in order to switch protocols on the fly.

    To enable these special keycodes, add the following lines to your rules.mk:

    make
    STENO_ENABLE = yes
     STENO_PROTOCOL = all

    If you want to switch protocols programmatically, as part of a custom macro for example, don't use tap_code(QK_STENO_*), as tap_code only supports basic keycodes. Instead, you should use steno_set_mode(STENO_MODE_*), whose valid arguments are STENO_MODE_BOLT and STENO_MODE_GEMINI.

    The default protocol is Gemini PR but the last protocol used is stored in non-volatile memory so QMK will remember your choice between reboots of your keyboard — assuming that your keyboard features (emulated) EEPROM.

    Naturally, this option takes the most amount of firmware space as it needs to compile the code for all the available stenography protocols. In most cases, compiling a single stenography protocol is sufficient.

    The default value for STENO_PROTOCOL is all.

    Configuring QMK for Steno

    After enabling stenography and optionally selecting a protocol, you may also need disable mouse keys, extra keys, or another USB endpoint to prevent conflicts. The builtin USB stack for some processors only supports a certain number of USB endpoints and the virtual serial port needed for steno fills 3 of them.

    WARNING

    If you had explicitly set VIRSTER_ENABLE = no, none of the serial stenography protocols (GeminiPR, TX Bolt) will work properly. You are expected to either set it to yes, remove the line from your rules.mk or send the steno chords yourself in an alternative way using the provided interceptable hooks.

    In your keymap, create a new layer for Plover, that you can fill in with the steno keycodes. Remember to create a key to switch to the layer as well as a key for exiting the layer.

    Once you have your keyboard flashed, launch Plover. Click the 'Configure...' button. In the 'Machine' tab, select the Stenotype Machine that corresponds to your desired protocol. Click the 'Configure...' button on this tab and enter the serial port or click 'Scan'. Baud rate is fine at 9600 (although you should be able to set as high as 115200 with no issues). Use the default settings for everything else (Data Bits: 8, Stop Bits: 1, Parity: N, no flow control).

    To test your keymap, you can chord keys on your keyboard and either look at the output of the 'paper tape' (Tools > Paper Tape) or that of the 'layout display' (Tools > Layout Display). If your strokes correctly show up, you are now ready to steno!

    Learning Stenography

    Interfacing with the code

    The steno code has three interceptable hooks. If you define these functions, they will be called at certain points in processing; if they return true, processing continues, otherwise it's assumed you handled things.

    c
    bool send_steno_chord_user(steno_mode_t mode, uint8_t chord[MAX_STROKE_SIZE]);

    This function is called when a chord is about to be sent. Mode will be one of STENO_MODE_BOLT or STENO_MODE_GEMINI. This represents the actual chord that would be sent via whichever protocol. You can modify the chord provided to alter what gets sent. Remember to return true if you want the regular sending process to happen.

    c
    bool process_steno_user(uint16_t keycode, keyrecord_t *record) { return true; }

    This function is called when a keypress has come in, before it is processed. The keycode should be one of QK_STENO_BOLT, QK_STENO_GEMINI, or one of the STN_* key values.

    c
    bool post_process_steno_user(uint16_t keycode, keyrecord_t *record, steno_mode_t mode, uint8_t chord[MAX_STROKE_SIZE], int8_t n_pressed_keys);

    This function is called after a key has been processed, but before any decision about whether or not to send a chord. This is where to put hooks for things like, say, live displays of steno chords or keys.

    If record->event.pressed is false, and n_pressed_keys is 0 or 1, the chord will be sent shortly, but has not yet been sent. This relieves you of the need of keeping track of where a packet ends and another begins.

    The chord argument contains the packet of the current chord as specified by the protocol in use. This is NOT simply a list of chorded steno keys of the form [STN_E, STN_U, STN_BR, STN_GR]. Refer to the appropriate protocol section of this document to learn more about the format of the packets in your steno protocol/mode of choice.

    The n_pressed_keys argument is the number of physical keys actually being held down. This is not always equal to the number of bits set to 1 (aka the Hamming weight) in chord because it is possible to simultaneously press down four keys, then release three of those four keys and then press yet another key while the fourth finger is still holding down its key. At the end of this scenario given as an example, chord would have five bits set to 1 but n_pressed_keys would be set to 2 because there are only two keys currently being pressed down.

    Keycode Reference

    INFO

    TX Bolt does not support the full set of keys. The TX Bolt implementation in QMK will map the GeminiPR keys to the nearest TX Bolt key so that one key map will work for both.

    GeminiPRTX BoltSteno Key
    STN_N1STN_NUMNumber bar #1
    STN_N2STN_NUMNumber bar #2
    STN_N3STN_NUMNumber bar #3
    STN_N4STN_NUMNumber bar #4
    STN_N5STN_NUMNumber bar #5
    STN_N6STN_NUMNumber bar #6
    STN_N7STN_NUMNumber bar #7
    STN_N8STN_NUMNumber bar #8
    STN_N9STN_NUMNumber bar #9
    STN_NASTN_NUMNumber bar #A
    STN_NBSTN_NUMNumber bar #B
    STN_NCSTN_NUMNumber bar #C
    STN_S1STN_SLS- upper
    STN_S2STN_SLS- lower
    STN_TLSTN_TLT-
    STN_KLSTN_KLK-
    STN_PLSTN_PLP-
    STN_WLSTN_WLW-
    STN_HLSTN_HLH-
    STN_RLSTN_RLR-
    STN_ASTN_AA vowel
    STN_OSTN_OO vowel
    STN_ST1STN_STR* upper-left
    STN_ST2STN_STR* lower-left
    STN_ST3STN_STR* upper-right
    STN_ST4STN_STR* lower-right
    STN_ESTN_EE vowel
    STN_USTN_UU vowel
    STN_FRSTN_FR-F
    STN_RRSTN_RR-R
    STN_PRSTN_PR-P
    STN_BRSTN_BR-B
    STN_LRSTN_LR-L
    STN_GRSTN_GR-G
    STN_TRSTN_TR-T
    STN_SRSTN_SR-S
    STN_DRSTN_DR-D
    STN_ZRSTN_ZR-Z
    STN_FN(Function)
    STN_RES1(Reset 1)
    STN_RES2(Reset 2)
    STN_PWR(Power)

    If you do not want to hit two keys with one finger combined keycodes can be used. These cause both keys to be reported as pressed or released. To use these keycodes define STENO_COMBINEDMAP in your config.h file.

    Combined keyKey1Key 2
    STN_S3STN_S1STN_S2
    STN_TKLSTN_TLSTN_KL
    STN_PWLSTN_PLSTN_WL
    STN_HRLSTN_HLSTN_RL
    STN_FRRSTN_FRSTN_RR
    STN_PBRSTN_PRSTN_BR
    STN_LGRSTN_LRSTN_GR
    STN_TSRSTN_TRSTN_SR
    STN_DZRSTN_DRSTN_ZR
    STN_AOSTN_ASTN_O
    STN_EUSTN_ESTN_U
    - + \ No newline at end of file diff --git a/features/swap_hands.html b/features/swap_hands.html index 8902f138031..28260a26bc0 100644 --- a/features/swap_hands.html +++ b/features/swap_hands.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -25,7 +25,7 @@ };

    Note that the array indices are reversed same as the matrix and the values are of type keypos_t which is {col, row} and all values are zero-based. In the example above, hand_swap_config[2][4] (third row, fifth column) would return {7, 2} (third row, eighth column). Yes, this is confusing.

    Swap Keycodes

    KeyAliasesDescription
    SH_T(kc)Momentary swap when held, kc when tapped
    QK_SWAP_HANDS_ONSH_ONTurn on hand swap
    QK_SWAP_HANDS_OFFSH_OFFTurn off hand swap
    QK_SWAP_HANDS_MOMENTARY_ONSH_MONTurn on hand swap while held
    QK_SWAP_HANDS_MOMENTARY_OFFSH_MOFFTurn off hand swap while held
    QK_SWAP_HANDS_TOGGLESH_TOGGToggle hand swap
    QK_SWAP_HANDS_TAP_TOGGLESH_TTMomentary swap when held, toggle when tapped
    QK_SWAP_HANDS_ONE_SHOTSH_OSTurn on hand swap while held or until next key press

    SH_TT swap-hands tap-toggle key is similar to layer tap-toggle. Tapping repeatedly (5 taps by default) will toggle swap-hands on or off, like SH_TOGG. Tap-toggle count can be changed by defining a value for TAPPING_TOGGLE.

    Encoder Mapping

    When using an encoder mapping, it's also able to handle swapping encoders between sides, too.

    Encoder indexes are defined as left-to-right, and the extent of the array needs to match the number of encoders on the keyboard.

    As an example, if a split keyboard has a single encoder per side, you can swap the order by using the following code in your keymap:

    c
    #if defined(SWAP_HANDS_ENABLE) && defined(ENCODER_MAP_ENABLE)
     const uint8_t PROGMEM encoder_hand_swap_config[NUM_ENCODERS] = { 1, 0 };
     #endif

    Functions

    User callback functions to manipulate Swap-Hands:

    FunctionDescription
    swap_hands_on()Turns Swap-Hands on.
    swap_hands_off()Turns Swap-Hands off.
    swap_hands_toggle()Toggles Swap-Hands.
    is_swap_hands_on()Returns true if Swap-Hands is currently on.
    - + \ No newline at end of file diff --git a/features/tap_dance.html b/features/tap_dance.html index a4d93a62c66..f2809bfc63e 100644 --- a/features/tap_dance.html +++ b/features/tap_dance.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -423,7 +423,7 @@ return TAPPING_TERM; } }

    The above code is similar to that used in previous examples. The one point to note is that we need to be able to check which layers are active at any time so we can toggle them if needed. To do this we use the layer_state_is(layer) function which returns true if the given layer is active.

    The use of cur_dance() and ql_tap_state mirrors the above examples.

    The case: TD_SINGLE_TAP in ql_finished is similar to the above examples. The TD_SINGLE_HOLD case works in conjunction with ql_reset() to switch to _MY_LAYER while the tap dance key is held, and to switch away from _MY_LAYER when the key is released. This mirrors the use of MO(_MY_LAYER). The TD_DOUBLE_TAP case works by checking whether _MY_LAYER is the active layer, and toggling it on or off accordingly. This mirrors the use of TG(_MY_LAYER).

    tap_dance_actions[] works similar to the above examples. Note that, additionally, I set a longer tapping term for the tap dance keys. This is because I like my TAPPING_TERM to be short (~175ms) for my non-tap-dance keys but find that this is too quick for me to reliably complete tap dance actions - thus the increased time of 275ms here. In order for the per-key tapping terms to take effect, TAPPING_TERM_PER_KEY must be defined in your config.h.

    Finally, to get this tap dance key working, be sure to include TD(QUOT_LAYR) in your keymaps[].

    - + \ No newline at end of file diff --git a/features/tri_layer.html b/features/tri_layer.html index 286ff949b0b..70c31939b77 100644 --- a/features/tri_layer.html +++ b/features/tri_layer.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/unicode.html b/features/unicode.html index 2b88c7492cd..887528b5522 100644 --- a/features/unicode.html +++ b/features/unicode.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -20,7 +20,7 @@
    Skip to content
    - + \ No newline at end of file diff --git a/features/wireless.html b/features/wireless.html index 293a208f509..cfb6ac0838c 100644 --- a/features/wireless.html +++ b/features/wireless.html @@ -8,18 +8,18 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/features/wpm.html b/features/wpm.html index 3706093fd7b..ef7d6e6bc3c 100644 --- a/features/wpm.html +++ b/features/wpm.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -44,7 +44,7 @@ return 1; } } - + \ No newline at end of file diff --git a/flashing.html b/flashing.html index d80a72dae59..0253ef71642 100644 --- a/flashing.html +++ b/flashing.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -40,7 +40,7 @@ BOOTLOADER = tinyuf2

    Compatible flashers:

    Flashing sequence:

    1. Enter the bootloader using any of the following methods:
      • Tap the QK_BOOT keycode
      • Double-tap the nRST button on the PCB.
    2. Wait for the OS to detect the device
    3. Copy the .uf2 file to the new USB disk
    4. Wait for the keyboard to become available

    or

    CLI Flashing sequence:

    1. Enter the bootloader using any of the following methods:
      • Tap the QK_BOOT keycode
      • Double-tap the nRST button on the PCB.
    2. Wait for the OS to detect the device
    3. Flash via QMK CLI eg. qmk flash --keyboard handwired/onekey/blackpill_f411_tinyuf2 --keymap default
    4. Wait for the keyboard to become available

    make Targets

    uf2boot

    Keyboards may opt into supporting the uf2boot bootloader. This is currently only supported on F103.

    The rules.mk setting for this bootloader is uf2boot, and can be specified at the keymap or user level.

    To ensure compatibility with the uf2boot bootloader, make sure this block is present in your rules.mk:

    make
    # Bootloader selection
     BOOTLOADER = uf2boot

    Compatible flashers:

    Flashing sequence:

    1. Enter the bootloader using any of the following methods:
      • Tap the QK_BOOT keycode
      • Double-tap the nRST button on the PCB.
    2. Wait for the OS to detect the device
    3. Copy the .uf2 file to the new USB disk
    4. Wait for the keyboard to become available

    or

    CLI Flashing sequence:

    1. Enter the bootloader using any of the following methods:
      • Tap the QK_BOOT keycode
      • Double-tap the nRST button on the PCB.
    2. Wait for the OS to detect the device
    3. Flash via QMK CLI eg. qmk flash --keyboard handwired/onekey/bluepill_uf2boot --keymap default
    4. Wait for the keyboard to become available

    make Targets

    Raspberry Pi RP2040 UF2

    The rules.mk setting for this bootloader is rp2040, and can be specified at the keymap or user level.

    To ensure compatibility with the rp2040 bootloader, make sure this block is present in your rules.mk:

    make
    # Bootloader selection
     BOOTLOADER = rp2040

    Compatible flashers:

    Flashing sequence:

    1. Enter the bootloader using any of the following methods:
      • Tap the QK_BOOT keycode
      • Hold the BOOTSEL button on the PCB while plugin in the usb cable.
      • Double-tap the RESET button on the PCB1.
    2. Wait for the OS to detect the device
    3. Copy the .uf2 file to the new USB disk
    4. Wait for the keyboard to become available

    or

    CLI Flashing sequence:

    1. Enter the bootloader using any of the following methods:
      • Tap the QK_BOOT keycode
      • Hold the BOOTSEL button on the PCB while plugin in the usb cable.
      • Double-tap the RESET button on the PCB1.
    2. Wait for the OS to detect the device
    3. Flash via QMK CLI eg. qmk flash --keyboard handwired/onekey/rpi_pico --keymap default
    4. Wait for the keyboard to become available

    1: This works only if the controller has been flashed with QMK Firmware with RP2040_BOOTLOADER_DOUBLE_TAP_RESET defined.

    - + \ No newline at end of file diff --git a/getting_started_docker.html b/getting_started_docker.html index c43a8959ba4..06dddabe84f 100644 --- a/getting_started_docker.html +++ b/getting_started_docker.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -22,7 +22,7 @@ # For example: util/docker_build.sh planck/rev6:default

    This will compile the desired keyboard/keymap and leave the resulting .hex or .bin file in the QMK directory for you to flash. If :keymap is omitted, all keymaps are used. Note that the parameter format is the same as when building with make.

    There is also support for building and flashing the keyboard straight from Docker by specifying the target as well:

    util/docker_build.sh keyboard:keymap:target
     # For example: util/docker_build.sh planck/rev6:default:flash

    Note that mass storage bootloaders are not supported by the flash target. In this case you will have to manually copy the firmware file to the keyboard.

    You can also start the script without any parameters, in which case it will ask you to input the build parameters one by one, which you may find easier to use:

    util/docker_build.sh
     # Reads parameters as input (leave blank for all keyboards/keymaps)

    You can manually set which container runtime you want to use by setting the RUNTIME environment variable to it's name or path. By default docker or podman are automatically detected and docker is preferred over podman.

    RUNTIME="podman" util/docker_build.sh keyboard:keymap:target

    If flashing is not required, it's possible to run the container as unprivileged (on Linux), and without docker-machine (on Windows/macOS):

    SKIP_FLASHING_SUPPORT=1 util/docker_build.sh keyboard:keymap:target

    FAQ

    Why can't I flash on Windows/macOS

    On Windows and macOS, it requires Docker Machine to be running. This is tedious to set up, so it's not recommended; use QMK Toolbox instead.

    WARNING

    Docker for Windows requires Hyper-V to be enabled. This means that it cannot work on versions of Windows which don't have Hyper-V, such as Windows 7, Windows 8 and Windows 10 Home.

    - + \ No newline at end of file diff --git a/getting_started_github.html b/getting_started_github.html index 5e0a45cb91e..83cad25754e 100644 --- a/getting_started_github.html +++ b/getting_started_github.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -43,7 +43,7 @@ remote: Resolving deltas: 100% (1/1), completed with 1 local objects. To https://github.com/whoeveryouare/qmk_firmware.git + 20043e64...7da94ac5 master -> master

    Your changes now exist on your fork on GitHub - if you go back there (https://github.com/<whoeveryouare>/qmk_firmware), you can create a "New Pull Request" by clicking this button:

    New Pull Request

    Here you'll be able to see exactly what you've committed - if it all looks good, you can finalize it by clicking "Create Pull Request":

    Create Pull Request

    After submitting, we may talk to you about your changes, ask that you make changes, and eventually accept it! Thanks for contributing to QMK 😃

    - + \ No newline at end of file diff --git a/getting_started_introduction.html b/getting_started_introduction.html index 3d1e022fddc..8a892dbb831 100644 --- a/getting_started_introduction.html +++ b/getting_started_introduction.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -22,7 +22,7 @@ // overrides go here! #undef MY_SETTING #define MY_SETTING 4 - + \ No newline at end of file diff --git a/getting_started_make_guide.html b/getting_started_make_guide.html index 843288155ad..0268b29ee9d 100644 --- a/getting_started_make_guide.html +++ b/getting_started_make_guide.html @@ -8,18 +8,18 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/hand_wire.html b/hand_wire.html index 5797b4e11ee..6c171d46d90 100644 --- a/hand_wire.html +++ b/hand_wire.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -25,7 +25,7 @@ Ψ To start working on things, `cd` into keyboards/gh62, Ψ or open the directory in your preferred text editor. Ψ And build with qmk compile -kb gh62 -km default.

    Flashing the Firmware

    Install QMK Toolbox.

    QMK Toolbox

    Under "Local File" navigate to your newly created .hex file. Under "Microcontroller", select the corresponding one for your controller board (common ones available here).

    Plug in your keyboard and press the reset button (or short the Reset and Ground pins if there is no button) and click the "Flash" button in QMK toolbox.

    Testing Your Firmware

    Use a website such as QMK Configurator's Keyboard Tester, Keyboard Tester, or Keyboard Checker or just open a text editor and try typing - you should get the characters that you put into your keymap. Test each key, and make a note of the ones that aren't working. Here's a quick trouble-shooting guide for non-working keys:

    1. Flip the keyboard back over and short the keyswitch's contacts with a piece wire - this will eliminate the possibility of the keyswitch being bad and needing to be replaced.
    2. Check the solder points on the keyswitch - these need to be plump and whole. If you touch it with a moderate amount of force and it comes apart, it's not strong enough.
    3. Check the solder joints on the diode - if the diode is loose, part of your row may register, while the other may not.
    4. Check the solder joints on the columns - if your column wiring is loose, part or all of the column may not work.
    5. Check the solder joints on both sides of the wires going to/from the Teensy - the wires need to be fully soldered and connect to both sides.
    6. Check the <project_name>.h file for errors and incorrectly placed KC_NOs - if you're unsure where they should be, instead duplicate a kxy variable.
    7. Check to make sure you actually compiled the firmware and flashed the Teensy correctly. Unless you got error messages in the terminal, or a pop-up during flashing, you probably did everything correctly.
    8. Use a multimeter to check that the switch is actually closing when actuated (completing the circuit when pressed down).

    If you've done all of these things, keep in mind that sometimes you might have had multiple things affecting the keyswitch, so it doesn't hurt to test the keyswitch by shorting it out at the end.

    Finishing up

    Once you have confirmed that the keyboard is working, if you have used a separate (non handwire specific) controller you will want to secure it in place. This can be done in many different ways e.g. hot glue, double sided sticky tape, 3D printed caddy, electrical tape.

    If you found this fulfilling you could experiment by adding additional features such as in switch LEDs, in switch RGB, RGB underglow or even an OLED display!

    There are a lot of possibilities inside the firmware - explore the documentation for a full feature list, and dive into the different keyboards to see how people use all of them. You can always stop by the OLKB subreddit or QMK Discord for help!

    Legacy Content

    This page used to include more content. We have moved a section that used to be part of this page its own page. Everything below this point is simply a redirect so that people following old links on the web find what they're looking for.

    Preamble: How a Keyboard Matrix Works (and why we need diodes)

    - + \ No newline at end of file diff --git a/hardware_drivers.html b/hardware_drivers.html index f84e2d4d127..52fc57535e6 100644 --- a/hardware_drivers.html +++ b/hardware_drivers.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/hardware_keyboard_guidelines.html b/hardware_keyboard_guidelines.html index 506b56d38bd..08a4f2b3b59 100644 --- a/hardware_keyboard_guidelines.html +++ b/hardware_keyboard_guidelines.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -56,7 +56,7 @@ RGBLIGHT_ENABLE = yes OPT_DEFS += -DRGBLIGHT_LED_COUNT=6 endif

    TIP

    See build_keyboard.mk and common_features.mk for more details.

    <keyboard>.c

    This file should contain C code required for the functionality of your keyboard, for example hardware initialisation code, OLED display code, and so on. This file should only contain code necessary for the keyboard to work, and not things that should be left to the end user to configure in their keymap. This file is automatically included in compilation if it exists. This is not a required file.

    The following functions are typically defined in this file:

    <keyboard>.h

    This file can contain function prototypes for custom functions and other header file code utilised by <keyboard>.c. The <keyboard>.c file should include this file. This is not a required file.

    Image/Hardware Files

    In an effort to keep the repo size down we do not accept binary files of any format, with few exceptions. Hosting them elsewhere (such as https://imgur.com) and linking them in the readme.md is preferred. Hardware files such as plates, cases, and PCBs can be published in a personal repository or elsewhere, and linked to by your keyboard's readme.md file.

    Keyboard Defaults

    Given the amount of functionality that QMK exposes it's very easy to confuse new users. When putting together the default firmware for your keyboard we recommend limiting your enabled features and options to the minimal set needed to support your hardware. Recommendations for specific features follow.

    Magic Keycodes and Command

    Magic Keycodes and Command are two related features that allow a user to control their keyboard in non-obvious ways. We recommend you think long and hard about if you're going to enable either feature, and how you will expose this functionality. Keep in mind that users who want this functionality can enable it in their personal keymaps without affecting all the novice users who may be using your keyboard as their first programmable board.

    If your keyboard does not have 2 shift keys you should provide a working default for IS_COMMAND, even when you have set COMMAND_ENABLE = no. This will give your users a default to conform to if they do enable Command.

    Custom Keyboard Programming

    As documented on Customizing Functionality you can define custom functions for your keyboard. Please keep in mind that your users may want to customize that behavior as well, and make it possible for them to do that. If you are providing a custom function, for example process_record_kb(), make sure that your function calls the _user() version of the call too. You should also take into account the return value of the _user() version, and only run your custom code if the user returns true.

    Non-Production/Handwired Projects

    We're happy to accept any project that uses QMK, including handwired ones, but we have a separate /keyboards/handwired/ folder for them, so the main /keyboards/ folder doesn't get overcrowded. If a prototype project becomes a production project at some point in the future, we'd be happy to move it to the main /keyboards/ folder!

    Warnings as Errors

    When developing your keyboard, keep in mind that all warnings will be treated as errors - these small warnings can build-up and cause larger errors down the road (and keeping them is generally a bad practice).

    If you're adapting your keyboard's setup from another project, but not using the same code, be sure to update the copyright header at the top of the files to show your name, in this format:

    c
    Copyright 2017 Your Name <your@email.com>

    If you are modifying someone else's code and have made only trivial changes you should leave their name in the copyright statement. If you have done significant work on the file you should add your name to theirs, like so:

    c
    Copyright 2017 Their Name <original_author@example.com> Your Name <you@example.com>

    The year should be the first year the file is created. If work was done to that file in later years you can reflect that by appending the second year to the first, like so:

    c
    Copyright 2015-2017 Your Name <you@example.com>

    License

    The core of QMK is licensed under the GNU General Public License. If you are shipping binaries for AVR processors you may choose either GPLv2 or GPLv3. If you are shipping binaries for ARM processors you must choose GPL Version 3 to comply with the ChibiOS GPLv3 license.

    - + \ No newline at end of file diff --git a/hashmap.json b/hashmap.json index ead003f72a6..93a867b91e7 100644 --- a/hashmap.json +++ b/hashmap.json @@ -1 +1 @@ -{"changelog_20190830.md":"Dg7CR0a9","changelog_20200229.md":"C-iTsYY3","changelog_20200530.md":"ClV0RxdS","changelog_20200829.md":"CRR9PTYQ","changelog_20201128.md":"Bul9YL0S","changelog_20210227.md":"Dw8vIK_1","changelog_20210529.md":"Ci4BGoNS","changelog_20210828.md":"D8tTkdsi","changelog_20211127.md":"CsOxZpUa","changelog_20220226.md":"CxS56DHq","changelog_20220528.md":"BbCWKJrZ","changelog_20220827.md":"mKIE5Jfz","changelog_20221126.md":"ejK1jl91","changelog_20230226.md":"DA3ufZ0c","changelog_20230528.md":"D9b6sNVW","changelog_20230827.md":"COX1lvBZ","changelog_20231126.md":"C_9Gu3X6","changelog_20240225.md":"BHnhJkLK","changelog_20240526.md":"BV-o3lF_","changelog_20240825.md":"CPd_a589","changelog_20241124.md":"CfUVyQRe","changelog_20250223.md":"DHu3Q52U","changelog_20250525.md":"CmDA_OgC","changelog_20250831.md":"BslEheIL","changelog_20251130.md":"CObm5zL3","changelog_20260222.md":"IXQ-t2RV","capabilities.md":"DBSM69xz","capabilities_inc.md":"CfVcbxN_","api_development_environment.md":"DBOLjnDt","api_development_overview.md":"DJCYPKXo","api_docs.md":"q8EzzOY3","api_overview.md":"ikCJhJnu","arm_debugging.md":"DZQjFz9i","breaking_changes.md":"BGEUZtBd","breaking_changes_history.md":"BE819oLP","breaking_changes_instructions.md":"CMdgLYf9","chibios_upgrade_instructions.md":"C7StOV1s","cli.md":"CxsSVwqz","cli_commands.md":"CRBCuoFZ","cli_configuration.md":"XqO3NJ_D","cli_development.md":"DEROGtvC","cli_tab_complete.md":"D1OMIPwp","coding_conventions_c.md":"BozxIF_g","coding_conventions_python.md":"DP_Zes00","compatible_microcontrollers.md":"DY4Poukh","config_options.md":"01OxPzbg","configurator_architecture.md":"BO2Oi8tR","configurator_default_keymaps.md":"Dhx_hNGq","configurator_step_by_step.md":"CvypTcmq","configurator_troubleshooting.md":"B-LxAPMk","contributing.md":"BdfsPqoi","custom_matrix.md":"gXpTxUyG","custom_quantum_functions.md":"BlAK1gkM","data_driven_config.md":"0b9lBAXA","documentation_best_practices.md":"DyKD6sih","documentation_templates.md":"Bd-mV5Hz","driver_installation_zadig.md":"3wWhrxYw","drivers_adc.md":"CvhRMxs7","drivers_apa102.md":"DBz660in","drivers_audio.md":"POIlGI3S","drivers_aw20216s.md":"BK5iOj2N","drivers_battery.md":"DAwDiAI6","drivers_eeprom.md":"DGh7YLy6","drivers_flash.md":"Xjr69qY1","drivers_gpio.md":"DeLMdEEL","drivers_i2c.md":"Stz1viUq","drivers_is31fl3218.md":"CxNb3XH6","drivers_is31fl3236.md":"CtQ1lF3K","drivers_is31fl3729.md":"DJCd-vON","drivers_is31fl3731.md":"Bv49dNf4","drivers_is31fl3733.md":"4RLFART3","drivers_is31fl3736.md":"DcvNnQ6u","drivers_is31fl3737.md":"SB4-0r24","drivers_is31fl3741.md":"BnjAjZj1","drivers_is31fl3742a.md":"DVxwQ0u0","drivers_is31fl3743a.md":"Fzps0fLE","drivers_is31fl3745.md":"Bub6KcD5","drivers_is31fl3746a.md":"CupewbNN","drivers_serial.md":"BkUw6hN9","drivers_snled27351.md":"_Q-J-rIw","drivers_spi.md":"fBcFNYcc","drivers_uart.md":"BVpiWrhw","drivers_ws2812.md":"D506ofII","easy_maker.md":"CWKgP0PT","faq_build.md":"DRUGJDZw","faq_debug.md":"DPA-3BUa","faq_general.md":"D6klmZef","faq_keymap.md":"UjocxZux","faq_misc.md":"BPIgMHQW","feature_advanced_keycodes.md":"DgDykEfT","feature_converters.md":"BcivaQ2Y","feature_debounce_type.md":"DT3D46BO","feature_eeprom.md":"C4jGd07n","feature_layers.md":"BRPaBran","feature_layouts.md":"DKb-OgxY","feature_macros.md":"BCymatkF","feature_userspace.md":"BWDqRxjZ","features_audio.md":"C3CBdMc3","features_auto_shift.md":"BFuiQ7EE","features_autocorrect.md":"CwLnMkQ6","features_backlight.md":"4TGdbRi8","features_battery.md":"CgVRBqOv","features_bootmagic.md":"CBkhKU8p","features_caps_word.md":"BwuF_Vhc","features_combo.md":"ssaGsA-P","features_command.md":"ya5i-XFt","features_community_modules.md":"B2PC3enG","features_digitizer.md":"CODT9WkJ","features_dip_switch.md":"Ba4GL97m","features_dynamic_macros.md":"alLvGcWr","features_encoders.md":"Bd7cXZB3","features_grave_esc.md":"BQRa2ZXb","features_haptic_feedback.md":"DuXv7T7P","features_hd44780.md":"JqbI6dcV","features_joystick.md":"DG_RF0SA","features_key_lock.md":"1Aqyr8wY","features_key_overrides.md":"DN2Su4eb","features_layer_lock.md":"BNs4p6DJ","features_leader_key.md":"B1k0F6xl","features_led_indicators.md":"AIQa_hfc","features_led_matrix.md":"Cm0moFB5","features_midi.md":"v37bH2vU","features_mouse_keys.md":"D1QdpHqq","features_oled_driver.md":"CR0dEKlX","features_os_detection.md":"D95X8bah","features_pointing_device.md":"DXePd09M","features_programmable_button.md":"Bl52c_Yl","features_ps2_mouse.md":"qDR2aVVH","features_rawhid.md":"CFU7cft3","features_repeat_key.md":"BWrZx7Ty","features_rgb_matrix.md":"CooKQZqS","features_rgblight.md":"D-DgK2YJ","features_secure.md":"BAyr6J6B","features_send_string.md":"Cze7R7D6","features_sequencer.md":"g91MRf6I","features_space_cadet.md":"Rc5mzUFA","features_split_keyboard.md":"zh-H1dzG","features_st7565.md":"WvdJUI9P","features_stenography.md":"2liY1-LM","features_swap_hands.md":"CpjspRMM","features_tap_dance.md":"DXcB5Veb","features_tri_layer.md":"DkFd4pCh","features_unicode.md":"qsSquqNa","features_wireless.md":"Bk4hYnZX","features_wpm.md":"Baq4jIoq","flashing.md":"DMoR8VBF","getting_started_docker.md":"AEG4WH1N","getting_started_github.md":"B9wd068y","getting_started_introduction.md":"Dzi5ljBy","getting_started_make_guide.md":"CeLtdD_X","hand_wire.md":"CVVk-a8R","hardware_drivers.md":"DLYEz5_y","hardware_keyboard_guidelines.md":"CuYXnNDX","how_a_matrix_works.md":"DMsJT4Dz","how_keyboards_work.md":"B2Be3BPq","index.md":"BsBb4ZNh","isp_flashing_guide.md":"DZYuC4dB","keycodes.md":"BFmA0AVu","keycodes_basic.md":"1acV3SW6","keycodes_magic.md":"DGcxCwmE","keycodes_us_ansi_shifted.md":"ni3swFhe","keymap.md":"DEREEx67","license_violations.md":"B1UpSQTq","mod_tap.md":"DeAaHd-D","newbs.md":"BJFQUUuO","newbs_building_firmware.md":"9ta3a_sX","newbs_building_firmware_configurator.md":"D3v81Bes","newbs_building_firmware_workflow.md":"DGvCwy2t","newbs_external_userspace.md":"BMvW5z9_","newbs_flashing.md":"CNt3RwGF","newbs_getting_started.md":"C2FE2YNu","newbs_git_best_practices.md":"C0QiIl7V","newbs_git_resolving_merge_conflicts.md":"CXCvlz0T","newbs_git_resynchronize_a_branch.md":"zadFIEsX","newbs_git_using_your_master_branch.md":"DRDsA_pU","newbs_learn_more_resources.md":"DRV8PTJE","newbs_testing_debugging.md":"W9JGDFfp","one_shot_keys.md":"CoZULJTw","other_eclipse.md":"DNM4I_uU","other_vscode.md":"Cd14jo_M","platformdev_blackpill_f4x1.md":"BOTrYdi3","platformdev_chibios_earlyinit.md":"CYdrnyB1","platformdev_proton_c.md":"DdB4Ux-O","platformdev_rp2040.md":"9TIkRKBb","platformdev_selecting_arm_mcu.md":"C2dtAlyC","porting_your_keyboard_to_qmk.md":"Dz_V3KoY","pr_checklist.md":"Co-UPRQ0","proprietary_libs.md":"BfGoY2pl","quantum_keycodes.md":"_Et7xRtm","quantum_painter.md":"wsWy8meV","quantum_painter_lvgl.md":"BICCW0fh","quantum_painter_qff.md":"CXDvkMIQ","quantum_painter_qgf.md":"dCZ307fz","quantum_painter_rle.md":"DdkKl5uO","ref_functions.md":"z3oNszvF","reference_configurator_support.md":"CMO4zI2z","reference_glossary.md":"CLUEcDDm","reference_info_json.md":"ePkZR-z-","reference_keymap_extras.md":"B2sSpD5d","squeezing_avr.md":"yj9YaYxW","support.md":"Dth_xzLo","support_deprecation_policy.md":"BOgUGGHv","syllabus.md":"CrGVLX_v","tap_hold.md":"B6KKqQy2","understanding_qmk.md":"BJ2PgDpX","unit_testing.md":"82MAVMY0"} +{"changelog_20190830.md":"D6IuReG4","changelog_20200229.md":"Ds66BLAx","changelog_20200530.md":"BCKw16qF","changelog_20200829.md":"KKJKOXjO","changelog_20201128.md":"CI0nQrFY","changelog_20210227.md":"BjzBAs5x","changelog_20210529.md":"BWAcenKJ","changelog_20210828.md":"I-_imy7e","changelog_20211127.md":"CxO_AykL","changelog_20220226.md":"Dk8ZdFSM","changelog_20220528.md":"Ci-w_XT5","changelog_20220827.md":"5judfHL1","changelog_20221126.md":"CPg-BIWB","changelog_20230226.md":"7t5PVIxX","changelog_20230528.md":"Bp2A079h","changelog_20230827.md":"C16R-udl","changelog_20231126.md":"Bpwq3Ogr","changelog_20240225.md":"Da92cP02","changelog_20240526.md":"C85VHRrA","changelog_20240825.md":"Bd_7OVSi","changelog_20241124.md":"D0sBbIwe","changelog_20250223.md":"wrANLclb","changelog_20250525.md":"Bp9ysS79","changelog_20250831.md":"DpPyR9C0","changelog_20251130.md":"DDM7x0Cl","changelog_20260222.md":"CGKqLJC8","capabilities.md":"BioT5X0H","capabilities_inc.md":"BoBlYZ_w","api_development_environment.md":"BHhIxwlc","api_development_overview.md":"ykoDoprg","api_docs.md":"azbLRQdw","api_overview.md":"DMC56sa3","arm_debugging.md":"D_ovCSLz","breaking_changes.md":"CPjdVfIb","breaking_changes_history.md":"CxsUTOKD","breaking_changes_instructions.md":"DjP5PolH","chibios_upgrade_instructions.md":"DSfqrpjD","cli.md":"DlRtyTGy","cli_commands.md":"CycgrVp4","cli_configuration.md":"CWQYtKyU","cli_development.md":"bdrJhiD-","cli_tab_complete.md":"BMCs6AIK","coding_conventions_c.md":"CgLiZ0K-","coding_conventions_python.md":"C-VrJiRu","compatible_microcontrollers.md":"CZ7InUb5","config_options.md":"DO-qGA0T","configurator_architecture.md":"DPq5rVLw","configurator_default_keymaps.md":"Cji5fckm","configurator_step_by_step.md":"DJIPsyh-","configurator_troubleshooting.md":"z2LZSYLm","contributing.md":"Dcwvm7t6","custom_matrix.md":"DzDeXqyP","custom_quantum_functions.md":"Btyj-xrD","data_driven_config.md":"DYDbIdON","documentation_best_practices.md":"q-TuhoQ8","documentation_templates.md":"K1ZkzXdN","driver_installation_zadig.md":"B4d-g925","drivers_adc.md":"ghm13up5","drivers_apa102.md":"DB4qwSpp","drivers_audio.md":"CdpP_nV3","drivers_aw20216s.md":"CpBh1Zxp","drivers_battery.md":"BejgsgGx","drivers_eeprom.md":"Chttlkwg","drivers_flash.md":"BZEprYOU","drivers_gpio.md":"DAIVnFsw","drivers_i2c.md":"Dl4XHbyO","drivers_is31fl3218.md":"B-CYetEe","drivers_is31fl3236.md":"oMXFaJQB","drivers_is31fl3729.md":"BPfwluBs","drivers_is31fl3731.md":"CoRcGpoN","drivers_is31fl3733.md":"D617uo2L","drivers_is31fl3736.md":"DATOjY36","drivers_is31fl3737.md":"Cs3UsMas","drivers_is31fl3741.md":"CuFeaQg_","drivers_is31fl3742a.md":"r_1D4OlQ","drivers_is31fl3743a.md":"DJJn0Aca","drivers_is31fl3745.md":"sA12j7Er","drivers_is31fl3746a.md":"CCGFqsIg","drivers_serial.md":"C29ECQJq","drivers_snled27351.md":"YUDcBieB","drivers_spi.md":"2nctHc0q","drivers_uart.md":"C-DQ6QZa","drivers_ws2812.md":"3iqmoMnj","easy_maker.md":"CyCtS9iR","faq_build.md":"DUKI8CAq","faq_debug.md":"DfevHt05","faq_general.md":"CSwG14K9","faq_keymap.md":"B-f4GotG","faq_misc.md":"CQG0a42D","feature_advanced_keycodes.md":"B__eRJaD","feature_converters.md":"BvZ97-f7","feature_debounce_type.md":"DmGHbcl5","feature_eeprom.md":"MCCoTyKB","feature_layers.md":"BpRyCtyl","feature_layouts.md":"D2KZVUWv","feature_macros.md":"CSlh6M_r","feature_userspace.md":"BAzTeriV","features_audio.md":"Cr9YonZR","features_auto_shift.md":"BUK-Vjbn","features_autocorrect.md":"Di2YY-lX","features_backlight.md":"CCkIa8h-","features_battery.md":"DaU78lT0","features_bootmagic.md":"D5-HY3Hf","features_caps_word.md":"Cqa7whRF","features_combo.md":"DUXuMBvZ","features_command.md":"ClQenxyT","features_community_modules.md":"BEe_oI6M","features_digitizer.md":"Bd-vzJLw","features_dip_switch.md":"DE2RP9Fo","features_dynamic_macros.md":"DGGasmlF","features_encoders.md":"Ccf2BS3A","features_grave_esc.md":"ByGZcODM","features_haptic_feedback.md":"0sqCrtd3","features_hd44780.md":"wMye5bL5","features_joystick.md":"CBVsW76F","features_key_lock.md":"CPB03zm8","features_key_overrides.md":"DHmulGw8","features_layer_lock.md":"BFyJEied","features_leader_key.md":"BXjau7jR","features_led_indicators.md":"CGYyrucF","features_led_matrix.md":"DuGjDaz2","features_midi.md":"Bbhyxj9Y","features_mouse_keys.md":"BO1Asbyn","features_oled_driver.md":"Dv1hbhxI","features_os_detection.md":"jSTpkLgf","features_pointing_device.md":"Ca3kOf-A","features_programmable_button.md":"C_86Sd8h","features_ps2_mouse.md":"CN8mIpft","features_rawhid.md":"DB4DvYln","features_repeat_key.md":"CSo9ygph","features_rgb_matrix.md":"YAdnF1BU","features_rgblight.md":"Cld469wm","features_secure.md":"DjnR-TYY","features_send_string.md":"DAZ-KvOk","features_sequencer.md":"DlMJ9iBQ","features_space_cadet.md":"BqY09XmY","features_split_keyboard.md":"CP5P3ND7","features_st7565.md":"Dwu6paR4","features_stenography.md":"rMm9phsG","features_swap_hands.md":"nW-D0yHh","features_tap_dance.md":"DYKVHW8v","features_tri_layer.md":"CP4tVyWE","features_unicode.md":"B_tQVqk9","features_wireless.md":"2T8KVBJs","features_wpm.md":"CLlB7DNG","flashing.md":"D33WW-Hb","getting_started_docker.md":"CnQDT8XT","getting_started_github.md":"CE8RxkZj","getting_started_introduction.md":"C8lMDcxb","getting_started_make_guide.md":"CaRp2eyv","hand_wire.md":"CVFAzcE5","hardware_drivers.md":"vWSu8yLz","hardware_keyboard_guidelines.md":"Dtq2deva","how_a_matrix_works.md":"C56BVOKq","how_keyboards_work.md":"B1-KACsB","index.md":"BIeL4qUm","isp_flashing_guide.md":"CMIX0i8g","keycodes.md":"TseVv0Om","keycodes_basic.md":"DFS_uCTY","keycodes_magic.md":"BpmQ6-VM","keycodes_us_ansi_shifted.md":"B710-iU2","keymap.md":"DXVjPGjn","license_violations.md":"BVZNOCP8","mod_tap.md":"uROXO4zr","newbs.md":"BdYxTpzb","newbs_building_firmware.md":"CnTqPUAX","newbs_building_firmware_configurator.md":"B9r4a1PW","newbs_building_firmware_workflow.md":"DqJTVU7C","newbs_external_userspace.md":"Cb3-L9ql","newbs_flashing.md":"DuAdv3f4","newbs_getting_started.md":"C_v7nD1l","newbs_git_best_practices.md":"CD2B0i-4","newbs_git_resolving_merge_conflicts.md":"Bv9iycWi","newbs_git_resynchronize_a_branch.md":"CTRR0z_u","newbs_git_using_your_master_branch.md":"DmucP9Dp","newbs_learn_more_resources.md":"DyOwWVHH","newbs_testing_debugging.md":"CSBTkz5Y","one_shot_keys.md":"DVKbOw_R","other_eclipse.md":"D2LFIFIo","other_vscode.md":"CJpFKC3I","platformdev_blackpill_f4x1.md":"CRzpfIX6","platformdev_chibios_earlyinit.md":"C69mum-M","platformdev_proton_c.md":"Q5yuqv-5","platformdev_rp2040.md":"CVsbhmnD","platformdev_selecting_arm_mcu.md":"BRIdTMNn","porting_your_keyboard_to_qmk.md":"CtsmkkQs","pr_checklist.md":"B3iXNAC8","proprietary_libs.md":"CmRjTSHi","quantum_keycodes.md":"CMhHYpXW","quantum_painter.md":"w-wr8zVt","quantum_painter_lvgl.md":"Cl4cN6D6","quantum_painter_qff.md":"DRgeq25U","quantum_painter_qgf.md":"BAMuGJMk","quantum_painter_rle.md":"CgkQ1vsZ","ref_functions.md":"CYB23zzB","reference_configurator_support.md":"DofEycBd","reference_glossary.md":"BUGMb41c","reference_info_json.md":"CYTzLhJO","reference_keymap_extras.md":"BAQkmhul","squeezing_avr.md":"nn7YA62K","support.md":"DVvDsq4u","support_deprecation_policy.md":"5PMvF63c","syllabus.md":"B5r3P0XB","tap_hold.md":"DlgWmM-h","understanding_qmk.md":"4IwRrIYL","unit_testing.md":"DA7uUPw_"} diff --git a/how_a_matrix_works.html b/how_a_matrix_works.html index 892c9e9a2bb..36f2a24d440 100644 --- a/how_a_matrix_works.html +++ b/how_a_matrix_works.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -67,7 +67,7 @@ col1: 0b11 │└row0 └row1

    The firmware can then use this correct data to detect what it should do, and eventually, what signals it needs to send to the OS.

    Further reading:

    - + \ No newline at end of file diff --git a/how_keyboards_work.html b/how_keyboards_work.html index be4d70fbe44..608abaa9372 100644 --- a/how_keyboards_work.html +++ b/how_keyboards_work.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -20,7 +20,7 @@
    Skip to content
    - + \ No newline at end of file diff --git a/index.html b/index.html index e778aa7e13e..6b51088dc3f 100644 --- a/index.html +++ b/index.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/isp_flashing_guide.html b/isp_flashing_guide.html index 7e547a41f82..85704fdd4d7 100644 --- a/isp_flashing_guide.html +++ b/isp_flashing_guide.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -69,7 +69,7 @@ 2022-03-08T12:16:31 INFO common.c: Starting verification of write complete 2022-03-08T12:16:31 INFO common.c: Flash written and verified! jolly good! 2022-03-08T12:16:31 WARN common.c: NRST is not connected

    Otherwise, if you receive an Unknown memory region error, run the following command to unlock the STM32F103:

    openocd -f interface/stlink.cfg -f target/stm32f1x.cfg -c "init; reset halt; stm32f1x unlock 0; reset halt; exit"

    Then re-plug the ST-Link and try again.

    After all of this, unplug the Bluepill from the ST-Link and connect it to USB. It should now be ready to flash using dfu-util, the QMK CLI or Toolbox.

    - + \ No newline at end of file diff --git a/keycodes.html b/keycodes.html index 2d168de2bc2..ffd7379ddf5 100644 --- a/keycodes.html +++ b/keycodes.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/keycodes_basic.html b/keycodes_basic.html index c32d546b588..ed0765dd867 100644 --- a/keycodes_basic.html +++ b/keycodes_basic.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/keycodes_magic.html b/keycodes_magic.html index c4f72ae34ea..438f61fb31d 100644 --- a/keycodes_magic.html +++ b/keycodes_magic.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/keycodes_us_ansi_shifted.html b/keycodes_us_ansi_shifted.html index 0e1e87fd71c..e2d93a27ca7 100644 --- a/keycodes_us_ansi_shifted.html +++ b/keycodes_us_ansi_shifted.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/keymap.html b/keymap.html index 8069cc202e3..0b53d8011ff 100644 --- a/keymap.html +++ b/keymap.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -92,7 +92,7 @@ _______, _______, _______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______,_______, _______, _______, _______, MO(_FL), KC_HOME, KC_PGDN, KC_END ),

    Some interesting things to note:

    Nitty Gritty Details

    This should have given you a basic overview for creating your own keymap. For more details see the following resources:

    We are actively working to improve these docs. If you have suggestions for how they could be made better please file an issue!

    - + \ No newline at end of file diff --git a/license_violations.html b/license_violations.html index 06d520a8107..eee4c58fe76 100644 --- a/license_violations.html +++ b/license_violations.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/mod_tap.html b/mod_tap.html index 6d2235f6211..ed07f95058e 100644 --- a/mod_tap.html +++ b/mod_tap.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -61,7 +61,7 @@ } return true; }

    Other Resources

    See the Tap-Hold Configuration Options for additional flags that tweak Mod-Tap behavior.

    - + \ No newline at end of file diff --git a/newbs.html b/newbs.html index 3d3a80c67c7..634759ec026 100644 --- a/newbs.html +++ b/newbs.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/newbs_building_firmware.html b/newbs_building_firmware.html index 5e8d4f2a319..6a10ce96a0f 100644 --- a/newbs_building_firmware.html +++ b/newbs_building_firmware.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -22,7 +22,7 @@ Copying planck_rev5_default.hex to qmk_firmware folder [OK] Checking file size of planck_rev5_default.hex [OK] * The firmware size is fine - 27312/28672 (95%, 1360 bytes free)

    Flash Your Firmware

    Move on to Flashing Firmware to learn how to write your new firmware to your keyboard.

    - + \ No newline at end of file diff --git a/newbs_building_firmware_configurator.html b/newbs_building_firmware_configurator.html index 4f3005419e2..ab16d75645d 100644 --- a/newbs_building_firmware_configurator.html +++ b/newbs_building_firmware_configurator.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/newbs_building_firmware_workflow.html b/newbs_building_firmware_workflow.html index d216a3f3c9f..35cb2511d24 100644 --- a/newbs_building_firmware_workflow.html +++ b/newbs_building_firmware_workflow.html @@ -8,16 +8,16 @@ - + - - - + + + -
    Skip to content
    - + \ No newline at end of file diff --git a/newbs_flashing.html b/newbs_flashing.html index 7e86595ccb3..53ef3ff2b6c 100644 --- a/newbs_flashing.html +++ b/newbs_flashing.html @@ -8,16 +8,16 @@ - + - - - + + + -
    Skip to content
    - + \ No newline at end of file diff --git a/newbs_git_best_practices.html b/newbs_git_best_practices.html index f694c28d5ca..aacdb72f403 100644 --- a/newbs_git_best_practices.html +++ b/newbs_git_best_practices.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/newbs_git_resolving_merge_conflicts.html b/newbs_git_resolving_merge_conflicts.html index 8cc7f3303bd..0d235e074d9 100644 --- a/newbs_git_resolving_merge_conflicts.html +++ b/newbs_git_resolving_merge_conflicts.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -40,7 +40,7 @@ <p>Need help? Email support@webhost.us.</p> >>>>>>> Commit #1

    The line <<<<<<< HEAD marks the beginning of a merge conflict, and the >>>>>>> Commit #1 line marks the end, with the conflicting sections separated by =======. The part on the HEAD side is from the QMK master version of the file, and the part marked with the commit message is from the current branch and commit.

    Because Git tracks changes to files rather than the contents of the files directly, if Git can't find the text that was in the file previous to the commit that was made, it won't know how to edit the file. Re-editing the file will solve the conflict. Make your changes, and then save the file.

    <p>Need help? Email support@webhost.us.</p>

    Now run:

    git add conflicting_file_1.txt
     git rebase --continue

    Git logs the changes to the conflicting file, and continues applying the commits from our branch until it reaches the end.

    - + \ No newline at end of file diff --git a/newbs_git_resynchronize_a_branch.html b/newbs_git_resynchronize_a_branch.html index 6e8fe27dca8..18cae39fa01 100644 --- a/newbs_git_resynchronize_a_branch.html +++ b/newbs_git_resynchronize_a_branch.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -26,7 +26,7 @@ $ git remote -v origin https://github.com/qmk/qmk_firmware.git (fetch) origin https://github.com/qmk/qmk_firmware.git (push)

    add a new remote with:

    git remote add upstream https://github.com/qmk/qmk_firmware.git

    Then, redirect the origin remote to your own fork with:

    git remote set-url origin https://github.com/<your_username>/qmk_firmware.git

    Now that you have both remotes configured, you need to update the references for the upstream repository, which is QMK's, by running:

    git fetch --recurse-submodules upstream

    At this point, resynchronize your branch to QMK's by running:

    git reset --recurse-submodules --hard upstream/master

    These steps will update the repository on your computer, but your GitHub fork will still be out of sync. To resynchronize your fork on GitHub, you need to push to your fork, instructing Git to override any remote changes that are not reflected in your local repository. To do this, run:

    git push --recurse-submodules=on-demand --force-with-lease

    WARNING

    DO NOT run git push --recurse-submodules=on-demand --force-with-lease on a fork to which other users post commits. This will erase their commits.

    Now your GitHub fork, your local files, and QMK's repository are all the same. From here you can make further needed changes (use a branch!) and post them as normal.

    - + \ No newline at end of file diff --git a/newbs_git_using_your_master_branch.html b/newbs_git_using_your_master_branch.html index c03bb54a654..bd1c8bc6e61 100644 --- a/newbs_git_using_your_master_branch.html +++ b/newbs_git_using_your_master_branch.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -27,7 +27,7 @@ git push origin master

    This switches you to your master branch, retrieves the refs from the QMK repo, downloads the current QMK master branch to your computer, and then uploads it to your fork.

    Making Changes

    To make changes, create a new branch by entering:

    git checkout -b dev_branch
     git push --set-upstream origin dev_branch

    This creates a new branch named dev_branch, checks it out, and then saves the new branch to your fork. The --set-upstream argument tells git to use your fork and the dev_branch branch every time you use git push or git pull from this branch. It only needs to be used on the first push; after that, you can safely use git push or git pull, without the rest of the arguments.

    TIP

    With git push, you can use -u in place of --set-upstream-u is an alias for --set-upstream.

    You can name your branch nearly anything you want, though it is recommended to name it something related to the changes you are going to make.

    By default git checkout -b will base your new branch on the branch that is currently checked out. You can base your new branch on an existing branch that is not checked out by adding the name of the existing branch to the command:

    git checkout -b dev_branch master

    Now that you have a development branch, open your text editor and make whatever changes you need to make. It is recommended to make many small commits to your branch; that way, any change that causes issues can be more easily traced and undone if needed. To make your changes, edit and save any files that need to be updated, add them to Git's staging area, and then commit them to your branch:

    git add path/to/updated_file
     git commit -m "My commit message."

    git add adds files that have been changed to Git's staging area, which is Git's "loading zone." This contains the changes that are going to be committed by git commit, which saves the changes to the repo. Use descriptive commit messages so you can know what was changed at a glance.

    TIP

    If you've changed multiple files, you can use git add -- path/to/file1 path/to/file2 ... to add all your desired files.

    Publishing Your Changes

    The last step is to push your changes to your fork. To do this, enter git push. Git will then publish the current state of dev_branch to your fork.

    - + \ No newline at end of file diff --git a/newbs_learn_more_resources.html b/newbs_learn_more_resources.html index e34ef6dda75..352651fc55d 100644 --- a/newbs_learn_more_resources.html +++ b/newbs_learn_more_resources.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/newbs_testing_debugging.html b/newbs_testing_debugging.html index 3908b50b87b..3682b38fc50 100644 --- a/newbs_testing_debugging.html +++ b/newbs_testing_debugging.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/one_shot_keys.html b/one_shot_keys.html index 0bfa519bf0b..f9b2e33baa1 100644 --- a/one_shot_keys.html +++ b/one_shot_keys.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -60,7 +60,7 @@ }

    If any one shot layer is switched off, layer will be zero. When you're looking to do something on any layer change instead of one shot layer changes, layer_state_set_user is a better callback to use.

    If you are making your own keyboard, there are also _kb equivalent functions:

    c
    void oneshot_locked_mods_changed_kb(uint8_t mods);
     void oneshot_mods_changed_kb(uint8_t mods);
     void oneshot_layer_changed_kb(uint8_t layer);

    As with any callback, be sure to call the _user variant to allow for further customizability.

    - + \ No newline at end of file diff --git a/other_eclipse.html b/other_eclipse.html index 79828559330..a15fa8f91fa 100644 --- a/other_eclipse.html +++ b/other_eclipse.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/other_vscode.html b/other_vscode.html index 5c8b80e84b5..66d577e0dc5 100644 --- a/other_vscode.html +++ b/other_vscode.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -57,7 +57,7 @@ # Disable optimisations for debugging purposes LTO_ENABLE = no OPT = g

    At this point, you should build and flash your firmware through normal methods (qmk compile ... and qmk flash ...).

    Once completed, you can:

    VS Code's debugger will then start executing the compiled firmware on the MCU.

    At this stage, you should have full debugging set up, with breakpoints and variable listings working!

    - + \ No newline at end of file diff --git a/platformdev_blackpill_f4x1.html b/platformdev_blackpill_f4x1.html index e055dcb7e48..371a299d4eb 100644 --- a/platformdev_blackpill_f4x1.html +++ b/platformdev_blackpill_f4x1.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/platformdev_chibios_earlyinit.html b/platformdev_chibios_earlyinit.html index 8765bceef91..4c6691df046 100644 --- a/platformdev_chibios_earlyinit.html +++ b/platformdev_chibios_earlyinit.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -24,7 +24,7 @@ }

    board_init()

    The function board_init is executed directly after the ChibiOS initialization routines have completed. At this stage, all normal low-level functionality should be available for use (including timers and delays), with the restriction that USB is not yet connected. This is intended as a replacement for the ChibiOS board definition's boardInit function.

    The default implementation of this function is to do nothing.

    To implement your own version of this function, in your keyboard's source files:

    c
    void board_init(void) {
         // initialize anything that requires ChibiOS
     }
    - + \ No newline at end of file diff --git a/platformdev_proton_c.html b/platformdev_proton_c.html index 7f398e8ea46..e5664f1b971 100644 --- a/platformdev_proton_c.html +++ b/platformdev_proton_c.html @@ -8,18 +8,18 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/platformdev_rp2040.html b/platformdev_rp2040.html index 176d8b69cbe..e9a301c5b79 100644 --- a/platformdev_rp2040.html +++ b/platformdev_rp2040.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -20,7 +20,7 @@
    Skip to content
    - + \ No newline at end of file diff --git a/platformdev_selecting_arm_mcu.html b/platformdev_selecting_arm_mcu.html index eee68bdac38..181bdbcde5b 100644 --- a/platformdev_selecting_arm_mcu.html +++ b/platformdev_selecting_arm_mcu.html @@ -8,18 +8,18 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/porting_your_keyboard_to_qmk.html b/porting_your_keyboard_to_qmk.html index 9d371bc05b9..ec804595256 100644 --- a/porting_your_keyboard_to_qmk.html +++ b/porting_your_keyboard_to_qmk.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -96,7 +96,7 @@ ] } }

    In the above example,

    TIP

    See also: Split Keyboard Layout Macro and Matrix to Physical Layout.

    Additional Configuration

    There are a lot of features that can be turned on or off, configured or tuned. Some of these have yet to be migrated over to Data Driven Configuration. The following sections cover the process for when a data-driven option is unavailable.

    Configuration Options

    For available options for config.h, you should see the Config Options page for more details.

    Build Options

    For available options for rules.mk, see the Config Options page for a detailed list and description.

    - + \ No newline at end of file diff --git a/pr_checklist.html b/pr_checklist.html index b035758aaa5..bfcb4d35426 100644 --- a/pr_checklist.html +++ b/pr_checklist.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -41,7 +41,7 @@ * along with this program. If not, see <http://www.gnu.org/licenses/>. */

    Or, optionally, using SPDX identifier instead:

    // Copyright 2024 Your Name (@yourgithub)
     // SPDX-License-Identifier: GPL-2.0-or-later
    - + \ No newline at end of file diff --git a/proprietary_libs.html b/proprietary_libs.html index b2be2d38696..94959625970 100644 --- a/proprietary_libs.html +++ b/proprietary_libs.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/quantum_keycodes.html b/quantum_keycodes.html index 29b10d9e797..03cca0f4228 100644 --- a/quantum_keycodes.html +++ b/quantum_keycodes.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/quantum_painter.html b/quantum_painter.html index 9c441dee315..02ebfaa9cb7 100644 --- a/quantum_painter.html +++ b/quantum_painter.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -37,7 +37,7 @@ Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/my_image.qgf.c...

    Quantum Painter Display Drivers

    Most TFT display panels use a 5-pin interface -- SPI SCK, SPI MOSI, SPI CS, D/C, and RST pins.

    For these displays, QMK's spi_master must already be correctly configured for the platform you're building for.

    The pin assignments for SPI CS, D/C, and RST are specified during device construction.

    Enabling support for the GC9A01 in Quantum Painter is done by adding the following to rules.mk:

    make
    QUANTUM_PAINTER_ENABLE = yes
     QUANTUM_PAINTER_DRIVERS += gc9a01_spi

    Creating a GC9A01 device in firmware can then be done with the following API:

    c
    painter_device_t qp_gc9a01_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode);

    The device handle returned from the qp_gc9a01_make_spi_device function can be used to perform all other drawing operations.

    The maximum number of displays can be configured by changing the following in your config.h (default is 1):

    c
    // 3 displays:
     #define GC9A01_NUM_DEVICES 3

    Native color format rgb565 is compatible with GC9A01

    Quantum Painter Drawing API

    All APIs require a painter_device_t object as their first parameter -- this object comes from the specific device initialisation, and instructions on creating it can be found in each driver's respective section.

    To use any of the APIs, you need to include qp.h:

    c
    #include <qp.h>

    The coordinate system used in Quantum Painter generally accepts left, top, right, and bottom instead of x/y/width/height, and each coordinate is inclusive of where pixels should be drawn. This is required as some datatypes used by display panels have a maximum value of 255 -- for any value or geometry extent that matches 256, this would be represented as a 0, instead.

    TIP

    Drawing a horizontal line 8 pixels long, starting from 4 pixels inside the left side of the display, will need left=4, right=11.

    All color data matches the standard QMK HSV triplet definitions:

    • Hue is of the range 0...255 and is internally mapped to 0...360 degrees.
    • Saturation is of the range 0...255 and is internally mapped to 0...100% saturation.
    • Value is of the range 0...255 and is internally mapped to 0...100% brightness.

    TIP

    Colors used in Quantum Painter are not subject to the RGB lighting CIE curve, if it is enabled.

    - + \ No newline at end of file diff --git a/quantum_painter_lvgl.html b/quantum_painter_lvgl.html index cd634cfece2..81b8a1b33b6 100644 --- a/quantum_painter_lvgl.html +++ b/quantum_painter_lvgl.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -28,7 +28,7 @@ ...Your code to draw // Run LVGL specific code to draw } }

    To init. the display please read the Display Initialisation section.

    WARNING

    Attaching LVGL to a display means LVGL subsequently "owns" the display. Using standard Quantum Painter drawing operations with the display after LVGL attachment will likely result in display artifacts.

    Quantum Painter LVGL Detach

    c
    void qp_lvgl_detach(void)

    The qp_lvgl_detach function stops the internal LVGL ticks and releases resources related to it.

    Enabling/Disabling LVGL features

    You can overwrite LVGL specific features in your lv_conf.h file.

    Changing the LVGL task frequency

    When LVGL is running, your keyboard's responsiveness may decrease, causing missing keystrokes or encoder rotations, especially during the animation of dynamically-generated content. This occurs because LVGL operates as a scheduled task with a default task rate of five milliseconds. While a fast task rate is advantageous when LVGL is responsible for detecting and processing inputs, it can lead to excessive recalculations of displayed content, which may slow down QMK's matrix scanning. If you rely on QMK instead of LVGL for processing inputs, it can be beneficial to increase the time between calls to the LVGL task handler to better match your preferred display update rate. To do this, add this to your config.h:

    c
    #define QP_LVGL_TASK_PERIOD 40
    - + \ No newline at end of file diff --git a/quantum_painter_qff.html b/quantum_painter_qff.html index 1c0632bbada..ad751a4358c 100644 --- a/quantum_painter_qff.html +++ b/quantum_painter_qff.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -47,7 +47,7 @@ uint24_t glyph; // the glyph information, as per ASCII glyphs above } glyph[N]; // N glyphs worth of data } qff_unicode_glyph_table_v1_t;

    Font palette block

    The font palette block is identical to QGF's frame palette block, retaining the same typeid of 0x03.

    It is only specified in the QFF if the font is palette-based, and follows the unicode glyph block if the font contains any Unicode glyphs, or the ASCII glyph block if the font contains only ASCII glyphs.

    Font data block

    The font data block is the last block in the file and is identical to QGF's frame data block, however has a different typeid of 0x04 in QFF.

    - + \ No newline at end of file diff --git a/quantum_painter_qgf.html b/quantum_painter_qgf.html index bef5ed6447a..da38eed780a 100644 --- a/quantum_painter_qgf.html +++ b/quantum_painter_qgf.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -61,7 +61,7 @@ qgf_block_header_v1_t header; // = { .type_id = 0x05, .neg_type_id = (~0x05), .length = N } uint8_t data[N]; // N data octets } qgf_data_v1_t; - + \ No newline at end of file diff --git a/quantum_painter_rle.html b/quantum_painter_rle.html index 72b75bed149..e36e7b4ce77 100644 --- a/quantum_painter_rle.html +++ b/quantum_painter_rle.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -31,7 +31,7 @@ c = READ_OCTET() for i = 0 ... length-1 WRITE_OCTET(c) - + \ No newline at end of file diff --git a/ref_functions.html b/ref_functions.html index 52a07d9cf86..93e054ecd62 100644 --- a/ref_functions.html +++ b/ref_functions.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -56,7 +56,7 @@ } else { // do something if 100ms or more have passed } - + \ No newline at end of file diff --git a/reference_configurator_support.html b/reference_configurator_support.html index efb03b47c68..e45214b1cfc 100644 --- a/reference_configurator_support.html +++ b/reference_configurator_support.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -108,7 +108,7 @@ +{"label": "\u2190", "x", 13.25, "y": 6.25}, +{"label": "\u2193", "x", 14.25, "y": 6.25}, +{"label": "\u2192", "x", 15.25, "y": 6.25},

    A diff showing the changes needed to vertically-offset the arrow keys in our keyboard's JSON file.

    - + \ No newline at end of file diff --git a/reference_glossary.html b/reference_glossary.html index 04eb4c33fb8..7d4f7047d52 100644 --- a/reference_glossary.html +++ b/reference_glossary.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/reference_info_json.html b/reference_info_json.html index d2ce14f8c45..b099fe1715b 100644 --- a/reference_info_json.html +++ b/reference_info_json.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -40,7 +40,7 @@ "breathing": true, "cycle_left_right": false }
  • center_point Array: Number
  • flag_steps Array: Number
  • default
  • driver String Required
  • hue_steps Number
  • layout Array: Object Required
  • led_flush_limit Number
  • led_process_limit Number
  • max_brightness Number
  • react_on_keyup Boolean
  • sat_steps Number
  • sleep Boolean
  • speed_steps Number
  • split_count Array: Number
  • timeout Number
  • val_steps Number
  • Secure

    Configures the Secure feature.

    Split Keyboard

    Configures the Split Keyboard feature.

    Stenography

    Configures the Stenography feature.

    USB

    WS2812

    Configures the WS2812 driver.

    - + \ No newline at end of file diff --git a/reference_keymap_extras.html b/reference_keymap_extras.html index 8af0c1a0a75..2e11341e38e 100644 --- a/reference_keymap_extras.html +++ b/reference_keymap_extras.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -28,7 +28,7 @@ ["SE_ARNG"] ] }

    Sendstring Support

    By default, SEND_STRING() assumes a US ANSI keyboard layout is set. If you are using a different layout, you can include one of the Sendstring LUT headers below in your keymap.c to override the lookup tables used for mapping ASCII characters to keycodes. You do not need to include the corresponding keymap_*.h header, as it is implicit when including the Sendstring header.

    An important thing to note here is that SEND_STRING() only operates on ASCII text. This means that you cannot pass it a string containing Unicode characters - this unfortunately includes accented characters that may be present in your desired layout.
    Many layouts make certain characters, such as Grave or Tilde, available only as dead keys, so you must add a space immediately after it in the string you want to send, to prevent it from potentially combining with the next character.
    Certain other layouts have no Sendstring header as they do not use a Latin-derived alphabet (for example Greek and Russian), and thus there is no way to input most of the ASCII character set.

    Header Files

    These headers are located in quantum/keymap_extras/.

    LayoutKeycodes HeaderSendstring LUT Header
    Canadian Multilingual (CSA)keymap_canadian_multilingual.hsendstring_canadian_multilingual.h
    Croatiankeymap_croatian.hsendstring_croatian.h
    Czechkeymap_czech.hsendstring_czech.h
    Czech (macOS, ANSI)keymap_czech_mac_ansi.hsendstring_czech_mac_ansi.h
    Czech (macOS, ISO)keymap_czech_mac_iso.hsendstring_czech_mac_iso.h
    Danishkeymap_danish.hsendstring_danish.h
    Dutch (Belgium)keymap_belgian.hsendstring_belgian.h
    English (Ireland)keymap_irish.h
    English (UK)keymap_uk.hsendstring_uk.h
    English (US Extended)keymap_us_extended.h
    English (US International)keymap_us_international.hsendstring_us_international.h
    English (US International, Linux)keymap_us_international_linux.h
    Estoniankeymap_estonian.hsendstring_estonian.h
    EurKEYkeymap_eurkey.h
    Farsikeymap_farsi.h
    Finnishkeymap_finnish.hsendstring_finnish.h
    Frenchkeymap_french.hsendstring_french.h
    French (AFNOR)keymap_french_afnor.hsendstring_french_afnor.h
    French (BÉPO)keymap_bepo.hsendstring_bepo.h
    French (Belgium)keymap_belgian.hsendstring_belgian.h
    French (Canada)keymap_canadian_french.hsendstring_canadian_french.h
    French (Switzerland)keymap_swiss_fr.hsendstring_swiss_fr.h
    French (macOS, ISO)keymap_french_mac_iso.hsendstring_french_mac_iso.h
    Germankeymap_german.hsendstring_german.h
    German (Switzerland)keymap_swiss_de.hsendstring_swiss_de.h
    German (macOS)keymap_german_mac_iso.hsendstring_german_mac_iso.h
    German (Neo2)keymap_neo2.h
    Greekkeymap_greek.h
    Hebrewkeymap_hebrew.h
    Hungariankeymap_hungarian.hsendstring_hungarian.h
    Icelandickeymap_icelandic.hsendstring_icelandic.h
    Italiankeymap_italian.hsendstring_italian.h
    Italian (macOS, ANSI)keymap_italian_mac_ansi.hsendstring_italian_mac_ansi.h
    Italian (macOS, ISO)keymap_italian_mac_iso.hsendstring_italian_mac_iso.h
    Japanesekeymap_japanese.hsendstring_japanese.h
    Koreankeymap_korean.h
    Latviankeymap_latvian.hsendstring_latvian.h
    Lithuanian (ĄŽERTY)keymap_lithuanian_azerty.hsendstring_lithuanian_azerty.h
    Lithuanian (QWERTY)keymap_lithuanian_qwerty.hsendstring_lithuanian_qwerty.h
    Norwegiankeymap_norwegian.hsendstring_norwegian.h
    Polishkeymap_polish.h
    Portuguesekeymap_portuguese.hsendstring_portuguese.h
    Portuguese (macOS, ISO)keymap_portuguese_mac_iso.hsendstring_portuguese_mac_iso.h
    Portuguese (Brazil)keymap_brazilian_abnt2.hsendstring_brazilian_abnt2.h
    Romaniankeymap_romanian.hsendstring_romanian.h
    Russiankeymap_russian.h
    Serbiankeymap_serbian.h
    Serbian (Latin)keymap_serbian_latin.hsendstring_serbian_latin.h
    Slovakkeymap_slovak.hsendstring_slovak.h
    Sloveniankeymap_slovenian.hsendstring_slovenian.h
    Spanishkeymap_spanish.hsendstring_spanish.h
    Spanish (Dvorak)keymap_spanish_dvorak.hsendstring_spanish_dvorak.h
    Spanish (Latin America)keymap_spanish_latin_america.hsendstring_spanish_latin_america.h
    Swedishkeymap_swedish.hsendstring_swedish.h
    Swedish (macOS, ANSI)keymap_swedish_mac_ansi.h
    Swedish (macOS, ISO)keymap_swedish_mac_iso.h
    Swedish Pro (macOS, ANSI)keymap_swedish_pro_mac_ansi.h
    Swedish Pro (macOS, ISO)keymap_swedish_pro_mac_iso.h
    Turkish (F)keymap_turkish_f.hsendstring_turkish_f.h
    Turkish (Q)keymap_turkish_q.hsendstring_turkish_q.h
    Ukrainiankeymap_ukrainian.h

    There are also a few which are not quite language-specific, but useful if you are not using a QWERTY layout:

    LayoutKeycodes HeaderSendstring LUT Header
    Colemakkeymap_colemak.hsendstring_colemak.h
    Dvorakkeymap_dvorak.hsendstring_dvorak.h
    Dvorak (French)keymap_dvorak_fr.hsendstring_dvorak_fr.h
    Dvorak (Programmer)keymap_dvorak_programmer.hsendstring_dvorak_programmer.h
    Normankeymap_norman.hsendstring_norman.h
    Ploverkeymap_plover.h
    Plover (Dvorak)keymap_plover_dvorak.h
    Workmankeymap_workman.hsendstring_workman.h
    Workman (ZXCVM)keymap_workman_zxcvm.hsendstring_workman_zxcvm.h
    - + \ No newline at end of file diff --git a/squeezing_avr.html b/squeezing_avr.html index 431940cbb82..772489bd0c6 100644 --- a/squeezing_avr.html +++ b/squeezing_avr.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -87,7 +87,7 @@ #undef ENABLE_RGB_MATRIX_MULTISPLASH #undef ENABLE_RGB_MATRIX_SOLID_SPLASH #undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH

    Final Thoughts

    If you've done all of this, and your firmware is still too large, then it is time to consider making the switch to ARM. There are a number of Pro Micro replacements with an ARM controller:

    There are other, non-Pro Micro compatible boards out there. The most popular being:

    - + \ No newline at end of file diff --git a/support.html b/support.html index c46bc17cfa6..614fe16813e 100644 --- a/support.html +++ b/support.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/support_deprecation_policy.html b/support_deprecation_policy.html index 5d55fa8b4c8..49032def3f8 100644 --- a/support_deprecation_policy.html +++ b/support_deprecation_policy.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/syllabus.html b/syllabus.html index 56726653054..c4a8d9b9d98 100644 --- a/syllabus.html +++ b/syllabus.html @@ -8,17 +8,17 @@ - + - - - + + +
    Skip to content
    - + \ No newline at end of file diff --git a/tap_hold.html b/tap_hold.html index 4fad581fcf2..3ee30664b5a 100644 --- a/tap_hold.html +++ b/tap_hold.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -257,7 +257,7 @@ } return false; // Disable otherwise. }

    Some operating systems or applications assign actions to tapping a modifier key by itself, e.g., tapping GUI to open a start menu. Because Speculative Hold sends a lone modifier key press in some cases, it can falsely trigger these actions. To prevent this, set DUMMY_MOD_NEUTRALIZER_KEYCODE (and optionally MODS_TO_NEUTRALIZE) in your config.h in the same way as described above for Retro Tapping.

    Why do we include the key record for the per key functions?

    One thing that you may notice is that we include the key record for all of the "per key" functions, and may be wondering why we do that.

    Well, it's simple really: customization. But specifically, it depends on how your keyboard is wired up. For instance, if each row is actually using a row in the keyboard's matrix, then it may be simpler to use if (record->event.key.row == 3) instead of checking a whole bunch of keycodes, which is especially good for those people using the tap-hold keys on the home row (see about home row mods here). So, you could fine-tune those to not interfere with your normal typing.

    Why are there no *_kb or *_user functions?!

    Unlike many of the other functions here, there isn't a need (or even reason) to have a quantum- or keyboard-level function. Only user-level functions are useful here, so there is no need to mark them as such.

    - + \ No newline at end of file diff --git a/understanding_qmk.html b/understanding_qmk.html index 2fee83ff21d..cf876376ca6 100644 --- a/understanding_qmk.html +++ b/understanding_qmk.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -56,7 +56,7 @@ {0,0,0,0}, {0,0,0,0} }

    Comparing against our keymap we can see that the pressed key is KC_NUM. From here we dispatch to the process_record set of functions.

    Process Record

    The process_record() function itself is deceptively simple, but hidden within is a gateway to overriding functionality at various levels of QMK. The chain of events is listed below, using cluecard whenever we need to look at the keyboard/keymap level functions. Depending on options set in rules.mk or elsewhere, only a subset of the functions below will be included in final firmware.

    At any step during this chain of events a function (such as process_record_kb()) can return false to halt all further processing.

    After this is called, post_process_record() is called, which can be used to handle additional cleanup that needs to be run after the keycode is normally handled.

    - + \ No newline at end of file diff --git a/unit_testing.html b/unit_testing.html index 90349a49052..c47c7f0d9e4 100644 --- a/unit_testing.html +++ b/unit_testing.html @@ -8,11 +8,11 @@ - + - - - + + + @@ -24,7 +24,7 @@ );

    Similarly, KEYCODE_STRING_NAMES_KB may be defined to add names at the keyboard level.

    Tracing Variables

    Sometimes you might wonder why a variable gets changed and where, and this can be quite tricky to track down without having a debugger. It's of course possible to manually add print statements to track it, but you can also enable the variable trace feature. This works for both variables that are changed by the code, and when the variable is changed by some memory corruption.

    To take the feature into use add VARIABLE_TRACE=x to the end of you make command. x represents the number of variables you want to trace, which is usually 1.

    Then at a suitable place in the code, call ADD_TRACED_VARIABLE, to begin the tracing. For example to trace all the layer changes, you can do this

    c
    void matrix_init_user(void) {
       ADD_TRACED_VARIABLE("layer", &layer_state, sizeof(layer_state));
     }

    This will add a traced variable named "layer" (the name is just for your information), which tracks the memory location of layer_state. It tracks 4 bytes (the size of layer_state), so any modification to the variable will be reported. By default you can not specify a size bigger than 4, but you can change it by adding MAX_VARIABLE_TRACE_SIZE=x to the end of the make command line.

    In order to actually detect changes to the variables you should call VERIFY_TRACED_VARIABLES around the code that you think that modifies the variable. If a variable is modified it will tell you between which two VERIFY_TRACED_VARIABLES calls the modification happened. You can then add more calls to track it down further. I don't recommend spamming the codebase with calls. It's better to start with a few, and then keep adding them in a binary search fashion. You can also delete the ones you don't need, as each call need to store the file name and line number in the ROM, so you can run out of memory if you add too many calls.

    Also remember to delete all the tracing code once you have found the bug, as you wouldn't want to create a pull request with tracing code.

    - + \ No newline at end of file