Received: by 2002:a25:683:0:0:0:0:0 with SMTP id 125csp1106048ybg; Tue, 2 Jun 2020 01:16:21 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzv7XVcOygBqhkmL5Hif+RzG4nEz3oeW5neWKO3wBI5WL1PUwmAYqXOxdhWEgXk53gmIPSr X-Received: by 2002:a17:906:1b1b:: with SMTP id o27mr110639ejg.264.1591085781142; Tue, 02 Jun 2020 01:16:21 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1591085781; cv=none; d=google.com; s=arc-20160816; b=OGd6VaeNmuBjUU20trOctPbOiC1VAG1Lv7Pmn4IgdcOARefc4eI+pkxiTUFYR84/dF rj58WbtGp8EbUhEzwZiANRrNO0EvH/PbnK/rytOCe0vGPNQU54URYOub72aFTTOf6yoG sImYmjyXEKZ7ruXYKBCtbLZr/pttbPVjeVLlJdVkQwPZ3ig/DhSPwwFA77MNwJeKXGpN zWVlRaKVj2X55AzEWVmx3AjEMPN0u4OLnJt2s0z05y/fUc4shzM/LOLGN9Twj+y7CSfa t+ZGTg+Qkp7wKrGdtZLWf9kQmaV4T90upc4v3Vpr/AMLlc+p60kEmyavQQPlZAzCRepi 2UNQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=L04bYCk8wivAACUMFnflEPSxZwU86UwuPofSNkaCMCU=; b=0O2oK++JAWLqtf7obwZLJ1OdHRmcciVso3Bc+nUecE2qJ9bfqAq2030bSMlUNfE3lo RT2XFMs532d1BPeGq5+4vuOEKK0A6wP7EbGnEkkceNWkgkCXE+cMJPULtuIQuh4d5ekg qRmjNqAZfiSpUGRF/5ir3PdexAmA8XLM3B4tngMsLRZGm9rj9NELg9+oeDQimpo+d52d 8ugwrr1YSjoYdzcfnwpr0yvduy3lf2tiSaUFe0nyeCl3O83BIu+T+9CCTWOB5GRxR9Ih JVFz3UepRLpd0rq9+IM9tFTU3tK+vlxscSLFV61nA30GA+uyRqjQDMwdNNGCZnhRoN6R F0Dw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b="kK/IlOt+"; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id b22si1124380edw.120.2020.06.02.01.15.57; Tue, 02 Jun 2020 01:16:21 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@mediatek.com header.s=dk header.b="kK/IlOt+"; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=mediatek.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726267AbgFBIPM (ORCPT + 99 others); Tue, 2 Jun 2020 04:15:12 -0400 Received: from mailgw01.mediatek.com ([210.61.82.183]:26864 "EHLO mailgw01.mediatek.com" rhost-flags-OK-FAIL-OK-FAIL) by vger.kernel.org with ESMTP id S1726185AbgFBIPJ (ORCPT ); Tue, 2 Jun 2020 04:15:09 -0400 X-UUID: 41f700aa76014982907c2e4dcb054db8-20200602 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mediatek.com; s=dk; h=Content-Transfer-Encoding:Content-Type:MIME-Version:References:In-Reply-To:Message-ID:Date:Subject:CC:To:From; bh=L04bYCk8wivAACUMFnflEPSxZwU86UwuPofSNkaCMCU=; b=kK/IlOt+LmAuxs+qhSF4osH/4xMPI0ZIGCblJ1ptxihKEa55ui80wayDtP2Qm4r9TYCmY6fx4S9A4re0x8XZyBuYBBguZOwtNMeiutEo6e+0CBEjJ66dxCH06vEmALJHFOfr1vyL5mBPw7uh1kfJcM0Zd6gv59VP1S6zP+stwMM=; X-UUID: 41f700aa76014982907c2e4dcb054db8-20200602 Received: from mtkcas10.mediatek.inc [(172.21.101.39)] by mailgw01.mediatek.com (envelope-from ) (Cellopoint E-mail Firewall v4.1.10 Build 0809 with TLS) with ESMTP id 1379994272; Tue, 02 Jun 2020 16:15:00 +0800 Received: from mtkcas08.mediatek.inc (172.21.101.126) by mtkmbs01n2.mediatek.inc (172.21.101.79) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Tue, 2 Jun 2020 16:14:59 +0800 Received: from mtkswgap22.mediatek.inc (172.21.77.33) by mtkcas08.mediatek.inc (172.21.101.73) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Tue, 2 Jun 2020 16:14:58 +0800 From: Neal Liu To: Matt Mackall , Herbert Xu , Rob Herring , Matthias Brugger , Sean Wang , Arnd Bergmann , Greg Kroah-Hartman CC: Neal Liu , , , , , lkml , , Crystal Guo Subject: [PATCH v6 2/2] hwrng: add sec-rng driver Date: Tue, 2 Jun 2020 16:14:38 +0800 Message-ID: <1591085678-22764-3-git-send-email-neal.liu@mediatek.com> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1591085678-22764-1-git-send-email-neal.liu@mediatek.com> References: <1591085678-22764-1-git-send-email-neal.liu@mediatek.com> MIME-Version: 1.0 Content-Type: text/plain X-TM-SNTS-SMTP: 909ABA3B6E64AD00041CC4B3A9BF7D20E656DA2E14FD0DBC349B80906CF174CA2000:8 X-MTK: N Content-Transfer-Encoding: base64 Sender: linux-crypto-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org Rm9yIHNlY3VyaXR5IGF3YXJlbmVzcyBTb0NzIG9uIEFSTXY4IHdpdGggVHJ1c3Rab25lIGVuYWJs ZWQsDQpwZXJpcGhlcmFscyBsaWtlIGVudHJvcHkgc291cmNlcyBpcyBub3QgYWNjZXNzaWJsZSBm cm9tIG5vcm1hbCB3b3JsZA0KKGxpbnV4KSBhbmQgcmF0aGVyIGFjY2Vzc2libGUgZnJvbSBzZWN1 cmUgd29ybGQgKEhZUC9BVEYvVEVFKSBvbmx5Lg0KVGhpcyBkcml2ZXIgYWltcyB0byBwcm92aWRl IGEgZ2VuZXJpYyBpbnRlcmZhY2UgdG8gQXJtIFRydXN0ZWQNCkZpcm13YXJlIG9yIEh5cGVydmlz b3Igcm5nIHNlcnZpY2UuDQoNClNpZ25lZC1vZmYtYnk6IE5lYWwgTGl1IDxuZWFsLmxpdUBtZWRp YXRlay5jb20+DQotLS0NCiBkcml2ZXJzL2NoYXIvaHdfcmFuZG9tL0tjb25maWcgICB8ICAgMTMg KysrKw0KIGRyaXZlcnMvY2hhci9od19yYW5kb20vTWFrZWZpbGUgIHwgICAgMSArDQogZHJpdmVy cy9jaGFyL2h3X3JhbmRvbS9zZWMtcm5nLmMgfCAgMTU1ICsrKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysrDQogMyBmaWxlcyBjaGFuZ2VkLCAxNjkgaW5zZXJ0aW9ucygrKQ0KIGNy ZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL2NoYXIvaHdfcmFuZG9tL3NlYy1ybmcuYw0KDQpkaWZm IC0tZ2l0IGEvZHJpdmVycy9jaGFyL2h3X3JhbmRvbS9LY29uZmlnIGIvZHJpdmVycy9jaGFyL2h3 X3JhbmRvbS9LY29uZmlnDQppbmRleCA5YmM0NmRhLi5jYjljOGE5IDEwMDY0NA0KLS0tIGEvZHJp dmVycy9jaGFyL2h3X3JhbmRvbS9LY29uZmlnDQorKysgYi9kcml2ZXJzL2NoYXIvaHdfcmFuZG9t L0tjb25maWcNCkBAIC00NzQsNiArNDc0LDE5IEBAIGNvbmZpZyBIV19SQU5ET01fS0VZU1RPTkUN CiAJaGVscA0KIAkgIFRoaXMgb3B0aW9uIGVuYWJsZXMgS2V5c3RvbmUncyBoYXJkd2FyZSByYW5k b20gZ2VuZXJhdG9yLg0KIA0KK2NvbmZpZyBIV19SQU5ET01fU0VDVVJFDQorCXRyaXN0YXRlICJB cm0gU2VjdXJpdHkgUmFuZG9tIE51bWJlciBHZW5lcmF0b3Igc3VwcG9ydCINCisJZGVwZW5kcyBv biBIQVZFX0FSTV9TTUNDQyB8fCBDT01QSUxFX1RFU1QNCisJZGVmYXVsdCBIV19SQU5ET00NCisJ aGVscA0KKwkgIFRoaXMgZHJpdmVyIHByb3ZpZGVzIGtlcm5lbC1zaWRlIHN1cHBvcnQgZm9yIHRo ZSBBcm0gU2VjdXJpdHkNCisJICBSYW5kb20gTnVtYmVyIEdlbmVyYXRvci4NCisNCisJICBUbyBj b21waWxlIHRoaXMgZHJpdmVyIGFzIGEgbW9kdWxlLCBjaG9vc2UgTSBoZXJlLiB0aGUNCisJICBt b2R1bGUgd2lsbCBiZSBjYWxsZWQgc2VjLXJuZy4NCisNCisJICBJZiB1bnN1cmUsIHNheSBZLg0K Kw0KIGVuZGlmICMgSFdfUkFORE9NDQogDQogY29uZmlnIFVNTF9SQU5ET00NCmRpZmYgLS1naXQg YS9kcml2ZXJzL2NoYXIvaHdfcmFuZG9tL01ha2VmaWxlIGIvZHJpdmVycy9jaGFyL2h3X3JhbmRv bS9NYWtlZmlsZQ0KaW5kZXggYTc4MDFiNC4uMDQ1MzNkMSAxMDA2NDQNCi0tLSBhL2RyaXZlcnMv Y2hhci9od19yYW5kb20vTWFrZWZpbGUNCisrKyBiL2RyaXZlcnMvY2hhci9od19yYW5kb20vTWFr ZWZpbGUNCkBAIC00MSwzICs0MSw0IEBAIG9iai0kKENPTkZJR19IV19SQU5ET01fUzM5MCkgKz0g czM5MC10cm5nLm8NCiBvYmotJChDT05GSUdfSFdfUkFORE9NX0tFWVNUT05FKSArPSBrcy1zYS1y bmcubw0KIG9iai0kKENPTkZJR19IV19SQU5ET01fT1BURUUpICs9IG9wdGVlLXJuZy5vDQogb2Jq LSQoQ09ORklHX0hXX1JBTkRPTV9OUENNKSArPSBucGNtLXJuZy5vDQorb2JqLSQoQ09ORklHX0hX X1JBTkRPTV9TRUNVUkUpICs9IHNlYy1ybmcubw0KZGlmZiAtLWdpdCBhL2RyaXZlcnMvY2hhci9o d19yYW5kb20vc2VjLXJuZy5jIGIvZHJpdmVycy9jaGFyL2h3X3JhbmRvbS9zZWMtcm5nLmMNCm5l dyBmaWxlIG1vZGUgMTAwNjQ0DQppbmRleCAwMDAwMDAwLi5jNmQzODcyDQotLS0gL2Rldi9udWxs DQorKysgYi9kcml2ZXJzL2NoYXIvaHdfcmFuZG9tL3NlYy1ybmcuYw0KQEAgLTAsMCArMSwxNTUg QEANCisvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogR1BMLTIuMA0KKy8qDQorICogQ29weXJp Z2h0IChDKSAyMDIwIE1lZGlhVGVrIEluYy4NCisgKi8NCisNCisjaW5jbHVkZSA8bGludXgvYXJt LXNtY2NjLmg+DQorI2luY2x1ZGUgPGxpbnV4L2h3X3JhbmRvbS5oPg0KKyNpbmNsdWRlIDxsaW51 eC9tb2R1bGUuaD4NCisjaW5jbHVkZSA8bGludXgvb2YuaD4NCisjaW5jbHVkZSA8bGludXgvcGxh dGZvcm1fZGV2aWNlLmg+DQorDQorI2RlZmluZSBTTUNfUkVUX05VTQk0DQorI2RlZmluZSBTRUNf Uk5EX1NJWkUJKHNpemVvZih1MzIpICogU01DX1JFVF9OVU0pDQorDQorI2RlZmluZSBIV1JOR19T TUNfRkFTVF9DQUxMX1ZBTChmdW5jX251bSkgXA0KKwlBUk1fU01DQ0NfQ0FMTF9WQUwoQVJNX1NN Q0NDX0ZBU1RfQ0FMTCwgQVJNX1NNQ0NDX1NNQ18zMiwgXA0KKwkJCSAgIEFSTV9TTUNDQ19PV05F Ul9TSVAsIChmdW5jX251bSkpDQorDQorI2RlZmluZSB0b19zZWNfcm5nKHApCWNvbnRhaW5lcl9v ZihwLCBzdHJ1Y3Qgc2VjX3JuZ19wcml2LCBybmcpDQorDQordHlwZWRlZiB2b2lkIChzZWNfcm5n X2ZuKSh1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nLCB1bnNpZ25lZCBsb25nLA0KKwkJCSAg dW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywgdW5zaWduZWQgbG9uZywNCisJCQkgIHVuc2ln bmVkIGxvbmcsIHVuc2lnbmVkIGxvbmcsDQorCQkJICBzdHJ1Y3QgYXJtX3NtY2NjX3JlcyAqKTsN CisNCitzdHJ1Y3Qgc2VjX3JuZ19wcml2IHsNCisJdTE2IGZ1bmNfbnVtOw0KKwlzZWNfcm5nX2Zu ICpybmdfZm47DQorCXN0cnVjdCBod3JuZyBybmc7DQorfTsNCisNCisvKiBTaW1wbGUgd3JhcHBl ciBmdW5jdGlvbnMgdG8gYmUgYWJsZSB0byB1c2UgYSBmdW5jdGlvbiBwb2ludGVyICovDQorc3Rh dGljIHZvaWQgc2VjX3JuZ19zbWModW5zaWduZWQgbG9uZyBhMCwgdW5zaWduZWQgbG9uZyBhMSwN CisJCQl1bnNpZ25lZCBsb25nIGEyLCB1bnNpZ25lZCBsb25nIGEzLA0KKwkJCXVuc2lnbmVkIGxv bmcgYTQsIHVuc2lnbmVkIGxvbmcgYTUsDQorCQkJdW5zaWduZWQgbG9uZyBhNiwgdW5zaWduZWQg bG9uZyBhNywNCisJCQlzdHJ1Y3QgYXJtX3NtY2NjX3JlcyAqcmVzKQ0KK3sNCisJYXJtX3NtY2Nj X3NtYyhhMCwgYTEsIGEyLCBhMywgYTQsIGE1LCBhNiwgYTcsIHJlcyk7DQorfQ0KKw0KK3N0YXRp YyB2b2lkIHNlY19ybmdfaHZjKHVuc2lnbmVkIGxvbmcgYTAsIHVuc2lnbmVkIGxvbmcgYTEsDQor CQkJdW5zaWduZWQgbG9uZyBhMiwgdW5zaWduZWQgbG9uZyBhMywNCisJCQl1bnNpZ25lZCBsb25n IGE0LCB1bnNpZ25lZCBsb25nIGE1LA0KKwkJCXVuc2lnbmVkIGxvbmcgYTYsIHVuc2lnbmVkIGxv bmcgYTcsDQorCQkJc3RydWN0IGFybV9zbWNjY19yZXMgKnJlcykNCit7DQorCWFybV9zbWNjY19o dmMoYTAsIGExLCBhMiwgYTMsIGE0LCBhNSwgYTYsIGE3LCByZXMpOw0KK30NCisNCitzdGF0aWMg Ym9vbCBfX3NlY19nZXRfcm5kKHN0cnVjdCBzZWNfcm5nX3ByaXYgKnByaXYsIHVpbnQzMl90ICp2 YWwpDQorew0KKwlzdHJ1Y3QgYXJtX3NtY2NjX3JlcyByZXM7DQorDQorCXByaXYtPnJuZ19mbihI V1JOR19TTUNfRkFTVF9DQUxMX1ZBTChwcml2LT5mdW5jX251bSksDQorCQkJMCwgMCwgMCwgMCwg MCwgMCwgMCwgJnJlcyk7DQorDQorCWlmICghcmVzLmEwICYmICFyZXMuYTEgJiYgIXJlcy5hMiAm JiAhcmVzLmEzKQ0KKwkJcmV0dXJuIGZhbHNlOw0KKw0KKwl2YWxbMF0gPSByZXMuYTA7DQorCXZh bFsxXSA9IHJlcy5hMTsNCisJdmFsWzJdID0gcmVzLmEyOw0KKwl2YWxbM10gPSByZXMuYTM7DQor DQorCXJldHVybiB0cnVlOw0KK30NCisNCitzdGF0aWMgaW50IHNlY19ybmdfcmVhZChzdHJ1Y3Qg aHdybmcgKnJuZywgdm9pZCAqYnVmLCBzaXplX3QgbWF4LCBib29sIHdhaXQpDQorew0KKwlzdHJ1 Y3Qgc2VjX3JuZ19wcml2ICpwcml2ID0gdG9fc2VjX3JuZyhybmcpOw0KKwl1MzIgdmFsWzRdID0g ezB9Ow0KKwlpbnQgcmV0dmFsID0gMDsNCisJaW50IGk7DQorDQorCXdoaWxlIChtYXggPj0gU0VD X1JORF9TSVpFKSB7DQorCQlpZiAoIV9fc2VjX2dldF9ybmQocHJpdiwgdmFsKSkNCisJCQlyZXR1 cm4gcmV0dmFsOw0KKw0KKwkJZm9yIChpID0gMDsgaSA8IFNNQ19SRVRfTlVNOyBpKyspIHsNCisJ CQkqKHUzMiAqKWJ1ZiA9IHZhbFtpXTsNCisJCQlidWYgKz0gc2l6ZW9mKHUzMik7DQorCQl9DQor DQorCQlyZXR2YWwgKz0gU0VDX1JORF9TSVpFOw0KKwkJbWF4IC09IFNFQ19STkRfU0laRTsNCisJ fQ0KKw0KKwlyZXR1cm4gcmV0dmFsOw0KK30NCisNCitzdGF0aWMgaW50IHNlY19ybmdfcHJvYmUo c3RydWN0IHBsYXRmb3JtX2RldmljZSAqcGRldikNCit7DQorCXN0cnVjdCBzZWNfcm5nX3ByaXYg KnByaXY7DQorCWNvbnN0IGNoYXIgKm1ldGhvZDsNCisJaW50IHJldDsNCisNCisJcHJpdiA9IGRl dm1fa3phbGxvYygmcGRldi0+ZGV2LCBzaXplb2YoKnByaXYpLCBHRlBfS0VSTkVMKTsNCisJaWYg KCFwcml2KQ0KKwkJcmV0dXJuIC1FTk9NRU07DQorDQorCWlmIChvZl9wcm9wZXJ0eV9yZWFkX3N0 cmluZyhwZGV2LT5kZXYub2Zfbm9kZSwgIm1ldGhvZCIsICZtZXRob2QpKQ0KKwkJcmV0dXJuIC1F TlhJTzsNCisNCisJaWYgKCFzdHJuY21wKCJzbWMiLCBtZXRob2QsIHN0cmxlbigic21jIikpKQ0K KwkJcHJpdi0+cm5nX2ZuID0gc2VjX3JuZ19zbWM7DQorCWVsc2UgaWYgKCFzdHJuY21wKCJodmMi LCBtZXRob2QsIHN0cmxlbigiaHZjIikpKQ0KKwkJcHJpdi0+cm5nX2ZuID0gc2VjX3JuZ19odmM7 DQorDQorCWlmIChJU19FUlIocHJpdi0+cm5nX2ZuKSkgew0KKwkJZGV2X2VycigmcGRldi0+ZGV2 LCAibWV0aG9kICVzIGlzIG5vdCBzdXBwb3J0ZWRcbiIsIG1ldGhvZCk7DQorCQlyZXR1cm4gLUVJ TlZBTDsNCisJfQ0KKw0KKwlpZiAob2ZfcHJvcGVydHlfcmVhZF91MTYocGRldi0+ZGV2Lm9mX25v ZGUsICJtZXRob2QtZmlkIiwNCisJCQkJICZwcml2LT5mdW5jX251bSkpDQorCQlyZXR1cm4gLUVO WElPOw0KKw0KKwlpZiAob2ZfcHJvcGVydHlfcmVhZF91MTYocGRldi0+ZGV2Lm9mX25vZGUsICJx dWFsaXR5IiwNCisJCQkJICZwcml2LT5ybmcucXVhbGl0eSkpDQorCQlyZXR1cm4gLUVOWElPOw0K Kw0KKwlwcml2LT5ybmcubmFtZSA9IHBkZXYtPm5hbWU7DQorCXByaXYtPnJuZy5yZWFkID0gc2Vj X3JuZ19yZWFkOw0KKwlwcml2LT5ybmcucHJpdiA9ICh1bnNpZ25lZCBsb25nKSZwZGV2LT5kZXY7 DQorDQorCXJldCA9IGRldm1faHdybmdfcmVnaXN0ZXIoJnBkZXYtPmRldiwgJnByaXYtPnJuZyk7 DQorCWlmIChyZXQpIHsNCisJCWRldl9lcnIoJnBkZXYtPmRldiwgImZhaWxlZCB0byByZWdpc3Rl ciBybmcgZGV2aWNlOiAlZFxuIiwgcmV0KTsNCisJCXJldHVybiByZXQ7DQorCX0NCisNCisJcmV0 dXJuIDA7DQorfQ0KKw0KK3N0YXRpYyBjb25zdCBzdHJ1Y3Qgb2ZfZGV2aWNlX2lkIHNlY19ybmdf bWF0Y2hbXSA9IHsNCisJeyAuY29tcGF0aWJsZSA9ICJhcm0sc2VjLXJuZyIsIH0sDQorCXt9DQor fTsNCitNT0RVTEVfREVWSUNFX1RBQkxFKG9mLCBzZWNfcm5nX21hdGNoKTsNCisNCitzdGF0aWMg c3RydWN0IHBsYXRmb3JtX2RyaXZlciBzZWNfcm5nX2RyaXZlciA9IHsNCisJLnByb2JlID0gc2Vj X3JuZ19wcm9iZSwNCisJLmRyaXZlciA9IHsNCisJCS5uYW1lID0gS0JVSUxEX01PRE5BTUUsDQor CQkub3duZXIgPSBUSElTX01PRFVMRSwNCisJCS5vZl9tYXRjaF90YWJsZSA9IHNlY19ybmdfbWF0 Y2gsDQorCX0sDQorfTsNCisNCittb2R1bGVfcGxhdGZvcm1fZHJpdmVyKHNlY19ybmdfZHJpdmVy KTsNCisNCitNT0RVTEVfREVTQ1JJUFRJT04oIlNlY3VyaXR5IFJhbmRvbSBOdW1iZXIgR2VuZXJh dG9yIERyaXZlciIpOw0KK01PRFVMRV9BVVRIT1IoIk5lYWwgTGl1IDxuZWFsLmxpdUBtZWRpYXRl ay5jb20+Iik7DQorTU9EVUxFX0xJQ0VOU0UoIkdQTCIpOw0KLS0gDQoxLjcuOS41DQo=