[
  {
    "path": ".gitignore",
    "content": "#\n# Some common rules\n#\n.*\n*.o\n#*.a\n#*.s\n*.ko\n*.so\n*.so.dbg\n*.i\n*.lst\n*.symtypes\n*.gz\n*.bz2\n*.lzma\n*.xz\n*.lz4\n*.lzo\n*.patch\n\ncore\ncore.*\n\n#\n# Backup files\n#\n*.orig\n*~\n\\#*#\n\n#\n# python\n#\n*.pyc\n\n#\n# git files that we don't want to ignore even it they are dot-files\n#\n!.gitignore\n\n.pioenvs\n.piolibdeps\n.clang_complete\n.gcc-flags.json\n\n# Arduino 2\nbuild\n\n"
  },
  {
    "path": "LICENSE",
    "content": "BSD 3-Clause License\n\nCopyright (c) 2015, Marcelo Roberto Jimenez\n\nRedistribution and use in source and binary forms, with or without\nmodification, are permitted provided that the following conditions are met:\n\n1. Redistributions of source code must retain the above copyright notice, this\n   list of conditions and the following disclaimer.\n\n2. Redistributions in binary form must reproduce the above copyright notice,\n   this list of conditions and the following disclaimer in the documentation\n   and/or other materials provided with the distribution.\n\n3. Neither the name of the copyright holder nor the names of its\n   contributors may be used to endorse or promote products derived from\n   this software without specific prior written permission.\n\nTHIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\nAND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\nIMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE\nDISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE\nFOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL\nDAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR\nSERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER\nCAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,\nOR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\nOF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n"
  },
  {
    "path": "README.md",
    "content": "# The JTAG Library for Arduino\n\nThis library has four interesting things.\n\nFirst, it is a JTAG test access point (TAP) manipulation library. The code\ntries to be processor agnostic as much as possible, so that it can be used in\nthe future in other platforms. JTAG is a powerful interface, there are many\nthings that you can do besides programming devices. For example, you can do\nboundary scan tests, and even debug and take complete control of some hardware.\n\nSecond, it is a XSVF file player. That way, it is possible to program CPLDs and\nFPGAs through the JTAG port.\n\nThird, there is a XSVF disassembler written in python, so that you can learn\nwhat is happening in the XSVF file you are using to program your device.\n\nAnd finally, there is a XSVF assembler, also written in python, so that you can\nrecompile or write your own XSVF programs yourself in a maintainable and\ndocumented way, since the grammar supports comments.\n\nRemember that Arduino compatible devices are usually powered with 5 Volts,\nwhile most CPLDs and FPGAs will use a 3.3 Volts interface. In my original\nproject, I have used 3 voltage dividers for TCK, TMS and TDI. Each divider\nconsisted of one 330 Ohms resistor in series with a 180 Ohms resistor. One leg\nof the 330 Ohms resistor goes to the ground, one leg of the 180 Ohms resistor\ngoes to the Arduino. Where two legs meet, this is where you should connect your\nJTAG cable.\n\nThose seem to be a bit low values for a voltage divider, but consider the fact\nthat you will most likely have around 100 Ohms impedance in your JTAG\nhomemade cable, and higher resistor values will most likely create reflections\non your signals that will ruin the operation of the JTAG TAP.\n\nTDO and VREF can be tied straight to the arduino pins, but I suggest using a\n100 Ohms resistor on TDO, just to be sure to make reflections low. The big\nproblem here is not TDO itself, but the crosstalk that can happen between TDO\nand TCK in your target board. Trust me, I've been there.\n\nUsing VREF is important so that your Arduino knows your JTAG cable it is actually\nconnected to something. Also, VREF could be used to power buffers to convert\nthe Arduino signals to the right voltage level without the resistors I\nmentioned before.\n\nThe pin configuration I used was this:\n\n| Signal | Arduino pin |\n|:-------|:-----------:|\n| TMS    |  8 |\n| TDI    |  9 |\n| TDO    | 10 |\n| TCK    | 11 |\n| VREF   | 12 |\n\n## Before using this software\n\nYou will need:\n\n1. An Arduino compatible board, along with some way to program it (PC with USB\n   and Arduino IDE or some other hardware device).\n\n1. Python with the library pyserial installed.\n\n1. The proper connection, be it a cable or a few loose wire jumpers.\n\n1. A CPLD, FPGA or any other JTAG interface board to connect to. It is worth\n   mentioning that [Dangerous Prototypes](http://dangerousprototypes.com/)\n   has two very interesting CPLD boards. I have personally used a XC2C64A\n   breakout board. They also have a similar breakout board for the XC9572XL.\n\n## Installing the library\n\nThis software has been tested under the Arduino IDE version 1.6.5, but should\nwork fine with version 1.0. The library should be unpacked to the \"libraries\"\ndirectory inside your Arduino \"sketches\" directory.\n\n## Compiling\n\nOne quick suggestion: in order to get the most of the USB bandwidth, it is\npossible to increase the size of the receive buffer of the Arduino. I have also\nchanged the default compiler optimization level. I added a file called\n\"platform.local.txt\" to the folder \"~/arduino-1.6.5/hardware/arduino/avr\" that\nhad the following:\n\n```config\nname=Arduino 256S AVR Boards\nversion=1.6.7\n\n# AVR compile variables\n# ---------------------\n\n# This can be overridden in boards.txt\nbuild.extra_flags=\n\n# These can be overridden in platform.local.txt\ncompiler.c.extra_flags=-DSERIAL_BUFFER_SIZE=256 -DSERIAL_RX_BUFFER_SIZE=256 -O2\ncompiler.c.elf.extra_flags=\ncompiler.S.extra_flags=\ncompiler.cpp.extra_flags=-DSERIAL_BUFFER_SIZE=256 -DSERIAL_RX_BUFFER_SIZE=256 -O2\ncompiler.ar.extra_flags=\ncompiler.objcopy.eep.extra_flags=\ncompiler.elf2hex.extra_flags=\n```\n\nThe best information about the location of the file \"platform.local.txt\" I\nfound was [here](https://github.com/arduino/Arduino/wiki/Boards-Manager-FAQ).\n\nAnother suggestion: if speed is really an issue, instead of using\n\"JTAGPortArduino\", use \"JTAGPortAVR\". Take a look at PlayXSVFJTAVR.{cpp,h}.\nJTAGPortAVR uses the same pin configuration I have mentioned before, but since\nall the pins are on AVR's PORTB, all pins are written at once, so the JTAG port\ncode is more efficient.\n\n## Using it to play XSVF\n\n1. The example sketch \"JTAGTest\" has been used in all my tests. Upload it to\n   your Arduino board. Now you have a XSVF JTAG player.\n2. Inside the folder libraries/JTAG/extras/python, there is a python script\n   called xsvf. It has some command line parameters, but the default ones\n   should be ok. You can use it to send more than one file in a sequence to\n   your board. For example, suppose you are in a command prompt in the\n   libraries/JTAG folder. Then, the following command will send the following\n   four XSVF files to your Arduino board:\n\n```bash\n   ./extras/python/xsvf extras/xsvf/XC2C64A/{idcode.xsvf,blank_check.xsvf,erase.xsvf,VHDL-CPLDIntro3LEDinverse.xsvf}\n```\n\n   Help is available for the command line parameters:\n\n```bash\n   $ ./extras/python/xsvf --help\n   usage: xsvf [-h] [-c {upload,disasm}] [-v] [-p PORT] [-b BAUD]\n                     fileName [fileName ...]\n\n   XSVF file processor.\n\n   positional arguments:\n      fileName              XSVF file names. (type FileType('rb'))\n\n   optional arguments:\n      -h, --help            show this help message and exit\n      -c {upload,disasm}, --command {upload,disasm}\n                           command to execute. (default=upload)\n      -v, --version         show program's version number and exit\n      -p PORT, --port PORT  Serial port device name (default=/dev/ttyACM0)\n      -b BAUD, --baud BAUD  BAUD rate (type int, default=115200)\n\n   Parameters can be in a file, one per line, using @\"file name\"\n```\n\n1. In subfolders of the folder \"extras/xsvf\" you can find several XSVF files\n   that you can use to test your hardware. Notice that you MUST use a XSVF file\n   generated for your particular hardware. You can generate XSVF files with the\n   software \"impact\", which comes with the Xilinx bundle.\n2. A failure in the execution of \"blank_check.xsvf\" means that the CPLD is not\n   blank. The same file should be successful after the execution of\n   \"erase.xsvf\".\n\n## Interesting links\n\n1. [Generating an SVF, XSVF, or STAPL File with Impact](http://www.xilinx.com/support/documentation/sw_manuals/xilinx11/pp_p_process_generate_svf_file.htm)\n2. [Executing XSVF/SVF Files with Impact](http://www.xilinx.com/itp/xilinx10/isehelp/pim_p_executing_xsvf_svf.htm)\n3. [A JTAG/XSVF Library for Arduino](http://eeandcs.blogspot.com.br/2015/08/jtagxsvf-library-for-arduino.html)\n4. [A XSVF Assembler/Disassembler in python](http://eeandcs.blogspot.com.br/2015/09/a-xsvf-assemblerdisassembler-in-python.html)\n5. [SVF on Wikipedia](https://en.wikipedia.org/wiki/Serial_Vector_Format)\n6. [JTAG on Wikipedia](https://en.wikipedia.org/wiki/Joint_Test_Action_Group)\n7. [fpga4fun](http://www.fpga4fun.com/JTAG.html)\n8. [Rohit Dureja's JTAG Simplified](https://rohitdureja.wordpress.com/category/cpldfpga/)\n9. [Nice JTAG TAP Controller State Diagram in SVF](https://de.wikipedia.org/wiki/Datei:JTAG_TAP_Controller_State_Diagram.svg)\n10. YouTube video: [Como programar CPLD Xilinx con Arduino](https://youtu.be/x5eW9H1GoeA)\n\n## Credits\n\nI have used Xilinx [XAPP503 - SVF and XSVF File Formats for Xilinx Devices](http://www.xilinx.com/support/documentation/application_notes/xapp503.pdf),\nappendix B as the reference for XSVF.\n\nThis software is actually a major rewrite of code and ideas inspired on many\nother projects. As far as I could trace it:\n\n1. [Mike Tsao's JTAGWhisperer](https://github.com/sowbug/JTAGWhisperer/).\n\n1. [Ben's XSVF-Player](https://github.com/ben0109/XSVF-Player/).\n\n1. [Clifford Wolf's libxsvf](http://www.clifford.at/libxsvf/). Definitely worth taking a look.\n\n1. [Karl Hans Janke's jtagbang](http://www.khjk.org/log/2013/aug/jtagbang.html).\n\n## About me\n\n[My blog is here](http://eeandcs.blogspot.com.br/).\n\nYou may contact me on github.\n"
  },
  {
    "path": "examples/JTAGTest/JTAGTest.ino",
    "content": "#include <JTAG.h>\n\n//\n// The maximum size of the arduino receive buffer is 63 bytes by default.\n// This number can be changed if you change the compiler flags in the\n// file hardware/arduino/avr/platform.local.txt (-O2 makes it faster):\n//\n// compiler.c.extra_flags=-DSERIAL_BUFFER_SIZE=256 -DSERIAL_RX_BUFFER_SIZE=256\n// -O2 compiler.cpp.extra_flags=-DSERIAL_BUFFER_SIZE=256\n// -DSERIAL_RX_BUFFER_SIZE=256 -O2\n//\n\n#ifndef SERIAL_RX_BUFFER_SIZE\n#define SERIAL_RX_BUFFER_SIZE 64\n#endif /* SERIAL_RX_BUFFER_SIZE */\n\nvoid setup()\n{\n\tSerial.begin(115200);\n\t// Serial.begin(230400);\n\twhile (!Serial) {\n\t\t; // wait for serial port to connect. Needed for Leonardo only\n\t}\n\t// printAvailableRAM(Serial);\n}\n\nvoid loop()\n{\n\t// PlayXSVFJTAGArduino p(Serial, SERIAL_RX_BUFFER_SIZE, 2, 12, 5, 4, 0,\n\t// true);\n\tPlayXSVFJTAGArduino p(Serial, SERIAL_RX_BUFFER_SIZE, 8, 9, 10, 11, 12);\n\t// PlayXSVFJTAGAVR p(Serial, SERIAL_RX_BUFFER_SIZE);\n\t// p.printAvailableRAM();\n\t//  Currently, the PlayXSVFJTAGArduino object consumes 1042 bytes of RAM\n\tp.play();\n}\n"
  },
  {
    "path": "extras/python/JTAGTAP.py",
    "content": "#! /usr/bin/python3\n# coding: utf-8\n\nclass JTAGTAP(object):\n    \"\"\"\n\n    \"\"\"\n\n    # JTAG TAP states\n    TEST_LOGIC_RESET = 0\n    RUN_TEST_IDLE = 1\n    SELECT_DR_SCAN = 2\n    CAPTURE_DR = 3\n    SHIFT_DR = 4\n    EXIT1_DR = 5\n    PAUSE_DR = 6\n    EXIT2_DR = 7\n    UPDATE_DR = 8\n    SELECT_IR_SCAN = 9\n    CAPTURE_IR = 10\n    SHIFT_IR = 11\n    EXIT1_IR = 12\n    PAUSE_IR = 13\n    EXIT2_IR = 14\n    UPDATE_IR = 15\n\n    _NAME = 0\n    _state_data = (\n        ('TEST_LOGIC_RESET',),\n        ('RUN_TEST_IDLE',),\n        ('SELECT_DR_SCAN',),\n        ('CAPTURE_DR',),\n        ('SHIFT_DR',),\n        ('EXIT1_DR',),\n        ('PAUSE_DR',),\n        ('EXIT2_DR',),\n        ('UPDATE_DR',),\n        ('SELECT_IR_SCAN',),\n        ('CAPTURE_IR',),\n        ('SHIFT_IR',),\n        ('EXIT1_IR',),\n        ('PAUSE_IR',),\n        ('EXIT2_IR',),\n        ('UPDATE_IR',),\n    )\n\n    @staticmethod\n    def state_name(n):\n        return JTAGTAP._state_data[n][JTAGTAP._NAME]\n"
  },
  {
    "path": "extras/python/Uploader.py",
    "content": "#! /usr/bin/python3\n# coding: utf-8\n\nimport os\nimport string\nimport sys\nimport time\n\ntry:\n    import serial\nexcept ImportError:\n    print(\"Error importing pyserial. Please check if it is installed.\")\n    sys.exit(1)\n\n\nclass Uploader(object):\n    \"\"\"Uploads a XSVF file to the arduino board.\"\"\"\n\n    # Create a translation array of printable characters\n    _translate_str_1 = \"\".join(\n        [(chr(x) in string.printable) and chr(x) or \".\" for x in range(256)]\n    )\n    _translate_str = bytes(_translate_str_1, \"ascii\")\n\n    @staticmethod\n    def add_arguments(p):\n        \"\"\"Adds the necessary arguments to the parser.\"\"\"\n        p.add_argument(\n            \"-p\",\n            \"--port\",\n            default=\"/dev/ttyACM0\",\n            help=\"Serial port device name\" \" (default=%(default)s)\",\n        )\n        p.add_argument(\n            \"-b\",\n            \"--baud\",\n            default=115200,\n            type=int,\n            help=\"BAUD rate\" \" (type %(type)s, default=%(default)s)\",\n        )\n\n    def __init__(self, args):\n        self._args = args\n        self._serial = serial.Serial(port=args.port, baudrate=args.baud)\n        # Help printing new lines\n        self._need_lf = False\n        #\n        self._file_size = 0\n        # Hashes\n        self._sum = 0\n        # To compute the elapsed time\n        self._start_time = 0\n        # Error code\n        self._error_code = 0\n\n    @property\n    def error_code(self):\n        return self._error_code\n\n    @error_code.setter\n    def error_code(self, value):\n        self._error_code = value\n\n    def reset_arduino(self):\n        \"\"\"Resets the arduino and clear any garbage on the serial port.\"\"\"\n        self._serial.setDTR(False)\n        time.sleep(1)\n        self._serial.flushInput()\n        self._serial.flushOutput()\n        self._serial.setDTR(True)\n        self._start_time = 0\n\n    def print_lf(self):\n        if self._need_lf:\n            self._need_lf = False\n            print\n\n    def initialize_hashes(self):\n        self._sum = 0\n\n    def update_hashes(self, s):\n        for c in s:\n            self._sum += c\n\n    def print_hashes(self):\n        cksum = (-self._sum) & 0xFF\n        if self._args.debug > 1:\n            print(\"  Expected checksum:  0x%02X/%lu.\" % (cksum, self._file_size))\n            print(\"  Expected sum: 0x%08lX/%lu.\" % (self._sum, self._file_size))\n        if self._start_time > 0:\n            print(\"Elapsed time: %.02f seconds.\" % (time.time() - self._start_time))\n\n    def upload_one_file(self, fd):\n        self.reset_arduino()\n        self._file_size = os.fstat(fd.fileno()).st_size\n        bytes_written = 0\n        while True:\n            line = self._serial.readline().strip()\n            if not line:\n                continue\n            command = chr(line[0])\n            argument = line[1:].decode(\"ascii\")\n            if command == \"S\":\n                num_bytes = int(argument)\n                xsvf_data = fd.read(num_bytes)\n                bytes_written += len(xsvf_data)\n                self.update_hashes(xsvf_data)\n                xsvf_data += b\"\\xFF\" * (num_bytes - len(xsvf_data))\n                self._serial.write(xsvf_data)\n                if self._args.debug > 1:\n                    print(\n                        \"\\rSent: %8d bytes, %8d remaining\"\n                        % (bytes_written, self._file_size - bytes_written),\n                        end=\"\",\n                    )\n                    sys.stdout.flush()\n                    self._need_lf = True\n            elif command == \"R\":\n                self.initialize_hashes()\n                if self._args.debug > 1:\n                    print(\"File: %s\" % os.path.realpath(fd.name))\n                    print(\"Ready to send %d bytes.\" % self._file_size)\n                self._start_time = time.time()\n            elif command == \"Q\":\n                self.print_lf()\n                # Split the argument. The first field is the error code,\n                # the next field is the error message.\n                args = argument.split(\",\")\n                self.error_code = int(args[0])\n                if self._args.debug > 1:\n                    print(\"Quit: {1:s} ({0:d}).\".format(self.error_code, args[1]))\n                self.print_hashes()\n                return self.error_code == 0\n            elif command == \"D\":\n                if self._args.debug > 0:\n                    self.print_lf()\n                    print(\"Device:\", argument)\n            elif command == \"!\":\n                if self._args.debug > 0:\n                    self.print_lf()\n                    print(\"IMPORTANT:\", argument)\n            else:\n                self.print_lf()\n                print(\"Unrecognized line:\", line.translate(Uploader._translate_str))\n\n    def upload_all_files(self, fd_list):\n        ok = True\n        for fd in fd_list:\n            with fd:\n                ok = self.upload_one_file(fd)\n                if not ok:\n                    break\n        return ok\n"
  },
  {
    "path": "extras/python/XSVFAssembler.py",
    "content": "# !/usr/bin/python3\n# coding: utf-8\n\n#\n# example:\n# $ ./XSVFAssembler.py > test.xsvf\n# $ ./xsvf -c disasm -n test.xsvf > test.xsvf.s\n# $ ./xsvf -c asm ../xsvf/XC2C64A/idcode_simpler.xsvf.s\n# $\n\nimport XSVFParser\nimport sys\n\n\nclass XSVFAssembler(object):\n    \"\"\"\n    Assembler\n    \"\"\"\n    OPCODE = 0\n    HANDLER = 1\n\n    def __init__(self, args):\n        self._args = args\n        self._instruction_info = {\n            'XCOMPLETE': (0, self.asm_xcomplete),\n            'XTDOMASK': (1, self.asm_xtdomask),\n            'XSIR': (2, self.asm_xsir),\n            'XSDR': (3, self.asm_xsdr),\n            'XRUNTEST': (4, self.asm_xruntest),\n            'XRESERVED_5': (5, self.asm_xreserved_5),\n            'XRESERVED_6': (6, self.asm_xreserved_6),\n            'XREPEAT': (7, self.asm_xrepeat),\n            'XSDRSIZE': (8, self.asm_xsdrsize),\n            'XSDRTDO': (9, self.asm_xsdrtdo),\n            'XSETSDRMASKS': (10, self.asm_xsetsdrmasks),\n            'XSDRINC': (11, self.asm_xsdrinc),\n            'XSDRB': (12, self.asm_xsdrb),\n            'XSDRC': (13, self.asm_xsdrc),\n            'XSDRE': (14, self.asm_xsdre),\n            'XSDRTDOB': (15, self.asm_xsdrtdob),\n            'XSDRTDOC': (16, self.asm_xsdrtdoc),\n            'XSDRTDOE': (17, self.asm_xsdrtdoe),\n            'XSTATE': (18, self.asm_xstate),\n            'XENDIR': (19, self.asm_xendir),\n            'XENDDR': (20, self.asm_xenddr),\n            'XSIR2': (21, self.asm_xsir2),\n            'XCOMMENT': (22, self.asm_xcomment),\n            'XWAIT': (23, self.asm_xwait)\n        }\n        self._state_info = {\n            'TEST_LOGIC_RESET': 0,\n            'RUN_TEST_IDLE': 1,\n            'SELECT_DR_SCAN': 2,\n            'CAPTURE_DR': 3,\n            'SHIFT_DR': 4,\n            'EXIT1_DR': 5,\n            'PAUSE_DR': 6,\n            'EXIT2_DR': 7,\n            'UPDATE_DR': 8,\n            'SELECT_IR_SCAN': 9,\n            'CAPTURE_IR': 10,\n            'SHIFT_IR': 11,\n            'EXIT1_IR': 12,\n            'PAUSE_IR': 13,\n            'EXIT2_IR': 14,\n            'UPDATE_IR': 15\n        }\n        self._arguments = []\n\n    def asm_byte_sequence(self, l):\n        for c in l:\n            if len(c) == 2:\n                b = int(c, base=16)\n            else:  # len(c) == 8:\n                b = int(c, base=2)\n            sys.stdout.write(chr(b))\n\n    def asm_integer(self, s, n):\n        # Deal with '0x' prefixed integers\n        if len(s) > 2 and s[0] == '0' and (s[1] == 'x' or s[1] == 'X'):\n            i = int(s[2:], base=16)\n        else:\n            i = int(s)\n        ret = i\n        # Build a list of bytes\n        l = []\n        n1 = n\n        while n1:\n            j = i % 256\n            l.append(j)\n            i >>= 8\n            n1 -= 1\n        # Output the list reversed (Big Endian)\n        n1 = n\n        while n1:\n            j = l.pop()\n            sys.stdout.write(chr(j))\n            n1 -= 1\n        return ret\n\n    def asm_state(self, state):\n        i = self._state_info[state]\n        sys.stdout.write(chr(i))\n\n    def asm_xcomplete(self):\n        pass\n\n    def asm_xtdomask(self):\n        self.asm_byte_sequence(self._arguments[0])\n\n    def asm_xsir(self):\n        self.asm_integer(self._arguments[0], 1)\n        self.asm_byte_sequence(self._arguments[1])\n\n    def asm_xsdr(self):\n        self.asm_byte_sequence(self._arguments[0])\n\n    def asm_xruntest(self):\n        self.asm_integer(self._arguments[0], 4)\n\n    def asm_xreserved_5(self):\n        pass\n\n    def asm_xreserved_6(self):\n        pass\n\n    def asm_xrepeat(self):\n        self.asm_integer(self._arguments[0], 1)\n\n    def asm_xsdrsize(self):\n        self.asm_integer(self._arguments[0], 4)\n\n    def asm_xsdrtdo(self):\n        self.asm_byte_sequence(self._arguments[0])\n        self.asm_byte_sequence(self._arguments[1])\n\n    def asm_xsetsdrmasks(self):\n        self.asm_byte_sequence(self._arguments[0])\n        self.asm_byte_sequence(self._arguments[1])\n\n    def asm_xsdrinc(self):\n        self.asm_byte_sequence(self._arguments[0])\n        n = self.asm_integer(self._arguments[1], 1)\n        j = n\n        while j:\n            i = n - j\n            self.asm_byte_sequence(self._arguments[i+2])\n            j -= 1\n\n    def asm_xsdrb(self):\n        self.asm_byte_sequence(self._arguments[0])\n\n    def asm_xsdrc(self):\n        self.asm_byte_sequence(self._arguments[0])\n\n    def asm_xsdre(self):\n        self.asm_byte_sequence(self._arguments[0])\n\n    def asm_xsdrtdob(self):\n        self.asm_byte_sequence(self._arguments[0])\n        self.asm_byte_sequence(self._arguments[1])\n\n    def asm_xsdrtdoc(self):\n        self.asm_byte_sequence(self._arguments[0])\n        self.asm_byte_sequence(self._arguments[1])\n\n    def asm_xsdrtdoe(self):\n        self.asm_byte_sequence(self._arguments[0])\n        self.asm_byte_sequence(self._arguments[1])\n\n    def asm_xstate(self):\n        state = str(self._state_info[self._arguments[0]])\n        self.asm_integer(state, 1)\n\n    def asm_xendir(self):\n        state = self._arguments[0]\n        self.asm_integer('0' if state == 'RUN_TEST_IDLE' else '1', 1)\n\n    def asm_xenddr(self):\n        state = self._arguments[0]\n        self.asm_integer('0' if state == 'RUN_TEST_IDLE' else '1', 1)\n\n    def asm_xsir2(self):\n        self.asm_integer(self._arguments[0], 2)\n        self.asm_byte_sequence(self._arguments[1])\n\n    def asm_xcomment(self):\n        sys.stdout.write(self._arguments[0])\n        sys.stdout.write(chr(0))\n\n    def asm_xwait(self):\n        self.asm_state(self._arguments[0])\n        self.asm_state(self._arguments[1])\n        self.asm_integer(self._arguments[2], 4)\n\n    def assemble_tree(self, tree):\n        for l in tree:\n            instruction = l[0]\n            info = self._instruction_info[instruction]\n            opcode = info[self.OPCODE]\n            asm_funcion = info[self.HANDLER]\n            self._arguments = l[1:]\n            sys.stdout.write(chr(opcode))\n            asm_funcion()\n        return True\n\n    def assemble_one_file(self, fd):\n        tree = XSVFParser.xsvf_parser.parseFile(fd, parseAll=True)\n        return self.assemble_tree(tree)\n\n    def assemble_all_files(self, fd_list):\n        ok = True\n        for fd in fd_list:\n            with fd:\n                ok = self.assemble_one_file(fd)\n                if not ok:\n                    break\n        return ok\n\n\ndef main():\n    a = XSVFAssembler(None)\n    tree = XSVFParser.xsvf_parser.parseString(\n        XSVFParser.xsvf_example, parseAll=True)\n    a.assemble_tree(tree)\n    sys.exit(0)\n\nif __name__ == '__main__':\n    main()\n"
  },
  {
    "path": "extras/python/XSVFDecoder.py",
    "content": "#! /usr/bin/python3\n# coding: utf-8\n\nimport JTAGTAP\n\n\nclass XSVFDecoder(object):\n    \"\"\"\n    Decoder\n    \"\"\"\n\n    # Instruction op codes\n    XCOMPLETE = 0\n    XTDOMASK = 1\n    XSIR = 2\n    XSDR = 3\n    XRUNTEST = 4\n    XRESERVED_5 = 5\n    XRESERVED_6 = 6\n    XREPEAT = 7\n    XSDRSIZE = 8\n    XSDRTDO = 9\n    XSETSDRMASKS = 10\n    XSDRINC = 11\n    XSDRB = 12\n    XSDRC = 13\n    XSDRE = 14\n    XSDRTDOB = 15\n    XSDRTDOC = 16\n    XSDRTDOE = 17\n    XSTATE = 18\n    XENDIR = 19\n    XENDDR = 20\n    XSIR2 = 21\n    XCOMMENT = 22\n    XWAIT = 23\n\n    @staticmethod\n    def num_bytes(n):\n        return (n + 7) >> 3\n\n    def __init__(self, args):\n        self._args = args\n        self._error_code = 0\n        self._iter_file = None\n        #\n        self._next_state = 0\n        self._sirsize_bits = 0\n        self._sirsize_bytes = 0\n        self._sdrsize_bits = 0\n        self._sdrsize_bytes = 0\n        self._length2_bits = 0\n        self._length2_bytes = 0\n        self._repeat = 0\n        self._runtest = 0\n        self._endir_state = 0\n        self._enddr_state = 0\n        self._wait_start_state = 0\n        self._wait_end_state = 0\n        self._wait_time_usecs = 0\n        self._xcomplete = 0\n\n        #\n        # uint32_t S_MAX_CHAIN_SIZE_BYTES = 40;\n        # uint32_t S_MAX_CHAIN_SIZE_BITS = S_MAX_CHAIN_SIZE_BYTES * 8;\n        self._tdi = []\n        self._tdo = []\n        self._tdo_mask = []\n        self._tdo_expected = []\n        self._address_mask = []\n        self._data_mask = []\n        self._xsdrinc_start_address = []\n        self._xsdrinc_num_times = 0\n        self._xsdrinc_data_list = []\n        self._comment = \"\"\n        self._instruction_counter = 0\n        self._current_instruction_string = \"\"\n\n    @property\n    def error_code(self):\n        return self._error_code\n\n    @error_code.setter\n    def error_code(self, value):\n        self._error_code = value\n\n    @property\n    def next_state(self):\n        \"\"\"The next state to go to.\"\"\"\n        return self._next_state\n\n    @next_state.setter\n    def next_state(self, value):\n        self._next_state = value\n\n    @property\n    def sirsize_bits(self):\n        \"\"\"The number of bits of the next SIR instruction.\"\"\"\n        return self._sirsize_bits\n\n    @sirsize_bits.setter\n    def sirsize_bits(self, value):\n        self._sirsize_bits = value\n        self._sirsize_bytes = XSVFDecoder.num_bytes(value)\n\n    @property\n    def sirsize_bytes(self):\n        return self._sirsize_bytes\n\n    @property\n    def sdrsize_bits(self):\n        \"\"\"The number of bits of the next XSDR instruction.\"\"\"\n        return self._sdrsize_bits\n\n    @sdrsize_bits.setter\n    def sdrsize_bits(self, value):\n        self._sdrsize_bits = value\n        self._sdrsize_bytes = XSVFDecoder.num_bytes(value)\n\n    @property\n    def sdrsize_bytes(self):\n        return self._sdrsize_bytes\n\n    @property\n    def length2_bits(self):\n        \"\"\"The number of bits of the length2 parameter.\"\"\"\n        return self._length2_bits\n\n    @length2_bits.setter\n    def length2_bits(self, value):\n        self._length2_bits = value\n        self._length2_bytes = XSVFDecoder.num_bytes(value)\n\n    @property\n    def length2_bytes(self):\n        return self._length2_bytes\n\n    @property\n    def repeat(self):\n        \"\"\"The number of repetitions of the XREPEAT instruction.\"\"\"\n        return self._repeat\n\n    @repeat.setter\n    def repeat(self, value):\n        self._repeat = value\n\n    @property\n    def runtest(self):\n        \"\"\"The number of repetitions of the XRUNTEST instruction.\"\"\"\n        return self._runtest\n\n    @runtest.setter\n    def runtest(self, value):\n        self._runtest = value\n\n    @property\n    def endir_state(self):\n        \"\"\"Final state of XENDIR instruction.\"\"\"\n        return self._endir_state\n\n    @endir_state.setter\n    def endir_state(self, value):\n        self._endir_state = value\n\n    @property\n    def enddr_state(self):\n        \"\"\"Final state of XENDDR instruction.\"\"\"\n        return self._enddr_state\n\n    @enddr_state.setter\n    def enddr_state(self, value):\n        self._enddr_state = value\n\n    @property\n    def wait_start_state(self):\n        \"\"\"Start state of XWAIT instruction.\"\"\"\n        return self._wait_start_state\n\n    @wait_start_state.setter\n    def wait_start_state(self, value):\n        self._wait_start_state = value\n\n    @property\n    def wait_end_state(self):\n        \"\"\"End state of XWAIT instruction.\"\"\"\n        return self._wait_end_state\n\n    @wait_end_state.setter\n    def wait_end_state(self, value):\n        self._wait_end_state = value\n\n    @property\n    def wait_time_usecs(self):\n        \"\"\"Duration of the XWAIT instruction in microseconds.\"\"\"\n        return self._wait_time_usecs\n\n    @wait_time_usecs.setter\n    def wait_time_usecs(self, value):\n        self._wait_time_usecs = value\n\n    @property\n    def xcomplete(self):\n        \"\"\"True if the XCOMPLETE instruction been executed.\"\"\"\n        return self._xcomplete\n\n    @xcomplete.setter\n    def xcomplete(self, value):\n        self._xcomplete = value\n\n    @property\n    def tdi(self):\n        \"\"\"The TDI sequence to be written\"\"\"\n        return self._tdi\n\n    @tdi.setter\n    def tdi(self, value):\n        self._tdi = value\n\n    @tdi.deleter\n    def tdi(self):\n        del self._tdi\n\n    @property\n    def tdo(self):\n        \"\"\"The TDO sequence to be read\"\"\"\n        return self._tdo\n\n    @tdo.setter\n    def tdo(self, value):\n        self._tdo = value\n\n    @tdo.deleter\n    def tdo(self):\n        del self._tdo\n\n    @property\n    def tdo_mask(self):\n        \"\"\"The TDO sequence mask\"\"\"\n        return self._tdo_mask\n\n    @tdo_mask.setter\n    def tdo_mask(self, value):\n        self._tdo_mask = value\n\n    @tdo_mask.deleter\n    def tdo_mask(self):\n        del self._tdo_mask\n\n    @property\n    def tdo_expected(self):\n        \"\"\"The TDO sequence to be read\"\"\"\n        return self._tdo_expected\n\n    @tdo_expected.setter\n    def tdo_expected(self, value):\n        self._tdo_expected = value\n\n    @tdo_expected.deleter\n    def tdo_expected(self):\n        del self._tdo_expected\n\n    @property\n    def address_mask(self):\n        \"\"\"The XSETSDRMASKS address mask\"\"\"\n        return self._address_mask\n\n    @address_mask.setter\n    def address_mask(self, value):\n        self._address_mask = value\n\n    @address_mask.deleter\n    def address_mask(self):\n        del self._address_mask\n\n    @property\n    def data_mask(self):\n        \"\"\"The XSETSDRMASKS data mask\"\"\"\n        return self._data_mask\n\n    @data_mask.setter\n    def data_mask(self, value):\n        self._data_mask = value\n\n    @data_mask.deleter\n    def data_mask(self):\n        del self._data_mask\n\n    @property\n    def xsdrinc_start_address(self):\n        \"\"\"XSDRINC start address\"\"\"\n        return self._xsdrinc_start_address\n\n    @xsdrinc_start_address.setter\n    def xsdrinc_start_address(self, value):\n        self._xsdrinc_start_address = value\n\n    @xsdrinc_start_address.deleter\n    def xsdrinc_start_address(self):\n        del self._xsdrinc_start_address\n\n    @property\n    def xsdrinc_num_times(self):\n        \"\"\"The length of the XSDRINC data list\"\"\"\n        return self._xsdrinc_num_times\n\n    @xsdrinc_num_times.setter\n    def xsdrinc_num_times(self, value):\n        self._xsdrinc_num_times = value\n\n    @xsdrinc_num_times.deleter\n    def xsdrinc_num_times(self):\n        del self._xsdrinc_num_times\n\n    @property\n    def xsdrinc_data_list(self):\n        return self._xsdrinc_data_list\n\n    @xsdrinc_data_list.setter\n    def xsdrinc_data_list(self, value):\n        self._xsdrinc_data_list = value\n\n    @xsdrinc_data_list.deleter\n    def xsdrinc_data_list(self):\n        del self._xsdrinc_data_list\n\n    @property\n    def comment(self):\n        \"\"\"The last XCOMMENT read\"\"\"\n        return self._comment\n\n    @comment.setter\n    def comment(self, value):\n        self._comment = value\n\n    @comment.deleter\n    def comment(self):\n        del self._comment\n\n    @property\n    def instruction_counter(self):\n        \"\"\"The number of instructions processed.\"\"\"\n        return self._instruction_counter\n\n    @instruction_counter.setter\n    def instruction_counter(self, value):\n        self._instruction_counter = value\n\n    @property\n    def current_instruction_string(self):\n        \"\"\"A string containing the bytes of the current instruction\"\"\"\n        return self._current_instruction_string\n\n    @current_instruction_string.setter\n    def current_instruction_string(self, value):\n        self._current_instruction_string = value\n\n    @current_instruction_string.deleter\n    def current_instruction_string(self):\n        del self._current_instruction_string\n\n    #\n    # Decoders\n    #\n\n    def decode_xcomplete(self):\n        self._xcomplete = True\n        return True\n\n    def decode_xtdomask(self):\n        self.tdo_mask = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xsir(self):\n        self.sirsize_bits = self.get_next_byte()\n        self.tdi = self.get_next_bytes(self.sirsize_bytes)\n        return True\n\n    def decode_xsdr(self):\n        self.tdi = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xruntest(self):\n        self.runtest = self.get_next_long()\n        return True\n\n    def decode_xreserved_5(self):\n        return True\n\n    def decode_xreserved_6(self):\n        return True\n\n    def decode_xrepeat(self):\n        self.repeat = self.get_next_byte()\n        return True\n\n    def decode_xsdrsize(self):\n        self.sdrsize_bits = self.get_next_long()\n        return True\n\n    def decode_xsdrtdo(self):\n        self.tdi = self.get_next_bytes(self.sdrsize_bytes)\n        self.tdo_expected = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xsetsdrmasks(self):\n        self.address_mask = self.get_next_bytes(self.sdrsize_bytes)\n        self.data_mask = self.get_next_bytes(self.sdrsize_bytes)\n        # Count the number of bits '1' in data_mask\n        n = 0\n        for j in range(self.sdrsize_bytes):\n            b = self.data_mask[j]\n            for k in range(8):\n                if b & 1:\n                    n += 1\n                b >>= 1\n        self.length2_bits = n\n        return True\n\n    def decode_xsdrinc(self):\n        self.xsdrinc_start_address = self.get_next_bytes(self.sdrsize_bytes)\n        self.xsdrinc_num_times = self.get_next_byte()\n        n = self.xsdrinc_num_times\n        self.xsdrinc_data_list = []\n        while n:\n            self.xsdrinc_data_list.append(\n                self.get_next_bytes(self.length2_bytes))\n            n -= 1\n        return True\n\n    def decode_xsdrb(self):\n        self.tdi = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xsdrc(self):\n        self.tdi = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xsdre(self):\n        self.tdi = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xsdrtdob(self):\n        self.tdi = self.get_next_bytes(self.sdrsize_bytes)\n        self.tdo_expected = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xsdrtdoc(self):\n        self.tdi = self.get_next_bytes(self.sdrsize_bytes)\n        self.tdo_expected = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xsdrtdoe(self):\n        self.tdi = self.get_next_bytes(self.sdrsize_bytes)\n        self.tdo_expected = self.get_next_bytes(self.sdrsize_bytes)\n        return True\n\n    def decode_xstate(self):\n        self.next_state = self.get_next_byte()\n        return True\n\n    def decode_xendir(self):\n        ret = True\n        s = self.get_next_byte()\n        if s == 0:\n            self.endir_state = JTAGTAP.JTAGTAP.RUN_TEST_IDLE\n        elif s == 1:\n            self.endir_state = JTAGTAP.JTAGTAP.PAUSE_IR\n        else:\n            self.error_code = -2\n            ret = False\n            print(\"Invalid XENDIR parameter %d\" % s)\n        return ret\n\n    def decode_xenddr(self):\n        ret = True\n        s = self.get_next_byte()\n        if s == 0:\n            self.enddr_state = JTAGTAP.JTAGTAP.RUN_TEST_IDLE\n        elif s == 1:\n            self.enddr_state = JTAGTAP.JTAGTAP.PAUSE_DR\n        else:\n            self.error_code = -3\n            ret = False\n            print(\"Invalid XENDDR parameter %d\" % s)\n        return ret\n\n    def decode_xsir2(self):\n        self.sirsize_bits = self.get_next_word()\n        self.tdi = self.get_next_bytes(self.sirsize_bytes)\n        return True\n\n    def decode_xcomment(self):\n        while True:\n            c = self.get_next_byte()\n            if not c:\n                break\n            self.comment += chr(c)\n        return True\n\n    def decode_xwait(self):\n        self.wait_start_state = self.get_next_byte()\n        self.wait_end_state = self.get_next_byte()\n        self.wait_time_usecs = self.get_next_long()\n        return True\n\n    #\n    _NAME = 0\n    _DECODER = 1\n    _instruction_data = (\n        ('XCOMPLETE',    decode_xcomplete),\n        ('XTDOMASK',     decode_xtdomask),\n        ('XSIR',         decode_xsir),\n        ('XSDR',         decode_xsdr),\n        ('XRUNTEST',     decode_xruntest),\n        ('XRESERVED_5',  decode_xreserved_5),\n        ('XRESERVED_6',  decode_xreserved_6),\n        ('XREPEAT',      decode_xrepeat),\n        ('XSDRSIZE',     decode_xsdrsize),\n        ('XSDRTDO',      decode_xsdrtdo),\n        ('XSETSDRMASKS', decode_xsetsdrmasks),\n        ('XSDRINC',      decode_xsdrinc),\n        ('XSDRB',        decode_xsdrb),\n        ('XSDRC',        decode_xsdrc),\n        ('XSDRE',        decode_xsdre),\n        ('XSDRTDOB',     decode_xsdrtdob),\n        ('XSDRTDOC',     decode_xsdrtdoc),\n        ('XSDRTDOE',     decode_xsdrtdoe),\n        ('XSTATE',       decode_xstate),\n        ('XENDIR',       decode_xendir),\n        ('XENDDR',       decode_xenddr),\n        ('XSIR2',        decode_xsir2),\n        ('XCOMMENT',     decode_xcomment),\n        ('XWAIT',        decode_xwait),\n    )\n\n    @staticmethod\n    def instruction_name(instruction):\n        return XSVFDecoder._instruction_data[instruction][XSVFDecoder._NAME]\n\n    def instruction_decoder(self, instruction):\n        return self._instruction_data[instruction][XSVFDecoder._DECODER](self)\n\n    def instruction_handler(self, instruction):\n        pass\n\n    @staticmethod\n    def bytes_from_file(fd, chunksize=8192):\n        with fd:\n            while True:\n                chunk = fd.read(chunksize)\n                if chunk:\n                    for b in chunk:\n                        yield b\n                else:\n                    break\n\n    def private_next_byte(self):\n        # return next(self._iter_file)\n        # return XSVFDecoder.bytes_from_file(self._current_file)\n        b = ord(self._current_file.read(1))\n        self.current_instruction_string += '{0:02X} '.format(b)\n        return b\n\n    def get_next_byte(self):\n        n = self.private_next_byte()\n        return n\n\n    def get_next_word(self):\n        n = self.private_next_byte() << 8\n        n |= self.private_next_byte()\n        return n\n\n    def get_next_long(self):\n        n = self.private_next_byte() << 24\n        n |= self.private_next_byte() << 16\n        n |= self.private_next_byte() << 8\n        n |= self.private_next_byte()\n        return n\n\n    def get_next_bytes(self, n):\n        s = []\n        while n:\n            s.append(self.private_next_byte())\n            n -= 1\n        return s\n\n    def decode_one_file(self, fd):\n        self._xcomplete = False\n        self._instruction_counter = 0\n        self._iter_file = iter(fd)\n        self._current_file = fd\n        while not self._xcomplete:\n            self.current_instruction_string = \"\"\n            instruction = self.get_next_byte()\n            if instruction > self.XWAIT:\n                print(\"Invalid instruction: 0x%02x\" % instruction)\n                return False\n            ok = self.instruction_decoder(instruction)\n            if ok:\n                self.instruction_handler(instruction)\n        return True\n\n    def decode_all_files(self, fd_list):\n        ok = True\n        for fd in fd_list:\n            with fd:\n                ok = self.decode_one_file(fd)\n                if not ok:\n                    break\n        return ok\n"
  },
  {
    "path": "extras/python/XSVFDisassembler.py",
    "content": "#! /usr/bin/python3\n# coding: utf-8\n\n#\n# example:\n# $ ./xsvf -c disasm ../xsvf/XC2C64A/idcode_simpler.xsvf\n#\n\nimport JTAGTAP\nimport XSVFDecoder\n\n\nclass XSVFDisassembler(XSVFDecoder.XSVFDecoder):\n    \"\"\"\n    XSVF Disassembler\n    \"\"\"\n    @staticmethod\n    def add_arguments(p):\n        \"\"\"Adds the necessary arguments to the parser.\"\"\"\n        p.add_argument(\n            '-n', '--no_bytes',\n            action='store_true',\n            # type=bool,\n            help='Do not output bytes'\n                 ' (default=%(default)s)')\n\n    def __init__(self, args):\n        XSVFDecoder.XSVFDecoder.__init__(self, args)\n        self._args = args\n        self._current_instruction = 0\n        self._instruction_handlers = (\n            self.disasm_xcomplete,\n            self.disasm_xtdomask,\n            self.disasm_xsir,\n            self.disasm_xsdr,\n            self.disasm_xruntest,\n            self.disasm_xreserved_5,\n            self.disasm_xreserved_6,\n            self.disasm_xrepeat,\n            self.disasm_xsdrsize,\n            self.disasm_xsdrtdo,\n            self.disasm_xsetsdrmasks,\n            self.disasm_xsdrinc,\n            self.disasm_xsdrb,\n            self.disasm_xsdrc,\n            self.disasm_xsdre,\n            self.disasm_xsdrtdob,\n            self.disasm_xsdrtdoc,\n            self.disasm_xsdrtdoe,\n            self.disasm_xstate,\n            self.disasm_xendir,\n            self.disasm_xenddr,\n            self.disasm_xsir2,\n            self.disasm_xcomment,\n            self.disasm_xwait,\n        )\n\n    @property\n    def current_instruction(self):\n        return self._current_instruction\n\n    @current_instruction.setter\n    def current_instruction(self, value):\n        self._current_instruction = value\n\n    def format_first_part(self, s):\n        \"\"\"\n        Breaks the instruction's bytes in lines of 8 bytes.\n\n        :param s: string of bytes\n\n        :return: list of 8 byte strings\n        \"\"\"\n        l = []\n        while s:\n            l.append(s[:24])\n            s = s[24:]\n        return l\n\n    def return_zeroeth(self, l):\n        \"\"\"\n        Returns the zeroeth element of the list, right whitespace stripped,\n        but avoid returning None if the result is empty.\n        \"\"\"\n        if l:\n            l_0 = l[0].rstrip()\n        else:\n            l_0 = \"\"\n        return l_0\n\n    def format_byte_list(self, l):\n        return '    {:s}'.format(' '.join('{0:02X}'.format(x) for x in l))\n\n    def pretty_disasm(self, pars=(\"\",)):\n        l1 = self.format_first_part(self.current_instruction_string)\n        l2 = list(pars)\n        l2[0] = '{:s}{:s}'.format(\n            self.instruction_name(self.current_instruction),\n            l2[0])\n        while l1 or l2:\n            l1_0 = self.return_zeroeth(l1)\n            l2_0 = self.return_zeroeth(l2)\n            if self._args.no_bytes:\n                if l2_0:\n                    print('{0:s}'.format(l2_0))\n            else:\n                if l2_0:\n                    print('{0:<24}    {1:s}'.format(l1_0, l2_0))\n                else:\n                    print('{0:s}'.format(l1_0))\n            l1 = l1[1:]\n            l2 = l2[1:]\n\n    def disasm_xcomplete(self):\n        self.pretty_disasm()\n\n    def disasm_xtdomask(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdo_mask)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsir(self):\n        p = (\n            ' {:d} {:s}'.format(\n                self.sirsize_bits,\n                self.format_byte_list(self.tdi).strip()),\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdr(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdi)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xruntest(self):\n        p = (\n            ' {:d}'.format(self.runtest),\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xreserved_5(self):\n        self.pretty_disasm()\n\n    def disasm_xreserved_6(self):\n        self.pretty_disasm()\n\n    def disasm_xrepeat(self):\n        p = (\n            ' {:d}'.format(self.repeat),\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdrsize(self):\n        p = (\n            ' {0}'.format(self.sdrsize_bits),\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdrtdo(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdi) + ',',\n            self.format_byte_list(self.tdo_expected)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsetsdrmasks(self):\n        p = (\n            '',\n            self.format_byte_list(self.address_mask) + ',',\n            self.format_byte_list(self.data_mask)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdrinc(self):\n        p = [\n            '',\n            self.format_byte_list(self.xsdrinc_start_address) + ',',\n            '    {:d},'.format(self.xsdrinc_num_times)\n        ]\n        n = self.xsdrinc_num_times\n        for l in self.xsdrinc_data_list:\n            s = self.format_byte_list(l)\n            n -= 1\n            # Adds a comma, unless it's the last one\n            if n:\n                s += ','\n            p.append(s)\n        self.pretty_disasm(p)\n\n    def disasm_xsdrb(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdi)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdrc(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdi)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdre(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdi)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdrtdob(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdi) + ',',\n            self.format_byte_list(self.tdo_expected)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdrtdoc(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdi) + ',',\n            self.format_byte_list(self.tdo_expected)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsdrtdoe(self):\n        p = (\n            '',\n            self.format_byte_list(self.tdi) + ',',\n            self.format_byte_list(self.tdo_expected)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xstate(self):\n        p = (\n            ' {:s}'.format(JTAGTAP.JTAGTAP.state_name(self.next_state)),\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xendir(self):\n        p = (\n            ' {:s}'.format(JTAGTAP.JTAGTAP.state_name(self.endir_state)),\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xenddr(self):\n        p = (\n            ' {:s}'.format(JTAGTAP.JTAGTAP.state_name(self.enddr_state)),\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xsir2(self):\n        p = (\n            ' {:d}'.format(self.sirsize_bits),\n            self.format_byte_list(self.tdi)\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xcomment(self):\n        p = (\n            ' \"{:s}\"'.format(self.comment),\n        )\n        self.pretty_disasm(p)\n\n    def disasm_xwait(self):\n        p = (\n            ' {:s} {:s} {:d}'.format(\n                JTAGTAP.JTAGTAP.state_name(self.wait_start_state),\n                JTAGTAP.JTAGTAP.state_name(self.wait_end_state),\n                self.wait_time_usecs),\n        )\n        self.pretty_disasm(p)\n\n    #\n    def instruction_handler(self, instruction):\n        self.current_instruction = instruction\n        self._instruction_handlers[instruction]()\n\n    def disasm_all_files(self, fd_list):\n        return self.decode_all_files(fd_list)\n"
  },
  {
    "path": "extras/python/XSVFParser.py",
    "content": "#! /usr/bin/python3\n# coding: utf-8\n\n# ./XSVFAssembler.py > test.xsvf\n# ./xsvf -c disasm -n test.xsvf > test.xsvf.s\n# ./xsvf -c asm test.xsvf.s > test2.xsvf\n\nimport pyparsing as pp\nimport sys\n\n__all__ = ['parse_xsvf_file']\n\n# Comment\nasm_comment = pp.Suppress(pp.Group(';' + pp.restOfLine))\noptional_asm_comment = pp.Optional(asm_comment)\nxcomment_argument = pp.QuotedString(\n    quoteChar='\"', escQuote='\"\"', multiline=True)\n\n# Hexadecimal integers\nzero_ex = pp.Literal('0x') | pp.Literal('0X')\nhex_body = pp.Word(pp.hexnums)\nhex_number = pp.Combine(zero_ex + hex_body)\n\nhex_byte = pp.Word(pp.hexnums, exact=2)\nbin_byte = pp.Word('01', exact=8)\n# The order is important here. We must try to match a bin_byte first, otherwise\n# '01010101' becomes '01' '01' '01' '01'.\nbyte_number = bin_byte | hex_byte\n\n# Byte sequences and byte sequence lists\ncomma = pp.Suppress(pp.Literal(','))\nbyte_sequence = pp.Group(pp.OneOrMore(byte_number + optional_asm_comment))\nbyte_sequence_list = \\\n    byte_sequence + \\\n    pp.ZeroOrMore(comma + optional_asm_comment +\n                  byte_sequence)\n# The order is important here. We must try to match '0x1ABCD' to hex first\n# otherwise it will become '0' 'x'.\ninteger = hex_number | pp.Word(pp.nums)\n\n# JTAG TAP States\ntest_logic_reset = pp.Keyword('TEST_LOGIC_RESET')\nrun_test_idle = pp.Keyword('RUN_TEST_IDLE')\nselect_dr_scan = pp.Keyword('SELECT_DR_SCAN')\ncapture_dr = pp.Keyword('CAPTURE_DR')\nshift_dr = pp.Keyword('SHIFT_DR')\nexit1_dr = pp.Keyword('EXIT1_DR')\npause_dr = pp.Keyword('PAUSE_DR')\nexit2_dr = pp.Keyword('EXIT2_DR')\nupdate_dr = pp.Keyword('UPDATE_DR')\nselect_ir_scan = pp.Keyword('SELECT_IR_SCAN')\ncapture_ir = pp.Keyword('CAPTURE_IR')\nshift_ir = pp.Keyword('SHIFT_IR')\nexit1_ir = pp.Keyword('EXIT1_IR')\npause_ir = pp.Keyword('PAUSE_IR')\nexit2_ir = pp.Keyword('EXIT2_IR')\nupdate_ir = pp.Keyword('UPDATE_IR')\n\nstate = (\n    test_logic_reset |\n    run_test_idle |\n    select_dr_scan |\n    capture_dr |\n    shift_dr |\n    exit1_dr |\n    pause_dr |\n    exit2_dr |\n    update_dr |\n    select_ir_scan |\n    capture_ir |\n    shift_ir |\n    exit1_ir |\n    pause_ir |\n    exit2_ir |\n    update_ir\n)\n\n# Instructions\nxcomplete = pp.Group(pp.Keyword('XCOMPLETE'))\nxtdomask = pp.Group(pp.Keyword('XTDOMASK') + optional_asm_comment +\n                    byte_sequence)\nxsir = pp.Group(pp.Keyword('XSIR') + optional_asm_comment +\n                integer + optional_asm_comment +\n                byte_sequence)\nxsdr = pp.Group(pp.Keyword('XSDR') + optional_asm_comment +\n                byte_sequence)\nxruntest = pp.Group(pp.Keyword('XRUNTEST') + optional_asm_comment +\n                    integer)\nxreserved_5 = pp.Group(pp.Keyword('XRESERVED_5'))\nxreserved_6 = pp.Group(pp.Keyword('XRESERVED_6'))\nxrepeat = pp.Group(pp.Keyword('XREPEAT') + optional_asm_comment +\n                   integer)\nxsdrsize = pp.Group(pp.Keyword('XSDRSIZE') + optional_asm_comment +\n                    integer)\nxsdrtdo = pp.Group(pp.Keyword('XSDRTDO') +\n                   byte_sequence + optional_asm_comment +\n                   comma + optional_asm_comment +\n                   byte_sequence)\nxsetsdrmasks = pp.Group(pp.Keyword('XSETSDRMASKS') + optional_asm_comment +\n                        byte_sequence + optional_asm_comment +\n                        comma + optional_asm_comment +\n                        byte_sequence)\nxsdrinc = pp.Group(pp.Keyword('XSDRINC') + optional_asm_comment +\n                   byte_sequence + optional_asm_comment +\n                   comma + optional_asm_comment +\n                   integer + optional_asm_comment +\n                   comma + optional_asm_comment +\n                   byte_sequence_list)\nxsdrb = pp.Group(pp.Keyword('XSDRB') + optional_asm_comment +\n                 byte_sequence)\nxsdrc = pp.Group(pp.Keyword('XSDRC') + optional_asm_comment +\n                 byte_sequence)\nxsdre = pp.Group(pp.Keyword('XSDRE') + optional_asm_comment +\n                 byte_sequence)\nxsdrtdob = pp.Group(pp.Keyword('XSDRTDOB') + optional_asm_comment +\n                    byte_sequence + optional_asm_comment +\n                    comma + optional_asm_comment +\n                    byte_sequence)\nxsdrtdoc = pp.Group(pp.Keyword('XSDRTDOC') + optional_asm_comment +\n                    byte_sequence + optional_asm_comment +\n                    comma + optional_asm_comment +\n                    byte_sequence)\nxsdrtdoe = pp.Group(pp.Keyword('XSDRTDOE') + optional_asm_comment +\n                    byte_sequence + optional_asm_comment +\n                    comma + optional_asm_comment +\n                    byte_sequence)\nxstate = pp.Group(pp.Keyword('XSTATE') + optional_asm_comment +\n                  state)\nxendir = pp.Group(pp.Keyword('XENDIR') + optional_asm_comment +\n                  (run_test_idle | pause_ir))\nxenddr = pp.Group(pp.Keyword('XENDDR') + optional_asm_comment +\n                  (run_test_idle | pause_dr))\nxsir2 = pp.Group(pp.Keyword('XSIR2') + optional_asm_comment +\n                 integer + optional_asm_comment +\n                 byte_sequence)\nxcomment = pp.Group(pp.Keyword('XCOMMENT') + optional_asm_comment +\n                    xcomment_argument)\nxwait = pp.Group(pp.Keyword('XWAIT') + optional_asm_comment +\n                 state + optional_asm_comment +\n                 state + optional_asm_comment +\n                 integer)\n\ninstruction = (\n    xcomplete |\n    xtdomask |\n    xsir |\n    xsdr |\n    xruntest |\n    xreserved_5 |\n    xreserved_6 |\n    xrepeat |\n    xsdrsize |\n    xsdrtdo |\n    xsetsdrmasks |\n    xsdrinc |\n    xsdrb |\n    xsdrc |\n    xsdre |\n    xsdrtdob |\n    xsdrtdoc |\n    xsdrtdoe |\n    xstate |\n    xendir |\n    xenddr |\n    xsir2 |\n    xcomment |\n    xwait\n)\n\n# Line\nline = asm_comment | (instruction + optional_asm_comment)\n\n# File\nxsvf_parser = pp.OneOrMore(line)\n\n\ndef parse_xsvf_file(f):\n    return xsvf_parser.parseFile(f, parseAll=True)\n\n\nxsvf_example = \"\"\"\n; XSVF Assembly language example file\n;\n; All XSVF instructions are used here\n\nXSDRSIZE 48 ; XSDRSIZE must be set for the decoder/disassembler to work\n            ; properly.\nXTDOMASK    ; Comment test\n        00 00 00 00 00 00\nXSIR 8 00   ; Comment test\nXSDR        ; Comment test\n        00 00 00 00 00 00 ; Comment test\nXRUNTEST 70\nXRESERVED_5\nXRESERVED_6\nXREPEAT 0x20\nXSDRTDO\n        FF FF FF FF FF FF ; Comment test\n        ,                 ; Comment test\n        00 00 00 00 00 00 ; Comment test\nXSETSDRMASKS\n        00 00 00 00 00 00,\n        FF FF FF FF FF FF\nXSDRINC                     ; Comment test\n        01010101            ; Comment test in the middle of byte_squence\n        FF                  ; Comment test in the middle of byte_squence\n        10101010 FF 01010101 FF ; Comment test\n        ,                   ; Comment test after comma\n        5,                  ; Comment test\n        00 00 00 00 00 00,  ; Comment test\n        FF FF FF FF FF FF,  ; Comment test\n        00 00 00 00 00 00,  ; Comment test\n        FF FF FF FF FF FF,  ; Comment test\n        00 00 00 00 00 00   ; Comment test\nXSDRB\n        FF FF FF FF FF FF\nXSDRC\n        FF FF FF FF FF FF\nXSDRE\n        FF FF FF FF FF FF\nXSDRTDOB\n        FF FF FF FF FF FF,\n        00 00 00 00 00 00\nXSDRTDOC\n        FF FF FF FF FF FF,\n        00 00 00 00 00 00\nXSDRTDOE\n        FF FF FF FF FF FF,\n        00 00 00 00 00 00\nXSTATE ; Comment test\n       TEST_LOGIC_RESET\nXSTATE RUN_TEST_IDLE\nXSTATE SELECT_DR_SCAN\nXSTATE CAPTURE_DR\nXSTATE SHIFT_DR\nXSTATE EXIT1_DR\nXSTATE PAUSE_DR\nXSTATE EXIT2_DR\nXSTATE UPDATE_DR\nXSTATE SELECT_IR_SCAN\nXSTATE CAPTURE_IR\nXSTATE SHIFT_IR\nXSTATE EXIT1_IR\nXSTATE PAUSE_IR\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXENDIR RUN_TEST_IDLE\nXENDIR PAUSE_IR\nXENDDR RUN_TEST_IDLE\nXENDDR PAUSE_DR\nXSIR2 48\n        00 00 00 00 00 00\nXCOMMENT ; Comment test\n    \"adsf f sda asdf sdaf asdf sadf\n    qwer qwer qwer qwer\n    zxcv zvcx zxcv c\"   ; Comment test\n; Comment test\nXWAIT                   ; Comment test\n    TEST_LOGIC_RESET    ; Comment test\n    RUN_TEST_IDLE       ; Comment test\n    100                 ; Comment test\nXCOMPLETE\"\"\"\n\n\ndef main():\n    print(xsvf_parser.parseString(xsvf_example, parseAll=True))\n    sys.exit(0)\n\n\nif __name__ == '__main__':\n    main()\n"
  },
  {
    "path": "extras/python/asm_disasm_test.sh",
    "content": "#! /bin/bash\n./XSVFAssembler.py > test.xsvf\n./xsvf -c disasm -n test.xsvf > test.xsvf.s\n./xsvf -c asm test.xsvf.s > test2.xsvf\nsha1sum test*.xsvf\n\n"
  },
  {
    "path": "extras/python/xsvf",
    "content": "#! /usr/bin/python3\n# coding: utf-8\n\nimport argparse\nimport XSVFAssembler\nimport XSVFDisassembler\nimport sys\nimport Uploader\n\nmy_parser = argparse.ArgumentParser(\n    description='XSVF file processor.',\n    epilog='Parameters can be in a file, one per line, using @\"file name\"',\n    fromfile_prefix_chars='@')\nmy_parser.add_argument(\n    '-c', '--command',\n    type=str,\n    choices=['upload', 'disasm', 'asm'],\n    default='upload',\n    help='command to execute.'\n         ' (default=%(default)s)')\nmy_parser.add_argument(\n    'fileName',\n    nargs='+',\n    type=argparse.FileType('rb'),\n    help='XSVF file names.'\n         ' (type %(type)s)')\nmy_parser.add_argument(\n    '-v', '--version',\n    action='version',\n    version='%(prog)s version 1.0.0')\nmy_parser.add_argument(\n    '-d', '--debug',\n    default=2,\n    type=int,\n    help='Debug verbosity'\n         ' (type %(type)s, default=%(default)s)')\n\n\ndef main():\n    error_code = -1\n    Uploader.Uploader.add_arguments(my_parser)\n    XSVFDisassembler.XSVFDisassembler.add_arguments(my_parser)\n    args = my_parser.parse_args()\n    if args.command == 'upload':\n        u = Uploader.Uploader(args)\n        u.upload_all_files(args.fileName)\n        error_code = u.error_code\n    elif args.command == 'disasm':\n        d = XSVFDisassembler.XSVFDisassembler(args)\n        error_code = d.disasm_all_files(args.fileName)\n    elif args.command == 'asm':\n        a = XSVFAssembler.XSVFAssembler(args)\n        error_code = a.assemble_all_files(args.fileName)\n    sys.exit(error_code)\n\nif __name__ == '__main__':\n    main()\n"
  },
  {
    "path": "extras/xsvf/XC2C64A/VHDL-CPLDIntro3LEDinverse.xsvf.s",
    "content": "XREPEAT 0\nXENDIR RUN_TEST_IDLE\nXENDDR RUN_TEST_IDLE\nXSTATE TEST_LOGIC_RESET\nXSTATE RUN_TEST_IDLE\nXSIR 8 01\nXSDRSIZE 32\nXTDOMASK\n    0F FF 8F FF\nXRUNTEST 0\nXSDRTDO\n    00 00 00 00,\n    F6 E5 F0 93\nXSIR 8 FF\nXSIR 8 01\nXSDRTDO\n    00 00 00 00,\n    F6 E5 F0 93\nXSIR 8 FF\nXSIR 8 E8\nXENDIR PAUSE_IR\nXSIR 8 ED\nXENDIR RUN_TEST_IDLE\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXSTATE SELECT_DR_SCAN\nXSTATE CAPTURE_DR\nXSTATE EXIT1_DR\nXSTATE PAUSE_DR\nXWAIT PAUSE_DR PAUSE_DR 20\nXSTATE EXIT2_DR\nXSTATE UPDATE_DR\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100000\nXSTATE SELECT_DR_SCAN\nXSTATE CAPTURE_DR\nXSTATE EXIT1_DR\nXSTATE PAUSE_DR\nXWAIT PAUSE_DR PAUSE_DR 5000\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 1\nXENDIR PAUSE_IR\nXSIR 8 F0\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20\nXENDIR PAUSE_IR\nXSIR 8 F0\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXSTATE SELECT_DR_SCAN\nXSTATE CAPTURE_DR\nXSTATE EXIT1_DR\nXSTATE UPDATE_DR\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800\nXENDIR RUN_TEST_IDLE\nXSIR 8 C0\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSIR 8 C0\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSIR 8 E8\nXENDIR PAUSE_IR\nXSIR 8 EA\nXSDRSIZE 281\nXTDOMASK\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXSDRTDO\n    00 03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXENDIR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 02 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7D,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 82 05 FF FF EF FF FF FF FF FF FF FF FF FF FF FF F9 9E 7F FF FF FF FF FF FF FF FF FF FF FF FF BF FF FE 81,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 83 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 C3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 C0 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 43 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 43 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 60 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 63 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 E3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 E0 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 A3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 A3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 20 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 23 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 33 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 30 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 B3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 B3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 F0 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 F3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 73 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 70 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF E2 47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 53 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 53 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 D0 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 D3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 93 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 90 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 13 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 13 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 18 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 1B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 9B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 98 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 DB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 DB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 58 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 5B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 7B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 78 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 FB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 FB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 B8 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 BB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 3B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 38 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 2B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 2B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 A8 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 AB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 EB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 E8 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 6B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 6B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 48 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 4B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 CB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 C8 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 8B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 8B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 08 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 0B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 0F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 0C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 8F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 8F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 CC F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 CF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 4F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 4C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 6F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 6F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 EC F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 EF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 AF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 AC 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 2F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 2F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 3C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 3F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 BF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 BC 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 FF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 7C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 7F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 5F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 5C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 DF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 DE E1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 9C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 9F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 1F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 1C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    00 17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSDRTDO\n    01 17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXENDIR PAUSE_IR\nXSIR 8 F0\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20\nXENDIR PAUSE_IR\nXSIR 8 F0\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXSTATE SELECT_DR_SCAN\nXSTATE CAPTURE_DR\nXSTATE EXIT1_DR\nXSTATE UPDATE_DR\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800\nXENDIR RUN_TEST_IDLE\nXSIR 8 C0\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSIR 8 C0\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSIR 8 E8\nXSIR 8 E8\nXENDIR PAUSE_IR\nXSIR 8 EE\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    00,\n    00\nXENDIR RUN_TEST_IDLE\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    40,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    02 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7D\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    60,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    02 05 FF FF EF FF FF FF FF FF FF FF FF FF FF FF F9 9E 7F FF FF FF FF FF FF FF FF FF FF FF FF BF FF FE 81\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    20,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    30,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    70,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    50,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    10,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    18,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    58,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    78,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    38,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    28,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    68,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    48,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    08,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    0C,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    4C,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    6C,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    2C,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    3C,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    7C,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    5C,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    1C,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 1F F8 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF E2 47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    14,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 1F 80 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    54,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    74,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    34,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    24,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    64,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    44,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    04,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    06,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    46,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    66,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    26,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    36,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    76,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    56,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    16,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    1E,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    5E,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    7E,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    3E,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    2E,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    6E,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    4E,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    0E,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    0A,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    4A,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    6A,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    2A,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    3A,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    7A,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    5A,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    1A,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    12,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    52,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    72,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    32,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    22,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    62,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    42,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    02,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    03,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    43,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    63,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    23,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    33,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    73,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    53,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    13,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    1B,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    5B,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 07 80 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    7B,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    3B,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    2B,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    6B,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    4B,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    0B,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    0F,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    4F,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    6F,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    2F,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    3F,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    7F,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    5F,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    1F,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    17,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    57,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    77,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    37,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    02 E1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    27,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    67,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    47,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    07,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    05,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXENDDR PAUSE_DR\nXSDRSIZE 7\nXTDOMASK\n    00\nXSDRTDO\n    45,\n    00\nXWAIT PAUSE_DR PAUSE_DR 20\nXENDDR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSDRSIZE 274\nXTDOMASK\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXSDRTDO\n    03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSIR 8 F0\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20\nXENDIR PAUSE_IR\nXSIR 8 F0\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXSTATE SELECT_DR_SCAN\nXSTATE CAPTURE_DR\nXSTATE EXIT1_DR\nXSTATE UPDATE_DR\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800\nXENDIR RUN_TEST_IDLE\nXSIR 8 C0\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSIR 8 E8\nXENDIR PAUSE_IR\nXSIR 8 EA\nXSDRSIZE 281\nXTDOMASK\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXSDRTDO\n    00 17 FD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\n    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nXENDIR RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\nXSIR 8 F0\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20\nXENDIR PAUSE_IR\nXSIR 8 F0\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXSTATE SELECT_DR_SCAN\nXSTATE CAPTURE_DR\nXSTATE EXIT1_DR\nXSTATE UPDATE_DR\nXSTATE RUN_TEST_IDLE\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800\nXENDIR RUN_TEST_IDLE\nXSIR 8 C0\nXWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\nXSIR 8 01\nXSDRSIZE 32\nXTDOMASK\n    0F FF 8F FF\nXSDRTDO\n    00 00 00 00,\n    F6 E5 F0 93\nXSIR 8 FF\nXREPEAT 0\nXREPEAT 32\nXSTATE TEST_LOGIC_RESET\nXSTATE RUN_TEST_IDLE\nXRUNTEST 0\nXSIR 8 FF\nXSDRSIZE 1\nXTDOMASK\n    00\nXSDRTDO\n    00,\n    00\nXCOMPLETE\n"
  },
  {
    "path": "extras/xsvf/XC2C64A/VHDL-CPLDIntro3LEDinverse.xsvf.txt",
    "content": "07 00                       XREPEAT 0\n13 00                       XENDIR RUN_TEST_IDLE\n14 00                       XENDDR RUN_TEST_IDLE\n12 00                       XSTATE TEST_LOGIC_RESET\n12 01                       XSTATE RUN_TEST_IDLE\n02 08 01                    XSIR 8 01\n08 00 00 00 20              XSDRSIZE 32\n01 0F FF 8F FF              XTDOMASK\n                                0F FF 8F FF\n04 00 00 00 00              XRUNTEST 0\n09 00 00 00 00 F6 E5 F0     XSDRTDO\n93                              00 00 00 00,\n                                F6 E5 F0 93\n02 08 FF                    XSIR 8 FF\n02 08 01                    XSIR 8 01\n09 00 00 00 00 F6 E5 F0     XSDRTDO\n93                              00 00 00 00,\n                                F6 E5 F0 93\n02 08 FF                    XSIR 8 FF\n02 08 E8                    XSIR 8 E8\n13 01                       XENDIR PAUSE_IR\n02 08 ED                    XSIR 8 ED\n13 00                       XENDIR RUN_TEST_IDLE\n12 0E                       XSTATE EXIT2_IR\n12 0F                       XSTATE UPDATE_IR\n12 02                       XSTATE SELECT_DR_SCAN\n12 03                       XSTATE CAPTURE_DR\n12 05                       XSTATE EXIT1_DR\n12 06                       XSTATE PAUSE_DR\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n12 07                       XSTATE EXIT2_DR\n12 08                       XSTATE UPDATE_DR\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 01 86 A0        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100000\n12 02                       XSTATE SELECT_DR_SCAN\n12 03                       XSTATE CAPTURE_DR\n12 05                       XSTATE EXIT1_DR\n12 06                       XSTATE PAUSE_DR\n17 06 06 00 00 13 88        XWAIT PAUSE_DR PAUSE_DR 5000\n17 01 01 00 00 00 01        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 1\n13 01                       XENDIR PAUSE_IR\n02 08 F0                    XSIR 8 F0\n12 0E                       XSTATE EXIT2_IR\n12 0F                       XSTATE UPDATE_IR\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 00 00 14        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20\n13 01                       XENDIR PAUSE_IR\n02 08 F0                    XSIR 8 F0\n12 0E                       XSTATE EXIT2_IR\n12 0F                       XSTATE UPDATE_IR\n12 02                       XSTATE SELECT_DR_SCAN\n12 03                       XSTATE CAPTURE_DR\n12 05                       XSTATE EXIT1_DR\n12 08                       XSTATE UPDATE_DR\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 00 03 20        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800\n13 00                       XENDIR RUN_TEST_IDLE\n02 08 C0                    XSIR 8 C0\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n02 08 C0                    XSIR 8 C0\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n02 08 E8                    XSIR 8 E8\n13 01                       XENDIR PAUSE_IR\n02 08 EA                    XSIR 8 EA\n08 00 00 01 19              XSDRSIZE 281\n01 00 00 00 00 00 00 00     XTDOMASK\n00 00 00 00 00 00 00 00         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00\n09 00 03 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n13 00                       XENDIR RUN_TEST_IDLE\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 02 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 02 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7D,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7D 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 82 05 FF FF EF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 82 05 FF FF EF FF FF FF FF FF FF FF FF FF FF FF F9 9E 7F FF FF FF FF FF FF FF FF FF FF FF FF BF FF FE 81,\nFF FF F9 9E 7F FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF BF FF FE 81 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 83 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 83 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 C3 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 C3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 C0 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 C0 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 43 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 43 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 43 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 43 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 60 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 60 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 63 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 63 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 E3 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 E3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 E0 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 E0 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 A3 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 A3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 A3 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 A3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 20 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 20 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 23 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 23 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 33 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 33 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 30 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 30 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 B3 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 B3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 B3 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 B3 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 F0 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 F0 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 F3 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 F3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 73 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 73 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 70 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 70 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF E2 47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF E2 47 FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 53 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 53 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 53 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 53 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 D0 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 D0 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 D3 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 D3 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 93 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 93 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 90 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 90 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 13 C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 13 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 13 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 13 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 18 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 18 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 1B C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 1B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 9B F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 9B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 98 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 98 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 DB C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 DB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 DB F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 DB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 58 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 58 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 5B C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 5B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 7B F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 7B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 78 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 78 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 FB C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 FB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 FB F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 FB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 B8 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 B8 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 BB C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 BB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 3B F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 3B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 38 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 38 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 2B C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 2B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 2B F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 2B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 A8 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 A8 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 AB C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 AB C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 EB F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 EB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 E8 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 E8 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 6B C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 6B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 6B F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 6B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 48 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 48 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 4B C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 4B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 CB F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 CB F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 C8 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 C8 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 8B C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 8B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 8B F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 8B F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 08 F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 08 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 0B C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 0B C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 0F F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 0F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 0C 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 0C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 8F C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 8F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 8F F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 8F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 CC F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 CC F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 CF C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 CF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 4F F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 4F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 4C F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 4C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 6F C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 6F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 6F F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 6F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF F9 FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 EC F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 EC F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 EF C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 EF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 AF F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 AF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 AC 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 AC 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 2F C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 2F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 2F F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 2F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 3C 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 3C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 3F C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 3F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 BF F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 BF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 BC 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 BC 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 FF C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 FF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 FF F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 7C F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 7C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 7F C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 7F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 5F F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 5F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 5C 79 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 5C 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 DF C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 DF C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 DE E1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 DE E1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 9C F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 9C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 78 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 9F C1 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 9F C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 0F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 1F F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 1F F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7F 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 1C F9 FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 1C F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FE 7C 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 00 17 FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n09 01 17 FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         01 17 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n13 01                       XENDIR PAUSE_IR\n02 08 F0                    XSIR 8 F0\n12 0E                       XSTATE EXIT2_IR\n12 0F                       XSTATE UPDATE_IR\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 00 00 14        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20\n13 01                       XENDIR PAUSE_IR\n02 08 F0                    XSIR 8 F0\n12 0E                       XSTATE EXIT2_IR\n12 0F                       XSTATE UPDATE_IR\n12 02                       XSTATE SELECT_DR_SCAN\n12 03                       XSTATE CAPTURE_DR\n12 05                       XSTATE EXIT1_DR\n12 08                       XSTATE UPDATE_DR\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 00 03 20        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800\n13 00                       XENDIR RUN_TEST_IDLE\n02 08 C0                    XSIR 8 C0\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n02 08 C0                    XSIR 8 C0\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n02 08 E8                    XSIR 8 E8\n02 08 E8                    XSIR 8 E8\n13 01                       XENDIR PAUSE_IR\n02 08 EE                    XSIR 8 EE\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 00 00                    XSDRTDO\n                                00,\n                                00\n13 00                       XENDIR RUN_TEST_IDLE\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 40 00                    XSDRTDO\n                                40,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         02 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7D\nFF FF FF FF FF FF FF FF\nFF FF FF FF 02 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7D\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 60 00                    XSDRTDO\n                                60,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         02 05 FF FF EF FF FF FF FF FF FF FF FF FF FF FF F9 9E 7F FF FF FF FF FF FF FF FF FF FF FF FF BF FF FE 81\nFF FF FF FF FF FF FF FF\nFF FF FF FF 02 05 FF FF\nEF FF FF FF FF FF FF FF\nFF FF FF FF F9 9E 7F FF\nFF FF FF FF FF FF FF FF\nFF FF FF BF FF FE 81\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 20 00                    XSDRTDO\n                                20,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 30 00                    XSDRTDO\n                                30,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 70 00                    XSDRTDO\n                                70,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 50 00                    XSDRTDO\n                                50,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 10 00                    XSDRTDO\n                                10,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 18 00                    XSDRTDO\n                                18,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 58 00                    XSDRTDO\n                                58,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 78 00                    XSDRTDO\n                                78,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 38 00                    XSDRTDO\n                                38,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 28 00                    XSDRTDO\n                                28,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 68 00                    XSDRTDO\n                                68,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 48 00                    XSDRTDO\n                                48,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 08 00                    XSDRTDO\n                                08,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 0C 00                    XSDRTDO\n                                0C,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 4C 00                    XSDRTDO\n                                4C,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 6C 00                    XSDRTDO\n                                6C,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 2C 00                    XSDRTDO\n                                2C,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 3C 00                    XSDRTDO\n                                3C,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 7C 00                    XSDRTDO\n                                7C,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 5C 00                    XSDRTDO\n                                5C,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 1C 00                    XSDRTDO\n                                1C,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 1F F8 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 1F F8 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF E2 47 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF E2 47 FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 14 00                    XSDRTDO\n                                14,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 1F 80 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 1F 80 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 54 00                    XSDRTDO\n                                54,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 74 00                    XSDRTDO\n                                74,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 34 00                    XSDRTDO\n                                34,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 24 00                    XSDRTDO\n                                24,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 64 00                    XSDRTDO\n                                64,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 44 00                    XSDRTDO\n                                44,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 04 00                    XSDRTDO\n                                04,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 06 00                    XSDRTDO\n                                06,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 46 00                    XSDRTDO\n                                46,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 66 00                    XSDRTDO\n                                66,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 26 00                    XSDRTDO\n                                26,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 36 00                    XSDRTDO\n                                36,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 76 00                    XSDRTDO\n                                76,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 56 00                    XSDRTDO\n                                56,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 16 00                    XSDRTDO\n                                16,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 1E 00                    XSDRTDO\n                                1E,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 5E 00                    XSDRTDO\n                                5E,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 7E 00                    XSDRTDO\n                                7E,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 3E 00                    XSDRTDO\n                                3E,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 2E 00                    XSDRTDO\n                                2E,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 6E 00                    XSDRTDO\n                                6E,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 4E 00                    XSDRTDO\n                                4E,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 0E 00                    XSDRTDO\n                                0E,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 0A 00                    XSDRTDO\n                                0A,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 4A 00                    XSDRTDO\n                                4A,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 6A 00                    XSDRTDO\n                                6A,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 2A 00                    XSDRTDO\n                                2A,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 3A 00                    XSDRTDO\n                                3A,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 7A 00                    XSDRTDO\n                                7A,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 5A 00                    XSDRTDO\n                                5A,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 1A 00                    XSDRTDO\n                                1A,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 12 00                    XSDRTDO\n                                12,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 52 00                    XSDRTDO\n                                52,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 72 00                    XSDRTDO\n                                72,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 32 00                    XSDRTDO\n                                32,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 22 00                    XSDRTDO\n                                22,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 62 00                    XSDRTDO\n                                62,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 42 00                    XSDRTDO\n                                42,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 02 00                    XSDRTDO\n                                02,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 03 00                    XSDRTDO\n                                03,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 43 00                    XSDRTDO\n                                43,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 63 00                    XSDRTDO\n                                63,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 23 00                    XSDRTDO\n                                23,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 33 00                    XSDRTDO\n                                33,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 73 00                    XSDRTDO\n                                73,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 53 00                    XSDRTDO\n                                53,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 13 00                    XSDRTDO\n                                13,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 1B 00                    XSDRTDO\n                                1B,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 5B 00                    XSDRTDO\n                                5B,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 07 80 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 07 80 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 7B 00                    XSDRTDO\n                                7B,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 3B 00                    XSDRTDO\n                                3B,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 00 00 00 01 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFE 00 00 00 01 FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 2B 00                    XSDRTDO\n                                2B,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 6B 00                    XSDRTDO\n                                6B,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 4B 00                    XSDRTDO\n                                4B,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 0B 00                    XSDRTDO\n                                0B,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 0F 00                    XSDRTDO\n                                0F,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 4F 00                    XSDRTDO\n                                4F,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 6F 00                    XSDRTDO\n                                6F,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 2F 00                    XSDRTDO\n                                2F,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 3F 00                    XSDRTDO\n                                3F,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 7F 00                    XSDRTDO\n                                7F,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 5F 00                    XSDRTDO\n                                5F,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 1F 00                    XSDRTDO\n                                1F,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 17 00                    XSDRTDO\n                                17,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 57 00                    XSDRTDO\n                                57,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 79 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 79 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 77 00                    XSDRTDO\n                                77,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 37 00                    XSDRTDO\n                                37,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         02 E1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 02 E1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 27 00                    XSDRTDO\n                                27,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 78\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 78\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 67 00                    XSDRTDO\n                                67,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 C1 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 0F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 C1 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 0F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 47 00                    XSDRTDO\n                                47,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         03 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7F\nFF FF FF FF FF FF FF FF\nFF FF FF FF 03 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7F\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 07 00                    XSDRTDO\n                                07,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 03 FF FF FF FF FF FF     XTDOMASK\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 F9 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FE 7C\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 F9 FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF FE 7C\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 05 00                    XSDRTDO\n                                05,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 00 00 00 00 00 00 00     XTDOMASK\n00 00 00 00 00 00 00 00         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n14 01                       XENDDR PAUSE_DR\n08 00 00 00 07              XSDRSIZE 7\n01 00                       XTDOMASK\n                                00\n09 45 00                    XSDRTDO\n                                45,\n                                00\n17 06 06 00 00 00 14        XWAIT PAUSE_DR PAUSE_DR 20\n14 00                       XENDDR RUN_TEST_IDLE\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n08 00 00 01 12              XSDRSIZE 274\n01 00 00 00 00 00 00 00     XTDOMASK\n00 00 00 00 00 00 00 00         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00\n09 03 FF FF FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         03 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FF 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n02 08 F0                    XSIR 8 F0\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 00 00 14        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20\n13 01                       XENDIR PAUSE_IR\n02 08 F0                    XSIR 8 F0\n12 0E                       XSTATE EXIT2_IR\n12 0F                       XSTATE UPDATE_IR\n12 02                       XSTATE SELECT_DR_SCAN\n12 03                       XSTATE CAPTURE_DR\n12 05                       XSTATE EXIT1_DR\n12 08                       XSTATE UPDATE_DR\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 00 03 20        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800\n13 00                       XENDIR RUN_TEST_IDLE\n02 08 C0                    XSIR 8 C0\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n02 08 E8                    XSIR 8 E8\n13 01                       XENDIR PAUSE_IR\n02 08 EA                    XSIR 8 EA\n08 00 00 01 19              XSDRSIZE 281\n01 00 00 00 00 00 00 00     XTDOMASK\n00 00 00 00 00 00 00 00         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00\n09 00 17 FD FF FF FF FF     XSDRTDO\nFF FF FF FF FF FF FF FF         00 17 FD FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF,\nFF FF FF FF FF FF FF FF         00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00\nFF FF FF FF FF FF FF FF\nFF FF FF FF FF 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00 00 00 00 00 00 00 00\n00\n13 00                       XENDIR RUN_TEST_IDLE\n17 01 01 00 00 27 10        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 10000\n02 08 F0                    XSIR 8 F0\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 00 00 14        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 20\n13 01                       XENDIR PAUSE_IR\n02 08 F0                    XSIR 8 F0\n12 0E                       XSTATE EXIT2_IR\n12 0F                       XSTATE UPDATE_IR\n12 02                       XSTATE SELECT_DR_SCAN\n12 03                       XSTATE CAPTURE_DR\n12 05                       XSTATE EXIT1_DR\n12 08                       XSTATE UPDATE_DR\n12 01                       XSTATE RUN_TEST_IDLE\n17 01 01 00 00 03 20        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 800\n13 00                       XENDIR RUN_TEST_IDLE\n02 08 C0                    XSIR 8 C0\n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE RUN_TEST_IDLE 100\n02 08 01                    XSIR 8 01\n08 00 00 00 20              XSDRSIZE 32\n01 0F FF 8F FF              XTDOMASK\n                                0F FF 8F FF\n09 00 00 00 00 F6 E5 F0     XSDRTDO\n93                              00 00 00 00,\n                                F6 E5 F0 93\n02 08 FF                    XSIR 8 FF\n07 00                       XREPEAT 0\n07 20                       XREPEAT 32\n12 00                       XSTATE TEST_LOGIC_RESET\n12 01                       XSTATE RUN_TEST_IDLE\n04 00 00 00 00              XRUNTEST 0\n02 08 FF                    XSIR 8 FF\n08 00 00 00 01              XSDRSIZE 1\n01 00                       XTDOMASK\n                                00\n09 00 00                    XSDRTDO\n                                00,\n                                00\n00                          XCOMPLETE\n"
  },
  {
    "path": "extras/xsvf/XC2C64A/erase.svf",
    "content": "// Created using Xilinx Cse Software [ISE - 14.7]\n// Date: Tue Aug 18 17:01:14 2015\n\nTRST OFF;\nENDIR IDLE;\nENDDR IDLE;\nSTATE RESET;\nSTATE IDLE;\nFREQUENCY 1E6 HZ;\n//Operation: Erase -p 0 \nTIR 0 ;\nHIR 0 ;\nTDR 0 ;\nHDR 0 ;\nTIR 0 ;\nHIR 0 ;\nHDR 0 ;\nTDR 0 ;\n//Loading device with 'idcode' instruction.\nSIR 8 TDI (01) SMASK (ff) ;\nSDR 32 TDI (00000000) SMASK (ffffffff) TDO (f6e5f093) MASK (0fff8fff) ;\n//Check for Read/Write Protect.\nSIR 8 TDI (ff) TDO (01) MASK (03) ;\n//Boundary Scan Chain Contents\n//Position 1: xc2c64a\nTIR 0 ;\nHIR 0 ;\nTDR 0 ;\nHDR 0 ;\nTIR 0 ;\nHIR 0 ;\nTDR 0 ;\nHDR 0 ;\nTIR 0 ;\nHIR 0 ;\nHDR 0 ;\nTDR 0 ;\n//Loading device with 'idcode' instruction.\nSIR 8 TDI (01) ;\nSDR 32 TDI (00000000) TDO (f6e5f093) ;\n//Check for Read/Write Protect.\nSIR 8 TDI (ff) TDO (01) MASK (03) ;\nTIR 0 ;\nHIR 0 ;\nHDR 0 ;\nTDR 0 ;\n// Loading devices with 'enable' or 'bypass' instruction.\nSIR 8 TDI (e8) ;\n// Loading devices with 'erase' or 'bypass' instruction.\nENDIR IRPAUSE;\nSIR 8 TDI (ed) SMASK (ff) ;\nENDIR IDLE;\nSTATE  IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRPAUSE;\nRUNTEST DRPAUSE 20 TCK;\nSTATE  IDLE;\nRUNTEST IDLE 100000 TCK;\nSTATE  DRPAUSE;\nRUNTEST DRPAUSE 5000 TCK;\nRUNTEST IDLE 1 TCK;\n// Loading devices with 'init' or 'bypass' instruction.\nENDIR IRPAUSE;\nSIR 8 TDI (f0) SMASK (ff) ;\nSTATE  IDLE;\nRUNTEST IDLE 20 TCK;\n// Loading devices with 'init' or 'bypass' instruction.\nENDIR IRPAUSE;\nSIR 8 TDI (f0) SMASK (ff) ;\nSTATE  IREXIT2 IRUPDATE DRSELECT DRCAPTURE DREXIT1 DRUPDATE IDLE;\nRUNTEST 800 TCK;\nENDIR IDLE;\n// Loading devices with 'conld' or 'bypass' instruction.\nSIR 8 TDI (c0) ;\nRUNTEST 100 TCK;\n// Loading devices with 'conld' or 'bypass' instruction.\nSIR 8 TDI (c0) ;\nRUNTEST 100 TCK;\nTIR 0 ;\nHIR 0 ;\nTDR 0 ;\nHDR 0 ;\nSIR 8 TDI (ff) ;\nSDR 1 TDI (00) SMASK (01) ;\n"
  },
  {
    "path": "extras/xsvf/XC2C64A/erase.xsvf.txt",
    "content": "07 00                       XREPEAT 0                                           \n13 00                       XENDIR RUN_TEST_IDLE                                \n14 00                       XENDDR RUN_TEST_IDLE                                \n12 00                       XSTATE TEST_LOGIC_RESET                             \n12 01                       XSTATE RUN_TEST_IDLE                                \n02 08 01                    XSIR 8 01                                           \n08 00 00 00 20              XSDRSIZE 32                                         \n01 0F FF 8F FF              XTDOMASK                                            \n                                0F FF 8F FF                                     \n04 00 00 00 00              XRUNTEST 0                                          \n09 00 00 00 00 F6 E5 F0     XSDRTDO                                             \n93                              00 00 00 00                                     \n                                F6 E5 F0 93                                     \n02 08 FF                    XSIR 8 FF                                           \n02 08 01                    XSIR 8 01                                           \n09 00 00 00 00 F6 E5 F0     XSDRTDO                                             \n93                              00 00 00 00                                     \n                                F6 E5 F0 93                                     \n02 08 FF                    XSIR 8 FF                                           \n02 08 E8                    XSIR 8 E8                                           \n13 01                       XENDIR PAUSE_IR                                     \n02 08 ED                    XSIR 8 ED                                           \n13 00                       XENDIR RUN_TEST_IDLE                                \n12 0E                       XSTATE EXIT2_IR                                     \n12 0F                       XSTATE UPDATE_IR                                    \n12 02                       XSTATE SELECT_DR_SCAN                               \n12 03                       XSTATE CAPTURE_DR                                   \n12 05                       XSTATE EXIT1_DR                                     \n12 06                       XSTATE PAUSE_DR                                     \n17 06 06 00 00 00 14        XWAIT PAUSE_DR, PAUSE_DR, 20                        \n12 07                       XSTATE EXIT2_DR                                     \n12 08                       XSTATE UPDATE_DR                                    \n12 01                       XSTATE RUN_TEST_IDLE                                \n17 01 01 00 01 86 A0        XWAIT RUN_TEST_IDLE, RUN_TEST_IDLE, 100000          \n12 02                       XSTATE SELECT_DR_SCAN                               \n12 03                       XSTATE CAPTURE_DR                                   \n12 05                       XSTATE EXIT1_DR                                     \n12 06                       XSTATE PAUSE_DR                                     \n17 06 06 00 00 13 88        XWAIT PAUSE_DR, PAUSE_DR, 5000                      \n17 01 01 00 00 00 01        XWAIT RUN_TEST_IDLE, RUN_TEST_IDLE, 1               \n13 01                       XENDIR PAUSE_IR                                     \n02 08 F0                    XSIR 8 F0                                           \n12 0E                       XSTATE EXIT2_IR                                     \n12 0F                       XSTATE UPDATE_IR                                    \n12 01                       XSTATE RUN_TEST_IDLE                                \n17 01 01 00 00 00 14        XWAIT RUN_TEST_IDLE, RUN_TEST_IDLE, 20              \n13 01                       XENDIR PAUSE_IR                                     \n02 08 F0                    XSIR 8 F0                                           \n12 0E                       XSTATE EXIT2_IR                                     \n12 0F                       XSTATE UPDATE_IR                                    \n12 02                       XSTATE SELECT_DR_SCAN                               \n12 03                       XSTATE CAPTURE_DR                                   \n12 05                       XSTATE EXIT1_DR                                     \n12 08                       XSTATE UPDATE_DR                                    \n12 01                       XSTATE RUN_TEST_IDLE                                \n17 01 01 00 00 03 20        XWAIT RUN_TEST_IDLE, RUN_TEST_IDLE, 800             \n13 00                       XENDIR RUN_TEST_IDLE                                \n02 08 C0                    XSIR 8 C0                                           \n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE, RUN_TEST_IDLE, 100             \n02 08 C0                    XSIR 8 C0                                           \n17 01 01 00 00 00 64        XWAIT RUN_TEST_IDLE, RUN_TEST_IDLE, 100             \n07 00                       XREPEAT 0                                           \n07 20                       XREPEAT 32                                          \n12 00                       XSTATE TEST_LOGIC_RESET                             \n12 01                       XSTATE RUN_TEST_IDLE                                \n04 00 00 00 00              XRUNTEST 0                                          \n02 08 FF                    XSIR 8 FF                                           \n08 00 00 00 01              XSDRSIZE 1                                          \n01 00                       XTDOMASK                                            \n                                00                                              \n09 00 00                    XSDRTDO                                             \n                                00                                              \n                                00                                              \n00                          XCOMPLETE                                           \n"
  },
  {
    "path": "extras/xsvf/XC2C64A/idcode.svf",
    "content": "// Created using Xilinx Cse Software [ISE - 14.7]\n// Date: Thu Jul 23 18:41:49 2015\n\nTRST OFF;\nENDIR IDLE;\nENDDR IDLE;\nSTATE RESET;\nSTATE IDLE;\nFREQUENCY 1E6 HZ;\n//Operation: ReadIdcode -p 0 \nTIR 0 ;\nHIR 0 ;\nTDR 0 ;\nHDR 0 ;\nTIR 0 ;\nHIR 0 ;\nHDR 0 ;\nTDR 0 ;\n//Loading device with 'idcode' instruction.\nSIR 8 TDI (01) SMASK (ff) ;\nSDR 32 TDI (00000000) SMASK (ffffffff) TDO (f6e5f093) MASK (0fff8fff) ;\n//Check for Read/Write Protect.\nSIR 8 TDI (ff) TDO (01) MASK (03) ;\n//Boundary Scan Chain Contents\n//Position 1: xc2c64a\nTIR 0 ;\nHIR 0 ;\nTDR 0 ;\nHDR 0 ;\nTIR 0 ;\nHIR 0 ;\nTDR 0 ;\nHDR 0 ;\nTIR 0 ;\nHIR 0 ;\nHDR 0 ;\nTDR 0 ;\n//Loading device with 'idcode' instruction.\nSIR 8 TDI (01) ;\nSDR 32 TDI (00000000) TDO (f6e5f093) ;\n//Check for Read/Write Protect.\nSIR 8 TDI (ff) TDO (01) MASK (03) ;\n//Loading device with 'idcode' instruction.\nSIR 8 TDI (01) ;\nSDR 32 TDI (00000000) TDO (f6e5f093) ;\nTIR 0 ;\nHIR 0 ;\nHDR 0 ;\nTDR 0 ;\nTIR 0 ;\nHIR 0 ;\nTDR 0 ;\nHDR 0 ;\nSIR 8 TDI (ff) ;\nSDR 1 TDI (00) SMASK (01) ;\n"
  },
  {
    "path": "extras/xsvf/XC2C64A/idcode.xsvf.txt",
    "content": "07 00                       XREPEAT 0                                           \n13 00                       XENDIR RUN_TEST_IDLE                                \n14 00                       XENDDR RUN_TEST_IDLE                                \n12 00                       XSTATE TEST_LOGIC_RESET                             \n12 01                       XSTATE RUN_TEST_IDLE                                \n02 08 01                    XSIR 8 01                                           \n08 00 00 00 20              XSDRSIZE 32                                         \n01 0F FF 8F FF              XTDOMASK                                            \n                                0F FF 8F FF                                     \n04 00 00 00 00              XRUNTEST 0                                          \n09 00 00 00 00 F6 E5 F0     XSDRTDO                                             \n93                              00 00 00 00                                     \n                                F6 E5 F0 93                                     \n02 08 FF                    XSIR 8 FF                                           \n02 08 01                    XSIR 8 01                                           \n09 00 00 00 00 F6 E5 F0     XSDRTDO                                             \n93                              00 00 00 00                                     \n                                F6 E5 F0 93                                     \n02 08 FF                    XSIR 8 FF                                           \n02 08 01                    XSIR 8 01                                           \n09 00 00 00 00 F6 E5 F0     XSDRTDO                                             \n93                              00 00 00 00                                     \n                                F6 E5 F0 93                                     \n07 00                       XREPEAT 0                                           \n07 20                       XREPEAT 32                                          \n12 00                       XSTATE TEST_LOGIC_RESET                             \n12 01                       XSTATE RUN_TEST_IDLE                                \n04 00 00 00 00              XRUNTEST 0                                          \n02 08 FF                    XSIR 8 FF                                           \n08 00 00 00 01              XSDRSIZE 1                                          \n01 00                       XTDOMASK                                            \n                                00                                              \n09 00 00                    XSDRTDO                                             \n                                00                                              \n                                00                                              \n00                          XCOMPLETE                                           \n"
  },
  {
    "path": "extras/xsvf/XC2C64A/idcode_simpler.xsvf.txt",
    "content": "12 00                       XSTATE TEST_LOGIC_RESET\n08 00 00 00 20              XSDRSIZE 32\n01 00 00 00 00              XTDOMASK\n                                00 00 00 00\n03 00 00 00 00              XSDR\n                                00 00 00 00\n00                          XCOMPLETE\n"
  },
  {
    "path": "extras/xsvf/XC2C64A/instruction_test.xsvf.s",
    "content": "; XSVF Assembly language example file\n;\n; All XSVF instructions are used here\n\nXSDRSIZE 48 ; XSDRSIZE must be set for the decoder/disassembler to work\n            ; properly.\nXTDOMASK    ; Comment test\n        00 00 00 00 00 00\nXSIR 8 00   ; Comment test\nXSDR        ; Comment test\n        00 00 00 00 00 00 ; Comment test\nXRUNTEST 70\nXRESERVED_5\nXRESERVED_6\nXREPEAT 0x20\nXSDRTDO\n        FF FF FF FF FF FF ; Comment test\n        ,                 ; Comment test\n        00 00 00 00 00 00 ; Comment test\nXSETSDRMASKS\n        00 00 00 00 00 00,\n        FF FF FF FF FF FF\nXSDRINC                     ; Comment test\n        01010101            ; Comment test in the middle of byte_squence\n        FF                  ; Comment test in the middle of byte_squence\n        10101010 FF 01010101 FF ; Comment test\n        ,                   ; Comment test after comma\n        5,                  ; Comment test\n        00 00 00 00 00 00,  ; Comment test\n        FF FF FF FF FF FF,  ; Comment test\n        00 00 00 00 00 00,  ; Comment test\n        FF FF FF FF FF FF,  ; Comment test\n        00 00 00 00 00 00   ; Comment test\nXSDRB\n        FF FF FF FF FF FF\nXSDRC\n        FF FF FF FF FF FF\nXSDRE\n        FF FF FF FF FF FF\nXSDRTDOB\n        FF FF FF FF FF FF,\n        00 00 00 00 00 00\nXSDRTDOC\n        FF FF FF FF FF FF,\n        00 00 00 00 00 00\nXSDRTDOE\n        FF FF FF FF FF FF,\n        00 00 00 00 00 00\nXSTATE ; Comment test\n       TEST_LOGIC_RESET\nXSTATE RUN_TEST_IDLE\nXSTATE SELECT_DR_SCAN\nXSTATE CAPTURE_DR\nXSTATE SHIFT_DR\nXSTATE EXIT1_DR\nXSTATE PAUSE_DR\nXSTATE EXIT2_DR\nXSTATE UPDATE_DR\nXSTATE SELECT_IR_SCAN\nXSTATE CAPTURE_IR\nXSTATE SHIFT_IR\nXSTATE EXIT1_IR\nXSTATE PAUSE_IR\nXSTATE EXIT2_IR\nXSTATE UPDATE_IR\nXENDIR RUN_TEST_IDLE\nXENDIR PAUSE_IR\nXENDDR RUN_TEST_IDLE\nXENDDR PAUSE_DR\nXSIR2 48\n        00 00 00 00 00 00\nXCOMMENT ; Comment test\n    \"adsf f sda asdf sdaf asdf sadf\n    qwer qwer qwer qwer\n    zxcv zvcx zxcv c\"   ; Comment test\n; Comment test\nXWAIT                   ; Comment test\n    TEST_LOGIC_RESET    ; Comment test\n    RUN_TEST_IDLE       ; Comment test\n    100                 ; Comment test\nXCOMPLETE\n"
  },
  {
    "path": "extras/xsvf/XC9572XL/DeviceID.txt",
    "content": "07 20 ...................... XREPEAT, 0x20 times\n12 00 ...................... XSTATE Test-Logic-Reset\n12 01 ...................... XSTATE Run-Test/Idle\n04 00 00 00 00 ............. XRUNTEST\n02 08 fe ................... XSIR, 8 bits, value 0xfe\n08 00 00 00 20 ............. XSDRSIZE 32 bits\n01 0f ff ff ff ............. XTDOMASK\n09 00 00 00 00 f9 60 40 93 . XSDRTDO, TDI 00000000 TDO f9604093\n02 08 ff ................... XSIR, 8 bits, value 0xff\n02 08 fe ................... XSIR, 8 bits, value 0xfe\n09 00 00 00 00 f9 60 40 93 : XSDRTDO, TDI 00000000 TDO f9604093\n02 08 ff ................... XSIR, 8 bits, value 0xff\n02 08 fe ................... XSIR, 8 bits, value 0xfe\n09 00 00 00 00 f9 60 40 93 . XSDRTDO, TDI 00000000 TDO f9604093\n07 00 ...................... XREPEAT, 0 times\n07 20 ...................... XREPEAT, 0x20 times\n12 00 ...................... XSTATE Test-Logic-Reset\n12 01 ...................... XSTATE Run-Test/Idle\n04 00 00 00 00 ............. XRUNTEST\n02 08 ff ................... XSIR, 8 bits, value 0xff\n08 00 00 00 01 ............. XSDRSIZE 1 bit\n01 00 ...................... TDOMASK 0\n09 00 00 ................... XSDRTDO, TDI 0, TDO 0\n00 ......................... XCOMPLETE\n"
  },
  {
    "path": "extras/xsvf/all/idcode_simpler.xsvf.s",
    "content": "XSTATE TEST_LOGIC_RESET\nXSDRSIZE 32\nXTDOMASK\n    00 00 00 00\nXSDR\n    00 00 00 00\nXCOMPLETE\n"
  },
  {
    "path": "keywords.txt",
    "content": "########################################\n# Syntax Coloring Map\n########################################\n\n########################################\n# Datatypes (KEYWORD1)\n########################################\n\nJTAGPort\tKEYWORD1\nJTAGPortAVR\tKEYWORD1\nJTAGPortArduino\tKEYWORD1\nJTAGTAP\tKEYWORD1\nPlayXSVF\tKEYWORD1\nPlayXSVFJTAGArduino\tKEYWORD1\nPlayXSVFJTAGAVR\tKEYWORD1\nSerialComm\tKEYWORD1\nXSVFPlayerJTAG\tKEYWORD1\n\n########################################\n# Methods and Functions (KEYWORD2)\n########################################\n\nplay\tKEYWORD2\nprintAvailableRAM\tKEYWORD2\n\nImportant\tKEYWORD2\nImportantBits\tKEYWORD2\nQuit\tKEYWORD2\nprint_bytes\tKEYWORD2\n\nhandle_next_instruction\tKEYWORD2\nreached_xcomplete\tKEYWORD2\nlast_dr_size_bits\tKEYWORD2\nlast_dr_size_bytes\tKEYWORD2\nlast_tdo\tKEYWORD2\nprint_last_tdo\tKEYWORD2\n\nshift_td\tKEYWORD2\nstate_goto\tKEYWORD2\nwait_time\tKEYWORD2\n\npulse_clock\tKEYWORD2\npulse_clock_and_read_tdo\tKEYWORD2\nset_tms\tKEYWORD2\nclr_tms\tKEYWORD2\nset_tdi\tKEYWORD2\nclr_tdi\tKEYWORD2\nread_vref\tKEYWORD2\n\n########################################\n# Constants (LITERAL1)\n########################################\n\nSTATE_TEST_LOGIC_RESET\tLITERAL1\nSTATE_RUN_TEST_IDLE\tLITERAL1\nSTATE_SELECT_DR_SCAN\tLITERAL1\nSTATE_CAPTURE_DR\tLITERAL1\nSTATE_SHIFT_DR\tLITERAL1\nSTATE_EXIT1_DR\tLITERAL1\nSTATE_PAUSE_DR\tLITERAL1\nSTATE_EXIT2_DR\tLITERAL1\nSTATE_UPDATE_DR\tLITERAL1\nSTATE_SELECT_IR_SCAN\tLITERAL1\nSTATE_CAPTURE_IR\tLITERAL1\nSTATE_SHIFT_IR\tLITERAL1\nSTATE_EXIT1_IR\tLITERAL1\nSTATE_PAUSE_IR\tLITERAL1\nSTATE_EXIT2_IR\tLITERAL1\nSTATE_UPDATE_IR\tLITERAL1\n\n"
  },
  {
    "path": "lib/readme.txt",
    "content": "\nThis directory is intended for the project specific (private) libraries.\nPlatformIO will compile them to static libraries and link to executable file.\n\nThe source code of each library should be placed in separate directory, like\n\"lib/private_lib/[here are source files]\".\n\nFor example, see how can be organized `Foo` and `Bar` libraries:\n\n|--lib\n|  |--Bar\n|  |  |--docs\n|  |  |--examples\n|  |  |--src\n|  |     |- Bar.c\n|  |     |- Bar.h\n|  |--Foo\n|  |  |- Foo.c\n|  |  |- Foo.h\n|  |- readme.txt --> THIS FILE\n|- platformio.ini\n|--src\n   |- main.c\n\nThen in `src/main.c` you should use:\n\n#include <Foo.h>\n#include <Bar.h>\n\n// rest H/C/CPP code\n\nPlatformIO will find your libraries automatically, configure preprocessor's\ninclude paths and build them.\n\nMore information about PlatformIO Library Dependency Finder\n- http://docs.platformio.org/page/librarymanager/ldf.html\n"
  },
  {
    "path": "library.properties",
    "content": "name=JTAG\nversion=1.0.18\nauthor=Marcelo Jimenez <marcelo.jimenez@gmail.com>\nmaintainer=Marcelo Jimenez <marcelo.jimenez@gmail.com>\nsentence=A library to perform JTAG operations and play XSVF.\nparagraph=This library is an API to perform JTAG operations and play XSVF files.\ncategory=Device Control\nurl=https://github.com/mrjimenez/JTAG\narchitectures=avr,esp8266,esp32,renesas_uno\n"
  },
  {
    "path": "platformio.ini",
    "content": "; PlatformIO Project Configuration File\n;\n;   Build options: build flags, source filter\n;   Upload options: custom upload port, speed and extra flags\n;   Library options: dependencies, extra library storages\n;   Advanced options: extra scripting\n;\n; Please visit documentation for the other options and examples\n; http://docs.platformio.org/page/projectconf.html\n\n[platformio]\n;env_default = uno\n;env_default = esp01\n;env_default = esp32dev\n;env_default = uno, esp01, esp32dev\nsrc_dir = examples/JTAGTest\nlib_dir=..\n\n[env:uno]\nplatform = atmelavr\nboard = uno\nframework = arduino\nbuild_flags = ${common.build_flags}\n\n[env:esp01]\nplatform = espressif8266\nboard = esp01\nframework = arduino\nbuild_flags = ${common.build_flags}\n\n[env:esp32dev]\nplatform = espressif32\nboard = esp32dev\nframework = arduino\nbuild_flags = ${common.build_flags}\n\n[common]\nbuild_flags = -Isrc\n"
  },
  {
    "path": "src/ArduinoPin.cpp",
    "content": "#include \"ArduinoPin.h\"\n\n#include <Arduino.h>\n\nArduinoPin::ArduinoPin(uint8_t pin, uint8_t mode)\n: m_bit(0)\n, m_port(0)\n, m_pin(pin)\n, m_mode(mode)\n{\n\tsetBit(digitalPinToBitMask(pin));\n\tsetPort(digitalPinToPort(pin));\n\tpinMode(ArduinoPin::pin(), ArduinoPin::mode());\n}\n\nArduinoInputPin::ArduinoInputPin(uint8_t pin)\n: ArduinoPin(pin, INPUT_PULLUP)\n, m_in(portInputRegister(port()))\n{\n}\n\nArduinoOutputPin::ArduinoOutputPin(uint8_t pin)\n: ArduinoPin(pin, OUTPUT)\n, m_out(portOutputRegister(port()))\n{\n}\n"
  },
  {
    "path": "src/ArduinoPin.h",
    "content": "#ifndef ARDUINOPIN_H\n#define ARDUINOPIN_H\n\n#include <inttypes.h>\n\nclass ArduinoPin\n{\nprivate:\n\tuint8_t m_bit;\n\tuint8_t m_port;\n\n\tvoid setBit(uint8_t n) { m_bit = n; }\n\tvoid setPort(uint8_t n) { m_port = n; }\n\n\tuint8_t m_pin;\n\tuint8_t m_mode;\n\nprotected:\n\tuint8_t getBit() const { return m_bit; }\n\tuint8_t port() const { return m_port; }\n\npublic:\n\tArduinoPin(uint8_t pin, uint8_t mode);\n\t~ArduinoPin() {}\n\n\tuint8_t pin() const { return m_pin; }\n\n\tuint8_t mode() const { return m_mode; }\n};\n\n#ifdef ARDUINO_ARCH_AVR\n#define GPIO_REGISTER_TYPE uint8_t\n#elif defined ARDUINO_ARCH_ESP8266\n#define GPIO_REGISTER_TYPE uint32_t\n#elif defined ARDUINO_ARCH_ESP32\n#define GPIO_REGISTER_TYPE uint32_t\n#elif defined ARDUINO_ARCH_RENESAS\n#define GPIO_REGISTER_TYPE uint16_t\n#else\n#define GPIO_REGISTER_TYPE uint8_t\n#endif\n\nclass ArduinoInputPin : public ArduinoPin\n{\nprivate:\n\tconst volatile GPIO_REGISTER_TYPE *m_in;\n\n\tconst volatile GPIO_REGISTER_TYPE *in() const { return m_in; }\n\npublic:\n\tArduinoInputPin(uint8_t pin);\n\t~ArduinoInputPin() {}\n\n\tuint8_t read() const { return *in() & getBit(); }\n};\n\nclass ArduinoOutputPin : public ArduinoPin\n{\nprivate:\n\tvolatile GPIO_REGISTER_TYPE *m_out;\n\n\tvolatile GPIO_REGISTER_TYPE *out() const { return m_out; }\n\npublic:\n\tArduinoOutputPin(uint8_t pin);\n\t~ArduinoOutputPin() {}\n\n\tvoid clr() const { *out() &= ~getBit(); }\n\tvoid set() const { *out() |= getBit(); }\n};\n\n#endif // ARDUINOPIN_H\n"
  },
  {
    "path": "src/JTAG.h",
    "content": "#ifndef JTAG_H\n#define JTAG_H\n\n#include \"PlayXSVFJTAGArduino.h\"\n// #include \"PlayXSVFJTAGAVR.h\"\n\n#endif /* JTAG_H */\n"
  },
  {
    "path": "src/JTAGPort.cpp",
    "content": "#include \"JTAGPort.h\"\n"
  },
  {
    "path": "src/JTAGPort.h",
    "content": "#ifndef JTAGPORT_H\n#define JTAGPORT_H\n\n/*\n * Making this class virtual makes the code bigger (18 bytes) and slower. But\n * it is the right thing to do if we want to reuse the code in a non-messy way.\n */\n\nclass JTAGPort\n{\npublic:\n\tJTAGPort() {}\n\tvirtual ~JTAGPort() {}\n\n\tvirtual void pulse_clock() = 0;\n\tvirtual bool pulse_clock_and_read_tdo() = 0;\n\tvirtual void set_tms() = 0;\n\tvirtual void clr_tms() = 0;\n\tvirtual void set_tdi() = 0;\n\tvirtual void clr_tdi() = 0;\n\tvirtual bool read_vref() const = 0;\n};\n\n#endif // JTAGPORT_H\n"
  },
  {
    "path": "src/JTAGPortAVR.cpp",
    "content": "#include \"JTAGPortAVR.h\"\n"
  },
  {
    "path": "src/JTAGPortAVR.h",
    "content": "#ifdef ARDUINO_ARCH_AVR\n\n\t#ifndef JTAGPORTAVR_H\n\t\t#define JTAGPORTAVR_H\n\n\t\t#include \"JTAGPort.h\"\n\n\t\t#include <Arduino.h>\n\n/*\n * This is a faster version of the JTAGPort, but requires a fixed pin\n * assignment.\n */\nclass JTAGPortAVR : public JTAGPort\n{\nprivate:\n\tenum {\n\t\tTMS = _BV(PINB0), // Arduino pin 8\n\t\tTDI = _BV(PINB1), // Arduino pin 9\n\t\tTDO = _BV(PINB2), // Arduino pin 10\n\t\tTCK = _BV(PINB3), // Arduino pin 11\n\t\tVREF = _BV(PINB4) // Arduino pin 12\n\t};\n\n\t// The current PORTB state. We write this only when we twiddle TCK.\n\tuint8_t m_portb;\n\npublic:\n\tJTAGPortAVR()\n\t: m_portb(0)\n\t{\n\t\tDDRB = TMS | TDI | TCK;\n\t}\n\n\t~JTAGPortAVR() {}\n\n\tvoid pulse_clock()\n\t{\n\t\tclr_port(TCK);\n\t\tdelayMicroseconds(1);\n\t\tset_port(TCK);\n\t}\n\n\tbool pulse_clock_and_read_tdo()\n\t{\n\t\tclr_port(TCK);\n\t\tdelayMicroseconds(1);\n\t\tuint8_t pinb = PINB;\n\t\tset_port(TCK);\n\n\t\treturn pinb & TDO;\n\t}\n\n\tvoid set_tms() { set_port(TMS); }\n\tvoid clr_tms() { clr_port(TMS); }\n\tvoid set_tdi() { set_port(TDI); }\n\tvoid clr_tdi() { clr_port(TDI); }\n\tbool read_vref() const { return PINB & VREF; }\n\nprivate:\n\tvoid write_portb_if_tck(uint8_t pin)\n\t{\n\t\tif (pin == TCK) {\n\t\t\tPORTB = m_portb;\n\t\t}\n\t}\n\n\tvoid set_port(uint8_t pin)\n\t{\n\t\tm_portb |= pin;\n\t\twrite_portb_if_tck(pin);\n\t}\n\n\tvoid clr_port(uint8_t pin)\n\t{\n\t\tm_portb &= ~pin;\n\t\twrite_portb_if_tck(pin);\n\t}\n};\n\n\t#endif // JTAGPORTAVR_H\n\n#endif // ARDUINO_ARCH_AVR\n"
  },
  {
    "path": "src/JTAGPortArduino.cpp",
    "content": "#include \"JTAGPortArduino.h\"\n\nJTAGPortArduino::JTAGPortArduino(uint8_t tms, uint8_t tdi, uint8_t tdo,\n\t\t\t\t uint8_t tck, uint8_t vref, bool vref_is_analog)\n: m_tms(tms)\n, m_tdi(tdi)\n, m_tdo(tdo)\n, m_tck(tck)\n, m_vref(vref)\n, m_vref_is_analog(vref_is_analog)\n{\n\tJTAGPortArduino::tck().set();\n}\n"
  },
  {
    "path": "src/JTAGPortArduino.h",
    "content": "#ifndef JTAGPORTARDUINO_H\n#define JTAGPORTARDUINO_H\n\n#include \"JTAGPort.h\"\n\n#include <Arduino.h>\n\n#include \"ArduinoPin.h\"\n\n/*\n * This is a slight slower version of JTAGPort, but does not require a\n * particular pin assignment.\n */\nclass JTAGPortArduino : public JTAGPort\n{\nprivate:\n\tArduinoOutputPin m_tms;\n\tArduinoOutputPin m_tdi;\n\tArduinoInputPin m_tdo;\n\tArduinoOutputPin m_tck;\n\tArduinoInputPin m_vref;\n\tbool m_vref_is_analog;\n\n\tconst ArduinoOutputPin &tms() const { return m_tms; }\n\tconst ArduinoOutputPin &tdi() const { return m_tdi; }\n\tconst ArduinoInputPin &tdo() const { return m_tdo; }\n\tconst ArduinoOutputPin &tck() const { return m_tck; }\n\tconst ArduinoInputPin &vref() const { return m_vref; }\n\tbool vrefIsAnalog() const { return m_vref_is_analog; }\n\npublic:\n\tJTAGPortArduino(uint8_t tms, uint8_t tdi, uint8_t tdo, uint8_t tck,\n\t\t\tuint8_t vref, bool vref_is_analog = false);\n\n\t~JTAGPortArduino() {}\n\n\tvoid pulse_clock()\n\t{\n\t\ttck().clr();\n\t\tdelayMicroseconds(1);\n\t\ttck().set();\n\t}\n\n\tbool pulse_clock_and_read_tdo()\n\t{\n\t\ttck().clr();\n\t\tdelayMicroseconds(1);\n\t\tuint8_t ret = tdo().read();\n\t\ttck().set();\n\n\t\treturn ret;\n\t}\n\n\tvoid set_tms() { tms().set(); }\n\tvoid clr_tms() { tms().clr(); }\n\tvoid set_tdi() { tdi().set(); }\n\tvoid clr_tdi() { tdi().clr(); }\n\tbool read_vref() const\n\t{\n\t\tif (vrefIsAnalog()) {\n\t\t\t// Use 1.0 V as threshold\n\t\t\treturn analogRead(vref().pin()) * 5 / 1023 > 1;\n\t\t} else {\n\t\t\treturn vref().read();\n\t\t}\n\t}\n};\n\n#endif // JTAGPORTARDUINO_H\n"
  },
  {
    "path": "src/JTAGTAP.cpp",
    "content": "\n#include \"JTAGTAP.h\"\n\n/*\n * Low nibble : TMS == 0\n * High nibble: TMS == 1\n */\n\n#define TMS_T(TMS_HIGH_STATE, TMS_LOW_STATE)                                   \\\n\t(((TMS_HIGH_STATE) << 4) | (TMS_LOW_STATE))\n\nstatic const uint8_t tms_transitions[] = {\n    /* STATE_TEST_LOGIC_RESET */ TMS_T(STATE_TEST_LOGIC_RESET,\n\t\t\t\t       STATE_RUN_TEST_IDLE),\n    /* STATE_RUN_TEST_IDLE    */\n    TMS_T(STATE_SELECT_DR_SCAN, STATE_RUN_TEST_IDLE),\n    /* STATE_SELECT_DR_SCAN   */ TMS_T(STATE_SELECT_IR_SCAN, STATE_CAPTURE_DR),\n    /* STATE_CAPTURE_DR       */ TMS_T(STATE_EXIT1_DR, STATE_SHIFT_DR),\n    /* STATE_SHIFT_DR         */ TMS_T(STATE_EXIT1_DR, STATE_SHIFT_DR),\n    /* STATE_EXIT1_DR         */ TMS_T(STATE_UPDATE_DR, STATE_PAUSE_DR),\n    /* STATE_PAUSE_DR         */ TMS_T(STATE_EXIT2_DR, STATE_PAUSE_DR),\n    /* STATE_EXIT2_DR         */ TMS_T(STATE_UPDATE_DR, STATE_SHIFT_DR),\n    /* STATE_UPDATE_DR        */\n    TMS_T(STATE_SELECT_DR_SCAN, STATE_RUN_TEST_IDLE),\n    /* STATE_SELECT_IR_SCAN   */\n    TMS_T(STATE_TEST_LOGIC_RESET, STATE_CAPTURE_IR),\n    /* STATE_CAPTURE_IR       */ TMS_T(STATE_EXIT1_IR, STATE_SHIFT_IR),\n    /* STATE_SHIFT_IR         */ TMS_T(STATE_EXIT1_IR, STATE_SHIFT_IR),\n    /* STATE_EXIT1_IR         */ TMS_T(STATE_UPDATE_IR, STATE_PAUSE_IR),\n    /* STATE_PAUSE_IR         */ TMS_T(STATE_EXIT2_IR, STATE_PAUSE_IR),\n    /* STATE_EXIT2_IR         */ TMS_T(STATE_UPDATE_IR, STATE_SHIFT_IR),\n    /* STATE_UPDATE_IR        */\n    TMS_T(STATE_SELECT_DR_SCAN, STATE_RUN_TEST_IDLE),\n};\n\n#define BITSTR(A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)                 \\\n\t(((uint16_t)(A) << 15) | ((uint16_t)(B) << 14) |                       \\\n\t ((uint16_t)(C) << 13) | ((uint16_t)(D) << 12) |                       \\\n\t ((uint16_t)(E) << 11) | ((uint16_t)(F) << 10) |                       \\\n\t ((uint16_t)(G) << 9) | ((uint16_t)(H) << 8) | ((uint16_t)(I) << 7) |  \\\n\t ((uint16_t)(J) << 6) | ((uint16_t)(K) << 5) | ((uint16_t)(L) << 4) |  \\\n\t ((uint16_t)(M) << 3) | ((uint16_t)(N) << 2) | ((uint16_t)(O) << 1) |  \\\n\t ((uint16_t)(P) << 0))\n\n// clang-format off\n/*\n * The index of this vector is the current state. The i-th bit tells you the\n * value TMS must assume in order to go to state \"i\".\n\n------------------------------------------------------------------------------------------------------------\n|                        |   || F | E | D | C || B | A | 9 | 8 || 7 | 6 | 5 | 4 || 3 | 2 | 1 | 0 ||   HEX  |\n------------------------------------------------------------------------------------------------------------\n| STATE_TEST_LOGIC_RESET | 0 || 0 | 0 | 0 | 0 || 0 | 0 | 0 | 0 || 0 | 0 | 0 | 0 || 0 | 0 | 0 | 1 || 0x0001 |\n| STATE_RUN_TEST_IDLE    | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 0 | 1 || 0xFFFD |\n| STATE_SELECT_DR_SCAN   | 2 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 0 || 0 | 0 | 0 | 0 || 0 | x | 1 | 1 || 0xFE03 |\n| STATE_CAPTURE_DR       | 3 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 0 || x | 1 | 1 | 1 || 0xFFE7 |\n| STATE_SHIFT_DR         | 4 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 0 || 1 | 1 | 1 | 1 || 0xFFEF |\n| STATE_EXIT1_DR         | 5 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0 | 0 | x | 0 || 1 | 1 | 1 | 1 || 0xFF0F |\n| STATE_PAUSE_DR         | 6 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 0 | 1 | 1 || 1 | 1 | 1 | 1 || 0xFFBF |\n| STATE_EXIT2_DR         | 7 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || x | 0 | 0 | 0 || 1 | 1 | 1 | 1 || 0xFF0F |\n| STATE_UPDATE_DR        | 8 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | x || 1 | 1 | 1 | 1 || 1 | 1 | 0 | 1 || 0xFEFD |\n| STATE_SELECT_IR_SCAN   | 9 || 0 | 0 | 0 | 0 || 0 | 0 | x | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0x01FF |\n| STATE_CAPTURE_IR       | A || 1 | 1 | 1 | 1 || 0 | x | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0xF3FF |\n| STATE_SHIFT_IR         | B || 1 | 1 | 1 | 1 || 0 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0xF7FF |\n| STATE_EXIT1_IR         | C || 1 | 0 | 0 | x || 0 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0x87FF |\n| STATE_PAUSE_IR         | D || 1 | 1 | 0 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0xDFFF |\n| STATE_EXIT2_IR         | E || 1 | x | 0 | 0 || 0 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 0x87FF |\n| STATE_UPDATE_IR        | F || x | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 1 | 1 || 1 | 1 | 0 | 1 || 0x7FFD |\n------------------------------------------------------------------------------------------------------------\n\n*/\nstatic const uint16_t tms_map[] = {\n/* STATE_TEST_LOGIC_RESET */ BITSTR(  0, 0, 0, 0,   0, 0, 0, 0,   0, 0, 0, 0,   0, 0, 0, 1  ),\n/* STATE_RUN_TEST_IDLE    */ BITSTR(  1, 1, 1, 1,   1, 1, 1, 1,   1, 1, 1, 1,   1, 1, 0, 1  ),\n/* STATE_SELECT_DR_SCAN   */ BITSTR(  1, 1, 1, 1,   1, 1, 1, 0,   0, 0, 0, 0,   0, 0, 1, 1  ),\n/* STATE_CAPTURE_DR       */ BITSTR(  1, 1, 1, 1,   1, 1, 1, 1,   1, 1, 1, 0,   0, 1, 1, 1  ),\n/* STATE_SHIFT_DR         */ BITSTR(  1, 1, 1, 1,   1, 1, 1, 1,   1, 1, 1, 0,   1, 1, 1, 1  ),\n/* STATE_EXIT1_DR         */ BITSTR(  1, 1, 1, 1,   1, 1, 1, 1,   0, 0, 0, 0,   1, 1, 1, 1  ),\n/* STATE_PAUSE_DR         */ BITSTR(  1, 1, 1, 1,   1, 1, 1, 1,   1, 0, 1, 1,   1, 1, 1, 1  ),\n/* STATE_EXIT2_DR         */ BITSTR(  1, 1, 1, 1,   1, 1, 1, 1,   0, 0, 0, 0,   1, 1, 1, 1  ),\n/* STATE_UPDATE_DR        */ BITSTR(  1, 1, 1, 1,   1, 1, 1, 0,   1, 1, 1, 1,   1, 1, 0, 1  ),\n/* STATE_SELECT_IR_SCAN   */ BITSTR(  0, 0, 0, 0,   0, 0, 0, 1,   1, 1, 1, 1,   1, 1, 1, 1  ),\n/* STATE_CAPTURE_IR       */ BITSTR(  1, 1, 1, 1,   0, 0, 1, 1,   1, 1, 1, 1,   1, 1, 1, 1  ),\n/* STATE_SHIFT_IR         */ BITSTR(  1, 1, 1, 1,   0, 1, 1, 1,   1, 1, 1, 1,   1, 1, 1, 1  ),\n/* STATE_EXIT1_IR         */ BITSTR(  1, 0, 0, 0,   0, 1, 1, 1,   1, 1, 1, 1,   1, 1, 1, 1  ),\n/* STATE_PAUSE_IR         */ BITSTR(  1, 1, 0, 1,   1, 1, 1, 1,   1, 1, 1, 1,   1, 1, 1, 1  ),\n/* STATE_EXIT2_IR         */ BITSTR(  1, 0, 0, 0,   0, 1, 1, 1,   1, 1, 1, 1,   1, 1, 1, 1  ),\n/* STATE_UPDATE_IR        */ BITSTR(  0, 1, 1, 1,   1, 1, 1, 1,   1, 1, 1, 1,   1, 1, 0, 1  ),\n};\n// clang-format on\n\nJTAGTAP::JTAGTAP(SerialComm &s, JTAGPort &j)\n: m_serial_comm(s)\n, m_jtag_port(j)\n, m_current_state(STATE_TEST_LOGIC_RESET)\n{\n\tif (!jtagPort().read_vref()) {\n\t\tserialComm().Quit(\n\t\t    -10, F(\"VREF is not present. Please, check the cable.\"));\n\t}\n}\n\nvoid JTAGTAP::shift_td(uint8_t *input_data, uint8_t *output_data,\n\t\t       uint32_t data_bits, bool must_end)\n{\n\tuint32_t bit_count = data_bits;\n\tuint32_t byte_count = numBytes(data_bits);\n\tserialComm().Debug(F(\"... shifting %lu bits (%lu bytes)\"), data_bits,\n\t\t\t   byte_count);\n\tserialComm().DebugBytes(F(\"... data:     \"), input_data, byte_count);\n\tfor (uint32_t i = 0; i < byte_count; ++i) {\n\t\tuint8_t byte_out = input_data[byte_count - 1 - i];\n\t\tuint8_t tdo_byte = 0;\n\t\tfor (int j = 0; j < 8 && bit_count-- > 0; ++j) {\n\t\t\tif (bit_count == 0 && must_end) {\n\t\t\t\tjtagPort().set_tms();\n\t\t\t\tstate_ack(1);\n\t\t\t}\n\t\t\tif (byte_out & 1) {\n\t\t\t\tjtagPort().set_tdi();\n\t\t\t} else {\n\t\t\t\tjtagPort().clr_tdi();\n\t\t\t}\n\t\t\tbyte_out >>= 1;\n\t\t\tbool tdo = jtagPort().pulse_clock_and_read_tdo();\n\t\t\ttdo_byte |= tdo << j;\n\t\t}\n\t\toutput_data[byte_count - 1 - i] = tdo_byte;\n\t}\n}\n\nvoid JTAGTAP::state_ack(bool tms)\n{\n\tif (tms) {\n\t\tsetCurrentState((tms_transitions[currentState()] >> 4) & 0xf);\n\t} else {\n\t\tsetCurrentState(tms_transitions[currentState()] & 0xf);\n\t}\n}\n\nvoid JTAGTAP::state_step(bool tms)\n{\n\tif (tms) {\n\t\tjtagPort().set_tms();\n\t} else {\n\t\tjtagPort().clr_tms();\n\t}\n\tjtagPort().pulse_clock();\n\tstate_ack(tms);\n}\n\nvoid JTAGTAP::state_goto(int state)\n{\n\tif (state == STATE_TEST_LOGIC_RESET) {\n\t\tfor (int i = 0; i < 5; ++i) {\n\t\t\tstate_step(true);\n\t\t}\n\t} else {\n\t\twhile (currentState() != state) {\n\t\t\tstate_step((tms_map[currentState()] >> state) & 1);\n\t\t}\n\t}\n}\n\nvoid JTAGTAP::wait_time(uint32_t microseconds)\n{\n\tserialComm().Debug(F(\"... waiting %ld microseconds\"), microseconds);\n\tuint32_t until = micros() + microseconds;\n\twhile (microseconds--) {\n\t\tjtagPort().pulse_clock();\n\t}\n\twhile (micros() < until) {\n\t\tjtagPort().pulse_clock();\n\t}\n}\n"
  },
  {
    "path": "src/JTAGTAP.h",
    "content": "\n#ifndef JTAGTAP_H\n#define JTAGTAP_H\n\n#include \"JTAGPort.h\"\n#include \"SerialComm.h\"\n\nenum e_TAPState {\n\tSTATE_TEST_LOGIC_RESET = 0,\n\tSTATE_RUN_TEST_IDLE,  //  1\n\tSTATE_SELECT_DR_SCAN, //  2\n\tSTATE_CAPTURE_DR,     //  3\n\tSTATE_SHIFT_DR,\t      //  4\n\tSTATE_EXIT1_DR,\t      //  5\n\tSTATE_PAUSE_DR,\t      //  6\n\tSTATE_EXIT2_DR,\t      //  7\n\tSTATE_UPDATE_DR,      //  8\n\tSTATE_SELECT_IR_SCAN, //  9\n\tSTATE_CAPTURE_IR,     // 10\n\tSTATE_SHIFT_IR,\t      // 11\n\tSTATE_EXIT1_IR,\t      // 12\n\tSTATE_PAUSE_IR,\t      // 13\n\tSTATE_EXIT2_IR,\t      // 14\n\tSTATE_UPDATE_IR,      // 15\n};\n\nclass JTAGTAP\n{\nprivate:\n\tSerialComm &m_serial_comm;\n\tJTAGPort &m_jtag_port;\n\tuint8_t m_current_state;\n\n\tSerialComm &serialComm() { return m_serial_comm; }\n\n\tJTAGPort &jtagPort() { return m_jtag_port; }\n\n\tuint8_t currentState() const { return m_current_state; }\n\tvoid setCurrentState(uint8_t n) { m_current_state = n; }\n\n\tstatic uint32_t numBytes(uint32_t numBits)\n\t{\n\t\treturn (numBits + 7) >> 3;\n\t}\n\n\tvoid state_ack(bool tms);\n\n\tvoid state_step(bool tms);\n\npublic:\n\tJTAGTAP(SerialComm &s, JTAGPort &j);\n\n\t~JTAGTAP() {}\n\n\tvoid shift_td(uint8_t *input_data, uint8_t *output_data,\n\t\t      uint32_t data_bits, bool must_end);\n\tvoid state_goto(int state);\n\tvoid wait_time(uint32_t microseconds);\n};\n\n#endif // JTAGTAP_H\n"
  },
  {
    "path": "src/PlayXSVF.cpp",
    "content": "\n#include \"PlayXSVF.h\"\n\n#include \"SerialComm.h\"\n#include \"XSVFPlayer.h\"\n\nint PlayXSVF::play()\n{\n\tSerialComm &s(serialComm());\n\tXSVFPlayer &p(xsvfPlayer());\n\tint ret = 0;\n\tuint32_t n = 0;\n\twhile (true) {\n\t\t// p.test_code(2);\n\t\t++n;\n\t\tif (!p.handle_next_instruction()) {\n\t\t\tret = p.reached_xcomplete();\n\t\t\tif (ret) {\n\t\t\t\ts.Important(F(\"********\"));\n\t\t\t\ts.Important(F(\"Success!\"));\n\t\t\t\ts.Important(F(\"********\"));\n\t\t\t} else {\n\t\t\t\ts.Important(F(\"*****************************\"));\n\t\t\t\ts.Important(F(\"Failure at instruction #%5d\"),\n\t\t\t\t\t    n);\n\t\t\t\ts.Important(F(\"*****************************\"));\n\t\t\t}\n\t\t\tp.print_last_tdo();\n\t\t\tbreak;\n\t\t}\n\t\tyield();\n\t}\n\ts.Important(F(\"Processed %d instructions.\"), n);\n\n\treturn ret;\n}\n\nvoid PlayXSVF::printAvailableRAM() { ::printAvailableRAM(serialComm()); }\n\nvoid printAvailableRAM(Stream &s)\n{\n\ts.print(F(\"Available RAM: \"));\n\ts.print(availableRAM());\n\ts.println(F(\" bytes.\"));\n}\n\nvoid printAvailableRAM(SerialComm &s)\n{\n\ts.Important(F(\"Available RAM: %d bytes.\"), availableRAM());\n}\n\n// variables created by the build process when compiling the sketch\nextern int __bss_end;\nextern void *__brkval;\n\n// function to return the amount of free RAM\nint availableRAM()\n{\n\tint freeValue;\n\tif ((int)__brkval == 0)\n\t\tfreeValue = ((int)&freeValue) - ((int)&__bss_end);\n\telse\n\t\tfreeValue = ((int)&freeValue) - ((int)__brkval);\n\treturn freeValue;\n}\n"
  },
  {
    "path": "src/PlayXSVF.h",
    "content": "\n#ifndef PLAYXSVF_H\n#define PLAYXSVF_H\n\n#include <Arduino.h> // for Stream\n\nclass SerialComm;\nclass XSVFPlayer;\n\nclass PlayXSVF\n{\nprotected:\n\tvirtual SerialComm &serialComm() = 0;\n\tvirtual XSVFPlayer &xsvfPlayer() = 0;\n\npublic:\n\tPlayXSVF() {}\n\t~PlayXSVF() {}\n\n\tint play();\n\n\tvoid printAvailableRAM();\n};\n\nvoid printAvailableRAM(Stream &s);\nvoid printAvailableRAM(SerialComm &s);\nint availableRAM();\n\n#endif // PLAYXSVF_H\n"
  },
  {
    "path": "src/PlayXSVFJTAGAVR.cpp",
    "content": "#ifdef ARDUINO_ARCH_AVR\n\n#include \"PlayXSVFJTAGAVR.h\"\n\nPlayXSVFJTAGAVR::PlayXSVFJTAGAVR(Stream &s, int stream_buffer_size)\n: PlayXSVF()\n, m_serial_comm(s, stream_buffer_size)\n, m_jtag_port()\n, m_xsvf_player(serialComm(), jtagPort())\n{\n}\n\n#endif // ARDUINO_ARCH_AVR\n"
  },
  {
    "path": "src/PlayXSVFJTAGAVR.h",
    "content": "#ifdef ARDUINO_ARCH_AVR\n\n#ifndef PLAYXSVFJTAGAVR_H\n#define PLAYXSVFJTAGAVR_H\n\n#include \"JTAGPortAVR.h\"\n#include \"PlayXSVF.h\"\n#include \"SerialComm.h\"\n#include \"XSVFPlayerJTAG.h\"\n\nclass PlayXSVFJTAGAVR : public PlayXSVF\n{\nprivate:\n\tSerialComm m_serial_comm;\n\t// This JTAG tap is a bit faster, but the pins are hardwired.\n\tJTAGPortAVR m_jtag_port;\n\tXSVFPlayerJTAG m_xsvf_player;\n\n\tJTAGPort &jtagPort() { return m_jtag_port; }\n\nprotected:\n\tXSVFPlayer &xsvfPlayer() { return m_xsvf_player; }\n\npublic:\n\tPlayXSVFJTAGAVR(Stream &s, int stream_buffer_size);\n\t~PlayXSVFJTAGAVR() {}\n\tSerialComm &serialComm() { return m_serial_comm; }\n};\n\n#endif // PLAYXSVFJTAGAVR_H\n\n#endif // ARDUINO_ARCH_AVR\n"
  },
  {
    "path": "src/PlayXSVFJTAGArduino.cpp",
    "content": "\n#include \"PlayXSVFJTAGArduino.h\"\n\nPlayXSVFJTAGArduino::PlayXSVFJTAGArduino(Stream &s, int stream_buffer_size,\n\t\t\t\t\t uint8_t tms, uint8_t tdi, uint8_t tdo,\n\t\t\t\t\t uint8_t tck, uint8_t vref,\n\t\t\t\t\t bool vref_is_analog)\n: PlayXSVF()\n, m_serial_comm(s, stream_buffer_size)\n, m_jtag_port(tms, tdi, tdo, tck, vref, vref_is_analog)\n, m_xsvf_player(serialComm(), jtagPort())\n{\n}\n"
  },
  {
    "path": "src/PlayXSVFJTAGArduino.h",
    "content": "#ifndef PLAYXSVFJTAGARDUINO_H\n#define PLAYXSVFJTAGARDUINO_H\n\n#include \"JTAGPortArduino.h\"\n#include \"PlayXSVF.h\"\n#include \"SerialComm.h\"\n#include \"XSVFPlayerJTAG.h\"\nclass PlayXSVFJTAGArduino : public PlayXSVF\n{\nprivate:\n\tSerialComm m_serial_comm;\n\t// This JTAG tap is a bit slower, but you can use any arduino pin.\n\tJTAGPortArduino m_jtag_port;\n\tXSVFPlayerJTAG m_xsvf_player;\n\n\tJTAGPort &jtagPort() { return m_jtag_port; }\n\nprotected:\n\tXSVFPlayer &xsvfPlayer() { return m_xsvf_player; }\n\npublic:\n\tPlayXSVFJTAGArduino(Stream &s, int stream_buffer_size, uint8_t tms,\n\t\t\t    uint8_t tdi, uint8_t tdo, uint8_t tck, uint8_t vref,\n\t\t\t    bool vref_is_analog = false);\n\t~PlayXSVFJTAGArduino() {}\n\tSerialComm &serialComm() { return m_serial_comm; }\n};\n\n#endif // PLAYXSVFJTAGARDUINO_H\n"
  },
  {
    "path": "src/SerialComm.cpp",
    "content": "\n#include \"SerialComm.h\"\n\n#ifdef __AVR__\n#define PLATFORM_VSNPRINTF(...) vsnprintf_P(__VA_ARGS__)\n#else\n#define PLATFORM_VSNPRINTF(...) vsnprintf(__VA_ARGS__)\n#endif\n\nSerialComm::SerialComm(Stream &s, int stream_buffer_size)\n: m_serial(s)\n, m_already_asked(false)\n, m_stream_buffer_capacity(stream_buffer_size - 1)\n//                                                                // Benchmark:\n//                                                                // send a file\n//                                                                of size 22846\n//                                                                bytes.\n//, m_stream_buffer_threshold(m_stream_buffer_capacity)           //  6.41 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity * 15 / 16) //  6.21 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity * 14 / 16) //  6.18 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity * 13 / 16) //  6.13 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity * 12 / 16) //  6.02 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity * 11 / 16) //  6.02 s\n, m_stream_buffer_threshold(m_stream_buffer_capacity * 10 / 16) //  6.02 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  9 / 16) //  6.02 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  8 / 16) //  6.03 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  7 / 16) //  6.03 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  6 / 16) //  6.04 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  5 / 16) //  6.06 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  4 / 16) //  6.07 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  3 / 16) //  6.11 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  2 / 16) //  6.17 s\n//, m_stream_buffer_threshold(m_stream_buffer_capacity *  1 / 16) //  6.37 s\n//, m_stream_buffer_threshold(1)                                  // 22.81 s\n, m_stream_buffer_checkpoint(0)\n, m_stream_count(0)\n{\n\tif (streamBufferThreshold() == 0) {\n\t\tsetStreamBufferThreshold(streamBufferCapacity());\n\t}\n\twhile (serial().available()) {\n\t\tserial().read();\n\t}\n\tReady(F(\"XSVF\"));\n}\n\nSerialComm::~SerialComm() {}\n\nvoid SerialComm::ask_for_data()\n{\n\tif (!alreadyAsked()) {\n\t\tcheckAndRequestData(true);\n\t\tsetAlreadyAsked();\n\t}\n}\n\nvoid SerialComm::Important(const __FlashStringHelper *ifsh, ...)\n{\n\tva_list args;\n\tva_start(args, ifsh);\n\tPLATFORM_VSNPRINTF(formatBuffer(), S_FORMAT_BUFFER_SIZE,\n\t\t\t   (const char *)ifsh, args);\n\tva_end(args);\n\n\tserial().print(F(\"!\"));\n\tserial().println(formatBuffer());\n}\n\nvoid SerialComm::ImportantBits(const __FlashStringHelper *msg,\n\t\t\t       const uint8_t *pb, uint32_t count_bits)\n{\n\tuint32_t count_bytes = (count_bits + 7) >> 3;\n\tserial().print(msg);\n\tprint_bytes(pb, count_bytes);\n\tserial().print(F(\"/\"));\n\tserial().print(count_bits);\n\tserial().println(F(\" bits\"));\n}\n\nvoid SerialComm::checkAndRequestData(bool force)\n{\n\tif (force || streamCount() % streamBufferCapacity() ==\n\t\t\t streamBufferCheckpoint()) {\n\t\tupdateCheckpoint();\n\t\tint n =\n\t\t    force ? streamBufferCapacity() : streamBufferThreshold();\n\t\tsnprintf(sendMsg(), sizeofSendMsg(), \"S%-4d\", n);\n\t\tserial().print(F(\"\\r\\n\"));\n\t\tserial().println(sendMsg());\n\t\tif (DEBUG) {\n\t\t\t// Print this so that an interrupted line is\n\t\t\t// still recognized by the python script.\n\t\t\tserial().print(F(\"D.   >>>   \"));\n\t\t}\n\t}\n}\n\nint SerialComm::nextByte()\n{\n\t// Wait for TIMEOUT milliseconds if the buffer is empty.\n\t// unsigned const int TIMEOUT = 1000; // milliseconds\n\tunsigned const int TIMEOUT = 3000; // milliseconds\n\tunsigned long end_time = millis() + TIMEOUT;\n\twhile (serial().available() <= 0 && millis() < end_time) {\n\t}\n\t// Return an invalid instruction\n\tint c = -1;\n\tint n = serial().available();\n\tif (n > 0) {\n\t\tc = serial().read();\n\t\tincStreamCount();\n\t\tcheckAndRequestData();\n\t} else {\n\t\tImportant(F(\"count: %ld, threshold: %d, mod: %ld, avail: %d\"),\n\t\t\t  streamCount(), streamBufferThreshold(),\n\t\t\t  streamCount() % streamBufferCapacity(), n);\n\t}\n\n\treturn c;\n}\n\n// Not needed, left here as example.\n#if 0\nvoid SerialComm::CopyToFlashBuffer(const __FlashStringHelper *ifsh)\n{\n\tPGM_P p = reinterpret_cast<PGM_P>(ifsh);\n\t// Truncate message to the flash buffer size\n\tstrncpy_P(flashBuffer(), p, S_FLASH_BUFFER_SIZE);\n\n\t// Left here as example of use of pgm_read_byte().\n\t/*\n\tchar *s = flashBuffer();\n\tchar c;\n\tuint32_t n = S_FLASH_BUFFER_SIZE;\n\twhile (n-- && (c = pgm_read_byte(p++))) {\n\t\t*s++ = c;\n\t}\n\tif (n) {\n\t\t*s = 0;\n\t} else {\n\t\t*--s = 0;\n\t}\n\t*/\n}\n#endif\n\n#if DEBUG == 1\n\nvoid SerialComm::DebugStartMessage() const { serial().print(F(\"D\")); }\n\nvoid SerialComm::DebugContMessage(const __FlashStringHelper *ifsh, ...)\n{\n\tva_list args;\n\tva_start(args, ifsh);\n\tPLATFORM_VSNPRINTF(formatBuffer(), S_FORMAT_BUFFER_SIZE,\n\t\t\t   (const char *)ifsh, args);\n\tva_end(args);\n\tserial().print(formatBuffer());\n}\n\nvoid SerialComm::Debug(const __FlashStringHelper *ifsh, ...)\n{\n\tva_list args;\n\tva_start(args, ifsh);\n\tPLATFORM_VSNPRINTF(formatBuffer(), S_FORMAT_BUFFER_SIZE,\n\t\t\t   (const char *)ifsh, args);\n\tva_end(args);\n\tDebugStartMessage();\n\tserial().println(formatBuffer());\n}\n\nvoid SerialComm::DebugBytes(const __FlashStringHelper *s, const uint8_t *b,\n\t\t\t    uint8_t n)\n{\n\tDebugStartMessage();\n\tserial().print(s);\n\tprint_bytes(b, n);\n\tserial().println();\n}\n\n#else\n\nvoid SerialComm::DebugStartMessage() const {}\nvoid SerialComm::DebugContMessage(const __FlashStringHelper * /*ifsh*/, ...) {}\nvoid SerialComm::Debug(const __FlashStringHelper * /*fmt*/, ...) {}\nvoid SerialComm::DebugBytes(const __FlashStringHelper * /*s*/,\n\t\t\t    const uint8_t * /*b*/, uint8_t /*n*/)\n{\n}\n\n#endif\n\nvoid SerialComm::Ready(const __FlashStringHelper *message) const\n{\n\tserial().print(F(\"\\r\\nR\"));\n\tserial().println(message);\n}\n\nvoid SerialComm::Quit(int error_code, const __FlashStringHelper *message) const\n{\n\tserial().print(F(\"\\r\\nQ\"));\n\tserial().print(error_code);\n\tserial().print(F(\",\"));\n\tserial().println(message);\n}\n\nvoid SerialComm::print_bytes(const uint8_t *pb, uint32_t count, bool lf)\n{\n\tif (!count) {\n\t\tif (lf) {\n\t\t\tserial().println(F(\" \"));\n\t\t} else {\n\t\t\tserial().print(F(\" \"));\n\t\t}\n\t\treturn;\n\t}\n\tconst unsigned char *p = reinterpret_cast<const unsigned char *>(pb);\n\tconst char *fmt_msg = \" %02X\";\n\tint fmt_msg_size = 3;\n\twhile (count) {\n\t\tchar *f = formatBuffer();\n\t\tint buf_size = S_FORMAT_BUFFER_SIZE;\n\t\twhile (count && buf_size > 6) {\n\t\t\tsnprintf(f, buf_size, fmt_msg, *p);\n\t\t\tp++;\n\t\t\tf += fmt_msg_size;\n\t\t\tbuf_size -= fmt_msg_size;\n\t\t\tcount--;\n\t\t}\n\t\tif (count && buf_size <= 6) {\n\t\t\tserial().print(formatBuffer());\n\t\t}\n\t}\n\tif (lf) {\n\t\tserial().println(formatBuffer());\n\t} else {\n\t\tserial().print(formatBuffer());\n\t}\n}\n"
  },
  {
    "path": "src/SerialComm.h",
    "content": "\n#ifndef SERIALCOMM_H\n#define SERIALCOMM_H\n\n#include <Arduino.h>\n\n#define DEBUG 0\n\nclass SerialComm\n{\nprivate:\n\tstatic const int S_FORMAT_BUFFER_SIZE = 128 + 1;\n\n\tStream &m_serial;\n\n\tbool m_already_asked;\n\n\tchar m_send_msg[6];\n\tchar m_format_buffer[S_FORMAT_BUFFER_SIZE];\n\n\tunsigned int m_stream_buffer_capacity;\n\tunsigned int m_stream_buffer_threshold;\n\tunsigned int m_stream_buffer_checkpoint;\n\tuint32_t m_stream_count;\n\n\tStream &serial() const { return m_serial; }\n\n\tbool alreadyAsked() const { return m_already_asked; }\n\tvoid setAlreadyAsked() { m_already_asked = true; }\n\n\tunsigned int streamBufferCapacity() const\n\t{\n\t\treturn m_stream_buffer_capacity;\n\t}\n\tvoid setStreamBufferCapacity(unsigned int n)\n\t{\n\t\tm_stream_buffer_capacity = n;\n\t}\n\n\tunsigned int streamBufferThreshold() const\n\t{\n\t\treturn m_stream_buffer_threshold;\n\t}\n\tvoid setStreamBufferThreshold(unsigned int n)\n\t{\n\t\tm_stream_buffer_threshold = n;\n\t}\n\n\tunsigned int streamBufferCheckpoint() const\n\t{\n\t\treturn m_stream_buffer_checkpoint;\n\t}\n\tvoid updateCheckpoint()\n\t{\n\t\tm_stream_buffer_checkpoint += streamBufferThreshold();\n\t\tm_stream_buffer_checkpoint %= streamBufferCapacity();\n\t}\n\n\tvoid incStreamCount() { ++m_stream_count; }\n\n\tchar *sendMsg() { return m_send_msg; }\n\tsize_t sizeofSendMsg() const { return sizeof m_send_msg; }\n\npublic:\n\tSerialComm(Stream &s, int stream_buffer_size);\n\t~SerialComm();\n\n\tvoid ask_for_data();\n\tint nextByte();\n\n\tuint32_t streamCount() const { return m_stream_count; }\n\n\tvoid Important(const __FlashStringHelper *fmt, ...);\n\tvoid ImportantBits(const __FlashStringHelper *msg, const uint8_t *pb,\n\t\t\t   uint32_t count_bits);\n\tvoid Quit(int error_code, const __FlashStringHelper *message) const;\n\tvoid print_bytes(const uint8_t *pb, uint32_t count, bool lf = false);\n\n\tvoid DebugStartMessage() const;\n\tvoid DebugContMessage(const __FlashStringHelper *ifsh, ...);\n\tvoid Debug(const __FlashStringHelper *fmt, ...);\n\tvoid DebugBytes(const __FlashStringHelper *s, const uint8_t *p,\n\t\t\tuint8_t n);\n\nprivate:\n\tchar *formatBuffer() { return m_format_buffer; }\n\n\tvoid checkAndRequestData(bool force = false);\n\tvoid Ready(const __FlashStringHelper *message) const;\n};\n\n#endif // SERIALCOMM_H\n"
  },
  {
    "path": "src/XSVFPlayer.cpp",
    "content": "\n#include \"XSVFPlayer.h\"\n\n// clang-format off\n#define ERR_MSG(x,y) case x: { ret = y; break; }\n#define NAME_FOR(x) case x: return F(#x);\n#define NAME_FOR_STATE(x) case STATE_##x: return F(#x);\n#define DECODE(x) case x: if (decode_##x()) { return execute_##x(); } break;\n// clang-format on\n\nXSVFPlayer::XSVFPlayer(SerialComm &s)\n: m_serial_comm(s)\n, m_next_state(0)\n, m_sirsize_bits(0)\n, m_sirsize_bytes(0)\n, m_sdrsize_bits(0)\n, m_sdrsize_bytes(0)\n, m_length2_bits(0)\n, m_length2_bytes(0)\n, m_repeat(32)\n, m_runtest(0)\n, m_endir_state(STATE_RUN_TEST_IDLE)\n, m_enddr_state(STATE_RUN_TEST_IDLE)\n, m_xcomplete(false)\n, m_instruction_counter(0)\n, m_stream_sum(0)\n, m_error_code(ERR_NO_ERROR)\n{\n\tserialComm().ask_for_data();\n}\n\nXSVFPlayer::~XSVFPlayer()\n{\n\tuint8_t checksum = (-streamSum()) & 0xFF;\n\tserialComm().Important(F(\"Checksum:  0x%02X/%lu.\"), checksum,\n\t\t\t       serialComm().streamCount());\n\tserialComm().Important(F(\"Sum: 0x%08lX/%lu.\"), streamSum(),\n\t\t\t       serialComm().streamCount());\n\tif (errorCode() == ERR_NO_ERROR && !xcomplete()) {\n\t\tsetErrorCode(ERR_XCOMPLETE_NOT_REACHED);\n\t}\n\tserialComm().Quit(errorCode(), error_message(errorCode()));\n}\n\n#ifndef ARDUINO_ARCH_AVR\n// All bytes must pass through this function\nuint8_t XSVFPlayer::nextByte()\n{\n\tint c = serialComm().nextByte();\n\tif (c != -1) {\n\t\taddStreamSum(c);\n\t} else {\n\t\tserialComm().Quit(ERR_SERIAL_PORT_TIMEOUT,\n\t\t\t\t  F(\"Serial port timeout!\"));\n\t}\n\n\treturn static_cast<uint8_t>(c);\n}\n#endif // ARDUINO_ARCH_AVR\n\nuint8_t XSVFPlayer::getNextByte()\n{\n\tuint8_t i = nextByte();\n\tserialComm().Debug(F(\".    BYTE:%12u - 0x%02X\"), i, i);\n\n\treturn i;\n}\n\nuint16_t XSVFPlayer::getNextWord()\n{\n\tuint16_t i = 0;\n\ti = ((uint16_t)nextByte()) << 8;\n\ti |= ((uint16_t)nextByte());\n\tserialComm().Debug(F(\".    WORD:12%u - 0x%04X\"), i, i);\n\n\treturn i;\n}\n\nuint32_t XSVFPlayer::getNextLong()\n{\n\tuint32_t i = 0;\n\ti = ((uint32_t)nextByte()) << 24;\n\ti |= ((uint32_t)nextByte()) << 16;\n\ti |= ((uint32_t)nextByte()) << 8;\n\ti |= ((uint32_t)nextByte());\n\tserialComm().Debug(F(\".   DWORD:%12lu - 0x%08lX\"), i, i);\n\n\treturn i;\n}\n\nvoid XSVFPlayer::getNextBytes(uint8_t *data, uint32_t count)\n{\n\tserialComm().DebugStartMessage();\n\tserialComm().DebugContMessage(F(\".     HEX:\"));\n\twhile (count--) {\n\t\tuint8_t c = nextByte();\n\t\tserialComm().DebugContMessage(F(\" %02X\"), c);\n\t\t*data++ = c;\n\t}\n\tserialComm().DebugContMessage(F(\"\\n\"));\n}\n\nconst __FlashStringHelper *XSVFPlayer::error_message(int error_code)\n{\n\tconst __FlashStringHelper *ret = F(\"Unknown error message\");\n\tswitch (error_code) {\n\t\tERR_MSG(ERR_NO_ERROR, F(\"No error\"));\n\t\tERR_MSG(ERR_SERIAL_PORT_TIMEOUT, F(\"Serial port timeout\"));\n\t\tERR_MSG(ERR_VREF_NOT_PRESENT, F(\"VRef not present\"));\n\t\tERR_MSG(ERR_XCOMPLETE_NOT_REACHED, F(\"XCOMPLETE not reached\"));\n\t\tERR_MSG(ERR_DR_CHECK_FAILED, F(\"DR check failed\"));\n\t}\n\n\treturn ret;\n}\n\nvoid XSVFPlayer::print_last_tdo() const\n{\n\tserialComm().ImportantBits(F(\"!Last TDO:\"), last_tdo(),\n\t\t\t\t   last_dr_size_bits());\n}\n\n/*\n * Reads the next instruction from the serial port. Also reads any\n * remaining instruction parameters into the instruction buffer.\n */\nbool XSVFPlayer::handle_next_instruction()\n{\n\tuint8_t instruction = getNextByte();\n\tincrementInstructionCounter();\n\tsetStringBuffer(instruction_name(instruction));\n\tserialComm().Debug(F(\"%d - Handling %s(0x%02X)\"), instructionCounter(),\n\t\t\t   stringBuffer(), instruction);\n\tswitch (instruction) {\n\t\tDECODE(XCOMPLETE);\n\t\tDECODE(XTDOMASK);\n\t\tDECODE(XSIR);\n\t\tDECODE(XSDR);\n\t\tDECODE(XRUNTEST);\n#if IMPLEMENT_XRESERVED\n\t\tDECODE(XRESERVED_5);\n\t\tDECODE(XRESERVED_6);\n#endif // IMPLEMENT_XRESERVED\n\t\tDECODE(XREPEAT);\n\t\tDECODE(XSDRSIZE);\n\t\tDECODE(XSDRTDO);\n#if IMPLEMENT_XSDRINC\n\t\tDECODE(XSETSDRMASKS);\n\t\tDECODE(XSDRINC);\n#endif // IMPLEMENT_XSDRINC\n\t\tDECODE(XSDRB);\n\t\tDECODE(XSDRC);\n\t\tDECODE(XSDRE);\n\t\tDECODE(XSDRTDOB);\n\t\tDECODE(XSDRTDOC);\n\t\tDECODE(XSDRTDOE);\n\t\tDECODE(XSTATE);\n\t\tDECODE(XENDIR);\n\t\tDECODE(XENDDR);\n\t\tDECODE(XSIR2);\n\t\tDECODE(XCOMMENT);\n\t\tDECODE(XWAIT);\n\tdefault:\n\t\tserialComm().Important(\n\t\t    F(\"Unimplemented instruction: %s(0x%02X)\"), stringBuffer(),\n\t\t    instruction);\n\t\tbreak;\n\t}\n\treturn false;\n}\n\n#ifndef ARDUINO_ARCH_AVR\nvoid XSVFPlayer::setStringBuffer(const __FlashStringHelper *s)\n{\n\tPGM_P p = reinterpret_cast<PGM_P>(s);\n\tsize_t n = strlen_P(p);\n\tif (n > S_STRING_BUFFER_SIZE - 1) {\n\t\tserialComm().Debug(\n\t\t    F(\">>>>>>>>>>>> String truncated by %d bytes.\"),\n\t\t    n - S_STRING_BUFFER_SIZE + 1);\n\t}\n\tstrncpy_P(m_string_buffer, p, S_STRING_BUFFER_SIZE);\n\tm_string_buffer[S_STRING_BUFFER_SIZE - 1] = 0;\n}\n#endif // ARDUINO_ARCH_AVR\n\nconst __FlashStringHelper *XSVFPlayer::instruction_name(uint8_t instruction)\n{\n\tswitch (instruction) {\n\t\tNAME_FOR(XCOMPLETE);\n\t\tNAME_FOR(XTDOMASK);\n\t\tNAME_FOR(XSIR);\n\t\tNAME_FOR(XSDR);\n\t\tNAME_FOR(XRUNTEST);\n\t\tNAME_FOR(XRESERVED_5);\n\t\tNAME_FOR(XRESERVED_6);\n\t\tNAME_FOR(XREPEAT);\n\t\tNAME_FOR(XSDRSIZE);\n\t\tNAME_FOR(XSDRTDO);\n\t\tNAME_FOR(XSETSDRMASKS);\n\t\tNAME_FOR(XSDRINC);\n\t\tNAME_FOR(XSDRB);\n\t\tNAME_FOR(XSDRC);\n\t\tNAME_FOR(XSDRE);\n\t\tNAME_FOR(XSDRTDOB);\n\t\tNAME_FOR(XSDRTDOC);\n\t\tNAME_FOR(XSDRTDOE);\n\t\tNAME_FOR(XSTATE);\n\t\tNAME_FOR(XENDIR);\n\t\tNAME_FOR(XENDDR);\n\t\tNAME_FOR(XSIR2);\n\t\tNAME_FOR(XCOMMENT);\n\t\tNAME_FOR(XWAIT);\n\tdefault:\n\t\treturn F(\"Unknown instruction\");\n\t}\n}\n\nconst __FlashStringHelper *XSVFPlayer::state_name(uint8_t state)\n{\n\tswitch (state) {\n\t\tNAME_FOR_STATE(TEST_LOGIC_RESET);\n\t\tNAME_FOR_STATE(RUN_TEST_IDLE);\n\t\tNAME_FOR_STATE(SELECT_DR_SCAN);\n\t\tNAME_FOR_STATE(CAPTURE_DR);\n\t\tNAME_FOR_STATE(SHIFT_DR);\n\t\tNAME_FOR_STATE(EXIT1_DR);\n\t\tNAME_FOR_STATE(PAUSE_DR);\n\t\tNAME_FOR_STATE(EXIT2_DR);\n\t\tNAME_FOR_STATE(UPDATE_DR);\n\t\tNAME_FOR_STATE(SELECT_IR_SCAN);\n\t\tNAME_FOR_STATE(CAPTURE_IR);\n\t\tNAME_FOR_STATE(SHIFT_IR);\n\t\tNAME_FOR_STATE(EXIT1_IR);\n\t\tNAME_FOR_STATE(PAUSE_IR);\n\t\tNAME_FOR_STATE(EXIT2_IR);\n\t\tNAME_FOR_STATE(UPDATE_IR);\n\tdefault:\n\t\treturn F(\"UNKNOWN_STATE\");\n\t}\n}\n\nbool XSVFPlayer::decode_XCOMPLETE()\n{\n\tsetXcomplete(true);\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XTDOMASK()\n{\n\tgetNextBytes(tdoMask(), sdrsizeBytes());\n\tserialComm().DebugBytes(F(\"... TDO mask set to\"), tdoMask(),\n\t\t\t\tsdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSIR()\n{\n\tsetSirsizeBits(getNextByte());\n\tif (sirsizeBytes() > S_MAX_CHAIN_SIZE_BYTES) {\n\t\tserialComm().Important(\n\t\t    F(\"Requested IR size (%d bits) is greater than the maximum \"\n\t\t      \"chain\"\n\t\t      \" size supported by this programmer (%d bits).\"),\n\t\t    sirsizeBits(), S_MAX_CHAIN_SIZE_BITS);\n\t\treturn false;\n\t}\n\tgetNextBytes(tdi(), sirsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSDR()\n{\n\tgetNextBytes(tdi(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XRUNTEST()\n{\n\tsetRuntest(getNextLong());\n\tserialComm().Debug(F(\"... runtest set to %ld\"), runtest());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XRESERVED_5() { return true; }\n\nbool XSVFPlayer::decode_XRESERVED_6() { return true; }\n\nbool XSVFPlayer::decode_XREPEAT()\n{\n\tsetRepeat(getNextByte());\n\tserialComm().Debug(F(\"... repeat set to %d\"), repeat());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSDRSIZE()\n{\n\tsetSdrSizeBits(getNextLong());\n\tif (sdrsizeBytes() > S_MAX_CHAIN_SIZE_BYTES) {\n\t\tserialComm().Important(\n\t\t    F(\"Requested DR size (%lu bits) is greater than the \"\n\t\t      \"maximum chain\"\n\t\t      \" size supported by this programmer (%d bits).\"),\n\t\t    sdrsizeBits(), S_MAX_CHAIN_SIZE_BITS);\n\t\treturn false;\n\t}\n\tserialComm().Debug(F(\"... sdrsize set to %lu bits (%lu bytes)\"),\n\t\t\t   sdrsizeBits(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSDRTDO()\n{\n\tgetNextBytes(tdi(), sdrsizeBytes());\n\tgetNextBytes(tdoExpected(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSETSDRMASKS()\n{\n\tgetNextBytes(addressMask(), sdrsizeBytes());\n\tgetNextBytes(dataMask(), sdrsizeBytes());\n\n\treturn true;\n}\n\n#if IMPLEMENT_XSDRINC\n// bool XSVFPlayer::decode_XSDRINC() { return ; }\n#endif // IMPLEMENT_XSDRINC\n\nbool XSVFPlayer::decode_XSDRB()\n{\n\tgetNextBytes(tdi(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSDRC()\n{\n\tgetNextBytes(tdi(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSDRE()\n{\n\tgetNextBytes(tdi(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSDRTDOB()\n{\n\tgetNextBytes(tdi(), sdrsizeBytes());\n\tgetNextBytes(tdoExpected(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSDRTDOC()\n{\n\tgetNextBytes(tdi(), sdrsizeBytes());\n\tgetNextBytes(tdoExpected(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSDRTDOE()\n{\n\tgetNextBytes(tdi(), sdrsizeBytes());\n\tgetNextBytes(tdoExpected(), sdrsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XSTATE()\n{\n\tsetNextState(getNextByte());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XENDIR()\n{\n\tbool ret = true;\n\tuint8_t s = getNextByte();\n\tswitch (s) {\n\tcase 0:\n\t\tsetEndirState(STATE_RUN_TEST_IDLE);\n\t\tbreak;\n\tcase 1:\n\t\tsetEndirState(STATE_PAUSE_IR);\n\t\tbreak;\n\tdefault:\n\t\tserialComm().Debug(F(\"... invalid XENDIR parameter: %d\"), s);\n\t\tret = false;\n\t\tbreak;\n\t}\n\tsetStringBuffer(state_name(endirState()));\n\tserialComm().Debug(F(\"... endir state set to %s(%d)\"), stringBuffer(),\n\t\t\t   endirState());\n\n\treturn ret;\n}\n\nbool XSVFPlayer::decode_XENDDR()\n{\n\tbool ret = true;\n\tuint8_t s = getNextByte();\n\tswitch (s) {\n\tcase 0:\n\t\tsetEnddrState(STATE_RUN_TEST_IDLE);\n\t\tbreak;\n\tcase 1:\n\t\tsetEnddrState(STATE_PAUSE_DR);\n\t\tbreak;\n\tdefault:\n\t\tserialComm().Debug(F(\"... invalid XENDDR parameter: %d\"), s);\n\t\tret = false;\n\t\tbreak;\n\t}\n\tsetStringBuffer(state_name(enddrState()));\n\tserialComm().Debug(F(\"... enddr state set to %s(%d)\"), stringBuffer(),\n\t\t\t   enddrState());\n\n\treturn ret;\n}\n\nbool XSVFPlayer::decode_XSIR2()\n{\n\tsetSirsizeBits(getNextWord());\n\tgetNextBytes(tdi(), sirsizeBytes());\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XCOMMENT()\n{\n\tserialComm().DebugStartMessage();\n\tserialComm().DebugContMessage(F(\"XCOMMENT:\"));\n\tuint8_t c;\n\twhile ((c = getNextByte())) {\n\t\tserialComm().DebugContMessage(F(\"%c\"), c);\n\t\texecute_XCOMMENT_auxiliar(c);\n\t}\n\tserialComm().DebugContMessage(F(\"\\n\"));\n\texecute_XCOMMENT_auxiliar(c);\n\n\treturn true;\n}\n\nbool XSVFPlayer::decode_XWAIT()\n{\n\tsetWaitStartState(getNextByte());\n\tsetWaitEndState(getNextByte());\n\tsetWaitTimeUsecs(getNextLong());\n\n\treturn true;\n}\n"
  },
  {
    "path": "src/XSVFPlayer.h",
    "content": "\n#ifndef JTAGWHISPERER_H\n#define JTAGWHISPERER_H\n\n#include \"JTAGTAP.h\"\n#include \"SerialComm.h\"\n\n#define IMPLEMENT_XSDRINC 0\n\nclass XSVFPlayer\n{\nprivate:\n\tSerialComm &m_serial_comm;\n\n\tuint8_t m_next_state;\n\tuint16_t m_sirsize_bits;\n\tuint16_t m_sirsize_bytes;\n\tuint32_t m_sdrsize_bits;\n\tuint32_t m_sdrsize_bytes;\n\tuint32_t m_length2_bits;\n\tuint32_t m_length2_bytes;\n\tuint8_t m_repeat;\n\tuint32_t m_runtest;\n\tuint8_t m_endir_state;\n\tuint8_t m_enddr_state;\n\tuint8_t m_wait_start_state;\n\tuint8_t m_wait_end_state;\n\tuint32_t m_wait_time_usecs;\n\tbool m_xcomplete;\n\n\tstatic const uint32_t S_MAX_CHAIN_SIZE_BYTES = 129;\n\tstatic const uint32_t S_MAX_CHAIN_SIZE_BITS =\n\t    S_MAX_CHAIN_SIZE_BYTES * 8;\n\tuint8_t m_tdi[S_MAX_CHAIN_SIZE_BYTES];\n\tuint8_t m_tdo[S_MAX_CHAIN_SIZE_BYTES];\n\tuint8_t m_tdo_mask[S_MAX_CHAIN_SIZE_BYTES];\n\tuint8_t m_tdo_expected[S_MAX_CHAIN_SIZE_BYTES];\n\tuint8_t m_address_mask[S_MAX_CHAIN_SIZE_BYTES];\n\tuint8_t m_data_mask[S_MAX_CHAIN_SIZE_BYTES];\n\n\tuint16_t m_instruction_counter;\n\tuint32_t m_stream_sum;\n\tint m_error_code;\n\n\t// The following maximum buffer size has been tested to be an exact\n\t// value. If you change any program messages or strings, with debug\n\t// enabled you may get a \">>>>>>>>>>>> String truncated by XX bytes.\"\n\t// warning. Fix this buffer size accordingly.\n\tstatic const uint32_t S_STRING_BUFFER_SIZE = 23;\n\tchar m_string_buffer[S_STRING_BUFFER_SIZE];\n\n\tenum e_XSVF_Instruction {\n\t\tXCOMPLETE = 0,\n\t\tXTDOMASK,\n\t\tXSIR,\n\t\tXSDR,\n\t\tXRUNTEST,\n\t\tXRESERVED_5,\n\t\tXRESERVED_6,\n\t\tXREPEAT,\n\t\tXSDRSIZE,\n\t\tXSDRTDO,\n\t\tXSETSDRMASKS,\n\t\tXSDRINC,\n\t\tXSDRB,\n\t\tXSDRC,\n\t\tXSDRE,\n\t\tXSDRTDOB,\n\t\tXSDRTDOC,\n\t\tXSDRTDOE,\n\t\tXSTATE,\n\t\tXENDIR,\n\t\tXENDDR,\n\t\tXSIR2,\n\t\tXCOMMENT,\n\t\tXWAIT\n\t};\n\n\tSerialComm &serialComm() { return m_serial_comm; }\n\tSerialComm &serialComm() const { return m_serial_comm; }\n\n#ifdef ARDUINO_ARCH_AVR\n\t// All bytes must pass through this function\n\tuint8_t nextByte()\n\t{\n\t\tint c = serialComm().nextByte();\n\t\tif (c != -1) {\n\t\t\taddStreamSum(c);\n\t\t} else {\n\t\t\tserialComm().Quit(ERR_SERIAL_PORT_TIMEOUT,\n\t\t\t\t\t  F(\"Serial port timeout!\"));\n\t\t}\n\n\t\treturn static_cast<uint8_t>(c);\n\t}\n#else  // ARDUINO_ARCH_AVR\n\tuint8_t nextByte();\n#endif // ARDUINO_ARCH_AVR\n\n\t// Returns the next byte from the stream.\n\tuint8_t getNextByte();\n\n\t// Returns the next word from the stream.\n\tuint16_t getNextWord();\n\n\t// Returns the next double word from the stream.\n\tuint32_t getNextLong();\n\n\t// Stores the next count bytes from the stream into data.\n\tvoid getNextBytes(uint8_t *data, uint32_t count);\n\n\tconst __FlashStringHelper *error_message(int error_code);\n\npublic:\n\tenum e_Error_Code {\n\t\tERR_NO_ERROR = 0,\n\t\t//\n\t\tERR_SERIAL_PORT_TIMEOUT = -1,\n\t\t//\n\t\tERR_VREF_NOT_PRESENT = -10,\n\t\t//\n\t\tERR_XCOMPLETE_NOT_REACHED = -100,\n\t\tERR_DR_CHECK_FAILED = -101,\n\t};\n\n\tXSVFPlayer(SerialComm &s);\n\n\t~XSVFPlayer();\n\n\tbool reached_xcomplete() const { return xcomplete(); }\n\n\tuint32_t last_dr_size_bits() const { return sdrsizeBits(); }\n\n\tuint32_t last_dr_size_bytes() const { return sdrsizeBytes(); }\n\n\tconst uint8_t *last_tdo() const { return m_tdo; }\n\n\tvoid print_last_tdo() const;\n\n\tbool handle_next_instruction();\n\n\tstatic uint32_t numBytes(uint32_t numBits)\n\t{\n\t\treturn (numBits + 7) >> 3;\n\t}\n\nprotected:\n\tconst char *stringBuffer() const { return m_string_buffer; }\n#ifdef ARDUINO_ARCH_AVR\n\tvoid setStringBuffer(const __FlashStringHelper *s)\n\t{\n\t\tPGM_P p = reinterpret_cast<PGM_P>(s);\n\t\tsize_t n = strlen_P(p);\n\t\tif (n > S_STRING_BUFFER_SIZE - 1) {\n\t\t\tserialComm().Debug(\n\t\t\t    F(\">>>>>>>>>>>> String truncated by %d bytes.\"),\n\t\t\t    n - S_STRING_BUFFER_SIZE + 1);\n\t\t}\n\t\tstrncpy_P(m_string_buffer, p, S_STRING_BUFFER_SIZE);\n\t\tm_string_buffer[S_STRING_BUFFER_SIZE - 1] = 0;\n\t}\n#else  // ARDUINO_ARCH_AVR\n\tvoid setStringBuffer(const __FlashStringHelper *s);\n#endif // ARDUINO_ARCH_AVR\n\n\tconst __FlashStringHelper *instruction_name(uint8_t instruction);\n\tconst __FlashStringHelper *state_name(uint8_t state);\n\n\tuint8_t nextState() const { return m_next_state; }\n\tvoid setNextState(uint8_t n) { m_next_state = n; }\n\n\tuint16_t sirsizeBits() const { return m_sirsize_bits; }\n\tvoid setSirsizeBits(uint16_t n)\n\t{\n\t\tm_sirsize_bits = n;\n\t\tm_sirsize_bytes = numBytes(n);\n\t}\n\tuint8_t sirsizeBytes() const { return m_sirsize_bytes; }\n\n\tuint32_t sdrsizeBits() const { return m_sdrsize_bits; }\n\tvoid setSdrSizeBits(uint32_t n)\n\t{\n\t\tm_sdrsize_bits = n;\n\t\tm_sdrsize_bytes = numBytes(n);\n\t}\n\tuint32_t sdrsizeBytes() const { return m_sdrsize_bytes; }\n\n\tuint32_t length2Bits() const { return m_length2_bits; }\n\tvoid setLength2Bits(uint32_t n) { m_length2_bits = n; }\n\n\tuint32_t length2Bytes() const { return m_length2_bytes; }\n\n\tuint8_t repeat() const { return m_repeat; }\n\tvoid setRepeat(uint8_t n) { m_repeat = n; }\n\n\tuint32_t runtest() const { return m_runtest; }\n\tvoid setRuntest(uint32_t n) { m_runtest = n; }\n\n\tuint8_t endirState() const { return m_endir_state; }\n\tvoid setEndirState(uint8_t n) { m_endir_state = n; }\n\n\tuint8_t enddrState() const { return m_enddr_state; }\n\tvoid setEnddrState(uint8_t n) { m_enddr_state = n; }\n\n\tuint8_t waitStartState() const { return m_wait_start_state; }\n\tvoid setWaitStartState(uint8_t n) { m_wait_start_state = n; }\n\n\tuint8_t waitEndState() const { return m_wait_end_state; }\n\tvoid setWaitEndState(uint8_t n) { m_wait_end_state = n; }\n\n\tuint32_t waitTimeUsecs() const { return m_wait_time_usecs; }\n\tvoid setWaitTimeUsecs(uint32_t n) { m_wait_time_usecs = n; }\n\n\tbool xcomplete() const { return m_xcomplete; }\n\tvoid setXcomplete(bool n) { m_xcomplete = n; }\n\n\tuint8_t *tdi() { return m_tdi; }\n\tuint8_t *tdo() { return m_tdo; }\n\tconst uint8_t *tdo() const { return m_tdo; }\n\tuint8_t *tdoMask() { return m_tdo_mask; }\n\tuint8_t *tdoExpected() { return m_tdo_expected; }\n\n\tuint8_t *addressMask() { return m_address_mask; }\n\tuint8_t *dataMask() { return m_data_mask; }\n\n\tuint16_t instructionCounter() const { return m_instruction_counter; }\n\tvoid incrementInstructionCounter() { ++m_instruction_counter; }\n\n\tuint32_t streamSum() const { return m_stream_sum; }\n\tvoid addStreamSum(uint8_t n) { m_stream_sum += n; }\n\n\tint errorCode() const { return m_error_code; }\n\tvoid setErrorCode(int n) { m_error_code = n; }\n\n\t/*\n\t * XSVF instruction decoders\n\t */\n\tbool decode_XCOMPLETE();\n\tbool decode_XTDOMASK();\n\tbool decode_XSIR();\n\tbool decode_XSDR();\n\tbool decode_XRUNTEST();\n\tbool decode_XRESERVED_5();\n\tbool decode_XRESERVED_6();\n\tbool decode_XREPEAT();\n\tbool decode_XSDRSIZE();\n\tbool decode_XSDRTDO();\n\tbool decode_XSETSDRMASKS();\n#if IMPLEMENT_XSDRINC\n\tbool decode_XSDRINC();\n#endif // IMPLEMENT_XSDRINC\n\tbool decode_XSDRB();\n\tbool decode_XSDRC();\n\tbool decode_XSDRE();\n\tbool decode_XSDRTDOB();\n\tbool decode_XSDRTDOC();\n\tbool decode_XSDRTDOE();\n\tbool decode_XSTATE();\n\tbool decode_XENDIR();\n\tbool decode_XENDDR();\n\tbool decode_XSIR2();\n\tbool decode_XCOMMENT();\n\tbool decode_XWAIT();\n\n\t/*\n\t * XSVF instruction executors\n\t */\n\tvirtual bool execute_XCOMPLETE() = 0;\n\tvirtual bool execute_XTDOMASK() = 0;\n\tvirtual bool execute_XSIR() = 0;\n\tvirtual bool execute_XSDR() = 0;\n\tvirtual bool execute_XRUNTEST() = 0;\n\tvirtual bool execute_XRESERVED_5() = 0;\n\tvirtual bool execute_XRESERVED_6() = 0;\n\tvirtual bool execute_XREPEAT() = 0;\n\tvirtual bool execute_XSDRSIZE() = 0;\n\tvirtual bool execute_XSDRTDO() = 0;\n\tvirtual bool execute_XSETSDRMASKS() = 0;\n\tvirtual bool execute_XSDRINC() = 0;\n\tvirtual bool execute_XSDRB() = 0;\n\tvirtual bool execute_XSDRC() = 0;\n\tvirtual bool execute_XSDRE() = 0;\n\tvirtual bool execute_XSDRTDOB() = 0;\n\tvirtual bool execute_XSDRTDOC() = 0;\n\tvirtual bool execute_XSDRTDOE() = 0;\n\tvirtual bool execute_XSTATE() = 0;\n\tvirtual bool execute_XENDIR() = 0;\n\tvirtual bool execute_XENDDR() = 0;\n\tvirtual bool execute_XSIR2() = 0;\n\tvirtual bool execute_XCOMMENT() = 0;\n\tvirtual void execute_XCOMMENT_auxiliar(uint8_t c) = 0;\n\tvirtual bool execute_XWAIT() = 0;\n};\n\n#endif // JTAGWHISPERER_H\n"
  },
  {
    "path": "src/XSVFPlayerJTAG.cpp",
    "content": "\n#include \"XSVFPlayerJTAG.h\"\n\nXSVFPlayerJTAG::XSVFPlayerJTAG(SerialComm &s, JTAGPort &j)\n: XSVFPlayer(s)\n, m_serial_comm(s)\n, m_jtag_tap(s, j)\n, m_current_state(0)\n{\n}\n\nbool XSVFPlayerJTAG::execute_XCOMPLETE() { return false; }\n\nbool XSVFPlayerJTAG::execute_XTDOMASK() { return true; }\n\nbool XSVFPlayerJTAG::execute_XSIR()\n{\n\tsir();\n\n\treturn true;\n}\n\nbool XSVFPlayerJTAG::execute_XSDR() { return sdr(true, true, true, true); }\n\nbool XSVFPlayerJTAG::execute_XRUNTEST() { return true; }\n\nbool XSVFPlayerJTAG::execute_XRESERVED_5() { return true; }\n\nbool XSVFPlayerJTAG::execute_XRESERVED_6() { return true; }\n\nbool XSVFPlayerJTAG::execute_XREPEAT() { return true; }\n\nbool XSVFPlayerJTAG::execute_XSDRSIZE() { return true; }\n\nbool XSVFPlayerJTAG::execute_XSDRTDO() { return sdr(true, true, true, true); }\n\nbool XSVFPlayerJTAG::execute_XSETSDRMASKS() { return true; }\n\nbool XSVFPlayerJTAG::execute_XSDRINC() { return false; }\n\nbool XSVFPlayerJTAG::execute_XSDRB() { return sdr(true, false, false, false); }\n\nbool XSVFPlayerJTAG::execute_XSDRC() { return sdr(false, false, false, false); }\n\nbool XSVFPlayerJTAG::execute_XSDRE() { return sdr(false, false, false, true); }\n\nbool XSVFPlayerJTAG::execute_XSDRTDOB()\n{\n\treturn sdr(true, true, false, false);\n}\n\nbool XSVFPlayerJTAG::execute_XSDRTDOC()\n{\n\treturn sdr(false, true, false, false);\n}\n\nbool XSVFPlayerJTAG::execute_XSDRTDOE()\n{\n\treturn sdr(false, true, false, true);\n}\n\nbool XSVFPlayerJTAG::execute_XSTATE()\n{\n\tstate_goto(nextState());\n\n\treturn true;\n}\n\nbool XSVFPlayerJTAG::execute_XENDIR() { return true; }\n\nbool XSVFPlayerJTAG::execute_XENDDR() { return true; }\n\nbool XSVFPlayerJTAG::execute_XSIR2()\n{\n\tsir();\n\n\treturn true;\n}\n\nbool XSVFPlayerJTAG::execute_XCOMMENT() { return true; }\n\nvoid XSVFPlayerJTAG::execute_XCOMMENT_auxiliar(uint8_t /*c*/) {}\n\nbool XSVFPlayerJTAG::execute_XWAIT()\n{\n\tstate_goto(waitStartState());\n\tjtagTap().wait_time(waitTimeUsecs());\n\tstate_goto(waitEndState());\n\n\treturn true;\n}\n\nvoid XSVFPlayerJTAG::state_goto(int state)\n{\n\tjtagTap().state_goto(state);\n\tsetCurrentState(state);\n\tsetStringBuffer(state_name(state));\n\tserialComm().Debug(F(\"... current state is now %s(%d)\"), stringBuffer(),\n\t\t\t   state);\n}\n\nvoid XSVFPlayerJTAG::sir()\n{\n\tstate_goto(STATE_SHIFT_IR);\n\tserialComm().Debug(F(\"... shifting into IR\"));\n\tjtagTap().shift_td(tdi(), tdo(), sirsizeBits(), true);\n\tif (!runtest()) {\n\t\tstate_goto(endirState());\n\t} else {\n\t\tstate_goto(STATE_RUN_TEST_IDLE);\n\t\tjtagTap().wait_time(runtest());\n\t}\n}\n\nbool XSVFPlayerJTAG::sdr(bool must_begin, bool must_check, bool use_mask,\n\t\t\t bool must_end)\n{\n\tint attempts_left = repeat();\n\tbool matched = false;\n\n\tif (must_begin) {\n\t\tstate_goto(STATE_SHIFT_DR);\n\t}\n\twhile (!matched && attempts_left-- >= 0) {\n\t\tserialComm().Debug(F(\"... shifting into DR\"));\n\t\tjtagTap().shift_td(tdi(), tdo(), sdrsizeBits(), must_end);\n\t\tif (!must_check) {\n\t\t\tbreak;\n\t\t}\n\t\tmatched = is_tdo_as_expected(use_mask);\n\t\tif (!matched) {\n\t\t\t// XAP058, page 14\n\t\t\tstate_goto(STATE_PAUSE_DR);\n\t\t\tstate_goto(STATE_SHIFT_DR);\n\t\t\tstate_goto(STATE_RUN_TEST_IDLE);\n\t\t\tjtagTap().wait_time(runtest());\n\t\t\t//\n\t\t\tstate_goto(STATE_SHIFT_DR);\n\t\t\tif (attempts_left >= 0) {\n\t\t\t\tserialComm().Debug(F(\"...... repeating: %d\"),\n\t\t\t\t\t\t   repeat() - attempts_left);\n\t\t\t}\n\t\t}\n\t}\n\tif (must_check && !matched) {\n\t\tsetErrorCode(ERR_DR_CHECK_FAILED);\n\t\tserialComm().Important(F(\"DR check failed!\"));\n\t}\n\tif (must_end && matched) {\n\t\tif (!runtest()) {\n\t\t\tstate_goto(enddrState());\n\t\t} else {\n\t\t\tstate_goto(STATE_RUN_TEST_IDLE);\n\t\t\tjtagTap().wait_time(runtest());\n\t\t}\n\t}\n\n\treturn !must_check || (must_check && matched);\n}\n\nbool XSVFPlayerJTAG::is_tdo_as_expected(bool use_mask)\n{\n\tserialComm().DebugBytes(F(\"... TDO mask: \"), tdoMask(), sdrsizeBytes());\n\tserialComm().DebugBytes(F(\"... expecting:\"), tdoExpected(),\n\t\t\t\tsdrsizeBytes());\n\tserialComm().DebugBytes(F(\"... received: \"), tdo(), sdrsizeBytes());\n\tfor (uint32_t i = 0; i < sdrsizeBytes(); ++i) {\n\t\tuint8_t expected = tdoExpected()[i];\n\t\tuint8_t actual = tdo()[i];\n\t\tif (use_mask) {\n\t\t\texpected &= tdoMask()[i];\n\t\t\tactual &= tdoMask()[i];\n\t\t}\n\t\tif (expected != actual) {\n\t\t\tserialComm().Debug(F(\"... NO MATCH!\"));\n\t\t\treturn false;\n\t\t}\n\t}\n\tserialComm().Debug(F(\"... match!\"));\n\n\treturn true;\n}\n\nvoid XSVFPlayerJTAG::test_code(int i)\n{\n\tsetSirsizeBits(8);\n\ttdi()[0] = 1;\n\twhile (true) {\n\t\tswitch (i) {\n\t\tcase 1: {\n\t\t\tstate_goto(STATE_TEST_LOGIC_RESET);\n\t\t\t*((uint32_t *)tdi()) = 0x01;\n\t\t\t//*((uint32_t *)tdi()) = 0x00;\n\t\t\t//*((uint32_t *)tdi()) = 0xBF;\n\t\t\t//*((uint32_t *)tdi()) = 0xFD;\n\t\t\tsir();\n\t\t\t//\n\t\t\tsetRepeat(0);\n\t\t\t*((uint32_t *)tdoMask()) = 0xFF8FFF0F;\n\t\t\tsetSdrSizeBits(0x20);\n\t\t\t*((uint32_t *)tdi()) = 0;\n\t\t\t*((uint32_t *)tdoExpected()) = 0x93F0E5F6;\n\t\t\tsdr(true, true, true, true);\n\t\t\t//\n\t\t\tuint32_t microseconds = 1000;\n\t\t\tuint32_t until = micros() + microseconds;\n\t\t\twhile (micros() < until) {\n\t\t\t}\n\t\t\tbreak;\n\t\t}\n\t\tcase 2:\n\t\t\tsdr(true, true, true, true);\n\t\t\tbreak;\n\t\t}\n\t}\n}\n"
  },
  {
    "path": "src/XSVFPlayerJTAG.h",
    "content": "\n#ifndef XSVFPLAYERJTAG_H\n#define XSVFPLAYERJTAG_H\n\n#include \"JTAGTAP.h\"\n#include \"SerialComm.h\"\n#include \"XSVFPlayer.h\"\n\nclass XSVFPlayerJTAG : public XSVFPlayer\n{\nprivate:\n\tSerialComm &m_serial_comm;\n\tJTAGTAP m_jtag_tap;\n\tuint8_t m_current_state;\n\n\tSerialComm &serialComm() { return m_serial_comm; }\n\n\tJTAGTAP &jtagTap() { return m_jtag_tap; }\n\n\tuint8_t currentState() const { return m_current_state; }\n\tvoid setCurrentState(uint8_t n) { m_current_state = n; }\n\n\tvoid state_goto(int state);\n\tvoid sir();\n\tbool sdr(bool must_begin, bool must_check, bool use_mask,\n\t\t bool must_end);\n\tbool is_tdo_as_expected(bool use_mask);\n\npublic:\n\tXSVFPlayerJTAG(SerialComm &s, JTAGPort &j);\n\n\tvirtual ~XSVFPlayerJTAG() {}\n\n\tvoid test_code(int i);\n\nprotected:\n\tvirtual bool execute_XCOMPLETE();\n\tvirtual bool execute_XTDOMASK();\n\tvirtual bool execute_XSIR();\n\tvirtual bool execute_XSDR();\n\tvirtual bool execute_XRUNTEST();\n\tvirtual bool execute_XRESERVED_5();\n\tvirtual bool execute_XRESERVED_6();\n\tvirtual bool execute_XREPEAT();\n\tvirtual bool execute_XSDRSIZE();\n\tvirtual bool execute_XSDRTDO();\n\tvirtual bool execute_XSETSDRMASKS();\n\tvirtual bool execute_XSDRINC();\n\tvirtual bool execute_XSDRB();\n\tvirtual bool execute_XSDRC();\n\tvirtual bool execute_XSDRE();\n\tvirtual bool execute_XSDRTDOB();\n\tvirtual bool execute_XSDRTDOC();\n\tvirtual bool execute_XSDRTDOE();\n\tvirtual bool execute_XSTATE();\n\tvirtual bool execute_XENDIR();\n\tvirtual bool execute_XENDDR();\n\tvirtual bool execute_XSIR2();\n\tvirtual bool execute_XCOMMENT();\n\tvirtual void execute_XCOMMENT_auxiliar(uint8_t c);\n\tvirtual bool execute_XWAIT();\n};\n\n#endif // XSVFPLAYERJTAG_H\n"
  }
]