summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--ClipboardPicker.5eaa709d18d0b99394f7.js3
-rw-r--r--ClipboardPicker.5eaa709d18d0b99394f7.js.LICENSE.txt1
-rw-r--r--FileSystemPicker.d88c8c732daa8f33f0b9.js3
-rw-r--r--FileSystemPicker.d88c8c732daa8f33f0b9.js.LICENSE.txt1
-rw-r--r--index.html2
-rw-r--r--keyboard-data/adv360pro-json-metadata.bc948c3155b6a0e37bcb.js1
-rw-r--r--keyboard-data/ergodox-json-metadata.130bfa082550dfb7309c.js1
-rw-r--r--keyboard-data/hillside46-json-metadata.ea98e13243cbd23816c3.js1
-rw-r--r--keyboard-data/hw75_keyboard-json-metadata.12e6956227fc38b1671a.js1
-rw-r--r--runtime.fabd54b8945f923d7b52.js2
-rw-r--r--shared.bbc21a8ffa35b41e3140.js2
11 files changed, 17 insertions, 1 deletions
diff --git a/ClipboardPicker.5eaa709d18d0b99394f7.js b/ClipboardPicker.5eaa709d18d0b99394f7.js
new file mode 100644
index 0000000..d042335
--- /dev/null
+++ b/ClipboardPicker.5eaa709d18d0b99394f7.js
@@ -0,0 +1,3 @@
+/*! For license information please see ClipboardPicker.5eaa709d18d0b99394f7.js.LICENSE.txt */
+(self.webpackChunkapp=self.webpackChunkapp||[]).push([[5708],{18e3:function(t,e,r){"use strict";r.r(e),r.d(e,{ClipboardPicker:function(){return xe},default:function(){return ke}});var n=r(50361),o=r.n(n),i=r(67294),a=r(6121);function c(t,e){(0,a.Kz)("CLIPBOARD_UPDATE_KEYMAP",{keyboard:t,keymap:u(e)})}function u(t){return{warningFlags:t.warningFlags,layers:t.layers.length,behaviors:t.behaviors.length,combos:t.combos.length,macros:t.macros.length}}var l=r(97168),s=r(57557),f=r.n(s);function y(t){return y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},y(t)}function p(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function h(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?p(Object(r),!0).forEach((function(e){d(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):p(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function d(t,e,r){return(e=m(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function v(t,e){for(var r=0;r<e.length;r++){var n=e[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(t,m(n.key),n)}}function m(t){var e=function(t,e){if("object"!==y(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==y(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===y(e)?e:String(e)}var b=new(function(){function t(e){!function(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}(this,t),this.prefix=e,this._slots=JSON.parse(localStorage.getItem(this._slotKey(""))||"[]")}var e,r;return e=t,(r=[{key:"_slotKey",value:function(t){var e="".concat(this.prefix,"_slots");return t?"".concat(e,":").concat(t):e}},{key:"_selectionKey",value:function(){return"".concat(this.prefix,"_selected_slot")}},{key:"_flushSlots",value:function(){localStorage.setItem(this._slotKey(""),JSON.stringify(this._slots))}},{key:"keyboards",get:function(){return JSON.parse(localStorage.getItem(this._slotKey(""))||"[]")},set:function(t){localStorage.setItem(this._slotKey("",JSON.stringify(t)))}},{key:"getEntry",value:function(t){return JSON.parse(localStorage.getItem(this._slotKey(t))||"null")}},{key:"setEntry",value:function(t,e){var r;localStorage.setItem(this._slotKey(t),JSON.stringify(f()(e,"keymap")));var n=this._slots.findIndex((function(e){return e.id===t}));-1===n?this._slots.push({id:t,name:e.name}):!this._slots[n].name&&null!==(r=e.metadata)&&void 0!==r&&r.name&&(this._slots[n]=h(h({},this._slots[n]),{},{name:e.metadata.name})),this._flushSlots()}},{key:"removeKeyboard",value:function(t){var e=this._slots.findIndex((function(e){return e.id===t}));-1!==e&&(this._slots.splice(e,1),this._flushSlots()),localStorage.removeItem(this._slotKey(t))}},{key:"selectKeyboard",value:function(t){localStorage.setItem(this._selectionKey(),JSON.stringify(t))}},{key:"getSelectedKeyboard",value:function(){return JSON.parse(localStorage.getItem(this._selectionKey())||"null")}}])&&v(e.prototype,r),Object.defineProperty(e,"prototype",{writable:!1}),t}())("keymap_editor_clipboard"),g=r(85893);function w(t){return w="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},w(t)}function j(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function O(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?j(Object(r),!0).forEach((function(e){x(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):j(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function x(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==w(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==w(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===w(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function A(t){return function(t){if(Array.isArray(t))return S(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||k(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function k(t,e){if(t){if("string"==typeof t)return S(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?S(t,e):void 0}}function S(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var E={keyboardId:null,isCustom:!0,keymap:null,keymapRaw:'/ {\n keymap {\n compatible = "zmk,keymap";\n };\n};\n',metadata:null,metadataRaw:""};function _(){var t,e=b.getSelectedKeyboard(),r=A(b._slots),n=e||(null===(t=r[0])||void 0===t?void 0:t.id),o=b.getEntry(n),i=(null==o?void 0:o.keyboardId)||"custom",a=(null==o?void 0:o.isCustom)||"custom"===i,c=null==o?void 0:o.keymapRaw;return{keyboards:r,selectedKeyboard:n,addModalOpen:!c,feedbackModalOpen:!1,selection:{keyboardId:i,isCustom:a,keymap:null,keymapRaw:c,metadata:null==o?void 0:o.metadata,metadataRaw:null==o?void 0:o.metadataRaw},pending:{}}}var L=(0,l.oM)({name:"clipboard-picker",initialState:_,reducers:{selectedKeyboard:function(t,e){t.selectedKeyboard!==e.payload.keyboard&&(t.selectedKeyboard=e.payload.keyboard,t.selection=b.getEntry(t.selectedKeyboard)||E,b.selectKeyboard(t.selectedKeyboard))},addKeyboard:function(t,e){var r=e.payload.id;b.setEntry(r,E),t.keyboards=A(b._slots)},removedKeyboard:function(t,e){var r=e.payload.id;b.removeKeyboard(r),t.keyboards=A(b._slots)},updatedKeyboard:function(t,e){var r=e.payload,n=r.keyboardId,o=r.isCustom,i=void 0!==o&&o,a=r.metadataRaw,c=r.metadata,u=r.keymapRaw,l=r.keymap;t.selection.keyboardId=n,t.selection.isCustom=i,t.selection.metadata=c,t.selection.metadataRaw=a,t.selection.keymap=l,t.selection.keymapRaw=u,b.setEntry(t.selectedKeyboard,t.selection)},updatedKeymap:function(t,e){var r=e.payload,n=r.raw,o=r.parsed;t.selection.keymap=o,t.selection.keymapRaw=n},parsedKeymap:function(t,e){t.selection.keymap=e.payload.keymap},parsedKeymapWithErrors:function(t,e){t.selection.keymapErrors=e.payload.error},openAddModal:function(t){if(t.addModalOpen=!0,t.pending=t.selection,t.pending.metadataRaw&&!t.pending.metadata)try{t.pending.metadata=JSON.parse(t.pending.metadataRaw)}catch(t){}},closeAddModal:function(t){t.addModalOpen=!1},openFeedbackModal:function(t){t.feedbackModalOpen=!0},closeFeedbackModal:function(t){t.feedbackModalOpen=!1}}}),P=(0,i.createContext)([{},{}]);function C(t){var e,r=t.children,n=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||k(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,i.useReducer)(L.reducer,null,_),2),o=n[0],a=(e=n[1],(0,i.useMemo)((function(){return Object.keys(L.actions).reduce((function(t,r){return t[r]=function(){var t;return e((t=L.actions)[r].apply(t,arguments))},t}),{})}),[e]));return(0,g.jsx)(P.Provider,{value:[o,a],children:r})}function I(){return(0,i.useContext)(P)}var N=r(93379),K=r.n(N),T=r(7795),D=r.n(T),B=r(90569),G=r.n(B),F=r(3565),M=r.n(F),R=r(19216),U=r.n(R),Y=r(44589),Z=r.n(Y),z=r(8153),q={};q.styleTagTransform=Z(),q.setAttributes=M(),q.insert=G().bind(null,"head"),q.domAPI=D(),q.insertStyleElement=U(),K()(z.Z,q);var J=z.Z&&z.Z.locals?z.Z.locals:void 0,$=r(69247),Q=r(41051),W=r(18446),V=r.n(W),H=r(95998),X=r(83858),tt=r.n(X),et=r(33295),rt=r.n(et);function nt(t){return nt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},nt(t)}function ot(){ot=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof y?e:y,a=Object.create(i.prototype),c=new k(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function y(){}function p(){}function h(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=h.prototype=y.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==nt(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=O(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function x(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function k(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(x,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=h,n(b,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:p,configurable:!0}),p.displayName=u(h,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,k.prototype={constructor:k,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(A),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function it(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function at(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){it(i,n,o,a,c,"next",t)}function c(t){it(i,n,o,a,c,"throw",t)}a(void 0)}))}}function ct(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var ut=function(t){var e;return null===(e=t.keyboard)||void 0===e?void 0:e.keymap},lt=r(64261),st=r(96186),ft=r(27926);function yt(t){return yt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},yt(t)}var pt=["value","onChange"];function ht(){ht=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof y?e:y,a=Object.create(i.prototype),c=new k(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function y(){}function p(){}function h(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=h.prototype=y.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==yt(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=O(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function x(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function k(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(x,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=h,n(b,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:p,configurable:!0}),p.displayName=u(h,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,k.prototype={constructor:k,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(A),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function dt(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function vt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function mt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?vt(Object(r),!0).forEach((function(e){bt(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):vt(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function bt(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==yt(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==yt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===yt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function gt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function wt(t){var e=t.value,r=t.onChange,n=function(t,e){if(null==t)return{};var r,n,o=function(t,e){if(null==t)return{};var r,n,o={},i=Object.keys(t);for(n=0;n<i.length;n++)r=i[n],e.indexOf(r)>=0||(o[r]=t[r]);return o}(t,e);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);for(n=0;n<i.length;n++)r=i[n],e.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(t,r)&&(o[r]=t[r])}return o}(t,pt),o=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return gt(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?gt(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,i.useState)({raw:e,parsed:null}),2),a=o[0].raw,c=o[1];(0,i.useEffect)((function(){c((function(t){return mt(mt({},t),{},{raw:e})}))}),[e,c]);var u=(0,i.useCallback)((function(t){var e=t.target.value;c((function(t){return mt(mt({},t),{},{raw:e})}))}),[c]);return(0,i.useEffect)((function(){function t(){var e;return e=ht().mark((function t(){var e;return ht().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,rt()(a);case 3:e=t.sent,c((function(t){return mt(mt({},t),{},{parsed:e})})),r({raw:a,parsed:e}),t.next=12;break;case 8:throw t.prev=8,t.t0=t.catch(0),console.error("Failed to parse keymap",t.t0),t.t0;case 12:case"end":return t.stop()}}),t,null,[[0,8]])})),t=function(){var t=this,r=arguments;return new Promise((function(n,o){var i=e.apply(t,r);function a(t){dt(i,n,o,a,c,"next",t)}function c(t){dt(i,n,o,a,c,"throw",t)}a(void 0)}))},t.apply(this,arguments)}a&&function(){t.apply(this,arguments)}()}),[a,c,r]),(0,g.jsx)("textarea",mt({onChange:u,value:a},n))}var jt=r(98553),Ot=r(91829),xt=r(42507),At=r(80993),kt=r(80031);function St(t){return St="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},St(t)}function Et(){Et=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof y?e:y,a=Object.create(i.prototype),c=new k(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function y(){}function p(){}function h(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=h.prototype=y.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==St(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=O(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function x(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function k(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(x,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=h,n(b,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:p,configurable:!0}),p.displayName=u(h,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,k.prototype={constructor:k,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(A),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function _t(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function Lt(t,e){if(t){if("string"==typeof t)return Pt(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Pt(t,e):void 0}}function Pt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var Ct,It=[{id:"custom",name:"Custom..."}].concat(function(t){if(Array.isArray(t))return Pt(t)}(Ct=Object.values(jt))||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(Ct)||Lt(Ct)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}());function Nt(t){var e=t.keyboardId,n=t.metadata,o=t.metadataRaw,a=t.onChange,c=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||Lt(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,Ot.Z)(!o),3),u=c[0],l=c[1],s=c[2],f=(0,i.useMemo)((function(){return It.find((function(t){return t.id===e}))}),[e]),y="custom"!==e||!!n,p=(0,i.useCallback)((function(){y&&l()}),[y,l]),h=(0,i.useCallback)(function(){var t,e=(t=Et().mark((function t(e){var n;return Et().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if("custom"!==e.id){t.next=5;break}a({keyboardId:"custom",isCustom:!0,raw:"",parsed:null}),s(),t.next=15;break;case 5:return t.prev=5,t.next=8,r(25105)("./".concat(e.id,".json"));case 8:n=t.sent,a({isCustom:!1,keyboardId:e.id,parsed:n,raw:""}),t.next=15;break;case 12:t.prev=12,t.t0=t.catch(5),console.error("Failed to load metadata for ".concat(e.id),t.t0);case 15:case"end":return t.stop()}}),t,null,[[5,12]])})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){_t(i,n,o,a,c,"next",t)}function c(t){_t(i,n,o,a,c,"throw",t)}a(void 0)}))});return function(t){return e.apply(this,arguments)}}(),[a,s]),d=(0,i.useCallback)((function(t){var e=t.raw,r=t.parsed,n=t.errors;a({keyboardId:f.id,isCustom:"custom"===f.id,raw:e,parsed:r,errors:n})}),[a,f]);return(0,g.jsxs)("article",{className:J.source,"data-collapsible":"custom"!==e||!!n,"data-expanded":u,children:[(0,g.jsxs)("h2",{children:[(0,g.jsx)("span",{onClick:p,children:"Keyboard"})," ",(0,g.jsx)("div",{style:{display:"inline-block",fontSize:"initial",fontWeight:"normal",verticalAlign:"middle"},children:(0,g.jsx)(At.Z,{value:f,onChange:h,options:It,getOptionValue:function(t){return t.id},getOptionLabel:function(t){return t.name}})})]}),"custom"===(null==f?void 0:f.id)&&(0,g.jsxs)("section",{className:J.sourceContent,children:[(0,g.jsx)("p",{children:"In order to understand what keyboard you're using and how to display it visually, please paste the JSON source metadata file below."}),n&&(0,g.jsxs)("p",{children:["Parsed metadata for: ",n.name]}),(0,g.jsx)(xt.Z,{cols:80,rows:n?22:5,wrap:"off",spellCheck:!1,value:o,onChange:d}),!n&&(0,g.jsxs)("div",{className:J.metadataHelp,children:[(0,g.jsx)("h3",{children:"Not sure what to put here?"}),(0,g.jsxs)("p",{children:["The ",(0,g.jsx)("em",{children:"Keymap Editor"})," app depends on a defined keyboard layout both to provide a friendly graphical representation to edit and a readable textual representation. You can learn more about this at ",kt.Jh,"."]}),(0,g.jsxs)("p",{children:["Note: If your keyboard works with QMK's Configurator you may be able to quickly get a visual representation by pasting the contents of that keyboard's ",(0,g.jsx)("code",{children:"info.json"})," file here."]})]})]})]})}function Kt(t){return Kt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Kt(t)}function Tt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Dt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Tt(Object(r),!0).forEach((function(e){Bt(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Tt(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function Bt(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==Kt(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Kt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Kt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Gt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function Ft(t){var e=t.initial,r=void 0===e?Mt:e,n=t.onSubmit,o=t.onCancel,a=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Gt(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Gt(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,i.useState)(r),2),c=a[0],u=a[1],l=(0,i.useCallback)((function(t){u((function(e){return Dt(Dt({},e),{},{keyboardId:t.keyboardId,isCustom:t.isCustom,metadataRaw:t.raw,metadata:t.parsed})}))}),[u]),s=(0,i.useCallback)((function(t){var e=t.raw,r=t.parsed;u((function(t){return Dt(Dt({},t),{},{keymapRaw:e,keymap:r})}))}),[u]),f=(0,i.useCallback)((function(){n(c)}),[c,n]),y=!c.metadata||!c.keymap;return(0,g.jsx)(lt.Z,{onDismiss:o,children:(0,g.jsxs)(st.Z,{style:{maxWidth:"640px"},dismissText:null,children:[(0,g.jsx)(Nt,{keyboardId:c.keyboardId,isCustom:c.isCustom,metadata:c.metadata,metadataRaw:c.metadataRaw,onChange:l}),(0,g.jsx)("h2",{children:"Keymap"}),(0,g.jsxs)("p",{children:["Paste the devicetree source from your ",(0,g.jsx)("code",{children:".keymap"})," file below."]}),(0,g.jsxs)("p",{children:["You can ",(0,g.jsx)("em",{children:"technically"})," make changes directly to the DeviceTree code here, but this isn't intended as an editor."]}),(0,g.jsx)(wt,{cols:80,rows:22,wrap:"off",spellCheck:!1,value:c.keymapRaw,onChange:s}),(0,g.jsxs)("p",{style:{textAlign:"center"},children:[(0,g.jsx)(ft.Z,{disabled:y,onClick:f,children:"Set Keymap"}),(0,g.jsx)(ft.Z,{onClick:o,secondary:!0,children:"Cancel"})]})]})})}function Mt(){return{keyboardId:null,isCustom:!1,metadataRaw:"",metadata:null,keymapRaw:Rt,keymap:null}}var Rt='/ {\n keymap {\n compatible = "zmk,keymap";\n };\n};\n';function Ut(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function Yt(t){var e=t.onSubmit,r=t.onCancel,n=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Ut(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ut(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(I(),2),o=n[0].selection,a=n[1].updatedKeyboard,u=(0,i.useCallback)((function(t){a(t),c(t.keyboardId,t.keymap),e()}),[a,e]);return(0,g.jsx)(Ft,{initial:o,onSubmit:u,onCancel:r})}function Zt(t){return Zt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zt(t)}function zt(){zt=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof y?e:y,a=Object.create(i.prototype),c=new k(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function y(){}function p(){}function h(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=h.prototype=y.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==Zt(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=O(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function x(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function k(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(x,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=h,n(b,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:p,configurable:!0}),p.displayName=u(h,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,k.prototype={constructor:k,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(A),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function qt(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function Jt(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){qt(i,n,o,a,c,"next",t)}function c(t){qt(i,n,o,a,c,"throw",t)}a(void 0)}))}}function $t(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Qt(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?$t(Object(r),!0).forEach((function(e){Wt(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):$t(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function Wt(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==Zt(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Zt(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Zt(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Vt(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Ht(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ht(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Ht(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function Xt(){var t=Vt(I(),1)[0].selection,e=function(){var t=(0,H.v9)(ut),e=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ct(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ct(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(I(),2),r=e[0].selection,n=e[1].updatedKeymap;return[(0,i.useMemo)((function(){return t&&r.keymap&&!V()(t,r.keymap)}),[t,r.keymap]),(0,i.useCallback)(at(ot().mark((function e(){var i,a,u,l,s,f,y,p,h;return ot().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return i=r.metadata,a=i.id,u=i.layouts,l=t.chosen["zmk,matrix_transform"]?t.chosen["zmk,matrix_transform"].replace(/^&/,""):null,s=Object.keys(u)[0],f=u[l]||u[s],y=f.layout,e.prev=4,e.next=7,tt()(y,o()(t),r.keymapRaw);case 7:return p=e.sent,e.next=10,rt()(p);case 10:return h=e.sent,n({raw:p,parsed:h}),c(a,h),e.abrupt("return",p);case 16:throw e.prev=16,e.t0=e.catch(4),console.error("Failed to update/parse",t),console.error(e.t0),e.t0;case 21:case"end":return e.stop()}}),e,null,[[4,16]])}))),[t,r,n])]}(),r=Vt(e,2),n={updateNeeded:r[0],update:r[1]};return(0,g.jsxs)(g.Fragment,{children:[t.keymap&&(0,g.jsx)(te,Qt({},n)),t.keymap&&(0,g.jsx)(ee,Qt({},n))]})}function te(t){var e=t.updateNeeded,r=t.update,n=Vt(I(),1)[0].selectedKeyboard,o=Vt((0,lt.X)(),3),a=o[0],c=o[1],u=o[2],l=(0,i.useCallback)(Jt(zt().mark((function t(){return zt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(!e){t.next=3;break}return t.next=3,r();case 3:c();case 4:case"end":return t.stop()}}),t)}))),[c,r,e]);if(n)return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)($.zx,{onClick:l,title:"View/update keymap code",children:"Keymap"}),a&&(0,g.jsx)(Yt,{onSubmit:u,onCancel:u})]})}function ee(t){var e=t.updateNeeded,r=t.update,n=e?"Copy updated keymap":"No changes",o=Vt(I(),1)[0].selection,a=Vt((0,i.useState)(!1),2),c=a[0],u=a[1],l=(0,i.useCallback)(Jt(zt().mark((function t(){var e;return zt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,r();case 3:return e=t.sent,t.next=6,navigator.clipboard.writeText(e);case 6:u(!0),setTimeout((function(){return u(!1)}),1500),t.next=14;break;case 10:t.prev=10,t.t0=t.catch(0),console.error("Clipboard write failed"),console.log(t.t0);case 14:case"end":return t.stop()}}),t,null,[[0,10]])}))),[r]);return o.keymap?(0,g.jsx)($.zx,{title:n,disabled:!e,className:J.copyButton,onClick:l,"data-show-copied":c,children:(0,g.jsx)(Q.Z,{name:e?"clipboard-list":"clipboard-check"})}):null}function re(t){return re="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},re(t)}function ne(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function oe(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?ne(Object(r),!0).forEach((function(e){ie(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):ne(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function ie(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==re(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==re(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===re(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function ae(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function ce(t){var e=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ae(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ae(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(I(),2)[1].openAddModal;return(0,g.jsx)("button",oe(oe({onClick:e},t),{},{children:"New Keyboard"}))}function ue(t){return ue="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ue(t)}function le(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function se(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==ue(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==ue(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===ue(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function fe(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ye(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ye(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ye(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function pe(){var t=fe(I(),2),e=t[0],r=e.keyboards,n=e.selectedKeyboard,o=t[1].selectedKeyboard,a=(0,i.useMemo)((function(){return r.find((function(t){return t.id===n}))}),[r,n]),c=(0,i.useCallback)((function(t){o({keyboard:t.id})}),[o]);return 0===r.length?(0,g.jsx)(ce,{}):(0,g.jsx)(At.Z,{label:"Keyboard",value:a,options:r,onChange:c,getOptionLabel:function(t){return t.name||"<unnamed>"},getOptionValue:function(t){return t.id},formatOptionLabel:he,children:(0,g.jsx)(ce,{style:{width:"100%"}})})}function he(t,e){var r=e.context,n=t.name||(0,g.jsx)("em",{children:"[unnamed]"});return"value"===r?n:(0,g.jsx)(de,function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?le(Object(r),!0).forEach((function(e){se(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):le(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({},t))}function de(t){var e=t.id,r=t.name,n=fe(I(),2),o=n[0],a=o.keyboards,c=o.selectedKeyboard,u=n[1],l=u.selectedKeyboard,s=u.removedKeyboard,f=(0,i.useCallback)((function(t){t.stopPropagation();var n='Remove "'.concat(r,'"? This operation cannot be undone.'),o=e===c,i=a.find((function(t){return t.id!==e}));window.confirm(n)&&(o&&i&&l({keyboard:i.id}),s({id:e}))}),[e,r,a,c,l,s]);return(0,g.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",gap:"10px",alignItems:"center"},children:[r||(0,g.jsx)("em",{children:"[unnamed]"})," ",(0,g.jsx)(Q.Z,{title:"Delete keyboard",name:"times-circle",style:{cursor:"pointer",fontSize:"80%"},onClick:f})]})}function ve(t){return ve="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ve(t)}function me(){me=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof y?e:y,a=Object.create(i.prototype),c=new k(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function y(){}function p(){}function h(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=h.prototype=y.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==ve(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=O(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function O(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,O(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function x(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function A(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function k(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(x,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:E}}function E(){return{value:void 0,done:!0}}return p.prototype=h,n(b,"constructor",{value:h,configurable:!0}),n(h,"constructor",{value:p,configurable:!0}),p.displayName=u(h,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,h):(t.__proto__=h,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,k.prototype={constructor:k,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(A),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),A(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;A(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function be(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function ge(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function we(){var t=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ge(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ge(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(I(),2),e=t[0].selection,r=e.keyboardId,n=e.keymapRaw,o=t[1].parsedKeymap,c=(0,i.useCallback)(function(){var t,e=(t=me().mark((function t(e){var n;return me().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.prev=0,t.next=3,rt()(e);case 3:n=t.sent,o({keymap:n}),t.next=12;break;case 7:throw t.prev=7,t.t0=t.catch(0),console.error("Failed to parse keymap",t.t0),i=r,(0,a.Kz)("CLIPBOARD_PARSE_ERROR",{keyboard:i}),t.t0;case 12:case"end":return t.stop()}var i}),t,null,[[0,7]])})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){be(i,n,o,a,c,"next",t)}function c(t){be(i,n,o,a,c,"throw",t)}a(void 0)}))});return function(t){return e.apply(this,arguments)}}(),[r,o]);(0,i.useEffect)((function(){n&&c(n)}),[c,n])}function je(t){return je="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},je(t)}function Oe(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function xe(t){var e=t.onSelect;t.onError,we();var r=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Oe(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Oe(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}(I(),2),n=r[0],c=n.addModalOpen,l=n.selection,s=l.keymap,f=l.metadata,y=r[1],p=y.closeAddModal,h=y.selectedKeyboard,d=y.addKeyboard,v=y.updatedKeyboard,m=(0,i.useCallback)((function(t,r){var n=r.id,i=r.layouts,c=r.sensors,l=void 0===c?[]:c,s=t.chosen["zmk,matrix_transform"]?t.chosen["zmk,matrix_transform"].replace(/^&/,""):null;if("object"===je(i)){var f=Object.keys(i)[0],y=i[s]||i[f];!function(t,e){(0,a.Kz)("CLIPBOARD_SELECT_KEYBOARD",{keyboard:t,keymap:u(e)})}(n,t),e(o()({source:"clipboard",keyboard:n,layoutMetadata:y,layout:y.layout,keymap:t,sensors:l}))}else console.error("Invalid metadata loaded",r)}),[e]);(0,i.useEffect)((function(){s&&f&&m(s,f)}),[m,s,f]);var b=(0,i.useCallback)((function(t){p();var e=Date.now();d({id:e}),h({keyboard:e}),v(t),function(t,e){(0,a.Kz)("CLIPBOARD_ADD_KEYBOARD",{keyboard:t,keymap:u(e)})}(t.keyboardId,t.keymap)}),[d,h,v,p]);return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)(pe,{}),(0,g.jsx)(Xt,{}),c&&(0,g.jsx)(Ft,{onSubmit:b,onCancel:p})]})}r(2968).Z;var Ae,ke=(Ae=xe,function(t){return(0,g.jsx)(C,{children:(0,g.jsx)(Ae,O({},t))})})},8153:function(t,e,r){"use strict";var n=r(87537),o=r.n(n),i=r(23645),a=r.n(i)()(o());a.push([t.id,'.fnnwBtqwiwSQgnuN5sqg[data-collapsible="true"] h2 {\n cursor: pointer;\n}\n\n.meN56P3rXkTYWdDY0oZq {\n height: auto;\n transition: height 100ms ease-out;\n}\n\n.H4OUxP43w5pZ9RYBB72x {\n background-color: rgba(0, 0, 0, 0.1);\n margin: 10px;\n padding: 0 10px;\n border-radius: 4px;\n}\n\n[data-expanded="false"] .meN56P3rXkTYWdDY0oZq {\n height: 0;\n overflow: hidden;\n}\n\n[data-expanded="false"] h2 {\n margin-bottom: 0;\n}\n\n.eVrbmh_w8MbnDUOfUD2N {\n position: relative;\n}\n.eVrbmh_w8MbnDUOfUD2N span {\n font-size: 120%;\n margin: auto 5px;\n}\n\n.eVrbmh_w8MbnDUOfUD2N[data-show-copied="true"]::after {\n content: "Copied!";\n position: absolute;\n right: -5px;\n top: 50%;\n\n transform: translate(100%, -50%);\n background-color: var(--selection);\n color: white;\n padding: 10px;\n border-radius: 4px;\n\n animation: normal 1.5s h0IIQBfKFzrLn6r9v5qG;\n}\n\n@keyframes h0IIQBfKFzrLn6r9v5qG {\n 0% { opacity: 0; width: 0; margin-left: -100%; }\n 2.5% { opacity: 1; width: auto; }\n 75% { opacity: 1; margin-left: 0; }\n 100% { opacity: 0; }\n}',"",{version:3,sources:["webpack://./src/Sources/Clipboard/styles.module.css"],names:[],mappings:"AAAA;EACE,eAAe;AACjB;;AAEA;EACE,YAAY;EACZ,iCAAiC;AACnC;;AAEA;EACE,oCAAoC;EACpC,YAAY;EACZ,eAAe;EACf,kBAAkB;AACpB;;AAEA;EACE,SAAS;EACT,gBAAgB;AAClB;;AAEA;EACE,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;AACpB;AACA;EACE,eAAe;EACf,gBAAgB;AAClB;;AAEA;EACE,kBAAkB;EAClB,kBAAkB;EAClB,WAAW;EACX,QAAQ;;EAER,gCAAgC;EAChC,kCAAkC;EAClC,YAAY;EACZ,aAAa;EACb,kBAAkB;;EAElB,2CAA+B;AACjC;;AAEA;EACE,KAAK,UAAU,EAAE,QAAQ,EAAE,kBAAkB,EAAE;EAC/C,OAAO,UAAU,EAAE,WAAW,EAAE;EAChC,MAAM,UAAU,EAAE,cAAc,EAAE;EAClC,OAAO,UAAU,EAAE;AACrB",sourcesContent:['.source[data-collapsible="true"] h2 {\n cursor: pointer;\n}\n\n.sourceContent {\n height: auto;\n transition: height 100ms ease-out;\n}\n\n.metadataHelp {\n background-color: rgba(0, 0, 0, 0.1);\n margin: 10px;\n padding: 0 10px;\n border-radius: 4px;\n}\n\n[data-expanded="false"] .sourceContent {\n height: 0;\n overflow: hidden;\n}\n\n[data-expanded="false"] h2 {\n margin-bottom: 0;\n}\n\n.copyButton {\n position: relative;\n}\n.copyButton span {\n font-size: 120%;\n margin: auto 5px;\n}\n\n.copyButton[data-show-copied="true"]::after {\n content: "Copied!";\n position: absolute;\n right: -5px;\n top: 50%;\n\n transform: translate(100%, -50%);\n background-color: var(--selection);\n color: white;\n padding: 10px;\n border-radius: 4px;\n\n animation: normal 1.5s popInOut;\n}\n\n@keyframes popInOut {\n 0% { opacity: 0; width: 0; margin-left: -100%; }\n 2.5% { opacity: 1; width: auto; }\n 75% { opacity: 1; margin-left: 0; }\n 100% { opacity: 0; }\n}'],sourceRoot:""}]),a.locals={source:"fnnwBtqwiwSQgnuN5sqg",sourceContent:"meN56P3rXkTYWdDY0oZq",metadataHelp:"H4OUxP43w5pZ9RYBB72x",copyButton:"eVrbmh_w8MbnDUOfUD2N",popInOut:"h0IIQBfKFzrLn6r9v5qG"},e.Z=a},25105:function(t,e,r){var n={"./a_dux.json":[73158,4843],"./adv360pro.json":[41843,2259],"./bat43.json":[60888,1038],"./bdn9_rev2.json":[94591,1522],"./bfo9000.json":[19684,4962],"./boardsource3x4.json":[88602,4260],"./boardsource5x12.json":[8058,5356],"./bt60_v1.json":[92628,3826],"./bt60_v1_hs.json":[84628,2838],"./bt60_v2.json":[9417,504],"./bt65_v1.json":[88455,5422],"./bt75_v1.json":[25397,2921],"./chalice.json":[7936,4830],"./clog.json":[31638,2169],"./contra.json":[42718,8409],"./corne.json":[26453,7038],"./corneish_zen.json":[39757,4213],"./cradio.json":[62089,8451],"./crbn.json":[48945,4959],"./eek.json":[63072,2757],"./elephant42.json":[83634,7997],"./ergodash.json":[68972,47],"./ergodox.json":[75507,1325],"./eternal_keypad.json":[69416,4415],"./eternal_keypad_lefty.json":[56785,2284],"./ferris_rev02.json":[97365,1145],"./fourier.json":[14446,7905],"./glove80.json":[68676,1206],"./helix.json":[73549,7316],"./hillside46.json":[85162,3804],"./hummingbird.json":[98321,3394],"./hw75_keyboard.json":[80629,3283],"./iris.json":[55262,9134],"./jian.json":[46228,944],"./jiran.json":[14465,9707],"./jorne.json":[19151,2308],"./kbdfans_tofu65_v2.json":[7450,320],"./knob_goblin.json":[71497,6528],"./kyria.json":[34458,8642],"./kyria_rev2.json":[70165,4156],"./kyria_rev3.json":[33669,3895],"./leeloo.json":[53677,6158],"./leeloo_micro.json":[88615,6274],"./leeloo_rev2.json":[32871,8301],"./lily58.json":[21479,6324],"./lotus58.json":[63918,5],"./lpgalaxy_blank_slate.json":[73838,3504],"./m60.json":[53132,4070],"./microdox.json":[56792,8813],"./murphpad.json":[8662,8374],"./naked60.json":[79707,5810],"./nibble.json":[58244,2939],"./nice60.json":[41501,7218],"./osprette.json":[13467,7110],"./pancake.json":[19011,630],"./planck_rev6.json":[55991,8284],"./preonic_rev3.json":[47308,5533],"./qaz.json":[46923,6360],"./quefrency.json":[23956,5272],"./redox.json":[17104,1616],"./reviung34.json":[66147,3755],"./reviung41.json":[71414,327],"./reviung5.json":[31009,1718],"./reviung53.json":[48596,9115],"./romac.json":[15683,2135],"./romac_plus.json":[55318,3039],"./s40nc.json":[56036,3197],"./slicemk_ergodox.json":[5086,9699],"./snap.json":[24380,8415],"./sofle.json":[45082,8729],"./splitkb_aurora_corne.json":[20216,9351],"./splitkb_aurora_lily58.json":[2674,5634],"./splitkb_aurora_sofle.json":[40194,639],"./splitkb_aurora_sweep.json":[9738,5891],"./splitreus62.json":[47003,1081],"./tg4x.json":[87454,6019],"./tidbit.json":[60386,7961],"./totem.json":[43439,4013],"./two_percent_milk.json":[67150,2124],"./waterfowl.json":[14194,7190],"./zmk_uno.json":[71578,1319],"./zodiark.json":[12069,7266]};function o(t){if(!r.o(n,t))return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}));var e=n[t],o=e[0];return r.e(e[1]).then((function(){return r.t(o,19)}))}o.keys=function(){return Object.keys(n)},o.id=25105,t.exports=o},14259:function(t){t.exports=function(t,e,r){var n=-1,o=t.length;e<0&&(e=-e>o?0:o+e),(r=r>o?o:r)<0&&(r+=o),o=e>r?0:r-e>>>0,e>>>=0;for(var i=Array(o);++n<o;)i[n]=t[n+e];return i}},57406:function(t,e,r){var n=r(71811),o=r(10928),i=r(40292),a=r(40327);t.exports=function(t,e){return e=n(e,t),null==(t=i(t,e))||delete t[a(o(e))]}},60696:function(t,e,r){var n=r(68630);t.exports=function(t){return n(t)?void 0:t}},40292:function(t,e,r){var n=r(97786),o=r(14259);t.exports=function(t,e){return e.length<2?t:n(t,o(e,0,-1))}},68630:function(t,e,r){var n=r(44239),o=r(85924),i=r(37005),a=Function.prototype,c=Object.prototype,u=a.toString,l=c.hasOwnProperty,s=u.call(Object);t.exports=function(t){if(!i(t)||"[object Object]"!=n(t))return!1;var e=o(t);if(null===e)return!0;var r=l.call(e,"constructor")&&e.constructor;return"function"==typeof r&&r instanceof r&&u.call(r)==s}},10928:function(t){t.exports=function(t){var e=null==t?0:t.length;return e?t[e-1]:void 0}},57557:function(t,e,r){var n=r(29932),o=r(85990),i=r(57406),a=r(71811),c=r(98363),u=r(60696),l=r(99021),s=r(46904),f=l((function(t,e){var r={};if(null==t)return r;var l=!1;e=n(e,(function(e){return e=a(e,t),l||(l=e.length>1),e})),c(t,s(t),r),l&&(r=o(r,7,u));for(var f=e.length;f--;)i(r,e[f]);return r}));t.exports=f}}]);
+//# sourceMappingURL=ClipboardPicker.5eaa709d18d0b99394f7.js.map \ No newline at end of file
diff --git a/ClipboardPicker.5eaa709d18d0b99394f7.js.LICENSE.txt b/ClipboardPicker.5eaa709d18d0b99394f7.js.LICENSE.txt
new file mode 100644
index 0000000..ae386fb
--- /dev/null
+++ b/ClipboardPicker.5eaa709d18d0b99394f7.js.LICENSE.txt
@@ -0,0 +1 @@
+/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
diff --git a/FileSystemPicker.d88c8c732daa8f33f0b9.js b/FileSystemPicker.d88c8c732daa8f33f0b9.js
new file mode 100644
index 0000000..7d851d2
--- /dev/null
+++ b/FileSystemPicker.d88c8c732daa8f33f0b9.js
@@ -0,0 +1,3 @@
+/*! For license information please see FileSystemPicker.d88c8c732daa8f33f0b9.js.LICENSE.txt */
+(self.webpackChunkapp=self.webpackChunkapp||[]).push([[4218],{74433:function(t,e,r){"use strict";r.r(e),r.d(e,{default:function(){return we}});var n=r(50361),o=r.n(n),i=r(67294),a=r(33295),c=r.n(a),u=r(6121);function l(t){return{warningFlags:t.warningFlags,layers:t.layers.length,behaviors:t.behaviors.length,combos:t.combos.length,macros:t.macros.length}}var s=r(41051);function f(t){return new Promise(((e,r)=>{t.oncomplete=t.onsuccess=()=>e(t.result),t.onabort=t.onerror=()=>r(t.error)}))}let h;function p(){return h||(h=function(t,e){const r=indexedDB.open("keyval-store");r.onupgradeneeded=()=>r.result.createObjectStore(e);const n=f(r);return(t,r)=>n.then((n=>r(n.transaction(e,t).objectStore(e))))}(0,"keyval")),h}function y(t,e=p()){return e("readonly",(e=>f(e.get(t))))}function d(t,e,r=p()){return r("readwrite",(r=>(r.put(e,t),f(r.transaction))))}var v=r(97168),m=r(85893);function b(t){return b="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},b(t)}function g(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function w(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?g(Object(r),!0).forEach((function(e){j(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):g(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function j(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==b(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==b(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===b(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function x(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return O(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?O(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function O(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var k="KEYMAP_EDITOR_IDB_FS_KEYMAP_HANDLES",E="KEYMAP_EDITOR_IDB_FS_KEYMAP_SELECTED_HANDLE_INDEX",S=function(){return y(k).then(P)},L=function(t){return d(k,t)},_=function(t){return d(E,t)};function P(){return(arguments.length>0&&void 0!==arguments[0]?arguments[0]:[]).map((function(t){return t.handle?t:{handle:t,metadata:null}}))}var A=function(){return{keymapHandles:[],selectedHandleIndex:null,activeKeymap:{handleIndex:null,keymapRaw:null,keymapParsed:null,metadataParsed:null},importModalOpen:!1,feedbackModalOpen:!1,pendingImports:null}},I=(0,v.oM)({name:"filesystem-picker",initialState:A,reducers:{openImportModal:function(t){t.importModalOpen=!0},closeImportModal:function(t){t.importModalOpen=!1},openFeedbackModal:function(t){t.feedbackModalOpen=!0},closeFeedbackModal:function(t){t.feedbackModalOpen=!1},selectFilesForImport:function(t,e){var r=e.payload.handles;t.pendingImports=r},updatedHandles:function(t,e){t.keymapHandles=e.payload.handles},initHandles:function(t,e){var r=e.payload.handles,n=void 0===r?[]:r;t.keymapHandles=n},selectHandle:function(t,e){t.selectedHandleIndex=e.payload.index},selectKeymap:function(t,e){var r=e.payload,n=r.handleIndex,o=r.keymapRaw,i=r.keymapParsed,a=r.metadataParsed;t.activeKeymap={handleIndex:n,keymapRaw:o,keymapParsed:i,metadataParsed:a}},updateActiveKeymap:function(t,e){var r=e.payload,n=r.keymapParsed,o=r.keymapRaw;t.activeKeymap.keymapParsed=n,t.activeKeymap.keymapRaw=o}}});var C=(0,i.createContext)([{},{}]);function T(t){var e=t.children,r=x(function(){var t,e=x((0,i.useReducer)(I.reducer,null,A),2),r=e[0],n=(t=e[1],(0,i.useMemo)((function(){return Object.keys(I.actions).reduce((function(e,r){return e[r]=function(){var e;return t((e=I.actions)[r].apply(e,arguments))},e}),{})}),[t]));return[r,n]}(),2),n=r[0],o=r[1];return(0,m.jsx)(C.Provider,{value:[n,o],children:e})}function F(t){return F="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},F(t)}function N(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function M(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?N(Object(r),!0).forEach((function(e){G(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):N(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function G(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==F(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==F(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===F(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function D(){D=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof h?e:h,a=Object.create(i.prototype),c=new E(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function h(){}function p(){}function y(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=y.prototype=h.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==F(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=x(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function x(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return p.prototype=y,n(b,"constructor",{value:y,configurable:!0}),n(y,"constructor",{value:p,configurable:!0}),p.displayName=u(y,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,y):(t.__proto__=y,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function K(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function Z(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){K(i,n,o,a,c,"next",t)}function c(t){K(i,n,o,a,c,"throw",t)}a(void 0)}))}}function Y(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function H(t){var e=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return Y(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Y(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,i.useContext)(C),2)[1],r=e.openImportModal,n=e.selectFilesForImport,o=(0,i.useCallback)(Z(D().mark((function t(){var e;return D().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,window.showOpenFilePicker({mode:"readwrite",multiple:!0,excludeAcceptAllOption:!0,types:[{accept:{"text/plain":[".keymap"]}}]});case 2:e=t.sent,n({handles:e}),r();case 5:case"end":return t.stop()}}),t)}))),[r,n]);return(0,m.jsxs)("button",M(M({onClick:o},t),{},{children:[(0,m.jsx)(s.Z,{name:"file-import"})," Import Keymaps"]}))}var R=r(80993);function z(t){return z="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},z(t)}function U(t){return function(t){if(Array.isArray(t))return Q(t)}(t)||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(t)||X(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function B(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function q(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==z(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==z(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===z(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function $(){$=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof h?e:h,a=Object.create(i.prototype),c=new E(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function h(){}function p(){}function y(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=y.prototype=h.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==z(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=x(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function x(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return p.prototype=y,n(b,"constructor",{value:y,configurable:!0}),n(y,"constructor",{value:p,configurable:!0}),p.displayName=u(y,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,y):(t.__proto__=y,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function J(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function W(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){J(i,n,o,a,c,"next",t)}function c(t){J(i,n,o,a,c,"throw",t)}a(void 0)}))}}function V(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||X(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function X(t,e){if(t){if("string"==typeof t)return Q(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Q(t,e):void 0}}function Q(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var tt={mode:"read"};function et(){var t=V((0,i.useContext)(C),2),e=t[0],r=e.keymapHandles,n=e.selectedHandleIndex,o=t[1],a=o.selectHandle,l=o.selectKeymap,s=(0,i.useMemo)((function(){return r.map((function(t,e){return{id:e,name:t.handle.name}}))}),[r]),f=(0,i.useCallback)(function(){var t=W($().mark((function t(e){return $().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,_(e.id);case 2:a({index:e.id});case 3:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),[a]);(0,i.useEffect)((function(){var t=n,e=r[t];if(e){var o=e.handle;W($().mark((function r(){var n,i,a,s,f;return $().wrap((function(r){for(;;)switch(r.prev=r.next){case 0:return r.next=2,o.queryPermission(tt);case 2:if(r.t1=r.sent,r.t0="granted"!==r.t1,!r.t0){r.next=9;break}return r.next=7,o.requestPermission(tt);case 7:r.t2=r.sent,r.t0="granted"!==r.t2;case 9:if(!r.t0){r.next=11;break}return r.abrupt("return");case 11:return n=o.name.replace(".keymap",""),r.next=14,o.getFile();case 14:return i=r.sent,r.next=17,i.text();case 17:return a=r.sent,r.prev=18,r.next=21,c()(a);case 21:return s=r.sent,r.next=24,ot(e);case 24:f=r.sent,l({handleIndex:t,keymapRaw:a,keymapParsed:s,metadataParsed:f}),r.next=32;break;case 28:throw r.prev=28,r.t3=r.catch(18),h=n,(0,u.Kz)("FILESYSTEM_PARSE_ERROR",{keyboard:h}),r.t3;case 32:case"end":return r.stop()}var h}),r,null,[[18,28]])})))()}}),[r,n,l]);var h=(0,i.useMemo)((function(){return s[n]}),[s,n]);return(0,m.jsx)(R.Z,{value:h,options:s,onChange:f,getOptionLabel:function(t){return t.name},getOptionValue:function(t){return t.id},formatOptionLabel:rt,children:(0,m.jsx)(H,{style:{width:"100%"}})})}function rt(t,e){return"value"===e.context?t.name:(0,m.jsx)(nt,function(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?B(Object(r),!0).forEach((function(e){q(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):B(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}({},t))}function nt(t){var e=t.id,r=t.name,n=V((0,i.useContext)(C),2),o=n[0].keymapHandles,a=n[1].updatedHandles,c=(0,i.useCallback)(function(){var t=W($().mark((function t(n){var i,c;return $().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n.stopPropagation(),i='Remove "'.concat(r,'"? This operation cannot be undone.'),window.confirm(i)){t.next=4;break}return t.abrupt("return");case 4:return(c=U(o)).splice(e,1),t.next=8,L(c);case 8:a({handles:c});case 9:case"end":return t.stop()}}),t)})));return function(e){return t.apply(this,arguments)}}(),[e,r,o,a]);return(0,m.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",gap:"10px",alignItems:"center"},children:[r||(0,m.jsx)("em",{children:"[unnamed]"})," ",(0,m.jsx)(s.Z,{title:"Delete keyboard",name:"times-circle",style:{cursor:"pointer",fontSize:"80%"},onClick:c})]})}function ot(t){return it.apply(this,arguments)}function it(){return(it=W($().mark((function t(e){var n,o,i,a;return $().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:if(n=e.handle,o=e.custom,i=n.name.replace(".keymap",""),a=null==o?void 0:o.id,null==o||!o.metadata){t.next=5;break}return t.abrupt("return",o.metadata);case 5:return t.abrupt("return",r(25690)("./".concat(a||i,".json")));case 6:case"end":return t.stop()}}),t)})))).apply(this,arguments)}var at=r(98553),ct=r(27926),ut=r(96186),lt=r(64261),st=r(42507);function ft(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||ht(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ht(t,e){if(t){if("string"==typeof t)return pt(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?pt(t,e):void 0}}function pt(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var yt,dt=[{id:"custom",name:"Custom..."}].concat(function(t){if(Array.isArray(t))return pt(t)}(yt=Object.values(at))||function(t){if("undefined"!=typeof Symbol&&null!=t[Symbol.iterator]||null!=t["@@iterator"])return Array.from(t)}(yt)||ht(yt)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}());function vt(t){var e=t.name,r=t.onSelect,n=t.onCancel,o=ft((0,i.useState)(null),2),a=o[0],c=o[1],u=ft((0,i.useState)({raw:"",parsed:null}),2),l=u[0],s=u[1],f=a&&("custom"!==a.id||l.parsed),h=(0,i.useCallback)((function(){"custom"===a.id?r({metadata:l.parsed}):r({id:a.id})}),[r,a,l]);return(0,m.jsx)(lt.Z,{onDismiss:n,children:(0,m.jsxs)(ut.Z,{dismissText:null,style:{maxWidth:"640px"},children:[(0,m.jsxs)("h2",{children:["Identify ",e]}),(0,m.jsxs)("p",{children:["This keymap couldn't be matched up with a known ZMK keyboard by name. Please select the appropriate keyboard or select ",(0,m.jsx)("em",{children:"Custom..."})," and provide your own keyboard metadata."]}),(0,m.jsx)(R.Z,{value:a,onChange:c,options:dt,getOptionValue:function(t){return t.id},getOptionLabel:function(t){return t.name}}),"custom"===(null==a?void 0:a.id)&&(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)("h3",{children:"Custom metadata"}),(0,m.jsx)(st.Z,{value:l.raw,onChange:s})]}),(0,m.jsxs)(ut.k,{children:[(0,m.jsx)(ct.Z,{onClick:h,disabled:!f,children:"Confirm"}),(0,m.jsx)(ct.Z,{secondary:!0,onClick:n,children:"Cancel"})]})]})})}var mt=r(93379),bt=r.n(mt),gt=r(7795),wt=r.n(gt),jt=r(90569),xt=r.n(jt),Ot=r(3565),kt=r.n(Ot),Et=r(19216),St=r.n(Et),Lt=r(44589),_t=r.n(Lt),Pt=r(46635),At={};At.styleTagTransform=_t(),At.setAttributes=kt(),At.insert=xt().bind(null,"head"),At.domAPI=wt(),At.insertStyleElement=St(),bt()(Pt.Z,At);var It=Pt.Z&&Pt.Z.locals?Pt.Z.locals:void 0;function Ct(t){return Ct="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ct(t)}function Tt(t,e){var r=Object.keys(t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(t);e&&(n=n.filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable}))),r.push.apply(r,n)}return r}function Ft(t){for(var e=1;e<arguments.length;e++){var r=null!=arguments[e]?arguments[e]:{};e%2?Tt(Object(r),!0).forEach((function(e){Nt(t,e,r[e])})):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(r)):Tt(Object(r)).forEach((function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(r,e))}))}return t}function Nt(t,e,r){return(e=function(t){var e=function(t,e){if("object"!==Ct(t)||null===t)return t;var r=t[Symbol.toPrimitive];if(void 0!==r){var n=r.call(t,"string");if("object"!==Ct(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(t)}(t);return"symbol"===Ct(e)?e:String(e)}(e))in t?Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):t[e]=r,t}function Mt(){Mt=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof h?e:h,a=Object.create(i.prototype),c=new E(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function h(){}function p(){}function y(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=y.prototype=h.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==Ct(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=x(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function x(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return p.prototype=y,n(b,"constructor",{value:y,configurable:!0}),n(y,"constructor",{value:p,configurable:!0}),p.displayName=u(y,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,y):(t.__proto__=y,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function Gt(t,e){var r="undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(!r){if(Array.isArray(t)||(r=Yt(t))||e&&t&&"number"==typeof t.length){r&&(t=r);var n=0,o=function(){};return{s:o,n:function(){return n>=t.length?{done:!0}:{done:!1,value:t[n++]}},e:function(t){throw t},f:o}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,a=!0,c=!1;return{s:function(){r=r.call(t)},n:function(){var t=r.next();return a=t.done,t},e:function(t){c=!0,i=t},f:function(){try{a||null==r.return||r.return()}finally{if(c)throw i}}}}function Dt(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function Kt(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){Dt(i,n,o,a,c,"next",t)}function c(t){Dt(i,n,o,a,c,"throw",t)}a(void 0)}))}}function Zt(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||Yt(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function Yt(t,e){if(t){if("string"==typeof t)return Ht(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?Ht(t,e):void 0}}function Ht(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function Rt(){var t=Zt((0,i.useContext)(C),2),e=t[0].pendingImports,r=t[1],n=r.closeImportModal,o=r.updatedHandles,a=Zt((0,i.useState)({}),2),c=a[0],l=a[1],s=(0,i.useMemo)((function(){return e.filter((function(t){return Bt(t.name)||t.name in c}))}),[e,c]),f=(0,i.useMemo)((function(){return e.filter((function(t){return!s.includes(t)}))}),[e,s]),h=(0,i.useCallback)(Kt(Mt().mark((function t(){var e,r,i,a,l,f,h,p,y;return Mt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,S();case 2:e=t.sent,r=Gt(s),t.prev=4,r.s();case 6:if((i=r.n()).done){t.next=16;break}return a=i.value,l=c[a.name],f={handle:a,custom:l},t.next=12,zt(e,a);case 12:(h=t.sent)?Object.assign(h,f):e.push(f);case 14:t.next=6;break;case 16:t.next=21;break;case 18:t.prev=18,t.t0=t.catch(4),r.e(t.t0);case 21:return t.prev=21,r.f(),t.finish(21);case 24:return t.next=26,L(e);case 26:o({handles:e}),n(),p=Gt(s);try{for(p.s();!(y=p.n()).done;)d=y.value.name.replace(".keymap",""),(0,u.Kz)("FILESYSTEM_ADD_KEYBOARD",{keyboard:d})}catch(t){p.e(t)}finally{p.f()}case 30:case"end":return t.stop()}var d}),t,null,[[4,18,21,24]])}))),[c,s,o,n]),p=(0,i.useCallback)((function(){n()}),[n]),y=(0,i.useCallback)((function(t){l((function(e){return Ft(Ft({},e),{},Nt({},t.name,t))}))}),[l]);return(0,m.jsx)(lt.Z,{children:(0,m.jsxs)(ut.Z,{dismissText:null,children:[(0,m.jsx)("h2",{children:"Importing Keymaps"}),(0,m.jsx)("h3",{children:"Keymap files ready to be imported"}),(0,m.jsx)("ul",{children:e.map((function(t,e){return(0,m.jsx)("li",{children:(0,m.jsx)(qt,{value:t,onIdentify:y,custom:c[t.name]})},e)}))}),f.length>0&&(0,m.jsx)("p",{children:(0,m.jsx)("em",{children:"Some keymap files could not be matched with known keyboards and will not be imported. This is a work in progress and in the future you will have the option to import your own metadata file."})}),(0,m.jsxs)("div",{style:{textAlign:"center"},children:[(0,m.jsx)(ct.Z,{onClick:h,children:"Continue"}),(0,m.jsx)(ct.Z,{onClick:p,secondary:!0,children:"Cancel"})]})]})})}function zt(t,e){return Ut.apply(this,arguments)}function Ut(){return(Ut=Kt(Mt().mark((function t(e,r){var n,o,i;return Mt().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:n=Gt(e),t.prev=1,n.s();case 3:if((o=n.n()).done){t.next=11;break}return i=o.value,t.next=7,i.handle.isSameEntry(r);case 7:if(!t.sent){t.next=9;break}return t.abrupt("return",i);case 9:t.next=3;break;case 11:t.next=16;break;case 13:t.prev=13,t.t0=t.catch(1),n.e(t.t0);case 16:return t.prev=16,n.f(),t.finish(16);case 19:case"end":return t.stop()}}),t,null,[[1,13,16,19]])})))).apply(this,arguments)}function Bt(t){return t.replace(".keymap","")in at}function qt(t){var e,r=t.value,n=t.onIdentify,o=t.custom,a=Zt((0,lt.X)(),3),c=a[0],u=a[1],l=a[2],f=o||Bt(r.name),h=(0,i.useCallback)((function(t){n(Ft({name:r.name},t)),l()}),[r,n,l]);return(0,m.jsxs)(m.Fragment,{children:[f?(0,m.jsx)(s.Z,{name:"check",style:{color:"mediumseagreen"}}):(0,m.jsx)(s.Z,{name:"question",style:{color:"firebrick"}})," ",r.name," ",!f&&(0,m.jsx)("button",{onClick:u,children:"Identify keyboard"})," ",o&&(0,m.jsxs)("span",{className:It.pendingImportIdentifiedCustom,children:["(as ",null!==(e=o.id)&&void 0!==e?e:"custom",")"]}),c&&(0,m.jsx)(vt,{name:r.name,onSelect:h,onCancel:l})]})}var $t=r(18446),Jt=r.n($t),Wt=r(95998),Vt=r(83858),Xt=r.n(Vt);function Qt(t){return Qt="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Qt(t)}function te(){te=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof h?e:h,a=Object.create(i.prototype),c=new E(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function h(){}function p(){}function y(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=y.prototype=h.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==Qt(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=x(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function x(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return p.prototype=y,n(b,"constructor",{value:y,configurable:!0}),n(y,"constructor",{value:p,configurable:!0}),p.displayName=u(y,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,y):(t.__proto__=y,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function ee(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function re(t){return function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){ee(i,n,o,a,c,"next",t)}function c(t){ee(i,n,o,a,c,"throw",t)}a(void 0)}))}}function ne(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var oe=function(t){var e;return null===(e=t.keyboard)||void 0===e?void 0:e.keymap},ie={mode:"readwrite"};function ae(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function ce(){var t,e,r,n,a,f,h=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ae(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ae(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((t=(0,Wt.v9)(oe),e=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ne(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ne(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,i.useContext)(C),2),r=e[0],n=r.keymapHandles,a=r.activeKeymap,f=e[1].updateActiveKeymap,[(0,i.useMemo)((function(){return t&&(null==a?void 0:a.keymapParsed)&&!Jt()(t,a.keymapParsed)}),[t,a]),(0,i.useCallback)(re(te().mark((function e(){var r,i,s,h,p,y,d,v,m,b,g;return te().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(r=n[a.handleIndex]){e.next=3;break}return e.abrupt("return");case 3:return e.next=5,r.handle.queryPermission(ie);case 5:if(e.t1=e.sent,e.t0="granted"!==e.t1,!e.t0){e.next=12;break}return e.next=10,r.handle.requestPermission(ie);case 10:e.t2=e.sent,e.t0="granted"!==e.t2;case 12:if(!e.t0){e.next=14;break}return e.abrupt("return");case 14:return i=a.metadataParsed,s=i.id,h=i.layouts,p=t.chosen["zmk,matrix_transform"]?t.chosen["zmk,matrix_transform"].replace(/^&/,""):null,y=Object.keys(h)[0],d=h[p]||h[y],v=d.layout,e.next=20,Xt()(v,o()(t),a.keymapRaw);case 20:return m=e.sent,e.next=23,c()(m);case 23:return b=e.sent,e.next=26,r.handle.createWritable();case 26:return g=e.sent,e.next=29,g.write(m);case 29:g.close(),f({keymapParsed:b,keymapRaw:m}),w=s,j=b,(0,u.Kz)("FILESYSTEM_UPDATE_KEYMAP",{keyboard:w,keymap:l(j)});case 32:case"end":return e.stop()}var w,j}),e)}))),[t,n,a,f])]),2),p=h[0],y=h[1];return(0,m.jsx)("button",{disabled:!p,title:p?"Save changes":"No changes",onClick:y,children:(0,m.jsx)(s.Z,{name:"file-export"})})}function ue(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}function le(){var t=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return ue(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?ue(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,i.useContext)(C),2)[1].openFeedbackModal;return(0,m.jsxs)("button",{onClick:t,children:[(0,m.jsx)(s.Z,{name:"comments"})," Feedback?"]})}var se=r(2968),fe=r(80031);function he(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var pe=(0,m.jsx)(se.Z,{external:!0,href:"https://github.com/nickcoutsos/keymap-editor/discussions/106",children:"Feature Discussion"});function ye(){var t=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return he(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?he(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,i.useContext)(C),2)[1].closeFeedbackModal;return(0,m.jsx)(lt.Z,{onDismiss:t,children:(0,m.jsxs)(ut.Z,{dismissText:null,children:[(0,m.jsx)("h2",{children:"Beta Feedback"}),(0,m.jsx)("p",{children:"Hey, feel free to ignore this!"}),(0,m.jsx)("p",{children:"I just launched this feature very quickly, I hope it's working well for you! Your feedback, if you can spare a moment, would be immensely helpful to me. This feature is completely browser-based which means I have no server analytics, so even just letting me know that it worked would be cool!"}),(0,m.jsx)("p",{children:"Good ways to contact me:"}),(0,m.jsxs)("ul",{children:[(0,m.jsxs)("li",{children:["Ping me at ",fe.W8]}),(0,m.jsxs)("li",{children:["File an issue at ",fe.qM]}),(0,m.jsxs)("li",{children:["Join the ",pe]})]}),(0,m.jsx)("div",{style:{textAlign:"center"},children:(0,m.jsx)(ct.Z,{onClick:t,children:"Back to editor"})})]})})}function de(t){return de="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},de(t)}function ve(){ve=function(){return t};var t={},e=Object.prototype,r=e.hasOwnProperty,n=Object.defineProperty||function(t,e,r){t[e]=r.value},o="function"==typeof Symbol?Symbol:{},i=o.iterator||"@@iterator",a=o.asyncIterator||"@@asyncIterator",c=o.toStringTag||"@@toStringTag";function u(t,e,r){return Object.defineProperty(t,e,{value:r,enumerable:!0,configurable:!0,writable:!0}),t[e]}try{u({},"")}catch(t){u=function(t,e,r){return t[e]=r}}function l(t,e,r,o){var i=e&&e.prototype instanceof h?e:h,a=Object.create(i.prototype),c=new E(o||[]);return n(a,"_invoke",{value:j(t,r,c)}),a}function s(t,e,r){try{return{type:"normal",arg:t.call(e,r)}}catch(t){return{type:"throw",arg:t}}}t.wrap=l;var f={};function h(){}function p(){}function y(){}var d={};u(d,i,(function(){return this}));var v=Object.getPrototypeOf,m=v&&v(v(S([])));m&&m!==e&&r.call(m,i)&&(d=m);var b=y.prototype=h.prototype=Object.create(d);function g(t){["next","throw","return"].forEach((function(e){u(t,e,(function(t){return this._invoke(e,t)}))}))}function w(t,e){function o(n,i,a,c){var u=s(t[n],t,i);if("throw"!==u.type){var l=u.arg,f=l.value;return f&&"object"==de(f)&&r.call(f,"__await")?e.resolve(f.__await).then((function(t){o("next",t,a,c)}),(function(t){o("throw",t,a,c)})):e.resolve(f).then((function(t){l.value=t,a(l)}),(function(t){return o("throw",t,a,c)}))}c(u.arg)}var i;n(this,"_invoke",{value:function(t,r){function n(){return new e((function(e,n){o(t,r,e,n)}))}return i=i?i.then(n,n):n()}})}function j(t,e,r){var n="suspendedStart";return function(o,i){if("executing"===n)throw new Error("Generator is already running");if("completed"===n){if("throw"===o)throw i;return{value:void 0,done:!0}}for(r.method=o,r.arg=i;;){var a=r.delegate;if(a){var c=x(a,r);if(c){if(c===f)continue;return c}}if("next"===r.method)r.sent=r._sent=r.arg;else if("throw"===r.method){if("suspendedStart"===n)throw n="completed",r.arg;r.dispatchException(r.arg)}else"return"===r.method&&r.abrupt("return",r.arg);n="executing";var u=s(t,e,r);if("normal"===u.type){if(n=r.done?"completed":"suspendedYield",u.arg===f)continue;return{value:u.arg,done:r.done}}"throw"===u.type&&(n="completed",r.method="throw",r.arg=u.arg)}}}function x(t,e){var r=e.method,n=t.iterator[r];if(void 0===n)return e.delegate=null,"throw"===r&&t.iterator.return&&(e.method="return",e.arg=void 0,x(t,e),"throw"===e.method)||"return"!==r&&(e.method="throw",e.arg=new TypeError("The iterator does not provide a '"+r+"' method")),f;var o=s(n,t.iterator,e.arg);if("throw"===o.type)return e.method="throw",e.arg=o.arg,e.delegate=null,f;var i=o.arg;return i?i.done?(e[t.resultName]=i.value,e.next=t.nextLoc,"return"!==e.method&&(e.method="next",e.arg=void 0),e.delegate=null,f):i:(e.method="throw",e.arg=new TypeError("iterator result is not an object"),e.delegate=null,f)}function O(t){var e={tryLoc:t[0]};1 in t&&(e.catchLoc=t[1]),2 in t&&(e.finallyLoc=t[2],e.afterLoc=t[3]),this.tryEntries.push(e)}function k(t){var e=t.completion||{};e.type="normal",delete e.arg,t.completion=e}function E(t){this.tryEntries=[{tryLoc:"root"}],t.forEach(O,this),this.reset(!0)}function S(t){if(t){var e=t[i];if(e)return e.call(t);if("function"==typeof t.next)return t;if(!isNaN(t.length)){var n=-1,o=function e(){for(;++n<t.length;)if(r.call(t,n))return e.value=t[n],e.done=!1,e;return e.value=void 0,e.done=!0,e};return o.next=o}}return{next:L}}function L(){return{value:void 0,done:!0}}return p.prototype=y,n(b,"constructor",{value:y,configurable:!0}),n(y,"constructor",{value:p,configurable:!0}),p.displayName=u(y,c,"GeneratorFunction"),t.isGeneratorFunction=function(t){var e="function"==typeof t&&t.constructor;return!!e&&(e===p||"GeneratorFunction"===(e.displayName||e.name))},t.mark=function(t){return Object.setPrototypeOf?Object.setPrototypeOf(t,y):(t.__proto__=y,u(t,c,"GeneratorFunction")),t.prototype=Object.create(b),t},t.awrap=function(t){return{__await:t}},g(w.prototype),u(w.prototype,a,(function(){return this})),t.AsyncIterator=w,t.async=function(e,r,n,o,i){void 0===i&&(i=Promise);var a=new w(l(e,r,n,o),i);return t.isGeneratorFunction(r)?a:a.next().then((function(t){return t.done?t.value:a.next()}))},g(b),u(b,c,"Generator"),u(b,i,(function(){return this})),u(b,"toString",(function(){return"[object Generator]"})),t.keys=function(t){var e=Object(t),r=[];for(var n in e)r.push(n);return r.reverse(),function t(){for(;r.length;){var n=r.pop();if(n in e)return t.value=n,t.done=!1,t}return t.done=!0,t}},t.values=S,E.prototype={constructor:E,reset:function(t){if(this.prev=0,this.next=0,this.sent=this._sent=void 0,this.done=!1,this.delegate=null,this.method="next",this.arg=void 0,this.tryEntries.forEach(k),!t)for(var e in this)"t"===e.charAt(0)&&r.call(this,e)&&!isNaN(+e.slice(1))&&(this[e]=void 0)},stop:function(){this.done=!0;var t=this.tryEntries[0].completion;if("throw"===t.type)throw t.arg;return this.rval},dispatchException:function(t){if(this.done)throw t;var e=this;function n(r,n){return a.type="throw",a.arg=t,e.next=r,n&&(e.method="next",e.arg=void 0),!!n}for(var o=this.tryEntries.length-1;o>=0;--o){var i=this.tryEntries[o],a=i.completion;if("root"===i.tryLoc)return n("end");if(i.tryLoc<=this.prev){var c=r.call(i,"catchLoc"),u=r.call(i,"finallyLoc");if(c&&u){if(this.prev<i.catchLoc)return n(i.catchLoc,!0);if(this.prev<i.finallyLoc)return n(i.finallyLoc)}else if(c){if(this.prev<i.catchLoc)return n(i.catchLoc,!0)}else{if(!u)throw new Error("try statement without catch or finally");if(this.prev<i.finallyLoc)return n(i.finallyLoc)}}}},abrupt:function(t,e){for(var n=this.tryEntries.length-1;n>=0;--n){var o=this.tryEntries[n];if(o.tryLoc<=this.prev&&r.call(o,"finallyLoc")&&this.prev<o.finallyLoc){var i=o;break}}i&&("break"===t||"continue"===t)&&i.tryLoc<=e&&e<=i.finallyLoc&&(i=null);var a=i?i.completion:{};return a.type=t,a.arg=e,i?(this.method="next",this.next=i.finallyLoc,f):this.complete(a)},complete:function(t,e){if("throw"===t.type)throw t.arg;return"break"===t.type||"continue"===t.type?this.next=t.arg:"return"===t.type?(this.rval=this.arg=t.arg,this.method="return",this.next="end"):"normal"===t.type&&e&&(this.next=e),f},finish:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.finallyLoc===t)return this.complete(r.completion,r.afterLoc),k(r),f}},catch:function(t){for(var e=this.tryEntries.length-1;e>=0;--e){var r=this.tryEntries[e];if(r.tryLoc===t){var n=r.completion;if("throw"===n.type){var o=n.arg;k(r)}return o}}throw new Error("illegal catch attempt")},delegateYield:function(t,e,r){return this.delegate={iterator:S(t),resultName:e,nextLoc:r},"next"===this.method&&(this.arg=void 0),f}},t}function me(t,e,r,n,o,i,a){try{var c=t[i](a),u=c.value}catch(t){return void r(t)}c.done?e(u):Promise.resolve(u).then(n,o)}function be(t,e){(null==e||e>t.length)&&(e=t.length);for(var r=0,n=new Array(e);r<e;r++)n[r]=t[r];return n}var ge,we=(ge=function(t){var e=t.onSelect,r=function(t,e){return function(t){if(Array.isArray(t))return t}(t)||function(t,e){var r=null==t?null:"undefined"!=typeof Symbol&&t[Symbol.iterator]||t["@@iterator"];if(null!=r){var n,o,i,a,c=[],u=!0,l=!1;try{if(i=(r=r.call(t)).next,0===e){if(Object(r)!==r)return;u=!1}else for(;!(u=(n=i.call(r)).done)&&(c.push(n.value),c.length!==e);u=!0);}catch(t){l=!0,o=t}finally{try{if(!u&&null!=r.return&&(a=r.return(),Object(a)!==a))return}finally{if(l)throw o}}return c}}(t,e)||function(t,e){if(t){if("string"==typeof t)return be(t,e);var r=Object.prototype.toString.call(t).slice(8,-1);return"Object"===r&&t.constructor&&(r=t.constructor.name),"Map"===r||"Set"===r?Array.from(t):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?be(t,e):void 0}}(t,e)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}((0,i.useContext)(C),2),n=r[0],a=n.keymapHandles,c=n.activeKeymap,s=n.importModalOpen,f=n.feedbackModalOpen,h=r[1].initHandles;return(0,i.useEffect)((function(){var t;(t=ve().mark((function t(){var e,r;return ve().wrap((function(t){for(;;)switch(t.prev=t.next){case 0:return t.next=2,S();case 2:return e=t.sent,t.next=5,y(E);case 5:r=t.sent,h({handles:e,activeHandle:r});case 7:case"end":return t.stop()}}),t)})),function(){var e=this,r=arguments;return new Promise((function(n,o){var i=t.apply(e,r);function a(t){me(i,n,o,a,c,"next",t)}function c(t){me(i,n,o,a,c,"throw",t)}a(void 0)}))})()}),[h]),(0,i.useEffect)((function(){if(c.keymapParsed){var t=c.keymapParsed,r=c.metadataParsed,n=r.id,i=r.layouts,a=t.chosen["zmk,matrix_transform"]?t.chosen["zmk,matrix_transform"].replace(/^&/,""):null,s=Object.keys(i)[0],f=i[a]||i[s];e(o()({source:"filesystem",keyboard:r.id,layoutMetadata:f,layout:f.layout,keymap:t,sensors:r.sensors||[]})),function(t,e){(0,u.Kz)("FILESYSTEM_SELECT_KEYBOARD",{keyboard:t,keymap:l(e)})}(n,t)}}),[c,e]),(0,m.jsxs)(m.Fragment,{children:[a.length>0?(0,m.jsx)(et,{}):(0,m.jsx)(H,{}),(null==c?void 0:c.keymapParsed)&&(0,m.jsx)(ce,{}),s&&(0,m.jsx)(Rt,{}),(0,m.jsx)(le,{}),f&&(0,m.jsx)(ye,{})]})},function(t){return(0,m.jsx)(T,{children:(0,m.jsx)(ge,w({},t))})})},46635:function(t,e,r){"use strict";var n=r(87537),o=r.n(n),i=r(23645),a=r.n(i)()(o());a.push([t.id,".JpK1HqfxKomBeK4ZrmFR {\n font-style: italic;\n font-size: 90%;\n opacity: 0.7;\n}\n","",{version:3,sources:["webpack://./src/Sources/FileSystem/styles.module.css"],names:[],mappings:"AAAA;EACE,kBAAkB;EAClB,cAAc;EACd,YAAY;AACd",sourcesContent:[".pendingImportIdentifiedCustom {\n font-style: italic;\n font-size: 90%;\n opacity: 0.7;\n}\n"],sourceRoot:""}]),a.locals={pendingImportIdentifiedCustom:"JpK1HqfxKomBeK4ZrmFR"},e.Z=a},25690:function(t,e,r){var n={"./a_dux.json":[73158,4843],"./adv360pro.json":[41843,2259],"./bat43.json":[60888,1038],"./bdn9_rev2.json":[94591,1522],"./bfo9000.json":[19684,4962],"./boardsource3x4.json":[88602,4260],"./boardsource5x12.json":[8058,5356],"./bt60_v1.json":[92628,3826],"./bt60_v1_hs.json":[84628,2838],"./bt60_v2.json":[9417,504],"./bt65_v1.json":[88455,5422],"./bt75_v1.json":[25397,2921],"./chalice.json":[7936,4830],"./clog.json":[31638,2169],"./contra.json":[42718,8409],"./corne.json":[26453,7038],"./corneish_zen.json":[39757,4213],"./cradio.json":[62089,8451],"./crbn.json":[48945,4959],"./eek.json":[63072,2757],"./elephant42.json":[83634,7997],"./ergodash.json":[68972,47],"./ergodox.json":[75507,1325],"./eternal_keypad.json":[69416,4415],"./eternal_keypad_lefty.json":[56785,2284],"./ferris_rev02.json":[97365,1145],"./fourier.json":[14446,7905],"./glove80.json":[68676,1206],"./helix.json":[73549,7316],"./hillside46.json":[85162,3804],"./hummingbird.json":[98321,3394],"./hw75_keyboard.json":[80629,3283],"./iris.json":[55262,9134],"./jian.json":[46228,944],"./jiran.json":[14465,9707],"./jorne.json":[19151,2308],"./kbdfans_tofu65_v2.json":[7450,320],"./knob_goblin.json":[71497,6528],"./kyria.json":[34458,8642],"./kyria_rev2.json":[70165,4156],"./kyria_rev3.json":[33669,3895],"./leeloo.json":[53677,6158],"./leeloo_micro.json":[88615,6274],"./leeloo_rev2.json":[32871,8301],"./lily58.json":[21479,6324],"./lotus58.json":[63918,5],"./lpgalaxy_blank_slate.json":[73838,3504],"./m60.json":[53132,4070],"./microdox.json":[56792,8813],"./murphpad.json":[8662,8374],"./naked60.json":[79707,5810],"./nibble.json":[58244,2939],"./nice60.json":[41501,7218],"./osprette.json":[13467,7110],"./pancake.json":[19011,630],"./planck_rev6.json":[55991,8284],"./preonic_rev3.json":[47308,5533],"./qaz.json":[46923,6360],"./quefrency.json":[23956,5272],"./redox.json":[17104,1616],"./reviung34.json":[66147,3755],"./reviung41.json":[71414,327],"./reviung5.json":[31009,1718],"./reviung53.json":[48596,9115],"./romac.json":[15683,2135],"./romac_plus.json":[55318,3039],"./s40nc.json":[56036,3197],"./slicemk_ergodox.json":[5086,9699],"./snap.json":[24380,8415],"./sofle.json":[45082,8729],"./splitkb_aurora_corne.json":[20216,9351],"./splitkb_aurora_lily58.json":[2674,5634],"./splitkb_aurora_sofle.json":[40194,639],"./splitkb_aurora_sweep.json":[9738,5891],"./splitreus62.json":[47003,1081],"./tg4x.json":[87454,6019],"./tidbit.json":[60386,7961],"./totem.json":[43439,4013],"./two_percent_milk.json":[67150,2124],"./waterfowl.json":[14194,7190],"./zmk_uno.json":[71578,1319],"./zodiark.json":[12069,7266]};function o(t){if(!r.o(n,t))return Promise.resolve().then((function(){var e=new Error("Cannot find module '"+t+"'");throw e.code="MODULE_NOT_FOUND",e}));var e=n[t],o=e[0];return r.e(e[1]).then((function(){return r.t(o,19)}))}o.keys=function(){return Object.keys(n)},o.id=25690,t.exports=o}}]);
+//# sourceMappingURL=FileSystemPicker.d88c8c732daa8f33f0b9.js.map \ No newline at end of file
diff --git a/FileSystemPicker.d88c8c732daa8f33f0b9.js.LICENSE.txt b/FileSystemPicker.d88c8c732daa8f33f0b9.js.LICENSE.txt
new file mode 100644
index 0000000..ae386fb
--- /dev/null
+++ b/FileSystemPicker.d88c8c732daa8f33f0b9.js.LICENSE.txt
@@ -0,0 +1 @@
+/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */
diff --git a/index.html b/index.html
index d39663c..cb634f5 100644
--- a/index.html
+++ b/index.html
@@ -1 +1 @@
-<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="https://nickcoutsos.github.io/keymap-editor/keycap.png"/><link href="https://nickcoutsos.github.io/keymap-editor/app.css" rel="stylesheet"><meta name="viewport" content="width=device-width,initial-scale=1"/><title>Keymap Editor</title><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link href="https://fonts.googleapis.com/css2?family=Nunito:wght@700&family=Quicksand:wght@500&display=swap" rel="stylesheet"><link rel="me" href="https://mastodon.social/@nickcoutsos"><meta name="description" content="A web-based editor for ZMK Keymaps"><meta property="og:url" content="https://nickcoutsos.github.io/keymap-editor"><meta property="og:type" content="website"><meta property="og:title" content="Keymap Editor"><meta property="og:description" content="A web-based editor for ZMK Keymaps"><meta property="og:image" content="https://nickcoutsos.github.io/keymap-editor/og-banner.png"><meta name="twitter:card" content="summary_large_image"><meta property="twitter:domain" content="nickcoutsos.github.io"><meta property="twitter:url" content="https://nickcoutsos.github.io/keymap-editor"><meta name="twitter:title" content="Keymap Editor"><meta name="twitter:description" content="A web-based editor for ZMK Keymaps"><meta name="twitter:image" content="https://nickcoutsos.github.io/keymap-editor/og-banner.png"><script defer="defer" src="runtime.0a711ce36a4bfe41f1da.js"></script><script defer="defer" src="shared.11364de69eb676c2e101.js"></script><script defer="defer" src="vendors.fc16238b8bd06905756a.js"></script><script defer="defer" src="react.0b7d83a58560e2038899.js"></script><script defer="defer" src="main.37c59fec9cea954bf818.js"></script></head><body data-theme="system"><noscript>You need to enable JavaScript to run this app.</noscript><div id="app-root"></div><div id="modal-root"></div></body></html> \ No newline at end of file
+<!doctype html><html lang="en"><head><meta charset="utf-8"/><link rel="icon" href="https://nickcoutsos.github.io/keymap-editor/keycap.png"/><link href="https://nickcoutsos.github.io/keymap-editor/app.css" rel="stylesheet"><meta name="viewport" content="width=device-width,initial-scale=1"/><title>Keymap Editor</title><link rel="preconnect" href="https://fonts.googleapis.com"><link rel="preconnect" href="https://fonts.gstatic.com" crossorigin><link href="https://fonts.googleapis.com/css2?family=Nunito:wght@700&family=Quicksand:wght@500&display=swap" rel="stylesheet"><link rel="me" href="https://mastodon.social/@nickcoutsos"><meta name="description" content="A web-based editor for ZMK Keymaps"><meta property="og:url" content="https://nickcoutsos.github.io/keymap-editor"><meta property="og:type" content="website"><meta property="og:title" content="Keymap Editor"><meta property="og:description" content="A web-based editor for ZMK Keymaps"><meta property="og:image" content="https://nickcoutsos.github.io/keymap-editor/og-banner.png"><meta name="twitter:card" content="summary_large_image"><meta property="twitter:domain" content="nickcoutsos.github.io"><meta property="twitter:url" content="https://nickcoutsos.github.io/keymap-editor"><meta name="twitter:title" content="Keymap Editor"><meta name="twitter:description" content="A web-based editor for ZMK Keymaps"><meta name="twitter:image" content="https://nickcoutsos.github.io/keymap-editor/og-banner.png"><script defer="defer" src="runtime.fabd54b8945f923d7b52.js"></script><script defer="defer" src="shared.bbc21a8ffa35b41e3140.js"></script><script defer="defer" src="vendors.fc16238b8bd06905756a.js"></script><script defer="defer" src="react.0b7d83a58560e2038899.js"></script><script defer="defer" src="main.37c59fec9cea954bf818.js"></script></head><body data-theme="system"><noscript>You need to enable JavaScript to run this app.</noscript><div id="app-root"></div><div id="modal-root"></div></body></html> \ No newline at end of file
diff --git a/keyboard-data/adv360pro-json-metadata.bc948c3155b6a0e37bcb.js b/keyboard-data/adv360pro-json-metadata.bc948c3155b6a0e37bcb.js
new file mode 100644
index 0000000..55c9251
--- /dev/null
+++ b/keyboard-data/adv360pro-json-metadata.bc948c3155b6a0e37bcb.js
@@ -0,0 +1 @@
+"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[2259],{41843:function(o){o.exports=JSON.parse('{"id":"adv360pro","name":"Kinesis Advantage360","layouts":{"default_transform":{"layout":[{"row":0,"col":0,"x":0,"y":0.25,"w":1.25},{"row":0,"col":1,"x":1.25,"y":0.25},{"row":0,"col":2,"x":2.25,"y":0},{"row":0,"col":3,"x":3.25,"y":0},{"row":0,"col":4,"x":4.25,"y":0},{"row":0,"col":5,"x":5.25,"y":0},{"row":0,"col":6,"x":6.25,"y":0},{"row":0,"col":14,"x":11.5,"y":0},{"row":0,"col":15,"x":12.5,"y":0},{"row":0,"col":16,"x":13.5,"y":0},{"row":0,"col":17,"x":14.5,"y":0},{"row":0,"col":18,"x":15.5,"y":0},{"row":0,"col":19,"x":16.5,"y":0.25},{"row":0,"col":20,"x":17.5,"y":0.25,"w":1.25},{"row":1,"col":0,"x":0,"y":1.25,"w":1.25},{"row":1,"col":1,"x":1.25,"y":1.25},{"row":1,"col":2,"x":2.25,"y":1},{"row":1,"col":3,"x":3.25,"y":1},{"row":1,"col":4,"x":4.25,"y":1},{"row":1,"col":5,"x":5.25,"y":1},{"row":1,"col":6,"x":6.25,"y":1},{"row":1,"col":14,"x":11.5,"y":1},{"row":1,"col":15,"x":12.5,"y":1},{"row":1,"col":16,"x":13.5,"y":1},{"row":1,"col":17,"x":14.5,"y":1},{"row":1,"col":18,"x":15.5,"y":1},{"row":1,"col":19,"x":16.5,"y":1.25},{"row":1,"col":20,"x":17.5,"y":1.25,"w":1.25},{"row":2,"col":0,"x":0,"y":2.25,"w":1.25},{"row":2,"col":1,"x":1.25,"y":2.25},{"row":2,"col":2,"x":2.25,"y":2},{"row":2,"col":3,"x":3.25,"y":2},{"row":2,"col":4,"x":4.25,"y":2},{"row":2,"col":5,"x":5.25,"y":2},{"row":2,"col":6,"x":6.25,"y":2},{"row":2,"col":8,"x":6.75,"y":3.25,"r":15,"rx":5.75,"ry":4.25},{"row":2,"col":9,"x":7.75,"y":3.25,"r":15,"rx":5.75,"ry":4.25},{"row":2,"col":11,"x":10,"y":3.25,"r":-15,"rx":13,"ry":4.25},{"row":2,"col":12,"x":11,"y":3.25,"r":-15,"rx":13,"ry":4.25},{"row":2,"col":14,"x":11.5,"y":2},{"row":2,"col":15,"x":12.5,"y":2},{"row":2,"col":16,"x":13.5,"y":2},{"row":2,"col":17,"x":14.5,"y":2},{"row":2,"col":18,"x":15.5,"y":2},{"row":2,"col":19,"x":16.5,"y":2.25},{"row":2,"col":20,"x":17.5,"y":2.25,"w":1.25},{"row":3,"col":0,"x":0,"y":3.25,"w":1.25},{"row":3,"col":1,"x":1.25,"y":3.25},{"row":3,"col":2,"x":2.25,"y":3},{"row":3,"col":3,"x":3.25,"y":3},{"row":3,"col":4,"x":4.25,"y":3},{"row":3,"col":5,"x":5.25,"y":3},{"row":3,"col":9,"x":7.75,"y":4.25,"r":15,"rx":5.75,"ry":4.25},{"row":3,"col":11,"x":10,"y":4.25,"r":-15,"rx":13,"ry":4.25},{"row":3,"col":15,"x":12.5,"y":3},{"row":3,"col":16,"x":13.5,"y":3},{"row":3,"col":17,"x":14.5,"y":3},{"row":3,"col":18,"x":15.5,"y":3},{"row":3,"col":19,"x":16.5,"y":3.25},{"row":3,"col":20,"x":17.5,"y":3.25,"w":1.25},{"row":4,"col":0,"x":0,"y":4.25,"w":1.25},{"row":4,"col":1,"x":1.25,"y":4.25},{"row":4,"col":2,"x":2.25,"y":4},{"row":4,"col":3,"x":3.25,"y":4},{"row":4,"col":4,"x":4.25,"y":4},{"row":4,"col":7,"x":5.75,"y":4.25,"r":15,"rx":5.75,"ry":4.25,"h":2},{"row":4,"col":8,"x":6.75,"y":4.25,"r":15,"rx":5.75,"ry":4.25,"h":2},{"row":4,"col":9,"x":7.75,"y":5.25,"r":15,"rx":5.75,"ry":4.25},{"row":4,"col":11,"x":10,"y":5.25,"r":-15,"rx":13,"ry":4.25},{"row":4,"col":12,"x":11,"y":4.25,"r":-15,"rx":13,"ry":4.25,"h":2},{"row":4,"col":13,"x":12,"y":4.25,"r":-15,"rx":13,"ry":4.25,"h":2},{"row":4,"col":16,"x":13.5,"y":4},{"row":4,"col":17,"x":14.5,"y":4},{"row":4,"col":18,"x":15.5,"y":4},{"row":4,"col":19,"x":16.5,"y":4.25},{"row":4,"col":20,"x":17.5,"y":4.25,"w":1.25}]}}}')}}]); \ No newline at end of file
diff --git a/keyboard-data/ergodox-json-metadata.130bfa082550dfb7309c.js b/keyboard-data/ergodox-json-metadata.130bfa082550dfb7309c.js
new file mode 100644
index 0000000..54992d0
--- /dev/null
+++ b/keyboard-data/ergodox-json-metadata.130bfa082550dfb7309c.js
@@ -0,0 +1 @@
+"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[1325],{75507:function(o){o.exports=JSON.parse('{"id":"ergodox","name":"Ergodox","layouts":{"default_layout":{"layout":[{"row":0,"col":0,"x":0,"y":0.33,"w":1.5},{"row":0,"col":1,"x":1.5,"y":0.33},{"row":0,"col":2,"x":2.5,"y":0.12},{"row":0,"col":3,"x":3.5,"y":0},{"row":0,"col":4,"x":4.5,"y":0.12},{"row":0,"col":5,"x":5.5,"y":0.2},{"row":0,"col":6,"x":6.5,"y":0.2},{"row":0,"col":8,"x":12.5,"y":0.2},{"row":0,"col":9,"x":13.5,"y":0.2},{"row":0,"col":10,"x":14.5,"y":0.12},{"row":0,"col":11,"x":15.5,"y":0},{"row":0,"col":12,"x":16.5,"y":0.12},{"row":0,"col":13,"x":17.5,"y":0.33},{"row":0,"col":14,"x":18.5,"y":0.33,"w":1.5},{"row":1,"col":0,"x":0,"y":1.33,"w":1.5},{"row":1,"col":1,"x":1.5,"y":1.33},{"row":1,"col":2,"x":2.5,"y":1.12},{"row":1,"col":3,"x":3.5,"y":1},{"row":1,"col":4,"x":4.5,"y":1.12},{"row":1,"col":5,"x":5.5,"y":1.2},{"row":1,"col":6,"x":6.5,"y":1.2,"h":1.5},{"row":1,"col":8,"x":12.5,"y":1.2,"h":1.5},{"row":1,"col":9,"x":13.5,"y":1.2},{"row":1,"col":10,"x":14.5,"y":1.12},{"row":1,"col":11,"x":15.5,"y":1},{"row":1,"col":12,"x":16.5,"y":1.12},{"row":1,"col":13,"x":17.5,"y":1.33},{"row":1,"col":14,"x":18.5,"y":1.33,"w":1.5},{"row":2,"col":0,"x":0,"y":2.33,"w":1.5},{"row":2,"col":1,"x":1.5,"y":2.33},{"row":2,"col":2,"x":2.5,"y":2.12},{"row":2,"col":3,"x":3.5,"y":2},{"row":2,"col":4,"x":4.5,"y":2.12},{"row":2,"col":5,"x":5.5,"y":2.2},{"row":2,"col":9,"x":13.5,"y":2.2},{"row":2,"col":10,"x":14.5,"y":2.12},{"row":2,"col":11,"x":15.5,"y":2},{"row":2,"col":12,"x":16.5,"y":2.12},{"row":2,"col":13,"x":17.5,"y":2.33},{"row":2,"col":14,"x":18.5,"y":2.33,"w":1.5},{"row":3,"col":0,"x":0,"y":3.33,"w":1.5},{"row":3,"col":1,"x":1.5,"y":3.33},{"row":3,"col":2,"x":2.5,"y":3.12},{"row":3,"col":3,"x":3.5,"y":3},{"row":3,"col":4,"x":4.5,"y":3.12},{"row":3,"col":5,"x":5.5,"y":3.2},{"row":3,"col":6,"x":6.5,"y":2.7,"h":1.5},{"row":3,"col":8,"x":12.5,"y":2.7,"h":1.5},{"row":3,"col":9,"x":13.5,"y":3.2},{"row":3,"col":10,"x":14.5,"y":3.12},{"row":3,"col":11,"x":15.5,"y":3},{"row":3,"col":12,"x":16.5,"y":3.12},{"row":3,"col":13,"x":17.5,"y":3.33},{"row":3,"col":14,"x":18.5,"y":3.33,"w":1.5},{"row":4,"col":0,"x":0.5,"y":4.33},{"row":4,"col":1,"x":1.5,"y":4.33},{"row":4,"col":2,"x":2.5,"y":4.12},{"row":4,"col":3,"x":3.5,"y":4},{"row":4,"col":4,"x":4.5,"y":4.12},{"row":4,"col":10,"x":14.5,"y":4.12},{"row":4,"col":11,"x":15.5,"y":4},{"row":4,"col":12,"x":16.5,"y":4.12},{"row":4,"col":13,"x":17.5,"y":4.33},{"row":4,"col":14,"x":18.5,"y":4.33},{"row":5,"col":5,"x":7.5,"y":2.7,"r":25,"rx":5.5,"ry":3.7},{"row":5,"col":6,"x":8.5,"y":2.7,"r":25,"rx":5.5,"ry":3.7},{"row":5,"col":8,"x":10.5,"y":2.7,"r":-25,"rx":14.5,"ry":3.7},{"row":5,"col":9,"x":11.5,"y":2.7,"r":-25,"rx":14.5,"ry":3.7},{"row":6,"col":4,"x":6.5,"y":3.7,"h":2,"r":25,"rx":5.5,"ry":3.7},{"row":6,"col":5,"x":7.5,"y":3.7,"h":2,"r":25,"rx":5.5,"ry":3.7},{"row":6,"col":6,"x":8.5,"y":3.7,"r":25,"rx":5.5,"ry":3.7},{"row":6,"col":8,"x":10.5,"y":3.7,"r":-25,"rx":14.5,"ry":3.7},{"row":6,"col":9,"x":11.5,"y":3.7,"h":2,"r":-25,"rx":14.5,"ry":3.7},{"row":6,"col":10,"x":12.5,"y":3.7,"h":2,"r":-25,"rx":14.5,"ry":3.7},{"row":7,"col":6,"x":8.5,"y":4.7,"r":25,"rx":5.5,"ry":3.7},{"row":7,"col":8,"x":10.5,"y":4.7,"r":-25,"rx":14.5,"ry":3.7}]}}}')}}]); \ No newline at end of file
diff --git a/keyboard-data/hillside46-json-metadata.ea98e13243cbd23816c3.js b/keyboard-data/hillside46-json-metadata.ea98e13243cbd23816c3.js
new file mode 100644
index 0000000..b10a9d0
--- /dev/null
+++ b/keyboard-data/hillside46-json-metadata.ea98e13243cbd23816c3.js
@@ -0,0 +1 @@
+"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[3804],{85162:function(r){r.exports=JSON.parse('{"id":"hillside46","name":"Hillside46","layouts":{"LAYOUT":{"layout":[{"row":0,"col":0,"x":0.079,"y":1.522,"r":-10,"rx":0.579,"ry":2.022},{"row":0,"col":1,"x":1.064,"y":1.338,"r":-10,"rx":1.564,"ry":1.838},{"row":0,"col":2,"x":2.128,"y":0.418,"r":-5,"rx":2.628,"ry":0.918},{"row":0,"col":3,"x":3.298,"y":0,"r":0},{"row":0,"col":4,"x":4.298,"y":0.324,"r":0},{"row":0,"col":5,"x":5.298,"y":0.471,"r":0},{"row":0,"col":11,"x":10.397,"y":0.471,"r":0},{"row":0,"col":12,"x":11.397,"y":0.324,"r":0},{"row":0,"col":13,"x":12.397,"y":0,"r":0},{"row":0,"col":14,"x":13.567,"y":0.418,"r":5,"rx":14.067,"ry":0.918},{"row":0,"col":15,"x":14.631,"y":1.338,"r":10,"rx":15.131,"ry":1.838},{"row":0,"col":16,"x":15.616,"y":1.522,"r":10,"rx":16.116,"ry":2.022},{"row":1,"col":0,"x":0.243,"y":2.507,"r":-10,"rx":0.743,"ry":3.007},{"row":1,"col":1,"x":1.228,"y":2.323,"r":-10,"rx":1.728,"ry":2.823},{"row":1,"col":2,"x":2.211,"y":1.415,"r":-5,"rx":2.711,"ry":1.915},{"row":1,"col":3,"x":3.298,"y":1,"r":0},{"row":1,"col":4,"x":4.298,"y":1.324,"r":0},{"row":1,"col":5,"x":5.298,"y":1.471,"r":0},{"row":1,"col":11,"x":10.397,"y":1.471,"r":0},{"row":1,"col":12,"x":11.397,"y":1.324,"r":0},{"row":1,"col":13,"x":12.397,"y":1,"r":0},{"row":1,"col":14,"x":13.484,"y":1.415,"r":5,"rx":13.984,"ry":1.915},{"row":1,"col":15,"x":14.467,"y":2.323,"r":10,"rx":14.967,"ry":2.823},{"row":1,"col":16,"x":15.452,"y":2.507,"r":10,"rx":15.952,"ry":3.007},{"row":2,"col":0,"x":0.407,"y":3.492,"r":-10,"rx":0.907,"ry":3.992},{"row":2,"col":1,"x":1.392,"y":3.308,"r":-10,"rx":1.892,"ry":3.808},{"row":2,"col":2,"x":2.293,"y":2.411,"r":-5,"rx":2.793,"ry":2.911},{"row":2,"col":3,"x":3.298,"y":2,"r":0},{"row":2,"col":4,"x":4.298,"y":2.324,"r":0},{"row":2,"col":5,"x":5.298,"y":2.471,"r":0},{"row":2,"col":6,"x":6.422,"y":2.849,"r":30,"rx":6.922,"ry":3.349},{"row":2,"col":10,"x":9.273,"y":2.849,"r":-30,"rx":9.773,"ry":3.349},{"row":2,"col":11,"x":10.397,"y":2.471,"r":0},{"row":2,"col":12,"x":11.397,"y":2.324,"r":0},{"row":2,"col":13,"x":12.397,"y":2,"r":0},{"row":2,"col":14,"x":13.402,"y":2.411,"r":5,"rx":13.9,"ry":2.911},{"row":2,"col":15,"x":14.303,"y":3.308,"r":10,"rx":14.803,"ry":3.808},{"row":2,"col":16,"x":15.288,"y":3.492,"r":10,"rx":15.788,"ry":3.992},{"row":3,"col":4,"x":3.713,"y":3.59,"r":0},{"row":3,"col":5,"x":4.804,"y":3.493,"r":15,"rx":5.304,"ry":3.993},{"row":3,"col":6,"x":5.824,"y":3.944,"r":30,"rx":6.324,"ry":4.444},{"row":3,"col":7,"x":6.695,"y":4.658,"r":45,"rx":7.195,"ry":5.158},{"row":3,"col":9,"x":9,"y":4.658,"r":-45,"rx":9.5,"ry":5.158},{"row":3,"col":10,"x":9.871,"y":3.944,"r":-30,"rx":10.371,"ry":4.444},{"row":3,"col":11,"x":10.891,"y":3.493,"r":-15,"rx":11.391,"ry":3.993},{"row":3,"col":12,"x":11.982,"y":3.59,"r":0}]}}}')}}]); \ No newline at end of file
diff --git a/keyboard-data/hw75_keyboard-json-metadata.12e6956227fc38b1671a.js b/keyboard-data/hw75_keyboard-json-metadata.12e6956227fc38b1671a.js
new file mode 100644
index 0000000..084df63
--- /dev/null
+++ b/keyboard-data/hw75_keyboard-json-metadata.12e6956227fc38b1671a.js
@@ -0,0 +1 @@
+"use strict";(self.webpackChunkapp=self.webpackChunkapp||[]).push([[3283],{80629:function(o){o.exports=JSON.parse('{"id":"hw75_keyboard","name":"HelloWord Keyboard","layouts":{"default_layout":{"name":"default_layout","layout":[{"row":0,"col":0,"x":0,"y":0},{"row":0,"col":2,"x":2,"y":0},{"row":0,"col":3,"x":3,"y":0},{"row":0,"col":4,"x":4,"y":0},{"row":0,"col":5,"x":5,"y":0},{"row":0,"col":7,"x":6.5,"y":0},{"row":0,"col":8,"x":7.5,"y":0},{"row":0,"col":9,"x":8.5,"y":0},{"row":0,"col":10,"x":9.5,"y":0},{"row":0,"col":12,"x":11,"y":0},{"row":0,"col":13,"x":12,"y":0},{"row":0,"col":14,"x":13,"y":0},{"row":0,"col":15,"x":14,"y":0},{"row":0,"col":17,"x":15.5,"y":0},{"row":1,"col":0,"x":0,"y":1.25},{"row":1,"col":1,"x":1,"y":1.25},{"row":1,"col":2,"x":2,"y":1.25},{"row":1,"col":3,"x":3,"y":1.25},{"row":1,"col":4,"x":4,"y":1.25},{"row":1,"col":5,"x":5,"y":1.25},{"row":1,"col":6,"x":6,"y":1.25},{"row":1,"col":7,"x":7,"y":1.25},{"row":1,"col":8,"x":8,"y":1.25},{"row":1,"col":9,"x":9,"y":1.25},{"row":1,"col":10,"x":10,"y":1.25},{"row":1,"col":11,"x":11,"y":1.25},{"row":1,"col":12,"x":12,"y":1.25},{"row":1,"col":13,"x":13,"y":1.25,"w":2},{"row":1,"col":17,"x":15.5,"y":1.25},{"row":2,"col":0,"x":0,"y":2.25,"w":1.5},{"row":2,"col":2,"x":1.5,"y":2.25},{"row":2,"col":3,"x":2.5,"y":2.25},{"row":2,"col":4,"x":3.5,"y":2.25},{"row":2,"col":5,"x":4.5,"y":2.25},{"row":2,"col":6,"x":5.5,"y":2.25},{"row":2,"col":7,"x":6.5,"y":2.25},{"row":2,"col":8,"x":7.5,"y":2.25},{"row":2,"col":9,"x":8.5,"y":2.25},{"row":2,"col":10,"x":9.5,"y":2.25},{"row":2,"col":11,"x":10.5,"y":2.25},{"row":2,"col":12,"x":11.5,"y":2.25},{"row":2,"col":13,"x":12.5,"y":2.25},{"row":2,"col":14,"x":13.5,"y":2.25,"w":1.5},{"row":2,"col":17,"x":15.5,"y":2.25},{"row":3,"col":0,"x":0,"y":3.25,"w":1.75},{"row":3,"col":2,"x":1.75,"y":3.25},{"row":3,"col":3,"x":2.75,"y":3.25},{"row":3,"col":4,"x":3.75,"y":3.25},{"row":3,"col":5,"x":4.75,"y":3.25},{"row":3,"col":6,"x":5.75,"y":3.25},{"row":3,"col":7,"x":6.75,"y":3.25},{"row":3,"col":8,"x":7.75,"y":3.25},{"row":3,"col":9,"x":8.75,"y":3.25},{"row":3,"col":10,"x":9.75,"y":3.25},{"row":3,"col":11,"x":10.75,"y":3.25},{"row":3,"col":12,"x":11.75,"y":3.25},{"row":3,"col":14,"x":12.75,"y":3.25,"w":2.25},{"row":3,"col":17,"x":15.5,"y":3.25},{"row":4,"col":0,"x":0,"y":4.25,"w":2.25},{"row":4,"col":2,"x":2.25,"y":4.25},{"row":4,"col":3,"x":3.25,"y":4.25},{"row":4,"col":4,"x":4.25,"y":4.25},{"row":4,"col":5,"x":5.25,"y":4.25},{"row":4,"col":6,"x":6.25,"y":4.25},{"row":4,"col":7,"x":7.25,"y":4.25},{"row":4,"col":8,"x":8.25,"y":4.25},{"row":4,"col":9,"x":9.25,"y":4.25},{"row":4,"col":10,"x":10.25,"y":4.25},{"row":4,"col":11,"x":11.25,"y":4.25},{"row":4,"col":12,"x":12.25,"y":4.25,"w":1.75},{"row":4,"col":15,"x":14.25,"y":4.5},{"row":4,"col":17,"x":15.5,"y":4.25},{"row":5,"col":0,"x":0,"y":5.25,"w":1.25},{"row":5,"col":1,"x":1.25,"y":5.25,"w":1.25},{"row":5,"col":2,"x":2.5,"y":5.25,"w":1.25},{"row":5,"col":6,"x":3.75,"y":5.25,"w":6.25},{"row":5,"col":10,"x":10,"y":5.25},{"row":5,"col":11,"x":11,"y":5.25},{"row":5,"col":12,"x":12,"y":5.25},{"row":5,"col":14,"x":13.25,"y":5.5},{"row":5,"col":15,"x":14.25,"y":5.5},{"row":5,"col":16,"x":15.25,"y":5.5},{"row":6,"col":3,"x":3.75,"y":6.25,"w":1.04,"h":0.5},{"row":6,"col":4,"x":4.79,"y":6.25,"w":1.04,"h":0.5},{"row":6,"col":5,"x":5.83,"y":6.25,"w":1.04,"h":0.5},{"row":6,"col":6,"x":6.88,"y":6.25,"w":1.04,"h":0.5},{"row":6,"col":7,"x":7.92,"y":6.25,"w":1.04,"h":0.5},{"row":6,"col":8,"x":8.96,"y":6.25,"w":1.04,"h":0.5}]}},"sensors":[]}')}}]); \ No newline at end of file
diff --git a/runtime.fabd54b8945f923d7b52.js b/runtime.fabd54b8945f923d7b52.js
new file mode 100644
index 0000000..9a86020
--- /dev/null
+++ b/runtime.fabd54b8945f923d7b52.js
@@ -0,0 +1,2 @@
+!function(){"use strict";var e,a,d,c,o,s={},t={};function l(e){var a=t[e];if(void 0!==a)return a.exports;var d=t[e]={id:e,loaded:!1,exports:{}};return s[e].call(d.exports,d,d.exports,l),d.loaded=!0,d.exports}l.m=s,e=[],l.O=function(a,d,c,o){if(!d){var s=1/0;for(y=0;y<e.length;y++){d=e[y][0],c=e[y][1],o=e[y][2];for(var t=!0,k=0;k<d.length;k++)(!1&o||s>=o)&&Object.keys(l.O).every((function(e){return l.O[e](d[k])}))?d.splice(k--,1):(t=!1,o<s&&(s=o));if(t){e.splice(y--,1);var b=c();void 0!==b&&(a=b)}}return a}o=o||0;for(var y=e.length;y>0&&e[y-1][2]>o;y--)e[y]=e[y-1];e[y]=[d,c,o]},l.n=function(e){var a=e&&e.__esModule?function(){return e.default}:function(){return e};return l.d(a,{a:a}),a},d=Object.getPrototypeOf?function(e){return Object.getPrototypeOf(e)}:function(e){return e.__proto__},l.t=function(e,c){if(1&c&&(e=this(e)),8&c)return e;if("object"==typeof e&&e){if(4&c&&e.__esModule)return e;if(16&c&&"function"==typeof e.then)return e}var o=Object.create(null);l.r(o);var s={};a=a||[null,d({}),d([]),d(d)];for(var t=2&c&&e;"object"==typeof t&&!~a.indexOf(t);t=d(t))Object.getOwnPropertyNames(t).forEach((function(a){s[a]=function(){return e[a]}}));return s.default=function(){return e},l.d(o,s),o},l.d=function(e,a){for(var d in a)l.o(a,d)&&!l.o(e,d)&&Object.defineProperty(e,d,{enumerable:!0,get:a[d]})},l.f={},l.e=function(e){return Promise.all(Object.keys(l.f).reduce((function(a,d){return l.f[d](e,a),a}),[]))},l.u=function(e){return({5:"keyboard-data/lotus58-json-metadata",47:"keyboard-data/ergodash-json-metadata",68:"locales/keys_ro-keycodes",129:"locales/keys_lt_ibm-keycodes",308:"locales/keys_be-keycodes",320:"keyboard-data/kbdfans_tofu65_v2-json-metadata",327:"keyboard-data/reviung41-json-metadata",389:"locales/keys_mn-keycodes",398:"locales/keys_lo-keycodes",421:"locales/keys_bg_latin-keycodes",422:"locales/keys_th_pattachote-keycodes",504:"keyboard-data/bt60_v2-json-metadata",539:"locales/keys_khb_tai_le-keycodes",578:"locales/keys_sr_latin-keycodes",630:"keyboard-data/pancake-json-metadata",639:"keyboard-data/splitkb_aurora_sofle-json-metadata",749:"locales/keys_dyu-keycodes",771:"locales/keys_es-keycodes",814:"locales/keys_tzm-keycodes",819:"locales/keys_fa_standard-keycodes",833:"locales/keys_it_142-keycodes",920:"locales/keys_pl_programmers-keycodes",944:"keyboard-data/jian-json-metadata",951:"locales/keys_kk-keycodes",1038:"keyboard-data/bat43-json-metadata",1081:"keyboard-data/splitreus62-json-metadata",1145:"keyboard-data/ferris_rev02-json-metadata",1156:"locales/keys_man-keycodes",1206:"keyboard-data/glove80-json-metadata",1315:"locales/keys_bs-keycodes",1319:"keyboard-data/zmk_uno-json-metadata",1325:"keyboard-data/ergodox-json-metadata",1343:"locales/keys_en_gb_extended-keycodes",1480:"locales/keys_bn-keycodes",1507:"locales/keys_de_ibm-keycodes",1514:"locales/keys_fr_swiss-keycodes",1522:"keyboard-data/bdn9_rev2-json-metadata",1545:"locales/keys_el-keycodes",1547:"locales/keys_ml-keycodes",1616:"keyboard-data/redox-json-metadata",1671:"locales/keys_lv-keycodes",1718:"keyboard-data/reviung5-json-metadata",1720:"locales/keys_sk_qwerty-keycodes",1803:"ConditionalLayerEditorTab",1808:"locales/keys_de_belgian_period-keycodes",1872:"locales/keys_pt_abnt-keycodes",1936:"locales/keys_ckb-keycodes",2015:"locales/keys_hy-keycodes",2124:"keyboard-data/two_percent_milk-json-metadata",2135:"keyboard-data/romac-json-metadata",2169:"keyboard-data/clog-json-metadata",2231:"locales/keys_sr-keycodes",2247:"locales/keys_mr-keycodes",2259:"keyboard-data/adv360pro-json-metadata",2271:"locales/keys_nl_period-keycodes",2275:"locales/keys_tk-keycodes",2284:"keyboard-data/eternal_keypad_lefty-json-metadata",2308:"keyboard-data/jorne-json-metadata",2383:"locales/keys_or-keycodes",2408:"locales/keys_bg-keycodes",2602:"locales/keys_uk-keycodes",2619:"locales/keys_syr_phonetic-keycodes",2621:"locales/keys_ka_qwerty-keycodes",2650:"locales/keys_ar_azerty-keycodes",2659:"locales/keys_cs_qwerty-keycodes",2757:"keyboard-data/eek-json-metadata",2787:"locales/keys_gu-keycodes",2835:"locales/keys_tmh-keycodes",2838:"keyboard-data/bt60_v1_hs-json-metadata",2921:"keyboard-data/bt75_v1-json-metadata",2939:"keyboard-data/nibble-json-metadata",2947:"locales/keys_us_international-keycodes",2982:"locales/keys_ha-keycodes",3033:"locales/keys_es_variation-keycodes",3039:"keyboard-data/romac_plus-json-metadata",3194:"locales/keys_mn_phags_pa-keycodes",3197:"keyboard-data/s40nc-json-metadata",3203:"GithubPicker",3268:"locales/keys_km_nida-keycodes",3282:"locales/keys_bo-keycodes",3283:"keyboard-data/hw75_keyboard-json-metadata",3322:"locales/keys_hu_101-keycodes",3359:"locales/keys_de-keycodes",3362:"locales/keys_dvorak_right-keycodes",3393:"locales/keys_tg-keycodes",3394:"keyboard-data/hummingbird-json-metadata",3474:"locales/keys_ug-keycodes",3504:"keyboard-data/lpgalaxy_blank_slate-json-metadata",3618:"locales/keys_haw-keycodes",3647:"locales/keys_az_standard-keycodes",3687:"locales/keys_ka-keycodes",3735:"locales/keys_cs_programmers-keycodes",3743:"locales/keys_el_220-keycodes",3746:"locales/keys_lt_standard-keycodes",3755:"keyboard-data/reviung34-json-metadata",3804:"keyboard-data/hillside46-json-metadata",3826:"keyboard-data/bt60_v1-json-metadata",3880:"locales/keys_mt_101-keycodes",3893:"locales/keys_dz-keycodes",3895:"keyboard-data/kyria_rev3-json-metadata",3983:"LocalPicker",4013:"keyboard-data/totem-json-metadata",4036:"locales/keys_ta-keycodes",4070:"keyboard-data/m60-json-metadata",4156:"keyboard-data/kyria_rev2-json-metadata",4213:"keyboard-data/corneish_zen-json-metadata",4218:"FileSystemPicker",4257:"locales/keys_tn-keycodes",4260:"keyboard-data/boardsource3x4-json-metadata",4263:"locales/keys_el_319-keycodes",4289:"locales/keys_gn-keycodes",4296:"locales/keys_el_polytonic-keycodes",4415:"keyboard-data/eternal_keypad-json-metadata",4443:"locales/keys_bug-keycodes",4465:"locales/keys_it-keycodes",4491:"locales/keys_fr_canadian_french-keycodes",4595:"locales/keys_bg_phonetic-keycodes",4670:"locales/keys_tr_f-keycodes",4688:"locales/keys_chr_phonetic-keycodes",4717:"locales/keys_sv_sami-keycodes",4733:"DemoPicker",4777:"locales/keys_syr-keycodes",4795:"locales/keys_ro_programmers-keycodes",4821:"locales/keys_pt-keycodes",4824:"locales/keys_te-keycodes",4830:"keyboard-data/chalice-json-metadata",4843:"keyboard-data/a_dux-json-metadata",4887:"locales/keys_lis_standard-keycodes",4892:"locales/keys_ne-keycodes",4919:"locales/keys_nb-keycodes",4959:"keyboard-data/crbn-json-metadata",4962:"keyboard-data/bfo9000-json-metadata",5015:"locales/keys_my-keycodes",5074:"WarningsTab",5272:"keyboard-data/quefrency-json-metadata",5303:"locales/keys_tr-keycodes",5332:"locales/keys_ba-keycodes",5354:"locales/keys_srb-keycodes",5356:"keyboard-data/boardsource5x12-json-metadata",5422:"keyboard-data/bt65_v1-json-metadata",5485:"locales/keys_dv-keycodes",5533:"keyboard-data/preonic_rev3-json-metadata",5604:"locales/keys_is-keycodes",5606:"locales/keys_lb-keycodes",5634:"keyboard-data/splitkb_aurora_lily58-json-metadata",5708:"ClipboardPicker",5715:"locales/keys_sl-keycodes",5810:"keyboard-data/naked60-json-metadata",5819:"MacroEditorTab",5821:"locales/keys_el_latin_319-keycodes",5840:"locales/keys_iu-keycodes",5842:"locales/keys_khb-keycodes",5868:"BehaviorEditorTab",5891:"keyboard-data/splitkb_aurora_sweep-json-metadata",5991:"locales/keys_non-keycodes",5998:"locales/keys_yo-keycodes",6019:"keyboard-data/tg4x-json-metadata",6049:"locales/keys_ps-keycodes",6157:"locales/keys_dvorak-keycodes",6158:"keyboard-data/leeloo-json-metadata",6184:"locales/keys_de_swiss-keycodes",6274:"keyboard-data/leeloo_micro-json-metadata",6324:"keyboard-data/lily58-json-metadata",6360:"keyboard-data/qaz-json-metadata",6392:"locales/keys_ar-keycodes",6415:"locales/keys_nl-keycodes",6429:"locales/keys_es_latin_american-keycodes",6457:"locales/keys_gd-keycodes",6528:"keyboard-data/knob_goblin-json-metadata",6684:"locales/keys_th-keycodes",6688:"locales/keys_hi-keycodes",6691:"locales/keys_da-keycodes",6710:"locales/keys_jv-keycodes",6777:"locales/keys_lv_qwerty-keycodes",6793:"LayerEditorTab",6794:"locales/keys_km-keycodes",6943:"locales/keys_chr-keycodes",7022:"locales/keys_et-keycodes",7038:"keyboard-data/corne-json-metadata",7069:"locales/keys_wo-keycodes",7080:"locales/keys_uz-keycodes",7108:"locales/keys_he_standard-keycodes",7110:"keyboard-data/osprette-json-metadata",7190:"keyboard-data/waterfowl-json-metadata",7218:"keyboard-data/nice60-json-metadata",7228:"locales/keys_uk_enhanced-keycodes",7266:"keyboard-data/zodiark-json-metadata",7289:"locales/keys_sah-keycodes",7292:"locales/keys_ru_phonetic-keycodes",7303:"locales/keys_kl-keycodes",7305:"locales/keys_tt-keycodes",7316:"keyboard-data/helix-json-metadata",7446:"locales/keys_he-keycodes",7495:"locales/keys_en_gb-keycodes",7554:"locales/keys_fr-keycodes",7568:"locales/keys_mt-keycodes",7603:"locales/keys_el_latin_220-keycodes",7686:"locales/keys_dsb_extended-keycodes",7771:"locales/keys_lt-keycodes",7803:"locales/keys_sk-keycodes",7892:"locales/keys_ig-keycodes",7905:"keyboard-data/fourier-json-metadata",7950:"locales/keys_fr_belgian_period-keycodes",7961:"keyboard-data/tidbit-json-metadata",7994:"locales/keys_vi-keycodes",7997:"keyboard-data/elephant42-json-metadata",8017:"locales/keys_ar_102-keycodes",8019:"locales/keys_se-keycodes",8041:"locales/keys_mk-keycodes",8070:"locales/keys_az-keycodes",8110:"locales/keys_tmh_extended-keycodes",8119:"locales/keys_hi_traditional-keycodes",8173:"locales/keys_sq-keycodes",8185:"locales/keys_ga-keycodes",8207:"locales/keys_cs-keycodes",8216:"locales/keys_ur-keycodes",8242:"locales/keys_az_cyrillic-keycodes",8251:"locales/keys_fr_canadian_standard-keycodes",8284:"keyboard-data/planck_rev6-json-metadata",8301:"keyboard-data/leeloo_rev2-json-metadata",8302:"locales/keys_en_india-keycodes",8307:"locales/keys_nso-keycodes",8315:"ComboEditorTab",8374:"keyboard-data/murphpad-json-metadata",8391:"locales/keys_pl-keycodes",8409:"keyboard-data/contra-json-metadata",8415:"keyboard-data/snap-json-metadata",8427:"locales/keys_ko-keycodes",8438:"locales/keys_la_old_italic-keycodes",8451:"keyboard-data/cradio-json-metadata",8568:"locales/keys_mn_traditional-keycodes",8599:"locales/keys_fa-keycodes",8636:"locales/keys_nb_sami-keycodes",8642:"keyboard-data/kyria-json-metadata",8649:"locales/keys_sv-keycodes",8699:"locales/keys_se_finland_sweden-keycodes",8706:"locales/keys_fi-keycodes",8709:"locales/keys_kn-keycodes",8729:"keyboard-data/sofle-json-metadata",8793:"locales/keys_dvorak_left-keycodes",8796:"locales/keys_hu-keycodes",8813:"keyboard-data/microdox-json-metadata",8855:"locales/keys_fr_belgian-keycodes",8945:"locales/keys_lis-keycodes",8956:"locales/keys_bm-keycodes",8971:"locales/keys_el_latin-keycodes",8986:"locales/keys_ru-keycodes",9061:"locales/keys_si-keycodes",9081:"locales/keys_lv_standard-keycodes",9082:"locales/keys_as-keycodes",9112:"locales/keys_pt_abnt2-keycodes",9115:"keyboard-data/reviung53-json-metadata",9134:"keyboard-data/iris-json-metadata",9136:"locales/keys_hy_phonetic-keycodes",9142:"locales/keys_bn_inscript-keycodes",9176:"locales/keys_iu_latin-keycodes",9193:"locales/keys_so-keycodes",9244:"locales/keys_ky-keycodes",9351:"keyboard-data/splitkb_aurora_corne-json-metadata",9414:"locales/keys_sat-keycodes",9512:"locales/keys_mi-keycodes",9586:"locales/keys_fo-keycodes",9616:"locales/keys_dsb-keycodes",9619:"locales/keys_de_belgian-keycodes",9698:"locales/keys_ka_ergonomic-keycodes",9699:"keyboard-data/slicemk_ergodox-json-metadata",9707:"keyboard-data/jiran-json-metadata",9866:"locales/keys_fi_sami-keycodes",9893:"locales/keys_got-keycodes",9989:"locales/keys_pa-keycodes"}[e]||e)+"."+{5:"e4e4ffd65cbc4c65ecf1",47:"68ec143ed38bce6cbea4",68:"7b17882894d827d4a691",129:"93e9e7b55ff4db1b45f4",308:"e7d0c13e3ecc92b49444",320:"e0e22f0d3ac8f761ce0c",327:"2fa7d61410ce114657ae",389:"606dc039dbee5e7de1d4",398:"c8c541aaf844eeda8149",401:"bdae6943931998cef4fd",421:"dbb2c1733f9a7579098e",422:"666bd3a0ce35c4a274ff",504:"08471cae2d972b76b0db",539:"f13efc888eac2aa8e903",578:"04d1220d52840040f60b",630:"6b46117b424a7c066032",639:"ed35220caee82d9a98c9",749:"76b287374b8ae5f7a06c",771:"476e9ba05219d84921f3",814:"4764231c07fa0d0a04f6",819:"d3aa21549ed684a419c3",833:"46444cf657dcf1bb1593",920:"dc595b5183e9c47ff557",944:"1d97a367f9bc03bebc24",951:"f0042702141cbb2ccabf",1038:"0dd9fa3315bf40184cef",1081:"b7803c34bd0bfa5dafc5",1145:"eb22ba2cdea48aa2d95d",1156:"bb15c7631776a604bdb7",1206:"6c8cfcdc73375e9ab85d",1315:"0db48f03173200e045f2",1319:"235d28f92c3ebf9de6a7",1325:"130bfa082550dfb7309c",1343:"ee06049f65c14c9be2c5",1480:"0e19ada3b1ed7eae78ef",1507:"8cada04b0e43007bb4be",1514:"649b8ed65f356fa690ac",1522:"51261fedb8ec11fb688b",1545:"b152a1976be0001bfb43",1547:"fd5557effaaa558c9c03",1616:"8ad0b8c64ae606fb9b8a",1671:"6bdbbb20361914659d30",1718:"48c9ef74da6b481e09e7",1720:"3328c6b7c20fbf918852",1803:"1e7199493f6d2ffd30e3",1808:"abb32a6fe65c55952158",1872:"719fd6d2cfbc98065faa",1936:"7cca553598a85b9fb048",2015:"1189ea9050bf52385110",2124:"3a4b66bbd69961c6d5c2",2135:"525d812350d5ced6043f",2169:"63ac13cc199c3dc1a8f3",2231:"5080f1cbf58c1317f585",2247:"cc1d4b1cd7cd39cbb429",2259:"bc948c3155b6a0e37bcb",2271:"b737428706ade1ab91ed",2275:"6c3d70cbc0a2a960dede",2284:"88dbffa6a51dab15b0fe",2308:"3dcb94a43fdc92f06e92",2383:"5ed644b5f167e67560da",2408:"49d33aa415e8f4992f21",2602:"d7b17cf5cd894ba30b64",2619:"5153da3fbe85b2f1f7f8",2621:"bd9a8dabd0cd755853b5",2650:"3f3cfa2fa09a2668c59f",2659:"c36d1660242da4a6482d",2757:"7bb49d3d556b1d93c064",2787:"0ac3afacea3c7523fb1c",2835:"551ed1eddb65a0855ec0",2838:"84c69ef5c8dc271afe1d",2921:"174b85b391189048329c",2939:"7a308a62c65bc646f73f",2947:"b87b567c4f703432d58f",2982:"36e9273f2ce6ff4f4673",3033:"b26fcf2e16e386fb33b1",3039:"af983ffea98d132ceba4",3194:"8a08d0da753f48f7f95e",3197:"c76645f1783dc0be1e59",3203:"6d63eed6abfd789c0f68",3255:"d9bbbab02bde932a5d99",3268:"f3f0e12f35d6ede0f40f",3282:"01584f37d4d33ad63efb",3283:"12e6956227fc38b1671a",3322:"7ebaf8ec7ac148f4669d",3359:"2b1b7a00d5f5a3f3d4d7",3362:"108c88849c8b60e605f9",3393:"2b68325532554cc8d8ba",3394:"b0af5ee288c25da5c283",3474:"d8e51748742a2c676e34",3504:"9217e0d2eebbbbfb04e1",3618:"d8420dbaf5d768e5d2d4",3647:"6703ed839e825c8771d3",3687:"e750c133ca55d5c6e548",3735:"c9d93c92c6c0423a5416",3743:"ebb2429d5bbde92909c4",3746:"a4deb37dc8a93b498757",3755:"9f2a654f0d9045af7353",3804:"ea98e13243cbd23816c3",3826:"97699fa9c0a1372dedb5",3880:"fcaa03e1df43df95ab97",3893:"c7df98614033002329af",3895:"132914156c62a82b3268",3983:"aac52c448fa367f32450",4013:"cb89f5091aba0e288065",4036:"c6e3659928ad2fb6259c",4070:"f616dcb60b78533d6bf0",4156:"3ac284a21e7e7924f35f",4213:"6f4898d50b5338d7300e",4218:"d88c8c732daa8f33f0b9",4257:"f5fd10e05ad3d0536453",4260:"7cf189c757bde6655415",4263:"931dcb76dcb966d4c80f",4289:"fa48da5f908e2f1c31fc",4296:"6398e9a1092dbd966cd4",4415:"39fdfb3dfabfb49c9f35",4443:"3d9b42bc9254f6af0784",4465:"f4574a240d1cc776a64d",4491:"85813c1f613b510d8c53",4595:"32f60188d0eaea679456",4670:"c00667ffdde3a68622ab",4688:"31df1ae6ad5f78bd01fc",4717:"abfe395f6284ad19bfcd",4733:"903cb98477a23460423b",4777:"2224cbda2741be9da336",4795:"ed0ccd39951359fbbbca",4820:"b6c55aee1c4cd8c91d2c",4821:"ddd40fd58db42a579031",4824:"c7ebcc8f56f74361647e",4830:"e201d6b24b9cb1e2ad99",4843:"fd9113741beefa00f0b5",4887:"f052ae8bfdfdb1d513db",4892:"21ca05f55d2498c46129",4919:"4a12c76edfa94312b0ea",4959:"808a01eda41b51d14bcb",4962:"69a545b5fcc0f7130c05",5015:"0f3a2242ea9f9a42c4f9",5074:"b219616848293106abf3",5272:"c7e0af70b0a8c39034f3",5303:"a4497d24307a9897e5b5",5332:"777b50e4b114b352d258",5354:"93a522db48b96a4a0579",5356:"1fba1c8cde51e25e2627",5422:"816919c56ffea29156fe",5485:"55a0ec07c8abbfe214b4",5533:"c45da345e0fb10fa3770",5604:"f11c3e2dd4430602f243",5606:"8cfe7dc5f09ec96ea95e",5634:"d4e880ef4bc1bdca79dd",5708:"5eaa709d18d0b99394f7",5715:"4ef9b548b6cfc7c605f9",5810:"637b457fc2054bcead5a",5819:"ec06b0a746bf81ddd07b",5821:"a4f5e6f31f799696cdaf",5840:"7e4e574c1214010c07dc",5842:"f7c89fd7bf3602a3399e",5868:"dbd435cab7f3c034affc",5891:"3076456f65d49468799e",5991:"512b59c58af9c82a47d5",5998:"91c971fb3f5767c3d295",6019:"5a051e1f675329cd7d8c",6049:"a62bb2191cc0eecda711",6157:"bef0dfd9bedd3d83446d",6158:"889d4299cca613161f97",6184:"732ddeb1a32a40e2fc3a",6274:"5630298fa575b0640e66",6324:"1c52c22287b2cac5bded",6360:"13927c112e935b8e10f6",6392:"57575fbb50fccb5094ea",6415:"627e38aee29608a5d6d2",6429:"b9b3578a604e51fa3455",6457:"ba688263a9c85e9843e1",6528:"b29141f3be2170066ee6",6538:"ce55822fe0adb5b1de59",6684:"1274b7cfa9914c7663c9",6688:"785926eac6007527226b",6691:"b6cb655f0aa7dcd8787b",6710:"69f4ed313d19455e88f9",6777:"dab38c8f01434d45eb86",6793:"122a21ff258672b62270",6794:"aa4330a831430380f7ca",6943:"9c0653724d1cbfa9ed86",7022:"9ece5bc0d21090bf91ad",7038:"84994fde2fafd27c8862",7069:"9929a74e7e92648a0f87",7080:"f083c93705b5e80e4a4e",7083:"e66a4f659b8417fa81d5",7108:"906eeacc617750894b22",7110:"a4955e02f5ec94c45697",7190:"c0df8d5fa12d9a44ddb6",7218:"5b518329a6b8d1f99ef2",7228:"0a7f301444940610aa3a",7266:"b1ddb085343413bd0f2f",7289:"2fcc4bbd19c8e23bcfd9",7292:"364542469a1dd2fd041b",7303:"8f0ef5a9295943353ecf",7305:"ac74249c913980666520",7316:"cb79fc24092025f4f331",7446:"f26521f672e3d94f3c62",7459:"5951a9e57f5d71a1f6b8",7495:"82936e5baf0e764c1f69",7554:"bdf065db03088c4a4a5d",7568:"d9f3ad26c7b8b70fc1ec",7603:"d2d72bb470a9b2e1ede0",7686:"940990bf96e9413b2e9b",7771:"9942586e9e23d5059127",7803:"8760edf191caa0f69869",7892:"86c938c7b27b9a67ef50",7905:"23f278887548ad32dabd",7950:"6fb177a4414f9a190484",7961:"9a89555a7017f8c7c979",7994:"c160e150f1431807c681",7997:"ec7498e85efc36524556",8017:"4ff440be4782fef561ff",8019:"02f2f252639bb1d459b6",8041:"dae4eea51cfd6e1fbef3",8070:"27f10e0739c78ab95d16",8110:"c132517c950a214d5731",8119:"6b9ca21cd379f8731952",8173:"1776ba2cbbdeb9918f9c",8185:"ece0dc278594eee67cb1",8207:"7e346d396cf1e067b94f",8216:"d37ccb247dce11053578",8242:"3891fea81cc045034ad4",8251:"7bcdee9a73a0eb39baaa",8284:"6555a3d99bf8aa4a85ee",8301:"1b5acae3cec5d2b351b3",8302:"a314012ab607f1b4433f",8307:"e12dd0aad5e6a036ed3b",8315:"f319f20b57e6e2bd20c9",8374:"36097a9be925aa82182c",8391:"eb08511c704d549f8237",8409:"f43f0bce73bf9b6a9c36",8415:"1a17db797b8c7966d730",8427:"409e29315cd91dfb038b",8438:"41a503f1b2737d035a74",8451:"ee4fc77b506ae42c350d",8568:"bf0989c363612ba74ac9",8599:"6d9cc65f381ad7900f46",8636:"48c3cab70569554b8655",8642:"18f07547d3f5ddbc5c3b",8649:"519f8992d7c5b42bf4e1",8699:"6d4b2f405c48cf71aa4b",8706:"db5988f190774b8ecd7e",8709:"23a6c924e3535f7d1a2f",8729:"5e7f233ca2746206478d",8793:"8ab950b00b5526581a64",8796:"594621d4b7b51b6c639b",8813:"1008878cec3cb3882209",8855:"38f81f640e33d713ea2c",8873:"1d5057e09e2c51043381",8945:"d5a920b4e65ee30d8356",8956:"b025b7e50cad64b75370",8971:"f906bba2b2b7e87a8ae0",8986:"4ad17334f3ef911b6b0b",9061:"df8e5e2756a89a473ac0",9081:"b6c8611601548f3554f7",9082:"881f1d74bf2539659516",9112:"7ebcaf2caf566e7902b8",9115:"28bcd2881c7daa45e68a",9134:"ff4f0180e5079649f561",9136:"3249d48fcb94ad9e44a1",9142:"2352f58f23eb8d854a95",9176:"2557b40f7b4fcef345a9",9193:"e2b545b8ea15c0016312",9244:"0e4e64562de0635942ff",9351:"937871a659c22427a634",9414:"0ca3490c33ae15092395",9512:"dc6d783fb73d92e5a7fb",9586:"01151d539dca32e61272",9616:"0a4f102b3e946346e2d6",9619:"b044962c66577434486e",9698:"41ef3f798533a2b1c7cf",9699:"3b15f799029c5854cd71",9707:"7d9b702ab7a66f9882c9",9866:"110121669330cd9e737c",9893:"4ff6eee70cdc1c6e3325",9989:"82394c41d4a4746a6d10"}[e]+".js"},l.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),l.o=function(e,a){return Object.prototype.hasOwnProperty.call(e,a)},c={},o="app:",l.l=function(e,a,d,s){if(c[e])c[e].push(a);else{var t,k;if(void 0!==d)for(var b=document.getElementsByTagName("script"),y=0;y<b.length;y++){var f=b[y];if(f.getAttribute("src")==e||f.getAttribute("data-webpack")==o+d){t=f;break}}t||(k=!0,(t=document.createElement("script")).charset="utf-8",t.timeout=120,l.nc&&t.setAttribute("nonce",l.nc),t.setAttribute("data-webpack",o+d),t.src=e),c[e]=[a];var r=function(a,d){t.onerror=t.onload=null,clearTimeout(n);var o=c[e];if(delete c[e],t.parentNode&&t.parentNode.removeChild(t),o&&o.forEach((function(e){return e(d)})),a)return a(d)},n=setTimeout(r.bind(null,void 0,{type:"timeout",target:t}),12e4);t.onerror=r.bind(null,t.onerror),t.onload=r.bind(null,t.onload),k&&document.head.appendChild(t)}},l.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},l.nmd=function(e){return e.paths=[],e.children||(e.children=[]),e},function(){var e;l.g.importScripts&&(e=l.g.location+"");var a=l.g.document;if(!e&&a&&(a.currentScript&&(e=a.currentScript.src),!e)){var d=a.getElementsByTagName("script");d.length&&(e=d[d.length-1].src)}if(!e)throw new Error("Automatic publicPath is not supported in this browser");e=e.replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),l.p=e}(),function(){l.b=document.baseURI||self.location.href;var e={3666:0};l.f.j=function(a,d){var c=l.o(e,a)?e[a]:void 0;if(0!==c)if(c)d.push(c[2]);else if(3666!=a){var o=new Promise((function(d,o){c=e[a]=[d,o]}));d.push(c[2]=o);var s=l.p+l.u(a),t=new Error;l.l(s,(function(d){if(l.o(e,a)&&(0!==(c=e[a])&&(e[a]=void 0),c)){var o=d&&("load"===d.type?"missing":d.type),s=d&&d.target&&d.target.src;t.message="Loading chunk "+a+" failed.\n("+o+": "+s+")",t.name="ChunkLoadError",t.type=o,t.request=s,c[1](t)}}),"chunk-"+a,a)}else e[a]=0},l.O.j=function(a){return 0===e[a]};var a=function(a,d){var c,o,s=d[0],t=d[1],k=d[2],b=0;if(s.some((function(a){return 0!==e[a]}))){for(c in t)l.o(t,c)&&(l.m[c]=t[c]);if(k)var y=k(l)}for(a&&a(d);b<s.length;b++)o=s[b],l.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return l.O(y)},d=self.webpackChunkapp=self.webpackChunkapp||[];d.forEach(a.bind(null,0)),d.push=a.bind(null,d.push.bind(d))}(),l.nc=void 0}();
+//# sourceMappingURL=runtime.fabd54b8945f923d7b52.js.map \ No newline at end of file
diff --git a/shared.bbc21a8ffa35b41e3140.js b/shared.bbc21a8ffa35b41e3140.js
new file mode 100644
index 0000000..6a1115d
--- /dev/null
+++ b/shared.bbc21a8ffa35b41e3140.js
@@ -0,0 +1,2 @@
+(self.webpackChunkapp=self.webpackChunkapp||[]).push([[3712],{66767:function(_,e,t){_.exports=t(92908)},59857:function(_,e,t){const{removeStartingWhitespace:E,removeTrailingWhitespace:o,reindent:s,dedent:i}=t(3769),{getLabeledItem:a,getNodeLabels:n}=t(35125),S=" ",A="keep",r="trailing";function I(_){return-1!==_.text.indexOf("\n")}function l(_){return"comment"===_.type&&_.previousSibling&&"preproc_def"!==_.previousSibling.type&&"preproc_function_def"!==_.previousSibling.type&&"preproc_include"!==_.previousSibling.type&&_.previousSibling.endPosition.row===_.startPosition.row}function D(_,e){return e.repeat(u(_))}function u(_){let e=_,t=0;const E=_.tree.rootNode;for(;(e=e.parent)&&e&&e.id!==E.id;)"labeled_item"!==e.type&&t++;return t}function d(_,e){if(!e)return!1;const t=_.type===e.type;return t&&("node"===_.type||"labeled_item"===_.type&&"node"===_.childForFieldName("item").type)||"property"===(E=_)?.type&&(E.namedChildren.length>2||E.namedChildren.slice(1).some(I))||!t&&!l(e);var E}function R(_){return!!_.childForFieldName("address")}function O(_){return R(_)?`@${_.namedChildren[1].text}`:""}function c(_){return _.map((_=>`${_}: `)).join("")}_.exports={formatNode:function _(e,t={}){const{indent:u=S}=t;"labeled_item"===e.type&&(e=a(e));const[N,...T]=e.namedChildren,p=D(e,u);function U(e){return e.reduce(((E,o,s,i)=>{if(l(o)){const _=o.previousSibling;return E[E.length-1]+=o.tree.textCallback(_.endIndex,null,o.endIndex),E}return E.push(..._(o,t)),d(o,e[s+1])&&E.push(""),E}),[])}switch(e.type){case"document":return[...U(e.namedChildren),""];case"node":return[p+`${c(n(e))}${N.text}${O(e)} {`,...U(R(e)?e.namedChildren.slice(2):T),p+"};"];case"property":return function(e,t={}){const{indent:a=S,multilineIntegerCellsIndent:l=A}=t,[u,...d]=e.namedChildren,R=D(e,a),O=0===d.length,N=1===d.length&&!I(d[0]),T=1===d.length&&"integer_cells"===d[0].type,p=c(n(e));if(O)return[R+e.text];if(N)return[R+`${p}${u.text} = ${d[0].text};`];if(T){let _=E(o(d[0].text.slice(1,-2)));switch(l){case"reindent":_=s(_,R+a);break;case"dedent":_=i(_)}return[R+`${p}${u.text} = <`,..._.split("\n"),R+">;"]}const U=[].concat(...d.map((e=>_(e,t)))),C=R+`${u.text} = ${U.map((_=>_.trim())).join(", ")};`;return C.length<=80?[C]:function(e,t){const{indent:E=S,multilineListCommaStyle:o=r}=t,s=D(e,E),[i,...a]=e.namedChildren,n=[].concat(...a.map((e=>_(e,t))));return"leading"===o?[s+i.text,...n.map(((_,e)=>[s,E,0===e?"=":","," ",_.trim()].join(""))),s+E+";"]:[s+`${i.text} =`,...n.map(((_,e,t)=>[_,e===t.length-1?";":","].join("")))]}(e,t)}(e,t);case"preproc_include":case"preproc_def":case"preproc_function_def":return[e.text.trimEnd()];default:return[p+e.text]}},getModelineConfiguration:function(_){return _.rootNode.namedChildren.reduce(((_,e)=>{if("comment"===e.type){const t=e.text.startsWith("//")?e.text.slice(2).trim():e.text.slice(2,-2).trim();for(const e of t.split("\n")){const t=e.match(/dt-formatter:\s*(\w+)\s*=\s*(.+)$/);if(t){const[e,E]=t.slice(1);try{const t=JSON.parse(E);_[e]=t}catch{}}}}return _}),{})},getNodeDepth:u,isInlineComment:l,shouldIncludeBlank:d}},1530:function(_,e,t){_.exports=Object.assign({},t(35125),t(46933),t(31960),t(95147))},35125:function(_,e,t){const E=t(69282),o=t(49766);function s(_){return i(_.parent,"label")}function i(_,e){const t=[],E=_.walk();E.gotoFirstChild();do{const _=E.currentNode().isNamed(),o=E.currentFieldName()===e;_&&o&&t.push(E.currentNode())}while(E.gotoNextSibling());return E.delete(),t}function a(_,e){const t="string"==typeof e?_=>_===e:e;return _.namedChildren.filter((_=>"node"===_.type&&_.children.find((_=>"identifier"===_.type&&t(_.text)))))}_.exports={nodesAreConsecutive:function(_){return _.every(((e,t)=>!(t<_.length-1)||e.nextSibling.id===_[t+1].id))},getNodeLabels:function(_){return s(_).map((_=>_.text))},getNodeLabelNodes:s,getLabeledItem:function(_){return E("labeled_item"===_.type),_.childForFieldName("item")},getNodeChildrenByFieldName:i,findChildByIdentifier:function(_,e){_=[].concat(_);for(const t of o(_)){const _=a(t,e)[0];if(_)return _}},findChildrenByIdentifier:a,listNodes:function(_,e={}){const{stripNewlines:t=!0,limit:E=50}=e;for(const e of _){let _=e.text;t&&(_=_.replace(/\n/g,"")),E&&(_=_.slice(0,E)),console.log(e.id,`[${e.type}]`,"->",_)}}}},46933:function(_,e,t){const{getNodeChildrenByFieldName:E}=t(35125),{parseStringLiteral:o,parseIntegerCells:s,parseIntegerArray:i,parsePhandles:a,parsePhandle:n,parsePhandleArray:S,parseIntegerUnion:A,serializeIntValue:r,serializeArrayValue:I}=t(95147);function l(_,e){return _.children.find((_=>"property"===_.type&&_.children[0].text===e))}function D(_,e){return _.namedChildren.find((_=>"property"===_.type&&_.childForFieldName("name")?.text===e))}function u(_,e){const t=D(_,e);return t&&E(t,"value")}function d(_,e,t){const E=l(_,e),r=u(_,e);switch(t.type){case"string":return o(r?.[0]);case"boolean":return!!E;case"int":return s(r)?.[0];case"array":return i(r);case"phandle":return n(r);case"phandles":return a(r);case"phandle-array":return S(r);case"integer-union":return A(r)}}_.exports={findNodeProperty:l,getProperty:function(_,e){const t=_.children.find((_=>"property"===_.type&&_.children[0].text===e));return t&&{syntaxNode:t,name:e,value:t.children[2]?.text}},getPropertyNode:D,getPropertyValue:function(_,e){return(e="string"==typeof e?D(_,e):e)?.childForFieldName("value")},getPropertyValues:u,parsePropertiesFromSchema:function(_,e){return Object.keys(e).reduce(((t,E)=>{const o=e[E],s=d(_,E,o);return void 0!==s&&(t[E]={parsed:s}),t}),{})},parsePropertyFromSchema:d,serializePropertyFromSchema:function(_,e){switch(e.type){case"string":return`"${_.parsed}"`;case"boolean":return _.parsed;case"int":return r(_.parsed);case"array":return I(_.parsed);case"phandle":return _.parsed.map((_=>`<${_}>`)).join(", ");case"phandles":case"phandle-array":return _.parsed.reduce(((_,e)=>(e.startsWith("&")?_.push([e]):_[_.length-1].push(e),_)),[]).map((_=>`<${_.join(" ")}>`)).join(", ");case"integer-union":return _.parsed.length>0&&`<(${_.parsed.map((_=>_.toString())).join("|")})>`}}}},31960:function(_){function e(_,e={}){const{maxDepth:t=-1}=e,E=[{depth:0,node:_.rootNode||_}];return function(){const _=E.shift();return _&&(-1===t||_.depth<t)&&E.push(..._.node.namedChildren.map((e=>({node:e,depth:_.depth+1})))),_?.node}}function t(_,e={}){const{maxDepth:t=-1}=e,E=[{depth:0,node:_.rootNode||_}];return function(){const _=E.shift();return _&&(-1===t||_.depth<t)&&E.unshift(..._.node.namedChildren.map((e=>({node:e,depth:_.depth+1})))),_?.node}}function E(_,E,o={}){const{single:s=!1,maxDepth:i=-1,depthFirst:a=!1}=o,n=a?t(_,{maxDepth:i}):e(_,{maxDepth:i}),S=[];let A;for(;A=n();)if(E(A)){if(s)return A;S.push(A)}if(!s)return S}function o(_){let e;if(_ instanceof RegExp)e=e=>_.test(e);else if("string"==typeof _)e=e=>e===`"${_}"`;else{if("function"!=typeof _)throw new TypeError("Unexpected type "+typeof _);e=_}return _=>"property"===_.type&&"compatible"===_.childForFieldName("name").text&&e(_.childForFieldName("value")?.text)}_.exports={BreadthFirstIterator:e,DepthFirstIterator:t,searchTree:E,findLabeledItem:function(_,e){let t=E(_,(_=>"labeled_item"===_.type&&"identifier"===_.children[0].type&&_.children[0].text===e),{single:!0});if(!t)return null;do{t=t.childForFieldName("item")}while("labeled_item"===t.type);return t},findNodeByIdentifier:function(_,e){return E(_,(_=>"node"===_.type&&_.childForFieldName("name").text===e),{single:!0})},findNodeWithCompatible:function(_,e){return E(_,o(e),{single:!0})?.parent},findNodesWithCompatible:function(_,e){return E(_,o(e)).map((_=>_.parent))}}},95147:function(_,e,t){const{searchTree:E}=t(31960),o=_=>"unary_expression"===_.type&&"-"===_.childForFieldName("operator").type&&"integer_literal"===_.childForFieldName("argument").type,s=_=>["identifier","integer_literal"].includes(_.type)||o(_),i=_=>["identifier","integer_literal","reference","call_expression"].includes(_.type),a=_=>"reference"===_.type,n=_=>"integer_literal"===_.type||o(_)?Number(_.text):_.text;function S(_){return _?.flatMap((_=>_.namedChildren.filter(s).map(n)))}function A(_){return _?.flatMap((_=>_.namedChildren.filter(a).map((_=>_.text))))}function r(_){return(_=_.toString()).match(/-\d+/)&&(_=`(${_})`),_}_.exports={parseStringLiteral:function(_){return _?.text?.slice(1,-1)},parseIntegerCells:function(_){return S(_)},parseIntegerArray:S,parsePhandle:function(_){return A(_)[0]},parsePhandleArray:function(_){return _?.flatMap((_=>_.namedChildren.filter(i).map((_=>_.text))))},parsePhandles:A,parseIntegerUnion:function(_){return _?.flatMap((_=>E(_,s,{depthFirst:!0}))).map(n)},sanitizeIdentifier:function(_){return _.replace(/[^a-zA-Z0-9,._+-]/g,"_").slice(0,31)},serializeIntValue:function(_){return`<${r(_)}>`},serializeArrayValue:function(_){return`<${_.map(r).join(" ")}>`}}},89361:function(_,e,t){const E=t(69282),{ReferenceError:o}=E,s=t(66039),i=t(42148),a=t(33610),n=t(72243),S=t(84060),A=t(49766),{getNodeLabels:r,getLabeledItem:I}=t(35125),{getPropertyValues:l}=t(46933),{sanitizeIdentifier:D}=t(95147);_.exports={NodeCollection:class{managedProperties=[];_cached_container_node=null;_cached_container_tree_version=0;_cached_collection_nodes=null;_cached_collection_tree_version=0;constructor(_,e={}){this.document=_,e.managedProperties&&(this.managedProperties=e.managedProperties),e.lookupContainerNode&&(this.lookupContainerNode=e.lookupContainerNode.bind(this)),e.injectContainerNode&&(this.injectContainerNode=e.injectContainerNode.bind(this)),e.lookupNodes&&(this.lookupNodes=e.lookupNodes.bind(this)),e.injectNode&&(this.injectNode=e.injectNode.bind(this))}lookupContainerNode(){throw new o("Provide `lookupContainerNode` in constructor or override this method")}injectContainerNode(){throw new o("Provide `injectContainerNode` in constructor or override this method")}lookupNodes(){throw new o("Provide `lookupNodes` in constructor or override this method")}injectNode(){throw new o("Provide `injectNode` in constructor or override this method")}get container(){return this._cached_container_tree_version!==this.document._parse_version&&delete this._cached_container_node,this._cached_container_node||(this._cached_container_node=this.lookupContainerNode(this.document),this._cached_container_tree_version=this.document._parse_version),this._cached_container_node}get nodes(){return this._cached_collection_tree_version!==this.document._parse_version&&delete this._cached_collection_nodes,this._cached_collection_nodes||(this._cached_collection_nodes=this.lookupNodes(this.document),this._cached_collection_tree_version=this.document._parse_version),this._cached_collection_nodes}updateCollection(_){_.length&&!this.container&&(this.injectContainerNode(this),this.document.flushChanges());const e=[...this.nodes.keys()],t=i(n(_,"index"),(_=>this.nodes[_])),E=s(e,t),[o,a]=S(_,(_=>this.nodes[_.index]));for(const _ of o)this.updateNode(_.index,_);for(const _ of A(E))this.document.removeNode(this.nodes[_]);for(const _ of a)this.injectNode(this,_),this.document.flushChanges(),this.updateNode(this.nodes.length-1,_)}updateNode(_,e){const t=this.extractNode(this.nodes[_]);this.updateNodeName(_,e,t),this.updateNodeLabels(_,e,t),this.updateNodeProperties(_,e,t),this.cleanupNodeProperties(_,e,t)}updateNodeName(_,e,t){if(t.name!==e.name){const t=this.nodes[_].childForFieldName("name");this.document.replaceNode(t,D(e.name),{removeStartingWhitespace:!1})}}updateNodeLabels(_,e,t){a(t.labels,e.labels)||this.document.replaceNodeLabels(this.nodes[_],e.labels)}updateNodeProperties(_,e,t){const{properties:E}=e;for(const e in E){const o=E[e];a(o,t.properties[e])||this.document.setProperty(this.nodes[_],e,o)}}cleanupNodeProperties(_,e,t){const{properties:E}=e;for(const e of this.managedProperties)e in t.properties&&!(e in E)&&this.document.deleteProperty(this.nodes[_],e)}extractNode(_){E("node"===_.type);const e=_.childForFieldName("name").text,t=r(_),o=_.namedChildren.reduce(((e,t)=>{if("labeled_item"===t.type&&(t=I(t)),"property"===t.type){const E=t.childForFieldName("name").text,o=l(_,E),s=n(o,"text"),i=s.join(", ");e[E]={parsed:s,raw:i}}return e}),{});return{name:e,labels:t,properties:o}}extractCollection(){return this.nodes.map(((_,e)=>({index:e,...this.extractNode(_)})))}}}},92908:function(_,e,t){const E=t(69282),{sortBy:o}=t(59553),s=t(96912),{getPosition:i}=t(3769),{getNodeLabelNodes:a}=t(35125),{getProperty:n}=t(46933);let S;_.exports={getParser:async function(){if(!S){await s.init();const _=await s.Language.load(t.g.window?t(34886):"//../data/tree-sitter-devicetree.wasm");S=new s,S.setLanguage(_)}return S},DevicetreeDocument:class{constructor(_,e){this.parser=_,this._parse_version=0,this._enableChangeBuffering=!1,this._bufferedChanges=[],this.update(e)}cleanup(){this.tree.delete()}update(_,e=null){if(e&&this.tree&&this._enableChangeBuffering){const t=_.slice(e.startIndex,e.newEndIndex);this._bufferedChanges.push({startIndex:e.startIndex,update:e,replacementText:t})}else this.text=_,this._reparse()}_reparse(){this.tree&&this.tree.delete(),this.tree=this.parser.parse(this.text),this._parse_version++}flushChanges(){if(0===this._bufferedChanges.length)return;const _=o(this._bufferedChanges,"startIndex"),e=_.reduce(((e,{update:t,replacementText:E},o)=>{const s=_[o+1],i=o>0?_[o-1].update.oldEndIndex:0,a=this.text.slice(i,t.startIndex),n=E;return e.push(a),e.push(n),s||e.push(this.text.slice(t.oldEndIndex)),e}),[]);this.text=e.join(""),this._reparse(),this._bufferedChanges=[]}removeNode(_){this.replaceNode(_,"")}replaceNode(_,e,t={}){const{removeStartingWhitespace:E=!0}=t,{text:o}=this,s=o.lastIndexOf("\n",_.startIndex),a=-1!==s&&o.slice(s+1,_.startIndex).match(/\s+/)&&E?s:_.startIndex,n=[o.slice(0,a),e,o.slice(_.endIndex)].join(""),S={startIndex:a,startPosition:i(e,a),oldEndIndex:_.endIndex,oldEndPosition:_.endPosition,newEndIndex:a+e.length,newEndPosition:i(n,a+e.length)};this.update(n,S)}replaceRange(_,e,t){const{text:E}=this,o=[E.slice(0,_),t,E.slice(e)].join(""),s=_+t.length,a={startIndex:_,startPosition:i(E,_),oldEndIndex:e,oldEndPosition:i(E,e),newEndIndex:s,newEndPosition:i(o,s)};return this.update(o,a)}replaceNodeLabels(_,e){const t=a(_),E=o(t,"startIndex"),s=e.map((_=>`${_}:`)).join(" "),i=E[0]&&E[0].parent||_;this.replaceRange(i.startIndex,_.startIndex,s)}insertTextBeforeNode(_,e){this.replaceRange(_.startIndex,_.startIndex,e)}insertTextAfterNode(_,e){this.replaceRange(_.endIndex,_.endIndex,e)}addChildNode(_,e){E("node"===_.type);const t=_.children.find((_=>"}"===_.type));return this.replaceRange(t.startIndex,t.startIndex,e)}setProperty(_,e,t){const E=n(_,e);if("boolean"==typeof t&&!t)return void(E&&this.deleteProperty(_,e));const o=t.length?`${e} = ${t};`:`${e};`;return E?this.replaceNode(E.syntaxNode,o,{removeStartingWhitespace:!1}):this.addChildNode(_,`\n ${o}`)}deleteProperty(_,e){const t=n(_,e);t&&this.replaceNode(t.syntaxNode,"")}}}},83858:function(_,e,t){const E=t(26069),o=t(22469),s=t(41953),i=t(72243),a=t(54600),n=t(22834),{getParser:S}=t(66767),{formatNode:A,getModelineConfiguration:r}=t(59857),I=t(87325),{behaviorBindings:l,behaviorMapReducer:D}=t(95130),{encodeKeyBinding:u}=t(69663),d=t(22443),{joinConvenienceBinding:R}=t(95493),{restoreUnmodifiedNodes:O}=t(51606),c=t(33295),{getParameterizedMacroDependencies:N}=t(27234),T=l.reduce(D,{});function p(_){const e=_.behaviors.reduce(D,{}),t={...T,...e};for(const e of _.macros){const _=N(e,t,!1),E=_.map((([_])=>_)),o=e.properties.bindings?.parsed||[];for(const e of o)E.includes(e)?_.filter((([_])=>_===e)).forEach((([_,t])=>{e.params[t]={value:"MACRO_PLACEHOLDER",params:[]}})):R(e)}}function U(_){const e=[...o(E(i(_.layers,"properties.bindings.parsed"))),...o(E(i(_.layers,"properties.sensor-bindings.parsed"))),...o(E(i(_.combos,"properties.bindings.parsed"))),...o(E(i(_.macros,"properties.bindings.parsed"))),...o(E(i(_.behaviors,"properties.bindings.parsed")))].map((_=>"object"==typeof _?_.value:_));return n(e)}_.exports=async function(_,e,t,E={}){const i=await c(t);O(e,i),function(_,e){for(const t of _.layers)if(!t.unmodifiedFromOriginal){if(t.properties.bindings?.parsed){const{parsed:_}=t.properties.bindings;t.properties.bindings={parsed:_,useRaw:!0,raw:`<\n${I(e,_.map(u))}\n>`}}t.properties.label&&!t.properties.label.parsed&&delete t.properties.label,t.properties=a(t.properties,(_=>!_))}}(e,_),p(e);const n=o(U(e).map((_=>s(T,[_,"includes"],[])))),l=new d(await S(),t);l._enableChangeBuffering=!0,l.mergeUpdated(e,E),l.replaceBehaviourIncludes(n),l.flushChanges();try{const _=r(l.tree);return A(l.tree.rootNode,_).join("\n")}catch(_){return console.error("Failed to format devictree",_),l.text}finally{l.cleanup()}},_.exports.getBehaviorsUsed=U,_.exports.formatMacroBinds=p},95493:function(_,e,t){const E=t(24431),{baseParametersByCode:o}=t(5454);_.exports={splitConvenienceBinding:function(_){if(1!==_.params.length)return;const[e]=_.params,[t]=o[_.value]||[];if(!t||!t?.enum)return;const s=E(t.enum,{code:e.value});if(s?.splitTo){const o=E(t.enum,{code:s.splitTo}),{params:i}=e,{additionalParams:a}=o;_.params=[{value:s.splitTo,params:[]},{value:a[0].const.code,params:i}]}},joinConvenienceBinding:function(_){if(2!==_.params.length)return;const[e,t]=_.params,[s]=o[_.value]||[];if(!s||!s?.enum)return;const i=E(s.enum,{code:e.value});i?.splitFrom&&(_.params=[{value:i.splitFrom,params:t.params}])}}},51606:function(_,e,t){const E=t(33610),o=["layers","combos","macros","conditionalLayers","behaviors","behaviorReconfigurations"];function s(_,e){return o.flatMap((t=>function(_,e){return _.reduce(((_,t,o)=>(E(e[t.index],t)&&_.push(o),_)),[])}(_[t]||[],e[t]||[]).map((_=>({collection:t,index:_})))))}_.exports={restoreUnmodifiedNodes:function(_,e){for(const t of o){const E=_[t]||[];for(let _=0;_<E.length;_++){const o=E[_];o.unmodifiedFromOriginal&&(E[_]=e[t][o.index])}}},removeUnmodifiedNodes:function(_,e){for(const{collection:t,index:E}of s(_,e)){const e=_[t][E];_[t][E]={index:e.index,unmodifiedFromOriginal:!0}}},compareKeymaps:s}},69663:function(_,e,t){const E=t(42148),o=t(41953),{parsePropertyFromSchema:s}=t(46933);function i(_){return _.reduce(((_,e)=>(e.startsWith("&")?_.push([e]):_[_.length-1].push(e.replace(/\s+/g,"")),_)),[]).map((_=>_.join(" ")))}const a=["&macro_tap","&macro_press","&macro_release","&macro_tap_time","&macro_wait_time","&macro_pause_for_release"];function n(_){const e=(_.params||[]).map(n),t=e.length>0?`(${e.join(",")})`:"";return _.value+t}_.exports={parseBindings:function(_,e="bindings"){const t=s(_,e,{type:"phandle-array"});return t?i([].concat(...t)):void 0},parseKeyBinding:function(_,e){const t=/\((.+)\)/,s=_.match(/^(&.+?)\b/)[1],i=E(_.replace(/^&.+?\b\s*/,"").split(" ")).map((function _(E){const s=E.replace(t,""),i=o(E.match(t),"[1]","").split(",").map((_=>_.trim())).filter((_=>_.length>0)).map(_);return{value:o(e.defines,s,s),params:i}}));return{value:s,params:i}},groupMacroBindings:function(_){return _.reduce(((_,e,t,E)=>{const o=e.split(" ")[0];return a.includes(o)?(_.at(-1).length>0&&_.push([]),_.at(-1).push(e),t<E.length-1&&_.push([])):_.at(-1).push(e),_}),[[]])},groupPhandleArrayBindings:i,encodeKeyBinding:function(_){const{value:e,params:t}=_;return`${e} ${t.map(n).join(" ")}`.trim()}}},30051:function(_,e,t){const E=t(33610),o=t(50501),s=t(72243),{NodeCollection:i}=t(89361),{findChildByIdentifier:a,parsePropertyFromSchema:n,searchTree:S,serializePropertyFromSchema:A}=t(1530),{behaviorBindings:r,behaviorSchemas:I}=t(95130),{encodeKeyBinding:l,parseKeyBinding:D}=t(69663),u=s(r,"code"),d=o(r,"code");_.exports=class extends i{lookupContainerNode(){}injectContainerNode(){}lookupNodes(){return S(this.document.tree.rootNode,(_=>"node"===_.type&&"reference"===_.childForFieldName("name").type&&u.includes(_.childForFieldName("name").text)))}injectNode(_,e){const t=`${e.name} {};`,E=this.nodes.at(-1),o=a(this.document.tree.rootNode,"/");E?this.document.insertTextAfterNode(E,t):this.document.insertTextBeforeNode(o,t)}extractNode(_){const e=super.extractNode(_),{name:t}=e,{compatible:E}=d[t],o=I[E];if(o)for(const t in o.properties){const E=o.properties[t],s=e.properties[t];if(s&&(s.parsed=n(_,t,E),"phandle-array"===E.type)){const _=s.parsed.reduce(((_,e)=>(e.startsWith("&")?_.push([e]):_[_.length-1].push(e),_)),[]).map((_=>_.join(" ")));s.parsed=_.map((_=>D(_,{})))}}return e.properties.label&&!o?.properties?.label&&(e.properties.label.parsed=n(_,"label",{type:"string"})),e.properties["#binding-cells"]&&!o?.properties?.["#binding-cells"]&&(e.properties["#binding-cells"].parsed=n(_,"#binding-cells",{type:"int"})),e.properties["#sensor-binding-cells"]&&!o?.properties?.["#sensor-binding-cells"]&&(e.properties["#sensor-binding-cells"].parsed=n(_,"#sensor-binding-cells",{type:"int"})),e.deletedProperties=this.extractDeletedProperties(_),e}extractDeletedProperties(_){return _.namedChildren.slice(1).filter((_=>"delete_property"===_.type)).map((_=>_.namedChildren[0].text))}updateNodeProperties(_,e,t){const{name:o,properties:s}=e,{compatible:i}=d[o],a=I[i];for(const e in s){const o=s[e],i=a?.properties?.[e];if(!E(o,t.properties[e])){const t=i&&void 0!==o.parsed&&!o.useRaw?"phandle-array"!==i.type?A(o,i):o.parsed.map((_=>l(_))).map((_=>`<${_}>`)).join(", "):o.raw;this.document.setProperty(this.nodes[_],e,t)}}}cleanupNodeProperties(_,e,t){for(const E in t.properties)E in e.properties||this.document.deleteProperty(this.nodes[_],E);const E=e.deletedProperties.filter((_=>!t.deletedProperties.includes(_))),o=t.deletedProperties.filter((_=>!e.deletedProperties.includes(_)));for(const e of o){const t=this.nodes[_].namedChildren.find((_=>"delete_property"===_.type&&_.namedChildren[0].text===e));this.document.replaceNode(t,"")}for(const e of E)this.document.addChildNode(this.nodes[_],`/delete-property/ ${e};`)}}},65403:function(_,e,t){const E=t(33610),{findChildByIdentifier:o,findChildrenByIdentifier:s,findNodesWithCompatible:i,findNodeProperty:a,getPropertyValues:n,parsePropertyFromSchema:S,sanitizeIdentifier:A,serializePropertyFromSchema:r}=t(1530),{NodeCollection:I}=t(89361),{behaviorSchemas:l}=t(95130),{parseKeyBinding:D,encodeKeyBinding:u}=t(69663);_.exports=class extends I{lookupContainerNode(){const _=s(this.document.tree.rootNode,"/");return o(_,"behaviors")}injectContainerNode(){const _=i(this.document.tree.rootNode,"zmk,keymap").at(-1);this.document.insertTextBeforeNode(_,"\nbehaviors {};\n")}lookupNodes(){return i(this.document.tree.rootNode,(_=>_&&_.startsWith('"zmk,behavior-')&&!_.startsWith('"zmk,behavior-macro')))}injectNode(_,e){const t=A(e.name),E=this.nodes.at(-1),o=`${e.labels[0]}: ${t} {\n compatible = ${e.properties.compatible.raw};\n };`;E?this.document.insertTextAfterNode(E,o):this.document.addChildNode(this.container,o)}extractNode(_){const e=a(_,"compatible")?.namedChildren[1].text.slice(1,-1),t=l[e],E=super.extractNode(_);if(E.properties.compatible.parsed=e,t)for(const e in t.properties){const o=t.properties[e],s=E.properties[e];if(s&&(s.parsed=S(_,e,o),"phandle-array"===o.type)){const _=s.parsed.reduce(((_,e)=>(e.startsWith("&")?_.push([e]):_[_.length-1].push(e),_)),[]).map((_=>_.join(" ")));s.parsed=_.map((_=>D(_,{})))}}return E.properties.label&&!t?.properties?.label&&(E.properties.label.parsed=S(_,"label",{type:"string"})),E.properties["#binding-cells"]&&!t?.properties?.["#binding-cells"]&&(E.properties["#binding-cells"].parsed=S(_,"#binding-cells",{type:"int"})),E.properties["#sensor-binding-cells"]&&!t?.properties?.["#sensor-binding-cells"]&&(E.properties["#sensor-binding-cells"].parsed=S(_,"#sensor-binding-cells",{type:"int"})),(n(_,"bindings")||[]).flatMap((_=>_.namedChildren.flatMap((_=>_.text)))),E}updateNodeProperties(_,e,t){const{properties:o}=e,s=a(this.nodes[_],"compatible")?.namedChildren[1].text.slice(1,-1),i=l[s]||{properties:{compatible:{type:"string"},label:{type:"string"},"#binding-cells":{type:"int"},"#sensor-binding-cells":{type:"int"}}};for(const e in o){const s=o[e],a=i?.properties?.[e];if(!E(s,t.properties[e])){const t=a&&void 0!==s.parsed&&!s.useRaw?"phandle-array"!==a.type?r(s,a):s.parsed.map((_=>u(_))).map((_=>`<${_}>`)).join(", "):s.raw;this.document.setProperty(this.nodes[_],e,t)}}}cleanupNodeProperties(_,e,t){for(const E in t.properties)E in e.properties||this.document.deleteProperty(this.nodes[_],E)}}},84477:function(_,e,t){const E=t(33610),{findNodeWithCompatible:o,findNodesWithCompatible:s,getLabeledItem:i,getNodeLabels:a,parsePropertiesFromSchema:n,serializePropertyFromSchema:S}=t(1530),{NodeCollection:A}=t(89361),{groupPhandleArrayBindings:r,parseKeyBinding:I,encodeKeyBinding:l}=t(69663),D={bindings:{type:"phandle-array"},"key-positions":{type:"array"},"timeout-ms":{type:"int"},"slow-release":{type:"boolean"},"require-prior-idle-ms":{type:"int",default:-1},layers:{type:"array"}};_.exports=class extends A{managedProperties=["bindings","key-positions","timeout-ms","require-prior-idle-ms","layers","slow-release"];lookupContainerNode(){return o(this.document.tree.rootNode,"zmk,combos")}injectContainerNode(){const _=s(this.document.tree.rootNode,"zmk,keymap").at(-1);this.document.insertTextBeforeNode(_,'\n combos {\n compatible = "zmk,combos";\n };\n ')}lookupNodes(){return this.container?this.container.namedChildren.reduce(((_,e)=>("labeled_item"===e.type&&(e=i(e)),"node"===e.type&&_.push(e),_)),[]):[]}injectNode(_,e){const t=e.name.replace(/[^a-zA-Z0-9_]/g,"_"),E=this.nodes.at(-1),o=`${t} {};`;E?this.document.insertTextAfterNode(E,o):this.document.addChildNode(this.container,o)}updateNodeProperties(_,e,t){const{properties:o}=e;o.layers&&!o.layers?.parsed?.length&&delete o.layers;for(const e in o){const s=o[e],i=D[e];if(!E(s,t.properties[e])){const t=i&&!s.useRaw?"phandle-array"!==i.type?S(s,i):s.parsed.map((_=>l(_))).map((_=>`<${_}>`)).join(", "):s.raw;this.document.setProperty(this.nodes[_],e,t)}}o.layers||this.document.deleteProperty(this.nodes[_],"layers")}extractNode(_){const e=_.childForFieldName("name").text,t=a(_),E=n(_,D);return E.bindings&&(E.bindings.parsed=r(E.bindings.parsed).map(I)),{name:e,labels:t,properties:E}}legacyParse(_){const{name:e,labels:t,properties:o}=this.extractNode(_),s={name:e,labels:t,properties:o,identifier:e},i={bindings:"bindings","timeout-ms":"timeoutMs","key-positions":"keyPositions","slow-release":"slowRelease",layers:"layers"};for(const _ of Object.keys(i))o[_]&&(s[i[_]]=o[_].parsed);return(0===s.layers?.length||E(s.layers,[-1]))&&delete s.layers,s}legacyParseNodes(){return this.nodes.map((_=>this.legacyParse(_)))}}},60141:function(_,e,t){const E=t(33610),{findChildrenByIdentifier:o,findNodesWithCompatible:s,getLabeledItem:i,getNodeLabels:a,parsePropertiesFromSchema:n,serializePropertyFromSchema:S}=t(1530),{NodeCollection:A}=t(89361),r={"if-layers":{type:"array"},"then-layer":{type:"int"}};_.exports=class extends A{managedProperties=["if-layers","then-layer"];lookupContainerNode(){return s(this.document.tree.rootNode,"zmk,conditional-layers").at(-1)}injectContainerNode(){const _=o(this.document.tree.rootNode,"/");this.document.addChildNode(_.at(-1),'\nconditional_layers { compatible = "zmk,conditional-layers"; };\n')}lookupNodes(){return this.container?this.container.namedChildren.reduce(((_,e)=>("labeled_item"===e.type&&(e=i(e)),"node"===e.type&&_.push(e),_)),[]):[]}injectNode(_,e){const t=this.nodes.at(-1),E=`${(e.name||"new_conditional_layer").replace(/[^a-zA-Z0-9_]/g,"_")} {};`;t?this.document.insertTextAfterNode(t,E):this.document.addChildNode(this.container,E)}updateNodeProperties(_,e,t){const{properties:o}=e;for(const e in o){const s=o[e],i=r[e];if(!E(s,t.properties[e])){const t=i&&!s.useRaw?S(s,i):s.raw;this.document.setProperty(this.nodes[_],e,t)}}}extractNode(_){return{name:_.childForFieldName("name").text,labels:a(_),properties:n(_,r)}}}},21207:function(_,e,t){const E=t(66039),o=t(42148),s=t(33610),i=t(72243),{findChildrenByIdentifier:a,findNodesWithCompatible:n,getLabeledItem:S,getNodeLabels:A,parsePropertiesFromSchema:r,serializePropertyFromSchema:I}=t(1530),{NodeCollection:l}=t(89361),{groupPhandleArrayBindings:D,parseKeyBinding:u,encodeKeyBinding:d}=t(69663),R={label:{type:"string"},bindings:{type:"phandle-array"},"sensor-bindings":{type:"phandle-array"}};_.exports=class extends l{managedProperties=["label","bindings","sensor-bindings"];lookupContainerNode(){return n(this.document.tree.rootNode,"zmk,keymap").at(-1)}injectContainerNode(){const _=a(this.document.tree.rootNode,"/");this.document.addChildNode(_.at(-1),'\nkeymap { compatible = "zmk,keymap"; };\n')}lookupNodes(){return this.container?this.container.namedChildren.reduce(((_,e)=>("labeled_item"===e.type&&(e=S(e)),"node"===e.type&&_.push(e),_)),[]):[]}injectNode(_,e){const t=this.nodes.at(-1),E=`${(e.name||"new_layer").replace(/[^a-zA-Z0-9_]/g,"_")} {};`;t?this.document.insertTextAfterNode(t,E):this.document.addChildNode(this.container,E)}updateCollection(_){const e=[...this.nodes.keys()];super.updateCollection(_),this.updateLayerPositions(_,e)}updateLayerPositions(_,e){const t=o(i(_,"index"),(_=>this.nodes[_])),s=E(e,t),a=[...e];for(const t in _){const E=_[t],o=a.length;void 0!==E.index&&e.includes(E.index)||(E.index=o,a[o]=o)}for(let _=s.length-1;_>=0;--_){const e=s[_];a[e]=null;for(let _=e+1;_<a.length;_++)null!==a[_]&&(a[_]-=1)}const n=i(_,"index");n.length>0&&!n.every(((_,e,t)=>e===t.length-1||t[e]<t[e+1]))&&(this.document.flushChanges(),this.document.replaceRange(this.nodes[0].startIndex,this.nodes.at(-1).endIndex,n.map((_=>a[_])).map((_=>this.nodes[_].text)).join("\n")))}updateNodeProperties(_,e,t){const{properties:E}=e;for(const e in E){const o=E[e],i=R[e];if(!s(o,t.properties[e])){const t=i&&!o.useRaw?"phandle-array"!==i.type?I(o,i):0!==o.parsed.length&&o.parsed.map((_=>d(_))).map((_=>`<${_}>`)).join(", "):o.raw;this.document.setProperty(this.nodes[_],e,t)}}}extractNode(_){const e=_.childForFieldName("name").text,t=A(_),E=r(_,R);return E.bindings&&(E.bindings.parsed=D(E.bindings.parsed).map(u)),E["sensor-bindings"]&&(E["sensor-bindings"].parsed=D(E["sensor-bindings"].parsed).map(u)),{name:e,labels:t,properties:E}}}},67199:function(_,e,t){const E=t(64988),{findChildByIdentifier:o,findChildrenByIdentifier:s,findNodesWithCompatible:i}=t(1530),{NodeCollection:a}=t(89361),n=t(65403),{groupMacroBindings:S,encodeKeyBinding:A}=t(69663);_.exports=class extends n{managedProperties=["label","tap-ms","wait-ms"];lookupContainerNode(){const _=s(this.document.tree.rootNode,"/");return o(_,"macros")}injectContainerNode(){const _=i(this.document.tree.rootNode,"zmk,keymap").at(-1);this.document.insertTextBeforeNode(_,"\nmacros {};\n")}lookupNodes(){return i(this.document.tree.rootNode,(_=>_&&_.startsWith('"zmk,behavior-macro')))}injectNode(_,e){const t=e.name.replace(/[^a-zA-Z0-9_]/g,"_"),E=this.nodes.at(-1),o=`${t}: ${t} {\n compatible = "zmk,behavior-macro";\n };`;E?this.document.insertTextAfterNode(E,o):this.document.addChildNode(this.container,o)}updateNode(_,e){const t=function(_){const e=S(_.map(A)).map((_=>_.join(" ")));return 1===e.length?[`<${e[0]}>`]:e.map((_=>`<${_}>`))}(e.properties.bindings?.parsed||[]);e.properties.bindings={useRaw:!0,raw:t},super.updateNode(_,e)}legacyParse(_){return E(this.extractNode(_),["name","labels","properties"])}legacyParseNodes(){return this.nodes.map((_=>this.legacyParse(_)))}cleanupNodeProperties(_,e,t){const{cleanupNodeProperties:E}=a.prototype;return E.call(this,_,e,t)}}},22443:function(_,e,t){const E=t(42148),o=t(96070),s=t(49766),{DevicetreeDocument:i}=t(66767),{nodesAreConsecutive:a,findChildByIdentifier:n,findChildrenByIdentifier:S,getLabeledItem:A}=t(1530),{standardBehaviorIncludeFiles:r}=t(95130),I=t(67199),l=t(84477),D=t(21207),u=t(65403),d=t(30051),R=t(60141);_.exports=class extends i{constructor(..._){super(..._),this.macroCollection=new I(this),this.comboCollection=new l(this),this.layerCollection=new D(this),this.behaviorCollection=new u(this),this.behaviorReconfigurationCollection=new d(this),this.conditionalLayerCollection=new R(this)}cleanup(){super.cleanup(),delete this.layerCollection,delete this.comboCollection,delete this.macroCollection,delete this.behaviorCollection,delete this.behaviorReconfigurationCollection,delete this.conditionalLayerCollection}getChosenProperties(){const _=S(this.tree.rootNode,"/"),e=n(_,"chosen");return e?e.namedChildren.reduce(((_,e)=>{if("labeled_item"===e.type&&(e=A(e)),"property"===e.type){const t=e.childForFieldName("name").text,E=e.childForFieldName("value").text;_[t]=E}return _}),{}):{}}mergeUpdated(_,e={}){this.layerCollection.updateCollection(_.layers),this.comboCollection.updateCollection(_.combos),this.macroCollection.updateCollection(_.macros),this.conditionalLayerCollection.updateCollection(_.conditionalLayers),this.behaviorCollection.updateCollection(_.behaviors),"behaviorReconfigurations"in _&&this.behaviorReconfigurationCollection.updateCollection(_.behaviorReconfigurations)}replaceBehaviourIncludes(_){const e=_.sort().join("\n")+"\n",t=this.tree.rootNode.namedChildren.filter((_=>"preproc_include"===_.type&&r.some((e=>_.text.startsWith(e)))));if(t.length)if(a(t))this.replaceRange(t[0].startIndex,t.at(-1).endIndex,"");else{const _=t.map((_=>[_.startIndex,_.endIndex]));for(const[e,t]of s(_))this.replaceRange(e,t,"\n")}const i=o(E(this.tree.rootNode.children,{type:"preproc_include"})),n=this.tree.rootNode.children.find((_=>"preproc_def"===_.type)),S=this.tree.rootNode.children.find((_=>"node"===_.type));i?this.insertTextAfterNode(i,e):(n||S)&&this.insertTextBeforeNode(n||S,e)}}},27621:function(_,e,t){const{findNodesWithCompatible:E}=t(31960),{getPropertyValues:o}=t(46933),s="MISSING_ROOT_NODE",i="USING_ZMK_NODEFREE_MACROS",a="USING_TOP_LEVEL_KEYMAP_NODE",n="USING_MULTIPLE_ROOT_NODES",S="USING_MIRYOKU_DTSI",A="USING_NON_ZMK_MACRO",r="USING_AUTOSHIFT_MACRO",I="KEYMAP_HAS_PARSE_ERRORS";_.exports={keymapHasNoRootNodes:function(_){for(let e of _.tree.rootNode.namedChildren)if("labeled_item"===e.type&&(e=e.childForFieldName("item")),"node"===e.type&&"/"===e.childForFieldName("name").text)return;return s},keymapUsesNodefreeConfigHelpers:function(_){const e=["ZMK_BEHAVIOR","ZMK_COMBO","ZMK_CONDITIONAL_LAYER","ZMK_LAYER","UC_MACRO"];for(const t of _.tree.rootNode.namedChildren)if("ERROR"===t.type){const{text:_}=t;if(e.some((e=>_.startsWith(e))))return i}},keymapUsesMiryoku:function(_){for(const e of _.tree.rootNode.namedChildren)if("preproc_include"===e.type&&e.childForFieldName("path").text.includes("miryoku.dtsi"))return S},keymapBindingsUsePreprocessorMacros:function(_){let e=!1;const t=["LA","LC","LG","LS","RA","RC","RG","RS","RGB_COLOR_HSB","RGB_COLOR_HSB_VAL"];for(const E of _.layerCollection.nodes){const[_]=o(E,"bindings")||[];if(_)for(const E of _.namedChildren)if("call_expression"===E.type){const _=E.childForFieldName("function").text;if(_.match(/^_?AS$/i))e=!0;else if(!t.includes(_))return A}}if(e)return r},keymapHasTopLevelKeymapNode:function(_){const e=E(_.tree.rootNode,"zmk,keymap").at(-1);if(e&&"document"===e.parent?.type)return a},keymapHasMultipleRootNodes:function(_){let e=null;for(let t of _.tree.rootNode.namedChildren)if("labeled_item"===t.type&&(t=t.childForFieldName("item")),"node"===t.type&&"/"===t.childForFieldName("name").text){if(null!==e)return n;e=t}},keymapHasLayerBindingsWithNonBehaviorStarter:function(_){return _.layerCollection.nodes.some((_=>{const e=o(_,"bindings")||[],t=[].concat(...e).flatMap((_=>_.namedChildren))[0]?.type;return t&&"reference"!==t}))},keymapHasParseErrors:function(_){return _.tree.rootNode.hasError()&&I},warningFlags:{MISSING_ROOT_NODE:s,USING_ZMK_NODEFREE_MACROS:i,USING_ZMK_MACRO_MACRO:"USING_ZMK_MACRO_MACRO",USING_TOP_LEVEL_KEYMAP_NODE:a,USING_MULTIPLE_ROOT_NODES:n,USING_MIRYOKU_DTSI:S,USING_NON_ZMK_MACRO:A,USING_AUTOSHIFT_MACRO:r,KEYMAP_HAS_PARSE_ERRORS:I}}},44326:function(_,e,t){"use strict";t.d(e,{I:function(){return i}});var E=t(1286),o=t.n(E);const s=[{match:{compatible:"zmk,behavior-send-string"},flag:"enable_send_string_behavior"},{match:{compatible:"zmk,behavior-mouse-key-press"},flag:"enable_mouse_behaviors"},{match:{compatible:"zmk,behavior-mouse-move"},flag:"enable_mouse_behaviors"},{match:{compatible:"zmk,behavior-mouse-scroll"},flag:"enable_mouse_behaviors"}];function i(_,e){return _.filter((_=>{for(const{match:t,flag:E}of s)if(o()(_,t))return e[E];return!0}))}},33295:function(_,e,t){const E=t(26069),{getParser:o}=t(66767),{parseStringLiteral:s}=t(95147),{splitConvenienceBinding:i}=t(95493),a=t(22443),{keymapUsesNodefreeConfigHelpers:n,keymapUsesMiryoku:S,keymapBindingsUsePreprocessorMacros:A,keymapHasNoRootNodes:r,keymapHasLayerBindingsWithNonBehaviorStarter:I,warningFlags:{USING_NON_ZMK_MACRO:l,KEYMAP_HAS_PARSE_ERRORS:D},keymapHasTopLevelKeymapNode:u,keymapHasParseErrors:d}=t(27621);function R(..._){return{warningFlags:_,defines:{},headers:[],chosen:{},behaviors:[],behaviorReconfigurations:[],layers:[],combos:[],macros:[],conditionalLayers:[]}}function O(_){return E([r(_),u(_),n(_),S(_),A(_)])}function c(_){return _.tree.rootNode.namedChildren.reduce(((_,e)=>{if("preproc_def"===e.type){const t=e.childForFieldName("name").text,E=e.childForFieldName("value")?.text.trim();_[t]=E}return _}),{})}function N(_){return _.tree.rootNode.namedChildren.reduce(((_,e)=>{if("preproc_include"===e.type){const t=e.childForFieldName("path");"string_literal"===t.type&&_.push(s(t))}return _}),[])}_.exports=async function(_){const e=await o(),t=new a(e,_);try{const _={warningFlags:O(t),defines:c(t),headers:N(t),chosen:t.getChosenProperties(),behaviors:t.behaviorCollection.extractCollection(),behaviorReconfigurations:t.behaviorReconfigurationCollection.extractCollection(),layers:t.layerCollection.extractCollection(),combos:t.comboCollection.extractCollection(),macros:t.macroCollection.extractCollection(),conditionalLayers:t.conditionalLayerCollection.extractCollection()};for(const e of _.macros)for(const _ of e.properties.bindings.parsed)i(_);return _}catch(_){return I(t)?R(l):d(t)?R(D,"KEYMAP_PARSING_FAILED"):(console.error(_),R("KEYMAP_PARSING_FAILED"))}finally{t.cleanup()}}},27234:function(_){function e(_,e,E){const o=t(_,e,E);return-1===o?void 0:_[o]}function t(_,e,t=0){if(-1===t)return-1;for(let E=Math.min(t,_.length-1);E<_.length;E++){const t=e[_[E].value]?.properties?.compatible?.parsed;if(!t?.startsWith?.("zmk,macro-")&&!t?.startsWith?.("zmk,behavior-macro-"))return E}return-1}_.exports={isParameterizedMacroBehavior:function(_){return["zmk,behavior-macro-one-param","zmk,behavior-macro-two-param"].includes(_.properties?.compatible?.parsed)},getParameterizedMacroDependencies:function(_,t,E=!0){const o=_.properties.bindings?.parsed||[],s=function(_,e){return(_.properties?.bindings?.parsed||[]).map((_=>_.value)).map((_=>e[_]?.properties?.compatible?.parsed)).reduce(((_,e,t)=>(e?.match?.(/zmk,macro-param-\dto\d/)&&_.push(t),_)),[])}(_,t),i=o.map((_=>_.value)).map((_=>t[_]?.properties?.compatible?.parsed)),a="zmk,behavior-macro-two-param"===_.properties.compatible?.parsed,n=_=>void 0!==_?Number(i[_].at(-1))-1:0,S=s.reduce(((_,s)=>{const S=[(r=s,Number(i[r].match(/zmk,macro-param-(\d)to\d/)?.[1])-1),(A=s,e(o,t,A)||{value:"&none",params:[]}),n(s)];var A,r;return _.some((([_])=>S[0]===_))&&E||!a&&0!==S[0]||_.push(S),_}),[]),A=S.some((([_])=>0===_)),r=S.some((([_])=>1===_));return A||S.unshift([0,{value:"&none",params:[]},0]),!r&&a&&S.push([1,{value:"&none",params:[]},0]),S.map((([,_,e])=>[_,e]))},findFirstNonControlBinding:e,findFirstNonControlBindingIndex:t,isParameterControlBinding:function(_){return["&macro_param_1to1","&macro_param_1to2","&macro_param_2to1","&macro_param_2to2"].includes(_.value)},getBehaviorPropsForBindings:function(_){const e=function(_){let e;for(const t of _){if(t.value.startsWith("&macro_param_2"))return 2;t.value.startsWith("&macro_param_1")&&(e=1)}return e?1:0}(_),t=0===e?"zmk,behavior-macro":`zmk,behavior-macro-${2===e?"two":"one"}-param`;return{compatible:{parsed:t,raw:`"${t}"`},"#binding-cells":{parsed:e,raw:`<${e}>`}}},getTargetParameterIndex:function(_){return _.value.endsWith("to1")?0:_.value.endsWith("to2")?1:-1}}},5454:function(_,e,t){const E=t(24431),o=t(41953),s=t(44823),i=t(45223),{behaviorSchemas:a,behaviorBindings:n,behaviorMapReducer:S}=t(95130),A=t(30877),{isParameterizedMacroBehavior:r,getParameterizedMacroDependencies:I}=t(27234),l=A.reduce(((_,e)=>(e.match.code&&(_[`&${e.match.code}`]=e),_)),{}),D=A.reduce(((_,e)=>(e.match.compatible&&(_[e.match.compatible]=e),_)),{}),u=s(n,"properties.compatible.parsed"),d=A.reduce(((_,{match:e,params:t})=>{if(e.code)_[`&${e.code}`]=t;else if(e.compatible){const E=u[e.compatible];for(const e of E)for(const E of e.labels)_[`&${E}`]=t}return _}),{});function R(_){this.message=_,this.name="BehaviorResolutionError"}function O(_,e="#binding-cells"){const t=_.properties?.[e]?.parsed;if("number"==typeof t)return t;const E=(_.properties?.[e]?.raw||"<>").match(/<(\d+)>/);return E?Number(E[1]):void 0}function c(_,e,t){const s=t[_.value]||[];if(s[e])return s[e];const i=o(_.params,"[0]",{}),a=o(s,"[0]");if(a?.enum){const _={code:i.value},e=E(a.enum,_);if(e?.additionalParams)return e.additionalParams[0]}return{raw:!0}}_.exports={baseParametersByCode:d,resolveBehaviorParams:function(_){const e=n.reduce(S,{}),t=_.reduce(S,{}),E={...e,...t},o={};function s(_,i=[]){const n=`&${_.labels[0]}`;if(o[n])return o[n];const S=function(_){const e=_.labels.map((_=>`&${_}`)),t=_.properties.compatible?.parsed;for(const _ of e)if(l[_])return l[_];if(D[t])return D[t]}(_);if(S)return S.params;const A=_.properties?.compatible?.parsed,u=a[A],d=function(_,e){const t=e?.properties?.["#binding-cells"]?.const,E=e?.properties?.["#sensor-binding-cells"]?.const;return t??E??O(_)??O(_,"#sensor-binding-cells")}(_,u),N=function(_,e,t){return r(_)?I(_,t):(_.properties?.bindings?.parsed||[]).map((_=>[_,0]))}(_,0,E),T=r(_);return d?N.reduce(((E,[a,n])=>{if(T){const _=c(a,n,o);return[...E,_]}if(!a.startsWith("&"))return E;if(i.includes(a))throw new R(`Circular reference in bindings: "&${_.labels[0]}" -> "${a}".`);if(i.length>3)throw new R("Reference depth limit exceeded.");const S=t[a]||e[a];if(!S)return _.error=`Unrecognized behavior binding "${a}".`,[...E,{raw:!0}];try{const _=s(S,[...i,a]);for(const e of S.labels)o[`&${e}`]=_;E.push(_[n]||{type:"placeholder"})}catch(_){throw _ instanceof R&&(S.error=_.message,o[a]=[]),_}return E}),[]):[]}for(const e of _)try{const _=s(e);for(const t of e.labels)o[`&${t}`]=_}catch(_){if(!(_ instanceof R))throw _;console.error("Failed to resolve behavior parameters",_),e.error=_.message;const t=i(O(e)||0,(()=>({raw:!0})));for(const _ of e.labels)o[`&${_}`]=t}return o},getParameterizedMacroDependencies:I,resolveMacroParam:c}},39316:function(_,e,t){"use strict";t.d(e,{Cg:function(){return s},FP:function(){return l},Pi:function(){return n},VW:function(){return I},eG:function(){return S},v1:function(){return A}});var E=t(72243),o=t.n(E);const s=70,i=5;function a(_,e,t={},E={}){const{keySize:o=s}=E;return{x:_.x*o,y:_.y*o,u:e.u*o,h:e.h*o,rx:(_.x-(t.x??_.x))*-o,ry:(_.y-(t.y??_.y))*-o,a:t.a||0}}function n(_,e,t,E={}){const{x:o,y:s,u:n,h:S,a:A,rx:r,ry:I}=a(_,e,t,E),{padding:l=i}=E;return{top:`${s}px`,left:`${o}px`,width:n-l+"px",height:S-l+"px",transformOrigin:`${r}px ${I}px`,transform:`rotate(${A||0}deg) translate(${l/2}px, ${l/2}px)`}}function S(_,e){return _.map((_=>r({x:_.x,y:_.y},{u:_.u||_.w||1,h:_.h||1},{x:_.rx,y:_.ry,a:_.r},e)))}function A(_,e){return _.map((_=>function(_,e,t,E){return I(r(_,e,t,E))}({x:_.x,y:_.y},{u:_.u||_.w||1,h:_.h||1},{x:_.rx,y:_.ry,a:_.r},e))).reduce(l)}function r(_,e,t,E){const{x:o,y:s,u:i,h:n,a:S,rx:A,ry:r}=a(_,e,t,E);return[{x:0,y:0},{x:i,y:0},{x:i,y:n},{x:0,y:n}].map((function(_){const e=_.x-A,t=_.y-r,E=Math.PI*S/180;return{x:A+e*Math.cos(E)-t*Math.sin(E),y:r+t*Math.cos(E)+e*Math.sin(E)}})).map((function(_){return{x:_.x+o,y:_.y+s}}))}function I(_){const e=o()(_,"x"),t=o()(_,"y");return{min:{x:Math.min(...e),y:Math.min(...t)},max:{x:Math.max(...e),y:Math.max(...t)}}}function l(_,e){return{min:{x:Math.min(_.min.x,e.min.x),y:Math.min(_.min.y,e.min.y)},max:{x:Math.max(_.max.x,e.max.x),y:Math.max(_.max.y,e.max.y)}}}},87205:function(_,e,t){"use strict";t.d(e,{U2:function(){return o}});var E=t(39316);function o(_,e={keySize:1,padding:0}){const t=(0,E.v1)(_,e);return _.map((_=>{const e={..._};return e.x=_.x-t.min.x,e.y=_.y-t.min.y,"rx"in _&&(e.rx=_.rx-t.min.x),"ry"in _&&(e.ry=_.ry-t.min.y),e}))}},87325:function(_,e,t){const E=t(45223);_.exports=function(_,e,t={}){const{margin:o=2}=t,s=e.reduce(((e,t,E)=>{if(_[E]){const{row:o=0,col:s}=_[E];e[o]=e[o]||[],e[o][s||e[o].length]=t}return e}),[]),i=Object.keys(s),a=Math.max(...i.map((_=>s[_].length))),n=E(a,(_=>_)),S=n.map((_=>Math.max(...i.map((e=>s[e][_]?.length||0)))));return s.map(((_,e)=>n.map((e=>{const t=_.slice(e).every((_=>void 0===_)),E=S[e]+(e===_.length-1?"":o);return t?"":_[e]?_[e].padEnd(E):" ".repeat(E)})).join("").replace(/\s+$/,""))).join("\n")}},62608:function(_,e,t){const E=t(80460);class o extends Error{constructor(_){super(),this.name="InfoValidationError",this.errors=_}}function s(_,e){let t=-1/0;const E=[];for(const o of e.keys()){const{row:s}=e[o];if(void 0!==s)if(s<t){const e=`layouts[${_}].layout[${o}]`;E.push(`Row index at ${e} is not sequential`)}else t=s}return E}function i(_,e){let t=0,E=-1/0;const o=[];for(const s of e.keys()){const{row:i,col:a}=e[s];if(void 0!==i&&void 0!==a)if(t!==i&&(t=i,E=-1/0),a<E){const e=`layouts[${_}].layout[${s}]`;o.push(`Column index at ${e} is not sequential`)}else E=a}return o}_.exports={InfoValidationError:o,validateInfoJson:function(_){const e=[];if("object"!=typeof _||null===_)e.push("info.json root must be an object");else if(_.layouts)if("object"!=typeof _.layouts||null===_.layouts)e.push("layouts must be an object");else if(0===Object.values(_.layouts).length)e.push("layouts must define at least one layout");else for(const t in _.layouts){const o=_.layouts[t];if("object"!=typeof o||null===o)e.push(`layout ${t} must be an object`);else if(Array.isArray(o.layout)){const _=o.layout.some((_=>void 0!==_?.row||void 0!==_?.col));for(const s in o.layout){const i=o.layout[s],a=`layouts[${t}].layout[${s}]`;if("object"!=typeof i||null===i)e.push(`Key definition at ${a} must be an object`);else{const t=["u","h","r","rx","ry"];E(i.x)||e.push(`Key definition at ${a} must include "x" position`),E(i.y)||e.push(`Key definition at ${a} must include "y" position`);for(const _ of t)_ in i&&!E(i[_])&&e.push(`Key definition at ${a} optional "${_}" must be number`);for(const t of["row","col"])_&&!(t in i)?e.push(`Key definition at ${a} is missing property "${t}"`):t in i&&(!Number.isInteger(i[t])||i[t]<0)&&e.push(`Key definition at ${a} "${t}" must be a non-negative integer`)}}const a=o.layout.reduce(((_,e,t)=>{const{row:E,col:o}=e,s=`(${E},${o})`;return void 0!==E&&void 0!==o&&(_[s]=[..._[s]||[],t]),_}),{});for(const _ of Object.values(a)){if(_.length<=1)continue;const{row:E,col:s}=o.layout[_[0]],i=`{row: ${E}, col: ${s}}`;for(const E of _){const _=`layouts[${t}].layout[${E}]`;e.push(`Key definition at ${_} has overlapping position ${i}`)}}e.push(...s(t,o.layout)),e.push(...i(t,o.layout))}else e.push(`layout ${t} must define "layout" array`)}else e.push('info must define "layouts"');if(e.length)throw new o(e)}}},3769:function(_){function e(_){const e=_.split("\n"),t=e.reduce(((_,e)=>{const t=e.match(/^(\s*)\S/);return t?Math.min(_,t[1].length):_}),1/0);return e.map((_=>_.slice(0,t).match(/^\s+$/)?_.slice(t):_))}_.exports={dedent:function(_){return e(_).join("\n")},reindent:function(_,t){return e(_).map((_=>t+_)).join("\n")},getPosition:function(_,e){let t,E;for(t=0,E=0;-1!==E;t++,E=_.indexOf("\n",E+1));return{row:t,col:e-E}},removeStartingWhitespace:function(_){return _.split("\n").reduce(((_,e)=>((_.length>0||e.match(/\S/))&&_.push(e),_)),[]).join("\n")},removeTrailingWhitespace:function(_){return _.split("\n").reverse().reduce(((_,e)=>((_.length>0||e.match(/\S/))&&_.push(e),_)),[]).reverse().join("\n")}}},95130:function(_,e,t){const E=t(41536),o=t(1286),s=t(22834),i=t(24234),a=t(31742),n=t(61443),S=t(80012),A=t(43003),r=t(92914);function I(_,e){const t=Array.isArray(_)?_:Object.values(_);for(const _ of t)for(const{match:t,...s}of e)o(_,t)&&E(_,s)}Object.assign(i,a),n.push(...S),I(i,A),I(n,r);const l=s(r.flatMap((_=>_.includes||[])));for(const _ of n){const e=i[_.compatible];E(_,{schema:e})}_.exports={behaviorMapReducer:function(_,e){for(const t of e.labels)_[`&${t}`]=e;return _},behaviorSchemas:i,behaviorBindings:n,behaviorOverlays:r,behaviorSchemaOverlays:A,standardBehaviorIncludeFiles:l,mergeBehaviorOverlays:I}},62029:function(_){const e=_=>({value:"&kp",params:[{value:_,params:[]}]}),t=[{pattern:/^[0-9]$/,convert:_=>e(`N${_}`)},{pattern:/^[a-z]$/,convert:_=>e(_.toUpperCase())},{pattern:/^[A-Z]$/,convert:_=>({value:"&kp",params:[{value:"LS",params:[{value:_.toUpperCase(),params:[]}]}]})}],E={"!":e("EXCL"),"@":e("AT"),"#":e("POUND"),$:e("DLLR"),"%":e("PRCNT"),"^":e("CARET"),"&":e("AMPS"),"*":e("STAR"),"(":e("LPAR"),")":e("RPAR"),"\n":e("RET")," ":e("SPACE"),"-":e("MINUS"),_:e("UNDER"),"=":e("EQUAL"),"+":e("PLUS"),"[":e("LBKT"),"]":e("RBKT"),"{":e("LBRC"),"}":e("RBRC"),"\\":e("BSLH"),"|":e("PIPE"),"":e("TILDE2"),";":e("SEMI"),":":e("COLON"),"'":e("SQT"),'"':e("DQT"),"`":e("GRAVE"),"~":e("TILDE"),",":e("COMMA"),"<":e("LT"),".":e("DOT"),">":e("GT"),"/":e("FSLH"),"?":e("QMARK")};_.exports={mapCharacter:function(_){if(E[_])return E[_];for(const{pattern:e,convert:E}of t)if(_.match(e))return E(_)}}},52779:function(_,e,t){const E=t(15126),o={basic:t(97107),unicode:t(445),platforms:{mac:t(27112),win:t(27453)}};_.exports={keycodes:E,keycodeGlyphs:o}},34886:function(_,e,t){"use strict";_.exports=t.p+"2f0cf3405ab1202f0045.wasm"},98553:function(_){"use strict";_.exports=JSON.parse('{"a_dux":{"id":"a_dux","name":"A. Dux"},"adv360pro":{"id":"adv360pro","name":"Kinesis Advantage360"},"bat43":{"id":"bat43","name":"BAT43"},"bdn9_rev2":{"id":"bdn9_rev2","name":"BDN9 Rev2"},"bfo9000":{"id":"bfo9000","name":"BFO-9000"},"boardsource3x4":{"id":"boardsource3x4","name":"Boardsource 3x4 Macropad"},"boardsource5x12":{"id":"boardsource5x12","name":"Boardsource 5x12"},"bt60_v1":{"id":"bt60_v1","name":"BT60 V1 Soldered"},"bt60_v1_hs":{"id":"bt60_v1_hs","name":"BT60 V1 Hotswap"},"bt60_v2":{"id":"bt60_v2","name":"BT60 V2"},"bt65_v1":{"id":"bt65_v1","name":"BT65"},"bt75_v1":{"id":"bt75_v1","name":"BT75_V1"},"chalice":{"id":"chalice","name":"Chalice"},"clog":{"id":"clog","name":"Clog"},"contra":{"id":"contra","name":"Contra"},"corne":{"id":"corne","name":"Corne"},"corneish_zen":{"id":"corneish_zen","name":"Corneish Zen v2"},"cradio":{"id":"cradio","name":"Cradio/Sweep"},"crbn":{"id":"crbn","name":"CRBN Featherlight"},"eek":{"id":"eek","name":"eek!"},"elephant42":{"id":"elephant42","name":"Elephant42"},"ergodash":{"id":"ergodash","name":"Ergodash"},"ergodox":{"id":"ergodox","name":"Ergodox"},"eternal_keypad":{"id":"eternal_keypad","name":"Eternal Keypad"},"eternal_keypad_lefty":{"id":"eternal_keypad_lefty","name":"Eternal Keypad Lefty"},"ferris_rev02":{"id":"ferris_rev02","name":"Ferris 0.2"},"fourier":{"id":"fourier","name":"Fourier Rev. 1"},"glove80":{"id":"glove80","name":"Glove80"},"helix":{"id":"helix","name":"Helix"},"hillside46":{"id":"hillside46","name":"Hillside46"},"hummingbird":{"id":"hummingbird","name":"Hummingbird"},"hw75_keyboard":{"id":"hw75_keyboard","name":"HelloWord Keyboard"},"iris":{"id":"iris","name":"Iris"},"jian":{"id":"jian","name":"Jian"},"jiran":{"id":"jiran","name":"Jiran"},"jorne":{"id":"jorne","name":"Jorne"},"kbdfans_tofu65_v2":{"id":"kbdfans_tofu65_v2","name":"KBDfans Tofu65 2.0"},"knob_goblin":{"id":"knob_goblin","name":"Knob Goblin"},"kyria":{"id":"kyria","name":"Kyria"},"kyria_rev2":{"id":"kyria_rev2","name":"Kyria Rev2"},"kyria_rev3":{"id":"kyria_rev3","name":"Kyria Rev3"},"leeloo":{"id":"leeloo","name":"Leeloo"},"leeloo_micro":{"id":"leeloo_micro","name":"Leeloo-Micro"},"leeloo_rev2":{"id":"leeloo_rev2","name":"Leeloo v2"},"lily58":{"id":"lily58","name":"Lily58"},"lotus58":{"id":"lotus58","name":"Lotus58"},"lpgalaxy_blank_slate":{"id":"lpgalaxy_blank_slate","name":"Blank Slate"},"m60":{"id":"m60","name":"MakerDiary m60"},"microdox":{"id":"microdox","name":"Microdox"},"murphpad":{"id":"murphpad","name":"MurphPad"},"naked60":{"id":"naked60","name":"Naked60"},"nibble":{"id":"nibble","name":"Nibble"},"nice60":{"id":"nice60","name":"nice!60"},"osprette":{"id":"osprette","name":"Osprette"},"pancake":{"id":"pancake","name":"Pancake"},"planck_rev6":{"id":"planck_rev6","name":"Planck Rev6"},"preonic_rev3":{"id":"preonic_rev3","name":"Preonic Rev3"},"qaz":{"id":"qaz","name":"QAZ"},"quefrency":{"id":"quefrency","name":"Quefrency Rev. 1"},"redox":{"id":"redox","name":"Redox"},"reviung34":{"id":"reviung34","name":"REVIUNG34"},"reviung41":{"id":"reviung41","name":"REVIUNG41"},"reviung5":{"id":"reviung5","name":"REVIUNG5"},"reviung53":{"id":"reviung53","name":"Reviung53"},"romac":{"id":"romac","name":"Romac Macropad"},"romac_plus":{"id":"romac_plus","name":"Romac+ Macropad"},"s40nc":{"id":"s40nc","name":"S40NC"},"slicemk_ergodox":{"id":"slicemk_ergodox","name":"SliceMK Ergodox"},"snap":{"id":"snap","name":"SNAP"},"sofle":{"id":"sofle","name":"Sofle"},"splitkb_aurora_corne":{"id":"splitkb_aurora_corne","name":"splitkb.com Aurora Corne"},"splitkb_aurora_lily58":{"id":"splitkb_aurora_lily58","name":"splitkb.com Aurora Lily58"},"splitkb_aurora_sofle":{"id":"splitkb_aurora_sofle","name":"splitkb.com Aurora Sofle"},"splitkb_aurora_sweep":{"id":"splitkb_aurora_sweep","name":"splitkb.com Aurora Sweep"},"splitreus62":{"id":"splitreus62","name":"Splitreus62"},"tg4x":{"id":"tg4x","name":"TG4x"},"tidbit":{"id":"tidbit","name":"Tidbit Numpad"},"totem":{"id":"totem","name":"Totem"},"two_percent_milk":{"id":"two_percent_milk","name":"2% Milk"},"waterfowl":{"id":"waterfowl","name":"Waterfowl"},"zmk_uno":{"id":"zmk_uno","name":"ZMK Uno"},"zodiark":{"id":"zodiark","name":"Zodiark"}}')},24234:function(_){"use strict";_.exports=JSON.parse('{"zmk,behavior-backlight":{"description":"Backlight behavior","compatible":"zmk,behavior-backlight","include":"two_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":2}}},"zmk,behavior-bluetooth":{"description":"Bluetooth Behavior","compatible":"zmk,behavior-bluetooth","include":"two_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":2}}},"zmk,behavior-caps-word":{"description":"Caps word behavior","compatible":"zmk,behavior-caps-word","include":"zero_param.yaml","properties":{"continue-list":{"type":"array","required":true},"mods":{"type":"int"},"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,behavior-ext-power":{"description":"External power control Behavior","compatible":"zmk,behavior-ext-power","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,behavior-hold-tap":{"description":"Hold or Tap behavior","compatible":"zmk,behavior-hold-tap","include":"two_param.yaml","properties":{"bindings":{"type":"phandles","required":true},"tapping-term-ms":{"type":"int"},"tapping_term_ms":{"type":"int"},"quick-tap-ms":{"type":"int","default":-1},"quick_tap_ms":{"type":"int"},"global-quick-tap":{"type":"boolean"},"require-prior-idle-ms":{"type":"int","default":-1},"flavor":{"type":"string","required":false,"default":"hold-preferred","enum":["hold-preferred","balanced","tap-preferred","tap-unless-interrupted"]},"retro-tap":{"type":"boolean"},"hold-trigger-key-positions":{"type":"array","required":false,"default":[]},"hold-trigger-on-release":{"type":"boolean"},"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":2}}},"zmk,behavior-key-press":{"description":"Key press/release behavior","compatible":"zmk,behavior-key-press","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,behavior-key-repeat":{"description":"Key repeat behavior","compatible":"zmk,behavior-key-repeat","include":"zero_param.yaml","properties":{"usage-pages":{"type":"array","required":true},"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,behavior-key-toggle":{"description":"Key toggle behavior","compatible":"zmk,behavior-key-toggle","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,behavior-macro-one-param":{"description":"Macro Behavior","compatible":"zmk,behavior-macro-one-param","include":["one_param.yaml","macro_base.yaml"],"properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1},"bindings":{"type":"phandle-array","required":true},"wait-ms":{"type":"int","description":"The default time to wait (in milliseconds) before triggering the next behavior in the macro bindings list."},"tap-ms":{"type":"int","description":"The default time to wait (in milliseconds) between the press and release events on a tapped macro behavior binding"}}},"zmk,behavior-macro-two-param":{"description":"Macro Behavior","compatible":"zmk,behavior-macro-two-param","include":["two_param.yaml","macro_base.yaml"],"properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":2},"bindings":{"type":"phandle-array","required":true},"wait-ms":{"type":"int","description":"The default time to wait (in milliseconds) before triggering the next behavior in the macro bindings list."},"tap-ms":{"type":"int","description":"The default time to wait (in milliseconds) between the press and release events on a tapped macro behavior binding"}}},"zmk,behavior-macro":{"description":"Macro Behavior","compatible":"zmk,behavior-macro","include":["zero_param.yaml","macro_base.yaml"],"properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0},"bindings":{"type":"phandle-array","required":true},"wait-ms":{"type":"int","description":"The default time to wait (in milliseconds) before triggering the next behavior in the macro bindings list."},"tap-ms":{"type":"int","description":"The default time to wait (in milliseconds) between the press and release events on a tapped macro behavior binding"}}},"zmk,behavior-mod-morph":{"description":"Mod Morph Behavior","compatible":"zmk,behavior-mod-morph","include":"zero_param.yaml","properties":{"bindings":{"type":"phandle-array","required":true},"mods":{"type":"int","required":true},"keep-mods":{"type":"int","required":false},"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,behavior-momentary-layer":{"description":"Momentary layer on press/release behavior","compatible":"zmk,behavior-momentary-layer","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,behavior-none":{"description":"None Binding Behavior","compatible":"zmk,behavior-none","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,behavior-outputs":{"description":"Output Selection Behavior","compatible":"zmk,behavior-outputs","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,behavior-reset":{"description":"Keyboard Reset Behavior","compatible":"zmk,behavior-reset","include":"zero_param.yaml","properties":{"type":{"type":"int","default":0},"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,behavior-rgb-underglow":{"description":"RGB Underglow Action","compatible":"zmk,behavior-rgb-underglow","include":"two_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":2}}},"zmk,behavior-sensor-rotate-var":{"description":"Sensor rotate behavior","compatible":"zmk,behavior-sensor-rotate-var","properties":{"label":{"type":"string","required":true},"#sensor-binding-cells":{"type":"int","required":true,"const":2},"bindings":{"type":"phandles","required":true},"tap-ms":{"type":"int","default":5}},"sensor-binding-cells":["param1","param2"]},"zmk,behavior-sensor-rotate":{"description":"Sensor rotate behavior","compatible":"zmk,behavior-sensor-rotate","properties":{"label":{"type":"string","required":true},"#sensor-binding-cells":{"type":"int","required":true,"const":0},"bindings":{"type":"phandle-array","required":true},"tap-ms":{"type":"int","default":5}}},"zmk,behavior-sticky-key":{"description":"Sticky key behavior","compatible":"zmk,behavior-sticky-key","include":"one_param.yaml","properties":{"bindings":{"type":"phandles","required":true},"release-after-ms":{"type":"int","required":true},"quick-release":{"type":"boolean"},"ignore-modifiers":{"type":"boolean"},"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,behavior-tap-dance":{"description":"Tap Dance Behavior","compatible":"zmk,behavior-tap-dance","include":"zero_param.yaml","properties":{"bindings":{"type":"phandle-array","required":true},"tapping-term-ms":{"type":"int","default":200},"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,behavior-to-layer":{"description":"To Layer","compatible":"zmk,behavior-to-layer","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,behavior-toggle-layer":{"description":"Toggle Layer","compatible":"zmk,behavior-toggle-layer","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,behavior-transparent":{"description":"Transparent Binding Behavior","compatible":"zmk,behavior-transparent","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,macro-control-mode-press":{"description":"Set Macro To Press Mode","compatible":"zmk,macro-control-mode-press","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,macro-control-mode-release":{"description":"Set Macro To Release Mode","compatible":"zmk,macro-control-mode-release","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,macro-control-mode-tap":{"description":"Set Macro To Tap Mode","compatible":"zmk,macro-control-mode-tap","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,macro-control-tap-time":{"description":"Set Macro Tap Duration","compatible":"zmk,macro-control-tap-time","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,macro-control-wait-time":{"description":"Set Macro Wait Duration","compatible":"zmk,macro-control-wait-time","include":"one_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":1}}},"zmk,macro-param-1to1":{"description":"Macro Parameter One Substituted Into Next Binding\'s First Parameter","compatible":"zmk,macro-param-1to1","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,macro-param-1to2":{"description":"Macro Parameter One Substituted Into Next Binding\'s Second Parameter","compatible":"zmk,macro-param-1to2","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,macro-param-2to1":{"description":"Macro Parameter Two Substituted Into Next Binding\'s First Parameter","compatible":"zmk,macro-param-2to1","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,macro-param-2to2":{"description":"Macro Parameter Two Substituted Into Next Binding\'s Second Parameter","compatible":"zmk,macro-param-2to2","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}},"zmk,macro-pause-for-release":{"description":"Macro Pause Until Release Marker","compatible":"zmk,macro-pause-for-release","include":"zero_param.yaml","properties":{"label":{"type":"string","required":true},"#binding-cells":{"type":"int","required":true,"const":0}}}}')},61443:function(_){"use strict";_.exports=JSON.parse('[{"name":"behavior_backlight","labels":["bl"],"code":"&bl","compatible":"zmk,behavior-backlight","properties":{"compatible":{"raw":"\\"zmk,behavior-backlight\\"","parsed":"zmk,behavior-backlight"},"label":{"raw":"\\"BCKLGHT\\"","parsed":"BCKLGHT"},"#binding-cells":{"raw":"<2>","parsed":2}}},{"name":"behavior_bluetooth","labels":["bt"],"code":"&bt","compatible":"zmk,behavior-bluetooth","properties":{"compatible":{"raw":"\\"zmk,behavior-bluetooth\\"","parsed":"zmk,behavior-bluetooth"},"label":{"raw":"\\"BLUETOOTH\\"","parsed":"BLUETOOTH"},"#binding-cells":{"raw":"<2>","parsed":2}}},{"name":"behavior_caps_word","labels":["caps_word"],"code":"&caps_word","compatible":"zmk,behavior-caps-word","properties":{"compatible":{"raw":"\\"zmk,behavior-caps-word\\"","parsed":"zmk,behavior-caps-word"},"continue-list":{"raw":"<UNDERSCORE BACKSPACE DELETE>","parsed":["UNDERSCORE","BACKSPACE","DELETE"]},"label":{"raw":"\\"CAPS_WORD\\"","parsed":"CAPS_WORD"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"behavior_ext_power","labels":["ext_power"],"code":"&ext_power","compatible":"zmk,behavior-ext-power","properties":{"compatible":{"raw":"\\"zmk,behavior-ext-power\\"","parsed":"zmk,behavior-ext-power"},"label":{"raw":"\\"EXTPOWER\\"","parsed":"EXTPOWER"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"grave_escape","labels":["gresc"],"code":"&gresc","compatible":"zmk,behavior-mod-morph","properties":{"compatible":{"raw":"\\"zmk,behavior-mod-morph\\"","parsed":"zmk,behavior-mod-morph"},"bindings":{"raw":"<&kp ESC>, <&kp GRAVE>","parsed":[{"value":"&kp","params":[{"value":"ESC","params":[]}]},{"value":"&kp","params":[{"value":"GRAVE","params":[]}]}]},"mods":{"raw":"<(MOD_LGUI|MOD_LSFT|MOD_RGUI|MOD_RSFT)>","parsed":["MOD_LGUI","MOD_LSFT","MOD_RGUI","MOD_RSFT"]},"label":{"raw":"\\"GRAVE_ESCAPE\\"","parsed":"GRAVE_ESCAPE"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"behavior_key_press","labels":["cp","kp"],"code":"&kp","compatible":"zmk,behavior-key-press","properties":{"compatible":{"raw":"\\"zmk,behavior-key-press\\"","parsed":"zmk,behavior-key-press"},"label":{"raw":"\\"KEY_PRESS\\"","parsed":"KEY_PRESS"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"behavior_key_repeat","labels":["key_repeat"],"code":"&key_repeat","compatible":"zmk,behavior-key-repeat","properties":{"compatible":{"raw":"\\"zmk,behavior-key-repeat\\"","parsed":"zmk,behavior-key-repeat"},"usage-pages":{"raw":"<HID_USAGE_KEY>","parsed":["HID_USAGE_KEY"]},"label":{"raw":"\\"KEY_REPEAT\\"","parsed":"KEY_REPEAT"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"behavior_key_toggle","labels":["kt"],"code":"&kt","compatible":"zmk,behavior-key-toggle","properties":{"compatible":{"raw":"\\"zmk,behavior-key-toggle\\"","parsed":"zmk,behavior-key-toggle"},"label":{"raw":"\\"KEY_TOGGLE\\"","parsed":"KEY_TOGGLE"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"behavior_layer_tap","labels":["lt"],"code":"&lt","compatible":"zmk,behavior-hold-tap","properties":{"compatible":{"raw":"\\"zmk,behavior-hold-tap\\"","parsed":"zmk,behavior-hold-tap"},"bindings":{"raw":"<&mo>, <&kp>","parsed":["&mo","&kp"]},"tapping-term-ms":{"raw":"<200>","parsed":200},"flavor":{"raw":"\\"tap-preferred\\"","parsed":"tap-preferred"},"label":{"raw":"\\"LAYER_TAP\\"","parsed":"LAYER_TAP"},"#binding-cells":{"raw":"<2>","parsed":2}}},{"name":"macro_control_mode_tap","labels":["macro_tap"],"code":"&macro_tap","compatible":"zmk,macro-control-mode-tap","properties":{"compatible":{"raw":"\\"zmk,macro-control-mode-tap\\"","parsed":"zmk,macro-control-mode-tap"},"label":{"raw":"\\"MAC_TAP\\"","parsed":"MAC_TAP"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"macro_control_mode_press","labels":["macro_press"],"code":"&macro_press","compatible":"zmk,macro-control-mode-press","properties":{"compatible":{"raw":"\\"zmk,macro-control-mode-press\\"","parsed":"zmk,macro-control-mode-press"},"label":{"raw":"\\"MAC_PRESS\\"","parsed":"MAC_PRESS"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"macro_control_mode_release","labels":["macro_release"],"code":"&macro_release","compatible":"zmk,macro-control-mode-release","properties":{"compatible":{"raw":"\\"zmk,macro-control-mode-release\\"","parsed":"zmk,macro-control-mode-release"},"label":{"raw":"\\"MAC_REL\\"","parsed":"MAC_REL"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"macro_control_tap_time","labels":["macro_tap_time"],"code":"&macro_tap_time","compatible":"zmk,macro-control-tap-time","properties":{"compatible":{"raw":"\\"zmk,macro-control-tap-time\\"","parsed":"zmk,macro-control-tap-time"},"label":{"raw":"\\"MAC_TAP_TIME\\"","parsed":"MAC_TAP_TIME"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"macro_control_wait_time","labels":["macro_wait_time"],"code":"&macro_wait_time","compatible":"zmk,macro-control-wait-time","properties":{"compatible":{"raw":"\\"zmk,macro-control-wait-time\\"","parsed":"zmk,macro-control-wait-time"},"label":{"raw":"\\"MAC_WAIT_TIME\\"","parsed":"MAC_WAIT_TIME"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"macro_pause_for_release","labels":["macro_pause_for_release"],"code":"&macro_pause_for_release","compatible":"zmk,macro-pause-for-release","properties":{"compatible":{"raw":"\\"zmk,macro-pause-for-release\\"","parsed":"zmk,macro-pause-for-release"},"label":{"raw":"\\"MAC_WAIT_REL\\"","parsed":"MAC_WAIT_REL"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"macro_param_1to1","labels":["macro_param_1to1"],"code":"&macro_param_1to1","compatible":"zmk,macro-param-1to1","properties":{"compatible":{"raw":"\\"zmk,macro-param-1to1\\"","parsed":"zmk,macro-param-1to1"},"label":{"raw":"\\"MAC_PARAM_1TO1\\"","parsed":"MAC_PARAM_1TO1"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"macro_param_1to2","labels":["macro_param_1to2"],"code":"&macro_param_1to2","compatible":"zmk,macro-param-1to2","properties":{"compatible":{"raw":"\\"zmk,macro-param-1to2\\"","parsed":"zmk,macro-param-1to2"},"label":{"raw":"\\"MAC_PARAM_1TO2\\"","parsed":"MAC_PARAM_1TO2"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"macro_param_2to1","labels":["macro_param_2to1"],"code":"&macro_param_2to1","compatible":"zmk,macro-param-2to1","properties":{"compatible":{"raw":"\\"zmk,macro-param-2to1\\"","parsed":"zmk,macro-param-2to1"},"label":{"raw":"\\"MAC_PARAM_2TO1\\"","parsed":"MAC_PARAM_2TO1"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"macro_param_2to2","labels":["macro_param_2to2"],"code":"&macro_param_2to2","compatible":"zmk,macro-param-2to2","properties":{"compatible":{"raw":"\\"zmk,macro-param-2to2\\"","parsed":"zmk,macro-param-2to2"},"label":{"raw":"\\"MAC_PARAM_2TO2\\"","parsed":"MAC_PARAM_2TO2"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"behavior_mod_tap","labels":["mt"],"code":"&mt","compatible":"zmk,behavior-hold-tap","properties":{"compatible":{"raw":"\\"zmk,behavior-hold-tap\\"","parsed":"zmk,behavior-hold-tap"},"bindings":{"raw":"<&kp>, <&kp>","parsed":["&kp","&kp"]},"tapping-term-ms":{"raw":"<200>","parsed":200},"flavor":{"raw":"\\"hold-preferred\\"","parsed":"hold-preferred"},"label":{"raw":"\\"MOD_TAP\\"","parsed":"MOD_TAP"},"#binding-cells":{"raw":"<2>","parsed":2}}},{"name":"behavior_momentary_layer","labels":["mo"],"code":"&mo","compatible":"zmk,behavior-momentary-layer","properties":{"compatible":{"raw":"\\"zmk,behavior-momentary-layer\\"","parsed":"zmk,behavior-momentary-layer"},"label":{"raw":"\\"MO\\"","parsed":"MO"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"behavior_none","labels":["none"],"code":"&none","compatible":"zmk,behavior-none","properties":{"compatible":{"raw":"\\"zmk,behavior-none\\"","parsed":"zmk,behavior-none"},"label":{"raw":"\\"NONE\\"","parsed":"NONE"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"behavior_outputs","labels":["out"],"code":"&out","compatible":"zmk,behavior-outputs","properties":{"compatible":{"raw":"\\"zmk,behavior-outputs\\"","parsed":"zmk,behavior-outputs"},"label":{"raw":"\\"OUTPUTS\\"","parsed":"OUTPUTS"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"behavior_reset","labels":["sys_reset"],"code":"&sys_reset","compatible":"zmk,behavior-reset","properties":{"compatible":{"raw":"\\"zmk,behavior-reset\\"","parsed":"zmk,behavior-reset"},"label":{"raw":"\\"SYSRESET\\"","parsed":"SYSRESET"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"behavior_reset_dfu","labels":["bootloader"],"code":"&bootloader","compatible":"zmk,behavior-reset","properties":{"compatible":{"raw":"\\"zmk,behavior-reset\\"","parsed":"zmk,behavior-reset"},"type":{"raw":"<RST_UF2>","parsed":"RST_UF2"},"label":{"raw":"\\"BOOTLOAD\\"","parsed":"BOOTLOAD"},"#binding-cells":{"raw":"<0>","parsed":0}}},{"name":"behavior_rgb_underglow","labels":["rgb_ug"],"code":"&rgb_ug","compatible":"zmk,behavior-rgb-underglow","properties":{"compatible":{"raw":"\\"zmk,behavior-rgb-underglow\\"","parsed":"zmk,behavior-rgb-underglow"},"label":{"raw":"\\"RGB_UG\\"","parsed":"RGB_UG"},"#binding-cells":{"raw":"<2>","parsed":2}}},{"name":"behavior_sensor_rotate_key_press","labels":["inc_dec_cp","inc_dec_kp"],"code":"&inc_dec_kp","compatible":"zmk,behavior-sensor-rotate-var","properties":{"compatible":{"raw":"\\"zmk,behavior-sensor-rotate-var\\"","parsed":"zmk,behavior-sensor-rotate-var"},"#sensor-binding-cells":{"raw":"<2>","parsed":2},"bindings":{"raw":"<&kp>, <&kp>","parsed":["&kp","&kp"]},"label":{"raw":"\\"ENC_KEY_PRESS\\"","parsed":"ENC_KEY_PRESS"}}},{"name":"behavior_sticky_key","labels":["sk"],"code":"&sk","compatible":"zmk,behavior-sticky-key","properties":{"compatible":{"raw":"\\"zmk,behavior-sticky-key\\"","parsed":"zmk,behavior-sticky-key"},"bindings":{"raw":"<&kp>","parsed":["&kp"]},"release-after-ms":{"raw":"<1000>","parsed":1000},"ignore-modifiers":{"raw":"","parsed":true},"label":{"raw":"\\"STICKY_KEY\\"","parsed":"STICKY_KEY"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"behavior_sticky_layer","labels":["sl"],"code":"&sl","compatible":"zmk,behavior-sticky-key","properties":{"compatible":{"raw":"\\"zmk,behavior-sticky-key\\"","parsed":"zmk,behavior-sticky-key"},"bindings":{"raw":"<&mo>","parsed":["&mo"]},"release-after-ms":{"raw":"<1000>","parsed":1000},"quick-release":{"raw":"","parsed":true},"label":{"raw":"\\"STICKY_LAYER\\"","parsed":"STICKY_LAYER"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"behavior_to_layer","labels":["to"],"code":"&to","compatible":"zmk,behavior-to-layer","properties":{"compatible":{"raw":"\\"zmk,behavior-to-layer\\"","parsed":"zmk,behavior-to-layer"},"label":{"raw":"\\"TO_LAYER\\"","parsed":"TO_LAYER"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"behavior_toggle_layer","labels":["tog"],"code":"&tog","compatible":"zmk,behavior-toggle-layer","properties":{"compatible":{"raw":"\\"zmk,behavior-toggle-layer\\"","parsed":"zmk,behavior-toggle-layer"},"label":{"raw":"\\"TOGGLE_LAYER\\"","parsed":"TOGGLE_LAYER"},"#binding-cells":{"raw":"<1>","parsed":1}}},{"name":"behavior_transparent","labels":["trans"],"code":"&trans","compatible":"zmk,behavior-transparent","properties":{"compatible":{"raw":"\\"zmk,behavior-transparent\\"","parsed":"zmk,behavior-transparent"},"label":{"raw":"\\"TRANS\\"","parsed":"TRANS"},"#binding-cells":{"raw":"<0>","parsed":0}}}]')},15126:function(_){"use strict";_.exports=JSON.parse('[{"names":["A"],"description":"a and A","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458756}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["B"],"description":"b and B","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458757}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["C"],"description":"c and C","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458758}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["D"],"description":"d and D","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458759}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["E"],"description":"e and E","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458760}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F"],"description":"f and F","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458761}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["G"],"description":"g and G","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458762}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["H"],"description":"h and H","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458763}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["I"],"description":"i and I","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458764}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["J"],"description":"j and J","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458765}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["K"],"description":"k and K","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458766}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["L"],"description":"l and L","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458767}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["M"],"description":"m and M","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458768}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["N"],"description":"n and N","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458769}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["O"],"description":"o and O","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458770}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["P"],"description":"p and P","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458771}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["Q"],"description":"q and Q","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458772}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["R"],"description":"r and R","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458773}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["S"],"description":"s and S","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458774}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["T"],"description":"t and T","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458775}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["U"],"description":"u and U","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458776}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=83","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["V"],"description":"v and V","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458777}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["W"],"description":"w and W","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458778}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["X"],"description":"x and X","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458779}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["Y"],"description":"y and Y","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458780}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["Z"],"description":"z and Z","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458781}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_1","N1"],"description":"1 and ! [Exclamation]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458782}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["EXCLAMATION","EXCL"],"description":"! [Exclamation]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458782},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_2","N2"],"description":"2 and @ [At Sign]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458783}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["AT_SIGN","AT"],"description":"@ [At Sign]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458783},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_3","N3"],"description":"3 and # [Hash / Pound]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458784}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["HASH","POUND"],"description":"# [Hash / Pound]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458784},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_4","N4"],"description":"4 and $ [Dollar]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458785}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["DOLLAR","DLLR"],"description":"$ [Dollar]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458785},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_5","N5"],"description":"5 and % [Percent]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458786}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PERCENT","PRCNT"],"description":"% [Percent]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458786},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_6","N6"],"description":"6 and ^ [Caret]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458787}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["CARET"],"description":"^ [Caret]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458787},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_7","N7"],"description":"7 and & [Ampersand]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458788}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["AMPERSAND","AMPS"],"description":"& [Ampersand]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458788},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_8","N8"],"description":"8 and * [Asterisk / Star]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458789}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["ASTERISK","ASTRK","STAR"],"description":"* [Asterisk / Star]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458789},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_9","N9"],"description":"9 and ( [Left Parenthesis]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458790}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["LEFT_PARENTHESIS","LPAR"],"description":"( [Left Parenthesis]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458790},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NUMBER_0","N0"],"description":"0 and ) [Right Parenthesis]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458791}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RIGHT_PARENTHESIS","RPAR"],"description":") [Right Parenthesis]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458791},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RETURN","ENTER","RET"],"description":"Return (Enter)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458792}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["ESCAPE","ESC"],"description":"Escape","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458793}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["BACKSPACE","BSPC"],"description":"Backspace","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458794}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["TAB"],"description":"Tab","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458795}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["SPACE"],"description":"Space","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458796}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["MINUS"],"description":"- [Minus] and _ [Underscore]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458797}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["UNDERSCORE","UNDER"],"description":"_ [Underscore]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458797},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["EQUAL"],"description":"= [Equal] and + [Plus]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458798}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PLUS"],"description":"+ [Plus]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458798},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["LEFT_BRACKET","LBKT"],"description":"[ [Left Bracket] and { [Left Brace]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458799}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["LEFT_BRACE","LBRC"],"description":"{ [Left Brace]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458799},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RIGHT_BRACKET","RBKT"],"description":"] [Right Bracket] and } [Right Brace]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458800}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RIGHT_BRACE","RBRC"],"description":"} [Right Brace]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458800},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["BACKSLASH","BSLH"],"description":"\\\\ [Backslash] and | [Pipe]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458801}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PIPE"],"description":"| [Pipe]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458801},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NON_US_HASH","NUHS"],"description":"Non-US # [Hash/Pound] and ~ [Tilde]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458802}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["TILDE2"],"description":"~ [Tilde]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458802},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["SEMICOLON","SEMI"],"description":"; [Semicolon] and : [Colon]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458803}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["COLON"],"description":": [Colon]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458803},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["SINGLE_QUOTE","SQT","APOSTROPHE","APOS"],"description":"\' [Apostrophe] and \\" [Quote (Double)]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458804}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["DOUBLE_QUOTES","DQT"],"description":"\\" [Quote (Double)]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458804},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["GRAVE"],"description":"` [Grave Accent] and ~ [Tilde]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458805}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["TILDE"],"description":"~ [Tilde]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458805},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["COMMA"],"description":", [Comma] and < [Less Than]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458806}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["LESS_THAN","LT"],"description":"< [Less Than]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458806},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PERIOD","DOT"],"description":". [Period] and > [Greater Than]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458807}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["GREATER_THAN","GT"],"description":"> [Greater Than]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458807},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["SLASH","FSLH"],"description":"/ [Forward Slash] and ? [Question Mark]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458808}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["QUESTION","QMARK"],"description":"? [Question Mark]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458808},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["CAPSLOCK","CAPS","CLCK"],"description":"Caps Lock","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458809}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F1"],"description":"F1","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458810}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F2"],"description":"F2","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458811}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F3"],"description":"F3","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458812}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F4"],"description":"F4","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458813}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=84","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F5"],"description":"F5","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458814}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F6"],"description":"F6","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458815}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F7"],"description":"F7","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458816}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F8"],"description":"F8","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458817}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F9"],"description":"F9","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458818}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F10"],"description":"F10","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458819}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F11"],"description":"F11","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458820}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["F12"],"description":"F12","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458821}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PRINTSCREEN","PSCRN"],"description":"Print Screen","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458822}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["SCROLLLOCK","SLCK"],"description":"Scroll Lock","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458823}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PAUSE_BREAK"],"description":"Pause / Break","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458824}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["INSERT","INS"],"description":"Insert","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458825}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["HOME"],"description":"Home","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458826}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PAGE_UP","PG_UP"],"description":"Page Up","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458827}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["DELETE","DEL"],"description":"Delete","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458828}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["END"],"description":"End","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458829}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PAGE_DOWN","PG_DN"],"description":"Page Down","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458830}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RIGHT_ARROW","RIGHT"],"description":"⮕ [Right Arrow]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458831}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["LEFT_ARROW","LEFT"],"description":"⬅ [Left Arrow]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458832}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["DOWN_ARROW","DOWN"],"description":"⬇ [Down Arrow]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458833}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["UP_ARROW","UP"],"description":"⬆ [Up Arrow]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458834}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMLOCK","KP_NUM","KP_NLCK"],"description":"Numlock and Clear","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458835}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["CLEAR2"],"description":"Clear","context":"Keypad","clarify":null,"usages":[{"application":65542,"item":458835},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["KP_DIVIDE","KP_SLASH"],"description":"/ [Divide]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458836}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_MULTIPLY","KP_ASTERISK"],"description":"* [Multiply]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458837}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_MINUS","KP_SUBTRACT"],"description":"- [Minus]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458838}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_PLUS"],"description":"+ [Plus]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458839}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_ENTER"],"description":"Enter","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458840}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_1","KP_N1"],"description":"1","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458841}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_2","KP_N2"],"description":"2","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458842}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_3","KP_N3"],"description":"3","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458843}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_4","KP_N4"],"description":"4","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458844}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_5","KP_N5"],"description":"5","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458845}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_6","KP_N6"],"description":"6","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458846}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_7","KP_N7"],"description":"7","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458847}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_8","KP_N8"],"description":"8","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458848}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_9","KP_N9"],"description":"9","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458849}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_NUMBER_0","KP_N0"],"description":"0","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458850}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=85","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["KP_DOT"],"description":". [Dot]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458851}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["NON_US_BACKSLASH","NON_US_BSLH","NUBS"],"description":"Non-US \\\\ [Backslash] and | [Pipe]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458852}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["PIPE2"],"description":"| [Pipe]","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458852},{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["K_APPLICATION","K_APP","K_CONTEXT_MENU","K_CMENU"],"description":"Application (Context Menu)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458853}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{"ios":["iosApplication"]}},{"names":["K_POWER","K_PWR"],"description":"Power","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458854}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":null,"linux":false,"android":true,"macos":true,"ios":true},"footnotes":{"macos":["macosPower"],"ios":["iosPower"]}},{"names":["KP_EQUAL"],"description":"= [Equal]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458855}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":true,"macos":null,"ios":true},"footnotes":{}},{"names":["F13"],"description":"F13","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458856}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F14"],"description":"F14","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458857}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F15"],"description":"F15","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458858}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F16"],"description":"F16","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458859}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F17"],"description":"F17","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458860}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F18"],"description":"F18","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458861}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F19"],"description":"F19","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458862}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F20"],"description":"F20","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458863}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F21"],"description":"F21","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458864}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F22"],"description":"F22","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458865}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F23"],"description":"F23","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458866}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["F24"],"description":"F24","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458867}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{}},{"names":["K_EXECUTE","K_EXEC"],"description":"Execute","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458868}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_HELP"],"description":"Help","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458869}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_MENU"],"description":"Menu","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458870}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_SELECT"],"description":"Select","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458871}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_STOP"],"description":"Stop","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458872}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["K_AGAIN","K_REDO"],"description":"Again","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458873}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_UNDO"],"description":"Undo","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458874}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_CUT"],"description":"Cut","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458875}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_COPY"],"description":"Copy","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458876}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_PASTE"],"description":"Paste","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458877}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_FIND"],"description":"Find","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458878}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_MUTE"],"description":"Mute","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458879}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":true,"macos":true,"ios":null},"footnotes":{}},{"names":["K_VOLUME_UP","K_VOL_UP"],"description":"Volume Up","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458880}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":null},"footnotes":{}},{"names":["K_VOLUME_DOWN","K_VOL_DN"],"description":"Volume Down","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458881}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":null},"footnotes":{}},{"names":["LOCKING_CAPS","LCAPS"],"description":"Locking Caps Lock","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458882}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LOCKING_NUM","LNLCK"],"description":"Locking Num Lock","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458883}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LOCKING_SCROLL","LSLCK"],"description":"Locking Scroll Lock","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458884}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":true,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["KP_COMMA"],"description":", [Comma]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458885}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["KP_EQUAL_AS400"],"description":"= [Equal] (AS/400 keyboards)","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458886}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_1","INT1","INT_RO"],"description":"ろ (International 1)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458887}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_2","INT2","INT_KATAKANAHIRAGANA","INT_KANA"],"description":"かな (International 2)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458888}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_3","INT3","INT_YEN"],"description":"¥ (International 3)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458889}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_4","INT4","INT_HENKAN"],"description":"変換 (International 4)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458890}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=86","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_5","INT5","INT_MUHENKAN"],"description":"無変換 (International 5)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458891}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_6","INT6","INT_KPJPCOMMA"],"description":", [カンマ] (International 6)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458892}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_7","INT7"],"description":"International 7","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458893}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_8","INT8"],"description":"International 8","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458894}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["INTERNATIONAL_9","INT9"],"description":"International 9","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458895}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_1","LANG1","LANG_HANGEUL"],"description":"한/영 (Language 1)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458896}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":true,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_2","LANG2","LANG_HANJA"],"description":"한자 (Language 2)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458897}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":true,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_3","LANG3","LANG_KATAKANA"],"description":"カタカナ (Language 3)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458898}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_4","LANG4","LANG_HIRAGANA"],"description":"ひらがな (Language 4)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458899}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_5","LANG5","LANG_ZENKAKUHANKAKU"],"description":"半角/全角 (Language 5)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458900}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_6","LANG6"],"description":"Language 6","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458901}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_7","LANG7"],"description":"Language 7","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458902}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_8","LANG8"],"description":"Language 8","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458903}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["LANGUAGE_9","LANG9"],"description":"Language 9","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458904}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["ALT_ERASE"],"description":"Alternate Erase","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458905}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["SYSREQ","ATTENTION"],"description":"SysReq / Attention","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458906}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["K_CANCEL"],"description":"Cancel","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458907}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["CLEAR"],"description":"Clear","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458908}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["PRIOR"],"description":"Prior","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458909}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["RETURN2","RET2"],"description":"Return","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458910}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":false,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["SEPARATOR"],"description":"Separator","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458911}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["OUT"],"description":"Out","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458912}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["OPER"],"description":"Oper","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458913}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["CLEAR_AGAIN"],"description":"Clear / Again","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458914}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["CRSEL"],"description":"CrSel / Props","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458915}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["EXSEL"],"description":"ExSel","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458916}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["KP_LEFT_PARENTHESIS","KP_LPAR"],"description":"( [Left Parenthesis]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458934}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["KP_RIGHT_PARENTHESIS","KP_RPAR"],"description":") [Right Parenthesis]","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458935}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=87","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["KP_CLEAR"],"description":"Clear","context":"Keypad","clarify":false,"usages":[{"application":65542,"item":458968}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=88","os":{"windows":null,"linux":true,"android":false,"macos":false,"ios":false},"footnotes":{}},{"names":["LEFT_CONTROL","LCTRL","LC(code)"],"description":"Left Control","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458976}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=88","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["LEFT_SHIFT","LSHIFT","LSHFT","LS(code)"],"description":"Left Shift ⇧","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=88","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["LEFT_ALT","LALT","LA(code)"],"description":"Left Alt","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458978}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=88","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["LEFT_GUI","LGUI","LG(code)","LEFT_WIN","LWIN","LEFT_COMMAND","LCMD","LEFT_META","LMETA"],"description":"Left GUI (Windows / Command / Meta)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458979}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=88","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RIGHT_CONTROL","RCTRL","RC(code)"],"description":"Right Control","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458980}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=88","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RIGHT_SHIFT","RSHIFT","RSHFT","RS(code)"],"description":"Right Shift ⇧","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458981}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=89","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RIGHT_ALT","RALT","RA(code)"],"description":"Right Alt","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458982}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=89","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["RIGHT_GUI","RGUI","RG(code)","RIGHT_WIN","RWIN","RIGHT_COMMAND","RCMD","RIGHT_META","RMETA"],"description":"Right GUI (Windows / Command / Meta)","context":"Keyboard","clarify":false,"usages":[{"application":65542,"item":458983}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=89","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":true},"footnotes":{}},{"names":["K_PLAY_PAUSE","K_PP"],"description":"Play / Pause","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458984}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_STOP2"],"description":"Stop","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458985}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_PREVIOUS","K_PREV"],"description":"Previous","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458986}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_NEXT"],"description":"Next","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458987}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_EJECT"],"description":"Eject","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458988}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_VOLUME_UP2","K_VOL_UP2"],"description":"Volume Up","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458989}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_VOLUME_DOWN2","K_VOL_DN2"],"description":"Volume Down","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458990}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_MUTE2"],"description":"Mute","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458991}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_WWW"],"description":"Internet Browser","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458992}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_BACK"],"description":"Back","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458993}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_FORWARD"],"description":"Forward","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458994}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_STOP3"],"description":"Stop","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458995}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":false,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_FIND2"],"description":"Find","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458996}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":false,"macos":false,"ios":false},"footnotes":{}},{"names":["K_SCROLL_UP"],"description":"Scroll Up","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458997}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_SCROLL_DOWN"],"description":"Scroll Down","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458998}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_EDIT"],"description":"Edit","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":458999}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":false,"macos":false,"ios":false},"footnotes":{}},{"names":["K_SLEEP"],"description":"Sleep","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":459000}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":false,"macos":false,"ios":false},"footnotes":{}},{"names":["K_LOCK","K_SCREENSAVER","K_COFFEE"],"description":"Lock","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":459001}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["K_REFRESH"],"description":"Refresh","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":459002}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":false,"macos":false,"ios":false},"footnotes":{}},{"names":["K_CALCULATOR","K_CALC"],"description":"Calculator","context":"Keyboard","clarify":true,"usages":[{"application":65542,"item":459003}],"documentation":"https://source.android.com/devices/input/keyboard-devices#hid-keyboard-and-keypad-page-0x07","os":{"windows":null,"linux":true,"android":true,"macos":false,"ios":false},"footnotes":{}},{"names":["C_POWER","C_PWR"],"description":"Power","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786480}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=132","os":{"windows":null,"linux":true,"android":false,"macos":true,"ios":true},"footnotes":{"macos":["macosPower"],"ios":["iosPower"]}},{"names":["C_RESET"],"description":"Reset","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786481}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=132","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_SLEEP"],"description":"Sleep","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786482}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=132","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_SLEEP_MODE"],"description":"Sleep Mode","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786484}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=132","os":{"windows":null,"linux":false,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU"],"description":"Menu","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786496}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU_PICK","C_MENU_SELECT"],"description":"Pick","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786497}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU_UP"],"description":"Up","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786498}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU_DOWN"],"description":"Down","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786499}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU_LEFT"],"description":"Left","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786500}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU_RIGHT"],"description":"Right","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786501}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU_ESCAPE","C_MENU_ESC"],"description":"Escape","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786502}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU_INCREASE","C_MENU_INC"],"description":"Value Increase","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786503}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MENU_DECREASE","C_MENU_DEC"],"description":"Value Decrease","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786504}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_DATA_ON_SCREEN"],"description":"Data On Screen","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786528}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":null,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_CAPTIONS","C_SUBTITLES"],"description":"Closed Caption","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786529}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":false,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_SNAPSHOT"],"description":"Snapshot","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786533}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":false,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_PIP"],"description":"Picture-in-Picture Toggle","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786535}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":false,"linux":false,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_RED_BUTTON","C_RED"],"description":"Red Button","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786537}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_GREEN_BUTTON","C_GREEN"],"description":"Green Button","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786538}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_BLUE_BUTTON","C_BLUE"],"description":"Blue Button","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786539}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_YELLOW_BUTTON","C_YELLOW"],"description":"Yellow Button","context":"Consumer Menu","clarify":true,"usages":[{"application":786433,"item":786540}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=133","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_ASPECT"],"description":"Aspect","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786541}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":false,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_BRIGHTNESS_INC","C_BRI_INC","C_BRI_UP"],"description":"Increase Brightness","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786543}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":true,"linux":true,"android":null,"macos":true,"ios":null},"footnotes":{}},{"names":["C_BRIGHTNESS_DEC","C_BRI_DEC","C_BRI_DN"],"description":"Decrease Brightness","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786544}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":true,"linux":true,"android":null,"macos":true,"ios":null},"footnotes":{}},{"names":["C_BACKLIGHT_TOGGLE","C_BKLT_TOG"],"description":"Backlight Toggle","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786546}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":false,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_BRIGHTNESS_MINIMUM","C_BRI_MIN"],"description":"Minimum Brightness","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786547}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":false,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_BRIGHTNESS_MAXIMUM","C_BRI_MAX"],"description":"Maximum Brightness","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786548}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":false,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_BRIGHTNESS_AUTO","C_BRI_AUTO"],"description":"Auto Brightness","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786549}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=134","os":{"windows":false,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_STEP","C_MODE_STEP"],"description":"Mode Step","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786562}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_RECALL_LAST","C_CHAN_LAST"],"description":"Recall Last","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786563}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_COMPUTER"],"description":"Computer","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786568}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_TV"],"description":"TV","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786569}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_WWW"],"description":"WWW","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786570}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_DVD"],"description":"DVD","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786571}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_PHONE"],"description":"Telephone","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786572}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_GUIDE"],"description":"Program Guide","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786573}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_VIDEOPHONE"],"description":"Video Phone","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786574}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_GAMES"],"description":"Games","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786575}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_MESSAGES"],"description":"Messages","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786576}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_CD"],"description":"CD","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786577}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_VCR"],"description":"VCR","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786578}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_TUNER"],"description":"Tuner","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786579}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_QUIT"],"description":"Quit","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786580}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_HELP"],"description":"Help","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786581}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_TAPE"],"description":"Tape","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786582}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_CABLE"],"description":"Cable","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786583}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_SATELLITE"],"description":"Satellite","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786584}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_HOME"],"description":"Home","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786586}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=136","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_CHANNEL_INC","C_CHAN_INC"],"description":"Channel Increment","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786588}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=136","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_CHANNEL_DEC","C_CHAN_DEC"],"description":"Channel Decrement","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786589}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=136","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MEDIA_VCR_PLUS"],"description":"VCR Plus","context":"Consumer Media","clarify":true,"usages":[{"application":786433,"item":786592}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=135","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_PLAY"],"description":"Play","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786608}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":true,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_PAUSE"],"description":"Pause","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786609}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":true,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_RECORD","C_REC"],"description":"Record","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786610}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":false,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_FAST_FORWARD","C_FF"],"description":"Fast Forward","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786611}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":true,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_REWIND","C_RW"],"description":"Rewind","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786612}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":true,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_NEXT"],"description":"Next","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786613}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":null},"footnotes":{}},{"names":["C_PREVIOUS","C_PREV"],"description":"Previous","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786614}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":null},"footnotes":{}},{"names":["C_STOP"],"description":"Stop","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786615}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":false,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_EJECT"],"description":"Eject","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786616}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_RANDOM_PLAY","C_SHUFFLE"],"description":"Random Play","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786617}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_REPEAT"],"description":"Repeat","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786620}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_SLOW_TRACKING","C_SLOW2"],"description":"Slow Tracking","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786623}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":false,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_STOP_EJECT"],"description":"Stop / Eject","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786636}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":null,"linux":false,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_PLAY_PAUSE","C_PP"],"description":"Play / Pause","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786637}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=137","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":null},"footnotes":{}},{"names":["C_VOICE_COMMAND"],"description":"Voice Command","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786639}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=132","os":{"windows":null,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_MUTE"],"description":"Mute","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786658}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=139","os":{"windows":true,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_BASS_BOOST"],"description":"Bass Boost","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786661}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=139","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_VOLUME_UP","C_VOL_UP"],"description":"Volume Up","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786665}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=139","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":null},"footnotes":{}},{"names":["C_VOLUME_DOWN","C_VOL_DN"],"description":"Volume Down","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786666}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=139","os":{"windows":true,"linux":true,"android":true,"macos":true,"ios":null},"footnotes":{}},{"names":["C_SLOW"],"description":"Slow","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786677}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=141","os":{"windows":false,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_ALTERNATE_AUDIO_INCREMENT","C_ALT_AUDIO_INC"],"description":"Alternate Audio Increment","context":"Consumer","clarify":true,"usages":[{"application":786433,"item":786803}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf","os":{"windows":null,"linux":false,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_CCC"],"description":"Consumer Control Configuration","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786819}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_WORD"],"description":"Word Processor","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786820}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_TEXT_EDITOR"],"description":"Text Editor","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786821}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_SPREADSHEET","C_AL_SHEET"],"description":"Spreadsheet","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786822}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_GRAPHICS_EDITOR"],"description":"Graphics Editor","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786823}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_PRESENTATION"],"description":"Presentation","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786824}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_DATABASE","C_AL_DB"],"description":"Database App","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786825}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_EMAIL","C_AL_MAIL"],"description":"Email Reader","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786826}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_NEWS"],"description":"Newsreader","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786827}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_VOICEMAIL"],"description":"Voicemail","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786828}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_CONTACTS","C_AL_ADDRESS_BOOK"],"description":"Contacts / Address Book","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786829}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_CALENDAR","C_AL_CAL"],"description":"Calendar / Schedule","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786830}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_TASK_MANAGER"],"description":"Task / Project Manager","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786831}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_JOURNAL"],"description":"Log / Journal / Timecard","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786832}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_FINANCE"],"description":"Checkbook / Finance","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786833}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_CALCULATOR","C_AL_CALC"],"description":"Calculator","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786834}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_AV_CAPTURE_PLAYBACK"],"description":"A/V Capture / Playback","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786835}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_MY_COMPUTER"],"description":"Local Machine Browser","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786836}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_WWW"],"description":"Internet Browser","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786838}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=147","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_NETWORK_CHAT","C_AL_CHAT"],"description":"Network Chat","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786841}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_LOGOFF"],"description":"Logoff","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786844}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_LOCK","C_AL_SCREENSAVER","C_AL_COFFEE"],"description":"Terminal Lock / Screensaver","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786846}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_CONTROL_PANEL"],"description":"Control Panel","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786847}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_SELECT_TASK"],"description":"Select Task / Application","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786850}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_NEXT_TASK"],"description":"Next Task / Application","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786851}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_PREVIOUS_TASK","C_AL_PREV_TASK"],"description":"Previous Task / Application","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786852}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_HELP"],"description":"Integrated Help Center","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786854}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_DOCUMENTS","C_AL_DOCS"],"description":"Documents","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786855}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_SPELLCHECK","C_AL_SPELL"],"description":"Spell Check","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786859}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_KEYBOARD_LAYOUT"],"description":"Keyboard Layout","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786862}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_SCREEN_SAVER"],"description":"Screen Saver","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786865}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_FILE_BROWSER","C_AL_FILES"],"description":"File Browser","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786868}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_IMAGE_BROWSER","C_AL_IMAGES"],"description":"Image Browser","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786870}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_AUDIO_BROWSER","C_AL_AUDIO","C_AL_MUSIC"],"description":"Audio Browser","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786871}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_MOVIE_BROWSER","C_AL_MOVIES"],"description":"Movie Browser","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786872}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=148","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_INSTANT_MESSAGING","C_AL_IM"],"description":"Instant Messaging","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786876}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=149","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AL_OEM_FEATURES","C_AL_TIPS","C_AL_TUTORIAL"],"description":"OEM Features / Tips / Tutorial Browser","context":"Consumer AL","clarify":true,"usages":[{"application":786433,"item":786877}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=149","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_NEW"],"description":"New","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786945}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_OPEN"],"description":"Open","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786946}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_CLOSE"],"description":"Close","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786947}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_EXIT"],"description":"Exit","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786948}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_SAVE"],"description":"Save","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786951}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_PRINT"],"description":"Print","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786952}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_PROPERTIES","C_AC_PROPS"],"description":"Properties","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786953}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_UNDO"],"description":"Undo","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786970}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_COPY"],"description":"Copy","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786971}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_CUT"],"description":"Cut","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786972}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_PASTE"],"description":"Paste","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786973}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_FIND"],"description":"Find","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786975}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_SEARCH"],"description":"Search","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786977}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":true,"macos":true,"ios":null},"footnotes":{}},{"names":["C_AC_GOTO"],"description":"Go To","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786978}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_HOME"],"description":"Home","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786979}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_BACK"],"description":"Back","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786980}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_FORWARD"],"description":"Forward","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786981}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_STOP"],"description":"Stop","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786982}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_REFRESH"],"description":"Refresh","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786983}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_BOOKMARKS","C_AC_FAVORITES","C_AC_FAVOURITES"],"description":"Bookmarks","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786986}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_ZOOM_IN"],"description":"Zoom In","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786989}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_ZOOM_OUT"],"description":"Zoom Out","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786990}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_ZOOM"],"description":"Zoom","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786991}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=150","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_VIEW_TOGGLE"],"description":"View Toggle","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786994}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=151","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_SCROLL_UP"],"description":"Scroll Up","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786995}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=151","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_SCROLL_DOWN"],"description":"Scroll Down","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":786996}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=151","os":{"windows":null,"linux":true,"android":true,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_EDIT"],"description":"Edit","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787005}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=151","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_CANCEL"],"description":"Cancel","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787039}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=152","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_INSERT","C_AC_INS"],"description":"Insert Mode","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787049}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=152","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_DEL"],"description":"Delete","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787050}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=152","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_REDO"],"description":"Redo / Repeat","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787065}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=152","os":{"windows":false,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_REPLY"],"description":"Reply","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787081}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=153","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_FORWARD_MAIL"],"description":"Forward","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787083}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=153","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_SEND"],"description":"Send","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787084}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=153","os":{"windows":null,"linux":true,"android":false,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_DESKTOP_SHOW_ALL_WINDOWS"],"description":"Desktop Show All Windows","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787103}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=153","os":{"windows":null,"linux":true,"android":null,"macos":true,"ios":null},"footnotes":{}},{"names":["C_AC_DESKTOP_SHOW_ALL_APPLICATIONS"],"description":"Desktop Show All Applications","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787106}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=153","os":{"windows":null,"linux":true,"android":null,"macos":true,"ios":null},"footnotes":{}},{"names":["C_KEYBOARD_INPUT_ASSIST_PREVIOUS","C_KBIA_PREV"],"description":"Previous","context":"Consumer KBIA","clarify":true,"usages":[{"application":786433,"item":787143}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=157","os":{"windows":null,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_KEYBOARD_INPUT_ASSIST_NEXT","C_KBIA_NEXT"],"description":"Next","context":"Consumer KBIA","clarify":true,"usages":[{"application":786433,"item":787144}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=157","os":{"windows":null,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_KEYBOARD_INPUT_ASSIST_PREVIOUS_GROUP","C_KBIA_PREV_GRP"],"description":"Previous Group","context":"Consumer KBIA","clarify":true,"usages":[{"application":786433,"item":787145}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=157","os":{"windows":null,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_KEYBOARD_INPUT_ASSIST_NEXT_GROUP","C_KBIA_NEXT_GRP"],"description":"Next Group","context":"Consumer KBIA","clarify":true,"usages":[{"application":786433,"item":787146}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=157","os":{"windows":null,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_KEYBOARD_INPUT_ASSIST_ACCEPT","C_KBIA_ACCEPT"],"description":"Accept","context":"Consumer KBIA","clarify":true,"usages":[{"application":786433,"item":787147}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=157","os":{"windows":null,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_KEYBOARD_INPUT_ASSIST_CANCEL","C_KBIA_CANCEL"],"description":"Cancel","context":"Consumer KBIA","clarify":true,"usages":[{"application":786433,"item":787148}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=157","os":{"windows":null,"linux":true,"android":null,"macos":null,"ios":null},"footnotes":{}},{"names":["C_AC_NEXT_KEYBOARD_LAYOUT_SELECT","GLOBE"],"description":"AC Next Keyboard Layout Select (Apple Globe)","context":"Consumer AC","clarify":true,"usages":[{"application":786433,"item":787101}],"documentation":"https://usb.org/sites/default/files/hut1_2.pdf#page=153","os":{"windows":null,"linux":null,"android":null,"macos":true,"ios":true},"footnotes":{}}]')},2024:function(_){"use strict";_.exports=JSON.parse('["BL_ON_CMD","BL_OFF_CMD","BL_TOG_CMD","BL_INC_CMD","BL_DEC_CMD","BL_CYCLE_CMD","BL_SET_CMD","BL_ON","BL_OFF","BL_TOG","BL_INC","BL_DEC","BL_CYCLE","BL_SET","BT_CLR_CMD","BT_NXT_CMD","BT_PRV_CMD","BT_SEL_CMD","BT_CLR","BT_NXT","BT_PRV","BT_SEL","EXT_POWER_OFF_CMD","EXT_POWER_ON_CMD","EXT_POWER_TOGGLE_CMD","EP_ON","EP_OFF","EP_TOG","HID_USAGE_GD_UNDEFINED","HID_USAGE_GD_POINTER","HID_USAGE_GD_MOUSE","HID_USAGE_GD_JOYSTICK","HID_USAGE_GD_GAMEPAD","HID_USAGE_GD_KEYBOARD","HID_USAGE_GD_KEYPAD","HID_USAGE_GD_MULTI_AXIS_CONTROLLER","HID_USAGE_GD_TABLET_PC_SYSTEM_CONTROLS","HID_USAGE_GD_WATER_COOLING_DEVICE","HID_USAGE_GD_COMPUTER_CHASSIS_DEVICE","HID_USAGE_GD_WIRELESS_RADIO_CONTROLS","HID_USAGE_GD_PORTABLE_DEVICE_CONTROL","HID_USAGE_GD_SYSTEM_MULTI_AXIS_CONTROLLER","HID_USAGE_GD_SPATIAL_CONTROLLER","HID_USAGE_GD_ASSISTIVE_CONTROL","HID_USAGE_GD_DEVICE_DOCK","HID_USAGE_GD_DOCKABLE_DEVICE","HID_USAGE_GD_X","HID_USAGE_GD_Y","HID_USAGE_GD_Z","HID_USAGE_GD_RX","HID_USAGE_GD_RY","HID_USAGE_GD_RZ","HID_USAGE_GD_SLIDER","HID_USAGE_GD_DIAL","HID_USAGE_GD_WHEEL","HID_USAGE_GD_HAT_SWITCH","HID_USAGE_GD_COUNTED_BUFFER","HID_USAGE_GD_BYTE_COUNT","HID_USAGE_GD_MOTION_WAKEUP","HID_USAGE_GD_START","HID_USAGE_GD_SELECT","HID_USAGE_GD_VX","HID_USAGE_GD_VY","HID_USAGE_GD_VZ","HID_USAGE_GD_VBRX","HID_USAGE_GD_VBRY","HID_USAGE_GD_VBRZ","HID_USAGE_GD_VNO","HID_USAGE_GD_FEATURE_NOTIFICATION","HID_USAGE_GD_RESOLUTION_MULTIPLIER","HID_USAGE_GD_QX","HID_USAGE_GD_QY","HID_USAGE_GD_QZ","HID_USAGE_GD_QW","HID_USAGE_GD_SYSTEM_CONTROL","HID_USAGE_GD_SYSTEM_POWER_DOWN","HID_USAGE_GD_SYSTEM_SLEEP","HID_USAGE_GD_SYSTEM_WAKE_UP","HID_USAGE_GD_SYSTEM_CONTEXT_MENU","HID_USAGE_GD_SYSTEM_MAIN_MENU","HID_USAGE_GD_SYSTEM_APP_MENU","HID_USAGE_GD_SYSTEM_MENU_HELP","HID_USAGE_GD_SYSTEM_MENU_EXIT","HID_USAGE_GD_SYSTEM_MENU_SELECT","HID_USAGE_GD_SYSTEM_MENU_RIGHT","HID_USAGE_GD_SYSTEM_MENU_LEFT","HID_USAGE_GD_SYSTEM_MENU_UP","HID_USAGE_GD_SYSTEM_MENU_DOWN","HID_USAGE_GD_SYSTEM_COLD_RESTART","HID_USAGE_GD_SYSTEM_WARM_RESTART","HID_USAGE_GD_D_PAD_UP","HID_USAGE_GD_D_PAD_DOWN","HID_USAGE_GD_D_PAD_RIGHT","HID_USAGE_GD_D_PAD_LEFT","HID_USAGE_GD_INDEX_TRIGGER","HID_USAGE_GD_PALM_TRIGGER","HID_USAGE_GD_THUMBSTICK","HID_USAGE_GD_SYSTEM_FUNCTION_SHIFT","HID_USAGE_GD_SYSTEM_FUNCTION_SHIFT_LOCK","HID_USAGE_GD_SYSTEM_FUNCTION_SHIFT_LOCK_INDICATOR","HID_USAGE_GD_SYSTEM_DISMISS_NOTIFICATION","HID_USAGE_GD_SYSTEM_DO_NOT_DISTURB","HID_USAGE_GD_SYSTEM_DOCK","HID_USAGE_GD_SYSTEM_UNDOCK","HID_USAGE_GD_SYSTEM_SETUP","HID_USAGE_GD_SYSTEM_BREAK","HID_USAGE_GD_SYSTEM_DEBUGGER_BREAK","HID_USAGE_GD_APPLICATION_BREAK","HID_USAGE_GD_APPLICATION_DEBUGGER_BREAK","HID_USAGE_GD_SYSTEM_SPEAKER_MUTE","HID_USAGE_GD_SYSTEM_HIBERNATE","HID_USAGE_GD_SYSTEM_DISPLAY_INVERT","HID_USAGE_GD_SYSTEM_DISPLAY_INTERNAL","HID_USAGE_GD_SYSTEM_DISPLAY_EXTERNAL","HID_USAGE_GD_SYSTEM_DISPLAY_BOTH","HID_USAGE_GD_SYSTEM_DISPLAY_DUAL","HID_USAGE_GD_SYSTEM_DISPLAY_TOGGLE_INT_EXT_MODE","HID_USAGE_GD_SYSTEM_DISPLAY_SWAP_PRIMARY_SECONDARY","HID_USAGE_GD_SYSTEM_DISPLAY_TOGGLE_LCD_AUTOSCALE","HID_USAGE_GD_SENSOR_ZONE","HID_USAGE_GD_RPM","HID_USAGE_GD_COOLANT_LEVEL","HID_USAGE_GD_COOLANT_CRITICAL_LEVEL","HID_USAGE_GD_COOLANT_PUMP","HID_USAGE_GD_CHASSIS_ENCLOSURE","HID_USAGE_GD_WIRELESS_RADIO_BUTTON","HID_USAGE_GD_WIRELESS_RADIO_LED","HID_USAGE_GD_WIRELESS_RADIO_SLIDER_SWITCH","HID_USAGE_GD_SYSTEM_DISPLAY_ROTATION_LOCK_BUTTON","HID_USAGE_GD_SYSTEM_DISPLAY_ROTATION_LOCK_SLIDER_SWITCH","HID_USAGE_GD_CONTROL_ENABLE","HID_USAGE_GD_DOCKABLE_DEVICE_UNIQUE_ID","HID_USAGE_GD_DOCKABLE_DEVICE_VENDOR_ID","HID_USAGE_GD_DOCKABLE_DEVICE_PRIMARY_USAGE_PAGE","HID_USAGE_GD_DOCKABLE_DEVICE_PRIMARY_USAGE_ID","HID_USAGE_GD_DOCKABLE_DEVICE_DOCKING_STATE","HID_USAGE_GD_DOCKABLE_DEVICE_DISPLAY_OCCLUSION","HID_USAGE_GD_DOCKABLE_DEVICE_OBJECT_TYPE","HID_USAGE_SIM_UNDEFINED","HID_USAGE_SIM_FLIGHT_SIMULATION_DEVICE","HID_USAGE_SIM_AUTOMOBILE_SIMULATION_DEVICE","HID_USAGE_SIM_TANK_SIMULATION_DEVICE","HID_USAGE_SIM_SPACESHIP_SIMULATION_DEVICE","HID_USAGE_SIM_SUBMARINE_SIMULATION_DEVICE","HID_USAGE_SIM_SAILING_SIMULATION_DEVICE","HID_USAGE_SIM_MOTORCYCLE_SIMULATION_DEVICE","HID_USAGE_SIM_SPORTS_SIMULATION_DEVICE","HID_USAGE_SIM_AIRPLANE_SIMULATION_DEVICE","HID_USAGE_SIM_HELICOPTER_SIMULATION_DEVICE","HID_USAGE_SIM_MAGIC_CARPET_SIMULATION_DEVICE","HID_USAGE_SIM_BICYCLE_SIMULATION_DEVICE","HID_USAGE_SIM_FLIGHT_CONTROL_STICK","HID_USAGE_SIM_FLIGHT_STICK","HID_USAGE_SIM_CYCLIC_CONTROL","HID_USAGE_SIM_CYCLIC_TRIM","HID_USAGE_SIM_FLIGHT_YOKE","HID_USAGE_SIM_TRACK_CONTROL","HID_USAGE_SIM_AILERON","HID_USAGE_SIM_AILERON_TRIM","HID_USAGE_SIM_ANTI_TORQUE_CONTROL","HID_USAGE_SIM_AUTOPILOT_ENABLE","HID_USAGE_SIM_CHAFF_RELEASE","HID_USAGE_SIM_COLLECTIVE_CONTROL","HID_USAGE_SIM_DIVE_BRAKE","HID_USAGE_SIM_ELECTRONIC_COUNTERMEASURES","HID_USAGE_SIM_ELEVATOR","HID_USAGE_SIM_ELEVATOR_TRIM","HID_USAGE_SIM_RUDDER","HID_USAGE_SIM_THROTTLE","HID_USAGE_SIM_FLIGHT_COMMUNICATIONS","HID_USAGE_SIM_FLARE_RELEASE","HID_USAGE_SIM_LANDING_GEAR","HID_USAGE_SIM_TOE_BRAKE","HID_USAGE_SIM_TRIGGER","HID_USAGE_SIM_WEAPONS_ARM","HID_USAGE_SIM_WEAPONS_SELECT","HID_USAGE_SIM_WING_FLAPS","HID_USAGE_SIM_ACCELERATOR","HID_USAGE_SIM_BRAKE","HID_USAGE_SIM_CLUTCH","HID_USAGE_SIM_SHIFTER","HID_USAGE_SIM_STEERING","HID_USAGE_SIM_TURRET_DIRECTION","HID_USAGE_SIM_BARREL_ELEVATION","HID_USAGE_SIM_DIVE_PLANE","HID_USAGE_SIM_BALLAST","HID_USAGE_SIM_BICYCLE_CRANK","HID_USAGE_SIM_HANDLE_BARS","HID_USAGE_SIM_FRONT_BRAKE","HID_USAGE_SIM_REAR_BRAKE","HID_USAGE_VR_UNDEFINED","HID_USAGE_VR_BELT","HID_USAGE_VR_BODY_SUIT","HID_USAGE_VR_FLEXOR","HID_USAGE_VR_GLOVE","HID_USAGE_VR_HEAD_TRACKER","HID_USAGE_VR_HEAD_MOUNTED_DISPLAY","HID_USAGE_VR_HAND_TRACKER","HID_USAGE_VR_OCULOMETER","HID_USAGE_VR_VEST","HID_USAGE_VR_ANIMATRONIC_DEVICE","HID_USAGE_VR_STEREO_ENABLE","HID_USAGE_VR_DISPLAY_ENABLE","HID_USAGE_SPORT_UNDEFINED","HID_USAGE_SPORT_BASEBALL_BAT","HID_USAGE_SPORT_GOLF_CLUB","HID_USAGE_SPORT_ROWING_MACHINE","HID_USAGE_SPORT_TREADMILL","HID_USAGE_SPORT_OAR","HID_USAGE_SPORT_SLOPE","HID_USAGE_SPORT_RATE","HID_USAGE_SPORT_STICK_SPEED","HID_USAGE_SPORT_STICK_FACE_ANGLE","HID_USAGE_SPORT_STICK_HEEL_TOE","HID_USAGE_SPORT_STICK_FOLLOW_THROUGH","HID_USAGE_SPORT_STICK_TEMPO","HID_USAGE_SPORT_STICK_TYPE","HID_USAGE_SPORT_STICK_HEIGHT","HID_USAGE_SPORT_PUTTER","HID_USAGE_SPORT_1_IRON","HID_USAGE_SPORT_2_IRON","HID_USAGE_SPORT_3_IRON","HID_USAGE_SPORT_4_IRON","HID_USAGE_SPORT_5_IRON","HID_USAGE_SPORT_6_IRON","HID_USAGE_SPORT_7_IRON","HID_USAGE_SPORT_8_IRON","HID_USAGE_SPORT_9_IRON","HID_USAGE_SPORT_10_IRON","HID_USAGE_SPORT_11_IRON","HID_USAGE_SPORT_SAND_WEDGE","HID_USAGE_SPORT_LOFT_WEDGE","HID_USAGE_SPORT_POWER_WEDGE","HID_USAGE_SPORT_1_WOOD","HID_USAGE_SPORT_3_WOOD","HID_USAGE_SPORT_5_WOOD","HID_USAGE_SPORT_7_WOOD","HID_USAGE_SPORT_9_WOOD","HID_USAGE_GAME_UNDEFINED","HID_USAGE_GAME_3D_GAME_CONTROLLER","HID_USAGE_GAME_PINBALL_DEVICE","HID_USAGE_GAME_GUN_DEVICE","HID_USAGE_GAME_POINT_OF_VIEW","HID_USAGE_GAME_TURN_RIGHT_LEFT","HID_USAGE_GAME_PITCH_FORWARD_BACKWARD","HID_USAGE_GAME_ROLL_RIGHT_LEFT","HID_USAGE_GAME_MOVE_RIGHT_LEFT","HID_USAGE_GAME_MOVE_FORWARD_BACKWARD","HID_USAGE_GAME_MOVE_UP_DOWN","HID_USAGE_GAME_LEAN_RIGHT_LEFT","HID_USAGE_GAME_LEAN_FORWARD_BACKWARD","HID_USAGE_GAME_HEIGHT_OF_POV","HID_USAGE_GAME_FLIPPER","HID_USAGE_GAME_SECONDARY_FLIPPER","HID_USAGE_GAME_BUMP","HID_USAGE_GAME_NEW_GAME","HID_USAGE_GAME_SHOOT_BALL","HID_USAGE_GAME_PLAYER","HID_USAGE_GAME_GUN_BOLT","HID_USAGE_GAME_GUN_CLIP","HID_USAGE_GAME_GUN_SELECTOR","HID_USAGE_GAME_GUN_SINGLE_SHOT","HID_USAGE_GAME_GUN_BURST","HID_USAGE_GAME_GUN_AUTOMATIC","HID_USAGE_GAME_GUN_SAFETY","HID_USAGE_GAME_GAMEPAD_FIRE_JUMP","HID_USAGE_GAME_GAMEPAD_TRIGGER","HID_USAGE_GAME_FORM_FITTING_GAMEPAD","HID_USAGE_GDV_UNDEFINED","HID_USAGE_GDV_BACKGROUND_NONUSER_CONTROLS","HID_USAGE_GDV_BATTERY_STRENGTH","HID_USAGE_GDV_WIRELESS_CHANNEL","HID_USAGE_GDV_WIRELESS_ID","HID_USAGE_GDV_DISCOVER_WIRELESS_CONTROL","HID_USAGE_GDV_SECURITY_CODE_CHARACTER_ENTERED","HID_USAGE_GDV_SECURITY_CODE_CHARACTER_ERASED","HID_USAGE_GDV_SECURITY_CODE_CLEARED","HID_USAGE_GDV_SEQUENCE_ID","HID_USAGE_GDV_SEQUENCE_ID_RESET","HID_USAGE_GDV_RF_SIGNAL_STRENGTH","HID_USAGE_GDV_SOFTWARE_VERSION","HID_USAGE_GDV_PROTOCOL_VERSION","HID_USAGE_GDV_HARDWARE_VERSION","HID_USAGE_GDV_MAJOR","HID_USAGE_GDV_MINOR","HID_USAGE_GDV_REVISION","HID_USAGE_GDV_HANDEDNESS","HID_USAGE_GDV_EITHER_HAND","HID_USAGE_GDV_LEFT_HAND","HID_USAGE_GDV_RIGHT_HAND","HID_USAGE_GDV_BOTH_HANDS","HID_USAGE_GDV_GRIP_POSE_OFFSET","HID_USAGE_GDV_POINTER_POSE_OFFSET","HID_USAGE_KEY_KEYBOARD_ERRORROLLOVER","HID_USAGE_KEY_KEYBOARD_POSTFAIL","HID_USAGE_KEY_KEYBOARD_ERRORUNDEFINED","HID_USAGE_KEY_KEYBOARD_A","HID_USAGE_KEY_KEYBOARD_B","HID_USAGE_KEY_KEYBOARD_C","HID_USAGE_KEY_KEYBOARD_D","HID_USAGE_KEY_KEYBOARD_E","HID_USAGE_KEY_KEYBOARD_F","HID_USAGE_KEY_KEYBOARD_G","HID_USAGE_KEY_KEYBOARD_H","HID_USAGE_KEY_KEYBOARD_I","HID_USAGE_KEY_KEYBOARD_J","HID_USAGE_KEY_KEYBOARD_K","HID_USAGE_KEY_KEYBOARD_L","HID_USAGE_KEY_KEYBOARD_M","HID_USAGE_KEY_KEYBOARD_N","HID_USAGE_KEY_KEYBOARD_O","HID_USAGE_KEY_KEYBOARD_P","HID_USAGE_KEY_KEYBOARD_Q","HID_USAGE_KEY_KEYBOARD_R","HID_USAGE_KEY_KEYBOARD_S","HID_USAGE_KEY_KEYBOARD_T","HID_USAGE_KEY_KEYBOARD_U","HID_USAGE_KEY_KEYBOARD_V","HID_USAGE_KEY_KEYBOARD_W","HID_USAGE_KEY_KEYBOARD_X","HID_USAGE_KEY_KEYBOARD_Y","HID_USAGE_KEY_KEYBOARD_Z","HID_USAGE_KEY_KEYBOARD_1_AND_EXCLAMATION","HID_USAGE_KEY_KEYBOARD_2_AND_AT","HID_USAGE_KEY_KEYBOARD_3_AND_HASH","HID_USAGE_KEY_KEYBOARD_4_AND_DOLLAR","HID_USAGE_KEY_KEYBOARD_5_AND_PERCENT","HID_USAGE_KEY_KEYBOARD_6_AND_CARET","HID_USAGE_KEY_KEYBOARD_7_AND_AMPERSAND","HID_USAGE_KEY_KEYBOARD_8_AND_ASTERISK","HID_USAGE_KEY_KEYBOARD_9_AND_LEFT_PARENTHESIS","HID_USAGE_KEY_KEYBOARD_0_AND_RIGHT_PARENTHESIS","HID_USAGE_KEY_KEYBOARD_RETURN_ENTER","HID_USAGE_KEY_KEYBOARD_ESCAPE","HID_USAGE_KEY_KEYBOARD_DELETE_BACKSPACE","HID_USAGE_KEY_KEYBOARD_TAB","HID_USAGE_KEY_KEYBOARD_SPACEBAR","HID_USAGE_KEY_KEYBOARD_MINUS_AND_UNDERSCORE","HID_USAGE_KEY_KEYBOARD_EQUAL_AND_PLUS","HID_USAGE_KEY_KEYBOARD_LEFT_BRACKET_AND_LEFT_BRACE","HID_USAGE_KEY_KEYBOARD_RIGHT_BRACKET_AND_RIGHT_BRACE","HID_USAGE_KEY_KEYBOARD_BACKSLASH_AND_PIPE","HID_USAGE_KEY_KEYBOARD_NON_US_HASH_AND_TILDE","HID_USAGE_KEY_KEYBOARD_SEMICOLON_AND_COLON","HID_USAGE_KEY_KEYBOARD_APOSTROPHE_AND_QUOTE","HID_USAGE_KEY_KEYBOARD_GRAVE_ACCENT_AND_TILDE","HID_USAGE_KEY_KEYBOARD_COMMA_AND_LESS_THAN","HID_USAGE_KEY_KEYBOARD_PERIOD_AND_GREATER_THAN","HID_USAGE_KEY_KEYBOARD_SLASH_AND_QUESTION_MARK","HID_USAGE_KEY_KEYBOARD_CAPS_LOCK","HID_USAGE_KEY_KEYBOARD_F1","HID_USAGE_KEY_KEYBOARD_F2","HID_USAGE_KEY_KEYBOARD_F3","HID_USAGE_KEY_KEYBOARD_F4","HID_USAGE_KEY_KEYBOARD_F5","HID_USAGE_KEY_KEYBOARD_F6","HID_USAGE_KEY_KEYBOARD_F7","HID_USAGE_KEY_KEYBOARD_F8","HID_USAGE_KEY_KEYBOARD_F9","HID_USAGE_KEY_KEYBOARD_F10","HID_USAGE_KEY_KEYBOARD_F11","HID_USAGE_KEY_KEYBOARD_F12","HID_USAGE_KEY_KEYBOARD_PRINTSCREEN","HID_USAGE_KEY_KEYBOARD_SCROLL_LOCK","HID_USAGE_KEY_KEYBOARD_PAUSE","HID_USAGE_KEY_KEYBOARD_INSERT","HID_USAGE_KEY_KEYBOARD_HOME","HID_USAGE_KEY_KEYBOARD_PAGEUP","HID_USAGE_KEY_KEYBOARD_DELETE_FORWARD","HID_USAGE_KEY_KEYBOARD_END","HID_USAGE_KEY_KEYBOARD_PAGEDOWN","HID_USAGE_KEY_KEYBOARD_RIGHTARROW","HID_USAGE_KEY_KEYBOARD_LEFTARROW","HID_USAGE_KEY_KEYBOARD_DOWNARROW","HID_USAGE_KEY_KEYBOARD_UPARROW","HID_USAGE_KEY_KEYPAD_NUM_LOCK_AND_CLEAR","HID_USAGE_KEY_KEYPAD_SLASH","HID_USAGE_KEY_KEYPAD_ASTERISK","HID_USAGE_KEY_KEYPAD_MINUS","HID_USAGE_KEY_KEYPAD_PLUS","HID_USAGE_KEY_KEYPAD_ENTER","HID_USAGE_KEY_KEYPAD_1_AND_END","HID_USAGE_KEY_KEYPAD_2_AND_DOWN_ARROW","HID_USAGE_KEY_KEYPAD_3_AND_PAGEDN","HID_USAGE_KEY_KEYPAD_4_AND_LEFT_ARROW","HID_USAGE_KEY_KEYPAD_5","HID_USAGE_KEY_KEYPAD_6_AND_RIGHT_ARROW","HID_USAGE_KEY_KEYPAD_7_AND_HOME","HID_USAGE_KEY_KEYPAD_8_AND_UP_ARROW","HID_USAGE_KEY_KEYPAD_9_AND_PAGEUP","HID_USAGE_KEY_KEYPAD_0_AND_INSERT","HID_USAGE_KEY_KEYPAD_PERIOD_AND_DELETE","HID_USAGE_KEY_KEYBOARD_NON_US_BACKSLASH_AND_PIPE","HID_USAGE_KEY_KEYBOARD_APPLICATION","HID_USAGE_KEY_KEYBOARD_POWER","HID_USAGE_KEY_KEYPAD_EQUAL","HID_USAGE_KEY_KEYBOARD_F13","HID_USAGE_KEY_KEYBOARD_F14","HID_USAGE_KEY_KEYBOARD_F15","HID_USAGE_KEY_KEYBOARD_F16","HID_USAGE_KEY_KEYBOARD_F17","HID_USAGE_KEY_KEYBOARD_F18","HID_USAGE_KEY_KEYBOARD_F19","HID_USAGE_KEY_KEYBOARD_F20","HID_USAGE_KEY_KEYBOARD_F21","HID_USAGE_KEY_KEYBOARD_F22","HID_USAGE_KEY_KEYBOARD_F23","HID_USAGE_KEY_KEYBOARD_F24","HID_USAGE_KEY_KEYBOARD_EXECUTE","HID_USAGE_KEY_KEYBOARD_HELP","HID_USAGE_KEY_KEYBOARD_MENU","HID_USAGE_KEY_KEYBOARD_SELECT","HID_USAGE_KEY_KEYBOARD_STOP","HID_USAGE_KEY_KEYBOARD_AGAIN","HID_USAGE_KEY_KEYBOARD_UNDO","HID_USAGE_KEY_KEYBOARD_CUT","HID_USAGE_KEY_KEYBOARD_COPY","HID_USAGE_KEY_KEYBOARD_PASTE","HID_USAGE_KEY_KEYBOARD_FIND","HID_USAGE_KEY_KEYBOARD_MUTE","HID_USAGE_KEY_KEYBOARD_VOLUME_UP","HID_USAGE_KEY_KEYBOARD_VOLUME_DOWN","HID_USAGE_KEY_KEYBOARD_LOCKING_CAPS_LOCK","HID_USAGE_KEY_KEYBOARD_LOCKING_NUM_LOCK","HID_USAGE_KEY_KEYBOARD_LOCKING_SCROLL_LOCK","HID_USAGE_KEY_KEYPAD_COMMA","HID_USAGE_KEY_KEYPAD_EQUAL_SIGN","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL1","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL2","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL3","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL4","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL5","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL6","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL7","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL8","HID_USAGE_KEY_KEYBOARD_INTERNATIONAL9","HID_USAGE_KEY_KEYBOARD_LANG1","HID_USAGE_KEY_KEYBOARD_LANG2","HID_USAGE_KEY_KEYBOARD_LANG3","HID_USAGE_KEY_KEYBOARD_LANG4","HID_USAGE_KEY_KEYBOARD_LANG5","HID_USAGE_KEY_KEYBOARD_LANG6","HID_USAGE_KEY_KEYBOARD_LANG7","HID_USAGE_KEY_KEYBOARD_LANG8","HID_USAGE_KEY_KEYBOARD_LANG9","HID_USAGE_KEY_KEYBOARD_ALTERNATE_ERASE","HID_USAGE_KEY_KEYBOARD_SYSREQ_ATTENTION","HID_USAGE_KEY_KEYBOARD_CANCEL","HID_USAGE_KEY_KEYBOARD_CLEAR","HID_USAGE_KEY_KEYBOARD_PRIOR","HID_USAGE_KEY_KEYBOARD_RETURN","HID_USAGE_KEY_KEYBOARD_SEPARATOR","HID_USAGE_KEY_KEYBOARD_OUT","HID_USAGE_KEY_KEYBOARD_OPER","HID_USAGE_KEY_KEYBOARD_CLEAR_AGAIN","HID_USAGE_KEY_KEYBOARD_CRSEL_PROPS","HID_USAGE_KEY_KEYBOARD_EXSEL","HID_USAGE_KEY_KEYPAD_00","HID_USAGE_KEY_KEYPAD_000","HID_USAGE_KEY_THOUSANDS_SEPARATOR","HID_USAGE_KEY_DECIMAL_SEPARATOR","HID_USAGE_KEY_CURRENCY_UNIT","HID_USAGE_KEY_CURRENCY_SUB_UNIT","HID_USAGE_KEY_KEYPAD_LEFT_PARENTHESIS","HID_USAGE_KEY_KEYPAD_RIGHT_PARENTHESIS","HID_USAGE_KEY_KEYPAD_LEFT_BRACE","HID_USAGE_KEY_KEYPAD_RIGHT_BRACE","HID_USAGE_KEY_KEYPAD_TAB","HID_USAGE_KEY_KEYPAD_BACKSPACE","HID_USAGE_KEY_KEYPAD_A","HID_USAGE_KEY_KEYPAD_B","HID_USAGE_KEY_KEYPAD_C","HID_USAGE_KEY_KEYPAD_D","HID_USAGE_KEY_KEYPAD_E","HID_USAGE_KEY_KEYPAD_F","HID_USAGE_KEY_KEYPAD_XOR","HID_USAGE_KEY_KEYPAD_CARET","HID_USAGE_KEY_KEYPAD_PERCENT","HID_USAGE_KEY_KEYPAD_LESS_THAN","HID_USAGE_KEY_KEYPAD_GREATER_THAN","HID_USAGE_KEY_KEYPAD_AMPERSAND","HID_USAGE_KEY_KEYPAD_AMPERSAND_AMPERSAND","HID_USAGE_KEY_KEYPAD_PIPE","HID_USAGE_KEY_KEYPAD_PIPE_PIPE","HID_USAGE_KEY_KEYPAD_COLON","HID_USAGE_KEY_KEYPAD_HASH","HID_USAGE_KEY_KEYPAD_SPACE","HID_USAGE_KEY_KEYPAD_AT","HID_USAGE_KEY_KEYPAD_EXCLAMATION","HID_USAGE_KEY_KEYPAD_MEMORY_STORE","HID_USAGE_KEY_KEYPAD_MEMORY_RECALL","HID_USAGE_KEY_KEYPAD_MEMORY_CLEAR","HID_USAGE_KEY_KEYPAD_MEMORY_ADD","HID_USAGE_KEY_KEYPAD_MEMORY_SUBTRACT","HID_USAGE_KEY_KEYPAD_MEMORY_MULTIPLY","HID_USAGE_KEY_KEYPAD_MEMORY_DIVIDE","HID_USAGE_KEY_KEYPAD_PLUS_MINUS","HID_USAGE_KEY_KEYPAD_CLEAR","HID_USAGE_KEY_KEYPAD_CLEAR_ENTRY","HID_USAGE_KEY_KEYPAD_BINARY","HID_USAGE_KEY_KEYPAD_OCTAL","HID_USAGE_KEY_KEYPAD_DECIMAL","HID_USAGE_KEY_KEYPAD_HEXADECIMAL","HID_USAGE_KEY_KEYBOARD_LEFTCONTROL","HID_USAGE_KEY_KEYBOARD_LEFTSHIFT","HID_USAGE_KEY_KEYBOARD_LEFTALT","HID_USAGE_KEY_KEYBOARD_LEFT_GUI","HID_USAGE_KEY_KEYBOARD_RIGHTCONTROL","HID_USAGE_KEY_KEYBOARD_RIGHTSHIFT","HID_USAGE_KEY_KEYBOARD_RIGHTALT","HID_USAGE_KEY_KEYBOARD_RIGHT_GUI","HID_USAGE_LED_UNDEFINED","HID_USAGE_LED_NUM_LOCK","HID_USAGE_LED_CAPS_LOCK","HID_USAGE_LED_SCROLL_LOCK","HID_USAGE_LED_COMPOSE","HID_USAGE_LED_KANA","HID_USAGE_LED_POWER","HID_USAGE_LED_SHIFT","HID_USAGE_LED_DO_NOT_DISTURB","HID_USAGE_LED_MUTE","HID_USAGE_LED_TONE_ENABLE","HID_USAGE_LED_HIGH_CUT_FILTER","HID_USAGE_LED_LOW_CUT_FILTER","HID_USAGE_LED_EQUALIZER_ENABLE","HID_USAGE_LED_SOUND_FIELD_ON","HID_USAGE_LED_SURROUND_ON","HID_USAGE_LED_REPEAT","HID_USAGE_LED_STEREO","HID_USAGE_LED_SAMPLING_RATE_DETECT","HID_USAGE_LED_SPINNING","HID_USAGE_LED_CAV","HID_USAGE_LED_CLV","HID_USAGE_LED_RECORDING_FORMAT_DETECT","HID_USAGE_LED_OFF_HOOK","HID_USAGE_LED_RING","HID_USAGE_LED_MESSAGE_WAITING","HID_USAGE_LED_DATA_MODE","HID_USAGE_LED_BATTERY_OPERATION","HID_USAGE_LED_BATTERY_OK","HID_USAGE_LED_BATTERY_LOW","HID_USAGE_LED_SPEAKER","HID_USAGE_LED_HEAD_SET","HID_USAGE_LED_HOLD","HID_USAGE_LED_MICROPHONE","HID_USAGE_LED_COVERAGE","HID_USAGE_LED_NIGHT_MODE","HID_USAGE_LED_SEND_CALLS","HID_USAGE_LED_CALL_PICKUP","HID_USAGE_LED_CONFERENCE","HID_USAGE_LED_STAND_BY","HID_USAGE_LED_CAMERA_ON","HID_USAGE_LED_CAMERA_OFF","HID_USAGE_LED_ON_LINE","HID_USAGE_LED_OFF_LINE","HID_USAGE_LED_BUSY","HID_USAGE_LED_READY","HID_USAGE_LED_PAPER_OUT","HID_USAGE_LED_PAPER_JAM","HID_USAGE_LED_REMOTE","HID_USAGE_LED_FORWARD","HID_USAGE_LED_REVERSE","HID_USAGE_LED_STOP","HID_USAGE_LED_REWIND","HID_USAGE_LED_FAST_FORWARD","HID_USAGE_LED_PLAY","HID_USAGE_LED_PAUSE","HID_USAGE_LED_RECORD","HID_USAGE_LED_ERROR","HID_USAGE_LED_USAGE_SELECTED_INDICATOR","HID_USAGE_LED_USAGE_IN_USE_INDICATOR","HID_USAGE_LED_USAGE_MULTI_MODE_INDICATOR","HID_USAGE_LED_INDICATOR_ON","HID_USAGE_LED_INDICATOR_FLASH","HID_USAGE_LED_INDICATOR_SLOW_BLINK","HID_USAGE_LED_INDICATOR_FAST_BLINK","HID_USAGE_LED_INDICATOR_OFF","HID_USAGE_LED_FLASH_ON_TIME","HID_USAGE_LED_SLOW_BLINK_ON_TIME","HID_USAGE_LED_SLOW_BLINK_OFF_TIME","HID_USAGE_LED_FAST_BLINK_ON_TIME","HID_USAGE_LED_FAST_BLINK_OFF_TIME","HID_USAGE_LED_USAGE_INDICATOR_COLOR","HID_USAGE_LED_INDICATOR_RED","HID_USAGE_LED_INDICATOR_GREEN","HID_USAGE_LED_INDICATOR_AMBER","HID_USAGE_LED_GENERIC_INDICATOR","HID_USAGE_LED_SYSTEM_SUSPEND","HID_USAGE_LED_EXTERNAL_POWER_CONNECTED","HID_USAGE_LED_INDICATOR_BLUE","HID_USAGE_LED_INDICATOR_ORANGE","HID_USAGE_LED_GOOD_STATUS","HID_USAGE_LED_WARNING_STATUS","HID_USAGE_LED_RGB_LED","HID_USAGE_LED_RED_LED_CHANNEL","HID_USAGE_LED_BLUE_LED_CHANNEL","HID_USAGE_LED_GREEN_LED_CHANNEL","HID_USAGE_LED_LED_INTENSITY","HID_USAGE_LED_PLAYER_INDICATOR","HID_USAGE_LED_PLAYER_1","HID_USAGE_LED_PLAYER_2","HID_USAGE_LED_PLAYER_3","HID_USAGE_LED_PLAYER_4","HID_USAGE_LED_PLAYER_5","HID_USAGE_LED_PLAYER_6","HID_USAGE_LED_PLAYER_7","HID_USAGE_LED_PLAYER_8","HID_USAGE_TELEPHONY_UNDEFINED","HID_USAGE_TELEPHONY_PHONE","HID_USAGE_TELEPHONY_ANSWERING_MACHINE","HID_USAGE_TELEPHONY_MESSAGE_CONTROLS","HID_USAGE_TELEPHONY_HANDSET","HID_USAGE_TELEPHONY_HEADSET","HID_USAGE_TELEPHONY_TELEPHONY_KEY_PAD","HID_USAGE_TELEPHONY_PROGRAMMABLE_BUTTON","HID_USAGE_TELEPHONY_HOOK_SWITCH","HID_USAGE_TELEPHONY_FLASH","HID_USAGE_TELEPHONY_FEATURE","HID_USAGE_TELEPHONY_HOLD","HID_USAGE_TELEPHONY_REDIAL","HID_USAGE_TELEPHONY_TRANSFER","HID_USAGE_TELEPHONY_DROP","HID_USAGE_TELEPHONY_PARK","HID_USAGE_TELEPHONY_FORWARD_CALLS","HID_USAGE_TELEPHONY_ALTERNATE_FUNCTION","HID_USAGE_TELEPHONY_LINE","HID_USAGE_TELEPHONY_SPEAKER_PHONE","HID_USAGE_TELEPHONY_CONFERENCE","HID_USAGE_TELEPHONY_RING_ENABLE","HID_USAGE_TELEPHONY_RING_SELECT","HID_USAGE_TELEPHONY_PHONE_MUTE","HID_USAGE_TELEPHONY_CALLER_ID","HID_USAGE_TELEPHONY_SEND","HID_USAGE_TELEPHONY_SPEED_DIAL","HID_USAGE_TELEPHONY_STORE_NUMBER","HID_USAGE_TELEPHONY_RECALL_NUMBER","HID_USAGE_TELEPHONY_PHONE_DIRECTORY","HID_USAGE_TELEPHONY_VOICE_MAIL","HID_USAGE_TELEPHONY_SCREEN_CALLS","HID_USAGE_TELEPHONY_DO_NOT_DISTURB","HID_USAGE_TELEPHONY_MESSAGE","HID_USAGE_TELEPHONY_ANSWER_ON_OFF","HID_USAGE_TELEPHONY_INSIDE_DIAL_TONE","HID_USAGE_TELEPHONY_OUTSIDE_DIAL_TONE","HID_USAGE_TELEPHONY_INSIDE_RING_TONE","HID_USAGE_TELEPHONY_OUTSIDE_RING_TONE","HID_USAGE_TELEPHONY_PRIORITY_RING_TONE","HID_USAGE_TELEPHONY_INSIDE_RINGBACK","HID_USAGE_TELEPHONY_PRIORITY_RINGBACK","HID_USAGE_TELEPHONY_LINE_BUSY_TONE","HID_USAGE_TELEPHONY_REORDER_TONE","HID_USAGE_TELEPHONY_CALL_WAITING_TONE","HID_USAGE_TELEPHONY_CONFIRMATION_TONE_1","HID_USAGE_TELEPHONY_CONFIRMATION_TONE_2","HID_USAGE_TELEPHONY_TONES_OFF","HID_USAGE_TELEPHONY_OUTSIDE_RINGBACK","HID_USAGE_TELEPHONY_RINGER","HID_USAGE_TELEPHONY_PHONE_KEY_0","HID_USAGE_TELEPHONY_PHONE_KEY_1","HID_USAGE_TELEPHONY_PHONE_KEY_2","HID_USAGE_TELEPHONY_PHONE_KEY_3","HID_USAGE_TELEPHONY_PHONE_KEY_4","HID_USAGE_TELEPHONY_PHONE_KEY_5","HID_USAGE_TELEPHONY_PHONE_KEY_6","HID_USAGE_TELEPHONY_PHONE_KEY_7","HID_USAGE_TELEPHONY_PHONE_KEY_8","HID_USAGE_TELEPHONY_PHONE_KEY_9","HID_USAGE_TELEPHONY_PHONE_KEY_STAR","HID_USAGE_TELEPHONY_PHONE_KEY_POUND","HID_USAGE_TELEPHONY_PHONE_KEY_A","HID_USAGE_TELEPHONY_PHONE_KEY_B","HID_USAGE_TELEPHONY_PHONE_KEY_C","HID_USAGE_TELEPHONY_PHONE_KEY_D","HID_USAGE_TELEPHONY_PHONE_CALL_HISTORY_KEY","HID_USAGE_TELEPHONY_PHONE_CALLER_ID_KEY","HID_USAGE_TELEPHONY_PHONE_SETTINGS_KEY","HID_USAGE_TELEPHONY_HOST_CONTROL","HID_USAGE_TELEPHONY_HOST_AVAILABLE","HID_USAGE_TELEPHONY_HOST_CALL_ACTIVE","HID_USAGE_TELEPHONY_ACTIVATE_HANDSET_AUDIO","HID_USAGE_TELEPHONY_RING_TYPE","HID_USAGE_TELEPHONY_RE_DIALABLE_PHONE_NUMBER","HID_USAGE_TELEPHONY_STOP_RING_TONE","HID_USAGE_TELEPHONY_PSTN_RING_TONE","HID_USAGE_TELEPHONY_HOST_RING_TONE","HID_USAGE_TELEPHONY_ALERT_SOUND_ERROR","HID_USAGE_TELEPHONY_ALERT_SOUND_CONFIRM","HID_USAGE_TELEPHONY_ALERT_SOUND_NOTIFICATION","HID_USAGE_TELEPHONY_SILENT_RING","HID_USAGE_TELEPHONY_EMAIL_MESSAGE_WAITING","HID_USAGE_TELEPHONY_VOICEMAIL_MESSAGE_WAITING","HID_USAGE_TELEPHONY_HOST_HOLD","HID_USAGE_TELEPHONY_INCOMING_CALL_HISTORY_COUNT","HID_USAGE_TELEPHONY_OUTGOING_CALL_HISTORY_COUNT","HID_USAGE_TELEPHONY_INCOMING_CALL_HISTORY","HID_USAGE_TELEPHONY_OUTGOING_CALL_HISTORY","HID_USAGE_TELEPHONY_PHONE_LOCALE","HID_USAGE_TELEPHONY_PHONE_TIME_SECOND","HID_USAGE_TELEPHONY_PHONE_TIME_MINUTE","HID_USAGE_TELEPHONY_PHONE_TIME_HOUR","HID_USAGE_TELEPHONY_PHONE_DATE_DAY","HID_USAGE_TELEPHONY_PHONE_DATE_MONTH","HID_USAGE_TELEPHONY_PHONE_DATE_YEAR","HID_USAGE_TELEPHONY_HANDSET_NICKNAME","HID_USAGE_TELEPHONY_ADDRESS_BOOK_ID","HID_USAGE_TELEPHONY_CALL_DURATION","HID_USAGE_TELEPHONY_DUAL_MODE_PHONE","HID_USAGE_CONSUMER_UNDEFINED","HID_USAGE_CONSUMER_CONSUMER_CONTROL","HID_USAGE_CONSUMER_NUMERIC_KEY_PAD","HID_USAGE_CONSUMER_PROGRAMMABLE_BUTTONS","HID_USAGE_CONSUMER_MICROPHONE","HID_USAGE_CONSUMER_HEADPHONE","HID_USAGE_CONSUMER_GRAPHIC_EQUALIZER","HID_USAGE_CONSUMER_INCREMENT10","HID_USAGE_CONSUMER_INCREMENT100","HID_USAGE_CONSUMER_AM_PM","HID_USAGE_CONSUMER_POWER","HID_USAGE_CONSUMER_RESET","HID_USAGE_CONSUMER_SLEEP","HID_USAGE_CONSUMER_SLEEP_AFTER","HID_USAGE_CONSUMER_SLEEP_MODE","HID_USAGE_CONSUMER_ILLUMINATION","HID_USAGE_CONSUMER_FUNCTION_BUTTONS","HID_USAGE_CONSUMER_MENU","HID_USAGE_CONSUMER_MENU_PICK","HID_USAGE_CONSUMER_MENU_UP","HID_USAGE_CONSUMER_MENU_DOWN","HID_USAGE_CONSUMER_MENU_LEFT","HID_USAGE_CONSUMER_MENU_RIGHT","HID_USAGE_CONSUMER_MENU_ESCAPE","HID_USAGE_CONSUMER_MENU_VALUE_INCREASE","HID_USAGE_CONSUMER_MENU_VALUE_DECREASE","HID_USAGE_CONSUMER_DATA_ON_SCREEN","HID_USAGE_CONSUMER_CLOSED_CAPTION","HID_USAGE_CONSUMER_CLOSED_CAPTION_SELECT","HID_USAGE_CONSUMER_VCR_TV","HID_USAGE_CONSUMER_BROADCAST_MODE","HID_USAGE_CONSUMER_SNAPSHOT","HID_USAGE_CONSUMER_STILL","HID_USAGE_CONSUMER_PICTURE_IN_PICTURE_TOGGLE","HID_USAGE_CONSUMER_PICTURE_IN_PICTURE_SWAP","HID_USAGE_CONSUMER_RED_MENU_BUTTON","HID_USAGE_CONSUMER_GREEN_MENU_BUTTON","HID_USAGE_CONSUMER_BLUE_MENU_BUTTON","HID_USAGE_CONSUMER_YELLOW_MENU_BUTTON","HID_USAGE_CONSUMER_ASPECT","HID_USAGE_CONSUMER_3D_MODE_SELECT","HID_USAGE_CONSUMER_DISPLAY_BRIGHTNESS_INCREMENT","HID_USAGE_CONSUMER_DISPLAY_BRIGHTNESS_DECREMENT","HID_USAGE_CONSUMER_DISPLAY_BRIGHTNESS","HID_USAGE_CONSUMER_DISPLAY_BACKLIGHT_TOGGLE","HID_USAGE_CONSUMER_DISPLAY_SET_BRIGHTNESS_TO_MINIMUM","HID_USAGE_CONSUMER_DISPLAY_SET_BRIGHTNESS_TO_MAXIMUM","HID_USAGE_CONSUMER_DISPLAY_SET_AUTO_BRIGHTNESS","HID_USAGE_CONSUMER_CAMERA_ACCESS_ENABLED","HID_USAGE_CONSUMER_CAMERA_ACCESS_DISABLED","HID_USAGE_CONSUMER_CAMERA_ACCESS_TOGGLE","HID_USAGE_CONSUMER_KEYBOARD_BRIGHTNESS_INCREMENT","HID_USAGE_CONSUMER_KEYBOARD_BRIGHTNESS_DECREMENT","HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_SET_LEVEL","HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_OOC","HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_SET_MINIMUM","HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_SET_MAXIMUM","HID_USAGE_CONSUMER_KEYBOARD_BACKLIGHT_AUTO","HID_USAGE_CONSUMER_SELECTION","HID_USAGE_CONSUMER_ASSIGN_SELECTION","HID_USAGE_CONSUMER_MODE_STEP","HID_USAGE_CONSUMER_RECALL_LAST","HID_USAGE_CONSUMER_ENTER_CHANNEL","HID_USAGE_CONSUMER_ORDER_MOVIE","HID_USAGE_CONSUMER_CHANNEL","HID_USAGE_CONSUMER_MEDIA_SELECTION","HID_USAGE_CONSUMER_MEDIA_SELECT_COMPUTER","HID_USAGE_CONSUMER_MEDIA_SELECT_TV","HID_USAGE_CONSUMER_MEDIA_SELECT_WWW","HID_USAGE_CONSUMER_MEDIA_SELECT_DVD","HID_USAGE_CONSUMER_MEDIA_SELECT_TELEPHONE","HID_USAGE_CONSUMER_MEDIA_SELECT_PROGRAM_GUIDE","HID_USAGE_CONSUMER_MEDIA_SELECT_VIDEO_PHONE","HID_USAGE_CONSUMER_MEDIA_SELECT_GAMES","HID_USAGE_CONSUMER_MEDIA_SELECT_MESSAGES","HID_USAGE_CONSUMER_MEDIA_SELECT_CD","HID_USAGE_CONSUMER_MEDIA_SELECT_VCR","HID_USAGE_CONSUMER_MEDIA_SELECT_TUNER","HID_USAGE_CONSUMER_QUIT","HID_USAGE_CONSUMER_HELP","HID_USAGE_CONSUMER_MEDIA_SELECT_TAPE","HID_USAGE_CONSUMER_MEDIA_SELECT_CABLE","HID_USAGE_CONSUMER_MEDIA_SELECT_SATELLITE","HID_USAGE_CONSUMER_MEDIA_SELECT_SECURITY","HID_USAGE_CONSUMER_MEDIA_SELECT_HOME","HID_USAGE_CONSUMER_MEDIA_SELECT_CALL","HID_USAGE_CONSUMER_CHANNEL_INCREMENT","HID_USAGE_CONSUMER_CHANNEL_DECREMENT","HID_USAGE_CONSUMER_MEDIA_SELECT_SAP","HID_USAGE_CONSUMER_VCR_PLUS","HID_USAGE_CONSUMER_ONCE","HID_USAGE_CONSUMER_DAILY","HID_USAGE_CONSUMER_WEEKLY","HID_USAGE_CONSUMER_MONTHLY","HID_USAGE_CONSUMER_PLAY","HID_USAGE_CONSUMER_PAUSE","HID_USAGE_CONSUMER_RECORD","HID_USAGE_CONSUMER_FAST_FORWARD","HID_USAGE_CONSUMER_REWIND","HID_USAGE_CONSUMER_SCAN_NEXT_TRACK","HID_USAGE_CONSUMER_SCAN_PREVIOUS_TRACK","HID_USAGE_CONSUMER_STOP","HID_USAGE_CONSUMER_EJECT","HID_USAGE_CONSUMER_RANDOM_PLAY","HID_USAGE_CONSUMER_SELECT_DISC","HID_USAGE_CONSUMER_ENTER_DISC","HID_USAGE_CONSUMER_REPEAT","HID_USAGE_CONSUMER_TRACKING","HID_USAGE_CONSUMER_TRACK_NORMAL","HID_USAGE_CONSUMER_SLOW_TRACKING","HID_USAGE_CONSUMER_FRAME_FORWARD","HID_USAGE_CONSUMER_FRAME_BACK","HID_USAGE_CONSUMER_MARK","HID_USAGE_CONSUMER_CLEAR_MARK","HID_USAGE_CONSUMER_REPEAT_FROM_MARK","HID_USAGE_CONSUMER_RETURN_TO_MARK","HID_USAGE_CONSUMER_SEARCH_MARK_FORWARD","HID_USAGE_CONSUMER_SEARCH_MARK_BACKWARDS","HID_USAGE_CONSUMER_COUNTER_RESET","HID_USAGE_CONSUMER_SHOW_COUNTER","HID_USAGE_CONSUMER_TRACKING_INCREMENT","HID_USAGE_CONSUMER_TRACKING_DECREMENT","HID_USAGE_CONSUMER_STOP_EJECT","HID_USAGE_CONSUMER_PLAY_PAUSE","HID_USAGE_CONSUMER_PLAY_SKIP","HID_USAGE_CONSUMER_VOICE_COMMAND","HID_USAGE_CONSUMER_INVOKE_CAPTURE_INTERFACE","HID_USAGE_CONSUMER_START_OR_STOP_GAME_RECORDING","HID_USAGE_CONSUMER_HISTORICAL_GAME_CAPTURE","HID_USAGE_CONSUMER_CAPTURE_GAME_SCREENSHOT","HID_USAGE_CONSUMER_SHOW_OR_HIDE_RECORDING_INDICATOR","HID_USAGE_CONSUMER_START_OR_STOP_MICROPHONE_CAPTURE","HID_USAGE_CONSUMER_START_OR_STOP_CAMERA_CAPTURE","HID_USAGE_CONSUMER_START_OR_STOP_GAME_BROADCAST","HID_USAGE_CONSUMER_VOLUME","HID_USAGE_CONSUMER_BALANCE","HID_USAGE_CONSUMER_MUTE","HID_USAGE_CONSUMER_BASS","HID_USAGE_CONSUMER_TREBLE","HID_USAGE_CONSUMER_BASS_BOOST","HID_USAGE_CONSUMER_SURROUND_MODE","HID_USAGE_CONSUMER_LOUDNESS","HID_USAGE_CONSUMER_MPX","HID_USAGE_CONSUMER_VOLUME_INCREMENT","HID_USAGE_CONSUMER_VOLUME_DECREMENT","HID_USAGE_CONSUMER_SPEED_SELECT","HID_USAGE_CONSUMER_PLAYBACK_SPEED","HID_USAGE_CONSUMER_STANDARD_PLAY","HID_USAGE_CONSUMER_LONG_PLAY","HID_USAGE_CONSUMER_EXTENDED_PLAY","HID_USAGE_CONSUMER_SLOW","HID_USAGE_CONSUMER_FAN_ENABLE","HID_USAGE_CONSUMER_FAN_SPEED","HID_USAGE_CONSUMER_LIGHT_ENABLE","HID_USAGE_CONSUMER_LIGHT_ILLUMINATION_LEVEL","HID_USAGE_CONSUMER_CLIMATE_CONTROL_ENABLE","HID_USAGE_CONSUMER_ROOM_TEMPERATURE","HID_USAGE_CONSUMER_SECURITY_ENABLE","HID_USAGE_CONSUMER_FIRE_ALARM","HID_USAGE_CONSUMER_POLICE_ALARM","HID_USAGE_CONSUMER_PROXIMITY","HID_USAGE_CONSUMER_MOTION","HID_USAGE_CONSUMER_DURESS_ALARM","HID_USAGE_CONSUMER_HOLDUP_ALARM","HID_USAGE_CONSUMER_MEDICAL_ALARM","HID_USAGE_CONSUMER_BALANCE_RIGHT","HID_USAGE_CONSUMER_BALANCE_LEFT","HID_USAGE_CONSUMER_BASS_INCREMENT","HID_USAGE_CONSUMER_BASS_DECREMENT","HID_USAGE_CONSUMER_TREBLE_INCREMENT","HID_USAGE_CONSUMER_TREBLE_DECREMENT","HID_USAGE_CONSUMER_SPEAKER_SYSTEM","HID_USAGE_CONSUMER_CHANNEL_LEFT","HID_USAGE_CONSUMER_CHANNEL_RIGHT","HID_USAGE_CONSUMER_CHANNEL_CENTER","HID_USAGE_CONSUMER_CHANNEL_FRONT","HID_USAGE_CONSUMER_CHANNEL_CENTER_FRONT","HID_USAGE_CONSUMER_CHANNEL_SIDE","HID_USAGE_CONSUMER_CHANNEL_SURROUND","HID_USAGE_CONSUMER_CHANNEL_LOW_FREQUENCY_ENHANCEMENT","HID_USAGE_CONSUMER_CHANNEL_TOP","HID_USAGE_CONSUMER_CHANNEL_UNKNOWN","HID_USAGE_CONSUMER_SUB_CHANNEL","HID_USAGE_CONSUMER_SUB_CHANNEL_INCREMENT","HID_USAGE_CONSUMER_SUB_CHANNEL_DECREMENT","HID_USAGE_CONSUMER_ALTERNATE_AUDIO_INCREMENT","HID_USAGE_CONSUMER_ALTERNATE_AUDIO_DECREMENT","HID_USAGE_CONSUMER_APPLICATION_LAUNCH_BUTTONS","HID_USAGE_CONSUMER_AL_LAUNCH_BUTTON_CONFIGURATION_TOOL","HID_USAGE_CONSUMER_AL_PROGRAMMABLE_BUTTON_CONFIGURATION","HID_USAGE_CONSUMER_AL_CONSUMER_CONTROL_CONFIGURATION","HID_USAGE_CONSUMER_AL_WORD_PROCESSOR","HID_USAGE_CONSUMER_AL_TEXT_EDITOR","HID_USAGE_CONSUMER_AL_SPREADSHEET","HID_USAGE_CONSUMER_AL_GRAPHICS_EDITOR","HID_USAGE_CONSUMER_AL_PRESENTATION_APP","HID_USAGE_CONSUMER_AL_DATABASE_APP","HID_USAGE_CONSUMER_AL_EMAIL_READER","HID_USAGE_CONSUMER_AL_NEWSREADER","HID_USAGE_CONSUMER_AL_VOICEMAIL","HID_USAGE_CONSUMER_AL_CONTACTS_ADDRESS_BOOK","HID_USAGE_CONSUMER_AL_CALENDAR_SCHEDULE","HID_USAGE_CONSUMER_AL_TASK_PROJECT_MANAGER","HID_USAGE_CONSUMER_AL_LOG_JOURNAL_TIMECARD","HID_USAGE_CONSUMER_AL_CHECKBOOK_FINANCE","HID_USAGE_CONSUMER_AL_CALCULATOR","HID_USAGE_CONSUMER_AL_A_V_CAPTURE_PLAYBACK","HID_USAGE_CONSUMER_AL_LOCAL_MACHINE_BROWSER","HID_USAGE_CONSUMER_AL_LAN_WAN_BROWSER","HID_USAGE_CONSUMER_AL_INTERNET_BROWSER","HID_USAGE_CONSUMER_AL_REMOTE_NETWORKING_ISP_CONNECT","HID_USAGE_CONSUMER_AL_NETWORK_CONFERENCE","HID_USAGE_CONSUMER_AL_NETWORK_CHAT","HID_USAGE_CONSUMER_AL_TELEPHONY_DIALER","HID_USAGE_CONSUMER_AL_LOGON","HID_USAGE_CONSUMER_AL_LOGOFF","HID_USAGE_CONSUMER_AL_LOGON_LOGOFF","HID_USAGE_CONSUMER_AL_TERMINAL_LOCK_SCREENSAVER","HID_USAGE_CONSUMER_AL_CONTROL_PANEL","HID_USAGE_CONSUMER_AL_COMMAND_LINE_PROCESSOR_RUN","HID_USAGE_CONSUMER_AL_PROCESS_TASK_MANAGER","HID_USAGE_CONSUMER_AL_SELECT_TASK_APPLICATION","HID_USAGE_CONSUMER_AL_NEXT_TASK_APPLICATION","HID_USAGE_CONSUMER_AL_PREVIOUS_TASK_APPLICATION","HID_USAGE_CONSUMER_AL_PREEMPTIVE_HALT_TASK_APPLICATION","HID_USAGE_CONSUMER_AL_INTEGRATED_HELP_CENTER","HID_USAGE_CONSUMER_AL_DOCUMENTS","HID_USAGE_CONSUMER_AL_THESAURUS","HID_USAGE_CONSUMER_AL_DICTIONARY","HID_USAGE_CONSUMER_AL_DESKTOP","HID_USAGE_CONSUMER_AL_SPELL_CHECK","HID_USAGE_CONSUMER_AL_GRAMMAR_CHECK","HID_USAGE_CONSUMER_AL_WIRELESS_STATUS","HID_USAGE_CONSUMER_AL_KEYBOARD_LAYOUT","HID_USAGE_CONSUMER_AL_VIRUS_PROTECTION","HID_USAGE_CONSUMER_AL_ENCRYPTION","HID_USAGE_CONSUMER_AL_SCREEN_SAVER","HID_USAGE_CONSUMER_AL_ALARMS","HID_USAGE_CONSUMER_AL_CLOCK","HID_USAGE_CONSUMER_AL_FILE_BROWSER","HID_USAGE_CONSUMER_AL_POWER_STATUS","HID_USAGE_CONSUMER_AL_IMAGE_BROWSER","HID_USAGE_CONSUMER_AL_AUDIO_BROWSER","HID_USAGE_CONSUMER_AL_MOVIE_BROWSER","HID_USAGE_CONSUMER_AL_DIGITAL_RIGHTS_MANAGER","HID_USAGE_CONSUMER_AL_DIGITAL_WALLET","HID_USAGE_CONSUMER_AL_INSTANT_MESSAGING","HID_USAGE_CONSUMER_AL_OEM_FEATURES_TIPS_TUTORIAL_BROWSER","HID_USAGE_CONSUMER_AL_OEM_HELP","HID_USAGE_CONSUMER_AL_ONLINE_COMMUNITY","HID_USAGE_CONSUMER_AL_ENTERTAINMENT_CONTENT_BROWSER","HID_USAGE_CONSUMER_AL_ONLINE_SHOPPING_BROWSER","HID_USAGE_CONSUMER_AL_SMARTCARD_INFORMATION_HELP","HID_USAGE_CONSUMER_AL_MARKET_MONITOR_FINANCE_BROWSER","HID_USAGE_CONSUMER_AL_CUSTOMIZED_CORPORATE_NEWS_BROWSER","HID_USAGE_CONSUMER_AL_ONLINE_ACTIVITY_BROWSER","HID_USAGE_CONSUMER_AL_RESEARCH_SEARCH_BROWSER","HID_USAGE_CONSUMER_AL_AUDIO_PLAYER","HID_USAGE_CONSUMER_AL_MESSAGE_STATUS","HID_USAGE_CONSUMER_AL_CONTACT_SYNC","HID_USAGE_CONSUMER_AL_NAVIGATION","HID_USAGE_CONSUMER_AL_CONTEXT_AWARE_DESKTOP_ASSISTANT","HID_USAGE_CONSUMER_GENERIC_GUI_APPLICATION_CONTROLS","HID_USAGE_CONSUMER_AC_NEW","HID_USAGE_CONSUMER_AC_OPEN","HID_USAGE_CONSUMER_AC_CLOSE","HID_USAGE_CONSUMER_AC_EXIT","HID_USAGE_CONSUMER_AC_MAXIMIZE","HID_USAGE_CONSUMER_AC_MINIMIZE","HID_USAGE_CONSUMER_AC_SAVE","HID_USAGE_CONSUMER_AC_PRINT","HID_USAGE_CONSUMER_AC_PROPERTIES","HID_USAGE_CONSUMER_AC_UNDO","HID_USAGE_CONSUMER_AC_COPY","HID_USAGE_CONSUMER_AC_CUT","HID_USAGE_CONSUMER_AC_PASTE","HID_USAGE_CONSUMER_AC_SELECT_ALL","HID_USAGE_CONSUMER_AC_FIND","HID_USAGE_CONSUMER_AC_FIND_AND_REPLACE","HID_USAGE_CONSUMER_AC_SEARCH","HID_USAGE_CONSUMER_AC_GO_TO","HID_USAGE_CONSUMER_AC_HOME","HID_USAGE_CONSUMER_AC_BACK","HID_USAGE_CONSUMER_AC_FORWARD","HID_USAGE_CONSUMER_AC_STOP","HID_USAGE_CONSUMER_AC_REFRESH","HID_USAGE_CONSUMER_AC_PREVIOUS_LINK","HID_USAGE_CONSUMER_AC_NEXT_LINK","HID_USAGE_CONSUMER_AC_BOOKMARKS","HID_USAGE_CONSUMER_AC_HISTORY","HID_USAGE_CONSUMER_AC_SUBSCRIPTIONS","HID_USAGE_CONSUMER_AC_ZOOM_IN","HID_USAGE_CONSUMER_AC_ZOOM_OUT","HID_USAGE_CONSUMER_AC_ZOOM","HID_USAGE_CONSUMER_AC_FULL_SCREEN_VIEW","HID_USAGE_CONSUMER_AC_NORMAL_VIEW","HID_USAGE_CONSUMER_AC_VIEW_TOGGLE","HID_USAGE_CONSUMER_AC_SCROLL_UP","HID_USAGE_CONSUMER_AC_SCROLL_DOWN","HID_USAGE_CONSUMER_AC_SCROLL","HID_USAGE_CONSUMER_AC_PAN_LEFT","HID_USAGE_CONSUMER_AC_PAN_RIGHT","HID_USAGE_CONSUMER_AC_PAN","HID_USAGE_CONSUMER_AC_NEW_WINDOW","HID_USAGE_CONSUMER_AC_TILE_HORIZONTALLY","HID_USAGE_CONSUMER_AC_TILE_VERTICALLY","HID_USAGE_CONSUMER_AC_FORMAT","HID_USAGE_CONSUMER_AC_EDIT","HID_USAGE_CONSUMER_AC_BOLD","HID_USAGE_CONSUMER_AC_ITALICS","HID_USAGE_CONSUMER_AC_UNDERLINE","HID_USAGE_CONSUMER_AC_STRIKETHROUGH","HID_USAGE_CONSUMER_AC_SUBSCRIPT","HID_USAGE_CONSUMER_AC_SUPERSCRIPT","HID_USAGE_CONSUMER_AC_ALL_CAPS","HID_USAGE_CONSUMER_AC_ROTATE","HID_USAGE_CONSUMER_AC_RESIZE","HID_USAGE_CONSUMER_AC_FLIP_HORIZONTAL","HID_USAGE_CONSUMER_AC_FLIP_VERTICAL","HID_USAGE_CONSUMER_AC_MIRROR_HORIZONTAL","HID_USAGE_CONSUMER_AC_MIRROR_VERTICAL","HID_USAGE_CONSUMER_AC_FONT_SELECT","HID_USAGE_CONSUMER_AC_FONT_COLOR","HID_USAGE_CONSUMER_AC_FONT_SIZE","HID_USAGE_CONSUMER_AC_JUSTIFY_LEFT","HID_USAGE_CONSUMER_AC_JUSTIFY_CENTER_H","HID_USAGE_CONSUMER_AC_JUSTIFY_RIGHT","HID_USAGE_CONSUMER_AC_JUSTIFY_BLOCK_H","HID_USAGE_CONSUMER_AC_JUSTIFY_TOP","HID_USAGE_CONSUMER_AC_JUSTIFY_CENTER_V","HID_USAGE_CONSUMER_AC_JUSTIFY_BOTTOM","HID_USAGE_CONSUMER_AC_JUSTIFY_BLOCK_V","HID_USAGE_CONSUMER_AC_INDENT_DECREASE","HID_USAGE_CONSUMER_AC_INDENT_INCREASE","HID_USAGE_CONSUMER_AC_NUMBERED_LIST","HID_USAGE_CONSUMER_AC_RESTART_NUMBERING","HID_USAGE_CONSUMER_AC_BULLETED_LIST","HID_USAGE_CONSUMER_AC_PROMOTE","HID_USAGE_CONSUMER_AC_DEMOTE","HID_USAGE_CONSUMER_AC_YES","HID_USAGE_CONSUMER_AC_NO","HID_USAGE_CONSUMER_AC_CANCEL","HID_USAGE_CONSUMER_AC_CATALOG","HID_USAGE_CONSUMER_AC_BUY_CHECKOUT","HID_USAGE_CONSUMER_AC_ADD_TO_CART","HID_USAGE_CONSUMER_AC_EXPAND","HID_USAGE_CONSUMER_AC_EXPAND_ALL","HID_USAGE_CONSUMER_AC_COLLAPSE","HID_USAGE_CONSUMER_AC_COLLAPSE_ALL","HID_USAGE_CONSUMER_AC_PRINT_PREVIEW","HID_USAGE_CONSUMER_AC_PASTE_SPECIAL","HID_USAGE_CONSUMER_AC_INSERT_MODE","HID_USAGE_CONSUMER_AC_DELETE","HID_USAGE_CONSUMER_AC_LOCK","HID_USAGE_CONSUMER_AC_UNLOCK","HID_USAGE_CONSUMER_AC_PROTECT","HID_USAGE_CONSUMER_AC_UNPROTECT","HID_USAGE_CONSUMER_AC_ATTACH_COMMENT","HID_USAGE_CONSUMER_AC_DELETE_COMMENT","HID_USAGE_CONSUMER_AC_VIEW_COMMENT","HID_USAGE_CONSUMER_AC_SELECT_WORD","HID_USAGE_CONSUMER_AC_SELECT_SENTENCE","HID_USAGE_CONSUMER_AC_SELECT_PARAGRAPH","HID_USAGE_CONSUMER_AC_SELECT_COLUMN","HID_USAGE_CONSUMER_AC_SELECT_ROW","HID_USAGE_CONSUMER_AC_SELECT_TABLE","HID_USAGE_CONSUMER_AC_SELECT_OBJECT","HID_USAGE_CONSUMER_AC_REDO_REPEAT","HID_USAGE_CONSUMER_AC_SORT","HID_USAGE_CONSUMER_AC_SORT_ASCENDING","HID_USAGE_CONSUMER_AC_SORT_DESCENDING","HID_USAGE_CONSUMER_AC_FILTER","HID_USAGE_CONSUMER_AC_SET_CLOCK","HID_USAGE_CONSUMER_AC_VIEW_CLOCK","HID_USAGE_CONSUMER_AC_SELECT_TIME_ZONE","HID_USAGE_CONSUMER_AC_EDIT_TIME_ZONES","HID_USAGE_CONSUMER_AC_SET_ALARM","HID_USAGE_CONSUMER_AC_CLEAR_ALARM","HID_USAGE_CONSUMER_AC_SNOOZE_ALARM","HID_USAGE_CONSUMER_AC_RESET_ALARM","HID_USAGE_CONSUMER_AC_SYNCHRONIZE","HID_USAGE_CONSUMER_AC_SEND_RECEIVE","HID_USAGE_CONSUMER_AC_SEND_TO","HID_USAGE_CONSUMER_AC_REPLY","HID_USAGE_CONSUMER_AC_REPLY_ALL","HID_USAGE_CONSUMER_AC_FORWARD_MSG","HID_USAGE_CONSUMER_AC_SEND","HID_USAGE_CONSUMER_AC_ATTACH_FILE","HID_USAGE_CONSUMER_AC_UPLOAD","HID_USAGE_CONSUMER_AC_DOWNLOAD_SAVE_TARGET_AS","HID_USAGE_CONSUMER_AC_SET_BORDERS","HID_USAGE_CONSUMER_AC_INSERT_ROW","HID_USAGE_CONSUMER_AC_INSERT_COLUMN","HID_USAGE_CONSUMER_AC_INSERT_FILE","HID_USAGE_CONSUMER_AC_INSERT_PICTURE","HID_USAGE_CONSUMER_AC_INSERT_OBJECT","HID_USAGE_CONSUMER_AC_INSERT_SYMBOL","HID_USAGE_CONSUMER_AC_SAVE_AND_CLOSE","HID_USAGE_CONSUMER_AC_RENAME","HID_USAGE_CONSUMER_AC_MERGE","HID_USAGE_CONSUMER_AC_SPLIT","HID_USAGE_CONSUMER_AC_DISRIBUTE_HORIZONTALLY","HID_USAGE_CONSUMER_AC_DISTRIBUTE_VERTICALLY","HID_USAGE_CONSUMER_AC_NEXT_KEYBOARD_LAYOUT_SELECT","HID_USAGE_CONSUMER_AC_NAVIGATION_GUIDANCE","HID_USAGE_CONSUMER_AC_DESKTOP_SHOW_ALL_WINDOWS","HID_USAGE_CONSUMER_AC_SOFT_KEY_LEFT","HID_USAGE_CONSUMER_AC_SOFT_KEY_RIGHT","HID_USAGE_CONSUMER_AC_DESKTOP_SHOW_ALL_APPLICATIONS","HID_USAGE_CONSUMER_AC_IDLE_KEEP_ALIVE","HID_USAGE_CONSUMER_EXTENDED_KEYBOARD_ATTRIBUTES_COLLECTION","HID_USAGE_CONSUMER_KEYBOARD_FORM_FACTOR","HID_USAGE_CONSUMER_KEYBOARD_KEY_TYPE","HID_USAGE_CONSUMER_KEYBOARD_PHYSICAL_LAYOUT","HID_USAGE_CONSUMER_VENDOR_SPECIFIC_KEYBOARD_PHYSICAL_LAYOUT","HID_USAGE_CONSUMER_KEYBOARD_IETF_LANGUAGE_TAG_INDEX","HID_USAGE_CONSUMER_IMPLEMENTED_KEYBOARD_INPUT_ASSIST_CONTROLS","HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_PREVIOUS","HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_NEXT","HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_PREVIOUS_GROUP","HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_NEXT_GROUP","HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_ACCEPT","HID_USAGE_CONSUMER_KEYBOARD_INPUT_ASSIST_CANCEL","HID_USAGE_CONSUMER_PRIVACY_SCREEN_TOGGLE","HID_USAGE_CONSUMER_PRIVACY_SCREEN_LEVEL_DECREMENT","HID_USAGE_CONSUMER_PRIVACY_SCREEN_LEVEL_INCREMENT","HID_USAGE_CONSUMER_PRIVACY_SCREEN_LEVEL_MINIMUM","HID_USAGE_CONSUMER_PRIVACY_SCREEN_LEVEL_MAXIMUM","HID_USAGE_CONSUMER_CONTACT_EDITED","HID_USAGE_CONSUMER_CONTACT_ADDED","HID_USAGE_CONSUMER_CONTACT_RECORD_ACTIVE","HID_USAGE_CONSUMER_CONTACT_INDEX","HID_USAGE_CONSUMER_CONTACT_NICKNAME","HID_USAGE_CONSUMER_CONTACT_FIRST_NAME","HID_USAGE_CONSUMER_CONTACT_LAST_NAME","HID_USAGE_CONSUMER_CONTACT_FULL_NAME","HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_PERSONAL","HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_BUSINESS","HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_MOBILE","HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_PAGER","HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_FAX","HID_USAGE_CONSUMER_CONTACT_PHONE_NUMBER_OTHER","HID_USAGE_CONSUMER_CONTACT_EMAIL_PERSONAL","HID_USAGE_CONSUMER_CONTACT_EMAIL_BUSINESS","HID_USAGE_CONSUMER_CONTACT_EMAIL_OTHER","HID_USAGE_CONSUMER_CONTACT_EMAIL_MAIN","HID_USAGE_CONSUMER_CONTACT_SPEED_DIAL_NUMBER","HID_USAGE_CONSUMER_CONTACT_STATUS_FLAG","HID_USAGE_CONSUMER_CONTACT_MISC","HID_USAGE_DIGITIZERS_UNDEFINED","HID_USAGE_DIGITIZERS_DIGITIZER","HID_USAGE_DIGITIZERS_PEN","HID_USAGE_DIGITIZERS_LIGHT_PEN","HID_USAGE_DIGITIZERS_TOUCH_SCREEN","HID_USAGE_DIGITIZERS_TOUCH_PAD","HID_USAGE_DIGITIZERS_WHITEBOARD","HID_USAGE_DIGITIZERS_COORDINATE_MEASURING_MACHINE","HID_USAGE_DIGITIZERS_3D_DIGITIZER","HID_USAGE_DIGITIZERS_STEREO_PLOTTER","HID_USAGE_DIGITIZERS_ARTICULATED_ARM","HID_USAGE_DIGITIZERS_ARMATURE","HID_USAGE_DIGITIZERS_MULTIPLE_POINT_DIGITIZER","HID_USAGE_DIGITIZERS_FREE_SPACE_WAND","HID_USAGE_DIGITIZERS_DEVICE_CONFIGURATION","HID_USAGE_DIGITIZERS_CAPACITIVE_HEAT_MAP_DIGITIZER","HID_USAGE_DIGITIZERS_STYLUS","HID_USAGE_DIGITIZERS_PUCK","HID_USAGE_DIGITIZERS_FINGER","HID_USAGE_DIGITIZERS_DEVICE_SETTINGS","HID_USAGE_DIGITIZERS_CHARACTER_GESTURE","HID_USAGE_DIGITIZERS_TIP_PRESSURE","HID_USAGE_DIGITIZERS_BARREL_PRESSURE","HID_USAGE_DIGITIZERS_IN_RANGE","HID_USAGE_DIGITIZERS_TOUCH","HID_USAGE_DIGITIZERS_UNTOUCH","HID_USAGE_DIGITIZERS_TAP","HID_USAGE_DIGITIZERS_QUALITY","HID_USAGE_DIGITIZERS_DATA_VALID","HID_USAGE_DIGITIZERS_TRANSDUCER_INDEX","HID_USAGE_DIGITIZERS_TABLET_FUNCTION_KEYS","HID_USAGE_DIGITIZERS_PROGRAM_CHANGE_KEYS","HID_USAGE_DIGITIZERS_BATTERY_STRENGTH","HID_USAGE_DIGITIZERS_INVERT","HID_USAGE_DIGITIZERS_X_TILT","HID_USAGE_DIGITIZERS_Y_TILT","HID_USAGE_DIGITIZERS_AZIMUTH","HID_USAGE_DIGITIZERS_ALTITUDE","HID_USAGE_DIGITIZERS_TWIST","HID_USAGE_DIGITIZERS_TIP_SWITCH","HID_USAGE_DIGITIZERS_SECONDARY_TIP_SWITCH","HID_USAGE_DIGITIZERS_BARREL_SWITCH","HID_USAGE_DIGITIZERS_ERASER","HID_USAGE_DIGITIZERS_TABLET_PICK","HID_USAGE_DIGITIZERS_TOUCH_VALID","HID_USAGE_DIGITIZERS_WIDTH","HID_USAGE_DIGITIZERS_HEIGHT","HID_USAGE_DIGITIZERS_CONTACT_IDENTIFIER","HID_USAGE_DIGITIZERS_DEVICE_MODE","HID_USAGE_DIGITIZERS_DEVICE_IDENTIFIER","HID_USAGE_DIGITIZERS_CONTACT_COUNT","HID_USAGE_DIGITIZERS_CONTACT_COUNT_MAXIMUM","HID_USAGE_DIGITIZERS_SCAN_TIME","HID_USAGE_DIGITIZERS_SURFACE_SWITCH","HID_USAGE_DIGITIZERS_BUTTON_SWITCH","HID_USAGE_DIGITIZERS_PAD_TYPE","HID_USAGE_DIGITIZERS_SECONDARY_BARREL_SWITCH","HID_USAGE_DIGITIZERS_TRANSDUCER_SERIAL_NUMBER","HID_USAGE_DIGITIZERS_PREFERRED_COLOR","HID_USAGE_DIGITIZERS_PREFERRED_COLOR_IS_LOCKED","HID_USAGE_DIGITIZERS_PREFERRED_LINE_WIDTH","HID_USAGE_DIGITIZERS_PREFERRED_LINE_WIDTH_IS_LOCKED","HID_USAGE_DIGITIZERS_LATENCY_MODE","HID_USAGE_DIGITIZERS_GESTURE_CHARACTER_QUALITY","HID_USAGE_DIGITIZERS_CHARACTER_GESTURE_DATA_LENGTH","HID_USAGE_DIGITIZERS_CHARACTER_GESTURE_DATA","HID_USAGE_DIGITIZERS_GESTURE_CHARACTER_ENCODING","HID_USAGE_DIGITIZERS_UTF8_CHARACTER_GESTURE_ENCODING","HID_USAGE_DIGITIZERS_UTF16_LITTLE_ENDIAN_CHARACTER_GESTURE_ENCODING","HID_USAGE_DIGITIZERS_UTF16_BIG_ENDIAN_CHARACTER_GESTURE_ENCODING","HID_USAGE_DIGITIZERS_UTF32_LITTLE_ENDIAN_CHARACTER_GESTURE_ENCODING","HID_USAGE_DIGITIZERS_UTF32_BIG_ENDIAN_CHARACTER_GESTURE_ENCODING","HID_USAGE_DIGITIZERS_CAPACITIVE_HEAT_MAP_PROTOCOL_VENDOR_ID","HID_USAGE_DIGITIZERS_CAPACITIVE_HEAT_MAP_PROTOCOL_VERSION","HID_USAGE_DIGITIZERS_CAPACITIVE_HEAT_MAP_FRAME_DATA","HID_USAGE_DIGITIZERS_GESTURE_CHARACTER_ENABLE","HID_USAGE_DIGITIZERS_PREFERRED_LINE_STYLE","HID_USAGE_DIGITIZERS_PREFERRED_LINE_STYLE_IS_LOCKED","HID_USAGE_DIGITIZERS_INK","HID_USAGE_DIGITIZERS_PENCIL","HID_USAGE_DIGITIZERS_HIGHLIGHTER","HID_USAGE_DIGITIZERS_CHISEL_MARKER","HID_USAGE_DIGITIZERS_BRUSH","HID_USAGE_DIGITIZERS_NO_PREFERENCE","HID_USAGE_DIGITIZERS_DIGITIZER_DIAGNOSTIC","HID_USAGE_DIGITIZERS_DIGITIZER_ERROR","HID_USAGE_DIGITIZERS_ERR_NORMAL_STATUS","HID_USAGE_DIGITIZERS_ERR_TRANSDUCERS_EXCEEDED","HID_USAGE_DIGITIZERS_ERR_FULL_TRANS_FEATURES_UNAVAILABLE","HID_USAGE_DIGITIZERS_ERR_CHARGE_LOW","HID_USAGE_DIGITIZERS_TRANSDUCER_SOFTWARE_INFO","HID_USAGE_DIGITIZERS_TRANSDUCER_VENDOR_ID","HID_USAGE_DIGITIZERS_TRANSDUCER_PRODUCT_ID","HID_USAGE_DIGITIZERS_DEVICE_SUPPORTED_PROTOCOLS","HID_USAGE_DIGITIZERS_TRANSDUCER_SUPPORTED_PROTOCOLS","HID_USAGE_DIGITIZERS_NO_PROTOCOL","HID_USAGE_DIGITIZERS_WACOM_AES_PROTOCOL","HID_USAGE_DIGITIZERS_USI_PROTOCOL","HID_USAGE_DIGITIZERS_MICROSOFT_PEN_PROTOCOL","HID_USAGE_DIGITIZERS_SUPPORTED_REPORT_RATES","HID_USAGE_DIGITIZERS_REPORT_RATE","HID_USAGE_DIGITIZERS_TRANSDUCER_CONNECTED","HID_USAGE_DIGITIZERS_SWITCH_DISABLED","HID_USAGE_DIGITIZERS_SWITCH_UNIMPLEMENTED","HID_USAGE_DIGITIZERS_TRANSDUCER_SWITCHES","HID_USAGE_HAPTICS_UNDEFINED","HID_USAGE_HAPTICS_SIMPLE_HAPTIC_CONTROLLER","HID_USAGE_HAPTICS_WAVEFORM_LIST","HID_USAGE_HAPTICS_DURATION_LIST","HID_USAGE_HAPTICS_AUTO_TRIGGER","HID_USAGE_HAPTICS_MANUAL_TRIGGER","HID_USAGE_HAPTICS_AUTO_TRIGGER_ASSOCIATED_CONTROL","HID_USAGE_HAPTICS_INTENSITY","HID_USAGE_HAPTICS_REPEAT_COUNT","HID_USAGE_HAPTICS_RETRIGGER_PERIOD","HID_USAGE_HAPTICS_WAVEFORM_VENDOR_PAGE","HID_USAGE_HAPTICS_WAVEFORM_VENDOR_ID","HID_USAGE_HAPTICS_WAVEFORM_CUTOFF_TIME","HID_USAGE_HAPTICS_WAVEFORM_NONE","HID_USAGE_HAPTICS_WAVEFORM_STOP","HID_USAGE_HAPTICS_WAVEFORM_CLICK","HID_USAGE_HAPTICS_WAVEFORM_BUZZ_CONTINUOUS","HID_USAGE_HAPTICS_WAVEFORM_RUMBLE_CONTINUOUS","HID_USAGE_HAPTICS_WAVEFORM_PRESS","HID_USAGE_HAPTICS_WAVEFORM_RELEASE","HID_USAGE_PID_UNDEFINED","HID_USAGE_PID_PHYSICAL_INTERFACE_DEVICE","HID_USAGE_PID_NORMAL","HID_USAGE_PID_SET_EFFECT_REPORT","HID_USAGE_PID_EFFECT_BLOCK_INDEX","HID_USAGE_PID_PARAMETER_BLOCK_OFFSET","HID_USAGE_PID_ROM_FLAG","HID_USAGE_PID_EFFECT_TYPE","HID_USAGE_PID_ET_CONSTANT_FORCE","HID_USAGE_PID_ET_RAMP","HID_USAGE_PID_ET_CUSTOM_FORCE_DATA","HID_USAGE_PID_ET_SQUARE","HID_USAGE_PID_ET_SINE","HID_USAGE_PID_ET_TRIANGLE","HID_USAGE_PID_ET_SAWTOOTH_UP","HID_USAGE_PID_ET_SAWTOOTH_DOWN","HID_USAGE_PID_ET_SPRING","HID_USAGE_PID_ET_DAMPER","HID_USAGE_PID_ET_INERTIA","HID_USAGE_PID_ET_FRICTION","HID_USAGE_PID_DURATION","HID_USAGE_PID_SAMPLE_PERIOD","HID_USAGE_PID_GAIN","HID_USAGE_PID_TRIGGER_BUTTON","HID_USAGE_PID_TRIGGER_REPEAT_INTERVAL","HID_USAGE_PID_AXES_ENABLE","HID_USAGE_PID_DIRECTION_ENABLE","HID_USAGE_PID_DIRECTION","HID_USAGE_PID_TYPE_SPECIFIC_BLOCK_OFFSET","HID_USAGE_PID_BLOCK_TYPE","HID_USAGE_PID_SET_ENVELOPE_REPORT","HID_USAGE_PID_ATTACK_LEVEL","HID_USAGE_PID_ATTACK_TIME","HID_USAGE_PID_FADE_LEVEL","HID_USAGE_PID_FADE_TIME","HID_USAGE_PID_SET_CONDITION_REPORT","HID_USAGE_PID_CP_OFFSET","HID_USAGE_PID_POSITIVE_COEFFICIENT","HID_USAGE_PID_NEGATIVE_COEFFICIENT","HID_USAGE_PID_POSITIVE_SATURATION","HID_USAGE_PID_NEGATIVE_SATURATION","HID_USAGE_PID_DEAD_BAND","HID_USAGE_PID_DOWNLOAD_FORCE_SAMPLE","HID_USAGE_PID_ISOCH_CUSTOM_FORCE_ENABLE","HID_USAGE_PID_CUSTOM_FORCE_DATA_REPORT","HID_USAGE_PID_CUSTOM_FORCE_DATA","HID_USAGE_PID_CUSTOM_FORCE_VENDOR_DEFINED_DATA","HID_USAGE_PID_SET_CUSTOM_FORCE_REPORT","HID_USAGE_PID_CUSTOM_FORCE_DATA_OFFSET","HID_USAGE_PID_SAMPLE_COUNT","HID_USAGE_PID_SET_PERIODIC_REPORT","HID_USAGE_PID_OFFSET","HID_USAGE_PID_MAGNITUDE","HID_USAGE_PID_PHASE","HID_USAGE_PID_PERIOD","HID_USAGE_PID_SET_CONSTANT_FORCE_REPORT","HID_USAGE_PID_SET_RAMP_FORCE_REPORT","HID_USAGE_PID_RAMP_START","HID_USAGE_PID_RAMP_END","HID_USAGE_PID_EFFECT_OPERATION_REPORT","HID_USAGE_PID_EFFECT_OPERATION","HID_USAGE_PID_OP_EFFECT_START","HID_USAGE_PID_OP_EFFECT_START_SOLO","HID_USAGE_PID_OP_EFFECT_STOP","HID_USAGE_PID_LOOP_COUNT","HID_USAGE_PID_DEVICE_GAIN_REPORT","HID_USAGE_PID_DEVICE_GAIN","HID_USAGE_PID_PID_POOL_REPORT","HID_USAGE_PID_RAM_POOL_SIZE","HID_USAGE_PID_ROM_POOL_SIZE","HID_USAGE_PID_ROM_EFFECT_BLOCK_COUNT","HID_USAGE_PID_SIMULTANEOUS_EFFECTS_MAX","HID_USAGE_PID_POOL_ALIGNMENT","HID_USAGE_PID_PID_POOL_MOVE_REPORT","HID_USAGE_PID_MOVE_SOURCE","HID_USAGE_PID_MOVE_DESTINATION","HID_USAGE_PID_MOVE_LENGTH","HID_USAGE_PID_PID_BLOCK_LOAD_REPORT","HID_USAGE_PID_BLOCK_LOAD_STATUS","HID_USAGE_PID_BLOCK_LOAD_SUCCESS","HID_USAGE_PID_BLOCK_LOAD_FULL","HID_USAGE_PID_BLOCK_LOAD_ERROR","HID_USAGE_PID_BLOCK_HANDLE","HID_USAGE_PID_PID_BLOCK_FREE_REPORT","HID_USAGE_PID_TYPE_SPECIFIC_BLOCK_HANDLE","HID_USAGE_PID_PID_STATE_REPORT","HID_USAGE_PID_EFFECT_PLAYING","HID_USAGE_PID_PID_DEVICE_CONTROL_REPORT","HID_USAGE_PID_PID_DEVICE_CONTROL","HID_USAGE_PID_DC_ENABLE_ACTUATORS","HID_USAGE_PID_DC_DISABLE_ACTUATORS","HID_USAGE_PID_DC_STOP_ALL_EFFECTS","HID_USAGE_PID_DC_DEVICE_RESET","HID_USAGE_PID_DC_DEVICE_PAUSE","HID_USAGE_PID_DC_DEVICE_CONTINUE","HID_USAGE_PID_DEVICE_PAUSED","HID_USAGE_PID_ACTUATORS_ENABLED","HID_USAGE_PID_SAFETY_SWITCH","HID_USAGE_PID_ACTUATOR_OVERRIDE_SWITCH","HID_USAGE_PID_ACTUATOR_POWER","HID_USAGE_PID_START_DELAY","HID_USAGE_PID_PARAMETER_BLOCK_SIZE","HID_USAGE_PID_DEVICE_MANAGED_POOL","HID_USAGE_PID_SHARED_PARAMETER_BLOCKS","HID_USAGE_PID_CREATE_NEW_EFFECT_REPORT","HID_USAGE_PID_RAM_POOL_AVAILABLE","HID_USAGE_EHT_UNDEFINED","HID_USAGE_EHT_EYE_TRACKER","HID_USAGE_EHT_HEAD_TRACKER","HID_USAGE_EHT_TRACKING_DATA","HID_USAGE_EHT_CAPABILITIES","HID_USAGE_EHT_CONFIGURATION","HID_USAGE_EHT_STATUS","HID_USAGE_EHT_CONTROL","HID_USAGE_EHT_SENSOR_TIMESTAMP","HID_USAGE_EHT_POSITION_X","HID_USAGE_EHT_POSITION_Y","HID_USAGE_EHT_POSITION_Z","HID_USAGE_EHT_GAZE_POINT","HID_USAGE_EHT_LEFT_EYE_POSITION","HID_USAGE_EHT_RIGHT_EYE_POSITION","HID_USAGE_EHT_HEAD_POSITION","HID_USAGE_EHT_HEAD_DIRECTION_POINT","HID_USAGE_EHT_ROTATION_ABOUT_X_AXIS","HID_USAGE_EHT_ROTATION_ABOUT_Y_AXIS","HID_USAGE_EHT_ROTATION_ABOUT_Z_AXIS","HID_USAGE_EHT_TRACKER_QUALITY","HID_USAGE_EHT_MINIMUM_TRACKING_DISTANCE","HID_USAGE_EHT_OPTIMUM_TRACKING_DISTANCE","HID_USAGE_EHT_MAXIMUM_TRACKING_DISTANCE","HID_USAGE_EHT_MAXIMUM_SCREEN_PLANE_WIDTH","HID_USAGE_EHT_MAXIMUM_SCREEN_PLANE_HEIGHT","HID_USAGE_EHT_DISPLAY_MANUFACTURER_ID","HID_USAGE_EHT_DISPLAY_PRODUCT_ID","HID_USAGE_EHT_DISPLAY_SERIAL_NUMBER","HID_USAGE_EHT_DISPLAY_MANUFACTURER_DATE","HID_USAGE_EHT_CALIBRATED_SCREEN_WIDTH","HID_USAGE_EHT_CALIBRATED_SCREEN_HEIGHT","HID_USAGE_EHT_SAMPLING_FREQUENCY","HID_USAGE_EHT_CONFIGURATION_STATUS","HID_USAGE_EHT_DEVICE_MODE_REQUEST","HID_USAGE_AUXDISP_UNDEFINED","HID_USAGE_AUXDISP_ALPHANUMERIC_DISPLAY","HID_USAGE_AUXDISP_AUXILIARY_DISPLAY","HID_USAGE_AUXDISP_DISPLAY_ATTRIBUTES_REPORT","HID_USAGE_AUXDISP_ASCII_CHARACTER_SET","HID_USAGE_AUXDISP_DATA_READ_BACK","HID_USAGE_AUXDISP_FONT_READ_BACK","HID_USAGE_AUXDISP_DISPLAY_CONTROL_REPORT","HID_USAGE_AUXDISP_CLEAR_DISPLAY","HID_USAGE_AUXDISP_DISPLAY_ENABLE","HID_USAGE_AUXDISP_SCREEN_SAVER_DELAY","HID_USAGE_AUXDISP_SCREEN_SAVER_ENABLE","HID_USAGE_AUXDISP_VERTICAL_SCROLL","HID_USAGE_AUXDISP_HORIZONTAL_SCROLL","HID_USAGE_AUXDISP_CHARACTER_REPORT","HID_USAGE_AUXDISP_DISPLAY_DATA","HID_USAGE_AUXDISP_DISPLAY_STATUS","HID_USAGE_AUXDISP_STAT_NOT_READY","HID_USAGE_AUXDISP_STAT_READY","HID_USAGE_AUXDISP_ERR_NOT_A_LOADABLE_CHARACTER","HID_USAGE_AUXDISP_ERR_FONT_DATA_CANNOT_BE_READ","HID_USAGE_AUXDISP_CURSOR_POSITION_REPORT","HID_USAGE_AUXDISP_ROW","HID_USAGE_AUXDISP_COLUMN","HID_USAGE_AUXDISP_ROWS","HID_USAGE_AUXDISP_COLUMNS","HID_USAGE_AUXDISP_CURSOR_PIXEL_POSITIONING","HID_USAGE_AUXDISP_CURSOR_MODE","HID_USAGE_AUXDISP_CURSOR_ENABLE","HID_USAGE_AUXDISP_CURSOR_BLINK","HID_USAGE_AUXDISP_FONT_REPORT","HID_USAGE_AUXDISP_FONT_DATA","HID_USAGE_AUXDISP_CHARACTER_WIDTH","HID_USAGE_AUXDISP_CHARACTER_HEIGHT","HID_USAGE_AUXDISP_CHARACTER_SPACING_HORIZONTAL","HID_USAGE_AUXDISP_CHARACTER_SPACING_VERTICAL","HID_USAGE_AUXDISP_UNICODE_CHARACTER_SET","HID_USAGE_AUXDISP_FONT_7_SEGMENT","HID_USAGE_AUXDISP_7_SEGMENT_DIRECT_MAP","HID_USAGE_AUXDISP_FONT_14_SEGMENT","HID_USAGE_AUXDISP_14_SEGMENT_DIRECT_MAP","HID_USAGE_AUXDISP_DISPLAY_BRIGHTNESS","HID_USAGE_AUXDISP_DISPLAY_CONTRAST","HID_USAGE_AUXDISP_CHARACTER_ATTRIBUTE","HID_USAGE_AUXDISP_ATTRIBUTE_READBACK","HID_USAGE_AUXDISP_ATTRIBUTE_DATA","HID_USAGE_AUXDISP_CHAR_ATTR_ENHANCE","HID_USAGE_AUXDISP_CHAR_ATTR_UNDERLINE","HID_USAGE_AUXDISP_CHAR_ATTR_BLINK","HID_USAGE_AUXDISP_BITMAP_SIZE_X","HID_USAGE_AUXDISP_BITMAP_SIZE_Y","HID_USAGE_AUXDISP_MAX_BLIT_SIZE","HID_USAGE_AUXDISP_BIT_DEPTH_FORMAT","HID_USAGE_AUXDISP_DISPLAY_ORIENTATION","HID_USAGE_AUXDISP_PALETTE_REPORT","HID_USAGE_AUXDISP_PALETTE_DATA_SIZE","HID_USAGE_AUXDISP_PALETTE_DATA_OFFSET","HID_USAGE_AUXDISP_PALETTE_DATA","HID_USAGE_AUXDISP_BLIT_REPORT","HID_USAGE_AUXDISP_BLIT_RECTANGLE_X1","HID_USAGE_AUXDISP_BLIT_RECTANGLE_Y1","HID_USAGE_AUXDISP_BLIT_RECTANGLE_X2","HID_USAGE_AUXDISP_BLIT_RECTANGLE_Y2","HID_USAGE_AUXDISP_BLIT_DATA","HID_USAGE_AUXDISP_SOFT_BUTTON","HID_USAGE_AUXDISP_SOFT_BUTTON_ID","HID_USAGE_AUXDISP_SOFT_BUTTON_SIDE","HID_USAGE_AUXDISP_SOFT_BUTTON_OFFSET_1","HID_USAGE_AUXDISP_SOFT_BUTTON_OFFSET_2","HID_USAGE_AUXDISP_SOFT_BUTTON_REPORT","HID_USAGE_AUXDISP_SOFT_KEYS","HID_USAGE_AUXDISP_DISPLAY_DATA_EXTENSIONS","HID_USAGE_AUXDISP_CHARACTER_MAPPING","HID_USAGE_AUXDISP_UNICODE_EQUIVALENT","HID_USAGE_AUXDISP_CHARACTER_PAGE_MAPPING","HID_USAGE_AUXDISP_REQUEST_REPORT","HID_USAGE_SENSORS_UNDEFINED","HID_USAGE_SENSORS_SENSOR","HID_USAGE_SENSORS_BIOMETRIC","HID_USAGE_SENSORS_BIOMETRIC_HUMAN_PRESENCE","HID_USAGE_SENSORS_BIOMETRIC_HUMAN_PROXIMITY","HID_USAGE_SENSORS_BIOMETRIC_HUMAN_TOUCH","HID_USAGE_SENSORS_BIOMETRIC_BLOOD_PRESSURE","HID_USAGE_SENSORS_BIOMETRIC_BODY_TEMPERATURE","HID_USAGE_SENSORS_BIOMETRIC_HEART_RATE","HID_USAGE_SENSORS_BIOMETRIC_HEART_RATE_VARIABILITY","HID_USAGE_SENSORS_BIOMETRIC_PERIPHERAL_OXYGEN_SATURATION","HID_USAGE_SENSORS_BIOMETRIC_RESPIRATORY_RATE","HID_USAGE_SENSORS_ELECTRICAL","HID_USAGE_SENSORS_ELECTRICAL_CAPACITANCE","HID_USAGE_SENSORS_ELECTRICAL_CURRENT","HID_USAGE_SENSORS_ELECTRICAL_POWER","HID_USAGE_SENSORS_ELECTRICAL_INDUCTANCE","HID_USAGE_SENSORS_ELECTRICAL_RESISTANCE","HID_USAGE_SENSORS_ELECTRICAL_VOLTAGE","HID_USAGE_SENSORS_ELECTRICAL_POTENTIOMETER","HID_USAGE_SENSORS_ELECTRICAL_FREQUENCY","HID_USAGE_SENSORS_ELECTRICAL_PERIOD","HID_USAGE_SENSORS_ENVIRONMENTAL","HID_USAGE_SENSORS_ENVIRONMENTAL_ATMOSPHERIC_PRESSURE","HID_USAGE_SENSORS_ENVIRONMENTAL_HUMIDITY","HID_USAGE_SENSORS_ENVIRONMENTAL_TEMPERATURE","HID_USAGE_SENSORS_ENVIRONMENTAL_WIND_DIRECTION","HID_USAGE_SENSORS_ENVIRONMENTAL_WIND_SPEED","HID_USAGE_SENSORS_ENVIRONMENTAL_AIR_QUALITY","HID_USAGE_SENSORS_ENVIRONMENTAL_HEAT_INDEX","HID_USAGE_SENSORS_ENVIRONMENTAL_SURFACE_TEMPERATURE","HID_USAGE_SENSORS_ENVIRONMENTAL_VOLATILE_ORGANIC_COMPOUNDS","HID_USAGE_SENSORS_ENVIRONMENTAL_OBJECT_PRESENCE","HID_USAGE_SENSORS_ENVIRONMENTAL_OBJECT_PROXIMITY","HID_USAGE_SENSORS_LIGHT","HID_USAGE_SENSORS_LIGHT_AMBIENT_LIGHT","HID_USAGE_SENSORS_LIGHT_CONSUMER_INFRARED","HID_USAGE_SENSORS_LIGHT_INFRARED_LIGHT","HID_USAGE_SENSORS_LIGHT_VISIBLE_LIGHT","HID_USAGE_SENSORS_LIGHT_ULTRAVIOLET_LIGHT","HID_USAGE_SENSORS_LOCATION","HID_USAGE_SENSORS_LOCATION_BROADCAST","HID_USAGE_SENSORS_LOCATION_DEAD_RECKONING","HID_USAGE_SENSORS_LOCATION_GPS_GLOBAL_POSITIONING_SYSTEM","HID_USAGE_SENSORS_LOCATION_LOOKUP","HID_USAGE_SENSORS_LOCATION_OTHER","HID_USAGE_SENSORS_LOCATION_STATIC","HID_USAGE_SENSORS_LOCATION_TRIANGULATION","HID_USAGE_SENSORS_MECHANICAL","HID_USAGE_SENSORS_MECHANICAL_BOOLEAN_SWITCH","HID_USAGE_SENSORS_MECHANICAL_BOOLEAN_SWITCH_ARRAY","HID_USAGE_SENSORS_MECHANICAL_MULTIVALUE_SWITCH","HID_USAGE_SENSORS_MECHANICAL_FORCE","HID_USAGE_SENSORS_MECHANICAL_PRESSURE","HID_USAGE_SENSORS_MECHANICAL_STRAIN","HID_USAGE_SENSORS_MECHANICAL_WEIGHT","HID_USAGE_SENSORS_MECHANICAL_HAPTIC_VIBRATOR","HID_USAGE_SENSORS_MECHANICAL_HALL_EFFECT_SWITCH","HID_USAGE_SENSORS_MOTION","HID_USAGE_SENSORS_MOTION_ACCELEROMETER_1D","HID_USAGE_SENSORS_MOTION_ACCELEROMETER_2D","HID_USAGE_SENSORS_MOTION_ACCELEROMETER_3D","HID_USAGE_SENSORS_MOTION_GYROMETER_1D","HID_USAGE_SENSORS_MOTION_GYROMETER_2D","HID_USAGE_SENSORS_MOTION_GYROMETER_3D","HID_USAGE_SENSORS_MOTION_MOTION_DETECTOR","HID_USAGE_SENSORS_MOTION_SPEEDOMETER","HID_USAGE_SENSORS_MOTION_ACCELEROMETER","HID_USAGE_SENSORS_MOTION_GYROMETER","HID_USAGE_SENSORS_MOTION_GRAVITY_VECTOR","HID_USAGE_SENSORS_MOTION_LINEAR_ACCELEROMETER","HID_USAGE_SENSORS_ORIENTATION","HID_USAGE_SENSORS_ORIENTATION_COMPASS_1D","HID_USAGE_SENSORS_ORIENTATION_COMPASS_2D","HID_USAGE_SENSORS_ORIENTATION_COMPASS_3D","HID_USAGE_SENSORS_ORIENTATION_INCLINOMETER_1D","HID_USAGE_SENSORS_ORIENTATION_INCLINOMETER_2D","HID_USAGE_SENSORS_ORIENTATION_INCLINOMETER_3D","HID_USAGE_SENSORS_ORIENTATION_DISTANCE_1D","HID_USAGE_SENSORS_ORIENTATION_DISTANCE_2D","HID_USAGE_SENSORS_ORIENTATION_DISTANCE_3D","HID_USAGE_SENSORS_ORIENTATION_DEVICE_ORIENTATION","HID_USAGE_SENSORS_ORIENTATION_COMPASS","HID_USAGE_SENSORS_ORIENTATION_INCLINOMETER","HID_USAGE_SENSORS_ORIENTATION_DISTANCE","HID_USAGE_SENSORS_ORIENTATION_RELATIVE_ORIENTATION","HID_USAGE_SENSORS_ORIENTATION_SIMPLE_ORIENTATION","HID_USAGE_SENSORS_SCANNER","HID_USAGE_SENSORS_SCANNER_BARCODE","HID_USAGE_SENSORS_SCANNER_RFID","HID_USAGE_SENSORS_SCANNER_NFC","HID_USAGE_SENSORS_TIME","HID_USAGE_SENSORS_TIME_ALARM_TIMER","HID_USAGE_SENSORS_TIME_REAL_TIME_CLOCK","HID_USAGE_SENSORS_PERSONAL_ACTIVITY","HID_USAGE_SENSORS_PERSONAL_ACTIVITY_ACTIVITY_DETECTION","HID_USAGE_SENSORS_PERSONAL_ACTIVITY_DEVICE_POSITION","HID_USAGE_SENSORS_PERSONAL_ACTIVITY_PEDOMETER","HID_USAGE_SENSORS_PERSONAL_ACTIVITY_STEP_DETECTION","HID_USAGE_SENSORS_ORIENTATION_EXTENDED","HID_USAGE_SENSORS_ORIENTATION_EXTENDED_GEOMAGNETIC_ORIENTATION","HID_USAGE_SENSORS_ORIENTATION_EXTENDED_MAGNETOMETER","HID_USAGE_SENSORS_GESTURE","HID_USAGE_SENSORS_GESTURE_CHASSIS_FLIP_GESTURE","HID_USAGE_SENSORS_GESTURE_HINGE_FOLD_GESTURE","HID_USAGE_SENSORS_OTHER","HID_USAGE_SENSORS_OTHER_CUSTOM","HID_USAGE_SENSORS_OTHER_GENERIC","HID_USAGE_SENSORS_OTHER_GENERIC_ENUMERATOR","HID_USAGE_SENSORS_OTHER_HINGE_ANGLE","HID_USAGE_SENSORS_EVENT","HID_USAGE_SENSORS_EVENT_SENSOR_STATE","HID_USAGE_SENSORS_EVENT_SENSOR_EVENT","HID_USAGE_SENSORS_PROPERTY","HID_USAGE_SENSORS_PROPERTY_FRIENDLY_NAME","HID_USAGE_SENSORS_PROPERTY_PERSISTENT_UNIQUE_ID","HID_USAGE_SENSORS_PROPERTY_SENSOR_STATUS","HID_USAGE_SENSORS_PROPERTY_MINIMUM_REPORT_INTERVAL","HID_USAGE_SENSORS_PROPERTY_SENSOR_MANUFACTURER","HID_USAGE_SENSORS_PROPERTY_SENSOR_MODEL","HID_USAGE_SENSORS_PROPERTY_SENSOR_SERIAL_NUMBER","HID_USAGE_SENSORS_PROPERTY_SENSOR_DESCRIPTION","HID_USAGE_SENSORS_PROPERTY_SENSOR_CONNECTION_TYPE","HID_USAGE_SENSORS_PROPERTY_SENSOR_DEVICE_PATH","HID_USAGE_SENSORS_PROPERTY_HARDWARE_REVISION","HID_USAGE_SENSORS_PROPERTY_FIRMWARE_VERSION","HID_USAGE_SENSORS_PROPERTY_RELEASE_DATE","HID_USAGE_SENSORS_PROPERTY_REPORT_INTERVAL","HID_USAGE_SENSORS_PROPERTY_CHANGE_SENSITIVITY_ABSOLUTE","HID_USAGE_SENSORS_PROPERTY_CHANGE_SENSITIVITY_PERCENT_OF_RANGE","HID_USAGE_SENSORS_PROPERTY_CHANGE_SENSITIVITY_PERCENT_RELATIVE","HID_USAGE_SENSORS_PROPERTY_ACCURACY","HID_USAGE_SENSORS_PROPERTY_RESOLUTION","HID_USAGE_SENSORS_PROPERTY_MAXIMUM","HID_USAGE_SENSORS_PROPERTY_MINIMUM","HID_USAGE_SENSORS_PROPERTY_REPORTING_STATE","HID_USAGE_SENSORS_PROPERTY_SAMPLING_RATE","HID_USAGE_SENSORS_PROPERTY_RESPONSE_CURVE","HID_USAGE_SENSORS_PROPERTY_POWER_STATE","HID_USAGE_SENSORS_PROPERTY_MAXIMUM_FIFO_EVENTS","HID_USAGE_SENSORS_PROPERTY_REPORT_LATENCY","HID_USAGE_SENSORS_PROPERTY_FLUSH_FIFO_EVENTS","HID_USAGE_SENSORS_PROPERTY_MAXIMUM_POWER_CONSUMPTION","HID_USAGE_SENSORS_PROPERTY_IS_PRIMARY","HID_USAGE_SENSORS_DATA_FIELD_LOCATION","HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_ANTENNA_SEA_LEVEL","HID_USAGE_SENSORS_DATA_FIELD_DIFFERENTIAL_REFERENCE_STATION_ID","HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_ELLIPSOID_ERROR","HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_ELLIPSOID","HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_SEA_LEVEL_ERROR","HID_USAGE_SENSORS_DATA_FIELD_ALTITUDE_SEA_LEVEL","HID_USAGE_SENSORS_DATA_FIELD_DIFFERENTIAL_GPS_DATA_AGE","HID_USAGE_SENSORS_DATA_FIELD_ERROR_RADIUS","HID_USAGE_SENSORS_DATA_FIELD_FIX_QUALITY","HID_USAGE_SENSORS_DATA_FIELD_FIX_TYPE","HID_USAGE_SENSORS_DATA_FIELD_GEOIDAL_SEPARATION","HID_USAGE_SENSORS_DATA_FIELD_GPS_OPERATION_MODE","HID_USAGE_SENSORS_DATA_FIELD_GPS_SELECTION_MODE","HID_USAGE_SENSORS_DATA_FIELD_GPS_STATUS","HID_USAGE_SENSORS_DATA_FIELD_POSITION_DILUTION_OF_PRECISION","HID_USAGE_SENSORS_DATA_FIELD_HORIZONTAL_DILUTION_OF_PRECISION","HID_USAGE_SENSORS_DATA_FIELD_VERTICAL_DILUTION_OF_PRECISION","HID_USAGE_SENSORS_DATA_FIELD_LATITUDE","HID_USAGE_SENSORS_DATA_FIELD_LONGITUDE","HID_USAGE_SENSORS_DATA_FIELD_TRUE_HEADING","HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_HEADING","HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_VARIATION","HID_USAGE_SENSORS_DATA_FIELD_SPEED","HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW","HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_AZIMUTH","HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_ELEVATION","HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_IDS","HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_PRNS","HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_IN_VIEW_S_N_RATIOS","HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_USED_COUNT","HID_USAGE_SENSORS_DATA_FIELD_SATELLITES_USED_PRNS","HID_USAGE_SENSORS_DATA_FIELD_NMEA_SENTENCE","HID_USAGE_SENSORS_DATA_FIELD_ADDRESS_LINE_1","HID_USAGE_SENSORS_DATA_FIELD_ADDRESS_LINE_2","HID_USAGE_SENSORS_DATA_FIELD_CITY","HID_USAGE_SENSORS_DATA_FIELD_STATE_OR_PROVINCE","HID_USAGE_SENSORS_DATA_FIELD_COUNTRY_OR_REGION","HID_USAGE_SENSORS_DATA_FIELD_POSTAL_CODE","HID_USAGE_SENSORS_PROPERTY_LOCATION","HID_USAGE_SENSORS_PROPERTY_LOCATION_DESIRED_ACCURACY","HID_USAGE_SENSORS_DATA_FIELD_ENVIRONMENTAL","HID_USAGE_SENSORS_DATA_FIELD_ATMOSPHERIC_PRESSURE","HID_USAGE_SENSORS_DATA_FIELD_RELATIVE_HUMIDITY","HID_USAGE_SENSORS_DATA_FIELD_TEMPERATURE","HID_USAGE_SENSORS_DATA_FIELD_WIND_DIRECTION","HID_USAGE_SENSORS_DATA_FIELD_WIND_SPEED","HID_USAGE_SENSORS_DATA_FIELD_AIR_QUALITY_INDEX","HID_USAGE_SENSORS_DATA_FIELD_EQUIVALENT_CO2","HID_USAGE_SENSORS_DATA_FIELD_VOLATILE_ORGANIC_COMPOUND_CONCENTRATION","HID_USAGE_SENSORS_DATA_FIELD_OBJECT_PRESENCE","HID_USAGE_SENSORS_DATA_FIELD_OBJECT_PROXIMITY_RANGE","HID_USAGE_SENSORS_DATA_FIELD_OBJECT_PROXIMITY_OUT_OF_RANGE","HID_USAGE_SENSORS_PROPERTY_ENVIRONMENTAL","HID_USAGE_SENSORS_PROPERTY_REFERENCE_PRESSURE","HID_USAGE_SENSORS_DATA_FIELD_MOTION","HID_USAGE_SENSORS_DATA_FIELD_MOTION_STATE","HID_USAGE_SENSORS_DATA_FIELD_ACCELERATION","HID_USAGE_SENSORS_DATA_FIELD_ACCELERATION_AXIS_X","HID_USAGE_SENSORS_DATA_FIELD_ACCELERATION_AXIS_Y","HID_USAGE_SENSORS_DATA_FIELD_ACCELERATION_AXIS_Z","HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_VELOCITY","HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_VELOCITY_ABOUT_X_AXIS","HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_VELOCITY_ABOUT_Y_AXIS","HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_VELOCITY_ABOUT_Z_AXIS","HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_POSITION","HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_POSITION_ABOUT_X_AXIS","HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_POSITION_ABOUT_Y_AXIS","HID_USAGE_SENSORS_DATA_FIELD_ANGULAR_POSITION_ABOUT_Z_AXIS","HID_USAGE_SENSORS_DATA_FIELD_MOTION_SPEED","HID_USAGE_SENSORS_DATA_FIELD_MOTION_INTENSITY","HID_USAGE_SENSORS_DATA_FIELD_ORIENTATION","HID_USAGE_SENSORS_DATA_FIELD_HEADING","HID_USAGE_SENSORS_DATA_FIELD_HEADING_X_AXIS","HID_USAGE_SENSORS_DATA_FIELD_HEADING_Y_AXIS","HID_USAGE_SENSORS_DATA_FIELD_HEADING_Z_AXIS","HID_USAGE_SENSORS_DATA_FIELD_HEADING_COMPENSATED_MAGNETIC_NORTH","HID_USAGE_SENSORS_DATA_FIELD_HEADING_COMPENSATED_TRUE_NORTH","HID_USAGE_SENSORS_DATA_FIELD_HEADING_MAGNETIC_NORTH","HID_USAGE_SENSORS_DATA_FIELD_HEADING_TRUE_NORTH","HID_USAGE_SENSORS_DATA_FIELD_DISTANCE","HID_USAGE_SENSORS_DATA_FIELD_DISTANCE_X_AXIS","HID_USAGE_SENSORS_DATA_FIELD_DISTANCE_Y_AXIS","HID_USAGE_SENSORS_DATA_FIELD_DISTANCE_Z_AXIS","HID_USAGE_SENSORS_DATA_FIELD_DISTANCE_OUT_OF_RANGE","HID_USAGE_SENSORS_DATA_FIELD_TILT","HID_USAGE_SENSORS_DATA_FIELD_TILT_X_AXIS","HID_USAGE_SENSORS_DATA_FIELD_TILT_Y_AXIS","HID_USAGE_SENSORS_DATA_FIELD_TILT_Z_AXIS","HID_USAGE_SENSORS_DATA_FIELD_ROTATION_MATRIX","HID_USAGE_SENSORS_DATA_FIELD_QUATERNION","HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_FLUX","HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_FLUX_X_AXIS","HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_FLUX_Y_AXIS","HID_USAGE_SENSORS_DATA_FIELD_MAGNETIC_FLUX_Z_AXIS","HID_USAGE_SENSORS_DATA_FIELD_MAGNETOMETER_ACCURACY","HID_USAGE_SENSORS_DATA_FIELD_SIMPLE_ORIENTATION_DIRECTION","HID_USAGE_SENSORS_DATA_FIELD_MECHANICAL","HID_USAGE_SENSORS_DATA_FIELD_BOOLEAN_SWITCH_STATE","HID_USAGE_SENSORS_DATA_FIELD_BOOLEAN_SWITCH_ARRAY_STATES","HID_USAGE_SENSORS_DATA_FIELD_MULTIVALUE_SWITCH_VALUE","HID_USAGE_SENSORS_DATA_FIELD_FORCE","HID_USAGE_SENSORS_DATA_FIELD_ABSOLUTE_PRESSURE","HID_USAGE_SENSORS_DATA_FIELD_GAUGE_PRESSURE","HID_USAGE_SENSORS_DATA_FIELD_STRAIN","HID_USAGE_SENSORS_DATA_FIELD_WEIGHT","HID_USAGE_SENSORS_PROPERTY_MECHANICAL","HID_USAGE_SENSORS_PROPERTY_VIBRATION_STATE","HID_USAGE_SENSORS_PROPERTY_FORWARD_VIBRATION_SPEED","HID_USAGE_SENSORS_PROPERTY_BACKWARD_VIBRATION_SPEED","HID_USAGE_SENSORS_DATA_FIELD_BIOMETRIC","HID_USAGE_SENSORS_DATA_FIELD_HUMAN_PRESENCE","HID_USAGE_SENSORS_DATA_FIELD_HUMAN_PROXIMITY_RANGE","HID_USAGE_SENSORS_DATA_FIELD_HUMAN_PROXIMITY_OUT_OF_RANGE","HID_USAGE_SENSORS_DATA_FIELD_HUMAN_TOUCH_STATE","HID_USAGE_SENSORS_DATA_FIELD_BLOOD_PRESSURE","HID_USAGE_SENSORS_DATA_FIELD_BLOOD_PRESSURE_DIASTOLIC","HID_USAGE_SENSORS_DATA_FIELD_BLOOD_PRESSURE_SYSTOLIC","HID_USAGE_SENSORS_DATA_FIELD_HEART_RATE","HID_USAGE_SENSORS_DATA_FIELD_RESTING_HEART_RATE","HID_USAGE_SENSORS_DATA_FIELD_HEARTBEAT_INTERVAL","HID_USAGE_SENSORS_DATA_FIELD_RESPIRATORY_RATE","HID_USAGE_SENSORS_DATA_FIELD_SPO2","HID_USAGE_SENSORS_DATA_FIELD_LIGHT","HID_USAGE_SENSORS_DATA_FIELD_ILLUMINANCE","HID_USAGE_SENSORS_DATA_FIELD_COLOR_TEMPERATURE","HID_USAGE_SENSORS_DATA_FIELD_CHROMATICITY","HID_USAGE_SENSORS_DATA_FIELD_CHROMATICITY_X","HID_USAGE_SENSORS_DATA_FIELD_CHROMATICITY_Y","HID_USAGE_SENSORS_DATA_FIELD_CONSUMER_IR_SENTENCE_RECEIVE","HID_USAGE_SENSORS_DATA_FIELD_INFRARED_LIGHT","HID_USAGE_SENSORS_DATA_FIELD_RED_LIGHT","HID_USAGE_SENSORS_DATA_FIELD_GREEN_LIGHT","HID_USAGE_SENSORS_DATA_FIELD_BLUE_LIGHT","HID_USAGE_SENSORS_DATA_FIELD_ULTRAVIOLET_A_LIGHT","HID_USAGE_SENSORS_DATA_FIELD_ULTRAVIOLET_B_LIGHT","HID_USAGE_SENSORS_DATA_FIELD_ULTRAVIOLET_INDEX","HID_USAGE_SENSORS_DATA_FIELD_NEAR_INFRARED_LIGHT","HID_USAGE_SENSORS_PROPERTY_LIGHT","HID_USAGE_SENSORS_PROPERTY_CONSUMER_IR_SENTENCE_SEND","HID_USAGE_SENSORS_PROPERTY_AUTO_BRIGHTNESS_PREFERRED","HID_USAGE_SENSORS_PROPERTY_AUTO_COLOR_PREFERRED","HID_USAGE_SENSORS_DATA_FIELD_SCANNER","HID_USAGE_SENSORS_DATA_FIELD_RFID_TAG_40_BIT","HID_USAGE_SENSORS_DATA_FIELD_NFC_SENTENCE_RECEIVE","HID_USAGE_SENSORS_PROPERTY_SCANNER","HID_USAGE_SENSORS_PROPERTY_NFC_SENTENCE_SEND","HID_USAGE_SENSORS_DATA_FIELD_ELECTRICAL","HID_USAGE_SENSORS_DATA_FIELD_CAPACITANCE","HID_USAGE_SENSORS_DATA_FIELD_CURRENT","HID_USAGE_SENSORS_DATA_FIELD_ELECTRICAL_POWER","HID_USAGE_SENSORS_DATA_FIELD_INDUCTANCE","HID_USAGE_SENSORS_DATA_FIELD_RESISTANCE","HID_USAGE_SENSORS_DATA_FIELD_VOLTAGE","HID_USAGE_SENSORS_DATA_FIELD_FREQUENCY","HID_USAGE_SENSORS_DATA_FIELD_PERIOD","HID_USAGE_SENSORS_DATA_FIELD_PERCENT_OF_RANGE","HID_USAGE_SENSORS_DATA_FIELD_TIME","HID_USAGE_SENSORS_DATA_FIELD_YEAR","HID_USAGE_SENSORS_DATA_FIELD_MONTH","HID_USAGE_SENSORS_DATA_FIELD_DAY","HID_USAGE_SENSORS_DATA_FIELD_DAY_OF_WEEK","HID_USAGE_SENSORS_DATA_FIELD_HOUR","HID_USAGE_SENSORS_DATA_FIELD_MINUTE","HID_USAGE_SENSORS_DATA_FIELD_SECOND","HID_USAGE_SENSORS_DATA_FIELD_MILLISECOND","HID_USAGE_SENSORS_DATA_FIELD_TIMESTAMP","HID_USAGE_SENSORS_DATA_FIELD_JULIAN_DAY_OF_YEAR","HID_USAGE_SENSORS_DATA_FIELD_TIME_SINCE_SYSTEM_BOOT","HID_USAGE_SENSORS_PROPERTY_TIME","HID_USAGE_SENSORS_PROPERTY_TIME_ZONE_OFFSET_FROM_UTC","HID_USAGE_SENSORS_PROPERTY_TIME_ZONE_NAME","HID_USAGE_SENSORS_PROPERTY_DAYLIGHT_SAVINGS_TIME_OBSERVED","HID_USAGE_SENSORS_PROPERTY_TIME_TRIM_ADJUSTMENT","HID_USAGE_SENSORS_PROPERTY_ARM_ALARM","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_USAGE","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_BOOLEAN_ARRAY","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_1","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_2","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_3","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_4","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_5","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_6","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_7","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_8","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_9","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_10","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_11","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_12","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_13","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_14","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_15","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_16","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_17","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_18","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_19","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_20","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_21","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_22","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_23","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_24","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_25","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_26","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_27","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_VALUE_28","HID_USAGE_SENSORS_DATA_FIELD_GENERIC","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_GUID_OR_PROPERTYKEY","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_CATEGORY_GUID","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_TYPE_GUID","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_EVENT_PROPERTYKEY","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_PROPERTY_PROPERTYKEY","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_DATA_FIELD_PROPERTYKEY","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_EVENT","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_PROPERTY","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_DATA_FIELD","HID_USAGE_SENSORS_DATA_FIELD_ENUMERATOR_TABLE_ROW_INDEX","HID_USAGE_SENSORS_DATA_FIELD_ENUMERATOR_TABLE_ROW_COUNT","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_GUID_OR_PROPERTYKEY_KIND","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_GUID","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_PROPERTYKEY","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_TOP_LEVEL_COLLECTION_ID","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_REPORT_ID","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_REPORT_ITEM_POSITION_INDEX","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_FIRMWARE_VARTYPE","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_UNIT_OF_MEASURE","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_UNIT_EXPONENT","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_REPORT_SIZE","HID_USAGE_SENSORS_DATA_FIELD_GENERIC_REPORT_COUNT","HID_USAGE_SENSORS_PROPERTY_GENERIC","HID_USAGE_SENSORS_PROPERTY_ENUMERATOR_TABLE_ROW_INDEX","HID_USAGE_SENSORS_PROPERTY_ENUMERATOR_TABLE_ROW_COUNT","HID_USAGE_SENSORS_DATA_FIELD_PERSONAL_ACTIVITY","HID_USAGE_SENSORS_DATA_FIELD_ACTIVITY_TYPE","HID_USAGE_SENSORS_DATA_FIELD_ACTIVITY_STATE","HID_USAGE_SENSORS_DATA_FIELD_DEVICE_POSITION","HID_USAGE_SENSORS_DATA_FIELD_STEP_COUNT","HID_USAGE_SENSORS_DATA_FIELD_STEP_COUNT_RESET","HID_USAGE_SENSORS_DATA_FIELD_STEP_DURATION","HID_USAGE_SENSORS_DATA_FIELD_STEP_TYPE","HID_USAGE_SENSORS_PROPERTY_MINIMUM_ACTIVITY_DETECTION_INTERVAL","HID_USAGE_SENSORS_PROPERTY_SUPPORTED_ACTIVITY_TYPES","HID_USAGE_SENSORS_PROPERTY_SUBSCRIBED_ACTIVITY_TYPES","HID_USAGE_SENSORS_PROPERTY_SUPPORTED_STEP_TYPES","HID_USAGE_SENSORS_PROPERTY_SUBSCRIBED_STEP_TYPES","HID_USAGE_SENSORS_PROPERTY_FLOOR_HEIGHT","HID_USAGE_SENSORS_DATA_FIELD_CUSTOM_TYPE_ID","HID_USAGE_SENSORS_PROPERTY_CUSTOM","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_1","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_2","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_3","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_4","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_5","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_6","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_7","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_8","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_9","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_10","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_11","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_12","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_13","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_14","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_15","HID_USAGE_SENSORS_PROPERTY_CUSTOM_VALUE_16","HID_USAGE_SENSORS_DATA_FIELD_HINGE","HID_USAGE_SENSORS_DATA_FIELD_HINGE_ANGLE","HID_USAGE_SENSORS_DATA_FIELD_GESTURE_SENSOR","HID_USAGE_SENSORS_DATA_FIELD_GESTURE_STATE","HID_USAGE_SENSORS_DATA_FIELD_HINGE_FOLD_INITIAL_ANGLE","HID_USAGE_SENSORS_DATA_FIELD_HINGE_FOLD_FINAL_ANGLE","HID_USAGE_SENSORS_DATA_FIELD_HINGE_FOLD_CONTRIBUTING_PANEL","HID_USAGE_SENSORS_DATA_FIELD_HINGE_FOLD_TYPE","HID_USAGE_SENSORS_SENSOR_STATE_UNDEFINED","HID_USAGE_SENSORS_SENSOR_STATE_READY","HID_USAGE_SENSORS_SENSOR_STATE_NOT_AVAILABLE","HID_USAGE_SENSORS_SENSOR_STATE_NO_DATA","HID_USAGE_SENSORS_SENSOR_STATE_INITIALIZING","HID_USAGE_SENSORS_SENSOR_STATE_ACCESS_DENIED","HID_USAGE_SENSORS_SENSOR_STATE_ERROR","HID_USAGE_SENSORS_SENSOR_EVENT_UNKNOWN","HID_USAGE_SENSORS_SENSOR_EVENT_STATE_CHANGED","HID_USAGE_SENSORS_SENSOR_EVENT_PROPERTY_CHANGED","HID_USAGE_SENSORS_SENSOR_EVENT_DATA_UPDATED","HID_USAGE_SENSORS_SENSOR_EVENT_POLL_RESPONSE","HID_USAGE_SENSORS_SENSOR_EVENT_CHANGE_SENSITIVITY","HID_USAGE_SENSORS_SENSOR_EVENT_RANGE_MAXIMUM_REACHED","HID_USAGE_SENSORS_SENSOR_EVENT_RANGE_MINIMUM_REACHED","HID_USAGE_SENSORS_SENSOR_EVENT_HIGH_THRESHOLD_CROSS_UPWARD","HID_USAGE_SENSORS_SENSOR_EVENT_HIGH_THRESHOLD_CROSS_DOWNWARD","HID_USAGE_SENSORS_SENSOR_EVENT_LOW_THRESHOLD_CROSS_UPWARD","HID_USAGE_SENSORS_SENSOR_EVENT_LOW_THRESHOLD_CROSS_DOWNWARD","HID_USAGE_SENSORS_SENSOR_EVENT_ZERO_THRESHOLD_CROSS_UPWARD","HID_USAGE_SENSORS_SENSOR_EVENT_ZERO_THRESHOLD_CROSS_DOWNWARD","HID_USAGE_SENSORS_SENSOR_EVENT_PERIOD_EXCEEDED","HID_USAGE_SENSORS_SENSOR_EVENT_FREQUENCY_EXCEEDED","HID_USAGE_SENSORS_SENSOR_EVENT_COMPLEX_TRIGGER","HID_USAGE_SENSORS_CONNECTION_TYPE_PC_INTEGRATED","HID_USAGE_SENSORS_CONNECTION_TYPE_PC_ATTACHED","HID_USAGE_SENSORS_CONNECTION_TYPE_PC_EXTERNAL","HID_USAGE_SENSORS_REPORTING_STATE_REPORT_NO_EVENTS","HID_USAGE_SENSORS_REPORTING_STATE_REPORT_ALL_EVENTS","HID_USAGE_SENSORS_REPORTING_STATE_REPORT_THRESHOLD_EVENTS","HID_USAGE_SENSORS_REPORTING_STATE_WAKE_ON_NO_EVENTS","HID_USAGE_SENSORS_REPORTING_STATE_WAKE_ON_ALL_EVENTS","HID_USAGE_SENSORS_REPORTING_STATE_WAKE_ON_THRESHOLD_EVENTS","HID_USAGE_SENSORS_POWER_STATE_UNDEFINED","HID_USAGE_SENSORS_POWER_STATE_D0_FULL_POWER","HID_USAGE_SENSORS_POWER_STATE_D1_LOW_POWER","HID_USAGE_SENSORS_POWER_STATE_D2_STANDBY_POWER_WITH_WAKEUP","HID_USAGE_SENSORS_POWER_STATE_D3_SLEEP_WITH_WAKEUP","HID_USAGE_SENSORS_POWER_STATE_D4_POWER_OFF","HID_USAGE_SENSORS_FIX_QUALITY_NO_FIX","HID_USAGE_SENSORS_FIX_QUALITY_GPS","HID_USAGE_SENSORS_FIX_QUALITY_DGPS","HID_USAGE_SENSORS_FIX_TYPE_NO_FIX","HID_USAGE_SENSORS_FIX_TYPE_GPS_SPS_MODE_FIX_VALID","HID_USAGE_SENSORS_FIX_TYPE_DGPS_SPS_MODE_FIX_VALID","HID_USAGE_SENSORS_FIX_TYPE_GPS_PPS_MODE_FIX_VALID","HID_USAGE_SENSORS_FIX_TYPE_REAL_TIME_KINEMATIC","HID_USAGE_SENSORS_FIX_TYPE_FLOAT_RTK","HID_USAGE_SENSORS_FIX_TYPE_ESTIMATED_DEAD_RECKONED","HID_USAGE_SENSORS_FIX_TYPE_MANUAL_INPUT_MODE","HID_USAGE_SENSORS_FIX_TYPE_SIMULATOR_MODE","HID_USAGE_SENSORS_GPS_OPERATION_MODE_MANUAL","HID_USAGE_SENSORS_GPS_OPERATION_MODE_AUTOMATIC","HID_USAGE_SENSORS_GPS_SELECTION_MODE_AUTONOMOUS","HID_USAGE_SENSORS_GPS_SELECTION_MODE_DGPS","HID_USAGE_SENSORS_GPS_SELECTION_MODE_ESTIMATED_DEAD_RECKONED","HID_USAGE_SENSORS_GPS_SELECTION_MODE_MANUAL_INPUT","HID_USAGE_SENSORS_GPS_SELECTION_MODE_SIMULATOR","HID_USAGE_SENSORS_GPS_SELECTION_MODE_DATA_NOT_VALID","HID_USAGE_SENSORS_GPS_STATUS_DATA_VALID","HID_USAGE_SENSORS_GPS_STATUS_DATA_NOT_VALID","HID_USAGE_SENSORS_ACCURACY_DEFAULT","HID_USAGE_SENSORS_ACCURACY_HIGH","HID_USAGE_SENSORS_ACCURACY_MEDIUM","HID_USAGE_SENSORS_ACCURACY_LOW","HID_USAGE_SENSORS_DAY_OF_WEEK_SUNDAY","HID_USAGE_SENSORS_DAY_OF_WEEK_MONDAY","HID_USAGE_SENSORS_DAY_OF_WEEK_TUESDAY","HID_USAGE_SENSORS_DAY_OF_WEEK_WEDNESDAY","HID_USAGE_SENSORS_DAY_OF_WEEK_THURSDAY","HID_USAGE_SENSORS_DAY_OF_WEEK_FRIDAY","HID_USAGE_SENSORS_DAY_OF_WEEK_SATURDAY","HID_USAGE_SENSORS_KIND_CATEGORY","HID_USAGE_SENSORS_KIND_TYPE","HID_USAGE_SENSORS_KIND_EVENT","HID_USAGE_SENSORS_KIND_PROPERTY","HID_USAGE_SENSORS_KIND_DATA_FIELD","HID_USAGE_SENSORS_MAGNETOMETER_ACCURACY_LOW","HID_USAGE_SENSORS_MAGNETOMETER_ACCURACY_MEDIUM","HID_USAGE_SENSORS_MAGNETOMETER_ACCURACY_HIGH","HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_NOT_ROTATED","HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_ROTATED_90_DEGREES_CCW","HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_ROTATED_180_DEGREES_CCW","HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_ROTATED_270_DEGREES_CCW","HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_FACE_UP","HID_USAGE_SENSORS_SIMPLE_ORIENTATION_DIRECTION_FACE_DOWN","HID_USAGE_SENSORS_VT_NULL","HID_USAGE_SENSORS_VT_BOOL","HID_USAGE_SENSORS_VT_UI1","HID_USAGE_SENSORS_VT_I1","HID_USAGE_SENSORS_VT_UI2","HID_USAGE_SENSORS_VT_I2","HID_USAGE_SENSORS_VT_UI4","HID_USAGE_SENSORS_VT_I4","HID_USAGE_SENSORS_VT_UI8","HID_USAGE_SENSORS_VT_I8","HID_USAGE_SENSORS_VT_R4","HID_USAGE_SENSORS_VT_R8","HID_USAGE_SENSORS_VT_WSTR","HID_USAGE_SENSORS_VT_STR","HID_USAGE_SENSORS_VT_CLSID","HID_USAGE_SENSORS_VT_VECTOR_VT_UI1","HID_USAGE_SENSORS_VT_F16E0","HID_USAGE_SENSORS_VT_F16E1","HID_USAGE_SENSORS_VT_F16E2","HID_USAGE_SENSORS_VT_F16E3","HID_USAGE_SENSORS_VT_F16E4","HID_USAGE_SENSORS_VT_F16E5","HID_USAGE_SENSORS_VT_F16E6","HID_USAGE_SENSORS_VT_F16E7","HID_USAGE_SENSORS_VT_F16E8","HID_USAGE_SENSORS_VT_F16E9","HID_USAGE_SENSORS_VT_F16EA","HID_USAGE_SENSORS_VT_F16EB","HID_USAGE_SENSORS_VT_F16EC","HID_USAGE_SENSORS_VT_F16ED","HID_USAGE_SENSORS_VT_F16EE","HID_USAGE_SENSORS_VT_F16EF","HID_USAGE_SENSORS_VT_F32E0","HID_USAGE_SENSORS_VT_F32E1","HID_USAGE_SENSORS_VT_F32E2","HID_USAGE_SENSORS_VT_F32E3","HID_USAGE_SENSORS_VT_F32E4","HID_USAGE_SENSORS_VT_F32E5","HID_USAGE_SENSORS_VT_F32E6","HID_USAGE_SENSORS_VT_F32E7","HID_USAGE_SENSORS_VT_F32E8","HID_USAGE_SENSORS_VT_F32E9","HID_USAGE_SENSORS_VT_F32EA","HID_USAGE_SENSORS_VT_F32EB","HID_USAGE_SENSORS_VT_F32EC","HID_USAGE_SENSORS_VT_F32ED","HID_USAGE_SENSORS_VT_F32EE","HID_USAGE_SENSORS_VT_F32EF","HID_USAGE_SENSORS_ACTIVITY_TYPE_UNKNOWN","HID_USAGE_SENSORS_ACTIVITY_TYPE_STATIONARY","HID_USAGE_SENSORS_ACTIVITY_TYPE_FIDGETING","HID_USAGE_SENSORS_ACTIVITY_TYPE_WALKING","HID_USAGE_SENSORS_ACTIVITY_TYPE_RUNNING","HID_USAGE_SENSORS_ACTIVITY_TYPE_IN_VEHICLE","HID_USAGE_SENSORS_ACTIVITY_TYPE_BIKING","HID_USAGE_SENSORS_ACTIVITY_TYPE_IDLE","HID_USAGE_SENSORS_UNIT_NOT_SPECIFIED","HID_USAGE_SENSORS_UNIT_LUX","HID_USAGE_SENSORS_UNIT_DEGREES_KELVIN","HID_USAGE_SENSORS_UNIT_DEGREES_CELSIUS","HID_USAGE_SENSORS_UNIT_PASCAL","HID_USAGE_SENSORS_UNIT_NEWTON","HID_USAGE_SENSORS_UNIT_METERS_SECOND","HID_USAGE_SENSORS_UNIT_KILOGRAM","HID_USAGE_SENSORS_UNIT_METER","HID_USAGE_SENSORS_UNIT_METERS_SECOND_SECOND","HID_USAGE_SENSORS_UNIT_FARAD","HID_USAGE_SENSORS_UNIT_AMPERE","HID_USAGE_SENSORS_UNIT_WATT","HID_USAGE_SENSORS_UNIT_HENRY","HID_USAGE_SENSORS_UNIT_OHM","HID_USAGE_SENSORS_UNIT_VOLT","HID_USAGE_SENSORS_UNIT_HERTZ","HID_USAGE_SENSORS_UNIT_BAR","HID_USAGE_SENSORS_UNIT_DEGREES_ANTI_CLOCKWISE","HID_USAGE_SENSORS_UNIT_DEGREES_CLOCKWISE","HID_USAGE_SENSORS_UNIT_DEGREES","HID_USAGE_SENSORS_UNIT_DEGREES_SECOND","HID_USAGE_SENSORS_UNIT_DEGREES_SECOND_SECOND","HID_USAGE_SENSORS_UNIT_KNOT","HID_USAGE_SENSORS_UNIT_PERCENT","HID_USAGE_SENSORS_UNIT_SECOND","HID_USAGE_SENSORS_UNIT_MILLISECOND","HID_USAGE_SENSORS_UNIT_G","HID_USAGE_SENSORS_UNIT_BYTES","HID_USAGE_SENSORS_UNIT_MILLIGAUSS","HID_USAGE_SENSORS_UNIT_BITS","HID_USAGE_SENSORS_ACTIVITY_STATE_NO_STATE_CHANGE","HID_USAGE_SENSORS_ACTIVITY_STATE_START_ACTIVITY","HID_USAGE_SENSORS_ACTIVITY_STATE_END_ACTIVITY","HID_USAGE_SENSORS_EXPONENT_0","HID_USAGE_SENSORS_EXPONENT_1","HID_USAGE_SENSORS_EXPONENT_2","HID_USAGE_SENSORS_EXPONENT_3","HID_USAGE_SENSORS_EXPONENT_4","HID_USAGE_SENSORS_EXPONENT_5","HID_USAGE_SENSORS_EXPONENT_6","HID_USAGE_SENSORS_EXPONENT_7","HID_USAGE_SENSORS_EXPONENT_8","HID_USAGE_SENSORS_EXPONENT_9","HID_USAGE_SENSORS_EXPONENT_A","HID_USAGE_SENSORS_EXPONENT_B","HID_USAGE_SENSORS_EXPONENT_C","HID_USAGE_SENSORS_EXPONENT_D","HID_USAGE_SENSORS_EXPONENT_E","HID_USAGE_SENSORS_EXPONENT_F","HID_USAGE_SENSORS_DEVICE_POSITION_UNKNOWN","HID_USAGE_SENSORS_DEVICE_POSITION_UNCHANGED","HID_USAGE_SENSORS_DEVICE_POSITION_ON_DESK","HID_USAGE_SENSORS_DEVICE_POSITION_IN_HAND","HID_USAGE_SENSORS_DEVICE_POSITION_MOVING_IN_BAG","HID_USAGE_SENSORS_DEVICE_POSITION_STATIONARY_IN_BAG","HID_USAGE_SENSORS_STEP_TYPE_UNKNOWN","HID_USAGE_SENSORS_STEP_TYPE_RUNNING","HID_USAGE_SENSORS_STEP_TYPE_WALKING","HID_USAGE_SENSORS_GESTURE_STATE_UNKNOWN","HID_USAGE_SENSORS_GESTURE_STATE_STARTED","HID_USAGE_SENSORS_GESTURE_STATE_COMPLETED","HID_USAGE_SENSORS_GESTURE_STATE_CANCELLED","HID_USAGE_SENSORS_HINGE_FOLD_CONTRIBUTING_PANEL_UNKNOWN","HID_USAGE_SENSORS_HINGE_FOLD_CONTRIBUTING_PANEL_PANEL_1","HID_USAGE_SENSORS_HINGE_FOLD_CONTRIBUTING_PANEL_PANEL_2","HID_USAGE_SENSORS_HINGE_FOLD_CONTRIBUTING_PANEL_BOTH","HID_USAGE_SENSORS_HINGE_FOLD_TYPE_UNKNOWN","HID_USAGE_SENSORS_HINGE_FOLD_TYPE_INCREASING","HID_USAGE_SENSORS_HINGE_FOLD_TYPE_DECREASING","HID_USAGE_SENSORS_MODIFIER_CHANGE_SENSITIVITY_ABSOLUTE","HID_USAGE_SENSORS_MODIFIER_MAXIMUM","HID_USAGE_SENSORS_MODIFIER_MINIMUM","HID_USAGE_SENSORS_MODIFIER_ACCURACY","HID_USAGE_SENSORS_MODIFIER_RESOLUTION","HID_USAGE_SENSORS_MODIFIER_THRESHOLD_HIGH","HID_USAGE_SENSORS_MODIFIER_THRESHOLD_LOW","HID_USAGE_SENSORS_MODIFIER_CALIBRATION_OFFSET","HID_USAGE_SENSORS_MODIFIER_CALIBRATION_MULTIPLIER","HID_USAGE_SENSORS_MODIFIER_REPORT_INTERVAL","HID_USAGE_SENSORS_MODIFIER_FREQUENCY_MAX","HID_USAGE_SENSORS_MODIFIER_PERIOD_MAX","HID_USAGE_SENSORS_MODIFIER_CHANGE_SENSITIVITY_PERCENT_OF_RANGE","HID_USAGE_SENSORS_MODIFIER_CHANGE_SENSITIVITY_PERCENT_RELATIVE","HID_USAGE_MEDICAL_UNDEFINED","HID_USAGE_MEDICAL_MEDICAL_ULTRASOUND","HID_USAGE_MEDICAL_VCR_ACQUISITION","HID_USAGE_MEDICAL_FREEZE_THAW","HID_USAGE_MEDICAL_CLIP_STORE","HID_USAGE_MEDICAL_UPDATE","HID_USAGE_MEDICAL_NEXT","HID_USAGE_MEDICAL_SAVE","HID_USAGE_MEDICAL_PRINT","HID_USAGE_MEDICAL_MICROPHONE_ENABLE","HID_USAGE_MEDICAL_CINE","HID_USAGE_MEDICAL_TRANSMIT_POWER","HID_USAGE_MEDICAL_VOLUME","HID_USAGE_MEDICAL_FOCUS","HID_USAGE_MEDICAL_DEPTH","HID_USAGE_MEDICAL_SOFT_STEP_MINUS_PRIMARY","HID_USAGE_MEDICAL_SOFT_STEP_MINUS_SECONDARY","HID_USAGE_MEDICAL_DEPTH_GAIN_COMPENSATION","HID_USAGE_MEDICAL_ZOOM_SELECT","HID_USAGE_MEDICAL_ZOOM_ADJUST","HID_USAGE_MEDICAL_SPECTRAL_DOPPLER_MODE_SELECT","HID_USAGE_MEDICAL_SPECTRAL_DOPPLER_ADJUST","HID_USAGE_MEDICAL_COLOR_DOPPLER_MODE_SELECT","HID_USAGE_MEDICAL_COLOR_DOPPLER_ADJUST","HID_USAGE_MEDICAL_MOTION_MODE_SELECT","HID_USAGE_MEDICAL_MOTION_MODE_ADJUST","HID_USAGE_MEDICAL_2_D_MODE_SELECT","HID_USAGE_MEDICAL_2_D_MODE_ADJUST","HID_USAGE_MEDICAL_SOFT_CONTROL_SELECT","HID_USAGE_MEDICAL_SOFT_CONTROL_ADJUST","HID_USAGE_BRAILLE_UNDEFINED","HID_USAGE_BRAILLE_BRAILLE_DISPLAY","HID_USAGE_BRAILLE_BRAILLE_ROW","HID_USAGE_BRAILLE_8_DOT_BRAILLE_CELL","HID_USAGE_BRAILLE_6_DOT_BRAILLE_CELL","HID_USAGE_BRAILLE_NUMBER_OF_BRAILLE_CELLS","HID_USAGE_BRAILLE_SCREEN_READER_CONTROL","HID_USAGE_BRAILLE_SCREEN_READER_IDENTIFIER","HID_USAGE_BRAILLE_ROUTER_SET_1","HID_USAGE_BRAILLE_ROUTER_SET_2","HID_USAGE_BRAILLE_ROUTER_SET_3","HID_USAGE_BRAILLE_ROUTER_KEY","HID_USAGE_BRAILLE_ROW_ROUTER_KEY","HID_USAGE_BRAILLE_BRAILLE_BUTTONS","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_DOT_1","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_DOT_2","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_DOT_3","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_DOT_4","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_DOT_5","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_DOT_6","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_DOT_7","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_DOT_8","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_SPACE","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_LEFT_SPACE","HID_USAGE_BRAILLE_BRAILLE_KEYBOARD_RIGHT_SPACE","HID_USAGE_BRAILLE_BRAILLE_FACE_CONTROLS","HID_USAGE_BRAILLE_BRAILLE_LEFT_CONTROLS","HID_USAGE_BRAILLE_BRAILLE_RIGHT_CONTROLS","HID_USAGE_BRAILLE_BRAILLE_TOP_CONTROLS","HID_USAGE_BRAILLE_BRAILLE_JOYSTICK_CENTER","HID_USAGE_BRAILLE_BRAILLE_JOYSTICK_UP","HID_USAGE_BRAILLE_BRAILLE_JOYSTICK_DOWN","HID_USAGE_BRAILLE_BRAILLE_JOYSTICK_LEFT","HID_USAGE_BRAILLE_BRAILLE_JOYSTICK_RIGHT","HID_USAGE_BRAILLE_BRAILLE_D_PAD_CENTER","HID_USAGE_BRAILLE_BRAILLE_D_PAD_UP","HID_USAGE_BRAILLE_BRAILLE_D_PAD_DOWN","HID_USAGE_BRAILLE_BRAILLE_D_PAD_LEFT","HID_USAGE_BRAILLE_BRAILLE_D_PAD_RIGHT","HID_USAGE_BRAILLE_BRAILLE_PAN_LEFT","HID_USAGE_BRAILLE_BRAILLE_PAN_RIGHT","HID_USAGE_BRAILLE_BRAILLE_ROCKER_UP","HID_USAGE_BRAILLE_BRAILLE_ROCKER_DOWN","HID_USAGE_BRAILLE_BRAILLE_ROCKER_PRESS","HID_USAGE_LIGHT_UNDEFINED","HID_USAGE_LIGHT_LAMP_ARRAY","HID_USAGE_LIGHT_LAMP_ARRAY_ATTRIBUTES_REPORT","HID_USAGE_LIGHT_LAMP_COUNT","HID_USAGE_LIGHT_BOUNDING_BOX_WIDTH_IN_MICROMETERS","HID_USAGE_LIGHT_BOUNDING_BOX_HEIGHT_IN_MICROMETERS","HID_USAGE_LIGHT_BOUNDING_BOX_DEPTH_IN_MICROMETERS","HID_USAGE_LIGHT_LAMP_ARRAY_KIND","HID_USAGE_LIGHT_MIN_UPDATE_INTERVAL_IN_MICROSECONDS","HID_USAGE_LIGHT_LAMP_ATTRIBUTES_REQUEST_REPORT","HID_USAGE_LIGHT_LAMP_ID","HID_USAGE_LIGHT_LAMP_ATTRIBUTES_RESPONSE_REPORT","HID_USAGE_LIGHT_POSITION_X_IN_MICROMETERS","HID_USAGE_LIGHT_POSITION_Y_IN_MICROMETERS","HID_USAGE_LIGHT_POSITION_Z_IN_MICROMETERS","HID_USAGE_LIGHT_LAMP_PURPOSES","HID_USAGE_LIGHT_UPDATE_LATENCY_IN_MICROSECONDS","HID_USAGE_LIGHT_RED_LEVEL_COUNT","HID_USAGE_LIGHT_GREEN_LEVEL_COUNT","HID_USAGE_LIGHT_BLUE_LEVEL_COUNT","HID_USAGE_LIGHT_INTENSITY_LEVEL_COUNT","HID_USAGE_LIGHT_IS_PROGRAMMABLE","HID_USAGE_LIGHT_INPUT_BINDING","HID_USAGE_LIGHT_LAMP_MULTI_UPDATE_REPORT","HID_USAGE_LIGHT_RED_UPDATE_CHANNEL","HID_USAGE_LIGHT_GREEN_UPDATE_CHANNEL","HID_USAGE_LIGHT_BLUE_UPDATE_CHANNEL","HID_USAGE_LIGHT_INTENSITY_UPDATE_CHANNEL","HID_USAGE_LIGHT_LAMP_UPDATE_FLAGS","HID_USAGE_LIGHT_LAMP_RANGE_UPDATE_REPORT","HID_USAGE_LIGHT_LAMP_ID_START","HID_USAGE_LIGHT_LAMP_ID_END","HID_USAGE_LIGHT_LAMP_ARRAY_CONTROL_REPORT","HID_USAGE_LIGHT_AUTONOMOUS_MODE","HID_USAGE_MONITOR_MONITOR_CONTROL","HID_USAGE_MONITOR_EDID_INFORMATION","HID_USAGE_MONITOR_VDIF_INFORMATION","HID_USAGE_MONITOR_VESA_VERSION","HID_USAGE_MONITOR_VESA_BRIGHTNESS","HID_USAGE_MONITOR_VESA_CONTRAST","HID_USAGE_MONITOR_VESA_RED_VIDEO_GAIN","HID_USAGE_MONITOR_VESA_GREEN_VIDEO_GAIN","HID_USAGE_MONITOR_VESA_BLUE_VIDEO_GAIN","HID_USAGE_MONITOR_VESA_FOCUS","HID_USAGE_MONITOR_VESA_HORIZONTAL_POSITION","HID_USAGE_MONITOR_VESA_HORIZONTAL_SIZE","HID_USAGE_MONITOR_VESA_HORIZONTAL_PINCUSHION","HID_USAGE_MONITOR_VESA_HORIZONTAL_PINCUSHION_BALANCE","HID_USAGE_MONITOR_VESA_HORIZONTAL_MISCONVERGENCE","HID_USAGE_MONITOR_VESA_HORIZONTAL_LINEARITY","HID_USAGE_MONITOR_VESA_HORIZONTAL_LINEARITY_BALANCE","HID_USAGE_MONITOR_VESA_VERTICAL_POSITION","HID_USAGE_MONITOR_VESA_VERTICAL_SIZE","HID_USAGE_MONITOR_VESA_VERTICAL_PINCUSHION","HID_USAGE_MONITOR_VESA_VERTICAL_PINCUSHION_BALANCE","HID_USAGE_MONITOR_VESA_VERTICAL_MISCONVERGENCE","HID_USAGE_MONITOR_VESA_VERTICAL_LINEARITY","HID_USAGE_MONITOR_VESA_VERTICAL_LINEARITY_BALANCE","HID_USAGE_MONITOR_VESA_PARALLELOGRAM_DISTORTION_KEY_BALANCE","HID_USAGE_MONITOR_VESA_TRAPEZOIDAL_DISTORTION_KEY","HID_USAGE_MONITOR_VESA_TILT_ROTATION","HID_USAGE_MONITOR_VESA_TOP_CORNER_DISTORTION_CONTROL","HID_USAGE_MONITOR_VESA_TOP_CORNER_DISTORTION_BALANCE","HID_USAGE_MONITOR_VESA_BOTTOM_CORNER_DISTORTION_CONTROL","HID_USAGE_MONITOR_VESA_BOTTOM_CORNER_DISTORTION_BALANCE","HID_USAGE_MONITOR_VESA_HORIZONTAL_MOIR","HID_USAGE_MONITOR_VESA_VERTICAL_MOIR","HID_USAGE_MONITOR_VESA_RED_VIDEO_BLACK_LEVEL","HID_USAGE_MONITOR_VESA_GREEN_VIDEO_BLACK_LEVEL","HID_USAGE_MONITOR_VESA_BLUE_VIDEO_BLACK_LEVEL","HID_USAGE_MONITOR_VESA_INPUT_LEVEL_SELECT","HID_USAGE_MONITOR_VESA_INPUT_SOURCE_SELECT","HID_USAGE_MONITOR_VESA_ON_SCREEN_DISPLAY","HID_USAGE_MONITOR_VESA_STEREOMODE","HID_USAGE_MONITOR_VESA_AUTO_SIZE_CENTER","HID_USAGE_MONITOR_VESA_POLARITY_HORIZONTAL_SYNCHRONIZATION","HID_USAGE_MONITOR_VESA_POLARITY_VERTICAL_SYNCHRONIZATION","HID_USAGE_MONITOR_VESA_SYNCHRONIZATION_TYPE","HID_USAGE_MONITOR_VESA_SCREEN_ORIENTATION","HID_USAGE_MONITOR_VESA_HORIZONTAL_FREQUENCY","HID_USAGE_MONITOR_VESA_VERTICAL_FREQUENCY","HID_USAGE_MONITOR_VESA_DEGAUSS","HID_USAGE_MONITOR_VESA_SETTINGS","HID_USAGE_POS_BARCODE_UNDEFINED","HID_USAGE_POS_BARCODE_BAR_CODE_BADGE_READER","HID_USAGE_POS_BARCODE_BAR_CODE_SCANNER","HID_USAGE_POS_BARCODE_DUMB_BAR_CODE_SCANNER","HID_USAGE_POS_BARCODE_CORDLESS_SCANNER_BASE","HID_USAGE_POS_BARCODE_BAR_CODE_SCANNER_CRADLE","HID_USAGE_POS_BARCODE_ATTRIBUTE_REPORT","HID_USAGE_POS_BARCODE_SETTINGS_REPORT","HID_USAGE_POS_BARCODE_SCANNED_DATA_REPORT","HID_USAGE_POS_BARCODE_RAW_SCANNED_DATA_REPORT","HID_USAGE_POS_BARCODE_TRIGGER_REPORT","HID_USAGE_POS_BARCODE_STATUS_REPORT","HID_USAGE_POS_BARCODE_UPC_EAN_CONTROL_REPORT","HID_USAGE_POS_BARCODE_EAN_2_3_LABEL_CONTROL_REPORT","HID_USAGE_POS_BARCODE_CODE_39_CONTROL_REPORT","HID_USAGE_POS_BARCODE_INTERLEAVED_2_OF_5_CONTROL_REPORT","HID_USAGE_POS_BARCODE_STANDARD_2_OF_5_CONTROL_REPORT","HID_USAGE_POS_BARCODE_MSI_PLESSEY_CONTROL_REPORT","HID_USAGE_POS_BARCODE_CODABAR_CONTROL_REPORT","HID_USAGE_POS_BARCODE_CODE_128_CONTROL_REPORT","HID_USAGE_POS_BARCODE_MISC_1D_CONTROL_REPORT","HID_USAGE_POS_BARCODE_2D_CONTROL_REPORT","HID_USAGE_POS_BARCODE_AIMING_POINTER_MODE","HID_USAGE_POS_BARCODE_BAR_CODE_PRESENT_SENSOR","HID_USAGE_POS_BARCODE_CLASS_1A_LASER","HID_USAGE_POS_BARCODE_CLASS_2_LASER","HID_USAGE_POS_BARCODE_HEATER_PRESENT","HID_USAGE_POS_BARCODE_CONTACT_SCANNER","HID_USAGE_POS_BARCODE_ELECTRONIC_ARTICLE_SURVEILLANCE_NOTIFICATION","HID_USAGE_POS_BARCODE_CONSTANT_ELECTRONIC_ARTICLE_SURVEILLANCE","HID_USAGE_POS_BARCODE_ERROR_INDICATION","HID_USAGE_POS_BARCODE_FIXED_BEEPER","HID_USAGE_POS_BARCODE_GOOD_DECODE_INDICATION","HID_USAGE_POS_BARCODE_HANDS_FREE_SCANNING","HID_USAGE_POS_BARCODE_INTRINSICALLY_SAFE","HID_USAGE_POS_BARCODE_KLASSE_EINS_LASER","HID_USAGE_POS_BARCODE_LONG_RANGE_SCANNER","HID_USAGE_POS_BARCODE_MIRROR_SPEED_CONTROL","HID_USAGE_POS_BARCODE_NOT_ON_FILE_INDICATION","HID_USAGE_POS_BARCODE_PROGRAMMABLE_BEEPER","HID_USAGE_POS_BARCODE_TRIGGERLESS","HID_USAGE_POS_BARCODE_WAND","HID_USAGE_POS_BARCODE_WATER_RESISTANT","HID_USAGE_POS_BARCODE_MULTI_RANGE_SCANNER","HID_USAGE_POS_BARCODE_PROXIMITY_SENSOR","HID_USAGE_POS_BARCODE_FRAGMENT_DECODING","HID_USAGE_POS_BARCODE_SCANNER_READ_CONFIDENCE","HID_USAGE_POS_BARCODE_DATA_PREFIX","HID_USAGE_POS_BARCODE_PREFIX_AIMI","HID_USAGE_POS_BARCODE_PREFIX_NONE","HID_USAGE_POS_BARCODE_PREFIX_PROPRIETARY","HID_USAGE_POS_BARCODE_ACTIVE_TIME","HID_USAGE_POS_BARCODE_AIMING_LASER_PATTERN","HID_USAGE_POS_BARCODE_BAR_CODE_PRESENT","HID_USAGE_POS_BARCODE_BEEPER_STATE","HID_USAGE_POS_BARCODE_LASER_ON_TIME","HID_USAGE_POS_BARCODE_LASER_STATE","HID_USAGE_POS_BARCODE_LOCKOUT_TIME","HID_USAGE_POS_BARCODE_MOTOR_STATE","HID_USAGE_POS_BARCODE_MOTOR_TIMEOUT","HID_USAGE_POS_BARCODE_POWER_ON_RESET_SCANNER","HID_USAGE_POS_BARCODE_PREVENT_READ_OF_BARCODES","HID_USAGE_POS_BARCODE_INITIATE_BARCODE_READ","HID_USAGE_POS_BARCODE_TRIGGER_STATE","HID_USAGE_POS_BARCODE_TRIGGER_MODE","HID_USAGE_POS_BARCODE_TRIGGER_MODE_BLINKING_LASER_ON","HID_USAGE_POS_BARCODE_TRIGGER_MODE_CONTINUOUS_LASER_ON","HID_USAGE_POS_BARCODE_TRIGGER_MODE_LASER_ON_WHILE_PULLED","HID_USAGE_POS_BARCODE_TRIGGER_MODE_LASER_STAYS_ON_AFTER_TRIGGER_RELEASE","HID_USAGE_POS_BARCODE_COMMIT_PARAMETERS_TO_NVM","HID_USAGE_POS_BARCODE_PARAMETER_SCANNING","HID_USAGE_POS_BARCODE_PARAMETERS_CHANGED","HID_USAGE_POS_BARCODE_SET_PARAMETER_DEFAULT_VALUES","HID_USAGE_POS_BARCODE_SCANNER_IN_CRADLE","HID_USAGE_POS_BARCODE_SCANNER_IN_RANGE","HID_USAGE_POS_BARCODE_AIM_DURATION","HID_USAGE_POS_BARCODE_GOOD_READ_LAMP_DURATION","HID_USAGE_POS_BARCODE_GOOD_READ_LAMP_INTENSITY","HID_USAGE_POS_BARCODE_GOOD_READ_LED","HID_USAGE_POS_BARCODE_GOOD_READ_TONE_FREQUENCY","HID_USAGE_POS_BARCODE_GOOD_READ_TONE_LENGTH","HID_USAGE_POS_BARCODE_GOOD_READ_TONE_VOLUME","HID_USAGE_POS_BARCODE_NO_READ_MESSAGE","HID_USAGE_POS_BARCODE_NOT_ON_FILE_VOLUME","HID_USAGE_POS_BARCODE_POWERUP_BEEP","HID_USAGE_POS_BARCODE_SOUND_ERROR_BEEP","HID_USAGE_POS_BARCODE_SOUND_GOOD_READ_BEEP","HID_USAGE_POS_BARCODE_SOUND_NOT_ON_FILE_BEEP","HID_USAGE_POS_BARCODE_GOOD_READ_WHEN_TO_WRITE","HID_USAGE_POS_BARCODE_GRWTI_AFTER_DECODE","HID_USAGE_POS_BARCODE_GRWTI_BEEP_LAMP_AFTER_TRANSMIT","HID_USAGE_POS_BARCODE_GRWTI_NO_BEEP_LAMP_USE_AT_ALL","HID_USAGE_POS_BARCODE_BOOKLAND_EAN","HID_USAGE_POS_BARCODE_CONVERT_EAN_8_TO_13_TYPE","HID_USAGE_POS_BARCODE_CONVERT_UPC_A_TO_EAN_13","HID_USAGE_POS_BARCODE_CONVERT_UPC_E_TO_A","HID_USAGE_POS_BARCODE_EAN_13","HID_USAGE_POS_BARCODE_EAN_8","HID_USAGE_POS_BARCODE_EAN_99_128_MANDATORY","HID_USAGE_POS_BARCODE_EAN_99_P5_128_OPTIONAL","HID_USAGE_POS_BARCODE_UPC_EAN","HID_USAGE_POS_BARCODE_UPC_EAN_COUPON_CODE","HID_USAGE_POS_BARCODE_UPC_EAN_PERIODICALS","HID_USAGE_POS_BARCODE_UPC_A","HID_USAGE_POS_BARCODE_UPC_A_WITH_128_MANDATORY","HID_USAGE_POS_BARCODE_UPC_A_WITH_128_OPTIONAL","HID_USAGE_POS_BARCODE_UPC_A_WITH_P5_OPTIONAL","HID_USAGE_POS_BARCODE_UPC_E","HID_USAGE_POS_BARCODE_UPC_E1","HID_USAGE_POS_BARCODE_PERIODICAL","HID_USAGE_POS_BARCODE_PERIODICAL_AUTO_DISCRIMINATE_PLUS_2","HID_USAGE_POS_BARCODE_PERIODICAL_ONLY_DECODE_WITH_PLUS_2","HID_USAGE_POS_BARCODE_PERIODICAL_IGNORE_PLUS_2","HID_USAGE_POS_BARCODE_PERIODICAL_AUTO_DISCRIMINATE_PLUS_5","HID_USAGE_POS_BARCODE_PERIODICAL_ONLY_DECODE_WITH_PLUS_5","HID_USAGE_POS_BARCODE_PERIODICAL_IGNORE_PLUS_5","HID_USAGE_POS_BARCODE_CHECK","HID_USAGE_POS_BARCODE_CHECK_DISABLE_PRICE","HID_USAGE_POS_BARCODE_CHECK_ENABLE_4_DIGIT_PRICE","HID_USAGE_POS_BARCODE_CHECK_ENABLE_5_DIGIT_PRICE","HID_USAGE_POS_BARCODE_CHECK_ENABLE_EUROPEAN_4_DIGIT_PRICE","HID_USAGE_POS_BARCODE_CHECK_ENABLE_EUROPEAN_5_DIGIT_PRICE","HID_USAGE_POS_BARCODE_EAN_TWO_LABEL","HID_USAGE_POS_BARCODE_EAN_THREE_LABEL","HID_USAGE_POS_BARCODE_EAN_8_FLAG_DIGIT_1","HID_USAGE_POS_BARCODE_EAN_8_FLAG_DIGIT_2","HID_USAGE_POS_BARCODE_EAN_8_FLAG_DIGIT_3","HID_USAGE_POS_BARCODE_EAN_13_FLAG_DIGIT_1","HID_USAGE_POS_BARCODE_EAN_13_FLAG_DIGIT_2","HID_USAGE_POS_BARCODE_TRANSMIT_CHECK_DIGIT","HID_USAGE_POS_BARCODE_DISABLE_CHECK_DIGIT_TRANSMIT","HID_USAGE_POS_BARCODE_ENABLE_CHECK_DIGIT_TRANSMIT","HID_USAGE_POS_BARCODE_SYMBOLOGY_IDENTIFIER_1","HID_USAGE_POS_BARCODE_SYMBOLOGY_IDENTIFIER_2","HID_USAGE_POS_BARCODE_SYMBOLOGY_IDENTIFIER_3","HID_USAGE_POS_BARCODE_DECODED_DATA","HID_USAGE_POS_BARCODE_DECODE_DATA_CONTINUED","HID_USAGE_POS_BARCODE_BAR_SPACE_DATA","HID_USAGE_POS_BARCODE_SCANNER_DATA_ACCURACY","HID_USAGE_POS_BARCODE_RAW_DATA_POLARITY","HID_USAGE_POS_BARCODE_POLARITY_INVERTED_BAR_CODE","HID_USAGE_POS_BARCODE_POLARITY_NORMAL_BAR_CODE","HID_USAGE_POS_BARCODE_MINIMUM_LENGTH_TO_DECODE","HID_USAGE_POS_BARCODE_MAXIMUM_LENGTH_TO_DECODE","HID_USAGE_POS_BARCODE_FIRST_DISCRETE_LENGTH_TO_DECODE","HID_USAGE_POS_BARCODE_SECOND_DISCRETE_LENGTH_TO_DECODE","HID_USAGE_POS_BARCODE_DATA_LENGTH_METHOD","HID_USAGE_POS_BARCODE_DL_METHOD_READ_ANY","HID_USAGE_POS_BARCODE_DL_METHOD_CHECK_IN_RANGE","HID_USAGE_POS_BARCODE_DL_METHOD_CHECK_FOR_DISCRETE","HID_USAGE_POS_BARCODE_AZTEC_CODE","HID_USAGE_POS_BARCODE_BC412","HID_USAGE_POS_BARCODE_CHANNEL_CODE","HID_USAGE_POS_BARCODE_CODE_16","HID_USAGE_POS_BARCODE_CODE_32","HID_USAGE_POS_BARCODE_CODE_49","HID_USAGE_POS_BARCODE_CODE_ONE","HID_USAGE_POS_BARCODE_COLORCODE","HID_USAGE_POS_BARCODE_DATA_MATRIX","HID_USAGE_POS_BARCODE_MAXICODE","HID_USAGE_POS_BARCODE_MICROPDF","HID_USAGE_POS_BARCODE_PDF_417","HID_USAGE_POS_BARCODE_POSICODE","HID_USAGE_POS_BARCODE_QR_CODE","HID_USAGE_POS_BARCODE_SUPERCODE","HID_USAGE_POS_BARCODE_ULTRACODE","HID_USAGE_POS_BARCODE_USD_5_SLUG_CODE","HID_USAGE_POS_BARCODE_VERICODE","HID_USAGE_POS_SCALE_UNDEFINED","HID_USAGE_POS_SCALE_WEIGHING_DEVICE","HID_USAGE_POS_SCALE_SCALE_DEVICE","HID_USAGE_POS_SCALE_SCALE_CLASS_I_METRIC","HID_USAGE_POS_SCALE_SCALE_CLASS_I_METRIC_2","HID_USAGE_POS_SCALE_SCALE_CLASS_II_METRIC","HID_USAGE_POS_SCALE_SCALE_CLASS_III_METRIC","HID_USAGE_POS_SCALE_SCALE_CLASS_IIIL_METRIC","HID_USAGE_POS_SCALE_SCALE_CLASS_IV_METRIC","HID_USAGE_POS_SCALE_SCALE_CLASS_III_ENGLISH","HID_USAGE_POS_SCALE_SCALE_CLASS_IIIL_ENGLISH","HID_USAGE_POS_SCALE_SCALE_CLASS_IV_ENGLISH","HID_USAGE_POS_SCALE_SCALE_CLASS_GENERIC","HID_USAGE_POS_SCALE_SCALE_ATTRIBUTE_REPORT","HID_USAGE_POS_SCALE_SCALE_CONTROL_REPORT","HID_USAGE_POS_SCALE_SCALE_DATA_REPORT","HID_USAGE_POS_SCALE_SCALE_STATUS_REPORT","HID_USAGE_POS_SCALE_SCALE_WEIGHT_LIMIT_REPORT","HID_USAGE_POS_SCALE_SCALE_STATISTICS_REPORT","HID_USAGE_POS_SCALE_DATA_WEIGHT","HID_USAGE_POS_SCALE_DATA_SCALING","HID_USAGE_POS_SCALE_WEIGHT_UNIT","HID_USAGE_POS_SCALE_WEIGHT_UNIT_MILLIGRAM","HID_USAGE_POS_SCALE_WEIGHT_UNIT_GRAM","HID_USAGE_POS_SCALE_WEIGHT_UNIT_KILOGRAM","HID_USAGE_POS_SCALE_WEIGHT_UNIT_CARATS","HID_USAGE_POS_SCALE_WEIGHT_UNIT_TAELS","HID_USAGE_POS_SCALE_WEIGHT_UNIT_GRAINS","HID_USAGE_POS_SCALE_WEIGHT_UNIT_PENNYWEIGHTS","HID_USAGE_POS_SCALE_WEIGHT_UNIT_METRIC_TON","HID_USAGE_POS_SCALE_WEIGHT_UNIT_AVOIR_TON","HID_USAGE_POS_SCALE_WEIGHT_UNIT_TROY_OUNCE","HID_USAGE_POS_SCALE_WEIGHT_UNIT_OUNCE","HID_USAGE_POS_SCALE_WEIGHT_UNIT_POUND","HID_USAGE_POS_SCALE_CALIBRATION_COUNT","HID_USAGE_POS_SCALE_RE_ZERO_COUNT","HID_USAGE_POS_SCALE_SCALE_STATUS","HID_USAGE_POS_SCALE_SCALE_STATUS_FAULT","HID_USAGE_POS_SCALE_SCALE_STATUS_STABLE_AT_CENTER_OF_ZERO","HID_USAGE_POS_SCALE_SCALE_STATUS_IN_MOTION","HID_USAGE_POS_SCALE_SCALE_STATUS_WEIGHT_STABLE","HID_USAGE_POS_SCALE_SCALE_STATUS_UNDER_ZERO","HID_USAGE_POS_SCALE_SCALE_STATUS_OVER_WEIGHT_LIMIT","HID_USAGE_POS_SCALE_SCALE_STATUS_REQUIRES_CALIBRATION","HID_USAGE_POS_SCALE_SCALE_STATUS_REQUIRES_RE_ZEROING","HID_USAGE_POS_SCALE_ZERO_SCALE","HID_USAGE_POS_SCALE_ENFORCED_ZERO_RETURN","HID_USAGE_POS_MSR_UNDEFINED","HID_USAGE_POS_MSR_MSR_DEVICE_READ_ONLY","HID_USAGE_POS_MSR_TRACK_1_LENGTH","HID_USAGE_POS_MSR_TRACK_2_LENGTH","HID_USAGE_POS_MSR_TRACK_3_LENGTH","HID_USAGE_POS_MSR_TRACK_JIS_LENGTH","HID_USAGE_POS_MSR_TRACK_DATA","HID_USAGE_POS_MSR_TRACK_1_DATA","HID_USAGE_POS_MSR_TRACK_2_DATA","HID_USAGE_POS_MSR_TRACK_3_DATA","HID_USAGE_POS_MSR_TRACK_JIS_DATA","HID_USAGE_CAMERA_UNDEFINED","HID_USAGE_CAMERA_CAMERA_AUTO_FOCUS","HID_USAGE_CAMERA_CAMERA_SHUTTER","HID_USAGE_FIDO_UNDEFINED","HID_USAGE_FIDO_U2F_AUTHENTICATOR_DEVICE","HID_USAGE_FIDO_INPUT_REPORT_DATA","HID_USAGE_FIDO_OUTPUT_REPORT_DATA","ZMK_HID_USAGE","ZMK_HID_USAGE_ID","ZMK_HID_USAGE_PAGE","USAGE_KEYPAD","USAGE_CONSUMER","HID_USAGE_GD","HID_USAGE_SIM","HID_USAGE_VR","HID_USAGE_SPORT","HID_USAGE_GAME","HID_USAGE_GDV","HID_USAGE_KEY","HID_USAGE_LED","HID_USAGE_TELEPHONY","HID_USAGE_CONSUMER","HID_USAGE_DIGITIZERS","HID_USAGE_HAPTICS","HID_USAGE_PID","HID_USAGE_EHT","HID_USAGE_AUXDISP","HID_USAGE_SENSORS","HID_USAGE_MEDICAL","HID_USAGE_BRAILLE","HID_USAGE_LIGHT","HID_USAGE_MONITOR","HID_USAGE_MONITOR_VALUES","HID_USAGE_MONITOR_VESA","HID_USAGE_POWER","HID_USAGE_POS_BARCODE","HID_USAGE_POS_SCALE","HID_USAGE_POS_MSR","HID_USAGE_POS_RESV","HID_USAGE_CAMERA","HID_USAGE_ARCADE","HID_USAGE_GAMING","HID_USAGE_FIDO","SYSTEM_POWER","SYS_PWR","SYSTEM_SLEEP","SYS_SLEEP","SYSTEM_WAKE_UP","SYS_WAKE","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","NUMBER_1","N1","NUM_1","EXCLAMATION","EXCL","BANG","NUMBER_2","N2","NUM_2","AT_SIGN","AT","ATSN","NUMBER_3","N3","NUM_3","HASH","POUND","NUMBER_4","N4","NUM_4","DOLLAR","DLLR","NUMBER_5","N5","NUM_5","PERCENT","PRCNT","PRCT","NUMBER_6","N6","NUM_6","CARET","CRRT","NUMBER_7","N7","NUM_7","AMPERSAND","AMPS","NUMBER_8","N8","NUM_8","ASTERISK","ASTRK","STAR","NUMBER_9","N9","NUM_9","LEFT_PARENTHESIS","LPAR","LPRN","NUMBER_0","N0","NUM_0","RIGHT_PARENTHESIS","RPAR","RPRN","RETURN","ENTER","RET","ESCAPE","ESC","BACKSPACE","BSPC","BKSP","TAB","SPACE","SPC","MINUS","UNDERSCORE","UNDER","EQUAL","EQL","PLUS","LEFT_BRACKET","LBKT","LEFT_BRACE","LBRC","LCUR","RIGHT_BRACKET","RBKT","RIGHT_BRACE","RBRC","RCUR","BACKSLASH","BSLH","PIPE","NON_US_HASH","NUHS","TILDE2","SEMICOLON","SEMI","SCLN","COLON","COLN","SINGLE_QUOTE","SQT","APOSTROPHE","APOS","QUOT","DOUBLE_QUOTES","DQT","GRAVE","GRAV","TILDE","TILD","COMMA","CMMA","LESS_THAN","LT","LABT","PERIOD","DOT","GREATER_THAN","GT","RABT","SLASH","FSLH","QUESTION","QMARK","CAPSLOCK","CAPS","CLCK","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","PRINTSCREEN","PSCRN","PRSC","SCROLLLOCK","SLCK","SCLK","PAUSE_BREAK","PAUS","INSERT","INS","HOME","PAGE_UP","PG_UP","PGUP","DELETE","DEL","END","PAGE_DOWN","PG_DN","PGDN","RIGHT_ARROW","RIGHT","RARW","LEFT_ARROW","LEFT","LARW","DOWN_ARROW","DOWN","DARW","UP_ARROW","UP","UARW","KP_NUMLOCK","KP_NUM","KP_NLCK","CLEAR2","KP_DIVIDE","KP_SLASH","KDIV","KP_MULTIPLY","KP_ASTERISK","KMLT","KP_MINUS","KP_SUBTRACT","KMIN","KP_PLUS","KPLS","KP_ENTER","KP_NUMBER_1","KP_N1","KP_NUMBER_2","KP_N2","KP_NUMBER_3","KP_N3","KP_NUMBER_4","KP_N4","KP_NUMBER_5","KP_N5","KP_NUMBER_6","KP_N6","KP_NUMBER_7","KP_N7","KP_NUMBER_8","KP_N8","KP_NUMBER_9","KP_N9","KP_NUMBER_0","KP_N0","KP_DOT","NON_US_BACKSLASH","NON_US_BSLH","NUBS","PIPE2","K_APPLICATION","K_APP","K_CONTEXT_MENU","K_CMENU","GUI","K_POWER","K_PWR","KP_EQUAL","F13","F14","F15","F16","F17","F18","F19","F20","F21","F22","F23","F24","K_EXECUTE","K_EXEC","K_HELP","K_MENU","K_SELECT","K_STOP","K_AGAIN","K_REDO","K_UNDO","UNDO","K_CUT","CUT","K_COPY","COPY","K_PASTE","PSTE","K_FIND","K_MUTE","K_VOLUME_UP","K_VOL_UP","VOLU","K_VOLUME_DOWN","K_VOL_DN","VOLD","LOCKING_CAPS","LCAPS","LOCKING_NUM","LNLCK","LOCKING_SCROLL","LSLCK","KP_COMMA","KP_EQUAL_AS400","INTERNATIONAL_1","INT1","INT_RO","INTERNATIONAL_2","INT2","INT_KATAKANAHIRAGANA","INT_KANA","INTERNATIONAL_3","INT3","INT_YEN","INTERNATIONAL_4","INT4","INT_HENKAN","INTERNATIONAL_5","INT5","INT_MUHENKAN","INTERNATIONAL_6","INT6","INT_KPJPCOMMA","INTERNATIONAL_7","INT7","INTERNATIONAL_8","INT8","INTERNATIONAL_9","INT9","LANGUAGE_1","LANG1","LANG_HANGEUL","LANGUAGE_2","LANG2","LANG_HANJA","LANGUAGE_3","LANG3","LANG_KATAKANA","LANGUAGE_4","LANG4","LANG_HIRAGANA","LANGUAGE_5","LANG5","LANG_ZENKAKUHANKAKU","LANGUAGE_6","LANG6","LANGUAGE_7","LANG7","LANGUAGE_8","LANG8","LANGUAGE_9","LANG9","ALT_ERASE","SYSREQ","ATTENTION","K_CANCEL","CLEAR","PRIOR","RETURN2","RET2","SEPARATOR","OUT","OPER","CLEAR_AGAIN","CRSEL","EXSEL","CURU","KP_LEFT_PARENTHESIS","KP_LPAR","KP_RIGHT_PARENTHESIS","KP_RPAR","KSPC","KP_CLEAR","LEFT_CONTROL","LCTRL","LCTL","LEFT_SHIFT","LSHIFT","LSHFT","LSFT","LEFT_ALT","LALT","LEFT_GUI","LGUI","LEFT_WIN","LWIN","LEFT_COMMAND","LCMD","LEFT_META","LMETA","RIGHT_CONTROL","RCTRL","RCTL","RIGHT_SHIFT","RSHIFT","RSHFT","RSFT","RIGHT_ALT","RALT","RIGHT_GUI","RGUI","RIGHT_WIN","RWIN","RIGHT_COMMAND","RCMD","RIGHT_META","RMETA","K_PLAY_PAUSE","K_PP","K_STOP2","K_PREVIOUS","K_PREV","K_NEXT","K_EJECT","K_VOLUME_UP2","K_VOL_UP2","K_VOLUME_DOWN2","K_VOL_DN2","K_MUTE2","K_WWW","K_BACK","K_FORWARD","K_STOP3","K_FIND2","K_SCROLL_UP","K_SCROLL_DOWN","K_EDIT","K_SLEEP","K_LOCK","K_SCREENSAVER","K_COFFEE","K_REFRESH","K_CALCULATOR","K_CALC","C_POWER","C_PWR","C_RESET","C_SLEEP","C_SLEEP_MODE","C_MENU","C_MENU_PICK","C_MENU_SELECT","C_MENU_UP","C_MENU_DOWN","C_MENU_LEFT","C_MENU_RIGHT","C_MENU_ESCAPE","C_MENU_ESC","C_MENU_INCREASE","C_MENU_INC","C_MENU_DECREASE","C_MENU_DEC","C_DATA_ON_SCREEN","C_CAPTIONS","C_SUBTITLES","C_SNAPSHOT","C_PIP","C_RED_BUTTON","C_RED","C_GREEN_BUTTON","C_GREEN","C_BLUE_BUTTON","C_BLUE","C_YELLOW_BUTTON","C_YELLOW","C_ASPECT","C_BRIGHTNESS_INC","C_BRI_INC","C_BRI_UP","C_BRIGHTNESS_DEC","C_BRI_DEC","C_BRI_DN","C_BACKLIGHT_TOGGLE","C_BKLT_TOG","C_BRIGHTNESS_MINIMUM","C_BRI_MIN","C_BRIGHTNESS_MAXIMUM","C_BRI_MAX","C_BRIGHTNESS_AUTO","C_BRI_AUTO","C_MEDIA_STEP","C_MODE_STEP","C_RECALL_LAST","C_CHAN_LAST","C_MEDIA_COMPUTER","C_MEDIA_TV","C_MEDIA_WWW","C_MEDIA_DVD","C_MEDIA_PHONE","C_MEDIA_GUIDE","C_MEDIA_VIDEOPHONE","C_MEDIA_GAMES","C_MEDIA_MESSAGES","C_MEDIA_CD","C_MEDIA_VCR","C_MEDIA_TUNER","C_QUIT","C_HELP","C_MEDIA_TAPE","C_MEDIA_CABLE","C_MEDIA_SATELLITE","C_MEDIA_HOME","C_CHANNEL_INC","C_CHAN_INC","C_CHANNEL_DEC","C_CHAN_DEC","C_MEDIA_VCR_PLUS","C_PLAY","C_PAUSE","C_RECORD","C_REC","C_FAST_FORWARD","C_FF","C_REWIND","C_RW","C_NEXT","M_NEXT","C_PREVIOUS","C_PREV","M_PREV","C_STOP","M_STOP","C_EJECT","M_EJCT","C_RANDOM_PLAY","C_SHUFFLE","C_REPEAT","C_SLOW_TRACKING","C_SLOW2","C_STOP_EJECT","C_PLAY_PAUSE","C_PP","M_PLAY","C_VOICE_COMMAND","C_MUTE","M_MUTE","C_BASS_BOOST","C_VOLUME_UP","C_VOL_UP","M_VOLU","C_VOLUME_DOWN","C_VOL_DN","M_VOLD","C_SLOW","C_ALTERNATE_AUDIO_INCREMENT","C_ALT_AUDIO_INC","C_AL_CCC","C_AL_WORD","C_AL_TEXT_EDITOR","C_AL_SPREADSHEET","C_AL_SHEET","C_AL_GRAPHICS_EDITOR","C_AL_PRESENTATION","C_AL_DATABASE","C_AL_DB","C_AL_EMAIL","C_AL_MAIL","C_AL_NEWS","C_AL_VOICEMAIL","C_AL_CONTACTS","C_AL_ADDRESS_BOOK","C_AL_CALENDAR","C_AL_CAL","C_AL_TASK_MANAGER","C_AL_JOURNAL","C_AL_FINANCE","C_AL_CALCULATOR","C_AL_CALC","C_AL_AV_CAPTURE_PLAYBACK","C_AL_MY_COMPUTER","C_AL_WWW","C_AL_NETWORK_CHAT","C_AL_CHAT","C_AL_LOGOFF","C_AL_LOCK","C_AL_SCREENSAVER","C_AL_COFFEE","C_AL_CONTROL_PANEL","C_AL_SELECT_TASK","C_AL_NEXT_TASK","C_AL_PREVIOUS_TASK","C_AL_PREV_TASK","C_AL_HELP","C_AL_DOCUMENTS","C_AL_DOCS","C_AL_SPELLCHECK","C_AL_SPELL","C_AL_KEYBOARD_LAYOUT","C_AL_SCREEN_SAVER","C_AL_FILE_BROWSER","C_AL_FILES","C_AL_IMAGE_BROWSER","C_AL_IMAGES","C_AL_AUDIO_BROWSER","C_AL_AUDIO","C_AL_MUSIC","C_AL_MOVIE_BROWSER","C_AL_MOVIES","C_AL_INSTANT_MESSAGING","C_AL_IM","C_AL_OEM_FEATURES","C_AL_TIPS","C_AL_TUTORIAL","C_AC_NEW","C_AC_OPEN","C_AC_CLOSE","C_AC_EXIT","C_AC_SAVE","C_AC_PRINT","C_AC_PROPERTIES","C_AC_PROPS","C_AC_UNDO","C_AC_COPY","C_AC_CUT","C_AC_PASTE","C_AC_FIND","C_AC_SEARCH","C_AC_GOTO","C_AC_HOME","C_AC_BACK","C_AC_FORWARD","C_AC_STOP","C_AC_REFRESH","C_AC_BOOKMARKS","C_AC_FAVORITES","C_AC_FAVOURITES","C_AC_ZOOM_IN","C_AC_ZOOM_OUT","C_AC_ZOOM","C_AC_VIEW_TOGGLE","C_AC_SCROLL_UP","C_AC_SCROLL_DOWN","C_AC_EDIT","C_AC_CANCEL","C_AC_INSERT","C_AC_INS","C_AC_DEL","C_AC_REDO","C_AC_REPLY","C_AC_FORWARD_MAIL","C_AC_SEND","C_AC_DESKTOP_SHOW_ALL_WINDOWS","C_AC_DESKTOP_SHOW_ALL_APPLICATIONS","C_KEYBOARD_INPUT_ASSIST_PREVIOUS","C_KBIA_PREV","C_KEYBOARD_INPUT_ASSIST_NEXT","C_KBIA_NEXT","C_KEYBOARD_INPUT_ASSIST_PREVIOUS_GROUP","C_KBIA_PREV_GRP","C_KEYBOARD_INPUT_ASSIST_NEXT_GROUP","C_KBIA_NEXT_GRP","C_KEYBOARD_INPUT_ASSIST_ACCEPT","C_KBIA_ACCEPT","C_KEYBOARD_INPUT_ASSIST_CANCEL","C_KBIA_CANCEL","ZMK_MOCK_IS_PRESS","ZMK_MOCK_PRESS","ZMK_MOCK_RELEASE","ZMK_MOCK_ROW","ZMK_MOCK_COL","ZMK_MOCK_MSEC","KT_ROW","KT_COL","RC","MOD_LCTL","MOD_LSFT","MOD_LALT","MOD_LGUI","MOD_RCTL","MOD_RSFT","MOD_RALT","MOD_RGUI","SELECT_MODS","STRIP_MODS","APPLY_MODS","LC","LS","LA","LG","RC","RS","RA","RG","OUT_TOG","OUT_USB","OUT_BLE","RST_WARM","RST_COLD","RST_UF2","RGB_TOG_CMD","RGB_ON_CMD","RGB_OFF_CMD","RGB_HUI_CMD","RGB_HUD_CMD","RGB_SAI_CMD","RGB_SAD_CMD","RGB_BRI_CMD","RGB_BRD_CMD","RGB_SPI_CMD","RGB_SPD_CMD","RGB_EFF_CMD","RGB_EFR_CMD","RGB_EFS_CMD","RGB_COLOR_HSB_CMD","RGB_TOG","RGB_ON","RGB_OFF","RGB_HUI","RGB_HUD","RGB_SAI","RGB_SAD","RGB_BRI","RGB_BRD","RGB_SPI","RGB_SPD","RGB_EFF","RGB_EFR","RGB_COLOR_HSB_VAL","RGB_COLOR_HSB","RGB_COLOR_HSV"]')},30877:function(_){"use strict";_.exports=JSON.parse('[{"match":{"code":"&lt"},"params":["layer","code"]},{"match":{"code":"&mt"},"params":["code","code"]},{"match":{"code":"&sl"},"params":["layer"]},{"match":{"code":"&sk"},"params":["code"]},{"match":{"code":"&inc_dec_kp"},"params":["code","code"]},{"match":{"compatible":"zmk,behavior-backlight"},"params":[{"name":"backlight action","type":"command","enum":[{"code":"BL_ON","description":"Turn on backlight"},{"code":"BL_OFF","description":"Turn off backlight"},{"code":"BL_TOG","description":"Toggle backlight on and off"},{"code":"BL_INC","description":"Increase brightness"},{"code":"BL_DEC","description":"Decrease brightness"},{"code":"BL_CYCLE","description":"Cycle brightness"},{"code":"BL_SET","description":"Set a specific brightness","additionalParams":[{"name":"brightness","type":"integer","enum":[0,10,20,30,40,50,60,70,80,90,100]}]}]}]},{"match":{"compatible":"zmk,behavior-bluetooth"},"params":[{"name":"bluetooth action","type":"command","enum":[{"code":"BT_CLR","displayName":"Clear profile","description":"Clear bond information between the keyboard and host for the selected profile."},{"code":"BT_NXT","displayName":"Next profile","description":"Switch to the next profile, cycling through to the first one when the end is reached."},{"code":"BT_PRV","displayName":"Previous profile","description":"Switch to the previous profile, cycling through to the last one when the beginning is reached."},{"code":"BT_SEL","displayName":"Select profile","description":"Select the 0-indexed profile by number. Please note: this definition must include a number as an argument in the keymap to work correctly. eg. BT_SEL 0","additionalParams":[{"name":"bluetooth profile","type":"integer","enum":[{"code":0,"displayName":"Bluetooth profile #0"},{"code":1,"displayName":"Bluetooth profile #1"},{"code":2,"displayName":"Bluetooth profile #2"},{"code":3,"displayName":"Bluetooth profile #3"},{"code":4,"displayName":"Bluetooth profile #4"}]}]},{"code":"BT_DISC","displayName":"Disconnect profile","description":"Disconnect from the 0-indexed profile by number, if it\'s currently connected and inactive. Please note: this definition must include a number as an argument in the keymap to work correctly. eg. BT_DISC 0","additionalParams":[{"name":"bluetooth profile","type":"integer","enum":[{"code":0,"displayName":"Bluetooth profile #0"},{"code":1,"displayName":"Bluetooth profile #1"},{"code":2,"displayName":"Bluetooth profile #2"},{"code":3,"displayName":"Bluetooth profile #3"},{"code":4,"displayName":"Bluetooth profile #4"}]}]}]}]},{"match":{"compatible":"zmk,behavior-key-press"},"params":["code"]},{"match":{"compatible":"zmk,behavior-key-toggle"},"params":["code"]},{"match":{"compatible":"zmk,behavior-momentary-layer"},"params":["layer"]},{"match":{"compatible":"zmk,behavior-outputs"},"params":[{"type":"command","name":"keyboard output mode","enum":[{"code":"OUT_BLE","name":"BLE","description":"Prefer sending to the current bluetooth profile"},{"code":"OUT_USB","name":"USB","description":"Prefer sending to USB"},{"code":"OUT_TOG","name":"Toggle","description":"Toggle between USB and BLE"}]}]},{"match":{"compatible":"zmk,behavior-to-layer"},"params":["layer"]},{"match":{"compatible":"zmk,behavior-toggle-layer"},"params":["layer"]},{"match":{"compatible":"zmk,behavior-rgb-underglow"},"params":[{"type":"command","name":"RGB underglow action","enum":[{"code":"RGB_TOG","displayName":"Toggle","description":"Toggles the RGB feature on and off"},{"code":"RGB_ON","displayName":"On","description":"Turns the RGB feature on"},{"code":"RGB_OFF","displayName":"Off","description":"Turns the RGB feature off"},{"code":"RGB_HUI","displayName":"Increase hue","description":"Increases the hue of the RGB feature"},{"code":"RGB_HUD","displayName":"Decrease hue","description":"Decreases the hue of the RGB feature"},{"code":"RGB_SAI","displayName":"Increase saturation","description":"Increases the saturation of the RGB feature"},{"code":"RGB_SAD","displayName":"Decrease saturation","description":"Decreases the saturation of the RGB feature"},{"code":"RGB_BRI","displayName":"Increase brightness","description":"Increases the brightness of the RGB feature"},{"code":"RGB_BRD","displayName":"Decrease brightness","description":"Decreases the brightness of the RGB feature"},{"code":"RGB_SPI","displayName":"Increase speed","description":"Increases the speed of the RGB feature effect\'s animation"},{"code":"RGB_SPD","displayName":"Decrease speed","description":"Decreases the speed of the RGB feature effect\'s animation"},{"code":"RGB_EFF","displayName":"Next effect","description":"Cycles the RGB feature\'s effect forwards"},{"code":"RGB_EFR","displayName":"Previous effect","description":"Cycles the RGB feature\'s effect reverse"},{"code":"RGB_COLOR_HSB","displayName":"Set color","description":"Sets a specific HSB (HSV) value for the underglow","symbol":"HSB","helper":"hsb-color-picker","helperPrompt":"Set color","splitTo":"RGB_COLOR_HSB_CMD","params":[{"name":"hue","type":"integer","enum":[0,30,60,90,120,160,180,210,240,270,300,330,360]},{"name":"saturation","type":"integer","enum":[0,10,20,30,40,50,60,70,80,90,100]},{"name":"value","type":"integer","enum":[0,10,20,30,40,50,60,70,80,90,100]}]},{"code":"RGB_COLOR_HSB_CMD","displayName":"Set color","description":"Sets a specific HSB (HSV) value for the underglow","symbol":"Set","hidden":true,"splitFrom":"RGB_COLOR_HSB","additionalParams":[{"name":"RGB Underglow Color","type":"command","const":{"code":"RGB_COLOR_HSB_VAL","symbol":"HSB","helper":"hsb-color-picker","helperPrompt":"Set color","params":[{"name":"hue","type":"integer","enum":[0,30,60,90,120,160,180,210,240,270,300,330,360]},{"name":"saturation","type":"integer","enum":[0,10,20,30,40,50,60,70,80,90,100]},{"name":"value","type":"integer","enum":[0,10,20,30,40,50,60,70,80,90,100]}]}}]}]}]},{"match":{"compatible":"zmk,behavior-ext-power"},"params":[{"type":"command","name":"external power mode","enum":[{"code":"EP_ON","name":"On","description":"Enable the external power"},{"code":"EP_OFF","name":"Off","description":"Disable the external power"},{"code":"EP_TOG","name":"Toggle","description":"Toggle the external power"}]}]},{"match":{"compatible":"zmk,macro-control-tap-time"},"params":[{"type":"number","raw":true}]},{"match":{"compatible":"zmk,macro-control-wait-time"},"params":[{"type":"number","raw":true}]},{"match":{"compatible":"zmk,behavior-mouse-key-press"},"params":[{"type":"command","name":"Mouse Key","enum":[{"code":"MB1","name":"MB1","description":"Mouse button 1 (left click)"},{"code":"LCLK","name":"Left click","description":"Mouse button 1 (left click)"},{"code":"MB2","name":"MB2","description":"Mouse button 2 (right click)"},{"code":"RCLK","name":"Right click","description":"Mouse button 1 (right click)"},{"code":"MB3","name":"MB3","description":"Mouse button 3 (middle click)"},{"code":"MCLK","name":"Middle click","description":"Mouse button 3 (middle click)"},{"code":"MB4","name":"MB4","description":"Mouse button 4 (prev click)"},{"code":"MB5","name":"MB5","description":"Mouse button 5 (next click)"},{"code":"MB6","name":"MB6","description":"Mouse button 6"},{"code":"MB7","name":"MB7","description":"Mouse button 7"},{"code":"MB8","name":"MB8","description":"Mouse button 8"}]}]},{"match":{"compatible":"zmk,behavior-mouse-move"},"params":[{"type":"code","name":"Mouse movement","enum":[{"code":"MOVE","name":"Mouse movement","additionalParams":[{"type":"integer","name":"Horizontal movement","enum":[600,500,400,300,200,100,0,-100,-200,-300,-400,-500,-600]},{"type":"integer","name":"Vertical movement","enum":[600,500,400,300,200,100,0,-100,-200,-300,-400,-500,-600]}]},{"code":"MOVE_HOR","name":"Mouse horizontal movement","additionalParams":[{"type":"integer","name":"Horizontal movement","enum":[600,500,400,300,200,100,0,-100,-200,-300,-400,-500,-600]}]},{"code":"MOVE_VERT","name":"Mouse vertical movement","additionalParams":[{"type":"integer","name":"Vertical movement","enum":[600,500,400,300,200,100,0,-100,-200,-300,-400,-500,-600]}]},{"code":"MOVE_UP","name":"Move move up"},{"code":"MOVE_DOWN","name":"Mouse move down"},{"code":"MOVE_LEFT","name":"Move move left"},{"code":"MOVE_RIGHT","name":"Mouse move right"}]}]},{"match":{"compatible":"zmk,behavior-mouse-scroll"},"params":[{"type":"code","name":"Mouse scroll","enum":[{"code":"SCROLL","name":"Mouse scroll","additionalParams":[{"type":"integer","name":"Horizontal scroll","enum":[20,15,10,5,0,-5,-10,-15,-20]},{"type":"integer","name":"Vertical scroll","enum":[20,15,10,5,0,-5,-10,-15,-20]}]},{"code":"SCROLL_HOR","name":"Mouse horizontal scroll","additionalParams":[{"type":"integer","name":"Horizontal scroll","enum":[20,15,10,5,0,-5,-10,-15,-20]}]},{"code":"SCROLL_VERT","name":"Mouse vertical scroll","additionalParams":[{"type":"integer","name":"Vertical scroll","enum":[20,15,10,5,0,-5,-10,-15,-20]}]},{"code":"SCROLL_UP","name":"Move scroll up"},{"code":"SCROLL_DOWN","name":"Mouse scroll down"},{"code":"SCROLL_LEFT","name":"Move scroll left"},{"code":"SCROLL_RIGHT","name":"Mouse scroll right"}]}]}]')},31742:function(_){"use strict";_.exports=JSON.parse('{"zmk,behavior-send-string":{"description":"Send String","compatible":"zmk,behavior-send-string","include":"zero_param.yaml","properties":{"text":{"type":"string","required":true},"label":{"type":"string","required":true},"wait-ms":{"type":"int"},"tap-ms":{"type":"int"},"#binding-cells":{"type":"int","required":true,"const":0},"charmap":{"type":"phandle"}}},"zmk,behavior-sensor-rotate":{"description":"Sensor rotate behavior","compatible":"zmk,behavior-sensor-rotate","include":"zero_param.yaml","properties":{"#sensor-binding-cells":{"type":"int","required":true,"const":0},"bindings":{"type":"phandle-array","required":true},"tap-ms":{"type":"int","default":5},"label":{"type":"string","required":true}}},"zmk,behavior-sensor-rotate-var":{"description":"Sensor rotate behavior","compatible":"zmk,behavior-sensor-rotate-var","include":"two_param.yaml","properties":{"#sensor-binding-cells":{"type":"int","required":true,"const":2},"bindings":{"type":"phandles","required":true},"tap-ms":{"type":"int","default":5},"label":{"type":"string","required":true}}},"zmk,behavior-mouse-key-press":{"description":"Mouse key press behavior","compatible":"zmk,behavior-mouse-key-press","include":"one_param.yaml","properties":{"#binding-cells":{"type":"int","requited":true,"const":1}}},"zmk,behavior-mouse-move":{"description":"Mouse move behavior","compatible":"zmk,behavior-mouse-move","include":"one_param.yaml","properties":{"#binding-cells":{"type":"int","requited":true,"const":1},"delay-ms":{"type":"int"},"time-to-max-speed-ms":{"type":"int"},"acceleration-exponent":{"type":"int"}}},"zmk,behavior-mouse-scroll":{"description":"Mouse scroll behavior","compatible":"zmk,behavior-mouse-scroll","include":"one_param.yaml","properties":{"#binding-cells":{"type":"int","requited":true,"const":1},"delay-ms":{"type":"int"},"time-to-max-speed-ms":{"type":"int"},"acceleration-exponent":{"type":"int"}}}}')},43003:function(_){"use strict";_.exports=JSON.parse('[{"match":{"compatible":"zmk,behavior-caps-word"},"properties":{"continue-list":{"choices":{"$source":"keycodes","$key":"code"}},"mods":{"type":"integer-union","choices":["MOD_LCTL","MOD_LSFT","MOD_LALT","MOD_LGUI","MOD_RCTL","MOD_RSFT","MOD_RALT","MOD_RGUI"]}}},{"match":{"compatible":"zmk,behavior-mod-morph"},"properties":{"bindings":{"length":2,"bindingTriggers":["normal","modified"]},"mods":{"type":"integer-union","choices":["MOD_LCTL","MOD_LSFT","MOD_LALT","MOD_LGUI","MOD_RCTL","MOD_RSFT","MOD_RALT","MOD_RGUI"]},"keep-mods":{"type":"integer-union","choices":["MOD_LCTL","MOD_LSFT","MOD_LALT","MOD_LGUI","MOD_RCTL","MOD_RSFT","MOD_RALT","MOD_RGUI"]}}},{"match":{"compatible":"zmk,behavior-hold-tap"},"properties":{"bindings":{"length":2,"bindingTriggers":["hold","tap"]},"global-quick-tap":{"deprecatedBy":"require-prior-idle-ms"},"hold-trigger-key-positions":{"helper":"key-position-picker"},"tapping-term-ms":{"required":true},"tapping_term_ms":{"required":true,"deprecatedBy":"tapping-term-ms"},"quick_tap_ms":{"deprecatedBy":"quick-tap-ms"}}},{"match":{"compatible":"zmk,behavior-sticky-key"},"properties":{"bindings":{"length":1}}},{"match":{"compatible":"zmk,behavior-sensor-rotate"},"properties":{"bindings":{"length":2,"bindingTriggers":["increment","decrement"]}}},{"match":{"compatible":"zmk,behavior-sensor-rotate-var"},"description":"Sensor rotate behavior (with parameters)","properties":{"bindings":{"length":2,"bindingTriggers":["increment","decrement"]}}},{"match":{"compatible":"zmk,behavior-send-string"},"properties":{"charmap":{"type":"raw"}}},{"match":{"compatible":"zmk,behavior-tap-dance"},"properties":{"bindings":{"bindingTriggerTemplate":"{indexOrdinal} tap"}}}]')},80012:function(_){"use strict";_.exports=JSON.parse('[{"name":"behavior_reset","description":"Removed in Zephyr 3.2, use &sys_reset","labels":["reset"],"code":"&reset","compatible":"zmk,behavior-reset","properties":{"compatible":{"raw":"\\"zmk,behavior-reset\\"","parsed":"zmk,behavior-reset"},"#binding-cells":{"raw":"<0>","parsed":0},"label":{"raw":"\\"RESET\\"","parsed":"RESET"}}},{"name":"behavior_mouse_key_press","description":"","labels":["mkp"],"code":"&mkp","compatible":"zmk,behavior-mouse-key-press","properties":{"compatible":{"raw":"\\"zmk,behavior-mouse-key-press\\"","parsed":"zmk,behavior-mouse-key-press"},"#binding-cells":{"raw":"<1>","parsed":1},"label":{"raw":"\\"MOUSE_KEY_PRESS\\"","parsed":"MOUSE_KEY_PRESS"}}},{"name":"behavior_mouse_move","description":"","labels":["mmv"],"code":"&mmv","compatible":"zmk,behavior-mouse-move","properties":{"compatible":{"raw":"\\"zmk,behavior-mouse-move\\"","parsed":"zmk,behavior-mouse-move"},"#binding-cells":{"raw":"<1>","parsed":1},"label":{"raw":"\\"MOUSE_MOVE\\"","parsed":"MOUSE_MOVE"},"delay-ms":{"raw":"<0>","parsed":0},"time-to-max-speed-ms":{"raw":"<300>","parsed":300},"acceleration-exponent":{"raw":"<1>","parsed":1}}},{"name":"behavior_mouse_scroll","description":"","labels":["mwh","msc"],"code":"&mwh","compatible":"zmk,behavior-mouse-scroll","properties":{"compatible":{"raw":"\\"zmk,behavior-mouse-scroll\\"","parsed":"zmk,behavior-mouse-scroll"},"#binding-cells":{"raw":"<1>","parsed":1},"label":{"raw":"\\"MOUSE_SCROLL\\"","parsed":"MOUSE_SCROLL"},"delay-ms":{"raw":"<0>","parsed":0},"time-to-max-speed-ms":{"raw":"<300>","parsed":300},"acceleration-exponent":{"raw":"<1>","parsed":1}}}]')},92914:function(_){"use strict";_.exports=JSON.parse('[{"match":{"compatible":"zmk,behavior-backlight"},"includes":["#include <dt-bindings/zmk/backlight.h>"],"displayName":"Backlight"},{"match":{"compatible":"zmk,behavior-bluetooth"},"includes":["#include <dt-bindings/zmk/bt.h>"],"displayName":"Bluetooth"},{"match":{"compatible":"zmk,behavior-key-press"},"displayName":"Key Press","includes":["#include <dt-bindings/zmk/keys.h>"],"docsUrl":"https://zmk.dev/docs/behaviors/key-press#key-press"},{"match":{"compatible":"zmk,behavior-key-toggle"},"displayName":"Key Toggle","includes":["#include <dt-bindings/zmk/keys.h>"]},{"match":{"code":"&lt"},"displayName":"Layer/Tap","description":"Layer or Tap behavior","docsUrl":"https://zmk.dev/docs/behaviors/layers#layer-tap"},{"match":{"compatible":"zmk,behavior-momentary-layer"},"displayName":"Momentary Layer","docsUrl":"https://zmk.dev/docs/behaviors/layers#momentary-layer"},{"match":{"code":"&mt"},"displayName":"Mod/Tap","description":"Mod or Tap behavior"},{"match":{"compatible":"zmk,behavior-outputs"},"includes":["#include <dt-bindings/zmk/outputs.h>"],"displayName":"Output"},{"match":{"code":"&sl"},"displayName":"Sticky Layer","description":"Sticky layer behavior"},{"match":{"code":"&sk"},"displayName":"Sticky Key"},{"match":{"compatible":"zmk,behavior-to-layer"},"displayName":"To Layer","docsUrl":"https://zmk.dev/docs/behaviors/layers#to-layer"},{"match":{"compatible":"zmk,behavior-toggle-layer"},"displayName":"Toggle Layer","docsUrl":"https://zmk.dev/docs/behaviors/layers#toggle-layer"},{"match":{"compatible":"zmk,behavior-rgb-underglow"},"includes":["#include <dt-bindings/zmk/rgb.h>"],"displayName":"RGB Underglow"},{"match":{"compatible":"zmk,behavior-ext-power"},"includes":["#include <dt-bindings/zmk/ext_power.h>"],"displayName":"External Power"},{"match":{"compatible":"zmk,macro-control-mode-press"},"context":"macros"},{"match":{"compatible":"zmk,macro-control-mode-release"},"context":"macros"},{"match":{"compatible":"zmk,macro-control-mode-tap"},"context":"macros"},{"match":{"compatible":"zmk,macro-control-tap-time"},"context":"macros"},{"match":{"compatible":"zmk,macro-control-wait-time"},"context":"macros"},{"match":{"compatible":"zmk,macro-pause-for-release"},"context":"macros"},{"match":{"compatible":"zmk,macro-param-1to1"},"context":"macros"},{"match":{"compatible":"zmk,macro-param-1to2"},"context":"macros"},{"match":{"compatible":"zmk,macro-param-2to1"},"context":"macros"},{"match":{"compatible":"zmk,macro-param-2to2"},"context":"macros"},{"match":{"code":"&inc_dec_kp"},"displayName":"Increment/Decrement Key Press","context":"encoders"},{"match":{"compatible":"zmk,behavior-sensor-rotate-var"},"displayName":"Sensor Rotate (variable)","context":"encoders"},{"match":{"compatible":"zmk,behavior-sensor-rotate"},"displayName":"Sensor Rotate","context":"encoders"}]')},27112:function(_){"use strict";_.exports=JSON.parse('[{"names":["LEFT_ALT","LALT","LA(code)"],"symbol":"⌥","faIcon":null},{"names":["RIGHT_ALT","RALT","RA(code)"],"symbol":"⌥","faIcon":null},{"names":["LEFT_GUI","LGUI","LG(code)","LEFT_WIN","LWIN","LEFT_COMMAND","LCMD","LEFT_META","LMETA"],"symbol":"⌘","faIcon":null},{"names":["RIGHT_GUI","RGUI","RG(code)","RIGHT_WIN","RWIN","RIGHT_COMMAND","RCMD","RIGHT_META","RMETA"],"symbol":"⌘","faIcon":null}]')},445:function(_){"use strict";_.exports=JSON.parse('[{"names":["RETURN","ENTER","RET"],"symbol":"⮐","faIcon":null},{"names":["SPACE"],"symbol":"␣","faIcon":null},{"names":["LEFT_SHIFT","LSHIFT","LSHFT","LS(code)"],"symbol":"⇧","faIcon":null},{"names":["RIGHT_SHIFT","RSHIFT","RSHFT","RS(code)"],"symbol":"⇧","faIcon":null}]')},27453:function(_){"use strict";_.exports=JSON.parse('[{"names":["LEFT_GUI","LGUI","LG(code)","LEFT_WIN","LWIN","LEFT_COMMAND","LCMD","LEFT_META","LMETA"],"faIcon":"windows fa-brands"}]')},97107:function(_){"use strict";_.exports=JSON.parse('[{"names":["N1"],"symbol":"1"},{"names":["N2"],"symbol":"2"},{"names":["N3"],"symbol":"3"},{"names":["N4"],"symbol":"4"},{"names":["N5"],"symbol":"5"},{"names":["N6"],"symbol":"6"},{"names":["N7"],"symbol":"7"},{"names":["N8"],"symbol":"8"},{"names":["N9"],"symbol":"9"},{"names":["N0"],"symbol":"0"},{"names":["EXCL"],"symbol":"!"},{"names":["AT"],"symbol":"@"},{"names":["HASH"],"symbol":"#"},{"names":["DLLR"],"symbol":"$"},{"names":["PRCNT"],"symbol":"%"},{"names":["CARET"],"symbol":"^"},{"names":["AMPS"],"symbol":"&"},{"names":["STAR"],"symbol":"*"},{"names":["BSPC"],"faIcon":"delete-left"},{"names":["DEL"],"faIcon":"delete-right"},{"names":["MINUS"],"symbol":"-"},{"names":["UNDER"],"symbol":"_"},{"names":["EQUAL"],"symbol":"="},{"names":["PLUS"],"symbol":"+"},{"names":["PIPE"],"symbol":"|"},{"names":["COLON"],"symbol":":"},{"names":["GRAVE"],"symbol":"`"},{"names":["TILDE"],"symbol":"~"},{"names":["LT"],"symbol":"<"},{"names":["GT"],"symbol":">"},{"names":["RIGHT"],"faIcon":"caret-right"},{"names":["LEFT"],"faIcon":"caret-left"},{"names":["DOWN"],"faIcon":"caret-down"},{"names":["UP"],"faIcon":"caret-up"},{"names":["C_PWR"],"faIcon":"power-off"},{"names":["K_PWR"],"faIcon":"power-off"},{"names":["C_AL_LOCK"],"faIcon":"lock"},{"names":["K_LOCK"],"faIcon":"lock"},{"names":["C_SLEEP"],"faIcon":"moon"},{"names":["K_SLEEP"],"faIcon":"moon"},{"names":["C_SLEEP_MODE"],"faIcon":"moon"},{"names":["LEFT_PARENTHESIS","LPAR"],"symbol":"(","faIcon":null},{"names":["RIGHT_PARENTHESIS","RPAR"],"symbol":")","faIcon":null},{"names":["LEFT_BRACKET","LBKT"],"symbol":"[","faIcon":null},{"names":["LEFT_BRACE","LBRC"],"symbol":"{","faIcon":null},{"names":["RIGHT_BRACKET","RBKT"],"symbol":"]","faIcon":null},{"names":["RIGHT_BRACE","RBRC"],"symbol":"}","faIcon":null},{"names":["BACKSLASH","BSLH"],"symbol":"\\\\","faIcon":null},{"names":["SEMICOLON","SEMI"],"symbol":";","faIcon":null},{"names":["SINGLE_QUOTE","SQT","APOSTROPHE","APOS"],"symbol":"\'","faIcon":null},{"names":["DOUBLE_QUOTES","DQT"],"symbol":"\\"","faIcon":null},{"names":["COMMA"],"symbol":",","faIcon":null},{"names":["PERIOD","DOT"],"symbol":".","faIcon":null},{"names":["GREATER_THAN","GT"],"symbol":">","faIcon":null},{"names":["SLASH","FSLH"],"symbol":"/","faIcon":null},{"names":["QUESTION","QMARK"],"symbol":"?","faIcon":null},{"names":["NON_US_BACKSLASH","NON_US_BSLH"],"symbol":"\\\\","faIcon":null},{"names":["K_MUTE"],"symbol":null,"faIcon":"volume-mute"},{"names":["C_VOLUME_UP","C_VOL_UP"],"symbol":null,"faIcon":"volume-up"},{"names":["C_VOLUME_DOWN","C_VOL_DN"],"symbol":null,"faIcon":"volume-down"},{"names":["LCTRL"],"symbol":"^"},{"names":["RCTRL"],"symbol":"^"},{"names":["GLOBE"],"faIcon":"globe"},{"names":["C_AC_HOME"],"faIcon":"home"}]')}}]);
+//# sourceMappingURL=shared.bbc21a8ffa35b41e3140.js.map \ No newline at end of file