<commit_before><?xml version="1.0"?>
<root>
  <!--
      ======================================================================
      全体的な注意点

      母音のキー（あいうえお）や記号のキーなどについては通常の KeyToKey だと、
      キーが離されるまでそのキーが解放されない。

      そのため、たとえば以下の順番でキーを入力した場合、
      実際には (2) の KeyDown U が IM に無視されてしまう。
      （キーイベント自体は出力されるが、IM 側で破棄される）

      (1) KeyDown D (→ KeyDown U)
      (2) KeyDown H (→ KeyDown Y, KeyUp Y, KeyDown U, KeyUp U)
      (3) KeyUp   H (→ NOP)
      (4) KeyUp   D (→ KeyUp U)

      こうなると「うy」という状態で止まってしまい、
      本来入力したい「うゆ」とならない。

      そこで、KeyToKey の末尾に KeyCode::VK_NONE を追加することで、
      キーを押したときに KeyDown と KeyUp イベントを出力するようにする。

      (1) KeyDown D (→ KeyDown U, KeyUp U)
      (2) KeyDown H (→ KeyDown Y, KeyUp Y, KeyDown U, KeyUp U)
      (3) KeyUp   H (→ NOP)
      (4) KeyUp   D (→ NOP)
      ======================================================================
    -->

  <!-- SpaceとKanaをモディファイアキーに(親指から先に打鍵した場合のみ連続シフト可能に) -->
  <autogen>__KeyOverlaidModifier__ {{LEFT_THUMB}},  KeyCode::VK_MODIFIER_EXTRA1, {{LEFT_THUMB}}</autogen>
  <autogen>__KeyOverlaidModifier__ {{RIGHT_THUMB}}, KeyCode::VK_MODIFIER_EXTRA2, {{RIGHT_THUMB}}</autogen>

  <!-- Deleteを右親指シフトの右に -->
  <autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::DELETE</autogen>

  <!-- シフトなし上段(「ー入び％消逃とはぽ」左) -->
  <autogen>__KeyToKey__ KeyCode::Q,                ModifierFlag::NONE, KeyCode::JIS_BRACKET_LEFT,            KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::W,                ModifierFlag::NONE, KeyCode::MINUS,                       KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::E,                ModifierFlag::NONE, KeyCode::ENTER,                       KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::R,                ModifierFlag::NONE, KeyCode::B,KeyCode::I,                KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::T,                ModifierFlag::NONE, KeyCode::KEY_5,ModifierFlag::SHIFT_L, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::Y,                ModifierFlag::NONE, KeyCode::DELETE,                      KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::U,                ModifierFlag::NONE, KeyCode::ESCAPE,                      KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::I,                ModifierFlag::NONE, KeyCode::T,KeyCode::O,                KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::O,                ModifierFlag::NONE, KeyCode::H,KeyCode::A,                KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::P,                ModifierFlag::NONE, KeyCode::P,KeyCode::O,                KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_ATMARK,       ModifierFlag::NONE, KeyCode::JIS_BRACKET_RIGHT,           KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_BRACKET_LEFT, ModifierFlag::NONE, KeyCode::CURSOR_LEFT,                 KeyCode::VK_NONE</autogen>

  <!-- シフトなし中段(きしうてぎゆんいかたほ・) -->
  <autogen>__KeyToKey__ KeyCode::A,                 ModifierFlag::NONE, KeyCode::K,KeyCode::I, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::S,                 ModifierFlag::NONE, KeyCode::S,KeyCode::I, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::D,                 ModifierFlag::NONE, KeyCode::U,            KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::F,                 ModifierFlag::NONE, KeyCode::T,KeyCode::E, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::G,                 ModifierFlag::NONE, KeyCode::G,KeyCode::I, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::H,                 ModifierFlag::NONE, KeyCode::Y,KeyCode::U, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::J,                 ModifierFlag::NONE, KeyCode::N,KeyCode::N, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::K,                 ModifierFlag::NONE, KeyCode::I,            KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::L,                 ModifierFlag::NONE, KeyCode::K,KeyCode::A, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::SEMICOLON,         ModifierFlag::NONE, KeyCode::T,KeyCode::A, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_COLON,         ModifierFlag::NONE, KeyCode::H,KeyCode::O, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_BRACKET_RIGHT, ModifierFlag::NONE, KeyCode::SLASH,        KeyCode::VK_NONE</autogen>

  <!-- シフトなし下段(じちにりぶゃっょゅさ下) -->
  <autogen>__KeyToKey__ KeyCode::Z,              ModifierFlag::NONE, KeyCode::J, KeyCode::I,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::X,              ModifierFlag::NONE, KeyCode::T, KeyCode::I,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::C,              ModifierFlag::NONE, KeyCode::N, KeyCode::I,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::V,              ModifierFlag::NONE, KeyCode::R, KeyCode::I,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::B,              ModifierFlag::NONE, KeyCode::B, KeyCode::U,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::N,              ModifierFlag::NONE, KeyCode::X, KeyCode::Y, KeyCode::A, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::M,              ModifierFlag::NONE, KeyCode::X, KeyCode::T, KeyCode::U, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::COMMA,          ModifierFlag::NONE, KeyCode::X, KeyCode::Y, KeyCode::O, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::DOT,            ModifierFlag::NONE, KeyCode::X, KeyCode::Y, KeyCode::U, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::SLASH,          ModifierFlag::NONE, KeyCode::S, KeyCode::A,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_UNDERSCORE, ModifierFlag::NONE, KeyCode::CURSOR_DOWN,               KeyCode::VK_NONE</autogen>


  <!-- 左シフト上段(ぃひけぁぅヴ！よふへ）右) -->
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::Q,                ModifierFlag::NONE,                      KeyCode::X,KeyCode::I,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::Q,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::X,KeyCode::I,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::W,                ModifierFlag::NONE,                      KeyCode::H,KeyCode::I,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::W,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::H,KeyCode::I,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::E,                ModifierFlag::NONE,                      KeyCode::K,KeyCode::E,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::E,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::K,KeyCode::E,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::R,                ModifierFlag::NONE,                      KeyCode::X,KeyCode::A,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::R,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::X,KeyCode::A,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::T,                ModifierFlag::NONE,                      KeyCode::X,KeyCode::U,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::T,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::X,KeyCode::U,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::Y,                ModifierFlag::NONE,                      KeyCode::V,KeyCode::U,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::Y,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::V,KeyCode::U,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::U,                ModifierFlag::NONE,                      KeyCode::KEY_5,ModifierFlag::SHIFT_L, KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::U,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::KEY_1,ModifierFlag::SHIFT_L, KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::I,                ModifierFlag::NONE,                      KeyCode::Y,KeyCode::O,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::I,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::Y,KeyCode::O,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::O,                ModifierFlag::NONE,                      KeyCode::H,KeyCode::U,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::O,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::H,KeyCode::U,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::P,                ModifierFlag::NONE,                      KeyCode::H,KeyCode::E,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::P,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::H,KeyCode::E,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::JIS_ATMARK,       ModifierFlag::NONE,                      KeyCode::KEY_9,ModifierFlag::SHIFT_L, KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::JIS_ATMARK,       ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::KEY_9,ModifierFlag::SHIFT_L, KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::JIS_BRACKET_LEFT, ModifierFlag::NONE,                      KeyCode::CURSOR_RIGHT,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::JIS_BRACKET_LEFT, ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::CURSOR_RIGHT,                KeyCode::VK_NONE </autogen>

  <!-- 左シフト中段(だあがばぇずるすまでげ家) -->
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::A,                 ModifierFlag::NONE,                      KeyCode::D, KeyCode::A, KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::A,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::D, KeyCode::A, KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::S,                 ModifierFlag::NONE,                      KeyCode::A,             KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::S,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::A,             KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::D,                 ModifierFlag::NONE,                      KeyCode::G,KeyCode::A,  KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::D,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::G,KeyCode::A,  KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::F,                 ModifierFlag::NONE,                      KeyCode::B,KeyCode::A,  KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::F,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::B,KeyCode::A,  KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::G,                 ModifierFlag::NONE,                      KeyCode::X,KeyCode::E,  KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::G,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::X,KeyCode::E,  KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::H,                 ModifierFlag::NONE,                      KeyCode::Z,KeyCode::U,  KeyCode::VK_MODIFIER_EXTRA1 </autogen><commit_msg>fix asuka_roman.xml<commit_after><?xml version="1.0"?>
<root>
  <!--
      ======================================================================
      全体的な注意点

      母音のキー（あいうえお）や記号のキーなどについては通常の KeyToKey だと、
      キーが離されるまでそのキーが解放されない。

      そのため、たとえば以下の順番でキーを入力した場合、
      実際には (2) の KeyDown U が IM に無視されてしまう。
      （キーイベント自体は出力されるが、IM 側で破棄される）

      (1) KeyDown D (→ KeyDown U)
      (2) KeyDown H (→ KeyDown Y, KeyUp Y, KeyDown U, KeyUp U)
      (3) KeyUp   H (→ NOP)
      (4) KeyUp   D (→ KeyUp U)

      こうなると「うy」という状態で止まってしまい、
      本来入力したい「うゆ」とならない。

      そこで、KeyToKey の末尾に KeyCode::VK_NONE を追加することで、
      キーを押したときに KeyDown と KeyUp イベントを出力するようにする。

      (1) KeyDown D (→ KeyDown U, KeyUp U)
      (2) KeyDown H (→ KeyDown Y, KeyUp Y, KeyDown U, KeyUp U)
      (3) KeyUp   H (→ NOP)
      (4) KeyUp   D (→ NOP)
      ======================================================================
    -->

  <!-- SpaceとKanaをモディファイアキーに(親指から先に打鍵した場合のみ連続シフト可能に) -->
  <autogen>__KeyOverlaidModifier__ {{LEFT_THUMB}},  KeyCode::VK_MODIFIER_EXTRA1, {{LEFT_THUMB}}</autogen>
  <autogen>__KeyOverlaidModifier__ {{RIGHT_THUMB}}, KeyCode::VK_MODIFIER_EXTRA2, {{RIGHT_THUMB}}</autogen>

  <!-- Deleteを右親指シフトの右に -->
  <autogen>__KeyToKey__ KeyCode::OPTION_R, KeyCode::DELETE</autogen>

  <!-- シフトなし上段(「ー入び％消逃とはぽ」左) -->
  <autogen>__KeyToKey__ KeyCode::Q,                ModifierFlag::NONE, KeyCode::JIS_BRACKET_LEFT,            KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::W,                ModifierFlag::NONE, KeyCode::MINUS,                       KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::E,                ModifierFlag::NONE, KeyCode::ENTER,                       KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::R,                ModifierFlag::NONE, KeyCode::B,KeyCode::I,                KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::T,                ModifierFlag::NONE, KeyCode::KEY_5,ModifierFlag::SHIFT_L, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::Y,                ModifierFlag::NONE, KeyCode::DELETE,                      KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::U,                ModifierFlag::NONE, KeyCode::ESCAPE,                      KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::I,                ModifierFlag::NONE, KeyCode::T,KeyCode::O,                KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::O,                ModifierFlag::NONE, KeyCode::H,KeyCode::A,                KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::P,                ModifierFlag::NONE, KeyCode::P,KeyCode::O,                KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_ATMARK,       ModifierFlag::NONE, KeyCode::JIS_BRACKET_RIGHT,           KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_BRACKET_LEFT, ModifierFlag::NONE, KeyCode::CURSOR_LEFT,                 KeyCode::VK_NONE</autogen>

  <!-- シフトなし中段(きしうてぎゆんいかたほ・) -->
  <autogen>__KeyToKey__ KeyCode::A,                 ModifierFlag::NONE, KeyCode::K,KeyCode::I, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::S,                 ModifierFlag::NONE, KeyCode::S,KeyCode::I, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::D,                 ModifierFlag::NONE, KeyCode::U,            KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::F,                 ModifierFlag::NONE, KeyCode::T,KeyCode::E, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::G,                 ModifierFlag::NONE, KeyCode::G,KeyCode::I, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::H,                 ModifierFlag::NONE, KeyCode::Y,KeyCode::U, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::J,                 ModifierFlag::NONE, KeyCode::N,KeyCode::N, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::K,                 ModifierFlag::NONE, KeyCode::I,            KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::L,                 ModifierFlag::NONE, KeyCode::K,KeyCode::A, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::SEMICOLON,         ModifierFlag::NONE, KeyCode::T,KeyCode::A, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_COLON,         ModifierFlag::NONE, KeyCode::H,KeyCode::O, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_BRACKET_RIGHT, ModifierFlag::NONE, KeyCode::SLASH,        KeyCode::VK_NONE</autogen>

  <!-- シフトなし下段(じちにりぶゃっょゅさ下) -->
  <autogen>__KeyToKey__ KeyCode::Z,              ModifierFlag::NONE, KeyCode::J, KeyCode::I,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::X,              ModifierFlag::NONE, KeyCode::T, KeyCode::I,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::C,              ModifierFlag::NONE, KeyCode::N, KeyCode::I,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::V,              ModifierFlag::NONE, KeyCode::R, KeyCode::I,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::B,              ModifierFlag::NONE, KeyCode::B, KeyCode::U,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::N,              ModifierFlag::NONE, KeyCode::X, KeyCode::Y, KeyCode::A, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::M,              ModifierFlag::NONE, KeyCode::X, KeyCode::T, KeyCode::U, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::COMMA,          ModifierFlag::NONE, KeyCode::X, KeyCode::Y, KeyCode::O, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::DOT,            ModifierFlag::NONE, KeyCode::X, KeyCode::Y, KeyCode::U, KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::SLASH,          ModifierFlag::NONE, KeyCode::S, KeyCode::A,             KeyCode::VK_NONE</autogen>
  <autogen>__KeyToKey__ KeyCode::JIS_UNDERSCORE, ModifierFlag::NONE, KeyCode::CURSOR_DOWN,               KeyCode::VK_NONE</autogen>


  <!-- 左シフト上段(ぃひけぁぅヴ！よふへ）右) -->
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::Q,                ModifierFlag::NONE,                      KeyCode::X,KeyCode::I,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::Q,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::X,KeyCode::I,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::W,                ModifierFlag::NONE,                      KeyCode::H,KeyCode::I,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::W,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::H,KeyCode::I,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::E,                ModifierFlag::NONE,                      KeyCode::K,KeyCode::E,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::E,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::K,KeyCode::E,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::R,                ModifierFlag::NONE,                      KeyCode::X,KeyCode::A,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::R,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::X,KeyCode::A,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::T,                ModifierFlag::NONE,                      KeyCode::X,KeyCode::U,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::T,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::X,KeyCode::U,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::Y,                ModifierFlag::NONE,                      KeyCode::V,KeyCode::U,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::Y,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::V,KeyCode::U,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::U,                ModifierFlag::NONE,                      KeyCode::KEY_1,ModifierFlag::SHIFT_L, KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::U,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::KEY_1,ModifierFlag::SHIFT_L, KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::I,                ModifierFlag::NONE,                      KeyCode::Y,KeyCode::O,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::I,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::Y,KeyCode::O,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::O,                ModifierFlag::NONE,                      KeyCode::H,KeyCode::U,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::O,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::H,KeyCode::U,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::P,                ModifierFlag::NONE,                      KeyCode::H,KeyCode::E,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::P,                ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::H,KeyCode::E,                KeyCode::VK_NONE </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::JIS_ATMARK,       ModifierFlag::NONE,                      KeyCode::KEY_9,ModifierFlag::SHIFT_L, KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::JIS_ATMARK,       ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::KEY_9,ModifierFlag::SHIFT_L, KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::JIS_BRACKET_LEFT, ModifierFlag::NONE,                      KeyCode::CURSOR_RIGHT,                KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::JIS_BRACKET_LEFT, ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::CURSOR_RIGHT,                KeyCode::VK_NONE </autogen>

  <!-- 左シフト中段(だあがばぇずるすまでげ家) -->
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::A,                 ModifierFlag::NONE,                      KeyCode::D, KeyCode::A, KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::A,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::D, KeyCode::A, KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::S,                 ModifierFlag::NONE,                      KeyCode::A,             KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::S,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::A,             KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::D,                 ModifierFlag::NONE,                      KeyCode::G,KeyCode::A,  KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::D,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::G,KeyCode::A,  KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::F,                 ModifierFlag::NONE,                      KeyCode::B,KeyCode::A,  KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::F,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::B,KeyCode::A,  KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::G,                 ModifierFlag::NONE,                      KeyCode::X,KeyCode::E,  KeyCode::VK_MODIFIER_EXTRA1 </autogen>
  <autogen>__KeyToKey__                          KeyCode::G,                 ModifierFlag::EXTRA1|ModifierFlag::NONE, KeyCode::X,KeyCode::E,  KeyCode::VK_NONE            </autogen>
  <autogen>__SimultaneousKeyPresses__ {{LEFT_THUMB}},KeyCode::H,                 ModifierFlag::NONE,                      KeyCode::Z,KeyCode::U,  KeyCode::VK_MODIFIER_EXTRA1 </autogen>
{'fraction_non_alphanumeric': 0.14124136836256845, 'fraction_numerical': 0.004206683070084928, 'mean_word_length': 2.733738331604682, 'pattern_counts': {'":': 0, '<': 315, '<?xml version=': 2, '>': 315, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 3}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2566939', 'n_tokens_mistral': 9038, 'n_tokens_neox': 8862, 'n_words': 1016}