From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.0 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 87343C43381 for ; Mon, 4 Mar 2019 22:28:59 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 5376F20823 for ; Mon, 4 Mar 2019 22:28:59 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="mos1iHuE" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 5376F20823 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=bootlin.com Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:To :From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=Naog9rZaBpvPNy7yf3g3ZHGndyQPnxSBAEi3AJ3a/rw=; b=mos1iHuEig3poA 2HUamO5UZr7J9/WCImS2pGiBIeRPutXDQhVrSgzsfqeJmSEHaskDLxLTGP7iTikKH/DlK+7KwmDpt DlBcKU7B3mZZ8uSv/emH6LLMH4W8fZ2Uhf/VyKCQf6O28MQ/St6L5sJ2oFS/XxH05Q+e9yDPMZ+bx YkOT7LV7oGlisCF2BZ8pNtyjuiK4b50Lpsq4cjVT4ww2O5kW4O2Pb4oFf8Mm0lK7dNG6gDX7A9Dh9 SJF4EltiToMz4sdoX1067nOoZpy97f9qyZyn8/pdeXh8aKOxbLsEcx4ajPm8caAC9FOWMRHzZ6f/E A+0Pfdykov9GMOH2JoJw==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.90_1 #2 (Red Hat Linux)) id 1h0w4s-0003ui-9C; Mon, 04 Mar 2019 22:28:54 +0000 Received: from relay1-d.mail.gandi.net ([217.70.183.193]) by bombadil.infradead.org with esmtps (Exim 4.90_1 #2 (Red Hat Linux)) id 1h0w4p-0003uI-29; Mon, 04 Mar 2019 22:28:53 +0000 X-Originating-IP: 90.5.42.199 Received: from localhost.localdomain (atoulouse-657-1-1088-199.w90-5.abo.wanadoo.fr [90.5.42.199]) (Authenticated sender: miquel.raynal@bootlin.com) by relay1-d.mail.gandi.net (Postfix) with ESMTPSA id EACCA240002; Mon, 4 Mar 2019 22:28:43 +0000 (UTC) From: Miquel Raynal To: Boris Brezillon , Richard Weinberger , David Woodhouse , Brian Norris , Marek Vasut , Tudor Ambarus Subject: [PATCH v2 00/36] Introduce the generic ECC engine abstraction Date: Mon, 4 Mar 2019 23:28:05 +0100 Message-Id: <20190304222841.13899-1-miquel.raynal@bootlin.com> X-Mailer: git-send-email 2.19.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20190304_142851_407711_EA306CC9 X-CRM114-Status: GOOD ( 23.79 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Vignesh R , Tudor Ambarus , Julien Su , Schrempf Frieder , Paul Cercueil , linux-mtd@lists.infradead.org, Thomas Petazzoni , Miquel Raynal , Mason Yang , linux-arm-kernel@lists.infradead.org Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org QXMgb2YgdG9kYXksIG9ubHkgcmF3IE5BTkQgY29udHJvbGxlcnMgdXNlZCB0byBmZWF0dXJlIGFu IGludGVncmF0ZWQKRUNDIGVuZ2luZSBhbmQgc28gY29udHJvbGxlciBkcml2ZXJzIGFsd2F5cyBl bWJlZGRlZCBzb21lIGNvZGUgdG8KZW5hYmxlL2Rpc2FibGUgdGhlIGNvcnJlY3Rpb24uCgpUaGlz IHN0YXRlbWVudCBpcyBubyBsb25nZXIgY29ycmVjdCBhcyBTUEktTkFORCBkZXZpY2VzIG1pZ2h0 IG5vdAplbWJlZCBhbiBvbi1kaWUgRUNDIGVuZ2luZSBhbmQgbXVzdCBtYWtlIHVzZSBvZiBhbiBl eHRlcm5hbCBFQ0MKZW5naW5lLiBXZSBmaWd1cmVkIHRoZXJlIGFyZSB0aHJlZSBwb3NzaWJsZSBz aXR1YXRpb25zIGZvciAoZ2VuZXJpYykKTkFORCBkZXZpY2U6IGVpdGhlciB0aGUgZW5naW5lIGlz ICdvbi1kaWUnIChtb3N0IG9mIHRoZSBTUEktTkFORHMsIGEKZmV3IHJhdyBOQU5EcyksIG9yIHRo ZSBlbmdpbmUgaXMgcGFydCBvZiB0aGUgaG9zdCBjb250cm9sbGVyIChtb3N0IHJhdwpOQU5Ecyks IG9yIHRoZSBlbmdpbmUgbWF5IGJlIGV4dGVybmFsIChTUEkgY29udHJvbGxlcnMgbWlnaHQgZmVh dHVyZQphbiBFQ0MgZW5naW5lLCBvciB0aGVyZSBhcmUgc3RpbGwgdGhlIHBvc3NpYmlsaXR5IHRv IHVzZSBzb2Z0d2FyZQpjb3JyZWN0aW9uKS4KCgpUbyBzb2x2ZSB0aGlzIHNpdHVhdGlvbiwgdGhp cyBpcyBhIHByb3Bvc2FsIG9uIGhvdyB0byBtYWtlIHRoaW5ncwp3b3JrLiBXZSB3YW50IHRvIGNy ZWF0ZSBhbiBFQ0MgZW5naW5lIG9iamVjdCB3aGljaCBoYXMgc2ltcGxlCmNhbGxiYWNrczoKKiBp bml0L2NsZWFudXAgaXRzIGNvbnRleHQKKiBwcmVwYXJlIGFuIEkvTyBvcGVyYXRpb24KKiBmaW5p c2ggYW4gSS9PIG9wZXJhdGlvbgpEZXRhaWxzIGFib3V0IHdoYXQgaXMgZ29pbmcgdG8gaGFwcGVu IGluIHRoZXNlIGNhbGxiYWNrcyBpcyBkZXNjcmliZWQKaW4gZHJpdmVycy9tdGQvbmFuZC9lY2Mv ZW5naW5lLmMuCgpUaGUgbG9naWMgaW4gdGhpcyBzZXJpZXMgaXM6CjEvIFVzZSB0aGUgZ2VuZXJp YyBOQU5EIGNvcmUgZm9yIGFsbCBOQU5EIGRldmljZXMgKHJhdyBhbmQgU1BJKS4KMi8gQ3JlYXRl IHRoZSBFQ0MgZW5naW5lIGludGVyZmFjZSBpbiBkcml2ZXJzL210ZC9uYW5kL2VjYy8KMy8gTW92 ZSBjb2RlIGluIGRyaXZlci9tdGQvbmFuZC9lY2MuCjQvIE1ha2UgYm90aCBzb2Z0d2FyZSBlbmdp bmVzIChIYW1taW5nIGFuZCBCQ0gpIGdlbmVyaWMsIG1vdmUgdGhlbSBpbgogICB0aGUgZWNjLyBk aXJlY3RvcnksIGNsZWFuIHRoZW0gYSBiaXQgYW5kIGluc3RhbnRpYXRlIEVDQwogICBlbmdpbmVz LiBXcml0ZSByYXcgTkFORCBoZWxwZXJzIHRvIHVzZSB0aGVzZSB0d28gbmV3IGVuZ2luZXMuCjUv IElzb2xhdGUgU1BJLU5BTkQgb24tZGllIEVDQyBlbmdpbmUgaW4gaXRzIG93biBkcml2ZXIuCjYv IE1ha2UgdXNlIGZyb20gdGhlIFNQSS1OQU5EIGxheWVyIG9mIGFsbCB0aGUgRUNDIGVuZ2luZXMg bGlzdGVkCiAgIGFib3ZlIChvbiB1c2VyIHJlcXVlc3QsIHBlb3BsZSBjYW4gbm93IG1ha2UgdXNl IG9mIHNvZnQgQkNIIGlmIHRoZXkKICAgZG9uJ3QgaGF2ZSBhbiBFQ0MtZW5naW5lKS4KClRoaXMg d29yayBpcyBzdGlsbCBXSVAsIEkgZXhwZWN0IGEgZmV3IDAtZGF5IHJlZ3Jlc3Npb25zLCBtYXli ZSB0aGUKbmFtaW5nIGlzIG5vdCBwZXJmZWN0IGJ1dCBpdCBnaXZlcyBhbiBpZGVhIG9mIHdoYXQg SSB3b3VsZCBsaWtlIHRvCmludHJvZHVjZS4gVGhlIG5leHQgc3RlcHMgYXJlOgoxLyBNaWdyYXRl IHRoZSByYXcgTkFORCBjb3JlIHRvIG1ha2UgYSBwcm9wZXIgdXNlIG9mIHRoZXNlIEVDQwogICBl bmdpbmVzLgoyLyBEZXByZWNhdGUgaW4gdGhlIHJhdyBOQU5EIHN1YnN5c3RlbSB0aGUgaW50ZXJm YWNlcyB1c2VkIHVudGlsIG5vdwogICAoSSBleHBlY3Qgd2Ugc2hvdWxkIGdldCByaWQgb2YgYSBs b3Qgb2YgYm9pbGVycGxhdGUpLgozLyBJbnRyb2R1Y2UgYW4gZXh0ZXJuYWwgaGFyZHdhcmUgRUND IGVuZ2luZSBkcml2ZXIuCgoKVGhhbmtzLApNaXF1w6hsCgpDaGFuZ2VzIGluIHYyCj09PT09PT09 PT09PT0KKiBTUERYIGxpY2Vuc2UgaWRlbnRpZmllcnMgZm9yIHNvZnQgQkNIIGFuZCBIYW1taW5n OiB0aGUgbGljZW5zZSBtYWNybwogIHdhcyByaWdodCwgIkdQTCIgbWVhbnMgIkdQTHYyIG9yIGhp Z2hlciIsIHNvIGRvIG5vdCBjaGFuZ2UgdGhpcwogIHBvcnRpb24uIEFsc28gdXBkYXRlIHRoZSBj b21taXQgbWVzc2FnZXMgdG8gZml0IHRoZSBhY3R1YWwgY2hhbmdlLgoqIERvIG5vdCBjb21waWxl LWluIHRoZSBOQU5EIGNvcmUgYnkgZGVmYXVsdCwgZG8gaXQgb25seSBmb3IgcmF3CiAgTkFORC4g UmVtb3ZlIHRoZSBkZXBlbmRlbmNpZXMgb24gQ09ORklHX01URCBpbiBhIGRpZmZlcmVudAogIHBh dGNoLiBBbHNvLCBrZWVwIGFuIGV4dHJhIGxldmVsIG9mIGhpZXJhcmNoeSBpbiBLY29uZmlnIGZv ciB0aGUKICBOQU5EIGJpdHMgYnkgYWRkaW5nIGEgbWVudSBpbnN0ZWFkIG9mIGEgY29uZmlnLgoq IE1vdmVkIHRoZSBzdGFuZGFyZCBPT0IgbGF5b3V0cyBpbiB0aGUgZWNjL2VuZ2luZS5jIGRyaXZl ciBpbnN0ZWFkIG9mCiAgaW4gdGhlIE5BTkQgY29yZS4KKiBVc2VkIHRoZSBuYW5kX2VjY18gcHJl Zml4IGluIG1vc3Qgb2YgdGhlIGVuZ2luZXMgZnVuY3Rpb25zIGluc3RlYWQKICBvZiBqdXN0IGVj Y18sIHdoaWNoIGlzIG5vdyByZXNlcnZlZCBmb3IgYmFyZSBoZWxwZXJzLiBHZXQgcmlkIG9mIHRo ZQogIF9fZWNjIHByZWZpeC4KKiBJbiB0aGUgc3VueGkgTkFORCBjb250cm9sbGVyIGRyaXZlcjog bW92ZWQgdGhlIEVDQyBzdHJ1Y3R1cmUgZnJvbQogIHN1bnhpX25mYyB0byBzdW54aV9uYW5kX2No aXAgYXMgdGhlIEVDQyBlbmdpbmUgaXMgcGVyLWNoaXAgYW5kIG5vdAogIHBlciBjb250cm9sbGVy LgoqIFNvZnR3YXJlIEhhbW1pbmcgRUNDIGVuZ2luZSBpcyBvbmx5IGVuYWJsZWQgYnkgZGVmYXVs dCBpZiByYXcgTkFORAogIGlzIGFsc28gZW5hYmxlZC4gTkRGQyBub3cgc2VsZWN0cyB0aGUgc29m dHdhcmUgSGFtbWluZyBFQ0MgZW5naW5lCiAgKGluc3RlYWQgb2YgZGVwZW5kaW5nIG9uIGl0KS4K KiBNZW50aW9uIGluIHNvZnR3YXJlIEJDSCBhbmQgSGFtbWluZyBLY29uZmlnIGVudHJpZXMgdGhh dCBib290aW5nCiAgZnJvbSBOQU5EIGlzIHZlcnkgbGlrZWx5IHRvIGZhaWwgaWYgdGhlIHVzZXIg c2VsZWN0cyB0aGVzZSBzeW1ib2xzCiAgYXMgbW9kdWxlcy4KKiBBZGRlZCBCb3JpcyBSZXZpZXdl ZC1ieSB0YWcgb24gdGhlIFNQSS1OQU5EIHR5cG8gZml4aW5nIHBhdGNoLgoqIFJlbmFtZWQgdGhl ICJtb2RlIiBpbnRvIGEgInByb3ZpZGVyIiBlbnRyeSBpbiB0aGUgRUNDIGNvbmZpZ3VyYXRpb24K ICBzdHJ1Y3R1cmVzLgoqIE1vdmVkIHRoZSAidG90YWwiIGVudHJ5IG9mIHRoZSBFQ0MgY29uZmln dXJhdGlvbiBkaXJlY3RseSBpbiB0aGUKICBjb250ZXh0IHN0cnVjdHVyZSAoc2hvdWxkIHByb2Jh Ymx5IG5vdCBiZSBwdWJsaWMgYnV0IGxldCdzIGtlZXAgaXQKICBhcyBpcyBmb3Igbm93KS4KKiBT cGxpdCB0aGUgZ2VuZXJpYyBFQ0MgZW5naW5lIGludHJvZHVjdGlvbiBpbnRvIHNtYWxsZXIgcGF0 Y2hlcyB0byBkbwogIHNvbWUgcmVuYW1pbmcgYXNpZGUuCiogRHJvcCB0aGUgIm1heGltaXplIiBl bnRyeSBpbiB0aGUgRUNDIGVuZ2luZSBjb25maWd1cmF0aW9uIHN0cnVjdHVyZSwKICBrZWVwIHVz aW5nIGEgZmxhZyBsaWtlIGJlZm9yZS4KKiBDYW5jZWxlZCB0aGUgbW92ZSBvZiB0aGUgU1BJLU5B TkQgc3BlY2lmaWMgRUNDIGVuZ2luZSBvdXQgb2YgdGhlCiAgY29yZSBmaWxlLgoqIEFtZW5kZWQg dGhlIHJvb3QgRUNDIHN0cnVjdHVyZXMgdG8gaGF2ZSB0aHJlZSBuYW5kX2VjY19jb25mCiAgc3Ry dWN0dXJlczogb25lIGZvciB0aGUgZGVmYXVsdHMsIG9uZSBmb3IgdGhlIGNoaXAgcmVxdWlyZW1l bnRzLCBvbmUKICBmb3IgdGhlIHVzZXIgZGVzaXJlcy4KKiBDcmVhdGVkIGEgKm9uZGllX2VuZ2lu ZSBwb2ludGVyIGluIHRoZSBuYW5kX2VjYyBzdHJ1Y3R1cmUgdG8gc2F2ZQogIHRoZSBvbi1kaWUg RUNDIGVuZ2luZSwgaWYgYW55LiBGb3IgaW5zdGFuY2UsIHNhdmluZyBhIHJlZmVyZW5jZSB0bwog IHRoaXMgZW5naW5lIGlzIGRvbmUgYnkgdGhlIFNQSS1OQU5EIGNvcmUuCiogRHJvcHBlZCB0aGUg U1BJLU5BTkQgZmxhZyB0aGF0IHdhcyB1c2VkIHRvIGRpc3Rpbmd1aXNoIGJldHdlZW4gTkFORAog IGZsYXZvcnMgZnJvbSB0aGUgTkFORCBjb3JlLCBpdCBzaG91bGQgbm90IGJlIG5lZWRlZCBhbnlt b3JlLgoqIEFkZGVkIGFuIGhlbHBlciBpbiB0aGUgTkFORCBjb3JlIHRvIHB1dCBhIHJlZmVyZW5j ZSBvbiBhbiBFQ0MKICBlbmdpbmUuIFRoaXMgd2lsbCBiZSB1c2VkIGJ5IHRoZSBoYXJkd2FyZSBl bmdpbmVzIG9ubHkuCiogUmVuYW1lZCB0aGUgZmlsZXMgZWNjL3N3LXtiY2gsaGFtbWluZ30uYyBh bmQgdGhlaXIgaGVhZGVycwogIGluY2x1ZGUvbGludXgvbXRkL25hbmQtZWNjLXN3LXtiY2gsaGFt bWluZ30tZW5naW5lLmguCiogQ3JlYXRlZCBhIE1URF9OQU5EX0VDQyBpbnZpc2libGUgS2NvbmZp ZyBzeW1ib2wuCiogQWRkZWQgcGxlbnR5IG9mIG1pc3NpbmcgRVhQT1JUX1NZTUJPTHssX0dQTH0o KS4KKiBNaW5vciBtb2RpZmljYXRpb25zIHNvIHRoYXQgZXZlcnl0aGluZyBzdGlsbCBjb21waWxl cyBldmVuIHdoZW4KICBtb2R1bGVzIGFuZCBidWlsdC1pbiBkcml2ZXJzIGFyZSBtaXhlZCBpbiBL Y29uZmlnIGluIHRoZSB3aG9sZSBOQU5ECiAgZGlyZWN0b3J5LgoKCk1pcXVlbCBSYXluYWwgKDM2 KToKICBtdGQ6IG5hbmQ6IE1vdmUgbmFuZF9kZXZpY2UgZm9yd2FyZCBkZWNsYXJhdGlvbiB0byB0 aGUgdG9wCiAgbXRkOiBuYW5kOiBBZGQgYW4gZXh0cmEgbGV2ZWwgaW4gdGhlIEtjb25maWcgaGll cmFyY2h5CiAgbXRkOiBuYW5kOiBEcm9wIHVzZWxlc3MgJ2RlcGVuZHMgb24nIGluIEtjb25maWcK ICBtdGQ6IHJhd25hbmQ6IFVzZSB0aGUgTkFORCBjb3JlCiAgbXRkOiBuYW5kOiBBZGQgYSBOQU5E IHBhZ2UgSS9PIHJlcXVlc3QgdHlwZQogIG10ZDogbmFuZDogUmVuYW1lIGEgY29yZSBzdHJ1Y3R1 cmUKICBtdGQ6IHJhd25hbmQ6IEF2b2lkIGEgdHlwZWRlZgogIG10ZDogcmF3bmFuZDogQWRkIGFu IGludmFsaWQgRUNDIG1vZGUgdG8gZGlzY3JpbWluYXRlIHdpdGggdmFsaWQgb25lcwogIG10ZDog cmF3bmFuZDogQ2xhcmlmeSB0aGUgdmFsdWVzIGZvciBpbnZhbGlkIEVDQyBtb2RlL2FsZ28KICBt dGQ6IG5hbmQ6IEludHJvZHVjZSB0aGUgRUNDIGVuZ2luZSBhYnN0cmFjdGlvbgogIG10ZDogRml4 IHR5cG8gaW4gbXRkX29vYmxheW91dF9zZXRfZGF0YWJ5dGVzKCkgZGVzY3JpcHRpb24KICBtdGQ6 IG5hbmQ6IE1vdmUgc3RhbmRhcmQgT09CIGxheW91dHMgdG8gdGhlIGdlbmVyaWMgRUNDIGNvcmUK ICBtdGQ6IG5hbmQ6IE1vdmUgRUNDIHNwZWNpZmljIGZ1bmN0aW9ucyB0byBlY2MvZW5naW5lLmMK ICBtdGQ6IG5hbmQ6IGVjYzogTW92ZSBCQ0ggY29kZSBpbnRvIHRoZSBlY2MvIGRpcmVjdG9yeQog IG10ZDogbmFuZDogZWNjOiBVc2UgU1BEWCBsaWNlbnNlIGlkZW50aWZpZXIgZm9yIHRoZSBzb2Z0 d2FyZSBCQ0ggY29kZQogIG10ZDogbmFuZDogZWNjOiBUdXJuIHRoZSBzb2Z0d2FyZSBCQ0ggaW1w bGVtZW50YXRpb24gZ2VuZXJpYwogIG10ZDogcmF3bmFuZDogR2V0IHJpZCBvZiBjaGlwLT5lY2Mu cHJpdgogIG10ZDogbmFuZDogZWNjOiBNb3ZlIEhhbW1pbmcgY29kZSBpbnRvIHRoZSBlY2MvIGRp cmVjdG9yeQogIG10ZDogbmFuZDogZWNjOiBVc2UgU1BEWCBsaWNlbnNlIGlkZW50aWZpZXIgZm9y IHRoZSBzb2Z0d2FyZSBIYW1taW5nCiAgICBjb2RlCiAgbXRkOiBuYW5kOiBlY2M6IENsYXJpZnkg dGhlIHNvZnR3YXJlIEhhbW1pbmcgaW50cm9kdWN0b3J5IGxpbmUKICBtdGQ6IG5hbmQ6IGVjYzog VHVybiB0aGUgc29mdHdhcmUgSGFtbWluZyBpbXBsZW1lbnRhdGlvbiBnZW5lcmljCiAgbXRkOiBu YW5kOiBSZW1vdmUgdXNlbGVzcyBpbmNsdWRlIGFib3V0IHNvZnR3YXJlIEhhbW1pbmcgRUNDCiAg bXRkOiBuYW5kOiBlY2M6IExldCB0aGUgc29mdHdhcmUgQkNIIEVDQyBlbmdpbmUgYmUgYSBtb2R1 bGUKICBtdGQ6IG5hbmQ6IGVjYzogTGV0IHRoZSBzb2Z0d2FyZSBIYW1taW5nIEVDQyBlbmdpbmUg YmUgdW5zZWxlY3RlZAogIG10ZDogbmFuZDogZWNjOiBDcmVhdGUgdGhlIHNvZnR3YXJlIEJDSCBl bmdpbmUgaW5zdGFuY2UKICBtdGQ6IG5hbmQ6IGVjYzogQ3JlYXRlIHRoZSBzb2Z0d2FyZSBIYW1t aW5nIGVuZ2luZSBpbnN0YW5jZQogIG10ZDogbmFuZDogTGV0IHNvZnR3YXJlIEVDQyBlbmdpbmVz IGJlIHJldHJpZXZlZCBmcm9tIHRoZSBOQU5EIGNvcmUKICBtdGQ6IHNwaW5hbmQ6IEZpeCB0eXBv IGluIGNvbW1lbnQKICBtdGQ6IHNwaW5hbmQ6IE1vdmUgRUNDIHJlbGF0ZWQgZGVmaW5pdGlvbnMg ZWFybGllciBpbiB0aGUgZHJpdmVyCiAgbXRkOiBzcGluYW5kOiBJbnN0YW50aWF0ZSBhIFNQSS1O QU5EIG9uLWRpZSBFQ0MgZW5naW5lCiAgbXRkOiBuYW5kOiBMZXQgb24tZGllIEVDQyBlbmdpbmVz IGJlIHJldHJpZXZlZCBmcm9tIHRoZSBOQU5EIGNvcmUKICBtdGQ6IHJhd25hbmQ6IEZpbGwgYSBk ZWZhdWx0IEVDQyBwcm92aWRlci9hbGdvcml0aG0KICBtdGQ6IHNwaW5hbmQ6IEZpbGwgYSBkZWZh dWx0IEVDQyBwcm92aWRlci9hbGdvcml0aG0KICBtdGQ6IG5hbmQ6IEFkZCBoZWxwZXJzIHRvIG1h bmFnZSBFQ0MgZW5naW5lcyBhbmQgY29uZmlndXJhdGlvbnMKICBtdGQ6IHNwaW5hbmQ6IFVzZSB0 aGUgZXh0ZXJuYWwgRUNDIGVuZ2luZSBsb2dpYwogIG10ZDogc3BpbmFuZDogUHJvcGFnYXRlIEVD QyBpbmZvcm1hdGlvbiB0byB0aGUgTVREIHN0cnVjdHVyZQoKIGFyY2gvYXJtL21hY2gtczNjMjR4 eC9jb21tb24tc21kay5jICAgICAgICAgICB8ICAgMSAtCiBhcmNoL2FybS9tYWNoLXMzYzI0eHgv bWFjaC1hbnViaXMuYyAgICAgICAgICAgfCAgIDEgLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21h Y2gtYXQyNDQwZXZiLmMgICAgICAgIHwgICAxIC0KIGFyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNo LWJhc3QuYyAgICAgICAgICAgICB8ICAgMSAtCiBhcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1n dGEwMi5jICAgICAgICAgICAgfCAgIDEgLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtaml2 ZS5jICAgICAgICAgICAgIHwgICAxIC0KIGFyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLW1pbmky NDQwLmMgICAgICAgICB8ICAgMSAtCiBhcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC1vc2lyaXMu YyAgICAgICAgICAgfCAgIDEgLQogYXJjaC9hcm0vbWFjaC1zM2MyNHh4L21hY2gtcXQyNDEwLmMg ICAgICAgICAgIHwgICAxIC0KIGFyY2gvYXJtL21hY2gtczNjMjR4eC9tYWNoLXJ4MzcxNS5jICAg ICAgICAgICB8ICAgMSAtCiBhcmNoL2FybS9tYWNoLXMzYzI0eHgvbWFjaC12c3Rtcy5jICAgICAg ICAgICAgfCAgIDEgLQogZHJpdmVycy9tdGQvbXRkY29yZS5jICAgICAgICAgICAgICAgICAgICAg ICAgIHwgICAyICstCiBkcml2ZXJzL210ZC9uYW5kL0tjb25maWcgICAgICAgICAgICAgICAgICAg ICAgfCAgIDUgKwogZHJpdmVycy9tdGQvbmFuZC9NYWtlZmlsZSAgICAgICAgICAgICAgICAgICAg IHwgICAxICsKIGRyaXZlcnMvbXRkL25hbmQvY29yZS5jICAgICAgICAgICAgICAgICAgICAgICB8 IDEyNCArKysrCiBkcml2ZXJzL210ZC9uYW5kL2VjYy9LY29uZmlnICAgICAgICAgICAgICAgICAg fCAgNDEgKysKIGRyaXZlcnMvbXRkL25hbmQvZWNjL01ha2VmaWxlICAgICAgICAgICAgICAgICB8 ICAgNSArCiBkcml2ZXJzL210ZC9uYW5kL2VjYy9lbmdpbmUuYyAgICAgICAgICAgICAgICAgfCA0 ODEgKysrKysrKysrKysrKysrCiBkcml2ZXJzL210ZC9uYW5kL2VjYy9zdy1iY2guYyAgICAgICAg ICAgICAgICAgfCA0MjQgKysrKysrKysrKysrKysKIC4uLi9uYW5kL3tyYXcvbmFuZF9lY2MuYyA9 PiBlY2Mvc3ctaGFtbWluZy5jfSB8IDM0NyArKysrKysrKy0tLQogZHJpdmVycy9tdGQvbmFuZC9v bmVuYW5kL0tjb25maWcgICAgICAgICAgICAgIHwgICAxIC0KIGRyaXZlcnMvbXRkL25hbmQvcmF3 L0tjb25maWcgICAgICAgICAgICAgICAgICB8ICAyNiArLQogZHJpdmVycy9tdGQvbmFuZC9yYXcv TWFrZWZpbGUgICAgICAgICAgICAgICAgIHwgICAyIC0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L2F0 bWVsL25hbmQtY29udHJvbGxlci5jICB8ICAxMiArLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvY3M1 NTN4X25hbmQuYyAgICAgICAgICAgIHwgICAzICstCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9kZW5h bGkuYyAgICAgICAgICAgICAgICAgfCAgIDMgKwogZHJpdmVycy9tdGQvbmFuZC9yYXcvZGVuYWxp X3BjaS5jICAgICAgICAgICAgIHwgICAxIC0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L2ZzbF9lbGJj X25hbmQuYyAgICAgICAgICB8ICAgMSAtCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9mc2xfaWZjX25h bmQuYyAgICAgICAgICAgfCAgIDEgLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvZnNsX3VwbS5jICAg ICAgICAgICAgICAgIHwgICAxIC0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L2ZzbWNfbmFuZC5jICAg ICAgICAgICAgICB8ICAgMyArLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvZ3BtaS1uYW5kL2dwbWkt bmFuZC5jICAgIHwgIDEyICstCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9scGMzMnh4X21sYy5jICAg ICAgICAgICAgfCAgIDEgLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvbHBjMzJ4eF9zbGMuYyAgICAg ICAgICAgIHwgICAzICstCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9tYXJ2ZWxsX25hbmQuYyAgICAg ICAgICAgfCAgIDcgKy0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L210a19uYW5kLmMgICAgICAgICAg ICAgICB8ICAgNCArLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvbmFuZF9iYXNlLmMgICAgICAgICAg ICAgIHwgNTUxICsrKysrKy0tLS0tLS0tLS0tLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvbmFuZF9i Y2guYyAgICAgICAgICAgICAgIHwgMjMyIC0tLS0tLS0tCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9u YW5kX2VzbXQuYyAgICAgICAgICAgICAgfCAgMTEgKy0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L25h bmRfaHluaXguYyAgICAgICAgICAgICB8ICA0MSArLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvbmFu ZF9qZWRlYy5jICAgICAgICAgICAgIHwgICA0ICstCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9uYW5k X21pY3Jvbi5jICAgICAgICAgICAgfCAgMTQgKy0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L25hbmRf b25maS5jICAgICAgICAgICAgICB8ICAgOCArLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvbmFuZF9z YW1zdW5nLmMgICAgICAgICAgIHwgIDE5ICstCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9uYW5kX3Rv c2hpYmEuYyAgICAgICAgICAgfCAgMTMgKy0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L25hbmRzaW0u YyAgICAgICAgICAgICAgICB8ICAgMyArLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvbmRmYy5jICAg ICAgICAgICAgICAgICAgIHwgICAzICstCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9vbWFwMi5jICAg ICAgICAgICAgICAgICAgfCAgMzIgKy0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L3Bhc2VtaV9uYW5k LmMgICAgICAgICAgICB8ICAgMSAtCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9zM2MyNDEwLmMgICAg ICAgICAgICAgICAgfCAgIDEgLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvc2hhcnBzbC5jICAgICAg ICAgICAgICAgIHwgICAzICstCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy9zdW54aV9uYW5kLmMgICAg ICAgICAgICAgfCAgMzggKy0KIGRyaXZlcnMvbXRkL25hbmQvcmF3L3RlZ3JhX25hbmQuYyAgICAg ICAgICAgICB8ICAxMiArLQogZHJpdmVycy9tdGQvbmFuZC9yYXcvdG1pb19uYW5kLmMgICAgICAg ICAgICAgIHwgICA3ICstCiBkcml2ZXJzL210ZC9uYW5kL3Jhdy90eHg5bmRmbWMuYyAgICAgICAg ICAgICAgfCAgIDUgKy0KIGRyaXZlcnMvbXRkL25hbmQvc3BpL0tjb25maWcgICAgICAgICAgICAg ICAgICB8ICAgMSArCiBkcml2ZXJzL210ZC9uYW5kL3NwaS9jb3JlLmMgICAgICAgICAgICAgICAg ICAgfCAzMDEgKysrKysrLS0tLQogZHJpdmVycy9tdGQvbmFuZC9zcGkvbWFjcm9uaXguYyAgICAg ICAgICAgICAgIHwgICA2ICstCiBkcml2ZXJzL210ZC9uYW5kL3NwaS9vbi1kaWUtZWNjLWVuZ2lu ZS5jICAgICAgfCAgIDAKIGRyaXZlcnMvbXRkL25hbmQvc3BpL3Rvc2hpYmEuYyAgICAgICAgICAg ICAgICB8ICAgNiArLQogZHJpdmVycy9tdGQvc21fZnRsLmMgICAgICAgICAgICAgICAgICAgICAg ICAgIHwgIDMwICstCiBkcml2ZXJzL210ZC90ZXN0cy9tdGRfbmFuZGVjY3Rlc3QuYyAgICAgICAg ICAgfCAgMzEgKy0KIGluY2x1ZGUvbGludXgvbXRkL25hbmQtZWNjLXN3LWJjaC5oICAgICAgICAg ICB8ICA4MCArKysKIGluY2x1ZGUvbGludXgvbXRkL25hbmQtZWNjLXN3LWhhbW1pbmcuaCAgICAg ICB8ICA5OSArKysrCiBpbmNsdWRlL2xpbnV4L210ZC9uYW5kLmggICAgICAgICAgICAgICAgICAg ICAgfCAxNTAgKysrKy0KIGluY2x1ZGUvbGludXgvbXRkL25hbmRfYmNoLmggICAgICAgICAgICAg ICAgICB8ICA2OSAtLS0KIGluY2x1ZGUvbGludXgvbXRkL25hbmRfZWNjLmggICAgICAgICAgICAg ICAgICB8ICA0MiAtLQogaW5jbHVkZS9saW51eC9tdGQvcmF3bmFuZC5oICAgICAgICAgICAgICAg ICAgIHwgIDQyICstCiBpbmNsdWRlL2xpbnV4L210ZC9zaGFycHNsLmggICAgICAgICAgICAgICAg ICAgfCAgIDEgLQogaW5jbHVkZS9saW51eC9tdGQvc3BpbmFuZC5oICAgICAgICAgICAgICAgICAg IHwgIDEzICstCiBpbmNsdWRlL2xpbnV4L3BsYXRmb3JtX2RhdGEvbXRkLWRhdmluY2kuaCAgICAg fCAgIDIgKy0KIC4uLi9saW51eC9wbGF0Zm9ybV9kYXRhL210ZC1uYW5kLXMzYzI0MTAuaCAgICB8 ICAgMiArLQogNzIgZmlsZXMgY2hhbmdlZCwgMjI0MCBpbnNlcnRpb25zKCspLCAxMTU1IGRlbGV0 aW9ucygtKQogY3JlYXRlIG1vZGUgMTAwNjQ0IGRyaXZlcnMvbXRkL25hbmQvZWNjL0tjb25maWcK IGNyZWF0ZSBtb2RlIDEwMDY0NCBkcml2ZXJzL210ZC9uYW5kL2VjYy9NYWtlZmlsZQogY3JlYXRl IG1vZGUgMTAwNjQ0IGRyaXZlcnMvbXRkL25hbmQvZWNjL2VuZ2luZS5jCiBjcmVhdGUgbW9kZSAx MDA2NDQgZHJpdmVycy9tdGQvbmFuZC9lY2Mvc3ctYmNoLmMKIHJlbmFtZSBkcml2ZXJzL210ZC9u YW5kL3tyYXcvbmFuZF9lY2MuYyA9PiBlY2Mvc3ctaGFtbWluZy5jfSAoNTklKQogZGVsZXRlIG1v ZGUgMTAwNjQ0IGRyaXZlcnMvbXRkL25hbmQvcmF3L25hbmRfYmNoLmMKIGNyZWF0ZSBtb2RlIDEw MDY0NCBkcml2ZXJzL210ZC9uYW5kL3NwaS9vbi1kaWUtZWNjLWVuZ2luZS5jCiBjcmVhdGUgbW9k ZSAxMDA2NDQgaW5jbHVkZS9saW51eC9tdGQvbmFuZC1lY2Mtc3ctYmNoLmgKIGNyZWF0ZSBtb2Rl IDEwMDY0NCBpbmNsdWRlL2xpbnV4L210ZC9uYW5kLWVjYy1zdy1oYW1taW5nLmgKIGRlbGV0ZSBt b2RlIDEwMDY0NCBpbmNsdWRlL2xpbnV4L210ZC9uYW5kX2JjaC5oCiBkZWxldGUgbW9kZSAxMDA2 NDQgaW5jbHVkZS9saW51eC9tdGQvbmFuZF9lY2MuaAoKLS0gCjIuMTkuMQoKCl9fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmxpbnV4LWFybS1rZXJuZWwgbWFp bGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5mcmFkZWFkLm9yZwpodHRwOi8vbGlz dHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xpbnV4LWFybS1rZXJuZWwK