From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail3-relais-sop.national.inria.fr (mail3-relais-sop.national.inria.fr [192.134.164.104]) by sympa.inria.fr (Postfix) with ESMTPS id B50357F61E for ; Mon, 30 Oct 2017 23:47:04 +0100 (CET) Authentication-Results: mail3-smtp-sop.national.inria.fr; spf=None smtp.pra=kakadu.hafanana@gmail.com; spf=Pass smtp.mailfrom=kakadu.hafanana@gmail.com; spf=None smtp.helo=postmaster@mail-wm0-f46.google.com Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of kakadu.hafanana@gmail.com) identity=pra; client-ip=74.125.82.46; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="kakadu.hafanana@gmail.com"; x-sender="kakadu.hafanana@gmail.com"; x-conformance=sidf_compatible Received-SPF: Pass (mail3-smtp-sop.national.inria.fr: domain of kakadu.hafanana@gmail.com designates 74.125.82.46 as permitted sender) identity=mailfrom; client-ip=74.125.82.46; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="kakadu.hafanana@gmail.com"; x-sender="kakadu.hafanana@gmail.com"; x-conformance=sidf_compatible; x-record-type="v=spf1" Received-SPF: None (mail3-smtp-sop.national.inria.fr: no sender authenticity information available from domain of postmaster@mail-wm0-f46.google.com) identity=helo; client-ip=74.125.82.46; receiver=mail3-smtp-sop.national.inria.fr; envelope-from="kakadu.hafanana@gmail.com"; x-sender="postmaster@mail-wm0-f46.google.com"; x-conformance=sidf_compatible IronPort-PHdr: =?us-ascii?q?9a23=3Ay7kCsRz8DCL9bxnXCy+O+j09IxM/srCxBDY+r6Qd?= =?us-ascii?q?0uMWIJqq85mqBkHD//Il1AaPBtqLra8cw8Pt8IneGkU4qa6bt34DdJEeHzQksu?= =?us-ascii?q?4x2zIaPcieFEfgJ+TrZSFpVO5LVVti4m3peRMNQJW2TxTor3az9T8fHAnkfUow?= =?us-ascii?q?f7ytW92as8Pi/Om3/9X3Yh5UzG62aLZ2aRG3thn5t88MgIIkJLxnmTXTpX4dWO?= =?us-ascii?q?1VzG91bQaQlhX16tr2/Jdt+iJZvfsJ+MtJUKG8dKM9G+8LRA86Onw4sZW4/SLI?= =?us-ascii?q?ShGCsz5FCj0b?= X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A0B3BQCYq/dZhi5SfUpdHQEXAQcFAQYGD?= =?us-ascii?q?INZAT5uJweDdYE2l32LO48UCiOFGIRaB0MUAQEBAQEBAQEBAQESAQEBCAsLCCg?= =?us-ascii?q?vgjgFAR4BBYJlBBkBGx4DEgMNNwIEIAERAQUBIoodAQMVEIpkjVaDRUCMDIFtG?= =?us-ascii?q?AUBHIMJBYNkChknDViCaAEBCAIXBwIGEoMcggeMDoJ+gmEFiiuIPo8agxiBKoI?= =?us-ascii?q?jgQGNFoIVXoETBYgNhxWMX4kdFAUfgRU2gglVJV41gi8JgmOBdj42ineBVQEBA?= =?us-ascii?q?Q?= X-IPAS-Result: =?us-ascii?q?A0B3BQCYq/dZhi5SfUpdHQEXAQcFAQYGDINZAT5uJweDdYE?= =?us-ascii?q?2l32LO48UCiOFGIRaB0MUAQEBAQEBAQEBAQESAQEBCAsLCCgvgjgFAR4BBYJlB?= =?us-ascii?q?BkBGx4DEgMNNwIEIAERAQUBIoodAQMVEIpkjVaDRUCMDIFtGAUBHIMJBYNkChk?= =?us-ascii?q?nDViCaAEBCAIXBwIGEoMcggeMDoJ+gmEFiiuIPo8agxiBKoIjgQGNFoIVXoETB?= =?us-ascii?q?YgNhxWMX4kdFAUfgRU2gglVJV41gi8JgmOBdj42ineBVQEBAQ?= X-IronPort-AV: E=Sophos;i="5.44,321,1505772000"; d="diff'?scan'208";a="242893628" Received: from mail-wm0-f46.google.com ([74.125.82.46]) by mail3-smtp-sop.national.inria.fr with ESMTP/TLS/AES128-GCM-SHA256; 30 Oct 2017 23:47:03 +0100 Received: by mail-wm0-f46.google.com with SMTP id m72so18892330wmc.1 for ; Mon, 30 Oct 2017 15:47:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=5N8bPapnR/L6mPLGn0omMntmNTsrazRacsjfWWupyHQ=; b=saWQRpqIAvK9mOyt1B/FW6gxS0VH9KuRFEOcShQr/AAI6vKpImix7U6pOZK6TLgBMa 4ospObdMuWkUzoQV0f56h9lhKcBkbxWY8Lfb/yWzuTRkeh0ZRQ9hVrciqm0vCLFfiZS7 LXoVNkhz6tNPX7OGMoh8l97swmj4g29TO1qzQWESX+ZQv+/Mcs1+tJtf50XWi+TlTk5S cSdU24TR8LzosMUFhYkmcFtjln/DFcUeboR+N1IGOsdwSRcoH6QdVeUQxMJ9diGE8pbp UT9WB7/ewDJgaggiByai7ISH/poufWg3uylvNJcm/yEcByUpSkGGGpAWd8Tx2yJaZmMm AvXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=5N8bPapnR/L6mPLGn0omMntmNTsrazRacsjfWWupyHQ=; b=TdAJfrSTGoLepvT4WJBWkImqWCiMVixTizUxVudWc6EmQdvGnJ55N5bARew+/fQGXU +g4r3r9opzX58GmKsnvwzVGGB9vGxjdvBnOSO5HD0miY8Ti2SMHJupNyy9p7UGmxkHMS hMvX/evQSVjBw+5CEQ1wi1GNTj1mrkjX9soWjS34z4h9p1c3qBYlpQEv0pB907Xe7bi+ e/FcRPJXhw2hIQKCCUd5STaW3EBECk9NATDcSv0KmD3mGdoy7GgnTNZqCwBd52KYEU8r QQ0M+R5l2xNgP9W+8nieQiJs/tY+5BwFJgGTkdhM4HfS8KuBoISvZnRRxs6qWvR8K3V+ /7Kw== X-Gm-Message-State: AMCzsaVQ+rCHYtY3whkJjJb1NCma5FsbN7e1DIjGiU3dmfy+H8Kqbtgk 5R5gBoRy5PME7W9UaZgkpVzDI/CAklFTi0wG68ezGw== X-Google-Smtp-Source: ABhQp+RgiHber8JZsfXTCSm6c1/b8BIXWbv30HGCguTXQLjppw9Eo6G+SaxmXxWukiWKdRZr0rGTF7rtWu4tNyfnekg= X-Received: by 10.80.169.15 with SMTP id l15mr298832edc.269.1509403623244; Mon, 30 Oct 2017 15:47:03 -0700 (PDT) MIME-Version: 1.0 Received: by 10.80.182.108 with HTTP; Mon, 30 Oct 2017 15:46:42 -0700 (PDT) From: Kakadu Date: Tue, 31 Oct 2017 01:46:42 +0300 Message-ID: To: Caml List Content-Type: multipart/mixed; boundary="94eb2c0c3942c95b26055ccb6ad2" Subject: [Caml-list] [Compiler] Reworking application of plugin hooks for typedtree --94eb2c0c3942c95b26055ccb6ad2 Content-Type: text/plain; charset="UTF-8" Hello, I have some difficulties with compiler plugins for rewriting typed tree. The current implementation of `Typemod.type_implementation` behaves like this (I think): * Checks types in the original implementation module * If corresponding for the implementation `.cmi` file doesn't exist it writes generated interface to the disk. * If a `.cmi` file exists then performs some checks * Applies typed tree hooks. The consequence of this behavior is that the plugin can't add new values to the typed tree, at least they will not appear in the .cmi file. But adding new values during rewriting the typed tree is exactly the thing that I need these days! So, I thought that following pipeline will suit better (steps 2 and 3 are swapped). `Typemod.type_implementation` * Checks types in the original implementation module. * Calls plugins to rewrite this typed tree and get a new typed tree and a signature for it * Creates a `.cmi` file if there are no any or checks that existing `.cmi` file agrees with the signature returned by plugins' hooks. I tried to implement this [1] (the important part of the diff is in the attachment) but I get a crash of `ocamlrun` when building the whole compiler. The patch seems harmless but am I missing something under the hood? Any delayed check that relies on the fact that signature of a module will not change? Am I at least trying to fix in right place? How should I work on crashes like this? Happy hacking, Kakadu [1] https://github.com/Kakadu/ocaml/tree/pptx-fix --94eb2c0c3942c95b26055ccb6ad2 Content-Type: text/plain; charset="UTF-8"; name="pptx-reorder-typemod.ml.diff" Content-Disposition: attachment; filename="pptx-reorder-typemod.ml.diff" Content-Transfer-Encoding: base64 X-Attachment-Id: f_j9ergn680 ZGlmZiAtLWdpdCBhL3R5cGluZy9lbnYubWwgYi90eXBpbmcvZW52Lm1sCmlu ZGV4IDIxY2JjYTdhLi45YzhkMjc1MiAxMDA2NDQKLS0tIGEvdHlwaW5nL2Vu di5tbAorKysgYi90eXBpbmcvZW52Lm1sCkBAIC0yMTIxLDYgKzIxMjEsNyBA QCBsZXQgb3Blbl9zaWduYXR1cmUKICgqIFJlYWQgYSBzaWduYXR1cmUgZnJv bSBhIGZpbGUgKikKIAogbGV0IHJlYWRfc2lnbmF0dXJlIG1vZG5hbWUgZmls ZW5hbWUgPQorICBwcmludF9lbmRsaW5lICJyZWFkX3NpZ25hdHVyZSI7CiAg IGxldCBwcyA9IHJlYWRfcGVyc19zdHJ1Y3QgbW9kbmFtZSBmaWxlbmFtZSBp bgogICBMYXp5LmZvcmNlIHBzLnBzX3NpZwogCkBAIC0yMTk1LDYgKzIxOTYs NyBAQCBsZXQgc2F2ZV9zaWduYXR1cmVfd2l0aF9pbXBvcnRzIH5kZXByZWNh dGVkIHNnIG1vZG5hbWUgZmlsZW5hbWUgaW1wb3J0cyA9CiAgICAgcmFpc2Ug ZXhuCiAKIGxldCBzYXZlX3NpZ25hdHVyZSB+ZGVwcmVjYXRlZCBzZyBtb2Ru YW1lIGZpbGVuYW1lID0KKyAgRm9ybWF0LnByaW50ZiAic2F2ZV9zaWduYXR1 cmUgb2YgbGVuZ3RoICVkIHRvICVzXG4lISIgKExpc3QubGVuZ3RoIHNnKSBm aWxlbmFtZTsgCiAgIHNhdmVfc2lnbmF0dXJlX3dpdGhfaW1wb3J0cyB+ZGVw cmVjYXRlZCBzZyBtb2RuYW1lIGZpbGVuYW1lIChpbXBvcnRzKCkpCiAKICgq IEZvbGRpbmcgb24gZW52aXJvbm1lbnRzICopCmRpZmYgLS1naXQgYS90eXBp bmcvdHlwZW1vZC5tbCBiL3R5cGluZy90eXBlbW9kLm1sCmluZGV4IDg0ZmM2 NDkwLi45NGIxYjM2YiAxMDA2NDQKLS0tIGEvdHlwaW5nL3R5cGVtb2QubWwK KysrIGIvdHlwaW5nL3R5cGVtb2QubWwKQEAgLTUxLDcgKzUxLDcgQEAgZXhj ZXB0aW9uIEVycm9yIG9mIExvY2F0aW9uLnQgKiBFbnYudCAqIGVycm9yCiBl eGNlcHRpb24gRXJyb3JfZm9yd2FyZCBvZiBMb2NhdGlvbi5lcnJvcgogCiBt b2R1bGUgSW1wbGVtZW50YXRpb25Ib29rcyA9IE1pc2MuTWFrZUhvb2tzKHN0 cnVjdAotICAgIHR5cGUgdCA9IFR5cGVkdHJlZS5zdHJ1Y3R1cmUgKiBUeXBl ZHRyZWUubW9kdWxlX2NvZXJjaW9uCisgICAgdHlwZSB0ID0gVHlwZWR0cmVl LnN0cnVjdHVyZSAqIFR5cGVzLnNpZ25hdHVyZSAqIFR5cGVkdHJlZS5tb2R1 bGVfY29lcmNpb24KICAgZW5kKQogbW9kdWxlIEludGVyZmFjZUhvb2tzID0g TWlzYy5NYWtlSG9va3Moc3RydWN0CiAgICAgdHlwZSB0ID0gVHlwZWR0cmVl LnNpZ25hdHVyZQpAQCAtMTY3NSw4ICsxNjc1LDggQEAgbGV0IHR5cGVfdG9w bGV2ZWxfcGhyYXNlIGVudiBzID0KICAgRW52LnJlc2V0X3JlcXVpcmVkX2ds b2JhbHMgKCk7CiAgIGxldCAoc3RyLCBzZywgZW52KSA9CiAgICAgdHlwZV9z dHJ1Y3R1cmUgfnRvcGxldmVsOnRydWUgZmFsc2UgTm9uZSBlbnYgcyBMb2Nh dGlvbi5ub25lIGluCi0gIGxldCAoc3RyLCBfY29lcmNlKSA9IEltcGxlbWVu dGF0aW9uSG9va3MuYXBwbHlfaG9va3MKLSAgICAgIHsgTWlzYy5zb3VyY2Vm aWxlID0gIi8vdG9wbGV2ZWwvLyIgfSAoc3RyLCBUY29lcmNlX25vbmUpCisg IGxldCAoc3RyLCBzZywgX2NvZXJjZSkgPSBJbXBsZW1lbnRhdGlvbkhvb2tz LmFwcGx5X2hvb2tzCisgICAgICB7IE1pc2Muc291cmNlZmlsZSA9ICIvL3Rv cGxldmVsLy8iIH0gKHN0ciwgc2csIFRjb2VyY2Vfbm9uZSkKICAgaW4KICAg KHN0ciwgc2csIGVudikKIApAQCAtMTc5MSw4ICsxNzkxLDM0IEBAIGxldCB0 eXBlX2ltcGxlbWVudGF0aW9uIHNvdXJjZWZpbGUgb3V0cHV0cHJlZml4IG1v ZHVsZW5hbWUgaW5pdGlhbF9lbnYgYXN0ID0KICAgICBUeXBlY29yZS5mb3Jj ZV9kZWxheWVkX2NoZWNrcyAoKTsKICAgICBQcmludHR5cC53cmFwX3ByaW50 aW5nX2VudiBpbml0aWFsX2VudgogICAgICAgKGZ1biAoKSAtPiBmcHJpbnRm IHN0ZF9mb3JtYXR0ZXIgIiVhQC4iIFByaW50dHlwLnNpZ25hdHVyZSBzaW1w bGVfc2cpOwotICAgIChzdHIsIFRjb2VyY2Vfbm9uZSkgICAoKiByZXN1bHQg aXMgaWdub3JlZCBieSBDb21waWxlLmltcGxlbWVudGF0aW9uICopCisgICAg KHN0ciwgc2ltcGxlX3NnLCBUY29lcmNlX25vbmUpICAgKCogcmVzdWx0IGlz IGlnbm9yZWQgYnkgQ29tcGlsZS5pbXBsZW1lbnRhdGlvbiAqKQogICBlbmQg ZWxzZSBiZWdpbgorICAgKCogaWYgd2UgY29tbWVudCBuZXh0IGxldCB3ZSB3 aWxsIHN0b3AgZ2V0dGluZyBhbiBlcnJvciBkdXJpbmcgY29tcGlsYXRpb24g b2YgY29tcGlsZXI6CisJCW1rZGlyIC1wIHN0ZGxpYl9tYW4KKwkJLi4vYm9v dC9vY2FtbHJ1biAtSSAuLi9vdGhlcmxpYnMvdW5peCAtSSAuLi9vdGhlcmxp YnMvc3RyIC4vb2NhbWxkb2MgLW1hbiAtZCBzdGRsaWJfbWFuIC1JIC4uL3Bh cnNpbmcgLUkgLi4vdXRpbHMgLUkgLi4vdHlwaW5nIC1JIC4uL2RyaXZlciAt SSAuLi9ieXRlY29tcCAtSSAuLi90b3BsZXZlbCAtSSAuLi9zdGRsaWIgLUkg Li4vY29tcGlsZXJsaWJzIC1JIC4uL290aGVybGlicy9zdHIgLUkgLi4vb3Ro ZXJsaWJzL2R5bmxpbmsgLUkgLi4vb3RoZXJsaWJzL3VuaXggLUkgLi4vb3Ro ZXJsaWJzL2dyYXBoIFwKKwkJLXQgIk9DYW1sIGxpYnJhcnkiIC1tYW4tbWlu aSAuLi9zdGRsaWIvKi5tbGkgLi4vcGFyc2luZy8qLm1saSAuLi9vdGhlcmxp YnMvdW5peC91bml4Lm1saSAuLi9vdGhlcmxpYnMvc3RyL3N0ci5tbGkgLi4v b3RoZXJsaWJzL2JpZ2FycmF5L2JpZ2FycmF5Lm1saQorCQlTZWdtZW50YXRp b24gZmF1bHQgKGNvcmUgZHVtcGVkKQorCisgICAgIG9yCisKKwltYWtlWzRd OiDQstGF0L7QtCDQsiDQutCw0YLQsNC70L7QsyDCqy9ob21lL2tha2FkdS9h c3Avb2NhbWwtdHJ1bmsvc3RkbGliwrsKKwkuLi9ib290L29jYW1scnVuIC4u L29jYW1sYyAtc3RyaWN0LXNlcXVlbmNlIC1hYnNuYW1lIC13ICthLTQtOS00 MS00Mi00NC00NS00OCAtZyAtd2Fybi1lcnJvciBBIC1iaW4tYW5ub3QgLW5v c3RkbGliIC1zYWZlLXN0cmluZyAtc3RyaWN0LWZvcm1hdHMgYHNoIC4vQ29t cGZsYWdzIGNhbWxpbnRlcm5hbEZvcm1hdEJhc2ljcy5jbWlgIC1jIGNhbWxp bnRlcm5hbEZvcm1hdEJhc2ljcy5tbGkKKwlTZWdtZW50YXRpb24gZmF1bHQg KGNvcmUgZHVtcGVkKQorCisgKikKKworICAgICgqIGJ1dCB0aGlzIGxldCBz aG91bGQgYmUgaGFybWxlc3MsIEkgZG9uJ3Qga25vdyB3aHkgaXQgY3JlYXRl cyBjcmFzaGVzICopIAorICAgIGxldCAoc3RyLCBzZykgPSAKKyAgICAgIGlm IEltcGxlbWVudGF0aW9uSG9va3MuY291bnRfaG9va3MgKCkgPiAwIAorICAg ICAgdGhlbiAKKyAgICAgICAgbGV0IChzdHIsc2csXykgPSBJbXBsZW1lbnRh dGlvbkhvb2tzLmFwcGx5X2hvb2tzIHsgTWlzYy5zb3VyY2VmaWxlIH0gCisg ICAgICAgICAgICAoc3RyLCBzaW1wbGVfc2csIFRjb2VyY2Vfbm9uZSkgCisg ICAgICAgIGluCisgICAgICAgIChzdHIsc2cpCisgICAgICBlbHNlIChzdHIs IHNpbXBsZV9zZykKKyAgICBpbgorCisgICAgbGV0IHNpbXBsZV9zZyA9IHNp bXBsaWZ5X3NpZ25hdHVyZSBzZyBpbgogICAgIGxldCBzb3VyY2VpbnRmID0K ICAgICAgIEZpbGVuYW1lLnJlbW92ZV9leHRlbnNpb24gc291cmNlZmlsZSBe ICFDb25maWcuaW50ZXJmYWNlX3N1ZmZpeCBpbgogICAgIGlmIFN5cy5maWxl X2V4aXN0cyBzb3VyY2VpbnRmIHRoZW4gYmVnaW4KQEAgLTE4MTEsNyArMTgz Nyw3IEBAIGxldCB0eXBlX2ltcGxlbWVudGF0aW9uIHNvdXJjZWZpbGUgb3V0 cHV0cHJlZml4IG1vZHVsZW5hbWUgaW5pdGlhbF9lbnYgYXN0ID0KICAgICAg ICAgIGFyZSBub3QgcmVwb3J0ZWQgYXMgYmVpbmcgdW51c2VkLiAqKQogICAg ICAgQ210X2Zvcm1hdC5zYXZlX2NtdCAob3V0cHV0cHJlZml4IF4gIi5jbXQi KSBtb2R1bGVuYW1lCiAgICAgICAgIChDbXRfZm9ybWF0LkltcGxlbWVudGF0 aW9uIHN0cikgKFNvbWUgc291cmNlZmlsZSkgaW5pdGlhbF9lbnYgTm9uZTsK LSAgICAgIChzdHIsIGNvZXJjaW9uKQorICAgICAgKHN0ciwgc2ltcGxlX3Nn LCBjb2VyY2lvbikKICAgICBlbmQgZWxzZSBiZWdpbgogICAgICAgbGV0IGNv ZXJjaW9uID0KICAgICAgICAgSW5jbHVkZW1vZC5jb21wdW5pdCBpbml0aWFs X2VudiBzb3VyY2VmaWxlIHNnCkBAIC0xODMzLDcgKzE4NTksNyBAQCBsZXQg dHlwZV9pbXBsZW1lbnRhdGlvbiBzb3VyY2VmaWxlIG91dHB1dHByZWZpeCBt b2R1bGVuYW1lIGluaXRpYWxfZW52IGFzdCA9CiAgICAgICAgICAgKENtdF9m b3JtYXQuSW1wbGVtZW50YXRpb24gc3RyKQogICAgICAgICAgIChTb21lIHNv dXJjZWZpbGUpIGluaXRpYWxfZW52IChTb21lIGNtaSk7CiAgICAgICBlbmQ7 Ci0gICAgICAoc3RyLCBjb2VyY2lvbikKKyAgICAgIChzdHIsIHNpbXBsZV9z ZywgY29lcmNpb24pCiAgICAgZW5kCiAgICAgZW5kCiAgIHdpdGggZSAtPgpA QCAtMTg0Myw5ICsxODY5LDExIEBAIGxldCB0eXBlX2ltcGxlbWVudGF0aW9u IHNvdXJjZWZpbGUgb3V0cHV0cHJlZml4IG1vZHVsZW5hbWUgaW5pdGlhbF9l bnYgYXN0ID0KICAgICAgIChTb21lIHNvdXJjZWZpbGUpIGluaXRpYWxfZW52 IE5vbmU7CiAgICAgcmFpc2UgZQogCisoKgogbGV0IHR5cGVfaW1wbGVtZW50 YXRpb24gc291cmNlZmlsZSBvdXRwdXRwcmVmaXggbW9kdWxlbmFtZSBpbml0 aWFsX2VudiBhc3QgPQogICBJbXBsZW1lbnRhdGlvbkhvb2tzLmFwcGx5X2hv b2tzIHsgTWlzYy5zb3VyY2VmaWxlIH0KICAgICAodHlwZV9pbXBsZW1lbnRh dGlvbiBzb3VyY2VmaWxlIG91dHB1dHByZWZpeCBtb2R1bGVuYW1lIGluaXRp YWxfZW52IGFzdCkKKyopCiAKIGxldCBzYXZlX3NpZ25hdHVyZSBtb2RuYW1l IHRzZyBvdXRwdXRwcmVmaXggc291cmNlX2ZpbGUgaW5pdGlhbF9lbnYgY21p ID0KICAgQ210X2Zvcm1hdC5zYXZlX2NtdCAgKG91dHB1dHByZWZpeCBeICIu Y210aSIpIG1vZG5hbWUKZGlmZiAtLWdpdCBhL3R5cGluZy90eXBlbW9kLm1s aSBiL3R5cGluZy90eXBlbW9kLm1saQppbmRleCBmYjc2N2RiMi4uZjdlYmYw ZGUgMTAwNjQ0Ci0tLSBhL3R5cGluZy90eXBlbW9kLm1saQorKysgYi90eXBp bmcvdHlwZW1vZC5tbGkKQEAgLTI4LDcgKzI4LDcgQEAgdmFsIHR5cGVfdG9w bGV2ZWxfcGhyYXNlOgogICAgICAgICAgVHlwZWR0cmVlLnN0cnVjdHVyZSAq IFR5cGVzLnNpZ25hdHVyZSAqIEVudi50CiB2YWwgdHlwZV9pbXBsZW1lbnRh dGlvbjoKICAgc3RyaW5nIC0+IHN0cmluZyAtPiBzdHJpbmcgLT4gRW52LnQg LT4gUGFyc2V0cmVlLnN0cnVjdHVyZSAtPgotICBUeXBlZHRyZWUuc3RydWN0 dXJlICogVHlwZWR0cmVlLm1vZHVsZV9jb2VyY2lvbgorICBUeXBlZHRyZWUu c3RydWN0dXJlICogVHlwZXMuc2lnbmF0dXJlICogVHlwZWR0cmVlLm1vZHVs ZV9jb2VyY2lvbgogdmFsIHR5cGVfaW50ZXJmYWNlOgogICAgICAgICBzdHJp bmcgLT4gRW52LnQgLT4gUGFyc2V0cmVlLnNpZ25hdHVyZSAtPiBUeXBlZHRy ZWUuc2lnbmF0dXJlCiB2YWwgdHJhbnNsX3NpZ25hdHVyZToKQEAgLTg1LDYg Kzg1LDYgQEAgdmFsIHJlcG9ydF9lcnJvcjogRW52LnQgLT4gZm9ybWF0dGVy IC0+IGVycm9yIC0+IHVuaXQKIAogCiBtb2R1bGUgSW1wbGVtZW50YXRpb25I b29rcyA6IE1pc2MuSG9va1NpZwotICB3aXRoIHR5cGUgdCA9IFR5cGVkdHJl ZS5zdHJ1Y3R1cmUgKiBUeXBlZHRyZWUubW9kdWxlX2NvZXJjaW9uCisgIHdp dGggdHlwZSB0ID0gVHlwZWR0cmVlLnN0cnVjdHVyZSAqIFR5cGVzLnNpZ25h dHVyZSAqIFR5cGVkdHJlZS5tb2R1bGVfY29lcmNpb24KIG1vZHVsZSBJbnRl cmZhY2VIb29rcyA6IE1pc2MuSG9va1NpZwogICB3aXRoIHR5cGUgdCA9IFR5 cGVkdHJlZS5zaWduYXR1cmUK --94eb2c0c3942c95b26055ccb6ad2--