<?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>193227</bug_id>
          
          <creation_ts>2019-01-07 21:30:20 -0800</creation_ts>
          <short_desc>Web Inspector: Audit: provide a way to get related Accessibility properties for a given node</short_desc>
          <delta_ts>2019-01-22 16:33:06 -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>Web Inspector</component>
          <version>WebKit Nightly Build</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          <dependson>190754</dependson>
    
    <dependson>193149</dependson>
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Devin Rousso">hi</reporter>
          <assigned_to name="Devin Rousso">hi</assigned_to>
          <cc>aboxhall</cc>
    
    <cc>apinheiro</cc>
    
    <cc>cfleizach</cc>
    
    <cc>commit-queue</cc>
    
    <cc>dmazzoni</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>hi</cc>
    
    <cc>inspector-bugzilla-changes</cc>
    
    <cc>jcraig</cc>
    
    <cc>jdiggs</cc>
    
    <cc>joepeck</cc>
    
    <cc>samuel_white</cc>
    
    <cc>webkit-bug-importer</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1492537</commentid>
    <comment_count>0</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-01-07 21:30:20 -0800</bug_when>
    <thetext>This corresponds to the following `DOM.AccessibilityProperties` properties:
 - busy
 - checked
 - current
 - disabled
 - expanded
 - focused
 - headingLevel
 - hidden
 - hierarchyLevel
 - ignored
 - ignoredByDefault
 - invalid
 - isPopUpButton
 - label
 - liveRegionAtomic
 - liveRegionRelevant
 - liveRegionStatus
 - pressed
 - readonly
 - required
 - role
 - selected</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492538</commentid>
    <comment_count>1</comment_count>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-01-07 21:30:41 -0800</bug_when>
    <thetext>&lt;rdar://problem/46787862&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1492539</commentid>
    <comment_count>2</comment_count>
      <attachid>358569</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-01-07 21:32:20 -0800</bug_when>
    <thetext>Created attachment 358569
Patch

Will write tests later, once I have had a chance to look more into the other inspector accessibility tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1493536</commentid>
    <comment_count>3</comment_count>
      <attachid>358853</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-01-10 17:03:12 -0800</bug_when>
    <thetext>Created attachment 358853
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1494305</commentid>
    <comment_count>4</comment_count>
      <attachid>358853</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-01-14 14:16:55 -0800</bug_when>
    <thetext>Comment on attachment 358853
Patch

r-, this one needs some kind of test (even if it is not exhaustive but at least tests the code path. Otherwise this seems good.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1496981</commentid>
    <comment_count>5</comment_count>
      <attachid>359775</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-01-22 14:33:51 -0800</bug_when>
    <thetext>Created attachment 359775
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497008</commentid>
    <comment_count>6</comment_count>
      <attachid>359775</attachid>
    <who name="Joseph Pecoraro">joepeck</who>
    <bug_when>2019-01-22 15:00:48 -0800</bug_when>
    <thetext>Comment on attachment 359775
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=359775&amp;action=review

r=me

&gt; LayoutTests/inspector/audit/run-accessibility.html:21
&gt; +        return JSON.stringify(mapped);

You could prettyify this `JSON.stringify(mapped, null, 4)` which would make failure diffs easy to understand if a single property changed.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497012</commentid>
    <comment_count>7</comment_count>
      <attachid>359783</attachid>
    <who name="Devin Rousso">hi</who>
    <bug_when>2019-01-22 15:08:22 -0800</bug_when>
    <thetext>Created attachment 359783
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497087</commentid>
    <comment_count>8</comment_count>
      <attachid>359783</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-01-22 16:33:04 -0800</bug_when>
    <thetext>Comment on attachment 359783
Patch

Clearing flags on attachment: 359783

Committed r240309: &lt;https://trac.webkit.org/changeset/240309&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1497088</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2019-01-22 16:33:06 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358569</attachid>
            <date>2019-01-07 21:32:20 -0800</date>
            <delta_ts>2019-01-10 17:03:12 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>193227.diff</filename>
            <type>text/plain</type>
            <size>10281</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCA0ZmQ2N2RhMThkOS4uZGIxOTRhMGZlYTggMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAxOS0wMS0wNyAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogQXVkaXQ6IHByb3ZpZGUgYSB3YXkgdG8gZ2V0IHJl
bGF0ZWQgQWNjZXNzaWJpbGl0eSBwcm9wZXJ0aWVzIGZvciBhIGdpdmVuIG5vZGUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MzIyNworICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNDY3ODc4NjI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBpbnNw
ZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmlkbDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmg6CisgICAg
ICAgICogaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjphY2Nlc3NpYmxpdHlPYmplY3RGb3JOb2RlKTogQWRkZWQuCisg
ICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXM6Omdl
dENvbXB1dGVkUHJvcGVydGllcyk6IEFkZGVkLgorCiAyMDE5LTAxLTA2ICBEZXZpbiBSb3Vzc28g
IDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBBdWRpdDogY3Jl
YXRlIG5ldyBJREwgdHlwZSBmb3IgZXhwb3Npbmcgc3BlY2lhbCBmdW5jdGlvbmFsaXR5IGluIHRl
c3QgY29udGV4dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmNwcAppbmRleCAwZTRlYmY4
NTY5My4uMGQ5ZmEyMTg1OWYgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMuY3BwCkBA
IC0yNywxMCArMjcsMTQ3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSW5zcGVj
dG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmgiCiAKKyNpbmNsdWRlICJBWE9iamVjdENh
Y2hlLmgiCisjaW5jbHVkZSAiQWNjZXNzaWJpbGl0eU9iamVjdC5oIgorI2luY2x1ZGUgIkVsZW1l
bnQuaCIKKyNpbmNsdWRlICJOb2RlLmgiCisjaW5jbHVkZSAiU3BhY2VTcGxpdFN0cmluZy5oIgor
I2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4K
KwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiBJbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGls
aXRpZXM6Okluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcygpCiB7CiB9CiAKK3N0
YXRpYyBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBhY2Nlc3NpYmxpdHlPYmplY3RGb3JOb2RlKE5vZGUm
IG5vZGUpCit7CisgICAgaWYgKCFBWE9iamVjdENhY2hlOjphY2Nlc3NpYmlsaXR5RW5hYmxlZCgp
KQorICAgICAgICBBWE9iamVjdENhY2hlOjplbmFibGVBY2Nlc3NpYmlsaXR5KCk7CisKKyAgICBp
ZiAoQVhPYmplY3RDYWNoZSogYXhPYmplY3RDYWNoZSA9IG5vZGUuZG9jdW1lbnQoKS5heE9iamVj
dENhY2hlKCkpCisgICAgICAgIHJldHVybiBheE9iamVjdENhY2hlLT5nZXRPckNyZWF0ZSgmbm9k
ZSk7CisgICAgcmV0dXJuIG51bGxwdHI7Cit9CisKK09wdGlvbmFsPEluc3BlY3RvckF1ZGl0QWNj
ZXNzaWJpbGl0eVV0aWxpdGllczo6Q29tcHV0ZWRQcm9wZXJ0aWVzPiBJbnNwZWN0b3JBdWRpdEFj
Y2Vzc2liaWxpdHlVdGlsaXRpZXM6OmdldENvbXB1dGVkUHJvcGVydGllcyhOb2RlJiBub2RlKQor
eworICAgIGlmIChBY2Nlc3NpYmlsaXR5T2JqZWN0KiBheE9iamVjdCA9IGFjY2Vzc2libGl0eU9i
amVjdEZvck5vZGUobm9kZSkpIHsKKyAgICAgICAgQ29tcHV0ZWRQcm9wZXJ0aWVzIGNvbXB1dGVk
UHJvcGVydGllczsKKworICAgICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBjdXJyZW50ID0gYXhP
YmplY3Q7CisgICAgICAgIHdoaWxlIChjdXJyZW50ICYmICghY29tcHV0ZWRQcm9wZXJ0aWVzLmJ1
c3kgfHwgIWNvbXB1dGVkUHJvcGVydGllcy5idXN5LnZhbHVlKCkpKSB7CisgICAgICAgICAgICBj
b21wdXRlZFByb3BlcnRpZXMuYnVzeSA9IGN1cnJlbnQtPmlzQnVzeSgpOworICAgICAgICAgICAg
Y3VycmVudCA9IGN1cnJlbnQtPnBhcmVudE9iamVjdCgpOworICAgICAgICB9CisKKyAgICAgICAg
aWYgKGF4T2JqZWN0LT5zdXBwb3J0c0NoZWNrZWQoKSkgeworICAgICAgICAgICAgQWNjZXNzaWJp
bGl0eUJ1dHRvblN0YXRlIGNoZWNrVmFsdWUgPSBheE9iamVjdC0+Y2hlY2tib3hPclJhZGlvVmFs
dWUoKTsKKyAgICAgICAgICAgIGlmIChjaGVja1ZhbHVlID09IEFjY2Vzc2liaWxpdHlCdXR0b25T
dGF0ZTo6T24pCisgICAgICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmNoZWNrZWQgPSAi
dHJ1ZSJfczsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrVmFsdWUgPT0gQWNjZXNzaWJpbGl0
eUJ1dHRvblN0YXRlOjpNaXhlZCkKKyAgICAgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMu
Y2hlY2tlZCA9ICJtaXhlZCJfczsKKyAgICAgICAgICAgIGVsc2UgaWYgKGF4T2JqZWN0LT5pc0No
ZWNrZWQoKSkKKyAgICAgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuY2hlY2tlZCA9ICJ0
cnVlIl9zOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVy
dGllcy5jaGVja2VkID0gImZhbHNlIl9zOworICAgICAgICB9CisKKyAgICAgICAgc3dpdGNoIChh
eE9iamVjdC0+Y3VycmVudFN0YXRlKCkpIHsKKyAgICAgICAgY2FzZSBBY2Nlc3NpYmlsaXR5Q3Vy
cmVudFN0YXRlOjpGYWxzZToKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5jdXJyZW50
U3RhdGUgPSAiZmFsc2UiX3M7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBY2Nl
c3NpYmlsaXR5Q3VycmVudFN0YXRlOjpUcnVlOgorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0
aWVzLmN1cnJlbnRTdGF0ZSA9ICJ0cnVlIl9zOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAg
IGNhc2UgQWNjZXNzaWJpbGl0eUN1cnJlbnRTdGF0ZTo6UGFnZToKKyAgICAgICAgICAgIGNvbXB1
dGVkUHJvcGVydGllcy5jdXJyZW50U3RhdGUgPSAicGFnZSJfczsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIEFjY2Vzc2liaWxpdHlDdXJyZW50U3RhdGU6OlN0ZXA6CisgICAgICAg
ICAgICBjb21wdXRlZFByb3BlcnRpZXMuY3VycmVudFN0YXRlID0gInN0ZXAiX3M7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBY2Nlc3NpYmlsaXR5Q3VycmVudFN0YXRlOjpMb2Nh
dGlvbjoKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5jdXJyZW50U3RhdGUgPSAibG9j
YXRpb24iX3M7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBY2Nlc3NpYmlsaXR5
Q3VycmVudFN0YXRlOjpEYXRlOgorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmN1cnJl
bnRTdGF0ZSA9ICJkYXRlIl9zOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQWNj
ZXNzaWJpbGl0eUN1cnJlbnRTdGF0ZTo6VGltZToKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVy
dGllcy5jdXJyZW50U3RhdGUgPSAidGltZSJfczsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAg
ICB9CisKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmRpc2FibGVkID0gIWF4T2JqZWN0LT5p
c0VuYWJsZWQoKTsKKworICAgICAgICBpZiAoYXhPYmplY3QtPnN1cHBvcnRzRXhwYW5kZWQoKSkK
KyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5leHBhbmRlZCA9IGF4T2JqZWN0LT5pc0V4
cGFuZGVkKCk7CisKKyAgICAgICAgaWYgKGlzPEVsZW1lbnQ+KG5vZGUpICYmIGF4T2JqZWN0LT5j
YW5TZXRGb2N1c0F0dHJpYnV0ZSgpKQorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmZv
Y3VzZWQgPSBheE9iamVjdC0+aXNGb2N1c2VkKCk7CisKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0
aWVzLmhlYWRpbmdMZXZlbCA9IGF4T2JqZWN0LT5oZWFkaW5nTGV2ZWwoKTsKKyAgICAgICAgY29t
cHV0ZWRQcm9wZXJ0aWVzLmhpZGRlbiA9IGF4T2JqZWN0LT5pc0FYSGlkZGVuKCkgfHwgYXhPYmpl
Y3QtPmlzRE9NSGlkZGVuKCk7CisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5oaWVyYXJjaGlj
YWxMZXZlbCA9IGF4T2JqZWN0LT5oaWVyYXJjaGljYWxMZXZlbCgpOworICAgICAgICBjb21wdXRl
ZFByb3BlcnRpZXMuaWdub3JlZCA9IGF4T2JqZWN0LT5hY2Nlc3NpYmlsaXR5SXNJZ25vcmVkKCk7
CisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5pZ25vcmVkQnlEZWZhdWx0ID0gYXhPYmplY3Qt
PmFjY2Vzc2liaWxpdHlJc0lnbm9yZWRCeURlZmF1bHQoKTsKKworICAgICAgICBTdHJpbmcgaW52
YWxpZFZhbHVlID0gYXhPYmplY3QtPmludmFsaWRTdGF0dXMoKTsKKyAgICAgICAgaWYgKGludmFs
aWRWYWx1ZSA9PSAiZmFsc2UiKQorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmludmFs
aWRTdGF0dXMgPSAiZmFsc2UiX3M7CisgICAgICAgIGVsc2UgaWYgKGludmFsaWRWYWx1ZSA9PSAi
Z3JhbW1hciIpCisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuaW52YWxpZFN0YXR1cyA9
ICJncmFtbWFyIl9zOworICAgICAgICBlbHNlIGlmIChpbnZhbGlkVmFsdWUgPT0gInNwZWxsaW5n
IikKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5pbnZhbGlkU3RhdHVzID0gInNwZWxs
aW5nIl9zOworICAgICAgICBlbHNlCisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuaW52
YWxpZFN0YXR1cyA9ICJ0cnVlIl9zOworCisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5pc1Bv
cFVwQnV0dG9uID0gYXhPYmplY3QtPmlzUG9wVXBCdXR0b24oKSB8fCBheE9iamVjdC0+aGFzUG9w
dXAoKTsKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmxhYmVsID0gYXhPYmplY3QtPmNvbXB1
dGVkTGFiZWwoKTsKKworICAgICAgICBpZiAoYXhPYmplY3QtPnN1cHBvcnRzTGl2ZVJlZ2lvbigp
KSB7CisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMubGl2ZVJlZ2lvbkF0b21pYyA9IGF4
T2JqZWN0LT5saXZlUmVnaW9uQXRvbWljKCk7CisKKyAgICAgICAgICAgIFN0cmluZyBhcmlhUmVs
ZXZhbnRBdHRyVmFsdWUgPSBheE9iamVjdC0+bGl2ZVJlZ2lvblJlbGV2YW50KCk7CisgICAgICAg
ICAgICBpZiAoIWFyaWFSZWxldmFudEF0dHJWYWx1ZS5pc0VtcHR5KCkpIHsKKyAgICAgICAgICAg
ICAgICBWZWN0b3I8U3RyaW5nPiBsaXZlUmVnaW9uUmVsZXZhbnQ7CisgICAgICAgICAgICAgICAg
U3RyaW5nIGFyaWFSZWxldmFudEFkZGl0aW9ucyA9ICJhZGRpdGlvbnMiOworICAgICAgICAgICAg
ICAgIFN0cmluZyBhcmlhUmVsZXZhbnRSZW1vdmFscyA9ICJyZW1vdmFscyI7CisgICAgICAgICAg
ICAgICAgU3RyaW5nIGFyaWFSZWxldmFudFRleHQgPSAidGV4dCI7CisKKyAgICAgICAgICAgICAg
ICBjb25zdCBhdXRvJiB2YWx1ZXMgPSBTcGFjZVNwbGl0U3RyaW5nKGFyaWFSZWxldmFudEF0dHJW
YWx1ZSwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgaWYgKHZhbHVlcy5jb250YWlucygiYWxsIikp
IHsKKyAgICAgICAgICAgICAgICAgICAgbGl2ZVJlZ2lvblJlbGV2YW50LmFwcGVuZChhcmlhUmVs
ZXZhbnRBZGRpdGlvbnMpOworICAgICAgICAgICAgICAgICAgICBsaXZlUmVnaW9uUmVsZXZhbnQu
YXBwZW5kKGFyaWFSZWxldmFudFJlbW92YWxzKTsKKyAgICAgICAgICAgICAgICAgICAgbGl2ZVJl
Z2lvblJlbGV2YW50LmFwcGVuZChhcmlhUmVsZXZhbnRUZXh0KTsKKyAgICAgICAgICAgICAgICB9
IGVsc2UgeworICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWVzLmNvbnRhaW5zKGFyaWFSZWxl
dmFudEFkZGl0aW9ucykpCisgICAgICAgICAgICAgICAgICAgICAgICBsaXZlUmVnaW9uUmVsZXZh
bnQuYXBwZW5kKGFyaWFSZWxldmFudEFkZGl0aW9ucyk7CisgICAgICAgICAgICAgICAgICAgIGlm
ICh2YWx1ZXMuY29udGFpbnMoYXJpYVJlbGV2YW50UmVtb3ZhbHMpKQorICAgICAgICAgICAgICAg
ICAgICAgICAgbGl2ZVJlZ2lvblJlbGV2YW50LmFwcGVuZChhcmlhUmVsZXZhbnRSZW1vdmFscyk7
CisgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZXMuY29udGFpbnMoYXJpYVJlbGV2YW50VGV4
dCkpCisgICAgICAgICAgICAgICAgICAgICAgICBsaXZlUmVnaW9uUmVsZXZhbnQuYXBwZW5kKGFy
aWFSZWxldmFudFRleHQpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAgICBjb21w
dXRlZFByb3BlcnRpZXMubGl2ZVJlZ2lvblJlbGV2YW50ID0gbGl2ZVJlZ2lvblJlbGV2YW50Owor
ICAgICAgICAgICAgfQorCisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMubGl2ZVJlZ2lv
blN0YXR1cyA9IGF4T2JqZWN0LT5saXZlUmVnaW9uU3RhdHVzKCk7CisgICAgICAgIH0KKworICAg
ICAgICBjb21wdXRlZFByb3BlcnRpZXMucHJlc3NlZCA9IGF4T2JqZWN0LT5wcmVzc2VkSXNQcmVz
ZW50KCkgJiYgYXhPYmplY3QtPmlzUHJlc3NlZCgpOworCisgICAgICAgIGlmIChheE9iamVjdC0+
aXNUZXh0Q29udHJvbCgpKQorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLnJlYWRvbmx5
ID0gIWF4T2JqZWN0LT5jYW5TZXRWYWx1ZUF0dHJpYnV0ZSgpOworCisgICAgICAgIGlmIChheE9i
amVjdC0+c3VwcG9ydHNSZXF1aXJlZEF0dHJpYnV0ZSgpKQorICAgICAgICAgICAgY29tcHV0ZWRQ
cm9wZXJ0aWVzLnJlcXVpcmVkID0gYXhPYmplY3QtPmlzUmVxdWlyZWQoKTsKKworICAgICAgICBj
b21wdXRlZFByb3BlcnRpZXMucm9sZSA9IGF4T2JqZWN0LT5jb21wdXRlZFJvbGVTdHJpbmcoKTsK
KyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLnNlbGVjdGVkID0gYXhPYmplY3QtPmlzU2VsZWN0
ZWQoKTsKKworICAgICAgICByZXR1cm4gY29tcHV0ZWRQcm9wZXJ0aWVzOworICAgIH0KKyAgICBy
ZXR1cm4gV1RGOjpudWxsb3B0OworfQorCiB9IC8vIG5hbWVzcGFjZSBXZWJDb3JlCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5
VXRpbGl0aWVzLmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nl
c3NpYmlsaXR5VXRpbGl0aWVzLmgKaW5kZXggYTc3MGE4MDg3YTQuLmMyMDhkZThlNWIwIDEwMDY0
NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmls
aXR5VXRpbGl0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1
ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcy5oCkBAIC0yNSwxMSArMjUsMTUgQEAKIAogI3ByYWdt
YSBvbmNlCiAKKyNpbmNsdWRlIDx3dGYvRm9yd2FyZC5oPgorI2luY2x1ZGUgPHd0Zi9PcHRpb25h
bC5oPgogI2luY2x1ZGUgPHd0Zi9SZWYuaD4KICNpbmNsdWRlIDx3dGYvUmVmQ291bnRlZC5oPgog
CiBuYW1lc3BhY2UgV2ViQ29yZSB7CiAKK2NsYXNzIE5vZGU7CisKIGNsYXNzIEluc3BlY3RvckF1
ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcyA6IHB1YmxpYyBSZWZDb3VudGVkPEluc3BlY3RvckF1
ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcz4gewogcHVibGljOgogICAgIHN0YXRpYyBSZWY8SW5z
cGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzPiBjcmVhdGUoKQpAQCAtMzcsNiArNDEs
MzIgQEAgcHVibGljOgogICAgICAgICByZXR1cm4gYWRvcHRSZWYoKm5ldyBJbnNwZWN0b3JBdWRp
dEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMoKSk7CiAgICAgfQogCisgICAgc3RydWN0IENvbXB1dGVk
UHJvcGVydGllcyB7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGJ1c3k7CisgICAgICAgIFN0cmlu
ZyBjaGVja2VkOworICAgICAgICBTdHJpbmcgY3VycmVudFN0YXRlOworICAgICAgICBPcHRpb25h
bDxib29sPiBkaXNhYmxlZDsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gZXhwYW5kZWQ7CisgICAg
ICAgIE9wdGlvbmFsPGJvb2w+IGZvY3VzZWQ7CisgICAgICAgIE9wdGlvbmFsPGludD4gaGVhZGlu
Z0xldmVsOworICAgICAgICBPcHRpb25hbDxib29sPiBoaWRkZW47CisgICAgICAgIE9wdGlvbmFs
PGludD4gaGllcmFyY2hpY2FsTGV2ZWw7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGlnbm9yZWQ7
CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGlnbm9yZWRCeURlZmF1bHQ7CisgICAgICAgIFN0cmlu
ZyBpbnZhbGlkU3RhdHVzOworICAgICAgICBPcHRpb25hbDxib29sPiBpc1BvcFVwQnV0dG9uOwor
ICAgICAgICBTdHJpbmcgbGFiZWw7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGxpdmVSZWdpb25B
dG9taWM7CisgICAgICAgIE9wdGlvbmFsPFZlY3RvcjxTdHJpbmc+PiBsaXZlUmVnaW9uUmVsZXZh
bnQ7CisgICAgICAgIFN0cmluZyBsaXZlUmVnaW9uU3RhdHVzOworICAgICAgICBPcHRpb25hbDxi
b29sPiBwcmVzc2VkOworICAgICAgICBPcHRpb25hbDxib29sPiByZWFkb25seTsKKyAgICAgICAg
T3B0aW9uYWw8Ym9vbD4gcmVxdWlyZWQ7CisgICAgICAgIFN0cmluZyByb2xlOworICAgICAgICBP
cHRpb25hbDxib29sPiBzZWxlY3RlZDsKKyAgICB9OworICAgIE9wdGlvbmFsPENvbXB1dGVkUHJv
cGVydGllcz4gZ2V0Q29tcHV0ZWRQcm9wZXJ0aWVzKE5vZGUmKTsKKwogcHJpdmF0ZToKICAgICBJ
bnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMoKTsKIH07CmRpZmYgLS1naXQgYS9T
b3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0
aWVzLmlkbCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFjY2Vzc2li
aWxpdHlVdGlsaXRpZXMuaWRsCmluZGV4IDdjY2Q3MmJiMDkzLi43MzliZTk4YWU0YSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0
eVV0aWxpdGllcy5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1
ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcy5pZGwKQEAgLTI4LDQgKzI4LDMyIEBACiAgICAgSlNH
ZW5lcmF0ZVRvSlNPYmplY3QsCiAgICAgTm9JbnRlcmZhY2VPYmplY3QsCiBdIGludGVyZmFjZSBJ
bnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMgeworICAgIENvbXB1dGVkUHJvcGVy
dGllcz8gZ2V0Q29tcHV0ZWRQcm9wZXJ0aWVzKE5vZGUgbm9kZSk7Cit9OworCitbCisgICAgSlNH
ZW5lcmF0ZVRvSlNPYmplY3QsCitdIGRpY3Rpb25hcnkgQ29tcHV0ZWRQcm9wZXJ0aWVzIHsKKyAg
ICBib29sZWFuPyBidXN5OworICAgIERPTVN0cmluZz8gY2hlY2tlZDsKKyAgICBET01TdHJpbmc/
IGN1cnJlbnRTdGF0ZTsKKyAgICBib29sZWFuPyBkaXNhYmxlZDsKKyAgICBib29sZWFuPyBleHBh
bmRlZDsKKyAgICBib29sZWFuPyBmb2N1c2VkOworICAgIGxvbmc/IGhlYWRpbmdMZXZlbDsKKyAg
ICBib29sZWFuPyBoaWRkZW47CisgICAgbG9uZz8gaGllcmFyY2hpY2FsTGV2ZWw7CisgICAgYm9v
bGVhbj8gaWdub3JlZDsKKyAgICBib29sZWFuPyBpZ25vcmVkQnlEZWZhdWx0OworICAgIERPTVN0
cmluZz8gaW52YWxpZFN0YXR1czsKKyAgICBib29sZWFuPyBpc1BvcFVwQnV0dG9uOworICAgIERP
TVN0cmluZz8gbGFiZWw7CisgICAgYm9vbGVhbj8gbGl2ZVJlZ2lvbkF0b21pYzsKKyAgICBzZXF1
ZW5jZTxET01TdHJpbmc+PyBsaXZlUmVnaW9uUmVsZXZhbnQ7CisgICAgRE9NU3RyaW5nPyBsaXZl
UmVnaW9uU3RhdHVzOworICAgIGJvb2xlYW4/IHByZXNzZWQ7CisgICAgYm9vbGVhbj8gcmVhZG9u
bHk7CisgICAgYm9vbGVhbj8gcmVxdWlyZWQ7CisgICAgRE9NU3RyaW5nPyByb2xlOworICAgIGJv
b2xlYW4/IHNlbGVjdGVkOwogfTsK
</data>
<flag name="commit-queue"
          id="375390"
          type_id="3"
          status="-"
          setter="hi"
    />
          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>358853</attachid>
            <date>2019-01-10 17:03:12 -0800</date>
            <delta_ts>2019-01-22 14:33:50 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>193227.diff</filename>
            <type>text/plain</type>
            <size>12861</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBjMDUwNjhkYzAwMy4uZmQ2MzZmNTViMDQgMTAwNjQ0Ci0tLSBhL1NvdXJj
ZS9XZWJDb3JlL0NoYW5nZUxvZworKysgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOSBAQAorMjAxOS0wMS0xMCAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+
CisKKyAgICAgICAgV2ViIEluc3BlY3RvcjogQXVkaXQ6IHByb3ZpZGUgYSB3YXkgdG8gZ2V0IHJl
bGF0ZWQgQWNjZXNzaWJpbGl0eSBwcm9wZXJ0aWVzIGZvciBhIGdpdmVuIG5vZGUKKyAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MzIyNworICAgICAgICA8
cmRhcjovL3Byb2JsZW0vNDY3ODc4NjI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChP
T1BTISkuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzIChPT1BTISkuCisKKyAgICAgICAgKiBpbnNw
ZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmlkbDoKKyAgICAgICAg
KiBpbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmg6CisgICAg
ICAgICogaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcy5jcHA6
CisgICAgICAgIChXZWJDb3JlOjphY2Nlc3NpYmxpdHlPYmplY3RGb3JOb2RlKTogQWRkZWQuCisg
ICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXM6Omdl
dENvbXB1dGVkUHJvcGVydGllcyk6IEFkZGVkLgorCiAyMDE5LTAxLTEwICBEZXZpbiBSb3Vzc28g
IDxkcm91c3NvQGFwcGxlLmNvbT4KIAogICAgICAgICBXZWIgSW5zcGVjdG9yOiBBdWRpdDogY3Jl
YXRlIG5ldyBJREwgdHlwZSBmb3IgZXhwb3Npbmcgc3BlY2lhbCBmdW5jdGlvbmFsaXR5IGluIHRl
c3QgY29udGV4dApkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3Rv
ckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcy5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0
b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmNwcAppbmRleCAzYzg0ZmMz
YjljYS4uNWI4MzdiMjE1YWQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMuY3BwCisrKyBiL1NvdXJjZS9XZWJD
b3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMuY3BwCkBA
IC0yNywxMiArMjcsMTU3IEBACiAjaW5jbHVkZSAiY29uZmlnLmgiCiAjaW5jbHVkZSAiSW5zcGVj
dG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmgiCiAKKyNpbmNsdWRlICJBWE9iamVjdENh
Y2hlLmgiCisjaW5jbHVkZSAiQWNjZXNzaWJpbGl0eU9iamVjdC5oIgorI2luY2x1ZGUgIkVsZW1l
bnQuaCIKKyNpbmNsdWRlICJOb2RlLmgiCisjaW5jbHVkZSAiU3BhY2VTcGxpdFN0cmluZy5oIgor
I2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9XVEZTdHJpbmcuaD4K
KwogbmFtZXNwYWNlIFdlYkNvcmUgewogCiB1c2luZyBuYW1lc3BhY2UgSW5zcGVjdG9yOwogCi1J
bnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXM6Okluc3BlY3RvckF1ZGl0QWNjZXNz
aWJpbGl0eVV0aWxpdGllcygpCisjZGVmaW5lIEVSUk9SX0lGX05PX0FDVElWRV9BVURJVCgpIGlm
ICghbV9hdWRpdEFnZW50Lmhhc0FjdGl2ZUF1ZGl0KCkpIHJldHVybiBFeGNlcHRpb24geyBOb3RB
bGxvd2VkRXJyb3IsICJVbmFibGUgdG8gcnVuIG91dHNpZGUgb2YgYW4gSW5zcGVjdG9yIEF1ZGl0
Il9zIH07CisKK0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllczo6SW5zcGVjdG9y
QXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzKEluc3BlY3RvckF1ZGl0QWdlbnQmIGF1ZGl0QWdl
bnQpCisgICAgOiBtX2F1ZGl0QWdlbnQoYXVkaXRBZ2VudCkKIHsKIH0KIAorc3RhdGljIEFjY2Vz
c2liaWxpdHlPYmplY3QqIGFjY2Vzc2libGl0eU9iamVjdEZvck5vZGUoTm9kZSYgbm9kZSkKK3sK
KyAgICBpZiAoIUFYT2JqZWN0Q2FjaGU6OmFjY2Vzc2liaWxpdHlFbmFibGVkKCkpCisgICAgICAg
IEFYT2JqZWN0Q2FjaGU6OmVuYWJsZUFjY2Vzc2liaWxpdHkoKTsKKworICAgIGlmIChBWE9iamVj
dENhY2hlKiBheE9iamVjdENhY2hlID0gbm9kZS5kb2N1bWVudCgpLmF4T2JqZWN0Q2FjaGUoKSkK
KyAgICAgICAgcmV0dXJuIGF4T2JqZWN0Q2FjaGUtPmdldE9yQ3JlYXRlKCZub2RlKTsKKyAgICBy
ZXR1cm4gbnVsbHB0cjsKK30KKworRXhjZXB0aW9uT3I8T3B0aW9uYWw8SW5zcGVjdG9yQXVkaXRB
Y2Nlc3NpYmlsaXR5VXRpbGl0aWVzOjpDb21wdXRlZFByb3BlcnRpZXM+PiBJbnNwZWN0b3JBdWRp
dEFjY2Vzc2liaWxpdHlVdGlsaXRpZXM6OmdldENvbXB1dGVkUHJvcGVydGllcyhOb2RlJiBub2Rl
KQoreworICAgIEVSUk9SX0lGX05PX0FDVElWRV9BVURJVCgpOworCisgICAgT3B0aW9uYWw8SW5z
cGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzOjpDb21wdXRlZFByb3BlcnRpZXM+IHJl
c3VsdDsKKworICAgIGlmIChBY2Nlc3NpYmlsaXR5T2JqZWN0KiBheE9iamVjdCA9IGFjY2Vzc2li
bGl0eU9iamVjdEZvck5vZGUobm9kZSkpIHsKKyAgICAgICAgQ29tcHV0ZWRQcm9wZXJ0aWVzIGNv
bXB1dGVkUHJvcGVydGllczsKKworICAgICAgICBBY2Nlc3NpYmlsaXR5T2JqZWN0KiBjdXJyZW50
ID0gYXhPYmplY3Q7CisgICAgICAgIHdoaWxlIChjdXJyZW50ICYmICghY29tcHV0ZWRQcm9wZXJ0
aWVzLmJ1c3kgfHwgIWNvbXB1dGVkUHJvcGVydGllcy5idXN5LnZhbHVlKCkpKSB7CisgICAgICAg
ICAgICBjb21wdXRlZFByb3BlcnRpZXMuYnVzeSA9IGN1cnJlbnQtPmlzQnVzeSgpOworICAgICAg
ICAgICAgY3VycmVudCA9IGN1cnJlbnQtPnBhcmVudE9iamVjdCgpOworICAgICAgICB9CisKKyAg
ICAgICAgaWYgKGF4T2JqZWN0LT5zdXBwb3J0c0NoZWNrZWQoKSkgeworICAgICAgICAgICAgQWNj
ZXNzaWJpbGl0eUJ1dHRvblN0YXRlIGNoZWNrVmFsdWUgPSBheE9iamVjdC0+Y2hlY2tib3hPclJh
ZGlvVmFsdWUoKTsKKyAgICAgICAgICAgIGlmIChjaGVja1ZhbHVlID09IEFjY2Vzc2liaWxpdHlC
dXR0b25TdGF0ZTo6T24pCisgICAgICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmNoZWNr
ZWQgPSAidHJ1ZSJfczsKKyAgICAgICAgICAgIGVsc2UgaWYgKGNoZWNrVmFsdWUgPT0gQWNjZXNz
aWJpbGl0eUJ1dHRvblN0YXRlOjpNaXhlZCkKKyAgICAgICAgICAgICAgICBjb21wdXRlZFByb3Bl
cnRpZXMuY2hlY2tlZCA9ICJtaXhlZCJfczsKKyAgICAgICAgICAgIGVsc2UgaWYgKGF4T2JqZWN0
LT5pc0NoZWNrZWQoKSkKKyAgICAgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuY2hlY2tl
ZCA9ICJ0cnVlIl9zOworICAgICAgICAgICAgZWxzZQorICAgICAgICAgICAgICAgIGNvbXB1dGVk
UHJvcGVydGllcy5jaGVja2VkID0gImZhbHNlIl9zOworICAgICAgICB9CisKKyAgICAgICAgc3dp
dGNoIChheE9iamVjdC0+Y3VycmVudFN0YXRlKCkpIHsKKyAgICAgICAgY2FzZSBBY2Nlc3NpYmls
aXR5Q3VycmVudFN0YXRlOjpGYWxzZToKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5j
dXJyZW50U3RhdGUgPSAiZmFsc2UiX3M7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2Fz
ZSBBY2Nlc3NpYmlsaXR5Q3VycmVudFN0YXRlOjpUcnVlOgorICAgICAgICAgICAgY29tcHV0ZWRQ
cm9wZXJ0aWVzLmN1cnJlbnRTdGF0ZSA9ICJ0cnVlIl9zOworICAgICAgICAgICAgYnJlYWs7Cisg
ICAgICAgIGNhc2UgQWNjZXNzaWJpbGl0eUN1cnJlbnRTdGF0ZTo6UGFnZToKKyAgICAgICAgICAg
IGNvbXB1dGVkUHJvcGVydGllcy5jdXJyZW50U3RhdGUgPSAicGFnZSJfczsKKyAgICAgICAgICAg
IGJyZWFrOworICAgICAgICBjYXNlIEFjY2Vzc2liaWxpdHlDdXJyZW50U3RhdGU6OlN0ZXA6Cisg
ICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuY3VycmVudFN0YXRlID0gInN0ZXAiX3M7Cisg
ICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBY2Nlc3NpYmlsaXR5Q3VycmVudFN0YXRl
OjpMb2NhdGlvbjoKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5jdXJyZW50U3RhdGUg
PSAibG9jYXRpb24iX3M7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBY2Nlc3Np
YmlsaXR5Q3VycmVudFN0YXRlOjpEYXRlOgorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVz
LmN1cnJlbnRTdGF0ZSA9ICJkYXRlIl9zOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNh
c2UgQWNjZXNzaWJpbGl0eUN1cnJlbnRTdGF0ZTo6VGltZToKKyAgICAgICAgICAgIGNvbXB1dGVk
UHJvcGVydGllcy5jdXJyZW50U3RhdGUgPSAidGltZSJfczsKKyAgICAgICAgICAgIGJyZWFrOwor
ICAgICAgICB9CisKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmRpc2FibGVkID0gIWF4T2Jq
ZWN0LT5pc0VuYWJsZWQoKTsKKworICAgICAgICBpZiAoYXhPYmplY3QtPnN1cHBvcnRzRXhwYW5k
ZWQoKSkKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5leHBhbmRlZCA9IGF4T2JqZWN0
LT5pc0V4cGFuZGVkKCk7CisKKyAgICAgICAgaWYgKGlzPEVsZW1lbnQ+KG5vZGUpICYmIGF4T2Jq
ZWN0LT5jYW5TZXRGb2N1c0F0dHJpYnV0ZSgpKQorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0
aWVzLmZvY3VzZWQgPSBheE9iamVjdC0+aXNGb2N1c2VkKCk7CisKKyAgICAgICAgY29tcHV0ZWRQ
cm9wZXJ0aWVzLmhlYWRpbmdMZXZlbCA9IGF4T2JqZWN0LT5oZWFkaW5nTGV2ZWwoKTsKKyAgICAg
ICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmhpZGRlbiA9IGF4T2JqZWN0LT5pc0FYSGlkZGVuKCkgfHwg
YXhPYmplY3QtPmlzRE9NSGlkZGVuKCk7CisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5oaWVy
YXJjaGljYWxMZXZlbCA9IGF4T2JqZWN0LT5oaWVyYXJjaGljYWxMZXZlbCgpOworICAgICAgICBj
b21wdXRlZFByb3BlcnRpZXMuaWdub3JlZCA9IGF4T2JqZWN0LT5hY2Nlc3NpYmlsaXR5SXNJZ25v
cmVkKCk7CisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5pZ25vcmVkQnlEZWZhdWx0ID0gYXhP
YmplY3QtPmFjY2Vzc2liaWxpdHlJc0lnbm9yZWRCeURlZmF1bHQoKTsKKworICAgICAgICBTdHJp
bmcgaW52YWxpZFZhbHVlID0gYXhPYmplY3QtPmludmFsaWRTdGF0dXMoKTsKKyAgICAgICAgaWYg
KGludmFsaWRWYWx1ZSA9PSAiZmFsc2UiKQorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVz
LmludmFsaWRTdGF0dXMgPSAiZmFsc2UiX3M7CisgICAgICAgIGVsc2UgaWYgKGludmFsaWRWYWx1
ZSA9PSAiZ3JhbW1hciIpCisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuaW52YWxpZFN0
YXR1cyA9ICJncmFtbWFyIl9zOworICAgICAgICBlbHNlIGlmIChpbnZhbGlkVmFsdWUgPT0gInNw
ZWxsaW5nIikKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5pbnZhbGlkU3RhdHVzID0g
InNwZWxsaW5nIl9zOworICAgICAgICBlbHNlCisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRp
ZXMuaW52YWxpZFN0YXR1cyA9ICJ0cnVlIl9zOworCisgICAgICAgIGNvbXB1dGVkUHJvcGVydGll
cy5pc1BvcFVwQnV0dG9uID0gYXhPYmplY3QtPmlzUG9wVXBCdXR0b24oKSB8fCBheE9iamVjdC0+
aGFzUG9wdXAoKTsKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmxhYmVsID0gYXhPYmplY3Qt
PmNvbXB1dGVkTGFiZWwoKTsKKworICAgICAgICBpZiAoYXhPYmplY3QtPnN1cHBvcnRzTGl2ZVJl
Z2lvbigpKSB7CisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMubGl2ZVJlZ2lvbkF0b21p
YyA9IGF4T2JqZWN0LT5saXZlUmVnaW9uQXRvbWljKCk7CisKKyAgICAgICAgICAgIFN0cmluZyBh
cmlhUmVsZXZhbnRBdHRyVmFsdWUgPSBheE9iamVjdC0+bGl2ZVJlZ2lvblJlbGV2YW50KCk7Cisg
ICAgICAgICAgICBpZiAoIWFyaWFSZWxldmFudEF0dHJWYWx1ZS5pc0VtcHR5KCkpIHsKKyAgICAg
ICAgICAgICAgICBWZWN0b3I8U3RyaW5nPiBsaXZlUmVnaW9uUmVsZXZhbnQ7CisgICAgICAgICAg
ICAgICAgU3RyaW5nIGFyaWFSZWxldmFudEFkZGl0aW9ucyA9ICJhZGRpdGlvbnMiOworICAgICAg
ICAgICAgICAgIFN0cmluZyBhcmlhUmVsZXZhbnRSZW1vdmFscyA9ICJyZW1vdmFscyI7CisgICAg
ICAgICAgICAgICAgU3RyaW5nIGFyaWFSZWxldmFudFRleHQgPSAidGV4dCI7CisKKyAgICAgICAg
ICAgICAgICBjb25zdCBhdXRvJiB2YWx1ZXMgPSBTcGFjZVNwbGl0U3RyaW5nKGFyaWFSZWxldmFu
dEF0dHJWYWx1ZSwgdHJ1ZSk7CisgICAgICAgICAgICAgICAgaWYgKHZhbHVlcy5jb250YWlucygi
YWxsIikpIHsKKyAgICAgICAgICAgICAgICAgICAgbGl2ZVJlZ2lvblJlbGV2YW50LmFwcGVuZChh
cmlhUmVsZXZhbnRBZGRpdGlvbnMpOworICAgICAgICAgICAgICAgICAgICBsaXZlUmVnaW9uUmVs
ZXZhbnQuYXBwZW5kKGFyaWFSZWxldmFudFJlbW92YWxzKTsKKyAgICAgICAgICAgICAgICAgICAg
bGl2ZVJlZ2lvblJlbGV2YW50LmFwcGVuZChhcmlhUmVsZXZhbnRUZXh0KTsKKyAgICAgICAgICAg
ICAgICB9IGVsc2UgeworICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWVzLmNvbnRhaW5zKGFy
aWFSZWxldmFudEFkZGl0aW9ucykpCisgICAgICAgICAgICAgICAgICAgICAgICBsaXZlUmVnaW9u
UmVsZXZhbnQuYXBwZW5kKGFyaWFSZWxldmFudEFkZGl0aW9ucyk7CisgICAgICAgICAgICAgICAg
ICAgIGlmICh2YWx1ZXMuY29udGFpbnMoYXJpYVJlbGV2YW50UmVtb3ZhbHMpKQorICAgICAgICAg
ICAgICAgICAgICAgICAgbGl2ZVJlZ2lvblJlbGV2YW50LmFwcGVuZChhcmlhUmVsZXZhbnRSZW1v
dmFscyk7CisgICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZXMuY29udGFpbnMoYXJpYVJlbGV2
YW50VGV4dCkpCisgICAgICAgICAgICAgICAgICAgICAgICBsaXZlUmVnaW9uUmVsZXZhbnQuYXBw
ZW5kKGFyaWFSZWxldmFudFRleHQpOworICAgICAgICAgICAgICAgIH0KKyAgICAgICAgICAgICAg
ICBjb21wdXRlZFByb3BlcnRpZXMubGl2ZVJlZ2lvblJlbGV2YW50ID0gbGl2ZVJlZ2lvblJlbGV2
YW50OworICAgICAgICAgICAgfQorCisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMubGl2
ZVJlZ2lvblN0YXR1cyA9IGF4T2JqZWN0LT5saXZlUmVnaW9uU3RhdHVzKCk7CisgICAgICAgIH0K
KworICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMucHJlc3NlZCA9IGF4T2JqZWN0LT5wcmVzc2Vk
SXNQcmVzZW50KCkgJiYgYXhPYmplY3QtPmlzUHJlc3NlZCgpOworCisgICAgICAgIGlmIChheE9i
amVjdC0+aXNUZXh0Q29udHJvbCgpKQorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLnJl
YWRvbmx5ID0gIWF4T2JqZWN0LT5jYW5TZXRWYWx1ZUF0dHJpYnV0ZSgpOworCisgICAgICAgIGlm
IChheE9iamVjdC0+c3VwcG9ydHNSZXF1aXJlZEF0dHJpYnV0ZSgpKQorICAgICAgICAgICAgY29t
cHV0ZWRQcm9wZXJ0aWVzLnJlcXVpcmVkID0gYXhPYmplY3QtPmlzUmVxdWlyZWQoKTsKKworICAg
ICAgICBjb21wdXRlZFByb3BlcnRpZXMucm9sZSA9IGF4T2JqZWN0LT5jb21wdXRlZFJvbGVTdHJp
bmcoKTsKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLnNlbGVjdGVkID0gYXhPYmplY3QtPmlz
U2VsZWN0ZWQoKTsKKworICAgICAgICByZXN1bHQgPSBjb21wdXRlZFByb3BlcnRpZXM7CisgICAg
fQorCisgICAgcmV0dXJuIHJlc3VsdDsKK30KKwogfSAvLyBuYW1lc3BhY2UgV2ViQ29yZQpkaWZm
IC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJp
bGl0eVV0aWxpdGllcy5oIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0
QWNjZXNzaWJpbGl0eVV0aWxpdGllcy5oCmluZGV4IDM3YzY3YmIxZjI1Li5lOWUwODlmNDNkZSAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNz
aWJpbGl0eVV0aWxpdGllcy5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0
b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMuaApAQCAtMjUsMjAgKzI1LDU0IEBACiAKICNw
cmFnbWEgb25jZQogCisjaW5jbHVkZSAiRXhjZXB0aW9uT3IuaCIKKyNpbmNsdWRlIDxKYXZhU2Ny
aXB0Q29yZS9JbnNwZWN0b3JBdWRpdEFnZW50Lmg+CisjaW5jbHVkZSA8d3RmL0ZvcndhcmQuaD4K
KyNpbmNsdWRlIDx3dGYvT3B0aW9uYWwuaD4KICNpbmNsdWRlIDx3dGYvUmVmLmg+CiAjaW5jbHVk
ZSA8d3RmL1JlZkNvdW50ZWQuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCitjbGFzcyBOb2Rl
OworCiBjbGFzcyBJbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMgOiBwdWJsaWMg
UmVmQ291bnRlZDxJbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXM+IHsKIHB1Ymxp
YzoKLSAgICBzdGF0aWMgUmVmPEluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcz4g
Y3JlYXRlKCkKKyAgICBzdGF0aWMgUmVmPEluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxp
dGllcz4gY3JlYXRlKEluc3BlY3Rvcjo6SW5zcGVjdG9yQXVkaXRBZ2VudCYgYXVkaXRBZ2VudCkK
ICAgICB7Ci0gICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3IEluc3BlY3RvckF1ZGl0QWNjZXNz
aWJpbGl0eVV0aWxpdGllcygpKTsKKyAgICAgICAgcmV0dXJuIGFkb3B0UmVmKCpuZXcgSW5zcGVj
dG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzKGF1ZGl0QWdlbnQpKTsKICAgICB9CiAKKyAg
ICBzdHJ1Y3QgQ29tcHV0ZWRQcm9wZXJ0aWVzIHsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gYnVz
eTsKKyAgICAgICAgU3RyaW5nIGNoZWNrZWQ7CisgICAgICAgIFN0cmluZyBjdXJyZW50U3RhdGU7
CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGRpc2FibGVkOworICAgICAgICBPcHRpb25hbDxib29s
PiBleHBhbmRlZDsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gZm9jdXNlZDsKKyAgICAgICAgT3B0
aW9uYWw8aW50PiBoZWFkaW5nTGV2ZWw7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGhpZGRlbjsK
KyAgICAgICAgT3B0aW9uYWw8aW50PiBoaWVyYXJjaGljYWxMZXZlbDsKKyAgICAgICAgT3B0aW9u
YWw8Ym9vbD4gaWdub3JlZDsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gaWdub3JlZEJ5RGVmYXVs
dDsKKyAgICAgICAgU3RyaW5nIGludmFsaWRTdGF0dXM7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+
IGlzUG9wVXBCdXR0b247CisgICAgICAgIFN0cmluZyBsYWJlbDsKKyAgICAgICAgT3B0aW9uYWw8
Ym9vbD4gbGl2ZVJlZ2lvbkF0b21pYzsKKyAgICAgICAgT3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+
IGxpdmVSZWdpb25SZWxldmFudDsKKyAgICAgICAgU3RyaW5nIGxpdmVSZWdpb25TdGF0dXM7Cisg
ICAgICAgIE9wdGlvbmFsPGJvb2w+IHByZXNzZWQ7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IHJl
YWRvbmx5OworICAgICAgICBPcHRpb25hbDxib29sPiByZXF1aXJlZDsKKyAgICAgICAgU3RyaW5n
IHJvbGU7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IHNlbGVjdGVkOworICAgIH07CisgICAgRXhj
ZXB0aW9uT3I8T3B0aW9uYWw8Q29tcHV0ZWRQcm9wZXJ0aWVzPj4gZ2V0Q29tcHV0ZWRQcm9wZXJ0
aWVzKE5vZGUmKTsKKwogcHJpdmF0ZToKLSAgICBleHBsaWNpdCBJbnNwZWN0b3JBdWRpdEFjY2Vz
c2liaWxpdHlVdGlsaXRpZXMoKTsKKyAgICBleHBsaWNpdCBJbnNwZWN0b3JBdWRpdEFjY2Vzc2li
aWxpdHlVdGlsaXRpZXMoSW5zcGVjdG9yOjpJbnNwZWN0b3JBdWRpdEFnZW50Jik7CisKKyAgICBJ
bnNwZWN0b3I6Okluc3BlY3RvckF1ZGl0QWdlbnQmIG1fYXVkaXRBZ2VudDsKIH07CiAKIH0gLy8g
bmFtZXNwYWNlIFdlYkNvcmUKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlVdGlsaXRpZXMuaWRsIGIvU291cmNlL1dlYkNvcmUv
aW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eVV0aWxpdGllcy5pZGwKaW5kZXgg
N2NjZDcyYmIwOTMuLjAzMjc2YWVhNjFlIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVzLmlkbAorKysgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5VXRpbGl0aWVz
LmlkbApAQCAtMjgsNCArMjgsMzIgQEAKICAgICBKU0dlbmVyYXRlVG9KU09iamVjdCwKICAgICBO
b0ludGVyZmFjZU9iamVjdCwKIF0gaW50ZXJmYWNlIEluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0
eVV0aWxpdGllcyB7CisgICAgW01heVRocm93RXhjZXB0aW9uXSBDb21wdXRlZFByb3BlcnRpZXM/
IGdldENvbXB1dGVkUHJvcGVydGllcyhOb2RlIG5vZGUpOworfTsKKworWworICAgIEpTR2VuZXJh
dGVUb0pTT2JqZWN0LAorXSBkaWN0aW9uYXJ5IENvbXB1dGVkUHJvcGVydGllcyB7CisgICAgYm9v
bGVhbj8gYnVzeTsKKyAgICBET01TdHJpbmc/IGNoZWNrZWQ7CisgICAgRE9NU3RyaW5nPyBjdXJy
ZW50U3RhdGU7CisgICAgYm9vbGVhbj8gZGlzYWJsZWQ7CisgICAgYm9vbGVhbj8gZXhwYW5kZWQ7
CisgICAgYm9vbGVhbj8gZm9jdXNlZDsKKyAgICBsb25nPyBoZWFkaW5nTGV2ZWw7CisgICAgYm9v
bGVhbj8gaGlkZGVuOworICAgIGxvbmc/IGhpZXJhcmNoaWNhbExldmVsOworICAgIGJvb2xlYW4/
IGlnbm9yZWQ7CisgICAgYm9vbGVhbj8gaWdub3JlZEJ5RGVmYXVsdDsKKyAgICBET01TdHJpbmc/
IGludmFsaWRTdGF0dXM7CisgICAgYm9vbGVhbj8gaXNQb3BVcEJ1dHRvbjsKKyAgICBET01TdHJp
bmc/IGxhYmVsOworICAgIGJvb2xlYW4/IGxpdmVSZWdpb25BdG9taWM7CisgICAgc2VxdWVuY2U8
RE9NU3RyaW5nPj8gbGl2ZVJlZ2lvblJlbGV2YW50OworICAgIERPTVN0cmluZz8gbGl2ZVJlZ2lv
blN0YXR1czsKKyAgICBib29sZWFuPyBwcmVzc2VkOworICAgIGJvb2xlYW4/IHJlYWRvbmx5Owor
ICAgIGJvb2xlYW4/IHJlcXVpcmVkOworICAgIERPTVN0cmluZz8gcm9sZTsKKyAgICBib29sZWFu
PyBzZWxlY3RlZDsKIH07CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5z
cGVjdG9yQXVkaXRET01VdGlsaXRpZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JBdWRpdERPTVV0aWxpdGllcy5oCmluZGV4IDNhNGFmNjM3ZWZmLi5iMWZlYjNhMGJlMiAx
MDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0RE9NVXRp
bGl0aWVzLmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0RE9N
VXRpbGl0aWVzLmgKQEAgLTI1LDYgKzI1LDcgQEAKIAogI3ByYWdtYSBvbmNlCiAKKyNpbmNsdWRl
IDxKYXZhU2NyaXB0Q29yZS9JbnNwZWN0b3JBdWRpdEFnZW50Lmg+CiAjaW5jbHVkZSA8d3RmL1Jl
Zi5oPgogI2luY2x1ZGUgPHd0Zi9SZWZDb3VudGVkLmg+CiAKQEAgLTMyLDcgKzMzLDcgQEAgbmFt
ZXNwYWNlIFdlYkNvcmUgewogCiBjbGFzcyBJbnNwZWN0b3JBdWRpdERPTVV0aWxpdGllcyA6IHB1
YmxpYyBSZWZDb3VudGVkPEluc3BlY3RvckF1ZGl0RE9NVXRpbGl0aWVzPiB7CiBwdWJsaWM6Ci0g
ICAgc3RhdGljIFJlZjxJbnNwZWN0b3JBdWRpdERPTVV0aWxpdGllcz4gY3JlYXRlKCkKKyAgICBz
dGF0aWMgUmVmPEluc3BlY3RvckF1ZGl0RE9NVXRpbGl0aWVzPiBjcmVhdGUoSW5zcGVjdG9yOjpJ
bnNwZWN0b3JBdWRpdEFnZW50JikKICAgICB7CiAgICAgICAgIHJldHVybiBhZG9wdFJlZigqbmV3
IEluc3BlY3RvckF1ZGl0RE9NVXRpbGl0aWVzKCkpOwogICAgIH0KZGlmZiAtLWdpdCBhL1NvdXJj
ZS9XZWJDb3JlL2luc3BlY3Rvci9hZ2VudHMvcGFnZS9QYWdlQXVkaXRBZ2VudC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9pbnNwZWN0b3IvYWdlbnRzL3BhZ2UvUGFnZUF1ZGl0QWdlbnQuY3BwCmluZGV4
IGRiZTFkMzZmMjg3Li5lMTNiYTE0MjU4YyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL2FnZW50cy9wYWdlL1BhZ2VBdWRpdEFnZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvYWdlbnRzL3BhZ2UvUGFnZUF1ZGl0QWdlbnQuY3BwCkBAIC04Miw3ICs4Miw3
IEBAIFZlY3RvcjxzdGQ6OnBhaXI8U3RyaW5nLCBKU0M6OkpTVmFsdWU+PiBQYWdlQXVkaXRBZ2Vu
dDo6cnVuQXJndW1lbnRzKGNvbnN0IGludCoKIAogI2RlZmluZSBBRERfQVVESVRfVVRJTElUSUVT
KG5hbWUpIFwKICAgICAgICAgICAgICAgICBpZiAoIW1fYXVkaXQjI25hbWUjI1V0aWxpdGllcykg
XAotICAgICAgICAgICAgICAgICAgICBtX2F1ZGl0IyNuYW1lIyNVdGlsaXRpZXMgPSBJbnNwZWN0
b3JBdWRpdCMjbmFtZSMjVXRpbGl0aWVzOjpjcmVhdGUoKTsgXAorICAgICAgICAgICAgICAgICAg
ICBtX2F1ZGl0IyNuYW1lIyNVdGlsaXRpZXMgPSBJbnNwZWN0b3JBdWRpdCMjbmFtZSMjVXRpbGl0
aWVzOjpjcmVhdGUoKnRoaXMpOyBcCiAgICAgICAgICAgICAgICAgaWYgKEpTQzo6SlNWYWx1ZSBp
bnNwZWN0b3JBdWRpdCMjbmFtZSMjVXRpbGl0aWVzID0gdG9KUyhleGVjU3RhdGUsIGdsb2JhbE9i
amVjdCwgKm1fYXVkaXQjI25hbWUjI1V0aWxpdGllcykpIFwKICAgICAgICAgICAgICAgICAgICAg
YXJndW1lbnRzLmFwcGVuZChzdGQ6Om1ha2VfcGFpcigiIiAjbmFtZSAiIl9zLCBXVEZNb3ZlKGlu
c3BlY3RvckF1ZGl0IyNuYW1lIyNVdGlsaXRpZXMpKSk7CiAK
</data>

          </attachment>
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>359775</attachid>
            <date>2019-01-22 14:33:51 -0800</date>
            <delta_ts>2019-01-22 15:08:14 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-193227-20190122143351.patch</filename>
            <type>text/plain</type>
            <size>15367</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkOWVmNDUzZjQ4NjY1Yzk4NzM0ZWY5YWZiNTNjZGRkM2RiNGZiYWI0Li44
MzE4MGY3OGYwNDJiY2Q4ZjZkYzA0MGY0ODkyMDk4YzMxNjE2NzM1IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTggQEAKKzIwMTktMDEtMjIgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IEF1ZGl0OiBwcm92aWRlIGEgd2F5IHRvIGdldCBy
ZWxhdGVkIEFjY2Vzc2liaWxpdHkgcHJvcGVydGllcyBmb3IgYSBnaXZlbiBub2RlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTMyMjcKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQ2Nzg3ODYyPgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAo
T09QUyEpLgorCisgICAgICAgIFRlc3Q6IGluc3BlY3Rvci9hdWRpdC9ydW4tYWNjZXNzaWJpbGl0
eS5odG1sCisKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5
T2JqZWN0LmlkbDoKKyAgICAgICAgKiBpbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmls
aXR5T2JqZWN0Lmg6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJp
bGl0eU9iamVjdC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpJbnNwZWN0b3JBdWRpdEFjY2Vzc2li
aWxpdHlPYmplY3Q6OmdldENvbXB1dGVkUHJvcGVydGllcyk6IEFkZGVkLgorCiAyMDE5LTAxLTIy
ICBBbGV4IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CiAKICAgICAgICAg
Rml4IG1vcmUgYnVpbGRzLgpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0lu
c3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5jcHAgYi9Tb3VyY2UvV2ViQ29yZS9pbnNw
ZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAppbmRleCAxZDhjNDAz
ZGUwMTdlZjk5MDU5M2EyM2Y4Nzc0OTg2NTdmNDFmYTE2Li4xY2U1YzlhODAxNGQxMmJhODRkZjM0
OGM3ZmY0OGVmMTJhYzQ4OTJjIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3Iv
SW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29y
ZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5T2JqZWN0LmNwcApAQCAtMzYs
NyArMzYsOSBAQAogI2luY2x1ZGUgIkVsZW1lbnREZXNjZW5kYW50SXRlcmF0b3IuaCIKICNpbmNs
dWRlICJIVE1MTmFtZXMuaCIKICNpbmNsdWRlICJOb2RlLmgiCisjaW5jbHVkZSAiU3BhY2VTcGxp
dFN0cmluZy5oIgogI2luY2x1ZGUgPHd0Zi9WZWN0b3IuaD4KKyNpbmNsdWRlIDx3dGYvdGV4dC9X
VEZTdHJpbmcuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUgewogCkBAIC0xMTUsNiArMTE3LDEyOSBA
QCBFeGNlcHRpb25PcjxPcHRpb25hbDxWZWN0b3I8UmVmUHRyPE5vZGU+Pj4+IEluc3BlY3RvckF1
ZGl0QWNjZXNzaWJpbGl0eU9iamVjdDo6ZwogICAgIHJldHVybiByZXN1bHQ7CiB9CiAKK0V4Y2Vw
dGlvbk9yPE9wdGlvbmFsPEluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdDo6Q29tcHV0
ZWRQcm9wZXJ0aWVzPj4gSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5T2JqZWN0OjpnZXRDb21w
dXRlZFByb3BlcnRpZXMoTm9kZSYgbm9kZSkKK3sKKyAgICBFUlJPUl9JRl9OT19BQ1RJVkVfQVVE
SVQoKTsKKworICAgIE9wdGlvbmFsPEluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdDo6
Q29tcHV0ZWRQcm9wZXJ0aWVzPiByZXN1bHQ7CisKKyAgICBpZiAoQWNjZXNzaWJpbGl0eU9iamVj
dCogYXhPYmplY3QgPSBhY2Nlc3NpYmxpdHlPYmplY3RGb3JOb2RlKG5vZGUpKSB7CisgICAgICAg
IENvbXB1dGVkUHJvcGVydGllcyBjb21wdXRlZFByb3BlcnRpZXM7CisKKyAgICAgICAgQWNjZXNz
aWJpbGl0eU9iamVjdCogY3VycmVudCA9IGF4T2JqZWN0OworICAgICAgICB3aGlsZSAoY3VycmVu
dCAmJiAoIWNvbXB1dGVkUHJvcGVydGllcy5idXN5IHx8ICFjb21wdXRlZFByb3BlcnRpZXMuYnVz
eS52YWx1ZSgpKSkgeworICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmJ1c3kgPSBjdXJy
ZW50LT5pc0J1c3koKTsKKyAgICAgICAgICAgIGN1cnJlbnQgPSBjdXJyZW50LT5wYXJlbnRPYmpl
Y3QoKTsKKyAgICAgICAgfQorCisgICAgICAgIGlmIChheE9iamVjdC0+c3VwcG9ydHNDaGVja2Vk
KCkpIHsKKyAgICAgICAgICAgIEFjY2Vzc2liaWxpdHlCdXR0b25TdGF0ZSBjaGVja1ZhbHVlID0g
YXhPYmplY3QtPmNoZWNrYm94T3JSYWRpb1ZhbHVlKCk7CisgICAgICAgICAgICBpZiAoY2hlY2tW
YWx1ZSA9PSBBY2Nlc3NpYmlsaXR5QnV0dG9uU3RhdGU6Ok9uKQorICAgICAgICAgICAgICAgIGNv
bXB1dGVkUHJvcGVydGllcy5jaGVja2VkID0gInRydWUiX3M7CisgICAgICAgICAgICBlbHNlIGlm
IChjaGVja1ZhbHVlID09IEFjY2Vzc2liaWxpdHlCdXR0b25TdGF0ZTo6TWl4ZWQpCisgICAgICAg
ICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmNoZWNrZWQgPSAibWl4ZWQiX3M7CisgICAgICAg
ICAgICBlbHNlIGlmIChheE9iamVjdC0+aXNDaGVja2VkKCkpCisgICAgICAgICAgICAgICAgY29t
cHV0ZWRQcm9wZXJ0aWVzLmNoZWNrZWQgPSAidHJ1ZSJfczsKKyAgICAgICAgICAgIGVsc2UKKyAg
ICAgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuY2hlY2tlZCA9ICJmYWxzZSJfczsKKyAg
ICAgICAgfQorCisgICAgICAgIHN3aXRjaCAoYXhPYmplY3QtPmN1cnJlbnRTdGF0ZSgpKSB7Cisg
ICAgICAgIGNhc2UgQWNjZXNzaWJpbGl0eUN1cnJlbnRTdGF0ZTo6RmFsc2U6CisgICAgICAgICAg
ICBjb21wdXRlZFByb3BlcnRpZXMuY3VycmVudFN0YXRlID0gImZhbHNlIl9zOworICAgICAgICAg
ICAgYnJlYWs7CisgICAgICAgIGNhc2UgQWNjZXNzaWJpbGl0eUN1cnJlbnRTdGF0ZTo6VHJ1ZToK
KyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5jdXJyZW50U3RhdGUgPSAidHJ1ZSJfczsK
KyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEFjY2Vzc2liaWxpdHlDdXJyZW50U3Rh
dGU6OlBhZ2U6CisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuY3VycmVudFN0YXRlID0g
InBhZ2UiX3M7CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBY2Nlc3NpYmlsaXR5
Q3VycmVudFN0YXRlOjpTdGVwOgorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmN1cnJl
bnRTdGF0ZSA9ICJzdGVwIl9zOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQWNj
ZXNzaWJpbGl0eUN1cnJlbnRTdGF0ZTo6TG9jYXRpb246CisgICAgICAgICAgICBjb21wdXRlZFBy
b3BlcnRpZXMuY3VycmVudFN0YXRlID0gImxvY2F0aW9uIl9zOworICAgICAgICAgICAgYnJlYWs7
CisgICAgICAgIGNhc2UgQWNjZXNzaWJpbGl0eUN1cnJlbnRTdGF0ZTo6RGF0ZToKKyAgICAgICAg
ICAgIGNvbXB1dGVkUHJvcGVydGllcy5jdXJyZW50U3RhdGUgPSAiZGF0ZSJfczsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBjYXNlIEFjY2Vzc2liaWxpdHlDdXJyZW50U3RhdGU6OlRpbWU6
CisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuY3VycmVudFN0YXRlID0gInRpbWUiX3M7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgfQorCisgICAgICAgIGNvbXB1dGVkUHJvcGVy
dGllcy5kaXNhYmxlZCA9ICFheE9iamVjdC0+aXNFbmFibGVkKCk7CisKKyAgICAgICAgaWYgKGF4
T2JqZWN0LT5zdXBwb3J0c0V4cGFuZGVkKCkpCisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRp
ZXMuZXhwYW5kZWQgPSBheE9iamVjdC0+aXNFeHBhbmRlZCgpOworCisgICAgICAgIGlmIChpczxF
bGVtZW50Pihub2RlKSAmJiBheE9iamVjdC0+Y2FuU2V0Rm9jdXNBdHRyaWJ1dGUoKSkKKyAgICAg
ICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5mb2N1c2VkID0gYXhPYmplY3QtPmlzRm9jdXNlZCgp
OworCisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5oZWFkaW5nTGV2ZWwgPSBheE9iamVjdC0+
aGVhZGluZ0xldmVsKCk7CisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5oaWRkZW4gPSBheE9i
amVjdC0+aXNBWEhpZGRlbigpIHx8IGF4T2JqZWN0LT5pc0RPTUhpZGRlbigpOworICAgICAgICBj
b21wdXRlZFByb3BlcnRpZXMuaGllcmFyY2hpY2FsTGV2ZWwgPSBheE9iamVjdC0+aGllcmFyY2hp
Y2FsTGV2ZWwoKTsKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmlnbm9yZWQgPSBheE9iamVj
dC0+YWNjZXNzaWJpbGl0eUlzSWdub3JlZCgpOworICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMu
aWdub3JlZEJ5RGVmYXVsdCA9IGF4T2JqZWN0LT5hY2Nlc3NpYmlsaXR5SXNJZ25vcmVkQnlEZWZh
dWx0KCk7CisKKyAgICAgICAgU3RyaW5nIGludmFsaWRWYWx1ZSA9IGF4T2JqZWN0LT5pbnZhbGlk
U3RhdHVzKCk7CisgICAgICAgIGlmIChpbnZhbGlkVmFsdWUgPT0gImZhbHNlIikKKyAgICAgICAg
ICAgIGNvbXB1dGVkUHJvcGVydGllcy5pbnZhbGlkU3RhdHVzID0gImZhbHNlIl9zOworICAgICAg
ICBlbHNlIGlmIChpbnZhbGlkVmFsdWUgPT0gImdyYW1tYXIiKQorICAgICAgICAgICAgY29tcHV0
ZWRQcm9wZXJ0aWVzLmludmFsaWRTdGF0dXMgPSAiZ3JhbW1hciJfczsKKyAgICAgICAgZWxzZSBp
ZiAoaW52YWxpZFZhbHVlID09ICJzcGVsbGluZyIpCisgICAgICAgICAgICBjb21wdXRlZFByb3Bl
cnRpZXMuaW52YWxpZFN0YXR1cyA9ICJzcGVsbGluZyJfczsKKyAgICAgICAgZWxzZQorICAgICAg
ICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmludmFsaWRTdGF0dXMgPSAidHJ1ZSJfczsKKworICAg
ICAgICBjb21wdXRlZFByb3BlcnRpZXMuaXNQb3BVcEJ1dHRvbiA9IGF4T2JqZWN0LT5pc1BvcFVw
QnV0dG9uKCkgfHwgYXhPYmplY3QtPmhhc1BvcHVwKCk7CisgICAgICAgIGNvbXB1dGVkUHJvcGVy
dGllcy5sYWJlbCA9IGF4T2JqZWN0LT5jb21wdXRlZExhYmVsKCk7CisKKyAgICAgICAgaWYgKGF4
T2JqZWN0LT5zdXBwb3J0c0xpdmVSZWdpb24oKSkgeworICAgICAgICAgICAgY29tcHV0ZWRQcm9w
ZXJ0aWVzLmxpdmVSZWdpb25BdG9taWMgPSBheE9iamVjdC0+bGl2ZVJlZ2lvbkF0b21pYygpOwor
CisgICAgICAgICAgICBTdHJpbmcgYXJpYVJlbGV2YW50QXR0clZhbHVlID0gYXhPYmplY3QtPmxp
dmVSZWdpb25SZWxldmFudCgpOworICAgICAgICAgICAgaWYgKCFhcmlhUmVsZXZhbnRBdHRyVmFs
dWUuaXNFbXB0eSgpKSB7CisgICAgICAgICAgICAgICAgVmVjdG9yPFN0cmluZz4gbGl2ZVJlZ2lv
blJlbGV2YW50OworICAgICAgICAgICAgICAgIFN0cmluZyBhcmlhUmVsZXZhbnRBZGRpdGlvbnMg
PSAiYWRkaXRpb25zIjsKKyAgICAgICAgICAgICAgICBTdHJpbmcgYXJpYVJlbGV2YW50UmVtb3Zh
bHMgPSAicmVtb3ZhbHMiOworICAgICAgICAgICAgICAgIFN0cmluZyBhcmlhUmVsZXZhbnRUZXh0
ID0gInRleHQiOworCisgICAgICAgICAgICAgICAgY29uc3QgYXV0byYgdmFsdWVzID0gU3BhY2VT
cGxpdFN0cmluZyhhcmlhUmVsZXZhbnRBdHRyVmFsdWUsIHRydWUpOworICAgICAgICAgICAgICAg
IGlmICh2YWx1ZXMuY29udGFpbnMoImFsbCIpKSB7CisgICAgICAgICAgICAgICAgICAgIGxpdmVS
ZWdpb25SZWxldmFudC5hcHBlbmQoYXJpYVJlbGV2YW50QWRkaXRpb25zKTsKKyAgICAgICAgICAg
ICAgICAgICAgbGl2ZVJlZ2lvblJlbGV2YW50LmFwcGVuZChhcmlhUmVsZXZhbnRSZW1vdmFscyk7
CisgICAgICAgICAgICAgICAgICAgIGxpdmVSZWdpb25SZWxldmFudC5hcHBlbmQoYXJpYVJlbGV2
YW50VGV4dCk7CisgICAgICAgICAgICAgICAgfSBlbHNlIHsKKyAgICAgICAgICAgICAgICAgICAg
aWYgKHZhbHVlcy5jb250YWlucyhhcmlhUmVsZXZhbnRBZGRpdGlvbnMpKQorICAgICAgICAgICAg
ICAgICAgICAgICAgbGl2ZVJlZ2lvblJlbGV2YW50LmFwcGVuZChhcmlhUmVsZXZhbnRBZGRpdGlv
bnMpOworICAgICAgICAgICAgICAgICAgICBpZiAodmFsdWVzLmNvbnRhaW5zKGFyaWFSZWxldmFu
dFJlbW92YWxzKSkKKyAgICAgICAgICAgICAgICAgICAgICAgIGxpdmVSZWdpb25SZWxldmFudC5h
cHBlbmQoYXJpYVJlbGV2YW50UmVtb3ZhbHMpOworICAgICAgICAgICAgICAgICAgICBpZiAodmFs
dWVzLmNvbnRhaW5zKGFyaWFSZWxldmFudFRleHQpKQorICAgICAgICAgICAgICAgICAgICAgICAg
bGl2ZVJlZ2lvblJlbGV2YW50LmFwcGVuZChhcmlhUmVsZXZhbnRUZXh0KTsKKyAgICAgICAgICAg
ICAgICB9CisgICAgICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmxpdmVSZWdpb25SZWxl
dmFudCA9IGxpdmVSZWdpb25SZWxldmFudDsKKyAgICAgICAgICAgIH0KKworICAgICAgICAgICAg
Y29tcHV0ZWRQcm9wZXJ0aWVzLmxpdmVSZWdpb25TdGF0dXMgPSBheE9iamVjdC0+bGl2ZVJlZ2lv
blN0YXR1cygpOworICAgICAgICB9CisKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLnByZXNz
ZWQgPSBheE9iamVjdC0+cHJlc3NlZElzUHJlc2VudCgpICYmIGF4T2JqZWN0LT5pc1ByZXNzZWQo
KTsKKworICAgICAgICBpZiAoYXhPYmplY3QtPmlzVGV4dENvbnRyb2woKSkKKyAgICAgICAgICAg
IGNvbXB1dGVkUHJvcGVydGllcy5yZWFkb25seSA9ICFheE9iamVjdC0+Y2FuU2V0VmFsdWVBdHRy
aWJ1dGUoKTsKKworICAgICAgICBpZiAoYXhPYmplY3QtPnN1cHBvcnRzUmVxdWlyZWRBdHRyaWJ1
dGUoKSkKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5yZXF1aXJlZCA9IGF4T2JqZWN0
LT5pc1JlcXVpcmVkKCk7CisKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLnJvbGUgPSBheE9i
amVjdC0+Y29tcHV0ZWRSb2xlU3RyaW5nKCk7CisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5z
ZWxlY3RlZCA9IGF4T2JqZWN0LT5pc1NlbGVjdGVkKCk7CisKKyAgICAgICAgcmVzdWx0ID0gY29t
cHV0ZWRQcm9wZXJ0aWVzOworICAgIH0KKworICAgIHJldHVybiByZXN1bHQ7Cit9CiAKIEV4Y2Vw
dGlvbk9yPE9wdGlvbmFsPFZlY3RvcjxSZWZQdHI8Tm9kZT4+Pj4gSW5zcGVjdG9yQXVkaXRBY2Nl
c3NpYmlsaXR5T2JqZWN0OjpnZXRDb250cm9sbGVkTm9kZXMoTm9kZSYgbm9kZSkKIHsKZGlmZiAt
LWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxp
dHlPYmplY3QuaCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFjY2Vz
c2liaWxpdHlPYmplY3QuaAppbmRleCAzNDhlNmZiNWJlZDM0ZWYwMjMyZDhkZDYwZThmNzIzYmQx
MjIxM2RhLi5jYmJhMmI4NmQ4Y2IzZDA1ZTc3YzZiODg3OWY0MmIzNDViMTY4ODUxIDEwMDY0NAot
LS0gYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmlsaXR5
T2JqZWN0LmgKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNj
ZXNzaWJpbGl0eU9iamVjdC5oCkBAIC00Niw4ICs0NiwzNCBAQCBwdWJsaWM6CiAKICAgICBFeGNl
cHRpb25PcjxWZWN0b3I8UmVmPE5vZGU+Pj4gZ2V0RWxlbWVudHNCeUNvbXB1dGVkUm9sZShEb2N1
bWVudCYsIGNvbnN0IFN0cmluZyYgcm9sZSwgTm9kZSogY29udGFpbmVyKTsKIAorICAgIHN0cnVj
dCBDb21wdXRlZFByb3BlcnRpZXMgeworICAgICAgICBPcHRpb25hbDxib29sPiBidXN5OworICAg
ICAgICBTdHJpbmcgY2hlY2tlZDsKKyAgICAgICAgU3RyaW5nIGN1cnJlbnRTdGF0ZTsKKyAgICAg
ICAgT3B0aW9uYWw8Ym9vbD4gZGlzYWJsZWQ7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGV4cGFu
ZGVkOworICAgICAgICBPcHRpb25hbDxib29sPiBmb2N1c2VkOworICAgICAgICBPcHRpb25hbDxp
bnQ+IGhlYWRpbmdMZXZlbDsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gaGlkZGVuOworICAgICAg
ICBPcHRpb25hbDxpbnQ+IGhpZXJhcmNoaWNhbExldmVsOworICAgICAgICBPcHRpb25hbDxib29s
PiBpZ25vcmVkOworICAgICAgICBPcHRpb25hbDxib29sPiBpZ25vcmVkQnlEZWZhdWx0OworICAg
ICAgICBTdHJpbmcgaW52YWxpZFN0YXR1czsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gaXNQb3BV
cEJ1dHRvbjsKKyAgICAgICAgU3RyaW5nIGxhYmVsOworICAgICAgICBPcHRpb25hbDxib29sPiBs
aXZlUmVnaW9uQXRvbWljOworICAgICAgICBPcHRpb25hbDxWZWN0b3I8U3RyaW5nPj4gbGl2ZVJl
Z2lvblJlbGV2YW50OworICAgICAgICBTdHJpbmcgbGl2ZVJlZ2lvblN0YXR1czsKKyAgICAgICAg
T3B0aW9uYWw8Ym9vbD4gcHJlc3NlZDsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gcmVhZG9ubHk7
CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IHJlcXVpcmVkOworICAgICAgICBTdHJpbmcgcm9sZTsK
KyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gc2VsZWN0ZWQ7CisgICAgfTsKKwogICAgIEV4Y2VwdGlv
bk9yPFJlZlB0cjxOb2RlPj4gZ2V0QWN0aXZlRGVzY2VuZGFudChOb2RlJik7CiAgICAgRXhjZXB0
aW9uT3I8T3B0aW9uYWw8VmVjdG9yPFJlZlB0cjxOb2RlPj4+PiBnZXRDaGlsZE5vZGVzKE5vZGUm
KTsKKyAgICBFeGNlcHRpb25PcjxPcHRpb25hbDxDb21wdXRlZFByb3BlcnRpZXM+PiBnZXRDb21w
dXRlZFByb3BlcnRpZXMoTm9kZSYpOwogICAgIEV4Y2VwdGlvbk9yPE9wdGlvbmFsPFZlY3RvcjxS
ZWZQdHI8Tm9kZT4+Pj4gZ2V0Q29udHJvbGxlZE5vZGVzKE5vZGUmKTsKICAgICBFeGNlcHRpb25P
cjxPcHRpb25hbDxWZWN0b3I8UmVmUHRyPE5vZGU+Pj4+IGdldEZsb3dlZE5vZGVzKE5vZGUmKTsK
ICAgICBFeGNlcHRpb25PcjxSZWZQdHI8Tm9kZT4+IGdldE1vdXNlRXZlbnROb2RlKE5vZGUmKTsK
ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFjY2Vz
c2liaWxpdHlPYmplY3QuaWRsIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1
ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5pZGwKaW5kZXggOTI2NDUwZjI4MjgzYmI0NWVkODcxOTMz
N2MwZGIwMWFlMTI5ZjJmMC4uMjg2ZDMzNmNiNTQ0YTQxMDM2M2M0YWQyOTgxYzJjOTRkZWQ4OTU5
ZSAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNj
ZXNzaWJpbGl0eU9iamVjdC5pZGwKKysrIGIvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3Bl
Y3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5pZGwKQEAgLTMyLDYgKzMyLDcgQEAKIAogICAg
IFtNYXlUaHJvd0V4Y2VwdGlvbl0gTm9kZT8gZ2V0QWN0aXZlRGVzY2VuZGFudChOb2RlIG5vZGUp
OwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gc2VxdWVuY2U8Tm9kZT4/IGdldENoaWxkTm9kZXMo
Tm9kZSBub2RlKTsKKyAgICBbTWF5VGhyb3dFeGNlcHRpb25dIENvbXB1dGVkUHJvcGVydGllcz8g
Z2V0Q29tcHV0ZWRQcm9wZXJ0aWVzKE5vZGUgbm9kZSk7CiAgICAgW01heVRocm93RXhjZXB0aW9u
XSBzZXF1ZW5jZTxOb2RlPj8gZ2V0Q29udHJvbGxlZE5vZGVzKE5vZGUgbm9kZSk7CiAgICAgW01h
eVRocm93RXhjZXB0aW9uXSBzZXF1ZW5jZTxOb2RlPj8gZ2V0Rmxvd2VkTm9kZXMoTm9kZSBub2Rl
KTsKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIE5vZGU/IGdldE1vdXNlRXZlbnROb2RlKE5vZGUg
bm9kZSk7CkBAIC0zOSwzICs0MCwzMCBAQAogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gTm9kZT8g
Z2V0UGFyZW50Tm9kZShOb2RlIG5vZGUpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlvbl0gc2VxdWVu
Y2U8Tm9kZT4/IGdldFNlbGVjdGVkQ2hpbGROb2RlcyhOb2RlIG5vZGUpOwogfTsKKworWworICAg
IEpTR2VuZXJhdGVUb0pTT2JqZWN0LAorXSBkaWN0aW9uYXJ5IENvbXB1dGVkUHJvcGVydGllcyB7
CisgICAgYm9vbGVhbj8gYnVzeTsKKyAgICBET01TdHJpbmc/IGNoZWNrZWQ7CisgICAgRE9NU3Ry
aW5nPyBjdXJyZW50U3RhdGU7CisgICAgYm9vbGVhbj8gZGlzYWJsZWQ7CisgICAgYm9vbGVhbj8g
ZXhwYW5kZWQ7CisgICAgYm9vbGVhbj8gZm9jdXNlZDsKKyAgICBsb25nPyBoZWFkaW5nTGV2ZWw7
CisgICAgYm9vbGVhbj8gaGlkZGVuOworICAgIGxvbmc/IGhpZXJhcmNoaWNhbExldmVsOworICAg
IGJvb2xlYW4/IGlnbm9yZWQ7CisgICAgYm9vbGVhbj8gaWdub3JlZEJ5RGVmYXVsdDsKKyAgICBE
T01TdHJpbmc/IGludmFsaWRTdGF0dXM7CisgICAgYm9vbGVhbj8gaXNQb3BVcEJ1dHRvbjsKKyAg
ICBET01TdHJpbmc/IGxhYmVsOworICAgIGJvb2xlYW4/IGxpdmVSZWdpb25BdG9taWM7CisgICAg
c2VxdWVuY2U8RE9NU3RyaW5nPj8gbGl2ZVJlZ2lvblJlbGV2YW50OworICAgIERPTVN0cmluZz8g
bGl2ZVJlZ2lvblN0YXR1czsKKyAgICBib29sZWFuPyBwcmVzc2VkOworICAgIGJvb2xlYW4/IHJl
YWRvbmx5OworICAgIGJvb2xlYW4/IHJlcXVpcmVkOworICAgIERPTVN0cmluZz8gcm9sZTsKKyAg
ICBib29sZWFuPyBzZWxlY3RlZDsKK307ClwgTm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZm
IC0tZ2l0IGEvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCmlu
ZGV4IGM5MGZmMjUyMjY5NDQ0MmFjYjU4ZDkxNGJkZmQwODZjZmY4ZGM4ZWMuLjAwZjUwNWRmNGUw
NGNkMTY0OGNkZTY2Njc2NGQyZjYzMjk4OTdkZmUgMTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL0No
YW5nZUxvZworKysgYi9MYXlvdXRUZXN0cy9DaGFuZ2VMb2cKQEAgLTEsMyArMSwxNCBAQAorMjAx
OS0wMS0yMiAgRGV2aW4gUm91c3NvICA8ZHJvdXNzb0BhcHBsZS5jb20+CisKKyAgICAgICAgV2Vi
IEluc3BlY3RvcjogQXVkaXQ6IHByb3ZpZGUgYSB3YXkgdG8gZ2V0IHJlbGF0ZWQgQWNjZXNzaWJp
bGl0eSBwcm9wZXJ0aWVzIGZvciBhIGdpdmVuIG5vZGUKKyAgICAgICAgaHR0cHM6Ly9idWdzLndl
YmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE5MzIyNworICAgICAgICA8cmRhcjovL3Byb2JsZW0v
NDY3ODc4NjI+CisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAg
ICAgKiBpbnNwZWN0b3IvYXVkaXQvcnVuLWFjY2Vzc2liaWxpdHkuaHRtbDoKKyAgICAgICAgKiBp
bnNwZWN0b3IvYXVkaXQvcnVuLWFjY2Vzc2liaWxpdHktZXhwZWN0ZWQudHh0OgorCiAyMDE5LTAx
LTIyICBNaWNoYWVsIENhdGFuemFybyAgPG1jYXRhbnphcm9AaWdhbGlhLmNvbT4KIAogICAgICAg
ICBVbnJldmlld2VkLCBza2lwIGFsbCByZXNvdXJjZSBsb2FkIHN0YXRpc3RpY3MgdGVzdHMgb24g
R1RLCmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvYXVkaXQvcnVuLWFjY2Vzc2li
aWxpdHktZXhwZWN0ZWQudHh0IGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2F1ZGl0L3J1bi1hY2Nl
c3NpYmlsaXR5LWV4cGVjdGVkLnR4dAppbmRleCA3ZGQxMzk1YTVkZTdkZDI3YzUwOWUxZmFkNDM5
Yjk0NDliNWZiNWMyLi5hNTRmZmM0ODE5NjJmMDhhNjBkZDJiYzY5YjQwMjRhOGU0NTIzYWU2IDEw
MDY0NAotLS0gYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvYXVkaXQvcnVuLWFjY2Vzc2liaWxpdHkt
ZXhwZWN0ZWQudHh0CisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9hdWRpdC9ydW4tYWNjZXNz
aWJpbGl0eS1leHBlY3RlZC50eHQKQEAgLTYzLDYgKzYzLDE4IEBAIEF1ZGl0IHJ1biBgV2ViSW5z
cGVjdG9yQXVkaXQuQWNjZXNzaWJpbGl0eS5nZXRDaGlsZE5vZGVzKGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IoCiBSZXN1bHQ6IFtdCiBBdWRpdCB0ZWFyZG93bi4uLgogCistLSBSdW5uaW5nIHRlc3Qg
Y2FzZTogQXVkaXQucnVuLkFjY2Vzc2liaWxpdHkuZ2V0Q29tcHV0ZWRQcm9wZXJ0aWVzLnBhcmVu
dAorQXVkaXQgc2V0dXAuLi4KK0F1ZGl0IHJ1biBgV2ViSW5zcGVjdG9yQXVkaXQuQWNjZXNzaWJp
bGl0eS5nZXRDb21wdXRlZFByb3BlcnRpZXMoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI3BhcmVu
dCIpKWAuLi4KK1Jlc3VsdDogeyJidXN5IjpmYWxzZSwiY3VycmVudFN0YXRlIjoiZmFsc2UiLCJk
aXNhYmxlZCI6ZmFsc2UsImhlYWRpbmdMZXZlbCI6MCwiaGlkZGVuIjpmYWxzZSwiaGllcmFyY2hp
Y2FsTGV2ZWwiOjAsImlnbm9yZWQiOmZhbHNlLCJpZ25vcmVkQnlEZWZhdWx0IjpmYWxzZSwiaW52
YWxpZFN0YXR1cyI6ImZhbHNlIiwiaXNQb3BVcEJ1dHRvbiI6ZmFsc2UsInByZXNzZWQiOmZhbHNl
LCJyb2xlIjoidHJlZSIsInNlbGVjdGVkIjpmYWxzZX0KK0F1ZGl0IHRlYXJkb3duLi4uCisKKy0t
IFJ1bm5pbmcgdGVzdCBjYXNlOiBBdWRpdC5ydW4uQWNjZXNzaWJpbGl0eS5nZXRDb21wdXRlZFBy
b3BlcnRpZXMuY2hpbGQKK0F1ZGl0IHNldHVwLi4uCitBdWRpdCBydW4gYFdlYkluc3BlY3RvckF1
ZGl0LkFjY2Vzc2liaWxpdHkuZ2V0Q29tcHV0ZWRQcm9wZXJ0aWVzKGRvY3VtZW50LnF1ZXJ5U2Vs
ZWN0b3IoIiNjaGlsZCIpKWAuLi4KK1Jlc3VsdDogeyJidXN5IjpmYWxzZSwiY3VycmVudFN0YXRl
IjoiZmFsc2UiLCJkaXNhYmxlZCI6ZmFsc2UsImhlYWRpbmdMZXZlbCI6MCwiaGlkZGVuIjpmYWxz
ZSwiaGllcmFyY2hpY2FsTGV2ZWwiOjEsImlnbm9yZWQiOmZhbHNlLCJpZ25vcmVkQnlEZWZhdWx0
IjpmYWxzZSwiaW52YWxpZFN0YXR1cyI6ImZhbHNlIiwiaXNQb3BVcEJ1dHRvbiI6ZmFsc2UsInBy
ZXNzZWQiOmZhbHNlLCJyb2xlIjoidHJlZWl0ZW0iLCJzZWxlY3RlZCI6dHJ1ZX0KK0F1ZGl0IHRl
YXJkb3duLi4uCisKIC0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBBdWRpdC5ydW4uQWNjZXNzaWJpbGl0
eS5nZXRDb250cm9sbGVkTm9kZXMucGFyZW50CiBBdWRpdCBzZXR1cC4uLgogQXVkaXQgcnVuIGBX
ZWJJbnNwZWN0b3JBdWRpdC5BY2Nlc3NpYmlsaXR5LmdldENvbnRyb2xsZWROb2Rlcyhkb2N1bWVu
dC5xdWVyeVNlbGVjdG9yKCIjcGFyZW50IikpYC4uLgpAQCAtMTE0LDcgKzEyNiw3IEBAIEF1ZGl0
IHRlYXJkb3duLi4uCiAtLSBSdW5uaW5nIHRlc3QgY2FzZTogQXVkaXQucnVuLkFjY2Vzc2liaWxp
dHkuZ2V0UGFyZW50Tm9kZS5wYXJlbnQKIEF1ZGl0IHNldHVwLi4uCiBBdWRpdCBydW4gYFdlYklu
c3BlY3RvckF1ZGl0LkFjY2Vzc2liaWxpdHkuZ2V0UGFyZW50Tm9kZShkb2N1bWVudC5xdWVyeVNl
bGVjdG9yKCIjcGFyZW50IikpYC4uLgotUmVzdWx0OiB1bmRlZmluZWQKK1Jlc3VsdDogPGRvY3Vt
ZW50PgogQXVkaXQgdGVhcmRvd24uLi4KIAogLS0gUnVubmluZyB0ZXN0IGNhc2U6IEF1ZGl0LnJ1
bi5BY2Nlc3NpYmlsaXR5LmdldFBhcmVudE5vZGUuY2hpbGQKQEAgLTE0OCw2ICsxNjAsOSBAQCBF
cnJvcjogTm90QWxsb3dlZEVycm9yOiBDYW5ub3QgYmUgY2FsbGVkIG91dHNpZGUgb2YgYSBXZWIg
SW5zcGVjdG9yIEF1ZGl0CiBUZXN0aW5nIGNvcGllZCBnZXRDaGlsZE5vZGVzLi4uCiBQQVNTOiBT
aG91bGQgcHJvZHVjZSBhbiBleGNlcHRpb24uCiBFcnJvcjogTm90QWxsb3dlZEVycm9yOiBDYW5u
b3QgYmUgY2FsbGVkIG91dHNpZGUgb2YgYSBXZWIgSW5zcGVjdG9yIEF1ZGl0CitUZXN0aW5nIGNv
cGllZCBnZXRDb21wdXRlZFByb3BlcnRpZXMuLi4KK1BBU1M6IFNob3VsZCBwcm9kdWNlIGFuIGV4
Y2VwdGlvbi4KK0Vycm9yOiBOb3RBbGxvd2VkRXJyb3I6IENhbm5vdCBiZSBjYWxsZWQgb3V0c2lk
ZSBvZiBhIFdlYiBJbnNwZWN0b3IgQXVkaXQKIFRlc3RpbmcgY29waWVkIGdldENvbnRyb2xsZWRO
b2Rlcy4uLgogUEFTUzogU2hvdWxkIHByb2R1Y2UgYW4gZXhjZXB0aW9uLgogRXJyb3I6IE5vdEFs
bG93ZWRFcnJvcjogQ2Fubm90IGJlIGNhbGxlZCBvdXRzaWRlIG9mIGEgV2ViIEluc3BlY3RvciBB
dWRpdApkaWZmIC0tZ2l0IGEvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2F1ZGl0L3J1bi1hY2Nlc3Np
YmlsaXR5Lmh0bWwgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvYXVkaXQvcnVuLWFjY2Vzc2liaWxp
dHkuaHRtbAppbmRleCA5OGIwZTVkMmJkYTBkZDNmNjY3MDFiOTQ2MmZhYmJjNzc5MGI1MjRhLi5i
YmJjYTg3ODkwZDM1N2M2ZDQ0NWI0YjM4NTEwMGQzY2Y5Yzk0ZDk2IDEwMDY0NAotLS0gYS9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvYXVkaXQvcnVuLWFjY2Vzc2liaWxpdHkuaHRtbAorKysgYi9MYXlv
dXRUZXN0cy9pbnNwZWN0b3IvYXVkaXQvcnVuLWFjY2Vzc2liaWxpdHkuaHRtbApAQCAtNiwxMiAr
NiwyMCBAQAogPHNjcmlwdD4KIAogZnVuY3Rpb24gc3RyaW5naWZ5KHJlc3VsdCkgeworICAgIGlm
IChyZXN1bHQgPT09IG51bGwgfHwgcmVzdWx0ID09PSB1bmRlZmluZWQgfHwgdHlwZW9mIHJlc3Vs
dCA9PT0gImJvb2xlYW4iIHx8IHR5cGVvZiByZXN1bHQgPT09ICJzdHJpbmciIHx8IHR5cGVvZiBy
ZXN1bHQgPT09ICJudW1iZXIiKQorICAgICAgICByZXR1cm4gcmVzdWx0OwogICAgIGlmIChyZXN1
bHQgaW5zdGFuY2VvZiBFbGVtZW50KQogICAgICAgICByZXR1cm4gIiMiICsgcmVzdWx0LmlkOwor
ICAgIGlmIChyZXN1bHQgaW5zdGFuY2VvZiBIVE1MRG9jdW1lbnQpCisgICAgICAgIHJldHVybiAi
PGRvY3VtZW50PiI7CiAgICAgaWYgKEFycmF5LmlzQXJyYXkocmVzdWx0KSkKICAgICAgICAgcmV0
dXJuIEpTT04uc3RyaW5naWZ5KHJlc3VsdC5tYXAoc3RyaW5naWZ5KSk7Ci0gICAgaWYgKHJlc3Vs
dCA9PT0gbnVsbCB8fCByZXN1bHQgPT09IHVuZGVmaW5lZCk7Ci0gICAgICAgIHJldHVybiByZXN1
bHQ7CisgICAgaWYgKHR5cGVvZiByZXN1bHQgPT09ICJvYmplY3QiICYmIHJlc3VsdC5jb25zdHJ1
Y3RvciA9PT0gT2JqZWN0KSB7CisgICAgICAgIGxldCBtYXBwZWQgPSB7fTsKKyAgICAgICAgZm9y
IChsZXQga2V5IGluIHJlc3VsdCkKKyAgICAgICAgICAgIG1hcHBlZFtrZXldID0gc3RyaW5naWZ5
KHJlc3VsdFtrZXldKTsKKyAgICAgICAgcmV0dXJuIEpTT04uc3RyaW5naWZ5KG1hcHBlZCk7Cisg
ICAgfQogICAgIHJldHVybiAiVU5FWFBFQ1RFRCAiICsgcmVzdWx0OwogfQogCkBAIC00NCw2ICs1
Miw5IEBAIGZ1bmN0aW9uIHRlc3QoKQogICAgICAgICB7IGZ1bmM6ICJnZXRDaGlsZE5vZGVzIiwg
dGFyZ2V0OiAicGFyZW50IiB9LAogICAgICAgICB7IGZ1bmM6ICJnZXRDaGlsZE5vZGVzIiwgdGFy
Z2V0OiAiY2hpbGQiIH0sCiAKKyAgICAgICAgeyBmdW5jOiAiZ2V0Q29tcHV0ZWRQcm9wZXJ0aWVz
IiwgdGFyZ2V0OiAicGFyZW50IiB9LAorICAgICAgICB7IGZ1bmM6ICJnZXRDb21wdXRlZFByb3Bl
cnRpZXMiLCB0YXJnZXQ6ICJjaGlsZCIgfSwKKwogICAgICAgICB7IGZ1bmM6ICJnZXRDb250cm9s
bGVkTm9kZXMiLCB0YXJnZXQ6ICJwYXJlbnQiIH0sCiAgICAgICAgIHsgZnVuYzogImdldENvbnRy
b2xsZWROb2RlcyIsIHRhcmdldDogImNoaWxkIiB9LAogCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>359783</attachid>
            <date>2019-01-22 15:08:22 -0800</date>
            <delta_ts>2019-01-22 16:33:04 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-193227-20190122150822.patch</filename>
            <type>text/plain</type>
            <size>15564</size>
            <attacher name="Devin Rousso">hi</attacher>
            
              <data encoding="base64">ZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL0NoYW5nZUxvZyBiL1NvdXJjZS9XZWJDb3JlL0No
YW5nZUxvZwppbmRleCBkOWVmNDUzZjQ4NjY1Yzk4NzM0ZWY5YWZiNTNjZGRkM2RiNGZiYWI0Li40
MjdjMWI2NDhjNDlkZGIwODczZjY3MjZlOTQ1YjI3MTVkMWMwMzNiIDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvV2ViQ29yZS9DaGFuZ2VMb2cKKysrIGIvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCkBAIC0x
LDMgKzEsMTggQEAKKzIwMTktMDEtMjIgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29t
PgorCisgICAgICAgIFdlYiBJbnNwZWN0b3I6IEF1ZGl0OiBwcm92aWRlIGEgd2F5IHRvIGdldCBy
ZWxhdGVkIEFjY2Vzc2liaWxpdHkgcHJvcGVydGllcyBmb3IgYSBnaXZlbiBub2RlCisgICAgICAg
IGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTMyMjcKKyAgICAgICAg
PHJkYXI6Ly9wcm9ibGVtLzQ2Nzg3ODYyPgorCisgICAgICAgIFJldmlld2VkIGJ5IEpvc2VwaCBQ
ZWNvcmFyby4KKworICAgICAgICBUZXN0OiBpbnNwZWN0b3IvYXVkaXQvcnVuLWFjY2Vzc2liaWxp
dHkuaHRtbAorCisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0
eU9iamVjdC5pZGw6CisgICAgICAgICogaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJp
bGl0eU9iamVjdC5oOgorICAgICAgICAqIGluc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFjY2Vzc2li
aWxpdHlPYmplY3QuY3BwOgorICAgICAgICAoV2ViQ29yZTo6SW5zcGVjdG9yQXVkaXRBY2Nlc3Np
YmlsaXR5T2JqZWN0OjpnZXRDb21wdXRlZFByb3BlcnRpZXMpOiBBZGRlZC4KKwogMjAxOS0wMS0y
MiAgQWxleCBDaHJpc3RlbnNlbiAgPGFjaHJpc3RlbnNlbkB3ZWJraXQub3JnPgogCiAgICAgICAg
IEZpeCBtb3JlIGJ1aWxkcy4KZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9J
bnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlPYmplY3QuY3BwIGIvU291cmNlL1dlYkNvcmUvaW5z
cGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5jcHAKaW5kZXggMWQ4YzQw
M2RlMDE3ZWY5OTA1OTNhMjNmODc3NDk4NjU3ZjQxZmExNi4uMWNlNWM5YTgwMTRkMTJiYTg0ZGYz
NDhjN2ZmNDhlZjEyYWM0ODkyYyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9y
L0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5jcHAKKysrIGIvU291cmNlL1dlYkNv
cmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdC5jcHAKQEAgLTM2
LDcgKzM2LDkgQEAKICNpbmNsdWRlICJFbGVtZW50RGVzY2VuZGFudEl0ZXJhdG9yLmgiCiAjaW5j
bHVkZSAiSFRNTE5hbWVzLmgiCiAjaW5jbHVkZSAiTm9kZS5oIgorI2luY2x1ZGUgIlNwYWNlU3Bs
aXRTdHJpbmcuaCIKICNpbmNsdWRlIDx3dGYvVmVjdG9yLmg+CisjaW5jbHVkZSA8d3RmL3RleHQv
V1RGU3RyaW5nLmg+CiAKIG5hbWVzcGFjZSBXZWJDb3JlIHsKIApAQCAtMTE1LDYgKzExNywxMjkg
QEAgRXhjZXB0aW9uT3I8T3B0aW9uYWw8VmVjdG9yPFJlZlB0cjxOb2RlPj4+PiBJbnNwZWN0b3JB
dWRpdEFjY2Vzc2liaWxpdHlPYmplY3Q6OmcKICAgICByZXR1cm4gcmVzdWx0OwogfQogCitFeGNl
cHRpb25PcjxPcHRpb25hbDxJbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlPYmplY3Q6OkNvbXB1
dGVkUHJvcGVydGllcz4+IEluc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0eU9iamVjdDo6Z2V0Q29t
cHV0ZWRQcm9wZXJ0aWVzKE5vZGUmIG5vZGUpCit7CisgICAgRVJST1JfSUZfTk9fQUNUSVZFX0FV
RElUKCk7CisKKyAgICBPcHRpb25hbDxJbnNwZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlPYmplY3Q6
OkNvbXB1dGVkUHJvcGVydGllcz4gcmVzdWx0OworCisgICAgaWYgKEFjY2Vzc2liaWxpdHlPYmpl
Y3QqIGF4T2JqZWN0ID0gYWNjZXNzaWJsaXR5T2JqZWN0Rm9yTm9kZShub2RlKSkgeworICAgICAg
ICBDb21wdXRlZFByb3BlcnRpZXMgY29tcHV0ZWRQcm9wZXJ0aWVzOworCisgICAgICAgIEFjY2Vz
c2liaWxpdHlPYmplY3QqIGN1cnJlbnQgPSBheE9iamVjdDsKKyAgICAgICAgd2hpbGUgKGN1cnJl
bnQgJiYgKCFjb21wdXRlZFByb3BlcnRpZXMuYnVzeSB8fCAhY29tcHV0ZWRQcm9wZXJ0aWVzLmJ1
c3kudmFsdWUoKSkpIHsKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5idXN5ID0gY3Vy
cmVudC0+aXNCdXN5KCk7CisgICAgICAgICAgICBjdXJyZW50ID0gY3VycmVudC0+cGFyZW50T2Jq
ZWN0KCk7CisgICAgICAgIH0KKworICAgICAgICBpZiAoYXhPYmplY3QtPnN1cHBvcnRzQ2hlY2tl
ZCgpKSB7CisgICAgICAgICAgICBBY2Nlc3NpYmlsaXR5QnV0dG9uU3RhdGUgY2hlY2tWYWx1ZSA9
IGF4T2JqZWN0LT5jaGVja2JveE9yUmFkaW9WYWx1ZSgpOworICAgICAgICAgICAgaWYgKGNoZWNr
VmFsdWUgPT0gQWNjZXNzaWJpbGl0eUJ1dHRvblN0YXRlOjpPbikKKyAgICAgICAgICAgICAgICBj
b21wdXRlZFByb3BlcnRpZXMuY2hlY2tlZCA9ICJ0cnVlIl9zOworICAgICAgICAgICAgZWxzZSBp
ZiAoY2hlY2tWYWx1ZSA9PSBBY2Nlc3NpYmlsaXR5QnV0dG9uU3RhdGU6Ok1peGVkKQorICAgICAg
ICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5jaGVja2VkID0gIm1peGVkIl9zOworICAgICAg
ICAgICAgZWxzZSBpZiAoYXhPYmplY3QtPmlzQ2hlY2tlZCgpKQorICAgICAgICAgICAgICAgIGNv
bXB1dGVkUHJvcGVydGllcy5jaGVja2VkID0gInRydWUiX3M7CisgICAgICAgICAgICBlbHNlCisg
ICAgICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmNoZWNrZWQgPSAiZmFsc2UiX3M7Cisg
ICAgICAgIH0KKworICAgICAgICBzd2l0Y2ggKGF4T2JqZWN0LT5jdXJyZW50U3RhdGUoKSkgewor
ICAgICAgICBjYXNlIEFjY2Vzc2liaWxpdHlDdXJyZW50U3RhdGU6OkZhbHNlOgorICAgICAgICAg
ICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmN1cnJlbnRTdGF0ZSA9ICJmYWxzZSJfczsKKyAgICAgICAg
ICAgIGJyZWFrOworICAgICAgICBjYXNlIEFjY2Vzc2liaWxpdHlDdXJyZW50U3RhdGU6OlRydWU6
CisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuY3VycmVudFN0YXRlID0gInRydWUiX3M7
CisgICAgICAgICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBY2Nlc3NpYmlsaXR5Q3VycmVudFN0
YXRlOjpQYWdlOgorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmN1cnJlbnRTdGF0ZSA9
ICJwYWdlIl9zOworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIGNhc2UgQWNjZXNzaWJpbGl0
eUN1cnJlbnRTdGF0ZTo6U3RlcDoKKyAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5jdXJy
ZW50U3RhdGUgPSAic3RlcCJfczsKKyAgICAgICAgICAgIGJyZWFrOworICAgICAgICBjYXNlIEFj
Y2Vzc2liaWxpdHlDdXJyZW50U3RhdGU6OkxvY2F0aW9uOgorICAgICAgICAgICAgY29tcHV0ZWRQ
cm9wZXJ0aWVzLmN1cnJlbnRTdGF0ZSA9ICJsb2NhdGlvbiJfczsKKyAgICAgICAgICAgIGJyZWFr
OworICAgICAgICBjYXNlIEFjY2Vzc2liaWxpdHlDdXJyZW50U3RhdGU6OkRhdGU6CisgICAgICAg
ICAgICBjb21wdXRlZFByb3BlcnRpZXMuY3VycmVudFN0YXRlID0gImRhdGUiX3M7CisgICAgICAg
ICAgICBicmVhazsKKyAgICAgICAgY2FzZSBBY2Nlc3NpYmlsaXR5Q3VycmVudFN0YXRlOjpUaW1l
OgorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmN1cnJlbnRTdGF0ZSA9ICJ0aW1lIl9z
OworICAgICAgICAgICAgYnJlYWs7CisgICAgICAgIH0KKworICAgICAgICBjb21wdXRlZFByb3Bl
cnRpZXMuZGlzYWJsZWQgPSAhYXhPYmplY3QtPmlzRW5hYmxlZCgpOworCisgICAgICAgIGlmIChh
eE9iamVjdC0+c3VwcG9ydHNFeHBhbmRlZCgpKQorICAgICAgICAgICAgY29tcHV0ZWRQcm9wZXJ0
aWVzLmV4cGFuZGVkID0gYXhPYmplY3QtPmlzRXhwYW5kZWQoKTsKKworICAgICAgICBpZiAoaXM8
RWxlbWVudD4obm9kZSkgJiYgYXhPYmplY3QtPmNhblNldEZvY3VzQXR0cmlidXRlKCkpCisgICAg
ICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuZm9jdXNlZCA9IGF4T2JqZWN0LT5pc0ZvY3VzZWQo
KTsKKworICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuaGVhZGluZ0xldmVsID0gYXhPYmplY3Qt
PmhlYWRpbmdMZXZlbCgpOworICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMuaGlkZGVuID0gYXhP
YmplY3QtPmlzQVhIaWRkZW4oKSB8fCBheE9iamVjdC0+aXNET01IaWRkZW4oKTsKKyAgICAgICAg
Y29tcHV0ZWRQcm9wZXJ0aWVzLmhpZXJhcmNoaWNhbExldmVsID0gYXhPYmplY3QtPmhpZXJhcmNo
aWNhbExldmVsKCk7CisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5pZ25vcmVkID0gYXhPYmpl
Y3QtPmFjY2Vzc2liaWxpdHlJc0lnbm9yZWQoKTsKKyAgICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVz
Lmlnbm9yZWRCeURlZmF1bHQgPSBheE9iamVjdC0+YWNjZXNzaWJpbGl0eUlzSWdub3JlZEJ5RGVm
YXVsdCgpOworCisgICAgICAgIFN0cmluZyBpbnZhbGlkVmFsdWUgPSBheE9iamVjdC0+aW52YWxp
ZFN0YXR1cygpOworICAgICAgICBpZiAoaW52YWxpZFZhbHVlID09ICJmYWxzZSIpCisgICAgICAg
ICAgICBjb21wdXRlZFByb3BlcnRpZXMuaW52YWxpZFN0YXR1cyA9ICJmYWxzZSJfczsKKyAgICAg
ICAgZWxzZSBpZiAoaW52YWxpZFZhbHVlID09ICJncmFtbWFyIikKKyAgICAgICAgICAgIGNvbXB1
dGVkUHJvcGVydGllcy5pbnZhbGlkU3RhdHVzID0gImdyYW1tYXIiX3M7CisgICAgICAgIGVsc2Ug
aWYgKGludmFsaWRWYWx1ZSA9PSAic3BlbGxpbmciKQorICAgICAgICAgICAgY29tcHV0ZWRQcm9w
ZXJ0aWVzLmludmFsaWRTdGF0dXMgPSAic3BlbGxpbmciX3M7CisgICAgICAgIGVsc2UKKyAgICAg
ICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5pbnZhbGlkU3RhdHVzID0gInRydWUiX3M7CisKKyAg
ICAgICAgY29tcHV0ZWRQcm9wZXJ0aWVzLmlzUG9wVXBCdXR0b24gPSBheE9iamVjdC0+aXNQb3BV
cEJ1dHRvbigpIHx8IGF4T2JqZWN0LT5oYXNQb3B1cCgpOworICAgICAgICBjb21wdXRlZFByb3Bl
cnRpZXMubGFiZWwgPSBheE9iamVjdC0+Y29tcHV0ZWRMYWJlbCgpOworCisgICAgICAgIGlmIChh
eE9iamVjdC0+c3VwcG9ydHNMaXZlUmVnaW9uKCkpIHsKKyAgICAgICAgICAgIGNvbXB1dGVkUHJv
cGVydGllcy5saXZlUmVnaW9uQXRvbWljID0gYXhPYmplY3QtPmxpdmVSZWdpb25BdG9taWMoKTsK
KworICAgICAgICAgICAgU3RyaW5nIGFyaWFSZWxldmFudEF0dHJWYWx1ZSA9IGF4T2JqZWN0LT5s
aXZlUmVnaW9uUmVsZXZhbnQoKTsKKyAgICAgICAgICAgIGlmICghYXJpYVJlbGV2YW50QXR0clZh
bHVlLmlzRW1wdHkoKSkgeworICAgICAgICAgICAgICAgIFZlY3RvcjxTdHJpbmc+IGxpdmVSZWdp
b25SZWxldmFudDsKKyAgICAgICAgICAgICAgICBTdHJpbmcgYXJpYVJlbGV2YW50QWRkaXRpb25z
ID0gImFkZGl0aW9ucyI7CisgICAgICAgICAgICAgICAgU3RyaW5nIGFyaWFSZWxldmFudFJlbW92
YWxzID0gInJlbW92YWxzIjsKKyAgICAgICAgICAgICAgICBTdHJpbmcgYXJpYVJlbGV2YW50VGV4
dCA9ICJ0ZXh0IjsKKworICAgICAgICAgICAgICAgIGNvbnN0IGF1dG8mIHZhbHVlcyA9IFNwYWNl
U3BsaXRTdHJpbmcoYXJpYVJlbGV2YW50QXR0clZhbHVlLCB0cnVlKTsKKyAgICAgICAgICAgICAg
ICBpZiAodmFsdWVzLmNvbnRhaW5zKCJhbGwiKSkgeworICAgICAgICAgICAgICAgICAgICBsaXZl
UmVnaW9uUmVsZXZhbnQuYXBwZW5kKGFyaWFSZWxldmFudEFkZGl0aW9ucyk7CisgICAgICAgICAg
ICAgICAgICAgIGxpdmVSZWdpb25SZWxldmFudC5hcHBlbmQoYXJpYVJlbGV2YW50UmVtb3ZhbHMp
OworICAgICAgICAgICAgICAgICAgICBsaXZlUmVnaW9uUmVsZXZhbnQuYXBwZW5kKGFyaWFSZWxl
dmFudFRleHQpOworICAgICAgICAgICAgICAgIH0gZWxzZSB7CisgICAgICAgICAgICAgICAgICAg
IGlmICh2YWx1ZXMuY29udGFpbnMoYXJpYVJlbGV2YW50QWRkaXRpb25zKSkKKyAgICAgICAgICAg
ICAgICAgICAgICAgIGxpdmVSZWdpb25SZWxldmFudC5hcHBlbmQoYXJpYVJlbGV2YW50QWRkaXRp
b25zKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHZhbHVlcy5jb250YWlucyhhcmlhUmVsZXZh
bnRSZW1vdmFscykpCisgICAgICAgICAgICAgICAgICAgICAgICBsaXZlUmVnaW9uUmVsZXZhbnQu
YXBwZW5kKGFyaWFSZWxldmFudFJlbW92YWxzKTsKKyAgICAgICAgICAgICAgICAgICAgaWYgKHZh
bHVlcy5jb250YWlucyhhcmlhUmVsZXZhbnRUZXh0KSkKKyAgICAgICAgICAgICAgICAgICAgICAg
IGxpdmVSZWdpb25SZWxldmFudC5hcHBlbmQoYXJpYVJlbGV2YW50VGV4dCk7CisgICAgICAgICAg
ICAgICAgfQorICAgICAgICAgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5saXZlUmVnaW9uUmVs
ZXZhbnQgPSBsaXZlUmVnaW9uUmVsZXZhbnQ7CisgICAgICAgICAgICB9CisKKyAgICAgICAgICAg
IGNvbXB1dGVkUHJvcGVydGllcy5saXZlUmVnaW9uU3RhdHVzID0gYXhPYmplY3QtPmxpdmVSZWdp
b25TdGF0dXMoKTsKKyAgICAgICAgfQorCisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5wcmVz
c2VkID0gYXhPYmplY3QtPnByZXNzZWRJc1ByZXNlbnQoKSAmJiBheE9iamVjdC0+aXNQcmVzc2Vk
KCk7CisKKyAgICAgICAgaWYgKGF4T2JqZWN0LT5pc1RleHRDb250cm9sKCkpCisgICAgICAgICAg
ICBjb21wdXRlZFByb3BlcnRpZXMucmVhZG9ubHkgPSAhYXhPYmplY3QtPmNhblNldFZhbHVlQXR0
cmlidXRlKCk7CisKKyAgICAgICAgaWYgKGF4T2JqZWN0LT5zdXBwb3J0c1JlcXVpcmVkQXR0cmli
dXRlKCkpCisgICAgICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMucmVxdWlyZWQgPSBheE9iamVj
dC0+aXNSZXF1aXJlZCgpOworCisgICAgICAgIGNvbXB1dGVkUHJvcGVydGllcy5yb2xlID0gYXhP
YmplY3QtPmNvbXB1dGVkUm9sZVN0cmluZygpOworICAgICAgICBjb21wdXRlZFByb3BlcnRpZXMu
c2VsZWN0ZWQgPSBheE9iamVjdC0+aXNTZWxlY3RlZCgpOworCisgICAgICAgIHJlc3VsdCA9IGNv
bXB1dGVkUHJvcGVydGllczsKKyAgICB9CisKKyAgICByZXR1cm4gcmVzdWx0OworfQogCiBFeGNl
cHRpb25PcjxPcHRpb25hbDxWZWN0b3I8UmVmUHRyPE5vZGU+Pj4+IEluc3BlY3RvckF1ZGl0QWNj
ZXNzaWJpbGl0eU9iamVjdDo6Z2V0Q29udHJvbGxlZE5vZGVzKE5vZGUmIG5vZGUpCiB7CmRpZmYg
LS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nlc3NpYmls
aXR5T2JqZWN0LmggYi9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nl
c3NpYmlsaXR5T2JqZWN0LmgKaW5kZXggMzQ4ZTZmYjViZWQzNGVmMDIzMmQ4ZGQ2MGU4ZjcyM2Jk
MTIyMTNkYS4uY2JiYTJiODZkOGNiM2QwNWU3N2M2Yjg4NzlmNDJiMzQ1YjE2ODg1MSAxMDA2NDQK
LS0tIGEvU291cmNlL1dlYkNvcmUvaW5zcGVjdG9yL0luc3BlY3RvckF1ZGl0QWNjZXNzaWJpbGl0
eU9iamVjdC5oCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFj
Y2Vzc2liaWxpdHlPYmplY3QuaApAQCAtNDYsOCArNDYsMzQgQEAgcHVibGljOgogCiAgICAgRXhj
ZXB0aW9uT3I8VmVjdG9yPFJlZjxOb2RlPj4+IGdldEVsZW1lbnRzQnlDb21wdXRlZFJvbGUoRG9j
dW1lbnQmLCBjb25zdCBTdHJpbmcmIHJvbGUsIE5vZGUqIGNvbnRhaW5lcik7CiAKKyAgICBzdHJ1
Y3QgQ29tcHV0ZWRQcm9wZXJ0aWVzIHsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gYnVzeTsKKyAg
ICAgICAgU3RyaW5nIGNoZWNrZWQ7CisgICAgICAgIFN0cmluZyBjdXJyZW50U3RhdGU7CisgICAg
ICAgIE9wdGlvbmFsPGJvb2w+IGRpc2FibGVkOworICAgICAgICBPcHRpb25hbDxib29sPiBleHBh
bmRlZDsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gZm9jdXNlZDsKKyAgICAgICAgT3B0aW9uYWw8
aW50PiBoZWFkaW5nTGV2ZWw7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGhpZGRlbjsKKyAgICAg
ICAgT3B0aW9uYWw8aW50PiBoaWVyYXJjaGljYWxMZXZlbDsKKyAgICAgICAgT3B0aW9uYWw8Ym9v
bD4gaWdub3JlZDsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4gaWdub3JlZEJ5RGVmYXVsdDsKKyAg
ICAgICAgU3RyaW5nIGludmFsaWRTdGF0dXM7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IGlzUG9w
VXBCdXR0b247CisgICAgICAgIFN0cmluZyBsYWJlbDsKKyAgICAgICAgT3B0aW9uYWw8Ym9vbD4g
bGl2ZVJlZ2lvbkF0b21pYzsKKyAgICAgICAgT3B0aW9uYWw8VmVjdG9yPFN0cmluZz4+IGxpdmVS
ZWdpb25SZWxldmFudDsKKyAgICAgICAgU3RyaW5nIGxpdmVSZWdpb25TdGF0dXM7CisgICAgICAg
IE9wdGlvbmFsPGJvb2w+IHByZXNzZWQ7CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IHJlYWRvbmx5
OworICAgICAgICBPcHRpb25hbDxib29sPiByZXF1aXJlZDsKKyAgICAgICAgU3RyaW5nIHJvbGU7
CisgICAgICAgIE9wdGlvbmFsPGJvb2w+IHNlbGVjdGVkOworICAgIH07CisKICAgICBFeGNlcHRp
b25PcjxSZWZQdHI8Tm9kZT4+IGdldEFjdGl2ZURlc2NlbmRhbnQoTm9kZSYpOwogICAgIEV4Y2Vw
dGlvbk9yPE9wdGlvbmFsPFZlY3RvcjxSZWZQdHI8Tm9kZT4+Pj4gZ2V0Q2hpbGROb2RlcyhOb2Rl
Jik7CisgICAgRXhjZXB0aW9uT3I8T3B0aW9uYWw8Q29tcHV0ZWRQcm9wZXJ0aWVzPj4gZ2V0Q29t
cHV0ZWRQcm9wZXJ0aWVzKE5vZGUmKTsKICAgICBFeGNlcHRpb25PcjxPcHRpb25hbDxWZWN0b3I8
UmVmUHRyPE5vZGU+Pj4+IGdldENvbnRyb2xsZWROb2RlcyhOb2RlJik7CiAgICAgRXhjZXB0aW9u
T3I8T3B0aW9uYWw8VmVjdG9yPFJlZlB0cjxOb2RlPj4+PiBnZXRGbG93ZWROb2RlcyhOb2RlJik7
CiAgICAgRXhjZXB0aW9uT3I8UmVmUHRyPE5vZGU+PiBnZXRNb3VzZUV2ZW50Tm9kZShOb2RlJik7
CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9pbnNwZWN0b3IvSW5zcGVjdG9yQXVkaXRBY2Nl
c3NpYmlsaXR5T2JqZWN0LmlkbCBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JB
dWRpdEFjY2Vzc2liaWxpdHlPYmplY3QuaWRsCmluZGV4IDkyNjQ1MGYyODI4M2JiNDVlZDg3MTkz
MzdjMGRiMDFhZTEyOWYyZjAuLjI4NmQzMzZjYjU0NGE0MTAzNjNjNGFkMjk4MWMyYzk0ZGVkODk1
OWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNwZWN0b3JBdWRpdEFj
Y2Vzc2liaWxpdHlPYmplY3QuaWRsCisrKyBiL1NvdXJjZS9XZWJDb3JlL2luc3BlY3Rvci9JbnNw
ZWN0b3JBdWRpdEFjY2Vzc2liaWxpdHlPYmplY3QuaWRsCkBAIC0zMiw2ICszMiw3IEBACiAKICAg
ICBbTWF5VGhyb3dFeGNlcHRpb25dIE5vZGU/IGdldEFjdGl2ZURlc2NlbmRhbnQoTm9kZSBub2Rl
KTsKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHNlcXVlbmNlPE5vZGU+PyBnZXRDaGlsZE5vZGVz
KE5vZGUgbm9kZSk7CisgICAgW01heVRocm93RXhjZXB0aW9uXSBDb21wdXRlZFByb3BlcnRpZXM/
IGdldENvbXB1dGVkUHJvcGVydGllcyhOb2RlIG5vZGUpOwogICAgIFtNYXlUaHJvd0V4Y2VwdGlv
bl0gc2VxdWVuY2U8Tm9kZT4/IGdldENvbnRyb2xsZWROb2RlcyhOb2RlIG5vZGUpOwogICAgIFtN
YXlUaHJvd0V4Y2VwdGlvbl0gc2VxdWVuY2U8Tm9kZT4/IGdldEZsb3dlZE5vZGVzKE5vZGUgbm9k
ZSk7CiAgICAgW01heVRocm93RXhjZXB0aW9uXSBOb2RlPyBnZXRNb3VzZUV2ZW50Tm9kZShOb2Rl
IG5vZGUpOwpAQCAtMzksMyArNDAsMzAgQEAKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIE5vZGU/
IGdldFBhcmVudE5vZGUoTm9kZSBub2RlKTsKICAgICBbTWF5VGhyb3dFeGNlcHRpb25dIHNlcXVl
bmNlPE5vZGU+PyBnZXRTZWxlY3RlZENoaWxkTm9kZXMoTm9kZSBub2RlKTsKIH07CisKK1sKKyAg
ICBKU0dlbmVyYXRlVG9KU09iamVjdCwKK10gZGljdGlvbmFyeSBDb21wdXRlZFByb3BlcnRpZXMg
eworICAgIGJvb2xlYW4/IGJ1c3k7CisgICAgRE9NU3RyaW5nPyBjaGVja2VkOworICAgIERPTVN0
cmluZz8gY3VycmVudFN0YXRlOworICAgIGJvb2xlYW4/IGRpc2FibGVkOworICAgIGJvb2xlYW4/
IGV4cGFuZGVkOworICAgIGJvb2xlYW4/IGZvY3VzZWQ7CisgICAgbG9uZz8gaGVhZGluZ0xldmVs
OworICAgIGJvb2xlYW4/IGhpZGRlbjsKKyAgICBsb25nPyBoaWVyYXJjaGljYWxMZXZlbDsKKyAg
ICBib29sZWFuPyBpZ25vcmVkOworICAgIGJvb2xlYW4/IGlnbm9yZWRCeURlZmF1bHQ7CisgICAg
RE9NU3RyaW5nPyBpbnZhbGlkU3RhdHVzOworICAgIGJvb2xlYW4/IGlzUG9wVXBCdXR0b247Cisg
ICAgRE9NU3RyaW5nPyBsYWJlbDsKKyAgICBib29sZWFuPyBsaXZlUmVnaW9uQXRvbWljOworICAg
IHNlcXVlbmNlPERPTVN0cmluZz4/IGxpdmVSZWdpb25SZWxldmFudDsKKyAgICBET01TdHJpbmc/
IGxpdmVSZWdpb25TdGF0dXM7CisgICAgYm9vbGVhbj8gcHJlc3NlZDsKKyAgICBib29sZWFuPyBy
ZWFkb25seTsKKyAgICBib29sZWFuPyByZXF1aXJlZDsKKyAgICBET01TdHJpbmc/IHJvbGU7Cisg
ICAgYm9vbGVhbj8gc2VsZWN0ZWQ7Cit9OwpcIE5vIG5ld2xpbmUgYXQgZW5kIG9mIGZpbGUKZGlm
ZiAtLWdpdCBhL0xheW91dFRlc3RzL0NoYW5nZUxvZyBiL0xheW91dFRlc3RzL0NoYW5nZUxvZwpp
bmRleCBjOTBmZjI1MjI2OTQ0NDJhY2I1OGQ5MTRiZGZkMDg2Y2ZmOGRjOGVjLi5hYzk0ZjIyZWJl
Yzg4NTVmZGQ5M2E2ZTdlZjA0MmE4ZTY3MTVkMWQxIDEwMDY0NAotLS0gYS9MYXlvdXRUZXN0cy9D
aGFuZ2VMb2cKKysrIGIvTGF5b3V0VGVzdHMvQ2hhbmdlTG9nCkBAIC0xLDMgKzEsMTQgQEAKKzIw
MTktMDEtMjIgIERldmluIFJvdXNzbyAgPGRyb3Vzc29AYXBwbGUuY29tPgorCisgICAgICAgIFdl
YiBJbnNwZWN0b3I6IEF1ZGl0OiBwcm92aWRlIGEgd2F5IHRvIGdldCByZWxhdGVkIEFjY2Vzc2li
aWxpdHkgcHJvcGVydGllcyBmb3IgYSBnaXZlbiBub2RlCisgICAgICAgIGh0dHBzOi8vYnVncy53
ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xOTMyMjcKKyAgICAgICAgPHJkYXI6Ly9wcm9ibGVt
LzQ2Nzg3ODYyPgorCisgICAgICAgIFJldmlld2VkIGJ5IEpvc2VwaCBQZWNvcmFyby4KKworICAg
ICAgICAqIGluc3BlY3Rvci9hdWRpdC9ydW4tYWNjZXNzaWJpbGl0eS5odG1sOgorICAgICAgICAq
IGluc3BlY3Rvci9hdWRpdC9ydW4tYWNjZXNzaWJpbGl0eS1leHBlY3RlZC50eHQ6CisKIDIwMTkt
MDEtMjIgIE1pY2hhZWwgQ2F0YW56YXJvICA8bWNhdGFuemFyb0BpZ2FsaWEuY29tPgogCiAgICAg
ICAgIFVucmV2aWV3ZWQsIHNraXAgYWxsIHJlc291cmNlIGxvYWQgc3RhdGlzdGljcyB0ZXN0cyBv
biBHVEsKZGlmZiAtLWdpdCBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9hdWRpdC9ydW4tYWNjZXNz
aWJpbGl0eS1leHBlY3RlZC50eHQgYi9MYXlvdXRUZXN0cy9pbnNwZWN0b3IvYXVkaXQvcnVuLWFj
Y2Vzc2liaWxpdHktZXhwZWN0ZWQudHh0CmluZGV4IDdkZDEzOTVhNWRlN2RkMjdjNTA5ZTFmYWQ0
MzliOTQ0OWI1ZmI1YzIuLjU1YTM1MzA3ZTQ0ZjFkNGZlNGRiMDI3YWVhMGZlMWViNmZhZjJmNGEg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9hdWRpdC9ydW4tYWNjZXNzaWJpbGl0
eS1leHBlY3RlZC50eHQKKysrIGIvTGF5b3V0VGVzdHMvaW5zcGVjdG9yL2F1ZGl0L3J1bi1hY2Nl
c3NpYmlsaXR5LWV4cGVjdGVkLnR4dApAQCAtNjMsNiArNjMsNDYgQEAgQXVkaXQgcnVuIGBXZWJJ
bnNwZWN0b3JBdWRpdC5BY2Nlc3NpYmlsaXR5LmdldENoaWxkTm9kZXMoZG9jdW1lbnQucXVlcnlT
ZWxlY3RvcigKIFJlc3VsdDogW10KIEF1ZGl0IHRlYXJkb3duLi4uCiAKKy0tIFJ1bm5pbmcgdGVz
dCBjYXNlOiBBdWRpdC5ydW4uQWNjZXNzaWJpbGl0eS5nZXRDb21wdXRlZFByb3BlcnRpZXMucGFy
ZW50CitBdWRpdCBzZXR1cC4uLgorQXVkaXQgcnVuIGBXZWJJbnNwZWN0b3JBdWRpdC5BY2Nlc3Np
YmlsaXR5LmdldENvbXB1dGVkUHJvcGVydGllcyhkb2N1bWVudC5xdWVyeVNlbGVjdG9yKCIjcGFy
ZW50IikpYC4uLgorUmVzdWx0OiB7CisgICAgImJ1c3kiOiBmYWxzZSwKKyAgICAiY3VycmVudFN0
YXRlIjogImZhbHNlIiwKKyAgICAiZGlzYWJsZWQiOiBmYWxzZSwKKyAgICAiaGVhZGluZ0xldmVs
IjogMCwKKyAgICAiaGlkZGVuIjogZmFsc2UsCisgICAgImhpZXJhcmNoaWNhbExldmVsIjogMCwK
KyAgICAiaWdub3JlZCI6IGZhbHNlLAorICAgICJpZ25vcmVkQnlEZWZhdWx0IjogZmFsc2UsCisg
ICAgImludmFsaWRTdGF0dXMiOiAiZmFsc2UiLAorICAgICJpc1BvcFVwQnV0dG9uIjogZmFsc2Us
CisgICAgInByZXNzZWQiOiBmYWxzZSwKKyAgICAicm9sZSI6ICJ0cmVlIiwKKyAgICAic2VsZWN0
ZWQiOiBmYWxzZQorfQorQXVkaXQgdGVhcmRvd24uLi4KKworLS0gUnVubmluZyB0ZXN0IGNhc2U6
IEF1ZGl0LnJ1bi5BY2Nlc3NpYmlsaXR5LmdldENvbXB1dGVkUHJvcGVydGllcy5jaGlsZAorQXVk
aXQgc2V0dXAuLi4KK0F1ZGl0IHJ1biBgV2ViSW5zcGVjdG9yQXVkaXQuQWNjZXNzaWJpbGl0eS5n
ZXRDb21wdXRlZFByb3BlcnRpZXMoZG9jdW1lbnQucXVlcnlTZWxlY3RvcigiI2NoaWxkIikpYC4u
LgorUmVzdWx0OiB7CisgICAgImJ1c3kiOiBmYWxzZSwKKyAgICAiY3VycmVudFN0YXRlIjogImZh
bHNlIiwKKyAgICAiZGlzYWJsZWQiOiBmYWxzZSwKKyAgICAiaGVhZGluZ0xldmVsIjogMCwKKyAg
ICAiaGlkZGVuIjogZmFsc2UsCisgICAgImhpZXJhcmNoaWNhbExldmVsIjogMSwKKyAgICAiaWdu
b3JlZCI6IGZhbHNlLAorICAgICJpZ25vcmVkQnlEZWZhdWx0IjogZmFsc2UsCisgICAgImludmFs
aWRTdGF0dXMiOiAiZmFsc2UiLAorICAgICJpc1BvcFVwQnV0dG9uIjogZmFsc2UsCisgICAgInBy
ZXNzZWQiOiBmYWxzZSwKKyAgICAicm9sZSI6ICJ0cmVlaXRlbSIsCisgICAgInNlbGVjdGVkIjog
dHJ1ZQorfQorQXVkaXQgdGVhcmRvd24uLi4KKwogLS0gUnVubmluZyB0ZXN0IGNhc2U6IEF1ZGl0
LnJ1bi5BY2Nlc3NpYmlsaXR5LmdldENvbnRyb2xsZWROb2Rlcy5wYXJlbnQKIEF1ZGl0IHNldHVw
Li4uCiBBdWRpdCBydW4gYFdlYkluc3BlY3RvckF1ZGl0LkFjY2Vzc2liaWxpdHkuZ2V0Q29udHJv
bGxlZE5vZGVzKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNwYXJlbnQiKSlgLi4uCkBAIC0xMTQs
NyArMTU0LDcgQEAgQXVkaXQgdGVhcmRvd24uLi4KIC0tIFJ1bm5pbmcgdGVzdCBjYXNlOiBBdWRp
dC5ydW4uQWNjZXNzaWJpbGl0eS5nZXRQYXJlbnROb2RlLnBhcmVudAogQXVkaXQgc2V0dXAuLi4K
IEF1ZGl0IHJ1biBgV2ViSW5zcGVjdG9yQXVkaXQuQWNjZXNzaWJpbGl0eS5nZXRQYXJlbnROb2Rl
KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoIiNwYXJlbnQiKSlgLi4uCi1SZXN1bHQ6IHVuZGVmaW5l
ZAorUmVzdWx0OiA8ZG9jdW1lbnQ+CiBBdWRpdCB0ZWFyZG93bi4uLgogCiAtLSBSdW5uaW5nIHRl
c3QgY2FzZTogQXVkaXQucnVuLkFjY2Vzc2liaWxpdHkuZ2V0UGFyZW50Tm9kZS5jaGlsZApAQCAt
MTQ4LDYgKzE4OCw5IEBAIEVycm9yOiBOb3RBbGxvd2VkRXJyb3I6IENhbm5vdCBiZSBjYWxsZWQg
b3V0c2lkZSBvZiBhIFdlYiBJbnNwZWN0b3IgQXVkaXQKIFRlc3RpbmcgY29waWVkIGdldENoaWxk
Tm9kZXMuLi4KIFBBU1M6IFNob3VsZCBwcm9kdWNlIGFuIGV4Y2VwdGlvbi4KIEVycm9yOiBOb3RB
bGxvd2VkRXJyb3I6IENhbm5vdCBiZSBjYWxsZWQgb3V0c2lkZSBvZiBhIFdlYiBJbnNwZWN0b3Ig
QXVkaXQKK1Rlc3RpbmcgY29waWVkIGdldENvbXB1dGVkUHJvcGVydGllcy4uLgorUEFTUzogU2hv
dWxkIHByb2R1Y2UgYW4gZXhjZXB0aW9uLgorRXJyb3I6IE5vdEFsbG93ZWRFcnJvcjogQ2Fubm90
IGJlIGNhbGxlZCBvdXRzaWRlIG9mIGEgV2ViIEluc3BlY3RvciBBdWRpdAogVGVzdGluZyBjb3Bp
ZWQgZ2V0Q29udHJvbGxlZE5vZGVzLi4uCiBQQVNTOiBTaG91bGQgcHJvZHVjZSBhbiBleGNlcHRp
b24uCiBFcnJvcjogTm90QWxsb3dlZEVycm9yOiBDYW5ub3QgYmUgY2FsbGVkIG91dHNpZGUgb2Yg
YSBXZWIgSW5zcGVjdG9yIEF1ZGl0CmRpZmYgLS1naXQgYS9MYXlvdXRUZXN0cy9pbnNwZWN0b3Iv
YXVkaXQvcnVuLWFjY2Vzc2liaWxpdHkuaHRtbCBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9hdWRp
dC9ydW4tYWNjZXNzaWJpbGl0eS5odG1sCmluZGV4IDk4YjBlNWQyYmRhMGRkM2Y2NjcwMWI5NDYy
ZmFiYmM3NzkwYjUyNGEuLjY4OTk0MWE0NWU0YmQxODkxNTAyMTVmZjUzNTkyZmIzNDEyZjgwMDUg
MTAwNjQ0Ci0tLSBhL0xheW91dFRlc3RzL2luc3BlY3Rvci9hdWRpdC9ydW4tYWNjZXNzaWJpbGl0
eS5odG1sCisrKyBiL0xheW91dFRlc3RzL2luc3BlY3Rvci9hdWRpdC9ydW4tYWNjZXNzaWJpbGl0
eS5odG1sCkBAIC02LDEyICs2LDIwIEBACiA8c2NyaXB0PgogCiBmdW5jdGlvbiBzdHJpbmdpZnko
cmVzdWx0KSB7CisgICAgaWYgKHJlc3VsdCA9PT0gbnVsbCB8fCByZXN1bHQgPT09IHVuZGVmaW5l
ZCB8fCB0eXBlb2YgcmVzdWx0ID09PSAiYm9vbGVhbiIgfHwgdHlwZW9mIHJlc3VsdCA9PT0gInN0
cmluZyIgfHwgdHlwZW9mIHJlc3VsdCA9PT0gIm51bWJlciIpCisgICAgICAgIHJldHVybiByZXN1
bHQ7CiAgICAgaWYgKHJlc3VsdCBpbnN0YW5jZW9mIEVsZW1lbnQpCiAgICAgICAgIHJldHVybiAi
IyIgKyByZXN1bHQuaWQ7CisgICAgaWYgKHJlc3VsdCBpbnN0YW5jZW9mIEhUTUxEb2N1bWVudCkK
KyAgICAgICAgcmV0dXJuICI8ZG9jdW1lbnQ+IjsKICAgICBpZiAoQXJyYXkuaXNBcnJheShyZXN1
bHQpKQogICAgICAgICByZXR1cm4gSlNPTi5zdHJpbmdpZnkocmVzdWx0Lm1hcChzdHJpbmdpZnkp
KTsKLSAgICBpZiAocmVzdWx0ID09PSBudWxsIHx8IHJlc3VsdCA9PT0gdW5kZWZpbmVkKTsKLSAg
ICAgICAgcmV0dXJuIHJlc3VsdDsKKyAgICBpZiAodHlwZW9mIHJlc3VsdCA9PT0gIm9iamVjdCIg
JiYgcmVzdWx0LmNvbnN0cnVjdG9yID09PSBPYmplY3QpIHsKKyAgICAgICAgbGV0IG1hcHBlZCA9
IHt9OworICAgICAgICBmb3IgKGxldCBrZXkgaW4gcmVzdWx0KQorICAgICAgICAgICAgbWFwcGVk
W2tleV0gPSBzdHJpbmdpZnkocmVzdWx0W2tleV0pOworICAgICAgICByZXR1cm4gSlNPTi5zdHJp
bmdpZnkobWFwcGVkLCBudWxsLCA0KTsKKyAgICB9CiAgICAgcmV0dXJuICJVTkVYUEVDVEVEICIg
KyByZXN1bHQ7CiB9CiAKQEAgLTQ0LDYgKzUyLDkgQEAgZnVuY3Rpb24gdGVzdCgpCiAgICAgICAg
IHsgZnVuYzogImdldENoaWxkTm9kZXMiLCB0YXJnZXQ6ICJwYXJlbnQiIH0sCiAgICAgICAgIHsg
ZnVuYzogImdldENoaWxkTm9kZXMiLCB0YXJnZXQ6ICJjaGlsZCIgfSwKIAorICAgICAgICB7IGZ1
bmM6ICJnZXRDb21wdXRlZFByb3BlcnRpZXMiLCB0YXJnZXQ6ICJwYXJlbnQiIH0sCisgICAgICAg
IHsgZnVuYzogImdldENvbXB1dGVkUHJvcGVydGllcyIsIHRhcmdldDogImNoaWxkIiB9LAorCiAg
ICAgICAgIHsgZnVuYzogImdldENvbnRyb2xsZWROb2RlcyIsIHRhcmdldDogInBhcmVudCIgfSwK
ICAgICAgICAgeyBmdW5jOiAiZ2V0Q29udHJvbGxlZE5vZGVzIiwgdGFyZ2V0OiAiY2hpbGQiIH0s
CiAK
</data>

          </attachment>
      

    </bug>

</bugzilla>