module.exports = {
  'ctrl+`': {
    name: '`',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0000',
    sequence: '\u0000',
    press: 'ctrl+`'
  },
  'ctrl+a': {
    name: 'a',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0001',
    sequence: '\u0001',
    press: 'ctrl+a'
  },
  'ctrl+b': {
    name: 'b',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0002',
    sequence: '\u0002',
    press: 'ctrl+b'
  },
  'ctrl+c': {
    name: 'c',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0003',
    sequence: '\u0003',
    press: 'ctrl+c'
  },
  'ctrl+d': {
    name: 'd',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0004',
    sequence: '\u0004',
    press: 'ctrl+d'
  },
  'ctrl+down': {
    name: 'down',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u000e',
    sequence: '\u000e',
    press: 'ctrl+down'
  },
  'ctrl+e': {
    name: 'e',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0005',
    sequence: '\u0005',
    press: 'ctrl+e'
  },
  'ctrl+f': {
    name: 'f',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0006',
    sequence: '\u0006',
    press: 'ctrl+f'
  },
  'ctrl+g': {
    name: 'g',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0007',
    sequence: '\u0007',
    press: 'ctrl+g'
  },
  'ctrl+k': {
    name: 'k',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u000b',
    sequence: '\u000b',
    press: 'ctrl+k'
  },
  'ctrl+l': {
    name: 'l',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\f',
    sequence: '\f',
    press: 'ctrl+l'
  },
  'ctrl+o': {
    name: 'o',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u000f',
    sequence: '\u000f',
    press: 'ctrl+o'
  },
  'ctrl+q': {
    name: 'q',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0011',
    sequence: '\u0011',
    press: 'ctrl+q'
  },
  'ctrl+r': {
    name: 'r',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0012',
    sequence: '\u0012',
    press: 'ctrl+r'
  },
  'ctrl+s': {
    name: 's',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0013',
    sequence: '\u0013',
    press: 'ctrl+s'
  },
  'ctrl+t': {
    name: 't',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0014',
    sequence: '\u0014',
    press: 'ctrl+t'
  },
  'ctrl+u': {
    name: 'u',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0015',
    sequence: '\u0015',
    press: 'ctrl+u'
  },
  'ctrl+up': {
    name: 'up',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0010',
    sequence: '\u0010',
    press: 'ctrl+up'
  },
  'ctrl+v': {
    name: 'v',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0016',
    sequence: '\u0016',
    press: 'ctrl+v'
  },
  'ctrl+w': {
    name: 'w',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0017',
    sequence: '\u0017',
    press: 'ctrl+w'
  },
  'ctrl+x': {
    name: 'x',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0018',
    sequence: '\u0018',
    press: 'ctrl+x'
  },
  'ctrl+y': {
    name: 'y',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u0019',
    sequence: '\u0019',
    press: 'ctrl+y'
  },
  'ctrl+z': {
    name: 'z',
    ctrl: true,
    meta: false,
    shift: false,
    value: '\u001a',
    sequence: '\u001a',
    press: 'ctrl+z'
  },
  'shift+_': {
    name: '_',
    ctrl: false,
    meta: false,
    shift: true,
    value: '_',
    sequence: '_',
    press: 'shift+_'
  },
  'shift+:': {
    name: ':',
    ctrl: false,
    meta: false,
    shift: true,
    value: ':',
    sequence: ':',
    press: 'shift+:'
  },
  'shift+!': {
    name: '!',
    ctrl: false,
    meta: false,
    shift: true,
    value: '!',
    sequence: '!',
    press: 'shift+!'
  },
  'shift+?': {
    name: '?',
    ctrl: false,
    meta: false,
    shift: true,
    value: '?',
    sequence: '?',
    press: 'shift+?'
  },
  'shift+"': {
    name: '"',
    ctrl: false,
    meta: false,
    shift: true,
    value: '"',
    sequence: '"',
    press: 'shift+"'
  },
  'shift+(': {
    name: '(',
    ctrl: false,
    meta: false,
    shift: true,
    value: '(',
    sequence: '(',
    press: 'shift+('
  },
  'shift+)': {
    name: ')',
    ctrl: false,
    meta: false,
    shift: true,
    value: ')',
    sequence: ')',
    press: 'shift+)'
  },
  'shift+{': {
    name: '{',
    ctrl: false,
    meta: false,
    shift: true,
    value: '{',
    sequence: '{',
    press: 'shift+{'
  },
  'shift+}': {
    name: '}',
    ctrl: false,
    meta: false,
    shift: true,
    value: '}',
    sequence: '}',
    press: 'shift+}'
  },
  'shift+@': {
    name: '@',
    ctrl: false,
    meta: false,
    shift: true,
    value: '@',
    sequence: '@',
    press: 'shift+@'
  },
  'shift+*': {
    name: '*',
    ctrl: false,
    meta: false,
    shift: true,
    value: '*',
    sequence: '*',
    press: 'shift+*'
  },
  'shift+&': {
    name: '&',
    ctrl: false,
    meta: false,
    shift: true,
    value: '&',
    sequence: '&',
    press: 'shift+&'
  },
  'shift+#': {
    name: '#',
    ctrl: false,
    meta: false,
    shift: true,
    value: '#',
    sequence: '#',
    press: 'shift+#'
  },
  'shift+%': {
    name: '%',
    ctrl: false,
    meta: false,
    shift: true,
    value: '%',
    sequence: '%',
    press: 'shift+%'
  },
  'shift+^': {
    name: '^',
    ctrl: false,
    meta: false,
    shift: true,
    value: '^',
    sequence: '^',
    press: 'shift+^'
  },
  'shift++': {
    name: '+',
    ctrl: false,
    meta: false,
    shift: true,
    value: '+',
    sequence: '+',
    press: 'shift++'
  },
  'shift+<': {
    name: '<',
    ctrl: false,
    meta: false,
    shift: true,
    value: '<',
    sequence: '<',
    press: 'shift+<'
  },
  'shift+>': {
    name: '>',
    ctrl: false,
    meta: false,
    shift: true,
    value: '>',
    sequence: '>',
    press: 'shift+>'
  },
  'shift+|': {
    name: '|',
    ctrl: false,
    meta: false,
    shift: true,
    value: '|',
    sequence: '|',
    press: 'shift+|'
  },
  'shift+~': {
    name: '~',
    ctrl: false,
    meta: false,
    shift: true,
    value: '~',
    sequence: '~',
    press: 'shift+~'
  },
  'shift+$': {
    name: '$',
    ctrl: false,
    meta: false,
    shift: true,
    value: '$',
    sequence: '$',
    press: 'shift+$'
  },
  'shift+a': {
    name: 'a',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'A',
    sequence: 'A',
    press: 'shift+a'
  },
  'shift+b': {
    name: 'b',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'B',
    sequence: 'B',
    press: 'shift+b'
  },
  'shift+c': {
    name: 'c',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'C',
    sequence: 'C',
    press: 'shift+c'
  },
  'shift+d': {
    name: 'd',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'D',
    sequence: 'D',
    press: 'shift+d'
  },
  'shift+down': {
    name: 'down',
    ctrl: false,
    meta: false,
    shift: true,
    value: '\u001b[1;2B',
    sequence: '\u001b[1;2B',
    code: '[B',
    press: 'shift+down'
  },
  'shift+e': {
    name: 'e',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'E',
    sequence: 'E',
    press: 'shift+e'
  },
  'shift+f': {
    name: 'f',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'F',
    sequence: 'F',
    press: 'shift+f'
  },
  'shift+g': {
    name: 'g',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'G',
    sequence: 'G',
    press: 'shift+g'
  },
  'shift+h': {
    name: 'h',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'H',
    sequence: 'H',
    press: 'shift+h'
  },
  'shift+i': {
    name: 'i',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'I',
    sequence: 'I',
    press: 'shift+i'
  },
  'shift+j': {
    name: 'j',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'J',
    sequence: 'J',
    press: 'shift+j'
  },
  'shift+k': {
    name: 'k',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'K',
    sequence: 'K',
    press: 'shift+k'
  },
  'shift+l': {
    name: 'l',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'L',
    sequence: 'L',
    press: 'shift+l'
  },
  'shift+left': {
    name: 'left',
    ctrl: false,
    meta: false,
    shift: true,
    value: '\u001b[1;2D',
    sequence: '\u001b[1;2D',
    code: '[D',
    press: 'shift+left'
  },
  'shift+m': {
    name: 'm',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'M',
    sequence: 'M',
    press: 'shift+m'
  },
  'shift+n': {
    name: 'n',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'N',
    sequence: 'N',
    press: 'shift+n'
  },
  'shift+o': {
    name: 'o',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'O',
    sequence: 'O',
    press: 'shift+o'
  },
  'shift+p': {
    name: 'p',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'P',
    sequence: 'P',
    press: 'shift+p'
  },
  'shift+q': {
    name: 'q',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'Q',
    sequence: 'Q',
    press: 'shift+q'
  },
  'shift+r': {
    name: 'r',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'R',
    sequence: 'R',
    press: 'shift+r'
  },
  'shift+right': {
    name: 'right',
    ctrl: false,
    meta: false,
    shift: true,
    value: '\u001b[1;2C',
    sequence: '\u001b[1;2C',
    code: '[C',
    press: 'shift+right'
  },
  'shift+s': {
    name: 's',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'S',
    sequence: 'S',
    press: 'shift+s'
  },
  'shift+t': {
    name: 't',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'T',
    sequence: 'T',
    press: 'shift+t'
  },
  'shift+tab': {
    name: 'tab',
    ctrl: false,
    meta: false,
    shift: true,
    value: '\u001b[Z',
    sequence: '\u001b[Z',
    code: '[Z',
    press: 'shift+tab'
  },
  'shift+u': {
    name: 'u',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'U',
    sequence: 'U',
    press: 'shift+u'
  },
  'shift+up': {
    name: 'up',
    ctrl: false,
    meta: false,
    shift: true,
    value: '\u001b[1;2A',
    sequence: '\u001b[1;2A',
    code: '[A',
    press: 'shift+up'
  },
  'shift+v': {
    name: 'v',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'V',
    sequence: 'V',
    press: 'shift+v'
  },
  'shift+w': {
    name: 'w',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'W',
    sequence: 'W',
    press: 'shift+w'
  },
  'shift+x': {
    name: 'x',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'X',
    sequence: 'X',
    press: 'shift+x'
  },
  'shift+y': {
    name: 'y',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'Y',
    sequence: 'Y',
    press: 'shift+y'
  },
  'shift+z': {
    name: 'z',
    ctrl: false,
    meta: false,
    shift: true,
    value: 'Z',
    sequence: 'Z',
    press: 'shift+z'
  }
};
