xpra icon
Bug tracker and wiki

This bug tracker and wiki are being discontinued
please use https://github.com/Xpra-org/xpra instead.


Ticket #1665: Server_Info.txt

File Server_Info.txt, 110.8 KB (added by Alex, 3 years ago)

system info server

Line 
1antialias                        : {'enabled': 1, 'hinting': 1, 'type': 'ClearType', 'orientation': 'RGB', 'contrast': 1200}
2batch                            : {'delay': {'90p': 309, '80p': 308, 'cur': 183, 'min': 183, 'max': 309, 'avg': 246, '50p': 307}, 'timeout-delay': 15000, 'locked': False, 'max-delay': 500, 'min-delay': 5}
3child                            : {0: {'name': 'sound source', 'pid': 22332, 'dead': False, 'ignore': True, 'command': ('/bin/xpra', '_sound_record', '-', '-', 'pulsesrc', 'device=alsa_output.pci-0000_00_1b.0.analog-stereo.monitor', 'opus+ogg', '', '1.0'), 'forget': True}, 1: {'name': 'xterm -ls', 'pid': 22170, 'dead': False, 'ignore': False, 'command': ('xterm -ls',), 'forget': False}, 2: {'returncode': 0, 'name': 'pulseaudio', 'pid': 22089, 'dead': True, 'ignore': True, 'command': ('pulseaudio', '--start', '-n', '--daemonize=false', '--system=false', '--exit-idle-time=-1', '--load=module-suspend-on-idle', '--load=module-null-sink sink_name="Xpra-Speaker" sink_properties=device.description="Xpra\\ Speaker"', '--load=module-null-sink sink_name="Xpra-Microphone" sink_properties=device.description="Xpra\\ Microphone"', '--load=module-native-protocol-unix', '--load=module-dbus-protocol', '--log-level=2', '--log-target=stderr'), 'forget': False}}
4children                         : {'ignored': 2, 'total': 3, 'dead': 1}
5client                           : {'av-sync': {'total': 0, 'client': {'delay': 0}, 'delta': 0}, 'desktops': 1, 'suspended': False, 'encoding': {'full_csc_modes': {'h264': ('ARGB', 'BGRA', 'BGRX', 'GBRP', 'RGB', 'XRGB', 'YUV420P', 'YUV422P', 'YUV444P'), 'h265': ('BGRX', 'GBRP', 'RGB', 'XRGB', 'YUV420P', 'YUV422P', 'YUV444P'), 'mpeg4': ('YUV420P',), 'vp8': ('YUV420P',), 'vp9': ('YUV420P', 'YUV444P')}, 'scaling.control': 1, 'h264.I420.profile': 'high10', 'rgb_zlib': True, 'video_reinit': 1, 'video_scaling': True, 'rgb_formats': ('RGB', 'RGBX', 'RGBA'), 'supports_delta': ('png', 'rgb24', 'rgb32'), 'min-speed': 30, 'flush': 1, 'speed': 0, 'avcodec2.version': (57, 89, 100), 'rgb24zlib': 1, 'generic': 1, 'min-quality': 30, 'client_options': 1, 'max-soft-expired': 5, 'csc_atoms': 1, 'swscale.version': (4, 6, 100), 'PIL.version': '4.2.1', 'dec_jpeg.version': 1, 'initial_quality': 30, 'dec_pillow.version': '4.2.1', 'rgb_lzo': True, 'numpy.version': '1.13.0', 'delta_buckets': 5, 'x264.I420.profile': 'high10', 'video_b_frames': ('h264',), 'default': 'h264', 'send-timestamps': 0, 'libyuv.version': 0, 'transparency': False, 'h264.YUV420P.profile': 'high10', 'vpx.version': 'v1.6.1', 'x264.YUV420P.profile': 'high10', 'rgb_lz4': True}, 'desktop_size': (1920, 1200), 'idle_time': 10, 'share': False, 'lz4': True, 'screens': 1, 'cursors': True, 'encodings': {'': ('h264', 'vp9', 'vp8', 'mpeg4', 'png', 'png/P', 'png/L', 'rgb', 'jpeg', 'h265'), 'core': ('h264', 'vp9', 'vp8', 'mpeg4', 'png', 'png/P', 'png/L', 'rgb24', 'jpeg', 'h265', 'rgb32', 'rgb'), 'window-icon': ('premult_argb32', 'png')}, 'clipboard_notifications': True, 'machine': 'AMD64', 'uuid': 'da39a3ee5e6b4b0d3255bfef95601890afd80709', 'icons': {'greedy': 1, 'max_size': (128, 128), 'size': (64, 64)}, 'mmap': {'supported': True, 'enabled': False, 'filename': '', 'size': 0}, 'bell': True, 'connection': {'endpoint': '/var/run/user/1000/xpra/testhost-1', 'max_packet_size': 104857600, 'socket': {'fileno': 20, 'type': 'UNIX', 'family': 'STREAM', 'timeout': 0, 'proto': 0}, 'thread': {'write': True, 'read': True, 'parse': True, 'format': True}, 'has_more': False, 'protocol-type': 'socket', 'encoder': 'rencode', 'compressor': 'lz4', 'compression_level': 1, 'send_alias': {'lost-window': 1, 'bell': 5, 'new-override-redirect': 6, 'ping_echo': 9, 'startup-complete': 21, 'connection-lost': 20, 'new-window': 11, 'disconnect': 14, 'ping': 7, 'invalid': 17, 'set_deflate': 18, 'pointer-grab': 19, 'draw': 3, 'notify_close': 4, 'window-metadata': 13, 'configure-override-redirect': 2, 'pointer-ungrab': 15, 'challenge': 16, 'cursor': 8, 'notify_show': 10, 'gibberish': 22, 'hello': 12}, 'input': {'readcount': 184, 'bytecount': 55456}, 'active': True, 'output': {'writecount': 2471, 'bytecount': 1002853}, 'receive_alias': {1: 'connection-lost', 2: 'gibberish', 3: 'disconnect', 4: 'hello', 5: 'invalid', 6: 'webcam-start', 7: 'set-clipboard-enabled', 8: 'ping', 9: 'webcam-frame', 10: 'damage-sequence', 11: 'set-cursors', 12: 'ack-file-chunk', 13: 'set-notify', 14: 'set-bell', 15: 'ping_echo', 16: 'printers', 17: 'logging', 18: 'command_request', 19: 'webcam-stop', 20: 'send-file', 21: 'send-file-chunk', 22: 'set-keyboard-sync-enabled', 23: 'suspend', 24: 'encoding', 25: 'desktop_size', 26: 'focus', 27: 'unmap-window', 28: 'keymap-changed', 29: 'rpc', 30: 'min-speed', 31: 'connection-lost', 32: 'shutdown-server', 33: 'speed', 34: 'close-window', 35: 'exit-server', 36: 'server-settings', 37: 'disconnect', 38: 'quality', 39: 'invalid', 40: 'set_deflate', 41: 'print', 42: 'key-repeat', 43: 'layout-changed', 44: 'sound-control', 45: 'screenshot', 46: 'resume', 47: 'sound-data', 48: 'start-command', 49: 'pointer-position', 50: 'button-action', 51: 'map-window', 52: 'buffer-refresh', 53: 'force-ungrab', 54: 'info-request', 55: 'configure-window', 56: 'min-quality', 57: 'gibberish', 58: 'hello', 59: 'key-action'}, 'type': 'unix-domain', 'large_packets': ('hello', 'window-metadata', 'sound-data', 'info-response'), 'aliases': True}, 'elapsed_time': 48, 'platform': 'win32', 'window': {'frame-sizes': {'menu-bar': 25, 'normal': (9, 9), 'frame': (9, 9, 36, 9), 'caption': 27, 'minimum': (158, 45), 'offset': (9, 36), 'fixed': (3, 3), 'border': 1}}, 'version': '2.1.2', 'randr_notify': True, 'revision': '16904', 'desktop_names': (), 'connection_time': 546369, 'clipboard': True, 'session_type': '', 'screen': {0: {'monitor': {0: {'geometry': (0, 0, 1920, 1200), 'name': '\\\\.\\DISPLAY1', 'size_mm': (677, 423)}}, 'size_mm': (406, 254), 'workarea': (0, 0, 1920, 1166), 'display': '1\\WinSta0\\Default', 'size': (1920, 1200)}}, 'auto_refresh': 150, 'argv': ('Xpra_cmd.exe', 'start', 'ssh:testhost', '--start-child=xterm -ls', '--debug=keyboard'), 'notifications': True, 'proxy': False, 'lzo': False, 'file-size-limit': 100, 'double_click': {'distance': (4, 4), 'time': 550}, 'sound': {'microphone': {'state': 'inactive', 'codecs': ('opus+ogg', 'opus', 'vorbis+mka', 'flac+ogg', 'flac', 'mp3', 'aac+mpeg4', 'wav+lz4', 'wav+lzo', 'wav', 'wavpack', 'opus', 'flac+ogg', 'opus+mka', 'flac', 'mp3+mpeg4')}, 'speaker': {'actual-latency-time': 10000, 'pipeline': 'pulsesrc device="alsa_output.pci-0000_00_1b.0.analog-stereo.monitor" name="src" ! queue name=queue min-threshold-time=0 max-size-buffers=0 max-size-bytes=0 max-size-time=50000000000000 leaky=2 ! volume name=volume volume=1.0 ! opusenc complexity=0 ! oggmux max-delay=20000000 max-page-delay=20000000 ! appsink name=sink emit-signals=true max-buffers=10 drop=true sync=false async=false qos=false', 'container_description': 'ogg', 'codec_description': 'opus', 'bytes': 416016, 'time': 546418, 'pid': 22332, 'actual-buffer-time': 200000, 'queue': {'cur': 0}, 'state': 'active', 'codec': 'opus+ogg', 'codecs': ('opus+ogg', 'opus', 'vorbis+mka', 'flac+ogg', 'flac', 'aac+mpeg4', 'wav+lz4', 'wav+lzo', 'wav', 'wavpack', 'opus', 'flac+ogg', 'opus+mka', 'flac'), 'bitrate': 64000, 'buffer_count': 1195}, 'codec_full_names': True}, 'windows': True, 'type': 'Python/Gtk2', 'counter': 1, 'last-ping-echo': 2739, 'platform_name': 'Microsoft Windows 7', 'idle': False, 'hostname': 'DON-WIN7TEST', 'system_tray': True, 'release': '7', 'file-transfers': {'open': False, 'enabled': True, 'remote': {'open-files': False, 'file-size-limit': 100, 'printing': True, 'file-transfer': True, 'file-chunks': 65536}, 'size-limit': 100}, 'vertical-refresh': 60, 'processor': 'Intel64 Family 6 Model 42 Stepping 7, GenuineIntel'}
6clients                          : {'': 0, 'unauthenticated': 0}
7clipboard                        : {'want_targets': False, 'can-receive': True, 'PRIMARY': {'have_token': False, 'greedy_client': True, 'enabled': False, 'blocked_owner_change': False, 'last-targets': (), 'event': {'selection_get': 0, 'request_contents': 0, 'get_contents': 0, 'selection_request': 0, 'got_token': 0, 'sent_token': 0, 'selection_clear': 0}}, 'CLIPBOARD': {'have_token': True, 'greedy_client': True, 'enabled': True, 'blocked_owner_change': False, 'last-targets': (), 'event': {'selection_get': 0, 'request_contents': 0, 'get_contents': 0, 'selection_request': 0, 'got_token': 1, 'sent_token': 0, 'selection_clear': 0}}, 'can-send': True, 'filters': (), 'max_size': 4194304, 'requests': 0, 'type': 'GDKClipboardProtocolHelper', 'pending': (), 'SECONDARY': {'have_token': False, 'greedy_client': True, 'enabled': False, 'blocked_owner_change': False, 'last-targets': (), 'event': {'selection_get': 0, 'request_contents': 0, 'get_contents': 0, 'selection_request': 0, 'got_token': 0, 'sent_token': 0, 'selection_clear': 0}}}
8commands                         : {'start-child': ('xterm -ls',), 'start-new': False, 'start-after-connect-done': True, 'start': (), 'start-after-connect': (), 'start-child-on-connect': (), 'exit-with-children': False, 'start-child-after-connect': (), 'start-on-connect': ()}
9cursor                           : {'yhot': 12, 'name': 'xterm', 'width': 24, 'height': 24, 'is_default': True, 'default_size': 85, 'x': 475, 'y': 347, 'position': (499, 363), 'serial': 2, 'xhot': 11, 'max_size': (64, 64), 'size': 32}
10damage                           : {'data_queue': {'size': {'90p': 0, '80p': 0, 'cur': 0, 'min': 0, 'max': 0, 'avg': 0, '50p': 0}}, 'packets_sent': 26, 'in_latency': {'max': 9, '90p': 3, 'avg': 1, 'cur': 0, 'min': 0}, 'packet_queue': {'size': {'90p': 0, '80p': 0, 'cur': 0, 'min': 0, 'max': 0, 'avg': 0, '50p': 0}}, 'out_latency': {'max': 9, '90p': 3, 'avg': 2, 'cur': 0, 'min': 0}, 'events': 148}
11dpi                              : {'default': 0, 'x': 120, 'y': 120, 'value': 120}
12encoding                         : {'decode_errors': 0, 'pixels_encoded_per_second': 57865670}
13encodings                        : {'': ('rgb', 'h264', 'vp9', 'h264+mp4', 'vp8', 'mpeg4+mp4', 'vp8+webm', 'png', 'png/L', 'png/P', 'jpeg'), 'core': ('rgb24', 'rgb32', 'h264', 'vp9', 'h264+mp4', 'vp8', 'mpeg4+mp4', 'vp8+webm', 'png', 'png/L', 'png/P', 'jpeg'), 'problematic': (), 'with_lossless_mode': ('h264',), 'with_quality': ('h264', 'vp9', 'vp8', 'jpeg'), 'allowed': ('h264', 'vp9', 'vp8', 'mpeg4', 'mpeg4+mp4', 'h264+mp4', 'mpeg4+mp4', 'vp8+webm', 'vp9+webm', 'png', 'png/P', 'png/L', 'rgb', 'rgb24', 'rgb32', 'jpeg', 'h265'), 'with_speed': ('png/L', 'h264', 'vp9', 'vp8', 'rgb', 'png/P', 'png'), 'lossless': ('rgb24', 'rgb32', 'png', 'png/L', 'png/P')}
14env                              : {'WINDOWID': '37748820', 'LESS': '-X', 'CLIXLOGFILE': '/home/user/.clix.testhost.log', 'XDG_CURRENT_DESKTOP': 'Xpra', 'TMUX': '/tmp/tmux-1000/default,7923,0', 'XDG_SESSION_TYPE': 'x11', 'SSH_CLIENT': '10.10.24.89 51116 22', 'QT_IM_MODULE': 'xim', 'LOGNAME': 'user', 'USER': 'user', 'QTDIR': '/usr/lib64/qt-3.3', 'HOME': '/home/user', 'DISPLAY': ':1', 'SSH_AGENT_PID': '3606', 'LANG': 'de_DE.UTF-8', 'QTLIB': '/usr/lib64/qt-3.3/lib', 'TERM': 'screen-256color', 'SHELL': '/bin/bash', 'XPRA_LOG_DIR': '/run/user/1000/xpra', 'XAUTHORITY': '/run/gdm/auth-for-user-ZU1fnr/database', 'QTINC': '/usr/lib64/qt-3.3/include', 'TERMINATOR_UUID': 'urn:uuid:78859f2c-3142-4aee-83fe-583f41550ae7', 'HISTSIZE': '1000', 'WINDOWPATH': '1', 'EDITOR': 'vi', 'XPRA_PROXY_START_UUID': 'e58867b60ae9481fa7ff3bef66b8b223', 'MAILMSG': '[Sie haben Post]', 'XMODIFIERS': '@im=none', 'JAVA_HOME': '/usr/local/java/jdk1.8.0_121_amd64', 'USERNAME': 'user', 'IMSETTINGS_MODULE': 'none', 'SHLVL': '0', 'SSH_AUTH_SOCK': '/tmp/ssh-lEIakm8N3Spk/agent.3554', 'PRCS_LOGQUERY': 'true', 'XDG_RUNTIME_DIR': '/run/user/1000', 'GTK_IM_MODULE': 'xim', 'DBUS_SESSION_BUS_PID': '21974', 'NNTPSERVER': 'news.belwue.de', 'DISABLE_IMSETTINGS': '1', 'PATH': '/home/user/bin:/home/user/bin/amd64-linux/RedHatEL-7:/home/user/bin/amd64-linux:/usr/local/bin:/bin:/usr/bin:/usr/bin/X11:/opt/kde/bin:.:/usr/local/cdtng:/usr/local/java/jdk1.8.0_121/bin:/usr/local/java/jdk1.8.0_121_amd64/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/local/openssh/7.4p1/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/openssh/7.4p1/bin', 'OSTYPE': 'RedHatEL-7', 'HOST': 'testhost', 'PRINTER': 'hp2-hag75og', 'HOSTTYPE': 'amd64-linux', 'LEGION_SECURITY_ID': '3554', 'LESSOPEN': '||/usr/bin/lesspipe.sh %s', 'DBUS_SESSION_BUS_ADDRESS': 'unix:abstract=/tmp/dbus-j25o3wHWNj,guid=098dbec2497da48f6033778759e61f7d', 'KDEDIRS': '/usr', 'NXPROXY': '/usr/local/nx/bin/nxproxy', 'KRB5CCNAME': 'FILE:/tmp/krb5cc_1000_s9nVaI', 'OLDPWD': '/home/user', 'HOSTNAME': 'testhost', 'GDM_LANG': 'en_US.UTF-8', 'HISTCONTROL': 'ignoredups', 'PWD': '/home/user', 'CVS_RSH': 'ssh', 'COLORTERM': 'gnome-terminal', 'MAIL': '/var/spool/mail/user', 'SSH_CONNECTION': '10.10.24.89 51116 10.10.24.46 22', 'PAGER': 'less', 'XDG_DATA_DIRS': '/home/user/.local/share/flatpak/exports/share/:/var/lib/flatpak/exports/share/:/usr/local/share/:/usr/share/', 'TMUX_PANE': '%8', 'QT_PLUGIN_PATH': '/usr/lib64/kde4/plugins:/usr/lib/kde4/plugins'}
15features                         : {'av-sync': True, 'bell': True, 'window_refresh_config': True, 'window-filters': True, 'sound_sequence': True, 'change-speed': True, 'cursors': True, 'event_request': True, 'server-events': True, 'change-quality': True, 'window_unmap': True, 'encoding': {'generic': True}, 'change-min-quality': True, 'clipboard': {'enable-selections': True}, 'suspend-resume': True, 'randr': True, 'sound': {'ogg-latency-fix': True, 'eos-sequence': True}, 'sharing': False, 'notify-startup-complete': True, 'notifications': True, 'idle_timeout': 0, 'toggle_keyboard_sync': True, 'xsettings-tuple': True, 'auto-video-encoding': True, 'change-min-speed': True, 'rpc-types': ('menu', 'dbus'), 'toggle_cursors_bell_notify': True, 'pulseaudio': {'': None, 'command': 'pulseaudio --start -n --daemonize=false --system=false --exit-idle-time=-1 --load=module-suspend-on-idle \'--load=module-null-sink sink_name="Xpra-Speaker" sink_properties=device.description="Xpra\\ Speaker"\' \'--load=module-null-sink sink_name="Xpra-Microphone" sink_properties=device.description="Xpra\\ Microphone"\' --load=module-native-protocol-unix --load=module-dbus-protocol --log-level=2 --log-target=stderr'}, 'dbus_proxy': True}
16file                             : {'open': False, 'enabled': True, 'size-limit': 100}
17keyboard                         : {'repeat': {'delay': 500, 'interval': 33}, 'layout': 'de', 'keys_pressed': (), 'fast-switching': True, 'enabled': True, 'sync': True, 'keymap': {0: (65385, 'Cancel', 3, 0, 0), 1: (65385, 'Cancel', 3, 0, 1), 2: (65385, 'Cancel', 3, 0, 2), 3: (65385, 'Cancel', 3, 0, 3), 4: (65385, 'Cancel', 3, 1, 0), 5: (65385, 'Cancel', 3, 1, 1), 6: (65385, 'Cancel', 3, 1, 2), 7: (65385, 'Cancel', 3, 1, 3), 8: (65385, 'Cancel', 3, 2, 0), 9: (65385, 'Cancel', 3, 2, 1), 10: (65385, 'Cancel', 3, 2, 2), 11: (65385, 'Cancel', 3, 2, 3), 12: (65288, 'BackSpace', 8, 0, 0), 13: (65288, 'BackSpace', 8, 0, 1), 14: (65288, 'BackSpace', 8, 0, 2), 15: (65288, 'BackSpace', 8, 0, 3), 16: (65288, 'BackSpace', 8, 1, 0), 17: (65288, 'BackSpace', 8, 1, 1), 18: (65288, 'BackSpace', 8, 1, 2), 19: (65288, 'BackSpace', 8, 1, 3), 20: (65288, 'BackSpace', 8, 2, 0), 21: (65288, 'BackSpace', 8, 2, 1), 22: (65288, 'BackSpace', 8, 2, 2), 23: (65288, 'BackSpace', 8, 2, 3), 24: (65289, 'Tab', 9, 0, 0), 25: (65056, 'ISO_Left_Tab', 9, 0, 1), 26: (65289, 'Tab', 9, 0, 2), 27: (65056, 'ISO_Left_Tab', 9, 0, 3), 28: (65289, 'Tab', 9, 1, 0), 29: (65056, 'ISO_Left_Tab', 9, 1, 1), 30: (65289, 'Tab', 9, 1, 2), 31: (65056, 'ISO_Left_Tab', 9, 1, 3), 32: (65289, 'Tab', 9, 2, 0), 33: (65056, 'ISO_Left_Tab', 9, 2, 1), 34: (65289, 'Tab', 9, 2, 2), 35: (65056, 'ISO_Left_Tab', 9, 2, 3), 36: (65291, 'Clear', 12, 0, 0), 37: (65291, 'Clear', 12, 0, 1), 38: (65291, 'Clear', 12, 0, 2), 39: (65291, 'Clear', 12, 0, 3), 40: (65291, 'Clear', 12, 1, 0), 41: (65291, 'Clear', 12, 1, 1), 42: (65291, 'Clear', 12, 1, 2), 43: (65291, 'Clear', 12, 1, 3), 44: (65291, 'Clear', 12, 2, 0), 45: (65291, 'Clear', 12, 2, 1), 46: (65291, 'Clear', 12, 2, 2), 47: (65291, 'Clear', 12, 2, 3), 48: (65293, 'Return', 13, 0, 0), 49: (65293, 'Return', 13, 0, 1), 50: (65293, 'Return', 13, 0, 2), 51: (65293, 'Return', 13, 0, 3), 52: (65293, 'Return', 13, 1, 0), 53: (65293, 'Return', 13, 1, 1), 54: (65293, 'Return', 13, 1, 2), 55: (65293, 'Return', 13, 1, 3), 56: (65293, 'Return', 13, 2, 0), 57: (65293, 'Return', 13, 2, 1), 58: (65293, 'Return', 13, 2, 2), 59: (65293, 'Return', 13, 2, 3), 60: (65505, 'Shift_L', 16, 0, 0), 61: (65505, 'Shift_L', 16, 0, 1), 62: (65505, 'Shift_L', 16, 0, 2), 63: (65505, 'Shift_L', 16, 0, 3), 64: (65505, 'Shift_L', 16, 1, 0), 65: (65505, 'Shift_L', 16, 1, 1), 66: (65505, 'Shift_L', 16, 1, 2), 67: (65505, 'Shift_L', 16, 1, 3), 68: (65505, 'Shift_L', 16, 2, 0), 69: (65505, 'Shift_L', 16, 2, 1), 70: (65505, 'Shift_L', 16, 2, 2), 71: (65505, 'Shift_L', 16, 2, 3), 72: (65507, 'Control_L', 17, 0, 0), 73: (65507, 'Control_L', 17, 0, 1), 74: (65507, 'Control_L', 17, 0, 2), 75: (65507, 'Control_L', 17, 0, 3), 76: (65507, 'Control_L', 17, 1, 0), 77: (65507, 'Control_L', 17, 1, 1), 78: (65507, 'Control_L', 17, 1, 2), 79: (65507, 'Control_L', 17, 1, 3), 80: (65507, 'Control_L', 17, 2, 0), 81: (65507, 'Control_L', 17, 2, 1), 82: (65507, 'Control_L', 17, 2, 2), 83: (65507, 'Control_L', 17, 2, 3), 84: (65513, 'Alt_L', 18, 0, 0), 85: (65513, 'Alt_L', 18, 0, 1), 86: (65513, 'Alt_L', 18, 0, 2), 87: (65513, 'Alt_L', 18, 0, 3), 88: (65513, 'Alt_L', 18, 1, 0), 89: (65513, 'Alt_L', 18, 1, 1), 90: (65513, 'Alt_L', 18, 1, 2), 91: (65513, 'Alt_L', 18, 1, 3), 92: (65513, 'Alt_L', 18, 2, 0), 93: (65513, 'Alt_L', 18, 2, 1), 94: (65513, 'Alt_L', 18, 2, 2), 95: (65513, 'Alt_L', 18, 2, 3), 96: (65299, 'Pause', 19, 0, 0), 97: (65299, 'Pause', 19, 0, 1), 98: (65299, 'Pause', 19, 0, 2), 99: (65299, 'Pause', 19, 0, 3), 100: (65299, 'Pause', 19, 1, 0), 101: (65299, 'Pause', 19, 1, 1), 102: (65299, 'Pause', 19, 1, 2), 103: (65299, 'Pause', 19, 1, 3), 104: (65299, 'Pause', 19, 2, 0), 105: (65299, 'Pause', 19, 2, 1), 106: (65299, 'Pause', 19, 2, 2), 107: (65299, 'Pause', 19, 2, 3), 108: (65307, 'Escape', 27, 0, 0), 109: (65307, 'Escape', 27, 0, 1), 110: (65307, 'Escape', 27, 0, 2), 111: (65307, 'Escape', 27, 0, 3), 112: (65307, 'Escape', 27, 1, 0), 113: (65307, 'Escape', 27, 1, 1), 114: (65307, 'Escape', 27, 1, 2), 115: (65307, 'Escape', 27, 1, 3), 116: (65307, 'Escape', 27, 2, 0), 117: (65307, 'Escape', 27, 2, 1), 118: (65307, 'Escape', 27, 2, 2), 119: (65307, 'Escape', 27, 2, 3), 120: (32, 'space', 32, 0, 0), 121: (32, 'space', 32, 0, 1), 122: (32, 'space', 32, 1, 0), 123: (32, 'space', 32, 1, 1), 124: (32, 'space', 32, 2, 0), 125: (32, 'space', 32, 2, 1), 126: (65365, 'Page_Up', 33, 0, 0), 127: (65365, 'Page_Up', 33, 0, 1), 128: (65365, 'Page_Up', 33, 0, 2), 129: (65365, 'Page_Up', 33, 0, 3), 130: (65365, 'Page_Up', 33, 1, 0), 131: (65365, 'Page_Up', 33, 1, 1), 132: (65365, 'Page_Up', 33, 1, 2), 133: (65365, 'Page_Up', 33, 1, 3), 134: (65365, 'Page_Up', 33, 2, 0), 135: (65365, 'Page_Up', 33, 2, 1), 136: (65365, 'Page_Up', 33, 2, 2), 137: (65365, 'Page_Up', 33, 2, 3), 138: (65366, 'Page_Down', 34, 0, 0), 139: (65366, 'Page_Down', 34, 0, 1), 140: (65366, 'Page_Down', 34, 0, 2), 141: (65366, 'Page_Down', 34, 0, 3), 142: (65366, 'Page_Down', 34, 1, 0), 143: (65366, 'Page_Down', 34, 1, 1), 144: (65366, 'Page_Down', 34, 1, 2), 145: (65366, 'Page_Down', 34, 1, 3), 146: (65366, 'Page_Down', 34, 2, 0), 147: (65366, 'Page_Down', 34, 2, 1), 148: (65366, 'Page_Down', 34, 2, 2), 149: (65366, 'Page_Down', 34, 2, 3), 150: (65367, 'End', 35, 0, 0), 151: (65367, 'End', 35, 0, 1), 152: (65367, 'End', 35, 0, 2), 153: (65367, 'End', 35, 0, 3), 154: (65367, 'End', 35, 1, 0), 155: (65367, 'End', 35, 1, 1), 156: (65367, 'End', 35, 1, 2), 157: (65367, 'End', 35, 1, 3), 158: (65367, 'End', 35, 2, 0), 159: (65367, 'End', 35, 2, 1), 160: (65367, 'End', 35, 2, 2), 161: (65367, 'End', 35, 2, 3), 162: (65360, 'Home', 36, 0, 0), 163: (65360, 'Home', 36, 0, 1), 164: (65360, 'Home', 36, 0, 2), 165: (65360, 'Home', 36, 0, 3), 166: (65360, 'Home', 36, 1, 0), 167: (65360, 'Home', 36, 1, 1), 168: (65360, 'Home', 36, 1, 2), 169: (65360, 'Home', 36, 1, 3), 170: (65360, 'Home', 36, 2, 0), 171: (65360, 'Home', 36, 2, 1), 172: (65360, 'Home', 36, 2, 2), 173: (65360, 'Home', 36, 2, 3), 174: (65361, 'Left', 37, 0, 0), 175: (65361, 'Left', 37, 0, 1), 176: (65361, 'Left', 37, 0, 2), 177: (65361, 'Left', 37, 0, 3), 178: (65361, 'Left', 37, 1, 0), 179: (65361, 'Left', 37, 1, 1), 180: (65361, 'Left', 37, 1, 2), 181: (65361, 'Left', 37, 1, 3), 182: (65361, 'Left', 37, 2, 0), 183: (65361, 'Left', 37, 2, 1), 184: (65361, 'Left', 37, 2, 2), 185: (65361, 'Left', 37, 2, 3), 186: (65362, 'Up', 38, 0, 0), 187: (65362, 'Up', 38, 0, 1), 188: (65362, 'Up', 38, 0, 2), 189: (65362, 'Up', 38, 0, 3), 190: (65362, 'Up', 38, 1, 0), 191: (65362, 'Up', 38, 1, 1), 192: (65362, 'Up', 38, 1, 2), 193: (65362, 'Up', 38, 1, 3), 194: (65362, 'Up', 38, 2, 0), 195: (65362, 'Up', 38, 2, 1), 196: (65362, 'Up', 38, 2, 2), 197: (65362, 'Up', 38, 2, 3), 198: (65363, 'Right', 39, 0, 0), 199: (65363, 'Right', 39, 0, 1), 200: (65363, 'Right', 39, 0, 2), 201: (65363, 'Right', 39, 0, 3), 202: (65363, 'Right', 39, 1, 0), 203: (65363, 'Right', 39, 1, 1), 204: (65363, 'Right', 39, 1, 2), 205: (65363, 'Right', 39, 1, 3), 206: (65363, 'Right', 39, 2, 0), 207: (65363, 'Right', 39, 2, 1), 208: (65363, 'Right', 39, 2, 2), 209: (65363, 'Right', 39, 2, 3), 210: (65364, 'Down', 40, 0, 0), 211: (65364, 'Down', 40, 0, 1), 212: (65364, 'Down', 40, 0, 2), 213: (65364, 'Down', 40, 0, 3), 214: (65364, 'Down', 40, 1, 0), 215: (65364, 'Down', 40, 1, 1), 216: (65364, 'Down', 40, 1, 2), 217: (65364, 'Down', 40, 1, 3), 218: (65364, 'Down', 40, 2, 0), 219: (65364, 'Down', 40, 2, 1), 220: (65364, 'Down', 40, 2, 2), 221: (65364, 'Down', 40, 2, 3), 222: (65377, 'Print', 44, 0, 0), 223: (65377, 'Print', 44, 0, 1), 224: (65377, 'Print', 44, 0, 2), 225: (65377, 'Print', 44, 0, 3), 226: (65377, 'Print', 44, 1, 0), 227: (65377, 'Print', 44, 1, 1), 228: (65377, 'Print', 44, 1, 2), 229: (65377, 'Print', 44, 1, 3), 230: (65377, 'Print', 44, 2, 0), 231: (65377, 'Print', 44, 2, 1), 232: (65377, 'Print', 44, 2, 2), 233: (65377, 'Print', 44, 2, 3), 234: (65379, 'Insert', 45, 0, 0), 235: (65379, 'Insert', 45, 0, 1), 236: (65379, 'Insert', 45, 0, 2), 237: (65379, 'Insert', 45, 0, 3), 238: (65379, 'Insert', 45, 1, 0), 239: (65379, 'Insert', 45, 1, 1), 240: (65379, 'Insert', 45, 1, 2), 241: (65379, 'Insert', 45, 1, 3), 242: (65379, 'Insert', 45, 2, 0), 243: (65379, 'Insert', 45, 2, 1), 244: (65379, 'Insert', 45, 2, 2), 245: (65379, 'Insert', 45, 2, 3), 246: (65535, 'Delete', 46, 0, 0), 247: (65535, 'Delete', 46, 0, 1), 248: (65535, 'Delete', 46, 0, 2), 249: (65535, 'Delete', 46, 0, 3), 250: (65535, 'Delete', 46, 1, 0), 251: (65535, 'Delete', 46, 1, 1), 252: (65535, 'Delete', 46, 1, 2), 253: (65535, 'Delete', 46, 1, 3), 254: (65535, 'Delete', 46, 2, 0), 255: (65535, 'Delete', 46, 2, 1), 256: (65535, 'Delete', 46, 2, 2), 257: (65535, 'Delete', 46, 2, 3), 258: (65386, 'Help', 47, 0, 0), 259: (65386, 'Help', 47, 0, 1), 260: (65386, 'Help', 47, 0, 2), 261: (65386, 'Help', 47, 0, 3), 262: (65386, 'Help', 47, 1, 0), 263: (65386, 'Help', 47, 1, 1), 264: (65386, 'Help', 47, 1, 2), 265: (65386, 'Help', 47, 1, 3), 266: (65386, 'Help', 47, 2, 0), 267: (65386, 'Help', 47, 2, 1), 268: (65386, 'Help', 47, 2, 2), 269: (65386, 'Help', 47, 2, 3), 270: (48, '0', 48, 0, 0), 271: (61, 'equal', 48, 0, 1), 272: (125, 'braceright', 48, 0, 2), 273: (48, '0', 48, 1, 0), 274: (41, 'parenright', 48, 1, 1), 275: (48, '0', 48, 2, 0), 276: (41, 'parenright', 48, 2, 1), 277: (49, '1', 49, 0, 0), 278: (33, 'exclam', 49, 0, 1), 279: (49, '1', 49, 1, 0), 280: (33, 'exclam', 49, 1, 1), 281: (49, '1', 49, 2, 0), 282: (33, 'exclam', 49, 2, 1), 283: (50, '2', 50, 0, 0), 284: (34, 'quotedbl', 50, 0, 1), 285: (178, 'twosuperior', 50, 0, 2), 286: (50, '2', 50, 1, 0), 287: (64, 'at', 50, 1, 1), 288: (50, '2', 50, 2, 0), 289: (34, 'quotedbl', 50, 2, 1), 290: (51, '3', 51, 0, 0), 291: (167, 'section', 51, 0, 1), 292: (179, 'threesuperior', 51, 0, 2), 293: (51, '3', 51, 1, 0), 294: (35, 'numbersign', 51, 1, 1), 295: (51, '3', 51, 2, 0), 296: (1712, 'numerosign', 51, 2, 1), 297: (52, '4', 52, 0, 0), 298: (36, 'dollar', 52, 0, 1), 299: (52, '4', 52, 1, 0), 300: (36, 'dollar', 52, 1, 1), 301: (52, '4', 52, 2, 0), 302: (59, 'semicolon', 52, 2, 1), 303: (53, '5', 53, 0, 0), 304: (37, 'percent', 53, 0, 1), 305: (53, '5', 53, 1, 0), 306: (37, 'percent', 53, 1, 1), 307: (53, '5', 53, 2, 0), 308: (37, 'percent', 53, 2, 1), 309: (54, '6', 54, 0, 0), 310: (38, 'ampersand', 54, 0, 1), 311: (54, '6', 54, 1, 0), 312: (94, 'asciicircum', 54, 1, 1), 313: (54, '6', 54, 2, 0), 314: (58, 'colon', 54, 2, 1), 315: (55, '7', 55, 0, 0), 316: (47, 'slash', 55, 0, 1), 317: (123, 'braceleft', 55, 0, 2), 318: (55, '7', 55, 1, 0), 319: (38, 'ampersand', 55, 1, 1), 320: (55, '7', 55, 2, 0), 321: (63, 'question', 55, 2, 1), 322: (56, '8', 56, 0, 0), 323: (40, 'parenleft', 56, 0, 1), 324: (91, 'bracketleft', 56, 0, 2), 325: (56, '8', 56, 1, 0), 326: (42, 'asterisk', 56, 1, 1), 327: (56, '8', 56, 2, 0), 328: (42, 'asterisk', 56, 2, 1), 329: (16785597, 'U+20BD', 56, 2, 2), 330: (57, '9', 57, 0, 0), 331: (41, 'parenright', 57, 0, 1), 332: (93, 'bracketright', 57, 0, 2), 333: (57, '9', 57, 1, 0), 334: (40, 'parenleft', 57, 1, 1), 335: (57, '9', 57, 2, 0), 336: (40, 'parenleft', 57, 2, 1), 337: (97, 'a', 65, 0, 0), 338: (65, 'A', 65, 0, 1), 339: (97, 'a', 65, 1, 0), 340: (65, 'A', 65, 1, 1), 341: (1734, 'Cyrillic_ef', 65, 2, 0), 342: (1766, 'Cyrillic_EF', 65, 2, 1), 343: (98, 'b', 66, 0, 0), 344: (66, 'B', 66, 0, 1), 345: (98, 'b', 66, 1, 0), 346: (66, 'B', 66, 1, 1), 347: (1737, 'Cyrillic_i', 66, 2, 0), 348: (1769, 'Cyrillic_I', 66, 2, 1), 349: (99, 'c', 67, 0, 0), 350: (67, 'C', 67, 0, 1), 351: (99, 'c', 67, 1, 0), 352: (67, 'C', 67, 1, 1), 353: (1747, 'Cyrillic_es', 67, 2, 0), 354: (1779, 'Cyrillic_ES', 67, 2, 1), 355: (100, 'd', 68, 0, 0), 356: (68, 'D', 68, 0, 1), 357: (100, 'd', 68, 1, 0), 358: (68, 'D', 68, 1, 1), 359: (1751, 'Cyrillic_ve', 68, 2, 0), 360: (1783, 'Cyrillic_VE', 68, 2, 1), 361: (101, 'e', 69, 0, 0), 362: (69, 'E', 69, 0, 1), 363: (8364, 'EuroSign', 69, 0, 2), 364: (101, 'e', 69, 1, 0), 365: (69, 'E', 69, 1, 1), 366: (1749, 'Cyrillic_u', 69, 2, 0), 367: (1781, 'Cyrillic_U', 69, 2, 1), 368: (102, 'f', 70, 0, 0), 369: (70, 'F', 70, 0, 1), 370: (102, 'f', 70, 1, 0), 371: (70, 'F', 70, 1, 1), 372: (1729, 'Cyrillic_a', 70, 2, 0), 373: (1761, 'Cyrillic_A', 70, 2, 1), 374: (103, 'g', 71, 0, 0), 375: (71, 'G', 71, 0, 1), 376: (103, 'g', 71, 1, 0), 377: (71, 'G', 71, 1, 1), 378: (1744, 'Cyrillic_pe', 71, 2, 0), 379: (1776, 'Cyrillic_PE', 71, 2, 1), 380: (104, 'h', 72, 0, 0), 381: (72, 'H', 72, 0, 1), 382: (104, 'h', 72, 1, 0), 383: (72, 'H', 72, 1, 1), 384: (1746, 'Cyrillic_er', 72, 2, 0), 385: (1778, 'Cyrillic_ER', 72, 2, 1), 386: (105, 'i', 73, 0, 0), 387: (73, 'I', 73, 0, 1), 388: (105, 'i', 73, 1, 0), 389: (73, 'I', 73, 1, 1), 390: (1755, 'Cyrillic_sha', 73, 2, 0), 391: (1787, 'Cyrillic_SHA', 73, 2, 1), 392: (106, 'j', 74, 0, 0), 393: (74, 'J', 74, 0, 1), 394: (106, 'j', 74, 1, 0), 395: (74, 'J', 74, 1, 1), 396: (1743, 'Cyrillic_o', 74, 2, 0), 397: (1775, 'Cyrillic_O', 74, 2, 1), 398: (107, 'k', 75, 0, 0), 399: (75, 'K', 75, 0, 1), 400: (107, 'k', 75, 1, 0), 401: (75, 'K', 75, 1, 1), 402: (1740, 'Cyrillic_el', 75, 2, 0), 403: (1772, 'Cyrillic_EL', 75, 2, 1), 404: (108, 'l', 76, 0, 0), 405: (76, 'L', 76, 0, 1), 406: (108, 'l', 76, 1, 0), 407: (76, 'L', 76, 1, 1), 408: (1732, 'Cyrillic_de', 76, 2, 0), 409: (1764, 'Cyrillic_DE', 76, 2, 1), 410: (109, 'm', 77, 0, 0), 411: (77, 'M', 77, 0, 1), 412: (181, 'mu', 77, 0, 2), 413: (109, 'm', 77, 1, 0), 414: (77, 'M', 77, 1, 1), 415: (1752, 'Cyrillic_softsign', 77, 2, 0), 416: (1784, 'Cyrillic_SOFTSIGN', 77, 2, 1), 417: (110, 'n', 78, 0, 0), 418: (78, 'N', 78, 0, 1), 419: (110, 'n', 78, 1, 0), 420: (78, 'N', 78, 1, 1), 421: (1748, 'Cyrillic_te', 78, 2, 0), 422: (1780, 'Cyrillic_TE', 78, 2, 1), 423: (111, 'o', 79, 0, 0), 424: (79, 'O', 79, 0, 1), 425: (111, 'o', 79, 1, 0), 426: (79, 'O', 79, 1, 1), 427: (1757, 'Cyrillic_shcha', 79, 2, 0), 428: (1789, 'Cyrillic_SHCHA', 79, 2, 1), 429: (112, 'p', 80, 0, 0), 430: (80, 'P', 80, 0, 1), 431: (112, 'p', 80, 1, 0), 432: (80, 'P', 80, 1, 1), 433: (1754, 'Cyrillic_ze', 80, 2, 0), 434: (1786, 'Cyrillic_ZE', 80, 2, 1), 435: (113, 'q', 81, 0, 0), 436: (81, 'Q', 81, 0, 1), 437: (64, 'at', 81, 0, 2), 438: (113, 'q', 81, 1, 0), 439: (81, 'Q', 81, 1, 1), 440: (1738, 'Cyrillic_shorti', 81, 2, 0), 441: (1770, 'Cyrillic_SHORTI', 81, 2, 1), 442: (114, 'r', 82, 0, 0), 443: (82, 'R', 82, 0, 1), 444: (114, 'r', 82, 1, 0), 445: (82, 'R', 82, 1, 1), 446: (1739, 'Cyrillic_ka', 82, 2, 0), 447: (1771, 'Cyrillic_KA', 82, 2, 1), 448: (115, 's', 83, 0, 0), 449: (83, 'S', 83, 0, 1), 450: (115, 's', 83, 1, 0), 451: (83, 'S', 83, 1, 1), 452: (1753, 'Cyrillic_yeru', 83, 2, 0), 453: (1785, 'Cyrillic_YERU', 83, 2, 1), 454: (116, 't', 84, 0, 0), 455: (84, 'T', 84, 0, 1), 456: (116, 't', 84, 1, 0), 457: (84, 'T', 84, 1, 1), 458: (1733, 'Cyrillic_ie', 84, 2, 0), 459: (1765, 'Cyrillic_IE', 84, 2, 1), 460: (117, 'u', 85, 0, 0), 461: (85, 'U', 85, 0, 1), 462: (117, 'u', 85, 1, 0), 463: (85, 'U', 85, 1, 1), 464: (1735, 'Cyrillic_ghe', 85, 2, 0), 465: (1767, 'Cyrillic_GHE', 85, 2, 1), 466: (118, 'v', 86, 0, 0), 467: (86, 'V', 86, 0, 1), 468: (118, 'v', 86, 1, 0), 469: (86, 'V', 86, 1, 1), 470: (1741, 'Cyrillic_em', 86, 2, 0), 471: (1773, 'Cyrillic_EM', 86, 2, 1), 472: (119, 'w', 87, 0, 0), 473: (87, 'W', 87, 0, 1), 474: (119, 'w', 87, 1, 0), 475: (87, 'W', 87, 1, 1), 476: (1731, 'Cyrillic_tse', 87, 2, 0), 477: (1763, 'Cyrillic_TSE', 87, 2, 1), 478: (120, 'x', 88, 0, 0), 479: (88, 'X', 88, 0, 1), 480: (120, 'x', 88, 1, 0), 481: (88, 'X', 88, 1, 1), 482: (1758, 'Cyrillic_che', 88, 2, 0), 483: (1790, 'Cyrillic_CHE', 88, 2, 1), 484: (121, 'y', 89, 0, 0), 485: (89, 'Y', 89, 0, 1), 486: (121, 'y', 89, 1, 0), 487: (89, 'Y', 89, 1, 1), 488: (1742, 'Cyrillic_en', 89, 2, 0), 489: (1774, 'Cyrillic_EN', 89, 2, 1), 490: (122, 'z', 90, 0, 0), 491: (90, 'Z', 90, 0, 1), 492: (122, 'z', 90, 1, 0), 493: (90, 'Z', 90, 1, 1), 494: (1745, 'Cyrillic_ya', 90, 2, 0), 495: (1777, 'Cyrillic_YA', 90, 2, 1), 496: (65511, 'Meta_L', 91, 0, 0), 497: (65511, 'Meta_L', 91, 0, 1), 498: (65511, 'Meta_L', 91, 0, 2), 499: (65511, 'Meta_L', 91, 0, 3), 500: (65511, 'Meta_L', 91, 1, 0), 501: (65511, 'Meta_L', 91, 1, 1), 502: (65511, 'Meta_L', 91, 1, 2), 503: (65511, 'Meta_L', 91, 1, 3), 504: (65511, 'Meta_L', 91, 2, 0), 505: (65511, 'Meta_L', 91, 2, 1), 506: (65511, 'Meta_L', 91, 2, 2), 507: (65511, 'Meta_L', 91, 2, 3), 508: (65512, 'Meta_R', 92, 0, 0), 509: (65512, 'Meta_R', 92, 0, 1), 510: (65512, 'Meta_R', 92, 0, 2), 511: (65512, 'Meta_R', 92, 0, 3), 512: (65512, 'Meta_R', 92, 1, 0), 513: (65512, 'Meta_R', 92, 1, 1), 514: (65512, 'Meta_R', 92, 1, 2), 515: (65512, 'Meta_R', 92, 1, 3), 516: (65512, 'Meta_R', 92, 2, 0), 517: (65512, 'Meta_R', 92, 2, 1), 518: (65512, 'Meta_R', 92, 2, 2), 519: (65512, 'Meta_R', 92, 2, 3), 520: (65383, 'Menu', 93, 0, 0), 521: (65383, 'Menu', 93, 0, 1), 522: (65383, 'Menu', 93, 0, 2), 523: (65383, 'Menu', 93, 0, 3), 524: (65383, 'Menu', 93, 1, 0), 525: (65383, 'Menu', 93, 1, 1), 526: (65383, 'Menu', 93, 1, 2), 527: (65383, 'Menu', 93, 1, 3), 528: (65383, 'Menu', 93, 2, 0), 529: (65383, 'Menu', 93, 2, 1), 530: (65383, 'Menu', 93, 2, 2), 531: (65383, 'Menu', 93, 2, 3), 532: (65456, 'KP_0', 96, 0, 0), 533: (65456, 'KP_0', 96, 0, 1), 534: (65456, 'KP_0', 96, 0, 2), 535: (65456, 'KP_0', 96, 0, 3), 536: (65456, 'KP_0', 96, 1, 0), 537: (65456, 'KP_0', 96, 1, 1), 538: (65456, 'KP_0', 96, 1, 2), 539: (65456, 'KP_0', 96, 1, 3), 540: (65456, 'KP_0', 96, 2, 0), 541: (65456, 'KP_0', 96, 2, 1), 542: (65456, 'KP_0', 96, 2, 2), 543: (65456, 'KP_0', 96, 2, 3), 544: (65457, 'KP_1', 97, 0, 0), 545: (65457, 'KP_1', 97, 0, 1), 546: (65457, 'KP_1', 97, 0, 2), 547: (65457, 'KP_1', 97, 0, 3), 548: (65457, 'KP_1', 97, 1, 0), 549: (65457, 'KP_1', 97, 1, 1), 550: (65457, 'KP_1', 97, 1, 2), 551: (65457, 'KP_1', 97, 1, 3), 552: (65457, 'KP_1', 97, 2, 0), 553: (65457, 'KP_1', 97, 2, 1), 554: (65457, 'KP_1', 97, 2, 2), 555: (65457, 'KP_1', 97, 2, 3), 556: (65458, 'KP_2', 98, 0, 0), 557: (65458, 'KP_2', 98, 0, 1), 558: (65458, 'KP_2', 98, 0, 2), 559: (65458, 'KP_2', 98, 0, 3), 560: (65458, 'KP_2', 98, 1, 0), 561: (65458, 'KP_2', 98, 1, 1), 562: (65458, 'KP_2', 98, 1, 2), 563: (65458, 'KP_2', 98, 1, 3), 564: (65458, 'KP_2', 98, 2, 0), 565: (65458, 'KP_2', 98, 2, 1), 566: (65458, 'KP_2', 98, 2, 2), 567: (65458, 'KP_2', 98, 2, 3), 568: (65459, 'KP_3', 99, 0, 0), 569: (65459, 'KP_3', 99, 0, 1), 570: (65459, 'KP_3', 99, 0, 2), 571: (65459, 'KP_3', 99, 0, 3), 572: (65459, 'KP_3', 99, 1, 0), 573: (65459, 'KP_3', 99, 1, 1), 574: (65459, 'KP_3', 99, 1, 2), 575: (65459, 'KP_3', 99, 1, 3), 576: (65459, 'KP_3', 99, 2, 0), 577: (65459, 'KP_3', 99, 2, 1), 578: (65459, 'KP_3', 99, 2, 2), 579: (65459, 'KP_3', 99, 2, 3), 580: (65460, 'KP_4', 100, 0, 0), 581: (65460, 'KP_4', 100, 0, 1), 582: (65460, 'KP_4', 100, 0, 2), 583: (65460, 'KP_4', 100, 0, 3), 584: (65460, 'KP_4', 100, 1, 0), 585: (65460, 'KP_4', 100, 1, 1), 586: (65460, 'KP_4', 100, 1, 2), 587: (65460, 'KP_4', 100, 1, 3), 588: (65460, 'KP_4', 100, 2, 0), 589: (65460, 'KP_4', 100, 2, 1), 590: (65460, 'KP_4', 100, 2, 2), 591: (65460, 'KP_4', 100, 2, 3), 592: (65461, 'KP_5', 101, 0, 0), 593: (65461, 'KP_5', 101, 0, 1), 594: (65461, 'KP_5', 101, 0, 2), 595: (65461, 'KP_5', 101, 0, 3), 596: (65461, 'KP_5', 101, 1, 0), 597: (65461, 'KP_5', 101, 1, 1), 598: (65461, 'KP_5', 101, 1, 2), 599: (65461, 'KP_5', 101, 1, 3), 600: (65461, 'KP_5', 101, 2, 0), 601: (65461, 'KP_5', 101, 2, 1), 602: (65461, 'KP_5', 101, 2, 2), 603: (65461, 'KP_5', 101, 2, 3), 604: (65462, 'KP_6', 102, 0, 0), 605: (65462, 'KP_6', 102, 0, 1), 606: (65462, 'KP_6', 102, 0, 2), 607: (65462, 'KP_6', 102, 0, 3), 608: (65462, 'KP_6', 102, 1, 0), 609: (65462, 'KP_6', 102, 1, 1), 610: (65462, 'KP_6', 102, 1, 2), 611: (65462, 'KP_6', 102, 1, 3), 612: (65462, 'KP_6', 102, 2, 0), 613: (65462, 'KP_6', 102, 2, 1), 614: (65462, 'KP_6', 102, 2, 2), 615: (65462, 'KP_6', 102, 2, 3), 616: (65463, 'KP_7', 103, 0, 0), 617: (65463, 'KP_7', 103, 0, 1), 618: (65463, 'KP_7', 103, 0, 2), 619: (65463, 'KP_7', 103, 0, 3), 620: (65463, 'KP_7', 103, 1, 0), 621: (65463, 'KP_7', 103, 1, 1), 622: (65463, 'KP_7', 103, 1, 2), 623: (65463, 'KP_7', 103, 1, 3), 624: (65463, 'KP_7', 103, 2, 0), 625: (65463, 'KP_7', 103, 2, 1), 626: (65463, 'KP_7', 103, 2, 2), 627: (65463, 'KP_7', 103, 2, 3), 628: (65464, 'KP_8', 104, 0, 0), 629: (65464, 'KP_8', 104, 0, 1), 630: (65464, 'KP_8', 104, 0, 2), 631: (65464, 'KP_8', 104, 0, 3), 632: (65464, 'KP_8', 104, 1, 0), 633: (65464, 'KP_8', 104, 1, 1), 634: (65464, 'KP_8', 104, 1, 2), 635: (65464, 'KP_8', 104, 1, 3), 636: (65464, 'KP_8', 104, 2, 0), 637: (65464, 'KP_8', 104, 2, 1), 638: (65464, 'KP_8', 104, 2, 2), 639: (65464, 'KP_8', 104, 2, 3), 640: (65465, 'KP_9', 105, 0, 0), 641: (65465, 'KP_9', 105, 0, 1), 642: (65465, 'KP_9', 105, 0, 2), 643: (65465, 'KP_9', 105, 0, 3), 644: (65465, 'KP_9', 105, 1, 0), 645: (65465, 'KP_9', 105, 1, 1), 646: (65465, 'KP_9', 105, 1, 2), 647: (65465, 'KP_9', 105, 1, 3), 648: (65465, 'KP_9', 105, 2, 0), 649: (65465, 'KP_9', 105, 2, 1), 650: (65465, 'KP_9', 105, 2, 2), 651: (65465, 'KP_9', 105, 2, 3), 652: (65450, 'KP_Multiply', 106, 0, 0), 653: (65450, 'KP_Multiply', 106, 0, 1), 654: (65450, 'KP_Multiply', 106, 0, 2), 655: (65450, 'KP_Multiply', 106, 0, 3), 656: (65450, 'KP_Multiply', 106, 1, 0), 657: (65450, 'KP_Multiply', 106, 1, 1), 658: (65450, 'KP_Multiply', 106, 1, 2), 659: (65450, 'KP_Multiply', 106, 1, 3), 660: (65450, 'KP_Multiply', 106, 2, 0), 661: (65450, 'KP_Multiply', 106, 2, 1), 662: (65450, 'KP_Multiply', 106, 2, 2), 663: (65450, 'KP_Multiply', 106, 2, 3), 664: (65451, 'KP_Add', 107, 0, 0), 665: (65451, 'KP_Add', 107, 0, 1), 666: (65451, 'KP_Add', 107, 0, 2), 667: (65451, 'KP_Add', 107, 0, 3), 668: (65451, 'KP_Add', 107, 1, 0), 669: (65451, 'KP_Add', 107, 1, 1), 670: (65451, 'KP_Add', 107, 1, 2), 671: (65451, 'KP_Add', 107, 1, 3), 672: (65451, 'KP_Add', 107, 2, 0), 673: (65451, 'KP_Add', 107, 2, 1), 674: (65451, 'KP_Add', 107, 2, 2), 675: (65451, 'KP_Add', 107, 2, 3), 676: (65453, 'KP_Subtract', 109, 0, 0), 677: (65453, 'KP_Subtract', 109, 0, 1), 678: (65453, 'KP_Subtract', 109, 0, 2), 679: (65453, 'KP_Subtract', 109, 0, 3), 680: (65453, 'KP_Subtract', 109, 1, 0), 681: (65453, 'KP_Subtract', 109, 1, 1), 682: (65453, 'KP_Subtract', 109, 1, 2), 683: (65453, 'KP_Subtract', 109, 1, 3), 684: (65453, 'KP_Subtract', 109, 2, 0), 685: (65453, 'KP_Subtract', 109, 2, 1), 686: (65453, 'KP_Subtract', 109, 2, 2), 687: (65453, 'KP_Subtract', 109, 2, 3), 688: (65454, 'KP_Decimal', 110, 0, 0), 689: (65454, 'KP_Decimal', 110, 0, 1), 690: (65454, 'KP_Decimal', 110, 0, 2), 691: (65454, 'KP_Decimal', 110, 0, 3), 692: (65454, 'KP_Decimal', 110, 1, 0), 693: (65454, 'KP_Decimal', 110, 1, 1), 694: (65454, 'KP_Decimal', 110, 1, 2), 695: (65454, 'KP_Decimal', 110, 1, 3), 696: (65454, 'KP_Decimal', 110, 2, 0), 697: (65454, 'KP_Decimal', 110, 2, 1), 698: (65454, 'KP_Decimal', 110, 2, 2), 699: (65454, 'KP_Decimal', 110, 2, 3), 700: (65455, 'KP_Divide', 111, 0, 0), 701: (65455, 'KP_Divide', 111, 0, 1), 702: (65455, 'KP_Divide', 111, 0, 2), 703: (65455, 'KP_Divide', 111, 0, 3), 704: (65455, 'KP_Divide', 111, 1, 0), 705: (65455, 'KP_Divide', 111, 1, 1), 706: (65455, 'KP_Divide', 111, 1, 2), 707: (65455, 'KP_Divide', 111, 1, 3), 708: (65455, 'KP_Divide', 111, 2, 0), 709: (65455, 'KP_Divide', 111, 2, 1), 710: (65455, 'KP_Divide', 111, 2, 2), 711: (65455, 'KP_Divide', 111, 2, 3), 712: (65470, 'F1', 112, 0, 0), 713: (65470, 'F1', 112, 0, 1), 714: (65470, 'F1', 112, 0, 2), 715: (65470, 'F1', 112, 0, 3), 716: (65470, 'F1', 112, 1, 0), 717: (65470, 'F1', 112, 1, 1), 718: (65470, 'F1', 112, 1, 2), 719: (65470, 'F1', 112, 1, 3), 720: (65470, 'F1', 112, 2, 0), 721: (65470, 'F1', 112, 2, 1), 722: (65470, 'F1', 112, 2, 2), 723: (65470, 'F1', 112, 2, 3), 724: (65471, 'F2', 113, 0, 0), 725: (65471, 'F2', 113, 0, 1), 726: (65471, 'F2', 113, 0, 2), 727: (65471, 'F2', 113, 0, 3), 728: (65471, 'F2', 113, 1, 0), 729: (65471, 'F2', 113, 1, 1), 730: (65471, 'F2', 113, 1, 2), 731: (65471, 'F2', 113, 1, 3), 732: (65471, 'F2', 113, 2, 0), 733: (65471, 'F2', 113, 2, 1), 734: (65471, 'F2', 113, 2, 2), 735: (65471, 'F2', 113, 2, 3), 736: (65472, 'F3', 114, 0, 0), 737: (65472, 'F3', 114, 0, 1), 738: (65472, 'F3', 114, 0, 2), 739: (65472, 'F3', 114, 0, 3), 740: (65472, 'F3', 114, 1, 0), 741: (65472, 'F3', 114, 1, 1), 742: (65472, 'F3', 114, 1, 2), 743: (65472, 'F3', 114, 1, 3), 744: (65472, 'F3', 114, 2, 0), 745: (65472, 'F3', 114, 2, 1), 746: (65472, 'F3', 114, 2, 2), 747: (65472, 'F3', 114, 2, 3), 748: (65473, 'F4', 115, 0, 0), 749: (65473, 'F4', 115, 0, 1), 750: (65473, 'F4', 115, 0, 2), 751: (65473, 'F4', 115, 0, 3), 752: (65473, 'F4', 115, 1, 0), 753: (65473, 'F4', 115, 1, 1), 754: (65473, 'F4', 115, 1, 2), 755: (65473, 'F4', 115, 1, 3), 756: (65473, 'F4', 115, 2, 0), 757: (65473, 'F4', 115, 2, 1), 758: (65473, 'F4', 115, 2, 2), 759: (65473, 'F4', 115, 2, 3), 760: (65474, 'F5', 116, 0, 0), 761: (65474, 'F5', 116, 0, 1), 762: (65474, 'F5', 116, 0, 2), 763: (65474, 'F5', 116, 0, 3), 764: (65474, 'F5', 116, 1, 0), 765: (65474, 'F5', 116, 1, 1), 766: (65474, 'F5', 116, 1, 2), 767: (65474, 'F5', 116, 1, 3), 768: (65474, 'F5', 116, 2, 0), 769: (65474, 'F5', 116, 2, 1), 770: (65474, 'F5', 116, 2, 2), 771: (65474, 'F5', 116, 2, 3), 772: (65475, 'F6', 117, 0, 0), 773: (65475, 'F6', 117, 0, 1), 774: (65475, 'F6', 117, 0, 2), 775: (65475, 'F6', 117, 0, 3), 776: (65475, 'F6', 117, 1, 0), 777: (65475, 'F6', 117, 1, 1), 778: (65475, 'F6', 117, 1, 2), 779: (65475, 'F6', 117, 1, 3), 780: (65475, 'F6', 117, 2, 0), 781: (65475, 'F6', 117, 2, 1), 782: (65475, 'F6', 117, 2, 2), 783: (65475, 'F6', 117, 2, 3), 784: (65476, 'F7', 118, 0, 0), 785: (65476, 'F7', 118, 0, 1), 786: (65476, 'F7', 118, 0, 2), 787: (65476, 'F7', 118, 0, 3), 788: (65476, 'F7', 118, 1, 0), 789: (65476, 'F7', 118, 1, 1), 790: (65476, 'F7', 118, 1, 2), 791: (65476, 'F7', 118, 1, 3), 792: (65476, 'F7', 118, 2, 0), 793: (65476, 'F7', 118, 2, 1), 794: (65476, 'F7', 118, 2, 2), 795: (65476, 'F7', 118, 2, 3), 796: (65477, 'F8', 119, 0, 0), 797: (65477, 'F8', 119, 0, 1), 798: (65477, 'F8', 119, 0, 2), 799: (65477, 'F8', 119, 0, 3), 800: (65477, 'F8', 119, 1, 0), 801: (65477, 'F8', 119, 1, 1), 802: (65477, 'F8', 119, 1, 2), 803: (65477, 'F8', 119, 1, 3), 804: (65477, 'F8', 119, 2, 0), 805: (65477, 'F8', 119, 2, 1), 806: (65477, 'F8', 119, 2, 2), 807: (65477, 'F8', 119, 2, 3), 808: (65478, 'F9', 120, 0, 0), 809: (65478, 'F9', 120, 0, 1), 810: (65478, 'F9', 120, 0, 2), 811: (65478, 'F9', 120, 0, 3), 812: (65478, 'F9', 120, 1, 0), 813: (65478, 'F9', 120, 1, 1), 814: (65478, 'F9', 120, 1, 2), 815: (65478, 'F9', 120, 1, 3), 816: (65478, 'F9', 120, 2, 0), 817: (65478, 'F9', 120, 2, 1), 818: (65478, 'F9', 120, 2, 2), 819: (65478, 'F9', 120, 2, 3), 820: (65479, 'F10', 121, 0, 0), 821: (65479, 'F10', 121, 0, 1), 822: (65479, 'F10', 121, 0, 2), 823: (65479, 'F10', 121, 0, 3), 824: (65479, 'F10', 121, 1, 0), 825: (65479, 'F10', 121, 1, 1), 826: (65479, 'F10', 121, 1, 2), 827: (65479, 'F10', 121, 1, 3), 828: (65479, 'F10', 121, 2, 0), 829: (65479, 'F10', 121, 2, 1), 830: (65479, 'F10', 121, 2, 2), 831: (65479, 'F10', 121, 2, 3), 832: (65480, 'F11', 122, 0, 0), 833: (65480, 'F11', 122, 0, 1), 834: (65480, 'F11', 122, 0, 2), 835: (65480, 'F11', 122, 0, 3), 836: (65480, 'F11', 122, 1, 0), 837: (65480, 'F11', 122, 1, 1), 838: (65480, 'F11', 122, 1, 2), 839: (65480, 'F11', 122, 1, 3), 840: (65480, 'F11', 122, 2, 0), 841: (65480, 'F11', 122, 2, 1), 842: (65480, 'F11', 122, 2, 2), 843: (65480, 'F11', 122, 2, 3), 844: (65481, 'F12', 123, 0, 0), 845: (65481, 'F12', 123, 0, 1), 846: (65481, 'F12', 123, 0, 2), 847: (65481, 'F12', 123, 0, 3), 848: (65481, 'F12', 123, 1, 0), 849: (65481, 'F12', 123, 1, 1), 850: (65481, 'F12', 123, 1, 2), 851: (65481, 'F12', 123, 1, 3), 852: (65481, 'F12', 123, 2, 0), 853: (65481, 'F12', 123, 2, 1), 854: (65481, 'F12', 123, 2, 2), 855: (65481, 'F12', 123, 2, 3), 856: (65482, 'F13', 124, 0, 0), 857: (65482, 'F13', 124, 0, 1), 858: (65482, 'F13', 124, 0, 2), 859: (65482, 'F13', 124, 0, 3), 860: (65482, 'F13', 124, 1, 0), 861: (65482, 'F13', 124, 1, 1), 862: (65482, 'F13', 124, 1, 2), 863: (65482, 'F13', 124, 1, 3), 864: (65482, 'F13', 124, 2, 0), 865: (65482, 'F13', 124, 2, 1), 866: (65482, 'F13', 124, 2, 2), 867: (65482, 'F13', 124, 2, 3), 868: (65483, 'F14', 125, 0, 0), 869: (65483, 'F14', 125, 0, 1), 870: (65483, 'F14', 125, 0, 2), 871: (65483, 'F14', 125, 0, 3), 872: (65483, 'F14', 125, 1, 0), 873: (65483, 'F14', 125, 1, 1), 874: (65483, 'F14', 125, 1, 2), 875: (65483, 'F14', 125, 1, 3), 876: (65483, 'F14', 125, 2, 0), 877: (65483, 'F14', 125, 2, 1), 878: (65483, 'F14', 125, 2, 2), 879: (65483, 'F14', 125, 2, 3), 880: (65484, 'F15', 126, 0, 0), 881: (65484, 'F15', 126, 0, 1), 882: (65484, 'F15', 126, 0, 2), 883: (65484, 'F15', 126, 0, 3), 884: (65484, 'F15', 126, 1, 0), 885: (65484, 'F15', 126, 1, 1), 886: (65484, 'F15', 126, 1, 2), 887: (65484, 'F15', 126, 1, 3), 888: (65484, 'F15', 126, 2, 0), 889: (65484, 'F15', 126, 2, 1), 890: (65484, 'F15', 126, 2, 2), 891: (65484, 'F15', 126, 2, 3), 892: (65485, 'F16', 127, 0, 0), 893: (65485, 'F16', 127, 0, 1), 894: (65485, 'F16', 127, 0, 2), 895: (65485, 'F16', 127, 0, 3), 896: (65485, 'F16', 127, 1, 0), 897: (65485, 'F16', 127, 1, 1), 898: (65485, 'F16', 127, 1, 2), 899: (65485, 'F16', 127, 1, 3), 900: (65485, 'F16', 127, 2, 0), 901: (65485, 'F16', 127, 2, 1), 902: (65485, 'F16', 127, 2, 2), 903: (65485, 'F16', 127, 2, 3), 904: (65486, 'F17', 128, 0, 0), 905: (65486, 'F17', 128, 0, 1), 906: (65486, 'F17', 128, 0, 2), 907: (65486, 'F17', 128, 0, 3), 908: (65486, 'F17', 128, 1, 0), 909: (65486, 'F17', 128, 1, 1), 910: (65486, 'F17', 128, 1, 2), 911: (65486, 'F17', 128, 1, 3), 912: (65486, 'F17', 128, 2, 0), 913: (65486, 'F17', 128, 2, 1), 914: (65486, 'F17', 128, 2, 2), 915: (65486, 'F17', 128, 2, 3), 916: (65487, 'F18', 129, 0, 0), 917: (65487, 'F18', 129, 0, 1), 918: (65487, 'F18', 129, 0, 2), 919: (65487, 'F18', 129, 0, 3), 920: (65487, 'F18', 129, 1, 0), 921: (65487, 'F18', 129, 1, 1), 922: (65487, 'F18', 129, 1, 2), 923: (65487, 'F18', 129, 1, 3), 924: (65487, 'F18', 129, 2, 0), 925: (65487, 'F18', 129, 2, 1), 926: (65487, 'F18', 129, 2, 2), 927: (65487, 'F18', 129, 2, 3), 928: (65488, 'F19', 130, 0, 0), 929: (65488, 'F19', 130, 0, 1), 930: (65488, 'F19', 130, 0, 2), 931: (65488, 'F19', 130, 0, 3), 932: (65488, 'F19', 130, 1, 0), 933: (65488, 'F19', 130, 1, 1), 934: (65488, 'F19', 130, 1, 2), 935: (65488, 'F19', 130, 1, 3), 936: (65488, 'F19', 130, 2, 0), 937: (65488, 'F19', 130, 2, 1), 938: (65488, 'F19', 130, 2, 2), 939: (65488, 'F19', 130, 2, 3), 940: (65489, 'F20', 131, 0, 0), 941: (65489, 'F20', 131, 0, 1), 942: (65489, 'F20', 131, 0, 2), 943: (65489, 'F20', 131, 0, 3), 944: (65489, 'F20', 131, 1, 0), 945: (65489, 'F20', 131, 1, 1), 946: (65489, 'F20', 131, 1, 2), 947: (65489, 'F20', 131, 1, 3), 948: (65489, 'F20', 131, 2, 0), 949: (65489, 'F20', 131, 2, 1), 950: (65489, 'F20', 131, 2, 2), 951: (65489, 'F20', 131, 2, 3), 952: (65490, 'F21', 132, 0, 0), 953: (65490, 'F21', 132, 0, 1), 954: (65490, 'F21', 132, 0, 2), 955: (65490, 'F21', 132, 0, 3), 956: (65490, 'F21', 132, 1, 0), 957: (65490, 'F21', 132, 1, 1), 958: (65490, 'F21', 132, 1, 2), 959: (65490, 'F21', 132, 1, 3), 960: (65490, 'F21', 132, 2, 0), 961: (65490, 'F21', 132, 2, 1), 962: (65490, 'F21', 132, 2, 2), 963: (65490, 'F21', 132, 2, 3), 964: (65491, 'F22', 133, 0, 0), 965: (65491, 'F22', 133, 0, 1), 966: (65491, 'F22', 133, 0, 2), 967: (65491, 'F22', 133, 0, 3), 968: (65491, 'F22', 133, 1, 0), 969: (65491, 'F22', 133, 1, 1), 970: (65491, 'F22', 133, 1, 2), 971: (65491, 'F22', 133, 1, 3), 972: (65491, 'F22', 133, 2, 0), 973: (65491, 'F22', 133, 2, 1), 974: (65491, 'F22', 133, 2, 2), 975: (65491, 'F22', 133, 2, 3), 976: (65492, 'F23', 134, 0, 0), 977: (65492, 'F23', 134, 0, 1), 978: (65492, 'F23', 134, 0, 2), 979: (65492, 'F23', 134, 0, 3), 980: (65492, 'F23', 134, 1, 0), 981: (65492, 'F23', 134, 1, 1), 982: (65492, 'F23', 134, 1, 2), 983: (65492, 'F23', 134, 1, 3), 984: (65492, 'F23', 134, 2, 0), 985: (65492, 'F23', 134, 2, 1), 986: (65492, 'F23', 134, 2, 2), 987: (65492, 'F23', 134, 2, 3), 988: (65493, 'F24', 135, 0, 0), 989: (65493, 'F24', 135, 0, 1), 990: (65493, 'F24', 135, 0, 2), 991: (65493, 'F24', 135, 0, 3), 992: (65493, 'F24', 135, 1, 0), 993: (65493, 'F24', 135, 1, 1), 994: (65493, 'F24', 135, 1, 2), 995: (65493, 'F24', 135, 1, 3), 996: (65493, 'F24', 135, 2, 0), 997: (65493, 'F24', 135, 2, 1), 998: (65493, 'F24', 135, 2, 2), 999: (65493, 'F24', 135, 2, 3), 1000: (65407, 'Num_Lock', 144, 0, 0), 1001: (65407, 'Num_Lock', 144, 0, 1), 1002: (65407, 'Num_Lock', 144, 0, 2), 1003: (65407, 'Num_Lock', 144, 0, 3), 1004: (65407, 'Num_Lock', 144, 1, 0), 1005: (65407, 'Num_Lock', 144, 1, 1), 1006: (65407, 'Num_Lock', 144, 1, 2), 1007: (65407, 'Num_Lock', 144, 1, 3), 1008: (65407, 'Num_Lock', 144, 2, 0), 1009: (65407, 'Num_Lock', 144, 2, 1), 1010: (65407, 'Num_Lock', 144, 2, 2), 1011: (65407, 'Num_Lock', 144, 2, 3), 1012: (65300, 'Scroll_Lock', 145, 0, 0), 1013: (65300, 'Scroll_Lock', 145, 0, 1), 1014: (65300, 'Scroll_Lock', 145, 0, 2), 1015: (65300, 'Scroll_Lock', 145, 0, 3), 1016: (65300, 'Scroll_Lock', 145, 1, 0), 1017: (65300, 'Scroll_Lock', 145, 1, 1), 1018: (65300, 'Scroll_Lock', 145, 1, 2), 1019: (65300, 'Scroll_Lock', 145, 1, 3), 1020: (65300, 'Scroll_Lock', 145, 2, 0), 1021: (65300, 'Scroll_Lock', 145, 2, 1), 1022: (65300, 'Scroll_Lock', 145, 2, 2), 1023: (65300, 'Scroll_Lock', 145, 2, 3), 1024: (65505, 'Shift_L', 160, 0, 0), 1025: (65505, 'Shift_L', 160, 0, 1), 1026: (65505, 'Shift_L', 160, 0, 2), 1027: (65505, 'Shift_L', 160, 0, 3), 1028: (65505, 'Shift_L', 160, 1, 0), 1029: (65505, 'Shift_L', 160, 1, 1), 1030: (65505, 'Shift_L', 160, 1, 2), 1031: (65505, 'Shift_L', 160, 1, 3), 1032: (65505, 'Shift_L', 160, 2, 0), 1033: (65505, 'Shift_L', 160, 2, 1), 1034: (65505, 'Shift_L', 160, 2, 2), 1035: (65505, 'Shift_L', 160, 2, 3), 1036: (65506, 'Shift_R', 161, 0, 0), 1037: (65506, 'Shift_R', 161, 0, 1), 1038: (65506, 'Shift_R', 161, 0, 2), 1039: (65506, 'Shift_R', 161, 0, 3), 1040: (65506, 'Shift_R', 161, 1, 0), 1041: (65506, 'Shift_R', 161, 1, 1), 1042: (65506, 'Shift_R', 161, 1, 2), 1043: (65506, 'Shift_R', 161, 1, 3), 1044: (65506, 'Shift_R', 161, 2, 0), 1045: (65506, 'Shift_R', 161, 2, 1), 1046: (65506, 'Shift_R', 161, 2, 2), 1047: (65506, 'Shift_R', 161, 2, 3), 1048: (65507, 'Control_L', 162, 0, 0), 1049: (65507, 'Control_L', 162, 0, 1), 1050: (65507, 'Control_L', 162, 0, 2), 1051: (65507, 'Control_L', 162, 0, 3), 1052: (65507, 'Control_L', 162, 1, 0), 1053: (65507, 'Control_L', 162, 1, 1), 1054: (65507, 'Control_L', 162, 1, 2), 1055: (65507, 'Control_L', 162, 1, 3), 1056: (65507, 'Control_L', 162, 2, 0), 1057: (65507, 'Control_L', 162, 2, 1), 1058: (65507, 'Control_L', 162, 2, 2), 1059: (65507, 'Control_L', 162, 2, 3), 1060: (65508, 'Control_R', 163, 0, 0), 1061: (65508, 'Control_R', 163, 0, 1), 1062: (65508, 'Control_R', 163, 0, 2), 1063: (65508, 'Control_R', 163, 0, 3), 1064: (65508, 'Control_R', 163, 1, 0), 1065: (65508, 'Control_R', 163, 1, 1), 1066: (65508, 'Control_R', 163, 1, 2), 1067: (65508, 'Control_R', 163, 1, 3), 1068: (65508, 'Control_R', 163, 2, 0), 1069: (65508, 'Control_R', 163, 2, 1), 1070: (65508, 'Control_R', 163, 2, 2), 1071: (65508, 'Control_R', 163, 2, 3), 1072: (65513, 'Alt_L', 164, 0, 0), 1073: (65513, 'Alt_L', 164, 0, 1), 1074: (65513, 'Alt_L', 164, 0, 2), 1075: (65513, 'Alt_L', 164, 0, 3), 1076: (65513, 'Alt_L', 164, 1, 0), 1077: (65513, 'Alt_L', 164, 1, 1), 1078: (65513, 'Alt_L', 164, 1, 2), 1079: (65513, 'Alt_L', 164, 1, 3), 1080: (65513, 'Alt_L', 164, 2, 0), 1081: (65513, 'Alt_L', 164, 2, 1), 1082: (65513, 'Alt_L', 164, 2, 2), 1083: (65513, 'Alt_L', 164, 2, 3), 1084: (65514, 'Alt_R', 165, 0, 0), 1085: (65514, 'Alt_R', 165, 0, 1), 1086: (65514, 'Alt_R', 165, 0, 2), 1087: (65514, 'Alt_R', 165, 0, 3), 1088: (65514, 'Alt_R', 165, 1, 0), 1089: (65514, 'Alt_R', 165, 1, 1), 1090: (65514, 'Alt_R', 165, 1, 2), 1091: (65514, 'Alt_R', 165, 1, 3), 1092: (65514, 'Alt_R', 165, 2, 0), 1093: (65514, 'Alt_R', 165, 2, 1), 1094: (65514, 'Alt_R', 165, 2, 2), 1095: (65514, 'Alt_R', 165, 2, 3), 1096: (252, 'udiaeresis', 186, 0, 0), 1097: (220, 'Udiaeresis', 186, 0, 1), 1098: (59, 'semicolon', 186, 1, 0), 1099: (58, 'colon', 186, 1, 1), 1100: (1750, 'Cyrillic_zhe', 186, 2, 0), 1101: (1782, 'Cyrillic_ZHE', 186, 2, 1), 1102: (43, 'plus', 187, 0, 0), 1103: (42, 'asterisk', 187, 0, 1), 1104: (126, 'asciitilde', 187, 0, 2), 1105: (61, 'equal', 187, 1, 0), 1106: (43, 'plus', 187, 1, 1), 1107: (61, 'equal', 187, 2, 0), 1108: (43, 'plus', 187, 2, 1), 1109: (44, 'comma', 188, 0, 0), 1110: (59, 'semicolon', 188, 0, 1), 1111: (44, 'comma', 188, 1, 0), 1112: (60, 'less', 188, 1, 1), 1113: (1730, 'Cyrillic_be', 188, 2, 0), 1114: (1762, 'Cyrillic_BE', 188, 2, 1), 1115: (45, 'minus', 189, 0, 0), 1116: (95, 'underscore', 189, 0, 1), 1117: (45, 'minus', 189, 1, 0), 1118: (95, 'underscore', 189, 1, 1), 1119: (45, 'minus', 189, 2, 0), 1120: (95, 'underscore', 189, 2, 1), 1121: (46, 'period', 190, 0, 0), 1122: (58, 'colon', 190, 0, 1), 1123: (46, 'period', 190, 1, 0), 1124: (62, 'greater', 190, 1, 1), 1125: (1728, 'Cyrillic_yu', 190, 2, 0), 1126: (1760, 'Cyrillic_YU', 190, 2, 1), 1127: (35, 'numbersign', 191, 0, 0), 1128: (39, 'apostrophe', 191, 0, 1), 1129: (47, 'slash', 191, 1, 0), 1130: (63, 'question', 191, 1, 1), 1131: (46, 'period', 191, 2, 0), 1132: (44, 'comma', 191, 2, 1), 1133: (246, 'odiaeresis', 192, 0, 0), 1134: (214, 'Odiaeresis', 192, 0, 1), 1135: (96, 'grave', 192, 1, 0), 1136: (126, 'asciitilde', 192, 1, 1), 1137: (1699, 'Cyrillic_io', 192, 2, 0), 1138: (1715, 'Cyrillic_IO', 192, 2, 1), 1139: (223, 'ssharp', 219, 0, 0), 1140: (63, 'question', 219, 0, 1), 1141: (92, 'backslash', 219, 0, 2), 1142: (91, 'bracketleft', 219, 1, 0), 1143: (123, 'braceleft', 219, 1, 1), 1144: (1736, 'Cyrillic_ha', 219, 2, 0), 1145: (1768, 'Cyrillic_HA', 219, 2, 1), 1146: (65106, 'dead_circumflex', 220, 0, 0), 1147: (176, 'degree', 220, 0, 1), 1148: (92, 'backslash', 220, 1, 0), 1149: (124, 'bar', 220, 1, 1), 1150: (92, 'backslash', 220, 2, 0), 1151: (47, 'slash', 220, 2, 1), 1152: (65105, 'dead_acute', 221, 0, 0), 1153: (65104, 'dead_grave', 221, 0, 1), 1154: (93, 'bracketright', 221, 1, 0), 1155: (125, 'braceright', 221, 1, 1), 1156: (1759, 'Cyrillic_hardsign', 221, 2, 0), 1157: (1791, 'Cyrillic_HARDSIGN', 221, 2, 1), 1158: (228, 'adiaeresis', 222, 0, 0), 1159: (196, 'Adiaeresis', 222, 0, 1), 1160: (39, 'apostrophe', 222, 1, 0), 1161: (34, 'quotedbl', 222, 1, 1), 1162: (1756, 'Cyrillic_e', 222, 2, 0), 1163: (1788, 'Cyrillic_E', 222, 2, 1), 1164: (60, 'less', 226, 0, 0), 1165: (62, 'greater', 226, 0, 1), 1166: (124, 'bar', 226, 0, 2), 1167: (92, 'backslash', 226, 1, 0), 1168: (124, 'bar', 226, 1, 1), 1169: (92, 'backslash', 226, 2, 0), 1170: (47, 'slash', 226, 2, 1)}, 'state': {'keys_pressed': ()}, 'modifiers': {'nuisance': ('lock', 'mod2')}, 'mod_pointermissing': ('lock',), 'x11_keycode': {}, 'owner': 'da39a3ee5e6b4b0d3255bfef95601890afd80709', 'layout-group': 0, 'modifier': {'control': {'keys': ('Control_L', 'Control_R'), 'client_keys': (((162, 'Control_L'), 'Control_L'), ('Control_R', 'Control_R'))}, 'lock': {'keys': ('Caps_Lock',), 'client_keys': (('Caps_Lock', 'Caps_Lock'),)}, 'Alt_R': {'keycodes': (172,)}, 'Caps_Lock': {'keycodes': (66,)}, 'mod4': {'keys': ('Hyper_R', 'Hyper_L'), 'client_keys': (('Hyper_L', 'Hyper_L'), ('Hyper_R', 'Hyper_R'))}, 'Alt_L': {'keycodes': (64, 125)}, 'mod1': {'keys': ('Meta_R', 'Alt_R', 'Meta_L', 'Alt_L'), 'client_keys': (((18, 'Alt_L'), 'Alt_L'), ('Alt_L', 'Alt_L'), ('Meta_L', 'Meta_L'), ('Meta_R', 'Meta_R'), ((165, 'Alt_R'), 'Alt_R'))}, 'mod2': {'keys': ('Num_Lock',), 'client_keys': (('Num_Lock', 'Num_Lock'),)}, 'mod3': {'keys': ('Super_R', 'Super_L'), 'client_keys': ((115, 'Super_L'), ('Super_R', 'Super_R'), ('Super_L', 'Super_L'))}, 'Shift_R': {'keycodes': (62,)}, 'Control_R': {'keycodes': (109,)}, 'Num_Lock': {'keycodes': (77,)}, 'Shift_L': {'keycodes': (50,)}, 'Control_L': {'keycodes': (37,)}, 'Super_R': {'keycodes': (116,)}, 'Hyper_L': {'keycodes': (128,)}, 'Hyper_R': {'keycodes': (184,)}, 'Super_L': {'keycodes': (115, 127)}, 'Meta_L': {'keycodes': (64, 156)}, 'Meta_R': {'keycodes': (159,)}, 'mod5': {'keys': ('ISO_Level3_Shift', 'Mode_switch'), 'client_keys': (('Mode_switch', 'Mode_switch'), (113, 'ISO_Level3_Shift'), ('ISO_Level3_Shift', 'ISO_Level3_Shift'))}, 'ISO_Level3_Shift': {'keycodes': (113, 124)}, 'shift': {'keys': ('Shift_L', 'Shift_R'), 'client_keys': (((160, 'Shift_L'), 'Shift_L'), ((161, 'Shift_R'), 'Shift_R'))}, 'Mode_switch': {'keycodes': (8,)}, 'filter': ()}, 'keysym': {'adiaeresis': {222: 182}, 'underscore': {189: 61}, 'Cyrillic_SHORTI': {81: 148}, 'less': {226: 183, 188: 175}, 'XF86Ungrab': {111: 112}, 'Alt_R': {165: 172}, 'dollar': {52: 122}, 'F23': {134: 170}, 'F22': {133: 169}, 'F21': {132: 168}, 'F20': {131: 167}, 'Cyrillic_SOFTSIGN': {77: 144}, 'Alt_L': {18: 64, 91: 64, 164: 64}, 'XF86Switch_VT_5': {116: 71}, 'F24': {135: 171}, 'XF86Switch_VT_9': {120: 75}, 'XF86Switch_VT_8': {119: 74}, 'ISO_Left_Tab': {9: 23}, 'KP_Down': {98: 88}, 'Cyrillic_ZE': {80: 147}, '3': {51: 121}, '0': {48: 119}, 'Cyrillic_BE': {188: 175}, '4': {52: 122}, 'XF86Switch_VT_11': {122: 95}, 'Cyrillic_de': {76: 143}, '8': {56: 130}, 'Control_L': {17: 37, 162: 37}, 'D': {68: 136}, 'Cyrillic_ES': {67: 135}, 'Cyrillic_te': {78: 145}, 'H': {72: 139}, 'XF86Switch_VT_10': {121: 76}, 'Cyrillic_che': {88: 155}, 'F2': {113: 68}, 'Sys_Req': {44: 111}, 'P': {80: 147}, 'b': {66: 133}, 'T': {84: 151}, 'Cyrillic_tse': {87: 154}, 'Cyrillic_ghe': {85: 152}, 'X': {88: 155}, 'KP_Multiply': {106: 63}, 'Cyrillic_ER': {72: 139}, 'XF86Switch_VT_3': {114: 69}, 'Right': {39: 102}, 'bar': {226: 183, 220: 180}, 'Help': {47: 118}, 'XF86Switch_VT_2': {113: 68}, 'h': {72: 139}, 'f': {70: 137}, 'XF86Switch_VT_1': {112: 67}, 'Cyrillic_e': {222: 182}, 'XF86Prev_VMode': {109: 82}, 'p': {80: 147}, 'asciitilde': {192: 178, 187: 174}, 'Cyrillic_EF': {65: 132}, 't': {84: 151}, 'Tab': {9: 23}, 'numerosign': {51: 121}, 'exclamdown': {49: 10}, 'Cyrillic_EN': {89: 157}, 'Cyrillic_EL': {75: 142}, 'XF86Switch_VT_6': {117: 72}, 'parenright': {48: 119, 57: 131}, 'Page_Down': {34: 114}, 'endash': {189: 61}, 'End': {35: 103}, 'XF86Switch_VT_4': {115: 70}, 'd': {68: 136}, 'Cyrillic_SHCHA': {79: 146}, 'Cyrillic_u': {69: 26}, 'Print': {44: 111}, 'onesuperior': {49: 10}, '5': {53: 14}, 'Cyrillic_PE': {71: 138}, 'Cyrillic_KA': {82: 149}, 'braceleft': {219: 179, 55: 129}, 'F18': {129: 165}, 'Down': {40: 104}, 'Cyrillic_E': {222: 182}, 'G': {71: 138}, 'KP_Home': {103: 79}, 'space': {32: 65}, 'section': {51: 121}, 'onehalf': {53: 14}, 'Cyrillic_be': {188: 175}, 'r': {82: 149}, 'ampersand': {54: 123, 55: 129}, '7': {55: 129}, 'numbersign': {51: 121, 191: 177}, 'Cyrillic_softsign': {77: 144}, 'C': {67: 135}, 'udiaeresis': {186: 173}, 'degree': {220: 180}, 'KP_End': {97: 87}, 'M': {77: 144}, 'K': {75: 142}, 'KP_Begin': {101: 84}, 'Up': {38: 98}, 'O': {79: 146}, 'ssharp': {219: 179}, 'S': {83: 150}, 'F19': {130: 166}, 'W': {87: 154}, 'x': {88: 155}, 'F12': {123: 96}, 'F13': {124: 160}, 'exclam': {49: 10}, 'F11': {122: 95}, 'F16': {127: 163}, 'dead_grave': {221: 181}, 'F14': {125: 161}, 'F15': {126: 162}, 'XF86ClearGrab': {106: 63}, 'Cyrillic_es': {67: 135}, 'c': {67: 135}, 'Cyrillic_DE': {76: 143}, 'threeeighths': {53: 14}, 'k': {75: 142}, 'Cyrillic_CHE': {88: 155}, 'equal': {48: 119, 187: 174}, 'o': {79: 146}, 's': {83: 150}, 'Cyrillic_O': {74: 141}, 'plus': {187: 174}, 'w': {87: 154}, 'Escape': {27: 9}, 'EuroSign': {69: 26}, 'Home': {36: 97}, 'Cyrillic_EM': {86: 153}, 'threesuperior': {51: 121}, 'Cyrillic_el': {75: 142}, 'Cyrillic_em': {86: 153}, 'Cyrillic_YA': {90: 158}, 'Pause': {19: 110}, 'period': {190: 176, 191: 177}, 'Cyrillic_VE': {68: 136}, 'slash': {226: 183, 191: 177, 220: 180, 55: 129}, 'Cyrillic_ha': {219: 179}, 'Cyrillic_IE': {84: 151}, 'colon': {186: 173, 54: 123, 190: 176}, 'Meta_L': {18: 64, 91: 64, 164: 64}, 'Cyrillic_SHA': {73: 140}, 'Cyrillic_IO': {192: 178}, 'F10': {121: 76}, 'parenleft': {56: 130, 57: 131}, 'U+20BD': {56: 130}, 'KP_7': {103: 79}, 'Shift_R': {161: 62}, 'KP_Divide': {111: 112}, 'Cyrillic_shcha': {79: 146}, 'KP_Prior': {105: 81}, 'question': {55: 129, 219: 179, 191: 177}, 'KP_Insert': {96: 90}, 'comma': {188: 175, 191: 177}, 'F17': {128: 164}, 'Break': {19: 110}, 'Cyrillic_TE': {78: 145}, '2': {50: 120}, 'g': {71: 138}, 'Num_Lock': {144: 77}, '6': {54: 123}, 'Cyrillic_sha': {73: 140}, 'Shift_L': {16: 50, 160: 50}, 'Delete': {46: 107}, 'dead_circumflex': {220: 180}, 'Cyrillic_er': {72: 139}, 'KP_Subtract': {109: 82}, 'Cyrillic_shorti': {81: 148}, 'F': {70: 137}, 'J': {74: 141}, 'XF86Switch_VT_7': {118: 73}, 'N': {78: 145}, 'KP_0': {96: 90}, 'KP_1': {97: 87}, 'KP_2': {98: 88}, 'KP_3': {99: 89}, 'KP_4': {100: 83}, 'KP_5': {101: 84}, 'KP_6': {102: 85}, 'V': {86: 153}, 'KP_8': {104: 80}, 'asciicircum': {54: 123}, 'Z': {90: 158}, 'Cyrillic_pe': {71: 138}, 'Cyrillic_ka': {82: 149}, 'KP_9': {105: 81}, 'Left': {37: 100}, 'KP_Left': {100: 83}, 'F1': {112: 67}, 'Adiaeresis': {222: 182}, 'F3': {114: 69}, 'F4': {115: 70}, 'F5': {116: 71}, 'F6': {117: 72}, 'F7': {118: 73}, 'F8': {119: 74}, 'F9': {120: 75}, 'j': {74: 141}, 'KP_Decimal': {110: 134}, 'Cyrillic_zhe': {186: 173}, 'n': {78: 145}, 'mu': {77: 144}, 'Cyrillic_YU': {190: 176}, 'v': {86: 153}, 'Cancel': {3: 92}, 'z': {90: 158}, 'Scroll_Lock': {145: 78}, 'minus': {189: 61}, 'braceright': {48: 119, 221: 181}, 'semicolon': {52: 122, 186: 173, 188: 175}, 'KP_Next': {99: 89}, 'Menu': {93: 117}, 'Page_Up': {33: 101}, 'backslash': {226: 183, 219: 179, 220: 180}, 'B': {66: 133}, 'at': {81: 148, 50: 120}, 'R': {82: 149}, 'odiaeresis': {192: 178}, 'KP_Add': {107: 86}, 'greater': {226: 183, 190: 176}, 'Return': {13: 36}, 'KP_Up': {104: 80}, 'Meta_R': {92: 159}, 'percent': {53: 14}, 'Control_R': {163: 109}, '1': {49: 10}, 'Cyrillic_o': {74: 141}, 'BackSpace': {8: 22}, 'XF86Switch_VT_12': {123: 96}, 'Cyrillic_TSE': {87: 154}, 'Cyrillic_HARDSIGN': {221: 181}, '9': {57: 131}, 'Cyrillic_ef': {65: 132}, 'bracketright': {57: 131, 221: 181}, 'A': {65: 132}, 'Insert': {45: 106}, 'quotedbl': {50: 120, 222: 182}, 'XF86Next_VMode': {107: 86}, 'E': {69: 26}, 'dead_acute': {221: 181}, 'I': {73: 140}, 'Cyrillic_U': {69: 26}, 'Clear': {12: 93}, 'Cyrillic_hardsign': {221: 181}, 'asterisk': {56: 130, 187: 174}, 'Cyrillic_ZHE': {186: 173}, 'Cyrillic_ve': {68: 136}, 'L': {76: 143}, 'Q': {81: 148}, 'Cyrillic_GHE': {85: 152}, 'KP_Right': {102: 85}, 'Cyrillic_ie': {84: 151}, 'U': {85: 152}, 'Cyrillic_I': {66: 133}, 'Udiaeresis': {186: 173}, 'apostrophe': {222: 182, 191: 177}, 'Y': {89: 157}, 'Cyrillic_io': {192: 178}, 'twosuperior': {50: 120}, 'emdash': {189: 61}, 'Cyrillic_A': {70: 137}, 'grave': {192: 178}, 'l': {76: 143}, 'a': {65: 132}, 'Cyrillic_HA': {219: 179}, 'e': {69: 26}, 'Cyrillic_yeru': {83: 150}, 'Cyrillic_YERU': {83: 150}, 'Cyrillic_ya': {90: 158}, 'i': {73: 140}, 'Cyrillic_en': {89: 157}, 'm': {77: 144}, 'Cyrillic_a': {70: 137}, 'q': {81: 148}, 'Cyrillic_yu': {190: 176}, 'u': {85: 152}, 'Cyrillic_i': {66: 133}, 'y': {89: 157}, 'bracketleft': {56: 130, 219: 179}, 'Odiaeresis': {192: 178}, 'Cyrillic_ze': {80: 147}}, 'keycode': {3: {'Cancel': 92}, 'Cyrillic_SHORTI': 148, 8: {'BackSpace': 22}, 9: {'ISO_Left_Tab': 23, 'Tab': 23}, 'Alt_R': 172, 'dollar': 13, 13: {'Return': 36}, 'Caps_Lock': 66, 16: {'Shift_L': 50}, 17: {'Control_L': 37}, 18: {'Meta_L': 64, 'Alt_L': 64}, 19: {'Break': 110, 'Pause': 110}, 'Alt_L': 125, 27: {'Escape': 9}, 32: {'space': 65}, 33: {'Page_Up': 101}, 34: {'Page_Down': 114}, 35: {'End': 103}, 36: {'Home': 97}, 37: {'Left': 100}, 38: {'Up': 98}, 39: {'Right': 102}, 40: {'Down': 104}, 44: {'Print': 111, 'Sys_Req': 111}, 45: {'Insert': 106}, 46: {'Delete': 107}, 47: {'Help': 118}, 48: {'parenright': 119, '0': 119, 'equal': 119, 'braceright': 119}, 49: {'1': 10, 'exclamdown': 10, 'exclam': 10, 'onesuperior': 10}, 50: {'quotedbl': 120, '2': 120, 'twosuperior': 120, 'at': 120}, 51: {'numerosign': 121, 'section': 121, 'threesuperior': 121, 'numbersign': 121, '3': 121}, 52: {'dollar': 122, '4': 122, 'semicolon': 122}, 53: {'onehalf': 14, '5': 14, 'percent': 14, 'threeeighths': 14}, 'masculine': 58, 55: {'question': 129, 'ampersand': 129, '7': 129, 'slash': 129, 'braceleft': 129}, 'Cyrillic_de': 143, 57: {'parenright': 131, '9': 131, 'bracketright': 131, 'parenleft': 131}, 'idotless': 31, 65: {'A': 132, 'Cyrillic_ef': 132, 'Cyrillic_EF': 132, 'a': 132}, 66: {'B': 133, 'b': 133, 'Cyrillic_i': 133, 'Cyrillic_I': 133}, 67: {'Cyrillic_es': 135, 'c': 135, 'C': 135, 'Cyrillic_ES': 135}, 68: {'Cyrillic_ve': 136, 'd': 136, 'Cyrillic_VE': 136, 'D': 136}, 69: {'EuroSign': 26, 'Cyrillic_u': 26, 'e': 26, 'E': 26, 'Cyrillic_U': 26}, 70: {'Cyrillic_A': 137, 'f': 137, 'Cyrillic_a': 137, 'F': 137}, 71: {'Cyrillic_pe': 138, 'Cyrillic_PE': 138, 'G': 138, 'g': 138}, 72: {'Cyrillic_ER': 139, 'H': 139, 'Cyrillic_er': 139, 'h': 139}, 12: {'Clear': 93}, 74: {'J': 141, 'Cyrillic_o': 141, 'Cyrillic_O': 141, 'j': 141}, 75: {'Cyrillic_EL': 142, 'K': 142, 'k': 142, 'Cyrillic_el': 142}, 76: {'Cyrillic_DE': 143, 'Cyrillic_de': 143, 'L': 143, 'l': 143}, 77: {'mu': 144, 'm': 144, 'M': 144, 'Cyrillic_SOFTSIGN': 144, 'Cyrillic_softsign': 144}, 78: {'Cyrillic_TE': 145, 'Cyrillic_te': 145, 'n': 145, 'N': 145}, 79: {'Cyrillic_shcha': 146, 'o': 146, 'O': 146, 'Cyrillic_SHCHA': 146}, 80: {'p': 147, 'Cyrillic_ze': 147, 'Cyrillic_ZE': 147, 'P': 147}, 'P': 33, 82: {'r': 149, 'R': 149, 'Cyrillic_ka': 149, 'Cyrillic_KA': 149}, 83: {'S': 150, 's': 150, 'Cyrillic_YERU': 150, 'Cyrillic_yeru': 150}, 84: {'Cyrillic_IE': 151, 'T': 151, 'Cyrillic_ie': 151, 't': 151}, 85: {'Cyrillic_GHE': 152, 'U': 152, 'u': 152, 'Cyrillic_ghe': 152}, 86: {'V': 153, 'v': 153, 'Cyrillic_EM': 153, 'Cyrillic_em': 153}, 87: {'W': 154, 'w': 154, 'Cyrillic_tse': 154, 'Cyrillic_TSE': 154}, 88: {'X': 155, 'Cyrillic_che': 155, 'Cyrillic_CHE': 155, 'x': 155}, 89: {'Y': 157, 'y': 157, 'Cyrillic_EN': 157, 'Cyrillic_en': 157}, 90: {'Cyrillic_ya': 158, 'Z': 158, 'z': 158, 'Cyrillic_YA': 158}, 91: {'Meta_L': 64, 'Alt_L': 64}, 92: {'Meta_R': 159}, 93: {'Menu': 117}, 'KP_Multiply': 63, 96: {'KP_0': 90, 'KP_Insert': 90}, 97: {'KP_1': 87, 'KP_End': 87}, 98: {'KP_2': 88, 'KP_Down': 88}, 99: {'KP_Next': 89, 'KP_3': 89}, 100: {'KP_Left': 83, 'KP_4': 83}, 101: {'KP_Begin': 84, 'KP_5': 84}, 102: {'KP_Right': 85, 'KP_6': 85}, 103: {'KP_Home': 79, 'KP_7': 79}, 104: {'KP_8': 80, 'KP_Up': 80}, 105: {'KP_Prior': 81, 'KP_9': 81}, 106: {'XF86ClearGrab': 63, 'KP_Multiply': 63}, 'Cyrillic_YA': 158, 109: {'KP_Subtract': 82, 'XF86Prev_VMode': 82}, 110: {'KP_Decimal': 134}, 111: {'XF86Ungrab': 112, 'KP_Divide': 112}, 112: {'F1': 67, 'XF86Switch_VT_1': 67}, 'p': 33, 114: {'XF86Switch_VT_3': 69, 'F3': 69}, 115: {'F4': 70, 'XF86Switch_VT_4': 70}, 116: {'F5': 71, 'XF86Switch_VT_5': 71}, 117: {'XF86Switch_VT_6': 72, 'F6': 72}, 'Tab': 23, 119: {'F8': 74, 'XF86Switch_VT_8': 74}, 120: {'F9': 75, 'XF86Switch_VT_9': 75}, 121: {'F10': 76, 'XF86Switch_VT_10': 76}, 122: {'F11': 95, 'XF86Switch_VT_11': 95}, 123: {'F12': 96, 'XF86Switch_VT_12': 96}, 124: {'F13': 160}, 125: {'F14': 161}, 126: {'F15': 162}, 127: {'F16': 163}, 128: {'F17': 164}, 'Page_Down': 114, 130: {'F19': 166}, 131: {'F20': 167}, 132: {'F21': 168}, 133: {'F22': 169}, 134: {'F23': 170}, 135: {'F24': 171}, 144: {'Num_Lock': 77}, 'XF86Display': 214, 73: {'I': 140, 'Cyrillic_sha': 140, 'i': 140, 'Cyrillic_SHA': 140}, 'Cyrillic_KA': 149, 160: {'Shift_L': 50}, 'mu': 58, 162: {'Control_L': 37}, 163: {'Control_R': 109}, 164: {'Meta_L': 64, 'Alt_L': 64}, 165: {'Alt_R': 172}, 'KP_Home': 79, 'section': 12, 'Cyrillic_YU': 176, 'ampersand': 45, 186: {'udiaeresis': 173, 'semicolon': 173, 'Cyrillic_ZHE': 173, 'Cyrillic_zhe': 173, 'colon': 173, 'Udiaeresis': 173}, 187: {'plus': 174, 'asciitilde': 174, 'asterisk': 174, 'equal': 174}, 188: {'Cyrillic_be': 175, 'comma': 175, 'Cyrillic_BE': 175, 'semicolon': 175, 'less': 175}, 189: {'endash': 61, 'emdash': 61, 'minus': 61, 'underscore': 61}, 190: {'Cyrillic_YU': 176, 'Cyrillic_yu': 176, 'colon': 176, 'period': 176, 'greater': 176}, 191: {'numbersign': 177, 'question': 177, 'period': 177, 'comma': 177, 'slash': 177, 'apostrophe': 177}, 192: {'Odiaeresis': 178, 'asciitilde': 178, 'Cyrillic_IO': 178, 'Cyrillic_io': 178, 'odiaeresis': 178, 'grave': 178}, 'degree': 49, 'THORN': 33, 'KP_Begin': 84, 'Prior': 99, 219: {'Cyrillic_HA': 179, 'ssharp': 179, 'question': 179, 'backslash': 179, 'Cyrillic_ha': 179, 'bracketleft': 179, 'braceleft': 179}, 220: {'dead_circumflex': 180, 'bar': 180, 'backslash': 180, 'degree': 180, 'slash': 180}, 221: {'dead_acute': 181, 'Cyrillic_HARDSIGN': 181, 'Cyrillic_hardsign': 181, 'dead_grave': 181, 'bracketright': 181, 'braceright': 181}, 222: {'quotedbl': 182, 'adiaeresis': 182, 'Adiaeresis': 182, 'Cyrillic_E': 182, 'Cyrillic_e': 182, 'apostrophe': 182}, 'KP_Page_Up': 81, 226: {'less': 183, 'bar': 183, 'greater': 183, 'slash': 183, 'backslash': 183}, 'F7': 73, 'k': 45, 'Cyrillic_CHE': 155, 'Home': 97, 'asciitilde': 35, 'Hstroke': 43, 'leftsinglequotemark': 56, '0': 19, 'KP_Prior': 81, 'Greek_OMEGA': 24, 'KP_Insert': 90, '6': 15, 'Delete': 107, 'dead_circumflex': 49, 'KP_Add': 86, 54: {'ampersand': 123, 'colon': 123, 'asciicircum': 123, '6': 123}, 'Cyrillic_shorti': 148, 'F': 41, 56: {'bracketleft': 130, 'asterisk': 130, 'parenleft': 130, 'U+20BD': 130, '8': 130}, 'bracketleft': 17, 'V': 55, 'asciicircum': 123, 'Cyrillic_ka': 149, 'F1': 67, 'F2': 68, 'F3': 69, 'F4': 70, 'F5': 71, 'F6': 72, 'f': 41, 'F8': 74, 'F9': 75, 'KP_Enter': 108, 'Down': 104, 'paragraph': 27, 'v': 55, 'Scroll_Lock': 78, 'KP_Page_Down': 89, 'division': 60, 'rightsinglequotemark': 57, 'backslash': 20, 'currency': 13, 'Shift_R': 62, 'udiaeresis': 34, 'eng': 42, 'XF86KbdBrightnessUp': 217, '1': 10, 'Cyrillic_TSE': 154, 'Cyrillic_HARDSIGN': 181, 'A': 38, 'Cyrillic_ZHE': 173, 'Lstroke': 46, 'Q': 24, 'U1E9E': 39, 'a': 38, 'Cyrillic_yeru': 150, 'Cyrillic_YERU': 150, 81: {'q': 148, 'Q': 148, 'Cyrillic_shorti': 148, 'at': 148, 'Cyrillic_SHORTI': 148}, 'threesuperior': 12, 'uparrow': 30, 'q': 24, 'Cyrillic_yu': 176, 'Odiaeresis': 47, 'underscore': 61, 'Cyrillic_SHA': 140, 'comma': 59, 'Control_R': 109, 'Cyrillic_ZE': 147, 'Control_L': 37, 'guillemotright': 52, 'greater': 94, 'Cyrillic_che': 155, 'L': 46, 'XF86KbdLightOnOff': 215, 'Cyrillic_ER': 139, 'Cyrillic_ES': 135, 'Mode_switch': 8, 'l': 46, 'dead_doubleacute': 47, 'dead_breve': 51, 'Cyrillic_EF': 132, 'notsign': 15, 'exclamdown': 10, 'Cyrillic_EN': 157, 'Cyrillic_EL': 142, 'Cyrillic_EM': 153, 'endash': 61, 'End': 103, 'Next': 105, 'Print': 111, 118: {'XF86Switch_VT_7': 73, 'F7': 73}, 113: {'XF86Switch_VT_2': 68, 'F2': 68}, 'Cyrillic_ze': 147, 'twosuperior': 11, '7': 16, 'KP_End': 87, 'G': 42, 'ENG': 42, 'F18': 165, 'F19': 166, 'W': 25, 'numerosign': 121, 'F12': 96, 'F13': 160, 'F10': 76, 'F11': 95, 'F16': 163, 'F17': 164, 'F14': 161, 'F15': 162, 'Cyrillic_er': 139, 'Cyrillic_es': 135, 'g': 42, 161: {'Shift_R': 62}, 'Cyrillic_ef': 132, 'w': 25, 'EuroSign': 26, 'Cyrillic_en': 157, 'Cyrillic_el': 142, 'Cyrillic_em': 153, 'Pause': 110, 129: {'F18': 165}, 'Cyrillic_ha': 179, 'Cyrillic_softsign': 144, 'Meta_L': 156, 'KP_Delete': 91, 'tslash': 28, '2': 11, 'Shift_L': 50, 'leftdoublequotemark': 56, 'B': 56, 'Cyrillic_HA': 179, 'R': 27, 'Sys_Req': 111, 'Meta_R': 159, 'b': 56, 145: {'Scroll_Lock': 78}, 'Cyrillic_ya': 158, 'Dstroke': 41, 'Cyrillic_zhe': 173, 'r': 27, 'Cancel': 92, 'minus': 61, 'Cyrillic_TE': 145, 'XF86Switch_VT_12': 96, 'XF86Switch_VT_11': 95, 'XF86Switch_VT_10': 76, 'quotedbl': 11, 'onequarter': 13, 'onehalf': 14, 'numbersign': 51, 'M': 58, 'KP_Separator': 91, 'x': 53, 'multiply': 59, 'grave': 178, 'onesuperior': 10, 'm': 58, 'lstroke': 46, 'adiaeresis': 48, 'XF86Ungrab': 112, 'F23': 170, 'F22': 169, 'F21': 168, 'F20': 167, 'questiondown': 20, 'F24': 171, 'copyright': 54, 'yen': 29, 'Cyrillic_be': 175, 'Cyrillic_shcha': 146, 'Cyrillic_BE': 175, 'seveneighths': 16, '8': 17, 'Cyrillic_te': 145, 'H': 43, 'downarrow': 30, 'X': 53, 'Right': 102, 'bar': 94, 'Help': 118, 'h': 43, 'U017F': 39, 'XF86Prev_VMode': 82, 'dead_abovering': 34, 'Cyrillic_SOFTSIGN': 144, 'ordfeminine': 41, 107: {'KP_Add': 86, 'XF86Next_VMode': 86}, 'Cyrillic_PE': 138, 'braceleft': 16, 'U203A': 52, 'oneeighth': 11, 'macron': 35, '3': 12, 'K': 45, 'Oslash': 32, 'C': 54, 'S': 39, 'U2033': 49, 'U2032': 49, 'exclam': 10, 'U2039': 53, 'ISO_Left_Tab': 23, 'c': 54, 'threeeighths': 14, 'equal': 19, 's': 39, 'Escape': 9, 'apostrophe': 51, 'eth': 40, 'period': 60, 'Cyrillic_IE': 151, 'colon': 60, 'dead_abovedot': 44, 'Cyrillic_IO': 178, 'ETH': 40, 'doublelowquotemark': 55, 'KP_Divide': 112, 'trademark': 17, 'cent': 54, 'N': 57, 'KP_0': 90, 'KP_1': 87, 'KP_2': 88, 'KP_3': 89, 'KP_4': 83, 'KP_5': 84, 'KP_6': 85, 'KP_7': 79, 'KP_8': 80, 'KP_9': 81, 'Cyrillic_pe': 138, 'KP_Left': 83, 'ISO_Level3_Shift': 124, 'guillemotleft': 53, 'n': 57, 'braceright': 19, 'brokenbar': 94, 'KP_Next': 89, 'Menu': 117, 'dead_caron': 48, 'fiveeighths': 15, 'odiaeresis': 47, 'rightarrow': 31, 'Return': 36, 'periodcentered': 59, 'KP_Up': 80, 'leftarrow': 29, 'BackSpace': 22, '9': 18, 'sterling': 12, 'Insert': 106, 'XF86Next_VMode': 86, 'I': 31, 'Super_R': 116, 'Clear': 93, 'Cyrillic_hardsign': 181, 'KP_Right': 85, 'Cyrillic_ie': 151, 'Udiaeresis': 34, 'Super_L': 127, 'Y': 52, 'Cyrillic_io': 178, 'emdash': 61, 'dead_cedilla': 21, 'i': 31, 'y': 52, 'rightdoublequotemark': 57, 'plusminus': 18, 'less': 94, 'XF86Switch_VT_3': 69, 'XF86Switch_VT_2': 68, 'XF86Switch_VT_1': 67, 'XF86Switch_VT_7': 73, 'XF86Switch_VT_6': 72, 'XF86Switch_VT_5': 71, 'XF86Switch_VT_4': 70, 'XF86Switch_VT_9': 75, 'XF86Switch_VT_8': 74, 'KP_Down': 88, '4': 13, 'KP_Decimal': 134, 'D': 40, 'T': 28, 'oslash': 32, 'd': 40, 'ssharp': 20, 't': 28, 'parenright': 18, 'Tslash': 28, 'E': 26, 'dead_acute': 21, 'slash': 16, 'Hyper_L': 128, 'Up': 98, 'O': 32, 'XF86KbdBrightnessDown': 216, 'Hyper_R': 184, 'dead_grave': 21, 'XF86ClearGrab': 63, 'singlelowquotemark': 55, 'o': 32, 'Cyrillic_O': 141, 'plus': 35, 'Cyrillic_GHE': 152, 'kra': 45, 'Cyrillic_tse': 154, 'dstroke': 41, 'Cyrillic_VE': 136, 'U2026': 60, 'Cyrillic_ghe': 152, 'KP_Equal': 126, 'parenleft': 17, 'question': 20, 'Break': 110, 'Num_Lock': 77, 'Cyrillic_sha': 140, 'hstroke': 43, 'registered': 27, 'J': 44, 'Z': 29, 'Left': 100, 'U+20BD': 130, 'Cyrillic_SHCHA': 146, 'dead_belowdot': 47, 'j': 44, 'z': 29, 'ae': 38, 'semicolon': 59, 'Page_Up': 101, 'KP_Subtract': 82, 'at': 24, 'percent': 14, '5': 14, 'Cyrillic_DE': 143, 'bracketright': 18, 'AE': 38, 'Cyrillic_U': 26, 'asterisk': 35, 'Adiaeresis': 48, 'Cyrillic_ve': 136, 'dead_diaeresis': 34, 'dead_ogonek': 21, 'U': 30, 'Cyrillic_I': 133, 'Cyrillic_E': 182, 'Cyrillic_A': 137, 'e': 26, 'Cyrillic_u': 26, 'thorn': 33, 'space': 65, 'Cyrillic_o': 141, 'u': 30, 'Cyrillic_i': 133, 'Cyrillic_e': 182, 'Cyrillic_a': 137}, 'native': False}
18mmap                             : {'supported': True, 'filename': ''}
19network                          : {'encoders': ('bencode', 'rencode'), 'encryption': '', 'tcp-encryption': '', 'mmap': True, 'interfaces': ('lo', 'em1', 'virbr0', 'virbr0-nic', 'vmnet1', 'vmnet8', 'enp0s29u1u7c4i2'), 'bencode': {'': True, 'version': ('Cython', 0, 13)}, 'lz4': {'': True}, 'system': {'core': {'wmem_default': 212992, 'wmem_max': 212992, 'busy_read': 0, 'busy_poll': 0, 'rmem_default': 212992, 'netdev_max_backlog': 1000, 'somaxconn': 128, 'default_qdisc': 'pfifo_fast', 'rmem_max': 212992, 'optmem_max': 20480}, 'unix': {'max_dgram_qlen': 512}, 'ipv4': {'ip': {'dynaddr': True, 'local_reserved_ports': (), 'default_ttl': 64, 'forward_use_pmtu': True, 'early_demux': True, 'forward': True, 'no_pmtu_disc': 0, 'nonlocal_bind': True, 'local_port_range': (32768, 60999)}, 'route': {'min_adv_mss': 256, 'mtu_expires': 600, 'min_pmtu': 552}, 'tcp': {'rfc1337': '0', 'available_congestion_control': 'cubic reno', 'retries2': 15, 'tso_win_divisor': 3, 'retries1': 3, 'sack': '1', 'moderate_rcvbuf': '1', 'allowed_congestion_control': 'cubic reno', 'stdurg': '0', 'max_syn_backlog': 512, 'slow_start_after_idle': '1', 'wmem': (4096, 16384, 4194304), 'keepalive_probes': 9, 'low_latency': True, 'no_metrics_save': True, 'dsack': True, 'notsent_lowat': -1, 'abort_on_overflow': True, 'syncookies': '1', 'window_scaling': '1', 'timestamps': True, 'mtu_probing': 0, 'challenge_ack_limit': 1000, 'retrans_collapse': True, 'fack': True, 'mem': (377814, 503753, 755628), 'ecn': 2, 'tw_recycle': '0', 'max_tw_buckets': 65536, 'early_retrans': '3', 'synack_retries': 5, 'tw_reuse': '0', 'thin_dupack': True, 'invalid_ratelimit': 500, 'limit_output_bytes': 262144, 'adv_win_scale': 1, 'workaround_signed_windows': True, 'autocorking': True, 'thin_linear_timeouts': True, 'max_orphans': 65536, 'app_win': 31, 'fastopen': 0, 'orphan_retries': 0, 'syn_retries': 6, 'keepalive_intvl': 75, 'min_tso_segs': 2, 'keepalive_time': 7200, 'congestion_control': 'cubic', 'fin_timeout': 60, 'base_mss': 512, 'frto': 2, 'rmem': (4096, 87380, 6291456), 'reordering': 3}, 'icmp': {'ignore_bogus_error_responses': '1', 'ratemask': 6168, 'echo_ignore_broadcasts': True, 'echo_ignore_all': True, 'ratelimit': 1000, 'errors_use_inbound_ifaddr': '0'}, 'ipfrag': {'low_thresh': 3145728, 'high_thresh': 4194304, 'time': 30, 'max_dist': 64}, 'igmp': {'max_msf': 10, 'qrv': 2, 'max_memberships': 20}}}, 'ssl': {'': True, 'npn': True, 'verify': {'VERIFY_X509_STRICT': 32, 'VERIFY_CRL_CHECK_CHAIN': 12, 'VERIFY_CRL_CHECK_LEAF': 4, 'VERIFY_DEFAULT': 0}, 'ecdh': True, 'openssl': {'version-number': 268439647, 'version-info': (1, 0, 1, 5, 15), 'version': 'OpenSSL 1.0.1e-fips 11 Feb 2013'}, 'sni': True, 'channel-binding-types': ('tls-unique',), 'options': {'OP_NO_SSLv3': 33554432, 'OP_NO_SSLv2': 16777216, 'OP_NO_TLSv1_1': 268435456, 'OP_NO_TLSv1_2': 134217728, 'OP_NO_TLSv1': 67108864, 'OP_CIPHER_SERVER_PREFERENCE': 4194304, 'OP_SINGLE_DH_USE': 1048576, 'OP_SINGLE_ECDH_USE': 524288, 'OP_NO_COMPRESSION': 131072, 'OP_ALL': 2147484663L}, 'protocols': {'PROTOCOL_SSLv23': 2, 'PROTOCOL_SSLv3': 1, 'PROTOCOL_SSLv2': 0, 'PROTOCOL_TLSv1': 3, 'PROTOCOL_TLSv1_1': 4, 'PROTOCOL_TLSv1_2': 5}}, 'zlib': {'': True, 'version': '1.0'}, 'yaml': {'': False}, 'lzo': {'': False}, 'compressors': ('zlib', 'lz4'), 'rencode': {'': True, 'version': ('Cython', 1, 0, 5)}, 'config': {'vsocket.timeout': 5, 'tcp.nodelay': True, 'socket.timeout': 20}, 'sockets': {'unix-domain': {'listeners': ('/var/run/user/1000/xpra/testhost-1', '/home/user/.xpra/testhost-1')}}, 'digest': ('hmac', 'xor', 'hmac+whirlpool', 'hmac+sha512', 'hmac+sha384', 'hmac+sha256', 'hmac+sha224', 'hmac+sha1', 'hmac+sha', 'hmac+ripemd160', 'hmac+md5', 'hmac+md4', 'hmac+ecdsa-with-SHA1', 'hmac+dsaWithSHA', 'hmac+dsaEncryption', 'hmac+SHA512', 'hmac+SHA384', 'hmac+SHA256', 'hmac+SHA224', 'hmac+SHA1', 'hmac+SHA', 'hmac+RIPEMD160', 'hmac+MD5', 'hmac+MD4', 'hmac+DSA-SHA', 'hmac+DSA'), 'gateways': {'INET': (('10.10.27.254', 'em1', True),)}}
20opengl                           : {'error': ''}
21printing                         : {'mimetype': {'default': 'application/postscript'}, 'add-local-printers': False, 'mimetypes': {'': ('application/pdf', 'application/postscript'), 'default': ('application/pdf', 'application/postscript'), 'ppd': {'application/postscript': 'CUPS-PDF.ppd', 'application/pdf': 'Generic-PDF_Printer-PDF.ppd'}, 'printers': {'application/postscript': 'Generic PostScript Printer', 'application/pdf': 'Generic PDF Printer'}}, 'lpinfo': '/usr/sbin/lpinfo', 'generic': True, 'printer-prefix': '', 'simulate-failure': 0, 'forwarder': 'xpraforwarder', 'raw-mode': False, 'cups.default-options': {'fit-to-page': 'True'}, 'lpadmin': '/usr/sbin/lpadmin', 'cups-dbus': {'': 1, 'default': 1, 'poll-delay': 60}, 'add-printer-options': ('-E', '-o printer-is-shared=false', '-u allow:$USER'), 'printers': {'': {'application/postscript': ('-m', 'drv:///sample.drv/generic.ppd'), 'application/pdf': ('-P', '/usr/share/ppd/cupsfilters/Generic-PDF_Printer-PDF.ppd')}, 'predefined': {'application/postscript': ('-m', 'drv:///sample.drv/generic.ppd'), 'application/pdf': ('-P', '/usr/share/ppd/cupsfilters/Generic-PDF_Printer-PDF.ppd')}}, 'skipped-printers': ('Cups-PDF',), 'tmpdir': '/tmp'}
22server                           : {'XShm': True, 'gtk': {'version': (2, 24, 31)}, 'uid': 1000, 'Xkb': True, 'cairo': {'version': '1.8.10'}, 'pid': 21955, 'pings': 5, 'gdk': {'version': '2.24.0'}, 'executable': '/usr/bin/python2', 'uuid': '0dc5131bdd054bdcb431de51efed16f2', 'pyglib': {'version': (2, 28, 6)}, 'exec_prefix': '/usr', 'hostname': 'testhost', 'idle-timeout': 0, 'fakeXinerama': True, 'platform': {'': 'linux2', 'sysrelease': '3.10.0-514.26.2.el7.x86_64', 'linux_distribution': ('CentOS', '7.4.1708', 'Core'), 'machine': 'x86_64', 'platform': 'Linux-3.10.0-514.26.2.el7.x86_64-x86_64-with-centos-7.4.1708-Core', 'architecture': ('64bit', 'ELF'), 'release': '3.10.0-514.26.2.el7.x86_64', 'processor': 'Intel(R) Core(TM) i5-2400 CPU @ 3.10GHz', 'name': 'Linux CentOS 7.4.1708 Core'}, 'gid': 999, 'build': {'lib.pygtk': '2.24.0', 'lib.xrandr': '1.4.2', 'linker': 'GNU ld version 2.25.1-22.base.el7 ', 'lib.pygobject': '2.28.6', 'lib.xcomposite': '0.4.4', 'cython': '0.25.2', 'nvcc': '8.0.44', 'lib.gtk': '3.14.13', 'lib.pycairo': '1.8.10', 'lib.xext': '1.3.3', 'python': '2.7.5', 'lib.vpx': '1.6.1', 'version': '2.1', 'revision': 15692, 'lib.x264': '0.148.x', 'lib.xtst': '1.2.2', 'lib.xfixes': '5.0.1', 'date': '2017-04-21', 'bit': '64bit', 'by': 'winswitch.org', 'compiler': 'gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-11)', 'local_modifications': 0, 'lib.nvenc7': '7.0', 'lib.xkbfile': '1.0.8', 'lib.xdamage': '1.1.4', 'lib.x11': '1.6.3', 'time': '11:58', 'cpu': 'x86_64'}, 'randr': {'options': ((8192, 4096), (6400, 4096), (6400, 2560), (6400, 2160), (5760, 2160), (5680, 1440), (5496, 1200), (5280, 2560), (5280, 1920), (5280, 1200), (5280, 1080), (5120, 3200), (5120, 2880), (5120, 2560), (4800, 1200), (4720, 3840), (4480, 1440), (4400, 2560), (4240, 1440), (4160, 1440), (4096, 2304), (4096, 2160), (4000, 1660), (4000, 1440), (3904, 1440), (3864, 1050), (3840, 2880), (3840, 2560), (3840, 2160), (3840, 2048), (3840, 1200), (3840, 1080), (3600, 1200), (3600, 1080), (3520, 1196), (3360, 2560), (3360, 1050), (3288, 1080), (3200, 1800), (3200, 1080), (3120, 2560), (3120, 1050), (3072, 2560), (3008, 1692), (3000, 2560), (2728, 1680), (2720, 1024), (2680, 2074), (2560, 2240), (2560, 1600), (2560, 1440), (2560, 1400), (2048, 2048), (2048, 1536), (2048, 1152), (1920, 1440), (1920, 1200), (1920, 1080), (1920, 960), (1856, 1392), (1792, 1344), (1728, 1520), (1680, 1050), (1600, 1200), (1600, 900), (1440, 900), (1400, 1050), (1400, 900), (1366, 768), (1360, 768), (1280, 1024), (1280, 960), (1280, 800), (1280, 768), (1280, 762), (1280, 720), (1280, 682), (1152, 864), (1024, 768), (1024, 730), (1024, 640), (1024, 600), (1024, 576), (1024, 562), (960, 720), (960, 540), (960, 536), (960, 498), (928, 696), (896, 672), (864, 486), (848, 480), (848, 442), (832, 624), (800, 1280), (800, 1242), (800, 600), (800, 562), (800, 480), (768, 1024), (768, 986), (720, 1280), (720, 1242), (720, 405), (720, 400), (700, 525), (640, 512), (640, 480), (640, 400), (640, 360), (640, 350), (600, 1024), (600, 986), (600, 800), (600, 762), (576, 432), (536, 960), (536, 922), (512, 384), (480, 854), (480, 810), (480, 800), (480, 762), (416, 312), (400, 300), (360, 200), (320, 240), (320, 200), (320, 175))}, 'type': 'Python/gtk/x11', 'glib': {'version': (2, 50, 3)}, 'max_desktop_size': (8192, 4096), 'total-memory': 16612528128L, 'python': {'version': '2.7.5'}, 'start_time': 546368, 'argv': ('/bin/xpra', 'start', '--start-child=xterm -ls', '--socket-dir=', '--socket-dirs=/var/run/user/$UID/xpra', '--socket-dirs=~/.xpra', '--socket-dirs=/var/run/xpra', '--env=XPRA_PROXY_START_UUID=e58867b60ae9481fa7ff3bef66b8b223', '--systemd-run=no'), 'XTest': True, 'pygtk': {'version': (2, 24, 0)}, 'path': ('/usr/bin', '/usr/lib64/python27.zip', '/usr/lib64/python2.7', '/usr/lib64/python2.7/plat-linux2', '/usr/lib64/python2.7/lib-tk', '/usr/lib64/python2.7/lib-old', '/usr/lib64/python2.7/lib-dynload', '/usr/lib64/python2.7/site-packages', '/usr/lib64/python2.7/site-packages/gtk-2.0', '/usr/lib/python2.7/site-packages'), 'pango': {'version': '1.40.4'}, 'root_window_size': (1920, 1200), 'byteorder': 'little', 'libfakeXinerama': '/lib64/libfakeXinerama.so.1.0', 'mode': 'X11', 'gobject': {'version': (2, 28, 6)}, 'display': ':1'}
23sound                            : {'gst.version': ('1', '10', '4', '0'), 'muxers': ('ogg', 'mka', 'mpeg4'), 'decoders': ('opus+ogg', 'vorbis+mka', 'flac+ogg', 'wav+lz4', 'wav', 'wavpack', 'speex+ogg', 'opus', 'flac+ogg', 'opus+mka', 'flac'), 'pulseaudio': {'found': True, 'id': '', 'wrapper': 'pactl', 'server': ''}, 'pygst.version': ('3', '22', '0'), 'python.bits': '64', 'sources': ('pulsesrc', 'autoaudiosrc', 'alsasrc', 'osssrc', 'oss4src', 'audiotestsrc'), 'encoders': ('opus+ogg', 'vorbis+mka', 'flac+ogg', 'wav+lz4', 'wav', 'wavpack', 'speex+ogg', 'opus', 'flac+ogg', 'opus+mka', 'flac'), 'devices': 7, 'demuxers': ('ogg', 'mka', 'mpeg4'), 'device': {'alsa_input.pci-0000_00_1b.0.analog-stereo': 'Built-in Audio Analog Stereo', 'alsa_output.usb-Jabra_Jabra_UC_VOICE_550a_MS_000100B72CB2-00-MS.analog-stereo.monitor': 'Monitor of Jabra UC VOICE 550a MS Analog Stereo', 'alsa_output.pci-0000_00_1b.0.analog-stereo': 'Built-in Audio Analog Stereo', 'alsa_output.usb-Jabra_Jabra_UC_VOICE_550a_MS_000100B72CB2-00-MS.analog-stereo': 'Jabra UC VOICE 550a MS Analog Stereo', 'alsa_input.usb-Jabra_Jabra_UC_VOICE_550a_MS_000100B72CB2-00-MS.analog-mono': 'Jabra UC VOICE 550a MS Analog Mono', 'alsa_card.pci-0000_01_00.1': 'GK208 HDMI/DP Audio Controller', 'alsa_output.pci-0000_00_1b.0.analog-stereo.monitor': 'Monitor of Built-in Audio Analog Stereo'}, 'bundle-metadata': ('True',), 'plugins': ('3gppmux', 'aacparse', 'ac3parse', 'accurip', 'adder', 'adpcmdec', 'adpcmenc', 'agingtv', 'aiffmux', 'aiffparse', 'alawdec', 'alawenc', 'alpha', 'alphacolor', 'alsamidisrc', 'alsasink', 'alsasrc', 'amrparse', 'apedemux', 'apev2mux', 'appsink', 'appsrc', 'asfmux', 'asfparse', 'aspectratiocrop', 'asteriskh263', 'audioamplify', 'audiochannelmix', 'audiochebband', 'audiocheblimit', 'audioconvert', 'audiodynamic', 'audioecho', 'audiofirfilter', 'audioiirfilter', 'audiointerleave', 'audioinvert', 'audiokaraoke', 'audiomixer', 'audiopanorama', 'audioparse', 'audiorate', 'audioresample', 'audiosegmentclip', 'audiotestsrc', 'audiowsincband', 'audiowsinclimit', 'auparse', 'autoaudiosink', 'autoaudiosrc', 'autoconvert', 'autovideoconvert', 'autovideosink', 'autovideosrc', 'avidemux', 'avimux', 'avisubtitle', 'bayer2rgb', 'bin', 'bpmdetect', 'breakmydata', 'bulge', 'burn', 'bz2dec', 'bz2enc', 'camerabin', 'capsfilter', 'capssetter', 'cdparanoiasrc', 'checksumsink', 'chopmydata', 'chromahold', 'chromium', 'circle', 'clockoverlay', 'coloreffects', 'combdetect', 'compare', 'compositor', 'concat', 'cpureport', 'cutter', 'dashdemux', 'dataurisrc', 'dcaparse', 'debugspy', 'decodebin', 'decodebin3', 'deinterlace', 'deinterleave', 'dicetv', 'diffuse', 'dilate', 'diracparse', 'dodge', 'downloadbuffer', 'dtlsdec', 'dtlsenc', 'dtlssrtpdec', 'dtlssrtpdemux', 'dtlssrtpenc', 'dtmfsrc', 'dv1394src', 'dvbbasebin', 'dvbsrc', 'dvdec', 'dvdemux', 'dynudpsink', 'edgetv', 'encodebin', 'equalizer-10bands', 'equalizer-3bands', 'equalizer-nbands', 'errorignore', 'exclusion', 'fakesink', 'fakesrc', 'fdsink', 'fdsrc', 'festival', 'fieldanalysis', 'filesink', 'filesrc', 'fisheye', 'flacdec', 'flacenc', 'flacparse', 'flactag', 'flvdemux', 'flvmux', 'fpsdisplaysink', 'freeverb', 'frei0r-filter-3-point-color-balance', 'frei0r-filter-3dflippo', 'frei0r-filter-alpha0ps', 'frei0r-filter-alphagrad', 'frei0r-filter-alphaspot', 'frei0r-filter-b', 'frei0r-filter-baltan', 'frei0r-filter-bluescreen0r', 'frei0r-filter-brightness', 'frei0r-filter-bw0r', 'frei0r-filter-c0rners', 'frei0r-filter-cartoon', 'frei0r-filter-color-distance', 'frei0r-filter-coloradj-rgb', 'frei0r-filter-contrast0r', 'frei0r-filter-curves', 'frei0r-filter-defish0r', 'frei0r-filter-delay0r', 'frei0r-filter-delaygrab', 'frei0r-filter-distort0r', 'frei0r-filter-edgeglow', 'frei0r-filter-equaliz0r', 'frei0r-filter-flippo', 'frei0r-filter-g', 'frei0r-filter-gamma', 'frei0r-filter-glow', 'frei0r-filter-hqdn3d', 'frei0r-filter-hueshift0r', 'frei0r-filter-invert0r', 'frei0r-filter-k-means-clustering', 'frei0r-filter-lens-correction', 'frei0r-filter-letterb0xed', 'frei0r-filter-levels', 'frei0r-filter-light-graffiti', 'frei0r-filter-luminance', 'frei0r-filter-mask0mate', 'frei0r-filter-nervous', 'frei0r-filter-nikon-d90-stairstepping-fix', 'frei0r-filter-nosync0r', 'frei0r-filter-perspective', 'frei0r-filter-pixeliz0r', 'frei0r-filter-pr0be', 'frei0r-filter-pr0file', 'frei0r-filter-primaries', 'frei0r-filter-r', 'frei0r-filter-rgb-parade', 'frei0r-filter-saturat0r', 'frei0r-filter-scale0tilt', 'frei0r-filter-scanline0r', 'frei0r-filter-select0r', 'frei0r-filter-sharpness', 'frei0r-filter-sobel', 'frei0r-filter-sop-sat', 'frei0r-filter-squareblur', 'frei0r-filter-tehroxx0r', 'frei0r-filter-threelay0r', 'frei0r-filter-threshold0r', 'frei0r-filter-tint0r', 'frei0r-filter-transparency', 'frei0r-filter-twolay0r', 'frei0r-filter-vectorscope', 'frei0r-filter-vertigo', 'frei0r-filter-white-balance', 'frei0r-mixer-addition', 'frei0r-mixer-addition-alpha', 'frei0r-mixer-alpha-injection', 'frei0r-mixer-alphaatop', 'frei0r-mixer-alphain', 'frei0r-mixer-alphaout', 'frei0r-mixer-alphaover', 'frei0r-mixer-alphaxor', 'frei0r-mixer-blend', 'frei0r-mixer-burn', 'frei0r-mixer-color-only', 'frei0r-mixer-composition', 'frei0r-mixer-darken', 'frei0r-mixer-difference', 'frei0r-mixer-divide', 'frei0r-mixer-dodge', 'frei0r-mixer-grain-extract', 'frei0r-mixer-grain-merge', 'frei0r-mixer-hardlight', 'frei0r-mixer-hue', 'frei0r-mixer-lighten', 'frei0r-mixer-multiply', 'frei0r-mixer-overlay', 'frei0r-mixer-rgb', 'frei0r-mixer-saturation', 'frei0r-mixer-screen', 'frei0r-mixer-softlight', 'frei0r-mixer-subtract', 'frei0r-mixer-uv-map', 'frei0r-mixer-value', 'frei0r-mixer-xfade0r', 'frei0r-src-ising0r', 'frei0r-src-lissajous0r', 'frei0r-src-nois0r', 'frei0r-src-onecol0r', 'frei0r-src-partik0l', 'frei0r-src-plasma', 'frei0r-src-test-pat-b', 'frei0r-src-test-pat-c', 'frei0r-src-test-pat-g', 'frei0r-src-test-pat-i', 'frei0r-src-test-pat-l', 'frei0r-src-test-pat-r', 'fsmsncamrecvconference', 'fsmsncamsendconference', 'fsrawconference', 'fsrtcpfilter', 'fsrtpconference', 'fsvideoanyrate', 'funnel', 'gamma', 'gaussianblur', 'gdkpixbufdec', 'gdkpixbufoverlay', 'gdkpixbufsink', 'gdpdepay', 'gdppay', 'giosink', 'giosrc', 'giostreamsink', 'giostreamsrc', 'glcolorbalance', 'glcolorconvert', 'glcolorscale', 'gldeinterlace', 'gldifferencematte', 'gldownload', 'gleffects', 'gleffects_blur', 'gleffects_bulge', 'gleffects_fisheye', 'gleffects_glow', 'gleffects_heat', 'gleffects_identity', 'gleffects_laplacian', 'gleffects_lumaxpro', 'gleffects_mirror', 'gleffects_sepia', 'gleffects_sin', 'gleffects_sobel', 'gleffects_square', 'gleffects_squeeze', 'gleffects_stretch', 'gleffects_tunnel', 'gleffects_twirl', 'gleffects_xpro', 'gleffects_xray', 'glfilterapp', 'glfilterbin', 'glfiltercube', 'glfilterglass', 'glimagesink', 'glimagesinkelement', 'glmixerbin', 'glmosaic', 'gloverlay', 'glshader', 'glsinkbin', 'glsrcbin', 'glstereomix', 'glstereosplit', 'gltestsrc', 'glupload', 'glvideomixer', 'glvideomixerelement', 'glviewconvert', 'goom', 'goom2k1', 'gsmdec', 'gsmenc', 'h263parse', 'h264parse', 'h265parse', 'hdv1394src', 'hlsdemux', 'hlssink', 'icydemux', 'id3demux', 'id3mux', 'id3v2mux', 'identity', 'imagefreeze', 'input-selector', 'interaudiosink', 'interaudiosrc', 'interlace', 'interleave', 'intersubsink', 'intersubsrc', 'intervideosink', 'intervideosrc', 'irtspparse', 'ismlmux', 'ivfparse', 'ivtc', 'jifmux', 'jp2kdecimator', 'jpeg2000parse', 'jpegdec', 'jpegenc', 'jpegparse', 'kaleidoscope', 'kmssink', 'level', 'liveadder', 'marble', 'matroskademux', 'matroskamux', 'matroskaparse', 'midiparse', 'mirror', 'mj2mux', 'mp4mux', 'mpeg4videoparse', 'mpegaudioparse', 'mpegpsdemux', 'mpegpsmux', 'mpegtsmux', 'mpegvideoparse', 'mssdemux', 'mulawdec', 'mulawenc', 'multifdsink', 'multifilesink', 'multifilesrc', 'multipartdemux', 'multipartmux', 'multiqueue', 'multisocketsink', 'multiudpsink', 'musepackdec', 'mxfdemux', 'mxfmux', 'navigationtest', 'navseek', 'netsim', 'nicesink', 'nicesrc', 'oggaviparse', 'oggdemux', 'oggmux', 'oggparse', 'ogmaudioparse', 'ogmtextparse', 'ogmvideoparse', 'optv', 'opusdec', 'opusenc', 'opusparse', 'oss4sink', 'oss4src', 'osssink', 'osssrc', 'output-selector', 'parsebin', 'pcapparse', 'perspective', 'pinch', 'pipeline', 'pitch', 'playbin', 'playbin3', 'playsink', 'pngdec', 'pngenc', 'pngparse', 'pnmdec', 'pnmenc', 'progressreport', 'pulsesink', 'pulsesrc', 'pushfilesrc', 'qtdemux', 'qtmoovrecover', 'qtmux', 'quarktv', 'queue', 'queue2', 'radioactv', 'rawaudioparse', 'rawvideoparse', 'removesilence', 'revtv', 'rfbsrc', 'rganalysis', 'rgb2bayer', 'rglimiter', 'rgvolume', 'rippletv', 'rndbuffersize', 'rotate', 'rsndvdbin', 'rsvgdec', 'rsvgoverlay', 'rtpL16depay', 'rtpL16pay', 'rtpL24depay', 'rtpL24pay', 'rtpac3depay', 'rtpac3pay', 'rtpamrdepay', 'rtpamrpay', 'rtpasfpay', 'rtpbin', 'rtpbvdepay', 'rtpbvpay', 'rtpceltdepay', 'rtpceltpay', 'rtpdec', 'rtpdtmfdepay', 'rtpdtmfmux', 'rtpdtmfsrc', 'rtpdvdepay', 'rtpdvpay', 'rtpg722depay', 'rtpg722pay', 'rtpg723depay', 'rtpg723pay', 'rtpg726depay', 'rtpg726pay', 'rtpg729depay', 'rtpg729pay', 'rtpgsmdepay', 'rtpgsmpay', 'rtpgstdepay', 'rtpgstpay', 'rtph261depay', 'rtph261pay', 'rtph263depay', 'rtph263pay', 'rtph263pdepay', 'rtph263ppay', 'rtph264depay', 'rtph264pay', 'rtph265depay', 'rtph265pay', 'rtpilbcdepay', 'rtpilbcpay', 'rtpj2kdepay', 'rtpj2kpay', 'rtpjitterbuffer', 'rtpjpegdepay', 'rtpjpegpay', 'rtpklvdepay', 'rtpklvpay', 'rtpmp1sdepay', 'rtpmp2tdepay', 'rtpmp2tpay', 'rtpmp4adepay', 'rtpmp4apay', 'rtpmp4gdepay', 'rtpmp4gpay', 'rtpmp4vdepay', 'rtpmp4vpay', 'rtpmpadepay', 'rtpmpapay', 'rtpmparobustdepay', 'rtpmpvdepay', 'rtpmpvpay', 'rtpmux', 'rtponvifparse', 'rtponviftimestamp', 'rtpopusdepay', 'rtpopuspay', 'rtppcmadepay', 'rtppcmapay', 'rtppcmudepay', 'rtppcmupay', 'rtpptdemux', 'rtpqcelpdepay', 'rtpqdm2depay', 'rtprtxqueue', 'rtprtxreceive', 'rtprtxsend', 'rtpsbcdepay', 'rtpsbcpay', 'rtpsession', 'rtpsirendepay', 'rtpsirenpay', 'rtpspeexdepay', 'rtpspeexpay', 'rtpssrcdemux', 'rtpstreamdepay', 'rtpstreampay', 'rtpsv3vdepay', 'rtptheoradepay', 'rtptheorapay', 'rtpvorbisdepay', 'rtpvorbispay', 'rtpvp8depay', 'rtpvp8pay', 'rtpvp9depay', 'rtpvp9pay', 'rtpvrawdepay', 'rtpvrawpay', 'rtpxqtdepay', 'rtspsrc', 'sbcparse', 'scaletempo', 'scenechange', 'sdpdemux', 'sdpsrc', 'sfdec', 'shagadelictv', 'shapewipe', 'shmsink', 'shmsrc', 'shout2send', 'simplevideomark', 'simplevideomarkdetect', 'smooth', 'smpte', 'smptealpha', 'socketsrc', 'solarize', 'souphttpclientsink', 'souphttpsrc', 'spacescope', 'spectrascope', 'spectrum', 'speed', 'speexdec', 'speexenc', 'sphere', 'splitfilesrc', 'splitmuxsink', 'splitmuxsrc', 'square', 'srtenc', 'srtpdec', 'srtpenc', 'ssaparse', 'stereo', 'streaktv', 'streamiddemux', 'streamsynchronizer', 'stretch', 'subparse', 'subtitleoverlay', 'synaescope', 'taginject', 'tcpclientsink', 'tcpclientsrc', 'tcpserversink', 'tcpserversrc', 'tee', 'testsink', 'textoverlay', 'textrender', 'theoradec', 'theoraenc', 'theoraparse', 'timecodestamper', 'timecodewait', 'timeoverlay', 'tsdemux', 'tsparse', 'tunnel', 'twirl', 'typefind', 'udpsink', 'udpsrc', 'unalignedaudioparse', 'unalignedvideoparse', 'uridecodebin', 'urisourcebin', 'v4l2radio', 'v4l2sink', 'v4l2src', 'valve', 'vc1parse', 'vcdsrc', 'vertigotv', 'videoanalyse', 'videobalance', 'videobox', 'videoconvert', 'videocrop', 'videodiff', 'videoflip', 'videoframe-audiolevel', 'videomedian', 'videomixer', 'videoparse', 'videorate', 'videoscale', 'videosegmentclip', 'videotestsrc', 'viewfinderbin', 'vmncdec', 'volume', 'vorbisdec', 'vorbisenc', 'vorbisparse', 'vorbistag', 'vp8dec', 'vp8enc', 'vp9dec', 'vp9enc', 'warptv', 'watchdog', 'waterripple', 'wavenc', 'wavescope', 'wavpackdec', 'wavpackenc', 'wavpackparse', 'wavparse', 'webmmux', 'webvttenc', 'wrappercamerabinsrc', 'ximagesink', 'ximagesrc', 'xvimagesink', 'y4mdec', 'y4menc', 'yadif', 'zebrastripe'), 'python.version': ('2', '7', '5')}
24state                            : {'windows': 1, 'window-manager-name': 'Xpra', 'focused': 0, 'grabbed': 0}
25threads                          : {'count': 6, 'info': {0: 'write', 1: 'read', 2: 'parse', 3: 'format'}, 'thread': {0: 'MainThread', 1: 'Info', 2: 'parse', 3: 'encode', 4: 'Worker_Thread', 5: 'read'}, 'frame': {0: {'': 'info', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/threading.py', 765, 'run', 'self.__target(*self.__args, **self.__kwargs)'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_core.py', 1212, 'in_thread', 'info = self.get_info(proto, *args)'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_base.py', 2023, 'get_info', 'info = ServerCore.get_info(self, proto)'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_core.py', 1264, 'get_info', 'up("threads",   self.get_thread_info(proto))'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_base.py', 2018, 'get_thread_info', 'return get_thread_info(proto, list(self._server_sources.keys()))'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_core.py', 118, 'get_thread_info', 'stack = traceback.extract_stack(frame_pair[1])'))}, 1: {'': 'unknown', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/threading.py', 765, 'run', 'self.__target(*self.__args, **self.__kwargs)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 684, '_read_parse_thread_loop', 'self.do_read_parse_thread_loop()'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 710, 'do_read_parse_thread_loop', 'buf = self._read_queue.get()'), ('/usr/lib64/python2.7/Queue.py', 168, 'get', 'self.not_empty.wait()'), ('/usr/lib64/python2.7/threading.py', 339, 'wait', 'waiter.acquire()'))}, 2: {'': 'write', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/threading.py', 765, 'run', 'self.__target(*self.__args, **self.__kwargs)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 574, '_write_thread_loop', 'self._io_thread_loop("write", self._write)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 556, '_io_thread_loop', 'while not self._closed and callback():'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 576, '_write', 'items = self._write_queue.get()'), ('/usr/lib64/python2.7/Queue.py', 168, 'get', 'self.not_empty.wait()'), ('/usr/lib64/python2.7/threading.py', 339, 'wait', 'waiter.acquire()'))}, 3: {'': 'main', 'stack': (('/bin/xpra', 15, '<module>', 'sys.exit(main(sys.argv[0], sys.argv))'), ('/usr/lib64/python2.7/site-packages/xpra/scripts/main.py', 140, 'main', 'return run_mode(script_file, err, options, args, mode, defaults)'), ('/usr/lib64/python2.7/site-packages/xpra/scripts/main.py', 1277, 'run_mode', 'return run_server(error_cb, options, mode, script_file, args, current_display)'), ('/usr/lib64/python2.7/site-packages/xpra/scripts/server.py', 1583, 'run_server', 'e = app.run()'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_base.py', 846, 'run', 'return ServerCore.run(self)'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_core.py', 462, 'run', 'self.do_run()'), ('/usr/lib64/python2.7/site-packages/xpra/server/gtk_server_base.py', 64, 'do_run', 'gtk_main()'), ('/usr/lib64/python2.7/site-packages/xpra/gtk_common/gtk_util.py', 408, 'gtk_main', 'gtk.main()'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_base.py', 1996, '_process_info_request', 'self.get_all_info(info_callback, proto, *packet[2:])'), ('/usr/lib64/python2.7/site-packages/xpra/server/server_core.py', 1219, 'get_all_info', 'start_thread(in_thread, "Info", daemon=True)'), ('/usr/lib64/python2.7/site-packages/xpra/make_thread.py', 24, 'start_thread', 'return t'), ('/usr/lib64/python2.7/threading.py', 752, 'start', 'self.__started.wait()'), ('/usr/lib64/python2.7/threading.py', 625, 'wait', 'self.__cond.release()'), ('/usr/lib64/python2.7/threading.py', 374, 'wait', 'self._acquire_restore(saved_state)'))}, 4: {'': 'worker', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/site-packages/xpra/server/background_worker.py', 55, 'run', 'item = self.items.get()'), ('/usr/lib64/python2.7/Queue.py', 168, 'get', 'self.not_empty.wait()'), ('/usr/lib64/python2.7/threading.py', 339, 'wait', 'waiter.acquire()'))}, 5: {'': 'read', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/threading.py', 765, 'run', 'self.__target(*self.__args, **self.__kwargs)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 610, '_read_thread_loop', 'self._io_thread_loop("read", self._read)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 556, '_io_thread_loop', 'while not self._closed and callback():'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 612, '_read', 'buf = self._conn.read(READ_BUFFER_SIZE)'), ('/usr/lib64/python2.7/site-packages/xpra/net/bytestreams.py', 296, 'read', 'return self._read(self._socket.recv, n)'), ('/usr/lib64/python2.7/site-packages/xpra/net/bytestreams.py', 192, '_read', 'r = self.untilConcludes(*args)'), ('/usr/lib64/python2.7/site-packages/xpra/net/bytestreams.py', 177, 'untilConcludes', 'return untilConcludes(self.is_active, *args)'), ('/usr/lib64/python2.7/site-packages/xpra/net/bytestreams.py', 130, 'untilConcludes', 'return f(*a, **kw)'))}, 6: {'': 'parse', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/threading.py', 765, 'run', 'self.__target(*self.__args, **self.__kwargs)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 684, '_read_parse_thread_loop', 'self.do_read_parse_thread_loop()'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 710, 'do_read_parse_thread_loop', 'buf = self._read_queue.get()'), ('/usr/lib64/python2.7/Queue.py', 168, 'get', 'self.not_empty.wait()'), ('/usr/lib64/python2.7/threading.py', 339, 'wait', 'waiter.acquire()'))}, 7: {'': 'unknown', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/threading.py', 765, 'run', 'self.__target(*self.__args, **self.__kwargs)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 610, '_read_thread_loop', 'self._io_thread_loop("read", self._read)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 556, '_io_thread_loop', 'while not self._closed and callback():'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 612, '_read', 'buf = self._conn.read(READ_BUFFER_SIZE)'), ('/usr/lib64/python2.7/site-packages/xpra/net/bytestreams.py', 242, 'read', 'return self._read(self._osread, self._read_fd, n)'), ('/usr/lib64/python2.7/site-packages/xpra/net/bytestreams.py', 192, '_read', 'r = self.untilConcludes(*args)'), ('/usr/lib64/python2.7/site-packages/xpra/net/bytestreams.py', 177, 'untilConcludes', 'return untilConcludes(self.is_active, *args)'), ('/usr/lib64/python2.7/site-packages/xpra/net/bytestreams.py', 130, 'untilConcludes', 'return f(*a, **kw)'))}, 8: {'': 'unknown', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/threading.py', 765, 'run', 'self.__target(*self.__args, **self.__kwargs)'), ('/usr/lib64/python2.7/site-packages/xpra/server/source.py', 2262, 'encode_loop', 'fn_and_args = self.encode_work_queue.get(True)'), ('/usr/lib64/python2.7/Queue.py', 168, 'get', 'self.not_empty.wait()'), ('/usr/lib64/python2.7/threading.py', 339, 'wait', 'waiter.acquire()'))}, 9: {'': 'format', 'stack': (('/usr/lib64/python2.7/threading.py', 785, '__bootstrap', 'self.__bootstrap_inner()'), ('/usr/lib64/python2.7/threading.py', 812, '__bootstrap_inner', 'self.run()'), ('/usr/lib64/python2.7/threading.py', 765, 'run', 'self.__target(*self.__args, **self.__kwargs)'), ('/usr/lib64/python2.7/site-packages/xpra/net/protocol.py', 287, '_write_format_thread_loop', 'self._source_has_more.wait()'), ('/usr/lib64/python2.7/threading.py', 622, 'wait', 'self.__cond.wait(timeout, balancing)'), ('/usr/lib64/python2.7/threading.py', 339, 'wait', 'waiter.acquire()'))}}, 'info.count': 4, 'memory': {'children': {'majflt': 0, 'nsignals': 0, 'minflt': 121690, 'inblock': 0, 'nswap': 0, 'idrss': 0, 'msgrcv': 0, 'maxrss': 45132, 'isrss': 0, 'nvcsw': 900, 'stime': 0, 'nivcsw': 240, 'oublock': 0, 'msgsnd': 0, 'ixrss': 0, 'utime': 0}, 'server': {'majflt': 0, 'nsignals': 0, 'minflt': 52755, 'inblock': 0, 'nswap': 0, 'idrss': 0, 'msgrcv': 0, 'maxrss': 67932, 'isrss': 0, 'nvcsw': 31257, 'stime': 0, 'nivcsw': 143, 'oublock': 32, 'msgsnd': 0, 'ixrss': 0, 'utime': 1}}}
26video                            : {'decoding': {}, 'csc': {'GBRP_to_YUV444P': ('swscale',), 'BGR_to_YUV444P': ('swscale',), 'BGRX_to_XRGB': ('swscale',), 'BGR_to_GBRP': ('swscale',), 'BGRX_to_GBRP': ('swscale',), 'BGRX_to_BGR': ('swscale',), 'XRGB_to_YUV420P': ('swscale',), 'XRGB_to_BGR': ('swscale',), 'YUV444P_to_BGR': ('swscale',), 'BGR_to_RGB': ('swscale',), 'RGB_to_BGR': ('swscale',), 'GBRP_to_BGR': ('swscale',), 'YUV422P_to_XRGB': ('swscale',), 'YUV444P_to_BGRX': ('swscale',), 'BGR_to_YUV422P': ('swscale',), 'YUV422P_to_BGRX': ('swscale',), 'YUV420P_to_BGRX': ('swscale',), 'BGR_to_YUV420P': ('swscale',), 'BGRX_to_YUV444P': ('swscale',), 'YUV420P_to_BGR': ('swscale',), 'RGB_to_BGRX': ('swscale',), 'YUV444P_to_YUV422P': ('swscale',), 'BGRX_to_YUV420P': ('swscale',), 'RGB_to_GBRP': ('swscale',), 'BGRX_to_YUV422P': ('swscale',), 'XRGB_to_YUV422P': ('swscale',), 'RGB_to_XRGB': ('swscale',), 'BGRX_to_RGB': ('swscale',), 'YUV420P_to_XRGB': ('swscale',), 'YUV422P_to_YUV420P': ('swscale',), 'GBRP_to_YUV420P': ('swscale',), 'YUV444P_to_GBRP': ('swscale',), 'XRGB_to_BGRX': ('swscale',), 'GBRP_to_XRGB': ('swscale',), 'YUV420P_to_RGB': ('swscale',), 'YUV420P_to_YUV444P': ('swscale',), 'YUV422P_to_YUV444P': ('swscale',), 'YUV444P_to_RGB': ('swscale',), 'GBRP_to_BGRX': ('swscale',), 'YUV422P_to_RGB': ('swscale',), 'YUV444P_to_XRGB': ('swscale',), 'RGB_to_YUV444P': ('swscale',), 'XRGB_to_RGB': ('swscale',), 'RGB_to_YUV420P': ('swscale',), 'XRGB_to_GBRP': ('swscale',), 'XRGB_to_YUV444P': ('swscale',), 'YUV444P_to_YUV420P': ('swscale',), 'YUV422P_to_BGR': ('swscale',), 'RGB_to_YUV422P': ('swscale',), 'BGR_to_XRGB': ('swscale',), 'YUV420P_to_YUV422P': ('swscale',), 'GBRP_to_RGB': ('swscale',), 'BGR_to_BGRX': ('swscale',), 'GBRP_to_YUV422P': ('swscale',)}, 'encoding': {'YUV420P_to_vp9': ('vpx', 'vpx'), 'YUV420P_to_vp8': ('vpx',), 'csc-module': {'swscale': 'active'}, 'YUV422P_to_h264': ('x264',), 'YUV420P_to_vp8+webm': ('ffmpeg',), 'YUV420P_to_h264+mp4': ('ffmpeg',), 'BGRA_to_h264': ('x264',), 'YUV420P_to_h264': ('x264',), 'video-encoder': {'x264': 'active', 'nvenc': 'active', 'vpx': 'active', 'ffmpeg': 'active'}, 'BGRX_to_h264': ('x264',), 'YUV444P_to_vp9': ('vpx', 'vpx'), 'YUV444P_to_h264': ('x264',), 'YUV420P_to_mpeg4+mp4': ('ffmpeg',)}}
27webcam                           : {'': False, 'virtual-video-devices': 0}
28window                           : {1: {'size-constraints': {'base-size': (19, 4), 'size': (499, 316), 'gravity': 1, 'increment': (6, 13), 'minimum-size': (25, 17)}, 'av-sync': {'current': 0, 'target': 0}, 'XShm': True, 'last_used': 'rgb24', 'mapped-at': (39, 66, 499, 316), 'frame': (9, 9, 36, 9), 'client-machine': 'testhost', 'pid': 22170, 'sticky': False, 'bit-depth': {'source': 24, 'client': 24}, 'shape': {}, 'suspended': False, 'encodings': {'non-video': ('png', 'png/P', 'png/L', 'rgb24', 'rgb32', 'jpeg'), 'auto-refresh': {'last-event': {'message': 'nothing to do', 'elapsed': 8952}}, 'video': ('h264', 'vp9', 'vp8'), 'edge': 'rgb24'}, 'total_frames': {'rgb24': 20, 'jpeg': 2, 'png': 1}, 'size': (499, 316), 'fullscreen': False, 'shown': True, 'xid': '0x600022', 'dimensions': (499, 316), 'title': 'user@testhost:~', 'menu': {}, 'supports-transparency': False, 'encoding': {'': 'auto', 'speed': {'90p': 89, '80p': 83, 'cur': 83, 'min': 70, 'frame_delay': 29, 'max': 94, 'low_limit': 157684, 'min_speed': 30, 'damage_latency': {'abs_factor': 0, 'rel_factor': 4, 'ref': 35, 'target': 35, 'avg': 1}, 'mpixels': 0, 'avg': 83, 'decoding_latency': {'target': 8000000, 'factor': 76}, '50p': 83}, 'selection': 'best_encoding_video', 'pipeline_last_check': 21858, 'scrolling': False, 'pixels_per_ns': {'max': 1981, 'avg': 17, 'min': 10}, 'jpeg': {'ratio_pct': {'max': 1, 'avg': 1, 'min': 1}, 'pixels_per_ns': {'max': 11, 'avg': 11, 'min': 11}, 'pixels_encoded_per_second': 86375166}, 'ratio_pct': {'max': 100, 'avg': 6, 'min': 0}, 'rgb24': {'ratio_pct': {'max': 100, 'avg': 7, 'min': 6}, 'pixels_per_ns': {'max': 1981, 'avg': 14, 'min': 10}, 'pixels_encoded_per_second': 68757470}, 'lossless_threshold': {'base': 76, 'pixel_boost': 5}, 'pipeline_param': {'dimensions': (499, 316), 'src_format': 'BGRX', 'encoding': ('h264', 'vp9', 'vp8')}, 'pixels_encoded_per_second': 57865670, 'quality': {'batch-delay-ratio': 82, '90p': 99, 'backlog_factor': (0, 0, 157684, 0, 100), 'cur': 85, 'min': 79, 'max': 99, 'compression-ratio': (169, 174, -1), 'min_quality': 30, '80p': 99, 'avg': 91, '50p': 94, 'min_speed': 30}, 'png': {'ratio_pct': {'max': 0, 'avg': 0, 'min': 0}, 'pixels_per_ns': {'max': 56, 'avg': 56, 'min': 56}, 'pixels_encoded_per_second': 17770008}, 'pipeline_option': {0: {'scaling': (1, 1), 'encoder': {'': 'x264', 'scaling': (1, 1), 'height': 316, 'width': 498}, 'score': 78, 'csc': 'None', 'format': 'BGRX'}, 1: {'scaling': (1, 1), 'encoder': {'': 'x264', 'scaling': (1, 1), 'height': 316, 'width': 498}, 'score': 71, 'csc': {'': 'swscale', 'scaling': (1, 1), 'height': 316, 'width': 498}, 'format': 'YUV444P'}, 2: {'scaling': (1, 1), 'encoder': {'': 'x264', 'scaling': (1, 1), 'height': 316, 'width': 498}, 'score': 70, 'csc': {'': 'swscale', 'scaling': (1, 1), 'height': 316, 'width': 498}, 'format': 'YUV420P'}, 3: {'scaling': (1, 1), 'encoder': {'': 'vpx', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'score': 69, 'csc': {'': 'swscale', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'format': 'YUV444P'}, 4: {'scaling': (1, 1), 'encoder': {'': 'vpx', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'score': 69, 'csc': {'': 'swscale', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'format': 'YUV444P'}, 5: {'scaling': (1, 1), 'encoder': {'': 'x264', 'scaling': (1, 1), 'height': 316, 'width': 498}, 'score': 68, 'csc': {'': 'swscale', 'scaling': (1, 1), 'height': 316, 'width': 498}, 'format': 'YUV422P'}, 6: {'scaling': (1, 1), 'encoder': {'': 'vpx', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'score': 67, 'csc': {'': 'swscale', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'format': 'YUV420P'}, 7: {'scaling': (1, 1), 'encoder': {'': 'vpx', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'score': 66, 'csc': {'': 'swscale', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'format': 'YUV420P'}, 8: {'scaling': (1, 1), 'encoder': {'': 'vpx', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'score': 66, 'csc': {'': 'swscale', 'scaling': (1, 1), 'height': 316, 'width': 499}, 'format': 'YUV420P'}}}, 'icon-title': 'user@testhost:~', 'damage': {'target-latency': 130, 'packets_sent': 23, 'in_latency': {'max': 9, '90p': 3, 'avg': 1, 'cur': 0, 'min': 0}, 'events': 141, 'out_latency': {'max': 9, '90p': 3, 'avg': 2, 'cur': 0, 'min': 0}}, 'rgb_threshold': 117765, 'state': (), 'above': False, 'maximized': False, 'class-instance': ('xterm', 'XTerm'), 'icon': {'width': 48, 'stride': 192, 'bytes': 9216, 'height': 48}, 'override-redirect': False, 'skip-pager': False, 'opacity': -1, 'client-geometry': (39, 66, 499, 316), 'full-frames-only': False, 'soft-timeout': {'max': 5, 'expired': 0}, 'iconic': False, 'strut': {}, 'scaling': (1, 1), 'allowed-actions': ('_NET_WM_ACTION_CLOSE', '_NET_WM_ACTION_MOVE', '_NET_WM_ACTION_RESIZE', '_NET_WM_ACTION_FULLSCREEN', '_NET_WM_ACTION_MINIMIZE', '_NET_WM_ACTION_SHADE', '_NET_WM_ACTION_STICK', '_NET_WM_ACTION_MAXIMIZE_HORZ', '_NET_WM_ACTION_MAXIMIZE_VERT', '_NET_WM_ACTION_CHANGE_DESKTOP', '_NET_WM_ACTION_ABOVE', '_NET_WM_ACTION_BELOW'), 'window-type': ('NORMAL',), 'depth': 24, 'focused': 0, 'delta': {'': ('png', 'rgb24', 'rgb32'), 'buckets': 5, 'bucket': {}}, 'skip-taskbar': False, 'pixel-format': 'BGRX', 'rgb_formats': ('RGB', 'RGBX'), 'total_pixels': {'rgb24': 1588930, 'jpeg': 315368, 'png': 157684}, 'bypass-compositor': 0, 'property': {'fullscreen': False, 'scaling.control': 1, 'quality': 0, 'scaling': (1, 1), 'min_speed': 30, 'speed': 0, 'min_quality': 30}, 'geometry': (39, 66, 499, 316), 'video_subregion': {'detection': True, 'video-mode': False, 'supported': True, 'enabled': True, 'counter': 0}, 'damage.fps': 0, 'batch': {'soft-expired': {'count': 0, '': (0, 0)}, 'fullscreen': {'': (0, 0), 'other_is_fullscreen': False}, 'timeout-delay': 15000, 'network-send-speed': {'': (100, 10), 'avg': 8, 'recent': 8}, 'locked': False, 'damage-network-delay': {'': (100, 50), 'avg': 40, 'recent': 40}, 'focus': {'has_focus': True, '': (0, 100)}, 'min-delay': 5, 'delay': {'90p': 50, '80p': 29, 'cur': 29, 'min': 29, 'max': 54, 'avg': 32, '50p': 29}, 'packet-queue-size': {'': (0, 0), 'target': 1000, 'weight_multiplier': 0, 'smoothing': 'sqrt', 'aim': 250, 'aimed_avg': 0, 'div': 1000, 'avg': 0, 'recent': 0}, 'compression-work-queue': {'': (0, 0), 'target': 1000, 'weight_multiplier': 0, 'smoothing': 'logp', 'aim': 250, 'aimed_avg': 0, 'div': 1000, 'avg': 0, 'recent': 0}, 'actual_delays': {'max': 54, '90p': 50, 'avg': 32, 'cur': 29, 'min': 29}, 'damage-packet-queue-pixels': {'': (0, 0), 'target': 1000, 'weight_multiplier': 0, 'smoothing': 'sqrt', 'aim': 250, 'aimed_avg': 0, 'div': 157684000, 'avg': 0, 'recent': 0}, 'maximized': {'other_is_maximized': False, '': (0, 0)}, 'damage-rate': {'': (100, 0), 'max_latency': 100, 'elapsed': 40}, 'packet-queue-pixels': {'': (0, 0), 'target': 1000, 'weight_multiplier': 0, 'smoothing': 'sqrt', 'aim': 250, 'aimed_avg': 0, 'div': 157684000, 'avg': 0, 'recent': 0}, 'override-redirect': {'': (100, 0), 'is_OR': False}, 'max-delay': 500}, 'below': False, 'grabbed': 0, 'command': '', 'modal': False, 'mmap': False, 'shaded': False, 'tray': False}}