3.132.134.107:4000

Connection Banner:

=​============================================================= Welcome to liminalmud, version 0.1! This is a text-based multiplayer game set in a world of liminal spaces and the backrooms of reality. The game is currently in early development, so expect bugs. If you have an existing account, connect to it by typing: connect <username> <password> If you need to create an account, type (without the <>'s): create <username> <password> If you have spaces in your username, enclose it in quotes. Enter help for more info. look will re-show this screen. =​=============================================================

Server URLs

Server Location: 🇺🇸 United States (GeoIP)

Encoding

  • Effective encoding: ascii

  • Scanner detected: cp437

Telnet Fingerprint

4f579dc442743eb8

This fingerprint is shared by 4 other servers.

Options offered by server: ECHO, GMCP, MCCP2, MSDP, MSSP, MXP, SGA

Options requested from client: LINEMODE, MCCP2, MSSP, NAWS, TTYPE

The complete JSON record collected during the scan, including Telnet negotiation results and banner data.

Show JSON
{
  "server-probe": {
    "fingerprint": "4f579dc442743eb8",
    "fingerprint-data": {
      "offered-options": [
        "ECHO",
        "GMCP",
        "MCCP2",
        "MSDP",
        "MSSP",
        "MXP",
        "SGA"
      ],
      "probed-protocol": "server",
      "refused-options": [
        "AARDWOLF",
        "ATCP",
        "BINARY",
        "CHARSET",
        "COM_PORT",
        "EOR",
        "MCCP3",
        "MSP",
        "STATUS",
        "ZMP"
      ],
      "requested-options": [
        "LINEMODE",
        "MCCP2",
        "MSSP",
        "NAWS",
        "TTYPE"
      ],
      "scan-type": "quick"
    },
    "session_data": {
      "banner_after_return": "",
      "banner_before_return": "\r\n\u001b[1m\u001b[34m==============================================================\u001b[0m\r\n Welcome to \u001b[1m\u001b[32mliminalmud\u001b[0m, version 0.1!\r\n\r\n This is a text-based multiplayer game set in a world of liminal \r\n spaces and the backrooms of reality.\r\n \r\n The game is currently in early development, so expect bugs.\r\n\r\n If you have an existing account, connect to it by typing:\r\n      \u001b[1m\u001b[37mconnect <username> <password>\u001b[0m\r\n If you need to create an account, type (without the <>'s):\r\n      \u001b[1m\u001b[37mcreate <username> <password>\u001b[0m\r\n\r\n If you have spaces in your username, enclose it in quotes.\r\n Enter \u001b[1m\u001b[37mhelp\u001b[0m for more info. \u001b[1m\u001b[37mlook\u001b[0m will re-show this screen.\r\n\u001b[1m\u001b[34m==============================================================\u001b[0m\r\n",
      "dsr_replies": 0,
      "dsr_requests": 0,
      "encoding": "cp437",
      "mssp": {
        "ADULT MATERIAL": "0",
        "ANSI": "1",
        "AREAS": "0",
        "ATCP": "0",
        "CLASSES": "0",
        "CODEBASE": "Evennia",
        "CONTACT": "",
        "CRAWL DELAY": "-1",
        "CREATED": "",
        "DBSIZE": "0",
        "EQUIPMENT SYSTEM": "None",
        "EXITS": "0",
        "EXTRA DESCRIPTIONS": "0",
        "FAMILY": "Evennia",
        "GAMEPLAY": "",
        "GAMESYSTEM": "Custom",
        "GENRE": "None",
        "GMCP": "1",
        "HELPFILES": "0",
        "HIRING BUILDERS": "0",
        "HIRING CODERS": "0",
        "HOSTNAME": "",
        "ICON": "",
        "IP": "",
        "LANGUAGE": "",
        "LEVELS": "0",
        "LOCATION": "",
        "MCCP": "1",
        "MCP": "0",
        "MINIMUM AGE": "0",
        "MOBILES": "0",
        "MSDP": "1",
        "MSP": "0",
        "MUDPROGS": "0",
        "MUDTRIGS": "0",
        "MULTICLASSING": "0",
        "MULTIPLAYING": "None",
        "MXP": "1",
        "NAME": "Mygame",
        "NEWBIE FRIENDLY": "0",
        "OBJECTS": "0",
        "PAY FOR PERKS": "0",
        "PAY TO PLAY": "0",
        "PLAYER CITIES": "0",
        "PLAYER CLANS": "0",
        "PLAYER CRAFTING": "0",
        "PLAYER GUILDS": "0",
        "PLAYERKILLING": "None",
        "PLAYERS": "0",
        "PORT": "4000",
        "PUEBLO": "0",
        "QUEST SYSTEM": "None",
        "RACES": "0",
        "RESETS": "0",
        "ROLEPLAYING": "None",
        "ROOMS": "0",
        "SKILLS": "0",
        "SSL": "1",
        "STATUS": "Open Beta",
        "SUBGENRE": "None",
        "TRAINING SYSTEM": "None",
        "UPTIME": "1729208380.5578275",
        "UTF-8": "1",
        "VT100": "0",
        "WEBSITE": "",
        "WORLD ORIGINALITY": "All Original",
        "XTERM 256 COLORS": "1",
        "XTERM TRUE COLORS": "0",
        "ZMP": "0"
      },
      "mxp": [
        "activated"
      ],
      "option_states": {
        "server_offered": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": true,
          "MCCP2": true,
          "MCCP3": false,
          "MSDP": true,
          "MSP": false,
          "MSSP": true,
          "MXP": true,
          "SGA": true,
          "ZMP": false
        },
        "server_requested": {
          "AARDWOLF": false,
          "ATCP": false,
          "GMCP": false,
          "LINEMODE": true,
          "MCCP2": true,
          "MCCP3": false,
          "MSDP": false,
          "MSP": false,
          "MSSP": true,
          "MXP": false,
          "NAWS": true,
          "TTYPE": true,
          "ZMP": false
        }
      },
      "scan_type": "quick",
      "timing": {
        "probe": 0.2536122798919678,
        "total": 10.76341462135315
      }
    }
  },
  "sessions": [
    {
      "connected": "2026-03-07T04:06:47.740866+00:00",
      "host": "3.132.134.107",
      "ip": "3.132.134.107",
      "port": 4000
    }
  ]
}

Connection Log

Debug-level log of the Telnet negotiation session, showing each IAC (Interpret As Command) exchange between client and server.

Generated by telnetlib3-fingerprint

telnetlib3-fingerprint --loglevel=debug 3.132.134.107 4000
Show Logfile
DEBUG client.py:1193 Fingerprint client: host=3.132.134.107 port=4000
INFO client_base.py:186 Connected to <Peer 3.132.134.107 4000>
DEBUG stream_writer.py:3330 pending_option[WILL + MXP] = True
DEBUG stream_writer.py:1019 send IAC WILL MXP
DEBUG stream_writer.py:3330 pending_option[WILL + ATCP] = True
DEBUG stream_writer.py:1019 send IAC WILL ATCP
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC WILL MCCP3_COMPRESS
DEBUG stream_writer.py:3330 pending_option[WILL + GMCP] = True
DEBUG stream_writer.py:1019 send IAC WILL GMCP
DEBUG stream_writer.py:3330 pending_option[WILL + AARDWOLF] = True
DEBUG stream_writer.py:1019 send IAC WILL AARDWOLF
DEBUG stream_writer.py:3330 pending_option[WILL + MSP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSP
DEBUG stream_writer.py:3330 pending_option[WILL + MSDP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSDP
DEBUG stream_writer.py:3330 pending_option[WILL + MSSP] = True
DEBUG stream_writer.py:1019 send IAC WILL MSSP
DEBUG stream_writer.py:3330 pending_option[WILL + ZMP] = True
DEBUG stream_writer.py:1019 send IAC WILL ZMP
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:3330 pending_option[DO + MXP] = True
DEBUG stream_writer.py:1019 send IAC DO MXP
DEBUG stream_writer.py:3330 pending_option[DO + ATCP] = True
DEBUG stream_writer.py:1019 send IAC DO ATCP
DEBUG stream_writer.py:3330 pending_option[DO + MCCP3_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC DO MCCP3_COMPRESS
DEBUG stream_writer.py:3330 pending_option[DO + GMCP] = True
DEBUG stream_writer.py:1019 send IAC DO GMCP
DEBUG stream_writer.py:3330 pending_option[DO + AARDWOLF] = True
DEBUG stream_writer.py:1019 send IAC DO AARDWOLF
DEBUG stream_writer.py:3330 pending_option[DO + MSP] = True
DEBUG stream_writer.py:1019 send IAC DO MSP
DEBUG stream_writer.py:3330 pending_option[DO + MSDP] = True
DEBUG stream_writer.py:1019 send IAC DO MSDP
DEBUG stream_writer.py:3330 pending_option[DO + MSSP] = True
DEBUG stream_writer.py:1019 send IAC DO MSSP
DEBUG stream_writer.py:3330 pending_option[DO + ZMP] = True
DEBUG stream_writer.py:1019 send IAC DO ZMP
DEBUG stream_writer.py:3330 pending_option[DO + MCCP2_COMPRESS] = True
DEBUG stream_writer.py:1019 send IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:768 recv IAC DO LINEMODE
DEBUG stream_writer.py:1836 handle_do(LINEMODE)
DEBUG stream_writer.py:3330 pending_option[WILL + LINEMODE] = True
DEBUG stream_writer.py:1019 send IAC WILL LINEMODE
DEBUG stream_writer.py:3330 pending_option[SB + LINEMODE] = True
DEBUG stream_writer.py:3330 local_option[LINEMODE] = True
DEBUG stream_writer.py:2762 slc_start: IAC SB LINEMODE SLC [..]
DEBUG stream_writer.py:2798 _slc_add (b'\x00',   (^@, default))
DEBUG stream_writer.py:2751 send (slc_end): b'\x00\x03\x00'
DEBUG stream_writer.py:2757 slc_end: [..] IAC SE
DEBUG stream_writer.py:3330 pending_option[WILL + LINEMODE] = False
DEBUG stream_writer.py:768 recv IAC WILL SGA
DEBUG stream_writer.py:784 WILL SGA unsolicited
DEBUG stream_writer.py:1994 handle_will(SGA)
DEBUG stream_writer.py:3330 pending_option[DO + SGA] = True
DEBUG stream_writer.py:1019 send IAC DO SGA
DEBUG stream_writer.py:3330 remote_option[SGA] = True
DEBUG stream_writer.py:3330 pending_option[DO + SGA] = False
DEBUG stream_writer.py:768 recv IAC DO NAWS
DEBUG stream_writer.py:1836 handle_do(NAWS)
DEBUG stream_writer.py:3330 pending_option[WILL + NAWS] = True
DEBUG stream_writer.py:1019 send IAC WILL NAWS
DEBUG stream_writer.py:2453 send IAC SB NAWS (rows=25, cols=80) IAC SE
DEBUG stream_writer.py:3330 local_option[NAWS] = True
DEBUG stream_writer.py:3330 pending_option[WILL + NAWS] = False
DEBUG stream_writer.py:768 recv IAC DO TTYPE
DEBUG stream_writer.py:1836 handle_do(TTYPE)
DEBUG stream_writer.py:3330 pending_option[WILL + TTYPE] = True
DEBUG stream_writer.py:1019 send IAC WILL TTYPE
DEBUG stream_writer.py:3330 pending_option[SB + TTYPE] = True
DEBUG stream_writer.py:3330 local_option[TTYPE] = True
DEBUG stream_writer.py:3330 pending_option[WILL + TTYPE] = False
DEBUG stream_writer.py:768 recv IAC WILL MCCP2_COMPRESS
DEBUG stream_writer.py:1994 handle_will(MCCP2_COMPRESS)
DEBUG stream_writer.py:993 skip DO MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3330 remote_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3330 pending_option[DO + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC WILL MSSP
DEBUG stream_writer.py:1994 handle_will(MSSP)
DEBUG stream_writer.py:993 skip DO MSSP; pending_option = True
DEBUG stream_writer.py:3330 remote_option[MSSP] = True
DEBUG stream_writer.py:3330 pending_option[DO + MSSP] = False
DEBUG stream_writer.py:768 recv IAC WILL MSDP
DEBUG stream_writer.py:1994 handle_will(MSDP)
DEBUG stream_writer.py:993 skip DO MSDP; pending_option = True
DEBUG stream_writer.py:3330 remote_option[MSDP] = True
DEBUG stream_writer.py:3330 pending_option[DO + MSDP] = False
DEBUG stream_writer.py:768 recv IAC WILL GMCP
DEBUG stream_writer.py:1994 handle_will(GMCP)
DEBUG stream_writer.py:993 skip DO GMCP; pending_option = True
DEBUG stream_writer.py:3330 remote_option[GMCP] = True
DEBUG stream_writer.py:1067 send IAC SB GMCP Core.Hello IAC SE
DEBUG stream_writer.py:1067 send IAC SB GMCP Core.Supports.Set IAC SE
INFO client.py:201 GMCP handshake: Core.Hello + Core.Supports.Set ['Char 1', 'Char.Vitals 1', 'Char.Items 1', 'Room 1', 'Room.Info
    1', 'Comm 1', 'Comm.Channel 1', 'Group 1']
DEBUG stream_writer.py:3330 pending_option[DO + GMCP] = False
DEBUG stream_writer.py:768 recv IAC WILL MXP
DEBUG stream_writer.py:1994 handle_will(MXP)
DEBUG stream_writer.py:993 skip DO MXP; pending_option = True
DEBUG stream_writer.py:3330 remote_option[MXP] = True
DEBUG stream_writer.py:3330 pending_option[DO + MXP] = False
DEBUG stream_writer.py:768 recv IAC DONT MXP
DEBUG stream_writer.py:1959 handle_dont(MXP)
DEBUG stream_writer.py:3330 pending_option[WILL + MXP] = False
DEBUG stream_writer.py:3330 local_option[MXP] = False
DEBUG stream_writer.py:768 recv IAC DONT ATCP
DEBUG stream_writer.py:1959 handle_dont(ATCP)
DEBUG stream_writer.py:3330 pending_option[WILL + ATCP] = False
DEBUG stream_writer.py:3330 local_option[ATCP] = False
DEBUG stream_writer.py:768 recv IAC DONT MCCP3_COMPRESS
DEBUG stream_writer.py:1959 handle_dont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3330 local_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC DONT GMCP
DEBUG stream_writer.py:1959 handle_dont(GMCP)
DEBUG stream_writer.py:3330 pending_option[WILL + GMCP] = False
DEBUG stream_writer.py:3330 local_option[GMCP] = False
DEBUG stream_writer.py:768 recv IAC DONT AARDWOLF
DEBUG stream_writer.py:1959 handle_dont(AARDWOLF)
DEBUG stream_writer.py:3330 pending_option[WILL + AARDWOLF] = False
DEBUG stream_writer.py:3330 local_option[AARDWOLF] = False
DEBUG stream_writer.py:768 recv IAC DONT MSP
DEBUG stream_writer.py:1959 handle_dont(MSP)
DEBUG stream_writer.py:3330 pending_option[WILL + MSP] = False
DEBUG stream_writer.py:3330 local_option[MSP] = False
DEBUG stream_writer.py:768 recv IAC DONT MSDP
DEBUG stream_writer.py:1959 handle_dont(MSDP)
DEBUG stream_writer.py:3330 pending_option[WILL + MSDP] = False
DEBUG stream_writer.py:3330 local_option[MSDP] = False
DEBUG stream_writer.py:768 recv IAC DO MSSP
DEBUG stream_writer.py:1836 handle_do(MSSP)
DEBUG stream_writer.py:993 skip WILL MSSP; pending_option = True
DEBUG stream_writer.py:3330 local_option[MSSP] = True
DEBUG stream_writer.py:3330 pending_option[WILL + MSSP] = False
DEBUG stream_writer.py:768 recv IAC DONT ZMP
DEBUG stream_writer.py:1959 handle_dont(ZMP)
DEBUG stream_writer.py:3330 pending_option[WILL + ZMP] = False
DEBUG stream_writer.py:3330 local_option[ZMP] = False
DEBUG stream_writer.py:768 recv IAC DO MCCP2_COMPRESS
DEBUG stream_writer.py:1836 handle_do(MCCP2_COMPRESS)
DEBUG stream_writer.py:993 skip WILL MCCP2_COMPRESS; pending_option = True
DEBUG stream_writer.py:3330 local_option[MCCP2_COMPRESS] = True
DEBUG stream_writer.py:3330 pending_option[WILL + MCCP2_COMPRESS] = False
DEBUG stream_writer.py:762 begin sub-negotiation SB MXP
DEBUG stream_writer.py:749 sub-negotiation cmd MXP SE completion byte
DEBUG stream_writer.py:2187 [SB + MXP] unsolicited
DEBUG stream_writer.py:1754 MXP: b''
DEBUG stream_writer.py:768 recv IAC WONT ATCP
DEBUG stream_writer.py:2148 handle_wont(ATCP)
DEBUG stream_writer.py:3330 remote_option[ATCP] = False
DEBUG stream_writer.py:3330 pending_option[DO + ATCP] = False
DEBUG stream_writer.py:768 recv IAC WONT MCCP3_COMPRESS
DEBUG stream_writer.py:2148 handle_wont(MCCP3_COMPRESS)
DEBUG stream_writer.py:3330 remote_option[MCCP3_COMPRESS] = False
DEBUG stream_writer.py:3330 pending_option[DO + MCCP3_COMPRESS] = False
DEBUG stream_writer.py:768 recv IAC WONT AARDWOLF
DEBUG stream_writer.py:2148 handle_wont(AARDWOLF)
DEBUG stream_writer.py:3330 remote_option[AARDWOLF] = False
DEBUG stream_writer.py:3330 pending_option[DO + AARDWOLF] = False
DEBUG stream_writer.py:768 recv IAC WONT MSP
DEBUG stream_writer.py:2148 handle_wont(MSP)
DEBUG stream_writer.py:3330 remote_option[MSP] = False
DEBUG stream_writer.py:3330 pending_option[DO + MSP] = False
DEBUG stream_writer.py:762 begin sub-negotiation SB MSSP
DEBUG stream_writer.py:749 sub-negotiation cmd MSSP SE completion byte
DEBUG stream_writer.py:2187 [SB + MSSP] unsolicited
DEBUG stream_writer.py:1745 MSSP: {'NAME': 'Mygame', 'PLAYERS': '0', 'UPTIME': '1729208380.5578275', 'PORT': '4000', 'CRAWL
    DELAY': '-1', 'CODEBASE': 'Evennia', 'FAMILY': 'Evennia', 'ANSI': '1', 'GMCP': '1', 'ATCP': '0', 'MCCP': '1', 'MCP': '0',
    'MSDP': '1', 'MSP': '0', 'MXP': '1', 'PUEBLO': '0', 'SSL': '1', 'UTF-8': '1', 'ZMP': '0', 'VT100': '0', 'XTERM 256 COLORS':
    '1', 'HOSTNAME': '', 'CONTACT': '', 'CREATED': '', 'ICON': '', 'IP': '', 'LANGUAGE': '', 'LOCATION': '', 'MINIMUM AGE': '0',
    'WEBSITE': '', 'GENRE': 'None', 'GAMEPLAY': '', 'STATUS': 'Open Beta', 'GAMESYSTEM': 'Custom', 'SUBGENRE': 'None', 'AREAS':
    '0', 'HELPFILES': '0', 'MOBILES': '0', 'OBJECTS': '0', 'ROOMS': '0', 'CLASSES': '0', 'LEVELS': '0', 'RACES': '0', 'SKILLS':
    '0', 'XTERM TRUE COLORS': '0', 'PAY TO PLAY': '0', 'PAY FOR PERKS': '0', 'HIRING BUILDERS': '0', 'HIRING CODERS': '0',
    'DBSIZE': '0', 'EXITS': '0', 'EXTRA DESCRIPTIONS': '0', 'MUDPROGS': '0', 'MUDTRIGS': '0', 'RESETS': '0', 'ADULT MATERIAL':
    '0', 'MULTICLASSING': '0', 'NEWBIE FRIENDLY': '0', 'PLAYER CITIES': '0', 'PLAYER CLANS': '0', 'PLAYER CRAFTING': '0', 'PLAYER
    GUILDS': '0', 'EQUIPMENT SYSTEM': 'None', 'MULTIPLAYING': 'None', 'PLAYERKILLING': 'None', 'QUEST SYSTEM': 'None',
    'ROLEPLAYING': 'None', 'TRAINING SYSTEM': 'None', 'WORLD ORIGINALITY': 'All Original'}
DEBUG stream_writer.py:768 recv IAC WONT ZMP
DEBUG stream_writer.py:2148 handle_wont(ZMP)
DEBUG stream_writer.py:3330 remote_option[ZMP] = False
DEBUG stream_writer.py:3330 pending_option[DO + ZMP] = False
DEBUG stream_writer.py:762 begin sub-negotiation SB MCCP2_COMPRESS
DEBUG stream_writer.py:749 sub-negotiation cmd MCCP2_COMPRESS SE completion byte
DEBUG stream_writer.py:2187 [SB + MCCP2_COMPRESS] unsolicited
DEBUG stream_writer.py:3178 MCCP2 activated
DEBUG client_base.py:448 MCCP2 decompression started (server→client)
DEBUG stream_writer.py:762 begin sub-negotiation SB LINEMODE
DEBUG stream_writer.py:749 sub-negotiation cmd LINEMODE SE completion byte
DEBUG stream_writer.py:3330 pending_option[SB + LINEMODE] = False
DEBUG stream_writer.py:2649 recv IAC SB LINEMODE LINEMODE-MODE b'\x03' IAC SE
DEBUG stream_writer.py:1339 set Linemode <b'\x07': lit_echo:False, soft_tab:False, ack:True, trapsig:True, remote:False,
    local:True>
DEBUG stream_writer.py:1342 send IAC SB LINEMODE LINEMODE-MODE <b'\x07': lit_echo:False, soft_tab:False, ack:True, trapsig:True,
    remote:False, local:True> IAC SE
DEBUG stream_writer.py:762 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:749 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:3330 pending_option[SB + TTYPE] = False
DEBUG stream_writer.py:2353 recv TTYPE SEND: b''
DEBUG stream_writer.py:2365 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:762 begin sub-negotiation SB MSDP
DEBUG stream_writer.py:749 sub-negotiation cmd MSDP SE completion byte
DEBUG stream_writer.py:2187 [SB + MSDP] unsolicited
DEBUG stream_writer.py:1741 MSDP: {'client_options': {'ENCODING': 'utf-8', 'SCREENREADER': 'False', 'INPUTDEBUG': 'False', 'RAW':
    'False', 'NOCOLOR': 'False', 'LOCALECHO': 'False', 'NOGOAHEAD': 'True', 'SCREENWIDTH': '{0: 78}', 'SCREENHEIGHT': '{0: 45}',
    'ANSI': 'True', 'MCCP': 'True', 'MXP': 'True', 'AUTORESIZE': 'True'}}
DEBUG stream_writer.py:762 begin sub-negotiation SB GMCP
DEBUG stream_writer.py:749 sub-negotiation cmd GMCP SE completion byte
DEBUG stream_writer.py:2187 [SB + GMCP] unsolicited
DEBUG client.py:210 GMCP: Core.Supports.Get {'ENCODING': 'utf-8', 'SCREENREADER': False, 'INPUTDEBUG': False, 'RAW': False,
    'NOCOLOR': False, 'LOCALECHO': False, 'NOGOAHEAD': True, 'SCREENWIDTH': {'0': 78}, 'SCREENHEIGHT': {'0': 45}, 'ANSI': True,
    'MCCP': True, 'MXP': True, 'AUTORESIZE': True}
DEBUG client_base.py:496 negotiation complete after 0.33s.
DEBUG stream_writer.py:762 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:749 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2187 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2353 recv TTYPE SEND: b''
DEBUG stream_writer.py:2365 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:762 begin sub-negotiation SB TTYPE
DEBUG stream_writer.py:749 sub-negotiation cmd TTYPE SE completion byte
DEBUG stream_writer.py:2187 [SB + TTYPE] unsolicited
DEBUG stream_writer.py:2353 recv TTYPE SEND: b''
DEBUG stream_writer.py:2365 send IAC SB TTYPE IS b'xterm-256color' IAC SE
DEBUG stream_writer.py:3330 pending_option[DO + BINARY] = True
DEBUG stream_writer.py:1019 send IAC DO BINARY
DEBUG stream_writer.py:3330 pending_option[DO + ECHO] = True
DEBUG stream_writer.py:1019 send IAC DO ECHO
DEBUG stream_writer.py:3330 pending_option[DO + STATUS] = True
DEBUG stream_writer.py:1019 send IAC DO STATUS
DEBUG stream_writer.py:3330 pending_option[DO + CHARSET] = True
DEBUG stream_writer.py:1019 send IAC DO CHARSET
DEBUG stream_writer.py:3330 pending_option[DO + EOR] = True
DEBUG stream_writer.py:1019 send IAC DO EOR
DEBUG stream_writer.py:3330 pending_option[DO + COM_PORT_OPTION] = True
DEBUG stream_writer.py:1019 send IAC DO COM_PORT_OPTION
DEBUG stream_writer.py:768 recv IAC WONT BINARY
DEBUG stream_writer.py:2148 handle_wont(BINARY)
DEBUG stream_writer.py:3330 remote_option[BINARY] = False
DEBUG stream_writer.py:3330 pending_option[DO + BINARY] = False
DEBUG stream_writer.py:768 recv IAC WILL ECHO
DEBUG stream_writer.py:1994 handle_will(ECHO)
DEBUG stream_writer.py:993 skip DO ECHO; pending_option = True
DEBUG stream_writer.py:3330 remote_option[ECHO] = True
DEBUG stream_writer.py:3330 pending_option[DO + ECHO] = False
DEBUG stream_writer.py:768 recv IAC WONT STATUS
DEBUG stream_writer.py:2148 handle_wont(STATUS)
DEBUG stream_writer.py:3330 remote_option[STATUS] = False
DEBUG stream_writer.py:3330 pending_option[DO + STATUS] = False
DEBUG stream_writer.py:768 recv IAC WONT CHARSET
DEBUG stream_writer.py:2148 handle_wont(CHARSET)
DEBUG stream_writer.py:3330 remote_option[CHARSET] = False
DEBUG stream_writer.py:3330 pending_option[DO + CHARSET] = False
DEBUG stream_writer.py:768 recv IAC WONT EOR
DEBUG stream_writer.py:2148 handle_wont(EOR)
DEBUG stream_writer.py:3330 remote_option[EOR] = False
DEBUG stream_writer.py:3330 pending_option[DO + EOR] = False
DEBUG stream_writer.py:768 recv IAC WONT COM_PORT_OPTION
DEBUG stream_writer.py:2148 handle_wont(COM_PORT_OPTION)
DEBUG stream_writer.py:3330 remote_option[COM_PORT_OPTION] = False
DEBUG stream_writer.py:3330 pending_option[DO + COM_PORT_OPTION] = False
INFO fingerprinting.py:755 connection for server fingerprint 4f579dc442743eb8
INFO client_base.py:118 Connection closed to <Peer 3.132.134.107 4000>