Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1ik4rU-0005lv-V5 for pgadmin-hackers@arkaria.postgresql.org; Wed, 25 Dec 2019 11:29:57 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1ik4rT-0000ay-PG for pgadmin-hackers@arkaria.postgresql.org; Wed, 25 Dec 2019 11:29:55 +0000 Received: from makus.postgresql.org ([2001:4800:3e1:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1ik4rT-0000ao-60 for pgadmin-hackers@lists.postgresql.org; Wed, 25 Dec 2019 11:29:55 +0000 Received: from mail-ed1-x541.google.com ([2a00:1450:4864:20::541]) by makus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1ik4rN-0005Fd-Ib for pgadmin-hackers@postgresql.org; Wed, 25 Dec 2019 11:29:53 +0000 Received: by mail-ed1-x541.google.com with SMTP id t17so19718455eds.6 for ; Wed, 25 Dec 2019 03:29:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=43iVoGIoGycLRc921ZoH4Xc8IfUnkaecfT5TNFTRKoQ=; b=qrd2hUdFqlU0It2p1H2qgZOIUWyrrwGmBP8nq8vQ04duWE5RMSsNJMhzLSXixYNZ9F ZHLkebTaBOnFTZIEq4EVL0xHIXo5+cFhaotF8X322kZ8Ta5dS/pnv+kgTnQ9ZiXle96Q YRBzg9ZQAdYNfLuqudaqgZFDgRsPoYA9ohX7OCHgI1Okxhwf0wTHtUiTqvbJsZ1mQpDp W4GWnRxPUCygFN+5yogp0hes4JU8hYFPGbLCPYZttbyllwBK4klRmUNZNTgWVu38SEBp z5Lgo+SOV7ccl9ZYqpo9h2KM0BDZFvjEVYjn83xhLrGtoDskHF/K2f/kpC0fwbMtq5KQ e+CQ== 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=43iVoGIoGycLRc921ZoH4Xc8IfUnkaecfT5TNFTRKoQ=; b=hi3zwa57/e3X30JBzg0tlD3IWA636LMDL+meK7e6OcezCUuumjfioo/NEgvnaAKkfD JFzoza6bkdOUR4J/bcsdoXRbIrq8/qs5Alal69Lhdm7as3nzFm+pLwg/spbfGN52MQJ3 idjlekcytWQjG9XpzZVnKqLrtlJkHVlKruVVR1GLMi65EmP85CgeS6oRPZD+w/HZC9Xr vJNAs5Kbx8Rcz8HR4HvghQFg3nky+mJGl6e7vUdyK3u4JBh5JcAvgT2k5SRsmkHL56/6 2MjIKZQ5rOovV34zBvWtcTL2Hb+eiPHtGb01rDZWirhLar67ThDoqsEcCBuMxrVHpjoD IK8g== X-Gm-Message-State: APjAAAWPOB5yb+dp9QDuRA2E03/zPw1Hr8Tg6c5tRlaqLd7W7vtUbwpO o0PoLpuSFZQCcksQUFID8hW/jbaJTdFJZTwkmAf7jW2i/5ktcKtNzK/DjOg9nUGNRyzwPB8effC I97H6PqUMrc3C9VrTtAwbv2r6GbnEv/D80ocoxYydu/+W26O9LOEYqIGjQEWty+pVlJNs2PnlgG aqYv58Ew4ITPU804Y5A0VJxa6qu3RkDqU/fIts33VZP0VKcJd93+//HCi3 X-Google-Smtp-Source: APXvYqzOWxPfGWvUa43N6EBGeNmJys9X42XVI4tEuqwDkLvbu33n7FZXYRt0BHi0E6crVKIW/0RzKBGt2J84rbD2qsI= X-Received: by 2002:a17:906:2892:: with SMTP id o18mr29745043ejd.312.1577273387746; Wed, 25 Dec 2019 03:29:47 -0800 (PST) MIME-Version: 1.0 From: Aditya Toshniwal Date: Wed, 25 Dec 2019 16:59:11 +0530 Message-ID: Subject: [pgAdmin][RM4842] trigger/compound trigger on a partitioned table To: pgadmin-hackers Content-Type: multipart/mixed; boundary="000000000000fdce34059a859347" X-CLOUD-SEC-AV-Info: edb,google_mail,monitor X-CLOUD-SEC-AV-Sent: true X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --000000000000fdce34059a859347 Content-Type: multipart/alternative; boundary="000000000000fdce30059a859345" --000000000000fdce30059a859345 Content-Type: text/plain; charset="UTF-8" Hi Hackers, Attached is the patch to fix the issue where it was not possible to add constraints, index, rules, triggers and compound triggers on child tables of a partitioned table. The problem was with URLs formed which also included parent table OID, which was not needed. The code is changed to add "url_jump_after_node" param to skip after a certain node, which will will skip all the value between jump_after_node to the last node, excluding jump_after_node and the last node. Partitioned table itself is a "table" and can be multilevel. Kindly review. -- Thanks and Regards, Aditya Toshniwal pgAdmin Hacker | Sr. Software Engineer | EnterpriseDB India | Pune "Don't Complain about Heat, Plant a TREE" --000000000000fdce30059a859345 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Hackers,

Attached is the patch to fix the issue where i= t was not possible to add constraints, index, rules, triggers and compound = triggers on child tables of a partitioned table.
The problem was with = URLs formed which also included parent table OID, which was not needed. The= code is changed to add "url_jump_after_node" param to skip after= a certain node, which=C2=A0will will skip all the value between jump_after= _node to the last node, excluding jump_after_node and the last node. Partit= ioned table itself is a "table" and can be multilevel.
Kindly review.

--
Thanks and Regards,
Aditya Toshniwal
pgAdmin Hacker | Sr. Software Engineer |=C2=A0Enterpri= seDB India |=C2=A0Pune
"Don't Complain about Heat, Plant a TREE"
--000000000000fdce30059a859345-- --000000000000fdce34059a859347 Content-Type: application/octet-stream; name="RM4842.patch" Content-Disposition: attachment; filename="RM4842.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k4l7tr5c0 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9jb21wb3VuZF90cmlnZ2Vycy9fX2luaXRfXy5weSBiL3dl Yi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFz L3RhYmxlcy9jb21wb3VuZF90cmlnZ2Vycy9fX2luaXRfXy5weQppbmRleCA2MTE5ZmYxMzguLjU2 NWQwMGZlZCAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3Nl cnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbXBvdW5kX3RyaWdnZXJzL19faW5pdF9f LnB5CisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFi YXNlcy9zY2hlbWFzL3RhYmxlcy9jb21wb3VuZF90cmlnZ2Vycy9fX2luaXRfXy5weQpAQCAtNzI2 LDcgKzcyNiw3IEBAIGNsYXNzIENvbXBvdW5kVHJpZ2dlclZpZXcoUEdDaGlsZE5vZGVWaWV3KToK ICAgICAgICAgICAgICAgICBzZWxmLmNvbm4sIHNlbGYuc2NoZW1hLCBzZWxmLnRhYmxlLCB0aWQs IHRyaWQsCiAgICAgICAgICAgICAgICAgc2VsZi5kYXRsYXN0c3lzb2lkKQogICAgICAgICBleGNl cHQgRXhjZXB0aW9uIGFzIGU6Ci0gICAgICAgICAgICByZXR1cm4gaW50ZXJuYWxfc2VydmVyX2Vy cm9yKGVycm9ybXNnPVNRTCkKKyAgICAgICAgICAgIHJldHVybiBpbnRlcm5hbF9zZXJ2ZXJfZXJy b3IoZXJyb3Jtc2c9c3RyKGUpKQogCiAgICAgICAgIHJldHVybiBhamF4X3Jlc3BvbnNlKHJlc3Bv bnNlPVNRTCkKIApkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBz L3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbXBvdW5kX3RyaWdnZXJzL3N0YXRp Yy9qcy9jb21wb3VuZF90cmlnZ2VyLmpzIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3Jv dXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbXBvdW5kX3RyaWdnZXJzL3N0 YXRpYy9qcy9jb21wb3VuZF90cmlnZ2VyLmpzCmluZGV4IDBmNzQ4OTVjZi4uMWQ3ZWZlYjQ1IDEw MDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRh YmFzZXMvc2NoZW1hcy90YWJsZXMvY29tcG91bmRfdHJpZ2dlcnMvc3RhdGljL2pzL2NvbXBvdW5k X3RyaWdnZXIuanMKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZl cnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbXBvdW5kX3RyaWdnZXJzL3N0YXRpYy9qcy9j b21wb3VuZF90cmlnZ2VyLmpzCkBAIC00Miw2ICs0Miw3IEBAIGRlZmluZSgncGdhZG1pbi5ub2Rl LmNvbXBvdW5kX3RyaWdnZXInLCBbCiAgICAgICBzcWxBbHRlckhlbHA6ICdzcWwtYWx0ZXJ0Y29t cG91bmR0cmlnZ2VyLmh0bWwnLAogICAgICAgc3FsQ3JlYXRlSGVscDogJ3NxbC1jcmVhdGVjb21w b3VuZHRyaWdnZXIuaHRtbCcsCiAgICAgICBkaWFsb2dIZWxwOiB1cmxfZm9yKCdoZWxwLnN0YXRp YycsIHsnZmlsZW5hbWUnOiAnY29tcG91bmRfdHJpZ2dlcl9kaWFsb2cuaHRtbCd9KSwKKyAgICAg IHVybF9qdW1wX2FmdGVyX25vZGU6ICdzY2hlbWEnLAogICAgICAgSW5pdDogZnVuY3Rpb24oKSB7 CiAgICAgICAgIC8qIEF2b2lkIG11bGl0cGxlIHJlZ2lzdHJhdGlvbiBvZiBtZW51cyAqLwogICAg ICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9jb25zdHJh aW50cy9jaGVja19jb25zdHJhaW50L3N0YXRpYy9qcy9jaGVja19jb25zdHJhaW50LmpzIGIvd2Vi L3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMv dGFibGVzL2NvbnN0cmFpbnRzL2NoZWNrX2NvbnN0cmFpbnQvc3RhdGljL2pzL2NoZWNrX2NvbnN0 cmFpbnQuanMKaW5kZXggNjVhMDAyZTFmLi5mZWQ3MTdhYzIgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2Fk bWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxl cy9jb25zdHJhaW50cy9jaGVja19jb25zdHJhaW50L3N0YXRpYy9qcy9jaGVja19jb25zdHJhaW50 LmpzCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFi YXNlcy9zY2hlbWFzL3RhYmxlcy9jb25zdHJhaW50cy9jaGVja19jb25zdHJhaW50L3N0YXRpYy9q cy9jaGVja19jb25zdHJhaW50LmpzCkBAIC0yNiw2ICsyNiw3IEBAIGRlZmluZSgncGdhZG1pbi5u b2RlLmNoZWNrX2NvbnN0cmFpbnQnLCBbCiAgICAgICBoYXNTUUw6IHRydWUsCiAgICAgICBoYXNE ZXBlbmRzOiB0cnVlLAogICAgICAgcGFyZW50X3R5cGU6IFsndGFibGUnLCdwYXJ0aXRpb24nXSwK KyAgICAgIHVybF9qdW1wX2FmdGVyX25vZGU6ICdzY2hlbWEnLAogICAgICAgSW5pdDogZnVuY3Rp b24oKSB7CiAgICAgICAgIC8vIEF2b2lkIG11bGl0cGxlIHJlZ2lzdHJhdGlvbiBvZiBtZW51cwog ICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jy b3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9jb25z dHJhaW50cy9leGNsdXNpb25fY29uc3RyYWludC9zdGF0aWMvanMvZXhjbHVzaW9uX2NvbnN0cmFp bnQuanMgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFz ZXMvc2NoZW1hcy90YWJsZXMvY29uc3RyYWludHMvZXhjbHVzaW9uX2NvbnN0cmFpbnQvc3RhdGlj L2pzL2V4Y2x1c2lvbl9jb25zdHJhaW50LmpzCmluZGV4IDY0N2I2MzUyNS4uZGIxMjg2Zjg4IDEw MDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRh YmFzZXMvc2NoZW1hcy90YWJsZXMvY29uc3RyYWludHMvZXhjbHVzaW9uX2NvbnN0cmFpbnQvc3Rh dGljL2pzL2V4Y2x1c2lvbl9jb25zdHJhaW50LmpzCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9jb25zdHJhaW50 cy9leGNsdXNpb25fY29uc3RyYWludC9zdGF0aWMvanMvZXhjbHVzaW9uX2NvbnN0cmFpbnQuanMK QEAgLTYyOSw2ICs2MjksNyBAQCBkZWZpbmUoJ3BnYWRtaW4ubm9kZS5leGNsdXNpb25fY29uc3Ry YWludCcsIFsKICAgICAgIGhhc0RlcGVuZHM6IHRydWUsCiAgICAgICBoYXNTdGF0aXN0aWNzOiB0 cnVlLAogICAgICAgc3RhdHNQcmV0dGlmeUZpZWxkczogW2dldHRleHQoJ0luZGV4IHNpemUnKV0s CisgICAgICB1cmxfanVtcF9hZnRlcl9ub2RlOiAnc2NoZW1hJywKICAgICAgIEluaXQ6IGZ1bmN0 aW9uKCkgewogICAgICAgICAvKiBBdm9pZCBtdWx0aXBsZSByZWdpc3RyYXRpb24gb2YgbWVudXMg Ki8KICAgICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQpCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1p bi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMv Y29uc3RyYWludHMvZm9yZWlnbl9rZXkvc3RhdGljL2pzL2ZvcmVpZ25fa2V5LmpzIGIvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFi bGVzL2NvbnN0cmFpbnRzL2ZvcmVpZ25fa2V5L3N0YXRpYy9qcy9mb3JlaWduX2tleS5qcwppbmRl eCA5NjcxM2ZmMDguLjEyYTk0MGUzNCAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9z ZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbnN0cmFpbnRz L2ZvcmVpZ25fa2V5L3N0YXRpYy9qcy9mb3JlaWduX2tleS5qcworKysgYi93ZWIvcGdhZG1pbi9i cm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvY29u c3RyYWludHMvZm9yZWlnbl9rZXkvc3RhdGljL2pzL2ZvcmVpZ25fa2V5LmpzCkBAIC01NDUsNyAr NTQ1LDggQEAgZGVmaW5lKCdwZ2FkbWluLm5vZGUuZm9yZWlnbl9rZXknLCBbCiAgICAgICAgICAg dXJsID0gJ2dldF9jb3ZlcmluZ2luZGV4JywKICAgICAgICAgICBtID0gc2VsZi5tb2RlbCwKICAg ICAgICAgICBjb2xzID0gW10sCi0gICAgICAgICAgY292ZXJpbmdpbmRleCA9IG51bGw7CisgICAg ICAgICAgY292ZXJpbmdpbmRleCA9IG51bGwsCisgICAgICAgICAgdXJsX2p1bXBfYWZ0ZXJfbm9k ZSA9ICdzY2hlbWEnOwogCiAgICAgICAgIHNlbGYuY29sbGVjdGlvbi5lYWNoKGZ1bmN0aW9uKG0p ewogICAgICAgICAgIGNvbHMucHVzaChtLmdldCgnbG9jYWxfY29sdW1uJykpOwpAQCAtNTU3LDcg KzU1OCw3IEBAIGRlZmluZSgncGdhZG1pbi5ub2RlLmZvcmVpZ25fa2V5JywgWwogICAgICAgICAg ICAgZnVsbF91cmwgPSBub2RlLmdlbmVyYXRlX3VybC5hcHBseSgKICAgICAgICAgICAgICAgbm9k ZSwgWwogICAgICAgICAgICAgICAgIG51bGwsIHVybCwgdGhpcy5maWVsZC5nZXQoJ25vZGVfZGF0 YScpLAotICAgICAgICAgICAgICAgIHRoaXMuZmllbGQuZ2V0KCd1cmxfd2l0aF9pZCcpIHx8IGZh bHNlLCBub2RlX2luZm8sCisgICAgICAgICAgICAgICAgdGhpcy5maWVsZC5nZXQoJ3VybF93aXRo X2lkJykgfHwgZmFsc2UsIG5vZGVfaW5mbywgdXJsX2p1bXBfYWZ0ZXJfbm9kZSwKICAgICAgICAg ICAgICAgXSk7CiAKICAgICAgICAgICBpZiAodGhpcy5maWVsZC5nZXQoJ3ZlcnNpb25fY29tcGF0 aWJsZScpKSB7CkBAIC02MjIsNiArNjIzLDcgQEAgZGVmaW5lKCdwZ2FkbWluLm5vZGUuZm9yZWln bl9rZXknLCBbCiAgICAgICBjYW5Ecm9wOiB0cnVlLAogICAgICAgY2FuRHJvcENhc2NhZGU6IHRy dWUsCiAgICAgICBoYXNEZXBlbmRzOiB0cnVlLAorICAgICAgdXJsX2p1bXBfYWZ0ZXJfbm9kZTog J3NjaGVtYScsCiAgICAgICBJbml0OiBmdW5jdGlvbigpIHsKICAgICAgICAgLyogQXZvaWQgbXVs dGlwbGUgcmVnaXN0cmF0aW9uIG9mIG1lbnVzICovCiAgICAgICAgIGlmICh0aGlzLmluaXRpYWxp emVkKQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZl cnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbnN0cmFpbnRzL2luZGV4X2NvbnN0cmFpbnQv c3RhdGljL2pzL3ByaW1hcnlfa2V5LmpzIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3Jv dXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbnN0cmFpbnRzL2luZGV4X2Nv bnN0cmFpbnQvc3RhdGljL2pzL3ByaW1hcnlfa2V5LmpzCmluZGV4IDhlY2QxZGFlMC4uZWUwMjA2 ZDk5IDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVy cy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvY29uc3RyYWludHMvaW5kZXhfY29uc3RyYWludC9z dGF0aWMvanMvcHJpbWFyeV9rZXkuanMKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbnN0cmFpbnRzL2luZGV4 X2NvbnN0cmFpbnQvc3RhdGljL2pzL3ByaW1hcnlfa2V5LmpzCkBAIC0yOSw2ICsyOSw3IEBAIGRl ZmluZSgncGdhZG1pbi5ub2RlLnByaW1hcnlfa2V5JywgWwogICAgICAgcGFyZW50X3R5cGU6IFsn dGFibGUnLCdwYXJ0aXRpb24nXSwKICAgICAgIGNhbkRyb3A6IHRydWUsCiAgICAgICBjYW5Ecm9w Q2FzY2FkZTogdHJ1ZSwKKyAgICAgIHVybF9qdW1wX2FmdGVyX25vZGU6ICdzY2hlbWEnLAogICAg ICAgSW5pdDogZnVuY3Rpb24oKSB7CiAgICAgICAgIC8qIEF2b2lkIG11bHRpcGxlIHJlZ2lzdHJh dGlvbiBvZiBtZW51cyAqLwogICAgICAgICBpZiAodGhpcy5pbml0aWFsaXplZCkKZGlmZiAtLWdp dCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9z Y2hlbWFzL3RhYmxlcy9jb25zdHJhaW50cy9pbmRleF9jb25zdHJhaW50L3N0YXRpYy9qcy91bmlx dWVfY29uc3RyYWludC5qcyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2 ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9jb25zdHJhaW50cy9pbmRleF9jb25zdHJhaW50 L3N0YXRpYy9qcy91bmlxdWVfY29uc3RyYWludC5qcwppbmRleCA5ZGFjMjIwMjguLmZiZWM3Yjhm YyAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMv ZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbnN0cmFpbnRzL2luZGV4X2NvbnN0cmFpbnQvc3Rh dGljL2pzL3VuaXF1ZV9jb25zdHJhaW50LmpzCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2Vy dmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9jb25zdHJhaW50cy9p bmRleF9jb25zdHJhaW50L3N0YXRpYy9qcy91bmlxdWVfY29uc3RyYWludC5qcwpAQCAtMjksNiAr MjksNyBAQCBkZWZpbmUoJ3BnYWRtaW4ubm9kZS51bmlxdWVfY29uc3RyYWludCcsIFsKICAgICAg IHBhcmVudF90eXBlOiBbJ3RhYmxlJywncGFydGl0aW9uJ10sCiAgICAgICBjYW5Ecm9wOiB0cnVl LAogICAgICAgY2FuRHJvcENhc2NhZGU6IHRydWUsCisgICAgICB1cmxfanVtcF9hZnRlcl9ub2Rl OiAnc2NoZW1hJywKICAgICAgIEluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAvKiBBdm9pZCBt dWx0aXBsZSByZWdpc3RyYXRpb24gb2YgbWVudXMgKi8KICAgICAgICAgaWYgKHRoaXMuaW5pdGlh bGl6ZWQpCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvY29uc3RyYWludHMvc3RhdGljL2pzL2NvbnN0 cmFpbnRzLmpzIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0 YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbnN0cmFpbnRzL3N0YXRpYy9qcy9jb25zdHJhaW50cy5q cwppbmRleCA2MGMyYjNlOTguLjc2MzRmN2E5MiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL2NvbnN0 cmFpbnRzL3N0YXRpYy9qcy9jb25zdHJhaW50cy5qcworKysgYi93ZWIvcGdhZG1pbi9icm93c2Vy L3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvY29uc3RyYWlu dHMvc3RhdGljL2pzL2NvbnN0cmFpbnRzLmpzCkBAIC0zMyw2ICszMyw3IEBAIGRlZmluZSgncGdh ZG1pbi5ub2RlLmNvbnN0cmFpbnRzJywgWwogICAgICAgbGFiZWw6IGdldHRleHQoJ0NvbnN0cmFp bnRzJyksCiAgICAgICBjb2xsZWN0aW9uX3R5cGU6ICdjb2xsLWNvbnN0cmFpbnRzJywKICAgICAg IHBhcmVudF90eXBlOiBbJ3RhYmxlJywncGFydGl0aW9uJ10sCisgICAgICB1cmxfanVtcF9hZnRl cl9ub2RlOiAnc2NoZW1hJywKICAgICAgIEluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAvKiBB dm9pZCBtdWxpdHBsZSByZWdpc3RyYXRpb24gb2YgbWVudXMgKi8KICAgICAgICAgaWYgKHRoaXMu aW5pdGlhbGl6ZWQpCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvaW5kZXhlcy9zdGF0aWMvanMvaW5k ZXguanMgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFz ZXMvc2NoZW1hcy90YWJsZXMvaW5kZXhlcy9zdGF0aWMvanMvaW5kZXguanMKaW5kZXggMWYyMTFi NTI3Li5kZjJhNzE4NGEgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dy b3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9pbmRleGVzL3N0YXRpYy9qcy9p bmRleC5qcworKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9k YXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvaW5kZXhlcy9zdGF0aWMvanMvaW5kZXguanMKQEAgLTky LDYgKzkyLDcgQEAgZGVmaW5lKCdwZ2FkbWluLm5vZGUuaW5kZXgnLCBbCiAgICAgICAgICAgcmV0 dXJuICEobS5pblNjaGVtYVdpdGhNb2RlbENoZWNrLmFwcGx5KHRoaXMsIGFyZ3VtZW50cykpOwog ICAgICAgICB9LAogICAgICAgICBjb250cm9sOiAnbm9kZS1hamF4LW9wdGlvbnMnLCB1cmw6ICdn ZXRfY29sbGF0aW9ucycsIG5vZGU6ICdpbmRleCcsCisgICAgICAgIHVybF9qdW1wX2FmdGVyX25v ZGU6ICdzY2hlbWEnLAogICAgICAgfSx7CiAgICAgICAgIGlkOiAnb3BfY2xhc3MnLCBsYWJlbDog Z2V0dGV4dCgnT3BlcmF0b3IgY2xhc3MnKSwKICAgICAgICAgY2VsbDogTm9kZUFqYXhPcHRpb25z RGVwc0NlbGwsIHRhZ3M6IHRydWUsCkBAIC0xMDYsNiArMTA3LDcgQEAgZGVmaW5lKCdwZ2FkbWlu Lm5vZGUuaW5kZXgnLCBbCiAgICAgICAgICAgcmV0dXJuICEobS5jaGVja0FjY2Vzc01ldGhvZC5h cHBseSh0aGlzLCBhcmd1bWVudHMpKTsKICAgICAgICAgfSwKICAgICAgICAgY29udHJvbDogJ25v ZGUtYWpheC1vcHRpb25zJywgdXJsOiAnZ2V0X29wX2NsYXNzJywgbm9kZTogJ2luZGV4JywKKyAg ICAgICAgdXJsX2p1bXBfYWZ0ZXJfbm9kZTogJ3NjaGVtYScsCiAgICAgICAgIGRlcHM6IFsnYW1u YW1lJ10sIHRyYW5zZm9ybTogZnVuY3Rpb24oZGF0YSwgY29udHJvbCkgewogICAgICAgICAgIC8q IFdlIG5lZWQgdG8gZXh0cmFjdCBkYXRhIGZyb20gY29sbGVjdGlvbiBhY2NvcmRpbmcKICAgICAg ICAgICAgKiB0byBhY2Nlc3MgbWV0aG9kIHNlbGVjdGVkIGJ5IHVzZXIgaWYgbm90IHNlbGVjdGVk CkBAIC0yMzIsNiArMjM0LDcgQEAgZGVmaW5lKCdwZ2FkbWluLm5vZGUuaW5kZXgnLCBbCiAgICAg ICBoYXNTdGF0aXN0aWNzOiB0cnVlLAogICAgICAgd2lkdGg6IHBnQnJvd3Nlci5zdGRXLm1kICsg J3B4JywKICAgICAgIHN0YXRzUHJldHRpZnlGaWVsZHM6IFtnZXR0ZXh0KCdTaXplJyksIGdldHRl eHQoJ0luZGV4IHNpemUnKV0sCisgICAgICB1cmxfanVtcF9hZnRlcl9ub2RlOiAnc2NoZW1hJywK ICAgICAgIEluaXQ6IGZ1bmN0aW9uKCkgewogICAgICAgICAvKiBBdm9pZCBtdWxpdHBsZSByZWdp c3RyYXRpb24gb2YgbWVudXMgKi8KICAgICAgICAgaWYgKHRoaXMuaW5pdGlhbGl6ZWQpCkBAIC0z MDgsNiArMzExLDcgQEAgZGVmaW5lKCdwZ2FkbWluLm5vZGUuaW5kZXgnLCBbCiAgICAgICAgICAg aWQ6ICdhbW5hbWUnLCBsYWJlbDogZ2V0dGV4dCgnQWNjZXNzIE1ldGhvZCcpLCBjZWxsOiAnc3Ry aW5nJywKICAgICAgICAgICB0eXBlOiAndGV4dCcsIG1vZGU6IFsncHJvcGVydGllcycsICdjcmVh dGUnLCAnZWRpdCddLAogICAgICAgICAgIGRpc2FibGVkOiAnaW5TY2hlbWFXaXRoTW9kZWxDaGVj aycsIHVybDogJ2dldF9hY2Nlc3NfbWV0aG9kcycsCisgICAgICAgICAgdXJsX2p1bXBfYWZ0ZXJf bm9kZTogJ3NjaGVtYScsCiAgICAgICAgICAgZ3JvdXA6IGdldHRleHQoJ0RlZmluaXRpb24nKSwg c2VsZWN0MjogeydhbGxvd0NsZWFyJzogdHJ1ZX0sCiAgICAgICAgICAgY29udHJvbDogQmFja2Zv cm0uTm9kZUFqYXhPcHRpb25zQ29udHJvbC5leHRlbmQoewogICAgICAgICAgICAgLy8gV2hlbiBh Y2Nlc3MgbWV0aG9kIGNoYW5nZXMgd2UgbmVlZCB0byBjbGVhciBjb2x1bW5zIGNvbGxlY3Rpb24K ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL3RhYmxlcy9ydWxlcy9zdGF0aWMvanMvcnVsZS5qcyBiL3dlYi9wZ2Fk bWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxl cy9ydWxlcy9zdGF0aWMvanMvcnVsZS5qcwppbmRleCA3ZDY2ZDkxMTYuLjYyNGI5ODgwNiAxMDA2 NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvdGFibGVzL3J1bGVzL3N0YXRpYy9qcy9ydWxlLmpzCisrKyBiL3dlYi9wZ2Fk bWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxl cy9ydWxlcy9zdGF0aWMvanMvcnVsZS5qcwpAQCAtNzEsNiArNzEsNyBAQCBkZWZpbmUoJ3BnYWRt aW4ubm9kZS5ydWxlJywgWwogICAgICAgICAgIHJldHVybiB0cnVlOwogICAgICAgICB9CiAgICAg ICB9LAorICAgICAgdXJsX2p1bXBfYWZ0ZXJfbm9kZTogJ3NjaGVtYScsCiAgICAgICBJbml0OiBm dW5jdGlvbigpIHsKIAogICAgICAgICAvKiBBdm9pZCBtdWxpdHBsZSByZWdpc3RyYXRpb24gb2Yg bWVudXMgKi8KZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9z ZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy90cmlnZ2Vycy9zdGF0aWMvanMvdHJpZ2dl ci5qcyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNl cy9zY2hlbWFzL3RhYmxlcy90cmlnZ2Vycy9zdGF0aWMvanMvdHJpZ2dlci5qcwppbmRleCAzYWI2 MDcyYzMuLmMzOTBhODM1MCAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3RyaWdnZXJzL3N0YXRpYy9q cy90cmlnZ2VyLmpzCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2 ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy90cmlnZ2Vycy9zdGF0aWMvanMvdHJpZ2dlci5q cwpAQCAtNDIsNiArNDIsNyBAQCBkZWZpbmUoJ3BnYWRtaW4ubm9kZS50cmlnZ2VyJywgWwogICAg ICAgc3FsQWx0ZXJIZWxwOiAnc3FsLWFsdGVydHJpZ2dlci5odG1sJywKICAgICAgIHNxbENyZWF0 ZUhlbHA6ICdzcWwtY3JlYXRldHJpZ2dlci5odG1sJywKICAgICAgIGRpYWxvZ0hlbHA6IHVybF9m b3IoJ2hlbHAuc3RhdGljJywgeydmaWxlbmFtZSc6ICd0cmlnZ2VyX2RpYWxvZy5odG1sJ30pLAor ICAgICAgdXJsX2p1bXBfYWZ0ZXJfbm9kZTogJ3NjaGVtYScsCiAgICAgICBJbml0OiBmdW5jdGlv bigpIHsKICAgICAgICAgLyogQXZvaWQgbXVsaXRwbGUgcmVnaXN0cmF0aW9uIG9mIG1lbnVzICov CiAgICAgICAgIGlmICh0aGlzLmluaXRpYWxpemVkKQpAQCAtMzE1LDcgKzMxNiw3IEBAIGRlZmlu ZSgncGdhZG1pbi5ub2RlLnRyaWdnZXInLCBbCiAgICAgICAgICAgaWQ6ICd0ZnVuY3Rpb24nLCBs YWJlbDogZ2V0dGV4dCgnVHJpZ2dlciBmdW5jdGlvbicpLAogICAgICAgICAgIHR5cGU6ICd0ZXh0 JywgZGlzYWJsZWQ6ICdpblNjaGVtYVdpdGhNb2RlbENoZWNrJywKICAgICAgICAgICBtb2RlOiBb J2NyZWF0ZScsJ2VkaXQnLCAncHJvcGVydGllcyddLCBncm91cDogZ2V0dGV4dCgnRGVmaW5pdGlv bicpLAotICAgICAgICAgIGNvbnRyb2w6ICdub2RlLWFqYXgtb3B0aW9ucycsIHVybDogJ2dldF90 cmlnZ2VyZnVuY3Rpb25zJywKKyAgICAgICAgICBjb250cm9sOiAnbm9kZS1hamF4LW9wdGlvbnMn LCB1cmw6ICdnZXRfdHJpZ2dlcmZ1bmN0aW9ucycsIHVybF9qdW1wX2FmdGVyX25vZGU6ICdzY2hl bWEnLAogICAgICAgICAgIGNhY2hlX25vZGU6ICd0cmlnZ2VyX2Z1bmN0aW9uJywKICAgICAgICAg fSx7CiAgICAgICAgICAgaWQ6ICd0Z2FyZ3MnLCBsYWJlbDogZ2V0dGV4dCgnQXJndW1lbnRzJyks IGNlbGw6ICdzdHJpbmcnLApkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zdGF0aWMv anMvbm9kZS5qcyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc3RhdGljL2pzL25vZGUuanMKaW5kZXgg MTc5MjAzN2M2Li5iMjljOThhZDMgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc3Rh dGljL2pzL25vZGUuanMKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zdGF0aWMvanMvbm9kZS5q cwpAQCAtMjgxLDcgKzI4MSw3IEBAIGRlZmluZSgncGdhZG1pbi5icm93c2VyLm5vZGUnLCBbCiAg ICAgICBpZiAodGhpcy5tb2RlbCkgewogICAgICAgICAvLyBUaGlzIHdpbGwgYmUgdGhlIFVSTCwg dXNlZCBmb3Igb2JqZWN0IG1hbmlwdWxhdGlvbi4KICAgICAgICAgLy8gaS5lLiBDcmVhdGUsIFVw ZGF0ZSBpbiB0aGVzZSBjYXNlcwotICAgICAgICB2YXIgdXJsQmFzZSA9IHRoaXMuZ2VuZXJhdGVf dXJsKGl0ZW0sIHR5cGUsIG5vZGUsIGZhbHNlKTsKKyAgICAgICAgdmFyIHVybEJhc2UgPSB0aGlz LmdlbmVyYXRlX3VybChpdGVtLCB0eXBlLCBub2RlLCBmYWxzZSwgbnVsbCwgdGhhdC51cmxfanVt cF9hZnRlcl9ub2RlKTsKIAogICAgICAgICBpZiAoIXVybEJhc2UpCiAgICAgICAgICAgLy8gQXNo YW1lZCBvZiBteXNlbGYsIEkgZG9uJ3Qga25vdyBob3cgdG8gbWFuaXB1bGF0ZSB0aGlzCkBAIC0x Njk4LDExICsxNjk4LDE0IEBAIGRlZmluZSgncGdhZG1pbi5icm93c2VyLm5vZGUnLCBbCiAgICAg ICogICB0eXBlOiAgQ3JlYXRlL2Ryb3AvZWRpdC9wcm9wZXJ0aWVzL3NxbC9kZXBlbmRzL3N0YXRp c3RpY3MKICAgICAgKiAgIGQ6ICAgICBQcm92aWRlIHRoZSBJdGVtRGF0YSBmb3IgdGhlIGN1cnJl bnQgaXRlbSBub2RlCiAgICAgICogICB3aXRoX2lkOiBSZXF1aXJlZCBpZCBpbmZvcm1hdGlvbiBh dCB0aGUgZW5kPwotICAgICAqCisgICAgICogICBqdW1wX2FmdGVyX25vZGU6IFRoaXMgd2lsbCBz a2lwIGFsbCB0aGUgdmFsdWUgYmV0d2VlbiBqdW1wX2FmdGVyX25vZGUKKyAgICAgKiAgIHRvIHRo ZSBsYXN0IG5vZGUsIGV4Y2x1ZGluZyBqdW1wX2FmdGVyX25vZGUgYW5kIHRoZSBsYXN0IG5vZGUu IFRoaXMgaXMgcGFydGljdWxhcmx5CisgICAgICogICBoZWxwZnVsIGluIHBhcnRpdGlvbiB0YWJs ZSB3aGVyZSB3ZSBuZWVkIHRvIHNraXAgcGFyZW50IHRhYmxlIE9JRCBvZiBhIHBhcnRpdGlvbmVk CisgICAgICogICB0YWJsZSBpbiBVUkwgZm9ybWF0aW9uLiBQYXJ0aXRpb25lZCB0YWJsZSBpdHNl bGYgaXMgYSAidGFibGUiIGFuZCBjYW4gYmUgbXVsdGlsZXZlbAogICAgICAqIFN1cHBvcnRzIHVy bCBnZW5lcmF0aW9uIGZvciBjcmVhdGUsIGRyb3AsIGVkaXQsIHByb3BlcnRpZXMsIHNxbCwKICAg ICAgKiBkZXBlbmRzLCBzdGF0aXN0aWNzCiAgICAgICovCi0gICAgZ2VuZXJhdGVfdXJsOiBmdW5j dGlvbihpdGVtLCB0eXBlLCBkLCB3aXRoX2lkLCBpbmZvKSB7CisgICAgZ2VuZXJhdGVfdXJsOiBm dW5jdGlvbihpdGVtLCB0eXBlLCBkLCB3aXRoX2lkLCBpbmZvLCBqdW1wX2FmdGVyX25vZGUpIHsK ICAgICAgIHZhciBvcFVSTCA9IHsKICAgICAgICAgICAnY3JlYXRlJzogJ29iaicsCiAgICAgICAg ICAgJ2Ryb3AnOiAnb2JqJywKQEAgLTE3MzUsOSArMTczOCwxNiBAQCBkZWZpbmUoJ3BnYWRtaW4u YnJvd3Nlci5ub2RlJywgWwogICAgICAgICAgIH0pOwogICAgICAgICB9CiAgICAgICB9CisKKyAg ICAgIGxldCBqdW1wX2FmdGVyX3ByaW9yaXR5ID0gcHJpb3JpdHk7CisgICAgICBpZihqdW1wX2Fm dGVyX25vZGUgJiYgdHJlZUluZm9banVtcF9hZnRlcl9ub2RlXSkgeworICAgICAgICBqdW1wX2Fm dGVyX3ByaW9yaXR5ID0gdHJlZUluZm9banVtcF9hZnRlcl9ub2RlXS5wcmlvcml0eTsKKyAgICAg IH0KKwogICAgICAgdmFyIG5vZGVQaWNrRnVuY3Rpb24gPSBmdW5jdGlvbih0cmVlSW5mb1ZhbHVl KSB7Ci0gICAgICAgIHJldHVybiAodHJlZUluZm9WYWx1ZS5wcmlvcml0eSA8PSBwcmlvcml0eSk7 CisgICAgICAgIHJldHVybiAodHJlZUluZm9WYWx1ZS5wcmlvcml0eSA8PSBqdW1wX2FmdGVyX3By aW9yaXR5IHx8IHRyZWVJbmZvVmFsdWUucHJpb3JpdHkgPT0gcHJpb3JpdHkpOwogICAgICAgfTsK KwogICAgICAgcmV0dXJuIGdlbmVyYXRlVXJsLmdlbmVyYXRlX3VybChwZ0Jyb3dzZXIuVVJMLCB0 cmVlSW5mbywgYWN0aW9uVHlwZSwgc2VsZi50eXBlLCBub2RlUGlja0Z1bmN0aW9uLCBpdGVtSUQp OwogICAgIH0sCiAgICAgLy8gQmFzZSBjbGFzcyBmb3IgTm9kZSBEYXRhIENvbGxlY3Rpb24KZGlm ZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc3RhdGljL2pzL25vZGUudWkuanMgYi93ZWIv cGdhZG1pbi9icm93c2VyL3N0YXRpYy9qcy9ub2RlLnVpLmpzCmluZGV4IGNkMTE5NDZmZC4uMjNj MGQ5MTk1IDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3N0YXRpYy9qcy9ub2RlLnVp LmpzCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc3RhdGljL2pzL25vZGUudWkuanMKQEAgLTEy OCw3ICsxMjgsOCBAQCBkZWZpbmUoWwogICAgICAgICAgKi8KICAgICAgICAgdmFyIHNlbGYgPSB0 aGlzLAogICAgICAgICAgIHVybCA9IHNlbGYuZmllbGQuZ2V0KCd1cmwnKSB8fCBzZWxmLmRlZmF1 bHRzLnVybCwKLSAgICAgICAgICBtID0gc2VsZi5tb2RlbC50b3AgfHwgc2VsZi5tb2RlbDsKKyAg ICAgICAgICBtID0gc2VsZi5tb2RlbC50b3AgfHwgc2VsZi5tb2RlbCwKKyAgICAgICAgICB1cmxf anVtcF9hZnRlcl9ub2RlID0gc2VsZi5maWVsZC5nZXQoJ3VybF9qdW1wX2FmdGVyX25vZGUnKSB8 fCBudWxsOwogCiAgICAgICAgIC8vIEhtbSAtIHdlIGZvdW5kIHRoZSB1cmwgb3B0aW9uLgogICAg ICAgICAvLyBUaGF0IG1lYW5zIC0gd2UgbmVlZHMgdG8gZmV0Y2ggdGhlIG9wdGlvbnMgZnJvbSB0 aGF0IG5vZGUuCkBAIC0xMzgsNyArMTM5LDcgQEAgZGVmaW5lKFsKICAgICAgICAgICAgIHdpdGhf aWQgPSB0aGlzLmZpZWxkLmdldCgndXJsX3dpdGhfaWQnKSB8fCBmYWxzZSwKICAgICAgICAgICAg IGZ1bGxfdXJsID0gbm9kZS5nZW5lcmF0ZV91cmwuYXBwbHkoCiAgICAgICAgICAgICAgIG5vZGUs IFsKLSAgICAgICAgICAgICAgICBudWxsLCB1cmwsIHRoaXMuZmllbGQuZ2V0KCdub2RlX2RhdGEn KSwgd2l0aF9pZCwgbm9kZV9pbmZvLAorICAgICAgICAgICAgICAgIG51bGwsIHVybCwgdGhpcy5m aWVsZC5nZXQoJ25vZGVfZGF0YScpLCB3aXRoX2lkLCBub2RlX2luZm8sIHVybF9qdW1wX2FmdGVy X25vZGUsCiAgICAgICAgICAgICAgIF0pLAogICAgICAgICAgICAgY2FjaGVfbGV2ZWwsCiAgICAg ICAgICAgICBjYWNoZV9ub2RlID0gdGhpcy5maWVsZC5nZXQoJ2NhY2hlX25vZGUnKTsKQEAgLTM5 OSw5ICs0MDAsMTAgQEAgZGVmaW5lKFsKICAgICAgICAgICBub2RlID0gY29sdW1uLmdldCgnc2No ZW1hX25vZGUnKSwKICAgICAgICAgICBub2RlX2luZm8gPSBjb2x1bW4uZ2V0KCdub2RlX2luZm8n KSwKICAgICAgICAgICB3aXRoX2lkID0gY29sdW1uLmdldCgndXJsX3dpdGhfaWQnKSB8fCBmYWxz ZSwKKyAgICAgICAgICB1cmxfanVtcF9hZnRlcl9ub2RlID0gdGhpcy5jb2x1bW4uZ2V0KCd1cmxf anVtcF9hZnRlcl9ub2RlJykgfHwgbnVsbCwKICAgICAgICAgICBmdWxsX3VybCA9IG5vZGUuZ2Vu ZXJhdGVfdXJsLmFwcGx5KAogICAgICAgICAgICAgbm9kZSwgWwotICAgICAgICAgICAgICBudWxs LCB1cmwsIGNvbHVtbi5nZXQoJ25vZGVfZGF0YScpLCB3aXRoX2lkLCBub2RlX2luZm8sCisgICAg ICAgICAgICAgIG51bGwsIHVybCwgY29sdW1uLmdldCgnbm9kZV9kYXRhJyksIHdpdGhfaWQsIG5v ZGVfaW5mbywgdXJsX2p1bXBfYWZ0ZXJfbm9kZSwKICAgICAgICAgICAgIF0pLAogICAgICAgICAg IGNhY2hlX2xldmVsLAogICAgICAgICAgIGNhY2hlX25vZGUgPSBjb2x1bW4uZ2V0KCdjYWNoZV9u b2RlJyk7CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9zdGF0aWMvanMvYmFja2Zvcm0ucGdhZG1p bi5qcyBiL3dlYi9wZ2FkbWluL3N0YXRpYy9qcy9iYWNrZm9ybS5wZ2FkbWluLmpzCmluZGV4IGVi MDgyMTI4NC4uZWRhMmIxYTE3IDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9zdGF0aWMvanMvYmFj a2Zvcm0ucGdhZG1pbi5qcworKysgYi93ZWIvcGdhZG1pbi9zdGF0aWMvanMvYmFja2Zvcm0ucGdh ZG1pbi5qcwpAQCAtMTgxMSw3ICsxODExLDcgQEAgZGVmaW5lKFsKICAgICAgICAgICAgICAgbXNx bF91cmwgPSBub2RlLmdlbmVyYXRlX3VybC5hcHBseSgKICAgICAgICAgICAgICAgICBub2RlLCBb CiAgICAgICAgICAgICAgICAgICBudWxsLCAnbXNxbCcsIHRoaXMuZmllbGQuZ2V0KCdub2RlX2Rh dGEnKSwgIXNlbGYubW9kZWwuaXNOZXcoKSwKLSAgICAgICAgICAgICAgICAgIHRoaXMuZmllbGQu Z2V0KCdub2RlX2luZm8nKSwKKyAgICAgICAgICAgICAgICAgIHRoaXMuZmllbGQuZ2V0KCdub2Rl X2luZm8nKSwgbm9kZS51cmxfanVtcF9hZnRlcl9ub2RlLAogICAgICAgICAgICAgICAgIF0pOwog CiAgICAgICAgICAgICAvLyBGZXRjaGluZyB0aGUgbW9kaWZpZWQgU1FMCg== --000000000000fdce34059a859347--