From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9AF2FA0C45 for ; Wed, 6 Oct 2021 00:13:49 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6A65641321; Wed, 6 Oct 2021 00:13:49 +0200 (CEST) Received: from mail-pg1-f225.google.com (mail-pg1-f225.google.com [209.85.215.225]) by mails.dpdk.org (Postfix) with ESMTP id 663CC41297 for ; Wed, 6 Oct 2021 00:13:47 +0200 (CEST) Received: by mail-pg1-f225.google.com with SMTP id 66so632683pgc.9 for ; Tue, 05 Oct 2021 15:13:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=iol.unh.edu; s=unh-iol; h=mime-version:subject:from:to:cc:message-id:date; bh=07rkjEjpOfO1MEyayNPLCZMjMAuSy5w43e1RS9BA6Po=; b=gucPO21+YEXIr1xVAHPQbUszRwg1b13dIyDni4GZAWlSEAuldjEupyhpKQ6Mg4kr1e 4yz09pDTl+jKZc14/RrTnctaj3B5DNFuuHGTDEIBpThzYXjceBRCzdtWshTFdv2p+HwL OjC/IK15m7u9Nv6b5I64espW0+n+d4TdimVmg= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:subject:from:to:cc:message-id:date; bh=07rkjEjpOfO1MEyayNPLCZMjMAuSy5w43e1RS9BA6Po=; b=s1vr080/eE7IUx6Lmo5SBxOH+VbBzWQBwfcu9MNoWl44HYCxEyEq7BNJL4ayeOyp7t 11oxFMd/8otjByf7EIkQI2HVDp9Vk5U2k5CBZ+HHTnF6fMZ3ywvHrcppHXKIHIuelYWQ /0U5OS61i+VUscxAqaE8xfMLZ5wR92zFipCwym6UaY9EyO86IxooTBQo1GKFX0gaW1Xw Z5ldIVM0JNX/mYStW8mOn0XU+SIYbJT5L1X46xUIOkQkQmm1BEuDQFBzW6+GvHOXERpv +n6a/gqFIexVYUVVn+AXuOtODBwpZgo2evr4B7t/VMvGw0AYy9Cuk5JqewcieFvlOEXv P34g== X-Gm-Message-State: AOAM530ssUteqqJD8loAlh04BeReEyTPEvy8dPoZh14L8IiyzERFwl6Z +7LFpyg7yRdaobt8N6OCKTJG2PxEXhiO8RPpxfVI5MVbAtQPmw== X-Google-Smtp-Source: ABdhPJzcGLX0iGsgIGPnT2JtV7NybIGiHjTvbCUy3DGFUxwrqIn60FJy6vbNVSKeJQsnYNSObEIWOHnNmsN6 X-Received: by 2002:a62:31c5:0:b0:447:cd37:61f8 with SMTP id x188-20020a6231c5000000b00447cd3761f8mr33137626pfx.29.1633472026577; Tue, 05 Oct 2021 15:13:46 -0700 (PDT) Received: from postal.iol.unh.edu (postal.iol.unh.edu. [132.177.123.84]) by smtp-relay.gmail.com with ESMTPS id z2sm782479pjb.15.2021.10.05.15.13.46 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 05 Oct 2021 15:13:46 -0700 (PDT) X-Relaying-Domain: iol.unh.edu Received: from noxus.dpdklab.iol.unh.edu (unknown [IPv6:2606:4100:3880:1722::4]) by postal.iol.unh.edu (Postfix) with ESMTP id A378D605247D; Tue, 5 Oct 2021 18:13:45 -0400 (EDT) Received: from noxus.dpdklab.iol.unh.edu (localhost [IPv6:::1]) by noxus.dpdklab.iol.unh.edu (Postfix) with ESMTP id 9D5D06D535; Tue, 5 Oct 2021 18:13:45 -0400 (EDT) Content-Type: multipart/mixed; boundary="===============6754930460071255578==" MIME-Version: 1.0 From: dpdklab@iol.unh.edu To: test-report@dpdk.org Cc: dpdk-test-reports@iol.unh.edu Message-Id: <20211005221345.9D5D06D535@noxus.dpdklab.iol.unh.edu> Date: Tue, 5 Oct 2021 18:13:45 -0400 (EDT) Subject: [dpdk-test-report] |WARNING| pw99892-99897 [PATCH] [v4, 6/6] examples/ipsec-secgw: clear soft expiry configuration X-BeenThere: test-report@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: automatic DPDK test reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: test-report-bounces@dpdk.org Sender: "test-report" --===============6754930460071255578== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 VGVzdC1MYWJlbDogaW9sLXRlc3RpbmcKVGVzdC1TdGF0dXM6IFdBUk5JTkcKaHR0cDovL2RwZGsu b3JnL3BhdGNoLzk5ODkyCgpfYXBwbHkgcGF0Y2ggZmFpbHVyZV8KClN1Ym1pdHRlcjogQW5vb2Ig Sm9zZXBoIDxhbm9vYmpAbWFydmVsbC5jb20+CkRhdGU6IFR1ZXNkYXksIFNlcHRlbWJlciAyOCAy MDIxIDEwOjU5OjU5IApBcHBsaWVkIG9uOiBDb21taXRJRDoyNzAwMzI2MDg1MDMzZmQxMzMzOWE4 ZGUzMWY1OGE5NWQxZWU5YzNmCkFwcGx5IHBhdGNoIHNldCA5OTg5Mi05OTg5NyBmYWlsZWQ6CgpD aGVja2luZyBwYXRjaCBhcHAvdGVzdC90ZXN0X2NyeXB0b2Rldl9zZWN1cml0eV9pcHNlY190ZXN0 X3ZlY3RvcnMuaC4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkucHJvdG8gPSBSVEVf U0VDVVJJVFlfSVBTRUNfU0FfUFJPVE9fRVNQLAoJCS5tb2RlID0gUlRFX1NFQ1VSSVRZX0lQU0VD X1NBX01PREVfVFVOTkVMLAoJCS50dW5uZWwudHlwZSA9IFJURV9TRUNVUklUWV9JUFNFQ19UVU5O RUxfSVBWNCwKCQkuZXNuX3NvZnRfbGltaXQgPSAwLAoJCS5yZXBsYXlfd2luX3N6ID0gMCwKCX0s CgoKZXJyb3I6IHBhdGNoIGZhaWxlZDogYXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXZfc2VjdXJpdHlf aXBzZWNfdGVzdF92ZWN0b3JzLmg6OTgKZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJLnBy b3RvID0gUlRFX1NFQ1VSSVRZX0lQU0VDX1NBX1BST1RPX0VTUCwKCQkubW9kZSA9IFJURV9TRUNV UklUWV9JUFNFQ19TQV9NT0RFX1RVTk5FTCwKCQkudHVubmVsLnR5cGUgPSBSVEVfU0VDVVJJVFlf SVBTRUNfVFVOTkVMX0lQVjQsCgkJLmVzbl9zb2Z0X2xpbWl0ID0gMCwKCQkucmVwbGF5X3dpbl9z eiA9IDAsCgl9LAoKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFwcC90ZXN0L3Rlc3RfY3J5cHRvZGV2 X3NlY3VyaXR5X2lwc2VjX3Rlc3RfdmVjdG9ycy5oOjE5NQplcnJvcjogd2hpbGUgc2VhcmNoaW5n IGZvcjoKCQkucHJvdG8gPSBSVEVfU0VDVVJJVFlfSVBTRUNfU0FfUFJPVE9fRVNQLAoJCS5tb2Rl ID0gUlRFX1NFQ1VSSVRZX0lQU0VDX1NBX01PREVfVFVOTkVMLAoJCS50dW5uZWwudHlwZSA9IFJU RV9TRUNVUklUWV9JUFNFQ19UVU5ORUxfSVBWNCwKCQkuZXNuX3NvZnRfbGltaXQgPSAwLAoJCS5y ZXBsYXlfd2luX3N6ID0gMCwKCX0sCgoKZXJyb3I6IHBhdGNoIGZhaWxlZDogYXBwL3Rlc3QvdGVz dF9jcnlwdG9kZXZfc2VjdXJpdHlfaXBzZWNfdGVzdF92ZWN0b3JzLmg6Mjk1CkNoZWNraW5nIHBh dGNoIGRvYy9ndWlkZXMvcmVsX25vdGVzL2RlcHJlY2F0aW9uLnJzdC4uLgplcnJvcjogd2hpbGUg c2VhcmNoaW5nIGZvcjoKKiBjbWRsaW5lOiBgYGNtZGxpbmVgYCBzdHJ1Y3R1cmUgd2lsbCBiZSBt YWRlIG9wYXF1ZSB0byBoaWRlIHBsYXRmb3JtLXNwZWNpZmljCiAgY29udGVudC4gT24gTGludXgg YW5kIEZyZWVCU0QsIHN1cHBvcnRlZCBwcmlvciB0byBEUERLIDIwLjExLAogIG9yaWdpbmFsIHN0 cnVjdHVyZSB3aWxsIGJlIGtlcHQgdW50aWwgRFBESyAyMS4xMS4KCiogY3J5cHRvZGV2OiBUaGUg c3RydWN0dXJlIGBgcnRlX2NyeXB0b19vcGBgIHdvdWxkIGJlIHVwZGF0ZWQgdG8gcmVkdWNlCiAg cmVzZXJ2ZWQgYnl0ZXMgdG8gMiAoZnJvbSAzKSwgYW5kIHVzZSAxIGJ5dGUgdG8gaW5kaWNhdGUg d2FybmluZ3MgYW5kIG90aGVyCiAgaW5mb3JtYXRpb24gZnJvbSB0aGUgY3J5cHRvL3NlY3VyaXR5 IG9wZXJhdGlvbi4gVGhpcyBmaWVsZCB3aWxsIGJlIHVzZWQgdG8KICBjb21tdW5pY2F0ZSBldmVu dHMgc3VjaCBhcyBzb2Z0IGV4cGlyeSB3aXRoIElQc2VjIGluIGxvb2thc2lkZSBtb2RlLgoKZXJy b3I6IHBhdGNoIGZhaWxlZDogZG9jL2d1aWRlcy9yZWxfbm90ZXMvZGVwcmVjYXRpb24ucnN0OjI3 NQpDaGVja2luZyBwYXRjaCBkb2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIxXzExLnJzdC4u LgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKICBhcyBpdCBpcyBmb3IgZHJpdmVycyBvbmx5 IGFuZCBzaG91bGQgYmUgcHJpdmF0ZSB0byBEUERLLCBhbmQgbm90CiAgaW5zdGFsbGVkIGZvciBh cHAgdXNlLgoKCkFCSSBDaGFuZ2VzCi0tLS0tLS0tLS0tCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBk b2MvZ3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIxXzExLnJzdDoxNTIKZXJyb3I6IHdoaWxlIHNl YXJjaGluZyBmb3I6CiAgaGF2ZSBtdWNoIHByb2Nlc3NpbmcgaW4gUE1EIHNwZWNpZmljIGNhbGxi YWNrcyBidXQganVzdCA2NC1iaXQgc2V0L2dldC4KICBUaGlzIGF2b2lkcyBhIHBlciBwa3QgZnVu Y3Rpb24gcG9pbnRlciBqdW1wIG92ZXJoZWFkIGZvciBzdWNoIFBNRCdzLgoKCktub3duIElzc3Vl cwotLS0tLS0tLS0tLS0KCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRvYy9ndWlkZXMvcmVsX25vdGVz L3JlbGVhc2VfMjFfMTEucnN0OjE3NApDaGVja2luZyBwYXRjaCBleGFtcGxlcy9pcHNlYy1zZWNn dy9pcHNlYy5jLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJCX0KCQkvKiBUT0RPIHN1 cHBvcnQgZm9yIFRyYW5zcG9ydCAqLwoJfQoJaXBzZWMtPmVzbl9zb2Z0X2xpbWl0ID0gSVBTRUNf T0ZGTE9BRF9FU05fU09GVExJTUlUOwoJaXBzZWMtPnJlcGxheV93aW5fc3ogPSBhcHBfc2FfcHJt LndpbmRvd19zaXplOwoJaXBzZWMtPm9wdGlvbnMuZXNuID0gYXBwX3NhX3BybS5lbmFibGVfZXNu OwoJaXBzZWMtPm9wdGlvbnMudWRwX2VuY2FwID0gc2EtPnVkcF9lbmNhcDsKCmVycm9yOiBwYXRj aCBmYWlsZWQ6IGV4YW1wbGVzL2lwc2VjLXNlY2d3L2lwc2VjLmM6NDkKQ2hlY2tpbmcgcGF0Y2gg ZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuaC4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZv cjoKCiNkZWZpbmUgTUFYX0RJR0VTVF9TSVpFIDMyIC8qIEJ5dGVzIC0tIDI1NiBiaXRzICovCgoj ZGVmaW5lIElQU0VDX09GRkxPQURfRVNOX1NPRlRMSU1JVCAweGZmZmZmZjAwCgojZGVmaW5lIElW X09GRlNFVAkJKHNpemVvZihzdHJ1Y3QgcnRlX2NyeXB0b19vcCkgKyBcCgkJCQlzaXplb2Yoc3Ry dWN0IHJ0ZV9jcnlwdG9fc3ltX29wKSkKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGV4YW1wbGVzL2lw c2VjLXNlY2d3L2lwc2VjLmg6MjMKQ2hlY2tpbmcgcGF0Y2ggbGliL2NyeXB0b2Rldi9ydGVfY3J5 cHRvLmguLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CglSVEVfQ1JZUFRPX09QX1NFQ1VS SVRZX1NFU1NJT04JLyoqPCBTZWN1cml0eSBzZXNzaW9uIGNyeXB0byBvcGVyYXRpb24gKi8KfTsK Ci8qKgogKiBDcnlwdG9ncmFwaGljIE9wZXJhdGlvbi4KICoKCmVycm9yOiBwYXRjaCBmYWlsZWQ6 IGxpYi9jcnlwdG9kZXYvcnRlX2NyeXB0by5oOjY1CmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9y OgoJCQkgKi8KCQkJdWludDhfdCBzZXNzX3R5cGU7CgkJCS8qKjwgb3BlcmF0aW9uIHNlc3Npb24g dHlwZSAqLwoJCQl1aW50OF90IHJlc2VydmVkWzNdOwoJCQkvKio8IFJlc2VydmVkIGJ5dGVzIHRv IGZpbGwgNjQgYml0cyBmb3IKCQkJICogZnV0dXJlIGFkZGl0aW9ucwoJCQkgKi8KCmVycm9yOiBw YXRjaCBmYWlsZWQ6IGxpYi9jcnlwdG9kZXYvcnRlX2NyeXB0by5oOjkzCkNoZWNraW5nIHBhdGNo IGxpYi9zZWN1cml0eS9ydGVfc2VjdXJpdHkuaC4uLgpIdW5rICMxIHN1Y2NlZWRlZCBhdCAyNTgg KG9mZnNldCA0MSBsaW5lcykuCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoJLyoqPCBJUHNl YyBTQSBNb2RlIC0gdHJhbnNwb3J0L3R1bm5lbCAqLwoJc3RydWN0IHJ0ZV9zZWN1cml0eV9pcHNl Y190dW5uZWxfcGFyYW0gdHVubmVsOwoJLyoqPCBUdW5uZWwgcGFyYW1ldGVycywgTlVMTCBmb3Ig dHJhbnNwb3J0IG1vZGUgKi8KCXVpbnQ2NF90IGVzbl9zb2Z0X2xpbWl0OwoJLyoqPCBFU04gZm9y IHdoaWNoIHRoZSBvdmVyZmxvdyBldmVudCBuZWVkIHRvIGJlIHJhaXNlZCAqLwoJdWludDMyX3Qg cmVwbGF5X3dpbl9zejsKCS8qKjwgQW50aSByZXBsYXkgd2luZG93IHNpemUgdG8gZW5hYmxlIHNl cXVlbmNlIHJlcGxheSBhdHRhY2sgaGFuZGxpbmcuCgkgKiByZXBsYXkgY2hlY2tpbmcgaXMgZGlz YWJsZWQgaWYgdGhlIHdpbmRvdyBzaXplIGlzIDAuCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBsaWIv c2VjdXJpdHkvcnRlX3NlY3VyaXR5Lmg6MjM2CkFwcGx5aW5nIHBhdGNoIGFwcC90ZXN0L3Rlc3Rf Y3J5cHRvZGV2X3NlY3VyaXR5X2lwc2VjX3Rlc3RfdmVjdG9ycy5oIHdpdGggMyByZWplY3RzLi4u ClJlamVjdGVkIGh1bmsgIzEuClJlamVjdGVkIGh1bmsgIzIuClJlamVjdGVkIGh1bmsgIzMuCkFw cGx5aW5nIHBhdGNoIGRvYy9ndWlkZXMvcmVsX25vdGVzL2RlcHJlY2F0aW9uLnJzdCB3aXRoIDEg cmVqZWN0Li4uClJlamVjdGVkIGh1bmsgIzEuCkFwcGx5aW5nIHBhdGNoIGRvYy9ndWlkZXMvcmVs X25vdGVzL3JlbGVhc2VfMjFfMTEucnN0IHdpdGggMiByZWplY3RzLi4uClJlamVjdGVkIGh1bmsg IzEuClJlamVjdGVkIGh1bmsgIzIuCkFwcGx5aW5nIHBhdGNoIGV4YW1wbGVzL2lwc2VjLXNlY2d3 L2lwc2VjLmMgd2l0aCAxIHJlamVjdC4uLgpSZWplY3RlZCBodW5rICMxLgpBcHBseWluZyBwYXRj aCBleGFtcGxlcy9pcHNlYy1zZWNndy9pcHNlYy5oIHdpdGggMSByZWplY3QuLi4KUmVqZWN0ZWQg aHVuayAjMS4KQXBwbHlpbmcgcGF0Y2ggbGliL2NyeXB0b2Rldi9ydGVfY3J5cHRvLmggd2l0aCAy IHJlamVjdHMuLi4KUmVqZWN0ZWQgaHVuayAjMS4KUmVqZWN0ZWQgaHVuayAjMi4KQXBwbHlpbmcg cGF0Y2ggbGliL3NlY3VyaXR5L3J0ZV9zZWN1cml0eS5oIHdpdGggMSByZWplY3QuLi4KSHVuayAj MSBhcHBsaWVkIGNsZWFubHkuClJlamVjdGVkIGh1bmsgIzIuCmRpZmYgYS9hcHAvdGVzdC90ZXN0 X2NyeXB0b2Rldl9zZWN1cml0eV9pcHNlY190ZXN0X3ZlY3RvcnMuaCBiL2FwcC90ZXN0L3Rlc3Rf Y3J5cHRvZGV2X3NlY3VyaXR5X2lwc2VjX3Rlc3RfdmVjdG9ycy5oCShyZWplY3RlZCBodW5rcykK QEAgLTk4LDcgKzk4LDYgQEAgc3RydWN0IGlwc2VjX3Rlc3RfZGF0YSBwa3RfYWVzXzEyOF9nY20g PSB7CiAJCS5wcm90byA9IFJURV9TRUNVUklUWV9JUFNFQ19TQV9QUk9UT19FU1AsCiAJCS5tb2Rl ID0gUlRFX1NFQ1VSSVRZX0lQU0VDX1NBX01PREVfVFVOTkVMLAogCQkudHVubmVsLnR5cGUgPSBS VEVfU0VDVVJJVFlfSVBTRUNfVFVOTkVMX0lQVjQsCi0JCS5lc25fc29mdF9saW1pdCA9IDAsCiAJ CS5yZXBsYXlfd2luX3N6ID0gMCwKIAl9LAogCkBAIC0xOTUsNyArMTk0LDYgQEAgc3RydWN0IGlw c2VjX3Rlc3RfZGF0YSBwa3RfYWVzXzE5Ml9nY20gPSB7CiAJCS5wcm90byA9IFJURV9TRUNVUklU WV9JUFNFQ19TQV9QUk9UT19FU1AsCiAJCS5tb2RlID0gUlRFX1NFQ1VSSVRZX0lQU0VDX1NBX01P REVfVFVOTkVMLAogCQkudHVubmVsLnR5cGUgPSBSVEVfU0VDVVJJVFlfSVBTRUNfVFVOTkVMX0lQ VjQsCi0JCS5lc25fc29mdF9saW1pdCA9IDAsCiAJCS5yZXBsYXlfd2luX3N6ID0gMCwKIAl9LAog CkBAIC0yOTUsNyArMjkzLDYgQEAgc3RydWN0IGlwc2VjX3Rlc3RfZGF0YSBwa3RfYWVzXzI1Nl9n Y20gPSB7CiAJCS5wcm90byA9IFJURV9TRUNVUklUWV9JUFNFQ19TQV9QUk9UT19FU1AsCiAJCS5t b2RlID0gUlRFX1NFQ1VSSVRZX0lQU0VDX1NBX01PREVfVFVOTkVMLAogCQkudHVubmVsLnR5cGUg PSBSVEVfU0VDVVJJVFlfSVBTRUNfVFVOTkVMX0lQVjQsCi0JCS5lc25fc29mdF9saW1pdCA9IDAs CiAJCS5yZXBsYXlfd2luX3N6ID0gMCwKIAl9LAogCmRpZmYgYS9kb2MvZ3VpZGVzL3JlbF9ub3Rl cy9kZXByZWNhdGlvbi5yc3QgYi9kb2MvZ3VpZGVzL3JlbF9ub3Rlcy9kZXByZWNhdGlvbi5yc3QJ KHJlamVjdGVkIGh1bmtzKQpAQCAtMjc1LDggKzI3NSwzIEBAIERlcHJlY2F0aW9uIE5vdGljZXMK ICogY21kbGluZTogYGBjbWRsaW5lYGAgc3RydWN0dXJlIHdpbGwgYmUgbWFkZSBvcGFxdWUgdG8g aGlkZSBwbGF0Zm9ybS1zcGVjaWZpYwogICBjb250ZW50LiBPbiBMaW51eCBhbmQgRnJlZUJTRCwg c3VwcG9ydGVkIHByaW9yIHRvIERQREsgMjAuMTEsCiAgIG9yaWdpbmFsIHN0cnVjdHVyZSB3aWxs IGJlIGtlcHQgdW50aWwgRFBESyAyMS4xMS4KLQotKiBjcnlwdG9kZXY6IFRoZSBzdHJ1Y3R1cmUg YGBydGVfY3J5cHRvX29wYGAgd291bGQgYmUgdXBkYXRlZCB0byByZWR1Y2UKLSAgcmVzZXJ2ZWQg Ynl0ZXMgdG8gMiAoZnJvbSAzKSwgYW5kIHVzZSAxIGJ5dGUgdG8gaW5kaWNhdGUgd2FybmluZ3Mg YW5kIG90aGVyCi0gIGluZm9ybWF0aW9uIGZyb20gdGhlIGNyeXB0by9zZWN1cml0eSBvcGVyYXRp b24uIFRoaXMgZmllbGQgd2lsbCBiZSB1c2VkIHRvCi0gIGNvbW11bmljYXRlIGV2ZW50cyBzdWNo IGFzIHNvZnQgZXhwaXJ5IHdpdGggSVBzZWMgaW4gbG9va2FzaWRlIG1vZGUuCmRpZmYgYS9kb2Mv Z3VpZGVzL3JlbF9ub3Rlcy9yZWxlYXNlXzIxXzExLnJzdCBiL2RvYy9ndWlkZXMvcmVsX25vdGVz L3JlbGVhc2VfMjFfMTEucnN0CShyZWplY3RlZCBodW5rcykKQEAgLTE1Miw2ICsxNTIsMTMgQEAg QVBJIENoYW5nZXMKICAgYXMgaXQgaXMgZm9yIGRyaXZlcnMgb25seSBhbmQgc2hvdWxkIGJlIHBy aXZhdGUgdG8gRFBESywgYW5kIG5vdAogICBpbnN0YWxsZWQgZm9yIGFwcCB1c2UuCiAKKyogY3J5 cHRvZGV2OiB1c2UgMSByZXNlcnZlZCBieXRlIGZyb20gYGBydGVfY3J5cHRvX29wYGAgZm9yIGF1 eCBmbGFncworCisgICogVXBkYXRlZCB0aGUgc3RydWN0dXJlIGBgcnRlX2NyeXB0b19vcGBgIHRv IHJlZHVjZSByZXNlcnZlZCBieXRlcyB0bworICAyIChmcm9tIDMpLCBhbmQgdXNlIDEgYnl0ZSB0 byBpbmRpY2F0ZSB3YXJuaW5ncyBhbmQgb3RoZXIgaW5mb3JtYXRpb24gZnJvbQorICB0aGUgY3J5 cHRvL3NlY3VyaXR5IG9wZXJhdGlvbi4gVGhpcyBmaWVsZCB3aWxsIGJlIHVzZWQgdG8gY29tbXVu aWNhdGUgZXZlbnRzCisgIHN1Y2ggYXMgc29mdCBleHBpcnkgd2l0aCBJUHNlYyBpbiBsb29rYXNp ZGUgbW9kZS4KKwogCiBBQkkgQ2hhbmdlcwogLS0tLS0tLS0tLS0KQEAgLTE3NCw2ICsxODEsMTIg QEAgQUJJIENoYW5nZXMKICAgaGF2ZSBtdWNoIHByb2Nlc3NpbmcgaW4gUE1EIHNwZWNpZmljIGNh bGxiYWNrcyBidXQganVzdCA2NC1iaXQgc2V0L2dldC4KICAgVGhpcyBhdm9pZHMgYSBwZXIgcGt0 IGZ1bmN0aW9uIHBvaW50ZXIganVtcCBvdmVyaGVhZCBmb3Igc3VjaCBQTUQncy4KIAorKiBzZWN1 cml0eTogYWRkIElQc2VjIFNBIGxpZmV0aW1lIGNvbmZpZ3VyYXRpb24KKworICAqIEFkZGVkIElQ c2VjIFNBIGxpZmV0aW1lIGNvbmZpZ3VyYXRpb24gdG8gYWxsb3cgYXBwbGljYXRpb25zIHRvIGNv bmZpZ3VyZQorICAgIHNvZnQgYW5kIGhhcmQgU0EgZXhwaXJ5IGxpbWl0cy4gTGltaXRzIGNhbiBi ZSBlaXRoZXIgaW4gdW5pdHMgb2YgcGFja2V0cyBvcgorICAgIGJ5dGVzLgorCiAKIEtub3duIElz c3VlcwogLS0tLS0tLS0tLS0tCmRpZmYgYS9leGFtcGxlcy9pcHNlYy1zZWNndy9pcHNlYy5jIGIv ZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuYwkocmVqZWN0ZWQgaHVua3MpCkBAIC00OSw3ICs0 OSw3IEBAIHNldF9pcHNlY19jb25mKHN0cnVjdCBpcHNlY19zYSAqc2EsIHN0cnVjdCBydGVfc2Vj dXJpdHlfaXBzZWNfeGZvcm0gKmlwc2VjKQogCQl9CiAJCS8qIFRPRE8gc3VwcG9ydCBmb3IgVHJh bnNwb3J0ICovCiAJfQotCWlwc2VjLT5lc25fc29mdF9saW1pdCA9IElQU0VDX09GRkxPQURfRVNO X1NPRlRMSU1JVDsKKwlpcHNlYy0+bGlmZS5wYWNrZXRzX3NvZnRfbGltaXQgPSBJUFNFQ19PRkZM T0FEX1BLVFNfU09GVExJTUlUOwogCWlwc2VjLT5yZXBsYXlfd2luX3N6ID0gYXBwX3NhX3BybS53 aW5kb3dfc2l6ZTsKIAlpcHNlYy0+b3B0aW9ucy5lc24gPSBhcHBfc2FfcHJtLmVuYWJsZV9lc247 CiAJaXBzZWMtPm9wdGlvbnMudWRwX2VuY2FwID0gc2EtPnVkcF9lbmNhcDsKZGlmZiBhL2V4YW1w bGVzL2lwc2VjLXNlY2d3L2lwc2VjLmggYi9leGFtcGxlcy9pcHNlYy1zZWNndy9pcHNlYy5oCShy ZWplY3RlZCBodW5rcykKQEAgLTIzLDcgKzIzLDcgQEAKIAogI2RlZmluZSBNQVhfRElHRVNUX1NJ WkUgMzIgLyogQnl0ZXMgLS0gMjU2IGJpdHMgKi8KIAotI2RlZmluZSBJUFNFQ19PRkZMT0FEX0VT Tl9TT0ZUTElNSVQgMHhmZmZmZmYwMAorI2RlZmluZSBJUFNFQ19PRkZMT0FEX1BLVFNfU09GVExJ TUlUIDB4ZmZmZmZmMDAKIAogI2RlZmluZSBJVl9PRkZTRVQJCShzaXplb2Yoc3RydWN0IHJ0ZV9j cnlwdG9fb3ApICsgXAogCQkJCXNpemVvZihzdHJ1Y3QgcnRlX2NyeXB0b19zeW1fb3ApKQpkaWZm IGEvbGliL2NyeXB0b2Rldi9ydGVfY3J5cHRvLmggYi9saWIvY3J5cHRvZGV2L3J0ZV9jcnlwdG8u aAkocmVqZWN0ZWQgaHVua3MpCkBAIC02NSw2ICs2NSwxMSBAQCBlbnVtIHJ0ZV9jcnlwdG9fb3Bf c2Vzc190eXBlIHsKIAlSVEVfQ1JZUFRPX09QX1NFQ1VSSVRZX1NFU1NJT04JLyoqPCBTZWN1cml0 eSBzZXNzaW9uIGNyeXB0byBvcGVyYXRpb24gKi8KIH07CiAKKy8qIEF1eGlsaWFyeSBmbGFncyBy ZWxhdGVkIHRvIElQc2VjIG9mZmxvYWQgd2l0aCBSVEVfU0VDVVJJVFkgKi8KKworI2RlZmluZSBS VEVfQ1JZUFRPX09QX0FVWF9GTEFHU19JUFNFQ19TT0ZUX0VYUElSWSAoMSA8PCAwKQorLyoqPCBT QSBzb2Z0IGV4cGlyeSBsaW1pdCBoYXMgYmVlbiByZWFjaGVkICovCisKIC8qKgogICogQ3J5cHRv Z3JhcGhpYyBPcGVyYXRpb24uCiAgKgpAQCAtOTMsNyArOTgsMTIgQEAgc3RydWN0IHJ0ZV9jcnlw dG9fb3AgewogCQkJICovCiAJCQl1aW50OF90IHNlc3NfdHlwZTsKIAkJCS8qKjwgb3BlcmF0aW9u IHNlc3Npb24gdHlwZSAqLwotCQkJdWludDhfdCByZXNlcnZlZFszXTsKKwkJCXVpbnQ4X3QgYXV4 X2ZsYWdzOworCQkJLyoqPCBPcGVyYXRpb24gc3BlY2lmaWMgYXV4aWxpYXJ5L2FkZGl0aW9uYWwg ZmxhZ3MuCisJCQkgKiBUaGVzZSBmbGFncyBjYXJyeSBhZGRpdGlvbmFsIGluZm9ybWF0aW9uIGZy b20gdGhlCisJCQkgKiBvcGVyYXRpb24uIFByb2Nlc3Npbmcgb2YgdGhlIHNhbWUgaXMgb3B0aW9u YWwuCisJCQkgKi8KKwkJCXVpbnQ4X3QgcmVzZXJ2ZWRbMl07CiAJCQkvKio8IFJlc2VydmVkIGJ5 dGVzIHRvIGZpbGwgNjQgYml0cyBmb3IKIAkJCSAqIGZ1dHVyZSBhZGRpdGlvbnMKIAkJCSAqLwpk aWZmIGEvbGliL3NlY3VyaXR5L3J0ZV9zZWN1cml0eS5oIGIvbGliL3NlY3VyaXR5L3J0ZV9zZWN1 cml0eS5oCShyZWplY3RlZCBodW5rcykKQEAgLTIzNiw4ICsyNjAsOCBAQCBzdHJ1Y3QgcnRlX3Nl Y3VyaXR5X2lwc2VjX3hmb3JtIHsKIAkvKio8IElQc2VjIFNBIE1vZGUgLSB0cmFuc3BvcnQvdHVu bmVsICovCiAJc3RydWN0IHJ0ZV9zZWN1cml0eV9pcHNlY190dW5uZWxfcGFyYW0gdHVubmVsOwog CS8qKjwgVHVubmVsIHBhcmFtZXRlcnMsIE5VTEwgZm9yIHRyYW5zcG9ydCBtb2RlICovCi0JdWlu dDY0X3QgZXNuX3NvZnRfbGltaXQ7Ci0JLyoqPCBFU04gZm9yIHdoaWNoIHRoZSBvdmVyZmxvdyBl dmVudCBuZWVkIHRvIGJlIHJhaXNlZCAqLworCXN0cnVjdCBydGVfc2VjdXJpdHlfaXBzZWNfbGlm ZXRpbWUgbGlmZTsKKwkvKio8IElQc2VjIFNBIGxpZmV0aW1lICovCiAJdWludDMyX3QgcmVwbGF5 X3dpbl9zejsKIAkvKio8IEFudGkgcmVwbGF5IHdpbmRvdyBzaXplIHRvIGVuYWJsZSBzZXF1ZW5j ZSByZXBsYXkgYXR0YWNrIGhhbmRsaW5nLgogCSAqIHJlcGxheSBjaGVja2luZyBpcyBkaXNhYmxl ZCBpZiB0aGUgd2luZG93IHNpemUgaXMgMC4KQ2hlY2tpbmcgcGF0Y2ggZHJpdmVycy9jb21tb24v Y254ay9jbnhrX3NlY3VyaXR5LmMuLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJcmV0 dXJuIC1FSU5WQUw7Cgl9CgoJcmV0dXJuIDA7Cn0KCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2 ZXJzL2NvbW1vbi9jbnhrL2NueGtfc2VjdXJpdHkuYzoxNjEKZXJyb3I6IHdoaWxlIHNlYXJjaGlu ZyBmb3I6CgkJIFJPQ19DVFhfVU5JVF8xMjhCKSAtCgkJMTsKCgkvKiBUaGVyZSBhcmUgdHdvIHdv cmRzIG9mIENQVF9DVFhfSFdfUyBmb3IgdWNvZGUgdG8gc2tpcCAqLwoJc2EtPncwLnMuY3R4X2hk cl9zaXplID0gMTsKCXNhLT53MC5zLmFvcF92YWxpZCA9IDE7CgplcnJvcjogcGF0Y2ggZmFpbGVk OiBkcml2ZXJzL2NvbW1vbi9jbnhrL2NueGtfc2VjdXJpdHkuYzoyMzYKZXJyb3I6IHdoaWxlIHNl YXJjaGluZyBmb3I6CgkvKiBJUElEIGdlbiAqLwoJc2EtPncyLnMuaXBpZF9nZW4gPSAxOwoKCS8q IFRoZXJlIGFyZSB0d28gd29yZHMgb2YgQ1BUX0NUWF9IV19TIGZvciB1Y29kZSB0byBza2lwICov CglzYS0+dzAucy5jdHhfaGRyX3NpemUgPSAxOwoJc2EtPncwLnMuYW9wX3ZhbGlkID0gMTsKCmVy cm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvY29tbW9uL2NueGsvY254a19zZWN1cml0eS5jOjM2 MApDaGVja2luZyBwYXRjaCBkcml2ZXJzL2NyeXB0by9jbnhrL2NuMTBrX2NyeXB0b2Rldl9vcHMu Yy4uLgplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJICAgICAgIHN0cnVjdCBjcHRfaW5m bGlnaHRfcmVxICppbmZsX3JlcSkKewoJc3RydWN0IGNwdF9jbjEwa19yZXNfcyAqcmVzID0gKHN0 cnVjdCBjcHRfY24xMGtfcmVzX3MgKikmaW5mbF9yZXEtPnJlczsKCXVuc2lnbmVkIGludCBzejsK CglpZiAobGlrZWx5KHJlcy0+Y29tcGNvZGUgPT0gQ1BUX0NPTVBfR09PRCB8fAoJCSAgIHJlcy0+ Y29tcGNvZGUgPT0gQ1BUX0NPTVBfV0FSTikpIHsKCQlpZiAodW5saWtlbHkocmVzLT51Y19jb21w Y29kZSkpIHsKCQkJaWYgKHJlcy0+dWNfY29tcGNvZGUgPT0gUk9DX1NFX0VSUl9HQ19JQ1ZfTUlT Q09NUEFSRSkKCQkJCWNvcC0+c3RhdHVzID0gUlRFX0NSWVBUT19PUF9TVEFUVVNfQVVUSF9GQUlM RUQ7CgkJCWVsc2UKCQkJCWNvcC0+c3RhdHVzID0gUlRFX0NSWVBUT19PUF9TVEFUVVNfRVJST1I7 CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2NyeXB0by9jbnhrL2NuMTBrX2NyeXB0b2Rl dl9vcHMuYzozNDgKZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJCWdvdG8gdGVtcF9zZXNz X2ZyZWU7CgkJfQoKCQljb3AtPnN0YXR1cyA9IFJURV9DUllQVE9fT1BfU1RBVFVTX1NVQ0NFU1M7 CgkJaWYgKGNvcC0+dHlwZSA9PSBSVEVfQ1JZUFRPX09QX1RZUEVfU1lNTUVUUklDKSB7CgkJCWlm IChjb3AtPnNlc3NfdHlwZSA9PSBSVEVfQ1JZUFRPX09QX1NFQ1VSSVRZX1NFU1NJT04pIHsKCQkJ CWNuMTBrX2NwdF9zZWNfcG9zdF9wcm9jZXNzKGNvcCwgcmVzKTsKCQkJCXJldHVybjsKCQkJfQoK CQkJLyogVmVyaWZ5IGF1dGhlbnRpY2F0aW9uIGRhdGEgaWYgcmVxdWlyZWQgKi8KCQkJaWYgKHVu bGlrZWx5KGluZmxfcmVxLT5vcF9mbGFncyAmCgkJCQkgICAgIENQVF9PUF9GTEFHU19BVVRIX1ZF UklGWSkpIHsKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGRyaXZlcnMvY3J5cHRvL2NueGsvY24xMGtf Y3J5cHRvZGV2X29wcy5jOjM2NAplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCQljb3AtPnN0 YXR1cyA9IFJURV9DUllQVE9fT1BfU1RBVFVTX0VSUk9SOwoJCXBsdF9kcF9pbmZvKCJIVyBjb21w bGV0aW9uIGNvZGUgMHgleCIsIHJlcy0+Y29tcGNvZGUpOwoKCQlzd2l0Y2ggKHJlcy0+Y29tcGNv ZGUpIHsKCQljYXNlIENQVF9DT01QX0lOU1RFUlI6CgkJCXBsdF9kcF9lcnIoIlJlcXVlc3QgZmFp bGVkIHdpdGggaW5zdHJ1Y3Rpb24gZXJyb3IiKTsKCQkJYnJlYWs7CgplcnJvcjogcGF0Y2ggZmFp bGVkOiBkcml2ZXJzL2NyeXB0by9jbnhrL2NuMTBrX2NyeXB0b2Rldl9vcHMuYzozOTIKQ2hlY2tp bmcgcGF0Y2ggZHJpdmVycy9jcnlwdG8vY254ay9jbjlrX2lwc2VjLmMuLi4KZXJyb3I6IHdoaWxl IHNlYXJjaGluZyBmb3I6CnN0YXRpYyBpbmxpbmUgaW50CmNuOWtfaXBzZWNfeGZvcm1fdmVyaWZ5 KHN0cnVjdCBydGVfc2VjdXJpdHlfaXBzZWNfeGZvcm0gKmlwc2VjKQp7CglSVEVfU0VUX1VTRUQo aXBzZWMpOwoKCXJldHVybiAwOwp9CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBkcml2ZXJzL2NyeXB0 by9jbnhrL2NuOWtfaXBzZWMuYzo0ODUKQXBwbHlpbmcgcGF0Y2ggZHJpdmVycy9jb21tb24vY254 ay9jbnhrX3NlY3VyaXR5LmMgd2l0aCAzIHJlamVjdHMuLi4KUmVqZWN0ZWQgaHVuayAjMS4KUmVq ZWN0ZWQgaHVuayAjMi4KUmVqZWN0ZWQgaHVuayAjMy4KQXBwbHlpbmcgcGF0Y2ggZHJpdmVycy9j cnlwdG8vY254ay9jbjEwa19jcnlwdG9kZXZfb3BzLmMgd2l0aCAzIHJlamVjdHMuLi4KUmVqZWN0 ZWQgaHVuayAjMS4KUmVqZWN0ZWQgaHVuayAjMi4KUmVqZWN0ZWQgaHVuayAjMy4KQXBwbHlpbmcg cGF0Y2ggZHJpdmVycy9jcnlwdG8vY254ay9jbjlrX2lwc2VjLmMgd2l0aCAxIHJlamVjdC4uLgpS ZWplY3RlZCBodW5rICMxLgpkaWZmIGEvZHJpdmVycy9jb21tb24vY254ay9jbnhrX3NlY3VyaXR5 LmMgYi9kcml2ZXJzL2NvbW1vbi9jbnhrL2NueGtfc2VjdXJpdHkuYwkocmVqZWN0ZWQgaHVua3Mp CkBAIC0xNjEsNiArMTYxLDI2IEBAIG90X2lwc2VjX3NhX2NvbW1vbl9wYXJhbV9maWxsKHVuaW9u IHJvY19vdF9pcHNlY19zYV93b3JkMiAqdzIsCiAJCXJldHVybiAtRUlOVkFMOwogCX0KIAorCWlm IChpcHNlY194ZnJtLT5saWZlLnBhY2tldHNfc29mdF9saW1pdCAhPSAwIHx8CisJICAgIGlwc2Vj X3hmcm0tPmxpZmUucGFja2V0c19oYXJkX2xpbWl0ICE9IDApIHsKKwkJaWYgKGlwc2VjX3hmcm0t PmxpZmUuYnl0ZXNfc29mdF9saW1pdCAhPSAwIHx8CisJCSAgICBpcHNlY194ZnJtLT5saWZlLmJ5 dGVzX2hhcmRfbGltaXQgIT0gMCkgeworCQkJcGx0X2VycigiRXhwaXJ5IHRyYWNraW5nIHdpdGgg Ym90aCBwYWNrZXRzICYgYnl0ZXMgaXMgbm90IHN1cHBvcnRlZCIpOworCQkJcmV0dXJuIC1FSU5W QUw7CisJCX0KKwkJdzItPnMubGlmZV91bml0ID0gUk9DX0lFX09UX1NBX0xJRkVfVU5JVF9QS1RT OworCX0KKworCWlmIChpcHNlY194ZnJtLT5saWZlLmJ5dGVzX3NvZnRfbGltaXQgIT0gMCB8fAor CSAgICBpcHNlY194ZnJtLT5saWZlLmJ5dGVzX2hhcmRfbGltaXQgIT0gMCkgeworCQlpZiAoaXBz ZWNfeGZybS0+bGlmZS5wYWNrZXRzX3NvZnRfbGltaXQgIT0gMCB8fAorCQkgICAgaXBzZWNfeGZy bS0+bGlmZS5wYWNrZXRzX2hhcmRfbGltaXQgIT0gMCkgeworCQkJcGx0X2VycigiRXhwaXJ5IHRy YWNraW5nIHdpdGggYm90aCBwYWNrZXRzICYgYnl0ZXMgaXMgbm90IHN1cHBvcnRlZCIpOworCQkJ cmV0dXJuIC1FSU5WQUw7CisJCX0KKwkJdzItPnMubGlmZV91bml0ID0gUk9DX0lFX09UX1NBX0xJ RkVfVU5JVF9PQ1RFVFM7CisJfQorCiAJcmV0dXJuIDA7CiB9CiAKQEAgLTIzNiw2ICsyNTYsMzEg QEAgY254a19vdF9pcHNlY19pbmJfc2FfZmlsbChzdHJ1Y3Qgcm9jX290X2lwc2VjX2luYl9zYSAq c2EsCiAJCSBST0NfQ1RYX1VOSVRfMTI4QikgLQogCQkxOwogCisJLyoqCisJICogQ1BUIE1DIHRy aWdnZXJzIGV4cGlyeSB3aGVuIGNvdW50ZXIgdmFsdWUgY2hhbmdlcyBmcm9tIDIgdG8gMS4gVG8K KwkgKiBtaXRpZ2F0ZSB0aGlzIGJlaGF2aW91ciBhZGQgMSB0byB0aGUgbGlmZSBjb3VudGVyIHZh bHVlcyBwcm92aWRlZC4KKwkgKi8KKworCWlmIChpcHNlY194ZnJtLT5saWZlLmJ5dGVzX3NvZnRf bGltaXQpIHsKKwkJc2EtPmN0eC5zb2Z0X2xpZmUgPSBpcHNlY194ZnJtLT5saWZlLmJ5dGVzX3Nv ZnRfbGltaXQgKyAxOworCQlzYS0+dzAucy5zb2Z0X2xpZmVfZGVjID0gMTsKKwl9CisKKwlpZiAo aXBzZWNfeGZybS0+bGlmZS5wYWNrZXRzX3NvZnRfbGltaXQpIHsKKwkJc2EtPmN0eC5zb2Z0X2xp ZmUgPSBpcHNlY194ZnJtLT5saWZlLnBhY2tldHNfc29mdF9saW1pdCArIDE7CisJCXNhLT53MC5z LnNvZnRfbGlmZV9kZWMgPSAxOworCX0KKworCWlmIChpcHNlY194ZnJtLT5saWZlLmJ5dGVzX2hh cmRfbGltaXQpIHsKKwkJc2EtPmN0eC5oYXJkX2xpZmUgPSBpcHNlY194ZnJtLT5saWZlLmJ5dGVz X2hhcmRfbGltaXQgKyAxOworCQlzYS0+dzAucy5oYXJkX2xpZmVfZGVjID0gMTsKKwl9CisKKwlp ZiAoaXBzZWNfeGZybS0+bGlmZS5wYWNrZXRzX2hhcmRfbGltaXQpIHsKKwkJc2EtPmN0eC5oYXJk X2xpZmUgPSBpcHNlY194ZnJtLT5saWZlLnBhY2tldHNfaGFyZF9saW1pdCArIDE7CisJCXNhLT53 MC5zLmhhcmRfbGlmZV9kZWMgPSAxOworCX0KKwogCS8qIFRoZXJlIGFyZSB0d28gd29yZHMgb2Yg Q1BUX0NUWF9IV19TIGZvciB1Y29kZSB0byBza2lwICovCiAJc2EtPncwLnMuY3R4X2hkcl9zaXpl ID0gMTsKIAlzYS0+dzAucy5hb3BfdmFsaWQgPSAxOwpAQCAtMzYwLDYgKzQwNSwzMSBAQCBjbnhr X290X2lwc2VjX291dGJfc2FfZmlsbChzdHJ1Y3Qgcm9jX290X2lwc2VjX291dGJfc2EgKnNhLAog CS8qIElQSUQgZ2VuICovCiAJc2EtPncyLnMuaXBpZF9nZW4gPSAxOwogCisJLyoqCisJICogQ1BU IE1DIHRyaWdnZXJzIGV4cGlyeSB3aGVuIGNvdW50ZXIgdmFsdWUgY2hhbmdlcyBmcm9tIDIgdG8g MS4gVG8KKwkgKiBtaXRpZ2F0ZSB0aGlzIGJlaGF2aW91ciBhZGQgMSB0byB0aGUgbGlmZSBjb3Vu dGVyIHZhbHVlcyBwcm92aWRlZC4KKwkgKi8KKworCWlmIChpcHNlY194ZnJtLT5saWZlLmJ5dGVz X3NvZnRfbGltaXQpIHsKKwkJc2EtPmN0eC5zb2Z0X2xpZmUgPSBpcHNlY194ZnJtLT5saWZlLmJ5 dGVzX3NvZnRfbGltaXQgKyAxOworCQlzYS0+dzAucy5zb2Z0X2xpZmVfZGVjID0gMTsKKwl9CisK KwlpZiAoaXBzZWNfeGZybS0+bGlmZS5wYWNrZXRzX3NvZnRfbGltaXQpIHsKKwkJc2EtPmN0eC5z b2Z0X2xpZmUgPSBpcHNlY194ZnJtLT5saWZlLnBhY2tldHNfc29mdF9saW1pdCArIDE7CisJCXNh LT53MC5zLnNvZnRfbGlmZV9kZWMgPSAxOworCX0KKworCWlmIChpcHNlY194ZnJtLT5saWZlLmJ5 dGVzX2hhcmRfbGltaXQpIHsKKwkJc2EtPmN0eC5oYXJkX2xpZmUgPSBpcHNlY194ZnJtLT5saWZl LmJ5dGVzX2hhcmRfbGltaXQgKyAxOworCQlzYS0+dzAucy5oYXJkX2xpZmVfZGVjID0gMTsKKwl9 CisKKwlpZiAoaXBzZWNfeGZybS0+bGlmZS5wYWNrZXRzX2hhcmRfbGltaXQpIHsKKwkJc2EtPmN0 eC5oYXJkX2xpZmUgPSBpcHNlY194ZnJtLT5saWZlLnBhY2tldHNfaGFyZF9saW1pdCArIDE7CisJ CXNhLT53MC5zLmhhcmRfbGlmZV9kZWMgPSAxOworCX0KKwogCS8qIFRoZXJlIGFyZSB0d28gd29y ZHMgb2YgQ1BUX0NUWF9IV19TIGZvciB1Y29kZSB0byBza2lwICovCiAJc2EtPncwLnMuY3R4X2hk cl9zaXplID0gMTsKIAlzYS0+dzAucy5hb3BfdmFsaWQgPSAxOwpkaWZmIGEvZHJpdmVycy9jcnlw dG8vY254ay9jbjEwa19jcnlwdG9kZXZfb3BzLmMgYi9kcml2ZXJzL2NyeXB0by9jbnhrL2NuMTBr X2NyeXB0b2Rldl9vcHMuYwkocmVqZWN0ZWQgaHVua3MpCkBAIC0zNDgsMTIgKzM0OCw0NCBAQCBj bjEwa19jcHRfZGVxdWV1ZV9wb3N0X3Byb2Nlc3Moc3RydWN0IGNueGtfY3B0X3FwICpxcCwKIAkJ CSAgICAgICBzdHJ1Y3QgY3B0X2luZmxpZ2h0X3JlcSAqaW5mbF9yZXEpCiB7CiAJc3RydWN0IGNw dF9jbjEwa19yZXNfcyAqcmVzID0gKHN0cnVjdCBjcHRfY24xMGtfcmVzX3MgKikmaW5mbF9yZXEt PnJlczsKKwljb25zdCB1aW50OF90IHVjX2NvbXBjb2RlID0gcmVzLT51Y19jb21wY29kZTsKKwlj b25zdCB1aW50OF90IGNvbXBjb2RlID0gcmVzLT5jb21wY29kZTsKIAl1bnNpZ25lZCBpbnQgc3o7 CiAKLQlpZiAobGlrZWx5KHJlcy0+Y29tcGNvZGUgPT0gQ1BUX0NPTVBfR09PRCB8fAotCQkgICBy ZXMtPmNvbXBjb2RlID09IENQVF9DT01QX1dBUk4pKSB7Ci0JCWlmICh1bmxpa2VseShyZXMtPnVj X2NvbXBjb2RlKSkgewotCQkJaWYgKHJlcy0+dWNfY29tcGNvZGUgPT0gUk9DX1NFX0VSUl9HQ19J Q1ZfTUlTQ09NUEFSRSkKKwljb3AtPnN0YXR1cyA9IFJURV9DUllQVE9fT1BfU1RBVFVTX1NVQ0NF U1M7CisKKwlpZiAoY29wLT50eXBlID09IFJURV9DUllQVE9fT1BfVFlQRV9TWU1NRVRSSUMgJiYK KwkgICAgY29wLT5zZXNzX3R5cGUgPT0gUlRFX0NSWVBUT19PUF9TRUNVUklUWV9TRVNTSU9OKSB7 CisJCWlmIChsaWtlbHkoY29tcGNvZGUgPT0gQ1BUX0NPTVBfV0FSTikpIHsKKwkJCWlmICh1bmxp a2VseSh1Y19jb21wY29kZSAhPSBST0NfSUVfT1RfVUNDX1NVQ0NFU1MpKSB7CisJCQkJLyogU3Vj Y2VzcyB3aXRoIGFkZGl0aW9uYWwgaW5mbyAqLworCQkJCXN3aXRjaCAodWNfY29tcGNvZGUpIHsK KwkJCQljYXNlIFJPQ19JRV9PVF9VQ0NfU1VDQ0VTU19TQV9TT0ZURVhQX0ZJUlNUOgorCQkJCQlj b3AtPmF1eF9mbGFncyA9CisJCQkJCQlSVEVfQ1JZUFRPX09QX0FVWF9GTEFHU19JUFNFQ19TT0ZU X0VYUElSWTsKKwkJCQkJYnJlYWs7CisJCQkJZGVmYXVsdDoKKwkJCQkJYnJlYWs7CisJCQkJfQor CQkJfQorCQkJY24xMGtfY3B0X3NlY19wb3N0X3Byb2Nlc3MoY29wLCByZXMpOworCQl9IGVsc2Ug eworCQkJY29wLT5zdGF0dXMgPSBSVEVfQ1JZUFRPX09QX1NUQVRVU19FUlJPUjsKKwkJCXBsdF9k cF9pbmZvKCJIVyBjb21wbGV0aW9uIGNvZGUgMHgleCIsIHJlcy0+Y29tcGNvZGUpOworCQkJaWYg KGNvbXBjb2RlID09IENQVF9DT01QX0dPT0QpIHsKKwkJCQlwbHRfZHBfaW5mbygKKwkJCQkJIlJl cXVlc3QgZmFpbGVkIHdpdGggbWljcm9jb2RlIGVycm9yIik7CisJCQkJcGx0X2RwX2luZm8oIk1D IGNvbXBsZXRpb24gY29kZSAweCV4IiwKKwkJCQkJICAgIHVjX2NvbXBjb2RlKTsKKwkJCX0KKwkJ fQorCisJCXJldHVybjsKKwl9CisKKwlpZiAobGlrZWx5KGNvbXBjb2RlID09IENQVF9DT01QX0dP T0QgfHwgY29tcGNvZGUgPT0gQ1BUX0NPTVBfV0FSTikpIHsKKwkJaWYgKHVubGlrZWx5KHVjX2Nv bXBjb2RlKSkgeworCQkJaWYgKHVjX2NvbXBjb2RlID09IFJPQ19TRV9FUlJfR0NfSUNWX01JU0NP TVBBUkUpCiAJCQkJY29wLT5zdGF0dXMgPSBSVEVfQ1JZUFRPX09QX1NUQVRVU19BVVRIX0ZBSUxF RDsKIAkJCWVsc2UKIAkJCQljb3AtPnN0YXR1cyA9IFJURV9DUllQVE9fT1BfU1RBVFVTX0VSUk9S OwpAQCAtMzY0LDEzICszOTYsNyBAQCBjbjEwa19jcHRfZGVxdWV1ZV9wb3N0X3Byb2Nlc3Moc3Ry dWN0IGNueGtfY3B0X3FwICpxcCwKIAkJCWdvdG8gdGVtcF9zZXNzX2ZyZWU7CiAJCX0KIAotCQlj b3AtPnN0YXR1cyA9IFJURV9DUllQVE9fT1BfU1RBVFVTX1NVQ0NFU1M7CiAJCWlmIChjb3AtPnR5 cGUgPT0gUlRFX0NSWVBUT19PUF9UWVBFX1NZTU1FVFJJQykgewotCQkJaWYgKGNvcC0+c2Vzc190 eXBlID09IFJURV9DUllQVE9fT1BfU0VDVVJJVFlfU0VTU0lPTikgewotCQkJCWNuMTBrX2NwdF9z ZWNfcG9zdF9wcm9jZXNzKGNvcCwgcmVzKTsKLQkJCQlyZXR1cm47Ci0JCQl9Ci0KIAkJCS8qIFZl cmlmeSBhdXRoZW50aWNhdGlvbiBkYXRhIGlmIHJlcXVpcmVkICovCiAJCQlpZiAodW5saWtlbHko aW5mbF9yZXEtPm9wX2ZsYWdzICYKIAkJCQkgICAgIENQVF9PUF9GTEFHU19BVVRIX1ZFUklGWSkp IHsKQEAgLTM5Miw3ICs0MTgsNyBAQCBjbjEwa19jcHRfZGVxdWV1ZV9wb3N0X3Byb2Nlc3Moc3Ry dWN0IGNueGtfY3B0X3FwICpxcCwKIAkJY29wLT5zdGF0dXMgPSBSVEVfQ1JZUFRPX09QX1NUQVRV U19FUlJPUjsKIAkJcGx0X2RwX2luZm8oIkhXIGNvbXBsZXRpb24gY29kZSAweCV4IiwgcmVzLT5j b21wY29kZSk7CiAKLQkJc3dpdGNoIChyZXMtPmNvbXBjb2RlKSB7CisJCXN3aXRjaCAoY29tcGNv ZGUpIHsKIAkJY2FzZSBDUFRfQ09NUF9JTlNURVJSOgogCQkJcGx0X2RwX2VycigiUmVxdWVzdCBm YWlsZWQgd2l0aCBpbnN0cnVjdGlvbiBlcnJvciIpOwogCQkJYnJlYWs7CmRpZmYgYS9kcml2ZXJz L2NyeXB0by9jbnhrL2NuOWtfaXBzZWMuYyBiL2RyaXZlcnMvY3J5cHRvL2NueGsvY245a19pcHNl Yy5jCShyZWplY3RlZCBodW5rcykKQEAgLTQ4NSw3ICs0ODUsMTEgQEAgY245a19pcHNlY19pbmJf c2FfY3JlYXRlKHN0cnVjdCBjbnhrX2NwdF9xcCAqcXAsCiBzdGF0aWMgaW5saW5lIGludAogY245 a19pcHNlY194Zm9ybV92ZXJpZnkoc3RydWN0IHJ0ZV9zZWN1cml0eV9pcHNlY194Zm9ybSAqaXBz ZWMpCiB7Ci0JUlRFX1NFVF9VU0VEKGlwc2VjKTsKKwlpZiAoaXBzZWMtPmxpZmUuYnl0ZXNfaGFy ZF9saW1pdCAhPSAwIHx8CisJICAgIGlwc2VjLT5saWZlLmJ5dGVzX3NvZnRfbGltaXQgIT0gMCB8 fAorCSAgICBpcHNlYy0+bGlmZS5wYWNrZXRzX2hhcmRfbGltaXQgIT0gMCB8fAorCSAgICBpcHNl Yy0+bGlmZS5wYWNrZXRzX3NvZnRfbGltaXQgIT0gMCkKKwkJcmV0dXJuIC1FTk9UU1VQOwogCiAJ cmV0dXJuIDA7CiB9CkNoZWNraW5nIHBhdGNoIGRyaXZlcnMvY3J5cHRvL29jdGVvbnR4Mi9vdHgy X2lwc2VjX3BvLmguLi4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CglzdHJ1Y3QgcnRlX2Ny eXB0b19zeW1feGZvcm0gKmF1dGhfeGZvcm0sICpjaXBoZXJfeGZvcm07CglpbnQgcmV0OwoKCWlm ICh4Zm9ybS0+dHlwZSA9PSBSVEVfQ1JZUFRPX1NZTV9YRk9STV9BRUFEKQoJCXJldHVybiBpcHNl Y19wb194Zm9ybV9hZWFkX3ZlcmlmeShpcHNlYywgeGZvcm0pOwoKCmVycm9yOiBwYXRjaCBmYWls ZWQ6IGRyaXZlcnMvY3J5cHRvL29jdGVvbnR4Mi9vdHgyX2lwc2VjX3BvLmg6MjkzCkFwcGx5aW5n IHBhdGNoIGRyaXZlcnMvY3J5cHRvL29jdGVvbnR4Mi9vdHgyX2lwc2VjX3BvLmggd2l0aCAxIHJl amVjdC4uLgpSZWplY3RlZCBodW5rICMxLgpkaWZmIGEvZHJpdmVycy9jcnlwdG8vb2N0ZW9udHgy L290eDJfaXBzZWNfcG8uaCBiL2RyaXZlcnMvY3J5cHRvL29jdGVvbnR4Mi9vdHgyX2lwc2VjX3Bv LmgJKHJlamVjdGVkIGh1bmtzKQpAQCAtMjkzLDYgKzI5MywxMiBAQCBpcHNlY19wb194Zm9ybV92 ZXJpZnkoc3RydWN0IHJ0ZV9zZWN1cml0eV9pcHNlY194Zm9ybSAqaXBzZWMsCiAJc3RydWN0IHJ0 ZV9jcnlwdG9fc3ltX3hmb3JtICphdXRoX3hmb3JtLCAqY2lwaGVyX3hmb3JtOwogCWludCByZXQ7 CiAKKwlpZiAoaXBzZWMtPmxpZmUuYnl0ZXNfaGFyZF9saW1pdCAhPSAwIHx8CisJICAgIGlwc2Vj LT5saWZlLmJ5dGVzX3NvZnRfbGltaXQgIT0gMCB8fAorCSAgICBpcHNlYy0+bGlmZS5wYWNrZXRz X2hhcmRfbGltaXQgIT0gMCB8fAorCSAgICBpcHNlYy0+bGlmZS5wYWNrZXRzX3NvZnRfbGltaXQg IT0gMCkKKwkJcmV0dXJuIC1FTk9UU1VQOworCiAJaWYgKHhmb3JtLT50eXBlID09IFJURV9DUllQ VE9fU1lNX1hGT1JNX0FFQUQpCiAJCXJldHVybiBpcHNlY19wb194Zm9ybV9hZWFkX3ZlcmlmeShp cHNlYywgeGZvcm0pOwogCkNoZWNraW5nIHBhdGNoIGFwcC90ZXN0L3Rlc3RfY3J5cHRvZGV2LmMu Li4KZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgkJLyogUHJvY2VzcyBjcnlwdG8gb3BlcmF0 aW9uICovCgkJcHJvY2Vzc19jcnlwdG9fcmVxdWVzdChkZXZfaWQsIHV0X3BhcmFtcy0+b3ApOwoK CQlyZXQgPSB0ZXN0X2lwc2VjX3N0YXR1c19jaGVjayh1dF9wYXJhbXMtPm9wLCBmbGFncywgZGly KTsKCQlpZiAocmV0ICE9IFRFU1RfU1VDQ0VTUykKCQkJZ290byBjcnlwdG9fb3BfZnJlZTsKCgpl cnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC90ZXN0X2NyeXB0b2Rldi5jOjkwNDUKZXJyb3I6 IHdoaWxlIHNlYXJjaGluZyBmb3I6Cgl1bnNpZ25lZCBpbnQgaSwgbmJfcGt0cyA9IDEsIHBhc3Nf Y250ID0gMDsKCWludCByZXQ7CgoJaWYgKGZsYWdzLT5pdl9nZW4pCgkJbmJfcGt0cyA9IElQU0VD X1RFU1RfUEFDS0VUU19NQVg7CgoJZm9yIChpID0gMDsgaSA8IFJURV9ESU0oYWVhZF9saXN0KTsg aSsrKSB7CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC90ZXN0X2NyeXB0b2Rldi5jOjkx MTUKSHVuayAjMyBzdWNjZWVkZWQgYXQgOTIxNSAob2Zmc2V0IDM0IGxpbmVzKS4KZXJyb3I6IHdo aWxlIHNlYXJjaGluZyBmb3I6CgkJCXV0X3NldHVwX3NlY3VyaXR5LCB1dF90ZWFyZG93biwKCQkJ dGVzdF9pcHNlY19wcm90b191ZHBfZW5jYXApLAoJCVRFU1RfQ0FTRV9OQU1FRF9TVCgKCQkJIk5l Z2F0aXZlIHRlc3Q6IElDViBjb3JydXB0aW9uIiwKCQkJdXRfc2V0dXBfc2VjdXJpdHksIHV0X3Rl YXJkb3duLAoJCQl0ZXN0X2lwc2VjX3Byb3RvX2Vycl9pY3ZfY29ycnVwdCksCgplcnJvcjogcGF0 Y2ggZmFpbGVkOiBhcHAvdGVzdC90ZXN0X2NyeXB0b2Rldi5jOjE0MTM2CkNoZWNraW5nIHBhdGNo IGFwcC90ZXN0L3Rlc3RfY3J5cHRvZGV2X3NlY3VyaXR5X2lwc2VjLmMuLi4KZXJyb3I6IHdoaWxl IHNlYXJjaGluZyBmb3I6CgoJCWlmIChmbGFncy0+aXZfZ2VuKQoJCQl0ZC0+aXBzZWNfeGZvcm0u b3B0aW9ucy5pdl9nZW5fZGlzYWJsZSA9IDA7Cgl9CgoJUlRFX1NFVF9VU0VEKHBhcmFtMik7Cgpl cnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC90ZXN0X2NyeXB0b2Rldl9zZWN1cml0eV9pcHNl Yy5jOjE3MwplcnJvcjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKaW50CnRlc3RfaXBzZWNfc3RhdHVz X2NoZWNrKHN0cnVjdCBydGVfY3J5cHRvX29wICpvcCwKCQkJY29uc3Qgc3RydWN0IGlwc2VjX3Rl c3RfZmxhZ3MgKmZsYWdzLAoJCQllbnVtIHJ0ZV9zZWN1cml0eV9pcHNlY19zYV9kaXJlY3Rpb24g ZGlyKQp7CglpbnQgcmV0ID0gVEVTVF9TVUNDRVNTOwoKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFw cC90ZXN0L3Rlc3RfY3J5cHRvZGV2X3NlY3VyaXR5X2lwc2VjLmM6Mzk1CmVycm9yOiB3aGlsZSBz ZWFyY2hpbmcgZm9yOgoJCX0KCX0gZWxzZSB7CgkJaWYgKG9wLT5zdGF0dXMgIT0gUlRFX0NSWVBU T19PUF9TVEFUVVNfU1VDQ0VTUykgewoJCQlwcmludGYoIlNlY3VyaXR5IG9wIHByb2Nlc3Npbmcg ZmFpbGVkXG4iKTsKCQkJcmV0ID0gVEVTVF9GQUlMRUQ7CgkJfQoJfQoKZXJyb3I6IHBhdGNoIGZh aWxlZDogYXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXZfc2VjdXJpdHlfaXBzZWMuYzo0MDYKQ2hlY2tp bmcgcGF0Y2ggYXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXZfc2VjdXJpdHlfaXBzZWMuaC4uLgplcnJv cjogd2hpbGUgc2VhcmNoaW5nIGZvcjoKCnN0cnVjdCBpcHNlY190ZXN0X2ZsYWdzIHsKCWJvb2wg ZGlzcGxheV9hbGc7Cglib29sIGljdl9jb3JydXB0OwoJYm9vbCBpdl9nZW47Cglib29sIHVkcF9l bmNhcDsKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFwcC90ZXN0L3Rlc3RfY3J5cHRvZGV2X3NlY3Vy aXR5X2lwc2VjLmg6NDkKZXJyb3I6IHdoaWxlIHNlYXJjaGluZyBmb3I6CgppbnQgdGVzdF9pcHNl Y19zdGF0dXNfY2hlY2soc3RydWN0IHJ0ZV9jcnlwdG9fb3AgKm9wLAoJCQkgICAgY29uc3Qgc3Ry dWN0IGlwc2VjX3Rlc3RfZmxhZ3MgKmZsYWdzLAoJCQkgICAgZW51bSBydGVfc2VjdXJpdHlfaXBz ZWNfc2FfZGlyZWN0aW9uIGRpcik7CgojZW5kaWYKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFwcC90 ZXN0L3Rlc3RfY3J5cHRvZGV2X3NlY3VyaXR5X2lwc2VjLmg6MTE0CkFwcGx5aW5nIHBhdGNoIGFw cC90ZXN0L3Rlc3RfY3J5cHRvZGV2LmMgd2l0aCAzIHJlamVjdHMuLi4KUmVqZWN0ZWQgaHVuayAj MS4KUmVqZWN0ZWQgaHVuayAjMi4KSHVuayAjMyBhcHBsaWVkIGNsZWFubHkuClJlamVjdGVkIGh1 bmsgIzQuCkFwcGx5aW5nIHBhdGNoIGFwcC90ZXN0L3Rlc3RfY3J5cHRvZGV2X3NlY3VyaXR5X2lw c2VjLmMgd2l0aCAzIHJlamVjdHMuLi4KUmVqZWN0ZWQgaHVuayAjMS4KUmVqZWN0ZWQgaHVuayAj Mi4KUmVqZWN0ZWQgaHVuayAjMy4KQXBwbHlpbmcgcGF0Y2ggYXBwL3Rlc3QvdGVzdF9jcnlwdG9k ZXZfc2VjdXJpdHlfaXBzZWMuaCB3aXRoIDIgcmVqZWN0cy4uLgpSZWplY3RlZCBodW5rICMxLgpS ZWplY3RlZCBodW5rICMyLgpkaWZmIGEvYXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXYuYyBiL2FwcC90 ZXN0L3Rlc3RfY3J5cHRvZGV2LmMJKHJlamVjdGVkIGh1bmtzKQpAQCAtOTA0NSw3ICs5MDQ1LDcg QEAgdGVzdF9pcHNlY19wcm90b19wcm9jZXNzKGNvbnN0IHN0cnVjdCBpcHNlY190ZXN0X2RhdGEg dGRbXSwKIAkJLyogUHJvY2VzcyBjcnlwdG8gb3BlcmF0aW9uICovCiAJCXByb2Nlc3NfY3J5cHRv X3JlcXVlc3QoZGV2X2lkLCB1dF9wYXJhbXMtPm9wKTsKIAotCQlyZXQgPSB0ZXN0X2lwc2VjX3N0 YXR1c19jaGVjayh1dF9wYXJhbXMtPm9wLCBmbGFncywgZGlyKTsKKwkJcmV0ID0gdGVzdF9pcHNl Y19zdGF0dXNfY2hlY2sodXRfcGFyYW1zLT5vcCwgZmxhZ3MsIGRpciwgaSArIDEpOwogCQlpZiAo cmV0ICE9IFRFU1RfU1VDQ0VTUykKIAkJCWdvdG8gY3J5cHRvX29wX2ZyZWU7CiAKQEAgLTkxMTUs NyArOTExNSw4IEBAIHRlc3RfaXBzZWNfcHJvdG9fYWxsKGNvbnN0IHN0cnVjdCBpcHNlY190ZXN0 X2ZsYWdzICpmbGFncykKIAl1bnNpZ25lZCBpbnQgaSwgbmJfcGt0cyA9IDEsIHBhc3NfY250ID0g MDsKIAlpbnQgcmV0OwogCi0JaWYgKGZsYWdzLT5pdl9nZW4pCisJaWYgKGZsYWdzLT5pdl9nZW4g fHwKKwkgICAgZmxhZ3MtPnNhX2V4cGlyeV9wa3RzX3NvZnQpCiAJCW5iX3BrdHMgPSBJUFNFQ19U RVNUX1BBQ0tFVFNfTUFYOwogCiAJZm9yIChpID0gMDsgaSA8IFJURV9ESU0oYWVhZF9saXN0KTsg aSsrKSB7CkBAIC0xNDEzNiw2ICsxNDE0OSwxMCBAQCBzdGF0aWMgc3RydWN0IHVuaXRfdGVzdF9z dWl0ZSBpcHNlY19wcm90b190ZXN0c3VpdGUgID0gewogCQkJdXRfc2V0dXBfc2VjdXJpdHksIHV0 X3RlYXJkb3duLAogCQkJdGVzdF9pcHNlY19wcm90b191ZHBfZW5jYXApLAogCQlURVNUX0NBU0Vf TkFNRURfU1QoCisJCQkiU0EgZXhwaXJ5IHBhY2tldHMgc29mdCIsCisJCQl1dF9zZXR1cF9zZWN1 cml0eSwgdXRfdGVhcmRvd24sCisJCQl0ZXN0X2lwc2VjX3Byb3RvX3NhX2V4cF9wa3RzX3NvZnQp LAorCQlURVNUX0NBU0VfTkFNRURfU1QoCiAJCQkiTmVnYXRpdmUgdGVzdDogSUNWIGNvcnJ1cHRp b24iLAogCQkJdXRfc2V0dXBfc2VjdXJpdHksIHV0X3RlYXJkb3duLAogCQkJdGVzdF9pcHNlY19w cm90b19lcnJfaWN2X2NvcnJ1cHQpLApkaWZmIGEvYXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXZfc2Vj dXJpdHlfaXBzZWMuYyBiL2FwcC90ZXN0L3Rlc3RfY3J5cHRvZGV2X3NlY3VyaXR5X2lwc2VjLmMJ KHJlamVjdGVkIGh1bmtzKQpAQCAtMTczLDYgKzE3MywxMCBAQCB0ZXN0X2lwc2VjX3RkX3ByZXBh cmUoY29uc3Qgc3RydWN0IGNyeXB0b19wYXJhbSAqcGFyYW0xLAogCiAJCWlmIChmbGFncy0+aXZf Z2VuKQogCQkJdGQtPmlwc2VjX3hmb3JtLm9wdGlvbnMuaXZfZ2VuX2Rpc2FibGUgPSAwOworCisJ CWlmIChmbGFncy0+c2FfZXhwaXJ5X3BrdHNfc29mdCkKKwkJCXRkLT5pcHNlY194Zm9ybS5saWZl LnBhY2tldHNfc29mdF9saW1pdCA9CisJCQkJCUlQU0VDX1RFU1RfUEFDS0VUU19NQVggLSAxOwog CX0KIAogCVJURV9TRVRfVVNFRChwYXJhbTIpOwpAQCAtMzk1LDcgKzM5OSw4IEBAIHRlc3RfaXBz ZWNfcG9zdF9wcm9jZXNzKHN0cnVjdCBydGVfbWJ1ZiAqbSwgY29uc3Qgc3RydWN0IGlwc2VjX3Rl c3RfZGF0YSAqdGQsCiBpbnQKIHRlc3RfaXBzZWNfc3RhdHVzX2NoZWNrKHN0cnVjdCBydGVfY3J5 cHRvX29wICpvcCwKIAkJCWNvbnN0IHN0cnVjdCBpcHNlY190ZXN0X2ZsYWdzICpmbGFncywKLQkJ CWVudW0gcnRlX3NlY3VyaXR5X2lwc2VjX3NhX2RpcmVjdGlvbiBkaXIpCisJCQllbnVtIHJ0ZV9z ZWN1cml0eV9pcHNlY19zYV9kaXJlY3Rpb24gZGlyLAorCQkJaW50IHBrdF9udW0pCiB7CiAJaW50 IHJldCA9IFRFU1RfU1VDQ0VTUzsKIApAQCAtNDA2LDcgKzQxMSwxNiBAQCB0ZXN0X2lwc2VjX3N0 YXR1c19jaGVjayhzdHJ1Y3QgcnRlX2NyeXB0b19vcCAqb3AsCiAJCX0KIAl9IGVsc2UgewogCQlp ZiAob3AtPnN0YXR1cyAhPSBSVEVfQ1JZUFRPX09QX1NUQVRVU19TVUNDRVNTKSB7Ci0JCQlwcmlu dGYoIlNlY3VyaXR5IG9wIHByb2Nlc3NpbmcgZmFpbGVkXG4iKTsKKwkJCXByaW50ZigiU2VjdXJp dHkgb3AgcHJvY2Vzc2luZyBmYWlsZWQgW3BrdF9udW06ICVkXVxuIiwKKwkJCSAgICAgICBwa3Rf bnVtKTsKKwkJCXJldCA9IFRFU1RfRkFJTEVEOworCQl9CisJfQorCisJaWYgKGZsYWdzLT5zYV9l eHBpcnlfcGt0c19zb2Z0ICYmIHBrdF9udW0gPT0gSVBTRUNfVEVTVF9QQUNLRVRTX01BWCkgewor CQlpZiAoIShvcC0+YXV4X2ZsYWdzICYKKwkJICAgICAgUlRFX0NSWVBUT19PUF9BVVhfRkxBR1Nf SVBTRUNfU09GVF9FWFBJUlkpKSB7CisJCQlwcmludGYoIlNBIHNvZnQgZXhwaXJ5IChwa3RzKSB0 ZXN0IGZhaWxlZFxuIik7CiAJCQlyZXQgPSBURVNUX0ZBSUxFRDsKIAkJfQogCX0KZGlmZiBhL2Fw cC90ZXN0L3Rlc3RfY3J5cHRvZGV2X3NlY3VyaXR5X2lwc2VjLmggYi9hcHAvdGVzdC90ZXN0X2Ny eXB0b2Rldl9zZWN1cml0eV9pcHNlYy5oCShyZWplY3RlZCBodW5rcykKQEAgLTQ5LDYgKzQ5LDcg QEAgc3RydWN0IGlwc2VjX3Rlc3RfZGF0YSB7CiAKIHN0cnVjdCBpcHNlY190ZXN0X2ZsYWdzIHsK IAlib29sIGRpc3BsYXlfYWxnOworCWJvb2wgc2FfZXhwaXJ5X3BrdHNfc29mdDsKIAlib29sIGlj dl9jb3JydXB0OwogCWJvb2wgaXZfZ2VuOwogCWJvb2wgdWRwX2VuY2FwOwpAQCAtMTE0LDYgKzEx NSw3IEBAIGludCB0ZXN0X2lwc2VjX3Bvc3RfcHJvY2VzcyhzdHJ1Y3QgcnRlX21idWYgKm0sCiAK IGludCB0ZXN0X2lwc2VjX3N0YXR1c19jaGVjayhzdHJ1Y3QgcnRlX2NyeXB0b19vcCAqb3AsCiAJ CQkgICAgY29uc3Qgc3RydWN0IGlwc2VjX3Rlc3RfZmxhZ3MgKmZsYWdzLAotCQkJICAgIGVudW0g cnRlX3NlY3VyaXR5X2lwc2VjX3NhX2RpcmVjdGlvbiBkaXIpOworCQkJICAgIGVudW0gcnRlX3Nl Y3VyaXR5X2lwc2VjX3NhX2RpcmVjdGlvbiBkaXIsCisJCQkgICAgaW50IHBrdF9udW0pOwogCiAj ZW5kaWYKQ2hlY2tpbmcgcGF0Y2ggYXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXYuYy4uLgplcnJvcjog YXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXYuYzogZG9lcyBub3QgbWF0Y2ggaW5kZXgKQ2hlY2tpbmcg cGF0Y2ggYXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXZfc2VjdXJpdHlfaXBzZWMuYy4uLgplcnJvcjog d2hpbGUgc2VhcmNoaW5nIGZvcjoKCQkJdGRfaW5iW2ldLmlucHV0X3RleHQuZGF0YVtpY3ZfcG9z XSArPSAxOwoJCX0KCgkJaWYgKGZsYWdzLT51ZHBfZW5jYXApCgkJCXRkX2luYltpXS5pcHNlY194 Zm9ybS5vcHRpb25zLnVkcF9lbmNhcCA9IDE7CgoKZXJyb3I6IHBhdGNoIGZhaWxlZDogYXBwL3Rl c3QvdGVzdF9jcnlwdG9kZXZfc2VjdXJpdHlfaXBzZWMuYzoyMDAKZXJyb3I6IHdoaWxlIHNlYXJj aGluZyBmb3I6Cgl1aW50OF90ICpvdXRwdXRfdGV4dCA9IHJ0ZV9wa3RtYnVmX210b2QobSwgdWlu dDhfdCAqKTsKCXVpbnQzMl90IHNraXAsIGxlbiA9IHJ0ZV9wa3RtYnVmX3BrdF9sZW4obSk7CgoJ LyogRm9yIG5lZ2F0aXZlIHRlc3RzLCBubyBuZWVkIHRvIGRvIHZlcmlmaWNhdGlvbiAqLwoJaWYg KGZsYWdzLT5pY3ZfY29ycnVwdCAmJgoJICAgIHRkLT5pcHNlY194Zm9ybS5kaXJlY3Rpb24gPT0g UlRFX1NFQ1VSSVRZX0lQU0VDX1NBX0RJUl9JTkdSRVNTKQoJCXJldHVybiBURVNUX1NVQ0NFU1M7 CgoJaWYgKHRkLT5pcHNlY194Zm9ybS5kaXJlY3Rpb24gPT0gUlRFX1NFQ1VSSVRZX0lQU0VDX1NB X0RJUl9FR1JFU1MgJiYKCmVycm9yOiBwYXRjaCBmYWlsZWQ6IGFwcC90ZXN0L3Rlc3RfY3J5cHRv ZGV2X3NlY3VyaXR5X2lwc2VjLmM6Mjg1CmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgp7Cglp bnQgcmV0ID0gVEVTVF9TVUNDRVNTOwoKCWlmIChkaXIgPT0gUlRFX1NFQ1VSSVRZX0lQU0VDX1NB X0RJUl9JTkdSRVNTICYmIGZsYWdzLT5pY3ZfY29ycnVwdCkgewoJCWlmIChvcC0+c3RhdHVzICE9 IFJURV9DUllQVE9fT1BfU1RBVFVTX0VSUk9SKSB7CgkJCXByaW50ZigiSUNWIGNvcnJ1cHRpb24g dGVzdCBjYXNlIGZhaWxlZFxuIik7CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC90ZXN0 X2NyeXB0b2Rldl9zZWN1cml0eV9pcHNlYy5jOjQwNApDaGVja2luZyBwYXRjaCBhcHAvdGVzdC90 ZXN0X2NyeXB0b2Rldl9zZWN1cml0eV9pcHNlYy5oLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcg Zm9yOgpzdHJ1Y3QgaXBzZWNfdGVzdF9mbGFncyB7Cglib29sIGRpc3BsYXlfYWxnOwoJYm9vbCBz YV9leHBpcnlfcGt0c19zb2Z0OwoJYm9vbCBpY3ZfY29ycnVwdDsKCWJvb2wgaXZfZ2VuOwoJYm9v bCB1ZHBfZW5jYXA7CgplcnJvcjogcGF0Y2ggZmFpbGVkOiBhcHAvdGVzdC90ZXN0X2NyeXB0b2Rl dl9zZWN1cml0eV9pcHNlYy5oOjUwCkFwcGx5aW5nIHBhdGNoIGFwcC90ZXN0L3Rlc3RfY3J5cHRv ZGV2X3NlY3VyaXR5X2lwc2VjLmMgd2l0aCAzIHJlamVjdHMuLi4KUmVqZWN0ZWQgaHVuayAjMS4K UmVqZWN0ZWQgaHVuayAjMi4KUmVqZWN0ZWQgaHVuayAjMy4KQXBwbHlpbmcgcGF0Y2ggYXBwL3Rl c3QvdGVzdF9jcnlwdG9kZXZfc2VjdXJpdHlfaXBzZWMuaCB3aXRoIDEgcmVqZWN0Li4uClJlamVj dGVkIGh1bmsgIzEuCmRpZmYgYS9hcHAvdGVzdC90ZXN0X2NyeXB0b2Rldl9zZWN1cml0eV9pcHNl Yy5jIGIvYXBwL3Rlc3QvdGVzdF9jcnlwdG9kZXZfc2VjdXJpdHlfaXBzZWMuYwkocmVqZWN0ZWQg aHVua3MpCkBAIC0yMDAsNiArMjAwLDEwIEBAIHRlc3RfaXBzZWNfdGRfdXBkYXRlKHN0cnVjdCBp cHNlY190ZXN0X2RhdGEgdGRfaW5iW10sCiAJCQl0ZF9pbmJbaV0uaW5wdXRfdGV4dC5kYXRhW2lj dl9wb3NdICs9IDE7CiAJCX0KIAorCQlpZiAoZmxhZ3MtPnNhX2V4cGlyeV9wa3RzX2hhcmQpCisJ CQl0ZF9pbmJbaV0uaXBzZWNfeGZvcm0ubGlmZS5wYWNrZXRzX2hhcmRfbGltaXQgPQorCQkJCQlJ UFNFQ19URVNUX1BBQ0tFVFNfTUFYIC0gMTsKKwogCQlpZiAoZmxhZ3MtPnVkcF9lbmNhcCkKIAkJ CXRkX2luYltpXS5pcHNlY194Zm9ybS5vcHRpb25zLnVkcF9lbmNhcCA9IDE7CiAKQEAgLTI4NSw5 ICsyODksMTAgQEAgdGVzdF9pcHNlY190ZF92ZXJpZnkoc3RydWN0IHJ0ZV9tYnVmICptLCBjb25z dCBzdHJ1Y3QgaXBzZWNfdGVzdF9kYXRhICp0ZCwKIAl1aW50OF90ICpvdXRwdXRfdGV4dCA9IHJ0 ZV9wa3RtYnVmX210b2QobSwgdWludDhfdCAqKTsKIAl1aW50MzJfdCBza2lwLCBsZW4gPSBydGVf cGt0bWJ1Zl9wa3RfbGVuKG0pOwogCi0JLyogRm9yIG5lZ2F0aXZlIHRlc3RzLCBubyBuZWVkIHRv IGRvIHZlcmlmaWNhdGlvbiAqLwotCWlmIChmbGFncy0+aWN2X2NvcnJ1cHQgJiYKLQkgICAgdGQt Pmlwc2VjX3hmb3JtLmRpcmVjdGlvbiA9PSBSVEVfU0VDVVJJVFlfSVBTRUNfU0FfRElSX0lOR1JF U1MpCisJLyogRm9yIHRlc3RzIHdpdGggc3RhdHVzIGFzIGVycm9yIGZvciB0ZXN0IHN1Y2Nlc3Ms IHNraXAgdmVyaWZpY2F0aW9uICovCisJaWYgKHRkLT5pcHNlY194Zm9ybS5kaXJlY3Rpb24gPT0g UlRFX1NFQ1VSSVRZX0lQU0VDX1NBX0RJUl9JTkdSRVNTICYmCisJICAgIChmbGFncy0+aWN2X2Nv cnJ1cHQgfHwKKwkgICAgIGZsYWdzLT5zYV9leHBpcnlfcGt0c19oYXJkKSkKIAkJcmV0dXJuIFRF U1RfU1VDQ0VTUzsKIAogCWlmICh0ZC0+aXBzZWNfeGZvcm0uZGlyZWN0aW9uID09IFJURV9TRUNV UklUWV9JUFNFQ19TQV9ESVJfRUdSRVNTICYmCkBAIC00MDQsNiArNDA5LDE3IEBAIHRlc3RfaXBz ZWNfc3RhdHVzX2NoZWNrKHN0cnVjdCBydGVfY3J5cHRvX29wICpvcCwKIHsKIAlpbnQgcmV0ID0g VEVTVF9TVUNDRVNTOwogCisJaWYgKGRpciA9PSBSVEVfU0VDVVJJVFlfSVBTRUNfU0FfRElSX0lO R1JFU1MgJiYKKwkgICAgZmxhZ3MtPnNhX2V4cGlyeV9wa3RzX2hhcmQgJiYKKwkgICAgcGt0X251 bSA9PSBJUFNFQ19URVNUX1BBQ0tFVFNfTUFYKSB7CisJCWlmIChvcC0+c3RhdHVzICE9IFJURV9D UllQVE9fT1BfU1RBVFVTX0VSUk9SKSB7CisJCQlwcmludGYoIlNBIGhhcmQgZXhwaXJ5IChwa3Rz KSB0ZXN0IGZhaWxlZFxuIik7CisJCQlyZXR1cm4gVEVTVF9GQUlMRUQ7CisJCX0gZWxzZSB7CisJ CQlyZXR1cm4gVEVTVF9TVUNDRVNTOworCQl9CisJfQorCiAJaWYgKGRpciA9PSBSVEVfU0VDVVJJ VFlfSVBTRUNfU0FfRElSX0lOR1JFU1MgJiYgZmxhZ3MtPmljdl9jb3JydXB0KSB7CiAJCWlmIChv cC0+c3RhdHVzICE9IFJURV9DUllQVE9fT1BfU1RBVFVTX0VSUk9SKSB7CiAJCQlwcmludGYoIklD ViBjb3JydXB0aW9uIHRlc3QgY2FzZSBmYWlsZWRcbiIpOwpkaWZmIGEvYXBwL3Rlc3QvdGVzdF9j cnlwdG9kZXZfc2VjdXJpdHlfaXBzZWMuaCBiL2FwcC90ZXN0L3Rlc3RfY3J5cHRvZGV2X3NlY3Vy aXR5X2lwc2VjLmgJKHJlamVjdGVkIGh1bmtzKQpAQCAtNTAsNiArNTAsNyBAQCBzdHJ1Y3QgaXBz ZWNfdGVzdF9kYXRhIHsKIHN0cnVjdCBpcHNlY190ZXN0X2ZsYWdzIHsKIAlib29sIGRpc3BsYXlf YWxnOwogCWJvb2wgc2FfZXhwaXJ5X3BrdHNfc29mdDsKKwlib29sIHNhX2V4cGlyeV9wa3RzX2hh cmQ7CiAJYm9vbCBpY3ZfY29ycnVwdDsKIAlib29sIGl2X2dlbjsKIAlib29sIHVkcF9lbmNhcDsK Q2hlY2tpbmcgcGF0Y2ggZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuYy4uLgplcnJvcjogd2hp bGUgc2VhcmNoaW5nIGZvcjoKCQl9CgkJLyogVE9ETyBzdXBwb3J0IGZvciBUcmFuc3BvcnQgKi8K CX0KCWlwc2VjLT5saWZlLnBhY2tldHNfc29mdF9saW1pdCA9IElQU0VDX09GRkxPQURfUEtUU19T T0ZUTElNSVQ7CglpcHNlYy0+cmVwbGF5X3dpbl9zeiA9IGFwcF9zYV9wcm0ud2luZG93X3NpemU7 CglpcHNlYy0+b3B0aW9ucy5lc24gPSBhcHBfc2FfcHJtLmVuYWJsZV9lc247CglpcHNlYy0+b3B0 aW9ucy51ZHBfZW5jYXAgPSBzYS0+dWRwX2VuY2FwOwoKZXJyb3I6IHBhdGNoIGZhaWxlZDogZXhh bXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuYzo0OQpDaGVja2luZyBwYXRjaCBleGFtcGxlcy9pcHNl Yy1zZWNndy9pcHNlYy5oLi4uCmVycm9yOiB3aGlsZSBzZWFyY2hpbmcgZm9yOgoKI2RlZmluZSBN QVhfRElHRVNUX1NJWkUgMzIgLyogQnl0ZXMgLS0gMjU2IGJpdHMgKi8KCiNkZWZpbmUgSVBTRUNf T0ZGTE9BRF9QS1RTX1NPRlRMSU1JVCAweGZmZmZmZjAwCgojZGVmaW5lIElWX09GRlNFVAkJKHNp emVvZihzdHJ1Y3QgcnRlX2NyeXB0b19vcCkgKyBcCgkJCQlzaXplb2Yoc3RydWN0IHJ0ZV9jcnlw dG9fc3ltX29wKSkKCgplcnJvcjogcGF0Y2ggZmFpbGVkOiBleGFtcGxlcy9pcHNlYy1zZWNndy9p cHNlYy5oOjIzCkFwcGx5aW5nIHBhdGNoIGV4YW1wbGVzL2lwc2VjLXNlY2d3L2lwc2VjLmMgd2l0 aCAxIHJlamVjdC4uLgpSZWplY3RlZCBodW5rICMxLgpBcHBseWluZyBwYXRjaCBleGFtcGxlcy9p cHNlYy1zZWNndy9pcHNlYy5oIHdpdGggMSByZWplY3QuLi4KUmVqZWN0ZWQgaHVuayAjMS4KZGlm ZiBhL2V4YW1wbGVzL2lwc2VjLXNlY2d3L2lwc2VjLmMgYi9leGFtcGxlcy9pcHNlYy1zZWNndy9p cHNlYy5jCShyZWplY3RlZCBodW5rcykKQEAgLTQ5LDcgKzQ5LDYgQEAgc2V0X2lwc2VjX2NvbmYo c3RydWN0IGlwc2VjX3NhICpzYSwgc3RydWN0IHJ0ZV9zZWN1cml0eV9pcHNlY194Zm9ybSAqaXBz ZWMpCiAJCX0KIAkJLyogVE9ETyBzdXBwb3J0IGZvciBUcmFuc3BvcnQgKi8KIAl9Ci0JaXBzZWMt PmxpZmUucGFja2V0c19zb2Z0X2xpbWl0ID0gSVBTRUNfT0ZGTE9BRF9QS1RTX1NPRlRMSU1JVDsK IAlpcHNlYy0+cmVwbGF5X3dpbl9zeiA9IGFwcF9zYV9wcm0ud2luZG93X3NpemU7CiAJaXBzZWMt Pm9wdGlvbnMuZXNuID0gYXBwX3NhX3BybS5lbmFibGVfZXNuOwogCWlwc2VjLT5vcHRpb25zLnVk cF9lbmNhcCA9IHNhLT51ZHBfZW5jYXA7CmRpZmYgYS9leGFtcGxlcy9pcHNlYy1zZWNndy9pcHNl Yy5oIGIvZXhhbXBsZXMvaXBzZWMtc2VjZ3cvaXBzZWMuaAkocmVqZWN0ZWQgaHVua3MpCkBAIC0y Myw4ICsyMyw2IEBACiAKICNkZWZpbmUgTUFYX0RJR0VTVF9TSVpFIDMyIC8qIEJ5dGVzIC0tIDI1 NiBiaXRzICovCiAKLSNkZWZpbmUgSVBTRUNfT0ZGTE9BRF9QS1RTX1NPRlRMSU1JVCAweGZmZmZm ZjAwCi0KICNkZWZpbmUgSVZfT0ZGU0VUCQkoc2l6ZW9mKHN0cnVjdCBydGVfY3J5cHRvX29wKSAr IFwKIAkJCQlzaXplb2Yoc3RydWN0IHJ0ZV9jcnlwdG9fc3ltX29wKSkKIAoKaHR0cHM6Ly9sYWIu ZHBkay5vcmcvcmVzdWx0cy9kYXNoYm9hcmQvcGF0Y2hzZXRzLzE5MDE2LwoKVU5ILUlPTCBEUERL IENvbW11bml0eSBMYWIK --===============6754930460071255578==--