<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE keyboard SYSTEM "file://localhost/System/Library/DTDs/KeyboardLayout.dtd">
<!-- Generated by kalamine on 2025-04-12

  File          : typoen.keylayout
  Project page  : https://typo.ale.sh/
  Author        : Alexander Pushkov
  Version       : 0.1.4
  License       : WTFPL - Do What The Fuck You Want Public License
  Reference     : https://developer.apple.com/library/archive/technotes/tn2056/_index.html

  English – Typography layout

  Logical layer (Apple keycodes)
  ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━━┓
  │ `   │ 1   │ 2   │ 3   │ 4   │ 5   │ 6   │ 7   │ 8   │ 9   │ 0   │ -   │ =   ┃          ┃
  │  50 │  18 │  19 │  20 │  21 │  23 │  22 │  26 │  28 │  25 │  29 │  27 │  24 ┃ ⌫        ┃
  ┢━━━━━┷━━┱──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┺━━┳━━━━━━━┫
  ┃        ┃ Q   │ W   │ E   │ R   │ T   │ Y   │ U   │ I   │ O   │ P   │ [   │ ]   ┃       ┃
  ┃ ↹      ┃  12 │  13 │  14 │  15 │  17 │  16 │  32 │  34 │  31 │  35 │  33 │  30 ┃       ┃
  ┣━━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┺┓  ⏎   ┃
  ┃         ┃ A   │ S   │ D   │ F   │ G   │ H   │ J   │ K   │ L   │ ;   │ '   │ \   ┃      ┃
  ┃ ⇬       ┃   0 │   1 │   2 │   3 │   5 │   4 │  38 │  40 │  37 │  41 │  39 │  42 ┃      ┃
  ┣━━━━━━┳━━┹──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┲━━┷━━━━━┻━━━━━━┫
  ┃      ┃ <   │ Z   │ X   │ C   │ V   │ B   │ N   │ M   │ ,   │ .   │ /   ┃               ┃
  ┃ ⇧    ┃  10 │   6 │   7 │   8 │   9 │  11 │  45 │  46 │  43 │  47 │  44 ┃ ⇧             ┃
  ┣━━━━━━┻┳━━━━┷━━┳━━┷━━━━┱┴─────┴─────┴─────┴─────┴─────┴─┲━━━┷━━━┳━┷━━━━━╋━━━━━━━┳━━━━━━━┫
  ┃       ┃       ┃       ┃                                ┃       ┃       ┃       ┃       ┃
  ┃ Ctrl  ┃ super ┃ Alt   ┃                             49 ┃ AltGr ┃ super ┃ menu  ┃ Ctrl  ┃
  ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┻━━━━━━━┛

  Base+Option layers
  ┌─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┬─────┲━━━━━━━━━━┓
  │ ~   │ ! ¹ │ @ ² │ # ³ │ $ ⁴ │ % ⁵ │ ^*^ │ &   │ * ∞ │ ( ‹ │ ) › │ _ — │ + ± ┃          ┃
  │ `*` │ 1 ! │ 2 @ │ 3 # │ 4 $ │ 5 ‰ │ 6 ↑ │ 7   │ 8 • │ 9 ← │ 0 → │ - – │ = ≠ ┃ ⌫        ┃
  ┢━━━━━┷━━┱──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┺━━┯━━━━━━━┩
  ┃        ┃ Q ⌃ │ W ⌥ │ E   │ R*˚ │ T   │ Y   │ U   │ I   │ O   │ P ″ │ {   │ }   │ |     │
  ┃ ↹      ┃   Q │   ✓ │   € │   ® │     │   ¥ │  *¨ │     │   ø │   ′ │ [   │ ]   │ \     │
  ┣━━━━━━━━┻┱────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┬────┴┲━━━━┷━━━━━━━┪
  ┃         ┃ A ⌘ │ S ⇧ │ D ₫ │ F   │ G   │ H ₴ │ J   │ K   │ L   │ :   │ "*´ ┃            ┃
  ┃ ⇬       ┃   A │   § │   ˚ │   £ │   ₱ │   ₽ │     │   “ │   ” │ ; ‘ │ ' ’ ┃ ⏎          ┃
  ┣━━━━━━━━━┻━━┱──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┬──┴──┲━━┻━━━━━━━━━━━━┫
  ┃            ┃ Z   │ X · │ C ¢ │ V*ˇ │ B ₿ │ N   │ M   │ < „ │ > “ │ ?   ┃               ┃
  ┃ ⇧          ┃   ‌ │   × │   © │   ↓ │   ฿ │  *~ │   − │ , « │ . » │ /   ┃ ⇧             ┃
  ┣━━━━━━━┳━━━━┻━━┳━━┷━━━━┱┴─────┴─────┴─────┴─────┴─────┴─┲━━━┷━━━┳━┷━━━━━╋━━━━━━━┳━━━━━━━┫
  ┃       ┃       ┃       ┃                                ┃       ┃       ┃       ┃       ┃
  ┃ Ctrl  ┃ super ┃ Alt   ┃ ␣                              ┃ Alt   ┃ super ┃ menu  ┃ Ctrl  ┃
  ┗━━━━━━━┻━━━━━━━┻━━━━━━━┹────────────────────────────────┺━━━━━━━┻━━━━━━━┻━━━━━━━┻━━━━━━━┛
  -->
<keyboard group="0" id="0" name="English – Typography layout" maxout="1">
  <layouts>
    <layout first="0" last="17" modifiers="commonModifiers" mapSet="ANSI" />
  </layouts>

  <modifierMap id="commonModifiers" defaultIndex="0">
    <keyMapSelect mapIndex="0">
      <modifier keys="" />
    </keyMapSelect>
    <keyMapSelect mapIndex="1"> <!-- shift -->
      <modifier keys="anyShift caps?" />
    </keyMapSelect>
    <keyMapSelect mapIndex="2"> <!-- caps -->
      <modifier keys="caps" />
    </keyMapSelect>
    <keyMapSelect mapIndex="3"> <!-- option -->
      <modifier keys="anyOption caps?" />
    </keyMapSelect>
    <keyMapSelect mapIndex="4"> <!-- option + shift -->
      <modifier keys="anyShift caps? anyOption command?" />
    </keyMapSelect>
  </modifierMap>

  <keyMapSet id="ANSI">
    <keyMap index="0">
      <!-- Digits -->
      <key code="18"  action="ae01_1" />
      <key code="19"  action="ae02_2" />
      <key code="20"  action="ae03_3" />
      <key code="21"  action="ae04_4" />
      <key code="23"  action="ae05_5" />
      <key code="22"  action="ae06_6" />
      <key code="26"  action="ae07_7" />
      <key code="28"  action="ae08_8" />
      <key code="25"  action="ae09_9" />
      <key code="29"  action="ae10_0" />

      <!-- Letters, first row -->
      <key code="12"  output="q" />
      <key code="13"  action="ad02_w" />
      <key code="14"  action="ad03_e" />
      <key code="15"  action="ad04_r" />
      <key code="17"  action="ad05_t" />
      <key code="16"  action="ad06_y" />
      <key code="32"  action="ad07_u" />
      <key code="34"  action="ad08_i" />
      <key code="31"  action="ad09_o" />
      <key code="35"  action="ad10_p" />

      <!-- Letters, second row -->
      <key code="0"   action="ac01_a" />
      <key code="1"   action="ac02_s" />
      <key code="2"   action="ac03_d" />
      <key code="3"   output="f" />
      <key code="5"   action="ac05_g" />
      <key code="4"   action="ac06_h" />
      <key code="38"  action="ac07_j" />
      <key code="40"  action="ac08_k" />
      <key code="37"  action="ac09_l" />
      <key code="41"  output=";" />

      <!-- Letters, third row -->
      <key code="6"   action="ab01_z" />
      <key code="7"   action="ab02_x" />
      <key code="8"   action="ab03_c" />
      <key code="9"   action="ab04_v" />
      <key code="11"  output="b" />
      <key code="45"  action="ab06_n" />
      <key code="46"  action="ab07_m" />
      <key code="43"  output="," />
      <key code="47"  output="." />
      <key code="44"  output="/" />

      <!-- Pinky keys -->
      <key code="27"  action="ae11_-" />
      <key code="24"  action="ae12_=" />
      <key code="33"  output="[" />
      <key code="30"  output="]" />
      <key code="39"  output="'" />
      <key code="50"  output="`" />
      <key code="42"  output="\" />
      <key code="10"  output="&#x0010;" />

      <!-- Space bar -->
      <key code="49"  action="spce_x0020" />

      <!-- Other keys -->
      <key code="36"  output="&#x000D;" />
      <key code="48"  output="&#x0009;" />
      <key code="51"  output="&#x0008;" />
      <key code="52"  output="&#x0003;" />
      <key code="53"  output="&#x001B;" />
      <key code="64"  output="&#x0010;" />
      <key code="65"  output="." />
      <key code="66"  output="&#x001D;" />
      <key code="67"  output="*" />
      <key code="69"  output="+" />
      <key code="70"  output="&#x001C;" />
      <key code="71"  output="&#x001B;" />
      <key code="72"  output="&#x001F;" />
      <key code="75"  output="/" />
      <key code="76"  output="&#x0003;" />
      <key code="77"  output="&#x001E;" />
      <key code="78"  output="-" />
      <key code="79"  output="&#x0010;" />
      <key code="80"  output="&#x0010;" />
      <key code="81"  output="=" />
      <key code="82"  output="0" />
      <key code="83"  output="1" />
      <key code="84"  output="2" />
      <key code="85"  output="3" />
      <key code="86"  output="4" />
      <key code="87"  output="5" />
      <key code="88"  output="6" />
      <key code="89"  output="7" />
      <key code="91"  output="8" />
      <key code="92"  output="9" />
      <key code="96"  output="&#x0010;" />
      <key code="97"  output="&#x0010;" />
      <key code="98"  output="&#x0010;" />
      <key code="99"  output="&#x0010;" />
      <key code="100" output="&#x0010;" />
      <key code="101" output="&#x0010;" />
      <key code="102" output="&#x0010;" />
      <key code="103" output="&#x0010;" />
      <key code="104" output="&#x0010;" />
      <key code="105" output="&#x0010;" />
      <key code="106" output="&#x0010;" />
      <key code="107" output="&#x0010;" />
      <key code="108" output="&#x0010;" />
      <key code="109" output="&#x0010;" />
      <key code="110" output="&#x0010;" />
      <key code="111" output="&#x0010;" />
      <key code="112" output="&#x0010;" />
      <key code="113" output="&#x0010;" />
      <key code="114" output="&#x0005;" />
      <key code="115" output="&#x0001;" />
      <key code="116" output="&#x000B;" />
      <key code="117" output="&#x007F;" />
      <key code="118" output="&#x0010;" />
      <key code="119" output="&#x0004;" />
      <key code="120" output="&#x0010;" />
      <key code="121" output="&#x000C;" />
      <key code="122" output="&#x0010;" />
      <key code="123" output="&#x001C;" />
      <key code="124" output="&#x001D;" />
      <key code="125" output="&#x001F;" />
      <key code="126" output="&#x001E;" />
    </keyMap>

    <!-- Shift -->
    <keyMap index="1">
      <!-- Digits -->
      <key code="18"  output="!" />
      <key code="19"  output="@" />
      <key code="20"  output="#" />
      <key code="21"  output="$" />
      <key code="23"  output="%" />
      <key code="22"  output="^" />
      <key code="26"  output="&#x0026;" />
      <key code="28"  output="*" />
      <key code="25"  action="ae09_(" />
      <key code="29"  action="ae10_)" />

      <!-- Letters, first row -->
      <key code="12"  output="Q" />
      <key code="13"  action="ad02_W" />
      <key code="14"  action="ad03_E" />
      <key code="15"  action="ad04_R" />
      <key code="17"  action="ad05_T" />
      <key code="16"  action="ad06_Y" />
      <key code="32"  action="ad07_U" />
      <key code="34"  action="ad08_I" />
      <key code="31"  action="ad09_O" />
      <key code="35"  action="ad10_P" />

      <!-- Letters, second row -->
      <key code="0"   action="ac01_A" />
      <key code="1"   action="ac02_S" />
      <key code="2"   action="ac03_D" />
      <key code="3"   output="F" />
      <key code="5"   action="ac05_G" />
      <key code="4"   action="ac06_H" />
      <key code="38"  action="ac07_J" />
      <key code="40"  action="ac08_K" />
      <key code="37"  action="ac09_L" />
      <key code="41"  output=":" />

      <!-- Letters, third row -->
      <key code="6"   action="ab01_Z" />
      <key code="7"   action="ab02_X" />
      <key code="8"   action="ab03_C" />
      <key code="9"   action="ab04_V" />
      <key code="11"  output="B" />
      <key code="45"  action="ab06_N" />
      <key code="46"  action="ab07_M" />
      <key code="43"  action="ab08_x003c" />
      <key code="47"  action="ab09_x003e" />
      <key code="44"  output="?" />

      <!-- Pinky keys -->
      <key code="27"  output="_" />
      <key code="24"  action="ae12_+" />
      <key code="33"  output="{" />
      <key code="30"  output="}" />
      <key code="39"  output="&#x0022;" />
      <key code="50"  output="~" />
      <key code="42"  output="|" />
      <key code="10"  output="&#x0010;" />

      <!-- Space bar -->
      <key code="49"  action="spce_x0020" />

      <!-- Other keys -->
      <key code="36"  output="&#x000D;" />
      <key code="48"  output="&#x0009;" />
      <key code="51"  output="&#x0008;" />
      <key code="52"  output="&#x0003;" />
      <key code="53"  output="&#x001B;" />
      <key code="64"  output="&#x0010;" />
      <key code="65"  output="." />
      <key code="66"  output="*" />
      <key code="67"  output="*" />
      <key code="69"  output="+" />
      <key code="70"  output="+" />
      <key code="71"  output="&#x001B;" />
      <key code="72"  output="=" />
      <key code="75"  output="/" />
      <key code="76"  output="&#x0003;" />
      <key code="77"  output="/" />
      <key code="78"  output="-" />
      <key code="79"  output="&#x0010;" />
      <key code="80"  output="&#x0010;" />
      <key code="81"  output="=" />
      <key code="82"  output="0" />
      <key code="83"  output="1" />
      <key code="84"  output="2" />
      <key code="85"  output="3" />
      <key code="86"  output="4" />
      <key code="87"  output="5" />
      <key code="88"  output="6" />
      <key code="89"  output="7" />
      <key code="91"  output="8" />
      <key code="92"  output="9" />
      <key code="96"  output="&#x0010;" />
      <key code="97"  output="&#x0010;" />
      <key code="98"  output="&#x0010;" />
      <key code="99"  output="&#x0010;" />
      <key code="100" output="&#x0010;" />
      <key code="101" output="&#x0010;" />
      <key code="102" output="&#x0010;" />
      <key code="103" output="&#x0010;" />
      <key code="104" output="&#x0010;" />
      <key code="105" output="&#x0010;" />
      <key code="106" output="&#x0010;" />
      <key code="107" output="&#x0010;" />
      <key code="108" output="&#x0010;" />
      <key code="109" output="&#x0010;" />
      <key code="110" output="&#x0010;" />
      <key code="111" output="&#x0010;" />
      <key code="112" output="&#x0010;" />
      <key code="113" output="&#x0010;" />
      <key code="114" output="&#x0005;" />
      <key code="115" output="&#x0001;" />
      <key code="116" output="&#x000B;" />
      <key code="117" output="&#x007F;" />
      <key code="118" output="&#x0010;" />
      <key code="119" output="&#x0004;" />
      <key code="120" output="&#x0010;" />
      <key code="121" output="&#x000C;" />
      <key code="122" output="&#x0010;" />
      <key code="123" output="&#x001C;" />
      <key code="124" output="&#x001D;" />
      <key code="125" output="&#x001F;" />
      <key code="126" output="&#x001E;" />
    </keyMap>

    <!-- Caps -->
    <keyMap index="2">
      <!-- Digits -->
      <key code="18"  action="ae01_1" />
      <key code="19"  action="ae02_2" />
      <key code="20"  action="ae03_3" />
      <key code="21"  action="ae04_4" />
      <key code="23"  action="ae05_5" />
      <key code="22"  action="ae06_6" />
      <key code="26"  action="ae07_7" />
      <key code="28"  action="ae08_8" />
      <key code="25"  action="ae09_9" />
      <key code="29"  action="ae10_0" />

      <!-- Letters, first row -->
      <key code="12"  output="Q" />
      <key code="13"  action="ad02_W" />
      <key code="14"  action="ad03_E" />
      <key code="15"  action="ad04_R" />
      <key code="17"  action="ad05_T" />
      <key code="16"  action="ad06_Y" />
      <key code="32"  action="ad07_U" />
      <key code="34"  action="ad08_I" />
      <key code="31"  action="ad09_O" />
      <key code="35"  action="ad10_P" />

      <!-- Letters, second row -->
      <key code="0"   action="ac01_A" />
      <key code="1"   action="ac02_S" />
      <key code="2"   action="ac03_D" />
      <key code="3"   output="F" />
      <key code="5"   action="ac05_G" />
      <key code="4"   action="ac06_H" />
      <key code="38"  action="ac07_J" />
      <key code="40"  action="ac08_K" />
      <key code="37"  action="ac09_L" />
      <key code="41"  output=";" />

      <!-- Letters, third row -->
      <key code="6"   action="ab01_Z" />
      <key code="7"   action="ab02_X" />
      <key code="8"   action="ab03_C" />
      <key code="9"   action="ab04_V" />
      <key code="11"  output="B" />
      <key code="45"  action="ab06_N" />
      <key code="46"  action="ab07_M" />
      <key code="43"  output="," />
      <key code="47"  output="." />
      <key code="44"  output="/" />

      <!-- Pinky keys -->
      <key code="27"  action="ae11_-" />
      <key code="24"  action="ae12_=" />
      <key code="33"  output="[" />
      <key code="30"  output="]" />
      <key code="39"  output="'" />
      <key code="50"  output="`" />
      <key code="42"  output="\" />
      <key code="10"  output="&#x0010;" />

      <!-- Space bar -->
      <key code="49"  action="spce_x0020" />

      <!-- Other keys -->
      <key code="36"  output="&#x000D;" />
      <key code="48"  output="&#x0009;" />
      <key code="51"  output="&#x0008;" />
      <key code="52"  output="&#x0003;" />
      <key code="53"  output="&#x001B;" />
      <key code="64"  output="&#x0010;" />
      <key code="65"  output="." />
      <key code="66"  output="&#x001D;" />
      <key code="67"  output="*" />
      <key code="69"  output="+" />
      <key code="70"  output="&#x001C;" />
      <key code="71"  output="&#x001B;" />
      <key code="72"  output="&#x001F;" />
      <key code="75"  output="/" />
      <key code="76"  output="&#x0003;" />
      <key code="77"  output="&#x001E;" />
      <key code="78"  output="-" />
      <key code="79"  output="&#x0010;" />
      <key code="80"  output="&#x0010;" />
      <key code="81"  output="=" />
      <key code="82"  output="0" />
      <key code="83"  output="1" />
      <key code="84"  output="2" />
      <key code="85"  output="3" />
      <key code="86"  output="4" />
      <key code="87"  output="5" />
      <key code="88"  output="6" />
      <key code="89"  output="7" />
      <key code="91"  output="8" />
      <key code="92"  output="9" />
      <key code="96"  output="&#x0010;" />
      <key code="97"  output="&#x0010;" />
      <key code="98"  output="&#x0010;" />
      <key code="99"  output="&#x0010;" />
      <key code="100" output="&#x0010;" />
      <key code="101" output="&#x0010;" />
      <key code="102" output="&#x0010;" />
      <key code="103" output="&#x0010;" />
      <key code="104" output="&#x0010;" />
      <key code="105" output="&#x0010;" />
      <key code="106" output="&#x0010;" />
      <key code="107" output="&#x0010;" />
      <key code="108" output="&#x0010;" />
      <key code="109" output="&#x0010;" />
      <key code="110" output="&#x0010;" />
      <key code="111" output="&#x0010;" />
      <key code="112" output="&#x0010;" />
      <key code="113" output="&#x0010;" />
      <key code="114" output="&#x0005;" />
      <key code="115" output="&#x0001;" />
      <key code="116" output="&#x000B;" />
      <key code="117" output="&#x007F;" />
      <key code="118" output="&#x0010;" />
      <key code="119" output="&#x0004;" />
      <key code="120" output="&#x0010;" />
      <key code="121" output="&#x000C;" />
      <key code="122" output="&#x0010;" />
      <key code="123" output="&#x001C;" />
      <key code="124" output="&#x001D;" />
      <key code="125" output="&#x001F;" />
      <key code="126" output="&#x001E;" />
    </keyMap>

    <!-- Option -->
    <keyMap index="3">
      <!-- Digits -->
      <key code="18"  output="!" />
      <key code="19"  output="@" />
      <key code="20"  output="#" />
      <key code="21"  output="$" />
      <key code="23"  output="‰" />
      <key code="22"  output="↑" />
      <key code="26"  output="&#x0010;" />
      <key code="28"  output="•" />
      <key code="25"  output="←" />
      <key code="29"  output="→" />

      <!-- Letters, first row -->
      <key code="12"  output="Q" />
      <key code="13"  output="✓" />
      <key code="14"  output="€" />
      <key code="15"  output="®" />
      <key code="17"  output="&#x0010;" />
      <key code="16"  output="¥" />
      <key code="32"  action="dead_diaeresis" />
      <key code="34"  output="&#x0010;" />
      <key code="31"  output="ø" />
      <key code="35"  output="′" />

      <!-- Letters, second row -->
      <key code="0"   action="ac01_A" />
      <key code="1"   output="§" />
      <key code="2"   output="˚" />
      <key code="3"   output="£" />
      <key code="5"   output="₱" />
      <key code="4"   output="₽" />
      <key code="38"  output="&#x0010;" />
      <key code="40"  output="“" />
      <key code="37"  output="”" />
      <key code="41"  output="‘" />

      <!-- Letters, third row -->
      <key code="6"   output="‌" />
      <key code="7"   output="×" />
      <key code="8"   output="©" />
      <key code="9"   output="↓" />
      <key code="11"  output="฿" />
      <key code="45"  action="dead_tilde" />
      <key code="46"  output="−" />
      <key code="43"  output="«" />
      <key code="47"  output="»" />
      <key code="44"  output="&#x0010;" />

      <!-- Pinky keys -->
      <key code="27"  output="–" />
      <key code="24"  output="≠" />
      <key code="33"  output="&#x0010;" />
      <key code="30"  output="&#x0010;" />
      <key code="39"  output="’" />
      <key code="50"  action="dead_grave" />
      <key code="42"  output="&#x0010;" />
      <key code="10"  output="&#x0010;" />

      <!-- Space bar -->
      <key code="49"  action="spce_x00a0" />

      <!-- Other keys -->
      <key code="36"  output="&#x000D;" />
      <key code="48"  output="&#x0009;" />
      <key code="51"  output="&#x0008;" />
      <key code="52"  output="&#x0003;" />
      <key code="53"  output="&#x001B;" />
      <key code="64"  output="&#x0010;" />
      <key code="65"  output="." />
      <key code="66"  output="&#x001D;" />
      <key code="67"  output="*" />
      <key code="69"  output="+" />
      <key code="70"  output="&#x001C;" />
      <key code="71"  output="&#x001B;" />
      <key code="72"  output="&#x001F;" />
      <key code="75"  output="+" />
      <key code="76"  output="&#x0003;" />
      <key code="77"  output="&#x001E;" />
      <key code="78"  output="-" />
      <key code="79"  output="&#x0010;" />
      <key code="80"  output="&#x0010;" />
      <key code="81"  output="=" />
      <key code="82"  output="0" />
      <key code="83"  output="1" />
      <key code="84"  output="2" />
      <key code="85"  output="3" />
      <key code="86"  output="4" />
      <key code="87"  output="5" />
      <key code="88"  output="6" />
      <key code="89"  output="7" />
      <key code="91"  output="8" />
      <key code="92"  output="9" />
      <key code="96"  output="&#x0010;" />
      <key code="97"  output="&#x0010;" />
      <key code="98"  output="&#x0010;" />
      <key code="99"  output="&#x0010;" />
      <key code="100" output="&#x0010;" />
      <key code="101" output="&#x0010;" />
      <key code="102" output="&#x0010;" />
      <key code="103" output="&#x0010;" />
      <key code="104" output="&#x0010;" />
      <key code="105" output="&#x0010;" />
      <key code="106" output="&#x0010;" />
      <key code="107" output="&#x0010;" />
      <key code="108" output="&#x0010;" />
      <key code="109" output="&#x0010;" />
      <key code="110" output="&#x0010;" />
      <key code="111" output="&#x0010;" />
      <key code="112" output="&#x0010;" />
      <key code="113" output="&#x0010;" />
      <key code="114" output="&#x0005;" />
      <key code="115" output="&#x0001;" />
      <key code="116" output="&#x000B;" />
      <key code="117" output="&#x007F;" />
      <key code="118" output="&#x0010;" />
      <key code="119" output="&#x0004;" />
      <key code="120" output="&#x0010;" />
      <key code="121" output="&#x000C;" />
      <key code="122" output="&#x0010;" />
      <key code="123" output="&#x001C;" />
      <key code="124" output="&#x001D;" />
      <key code="125" output="&#x001F;" />
      <key code="126" output="&#x001E;" />
    </keyMap>

    <!-- Option + Shift -->
    <keyMap index="4">
      <!-- Digits -->
      <key code="18"  output="¹" />
      <key code="19"  output="²" />
      <key code="20"  output="³" />
      <key code="21"  output="⁴" />
      <key code="23"  output="⁵" />
      <key code="22"  action="dead_circumflex" />
      <key code="26"  output="&#x0010;" />
      <key code="28"  output="∞" />
      <key code="25"  output="‹" />
      <key code="29"  output="›" />

      <!-- Letters, first row -->
      <key code="12"  output="⌃" />
      <key code="13"  output="⌥" />
      <key code="14"  output="&#x0010;" />
      <key code="15"  action="dead_abovering" />
      <key code="17"  output="&#x0010;" />
      <key code="16"  output="&#x0010;" />
      <key code="32"  output="&#x0010;" />
      <key code="34"  output="&#x0010;" />
      <key code="31"  output="Ø" />
      <key code="35"  output="″" />

      <!-- Letters, second row -->
      <key code="0"   output="⌘" />
      <key code="1"   output="⇧" />
      <key code="2"   output="₫" />
      <key code="3"   output="&#x0010;" />
      <key code="5"   output="&#x0010;" />
      <key code="4"   output="₴" />
      <key code="38"  output="&#x0010;" />
      <key code="40"  output="&#x0010;" />
      <key code="37"  output="&#x0010;" />
      <key code="41"  output="&#x0010;" />

      <!-- Letters, third row -->
      <key code="6"   output="&#x0010;" />
      <key code="7"   output="·" />
      <key code="8"   output="¢" />
      <key code="9"   action="dead_caron" />
      <key code="11"  output="₿" />
      <key code="45"  output="&#x0010;" />
      <key code="46"  output="&#x0010;" />
      <key code="43"  output="„" />
      <key code="47"  output="“" />
      <key code="44"  output="&#x0010;" />

      <!-- Pinky keys -->
      <key code="27"  output="—" />
      <key code="24"  output="±" />
      <key code="33"  output="&#x0010;" />
      <key code="30"  output="&#x0010;" />
      <key code="39"  action="dead_acute" />
      <key code="50"  output="&#x0010;" />
      <key code="42"  output="&#x0010;" />
      <key code="10"  output="&#x0010;" />

      <!-- Space bar -->
      <key code="49"  output=" " />

      <!-- Other keys -->
      <key code="36"  output="&#x000D;" />
      <key code="48"  output="&#x0009;" />
      <key code="51"  output="&#x0008;" />
      <key code="52"  output="&#x0003;" />
      <key code="53"  output="&#x001B;" />
      <key code="64"  output="&#x0010;" />
      <key code="65"  output="." />
      <key code="66"  output="*" />
      <key code="67"  output="*" />
      <key code="69"  output="+" />
      <key code="70"  output="+" />
      <key code="71"  output="&#x001B;" />
      <key code="72"  output="=" />
      <key code="75"  output="/" />
      <key code="76"  output="&#x0003;" />
      <key code="77"  output="/" />
      <key code="78"  output="-" />
      <key code="79"  output="&#x0010;" />
      <key code="80"  output="&#x0010;" />
      <key code="81"  output="=" />
      <key code="82"  output="0" />
      <key code="83"  output="1" />
      <key code="84"  output="2" />
      <key code="85"  output="3" />
      <key code="86"  output="4" />
      <key code="87"  output="5" />
      <key code="88"  output="6" />
      <key code="89"  output="7" />
      <key code="91"  output="8" />
      <key code="92"  output="9" />
      <key code="96"  output="&#x0010;" />
      <key code="97"  output="&#x0010;" />
      <key code="98"  output="&#x0010;" />
      <key code="99"  output="&#x0010;" />
      <key code="100" output="&#x0010;" />
      <key code="101" output="&#x0010;" />
      <key code="102" output="&#x0010;" />
      <key code="103" output="&#x0010;" />
      <key code="104" output="&#x0010;" />
      <key code="105" output="&#x0010;" />
      <key code="106" output="&#x0010;" />
      <key code="107" output="&#x0010;" />
      <key code="108" output="&#x0010;" />
      <key code="109" output="&#x0010;" />
      <key code="110" output="&#x0010;" />
      <key code="111" output="&#x0010;" />
      <key code="112" output="&#x0010;" />
      <key code="113" output="&#x0010;" />
      <key code="114" output="&#x0005;" />
      <key code="115" output="&#x0001;" />
      <key code="116" output="&#x000B;" />
      <key code="117" output="&#x007F;" />
      <key code="118" output="&#x0010;" />
      <key code="119" output="&#x0004;" />
      <key code="120" output="&#x0010;" />
      <key code="121" output="&#x000C;" />
      <key code="122" output="&#x0010;" />
      <key code="123" output="&#x001C;" />
      <key code="124" output="&#x001D;" />
      <key code="125" output="&#x001F;" />
      <key code="126" output="&#x001E;" />
    </keyMap>
  </keyMapSet>

  <actions>
    <action id="dead_grave">
      <when state="none" next="grave" />
    </action>
    <action id="dead_acute">
      <when state="none" next="acute" />
    </action>
    <action id="dead_circumflex">
      <when state="none" next="circumflex" />
    </action>
    <action id="dead_caron">
      <when state="none" next="caron" />
    </action>
    <action id="dead_tilde">
      <when state="none" next="tilde" />
    </action>
    <action id="dead_diaeresis">
      <when state="none" next="diaeresis" />
    </action>
    <action id="dead_abovering">
      <when state="none" next="abovering" />
    </action>

    <!-- Digits -->
    <action id="ae01_1">
      <when state="none"       output="1" />
      <when state="circumflex" output="¹" />
      <when state="caron"      output="₁" />
    </action>
    <action id="ae02_2">
      <when state="none"       output="2" />
      <when state="circumflex" output="²" />
      <when state="caron"      output="₂" />
    </action>
    <action id="ae03_3">
      <when state="none"       output="3" />
      <when state="circumflex" output="³" />
      <when state="caron"      output="₃" />
    </action>
    <action id="ae04_4">
      <when state="none"       output="4" />
      <when state="circumflex" output="⁴" />
      <when state="caron"      output="₄" />
    </action>
    <action id="ae05_5">
      <when state="none"       output="5" />
      <when state="circumflex" output="⁵" />
      <when state="caron"      output="₅" />
    </action>
    <action id="ae06_6">
      <when state="none"       output="6" />
      <when state="circumflex" output="⁶" />
      <when state="caron"      output="₆" />
    </action>
    <action id="ae07_7">
      <when state="none"       output="7" />
      <when state="circumflex" output="⁷" />
      <when state="caron"      output="₇" />
    </action>
    <action id="ae08_8">
      <when state="none"       output="8" />
      <when state="circumflex" output="⁸" />
      <when state="caron"      output="₈" />
    </action>
    <action id="ae09_9">
      <when state="none"       output="9" />
      <when state="circumflex" output="⁹" />
      <when state="caron"      output="₉" />
    </action>
    <action id="ae09_(">
      <when state="none"       output="(" />
      <when state="circumflex" output="⁽" />
      <when state="caron"      output="₍" />
    </action>
    <action id="ae10_0">
      <when state="none"       output="0" />
      <when state="circumflex" output="⁰" />
      <when state="caron"      output="₀" />
    </action>
    <action id="ae10_)">
      <when state="none"       output=")" />
      <when state="circumflex" output="⁾" />
      <when state="caron"      output="₎" />
    </action>

    <!-- Letters, first row -->
    <action id="ad02_w">
      <when state="none"       output="w" />
      <when state="grave"      output="ẁ" />
      <when state="acute"      output="ẃ" />
      <when state="circumflex" output="ŵ" />
      <when state="diaeresis"  output="ẅ" />
      <when state="abovering"  output="ẘ" />
    </action>
    <action id="ad02_W">
      <when state="none"       output="W" />
      <when state="grave"      output="Ẁ" />
      <when state="acute"      output="Ẃ" />
      <when state="circumflex" output="Ŵ" />
      <when state="diaeresis"  output="Ẅ" />
    </action>
    <action id="ad03_e">
      <when state="none"       output="e" />
      <when state="grave"      output="è" />
      <when state="acute"      output="é" />
      <when state="circumflex" output="ê" />
      <when state="caron"      output="ě" />
      <when state="tilde"      output="ẽ" />
      <when state="diaeresis"  output="ë" />
    </action>
    <action id="ad03_E">
      <when state="none"       output="E" />
      <when state="grave"      output="È" />
      <when state="acute"      output="É" />
      <when state="circumflex" output="Ê" />
      <when state="caron"      output="Ě" />
      <when state="tilde"      output="Ẽ" />
      <when state="diaeresis"  output="Ë" />
    </action>
    <action id="ad04_r">
      <when state="none"       output="r" />
      <when state="acute"      output="ŕ" />
      <when state="caron"      output="ř" />
    </action>
    <action id="ad04_R">
      <when state="none"       output="R" />
      <when state="acute"      output="Ŕ" />
      <when state="caron"      output="Ř" />
    </action>
    <action id="ad05_t">
      <when state="none"       output="t" />
      <when state="caron"      output="ť" />
      <when state="diaeresis"  output="ẗ" />
    </action>
    <action id="ad05_T">
      <when state="none"       output="T" />
      <when state="caron"      output="Ť" />
    </action>
    <action id="ad06_y">
      <when state="none"       output="y" />
      <when state="grave"      output="ỳ" />
      <when state="acute"      output="ý" />
      <when state="circumflex" output="ŷ" />
      <when state="tilde"      output="ỹ" />
      <when state="diaeresis"  output="ÿ" />
      <when state="abovering"  output="ẙ" />
    </action>
    <action id="ad06_Y">
      <when state="none"       output="Y" />
      <when state="grave"      output="Ỳ" />
      <when state="acute"      output="Ý" />
      <when state="circumflex" output="Ŷ" />
      <when state="tilde"      output="Ỹ" />
      <when state="diaeresis"  output="Ÿ" />
    </action>
    <action id="ad07_u">
      <when state="none"       output="u" />
      <when state="grave"      output="ù" />
      <when state="acute"      output="ú" />
      <when state="circumflex" output="û" />
      <when state="caron"      output="ǔ" />
      <when state="tilde"      output="ũ" />
      <when state="diaeresis"  output="ü" />
      <when state="abovering"  output="ů" />
    </action>
    <action id="ad07_U">
      <when state="none"       output="U" />
      <when state="grave"      output="Ù" />
      <when state="acute"      output="Ú" />
      <when state="circumflex" output="Û" />
      <when state="caron"      output="Ǔ" />
      <when state="tilde"      output="Ũ" />
      <when state="diaeresis"  output="Ü" />
      <when state="abovering"  output="Ů" />
    </action>
    <action id="ad08_i">
      <when state="none"       output="i" />
      <when state="grave"      output="ì" />
      <when state="acute"      output="í" />
      <when state="circumflex" output="î" />
      <when state="caron"      output="ǐ" />
      <when state="tilde"      output="ĩ" />
      <when state="diaeresis"  output="ï" />
    </action>
    <action id="ad08_I">
      <when state="none"       output="I" />
      <when state="grave"      output="Ì" />
      <when state="acute"      output="Í" />
      <when state="circumflex" output="Î" />
      <when state="caron"      output="Ǐ" />
      <when state="tilde"      output="Ĩ" />
      <when state="diaeresis"  output="Ï" />
    </action>
    <action id="ad09_o">
      <when state="none"       output="o" />
      <when state="grave"      output="ò" />
      <when state="acute"      output="ó" />
      <when state="circumflex" output="ô" />
      <when state="caron"      output="ǒ" />
      <when state="tilde"      output="õ" />
      <when state="diaeresis"  output="ö" />
    </action>
    <action id="ad09_O">
      <when state="none"       output="O" />
      <when state="grave"      output="Ò" />
      <when state="acute"      output="Ó" />
      <when state="circumflex" output="Ô" />
      <when state="caron"      output="Ǒ" />
      <when state="tilde"      output="Õ" />
      <when state="diaeresis"  output="Ö" />
    </action>
    <action id="ad10_p">
      <when state="none"       output="p" />
      <when state="acute"      output="ṕ" />
    </action>
    <action id="ad10_P">
      <when state="none"       output="P" />
      <when state="acute"      output="Ṕ" />
    </action>

    <!-- Letters, second row -->
    <action id="ac01_a">
      <when state="none"       output="a" />
      <when state="grave"      output="à" />
      <when state="acute"      output="á" />
      <when state="circumflex" output="â" />
      <when state="caron"      output="ǎ" />
      <when state="tilde"      output="ã" />
      <when state="diaeresis"  output="ä" />
      <when state="abovering"  output="å" />
    </action>
    <action id="ac01_A">
      <when state="none"       output="A" />
      <when state="grave"      output="À" />
      <when state="acute"      output="Á" />
      <when state="circumflex" output="Â" />
      <when state="caron"      output="Ǎ" />
      <when state="tilde"      output="Ã" />
      <when state="diaeresis"  output="Ä" />
      <when state="abovering"  output="Å" />
    </action>
    <action id="ac02_s">
      <when state="none"       output="s" />
      <when state="acute"      output="ś" />
      <when state="circumflex" output="ŝ" />
      <when state="caron"      output="š" />
    </action>
    <action id="ac02_S">
      <when state="none"       output="S" />
      <when state="acute"      output="Ś" />
      <when state="circumflex" output="Ŝ" />
      <when state="caron"      output="Š" />
    </action>
    <action id="ac03_d">
      <when state="none"       output="d" />
      <when state="caron"      output="ď" />
    </action>
    <action id="ac03_D">
      <when state="none"       output="D" />
      <when state="caron"      output="Ď" />
    </action>
    <action id="ac05_g">
      <when state="none"       output="g" />
      <when state="acute"      output="ǵ" />
      <when state="circumflex" output="ĝ" />
      <when state="caron"      output="ǧ" />
    </action>
    <action id="ac05_G">
      <when state="none"       output="G" />
      <when state="acute"      output="Ǵ" />
      <when state="circumflex" output="Ĝ" />
      <when state="caron"      output="Ǧ" />
    </action>
    <action id="ac06_h">
      <when state="none"       output="h" />
      <when state="circumflex" output="ĥ" />
      <when state="caron"      output="ȟ" />
      <when state="diaeresis"  output="ḧ" />
    </action>
    <action id="ac06_H">
      <when state="none"       output="H" />
      <when state="circumflex" output="Ĥ" />
      <when state="caron"      output="Ȟ" />
      <when state="diaeresis"  output="Ḧ" />
    </action>
    <action id="ac07_j">
      <when state="none"       output="j" />
      <when state="circumflex" output="ĵ" />
    </action>
    <action id="ac07_J">
      <when state="none"       output="J" />
      <when state="circumflex" output="Ĵ" />
    </action>
    <action id="ac08_k">
      <when state="none"       output="k" />
      <when state="acute"      output="ḱ" />
      <when state="caron"      output="ǩ" />
    </action>
    <action id="ac08_K">
      <when state="none"       output="K" />
      <when state="acute"      output="Ḱ" />
      <when state="caron"      output="Ǩ" />
    </action>
    <action id="ac09_l">
      <when state="none"       output="l" />
      <when state="acute"      output="ĺ" />
      <when state="caron"      output="ľ" />
    </action>
    <action id="ac09_L">
      <when state="none"       output="L" />
      <when state="acute"      output="Ĺ" />
      <when state="caron"      output="Ľ" />
    </action>

    <!-- Letters, third row -->
    <action id="ab01_z">
      <when state="none"       output="z" />
      <when state="acute"      output="ź" />
      <when state="circumflex" output="ẑ" />
      <when state="caron"      output="ž" />
    </action>
    <action id="ab01_Z">
      <when state="none"       output="Z" />
      <when state="acute"      output="Ź" />
      <when state="circumflex" output="Ẑ" />
      <when state="caron"      output="Ž" />
    </action>
    <action id="ab02_x">
      <when state="none"       output="x" />
      <when state="diaeresis"  output="ẍ" />
    </action>
    <action id="ab02_X">
      <when state="none"       output="X" />
      <when state="diaeresis"  output="Ẍ" />
    </action>
    <action id="ab03_c">
      <when state="none"       output="c" />
      <when state="acute"      output="ć" />
      <when state="circumflex" output="ĉ" />
      <when state="caron"      output="č" />
    </action>
    <action id="ab03_C">
      <when state="none"       output="C" />
      <when state="acute"      output="Ć" />
      <when state="circumflex" output="Ĉ" />
      <when state="caron"      output="Č" />
    </action>
    <action id="ab04_v">
      <when state="none"       output="v" />
      <when state="tilde"      output="ṽ" />
    </action>
    <action id="ab04_V">
      <when state="none"       output="V" />
      <when state="tilde"      output="Ṽ" />
    </action>
    <action id="ab06_n">
      <when state="none"       output="n" />
      <when state="grave"      output="ǹ" />
      <when state="acute"      output="ń" />
      <when state="caron"      output="ň" />
      <when state="tilde"      output="ñ" />
    </action>
    <action id="ab06_N">
      <when state="none"       output="N" />
      <when state="grave"      output="Ǹ" />
      <when state="acute"      output="Ń" />
      <when state="caron"      output="Ň" />
      <when state="tilde"      output="Ñ" />
    </action>
    <action id="ab07_m">
      <when state="none"       output="m" />
      <when state="acute"      output="ḿ" />
    </action>
    <action id="ab07_M">
      <when state="none"       output="M" />
      <when state="acute"      output="Ḿ" />
    </action>
    <action id="ab08_x003c">
      <when state="none"       output="&#x003c;" />
      <when state="tilde"      output="≲" />
    </action>
    <action id="ab09_x003e">
      <when state="none"       output="&#x003e;" />
      <when state="tilde"      output="≳" />
    </action>

    <!-- Pinky keys -->
    <action id="ae11_-">
      <when state="none"       output="-" />
      <when state="circumflex" output="⁻" />
      <when state="caron"      output="₋" />
    </action>
    <action id="ae12_=">
      <when state="none"       output="=" />
      <when state="circumflex" output="⁼" />
      <when state="caron"      output="₌" />
      <when state="tilde"      output="≃" />
    </action>
    <action id="ae12_+">
      <when state="none"       output="+" />
      <when state="circumflex" output="⁺" />
      <when state="caron"      output="₊" />
    </action>

    <!-- Space bar -->
    <action id="spce_x0020">
      <when state="none"       output="&#x0020;" />
      <when state="grave"      output="`" />
      <when state="acute"      output="'" />
      <when state="circumflex" output="^" />
      <when state="caron"      output="ˇ" />
      <when state="tilde"      output="~" />
      <when state="diaeresis"  output="&#x0022;" />
      <when state="abovering"  output="˚" />
    </action>
    <action id="spce_x00a0">
      <when state="none"       output="&#x00a0;" />
      <when state="grave"      output="`" />
      <when state="acute"      output="'" />
      <when state="circumflex" output="^" />
      <when state="caron"      output="ˇ" />
      <when state="tilde"      output="~" />
      <when state="diaeresis"  output="&#x0022;" />
      <when state="abovering"  output="˚" />
    </action>
    <action id="spce_x202f">
      <when state="none"       output="&#x202f;" />
      <when state="grave"      output="`" />
      <when state="acute"      output="'" />
      <when state="circumflex" output="^" />
      <when state="caron"      output="ˇ" />
      <when state="tilde"      output="~" />
      <when state="diaeresis"  output="&#x0022;" />
      <when state="abovering"  output="˚" />
    </action>
  </actions>

  <terminators>
    <when state="grave"      output="`" />
    <when state="acute"      output="´" />
    <when state="circumflex" output="^" />
    <when state="caron"      output="ˇ" />
    <when state="tilde"      output="~" />
    <when state="diaeresis"  output="¨" />
    <when state="abovering"  output="˚" />
  </terminators>
</keyboard>
