<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>53795</bug_id>
          
          <creation_ts>2011-02-04 11:57:11 -0800</creation_ts>
          <short_desc>First step towards event propogation within IndexedDB</short_desc>
          <delta_ts>2011-02-04 17:29:07 -0800</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>New Bugs</component>
          <version>528+ (Nightly build)</version>
          <rep_platform>Other</rep_platform>
          <op_sys>OS X 10.5</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>53813</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Jeremy Orlow">jorlow</reporter>
          <assigned_to name="Jeremy Orlow">jorlow</assigned_to>
          <cc>abarth</cc>
    
    <cc>andreip</cc>
    
    <cc>dgrogan</cc>
    
    <cc>eric</cc>
    
    <cc>hans</cc>
    
    <cc>japhet</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>345665</commentid>
    <comment_count>0</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-02-04 11:57:11 -0800</bug_when>
    <thetext>First step towards event propogation within IndexedDB</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345668</commentid>
    <comment_count>1</comment_count>
      <attachid>81260</attachid>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-02-04 12:00:08 -0800</bug_when>
    <thetext>Created attachment 81260
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345670</commentid>
    <comment_count>2</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-02-04 12:01:02 -0800</bug_when>
    <thetext>Please review.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345804</commentid>
    <comment_count>3</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-02-04 14:38:28 -0800</bug_when>
    <thetext>Committed r77679: &lt;http://trac.webkit.org/changeset/77679&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345853</commentid>
    <comment_count>4</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-02-04 15:33:44 -0800</bug_when>
    <thetext>Committed r77685: &lt;http://trac.webkit.org/changeset/77685&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345858</commentid>
    <comment_count>5</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-02-04 15:34:46 -0800</bug_when>
    <thetext>I reverted this as it caused some redness on linux and windows.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345870</commentid>
    <comment_count>6</comment_count>
    <who name="Jeremy Orlow">jorlow</who>
    <bug_when>2011-02-04 15:43:32 -0800</bug_when>
    <thetext>Committed r77688: &lt;http://trac.webkit.org/changeset/77688&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>345949</commentid>
    <comment_count>7</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2011-02-04 17:29:07 -0800</bug_when>
    <thetext>http://trac.webkit.org/changeset/77688 might have broken Qt Linux Release
The following tests are not passing:
media/video-frame-accurate-seek.html</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>81260</attachid>
            <date>2011-02-04 12:00:08 -0800</date>
            <delta_ts>2011-02-04 15:34:57 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-53795-20110204120007.patch</filename>
            <type>text/plain</type>
            <size>36636</size>
            <attacher name="Jeremy Orlow">jorlow</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxv
ZwppbmRleCA5OTg0YjQxOWRkNWRkNDBhYTBmNzQyZmJiNGVlOWNmZTkxNzViZTJmLi40MzVkMmQx
NDA5YjFiZmJkZmZmZjg5MjVjMDI1YTEyYjNhMjRlNDA4IDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0
cy9DaGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMzYgQEAK
KzIwMTEtMDItMDQgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJvbWl1bS5vcmc+CisKKyAgICAg
ICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgRmlyc3Qgc3RlcCB0b3dh
cmRzIGV2ZW50IHByb3BvZ2F0aW9uIHdpdGhpbiBJbmRleGVkREIKKyAgICAgICAgaHR0cHM6Ly9i
dWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzNzk1CisKKyAgICAgICAgVGhpcyBpcyB0
aGUgZmlyc3Qgc3RlcCB0b3dhcmRzIGltcGxlbWVudGluZworICAgICAgICBodHRwOi8vd3d3Lncz
Lm9yZy9CdWdzL1B1YmxpYy9zaG93X2J1Zy5jZ2k/aWQ9MTEzNDgKKyAgICAgICAgd2l0aGluIElu
ZGV4ZWREQi4gSSd2ZSBjcmVhdGVkIGEgbWV0aG9kIHRoYXQga25vd3MgaG93CisgICAgICAgIHRv
IGNhcHR1cmUgYW5kIGJ1YmJsZSAoYmFzZWQgb24gTm9kZSdzIGRpc3BhdGNoR2VuZXJpY0V2ZW50
KS4KKyAgICAgICAgSSd2ZSB0aGVuIGNoYW5nZWQgSURCUmVxdWVzdCB0byB1c2UgaXQuCisKKyAg
ICAgICAgVGhlIG9ubHkgZnVuY3Rpb25hbCBjaGFuZ2UgaXMgdGhhdCBwcmV2ZW50RGVmYXVsdCBu
b3cgbXVzdAorICAgICAgICBiZSBjYWxsZWQgaW4gZXJyb3IgZXZlbnRzIHRvIHByZXZlbnQgdGhl
IHRyYW5zYWN0aW9uIGZyb20KKyAgICAgICAgYmVpbmcgYWJvcnRlZC4gVGhlIHRlc3RzIHJlZmxl
Y3QgdGhpcyBjaGFuZ2UgYW5kIHRoZXJlJ3Mgb25lCisgICAgICAgIHNwZWNpZmljIHRlc3QgdG8g
bG9vayBhdCB0aGlzIGJlaGF2aW9yLgorCisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvY3Vy
c29yLWluZGV4LWRlbGV0ZS1leHBlY3RlZC50eHQ6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVk
ZGIvY3Vyc29yLWluZGV4LWRlbGV0ZS5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRi
L2RhdGFiYXNlLXF1b3RhLWV4cGVjdGVkLnR4dDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRk
Yi9kYXRhYmFzZS1xdW90YS5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2R1cGxp
Y2F0ZXMtZXhwZWN0ZWQudHh0OgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2R1cGxpY2F0
ZXMuaHRtbDoKKyAgICAgICAgKiBzdG9yYWdlL2luZGV4ZWRkYi9lcnJvci1jYXVzZXMtYWJvcnQt
YnktZGVmYXVsdC1leHBlY3RlZC50eHQ6IENvcGllZCBmcm9tIExheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL2N1cnNvci1pbmRleC1kZWxldGUtZXhwZWN0ZWQudHh0LgorICAgICAgICAqIHN0
b3JhZ2UvaW5kZXhlZGRiL2Vycm9yLWNhdXNlcy1hYm9ydC1ieS1kZWZhdWx0Lmh0bWw6IEFkZGVk
LgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWJhc2ljcy1leHBlY3RlZC50eHQ6
CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvaW5kZXgtYmFzaWNzLmh0bWw6CisgICAgICAg
ICogc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYXV0b2luY3JlbWVudC1leHBlY3RlZC50
eHQ6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYXV0b2luY3JlbWVu
dC5odG1sOgorICAgICAgICAqIHN0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWJhc2ljcy1l
eHBlY3RlZC50eHQ6CisgICAgICAgICogc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYmFz
aWNzLmh0bWw6CisKIDIwMTEtMDItMDQgIERpbWl0cmkgR2xhemtvdiAgPGRnbGF6a292QGNocm9t
aXVtLm9yZz4KIAogICAgICAgICBbQ2hyb21pdW1dIEFkZCBiYXNlbGluZXMgZm9yIHRlc3RzLCBh
ZGRlZCBpbiByNzc2NDQuCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9jdXJzb3ItaW5kZXgtZGVsZXRlLWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL2N1cnNvci1pbmRleC1kZWxldGUtZXhwZWN0ZWQudHh0CmluZGV4IDg4MDVjMGVh
YTBiNzMyY2I5ZTg4NjEwZWVjMmM3MzQxOWNlY2RkYmEuLmE0NzdhMjU4OWU2NDE1NzRhODMxYjc4
MTY1OWYzMWIwYzkzNzJkNjMgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhl
ZGRiL2N1cnNvci1pbmRleC1kZWxldGUtZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL3N0
b3JhZ2UvaW5kZXhlZGRiL2N1cnNvci1pbmRleC1kZWxldGUtZXhwZWN0ZWQudHh0CkBAIC0xMjgs
NiArMTI4LDcgQEAgUEFTUyAnb25lcnJvcicgaW4gZXZlbnQudGFyZ2V0IGlzIHRydWUKIFBBU1Mg
J3JlYWR5U3RhdGUnIGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCiBQQVNTIGV2ZW50LnRhcmdldC5y
ZWFkeVN0YXRlIGlzIGV2ZW50LnRhcmdldC5ET05FCiAKK2V2ZW50LnByZXZlbnREZWZhdWx0KCkK
IFBBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKIAogVEVTVCBDT01QTEVURQpkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY3Vyc29yLWluZGV4LWRlbGV0ZS5o
dG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvY3Vyc29yLWluZGV4LWRlbGV0ZS5o
dG1sCmluZGV4IGMzZGU0MzRkYzFhZWQ2OTA5YzgwYmIyMDQ4YzFiYWZjMTg4MTMyYmIuLjg1MmE3
ZWIxZDk1ZDE1ODc4OWFhYWMxNjBiNDRkNTUxNjNmZmFiODIgMTAwNjQ0Ci0tLSBhL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2N1cnNvci1pbmRleC1kZWxldGUuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9jdXJzb3ItaW5kZXgtZGVsZXRlLmh0bWwKQEAgLTEy
Niw2ICsxMjYsNyBAQCBmdW5jdGlvbiBkZWxldGVPYmplY3QoKQogZnVuY3Rpb24gdmVyaWZ5T2Jq
ZWN0RGVsZXRlZCgpCiB7CiAgICAgdmVyaWZ5RXJyb3JFdmVudChldmVudCk7CisgICAgZXZhbEFu
ZExvZygiZXZlbnQucHJldmVudERlZmF1bHQoKSIpOwogICAgIGRvbmUoKTsKIH0KIApkaWZmIC0t
Z2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtcXVvdGEtZXhwZWN0
ZWQudHh0IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtcXVvdGEtZXhw
ZWN0ZWQudHh0CmluZGV4IGUwMmFkNjRmOTVkY2QzZmQ5NWI2NTI1YjVhMTUwYmVlY2VhY2RkZmQu
Ljg3NmQ0MTI5YWJhMTNlNTYxMTVjYmVmODRlZDdkYzAyOGFhN2ExZmMgMTAwNjQ0Ci0tLSBhL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXF1b3RhLWV4cGVjdGVkLnR4dAor
KysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1xdW90YS1leHBlY3Rl
ZC50eHQKQEAgLTgwLDYgKzgwLDcgQEAgUEFTUyAnb25lcnJvcicgaW4gZXZlbnQudGFyZ2V0IGlz
IHRydWUKIFBBU1MgJ3JlYWR5U3RhdGUnIGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCiBQQVNTIGV2
ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlzIGV2ZW50LnRhcmdldC5ET05FCiAKK2V2ZW50LnByZXZl
bnREZWZhdWx0KCkKIFBBU1MgQWRkaW5nIGRhdGEgZmFpbGVkIGR1ZSB0byBxdW90YSBlcnJvci4g
RGF0YSBhZGRlZCB3YXMgYWJvdXQgNSBNQgogUEFTUyBzdWNjZXNzZnVsbHlQYXJzZWQgaXMgdHJ1
ZQogCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1x
dW90YS5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZGF0YWJhc2UtcXVvdGEu
aHRtbAppbmRleCA2OGRmYmRlZDdjNDRjOThmYzI3NWU0NWQ0NWQ0ZmJlZDA5M2YxODVjLi5iNDQ3
NTA1YzNhZmYwNDk5NzNkN2RjNjAyMTkxN2ZiMTdiMjk3N2IzIDEwMDY0NAotLS0gYS9MYXlvdXRU
ZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kYXRhYmFzZS1xdW90YS5odG1sCisrKyBiL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2RhdGFiYXNlLXF1b3RhLmh0bWwKQEAgLTEwNyw2ICsxMDcs
NyBAQCBmdW5jdGlvbiBsb2dFcnJvcigpCiB7CiAgICAgZGVidWcoIkVycm9yIGZ1bmN0aW9uIGNh
bGxlZDogKCIgKyBldmVudC5jb2RlICsgIikgIiArIGV2ZW50Lm1lc3NhZ2UpOwogICAgIHZlcmlm
eUVycm9yRXZlbnQoZXZlbnQpOworICAgIGV2YWxBbmRMb2coImV2ZW50LnByZXZlbnREZWZhdWx0
KCkiKTsKIH0KIAogZnVuY3Rpb24gdGVzdENvbXBsZXRlKCkKZGlmZiAtLWdpdCBhL0xheW91dFRl
c3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2R1cGxpY2F0ZXMtZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvZHVwbGljYXRlcy1leHBlY3RlZC50eHQKaW5kZXggOGRlNDg4
YzdmODQ5NTVkYmY0OWI5MjZmNzdmMTgzZDBiZWFjYTZmNy4uNTUxYjBiYjlkOGM5MzliMGRhNDU3
OTc4OGE1YWU0NmRhODQ1NzQ5NyAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvZHVwbGljYXRlcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvZHVwbGljYXRlcy1leHBlY3RlZC50eHQKQEAgLTEzMyw2ICsxMzMsNyBAQCBQQVNT
ICdyZWFkeVN0YXRlJyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50YXJnZXQu
cmVhZHlTdGF0ZSBpcyBldmVudC50YXJnZXQuRE9ORQogCiBQQVNTIGV2ZW50LmNvZGUgaXMgd2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUgorZXZlbnQucHJldmVudERlZmF1
bHQoKQogaW5kZXhPYmplY3QuZ2V0KCdkb2VzIG5vdCBleGlzdCcpCiBQQVNTICdvbnN1Y2Nlc3Mn
IGluIHJlc3VsdCBpcyB0cnVlCiBQQVNTICdvbmVycm9yJyBpbiByZXN1bHQgaXMgdHJ1ZQpAQCAt
MTUxLDYgKzE1Miw3IEBAIFBBU1MgJ3JlYWR5U3RhdGUnIGluIGV2ZW50LnRhcmdldCBpcyB0cnVl
CiBQQVNTIGV2ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlzIGV2ZW50LnRhcmdldC5ET05FCiAKIFBB
U1MgZXZlbnQuY29kZSBpcyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJS
CitldmVudC5wcmV2ZW50RGVmYXVsdCgpCiBpbmRleE9iamVjdC5vcGVuS2V5Q3Vyc29yKCkKIFBB
U1MgJ29uc3VjY2VzcycgaW4gcmVzdWx0IGlzIHRydWUKIFBBU1MgJ29uZXJyb3InIGluIHJlc3Vs
dCBpcyB0cnVlCkBAIC0zOTksNiArNDAxLDcgQEAgUEFTUyAncmVhZHlTdGF0ZScgaW4gZXZlbnQu
dGFyZ2V0IGlzIHRydWUKIFBBU1MgZXZlbnQudGFyZ2V0LnJlYWR5U3RhdGUgaXMgZXZlbnQudGFy
Z2V0LkRPTkUKIAogUEFTUyBldmVudC5jb2RlIGlzIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9u
Lk5PVF9GT1VORF9FUlIKK2V2ZW50LnByZXZlbnREZWZhdWx0KCkKIGluZGV4T2JqZWN0LmdldCgn
ZG9lcyBub3QgZXhpc3QnKQogUEFTUyAnb25zdWNjZXNzJyBpbiByZXN1bHQgaXMgdHJ1ZQogUEFT
UyAnb25lcnJvcicgaW4gcmVzdWx0IGlzIHRydWUKQEAgLTQxNyw2ICs0MjAsNyBAQCBQQVNTICdy
ZWFkeVN0YXRlJyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50YXJnZXQucmVh
ZHlTdGF0ZSBpcyBldmVudC50YXJnZXQuRE9ORQogCiBQQVNTIGV2ZW50LmNvZGUgaXMgd2Via2l0
SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUgorZXZlbnQucHJldmVudERlZmF1bHQo
KQogaW5kZXhPYmplY3Qub3BlbktleUN1cnNvcigpCiBQQVNTICdvbnN1Y2Nlc3MnIGluIHJlc3Vs
dCBpcyB0cnVlCiBQQVNTICdvbmVycm9yJyBpbiByZXN1bHQgaXMgdHJ1ZQpkaWZmIC0tZ2l0IGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZHVwbGljYXRlcy5odG1sIGIvTGF5b3V0VGVz
dHMvc3RvcmFnZS9pbmRleGVkZGIvZHVwbGljYXRlcy5odG1sCmluZGV4IDM1MjM2N2ZlMjE4YjE4
YmVmZjQ1MWIzNmE0ZDNjMTMyYjhiMWFkMjEuLmNkZmRjYWExNzU4YTdiZWEyOTNmOTlkOGUyMzA2
YjgzNTM0MzBhNmEgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2R1
cGxpY2F0ZXMuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9kdXBsaWNh
dGVzLmh0bWwKQEAgLTExMSw2ICsxMTEsOCBAQCBmdW5jdGlvbiBnZXRPYmplY3REYXRhRmFpbCgp
CiAgICAgdmVyaWZ5RXJyb3JFdmVudChldmVudCk7CiAgICAgc2hvdWxkQmUoImV2ZW50LmNvZGUi
LCAid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUiIpOwogCisgICAgZXZh
bEFuZExvZygiZXZlbnQucHJldmVudERlZmF1bHQoKSIpOworCiAgICAgcmVzdWx0ID0gZXZhbEFu
ZExvZygiaW5kZXhPYmplY3QuZ2V0KCdkb2VzIG5vdCBleGlzdCcpIik7CiAgICAgdmVyaWZ5UmVz
dWx0KHJlc3VsdCk7CiAgICAgcmVzdWx0Lm9uc3VjY2VzcyA9IHVuZXhwZWN0ZWRTdWNjZXNzQ2Fs
bGJhY2s7CkBAIC0xMjIsNiArMTI0LDggQEAgZnVuY3Rpb24gb3BlbktleUN1cnNvcigpCiAgICAg
dmVyaWZ5RXJyb3JFdmVudChldmVudCk7CiAgICAgc2hvdWxkQmUoImV2ZW50LmNvZGUiLCAid2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUiIpOwogCisgICAgZXZhbEFuZExv
ZygiZXZlbnQucHJldmVudERlZmF1bHQoKSIpOworCiAgICAgd2luZG93LnJlc3VsdCA9IGV2YWxB
bmRMb2coImluZGV4T2JqZWN0Lm9wZW5LZXlDdXJzb3IoKSIpOwogICAgIHZlcmlmeVJlc3VsdChy
ZXN1bHQpOwogICAgIHJlc3VsdC5vbnN1Y2Nlc3MgPSBjdXJzb3IxQ29udGludWU7CmRpZmYgLS1n
aXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9lcnJvci1jYXVzZXMtYWJvcnQtYnkt
ZGVmYXVsdC1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9lcnJv
ci1jYXVzZXMtYWJvcnQtYnktZGVmYXVsdC1leHBlY3RlZC50eHQKbmV3IGZpbGUgbW9kZSAxMDA2
NDQKaW5kZXggMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMC4uZGQ4ZmQ2
MWJlOGZiZDBlYmIyNzE4OWI1NjMzZmQwMjA3Mjg2M2RhYQotLS0gL2Rldi9udWxsCisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2Vycm9yLWNhdXNlcy1hYm9ydC1ieS1kZWZhdWx0
LWV4cGVjdGVkLnR4dApAQCAtMCwwICsxLDEwNyBAQAorVmVyaWZ5IHRoYXQgYSB0cmFuc2FjdGlv
biB3aXRoIGFuIGVycm9yIGFib3J0cyB1bmxlc3MgcHJldmVudERlZmF1bHQoKSBpcyBjYWxsZWQu
CisKK09uIHN1Y2Nlc3MsIHlvdSB3aWxsIHNlZSBhIHNlcmllcyBvZiAiUEFTUyIgbWVzc2FnZXMs
IGZvbGxvd2VkIGJ5ICJURVNUIENPTVBMRVRFIi4KKworCit3ZWJraXRJbmRleGVkREIub3Blbign
bmFtZScpCitQQVNTICdvbnN1Y2Nlc3MnIGluIHJlc3VsdCBpcyB0cnVlCitQQVNTICdvbmVycm9y
JyBpbiByZXN1bHQgaXMgdHJ1ZQorUEFTUyAncmVhZHlTdGF0ZScgaW4gcmVzdWx0IGlzIHRydWUK
K0FuIGV2ZW50IHNob3VsZCBmaXJlIHNob3J0bHkuLi4KKworU3VjY2VzcyBldmVudCBmaXJlZDoK
K1BBU1MgJ3Jlc3VsdCcgaW4gZXZlbnQgaXMgdHJ1ZQorUEFTUyAnY29kZScgaW4gZXZlbnQgaXMg
ZmFsc2UKK1BBU1MgJ21lc3NhZ2UnIGluIGV2ZW50IGlzIGZhbHNlCitQQVNTICdzb3VyY2UnIGlu
IGV2ZW50IGlzIHRydWUKK1BBU1MgZXZlbnQuc291cmNlICE9IG51bGwgaXMgdHJ1ZQorUEFTUyAn
b25zdWNjZXNzJyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQorUEFTUyAnb25lcnJvcicgaW4gZXZl
bnQudGFyZ2V0IGlzIHRydWUKK1BBU1MgJ3JlYWR5U3RhdGUnIGluIGV2ZW50LnRhcmdldCBpcyB0
cnVlCitQQVNTIGV2ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlzIGV2ZW50LnRhcmdldC5ET05FCisK
K2RiID0gZXZlbnQucmVzdWx0CitkYi5zZXRWZXJzaW9uKCduZXcgdmVyc2lvbicpCitQQVNTICdv
bnN1Y2Nlc3MnIGluIHJlc3VsdCBpcyB0cnVlCitQQVNTICdvbmVycm9yJyBpbiByZXN1bHQgaXMg
dHJ1ZQorUEFTUyAncmVhZHlTdGF0ZScgaW4gcmVzdWx0IGlzIHRydWUKK0FuIGV2ZW50IHNob3Vs
ZCBmaXJlIHNob3J0bHkuLi4KKworc2V0VmVyc2lvblN1Y2Nlc3MoKToKK1N1Y2Nlc3MgZXZlbnQg
ZmlyZWQ6CitQQVNTICdyZXN1bHQnIGluIGV2ZW50IGlzIHRydWUKK1BBU1MgJ2NvZGUnIGluIGV2
ZW50IGlzIGZhbHNlCitQQVNTICdtZXNzYWdlJyBpbiBldmVudCBpcyBmYWxzZQorUEFTUyAnc291
cmNlJyBpbiBldmVudCBpcyB0cnVlCitQQVNTIGV2ZW50LnNvdXJjZSAhPSBudWxsIGlzIHRydWUK
K1BBU1MgJ29uc3VjY2VzcycgaW4gZXZlbnQudGFyZ2V0IGlzIHRydWUKK1BBU1MgJ29uZXJyb3In
IGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCitQQVNTICdyZWFkeVN0YXRlJyBpbiBldmVudC50YXJn
ZXQgaXMgdHJ1ZQorUEFTUyBldmVudC50YXJnZXQucmVhZHlTdGF0ZSBpcyBldmVudC50YXJnZXQu
RE9ORQorCit0cmFucyA9IGV2ZW50LnJlc3VsdAorUEFTUyB0cmFucyAhPT0gbnVsbCBpcyB0cnVl
Cit0cmFucy5vbmNvbXBsZXRlID0gYWRkRGF0YQorRGVsZXRlZCBhbGwgb2JqZWN0IHN0b3Jlcy4K
K2RiLmNyZWF0ZU9iamVjdFN0b3JlKCdzdG9yZU5hbWUnLCBudWxsKQordHJhbnMgPSBkYi50cmFu
c2FjdGlvbihbXSwgd2Via2l0SURCVHJhbnNhY3Rpb24uUkVBRF9XUklURSkKK3RyYW5zLm9uYWJv
cnQgPSB1bmV4cGVjdGVkQWJvcnRDYWxsYmFjawordHJhbnMub25jb21wbGV0ZSA9IHRyYW5zYWN0
aW9uQ29tcGxldGVkCitzdG9yZSA9IHRyYW5zLm9iamVjdFN0b3JlKCdzdG9yZU5hbWUnKQorc3Rv
cmUuYWRkKHt4OiAndmFsdWUnLCB5OiAnenp6J30sICdrZXknKQorUEFTUyAnb25zdWNjZXNzJyBp
biByZXN1bHQgaXMgdHJ1ZQorUEFTUyAnb25lcnJvcicgaW4gcmVzdWx0IGlzIHRydWUKK1BBU1Mg
J3JlYWR5U3RhdGUnIGluIHJlc3VsdCBpcyB0cnVlCitBbiBldmVudCBzaG91bGQgZmlyZSBzaG9y
dGx5Li4uCisKK1N1Y2Nlc3MgZXZlbnQgZmlyZWQ6CitQQVNTICdyZXN1bHQnIGluIGV2ZW50IGlz
IHRydWUKK1BBU1MgJ2NvZGUnIGluIGV2ZW50IGlzIGZhbHNlCitQQVNTICdtZXNzYWdlJyBpbiBl
dmVudCBpcyBmYWxzZQorUEFTUyAnc291cmNlJyBpbiBldmVudCBpcyB0cnVlCitQQVNTIGV2ZW50
LnNvdXJjZSAhPSBudWxsIGlzIHRydWUKK1BBU1MgJ29uc3VjY2VzcycgaW4gZXZlbnQudGFyZ2V0
IGlzIHRydWUKK1BBU1MgJ29uZXJyb3InIGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCitQQVNTICdy
ZWFkeVN0YXRlJyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQorUEFTUyBldmVudC50YXJnZXQucmVh
ZHlTdGF0ZSBpcyBldmVudC50YXJnZXQuRE9ORQorCitldmVudC5zb3VyY2UuYWRkKHt4OiAndmFs
dWUnLCB5OiAnenp6J30sICdrZXknKQorUEFTUyAnb25zdWNjZXNzJyBpbiByZXN1bHQgaXMgdHJ1
ZQorUEFTUyAnb25lcnJvcicgaW4gcmVzdWx0IGlzIHRydWUKK1BBU1MgJ3JlYWR5U3RhdGUnIGlu
IHJlc3VsdCBpcyB0cnVlCitBbiBldmVudCBzaG91bGQgZmlyZSBzaG9ydGx5Li4uCisKK2V2ZW50
LnByZXZlbnREZWZhdWx0KCkKK1BBU1MgVHJhbnNhY3Rpb24gY29tcGxldGVkCisKKwordHJhbnMg
PSBkYi50cmFuc2FjdGlvbihbXSwgd2Via2l0SURCVHJhbnNhY3Rpb24uUkVBRF9XUklURSkKK3Ry
YW5zLm9uYWJvcnQgPSB0cmFuc2FjdGlvbkFib3J0ZWQxCit0cmFucy5vbmNvbXBsZXRlID0gdW5l
eHBlY3RlZENvbXBsZXRlQ2FsbGJhY2sKK3N0b3JlID0gdHJhbnMub2JqZWN0U3RvcmUoJ3N0b3Jl
TmFtZScpCitzdG9yZS5hZGQoe3g6ICd2YWx1ZScsIHk6ICd6enonfSwgJ2tleScpCitQQVNTICdv
bnN1Y2Nlc3MnIGluIHJlc3VsdCBpcyB0cnVlCitQQVNTICdvbmVycm9yJyBpbiByZXN1bHQgaXMg
dHJ1ZQorUEFTUyAncmVhZHlTdGF0ZScgaW4gcmVzdWx0IGlzIHRydWUKK0FuIGV2ZW50IHNob3Vs
ZCBmaXJlIHNob3J0bHkuLi4KKworRG9pbmcgbm90aGluZyB0byBwcmV2ZW50IHRoZSBkZWZhdWx0
IGFjdGlvbi4uLgorUEFTUyBUcmFuc2FjdGlvbiBhYm9ydGVkCisKKwordHJhbnMgPSBkYi50cmFu
c2FjdGlvbihbXSwgd2Via2l0SURCVHJhbnNhY3Rpb24uUkVBRF9XUklURSkKK3RyYW5zLm9uYWJv
cnQgPSB0cmFuc2FjdGlvbkFib3J0ZWQyCit0cmFucy5vbmNvbXBsZXRlID0gdW5leHBlY3RlZENv
bXBsZXRlQ2FsbGJhY2sKK3N0b3JlID0gdHJhbnMub2JqZWN0U3RvcmUoJ3N0b3JlTmFtZScpCitz
dG9yZS5hZGQoe3g6ICd2YWx1ZScsIHk6ICd6enonfSwgJ2tleScpCitQQVNTICdvbnN1Y2Nlc3Mn
IGluIHJlc3VsdCBpcyB0cnVlCitQQVNTICdvbmVycm9yJyBpbiByZXN1bHQgaXMgdHJ1ZQorUEFT
UyAncmVhZHlTdGF0ZScgaW4gcmVzdWx0IGlzIHRydWUKK0FuIGV2ZW50IHNob3VsZCBmaXJlIHNo
b3J0bHkuLi4KKworT21pdHRpbmcgYW4gb25lcnJvciBoYW5kbGVyCitQQVNTIFRyYW5zYWN0aW9u
IGFib3J0ZWQKK1BBU1Mgc3VjY2Vzc2Z1bGx5UGFyc2VkIGlzIHRydWUKKworVEVTVCBDT01QTEVU
RQorCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9lcnJvci1jYXVz
ZXMtYWJvcnQtYnktZGVmYXVsdC5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIv
ZXJyb3ItY2F1c2VzLWFib3J0LWJ5LWRlZmF1bHQuaHRtbApuZXcgZmlsZSBtb2RlIDEwMDY0NApp
bmRleCAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwLi5hYjRjNThhYjQ0
MDMwZWYyODE5MDQzMDY4MWNjYmU5NTQ0ODc1Mjk4Ci0tLSAvZGV2L251bGwKKysrIGIvTGF5b3V0
VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvZXJyb3ItY2F1c2VzLWFib3J0LWJ5LWRlZmF1bHQuaHRt
bApAQCAtMCwwICsxLDEyNyBAQAorPGh0bWw+Cis8aGVhZD4KKzxsaW5rIHJlbD0ic3R5bGVzaGVl
dCIgaHJlZj0iLi4vLi4vZmFzdC9qcy9yZXNvdXJjZXMvanMtdGVzdC1zdHlsZS5jc3MiPgorPHNj
cmlwdCBzcmM9Ii4uLy4uL2Zhc3QvanMvcmVzb3VyY2VzL2pzLXRlc3QtcHJlLmpzIj48L3Njcmlw
dD4KKzxzY3JpcHQgc3JjPSIuLi8uLi9mYXN0L2pzL3Jlc291cmNlcy9qcy10ZXN0LXBvc3QtZnVu
Y3Rpb24uanMiPjwvc2NyaXB0PgorPHNjcmlwdCBzcmM9InJlc291cmNlcy9zaGFyZWQuanMiPjwv
c2NyaXB0PgorPC9oZWFkPgorPGJvZHk+Cis8cCBpZD0iZGVzY3JpcHRpb24iPjwvcD4KKzxkaXYg
aWQ9ImNvbnNvbGUiPjwvZGl2PgorPHNjcmlwdD4KKworZGVzY3JpcHRpb24oIlZlcmlmeSB0aGF0
IGEgdHJhbnNhY3Rpb24gd2l0aCBhbiBlcnJvciBhYm9ydHMgdW5sZXNzIHByZXZlbnREZWZhdWx0
KCkgaXMgY2FsbGVkLiIpOworaWYgKHdpbmRvdy5sYXlvdXRUZXN0Q29udHJvbGxlcikgCisgICAg
bGF5b3V0VGVzdENvbnRyb2xsZXIud2FpdFVudGlsRG9uZSgpOworCitmdW5jdGlvbiB0ZXN0KCkK
K3sKKyAgICByZXN1bHQgPSBldmFsQW5kTG9nKCJ3ZWJraXRJbmRleGVkREIub3BlbignbmFtZScp
Iik7CisgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CisgICAgcmVzdWx0Lm9uc3VjY2VzcyA9IHNl
dFZlcnNpb247CisgICAgcmVzdWx0Lm9uZXJyb3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsK
K30KKworZnVuY3Rpb24gc2V0VmVyc2lvbigpCit7CisgICAgdmVyaWZ5U3VjY2Vzc0V2ZW50KGV2
ZW50KTsKKyAgICBkYiA9IGV2YWxBbmRMb2coImRiID0gZXZlbnQucmVzdWx0Iik7CisKKyAgICBy
ZXN1bHQgPSBldmFsQW5kTG9nKCJkYi5zZXRWZXJzaW9uKCduZXcgdmVyc2lvbicpIik7CisgICAg
dmVyaWZ5UmVzdWx0KHJlc3VsdCk7CisgICAgcmVzdWx0Lm9uc3VjY2VzcyA9IGRlbGV0ZUV4aXN0
aW5nOworICAgIHJlc3VsdC5vbmVycm9yID0gdW5leHBlY3RlZEVycm9yQ2FsbGJhY2s7Cit9CisK
K2Z1bmN0aW9uIGRlbGV0ZUV4aXN0aW5nKCkKK3sKKyAgICBkZWJ1Zygic2V0VmVyc2lvblN1Y2Nl
c3MoKToiKTsKKyAgICB2ZXJpZnlTdWNjZXNzRXZlbnQoZXZlbnQpOworICAgIHdpbmRvdy50cmFu
cyA9IGV2YWxBbmRMb2coInRyYW5zID0gZXZlbnQucmVzdWx0Iik7CisgICAgc2hvdWxkQmVUcnVl
KCJ0cmFucyAhPT0gbnVsbCIpOworICAgIHRyYW5zLm9uYWJvcnQgPSB1bmV4cGVjdGVkQWJvcnRD
YWxsYmFjazsKKyAgICBldmFsQW5kTG9nKCJ0cmFucy5vbmNvbXBsZXRlID0gYWRkRGF0YSIpOwor
CisgICAgZGVsZXRlQWxsT2JqZWN0U3RvcmVzKGRiLCBjcmVhdGVPYmplY3RTdG9yZSk7Cit9CisK
K2Z1bmN0aW9uIGNyZWF0ZU9iamVjdFN0b3JlKCkKK3sKKyAgICBldmFsQW5kTG9nKCJkYi5jcmVh
dGVPYmplY3RTdG9yZSgnc3RvcmVOYW1lJywgbnVsbCkiKTsKK30KKworZnVuY3Rpb24gYWRkRGF0
YSgpCit7CisgICAgdHJhbnMgPSBldmFsQW5kTG9nKCJ0cmFucyA9IGRiLnRyYW5zYWN0aW9uKFtd
LCB3ZWJraXRJREJUcmFuc2FjdGlvbi5SRUFEX1dSSVRFKSIpOworICAgIGV2YWxBbmRMb2coInRy
YW5zLm9uYWJvcnQgPSB1bmV4cGVjdGVkQWJvcnRDYWxsYmFjayIpOworICAgIGV2YWxBbmRMb2co
InRyYW5zLm9uY29tcGxldGUgPSB0cmFuc2FjdGlvbkNvbXBsZXRlZCIpOworICAgIHN0b3JlID0g
ZXZhbEFuZExvZygic3RvcmUgPSB0cmFucy5vYmplY3RTdG9yZSgnc3RvcmVOYW1lJykiKTsKKyAg
ICByZXN1bHQgPSBldmFsQW5kTG9nKCJzdG9yZS5hZGQoe3g6ICd2YWx1ZScsIHk6ICd6enonfSwg
J2tleScpIik7CisgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CisgICAgcmVzdWx0Lm9uc3VjY2Vz
cyA9IGFkZE1vcmU7CisgICAgcmVzdWx0Lm9uZXJyb3IgPSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFj
azsKK30KKworZnVuY3Rpb24gYWRkTW9yZSgpCit7CisgICAgdmVyaWZ5U3VjY2Vzc0V2ZW50KGV2
ZW50KTsKKworICAgIHJlc3VsdCA9IGV2YWxBbmRMb2coImV2ZW50LnNvdXJjZS5hZGQoe3g6ICd2
YWx1ZScsIHk6ICd6enonfSwgJ2tleScpIik7CisgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7Cisg
ICAgcmVzdWx0Lm9uc3VjY2VzcyA9IHVuZXhwZWN0ZWRTdWNjZXNzQ2FsbGJhY2s7CisgICAgcmVz
dWx0LmFkZEV2ZW50TGlzdGVuZXIoImVycm9yIiwgcHJldmVudFRoZURlZmF1bHQpOworfQorCitm
dW5jdGlvbiBwcmV2ZW50VGhlRGVmYXVsdCgpCit7CisgICAgZXZhbEFuZExvZygiZXZlbnQucHJl
dmVudERlZmF1bHQoKSIpOworfQorCitmdW5jdGlvbiB0cmFuc2FjdGlvbkNvbXBsZXRlZCgpCit7
CisgICAgdGVzdFBhc3NlZCgiVHJhbnNhY3Rpb24gY29tcGxldGVkIik7CisgICAgZGVidWcoIiIp
OworICAgIGRlYnVnKCIiKTsKKyAgICB0cmFucyA9IGV2YWxBbmRMb2coInRyYW5zID0gZGIudHJh
bnNhY3Rpb24oW10sIHdlYmtpdElEQlRyYW5zYWN0aW9uLlJFQURfV1JJVEUpIik7CisgICAgZXZh
bEFuZExvZygidHJhbnMub25hYm9ydCA9IHRyYW5zYWN0aW9uQWJvcnRlZDEiKTsKKyAgICBldmFs
QW5kTG9nKCJ0cmFucy5vbmNvbXBsZXRlID0gdW5leHBlY3RlZENvbXBsZXRlQ2FsbGJhY2siKTsK
KyAgICBzdG9yZSA9IGV2YWxBbmRMb2coInN0b3JlID0gdHJhbnMub2JqZWN0U3RvcmUoJ3N0b3Jl
TmFtZScpIik7CisgICAgcmVzdWx0ID0gZXZhbEFuZExvZygic3RvcmUuYWRkKHt4OiAndmFsdWUn
LCB5OiAnenp6J30sICdrZXknKSIpOworICAgIHZlcmlmeVJlc3VsdChyZXN1bHQpOworICAgIHJl
c3VsdC5vbnN1Y2Nlc3MgPSB1bmV4cGVjdGVkU3VjY2Vzc0NhbGxiYWNrOworICAgIHJlc3VsdC5v
bmVycm9yID0gYWxsb3dEZWZhdWx0OworfQorCitmdW5jdGlvbiBhbGxvd0RlZmF1bHQoKQorewor
ICAgIGRlYnVnKCJEb2luZyBub3RoaW5nIHRvIHByZXZlbnQgdGhlIGRlZmF1bHQgYWN0aW9uLi4u
Iik7Cit9CisKK2Z1bmN0aW9uIHRyYW5zYWN0aW9uQWJvcnRlZDEoKQoreworICAgIHRlc3RQYXNz
ZWQoIlRyYW5zYWN0aW9uIGFib3J0ZWQiKTsKKyAgICBkZWJ1ZygiIik7CisgICAgZGVidWcoIiIp
OworICAgIHRyYW5zID0gZXZhbEFuZExvZygidHJhbnMgPSBkYi50cmFuc2FjdGlvbihbXSwgd2Vi
a2l0SURCVHJhbnNhY3Rpb24uUkVBRF9XUklURSkiKTsKKyAgICBldmFsQW5kTG9nKCJ0cmFucy5v
bmFib3J0ID0gdHJhbnNhY3Rpb25BYm9ydGVkMiIpOworICAgIGV2YWxBbmRMb2coInRyYW5zLm9u
Y29tcGxldGUgPSB1bmV4cGVjdGVkQ29tcGxldGVDYWxsYmFjayIpOworICAgIHN0b3JlID0gZXZh
bEFuZExvZygic3RvcmUgPSB0cmFucy5vYmplY3RTdG9yZSgnc3RvcmVOYW1lJykiKTsKKyAgICBy
ZXN1bHQgPSBldmFsQW5kTG9nKCJzdG9yZS5hZGQoe3g6ICd2YWx1ZScsIHk6ICd6enonfSwgJ2tl
eScpIik7CisgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CisgICAgcmVzdWx0Lm9uc3VjY2VzcyA9
IHVuZXhwZWN0ZWRTdWNjZXNzQ2FsbGJhY2s7CisgICAgZGVidWcoIk9taXR0aW5nIGFuIG9uZXJy
b3IgaGFuZGxlciIpOworfQorCitmdW5jdGlvbiB0cmFuc2FjdGlvbkFib3J0ZWQyKCkKK3sKKyAg
ICB0ZXN0UGFzc2VkKCJUcmFuc2FjdGlvbiBhYm9ydGVkIik7CisgICAgZG9uZSgpOworfQorCit0
ZXN0KCk7CisKK3ZhciBzdWNjZXNzZnVsbHlQYXJzZWQgPSB0cnVlOworCis8L3NjcmlwdD4KKzwv
Ym9keT4KKzwvaHRtbD4KZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRi
L2luZGV4LWJhc2ljcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRk
Yi9pbmRleC1iYXNpY3MtZXhwZWN0ZWQudHh0CmluZGV4IDA5OWRkZTMxYzQ0NWFhNzg3OTlkODQ2
MzNlNWE5ZjQ2NDVhYTAyMzcuLmQxOGEwOWFhN2IwZTYwNTA4M2M4OTZjNjk4M2RhNDllODVlMDFk
MjIgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWJhc2lj
cy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW5kZXgt
YmFzaWNzLWV4cGVjdGVkLnR4dApAQCAtMTgzLDYgKzE4Myw3IEBAIFBBU1MgJ3JlYWR5U3RhdGUn
IGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCiBQQVNTIGV2ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlz
IGV2ZW50LnRhcmdldC5ET05FCiAKIFBBU1MgZXZlbnQuY29kZSBpcyB3ZWJraXRJREJEYXRhYmFz
ZUV4Y2VwdGlvbi5OT1RfRk9VTkRfRVJSCitldmVudC5wcmV2ZW50RGVmYXVsdCgpCiBpbmRleE9i
amVjdC5nZXQoJ2RvZXMgbm90IGV4aXN0JykKIFBBU1MgJ29uc3VjY2VzcycgaW4gcmVzdWx0IGlz
IHRydWUKIFBBU1MgJ29uZXJyb3InIGluIHJlc3VsdCBpcyB0cnVlCkBAIC0yMDEsNiArMjAyLDcg
QEAgUEFTUyAncmVhZHlTdGF0ZScgaW4gZXZlbnQudGFyZ2V0IGlzIHRydWUKIFBBU1MgZXZlbnQu
dGFyZ2V0LnJlYWR5U3RhdGUgaXMgZXZlbnQudGFyZ2V0LkRPTkUKIAogUEFTUyBldmVudC5jb2Rl
IGlzIHdlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9uLk5PVF9GT1VORF9FUlIKK2V2ZW50LnByZXZl
bnREZWZhdWx0KCkKIGluZGV4T2JqZWN0Lm9wZW5LZXlDdXJzb3IoKQogUEFTUyAnb25zdWNjZXNz
JyBpbiByZXN1bHQgaXMgdHJ1ZQogUEFTUyAnb25lcnJvcicgaW4gcmVzdWx0IGlzIHRydWUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL2luZGV4LWJhc2ljcy5odG1s
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvaW5kZXgtYmFzaWNzLmh0bWwKaW5kZXgg
ZDVlZWMwYTZkNzc1ZWQ0MzYzOTc4YzIwODI1NzJhNzFjYzc3MTA4Yi4uODYzNTY2YWMyOTk3YmJl
NTFkYzFiYTFhNDBkYTMzZTJhMjFhY2I2OSAxMDA2NDQKLS0tIGEvTGF5b3V0VGVzdHMvc3RvcmFn
ZS9pbmRleGVkZGIvaW5kZXgtYmFzaWNzLmh0bWwKKysrIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9p
bmRleGVkZGIvaW5kZXgtYmFzaWNzLmh0bWwKQEAgLTE0NCw2ICsxNDQsOCBAQCBmdW5jdGlvbiBn
ZXRPYmplY3REYXRhRmFpbCgpCiAgICAgdmVyaWZ5RXJyb3JFdmVudChldmVudCk7CiAgICAgc2hv
dWxkQmUoImV2ZW50LmNvZGUiLCAid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5E
X0VSUiIpOwogCisgICAgZXZhbEFuZExvZygiZXZlbnQucHJldmVudERlZmF1bHQoKSIpOworCiAg
ICAgcmVzdWx0ID0gZXZhbEFuZExvZygiaW5kZXhPYmplY3QuZ2V0KCdkb2VzIG5vdCBleGlzdCcp
Iik7CiAgICAgdmVyaWZ5UmVzdWx0KHJlc3VsdCk7CiAgICAgcmVzdWx0Lm9uc3VjY2VzcyA9IHVu
ZXhwZWN0ZWRTdWNjZXNzQ2FsbGJhY2s7CkBAIC0xNTUsNiArMTU3LDggQEAgZnVuY3Rpb24gb3Bl
bktleUN1cnNvcigpCiAgICAgdmVyaWZ5RXJyb3JFdmVudChldmVudCk7CiAgICAgc2hvdWxkQmUo
ImV2ZW50LmNvZGUiLCAid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uTk9UX0ZPVU5EX0VSUiIp
OwogCisgICAgZXZhbEFuZExvZygiZXZlbnQucHJldmVudERlZmF1bHQoKSIpOworCiAgICAgd2lu
ZG93LnJlc3VsdCA9IGV2YWxBbmRMb2coImluZGV4T2JqZWN0Lm9wZW5LZXlDdXJzb3IoKSIpOwog
ICAgIHZlcmlmeVJlc3VsdChyZXN1bHQpOwogICAgIHJlc3VsdC5vbnN1Y2Nlc3MgPSBjdXJzb3Ix
Q29udGludWU7CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmpl
Y3RzdG9yZS1hdXRvaW5jcmVtZW50LWV4cGVjdGVkLnR4dCBiL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL29iamVjdHN0b3JlLWF1dG9pbmNyZW1lbnQtZXhwZWN0ZWQudHh0CmluZGV4IDZh
N2MzNjZhYzZmYTEyZjdlZDhiOGUyNWI5ODUzNmZiOTg1NTJlODUuLmI4NTg3YTMxZmU4MDUxYzM2
ZmU1YzNhMjM2YWRmNzk3NzhkZjUwMmQgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2Uv
aW5kZXhlZGRiL29iamVjdHN0b3JlLWF1dG9pbmNyZW1lbnQtZXhwZWN0ZWQudHh0CisrKyBiL0xh
eW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWF1dG9pbmNyZW1lbnQtZXhw
ZWN0ZWQudHh0CkBAIC03Miw2ICs3Miw3IEBAIFBBU1MgJ3JlYWR5U3RhdGUnIGluIGV2ZW50LnRh
cmdldCBpcyB0cnVlCiBQQVNTIGV2ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlzIGV2ZW50LnRhcmdl
dC5ET05FCiAKIFBBU1MgZXZlbnQuY29kZSBpcyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5V
TktOT1dOX0VSUgorZXZlbnQucHJldmVudERlZmF1bHQoKQogc3RvcmUgPSB0cmFucy5vYmplY3RT
dG9yZSgnU3RvcmVXaXRoQXV0b0luY3JlbWVudCcpCiBJbnNlcnQgaW50byBvYmplY3Qgc3RvcmUg
d2l0aCBrZXkgZ2VuIHVzaW5nIGV4cGxpY2l0IGtleQogc3RvcmUuYWRkKHtuYW1lOiAnTGluY29s
bid9LCAxKQpAQCAtODgsNiArODksNyBAQCBQQVNTICdyZWFkeVN0YXRlJyBpbiBldmVudC50YXJn
ZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50YXJnZXQucmVhZHlTdGF0ZSBpcyBldmVudC50YXJnZXQu
RE9ORQogCiBQQVNTIGV2ZW50LmNvZGUgaXMgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREFU
QV9FUlIKK2V2ZW50LnByZXZlbnREZWZhdWx0KCkKIEluc2VydCBpbnRvIG9iamVjdCBzdG9yZSB3
aXRoIGtleSBnZW4gYW5kIG5vIGtleSBwYXRoCiBzdG9yZS5hZGQoe25hbWU6ICdMaW5jb2xuJywg
bnVtYmVyOiAnNzAxMid9KQogYWRkTGluY29sblN1Y2Nlc3MoKToKQEAgLTE2Myw2ICsxNjUsNyBA
QCBQQVNTICdyZWFkeVN0YXRlJyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50
YXJnZXQucmVhZHlTdGF0ZSBpcyBldmVudC50YXJnZXQuRE9ORQogCiBQQVNTIGV2ZW50LmNvZGUg
aXMgd2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREFUQV9FUlIKK2V2ZW50LnByZXZlbnREZWZh
dWx0KCkKIHN0b3JlLmFkZCh7bmFtZTogJ0FkYW0nfSwgMSkKIGFkZEFkYW1TdWNjZXNzKCk6CiBT
dWNjZXNzIGV2ZW50IGZpcmVkOgpkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRl
eGVkZGIvb2JqZWN0c3RvcmUtYXV0b2luY3JlbWVudC5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFn
ZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYXV0b2luY3JlbWVudC5odG1sCmluZGV4IDMwODQ0OTZh
Y2MxNDFlYjk4YTk0NmEyZGJiZDJjYjJlMWI0NDY1OWYuLjM5Y2Y4YjViMTA2Zjc3N2U5ZjY1OTA2
OGVlZjM4MmI4NDA4NzA5YzggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhl
ZGRiL29iamVjdHN0b3JlLWF1dG9pbmNyZW1lbnQuaHRtbAorKysgYi9MYXlvdXRUZXN0cy9zdG9y
YWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1hdXRvaW5jcmVtZW50Lmh0bWwKQEAgLTg3LDYgKzg3
LDggQEAgZnVuY3Rpb24gYWRkTGluY29sbkVycm9yKCkKICAgICAvLyBGSVhNRTogVGhpcyBzaG91
bGQgYmUgaW1wbGVtZW50ZWQsIGJ1dCB3ZSBtYWtlIGl0IGFuIGVycm9yIGZvciBub3cuCiAgICAg
c2hvdWxkQmUoImV2ZW50LmNvZGUiLCAid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uVU5LTk9X
Tl9FUlIiKTsKIAorICAgIGV2YWxBbmRMb2coImV2ZW50LnByZXZlbnREZWZhdWx0KCkiKTsKKwog
ICAgIHdpbmRvdy5zdG9yZSA9IGV2YWxBbmRMb2coInN0b3JlID0gdHJhbnMub2JqZWN0U3RvcmUo
J1N0b3JlV2l0aEF1dG9JbmNyZW1lbnQnKSIpOwogICAgIGRlYnVnKCJJbnNlcnQgaW50byBvYmpl
Y3Qgc3RvcmUgd2l0aCBrZXkgZ2VuIHVzaW5nIGV4cGxpY2l0IGtleSIpOwogICAgIHJlc3VsdCA9
IGV2YWxBbmRMb2coInN0b3JlLmFkZCh7bmFtZTogJ0xpbmNvbG4nfSwgMSkiKTsKQEAgLTEwMCw2
ICsxMDIsOCBAQCBmdW5jdGlvbiBhZGRXaXRoRXhwbGljaXRLZXlFcnJvcigpCiAgICAgdmVyaWZ5
RXJyb3JFdmVudChldmVudCk7CiAgICAgc2hvdWxkQmUoImV2ZW50LmNvZGUiLCAid2Via2l0SURC
RGF0YWJhc2VFeGNlcHRpb24uREFUQV9FUlIiKTsKIAorICAgIGV2YWxBbmRMb2coImV2ZW50LnBy
ZXZlbnREZWZhdWx0KCkiKTsKKwogICAgIGRlYnVnKCJJbnNlcnQgaW50byBvYmplY3Qgc3RvcmUg
d2l0aCBrZXkgZ2VuIGFuZCBubyBrZXkgcGF0aCIpOwogICAgIHJlc3VsdCA9IGV2YWxBbmRMb2co
InN0b3JlLmFkZCh7bmFtZTogJ0xpbmNvbG4nLCBudW1iZXI6ICc3MDEyJ30pIik7CiAgICAgcmVz
dWx0Lm9uc3VjY2VzcyA9IGFkZExpbmNvbG5TdWNjZXNzOwpAQCAtMTYwLDYgKzE2NCw4IEBAIGZ1
bmN0aW9uIGFkZEFkYW1FcnJvcigpCiAgICAgdmVyaWZ5RXJyb3JFdmVudChldmVudCk7CiAgICAg
c2hvdWxkQmUoImV2ZW50LmNvZGUiLCAid2Via2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREFUQV9F
UlIiKTsKIAorICAgIGV2YWxBbmRMb2coImV2ZW50LnByZXZlbnREZWZhdWx0KCkiKTsKKwogICAg
IHJlc3VsdCA9IGV2YWxBbmRMb2coInN0b3JlLmFkZCh7bmFtZTogJ0FkYW0nfSwgMSkiKTsKICAg
ICByZXN1bHQub25zdWNjZXNzID0gYWRkQWRhbVN1Y2Nlc3M7CiAgICAgcmVzdWx0Lm9uZXJyb3Ig
PSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWJhc2ljcy1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0
cy9zdG9yYWdlL2luZGV4ZWRkYi9vYmplY3RzdG9yZS1iYXNpY3MtZXhwZWN0ZWQudHh0CmluZGV4
IDVlZWY5NDJmZmZjZjFmODA1NzliYmNhNDliYjE1ZjFiNzA4OTIwYjQuLmNmYmRiYmZiMDY4MDAw
Y2IyY2NhZDNiMWE2MWU0NTg1MTJlNDU3ZDggMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL3N0b3Jh
Z2UvaW5kZXhlZGRiL29iamVjdHN0b3JlLWJhc2ljcy1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0
VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYmFzaWNzLWV4cGVjdGVkLnR4dApA
QCAtMTM3LDYgKzEzNyw3IEBAIFBBU1MgJ3JlYWR5U3RhdGUnIGluIGV2ZW50LnRhcmdldCBpcyB0
cnVlCiBQQVNTIGV2ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlzIGV2ZW50LnRhcmdldC5ET05FCiAK
IFBBU1MgZXZlbnQuY29kZSBpcyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5VTktOT1dOX0VS
UgorZXZlbnQucHJldmVudERlZmF1bHQoKQogZGIudHJhbnNhY3Rpb24oW10sIHdlYmtpdElEQlRy
YW5zYWN0aW9uLlJFQURfV1JJVEUpCiBzdG9yZSA9IHRyYW5zYWN0aW9uLm9iamVjdFN0b3JlKCdz
dG9yZU5hbWUnKQogc3RvcmUuYWRkKHt4OiAnb3RoZXJ2YWx1ZSd9LCBudWxsKQpAQCAtMTU4LDYg
KzE1OSw3IEBAIFBBU1MgJ3JlYWR5U3RhdGUnIGluIGV2ZW50LnRhcmdldCBpcyB0cnVlCiBQQVNT
IGV2ZW50LnRhcmdldC5yZWFkeVN0YXRlIGlzIGV2ZW50LnRhcmdldC5ET05FCiAKIFBBU1MgZXZl
bnQuY29kZSBpcyB3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5EQVRBX0VSUgorZXZlbnQucHJl
dmVudERlZmF1bHQoKQogZGIudHJhbnNhY3Rpb24oW10sIHdlYmtpdElEQlRyYW5zYWN0aW9uLlJF
QURfV1JJVEUpCiBzdG9yZSA9IHRyYW5zYWN0aW9uLm9iamVjdFN0b3JlKCdzdG9yZU5hbWUnKQog
c3RvcmUuYWRkKHt4OiBudWxsfSwgJ3ZhbGlka2V5JykKQEAgLTE3OSw2ICsxODEsNyBAQCBQQVNT
ICdyZWFkeVN0YXRlJyBpbiBldmVudC50YXJnZXQgaXMgdHJ1ZQogUEFTUyBldmVudC50YXJnZXQu
cmVhZHlTdGF0ZSBpcyBldmVudC50YXJnZXQuRE9ORQogCiBQQVNTIGV2ZW50LmNvZGUgaXMgd2Vi
a2l0SURCRGF0YWJhc2VFeGNlcHRpb24uREFUQV9FUlIKK2V2ZW50LnByZXZlbnREZWZhdWx0KCkK
IGRiLnRyYW5zYWN0aW9uKFtdLCB3ZWJraXRJREJUcmFuc2FjdGlvbi5SRUFEX1dSSVRFKQogc3Rv
cmUgPSB0cmFuc2FjdGlvbi5vYmplY3RTdG9yZSgnc3RvcmVOYW1lJykKIHN0b3JlLmdldCgna2V5
JykKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL3N0b3JhZ2UvaW5kZXhlZGRiL29iamVjdHN0b3Jl
LWJhc2ljcy5odG1sIGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUt
YmFzaWNzLmh0bWwKaW5kZXggODI4NTRmY2U1MTkwYWFkZjYxNDNhNWUwOTVhNWVlOWZkY2FlN2Nh
Zi4uZGVlYzdhMzE2MGM0YjBjMDgwMjU0YTEwOWY2NmZmOTdmMTJkMzE0OCAxMDA2NDQKLS0tIGEv
TGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYmFzaWNzLmh0bWwKKysr
IGIvTGF5b3V0VGVzdHMvc3RvcmFnZS9pbmRleGVkZGIvb2JqZWN0c3RvcmUtYmFzaWNzLmh0bWwK
QEAgLTE4OSw2ICsxODksOCBAQCBmdW5jdGlvbiBhZGRBZ2FpbkZhaWx1cmUoKQogICAgIC8vIEZJ
WE1FOiBUaGlzIGVycm9yIGNvZGUgbmVlZHMgdG8gYmUgc3BlY2NlZC4KICAgICBzaG91bGRCZSgi
ZXZlbnQuY29kZSIsICJ3ZWJraXRJREJEYXRhYmFzZUV4Y2VwdGlvbi5VTktOT1dOX0VSUiIpOwog
CisgICAgZXZhbEFuZExvZygiZXZlbnQucHJldmVudERlZmF1bHQoKSIpOworCiAgICAgdHJhbnNh
Y3Rpb24gPSBldmFsQW5kTG9nKCJkYi50cmFuc2FjdGlvbihbXSwgd2Via2l0SURCVHJhbnNhY3Rp
b24uUkVBRF9XUklURSkiKTsKICAgICB0cmFuc2FjdGlvbi5vbmFib3J0ID0gdW5leHBlY3RlZEVy
cm9yQ2FsbGJhY2s7CiAgICAgdmFyIHN0b3JlID0gZXZhbEFuZExvZygic3RvcmUgPSB0cmFuc2Fj
dGlvbi5vYmplY3RTdG9yZSgnc3RvcmVOYW1lJykiKTsKQEAgLTIwNSw2ICsyMDcsOCBAQCBmdW5j
dGlvbiBhZGRXaXRoTnVsbEtleUZhaWx1cmUoKQogICAgIHZlcmlmeUVycm9yRXZlbnQoZXZlbnQp
OwogICAgIHNob3VsZEJlKCJldmVudC5jb2RlIiwgIndlYmtpdElEQkRhdGFiYXNlRXhjZXB0aW9u
LkRBVEFfRVJSIik7CiAKKyAgICBldmFsQW5kTG9nKCJldmVudC5wcmV2ZW50RGVmYXVsdCgpIik7
CisKICAgICB0cmFuc2FjdGlvbiA9IGV2YWxBbmRMb2coImRiLnRyYW5zYWN0aW9uKFtdLCB3ZWJr
aXRJREJUcmFuc2FjdGlvbi5SRUFEX1dSSVRFKSIpOwogICAgIHRyYW5zYWN0aW9uLm9uYWJvcnQg
PSB1bmV4cGVjdGVkRXJyb3JDYWxsYmFjazsKICAgICB2YXIgc3RvcmUgPSBldmFsQW5kTG9nKCJz
dG9yZSA9IHRyYW5zYWN0aW9uLm9iamVjdFN0b3JlKCdzdG9yZU5hbWUnKSIpOwpAQCAtMjIxLDYg
KzIyNSw4IEBAIGZ1bmN0aW9uIGFkZFdpdGhOdWxsSW5kZXhGYWlsdXJlKCkKICAgICB2ZXJpZnlF
cnJvckV2ZW50KGV2ZW50KTsKICAgICBzaG91bGRCZSgiZXZlbnQuY29kZSIsICJ3ZWJraXRJREJE
YXRhYmFzZUV4Y2VwdGlvbi5EQVRBX0VSUiIpOwogCisgICAgZXZhbEFuZExvZygiZXZlbnQucHJl
dmVudERlZmF1bHQoKSIpOworCiAgICAgdHJhbnNhY3Rpb24gPSBldmFsQW5kTG9nKCJkYi50cmFu
c2FjdGlvbihbXSwgd2Via2l0SURCVHJhbnNhY3Rpb24uUkVBRF9XUklURSkiKTsKICAgICB0cmFu
c2FjdGlvbi5vbmFib3J0ID0gdW5leHBlY3RlZEVycm9yQ2FsbGJhY2s7CiAgICAgdmFyIHN0b3Jl
ID0gZXZhbEFuZExvZygic3RvcmUgPSB0cmFuc2FjdGlvbi5vYmplY3RTdG9yZSgnc3RvcmVOYW1l
JykiKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJD
b3JlL0NoYW5nZUxvZwppbmRleCBhNzdjMTVmNjc1YjhkYTJmN2JiOGJmNGYzZWE4NGQyMDFlM2Ey
MjFmLi4xOGYzN2U1MDFkY2ZkMDgyOTczNzFkZmJlMjVmMzM4MGY1OTc0Zjc2IDEwMDY0NAotLS0g
YS9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9n
CkBAIC0xLDMgKzEsNTAgQEAKKzIwMTEtMDItMDQgIEplcmVteSBPcmxvdyAgPGpvcmxvd0BjaHJv
bWl1bS5vcmc+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgRmlyc3Qgc3RlcCB0b3dhcmRzIGV2ZW50IHByb3BvZ2F0aW9uIHdpdGhpbiBJbmRleGVkREIK
KyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTUzNzk1CisK
KyAgICAgICAgVGhpcyBpcyB0aGUgZmlyc3Qgc3RlcCB0b3dhcmRzIGltcGxlbWVudGluZworICAg
ICAgICBodHRwOi8vd3d3LnczLm9yZy9CdWdzL1B1YmxpYy9zaG93X2J1Zy5jZ2k/aWQ9MTEzNDgK
KyAgICAgICAgd2l0aGluIEluZGV4ZWREQi4gSSd2ZSBjcmVhdGVkIGEgbWV0aG9kIHRoYXQga25v
d3MgaG93CisgICAgICAgIHRvIGNhcHR1cmUgYW5kIGJ1YmJsZSAoYmFzZWQgb24gTm9kZSdzIGRp
c3BhdGNoR2VuZXJpY0V2ZW50KS4KKyAgICAgICAgSSd2ZSB0aGVuIGNoYW5nZWQgSURCUmVxdWVz
dCB0byB1c2UgaXQuCisKKyAgICAgICAgVGhlIG9ubHkgZnVuY3Rpb25hbCBjaGFuZ2UgaXMgdGhh
dCBwcmV2ZW50RGVmYXVsdCBub3cgbXVzdAorICAgICAgICBiZSBjYWxsZWQgaW4gZXJyb3IgZXZl
bnRzIHRvIHByZXZlbnQgdGhlIHRyYW5zYWN0aW9uIGZyb20KKyAgICAgICAgYmVpbmcgYWJvcnRl
ZC4gVGhlIHRlc3RzIHJlZmxlY3QgdGhpcyBjaGFuZ2UgYW5kIHRoZXJlJ3Mgb25lCisgICAgICAg
IHNwZWNpZmljIHRlc3QgdG8gbG9vayBhdCB0aGlzIGJlaGF2aW9yLgorCisgICAgICAgIFRlc3Q6
IHN0b3JhZ2UvaW5kZXhlZGRiL2Vycm9yLWNhdXNlcy1hYm9ydC1ieS1kZWZhdWx0Lmh0bWwKKwor
ICAgICAgICAqIHN0b3JhZ2UvSURCQWJvcnRFdmVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJ
REJBYm9ydEV2ZW50OjpjcmVhdGUpOgorICAgICAgICAoV2ViQ29yZTo6SURCQWJvcnRFdmVudDo6
SURCQWJvcnRFdmVudCk6CisgICAgICAgICogc3RvcmFnZS9JREJBYm9ydEV2ZW50Lmg6CisgICAg
ICAgICogc3RvcmFnZS9JREJDb21wbGV0ZUV2ZW50LmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklE
QkNvbXBsZXRlRXZlbnQ6OmNyZWF0ZSk6CisgICAgICAgIChXZWJDb3JlOjpJREJDb21wbGV0ZUV2
ZW50OjpJREJDb21wbGV0ZUV2ZW50KToKKyAgICAgICAgKiBzdG9yYWdlL0lEQkNvbXBsZXRlRXZl
bnQuaDoKKyAgICAgICAgKiBzdG9yYWdlL0lEQkVycm9yRXZlbnQuY3BwOgorICAgICAgICAoV2Vi
Q29yZTo6SURCRXJyb3JFdmVudDo6SURCRXJyb3JFdmVudCk6CisgICAgICAgICogc3RvcmFnZS9J
REJFdmVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJREJFdmVudDo6SURCRXZlbnQpOgorICAg
ICAgICAoV2ViQ29yZTo6SURCRXZlbnQ6OmRpc3BhdGNoKToKKyAgICAgICAgKiBzdG9yYWdlL0lE
QkV2ZW50Lmg6CisgICAgICAgICogc3RvcmFnZS9JREJSZXF1ZXN0LmNwcDoKKyAgICAgICAgKFdl
YkNvcmU6OklEQlJlcXVlc3Q6OmRpc3BhdGNoRXZlbnQpOgorICAgICAgICAqIHN0b3JhZ2UvSURC
UmVxdWVzdC5oOgorICAgICAgICAqIHN0b3JhZ2UvSURCU3VjY2Vzc0V2ZW50LmNwcDoKKyAgICAg
ICAgKFdlYkNvcmU6OklEQlN1Y2Nlc3NFdmVudDo6SURCU3VjY2Vzc0V2ZW50KToKKyAgICAgICAg
KiBzdG9yYWdlL0lEQlRyYW5zYWN0aW9uLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQlRyYW5z
YWN0aW9uOjpvbkFib3J0KToKKyAgICAgICAgKFdlYkNvcmU6OklEQlRyYW5zYWN0aW9uOjpvbkNv
bXBsZXRlKToKKyAgICAgICAgKiBzdG9yYWdlL0lEQlRyYW5zYWN0aW9uLmg6CisgICAgICAgIChX
ZWJDb3JlOjpJREJUcmFuc2FjdGlvbjo6YmFja2VuZCk6CisgICAgICAgICogc3RvcmFnZS9JREJU
cmFuc2FjdGlvbkJhY2tlbmRJbXBsLmNwcDoKKyAgICAgICAgKFdlYkNvcmU6OklEQlRyYW5zYWN0
aW9uQmFja2VuZEltcGw6OnRhc2tUaW1lckZpcmVkKToKKwogMjAxMS0wMi0wMyAgSmVyZW15IE9y
bG93ICA8am9ybG93QGNocm9taXVtLm9yZz4KIAogICAgICAgICBSZXZpZXdlZCBieSBOYXRlIENo
YXBpbi4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCQWJvcnRFdmVudC5j
cHAgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkFib3J0RXZlbnQuY3BwCmluZGV4IDIxNzYw
Zjg5M2YwNzM5YTNjMjcyNzhhYmQ5ZTYxMmI5MTBiZDE1OTguLjk4MGQ2NTZmMzVjZTczMWI3ZThm
ODlmODIxZjJmZWE1N2M1MTc5NWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2Uv
SURCQWJvcnRFdmVudC5jcHAKKysrIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJBYm9ydEV2
ZW50LmNwcApAQCAtMzYsMTMgKzM2LDEzIEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotUGFz
c1JlZlB0cjxJREJBYm9ydEV2ZW50PiBJREJBYm9ydEV2ZW50OjpjcmVhdGUoKQorUGFzc1JlZlB0
cjxJREJBYm9ydEV2ZW50PiBJREJBYm9ydEV2ZW50OjpjcmVhdGUoUGFzc1JlZlB0cjxJREJBbnk+
IHNvdXJjZSkKIHsKLSAgICByZXR1cm4gYWRvcHRSZWYobmV3IElEQkFib3J0RXZlbnQoKSk7Cisg
ICAgcmV0dXJuIGFkb3B0UmVmKG5ldyBJREJBYm9ydEV2ZW50KHNvdXJjZSkpOwogfQogCi1JREJB
Ym9ydEV2ZW50OjpJREJBYm9ydEV2ZW50KCkKLSAgICA6IElEQkV2ZW50KGV2ZW50TmFtZXMoKS5h
Ym9ydEV2ZW50LCAwKSAvLyBGSVhNRTogc2V0IHRoZSBzb3VyY2UgdG8gdGhlIHRyYW5zYWN0aW9u
CitJREJBYm9ydEV2ZW50OjpJREJBYm9ydEV2ZW50KFBhc3NSZWZQdHI8SURCQW55PiBzb3VyY2Up
CisgICAgOiBJREJFdmVudChldmVudE5hbWVzKCkuYWJvcnRFdmVudCwgc291cmNlLCB0cnVlKQog
ewogfQogCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkFib3J0RXZlbnQu
aCBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCQWJvcnRFdmVudC5oCmluZGV4IGJkYzIyMDI0
Mzk2YTg1MGVjMGQ1MGViYmVhOWM0N2UyMDAwNTExM2QuLmZjMjc5ODljMGFjYjMzZjlhNDZjMGM3
MDVjYTlhZmQ4MjE4OGJjYzEgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURC
QWJvcnRFdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCQWJvcnRFdmVudC5o
CkBAIC00MCwxNCArNDAsMTQgQEAgbmFtZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBJREJBYm9y
dEV2ZW50IDogcHVibGljIElEQkV2ZW50IHsKIHB1YmxpYzoKLSAgICBzdGF0aWMgUGFzc1JlZlB0
cjxJREJBYm9ydEV2ZW50PiBjcmVhdGUoKTsKKyAgICBzdGF0aWMgUGFzc1JlZlB0cjxJREJBYm9y
dEV2ZW50PiBjcmVhdGUoUGFzc1JlZlB0cjxJREJBbnk+IHNvdXJjZSk7CiAgICAgLy8gRklYTUU6
IE5lZWQgdG8gYWxsb3cgY3JlYXRpb24gb2YgdGhlc2UgZXZlbnRzIGZyb20gSlMuCiAgICAgdmly
dHVhbCB+SURCQWJvcnRFdmVudCgpOwogCiAgICAgdmlydHVhbCBib29sIGlzSURCQWJvcnRFdmVu
dCgpIGNvbnN0IHsgcmV0dXJuIHRydWU7IH0KIAogcHJpdmF0ZToKLSAgICBJREJBYm9ydEV2ZW50
KCk7CisgICAgSURCQWJvcnRFdmVudChQYXNzUmVmUHRyPElEQkFueT4gc291cmNlKTsKIH07CiAK
IH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL3N0b3Jh
Z2UvSURCQ29tcGxldGVFdmVudC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkNvbXBs
ZXRlRXZlbnQuY3BwCmluZGV4IGYwYWQ5ZmM1MThkZmJiMGE1YjY4MzNkMTE5MzRkZTJlNmU3OTNk
NDAuLjIwZWU1N2FkZjc4ZmZiYjJjM2Y3MzA0MDJlMTkwYTM3NzQ0ZDQ2ODAgMTAwNjQ0Ci0tLSBh
L1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCQ29tcGxldGVFdmVudC5jcHAKKysrIGIvU291cmNl
L1dlYkNvcmUvc3RvcmFnZS9JREJDb21wbGV0ZUV2ZW50LmNwcApAQCAtMzYsMTMgKzM2LDEzIEBA
CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAotUGFzc1JlZlB0cjxJREJDb21wbGV0ZUV2ZW50PiBJ
REJDb21wbGV0ZUV2ZW50OjpjcmVhdGUoKQorUGFzc1JlZlB0cjxJREJDb21wbGV0ZUV2ZW50PiBJ
REJDb21wbGV0ZUV2ZW50OjpjcmVhdGUoUGFzc1JlZlB0cjxJREJBbnk+IHNvdXJjZSkKIHsKLSAg
ICByZXR1cm4gYWRvcHRSZWYobmV3IElEQkNvbXBsZXRlRXZlbnQoKSk7CisgICAgcmV0dXJuIGFk
b3B0UmVmKG5ldyBJREJDb21wbGV0ZUV2ZW50KHNvdXJjZSkpOwogfQogCi1JREJDb21wbGV0ZUV2
ZW50OjpJREJDb21wbGV0ZUV2ZW50KCkKLSAgICA6IElEQkV2ZW50KGV2ZW50TmFtZXMoKS5jb21w
bGV0ZUV2ZW50LCAwKSAvLyBGSVhNRTogc2V0IHRoZSBzb3VyY2UgdG8gdGhlIHRyYW5zYWN0aW9u
CitJREJDb21wbGV0ZUV2ZW50OjpJREJDb21wbGV0ZUV2ZW50KFBhc3NSZWZQdHI8SURCQW55PiBz
b3VyY2UpCisgICAgOiBJREJFdmVudChldmVudE5hbWVzKCkuY29tcGxldGVFdmVudCwgc291cmNl
LCBmYWxzZSkKIHsKIH0KIApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJD
b21wbGV0ZUV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkNvbXBsZXRlRXZlbnQu
aAppbmRleCBjNDA3MDk2YjdjMGI2YWJjYzNmNjZhZWU0NjcwZDA2MDZkZjI3YWM1Li5jMDA0YTcy
ZDBjMTc5Y2NjYzNlOTY2NGM0YzQ2NTMyZjllZmU3MDVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2Vi
Q29yZS9zdG9yYWdlL0lEQkNvbXBsZXRlRXZlbnQuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL0lEQkNvbXBsZXRlRXZlbnQuaApAQCAtNDAsMTQgKzQwLDE0IEBAIG5hbWVzcGFjZSBXZWJD
b3JlIHsKIAogY2xhc3MgSURCQ29tcGxldGVFdmVudCA6IHB1YmxpYyBJREJFdmVudCB7CiBwdWJs
aWM6Ci0gICAgc3RhdGljIFBhc3NSZWZQdHI8SURCQ29tcGxldGVFdmVudD4gY3JlYXRlKCk7Cisg
ICAgc3RhdGljIFBhc3NSZWZQdHI8SURCQ29tcGxldGVFdmVudD4gY3JlYXRlKFBhc3NSZWZQdHI8
SURCQW55PiBzb3VyY2UpOwogICAgIC8vIEZJWE1FOiBOZWVkIHRvIGFsbG93IGNyZWF0aW9uIG9m
IHRoZXNlIGV2ZW50cyBmcm9tIEpTLgogICAgIHZpcnR1YWwgfklEQkNvbXBsZXRlRXZlbnQoKTsK
IAogICAgIHZpcnR1YWwgYm9vbCBpc0lEQkNvbXBsZXRlRXZlbnQoKSBjb25zdCB7IHJldHVybiB0
cnVlOyB9CiAKIHByaXZhdGU6Ci0gICAgSURCQ29tcGxldGVFdmVudCgpOworICAgIElEQkNvbXBs
ZXRlRXZlbnQoUGFzc1JlZlB0cjxJREJBbnk+IHNvdXJjZSk7CiB9OwogCiB9IC8vIG5hbWVzcGFj
ZSBXZWJDb3JlCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQkVycm9yRXZl
bnQuY3BwIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJFcnJvckV2ZW50LmNwcAppbmRleCBj
YmE5ODBkNjk5NjJmMjIwODFlY2ExMjJiZTZhNGExY2M4ZTk2MDY5Li5lNTc2ZmE4N2ZkZDY1MzRh
ZTYzMGU2MDBlZDEyY2QxNjRkZjhlMWVhIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL0lEQkVycm9yRXZlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCRXJy
b3JFdmVudC5jcHAKQEAgLTQzLDcgKzQzLDcgQEAgUGFzc1JlZlB0cjxJREJFcnJvckV2ZW50PiBJ
REJFcnJvckV2ZW50OjpjcmVhdGUoUGFzc1JlZlB0cjxJREJBbnk+IHNvdXJjZSwgY29uc3QKIH0K
IAogSURCRXJyb3JFdmVudDo6SURCRXJyb3JFdmVudChQYXNzUmVmUHRyPElEQkFueT4gc291cmNl
LCBjb25zdCBJREJEYXRhYmFzZUVycm9yJiBlcnJvcikKLSAgICA6IElEQkV2ZW50KGV2ZW50TmFt
ZXMoKS5lcnJvckV2ZW50LCBzb3VyY2UpCisgICAgOiBJREJFdmVudChldmVudE5hbWVzKCkuZXJy
b3JFdmVudCwgc291cmNlLCB0cnVlKQogICAgICwgbV9jb2RlKGVycm9yLmNvZGUoKSkKICAgICAs
IG1fbWVzc2FnZShlcnJvci5tZXNzYWdlKCkpCiB7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29y
ZS9zdG9yYWdlL0lEQkV2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCRXZlbnQu
Y3BwCmluZGV4IGY5ZjYwNjA2YTE0NzM5ZWJkNjY1NjVkMzdhOWE2MjZmODE3MjQ3ZDMuLmE3ZjNk
YjEwN2MxMjVjZGUwM2VmNzhhYzM0ZTI2MjQwNTAzMDNmMDQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9X
ZWJDb3JlL3N0b3JhZ2UvSURCRXZlbnQuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2Uv
SURCRXZlbnQuY3BwCkBAIC0zNSw4ICszNSw4IEBACiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIAot
SURCRXZlbnQ6OklEQkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgUGFzc1JlZlB0cjxJ
REJBbnk+IHNvdXJjZSkKLSAgICA6IEV2ZW50KHR5cGUsIGZhbHNlLCBmYWxzZSkKK0lEQkV2ZW50
OjpJREJFdmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIFBhc3NSZWZQdHI8SURCQW55PiBz
b3VyY2UsIGJvb2wgY2FuQnViYmxlKQorICAgIDogRXZlbnQodHlwZSwgY2FuQnViYmxlLCB0cnVl
KQogICAgICwgbV9zb3VyY2Uoc291cmNlKQogewogfQpAQCAtNTAsNiArNTAsNTcgQEAgUGFzc1Jl
ZlB0cjxJREJBbnk+IElEQkV2ZW50Ojpzb3VyY2UoKQogICAgIHJldHVybiBtX3NvdXJjZTsKIH0K
IAorYm9vbCBJREJFdmVudDo6ZGlzcGF0Y2goVmVjdG9yPFJlZlB0cjxFdmVudFRhcmdldD4gPiYg
ZXZlbnRUYXJnZXRzKQoreworICAgIHNpemVfdCBzaXplID0gZXZlbnRUYXJnZXRzLnNpemUoKTsK
KyAgICBBU1NFUlQoc2l6ZSk7CisKKyAgICBzZXRFdmVudFBoYXNlKEV2ZW50OjpDQVBUVVJJTkdf
UEhBU0UpOworICAgIGZvciAoc2l6ZV90IGkgPSBzaXplIC0gMTsgaTsgLS1pKSB7IC8vIERvbid0
IGRvIHRoZSBmaXJzdCBlbGVtZW50LgorICAgICAgICBzZXRDdXJyZW50VGFyZ2V0KGV2ZW50VGFy
Z2V0c1tpXS5nZXQoKSk7CisgICAgICAgIGV2ZW50VGFyZ2V0c1tpXS0+ZmlyZUV2ZW50TGlzdGVu
ZXJzKHRoaXMpOworICAgICAgICBpZiAocHJvcGFnYXRpb25TdG9wcGVkKCkpCisgICAgICAgICAg
ICBnb3RvIGRvbmVEaXNwYXRjaGluZzsKKyAgICB9CisKKyAgICBzZXRFdmVudFBoYXNlKEV2ZW50
OjpBVF9UQVJHRVQpOworICAgIHNldEN1cnJlbnRUYXJnZXQoZXZlbnRUYXJnZXRzWzBdLmdldCgp
KTsKKyAgICBldmVudFRhcmdldHNbMF0tPmZpcmVFdmVudExpc3RlbmVycyh0aGlzKTsKKyAgICBp
ZiAocHJvcGFnYXRpb25TdG9wcGVkKCkgfHwgIWJ1YmJsZXMoKSB8fCBjYW5jZWxCdWJibGUoKSkK
KyAgICAgICAgZ290byBkb25lRGlzcGF0Y2hpbmc7CisKKyAgICBzZXRFdmVudFBoYXNlKEV2ZW50
OjpCVUJCTElOR19QSEFTRSk7CisgICAgZm9yIChzaXplX3QgaSA9IDE7IGkgPCBzaXplOyArK2kp
IHsgLy8gRG9uJ3QgZG8gdGhlIGZpcnN0IGVsZW1lbnQuCisgICAgICAgIHNldEN1cnJlbnRUYXJn
ZXQoZXZlbnRUYXJnZXRzW2ldLmdldCgpKTsKKyAgICAgICAgZXZlbnRUYXJnZXRzW2ldLT5maXJl
RXZlbnRMaXN0ZW5lcnModGhpcyk7CisgICAgICAgIGlmIChwcm9wYWdhdGlvblN0b3BwZWQoKSB8
fCBjYW5jZWxCdWJibGUoKSkKKyAgICAgICAgICAgIGdvdG8gZG9uZURpc3BhdGNoaW5nOworICAg
IH0KKworICAgIC8vIEZJWE1FOiAiLi4uSG93ZXZlciwgd2UgYWxzbyB3YW50ZWQgdG8gaW50ZWdy
YXRlIHRoZSB3aW5kb3cub25lcnJvciBmZWF0dXJlIGluCisgICAgLy8gICAgICAgIEhUTUw1LiBT
byBhZnRlciB3ZSd2ZSBmaXJlZCBhbiAiZXJyb3IiIGV2ZW50LCBpZiAucHJldmVudERlZmF1bHQo
KSB3YXMKKyAgICAvLyAgICAgICAgbmV2ZXIgY2FsbGVkIG9uIHRoZSBldmVudCwgd2UgZmlyZSBh
biBlcnJvciBldmVudCBvbiB0aGUgd2luZG93IChjYW4ndAorICAgIC8vICAgICAgICByZW1lbWJl
ciBpZiB0aGlzIGhhcHBlbnMgYmVmb3JlIG9yIGFmdGVyIHdlIGFib3J0IHRoZSB0cmFuc2FjdGlv
bikuCisgICAgLy8gICAgICAgIFRoaXMgaXMgYSBzZXBhcmF0ZSBldmVudCwgd2hpY2ggZm9yIGV4
YW1wbGUgbWVhbnMgdGhhdCBldmVuIGlmIHlvdQorICAgIC8vICAgICAgICBhdHRhY2ggYSBjYXB0
dXJpbmcgImVycm9yIiBoYW5kbGVyIG9uIHdpbmRvdywgeW91IHdvbid0IHNlZSBhbnkgZXZlbnRz
CisgICAgLy8gICAgICAgIHVubGVzcyBhbiBlcnJvciByZWFsbHkgd2VudCB1bmhhbmRsZWQuIEFu
ZCB5b3UgYWxzbyBjYW4ndCBjYWxsCisgICAgLy8gICAgICAgIC5wcmV2ZW50RGVmYXVsdCBvbiB0
aGUgZXJyb3IgZXZlbnQgZmlyZWQgb24gdGhlIHdpbmRvdyBpbiBvcmRlciB0bworICAgIC8vICAg
ICAgICBwcmV2ZW50IHRoZSB0cmFuc2FjdGlvbiBmcm9tIGJlaW5nIGFib3J0ZWQuIEl0J3MgcHVy
ZWx5IHRoZXJlIGZvcgorICAgIC8vICAgICAgICBlcnJvciByZXBvcnRpbmcgYW5kIGRpc3RpbmN0
bHkgZGlmZmVyZW50IGZyb20gdGhlIGV2ZW50IHByb3BhZ2F0aW5nIHRvCisgICAgLy8gICAgICAg
IHRoZSB3aW5kb3cuCisgICAgLy8gICAgICAgIAorICAgIC8vICAgICAgICBUaGlzIGlzIHNpbWls
YXIgdG8gaG93ICJlcnJvciIgZXZlbnRzIGFyZSBoYW5kbGVkIGluIHdvcmtlcnMuCisgICAgLy8g
ICAgICAgIAorICAgIC8vICAgICAgICAoSSB0aGluayB0aGF0IHNvIGZhciB3ZWJraXQgaGFzbid0
IGltcGxlbWVudGVkIHRoZSB3aW5kb3cub25lcnJvcgorICAgIC8vICAgICAgICBmZWF0dXJlIHll
dCwgc28geW91IHByb2JhYmx5IGRvbid0IHdhbnQgdG8gZmlyZSB0aGUgc2VwYXJhdGUgZXJyb3IK
KyAgICAvLyAgICAgICAgZXZlbnQgb24gdGhlIHdpbmRvdyB1bnRpbCB0aGF0IGhhcyBiZWVuIGlt
cGxlbWVudGVkKS4iCisKK2RvbmVEaXNwYXRjaGluZzoKKyAgICBzZXRDdXJyZW50VGFyZ2V0KDAp
OworICAgIHNldEV2ZW50UGhhc2UoMCk7CisgICAgcmV0dXJuICFkZWZhdWx0UHJldmVudGVkKCk7
Cit9CisKIH0gLy8gbmFtZXNwYWNlIFdlYkNvcmUKIAogI2VuZGlmCmRpZmYgLS1naXQgYS9Tb3Vy
Y2UvV2ViQ29yZS9zdG9yYWdlL0lEQkV2ZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lE
QkV2ZW50LmgKaW5kZXggYzQ0ZTQ0OWE1ZjI4NzI3NzgxYTQ4ZThmYTc4NzMzZjU5M2Q0MWNlZi4u
ZDI4ODg1YmU1Y2EzOThlYWM4ZmNhNTRmYzM4NmFhNGRkOTlkMDJhMyAxMDA2NDQKLS0tIGEvU291
cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJFdmVudC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3Jh
Z2UvSURCRXZlbnQuaApAQCAtMzIsOCArMzIsMTAgQEAKICNpZiBFTkFCTEUoSU5ERVhFRF9EQVRB
QkFTRSkKIAogI2luY2x1ZGUgIkV2ZW50LmgiCisjaW5jbHVkZSAiRXZlbnRUYXJnZXQuaCIKICNp
bmNsdWRlIDx3dGYvUGFzc1JlZlB0ci5oPgogI2luY2x1ZGUgPHd0Zi9SZWZQdHIuaD4KKyNpbmNs
dWRlIDx3dGYvVmVjdG9yLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtNDQsOSArNDYs
MTAgQEAgcHVibGljOgogICAgIHZpcnR1YWwgfklEQkV2ZW50KCk7CiAKICAgICBQYXNzUmVmUHRy
PElEQkFueT4gc291cmNlKCk7CisgICAgYm9vbCBkaXNwYXRjaChWZWN0b3I8UmVmUHRyPEV2ZW50
VGFyZ2V0PiA+Jik7IC8vIFRoZSB0YXJnZXQgZmlyc3QgYW5kIHRoZW4gaXRzIGFuY2VzdG9ycyBp
biBvcmRlciBvZiBob3cgdGhlIGV2ZW50IGJ1YmJsZXMuCiAKIHByb3RlY3RlZDoKLSAgICBJREJF
dmVudChjb25zdCBBdG9taWNTdHJpbmcmIHR5cGUsIFBhc3NSZWZQdHI8SURCQW55PiBzb3VyY2Up
OworICAgIElEQkV2ZW50KGNvbnN0IEF0b21pY1N0cmluZyYgdHlwZSwgUGFzc1JlZlB0cjxJREJB
bnk+IHNvdXJjZSwgYm9vbCBjYW5CdWJibGUpOwogCiBwcml2YXRlOgogICAgIFJlZlB0cjxJREJB
bnk+IG1fc291cmNlOwpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJSZXF1
ZXN0LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCUmVxdWVzdC5jcHAKaW5kZXggYTNh
MDRmMjZmZjBhOTIxODE5ZDMyNjlhMTQ0NDM2YmJhMjI5MjQ0Mi4uZjQ1YzQzNzM0MDIyZDlhZGVh
Y2JlMjE1NWJkMDc3ZGU4YjM3N2ZiYiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvc3RvcmFn
ZS9JREJSZXF1ZXN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQlJlcXVlc3Qu
Y3BwCkBAIC0xMzksMTIgKzEzOSwxOSBAQCBib29sIElEQlJlcXVlc3Q6OmRpc3BhdGNoRXZlbnQo
UGFzc1JlZlB0cjxFdmVudD4gZXZlbnQpCiAgICAgQVNTRVJUKG1fcmVhZHlTdGF0ZSA8IERPTkUp
OwogICAgIG1fcmVhZHlTdGF0ZSA9IERPTkU7CiAKLSAgICBib29sIHJldCA9IEV2ZW50VGFyZ2V0
OjpkaXNwYXRjaEV2ZW50KGV2ZW50KTsKLQotICAgIGlmIChtX3RyYW5zYWN0aW9uKQorICAgIFZl
Y3RvcjxSZWZQdHI8RXZlbnRUYXJnZXQ+ID4gdGFyZ2V0czsKKyAgICB0YXJnZXRzLmFwcGVuZCh0
aGlzKTsKKyAgICBBU1NFUlQoZXZlbnQtPnRhcmdldCgpID09IHRoaXMpOworICAgIEFTU0VSVChl
dmVudC0+aXNJREJFcnJvckV2ZW50KCkgfHwgZXZlbnQtPmlzSURCU3VjY2Vzc0V2ZW50KCkpOwor
ICAgIGJvb2wgZG9udFByZXZlbnREZWZhdWx0ID0gc3RhdGljX2Nhc3Q8SURCRXZlbnQqPihldmVu
dC5nZXQoKSktPmRpc3BhdGNoKHRhcmdldHMpOworCisgICAgaWYgKG1fdHJhbnNhY3Rpb24pIHsK
KyAgICAgICAgaWYgKGRvbnRQcmV2ZW50RGVmYXVsdCAmJiBldmVudC0+aXNJREJFcnJvckV2ZW50
KCkpCisgICAgICAgICAgICBtX3RyYW5zYWN0aW9uLT5hYm9ydCgpOwogICAgICAgICBtX3RyYW5z
YWN0aW9uLT5kaWRDb21wbGV0ZVRhc2tFdmVudHMoKTsKKyAgICB9CiAKLSAgICByZXR1cm4gcmV0
OworICAgIHJldHVybiBkb250UHJldmVudERlZmF1bHQ7CiB9CiAKIHZvaWQgSURCUmVxdWVzdDo6
ZW5xdWV1ZUV2ZW50KFBhc3NSZWZQdHI8RXZlbnQ+IGV2ZW50KQpkaWZmIC0tZ2l0IGEvU291cmNl
L1dlYkNvcmUvc3RvcmFnZS9JREJSZXF1ZXN0LmggYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lE
QlJlcXVlc3QuaAppbmRleCA3YTA0OWVlYTVkNjdiNDQyN2U5ZDI3MzAyMTQxNDllNTk1YjVmZDlm
Li44NDllYjlhZDFlNGNlYWZiM2RmMWM3OTg0YjAwMzhiY2VkNWY1MWMzIDEwMDY0NAotLS0gYS9T
b3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQlJlcXVlc3QuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dG9yYWdlL0lEQlJlcXVlc3QuaApAQCAtNDEsNiArNDEsNyBAQAogCiBuYW1lc3BhY2UgV2ViQ29y
ZSB7CiAKK2NsYXNzIElEQkV2ZW50OwogY2xhc3MgSURCVHJhbnNhY3Rpb25CYWNrZW5kSW50ZXJm
YWNlOwogCiBjbGFzcyBJREJSZXF1ZXN0IDogcHVibGljIElEQkNhbGxiYWNrcywgcHVibGljIEV2
ZW50VGFyZ2V0LCBwdWJsaWMgQWN0aXZlRE9NT2JqZWN0IHsKZGlmZiAtLWdpdCBhL1NvdXJjZS9X
ZWJDb3JlL3N0b3JhZ2UvSURCU3VjY2Vzc0V2ZW50LmNwcCBiL1NvdXJjZS9XZWJDb3JlL3N0b3Jh
Z2UvSURCU3VjY2Vzc0V2ZW50LmNwcAppbmRleCAyZGNkOTY0YmFiMGQwNDhjMThmMjQ0OGRiOTRi
NmU0ZDVlNjBmOTcyLi4xMTBiNzhiMDk0YzMyMTkyMjdhMGYxOWRhYWI3ZmIxMmZlMDdjZmM5IDEw
MDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQlN1Y2Nlc3NFdmVudC5jcHAKKysr
IGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJTdWNjZXNzRXZlbnQuY3BwCkBAIC00Miw3ICs0
Miw3IEBAIFBhc3NSZWZQdHI8SURCU3VjY2Vzc0V2ZW50PiBJREJTdWNjZXNzRXZlbnQ6OmNyZWF0
ZShQYXNzUmVmUHRyPElEQkFueT4gc291cmNlLCBQCiB9CiAKIElEQlN1Y2Nlc3NFdmVudDo6SURC
U3VjY2Vzc0V2ZW50KFBhc3NSZWZQdHI8SURCQW55PiBzb3VyY2UsIFBhc3NSZWZQdHI8SURCQW55
PiByZXN1bHQpCi0gICAgOiBJREJFdmVudChldmVudE5hbWVzKCkuc3VjY2Vzc0V2ZW50LCBzb3Vy
Y2UpCisgICAgOiBJREJFdmVudChldmVudE5hbWVzKCkuc3VjY2Vzc0V2ZW50LCBzb3VyY2UsIGZh
bHNlKQogICAgICwgbV9yZXN1bHQocmVzdWx0KQogewogfQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvc3RvcmFnZS9JREJUcmFuc2FjdGlvbi5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdl
L0lEQlRyYW5zYWN0aW9uLmNwcAppbmRleCAzOGViYzc1NWQ3ZTcwNjlmZjAxOTM2YTMxNjY5Yzg1
NGU5MmJjN2E2Li4zOGYwZGQ0NzlkYWUwODY0MDViYTA4MjRjYmYxZWUzMmU3NDU4MjIyIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQlRyYW5zYWN0aW9uLmNwcAorKysgYi9T
b3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQlRyYW5zYWN0aW9uLmNwcApAQCAtMTAwLDEyICsxMDAs
MTIgQEAgU2NyaXB0RXhlY3V0aW9uQ29udGV4dCogSURCVHJhbnNhY3Rpb246OnNjcmlwdEV4ZWN1
dGlvbkNvbnRleHQoKSBjb25zdAogCiB2b2lkIElEQlRyYW5zYWN0aW9uOjpvbkFib3J0KCkKIHsK
LSAgICBlbnF1ZXVlRXZlbnQoSURCQWJvcnRFdmVudDo6Y3JlYXRlKCkpOworICAgIGVucXVldWVF
dmVudChJREJBYm9ydEV2ZW50OjpjcmVhdGUoSURCQW55OjpjcmVhdGUodGhpcykpKTsKIH0KIAog
dm9pZCBJREJUcmFuc2FjdGlvbjo6b25Db21wbGV0ZSgpCiB7Ci0gICAgZW5xdWV1ZUV2ZW50KElE
QkNvbXBsZXRlRXZlbnQ6OmNyZWF0ZSgpKTsKKyAgICBlbnF1ZXVlRXZlbnQoSURCQ29tcGxldGVF
dmVudDo6Y3JlYXRlKElEQkFueTo6Y3JlYXRlKHRoaXMpKSk7CiB9CiAKIGJvb2wgSURCVHJhbnNh
Y3Rpb246OmNhblN1c3BlbmQoKSBjb25zdApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvc3Rv
cmFnZS9JREJUcmFuc2FjdGlvbi5oIGIvU291cmNlL1dlYkNvcmUvc3RvcmFnZS9JREJUcmFuc2Fj
dGlvbi5oCmluZGV4IDdhNjJlMjliN2Y4M2IyODlmOGFkYTliN2NmODc5MjI0Y2NjYzUyOTAuLjNm
ZGI5ZTUyMDAwYzZjMGQ3MDUxMTllNTUxMzQwZTU3MTFiNzU2NGMgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL3N0b3JhZ2UvSURCVHJhbnNhY3Rpb24uaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9z
dG9yYWdlL0lEQlRyYW5zYWN0aW9uLmgKQEAgLTUzLDYgKzUzLDggQEAgcHVibGljOgogICAgICAg
ICBWRVJTSU9OX0NIQU5HRSA9IDIKICAgICB9OwogCisgICAgSURCVHJhbnNhY3Rpb25CYWNrZW5k
SW50ZXJmYWNlKiBiYWNrZW5kKCkgY29uc3QgeyByZXR1cm4gbV9iYWNrZW5kLmdldCgpOyB9CisK
ICAgICB1bnNpZ25lZCBzaG9ydCBtb2RlKCkgY29uc3Q7CiAgICAgSURCRGF0YWJhc2UqIGRiKCk7
CiAgICAgUGFzc1JlZlB0cjxJREJPYmplY3RTdG9yZT4gb2JqZWN0U3RvcmUoY29uc3QgU3RyaW5n
JiBuYW1lLCBFeGNlcHRpb25Db2RlJik7CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9zdG9y
YWdlL0lEQlRyYW5zYWN0aW9uQmFja2VuZEltcGwuY3BwIGIvU291cmNlL1dlYkNvcmUvc3RvcmFn
ZS9JREJUcmFuc2FjdGlvbkJhY2tlbmRJbXBsLmNwcAppbmRleCBiNDdlNzYwOWYzYTA5NGMzMjUy
OThhNGFmOTUxZWIwNmVmNjA4NzhhLi4xMzU3ODM4MDczZGNmYmY4ZTNiYTY0ZWQ5YTAwYTFlY2M4
ZWFiM2I4IDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9zdG9yYWdlL0lEQlRyYW5zYWN0aW9u
QmFja2VuZEltcGwuY3BwCisrKyBiL1NvdXJjZS9XZWJDb3JlL3N0b3JhZ2UvSURCVHJhbnNhY3Rp
b25CYWNrZW5kSW1wbC5jcHAKQEAgLTE3OSwxMiArMTc5LDEyIEBAIHZvaWQgSURCVHJhbnNhY3Rp
b25CYWNrZW5kSW1wbDo6dGFza1RpbWVyRmlyZWQoVGltZXI8SURCVHJhbnNhY3Rpb25CYWNrZW5k
SW1wbD4qCiAgICAgaWYgKG1fc3RhdGUgPT0gU3RhcnRQZW5kaW5nKSB7CiAgICAgICAgIG1fdHJh
bnNhY3Rpb24tPmJlZ2luKCk7CiAgICAgICAgIG1fc3RhdGUgPSBSdW5uaW5nOwotICAgIH0gZWxz
ZQotICAgICAgICBBU1NFUlQobV9zdGF0ZSA9PSBSdW5uaW5nKTsKKyAgICB9CiAKICAgICBUYXNr
UXVldWUgcXVldWU7CiAgICAgcXVldWUuc3dhcChtX3Rhc2tRdWV1ZSk7CiAgICAgd2hpbGUgKCFx
dWV1ZS5pc0VtcHR5KCkgJiYgbV9zdGF0ZSAhPSBGaW5pc2hlZCkgeworICAgICAgICBBU1NFUlQo
bV9zdGF0ZSA9PSBSdW5uaW5nKTsKICAgICAgICAgT3duUHRyPFNjcmlwdEV4ZWN1dGlvbkNvbnRl
eHQ6OlRhc2s+IHRhc2socXVldWUuZmlyc3QoKS5yZWxlYXNlKCkpOwogICAgICAgICBxdWV1ZS5y
ZW1vdmVGaXJzdCgpOwogICAgICAgICBtX3BlbmRpbmdFdmVudHMrKzsK
</data>

          </attachment>
      

    </bug>

</bugzilla>