From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 4947 invoked by alias); 24 Feb 2002 18:06:02 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 4902 invoked by uid 71); 24 Feb 2002 18:06:01 -0000 Resent-Date: 24 Feb 2002 18:06:01 -0000 Resent-Message-ID: <20020224180601.4901.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-To: nobody@gcc.gnu.org Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, gintas@ki.ericsson.se Received:(qmail 19091 invoked by uid 61); 24 Feb 2002 17:56:14 -0000 Message-Id:<20020224175614.19090.qmail@sources.redhat.com> Date: Sun, 24 Feb 2002 10:13:00 -0000 From: gintas@ki.ericsson.se Reply-To: gintas@ki.ericsson.se To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version:gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: target/5769: can't build a29k-amd-udi target on sparc-sun-solaris2.6 host X-SW-Source: 2002-02/txt/msg00668.txt.bz2 List-Id: >Number: 5769 >Category: target >Synopsis: can't build a29k-amd-udi target on sparc-sun-solaris2.6 host >Confidential: no >Severity: critical >Priority: medium >Responsible: unassigned >State: open >Class: sw-bug >Submitter-Id: net >Arrival-Date: Sun Feb 24 10:06:01 PST 2002 >Closed-Date: >Last-Modified: >Originator: Gintautas Grigelionis >Release: 3.0.4 >Organization: >Environment: gcc: Configured with: ../gcc-3.0.4/configure --prefix=/tools/gnu/GCC/3.0.4 --disable-nls --disable-dynamic --with-as=/tools/gnu/GCC/3.0.4/bin/as --with-ld=/tools/gnu/GCC/3.0.4/bin/ld --with-gnu-as --with-gnu-ld --enable-languages=c,c++ Thread model: posix gcc version 3.0.4 xgcc: Configured with: ../gcc-3.0.4/configure --prefix=/tools/gnu/a29k/3.0.4 --target=a29k-amd-udi --disable-nls --enable-languages=c,c++ Thread model: single gcc version 3.0.4 >Description: xgcc fails to build libgcc2 /ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/xgcc -B/ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/ -B/tools/gnu/a29k/3.0.4/a29k-amd-udi/bin/ -B/tools/gnu/a29k/3.0.4/a29k-amd-udi/lib/ -isystem /tools/gnu/a29k/3.0.4/a29k-amd-udi/include -O2 -DCROSS_COMPILE -DIN_GCC -DSVR4 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -g1 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I. -I../../gcc-3.0.4/gcc -I../../gcc-3.0.4/gcc/. -I../../gcc-3.0.4/gcc/config -I../../gcc-3.0.4/gcc/../include -DL_fixunsdfdi -c ../../gcc-3.0.4/gcc/libgcc2.c -o libgcc/./_fixunsdfdi.o ../../gcc-3.0.4/gcc/libgcc2.c: In function `__fixunsdfdi': ../../gcc-3.0.4/gcc/libgcc2.c:940: Internal error: Segmentation Fault A more detailed output: /ux/build/gintas/cross/build-a29k sunos56-gcc-304/gcc/xgcc -v -save-temps -B/ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/ -B/tools/gnu/a29k/3.0.4/a29k-amd-udi/bin/ -B/tools/gnu/a29k/3.0.4/a29k-amd-udi/lib/ -isystem /tools/gnu/a29k/3.0.4/a29k-amd-udi/include -O2 -DCROSS_COMPILE -DIN_GCC -DSVR4 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -isystem ./include -g1 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -I. -I. -I../../gcc-3.0.4/gcc -I../../gcc-3.0.4/gcc/. -I../../gcc-3.0.4/gcc/config -I../../gcc-3.0.4/gcc/../include -DL_fixunsdfdi -c ../../gcc-3.0.4/gcc/libgcc2.c -o libgcc/./_fixunsdfdi.o Reading specs from /ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/specs Configured with: ../gcc-3.0.4/configure --prefix=/tools/gnu/a29k/3.0.4 --target=a29k-amd-udi --disable-nls --enable-languages=c,c++ Thread model: single gcc version 3.0.4 /ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/cpp0 -lang-c -v -I. -I. -I../../gcc-3.0.4/gcc -I../../gcc-3.0.4/gcc/. -I../../gcc-3.0.4/gcc/config -I../../gcc-3.0.4/gcc/../include -iprefix /ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/../lib/gcc-lib/a29k-amd-udi/3.0.4/ -isystem /ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/include -isystem /tools/gnu/a29k/3.0.4/a29k-amd-udi/bin/include -isystem /tools/gnu/a29k/3.0.4/a29k-amd-udi/lib/include -D__GNUC__=3 -D__GNUC_MINOR__=0 -D__GNUC_PATCHLEVEL__=4 -D_AM29K -D_AM29000 -D_EPI -D_AM29K -D_AM29000 -D_EPI -Acpu=a29k -Amachine=a29k -D__CHAR_UNSIGNED__ -D__OPTIMIZE__ -D__STDC_HOSTED__=1 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -DCROSS_COMPILE -DIN_GCC -DSVR4 -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED -Dinhibit_libc -DL_fixunsdfdi -isystem /tools/gnu/a29k/3.0.4/a29k-amd-udi/include -isystem ./include ../../gcc-3.0.4/gcc/libgcc2.c libgcc2.i ignoring nonexistent directory "/tools/gnu/a29k/3.0.4/a29k-amd-udi/bin/include" ignoring nonexistent directory "/tools/gnu/a29k/3.0.4/a29k-amd-udi/lib/include" ignoring nonexistent directory "/tools/gnu/a29k/3.0.4/a29k-amd-udi/include" GNU CPP version 3.0.4 (cpplib) ignoring nonexistent directory "/ux/build/gintas/cross/build-a29k-sunos56-gcc-304/lib/gcc-lib/a29k-amd-udi/3.0.4/include" ignoring nonexistent directory "/ux/build/gintas/cross/build-a29k-sunos56-gcc-304/lib/gcc-lib/a29k-amd-udi/3.0.4/../../../../a29k-amd-udi/sys-include" ignoring nonexistent directory "/ux/build/gintas/cross/build-a29k-sunos56-gcc-304/lib/gcc-lib/a29k-amd-udi/3.0.4/../../../../a29k-amd-udi/include" ignoring nonexistent directory "/tools/gnu/a29k/3.0.4/lib/gcc-lib/a29k-amd-udi/3.0.4/include" ignoring nonexistent directory "/tools/gnu/a29k/3.0.4/lib/gcc-lib/a29k-amd-udi/3.0.4/../../../../a29k-amd-udi/sys-include" ignoring nonexistent directory "/tools/gnu/a29k/3.0.4/lib/gcc-lib/a29k-amd-udi/3.0.4/../../../../a29k-amd-udi/include" ignoring duplicate directory "." ignoring duplicate directory "../../gcc-3.0.4/gcc" ignoring duplicate directory "include" #include "..." search starts here: #include <...> search starts here: . ../../gcc-3.0.4/gcc ../../gcc-3.0.4/gcc/config ../../gcc-3.0.4/include /ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/include /tools/gnu/a29k/3.0.4/include End of search list. /ux/build/gintas/cross/build-a29k-sunos56-gcc-304/gcc/cc1 -fpreprocessed libgcc2.i -quiet -dumpbase libgcc2.c -g1 -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -version -o libgcc2.s GNU CPP version 3.0.4 (cpplib) GNU C version 3.0.4 (a29k-amd-udi) compiled by GNU C version 3.0.4. ../../gcc-3.0.4/gcc/libgcc2.c: In function `__fixunsdfdi': ../../gcc-3.0.4/gcc/libgcc2.c:940: Internal error: Segmentation Fault >How-To-Repeat: build a gcc 3.0.4 bootstrapped with binutils 2.11.2, then build binutils for a29k-amd-udi target, then build gcc for the same target according to cross FAQ. Step gcc/config/a29k/a29k.c to version 1.13, and gcc/config/a29k/a29k.h to version 1.19 in order to avoid undefined symbols (oballoc -> xmalloc) resp bad definition for shift_constant_operand from gencodes. >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="libgcc2.i" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="libgcc2.i" IyAzNiAiLi4vLi4vZ2NjLTMuMC40L2djYy9saWJnY2MyLmMiCiMgMSAidGNvbmZpZy5oIiAxCgoj IDEgIi4uLy4uL2djYy0zLjAuNC9nY2MvZ2Fuc2lkZWNsLmgiIDEKIyAyOCAiLi4vLi4vZ2NjLTMu MC40L2djYy9nYW5zaWRlY2wuaCIKIyAxICIuLi8uLi9nY2MtMy4wLjQvaW5jbHVkZS9hbnNpZGVj bC5oIiAxCiMgMjkgIi4uLy4uL2djYy0zLjAuNC9nY2MvZ2Fuc2lkZWNsLmgiIDIKIyAzICJ0Y29u ZmlnLmgiIDIKIyAxICIuLi8uLi9nY2MtMy4wLjQvZ2NjL2NvbmZpZy9hMjlrL3htLWEyOWsuaCIg MQojIDMyICIuLi8uLi9nY2MtMy4wLjQvZ2NjL2NvbmZpZy9hMjlrL3htLWEyOWsuaCIKIyAxICJ0 bS5oIiAxCgojIDEgIi4uLy4uL2djYy0zLjAuNC9nY2MvZ2Fuc2lkZWNsLmgiIDEKIyAzICJ0bS5o IiAyCiMgMSAiLi4vLi4vZ2NjLTMuMC40L2djYy9jb25maWcvYTI5ay9hMjlrLmgiIDEKIyAzNiAi Li4vLi4vZ2NjLTMuMC40L2djYy9jb25maWcvYTI5ay9hMjlrLmgiCmV4dGVybiBpbnQgdGFyZ2V0 X2ZsYWdzOwojIDUyMiAiLi4vLi4vZ2NjLTMuMC40L2djYy9jb25maWcvYTI5ay9hMjlrLmgiCmVu dW0gcmVnX2NsYXNzIHsgTk9fUkVHUywgTFIwX1JFR1MsIEdFTkVSQUxfUkVHUywgQlBfUkVHUywg RkNfUkVHUywgQ1JfUkVHUywKICAgICAgICAgICAgICAgICBRX1JFR1MsIFNQRUNJQUxfUkVHUywg QUNDVU0wX1JFR1MsIEFDQ1VNX1JFR1MsIEZMT0FUX1JFR1MsCiAgICAgICAgICAgICAgICAgQUxM X1JFR1MsIExJTV9SRUdfQ0xBU1NFUyB9OwojIDkyMSAiLi4vLi4vZ2NjLTMuMC40L2djYy9jb25m aWcvYTI5ay9hMjlrLmgiCmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqYTI5a19jb21wYXJlX29wMCwg KmEyOWtfY29tcGFyZV9vcDE7CmV4dGVybiBpbnQgYTI5a19jb21wYXJlX2ZwX3A7CiMgOTMyICIu Li8uLi9nY2MtMy4wLjQvZ2NjL2NvbmZpZy9hMjlrL2EyOWsuaCIKZXh0ZXJuIGNvbnN0IGNoYXIg KmEyOWtfZnVuY3Rpb25fbmFtZTsKIyAxNDUwICIuLi8uLi9nY2MtMy4wLjQvZ2NjL2NvbmZpZy9h MjlrL2EyOWsuaCIKZXh0ZXJuIGludCBhMjlrX2RlYnVnX3JlZ19tYXBbXTsKIyA0ICJ0bS5oIiAy CiMgMSAiLi4vLi4vZ2NjLTMuMC40L2djYy9jb25maWcvZGJ4Y29mZi5oIiAxCiMgNSAidG0uaCIg MgojIDEgIi4uLy4uL2djYy0zLjAuNC9nY2MvY29uZmlnL2EyOWsvdWRpLmgiIDEKIyA2ICJ0bS5o IiAyCiMgMSAiLi4vLi4vZ2NjLTMuMC40L2djYy9kZWZhdWx0cy5oIiAxCiMgNyAidG0uaCIgMgoK CiMgMSAiaW5zbi1jb2Rlcy5oIiAxCgoKCgoKZW51bSBpbnNuX2NvZGUgewogIENPREVfRk9SX2Fk ZHNpMyA9IDAsCiAgQ09ERV9GT1JfYWRkZGkzID0gMSwKICBDT0RFX0ZPUl9hbmRzaTMgPSAyLAog IENPREVfRk9SX2ZpeF90cnVuY3Nmc2kyID0gMTQsCiAgQ09ERV9GT1JfZml4X3RydW5jZGZzaTIg PSAxNSwKICBDT0RFX0ZPUl9maXh1bnNfdHJ1bmNzZnNpMiA9IDE2LAogIENPREVfRk9SX2ZpeHVu c190cnVuY2Rmc2kyID0gMTcsCiAgQ09ERV9GT1JfdHJ1bmNkZnNmMiA9IDE4LAogIENPREVfRk9S X2V4dGVuZHNmZGYyID0gMTksCiAgQ09ERV9GT1JfZmxvYXRzaXNmMiA9IDIwLAogIENPREVfRk9S X2Zsb2F0c2lkZjIgPSAyMSwKICBDT0RFX0ZPUl9mbG9hdHVuc3Npc2YyID0gMjIsCiAgQ09ERV9G T1JfZmxvYXR1bnNzaWRmMiA9IDIzLAogIENPREVfRk9SX2RpdmRmMyA9IDI5LAogIENPREVfRk9S X2RpdnNmMyA9IDU0LAogIENPREVfRk9SX211bHNpMyA9IDgzLAogIENPREVfRk9SX211bHNpZGkz ID0gODQsCiAgQ09ERV9GT1JfdW11bHNpZGkzID0gODUsCiAgQ09ERV9GT1Jfc211bHNpM19oaWdo cGFydCA9IDg2LAogIENPREVfRk9SX3VtdWxzaTNfaGlnaHBhcnQgPSA4NywKICBDT0RFX0ZPUl9v bmVfY21wbHNpMiA9IDkxLAogIENPREVfRk9SX25vcCA9IDk1LAogIENPREVfRk9SX2FzaGxzaTMg PSA5NiwKICBDT0RFX0ZPUl9zcXJ0c2YyID0gOTcsCiAgQ09ERV9GT1Jfc3FydGRmMiA9IDk4LAog IENPREVfRk9SX2FzaHJzaTMgPSA5OSwKICBDT0RFX0ZPUl9sc2hyc2kzID0gMTAwLAogIENPREVf Rk9SX3N1YmRpMyA9IDEwOCwKICBDT0RFX0ZPUl9uZWdkaTIgPSAxMDksCiAgQ09ERV9GT1JfbmVn c2kyID0gMTEwLAogIENPREVfRk9SX3hvcnNpMyA9IDExMiwKICBDT0RFX0ZPUl96ZXJvX2V4dGVu ZHFpaGkyID0gMTEzLAogIENPREVfRk9SX3plcm9fZXh0ZW5kcWlzaTIgPSAxMTQsCiAgQ09ERV9G T1JfemVyb19leHRlbmRoaXNpMiA9IDExNSwKICBDT0RFX0ZPUl9qdW1wID0gMTMxLAogIENPREVf Rk9SX3JldHVybiA9IDEzMiwKICBDT0RFX0ZPUl9pbmRpcmVjdF9qdW1wID0gMTMzLAogIENPREVf Rk9SX3RhYmxlanVtcCA9IDEzNCwKICBDT0RFX0ZPUl9jYWxsID0gMTM2LAogIENPREVfRk9SX2Nh bGxfaW50ZXJuYWwgPSAxMzcsCiAgQ09ERV9GT1JfY2FsbF92YWx1ZSA9IDEzOCwKICBDT0RFX0ZP Ul9jYWxsX3ZhbHVlX2ludGVybmFsID0gMTM5LAogIENPREVfRk9SX3Byb2JlID0gMTQwLAogIENP REVfRk9SX2FkZGRmMyA9IDE0MSwKICBDT0RFX0ZPUl9kaXZtb2RzaTQgPSAxNDIsCiAgQ09ERV9G T1JfdWRpdm1vZHNpNCA9IDE0MywKICBDT0RFX0ZPUl9tdWxkZjMgPSAxNDQsCiAgQ09ERV9GT1Jf c3ViZGYzID0gMTQ1LAogIENPREVfRk9SX2V4dHp2ID0gMTQ2LAogIENPREVfRk9SX3JvdGxzaTMg PSAxNDcsCiAgQ09ERV9GT1JfYWRkc2YzID0gMTQ4LAogIENPREVfRk9SX211bHNmMyA9IDE0OSwK ICBDT0RFX0ZPUl9zdWJzZjMgPSAxNTAsCiAgQ09ERV9GT1JfaW5zdiA9IDE1MSwKICBDT0RFX0ZP Ul9sb2FkX211bHRpcGxlID0gMTUyLAogIENPREVfRk9SX2lvcnNpMyA9IDE1NSwKICBDT0RFX0ZP Ul9zdG9yZV9tdWx0aXBsZSA9IDE1NiwKICBDT0RFX0ZPUl9zdG9yZV9tdWx0aXBsZV9ub19idWcg PSAxNTcsCiAgQ09ERV9GT1Jfc3RvcmVfbXVsdGlwbGVfYnVnID0gMTU4LAogIENPREVfRk9SX3N1 YnNpMyA9IDE1OSwKICBDT0RFX0ZPUl9uZWdzZjIgPSAxNjAsCiAgQ09ERV9GT1JfbmVnZGYyID0g MTYxLAogIENPREVfRk9SX2V4dGVuZHFpaGkyID0gMTYyLAogIENPREVfRk9SX2V4dGVuZHFpc2ky ID0gMTYzLAogIENPREVfRk9SX2V4dGVuZGhpc2kyID0gMTY0LAogIENPREVfRk9SX21vdnNpID0g MTY1LAogIENPREVfRk9SX21vdnBzaSA9IDE2NiwKICBDT0RFX0ZPUl9sb2FkaGkgPSAxNjgsCiAg Q09ERV9GT1Jfc3RvcmVoaW5od3cgPSAxNjksCiAgQ09ERV9GT1Jfc3RvcmVoaWh3dyA9IDE3MCwK ICBDT0RFX0ZPUl9tb3ZoaSA9IDE3MSwKICBDT0RFX0ZPUl9yZWxvYWRfaW5oaSA9IDE3MiwKICBD T0RFX0ZPUl9yZWxvYWRfb3V0aGkgPSAxNzMsCiAgQ09ERV9GT1JfbG9hZHFpID0gMTc0LAogIENP REVfRk9SX3N0b3JlcWluaHd3ID0gMTc1LAogIENPREVfRk9SX3N0b3JlcWlod3cgPSAxNzYsCiAg Q09ERV9GT1JfbW92cWkgPSAxNzcsCiAgQ09ERV9GT1JfcmVsb2FkX2lucWkgPSAxNzgsCiAgQ09E RV9GT1JfcmVsb2FkX291dHFpID0gMTc5LAogIENPREVfRk9SX21vdmRpID0gMTg3LAogIENPREVf Rk9SX21vdnNmID0gMTg4LAogIENPREVfRk9SX21vdmRmID0gMTg5LAogIENPREVfRk9SX21vdnRp ID0gMTkwLAogIENPREVfRk9SX3JlbG9hZF9pbmRmID0gMTkxLAogIENPREVfRk9SX3JlbG9hZF9v dXRkZiA9IDE5MiwKICBDT0RFX0ZPUl9yZWxvYWRfaW5kaSA9IDE5MywKICBDT0RFX0ZPUl9yZWxv YWRfb3V0ZGkgPSAxOTQsCiAgQ09ERV9GT1JfcmVsb2FkX2ludGkgPSAxOTUsCiAgQ09ERV9GT1Jf cmVsb2FkX291dHRpID0gMTk2LAogIENPREVfRk9SX2NtcHNpID0gMTk3LAogIENPREVfRk9SX2Nt cHNmID0gMTk4LAogIENPREVfRk9SX2NtcGRmID0gMTk5LAogIENPREVfRk9SX2JlcSA9IDIwMCwK ICBDT0RFX0ZPUl9iZXFfZnAgPSAyMDEsCiAgQ09ERV9GT1JfYm5lID0gMjAyLAogIENPREVfRk9S X2JuZV9mcCA9IDIwMywKICBDT0RFX0ZPUl9ibHQgPSAyMDQsCiAgQ09ERV9GT1JfYmxlID0gMjA1 LAogIENPREVfRk9SX2JsdHUgPSAyMDYsCiAgQ09ERV9GT1JfYmxldSA9IDIwNywKICBDT0RFX0ZP Ul9iZ3QgPSAyMDgsCiAgQ09ERV9GT1JfYmdlID0gMjA5LAogIENPREVfRk9SX2JndHUgPSAyMTAs CiAgQ09ERV9GT1JfYmdldSA9IDIxMSwKICBDT0RFX0ZPUl9zZXEgPSAyMTIsCiAgQ09ERV9GT1Jf c25lX2ZwID0gMjEzLAogIENPREVfRk9SX3NuZSA9IDIxNCwKICBDT0RFX0ZPUl9zbHQgPSAyMTUs CiAgQ09ERV9GT1Jfc2xlID0gMjE2LAogIENPREVfRk9SX3NsdHUgPSAyMTcsCiAgQ09ERV9GT1Jf c2xldSA9IDIxOCwKICBDT0RFX0ZPUl9zZ3QgPSAyMTksCiAgQ09ERV9GT1Jfc2dlID0gMjIwLAog IENPREVfRk9SX3NndHUgPSAyMjEsCiAgQ09ERV9GT1Jfc2dldSA9IDIyMiwKICBDT0RFX0ZPUl9u b3RoaW5nID0gMjIzIH07CgoKCgpzdHJ1Y3QgcnR4X2RlZjsKIyAxICIuLi8uLi9nY2MtMy4wLjQv Z2NjL21hY2htb2RlLmgiIDEKIyAyOSAiLi4vLi4vZ2NjLTMuMC40L2djYy9tYWNobW9kZS5oIgpl bnVtIG1hY2hpbmVfbW9kZSB7CiMgMSAiLi4vLi4vZ2NjLTMuMC40L2djYy9tYWNobW9kZS5kZWYi IDEKIyA2NyAiLi4vLi4vZ2NjLTMuMC40L2djYy9tYWNobW9kZS5kZWYiClZPSURtb2RlLAoKQklt b2RlLApRSW1vZGUsCkhJbW9kZSwKU0ltb2RlLApESW1vZGUsClRJbW9kZSwKT0ltb2RlLAoKCgoK UFFJbW9kZSwKUEhJbW9kZSwKUFNJbW9kZSwKUERJbW9kZSwKClFGbW9kZSwKSEZtb2RlLApUUUZt b2RlLApTRm1vZGUsCkRGbW9kZSwKWEZtb2RlLApURm1vZGUsCgoKUUNtb2RlLApIQ21vZGUsClND bW9kZSwKRENtb2RlLApYQ21vZGUsClRDbW9kZSwKCkNRSW1vZGUsCkNISW1vZGUsCkNTSW1vZGUs CkNESW1vZGUsCkNUSW1vZGUsCkNPSW1vZGUsCgoKCgpWMlFJbW9kZSwKVjJISW1vZGUsClYyU0lt b2RlLApWMkRJbW9kZSwKClY0UUltb2RlLApWNEhJbW9kZSwKVjRTSW1vZGUsClY0REltb2RlLAoK VjhRSW1vZGUsClY4SEltb2RlLApWOFNJbW9kZSwKVjhESW1vZGUsCgpWMTZRSW1vZGUsCgpWMlNG bW9kZSwKVjJERm1vZGUsCgpWNFNGbW9kZSwKVjRERm1vZGUsCgpWOFNGbW9kZSwKVjhERm1vZGUs CgoKCkJMS21vZGUsCiMgMTQ4ICIuLi8uLi9nY2MtMy4wLjQvZ2NjL21hY2htb2RlLmRlZiIKQ0Nt b2RlLAojIDMxICIuLi8uLi9nY2MtMy4wLjQvZ2NjL21hY2htb2RlLmgiIDIKTUFYX01BQ0hJTkVf TU9ERSB9OwojIDQxICIuLi8uLi9nY2MtMy4wLjQvZ2NjL21hY2htb2RlLmgiCmV4dGVybiBjb25z dCBjaGFyICogY29uc3QgbW9kZV9uYW1lW107CgoKZW51bSBtb2RlX2NsYXNzIHsgTU9ERV9SQU5E T00sIE1PREVfSU5ULCBNT0RFX0ZMT0FULCBNT0RFX1BBUlRJQUxfSU5ULCBNT0RFX0NDLAogICAg ICAgICAgICAgICAgICBNT0RFX0NPTVBMRVhfSU5ULCBNT0RFX0NPTVBMRVhfRkxPQVQsCiAgICAg ICAgICAgICAgICAgIE1PREVfVkVDVE9SX0lOVCwgTU9ERV9WRUNUT1JfRkxPQVQsCiAgICAgICAg ICAgICAgICAgIE1BWF9NT0RFX0NMQVNTfTsKCgoKCmV4dGVybiBjb25zdCBlbnVtIG1vZGVfY2xh c3MgbW9kZV9jbGFzc1tdOwojIDgwICIuLi8uLi9nY2MtMy4wLjQvZ2NjL21hY2htb2RlLmgiCmV4 dGVybiBjb25zdCB1bnNpZ25lZCBpbnQgbW9kZV9zaXplW107CgoKCgpleHRlcm4gY29uc3QgdW5z aWduZWQgaW50IG1vZGVfdW5pdF9zaXplW107CiMgOTYgIi4uLy4uL2djYy0zLjAuNC9nY2MvbWFj aG1vZGUuaCIKZXh0ZXJuIGNvbnN0IHVuc2lnbmVkIGludCBtb2RlX2JpdHNpemVbXTsKIyAxMTcg Ii4uLy4uL2djYy0zLjAuNC9nY2MvbWFjaG1vZGUuaCIKZXh0ZXJuIGNvbnN0IHVuc2lnbmVkIGNo YXIgbW9kZV93aWRlcl9tb2RlW107CgoKCgoKCmV4dGVybiBlbnVtIG1hY2hpbmVfbW9kZSBtb2Rl X2Zvcl9zaXplICh1bnNpZ25lZCBpbnQsIGVudW0gbW9kZV9jbGFzcywgaW50KTsKCgoKCmV4dGVy biBlbnVtIG1hY2hpbmVfbW9kZSBzbWFsbGVzdF9tb2RlX2Zvcl9zaXplCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKHVuc2lnbmVkIGludCwgZW51bSBtb2RlX2NsYXNzKTsKCgoKCgpl eHRlcm4gZW51bSBtYWNoaW5lX21vZGUgaW50X21vZGVfZm9yX21vZGUgKGVudW0gbWFjaGluZV9t b2RlKTsKCgoKZXh0ZXJuIGVudW0gbWFjaGluZV9tb2RlIGdldF9iZXN0X21vZGUgKGludCwgaW50 LCB1bnNpZ25lZCBpbnQsIGVudW0gbWFjaGluZV9tb2RlLCBpbnQpOwoKCgoKZXh0ZXJuIHVuc2ln bmVkIGdldF9tb2RlX2FsaWdubWVudCAoZW51bSBtYWNoaW5lX21vZGUpOwoKCgoKCmV4dGVybiBj b25zdCBlbnVtIG1hY2hpbmVfbW9kZSBjbGFzc19uYXJyb3dlc3RfbW9kZVtdOwoKCgoKCmV4dGVy biBlbnVtIG1hY2hpbmVfbW9kZSBieXRlX21vZGU7CmV4dGVybiBlbnVtIG1hY2hpbmVfbW9kZSB3 b3JkX21vZGU7CmV4dGVybiBlbnVtIG1hY2hpbmVfbW9kZSBwdHJfbW9kZTsKIyAxMjkgImluc24t Y29kZXMuaCIgMgoKZXh0ZXJuIGludCBjaW50Xzhfb3BlcmFuZCAoc3RydWN0IHJ0eF9kZWYgKiwg ZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGNpbnRfMTZfb3BlcmFuZCAoc3RydWN0IHJ0 eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGxvbmdfY29uc3Rfb3BlcmFu ZCAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGNvbnN0 XzBfb3BlcmFuZCAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4g aW50IGNvbnN0Xzhfb3BlcmFuZCAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUp OwpleHRlcm4gaW50IGNvbnN0XzE2X29wZXJhbmQgKHN0cnVjdCBydHhfZGVmICosIGVudW0gbWFj aGluZV9tb2RlKTsKZXh0ZXJuIGludCBjb25zdF8yNF9vcGVyYW5kIChzdHJ1Y3QgcnR4X2RlZiAq LCBlbnVtIG1hY2hpbmVfbW9kZSk7CmV4dGVybiBpbnQgZmxvYXRfY29uc3Rfb3BlcmFuZCAoc3Ry dWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGdwY19yZWdfb3Bl cmFuZCAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGdw Y19yZWdfb3JfZmxvYXRfY29uc3RhbnRfb3BlcmFuZCAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBt YWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGdwY19yZWdfb3JfaW50ZWdlcl9jb25zdGFudF9vcGVy YW5kIChzdHJ1Y3QgcnR4X2RlZiAqLCBlbnVtIG1hY2hpbmVfbW9kZSk7CmV4dGVybiBpbnQgZ3Bj X3JlZ19vcl9pbW1lZGlhdGVfb3BlcmFuZCAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5l X21vZGUpOwpleHRlcm4gaW50IHNwZWNfcmVnX29wZXJhbmQgKHN0cnVjdCBydHhfZGVmICosIGVu dW0gbWFjaGluZV9tb2RlKTsKZXh0ZXJuIGludCBhY2N1bV9yZWdfb3BlcmFuZCAoc3RydWN0IHJ0 eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IHNyY2Jfb3BlcmFuZCAoc3Ry dWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGNtcGxzcmNiX29w ZXJhbmQgKHN0cnVjdCBydHhfZGVmICosIGVudW0gbWFjaGluZV9tb2RlKTsKZXh0ZXJuIGludCBy ZWdfb3JfaW1tZWRpYXRlX29wZXJhbmQgKHN0cnVjdCBydHhfZGVmICosIGVudW0gbWFjaGluZV9t b2RlKTsKZXh0ZXJuIGludCByZWdfb3JfdV9zaG9ydF9vcGVyYW5kIChzdHJ1Y3QgcnR4X2RlZiAq LCBlbnVtIG1hY2hpbmVfbW9kZSk7CmV4dGVybiBpbnQgYW5kX29wZXJhbmQgKHN0cnVjdCBydHhf ZGVmICosIGVudW0gbWFjaGluZV9tb2RlKTsKZXh0ZXJuIGludCBhZGRfb3BlcmFuZCAoc3RydWN0 IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGNhbGxfb3BlcmFuZCAo c3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50IGluX29wZXJh bmQgKHN0cnVjdCBydHhfZGVmICosIGVudW0gbWFjaGluZV9tb2RlKTsKZXh0ZXJuIGludCBvdXRf b3BlcmFuZCAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50 IHJlbG9hZF9tZW1vcnlfb3BlcmFuZCAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21v ZGUpOwpleHRlcm4gaW50IGZwX2NvbXBhcmlzb25fb3BlcmF0b3IgKHN0cnVjdCBydHhfZGVmICos IGVudW0gbWFjaGluZV9tb2RlKTsKZXh0ZXJuIGludCBicmFuY2hfb3BlcmF0b3IgKHN0cnVjdCBy dHhfZGVmICosIGVudW0gbWFjaGluZV9tb2RlKTsKZXh0ZXJuIGludCBsb2FkX211bHRpcGxlX29w ZXJhdGlvbiAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5lX21vZGUpOwpleHRlcm4gaW50 IHN0b3JlX211bHRpcGxlX29wZXJhdGlvbiAoc3RydWN0IHJ0eF9kZWYgKiwgZW51bSBtYWNoaW5l X21vZGUpOwpleHRlcm4gaW50IGVwaWxvZ3VlX29wZXJhbmQgKHN0cnVjdCBydHhfZGVmICosIGVu dW0gbWFjaGluZV9tb2RlKTsKIyAxMCAidG0uaCIgMgojIDEgImluc24tZmxhZ3MuaCIgMQojIDEx OSAiaW5zbi1mbGFncy5oIgpzdHJ1Y3QgcnR4X2RlZjsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICog Z2VuX2FkZHNpMyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9hZGRkaTMgKHN0cnVjdCBydHhf ZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0 IHJ0eF9kZWYgKiBnZW5fYW5kc2kzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAq LCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2ZpeF90cnVu Y3Nmc2kyIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVj dCBydHhfZGVmICogZ2VuX2ZpeF90cnVuY2Rmc2kyIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3Qg cnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2ZpeHVuc190cnVuY3Nmc2ky IChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhf ZGVmICogZ2VuX2ZpeHVuc190cnVuY2Rmc2kyIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4 X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3RydW5jZGZzZjIgKHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f ZXh0ZW5kc2ZkZjIgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4g c3RydWN0IHJ0eF9kZWYgKiBnZW5fZmxvYXRzaXNmMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0 IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9mbG9hdHNpZGYyIChzdHJ1 Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICog Z2VuX2Zsb2F0dW5zc2lzZjIgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpl eHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fZmxvYXR1bnNzaWRmMiAoc3RydWN0IHJ0eF9kZWYg Kiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9kaXZkZjMg KHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpl eHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fZGl2c2YzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1 Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICog Z2VuX211bHNpMyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9tdWxzaWRpMyAoc3RydWN0IHJ0 eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1 Y3QgcnR4X2RlZiAqIGdlbl91bXVsc2lkaTMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhf ZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fc211 bHNpM19oaWdocGFydCAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0 IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl91bXVsc2kzX2hpZ2hwYXJ0 IChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsK ZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX29uZV9jbXBsc2kyIChzdHJ1Y3QgcnR4X2RlZiAq LCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX25vcCAodm9p ZCk7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9hc2hsc2kzIChzdHJ1Y3QgcnR4X2RlZiAq LCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhf ZGVmICogZ2VuX3NxcnRzZjIgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpl eHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fc3FydGRmMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3Ry dWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9hc2hyc2kzIChzdHJ1 Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJu IHN0cnVjdCBydHhfZGVmICogZ2VuX2xzaHJzaTMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f c3ViZGkzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2Rl ZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX25lZ2RpMiAoc3RydWN0IHJ0eF9kZWYg Kiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9uZWdzaTIg KHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9k ZWYgKiBnZW5feG9yc2kzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1 Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3plcm9fZXh0ZW5kcWlo aTIgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0 eF9kZWYgKiBnZW5femVyb19leHRlbmRxaXNpMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl96ZXJvX2V4dGVuZGhpc2kyIChz dHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVm ICogZ2VuX2p1bXAgKHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBn ZW5fcmV0dXJuICh2b2lkKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2luZGlyZWN0X2p1 bXAgKHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fdGFibGVq dW1wIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKCmV4dGVybiBzdHJ1Y3Qg cnR4X2RlZiAqIGdlbl9jYWxsIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2NhbGxfaW50ZXJu YWwgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwoKZXh0ZXJuIHN0cnVjdCBy dHhfZGVmICogZ2VuX2NhbGxfdmFsdWUgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVm ICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0 eF9kZWYgKiBnZW5fY2FsbF92YWx1ZV9pbnRlcm5hbCAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0 IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdl bl9wcm9iZSAodm9pZCk7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9hZGRkZjMgKHN0cnVj dCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4g c3RydWN0IHJ0eF9kZWYgKiBnZW5fZGl2bW9kc2k0IChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3Qg cnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0 cnVjdCBydHhfZGVmICogZ2VuX3VkaXZtb2RzaTQgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3Ry dWN0IHJ0eF9kZWYgKiBnZW5fbXVsZGYzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2Rl ZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3N1YmRm MyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7 CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9leHR6diAoc3RydWN0IHJ0eF9kZWYgKiwgc3Ry dWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVy biBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9yb3Rsc2kzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3Qg cnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2Vu X2FkZHNmMyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9k ZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9tdWxzZjMgKHN0cnVjdCBydHhfZGVm ICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0 eF9kZWYgKiBnZW5fc3Vic2YzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2luc3YgKHN0cnVj dCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fbG9hZF9tdWx0aXBsZSAoc3Ry dWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVy biBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9pb3JzaTMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f c3RvcmVfbXVsdGlwbGUgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVj dCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fc3RvcmVfbXVsdGlwbGVf bm9fYnVnIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2Rl ZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3N0b3JlX211bHRpcGxlX2J1ZyAoc3Ry dWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVy biBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zdWJzaTMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f bmVnc2YyIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVj dCBydHhfZGVmICogZ2VuX25lZ2RmMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYg Kik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9leHRlbmRxaWhpMiAoc3RydWN0IHJ0eF9k ZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9leHRl bmRxaXNpMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1 Y3QgcnR4X2RlZiAqIGdlbl9leHRlbmRoaXNpMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9tb3ZzaSAoc3RydWN0IHJ0eF9k ZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9tb3Zw c2kgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0 eF9kZWYgKiBnZW5fbG9hZGhpIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVm ICogZ2VuX3N0b3JlaGluaHd3IChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVm ICogZ2VuX3N0b3JlaGlod3cgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0 cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYg KiBnZW5fbW92aGkgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4g c3RydWN0IHJ0eF9kZWYgKiBnZW5fcmVsb2FkX2luaGkgKHN0cnVjdCBydHhfZGVmICosIHN0cnVj dCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBn ZW5fcmVsb2FkX291dGhpIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1 Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2xvYWRxaSAoc3RydWN0 IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zdG9yZXFpbmh3dyAoc3RydWN0 IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zdG9yZXFpaHd3IChzdHJ1Y3Qg cnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4 X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX21vdnFpIChzdHJ1Y3QgcnR4X2Rl ZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3JlbG9h ZF9pbnFpIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2Rl ZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3JlbG9hZF9vdXRxaSAoc3RydWN0IHJ0 eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1 Y3QgcnR4X2RlZiAqIGdlbl9tb3ZkaSAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYg Kik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9tb3ZzZiAoc3RydWN0IHJ0eF9kZWYgKiwg c3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9tb3ZkZiAoc3Ry dWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAq IGdlbl9tb3Z0aSAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBz dHJ1Y3QgcnR4X2RlZiAqIGdlbl9yZWxvYWRfaW5kZiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0 IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdl bl9yZWxvYWRfb3V0ZGYgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVj dCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fcmVsb2FkX2luZGkgKHN0 cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRl cm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fcmVsb2FkX291dGRpIChzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVm ICogZ2VuX3JlbG9hZF9pbnRpIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3JlbG9hZF9vdXR0 aSAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7 CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9jbXBzaSAoc3RydWN0IHJ0eF9kZWYgKiwgc3Ry dWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9jbXBzZiAoc3RydWN0 IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdl bl9jbXBkZiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1 Y3QgcnR4X2RlZiAqIGdlbl9iZXEgKHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0 eF9kZWYgKiBnZW5fYmVxX2ZwIChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhf ZGVmICogZ2VuX2JuZSAoc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAq IGdlbl9ibmVfZnAgKHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBn ZW5fYmx0IChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2Js ZSAoc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9ibHR1IChz dHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2JsZXUgKHN0cnVj dCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fYmd0IChzdHJ1Y3QgcnR4 X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2JnZSAoc3RydWN0IHJ0eF9kZWYg Kik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9iZ3R1IChzdHJ1Y3QgcnR4X2RlZiAqKTsK ZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2JnZXUgKHN0cnVjdCBydHhfZGVmICopOwpleHRl cm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fc2VxIChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0 cnVjdCBydHhfZGVmICogZ2VuX3NuZV9mcCAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9k ZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zbmUg KHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fc2x0IChzdHJ1 Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3NsZSAoc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zbHR1IChzdHJ1Y3QgcnR4X2Rl ZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3NsZXUgKHN0cnVjdCBydHhfZGVmICop OwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fc2d0IChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0 ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3NnZSAoc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBz dHJ1Y3QgcnR4X2RlZiAqIGdlbl9zZ3R1IChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVj dCBydHhfZGVmICogZ2VuX3NnZXUgKHN0cnVjdCBydHhfZGVmICopOwojIDExICJ0bS5oIiAyCiMg MzMgIi4uLy4uL2djYy0zLjAuNC9nY2MvY29uZmlnL2EyOWsveG0tYTI5ay5oIiAyCiMgNCAidGNv bmZpZy5oIiAyCiMgMSAiLi4vLi4vZ2NjLTMuMC40L2djYy9kZWZhdWx0cy5oIiAxCiMgNSAidGNv bmZpZy5oIiAyCgoKIyAxICJpbnNuLWNvZGVzLmgiIDEKIyA4ICJ0Y29uZmlnLmgiIDIKIyAxICJp bnNuLWZsYWdzLmgiIDEKIyAxMTkgImluc24tZmxhZ3MuaCIKc3RydWN0IHJ0eF9kZWY7CmV4dGVy biBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9hZGRzaTMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f YWRkZGkzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2Rl ZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2FuZHNpMyAoc3RydWN0IHJ0eF9kZWYg Kiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4 X2RlZiAqIGdlbl9maXhfdHJ1bmNzZnNpMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9k ZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9maXhfdHJ1bmNkZnNpMiAoc3RydWN0 IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdl bl9maXh1bnNfdHJ1bmNzZnNpMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7 CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9maXh1bnNfdHJ1bmNkZnNpMiAoc3RydWN0IHJ0 eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl90 cnVuY2Rmc2YyIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0 cnVjdCBydHhfZGVmICogZ2VuX2V4dGVuZHNmZGYyIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3Qg cnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2Zsb2F0c2lzZjIgKHN0cnVj dCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBn ZW5fZmxvYXRzaWRmMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVy biBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9mbG9hdHVuc3Npc2YyIChzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2Zsb2F0dW5zc2lk ZjIgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0 eF9kZWYgKiBnZW5fZGl2ZGYzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2RpdnNmMyAoc3Ry dWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVy biBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9tdWxzaTMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f bXVsc2lkaTMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhf ZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fdW11bHNpZGkzIChzdHJ1Y3QgcnR4 X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVj dCBydHhfZGVmICogZ2VuX3NtdWxzaTNfaGlnaHBhcnQgKHN0cnVjdCBydHhfZGVmICosIHN0cnVj dCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBn ZW5fdW11bHNpM19oaWdocGFydCAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwg c3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9vbmVfY21wbHNp MiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4 X2RlZiAqIGdlbl9ub3AgKHZvaWQpOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fYXNobHNp MyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7 CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zcXJ0c2YyIChzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3NxcnRkZjIgKHN0 cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYg KiBnZW5fYXNocnNpMyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0 IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9sc2hyc2kzIChzdHJ1Y3Qg cnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0 cnVjdCBydHhfZGVmICogZ2VuX3N1YmRpMyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9k ZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9uZWdk aTIgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0 eF9kZWYgKiBnZW5fbmVnc2kyIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsK ZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3hvcnNpMyAoc3RydWN0IHJ0eF9kZWYgKiwgc3Ry dWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAq IGdlbl96ZXJvX2V4dGVuZHFpaGkyIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAq KTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3plcm9fZXh0ZW5kcWlzaTIgKHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f emVyb19leHRlbmRoaXNpMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4 dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9qdW1wIChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJu IHN0cnVjdCBydHhfZGVmICogZ2VuX3JldHVybiAodm9pZCk7CmV4dGVybiBzdHJ1Y3QgcnR4X2Rl ZiAqIGdlbl9pbmRpcmVjdF9qdW1wIChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBy dHhfZGVmICogZ2VuX3RhYmxlanVtcCAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYg Kik7CgpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fY2FsbCAoc3RydWN0IHJ0eF9kZWYgKiwg c3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2Rl ZiAqIGdlbl9jYWxsX2ludGVybmFsIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAq KTsKCmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9jYWxsX3ZhbHVlIChzdHJ1Y3QgcnR4X2Rl ZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAq KTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2NhbGxfdmFsdWVfaW50ZXJuYWwgKHN0cnVj dCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4g c3RydWN0IHJ0eF9kZWYgKiBnZW5fcHJvYmUgKHZvaWQpOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYg KiBnZW5fYWRkZGYzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3Qg cnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2Rpdm1vZHNpNCAoc3RydWN0 IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl91ZGl2bW9kc2k0IChzdHJ1Y3Qg cnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4 X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX211bGRmMyAoc3RydWN0IHJ0eF9k ZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3Qg cnR4X2RlZiAqIGdlbl9zdWJkZjMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICos IHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fZXh0enYgKHN0 cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVj dCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fcm90bHNpMyAoc3RydWN0 IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBz dHJ1Y3QgcnR4X2RlZiAqIGdlbl9hZGRzZjMgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhf ZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fbXVs c2YzIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAq KTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3N1YnNmMyAoc3RydWN0IHJ0eF9kZWYgKiwg c3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2Rl ZiAqIGdlbl9pbnN2IChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3Qg cnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2Vu X2xvYWRfbXVsdGlwbGUgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVj dCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5faW9yc2kzIChzdHJ1Y3Qg cnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0 cnVjdCBydHhfZGVmICogZ2VuX3N0b3JlX211bHRpcGxlIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1 Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICog Z2VuX3N0b3JlX211bHRpcGxlX25vX2J1ZyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9k ZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zdG9y ZV9tdWx0aXBsZV9idWcgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVj dCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fc3Vic2kzIChzdHJ1Y3Qg cnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0 cnVjdCBydHhfZGVmICogZ2VuX25lZ3NmMiAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9k ZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9uZWdkZjIgKHN0cnVjdCBydHhfZGVm ICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fZXh0ZW5k cWloaTIgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0 IHJ0eF9kZWYgKiBnZW5fZXh0ZW5kcWlzaTIgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhf ZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fZXh0ZW5kaGlzaTIgKHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f bW92c2kgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0 IHJ0eF9kZWYgKiBnZW5fbW92cHNpIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAq KTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2xvYWRoaSAoc3RydWN0IHJ0eF9kZWYgKiwg c3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4 dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zdG9yZWhpbmh3dyAoc3RydWN0IHJ0eF9kZWYgKiwg c3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4 dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zdG9yZWhpaHd3IChzdHJ1Y3QgcnR4X2RlZiAqLCBz dHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0 ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX21vdmhpIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3Qg cnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3JlbG9hZF9pbmhpIChzdHJ1 Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJu IHN0cnVjdCBydHhfZGVmICogZ2VuX3JlbG9hZF9vdXRoaSAoc3RydWN0IHJ0eF9kZWYgKiwgc3Ry dWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAq IGdlbl9sb2FkcWkgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f c3RvcmVxaW5od3cgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f c3RvcmVxaWh3dyAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0 eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9t b3ZxaSAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3Qg cnR4X2RlZiAqIGdlbl9yZWxvYWRfaW5xaSAoc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9k ZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9yZWxv YWRfb3V0cWkgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhf ZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fbW92ZGkgKHN0cnVjdCBydHhfZGVm ICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fbW92c2Yg KHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9k ZWYgKiBnZW5fbW92ZGYgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRl cm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fbW92dGkgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBy dHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fcmVsb2FkX2luZGYgKHN0cnVj dCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4g c3RydWN0IHJ0eF9kZWYgKiBnZW5fcmVsb2FkX291dGRmIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1 Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICog Z2VuX3JlbG9hZF9pbmRpIChzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1Y3QgcnR4X2RlZiAqLCBzdHJ1 Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3JlbG9hZF9vdXRkaSAo c3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4 dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9yZWxvYWRfaW50aSAoc3RydWN0IHJ0eF9kZWYgKiwg c3RydWN0IHJ0eF9kZWYgKiwgc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2Rl ZiAqIGdlbl9yZWxvYWRfb3V0dGkgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICos IHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fY21wc2kgKHN0 cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYg KiBnZW5fY21wc2YgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4g c3RydWN0IHJ0eF9kZWYgKiBnZW5fY21wZGYgKHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhf ZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fYmVxIChzdHJ1Y3QgcnR4X2RlZiAq KTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX2JlcV9mcCAoc3RydWN0IHJ0eF9kZWYgKik7 CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9ibmUgKHN0cnVjdCBydHhfZGVmICopOwpleHRl cm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fYm5lX2ZwIChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJu IHN0cnVjdCBydHhfZGVmICogZ2VuX2JsdCAoc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1 Y3QgcnR4X2RlZiAqIGdlbl9ibGUgKHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0 eF9kZWYgKiBnZW5fYmx0dSAoc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2Rl ZiAqIGdlbl9ibGV1IChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICog Z2VuX2JndCAoc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9i Z2UgKHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fYmd0dSAo c3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9iZ2V1IChzdHJ1 Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3NlcSAoc3RydWN0IHJ0 eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zbmVfZnAgKHN0cnVjdCBydHhf ZGVmICosIHN0cnVjdCBydHhfZGVmICosIHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0 IHJ0eF9kZWYgKiBnZW5fc25lIChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhf ZGVmICogZ2VuX3NsdCAoc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAq IGdlbl9zbGUgKHN0cnVjdCBydHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5f c2x0dSAoc3RydWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zbGV1 IChzdHJ1Y3QgcnR4X2RlZiAqKTsKZXh0ZXJuIHN0cnVjdCBydHhfZGVmICogZ2VuX3NndCAoc3Ry dWN0IHJ0eF9kZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zZ2UgKHN0cnVjdCBy dHhfZGVmICopOwpleHRlcm4gc3RydWN0IHJ0eF9kZWYgKiBnZW5fc2d0dSAoc3RydWN0IHJ0eF9k ZWYgKik7CmV4dGVybiBzdHJ1Y3QgcnR4X2RlZiAqIGdlbl9zZ2V1IChzdHJ1Y3QgcnR4X2RlZiAq KTsKIyA5ICJ0Y29uZmlnLmgiIDIKIyAzNyAiLi4vLi4vZ2NjLTMuMC40L2djYy9saWJnY2MyLmMi IDIKIyAxICIuLi8uLi9nY2MtMy4wLjQvZ2NjL3RzeXN0ZW0uaCIgMQojIDM3ICIuLi8uLi9nY2Mt My4wLjQvZ2NjL3RzeXN0ZW0uaCIKIyAxICIvdXgvYnVpbGQvZ2ludGFzL2Nyb3NzL2J1aWxkLWEy OWstc3Vub3M1Ni1nY2MtMzA0L2djYy9pbmNsdWRlL3N0ZGRlZi5oIiAxIDMKIyAxNDcgIi91eC9i dWlsZC9naW50YXMvY3Jvc3MvYnVpbGQtYTI5ay1zdW5vczU2LWdjYy0zMDQvZ2NjL2luY2x1ZGUv c3RkZGVmLmgiIDMKdHlwZWRlZiBpbnQgcHRyZGlmZl90OwojIDE5OSAiL3V4L2J1aWxkL2dpbnRh cy9jcm9zcy9idWlsZC1hMjlrLXN1bm9zNTYtZ2NjLTMwNC9nY2MvaW5jbHVkZS9zdGRkZWYuaCIg Mwp0eXBlZGVmIHVuc2lnbmVkIGludCBzaXplX3Q7CiMgMjg3ICIvdXgvYnVpbGQvZ2ludGFzL2Ny b3NzL2J1aWxkLWEyOWstc3Vub3M1Ni1nY2MtMzA0L2djYy9pbmNsdWRlL3N0ZGRlZi5oIiAzCnR5 cGVkZWYgY2hhciB3Y2hhcl90OwojIDM4ICIuLi8uLi9nY2MtMy4wLjQvZ2NjL3RzeXN0ZW0uaCIg MgoKCgoKZXh0ZXJuIHZvaWQgKm1hbGxvYyAoc2l6ZV90KTsKCgoKZXh0ZXJuIHZvaWQgZnJlZSAo dm9pZCAqKTsKCgoKZXh0ZXJuIGludCBhdGV4aXQgKHZvaWQgKCopKHZvaWQpKTsKIyAzOCAiLi4v Li4vZ2NjLTMuMC40L2djYy9saWJnY2MyLmMiIDIKIyAxICIuLi8uLi9nY2MtMy4wLjQvZ2NjL2h3 aW50LmgiIDEKIyAzOSAiLi4vLi4vZ2NjLTMuMC40L2djYy9saWJnY2MyLmMiIDIKCiMgMSAiLi4v Li4vZ2NjLTMuMC40L2djYy9tYWNobW9kZS5oIiAxCiMgMTA2ICIuLi8uLi9nY2MtMy4wLjQvZ2Nj L21hY2htb2RlLmgiCmV4dGVybiBjb25zdCB1bnNpZ25lZCBpbnQgbW9kZV9tYXNrX2FycmF5W107 CiMgNDEgIi4uLy4uL2djYy0zLjAuNC9nY2MvbGliZ2NjMi5jIiAyCgoKCgoKCiMgMSAiLi4vLi4v Z2NjLTMuMC40L2djYy9saWJnY2MyLmgiIDEKIyAyNSAiLi4vLi4vZ2NjLTMuMC40L2djYy9saWJn Y2MyLmgiCnR5cGVkZWYgdm9pZCAoKl9fdGVybWluYXRlX2Z1bmNfcHRyKSh2b2lkKSBfX2F0dHJp YnV0ZV9fICgoX19ub3JldHVybl9fKSk7CgpleHRlcm4gaW50IF9fZ2NjX2JjbXAgKGNvbnN0IHVu c2lnbmVkIGNoYXIgKiwgY29uc3QgdW5zaWduZWQgY2hhciAqLCBzaXplX3QpOwpleHRlcm4gdm9p ZCBfX2NsZWFyX2NhY2hlIChjaGFyICosIGNoYXIgKik7CmV4dGVybiB2b2lkIF9fcHVyZV92aXJ0 dWFsICh2b2lkKSBfX2F0dHJpYnV0ZV9fICgoX19ub3JldHVybl9fKSk7CmV4dGVybiB2b2lkIF9f dGVybWluYXRlICh2b2lkKSBfX2F0dHJpYnV0ZV9fICgoX19ub3JldHVybl9fKSk7CmV4dGVybiBf X3Rlcm1pbmF0ZV9mdW5jX3B0ciBfX3Rlcm1pbmF0ZV9zZXRfZnVuYyAoX190ZXJtaW5hdGVfZnVu Y19wdHIpOwpleHRlcm4gdm9pZCBfX2RlZmF1bHRfdGVybWluYXRlICh2b2lkKSBfX2F0dHJpYnV0 ZV9fICgoX19ub3JldHVybl9fKSk7CmV4dGVybiB2b2lkICpfX3Rocm93X3R5cGVfbWF0Y2ggKHZv aWQgKiwgdm9pZCAqLCB2b2lkICopOwpleHRlcm4gdm9pZCAqX19nZXRfZWhfY29udGV4dCAodm9p ZCk7CmV4dGVybiB2b2lkICoqX19nZXRfZWhfaW5mbyAodm9pZCk7CmV4dGVybiB2b2lkICoqKl9f Z2V0X2R5bmFtaWNfaGFuZGxlcl9jaGFpbiAodm9pZCk7CmV4dGVybiBpbnQgX19laF9ydGltZV9t YXRjaCAodm9pZCAqKTsKZXh0ZXJuIHZvaWQgX191bndpbmRpbmdfY2xlYW51cCAodm9pZCk7CmV4 dGVybiB2b2lkIF9fcmV0aHJvdyAodm9pZCAqKTsKZXh0ZXJuIHZvaWQgX190aHJvdyAodm9pZCk7 CmV4dGVybiB2b2lkIF9fc2p0aHJvdyAodm9pZCkgX19hdHRyaWJ1dGVfXyAoKF9fbm9yZXR1cm5f XykpOwpleHRlcm4gdm9pZCBfX3NqcG9wbnRocm93ICh2b2lkKSBfX2F0dHJpYnV0ZV9fICgoX19u b3JldHVybl9fKSk7CmV4dGVybiB2b2lkIF9fZXByaW50ZiAoY29uc3QgY2hhciAqLCBjb25zdCBj aGFyICosIHVuc2lnbmVkIGludCwgY29uc3QgY2hhciAqKQogIF9fYXR0cmlidXRlX18gKChfX25v cmV0dXJuX18pKTsKZXh0ZXJuIHZvaWQgKl9fZWhfYWxsb2MgKHNpemVfdCk7CmV4dGVybiB2b2lk IF9fZWhfZnJlZSAodm9pZCAqKTsKCnN0cnVjdCBiYjsKZXh0ZXJuIHZvaWQgX19iYl9leGl0X2Z1 bmMgKHZvaWQpOwpleHRlcm4gdm9pZCBfX2JiX2luaXRfZnVuYyAoc3RydWN0IGJiICopOwpleHRl cm4gdm9pZCBfX2JiX2ZvcmtfZnVuYyAodm9pZCk7CmV4dGVybiB2b2lkIF9fYmJfdHJhY2VfZnVu YyAodm9pZCk7CmV4dGVybiB2b2lkIF9fYmJfdHJhY2VfcmV0ICh2b2lkKTsKZXh0ZXJuIHZvaWQg X19iYl9pbml0X3RyYWNlX2Z1bmMgKHN0cnVjdCBiYiAqLCB1bnNpZ25lZCBsb25nKTsKCnN0cnVj dCBleGNlcHRpb25fZGVzY3JpcHRvcjsKZXh0ZXJuIHNob3J0IGludCBfX2dldF9laF90YWJsZV9s YW5ndWFnZSAoc3RydWN0IGV4Y2VwdGlvbl9kZXNjcmlwdG9yICopOwpleHRlcm4gc2hvcnQgaW50 IF9fZ2V0X2VoX3RhYmxlX3ZlcnNpb24gKHN0cnVjdCBleGNlcHRpb25fZGVzY3JpcHRvciAqKTsK IyA4NSAiLi4vLi4vZ2NjLTMuMC40L2djYy9saWJnY2MyLmgiCnR5cGVkZWYgaW50IFFJdHlwZSBf X2F0dHJpYnV0ZV9fICgobW9kZSAoUUkpKSk7CnR5cGVkZWYgdW5zaWduZWQgaW50IFVRSXR5cGUg X19hdHRyaWJ1dGVfXyAoKG1vZGUgKFFJKSkpOwp0eXBlZGVmIGludCBISXR5cGUgX19hdHRyaWJ1 dGVfXyAoKG1vZGUgKEhJKSkpOwp0eXBlZGVmIHVuc2lnbmVkIGludCBVSEl0eXBlIF9fYXR0cmli dXRlX18gKChtb2RlIChISSkpKTsKCgp0eXBlZGVmIGludCBTSXR5cGUgX19hdHRyaWJ1dGVfXyAo KG1vZGUgKFNJKSkpOwp0eXBlZGVmIHVuc2lnbmVkIGludCBVU0l0eXBlIF9fYXR0cmlidXRlX18g KChtb2RlIChTSSkpKTsKCgp0eXBlZGVmIGludCBESXR5cGUgX19hdHRyaWJ1dGVfXyAoKG1vZGUg KERJKSkpOwp0eXBlZGVmIHVuc2lnbmVkIGludCBVREl0eXBlIF9fYXR0cmlidXRlX18gKChtb2Rl IChESSkpKTsKIyAxMDkgIi4uLy4uL2djYy0zLjAuNC9nY2MvbGliZ2NjMi5oIgp0eXBlZGVmIGZs b2F0IFNGdHlwZSBfX2F0dHJpYnV0ZV9fICgobW9kZSAoU0YpKSk7CnR5cGVkZWYgZmxvYXQgREZ0 eXBlIF9fYXR0cmlidXRlX18gKChtb2RlIChERikpKTsKIyAxNDIgIi4uLy4uL2djYy0zLjAuNC9n Y2MvbGliZ2NjMi5oIgp0eXBlZGVmIGludCB3b3JkX3R5cGUgX19hdHRyaWJ1dGVfXyAoKG1vZGUg KF9fd29yZF9fKSkpOwojIDIzNiAiLi4vLi4vZ2NjLTMuMC40L2djYy9saWJnY2MyLmgiCmV4dGVy biBESXR5cGUgX19tdWxkaTMgKERJdHlwZSwgREl0eXBlKTsKZXh0ZXJuIERJdHlwZSBfX2RpdmRp MyAoREl0eXBlLCBESXR5cGUpOwpleHRlcm4gVURJdHlwZSBfX3VkaXZkaTMgKFVESXR5cGUsIFVE SXR5cGUpOwpleHRlcm4gVURJdHlwZSBfX3Vtb2RkaTMgKFVESXR5cGUsIFVESXR5cGUpOwpleHRl cm4gREl0eXBlIF9fbW9kZGkzIChESXR5cGUsIERJdHlwZSk7CgoKCgpleHRlcm4gVURJdHlwZSBf X3VkaXZtb2RkaTQgKFVESXR5cGUsIFVESXR5cGUsIFVESXR5cGUgKik7CgoKCgpleHRlcm4gREl0 eXBlIF9fbmVnZGkyIChESXR5cGUpOwoKCmV4dGVybiBESXR5cGUgX19sc2hyZGkzIChESXR5cGUs IHdvcmRfdHlwZSk7CmV4dGVybiBESXR5cGUgX19hc2hsZGkzIChESXR5cGUsIHdvcmRfdHlwZSk7 CmV4dGVybiBESXR5cGUgX19hc2hyZGkzIChESXR5cGUsIHdvcmRfdHlwZSk7CmV4dGVybiBESXR5 cGUgX19mZnNkaTIgKERJdHlwZSk7CgoKCgpleHRlcm4gVVNJdHlwZSBfX3VkaXZfd19zZGl2IChV U0l0eXBlICosIFVTSXR5cGUsIFVTSXR5cGUsIFVTSXR5cGUpOwoKCmV4dGVybiB3b3JkX3R5cGUg X19jbXBkaTIgKERJdHlwZSwgREl0eXBlKTsKZXh0ZXJuIHdvcmRfdHlwZSBfX3VjbXBkaTIgKERJ dHlwZSwgREl0eXBlKTsKCmV4dGVybiBTSXR5cGUgX19hYnN2c2kyIChTSXR5cGUpOwpleHRlcm4g REl0eXBlIF9fYWJzdmRpMiAoREl0eXBlKTsKZXh0ZXJuIFNJdHlwZSBfX2FkZHZzaTMgKFNJdHlw ZSwgU0l0eXBlKTsKZXh0ZXJuIERJdHlwZSBfX2FkZHZkaTMgKERJdHlwZSwgREl0eXBlKTsKZXh0 ZXJuIFNJdHlwZSBfX3N1YnZzaTMgKFNJdHlwZSwgU0l0eXBlKTsKZXh0ZXJuIERJdHlwZSBfX3N1 YnZkaTMgKERJdHlwZSwgREl0eXBlKTsKZXh0ZXJuIFNJdHlwZSBfX211bHZzaTMgKFNJdHlwZSwg U0l0eXBlKTsKZXh0ZXJuIERJdHlwZSBfX211bHZkaTMgKERJdHlwZSwgREl0eXBlKTsKZXh0ZXJu IFNJdHlwZSBfX25lZ3ZzaTIgKFNJdHlwZSk7CmV4dGVybiBESXR5cGUgX19uZWd2ZGkyIChESXR5 cGUpOwoKCmV4dGVybiBESXR5cGUgX19maXhkZmRpIChERnR5cGUpOwpleHRlcm4gREl0eXBlIF9f Zml4c2ZkaSAoU0Z0eXBlKTsKZXh0ZXJuIERGdHlwZSBfX2Zsb2F0ZGlkZiAoREl0eXBlKTsKZXh0 ZXJuIFNGdHlwZSBfX2Zsb2F0ZGlzZiAoREl0eXBlKTsKZXh0ZXJuIFVTSXR5cGUgX19maXh1bnNk ZnNpIChERnR5cGUpOwpleHRlcm4gVVNJdHlwZSBfX2ZpeHVuc3Nmc2kgKFNGdHlwZSk7CmV4dGVy biBESXR5cGUgX19maXh1bnNkZmRpIChERnR5cGUpOwpleHRlcm4gREl0eXBlIF9fZml4dW5zc2Zk aSAoU0Z0eXBlKTsKIyAzMDYgIi4uLy4uL2djYy0zLjAuNC9nY2MvbGliZ2NjMi5oIgogIHN0cnVj dCBEV3N0cnVjdCB7U0l0eXBlIGhpZ2gsIGxvdzt9OwojIDMxNSAiLi4vLi4vZ2NjLTMuMC40L2dj Yy9saWJnY2MyLmgiCnR5cGVkZWYgdW5pb24KewogIHN0cnVjdCBEV3N0cnVjdCBzOwogIERJdHlw ZSBsbDsKfSBEV3VuaW9uOwoKIyAxICIuLi8uLi9nY2MtMy4wLjQvZ2NjL2xvbmdsb25nLmgiIDEK IyAzMjIgIi4uLy4uL2djYy0zLjAuNC9nY2MvbGliZ2NjMi5oIiAyCiMgNDggIi4uLy4uL2djYy0z LjAuNC9nY2MvbGliZ2NjMi5jIiAyCiMgOTI0ICIuLi8uLi9nY2MtMy4wLjQvZ2NjL2xpYmdjYzIu YyIKREl0eXBlCl9fZml4dW5zZGZkaSAoREZ0eXBlIGEpCnsKICBERnR5cGUgYjsKICBVREl0eXBl IHY7CgogIGlmIChhIDwgMCkKICAgIHJldHVybiAwOwoKCiAgYiA9IChhIC8gKCgoVURJdHlwZSkg MSkgPDwgKHNpemVvZiAoU0l0eXBlKSAqIDgpKSk7CgoKICB2ID0gKFVTSXR5cGUpIGI7CiAgdiA8 PD0gKHNpemVvZiAoU0l0eXBlKSAqIDgpOwoKICBhIC09IChERnR5cGUpdjsKCgoKICBpZiAoYSA8 IDApCiAgICB2IC09IChVU0l0eXBlKSAoLSBhKTsKICBlbHNlCiAgICB2ICs9IChVU0l0eXBlKSBh OwogIHJldHVybiB2Owp9Cg==