From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 79723 invoked by alias); 8 Jul 2015 19:36:21 -0000 Mailing-List: contact jit-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Post: List-Help: List-Subscribe: Sender: jit-owner@gcc.gnu.org Received: (qmail 79527 invoked by uid 89); 8 Jul 2015 19:36:03 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Checked: by ClamAV 0.98.7 on sourceware.org X-Virus-Found: No X-HELO: mail-yk0-f173.google.com X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=29oPKg0GTlqAdw+Et8nxPV6K6ae9aKAFPTGYl75EIXk=; b=FUGy9aCcM44JfWhwW5kE8p6u2TeZZ4VQrEcjZlQmfvon2HKq+JazrF9OXAqcPuJVIE lOifU4OWjqtZ4vm61JxZQcZJUYBfsJ8JATN0hb8S3rPeg+Md05CqBws8RKq5CkCRunyH nsAm+zg4uI/RFlg5fpUmKTQVoEvqTmMpYqrIfz/N64MaQL9IYcYqMkKbngatMtjpOC7K SrG9Klo2jFSdINr4S4SHenLlClXC9wtggPfMi8n97kYK4szmCRwbuUVIcyDxtikolJIr wJyLyWoWmnTBIWNJIO9lNTFjVU5KBqXKZ1qyYwllDyXeAIjcEmkyln8psIHWOBy3ZBdG BgNg== X-Gm-Message-State: ALoCoQlR7bXngaqB6B27Wv3QVxzCYIlJTG5CWUwc0yYCiAjWXycwPpr5fnTxJcZWJQir/MgOtbxw MIME-Version: 1.0 X-Received: by 10.13.212.199 with SMTP id w190mr13269379ywd.57.1436384161080; Wed, 08 Jul 2015 12:36:01 -0700 (PDT) In-Reply-To: <1436382217.24803.101.camel@surprise> References: <1436365266.24803.65.camel@surprise> <1436367926.24803.71.camel@surprise> <1436369443.24803.75.camel@surprise> <1436377619.24803.97.camel@surprise> <1436382217.24803.101.camel@surprise> Date: Thu, 01 Jan 2015 00:00:00 -0000 Message-ID: Subject: Re: Filed PR jit/66812 for the code generation issue From: Dibyendu Majumdar To: David Malcolm Cc: jit@gcc.gnu.org Content-Type: multipart/mixed; boundary=001a114fd454af1cb9051a623fe3 X-SW-Source: 2015-q3/txt/msg00038.txt.bz2 --001a114fd454af1cb9051a623fe3 Content-Type: text/plain; charset=UTF-8 Content-length: 1382 On 8 July 2015 at 20:03, David Malcolm wrote: > On Wed, 2015-07-08 at 20:01 +0100, Dibyendu Majumdar wrote: >> On 8 July 2015 at 18:46, David Malcolm wrote: >> > Dibyendu: what Lua code generated the reproducer? What is the code >> > meant to be doing? >> > >> >> Hi Dave - the Lua test is this: >> >> function x() >> local IX >> if ((10 or true) and false) then >> IX = true >> end; >> return ((10 or true) and false) >> end >> assert(x() == false) >> >> In the original test IX is an upvalue - i.e. a variable in outer >> scope. This is my standalone version of the test. The original test is >> generated as part of the Lua test suite - its purpose is to test >> various permutations of boolean operators. >> >> The original test compares IX and the function return. >> >> The issue is that this test should return false - if you see the >> return statement. However when -O2 or -O3 is enabled it returns true. >> >> The if statement is indeed redundant in this cut down version as IX is >> a local variable. But the return statement is not redundant. > > Thanks. What does this look like as bytecodes? > Ok the bug is still there - I was running the test incorrectly. I have attached the standalone replication and the output. Note that if I remove the redundant if statement then it works correctly. Regards Dibyendu --001a114fd454af1cb9051a623fe3 Content-Type: text/plain; charset=US-ASCII; name="bug_lua_bytecode.txt" Content-Disposition: attachment; filename="bug_lua_bytecode.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ibtyicca1 Content-length: 753 CmZ1bmN0aW9uIDxidWcubHVhOjEsND4gKDE0IGluc3RydWN0aW9ucyBhdCAw eGJlZjZiMCkKMCBwYXJhbXMsIDIgc2xvdHMsIDAgdXB2YWx1ZXMsIDEgbG9j YWwsIDEgY29uc3RhbnQsIDAgZnVuY3Rpb25zCgkxCVsyXQlMT0FETklMICAJ MCAwCgkyCVszXQlMT0FESyAgICAJMSAtMQk7IDEwCgkzCVszXQlURVNUICAg ICAJMSAxCgk0CVszXQlKTVAgICAgICAJMCAwCTsgdG8gNQoJNQlbM10JTE9B REJPT0wgCTEgMCAwCgk2CVszXQlURVNUICAgICAJMSAwCgk3CVszXQlKTVAg ICAgICAJMCAxCTsgdG8gOQoJOAlbM10JTE9BREJPT0wgCTAgMSAwCgk5CVsz XQlMT0FESyAgICAJMSAtMQk7IDEwCgkxMAlbM10JVEVTVCAgICAgCTEgMQoJ MTEJWzNdCUpNUCAgICAgIAkwIDAJOyB0byAxMgoJMTIJWzNdCUxPQURCT09M IAkxIDAgMAoJMTMJWzNdCVJFVFVSTiAgIAkxIDIKCTE0CVs0XQlSRVRVUk4g ICAJMCAxCmNvbnN0YW50cyAoMSkgZm9yIDB4YmVmNmIwOgoJMQkxMApsb2Nh bHMgKDEpIGZvciAweGJlZjZiMDoKCTAJSVgJMgkxNQp1cHZhbHVlcyAoMCkg Zm9yIDB4YmVmNmIwOgo= --001a114fd454af1cb9051a623fe3 Content-Type: text/x-lua; charset=US-ASCII; name="bug.lua" Content-Disposition: attachment; filename="bug.lua" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ibtyic9j0 Content-length: 224 ZnVuY3Rpb24geCgpCiAgbG9jYWwgSVgKICBpZiAoKDEwIG9yIHRydWUpIGFu ZCBmYWxzZSkgdGhlbiBJWCA9IHRydWUgZW5kOyByZXR1cm4gKCgxMCBvciB0 cnVlKSBhbmQgZmFsc2UpCmVuZAoKcmF2aS5kdW1wbHVhKHgpCnJhdmkuY29t cGlsZSh4LDEpCmFzc2VydCh4KCkgPT0gZmFsc2Up --001a114fd454af1cb9051a623fe3 Content-Type: text/plain; charset=US-ASCII; name="bug_output.txt" Content-Disposition: attachment; filename="bug_output.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ibtyiccp2 Content-length: 11387 cmF2aWYxIChzdHJ1Y3QgcmF2aV9sdWFfU3RhdGUgKiBMKQp7CiAgc3RydWN0 IHJhdmlfQ2FsbEluZm8gKiBELjc2MjsKICBzdHJ1Y3QgcmF2aV9UVmFsdWUg KiBELjc2MzsKICBzdHJ1Y3QgcmF2aV9UVmFsdWUgKiBELjc2NDsKICBzaXpl dHlwZSBELjc2NTsKICBzdHJ1Y3QgcmF2aV9UVmFsdWUgKiBELjc2NjsKICBz dHJ1Y3QgcmF2aV9Qcm90byAqIEQuNzY3OwogIHN0cnVjdCByYXZpX1RWYWx1 ZSAqIEQuNzY4OwogIHNpemV0eXBlIEQuNzY5OwogIHN0cnVjdCByYXZpX1RW YWx1ZSAqIEQuNzcwOwogIHNpZ25lZCBsb25nIEQuNzcxOwogIHNpZ25lZCBp bnQgRC43NzI7CiAgc2lnbmVkIGludCBELjc3MzsKICBzaWduZWQgaW50IEQu Nzc0OwogIDx1bm5hbWVkIHR5cGU+IGlmdG1wLjA7CiAgPHVubmFtZWQgdHlw ZT4gaWZ0bXAuMTsKICA8dW5uYW1lZCB0eXBlPiBpZnRtcC4yOwogIDx1bm5h bWVkIHR5cGU+IGlmdG1wLjM7CiAgPHVubmFtZWQgdHlwZT4gRC43OTU7CiAg c2lnbmVkIGludCBELjc5NjsKICA8dW5uYW1lZCB0eXBlPiBpZnRtcC40Owog IDx1bm5hbWVkIHR5cGU+IGlmdG1wLjU7CiAgc2l6ZXR5cGUgRC44MDc7CiAg c3RydWN0IHJhdmlfVFZhbHVlICogRC44MDg7CiAgc2lnbmVkIGludCBELjgw OTsKICBzdHJ1Y3QgcmF2aV9UVmFsdWUgKiBELjgxMDsKICBzaWduZWQgaW50 IEQuODExOwogIDx1bm5hbWVkIHR5cGU+IGNvbXBhcmlzb25fMF8yNjsKICA8 dW5uYW1lZCB0eXBlPiBjb21wYXJpc29uXzBfMjI7CiAgPHVubmFtZWQgdHlw ZT4gY29tcGFyaXNvbl8wXzE5OwogIDx1bm5hbWVkIHR5cGU+IGNvbXBhcmlz b25fMF8xODsKICA8dW5uYW1lZCB0eXBlPiBjb21wYXJpc29uXzBfMTc7CiAg PHVubmFtZWQgdHlwZT4gaXNmYWxzZV8wXzE2OwogIDx1bm5hbWVkIHR5cGU+ IGNvbXBhcmlzb25fMF8xMzsKICA8dW5uYW1lZCB0eXBlPiBjb21wYXJpc29u XzBfMTI7CiAgPHVubmFtZWQgdHlwZT4gY29tcGFyaXNvbl8wXzExOwogIDx1 bm5hbWVkIHR5cGU+IGlzZmFsc2VfMF8xMDsKICA8dW5uYW1lZCB0eXBlPiBj b21wYXJpc29uXzBfNzsKICA8dW5uYW1lZCB0eXBlPiBjb21wYXJpc29uXzBf NjsKICA8dW5uYW1lZCB0eXBlPiBjb21wYXJpc29uXzBfNTsKICA8dW5uYW1l ZCB0eXBlPiBpc2ZhbHNlXzBfNDsKICBzdHJ1Y3QgcmF2aV9MQ2xvc3VyZSAq IGNsOwoKICBlbnRyeToKICBELjc2MiA9IEwtPmNpOwogIEQuNzYzID0gRC43 NjItPmZ1bmM7CiAgY2wgPSBELjc2My0+dmFsdWVfLmdjOwogIEQuNzYyID0g TC0+Y2k7CiAgcmF2aVZfb3BfbG9hZG5pbCAoRC43NjIsIDAsIDApOwogIEQu NzYyID0gTC0+Y2k7CiAgRC43NjQgPSBELjc2Mi0+dS5sLmJhc2U7CiAgRC43 NjUgPSAxNjsKICBELjc2NiA9IEQuNzY0ICsgRC43NjU7CiAgRC43NjcgPSBj bC0+cDsKICBELjc2OCA9IEQuNzY3LT5rOwogIEQuNzY5ID0gMDsKICBELjc3 MCA9IEQuNzY4ICsgRC43Njk7CiAgRC43NzEgPSBELjc3MC0+dmFsdWVfLmk7 CiAgRC43NjYtPnZhbHVlXy5pID0gRC43NzE7CiAgRC43NjIgPSBMLT5jaTsK ICBELjc2NCA9IEQuNzYyLT51LmwuYmFzZTsKICBELjc2NSA9IDE2OwogIEQu NzY2ID0gRC43NjQgKyBELjc2NTsKICBELjc2NyA9IGNsLT5wOwogIEQuNzY4 ID0gRC43NjctPms7CiAgRC43NjkgPSAwOwogIEQuNzcwID0gRC43NjggKyBE Ljc2OTsKICBELjc3MiA9IEQuNzcwLT50dF87CiAgRC43NjYtPnR0XyA9IEQu NzcyOwogIEQuNzYyID0gTC0+Y2k7CiAgRC43NjQgPSBELjc2Mi0+dS5sLmJh c2U7CiAgRC43NjUgPSAxNjsKICBELjc2NiA9IEQuNzY0ICsgRC43NjU7CiAg RC43NzMgPSBELjc2Ni0+dHRfOwogIGNvbXBhcmlzb25fMF81ID0gRC43NzMg PT0gMDsKICBELjc2MiA9IEwtPmNpOwogIEQuNzY0ID0gRC43NjItPnUubC5i YXNlOwogIEQuNzY1ID0gMTY7CiAgRC43NjYgPSBELjc2NCArIEQuNzY1Owog IEQuNzczID0gRC43NjYtPnR0XzsKICBjb21wYXJpc29uXzBfNiA9IEQuNzcz ID09IDE7CiAgRC43NjIgPSBMLT5jaTsKICBELjc2NCA9IEQuNzYyLT51Lmwu YmFzZTsKICBELjc2NSA9IDE2OwogIEQuNzY2ID0gRC43NjQgKyBELjc2NTsK ICBELjc3NCA9IEQuNzY2LT52YWx1ZV8uYjsKICBjb21wYXJpc29uXzBfNyA9 IEQuNzc0ID09IDA7CiAgaWYgKGNvbXBhcmlzb25fMF81ICE9IDApIGdvdG8g PEQuNzc2PjsgZWxzZSBnb3RvIDxELjc3OT47CiAgPEQuNzc5PjoKICBpZiAo Y29tcGFyaXNvbl8wXzYgIT0gMCkgZ290byA8RC43ODM+OyBlbHNlIGdvdG8g PEQuNzgxPjsKICA8RC43ODM+OgogIGlmIChjb21wYXJpc29uXzBfNyAhPSAw KSBnb3RvIDxELjc4ND47IGVsc2UgZ290byA8RC43ODE+OwogIDxELjc4ND46 CiAgaWZ0bXAuMSA9IDE7CiAgZ290byA8RC43ODI+OwogIDxELjc4MT46CiAg aWZ0bXAuMSA9IDA7CiAgPEQuNzgyPjoKICBpZiAoaWZ0bXAuMSAhPSAwKSBn b3RvIDxELjc3Nj47IGVsc2UgZ290byA8RC43Nzc+OwogIDxELjc3Nj46CiAg aWZ0bXAuMCA9IDE7CiAgZ290byA8RC43Nzg+OwogIDxELjc3Nz46CiAgaWZ0 bXAuMCA9IDA7CiAgPEQuNzc4PjoKICBpc2ZhbHNlXzBfNCA9IGlmdG1wLjA7 CiAgaWYgKGlzZmFsc2VfMF80ID09IDApIGdvdG8gT1BfVEVTVF9kb19qbXBf Ml84OyBlbHNlIGdvdG8gT1BfVEVTVF9kb19za2lwXzJfOTsKICBqbXBfNV8x OgogIEQuNzYyID0gTC0+Y2k7CiAgRC43NjQgPSBELjc2Mi0+dS5sLmJhc2U7 CiAgRC43NjUgPSAxNjsKICBELjc2NiA9IEQuNzY0ICsgRC43NjU7CiAgRC43 NjYtPnZhbHVlXy5iID0gMDsKICBELjc2MiA9IEwtPmNpOwogIEQuNzY0ID0g RC43NjItPnUubC5iYXNlOwogIEQuNzY1ID0gMTY7CiAgRC43NjYgPSBELjc2 NCArIEQuNzY1OwogIEQuNzY2LT50dF8gPSAxOwogIEQuNzYyID0gTC0+Y2k7 CiAgRC43NjQgPSBELjc2Mi0+dS5sLmJhc2U7CiAgRC43NjUgPSAxNjsKICBE Ljc2NiA9IEQuNzY0ICsgRC43NjU7CiAgRC43NzMgPSBELjc2Ni0+dHRfOwog IGNvbXBhcmlzb25fMF8xMSA9IEQuNzczID09IDA7CiAgRC43NjIgPSBMLT5j aTsKICBELjc2NCA9IEQuNzYyLT51LmwuYmFzZTsKICBELjc2NSA9IDE2Owog IEQuNzY2ID0gRC43NjQgKyBELjc2NTsKICBELjc3MyA9IEQuNzY2LT50dF87 CiAgY29tcGFyaXNvbl8wXzEyID0gRC43NzMgPT0gMTsKICBELjc2MiA9IEwt PmNpOwogIEQuNzY0ID0gRC43NjItPnUubC5iYXNlOwogIEQuNzY1ID0gMTY7 CiAgRC43NjYgPSBELjc2NCArIEQuNzY1OwogIEQuNzc0ID0gRC43NjYtPnZh bHVlXy5iOwogIGNvbXBhcmlzb25fMF8xMyA9IEQuNzc0ID09IDA7CiAgaWYg KGNvbXBhcmlzb25fMF8xMSAhPSAwKSBnb3RvIDxELjc4Nj47IGVsc2UgZ290 byA8RC43ODk+OwogIDxELjc4OT46CiAgaWYgKGNvbXBhcmlzb25fMF8xMiAh PSAwKSBnb3RvIDxELjc5Mz47IGVsc2UgZ290byA8RC43OTE+OwogIDxELjc5 Mz46CiAgaWYgKGNvbXBhcmlzb25fMF8xMyAhPSAwKSBnb3RvIDxELjc5ND47 IGVsc2UgZ290byA8RC43OTE+OwogIDxELjc5ND46CiAgaWZ0bXAuMyA9IDE7 CiAgZ290byA8RC43OTI+OwogIDxELjc5MT46CiAgaWZ0bXAuMyA9IDA7CiAg PEQuNzkyPjoKICBpZiAoaWZ0bXAuMyAhPSAwKSBnb3RvIDxELjc4Nj47IGVs c2UgZ290byA8RC43ODc+OwogIDxELjc4Nj46CiAgaWZ0bXAuMiA9IDE7CiAg Z290byA8RC43ODg+OwogIDxELjc4Nz46CiAgaWZ0bXAuMiA9IDA7CiAgPEQu Nzg4PjoKICBpc2ZhbHNlXzBfMTAgPSBpZnRtcC4yOwogIEQuNzk1ID0gfmlz ZmFsc2VfMF8xMDsKICBELjc5NiA9IChzaWduZWQgaW50KSBELjc5NTsKICBp ZiAoRC43OTYgPT0gMCkgZ290byBPUF9URVNUX2RvX2ptcF81XzE0OyBlbHNl IGdvdG8gT1BfVEVTVF9kb19za2lwXzVfMTU7CiAgam1wXzlfMjoKICBELjc2 MiA9IEwtPmNpOwogIEQuNzY0ID0gRC43NjItPnUubC5iYXNlOwogIEQuNzY1 ID0gMTY7CiAgRC43NjYgPSBELjc2NCArIEQuNzY1OwogIEQuNzY3ID0gY2wt PnA7CiAgRC43NjggPSBELjc2Ny0+azsKICBELjc2OSA9IDA7CiAgRC43NzAg PSBELjc2OCArIEQuNzY5OwogIEQuNzcxID0gRC43NzAtPnZhbHVlXy5pOwog IEQuNzY2LT52YWx1ZV8uaSA9IEQuNzcxOwogIEQuNzYyID0gTC0+Y2k7CiAg RC43NjQgPSBELjc2Mi0+dS5sLmJhc2U7CiAgRC43NjUgPSAxNjsKICBELjc2 NiA9IEQuNzY0ICsgRC43NjU7CiAgRC43NjcgPSBjbC0+cDsKICBELjc2OCA9 IEQuNzY3LT5rOwogIEQuNzY5ID0gMDsKICBELjc3MCA9IEQuNzY4ICsgRC43 Njk7CiAgRC43NzIgPSBELjc3MC0+dHRfOwogIEQuNzY2LT50dF8gPSBELjc3 MjsKICBELjc2MiA9IEwtPmNpOwogIEQuNzY0ID0gRC43NjItPnUubC5iYXNl OwogIEQuNzY1ID0gMTY7CiAgRC43NjYgPSBELjc2NCArIEQuNzY1OwogIEQu NzczID0gRC43NjYtPnR0XzsKICBjb21wYXJpc29uXzBfMTcgPSBELjc3MyA9 PSAwOwogIEQuNzYyID0gTC0+Y2k7CiAgRC43NjQgPSBELjc2Mi0+dS5sLmJh c2U7CiAgRC43NjUgPSAxNjsKICBELjc2NiA9IEQuNzY0ICsgRC43NjU7CiAg RC43NzMgPSBELjc2Ni0+dHRfOwogIGNvbXBhcmlzb25fMF8xOCA9IEQuNzcz ID09IDE7CiAgRC43NjIgPSBMLT5jaTsKICBELjc2NCA9IEQuNzYyLT51Lmwu YmFzZTsKICBELjc2NSA9IDE2OwogIEQuNzY2ID0gRC43NjQgKyBELjc2NTsK ICBELjc3NCA9IEQuNzY2LT52YWx1ZV8uYjsKICBjb21wYXJpc29uXzBfMTkg PSBELjc3NCA9PSAwOwogIGlmIChjb21wYXJpc29uXzBfMTcgIT0gMCkgZ290 byA8RC43OTg+OyBlbHNlIGdvdG8gPEQuODAxPjsKICA8RC44MDE+OgogIGlm IChjb21wYXJpc29uXzBfMTggIT0gMCkgZ290byA8RC44MDU+OyBlbHNlIGdv dG8gPEQuODAzPjsKICA8RC44MDU+OgogIGlmIChjb21wYXJpc29uXzBfMTkg IT0gMCkgZ290byA8RC44MDY+OyBlbHNlIGdvdG8gPEQuODAzPjsKICA8RC44 MDY+OgogIGlmdG1wLjUgPSAxOwogIGdvdG8gPEQuODA0PjsKICA8RC44MDM+ OgogIGlmdG1wLjUgPSAwOwogIDxELjgwND46CiAgaWYgKGlmdG1wLjUgIT0g MCkgZ290byA8RC43OTg+OyBlbHNlIGdvdG8gPEQuNzk5PjsKICA8RC43OTg+ OgogIGlmdG1wLjQgPSAxOwogIGdvdG8gPEQuODAwPjsKICA8RC43OTk+Ogog IGlmdG1wLjQgPSAwOwogIDxELjgwMD46CiAgaXNmYWxzZV8wXzE2ID0gaWZ0 bXAuNDsKICBpZiAoaXNmYWxzZV8wXzE2ID09IDApIGdvdG8gT1BfVEVTVF9k b19qbXBfOV8yMDsgZWxzZSBnb3RvIE9QX1RFU1RfZG9fc2tpcF85XzIxOwog IGptcF8xMl8zOgogIEQuNzYyID0gTC0+Y2k7CiAgRC43NjQgPSBELjc2Mi0+ dS5sLmJhc2U7CiAgRC43NjUgPSAxNjsKICBELjc2NiA9IEQuNzY0ICsgRC43 NjU7CiAgRC43NjYtPnZhbHVlXy5iID0gMDsKICBELjc2MiA9IEwtPmNpOwog IEQuNzY0ID0gRC43NjItPnUubC5iYXNlOwogIEQuNzY1ID0gMTY7CiAgRC43 NjYgPSBELjc2NCArIEQuNzY1OwogIEQuNzY2LT50dF8gPSAxOwogIEQuNzYy ID0gTC0+Y2k7CiAgRC43NjQgPSBELjc2Mi0+dS5sLmJhc2U7CiAgRC44MDcg PSAzMjsKICBELjgwOCA9IEQuNzY0ICsgRC44MDc7CiAgTC0+dG9wID0gRC44 MDg7CiAgRC43NjcgPSBjbC0+cDsKICBELjgwOSA9IEQuNzY3LT5zaXplcDsK ICBjb21wYXJpc29uXzBfMjIgPSBELjgwOSA+IDA7CiAgaWYgKGNvbXBhcmlz b25fMF8yMiAhPSAwKSBnb3RvIE9QX1JFVFVSTl9pZl9zaXplcF9ndF8wXzEy XzIzOyBlbHNlIGdvdG8gT1BfUkVUVVJOX2Vsc2Vfc2l6ZXBfZ3RfMF8xMl8y NDsKICBPUF9URVNUX2RvX2ptcF8yXzg6CiAgZ290byBqbXBfNV8xOwogIE9Q X1RFU1RfZG9fc2tpcF8yXzk6CiAgZ290byBqbXBfNV8xOwogIE9QX1RFU1Rf ZG9fam1wXzVfMTQ6CiAgZ290byBqbXBfOV8yOwogIE9QX1RFU1RfZG9fc2tp cF81XzE1OgogIEQuNzYyID0gTC0+Y2k7CiAgRC43NjQgPSBELjc2Mi0+dS5s LmJhc2U7CiAgRC43NjkgPSAwOwogIEQuODEwID0gRC43NjQgKyBELjc2OTsK ICBELjgxMC0+dmFsdWVfLmIgPSAxOwogIEQuNzYyID0gTC0+Y2k7CiAgRC43 NjQgPSBELjc2Mi0+dS5sLmJhc2U7CiAgRC43NjkgPSAwOwogIEQuODEwID0g RC43NjQgKyBELjc2OTsKICBELjgxMC0+dHRfID0gMTsKICBnb3RvIGptcF85 XzI7CiAgT1BfVEVTVF9kb19qbXBfOV8yMDoKICBnb3RvIGptcF8xMl8zOwog IE9QX1RFU1RfZG9fc2tpcF85XzIxOgogIGdvdG8gam1wXzEyXzM7CiAgT1Bf UkVUVVJOX2lmX3NpemVwX2d0XzBfMTJfMjM6CiAgRC43NjIgPSBMLT5jaTsK ICBELjc2NCA9IEQuNzYyLT51LmwuYmFzZTsKICBsdWFGX2Nsb3NlIChMLCBE Ljc2NCk7CiAgZ290byBPUF9SRVRVUk5fZWxzZV9zaXplcF9ndF8wXzEyXzI0 OwogIE9QX1JFVFVSTl9lbHNlX3NpemVwX2d0XzBfMTJfMjQ6CiAgRC43NjIg PSBMLT5jaTsKICBELjc2NCA9IEQuNzYyLT51LmwuYmFzZTsKICBELjc2NSA9 IDE2OwogIEQuNzY2ID0gRC43NjQgKyBELjc2NTsKICBsdWFEX3Bvc2NhbGwg KEwsIEQuNzY2KTsKICBELjgxMSA9IDE7CiAgcmV0dXJuIEQuODExOwogIExJ TktfQkxPQ0tfMTNfMjU6CiAgRC43NjIgPSBMLT5jaTsKICBELjc2NCA9IEQu NzYyLT51LmwuYmFzZTsKICBELjc2OSA9IDA7CiAgRC44MTAgPSBELjc2NCAr IEQuNzY5OwogIEwtPnRvcCA9IEQuODEwOwogIEQuNzY3ID0gY2wtPnA7CiAg RC44MDkgPSBELjc2Ny0+c2l6ZXA7CiAgY29tcGFyaXNvbl8wXzI2ID0gRC44 MDkgPiAwOwogIGlmIChjb21wYXJpc29uXzBfMjYgIT0gMCkgZ290byBPUF9S RVRVUk5faWZfc2l6ZXBfZ3RfMF8xM18yNzsgZWxzZSBnb3RvIE9QX1JFVFVS Tl9lbHNlX3NpemVwX2d0XzBfMTNfMjg7CiAgT1BfUkVUVVJOX2lmX3NpemVw X2d0XzBfMTNfMjc6CiAgRC43NjIgPSBMLT5jaTsKICBELjc2NCA9IEQuNzYy LT51LmwuYmFzZTsKICBsdWFGX2Nsb3NlIChMLCBELjc2NCk7CiAgZ290byBP UF9SRVRVUk5fZWxzZV9zaXplcF9ndF8wXzEzXzI4OwogIE9QX1JFVFVSTl9l bHNlX3NpemVwX2d0XzBfMTNfMjg6CiAgRC43NjIgPSBMLT5jaTsKICBELjc2 NCA9IEQuNzYyLT51LmwuYmFzZTsKICBELjc2OSA9IDA7CiAgRC44MTAgPSBE Ljc2NCArIEQuNzY5OwogIGx1YURfcG9zY2FsbCAoTCwgRC44MTApOwogIEQu ODExID0gMTsKICByZXR1cm4gRC44MTE7Cn0KCgoJLmZpbGUJImZha2UuYyIK CS5zZWN0aW9uCS50ZXh0LnVubGlrZWx5LCJheCIsQHByb2diaXRzCi5MQ09M REIwOgoJLnRleHQKLkxIT1RCMDoKCS5wMmFsaWduIDQsLDE1CgkuZ2xvYmwJ cmF2aWYxCgkudHlwZQlyYXZpZjEsIEBmdW5jdGlvbgpyYXZpZjE6Ci5MRkIw OgoJLmNmaV9zdGFydHByb2MKLkwyOgoJcHVzaHEJJXJicAoJLmNmaV9kZWZf Y2ZhX29mZnNldCAxNgoJLmNmaV9vZmZzZXQgNiwgLTE2CglwdXNocQklcmJ4 CgkuY2ZpX2RlZl9jZmFfb2Zmc2V0IDI0CgkuY2ZpX29mZnNldCAzLCAtMjQK CW1vdnEJJXJkaSwgJXJieAoJeG9ybAklZWR4LCAlZWR4Cgl4b3JsCSVlc2ks ICVlc2kKCXN1YnEJJDgsICVyc3AKCS5jZmlfZGVmX2NmYV9vZmZzZXQgMzIK CW1vdnEJMzIoJXJkaSksICVyZGkKCW1vdnEJKCVyZGkpLCAlcmF4Cgltb3Zx CSglcmF4KSwgJXJicAoJY2FsbAlyYXZpVl9vcF9sb2FkbmlsQFBMVAoJbW92 cQkzMiglcmJ4KSwgJXJheAoJbW92cQkyNCglcmJwKSwgJXJkeAoJbW92cQkz MiglcmF4KSwgJXJzaQoJbW92cQk0OCglcmR4KSwgJXJjeAoJbW92bAkzMigl cmR4KSwgJWVkeAoJbW92cQkoJXJjeCksICVyZGkKCXRlc3RsCSVlZHgsICVl ZHgKCW1vdmwJJDEsIDI0KCVyc2kpCgltb3ZxCSVyZGksIDE2KCVyc2kpCglt b3ZxCSglcmN4KSwgJXJjeAoJbW92cQklcmN4LCAxNiglcnNpKQoJbGVhcQkz MiglcnNpKSwgJXJjeAoJbW92cQklcmN4LCAxNiglcmJ4KQoJamxlCS5MMwou TDQ6Cgltb3ZxCSVyYngsICVyZGkKCWNhbGwJbHVhRl9jbG9zZUBQTFQKCW1v dnEJMzIoJXJieCksICVyYXgKLkwzOgoJbW92cQkzMiglcmF4KSwgJXJzaQoJ bW92cQklcmJ4LCAlcmRpCglhZGRxCSQxNiwgJXJzaQoJY2FsbAlsdWFEX3Bv c2NhbGxAUExUCglhZGRxCSQ4LCAlcnNwCgkuY2ZpX2RlZl9jZmFfb2Zmc2V0 IDI0Cgltb3ZsCSQxLCAlZWF4Cglwb3BxCSVyYngKCS5jZmlfZGVmX2NmYV9v ZmZzZXQgMTYKCXBvcHEJJXJicAoJLmNmaV9kZWZfY2ZhX29mZnNldCA4Cgly ZXQKCS5jZmlfZW5kcHJvYwouTEZFMDoKCS5zaXplCXJhdmlmMSwgLi1yYXZp ZjEKCS5zZWN0aW9uCS50ZXh0LnVubGlrZWx5Ci5MQ09MREUwOgoJLnRleHQK LkxIT1RFMDoKCS5pZGVudAkiR0NDOiAoR05VKSA1LjEuMSAyMDE1MDcwNCIK CS5zZWN0aW9uCS5ub3RlLkdOVS1zdGFjaywiIixAcHJvZ2JpdHMKLi4vYnVp bGQvbHVhOiBidWcubHVhOjg6IGFzc2VydGlvbiBmYWlsZWQhCnN0YWNrIHRy YWNlYmFjazoKCVtDXTogaW4gZnVuY3Rpb24gJ2Fzc2VydCcKCWJ1Zy5sdWE6 ODogaW4gbWFpbiBjaHVuawoJW0NdOiBpbiA/Cg== --001a114fd454af1cb9051a623fe3 Content-Type: text/plain; charset=US-ASCII; name="bug_rdump.txt" Content-Disposition: attachment; filename="bug_rdump.txt" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ibtyicd03 Content-length: 285566 LyogVGhpcyBjb2RlIHdhcyBhdXRvZ2VuZXJhdGVkIGJ5IGdjY19qaXRfY29u dGV4dF9kdW1wX3JlcHJvZHVjZXJfdG9fZmlsZS4KCiAgIGxpYmdjY2ppdCAo R0NDKSB2ZXJzaW9uIDUuMS4xIDIwMTUwNzA0ICh4ODZfNjQtdW5rbm93bi1s aW51eC1nbnUpCiAgCWNvbXBpbGVkIGJ5IEdOVSBDIHZlcnNpb24gNS4xLjAs IEdNUCB2ZXJzaW9uIDUuMS4zLCBNUEZSIHZlcnNpb24gMy4xLjItcDMsIE1Q QyB2ZXJzaW9uIDEuMC4xCiovCiNpbmNsdWRlIDxsaWJnY2NqaXQuaD4KCiNw cmFnbWEgR0NDIGRpYWdub3N0aWMgaWdub3JlZCAiLVd1bnVzZWQtdmFyaWFi bGUiCgpzdGF0aWMgdm9pZApzZXRfb3B0aW9ucyAoZ2NjX2ppdF9jb250ZXh0 ICpjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgZ2NjX2ppdF9jb250ZXh0 ICpjdHh0XzB4YmZkODIwKTsKCnN0YXRpYyB2b2lkCmNyZWF0ZV9jb2RlIChn Y2Nfaml0X2NvbnRleHQgKmN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICBn Y2Nfaml0X2NvbnRleHQgKmN0eHRfMHhiZmQ4MjApOwoKaW50Cm1haW4gKGlu dCBhcmdjLCBjb25zdCBjaGFyICoqYXJndikKewogIGdjY19qaXRfY29udGV4 dCAqY3R4dF8weGJiMGYzMDsKICBnY2Nfaml0X2NvbnRleHQgKmN0eHRfMHhi ZmQ4MjA7CiAgZ2NjX2ppdF9yZXN1bHQgKnJlc3VsdDsKCiAgY3R4dF8weGJi MGYzMCA9IGdjY19qaXRfY29udGV4dF9hY3F1aXJlICgpOwogIGN0eHRfMHhi ZmQ4MjAgPSBnY2Nfaml0X2NvbnRleHRfbmV3X2NoaWxkX2NvbnRleHQgKGN0 eHRfMHhiYjBmMzApOwogIHNldF9vcHRpb25zIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICBjdHh0XzB4YmZkODIwKTsKICBjcmVhdGVfY29kZSAo Y3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgY3R4dF8weGJmZDgyMCk7 CiAgcmVzdWx0ID0gZ2NjX2ppdF9jb250ZXh0X2NvbXBpbGUgKGN0eHRfMHhi ZmQ4MjApOwogIGdjY19qaXRfY29udGV4dF9yZWxlYXNlIChjdHh0XzB4YmZk ODIwKTsKICBnY2Nfaml0X2NvbnRleHRfcmVsZWFzZSAoY3R4dF8weGJiMGYz MCk7CiAgZ2NjX2ppdF9yZXN1bHRfcmVsZWFzZSAocmVzdWx0KTsKICByZXR1 cm4gMDsKfQoKc3RhdGljIHZvaWQKc2V0X29wdGlvbnMgKGdjY19qaXRfY29u dGV4dCAqY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgIGdjY19qaXRfY29u dGV4dCAqY3R4dF8weGJmZDgyMCkKewogIC8qIFNldCBvcHRpb25zIGZvciBj dHh0XzB4YmIwZjMwLiAgKi8KICAvKiBTdHJpbmcgb3B0aW9ucy4gICovCiAg Z2NjX2ppdF9jb250ZXh0X3NldF9zdHJfb3B0aW9uIChjdHh0XzB4YmIwZjMw LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJVF9T VFJfT1BUSU9OX1BST0dOQU1FLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCk7CiAgLyogSW50IG9wdGlvbnMuICAqLwogIGdjY19q aXRfY29udGV4dF9zZXRfaW50X29wdGlvbiAoY3R4dF8weGJiMGYzMCwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfSU5UX09Q VElPTl9PUFRJTUlaQVRJT05fTEVWRUwsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAzKTsKICAvKiBCb29sZWFuIG9wdGlvbnMuICAqLwog IGdjY19qaXRfY29udGV4dF9zZXRfYm9vbF9vcHRpb24gKGN0eHRfMHhiYjBm MzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklU X0JPT0xfT1BUSU9OX0RFQlVHSU5GTywKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDApOwogIGdjY19qaXRfY29udGV4dF9zZXRfYm9vbF9v cHRpb24gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBHQ0NfSklUX0JPT0xfT1BUSU9OX0RVTVBfSU5JVElBTF9U UkVFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7CiAg Z2NjX2ppdF9jb250ZXh0X3NldF9ib29sX29wdGlvbiAoY3R4dF8weGJiMGYz MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRf Qk9PTF9PUFRJT05fRFVNUF9JTklUSUFMX0dJTVBMRSwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDEpOwogIGdjY19qaXRfY29udGV4dF9z ZXRfYm9vbF9vcHRpb24gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0JPT0xfT1BUSU9OX0RVTVBf R0VORVJBVEVEX0NPREUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAxKTsKICBnY2Nfaml0X2NvbnRleHRfc2V0X2Jvb2xfb3B0aW9uIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR0NDX0pJVF9CT09MX09QVElPTl9EVU1QX1NVTU1BUlksCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsKICBnY2Nfaml0X2NvbnRl eHRfc2V0X2Jvb2xfb3B0aW9uIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJVF9CT09MX09QVElPTl9E VU1QX0VWRVJZVEhJTkcsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAwKTsKICBnY2Nfaml0X2NvbnRleHRfc2V0X2Jvb2xfb3B0aW9uIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR0NDX0pJVF9CT09MX09QVElPTl9TRUxGQ0hFQ0tfR0MsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsKICBnY2Nfaml0X2NvbnRl eHRfc2V0X2Jvb2xfb3B0aW9uIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJVF9CT09MX09QVElPTl9L RUVQX0lOVEVSTUVESUFURVMsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAwKTsKICBnY2Nfaml0X2NvbnRleHRfc2V0X2Jvb2xfYWxsb3df dW5yZWFjaGFibGVfYmxvY2tzIChjdHh0XzB4YmIwZjMwLCAxKTsKCiAgLyog U2V0IG9wdGlvbnMgZm9yIGN0eHRfMHhiZmQ4MjAuICAqLwogIC8qIFN0cmlu ZyBvcHRpb25zLiAgKi8KICBnY2Nfaml0X2NvbnRleHRfc2V0X3N0cl9vcHRp b24gKGN0eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBHQ0NfSklUX1NUUl9PUFRJT05fUFJPR05BTUUsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsKICAvKiBJbnQgb3B0 aW9ucy4gICovCiAgZ2NjX2ppdF9jb250ZXh0X3NldF9pbnRfb3B0aW9uIChj dHh0XzB4YmZkODIwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR0NDX0pJVF9JTlRfT1BUSU9OX09QVElNSVpBVElPTl9MRVZFTCwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMpOwogIC8qIEJvb2xl YW4gb3B0aW9ucy4gICovCiAgZ2NjX2ppdF9jb250ZXh0X3NldF9ib29sX29w dGlvbiAoY3R4dF8weGJmZDgyMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEdDQ19KSVRfQk9PTF9PUFRJT05fREVCVUdJTkZPLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7CiAgZ2NjX2ppdF9j b250ZXh0X3NldF9ib29sX29wdGlvbiAoY3R4dF8weGJmZDgyMCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfQk9PTF9PUFRJ T05fRFVNUF9JTklUSUFMX1RSRUUsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAwKTsKICBnY2Nfaml0X2NvbnRleHRfc2V0X2Jvb2xfb3B0 aW9uIChjdHh0XzB4YmZkODIwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgR0NDX0pJVF9CT09MX09QVElPTl9EVU1QX0lOSVRJQUxfR0lN UExFLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSk7CiAg Z2NjX2ppdF9jb250ZXh0X3NldF9ib29sX29wdGlvbiAoY3R4dF8weGJmZDgy MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRf Qk9PTF9PUFRJT05fRFVNUF9HRU5FUkFURURfQ09ERSwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDEpOwogIGdjY19qaXRfY29udGV4dF9z ZXRfYm9vbF9vcHRpb24gKGN0eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0JPT0xfT1BUSU9OX0RVTVBf U1VNTUFSWSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAp OwogIGdjY19qaXRfY29udGV4dF9zZXRfYm9vbF9vcHRpb24gKGN0eHRfMHhi ZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0Nf SklUX0JPT0xfT1BUSU9OX0RVTVBfRVZFUllUSElORywKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDApOwogIGdjY19qaXRfY29udGV4dF9z ZXRfYm9vbF9vcHRpb24gKGN0eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0JPT0xfT1BUSU9OX1NFTEZD SEVDS19HQywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAp OwogIGdjY19qaXRfY29udGV4dF9zZXRfYm9vbF9vcHRpb24gKGN0eHRfMHhi ZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0Nf SklUX0JPT0xfT1BUSU9OX0tFRVBfSU5URVJNRURJQVRFUywKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDApOwogIGdjY19qaXRfY29udGV4 dF9zZXRfYm9vbF9hbGxvd191bnJlYWNoYWJsZV9ibG9ja3MgKGN0eHRfMHhi ZmQ4MjAsIDEpOwp9CgpzdGF0aWMgdm9pZApjcmVhdGVfY29kZSAoZ2NjX2pp dF9jb250ZXh0ICpjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgZ2NjX2pp dF9jb250ZXh0ICpjdHh0XzB4YmZkODIwKQp7CiAgLyogUmVwbGF5IG9mIEFQ SSBjYWxscyBmb3IgY3R4dF8weGJiMGYzMC4gICovCiAgZ2NjX2ppdF90eXBl ICp0eXBlX2Jvb2xfMHhiYjE1OTAgPSBnY2Nfaml0X2NvbnRleHRfZ2V0X3R5 cGUgKGN0eHRfMHhiYjBmMzAsIEdDQ19KSVRfVFlQRV9CT09MKTsKICBnY2Nf aml0X3R5cGUgKnR5cGVfZG91YmxlXzB4YmIxNjAwID0gZ2NjX2ppdF9jb250 ZXh0X2dldF90eXBlIChjdHh0XzB4YmIwZjMwLCBHQ0NfSklUX1RZUEVfRE9V QkxFKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfZG91YmxlX19fMHhiYjE2NDAg PQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2ludGVyICh0eXBlX2RvdWJsZV8w eGJiMTYwMCk7CiAgZ2NjX2ppdF90eXBlICp0eXBlX2RvdWJsZV9fX19fMHhi YjE2ODAgPQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2ludGVyICh0eXBlX2Rv dWJsZV9fXzB4YmIxNjQwKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfbG9uZ19s b25nXzB4YmIxNmMwID0gZ2NjX2ppdF9jb250ZXh0X2dldF90eXBlIChjdHh0 XzB4YmIwZjMwLCBHQ0NfSklUX1RZUEVfTE9OR19MT05HKTsKICBnY2Nfaml0 X3R5cGUgKnR5cGVfbG9uZ19sb25nX19fMHhiYjE3NTAgPQogICAgZ2NjX2pp dF90eXBlX2dldF9wb2ludGVyICh0eXBlX2xvbmdfbG9uZ18weGJiMTZjMCk7 CiAgZ2NjX2ppdF90eXBlICp0eXBlX2xvbmdfbG9uZ19fX19fMHhiYjE3OTAg PQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2ludGVyICh0eXBlX2xvbmdfbG9u Z19fXzB4YmIxNzUwKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfdW5zaWduZWRf bG9uZ19sb25nXzB4YmIxN2QwID0gZ2NjX2ppdF9jb250ZXh0X2dldF90eXBl IChjdHh0XzB4YmIwZjMwLCBHQ0NfSklUX1RZUEVfVU5TSUdORURfTE9OR19M T05HKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfc2l6ZV90XzB4YmIxODEwID0g Z2NjX2ppdF9jb250ZXh0X2dldF90eXBlIChjdHh0XzB4YmIwZjMwLCBHQ0Nf SklUX1RZUEVfU0laRV9UKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfaW50XzB4 YmIxOGUwID0gZ2NjX2ppdF9jb250ZXh0X2dldF90eXBlIChjdHh0XzB4YmIw ZjMwLCBHQ0NfSklUX1RZUEVfSU5UKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVf aW50X19fMHhiYjE5MjAgPQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2ludGVy ICh0eXBlX2ludF8weGJiMThlMCk7CiAgZ2NjX2ppdF90eXBlICp0eXBlX3No b3J0XzB4YmIxOTYwID0gZ2NjX2ppdF9jb250ZXh0X2dldF90eXBlIChjdHh0 XzB4YmIwZjMwLCBHQ0NfSklUX1RZUEVfU0hPUlQpOwogIGdjY19qaXRfdHlw ZSAqdHlwZV91bnNpZ25lZF9zaG9ydF8weGJiMTlhMCA9IGdjY19qaXRfY29u dGV4dF9nZXRfdHlwZSAoY3R4dF8weGJiMGYzMCwgR0NDX0pJVF9UWVBFX1VO U0lHTkVEX1NIT1JUKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfdW5zaWduZWRf aW50XzB4YmIxOWUwID0gZ2NjX2ppdF9jb250ZXh0X2dldF90eXBlIChjdHh0 XzB4YmIwZjMwLCBHQ0NfSklUX1RZUEVfVU5TSUdORURfSU5UKTsKICBnY2Nf aml0X3R5cGUgKnR5cGVfdW5zaWduZWRfY2hhcl8weGJiMWEyMCA9IGdjY19q aXRfY29udGV4dF9nZXRfdHlwZSAoY3R4dF8weGJiMGYzMCwgR0NDX0pJVF9U WVBFX1VOU0lHTkVEX0NIQVIpOwogIGdjY19qaXRfdHlwZSAqdHlwZV9jaGFy XzB4YmIxYTYwID0gZ2NjX2ppdF9jb250ZXh0X2dldF90eXBlIChjdHh0XzB4 YmIwZjMwLCBHQ0NfSklUX1RZUEVfQ0hBUik7CiAgZ2NjX2ppdF90eXBlICp0 eXBlX2NoYXJfX18weGJiMWFhMCA9CiAgICBnY2Nfaml0X3R5cGVfZ2V0X3Bv aW50ZXIgKHR5cGVfY2hhcl8weGJiMWE2MCk7CiAgZ2NjX2ppdF90eXBlICp0 eXBlX2NvbnN0X2NoYXJfX18weGJiMTg1MCA9IGdjY19qaXRfY29udGV4dF9n ZXRfdHlwZSAoY3R4dF8weGJiMGYzMCwgR0NDX0pJVF9UWVBFX0NPTlNUX0NI QVJfUFRSKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfdm9pZF8weGJiMTg5MCA9 IGdjY19qaXRfY29udGV4dF9nZXRfdHlwZSAoY3R4dF8weGJiMGYzMCwgR0ND X0pJVF9UWVBFX1ZPSUQpOwogIGdjY19qaXRfdHlwZSAqdHlwZV92b2lkX19f MHhiYjFiYjAgPSBnY2Nfaml0X2NvbnRleHRfZ2V0X3R5cGUgKGN0eHRfMHhi YjBmMzAsIEdDQ19KSVRfVFlQRV9WT0lEX1BUUik7CiAgZ2NjX2ppdF90eXBl ICp0eXBlX3Vuc2lnbmVkX2ludF9fXzB4YmIxYmYwID0KICAgIGdjY19qaXRf dHlwZV9nZXRfcG9pbnRlciAodHlwZV91bnNpZ25lZF9pbnRfMHhiYjE5ZTAp OwogIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3JhdmlfbHVhX1N0 YXRlXzB4YmIxNzAwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfb3BhcXVl X3N0cnVjdCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAq bG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJyYXZpX2x1YV9TdGF0ZSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF90eXBlICp0eXBlX3N0cnVjdF9yYXZpX2x1YV9TdGF0ZV9fXzB4 YmIxYzkwID0KICAgIGdjY19qaXRfdHlwZV9nZXRfcG9pbnRlciAoZ2NjX2pp dF9zdHJ1Y3RfYXNfdHlwZSAoc3RydWN0X3N0cnVjdF9yYXZpX2x1YV9TdGF0 ZV8weGJiMTcwMCkpOwogIGdjY19qaXRfdHlwZSAqcGFyYW1zX2Zvcl9mdW5j dGlvbl90eXBlX2ludF9fc3RydWN0X3JhdmlfbHVhX1N0YXRlX19fXzB4YmIx Y2QwWzFdID0gewogICAgdHlwZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVfX18w eGJiMWM5MCwKICB9OwogIGdjY19qaXRfdHlwZSAqcHRyX3RvX2ludF9fX19f X3N0cnVjdF9yYXZpX2x1YV9TdGF0ZV9fX18weGJiMWFlMCA9CiAgICBnY2Nf aml0X2NvbnRleHRfbmV3X2Z1bmN0aW9uX3B0cl90eXBlIChjdHh0XzB4YmIw ZjMwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19q aXRfdHlwZSAqcmV0dXJuX3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDEsIC8qIGludCBudW1fcGFyYW1zICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBw YXJhbXNfZm9yX2Z1bmN0aW9uX3R5cGVfaW50X19zdHJ1Y3RfcmF2aV9sdWFf U3RhdGVfX19fMHhiYjFjZDAsIC8qIGdjY19qaXRfdHlwZSAqKnBhcmFtX3R5 cGVzICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAwKTsgLyogaW50IGlzX3ZhcmlhZGljICovCiAgZ2NjX2ppdF90eXBl ICpwYXJhbXNfZm9yX2Z1bmN0aW9uX3R5cGVfaW50X19zdHJ1Y3RfcmF2aV9s dWFfU3RhdGVfX19faW50X19sb25nX2xvbmdfXzB4YmIxYjIwWzNdID0gewog ICAgdHlwZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVfX18weGJiMWM5MCwKICAg IHR5cGVfaW50XzB4YmIxOGUwLAogICAgdHlwZV9sb25nX2xvbmdfMHhiYjE2 YzAsCiAgfTsKICBnY2Nfaml0X3R5cGUgKnB0cl90b19pbnRfX19fX19zdHJ1 Y3RfcmF2aV9sdWFfU3RhdGVfX19faW50X19sb25nX2xvbmdfXzB4YmIxZTgw ID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZnVuY3Rpb25fcHRyX3R5cGUg KGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThl MCwgLyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMywgLyogaW50IG51 bV9wYXJhbXMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHBhcmFtc19mb3JfZnVuY3Rpb25fdHlwZV9pbnRfX3N0cnVj dF9yYXZpX2x1YV9TdGF0ZV9fX19pbnRfX2xvbmdfbG9uZ19fMHhiYjFiMjAs IC8qIGdjY19qaXRfdHlwZSAqKnBhcmFtX3R5cGVzICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsgLyogaW50IGlz X3ZhcmlhZGljICovCiAgZ2NjX2ppdF90eXBlICpwYXJhbXNfZm9yX2Z1bmN0 aW9uX3R5cGVfdm9pZF9fdm9pZF9fX192b2lkX19fX3NpemVfdF9fc2l6ZV90 X18weGJiMWVjMFs0XSA9IHsKICAgIHR5cGVfdm9pZF9fXzB4YmIxYmIwLAog ICAgdHlwZV92b2lkX19fMHhiYjFiYjAsCiAgICB0eXBlX3NpemVfdF8weGJi MTgxMCwKICAgIHR5cGVfc2l6ZV90XzB4YmIxODEwLAogIH07CiAgZ2NjX2pp dF90eXBlICpwdHJfdG9fdm9pZF9fX19fX3ZvaWRfX19fdm9pZF9fX19zaXpl X3RfX3NpemVfdF9fMHhiYjFmNDAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25l d19mdW5jdGlvbl9wdHJfdHlwZSAoY3R4dF8weGJiMGYzMCwgLyogZ2NjX2pp dF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfdm9pZF8weGJiMTg5MCwgLyogZ2NjX2ppdF90eXBlICpyZXR1 cm5fdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgNCwgLyogaW50IG51bV9wYXJhbXMgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19mb3JfZnVu Y3Rpb25fdHlwZV92b2lkX192b2lkX19fX3ZvaWRfX19fc2l6ZV90X19zaXpl X3RfXzB4YmIxZWMwLCAvKiBnY2Nfaml0X3R5cGUgKipwYXJhbV90eXBlcyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MCk7IC8qIGludCBpc192YXJpYWRpYyAqLwogIGdjY19qaXRfc3RydWN0ICpz dHJ1Y3Rfc3RydWN0X3JhdmlfbHVhX0RlYnVnXzB4YmIxZmUwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfb3BhcXVlX3N0cnVjdCAoY3R4dF8weGJiMGYz MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJyYXZpX2x1YV9EZWJ1ZyIpOyAv KiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF90eXBlICp0eXBlX3N0 cnVjdF9yYXZpX2x1YV9EZWJ1Z19fXzB4YmIyMDMwID0KICAgIGdjY19qaXRf dHlwZV9nZXRfcG9pbnRlciAoZ2NjX2ppdF9zdHJ1Y3RfYXNfdHlwZSAoc3Ry dWN0X3N0cnVjdF9yYXZpX2x1YV9EZWJ1Z18weGJiMWZlMCkpOwogIGdjY19q aXRfdHlwZSAqcGFyYW1zX2Zvcl9mdW5jdGlvbl90eXBlX3ZvaWRfX19fc3Ry dWN0X3JhdmlfbHVhX1N0YXRlX19fX3N0cnVjdF9yYXZpX2x1YV9EZWJ1Z19f X18weGJiMjA3MFsyXSA9IHsKICAgIHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0 YXRlX19fMHhiYjFjOTAsCiAgICB0eXBlX3N0cnVjdF9yYXZpX2x1YV9EZWJ1 Z19fXzB4YmIyMDMwLAogIH07CiAgZ2NjX2ppdF90eXBlICpwdHJfdG9fdm9p ZF9fX19fX19fc3RydWN0X3JhdmlfbHVhX1N0YXRlX19fX3N0cnVjdF9yYXZp X2x1YV9EZWJ1Z19fX18weGJiMjBmMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X2Z1bmN0aW9uX3B0cl90eXBlIChjdHh0XzB4YmIwZjMwLCAvKiBnY2Nf aml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdHlwZV92b2lkX19fMHhiYjFiYjAsIC8qIGdjY19qaXRfdHlwZSAq cmV0dXJuX3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDIsIC8qIGludCBudW1fcGFyYW1zICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXNfZm9y X2Z1bmN0aW9uX3R5cGVfdm9pZF9fX19zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVf X19fc3RydWN0X3JhdmlfbHVhX0RlYnVnX19fXzB4YmIyMDcwLCAvKiBnY2Nf aml0X3R5cGUgKipwYXJhbV90eXBlcyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCBpc192YXJpYWRp YyAqLwogIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3JhdmlfR0NP YmplY3RfMHhiYjIxOTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19vcGFx dWVfc3RydWN0IChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgInJhdmlfR0NPYmplY3QiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwog IGdjY19qaXRfdHlwZSAqdHlwZV9zdHJ1Y3RfcmF2aV9HQ09iamVjdF9fXzB4 YmIxZDUwID0KICAgIGdjY19qaXRfdHlwZV9nZXRfcG9pbnRlciAoZ2NjX2pp dF9zdHJ1Y3RfYXNfdHlwZSAoc3RydWN0X3N0cnVjdF9yYXZpX0dDT2JqZWN0 XzB4YmIyMTkwKSk7CiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbmV4dF8weGJi MWRmMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4 YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX0dDT2JqZWN0X19fMHhi YjFkNTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJuZXh0Iik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF90dF8weGJiMjNjMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX3Vuc2lnbmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRf dHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJ0dCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVs ZCAqZmllbGRfbWFya2VkXzB4YmIyNDcwID0KICAgIGdjY19qaXRfY29udGV4 dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdW5zaWdu ZWRfY2hhcl8weGJiMWEyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1hcmtlZCIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRzX2Zp ZWxkc18weGJiMjRjMFszXSA9IHsKICAgIGZpZWxkX25leHRfMHhiYjFkZjAs CiAgICBmaWVsZF90dF8weGJiMjNjMCwKICAgIGZpZWxkX21hcmtlZF8weGJi MjQ3MCwKICB9OwogIGdjY19qaXRfc3RydWN0X3NldF9maWVsZHMgKHN0cnVj dF9zdHJ1Y3RfcmF2aV9HQ09iamVjdF8weGJiMjE5MCwgLyogZ2NjX2ppdF9z dHJ1Y3QgKnN0cnVjdF90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgMywgLyogaW50IG51bV9maWVsZHMg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHNfZmllbGRz XzB4YmIyNGMwKTsgLyogZ2NjX2ppdF9maWVsZCAqKmZpZWxkcyAqLwogIGdj Y19qaXRfZmllbGQgKmZpZWxkX2djXzB4YmIyNTkwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVf c3RydWN0X3JhdmlfR0NPYmplY3RfX18weGJiMWQ1MCwgLyogZ2NjX2ppdF90 eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ImdjIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxk ICpmaWVsZF9wXzB4YmIyNjQwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf ZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdm9pZF9fXzB4YmIx YmIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAicCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICov CiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfYl8weGJiMjZmMCA9CiAgICBnY2Nf aml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImIiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2ZfMHhiYjI3 YTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJi MGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcHRyX3RvX2ludF9fX19fX3N0cnVjdF9yYXZpX2x1YV9T dGF0ZV9fX18weGJiMWFlMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImYiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2lfMHhiYjI4 NTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJi MGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdHlwZV9sb25nX2xvbmdfMHhiYjE2YzAsIC8qIGdjY19q aXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJpIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2Zp ZWxkICpmaWVsZF9uXzB4YmIyMjQwID0KICAgIGdjY19qaXRfY29udGV4dF9u ZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfZG91YmxlXzB4 YmIxNjAwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAibiIpOyAvKiBjb25zdCBjaGFyICpuYW1l ICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRzX2Zvcl91bmlvbl91bmlvbl9y YXZpX1ZhbHVlXzB4YmIyMmYwWzZdID0gewogICAgZmllbGRfZ2NfMHhiYjI1 OTAsCiAgICBmaWVsZF9wXzB4YmIyNjQwLAogICAgZmllbGRfYl8weGJiMjZm MCwKICAgIGZpZWxkX2ZfMHhiYjI3YTAsCiAgICBmaWVsZF9pXzB4YmIyODUw LAogICAgZmllbGRfbl8weGJiMjI0MCwKICB9OwogIGdjY19qaXRfdHlwZSAq dW5pb25fdW5pb25fcmF2aV9WYWx1ZV8weGJiMjJmMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X3VuaW9uX3R5cGUgKGN0eHRfMHhiYjBmMzAsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAicmF2aV9WYWx1ZSIsIC8qIGNvbnN0IGNoYXIgKm5hbWUg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgNiwgLyog aW50IG51bV9maWVsZHMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgZmllbGRzX2Zvcl91bmlvbl91bmlvbl9yYXZpX1ZhbHVlXzB4 YmIyMmYwKTsgLyogZ2NjX2ppdF9maWVsZCAqKmZpZWxkcyAqLwogIGdjY19q aXRfZmllbGQgKmZpZWxkX3ZhbHVlX18weGJiMmJmMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmlv bl91bmlvbl9yYXZpX1ZhbHVlXzB4YmIyMmYwLCAvKiBnY2Nfaml0X3R5cGUg KnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFs dWVfIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxk ICpmaWVsZF90dF9fMHhiYjJjYTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25l d19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4 ZTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJ0dF8iKTsgLyogY29uc3QgY2hhciAqbmFtZSAq LwogIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3JhdmlfVFZhbHVl XzB4YmIyZDUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfb3BhcXVlX3N0 cnVjdCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9j ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJy YXZpX1RWYWx1ZSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2pp dF9maWVsZCAqZmllbGRzX2ZpZWxkc18weGJiMmRmMFsyXSA9IHsKICAgIGZp ZWxkX3ZhbHVlX18weGJiMmJmMCwKICAgIGZpZWxkX3R0X18weGJiMmNhMCwK ICB9OwogIGdjY19qaXRfc3RydWN0X3NldF9maWVsZHMgKHN0cnVjdF9zdHJ1 Y3RfcmF2aV9UVmFsdWVfMHhiYjJkNTAsIC8qIGdjY19qaXRfc3RydWN0ICpz dHJ1Y3RfdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDIsIC8qIGludCBudW1fZmllbGRzICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRzX2ZpZWxkc18weGJiMmRm MCk7IC8qIGdjY19qaXRfZmllbGQgKipmaWVsZHMgKi8KICBnY2Nfaml0X3R5 cGUgKnR5cGVfc3RydWN0X3JhdmlfVFZhbHVlX19fMHhiYjJlMzAgPQogICAg Z2NjX2ppdF90eXBlX2dldF9wb2ludGVyIChnY2Nfaml0X3N0cnVjdF9hc190 eXBlIChzdHJ1Y3Rfc3RydWN0X3JhdmlfVFZhbHVlXzB4YmIyZDUwKSk7CiAg Z2NjX2ppdF90eXBlICp0eXBlX2NvbnN0X3N0cnVjdF9yYXZpX1RWYWx1ZV8w eGJiMmU3MCA9CiAgICBnY2Nfaml0X3R5cGVfZ2V0X2NvbnN0IChnY2Nfaml0 X3N0cnVjdF9hc190eXBlIChzdHJ1Y3Rfc3RydWN0X3JhdmlfVFZhbHVlXzB4 YmIyZDUwKSk7CiAgZ2NjX2ppdF90eXBlICp0eXBlX2NvbnN0X3N0cnVjdF9y YXZpX1RWYWx1ZV9fXzB4YmIyZWIwID0KICAgIGdjY19qaXRfdHlwZV9nZXRf cG9pbnRlciAodHlwZV9jb25zdF9zdHJ1Y3RfcmF2aV9UVmFsdWVfMHhiYjJl NzApOwogIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3JhdmlfVFN0 cmluZ18weGJiMmY1MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X29wYXF1 ZV9zdHJ1Y3QgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAicmF2aV9UU3RyaW5nIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBn Y2Nfaml0X3R5cGUgKnR5cGVfc3RydWN0X3JhdmlfVFN0cmluZ19fXzB4YmIy ZmEwID0KICAgIGdjY19qaXRfdHlwZV9nZXRfcG9pbnRlciAoZ2NjX2ppdF9z dHJ1Y3RfYXNfdHlwZSAoc3RydWN0X3N0cnVjdF9yYXZpX1RTdHJpbmdfMHhi YjJmNTApKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfc3RydWN0X3JhdmlfVFN0 cmluZ19fX19fMHhiYjJmZTAgPQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2lu dGVyICh0eXBlX3N0cnVjdF9yYXZpX1RTdHJpbmdfX18weGJiMmZhMCk7CiAg Z2NjX2ppdF9maWVsZCAqZmllbGRfbmV4dF8weGJiMzA4MCA9CiAgICBnY2Nf aml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 eXBlX3N0cnVjdF9yYXZpX0dDT2JqZWN0X19fMHhiYjFkNTAsIC8qIGdjY19q aXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJuZXh0Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0 X2ZpZWxkICpmaWVsZF90dF8weGJiMzEzMCA9CiAgICBnY2Nfaml0X2NvbnRl eHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9j ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3Vuc2ln bmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0dCIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbWFya2Vk XzB4YmIzMWUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0 eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfY2hhcl8weGJiMWEy MCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIm1hcmtlZCIpOyAvKiBjb25zdCBjaGFyICpuYW1l ICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfZXh0cmFfMHhiYjMyOTAgPQog ICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdHlwZV91bnNpZ25lZF9jaGFyXzB4YmIxYTIwLCAvKiBnY2Nfaml0 X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAiZXh0cmEiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRf ZmllbGQgKmZpZWxkX2hhc2hfMHhiYjI5MDAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNp Z25lZF9pbnRfMHhiYjE5ZTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJoYXNoIik7IC8qIGNv bnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9sZW5f MHhiYjI5YjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9zaXplX3RfMHhiYjE4MTAsIC8qIGdj Y19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJsZW4iKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfZmllbGQgKmZpZWxkX2huZXh0XzB4YmIyYTYwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVf c3RydWN0X3JhdmlfVFN0cmluZ19fXzB4YmIyZmEwLCAvKiBnY2Nfaml0X3R5 cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi aG5leHQiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmll bGQgKmZpZWxkc19maWVsZHNfMHhiYjJhYjBbN10gPSB7CiAgICBmaWVsZF9u ZXh0XzB4YmIzMDgwLAogICAgZmllbGRfdHRfMHhiYjMxMzAsCiAgICBmaWVs ZF9tYXJrZWRfMHhiYjMxZTAsCiAgICBmaWVsZF9leHRyYV8weGJiMzI5MCwK ICAgIGZpZWxkX2hhc2hfMHhiYjI5MDAsCiAgICBmaWVsZF9sZW5fMHhiYjI5 YjAsCiAgICBmaWVsZF9obmV4dF8weGJiMmE2MCwKICB9OwogIGdjY19qaXRf c3RydWN0X3NldF9maWVsZHMgKHN0cnVjdF9zdHJ1Y3RfcmF2aV9UU3RyaW5n XzB4YmIyZjUwLCAvKiBnY2Nfaml0X3N0cnVjdCAqc3RydWN0X3R5cGUgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICA3LCAvKiBpbnQgbnVtX2ZpZWxkcyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZpZWxkc19maWVsZHNfMHhiYjJhYjApOyAvKiBnY2Nfaml0 X2ZpZWxkICoqZmllbGRzICovCiAgZ2NjX2ppdF9zdHJ1Y3QgKnN0cnVjdF9z dHJ1Y3RfcmF2aV9UYWJsZV8weGJiMzcyMCA9CiAgICBnY2Nfaml0X2NvbnRl eHRfbmV3X29wYXF1ZV9zdHJ1Y3QgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAicmF2aV9UYWJsZSIpOyAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgZ2NjX2ppdF90eXBlICp0eXBlX3N0cnVjdF9yYXZpX1RhYmxl X19fMHhiYjM3NzAgPQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2ludGVyIChn Y2Nfaml0X3N0cnVjdF9hc190eXBlIChzdHJ1Y3Rfc3RydWN0X3JhdmlfVGFi bGVfMHhiYjM3MjApKTsKICBnY2Nfaml0X3R5cGUgKnR5cGVfc3RydWN0X3Jh dmlfVGFibGVfX19fXzB4YmIzN2IwID0KICAgIGdjY19qaXRfdHlwZV9nZXRf cG9pbnRlciAodHlwZV9zdHJ1Y3RfcmF2aV9UYWJsZV9fXzB4YmIzNzcwKTsK ICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9uZXh0XzB4YmIzODUwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHR5cGVfc3RydWN0X3JhdmlfR0NPYmplY3RfX18weGJiMWQ1MCwgLyogZ2Nj X2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIm5leHQiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfZmllbGQgKmZpZWxkX3R0XzB4YmIzOTAwID0KICAgIGdjY19qaXRfY29u dGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdW5z aWduZWRfY2hhcl8weGJiMWEyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInR0Iik7IC8qIGNv bnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9tYXJr ZWRfMHhiYjM5YjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAo Y3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNpZ25lZF9jaGFyXzB4YmIx YTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAibWFya2VkIik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF90dHV2X18weGJiM2E2MCA9 CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMw LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2Nj X2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB0eXBlX3Vuc2lnbmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdjY19q aXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJ0dHV2XyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2pp dF9maWVsZCAqZmllbGRfbWV0YXRhYmxlXzB4YmIzYjEwID0KICAgIGdjY19q aXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5 cGVfc3RydWN0X3JhdmlfVGFibGVfX18weGJiMzc3MCwgLyogZ2NjX2ppdF90 eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Im1ldGF0YWJsZSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2pp dF9maWVsZCAqZmllbGRfbGVuXzB4YmIzYmMwID0KICAgIGdjY19qaXRfY29u dGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc2l6 ZV90XzB4YmIxODEwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAibGVuIik7IC8qIGNvbnN0IGNo YXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF91c2VyX18weGJi M2M3MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4 YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB1bmlvbl91bmlvbl9yYXZpX1ZhbHVlXzB4YmIyMmYw LCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAidXNlcl8iKTsgLyogY29uc3QgY2hhciAqbmFtZSAq LwogIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3JhdmlfVWRhdGFf MHhiYjNkMjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19vcGFxdWVfc3Ry dWN0IChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJh dmlfVWRhdGEiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRf ZmllbGQgKmZpZWxkc19maWVsZHNfMHhiYjNkNzBbN10gPSB7CiAgICBmaWVs ZF9uZXh0XzB4YmIzODUwLAogICAgZmllbGRfdHRfMHhiYjM5MDAsCiAgICBm aWVsZF9tYXJrZWRfMHhiYjM5YjAsCiAgICBmaWVsZF90dHV2X18weGJiM2E2 MCwKICAgIGZpZWxkX21ldGF0YWJsZV8weGJiM2IxMCwKICAgIGZpZWxkX2xl bl8weGJiM2JjMCwKICAgIGZpZWxkX3VzZXJfXzB4YmIzYzcwLAogIH07CiAg Z2NjX2ppdF9zdHJ1Y3Rfc2V0X2ZpZWxkcyAoc3RydWN0X3N0cnVjdF9yYXZp X1VkYXRhXzB4YmIzZDIwLCAvKiBnY2Nfaml0X3N0cnVjdCAqc3RydWN0X3R5 cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICA3LCAvKiBpbnQgbnVtX2ZpZWxkcyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGZpZWxkc19maWVsZHNfMHhiYjNkNzApOyAvKiBn Y2Nfaml0X2ZpZWxkICoqZmllbGRzICovCiAgZ2NjX2ppdF9maWVsZCAqZmll bGRfbmFtZV8weGJiM2U2MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Zp ZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX1RT dHJpbmdfX18weGJiMmZhMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiKTsgLyogY29u c3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX3R5cGVf MHhiYjNmMTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19q aXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJ0eXBlIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0 X2ZpZWxkICpmaWVsZF9pbnN0YWNrXzB4YmIzZmMwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVf dW5zaWduZWRfY2hhcl8weGJiMWEyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBl LCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImluc3RhY2si KTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZp ZWxkX2lkeF8weGJiNDA3MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Zp ZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3Vuc2lnbmVkX2NoYXJf MHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJpZHgiKTsgLyogY29uc3QgY2hhciAq bmFtZSAqLwogIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3Jhdmlf VXB2YWxkZXNjXzB4YmI0MTIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf b3BhcXVlX3N0cnVjdCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJyYXZpX1VwdmFsZGVzYyIpOyAvKiBjb25zdCBjaGFyICpuYW1l ICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRzX2ZpZWxkc18weGJiNDIwMFs0 XSA9IHsKICAgIGZpZWxkX25hbWVfMHhiYjNlNjAsCiAgICBmaWVsZF90eXBl XzB4YmIzZjEwLAogICAgZmllbGRfaW5zdGFja18weGJiM2ZjMCwKICAgIGZp ZWxkX2lkeF8weGJiNDA3MCwKICB9OwogIGdjY19qaXRfc3RydWN0X3NldF9m aWVsZHMgKHN0cnVjdF9zdHJ1Y3RfcmF2aV9VcHZhbGRlc2NfMHhiYjQxMjAs IC8qIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3RfdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQsIC8qIGlu dCBudW1fZmllbGRzICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ZmllbGRzX2ZpZWxkc18weGJiNDIwMCk7IC8qIGdjY19qaXRfZmllbGQgKipm aWVsZHMgKi8KICBnY2Nfaml0X3R5cGUgKnR5cGVfc3RydWN0X3JhdmlfVXB2 YWxkZXNjX19fMHhiYjQyNzAgPQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2lu dGVyIChnY2Nfaml0X3N0cnVjdF9hc190eXBlIChzdHJ1Y3Rfc3RydWN0X3Jh dmlfVXB2YWxkZXNjXzB4YmI0MTIwKSk7CiAgZ2NjX2ppdF9maWVsZCAqZmll bGRfdmFybmFtZV8weGJiMzMwMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZp X1RTdHJpbmdfX18weGJiMmZhMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhcm5hbWUiKTsg LyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxk X3N0YXJ0cGNfMHhiYjMzYjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19m aWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAs IC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJzdGFydHBjIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUg Ki8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9lbmRwY18weGJiMzQ2MCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2ppdF90eXBlICp0eXBl LCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImVuZHBjIik7 IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVs ZF9yYXZpX3R5cGVfMHhiYjM1MTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25l d19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4 ZTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJyYXZpX3R5cGUiKTsgLyogY29uc3QgY2hhciAq bmFtZSAqLwogIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3Jhdmlf TG9jVmFyXzB4YmIzNWMwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfb3Bh cXVlX3N0cnVjdCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJyYXZpX0xvY1ZhciIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF9maWVsZCAqZmllbGRzX2ZpZWxkc18weGJiMzYxMFs0XSA9IHsK ICAgIGZpZWxkX3Zhcm5hbWVfMHhiYjMzMDAsCiAgICBmaWVsZF9zdGFydHBj XzB4YmIzM2IwLAogICAgZmllbGRfZW5kcGNfMHhiYjM0NjAsCiAgICBmaWVs ZF9yYXZpX3R5cGVfMHhiYjM1MTAsCiAgfTsKICBnY2Nfaml0X3N0cnVjdF9z ZXRfZmllbGRzIChzdHJ1Y3Rfc3RydWN0X3JhdmlfTG9jVmFyXzB4YmIzNWMw LCAvKiBnY2Nfaml0X3N0cnVjdCAqc3RydWN0X3R5cGUgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0LCAvKiBp bnQgbnVtX2ZpZWxkcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg IGZpZWxkc19maWVsZHNfMHhiYjM2MTApOyAvKiBnY2Nfaml0X2ZpZWxkICoq ZmllbGRzICovCiAgZ2NjX2ppdF90eXBlICp0eXBlX3N0cnVjdF9yYXZpX0xv Y1Zhcl9fXzB4YmIzNjgwID0KICAgIGdjY19qaXRfdHlwZV9nZXRfcG9pbnRl ciAoZ2NjX2ppdF9zdHJ1Y3RfYXNfdHlwZSAoc3RydWN0X3N0cnVjdF9yYXZp X0xvY1Zhcl8weGJiMzVjMCkpOwogIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rf c3RydWN0X3JhdmlfTENsb3N1cmVfMHhiYjQ4ZDAgPQogICAgZ2NjX2ppdF9j b250ZXh0X25ld19vcGFxdWVfc3RydWN0IChjdHh0XzB4YmIwZjMwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgInJhdmlfTENsb3N1cmUiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfdHlwZSAqdHlwZV9zdHJ1Y3RfcmF2 aV9MQ2xvc3VyZV9fXzB4YmI0OTIwID0KICAgIGdjY19qaXRfdHlwZV9nZXRf cG9pbnRlciAoZ2NjX2ppdF9zdHJ1Y3RfYXNfdHlwZSAoc3RydWN0X3N0cnVj dF9yYXZpX0xDbG9zdXJlXzB4YmI0OGQwKSk7CiAgZ2NjX2ppdF90eXBlICp0 eXBlX3N0cnVjdF9yYXZpX0xDbG9zdXJlX19fX18weGJiNDk2MCA9CiAgICBn Y2Nfaml0X3R5cGVfZ2V0X3BvaW50ZXIgKHR5cGVfc3RydWN0X3JhdmlfTENs b3N1cmVfX18weGJiNDkyMCk7CiAgZ2NjX2ppdF90eXBlICp0eXBlX3N0cnVj dF9yYXZpX0xDbG9zdXJlX19fX19fXzB4YmI0OWEwID0KICAgIGdjY19qaXRf dHlwZV9nZXRfcG9pbnRlciAodHlwZV9zdHJ1Y3RfcmF2aV9MQ2xvc3VyZV9f X19fMHhiYjQ5NjApOwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2ppdF9zdGF0 dXNfMHhiYjRhNDAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAo Y3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNpZ25lZF9jaGFyXzB4YmIx YTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiaml0X3N0YXR1cyIpOyAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfaml0X2ZsYWdzXzB4 YmI0YWYwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRf MHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfY2hhcl8weGJiMWEyMCwg LyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgImppdF9mbGFncyIpOyAvKiBjb25zdCBjaGFyICpuYW1l ICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfZXhlY3V0aW9uX2NvdW50XzB4 YmI0YmEwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRf MHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfc2hvcnRfMHhiYjE5YTAs IC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJleGVjdXRpb25fY291bnQiKTsgLyogY29uc3QgY2hh ciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2ppdF9kYXRhXzB4 YmI0YzUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRf MHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHR5cGVfdm9pZF9fXzB4YmIxYmIwLCAvKiBnY2Nf aml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAiaml0X2RhdGEiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdj Y19qaXRfZmllbGQgKmZpZWxkX2ppdF9mdW5jdGlvbl8weGJiNGQwMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBwdHJfdG9faW50X19fX19fc3RydWN0X3JhdmlfbHVhX1N0YXRlX19f XzB4YmIxYWUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiaml0X2Z1bmN0aW9uIik7IC8qIGNv bnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3N0cnVjdCAqc3RydWN0X3N0 cnVjdF9yYXZpX1JhdmlKSVRQcm90b18weGJiNGRiMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X29wYXF1ZV9zdHJ1Y3QgKGN0eHRfMHhiYjBmMzAsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAicmF2aV9SYXZpSklUUHJvdG8iKTsgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkc19m aWVsZHNfMHhiYjRlMDBbNV0gPSB7CiAgICBmaWVsZF9qaXRfc3RhdHVzXzB4 YmI0YTQwLAogICAgZmllbGRfaml0X2ZsYWdzXzB4YmI0YWYwLAogICAgZmll bGRfZXhlY3V0aW9uX2NvdW50XzB4YmI0YmEwLAogICAgZmllbGRfaml0X2Rh dGFfMHhiYjRjNTAsCiAgICBmaWVsZF9qaXRfZnVuY3Rpb25fMHhiYjRkMDAs CiAgfTsKICBnY2Nfaml0X3N0cnVjdF9zZXRfZmllbGRzIChzdHJ1Y3Rfc3Ry dWN0X3JhdmlfUmF2aUpJVFByb3RvXzB4YmI0ZGIwLCAvKiBnY2Nfaml0X3N0 cnVjdCAqc3RydWN0X3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA1LCAvKiBpbnQgbnVtX2ZpZWxkcyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkc19maWVsZHNf MHhiYjRlMDApOyAvKiBnY2Nfaml0X2ZpZWxkICoqZmllbGRzICovCiAgZ2Nj X2ppdF9zdHJ1Y3QgKnN0cnVjdF9zdHJ1Y3RfcmF2aV9Qcm90b18weGJiNGVm MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X29wYXF1ZV9zdHJ1Y3QgKGN0 eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmF2aV9Qcm90 byIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF90eXBlICp0 eXBlX3N0cnVjdF9yYXZpX1Byb3RvX19fMHhiYjRmNDAgPQogICAgZ2NjX2pp dF90eXBlX2dldF9wb2ludGVyIChnY2Nfaml0X3N0cnVjdF9hc190eXBlIChz dHJ1Y3Rfc3RydWN0X3JhdmlfUHJvdG9fMHhiYjRlZjApKTsKICBnY2Nfaml0 X3R5cGUgKnR5cGVfc3RydWN0X3JhdmlfUHJvdG9fX19fXzB4YmI0ZjgwID0K ICAgIGdjY19qaXRfdHlwZV9nZXRfcG9pbnRlciAodHlwZV9zdHJ1Y3RfcmF2 aV9Qcm90b19fXzB4YmI0ZjQwKTsKICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9u ZXh0XzB4YmI1MDIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQg KGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfR0NPYmpl Y3RfX18weGJiMWQ1MCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5leHQiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX3R0XzB4YmI1 MGQwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfY2hhcl8weGJiMWEyMCwgLyog Z2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgInR0Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X2ZpZWxkICpmaWVsZF9tYXJrZWRfMHhiYjUxODAgPQogICAgZ2NjX2pp dF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV91bnNpZ25lZF9jaGFyXzB4YmIxYTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5 cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibWFya2Vk Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpm aWVsZF9udW1wYXJhbXNfMHhiYjUyMzAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNpZ25l ZF9jaGFyXzB4YmIxYTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibnVtcGFyYW1zIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9p c192YXJhcmdfMHhiYjUyZTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19m aWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNpZ25lZF9jaGFy XzB4YmIxYTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiaXNfdmFyYXJnIik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9tYXhzdGFj a3NpemVfMHhiYjUzOTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVs ZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNpZ25lZF9jaGFyXzB4 YmIxYTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAibWF4c3RhY2tzaXplIik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9zaXpldXB2 YWx1ZXNfMHhiYjU0NDAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVs ZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8q IGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJzaXpldXB2YWx1ZXMiKTsgLyogY29uc3QgY2hhciAqbmFt ZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX3NpemVrXzB4YmI1NGYwID0K ICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5 cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic2l6ZWsi KTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZp ZWxkX3NpemVjb2RlXzB4YmI1NWEwID0KICAgIGdjY19qaXRfY29udGV4dF9u ZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIx OGUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAic2l6ZWNvZGUiKTsgLyogY29uc3QgY2hhciAq bmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX3NpemVsaW5laW5mb18w eGJiNTY1MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2pp dF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgInNpemVsaW5laW5mbyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF9maWVsZCAqZmllbGRfc2l6ZXBfMHhiYjU3MDAgPQogICAgZ2Nj X2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaXplcCIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfc2l6 ZWxvY3ZhcnNfMHhiYjU3YjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19m aWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAs IC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJzaXplbG9jdmFycyIpOyAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbGluZWRlZmluZWRfMHhi YjU4NjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8w eGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws IC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRf dHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJsaW5lZGVmaW5lZCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2Nj X2ppdF9maWVsZCAqZmllbGRfbGFzdGxpbmVkZWZpbmVkXzB4YmI0MzEwID0K ICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5 cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibGFzdGxp bmVkZWZpbmVkIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0 X2ZpZWxkICpmaWVsZF9rXzB4YmI0M2MwID0KICAgIGdjY19qaXRfY29udGV4 dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0 X3JhdmlfVFZhbHVlX19fMHhiYjJlMzAsIC8qIGdjY19qaXRfdHlwZSAqdHlw ZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJrIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9j b2RlXzB4YmI0NDcwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQg KGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfaW50X19fMHhi YjFiZjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJjb2RlIik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9wXzB4YmI0NTIwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfc3RydWN0X3JhdmlfUHJvdG9fX19fXzB4YmI0ZjgwLCAvKiBn Y2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAicCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2pp dF9maWVsZCAqZmllbGRfbGluZWluZm9fMHhiYjQ1ZDAgPQogICAgZ2NjX2pp dF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9pbnRfX18weGJiMTkyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxpbmVpbmZvIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9s b2N2YXJzXzB4YmI0NjgwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmll bGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfTG9j VmFyX19fMHhiYjM2ODAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsb2N2YXJzIik7IC8qIGNv bnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF91cHZh bHVlc18weGJiNDczMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxk IChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX1VwdmFs ZGVzY19fXzB4YmI0MjcwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXB2YWx1ZXMiKTsgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2Nh Y2hlXzB4YmI0N2UwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQg KGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfTENsb3N1 cmVfX18weGJiNDkyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgImNhY2hlIik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9zb3VyY2Vf MHhiYjYxNjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9UU3RyaW5nX19f MHhiYjJmYTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJzb3VyY2UiKTsgLyogY29uc3QgY2hh ciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2djbGlzdF8weGJi NjIxMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4 YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX0dDT2JqZWN0X19fMHhi YjFkNTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJnY2xpc3QiKTsgLyogY29uc3QgY2hhciAq bmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX3Jhdmlfaml0XzB4YmI2 MmMwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGdjY19qaXRfc3RydWN0X2FzX3R5cGUgKHN0cnVjdF9z dHJ1Y3RfcmF2aV9SYXZpSklUUHJvdG9fMHhiYjRkYjApLCAvKiBnY2Nfaml0 X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAicmF2aV9qaXQiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfZmllbGQgKmZpZWxkc19maWVsZHNfMHhiYjYzMTBbMjRdID0gewogICAg ZmllbGRfbmV4dF8weGJiNTAyMCwKICAgIGZpZWxkX3R0XzB4YmI1MGQwLAog ICAgZmllbGRfbWFya2VkXzB4YmI1MTgwLAogICAgZmllbGRfbnVtcGFyYW1z XzB4YmI1MjMwLAogICAgZmllbGRfaXNfdmFyYXJnXzB4YmI1MmUwLAogICAg ZmllbGRfbWF4c3RhY2tzaXplXzB4YmI1MzkwLAogICAgZmllbGRfc2l6ZXVw dmFsdWVzXzB4YmI1NDQwLAogICAgZmllbGRfc2l6ZWtfMHhiYjU0ZjAsCiAg ICBmaWVsZF9zaXplY29kZV8weGJiNTVhMCwKICAgIGZpZWxkX3NpemVsaW5l aW5mb18weGJiNTY1MCwKICAgIGZpZWxkX3NpemVwXzB4YmI1NzAwLAogICAg ZmllbGRfc2l6ZWxvY3ZhcnNfMHhiYjU3YjAsCiAgICBmaWVsZF9saW5lZGVm aW5lZF8weGJiNTg2MCwKICAgIGZpZWxkX2xhc3RsaW5lZGVmaW5lZF8weGJi NDMxMCwKICAgIGZpZWxkX2tfMHhiYjQzYzAsCiAgICBmaWVsZF9jb2RlXzB4 YmI0NDcwLAogICAgZmllbGRfcF8weGJiNDUyMCwKICAgIGZpZWxkX2xpbmVp bmZvXzB4YmI0NWQwLAogICAgZmllbGRfbG9jdmFyc18weGJiNDY4MCwKICAg IGZpZWxkX3VwdmFsdWVzXzB4YmI0NzMwLAogICAgZmllbGRfY2FjaGVfMHhi YjQ3ZTAsCiAgICBmaWVsZF9zb3VyY2VfMHhiYjYxNjAsCiAgICBmaWVsZF9n Y2xpc3RfMHhiYjYyMTAsCiAgICBmaWVsZF9yYXZpX2ppdF8weGJiNjJjMCwK ICB9OwogIGdjY19qaXRfc3RydWN0X3NldF9maWVsZHMgKHN0cnVjdF9zdHJ1 Y3RfcmF2aV9Qcm90b18weGJiNGVmMCwgLyogZ2NjX2ppdF9zdHJ1Y3QgKnN0 cnVjdF90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMjQsIC8qIGludCBudW1fZmllbGRzICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRzX2ZpZWxkc18weGJiNjMx MCk7IC8qIGdjY19qaXRfZmllbGQgKipmaWVsZHMgKi8KICBnY2Nfaml0X3N0 cnVjdCAqc3RydWN0X3N0cnVjdF9yYXZpX1VwVmFsXzB4YmI2NDgwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfb3BhcXVlX3N0cnVjdCAoY3R4dF8weGJi MGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyYXZpX1VwVmFsIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3R5cGUgKnR5cGVfc3Ry dWN0X3JhdmlfVXBWYWxfX18weGJiNjRkMCA9CiAgICBnY2Nfaml0X3R5cGVf Z2V0X3BvaW50ZXIgKGdjY19qaXRfc3RydWN0X2FzX3R5cGUgKHN0cnVjdF9z dHJ1Y3RfcmF2aV9VcFZhbF8weGJiNjQ4MCkpOwogIGdjY19qaXRfZmllbGQg KmZpZWxkX25leHRfMHhiYjY1NzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25l d19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2 aV9HQ09iamVjdF9fXzB4YmIxZDUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUs ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibmV4dCIpOyAv KiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRf dHRfMHhiYjY2MjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAo Y3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNpZ25lZF9jaGFyXzB4YmIx YTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAidHQiKTsgLyogY29uc3QgY2hhciAqbmFtZSAq LwogIGdjY19qaXRfZmllbGQgKmZpZWxkX21hcmtlZF8weGJiNjZkMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX3Vuc2lnbmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRf dHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJtYXJrZWQiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRf ZmllbGQgKmZpZWxkX251cHZhbHVlc18weGJiNjc4MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3Vuc2lnbmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlw ZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJudXB2YWx1 ZXMiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQg KmZpZWxkX2djbGlzdF8weGJiNjgzMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9y YXZpX0dDT2JqZWN0X19fMHhiYjFkNTAsIC8qIGdjY19qaXRfdHlwZSAqdHlw ZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJnY2xpc3Qi KTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZp ZWxkX2ZfMHhiYjY4ZTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVs ZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcHRyX3RvX2ludF9fX19fX3N0cnVj dF9yYXZpX2x1YV9TdGF0ZV9fX18weGJiMWFlMCwgLyogZ2NjX2ppdF90eXBl ICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImYi KTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfdHlwZSAqYXJy YXlfdHlwZV9zdHJ1Y3RfcmF2aV9UVmFsdWVfMV9fMHhiYjY5MzAgPQogICAg Z2NjX2ppdF9jb250ZXh0X25ld19hcnJheV90eXBlIChjdHh0XzB4YmIwZjMw LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZ2NjX2ppdF9zdHJ1Y3RfYXNfdHlwZSAoc3Ry dWN0X3N0cnVjdF9yYXZpX1RWYWx1ZV8weGJiMmQ1MCksIC8qIGdjY19qaXRf dHlwZSAqZWxlbWVudF90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDEpOyAvKiBpbnQgbnVtX2VsZW1lbnRzICovCiAgZ2Nj X2ppdF9maWVsZCAqZmllbGRfdXB2YWx1ZV8weGJiNjllMCA9CiAgICBnY2Nf aml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBh cnJheV90eXBlX3N0cnVjdF9yYXZpX1RWYWx1ZV8xX18weGJiNjkzMCwgLyog Z2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgInVwdmFsdWUiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwog IGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3JhdmlfQ0Nsb3N1cmVf MHhiYjZhOTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19vcGFxdWVfc3Ry dWN0IChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJh dmlfQ0Nsb3N1cmUiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfZmllbGQgKmZpZWxkc19maWVsZHNfMHhiYjZhZTBbN10gPSB7CiAgICBm aWVsZF9uZXh0XzB4YmI2NTcwLAogICAgZmllbGRfdHRfMHhiYjY2MjAsCiAg ICBmaWVsZF9tYXJrZWRfMHhiYjY2ZDAsCiAgICBmaWVsZF9udXB2YWx1ZXNf MHhiYjY3ODAsCiAgICBmaWVsZF9nY2xpc3RfMHhiYjY4MzAsCiAgICBmaWVs ZF9mXzB4YmI2OGUwLAogICAgZmllbGRfdXB2YWx1ZV8weGJiNjllMCwKICB9 OwogIGdjY19qaXRfc3RydWN0X3NldF9maWVsZHMgKHN0cnVjdF9zdHJ1Y3Rf cmF2aV9DQ2xvc3VyZV8weGJiNmE5MCwgLyogZ2NjX2ppdF9zdHJ1Y3QgKnN0 cnVjdF90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgNywgLyogaW50IG51bV9maWVsZHMgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHNfZmllbGRzXzB4YmI2YWUw KTsgLyogZ2NjX2ppdF9maWVsZCAqKmZpZWxkcyAqLwogIGdjY19qaXRfdHlw ZSAqdHlwZV9zdHJ1Y3RfcmF2aV9DQ2xvc3VyZV9fXzB4YmI2YjcwID0KICAg IGdjY19qaXRfdHlwZV9nZXRfcG9pbnRlciAoZ2NjX2ppdF9zdHJ1Y3RfYXNf dHlwZSAoc3RydWN0X3N0cnVjdF9yYXZpX0NDbG9zdXJlXzB4YmI2YTkwKSk7 CiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbmV4dF8weGJiNmMxMCA9CiAgICBn Y2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eXBlX3N0cnVjdF9yYXZpX0dDT2JqZWN0X19fMHhiYjFkNTAsIC8qIGdj Y19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJuZXh0Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X2ZpZWxkICpmaWVsZF90dF8weGJiNmNjMCA9CiAgICBnY2Nfaml0X2Nv bnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAq bG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3Vu c2lnbmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ0dCIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbWFy a2VkXzB4YmI2ZDcwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQg KGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfY2hhcl8weGJi MWEyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIm1hcmtlZCIpOyAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbnVwdmFsdWVzXzB4YmI2 ZTIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfY2hhcl8weGJiMWEyMCwgLyog Z2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIm51cHZhbHVlcyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICov CiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfZ2NsaXN0XzB4YmI2ZWQwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfc3RydWN0X3JhdmlfR0NPYmplY3RfX18weGJiMWQ1MCwgLyog Z2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgImdjbGlzdCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF9maWVsZCAqZmllbGRfcF8weGJiNmY4MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3N0cnVjdF9yYXZpX1Byb3RvX19fMHhiYjRmNDAsIC8qIGdjY19qaXRfdHlw ZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJw Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3R5cGUgKmFy cmF5X3R5cGVfc3RydWN0X3JhdmlfVXBWYWxfX18xX18weGJiNmZkMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X2FycmF5X3R5cGUgKGN0eHRfMHhiYjBm MzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws IC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX1VwVmFsX19f MHhiYjY0ZDAsIC8qIGdjY19qaXRfdHlwZSAqZWxlbWVudF90eXBlICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEpOyAvKiBpbnQg bnVtX2VsZW1lbnRzICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfdXB2YWxz XzB4YmI3MDgwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0 eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGFycmF5X3R5cGVfc3RydWN0X3JhdmlfVXBW YWxfX18xX18weGJiNmZkMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInVwdmFscyIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRzX2Zp ZWxkc18weGJiNzBkMFs3XSA9IHsKICAgIGZpZWxkX25leHRfMHhiYjZjMTAs CiAgICBmaWVsZF90dF8weGJiNmNjMCwKICAgIGZpZWxkX21hcmtlZF8weGJi NmQ3MCwKICAgIGZpZWxkX251cHZhbHVlc18weGJiNmUyMCwKICAgIGZpZWxk X2djbGlzdF8weGJiNmVkMCwKICAgIGZpZWxkX3BfMHhiYjZmODAsCiAgICBm aWVsZF91cHZhbHNfMHhiYjcwODAsCiAgfTsKICBnY2Nfaml0X3N0cnVjdF9z ZXRfZmllbGRzIChzdHJ1Y3Rfc3RydWN0X3JhdmlfTENsb3N1cmVfMHhiYjQ4 ZDAsIC8qIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3RfdHlwZSAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDcsIC8q IGludCBudW1fZmllbGRzICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZmllbGRzX2ZpZWxkc18weGJiNzBkMCk7IC8qIGdjY19qaXRfZmllbGQg KipmaWVsZHMgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9jXzB4YmI3MWMw ID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBm MzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGdjY19qaXRfc3RydWN0X2FzX3R5cGUgKHN0cnVjdF9zdHJ1 Y3RfcmF2aV9DQ2xvc3VyZV8weGJiNmE5MCksIC8qIGdjY19qaXRfdHlwZSAq dHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjIik7 IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVs ZF9sXzB4YmI3MjcwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQg KGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGdjY19qaXRfc3RydWN0X2FzX3R5cGUg KHN0cnVjdF9zdHJ1Y3RfcmF2aV9MQ2xvc3VyZV8weGJiNDhkMCksIC8qIGdj Y19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJsIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0 X2ZpZWxkICpmaWVsZHNfZm9yX3VuaW9uX3VuaW9uX3JhdmlfQ2xvc3VyZV8w eGJiNzMyMFsyXSA9IHsKICAgIGZpZWxkX2NfMHhiYjcxYzAsCiAgICBmaWVs ZF9sXzB4YmI3MjcwLAogIH07CiAgZ2NjX2ppdF90eXBlICp1bmlvbl91bmlv bl9yYXZpX0Nsb3N1cmVfMHhiYjczMjAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld191bmlvbl90eXBlIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgInJhdmlfQ2xvc3VyZSIsIC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiwgLyogaW50IG51 bV9maWVsZHMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZmllbGRzX2Zvcl91bmlvbl91bmlvbl9yYXZpX0Nsb3N1cmVfMHhiYjcz MjApOyAvKiBnY2Nfaml0X2ZpZWxkICoqZmllbGRzICovCiAgZ2NjX2ppdF90 eXBlICp0eXBlX3VuaW9uX3JhdmlfQ2xvc3VyZV9fXzB4YmI3M2YwID0KICAg IGdjY19qaXRfdHlwZV9nZXRfcG9pbnRlciAodW5pb25fdW5pb25fcmF2aV9D bG9zdXJlXzB4YmI3MzIwKTsKICBnY2Nfaml0X2ZpZWxkICpmaWVsZF92YWx1 ZV9fMHhiYjc0OTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAo Y3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdW5pb25fdW5pb25fcmF2aV9WYWx1ZV8w eGJiMjJmMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgInZhbHVlXyIpOyAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfdHRfXzB4YmI3NTQw ID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBm MzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUg KnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidHRf Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpm aWVsZF9uZXh0XzB4YmI3NWYwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf ZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUw LCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAibmV4dCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICov CiAgZ2NjX2ppdF9zdHJ1Y3QgKnN0cnVjdF9zdHJ1Y3RfcmF2aV9US2V5X25r XzB4YmI3NmEwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfb3BhcXVlX3N0 cnVjdCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9j ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJy YXZpX1RLZXlfbmsiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfZmllbGQgKmZpZWxkc19maWVsZHNfMHhiYjQxNzBbM10gPSB7CiAgICBm aWVsZF92YWx1ZV9fMHhiYjc0OTAsCiAgICBmaWVsZF90dF9fMHhiYjc1NDAs CiAgICBmaWVsZF9uZXh0XzB4YmI3NWYwLAogIH07CiAgZ2NjX2ppdF9zdHJ1 Y3Rfc2V0X2ZpZWxkcyAoc3RydWN0X3N0cnVjdF9yYXZpX1RLZXlfbmtfMHhi Yjc2YTAsIC8qIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3RfdHlwZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMs IC8qIGludCBudW1fZmllbGRzICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZmllbGRzX2ZpZWxkc18weGJiNDE3MCk7IC8qIGdjY19qaXRfZmll bGQgKipmaWVsZHMgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9ua18weGJi NzgwMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4 YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBnY2Nfaml0X3N0cnVjdF9hc190eXBlIChzdHJ1Y3Rf c3RydWN0X3JhdmlfVEtleV9ua18weGJiNzZhMCksIC8qIGdjY19qaXRfdHlw ZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJu ayIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAq ZmllbGRfdHZrXzB4YmI3OGIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf ZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdjY19qaXRfc3RydWN0X2Fz X3R5cGUgKHN0cnVjdF9zdHJ1Y3RfcmF2aV9UVmFsdWVfMHhiYjJkNTApLCAv KiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAidHZrIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBn Y2Nfaml0X2ZpZWxkICpmaWVsZHNfZm9yX3VuaW9uX3VuaW9uX3JhdmlfVEtl eV8weGJiNzk2MFsyXSA9IHsKICAgIGZpZWxkX25rXzB4YmI3ODAwLAogICAg ZmllbGRfdHZrXzB4YmI3OGIwLAogIH07CiAgZ2NjX2ppdF90eXBlICp1bmlv bl91bmlvbl9yYXZpX1RLZXlfMHhiYjc5NjAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld191bmlvbl90eXBlIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgInJhdmlfVEtleSIsIC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiwgLyogaW50IG51 bV9maWVsZHMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZmllbGRzX2Zvcl91bmlvbl91bmlvbl9yYXZpX1RLZXlfMHhiYjc5NjAp OyAvKiBnY2Nfaml0X2ZpZWxkICoqZmllbGRzICovCiAgZ2NjX2ppdF90eXBl ICp0eXBlX3VuaW9uX3JhdmlfVEtleV9fXzB4YmI3YTMwID0KICAgIGdjY19q aXRfdHlwZV9nZXRfcG9pbnRlciAodW5pb25fdW5pb25fcmF2aV9US2V5XzB4 YmI3OTYwKTsKICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9pX3ZhbF8weGJiN2Fk MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIw ZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBnY2Nfaml0X3N0cnVjdF9hc190eXBlIChzdHJ1Y3Rfc3Ry dWN0X3JhdmlfVFZhbHVlXzB4YmIyZDUwKSwgLyogZ2NjX2ppdF90eXBlICp0 eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImlfdmFs Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpm aWVsZF9pX2tleV8weGJiN2I4MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmlvbl91bmlvbl9yYXZp X1RLZXlfMHhiYjc5NjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJpX2tleSIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9zdHJ1Y3QgKnN0cnVjdF9zdHJ1 Y3RfcmF2aV9Ob2RlXzB4YmI1OTEwID0KICAgIGdjY19qaXRfY29udGV4dF9u ZXdfb3BhcXVlX3N0cnVjdCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJyYXZpX05vZGUiKTsgLyogY29uc3QgY2hhciAqbmFtZSAq LwogIGdjY19qaXRfZmllbGQgKmZpZWxkc19maWVsZHNfMHhiYjU5NjBbMl0g PSB7CiAgICBmaWVsZF9pX3ZhbF8weGJiN2FkMCwKICAgIGZpZWxkX2lfa2V5 XzB4YmI3YjgwLAogIH07CiAgZ2NjX2ppdF9zdHJ1Y3Rfc2V0X2ZpZWxkcyAo c3RydWN0X3N0cnVjdF9yYXZpX05vZGVfMHhiYjU5MTAsIC8qIGdjY19qaXRf c3RydWN0ICpzdHJ1Y3RfdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgIDIsIC8qIGludCBudW1fZmllbGRz ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRzX2ZpZWxk c18weGJiNTk2MCk7IC8qIGdjY19qaXRfZmllbGQgKipmaWVsZHMgKi8KICBn Y2Nfaml0X3R5cGUgKnR5cGVfc3RydWN0X3JhdmlfTm9kZV9fXzB4YmI1OWQw ID0KICAgIGdjY19qaXRfdHlwZV9nZXRfcG9pbnRlciAoZ2NjX2ppdF9zdHJ1 Y3RfYXNfdHlwZSAoc3RydWN0X3N0cnVjdF9yYXZpX05vZGVfMHhiYjU5MTAp KTsKICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9kYXRhXzB4YmI1YTcwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfdm9pZF9fXzB4YmIxYmIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5 cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZGF0YSIp OyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmll bGRfbGVuXzB4YmI1YjIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmll bGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfaW50XzB4 YmIxOWUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAibGVuIik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9zaXplXzB4YmI1YmQwID0K ICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHR5cGVfdW5zaWduZWRfaW50XzB4YmIxOWUwLCAvKiBnY2Nfaml0 X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAic2l6ZSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9m aWVsZCAqZmllbGRfYXJyYXlfdHlwZV8weGJiNWM4MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3Vuc2lnbmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlw ZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhcnJheV90 eXBlIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxk ICpmaWVsZF9hcnJheV9tb2RpZmllcl8weGJiNWQzMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3Vuc2lnbmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlw ZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhcnJheV9t b2RpZmllciIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9z dHJ1Y3QgKnN0cnVjdF9zdHJ1Y3RfcmF2aV9SYXZpQXJyYXlfMHhiYjVkZTAg PQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19vcGFxdWVfc3RydWN0IChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJhdmlfUmF2aUFy cmF5Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxk ICpmaWVsZHNfZmllbGRzXzB4YmI1ZTMwWzVdID0gewogICAgZmllbGRfZGF0 YV8weGJiNWE3MCwKICAgIGZpZWxkX2xlbl8weGJiNWIyMCwKICAgIGZpZWxk X3NpemVfMHhiYjViZDAsCiAgICBmaWVsZF9hcnJheV90eXBlXzB4YmI1Yzgw LAogICAgZmllbGRfYXJyYXlfbW9kaWZpZXJfMHhiYjVkMzAsCiAgfTsKICBn Y2Nfaml0X3N0cnVjdF9zZXRfZmllbGRzIChzdHJ1Y3Rfc3RydWN0X3Jhdmlf UmF2aUFycmF5XzB4YmI1ZGUwLCAvKiBnY2Nfaml0X3N0cnVjdCAqc3RydWN0 X3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICA1LCAvKiBpbnQgbnVtX2ZpZWxkcyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGZpZWxkc19maWVsZHNfMHhiYjVlMzApOyAv KiBnY2Nfaml0X2ZpZWxkICoqZmllbGRzICovCiAgZ2NjX2ppdF9maWVsZCAq ZmllbGRfbmV4dF8weGJiNWYyMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZp X0dDT2JqZWN0X19fMHhiYjFkNTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuZXh0Iik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF90 dF8weGJiNWZkMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX3Vuc2lnbmVkX2NoYXJfMHhiYjFh MjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJ0dCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICov CiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbWFya2VkXzB4YmI2MDgwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfdW5zaWduZWRfY2hhcl8weGJiMWEyMCwgLyogZ2NjX2ppdF90 eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Im1hcmtlZCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9m aWVsZCAqZmllbGRfZmxhZ3NfMHhiYjg4OTAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNp Z25lZF9jaGFyXzB4YmIxYTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiZmxhZ3MiKTsgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2xz aXplbm9kZV8weGJiODk0MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Zp ZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3Vuc2lnbmVkX2NoYXJf MHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJsc2l6ZW5vZGUiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX3NpemVhcnJh eV8weGJiODlmMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX3Vuc2lnbmVkX2ludF8weGJiMTll MCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgInNpemVhcnJheSIpOyAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfYXJyYXlfMHhiYjhhYTAg PQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYz MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9UVmFsdWVfX18weGJiMmUzMCwg LyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgImFycmF5Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8K ICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9ub2RlXzB4YmI4YjUwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHR5cGVfc3RydWN0X3JhdmlfTm9kZV9fXzB4YmI1OWQwLCAvKiBnY2Nfaml0 X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAibm9kZSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9m aWVsZCAqZmllbGRfbGFzdGZyZWVfMHhiYjhjMDAgPQogICAgZ2NjX2ppdF9j b250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9z dHJ1Y3RfcmF2aV9Ob2RlX19fMHhiYjU5ZDAsIC8qIGdjY19qaXRfdHlwZSAq dHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsYXN0 ZnJlZSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVs ZCAqZmllbGRfbWV0YXRhYmxlXzB4YmI4Y2IwID0KICAgIGdjY19qaXRfY29u dGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3Ry dWN0X3JhdmlfVGFibGVfX18weGJiMzc3MCwgLyogZ2NjX2ppdF90eXBlICp0 eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1ldGF0 YWJsZSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVs ZCAqZmllbGRfZ2NsaXN0XzB4YmI4ZDYwID0KICAgIGdjY19qaXRfY29udGV4 dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0 X3JhdmlfR0NPYmplY3RfX18weGJiMWQ1MCwgLyogZ2NjX2ppdF90eXBlICp0 eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImdjbGlz dCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAq ZmllbGRfcmF2aV9hcnJheV8weGJiOGUxMCA9CiAgICBnY2Nfaml0X2NvbnRl eHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9j ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnY2Nfaml0X3N0 cnVjdF9hc190eXBlIChzdHJ1Y3Rfc3RydWN0X3JhdmlfUmF2aUFycmF5XzB4 YmI1ZGUwKSwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgInJhdmlfYXJyYXkiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkc19maWVsZHNf MHhiYjhlNjBbMTJdID0gewogICAgZmllbGRfbmV4dF8weGJiNWYyMCwKICAg IGZpZWxkX3R0XzB4YmI1ZmQwLAogICAgZmllbGRfbWFya2VkXzB4YmI2MDgw LAogICAgZmllbGRfZmxhZ3NfMHhiYjg4OTAsCiAgICBmaWVsZF9sc2l6ZW5v ZGVfMHhiYjg5NDAsCiAgICBmaWVsZF9zaXplYXJyYXlfMHhiYjg5ZjAsCiAg ICBmaWVsZF9hcnJheV8weGJiOGFhMCwKICAgIGZpZWxkX25vZGVfMHhiYjhi NTAsCiAgICBmaWVsZF9sYXN0ZnJlZV8weGJiOGMwMCwKICAgIGZpZWxkX21l dGF0YWJsZV8weGJiOGNiMCwKICAgIGZpZWxkX2djbGlzdF8weGJiOGQ2MCwK ICAgIGZpZWxkX3JhdmlfYXJyYXlfMHhiYjhlMTAsCiAgfTsKICBnY2Nfaml0 X3N0cnVjdF9zZXRfZmllbGRzIChzdHJ1Y3Rfc3RydWN0X3JhdmlfVGFibGVf MHhiYjM3MjAsIC8qIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3RfdHlwZSAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg IDEyLCAvKiBpbnQgbnVtX2ZpZWxkcyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZpZWxkc19maWVsZHNfMHhiYjhlNjApOyAvKiBnY2Nfaml0 X2ZpZWxkICoqZmllbGRzICovCiAgZ2NjX2ppdF9zdHJ1Y3QgKnN0cnVjdF9z dHJ1Y3RfcmF2aV9sdWFfbG9uZ2ptcF8weGJiOGY5MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X29wYXF1ZV9zdHJ1Y3QgKGN0eHRfMHhiYjBmMzAsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAicmF2aV9sdWFfbG9uZ2ptcCIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF90eXBlICp0eXBlX3N0cnVj dF9yYXZpX2x1YV9sb25nam1wX19fMHhiYjhmZTAgPQogICAgZ2NjX2ppdF90 eXBlX2dldF9wb2ludGVyIChnY2Nfaml0X3N0cnVjdF9hc190eXBlIChzdHJ1 Y3Rfc3RydWN0X3JhdmlfbHVhX2xvbmdqbXBfMHhiYjhmOTApKTsKICBnY2Nf aml0X2ZpZWxkICpmaWVsZF9idWZmZXJfMHhiYjkwODAgPQogICAgZ2NjX2pp dF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9jaGFyX19fMHhiYjFhYTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJidWZmZXIiKTsgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX25f MHhiYjkxMzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9zaXplX3RfMHhiYjE4MTAsIC8qIGdj Y19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJuIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0 X2ZpZWxkICpmaWVsZF9idWZmc2l6ZV8weGJiOTFlMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3NpemVfdF8weGJiMTgxMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImJ1ZmZzaXplIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3N0cnVjdCAqc3RydWN0 X3N0cnVjdF9yYXZpX01idWZmZXJfMHhiYjkyOTAgPQogICAgZ2NjX2ppdF9j b250ZXh0X25ld19vcGFxdWVfc3RydWN0IChjdHh0XzB4YmIwZjMwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgInJhdmlfTWJ1ZmZlciIpOyAvKiBjb25zdCBj aGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRzX2ZpZWxkc18w eGJiOTJlMFszXSA9IHsKICAgIGZpZWxkX2J1ZmZlcl8weGJiOTA4MCwKICAg IGZpZWxkX25fMHhiYjkxMzAsCiAgICBmaWVsZF9idWZmc2l6ZV8weGJiOTFl MCwKICB9OwogIGdjY19qaXRfc3RydWN0X3NldF9maWVsZHMgKHN0cnVjdF9z dHJ1Y3RfcmF2aV9NYnVmZmVyXzB4YmI5MjkwLCAvKiBnY2Nfaml0X3N0cnVj dCAqc3RydWN0X3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAzLCAvKiBpbnQgbnVtX2ZpZWxkcyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkc19maWVsZHNfMHhi YjkyZTApOyAvKiBnY2Nfaml0X2ZpZWxkICoqZmllbGRzICovCiAgZ2NjX2pp dF9maWVsZCAqZmllbGRfaGFzaF8weGJiOTNiMCA9CiAgICBnY2Nfaml0X2Nv bnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAq bG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0 cnVjdF9yYXZpX1RTdHJpbmdfX19fXzB4YmIyZmUwLCAvKiBnY2Nfaml0X3R5 cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi aGFzaCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVs ZCAqZmllbGRfbnVzZV8weGJiOTQ2MCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJi MThlMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIm51c2UiKTsgLyogY29uc3QgY2hhciAqbmFt ZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX3NpemVfMHhiYjk1MTAgPQog ICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqdHlw ZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzaXplIik7 IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3N0cnVjdCAqc3Ry dWN0X3N0cnVjdF9yYXZpX3N0cmluZ3RhYmxlXzB4YmI5NWMwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfb3BhcXVlX3N0cnVjdCAoY3R4dF8weGJiMGYz MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJyYXZpX3N0cmluZ3RhYmxlIik7 IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVs ZHNfZmllbGRzXzB4YmI5NjEwWzNdID0gewogICAgZmllbGRfaGFzaF8weGJi OTNiMCwKICAgIGZpZWxkX251c2VfMHhiYjk0NjAsCiAgICBmaWVsZF9zaXpl XzB4YmI5NTEwLAogIH07CiAgZ2NjX2ppdF9zdHJ1Y3Rfc2V0X2ZpZWxkcyAo c3RydWN0X3N0cnVjdF9yYXZpX3N0cmluZ3RhYmxlXzB4YmI5NWMwLCAvKiBn Y2Nfaml0X3N0cnVjdCAqc3RydWN0X3R5cGUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCAvKiBpbnQgbnVt X2ZpZWxkcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxk c19maWVsZHNfMHhiYjk2MTApOyAvKiBnY2Nfaml0X2ZpZWxkICoqZmllbGRz ICovCiAgZ2NjX2ppdF9zdHJ1Y3QgKnN0cnVjdF9zdHJ1Y3RfcmF2aV9DYWxs SW5mb18weGJiOTZlMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X29wYXF1 ZV9zdHJ1Y3QgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAicmF2aV9DYWxsSW5mbyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF90eXBlICp0eXBlX3N0cnVjdF9yYXZpX0NhbGxJbmZvX19fMHhi Yjk3MzAgPQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2ludGVyIChnY2Nfaml0 X3N0cnVjdF9hc190eXBlIChzdHJ1Y3Rfc3RydWN0X3JhdmlfQ2FsbEluZm9f MHhiYjk2ZTApKTsKICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9iYXNlXzB4YmI5 N2QwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVFZhbHVlX19fMHhiYjJl MzAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJiYXNlIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUg Ki8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9zYXZlZHBjXzB4YmI5ODgwID0K ICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHR5cGVfdW5zaWduZWRfaW50X19fMHhiYjFiZjAsIC8qIGdjY19q aXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJzYXZlZHBjIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X3N0cnVjdCAqc3RydWN0X3N0cnVjdF9yYXZpX0NhbGxJbmZvX2x1YV8w eGJiOTkzMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X29wYXF1ZV9zdHJ1 Y3QgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmF2 aV9DYWxsSW5mb19sdWEiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdj Y19qaXRfZmllbGQgKmZpZWxkc19maWVsZHNfMHhiYjc2ZjBbMl0gPSB7CiAg ICBmaWVsZF9iYXNlXzB4YmI5N2QwLAogICAgZmllbGRfc2F2ZWRwY18weGJi OTg4MCwKICB9OwogIGdjY19qaXRfc3RydWN0X3NldF9maWVsZHMgKHN0cnVj dF9zdHJ1Y3RfcmF2aV9DYWxsSW5mb19sdWFfMHhiYjk5MzAsIC8qIGdjY19q aXRfc3RydWN0ICpzdHJ1Y3RfdHlwZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIsIC8qIGludCBudW1fZmll bGRzICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRzX2Zp ZWxkc18weGJiNzZmMCk7IC8qIGdjY19qaXRfZmllbGQgKipmaWVsZHMgKi8K ICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9rXzB4YmI5YWIwID0KICAgIGdjY19q aXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHB0 cl90b19pbnRfX19fX19zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVfX19faW50X19s b25nX2xvbmdfXzB4YmIxZTgwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiayIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfb2xkX2Vy cmZ1bmNfMHhiYjliNjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVs ZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9sb25nX2xvbmdfMHhiYjE2 YzAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJvbGRfZXJyZnVuYyIpOyAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfY3R4XzB4YmI5YzEw ID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBm MzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHR5cGVfbG9uZ19sb25nXzB4YmIxNmMwLCAvKiBnY2Nfaml0 X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAiY3R4Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3N0 cnVjdCAqc3RydWN0X3N0cnVjdF9yYXZpX0NhbGxJbmZvX0NfMHhiYjljYzAg PQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19vcGFxdWVfc3RydWN0IChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJhdmlfQ2FsbElu Zm9fQyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVs ZCAqZmllbGRzX2ZpZWxkc18weGJiOWQxMFszXSA9IHsKICAgIGZpZWxkX2tf MHhiYjlhYjAsCiAgICBmaWVsZF9vbGRfZXJyZnVuY18weGJiOWI2MCwKICAg IGZpZWxkX2N0eF8weGJiOWMxMCwKICB9OwogIGdjY19qaXRfc3RydWN0X3Nl dF9maWVsZHMgKHN0cnVjdF9zdHJ1Y3RfcmF2aV9DYWxsSW5mb19DXzB4YmI5 Y2MwLCAvKiBnY2Nfaml0X3N0cnVjdCAqc3RydWN0X3R5cGUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCAv KiBpbnQgbnVtX2ZpZWxkcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGZpZWxkc19maWVsZHNfMHhiYjlkMTApOyAvKiBnY2Nfaml0X2ZpZWxk ICoqZmllbGRzICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbF8weGJiOWRl MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIw ZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBnY2Nfaml0X3N0cnVjdF9hc190eXBlIChzdHJ1Y3Rfc3Ry dWN0X3JhdmlfQ2FsbEluZm9fbHVhXzB4YmI5OTMwKSwgLyogZ2NjX2ppdF90 eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ImwiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQg KmZpZWxkX2NfMHhiYjllOTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19m aWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2NjX2ppdF9zdHJ1Y3RfYXNf dHlwZSAoc3RydWN0X3N0cnVjdF9yYXZpX0NhbGxJbmZvX0NfMHhiYjljYzAp LCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiYyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF9maWVsZCAqZmllbGRzX2Zvcl91bmlvbl91bmlvbl9yYXZpX0Nh bGxJbmZvX3VfMHhiYjlmNDBbMl0gPSB7CiAgICBmaWVsZF9sXzB4YmI5ZGUw LAogICAgZmllbGRfY18weGJiOWU5MCwKICB9OwogIGdjY19qaXRfdHlwZSAq dW5pb25fdW5pb25fcmF2aV9DYWxsSW5mb191XzB4YmI5ZjQwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfdW5pb25fdHlwZSAoY3R4dF8weGJiMGYzMCwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJyYXZpX0NhbGxJbmZvX3UiLCAvKiBjb25zdCBj aGFyICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDIsIC8qIGludCBudW1fZmllbGRzICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGZpZWxkc19mb3JfdW5pb25fdW5pb25fcmF2 aV9DYWxsSW5mb191XzB4YmI5ZjQwKTsgLyogZ2NjX2ppdF9maWVsZCAqKmZp ZWxkcyAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2Z1bmNfMHhiYmEwNzAg PQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYz MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9UVmFsdWVfX18weGJiMmUzMCwg LyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgImZ1bmMiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwog IGdjY19qaXRfZmllbGQgKmZpZWxkX3RvcF8weGJiYTEyMCA9CiAgICBnY2Nf aml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 eXBlX3N0cnVjdF9yYXZpX1RWYWx1ZV9fXzB4YmIyZTMwLCAvKiBnY2Nfaml0 X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAidG9wIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2Zp ZWxkICpmaWVsZF9wcmV2aW91c18weGJiYTFkMCA9CiAgICBnY2Nfaml0X2Nv bnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAq bG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0 cnVjdF9yYXZpX0NhbGxJbmZvX19fMHhiYjk3MzAsIC8qIGdjY19qaXRfdHlw ZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJw cmV2aW91cyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9m aWVsZCAqZmllbGRfbmV4dF8weGJiYTI4MCA9CiAgICBnY2Nfaml0X2NvbnRl eHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9j ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVj dF9yYXZpX0NhbGxJbmZvX19fMHhiYjk3MzAsIC8qIGdjY19qaXRfdHlwZSAq dHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuZXh0 Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpm aWVsZF91XzB4YmJhMzMwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmll bGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHVuaW9uX3VuaW9uX3JhdmlfQ2Fs bEluZm9fdV8weGJiOWY0MCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInUiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2V4dHJhXzB4 YmJhM2UwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRf MHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHR5cGVfbG9uZ19sb25nXzB4YmIxNmMwLCAvKiBn Y2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAiZXh0cmEiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdj Y19qaXRfZmllbGQgKmZpZWxkX25yZXN1bHRzXzB4YmJhNDkwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHR5cGVfc2hvcnRfMHhiYjE5NjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJucmVzdWx0cyIp OyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmll bGRfY2FsbHN0YXR1c18weGJiYTU0MCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3Vuc2lnbmVk X2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjYWxsc3RhdHVzIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZHNf ZmllbGRzXzB4YmJhNTkwWzhdID0gewogICAgZmllbGRfZnVuY18weGJiYTA3 MCwKICAgIGZpZWxkX3RvcF8weGJiYTEyMCwKICAgIGZpZWxkX3ByZXZpb3Vz XzB4YmJhMWQwLAogICAgZmllbGRfbmV4dF8weGJiYTI4MCwKICAgIGZpZWxk X3VfMHhiYmEzMzAsCiAgICBmaWVsZF9leHRyYV8weGJiYTNlMCwKICAgIGZp ZWxkX25yZXN1bHRzXzB4YmJhNDkwLAogICAgZmllbGRfY2FsbHN0YXR1c18w eGJiYTU0MCwKICB9OwogIGdjY19qaXRfc3RydWN0X3NldF9maWVsZHMgKHN0 cnVjdF9zdHJ1Y3RfcmF2aV9DYWxsSW5mb18weGJiOTZlMCwgLyogZ2NjX2pp dF9zdHJ1Y3QgKnN0cnVjdF90eXBlICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgOCwgLyogaW50IG51bV9maWVs ZHMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHNfZmll bGRzXzB4YmJhNTkwKTsgLyogZ2NjX2ppdF9maWVsZCAqKmZpZWxkcyAqLwog IGdjY19qaXRfc3RydWN0ICpzdHJ1Y3Rfc3RydWN0X3JhdmlfU3RhdGVfMHhi YmE2ODAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19vcGFxdWVfc3RydWN0 IChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJhdmlf U3RhdGUiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfdHlw ZSAqdHlwZV9zdHJ1Y3RfcmF2aV9TdGF0ZV9fXzB4YmJhNmQwID0KICAgIGdj Y19qaXRfdHlwZV9nZXRfcG9pbnRlciAoZ2NjX2ppdF9zdHJ1Y3RfYXNfdHlw ZSAoc3RydWN0X3N0cnVjdF9yYXZpX1N0YXRlXzB4YmJhNjgwKSk7CiAgZ2Nj X2ppdF9zdHJ1Y3QgKnN0cnVjdF9zdHJ1Y3RfcmF2aV9nbG9iYWxfU3RhdGVf MHhiYmE3NzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19vcGFxdWVfc3Ry dWN0IChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJh dmlfZ2xvYmFsX1N0YXRlIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBn Y2Nfaml0X3R5cGUgKnR5cGVfc3RydWN0X3JhdmlfZ2xvYmFsX1N0YXRlX19f MHhiYmE3YzAgPQogICAgZ2NjX2ppdF90eXBlX2dldF9wb2ludGVyIChnY2Nf aml0X3N0cnVjdF9hc190eXBlIChzdHJ1Y3Rfc3RydWN0X3JhdmlfZ2xvYmFs X1N0YXRlXzB4YmJhNzcwKSk7CiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfbmV4 dF8weGJiYTg2MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX0dDT2JqZWN0 X19fMHhiYjFkNTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJuZXh0Iik7IC8qIGNvbnN0IGNo YXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF90dF8weGJiYTkx MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIw ZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB0eXBlX3Vuc2lnbmVkX2NoYXJfMHhiYjFhMjAsIC8qIGdj Y19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJ0dCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2pp dF9maWVsZCAqZmllbGRfbWFya2VkXzB4YmJhOWMwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVf dW5zaWduZWRfY2hhcl8weGJiMWEyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBl LCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm1hcmtlZCIp OyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmll bGRfc3RhdHVzXzB4YmJhYTcwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf ZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdW5zaWduZWRfY2hh cl8weGJiMWEyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgInN0YXR1cyIpOyAvKiBjb25zdCBj aGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfdG9wXzB4YmJh YjIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVFZhbHVlX19fMHhiYjJl MzAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJ0b3AiKTsgLyogY29uc3QgY2hhciAqbmFtZSAq LwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2xfR18weGJiYWJkMCA9CiAgICBn Y2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eXBlX3N0cnVjdF9yYXZpX2dsb2JhbF9TdGF0ZV9fXzB4YmJhN2MwLCAv KiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAibF9HIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBn Y2Nfaml0X2ZpZWxkICpmaWVsZF9jaV8weGJiYWM4MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3N0cnVjdF9yYXZpX0NhbGxJbmZvX19fMHhiYjk3MzAsIC8qIGdjY19qaXRf dHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJjaSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVs ZCAqZmllbGRfb2xkcGNfMHhiYmFkMzAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV91bnNpZ25l ZF9pbnRfX18weGJiMWJmMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm9sZHBjIik7IC8qIGNv bnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9zdGFj a19sYXN0XzB4YmJhZGUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmll bGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVFZh bHVlX19fMHhiYjJlMzAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJzdGFja19sYXN0Iik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9z dGFja18weGJiYWU5MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxk IChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX1RWYWx1 ZV9fXzB4YmIyZTMwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAic3RhY2siKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX29wZW51cHZh bF8weGJiYWY0MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX1VwVmFsX19f MHhiYjY0ZDAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJvcGVudXB2YWwiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2djbGlzdF8w eGJiN2JkMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX0dDT2JqZWN0X19f MHhiYjFkNTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJnY2xpc3QiKTsgLyogY29uc3QgY2hh ciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX3R3dXBzXzB4YmI3 YzgwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0YXRlX19fMHhi YjFjOTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJ0d3VwcyIpOyAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfZXJyb3JKbXBfMHhiYjdk MzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8weGJi MGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9sdWFfbG9uZ2ptcF9fXzB4 YmI4ZmUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiZXJyb3JKbXAiKTsgLyogY29uc3QgY2hh ciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkX2Jhc2VfY2lfMHhi YjdkZTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8w eGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws IC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZ2NjX2ppdF9zdHJ1Y3RfYXNfdHlwZSAoc3RydWN0 X3N0cnVjdF9yYXZpX0NhbGxJbmZvXzB4YmI5NmUwKSwgLyogZ2NjX2ppdF90 eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ImJhc2VfY2kiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRf ZmllbGQgKmZpZWxkX2hvb2tfMHhiYjdlOTAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHRyX3RvX3Zv aWRfX19fX19fX3N0cnVjdF9yYXZpX2x1YV9TdGF0ZV9fX19zdHJ1Y3RfcmF2 aV9sdWFfRGVidWdfX19fMHhiYjIwZjAsIC8qIGdjY19qaXRfdHlwZSAqdHlw ZSwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJob29rIik7 IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVs ZF9lcnJmdW5jXzB4YmI3ZjQwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf ZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfbG9uZ19sb25nXzB4 YmIxNmMwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiZXJyZnVuYyIpOyAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRfc3RhY2tzaXplXzB4 YmI3ZmYwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRf MHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0 X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAic3RhY2tzaXplIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X2ZpZWxkICpmaWVsZF9iYXNlaG9va2NvdW50XzB4YmI4MGEwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUs ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYmFzZWhvb2tj b3VudCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9maWVs ZCAqZmllbGRfaG9va2NvdW50XzB4YmI4MTUwID0KICAgIGdjY19qaXRfY29u dGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50 XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUsICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiaG9va2NvdW50Iik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9ubnlfMHhi YjgyMDAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19maWVsZCAoY3R4dF8w eGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws IC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdHlwZV91bnNpZ25lZF9zaG9ydF8weGJiMTlhMCwg LyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIm5ueSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF9maWVsZCAqZmllbGRfbkNjYWxsc18weGJiODJiMCA9CiAgICBn Y2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eXBlX3Vuc2lnbmVkX3Nob3J0XzB4YmIxOWEwLCAvKiBnY2Nfaml0X3R5 cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi bkNjYWxscyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9m aWVsZCAqZmllbGRfaG9va21hc2tfMHhiYjgzNjAgPQogICAgZ2NjX2ppdF9j b250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV91 bnNpZ25lZF9jaGFyXzB4YmIxYTIwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUs ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaG9va21hc2si KTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZp ZWxkX2FsbG93aG9va18weGJiODQxMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3Vuc2lnbmVk X2NoYXJfMHhiYjFhMjAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJhbGxvd2hvb2siKTsgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkc19m aWVsZHNfMHhiYjg0NjBbMjRdID0gewogICAgZmllbGRfbmV4dF8weGJiYTg2 MCwKICAgIGZpZWxkX3R0XzB4YmJhOTEwLAogICAgZmllbGRfbWFya2VkXzB4 YmJhOWMwLAogICAgZmllbGRfc3RhdHVzXzB4YmJhYTcwLAogICAgZmllbGRf dG9wXzB4YmJhYjIwLAogICAgZmllbGRfbF9HXzB4YmJhYmQwLAogICAgZmll bGRfY2lfMHhiYmFjODAsCiAgICBmaWVsZF9vbGRwY18weGJiYWQzMCwKICAg IGZpZWxkX3N0YWNrX2xhc3RfMHhiYmFkZTAsCiAgICBmaWVsZF9zdGFja18w eGJiYWU5MCwKICAgIGZpZWxkX29wZW51cHZhbF8weGJiYWY0MCwKICAgIGZp ZWxkX2djbGlzdF8weGJiN2JkMCwKICAgIGZpZWxkX3R3dXBzXzB4YmI3Yzgw LAogICAgZmllbGRfZXJyb3JKbXBfMHhiYjdkMzAsCiAgICBmaWVsZF9iYXNl X2NpXzB4YmI3ZGUwLAogICAgZmllbGRfaG9va18weGJiN2U5MCwKICAgIGZp ZWxkX2VycmZ1bmNfMHhiYjdmNDAsCiAgICBmaWVsZF9zdGFja3NpemVfMHhi YjdmZjAsCiAgICBmaWVsZF9iYXNlaG9va2NvdW50XzB4YmI4MGEwLAogICAg ZmllbGRfaG9va2NvdW50XzB4YmI4MTUwLAogICAgZmllbGRfbm55XzB4YmI4 MjAwLAogICAgZmllbGRfbkNjYWxsc18weGJiODJiMCwKICAgIGZpZWxkX2hv b2ttYXNrXzB4YmI4MzYwLAogICAgZmllbGRfYWxsb3dob29rXzB4YmI4NDEw LAogIH07CiAgZ2NjX2ppdF9zdHJ1Y3Rfc2V0X2ZpZWxkcyAoc3RydWN0X3N0 cnVjdF9yYXZpX2x1YV9TdGF0ZV8weGJiMTcwMCwgLyogZ2NjX2ppdF9zdHJ1 Y3QgKnN0cnVjdF90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMjQsIC8qIGludCBudW1fZmllbGRzICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRzX2ZpZWxkc18w eGJiODQ2MCk7IC8qIGdjY19qaXRfZmllbGQgKipmaWVsZHMgKi8KICBnY2Nf aml0X2ZpZWxkICpmaWVsZF9uZXh0XzB4YmI4NWQwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVf c3RydWN0X3JhdmlfVXBWYWxfX18weGJiNjRkMCwgLyogZ2NjX2ppdF90eXBl ICp0eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5l eHQiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQg KmZpZWxkX3RvdWNoZWRfMHhiYjg2ODAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhi YjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJ0b3VjaGVkIik7IC8qIGNvbnN0IGNoYXIg Km5hbWUgKi8KICBnY2Nfaml0X3N0cnVjdCAqc3RydWN0X3N0cnVjdF9yYXZp X1VwVmFsX3Vfb3Blbl8weGJiODczMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X29wYXF1ZV9zdHJ1Y3QgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAicmF2aV9VcFZhbF91X29wZW4iKTsgLyogY29uc3QgY2hh ciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkc19maWVsZHNfMHhi Yjg3ODBbMl0gPSB7CiAgICBmaWVsZF9uZXh0XzB4YmI4NWQwLAogICAgZmll bGRfdG91Y2hlZF8weGJiODY4MCwKICB9OwogIGdjY19qaXRfc3RydWN0X3Nl dF9maWVsZHMgKHN0cnVjdF9zdHJ1Y3RfcmF2aV9VcFZhbF91X29wZW5fMHhi Yjg3MzAsIC8qIGdjY19qaXRfc3RydWN0ICpzdHJ1Y3RfdHlwZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIs IC8qIGludCBudW1fZmllbGRzICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZmllbGRzX2ZpZWxkc18weGJiODc4MCk7IC8qIGdjY19qaXRfZmll bGQgKipmaWVsZHMgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9vcGVuXzB4 YmJjMzEwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRf MHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGdjY19qaXRfc3RydWN0X2FzX3R5cGUgKHN0cnVj dF9zdHJ1Y3RfcmF2aV9VcFZhbF91X29wZW5fMHhiYjg3MzApLCAvKiBnY2Nf aml0X3R5cGUgKnR5cGUsICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAib3BlbiIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2pp dF9maWVsZCAqZmllbGRfdmFsdWVfMHhiYmMzODAgPQogICAgZ2NjX2ppdF9j b250ZXh0X25ld19maWVsZCAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2NjX2pp dF9zdHJ1Y3RfYXNfdHlwZSAoc3RydWN0X3N0cnVjdF9yYXZpX1RWYWx1ZV8w eGJiMmQ1MCksIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSIpOyAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgZ2NjX2ppdF9maWVsZCAqZmllbGRzX2Zvcl91bmlvbl91 bmlvbl9yYXZpX1VwVmFsX3VfMHhiYmM0MzBbMl0gPSB7CiAgICBmaWVsZF9v cGVuXzB4YmJjMzEwLAogICAgZmllbGRfdmFsdWVfMHhiYmMzODAsCiAgfTsK ICBnY2Nfaml0X3R5cGUgKnVuaW9uX3VuaW9uX3JhdmlfVXBWYWxfdV8weGJi YzQzMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3VuaW9uX3R5cGUgKGN0 eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmF2aV9VcFZhbF91Iiwg LyogY29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAyLCAvKiBpbnQgbnVtX2ZpZWxkcyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZHNfZm9yX3VuaW9u X3VuaW9uX3JhdmlfVXBWYWxfdV8weGJiYzQzMCk7IC8qIGdjY19qaXRfZmll bGQgKipmaWVsZHMgKi8KICBnY2Nfaml0X2ZpZWxkICpmaWVsZF92XzB4YmJj NTYwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZmllbGQgKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVFZhbHVlX19fMHhiYjJl MzAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSwgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJ2Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8K ICBnY2Nfaml0X2ZpZWxkICpmaWVsZF9yZWZjb3VudF8weGJiYzYxMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X2ZpZWxkIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX3NpemVfdF8weGJiMTgxMCwgLyogZ2NjX2ppdF90eXBlICp0 eXBlLCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJlZmNv dW50Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2ZpZWxk ICpmaWVsZF91XzB4YmJjNmMwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf ZmllbGQgKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHVuaW9uX3VuaW9uX3Jhdmlf VXBWYWxfdV8weGJiYzQzMCwgLyogZ2NjX2ppdF90eXBlICp0eXBlLCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInUiKTsgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogIGdjY19qaXRfZmllbGQgKmZpZWxkc19maWVsZHNf MHhiYmM3MTBbM10gPSB7CiAgICBmaWVsZF92XzB4YmJjNTYwLAogICAgZmll bGRfcmVmY291bnRfMHhiYmM2MTAsCiAgICBmaWVsZF91XzB4YmJjNmMwLAog IH07CiAgZ2NjX2ppdF9zdHJ1Y3Rfc2V0X2ZpZWxkcyAoc3RydWN0X3N0cnVj dF9yYXZpX1VwVmFsXzB4YmI2NDgwLCAvKiBnY2Nfaml0X3N0cnVjdCAqc3Ry dWN0X3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAzLCAvKiBpbnQgbnVtX2ZpZWxkcyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGZpZWxkc19maWVsZHNfMHhiYmM3MTAp OyAvKiBnY2Nfaml0X2ZpZWxkICoqZmllbGRzICovCiAgZ2NjX2ppdF9wYXJh bSAqcGFyYW1fTF8weGJiYzdlMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZp X2x1YV9TdGF0ZV9fXzB4YmIxYzkwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkwiKTsgLyogY29u c3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX2ZpcnN0 UmVzdWx0XzB4YmJjODkwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFy YW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVFZh bHVlX19fMHhiYjJlMzAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAiZmlyc3RSZXN1bHQiKTsgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtc19m b3JfZnVuY19sdWFEX3Bvc2NhbGxfMHhiYmM5NDBbMl0gPSB7CiAgICBwYXJh bV9MXzB4YmJjN2UwLAogICAgcGFyYW1fZmlyc3RSZXN1bHRfMHhiYmM4OTAs CiAgfTsKICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jX2x1YURfcG9zY2FsbF8w eGJiYzk0MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChj dHh0XzB4YmIwZjMwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgR0NDX0pJVF9GVU5DVElPTl9JTVBPUlRFRCwgLyogZW51bSBn Y2Nfaml0X2Z1bmN0aW9uX2tpbmQga2luZCAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19q aXRfdHlwZSAqcmV0dXJuX3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJsdWFEX3Bvc2NhbGwiLCAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyLCAv KiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX2x1YURfcG9zY2FsbF8weGJiYzk0 MCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFtcyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCBpc192YXJpYWRpYyAq LwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX0xfMHhiYmNhNzAgPQogICAgZ2Nj X2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dHlwZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVfX18weGJiMWM5MCwgLypnY2Nf aml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJMIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3Bh cmFtICpwYXJhbV91dl8weGJiY2IyMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9y YXZpX1VwVmFsX19fMHhiYjY0ZDAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAidXYiKTsgLyogY29u c3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtc19mb3Jf ZnVuY19sdWFDX3VwdmFsYmFycmllcl9fMHhiYmNiZDBbMl0gPSB7CiAgICBw YXJhbV9MXzB4YmJjYTcwLAogICAgcGFyYW1fdXZfMHhiYmNiMjAsCiAgfTsK ICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jX2x1YUNfdXB2YWxiYXJyaWVyX18w eGJiY2JkMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChj dHh0XzB4YmIwZjMwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgR0NDX0pJVF9GVU5DVElPTl9JTVBPUlRFRCwgLyogZW51bSBn Y2Nfaml0X2Z1bmN0aW9uX2tpbmQga2luZCAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV92b2lkXzB4YmIxODkwLCAvKiBnY2Nf aml0X3R5cGUgKnJldHVybl90eXBlICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAibHVhQ191cHZhbGJhcnJpZXJfIiwgLyogY29uc3Qg Y2hhciAqbmFtZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgMiwgLyogaW50IG51bV9wYXJhbXMgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHBhcmFtc19mb3JfZnVuY19sdWFDX3VwdmFsYmFy cmllcl9fMHhiYmNiZDAsIC8qIGdjY19qaXRfcGFyYW0gKipwYXJhbXMgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOyAvKiBpbnQg aXNfdmFyaWFkaWMgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9MXzB4YmJj Y2QwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0YXRlX19fMHhi YjFjOTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiTCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICov CiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fZnVuY18weGJiY2Q4MCA9CiAgICBn Y2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eXBlX3N0cnVjdF9yYXZpX1RWYWx1ZV9fXzB4YmIyZTMwLCAvKmdjY19q aXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgImZ1bmMiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRf cGFyYW0gKnBhcmFtX25yZXN1bHRzXzB4YmJjZTMwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVf aW50XzB4YmIxOGUwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIm5yZXN1bHRzIik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1 bmNfbHVhRF9wcmVjYWxsXzB4YmJjZWUwWzNdID0gewogICAgcGFyYW1fTF8w eGJiY2NkMCwKICAgIHBhcmFtX2Z1bmNfMHhiYmNkODAsCiAgICBwYXJhbV9u cmVzdWx0c18weGJiY2UzMCwKICB9OwogIGdjY19qaXRfZnVuY3Rpb24gKmZ1 bmNfbHVhRF9wcmVjYWxsXzB4YmJjZWUwID0KICAgIGdjY19qaXRfY29udGV4 dF9uZXdfZnVuY3Rpb24gKGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29u dGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0ZVTkNUSU9OX0lN UE9SVEVELCAvKiBlbnVtIGdjY19qaXRfZnVuY3Rpb25fa2luZCBraW5kICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8w eGJiMThlMCwgLyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImx1YURfcHJlY2FsbCIs IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDMsIC8qIGludCBudW1fcGFyYW1zICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXNfZm9yX2Z1bmNfbHVh RF9wcmVjYWxsXzB4YmJjZWUwLCAvKiBnY2Nfaml0X3BhcmFtICoqcGFyYW1z ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsgLyog aW50IGlzX3ZhcmlhZGljICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fTF8w eGJiY2ZlMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX2x1YV9TdGF0ZV9f XzB4YmIxYzkwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIkwiKTsgLyogY29uc3QgY2hhciAqbmFt ZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX2Z1bmNfMHhiYmQwOTAgPQog ICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9UVmFsdWVfX18weGJiMmUzMCwgLypn Y2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJmdW5jIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X3BhcmFtICpwYXJhbV9ucmVzdWx0c18weGJiZDE0MCA9CiAgICBnY2Nf aml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 eXBlX2ludF8weGJiMThlMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJucmVzdWx0cyIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fYWxs b3d5aWVsZF8weGJiZDFmMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3Bh cmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwg LypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJhbGxvd3lpZWxkIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUg Ki8KICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNfbHVhRF9jYWxs XzB4YmJkMmEwWzRdID0gewogICAgcGFyYW1fTF8weGJiY2ZlMCwKICAgIHBh cmFtX2Z1bmNfMHhiYmQwOTAsCiAgICBwYXJhbV9ucmVzdWx0c18weGJiZDE0 MCwKICAgIHBhcmFtX2FsbG93eWllbGRfMHhiYmQxZjAsCiAgfTsKICBnY2Nf aml0X2Z1bmN0aW9uICpmdW5jX2x1YURfY2FsbF8weGJiZDJhMCA9CiAgICBn Y2Nfaml0X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChjdHh0XzB4YmIwZjMwLCAv KiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJ VF9GVU5DVElPTl9JTVBPUlRFRCwgLyogZW51bSBnY2Nfaml0X2Z1bmN0aW9u X2tpbmQga2luZCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqcmV0dXJu X3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJs dWFEX2NhbGwiLCAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICA0LCAvKiBpbnQgbnVtX3BhcmFtcyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zX2Zv cl9mdW5jX2x1YURfY2FsbF8weGJiZDJhMCwgLyogZ2NjX2ppdF9wYXJhbSAq KnBhcmFtcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MCk7IC8qIGludCBpc192YXJpYWRpYyAqLwogIGdjY19qaXRfcGFyYW0gKnBh cmFtX0xfMHhiYmQzYTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJh bSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9sdWFf U3RhdGVfX18weGJiMWM5MCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJMIik7IC8qIGNvbnN0IGNo YXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNf bHVhVl9leGVjdXRlXzB4YmJkNDUwWzFdID0gewogICAgcGFyYW1fTF8weGJi ZDNhMCwKICB9OwogIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmNfbHVhVl9leGVj dXRlXzB4YmJkNDUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZnVuY3Rp b24gKGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBHQ0NfSklUX0ZVTkNUSU9OX0lNUE9SVEVELCAvKiBl bnVtIGdjY19qaXRfZnVuY3Rpb25fa2luZCBraW5kICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3ZvaWRfMHhiYjE4OTAsIC8q IGdjY19qaXRfdHlwZSAqcmV0dXJuX3R5cGUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJsdWFWX2V4ZWN1dGUiLCAvKiBjb25zdCBj aGFyICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAxLCAvKiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX2x1YVZfZXhlY3V0ZV8w eGJiZDQ1MCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFtcyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCBpc192YXJp YWRpYyAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX0xfMHhiYmQ1YTAgPQog ICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVfX18weGJiMWM5MCwg LypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJMIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X3BhcmFtICpwYXJhbV9sZXZlbF8weGJiZDY1MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3N0cnVjdF9yYXZpX1RWYWx1ZV9fXzB4YmIyZTMwLCAvKmdjY19qaXRfdHlw ZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImxl dmVsIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFt ICpwYXJhbXNfZm9yX2Z1bmNfbHVhRl9jbG9zZV8weGJiZDcwMFsyXSA9IHsK ICAgIHBhcmFtX0xfMHhiYmQ1YTAsCiAgICBwYXJhbV9sZXZlbF8weGJiZDY1 MCwKICB9OwogIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmNfbHVhRl9jbG9zZV8w eGJiZDcwMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChj dHh0XzB4YmIwZjMwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgR0NDX0pJVF9GVU5DVElPTl9JTVBPUlRFRCwgLyogZW51bSBn Y2Nfaml0X2Z1bmN0aW9uX2tpbmQga2luZCAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV92b2lkXzB4YmIxODkwLCAvKiBnY2Nf aml0X3R5cGUgKnJldHVybl90eXBlICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAibHVhRl9jbG9zZSIsIC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIsIC8q IGludCBudW1fcGFyYW1zICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBwYXJhbXNfZm9yX2Z1bmNfbHVhRl9jbG9zZV8weGJiZDcwMCwg LyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFtcyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCBpc192YXJpYWRpYyAqLwog IGdjY19qaXRfcGFyYW0gKnBhcmFtX0xfMHhiYmQ3ZDAgPQogICAgZ2NjX2pp dF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVfX18weGJiMWM5MCwgLypnY2Nfaml0 X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJMIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFt ICpwYXJhbV90MV8weGJiZDg4MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2NvbnN0X3N0cnVj dF9yYXZpX1RWYWx1ZV9fXzB4YmIyZWIwLCAvKmdjY19qaXRfdHlwZSAqdHlw ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInQxIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV90 Ml8weGJiZDkzMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX2NvbnN0X3N0cnVjdF9yYXZpX1RW YWx1ZV9fXzB4YmIyZWIwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgInQyIik7IC8qIGNvbnN0IGNo YXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNf bHVhVl9lcXVhbG9ial8weGJiZDllMFszXSA9IHsKICAgIHBhcmFtX0xfMHhi YmQ3ZDAsCiAgICBwYXJhbV90MV8weGJiZDg4MCwKICAgIHBhcmFtX3QyXzB4 YmJkOTMwLAogIH07CiAgZ2NjX2ppdF9mdW5jdGlvbiAqZnVuY19sdWFWX2Vx dWFsb2JqXzB4YmJkOWUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZnVu Y3Rpb24gKGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4 dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBHQ0NfSklUX0ZVTkNUSU9OX0lNUE9SVEVELCAv KiBlbnVtIGdjY19qaXRfZnVuY3Rpb25fa2luZCBraW5kICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwg LyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgImx1YVZfZXF1YWxvYmoiLCAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAzLCAvKiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX2x1YVZfZXF1YWxv YmpfMHhiYmQ5ZTAsIC8qIGdjY19qaXRfcGFyYW0gKipwYXJhbXMgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOyAvKiBpbnQgaXNf dmFyaWFkaWMgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9MXzB4YmJkYWUw ID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBm MzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0YXRlX19fMHhiYjFj OTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiTCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF9wYXJhbSAqcGFyYW1fbF8weGJiZGI5MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X2NvbnN0X3N0cnVjdF9yYXZpX1RWYWx1ZV9fXzB4YmIyZWIwLCAvKmdjY19q aXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgImwiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFy YW0gKnBhcmFtX3JfMHhiYmRjNDAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25l d19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9jb25zdF9zdHJ1 Y3RfcmF2aV9UVmFsdWVfX18weGJiMmViMCwgLypnY2Nfaml0X3R5cGUgKnR5 cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbXNf Zm9yX2Z1bmNfbHVhVl9sZXNzdGhhbl8weGJiZGNmMFszXSA9IHsKICAgIHBh cmFtX0xfMHhiYmRhZTAsCiAgICBwYXJhbV9sXzB4YmJkYjkwLAogICAgcGFy YW1fcl8weGJiZGM0MCwKICB9OwogIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmNf bHVhVl9sZXNzdGhhbl8weGJiZGNmMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X2Z1bmN0aW9uIChjdHh0XzB4YmIwZjMwLCAvKiBnY2Nfaml0X2NvbnRl eHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJVF9GVU5DVElPTl9JTVBP UlRFRCwgLyogZW51bSBnY2Nfaml0X2Z1bmN0aW9uX2tpbmQga2luZCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhi YjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqcmV0dXJuX3R5cGUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsdWFWX2xlc3N0aGFuIiwg LyogY29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgMywgLyogaW50IG51bV9wYXJhbXMgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19mb3JfZnVuY19sdWFW X2xlc3N0aGFuXzB4YmJkY2YwLCAvKiBnY2Nfaml0X3BhcmFtICoqcGFyYW1z ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsgLyog aW50IGlzX3ZhcmlhZGljICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fTF8w eGJiZGRmMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX2x1YV9TdGF0ZV9f XzB4YmIxYzkwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIkwiKTsgLyogY29uc3QgY2hhciAqbmFt ZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX2xfMHhiYmRlYTAgPQogICAg Z2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdHlwZV9jb25zdF9zdHJ1Y3RfcmF2aV9UVmFsdWVfX18weGJiMmViMCwg LypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJsIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X3BhcmFtICpwYXJhbV9yXzB4YmJkZjUwID0KICAgIGdjY19qaXRfY29u dGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfY29u c3Rfc3RydWN0X3JhdmlfVFZhbHVlX19fMHhiYjJlYjAsIC8qZ2NjX2ppdF90 eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi ciIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAq cGFyYW1zX2Zvcl9mdW5jX2x1YVZfbGVzc2VxdWFsXzB4YmJlMDAwWzNdID0g ewogICAgcGFyYW1fTF8weGJiZGRmMCwKICAgIHBhcmFtX2xfMHhiYmRlYTAs CiAgICBwYXJhbV9yXzB4YmJkZjUwLAogIH07CiAgZ2NjX2ppdF9mdW5jdGlv biAqZnVuY19sdWFWX2xlc3NlcXVhbF8weGJiZTAwMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChjdHh0XzB4YmIwZjMwLCAvKiBnY2Nf aml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJVF9GVU5D VElPTl9JTVBPUlRFRCwgLyogZW51bSBnY2Nfaml0X2Z1bmN0aW9uX2tpbmQg a2luZCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqcmV0dXJuX3R5cGUg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsdWFWX2xl c3NlcXVhbCIsIC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDMsIC8qIGludCBudW1fcGFyYW1zICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXNfZm9y X2Z1bmNfbHVhVl9sZXNzZXF1YWxfMHhiYmUwMDAsIC8qIGdjY19qaXRfcGFy YW0gKipwYXJhbXMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDApOyAvKiBpbnQgaXNfdmFyaWFkaWMgKi8KICBnY2Nfaml0X3BhcmFt ICpwYXJhbV9MXzB4YmJkNGYwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf cGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3Jhdmlf bHVhX1N0YXRlX19fMHhiYjFjOTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTCIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fZm10XzB4 YmJlMWYwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRf MHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHR5cGVfY29uc3RfY2hhcl9fXzB4YmIxODUwLCAv KmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgImZtdCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2Nj X2ppdF9wYXJhbSAqcGFyYW1zX2Zvcl9mdW5jX2x1YUdfcnVuZXJyb3JfMHhi YmUyYTBbMl0gPSB7CiAgICBwYXJhbV9MXzB4YmJkNGYwLAogICAgcGFyYW1f Zm10XzB4YmJlMWYwLAogIH07CiAgZ2NjX2ppdF9mdW5jdGlvbiAqZnVuY19s dWFHX3J1bmVycm9yXzB4YmJlMmEwID0KICAgIGdjY19qaXRfY29udGV4dF9u ZXdfZnVuY3Rpb24gKGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29udGV4 dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0ZVTkNUSU9OX0lNUE9S VEVELCAvKiBlbnVtIGdjY19qaXRfZnVuY3Rpb25fa2luZCBraW5kICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3ZvaWRfMHhi YjE4OTAsIC8qIGdjY19qaXRfdHlwZSAqcmV0dXJuX3R5cGUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsdWFHX3J1bmVycm9yIiwg LyogY29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgMiwgLyogaW50IG51bV9wYXJhbXMgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19mb3JfZnVuY19sdWFH X3J1bmVycm9yXzB4YmJlMmEwLCAvKiBnY2Nfaml0X3BhcmFtICoqcGFyYW1z ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxKTsgLyog aW50IGlzX3ZhcmlhZGljICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fb2Jq XzB4YmJlM2EwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0 eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVFZhbHVlX19f MHhiYjJlMzAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAib2JqIik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9wXzB4YmJlNDUwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfbG9uZ19sb25nX19fMHhiYjE3NTAsIC8qZ2NjX2ppdF90eXBl ICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicCIp OyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFy YW1fc3RlcF8weGJiZTUwMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3Bh cmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2xvbmdfbG9uZ18weGJi MTZjMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJzdGVwIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUg Ki8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9zdG9wbm93XzB4YmJlNWIwID0K ICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHR5cGVfaW50X19fMHhiYjE5MjAsIC8qZ2NjX2ppdF90eXBlICp0 eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAic3RvcG5v dyIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAq cGFyYW1zX2Zvcl9mdW5jX2x1YVZfZm9ybGltaXRfMHhiYmU2NjBbNF0gPSB7 CiAgICBwYXJhbV9vYmpfMHhiYmUzYTAsCiAgICBwYXJhbV9wXzB4YmJlNDUw LAogICAgcGFyYW1fc3RlcF8weGJiZTUwMCwKICAgIHBhcmFtX3N0b3Bub3df MHhiYmU1YjAsCiAgfTsKICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jX2x1YVZf Zm9ybGltaXRfMHhiYmU2NjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19m dW5jdGlvbiAoY3R4dF8weGJiMGYzMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpj dHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05fSU1QT1JURUQs IC8qIGVudW0gZ2NjX2ppdF9mdW5jdGlvbl9raW5kIGtpbmQgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUw LCAvKiBnY2Nfaml0X3R5cGUgKnJldHVybl90eXBlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAibHVhVl9mb3JsaW1pdCIsIC8qIGNv bnN0IGNoYXIgKm5hbWUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDQsIC8qIGludCBudW1fcGFyYW1zICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBwYXJhbXNfZm9yX2Z1bmNfbHVhVl9mb3Js aW1pdF8weGJiZTY2MCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFtcyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCBp c192YXJpYWRpYyAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX29ial8weGJi ZTc2MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4 YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0eXBlX2NvbnN0X3N0cnVjdF9yYXZpX1RWYWx1ZV9f XzB4YmIyZWIwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIm9iaiIpOyAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fbl8weGJiZTgxMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX2RvdWJsZV9fXzB4YmIxNjQwLCAvKmdjY19qaXRfdHlwZSAq dHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm4iKTsg LyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFt c19mb3JfZnVuY19sdWFWX3RvbnVtYmVyX18weGJiZThjMFsyXSA9IHsKICAg IHBhcmFtX29ial8weGJiZTc2MCwKICAgIHBhcmFtX25fMHhiYmU4MTAsCiAg fTsKICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jX2x1YVZfdG9udW1iZXJfXzB4 YmJlOGMwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZnVuY3Rpb24gKGN0 eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBHQ0NfSklUX0ZVTkNUSU9OX0lNUE9SVEVELCAvKiBlbnVtIGdj Y19qaXRfZnVuY3Rpb25fa2luZCBraW5kICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2pp dF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgImx1YVZfdG9udW1iZXJfIiwgLyogY29uc3QgY2hhciAq bmFtZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiwg LyogaW50IG51bV9wYXJhbXMgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHBhcmFtc19mb3JfZnVuY19sdWFWX3RvbnVtYmVyX18weGJi ZThjMCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFtcyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCBpc192YXJpYWRp YyAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX29ial8weGJiZTljMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX2NvbnN0X3N0cnVjdF9yYXZpX1RWYWx1ZV9fXzB4YmIyZWIw LCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIm9iaiIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF9wYXJhbSAqcGFyYW1fcF8weGJiZWE3MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X2xvbmdfbG9uZ19fXzB4YmIxNzUwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInAiKTsgLyogY29u c3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtc19mb3Jf ZnVuY19sdWFWX3RvaW50ZWdlcl9fMHhiYmViMjBbMl0gPSB7CiAgICBwYXJh bV9vYmpfMHhiYmU5YzAsCiAgICBwYXJhbV9wXzB4YmJlYTcwLAogIH07CiAg Z2NjX2ppdF9mdW5jdGlvbiAqZnVuY19sdWFWX3RvaW50ZWdlcl9fMHhiYmVi MjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19mdW5jdGlvbiAoY3R4dF8w eGJiMGYzMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEdDQ19KSVRfRlVOQ1RJT05fSU1QT1JURUQsIC8qIGVudW0gZ2NjX2pp dF9mdW5jdGlvbl9raW5kIGtpbmQgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5 cGUgKnJldHVybl90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAibHVhVl90b2ludGVnZXJfIiwgLyogY29uc3QgY2hhciAqbmFt ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMiwgLyog aW50IG51bV9wYXJhbXMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHBhcmFtc19mb3JfZnVuY19sdWFWX3RvaW50ZWdlcl9fMHhiYmVi MjAsIC8qIGdjY19qaXRfcGFyYW0gKipwYXJhbXMgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDApOyAvKiBpbnQgaXNfdmFyaWFkaWMg Ki8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9MXzB4YmJlYzIwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0YXRlX19fMHhiYjFjOTAsIC8qZ2Nj X2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAiTCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9w YXJhbSAqcGFyYW1fcmFfMHhiYmVjZDAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3Rf cmF2aV9UVmFsdWVfX18weGJiMmUzMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyYSIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fcmJf MHhiYmVkODAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9jb25zdF9zdHJ1Y3RfcmF2aV9UVmFs dWVfX18weGJiMmViMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJyYiIpOyAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1zX2Zvcl9mdW5jX2x1 YVZfb2JqbGVuXzB4YmJlZTMwWzNdID0gewogICAgcGFyYW1fTF8weGJiZWMy MCwKICAgIHBhcmFtX3JhXzB4YmJlY2QwLAogICAgcGFyYW1fcmJfMHhiYmVk ODAsCiAgfTsKICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jX2x1YVZfb2JqbGVu XzB4YmJlZTMwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZnVuY3Rpb24g KGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2Nj X2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBHQ0NfSklUX0ZVTkNUSU9OX0lNUE9SVEVELCAvKiBlbnVt IGdjY19qaXRfZnVuY3Rpb25fa2luZCBraW5kICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX3ZvaWRfMHhiYjE4OTAsIC8qIGdj Y19qaXRfdHlwZSAqcmV0dXJuX3R5cGUgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJsdWFWX29iamxlbiIsIC8qIGNvbnN0IGNoYXIg Km5hbWUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDMs IC8qIGludCBudW1fcGFyYW1zICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBwYXJhbXNfZm9yX2Z1bmNfbHVhVl9vYmpsZW5fMHhiYmVl MzAsIC8qIGdjY19qaXRfcGFyYW0gKipwYXJhbXMgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIDApOyAvKiBpbnQgaXNfdmFyaWFkaWMg Ki8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9MXzB4YmJlZjMwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0YXRlX19fMHhiYjFjOTAsIC8qZ2Nj X2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAiTCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9w YXJhbSAqcGFyYW1fdF8weGJiZWZlMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2NvbnN0X3N0 cnVjdF9yYXZpX1RWYWx1ZV9fXzB4YmIyZWIwLCAvKmdjY19qaXRfdHlwZSAq dHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInQiKTsg LyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFt X2tleV8weGJiZjA5MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFt IChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX1RWYWx1 ZV9fXzB4YmIyZTMwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgImtleSIpOyAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fdmFsXzB4YmJmMTQw ID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBm MzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVFZhbHVlX19fMHhiYjJlMzAs IC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAidmFsIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBn Y2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNfbHVhVl9nZXR0YWJsZV8w eGJiZjFmMFs0XSA9IHsKICAgIHBhcmFtX0xfMHhiYmVmMzAsCiAgICBwYXJh bV90XzB4YmJlZmUwLAogICAgcGFyYW1fa2V5XzB4YmJmMDkwLAogICAgcGFy YW1fdmFsXzB4YmJmMTQwLAogIH07CiAgZ2NjX2ppdF9mdW5jdGlvbiAqZnVu Y19sdWFWX2dldHRhYmxlXzB4YmJmMWYwID0KICAgIGdjY19qaXRfY29udGV4 dF9uZXdfZnVuY3Rpb24gKGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29u dGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0ZVTkNUSU9OX0lN UE9SVEVELCAvKiBlbnVtIGdjY19qaXRfZnVuY3Rpb25fa2luZCBraW5kICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3ZvaWRf MHhiYjE4OTAsIC8qIGdjY19qaXRfdHlwZSAqcmV0dXJuX3R5cGUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJsdWFWX2dldHRhYmxl IiwgLyogY29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgNCwgLyogaW50IG51bV9wYXJhbXMgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19mb3JfZnVuY19s dWFWX2dldHRhYmxlXzB4YmJmMWYwLCAvKiBnY2Nfaml0X3BhcmFtICoqcGFy YW1zICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsg LyogaW50IGlzX3ZhcmlhZGljICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1f TF8weGJiZjJmMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX2x1YV9TdGF0 ZV9fXzB4YmIxYzkwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIkwiKTsgLyogY29uc3QgY2hhciAq bmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX3RfMHhiYmYzYTAgPQog ICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdHlwZV9jb25zdF9zdHJ1Y3RfcmF2aV9UVmFsdWVfX18weGJiMmVi MCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICJ0Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBn Y2Nfaml0X3BhcmFtICpwYXJhbV9rZXlfMHhiYmY0NTAgPQogICAgZ2NjX2pp dF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9zdHJ1Y3RfcmF2aV9UVmFsdWVfX18weGJiMmUzMCwgLypnY2Nfaml0X3R5 cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJr ZXkiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0g KnBhcmFtX3ZhbF8weGJiZjUwMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZp X1RWYWx1ZV9fXzB4YmIyZTMwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInZhbCIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1zX2Zvcl9m dW5jX2x1YVZfc2V0dGFibGVfMHhiYmY1YjBbNF0gPSB7CiAgICBwYXJhbV9M XzB4YmJmMmYwLAogICAgcGFyYW1fdF8weGJiZjNhMCwKICAgIHBhcmFtX2tl eV8weGJiZjQ1MCwKICAgIHBhcmFtX3ZhbF8weGJiZjUwMCwKICB9OwogIGdj Y19qaXRfZnVuY3Rpb24gKmZ1bmNfbHVhVl9zZXR0YWJsZV8weGJiZjViMCA9 CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChjdHh0XzB4YmIw ZjMwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg R0NDX0pJVF9GVU5DVElPTl9JTVBPUlRFRCwgLyogZW51bSBnY2Nfaml0X2Z1 bmN0aW9uX2tpbmQga2luZCAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHlwZV92b2lkXzB4YmIxODkwLCAvKiBnY2Nfaml0X3R5cGUg KnJldHVybl90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAibHVhVl9zZXR0YWJsZSIsIC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDQsIC8qIGludCBu dW1fcGFyYW1zICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBwYXJhbXNfZm9yX2Z1bmNfbHVhVl9zZXR0YWJsZV8weGJiZjViMCwgLyog Z2NjX2ppdF9wYXJhbSAqKnBhcmFtcyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMCk7IC8qIGludCBpc192YXJpYWRpYyAqLwogIGdj Y19qaXRfcGFyYW0gKnBhcmFtX0xfMHhiYmY2YjAgPQogICAgZ2NjX2ppdF9j b250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9z dHJ1Y3RfcmF2aV9sdWFfU3RhdGVfX18weGJiMWM5MCwgLypnY2Nfaml0X3R5 cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJM Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpw YXJhbV9wMV8weGJiZjc2MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3Bh cmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2NvbnN0X3N0cnVjdF9y YXZpX1RWYWx1ZV9fXzB4YmIyZWIwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInAxIik7IC8qIGNv bnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9wMl8w eGJiZjgxMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX2NvbnN0X3N0cnVjdF9yYXZpX1RWYWx1 ZV9fXzB4YmIyZWIwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgInAyIik7IC8qIGNvbnN0IGNoYXIg Km5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9yZXNfMHhiYmY4YzAg PQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYz MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9UVmFsdWVfX18weGJiMmUzMCwg LypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJyZXMiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdj Y19qaXRfcGFyYW0gKnBhcmFtX2V2ZW50XzB4YmJmOTcwID0KICAgIGdjY19q aXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5 cGVfaW50XzB4YmIxOGUwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgImV2ZW50Iik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1 bmNfbHVhVF90cnliaW5UTV8weGJiZmEyMFs1XSA9IHsKICAgIHBhcmFtX0xf MHhiYmY2YjAsCiAgICBwYXJhbV9wMV8weGJiZjc2MCwKICAgIHBhcmFtX3Ay XzB4YmJmODEwLAogICAgcGFyYW1fcmVzXzB4YmJmOGMwLAogICAgcGFyYW1f ZXZlbnRfMHhiYmY5NzAsCiAgfTsKICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5j X2x1YVRfdHJ5YmluVE1fMHhiYmZhMjAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19mdW5jdGlvbiAoY3R4dF8weGJiMGYzMCwgLyogZ2NjX2ppdF9jb250 ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05fSU1Q T1JURUQsIC8qIGVudW0gZ2NjX2ppdF9mdW5jdGlvbl9raW5kIGtpbmQgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdm9pZF8w eGJiMTg5MCwgLyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImx1YVRfdHJ5YmluVE0i LCAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICA1LCAvKiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX2x1 YVRfdHJ5YmluVE1fMHhiYmZhMjAsIC8qIGdjY19qaXRfcGFyYW0gKipwYXJh bXMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOyAv KiBpbnQgaXNfdmFyaWFkaWMgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9j aV8weGJiZmJiMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChj dHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX0NhbGxJbmZv X19fMHhiYjk3MzAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiY2kiKTsgLyogY29uc3QgY2hhciAq bmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX2FfMHhiYmZjNDAgPQog ICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qZ2NjX2ppdF90eXBlICp0eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYSIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fYl8w eGJiZmNmMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwgLypnY2Nfaml0 X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJiIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFt ICpwYXJhbXNfZm9yX2Z1bmNfcmF2aVZfb3BfbG9hZG5pbF8weGJiZmRhMFsz XSA9IHsKICAgIHBhcmFtX2NpXzB4YmJmYmIwLAogICAgcGFyYW1fYV8weGJi ZmM0MCwKICAgIHBhcmFtX2JfMHhiYmZjZjAsCiAgfTsKICBnY2Nfaml0X2Z1 bmN0aW9uICpmdW5jX3JhdmlWX29wX2xvYWRuaWxfMHhiYmZkYTAgPQogICAg Z2NjX2ppdF9jb250ZXh0X25ld19mdW5jdGlvbiAoY3R4dF8weGJiMGYzMCwg LyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19K SVRfRlVOQ1RJT05fSU1QT1JURUQsIC8qIGVudW0gZ2NjX2ppdF9mdW5jdGlv bl9raW5kIGtpbmQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfdm9pZF8weGJiMTg5MCwgLyogZ2NjX2ppdF90eXBlICpyZXR1 cm5fdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg InJhdmlWX29wX2xvYWRuaWwiLCAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAzLCAvKiBpbnQgbnVt X3BhcmFtcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cGFyYW1zX2Zvcl9mdW5jX3JhdmlWX29wX2xvYWRuaWxfMHhiYmZkYTAsIC8q IGdjY19qaXRfcGFyYW0gKipwYXJhbXMgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDApOyAvKiBpbnQgaXNfdmFyaWFkaWMgKi8KICBn Y2Nfaml0X3BhcmFtICpwYXJhbV9MXzB4YmJmZWEwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVf c3RydWN0X3JhdmlfbHVhX1N0YXRlX19fMHhiYjFjOTAsIC8qZ2NjX2ppdF90 eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAi TCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAq cGFyYW1fY2lfMHhiYmZmNTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19w YXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9D YWxsSW5mb19fXzB4YmI5NzMwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNpIik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9yYV8weGJj MDAwMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4 YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX1RWYWx1ZV9fXzB4YmIy ZTMwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgInJhIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8K ICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNfcmF2aVZfb3BfbmV3 YXJyYXlpbnRfMHhiYzAwYjBbM10gPSB7CiAgICBwYXJhbV9MXzB4YmJmZWEw LAogICAgcGFyYW1fY2lfMHhiYmZmNTAsCiAgICBwYXJhbV9yYV8weGJjMDAw MCwKICB9OwogIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmNfcmF2aVZfb3BfbmV3 YXJyYXlpbnRfMHhiYzAwYjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19m dW5jdGlvbiAoY3R4dF8weGJiMGYzMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpj dHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05fSU1QT1JURUQs IC8qIGVudW0gZ2NjX2ppdF9mdW5jdGlvbl9raW5kIGtpbmQgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdm9pZF8weGJiMTg5 MCwgLyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgInJhdmlWX29wX25ld2FycmF5aW50 IiwgLyogY29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMywgLyogaW50IG51bV9wYXJhbXMgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19mb3JfZnVuY19y YXZpVl9vcF9uZXdhcnJheWludF8weGJjMDBiMCwgLyogZ2NjX2ppdF9wYXJh bSAqKnBhcmFtcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgMCk7IC8qIGludCBpc192YXJpYWRpYyAqLwogIGdjY19qaXRfcGFyYW0g KnBhcmFtX0xfMHhiYzAxYjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19w YXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9s dWFfU3RhdGVfX18weGJiMWM5MCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJMIik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9jaV8weGJj MDI2MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4 YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX0NhbGxJbmZvX19fMHhi Yjk3MzAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiY2kiKTsgLyogY29uc3QgY2hhciAqbmFtZSAq LwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX3JhXzB4YmMwMzEwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHR5cGVfc3RydWN0X3JhdmlfVFZhbHVlX19fMHhiYjJlMzAsIC8qZ2NjX2pp dF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAicmEiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFy YW0gKnBhcmFtc19mb3JfZnVuY19yYXZpVl9vcF9uZXdhcnJheWZsb2F0XzB4 YmMwM2MwWzNdID0gewogICAgcGFyYW1fTF8weGJjMDFiMCwKICAgIHBhcmFt X2NpXzB4YmMwMjYwLAogICAgcGFyYW1fcmFfMHhiYzAzMTAsCiAgfTsKICBn Y2Nfaml0X2Z1bmN0aW9uICpmdW5jX3JhdmlWX29wX25ld2FycmF5ZmxvYXRf MHhiYzAzYzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19mdW5jdGlvbiAo Y3R4dF8weGJiMGYzMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05fSU1QT1JURUQsIC8qIGVudW0g Z2NjX2ppdF9mdW5jdGlvbl9raW5kIGtpbmQgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHR5cGVfdm9pZF8weGJiMTg5MCwgLyogZ2Nj X2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgInJhdmlWX29wX25ld2FycmF5ZmxvYXQiLCAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAzLCAvKiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX3JhdmlWX29w X25ld2FycmF5ZmxvYXRfMHhiYzAzYzAsIC8qIGdjY19qaXRfcGFyYW0gKipw YXJhbXMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDAp OyAvKiBpbnQgaXNfdmFyaWFkaWMgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJh bV9MXzB4YmJiMDUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0g KGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0 YXRlX19fMHhiYjFjOTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAiTCIpOyAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fY2lfMHhiYmIxMDAg PQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYz MCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9DYWxsSW5mb19fXzB4YmI5NzMw LCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgImNpIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBn Y2Nfaml0X3BhcmFtICpwYXJhbV9yYV8weGJiYjFiMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3N0cnVjdF9yYXZpX1RWYWx1ZV9fXzB4YmIyZTMwLCAvKmdjY19qaXRfdHlw ZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJh Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpw YXJhbV9iXzB4YmJiMjYwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFy YW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAv KmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgImIiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfcGFyYW0gKnBhcmFtX2NfMHhiYmIzMTAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRf MHhiYjE4ZTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiYyIpOyAvKiBjb25zdCBjaGFyICpuYW1l ICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1zX2Zvcl9mdW5jX3JhdmlWX29w X25ld3RhYmxlXzB4YmJiM2MwWzVdID0gewogICAgcGFyYW1fTF8weGJiYjA1 MCwKICAgIHBhcmFtX2NpXzB4YmJiMTAwLAogICAgcGFyYW1fcmFfMHhiYmIx YjAsCiAgICBwYXJhbV9iXzB4YmJiMjYwLAogICAgcGFyYW1fY18weGJiYjMx MCwKICB9OwogIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmNfcmF2aVZfb3BfbmV3 dGFibGVfMHhiYmIzYzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19mdW5j dGlvbiAoY3R4dF8weGJiMGYzMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0 ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05fSU1QT1JURUQsIC8q IGVudW0gZ2NjX2ppdF9mdW5jdGlvbl9raW5kIGtpbmQgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdm9pZF8weGJiMTg5MCwg LyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgInJhdmlWX29wX25ld3RhYmxlIiwgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgNSwgLyogaW50IG51bV9wYXJhbXMgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19mb3JfZnVuY19yYXZpVl9v cF9uZXd0YWJsZV8weGJiYjNjMCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFt cyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8q IGludCBpc192YXJpYWRpYyAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX0xf MHhiYmI0ZTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVf X18weGJiMWM5MCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJMIik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9jaV8weGJiYjU5MCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX3N0cnVjdF9yYXZpX0NhbGxJbmZvX19fMHhiYjk3MzAsIC8q Z2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAiY2kiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfcGFyYW0gKnBhcmFtX3JhXzB4YmJiNjQwID0KICAgIGdjY19qaXRfY29u dGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3Ry dWN0X3JhdmlfVFZhbHVlX19fMHhiYjJlMzAsIC8qZ2NjX2ppdF90eXBlICp0 eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmEiKTsg LyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFt X2JfMHhiYmI2ZjAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAo Y3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qZ2Nj X2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAiYiIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9w YXJhbSAqcGFyYW1fY18weGJiYjdhMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJi MThlMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICJjIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8K ICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNfcmF2aVZfb3Bfc2V0 bGlzdF8weGJiYjg1MFs1XSA9IHsKICAgIHBhcmFtX0xfMHhiYmI0ZTAsCiAg ICBwYXJhbV9jaV8weGJiYjU5MCwKICAgIHBhcmFtX3JhXzB4YmJiNjQwLAog ICAgcGFyYW1fYl8weGJiYjZmMCwKICAgIHBhcmFtX2NfMHhiYmI3YTAsCiAg fTsKICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jX3JhdmlWX29wX3NldGxpc3Rf MHhiYmI4NTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19mdW5jdGlvbiAo Y3R4dF8weGJiMGYzMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05fSU1QT1JURUQsIC8qIGVudW0g Z2NjX2ppdF9mdW5jdGlvbl9raW5kIGtpbmQgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHR5cGVfdm9pZF8weGJiMTg5MCwgLyogZ2Nj X2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgInJhdmlWX29wX3NldGxpc3QiLCAvKiBjb25zdCBj aGFyICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICA1LCAvKiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX3JhdmlWX29wX3NldGxp c3RfMHhiYmI4NTAsIC8qIGdjY19qaXRfcGFyYW0gKipwYXJhbXMgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOyAvKiBpbnQgaXNf dmFyaWFkaWMgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9MXzB4YmJiOTcw ID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBm MzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0YXRlX19fMHhiYjFj OTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiTCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAg Z2NjX2ppdF9wYXJhbSAqcGFyYW1fbV8weGJiYmEyMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X2xvbmdfbG9uZ18weGJiMTZjMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJtIik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9uXzB4YmJi YWQwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfbG9uZ19sb25nXzB4YmIxNmMwLCAvKmdjY19q aXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIm4iKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFy YW0gKnBhcmFtc19mb3JfZnVuY19sdWFWX2Rpdl8weGJiYmI4MFszXSA9IHsK ICAgIHBhcmFtX0xfMHhiYmI5NzAsCiAgICBwYXJhbV9tXzB4YmJiYTIwLAog ICAgcGFyYW1fbl8weGJiYmFkMCwKICB9OwogIGdjY19qaXRfZnVuY3Rpb24g KmZ1bmNfbHVhVl9kaXZfMHhiYmJiODAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19mdW5jdGlvbiAoY3R4dF8weGJiMGYzMCwgLyogZ2NjX2ppdF9jb250 ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05fSU1Q T1JURUQsIC8qIGVudW0gZ2NjX2ppdF9mdW5jdGlvbl9raW5kIGtpbmQgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfbG9uZ19s b25nXzB4YmIxNmMwLCAvKiBnY2Nfaml0X3R5cGUgKnJldHVybl90eXBlICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibHVhVl9kaXYi LCAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAzLCAvKiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX2x1 YVZfZGl2XzB4YmJiYjgwLCAvKiBnY2Nfaml0X3BhcmFtICoqcGFyYW1zICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsgLyogaW50 IGlzX3ZhcmlhZGljICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fTF8weGJi YmM4MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4 YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX2x1YV9TdGF0ZV9fXzB4 YmIxYzkwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIkwiKTsgLyogY29uc3QgY2hhciAqbmFtZSAq LwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX21fMHhiYmJkMzAgPQogICAgZ2Nj X2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dHlwZV9sb25nX2xvbmdfMHhiYjE2YzAsIC8qZ2NjX2ppdF90eXBlICp0eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAibSIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fbl8w eGJiYmRlMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0 XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX2xvbmdfbG9uZ18weGJiMTZjMCwgLypn Y2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJuIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0 X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNfbHVhVl9tb2RfMHhiYmJlOTBbM10g PSB7CiAgICBwYXJhbV9MXzB4YmJiYzgwLAogICAgcGFyYW1fbV8weGJiYmQz MCwKICAgIHBhcmFtX25fMHhiYmJkZTAsCiAgfTsKICBnY2Nfaml0X2Z1bmN0 aW9uICpmdW5jX2x1YVZfbW9kXzB4YmJiZTkwID0KICAgIGdjY19qaXRfY29u dGV4dF9uZXdfZnVuY3Rpb24gKGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRf Y29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0ZVTkNUSU9O X0lNUE9SVEVELCAvKiBlbnVtIGdjY19qaXRfZnVuY3Rpb25fa2luZCBraW5k ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2xv bmdfbG9uZ18weGJiMTZjMCwgLyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlw ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImx1YVZf bW9kIiwgLyogY29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgMywgLyogaW50IG51bV9wYXJhbXMgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19mb3JfZnVu Y19sdWFWX21vZF8weGJiYmU5MCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFt cyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8q IGludCBpc192YXJpYWRpYyAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX0xf MHhiYmJmOTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVf X18weGJiMWM5MCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJMIik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9jaV8weGJiYzA0MCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX3N0cnVjdF9yYXZpX0NhbGxJbmZvX19fMHhiYjk3MzAsIC8q Z2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAiY2kiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfcGFyYW0gKnBhcmFtX2FfMHhiYmMwZjAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRf MHhiYjE4ZTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiYSIpOyAvKiBjb25zdCBjaGFyICpuYW1l ICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fYl8weGJiYzFhMCA9CiAgICBn Y2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eXBlX2ludF8weGJiMThlMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJiIik7IC8qIGNvbnN0 IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9jXzB4YmJj MjUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKmdjY19qaXRfdHlw ZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImMi KTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBh cmFtc19mb3JfZnVuY19yYXZpVl9vcF9jb25jYXRfMHhiYzIxMDBbNV0gPSB7 CiAgICBwYXJhbV9MXzB4YmJiZjkwLAogICAgcGFyYW1fY2lfMHhiYmMwNDAs CiAgICBwYXJhbV9hXzB4YmJjMGYwLAogICAgcGFyYW1fYl8weGJiYzFhMCwK ICAgIHBhcmFtX2NfMHhiYmMyNTAsCiAgfTsKICBnY2Nfaml0X2Z1bmN0aW9u ICpmdW5jX3JhdmlWX29wX2NvbmNhdF8weGJjMjEwMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChjdHh0XzB4YmIwZjMwLCAvKiBnY2Nf aml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJVF9GVU5D VElPTl9JTVBPUlRFRCwgLyogZW51bSBnY2Nfaml0X2Z1bmN0aW9uX2tpbmQg a2luZCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV92b2lkXzB4YmIxODkwLCAvKiBnY2Nfaml0X3R5cGUgKnJldHVybl90eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAicmF2aVZf b3BfY29uY2F0IiwgLyogY29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgNSwgLyogaW50IG51bV9wYXJhbXMg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19m b3JfZnVuY19yYXZpVl9vcF9jb25jYXRfMHhiYzIxMDAsIC8qIGdjY19qaXRf cGFyYW0gKipwYXJhbXMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDApOyAvKiBpbnQgaXNfdmFyaWFkaWMgKi8KICBnY2Nfaml0X3Bh cmFtICpwYXJhbV9MXzB4YmJmYjQwID0KICAgIGdjY19qaXRfY29udGV4dF9u ZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3Jh dmlfbHVhX1N0YXRlX19fMHhiYjFjOTAsIC8qZ2NjX2ppdF90eXBlICp0eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTCIpOyAvKiBj b25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fY2lf MHhiYzIzMzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9DYWxsSW5mb19f XzB4YmI5NzMwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgImNpIik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9jbF8weGJjMjNlMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB0eXBlX3N0cnVjdF9yYXZpX0xDbG9zdXJlX19fMHhiYjQ5MjAsIC8q Z2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAiY2wiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19q aXRfcGFyYW0gKnBhcmFtX2FfMHhiYzI0OTAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRf MHhiYjE4ZTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiYSIpOyAvKiBjb25zdCBjaGFyICpuYW1l ICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fQnhfMHhiYzI1NDAgPQogICAg Z2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiQngiKTsgLyogY29u c3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtc19mb3Jf ZnVuY19yYXZpVl9vcF9jbG9zdXJlXzB4YmMyNWYwWzVdID0gewogICAgcGFy YW1fTF8weGJiZmI0MCwKICAgIHBhcmFtX2NpXzB4YmMyMzMwLAogICAgcGFy YW1fY2xfMHhiYzIzZTAsCiAgICBwYXJhbV9hXzB4YmMyNDkwLAogICAgcGFy YW1fQnhfMHhiYzI1NDAsCiAgfTsKICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5j X3JhdmlWX29wX2Nsb3N1cmVfMHhiYzI1ZjAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19mdW5jdGlvbiAoY3R4dF8weGJiMGYzMCwgLyogZ2NjX2ppdF9j b250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfRlVOQ1RJT05f SU1QT1JURUQsIC8qIGVudW0gZ2NjX2ppdF9mdW5jdGlvbl9raW5kIGtpbmQg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfdm9p ZF8weGJiMTg5MCwgLyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlwZSAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInJhdmlWX29wX2Ns b3N1cmUiLCAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICA1LCAvKiBpbnQgbnVtX3BhcmFtcyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zX2Zvcl9m dW5jX3JhdmlWX29wX2Nsb3N1cmVfMHhiYzI1ZjAsIC8qIGdjY19qaXRfcGFy YW0gKipwYXJhbXMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDApOyAvKiBpbnQgaXNfdmFyaWFkaWMgKi8KICBnY2Nfaml0X3BhcmFt ICpwYXJhbV9MXzB4YmMyNzEwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf cGFyYW0gKGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3Jhdmlf bHVhX1N0YXRlX19fMHhiYjFjOTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiTCIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fY2lfMHhi YzI3YzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8w eGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws IC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9DYWxsSW5mb19fXzB4 YmI5NzMwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgImNpIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUg Ki8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9jbF8weGJjMjg3MCA9CiAgICBn Y2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eXBlX3N0cnVjdF9yYXZpX0xDbG9zdXJlX19fMHhiYjQ5MjAsIC8qZ2Nj X2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAiY2wiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRf cGFyYW0gKnBhcmFtX2FfMHhiYzI5MjAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhi YjE4ZTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAiYSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICov CiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fYl8weGJjMjlkMCA9CiAgICBnY2Nf aml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 eXBlX2ludF8weGJiMThlMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJiIik7IC8qIGNvbnN0IGNo YXIgKm5hbWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNf cmF2aVZfb3BfdmFyYXJnXzB4YmMyYTgwWzVdID0gewogICAgcGFyYW1fTF8w eGJjMjcxMCwKICAgIHBhcmFtX2NpXzB4YmMyN2MwLAogICAgcGFyYW1fY2xf MHhiYzI4NzAsCiAgICBwYXJhbV9hXzB4YmMyOTIwLAogICAgcGFyYW1fYl8w eGJjMjlkMCwKICB9OwogIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmNfcmF2aVZf b3BfdmFyYXJnXzB4YmMyYTgwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf ZnVuY3Rpb24gKGN0eHRfMHhiYjBmMzAsIC8qIGdjY19qaXRfY29udGV4dCAq Y3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0ZVTkNUSU9OX0lNUE9SVEVE LCAvKiBlbnVtIGdjY19qaXRfZnVuY3Rpb25fa2luZCBraW5kICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3ZvaWRfMHhiYjE4 OTAsIC8qIGdjY19qaXRfdHlwZSAqcmV0dXJuX3R5cGUgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJyYXZpVl9vcF92YXJhcmciLCAv KiBjb25zdCBjaGFyICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICA1LCAvKiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX3JhdmlW X29wX3ZhcmFyZ18weGJjMmE4MCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFt cyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8q IGludCBpc192YXJpYWRpYyAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX0xf MHhiYzJiYTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4 dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVf X18weGJiMWM5MCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICJMIik7IC8qIGNvbnN0IGNoYXIgKm5h bWUgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV90YWJsZV8weGJjMmM1MCA9 CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMw LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2Nj X2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX1RhYmxlX19fMHhiYjM3NzAsIC8q Z2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAidGFibGUiKTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdj Y19qaXRfcGFyYW0gKnBhcmFtX2tleV8weGJjMmQwMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X3Vuc2lnbmVkX2ludF8weGJiMTllMCwgLypnY2Nfaml0X3R5cGUgKnR5cGUg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJrZXkiKTsgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX3Zh bHVlXzB4YmMyZGIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0g KGN0eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR5cGVfbG9uZ19sb25nXzB4YmIxNmMw LCAvKmdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgInZhbHVlIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8K ICBnY2Nfaml0X3BhcmFtICpwYXJhbXNfZm9yX2Z1bmNfcmF2aUhfc2V0X2lu dF8weGJjMmU2MFs0XSA9IHsKICAgIHBhcmFtX0xfMHhiYzJiYTAsCiAgICBw YXJhbV90YWJsZV8weGJjMmM1MCwKICAgIHBhcmFtX2tleV8weGJjMmQwMCwK ICAgIHBhcmFtX3ZhbHVlXzB4YmMyZGIwLAogIH07CiAgZ2NjX2ppdF9mdW5j dGlvbiAqZnVuY19yYXZpSF9zZXRfaW50XzB4YmMyZTYwID0KICAgIGdjY19q aXRfY29udGV4dF9uZXdfZnVuY3Rpb24gKGN0eHRfMHhiYjBmMzAsIC8qIGdj Y19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0ZV TkNUSU9OX0lNUE9SVEVELCAvKiBlbnVtIGdjY19qaXRfZnVuY3Rpb25fa2lu ZCBraW5kICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 eXBlX3ZvaWRfMHhiYjE4OTAsIC8qIGdjY19qaXRfdHlwZSAqcmV0dXJuX3R5 cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJyYXZp SF9zZXRfaW50IiwgLyogY29uc3QgY2hhciAqbmFtZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgNCwgLyogaW50IG51bV9wYXJhbXMg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBhcmFtc19m b3JfZnVuY19yYXZpSF9zZXRfaW50XzB4YmMyZTYwLCAvKiBnY2Nfaml0X3Bh cmFtICoqcGFyYW1zICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAwKTsgLyogaW50IGlzX3ZhcmlhZGljICovCiAgZ2NjX2ppdF9wYXJh bSAqcGFyYW1fTF8weGJjMmY2MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9yYXZp X2x1YV9TdGF0ZV9fXzB4YmIxYzkwLCAvKmdjY19qaXRfdHlwZSAqdHlwZSAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIkwiKTsgLyogY29u c3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX3RhYmxl XzB4YmMzMDEwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0 eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVGFibGVfX18w eGJiMzc3MCwgLypnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICJ0YWJsZSIpOyAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fa2V5XzB4YmMzMGMwID0K ICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhiYjBmMzAs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHR5cGVfdW5zaWduZWRfaW50XzB4YmIxOWUwLCAvKmdjY19qaXRf dHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ImtleSIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJh bSAqcGFyYW1fdmFsdWVfMHhiYzMxNzAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9kb3VibGVf MHhiYjE2MDAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAidmFsdWUiKTsgLyogY29uc3QgY2hhciAq bmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtc19mb3JfZnVuY19yYXZp SF9zZXRfZmxvYXRfMHhiYzMyMjBbNF0gPSB7CiAgICBwYXJhbV9MXzB4YmMy ZjYwLAogICAgcGFyYW1fdGFibGVfMHhiYzMwMTAsCiAgICBwYXJhbV9rZXlf MHhiYzMwYzAsCiAgICBwYXJhbV92YWx1ZV8weGJjMzE3MCwKICB9OwogIGdj Y19qaXRfZnVuY3Rpb24gKmZ1bmNfcmF2aUhfc2V0X2Zsb2F0XzB4YmMzMjIw ID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfZnVuY3Rpb24gKGN0eHRfMHhi YjBmMzAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBHQ0NfSklUX0ZVTkNUSU9OX0lNUE9SVEVELCAvKiBlbnVtIGdjY19qaXRf ZnVuY3Rpb25fa2luZCBraW5kICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB0eXBlX3ZvaWRfMHhiYjE4OTAsIC8qIGdjY19qaXRfdHlw ZSAqcmV0dXJuX3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJyYXZpSF9zZXRfZmxvYXQiLCAvKiBjb25zdCBjaGFyICpuYW1l ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0LCAvKiBp bnQgbnVtX3BhcmFtcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcGFyYW1zX2Zvcl9mdW5jX3JhdmlIX3NldF9mbG9hdF8weGJjMzIy MCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBhcmFtcyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCBpc192YXJpYWRpYyAq LwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX0xfMHhiYzMzMjAgPQogICAgZ2Nj X2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dHlwZV9zdHJ1Y3RfcmF2aV9sdWFfU3RhdGVfX18weGJiMWM5MCwgLypnY2Nf aml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJMIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3Bh cmFtICpwYXJhbV9jbF8weGJjMzNkMCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X3BhcmFtIChjdHh0XzB4YmIwZjMwLAogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX3N0cnVjdF9y YXZpX0xDbG9zdXJlX19fMHhiYjQ5MjAsIC8qZ2NjX2ppdF90eXBlICp0eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY2wiKTsgLyog Y29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX3Jh XzB4YmMzNDgwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0 eHRfMHhiYjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfVFZhbHVlX19f MHhiYjJlMzAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAicmEiKTsgLyogY29uc3QgY2hhciAqbmFt ZSAqLwogIGdjY19qaXRfcGFyYW0gKnBhcmFtX2JfMHhiYzM1MzAgPQogICAg Z2NjX2ppdF9jb250ZXh0X25ld19wYXJhbSAoY3R4dF8weGJiMGYzMCwKICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiYiIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1zX2Zvcl9m dW5jX3JhdmlWX29wX3NldHVwdmFsXzB4YmMzNWUwWzRdID0gewogICAgcGFy YW1fTF8weGJjMzMyMCwKICAgIHBhcmFtX2NsXzB4YmMzM2QwLAogICAgcGFy YW1fcmFfMHhiYzM0ODAsCiAgICBwYXJhbV9iXzB4YmMzNTMwLAogIH07CiAg Z2NjX2ppdF9mdW5jdGlvbiAqZnVuY19yYXZpVl9vcF9zZXR1cHZhbF8weGJj MzVlMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChjdHh0 XzB4YmIwZjMwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgR0NDX0pJVF9GVU5DVElPTl9JTVBPUlRFRCwgLyogZW51bSBnY2Nf aml0X2Z1bmN0aW9uX2tpbmQga2luZCAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdHlwZV92b2lkXzB4YmIxODkwLCAvKiBnY2Nfaml0 X3R5cGUgKnJldHVybl90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAicmF2aVZfb3Bfc2V0dXB2YWwiLCAvKiBjb25zdCBjaGFy ICpuYW1lICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA0 LCAvKiBpbnQgbnVtX3BhcmFtcyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgcGFyYW1zX2Zvcl9mdW5jX3JhdmlWX29wX3NldHVwdmFs XzB4YmMzNWUwLCAvKiBnY2Nfaml0X3BhcmFtICoqcGFyYW1zICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsgLyogaW50IGlzX3Zh cmlhZGljICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1fZm9ybWF0XzB4YmMz NmUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0eHRfMHhi YjBmMzAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHR5cGVfY29uc3RfY2hhcl9fXzB4YmIxODUwLCAvKmdj Y19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgImZvcm1hdCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2Nj X2ppdF9wYXJhbSAqcGFyYW1zX2Zvcl9mdW5jX3ByaW50Zl8weGJjMzc5MFsx XSA9IHsKICAgIHBhcmFtX2Zvcm1hdF8weGJjMzZlMCwKICB9OwogIGdjY19q aXRfZnVuY3Rpb24gKmZ1bmNfcHJpbnRmXzB4YmMzNzkwID0KICAgIGdjY19q aXRfY29udGV4dF9uZXdfZnVuY3Rpb24gKGN0eHRfMHhiYjBmMzAsIC8qIGdj Y19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0ZV TkNUSU9OX0lNUE9SVEVELCAvKiBlbnVtIGdjY19qaXRfZnVuY3Rpb25fa2lu ZCBraW5kICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2ppdF90eXBlICpyZXR1cm5fdHlw ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgInByaW50 ZiIsIC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDEsIC8qIGludCBudW1fcGFyYW1zICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwYXJhbXNfZm9yX2Z1bmNf cHJpbnRmXzB4YmMzNzkwLCAvKiBnY2Nfaml0X3BhcmFtICoqcGFyYW1zICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxKTsgLyogaW50 IGlzX3ZhcmlhZGljICovCgoKICAvKiBSZXBsYXkgb2YgQVBJIGNhbGxzIGZv ciBjdHh0XzB4YmZkODIwLiAgKi8KICBnY2Nfaml0X3BhcmFtICpwYXJhbV9M XzB4YmM4MGUwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcGFyYW0gKGN0 eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3JhdmlfbHVhX1N0YXRl X19fMHhiYjFjOTAsIC8qZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAiTCIpOyAvKiBjb25zdCBjaGFyICpu YW1lICovCiAgZ2NjX2ppdF9wYXJhbSAqcGFyYW1zX2Zvcl9mdW5jX3Jhdmlm MV8weGJmNTJjMFsxXSA9IHsKICAgIHBhcmFtX0xfMHhiYzgwZTAsCiAgfTsK ICBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jX3JhdmlmMV8weGJmNTJjMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X2Z1bmN0aW9uIChjdHh0XzB4YmZkODIw LCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0ND X0pJVF9GVU5DVElPTl9FWFBPUlRFRCwgLyogZW51bSBnY2Nfaml0X2Z1bmN0 aW9uX2tpbmQga2luZCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqcmV0 dXJuX3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICJyYXZpZjEiLCAvKiBjb25zdCBjaGFyICpuYW1lICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAxLCAvKiBpbnQgbnVtX3BhcmFtcyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1zX2Zv cl9mdW5jX3JhdmlmMV8weGJmNTJjMCwgLyogZ2NjX2ppdF9wYXJhbSAqKnBh cmFtcyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7 IC8qIGludCBpc192YXJpYWRpYyAqLwogIGdjY19qaXRfYmxvY2sgKmJsb2Nr X2VudHJ5XzB4YmYzYTUwID0KICAgIGdjY19qaXRfZnVuY3Rpb25fbmV3X2Js b2NrIChmdW5jX3JhdmlmMV8weGJmNTJjMCwgImVudHJ5Iik7CiAgZ2NjX2pp dF9sdmFsdWUgKmxvY2FsX2NsXzB4YmYzY2QwID0KICAgIGdjY19qaXRfZnVu Y3Rpb25fbmV3X2xvY2FsIChmdW5jX3JhdmlmMV8weGJmNTJjMCwgLyogZ2Nj X2ppdF9mdW5jdGlvbiAqZnVuYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfc3RydWN0X3Jh dmlfTENsb3N1cmVfX18weGJiNDkyMCwgLyogZ2NjX2ppdF90eXBlICp0eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNsIik7IC8q IGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2Jsb2NrICpibG9ja19q bXBfNV8xXzB4YmYzZDUwID0KICAgIGdjY19qaXRfZnVuY3Rpb25fbmV3X2Js b2NrIChmdW5jX3JhdmlmMV8weGJmNTJjMCwgImptcF81XzEiKTsKICBnY2Nf aml0X2Jsb2NrICpibG9ja19qbXBfOV8yXzB4YmYzN2QwID0KICAgIGdjY19q aXRfZnVuY3Rpb25fbmV3X2Jsb2NrIChmdW5jX3JhdmlmMV8weGJmNTJjMCwg ImptcF85XzIiKTsKICBnY2Nfaml0X2Jsb2NrICpibG9ja19qbXBfMTJfM18w eGJmMzVhMCA9CiAgICBnY2Nfaml0X2Z1bmN0aW9uX25ld19ibG9jayAoZnVu Y19yYXZpZjFfMHhiZjUyYzAsICJqbXBfMTJfMyIpOwogIGdjY19qaXRfbHZh bHVlICpsdmFsdWVfTF9fY2lfMHhiZjNhZDA9CiAgICBnY2Nfaml0X3J2YWx1 ZV9kZXJlZmVyZW5jZV9maWVsZCAoZ2NjX2ppdF9wYXJhbV9hc19ydmFsdWUg KHBhcmFtX0xfMHhiYzgwZTApLCAvKiBnY2Nfaml0X3J2YWx1ZSAqcHRyICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZmllbGRfY2lfMHhiYmFjODApOyAvKiBn Y2Nfaml0X2ZpZWxkICpmaWVsZCAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFs dWVfTF9fY2lfX2Z1bmNfMHhiZjM1MjA9CiAgICBnY2Nfaml0X3J2YWx1ZV9k ZXJlZmVyZW5jZV9maWVsZCAoZ2NjX2ppdF9sdmFsdWVfYXNfcnZhbHVlIChs dmFsdWVfTF9fY2lfMHhiZjNhZDApLCAvKiBnY2Nfaml0X3J2YWx1ZSAqcHRy ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfZnVuY18weGJiYTA3MCk7 IC8qIGdjY19qaXRfZmllbGQgKmZpZWxkICovCiAgZ2NjX2ppdF9sdmFsdWUg Kmx2YWx1ZV9MX19jaV9fZnVuY19fdmFsdWVfXzB4YmYzNGEwPQogICAgZ2Nj X2ppdF9ydmFsdWVfZGVyZWZlcmVuY2VfZmllbGQgKGdjY19qaXRfbHZhbHVl X2FzX3J2YWx1ZSAobHZhbHVlX0xfX2NpX19mdW5jXzB4YmYzNTIwKSwgLyog Z2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZp ZWxkX3ZhbHVlX18weGJiMmJmMCk7IC8qIGdjY19qaXRfZmllbGQgKmZpZWxk ICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9MX19jaV9fZnVuY19fdmFs dWVfX2djXzB4YmYzNDIwID0gCiAgICBnY2Nfaml0X2x2YWx1ZV9hY2Nlc3Nf ZmllbGQgKGx2YWx1ZV9MX19jaV9fZnVuY19fdmFsdWVfXzB4YmYzNGEwLCAv KmdjY19qaXRfbHZhbHVlICpzdHJ1Y3Rfb3JfdW5pb24gKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ZmllbGRfZ2NfMHhiYjI1OTApOwogIGdjY19qaXRfcnZhbHVlICpydmFsdWVf X3N0cnVjdF9yYXZpX0xDbG9zdXJlX19fTF9fY2lfX2Z1bmNfX3ZhbHVlX19n Y18weGJmMzNhMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Nhc3QgKGN0 eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGx2 YWx1ZV9MX19jaV9fZnVuY19fdmFsdWVfX2djXzB4YmYzNDIwKSwgLyogZ2Nj X2ppdF9ydmFsdWUgKnJ2YWx1ZSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB0eXBlX3N0cnVjdF9yYXZpX0xDbG9zdXJlX19fMHhiYjQ5MjAp OyAvKiBnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICBnY2Nfaml0X2Jsb2NrX2Fk ZF9hc3NpZ25tZW50IChibG9ja19lbnRyeV8weGJmM2E1MCwgLypnY2Nfaml0 X2Jsb2NrICpibG9jayAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsX2NsXzB4YmYzY2QwLCAv KiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcnZhbHVlX19zdHJ1Y3RfcmF2aV9MQ2xvc3VyZV9f X0xfX2NpX19mdW5jX192YWx1ZV9fZ2NfMHhiZjMzYTApOyAvKiBnY2Nfaml0 X3J2YWx1ZSAqcnZhbHVlICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9M X19jaV9fdV8weGJmMzE2MD0KICAgIGdjY19qaXRfcnZhbHVlX2RlcmVmZXJl bmNlX2ZpZWxkIChnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGx2YWx1ZV9M X19jaV8weGJmM2FkMCksIC8qIGdjY19qaXRfcnZhbHVlICpwdHIgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBmaWVsZF91XzB4YmJhMzMwKTsgLyogZ2NjX2pp dF9maWVsZCAqZmllbGQgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX0xf X2NpX191X2xfMHhiZjMwZTAgPSAKICAgIGdjY19qaXRfcnZhbHVlX2FjY2Vz c19maWVsZCAoZ2NjX2ppdF9sdmFsdWVfYXNfcnZhbHVlIChsdmFsdWVfTF9f Y2lfX3VfMHhiZjMxNjApLCAvKmdjY19qaXRfcnZhbHVlICpzdHJ1Y3Rfb3Jf dW5pb24gKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLypnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZmllbGRfbF8weGJiOWRlMCk7CiAgZ2NjX2pp dF9ydmFsdWUgKnJ2YWx1ZV9MX19jaV9fdV9sX2Jhc2VfMHhiZjMwNjAgPSAK ICAgIGdjY19qaXRfcnZhbHVlX2FjY2Vzc19maWVsZCAocnZhbHVlX0xfX2Np X191X2xfMHhiZjMwZTAsIC8qZ2NjX2ppdF9ydmFsdWUgKnN0cnVjdF9vcl91 bmlvbiAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKmdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBmaWVsZF9iYXNlXzB4YmI5N2QwKTsKICBnY2Nf aml0X2x2YWx1ZSAqbHZhbHVlX2NsX19wXzB4YmYzMzIwPQogICAgZ2NjX2pp dF9ydmFsdWVfZGVyZWZlcmVuY2VfZmllbGQgKGdjY19qaXRfbHZhbHVlX2Fz X3J2YWx1ZSAobG9jYWxfY2xfMHhiZjNjZDApLCAvKiBnY2Nfaml0X3J2YWx1 ZSAqcHRyICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfcF8weGJiNmY4 MCk7IC8qIGdjY19qaXRfZmllbGQgKmZpZWxkICovCiAgZ2NjX2ppdF9sdmFs dWUgKmx2YWx1ZV9jbF9fcF9fa18weGJmMmVmMD0KICAgIGdjY19qaXRfcnZh bHVlX2RlcmVmZXJlbmNlX2ZpZWxkIChnY2Nfaml0X2x2YWx1ZV9hc19ydmFs dWUgKGx2YWx1ZV9jbF9fcF8weGJmMzMyMCksIC8qIGdjY19qaXRfcnZhbHVl ICpwdHIgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZF9rXzB4YmI0M2Mw KTsgLyogZ2NjX2ppdF9maWVsZCAqZmllbGQgKi8KICBnY2Nfaml0X3J2YWx1 ZSAqcnZhbHVlX19pbnRfMF8weGJmMmU3MCA9CiAgICBnY2Nfaml0X2NvbnRl eHRfbmV3X3J2YWx1ZV9mcm9tX2ludCAoY3R4dF8weGJmZDgyMCwgLyogZ2Nj X2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19q aXRfdHlwZSAqbnVtZXJpY190eXBlICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCB2YWx1ZSAqLwogIGdj Y19qaXRfcnZhbHVlICpydmFsdWVfX2ludF8wXzB4YmYyZGYwID0KICAgIGdj Y19qaXRfY29udGV4dF9uZXdfcnZhbHVlX2Zyb21faW50IChjdHh0XzB4YmZk ODIwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThl MCwgLyogZ2NjX2ppdF90eXBlICpudW1lcmljX3R5cGUgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsgLyogaW50IHZh bHVlICovCiAgZ2NjX2ppdF9ydmFsdWUgKmFyZ3NfZm9yX19jYWxsX3JhdmlW X29wX2xvYWRuaWxfX0xfX2NpX19faW50XzBfX19pbnRfMF9fMHhiZjJkNzBb M10gPSB7CiAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGx2YWx1ZV9M X19jaV8weGJmM2FkMCksCiAgICBydmFsdWVfX2ludF8wXzB4YmYyZGYwLAog ICAgcnZhbHVlX19pbnRfMF8weGJmMmU3MCwKICB9OwogIGdjY19qaXRfcnZh bHVlICpjYWxsX3JhdmlWX29wX2xvYWRuaWxfX0xfX2NpX19faW50XzBfX19p bnRfMF9fMHhiZjJkNzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19jYWxs IChjdHh0XzB4YmZkODIwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGZ1bmNfcmF2aVZfb3BfbG9hZG5pbF8weGJiZmRhMCwgLyogZ2NjX2pp dF9mdW5jdGlvbiAqZnVuYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAzLCAvKiBpbnQgbnVtYXJncyAgKi8gCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGFyZ3NfZm9yX19jYWxsX3JhdmlWX29wX2xvYWRuaWxf X0xfX2NpX19faW50XzBfX19pbnRfMF9fMHhiZjJkNzApOyAvKiBnY2Nfaml0 X3J2YWx1ZSAqKmFyZ3MqLwogIGdjY19qaXRfYmxvY2tfYWRkX2V2YWwgKGJs b2NrX2VudHJ5XzB4YmYzYTUwLCAvKmdjY19qaXRfYmxvY2sgKmJsb2NrICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgY2Fs bF9yYXZpVl9vcF9sb2FkbmlsX19MX19jaV9fX2ludF8wX19faW50XzBfXzB4 YmYyZDcwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZSAqLwogIGdjY19q aXRfcnZhbHVlICpydmFsdWVfX2ludF8xXzB4YmY0N2MwID0KICAgIGdjY19q aXRfY29udGV4dF9uZXdfcnZhbHVlX2Zyb21faW50IChjdHh0XzB4YmZkODIw LCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwg LyogZ2NjX2ppdF90eXBlICpudW1lcmljX3R5cGUgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxKTsgLyogaW50IHZhbHVl ICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9MX19jaV9fdV9sX2Jhc2Vf X2ludF8xX18weGJmNDc0MCA9IAogICAgZ2NjX2ppdF9jb250ZXh0X25ld19h cnJheV9hY2Nlc3MgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4 dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIE5VTEwsIC8qZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnZhbHVlX0xfX2NpX191 X2xfYmFzZV8weGJmMzA2MCwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9f aW50XzFfMHhiZjQ3YzApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqaW5kZXggKi8K ICBnY2Nfaml0X3J2YWx1ZSAqYWRkcmVzc19vZl9fTF9fY2lfX3VfbF9iYXNl X19pbnRfMV9fMHhiZjQ2YzAgPQogICAgZ2NjX2ppdF9sdmFsdWVfZ2V0X2Fk ZHJlc3MgKGx2YWx1ZV9MX19jaV9fdV9sX2Jhc2VfX2ludF8xX18weGJmNDc0 MCwgLyogZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZSAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwpOyAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX19pbnRfMF8weGJm NDQ4MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9tX2lu dCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqbnVtZXJpY190eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MCk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVf Y2xfX3BfX2tfX2ludF8wX18weGJmNDQwMCA9IAogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19hcnJheV9hY2Nlc3MgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19q aXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2NjX2pp dF9sdmFsdWVfYXNfcnZhbHVlIChsdmFsdWVfY2xfX3BfX2tfMHhiZjJlZjAp LCAvKiBnY2Nfaml0X3J2YWx1ZSAqcHRyICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcnZhbHVlX19pbnRfMF8weGJmNDQ4MCk7 IC8qIGdjY19qaXRfcnZhbHVlICppbmRleCAqLwogIGdjY19qaXRfcnZhbHVl ICphZGRyZXNzX29mX19jbF9fcF9fa19faW50XzBfXzB4YmY0MzgwID0KICAg IGdjY19qaXRfbHZhbHVlX2dldF9hZGRyZXNzIChsdmFsdWVfY2xfX3BfX2tf X2ludF8wX18weGJmNDQwMCwgLyogZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZSAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOyAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZh bHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX192YWx1ZV9fMHhiZWY4 NzA9CiAgICBnY2Nfaml0X3J2YWx1ZV9kZXJlZmVyZW5jZV9maWVsZCAoYWRk cmVzc19vZl9fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fMHhiZjQ2YzAsIC8q IGdjY19qaXRfcnZhbHVlICpwdHIgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm aWVsZF92YWx1ZV9fMHhiYjJiZjApOyAvKiBnY2Nfaml0X2ZpZWxkICpmaWVs ZCAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVfX19MX19jaV9fdV9sX2Jh c2VfX2ludF8xX19fX3ZhbHVlX19pXzB4YmVmN2YwID0gCiAgICBnY2Nfaml0 X2x2YWx1ZV9hY2Nlc3NfZmllbGQgKGx2YWx1ZV9fX0xfX2NpX191X2xfYmFz ZV9faW50XzFfX19fdmFsdWVfXzB4YmVmODcwLCAvKmdjY19qaXRfbHZhbHVl ICpzdHJ1Y3Rfb3JfdW5pb24gKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfaV8weGJiMjg1 MCk7CiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX2NsX19wX19rX19pbnRf MF9fX192YWx1ZV9fMHhiZWY3NzA9CiAgICBnY2Nfaml0X3J2YWx1ZV9kZXJl ZmVyZW5jZV9maWVsZCAoYWRkcmVzc19vZl9fY2xfX3BfX2tfX2ludF8wX18w eGJmNDM4MCwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZpZWxkX3ZhbHVlX18weGJiMmJmMCk7IC8qIGdjY19qaXRf ZmllbGQgKmZpZWxkICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX2Ns X19wX19rX19pbnRfMF9fX192YWx1ZV9faV8weGJlZjYzMCA9IAogICAgZ2Nj X2ppdF9sdmFsdWVfYWNjZXNzX2ZpZWxkIChsdmFsdWVfX19jbF9fcF9fa19f aW50XzBfX19fdmFsdWVfXzB4YmVmNzcwLCAvKmdjY19qaXRfbHZhbHVlICpz dHJ1Y3Rfb3JfdW5pb24gKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfaV8weGJiMjg1MCk7 CiAgZ2NjX2ppdF9ibG9ja19hZGRfYXNzaWdubWVudCAoYmxvY2tfZW50cnlf MHhiZjNhNTAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBs dmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3ZhbHVlX19pXzB4 YmVmN2YwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgZ2NjX2ppdF9sdmFsdWVfYXNfcnZh bHVlIChsdmFsdWVfX19jbF9fcF9fa19faW50XzBfX19fdmFsdWVfX2lfMHhi ZWY2MzApKTsgLyogZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZSAqLwogIGdjY19q aXRfbHZhbHVlICpsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19f X3R0X18weGJlZjUzMD0KICAgIGdjY19qaXRfcnZhbHVlX2RlcmVmZXJlbmNl X2ZpZWxkIChhZGRyZXNzX29mX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX18w eGJmNDZjMCwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZpZWxkX3R0X18weGJiMmNhMCk7IC8qIGdjY19qaXRfZmll bGQgKmZpZWxkICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX2NsX19w X19rX19pbnRfMF9fX190dF9fMHhiZWY5YzA9CiAgICBnY2Nfaml0X3J2YWx1 ZV9kZXJlZmVyZW5jZV9maWVsZCAoYWRkcmVzc19vZl9fY2xfX3BfX2tfX2lu dF8wX18weGJmNDM4MCwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGZpZWxkX3R0X18weGJiMmNhMCk7IC8qIGdjY19q aXRfZmllbGQgKmZpZWxkICovCiAgZ2NjX2ppdF9ibG9ja19hZGRfYXNzaWdu bWVudCAoYmxvY2tfZW50cnlfMHhiZjNhNTAsIC8qZ2NjX2ppdF9ibG9jayAq YmxvY2sgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2lu dF8xX19fX3R0X18weGJlZjUzMCwgLyogZ2NjX2ppdF9sdmFsdWUgKmx2YWx1 ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdjY19qaXRf bHZhbHVlX2FzX3J2YWx1ZSAobHZhbHVlX19fY2xfX3BfX2tfX2ludF8wX19f X3R0X18weGJlZjljMCkpOyAvKiBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlICov CiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50XzFfMHhiZWY0MTAgPQog ICAgZ2NjX2ppdF9jb250ZXh0X25ld19ydmFsdWVfZnJvbV9pbnQgKGN0eHRf MHhiZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4 YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKm51bWVyaWNfdHlwZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEpOyAvKiBp bnQgdmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlX0xfX2NpX191 X2xfYmFzZV9faW50XzFfXzB4YmVmMzkwID0gCiAgICBnY2Nfaml0X2NvbnRl eHRfbmV3X2FycmF5X2FjY2VzcyAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2pp dF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVf TF9fY2lfX3VfbF9iYXNlXzB4YmYzMDYwLCAvKiBnY2Nfaml0X3J2YWx1ZSAq cHRyICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cnZhbHVlX19pbnRfMV8weGJlZjQxMCk7IC8qIGdjY19qaXRfcnZhbHVlICpp bmRleCAqLwogIGdjY19qaXRfcnZhbHVlICphZGRyZXNzX29mX19MX19jaV9f dV9sX2Jhc2VfX2ludF8xX18weGJlZjMxMCA9CiAgICBnY2Nfaml0X2x2YWx1 ZV9nZXRfYWRkcmVzcyAobHZhbHVlX0xfX2NpX191X2xfYmFzZV9faW50XzFf XzB4YmVmMzkwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7IC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogIGdjY19qaXRfbHZhbHVlICpsb2NhbF9pc2Zh bHNlXzBfNF8weGJlZjE3MCA9CiAgICBnY2Nfaml0X2Z1bmN0aW9uX25ld19s b2NhbCAoZnVuY19yYXZpZjFfMHhiZjUyYzAsIC8qIGdjY19qaXRfZnVuY3Rp b24gKmZ1bmMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB0eXBlX2Jvb2xfMHhiYjE1OTAsIC8qIGdj Y19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICJpc2ZhbHNlXzBfNCIpOyAvKiBjb25zdCBjaGFyICpuYW1lICov CiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX0xfX2NpX191X2xfYmFzZV9f aW50XzFfX19fdHRfXzB4YmVmMGYwPQogICAgZ2NjX2ppdF9ydmFsdWVfZGVy ZWZlcmVuY2VfZmllbGQgKGFkZHJlc3Nfb2ZfX0xfX2NpX191X2xfYmFzZV9f aW50XzFfXzB4YmVmMzEwLCAvKiBnY2Nfaml0X3J2YWx1ZSAqcHRyICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZmllbGRfdHRfXzB4YmIyY2EwKTsgLyogZ2Nj X2ppdF9maWVsZCAqZmllbGQgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVl X19pbnRfMF8weGJlZjI5MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2 YWx1ZV9mcm9tX2ludCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250 ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAq bnVtZXJpY190eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgMCk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19qaXRfbHZh bHVlICpsb2NhbF9jb21wYXJpc29uXzBfNV8weGJlZWY1MCA9CiAgICBnY2Nf aml0X2Z1bmN0aW9uX25ld19sb2NhbCAoZnVuY19yYXZpZjFfMHhiZjUyYzAs IC8qIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmMgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2Jv b2xfMHhiYjE1OTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICJjb21wYXJpc29uXzBfNSIpOyAv KiBjb25zdCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1 ZV9fX0xfX2NpX191X2xfYmFzZV9faW50XzFfX19fdHRfX19fX19pbnRfMF8w eGJmMmJkMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2NvbXBhcmlzb24g KGN0eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0NPTVBB UklTT05fRVEsIC8qIGVudW0gZ2NjX2ppdF9jb21wYXJpc29uIG9wICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdjY19qaXRfbHZh bHVlX2FzX3J2YWx1ZSAobHZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRf MV9fX190dF9fMHhiZWYwZjApLCAvKiBnY2Nfaml0X3J2YWx1ZSAqYSAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfX2lu dF8wXzB4YmVmMjkwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmIgKi8KICBnY2Nf aml0X2Jsb2NrX2FkZF9hc3NpZ25tZW50IChibG9ja19lbnRyeV8weGJmM2E1 MCwgLypnY2Nfaml0X2Jsb2NrICpibG9jayAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvY2FsX2Nv bXBhcmlzb25fMF81XzB4YmVlZjUwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZh bHVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnZhbHVl X19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX190dF9fX19fX2ludF8wXzB4 YmYyYmQwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZSAqLwogIGdjY19q aXRfcnZhbHVlICpydmFsdWVfX2ludF8xXzB4YmYyOWIwID0KICAgIGdjY19q aXRfY29udGV4dF9uZXdfcnZhbHVlX2Zyb21faW50IChjdHh0XzB4YmZkODIw LCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwg LyogZ2NjX2ppdF90eXBlICpudW1lcmljX3R5cGUgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxKTsgLyogaW50IHZhbHVl ICovCiAgZ2NjX2ppdF9sdmFsdWUgKmxvY2FsX2NvbXBhcmlzb25fMF82XzB4 YmYyYWQwID0KICAgIGdjY19qaXRfZnVuY3Rpb25fbmV3X2xvY2FsIChmdW5j X3JhdmlmMV8weGJmNTJjMCwgLyogZ2NjX2ppdF9mdW5jdGlvbiAqZnVuYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHR5cGVfYm9vbF8weGJiMTU5MCwgLyogZ2NjX2ppdF90eXBl ICp0eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNv bXBhcmlzb25fMF82Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X3J2YWx1ZSAqcnZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9f X190dF9fX19fX2ludF8xXzB4YmYyYTUwID0KICAgIGdjY19qaXRfY29udGV4 dF9uZXdfY29tcGFyaXNvbiAoY3R4dF8weGJmZDgyMCwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEdDQ19KSVRfQ09NUEFSSVNPTl9FUSwgLyogZW51bSBnY2Nfaml0X2Nv bXBhcmlzb24gb3AgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZ2NjX2ppdF9sdmFsdWVfYXNfcnZhbHVlIChsdmFsdWVfX19MX19j aV9fdV9sX2Jhc2VfX2ludF8xX19fX3R0X18weGJlZjBmMCksIC8qIGdjY19q aXRfcnZhbHVlICphICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHJ2YWx1ZV9faW50XzFfMHhiZjI5YjApOyAvKiBnY2Nfaml0X3J2 YWx1ZSAqYiAqLwogIGdjY19qaXRfYmxvY2tfYWRkX2Fzc2lnbm1lbnQgKGJs b2NrX2VudHJ5XzB4YmYzYTUwLCAvKmdjY19qaXRfYmxvY2sgKmJsb2NrICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2Nj X2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgbG9jYWxfY29tcGFyaXNvbl8wXzZfMHhiZjJhZDAsIC8qIGdj Y19qaXRfbHZhbHVlICpsdmFsdWUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBydmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19f X3R0X19fX19faW50XzFfMHhiZjJhNTApOyAvKiBnY2Nfaml0X3J2YWx1ZSAq cnZhbHVlICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX0xfX2NpX191 X2xfYmFzZV9faW50XzFfX19fdmFsdWVfXzB4YmYyNmQwPQogICAgZ2NjX2pp dF9ydmFsdWVfZGVyZWZlcmVuY2VfZmllbGQgKGFkZHJlc3Nfb2ZfX0xfX2Np X191X2xfYmFzZV9faW50XzFfXzB4YmVmMzEwLCAvKiBnY2Nfaml0X3J2YWx1 ZSAqcHRyICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfdmFsdWVfXzB4 YmIyYmYwKTsgLyogZ2NjX2ppdF9maWVsZCAqZmllbGQgKi8KICBnY2Nfaml0 X2x2YWx1ZSAqbHZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX192 YWx1ZV9fYl8weGJmMjhiMCA9IAogICAgZ2NjX2ppdF9sdmFsdWVfYWNjZXNz X2ZpZWxkIChsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3Zh bHVlX18weGJmMjZkMCwgLypnY2Nfaml0X2x2YWx1ZSAqc3RydWN0X29yX3Vu aW9uICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws IC8qZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGZpZWxkX2JfMHhiYjI2ZjApOwogIGdjY19qaXRf cnZhbHVlICpydmFsdWVfX2ludF8wXzB4YmYyNWIwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfcnZhbHVlX2Zyb21faW50IChjdHh0XzB4YmZkODIwLCAv KiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwgLyog Z2NjX2ppdF90eXBlICpudW1lcmljX3R5cGUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsgLyogaW50IHZhbHVlICov CiAgZ2NjX2ppdF9sdmFsdWUgKmxvY2FsX2NvbXBhcmlzb25fMF83XzB4YmYy MzgwID0KICAgIGdjY19qaXRfZnVuY3Rpb25fbmV3X2xvY2FsIChmdW5jX3Jh dmlmMV8weGJmNTJjMCwgLyogZ2NjX2ppdF9mdW5jdGlvbiAqZnVuYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHR5cGVfYm9vbF8weGJiMTU5MCwgLyogZ2NjX2ppdF90eXBlICp0 eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgImNvbXBh cmlzb25fMF83Iik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0 X3J2YWx1ZSAqcnZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX192 YWx1ZV9fYl9fX19faW50XzBfMHhiZjIzMDAgPQogICAgZ2NjX2ppdF9jb250 ZXh0X25ld19jb21wYXJpc29uIChjdHh0XzB4YmZkODIwLAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xv Y2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgR0NDX0pJVF9DT01QQVJJU09OX0VRLCAvKiBlbnVtIGdjY19qaXRf Y29tcGFyaXNvbiBvcCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGx2YWx1ZV9fX0xf X2NpX191X2xfYmFzZV9faW50XzFfX19fdmFsdWVfX2JfMHhiZjI4YjApLCAv KiBnY2Nfaml0X3J2YWx1ZSAqYSAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBydmFsdWVfX2ludF8wXzB4YmYyNWIwKTsgLyogZ2Nj X2ppdF9ydmFsdWUgKmIgKi8KICBnY2Nfaml0X2Jsb2NrX2FkZF9hc3NpZ25t ZW50IChibG9ja19lbnRyeV8weGJmM2E1MCwgLypnY2Nfaml0X2Jsb2NrICpi bG9jayAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEws IC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGxvY2FsX2NvbXBhcmlzb25fMF83XzB4YmYyMzgw LCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgcnZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19p bnRfMV9fX192YWx1ZV9fYl9fX19faW50XzBfMHhiZjIzMDApOyAvKiBnY2Nf aml0X3J2YWx1ZSAqcnZhbHVlICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1 ZV9jb21wYXJpc29uXzBfNl9fX19jb21wYXJpc29uXzBfN18weGJmMjBiMCA9 CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2JpbmFyeV9vcCAoY3R4dF8weGJm ZDgyMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0JJTkFSWV9PUF9MT0dJQ0FM X0FORCwgLyogZW51bSBnY2Nfaml0X2JpbmFyeV9vcCBvcCAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfYm9vbF8weGJiMTU5 MCwgLyogZ2NjX2ppdF90eXBlICpyZXN1bHRfdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGdjY19qaXRfbHZhbHVlX2FzX3J2 YWx1ZSAobG9jYWxfY29tcGFyaXNvbl8wXzZfMHhiZjJhZDApLCAvKiBnY2Nf aml0X3J2YWx1ZSAqYSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGdjY19qaXRfbHZhbHVlX2FzX3J2YWx1ZSAobG9jYWxfY29tcGFy aXNvbl8wXzdfMHhiZjIzODApKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmIgKi8K ICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX2NvbXBhcmlzb25fMF81X19fX2Nv bXBhcmlzb25fMF82X19fX2NvbXBhcmlzb25fMF83XzB4YmYxZmEwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfYmluYXJ5X29wIChjdHh0XzB4YmZkODIw LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEdDQ19KSVRfQklOQVJZX09QX0xPR0lDQUxfT1Is IC8qIGVudW0gZ2NjX2ppdF9iaW5hcnlfb3Agb3AgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2Jvb2xfMHhiYjE1OTAsIC8q IGdjY19qaXRfdHlwZSAqcmVzdWx0X3R5cGUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUg KGxvY2FsX2NvbXBhcmlzb25fMF81XzB4YmVlZjUwKSwgLyogZ2NjX2ppdF9y dmFsdWUgKmEgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBydmFsdWVfY29tcGFyaXNvbl8wXzZfX19fY29tcGFyaXNvbl8wXzdfMHhi ZjIwYjApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqYiAqLwogIGdjY19qaXRfYmxv Y2tfYWRkX2Fzc2lnbm1lbnQgKGJsb2NrX2VudHJ5XzB4YmYzYTUwLCAvKmdj Y19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxfaXNmYWxzZV8w XzRfMHhiZWYxNzAsIC8qIGdjY19qaXRfbHZhbHVlICpsdmFsdWUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfY29tcGFyaXNv bl8wXzVfX19fY29tcGFyaXNvbl8wXzZfX19fY29tcGFyaXNvbl8wXzdfMHhi ZjFmYTApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlICovCiAgZ2NjX2pp dF9ydmFsdWUgKnJ2YWx1ZV9fX2lzZmFsc2VfMF80X18weGJmMWUwMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X3VuYXJ5X29wIChjdHh0XzB4YmZkODIw LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBHQ0NfSklUX1VOQVJZX09QX0xPR0lDQUxfTkVHQVRF LCAvKiBlbnVtIGdjY19qaXRfdW5hcnlfb3Agb3AgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHR5cGVfYm9vbF8weGJiMTU5MCwgLyog Z2NjX2ppdF90eXBlICpyZXN1bHRfdHlwZSAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZ2NjX2ppdF9sdmFsdWVfYXNfcnZhbHVlIChs b2NhbF9pc2ZhbHNlXzBfNF8weGJlZjE3MCkpOyAvKiBnY2Nfaml0X3J2YWx1 ZSAqYSAqLwogIGdjY19qaXRfYmxvY2sgKmJsb2NrX09QX1RFU1RfZG9fam1w XzJfOF8weGJmMWM3MCA9CiAgICBnY2Nfaml0X2Z1bmN0aW9uX25ld19ibG9j ayAoZnVuY19yYXZpZjFfMHhiZjUyYzAsICJPUF9URVNUX2RvX2ptcF8yXzgi KTsKICBnY2Nfaml0X2Jsb2NrICpibG9ja19PUF9URVNUX2RvX3NraXBfMl85 XzB4YmZlMDAwID0KICAgIGdjY19qaXRfZnVuY3Rpb25fbmV3X2Jsb2NrIChm dW5jX3JhdmlmMV8weGJmNTJjMCwgIk9QX1RFU1RfZG9fc2tpcF8yXzkiKTsK ICBnY2Nfaml0X2Jsb2NrX2VuZF93aXRoX2NvbmRpdGlvbmFsIChibG9ja19l bnRyeV8weGJmM2E1MCwgLypnY2Nfaml0X2Jsb2NrICpibG9jayAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHJ2YWx1ZV9fX2lzZmFsc2VfMF80X18weGJmMWUw MCwgLyogZ2NjX2ppdF9ydmFsdWUgKmJvb2x2YWwgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja19PUF9URVNUX2RvX2pt cF8yXzhfMHhiZjFjNzAsIC8qIGdjY19qaXRfYmxvY2sgKm9uX3RydWUgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9ja19P UF9URVNUX2RvX3NraXBfMl85XzB4YmZlMDAwKTsgLyogZ2NjX2ppdF9ibG9j ayAqb25fZmFsc2UgKi8KICBnY2Nfaml0X2Jsb2NrX2VuZF93aXRoX2p1bXAg KGJsb2NrX09QX1RFU1RfZG9fam1wXzJfOF8weGJmMWM3MCwgLypnY2Nfaml0 X2Jsb2NrICpibG9jayAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBibG9ja19qbXBfNV8xXzB4YmYzZDUw KTsgLyogZ2NjX2ppdF9ibG9jayAqdGFyZ2V0ICovCiAgZ2NjX2ppdF9ibG9j a19lbmRfd2l0aF9qdW1wIChibG9ja19PUF9URVNUX2RvX3NraXBfMl85XzB4 YmZlMDAwLCAvKmdjY19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2Nr X2ptcF81XzFfMHhiZjNkNTApOyAvKiBnY2Nfaml0X2Jsb2NrICp0YXJnZXQg Ki8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX19pbnRfMV8weGJmMjAyMCA9 CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9tX2ludCAoY3R4 dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRf MHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqbnVtZXJpY190eXBlICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMSk7IC8q IGludCB2YWx1ZSAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVfTF9fY2lf X3VfbF9iYXNlX19pbnRfMV9fMHhiZjJjZjAgPSAKICAgIGdjY19qaXRfY29u dGV4dF9uZXdfYXJyYXlfYWNjZXNzIChjdHh0XzB4YmZkODIwLCAvKiBnY2Nf aml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKmdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1 ZV9MX19jaV9fdV9sX2Jhc2VfMHhiZjMwNjAsIC8qIGdjY19qaXRfcnZhbHVl ICpwdHIgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBydmFsdWVfX2ludF8xXzB4YmYyMDIwKTsgLyogZ2NjX2ppdF9ydmFsdWUg KmluZGV4ICovCiAgZ2NjX2ppdF9ydmFsdWUgKmFkZHJlc3Nfb2ZfX0xfX2Np X191X2xfYmFzZV9faW50XzFfXzB4YmYyNTIwID0KICAgIGdjY19qaXRfbHZh bHVlX2dldF9hZGRyZXNzIChsdmFsdWVfTF9fY2lfX3VfbF9iYXNlX19pbnRf MV9fMHhiZjJjZjAsIC8qIGdjY19qaXRfbHZhbHVlICpsdmFsdWUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsgLyogZ2NjX2pp dF9sb2NhdGlvbiAqbG9jICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9f aW50XzBfMHhiZjFkNzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19ydmFs dWVfZnJvbV9pbnQgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4 dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKm51 bWVyaWNfdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIDApOyAvKiBpbnQgdmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1 ZSAqbHZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX192YWx1ZV9f MHhiZmUyNjA9CiAgICBnY2Nfaml0X3J2YWx1ZV9kZXJlZmVyZW5jZV9maWVs ZCAoYWRkcmVzc19vZl9fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fMHhiZjI1 MjAsIC8qIGdjY19qaXRfcnZhbHVlICpwdHIgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBmaWVsZF92YWx1ZV9fMHhiYjJiZjApOyAvKiBnY2Nfaml0X2ZpZWxk ICpmaWVsZCAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVfX19MX19jaV9f dV9sX2Jhc2VfX2ludF8xX19fX3ZhbHVlX19iXzB4YmY2NmEwID0gCiAgICBn Y2Nfaml0X2x2YWx1ZV9hY2Nlc3NfZmllbGQgKGx2YWx1ZV9fX0xfX2NpX191 X2xfYmFzZV9faW50XzFfX19fdmFsdWVfXzB4YmZlMjYwLCAvKmdjY19qaXRf bHZhbHVlICpzdHJ1Y3Rfb3JfdW5pb24gKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfYl8w eGJiMjZmMCk7CiAgZ2NjX2ppdF9ibG9ja19hZGRfYXNzaWdubWVudCAoYmxv Y2tfam1wXzVfMV8weGJmM2Q1MCwgLypnY2Nfaml0X2Jsb2NrICpibG9jayAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGx2YWx1ZV9fX0xfX2NpX191X2xfYmFzZV9faW50XzFfX19f dmFsdWVfX2JfMHhiZjY2YTAsIC8qIGdjY19qaXRfbHZhbHVlICpsdmFsdWUg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfX2lu dF8wXzB4YmYxZDcwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZSAqLwog IGdjY19qaXRfcnZhbHVlICpydmFsdWVfX2ludF8xXzB4YmY2MDMwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfcnZhbHVlX2Zyb21faW50IChjdHh0XzB4 YmZkODIwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJi MThlMCwgLyogZ2NjX2ppdF90eXBlICpudW1lcmljX3R5cGUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAxKTsgLyogaW50 IHZhbHVlICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX0xfX2NpX191 X2xfYmFzZV9faW50XzFfX19fdHRfXzB4YmY1OWMwPQogICAgZ2NjX2ppdF9y dmFsdWVfZGVyZWZlcmVuY2VfZmllbGQgKGFkZHJlc3Nfb2ZfX0xfX2NpX191 X2xfYmFzZV9faW50XzFfXzB4YmYyNTIwLCAvKiBnY2Nfaml0X3J2YWx1ZSAq cHRyICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfdHRfXzB4YmIyY2Ew KTsgLyogZ2NjX2ppdF9maWVsZCAqZmllbGQgKi8KICBnY2Nfaml0X2Jsb2Nr X2FkZF9hc3NpZ25tZW50IChibG9ja19qbXBfNV8xXzB4YmYzZDUwLCAvKmdj Y19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbHZhbHVlX19fTF9fY2lf X3VfbF9iYXNlX19pbnRfMV9fX190dF9fMHhiZjU5YzAsIC8qIGdjY19qaXRf bHZhbHVlICpsdmFsdWUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBydmFsdWVfX2ludF8xXzB4YmY2MDMwKTsgLyogZ2NjX2ppdF9ydmFs dWUgKnJ2YWx1ZSAqLwogIGdjY19qaXRfcnZhbHVlICpydmFsdWVfX2ludF8x XzB4YmY0ZTIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcnZhbHVlX2Zy b21faW50IChjdHh0XzB4YmZkODIwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0 eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB0eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2ppdF90eXBlICpudW1lcmlj X3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAxKTsgLyogaW50IHZhbHVlICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2 YWx1ZV9MX19jaV9fdV9sX2Jhc2VfX2ludF8xX18weGJmN2Q5MCA9IAogICAg Z2NjX2ppdF9jb250ZXh0X25ld19hcnJheV9hY2Nlc3MgKGN0eHRfMHhiZmQ4 MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgcnZhbHVlX0xfX2NpX191X2xfYmFzZV8weGJmMzA2MCwgLyogZ2Nj X2ppdF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIHJ2YWx1ZV9faW50XzFfMHhiZjRlMjApOyAvKiBnY2Nf aml0X3J2YWx1ZSAqaW5kZXggKi8KICBnY2Nfaml0X3J2YWx1ZSAqYWRkcmVz c19vZl9fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fMHhiZjdjNDAgPQogICAg Z2NjX2ppdF9sdmFsdWVfZ2V0X2FkZHJlc3MgKGx2YWx1ZV9MX19jaV9fdV9s X2Jhc2VfX2ludF8xX18weGJmN2Q5MCwgLyogZ2NjX2ppdF9sdmFsdWUgKmx2 YWx1ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwp OyAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICBnY2Nfaml0X2x2YWx1 ZSAqbG9jYWxfaXNmYWxzZV8wXzEwXzB4YmY3NGQwID0KICAgIGdjY19qaXRf ZnVuY3Rpb25fbmV3X2xvY2FsIChmdW5jX3JhdmlmMV8weGJmNTJjMCwgLyog Z2NjX2ppdF9mdW5jdGlvbiAqZnVuYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfYm9vbF8w eGJiMTU5MCwgLyogZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgImlzZmFsc2VfMF8xMCIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX0xf X2NpX191X2xfYmFzZV9faW50XzFfX19fdHRfXzB4YmY0NTYwPQogICAgZ2Nj X2ppdF9ydmFsdWVfZGVyZWZlcmVuY2VfZmllbGQgKGFkZHJlc3Nfb2ZfX0xf X2NpX191X2xfYmFzZV9faW50XzFfXzB4YmY3YzQwLCAvKiBnY2Nfaml0X3J2 YWx1ZSAqcHRyICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfdHRfXzB4 YmIyY2EwKTsgLyogZ2NjX2ppdF9maWVsZCAqZmllbGQgKi8KICBnY2Nfaml0 X3J2YWx1ZSAqcnZhbHVlX19pbnRfMF8weGJlZjFmMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9tX2ludCAoY3R4dF8weGJmZDgyMCwg LyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8q IGdjY19qaXRfdHlwZSAqbnVtZXJpY190eXBlICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCB2YWx1ZSAq LwogIGdjY19qaXRfbHZhbHVlICpsb2NhbF9jb21wYXJpc29uXzBfMTFfMHhi ZWYwNTAgPQogICAgZ2NjX2ppdF9mdW5jdGlvbl9uZXdfbG9jYWwgKGZ1bmNf cmF2aWYxXzB4YmY1MmMwLCAvKiBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2Nj X2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHlwZV9ib29sXzB4YmIxNTkwLCAvKiBnY2Nfaml0X3R5cGUg KnR5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiY29t cGFyaXNvbl8wXzExIik7IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nf aml0X3J2YWx1ZSAqcnZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9f X190dF9fX19fX2ludF8wXzB4YmYyYzUwID0KICAgIGdjY19qaXRfY29udGV4 dF9uZXdfY29tcGFyaXNvbiAoY3R4dF8weGJmZDgyMCwKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIEdDQ19KSVRfQ09NUEFSSVNPTl9FUSwgLyogZW51bSBnY2Nfaml0X2Nv bXBhcmlzb24gb3AgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZ2NjX2ppdF9sdmFsdWVfYXNfcnZhbHVlIChsdmFsdWVfX19MX19j aV9fdV9sX2Jhc2VfX2ludF8xX19fX3R0X18weGJmNDU2MCksIC8qIGdjY19q aXRfcnZhbHVlICphICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHJ2YWx1ZV9faW50XzBfMHhiZWYxZjApOyAvKiBnY2Nfaml0X3J2 YWx1ZSAqYiAqLwogIGdjY19qaXRfYmxvY2tfYWRkX2Fzc2lnbm1lbnQgKGJs b2NrX2ptcF81XzFfMHhiZjNkNTAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBsb2NhbF9jb21wYXJpc29uXzBfMTFfMHhiZWYwNTAsIC8q IGdjY19qaXRfbHZhbHVlICpsdmFsdWUgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBydmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8x X19fX3R0X19fX19faW50XzBfMHhiZjJjNTApOyAvKiBnY2Nfaml0X3J2YWx1 ZSAqcnZhbHVlICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50XzFf MHhiZjI0MDAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19ydmFsdWVfZnJv bV9pbnQgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4 dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKm51bWVyaWNf dHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIDEpOyAvKiBpbnQgdmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbG9j YWxfY29tcGFyaXNvbl8wXzEyXzB4YmYxZjAwID0KICAgIGdjY19qaXRfZnVu Y3Rpb25fbmV3X2xvY2FsIChmdW5jX3JhdmlmMV8weGJmNTJjMCwgLyogZ2Nj X2ppdF9mdW5jdGlvbiAqZnVuYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfYm9vbF8weGJi MTU5MCwgLyogZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgImNvbXBhcmlzb25fMF8xMiIpOyAvKiBjb25z dCBjaGFyICpuYW1lICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9fX0xf X2NpX191X2xfYmFzZV9faW50XzFfX19fdHRfX19fX19pbnRfMV8weGJmMWJk MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2NvbXBhcmlzb24gKGN0eHRf MHhiZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0NfSklUX0NPTVBBUklTT05f RVEsIC8qIGVudW0gZ2NjX2ppdF9jb21wYXJpc29uIG9wICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdjY19qaXRfbHZhbHVlX2Fz X3J2YWx1ZSAobHZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX190 dF9fMHhiZjQ1NjApLCAvKiBnY2Nfaml0X3J2YWx1ZSAqYSAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfX2ludF8xXzB4 YmYyNDAwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmIgKi8KICBnY2Nfaml0X2Js b2NrX2FkZF9hc3NpZ25tZW50IChibG9ja19qbXBfNV8xXzB4YmYzZDUwLCAv KmdjY19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxfY29tcGFy aXNvbl8wXzEyXzB4YmYxZjAwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnZhbHVlX19f TF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX190dF9fX19fX2ludF8xXzB4YmYx YmQwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZSAqLwogIGdjY19qaXRf bHZhbHVlICpsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3Zh bHVlX18weGJjNThlMD0KICAgIGdjY19qaXRfcnZhbHVlX2RlcmVmZXJlbmNl X2ZpZWxkIChhZGRyZXNzX29mX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX18w eGJmN2M0MCwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZpZWxkX3ZhbHVlX18weGJiMmJmMCk7IC8qIGdjY19qaXRf ZmllbGQgKmZpZWxkICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX0xf X2NpX191X2xfYmFzZV9faW50XzFfX19fdmFsdWVfX2JfMHhiZjg3MDAgPSAK ICAgIGdjY19qaXRfbHZhbHVlX2FjY2Vzc19maWVsZCAobHZhbHVlX19fTF9f Y2lfX3VfbF9iYXNlX19pbnRfMV9fX192YWx1ZV9fMHhiYzU4ZTAsIC8qZ2Nj X2ppdF9sdmFsdWUgKnN0cnVjdF9vcl91bmlvbiAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKmdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVs ZF9iXzB4YmIyNmYwKTsKICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX19pbnRf MF8weGJmMzk1MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9m cm9tX2ludCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpj dHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqbnVtZXJp Y190eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgMCk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19qaXRfbHZhbHVlICps b2NhbF9jb21wYXJpc29uXzBfMTNfMHhiZjM5YTAgPQogICAgZ2NjX2ppdF9m dW5jdGlvbl9uZXdfbG9jYWwgKGZ1bmNfcmF2aWYxXzB4YmY1MmMwLCAvKiBn Y2Nfaml0X2Z1bmN0aW9uICpmdW5jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9ib29sXzB4 YmIxNTkwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAiY29tcGFyaXNvbl8wXzEzIik7IC8qIGNv bnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX19f TF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX192YWx1ZV9fYl9fX19faW50XzBf MHhiZjIyNzAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19jb21wYXJpc29u IChjdHh0XzB4YmZkODIwLAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJVF9DT01Q QVJJU09OX0VRLCAvKiBlbnVtIGdjY19qaXRfY29tcGFyaXNvbiBvcCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBnY2Nfaml0X2x2 YWx1ZV9hc19ydmFsdWUgKGx2YWx1ZV9fX0xfX2NpX191X2xfYmFzZV9faW50 XzFfX19fdmFsdWVfX2JfMHhiZjg3MDApLCAvKiBnY2Nfaml0X3J2YWx1ZSAq YSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFs dWVfX2ludF8wXzB4YmYzOTUwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmIgKi8K ICBnY2Nfaml0X2Jsb2NrX2FkZF9hc3NpZ25tZW50IChibG9ja19qbXBfNV8x XzB4YmYzZDUwLCAvKmdjY19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bG9jYWxfY29tcGFyaXNvbl8wXzEzXzB4YmYzOWEwLCAvKiBnY2Nfaml0X2x2 YWx1ZSAqbHZhbHVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcnZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX192YWx1ZV9f Yl9fX19faW50XzBfMHhiZjIyNzApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqcnZh bHVlICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9jb21wYXJpc29uXzBf MTJfX19fY29tcGFyaXNvbl8wXzEzXzB4YmRjYTAwID0KICAgIGdjY19qaXRf Y29udGV4dF9uZXdfYmluYXJ5X29wIChjdHh0XzB4YmZkODIwLAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIEdDQ19KSVRfQklOQVJZX09QX0xPR0lDQUxfQU5ELCAvKiBlbnVt IGdjY19qaXRfYmluYXJ5X29wIG9wICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdHlwZV9ib29sXzB4YmIxNTkwLCAvKiBnY2Nfaml0 X3R5cGUgKnJlc3VsdF90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ2NjX2ppdF9sdmFsdWVfYXNfcnZhbHVlIChsb2NhbF9j b21wYXJpc29uXzBfMTJfMHhiZjFmMDApLCAvKiBnY2Nfaml0X3J2YWx1ZSAq YSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdjY19q aXRfbHZhbHVlX2FzX3J2YWx1ZSAobG9jYWxfY29tcGFyaXNvbl8wXzEzXzB4 YmYzOWEwKSk7IC8qIGdjY19qaXRfcnZhbHVlICpiICovCiAgZ2NjX2ppdF9y dmFsdWUgKnJ2YWx1ZV9jb21wYXJpc29uXzBfMTFfX19fY29tcGFyaXNvbl8w XzEyX19fX2NvbXBhcmlzb25fMF8xM18weGMxMWE2MCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2JpbmFyeV9vcCAoY3R4dF8weGJmZDgyMCwKICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBHQ0NfSklUX0JJTkFSWV9PUF9MT0dJQ0FMX09SLCAvKiBlbnVt IGdjY19qaXRfYmluYXJ5X29wIG9wICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdHlwZV9ib29sXzB4YmIxNTkwLCAvKiBnY2Nfaml0 X3R5cGUgKnJlc3VsdF90eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgZ2NjX2ppdF9sdmFsdWVfYXNfcnZhbHVlIChsb2NhbF9j b21wYXJpc29uXzBfMTFfMHhiZWYwNTApLCAvKiBnY2Nfaml0X3J2YWx1ZSAq YSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1 ZV9jb21wYXJpc29uXzBfMTJfX19fY29tcGFyaXNvbl8wXzEzXzB4YmRjYTAw KTsgLyogZ2NjX2ppdF9ydmFsdWUgKmIgKi8KICBnY2Nfaml0X2Jsb2NrX2Fk ZF9hc3NpZ25tZW50IChibG9ja19qbXBfNV8xXzB4YmYzZDUwLCAvKmdjY19q aXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxfaXNmYWxzZV8wXzEw XzB4YmY3NGQwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgcnZhbHVlX2NvbXBhcmlzb25f MF8xMV9fX19jb21wYXJpc29uXzBfMTJfX19fY29tcGFyaXNvbl8wXzEzXzB4 YzExYTYwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZSAqLwogIGdjY19q aXRfcnZhbHVlICpydmFsdWVfX19pc2ZhbHNlXzBfMTBfXzB4YmRkOTUwID0K ICAgIGdjY19qaXRfY29udGV4dF9uZXdfdW5hcnlfb3AgKGN0eHRfMHhiZmQ4 MjAsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEdDQ19KSVRfVU5BUllfT1BfTE9HSUNBTF9ORUdB VEUsIC8qIGVudW0gZ2NjX2ppdF91bmFyeV9vcCBvcCAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9ib29sXzB4YmIxNTkwLCAv KiBnY2Nfaml0X3R5cGUgKnJlc3VsdF90eXBlICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUg KGxvY2FsX2lzZmFsc2VfMF8xMF8weGJmNzRkMCkpOyAvKiBnY2Nfaml0X3J2 YWx1ZSAqYSAqLwogIGdjY19qaXRfcnZhbHVlICpydmFsdWVfX19fX2lzZmFs c2VfMF8xMF9fXzB4YmRkOWIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf dW5hcnlfb3AgKGN0eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRf VU5BUllfT1BfTE9HSUNBTF9ORUdBVEUsIC8qIGVudW0gZ2NjX2ppdF91bmFy eV9vcCBvcCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dHlwZV9ib29sXzB4YmIxNTkwLCAvKiBnY2Nfaml0X3R5cGUgKnJlc3VsdF90 eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFs dWVfX19pc2ZhbHNlXzBfMTBfXzB4YmRkOTUwKTsgLyogZ2NjX2ppdF9ydmFs dWUgKmEgKi8KICBnY2Nfaml0X2Jsb2NrICpibG9ja19PUF9URVNUX2RvX2pt cF81XzE0XzB4YmZmMWUwID0KICAgIGdjY19qaXRfZnVuY3Rpb25fbmV3X2Js b2NrIChmdW5jX3JhdmlmMV8weGJmNTJjMCwgIk9QX1RFU1RfZG9fam1wXzVf MTQiKTsKICBnY2Nfaml0X2Jsb2NrICpibG9ja19PUF9URVNUX2RvX3NraXBf NV8xNV8weGJmZjI3MCA9CiAgICBnY2Nfaml0X2Z1bmN0aW9uX25ld19ibG9j ayAoZnVuY19yYXZpZjFfMHhiZjUyYzAsICJPUF9URVNUX2RvX3NraXBfNV8x NSIpOwogIGdjY19qaXRfYmxvY2tfZW5kX3dpdGhfY29uZGl0aW9uYWwgKGJs b2NrX2ptcF81XzFfMHhiZjNkNTAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfX19fX2lzZmFsc2VfMF8x MF9fXzB4YmRkOWIwLCAvKiBnY2Nfaml0X3J2YWx1ZSAqYm9vbHZhbCAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrX09Q X1RFU1RfZG9fam1wXzVfMTRfMHhiZmYxZTAsIC8qIGdjY19qaXRfYmxvY2sg Km9uX3RydWUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBibG9ja19PUF9URVNUX2RvX3NraXBfNV8xNV8weGJmZjI3MCk7IC8q IGdjY19qaXRfYmxvY2sgKm9uX2ZhbHNlICovCiAgZ2NjX2ppdF9ibG9ja19l bmRfd2l0aF9qdW1wIChibG9ja19PUF9URVNUX2RvX2ptcF81XzE0XzB4YmZm MWUwLCAvKmdjY19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJsb2NrX2pt cF85XzJfMHhiZjM3ZDApOyAvKiBnY2Nfaml0X2Jsb2NrICp0YXJnZXQgKi8K ICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX19pbnRfMF8weGJmY2VhMCA9CiAg ICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9tX2ludCAoY3R4dF8w eGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhi YjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqbnVtZXJpY190eXBlICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGlu dCB2YWx1ZSAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVfTF9fY2lfX3Vf bF9iYXNlX19pbnRfMF9fMHhiZmNlZjAgPSAKICAgIGdjY19qaXRfY29udGV4 dF9uZXdfYXJyYXlfYWNjZXNzIChjdHh0XzB4YmZkODIwLCAvKiBnY2Nfaml0 X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOVUxMLCAvKmdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9M X19jaV9fdV9sX2Jhc2VfMHhiZjMwNjAsIC8qIGdjY19qaXRfcnZhbHVlICpw dHIgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy dmFsdWVfX2ludF8wXzB4YmZjZWEwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmlu ZGV4ICovCiAgZ2NjX2ppdF9ydmFsdWUgKmFkZHJlc3Nfb2ZfX0xfX2NpX191 X2xfYmFzZV9faW50XzBfXzB4YmZjZjUwID0KICAgIGdjY19qaXRfbHZhbHVl X2dldF9hZGRyZXNzIChsdmFsdWVfTF9fY2lfX3VfbF9iYXNlX19pbnRfMF9f MHhiZmNlZjAsIC8qIGdjY19qaXRfbHZhbHVlICpsdmFsdWUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMKTsgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50 XzFfMHhiZmE0ZTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19ydmFsdWVf ZnJvbV9pbnQgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4dCAq Y3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKm51bWVy aWNfdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIDEpOyAvKiBpbnQgdmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAq bHZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMF9fX192YWx1ZV9fMHhi ZmE1MzA9CiAgICBnY2Nfaml0X3J2YWx1ZV9kZXJlZmVyZW5jZV9maWVsZCAo YWRkcmVzc19vZl9fTF9fY2lfX3VfbF9iYXNlX19pbnRfMF9fMHhiZmNmNTAs IC8qIGdjY19qaXRfcnZhbHVlICpwdHIgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBmaWVsZF92YWx1ZV9fMHhiYjJiZjApOyAvKiBnY2Nfaml0X2ZpZWxkICpm aWVsZCAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVfX19MX19jaV9fdV9s X2Jhc2VfX2ludF8wX19fX3ZhbHVlX19iXzB4YmZhNTkwID0gCiAgICBnY2Nf aml0X2x2YWx1ZV9hY2Nlc3NfZmllbGQgKGx2YWx1ZV9fX0xfX2NpX191X2xf YmFzZV9faW50XzBfX19fdmFsdWVfXzB4YmZhNTMwLCAvKmdjY19qaXRfbHZh bHVlICpzdHJ1Y3Rfb3JfdW5pb24gKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfYl8weGJi MjZmMCk7CiAgZ2NjX2ppdF9ibG9ja19hZGRfYXNzaWdubWVudCAoYmxvY2tf T1BfVEVTVF9kb19za2lwXzVfMTVfMHhiZmYyNzAsIC8qZ2NjX2ppdF9ibG9j ayAqYmxvY2sgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2Vf X2ludF8wX19fX3ZhbHVlX19iXzB4YmZhNTkwLCAvKiBnY2Nfaml0X2x2YWx1 ZSAqbHZhbHVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg cnZhbHVlX19pbnRfMV8weGJmYTRlMCk7IC8qIGdjY19qaXRfcnZhbHVlICpy dmFsdWUgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX19pbnRfMV8weGJm YTY0MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9tX2lu dCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqbnVtZXJpY190eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MSk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVf X19MX19jaV9fdV9sX2Jhc2VfX2ludF8wX19fX3R0X18weGJjN2Q0MD0KICAg IGdjY19qaXRfcnZhbHVlX2RlcmVmZXJlbmNlX2ZpZWxkIChhZGRyZXNzX29m X19MX19jaV9fdV9sX2Jhc2VfX2ludF8wX18weGJmY2Y1MCwgLyogZ2NjX2pp dF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpZWxkX3R0 X18weGJiMmNhMCk7IC8qIGdjY19qaXRfZmllbGQgKmZpZWxkICovCiAgZ2Nj X2ppdF9ibG9ja19hZGRfYXNzaWdubWVudCAoYmxvY2tfT1BfVEVTVF9kb19z a2lwXzVfMTVfMHhiZmYyNzAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8wX19fX3R0 X18weGJjN2Q0MCwgLyogZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9faW50XzFfMHhi ZmE2NDApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlICovCiAgZ2NjX2pp dF9ibG9ja19lbmRfd2l0aF9qdW1wIChibG9ja19PUF9URVNUX2RvX3NraXBf NV8xNV8weGJmZjI3MCwgLypnY2Nfaml0X2Jsb2NrICpibG9jayAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBibG9ja19qbXBfOV8yXzB4YmYzN2QwKTsgLyogZ2NjX2ppdF9ibG9jayAq dGFyZ2V0ICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50XzFfMHhi YzdkZTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19ydmFsdWVfZnJvbV9p bnQgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5 cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKm51bWVyaWNfdHlw ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDEpOyAvKiBpbnQgdmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVl X0xfX2NpX191X2xfYmFzZV9faW50XzFfXzB4YmM3ZTMwID0gCiAgICBnY2Nf aml0X2NvbnRleHRfbmV3X2FycmF5X2FjY2VzcyAoY3R4dF8weGJmZDgyMCwg LyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBydmFsdWVfTF9fY2lfX3VfbF9iYXNlXzB4YmYzMDYwLCAvKiBnY2Nfaml0 X3J2YWx1ZSAqcHRyICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgcnZhbHVlX19pbnRfMV8weGJjN2RlMCk7IC8qIGdjY19qaXRf cnZhbHVlICppbmRleCAqLwogIGdjY19qaXRfcnZhbHVlICphZGRyZXNzX29m X19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX18weGJjN2U5MCA9CiAgICBnY2Nf aml0X2x2YWx1ZV9nZXRfYWRkcmVzcyAobHZhbHVlX0xfX2NpX191X2xfYmFz ZV9faW50XzFfXzB4YmM3ZTMwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7IC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogIGdjY19qaXRfcnZhbHVlICpy dmFsdWVfX2ludF8wXzB4YmM3ZWUwID0KICAgIGdjY19qaXRfY29udGV4dF9u ZXdfcnZhbHVlX2Zyb21faW50IChjdHh0XzB4YmZkODIwLCAvKiBnY2Nfaml0 X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2ppdF90 eXBlICpudW1lcmljX3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAwKTsgLyogaW50IHZhbHVlICovCiAgZ2NjX2pp dF9sdmFsdWUgKmx2YWx1ZV9jbF9fcF9fa19faW50XzBfXzB4YmM4MTYwID0g CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2FycmF5X2FjY2VzcyAoY3R4dF8w eGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLypnY2Nfaml0 X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGx2YWx1ZV9j bF9fcF9fa18weGJmMmVmMCksIC8qIGdjY19qaXRfcnZhbHVlICpwdHIgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVf X2ludF8wXzB4YmM3ZWUwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmluZGV4ICov CiAgZ2NjX2ppdF9ydmFsdWUgKmFkZHJlc3Nfb2ZfX2NsX19wX19rX19pbnRf MF9fMHhiYzdmMzAgPQogICAgZ2NjX2ppdF9sdmFsdWVfZ2V0X2FkZHJlc3Mg KGx2YWx1ZV9jbF9fcF9fa19faW50XzBfXzB4YmM4MTYwLCAvKiBnY2Nfaml0 X2x2YWx1ZSAqbHZhbHVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCk7IC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogIGdj Y19qaXRfbHZhbHVlICpsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8x X19fX3ZhbHVlX18weGJjODFjMD0KICAgIGdjY19qaXRfcnZhbHVlX2RlcmVm ZXJlbmNlX2ZpZWxkIChhZGRyZXNzX29mX19MX19jaV9fdV9sX2Jhc2VfX2lu dF8xX18weGJjN2U5MCwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdj Y19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGZpZWxkX3ZhbHVlX18weGJiMmJmMCk7IC8qIGdj Y19qaXRfZmllbGQgKmZpZWxkICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1 ZV9fX0xfX2NpX191X2xfYmFzZV9faW50XzFfX19fdmFsdWVfX2lfMHhiYzgy MjAgPSAKICAgIGdjY19qaXRfbHZhbHVlX2FjY2Vzc19maWVsZCAobHZhbHVl X19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX192YWx1ZV9fMHhiYzgxYzAs IC8qZ2NjX2ppdF9sdmFsdWUgKnN0cnVjdF9vcl91bmlvbiAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKmdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBmaWVsZF9pXzB4YmIyODUwKTsKICBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVl X19fY2xfX3BfX2tfX2ludF8wX19fX3ZhbHVlX18weGJjODI4MD0KICAgIGdj Y19qaXRfcnZhbHVlX2RlcmVmZXJlbmNlX2ZpZWxkIChhZGRyZXNzX29mX19j bF9fcF9fa19faW50XzBfXzB4YmM3ZjMwLCAvKiBnY2Nfaml0X3J2YWx1ZSAq cHRyICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZmllbGRfdmFsdWVfXzB4YmIy YmYwKTsgLyogZ2NjX2ppdF9maWVsZCAqZmllbGQgKi8KICBnY2Nfaml0X2x2 YWx1ZSAqbHZhbHVlX19fY2xfX3BfX2tfX2ludF8wX19fX3ZhbHVlX19pXzB4 YmM4MmUwID0gCiAgICBnY2Nfaml0X2x2YWx1ZV9hY2Nlc3NfZmllbGQgKGx2 YWx1ZV9fX2NsX19wX19rX19pbnRfMF9fX192YWx1ZV9fMHhiYzgyODAsIC8q Z2NjX2ppdF9sdmFsdWUgKnN0cnVjdF9vcl91bmlvbiAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKmdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBm aWVsZF9pXzB4YmIyODUwKTsKICBnY2Nfaml0X2Jsb2NrX2FkZF9hc3NpZ25t ZW50IChibG9ja19qbXBfOV8yXzB4YmYzN2QwLCAvKmdjY19qaXRfYmxvY2sg KmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgbHZhbHVlX19fTF9fY2lfX3VfbF9iYXNlX19p bnRfMV9fX192YWx1ZV9faV8weGJjODIyMCwgLyogZ2NjX2ppdF9sdmFsdWUg Kmx2YWx1ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdj Y19qaXRfbHZhbHVlX2FzX3J2YWx1ZSAobHZhbHVlX19fY2xfX3BfX2tfX2lu dF8wX19fX3ZhbHVlX19pXzB4YmM4MmUwKSk7IC8qIGdjY19qaXRfcnZhbHVl ICpydmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlX19fTF9fY2lf X3VfbF9iYXNlX19pbnRfMV9fX190dF9fMHhiYzgzOTA9CiAgICBnY2Nfaml0 X3J2YWx1ZV9kZXJlZmVyZW5jZV9maWVsZCAoYWRkcmVzc19vZl9fTF9fY2lf X3VfbF9iYXNlX19pbnRfMV9fMHhiYzdlOTAsIC8qIGdjY19qaXRfcnZhbHVl ICpwdHIgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZF90dF9fMHhiYjJj YTApOyAvKiBnY2Nfaml0X2ZpZWxkICpmaWVsZCAqLwogIGdjY19qaXRfbHZh bHVlICpsdmFsdWVfX19jbF9fcF9fa19faW50XzBfX19fdHRfXzB4YmM4M2Yw PQogICAgZ2NjX2ppdF9ydmFsdWVfZGVyZWZlcmVuY2VfZmllbGQgKGFkZHJl c3Nfb2ZfX2NsX19wX19rX19pbnRfMF9fMHhiYzdmMzAsIC8qIGdjY19qaXRf cnZhbHVlICpwdHIgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZF90dF9f MHhiYjJjYTApOyAvKiBnY2Nfaml0X2ZpZWxkICpmaWVsZCAqLwogIGdjY19q aXRfYmxvY2tfYWRkX2Fzc2lnbm1lbnQgKGJsb2NrX2ptcF85XzJfMHhiZjM3 ZDAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICps b2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsdmFsdWVf X19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3R0X18weGJjODM5MCwgLyog Z2NjX2ppdF9sdmFsdWUgKmx2YWx1ZSAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGdjY19qaXRfbHZhbHVlX2FzX3J2YWx1ZSAobHZhbHVl X19fY2xfX3BfX2tfX2ludF8wX19fX3R0X18weGJjODNmMCkpOyAvKiBnY2Nf aml0X3J2YWx1ZSAqcnZhbHVlICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1 ZV9faW50XzFfMHhiYzhlYTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19y dmFsdWVfZnJvbV9pbnQgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRfY29u dGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUg Km51bWVyaWNfdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIDEpOyAvKiBpbnQgdmFsdWUgKi8KICBnY2Nfaml0X2x2 YWx1ZSAqbHZhbHVlX0xfX2NpX191X2xfYmFzZV9faW50XzFfXzB4YmM4ZWYw ID0gCiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2FycmF5X2FjY2VzcyAoY3R4 dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLypnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBydmFsdWVfTF9fY2lfX3VfbF9iYXNlXzB4YmYzMDYw LCAvKiBnY2Nfaml0X3J2YWx1ZSAqcHRyICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgcnZhbHVlX19pbnRfMV8weGJjOGVhMCk7 IC8qIGdjY19qaXRfcnZhbHVlICppbmRleCAqLwogIGdjY19qaXRfcnZhbHVl ICphZGRyZXNzX29mX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX18weGJjOGY1 MCA9CiAgICBnY2Nfaml0X2x2YWx1ZV9nZXRfYWRkcmVzcyAobHZhbHVlX0xf X2NpX191X2xfYmFzZV9faW50XzFfXzB4YmM4ZWYwLCAvKiBnY2Nfaml0X2x2 YWx1ZSAqbHZhbHVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCk7IC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogIGdjY19q aXRfbHZhbHVlICpsb2NhbF9pc2ZhbHNlXzBfMTZfMHhiYzhmZTAgPQogICAg Z2NjX2ppdF9mdW5jdGlvbl9uZXdfbG9jYWwgKGZ1bmNfcmF2aWYxXzB4YmY1 MmMwLCAvKiBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9ib29sXzB4YmIxNTkwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAiaXNmYWxzZV8wXzE2Iik7 IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZh bHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX190dF9fMHhiYzkwNDA9 CiAgICBnY2Nfaml0X3J2YWx1ZV9kZXJlZmVyZW5jZV9maWVsZCAoYWRkcmVz c19vZl9fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fMHhiYzhmNTAsIC8qIGdj Y19qaXRfcnZhbHVlICpwdHIgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVs ZF90dF9fMHhiYjJjYTApOyAvKiBnY2Nfaml0X2ZpZWxkICpmaWVsZCAqLwog IGdjY19qaXRfcnZhbHVlICpydmFsdWVfX2ludF8wXzB4YmM5MGEwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfcnZhbHVlX2Zyb21faW50IChjdHh0XzB4 YmZkODIwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2ludF8weGJi MThlMCwgLyogZ2NjX2ppdF90eXBlICpudW1lcmljX3R5cGUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwKTsgLyogaW50 IHZhbHVlICovCiAgZ2NjX2ppdF9sdmFsdWUgKmxvY2FsX2NvbXBhcmlzb25f MF8xN18weGJjOTEzMCA9CiAgICBnY2Nfaml0X2Z1bmN0aW9uX25ld19sb2Nh bCAoZnVuY19yYXZpZjFfMHhiZjUyYzAsIC8qIGdjY19qaXRfZnVuY3Rpb24g KmZ1bmMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxM LCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICB0eXBlX2Jvb2xfMHhiYjE1OTAsIC8qIGdjY19q aXRfdHlwZSAqdHlwZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICJjb21wYXJpc29uXzBfMTciKTsgLyogY29uc3QgY2hhciAqbmFtZSAq LwogIGdjY19qaXRfcnZhbHVlICpydmFsdWVfX19MX19jaV9fdV9sX2Jhc2Vf X2ludF8xX19fX3R0X19fX19faW50XzBfMHhiYzkxOTAgPQogICAgZ2NjX2pp dF9jb250ZXh0X25ld19jb21wYXJpc29uIChjdHh0XzB4YmZkODIwLAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgR0NDX0pJVF9DT01QQVJJU09OX0VRLCAvKiBlbnVtIGdj Y19qaXRfY29tcGFyaXNvbiBvcCAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGx2YWx1 ZV9fX0xfX2NpX191X2xfYmFzZV9faW50XzFfX19fdHRfXzB4YmM5MDQwKSwg LyogZ2NjX2ppdF9ydmFsdWUgKmEgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcnZhbHVlX19pbnRfMF8weGJjOTBhMCk7IC8qIGdj Y19qaXRfcnZhbHVlICpiICovCiAgZ2NjX2ppdF9ibG9ja19hZGRfYXNzaWdu bWVudCAoYmxvY2tfam1wXzlfMl8weGJmMzdkMCwgLypnY2Nfaml0X2Jsb2Nr ICpibG9jayAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGxvY2FsX2NvbXBhcmlzb25fMF8xN18weGJj OTEzMCwgLyogZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9fX0xfX2NpX191X2xfYmFz ZV9faW50XzFfX19fdHRfX19fX19pbnRfMF8weGJjOTE5MCk7IC8qIGdjY19q aXRfcnZhbHVlICpydmFsdWUgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVl X19pbnRfMV8weGJjOTI0MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2 YWx1ZV9mcm9tX2ludCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250 ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAq bnVtZXJpY190eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgMSk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19qaXRfbHZh bHVlICpsb2NhbF9jb21wYXJpc29uXzBfMThfMHhiYzkyZDAgPQogICAgZ2Nj X2ppdF9mdW5jdGlvbl9uZXdfbG9jYWwgKGZ1bmNfcmF2aWYxXzB4YmY1MmMw LCAvKiBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAq bG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9i b29sXzB4YmIxNTkwLCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAiY29tcGFyaXNvbl8wXzE4Iik7 IC8qIGNvbnN0IGNoYXIgKm5hbWUgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZh bHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX190dF9fX19fX2ludF8x XzB4YmM5MzMwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfY29tcGFyaXNv biAoY3R4dF8weGJmZDgyMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEdDQ19KSVRfQ09N UEFSSVNPTl9FUSwgLyogZW51bSBnY2Nfaml0X2NvbXBhcmlzb24gb3AgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2NjX2ppdF9s dmFsdWVfYXNfcnZhbHVlIChsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2lu dF8xX19fX3R0X18weGJjOTA0MCksIC8qIGdjY19qaXRfcnZhbHVlICphICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9f aW50XzFfMHhiYzkyNDApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqYiAqLwogIGdj Y19qaXRfYmxvY2tfYWRkX2Fzc2lnbm1lbnQgKGJsb2NrX2ptcF85XzJfMHhi ZjM3ZDAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2Nh bF9jb21wYXJpc29uXzBfMThfMHhiYzkyZDAsIC8qIGdjY19qaXRfbHZhbHVl ICpsdmFsdWUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBy dmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3R0X19fX19faW50 XzFfMHhiYzkzMzApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlICovCiAg Z2NjX2ppdF9sdmFsdWUgKmx2YWx1ZV9fX0xfX2NpX191X2xfYmFzZV9faW50 XzFfX19fdmFsdWVfXzB4YmM5M2UwPQogICAgZ2NjX2ppdF9ydmFsdWVfZGVy ZWZlcmVuY2VfZmllbGQgKGFkZHJlc3Nfb2ZfX0xfX2NpX191X2xfYmFzZV9f aW50XzFfXzB4YmM4ZjUwLCAvKiBnY2Nfaml0X3J2YWx1ZSAqcHRyICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZmllbGRfdmFsdWVfXzB4YmIyYmYwKTsgLyog Z2NjX2ppdF9maWVsZCAqZmllbGQgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZh bHVlX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX192YWx1ZV9fYl8weGJj OTQ0MCA9IAogICAgZ2NjX2ppdF9sdmFsdWVfYWNjZXNzX2ZpZWxkIChsdmFs dWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3ZhbHVlX18weGJjOTNl MCwgLypnY2Nfaml0X2x2YWx1ZSAqc3RydWN0X29yX3VuaW9uICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qZ2NjX2ppdF9s b2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGZpZWxkX2JfMHhiYjI2ZjApOwogIGdjY19qaXRfcnZhbHVlICpydmFs dWVfX2ludF8wXzB4YmM5NGEwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdf cnZhbHVlX2Zyb21faW50IChjdHh0XzB4YmZkODIwLCAvKiBnY2Nfaml0X2Nv bnRleHQgKmN0eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB0eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2ppdF90eXBl ICpudW1lcmljX3R5cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAwKTsgLyogaW50IHZhbHVlICovCiAgZ2NjX2ppdF9s dmFsdWUgKmxvY2FsX2NvbXBhcmlzb25fMF8xOV8weGJjOTUzMCA9CiAgICBn Y2Nfaml0X2Z1bmN0aW9uX25ld19sb2NhbCAoZnVuY19yYXZpZjFfMHhiZjUy YzAsIC8qIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmMgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBl X2Jvb2xfMHhiYjE1OTAsIC8qIGdjY19qaXRfdHlwZSAqdHlwZSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICJjb21wYXJpc29uXzBfMTki KTsgLyogY29uc3QgY2hhciAqbmFtZSAqLwogIGdjY19qaXRfcnZhbHVlICpy dmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3ZhbHVlX19iX19f X19pbnRfMF8weGJjOTU5MCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2Nv bXBhcmlzb24gKGN0eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxv YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBHQ0Nf SklUX0NPTVBBUklTT05fRVEsIC8qIGVudW0gZ2NjX2ppdF9jb21wYXJpc29u IG9wICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdj Y19qaXRfbHZhbHVlX2FzX3J2YWx1ZSAobHZhbHVlX19fTF9fY2lfX3VfbF9i YXNlX19pbnRfMV9fX192YWx1ZV9fYl8weGJjOTQ0MCksIC8qIGdjY19qaXRf cnZhbHVlICphICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHJ2YWx1ZV9faW50XzBfMHhiYzk0YTApOyAvKiBnY2Nfaml0X3J2YWx1 ZSAqYiAqLwogIGdjY19qaXRfYmxvY2tfYWRkX2Fzc2lnbm1lbnQgKGJsb2Nr X2ptcF85XzJfMHhiZjM3ZDAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nf aml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBsb2NhbF9jb21wYXJpc29uXzBfMTlfMHhiYzk1MzAsIC8qIGdj Y19qaXRfbHZhbHVlICpsdmFsdWUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBydmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19f X3ZhbHVlX19iX19fX19pbnRfMF8weGJjOTU5MCk7IC8qIGdjY19qaXRfcnZh bHVlICpydmFsdWUgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX2NvbXBh cmlzb25fMF8xOF9fX19jb21wYXJpc29uXzBfMTlfMHhiYzk2OTAgPQogICAg Z2NjX2ppdF9jb250ZXh0X25ld19iaW5hcnlfb3AgKGN0eHRfMHhiZmQ4MjAs CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyog Z2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgR0NDX0pJVF9CSU5BUllfT1BfTE9HSUNBTF9BTkQs IC8qIGVudW0gZ2NjX2ppdF9iaW5hcnlfb3Agb3AgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2Jvb2xfMHhiYjE1OTAsIC8q IGdjY19qaXRfdHlwZSAqcmVzdWx0X3R5cGUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUg KGxvY2FsX2NvbXBhcmlzb25fMF8xOF8weGJjOTJkMCksIC8qIGdjY19qaXRf cnZhbHVlICphICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZ2NjX2ppdF9sdmFsdWVfYXNfcnZhbHVlIChsb2NhbF9jb21wYXJpc29u XzBfMTlfMHhiYzk1MzApKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmIgKi8KICBn Y2Nfaml0X3J2YWx1ZSAqcnZhbHVlX2NvbXBhcmlzb25fMF8xN19fX19jb21w YXJpc29uXzBfMThfX19fY29tcGFyaXNvbl8wXzE5XzB4YmM5NmYwID0KICAg IGdjY19qaXRfY29udGV4dF9uZXdfYmluYXJ5X29wIChjdHh0XzB4YmZkODIw LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIEdDQ19KSVRfQklOQVJZX09QX0xPR0lDQUxfT1Is IC8qIGVudW0gZ2NjX2ppdF9iaW5hcnlfb3Agb3AgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2Jvb2xfMHhiYjE1OTAsIC8q IGdjY19qaXRfdHlwZSAqcmVzdWx0X3R5cGUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUg KGxvY2FsX2NvbXBhcmlzb25fMF8xN18weGJjOTEzMCksIC8qIGdjY19qaXRf cnZhbHVlICphICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcnZhbHVlX2NvbXBhcmlzb25fMF8xOF9fX19jb21wYXJpc29uXzBfMTlf MHhiYzk2OTApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqYiAqLwogIGdjY19qaXRf YmxvY2tfYWRkX2Fzc2lnbm1lbnQgKGJsb2NrX2ptcF85XzJfMHhiZjM3ZDAs IC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2NhbF9pc2Zh bHNlXzBfMTZfMHhiYzhmZTAsIC8qIGdjY19qaXRfbHZhbHVlICpsdmFsdWUg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfY29t cGFyaXNvbl8wXzE3X19fX2NvbXBhcmlzb25fMF8xOF9fX19jb21wYXJpc29u XzBfMTlfMHhiYzk2ZjApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlICov CiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9fX2lzZmFsc2VfMF8xNl9fMHhi Yzk3YTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld191bmFyeV9vcCAoY3R4 dF8weGJmZDgyMCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgR0NDX0pJVF9VTkFSWV9PUF9MT0dJ Q0FMX05FR0FURSwgLyogZW51bSBnY2Nfaml0X3VuYXJ5X29wIG9wICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlX2Jvb2xfMHhi YjE1OTAsIC8qIGdjY19qaXRfdHlwZSAqcmVzdWx0X3R5cGUgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIGdjY19qaXRfbHZhbHVlX2Fz X3J2YWx1ZSAobG9jYWxfaXNmYWxzZV8wXzE2XzB4YmM4ZmUwKSk7IC8qIGdj Y19qaXRfcnZhbHVlICphICovCiAgZ2NjX2ppdF9ibG9jayAqYmxvY2tfT1Bf VEVTVF9kb19qbXBfOV8yMF8weGJjOTg0MCA9CiAgICBnY2Nfaml0X2Z1bmN0 aW9uX25ld19ibG9jayAoZnVuY19yYXZpZjFfMHhiZjUyYzAsICJPUF9URVNU X2RvX2ptcF85XzIwIik7CiAgZ2NjX2ppdF9ibG9jayAqYmxvY2tfT1BfVEVT VF9kb19za2lwXzlfMjFfMHhiYzk5NjAgPQogICAgZ2NjX2ppdF9mdW5jdGlv bl9uZXdfYmxvY2sgKGZ1bmNfcmF2aWYxXzB4YmY1MmMwLCAiT1BfVEVTVF9k b19za2lwXzlfMjEiKTsKICBnY2Nfaml0X2Jsb2NrX2VuZF93aXRoX2NvbmRp dGlvbmFsIChibG9ja19qbXBfOV8yXzB4YmYzN2QwLCAvKmdjY19qaXRfYmxv Y2sgKmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnZhbHVlX19faXNm YWxzZV8wXzE2X18weGJjOTdhMCwgLyogZ2NjX2ppdF9ydmFsdWUgKmJvb2x2 YWwgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi bG9ja19PUF9URVNUX2RvX2ptcF85XzIwXzB4YmM5ODQwLCAvKiBnY2Nfaml0 X2Jsb2NrICpvbl90cnVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgYmxvY2tfT1BfVEVTVF9kb19za2lwXzlfMjFfMHhiYzk5 NjApOyAvKiBnY2Nfaml0X2Jsb2NrICpvbl9mYWxzZSAqLwogIGdjY19qaXRf YmxvY2tfZW5kX3dpdGhfanVtcCAoYmxvY2tfT1BfVEVTVF9kb19qbXBfOV8y MF8weGJjOTg0MCwgLypnY2Nfaml0X2Jsb2NrICpibG9jayAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBi bG9ja19qbXBfMTJfM18weGJmMzVhMCk7IC8qIGdjY19qaXRfYmxvY2sgKnRh cmdldCAqLwogIGdjY19qaXRfYmxvY2tfZW5kX3dpdGhfanVtcCAoYmxvY2tf T1BfVEVTVF9kb19za2lwXzlfMjFfMHhiYzk5NjAsIC8qZ2NjX2ppdF9ibG9j ayAqYmxvY2sgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5V TEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgYmxvY2tfam1wXzEyXzNfMHhiZjM1YTApOyAv KiBnY2Nfaml0X2Jsb2NrICp0YXJnZXQgKi8KICBnY2Nfaml0X3J2YWx1ZSAq cnZhbHVlX19pbnRfMV8weGJjOWE4MCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X3J2YWx1ZV9mcm9tX2ludCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2pp dF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRf dHlwZSAqbnVtZXJpY190eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgMSk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19q aXRfbHZhbHVlICpsdmFsdWVfTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fMHhi ZjFhZjAgPSAKICAgIGdjY19qaXRfY29udGV4dF9uZXdfYXJyYXlfYWNjZXNz IChjdHh0XzB4YmZkODIwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KmdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9MX19jaV9fdV9sX2Jhc2VfMHhi ZjMwNjAsIC8qIGdjY19qaXRfcnZhbHVlICpwdHIgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfX2ludF8xXzB4YmM5 YTgwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmluZGV4ICovCiAgZ2NjX2ppdF9y dmFsdWUgKmFkZHJlc3Nfb2ZfX0xfX2NpX191X2xfYmFzZV9faW50XzFfXzB4 YmM5YWQwID0KICAgIGdjY19qaXRfbHZhbHVlX2dldF9hZGRyZXNzIChsdmFs dWVfTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fMHhiZjFhZjAsIC8qIGdjY19q aXRfbHZhbHVlICpsdmFsdWUgKi8KICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBOVUxMKTsgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAg Z2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50XzBfMHhiYzliMjAgPQogICAg Z2NjX2ppdF9jb250ZXh0X25ld19ydmFsdWVfZnJvbV9pbnQgKGN0eHRfMHhi ZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIx OGUwLCAvKiBnY2Nfaml0X3R5cGUgKm51bWVyaWNfdHlwZSAqLwogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOyAvKiBpbnQg dmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlX19fTF9fY2lfX3Vf bF9iYXNlX19pbnRfMV9fX192YWx1ZV9fMHhiYzg4OTA9CiAgICBnY2Nfaml0 X3J2YWx1ZV9kZXJlZmVyZW5jZV9maWVsZCAoYWRkcmVzc19vZl9fTF9fY2lf X3VfbF9iYXNlX19pbnRfMV9fMHhiYzlhZDAsIC8qIGdjY19qaXRfcnZhbHVl ICpwdHIgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmaWVsZF92YWx1ZV9fMHhi YjJiZjApOyAvKiBnY2Nfaml0X2ZpZWxkICpmaWVsZCAqLwogIGdjY19qaXRf bHZhbHVlICpsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3Zh bHVlX19iXzB4YmM4OGYwID0gCiAgICBnY2Nfaml0X2x2YWx1ZV9hY2Nlc3Nf ZmllbGQgKGx2YWx1ZV9fX0xfX2NpX191X2xfYmFzZV9faW50XzFfX19fdmFs dWVfXzB4YmM4ODkwLCAvKmdjY19qaXRfbHZhbHVlICpzdHJ1Y3Rfb3JfdW5p b24gKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwg LypnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZmllbGRfYl8weGJiMjZmMCk7CiAgZ2NjX2ppdF9i bG9ja19hZGRfYXNzaWdubWVudCAoYmxvY2tfam1wXzEyXzNfMHhiZjM1YTAs IC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsdmFsdWVfX19M X19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3ZhbHVlX19iXzB4YmM4OGYwLCAv KiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgcnZhbHVlX19pbnRfMF8weGJjOWIyMCk7IC8qIGdj Y19qaXRfcnZhbHVlICpydmFsdWUgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZh bHVlX19pbnRfMV8weGJjODlhMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X3J2YWx1ZV9mcm9tX2ludCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9j b250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlw ZSAqbnVtZXJpY190eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgMSk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19qaXRf bHZhbHVlICpsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19fX3R0 X18weGJjODlmMD0KICAgIGdjY19qaXRfcnZhbHVlX2RlcmVmZXJlbmNlX2Zp ZWxkIChhZGRyZXNzX29mX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX18weGJj OWFkMCwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGZpZWxkX3R0X18weGJiMmNhMCk7IC8qIGdjY19qaXRfZmllbGQg KmZpZWxkICovCiAgZ2NjX2ppdF9ibG9ja19hZGRfYXNzaWdubWVudCAoYmxv Y2tfam1wXzEyXzNfMHhiZjM1YTAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBsdmFsdWVfX19MX19jaV9fdV9sX2Jhc2VfX2ludF8xX19f X3R0X18weGJjODlmMCwgLyogZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZSAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9faW50XzFf MHhiYzg5YTApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlICovCiAgZ2Nj X2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50XzFfMHhiYzhhYTAgPQogICAgZ2Nj X2ppdF9jb250ZXh0X25ld19ydmFsdWVfZnJvbV9pbnQgKGN0eHRfMHhiZmQ4 MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUw LCAvKiBnY2Nfaml0X3R5cGUgKm51bWVyaWNfdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEpOyAvKiBpbnQgdmFs dWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlX0xfX2NpX191X2xfYmFz ZV9faW50XzFfXzB4YmM4YWYwID0gCiAgICBnY2Nfaml0X2NvbnRleHRfbmV3 X2FycmF5X2FjY2VzcyAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250 ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfTF9fY2lf X3VfbF9iYXNlXzB4YmYzMDYwLCAvKiBnY2Nfaml0X3J2YWx1ZSAqcHRyICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnZhbHVl X19pbnRfMV8weGJjOGFhMCk7IC8qIGdjY19qaXRfcnZhbHVlICppbmRleCAq LwogIGdjY19qaXRfcnZhbHVlICphZGRyZXNzX29mX19MX19jaV9fdV9sX2Jh c2VfX2ludF8xX18weGJjOGI1MCA9CiAgICBnY2Nfaml0X2x2YWx1ZV9nZXRf YWRkcmVzcyAobHZhbHVlX0xfX2NpX191X2xfYmFzZV9faW50XzFfXzB4YmM4 YWYwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCk7IC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogIGdjY19qaXRfcnZhbHVlICpydmFsdWVfX2ludF8yXzB4 YmM4YmEwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfcnZhbHVlX2Zyb21f aW50IChjdHh0XzB4YmZkODIwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0eHQg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0 eXBlX2ludF8weGJiMThlMCwgLyogZ2NjX2ppdF90eXBlICpudW1lcmljX3R5 cGUgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAyKTsgLyogaW50IHZhbHVlICovCiAgZ2NjX2ppdF9sdmFsdWUgKmx2YWx1 ZV9MX19jaV9fdV9sX2Jhc2VfX2ludF8yX18weGJjOGJmMCA9IAogICAgZ2Nj X2ppdF9jb250ZXh0X25ld19hcnJheV9hY2Nlc3MgKGN0eHRfMHhiZmQ4MjAs IC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcnZhbHVlX0xfX2NpX191X2xfYmFzZV8weGJmMzA2MCwgLyogZ2NjX2pp dF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIHJ2YWx1ZV9faW50XzJfMHhiYzhiYTApOyAvKiBnY2Nfaml0 X3J2YWx1ZSAqaW5kZXggKi8KICBnY2Nfaml0X3J2YWx1ZSAqYWRkcmVzc19v Zl9fTF9fY2lfX3VfbF9iYXNlX19pbnRfMl9fMHhiYzhjNTAgPQogICAgZ2Nj X2ppdF9sdmFsdWVfZ2V0X2FkZHJlc3MgKGx2YWx1ZV9MX19jaV9fdV9sX2Jh c2VfX2ludF8yX18weGJjOGJmMCwgLyogZ2NjX2ppdF9sdmFsdWUgKmx2YWx1 ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwpOyAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICBnY2Nfaml0X2x2YWx1ZSAq bHZhbHVlX0xfX3RvcF8weGJjOGNhMD0KICAgIGdjY19qaXRfcnZhbHVlX2Rl cmVmZXJlbmNlX2ZpZWxkIChnY2Nfaml0X3BhcmFtX2FzX3J2YWx1ZSAocGFy YW1fTF8weGJjODBlMCksIC8qIGdjY19qaXRfcnZhbHVlICpwdHIgKi8KICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBn Y2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBmaWVsZF90b3BfMHhiYmFiMjApOyAvKiBnY2Nf aml0X2ZpZWxkICpmaWVsZCAqLwogIGdjY19qaXRfYmxvY2tfYWRkX2Fzc2ln bm1lbnQgKGJsb2NrX2ptcF8xMl8zXzB4YmYzNWEwLCAvKmdjY19qaXRfYmxv Y2sgKmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg TlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgbHZhbHVlX0xfX3RvcF8weGJjOGNhMCwg LyogZ2NjX2ppdF9sdmFsdWUgKmx2YWx1ZSAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGFkZHJlc3Nfb2ZfX0xfX2NpX191X2xfYmFzZV9f aW50XzJfXzB4YmM4YzUwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZSAq LwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVfY2xfX3BfX3NpemVwXzB4YmM4 ZDUwPQogICAgZ2NjX2ppdF9ydmFsdWVfZGVyZWZlcmVuY2VfZmllbGQgKGdj Y19qaXRfbHZhbHVlX2FzX3J2YWx1ZSAobHZhbHVlX2NsX19wXzB4YmYzMzIw KSwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGZpZWxkX3NpemVwXzB4YmI1NzAwKTsgLyogZ2NjX2ppdF9maWVsZCAq ZmllbGQgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX19pbnRfMF8weGJj OGRiMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9tX2lu dCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlw ZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqbnVtZXJpY190eXBl ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MCk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19qaXRfbHZhbHVlICpsb2NhbF9j b21wYXJpc29uXzBfMjJfMHhiZTY2MjAgPQogICAgZ2NjX2ppdF9mdW5jdGlv bl9uZXdfbG9jYWwgKGZ1bmNfcmF2aWYxXzB4YmY1MmMwLCAvKiBnY2Nfaml0 X2Z1bmN0aW9uICpmdW5jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZV9ib29sXzB4YmIxNTkw LCAvKiBnY2Nfaml0X3R5cGUgKnR5cGUgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAiY29tcGFyaXNvbl8wXzIyIik7IC8qIGNvbnN0IGNo YXIgKm5hbWUgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX2NsX19wX19z aXplcF9fX19pbnRfMF8weGJlNjY4MCA9CiAgICBnY2Nfaml0X2NvbnRleHRf bmV3X2NvbXBhcmlzb24gKGN0eHRfMHhiZmQ4MjAsCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRp b24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBHQ0NfSklUX0NPTVBBUklTT05fR1QsIC8qIGVudW0gZ2NjX2ppdF9jb21w YXJpc29uIG9wICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGdjY19qaXRfbHZhbHVlX2FzX3J2YWx1ZSAobHZhbHVlX2NsX19wX19z aXplcF8weGJjOGQ1MCksIC8qIGdjY19qaXRfcnZhbHVlICphICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9faW50XzBf MHhiYzhkYjApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqYiAqLwogIGdjY19qaXRf YmxvY2tfYWRkX2Fzc2lnbm1lbnQgKGJsb2NrX2ptcF8xMl8zXzB4YmYzNWEw LCAvKmdjY19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9j ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9jYWxfY29t cGFyaXNvbl8wXzIyXzB4YmU2NjIwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZh bHVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnZhbHVl X2NsX19wX19zaXplcF9fX19pbnRfMF8weGJlNjY4MCk7IC8qIGdjY19qaXRf cnZhbHVlICpydmFsdWUgKi8KICBnY2Nfaml0X2Jsb2NrICpibG9ja19PUF9S RVRVUk5faWZfc2l6ZXBfZ3RfMF8xMl8yM18weGJlNjc3MCA9CiAgICBnY2Nf aml0X2Z1bmN0aW9uX25ld19ibG9jayAoZnVuY19yYXZpZjFfMHhiZjUyYzAs ICJPUF9SRVRVUk5faWZfc2l6ZXBfZ3RfMF8xMl8yMyIpOwogIGdjY19qaXRf YmxvY2sgKmJsb2NrX09QX1JFVFVSTl9lbHNlX3NpemVwX2d0XzBfMTJfMjRf MHhiZTY4MDAgPQogICAgZ2NjX2ppdF9mdW5jdGlvbl9uZXdfYmxvY2sgKGZ1 bmNfcmF2aWYxXzB4YmY1MmMwLCAiT1BfUkVUVVJOX2Vsc2Vfc2l6ZXBfZ3Rf MF8xMl8yNCIpOwogIGdjY19qaXRfYmxvY2tfZW5kX3dpdGhfY29uZGl0aW9u YWwgKGJsb2NrX2ptcF8xMl8zXzB4YmYzNWEwLCAvKmdjY19qaXRfYmxvY2sg KmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZ2NjX2ppdF9sdmFsdWVf YXNfcnZhbHVlIChsb2NhbF9jb21wYXJpc29uXzBfMjJfMHhiZTY2MjApLCAv KiBnY2Nfaml0X3J2YWx1ZSAqYm9vbHZhbCAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGJsb2NrX09QX1JFVFVSTl9pZl9zaXpl cF9ndF8wXzEyXzIzXzB4YmU2NzcwLCAvKiBnY2Nfaml0X2Jsb2NrICpvbl90 cnVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg YmxvY2tfT1BfUkVUVVJOX2Vsc2Vfc2l6ZXBfZ3RfMF8xMl8yNF8weGJlNjgw MCk7IC8qIGdjY19qaXRfYmxvY2sgKm9uX2ZhbHNlICovCiAgZ2NjX2ppdF9y dmFsdWUgKmFyZ3NfZm9yX19jYWxsX2x1YUZfY2xvc2VfX0xfX0xfX2NpX191 X2xfYmFzZV9fMHhiZTY4ZjBbMl0gPSB7CiAgICBnY2Nfaml0X3BhcmFtX2Fz X3J2YWx1ZSAocGFyYW1fTF8weGJjODBlMCksCiAgICBydmFsdWVfTF9fY2lf X3VfbF9iYXNlXzB4YmYzMDYwLAogIH07CiAgZ2NjX2ppdF9ydmFsdWUgKmNh bGxfbHVhRl9jbG9zZV9fTF9fTF9fY2lfX3VfbF9iYXNlX18weGJlNjhmMCA9 CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X2NhbGwgKGN0eHRfMHhiZmQ4MjAs IC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZnVuY19sdWFGX2Ns b3NlXzB4YmJkNzAwLCAvKiBnY2Nfaml0X2Z1bmN0aW9uICpmdW5jICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIDIsIC8qIGludCBudW1hcmdz ICAqLyAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJnc19mb3Jf X2NhbGxfbHVhRl9jbG9zZV9fTF9fTF9fY2lfX3VfbF9iYXNlX18weGJlNjhm MCk7IC8qIGdjY19qaXRfcnZhbHVlICoqYXJncyovCiAgZ2NjX2ppdF9ibG9j a19hZGRfZXZhbCAoYmxvY2tfT1BfUkVUVVJOX2lmX3NpemVwX2d0XzBfMTJf MjNfMHhiZTY3NzAsIC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICBjYWxsX2x1YUZf Y2xvc2VfX0xfX0xfX2NpX191X2xfYmFzZV9fMHhiZTY4ZjApOyAvKiBnY2Nf aml0X3J2YWx1ZSAqcnZhbHVlICovCiAgZ2NjX2ppdF9ibG9ja19lbmRfd2l0 aF9qdW1wIChibG9ja19PUF9SRVRVUk5faWZfc2l6ZXBfZ3RfMF8xMl8yM18w eGJlNjc3MCwgLypnY2Nfaml0X2Jsb2NrICpibG9jayAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2NhdGlv biAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBibG9j a19PUF9SRVRVUk5fZWxzZV9zaXplcF9ndF8wXzEyXzI0XzB4YmU2ODAwKTsg LyogZ2NjX2ppdF9ibG9jayAqdGFyZ2V0ICovCiAgZ2NjX2ppdF9ydmFsdWUg KmFyZ3NfZm9yX19jYWxsX2x1YURfcG9zY2FsbF9fTF9fX19MX19jaV9fdV9s X2Jhc2VfX2ludF8xX19fXzB4YmU2OWQwWzJdID0gewogICAgZ2NjX2ppdF9w YXJhbV9hc19ydmFsdWUgKHBhcmFtX0xfMHhiYzgwZTApLAogICAgYWRkcmVz c19vZl9fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fMHhiYzhiNTAsCiAgfTsK ICBnY2Nfaml0X3J2YWx1ZSAqY2FsbF9sdWFEX3Bvc2NhbGxfX0xfX19fTF9f Y2lfX3VfbF9iYXNlX19pbnRfMV9fX18weGJlNjlkMCA9CiAgICBnY2Nfaml0 X2NvbnRleHRfbmV3X2NhbGwgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRf Y29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgZnVuY19sdWFEX3Bvc2NhbGxfMHhiYmM5 NDAsIC8qIGdjY19qaXRfZnVuY3Rpb24gKmZ1bmMgKi8KICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgMiwgLyogaW50IG51bWFyZ3MgICovIAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBhcmdzX2Zvcl9fY2FsbF9sdWFE X3Bvc2NhbGxfX0xfX19fTF9fY2lfX3VfbF9iYXNlX19pbnRfMV9fX18weGJl NjlkMCk7IC8qIGdjY19qaXRfcnZhbHVlICoqYXJncyovCiAgZ2NjX2ppdF9i bG9ja19hZGRfZXZhbCAoYmxvY2tfT1BfUkVUVVJOX2Vsc2Vfc2l6ZXBfZ3Rf MF8xMl8yNF8weGJlNjgwMCwgLypnY2Nfaml0X2Jsb2NrICpibG9jayAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9j YXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgIGNhbGxf bHVhRF9wb3NjYWxsX19MX19fX0xfX2NpX191X2xfYmFzZV9faW50XzFfX19f MHhiZTY5ZDApOyAvKiBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlICovCiAgZ2Nj X2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50XzFfMHhiZTZhNzAgPQogICAgZ2Nj X2ppdF9jb250ZXh0X25ld19ydmFsdWVfZnJvbV9pbnQgKGN0eHRfMHhiZmQ4 MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50XzB4YmIxOGUw LCAvKiBnY2Nfaml0X3R5cGUgKm51bWVyaWNfdHlwZSAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDEpOyAvKiBpbnQgdmFs dWUgKi8KICBnY2Nfaml0X2Jsb2NrX2VuZF93aXRoX3JldHVybiAoYmxvY2tf T1BfUkVUVVJOX2Vsc2Vfc2l6ZXBfZ3RfMF8xMl8yNF8weGJlNjgwMCwgLypn Y2Nfaml0X2Jsb2NrICpibG9jayAqLwogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcnZhbHVlX19pbnRf MV8weGJlNmE3MCk7IC8qIGdjY19qaXRfcnZhbHVlICpydmFsdWUgKi8KICBn Y2Nfaml0X2Jsb2NrICpibG9ja19MSU5LX0JMT0NLXzEzXzI1XzB4YmU2YjQw ID0KICAgIGdjY19qaXRfZnVuY3Rpb25fbmV3X2Jsb2NrIChmdW5jX3Jhdmlm MV8weGJmNTJjMCwgIkxJTktfQkxPQ0tfMTNfMjUiKTsKICBnY2Nfaml0X3J2 YWx1ZSAqcnZhbHVlX19pbnRfMF8weGJlNmI5MCA9CiAgICBnY2Nfaml0X2Nv bnRleHRfbmV3X3J2YWx1ZV9mcm9tX2ludCAoY3R4dF8weGJmZDgyMCwgLyog Z2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgdHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdj Y19qaXRfdHlwZSAqbnVtZXJpY190eXBlICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgMCk7IC8qIGludCB2YWx1ZSAqLwog IGdjY19qaXRfbHZhbHVlICpsdmFsdWVfTF9fY2lfX3VfbF9iYXNlX19pbnRf MF9fMHhiZTZiZTAgPSAKICAgIGdjY19qaXRfY29udGV4dF9uZXdfYXJyYXlf YWNjZXNzIChjdHh0XzB4YmZkODIwLCAvKiBnY2Nfaml0X2NvbnRleHQgKmN0 eHQgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBO VUxMLCAvKmdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHJ2YWx1ZV9MX19jaV9fdV9sX2Jh c2VfMHhiZjMwNjAsIC8qIGdjY19qaXRfcnZhbHVlICpwdHIgKi8KICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfX2ludF8w XzB4YmU2YjkwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmluZGV4ICovCiAgZ2Nj X2ppdF9ydmFsdWUgKmFkZHJlc3Nfb2ZfX0xfX2NpX191X2xfYmFzZV9faW50 XzBfXzB4YmU2YzQwID0KICAgIGdjY19qaXRfbHZhbHVlX2dldF9hZGRyZXNz IChsdmFsdWVfTF9fY2lfX3VfbF9iYXNlX19pbnRfMF9fMHhiZTZiZTAsIC8q IGdjY19qaXRfbHZhbHVlICpsdmFsdWUgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBOVUxMKTsgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9j ICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50XzBfMHhiZTZjOTAg PQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19ydmFsdWVfZnJvbV9pbnQgKGN0 eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfaW50 XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKm51bWVyaWNfdHlwZSAqLwog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDApOyAv KiBpbnQgdmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlX0xfX2Np X191X2xfYmFzZV9faW50XzBfXzB4YmU2Y2UwID0gCiAgICBnY2Nfaml0X2Nv bnRleHRfbmV3X2FycmF5X2FjY2VzcyAoY3R4dF8weGJmZDgyMCwgLyogZ2Nj X2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgTlVMTCwgLypnY2Nfaml0X2xvY2F0aW9uICpsb2Mg Ki8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFs dWVfTF9fY2lfX3VfbF9iYXNlXzB4YmYzMDYwLCAvKiBnY2Nfaml0X3J2YWx1 ZSAqcHRyICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcnZhbHVlX19pbnRfMF8weGJlNmM5MCk7IC8qIGdjY19qaXRfcnZhbHVl ICppbmRleCAqLwogIGdjY19qaXRfcnZhbHVlICphZGRyZXNzX29mX19MX19j aV9fdV9sX2Jhc2VfX2ludF8wX18weGJlNmQ0MCA9CiAgICBnY2Nfaml0X2x2 YWx1ZV9nZXRfYWRkcmVzcyAobHZhbHVlX0xfX2NpX191X2xfYmFzZV9faW50 XzBfXzB4YmU2Y2UwLCAvKiBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlICovCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCk7IC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogIGdjY19qaXRfbHZhbHVlICpsdmFsdWVf TF9fdG9wXzB4YmU2ZDkwPQogICAgZ2NjX2ppdF9ydmFsdWVfZGVyZWZlcmVu Y2VfZmllbGQgKGdjY19qaXRfcGFyYW1fYXNfcnZhbHVlIChwYXJhbV9MXzB4 YmM4MGUwKSwgLyogZ2NjX2ppdF9ydmFsdWUgKnB0ciAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIGZpZWxkX3RvcF8weGJiYWIyMCk7IC8qIGdjY19qaXRfZmll bGQgKmZpZWxkICovCiAgZ2NjX2ppdF9ibG9ja19hZGRfYXNzaWdubWVudCAo YmxvY2tfTElOS19CTE9DS18xM18yNV8weGJlNmI0MCwgLypnY2Nfaml0X2Js b2NrICpibG9jayAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGx2YWx1ZV9MX190b3BfMHhiZTZkOTAs IC8qIGdjY19qaXRfbHZhbHVlICpsdmFsdWUgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBhZGRyZXNzX29mX19MX19jaV9fdV9sX2Jhc2Vf X2ludF8wX18weGJlNmQ0MCk7IC8qIGdjY19qaXRfcnZhbHVlICpydmFsdWUg Ki8KICBnY2Nfaml0X2x2YWx1ZSAqbHZhbHVlX2NsX19wX19zaXplcF8weGJl NmU0MD0KICAgIGdjY19qaXRfcnZhbHVlX2RlcmVmZXJlbmNlX2ZpZWxkIChn Y2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGx2YWx1ZV9jbF9fcF8weGJmMzMy MCksIC8qIGdjY19qaXRfcnZhbHVlICpwdHIgKi8KICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBmaWVsZF9zaXplcF8weGJiNTcwMCk7IC8qIGdjY19qaXRfZmllbGQg KmZpZWxkICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9faW50XzBfMHhi ZTZlYTAgPQogICAgZ2NjX2ppdF9jb250ZXh0X25ld19ydmFsdWVfZnJvbV9p bnQgKGN0eHRfMHhiZmQ4MjAsIC8qIGdjY19qaXRfY29udGV4dCAqY3R4dCAq LwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5 cGVfaW50XzB4YmIxOGUwLCAvKiBnY2Nfaml0X3R5cGUgKm51bWVyaWNfdHlw ZSAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IDApOyAvKiBpbnQgdmFsdWUgKi8KICBnY2Nfaml0X2x2YWx1ZSAqbG9jYWxf Y29tcGFyaXNvbl8wXzI2XzB4YmU2ZjMwID0KICAgIGdjY19qaXRfZnVuY3Rp b25fbmV3X2xvY2FsIChmdW5jX3JhdmlmMV8weGJmNTJjMCwgLyogZ2NjX2pp dF9mdW5jdGlvbiAqZnVuYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGVfYm9vbF8weGJiMTU5 MCwgLyogZ2NjX2ppdF90eXBlICp0eXBlICovCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgImNvbXBhcmlzb25fMF8yNiIpOyAvKiBjb25zdCBj aGFyICpuYW1lICovCiAgZ2NjX2ppdF9ydmFsdWUgKnJ2YWx1ZV9jbF9fcF9f c2l6ZXBfX19faW50XzBfMHhiZTZmOTAgPQogICAgZ2NjX2ppdF9jb250ZXh0 X25ld19jb21wYXJpc29uIChjdHh0XzB4YmZkODIwLAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0 aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgR0NDX0pJVF9DT01QQVJJU09OX0dULCAvKiBlbnVtIGdjY19qaXRfY29t cGFyaXNvbiBvcCAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGx2YWx1ZV9jbF9fcF9f c2l6ZXBfMHhiZTZlNDApLCAvKiBnY2Nfaml0X3J2YWx1ZSAqYSAqLwogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBydmFsdWVfX2ludF8w XzB4YmU2ZWEwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKmIgKi8KICBnY2Nfaml0 X2Jsb2NrX2FkZF9hc3NpZ25tZW50IChibG9ja19MSU5LX0JMT0NLXzEzXzI1 XzB4YmU2YjQwLCAvKmdjY19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgTlVMTCwgLyogZ2NjX2ppdF9sb2Nh dGlvbiAqbG9jICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg bG9jYWxfY29tcGFyaXNvbl8wXzI2XzB4YmU2ZjMwLCAvKiBnY2Nfaml0X2x2 YWx1ZSAqbHZhbHVlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgcnZhbHVlX2NsX19wX19zaXplcF9fX19pbnRfMF8weGJlNmY5MCk7IC8q IGdjY19qaXRfcnZhbHVlICpydmFsdWUgKi8KICBnY2Nfaml0X2Jsb2NrICpi bG9ja19PUF9SRVRVUk5faWZfc2l6ZXBfZ3RfMF8xM18yN18weGJlNzA4MCA9 CiAgICBnY2Nfaml0X2Z1bmN0aW9uX25ld19ibG9jayAoZnVuY19yYXZpZjFf MHhiZjUyYzAsICJPUF9SRVRVUk5faWZfc2l6ZXBfZ3RfMF8xM18yNyIpOwog IGdjY19qaXRfYmxvY2sgKmJsb2NrX09QX1JFVFVSTl9lbHNlX3NpemVwX2d0 XzBfMTNfMjhfMHhiZTcxMTAgPQogICAgZ2NjX2ppdF9mdW5jdGlvbl9uZXdf YmxvY2sgKGZ1bmNfcmF2aWYxXzB4YmY1MmMwLCAiT1BfUkVUVVJOX2Vsc2Vf c2l6ZXBfZ3RfMF8xM18yOCIpOwogIGdjY19qaXRfYmxvY2tfZW5kX3dpdGhf Y29uZGl0aW9uYWwgKGJsb2NrX0xJTktfQkxPQ0tfMTNfMjVfMHhiZTZiNDAs IC8qZ2NjX2ppdF9ibG9jayAqYmxvY2sgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBOVUxMLCAvKiBnY2Nfaml0X2xvY2F0aW9u ICpsb2MgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBnY2Nfaml0X2x2YWx1ZV9hc19ydmFsdWUgKGxvY2FsX2NvbXBhcmlzb25f MF8yNl8weGJlNmYzMCksIC8qIGdjY19qaXRfcnZhbHVlICpib29sdmFsICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYmxvY2tf T1BfUkVUVVJOX2lmX3NpemVwX2d0XzBfMTNfMjdfMHhiZTcwODAsIC8qIGdj Y19qaXRfYmxvY2sgKm9uX3RydWUgKi8KICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBibG9ja19PUF9SRVRVUk5fZWxzZV9zaXplcF9n dF8wXzEzXzI4XzB4YmU3MTEwKTsgLyogZ2NjX2ppdF9ibG9jayAqb25fZmFs c2UgKi8KICBnY2Nfaml0X3J2YWx1ZSAqYXJnc19mb3JfX2NhbGxfbHVhRl9j bG9zZV9fTF9fTF9fY2lfX3VfbF9iYXNlX18weGJlNzFiMFsyXSA9IHsKICAg IGdjY19qaXRfcGFyYW1fYXNfcnZhbHVlIChwYXJhbV9MXzB4YmM4MGUwKSwK ICAgIHJ2YWx1ZV9MX19jaV9fdV9sX2Jhc2VfMHhiZjMwNjAsCiAgfTsKICBn Y2Nfaml0X3J2YWx1ZSAqY2FsbF9sdWFGX2Nsb3NlX19MX19MX19jaV9fdV9s X2Jhc2VfXzB4YmU3MWIwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfY2Fs bCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICov CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19q aXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBmdW5jX2x1YUZfY2xvc2VfMHhiYmQ3MDAsIC8qIGdjY19qaXRfZnVu Y3Rpb24gKmZ1bmMgKi8KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg MiwgLyogaW50IG51bWFyZ3MgICovIAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBhcmdzX2Zvcl9fY2FsbF9sdWFGX2Nsb3NlX19MX19MX19jaV9f dV9sX2Jhc2VfXzB4YmU3MWIwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKiphcmdz Ki8KICBnY2Nfaml0X2Jsb2NrX2FkZF9ldmFsIChibG9ja19PUF9SRVRVUk5f aWZfc2l6ZXBfZ3RfMF8xM18yN18weGJlNzA4MCwgLypnY2Nfaml0X2Jsb2Nr ICpibG9jayAqLwogICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8q IGdjY19qaXRfbG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAg ICAgICAgIGNhbGxfbHVhRl9jbG9zZV9fTF9fTF9fY2lfX3VfbF9iYXNlX18w eGJlNzFiMCk7IC8qIGdjY19qaXRfcnZhbHVlICpydmFsdWUgKi8KICBnY2Nf aml0X2Jsb2NrX2VuZF93aXRoX2p1bXAgKGJsb2NrX09QX1JFVFVSTl9pZl9z aXplcF9ndF8wXzEzXzI3XzB4YmU3MDgwLCAvKmdjY19qaXRfYmxvY2sgKmJs b2NrICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBOVUxMLCAv KiBnY2Nfaml0X2xvY2F0aW9uICpsb2MgKi8KICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIGJsb2NrX09QX1JFVFVSTl9lbHNlX3NpemVwX2d0XzBf MTNfMjhfMHhiZTcxMTApOyAvKiBnY2Nfaml0X2Jsb2NrICp0YXJnZXQgKi8K ICBnY2Nfaml0X3J2YWx1ZSAqYXJnc19mb3JfX2NhbGxfbHVhRF9wb3NjYWxs X19MX19fX0xfX2NpX191X2xfYmFzZV9faW50XzBfX19fMHhiZTcyOTBbMl0g PSB7CiAgICBnY2Nfaml0X3BhcmFtX2FzX3J2YWx1ZSAocGFyYW1fTF8weGJj ODBlMCksCiAgICBhZGRyZXNzX29mX19MX19jaV9fdV9sX2Jhc2VfX2ludF8w X18weGJlNmM0MCwKICB9OwogIGdjY19qaXRfcnZhbHVlICpjYWxsX2x1YURf cG9zY2FsbF9fTF9fX19MX19jaV9fdV9sX2Jhc2VfX2ludF8wX19fXzB4YmU3 MjkwID0KICAgIGdjY19qaXRfY29udGV4dF9uZXdfY2FsbCAoY3R4dF8weGJm ZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0ICovCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRfbG9jYXRpb24g KmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmdW5jX2x1 YURfcG9zY2FsbF8weGJiYzk0MCwgLyogZ2NjX2ppdF9mdW5jdGlvbiAqZnVu YyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAyLCAvKiBpbnQg bnVtYXJncyAgKi8gCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFy Z3NfZm9yX19jYWxsX2x1YURfcG9zY2FsbF9fTF9fX19MX19jaV9fdV9sX2Jh c2VfX2ludF8wX19fXzB4YmU3MjkwKTsgLyogZ2NjX2ppdF9ydmFsdWUgKiph cmdzKi8KICBnY2Nfaml0X2Jsb2NrX2FkZF9ldmFsIChibG9ja19PUF9SRVRV Uk5fZWxzZV9zaXplcF9ndF8wXzEzXzI4XzB4YmU3MTEwLCAvKmdjY19qaXRf YmxvY2sgKmJsb2NrICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgTlVM TCwgLyogZ2NjX2ppdF9sb2NhdGlvbiAqbG9jICovCiAgICAgICAgICAgICAg ICAgICAgICAgICAgY2FsbF9sdWFEX3Bvc2NhbGxfX0xfX19fTF9fY2lfX3Vf bF9iYXNlX19pbnRfMF9fX18weGJlNzI5MCk7IC8qIGdjY19qaXRfcnZhbHVl ICpydmFsdWUgKi8KICBnY2Nfaml0X3J2YWx1ZSAqcnZhbHVlX19pbnRfMV8w eGJlNzMzMCA9CiAgICBnY2Nfaml0X2NvbnRleHRfbmV3X3J2YWx1ZV9mcm9t X2ludCAoY3R4dF8weGJmZDgyMCwgLyogZ2NjX2ppdF9jb250ZXh0ICpjdHh0 ICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dHlwZV9pbnRfMHhiYjE4ZTAsIC8qIGdjY19qaXRfdHlwZSAqbnVtZXJpY190 eXBlICovCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgMSk7IC8qIGludCB2YWx1ZSAqLwogIGdjY19qaXRfYmxvY2tfZW5kX3dp dGhfcmV0dXJuIChibG9ja19PUF9SRVRVUk5fZWxzZV9zaXplcF9ndF8wXzEz XzI4XzB4YmU3MTEwLCAvKmdjY19qaXRfYmxvY2sgKmJsb2NrICovCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIE5VTEwsIC8qIGdjY19qaXRf bG9jYXRpb24gKmxvYyAqLwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICBydmFsdWVfX2ludF8xXzB4YmU3MzMwKTsgLyogZ2NjX2ppdF9ydmFs dWUgKnJ2YWx1ZSAqLwp9Cg== --001a114fd454af1cb9051a623fe3--